mirror of
https://github.com/zoriya/vim.git
synced 2026-01-09 08:08:05 +00:00
Compare commits
112 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
14f5827940 | ||
|
|
8139889a5f | ||
|
|
6f3d6b48a6 | ||
|
|
e1704bada4 | ||
|
|
b213da0b57 | ||
|
|
ec3cfeb199 | ||
|
|
1e91f2606b | ||
|
|
718f007499 | ||
|
|
d09acef44b | ||
|
|
66b7985ec9 | ||
|
|
770456589e | ||
|
|
696c2116dc | ||
|
|
f94a13c286 | ||
|
|
01c10524d2 | ||
|
|
f5fe79a5f3 | ||
|
|
6f586de755 | ||
|
|
2b017fae8f | ||
|
|
4fabd7dd4a | ||
|
|
be1e9e9fc1 | ||
|
|
2623b4f412 | ||
|
|
e8cdcef875 | ||
|
|
fca93c093e | ||
|
|
c11073c9aa | ||
|
|
afa6b9af86 | ||
|
|
cdab905136 | ||
|
|
77fceb8908 | ||
|
|
e48a2dd3af | ||
|
|
231e1a1723 | ||
|
|
e2db4361d2 | ||
|
|
ac0ddc15e9 | ||
|
|
7c0a86b1e8 | ||
|
|
b4a80cdd91 | ||
|
|
7c82130a76 | ||
|
|
2c66669c33 | ||
|
|
57c0ea8692 | ||
|
|
465748e411 | ||
|
|
dd7d846475 | ||
|
|
0551410a14 | ||
|
|
3633dc0129 | ||
|
|
8f91399366 | ||
|
|
002a4edc5b | ||
|
|
18a1b9bd5f | ||
|
|
c6c1d8b802 | ||
|
|
1c75a03501 | ||
|
|
451cf63751 | ||
|
|
00b8ae0d3d | ||
|
|
dde0efed85 | ||
|
|
4d93dc2699 | ||
|
|
b9ce83e135 | ||
|
|
9b4512500a | ||
|
|
dd82d699c8 | ||
|
|
2b9578f0f8 | ||
|
|
2430586629 | ||
|
|
2dac213ac6 | ||
|
|
14f2474147 | ||
|
|
b02612b641 | ||
|
|
07e31c571a | ||
|
|
c1a995db49 | ||
|
|
ba6ba36fa2 | ||
|
|
04b2751899 | ||
|
|
c271c48e80 | ||
|
|
e66822e3d1 | ||
|
|
09168a77e4 | ||
|
|
da3cb831e9 | ||
|
|
e4195c5d84 | ||
|
|
8a0f3c78fe | ||
|
|
a07c831bef | ||
|
|
dad937f77f | ||
|
|
6c35beaa11 | ||
|
|
848f87633a | ||
|
|
0cbba94b7e | ||
|
|
9bdb9a0987 | ||
|
|
5fb9ec5ed7 | ||
|
|
9581b5f70e | ||
|
|
641e286153 | ||
|
|
058bdcfd5d | ||
|
|
6763c140d6 | ||
|
|
049d8e79cf | ||
|
|
94c465c53d | ||
|
|
1a0cee53d4 | ||
|
|
b5c9cb555e | ||
|
|
bdb620560b | ||
|
|
c2ece10274 | ||
|
|
97f38d9540 | ||
|
|
30b6581799 | ||
|
|
dfef15481d | ||
|
|
89af439409 | ||
|
|
cfa3caec0c | ||
|
|
c0885aad5c | ||
|
|
f65e5667df | ||
|
|
773c1ef81b | ||
|
|
52bf469f6f | ||
|
|
77c604d3ff | ||
|
|
6c4b646d84 | ||
|
|
8cb8dca2f0 | ||
|
|
0306ac33a5 | ||
|
|
bef4790c23 | ||
|
|
756287da38 | ||
|
|
e25865a7f3 | ||
|
|
95b557b1dc | ||
|
|
5967abb97f | ||
|
|
221d6872c4 | ||
|
|
e721122b79 | ||
|
|
49346f4155 | ||
|
|
cc3e85f169 | ||
|
|
3cd3e7ab17 | ||
|
|
2afa3238a1 | ||
|
|
f27839c1a9 | ||
|
|
11b73d668f | ||
|
|
96b7ca5142 | ||
|
|
89f940fcac | ||
|
|
e79abddb2f |
2
.gitignore
vendored
2
.gitignore
vendored
@@ -30,6 +30,7 @@ src/auto/pathdef.c
|
||||
*.suo
|
||||
*.res
|
||||
*.RES
|
||||
src/if_perl.c
|
||||
src/pathdef.c
|
||||
src/Obj*/pathdef.c
|
||||
gvimext.dll
|
||||
@@ -41,6 +42,7 @@ gvimext.lib
|
||||
*.mo
|
||||
*.swp
|
||||
*~
|
||||
src/po/vim.pot
|
||||
|
||||
# Generated by "make test"
|
||||
src/po/*.ck
|
||||
|
||||
12
Filelist
12
Filelist
@@ -261,6 +261,7 @@ SRC_DOS = \
|
||||
src/Make_mvc.mak \
|
||||
src/Make_w16.mak \
|
||||
src/bigvim.bat \
|
||||
src/bigvim64.bat \
|
||||
src/msvcsetup.bat \
|
||||
src/msvc2008.bat \
|
||||
src/msvc2010.bat \
|
||||
@@ -349,6 +350,13 @@ SRC_DOS_BIN = \
|
||||
src/vim*.ico \
|
||||
src/vim.tlb \
|
||||
src/vimtbar.lib \
|
||||
src/xpm/COPYRIGHT \
|
||||
src/xpm/README.txt \
|
||||
src/xpm/include/*.h \
|
||||
src/xpm/x64/lib/libXpm.a \
|
||||
src/xpm/x64/lib/libXpm.lib \
|
||||
src/xpm/x86/lib/libXpm.a \
|
||||
src/xpm/x86/lib/libXpm.lib \
|
||||
src/vimtbar.dll \
|
||||
nsis/icons/*.bmp \
|
||||
nsis/icons/*.ico \
|
||||
@@ -463,6 +471,7 @@ RT_ALL = \
|
||||
runtime/macros/hanoi/hanoi.vim \
|
||||
runtime/macros/hanoi/poster \
|
||||
runtime/macros/justify.vim \
|
||||
runtime/macros/less.bat \
|
||||
runtime/macros/less.sh \
|
||||
runtime/macros/less.vim \
|
||||
runtime/macros/life/click.me \
|
||||
@@ -666,6 +675,8 @@ EXTRA = \
|
||||
|
||||
# generic language files
|
||||
LANG_GEN = \
|
||||
runtime/doc/*-de.1 \
|
||||
runtime/doc/*-de.UTF-8.1 \
|
||||
runtime/doc/*-fr.1 \
|
||||
runtime/doc/*-fr.UTF-8.1 \
|
||||
runtime/doc/*-it.1 \
|
||||
@@ -683,6 +694,7 @@ LANG_GEN = \
|
||||
runtime/tutor/tutor.utf-8 \
|
||||
runtime/tutor/tutor.?? \
|
||||
runtime/tutor/tutor.??.* \
|
||||
runtime/tutor/tutor.??_??.* \
|
||||
runtime/tutor/tutor.bar \
|
||||
runtime/tutor/tutor.bar.* \
|
||||
runtime/spell/README.txt \
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim completion script
|
||||
" Language: C
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2011 Dec 30
|
||||
" Last Change: 2012 Jun 20
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
@@ -500,7 +500,7 @@ function! s:StructMembers(typename, items, all)
|
||||
endif
|
||||
if !cached
|
||||
while 1
|
||||
exe 'silent! ' . n . 'vimgrep /\t' . typename . '\(\t\|$\)/j ' . fnames
|
||||
exe 'silent! keepj noautocmd ' . n . 'vimgrep /\t' . typename . '\(\t\|$\)/j ' . fnames
|
||||
|
||||
let qflist = getqflist()
|
||||
if len(qflist) > 0 || match(typename, "::") < 0
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
" Vim autoload file for the tohtml plugin.
|
||||
" Maintainer: Ben Fritz <fritzophrenic@gmail.com>
|
||||
" Last Change: 2011 Apr 05
|
||||
" Last Change: 2012 Jun 30
|
||||
"
|
||||
" Additional contributors:
|
||||
"
|
||||
@@ -11,7 +11,7 @@
|
||||
|
||||
" this file uses line continuations
|
||||
let s:cpo_sav = &cpo
|
||||
set cpo-=C
|
||||
set cpo&vim
|
||||
|
||||
" Automatically find charsets from all encodings supported natively by Vim. With
|
||||
" the 8bit- and 2byte- prefixes, Vim can actually support more encodings than
|
||||
@@ -391,12 +391,25 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
|
||||
call add(html, '<meta name="plugin-version" content="'.g:loaded_2html_plugin.'"'.tag_close)
|
||||
call add(html, '<meta name="settings" content="'.
|
||||
\ join(filter(keys(s:settings),'s:settings[v:val]'),',').
|
||||
\ ',prevent_copy='.s:settings.prevent_copy.
|
||||
\ '"'.tag_close)
|
||||
call add(html, '<meta name="colorscheme" content="'.
|
||||
\ (exists('g:colors_name')
|
||||
\ ? g:colors_name
|
||||
\ : 'none'). '"'.tag_close)
|
||||
|
||||
call add(html, '</head>')
|
||||
let body_line_num = len(html)
|
||||
call add(html, '<body>')
|
||||
call add(html, '<table border="1" width="100%">')
|
||||
if !empty(s:settings.prevent_copy)
|
||||
call add(html, "<body onload='FixCharWidth();'>")
|
||||
call add(html, "<!-- hidden divs used by javascript to get the width of a char -->")
|
||||
call add(html, "<div id='oneCharWidth'>0</div>")
|
||||
call add(html, "<div id='oneInputWidth'><input size='1' value='0'".tag_close."</div>")
|
||||
call add(html, "<div id='oneEmWidth' style='width: 1em;'></div>")
|
||||
else
|
||||
call add(html, '<body>')
|
||||
endif
|
||||
call add(html, "<table border='1' width='100%' id='vimCodeElement'>")
|
||||
|
||||
call add(html, '<tr>')
|
||||
for buf in a:win_list
|
||||
@@ -454,16 +467,19 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
|
||||
let insert_index = diff_style_start
|
||||
endif
|
||||
|
||||
" Delete those parts that are not needed so
|
||||
" we can include the rest into the resulting table
|
||||
1,/^<body/d_
|
||||
" Delete those parts that are not needed so we can include the rest into the
|
||||
" resulting table.
|
||||
1,/^<body.*\%(\n<!--.*-->\_s\+.*id='oneCharWidth'.*\_s\+.*id='oneInputWidth'.*\_s\+.*id='oneEmWidth'\)\?\zs/d_
|
||||
$
|
||||
?</body>?,$d_
|
||||
let temp = getline(1,'$')
|
||||
" clean out id on the main content container because we already set it on
|
||||
" the table
|
||||
let temp[0] = substitute(temp[0], " id='vimCodeElement'", "", "")
|
||||
" undo deletion of start and end part
|
||||
" so we can later save the file as valid html
|
||||
" TODO: restore using grabbed lines if undolevel is 1?
|
||||
normal 2u
|
||||
normal! 2u
|
||||
if s:settings.use_css
|
||||
call add(html, '<td valign="top"><div>')
|
||||
elseif s:settings.use_xhtml
|
||||
@@ -520,12 +536,47 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
|
||||
1
|
||||
let style_start = search('^</head>')-1
|
||||
|
||||
" add required javascript in reverse order so we can just call append again
|
||||
" and again without adjusting {{{
|
||||
|
||||
" insert script closing tag if any javascript is needed
|
||||
if s:settings.dynamic_folds || !empty(s:settings.prevent_copy)
|
||||
call append(style_start, [
|
||||
\ '',
|
||||
\ s:settings.use_xhtml ? '//]]>' : '-->',
|
||||
\ "</script>"
|
||||
\ ])
|
||||
endif
|
||||
|
||||
" insert script which corrects the size of small input elements in
|
||||
" prevent_copy mode. See 2html.vim for details on why this is needed and how
|
||||
" it works.
|
||||
if !empty(s:settings.prevent_copy)
|
||||
call append(style_start, [
|
||||
\ '',
|
||||
\ '/* simulate a "ch" unit by asking the browser how big a zero character is */',
|
||||
\ 'function FixCharWidth() {',
|
||||
\ ' /* get the hidden element which gives the width of a single character */',
|
||||
\ ' var goodWidth = document.getElementById("oneCharWidth").clientWidth;',
|
||||
\ ' /* get all input elements, we''ll filter on class later */',
|
||||
\ ' var inputTags = document.getElementsByTagName("input");',
|
||||
\ ' var ratio = 5;',
|
||||
\ ' var inputWidth = document.getElementById("oneInputWidth").clientWidth;',
|
||||
\ ' var emWidth = document.getElementById("oneEmWidth").clientWidth;',
|
||||
\ ' if (inputWidth > goodWidth) {',
|
||||
\ ' while (ratio < 100*goodWidth/emWidth && ratio < 100) {',
|
||||
\ ' ratio += 5;',
|
||||
\ ' }',
|
||||
\ ' document.getElementById("vimCodeElement").className = "em"+ratio;',
|
||||
\ ' }',
|
||||
\ '}'
|
||||
\ ])
|
||||
endif
|
||||
|
||||
" Insert javascript to toggle matching folds open and closed in all windows,
|
||||
" if dynamic folding is active. {{{
|
||||
" if dynamic folding is active.
|
||||
if s:settings.dynamic_folds
|
||||
call append(style_start, [
|
||||
\ "<script type='text/javascript'>",
|
||||
\ s:settings.use_xhtml ? '//<![CDATA[' : " <!--",
|
||||
\ " function toggleFold(objID)",
|
||||
\ " {",
|
||||
\ " for (win_num = 1; win_num <= ".len(a:buf_list)."; win_num++)",
|
||||
@@ -542,9 +593,14 @@ func! tohtml#Diff2HTML(win_list, buf_list) "{{{
|
||||
\ " }",
|
||||
\ " }",
|
||||
\ " }",
|
||||
\ s:settings.use_xhtml ? '//]]>' : " -->",
|
||||
\ "</script>"
|
||||
\ ])
|
||||
endif
|
||||
|
||||
" insert script tag if any javascript is needed
|
||||
if s:settings.dynamic_folds || s:settings.prevent_copy != ""
|
||||
call append(style_start, [
|
||||
\ "<script type='text/javascript'>",
|
||||
\ s:settings.use_xhtml ? '//<![CDATA[' : "<!--"])
|
||||
endif "}}}
|
||||
|
||||
" Insert styles from all the generated html documents and additional styles
|
||||
@@ -609,9 +665,10 @@ func! tohtml#GetUserSettings() "{{{
|
||||
call tohtml#GetOption(user_settings, 'ignore_conceal', 0 )
|
||||
call tohtml#GetOption(user_settings, 'ignore_folding', 0 )
|
||||
call tohtml#GetOption(user_settings, 'dynamic_folds', 0 )
|
||||
call tohtml#GetOption(user_settings, 'no_foldcolumn', 0 )
|
||||
call tohtml#GetOption(user_settings, 'no_foldcolumn', user_settings.ignore_folding)
|
||||
call tohtml#GetOption(user_settings, 'hover_unfold', 0 )
|
||||
call tohtml#GetOption(user_settings, 'no_pre', 0 )
|
||||
call tohtml#GetOption(user_settings, 'no_invalid', 0 )
|
||||
call tohtml#GetOption(user_settings, 'whole_filler', 0 )
|
||||
call tohtml#GetOption(user_settings, 'use_xhtml', 0 )
|
||||
" }}}
|
||||
@@ -637,6 +694,8 @@ func! tohtml#GetUserSettings() "{{{
|
||||
" dynamic folding implies css
|
||||
if user_settings.dynamic_folds
|
||||
let user_settings.use_css = 1
|
||||
else
|
||||
let user_settings.no_foldcolumn = 1 " won't do anything but for consistency and for the test suite
|
||||
endif
|
||||
|
||||
" if we're not using CSS we cannot use a pre section because <font> tags
|
||||
@@ -663,6 +722,7 @@ func! tohtml#GetUserSettings() "{{{
|
||||
endif
|
||||
" }}}
|
||||
|
||||
" textual options
|
||||
if exists("g:html_use_encoding") "{{{
|
||||
" user specified the desired MIME charset, figure out proper
|
||||
" 'fileencoding' from it or warn the user if we cannot
|
||||
@@ -705,6 +765,45 @@ func! tohtml#GetUserSettings() "{{{
|
||||
endif
|
||||
endif "}}}
|
||||
|
||||
" Default to making nothing uncopyable, because we default to
|
||||
" not-standards way of doing things, and also because Microsoft Word and
|
||||
" others paste the <input> elements anyway.
|
||||
"
|
||||
" html_prevent_copy only has an effect when using CSS.
|
||||
"
|
||||
" All options:
|
||||
" f - fold column
|
||||
" n - line numbers (also within fold text)
|
||||
" t - fold text
|
||||
" d - diff filler
|
||||
" c - concealed text (reserved future)
|
||||
" l - listchars (reserved possible future)
|
||||
" s - signs (reserved possible future)
|
||||
"
|
||||
" Normal text is always selectable.
|
||||
let user_settings.prevent_copy = ""
|
||||
if user_settings.use_css
|
||||
if exists("g:html_prevent_copy")
|
||||
if user_settings.dynamic_folds && !user_settings.no_foldcolumn && g:html_prevent_copy =~# 'f'
|
||||
let user_settings.prevent_copy .= 'f'
|
||||
endif
|
||||
if user_settings.number_lines && g:html_prevent_copy =~# 'n'
|
||||
let user_settings.prevent_copy .= 'n'
|
||||
endif
|
||||
if &diff && g:html_prevent_copy =~# 'd'
|
||||
let user_settings.prevent_copy .= 'd'
|
||||
endif
|
||||
if !user_settings.ignore_folding && g:html_prevent_copy =~# 't'
|
||||
let user_settings.prevent_copy .= 't'
|
||||
endif
|
||||
else
|
||||
let user_settings.prevent_copy = ""
|
||||
endif
|
||||
endif
|
||||
if empty(user_settings.prevent_copy)
|
||||
let user_settings.no_invalid = 0
|
||||
endif
|
||||
|
||||
" TODO: font
|
||||
|
||||
return user_settings
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
" Vim compiler file
|
||||
" Compiler: Mono C# Compiler
|
||||
" Maintainer: Jarek Sobiecki <harijari@go2.pl>
|
||||
" Latest Revision: 2006-06-18
|
||||
" Last Updated By: Peter Collingbourne
|
||||
" Latest Revision: 2012 Jul 19
|
||||
|
||||
if exists("current_compiler")
|
||||
finish
|
||||
@@ -12,13 +13,18 @@ let s:cpo_save = &cpo
|
||||
set cpo-=C
|
||||
|
||||
setlocal errorformat=
|
||||
\%D%.%#Project\ \"%f/%[%^/\"]%#\"%.%#,
|
||||
\%X%.%#Done\ building\ project\ \"%f/%[%^/\"]%#\"%.%#,
|
||||
\%-G%\\s%.%#,
|
||||
\%E%f(%l):\ error\ CS%n:%m,
|
||||
\%W%f(%l):\ warning\ CS%n:%m,
|
||||
\%E%f(%l\\,%c):\ error\ CS%n:%m,
|
||||
\%W%f(%l\\,%c):\ warning\ CS%n:%m,
|
||||
\%E%>syntax\ error\\,%m,%Z%f(%l\\,%c):\ error\ CS%n:%m,
|
||||
\%D%*\\a[%*\\d]:\ Entering\ directory\ `%f',
|
||||
\%X%*\\a[%*\\d]:\ Leaving\ directory\ `%f',
|
||||
\%DMaking\ %*\\a\ in\ %f,
|
||||
\%G-%.%#
|
||||
\%-G%.%#
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*autocmd.txt* For Vim version 7.3. Last change: 2012 Feb 22
|
||||
*autocmd.txt* For Vim version 7.3. Last change: 2012 Sep 05
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -263,8 +263,10 @@ Name triggered by ~
|
||||
Startup and exit
|
||||
|VimEnter| after doing all the startup stuff
|
||||
|GUIEnter| after starting the GUI successfully
|
||||
|GUIFailed| after starting the GUI failed
|
||||
|TermResponse| after the terminal response to |t_RV| is received
|
||||
|
||||
|QuitPre| when using `:quit`, before deciding whether to quit
|
||||
|VimLeavePre| before exiting Vim, before writing the viminfo file
|
||||
|VimLeave| before exiting Vim, after writing the viminfo file
|
||||
|
||||
@@ -312,6 +314,7 @@ Name triggered by ~
|
||||
|SessionLoadPost| after loading a session file
|
||||
|
||||
|MenuPopup| just before showing the popup menu
|
||||
|CompleteDone| after Insert mode completion is done
|
||||
|
||||
|User| to be used in combination with ":doautocmd"
|
||||
|
||||
@@ -385,6 +388,10 @@ BufRead or BufReadPost When starting to edit a new buffer, after
|
||||
This does NOT work for ":r file". Not used
|
||||
when the file doesn't exist. Also used after
|
||||
successfully recovering a file.
|
||||
Also triggered for the filetypedetect group
|
||||
when executing ":filetype detect" and when
|
||||
writing an unnamed buffer in a way that the
|
||||
buffer gets a name.
|
||||
*BufReadCmd*
|
||||
BufReadCmd Before starting to edit a new buffer. Should
|
||||
read the file into the buffer. |Cmd-event|
|
||||
@@ -474,6 +481,11 @@ CmdwinLeave Before leaving the command-line window.
|
||||
*ColorScheme*
|
||||
ColorScheme After loading a color scheme. |:colorscheme|
|
||||
|
||||
*CompleteDone*
|
||||
CompleteDone After Insert mode completion is done. Either
|
||||
when something was completed or abandoning
|
||||
completion. |ins-completion|
|
||||
|
||||
*CursorHold*
|
||||
CursorHold When the user doesn't press a key for the time
|
||||
specified with 'updatetime'. Not re-triggered
|
||||
@@ -717,6 +729,12 @@ QuickFixCmdPost Like QuickFixCmdPre, but after a quickfix
|
||||
it is run after error file is read and before
|
||||
moving to the first error.
|
||||
See |QuickFixCmdPost-example|.
|
||||
*QuitPre*
|
||||
QuitPre When using `:quit`, before deciding whether it
|
||||
closes the current window or quits Vim. Can
|
||||
be used to close any non-essential window if
|
||||
the current window is the last ordinary
|
||||
window.
|
||||
*RemoteReply*
|
||||
RemoteReply When a reply from a Vim that functions as
|
||||
server was received |server2client()|. The
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*change.txt* For Vim version 7.3. Last change: 2012 Apr 30
|
||||
*change.txt* For Vim version 7.3. Last change: 2012 Aug 08
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -666,6 +666,8 @@ The flags that you can use for the substitute commands:
|
||||
[n] Report the number of matches, do not actually substitute. The [c]
|
||||
flag is ignored. The matches are reported as if 'report' is zero.
|
||||
Useful to |count-items|.
|
||||
If \= |sub-replace-expression| is used, the expression will be
|
||||
evaluated in the |sandbox| at every match.
|
||||
|
||||
[p] Print the line containing the last substitute.
|
||||
|
||||
@@ -1502,6 +1504,7 @@ n When formatting text, recognize numbered lists. This actually uses
|
||||
first line of a paragraph
|
||||
second line of the same paragraph
|
||||
third line.
|
||||
< This also works inside comments, ignoring the comment leader.
|
||||
v Vi-compatible auto-wrapping in insert mode: Only break a line at a
|
||||
blank that you have entered during the current insert command. (Note:
|
||||
this is not 100% Vi compatible. Vi has some "unexpected features" or
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*cmdline.txt* For Vim version 7.3. Last change: 2012 Feb 05
|
||||
*cmdline.txt* For Vim version 7.3. Last change: 2012 Jun 20
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -826,10 +826,11 @@ These modifiers can be given, in this order:
|
||||
the home directory. If the name is a directory a path
|
||||
separator is added at the end. For a file name that does not
|
||||
exist and does not have an absolute path the result is
|
||||
unpredictable.
|
||||
unpredictable. On MS-Windows an 8.3 filename is expanded to
|
||||
the long name.
|
||||
:8 Converts the path to 8.3 short format (currently only on
|
||||
win32). Will act on as much of a path that is an existing
|
||||
path.
|
||||
MS-Windows). Will act on as much of a path that is an
|
||||
existing path.
|
||||
:~ Reduce file name to be relative to the home directory, if
|
||||
possible. File name is unmodified if it is not below the home
|
||||
directory.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*diff.txt* For Vim version 7.3. Last change: 2012 May 18
|
||||
*diff.txt* For Vim version 7.3. Last change: 2012 Sep 05
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -86,16 +86,16 @@ diff mode. You could use a construct like this: >
|
||||
While already in Vim you can start diff mode in three ways.
|
||||
|
||||
*E98*
|
||||
:diffsplit {filename} *:diffs* *:diffsplit*
|
||||
:diffs[plit] {filename} *:diffs* *:diffsplit*
|
||||
Open a new window on the file {filename}. The options are set
|
||||
as for "vimdiff" for the current and the newly opened window.
|
||||
Also see 'diffexpr'.
|
||||
|
||||
*:difft* *:diffthis*
|
||||
:diffthis Make the current window part of the diff windows. This sets
|
||||
:difft[his] Make the current window part of the diff windows. This sets
|
||||
the options like for "vimdiff".
|
||||
|
||||
:diffpatch {patchfile} *E816* *:diffp* *:diffpatch*
|
||||
:diffp[atch] {patchfile} *E816* *:diffp* *:diffpatch*
|
||||
Use the current buffer, patch it with the diff found in
|
||||
{patchfile} and open a buffer on the result. The options are
|
||||
set as for "vimdiff".
|
||||
@@ -123,9 +123,9 @@ Since the option values are remembered with the buffer, you can edit another
|
||||
file for a moment and come back to the same file and be in diff mode again.
|
||||
|
||||
*:diffo* *:diffoff*
|
||||
:diffoff Switch off diff mode for the current window.
|
||||
:diffo[ff] Switch off diff mode for the current window.
|
||||
|
||||
:diffoff! Switch off diff mode for the current window and in all windows
|
||||
:diffo[ff]! Switch off diff mode for the current window and in all windows
|
||||
in the current tab page where 'diff' is set.
|
||||
|
||||
The ":diffoff" command resets the relevant options to their default value.
|
||||
@@ -333,7 +333,7 @@ diff. This example explains the format that Vim expects: >
|
||||
|
||||
The "1a2" item appends the line "bbb".
|
||||
The "4d4" item deletes the line "111".
|
||||
The '7c7" item replaces the line "GGG" with "ggg".
|
||||
The "7c7" item replaces the line "GGG" with "ggg".
|
||||
|
||||
When 'diffexpr' is not empty, Vim evaluates it to obtain a diff file in the
|
||||
format mentioned. These variables are set to the file names used:
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*editing.txt* For Vim version 7.3. Last change: 2012 Apr 03
|
||||
*editing.txt* For Vim version 7.3. Last change: 2012 Aug 08
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -377,8 +377,9 @@ command that accepts more than one file name (like ":next file1 file2")
|
||||
embedded spaces must be escaped with a backslash.
|
||||
|
||||
*wildcard* *wildcards*
|
||||
Wildcards in {file} are expanded. Which wildcards are supported depends on
|
||||
the system. These are the common ones:
|
||||
Wildcards in {file} are expanded, but as with file completion, 'wildignore'
|
||||
and 'suffixes' apply. Which wildcards are supported depends on the system.
|
||||
These are the common ones:
|
||||
? matches one character
|
||||
* matches anything, including nothing
|
||||
** matches anything, including nothing, recurses into directories
|
||||
@@ -392,7 +393,7 @@ is to use "path\[[]abc]". Then the file "path[abc]" literally.
|
||||
*starstar-wildcard*
|
||||
Expanding "**" is possible on Unix, Win32, Mac OS/X and a few other systems.
|
||||
This allows searching a directory tree. This goes up to 100 directories deep.
|
||||
Note there are some commands where this works slightly different, see
|
||||
Note there are some commands where this works slightly differently, see
|
||||
|file-searching|.
|
||||
Example: >
|
||||
:n **/*.txt
|
||||
@@ -422,9 +423,11 @@ You can have the backticks expanded as a Vim expression, instead of an
|
||||
external command, by using the syntax `={expr}` e.g.: >
|
||||
:e `=tempname()`
|
||||
The expression can contain just about anything, thus this can also be used to
|
||||
avoid the special meaning of '"', '|', '%' and '#'. Names are to be separated
|
||||
with line breaks. When the result is a |List| then each item is used as a
|
||||
name. Line breaks also separate names.
|
||||
avoid the special meaning of '"', '|', '%' and '#'. However, 'wildignore'
|
||||
does apply like to other wildcars.
|
||||
If the expression returns a string then names are to be separated with line
|
||||
breaks. When the result is a |List| then each item is used as a name. Line
|
||||
breaks also separate names.
|
||||
|
||||
*++opt* *[++opt]*
|
||||
The [++opt] argument can be used to force the value of 'fileformat',
|
||||
@@ -1066,6 +1069,7 @@ The names can be in upper- or lowercase.
|
||||
If there are other tab pages and quitting the last
|
||||
window in the current tab page the current tab page is
|
||||
closed |tab-page|.
|
||||
Triggers the |QuitPre| autocommand event.
|
||||
|
||||
:conf[irm] q[uit] Quit, but give prompt when changes have been made, or
|
||||
the last file in the argument list has not been
|
||||
@@ -1215,13 +1219,13 @@ For versions of Vim where browsing is not supported, the command is executed
|
||||
unmodified.
|
||||
|
||||
*browsefilter*
|
||||
For MS Windows, you can modify the filters that are used in the browse dialog.
|
||||
By setting the g:browsefilter or b:browsefilter variables, you can change the
|
||||
filters globally or locally to the buffer. The variable is set to a string in
|
||||
the format "{filter label}\t{pattern};{pattern}\n" where {filter label} is the
|
||||
text that appears in the "Files of Type" comboBox, and {pattern} is the
|
||||
pattern which filters the filenames. Several patterns can be given, separated
|
||||
by ';'.
|
||||
For MS Windows and GTK, you can modify the filters that are used in the browse
|
||||
dialog. By setting the g:browsefilter or b:browsefilter variables, you can
|
||||
change the filters globally or locally to the buffer. The variable is set to
|
||||
a string in the format "{filter label}\t{pattern};{pattern}\n" where {filter
|
||||
label} is the text that appears in the "Files of Type" comboBox, and {pattern}
|
||||
is the pattern which filters the filenames. Several patterns can be given,
|
||||
separated by ';'.
|
||||
|
||||
For Motif the same format is used, but only the very first pattern is actually
|
||||
used (Motif only offers one pattern, but you can edit it).
|
||||
@@ -1229,7 +1233,7 @@ used (Motif only offers one pattern, but you can edit it).
|
||||
For example, to have only Vim files in the dialog, you could use the following
|
||||
command: >
|
||||
|
||||
let g:browsefilter="Vim Scripts\t*.vim\nVim Startup Files\t*vimrc\n"
|
||||
let g:browsefilter = "Vim Scripts\t*.vim\nVim Startup Files\t*vimrc\n"
|
||||
|
||||
You can override the filter setting on a per-buffer basis by setting the
|
||||
b:browsefilter variable. You would most likely set b:browsefilter in a
|
||||
@@ -1239,6 +1243,13 @@ difficult to start editing a file of a different type. To overcome this, you
|
||||
may want to add "All Files\t*.*\n" as the final filter, so that the user can
|
||||
still access any desired file.
|
||||
|
||||
To avoid setting browsefilter when Vim does not actually support it, you can
|
||||
use has("browsefilter"): >
|
||||
|
||||
if has("browsefilter")
|
||||
let g:browsefilter = "whatever"
|
||||
endif
|
||||
|
||||
==============================================================================
|
||||
7. The current directory *current-directory*
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*eval.txt* For Vim version 7.3. Last change: 2012 May 18
|
||||
*eval.txt* For Vim version 7.3. Last change: 2012 Sep 05
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -759,7 +759,7 @@ of a |List| is different from the original |List|. When using "is" without
|
||||
a |List| or a |Dictionary| it is equivalent to using "equal", using "isnot"
|
||||
equivalent to using "not equal". Except that a different type means the
|
||||
values are different: "4 == '4'" is true, "4 is '4'" is false and "0 is []" is
|
||||
false and not a error. "is#"/"isnot#" and "is?"/"isnot?" can be used to match
|
||||
false and not an error. "is#"/"isnot#" and "is?"/"isnot?" can be used to match
|
||||
and ignore case.
|
||||
|
||||
When comparing a String with a Number, the String is converted to a Number,
|
||||
@@ -1880,6 +1880,8 @@ pow( {x}, {y}) Float {x} to the power of {y}
|
||||
prevnonblank( {lnum}) Number line nr of non-blank line <= {lnum}
|
||||
printf( {fmt}, {expr1}...) String format text
|
||||
pumvisible() Number whether popup menu is visible
|
||||
pyeval( {expr}) any evaluate |Python| expression
|
||||
py3eval( {expr}) any evaluate |python3| expression
|
||||
range( {expr} [, {max} [, {stride}]])
|
||||
List items from {expr} to {max}
|
||||
readfile( {fname} [, {binary} [, {max}]])
|
||||
@@ -3286,8 +3288,9 @@ getfperm({fname}) *getfperm()*
|
||||
"rwx" flags represent, in turn, the permissions of the owner
|
||||
of the file, the group the file belongs to, and other users.
|
||||
If a user does not have a given permission the flag for this
|
||||
is replaced with the string "-". Example: >
|
||||
is replaced with the string "-". Examples: >
|
||||
:echo getfperm("/etc/passwd")
|
||||
:echo getfperm(expand("~/.vimrc"))
|
||||
< This will hopefully (from a security point of view) display
|
||||
the string "rw-r--r--" or even "rw-------".
|
||||
|
||||
@@ -3565,6 +3568,9 @@ histadd({history}, {item}) *histadd()*
|
||||
"search" or "/" search pattern history
|
||||
"expr" or "=" typed expression history
|
||||
"input" or "@" input line history
|
||||
"debug" or ">" debug command history
|
||||
The {history} string does not need to be the whole name, one
|
||||
character is sufficient.
|
||||
If {item} does already exist in the history, it will be
|
||||
shifted to become the newest entry.
|
||||
The result is a Number: 1 if the operation was successful,
|
||||
@@ -4033,7 +4039,7 @@ map({expr}, {string}) *map()*
|
||||
|
||||
The operation is done in-place. If you want a |List| or
|
||||
|Dictionary| to remain unmodified make a copy first: >
|
||||
:let tlist = map(copy(mylist), ' & . "\t"')
|
||||
:let tlist = map(copy(mylist), ' v:val . "\t"')
|
||||
|
||||
< Returns {expr}, the |List| or |Dictionary| that was filtered.
|
||||
When an error is encountered while evaluating {string} no
|
||||
@@ -4610,6 +4616,29 @@ pumvisible() *pumvisible()*
|
||||
This can be used to avoid some things that would remove the
|
||||
popup menu.
|
||||
|
||||
*E860* *E861*
|
||||
py3eval({expr}) *py3eval()*
|
||||
Evaluate Python expression {expr} and return its result
|
||||
converted to Vim data structures.
|
||||
Numbers and strings are returned as they are (strings are
|
||||
copied though, unicode strings are additionally converted to
|
||||
'encoding').
|
||||
Lists are represented as Vim |List| type.
|
||||
Dictionaries are represented as Vim |Dictionary| type with
|
||||
keys converted to strings.
|
||||
{only available when compiled with the |+python3| feature}
|
||||
|
||||
*E858* *E859*
|
||||
pyeval({expr}) *pyeval()*
|
||||
Evaluate Python expression {expr} and return its result
|
||||
converted to Vim data structures.
|
||||
Numbers and strings are returned as they are (strings are
|
||||
copied though).
|
||||
Lists are represented as Vim |List| type.
|
||||
Dictionaries are represented as Vim |Dictionary| type,
|
||||
non-string keys result in error.
|
||||
{only available when compiled with the |+python| feature}
|
||||
|
||||
*E726* *E727*
|
||||
range({expr} [, {max} [, {stride}]]) *range()*
|
||||
Returns a |List| with Numbers:
|
||||
@@ -5224,8 +5253,9 @@ setreg({regname}, {value} [,{options}])
|
||||
|
||||
If {options} contains no register settings, then the default
|
||||
is to use character mode unless {value} ends in a <NL>.
|
||||
Setting the '=' register is not possible.
|
||||
Returns zero for success, non-zero for failure.
|
||||
Setting the '=' register is not possible, but you can use >
|
||||
:let @= = var_expr
|
||||
< Returns zero for success, non-zero for failure.
|
||||
|
||||
Examples: >
|
||||
:call setreg(v:register, @*)
|
||||
@@ -6219,6 +6249,7 @@ balloon_multiline GUI supports multiline balloons.
|
||||
beos BeOS version of Vim.
|
||||
browse Compiled with |:browse| support, and browse() will
|
||||
work.
|
||||
browsefilter Compiled with support for |browsefilter|.
|
||||
builtin_terms Compiled with some builtin terminals.
|
||||
byte_offset Compiled with support for 'o' in 'statusline'
|
||||
cindent Compiled with 'cindent' support.
|
||||
@@ -6296,6 +6327,7 @@ mouse_gpm Compiled with support for gpm (Linux console mouse)
|
||||
mouse_netterm Compiled with support for netterm mouse.
|
||||
mouse_pterm Compiled with support for qnx pterm mouse.
|
||||
mouse_sysmouse Compiled with support for sysmouse (*BSD console mouse)
|
||||
mouse_sgr Compiled with support for sgr mouse.
|
||||
mouse_urxvt Compiled with support for urxvt mouse.
|
||||
mouse_xterm Compiled with support for xterm mouse.
|
||||
mouseshape Compiled with support for 'mouseshape'.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*gui_w32.txt* For Vim version 7.3. Last change: 2011 Jul 23
|
||||
*gui_w32.txt* For Vim version 7.3. Last change: 2012 Aug 04
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -489,4 +489,16 @@ to:
|
||||
And add gvim to the list of applications. This problem only appears to happen
|
||||
with the Intellimouse driver 2.2 and when "Universal Scrolling" is turned on.
|
||||
|
||||
|
||||
XPM support *w32-xpm-support*
|
||||
|
||||
Gvim can be build on MS-Windows with support for XPM files. |+xpm_w32|
|
||||
See the Make_mvc.mak file for instructions, search for XPM.
|
||||
|
||||
To try out if XPM support works do this: >
|
||||
:help
|
||||
:exe 'sign define vimxpm icon=' . $VIMRUNTIME . '\\vim16x16.xpm'
|
||||
:exe 'sign place 1 line=1 name=vimxpm file=' . expand('%:p')
|
||||
<
|
||||
|
||||
vim:tw=78:sw=4:ts=8:ft=help:norl:
|
||||
|
||||
@@ -93,7 +93,7 @@ Details
|
||||
This is also the keymap when 'keymap=hebrew' is set. The advantage of
|
||||
'keymap' is that it works properly when using UTF8, e.g. it inserts the
|
||||
correct characters; 'hkmap' does not. The 'keymap' keyboard can also
|
||||
insert niqud and te`amim. To see what those mappings are,look at the
|
||||
insert niqud and te`amim. To see what those mappings are, look at the
|
||||
keymap file 'hebrew.vim' etc.
|
||||
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_lua.txt* For Vim version 7.3. Last change: 2012 Jan 16
|
||||
*if_lua.txt* For Vim version 7.3. Last change: 2012 Jun 29
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Luis Carvalho
|
||||
@@ -313,7 +313,7 @@ Examples:
|
||||
<
|
||||
|
||||
==============================================================================
|
||||
7. The luaeval function *lua-luaeval*
|
||||
7. The luaeval function *lua-luaeval* *lua-eval*
|
||||
|
||||
The (dual) equivalent of "vim.eval" for passing Lua values to Vim is
|
||||
"luaeval". "luaeval" takes an expression string and an optional argument and
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_perl.txt* For Vim version 7.3. Last change: 2010 Jul 21
|
||||
*if_perl.txt* For Vim version 7.3. Last change: 2012 Aug 02
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Sven Verdoolaege
|
||||
@@ -44,15 +44,17 @@ The Perl patches for Vim were made by:
|
||||
Sven Verdoolaege <skimo@breughel.ufsia.ac.be>
|
||||
Matt Gerassimof
|
||||
|
||||
Perl for MS-Windows can be found at:
|
||||
http://www.perl.com/CPAN/ports/nt/Standard/x86/
|
||||
Perl for MS-Windows can be found at: http://www.perl.com/
|
||||
The ActiveState one should work.
|
||||
|
||||
==============================================================================
|
||||
3. Using the Perl interface *perl-using*
|
||||
|
||||
*:perl* *:pe*
|
||||
:pe[rl] {cmd} Execute Perl command {cmd}. The current package
|
||||
is "main".
|
||||
is "main". Simple example to test if `:perl` is
|
||||
working: >
|
||||
:perl VIM::Msg("Hello")
|
||||
|
||||
:pe[rl] << {endpattern}
|
||||
{script}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_pyth.txt* For Vim version 7.3. Last change: 2012 Feb 04
|
||||
*if_pyth.txt* For Vim version 7.3. Last change: 2012 Aug 02
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Paul Moore
|
||||
@@ -6,13 +6,14 @@
|
||||
|
||||
The Python Interface to Vim *python* *Python*
|
||||
|
||||
1. Commands |python-commands|
|
||||
2. The vim module |python-vim|
|
||||
3. Buffer objects |python-buffer|
|
||||
4. Range objects |python-range|
|
||||
5. Window objects |python-window|
|
||||
6. Dynamic loading |python-dynamic|
|
||||
7. Python 3 |python3|
|
||||
1. Commands |python-commands|
|
||||
2. The vim module |python-vim|
|
||||
3. Buffer objects |python-buffer|
|
||||
4. Range objects |python-range|
|
||||
5. Window objects |python-window|
|
||||
6. pyeval(), py3eval() Vim functions |python-pyeval|
|
||||
7. Dynamic loading |python-dynamic|
|
||||
8. Python 3 |python3|
|
||||
|
||||
{Vi does not have any of these commands}
|
||||
|
||||
@@ -26,7 +27,9 @@ The Python 3 interface is available only when Vim was compiled with the
|
||||
|
||||
*:python* *:py* *E205* *E263* *E264*
|
||||
:[range]py[thon] {stmt}
|
||||
Execute Python statement {stmt}.
|
||||
Execute Python statement {stmt}. A simple check if
|
||||
the `:python` command is working: >
|
||||
:python print "Hello"
|
||||
|
||||
:[range]py[thon] << {endmarker}
|
||||
{script}
|
||||
@@ -150,6 +153,42 @@ vim.eval(str) *python-eval*
|
||||
[{'cmd': '/^eval_expr(arg, nextcmd)$/', 'static': 0, 'name':
|
||||
'eval_expr', 'kind': 'f', 'filename': './src/eval.c'}]
|
||||
|
||||
vim.bindeval(str) *python-bindeval*
|
||||
Like |python-eval|, but
|
||||
1. if expression evaluates to |List| or |Dictionary| it is returned as
|
||||
vimlist or vimdictionary python type that are connected to original
|
||||
list or dictionary. Thus modifications to these objects imply
|
||||
modifications of the original.
|
||||
|
||||
Additionally, vimlist and vimdictionary type have read-write
|
||||
`.locked` attribute that returns
|
||||
Value Meaning ~
|
||||
zero Variable is not locked
|
||||
vim.VAR_LOCKED Variable is locked, but can be unlocked
|
||||
vim.VAR_FIXED Variable is locked and can’t be unlocked
|
||||
integer constants. If variable is not fixed, you can do
|
||||
`var.locked=True` to lock it and `var.locked=False` to unlock.
|
||||
There is no recursive locking like |:lockvar|! does. There is also
|
||||
no way to lock a specific key or check whether it is locked (in any
|
||||
case these locks are ignored by anything except |:let|: |extend()|
|
||||
does not care, neither does python interface).
|
||||
|
||||
Vimdictionary type also supports `.scope` attribute which is one of
|
||||
Value Meaning ~
|
||||
zero Dictionary is not a scope one
|
||||
vim.VAR_DEF_SCOPE Function-local or global scope dictionary
|
||||
vim.VAR_SCOPE Other scope dictionary
|
||||
|
||||
2. if expression evaluates to a function reference, then it returns
|
||||
callable vimfunction object. Use self keyword argument to assign
|
||||
|self| object for dictionary functions.
|
||||
|
||||
Note: this function has the same behavior as |lua-eval| (except that
|
||||
lua does not support running vim functions), |python-eval| is
|
||||
kept for backwards compatibility in order not to make scripts
|
||||
relying on outputs of vim.eval() being a copy of original or
|
||||
vim.eval("1") returning a string.
|
||||
|
||||
|
||||
|
||||
Error object of the "vim" module
|
||||
@@ -319,7 +358,13 @@ The height attribute is writable only if the screen is split horizontally.
|
||||
The width attribute is writable only if the screen is split vertically.
|
||||
|
||||
==============================================================================
|
||||
6. Dynamic loading *python-dynamic*
|
||||
6. pyeval() and py3eval() Vim functions *python-pyeval*
|
||||
|
||||
To facilitate bi-directional interface, you can use |pyeval()| and |py3eval()|
|
||||
functions to evaluate Python expressions and pass their values to VimL.
|
||||
|
||||
==============================================================================
|
||||
7. Dynamic loading *python-dynamic*
|
||||
|
||||
On MS-Windows the Python library can be loaded dynamically. The |:version|
|
||||
output then includes |+python/dyn|.
|
||||
@@ -336,13 +381,16 @@ Currently the name is "python24.dll". That is for Python 2.4. To know for
|
||||
sure edit "gvim.exe" and search for "python\d*.dll\c".
|
||||
|
||||
==============================================================================
|
||||
7. Python 3 *python3*
|
||||
8. Python 3 *python3*
|
||||
|
||||
*:py3* *:python3*
|
||||
The |:py3| and |:python3| commands work similar to |:python|.
|
||||
*:py3file*
|
||||
The |:py3| and |:python3| commands work similar to |:python|. A simple check
|
||||
if the `:py3` command is wrong: >
|
||||
:py3 print("Hello")
|
||||
< *:py3file*
|
||||
The |:py3file| command works similar to |:pyfile|.
|
||||
|
||||
|
||||
Vim can be built in four ways (:version output):
|
||||
1. No Python support (-python, -python3)
|
||||
2. Python 2 support only (+python or +python/dyn, -python3)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_ruby.txt* For Vim version 7.3. Last change: 2010 Oct 27
|
||||
*if_ruby.txt* For Vim version 7.3. Last change: 2012 Aug 02
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Shugo Maeda
|
||||
@@ -25,7 +25,8 @@ downloading Ruby there.
|
||||
1. Commands *ruby-commands*
|
||||
|
||||
*:ruby* *:rub*
|
||||
:rub[y] {cmd} Execute Ruby command {cmd}.
|
||||
:rub[y] {cmd} Execute Ruby command {cmd}. A command to try it out: >
|
||||
:ruby print "Hello"
|
||||
|
||||
:rub[y] << {endpattern}
|
||||
{script}
|
||||
@@ -40,9 +41,6 @@ downloading Ruby there.
|
||||
wasn't compiled in. To avoid errors, see
|
||||
|script-here|.
|
||||
|
||||
Command to try it out: >
|
||||
:ruby print "Hello" # this is a comment
|
||||
|
||||
Example Vim script: >
|
||||
|
||||
function! RedGem()
|
||||
@@ -211,6 +209,8 @@ for sure edit "gvim.exe" and search for "ruby\d*.dll\c".
|
||||
|
||||
If you want to build Vim with Ruby 1.9.1, you need to edit the config.h file
|
||||
and comment-out the check for _MSC_VER.
|
||||
You may also need to rename the include directory name to match the version,
|
||||
strangely for Ruby 1.9.3 the directory is called 1.9.1.
|
||||
|
||||
==============================================================================
|
||||
vim:tw=78:ts=8:ft=help:norl:
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*if_tcl.txt* For Vim version 7.3. Last change: 2008 Aug 16
|
||||
*if_tcl.txt* For Vim version 7.3. Last change: 2012 Aug 02
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Ingo Wilken
|
||||
@@ -27,7 +27,9 @@ comments, ideas etc to <Ingo.Wilken@informatik.uni-oldenburg.de>
|
||||
1. Commands *tcl-ex-commands* *E571* *E572*
|
||||
|
||||
*:tcl* *:tc*
|
||||
:tc[l] {cmd} Execute Tcl command {cmd}.
|
||||
:tc[l] {cmd} Execute Tcl command {cmd}. A simple check if `:tcl`
|
||||
is working: >
|
||||
:tcl puts "Hello"
|
||||
|
||||
:[range]tc[l] << {endmarker}
|
||||
{script}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*indent.txt* For Vim version 7.3. Last change: 2011 Sep 02
|
||||
*indent.txt* For Vim version 7.3. Last change: 2012 Aug 30
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -540,7 +540,7 @@ The examples below assume a 'shiftwidth' of 4.
|
||||
*cino-star*
|
||||
*N Vim searches for unclosed comments at most N lines away. This
|
||||
limits the time needed to search for the start of a comment.
|
||||
If your /* */ comments stop indenting afer N lines this is the
|
||||
If your /* */ comments stop indenting after N lines this is the
|
||||
value you will want to change.
|
||||
(default 70 lines).
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*index.txt* For Vim version 7.3. Last change: 2011 Aug 06
|
||||
*index.txt* For Vim version 7.3. Last change: 2012 Jul 25
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -719,6 +719,8 @@ tag char note action in Normal mode ~
|
||||
|gH| gH start Select line mode
|
||||
|gI| gI 2 like "I", but always start in column 1
|
||||
|gJ| gJ 2 join lines without inserting space
|
||||
|gN| gN 1,2 find the previous match with the last used
|
||||
search pattern and Visually select it
|
||||
|gP| ["x]gP 2 put the text [from register x] before the
|
||||
cursor N times, leave the cursor after it
|
||||
|gQ| gQ switch to "Ex" mode with Vim editing
|
||||
@@ -751,6 +753,8 @@ tag char note action in Normal mode ~
|
||||
lines down
|
||||
|gk| gk 1 like "k", but when 'wrap' on go N screen
|
||||
lines up
|
||||
|gn| gn 1,2 find the next match with the last used
|
||||
search pattern and Visually select it
|
||||
|gm| gm 1 go to character at middle of the screenline
|
||||
|go| go 1 cursor to byte N in the buffer
|
||||
|gp| ["x]gp 2 put the text [from register x] after the
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*insert.txt* For Vim version 7.3. Last change: 2012 May 18
|
||||
*insert.txt* For Vim version 7.3. Last change: 2012 Jul 10
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -491,7 +491,7 @@ option}
|
||||
*ins-smarttab*
|
||||
When the 'smarttab' option is on, a <Tab> inserts 'shiftwidth' positions at
|
||||
the beginning of a line and 'tabstop' positions in other places. This means
|
||||
that often spaces instead of a <Tab> character are inserted. When 'smarttab
|
||||
that often spaces instead of a <Tab> character are inserted. When 'smarttab'
|
||||
is off, a <Tab> always inserts 'tabstop' positions, and 'shiftwidth' is only
|
||||
used for ">>" and the like. {not in Vi}
|
||||
|
||||
@@ -1044,6 +1044,8 @@ that contains the List. The Dict can have these items:
|
||||
leading text is changed.
|
||||
Other items are ignored.
|
||||
|
||||
For acting upon end of completion, see the |CompleteDone| autocommand event.
|
||||
|
||||
For example, the function can contain this: >
|
||||
let matches = ... list of words ...
|
||||
return {'words': matches, 'refresh': 'always'}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*intro.txt* For Vim version 7.3. Last change: 2011 May 15
|
||||
*intro.txt* For Vim version 7.3. Last change: 2012 Sep 05
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -394,6 +394,8 @@ CTRL-{char} {char} typed as a control character; that is, typing {char}
|
||||
*quotecommandquote*
|
||||
"command" A reference to a command that you can type is enclosed in
|
||||
double quotes.
|
||||
`command` New style command, this distinguishes it from other
|
||||
quoted text and strings.
|
||||
|
||||
*key-notation* *key-codes* *keycodes*
|
||||
These names for keys are used in the documentation. They can also be used
|
||||
|
||||
@@ -1244,6 +1244,7 @@ completion can be enabled:
|
||||
-complete=syntax syntax file names |'syntax'|
|
||||
-complete=tag tags
|
||||
-complete=tag_listfiles tags, file names are shown when CTRL-D is hit
|
||||
-complete=user user names
|
||||
-complete=var user variables
|
||||
-complete=custom,{func} custom completion, defined via {func}
|
||||
-complete=customlist,{func} custom completion, defined via {func}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*mbyte.txt* For Vim version 7.3. Last change: 2012 Feb 29
|
||||
*mbyte.txt* For Vim version 7.3. Last change: 2012 Jun 06
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar et al.
|
||||
@@ -475,7 +475,7 @@ Useful utilities for converting the charset:
|
||||
|charset| converter. Supported |charset|: ISO-2022-CN, ISO-2022-JP,
|
||||
ISO-2022-KR, EUC-CN, EUC-JP, EUC-KR, EUC-TW, UTF-7, UTF-8, ISO-8859
|
||||
series, Shift_JIS, Big5 and HZ. Lv can be found at:
|
||||
http://www.ff.iij4u.or.jp/~nrt/freeware/lv4495.tar.gz
|
||||
http://www.ff.iij4u.or.jp/~nrt/lv/index.html
|
||||
|
||||
|
||||
*mbyte-conversion*
|
||||
@@ -615,7 +615,7 @@ Each field means:
|
||||
charsets, such as JIS X 0208, if this field is 0, code points has
|
||||
the same value as GL, and GR if 1.
|
||||
|
||||
For example, in case of a 14 dots font corresponding to JIS X 0208, it is
|
||||
For example, in case of a 16 dots font corresponding to JIS X 0208, it is
|
||||
written like:
|
||||
-misc-fixed-medium-r-normal--16-110-100-100-c-160-jisx0208.1990-0
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*motion.txt* For Vim version 7.3. Last change: 2011 Jul 19
|
||||
*motion.txt* For Vim version 7.3. Last change: 2012 Aug 04
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -57,7 +57,7 @@ or change text. The following operators are available:
|
||||
|>| > shift right
|
||||
|<| < shift left
|
||||
|zf| zf define a fold
|
||||
|g@| g@ call function set with the 'operatorfunc' option
|
||||
|g@| g@ call function set with the 'operatorfunc' option
|
||||
|
||||
If the motion includes a count and the operator also had a count before it,
|
||||
the two counts are multiplied. For example: "2d3w" deletes six words.
|
||||
@@ -326,6 +326,7 @@ gg Goto line [count], default first line, on the first
|
||||
non-blank character |linewise|. If 'startofline' not
|
||||
set, keep the same column.
|
||||
|
||||
*:[range]*
|
||||
:[range] Set the cursor on the last line number in [range].
|
||||
[range] can also be just one line number, e.g., ":1"
|
||||
or ":'m".
|
||||
@@ -513,6 +514,8 @@ always select less text than the "a" commands.
|
||||
These commands are {not in Vi}.
|
||||
These commands are not available when the |+textobjects| feature has been
|
||||
disabled at compile time.
|
||||
Also see `gn` and `gN`, operating on the last search pattern.
|
||||
|
||||
*v_aw* *aw*
|
||||
aw "a word", select [count] words (see |word|).
|
||||
Leading or trailing white space is included, but not
|
||||
@@ -689,6 +692,7 @@ movement commands are used.
|
||||
"daw" delete a word *daw*
|
||||
"diW" delete inner WORD (see |WORD|) *diW*
|
||||
"daW" delete a WORD (see |WORD|) *daW*
|
||||
"dgn" delete the next search pattern match *dgn*
|
||||
"dd" delete one line |dd|
|
||||
"dis" delete inner sentence *dis*
|
||||
"das" delete a sentence *das*
|
||||
@@ -750,6 +754,13 @@ m[ or m] Set the |'[| or |']| mark. Useful when an operator is
|
||||
to be simulated by multiple commands. (does not move
|
||||
the cursor, this is not a motion command).
|
||||
|
||||
*m<* *m>*
|
||||
m< or m> Set the |'<| or |'>| mark. Useful to change what the
|
||||
`gv` command selects. (does not move the cursor, this
|
||||
is not a motion command).
|
||||
Note that the Visual mode cannot be set, only the
|
||||
start and end position.
|
||||
|
||||
*:ma* *:mark* *E191*
|
||||
:[range]ma[rk] {a-zA-Z'}
|
||||
Set mark {a-zA-Z'} at last line number in [range],
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*options.txt* For Vim version 7.3. Last change: 2012 May 16
|
||||
*options.txt* For Vim version 7.3. Last change: 2012 Aug 15
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1107,8 +1107,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
Vim does not try to send a message to an external debugger (Netbeans
|
||||
or Sun Workshop).
|
||||
|
||||
The expression may be evaluated in the |sandbox|, see
|
||||
|sandbox-option|.
|
||||
The expression will be evaluated in the |sandbox| when set from a
|
||||
modeline, see |sandbox-option|.
|
||||
|
||||
It is not allowed to change text or jump to another window while
|
||||
evaluating 'balloonexpr' |textlock|.
|
||||
@@ -1452,6 +1452,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
This option is a list of comma separated names.
|
||||
These names are recognized:
|
||||
|
||||
*clipboard-unnamed*
|
||||
unnamed When included, Vim will use the clipboard register '*'
|
||||
for all yank, delete, change and put operations which
|
||||
would normally go to the unnamed register. When a
|
||||
@@ -1461,6 +1462,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
explicitly accessed using the "* notation. Also see
|
||||
|gui-clipboard|.
|
||||
|
||||
*clipboard-unnamedplus*
|
||||
unnamedplus A variant of "unnamed" flag which uses the clipboard
|
||||
register '+' (|quoteplus|) instead of register '*' for
|
||||
all operations except yank. Yank shall copy the text
|
||||
@@ -1470,6 +1472,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
Availability can be checked with: >
|
||||
if has('unnamedplus')
|
||||
<
|
||||
*clipboard-autoselect*
|
||||
autoselect Works like the 'a' flag in 'guioptions': If present,
|
||||
then whenever Visual mode is started, or the Visual
|
||||
area extended, Vim tries to become the owner of the
|
||||
@@ -1481,9 +1484,16 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
"autoselect" flag is used.
|
||||
Also applies to the modeless selection.
|
||||
|
||||
*clipboard-autoselectplus*
|
||||
autoselectplus Like "autoselect" but using the + register instead of
|
||||
the * register. Compare to the 'P' flag in
|
||||
'guioptions'.
|
||||
|
||||
*clipboard-autoselectml*
|
||||
autoselectml Like "autoselect", but for the modeless selection
|
||||
only. Compare to the 'A' flag in 'guioptions'.
|
||||
|
||||
*clipboard-html*
|
||||
html When the clipboard contains HTML, use this when
|
||||
pasting. When putting text on the clipboard, mark it
|
||||
as HTML. This works to copy rendered HTML from
|
||||
@@ -1494,6 +1504,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
Only supported for GTK version 2 and later.
|
||||
Only available with the |+multi_byte| feature.
|
||||
|
||||
*clipboard-exclude*
|
||||
exclude:{pattern}
|
||||
Defines a pattern that is matched against the name of
|
||||
the terminal 'term'. If there is a match, no
|
||||
@@ -3040,8 +3051,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
The expression used for when 'foldmethod' is "expr". It is evaluated
|
||||
for each line to obtain its fold level. See |fold-expr|.
|
||||
|
||||
The expression may be evaluated in the |sandbox|, see
|
||||
|sandbox-option|.
|
||||
The expression will be evaluated in the |sandbox| if set from a
|
||||
modeline, see |sandbox-option|.
|
||||
This option can't be set from a |modeline| when the 'diff' option is
|
||||
on.
|
||||
|
||||
@@ -3183,8 +3194,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
An expression which is used to specify the text displayed for a closed
|
||||
fold. See |fold-foldtext|.
|
||||
|
||||
The expression may be evaluated in the |sandbox|, see
|
||||
|sandbox-option|.
|
||||
The expression will be evaluated in the |sandbox| if set from a
|
||||
modeline, see |sandbox-option|.
|
||||
|
||||
It is not allowed to change text or jump to another window while
|
||||
evaluating 'foldtext' |textlock|.
|
||||
@@ -3229,8 +3240,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
format function will be used |C-indenting|.
|
||||
Environment variables are expanded |:set_env|. See |option-backslash|
|
||||
about including spaces and backslashes.
|
||||
The expression may be evaluated in the |sandbox|, see
|
||||
|sandbox-option|.
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
|
||||
*'formatexpr'* *'fex'*
|
||||
'formatexpr' 'fex' string (default "")
|
||||
@@ -3263,9 +3274,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
When the expression evaluates to non-zero Vim will fall back to using
|
||||
the internal format mechanism.
|
||||
|
||||
The expression may be evaluated in the |sandbox|, see
|
||||
|sandbox-option|. That stops the option from working, since changing
|
||||
the buffer text is not allowed.
|
||||
The expression will be evaluated in the |sandbox| when set from a
|
||||
modeline, see |sandbox-option|. That stops the option from working,
|
||||
since changing the buffer text is not allowed.
|
||||
|
||||
*'fsync'* *'fs'*
|
||||
'fsync' 'fs' boolean (default on)
|
||||
@@ -3589,6 +3600,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
windowing system's global selection unless explicitly told to
|
||||
by a yank or delete operation for the "* register.
|
||||
The same applies to the modeless selection.
|
||||
*'go-P'*
|
||||
'P' Like autoselect but using the "+ register instead of the "*
|
||||
register.
|
||||
*'go-A'*
|
||||
'A' Autoselect for the modeless selection. Like 'a', but only
|
||||
applies to the modeless selection.
|
||||
@@ -4086,8 +4100,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
found. Allows doing "gf" on the name after an 'include' statement.
|
||||
Also used for |<cfile>|.
|
||||
|
||||
The expression may be evaluated in the |sandbox|, see
|
||||
|sandbox-option|.
|
||||
The expression will be evaluated in the |sandbox| when set from a
|
||||
modeline, see |sandbox-option|.
|
||||
|
||||
It is not allowed to change text or jump to another window while
|
||||
evaluating 'includeexpr' |textlock|.
|
||||
@@ -4151,8 +4165,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
See |indent-expression|.
|
||||
NOTE: This option is made empty when 'compatible' is set.
|
||||
|
||||
The expression may be evaluated in the |sandbox|, see
|
||||
|sandbox-option|.
|
||||
The expression will be evaluated in the |sandbox| when set from a
|
||||
modeline, see |sandbox-option|.
|
||||
|
||||
It is not allowed to change text or jump to another window while
|
||||
evaluating 'indentexpr' |textlock|.
|
||||
@@ -4581,24 +4595,31 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
{not in Vi}
|
||||
Strings to use in 'list' mode and for the |:list| command. It is a
|
||||
comma separated list of string settings.
|
||||
*lcs-eol*
|
||||
eol:c Character to show at the end of each line. When
|
||||
omitted, there is no extra character at the end of the
|
||||
line.
|
||||
*lcs-tab*
|
||||
tab:xy Two characters to be used to show a tab. The first
|
||||
char is used once. The second char is repeated to
|
||||
fill the space that the tab normally occupies.
|
||||
"tab:>-" will show a tab that takes four spaces as
|
||||
">---". When omitted, a tab is show as ^I.
|
||||
*lcs-trail*
|
||||
trail:c Character to show for trailing spaces. When omitted,
|
||||
trailing spaces are blank.
|
||||
*lcs-extends*
|
||||
extends:c Character to show in the last column, when 'wrap' is
|
||||
off and the line continues beyond the right of the
|
||||
screen.
|
||||
*lcs-precedes*
|
||||
precedes:c Character to show in the first column, when 'wrap'
|
||||
is off and there is text preceding the character
|
||||
visible in the first column.
|
||||
*lcs-conceal*
|
||||
conceal:c Character to show in place of concealed text, when
|
||||
'conceallevel' is set to 1.
|
||||
*lcs-nbsp*
|
||||
nbsp:c Character to show for a non-breakable space (character
|
||||
0xA0, 160). Left blank when omitted.
|
||||
|
||||
@@ -5119,6 +5140,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
invoked and what it should return.
|
||||
This option is usually set by a filetype plugin:
|
||||
|:filetype-plugin-on|
|
||||
This option cannot be set from a |modeline| or in the |sandbox|, for
|
||||
security reasons.
|
||||
|
||||
|
||||
*'opendevice'* *'odev'* *'noopendevice'* *'noodev'*
|
||||
@@ -6096,6 +6119,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
local to buffer
|
||||
Number of spaces to use for each step of (auto)indent. Used for
|
||||
|'cindent'|, |>>|, |<<|, etc.
|
||||
When zero the 'ts' value will be used.
|
||||
|
||||
*'shortmess'* *'shm'*
|
||||
'shortmess' 'shm' string (Vim default "filnxtToO", Vi default: "",
|
||||
@@ -6680,8 +6704,8 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
The variable "actual_curbuf" is set to the 'bufnr()' number of the
|
||||
real current buffer.
|
||||
|
||||
The 'statusline' option may be evaluated in the |sandbox|, see
|
||||
|sandbox-option|.
|
||||
The 'statusline' option will be evaluated in the |sandbox| if set from
|
||||
a modeline, see |sandbox-option|.
|
||||
|
||||
It is not allowed to change text or jump to another window while
|
||||
evaluating 'statusline' |textlock|.
|
||||
@@ -7402,6 +7426,10 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
pterm QNX pterm mouse handling.
|
||||
*urxvt-mouse*
|
||||
urxvt Mouse handling for the urxvt (rxvt-unicode) terminal.
|
||||
*sgr-mouse*
|
||||
sgr Mouse handling for the terminal that emits SGR-styled
|
||||
mouse reporting. Works with xterm version 277 or
|
||||
later.
|
||||
|
||||
The mouse handling must be enabled at compile time |+mouse_xterm|
|
||||
|+mouse_dec| |+mouse_netterm|.
|
||||
@@ -7414,6 +7442,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
or "xterm2" already. The main use of this option is to set it to
|
||||
"xterm", when the terminal name doesn't start with "xterm", but it can
|
||||
handle xterm mouse codes.
|
||||
The "sgr" value will be set if the xterm version is 277 or later.
|
||||
The "xterm2" value will be set if the xterm version is reported to be
|
||||
95 or higher. This only works when compiled with the |+termresponse|
|
||||
feature and if |t_RV| is set to the escape sequence to request the
|
||||
@@ -7841,9 +7870,9 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
{not available when compiled without the |+wildignore|
|
||||
feature}
|
||||
A list of file patterns. A file that matches with one of these
|
||||
patterns is ignored when completing file or directory names, and
|
||||
influences the result of |expand()|, |glob()| and |globpath()| unless
|
||||
a flag is passed to disable this.
|
||||
patterns is ignored when expanding |wildcards|, completing file or
|
||||
directory names, and influences the result of |expand()|, |glob()| and
|
||||
|globpath()| unless a flag is passed to disable this.
|
||||
The pattern is used like with |:autocmd|, see |autocmd-patterns|.
|
||||
Also see 'suffixes'.
|
||||
Example: >
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*pi_gzip.txt* For Vim version 7.3. Last change: 2002 Oct 29
|
||||
*pi_gzip.txt* For Vim version 7.3. Last change: 2012 Jul 19
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -25,6 +25,8 @@ with these extensions:
|
||||
*.Z compress (Lempel-Ziv)
|
||||
*.gz gzip
|
||||
*.bz2 bzip2
|
||||
*.lzma lzma
|
||||
*.xz xz
|
||||
|
||||
That's actually the only thing you need to know. There are no options.
|
||||
|
||||
|
||||
@@ -561,7 +561,9 @@ commands can be combined to create a NewGrep command: >
|
||||
*:vim* *:vimgrep* *E682* *E683*
|
||||
:vim[grep][!] /{pattern}/[g][j] {file} ...
|
||||
Search for {pattern} in the files {file} ... and set
|
||||
the error list to the matches.
|
||||
the error list to the matches. Files matching
|
||||
'wildignore' are ignored; files in 'suffixes' are
|
||||
searched last.
|
||||
Without the 'g' flag each line is added only once.
|
||||
With 'g' every match is added.
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*sign.txt* For Vim version 7.3. Last change: 2012 Jan 04
|
||||
*sign.txt* For Vim version 7.3. Last change: 2012 Jul 10
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Gordon Prieur
|
||||
@@ -153,8 +153,14 @@ REMOVING SIGNS *:sign-unplace* *E159*
|
||||
Remove the previously placed sign {id} from file {fname}.
|
||||
See remark above about {fname} |:sign-fname|.
|
||||
|
||||
:sign unplace * file={fname}
|
||||
Remove all placed signs in file {fname}.
|
||||
|
||||
:sign unplace {id} buffer={nr}
|
||||
Same, but use buffer {nr}.
|
||||
Remove the previously placed sign {id} from buffer {nr}.
|
||||
|
||||
:sign unplace * buffer={nr}
|
||||
Remove all placed signs in buffer {nr}.
|
||||
|
||||
:sign unplace {id}
|
||||
Remove the previously placed sign {id} from all files it
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*syntax.txt* For Vim version 7.3. Last change: 2012 Apr 06
|
||||
*syntax.txt* For Vim version 7.3. Last change: 2012 Jul 16
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -380,194 +380,23 @@ settings, depending on which syntax is active. Example: >
|
||||
This is not a syntax file itself, but a script that converts the current
|
||||
window into HTML. Vim opens a new window in which it builds the HTML file.
|
||||
|
||||
After you save the resulting file, you can view it with any browser. The
|
||||
colors should be exactly the same as you see them in Vim.
|
||||
|
||||
You are not supposed to set the 'filetype' or 'syntax' option to "2html"!
|
||||
Source the script to convert the current file: >
|
||||
|
||||
:runtime! syntax/2html.vim
|
||||
<
|
||||
*:TOhtml*
|
||||
Or use the ":TOhtml" user command. It is defined in a standard plugin.
|
||||
":TOhtml" also works with a range and in a Visual area: >
|
||||
|
||||
:10,40TOhtml
|
||||
|
||||
Warning: This can be slow! The script must process every character of every
|
||||
line. Because it can take a long time, by default a progress bar is displayed
|
||||
in the statusline for each major step in the conversion process. If you don't
|
||||
like seeing this progress bar, you can disable it and get a very minor speed
|
||||
improvement with: >
|
||||
|
||||
let g:html_no_progress = 1
|
||||
|
||||
":TOhtml" has another special feature: if the window is in diff mode, it will
|
||||
generate HTML that shows all the related windows. This can be disabled by
|
||||
setting the g:html_diff_one_file variable: >
|
||||
|
||||
let g:html_diff_one_file = 1
|
||||
|
||||
After you save the resulting file, you can view it with any browser. The
|
||||
colors should be exactly the same as you see them in Vim.
|
||||
|
||||
To restrict the conversion to a range of lines, use a range with the |:TOhtml|
|
||||
command, or set "g:html_start_line" and "g:html_end_line" to the first and
|
||||
last line to be converted. Example, using the last set Visual area: >
|
||||
|
||||
:let g:html_start_line = line("'<")
|
||||
:let g:html_end_line = line("'>")
|
||||
|
||||
The lines are numbered according to 'number' option and the Number
|
||||
highlighting. You can force lines to be numbered in the HTML output by
|
||||
setting "html_number_lines" to non-zero value: >
|
||||
:let g:html_number_lines = 1
|
||||
Force to omit the line numbers by using a zero value: >
|
||||
:let g:html_number_lines = 0
|
||||
Go back to the default to use 'number' by deleting the variable: >
|
||||
:unlet g:html_number_lines
|
||||
|
||||
By default, valid HTML 4.01 using cascading style sheets (CSS1) is generated.
|
||||
If you need to generate markup for really old browsers or some other user
|
||||
agent that lacks basic CSS support, use: >
|
||||
:let g:html_use_css = 0
|
||||
|
||||
Concealed text is removed from the HTML and replaced with the appropriate
|
||||
character from |:syn-cchar| or 'listchars' depending on the current value of
|
||||
'conceallevel'. If you always want to display all text in your document,
|
||||
either set 'conceallevel' to zero before invoking 2html, or use: >
|
||||
:let g:html_ignore_conceal = 1
|
||||
|
||||
Similarly, closed folds are put in the HTML as they are displayed. If you
|
||||
don't want this, use the |zR| command before invoking 2html, or use: >
|
||||
:let g:html_ignore_folding = 1
|
||||
|
||||
You may want to generate HTML that includes all the data within the folds, and
|
||||
allow the user to view the folded data similar to how they would in Vim. To
|
||||
generate this dynamic fold information, use: >
|
||||
:let g:html_dynamic_folds = 1
|
||||
|
||||
Using html_dynamic_folds will imply html_use_css, because it would be far too
|
||||
difficult to do it for old browsers. However, html_ignore_folding overrides
|
||||
html_dynamic_folds.
|
||||
|
||||
Using html_dynamic_folds will default to generating a foldcolumn in the html
|
||||
similar to Vim's foldcolumn, that will use javascript to open and close the
|
||||
folds in the HTML document. The width of this foldcolumn starts at the current
|
||||
setting of |'foldcolumn'| but grows to fit the greatest foldlevel in your
|
||||
document. If you do not want to show a foldcolumn at all, use: >
|
||||
:let g:html_no_foldcolumn = 1
|
||||
|
||||
Using this option, there will be no foldcolumn available to open the folds in
|
||||
the HTML. For this reason, another option is provided: html_hover_unfold.
|
||||
Enabling this option will use CSS 2.0 to allow a user to open a fold by
|
||||
hovering the mouse pointer over it. Note that old browsers (notably Internet
|
||||
Explorer 6) will not support this feature. Browser-specific markup for IE6 is
|
||||
included to fall back to the normal CSS1 code so that the folds show up
|
||||
correctly for this browser, but they will not be openable without a
|
||||
foldcolumn. Note that using html_hover_unfold will allow modern browsers with
|
||||
disabled javascript to view closed folds. To use this option, use: >
|
||||
:let g:html_hover_unfold = 1
|
||||
|
||||
Setting html_no_foldcolumn with html_dynamic_folds will automatically set
|
||||
html_hover_unfold, because otherwise the folds wouldn't be dynamic.
|
||||
|
||||
By default "<pre>" and "</pre>" are used around the text. When 'wrap' is set
|
||||
in the window being converted, the CSS 2.0 "white-space:pre-wrap" value is
|
||||
used to wrap the text. You can explicitly enable the wrapping with: >
|
||||
:let g:html_pre_wrap = 1
|
||||
or disable with >
|
||||
:let g:html_pre_wrap = 0
|
||||
This generates HTML that looks very close to the Vim window, but unfortunately
|
||||
there can be minor differences such as the lack of a 'showbreak' option in in
|
||||
the HTML, or where line breaks can occur.
|
||||
|
||||
Another way to obtain text wrapping in the HTML, at the risk of making some
|
||||
things look even more different, is to use: >
|
||||
:let g:html_no_pre = 1
|
||||
This will use <br> at the end of each line and use " " for repeated
|
||||
spaces. Doing it this way is more compatible with old browsers, but modern
|
||||
browsers support the "white-space" method.
|
||||
|
||||
If you do stick with the default "<pre>" tags, <Tab> characters in the text
|
||||
are included in the generated output if they will have no effect on the
|
||||
appearance of the text and it looks like they are in the document
|
||||
intentionally. This allows for the HTML output to be copied and pasted from a
|
||||
browser without losing the actual whitespace used in the document.
|
||||
|
||||
Specifically, <Tab> characters will be included if the 'tabstop' option is set
|
||||
to the default of 8, 'expandtab' is not set, and if neither the foldcolumn nor
|
||||
the line numbers are included in the HTML output (see options above). When any
|
||||
of these conditions are not met, any <Tab> characters in the text are expanded
|
||||
to the appropriate number of spaces in the HTML output.
|
||||
|
||||
When "<pre>" is included, you can force |:TOhtml| to keep the tabs even if the
|
||||
other conditions are not met with: >
|
||||
:let g:html_expand_tabs = 0
|
||||
Note that this can easily break text alignment and indentation in the HTML.
|
||||
|
||||
Force tabs to be expanded even when they would be kept using: >
|
||||
:let g:html_expand_tabs = 1
|
||||
|
||||
For diff mode on a single file (with g:html_diff_one_file) a sequence of more
|
||||
than 3 filler lines is displayed as three lines with the middle line
|
||||
mentioning the total number of inserted lines. If you prefer to see all the
|
||||
inserted lines as with the side-by-side diff, use: >
|
||||
:let g:html_whole_filler = 1
|
||||
And to go back to displaying up to three lines again: >
|
||||
:unlet g:html_whole_filler
|
||||
|
||||
For most buffers, TOhtml uses the current value of 'fileencoding' if set, or
|
||||
'encoding' if not, to determine the charset and 'fileencoding' of the HTML
|
||||
file. 'encoding' is always used for certain 'buftype' values. In general, this
|
||||
works for the encodings mentioned specifically by name in |encoding-names|,
|
||||
but TOhtml will only automatically use those encodings which are widely
|
||||
supported. However, you can override this to support specific encodings that
|
||||
may not be automatically detected by default.
|
||||
|
||||
To overrule all automatic charset detection, set g:html_use_encoding to the
|
||||
name of the charset to be used. TOhtml will try to determine the appropriate
|
||||
'fileencoding' setting from the charset, but you may need to set it manually
|
||||
if TOhtml cannot determine the encoding. It is recommended to set this
|
||||
variable to something widely supported, like UTF-8, for anything you will be
|
||||
hosting on a webserver: >
|
||||
:let g:html_use_encoding = "UTF-8"
|
||||
You can also use this option to omit the line that specifies the charset
|
||||
entirely, by setting g:html_use_encoding to an empty string: >
|
||||
:let g:html_use_encoding = ""
|
||||
To go back to the automatic mechanism, delete the g:html_use_encoding
|
||||
variable: >
|
||||
:unlet g:html_use_encoding
|
||||
|
||||
If you specify a charset with g:html_use_encoding for which TOhtml cannot
|
||||
automatically detect the corresponding 'fileencoding' setting, you can use
|
||||
g:html_encoding_override to allow TOhtml to detect the correct encoding.
|
||||
This is a dictionary of charset-encoding pairs that will replace existing
|
||||
pairs automatically detected by TOhtml, or supplement with new pairs. For
|
||||
example, to allow TOhtml to detect the HTML charset "windows-1252" properly as
|
||||
the encoding "8bit-cp1252", use: >
|
||||
:let g:html_encoding_override = {'windows-1252': '8bit-cp1252'}
|
||||
<
|
||||
The g:html_charset_override is similar, it allows TOhtml to detect the HTML
|
||||
charset for any 'fileencoding' or 'encoding' which is not detected
|
||||
automatically. You can also use it to override specific existing
|
||||
encoding-charset pairs. For example, TOhtml will by default use UTF-8 for all
|
||||
Unicode/UCS encodings. To use UTF-16 and UTF-32 instead, use: >
|
||||
:let g:html_charset_override = {'ucs-4': 'UTF-32', 'utf-16': 'UTF-16'}
|
||||
|
||||
Note that documents encoded in either UTF-32 or UTF-16 have known
|
||||
compatibility problems with at least one major browser.
|
||||
|
||||
*convert-to-XML* *convert-to-XHTML*
|
||||
If you do not like plain HTML, an alternative is to have the script generate
|
||||
XHTML (XML compliant HTML). To do this set the "html_use_xhtml" variable: >
|
||||
:let g:html_use_xhtml = 1
|
||||
|
||||
Any of the on/off options listed above can be enabled or disabled by setting
|
||||
them explicitly to the desired value, or restored to their default by removing
|
||||
the variable using |:unlet|.
|
||||
Many variables affect the output of 2html.vim; see below. Any of the on/off
|
||||
options listed below can be enabled or disabled by setting them explicitly to
|
||||
the desired value, or restored to their default by removing the variable using
|
||||
|:unlet|.
|
||||
|
||||
Remarks:
|
||||
- Some truly ancient browsers may not show the background colors.
|
||||
- From most browsers you can also print the file (in color)!
|
||||
- This version of TOhtml may work with older versions of Vim, but some
|
||||
- The latest TOhtml may actually work with older versions of Vim, but some
|
||||
features such as conceal support will not function, and the colors may be
|
||||
incorrect for an old Vim without GUI support compiled in.
|
||||
|
||||
@@ -575,6 +404,311 @@ Here is an example how to run the script over all .c and .h files from a
|
||||
Unix shell: >
|
||||
for f in *.[ch]; do gvim -f +"syn on" +"run! syntax/2html.vim" +"wq" +"q" $f; done
|
||||
<
|
||||
*g:html_start_line* *g:html_end_line*
|
||||
To restrict the conversion to a range of lines, use a range with the |:TOhtml|
|
||||
command below, or set "g:html_start_line" and "g:html_end_line" to the first
|
||||
and last line to be converted. Example, using the last set Visual area: >
|
||||
|
||||
:let g:html_start_line = line("'<")
|
||||
:let g:html_end_line = line("'>")
|
||||
:runtime! syntax/2html.vim
|
||||
<
|
||||
*:TOhtml*
|
||||
:[range]TOhtml The ":TOhtml" command is defined in a standard plugin.
|
||||
This command will source |2html.vim| for you. When a
|
||||
range is given, set |g:html_start_line| and
|
||||
|g:html_end_line| to the start and end of the range,
|
||||
respectively. Default range is the entire buffer.
|
||||
|
||||
If the current window is part of a |diff|, unless
|
||||
|g:html_diff_one_file| is set, :TOhtml will convert
|
||||
all windows which are part of the diff in the current
|
||||
tab and place them side-by-side in a <table> element
|
||||
in the generated HTML.
|
||||
|
||||
Examples: >
|
||||
|
||||
:10,40TOhtml " convert lines 10-40 to html
|
||||
:'<,'>TOhtml " convert current/last visual selection
|
||||
:TOhtml " convert entire buffer
|
||||
<
|
||||
*g:html_diff_one_file*
|
||||
Default: 0.
|
||||
When 0, all windows involved in a |diff| in the current tab page are converted
|
||||
to HTML and placed side-by-side in a <table> element.
|
||||
When 1, only the current buffer is converted.
|
||||
Example: >
|
||||
|
||||
let g:html_diff_one_file = 1
|
||||
<
|
||||
*g:html_whole_filler*
|
||||
Default: 0.
|
||||
When 0, if |g:html_diff_one_file| is 1, a sequence of more than 3 filler lines
|
||||
is displayed as three lines with the middle line mentioning the total number
|
||||
of inserted lines.
|
||||
When 1, always display all inserted lines as if |g:html_diff_one_file| were
|
||||
not set.
|
||||
>
|
||||
:let g:html_whole_filler = 1
|
||||
<
|
||||
*TOhtml-performance* *g:html_no_progress*
|
||||
Default: 0.
|
||||
When 0, display a progress bar in the statusline for each major step in the
|
||||
2html.vim conversion process.
|
||||
When 1, do not display the progress bar. This offers a minor speed improvement
|
||||
but you won't have any idea how much longer the conversion might take; for big
|
||||
files it can take a long time!
|
||||
Example: >
|
||||
|
||||
let g:html_no_progress = 1
|
||||
<
|
||||
You can obtain better performance improvements by also instructing Vim to not
|
||||
run interactively, so that too much time is not taken to redraw as the script
|
||||
moves through the buffer, switches windows, and the like: >
|
||||
|
||||
vim -E -s -c "let g:html_no_progress=1" -c "syntax on" -c "set ft=c" -c "runtime syntax/2html.vim" -cwqa myfile.c
|
||||
<
|
||||
Note that the -s flag prevents loading your .vimrc and any plugins, so you
|
||||
need to explicitly source/enable anything that will affect the HTML
|
||||
conversion. See |-E| and |-s-ex| for details. It is probably best to create a
|
||||
script to replace all the -c commands and use it with the -u flag instead of
|
||||
specifying each command separately.
|
||||
|
||||
*g:html_number_lines*
|
||||
Default: current 'number' setting.
|
||||
When 0, buffer text is displayed in the generated HTML without line numbering.
|
||||
When 1, a column of line numbers is added to the generated HTML with the same
|
||||
highlighting as the line number column in Vim (|hl-LineNr|).
|
||||
Force line numbers even if 'number' is not set: >
|
||||
:let g:html_number_lines = 1
|
||||
Force to omit the line numbers: >
|
||||
:let g:html_number_lines = 0
|
||||
Go back to the default to use 'number' by deleting the variable: >
|
||||
:unlet g:html_number_lines
|
||||
<
|
||||
*g:html_use_css*
|
||||
Default: 1.
|
||||
When 1, generate valid HTML 4.01 markup with CSS1 styling, supported in all
|
||||
modern browsers and most old browsers.
|
||||
When 0, generate <font> tags and similar outdated markup. This is not
|
||||
recommended but it may work better in really old browsers, email clients,
|
||||
forum posts, and similar situations where basic CSS support is unavailable.
|
||||
Example: >
|
||||
:let g:html_use_css = 0
|
||||
<
|
||||
*g:html_ignore_conceal*
|
||||
Default: 0.
|
||||
When 0, concealed text is removed from the HTML and replaced with a character
|
||||
from |:syn-cchar| or 'listchars' as appropriate, depending on the current
|
||||
value of 'conceallevel'.
|
||||
When 1, include all text from the buffer in the generated HTML, even if it is
|
||||
|conceal|ed.
|
||||
|
||||
Either of the following commands will ensure that all text in the buffer is
|
||||
included in the generated HTML (unless it is folded): >
|
||||
:let g:html_ignore_conceal = 1
|
||||
:setl conceallevel=0
|
||||
<
|
||||
*g:html_ignore_folding*
|
||||
Default: 0.
|
||||
When 0, text in a closed fold is replaced by the text shown for the fold in
|
||||
Vim (|fold-foldtext|). See |g:html_dynamic_folds| if you also want to allow
|
||||
the user to expand the fold as in Vim to see the text inside.
|
||||
When 1, include all text from the buffer in the generated HTML; whether the
|
||||
text is in a fold has no impact at all. |g:html_dynamic_folds| has no effect.
|
||||
|
||||
Either of these commands will ensure that all text in the buffer is included
|
||||
in the generated HTML (unless it is concealed): >
|
||||
zR
|
||||
:let g:html_ignore_folding = 1
|
||||
<
|
||||
*g:html_dynamic_folds*
|
||||
Default: 0.
|
||||
When 0, text in a closed fold is not included at all in the generated HTML.
|
||||
When 1, generate javascript to open a fold and show the text within, just like
|
||||
in Vim.
|
||||
|
||||
Setting this variable to 1 causes 2html.vim to always use CSS for styling,
|
||||
regardless of what |g:html_use_css| is set to.
|
||||
|
||||
This variable is ignored when |g:html_ignore_folding| is set.
|
||||
>
|
||||
:let g:html_dynamic_folds = 1
|
||||
<
|
||||
*g:html_no_foldcolumn*
|
||||
Default: 0.
|
||||
When 0, if |g:html_dynamic_folds| is 1, generate a column of text similar to
|
||||
Vim's foldcolumn (|fold-foldcolumn|) the user can click on to toggle folds
|
||||
open or closed. The minimum width of the generated text column is the current
|
||||
'foldcolumn' setting.
|
||||
When 1, do not generate this column; instead, hovering the mouse cursor over
|
||||
folded text will open the fold as if |g:html_hover_unfold| were set.
|
||||
>
|
||||
:let g:html_no_foldcolumn = 1
|
||||
<
|
||||
*TOhtml-uncopyable-text* *g:html_prevent_copy*
|
||||
Default: empty string.
|
||||
This option prevents certain regions of the generated HTML from being copied,
|
||||
when you select all text in document rendered in a browser and copy it. Useful
|
||||
for allowing users to copy-paste only the source text even if a fold column or
|
||||
line numbers are shown in the generated content. Specify regions to be
|
||||
affected in this way as follows:
|
||||
f: fold column
|
||||
n: line numbers (also within fold text)
|
||||
t: fold text
|
||||
d: diff filler
|
||||
|
||||
Example, to make the fold column and line numbers uncopyable: >
|
||||
:let g:html_prevent_copy = "fn"
|
||||
<
|
||||
This feature is currently implemented by inserting read-only <input> elements
|
||||
into the markup to contain the uncopyable areas. This does not work well in
|
||||
all cases. When pasting to some applications which understand HTML, the
|
||||
<input> elements also get pasted. But plain-text paste destinations should
|
||||
always work.
|
||||
|
||||
*g:html_no_invalid*
|
||||
Default: 0.
|
||||
When 0, if |g:html_prevent_copy| is non-empty, an invalid attribute is
|
||||
intentionally inserted into the <input> element for the uncopyable areas. This
|
||||
increases the number of applications you can paste to without also pasting the
|
||||
<input> elements. Specifically, Microsoft Word will not paste the <input>
|
||||
elements if they contain this invalid attribute.
|
||||
When 1, no invalid markup is ever intentionally inserted, and the generated
|
||||
page should validate. However, be careful pasting into Microsoft Word when
|
||||
|g:html_prevent_copy| is non-empty; it can be hard to get rid of the <input>
|
||||
elements which get pasted.
|
||||
|
||||
*g:html_hover_unfold*
|
||||
Default: 0.
|
||||
When 0, the only way to open a fold generated by 2html.vim with
|
||||
|g:html_dynamic_folds| set, is to click on the generated fold column.
|
||||
When 1, use CSS 2.0 to allow the user to open a fold by moving the mouse
|
||||
cursor over the displayed fold text. This is useful to allow users with
|
||||
disabled javascript to view the folded text.
|
||||
|
||||
Note that old browsers (notably Internet Explorer 6) will not support this
|
||||
feature. Browser-specific markup for IE6 is included to fall back to the
|
||||
normal CSS1 styling so that the folds show up correctly for this browser, but
|
||||
they will not be openable without a foldcolumn.
|
||||
>
|
||||
:let g:html_hover_unfold = 1
|
||||
<
|
||||
*TOhtml-wrap-text* *g:html_pre_wrap*
|
||||
Default: current 'wrap' setting.
|
||||
When 0, if |g:html_no_pre| is 0 or unset, the text in the generated HTML does
|
||||
not wrap at the edge of the browser window.
|
||||
When 1, if |g:html_use_css| is 1, the CSS 2.0 "white-space:pre-wrap" value is
|
||||
used, causing the text to wrap at whitespace at the edge of the browser
|
||||
window.
|
||||
Explicitly enable text wrapping: >
|
||||
:let g:html_pre_wrap = 1
|
||||
Explicitly disable wrapping: >
|
||||
:let g:html_pre_wrap = 0
|
||||
Go back to default, determine wrapping from 'wrap' setting: >
|
||||
:unlet g:html_pre_wrap
|
||||
<
|
||||
*g:html_no_pre*
|
||||
Default: 0.
|
||||
When 0, buffer text in the generated HTML is surrounded by <pre>...</pre>
|
||||
tags. Series of whitespace is shown as in Vim without special markup, and tab
|
||||
characters can be included literally (see |g:html_expand_tabs|).
|
||||
When 1 (not recommended), the <pre> tags are omitted, and a plain <div> is
|
||||
used instead. Whitespace is replaced by a series of character
|
||||
references, and <br> is used to end each line. This is another way to allow
|
||||
text in the generated HTML is wrap (see |g:html_pre_wrap|) which also works in
|
||||
old browsers, but may cause noticeable differences between Vim's display and
|
||||
the rendered page generated by 2html.vim.
|
||||
>
|
||||
:let g:html_no_pre = 1
|
||||
<
|
||||
*g:html_expand_tabs*
|
||||
Default: 1 if 'tabstop' is 8, 'expandtab' is 0, and no fold column or line
|
||||
numbers occur in the generated HTML;
|
||||
0 otherwise.
|
||||
When 0, <Tab> characters in the buffer text are replaced with an appropriate
|
||||
number of space characters, or references if |g:html_no_pre| is 1.
|
||||
When 1, if |g:html_no_pre| is 0 or unset, <Tab> characters in the buffer text
|
||||
are included as-is in the generated HTML. This is useful for when you want to
|
||||
allow copy and paste from a browser without losing the actual whitespace in
|
||||
the source document. Note that this can easily break text alignment and
|
||||
indentation in the HTML, unless set by default.
|
||||
|
||||
Force |2html.vim| to keep <Tab> characters: >
|
||||
:let g:html_expand_tabs = 0
|
||||
<
|
||||
Force tabs to be expanded: >
|
||||
:let g:html_expand_tabs = 1
|
||||
<
|
||||
*TOhtml-encoding-detect* *TOhtml-encoding*
|
||||
It is highly recommended to set your desired encoding with
|
||||
|g:html_use_encoding| for any content which will be placed on a web server.
|
||||
|
||||
If you do not specify an encoding, |2html.vim| uses the preferred IANA name
|
||||
for the current value of 'fileencoding' if set, or 'encoding' if not.
|
||||
'encoding' is always used for certain 'buftype' values. 'fileencoding' will be
|
||||
set to match the chosen document encoding.
|
||||
|
||||
Automatic detection works for the encodings mentioned specifically by name in
|
||||
|encoding-names|, but TOhtml will only automatically use those encodings with
|
||||
wide browser support. However, you can override this to support specific
|
||||
encodings that may not be automatically detected by default (see options
|
||||
below). See http://www.iana.org/assignments/character-sets for the IANA names.
|
||||
|
||||
Note, by default all Unicode encodings are converted to UTF-8 with no BOM in
|
||||
the generated HTML, as recommended by W3C:
|
||||
|
||||
http://www.w3.org/International/questions/qa-choosing-encodings
|
||||
http://www.w3.org/International/questions/qa-byte-order-mark
|
||||
|
||||
*g:html_use_encoding*
|
||||
Default: none, uses IANA name for current 'fileencoding' as above.
|
||||
To overrule all automatic charset detection, set g:html_use_encoding to the
|
||||
name of the charset to be used. It is recommended to set this variable to
|
||||
something widely supported, like UTF-8, for anything you will be hosting on a
|
||||
webserver: >
|
||||
:let g:html_use_encoding = "UTF-8"
|
||||
You can also use this option to omit the line that specifies the charset
|
||||
entirely, by setting g:html_use_encoding to an empty string (NOT recommended): >
|
||||
:let g:html_use_encoding = ""
|
||||
To go back to the automatic mechanism, delete the |g:html_use_encoding|
|
||||
variable: >
|
||||
:unlet g:html_use_encoding
|
||||
<
|
||||
*g:html_encoding_override*
|
||||
Default: none, autoload/tohtml.vim contains default conversions for encodings
|
||||
mentioned by name at |encoding-names|.
|
||||
This option allows |2html.vim| to detect the correct 'fileencoding' when you
|
||||
specify an encoding with |g:html_use_encoding| which is not in the default
|
||||
list of conversions.
|
||||
|
||||
This is a dictionary of charset-encoding pairs that will replace existing
|
||||
pairs automatically detected by TOhtml, or supplement with new pairs.
|
||||
|
||||
Detect the HTML charset "windows-1252" as the encoding "8bit-cp1252": >
|
||||
:let g:html_encoding_override = {'windows-1252': '8bit-cp1252'}
|
||||
<
|
||||
*g:html_charset_override*
|
||||
Default: none, autoload/tohtml.vim contains default conversions for encodings
|
||||
mentioned by name at |encoding-names| and which have wide
|
||||
browser support.
|
||||
This option allows |2html.vim| to detect the HTML charset for any
|
||||
'fileencoding' or 'encoding' which is not detected automatically. You can also
|
||||
use it to override specific existing encoding-charset pairs. For example,
|
||||
TOhtml will by default use UTF-8 for all Unicode/UCS encodings. To use UTF-16
|
||||
and UTF-32 instead, use: >
|
||||
:let g:html_charset_override = {'ucs-4': 'UTF-32', 'utf-16': 'UTF-16'}
|
||||
|
||||
Note that documents encoded in either UTF-32 or UTF-16 have known
|
||||
compatibility problems with some major browsers.
|
||||
|
||||
*convert-to-XML* *convert-to-XHTML* *g:html_use_xhtml*
|
||||
Default: 0.
|
||||
When 0, generate standard HTML 4.01 (strict when possible).
|
||||
When 1, generate XHTML 1.0 instead (XML compliant HTML).
|
||||
>
|
||||
:let g:html_use_xhtml = 1
|
||||
<
|
||||
|
||||
ABEL *abel.vim* *ft-abel-syntax*
|
||||
|
||||
@@ -650,7 +784,11 @@ The most flexible is to add a line in your assembly file containing: >
|
||||
asmsyntax=nasm
|
||||
Replace "nasm" with the name of the real assembly syntax. This line must be
|
||||
one of the first five lines in the file. No non-white text must be
|
||||
immediately before or after this text.
|
||||
immediately before or after this text. Note that specifying asmsyntax=foo is
|
||||
equivalent to setting ft=foo in a |modeline|, and that in case of a conflict
|
||||
between the two settings the one from the modeline will take precedence (in
|
||||
particular, if you have ft=asm in the modeline, you will get the GNU syntax
|
||||
highlighting regardless of what is specified as asmsyntax).
|
||||
|
||||
The syntax type can always be overruled for a specific buffer by setting the
|
||||
b:asmsyntax variable: >
|
||||
@@ -2909,7 +3047,7 @@ Some folding is now supported with syntax/vim.vim: >
|
||||
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
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*tabpage.txt* For Vim version 7.3. Last change: 2010 Jul 31
|
||||
*tabpage.txt* For Vim version 7.3. Last change: 2012 Aug 08
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -113,7 +113,7 @@ something else.
|
||||
this is a "safe" command.
|
||||
|
||||
:tabc[lose][!] {count}
|
||||
Close tab page {count}. Fails in the same way as ':tabclose"
|
||||
Close tab page {count}. Fails in the same way as `:tabclose`
|
||||
above.
|
||||
|
||||
*:tabo* *:tabonly*
|
||||
@@ -173,10 +173,20 @@ Other commands:
|
||||
REORDERING TAB PAGES:
|
||||
|
||||
:tabm[ove] [N] *:tabm* *:tabmove*
|
||||
:[N]tabm[ove]
|
||||
Move the current tab page to after tab page N. Use zero to
|
||||
make the current tab page the first one. Without N the tab
|
||||
page is made the last one.
|
||||
|
||||
:tabm[ove] +[N]
|
||||
:tabm[ove] -[N]
|
||||
Move the current tab page N places to the right (with +) or to
|
||||
the left (with -).
|
||||
|
||||
Note that although it is possible to move a tab behind the N-th one by using
|
||||
:Ntabmove, it is impossible to move it by N places by using :+Ntabmove. For
|
||||
clarification what +N means in this context see |[range]|.
|
||||
|
||||
|
||||
LOOPING OVER TAB PAGES:
|
||||
|
||||
|
||||
@@ -281,6 +281,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
'go-F' options.txt /*'go-F'*
|
||||
'go-L' options.txt /*'go-L'*
|
||||
'go-M' options.txt /*'go-M'*
|
||||
'go-P' options.txt /*'go-P'*
|
||||
'go-R' options.txt /*'go-R'*
|
||||
'go-T' options.txt /*'go-T'*
|
||||
'go-a' options.txt /*'go-a'*
|
||||
@@ -1185,6 +1186,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
+mouse_gpm various.txt /*+mouse_gpm*
|
||||
+mouse_netterm various.txt /*+mouse_netterm*
|
||||
+mouse_pterm various.txt /*+mouse_pterm*
|
||||
+mouse_sgr various.txt /*+mouse_sgr*
|
||||
+mouse_sysmouse various.txt /*+mouse_sysmouse*
|
||||
+mouse_urxvt various.txt /*+mouse_urxvt*
|
||||
+mouse_xterm various.txt /*+mouse_xterm*
|
||||
@@ -1835,6 +1837,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
:X editing.txt /*:X*
|
||||
:XMLent insert.txt /*:XMLent*
|
||||
:XMLns insert.txt /*:XMLns*
|
||||
:[range] motion.txt /*:[range]*
|
||||
:\bar cmdline.txt /*:\\bar*
|
||||
:_! cmdline.txt /*:_!*
|
||||
:_# cmdline.txt /*:_#*
|
||||
@@ -3408,6 +3411,7 @@ CmdwinLeave autocmd.txt /*CmdwinLeave*
|
||||
ColorScheme autocmd.txt /*ColorScheme*
|
||||
Command-line cmdline.txt /*Command-line*
|
||||
Command-line-mode cmdline.txt /*Command-line-mode*
|
||||
CompleteDone autocmd.txt /*CompleteDone*
|
||||
Contents quickref.txt /*Contents*
|
||||
Cscope if_cscop.txt /*Cscope*
|
||||
CursorHold autocmd.txt /*CursorHold*
|
||||
@@ -4242,7 +4246,11 @@ E852 gui_x11.txt /*E852*
|
||||
E853 eval.txt /*E853*
|
||||
E854 options.txt /*E854*
|
||||
E855 autocmd.txt /*E855*
|
||||
E858 eval.txt /*E858*
|
||||
E859 eval.txt /*E859*
|
||||
E86 windows.txt /*E86*
|
||||
E860 eval.txt /*E860*
|
||||
E861 eval.txt /*E861*
|
||||
E87 windows.txt /*E87*
|
||||
E88 windows.txt /*E88*
|
||||
E89 message.txt /*E89*
|
||||
@@ -4425,6 +4433,7 @@ QuickFixCmdPost autocmd.txt /*QuickFixCmdPost*
|
||||
QuickFixCmdPost-example quickfix.txt /*QuickFixCmdPost-example*
|
||||
QuickFixCmdPre autocmd.txt /*QuickFixCmdPre*
|
||||
Quickfix quickfix.txt /*Quickfix*
|
||||
QuitPre autocmd.txt /*QuitPre*
|
||||
R change.txt /*R*
|
||||
RISC-OS os_risc.txt /*RISC-OS*
|
||||
RISCOS os_risc.txt /*RISCOS*
|
||||
@@ -4456,6 +4465,11 @@ Syntax autocmd.txt /*Syntax*
|
||||
T motion.txt /*T*
|
||||
TCL if_tcl.txt /*TCL*
|
||||
TERM starting.txt /*TERM*
|
||||
TOhtml-encoding syntax.txt /*TOhtml-encoding*
|
||||
TOhtml-encoding-detect syntax.txt /*TOhtml-encoding-detect*
|
||||
TOhtml-performance syntax.txt /*TOhtml-performance*
|
||||
TOhtml-uncopyable-text syntax.txt /*TOhtml-uncopyable-text*
|
||||
TOhtml-wrap-text syntax.txt /*TOhtml-wrap-text*
|
||||
TSQL ft_sql.txt /*TSQL*
|
||||
TTpro-telnet syntax.txt /*TTpro-telnet*
|
||||
Tab intro.txt /*Tab*
|
||||
@@ -5011,6 +5025,13 @@ clearmatches() eval.txt /*clearmatches()*
|
||||
client-server remote.txt /*client-server*
|
||||
clientserver remote.txt /*clientserver*
|
||||
clipboard gui.txt /*clipboard*
|
||||
clipboard-autoselect options.txt /*clipboard-autoselect*
|
||||
clipboard-autoselectml options.txt /*clipboard-autoselectml*
|
||||
clipboard-autoselectplus options.txt /*clipboard-autoselectplus*
|
||||
clipboard-exclude options.txt /*clipboard-exclude*
|
||||
clipboard-html options.txt /*clipboard-html*
|
||||
clipboard-unnamed options.txt /*clipboard-unnamed*
|
||||
clipboard-unnamedplus options.txt /*clipboard-unnamedplus*
|
||||
cmdarg-variable eval.txt /*cmdarg-variable*
|
||||
cmdbang-variable eval.txt /*cmdbang-variable*
|
||||
cmdline-arguments vi_diff.txt /*cmdline-arguments*
|
||||
@@ -5271,6 +5292,7 @@ develop-spell develop.txt /*develop-spell*
|
||||
develop-spell-suggestions develop.txt /*develop-spell-suggestions*
|
||||
develop.txt develop.txt /*develop.txt*
|
||||
development develop.txt /*development*
|
||||
dgn motion.txt /*dgn*
|
||||
dh change.txt /*dh*
|
||||
diB motion.txt /*diB*
|
||||
diW motion.txt /*diW*
|
||||
@@ -5814,6 +5836,27 @@ g:gnat.Project_File ft_ada.txt /*g:gnat.Project_File*
|
||||
g:gnat.Set_Project_File() ft_ada.txt /*g:gnat.Set_Project_File()*
|
||||
g:gnat.Tags() ft_ada.txt /*g:gnat.Tags()*
|
||||
g:gnat.Tags_Command ft_ada.txt /*g:gnat.Tags_Command*
|
||||
g:html_charset_override syntax.txt /*g:html_charset_override*
|
||||
g:html_diff_one_file syntax.txt /*g:html_diff_one_file*
|
||||
g:html_dynamic_folds syntax.txt /*g:html_dynamic_folds*
|
||||
g:html_encoding_override syntax.txt /*g:html_encoding_override*
|
||||
g:html_end_line syntax.txt /*g:html_end_line*
|
||||
g:html_expand_tabs syntax.txt /*g:html_expand_tabs*
|
||||
g:html_hover_unfold syntax.txt /*g:html_hover_unfold*
|
||||
g:html_ignore_conceal syntax.txt /*g:html_ignore_conceal*
|
||||
g:html_ignore_folding syntax.txt /*g:html_ignore_folding*
|
||||
g:html_no_foldcolumn syntax.txt /*g:html_no_foldcolumn*
|
||||
g:html_no_invalid syntax.txt /*g:html_no_invalid*
|
||||
g:html_no_pre syntax.txt /*g:html_no_pre*
|
||||
g:html_no_progress syntax.txt /*g:html_no_progress*
|
||||
g:html_number_lines syntax.txt /*g:html_number_lines*
|
||||
g:html_pre_wrap syntax.txt /*g:html_pre_wrap*
|
||||
g:html_prevent_copy syntax.txt /*g:html_prevent_copy*
|
||||
g:html_start_line syntax.txt /*g:html_start_line*
|
||||
g:html_use_css syntax.txt /*g:html_use_css*
|
||||
g:html_use_encoding syntax.txt /*g:html_use_encoding*
|
||||
g:html_use_xhtml syntax.txt /*g:html_use_xhtml*
|
||||
g:html_whole_filler syntax.txt /*g:html_whole_filler*
|
||||
g:netrw_alto pi_netrw.txt /*g:netrw_alto*
|
||||
g:netrw_altv pi_netrw.txt /*g:netrw_altv*
|
||||
g:netrw_banner pi_netrw.txt /*g:netrw_banner*
|
||||
@@ -5935,6 +5978,7 @@ gF editing.txt /*gF*
|
||||
gH visual.txt /*gH*
|
||||
gI insert.txt /*gI*
|
||||
gJ change.txt /*gJ*
|
||||
gN visual.txt /*gN*
|
||||
gP change.txt /*gP*
|
||||
gQ intro.txt /*gQ*
|
||||
gR change.txt /*gR*
|
||||
@@ -6019,6 +6063,7 @@ glvs-options pi_getscript.txt /*glvs-options*
|
||||
glvs-plugins pi_getscript.txt /*glvs-plugins*
|
||||
glvs-usage pi_getscript.txt /*glvs-usage*
|
||||
gm motion.txt /*gm*
|
||||
gn visual.txt /*gn*
|
||||
gnat#Insert_Tags_Header() ft_ada.txt /*gnat#Insert_Tags_Header()*
|
||||
gnat#New() ft_ada.txt /*gnat#New()*
|
||||
gnat-xref ft_ada.txt /*gnat-xref*
|
||||
@@ -6513,6 +6558,13 @@ last-pattern pattern.txt /*last-pattern*
|
||||
last-position-jump eval.txt /*last-position-jump*
|
||||
last_buffer_nr() eval.txt /*last_buffer_nr()*
|
||||
lc_time-variable eval.txt /*lc_time-variable*
|
||||
lcs-conceal options.txt /*lcs-conceal*
|
||||
lcs-eol options.txt /*lcs-eol*
|
||||
lcs-extends options.txt /*lcs-extends*
|
||||
lcs-nbsp options.txt /*lcs-nbsp*
|
||||
lcs-precedes options.txt /*lcs-precedes*
|
||||
lcs-tab options.txt /*lcs-tab*
|
||||
lcs-trail options.txt /*lcs-trail*
|
||||
left-right-motions motion.txt /*left-right-motions*
|
||||
len() eval.txt /*len()*
|
||||
less various.txt /*less*
|
||||
@@ -6564,6 +6616,7 @@ lua if_lua.txt /*lua*
|
||||
lua-buffer if_lua.txt /*lua-buffer*
|
||||
lua-commands if_lua.txt /*lua-commands*
|
||||
lua-dict if_lua.txt /*lua-dict*
|
||||
lua-eval if_lua.txt /*lua-eval*
|
||||
lua-list if_lua.txt /*lua-list*
|
||||
lua-luaeval if_lua.txt /*lua-luaeval*
|
||||
lua-vim if_lua.txt /*lua-vim*
|
||||
@@ -6572,6 +6625,8 @@ lua.vim syntax.txt /*lua.vim*
|
||||
luaeval() eval.txt /*luaeval()*
|
||||
m motion.txt /*m*
|
||||
m' motion.txt /*m'*
|
||||
m< motion.txt /*m<*
|
||||
m> motion.txt /*m>*
|
||||
m[ motion.txt /*m[*
|
||||
m] motion.txt /*m]*
|
||||
m` motion.txt /*m`*
|
||||
@@ -7231,7 +7286,10 @@ pterm-mouse options.txt /*pterm-mouse*
|
||||
pumvisible() eval.txt /*pumvisible()*
|
||||
put change.txt /*put*
|
||||
put-Visual-mode change.txt /*put-Visual-mode*
|
||||
py3eval() eval.txt /*py3eval()*
|
||||
pyeval() eval.txt /*pyeval()*
|
||||
python if_pyth.txt /*python*
|
||||
python-bindeval if_pyth.txt /*python-bindeval*
|
||||
python-buffer if_pyth.txt /*python-buffer*
|
||||
python-buffers if_pyth.txt /*python-buffers*
|
||||
python-command if_pyth.txt /*python-command*
|
||||
@@ -7243,6 +7301,7 @@ python-eval if_pyth.txt /*python-eval*
|
||||
python-examples if_pyth.txt /*python-examples*
|
||||
python-input if_pyth.txt /*python-input*
|
||||
python-output if_pyth.txt /*python-output*
|
||||
python-pyeval if_pyth.txt /*python-pyeval*
|
||||
python-range if_pyth.txt /*python-range*
|
||||
python-vim if_pyth.txt /*python-vim*
|
||||
python-window if_pyth.txt /*python-window*
|
||||
@@ -7482,6 +7541,7 @@ setuid change.txt /*setuid*
|
||||
setwinvar() eval.txt /*setwinvar()*
|
||||
sftp pi_netrw.txt /*sftp*
|
||||
sgml.vim syntax.txt /*sgml.vim*
|
||||
sgr-mouse options.txt /*sgr-mouse*
|
||||
sh-awk syntax.txt /*sh-awk*
|
||||
sh-embed syntax.txt /*sh-embed*
|
||||
sh.vim syntax.txt /*sh.vim*
|
||||
@@ -8268,11 +8328,13 @@ v_d change.txt /*v_d*
|
||||
v_g? change.txt /*v_g?*
|
||||
v_gF editing.txt /*v_gF*
|
||||
v_gJ change.txt /*v_gJ*
|
||||
v_gN visual.txt /*v_gN*
|
||||
v_gV visual.txt /*v_gV*
|
||||
v_g] tagsrch.txt /*v_g]*
|
||||
v_g_CTRL-G editing.txt /*v_g_CTRL-G*
|
||||
v_g_CTRL-] tagsrch.txt /*v_g_CTRL-]*
|
||||
v_gf editing.txt /*v_gf*
|
||||
v_gn visual.txt /*v_gn*
|
||||
v_gq change.txt /*v_gq*
|
||||
v_gv visual.txt /*v_gv*
|
||||
v_gw change.txt /*v_gw*
|
||||
@@ -8435,6 +8497,7 @@ vt100-cursor-keys term.txt /*vt100-cursor-keys*
|
||||
vt100-function-keys term.txt /*vt100-function-keys*
|
||||
w motion.txt /*w*
|
||||
w32-clientserver remote.txt /*w32-clientserver*
|
||||
w32-xpm-support gui_w32.txt /*w32-xpm-support*
|
||||
w:current_syntax syntax.txt /*w:current_syntax*
|
||||
w:quickfix_title quickfix.txt /*w:quickfix_title*
|
||||
w:var eval.txt /*w:var*
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*todo.txt* For Vim version 7.3. Last change: 2012 Jun 01
|
||||
*todo.txt* For Vim version 7.3. Last change: 2012 Sep 21
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -36,94 +36,153 @@ not be repeated below, unless there is extra information.
|
||||
|
||||
Go through more coverity reports.
|
||||
|
||||
Ruby problem, patch in issue 49. (Sep 19)
|
||||
Also in email from Ondruch?
|
||||
|
||||
Discussion about canonicalization of Hebrew. (Ron Aaron, 2011 April 10)
|
||||
|
||||
GTK: problem with 'L' in 'guioptions' changing the window width.
|
||||
(Aaron Cornelius, 2012 Feb 6)
|
||||
|
||||
Patch: home_replace() does not work whtn 8.3 filename. (Yasuhiro
|
||||
Matsumoto, 2012 Apr 18) Asked for another version of the patch.
|
||||
Again May 18. Update May 29 on github. Does not handle multi-byte chars.
|
||||
Checking runtime scripts: Thilo Six, 2012 Jun 6.
|
||||
|
||||
Crash with 1023 byte directory name. (Danek Duvall, 2012 Sep 19)
|
||||
|
||||
Patch for SGR mouse with older xterm. (Hayaki Saito, 2012 Sep 19)
|
||||
|
||||
Patch for crash with an autocommand. (ZyX, 2012 Sep 6, second one)
|
||||
Also patch for garbage, but use vim_strncpy() instead.
|
||||
|
||||
Patch to fix crash on Win32 when setting 'encoding'. (Jiri Sedlak, 2012 Sep
|
||||
12)
|
||||
|
||||
Patch to update example using empty(). (ZyX, 2012 Sep 13)
|
||||
|
||||
Javascript file where indent gets stuck on: GalaxyMaster, 2012 May 3.
|
||||
|
||||
Updated French and Esperanto files. (Dominique Pelle, 2012 Aug 19)
|
||||
|
||||
When showing diffs filler lines may be hidden at first.
|
||||
Patch by Christian Brabandt, 2012 Sep 6.
|
||||
|
||||
Patch for memory leaks on exception. (ZyX, 2012 Sep 9)
|
||||
|
||||
The CompleteDone autocommand needs some info passed to it:
|
||||
- The word that was selected (empty if abandoned complete)
|
||||
- Type of completion: tag, omnifunc, user func.
|
||||
|
||||
mouse_sgr is not ordered alphabetically in :version output.
|
||||
Docs list mouse_urxvt as normal feature, should be big. (Hayaki Saito, 2012
|
||||
Aug 16)
|
||||
|
||||
":gundo" command: global undo. Undoes changes spread over multiple files in
|
||||
the order they were made. Also ":gredo". Both with a count. Useful when
|
||||
tests fail after making changes and you forgot in which files.
|
||||
|
||||
Win32: When a directory name contains an exclamation mark, completion doesn't
|
||||
complete the contents of the directory. No escaping for the "!"? (Jan
|
||||
Stocker, 2012 Jan 5)
|
||||
|
||||
Patch for this request: (Lech Lorens, 2012 May 26)
|
||||
7 Add 'j' flag to 'formatoptions': Remove comment leader when joining lines.
|
||||
Patch for IME handling, adds 'imactivatefunc' and 'imstatusfunc' option.
|
||||
(Yukihiro Nakadaira, 2012 Aug 16)
|
||||
Patch to improve IME handling. (Yasuhiro Matsumoto, 2012 Jul 18)
|
||||
|
||||
Issue 54: document behavior of -complete, also expands arg.
|
||||
|
||||
Cursor on wrong line after ":copen". (John Beckett, 2012 Apr 30)
|
||||
Fix by Christian Brabandt, 2012 May 2. But calling changed_window_setting()
|
||||
would be a simpler solution.
|
||||
Patch for if_lua. (Luis Carvalho, 2012 Aug 26, update Aug 29, another Aug 30,
|
||||
then Sep 1)
|
||||
|
||||
Issue 72: 'autochdir' causes problems for :vimgrep.
|
||||
|
||||
MS-Windows: Crash opening very long file name starting with "\\".
|
||||
(Christian Brock, 2012 Jun 29)
|
||||
|
||||
Win32: patch for current directory, "loading iof conv". (Ken Takata, 2012 Sep
|
||||
15)
|
||||
|
||||
Syntax update problem in one buffer opened in two windows, bottom window is
|
||||
not correctly updated. (Paul Harris, 2012 Feb 27)
|
||||
|
||||
Patch to add assignments in cscope. (Uli Meis, Estabrooks, 2012 Sep 1)
|
||||
Alternate patch by Gary Johnson, Sep 4.
|
||||
|
||||
Patch to add getsid(). (Tyru, 2011 Oct 2) Do we want this? Update Oct 4.
|
||||
Or use expand('<sid>')?
|
||||
|
||||
Win32: When the taskbar is at the top of the screen creating the tabbar causes
|
||||
the window to move unnecessarily. (William E. Skeith III, 2012 Jan 12)
|
||||
Patch: 2012 Jan 13 Needs more work (2012 Feb 2)
|
||||
Patch for :tabcloseleft, after closing a tab go to left tab. (William Bowers,
|
||||
2012 Aug 4)
|
||||
|
||||
ml_get error when using syntastic plugin. (Alex Efros, 2012 May 24)
|
||||
Probably caused by recursive use of :lclose.
|
||||
May also crash Vim (May 25)
|
||||
Patch by Christian Brabandt, May 26. Is this right?
|
||||
Patch for Tab behavior with 'conceal'. (Dominique Pelle, 2012 Mar 18)
|
||||
Patch to test functionality of 'conceal' with tabs. (Simon Ruderich, 2012 Sep
|
||||
5) Update with screencol() and screenrow() functions: Sep 7.
|
||||
|
||||
Crash in autocmd that unloads buffers in a BufUnload event. (Andrew Pimlott,
|
||||
2012 Aug 11) Disallow :new when BufUnload is being handled?
|
||||
|
||||
MS-Windows ACL support doesn't work well. Patch from Ken Takata, 2012 Aug 29.
|
||||
Update Aug 31.
|
||||
|
||||
MS-Windows resizing problems:
|
||||
- Windows window on screen positioning: Patch by Yukihiro Nakadaira, 2012 Jun
|
||||
20. Uses getWindowRect() instead of GetWindowPlacement()
|
||||
- Win32: When the taskbar is at the top of the screen creating the tabbar
|
||||
causes the window to move unnecessarily. (William E. Skeith III, 2012 Jan
|
||||
12) Patch: 2012 Jan 13 Needs more work (2012 Feb 2)
|
||||
|
||||
'iminsert' global value set when using ":setlocal iminsert"? (Wu, 2012 Jun 23)
|
||||
|
||||
Help for b:undo_indent'. (Thilo Six, 2012 May 28)
|
||||
Also question if examples are correct.
|
||||
|
||||
Docs patch for BufRead/BufReadPost. (Gary Johnson, 2012 May 28)
|
||||
The input map for CTRL-O in mswin.vim causes problems after CTRL-X CTRL-O.
|
||||
Suggestion for another map. (Philip Mat, 2012 Jun 18)
|
||||
But use "gi" instead of "a". Or use CTRL-\ CTRL-O.
|
||||
|
||||
Patch to support user name completion on MS-Windows. (Yasuhiro Matsumoto, 2012
|
||||
Aug 16)
|
||||
|
||||
URXVT:
|
||||
- will get stuck if byte sequence does not containe expected semicolon.
|
||||
- Use urxvt mouse support also in xterm. Explanations:
|
||||
http://www.midnight-commander.org/ticket/2662
|
||||
|
||||
Patch for IBM z/OS makefile. (Stephen Bovy, 2012 Apr 26)
|
||||
Patch for configure (Stephen Bovy, 2012 Apr 28)
|
||||
Updates later. Context diff May 7.
|
||||
|
||||
Patch to support browserfilter for GTK. (Christian Brabandt, 2012 May 22)
|
||||
Patch to add tests for if_xcmdsrv.c., Jul 8, need some more work. (Brian Burns)
|
||||
New tests Jul 13. Update Jul 17. Discussion Jul 18.
|
||||
|
||||
When running Vim in silent ex mode, an existing swapfile causes Vim to wait
|
||||
for a user action without a prompt. (Maarten Billemont, 2012 Feb 3)
|
||||
Do give the prompt? Quit with an error?
|
||||
|
||||
Patch for: (Christian Brabandt, 2011 Aug 24, updated patch)
|
||||
8 ":sign unplace * file={filename}" should work. Also: ":sign unplace *
|
||||
buffer={bufnr}". So one can remove all signs for one file/buffer.
|
||||
|
||||
Patch for auto copy selecting to + register. (by Christian Brabant, in email
|
||||
from Sergey Vakulenko, 2012 Apr 27)
|
||||
|
||||
Patch to add "onselected" callback for completion. (Taro Muraoka, 2011 Sep 24)
|
||||
Another for CompleteFuncOk. (Florian Klein, 2012 Jan 31)
|
||||
Name it "CompleteFuncDone".
|
||||
|
||||
Patch for Make_mvc.mak and Make_ming.mak for Ruby support. (Yasuhiro
|
||||
Matsumoto, 2012 Jan 30)
|
||||
|
||||
Patch for 'backupcopy' default behavior for symlinks on Windows. (David Pope,
|
||||
2012 Mar 21, update Mar 31)
|
||||
With fix for memory leak: Ken Takata, 2012 Aug 24
|
||||
|
||||
Patch to list user digraphs. (Christian Brabandt, 2012 Apr 14)
|
||||
|
||||
Patch for input method status. (Hirohito Higashi, 2012 Apr 18)
|
||||
|
||||
Patch to print the result of a :python command. (Maxim Philippov
|
||||
<philippovmi@gmail.com>, 2012 Aug 16) Update Aug 17.
|
||||
|
||||
Problem with winfixheight and resizing. (Yukihiro Nakadaira, 2011 Sep 17)
|
||||
Patch Sep 18.
|
||||
|
||||
Patch for IME problems. Remove hacking code for old IM. (Yukihiro Nakadaira,
|
||||
2012 Jul 20)
|
||||
|
||||
/[^\n] does match at a line break. Expected to do the same as /.
|
||||
|
||||
Patch for has('unnamedplus') docs. (Tony Mechelynck, 2011 Sep 27)
|
||||
And one for gui_x11.txt.
|
||||
|
||||
Patch for Python: add pyeval() and vim.bindeval() (zyx, 2012 Apr 15, update
|
||||
Apr 16) Also changes for Lua. Update Apr 19. Update Apr 22.
|
||||
- Patch for 'breakindent' option: repeat indent for wrapped line. (Vaclav
|
||||
Smilauer, 2004 Sep 13, fix Oct 31, update 2007 May 30)
|
||||
Version for latest MacVim: Tobia Conforto, 2009 Nov 23
|
||||
More recent version: https://retracile.net/wiki/VimBreakIndent
|
||||
Posted to vim-dev by Taylor Hedberg, 2011 Nov 25
|
||||
|
||||
Problem with starting Visual block mode with :norm when 'virtualedit' is set.
|
||||
(David glts, 2012 Jun 5)
|
||||
|
||||
":cd" doesn't work when current directory path contains "**".
|
||||
finddir() has the same problem. (Yukihiro Nakadaira, 2012 Jan 10)
|
||||
@@ -131,8 +190,13 @@ Requires a rewrite of the file_file_in_path code.
|
||||
|
||||
Problem with l: dictionary being locked in a function. (ZyX, 2011 Jul 21)
|
||||
|
||||
Should use has("browsefilter") in ftplugins. Requires patch 7.3.593.
|
||||
|
||||
Issue 48: foldopen error can't be caught by try/catch
|
||||
|
||||
"dg_" deletes including the last character, "d:normal! g_" doesn't.
|
||||
(Nomen Nescio, 2012 Jun 27)
|
||||
|
||||
Patch to sort functions starting with '<' after others. Omit dict functions,
|
||||
they can't be called. (Yasuhiro Matsumoto, 2011 Oct 11)
|
||||
|
||||
@@ -142,6 +206,7 @@ Patch to improve "it" and "at" text object matching. (Christian Brabandt, 2011
|
||||
Nov 20)
|
||||
|
||||
Patch to improve GUI find/replace dialog. (Christian Brabandt, 2012 May 26)
|
||||
Update Jun 2.
|
||||
|
||||
Patch to add ":py3do". (Lilydjwg, 2012 Apr 7)
|
||||
|
||||
@@ -150,9 +215,6 @@ Patch to add ":py3do". (Lilydjwg, 2012 Apr 7)
|
||||
|
||||
Plugin for Modeleasy. (Massimiliano Tripoli, 2011 Nov 29)
|
||||
|
||||
When using remote-silent the -R flag is not passed on. (Axel Bender, 2012 May
|
||||
31)
|
||||
|
||||
Updated syntax file for ssh_config, maintainer doesn't respond.
|
||||
(Leonard Ehrenfried, 2011 Sep 26)
|
||||
|
||||
@@ -169,6 +231,9 @@ Needs more work. Pinged 2012 Jan 4.
|
||||
|
||||
Issue 64: when 'incsearch' is on can't paste LF on command line.
|
||||
|
||||
On MS-Windows a temp dir with a & init causes system() to fail. (Ben Fritz,
|
||||
2012 Jun 19)
|
||||
|
||||
'cursorline' is displayed too short when there are concealed characters and
|
||||
'list' is set. (Dennis Preiser)
|
||||
Patch 7.3.116 was the wrong solution.
|
||||
@@ -266,6 +331,10 @@ Vim using lots of memory when joining lines. (John Little, 2010 Dec 3)
|
||||
|
||||
Changes to manpage plugin. (Elias Toivanen, 2011 Jul 25)
|
||||
|
||||
Patch to make "z=" work when 'spell' is off. Does this have nasty side
|
||||
effects? (Christian Brabandt, 2012 Aug 5)
|
||||
Would also need to do this for spellbadword() and spellsuggest().
|
||||
|
||||
On 64 bit MS-Windows "long" is only 32 bits, but we sometimes need to store a
|
||||
64 bits value. Change all number options to use nropt_T and define it to the
|
||||
right type.
|
||||
@@ -371,7 +440,7 @@ Searching mixed with Visual mode doesn't redraw properly. (James Vega, 2010 Nov
|
||||
|
||||
New esperanto spell file can't be processed. (Dominique Pelle, 2011 Jan 30)
|
||||
- move compflags to separate growarray?
|
||||
- instead of a regexp use a hashtable. Expand '?', '*", '+'. What would be
|
||||
- instead of a regexp use a hashtable. Expand '?', '*', '+'. What would be
|
||||
the maximum repeat for * and +?
|
||||
|
||||
"L'Italie" noted as a spell error at start of the sentence. (Dominique Pelle,
|
||||
@@ -524,7 +593,7 @@ Find tail? Might have a / in argument. Find space? Might have space in
|
||||
path.
|
||||
|
||||
Test 51 fails when language set to German. (Marco, 2011 Jan 9)
|
||||
Dominique can't reproduc it.
|
||||
Dominique can't reproduce it.
|
||||
|
||||
'ambiwidth' should be global-local.
|
||||
|
||||
@@ -579,9 +648,6 @@ When a:base in 'completefunc' starts with a number it's passed as a number,
|
||||
not a string. (Sean Ma) Need to add flag to call_func_retlist() to force a
|
||||
string value.
|
||||
|
||||
":e ~br<Tab>" does not complete to ":e /home/bram/". Would need to use
|
||||
getpwent() to find all the matches.
|
||||
|
||||
Invalid read error in Farsi mode. (Dominique Pelle, 2009 Aug 2)
|
||||
|
||||
For running gvim on an USB stick: avoid the OLE registration. Use a command
|
||||
@@ -709,10 +775,6 @@ Support a 'systemencoding' option (for Unix). It specifies the encoding of
|
||||
file names. (Kikuchan, 2010 Oct 5). Useful on a latin1 or double-byte Asian
|
||||
system when 'encoding' is "utf-8".
|
||||
|
||||
Win32: A --remote command that has a directory name starting with a ( doesn't
|
||||
work, the backslash is removed, assuming that it escapes the (. (Valery
|
||||
Kondakoff, 2009 May 13)
|
||||
|
||||
Win32 GUI: Changing manifest helps for dpi changes (Joe Castro, 2009 Mar 27)
|
||||
|
||||
Win32 GUI: last message from startup doesn't show up when there is an echoerr
|
||||
@@ -898,6 +960,15 @@ escaping characters where the backslash is not removed later. Asked Chris for
|
||||
an alternate solution, also for src/ex_getln.c.
|
||||
This also fails when the file or directory name contains "%". (Thoml, 2008
|
||||
July 7)
|
||||
Using --remote-silent while the current directory has a # in the name does not
|
||||
work, the # needs to be escaped. (Tramblay Bruno, 2012 Sep 15)
|
||||
|
||||
When using remote-silent the -R flag is not passed on. (Axel Bender, 2012 May
|
||||
31)
|
||||
|
||||
Win32: A --remote command that has a directory name starting with a ( doesn't
|
||||
work, the backslash is removed, assuming that it escapes the (. (Valery
|
||||
Kondakoff, 2009 May 13)
|
||||
|
||||
Problem with 'langmap' being used on the rhs of a mapping. (Nikolai Weibull,
|
||||
2008 May 14)
|
||||
@@ -1625,11 +1696,6 @@ Awaiting updated patches:
|
||||
7 Completion of network shares, patch by Yasuhiro Matsumoto.
|
||||
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, update 2007 May 30)
|
||||
Version for latest MacVim: Tobia Conforto, 2009 Nov 23
|
||||
More recent version: https://retracile.net/wiki/VimBreakIndent
|
||||
Posted to vim-dev by Taylor Hedberg, 2011 Nov 25
|
||||
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
|
||||
@@ -2647,8 +2713,6 @@ Tab pages:
|
||||
font, etc.)
|
||||
8 Make GUI menu in tab pages line configurable. Like the popup menu.
|
||||
8 balloons for the tab page labels that are shortened to show the full path.
|
||||
8 :tabmove +N move tab page N pages forward
|
||||
8 :tabmove -N move tab page N pages backward
|
||||
7 :tabdup duplicate the tab with all its windows.
|
||||
7 Option to put tab line at the left or right? Need an option to specify
|
||||
its width. It's like a separate window with ":tabs" output.
|
||||
@@ -2950,6 +3014,8 @@ Syntax highlighting:
|
||||
this isn't reset. Add a special keyword definition for the syntax rules?
|
||||
When this is done, use vim.vim syntax highlighting for help file examples,
|
||||
but without ":" in 'iskeyword' for syntax.
|
||||
Also need a separate 'iskeyword' for the command line, e.g., in a help
|
||||
window ":e /asdf/asdf/" CTRL-W works different.
|
||||
8 Add specific syntax item to match with parens/braces that don't have a
|
||||
"%" match. :syntax nomatch cMatchError (,{,[,),},] [contained]
|
||||
8 Highlight the text between two matching parens (e.g., with a grey
|
||||
@@ -4906,6 +4972,7 @@ Various improvements:
|
||||
- Make it possible for the 'showbreak' to be displayed at the end of the
|
||||
line. Use a comma to separate the part at the end and the start of the
|
||||
line? Highlight the linebreak characters, add flag in 'highlight'.
|
||||
Make 'showbreak' local to a window.
|
||||
- Some string options should be expanded if they have wildcards, e.g.
|
||||
'dictionary' when it is "*.h".
|
||||
- Use a specific type for number and boolean options, making it possible to
|
||||
|
||||
@@ -1681,7 +1681,7 @@ in your plugin file!
|
||||
HEADER
|
||||
|
||||
You will probably add new corrections to the plugin and soon have several
|
||||
versions laying around. And when distributing this file, people will want to
|
||||
versions lying around. And when distributing this file, people will want to
|
||||
know who wrote this wonderful plugin and where they can send remarks.
|
||||
Therefore, put a header at the top of your plugin: >
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*various.txt* For Vim version 7.3. Last change: 2012 Jan 15
|
||||
*various.txt* For Vim version 7.3. Last change: 2012 Aug 03
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -355,6 +355,7 @@ 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|
|
||||
B *+mouse_sgr* Unix only: sgr mouse handling |sgr-mouse|
|
||||
N *+mouse_urxvt* Unix only: urxvt mouse handling |urxvt-mouse|
|
||||
N *+mouse_xterm* Unix only: xterm mouse handling |xterm-mouse|
|
||||
B *+multi_byte* 16 and 32 bit characters |multibyte|
|
||||
@@ -415,7 +416,7 @@ S *+windows* more than one window
|
||||
m *+writebackup* |'writebackup'| is default on
|
||||
m *+xim* X input method |xim|
|
||||
*+xfontset* X fontset support |xfontset|
|
||||
m *+xpm_w32* Win32 GUI only: pixmap support |:sign-define|
|
||||
m *+xpm_w32* Win32 GUI only: pixmap support |w32-xpm-support|
|
||||
*+xsmp* XSMP (X session management) support
|
||||
*+xsmp_interact* interactive XSMP (X session management) support
|
||||
N *+xterm_clipboard* Unix only: xterm clipboard handling
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*version5.txt* For Vim version 7.3. Last change: 2008 Dec 17
|
||||
*version5.txt* For Vim version 7.3. Last change: 2012 Aug 08
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -6,7 +6,7 @@
|
||||
Welcome to Vim Version 5.0!
|
||||
|
||||
This document lists the differences between Vim 4.x and Vim 5.0.
|
||||
Although 5.0 is mentioned here, this is also for version 5.1, 5.2, etc..
|
||||
Although 5.0 is mentioned here, this is also for version 5.1, 5.2, etc.
|
||||
See |vi_diff.txt| for an overview of differences between Vi and Vim 5.0.
|
||||
See |version4.txt| for differences between Vim 3.0 and Vim 4.0.
|
||||
|
||||
@@ -3888,7 +3888,7 @@ character is typed. Helps to close a /* */ comment in C. (Webb)
|
||||
When expand() has a second argument which is non-zero, don't use 'suffixes'
|
||||
and 'wildignore', return all matches.
|
||||
|
||||
'O' flag in 'cpoptions: When not included, Vim will not overwrite a file, if
|
||||
'O' flag in 'cpoptions' When not included, Vim will not overwrite a file, if
|
||||
it didn't exist when editing started but it does exist when the buffer is
|
||||
written to the file. The file must have been created outside of Vim, possibly
|
||||
without the user knowing it. When this is detected after a shell command,
|
||||
@@ -4499,7 +4499,7 @@ Could not get all windows back when using a smaller terminal screen. Didn't
|
||||
restore all windows when "winsize" was not in 'sessionoptions'. (Webb)
|
||||
|
||||
Command line completion for ":buffer" depended on 'ignorecase' for Unix, but
|
||||
not for DOS et al.. Now don't use 'ignorecase', but let it depend on whether
|
||||
not for DOS et al. Now don't use 'ignorecase', but let it depend on whether
|
||||
file names are case sensitive or not (like when expanding file names).
|
||||
|
||||
Win32 GUI: (Negri)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*version7.txt* For Vim version 7.3. Last change: 2010 Nov 03
|
||||
*version7.txt* For Vim version 7.3. Last change: 2012 Aug 08
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -3587,7 +3587,7 @@ Files: src/eval.c, src/getchar.c, src/globals.h, src/main.c
|
||||
|
||||
Patch 7.0.085
|
||||
Problem: When doing "make test" the viminfo file is modified.
|
||||
Solution: Use another viminfo file after setting 'compatible.
|
||||
Solution: Use another viminfo file after setting 'compatible'.
|
||||
Files: src/testdir/test56.in
|
||||
|
||||
Patch 7.0.086
|
||||
@@ -7314,8 +7314,6 @@ Command line completion for :lmap and :lunmap.
|
||||
|
||||
Support syntax and filetype completion for user commands. (Christian Brabandt)
|
||||
|
||||
Add completion for ":ownsyntax" and improve completion for ":filetype".
|
||||
|
||||
Avoid use of the GTK main_loop() so that the GtkFileChooser can be used.
|
||||
(James Vega)
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
*vi_diff.txt* For Vim version 7.3. Last change: 2011 Aug 29
|
||||
*vi_diff.txt* For Vim version 7.3. Last change: 2012 Aug 08
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -192,7 +192,7 @@ Syntax highlighting. |:syntax|
|
||||
|
||||
Spell checking. |spell|
|
||||
When the 'spell' option is set Vim will highlight spelling mistakes.
|
||||
About 40 languages are currently supported, selected with the
|
||||
About 50 languages are currently supported, selected with the
|
||||
'spelllang' option. In source code only comments and strings are
|
||||
checked for spelling.
|
||||
|
||||
@@ -653,7 +653,7 @@ You can backspace, CTRL-U and CTRL-W over line breaks if the 'backspace' (bs)
|
||||
option includes "eol". You can backspace over the start of insert if the
|
||||
'backspace' option includes "start".
|
||||
|
||||
When the 'paste' option is set, a few option are reset and mapping in insert
|
||||
When the 'paste' option is set, a few options are reset and mapping in insert
|
||||
mode and abbreviation are disabled. This allows for pasting text in windowing
|
||||
systems without unexpected results. When the 'paste' option is reset, the old
|
||||
option values are restored.
|
||||
|
||||
478
runtime/doc/vim-de.1
Normal file
478
runtime/doc/vim-de.1
Normal file
@@ -0,0 +1,478 @@
|
||||
.\"*******************************************************************
|
||||
.\"
|
||||
.\" This file was generated with po4a. Translate the source file.
|
||||
.\"
|
||||
.\"*******************************************************************
|
||||
.\" Translated by bw1 (2008) and Florian Rehnisch <fm-r@gmx.de> (2012)
|
||||
.\" Kudos to the folks on vim-dev and debian-l10n-german
|
||||
.TH VIM 1 "2006 Apr 11"
|
||||
.SH BEZEICHNUNG
|
||||
vim \- Vi IMproved, ein Text\-Editor f<>r Programmierer
|
||||
.SH <EFBFBD>BERSICHT
|
||||
.br
|
||||
\fBvim\fP [Optionen] [Datei ...]
|
||||
.br
|
||||
\fBvim\fP [Optionen] \-
|
||||
.br
|
||||
\fBvim\fP [Optionen] \-t Tag
|
||||
.br
|
||||
\fBvim\fP [Optionen] \-q [Fehlerdatei]
|
||||
.PP
|
||||
.br
|
||||
\fBex\fP
|
||||
.br
|
||||
\fBview\fP
|
||||
.br
|
||||
\fBgvim\fP \fBgview\fP \fBevim\fP \fBeview\fP
|
||||
.br
|
||||
\fBrvim\fP \fBrview\fP \fBrgvim\fP \fBrgview\fP
|
||||
.SH BESCHREIBUNG
|
||||
\fBVim\fP ist ein Text\-Editor, der aufw<66>rtskompatibel zu Vi ist. Er kann
|
||||
verwendet werden, um alle Arten von Klartext zu bearbeiten. Er ist besonders
|
||||
n<EFBFBD>tzlich, um Programme zu bearbeiten.
|
||||
.PP
|
||||
Vim hat einige Erweiterungen gegen<65>ber Vi, z.B.: R<>ckg<6B>ngigmachen in
|
||||
mehreren Schritten, mehrere Fenster und Puffer, Syntax\-Hervorhebung,
|
||||
Bearbeiten der Befehlszeile, Dateinamenerg<72>nzung, eingebaute Hilfe, visuelle
|
||||
Auswahl, usw. ... Siehe <20>:help vi_diff.txt<78> f<>r eine <20>bersicht der
|
||||
Unterschiede zwischen \fBVim\fP und Vi.
|
||||
.PP
|
||||
Im laufenden \fBVim\fP kann mit dem Befehl <20>:help<6C> viel Hilfe durch das
|
||||
eingebaute Hilfesystem erlangt werden. Siehe den Abschnitt EINGEBAUTE HILFE
|
||||
weiter unten.
|
||||
.PP
|
||||
Meistens wird \fBVim\fP zum Editieren einer einzigen Datei mit dem folgende
|
||||
Befehl gestartet:
|
||||
.PP
|
||||
vim Datei
|
||||
.PP
|
||||
Allgemeiner betrachtet, wird \fBVim\fP folgenderma<6D>en gestartet:
|
||||
.PP
|
||||
vim [Optionen] [Dateiliste]
|
||||
.PP
|
||||
Bei einer fehlenden Dateiliste startet der Editor mit einem leeren
|
||||
Puffer. Andernfalls werden nach den folgenden vier M<>glichkeiten eine oder
|
||||
mehrere Dateien bearbeitet:
|
||||
.TP 12
|
||||
Datei ...
|
||||
Eine Liste von Dateinamen. Die erste Datei wird in den Puffer geladen und
|
||||
zur aktuellen. Der Cursor wird auf der ersten Zeile des Puffers
|
||||
platziert. Zu den anderen Dateien kann mit dem Befehl <20>:next<78> gelangt
|
||||
werden. Falls einer der Dateinamen mit einem Bindestrich beginnt, stellen
|
||||
Sie der Dateiliste <20>\-\-<EFBFBD> voran.
|
||||
.TP
|
||||
\-
|
||||
Die zu bearbeitende Datei wird von der Standardeingabe gelesen. Befehle
|
||||
werden von der Standardfehlerausgabe gelesen, die ein Text\-Terminal sein
|
||||
sollte.
|
||||
.TP
|
||||
\-t {Tag}
|
||||
Die zu editierende Datei und die anf<6E>ngliche Cursor\-Position h<>ngen von
|
||||
einem <20>Tag<61> ab, einer Art Sprungmarke. {Tag} wird in der Tag\-Datei
|
||||
nachgeschlagen, die zugeh<65>rige Datei wird zur aktuellen und der zugeh<65>rige
|
||||
Befehl wird ausgef<65>hrt. Dies wird meistens f<>r Programme in der Sprache <20>C<EFBFBD>
|
||||
benutzt, wobei {Tag} ein Funktionsname sein k<>nnte. Die Wirkung dieses
|
||||
Befehls ist, dass die Datei, die die Funktion enth<74>lt, als aktuelle im
|
||||
Editor ge<67>ffnet und angezeigt wird und der Cursor auf dem Beginn der
|
||||
Funktion positioniert wird. Siehe <20>:help tag\-commands<EFBFBD>.
|
||||
.TP
|
||||
\-q [Fehlerdatei]
|
||||
Startet im QuickFix\-Modus. Die Datei [Fehlerdatei] wird gelesen und der
|
||||
erste Fehler wird angezeigt. Falls [Fehlerdatei] ausgelassen wird, wird der
|
||||
Dateiname aus der Option 'errorfile' verwendet (bei AmigaOS ist dies
|
||||
vorgabem<EFBFBD><EFBFBD>ig <20>AztecC.Err<72>, sowie "errors.err<72> bei anderen). Weitere Fehler
|
||||
k<EFBFBD>nnen mit dem <20>:cn<63>\-Befehl angesprungen werden. Siehe ":help quickfix<69>.
|
||||
.PP
|
||||
\fBVim\fP reagiert unterschiedlich auf den Namen, der verwendet wird, um Vim zu
|
||||
starten (die ausf<73>hrbare Datei kann dieselbe sein).
|
||||
.TP 10
|
||||
vim
|
||||
der <20>normale<6C> Weg, alles ist standardm<64><6D>ig
|
||||
.TP
|
||||
ex
|
||||
Startet im Ex\-Modus. Mit dem Befehl <20>:vi<76> gelangt man in den normalen
|
||||
Modus. Funktioniert auch mit dem Argument <20>\-e<EFBFBD>.
|
||||
.TP
|
||||
view
|
||||
Startet im Nur\-Lesen\-Modus. Die Datei wird vor dem <20>berschreiben
|
||||
gesch<EFBFBD>tzt. Dasselbe wird mit dem Parameter <20>\-R<EFBFBD> erreicht.
|
||||
.TP
|
||||
gvim gview
|
||||
Die grafische Version: <20>ffnet ein neues Fenster. Dasselbe wird mit dem
|
||||
Parameter <20>\-g<EFBFBD> erreicht.
|
||||
.TP
|
||||
evim eview
|
||||
Die grafische Version im einfachen Modus: <20>ffnet ein neues Fenster. Dasselbe
|
||||
wird mit dem Parameter <20>\-y<EFBFBD> erreicht.
|
||||
.TP
|
||||
rvim rview rgvim rgview
|
||||
Wie die obigen, aber mit Beschr<68>nkungen: Es ist nicht m<>glich, Shell\-Befehle
|
||||
aufzurufen oder mit Unterbrechung in eine Shell zur<75>ckzuspringen. Dasselbe
|
||||
wird mit dem Parameter <20>\-Z<EFBFBD> erreicht.
|
||||
.SH OPTIONEN
|
||||
Die Optionen k<>nnen in beliebiger Reihenfolge vor oder nach den Dateinamen
|
||||
angegeben werden. Optionen ohne Parameter k<>nnen hinter einem einzigen
|
||||
Bindestrich gruppiert werden.
|
||||
.TP 12
|
||||
+[Nummer]
|
||||
In der ersten Datei wird der Cursor auf die Zeile [Nummer] gesetzt. Falls
|
||||
[Nummer] nicht angegeben wird, wird der Cursor in die letzte Zeile der Datei
|
||||
gesetzt.
|
||||
.TP
|
||||
+/{Suchmuster}
|
||||
In der ersten Datei wird der Cursor auf das erste Auftreten von {Suchmuster}
|
||||
gesetzt. Siehe <20>:help search\-pattern<EFBFBD>.
|
||||
.TP
|
||||
+{Befehl}
|
||||
.TP
|
||||
\-c {Befehl}
|
||||
{Befehl} wird nach dem Lesen der ersten Datei ausgef<65>hrt. Als {Befehl} wird
|
||||
ein Ex\-Befehl erwartet. Sind in {Befehl} Leerzeichen vorhanden, muss alles
|
||||
in Anf<6E>hrungszeichen gesetzt werden (h<>ngt von der verwendeten Shell
|
||||
ab). Beispiel: vim "+set si" main.c
|
||||
.br
|
||||
Anmerkung: Sie k<>nnen bis zu 10 <20>+<2B>\- oder "\-c<EFBFBD>\-Befehle verwenden.
|
||||
.TP
|
||||
\-S {Datei}
|
||||
{Datei} wird nach dem Lesen der ersten Datei ausgef<65>hrt. Dies entspricht <20>\-c
|
||||
"source {Datei}"<22>. {Datei} darf nicht mit einem Bindestrich (\-)
|
||||
anfangen. Wenn kein Dateiname angegeben wird, wird <20>Session.vim<69> verwendet
|
||||
(Funktioniert nur, wenn <20>\-S<EFBFBD> als letzter Parameter steht).
|
||||
.TP
|
||||
\-\-cmd {Befehl}
|
||||
Wie <20>\-c<EFBFBD>, aber dieser Befehl wird vor allen VimRC\-Dateien ausgef<65>hrt. Sie
|
||||
k<EFBFBD>nnen unabh<62>ngig von den <20>\-c<EFBFBD>\-Befehlen bis zu 10 dieser Befehle verwenden.
|
||||
.TP
|
||||
\-A
|
||||
Falls \fBVim\fP mit Unterst<73>tzung f<>r das Schreiben von rechts nach links und
|
||||
arabischer Tastaturbelegung compiliert wurde (ARABIC), startet dieser
|
||||
Parameter den Modus f<>rs Arabische (:set arabic). Anderenfalls beendet sich
|
||||
\fBVim\fP mit einer Fehlermeldung.
|
||||
.TP
|
||||
b
|
||||
Bin<EFBFBD>rer Modus: Es werden einige Variablen gesetzt, sodass es m<>glich ist,
|
||||
eine bin<69>re oder ausf<73>hrbare Datei zu bearbeiten.
|
||||
.TP
|
||||
\-C
|
||||
Kompatibel: Setzt die Option 'compatible'. Das macht \fBVim\fP im Verhalten
|
||||
sehr <20>hnlich zu Vi, selbst wenn eine VimRC\-Datei existiert.
|
||||
.TP
|
||||
\-d
|
||||
Startet im diff\-Modus. Es sollten zwei, drei oder vier Dateinamen als
|
||||
Parameter <20>bergeben werden. \fBVim\fP <20>ffnet sie alle und zeigt die
|
||||
Unterschiede an. Arbeitet wie vimdiff(1).
|
||||
.TP
|
||||
\-d {Ger<65>t}
|
||||
<EFBFBD>ffnet das {Ger<65>t}, um es als Terminal zu nutzen. Nur f<>r AmigaOS. Beispiel:
|
||||
"\-d con:20/30/600/150".
|
||||
.TP
|
||||
D
|
||||
Debug\-Modus: \fBVim\fP geht in den Debug\-Modus, wenn der erste Befehl in einem
|
||||
Skript ausgef<65>hrt wird.
|
||||
.TP
|
||||
\-e
|
||||
Startet \fBVim\fP im Ex\-Modus, als w<>rde als ausf<73>hrbare Datei <20>ex<65> aufgerufen.
|
||||
.TP
|
||||
\-E
|
||||
Startet \fBVim\fP im erweiterten Ex\-Modus, als w<>rde die ausf<73>hrbare Datei als
|
||||
<EFBFBD>exim<EFBFBD> aufgerufen.
|
||||
.TP
|
||||
\-f
|
||||
Vordergrund: Bei der GUI\-Version erzeugt \fBVim\fP keinen neuen Prozess und
|
||||
l<EFBFBD>st sich nicht von der Shell, in der er aufgerufen wurde. Bei AmigaOS wird
|
||||
kein neues Fenster ge<67>ffnet. Dieser Parameter wird benutzt, damit das
|
||||
aufrufende Programm auf das Beenden des Bearbeitungssitzung wartet (z.B.:
|
||||
mail). Bei AmigaOS funktionieren die Befehle <20>:sh<73> und ":!<21> nicht.
|
||||
.TP
|
||||
\-\-nofork
|
||||
Vordergrund: Bei der GUI\-Version erzeugt \fBVim\fP keinen neuen Prozess und
|
||||
l<EFBFBD>st sich nicht von der Shell, in der er aufgerufen wurde.
|
||||
.TP
|
||||
\-F
|
||||
Wenn \fBVim\fP mit FKMAP\-Unterst<EFBFBD>tzung f<>r das Schreiben von rechts nach links
|
||||
und Farsi\-Tastatur\-Belegung kompiliert wurde, startet Vim im Farsi\-Modus,
|
||||
d.h. die Optionen 'fkmap' und 'rightleft' werden gesetzt. Andernfalls bricht
|
||||
\fBVim\fP mit einer Fehlermeldung ab.
|
||||
.TP
|
||||
\-g
|
||||
Falls \fBVim\fP mit GUI\-Unterst<EFBFBD>tzung kompiliert wurde, wird die GUI
|
||||
aktiviert. Falls keine GUI\-Unterst<EFBFBD>tzung einkompiliert wurde, wird mit einer
|
||||
Fehlermeldung abgebrochen.
|
||||
.TP
|
||||
\-h
|
||||
Gibt eine kleine Hilfe f<>r die Befehlszeilenparameter aus. Danach beendet
|
||||
sich \fBVim.\fP
|
||||
.TP
|
||||
\-H
|
||||
Hebr<EFBFBD>isch\-Modus, falls \fBVim\fP mit RIGHTLEFT\-Unterst<EFBFBD>tzung f<>r das Schreiben
|
||||
von rechts nach links und hebr<62>ischer Tastaturbelegung kompiliert wurde,
|
||||
werden die Optionen 'hkmap' und 'rightleft' gesetzt. Andernfalls beendet
|
||||
sich \fBVim\fP mit einer Fehlermeldung.
|
||||
.TP
|
||||
\-i {VimInfo}
|
||||
Wenn eine VimInfo\-Datei verwendet wird: Verwendet statt <20>~/.viminfo<66> die
|
||||
angegebene Datei. Es ist auch m<>glich die Verwendung einer VimInfo\-Datei
|
||||
durch Angabe des Dateinamen <20>NONE<4E> zu verhindern,
|
||||
.TP
|
||||
\-L
|
||||
dasselbe wie <20>\-r<EFBFBD>
|
||||
.TP
|
||||
\-l
|
||||
Lisp\-Modus. Aktiviert die Optionen 'lisp' und 'showmatch'.
|
||||
.TP
|
||||
\-m
|
||||
Deaktiviert das Ver<65>ndern von Dateien, indem die Option 'write' gel<65>scht
|
||||
wird. Der Puffer kann ver<65>ndert werden, nur das Schreiben einer Datei ist
|
||||
nicht m<>glich.
|
||||
.TP
|
||||
\-M
|
||||
Keine Ver<65>nderungen erlaubt: Die Optionen 'modifiable' und 'write' werden
|
||||
gel<EFBFBD>scht, so dass <20>nderungen nicht erlaubt sind und Dateien nicht
|
||||
geschrieben werden k<>nnen. Man beachte, dass diese Optionen ('modifiable',
|
||||
\&'write') dennnoch nachtr<74>glich zum Erlauben von <20>nderungen gesetzt werden
|
||||
k<EFBFBD>nnen.
|
||||
.TP
|
||||
\-N
|
||||
Nicht\-kompatibler Modus: L<>scht die Option 'compatible'. Dies veranlasst
|
||||
\fBVim\fP, sich ein wenig besser, aber weniger Vi\-kompatibel zu verhalten,
|
||||
selbst wenn es keine VimRC\-Datei gibt.
|
||||
.TP
|
||||
\-n
|
||||
Verwendet keine Auslagerungsdatei: Eine Wiederherstellung nach einem Absturz
|
||||
ist nicht m<>glich. Auf einem langsamen Medium (Diskette) kann diese
|
||||
Einstellung n<>tzlich sein. Kann auch mit <20>set uc=0<> erreicht werden; kann
|
||||
mit <20>set uc=200<30> aufgehoben werden.
|
||||
.TP
|
||||
\-nb
|
||||
\fBVim\fP fungiert als Server f<>r NetBeans. Details siehe Dokumentation.
|
||||
.TP
|
||||
\-o[N]
|
||||
<EFBFBD>ffnet [N] Fenster <20>bereinander. Wenn keine Zahl angegeben wird, <20>ffne ein
|
||||
Fenster pro Datei.
|
||||
.TP
|
||||
\-O[N]
|
||||
<EFBFBD>ffnet [N] Fenster nebeneinander. Wenn keine Zahl angegeben wird, <20>ffne ein
|
||||
Fenster pro Datei.
|
||||
.TP
|
||||
\-p[N]
|
||||
<EFBFBD>ffnet [N] Reiterseiten. Wenn keine Zahl angegeben wird, <20>ffne eine
|
||||
Reiterseite pro Datei.
|
||||
.TP
|
||||
\-R
|
||||
Nur\-Lesen\-Modus: Die Option 'readonly' wird gesetzt. Der Puffer kann noch
|
||||
bearbeitet werden, aber es wird verhindert, eine Datei aus Versehen zu
|
||||
<EFBFBD>berschreiben. Wenn Sie wirklich eine Datei <20>berschreiben wollen, f<>gen Sie
|
||||
dem Ex\-Befehl ein Ausrufezeichen hinzu (wie in <20>:w!<21>). Die Option "\-R<EFBFBD>
|
||||
bedingt die Option <20>\-n<EFBFBD> (siehe oben). Die Option 'readonly' kann durch ":set
|
||||
noro<EFBFBD> gel<65>scht werden. Siehe <20>:help 'readonly'<27>.
|
||||
.TP
|
||||
\-r
|
||||
Listet die Auslagerungsdateien und gibt Informationen zu ihrer
|
||||
Verwendbarkeit zur Wiederherstellung.
|
||||
.TP
|
||||
\-r {Datei}
|
||||
Wiederherstellungsmodus: Die Auslagerungsdatei wird zur Wiederherstellung
|
||||
verwendet und hat denselben Dateinamen wie die Text\-Datei + <20>.swp<77>. Siehe
|
||||
":help recovery<72>.
|
||||
.TP
|
||||
\-s
|
||||
Der stille Modus: Nur wenn die ausf<73>hrbare Datei als <20>ex<65> aufgerufen wird
|
||||
oder vor <20>\-s<EFBFBD> die Option "\-e<EFBFBD> gegeben wird.
|
||||
.TP
|
||||
\-s {Eingabeskript}
|
||||
Die Datei {Eingabeskript} wird gelesen und ausgef<65>hrt, als w<>rden Sie die
|
||||
Zeichen in ihr tippen. Dasselbe kann mit dem Befehl <20>:source!
|
||||
{Eingabeskript}<7D> erreicht werden. Wird das Ende der Datei vor dem Beenden
|
||||
des Editors erreicht, werden weitere Zeichen von der Tastatur gelesen.
|
||||
.TP
|
||||
\-T {Terminal}
|
||||
Setzt den Namen des benutzten Terminals. Nur erforderlich, wenn die
|
||||
Automatik nicht funktioniert. Sollte ein \fBVim\fP bekanntes Terminal sein:
|
||||
(builtin) oder in einer termcap\- oder terminfo\-Datei definiert.
|
||||
.TP
|
||||
\-u {VimRC}
|
||||
Verwendet zur Initialisierung die Befehle in der Datei {VimRC}. Alle anderen
|
||||
Initialisierungen werden <20>bersprungen. Benutzen Sie dies, um eine besondere
|
||||
Art von Dateien zu bearbeiten. Dies kann auch benutzt werden, um alle
|
||||
Initialisierungen zu <20>berspringen, indem der Name <20>NONE<4E> angegeben wird. F<>r
|
||||
weitere Einzelheiten siehe <20>:help initialisation<6F> innerhalb von Vim.
|
||||
.TP
|
||||
\-U {GvimRC}
|
||||
Benutzt die Befehle in der Datei {GvimRC} f<>r die Initialisierung der
|
||||
grafischen Oberfl<66>che. Alle anderen Initialisierungen werden
|
||||
<EFBFBD>bersprungen. Dies kann ebenfalls benutzt werden, um alle
|
||||
GUI\-Initialisierungen zu <20>berspringen, indem der Name <20>NONE<4E> angegeben
|
||||
wird. Siehe <20>:help gui\-init<EFBFBD> innerhalb von Vim f<>r weitere Einzelheiten.
|
||||
.TP
|
||||
\-V[N]
|
||||
Ausf<EFBFBD>hrlich (verbose): Gibt Meldungen dar<61>ber, welche Befehlsdateien
|
||||
eingelesen werden, und <20>ber das Lesen und Schreiben einer VimInfo\-Datei. Die
|
||||
optionale Zahl N ist der Wert f<>r 'verbose'. Vorgabe ist 10.
|
||||
.TP
|
||||
\-v
|
||||
Startet \fBVim\fP im Vi\-Modus, so als w<>rde die ausf<73>hrbare Datei mit <20>vi<76>
|
||||
aufgerufen. Dies wirkt sich nur aus, wenn die ausf<73>hrbare Datei als <20>ex<65>
|
||||
aufgerufen wird.
|
||||
.TP
|
||||
\-w {Ausgabeskript}
|
||||
Alle Zeichen, die eingetippt werden, werden in der Datei {Ausgabeskript}
|
||||
aufgezeichnet, solange bis Sie \fBVim\fP beenden. Dies ist n<>tzlich, falls Sie
|
||||
eine Skript\-Datei zum Benutzen mit <20>vim \-s<EFBFBD> oder ":source!<21> erzeugen
|
||||
wollen. Falls die Datei {Ausgabeskript} vorhanden ist, werden die Zeichen
|
||||
angeh<EFBFBD>ngt.
|
||||
.TP
|
||||
\-W {Ausgabeskript}
|
||||
Wie \-w, aber eine bereits vorhandene Datei wird <20>berschrieben.
|
||||
.TP
|
||||
\-x
|
||||
Benutzt beim Schreiben von Dateien eine Verschl<68>sselung. Fragt nach dem
|
||||
Schl<EFBFBD>ssel.
|
||||
.TP
|
||||
\-X
|
||||
F<EFBFBD>hrt keine Verbindung zum X\-Server durch. Dadurch verk<72>rzt sich die
|
||||
Startzeit, aber der Fenstertitel und die Zwischenablage werden nicht
|
||||
verwendet.
|
||||
.TP
|
||||
\-y
|
||||
Startet \fBVim\fP im einfachen Modus, als w<>rde die ausf<73>hrbare Datei mit
|
||||
<EFBFBD>evim<EFBFBD> oder <20>eview<65> aufgerufen. \fBVim\fP verh<72>lt sich dann wie ein Editor zum
|
||||
Klicken und Tippen.
|
||||
.TP
|
||||
\-Z
|
||||
Eingeschr<EFBFBD>nkter Modus: Funktioniert, als w<>rde der Name der ausf<73>hrbaren
|
||||
Datei mit <20>r<EFBFBD> beginnen.
|
||||
.TP
|
||||
\-\-
|
||||
Markiert das Ende der Optionen. Argumente, die folgen, werden als Dateinamen
|
||||
behandelt. Dies kann benutzt werden, um einen Dateinamen mit <20>\-<EFBFBD> am Anfang
|
||||
zu verwenden.
|
||||
.TP
|
||||
\-\-echo\-wid
|
||||
Nur GTK\-GUI: Schreibe die Fenster\-ID auf die Standardausgabe.
|
||||
.TP
|
||||
\-\-help
|
||||
Gibt eine Hilfe\-Nachricht aus und beendet, wie <20>\-h<EFBFBD>.
|
||||
.TP
|
||||
\-\-literal
|
||||
Nimmt die Dateinamen so wie sie sind und vervollst<73>ndigt sie nicht nach
|
||||
Metazeichen (*,?). Dies wirkt sich nicht unter Unix aus, wo die Shell die
|
||||
Metazeichen expandiert.
|
||||
.TP
|
||||
\-\-noplugin
|
||||
Lade keine Plugins. Impliziert durch <20>\-u NONE<4E>.
|
||||
.TP
|
||||
\-\-remote
|
||||
Verbindet mit einem Vim\-Server und l<>sst ihn die in den restlichen
|
||||
Argumenten angegeben Dateien editieren. Wenn kein Server gefunden wird,
|
||||
f<EFBFBD>hrt dies zu einer Warnmeldung und die Dateien werden im gegenw<6E>rtigen Vim
|
||||
zum Bearbeiten ge<67>ffnet.
|
||||
.TP
|
||||
\-\-remote\-expr {Ausdruck}
|
||||
Verbindet mit einem Vim\-Server, f<>hrt {Ausdruck} aus und zeigt das Ergebnis
|
||||
auf der Standardausgabe an.
|
||||
.TP
|
||||
\-\-remote\-send {Zeichen}
|
||||
Verbindet mit einem Vim\-Server und sendet ihm {Zeichen}.
|
||||
.TP
|
||||
\-\-remote\-silent
|
||||
Wie <20>\-\-remote<EFBFBD>, aber ohne Warnung, wenn kein Server gefunden wird.
|
||||
.TP
|
||||
\-\-remote\-wait
|
||||
Wie <20>\-\-remote<EFBFBD>, aber Vim beendet sich nicht, bis die Dateien bearbeitet
|
||||
wurden.
|
||||
.TP
|
||||
\-\-remote\-wait\-silent
|
||||
Wie <20>\-\-remote\-wait<EFBFBD>, aber ohne Warnung, wenn kein Server gefunden wird.
|
||||
.TP
|
||||
\-\-serverlist
|
||||
Listet die Namen aller gefundenen Vim\-Server auf.
|
||||
.TP
|
||||
\-\-servername {Name}
|
||||
Benutzt {Name} als Server\-Namen. Wird f<>r den gegenw<6E>rtigen Vim benutzt,
|
||||
au<EFBFBD>er es wird mit dem Argument <20>\-\-remote<EFBFBD> benutzt, dann ist es der Name des
|
||||
zu kontaktierenden Servers.
|
||||
.TP
|
||||
\-\-socketid {id}
|
||||
Nur GTK\-GUI: Benutzt den GtkPlug\-Mechanismus, um GVim in einem anderen
|
||||
Fenster laufen zu lassen.
|
||||
.TP
|
||||
\-\-version
|
||||
Versionsinformation anzeigen und beenden
|
||||
.SH "EINGEBAUTE HILFE"
|
||||
Tippen Sie in \fBVim\fP <20>:help<6C>, um zu beginnen. Geben Sie ":help begriff<66> ein,
|
||||
um Hilfe <20>ber ein bestimmtes Thema zu bekommen. Zum Beispiel <20>:help ZZ<5A> f<>r
|
||||
Hilfe <20>ber den Befehl <20>ZZ<5A>. Benutzen Sie <Tab> und CTRL\-D, um
|
||||
Begriffe zu vervollst<73>ndigen (<28>:help cmdline\-completion<EFBFBD>). Tags sind
|
||||
vorhanden, um von einem Ort zum anderen zu springen (eine Art
|
||||
Hypertext\-Verkn<EFBFBD>pfungen, siehe <20>:help<6C>). Auf diese Weise k<>nnen alle
|
||||
Dokumentations\-Dateien aufgerufen werden, zum Beispiel <20>:help syntax.txt<78>.
|
||||
.SH DATEIEN
|
||||
.TP 15
|
||||
/usr/local/lib/vim/doc/*.txt
|
||||
Dokumentations\-Dateien f<>r \fBVim\fP. Verwenden Sie <20>:help doc\-file\-list<EFBFBD>, um
|
||||
die gesamte Liste zu bekommen.
|
||||
.TP
|
||||
/usr/local/lib/vim/doc/tags
|
||||
Die <20>Tag<61>\-Datei, die verwendet wird, um Informationen in der Dokumentation
|
||||
zu finden.
|
||||
.TP
|
||||
/usr/local/lib/vim/syntax/syntax.vim
|
||||
Die systemweite Einrichtung der Syntaxhervorhebung.
|
||||
.TP
|
||||
/usr/local/lib/vim/syntax/*.vim
|
||||
Syntaxdateien f<>r die verschiedenen Sprachen.
|
||||
.TP
|
||||
/usr/local/lib/vim/vimrc
|
||||
Systemweite Einstellungsdatei f<>r \fBVim\fP
|
||||
.TP
|
||||
~/.vimrc
|
||||
Pers<EFBFBD>nliche Einstellungsdatei f<>r \fBVim\fP
|
||||
.TP
|
||||
/usr/local/lib/vim/gvimrc
|
||||
Systemweite Einstellungsdatei f<>r GVim
|
||||
.TP
|
||||
~/.gvimrc
|
||||
Pers<EFBFBD>nliche Einstellungsdatei f<>r GVim
|
||||
.TP
|
||||
/usr/local/lib/vim/optwin.vim
|
||||
Das Script, das von dem Befehl <20>:options<6E> verwendet wird, eine sch<63>ne
|
||||
M<EFBFBD>glichkeit, um Optionen zu betrachten und zu setzen.
|
||||
.TP
|
||||
/usr/local/lib/vim/menu.vim
|
||||
Systemweite Einstellungsdatei f<>r das Men<65> von GVim
|
||||
.TP
|
||||
/usr/local/lib/vim/bugreport.vim
|
||||
Das Script zum Generieren eines Fehlerberichts. Siehe <20>:help bugs<67>.
|
||||
.TP
|
||||
/usr/local/lib/vim/filetype.vim
|
||||
Mit diesem Script erkennt Vim den Typ einer Datei anhand ihres
|
||||
Dateinamens. Siehe <20>:help 'filetype'<27>.
|
||||
.TP
|
||||
/usr/local/lib/vim/scripts.vim
|
||||
Mit diesem Script erkennt Vim den Typ einer Datei anhand ihres
|
||||
Inhaltes. Siehe <20>:help 'filetype'<27>.
|
||||
.TP
|
||||
/usr/local/lib/vim/print/*.ps
|
||||
Diese Dateien werden zum Drucken von PostScript verwendet.
|
||||
.PP
|
||||
F<EFBFBD>r die neuesten Informationen lesen Sie die Vim\-Homepage:
|
||||
.br
|
||||
<URL:http://www.vim.org/>
|
||||
.SH "SIEHE AUCH"
|
||||
vimtutor(1)
|
||||
.SH AUTOR
|
||||
\fBVim\fP wurde gr<67><72>tenteils von Bram Moolenaar erstellt, mit viel Hilfe von
|
||||
anderen Leuten. Siehe <20>:help credits<74> in \fBVim.\fP
|
||||
.br
|
||||
\fBVim\fP basiert auf Stevie, der von Tim Thompson, Tony Andrews und
|
||||
G.R. (Fred) Walter geschrieben wurde. Es ist jedoch kaum etwas vom
|
||||
urspr<EFBFBD>nglichen Code <20>brig geblieben.
|
||||
.SH FEHLER
|
||||
Die sind m<>glich. Siehe <20>:help todo<64> f<>r eine Liste bekannter Probleme.
|
||||
.PP
|
||||
Beachten Sie, dass gewisse Dinge, die manche Leute als Fehler betrachten
|
||||
m<EFBFBD>gen, in Wirklichkeit durch zu getreue Nachbildung des Vi\-Verhaltens
|
||||
verursacht werden. Und falls Sie denken, dass andere Dinge Fehler sind,
|
||||
<EFBFBD>weil Vi es anders tut<75>, sollten Sie einen genaueren Blick auf die Datei
|
||||
vi_diff.txt werfen (oder in Vim <20>:help vi_diff.txt<78> tippen). Sehen Sie sich
|
||||
auch die Optionen 'compatible' und 'cpoptions' an.
|
||||
478
runtime/doc/vim-de.UTF-8.1
Normal file
478
runtime/doc/vim-de.UTF-8.1
Normal file
@@ -0,0 +1,478 @@
|
||||
.\"*******************************************************************
|
||||
.\"
|
||||
.\" This file was generated with po4a. Translate the source file.
|
||||
.\"
|
||||
.\"*******************************************************************
|
||||
.\" Translated by bw1 (2008) and Florian Rehnisch <fm-r@gmx.de> (2012)
|
||||
.\" Kudos to the folks on vim-dev and debian-l10n-german
|
||||
.TH VIM 1 "2006 Apr 11"
|
||||
.SH BEZEICHNUNG
|
||||
vim \- Vi IMproved, ein Text\-Editor für Programmierer
|
||||
.SH ÜBERSICHT
|
||||
.br
|
||||
\fBvim\fP [Optionen] [Datei …]
|
||||
.br
|
||||
\fBvim\fP [Optionen] \-
|
||||
.br
|
||||
\fBvim\fP [Optionen] \-t Tag
|
||||
.br
|
||||
\fBvim\fP [Optionen] \-q [Fehlerdatei]
|
||||
.PP
|
||||
.br
|
||||
\fBex\fP
|
||||
.br
|
||||
\fBview\fP
|
||||
.br
|
||||
\fBgvim\fP \fBgview\fP \fBevim\fP \fBeview\fP
|
||||
.br
|
||||
\fBrvim\fP \fBrview\fP \fBrgvim\fP \fBrgview\fP
|
||||
.SH BESCHREIBUNG
|
||||
\fBVim\fP ist ein Text\-Editor, der aufwärtskompatibel zu Vi ist. Er kann
|
||||
verwendet werden, um alle Arten von Klartext zu bearbeiten. Er ist besonders
|
||||
nützlich, um Programme zu bearbeiten.
|
||||
.PP
|
||||
Vim hat einige Erweiterungen gegenüber Vi, z.B.: Rückgängigmachen in
|
||||
mehreren Schritten, mehrere Fenster und Puffer, Syntax\-Hervorhebung,
|
||||
Bearbeiten der Befehlszeile, Dateinamenergänzung, eingebaute Hilfe, visuelle
|
||||
Auswahl, usw. … Siehe »:help vi_diff.txt« für eine Übersicht der
|
||||
Unterschiede zwischen \fBVim\fP und Vi.
|
||||
.PP
|
||||
Im laufenden \fBVim\fP kann mit dem Befehl »:help« viel Hilfe durch das
|
||||
eingebaute Hilfesystem erlangt werden. Siehe den Abschnitt EINGEBAUTE HILFE
|
||||
weiter unten.
|
||||
.PP
|
||||
Meistens wird \fBVim\fP zum Editieren einer einzigen Datei mit dem folgende
|
||||
Befehl gestartet:
|
||||
.PP
|
||||
vim Datei
|
||||
.PP
|
||||
Allgemeiner betrachtet, wird \fBVim\fP folgendermaßen gestartet:
|
||||
.PP
|
||||
vim [Optionen] [Dateiliste]
|
||||
.PP
|
||||
Bei einer fehlenden Dateiliste startet der Editor mit einem leeren
|
||||
Puffer. Andernfalls werden nach den folgenden vier Möglichkeiten eine oder
|
||||
mehrere Dateien bearbeitet:
|
||||
.TP 12
|
||||
Datei …
|
||||
Eine Liste von Dateinamen. Die erste Datei wird in den Puffer geladen und
|
||||
zur aktuellen. Der Cursor wird auf der ersten Zeile des Puffers
|
||||
platziert. Zu den anderen Dateien kann mit dem Befehl »:next« gelangt
|
||||
werden. Falls einer der Dateinamen mit einem Bindestrich beginnt, stellen
|
||||
Sie der Dateiliste »\-\-« voran.
|
||||
.TP
|
||||
\-
|
||||
Die zu bearbeitende Datei wird von der Standardeingabe gelesen. Befehle
|
||||
werden von der Standardfehlerausgabe gelesen, die ein Text\-Terminal sein
|
||||
sollte.
|
||||
.TP
|
||||
\-t {Tag}
|
||||
Die zu editierende Datei und die anfängliche Cursor\-Position hängen von
|
||||
einem »Tag« ab, einer Art Sprungmarke. {Tag} wird in der Tag\-Datei
|
||||
nachgeschlagen, die zugehörige Datei wird zur aktuellen und der zugehörige
|
||||
Befehl wird ausgeführt. Dies wird meistens für Programme in der Sprache »C«
|
||||
benutzt, wobei {Tag} ein Funktionsname sein könnte. Die Wirkung dieses
|
||||
Befehls ist, dass die Datei, die die Funktion enthält, als aktuelle im
|
||||
Editor geöffnet und angezeigt wird und der Cursor auf dem Beginn der
|
||||
Funktion positioniert wird. Siehe »:help tag\-commands«.
|
||||
.TP
|
||||
\-q [Fehlerdatei]
|
||||
Startet im QuickFix\-Modus. Die Datei [Fehlerdatei] wird gelesen und der
|
||||
erste Fehler wird angezeigt. Falls [Fehlerdatei] ausgelassen wird, wird der
|
||||
Dateiname aus der Option 'errorfile' verwendet (bei AmigaOS ist dies
|
||||
vorgabemäßig »AztecC.Err«, sowie „errors.err« bei anderen). Weitere Fehler
|
||||
können mit dem »:cn«\-Befehl angesprungen werden. Siehe „:help quickfix«.
|
||||
.PP
|
||||
\fBVim\fP reagiert unterschiedlich auf den Namen, der verwendet wird, um Vim zu
|
||||
starten (die ausführbare Datei kann dieselbe sein).
|
||||
.TP 10
|
||||
vim
|
||||
der »normale« Weg, alles ist standardmäßig
|
||||
.TP
|
||||
ex
|
||||
Startet im Ex\-Modus. Mit dem Befehl »:vi« gelangt man in den normalen
|
||||
Modus. Funktioniert auch mit dem Argument »\-e«.
|
||||
.TP
|
||||
view
|
||||
Startet im Nur\-Lesen\-Modus. Die Datei wird vor dem Überschreiben
|
||||
geschützt. Dasselbe wird mit dem Parameter »\-R« erreicht.
|
||||
.TP
|
||||
gvim gview
|
||||
Die grafische Version: Öffnet ein neues Fenster. Dasselbe wird mit dem
|
||||
Parameter »\-g« erreicht.
|
||||
.TP
|
||||
evim eview
|
||||
Die grafische Version im einfachen Modus: Öffnet ein neues Fenster. Dasselbe
|
||||
wird mit dem Parameter »\-y« erreicht.
|
||||
.TP
|
||||
rvim rview rgvim rgview
|
||||
Wie die obigen, aber mit Beschränkungen: Es ist nicht möglich, Shell\-Befehle
|
||||
aufzurufen oder mit Unterbrechung in eine Shell zurückzuspringen. Dasselbe
|
||||
wird mit dem Parameter »\-Z« erreicht.
|
||||
.SH OPTIONEN
|
||||
Die Optionen können in beliebiger Reihenfolge vor oder nach den Dateinamen
|
||||
angegeben werden. Optionen ohne Parameter können hinter einem einzigen
|
||||
Bindestrich gruppiert werden.
|
||||
.TP 12
|
||||
+[Nummer]
|
||||
In der ersten Datei wird der Cursor auf die Zeile [Nummer] gesetzt. Falls
|
||||
[Nummer] nicht angegeben wird, wird der Cursor in die letzte Zeile der Datei
|
||||
gesetzt.
|
||||
.TP
|
||||
+/{Suchmuster}
|
||||
In der ersten Datei wird der Cursor auf das erste Auftreten von {Suchmuster}
|
||||
gesetzt. Siehe »:help search\-pattern«.
|
||||
.TP
|
||||
+{Befehl}
|
||||
.TP
|
||||
\-c {Befehl}
|
||||
{Befehl} wird nach dem Lesen der ersten Datei ausgeführt. Als {Befehl} wird
|
||||
ein Ex\-Befehl erwartet. Sind in {Befehl} Leerzeichen vorhanden, muss alles
|
||||
in Anführungszeichen gesetzt werden (hängt von der verwendeten Shell
|
||||
ab). Beispiel: vim "+set si" main.c
|
||||
.br
|
||||
Anmerkung: Sie können bis zu 10 »+«\- oder „\-c«\-Befehle verwenden.
|
||||
.TP
|
||||
\-S {Datei}
|
||||
{Datei} wird nach dem Lesen der ersten Datei ausgeführt. Dies entspricht »\-c
|
||||
"source {Datei}"«. {Datei} darf nicht mit einem Bindestrich (\-)
|
||||
anfangen. Wenn kein Dateiname angegeben wird, wird »Session.vim« verwendet
|
||||
(Funktioniert nur, wenn »\-S« als letzter Parameter steht).
|
||||
.TP
|
||||
\-\-cmd {Befehl}
|
||||
Wie »\-c«, aber dieser Befehl wird vor allen VimRC\-Dateien ausgeführt. Sie
|
||||
können unabhängig von den »\-c«\-Befehlen bis zu 10 dieser Befehle verwenden.
|
||||
.TP
|
||||
\-A
|
||||
Falls \fBVim\fP mit Unterstützung für das Schreiben von rechts nach links und
|
||||
arabischer Tastaturbelegung compiliert wurde (ARABIC), startet dieser
|
||||
Parameter den Modus fürs Arabische (:set arabic). Anderenfalls beendet sich
|
||||
\fBVim\fP mit einer Fehlermeldung.
|
||||
.TP
|
||||
b
|
||||
Binärer Modus: Es werden einige Variablen gesetzt, sodass es möglich ist,
|
||||
eine binäre oder ausführbare Datei zu bearbeiten.
|
||||
.TP
|
||||
\-C
|
||||
Kompatibel: Setzt die Option 'compatible'. Das macht \fBVim\fP im Verhalten
|
||||
sehr ähnlich zu Vi, selbst wenn eine VimRC\-Datei existiert.
|
||||
.TP
|
||||
\-d
|
||||
Startet im diff\-Modus. Es sollten zwei, drei oder vier Dateinamen als
|
||||
Parameter übergeben werden. \fBVim\fP öffnet sie alle und zeigt die
|
||||
Unterschiede an. Arbeitet wie vimdiff(1).
|
||||
.TP
|
||||
\-d {Gerät}
|
||||
Öffnet das {Gerät}, um es als Terminal zu nutzen. Nur für AmigaOS. Beispiel:
|
||||
"\-d con:20/30/600/150".
|
||||
.TP
|
||||
D
|
||||
Debug\-Modus: \fBVim\fP geht in den Debug\-Modus, wenn der erste Befehl in einem
|
||||
Skript ausgeführt wird.
|
||||
.TP
|
||||
\-e
|
||||
Startet \fBVim\fP im Ex\-Modus, als würde als ausführbare Datei »ex« aufgerufen.
|
||||
.TP
|
||||
\-E
|
||||
Startet \fBVim\fP im erweiterten Ex\-Modus, als würde die ausführbare Datei als
|
||||
»exim« aufgerufen.
|
||||
.TP
|
||||
\-f
|
||||
Vordergrund: Bei der GUI\-Version erzeugt \fBVim\fP keinen neuen Prozess und
|
||||
löst sich nicht von der Shell, in der er aufgerufen wurde. Bei AmigaOS wird
|
||||
kein neues Fenster geöffnet. Dieser Parameter wird benutzt, damit das
|
||||
aufrufende Programm auf das Beenden des Bearbeitungssitzung wartet (z.B.:
|
||||
mail). Bei AmigaOS funktionieren die Befehle »:sh« und „:!« nicht.
|
||||
.TP
|
||||
\-\-nofork
|
||||
Vordergrund: Bei der GUI\-Version erzeugt \fBVim\fP keinen neuen Prozess und
|
||||
löst sich nicht von der Shell, in der er aufgerufen wurde.
|
||||
.TP
|
||||
\-F
|
||||
Wenn \fBVim\fP mit FKMAP\-Unterstützung für das Schreiben von rechts nach links
|
||||
und Farsi\-Tastatur\-Belegung kompiliert wurde, startet Vim im Farsi\-Modus,
|
||||
d.h. die Optionen 'fkmap' und 'rightleft' werden gesetzt. Andernfalls bricht
|
||||
\fBVim\fP mit einer Fehlermeldung ab.
|
||||
.TP
|
||||
\-g
|
||||
Falls \fBVim\fP mit GUI\-Unterstützung kompiliert wurde, wird die GUI
|
||||
aktiviert. Falls keine GUI\-Unterstützung einkompiliert wurde, wird mit einer
|
||||
Fehlermeldung abgebrochen.
|
||||
.TP
|
||||
\-h
|
||||
Gibt eine kleine Hilfe für die Befehlszeilenparameter aus. Danach beendet
|
||||
sich \fBVim.\fP
|
||||
.TP
|
||||
\-H
|
||||
Hebräisch\-Modus, falls \fBVim\fP mit RIGHTLEFT\-Unterstützung für das Schreiben
|
||||
von rechts nach links und hebräischer Tastaturbelegung kompiliert wurde,
|
||||
werden die Optionen 'hkmap' und 'rightleft' gesetzt. Andernfalls beendet
|
||||
sich \fBVim\fP mit einer Fehlermeldung.
|
||||
.TP
|
||||
\-i {VimInfo}
|
||||
Wenn eine VimInfo\-Datei verwendet wird: Verwendet statt »~/.viminfo« die
|
||||
angegebene Datei. Es ist auch möglich die Verwendung einer VimInfo\-Datei
|
||||
durch Angabe des Dateinamen »NONE« zu verhindern,
|
||||
.TP
|
||||
\-L
|
||||
dasselbe wie »\-r«
|
||||
.TP
|
||||
\-l
|
||||
Lisp\-Modus. Aktiviert die Optionen 'lisp' und 'showmatch'.
|
||||
.TP
|
||||
\-m
|
||||
Deaktiviert das Verändern von Dateien, indem die Option 'write' gelöscht
|
||||
wird. Der Puffer kann verändert werden, nur das Schreiben einer Datei ist
|
||||
nicht möglich.
|
||||
.TP
|
||||
\-M
|
||||
Keine Veränderungen erlaubt: Die Optionen 'modifiable' und 'write' werden
|
||||
gelöscht, so dass Änderungen nicht erlaubt sind und Dateien nicht
|
||||
geschrieben werden können. Man beachte, dass diese Optionen ('modifiable',
|
||||
\&'write') dennnoch nachträglich zum Erlauben von Änderungen gesetzt werden
|
||||
können.
|
||||
.TP
|
||||
\-N
|
||||
Nicht\-kompatibler Modus: Löscht die Option 'compatible'. Dies veranlasst
|
||||
\fBVim\fP, sich ein wenig besser, aber weniger Vi\-kompatibel zu verhalten,
|
||||
selbst wenn es keine VimRC\-Datei gibt.
|
||||
.TP
|
||||
\-n
|
||||
Verwendet keine Auslagerungsdatei: Eine Wiederherstellung nach einem Absturz
|
||||
ist nicht möglich. Auf einem langsamen Medium (Diskette) kann diese
|
||||
Einstellung nützlich sein. Kann auch mit »set uc=0« erreicht werden; kann
|
||||
mit »set uc=200« aufgehoben werden.
|
||||
.TP
|
||||
\-nb
|
||||
\fBVim\fP fungiert als Server für NetBeans. Details siehe Dokumentation.
|
||||
.TP
|
||||
\-o[N]
|
||||
Öffnet [N] Fenster übereinander. Wenn keine Zahl angegeben wird, öffne ein
|
||||
Fenster pro Datei.
|
||||
.TP
|
||||
\-O[N]
|
||||
Öffnet [N] Fenster nebeneinander. Wenn keine Zahl angegeben wird, öffne ein
|
||||
Fenster pro Datei.
|
||||
.TP
|
||||
\-p[N]
|
||||
Öffnet [N] Reiterseiten. Wenn keine Zahl angegeben wird, öffne eine
|
||||
Reiterseite pro Datei.
|
||||
.TP
|
||||
\-R
|
||||
Nur\-Lesen\-Modus: Die Option 'readonly' wird gesetzt. Der Puffer kann noch
|
||||
bearbeitet werden, aber es wird verhindert, eine Datei aus Versehen zu
|
||||
überschreiben. Wenn Sie wirklich eine Datei überschreiben wollen, fügen Sie
|
||||
dem Ex\-Befehl ein Ausrufezeichen hinzu (wie in »:w!«). Die Option „\-R«
|
||||
bedingt die Option »\-n« (siehe oben). Die Option 'readonly' kann durch „:set
|
||||
noro« gelöscht werden. Siehe »:help 'readonly'«.
|
||||
.TP
|
||||
\-r
|
||||
Listet die Auslagerungsdateien und gibt Informationen zu ihrer
|
||||
Verwendbarkeit zur Wiederherstellung.
|
||||
.TP
|
||||
\-r {Datei}
|
||||
Wiederherstellungsmodus: Die Auslagerungsdatei wird zur Wiederherstellung
|
||||
verwendet und hat denselben Dateinamen wie die Text\-Datei + ».swp«. Siehe
|
||||
„:help recovery«.
|
||||
.TP
|
||||
\-s
|
||||
Der stille Modus: Nur wenn die ausführbare Datei als »ex« aufgerufen wird
|
||||
oder vor »\-s« die Option „\-e« gegeben wird.
|
||||
.TP
|
||||
\-s {Eingabeskript}
|
||||
Die Datei {Eingabeskript} wird gelesen und ausgeführt, als würden Sie die
|
||||
Zeichen in ihr tippen. Dasselbe kann mit dem Befehl »:source!
|
||||
{Eingabeskript}« erreicht werden. Wird das Ende der Datei vor dem Beenden
|
||||
des Editors erreicht, werden weitere Zeichen von der Tastatur gelesen.
|
||||
.TP
|
||||
\-T {Terminal}
|
||||
Setzt den Namen des benutzten Terminals. Nur erforderlich, wenn die
|
||||
Automatik nicht funktioniert. Sollte ein \fBVim\fP bekanntes Terminal sein:
|
||||
(builtin) oder in einer termcap\- oder terminfo\-Datei definiert.
|
||||
.TP
|
||||
\-u {VimRC}
|
||||
Verwendet zur Initialisierung die Befehle in der Datei {VimRC}. Alle anderen
|
||||
Initialisierungen werden übersprungen. Benutzen Sie dies, um eine besondere
|
||||
Art von Dateien zu bearbeiten. Dies kann auch benutzt werden, um alle
|
||||
Initialisierungen zu überspringen, indem der Name »NONE« angegeben wird. Für
|
||||
weitere Einzelheiten siehe »:help initialisation« innerhalb von Vim.
|
||||
.TP
|
||||
\-U {GvimRC}
|
||||
Benutzt die Befehle in der Datei {GvimRC} für die Initialisierung der
|
||||
grafischen Oberfläche. Alle anderen Initialisierungen werden
|
||||
übersprungen. Dies kann ebenfalls benutzt werden, um alle
|
||||
GUI\-Initialisierungen zu überspringen, indem der Name »NONE« angegeben
|
||||
wird. Siehe »:help gui\-init« innerhalb von Vim für weitere Einzelheiten.
|
||||
.TP
|
||||
\-V[N]
|
||||
Ausführlich (verbose): Gibt Meldungen darüber, welche Befehlsdateien
|
||||
eingelesen werden, und über das Lesen und Schreiben einer VimInfo\-Datei. Die
|
||||
optionale Zahl N ist der Wert für 'verbose'. Vorgabe ist 10.
|
||||
.TP
|
||||
\-v
|
||||
Startet \fBVim\fP im Vi\-Modus, so als würde die ausführbare Datei mit »vi«
|
||||
aufgerufen. Dies wirkt sich nur aus, wenn die ausführbare Datei als »ex«
|
||||
aufgerufen wird.
|
||||
.TP
|
||||
\-w {Ausgabeskript}
|
||||
Alle Zeichen, die eingetippt werden, werden in der Datei {Ausgabeskript}
|
||||
aufgezeichnet, solange bis Sie \fBVim\fP beenden. Dies ist nützlich, falls Sie
|
||||
eine Skript\-Datei zum Benutzen mit »vim \-s« oder „:source!« erzeugen
|
||||
wollen. Falls die Datei {Ausgabeskript} vorhanden ist, werden die Zeichen
|
||||
angehängt.
|
||||
.TP
|
||||
\-W {Ausgabeskript}
|
||||
Wie \-w, aber eine bereits vorhandene Datei wird überschrieben.
|
||||
.TP
|
||||
\-x
|
||||
Benutzt beim Schreiben von Dateien eine Verschlüsselung. Fragt nach dem
|
||||
Schlüssel.
|
||||
.TP
|
||||
\-X
|
||||
Führt keine Verbindung zum X\-Server durch. Dadurch verkürzt sich die
|
||||
Startzeit, aber der Fenstertitel und die Zwischenablage werden nicht
|
||||
verwendet.
|
||||
.TP
|
||||
\-y
|
||||
Startet \fBVim\fP im einfachen Modus, als würde die ausführbare Datei mit
|
||||
»evim« oder »eview« aufgerufen. \fBVim\fP verhält sich dann wie ein Editor zum
|
||||
Klicken und Tippen.
|
||||
.TP
|
||||
\-Z
|
||||
Eingeschränkter Modus: Funktioniert, als würde der Name der ausführbaren
|
||||
Datei mit »r« beginnen.
|
||||
.TP
|
||||
\-\-
|
||||
Markiert das Ende der Optionen. Argumente, die folgen, werden als Dateinamen
|
||||
behandelt. Dies kann benutzt werden, um einen Dateinamen mit »\-« am Anfang
|
||||
zu verwenden.
|
||||
.TP
|
||||
\-\-echo\-wid
|
||||
Nur GTK\-GUI: Schreibe die Fenster\-ID auf die Standardausgabe.
|
||||
.TP
|
||||
\-\-help
|
||||
Gibt eine Hilfe\-Nachricht aus und beendet, wie »\-h«.
|
||||
.TP
|
||||
\-\-literal
|
||||
Nimmt die Dateinamen so wie sie sind und vervollständigt sie nicht nach
|
||||
Metazeichen (*,?). Dies wirkt sich nicht unter Unix aus, wo die Shell die
|
||||
Metazeichen expandiert.
|
||||
.TP
|
||||
\-\-noplugin
|
||||
Lade keine Plugins. Impliziert durch »\-u NONE«.
|
||||
.TP
|
||||
\-\-remote
|
||||
Verbindet mit einem Vim\-Server und lässt ihn die in den restlichen
|
||||
Argumenten angegeben Dateien editieren. Wenn kein Server gefunden wird,
|
||||
führt dies zu einer Warnmeldung und die Dateien werden im gegenwärtigen Vim
|
||||
zum Bearbeiten geöffnet.
|
||||
.TP
|
||||
\-\-remote\-expr {Ausdruck}
|
||||
Verbindet mit einem Vim\-Server, führt {Ausdruck} aus und zeigt das Ergebnis
|
||||
auf der Standardausgabe an.
|
||||
.TP
|
||||
\-\-remote\-send {Zeichen}
|
||||
Verbindet mit einem Vim\-Server und sendet ihm {Zeichen}.
|
||||
.TP
|
||||
\-\-remote\-silent
|
||||
Wie »\-\-remote«, aber ohne Warnung, wenn kein Server gefunden wird.
|
||||
.TP
|
||||
\-\-remote\-wait
|
||||
Wie »\-\-remote«, aber Vim beendet sich nicht, bis die Dateien bearbeitet
|
||||
wurden.
|
||||
.TP
|
||||
\-\-remote\-wait\-silent
|
||||
Wie »\-\-remote\-wait«, aber ohne Warnung, wenn kein Server gefunden wird.
|
||||
.TP
|
||||
\-\-serverlist
|
||||
Listet die Namen aller gefundenen Vim\-Server auf.
|
||||
.TP
|
||||
\-\-servername {Name}
|
||||
Benutzt {Name} als Server\-Namen. Wird für den gegenwärtigen Vim benutzt,
|
||||
außer es wird mit dem Argument »\-\-remote« benutzt, dann ist es der Name des
|
||||
zu kontaktierenden Servers.
|
||||
.TP
|
||||
\-\-socketid {id}
|
||||
Nur GTK\-GUI: Benutzt den GtkPlug\-Mechanismus, um GVim in einem anderen
|
||||
Fenster laufen zu lassen.
|
||||
.TP
|
||||
\-\-version
|
||||
Versionsinformation anzeigen und beenden
|
||||
.SH "EINGEBAUTE HILFE"
|
||||
Tippen Sie in \fBVim\fP »:help«, um zu beginnen. Geben Sie „:help begriff« ein,
|
||||
um Hilfe über ein bestimmtes Thema zu bekommen. Zum Beispiel »:help ZZ« für
|
||||
Hilfe über den Befehl »ZZ«. Benutzen Sie <Tab> und CTRL\-D, um
|
||||
Begriffe zu vervollständigen (»:help cmdline\-completion«). Tags sind
|
||||
vorhanden, um von einem Ort zum anderen zu springen (eine Art
|
||||
Hypertext\-Verknüpfungen, siehe »:help«). Auf diese Weise können alle
|
||||
Dokumentations\-Dateien aufgerufen werden, zum Beispiel »:help syntax.txt«.
|
||||
.SH DATEIEN
|
||||
.TP 15
|
||||
/usr/local/lib/vim/doc/*.txt
|
||||
Dokumentations\-Dateien für \fBVim\fP. Verwenden Sie »:help doc\-file\-list«, um
|
||||
die gesamte Liste zu bekommen.
|
||||
.TP
|
||||
/usr/local/lib/vim/doc/tags
|
||||
Die »Tag«\-Datei, die verwendet wird, um Informationen in der Dokumentation
|
||||
zu finden.
|
||||
.TP
|
||||
/usr/local/lib/vim/syntax/syntax.vim
|
||||
Die systemweite Einrichtung der Syntaxhervorhebung.
|
||||
.TP
|
||||
/usr/local/lib/vim/syntax/*.vim
|
||||
Syntaxdateien für die verschiedenen Sprachen.
|
||||
.TP
|
||||
/usr/local/lib/vim/vimrc
|
||||
Systemweite Einstellungsdatei für \fBVim\fP
|
||||
.TP
|
||||
~/.vimrc
|
||||
Persönliche Einstellungsdatei für \fBVim\fP
|
||||
.TP
|
||||
/usr/local/lib/vim/gvimrc
|
||||
Systemweite Einstellungsdatei für GVim
|
||||
.TP
|
||||
~/.gvimrc
|
||||
Persönliche Einstellungsdatei für GVim
|
||||
.TP
|
||||
/usr/local/lib/vim/optwin.vim
|
||||
Das Script, das von dem Befehl »:options« verwendet wird, eine schöne
|
||||
Möglichkeit, um Optionen zu betrachten und zu setzen.
|
||||
.TP
|
||||
/usr/local/lib/vim/menu.vim
|
||||
Systemweite Einstellungsdatei für das Menü von GVim
|
||||
.TP
|
||||
/usr/local/lib/vim/bugreport.vim
|
||||
Das Script zum Generieren eines Fehlerberichts. Siehe »:help bugs«.
|
||||
.TP
|
||||
/usr/local/lib/vim/filetype.vim
|
||||
Mit diesem Script erkennt Vim den Typ einer Datei anhand ihres
|
||||
Dateinamens. Siehe »:help 'filetype'«.
|
||||
.TP
|
||||
/usr/local/lib/vim/scripts.vim
|
||||
Mit diesem Script erkennt Vim den Typ einer Datei anhand ihres
|
||||
Inhaltes. Siehe »:help 'filetype'«.
|
||||
.TP
|
||||
/usr/local/lib/vim/print/*.ps
|
||||
Diese Dateien werden zum Drucken von PostScript verwendet.
|
||||
.PP
|
||||
Für die neuesten Informationen lesen Sie die Vim\-Homepage:
|
||||
.br
|
||||
<URL:http://www.vim.org/>
|
||||
.SH "SIEHE AUCH"
|
||||
vimtutor(1)
|
||||
.SH AUTOR
|
||||
\fBVim\fP wurde größtenteils von Bram Moolenaar erstellt, mit viel Hilfe von
|
||||
anderen Leuten. Siehe »:help credits« in \fBVim.\fP
|
||||
.br
|
||||
\fBVim\fP basiert auf Stevie, der von Tim Thompson, Tony Andrews und
|
||||
G.R. (Fred) Walter geschrieben wurde. Es ist jedoch kaum etwas vom
|
||||
ursprünglichen Code übrig geblieben.
|
||||
.SH FEHLER
|
||||
Die sind möglich. Siehe »:help todo« für eine Liste bekannter Probleme.
|
||||
.PP
|
||||
Beachten Sie, dass gewisse Dinge, die manche Leute als Fehler betrachten
|
||||
mögen, in Wirklichkeit durch zu getreue Nachbildung des Vi\-Verhaltens
|
||||
verursacht werden. Und falls Sie denken, dass andere Dinge Fehler sind,
|
||||
»weil Vi es anders tut«, sollten Sie einen genaueren Blick auf die Datei
|
||||
vi_diff.txt werfen (oder in Vim »:help vi_diff.txt« tippen). Sehen Sie sich
|
||||
auch die Optionen 'compatible' und 'cpoptions' an.
|
||||
@@ -1,4 +1,4 @@
|
||||
*visual.txt* For Vim version 7.3. Last change: 2012 May 25
|
||||
*visual.txt* For Vim version 7.3. Last change: 2012 Aug 15
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -62,8 +62,15 @@ position.
|
||||
|
||||
*v* *characterwise-visual*
|
||||
[count]v Start Visual mode per character.
|
||||
With [count] select that many characters, like moving
|
||||
the cursor right [count] characters. One less when
|
||||
With [count] select the same number of characters or
|
||||
lines as used for the last Visual operation, but at
|
||||
the current cursor position, multiplied by [count].
|
||||
When the previous Visual operation was on a block both
|
||||
the width and height of the block are multiplied by
|
||||
[count].
|
||||
When there was no previous Visual operation [count]
|
||||
characters are selected. This is like moving the
|
||||
cursor right N * [count] characters. One less when
|
||||
'selection' is not "exclusive".
|
||||
|
||||
*V* *linewise-visual*
|
||||
@@ -99,6 +106,18 @@ gv Start Visual mode with the same area as the previous
|
||||
After using "p" or "P" in Visual mode the text that
|
||||
was put will be selected.
|
||||
|
||||
*gn* *v_gn*
|
||||
gn Search forward for the last used search pattern, like
|
||||
with `n`, and start Visual mode to select the match.
|
||||
If the cursor is on the match, visually selects it.
|
||||
If an operator is pending, operates on the match.
|
||||
E.g., "dgn" deletes the text of the next match.
|
||||
If Visual mode is active, extends the selection
|
||||
until the end of the next match.
|
||||
|
||||
*gN* *v_gN*
|
||||
gN Like |gn| but searches backward, like with `N`.
|
||||
|
||||
*<LeftMouse>*
|
||||
<LeftMouse> Set the current cursor position. If Visual mode is
|
||||
active it is stopped. Only when 'mouse' option is
|
||||
@@ -274,7 +293,10 @@ with {motion}, which is only ONE movement command.
|
||||
Another way to operate on the Visual area is using the |/\%V| item in a
|
||||
pattern. For example, to replace all '(' in the Visual area with '#': >
|
||||
|
||||
:%s/\%V(/X/g
|
||||
:'<,'>s/\%V(/#/g
|
||||
|
||||
Note that the "'<,'>" will appear automatically when you press ":" in Visual
|
||||
mode.
|
||||
|
||||
==============================================================================
|
||||
5. Blockwise operators *blockwise-operators*
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim support file to detect file types
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2012 May 18
|
||||
" Last Change: 2012 Sep 06
|
||||
|
||||
" Listen very carefully, I will say this only once
|
||||
if exists("did_load_filetypes")
|
||||
@@ -1119,6 +1119,9 @@ au BufNewFile,BufRead *.nb setf mma
|
||||
" Maya Extension Language
|
||||
au BufNewFile,BufRead *.mel setf mel
|
||||
|
||||
" Mercurial (hg) commit file
|
||||
au BufNewFile,BufRead hg-editor-*.txt setf hgcommit
|
||||
|
||||
" Mercurial config (looks like generic config file)
|
||||
au BufNewFile,BufRead *.hgrc,*hgrc setf cfg
|
||||
|
||||
@@ -1200,7 +1203,7 @@ au BufNewFile,BufRead *.mysql setf mysql
|
||||
au BufNewFile,BufRead */etc/Muttrc.d/* call s:StarSetf('muttrc')
|
||||
|
||||
" M$ Resource files
|
||||
au BufNewFile,BufRead *.rc setf rc
|
||||
au BufNewFile,BufRead *.rc,*.rch setf rc
|
||||
|
||||
" MuPAD source
|
||||
au BufRead,BufNewFile *.mu setf mupad
|
||||
@@ -1769,6 +1772,10 @@ func! SetFileTypeSH(name)
|
||||
" Some .sh scripts contain #!/bin/tcsh.
|
||||
call SetFileTypeShell("tcsh")
|
||||
return
|
||||
elseif a:name =~ '\<zsh\>'
|
||||
" Some .sh scripts contain #!/bin/zsh.
|
||||
call SetFileTypeShell("zsh")
|
||||
return
|
||||
elseif a:name =~ '\<ksh\>'
|
||||
let b:is_kornshell = 1
|
||||
if exists("b:is_bash")
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: C
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2011 Aug 04
|
||||
" Last Change: 2012 Jul 10
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
@@ -40,7 +40,7 @@ let b:match_words = &matchpairs . ',^\s*#\s*if\(\|def\|ndef\)\>:^\s*#\s*elif\>:^
|
||||
let b:match_skip = 's:comment\|string\|character'
|
||||
|
||||
" Win32 can filter files in the browse dialog
|
||||
if has("gui_win32") && !exists("b:browsefilter")
|
||||
if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter")
|
||||
if &ft == "cpp"
|
||||
let b:browsefilter = "C++ Source Files (*.cpp *.c++)\t*.cpp;*.c++\n" .
|
||||
\ "C Header Files (*.h)\t*.h\n" .
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: generic Changelog file
|
||||
" Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2011-05-02
|
||||
" Latest Revision: 2012-08-23
|
||||
" Variables:
|
||||
" g:changelog_timeformat (deprecated: use g:changelog_dateformat instead) -
|
||||
" description: the timeformat used in ChangeLog entries.
|
||||
@@ -106,10 +106,10 @@ if &filetype == 'changelog'
|
||||
|
||||
function! s:passwd_field(line, field)
|
||||
let fields = split(a:line, ':', 1)
|
||||
if len(fields) < field
|
||||
if len(fields) < a:field
|
||||
return ""
|
||||
endif
|
||||
return fields[field - 1]
|
||||
return fields[a:field - 1]
|
||||
endfunction
|
||||
|
||||
function! s:capitalize(word)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim filetype plugin file
|
||||
" Language: Zimbu
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2012 May 18
|
||||
" Last Change: 2012 Sep 08
|
||||
|
||||
" Only do this when not done yet for this buffer
|
||||
if exists("b:did_ftplugin")
|
||||
@@ -34,7 +34,7 @@ setlocal errorformat^=%f\ line\ %l\ col\ %c:\ %m,ERROR:\ %m
|
||||
|
||||
" When the matchit plugin is loaded, this makes the % command skip parens and
|
||||
" braces in comments.
|
||||
let b:match_words = '\(^\s*\)\@<=\(MODULE\|CLASS\|INTERFACE\|BITS\|ENUM\|SHARED\|FUNC\|REPLACE\|DEFINE\|PROC\|EQUAL\|MAIN\|IF\|GENERATE_IF\|WHILE\|REPEAT\|WITH\|DO\|FOR\|SWITCH\|TRY\)\>\|{\s*$:\(^\s*\)\@<=\(ELSE\|ELSEIF\|GENERATE_ELSE\|GENERATE_ELSEIF\|CATCH\|FINALLY\)\>:\(^\s*\)\@<=}\|\<UNTIL\>'
|
||||
let b:match_words = '\(^\s*\)\@<=\(MODULE\|CLASS\|INTERFACE\|BITS\|ENUM\|SHARED\|FUNC\|REPLACE\|DEFINE\|PROC\|EQUAL\|MAIN\|IF\|GENERATE_IF\|WHILE\|REPEAT\|WITH\|DO\|FOR\|SWITCH\|TRY\)\>\|{\s*$:\(^\s*\)\@<=\(ELSE\|ELSEIF\|GENERATE_ELSE\|GENERATE_ELSEIF\|CATCH\|FINALLY\)\>:\(^\s*\)\@<=\(}\|\<UNTIL\>\)'
|
||||
|
||||
let b:match_skip = 's:comment\|string\|zimbuchar'
|
||||
|
||||
@@ -43,12 +43,36 @@ setlocal et sts=2 sw=2
|
||||
|
||||
" Does replace when a dot, space or closing brace is typed.
|
||||
func! GCUpperDot(what)
|
||||
let col = col(".") - strlen(a:what)
|
||||
if v:char != ' ' && v:char != "\r" && v:char != "\x1b" && v:char != '.' && v:char != ')' && v:char != '}'
|
||||
if v:char != ' ' && v:char != "\r" && v:char != "\x1b" && v:char != '.' && v:char != ')' && v:char != '}' && v:char != ','
|
||||
" no space or dot after the typed text
|
||||
let g:got_char = v:char
|
||||
return a:what
|
||||
endif
|
||||
return GCUpperCommon(a:what)
|
||||
endfunc
|
||||
|
||||
" Does not replace when a dot is typed.
|
||||
func! GCUpper(what)
|
||||
if v:char != ' ' && v:char != "\r" && v:char != "\x1b" && v:char != ')' && v:char != ','
|
||||
" no space or other "terminating" character after the typed text
|
||||
let g:got_char = v:char
|
||||
return a:what
|
||||
endif
|
||||
return GCUpperCommon(a:what)
|
||||
endfunc
|
||||
|
||||
" Only replaces when a space is typed.
|
||||
func! GCUpperSpace(what)
|
||||
if v:char != ' '
|
||||
" no space after the typed text
|
||||
let g:got_char = v:char
|
||||
return a:what
|
||||
endif
|
||||
return GCUpperCommon(a:what)
|
||||
endfunc
|
||||
|
||||
func! GCUpperCommon(what)
|
||||
let col = col(".") - strlen(a:what)
|
||||
if col > 1 && getline('.')[col - 2] != ' '
|
||||
" no space before the typed text
|
||||
let g:got_char = 999
|
||||
@@ -64,34 +88,15 @@ func! GCUpperDot(what)
|
||||
return toupper(a:what)
|
||||
endfunc
|
||||
|
||||
" Does not replace when a dot is typed.
|
||||
func! GCUpper(what)
|
||||
if v:char != ' ' && v:char != "\r" && v:char != "\x1b" && v:char != ')'
|
||||
" no space after the typed text
|
||||
let g:got_char = v:char
|
||||
return a:what
|
||||
endif
|
||||
return GCUpperDot(a:what)
|
||||
endfunc
|
||||
|
||||
" Only replaces when a space is typed.
|
||||
func! GCUpperSpace(what)
|
||||
if v:char != ' '
|
||||
" no space after the typed text
|
||||
let g:got_char = v:char
|
||||
return a:what
|
||||
endif
|
||||
return GCUpperDot(a:what)
|
||||
endfunc
|
||||
|
||||
iabbr <buffer> <expr> alias GCUpperSpace("alias")
|
||||
iabbr <buffer> <expr> arg GCUpperDot("arg")
|
||||
iabbr <buffer> <expr> bad GCUpper("bad")
|
||||
iabbr <buffer> <expr> break GCUpper("break")
|
||||
iabbr <buffer> <expr> case GCUpperSpace("case")
|
||||
iabbr <buffer> <expr> catch GCUpperSpace("catch")
|
||||
iabbr <buffer> <expr> check GCUpperDot("check")
|
||||
iabbr <buffer> <expr> class GCUpperSpace("class")
|
||||
iabbr <buffer> <expr> interface GCUpperSpace("interface")
|
||||
iabbr <buffer> <expr> implements GCUpperSpace("implements")
|
||||
iabbr <buffer> <expr> shared GCUpperSpace("shared")
|
||||
iabbr <buffer> <expr> continue GCUpper("continue")
|
||||
iabbr <buffer> <expr> default GCUpper("default")
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim indent file
|
||||
" Language: Vim script
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2012 May 20
|
||||
" Last Change: 2012 Aug 02
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_indent")
|
||||
@@ -22,6 +22,16 @@ let s:keepcpo= &cpo
|
||||
set cpo&vim
|
||||
|
||||
function GetVimIndent()
|
||||
let ignorecase_save = &ignorecase
|
||||
try
|
||||
let &ignorecase = 0
|
||||
return GetVimIndentIntern()
|
||||
finally
|
||||
let &ignorecase = ignorecase_save
|
||||
endtry
|
||||
endfunc
|
||||
|
||||
function GetVimIndentIntern()
|
||||
" Find a non-blank line above the current line.
|
||||
let lnum = prevnonblank(v:lnum - 1)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
" Language: xml
|
||||
" Maintainer: Johannes Zellner <johannes@zellner.org>
|
||||
" Last Change: 2012 May 18
|
||||
" Last Change: 2012 Jul 25
|
||||
" Notes: 1) does not indent pure non-xml code (e.g. embedded scripts)
|
||||
" 2) will be confused by unbalanced tags in comments
|
||||
" or CDATA sections.
|
||||
@@ -31,8 +31,16 @@ if !exists('b:xml_indent_close')
|
||||
" let b:xml_indent_close = '.\{-}</\(address\)\@!'
|
||||
endif
|
||||
|
||||
let &cpo = s:keepcpo
|
||||
unlet s:keepcpo
|
||||
|
||||
" [-- finish, if the function already exists --]
|
||||
if exists('*XmlIndentGet') | finish | endif
|
||||
if exists('*XmlIndentGet')
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:keepcpo= &cpo
|
||||
set cpo&vim
|
||||
|
||||
fun! <SID>XmlIndentWithPattern(line, pat)
|
||||
let s = substitute('x'.a:line, a:pat, "\1", 'g')
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim indent file
|
||||
" Language: Zimbu
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last Change: 2011 Jun 19
|
||||
" Last Change: 2012 Sep 08
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
if exists("b:did_indent")
|
||||
@@ -101,7 +101,7 @@ func GetZimbuIndent(lnum)
|
||||
endwhile
|
||||
endif
|
||||
|
||||
if prevline =~ '^\s*\(IF\|\|ELSEIF\|ELSE\|GENERATE_IF\|\|GENERATE_ELSEIF\|GENERATE_ELSE\|WHILE\|REPEAT\|TRY\|CATCH\|FINALLY\|FOR\|DO\|SWITCH\|CASE\|DEFAULT\|FUNC\|VIRTUAL\|ABSTRACT\|DEFINE\|REPLACE\|FINAL\|PROC\|MAIN\|NEW\|ENUM\|CLASS\|BITS\|MODULE\|SHARED\)\>'
|
||||
if prevline =~ '^\s*\(IF\|\|ELSEIF\|ELSE\|GENERATE_IF\|\|GENERATE_ELSEIF\|GENERATE_ELSE\|WHILE\|REPEAT\|TRY\|CATCH\|FINALLY\|FOR\|DO\|SWITCH\|CASE\|DEFAULT\|FUNC\|VIRTUAL\|ABSTRACT\|DEFINE\|REPLACE\|FINAL\|PROC\|MAIN\|NEW\|ENUM\|CLASS\|INTERFACE\|BITS\|MODULE\|SHARED\)\>'
|
||||
let plindent += &sw
|
||||
endif
|
||||
if thisline =~ '^\s*\(}\|ELSEIF\>\|ELSE\>\|CATCH\|FINALLY\|GENERATE_ELSEIF\>\|GENERATE_ELSE\>\|UNTIL\>\)'
|
||||
|
||||
87
runtime/keymap/belarusian-jcuken.vim
Normal file
87
runtime/keymap/belarusian-jcuken.vim
Normal file
@@ -0,0 +1,87 @@
|
||||
" Vim Keymap file for Belarusian characters, layout 'jcuken', classical variant
|
||||
" Useful mainly with UTF-8, but may work with other encodings.
|
||||
|
||||
" Derived From: russian-jcuken.vim
|
||||
" Maintainer: Aliaksei Nestserau <aliaksei@screencustoms.com>
|
||||
" Last Changed: 2012 Jul 23
|
||||
|
||||
" All characters are given literally, conversion to another encoding (e.g.,
|
||||
" UTF-8) should work.
|
||||
scriptencoding utf-8
|
||||
|
||||
let b:keymap_name = "by"
|
||||
|
||||
loadkeymap
|
||||
~ Ё CYRILLIC CAPITAL LETTER IO
|
||||
` ё CYRILLIC SMALL LETTER IO
|
||||
F А CYRILLIC CAPITAL LETTER A
|
||||
< Б CYRILLIC CAPITAL LETTER BE
|
||||
D В CYRILLIC CAPITAL LETTER VE
|
||||
U Г CYRILLIC CAPITAL LETTER GHE
|
||||
L Д CYRILLIC CAPITAL LETTER DE
|
||||
T Е CYRILLIC CAPITAL LETTER IE
|
||||
: Ж CYRILLIC CAPITAL LETTER ZHE
|
||||
P З CYRILLIC CAPITAL LETTER ZE
|
||||
B І CYRILLIC CAPITAL LETTER I
|
||||
Q Й CYRILLIC CAPITAL LETTER SHORT I
|
||||
R К CYRILLIC CAPITAL LETTER KA
|
||||
K Л CYRILLIC CAPITAL LETTER EL
|
||||
V М CYRILLIC CAPITAL LETTER EM
|
||||
Y Н CYRILLIC CAPITAL LETTER EN
|
||||
J О CYRILLIC CAPITAL LETTER O
|
||||
G П CYRILLIC CAPITAL LETTER PE
|
||||
H Р CYRILLIC CAPITAL LETTER ER
|
||||
C С CYRILLIC CAPITAL LETTER ES
|
||||
N Т CYRILLIC CAPITAL LETTER TE
|
||||
E У CYRILLIC CAPITAL LETTER U
|
||||
A Ф CYRILLIC CAPITAL LETTER EF
|
||||
{ Х CYRILLIC CAPITAL LETTER HA
|
||||
W Ц CYRILLIC CAPITAL LETTER TSE
|
||||
X Ч CYRILLIC CAPITAL LETTER CHE
|
||||
I Ш CYRILLIC CAPITAL LETTER SHA
|
||||
O Ў CYRILLIC CAPITAL LETTER ASYLLABIC U
|
||||
} ' APOSTROPHE
|
||||
S Ы CYRILLIC CAPITAL LETTER YERU
|
||||
M Ь CYRILLIC CAPITAL LETTER SOFT SIGN
|
||||
\" Э CYRILLIC CAPITAL LETTER E
|
||||
> Ю CYRILLIC CAPITAL LETTER YU
|
||||
Z Я CYRILLIC CAPITAL LETTER YA
|
||||
f а CYRILLIC SMALL LETTER A
|
||||
, б CYRILLIC SMALL LETTER BE
|
||||
d в CYRILLIC SMALL LETTER VE
|
||||
u г CYRILLIC SMALL LETTER GHE
|
||||
l д CYRILLIC SMALL LETTER DE
|
||||
t е CYRILLIC SMALL LETTER IE
|
||||
; ж CYRILLIC SMALL LETTER ZHE
|
||||
p з CYRILLIC SMALL LETTER ZE
|
||||
b і CYRILLIC SMALL LETTER I
|
||||
q й CYRILLIC SMALL LETTER SHORT I
|
||||
r к CYRILLIC SMALL LETTER KA
|
||||
k л CYRILLIC SMALL LETTER EL
|
||||
v м CYRILLIC SMALL LETTER EM
|
||||
y н CYRILLIC SMALL LETTER EN
|
||||
j о CYRILLIC SMALL LETTER O
|
||||
g п CYRILLIC SMALL LETTER PE
|
||||
h р CYRILLIC SMALL LETTER ER
|
||||
c с CYRILLIC SMALL LETTER ES
|
||||
n т CYRILLIC SMALL LETTER TE
|
||||
e у CYRILLIC SMALL LETTER U
|
||||
a ф CYRILLIC SMALL LETTER EF
|
||||
[ х CYRILLIC SMALL LETTER HA
|
||||
w ц CYRILLIC SMALL LETTER TSE
|
||||
x ч CYRILLIC SMALL LETTER CHE
|
||||
i ш CYRILLIC SMALL LETTER SHA
|
||||
o ў CYRILLIC SMALL LETTER ASYLLABIC U
|
||||
] ' APOSTROPHE
|
||||
s ы CYRILLIC SMALL LETTER YERU
|
||||
m ь CYRILLIC SMALL LETTER SOFT SIGN
|
||||
' э CYRILLIC SMALL LETTER E
|
||||
. ю CYRILLIC SMALL LETTER YU
|
||||
z я CYRILLIC SMALL LETTER YA
|
||||
@ "
|
||||
# '
|
||||
$ *
|
||||
% :
|
||||
^ ,
|
||||
& .
|
||||
* ;
|
||||
@@ -1,5 +1,8 @@
|
||||
" Menu Translations: Japanese (for Windows)
|
||||
" Translated By: MURAOKA Taro <koron@tka.att.ne.jp>
|
||||
" Last Change: 29-Apr-2004.
|
||||
" Translated By: MURAOKA Taro <koron.kaoriya@gmail.com>
|
||||
" Last Change: 15-Jun-2012.
|
||||
"
|
||||
" Copyright (C) 2004,12 MURAOKA Taro <koron.kaoriya@gmail.com>
|
||||
" THIS FILE IS DISTRIBUTED UNDER THE VIM LICENSE.
|
||||
|
||||
source <sfile>:p:h/menu_japanese_japan.932.vim
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
" Menu Translations: Japanese (for UNIX)
|
||||
" Translated By: Muraoka Taro <koron@tka.att.ne.jp>
|
||||
" Last Change: 08:50:47 25-Mar-2001.
|
||||
" Translated By: MURAOKA Taro <koron.kaoriya@gmail.com>
|
||||
" Last Change: 15-Jun-2012.
|
||||
"
|
||||
" Copyright (C) 2004,12 MURAOKA Taro <koron.kaoriya@gmail.com>
|
||||
" THIS FILE IS DISTRIBUTED UNDER THE VIM LICENSE.
|
||||
|
||||
" eucjp is the same as euc-jp. Source the other one from here.
|
||||
source <sfile>:p:h/menu_ja_jp.euc-jp.vim
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
" Menu Translations: Japanese (for UNIX)
|
||||
" Translated By: Muraoka Taro <koron@tka.att.ne.jp>
|
||||
" Last Change: 08:50:47 25-Mar-2001.
|
||||
" Translated By: MURAOKA Taro <koron.kaoriya@gmail.com>
|
||||
" Last Change: 15-Jun-2012.
|
||||
"
|
||||
" Copyright (C) 2004,12 MURAOKA Taro <koron.kaoriya@gmail.com>
|
||||
" THIS FILE IS DISTRIBUTED UNDER THE VIM LICENSE.
|
||||
|
||||
" eucjp is the same as euc-jp. Source the other one from here.
|
||||
source <sfile>:p:h/menu_ja_jp.euc-jp.vim
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
" Menu Translations: Japanese (for UNIX)
|
||||
" Translated By: Muraoka Taro <koron@tka.att.ne.jp>
|
||||
" Last Change: 08:50:47 25-Mar-2001.
|
||||
" Translated By: MURAOKA Taro <koron.kaoriya@gmail.com>
|
||||
" Last Change: 15-Jun-2012.
|
||||
"
|
||||
" Copyright (C) 2004,12 MURAOKA Taro <koron.kaoriya@gmail.com>
|
||||
" THIS FILE IS DISTRIBUTED UNDER THE VIM LICENSE.
|
||||
|
||||
" ujis is the same as euc-jp. Source the other one from here.
|
||||
source <sfile>:p:h/menu_ja_jp.euc-jp.vim
|
||||
|
||||
@@ -1,5 +1,8 @@
|
||||
" Menu Translations: Japanese (for Windows)
|
||||
" Translated By: MURAOKA Taro <koron@tka.att.ne.jp>
|
||||
" Last Change: 29-Apr-2004.
|
||||
" Translated By: MURAOKA Taro <koron.kaoriya@gmail.com>
|
||||
" Last Change: 15-Jun-2012.
|
||||
"
|
||||
" Copyright (C) 2004,12 MURAOKA Taro <koron.kaoriya@gmail.com>
|
||||
" THIS FILE IS DISTRIBUTED UNDER THE VIM LICENSE.
|
||||
|
||||
source <sfile>:p:h/menu_japanese_japan.932.vim
|
||||
|
||||
@@ -2,7 +2,10 @@
|
||||
"
|
||||
" Menu Translations: Japanese (EUC-JP)
|
||||
" Translated By: MURAOKA Taro <koron.kaoriya@gmail.com>
|
||||
" Last Change: 21-Mar-2011.
|
||||
" Last Change: 15-Jun-2012.
|
||||
"
|
||||
" Copyright (C) 2001-12 MURAOKA Taro <koron.kaoriya@gmail.com>
|
||||
" THIS FILE IS DISTRIBUTED UNDER THE VIM LICENSE.
|
||||
|
||||
" Quit when menu translations have already been done.
|
||||
if exists("did_menu_trans")
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
" Menu Translations: Japanese (for UNIX)
|
||||
" Translated By: Muraoka Taro <koron@tka.att.ne.jp>
|
||||
" Last Change: 08:50:47 25-Mar-2001.
|
||||
" Translated By: MURAOKA Taro <koron.kaoriya@gmail.com>
|
||||
" Last Change: 15-Jun-2012.
|
||||
"
|
||||
" Copyright (C) 2004,12 MURAOKA Taro <koron.kaoriya@gmail.com>
|
||||
" THIS FILE IS DISTRIBUTED UNDER THE VIM LICENSE.
|
||||
|
||||
" eucjp is the same as euc-jp. Source the other one from here.
|
||||
source <sfile>:p:h/menu_ja_jp.euc-jp.vim
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
" Menu Translations: Japanese (for UNIX)
|
||||
" Translated By: Muraoka Taro <koron@tka.att.ne.jp>
|
||||
" Last Change: 08:50:47 25-Mar-2001.
|
||||
" Translated By: MURAOKA Taro <koron.kaoriya@gmail.com>
|
||||
" Last Change: 15-Jun-2012.
|
||||
"
|
||||
" Copyright (C) 2004,12 MURAOKA Taro <koron.kaoriya@gmail.com>
|
||||
" THIS FILE IS DISTRIBUTED UNDER THE VIM LICENSE.
|
||||
|
||||
" ujis is the same as euc-jp. Source the other one from here.
|
||||
source <sfile>:p:h/menu_ja_jp.euc-jp.vim
|
||||
|
||||
@@ -2,7 +2,10 @@
|
||||
"
|
||||
" Menu Translations: Japanese (UTF-8)
|
||||
" Translated By: MURAOKA Taro <koron.kaoriya@gmail.com>
|
||||
" Last Change: 21-Mar-2011.
|
||||
" Last Change: 15-Jun-2012.
|
||||
"
|
||||
" Copyright (C) 2001-12 MURAOKA Taro <koron.kaoriya@gmail.com>
|
||||
" THIS FILE IS DISTRIBUTED UNDER THE VIM LICENSE.
|
||||
|
||||
" Quit when menu translations have already been done.
|
||||
if exists("did_menu_trans")
|
||||
|
||||
@@ -2,7 +2,10 @@
|
||||
"
|
||||
" Menu Translations: Japanese (CP932)
|
||||
" Translated By: MURAOKA Taro <koron.kaoriya@gmail.com>
|
||||
" Last Change: 21-Mar-2011.
|
||||
" Last Change: 15-Jun-2012.
|
||||
"
|
||||
" Copyright (C) 2001-12 MURAOKA Taro <koron.kaoriya@gmail.com>
|
||||
" THIS FILE IS DISTRIBUTED UNDER THE VIM LICENSE.
|
||||
|
||||
" Quit when menu translations have already been done.
|
||||
if exists("did_menu_trans")
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" 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
|
||||
" Last change: 2012 Jul 25
|
||||
|
||||
" bail out if this isn't wanted (mrsvim.vim uses this).
|
||||
if exists("g:skip_loading_mswin") && g:skip_loading_mswin
|
||||
@@ -42,9 +42,10 @@ cmap <S-Insert> <C-R>+
|
||||
" Visual mode without the +virtualedit feature. They are pasted as if they
|
||||
" were characterwise instead.
|
||||
" Uses the paste.vim autoload script.
|
||||
" Use CTRL-G u to have CTRL-Z only undo the paste.
|
||||
|
||||
exe 'inoremap <script> <C-V>' paste#paste_cmd['i']
|
||||
exe 'vnoremap <script> <C-V>' paste#paste_cmd['v']
|
||||
exe 'inoremap <script> <C-V> <C-G>u' . paste#paste_cmd['i']
|
||||
exe 'vnoremap <script> <C-V> ' . paste#paste_cmd['v']
|
||||
|
||||
imap <S-Insert> <C-V>
|
||||
vmap <S-Insert> <C-V>
|
||||
|
||||
@@ -1,40 +1,95 @@
|
||||
" Vim plugin for converting a syntax highlighted file to HTML.
|
||||
" Maintainer: Ben Fritz <fritzophrenic@gmail.com>
|
||||
" Last Change: 2011 May 26
|
||||
" Last Change: 2012 Jul 12
|
||||
"
|
||||
" The core of the code is in $VIMRUNTIME/autoload/tohtml.vim and
|
||||
" $VIMRUNTIME/syntax/2html.vim
|
||||
"
|
||||
" TODO:
|
||||
" TODO: {{{
|
||||
" * Bug: still a 1px gap throughout the fold column when html_prevent_copy is
|
||||
" "fn" in some browsers. Specifically, in Chromium on Ubuntu (but not Chrome
|
||||
" on Windows). Perhaps it is font related?
|
||||
" * Bug: still some gaps in the fold column when html_prevent_copy contains
|
||||
" 'd' and showing the whole diff (observed in multiple browsers). Only gaps
|
||||
" on diff lines though.
|
||||
" * anchors on each line so you can do file.html#1234 to get to line 1234
|
||||
" * add a modeline to the generated html to set nofoldenable or fdm=manual
|
||||
" because syntax folding takes a terribly long time to work with the weird
|
||||
" formatting the script does.
|
||||
" * Options for generating the CSS in external style sheets. New :TOcss
|
||||
" command to convert the current color scheme into a (mostly) generic CSS
|
||||
" stylesheet which can be re-used. Alternate stylesheet support?
|
||||
" * Undercurl support via CSS3, with fallback to dotted or something:
|
||||
" https://groups.google.com/d/topic/vim_use/BzXA6He1pHg/discussion
|
||||
" * Redo updates for modified default foldtext (v11) when/if the patch is
|
||||
" accepted to modify it.
|
||||
" * Test case +diff_one_file-dynamic_folds+expand_tabs-hover_unfold
|
||||
" +ignore_conceal-ignore_folding+no_foldcolumn+no_pre+no_progress
|
||||
" +number_lines-pre_wrap-use_css+use_xhtml+whole_filler.xhtml
|
||||
" does not show the whole diff filler as it is supposed to.
|
||||
" * Add option for not generating the hyperlink on stuff that looks like a
|
||||
" URL? Or just color the link to fit with the colorscheme (and only special
|
||||
" when hovering)?
|
||||
" * Bug: when 'isprint' is wrong for the current encoding, will generate
|
||||
" invalid content. Can/should anything be done about this? Maybe a separate
|
||||
" plugin to correct 'isprint' based on encoding?
|
||||
" * Check to see if the windows-125\d encodings actually work in Unix without
|
||||
" the 8bit- prefix. Add prefix to autoload dictionaries for Unix if not.
|
||||
" * Font auto-detection similar to
|
||||
" http://www.vim.org/scripts/script.php?script_id=2384 but for a variety of
|
||||
" platforms.
|
||||
" * Error thrown when sourcing 2html.vim directly when plugins are not loaded.
|
||||
" * Pull in code from http://www.vim.org/scripts/script.php?script_id=3113 :
|
||||
" - listchars support
|
||||
" - full-line background highlight
|
||||
" - other?
|
||||
" * Font auto-detection similar to
|
||||
" http://www.vim.org/scripts/script.php?script_id=2384
|
||||
" * Explicitly trigger IE8+ Standards Mode?
|
||||
" * Make it so deleted lines in a diff don't create side-scrolling
|
||||
" * Explicitly trigger IE8+ Standards Mode? Doesn't seem necessary yet.
|
||||
" * Make it so deleted lines in a diff don't create side-scrolling (get it
|
||||
" free with full-line background highlight above).
|
||||
" * Restore open/closed folds and cursor position after processing each file
|
||||
" with option not to restore for speed increase
|
||||
" * Undercurl support via dotted bottom border?
|
||||
" with option not to restore for speed increase.
|
||||
" * Add extra meta info (generation time, etc.)?
|
||||
" * Tidy up so we can use strict doctype in even more situations
|
||||
" * Implementation detail: add threshold for writing the lines to the html
|
||||
" buffer before we're done (5000 or so lines should do it)
|
||||
" * TODO comments for code cleanup scattered throughout
|
||||
"
|
||||
"}}}
|
||||
|
||||
if exists('g:loaded_2html_plugin')
|
||||
finish
|
||||
endif
|
||||
let g:loaded_2html_plugin = 'vim7.3_v10'
|
||||
let g:loaded_2html_plugin = 'vim7.3_v12'
|
||||
|
||||
"
|
||||
" Changelog:
|
||||
" 7.3_v10 (this version): Fix error E684 when converting a range wholly inside
|
||||
" Changelog: {{{
|
||||
"
|
||||
" 7.3_v12 (this version): Fix modeline mangling to also work for when multiple
|
||||
" highlight groups make up the start-of-modeline text.
|
||||
" Improve render time of page with uncopyable regions
|
||||
" by not using one-input-per-char. Change name of
|
||||
" uncopyable option from html_unselectable to
|
||||
" html_prevent_copy. Added html_no_invalid option and
|
||||
" default to inserting invalid markup for uncopyable
|
||||
" regions to prevent MS Word from pasting undeletable
|
||||
" <input> elements. Fix 'cpo' handling (Thilo Six).
|
||||
" 7.3_v12b1: Add html_unselectable option. Rework logic to
|
||||
" eliminate post-processing substitute commands in
|
||||
" favor of doing the work up front. Remove unnecessary
|
||||
" special treatment of 'LineNr' highlight group. Minor
|
||||
" speed improvements. Fix modeline mangling in
|
||||
" generated output so it works for text in the first
|
||||
" column. Fix missing line number and fold column in
|
||||
" diff filler lines. Fix that some fonts have a 1px
|
||||
" gap (using a dirty hack, improvements welcome). Add
|
||||
" "colorscheme" meta tag. Does NOT include support for
|
||||
" the new default foldtext added in v11, as the patch
|
||||
" adding it has not yet been included in Vim.
|
||||
" 7.3_v11 ( unreleased ): Support new default foldtext from patch by Christian
|
||||
" Brabandt in
|
||||
" http://groups.google.com/d/topic/vim_dev/B6FSGfq9VoI/discussion.
|
||||
" This patch has not yet been included in Vim, thus
|
||||
" these changes are removed in the next version.
|
||||
" 7.3_v10 (fd09a9c8468e): Fix error E684 when converting a range wholly inside
|
||||
" multiple nested folds with dynamic folding on.
|
||||
" Also fix problem with foldtext in this situation.
|
||||
" 7.3_v9 (0877b8d6370e): Add html_pre_wrap option active with html_use_css
|
||||
@@ -81,14 +136,15 @@ let g:loaded_2html_plugin = 'vim7.3_v10'
|
||||
" diff colors and the normal syntax colors
|
||||
" 7.3_v1 (e7751177126b): Add conceal support and meta tags in output
|
||||
" Pre-v1 baseline: Mercurial changeset 3c9324c0800e
|
||||
"}}}
|
||||
|
||||
" Define the :TOhtml command when:
|
||||
" - 'compatible' is not set
|
||||
" - this plugin was not already loaded
|
||||
" - user commands are available.
|
||||
" - user commands are available. {{{
|
||||
if !&cp && !exists(":TOhtml") && has("user_commands")
|
||||
command -range=% TOhtml :call tohtml#Convert2HTML(<line1>, <line2>)
|
||||
endif
|
||||
endif "}}}
|
||||
|
||||
" Make sure any patches will probably use consistent indent
|
||||
" vim: ts=8 sw=2 sts=2 noet
|
||||
" vim: ts=8 sw=2 sts=2 noet fdm=marker
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim support file to detect file types in scripts
|
||||
"
|
||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||
" Last change: 2010 Sep 22
|
||||
" Last change: 2012 Aug 30
|
||||
|
||||
" This file is called by an autocommand for every file that has just been
|
||||
" loaded into a buffer. It checks if the type of file can be recognized by
|
||||
@@ -198,7 +198,8 @@ else
|
||||
" - "=== ", line of "=", "---", "+++ " (SVK diff)
|
||||
" - "=== ", "--- ", "+++ " (bzr diff, common case)
|
||||
" - "=== (removed|added|renamed|modified)" (bzr diff, alternative)
|
||||
elseif s:line1 =~ '^\(diff\>\|Only in \|\d\+\(,\d\+\)\=[cda]\d\+\>\|# It was generated by makepatch \|Index:\s\+\f\+\r\=$\|===== \f\+ \d\+\.\d\+ vs edited\|==== //\f\+#\d\+\)'
|
||||
" - "# HG changeset patch" in first line (Mercurial export format)
|
||||
elseif s:line1 =~ '^\(diff\>\|Only in \|\d\+\(,\d\+\)\=[cda]\d\+\>\|# It was generated by makepatch \|Index:\s\+\f\+\r\=$\|===== \f\+ \d\+\.\d\+ vs edited\|==== //\f\+#\d\+\|# HG changeset patch\)'
|
||||
\ || (s:line1 =~ '^--- ' && s:line2 =~ '^+++ ')
|
||||
\ || (s:line1 =~ '^\* looking for ' && s:line2 =~ '^\* comparing to ')
|
||||
\ || (s:line1 =~ '^\*\*\* ' && s:line2 =~ '^--- ')
|
||||
|
||||
@@ -1,13 +1,23 @@
|
||||
*** br_FR.orig.aff 2010-04-14 18:44:36.365731271 +0200
|
||||
--- br_FR.aff 2010-04-14 18:43:31.069137439 +0200
|
||||
*** br_FR.aff.orig 2012-08-01 22:40:24.000000000 +0200
|
||||
--- br_FR.aff 2012-08-01 22:46:03.028851510 +0200
|
||||
***************
|
||||
*** 9,14 ****
|
||||
--- 9,16 ----
|
||||
*** 13,20 ****
|
||||
SET UTF-8
|
||||
TRY esiaùnñrtolcdugmphbyfvkwzESIAÙNÑRTOLCDUGMPHBYFVKWZ'
|
||||
|
||||
# Permet à l'utilitaire en ligne de commande hunspell de fonctionner avec les mots contenant des quotes (lec'hienn, ...)
|
||||
! WORDCHARS '
|
||||
|
||||
FLAG long
|
||||
|
||||
--- 13,22 ----
|
||||
SET UTF-8
|
||||
TRY esiaùnñrtolcdugmphbyfvkwzESIAÙNÑRTOLCDUGMPHBYFVKWZ'
|
||||
|
||||
+ MIDWORD '
|
||||
+
|
||||
PFX m Y 1
|
||||
PFX m 0 m' [aehiouy]
|
||||
# Permet à l'utilitaire en ligne de commande hunspell de fonctionner avec les mots contenant des quotes (lec'hienn, ...)
|
||||
! WORDCHARS '-
|
||||
|
||||
FLAG long
|
||||
|
||||
|
||||
@@ -25,16 +25,16 @@ $SPELLDIR/br.utf-8.spl : $FILES
|
||||
#
|
||||
# Fetching the files from OpenOffice.org.
|
||||
#
|
||||
OODIR = http://extensions.services.openoffice.org/e-files/2207/3
|
||||
:attr {fetch = $OODIR/%file%} dict-br_0.3.oxt
|
||||
OODIR = http://extensions.services.openoffice.org/e-files/2207/6
|
||||
:attr {fetch = $OODIR/%file%} dict-br_0.8.oxt
|
||||
|
||||
# The files don't depend on the .zip file so that we can delete it.
|
||||
# Only download the zip file if the targets don't exist.
|
||||
br_FR.aff br_FR.dic: {buildcheck=}
|
||||
:assertpkg unzip patch
|
||||
:fetch dict-br_0.3.oxt
|
||||
:sys $UNZIP dict-br_0.3.oxt
|
||||
:delete dict-br_0.3.oxt
|
||||
:fetch dict-br_0.8.oxt
|
||||
:sys $UNZIP dict-br_0.8.oxt
|
||||
:delete dict-br_0.8.oxt
|
||||
:copy dictionaries/br_FR.aff br_FR.aff
|
||||
:copy dictionaries/br_FR.dic br_FR.dic
|
||||
# The br_FR.aff file contains a BOM, remove it.
|
||||
@@ -65,12 +65,12 @@ diff:
|
||||
|
||||
check:
|
||||
:assertpkg unzip diff
|
||||
:fetch dict-br_0.3.oxt
|
||||
:fetch dict-br_0.8.oxt
|
||||
:mkdir tmp
|
||||
:cd tmp
|
||||
@try:
|
||||
@import stat
|
||||
:sys $UNZIP ../dict-br_0.3.oxt
|
||||
:sys $UNZIP ../dict-br_0.8.oxt
|
||||
:sys {force} diff ../dictionaries/br_FR.aff br_FR.aff >d
|
||||
@if os.stat('d')[stat.ST_SIZE] > 0:
|
||||
:copy br_FR.aff ../br_FR.new.aff
|
||||
@@ -80,7 +80,7 @@ check:
|
||||
@finally:
|
||||
:cd ..
|
||||
:delete {r}{f}{q} tmp
|
||||
:delete dict-br_0.3.oxt
|
||||
:delete dict-br_0.8.oxt
|
||||
|
||||
|
||||
# vim: set sts=4 sw=4 :
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -7,19 +7,20 @@
|
||||
:progsearch VIM vim
|
||||
|
||||
SPELLDIR = ..
|
||||
VIMRC = ../spell.vim
|
||||
FILES = hu_HU.aff hu_HU.dic
|
||||
|
||||
all: $SPELLDIR/hu.iso-8859-2.spl $SPELLDIR/hu.utf-8.spl \
|
||||
$SPELLDIR/hu.cp1250.spl ../README_hu.txt
|
||||
|
||||
$SPELLDIR/hu.iso-8859-2.spl : $FILES
|
||||
:sys env LANG=hu_HU.ISO8859-2 $VIM -u NONE -e -c "mkspell! $SPELLDIR/hu hu_HU" -c q
|
||||
:sys env LANG=hu_HU.ISO8859-2 $VIM -u $VIMRC -e -c "mkspell! $SPELLDIR/hu hu_HU" -c q
|
||||
|
||||
$SPELLDIR/hu.utf-8.spl : $FILES
|
||||
:sys env LANG=hu_HU.UTF-8 $VIM -u NONE -e -c "mkspell! $SPELLDIR/hu hu_HU" -c q
|
||||
:sys env LANG=hu_HU.UTF-8 $VIM -u $VIMRC -e -c "mkspell! $SPELLDIR/hu hu_HU" -c q
|
||||
|
||||
$SPELLDIR/hu.cp1250.spl : $FILES
|
||||
:sys $VIM -u NONE -e -c "set enc=cp1250" -c "mkspell! $SPELLDIR/hu hu_HU" -c q
|
||||
:sys $VIM -u $VIMRC -e -c "set enc=cp1250" -c "mkspell! $SPELLDIR/hu hu_HU" -c q
|
||||
|
||||
../README_hu.txt: README_hu_HU.txt
|
||||
:copy $source $target
|
||||
|
||||
4
runtime/spell/spell.vim
Normal file
4
runtime/spell/spell.vim
Normal file
@@ -0,0 +1,4 @@
|
||||
" Settings for when generating spellfiles.
|
||||
"
|
||||
" Assume we have 2 Gbyte RAM available.
|
||||
set mkspellmem=1800000,6000,1600
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: Good old CFG files
|
||||
" Maintainer: Igor N. Prischepoff (igor@tyumbit.ru, pri_igor@mail.ru)
|
||||
" Last change: 2001 Sep 02
|
||||
" Last change: 2012 Aug 11
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@@ -18,7 +18,7 @@ syn match UncPath "\\\\\p*" contained
|
||||
"Dos Drive:\Path
|
||||
syn match CfgDirectory "[a-zA-Z]:\\\p*" contained
|
||||
"Parameters
|
||||
syn match CfgParams ".*="me=e-1 contains=CfgComment
|
||||
syn match CfgParams ".\{0}="me=e-1 contains=CfgComment
|
||||
"... and their values (don't want to highlight '=' sign)
|
||||
syn match CfgValues "=.*"hs=s+1 contains=CfgDirectory,UncPath,CfgComment,CfgString,CfgOnOff
|
||||
|
||||
|
||||
@@ -1,25 +1,25 @@
|
||||
" Vim syntax file
|
||||
" Language: CL
|
||||
" (pronounced alphabetically, and NOT known as Clever)
|
||||
" (CL was created by Multibase, http://www.mbase.com.au)
|
||||
" Language: CL
|
||||
" (pronounced alphabetically, and NOT known as Clever)
|
||||
" (CL was created by Multibase, http://www.mbase.com.au)
|
||||
" Filename extensions: *.ent
|
||||
" *.eni
|
||||
" *.eni
|
||||
" Maintainer: Philip Uren <philuSPAX@ieee.org> Remove SPAX spam block
|
||||
" Version: 4
|
||||
" Last Change: May 11 2012
|
||||
" Version: 5
|
||||
" Last Change: Aug 16 2012
|
||||
|
||||
" 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
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
finish
|
||||
finish
|
||||
endif
|
||||
|
||||
if version >= 600
|
||||
setlocal iskeyword=@,48-57,_,-,
|
||||
setlocal iskeyword=@,48-57,_,-,
|
||||
else
|
||||
set iskeyword=@,48-57,_,-,
|
||||
set iskeyword=@,48-57,_,-,
|
||||
endif
|
||||
|
||||
syn case ignore
|
||||
@@ -27,87 +27,87 @@ syn case ignore
|
||||
syn sync lines=300
|
||||
|
||||
"If/else/elsif/endif and while/wend mismatch errors
|
||||
syn match clifError "\<wend\>"
|
||||
syn match clifError "\<elsif\>"
|
||||
syn match clifError "\<else\>"
|
||||
syn match clifError "\<endif\>"
|
||||
syn match clifError "\<wend\>"
|
||||
syn match clifError "\<elsif\>"
|
||||
syn match clifError "\<else\>"
|
||||
syn match clifError "\<endif\>"
|
||||
|
||||
syn match clSpaceError "\s\+$"
|
||||
syn match clSpaceError "\s\+$"
|
||||
|
||||
" If and while regions
|
||||
syn region clLoop transparent matchgroup=clWhile start="\<while\>" matchgroup=clWhile end="\<wend\>" contains=ALLBUT,clBreak,clProcedure
|
||||
syn region clIf transparent matchgroup=clConditional start="\<if\>" matchgroup=clConditional end="\<endif\>" contains=ALLBUT,clBreak,clProcedure
|
||||
syn region clLoop transparent matchgroup=clWhile start="\<while\>" matchgroup=clWhile end="\<wend\>" contains=ALLBUT,clBreak,clProcedure
|
||||
syn region clIf transparent matchgroup=clConditional start="\<if\>" matchgroup=clConditional end="\<endif\>" contains=ALLBUT,clBreak,clProcedure
|
||||
|
||||
" Make those TODO notes and debugging stand out!
|
||||
syn keyword clTodo contained TODO BUG DEBUG FIX
|
||||
syn match clNeedsWork contained "NEED[S]*\s\s*WORK"
|
||||
syn keyword clDebug contained debug
|
||||
syn keyword clTodo contained TODO BUG DEBUG FIX
|
||||
syn match clNeedsWork contained "NEED[S]*\s\s*WORK"
|
||||
syn keyword clDebug contained debug
|
||||
|
||||
syn match clComment "#.*$" contains=clTodo,clNeedsWork
|
||||
syn region clProcedure oneline start="^\s*[{}]" end="$"
|
||||
syn match clInclude "^\s*include\s.*"
|
||||
syn match clComment "#.*$" contains=clTodo,clNeedsWork,@Spell
|
||||
syn region clProcedure oneline start="^\s*[{}]" end="$"
|
||||
syn match clInclude "^\s*include\s.*"
|
||||
|
||||
" We don't put "debug" in the clSetOptions;
|
||||
" we contain it in clSet so we can make it stand out.
|
||||
syn keyword clSetOptions transparent aauto abort align convert E fill fnum goback hangup justify null_exit output rauto rawprint rawdisplay repeat skip tab trim
|
||||
syn match clSet "^\s*set\s.*" contains=clSetOptions,clDebug
|
||||
syn keyword clSetOptions transparent aauto abort align convert E fill fnum goback hangup justify null_exit output rauto rawprint rawdisplay repeat skip tab trim
|
||||
syn match clSet "^\s*set\s.*" contains=clSetOptions,clDebug
|
||||
|
||||
syn match clPreProc "^\s*#P.*"
|
||||
syn match clPreProc "^\s*#P.*"
|
||||
|
||||
syn keyword clConditional else elsif
|
||||
syn keyword clWhile continue endloop
|
||||
syn keyword clConditional else elsif
|
||||
syn keyword clWhile continue endloop
|
||||
" 'break' needs to be a region so we can sync on it above.
|
||||
syn region clBreak oneline start="^\s*break" end="$"
|
||||
syn region clBreak oneline start="^\s*break" end="$"
|
||||
|
||||
syn match clOperator "[!;|)(:.><+*=-]"
|
||||
syn match clOperator "[!;|)(:.><+*=-]"
|
||||
|
||||
syn match clNumber "\<\d\+\(u\=l\=\|lu\|f\)\>"
|
||||
syn match clNumber "\<\d\+\(u\=l\=\|lu\|f\)\>"
|
||||
|
||||
syn region clString matchgroup=clQuote start=+"+ end=+"+ skip=+\\"+
|
||||
syn region clString matchgroup=clQuote start=+'+ end=+'+ skip=+\\'+
|
||||
syn region clString matchgroup=clQuote start=+"+ end=+"+ skip=+\\"+ contains=@Spell
|
||||
syn region clString matchgroup=clQuote start=+'+ end=+'+ skip=+\\'+ contains=@Spell
|
||||
|
||||
syn keyword clReserved ERROR EXIT INTERRUPT LOCKED LREPLY MODE MCOL MLINE MREPLY NULL REPLY V1 V2 V3 V4 V5 V6 V7 V8 V9 ZERO BYPASS GOING_BACK AAUTO ABORT ABORT ALIGN BIGE CONVERT FNUM GOBACK HANGUP JUSTIFY NEXIT OUTPUT RAUTO RAWDISPLAY RAWPRINT REPEAT SKIP TAB TRIM LCOUNT PCOUNT PLINES SLINES SCOLS MATCH LMATCH
|
||||
syn keyword clReserved ERROR EXIT INTERRUPT LOCKED LREPLY MODE MCOL MLINE MREPLY NULL REPLY V1 V2 V3 V4 V5 V6 V7 V8 V9 ZERO BYPASS GOING_BACK AAUTO ABORT ABORT ALIGN BIGE CONVERT FNUM GOBACK HANGUP JUSTIFY NEXIT OUTPUT RAUTO RAWDISPLAY RAWPRINT REPEAT SKIP TAB TRIM LCOUNT PCOUNT PLINES SLINES SCOLS MATCH LMATCH
|
||||
|
||||
syn keyword clFunction asc asize chr name random slen srandom day getarg getcgi getenv lcase scat sconv sdel skey smult srep substr sword trim ucase match
|
||||
syn keyword clFunction asc asize chr name random slen srandom day getarg getcgi getenv lcase scat sconv sdel skey smult srep substr sword trim ucase match
|
||||
|
||||
syn keyword clStatement clear clear_eol clear_eos close copy create unique with where empty define define ldefine delay_form delete escape exit_block exit_do exit_process field fork format get getfile getnext getprev goto head join maintain message no_join on_eop on_key on_exit on_delete openin openout openapp pause popenin popenout popenio print put range read redisplay refresh restart_block screen select sleep text unlock write and not or do
|
||||
syn keyword clStatement clear clear_eol clear_eos close copy create unique with where empty define define ldefine delay_form delete escape exit_block exit_do exit_process field fork format get getfile getnext getprev goto head join maintain message no_join on_eop on_key on_exit on_delete openin openout openapp pause popenin popenout popenio print put range read redisplay refresh restart_block screen select sleep text unlock write and not or do
|
||||
|
||||
" 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_cl_syntax_inits")
|
||||
if version < 508
|
||||
let did_cl_syntax_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
if version >= 508 || !exists("did_cl_syntax_inits")
|
||||
if version < 508
|
||||
let did_cl_syntax_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
|
||||
HiLink clifError Error
|
||||
HiLink clSpaceError Error
|
||||
HiLink clWhile Repeat
|
||||
HiLink clConditional Conditional
|
||||
HiLink clDebug Debug
|
||||
HiLink clNeedsWork Todo
|
||||
HiLink clTodo Todo
|
||||
HiLink clComment Comment
|
||||
HiLink clProcedure Procedure
|
||||
HiLink clBreak Procedure
|
||||
HiLink clInclude Include
|
||||
HiLink clSetOption Statement
|
||||
HiLink clSet Identifier
|
||||
HiLink clPreProc PreProc
|
||||
HiLink clOperator Operator
|
||||
HiLink clNumber Number
|
||||
HiLink clString String
|
||||
HiLink clQuote Delimiter
|
||||
HiLink clReserved Identifier
|
||||
HiLink clFunction Function
|
||||
HiLink clStatement Statement
|
||||
HiLink clifError Error
|
||||
HiLink clSpaceError Error
|
||||
HiLink clWhile Repeat
|
||||
HiLink clConditional Conditional
|
||||
HiLink clDebug Debug
|
||||
HiLink clNeedsWork Todo
|
||||
HiLink clTodo Todo
|
||||
HiLink clComment Comment
|
||||
HiLink clProcedure Procedure
|
||||
HiLink clBreak Procedure
|
||||
HiLink clInclude Include
|
||||
HiLink clSetOption Statement
|
||||
HiLink clSet Identifier
|
||||
HiLink clPreProc PreProc
|
||||
HiLink clOperator Operator
|
||||
HiLink clNumber Number
|
||||
HiLink clString String
|
||||
HiLink clQuote Delimiter
|
||||
HiLink clReserved Identifier
|
||||
HiLink clFunction Function
|
||||
HiLink clStatement Statement
|
||||
|
||||
delcommand HiLink
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "cl"
|
||||
|
||||
" vim: ts=8 sw=4
|
||||
" vim: ts=8 sw=8
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
" Vim syntax file
|
||||
" Language: Cascading Style Sheets
|
||||
" Maintainer: Claudio Fleiner <claudio@fleiner.com>
|
||||
" URL: http://www.fleiner.com/vim/syntax/css.vim
|
||||
" Last Change: 2011 Dec 14
|
||||
" CSS2 by Nikolai Weibull
|
||||
" Full CSS2, HTML4 support by Yeti
|
||||
" Language: Cascading Style Sheets
|
||||
" Previous Contributor List:
|
||||
" Claudio Fleiner <claudio@fleiner.com> (Maintainer)
|
||||
" Yeti (Add full CSS2, HTML4 support)
|
||||
" Nikolai Weibull (Add CSS2 support)
|
||||
" Maintainer: Jules Wang <w.jq0722@gmail.com>
|
||||
" Last Change: 2012 Aug 21
|
||||
|
||||
" For version 5.x: Clear all syntax items
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
@@ -19,6 +20,7 @@ endif
|
||||
|
||||
syn case ignore
|
||||
|
||||
" All HTML4 tags
|
||||
syn keyword cssTagName abbr acronym address applet area a b base
|
||||
syn keyword cssTagName basefont bdo big blockquote body br button
|
||||
syn keyword cssTagName caption center cite code col colgroup dd del
|
||||
@@ -27,32 +29,51 @@ syn keyword cssTagName frameset h1 h2 h3 h4 h5 h6 head hr html img i
|
||||
syn keyword cssTagName iframe img input ins isindex kbd label legend li
|
||||
syn keyword cssTagName link map menu meta noframes noscript ol optgroup
|
||||
syn keyword cssTagName option p param pre q s samp script select small
|
||||
syn keyword cssTagName span strike strong style sub sup tbody td
|
||||
syn keyword cssTagName span strike strong style sub sup table tbody td
|
||||
syn keyword cssTagName textarea tfoot th thead title tr tt ul u var
|
||||
syn match cssTagName "\<table\>"
|
||||
syn keyword cssTagName object
|
||||
|
||||
" HTML5 new tags 5*6=30
|
||||
syn keyword cssTagName article aside audio bdi canvas command
|
||||
syn keyword cssTagName datalist details embed figcaption figure footer
|
||||
syn keyword cssTagName header hgroup keygen mark meter nav
|
||||
syn keyword cssTagName output progress rt rp ruby section
|
||||
syn keyword cssTagName source summary time track video wbr
|
||||
|
||||
" Tags not supported in HTML5
|
||||
syn keyword cssDeprecated acronym applet basefont big center dir
|
||||
syn keyword cssDeprecated font frame frameset noframes strike tt
|
||||
|
||||
"syn match cssTagName "\<table\>"
|
||||
syn match cssTagName "\*"
|
||||
|
||||
syn match cssTagName "@page\>" nextgroup=cssDefinition
|
||||
|
||||
syn match cssSelectorOp "[+>.]"
|
||||
syn match cssSelectorOp2 "[~|]\?=" contained
|
||||
" selectors
|
||||
syn match cssSelectorOp "[,>+]"
|
||||
syn match cssSelectorOp2 "[~|^$*]\?=" contained
|
||||
" FIXME: add HTML5 attribute
|
||||
syn region cssAttributeSelector matchgroup=cssSelectorOp start="\[" end="]" transparent contains=cssUnicodeEscape,cssSelectorOp2,cssStringQ,cssStringQQ
|
||||
|
||||
" .class and #id
|
||||
syn match cssClassName "\.[A-Za-z][A-Za-z0-9_-]\+"
|
||||
|
||||
try
|
||||
syn match cssIdentifier "#[A-Za-z<>-<2D>_@][A-Za-z<>-<2D>0-9_@-]*"
|
||||
catch /^.*/
|
||||
syn match cssIdentifier "#[A-Za-z_@][A-Za-z0-9_@-]*"
|
||||
endtry
|
||||
|
||||
syn match cssTagName "@page\>" nextgroup=cssDefinition
|
||||
" FIXME: use cssVendor here
|
||||
syn match cssTagName "@\(-\(webkit\|moz\|o\|ms\)-\)\=keyframes\>" nextgroup=cssDefinition
|
||||
|
||||
syn match cssMedia "@media\>" nextgroup=cssMediaType skipwhite skipnl
|
||||
syn keyword cssMediaType contained screen print aural braile embosed handheld projection ty tv all nextgroup=cssMediaComma,cssMediaBlock skipwhite skipnl
|
||||
syn match cssMediaComma "," nextgroup=cssMediaType skipwhite skipnl
|
||||
"syn match cssMediaComma "," nextgroup=cssMediaType skipwhite skipnl
|
||||
syn region cssMediaBlock transparent matchgroup=cssBraces start='{' end='}' contains=cssTagName,cssError,cssComment,cssDefinition,cssURL,cssUnicodeEscape,cssIdentifier
|
||||
|
||||
syn match cssValueInteger contained "[-+]\=\d\+"
|
||||
syn match cssValueNumber contained "[-+]\=\d\+\(\.\d*\)\="
|
||||
syn match cssValueLength contained "[-+]\=\d\+\(\.\d*\)\=\(%\|mm\|cm\|in\|pt\|pc\|em\|ex\|px\)"
|
||||
syn match cssValueLength contained "[-+]\=\d\+\(\.\d*\)\=\(%\|mm\|cm\|in\|pt\|pc\|em\|ex\|px\|rem\)"
|
||||
syn match cssValueAngle contained "[-+]\=\d\+\(\.\d*\)\=\(deg\|grad\|rad\)"
|
||||
syn match cssValueTime contained "+\=\d\+\(\.\d*\)\=\(ms\|s\)"
|
||||
syn match cssValueFrequency contained "+\=\d\+\(\.\d*\)\=\(Hz\|kHz\)"
|
||||
@@ -73,20 +94,78 @@ syn keyword cssColor contained aqua black blue fuchsia gray green lime maroon na
|
||||
syn case match
|
||||
syn keyword cssColor contained ActiveBorder ActiveCaption AppWorkspace ButtonFace ButtonHighlight ButtonShadow ButtonText CaptionText GrayText Highlight HighlightText InactiveBorder InactiveCaption InactiveCaptionText InfoBackground InfoText Menu MenuText Scrollbar ThreeDDarkShadow ThreeDFace ThreeDHighlight ThreeDLightShadow ThreeDShadow Window WindowFrame WindowText Background
|
||||
syn case ignore
|
||||
|
||||
syn match cssImportant contained "!\s*important\>"
|
||||
|
||||
syn match cssColor contained "\<transparent\>"
|
||||
syn match cssColor contained "\<white\>"
|
||||
syn match cssColor contained "#[0-9A-Fa-f]\{3\}\>"
|
||||
syn match cssColor contained "#[0-9A-Fa-f]\{6\}\>"
|
||||
"syn match cssColor contained "\<rgb\s*(\s*\d\+\(\.\d*\)\=%\=\s*,\s*\d\+\(\.\d*\)\=%\=\s*,\s*\d\+\(\.\d*\)\=%\=\s*)"
|
||||
|
||||
syn region cssURL contained matchgroup=cssFunctionName start="\<url\s*(" end=")" oneline keepend
|
||||
syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgb\|clip\|attr\|counter\|rect\)\s*(" end=")" oneline keepend
|
||||
syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgb\|clip\|attr\|counter\|rect\|cubic-bezier\)\s*(" end=")" oneline keepend
|
||||
syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgba\|hsl\|hsla\)\s*(" end=")" oneline keepend
|
||||
syn region cssFunction contained matchgroup=cssFunctionName start="\<\(linear\|radial\)-gradient\s*(" end=")" oneline keepend
|
||||
syn region cssFunction contained matchgroup=cssFunctionName start="\<\(matrix\(3d\)\=\|scale\(3d\|X\|Y|\Z\)\=\|translate\(3d\|X\|Y|\Z\)\=\|skew\(X\|Y\)\=\|rotate\(3d\|X\|Y|\Z\)\=\|perspective\)\s*(" end=")" oneline keepend
|
||||
|
||||
syn match cssImportant contained "!\s*important\>"
|
||||
|
||||
syn keyword cssCommonAttr contained auto none inherit
|
||||
" Prop and Attr
|
||||
" Reference: http://www.w3schools.com/cssref/default.asp
|
||||
syn keyword cssCommonAttr contained auto none inherit all
|
||||
syn keyword cssCommonAttr contained top bottom
|
||||
syn keyword cssCommonAttr contained medium normal
|
||||
|
||||
|
||||
syn match cssAnimationProp contained "\<animation\(-\(name\|duration\|timing-function\|delay\|iteration-cout\|play-state\)\)\=\>"
|
||||
|
||||
|
||||
syn keyword cssAnimationAttr contained infinite alternate paused running
|
||||
" bugfix: escape linear-gradient
|
||||
syn match cssAnimationAttr contained "\<linear\(-gradient\)\@!\>"
|
||||
syn match cssAnimationAttr contained "\<ease\(-\(in-out\|out\|in\)\)\=\>"
|
||||
|
||||
syn match cssBackgroundProp contained "\<background\(-\(color\|image\|attachment\|position\|clip\|origin\|size\)\)\=\>"
|
||||
syn keyword cssBackgroundAttr contained center fixed over contain
|
||||
syn match cssBackgroundAttr contained "\<no-repeat\>"
|
||||
syn match cssBackgroundAttr contained "\<repeat\(-[xy]\)\=\>"
|
||||
syn match cssBackgroundAttr contained "\<\(border\|content\|padding\)-box\>"
|
||||
|
||||
|
||||
syn match cssBorderOutlineProp contained "\<border\(-\(top\|right\|bottom\|left\)\)\=\(-\(width\|color\|style\)\)\=\>"
|
||||
syn match cssBorderOutlineProp contained "\<outline\(-\(width\|style\|color\)\)\=\>"
|
||||
syn match cssBorderOutlineProp contained "\<border-\(top\|bottom\)-\(left\|right\)\(-radius\)\=\>"
|
||||
syn match cssBorderOutlineProp contained "\<border-image\(-\(outset\|repeat\|slice\|source\|width\)\)\=\>"
|
||||
syn match cssBorderOutlineProp contained "\<border-radius\>"
|
||||
syn keyword cssBorderOutlineAttr contained thin thick medium
|
||||
syn keyword cssBorderOutlineAttr contained dotted dashed solid double groove ridge inset outset
|
||||
syn keyword cssBorderOutlineAttr contained hidden visible scroll collapse
|
||||
syn keyword cssBorderOutlineAttr contained stretch round
|
||||
|
||||
|
||||
syn match cssBoxProp contained "\<overflow\(-\(x\|y\|style\)\)\=\>"
|
||||
syn match cssBoxProp contained "\<rotation\(-point\)=\>"
|
||||
syn keyword cssBoxAttr contained visible hidden scroll auto
|
||||
syn match cssBoxAttr contained "\<no-\(display\|content\)\>"
|
||||
|
||||
syn keyword cssColorProp contained opacity
|
||||
syn match cssColorProp contained "\<color-profile\>"
|
||||
syn match cssColorProp contained "\<rendering-intent\>"
|
||||
|
||||
|
||||
syn match cssDimensionProp contained "\<\(min\|max\)-\(width\|height\)\>"
|
||||
syn keyword cssDimensionProp contained height
|
||||
syn keyword cssDimensionProp contained width
|
||||
|
||||
" shadow and sizing are in other property groups
|
||||
syn match cssFlexibleBoxProp contained "\<box-\(align\|direction\|flex\|ordinal-group\|orient\|pack\|shadow\|sizing\)\>"
|
||||
syn keyword cssFlexibleBoxAttr contained start end center baseline stretch
|
||||
syn keyword cssFlexibleBoxAttr contained normal reverse
|
||||
syn keyword cssFlexibleBoxAttr contained single mulitple
|
||||
syn keyword cssFlexibleBoxAttr contained horizontal
|
||||
" bugfix: escape vertial-align
|
||||
syn match cssFlexibleBoxAttr contained "\<vertical\(-align\)\@!\>"
|
||||
syn match cssFlexibleBoxAttr contained "\<\(inline\|block\)-axis\>"
|
||||
|
||||
|
||||
syn match cssFontProp contained "\<font\(-\(family\|style\|variant\|weight\|size\(-adjust\)\=\|stretch\)\)\=\>"
|
||||
syn match cssFontAttr contained "\<\(sans-\)\=\<serif\>"
|
||||
syn match cssFontAttr contained "\<small\(-\(caps\|caption\)\)\=\>"
|
||||
@@ -95,67 +174,92 @@ syn match cssFontAttr contained "\<message-box\>"
|
||||
syn match cssFontAttr contained "\<status-bar\>"
|
||||
syn match cssFontAttr contained "\<\(\(ultra\|extra\|semi\|status-bar\)-\)\=\(condensed\|expanded\)\>"
|
||||
syn keyword cssFontAttr contained cursive fantasy monospace italic oblique
|
||||
syn keyword cssFontAttr contained bold bolder lighter larger smaller
|
||||
syn keyword cssFontAttr contained icon menu
|
||||
syn match cssFontAttr contained "\<caption\>"
|
||||
syn keyword cssFontAttr contained large smaller larger
|
||||
syn keyword cssFontAttr contained narrower wider
|
||||
syn keyword cssFontAttr contained bold bolder light lighter larger smaller
|
||||
syn keyword cssFontAttr contained icon menu caption
|
||||
syn keyword cssFontAttr contained large smaller larger narrower wider
|
||||
syn keyword cssFontAttr contained Courier Arial Georgia Times
|
||||
|
||||
syn keyword cssColorProp contained color
|
||||
syn match cssColorProp contained "\<background\(-\(color\|image\|attachment\|position\)\)\=\>"
|
||||
syn keyword cssColorAttr contained center scroll fixed
|
||||
syn match cssColorAttr contained "\<repeat\(-[xy]\)\=\>"
|
||||
syn match cssColorAttr contained "\<no-repeat\>"
|
||||
|
||||
syn keyword cssGeneratedContentProp contained content quotes crop
|
||||
syn match cssGeneratedContentProp contained "\<counter-\(reset\|increment\)\>"
|
||||
syn match cssGeneratedContentProp contained "\<move-to\>"
|
||||
syn match cssGeneratedContentProp contained "\<page-policy\>"
|
||||
syn match cssGeneratedContentAttr contained "\<\(no-\)\=\(open\|close\)-quote\>"
|
||||
|
||||
|
||||
syn match cssGridProp contained "\<grid-\(columns\|rows\)\>"
|
||||
|
||||
syn match cssHyerlinkProp contained "\<target\(-\(name\|new\|position\)\)\=\>"
|
||||
|
||||
syn match cssListProp contained "\<list-style\(-\(type\|position\|image\)\)\=\>"
|
||||
syn match cssListAttr contained "\<\(lower\|upper\)-\(roman\|alpha\|greek\|latin\)\>"
|
||||
syn match cssListAttr contained "\<\(hiragana\|katakana\)\(-iroha\)\=\>"
|
||||
syn match cssListAttr contained "\<\(decimal\(-leading-zero\)\=\|cjk-ideographic\)\>"
|
||||
syn keyword cssListAttr contained disc circle square hebrew armenian georgian
|
||||
syn keyword cssListAttr contained inside outside
|
||||
|
||||
|
||||
syn match cssMarginProp contained "\<margin\(-\(top\|right\|bottom\|left\)\)\=\>"
|
||||
|
||||
syn match cssMultiColumnProp contained "\<column\(-\(\break-\(after\|before\)\|count\|gap\|rule\(-\(color\|style\|width\)\)\=\)\|span\|width\)\=\>"
|
||||
|
||||
|
||||
syn match cssPaddingProp contained "\<padding\(-\(top\|right\|bottom\|left\)\)\=\>"
|
||||
|
||||
syn keyword cssPositioningProp contained bottom clear clip display float left
|
||||
syn keyword cssPositioningProp contained position right top visibility
|
||||
syn match cssPositioningProp contained "\<z-index\>"
|
||||
syn keyword cssPositioningAttr contained block inline compact
|
||||
syn match cssPositioningAttr contained "\<table\(-\(row-gorup\|\(header\|footer\)-group\|row\|column\(-group\)\=\|cell\|caption\)\)\=\>"
|
||||
syn keyword cssPositioningAttr contained left right both
|
||||
syn match cssPositioningAttr contained "\<list-item\>"
|
||||
syn match cssPositioningAttr contained "\<inline-\(block\|table\)\>"
|
||||
syn keyword cssPositioningAttr contained static relative absolute fixed
|
||||
|
||||
syn match cssPrintProp contained "\<page\(-break-\(before\|after\|inside\)\)\=\>"
|
||||
syn keyword cssPrintProp contained orphans widows
|
||||
syn keyword cssPrintAttr contained landscape portrait crop cross always avoid
|
||||
|
||||
syn match cssTableProp contained "\<\(caption-side\|table-layout\|border-collapse\|border-spacing\|empty-cells\)\>"
|
||||
syn keyword cssTableAttr contained fixed collapse separate show hide once always
|
||||
|
||||
|
||||
syn keyword cssTextProp contained color direction
|
||||
syn match cssTextProp "\<\(\(word\|letter\)-spacing\|text\(-\(decoration\|transform\|align\|index\|shadow\)\)\=\|vertical-align\|unicode-bidi\|line-height\)\>"
|
||||
syn match cssTextProp contained "\<text-\(justify\|\outline\|overflow\|warp\|align-last\)\>"
|
||||
syn match cssTextProp contained "\<word-\(break\|\wrap\)\>"
|
||||
syn match cssTextProp contained "\<white-space\>"
|
||||
syn match cssTextProp contained "\<hanging-punctuation\>"
|
||||
syn match cssTextProp contained "\<punctuation-trim\>"
|
||||
syn match cssTextAttr contained "\<line-through\>"
|
||||
syn match cssTextAttr contained "\<text-indent\>"
|
||||
syn match cssTextAttr contained "\<\(text-\)\=\(top\|bottom\)\>"
|
||||
syn keyword cssTextAttr contained ltr rtl embed nowrap
|
||||
syn keyword cssTextAttr contained underline overline blink sub super middle
|
||||
syn keyword cssTextAttr contained capitalize uppercase lowercase center justify baseline sub super
|
||||
syn keyword cssTextAttr contained capitalize uppercase lowercase
|
||||
syn keyword cssTextAttr contained center justify baseline sub super
|
||||
syn match cssTextAttr contained "\<pre\(-\(line\|wrap\)\)\=\>"
|
||||
syn match cssTextAttr contained "\<\(allow\|force\)-end\>"
|
||||
syn keyword cssTextAttr contained start end adjacent
|
||||
syn match cssTextAttr contained "\<inter-\(word\|ideographic\|cluster\)\>"
|
||||
syn keyword cssTextAttr contained distribute kashida first last
|
||||
syn keyword cssTextAttr contained clip ellipsis unrestricted suppress
|
||||
syn match cssTextAttr contained "\<break-all\>"
|
||||
syn match cssTextAttr contained "\<break-word\>"
|
||||
syn keyword cssTextAttr contained hyphenate
|
||||
|
||||
syn match cssBoxProp contained "\<\(margin\|padding\|border\)\(-\(top\|right\|bottom\|left\)\)\=\>"
|
||||
syn match cssBoxProp contained "\<border-\(\(\(top\|right\|bottom\|left\)-\)\=\(width\|color\|style\)\)\=\>"
|
||||
syn match cssBoxProp contained "\<\(width\|z-index\)\>"
|
||||
syn match cssBoxProp contained "\<\(min\|max\)-\(width\|height\)\>"
|
||||
syn keyword cssBoxProp contained width height float clear overflow clip visibility
|
||||
syn keyword cssBoxAttr contained thin thick both
|
||||
syn keyword cssBoxAttr contained dotted dashed solid double groove ridge inset outset
|
||||
syn keyword cssBoxAttr contained hidden visible scroll collapse
|
||||
|
||||
syn keyword cssGeneratedContentProp contained content quotes
|
||||
syn match cssGeneratedContentProp contained "\<counter-\(reset\|increment\)\>"
|
||||
syn match cssGeneratedContentProp contained "\<list-style\(-\(type\|position\|image\)\)\=\>"
|
||||
syn match cssGeneratedContentAttr contained "\<\(no-\)\=\(open\|close\)-quote\>"
|
||||
syn match cssAuralAttr contained "\<lower\>"
|
||||
syn match cssGeneratedContentAttr contained "\<\(lower\|upper\)-\(roman\|alpha\|greek\|latin\)\>"
|
||||
syn match cssGeneratedContentAttr contained "\<\(hiragana\|katakana\)\(-iroha\)\=\>"
|
||||
syn match cssGeneratedContentAttr contained "\<\(decimal\(-leading-zero\)\=\|cjk-ideographic\)\>"
|
||||
syn keyword cssGeneratedContentAttr contained disc circle square hebrew armenian georgian
|
||||
syn keyword cssGeneratedContentAttr contained inside outside
|
||||
syn match cssTransformProp contained "\<transform\(-\(origin\|style\)\)\=\>"
|
||||
syn match cssTransformProp contained "\<perspective\(-origin\)\=\>"
|
||||
syn match cssTransformProp contained "\<backface-visibility\>"
|
||||
|
||||
syn match cssPagingProp contained "\<page\(-break-\(before\|after\|inside\)\)\=\>"
|
||||
syn keyword cssPagingProp contained size marks inside orphans widows
|
||||
syn keyword cssPagingAttr contained landscape portrait crop cross always avoid
|
||||
|
||||
syn keyword cssUIProp contained cursor
|
||||
syn match cssUIProp contained "\<outline\(-\(width\|style\|color\)\)\=\>"
|
||||
syn match cssUIAttr contained "\<[ns]\=[ew]\=-resize\>"
|
||||
syn keyword cssUIAttr contained default crosshair pointer move wait help
|
||||
syn keyword cssUIAttr contained thin thick
|
||||
syn keyword cssUIAttr contained dotted dashed solid double groove ridge inset outset
|
||||
syn keyword cssUIAttr contained invert
|
||||
|
||||
syn match cssRenderAttr contained "\<marker\>"
|
||||
syn match cssRenderProp contained "\<\(display\|marker-offset\|unicode-bidi\|white-space\|list-item\|run-in\|inline-table\)\>"
|
||||
syn keyword cssRenderProp contained position top bottom direction
|
||||
syn match cssRenderProp contained "\<\(left\|right\)\>"
|
||||
syn keyword cssRenderAttr contained block inline compact
|
||||
syn match cssRenderAttr contained "\<table\(-\(row-gorup\|\(header\|footer\)-group\|row\|column\(-group\)\=\|cell\|caption\)\)\=\>"
|
||||
syn keyword cssRenderAttr contained static relative absolute fixed
|
||||
syn keyword cssRenderAttr contained ltr rtl embed bidi-override pre nowrap
|
||||
syn match cssRenderAttr contained "\<bidi-override\>"
|
||||
syn match cssTransitionProp contained "\<transition\(-\(delay\|duration\|property\|timing-function\)\)\=\>"
|
||||
|
||||
syn match cssUIProp contained "\<nav-\(down\|index\|left\|right\|up\)\=\>"
|
||||
syn match cssUIProp contained "\<outline-offset\>"
|
||||
syn match cssUIProp contained "\<box-sizing\>"
|
||||
syn keyword cssUIProp contained appearance icon resize
|
||||
syn keyword cssUIAttr contained window button menu field
|
||||
|
||||
syn match cssAuralProp contained "\<\(pause\|cue\)\(-\(before\|after\)\)\=\>"
|
||||
syn match cssAuralProp contained "\<\(play-during\|speech-rate\|voice-family\|pitch\(-range\)\=\|speak\(-\(punctuation\|numerals\)\)\=\)\>"
|
||||
@@ -171,30 +275,54 @@ syn keyword cssAuralAttr contained below level above higher
|
||||
syn match cssAuralAttr contained "\<\(x-\)\=\(slow\|fast\)\>"
|
||||
syn keyword cssAuralAttr contained faster slower
|
||||
syn keyword cssAuralAttr contained male female child code digits continuous
|
||||
syn match cssAuralAttr contained "\<lower\>"
|
||||
|
||||
" cursor
|
||||
syn keyword cssUIProp contained cursor
|
||||
syn match cssUIAttr contained "\<[ns]\=[ew]\=-resize\>"
|
||||
syn keyword cssUIAttr contained crosshair default help move pointer
|
||||
syn keyword cssUIAttr contained progress wait
|
||||
|
||||
" FIXME: I could not find them in reference
|
||||
syn keyword cssUIAttr contained invert maker size zoom
|
||||
syn match cssRenderAttr contained "\<run-in\>"
|
||||
syn match cssRenderAttr contained "\<text-rendering\>"
|
||||
syn match cssRenderAttr contained "\<font-smoothing\>"
|
||||
syn match cssRenderProp contained "\<marker-offset\>"
|
||||
syn match cssRenderAttr contained "\<bidi-override\>"
|
||||
|
||||
syn match cssTableProp contained "\<\(caption-side\|table-layout\|border-collapse\|border-spacing\|empty-cells\|speak-header\)\>"
|
||||
syn keyword cssTableAttr contained fixed collapse separate show hide once always
|
||||
|
||||
" FIXME: This allows cssMediaBlock before the semicolon, which is wrong.
|
||||
syn region cssInclude start="@import" end=";" contains=cssComment,cssURL,cssUnicodeEscape,cssMediaType
|
||||
syn match cssBraces contained "[{}]"
|
||||
syn match cssError contained "{@<>"
|
||||
syn region cssDefinition transparent matchgroup=cssBraces start='{' end='}' contains=css.*Attr,css.*Prop,cssComment,cssValue.*,cssColor,cssURL,cssImportant,cssError,cssStringQ,cssStringQQ,cssFunction,cssUnicodeEscape
|
||||
syn region cssDefinition transparent matchgroup=cssBraces start='{' end='}' contains=css.*Attr,css.*Prop,cssComment,cssValue.*,cssColor,cssURL,cssImportant,cssError,cssStringQ,cssStringQQ,cssFunction,cssUnicodeEscape,cssVendor,cssDefinition
|
||||
syn match cssBraceError "}"
|
||||
|
||||
" Pseudo class
|
||||
syn match cssPseudoClass ":[A-Za-z0-9_-]*" contains=cssPseudoClassId,cssUnicodeEscape
|
||||
syn keyword cssPseudoClassId contained link visited active hover focus before after left right
|
||||
syn keyword cssPseudoClassId link visited active hover focus before after left right lang
|
||||
syn match cssPseudoClassId contained "\<first\(-\(line\|letter\|child\)\)\=\>"
|
||||
syn region cssPseudoClassLang matchgroup=cssPseudoClassId start=":lang(" end=")" oneline
|
||||
" FIXME: handle functions.
|
||||
"syn region cssPseudoClassLang matchgroup=cssPseudoClassId start="lang(" end=")"
|
||||
syn match cssPseudoClassId contained "\<\(last\|only\|nth\|nth-last\)-child\>"
|
||||
syn match cssPseudoClassId contained "\<\(first\|last\|only\|nth\|nth-last\)-of-type\>"
|
||||
syn keyword cssPseudoClassId root empty target enable disabled checked not invalid
|
||||
syn match cssPseudoClassId contained "::\(-moz-\)\=selection"
|
||||
|
||||
" Comment
|
||||
syn region cssComment start="/\*" end="\*/" contains=@Spell
|
||||
syn region cssComment start="//" skip="\\$" end="$" keepend contains=@Spell
|
||||
|
||||
syn match cssUnicodeEscape "\\\x\{1,6}\s\?"
|
||||
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_-]\+"
|
||||
|
||||
" Vendor Prefix
|
||||
syn match cssVendor contained "\(-\(webkit\|moz\|o\|ms\)-\)"
|
||||
|
||||
|
||||
if main_syntax == "css"
|
||||
syn sync minlines=10
|
||||
@@ -212,31 +340,75 @@ if version >= 508 || !exists("did_css_syn_inits")
|
||||
endif
|
||||
|
||||
HiLink cssComment Comment
|
||||
HiLink cssVendor Comment
|
||||
HiLink cssTagName Statement
|
||||
HiLink cssDeprecated Error
|
||||
HiLink cssSelectorOp Special
|
||||
HiLink cssSelectorOp2 Special
|
||||
HiLink cssFontProp StorageClass
|
||||
HiLink cssColorProp StorageClass
|
||||
HiLink cssTextProp StorageClass
|
||||
|
||||
HiLink cssAnimationProp StorageClass
|
||||
HiLink cssBackgroundProp StorageClass
|
||||
HiLink cssBorderOutlineProp StorageClass
|
||||
HiLink cssBoxProp StorageClass
|
||||
HiLink cssRenderProp StorageClass
|
||||
HiLink cssColorProp StorageClass
|
||||
HiLink cssContentForPagedMediaProp StorageClass
|
||||
HiLink cssDimensionProp StorageClass
|
||||
HiLink cssFlexibleBoxProp StorageClass
|
||||
HiLink cssFontProp StorageClass
|
||||
HiLink cssGeneratedContentProp StorageClass
|
||||
HiLink cssGridProp StorageClass
|
||||
HiLink cssHyerlinkProp StorageClass
|
||||
HiLink cssLineboxProp StorageClass
|
||||
HiLink cssListProp StorageClass
|
||||
HiLink cssMarginProp StorageClass
|
||||
HiLink cssMarqueeProp StorageClass
|
||||
HiLink cssMultiColumnProp StorageClass
|
||||
HiLink cssPaddingProp StorageClass
|
||||
HiLink cssPagedMediaProp StorageClass
|
||||
HiLink cssPositioningProp StorageClass
|
||||
HiLink cssPrintProp StorageClass
|
||||
HiLink cssRubyProp StorageClass
|
||||
HiLink cssSpeechProp StorageClass
|
||||
HiLink cssTableProp StorageClass
|
||||
HiLink cssTextProp StorageClass
|
||||
HiLink cssTransformProp StorageClass
|
||||
HiLink cssTransitionProp StorageClass
|
||||
HiLink cssUIProp StorageClass
|
||||
HiLink cssAuralProp StorageClass
|
||||
HiLink cssRenderProp StorageClass
|
||||
HiLink cssGeneratedContentProp StorageClass
|
||||
HiLink cssPagingProp StorageClass
|
||||
HiLink cssTableProp StorageClass
|
||||
HiLink cssUIProp StorageClass
|
||||
HiLink cssFontAttr Type
|
||||
HiLink cssColorAttr Type
|
||||
HiLink cssTextAttr Type
|
||||
|
||||
HiLink cssAnimationAttr Type
|
||||
HiLink cssBackgroundAttr Type
|
||||
HiLink cssBorderOutlineAttr Type
|
||||
HiLink cssBoxAttr Type
|
||||
HiLink cssRenderAttr Type
|
||||
HiLink cssAuralAttr Type
|
||||
HiLink cssColorAttr Type
|
||||
HiLink cssContentForPagedMediaAttr Type
|
||||
HiLink cssDimensionAttr Type
|
||||
HiLink cssFlexibleBoxAttr Type
|
||||
HiLink cssFontAttr Type
|
||||
HiLink cssGeneratedContentAttr Type
|
||||
HiLink cssPagingAttr Type
|
||||
HiLink cssGridAttr Type
|
||||
HiLink cssHyerlinkAttr Type
|
||||
HiLink cssLineboxAttr Type
|
||||
HiLink cssListAttr Type
|
||||
HiLink cssMarginAttr Type
|
||||
HiLink cssMarqueeAttr Type
|
||||
HiLink cssMultiColumnAttr Type
|
||||
HiLink cssPaddingAttr Type
|
||||
HiLink cssPagedMediaAttr Type
|
||||
HiLink cssPositioningAttr Type
|
||||
HiLink cssPrintAttr Type
|
||||
HiLink cssRubyAttr Type
|
||||
HiLink cssSpeechAttr Type
|
||||
HiLink cssTableAttr Type
|
||||
HiLink cssTextAttr Type
|
||||
HiLink cssTransformAttr Type
|
||||
HiLink cssTransitionAttr Type
|
||||
HiLink cssUIAttr Type
|
||||
HiLink cssAuralAttr Type
|
||||
HiLink cssRenderAttr Type
|
||||
HiLink cssCommonAttr Type
|
||||
|
||||
HiLink cssPseudoClassId PreProc
|
||||
HiLink cssPseudoClassLang Constant
|
||||
HiLink cssValueLength Number
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: Fortran 2008 (and earlier versions: 2003, 95, 90, and 77)
|
||||
" Version: 0.93
|
||||
" Last Change: 2012 Jan. 18
|
||||
" Version: 0.94
|
||||
" Last Change: 2012 June 18
|
||||
" Maintainer: Ajit J. Thakkar (ajit AT unb.ca); <http://www.unb.ca/chem/ajit/>
|
||||
" Usage: For instructions, do :help fortran-syntax from Vim
|
||||
" Credits:
|
||||
@@ -233,7 +233,8 @@ syn match fortranConditional "\<end\s*select"
|
||||
syn match fortranType "\<end\s*type"
|
||||
syn match fortranType "\<in\s*out"
|
||||
|
||||
syn keyword fortranType procedure
|
||||
syn keyword fortranType procedure
|
||||
syn match fortranType "\<module\ze\s\+procedure\>"
|
||||
syn keyword fortranIOR namelist
|
||||
syn keyword fortranConditionalR while
|
||||
syn keyword fortranIntrinsicR achar iachar transfer
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: group(5) user group file
|
||||
" Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2006-04-19
|
||||
" Latest Revision: 2012-08-05
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
@@ -12,7 +12,7 @@ set cpo&vim
|
||||
|
||||
syn match groupBegin display '^' nextgroup=groupName
|
||||
|
||||
syn match groupName contained display '[a-z_][a-z0-9_-]\{0,15}'
|
||||
syn match groupName contained display '[^:]\+'
|
||||
\ nextgroup=groupPasswordColon
|
||||
|
||||
syn match groupPasswordColon contained display ':'
|
||||
@@ -30,7 +30,7 @@ syn match groupGID contained display '\d*'
|
||||
|
||||
syn match groupUserListColon contained display ':' nextgroup=groupUserList
|
||||
|
||||
syn match groupUserList contained '[a-z_][a-z0-9_-]*'
|
||||
syn match groupUserList contained '[^,]\+'
|
||||
\ nextgroup=groupUserListSep
|
||||
|
||||
syn match groupUserListSep contained display ',' nextgroup=groupUserList
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: Vim help file
|
||||
" Maintainer: Bram Moolenaar (Bram@vim.org)
|
||||
" Last Change: 2012 May 18
|
||||
" Last Change: 2012 Jul 16
|
||||
|
||||
" Quit when a (custom) syntax file was already loaded
|
||||
if exists("b:current_syntax")
|
||||
@@ -12,8 +12,8 @@ let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
syn match helpHeadline "^[-A-Z .][-A-Z0-9 .()]*[ \t]\+\*"me=e-1
|
||||
syn match helpSectionDelim "^=\{3,}.*===$"
|
||||
syn match helpSectionDelim "^-\{3,}.*--$"
|
||||
syn match helpSectionDelim "^===.*===$"
|
||||
syn match helpSectionDelim "^---.*--$"
|
||||
syn region helpExample matchgroup=helpIgnore start=" >$" start="^>$" end="^[^ \t]"me=e-1 end="^<"
|
||||
if has("ebcdic")
|
||||
syn match helpHyperTextJump "\\\@<!|[^"*|]\+|" contains=helpBar
|
||||
|
||||
27
runtime/syntax/hgcommit.vim
Normal file
27
runtime/syntax/hgcommit.vim
Normal file
@@ -0,0 +1,27 @@
|
||||
" Vim syntax file
|
||||
" Language: hg (Mercurial) commit file
|
||||
" Maintainer: Ken Takata <kentkt at csc dot jp>
|
||||
" Last Change: 2012 Aug 23
|
||||
" Filenames: hg-editor-*.txt
|
||||
" License: VIM License
|
||||
" URL: https://github.com/k-takata/hg-vim
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
syn match hgcommitComment "^HG:.*$" contains=@NoSpell
|
||||
syn match hgcommitUser "^HG: user: \zs.*$" contains=@NoSpell contained containedin=hgcommitComment
|
||||
syn match hgcommitBranch "^HG: branch \zs.*$" contains=@NoSpell contained containedin=hgcommitComment
|
||||
syn match hgcommitAdded "^HG: \zsadded .*$" contains=@NoSpell contained containedin=hgcommitComment
|
||||
syn match hgcommitChanged "^HG: \zschanged .*$" contains=@NoSpell contained containedin=hgcommitComment
|
||||
syn match hgcommitRemoved "^HG: \zsremoved .*$" contains=@NoSpell contained containedin=hgcommitComment
|
||||
|
||||
hi def link hgcommitComment Comment
|
||||
hi def link hgcommitUser String
|
||||
hi def link hgcommitBranch String
|
||||
hi def link hgcommitAdded Identifier
|
||||
hi def link hgcommitChanged Special
|
||||
hi def link hgcommitRemoved Constant
|
||||
|
||||
let b:current_syntax = "hgcommit"
|
||||
@@ -2,7 +2,7 @@
|
||||
" Language: Lua 4.0, Lua 5.0, Lua 5.1 and Lua 5.2
|
||||
" Maintainer: Marcus Aurelius Farias <masserahguard-lua 'at' yahoo com>
|
||||
" First Author: Carlos Augusto Teixeira Mendes <cmendes 'at' inf puc-rio br>
|
||||
" Last Change: 2012 Feb 07
|
||||
" Last Change: 2012 Aug 12
|
||||
" Options: lua_version = 4 or 5
|
||||
" lua_subversion = 0 (4.0, 5.0) or 1 (5.1) or 2 (5.2)
|
||||
" default 5.2
|
||||
@@ -48,39 +48,41 @@ syn match luaComment "\%^#!.*"
|
||||
|
||||
" catch errors caused by wrong parenthesis and wrong curly brackets or
|
||||
" keywords placed outside their respective blocks
|
||||
syn region luaParen transparent start='(' end=')' contains=ALLBUT,luaParenError,luaTodo,luaSpecial,luaIfThen,luaElseifThen,luaElse,luaThenEnd,luaBlock,luaLoopBlock,luaIn,luaStatement
|
||||
syn region luaTableBlock transparent matchgroup=luaTable start="{" end="}" contains=ALLBUT,luaBraceError,luaTodo,luaSpecial,luaIfThen,luaElseifThen,luaElse,luaThenEnd,luaBlock,luaLoopBlock,luaIn,luaStatement
|
||||
|
||||
syn region luaParen transparent start='(' end=')' contains=TOP,luaParenError
|
||||
syn match luaParenError ")"
|
||||
syn match luaError "}"
|
||||
syn match luaBraceError "}"
|
||||
syn match luaError "\<\%(end\|else\|elseif\|then\|until\|in\)\>"
|
||||
|
||||
" Function declaration
|
||||
syn region luaFunctionBlock transparent matchgroup=luaFunction start="\<function\>" end="\<end\>" contains=TOP
|
||||
|
||||
" else
|
||||
syn keyword luaCondElse matchgroup=luaCond contained containedin=luaCondEnd else
|
||||
|
||||
" then ... end
|
||||
syn region luaCondEnd contained transparent matchgroup=luaCond start="\<then\>" end="\<end\>" contains=TOP
|
||||
|
||||
" elseif ... then
|
||||
syn region luaCondElseif contained containedin=luaCondEnd transparent matchgroup=luaCond start="\<elseif\>" end="\<then\>" contains=TOP
|
||||
" function ... end
|
||||
syn region luaFunctionBlock transparent matchgroup=luaFunction start="\<function\>" end="\<end\>" contains=ALLBUT,luaTodo,luaSpecial,luaElseifThen,luaElse,luaThenEnd,luaIn
|
||||
|
||||
" if ... then
|
||||
syn region luaCondStart transparent matchgroup=luaCond start="\<if\>" end="\<then\>"me=e-4 contains=TOP nextgroup=luaCondEnd skipwhite skipempty
|
||||
syn region luaIfThen transparent matchgroup=luaCond start="\<if\>" end="\<then\>"me=e-4 contains=ALLBUT,luaTodo,luaSpecial,luaElseifThen,luaElse,luaIn nextgroup=luaThenEnd skipwhite skipempty
|
||||
|
||||
" then ... end
|
||||
syn region luaThenEnd contained transparent matchgroup=luaCond start="\<then\>" end="\<end\>" contains=ALLBUT,luaTodo,luaSpecial,luaThenEnd,luaIn
|
||||
|
||||
" elseif ... then
|
||||
syn region luaElseifThen contained transparent matchgroup=luaCond start="\<elseif\>" end="\<then\>" contains=ALLBUT,luaTodo,luaSpecial,luaElseifThen,luaElse,luaThenEnd,luaIn
|
||||
|
||||
" else
|
||||
syn keyword luaElse contained else
|
||||
|
||||
" do ... end
|
||||
syn region luaBlock transparent matchgroup=luaStatement start="\<do\>" end="\<end\>" contains=TOP
|
||||
syn region luaBlock transparent matchgroup=luaStatement start="\<do\>" end="\<end\>" contains=ALLBUT,luaTodo,luaSpecial,luaElseifThen,luaElse,luaThenEnd,luaIn
|
||||
|
||||
" repeat ... until
|
||||
syn region luaRepeatBlock transparent matchgroup=luaRepeat start="\<repeat\>" end="\<until\>" contains=TOP
|
||||
syn region luaLoopBlock transparent matchgroup=luaRepeat start="\<repeat\>" end="\<until\>" contains=ALLBUT,luaTodo,luaSpecial,luaElseifThen,luaElse,luaThenEnd,luaIn
|
||||
|
||||
" while ... do
|
||||
syn region luaWhile transparent matchgroup=luaRepeat start="\<while\>" end="\<do\>"me=e-2 contains=TOP nextgroup=luaBlock skipwhite skipempty
|
||||
syn region luaLoopBlock transparent matchgroup=luaRepeat start="\<while\>" end="\<do\>"me=e-2 contains=ALLBUT,luaTodo,luaSpecial,luaIfThen,luaElseifThen,luaElse,luaThenEnd,luaIn nextgroup=luaBlock skipwhite skipempty
|
||||
|
||||
" for ... do and for ... in ... do
|
||||
syn region luaFor transparent matchgroup=luaRepeat start="\<for\>" end="\<do\>"me=e-2 contains=TOP nextgroup=luaBlock skipwhite skipempty
|
||||
syn region luaLoopBlock transparent matchgroup=luaRepeat start="\<for\>" end="\<do\>"me=e-2 contains=ALLBUT,luaTodo,luaSpecial,luaIfThen,luaElseifThen,luaElse,luaThenEnd nextgroup=luaBlock skipwhite skipempty
|
||||
|
||||
syn keyword luaFor contained containedin=luaFor in
|
||||
syn keyword luaIn contained in
|
||||
|
||||
" other keywords
|
||||
syn keyword luaStatement return local break
|
||||
@@ -131,9 +133,6 @@ if lua_version >= 5
|
||||
endif
|
||||
endif
|
||||
|
||||
" tables
|
||||
syn region luaTableBlock transparent matchgroup=luaTable start="{" end="}" contains=TOP,luaStatement
|
||||
|
||||
syn keyword luaFunc assert collectgarbage dofile error next
|
||||
syn keyword luaFunc print rawget rawset tonumber tostring type _VERSION
|
||||
|
||||
@@ -343,15 +342,17 @@ if version >= 508 || !exists("did_lua_syntax_inits")
|
||||
HiLink luaString2 String
|
||||
HiLink luaNumber Number
|
||||
HiLink luaOperator Operator
|
||||
HiLink luaIn Operator
|
||||
HiLink luaConstant Constant
|
||||
HiLink luaCond Conditional
|
||||
HiLink luaCondElse Conditional
|
||||
HiLink luaElse Conditional
|
||||
HiLink luaFunction Function
|
||||
HiLink luaComment Comment
|
||||
HiLink luaTodo Todo
|
||||
HiLink luaTable Structure
|
||||
HiLink luaError Error
|
||||
HiLink luaParenError Error
|
||||
HiLink luaBraceError Error
|
||||
HiLink luaSpecial SpecialChar
|
||||
HiLink luaFunc Identifier
|
||||
HiLink luaLabel Label
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
" ninja build file syntax.
|
||||
" Language: ninja build file as described at
|
||||
" http://martine.github.com/ninja/manual.html
|
||||
" Version: 1.1
|
||||
" Last Change: 2012/05/13
|
||||
" Version: 1.2
|
||||
" Last Change: 2012/06/01
|
||||
" Maintainer: Nicolas Weber <nicolasweber@gmx.de>
|
||||
|
||||
" ninja lexer and parser are at
|
||||
@@ -15,7 +15,7 @@ endif
|
||||
|
||||
syn case match
|
||||
|
||||
syn match ninjaComment /#.*/
|
||||
syn match ninjaComment /#.*/ contains=@Spell
|
||||
|
||||
" Toplevel statements are the ones listed here and
|
||||
" toplevel variable assignments (ident '=' value).
|
||||
|
||||
@@ -3,20 +3,20 @@
|
||||
" Filename extensions: *.p (collides with Pascal),
|
||||
" *.i (collides with assembler)
|
||||
" *.w (collides with cweb)
|
||||
" Maintainer: Philip Uren <philuSPAX@ieee.org> Remove SPAX spam block
|
||||
" Contributors: Chris Ruprecht <chris@ruprecht.org>
|
||||
" Philip Uren <philu@computer.org>
|
||||
" Mikhail Kuperblum <mikhail@whasup.com>
|
||||
" John Florian <jflorian@voyager.net>
|
||||
" Version: 11
|
||||
" Last Change: May 11 2012
|
||||
" Maintainer: Philip Uren <philuSPAX@ieee.org> Remove SPAX spam block
|
||||
" Contributors: Chris Ruprecht <chris@ruprecht.org>
|
||||
" Philip Uren <philu@computer.org>
|
||||
" Mikhail Kuperblum <mikhail@whasup.com>
|
||||
" John Florian <jflorian@voyager.net>
|
||||
" Version: 12
|
||||
" Last Change: Aug 16 2012
|
||||
|
||||
" For version 5.x: Clear all syntax item
|
||||
" For version 6.x: Quit when a syntax file was already loaded
|
||||
if version < 600
|
||||
syntax clear
|
||||
syntax clear
|
||||
elseif exists("b:current_syntax")
|
||||
finish
|
||||
finish
|
||||
endif
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
@@ -34,7 +34,7 @@ set expandtab
|
||||
syn case ignore
|
||||
|
||||
" Progress Blocks of code and mismatched "end." errors.
|
||||
syn match ProgressEndError "\<end\>"
|
||||
syn match ProgressEndError "\<end\>"
|
||||
syn region ProgressDoBlock transparent matchgroup=ProgressDo start="\<do\>" matchgroup=ProgressDo end="\<end\>" contains=ALLBUT,ProgressProcedure,ProgressFunction
|
||||
syn region ProgressForBlock transparent matchgroup=ProgressFor start="\<for\>" matchgroup=ProgressFor end="\<end\>" contains=ALLBUT,ProgressProcedure,ProgressFunction
|
||||
syn region ProgressRepeatBlock transparent matchgroup=ProgressRepeat start="\<repeat\>" matchgroup=ProgressRepeat end="\<end\>" contains=ALLBUT,ProgressProcedure,ProgressFunction
|
||||
@@ -44,20 +44,20 @@ syn region ProgressCaseBlock transparent matchgroup=ProgressCase start="\<case\>
|
||||
" and they could go in ProgressReserved,
|
||||
" but I found it more helpful to highlight them in a different color.
|
||||
syn keyword ProgressConditional if else then when otherwise
|
||||
syn keyword ProgressFor each where
|
||||
syn keyword ProgressFor each where
|
||||
|
||||
" Make those TODO and debugging notes stand out!
|
||||
syn keyword ProgressTodo contained TODO BUG FIX
|
||||
syn keyword ProgressDebug contained DEBUG
|
||||
syn keyword ProgressTodo contained TODO BUG FIX
|
||||
syn keyword ProgressDebug contained DEBUG
|
||||
syn keyword ProgressDebug debugger
|
||||
|
||||
" If you like to highlight the whole line of
|
||||
" the start and end of procedures
|
||||
" to make the whole block of code stand out:
|
||||
syn match ProgressProcedure "^\s*procedure.*"
|
||||
syn match ProgressProcedure "^\s*end\s\s*procedure.*"
|
||||
syn match ProgressFunction "^\s*function.*"
|
||||
syn match ProgressFunction "^\s*end\s\s*function.*"
|
||||
syn match ProgressProcedure "^\s*procedure.*"
|
||||
syn match ProgressProcedure "^\s*end\s\s*procedure.*"
|
||||
syn match ProgressFunction "^\s*function.*"
|
||||
syn match ProgressFunction "^\s*end\s\s*function.*"
|
||||
" ... otherwise use this:
|
||||
" syn keyword ProgressFunction procedure function
|
||||
|
||||
@@ -99,14 +99,14 @@ syn keyword ProgressReserved window-maxim[ized] window-minim[ized] window-normal
|
||||
" Strings. Handles embedded quotes.
|
||||
" Note that, for some reason, Progress doesn't use the backslash, "\"
|
||||
" as the escape character; it uses tilde, "~".
|
||||
syn region ProgressString matchgroup=ProgressQuote start=+"+ end=+"+ skip=+\~'\|\~\~+
|
||||
syn region ProgressString matchgroup=ProgressQuote start=+'+ end=+'+ skip=+\~'\|\~\~+
|
||||
syn region ProgressString matchgroup=ProgressQuote start=+"+ end=+"+ skip=+\~'\|\~\~+ contains=@Spell
|
||||
syn region ProgressString matchgroup=ProgressQuote start=+'+ end=+'+ skip=+\~'\|\~\~+ contains=@Spell
|
||||
|
||||
syn match ProgressIdentifier "\<[a-zA-Z_][a-zA-Z0-9_]*\>()"
|
||||
|
||||
" syn match ProgressDelimiter "()"
|
||||
|
||||
syn match ProgressMatrixDelimiter "[][]"
|
||||
syn match ProgressMatrixDelimiter "[][]"
|
||||
" If you prefer you can highlight the range:
|
||||
"syn match ProgressMatrixDelimiter "[\d\+\.\.\d\+]"
|
||||
|
||||
@@ -114,7 +114,7 @@ syn match ProgressNumber "\<\-\=\d\+\(u\=l\=\|lu\|f\)\>"
|
||||
syn match ProgressByte "\$[0-9a-fA-F]\+"
|
||||
|
||||
" More values: Logicals, and Progress's unknown value, ?.
|
||||
syn match ProgressNumber "?"
|
||||
syn match ProgressNumber "?"
|
||||
syn keyword ProgressNumber true false yes no
|
||||
|
||||
" If you don't like tabs:
|
||||
@@ -123,9 +123,9 @@ syn match ProgressShowTab "\t"
|
||||
" If you don't like white space on the end of lines, uncomment this:
|
||||
" syn match ProgressSpaceError "\s\+$"
|
||||
|
||||
syn region ProgressComment start="/\*" end="\*/" contains=ProgressComment,ProgressTodo,ProgressDebug
|
||||
syn region ProgressInclude start="^[ ]*[{]" end="[}]" contains=ProgressPreProc,ProgressOperator,ProgressString,ProgressComment
|
||||
syn region ProgressPreProc start="&" end="\>" contained
|
||||
syn region ProgressComment start="/\*" end="\*/" contains=ProgressComment,ProgressTodo,ProgressDebug,@Spell
|
||||
syn region ProgressInclude start="^[ ]*[{]" end="[}]" contains=ProgressPreProc,ProgressOperator,ProgressString,ProgressComment
|
||||
syn region ProgressPreProc start="&" end="\>" contained
|
||||
|
||||
" This next line works reasonably well.
|
||||
" syn match ProgressOperator "[!;|)(:.><+*=-]"
|
||||
@@ -277,7 +277,7 @@ syn keyword ProgressOperator write-fragment write-message write-processing-instr
|
||||
syn keyword ProgressOperator xml-data-type xml-node-name xml-node-type xml-schema-pat[h] xml-suppress-namespace-processing y y-of year year-offset yes-no
|
||||
syn keyword ProgressOperator yes-no-cancel
|
||||
|
||||
syn keyword ProgressType char[acter] int[eger] int64 dec[imal] log[ical] da[te] datetime datetime-tz
|
||||
syn keyword ProgressType char[acter] int[eger] int64 dec[imal] log[ical] da[te] datetime datetime-tz
|
||||
|
||||
syn sync lines=800
|
||||
|
||||
@@ -285,40 +285,40 @@ syn sync lines=800
|
||||
" 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_progress_syntax_inits")
|
||||
if version < 508
|
||||
let did_progress_syntax_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
if version < 508
|
||||
let did_progress_syntax_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
|
||||
" The default methods for highlighting. Can be overridden later.
|
||||
HiLink ProgressByte Number
|
||||
HiLink ProgressCase Repeat
|
||||
HiLink ProgressComment Comment
|
||||
HiLink ProgressConditional Conditional
|
||||
HiLink ProgressDebug Debug
|
||||
HiLink ProgressDo Repeat
|
||||
HiLink ProgressEndError Error
|
||||
HiLink ProgressFor Repeat
|
||||
HiLink ProgressFunction Procedure
|
||||
HiLink ProgressIdentifier Identifier
|
||||
HiLink ProgressInclude Include
|
||||
HiLink ProgressMatrixDelimiter Identifier
|
||||
HiLink ProgressNumber Number
|
||||
HiLink ProgressOperator Operator
|
||||
HiLink ProgressPreProc PreProc
|
||||
HiLink ProgressProcedure Procedure
|
||||
HiLink ProgressQuote Delimiter
|
||||
HiLink ProgressRepeat Repeat
|
||||
HiLink ProgressReserved Statement
|
||||
HiLink ProgressSpaceError Error
|
||||
HiLink ProgressString String
|
||||
HiLink ProgressTodo Todo
|
||||
HiLink ProgressType Statement
|
||||
HiLink ProgressShowTab Error
|
||||
" The default methods for highlighting. Can be overridden later.
|
||||
HiLink ProgressByte Number
|
||||
HiLink ProgressCase Repeat
|
||||
HiLink ProgressComment Comment
|
||||
HiLink ProgressConditional Conditional
|
||||
HiLink ProgressDebug Debug
|
||||
HiLink ProgressDo Repeat
|
||||
HiLink ProgressEndError Error
|
||||
HiLink ProgressFor Repeat
|
||||
HiLink ProgressFunction Procedure
|
||||
HiLink ProgressIdentifier Identifier
|
||||
HiLink ProgressInclude Include
|
||||
HiLink ProgressMatrixDelimiter Identifier
|
||||
HiLink ProgressNumber Number
|
||||
HiLink ProgressOperator Operator
|
||||
HiLink ProgressPreProc PreProc
|
||||
HiLink ProgressProcedure Procedure
|
||||
HiLink ProgressQuote Delimiter
|
||||
HiLink ProgressRepeat Repeat
|
||||
HiLink ProgressReserved Statement
|
||||
HiLink ProgressSpaceError Error
|
||||
HiLink ProgressString String
|
||||
HiLink ProgressTodo Todo
|
||||
HiLink ProgressType Statement
|
||||
HiLink ProgressShowTab Error
|
||||
|
||||
delcommand HiLink
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "progress"
|
||||
@@ -326,4 +326,4 @@ let b:current_syntax = "progress"
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" vim: ts=8 sw=4
|
||||
" vim: ts=8 sw=8
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim syntax file
|
||||
" Language: reStructuredText documentation format
|
||||
" Maintainer: Nikolai Weibull <now@bitwi.se>
|
||||
" Latest Revision: 2010-01-23
|
||||
" Latest Revision: 2012-08-05
|
||||
|
||||
if exists("b:current_syntax")
|
||||
finish
|
||||
@@ -141,8 +141,8 @@ syn sync minlines=50 linebreaks=1
|
||||
|
||||
hi def link rstTodo Todo
|
||||
hi def link rstComment Comment
|
||||
hi def link rstSections Type
|
||||
hi def link rstTransition Type
|
||||
hi def link rstSections Title
|
||||
hi def link rstTransition rstSections
|
||||
hi def link rstLiteralBlock String
|
||||
hi def link rstQuotedLiteralBlock String
|
||||
hi def link rstDoctestBlock PreProc
|
||||
|
||||
@@ -2,14 +2,15 @@
|
||||
" Language: Subversion (svn) commit file
|
||||
" Maintainer: Dmitry Vasiliev <dima at hlabs dot org>
|
||||
" URL: https://github.com/hdima/vim-scripts/blob/master/syntax/svn.vim
|
||||
" Last Change: 2012-04-15
|
||||
" Last Change: 2012-07-21
|
||||
" Filenames: svn-commit*.tmp
|
||||
" Version: 1.8
|
||||
" Version: 1.9
|
||||
|
||||
" Contributors:
|
||||
" Stefano Zacchiroli
|
||||
" A. S. Budden
|
||||
" Myk Taylor
|
||||
" Ingo Karkat
|
||||
|
||||
" For version 5.x: Clear all syntax items.
|
||||
" For version 6.x: Quit when a syntax file was already loaded.
|
||||
@@ -19,7 +20,9 @@ elseif exists("b:current_syntax")
|
||||
finish
|
||||
endif
|
||||
|
||||
syn region svnRegion start="^--.*--$" end="\%$" contains=ALL contains=@NoSpell
|
||||
syn region svnText start="\%^" end="^--.*--$"me=s-1 contains=@Spell
|
||||
|
||||
syn region svnRegion start="^--.*--$" end="\%$" contains=ALL
|
||||
syn match svnRemoved "^D .*$" contained
|
||||
syn match svnRenamed "^R[ M][ U][ +] .*$" contained
|
||||
syn match svnAdded "^A[ M][ U][ +] .*$" contained
|
||||
|
||||
@@ -76,7 +76,7 @@ syn case match
|
||||
" Function Names {{{2
|
||||
syn keyword vimFuncName contained abs append argv atan2 bufexists bufname byte2line ceil cindent complete confirm cosh cursor did_filetype empty eventhandler exp extend filewritable findfile fmod foldclosed foldtext function getbufline getcharmod getcmdtype getfperm getftype getmatches getqflist gettabvar getwinposy globpath haslocaldir histdel hlexists iconv input inputrestore insert items len line localtime map match matchdelete matchstr min mode nextnonblank pathshorten prevnonblank pumvisible readfile reltimestr remote_foreground remote_read remove repeat reverse search searchpair searchpos serverlist setcmdpos setloclist setpos setreg settabwinvar shellescape sin sort spellbadword split str2float strchars strftime string strpart strtrans submatch synconcealed synIDattr synstack tabpagebuflist tabpagewinnr taglist tanh tolower tr type undotree virtcol winbufnr winheight winnr winrestview winwidth
|
||||
syn keyword vimFuncName contained acos argc asin browse buflisted bufnr byteidx changenr clearmatches complete_add copy count deepcopy diff_filler escape executable expand feedkeys filter float2nr fnameescape foldclosedend foldtextresult garbagecollect getbufvar getcmdline getcwd getfsize getline getpid getreg gettabwinvar getwinvar has hasmapto histget hlID indent inputdialog inputsave isdirectory join libcall line2byte log maparg matchadd matchend max mkdir mzeval nr2char pow printf range reltime remote_expr remote_peek remote_send rename resolve round searchdecl searchpairpos server2client setbufvar setline setmatches setqflist settabvar setwinvar simplify sinh soundfold spellsuggest sqrt str2nr strdisplaywidth stridx strlen strridx strwidth substitute synID synIDtrans system tabpagenr tagfiles tan tempname toupper trunc undofile values visualmode wincol winline winrestcmd winsaveview writefile
|
||||
syn keyword vimFuncName contained add argidx atan browsedir bufloaded bufwinnr call char2nr col complete_check cos cscope_connection delete diff_hlID eval exists expr8 filereadable finddir floor fnamemodify foldlevel foreground get getchar getcmdpos getfontname getftime getloclist getpos getregtype getwinposx glob has_key histadd histnr hostname index inputlist inputsecret islocked keys libcallnr lispindent log10 mapcheck matcharg matchlist
|
||||
syn keyword vimFuncName contained add argidx atan browsedir bufloaded bufwinnr call char2nr col complete_check cos cscope_connection delete diff_hlID eval exists expr8 filereadable finddir floor fnamemodify foldlevel foreground get getchar getcmdpos getfontname getftime getloclist getpos getregtype getwinposx glob has_key histadd histnr hostname index inputlist inputsecret islocked keys libcallnr lispindent log10 mapcheck matcharg matchlist pyeval py3eval luaeval
|
||||
|
||||
"--- syntax above generated by mkvimvim ---
|
||||
" Special Vim Highlighting (not automatic) {{{1
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
# vimparse.pl - Reformats the error messages of the Perl interpreter for use
|
||||
# with the quickfix mode of Vim
|
||||
#
|
||||
# Copyright (<EFBFBD>) 2001 by J<EFBFBD>rg Ziefle <joerg.ziefle@gmx.de>
|
||||
# Copyright (c) 2001 by Joerg Ziefle <joerg.ziefle@gmx.de>
|
||||
# You may use and distribute this software under the same terms as Perl itself.
|
||||
#
|
||||
# Usage: put one of the two configurations below in your ~/.vimrc (without the
|
||||
|
||||
@@ -2,16 +2,16 @@
|
||||
== <20> d v <20> z <20> l j <20> k a V I M - o k t a t <20> b a n - 1.5-<2D>s verzi<7A> ==
|
||||
===============================================================================
|
||||
|
||||
A Vim egy nagyon hat<61>kony szerkeszt<7A>, amelnyek rengeteg utas<61>t<EFBFBD>sa
|
||||
A Vim egy nagyon hat<61>kony szerkeszt<7A>, amelynek rengeteg utas<61>t<EFBFBD>sa
|
||||
van, t<>l sok, hogy egy ilyen oktat<61>ban (tutorban), mint az itteni
|
||||
mindet elmagyar<61>zzuk. Ez az oktat<61> arra t<>rekszik, hogy annyit
|
||||
elmagyar<61>zzon, amennyi el<65>g, hogy k<>nnyed<65>n haszn<7A>ljuk a Vim-et, az
|
||||
<20>ltal<61>nos c<>l<EFBFBD> sz<73>vegszerkeszt<7A>t.
|
||||
|
||||
A feladatok megold<6C>s<EFBFBD>hoz 25-30 perc sz<73>ks<6B>ges att<74>l f<>gg<67>en,
|
||||
mennyit t<>lt<6C>nk a kis<EFBFBD>rletez<EFBFBD>ssel.
|
||||
mennyit t<>lt<6C>nk a k<EFBFBD>s<EFBFBD>rletez<EFBFBD>ssel.
|
||||
|
||||
A leck<63>ben szerepl<70> utas<61>t<EFBFBD>sok m<>dos<6F>tani fogj<67>k a sz<73>vegek.
|
||||
A leck<63>ben szerepl<70> utas<61>t<EFBFBD>sok m<>dos<6F>tani fogj<67>k a sz<73>veget.
|
||||
K<>sz<73>tsen m<>solatot err<72>l a f<>jlr<6C>l, ha gyakorolni akar.
|
||||
(Ha "vimtutor"-ral ind<6E>totta, akkor ez m<>r egy m<>solat.)
|
||||
|
||||
@@ -81,7 +81,7 @@ Megj: A kurzor gomboknak is m
|
||||
2. A hib<69>k kijav<61>t<EFBFBD>s<EFBFBD>hoz mozgassa a kurzort am<61>g a t<>rlend<6E> karakter
|
||||
f<>l<EFBFBD> nem <20>r.
|
||||
|
||||
3. Nyomja meg az x gombot, hogy t<>r<EFBFBD>lje a nemk<6D>v<EFBFBD>nt karaktert.
|
||||
3. Nyomja meg az x gombot, hogy t<>r<EFBFBD>lje a nem k<EFBFBD>v<EFBFBD>nt karaktert.
|
||||
|
||||
4. Ism<73>telje a 2, 3, 4-es l<>p<EFBFBD>seket, hogy kijav<61>tsa a mondatot.
|
||||
|
||||
@@ -172,7 +172,7 @@ Most folytassuk a 2. leck
|
||||
|
||||
3. Mozgassa a kurzort a helyes sor v<>g<EFBFBD>re (az els<6C> . UT<55>N)!
|
||||
|
||||
4. d$ beg<65>pel<65>s<EFBFBD>velt<6C>r<EFBFBD>lje a sor v<>g<EFBFBD>t!
|
||||
4. d$ beg<65>pel<65>s<EFBFBD>vel t<EFBFBD>r<EFBFBD>lje a sor v<>g<EFBFBD>t!
|
||||
|
||||
---> Valaki a sor v<>g<EFBFBD>t k<>tszer g<>pelte be. k<>tszer g<>pelte be.
|
||||
|
||||
@@ -184,30 +184,30 @@ Most folytassuk a 2. leck
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
2.3. lecke: UTAS<41>T<EFBFBD>SOKR<4B>L <20>S OBJEKTUMOKR<EFBFBD>L
|
||||
2.3. lecke: UTAS<41>T<EFBFBD>SOKR<4B>L <20>S MOZG<EFBFBD>SOKR<EFBFBD>L
|
||||
|
||||
|
||||
A d (delete=t<>rl<72>s) utas<61>t<EFBFBD>s form<72>ja a k<>vetkez<65>:
|
||||
|
||||
[sz<73>m] d objektum VAGY d [sz<73>m] objektum
|
||||
[sz<73>m] d mozg<EFBFBD>s VAGY d [sz<73>m] mozg<EFBFBD>s
|
||||
Ahol:
|
||||
sz<73>m - h<>nyszor hajt<6A>djon v<>gre a parancs (elhagyhat<61>, alap<61>rt<72>k=1).
|
||||
d - a t<>rl<72>s (delete) utas<61>t<EFBFBD>s.
|
||||
objektum - amin a parancsnak teljes<65>lnie kell (al<61>bb list<73>zva).
|
||||
mozg<EFBFBD>s - amin a parancsnak teljes<65>lnie kell (al<61>bb list<73>zva).
|
||||
|
||||
Objektumok r<>vid list<73>ja:
|
||||
Mozg<EFBFBD>sok r<>vid list<73>ja:
|
||||
w - a kurzort<72>l a sz<73> v<>g<EFBFBD>ig, bele<6C>rtve a sz<73>k<EFBFBD>zt.
|
||||
e - a kurzort<72>l a sz<73> v<>g<EFBFBD>ig, NEM bele<6C>rtve a sz<73>k<EFBFBD>zt.
|
||||
$ - a kurzort<72>l a sor v<>g<EFBFBD>ig.
|
||||
|
||||
MEGJ: V<EFBFBD>llalkoz<EFBFBD>bbak kedv<64><76>rt, csup<75>n az objektum beg<65>pel<65>s<EFBFBD>vel parancs n<>lk<6C>l
|
||||
a kurzor oda ker<65>l, amit az objektumlista megad.
|
||||
MEGJ: Csup<EFBFBD>n a mozg<7A>s beg<65>pel<65>s<EFBFBD>vel (parancs n<>lk<6C>l)
|
||||
a kurzor mozg<EFBFBD>s <20>ltal megadott helyre ker<65>l.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
2.4. lecke: EGY KIV<49>TEL A 'PARANCSOBJEKTUM' AL<41>L
|
||||
2.4. lecke: EG<EFBFBD>SZ SOROK FELDOLGOZ<4F>SA
|
||||
|
||||
|
||||
** dd be<62>r<EFBFBD>s<EFBFBD>val t<>r<EFBFBD>lheti az eg<65>sz sort. **
|
||||
@@ -217,8 +217,8 @@ MEGJ: V
|
||||
|
||||
1. Mozgassa a kurzort az al<61>bbi kifejez<65>sek m<>sodik sor<6F>ra!
|
||||
2. dd beg<65>pel<65>s<EFBFBD>vel t<>r<EFBFBD>lje a sort!
|
||||
3. Menjen a 4. (eredetileg 5.) sorra!
|
||||
4. 2dd (ugyeb<65>r sz<73>m-utas<61>t<EFBFBD>s-objektum) beg<65>pel<65>s<EFBFBD>vel t<>r<EFBFBD>lj<6C>n k<>t sort!
|
||||
3. Menjen a 3. (eredetileg 4.) sorra!
|
||||
4. 2dd (ugyeb<65>r sz<73>m-utas<61>t<EFBFBD>s-mozg<EFBFBD>s) beg<65>pel<65>s<EFBFBD>vel t<>r<EFBFBD>lj<6C>n k<>t sort!
|
||||
|
||||
1) Alv<6C> szegek a j<>ghideg homokban,
|
||||
2) - kezdi a k<>lt<6C> -
|
||||
@@ -238,9 +238,9 @@ MEGJ: V
|
||||
1. Menj<6E>nk az al<61>bbi ---> kezdet<65> sor els<6C> hib<69>j<EFBFBD>ra!
|
||||
2. x lenyom<6F>s<EFBFBD>val t<>r<EFBFBD>lje az els<6C> felesleges karaktert!
|
||||
3. u megnyom<6F>s<EFBFBD>val vonja vissza az utols<6C>nak v<>grehajtott utas<61>t<EFBFBD>st!
|
||||
4. M<>sodj<64>ra jav<61>tson ki minden hib<69>t a sorben az x utas<61>t<EFBFBD>ssal!
|
||||
4. M<>sodj<64>ra jav<61>tson ki minden hib<69>t a sorban az x utas<61>t<EFBFBD>ssal!
|
||||
5. Most nagy U -val <20>ll<6C>tsa vissza a sor eredeti <20>llapot<6F>t!
|
||||
6. Nyomja meg az u gombot p<>rszor, hogy az U <20>s sz el<65>z<EFBFBD> utas<61>t<EFBFBD>sokat
|
||||
6. Nyomja meg az u gombot p<>rszor, hogy az U <20>s az azt megel<EFBFBD>z<EFBFBD> utas<61>t<EFBFBD>sokat
|
||||
vissza<7A>ll<6C>tsa!
|
||||
7. CTRL-R (CTRL gomb lenyom<6F>sa mellett <20>ss<73>n R-t) p<>rszor csin<69>lja <20>jra a
|
||||
visszavont parancsokat (redo)!
|
||||
@@ -263,11 +263,11 @@ MEGJ: V
|
||||
|
||||
4. Egy utas<61>t<EFBFBD>s alakja norm<72>l m<>dban:
|
||||
|
||||
[sz<73>m] utas<61>t<EFBFBD>s objektum VAGY utas<61>t<EFBFBD>s [sz<73>m] objektum
|
||||
[sz<73>m] utas<61>t<EFBFBD>s mozg<EFBFBD>s VAGY utas<61>t<EFBFBD>s [sz<73>m] mozg<EFBFBD>s
|
||||
ahol:
|
||||
sz<73>m - h<>nyszor ism<73>telj<6C>k a parancsot
|
||||
utas<61>t<EFBFBD>s - mit tegy<67>nk, pl. d a t<>rl<72>skor
|
||||
objektum - mire hasson az utas<61>t<EFBFBD>s, p<>ld<6C>ul w (sz<73>=word),
|
||||
mozg<EFBFBD>s - mire hasson az utas<61>t<EFBFBD>s, p<>ld<6C>ul w (sz<73>=word),
|
||||
$ (a sor v<>g<EFBFBD>ig), stb.
|
||||
|
||||
5. Az el<65>z<EFBFBD> tett visszavon<6F>sa (undo): u (kis u)
|
||||
@@ -278,11 +278,11 @@ MEGJ: V
|
||||
3.1. lecke: A BEILLESZT<5A>S (PUT) PARANCS
|
||||
|
||||
|
||||
** p le<6C>t<EFBFBD>s<EFBFBD>vel az utols<6C>nak t<>r<EFBFBD>ltet a kurzor ut<75>n illeszhetj<74>k. **
|
||||
** p le<6C>t<EFBFBD>s<EFBFBD>vel az utols<6C>nak t<>r<EFBFBD>ltet a kurzor ut<75>n illeszthetj<EFBFBD>k. **
|
||||
|
||||
1. Mozgassuk a kurzort az al<61>bbi sorok els<6C> sor<6F>ra.
|
||||
|
||||
2. dd le<6C>t<EFBFBD>s<EFBFBD>vel t<>r<EFBFBD>lj<6C>k a sort <20>s elt<6C>rol<6F>dik a Vim puffer<65>ben.
|
||||
2. dd le<6C>t<EFBFBD>s<EFBFBD>vel t<>r<EFBFBD>lj<6C>k a sort <20>s elt<6C>rol<6F>dik a Vim puffer<65>ben.
|
||||
|
||||
3. Mozgassuk a kurzort azel<65>tt a sor EL<45>TTI sorba, ahov<6F> mozgatni
|
||||
szeretn<74>nk a t<>r<EFBFBD>lt sort.
|
||||
@@ -350,13 +350,13 @@ Vegy
|
||||
3.4. lecke: T<>BBF<42>LE V<>LTOZTAT<41>S c-VEL
|
||||
|
||||
|
||||
** A c utas<61>t<EFBFBD>s haszn<7A>lhat<61> ugyanazokkal az objektumokkal mint a t<>rl<72>s **
|
||||
** A c utas<61>t<EFBFBD>s haszn<7A>lhat<61> ugyanazokkal az mozg<EFBFBD>sokkal mint a t<>rl<72>s **
|
||||
|
||||
1. A change utas<61>t<EFBFBD>s a t<>rl<72>ssel azonosan viselkedik. A forma:
|
||||
|
||||
[sz<73>m] c objektum OR c [sz<73>m] objektum
|
||||
[sz<73>m] c mozg<EFBFBD>s OR c [sz<73>m] mozg<EFBFBD>s
|
||||
|
||||
2. Az objektumok is azonosak, pl. w (sz<73>), $ (sorv<72>g), stb.
|
||||
2. A mozg<7A>sok is azonosak, pl. w (sz<73>), $ (sorv<72>g), stb.
|
||||
|
||||
3. Mozgassuk a kurzort az els<6C> ---> kezdet<65> sorra!
|
||||
|
||||
@@ -374,18 +374,18 @@ Vegy
|
||||
|
||||
|
||||
1. A m<>r t<>r<EFBFBD>lt sort beilleszt<7A>s<EFBFBD>hez nyomjunk p-t. Ez a t<>r<EFBFBD>lt sz<73>veget
|
||||
a kurzor UT<55>N helyezi (ha sor ker<65>lt t<>rl<72>sre, a kurzor allatti sorba).
|
||||
a kurzor UT<55>N helyezi (ha sor ker<65>lt t<>rl<72>sre, a kurzor alatti sorba).
|
||||
|
||||
2. A kurzor alatti karakter <20>t<EFBFBD>r<EFBFBD>s<EFBFBD>hoz az r-et <20>s azt a karaktert
|
||||
nyomjuk, amellyel az eredetit fel<65>l szeretn<74>nk <20>rni.
|
||||
|
||||
3. A v<>ltoztat<61>s (c) utas<61>t<EFBFBD>s a karaktert<72>l az objektum v<>g<EFBFBD>ig
|
||||
v<>ltoztatja meg az objektumot. P<>ld<6C>ul a cw a kurzort<72>l a sz<73> v<>g<EFBFBD>ig,
|
||||
3. A v<>ltoztat<61>s (c) utas<61>t<EFBFBD>s a karaktert<72>l az mozg<EFBFBD>s v<>g<EFBFBD>ig
|
||||
v<>ltoztatja meg az mozg<EFBFBD>st. P<>ld<6C>ul a cw a kurzort<72>l a sz<73> v<>g<EFBFBD>ig,
|
||||
a c$ a sor v<>g<EFBFBD>ig.
|
||||
|
||||
4. A v<>ltoztat<61>s form<72>tuma:
|
||||
|
||||
[sz<73>m] c objektum VAGY c [sz<73>m] objektum
|
||||
[sz<73>m] c mozg<EFBFBD>s VAGY c [sz<73>m] mozg<EFBFBD>s
|
||||
|
||||
Ugorjunk a k<>vetkez<65> leck<63>re!
|
||||
|
||||
@@ -428,7 +428,7 @@ Ugorjunk a k
|
||||
3. A kifejez<65>s <20>jabb keres<65>s<EFBFBD>hez <20>ss<73>k le egyszer<65>en: n .
|
||||
A kifejez<65>s ellenkez<65> ir<69>nyban t<>rt<72>n<EFBFBD> keres<65>s<EFBFBD>hez ezt <20>ss<73>k be: Shift-N .
|
||||
|
||||
4. Ha visszafel<65> szeretne keresni, akkor ? kell a ! helyett.
|
||||
4. Ha visszafel<65> szeretne keresni, akkor ? kell a / helyett.
|
||||
|
||||
---> "hiibaa" nem a helyes m<>dja a hiba le<6C>r<EFBFBD>s<EFBFBD>nak; a hiibaa egy hiba.
|
||||
|
||||
@@ -462,7 +462,7 @@ Megj: Ez nagyon hasznos, ha olyan programot debugolunk, amelyben a
|
||||
4.4. lecke: A HIB<49>K KIJAV<41>T<EFBFBD>S<EFBFBD>NAK EGY M<>DJA
|
||||
|
||||
|
||||
** :s/<EFBFBD>j/r<EFBFBD>gi/g beg<65>pel<65>s<EFBFBD>vel az '<27>j'-ra cser<65>lj<6C>k a 'r<>gi'-t. **
|
||||
** :s/r<>gi/<EFBFBD>j/g beg<65>pel<65>s<EFBFBD>vel az '<27>j'-ra cser<65>lj<6C>k a 'r<>gi'-t. **
|
||||
|
||||
1. Menj<6E>nk a ---> kezdet<65> sorra!
|
||||
|
||||
@@ -579,7 +579,7 @@ Megj: Ha
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
5.4. lecke: RETRIEVING AND MERGING FILES
|
||||
5.4. lecke: F<EFBFBD>JLOK VISSZA<5A>LL<4C>T<EFBFBD>SA <20>S <20>SSZEF<45>Z<EFBFBD>SE
|
||||
|
||||
|
||||
** Egy f<>jl tartalm<6C>nak beilleszt<7A>s<EFBFBD>hez <20>rja :r F<>JLN<4C>V **
|
||||
@@ -592,11 +592,11 @@ MEGJ: A 3. l
|
||||
keresse meg ism<73>t ezt a leck<63>t.
|
||||
|
||||
3. Most sz<73>rja be a TESZT nev<65> f<>jlt a :r TESZT paranccsal, ahol
|
||||
TESZT az <20>n f<>jlj<6C>nak a neve.
|
||||
TESZT az <20>n f<>jlj<6C>nak a neve.
|
||||
|
||||
MEGJ: A f<>jl, amit beillesztett a kurzora alatt helyezkedik el.
|
||||
|
||||
4. Hogy ellen<65>rizz<7A>k, hogy a f<>jlt t<>nyleg beillsztett<74>k, menjen
|
||||
4. Hogy ellen<65>rizz<7A>k, hogy a f<>jlt t<>nyleg beillesztett<EFBFBD>k, menjen
|
||||
vissza, <20>s n<>zze meg, hogy k<>tszer szerepel az 5.3. lecke! Az eredeti
|
||||
mellett a f<>jlb<6C>l bem<65>solt is ott van.
|
||||
|
||||
@@ -616,11 +616,11 @@ MEGJ: A f
|
||||
2. :w F<>JLN<4C>V ki<6B>rja a jelenlegi Vim-f<>jlt a lemezre F<>JN<4A>V n<>ven.
|
||||
|
||||
3. :#,#w F<>JLN<4C>V ki<6B>rja a k<>t sorsz<73>m (#) k<>z<EFBFBD>tti sorokat F<>JLN<4C>V-be
|
||||
M<>sik lehet<65>s<EFBFBD>g, hogy a kezd<7A>sorn<72>l Ctrl-v-t nyom lemegy az utols<6C>
|
||||
M<>sik lehet<65>s<EFBFBD>g, hogy a kezd<7A>sorn<72>l Shift-v-t nyom lemegy az utols<6C>
|
||||
sorra, majd ezt <20>ti be :w F<>JLN<4C>V
|
||||
|
||||
4. :r F<>JLN<4C>V beolvassa a F<>JLN<4C>V f<>jlt <20>s behelyezi a jelenlegi f<>jlba
|
||||
a kurzorpozici<EFBFBD> ut<75>ni sorba.
|
||||
a kurzorpoz<EFBFBD>ci<EFBFBD> ut<75>ni sorba.
|
||||
|
||||
|
||||
|
||||
@@ -629,7 +629,7 @@ MEGJ: A f
|
||||
6.1. lecke: A MEGNYIT<49>S (OPEN) PARANCS
|
||||
|
||||
|
||||
** o be<62>r<EFBFBD>s<EFBFBD>val nyithat egy <20>j sort a kurzor alatt <20>s v<EFBFBD>lthat besz<EFBFBD>r<EFBFBD> m<>dba **
|
||||
** o be<62>r<EFBFBD>s<EFBFBD>val nyit egy <20>j sort a kurzor alatt <20>s besz<73>r<EFBFBD> m<>dba v<EFBFBD>lt **
|
||||
|
||||
1. Mozgassuk a kurzort a ---> kezdet<65> sorra.
|
||||
|
||||
@@ -641,7 +641,7 @@ MEGJ: A f
|
||||
|
||||
---> Az o lenyom<6F>sa ut<75>n a kurzor a k<>vetkez<65> sor elej<65>n <20>ll besz<73>r<EFBFBD> m<>dban.
|
||||
|
||||
4. A kurzor FELETTI for megnyit<69>s<EFBFBD>hoz egyzser<EFBFBD>en a nagy O bet<65>t <20>rjon
|
||||
4. A kurzor FELETTI sor megnyit<69>s<EFBFBD>hoz egyszer<EFBFBD>en nagy O bet<65>t <20>rjon
|
||||
kicsi helyett. Pr<50>b<EFBFBD>lja ki a k<>vetkez<65> soron!
|
||||
Nyisson egy <20>j sort efelett Shift-O megnyom<6F>s<EFBFBD>val, mialatt a kurzor
|
||||
ezen a soron <20>ll.
|
||||
@@ -654,16 +654,16 @@ ezen a soron
|
||||
6.2. lecke: AZ APPEND PARANCS
|
||||
|
||||
|
||||
** a lenyom<6F>s<EFBFBD>val a kuror UT<55>N sz<73>rhatunk sz<73>veget. **
|
||||
** a lenyom<6F>s<EFBFBD>val a kurzor UT<55>N sz<73>rhatunk sz<73>veget. **
|
||||
|
||||
1. Mozgassuk a kurzort a k<>vetkez<65> ---> kezdet<65> sor v<>g<EFBFBD>re <20>gy,
|
||||
hogy norm<72>l m<>dban $ <20>r be.
|
||||
hogy norm<EFBFBD>l m<EFBFBD>dban $-t <20>r be.
|
||||
|
||||
2. a (kicsi) le<6C>t<EFBFBD>s<EFBFBD>vel sz<73>veget sz<73>rhat be AM<41>G<EFBFBD> a karakter m<>g<EFBFBD>,
|
||||
2. Kis "a" le<6C>t<EFBFBD>s<EFBFBD>vel sz<73>veget sz<73>rhat be AM<41>G<EFBFBD> a karakter m<>g<EFBFBD>,
|
||||
amelyen a kurzor <20>ll.
|
||||
(A nagy A az eg<65>sz sor v<>g<EFBFBD>re <20>rja a sz<73>veget.)
|
||||
(A nagy "A" az eg<65>sz sor v<>g<EFBFBD>re <20>rja a sz<73>veget.)
|
||||
|
||||
Megj: A Vimben a sor legv<67>g<EFBFBD>re is lehet <20>llni, azonba ez el<65>dj<64>ben
|
||||
Megj: A Vimben a sor legv<67>g<EFBFBD>re is lehet <20>llni, azonban ez el<65>dj<64>ben
|
||||
a Vi-ban nem lehets<74>ges, ez<65>rt abban az a n<>lk<6C>l el<65>g k<>r<EFBFBD>lm<6C>nyes
|
||||
a sor v<>g<EFBFBD>hez sz<73>veget <20>rni.
|
||||
|
||||
@@ -687,13 +687,13 @@ Megj: A Vimben a sor legv
|
||||
2. Helyezze a kurzort az els<6C> sz<73> elej<65>re amely elt<6C>r a m<>sodik
|
||||
---> kezdet<65> sor tartalm<6C>t<EFBFBD>l (a 'az utols<6C>val' r<>szt<7A>l).
|
||||
|
||||
3. Nyomjon R karaktert <20>s <20>rja <20>t a sz<73>veg marad<61>k<EFBFBD>t az els<6C> sorban
|
||||
3. Nyomjon R karaktert <20>s <20>rja <20>t a sz<73>veg marad<61>k<EFBFBD>t az els<6C> sorban
|
||||
<20>gy, hogy a k<>t sor egyez<65> legyen.
|
||||
|
||||
---> Az els<6C> sort tegye azonoss<73> az utols<6C>val: haszn<7A>lja a gombokat.
|
||||
---> Az els<6C> sort tegye azonoss<73> a m<>sodikkal: <20>rjon R-t <20>s az <20>j sz<73>veget.
|
||||
|
||||
4. Jegyezz<7A>k meg, ha <ESC>-et nyomok, akkor a v<>ltozatlanuk hagyott
|
||||
4. Jegyezz<7A>k meg, ha <ESC>-et nyomok, akkor a v<>ltozatlanul hagyott
|
||||
sz<73>vegek v<>ltozatlanok maradnak.
|
||||
|
||||
|
||||
@@ -826,5 +826,5 @@ Megj: A Vimben a sor legv
|
||||
|
||||
A Vimhez idom<6F>totta Bram Moolenaar.
|
||||
|
||||
Magyar<61>totta: Horv<72>th <20>rp<72>d <horvath.arpad@roik.bmf.hu>, 2006-2008
|
||||
Magyar<61>totta: Horv<72>th <20>rp<72>d <horvath.arpad@arek.uni-opbuda.hu>, 2006-2012
|
||||
|
||||
|
||||
@@ -2,16 +2,16 @@
|
||||
== <20> d v <20> z <20> l j <20> k a V I M - o k t a t <20> b a n - 1.5-<2D>s verzi<7A> ==
|
||||
===============================================================================
|
||||
|
||||
A Vim egy nagyon hat<61>kony szerkeszt<7A>, amelnyek rengeteg utas<61>t<EFBFBD>sa
|
||||
A Vim egy nagyon hat<61>kony szerkeszt<7A>, amelynek rengeteg utas<61>t<EFBFBD>sa
|
||||
van, t<>l sok, hogy egy ilyen oktat<61>ban (tutorban), mint az itteni
|
||||
mindet elmagyar<61>zzuk. Ez az oktat<61> arra t<>rekszik, hogy annyit
|
||||
elmagyar<61>zzon, amennyi el<65>g, hogy k<>nnyed<65>n haszn<7A>ljuk a Vim-et, az
|
||||
<20>ltal<61>nos c<>l<EFBFBD> sz<73>vegszerkeszt<7A>t.
|
||||
|
||||
A feladatok megold<6C>s<EFBFBD>hoz 25-30 perc sz<73>ks<6B>ges att<74>l f<>gg<67>en,
|
||||
mennyit t<>lt<6C>nk a kis<EFBFBD>rletez<EFBFBD>ssel.
|
||||
mennyit t<>lt<6C>nk a k<EFBFBD>s<EFBFBD>rletez<EFBFBD>ssel.
|
||||
|
||||
A leck<63>ben szerepl<70> utas<61>t<EFBFBD>sok m<>dos<6F>tani fogj<67>k a sz<73>vegek.
|
||||
A leck<63>ben szerepl<70> utas<61>t<EFBFBD>sok m<>dos<6F>tani fogj<67>k a sz<73>veget.
|
||||
K<>sz<73>tsen m<>solatot err<72>l a f<>jlr<6C>l, ha gyakorolni akar.
|
||||
(Ha "vimtutor"-ral ind<6E>totta, akkor ez m<>r egy m<>solat.)
|
||||
|
||||
@@ -81,7 +81,7 @@ Megj: A kurzor gomboknak is m
|
||||
2. A hib<69>k kijav<61>t<EFBFBD>s<EFBFBD>hoz mozgassa a kurzort am<61>g a t<>rlend<6E> karakter
|
||||
f<>l<EFBFBD> nem <20>r.
|
||||
|
||||
3. Nyomja meg az x gombot, hogy t<>r<EFBFBD>lje a nemk<6D>v<EFBFBD>nt karaktert.
|
||||
3. Nyomja meg az x gombot, hogy t<>r<EFBFBD>lje a nem k<EFBFBD>v<EFBFBD>nt karaktert.
|
||||
|
||||
4. Ism<73>telje a 2, 3, 4-es l<>p<EFBFBD>seket, hogy kijav<61>tsa a mondatot.
|
||||
|
||||
@@ -172,7 +172,7 @@ Most folytassuk a 2. leck
|
||||
|
||||
3. Mozgassa a kurzort a helyes sor v<>g<EFBFBD>re (az els<6C> . UT<55>N)!
|
||||
|
||||
4. d$ beg<65>pel<65>s<EFBFBD>velt<6C>r<EFBFBD>lje a sor v<>g<EFBFBD>t!
|
||||
4. d$ beg<65>pel<65>s<EFBFBD>vel t<EFBFBD>r<EFBFBD>lje a sor v<>g<EFBFBD>t!
|
||||
|
||||
---> Valaki a sor v<>g<EFBFBD>t k<>tszer g<>pelte be. k<>tszer g<>pelte be.
|
||||
|
||||
@@ -184,30 +184,30 @@ Most folytassuk a 2. leck
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
2.3. lecke: UTAS<41>T<EFBFBD>SOKR<4B>L <20>S OBJEKTUMOKR<EFBFBD>L
|
||||
2.3. lecke: UTAS<41>T<EFBFBD>SOKR<4B>L <20>S MOZG<EFBFBD>SOKR<EFBFBD>L
|
||||
|
||||
|
||||
A d (delete=t<>rl<72>s) utas<61>t<EFBFBD>s form<72>ja a k<>vetkez<65>:
|
||||
|
||||
[sz<73>m] d objektum VAGY d [sz<73>m] objektum
|
||||
[sz<73>m] d mozg<EFBFBD>s VAGY d [sz<73>m] mozg<EFBFBD>s
|
||||
Ahol:
|
||||
sz<73>m - h<>nyszor hajt<6A>djon v<>gre a parancs (elhagyhat<61>, alap<61>rt<72>k=1).
|
||||
d - a t<>rl<72>s (delete) utas<61>t<EFBFBD>s.
|
||||
objektum - amin a parancsnak teljes<65>lnie kell (al<61>bb list<73>zva).
|
||||
mozg<EFBFBD>s - amin a parancsnak teljes<65>lnie kell (al<61>bb list<73>zva).
|
||||
|
||||
Objektumok r<>vid list<73>ja:
|
||||
Mozg<EFBFBD>sok r<>vid list<73>ja:
|
||||
w - a kurzort<72>l a sz<73> v<>g<EFBFBD>ig, bele<6C>rtve a sz<73>k<EFBFBD>zt.
|
||||
e - a kurzort<72>l a sz<73> v<>g<EFBFBD>ig, NEM bele<6C>rtve a sz<73>k<EFBFBD>zt.
|
||||
$ - a kurzort<72>l a sor v<>g<EFBFBD>ig.
|
||||
|
||||
MEGJ: V<EFBFBD>llalkoz<EFBFBD>bbak kedv<64><76>rt, csup<75>n az objektum beg<65>pel<65>s<EFBFBD>vel parancs n<>lk<6C>l
|
||||
a kurzor oda ker<65>l, amit az objektumlista megad.
|
||||
MEGJ: Csup<EFBFBD>n a mozg<7A>s beg<65>pel<65>s<EFBFBD>vel (parancs n<>lk<6C>l)
|
||||
a kurzor mozg<EFBFBD>s <20>ltal megadott helyre ker<65>l.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
2.4. lecke: EGY KIV<49>TEL A 'PARANCSOBJEKTUM' AL<41>L
|
||||
2.4. lecke: EG<EFBFBD>SZ SOROK FELDOLGOZ<4F>SA
|
||||
|
||||
|
||||
** dd be<62>r<EFBFBD>s<EFBFBD>val t<>r<EFBFBD>lheti az eg<65>sz sort. **
|
||||
@@ -217,8 +217,8 @@ MEGJ: V
|
||||
|
||||
1. Mozgassa a kurzort az al<61>bbi kifejez<65>sek m<>sodik sor<6F>ra!
|
||||
2. dd beg<65>pel<65>s<EFBFBD>vel t<>r<EFBFBD>lje a sort!
|
||||
3. Menjen a 4. (eredetileg 5.) sorra!
|
||||
4. 2dd (ugyeb<65>r sz<73>m-utas<61>t<EFBFBD>s-objektum) beg<65>pel<65>s<EFBFBD>vel t<>r<EFBFBD>lj<6C>n k<>t sort!
|
||||
3. Menjen a 3. (eredetileg 4.) sorra!
|
||||
4. 2dd (ugyeb<65>r sz<73>m-utas<61>t<EFBFBD>s-mozg<EFBFBD>s) beg<65>pel<65>s<EFBFBD>vel t<>r<EFBFBD>lj<6C>n k<>t sort!
|
||||
|
||||
1) Alv<6C> szegek a j<>ghideg homokban,
|
||||
2) - kezdi a k<>lt<6C> -
|
||||
@@ -238,9 +238,9 @@ MEGJ: V
|
||||
1. Menj<6E>nk az al<61>bbi ---> kezdet<65> sor els<6C> hib<69>j<EFBFBD>ra!
|
||||
2. x lenyom<6F>s<EFBFBD>val t<>r<EFBFBD>lje az els<6C> felesleges karaktert!
|
||||
3. u megnyom<6F>s<EFBFBD>val vonja vissza az utols<6C>nak v<>grehajtott utas<61>t<EFBFBD>st!
|
||||
4. M<>sodj<64>ra jav<61>tson ki minden hib<69>t a sorben az x utas<61>t<EFBFBD>ssal!
|
||||
4. M<>sodj<64>ra jav<61>tson ki minden hib<69>t a sorban az x utas<61>t<EFBFBD>ssal!
|
||||
5. Most nagy U -val <20>ll<6C>tsa vissza a sor eredeti <20>llapot<6F>t!
|
||||
6. Nyomja meg az u gombot p<>rszor, hogy az U <20>s sz el<65>z<EFBFBD> utas<61>t<EFBFBD>sokat
|
||||
6. Nyomja meg az u gombot p<>rszor, hogy az U <20>s az azt megel<EFBFBD>z<EFBFBD> utas<61>t<EFBFBD>sokat
|
||||
vissza<7A>ll<6C>tsa!
|
||||
7. CTRL-R (CTRL gomb lenyom<6F>sa mellett <20>ss<73>n R-t) p<>rszor csin<69>lja <20>jra a
|
||||
visszavont parancsokat (redo)!
|
||||
@@ -263,11 +263,11 @@ MEGJ: V
|
||||
|
||||
4. Egy utas<61>t<EFBFBD>s alakja norm<72>l m<>dban:
|
||||
|
||||
[sz<73>m] utas<61>t<EFBFBD>s objektum VAGY utas<61>t<EFBFBD>s [sz<73>m] objektum
|
||||
[sz<73>m] utas<61>t<EFBFBD>s mozg<EFBFBD>s VAGY utas<61>t<EFBFBD>s [sz<73>m] mozg<EFBFBD>s
|
||||
ahol:
|
||||
sz<73>m - h<>nyszor ism<73>telj<6C>k a parancsot
|
||||
utas<61>t<EFBFBD>s - mit tegy<67>nk, pl. d a t<>rl<72>skor
|
||||
objektum - mire hasson az utas<61>t<EFBFBD>s, p<>ld<6C>ul w (sz<73>=word),
|
||||
mozg<EFBFBD>s - mire hasson az utas<61>t<EFBFBD>s, p<>ld<6C>ul w (sz<73>=word),
|
||||
$ (a sor v<>g<EFBFBD>ig), stb.
|
||||
|
||||
5. Az el<65>z<EFBFBD> tett visszavon<6F>sa (undo): u (kis u)
|
||||
@@ -278,11 +278,11 @@ MEGJ: V
|
||||
3.1. lecke: A BEILLESZT<5A>S (PUT) PARANCS
|
||||
|
||||
|
||||
** p le<6C>t<EFBFBD>s<EFBFBD>vel az utols<6C>nak t<>r<EFBFBD>ltet a kurzor ut<75>n illeszhetj<74>k. **
|
||||
** p le<6C>t<EFBFBD>s<EFBFBD>vel az utols<6C>nak t<>r<EFBFBD>ltet a kurzor ut<75>n illeszthetj<EFBFBD>k. **
|
||||
|
||||
1. Mozgassuk a kurzort az al<61>bbi sorok els<6C> sor<6F>ra.
|
||||
|
||||
2. dd le<6C>t<EFBFBD>s<EFBFBD>vel t<>r<EFBFBD>lj<6C>k a sort <20>s elt<6C>rol<6F>dik a Vim puffer<65>ben.
|
||||
2. dd le<6C>t<EFBFBD>s<EFBFBD>vel t<>r<EFBFBD>lj<6C>k a sort <20>s elt<6C>rol<6F>dik a Vim puffer<65>ben.
|
||||
|
||||
3. Mozgassuk a kurzort azel<65>tt a sor EL<45>TTI sorba, ahov<6F> mozgatni
|
||||
szeretn<74>nk a t<>r<EFBFBD>lt sort.
|
||||
@@ -350,13 +350,13 @@ Vegy
|
||||
3.4. lecke: T<>BBF<42>LE V<>LTOZTAT<41>S c-VEL
|
||||
|
||||
|
||||
** A c utas<61>t<EFBFBD>s haszn<7A>lhat<61> ugyanazokkal az objektumokkal mint a t<>rl<72>s **
|
||||
** A c utas<61>t<EFBFBD>s haszn<7A>lhat<61> ugyanazokkal az mozg<EFBFBD>sokkal mint a t<>rl<72>s **
|
||||
|
||||
1. A change utas<61>t<EFBFBD>s a t<>rl<72>ssel azonosan viselkedik. A forma:
|
||||
|
||||
[sz<73>m] c objektum OR c [sz<73>m] objektum
|
||||
[sz<73>m] c mozg<EFBFBD>s OR c [sz<73>m] mozg<EFBFBD>s
|
||||
|
||||
2. Az objektumok is azonosak, pl. w (sz<73>), $ (sorv<72>g), stb.
|
||||
2. A mozg<7A>sok is azonosak, pl. w (sz<73>), $ (sorv<72>g), stb.
|
||||
|
||||
3. Mozgassuk a kurzort az els<6C> ---> kezdet<65> sorra!
|
||||
|
||||
@@ -374,18 +374,18 @@ Vegy
|
||||
|
||||
|
||||
1. A m<>r t<>r<EFBFBD>lt sort beilleszt<7A>s<EFBFBD>hez nyomjunk p-t. Ez a t<>r<EFBFBD>lt sz<73>veget
|
||||
a kurzor UT<55>N helyezi (ha sor ker<65>lt t<>rl<72>sre, a kurzor allatti sorba).
|
||||
a kurzor UT<55>N helyezi (ha sor ker<65>lt t<>rl<72>sre, a kurzor alatti sorba).
|
||||
|
||||
2. A kurzor alatti karakter <20>t<EFBFBD>r<EFBFBD>s<EFBFBD>hoz az r-et <20>s azt a karaktert
|
||||
nyomjuk, amellyel az eredetit fel<65>l szeretn<74>nk <20>rni.
|
||||
|
||||
3. A v<>ltoztat<61>s (c) utas<61>t<EFBFBD>s a karaktert<72>l az objektum v<>g<EFBFBD>ig
|
||||
v<>ltoztatja meg az objektumot. P<>ld<6C>ul a cw a kurzort<72>l a sz<73> v<>g<EFBFBD>ig,
|
||||
3. A v<>ltoztat<61>s (c) utas<61>t<EFBFBD>s a karaktert<72>l az mozg<EFBFBD>s v<>g<EFBFBD>ig
|
||||
v<>ltoztatja meg az mozg<EFBFBD>st. P<>ld<6C>ul a cw a kurzort<72>l a sz<73> v<>g<EFBFBD>ig,
|
||||
a c$ a sor v<>g<EFBFBD>ig.
|
||||
|
||||
4. A v<>ltoztat<61>s form<72>tuma:
|
||||
|
||||
[sz<73>m] c objektum VAGY c [sz<73>m] objektum
|
||||
[sz<73>m] c mozg<EFBFBD>s VAGY c [sz<73>m] mozg<EFBFBD>s
|
||||
|
||||
Ugorjunk a k<>vetkez<65> leck<63>re!
|
||||
|
||||
@@ -428,7 +428,7 @@ Ugorjunk a k
|
||||
3. A kifejez<65>s <20>jabb keres<65>s<EFBFBD>hez <20>ss<73>k le egyszer<65>en: n .
|
||||
A kifejez<65>s ellenkez<65> ir<69>nyban t<>rt<72>n<EFBFBD> keres<65>s<EFBFBD>hez ezt <20>ss<73>k be: Shift-N .
|
||||
|
||||
4. Ha visszafel<65> szeretne keresni, akkor ? kell a ! helyett.
|
||||
4. Ha visszafel<65> szeretne keresni, akkor ? kell a / helyett.
|
||||
|
||||
---> "hiibaa" nem a helyes m<>dja a hiba le<6C>r<EFBFBD>s<EFBFBD>nak; a hiibaa egy hiba.
|
||||
|
||||
@@ -462,7 +462,7 @@ Megj: Ez nagyon hasznos, ha olyan programot debugolunk, amelyben a
|
||||
4.4. lecke: A HIB<49>K KIJAV<41>T<EFBFBD>S<EFBFBD>NAK EGY M<>DJA
|
||||
|
||||
|
||||
** :s/<EFBFBD>j/r<EFBFBD>gi/g beg<65>pel<65>s<EFBFBD>vel az '<27>j'-ra cser<65>lj<6C>k a 'r<>gi'-t. **
|
||||
** :s/r<>gi/<EFBFBD>j/g beg<65>pel<65>s<EFBFBD>vel az '<27>j'-ra cser<65>lj<6C>k a 'r<>gi'-t. **
|
||||
|
||||
1. Menj<6E>nk a ---> kezdet<65> sorra!
|
||||
|
||||
@@ -579,7 +579,7 @@ Megj: Ha
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
5.4. lecke: RETRIEVING AND MERGING FILES
|
||||
5.4. lecke: F<EFBFBD>JLOK VISSZA<5A>LL<4C>T<EFBFBD>SA <20>S <20>SSZEF<45>Z<EFBFBD>SE
|
||||
|
||||
|
||||
** Egy f<>jl tartalm<6C>nak beilleszt<7A>s<EFBFBD>hez <20>rja :r F<>JLN<4C>V **
|
||||
@@ -592,11 +592,11 @@ MEGJ: A 3. l
|
||||
keresse meg ism<73>t ezt a leck<63>t.
|
||||
|
||||
3. Most sz<73>rja be a TESZT nev<65> f<>jlt a :r TESZT paranccsal, ahol
|
||||
TESZT az <20>n f<>jlj<6C>nak a neve.
|
||||
TESZT az <20>n f<>jlj<6C>nak a neve.
|
||||
|
||||
MEGJ: A f<>jl, amit beillesztett a kurzora alatt helyezkedik el.
|
||||
|
||||
4. Hogy ellen<65>rizz<7A>k, hogy a f<>jlt t<>nyleg beillsztett<74>k, menjen
|
||||
4. Hogy ellen<65>rizz<7A>k, hogy a f<>jlt t<>nyleg beillesztett<EFBFBD>k, menjen
|
||||
vissza, <20>s n<>zze meg, hogy k<>tszer szerepel az 5.3. lecke! Az eredeti
|
||||
mellett a f<>jlb<6C>l bem<65>solt is ott van.
|
||||
|
||||
@@ -616,11 +616,11 @@ MEGJ: A f
|
||||
2. :w F<>JLN<4C>V ki<6B>rja a jelenlegi Vim-f<>jlt a lemezre F<>JN<4A>V n<>ven.
|
||||
|
||||
3. :#,#w F<>JLN<4C>V ki<6B>rja a k<>t sorsz<73>m (#) k<>z<EFBFBD>tti sorokat F<>JLN<4C>V-be
|
||||
M<>sik lehet<65>s<EFBFBD>g, hogy a kezd<7A>sorn<72>l Ctrl-v-t nyom lemegy az utols<6C>
|
||||
M<>sik lehet<65>s<EFBFBD>g, hogy a kezd<7A>sorn<72>l Shift-v-t nyom lemegy az utols<6C>
|
||||
sorra, majd ezt <20>ti be :w F<>JLN<4C>V
|
||||
|
||||
4. :r F<>JLN<4C>V beolvassa a F<>JLN<4C>V f<>jlt <20>s behelyezi a jelenlegi f<>jlba
|
||||
a kurzorpozici<EFBFBD> ut<75>ni sorba.
|
||||
a kurzorpoz<EFBFBD>ci<EFBFBD> ut<75>ni sorba.
|
||||
|
||||
|
||||
|
||||
@@ -629,7 +629,7 @@ MEGJ: A f
|
||||
6.1. lecke: A MEGNYIT<49>S (OPEN) PARANCS
|
||||
|
||||
|
||||
** o be<62>r<EFBFBD>s<EFBFBD>val nyithat egy <20>j sort a kurzor alatt <20>s v<EFBFBD>lthat besz<EFBFBD>r<EFBFBD> m<>dba **
|
||||
** o be<62>r<EFBFBD>s<EFBFBD>val nyit egy <20>j sort a kurzor alatt <20>s besz<73>r<EFBFBD> m<>dba v<EFBFBD>lt **
|
||||
|
||||
1. Mozgassuk a kurzort a ---> kezdet<65> sorra.
|
||||
|
||||
@@ -641,7 +641,7 @@ MEGJ: A f
|
||||
|
||||
---> Az o lenyom<6F>sa ut<75>n a kurzor a k<>vetkez<65> sor elej<65>n <20>ll besz<73>r<EFBFBD> m<>dban.
|
||||
|
||||
4. A kurzor FELETTI for megnyit<69>s<EFBFBD>hoz egyzser<EFBFBD>en a nagy O bet<65>t <20>rjon
|
||||
4. A kurzor FELETTI sor megnyit<69>s<EFBFBD>hoz egyszer<EFBFBD>en nagy O bet<65>t <20>rjon
|
||||
kicsi helyett. Pr<50>b<EFBFBD>lja ki a k<>vetkez<65> soron!
|
||||
Nyisson egy <20>j sort efelett Shift-O megnyom<6F>s<EFBFBD>val, mialatt a kurzor
|
||||
ezen a soron <20>ll.
|
||||
@@ -654,16 +654,16 @@ ezen a soron
|
||||
6.2. lecke: AZ APPEND PARANCS
|
||||
|
||||
|
||||
** a lenyom<6F>s<EFBFBD>val a kuror UT<55>N sz<73>rhatunk sz<73>veget. **
|
||||
** a lenyom<6F>s<EFBFBD>val a kurzor UT<55>N sz<73>rhatunk sz<73>veget. **
|
||||
|
||||
1. Mozgassuk a kurzort a k<>vetkez<65> ---> kezdet<65> sor v<>g<EFBFBD>re <20>gy,
|
||||
hogy norm<72>l m<>dban $ <20>r be.
|
||||
hogy norm<EFBFBD>l m<EFBFBD>dban $-t <20>r be.
|
||||
|
||||
2. a (kicsi) le<6C>t<EFBFBD>s<EFBFBD>vel sz<73>veget sz<73>rhat be AM<41>G<EFBFBD> a karakter m<>g<EFBFBD>,
|
||||
2. Kis "a" le<6C>t<EFBFBD>s<EFBFBD>vel sz<73>veget sz<73>rhat be AM<41>G<EFBFBD> a karakter m<>g<EFBFBD>,
|
||||
amelyen a kurzor <20>ll.
|
||||
(A nagy A az eg<65>sz sor v<>g<EFBFBD>re <20>rja a sz<73>veget.)
|
||||
(A nagy "A" az eg<65>sz sor v<>g<EFBFBD>re <20>rja a sz<73>veget.)
|
||||
|
||||
Megj: A Vimben a sor legv<67>g<EFBFBD>re is lehet <20>llni, azonba ez el<65>dj<64>ben
|
||||
Megj: A Vimben a sor legv<67>g<EFBFBD>re is lehet <20>llni, azonban ez el<65>dj<64>ben
|
||||
a Vi-ban nem lehets<74>ges, ez<65>rt abban az a n<>lk<6C>l el<65>g k<>r<EFBFBD>lm<6C>nyes
|
||||
a sor v<>g<EFBFBD>hez sz<73>veget <20>rni.
|
||||
|
||||
@@ -687,13 +687,13 @@ Megj: A Vimben a sor legv
|
||||
2. Helyezze a kurzort az els<6C> sz<73> elej<65>re amely elt<6C>r a m<>sodik
|
||||
---> kezdet<65> sor tartalm<6C>t<EFBFBD>l (a 'az utols<6C>val' r<>szt<7A>l).
|
||||
|
||||
3. Nyomjon R karaktert <20>s <20>rja <20>t a sz<73>veg marad<61>k<EFBFBD>t az els<6C> sorban
|
||||
3. Nyomjon R karaktert <20>s <20>rja <20>t a sz<73>veg marad<61>k<EFBFBD>t az els<6C> sorban
|
||||
<20>gy, hogy a k<>t sor egyez<65> legyen.
|
||||
|
||||
---> Az els<6C> sort tegye azonoss<73> az utols<6C>val: haszn<7A>lja a gombokat.
|
||||
---> Az els<6C> sort tegye azonoss<73> a m<>sodikkal: <20>rjon R-t <20>s az <20>j sz<73>veget.
|
||||
|
||||
4. Jegyezz<7A>k meg, ha <ESC>-et nyomok, akkor a v<>ltozatlanuk hagyott
|
||||
4. Jegyezz<7A>k meg, ha <ESC>-et nyomok, akkor a v<>ltozatlanul hagyott
|
||||
sz<73>vegek v<>ltozatlanok maradnak.
|
||||
|
||||
|
||||
@@ -826,5 +826,5 @@ Megj: A Vimben a sor legv
|
||||
|
||||
A Vimhez idom<6F>totta Bram Moolenaar.
|
||||
|
||||
Magyar<61>totta: Horv<72>th <20>rp<72>d <horvath.arpad@roik.bmf.hu>, 2006-2008
|
||||
Magyar<61>totta: Horv<72>th <20>rp<72>d <horvath.arpad@arek.uni-opbuda.hu>, 2006-2012
|
||||
|
||||
|
||||
@@ -2,16 +2,16 @@
|
||||
== Ü d v ö z ö l j ü k a V I M - o k t a t ó b a n - 1.5-ös verzió ==
|
||||
===============================================================================
|
||||
|
||||
A Vim egy nagyon hatékony szerkesztő, amelnyek rengeteg utasítása
|
||||
A Vim egy nagyon hatékony szerkesztő, amelynek rengeteg utasítása
|
||||
van, túl sok, hogy egy ilyen oktatóban (tutorban), mint az itteni
|
||||
mindet elmagyarázzuk. Ez az oktató arra törekszik, hogy annyit
|
||||
elmagyarázzon, amennyi elég, hogy könnyedén használjuk a Vim-et, az
|
||||
általános célú szövegszerkesztőt.
|
||||
|
||||
A feladatok megoldásához 25-30 perc szükséges attól függően,
|
||||
mennyit töltünk a kisérletezéssel.
|
||||
mennyit töltünk a kísérletezéssel.
|
||||
|
||||
A leckében szereplő utasítások módosítani fogják a szövegek.
|
||||
A leckében szereplő utasítások módosítani fogják a szöveget.
|
||||
Készítsen másolatot erről a fájlról, ha gyakorolni akar.
|
||||
(Ha "vimtutor"-ral indította, akkor ez már egy másolat.)
|
||||
|
||||
@@ -81,7 +81,7 @@ Megj: A kurzor gomboknak is működniük kell, de a hjkl használatával
|
||||
2. A hibák kijavításához mozgassa a kurzort amíg a törlendő karakter
|
||||
fölé nem ér.
|
||||
|
||||
3. Nyomja meg az x gombot, hogy törölje a nemkívánt karaktert.
|
||||
3. Nyomja meg az x gombot, hogy törölje a nem kívánt karaktert.
|
||||
|
||||
4. Ismételje a 2, 3, 4-es lépéseket, hogy kijavítsa a mondatot.
|
||||
|
||||
@@ -172,7 +172,7 @@ Most folytassuk a 2. leckével!
|
||||
|
||||
3. Mozgassa a kurzort a helyes sor végére (az első . UTÁN)!
|
||||
|
||||
4. d$ begépeléséveltörölje a sor végét!
|
||||
4. d$ begépelésével törölje a sor végét!
|
||||
|
||||
---> Valaki a sor végét kétszer gépelte be. kétszer gépelte be.
|
||||
|
||||
@@ -184,30 +184,30 @@ Most folytassuk a 2. leckével!
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
2.3. lecke: UTASÍTÁSOKRÓL ÉS OBJEKTUMOKRÓL
|
||||
2.3. lecke: UTASÍTÁSOKRÓL ÉS MOZGÁSOKRÓL
|
||||
|
||||
|
||||
A d (delete=törlés) utasítás formája a következő:
|
||||
|
||||
[szám] d objektum VAGY d [szám] objektum
|
||||
[szám] d mozgás VAGY d [szám] mozgás
|
||||
Ahol:
|
||||
szám - hányszor hajtódjon végre a parancs (elhagyható, alapérték=1).
|
||||
d - a törlés (delete) utasítás.
|
||||
objektum - amin a parancsnak teljesülnie kell (alább listázva).
|
||||
mozgás - amin a parancsnak teljesülnie kell (alább listázva).
|
||||
|
||||
Objektumok rövid listája:
|
||||
Mozgások rövid listája:
|
||||
w - a kurzortól a szó végéig, beleértve a szóközt.
|
||||
e - a kurzortól a szó végéig, NEM beleértve a szóközt.
|
||||
$ - a kurzortól a sor végéig.
|
||||
|
||||
MEGJ: Vállalkozóbbak kedvéért, csupán az objektum begépelésével parancs nélkül
|
||||
a kurzor oda kerül, amit az objektumlista megad.
|
||||
MEGJ: Csupán a mozgás begépelésével (parancs nélkül)
|
||||
a kurzor mozgás által megadott helyre kerül.
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
2.4. lecke: EGY KIVÉTEL A 'PARANCSOBJEKTUM' ALÓL
|
||||
2.4. lecke: EGÉSZ SOROK FELDOLGOZÁSA
|
||||
|
||||
|
||||
** dd beírásával törölheti az egész sort. **
|
||||
@@ -217,8 +217,8 @@ MEGJ: Vállalkozóbbak kedvéért, csupán az objektum begépelésével parancs
|
||||
|
||||
1. Mozgassa a kurzort az alábbi kifejezések második sorára!
|
||||
2. dd begépelésével törölje a sort!
|
||||
3. Menjen a 4. (eredetileg 5.) sorra!
|
||||
4. 2dd (ugyebár szám-utasítás-objektum) begépelésével töröljön két sort!
|
||||
3. Menjen a 3. (eredetileg 4.) sorra!
|
||||
4. 2dd (ugyebár szám-utasítás-mozgás) begépelésével töröljön két sort!
|
||||
|
||||
1) Alvó szegek a jéghideg homokban,
|
||||
2) - kezdi a költő -
|
||||
@@ -238,9 +238,9 @@ MEGJ: Vállalkozóbbak kedvéért, csupán az objektum begépelésével parancs
|
||||
1. Menjünk az alábbi ---> kezdetű sor első hibájára!
|
||||
2. x lenyomásával törölje az első felesleges karaktert!
|
||||
3. u megnyomásával vonja vissza az utolsónak végrehajtott utasítást!
|
||||
4. Másodjára javítson ki minden hibát a sorben az x utasítással!
|
||||
4. Másodjára javítson ki minden hibát a sorban az x utasítással!
|
||||
5. Most nagy U -val állítsa vissza a sor eredeti állapotát!
|
||||
6. Nyomja meg az u gombot párszor, hogy az U és sz előző utasításokat
|
||||
6. Nyomja meg az u gombot párszor, hogy az U és az azt megelőző utasításokat
|
||||
visszaállítsa!
|
||||
7. CTRL-R (CTRL gomb lenyomása mellett üssön R-t) párszor csinálja újra a
|
||||
visszavont parancsokat (redo)!
|
||||
@@ -263,11 +263,11 @@ MEGJ: Vállalkozóbbak kedvéért, csupán az objektum begépelésével parancs
|
||||
|
||||
4. Egy utasítás alakja normál módban:
|
||||
|
||||
[szám] utasítás objektum VAGY utasítás [szám] objektum
|
||||
[szám] utasítás mozgás VAGY utasítás [szám] mozgás
|
||||
ahol:
|
||||
szám - hányszor ismételjük a parancsot
|
||||
utasítás - mit tegyünk, pl. d a törléskor
|
||||
objektum - mire hasson az utasítás, például w (szó=word),
|
||||
mozgás - mire hasson az utasítás, például w (szó=word),
|
||||
$ (a sor végéig), stb.
|
||||
|
||||
5. Az előző tett visszavonása (undo): u (kis u)
|
||||
@@ -278,11 +278,11 @@ MEGJ: Vállalkozóbbak kedvéért, csupán az objektum begépelésével parancs
|
||||
3.1. lecke: A BEILLESZTÉS (PUT) PARANCS
|
||||
|
||||
|
||||
** p leütésével az utolsónak töröltet a kurzor után illeszhetjük. **
|
||||
** p leütésével az utolsónak töröltet a kurzor után illeszthetjük. **
|
||||
|
||||
1. Mozgassuk a kurzort az alábbi sorok első sorára.
|
||||
|
||||
2. dd leütésével töröljük a sort és eltérolódik a Vim pufferében.
|
||||
2. dd leütésével töröljük a sort és eltárolódik a Vim pufferében.
|
||||
|
||||
3. Mozgassuk a kurzort azelőtt a sor ELŐTTI sorba, ahová mozgatni
|
||||
szeretnénk a törölt sort.
|
||||
@@ -350,13 +350,13 @@ Vegyük észre, hogy a cw nem csak a szót írja át, hanem beszúró
|
||||
3.4. lecke: TÖBBFÉLE VÁLTOZTATÁS c-VEL
|
||||
|
||||
|
||||
** A c utasítás használható ugyanazokkal az objektumokkal mint a törlés **
|
||||
** A c utasítás használható ugyanazokkal az mozgásokkal mint a törlés **
|
||||
|
||||
1. A change utasítás a törléssel azonosan viselkedik. A forma:
|
||||
|
||||
[szám] c objektum OR c [szám] objektum
|
||||
[szám] c mozgás OR c [szám] mozgás
|
||||
|
||||
2. Az objektumok is azonosak, pl. w (szó), $ (sorvég), stb.
|
||||
2. A mozgások is azonosak, pl. w (szó), $ (sorvég), stb.
|
||||
|
||||
3. Mozgassuk a kurzort az első ---> kezdetű sorra!
|
||||
|
||||
@@ -374,18 +374,18 @@ Vegyük észre, hogy a cw nem csak a szót írja át, hanem beszúró
|
||||
|
||||
|
||||
1. A már törölt sort beillesztéséhez nyomjunk p-t. Ez a törölt szöveget
|
||||
a kurzor UTÁN helyezi (ha sor került törlésre, a kurzor allatti sorba).
|
||||
a kurzor UTÁN helyezi (ha sor került törlésre, a kurzor alatti sorba).
|
||||
|
||||
2. A kurzor alatti karakter átírásához az r-et és azt a karaktert
|
||||
nyomjuk, amellyel az eredetit felül szeretnénk írni.
|
||||
|
||||
3. A változtatás (c) utasítás a karaktertől az objektum végéig
|
||||
változtatja meg az objektumot. Például a cw a kurzortól a szó végéig,
|
||||
3. A változtatás (c) utasítás a karaktertől az mozgás végéig
|
||||
változtatja meg az mozgást. Például a cw a kurzortól a szó végéig,
|
||||
a c$ a sor végéig.
|
||||
|
||||
4. A változtatás formátuma:
|
||||
|
||||
[szám] c objektum VAGY c [szám] objektum
|
||||
[szám] c mozgás VAGY c [szám] mozgás
|
||||
|
||||
Ugorjunk a következő leckére!
|
||||
|
||||
@@ -428,7 +428,7 @@ Ugorjunk a következő leckére!
|
||||
3. A kifejezés újabb kereséséhez üssük le egyszerűen: n .
|
||||
A kifejezés ellenkező irányban történő kereséséhez ezt üssük be: Shift-N .
|
||||
|
||||
4. Ha visszafelé szeretne keresni, akkor ? kell a ! helyett.
|
||||
4. Ha visszafelé szeretne keresni, akkor ? kell a / helyett.
|
||||
|
||||
---> "hiibaa" nem a helyes módja a hiba leírásának; a hiibaa egy hiba.
|
||||
|
||||
@@ -462,7 +462,7 @@ Megj: Ez nagyon hasznos, ha olyan programot debugolunk, amelyben a
|
||||
4.4. lecke: A HIBÁK KIJAVÍTÁSÁNAK EGY MÓDJA
|
||||
|
||||
|
||||
** :s/új/régi/g begépelésével az 'új'-ra cseréljük a 'régi'-t. **
|
||||
** :s/régi/új/g begépelésével az 'új'-ra cseréljük a 'régi'-t. **
|
||||
|
||||
1. Menjünk a ---> kezdetű sorra!
|
||||
|
||||
@@ -579,7 +579,7 @@ Megj: Ha Ön kilépne a Vimből és és visszatérne a TESZT fájlnévvel, akkor
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
5.4. lecke: RETRIEVING AND MERGING FILES
|
||||
5.4. lecke: FÁJLOK VISSZAÁLLÍTÁSA ÉS ÖSSZEFŰZÉSE
|
||||
|
||||
|
||||
** Egy fájl tartalmának beillesztéséhez írja :r FÁJLNÉV **
|
||||
@@ -592,11 +592,11 @@ MEGJ: A 3. lépés után az 5.3. leckét fogja látni. Azután LEFELÉ indulva
|
||||
keresse meg ismét ezt a leckét.
|
||||
|
||||
3. Most szúrja be a TESZT nevű fájlt a :r TESZT paranccsal, ahol
|
||||
TESZT az Ön fájljénak a neve.
|
||||
TESZT az Ön fájljának a neve.
|
||||
|
||||
MEGJ: A fájl, amit beillesztett a kurzora alatt helyezkedik el.
|
||||
|
||||
4. Hogy ellenőrizzük, hogy a fájlt tényleg beillsztettük, menjen
|
||||
4. Hogy ellenőrizzük, hogy a fájlt tényleg beillesztettük, menjen
|
||||
vissza, és nézze meg, hogy kétszer szerepel az 5.3. lecke! Az eredeti
|
||||
mellett a fájlból bemásolt is ott van.
|
||||
|
||||
@@ -616,11 +616,11 @@ MEGJ: A fájl, amit beillesztett a kurzora alatt helyezkedik el.
|
||||
2. :w FÁJLNÉV kiírja a jelenlegi Vim-fájlt a lemezre FÁJNÉV néven.
|
||||
|
||||
3. :#,#w FÁJLNÉV kiírja a két sorszám (#) közötti sorokat FÁJLNÉV-be
|
||||
Másik lehetőség, hogy a kezdősornál Ctrl-v-t nyom lemegy az utolsó
|
||||
Másik lehetőség, hogy a kezdősornál Shift-v-t nyom lemegy az utolsó
|
||||
sorra, majd ezt üti be :w FÁJLNÉV
|
||||
|
||||
4. :r FÁJLNÉV beolvassa a FÁJLNÉV fájlt és behelyezi a jelenlegi fájlba
|
||||
a kurzorpozició utáni sorba.
|
||||
a kurzorpozíció utáni sorba.
|
||||
|
||||
|
||||
|
||||
@@ -629,7 +629,7 @@ MEGJ: A fájl, amit beillesztett a kurzora alatt helyezkedik el.
|
||||
6.1. lecke: A MEGNYITÁS (OPEN) PARANCS
|
||||
|
||||
|
||||
** o beírásával nyithat egy új sort a kurzor alatt és válthat beszúró módba **
|
||||
** o beírásával nyit egy új sort a kurzor alatt és beszúró módba vált **
|
||||
|
||||
1. Mozgassuk a kurzort a ---> kezdetű sorra.
|
||||
|
||||
@@ -641,7 +641,7 @@ MEGJ: A fájl, amit beillesztett a kurzora alatt helyezkedik el.
|
||||
|
||||
---> Az o lenyomása után a kurzor a következő sor elején áll beszúró módban.
|
||||
|
||||
4. A kurzor FELETTI for megnyitásához egyzserűen a nagy O betűt írjon
|
||||
4. A kurzor FELETTI sor megnyitásához egyszerűen nagy O betűt írjon
|
||||
kicsi helyett. Próbálja ki a következő soron!
|
||||
Nyisson egy új sort efelett Shift-O megnyomásával, mialatt a kurzor
|
||||
ezen a soron áll.
|
||||
@@ -654,16 +654,16 @@ ezen a soron áll.
|
||||
6.2. lecke: AZ APPEND PARANCS
|
||||
|
||||
|
||||
** a lenyomásával a kuror UTÁN szúrhatunk szöveget. **
|
||||
** a lenyomásával a kurzor UTÁN szúrhatunk szöveget. **
|
||||
|
||||
1. Mozgassuk a kurzort a következő ---> kezdetű sor végére úgy,
|
||||
hogy normál módban $ ír be.
|
||||
hogy normál módban $-t ír be.
|
||||
|
||||
2. a (kicsi) leütésével szöveget szúrhat be AMöGÉ a karakter mögé,
|
||||
2. Kis "a" leütésével szöveget szúrhat be AMÖGÉ a karakter mögé,
|
||||
amelyen a kurzor áll.
|
||||
(A nagy A az egész sor végére írja a szöveget.)
|
||||
(A nagy "A" az egész sor végére írja a szöveget.)
|
||||
|
||||
Megj: A Vimben a sor legvégére is lehet állni, azonba ez elődjében
|
||||
Megj: A Vimben a sor legvégére is lehet állni, azonban ez elődjében
|
||||
a Vi-ban nem lehetséges, ezért abban az a nélkül elég körülményes
|
||||
a sor végéhez szöveget írni.
|
||||
|
||||
@@ -687,13 +687,13 @@ Megj: A Vimben a sor legvégére is lehet állni, azonba ez elődjében
|
||||
2. Helyezze a kurzort az első szó elejére amely eltér a második
|
||||
---> kezdetű sor tartalmától (a 'az utolsóval' résztől).
|
||||
|
||||
3. Nyomjon R karaktert és írja ét a szöveg maradékát az első sorban
|
||||
3. Nyomjon R karaktert és írja át a szöveg maradékát az első sorban
|
||||
úgy, hogy a két sor egyező legyen.
|
||||
|
||||
---> Az első sort tegye azonossá az utolsóval: használja a gombokat.
|
||||
---> Az első sort tegye azonossá a másodikkal: írjon R-t és az új szöveget.
|
||||
|
||||
4. Jegyezzük meg, ha <ESC>-et nyomok, akkor a változatlanuk hagyott
|
||||
4. Jegyezzük meg, ha <ESC>-et nyomok, akkor a változatlanul hagyott
|
||||
szövegek változatlanok maradnak.
|
||||
|
||||
|
||||
@@ -826,5 +826,5 @@ Megj: A Vimben a sor legvégére is lehet állni, azonba ez elődjében
|
||||
|
||||
A Vimhez idomította Bram Moolenaar.
|
||||
|
||||
Magyarította: Horváth Árpád <horvath.arpad@roik.bmf.hu>, 2006-2008
|
||||
Magyarította: Horváth Árpád <horvath.arpad@arek.uni-opbuda.hu>, 2006-2012
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
" Vim tutor support file
|
||||
" Author: Eduardo F. Amatria <eferna1@platea.pntic.mec.es>
|
||||
" Maintainer: Bram Moolenaar
|
||||
" Last Change: 2008 Jul 21
|
||||
" Last Change: 2012 Sep 21
|
||||
|
||||
" This Vim script is used for detecting if a translation of the
|
||||
" tutor file exist, i.e., a tutor.xx file, where xx is the language.
|
||||
@@ -72,14 +72,20 @@ if s:ext =~? '\.ko'
|
||||
endif
|
||||
endif
|
||||
|
||||
" The Chinese tutor is available in two encodings, guess which one to use
|
||||
" The Chinese tutor is available in three encodings, guess which one to use
|
||||
" This segment is from the above lines and modified by
|
||||
" Mendel L Chan <beos@turbolinux.com.cn> for Chinese vim tutorial
|
||||
" When 'encoding' is utf-8, choose between China (simplified) and Taiwan
|
||||
" (traditional) based on the language, suggested by Alick Zhao.
|
||||
if s:ext =~? '\.zh'
|
||||
if &enc =~ 'big5\|cp950'
|
||||
let s:ext = ".zh.big5"
|
||||
elseif &enc != 'utf-8'
|
||||
let s:ext = ".zh.euc"
|
||||
elseif s:ext =~? 'zh_tw' || (exists("s:lang") && s:lang =~? 'zh_tw')
|
||||
let s:ext = ".zh_tw"
|
||||
else
|
||||
let s:ext = ".zh_cn"
|
||||
endif
|
||||
endif
|
||||
|
||||
|
||||
851
runtime/tutor/tutor.zh_cn.utf-8
Normal file
851
runtime/tutor/tutor.zh_cn.utf-8
Normal file
@@ -0,0 +1,851 @@
|
||||
===============================================================================
|
||||
= 欢 迎 阅 读 《 V I M 教 程 》 —— 版本 1.5 =
|
||||
===============================================================================
|
||||
vim 是一个具有很多命令的功能非常强大的编辑器。限于篇幅,在本教程当中
|
||||
就不详细介绍了。本教程的设计目标是讲述一些必要的基本命令,而掌握好这
|
||||
些命令,您就能够很容易将vim当作一个通用的万能编辑器来使用了。
|
||||
|
||||
完成本教程的内容大约需要25-30分钟,取决于您训练的时间。
|
||||
|
||||
每一节的命令操作将会更改本文。推荐您复制本文的一个副本,然后在副本上
|
||||
进行训练(如果您是通过"vimtutor"来启动教程的,那么本文就已经是副本了)。
|
||||
|
||||
切记一点∶本教程的设计思路是在使用中进行学习的。也就是说,您需要通过
|
||||
执行命令来学习它们本身的正确用法。如果您只是阅读而不操作,那么您可能
|
||||
会很快遗忘这些命令的!
|
||||
|
||||
好了,现在请确定您的Shift-Lock(大小写锁定键)还没有按下,然后按键盘上
|
||||
的字母键 j 足够多的次数来移动光标,直到第一节的内容能够完全充满屏幕。
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第一讲第一节∶移动光标
|
||||
|
||||
|
||||
※※ 要移动光标,请依照说明分别按下 h、j、k、l 键。 ※※
|
||||
|
||||
^
|
||||
k 提示∶ h 的键位于左边,每次按下就会向左移动。
|
||||
< h l > l 的键位于右边,每次按下就会向右移动。
|
||||
j j 键看起来很象一支尖端方向朝下的箭头。
|
||||
v
|
||||
|
||||
1. 请随意在屏幕内移动光标,直至您觉得舒服为止。
|
||||
|
||||
2. 按下下行键(j),直到出现光标重复下行。
|
||||
|
||||
---> 现在您应该已经学会如何移动到下一讲吧。
|
||||
|
||||
3. 现在请使用下行键,将光标移动到第二讲。
|
||||
|
||||
提示∶如果您不敢确定您所按下的字母,请按下<ESC>键回到正常(Normal)模式。
|
||||
然后再次从键盘输入您想要的命令。
|
||||
|
||||
提示∶光标键应当也能正常工作的。但是使用hjkl键,在习惯之后您就能够快速
|
||||
地在屏幕内四处移动光标了。
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第一讲第二节∶VIM的进入和退出
|
||||
|
||||
|
||||
!! 特别提示∶敬请阅读完整本一节的内容,然后才能执行以下所讲解的命令。
|
||||
|
||||
1. 请按<ESC>键(这是为了确保您处在正常模式)。
|
||||
|
||||
2. 然后输入∶ :q! <回车>
|
||||
|
||||
---> 这种方式的退出编辑器绝不会保存您进入编辑器以来所做的改动。
|
||||
如果您想保存更改再退出,请输入∶
|
||||
:wq <回车>
|
||||
|
||||
3. 如果您看到了命令行提示符,请输入能够带您回到本教程的命令,那就是∶
|
||||
|
||||
vimtutor <回车>
|
||||
|
||||
通常情况下您也可以用这种方式∶
|
||||
|
||||
vim tutor <回车>
|
||||
|
||||
---> 这里的 'vim' 表示进入vim编辑器,而 'tutor'则是您准备要编辑的文件。
|
||||
|
||||
4. 如果您自信已经牢牢记住了这些步骤的话,请从步骤1执行到步骤3退出,然
|
||||
后再次进入编辑器。接着将光标移动到第一讲第三节来继续我们的教程讲解。
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第一讲第三节∶文本编辑之删除
|
||||
|
||||
|
||||
** 在正常(Normal)模式下,可以按下 x 键来删除光标所在位置的字符。**
|
||||
|
||||
1. 请将光标移动到本节中下面标记有 ---> 的那一行。
|
||||
|
||||
2. 为了修正输入错误,请将光标移至准备删除的字符的位置处。
|
||||
|
||||
3. 然后按下 x 键将错误字符删除掉。
|
||||
|
||||
4. 重复步骤2到步骤4,直到句子修正为止。
|
||||
|
||||
---> The ccow jumpedd ovverr thhe mooon.
|
||||
|
||||
5. 好了,该行已经修正了,下一节内容是第一讲第四节。
|
||||
|
||||
特别提示∶在您浏览本教程时,不要强行记忆。记住一点∶在使用中学习。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第一讲第四节∶文本编辑之插入
|
||||
|
||||
|
||||
** 在正常模式下,可以按下 i 键来插入文本。**
|
||||
|
||||
1. 请将光标移动到本节中下面标记有 ---> 的第一行。
|
||||
|
||||
2. 为了使得第一行内容雷同于第二行,请将光标移至文本第一个字符准备插入
|
||||
的位置。
|
||||
|
||||
3. 然后按下 i 键,接着输入必要的文本字符。
|
||||
|
||||
4. 所有文本都修正完毕,请按下 <ESC> 键返回正常模式。
|
||||
重复步骤2至步骤4以便修正句子。
|
||||
|
||||
---> There is text misng this .
|
||||
---> There is some text missing from this line.
|
||||
|
||||
5. 如果您对文本插入操作已经很满意,请接着阅读下面的小结。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第一讲小结
|
||||
|
||||
|
||||
1. 光标在屏幕文本中的移动既可以用箭头键,也可以使用 hjkl 字母键。
|
||||
h (左移) j (下行) k (上行) l (右移)
|
||||
|
||||
2. 欲进入vim编辑器(从命令行提示符),请输入∶vim 文件名 <回车>
|
||||
|
||||
3. 欲退出vim编辑器,请输入以下命令放弃所有修改∶
|
||||
|
||||
<ESC> :q! <回车>
|
||||
|
||||
或者输入以下命令保存所有修改∶
|
||||
|
||||
<ESC> :wq <回车>
|
||||
|
||||
4. 在正常模式下删除光标所在位置的字符,请按∶ x
|
||||
|
||||
5. 在正常模式下要在光标所在位置开始插入文本,请按∶
|
||||
|
||||
i 输入必要文本 <ESC>
|
||||
|
||||
特别提示∶按下 <ESC> 键会带您回到正常模式或者取消一个不期望或者部分完成
|
||||
的命令。
|
||||
|
||||
好了,第一讲到此结束。下面接下来继续第二讲的内容。
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第二讲第一节∶删除类命令
|
||||
|
||||
|
||||
** 输入 dw 可以从光标处删除至一个单字/单词的末尾。**
|
||||
|
||||
1. 请按下 <ESC> 键确保您处于正常模式。
|
||||
|
||||
2. 请将光标移动到本节中下面标记有 ---> 的那一行。
|
||||
|
||||
3. 请将光标移至准备要删除的单词的开始。
|
||||
|
||||
4. 接着输入 dw 删除掉该单词。
|
||||
|
||||
特别提示∶您所输入的 dw 会在您输入的同时出现在屏幕的最后一行。如果您输
|
||||
入有误,请按下 <ESC> 键取消,然后重新再来。
|
||||
|
||||
---> There are a some words fun that don't belong paper in this sentence.
|
||||
|
||||
5. 重复步骤3至步骤4,直至句子修正完毕。接着继续第二讲第二节内容。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第二讲第二节∶其他删除类命令
|
||||
|
||||
|
||||
** 输入 d$ 从当前光标删除到行末。**
|
||||
|
||||
1. 请按下 <ESC> 键确保您处于正常模式。
|
||||
|
||||
2. 请将光标移动到本节中下面标记有 ---> 的那一行。
|
||||
|
||||
3. 请将光标移动到该行的尾部(也就是在第一个点号‘.’后面)。
|
||||
|
||||
4. 然后输入 d$ 从光标处删至当前行尾部。
|
||||
|
||||
---> Somebody typed the end of this line twice. end of this line twice.
|
||||
|
||||
|
||||
5. 请继续学习第二讲第三节就知道是怎么回事了。
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第二讲第三节∶关于命令和对象
|
||||
|
||||
|
||||
删除命令 d 的格式如下∶
|
||||
|
||||
[number] d object 或者 d [number] object
|
||||
|
||||
其意如下∶
|
||||
number - 代表执行命令的次数(可选项,缺省设置为 1 )。
|
||||
d - 代表删除。
|
||||
object - 代表命令所要操作的对象(下面有相关介绍)。
|
||||
|
||||
一个简短的对象列表∶
|
||||
w - 从当前光标当前位置直到单字/单词末尾,包括空格。
|
||||
e - 从当前光标当前位置直到单字/单词末尾,但是 *不* 包括空格。
|
||||
$ - 从当前光标当前位置直到当前行末。
|
||||
|
||||
特别提示∶
|
||||
对于勇于探索者,请在正常模式下面仅按代表相应对象的键而不使用命令,则
|
||||
将看到光标的移动正如上面的对象列表所代表的一样。
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第二讲第四节∶对象命令的特殊情况
|
||||
|
||||
|
||||
** 输入 dd 可以删除整一个当前行。 **
|
||||
|
||||
鉴于整行删除的高频度,VIM 的设计者决定要简化整行删除,仅需要在同一行上
|
||||
击打两次 d 就可以删除掉光标所在的整行了。
|
||||
|
||||
1. 请将光标移动到本节中下面的短句段落中的第二行。
|
||||
2. 输入 dd 删除该行。
|
||||
3. 然后移动到第四行。
|
||||
4. 接着输入 2dd (还记得前面讲过的 number-command-object 吗?) 删除两行。
|
||||
|
||||
1) Roses are red,
|
||||
2) Mud is fun,
|
||||
3) Violets are blue,
|
||||
4) I have a car,
|
||||
5) Clocks tell time,
|
||||
6) Sugar is sweet
|
||||
7) And so are you.
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第二讲第五节∶撤消类命令
|
||||
|
||||
|
||||
** 输入 u 来撤消最后执行的命令,输入 U 来修正整行。**
|
||||
|
||||
1. 请将光标移动到本节中下面标记有 ---> 的那一行,并将其置于第一个错误
|
||||
处。
|
||||
2. 输入 x 删除第一个不想保留的字母。
|
||||
3. 然后输入 u 撤消最后执行的(一次)命令。
|
||||
4. 这次要使用 x 修正本行的所有错误。
|
||||
5. 现在输入一个大写的 U ,恢复到该行的原始状态。
|
||||
6. 接着多次输入 u 以撤消 U 以及更前的命令。
|
||||
7. 然后多次输入 CTRL-R (先按下 CTRL 键不放开,接着输入 R 键) ,这样就
|
||||
可以执行恢复命令,也就是撤消掉撤消命令。
|
||||
|
||||
---> Fiix the errors oon thhis line and reeplace them witth undo.
|
||||
|
||||
8. 这些都是非常有用的命令。下面是第二讲的小结了。
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第二讲小结
|
||||
|
||||
|
||||
1. 欲从当前光标删除至单字/单词末尾,请输入∶dw
|
||||
|
||||
2. 欲从当前光标删除至当前行末尾,请输入∶d$
|
||||
|
||||
3. 欲删除整行,请输入∶dd
|
||||
|
||||
4. 在正常模式下一个命令的格式是∶
|
||||
|
||||
[number] command object 或者 command [number] object
|
||||
其意是∶
|
||||
number - 代表的是命令执行的次数
|
||||
command - 代表要做的事情,比如 d 代表删除
|
||||
object - 代表要操作的对象,比如 w 代表单字/单词,$ 代表到行末等等。
|
||||
$ (to the end of line), etc.
|
||||
|
||||
5. 欲撤消以前的操作,请输入∶u (小写的u)
|
||||
欲撤消在一行中所做的改动,请输入∶U (大写的U)
|
||||
欲撤消以前的撤消命令,恢复以前的操作结果,请输入∶CTRL-R
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第三讲第一节∶置入类命令
|
||||
|
||||
|
||||
** 输入 p 将最后一次删除的内容置入光标之后 **
|
||||
|
||||
1. 请将光标移动到本节中下面示范段落的首行。
|
||||
|
||||
2. 输入 dd 将该行删除,这样会将该行保存到vim的缓冲区中。
|
||||
|
||||
3. 接着将光标移动到准备置入的位置的上方。记住∶是上方哦。
|
||||
|
||||
4. 然后在正常模式下(<ESC>键进入),输入 p 将该行粘贴置入。
|
||||
|
||||
5. 重复步骤2至步骤4,将所有的行依序放置到正确的位置上。
|
||||
|
||||
d) Can you learn too?
|
||||
b) Violets are blue,
|
||||
c) Intelligence is learned,
|
||||
a) Roses are red,
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第三讲第二节∶替换类命令
|
||||
|
||||
|
||||
** 输入 r 和一个字符替换光标所在位置的字符。**
|
||||
|
||||
1. 请将光标移动到本节中下面标记有 ---> 的第一行。
|
||||
|
||||
2. 请移动光标到第一个错误的适当位置。
|
||||
|
||||
3. 接着输入 r ,这样就能将错误替换掉了。
|
||||
|
||||
4. 重复步骤2和步骤3,直到第一行已经修改完毕。
|
||||
|
||||
---> Whan this lime was tuoed in, someone presswd some wrojg keys!
|
||||
---> When this line was typed in, someone pressed some wrong keys!
|
||||
|
||||
5. 然后我们继续学校第三讲第三节。
|
||||
|
||||
特别提示∶切记您要在使用中学习,而不是在记忆中学习。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第三讲第三节∶更改类命令
|
||||
|
||||
|
||||
** 要改变一个单字/单词的部分或者全部,请输入 cw **
|
||||
|
||||
1. 请将光标移动到本节中下面标记有 ---> 的第一行。
|
||||
|
||||
2. 接着把光标放在单词 lubw 的字母 u 的位置那里。
|
||||
|
||||
3. 然后输入 cw 就可以修正该单词了(在本例这里是输入 ine 。)
|
||||
|
||||
4. 最后按 <ESC> 键,然后光标定位到下一个错误第一个准备更改的字母处。
|
||||
|
||||
5. 重复步骤3和步骤4,直到第一个句子完全雷同第二个句子。
|
||||
|
||||
---> This lubw has a few wptfd that mrrf changing usf the change command.
|
||||
---> This line has a few words that need changing using the change command.
|
||||
|
||||
提示∶请注意 cw 命令不仅仅是替换了一个单词,也让您进入文本插入状态了。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第三讲第四节∶使用c指令的其他更改类命令
|
||||
|
||||
|
||||
** 更改类指令可以使用同删除类命令所使用的对象参数。**
|
||||
|
||||
1. 更改类指令的工作方式跟删除类命令是一致的。操作格式是∶
|
||||
|
||||
[number] c object 或者 c [number] object
|
||||
|
||||
2. 对象参数也是一样的,比如 w 代表单字/单词,$代表行末等等。
|
||||
|
||||
3. 请将光标移动到本节中下面标记有 ---> 的第一行。
|
||||
|
||||
4. 接着将光标移动到第一个错误处。
|
||||
|
||||
5. 然后输入 c$ 使得该行剩下的部分更正得同第二行一样。最后按 <ESC> 键。
|
||||
|
||||
---> The end of this line needs some help to make it like the second.
|
||||
---> The end of this line needs to be corrected using the c$ command.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第三讲小结
|
||||
|
||||
|
||||
1. 要重新置入已经删除的文本内容,请输入小写字母 p。该操作可以将已删除
|
||||
的文本内容置于光标之后。如果最后一次删除的是一个整行,那么该行将置
|
||||
于当前光标所在行的下一行。
|
||||
|
||||
2. 要替换光标所在位置的字符,请输入小写的 r 和要替换掉原位置字符的新字
|
||||
符即可。
|
||||
|
||||
3. 更改类命令允许您改变指定的对象,从当前光标所在位置直到对象的末尾。
|
||||
比如输入 cw 可以替换当前光标到单词的末尾的内容;输入 c$ 可以替换当
|
||||
前光标到行末的内容。
|
||||
|
||||
4. 更改类命令的格式是∶
|
||||
|
||||
[number] c object 或者 c [number] object
|
||||
|
||||
下面我们继续学习下一讲。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第四讲第一节∶定位及文件状态
|
||||
|
||||
|
||||
** 输入 CTRL-g 显示当前编辑文件中当前光标所在行位置以及文件状态信息。
|
||||
输入 SHIFT-G 则直接跳转到文件中的某一指定行。**
|
||||
|
||||
提示∶切记要先通读本节内容,之后才可以执行以下步骤!!!
|
||||
|
||||
1. 按下 CTRL 键不放开然后按 g 键。然后就会看到页面最底部出现一个状态信
|
||||
息行,显示的内容是当前编辑的文件名和文件的总行数。请记住步骤3的行号。
|
||||
|
||||
2. 按下 SHIFT-G 键可以使得当前光标直接跳转到文件最后一行。
|
||||
|
||||
3. 输入您曾停留的行号,然后按下 SHIFT-G。这样就可以返回到您第一次按下
|
||||
CTRL-g 时所在的行好了。注意∶输入行号时,行号是不会在屏幕上显示出来
|
||||
的。
|
||||
|
||||
4. 如果愿意,您可以继续执行步骤1至步骤三。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第四讲第二节∶搜索类命令
|
||||
|
||||
|
||||
** 输入 / 以及尾随的字符串可以用以在当前文件中查找该字符串。**
|
||||
|
||||
1. 在正常模式下输入 / 字符。您此时会注意到该字符和光标都会出现在屏幕底
|
||||
部,这跟 : 命令是一样的。
|
||||
|
||||
2. 接着输入 errroor <回车>。那个errroor就是您要查找的字符串。
|
||||
|
||||
3. 要查找同上一次的字符串,只需要按 n 键。要向相反方向查找同上一次的字
|
||||
符串,请输入 Shift-N 即可。
|
||||
|
||||
4. 如果您想逆向查找字符串,请使用 ? 代替 / 进行。
|
||||
|
||||
---> When the search reaches the end of the file it will continue at the start.
|
||||
|
||||
"errroor" is not the way to spell error; errroor is an error.
|
||||
|
||||
提示∶如果查找已经到达文件末尾,查找会自动从文件头部继续查找。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第四讲第三节∶配对括号的查找
|
||||
|
||||
|
||||
** 按 % 可以查找配对的括号 )、]、}。**
|
||||
|
||||
1. 把光标放在本节下面标记有 --> 那一行中的任何一个 (、[ 或 { 处。
|
||||
|
||||
2. 接着按 % 字符。
|
||||
|
||||
3. 此时光标的位置应当是在配对的括号处。
|
||||
|
||||
4. 再次按 % 就可以跳回配对的第一个括号处。
|
||||
|
||||
---> This ( is a test line with ('s, ['s ] and {'s } in it. ))
|
||||
|
||||
提示∶在程序调试时,这个功能用来查找不配对的括号是很有用的。
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第四讲第四节∶修正错误的方法之一
|
||||
|
||||
|
||||
** 输入 :s/old/new/g 可以替换 old 为 new。**
|
||||
|
||||
1. 请将光标移动到本节中下面标记有 ---> 的那一行。
|
||||
|
||||
2. 输入 :s/thee/the <回车> 。请注意该命令只改变光标所在行的第一个匹配
|
||||
串。
|
||||
|
||||
3. 输入 :s/thee/the/g 则是替换全行的匹配串。
|
||||
|
||||
---> the best time to see thee flowers is in thee spring.
|
||||
|
||||
4. 要替换两行之间出现的每个匹配串,请输入 :#,#s/old/new/g (#,#代表的是
|
||||
两行的行号)。输入 :%s/old/new/g 则是替换整个文件中的每个匹配串。
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第四讲小结
|
||||
|
||||
|
||||
1. Ctrl-g 用于显示当前光标所在位置和文件状态信息。Shift-G 用于将光标跳
|
||||
转至文件最后一行。先敲入一个行号然后按 Shift-G 则是将光标移动至该行
|
||||
号代表的行。
|
||||
|
||||
2. 输入 / 然后紧随一个字符串是则是在当前所编辑的文档中向后查找该字符串。
|
||||
输入问号 ? 然后紧随一个字符串是则是在当前所编辑的文档中向前查找该字
|
||||
符串。完成一次查找之后按 n 键则是重复上一次的命令,可在同一方向上查
|
||||
找下一个字符串所在;或者按 Shift-N 向相反方向查找下该字符串所在。
|
||||
|
||||
3. 如果光标当前位置是括号(、)、[、]、{、},按 % 可以将光标移动到配对的
|
||||
括号上。
|
||||
|
||||
4. 在一行内替换头一个字符串 old 为新的字符串 new,请输入 :s/old/new
|
||||
在一行内替换所有的字符串 old 为新的字符串 new,请输入 :s/old/new/g
|
||||
在两行内替换所有的字符串 old 为新的字符串 new,请输入 :#,#s/old/new/g
|
||||
在文件内替换所有的字符串 old 为新的字符串 new,请输入 :%s/old/new/g
|
||||
进行全文替换时询问用户确认每个替换需添加 c 选项,请输入 :%s/old/new/gc
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第五讲第一节∶在 VIM 内执行外部命令的方法
|
||||
|
||||
|
||||
** 输入 :! 然后紧随著输入一个外部命令可以执行该外部命令。**
|
||||
|
||||
1. 按下我们所熟悉的 : 命令设置光标到屏幕底部。这样就可以让您输入命令了。
|
||||
|
||||
2. 接着输入感叹号 ! 这个字符,这样就允许您执行外部的 shell 命令了。
|
||||
|
||||
3. 我们以 ls 命令为例。输入 !ls <回车> 。该命令就会列举出您当前目录的
|
||||
内容,就如同您在命令行提示符下输入 ls 命令的结果一样。如果 !ls 没起
|
||||
作用,您可以试试 :!dir 看看。
|
||||
|
||||
---> 提示∶ 所有的外部命令都可以以这种方式执行。
|
||||
|
||||
---> 提示∶ 所有的 : 命令都必须以 <回车> 告终。
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第五讲第二节∶关于保存文件的更多信息
|
||||
|
||||
|
||||
** 要将对文件的改动保存到文件中,请输入 :w FILENAME 。**
|
||||
|
||||
1. 输入 :!dir 或者 :!ls 获知当前目录的内容。您应当已知道最后还得敲
|
||||
<回车> 吧。
|
||||
|
||||
2. 选择一个尚未存在文件名,比如 TEST 。
|
||||
|
||||
3. 接着输入 :w TEST (此处 TEST 是您所选择的文件名。)
|
||||
|
||||
4. 该命令会以 TEST 为文件名保存整个文件 (VIM 教程)。为了确保正确保存,
|
||||
请再次输入 :!dir 查看您的目录列表内容。
|
||||
|
||||
---> 请注意∶如果您退出 VIM 然后在以文件名 TEST 为参数进入,那么该文件内
|
||||
容应该同您保存时的文件内容是完全一样的。
|
||||
|
||||
5. 现在您可以通过输入 :!rm TEST 来删除 TEST 文件了。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第五讲第三节∶一个具有选择性的保存命令
|
||||
|
||||
|
||||
** 要保存文件的部分内容,请输入 :#,# w FILENAME **
|
||||
|
||||
1. 再来执行一次 :!dir 或者 :!ls 获知当前目录的内容,然后选择一个合适的
|
||||
不重名的文件名,比如 TEST 。
|
||||
|
||||
2. 接着将光标移动至本页的最顶端,然后按 CTRL-g 找到该行的行号。别忘了
|
||||
行号哦。
|
||||
|
||||
3. 接着把光标移动至本页的最底端,再按一次 CTRL-g 。也别忘了这个行好哦。
|
||||
|
||||
4. 为了只保存文章的某个部分,请输入 :#,# w TEST 。这里的 #,# 就是上面
|
||||
要求您记住的行号(顶端行号,底端行号),而 TEST 就是选定的文件名。
|
||||
|
||||
5. 最后,用 :!dir 确认文件是否正确保存。但是这次先别删除掉。
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第五讲第四节∶提取和合并文件
|
||||
|
||||
|
||||
** 要向当前文件中插入另外的文件的内容,请输入 :r FILENAME **
|
||||
|
||||
1. 请键入 :!dir 确认您前面创建的 TEST 文件还在。
|
||||
|
||||
2. 然后将光标移动至当前页面的顶端。
|
||||
|
||||
特别提示∶ 执行步骤3之后您将看到第五讲第三节,请届时再往下移动回到这里来。
|
||||
|
||||
3. 接着通过 :r TEST 将前面创建的名为 TEST 的文件提取进来。
|
||||
|
||||
特别提示∶您所提取进来的文件将从光标所在位置处开始置入。
|
||||
|
||||
4. 为了确认文件已经提取成功,移动光标回到原来的位置就可以注意有两份第
|
||||
五讲第三节,一份是原本,另外一份是来自文件的副本。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第五讲小结
|
||||
|
||||
|
||||
1. :!command 用于执行一个外部命令 command。
|
||||
|
||||
请看一些实际例子∶
|
||||
:!dir - 用于显示当前目录的内容。
|
||||
:!rm FILENAME - 用于删除名为 FILENAME 的文件。
|
||||
|
||||
2. :w FILENAME 可将当前 VIM 中正在编辑的文件保存到名为 FILENAME 的文
|
||||
件中。
|
||||
|
||||
3. :#,#w FILENAME 可将当前编辑文件第 # 行至第 # 行的内容保存到文件
|
||||
FILENAME 中。
|
||||
|
||||
4. :r FILENAME 可提取磁盘文件 FILENAME 并将其插入到当前文件的光标位置
|
||||
后面。
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第六讲第一节∶打开类命令
|
||||
|
||||
|
||||
** 输入 o 将在光标的下方打开新的一行并进入插入模式。**
|
||||
|
||||
1. 请将光标移动到本节中下面标记有 ---> 的那一行。
|
||||
|
||||
2. 接着输入小写的 o 在光标 *下方* 打开新的一行并进入插入模式。
|
||||
|
||||
3. 然后复制标记有 ---> 的行并按 <ESC> 键退出插入模式而进入正常模式。
|
||||
|
||||
---> After typing o the cursor is placed on the open line in Insert mode.
|
||||
|
||||
4. 为了在光标 *上方* 打开新的一行,只需要输入大写的 O 而不是小写的 o
|
||||
就可以了。请在下行测试一下吧。当光标处在在该行上时,按 Shift-O可以
|
||||
在该行上方新开一行。
|
||||
|
||||
Open up a line above this by typing Shift-O while the cursor is on this line.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第六讲第二节∶光标后插入类命令
|
||||
|
||||
|
||||
** 输入 a 将可在光标之后插入文本。 **
|
||||
|
||||
1. 请在正常模式下通过输入 $ 将光标移动到本节中下面标记有 ---> 的第一行
|
||||
的末尾。
|
||||
|
||||
2. 接着输入小写的 a 则可在光标之后插入文本了。大写的 A 则可以直接在行
|
||||
末插入文本。
|
||||
|
||||
提示∶输入大写 A 的操作方法可以在行末插入文本,避免了输入 i,光标定位到
|
||||
最后一个字符,输入的文本,<ESC> 回复正常模式,箭头右键移动光标以及
|
||||
x 删除当前光标所在位置字符等等诸多繁杂的操作。
|
||||
|
||||
3. 操作之后第一行就可以补充完整了。请注意光标后插入文本与插入模式是基
|
||||
本完全一致的,只是文本插入的位置定位稍有不同罢了。
|
||||
|
||||
---> This line will allow you to practice
|
||||
---> This line will allow you to practice appending text to the end of a line.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第六讲第三节∶另外一个置换类命令的版本
|
||||
|
||||
|
||||
** 输入大写的 R 可连续替换多个字符。**
|
||||
|
||||
1. 请将光标移动到本节中下面标记有 ---> 的第一行。
|
||||
|
||||
2. 移动光标到第一行中不同于标有 ---> 的第二行的第一个单词的开始,即单
|
||||
词 last 处。
|
||||
|
||||
3. 然后输入大写的 R 开始把第一行中的不同于第二行的剩余字符逐一输入,就
|
||||
可以全部替换掉原有的字符而使得第一行完全雷同第二行了。
|
||||
|
||||
---> To make the first line the same as the last on this page use the keys.
|
||||
---> To make the first line the same as the second, type R and the new text.
|
||||
|
||||
4. 请注意∶如果您按 <ESC> 退出置换模式回复正常模式,尚未替换的文本将仍
|
||||
然保持原状。
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第六讲第四节∶设置类命令的选项
|
||||
|
||||
|
||||
** 设置可使查找或者替换可忽略大小写的选项 **
|
||||
|
||||
|
||||
1. 要查找单词 ignore 可在正常模式下输入 /ignore 。要重复查找该词,可以
|
||||
重复按 n 键。
|
||||
|
||||
2. 然后设置 ic 选项(ic就是英文忽略大小写Ignore Case的首字母缩写词),即
|
||||
输入∶
|
||||
:set ic
|
||||
|
||||
3. 现在可以通过键入 n 键再次查找单词 ignore。重复查找可以重复键入 n 键。
|
||||
|
||||
4. 然后设置 hlsearch 和 incsearch 这两个选项,输入以下内容∶
|
||||
:set hls is
|
||||
|
||||
5. 现在可以再次输入查找命令,看看会有什么效果∶
|
||||
/ignore
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第六讲小结
|
||||
|
||||
|
||||
1. 输入小写的 o 可以在光标下方打开新的一行并将光标置于新开的行首,进入
|
||||
插入模式。
|
||||
输入大写的 O 可以在光标上方打开新的一行并将光标置于新开的行首,进入
|
||||
插入模式。
|
||||
|
||||
2. 输入小写的 a 可以在光标所在位置之后插入文本。
|
||||
输入大写的 A 可以在光标所在行的行末之后插入文本。
|
||||
|
||||
3. 输入大写的 R 将进入替换模式,直至按 <ESC> 键退出替换模式而进入正常
|
||||
模式。
|
||||
|
||||
4. 输入 :set xxx 可以设置 xxx 选项。
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第七讲∶在线帮助命令
|
||||
|
||||
** 使用在线帮助系统 **
|
||||
|
||||
Vim 拥有一个细致全面的在线帮助系统。要启动该帮助系统,请选择如下三种方
|
||||
法之一∶
|
||||
- 按下 <HELP> 键 (如果键盘上有的话)
|
||||
- 按下 <F1> 键 (如果键盘上有的话)
|
||||
- 输入 :help <回车>
|
||||
|
||||
输入 :q <回车> 可以关闭帮助窗口。
|
||||
|
||||
提供一个正确的参数给":help"命令,您可以找到关于该主题的帮助。请试验以
|
||||
下参数(可别忘了按回车键哦。:)∶
|
||||
|
||||
:help w <回车>
|
||||
:help c_<T <回车>
|
||||
:help insert-index <回车>
|
||||
:help user-manual <回车>
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第八讲∶创建一个启动脚本
|
||||
|
||||
** 启用vim的功能 **
|
||||
|
||||
Vim的功能特性要比vi多得多,但大部分功能都没有缺省激活。为了启动更多的
|
||||
功能,您得创建一个vimrc文件。
|
||||
|
||||
1. 开始编辑vimrc文件,这取决于您所使用的操作系统∶
|
||||
|
||||
:edit ~/.vimrc 这是Unix系统所使用的命令
|
||||
:edit $VIM/_vimrc 这是Windows系统所使用的命令
|
||||
|
||||
2. 接着导入vimrc范例文件∶
|
||||
|
||||
:read $VIMRUNTIME/vimrc_example.vim
|
||||
|
||||
3. 保存文件,命令为∶
|
||||
|
||||
:write
|
||||
|
||||
在下次您启动vim的时候,编辑器就会有了语法高亮的功能。您可以继续把您喜
|
||||
欢的其它功能设置添加到这个vimrc文件中。
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
vim 教程到此结束。本教程只是为了简明地介绍一下vim编辑器,但已足以让您
|
||||
很容易学会使用本编辑器了。毋庸质疑,vim还有很多很多的命令,本教程所介
|
||||
绍的还差得远著呢。所以您要精通的话,还望继续努力哦。下一步您可以阅读
|
||||
vim手册,使用的命令是∶
|
||||
:help user-manual
|
||||
|
||||
为了更进一步的参考和学习,以下这本书值得推荐∶
|
||||
|
||||
Vim - Vi Improved - 作者∶Steve Oualline
|
||||
出版社∶New Riders
|
||||
|
||||
这是第一本完全讲解vim的书籍。对于初学者特别有用。其中还包含有大量实例
|
||||
和图示。欲知详情,请访问 http://iccf-holland.org/click5.html
|
||||
|
||||
以下这本书比较老了而且内容主要是vi而不是vim,但是也值得推荐∶
|
||||
|
||||
Learning the Vi Editor - 作者∶Linda Lamb
|
||||
出版社∶O'Reilly & Associates Inc.
|
||||
|
||||
这是一本不错的书,通过它您几乎能够了解到全部vi能够做到的事情。此书的第
|
||||
六个版本也包含了一些关于vim的信息。
|
||||
|
||||
本教程是由来自Calorado School of Minese的Michael C. Pierce、Robert K.
|
||||
Ware 所编写的,其中来自Colorado State University的Charles Smith提供了
|
||||
很多创意。编者通信地址是∶
|
||||
|
||||
bware@mines.colorado.edu
|
||||
|
||||
本教程已由Bram Moolenaar专为vim进行修订。
|
||||
|
||||
|
||||
|
||||
译制者附言∶
|
||||
===========
|
||||
简体中文教程翻译版之译制者为梁昌泰 <beos@turbolinux.com.cn>,还有
|
||||
另外一个联系地址∶linuxrat@gnuchina.org。
|
||||
|
||||
繁体中文教程是从简体中文教程翻译版使用 Debian GNU/Linux 中文项目小
|
||||
组的于广辉先生编写的中文汉字转码器 autoconvert 转换而成的,并对转
|
||||
换的结果做了一些细节的改动。
|
||||
|
||||
变更记录∶
|
||||
=========
|
||||
2002年08月30日 梁昌泰 <beos@turbolinux.com.cn>
|
||||
感谢 RMS@SMTH 的指正,将多处错误修正。
|
||||
|
||||
2002年04月22日 梁昌泰 <linuxrat@gnuchina.org>
|
||||
感谢 xuandong@sh163.net 的指正,将两处错别字修正。
|
||||
|
||||
2002年03月18日 梁昌泰 <linuxrat@gnuchina.org>
|
||||
根据Bram Molenaar先生在2002年03月16日的来信要求,将vimtutor1.4中译
|
||||
版升级到vimtutor1.5。
|
||||
|
||||
2001年11月15日 梁昌泰 <linuxrat@gnuchina.org>
|
||||
将vimtutor1.4中译版提交给Bram Molenaar和Sven Guckes。
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
852
runtime/tutor/tutor.zh_tw.utf-8
Normal file
852
runtime/tutor/tutor.zh_tw.utf-8
Normal file
@@ -0,0 +1,852 @@
|
||||
===============================================================================
|
||||
= 歡 迎 閱 讀 《 V I M 教 程 》 ── 版本 1.5 =
|
||||
===============================================================================
|
||||
vim 是一個具有很多命令的功能非常強大的編輯器。限于篇幅,在本教程當中
|
||||
不就詳細介紹了。本教程的設計目標是講述一些必要的基本命令,而掌握好這
|
||||
些命令,您就能夠很容易將vim當作一個通用的萬能編輯器來使用了。
|
||||
|
||||
完成本教程的內容大約需要25-30分鐘,取決于您訓練的時間。
|
||||
|
||||
每一節的命令操作將會更改本文。推薦您復制本文的一個副本,然後在副本上
|
||||
進行訓練(如果您是通過"vimtutor"來啟動教程的,那麼本文就已經是副本了)。
|
||||
|
||||
切記一點︰本教程的設計思路是在使用中進行學習的。也就是說,您需要通過
|
||||
執行命令來學習它們本身的正確用法。如果您只是閱讀而不操作,那麼您可能
|
||||
會很快遺忘這些命令的!
|
||||
|
||||
好了,現在請確定您的Shift-Lock(大小寫鎖定鍵)還沒有按下,然後按鍵盤上
|
||||
的字母鍵 j 足夠多的次數來移動光標,直到第一節的內容能夠完全充滿屏幕。
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第一講第一節︰移動光標
|
||||
|
||||
|
||||
※※ 要移動光標,請依照說明分別按下 h、j、k、l 鍵。 ※※
|
||||
|
||||
^
|
||||
k 提示︰ h 的鍵位于左邊,每次按下就會向左移動。
|
||||
< h l > l 的鍵位于右邊,每次按下就會向右移動。
|
||||
j j 鍵看起來很象一支尖端方向朝下的箭頭。
|
||||
v
|
||||
|
||||
1. 請隨意在屏幕內移動光標,直至您覺得舒服為止。
|
||||
|
||||
2. 按下下行鍵(j),直到出現光標重復下行。
|
||||
|
||||
---> 現在您應該已經學會如何移動到下一講吧。
|
||||
|
||||
3. 現在請使用下行鍵,將光標移動到第二講。
|
||||
|
||||
提示︰如果您不敢確定您所按下的字母,請按下<ESC>鍵回到正常(Normal)模式。
|
||||
然後再次從鍵盤輸入您想要的命令。
|
||||
|
||||
提示︰光標鍵應當也能正常工作的。但是使用hjkl鍵,在習慣之後您就能夠快速
|
||||
地在屏幕內四處移動光標了。
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第一講第二節︰VIM的進入和退出
|
||||
|
||||
|
||||
!! 特別提示︰敬請閱讀完整本一節的內容,然後才能執行以下所講解的命令。
|
||||
|
||||
1. 請按<ESC>鍵(這是為了確保您處在正常模式)。
|
||||
|
||||
2. 然後輸入︰ :q! <回車>
|
||||
|
||||
---> 這種方式的退出編輯器絕不會保存您進入編輯器以來所做的改動。
|
||||
如果您想保存更改再退出,請輸入︰
|
||||
:wq <回車>
|
||||
|
||||
3. 如果您看到了命令行提示符,請輸入能夠帶您回到本教程的命令,那就是︰
|
||||
|
||||
vimtutor <回車>
|
||||
|
||||
通常情況下您也可以用這種方式︰
|
||||
|
||||
vim tutor <回車>
|
||||
|
||||
---> 這裡的 'vim' 表示進入vim編輯器,而 'tutor'則是您準備要編輯的文件。
|
||||
|
||||
4. 如果您自信已經牢牢記住了這些步驟的話,請從步驟1執行到步驟3退出,然
|
||||
後再次進入編輯器。接著將光標移動到第一講第三節來繼續我們的教程講解。
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第一講第三節︰文本編輯之刪除
|
||||
|
||||
|
||||
** 在正常(Normal)模式下,可以按下 x 鍵來刪除光標所在位置的字符。**
|
||||
|
||||
1. 請將光標移動到本節中下面標記有 ---> 的那一行。
|
||||
|
||||
2. 為了修正輸入錯誤,請將光標移至準備刪除的字符的位置處。
|
||||
|
||||
3. 然後按下 x 鍵將錯誤字符刪除掉。
|
||||
|
||||
4. 重復步驟2到步驟4,直到句子修正為止。
|
||||
|
||||
---> The ccow jumpedd ovverr thhe mooon.
|
||||
|
||||
5. 好了,該行已經修正了,下一節內容是第一講第四節。
|
||||
|
||||
特別提示︰在您瀏覽本教程時,不要強行記憶。記住一點︰在使用中學習。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第一講第四節︰文本編輯之插入
|
||||
|
||||
|
||||
** 在正常模式下,可以按下 i 鍵來插入文本。**
|
||||
|
||||
1. 請將光標移動到本節中下面標記有 ---> 的第一行。
|
||||
|
||||
2. 為了使得第一行內容雷同于第二行,請將光標移至文本第一個字符準備插入
|
||||
的位置。
|
||||
|
||||
3. 然後按下 i 鍵,接著輸入必要的文本字符。
|
||||
|
||||
4. 所有文本都修正完畢,請按下 <ESC> 鍵返回正常模式。
|
||||
重復步驟2至步驟4以便修正句子。
|
||||
|
||||
---> There is text misng this .
|
||||
---> There is some text missing from this line.
|
||||
|
||||
5. 如果您對文本插入操作已經很滿意,請接著閱讀下面的小結。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第一講小結
|
||||
|
||||
|
||||
1. 光標在屏幕文本中的移動既可以用箭頭鍵,也可以使用 hjkl 字母鍵。
|
||||
h (左移) j (下行) k (上行) l (右移)
|
||||
|
||||
2. 欲進入vim編輯器(從命令行提示符),請輸入︰vim 文件名 <回車>
|
||||
|
||||
3. 欲退出vim編輯器,請輸入以下命令放棄所有修改︰
|
||||
|
||||
<ESC> :q! <回車>
|
||||
|
||||
或者輸入以下命令保存所有修改︰
|
||||
|
||||
<ESC> :wq <回車>
|
||||
|
||||
4. 在正常模式下刪除光標所在位置的字符,請按︰ x
|
||||
|
||||
5. 在正常模式下要在光標所在位置開始插入文本,請按︰
|
||||
|
||||
i 輸入必要文本 <ESC>
|
||||
|
||||
特別提示︰按下 <ESC> 鍵會帶您回到正常模式或者取消一個不期望或者部分完成
|
||||
的命令。
|
||||
|
||||
好了,第一講到此結束。下面接下來繼續第二講的內容。
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第二講第一節︰刪除類命令
|
||||
|
||||
|
||||
** 輸入 dw 可以從光標處刪除至一個單字/單詞的末尾。**
|
||||
|
||||
1. 請按下 <ESC> 鍵確保您處于正常模式。
|
||||
|
||||
2. 請將光標移動到本節中下面標記有 ---> 的那一行。
|
||||
|
||||
3. 請將光標移至準備要刪除的單詞的開始。
|
||||
|
||||
4. 接著輸入 dw 刪除掉該單詞。
|
||||
|
||||
特別提示︰您所輸入的 dw 會在您輸入的同時出現在屏幕的最後一行。如果您輸
|
||||
入有誤,請按下 <ESC> 鍵取消,然後重新再來。
|
||||
|
||||
---> There are a some words fun that don't belong paper in this sentence.
|
||||
|
||||
5. 重復步驟3至步驟4,直至句子修正完畢。接著繼續第二講第二節內容。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第二講第二節︰其他刪除類命令
|
||||
|
||||
|
||||
** 輸入 d$ 從當前光標刪除到行末。**
|
||||
|
||||
1. 請按下 <ESC> 鍵確保您處于正常模式。
|
||||
|
||||
2. 請將光標移動到本節中下面標記有 ---> 的那一行。
|
||||
|
||||
3. 請將光標移動到該行的尾部(也就是在第一個點號‘.’後面)。
|
||||
|
||||
4. 然後輸入 d$ 從光標處刪至當前行尾部。
|
||||
|
||||
---> Somebody typed the end of this line twice. end of this line twice.
|
||||
|
||||
|
||||
5. 請繼續學習第二講第三節就知道是怎麼回事了。
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第二講第三節︰關于命令和對象
|
||||
|
||||
|
||||
刪除命令 d 的格式如下︰
|
||||
|
||||
[number] d object 或者 d [number] object
|
||||
|
||||
其意如下︰
|
||||
number - 代表執行命令的次數(可選項,缺省設置為 1 )。
|
||||
d - 代表刪除。
|
||||
object - 代表命令所要操作的對象(下面有相關介紹)。
|
||||
|
||||
一個簡短的對象列表︰
|
||||
w - 從當前光標當前位置直到單字/單詞末尾,包括空格。
|
||||
e - 從當前光標當前位置直到單字/單詞末尾,但是 *不* 包括空格。
|
||||
$ - 從當前光標當前位置直到當前行末。
|
||||
|
||||
特別提示︰
|
||||
對于勇于探索者,請在正常模式下面僅按代表相應對象的鍵而不使用命令,則
|
||||
將看到光標的移動正如上面的對象列表所代表的一樣。
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第二講第四節︰對象命令的特殊情況
|
||||
|
||||
|
||||
** 輸入 dd 可以刪除整一個當前行。 **
|
||||
|
||||
鑒于整行刪除的高頻度,VIM 的設計者決定要簡化整行刪除,僅需要在同一行上
|
||||
擊打兩次 d 就可以刪除掉光標所在的整行了。
|
||||
|
||||
1. 請將光標移動到本節中下面的短句段落中的第二行。
|
||||
2. 輸入 dd 刪除該行。
|
||||
3. 然後移動到第四行。
|
||||
4. 接著輸入 2dd (還記得前面講過的 number-command-object 嗎?) 刪除兩行。
|
||||
|
||||
1) Roses are red,
|
||||
2) Mud is fun,
|
||||
3) Violets are blue,
|
||||
4) I have a car,
|
||||
5) Clocks tell time,
|
||||
6) Sugar is sweet
|
||||
7) And so are you.
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第二講第五節︰撤消類命令
|
||||
|
||||
|
||||
** 輸入 u 來撤消最後執行的命令,輸入 U 來修正整行。**
|
||||
|
||||
1. 請將光標移動到本節中下面標記有 ---> 的那一行,並將其置于第一個錯誤
|
||||
處。
|
||||
2. 輸入 x 刪除第一個不想保留的字母。
|
||||
3. 然後輸入 u 撤消最後執行的(一次)命令。
|
||||
4. 這次要使用 x 修正本行的所有錯誤。
|
||||
5. 現在輸入一個大寫的 U ,恢復到該行的原始狀態。
|
||||
6. 接著多次輸入 u 以撤消 U 以及更前的命令。
|
||||
7. 然後多次輸入 CTRL-R (先按下 CTRL 鍵不放開,接著輸入 R 鍵) ,這樣就
|
||||
可以執行恢復命令,也就是撤消掉撤消命令。
|
||||
|
||||
---> Fiix the errors oon thhis line and reeplace them witth undo.
|
||||
|
||||
8. 這些都是非常有用的命令。下面是第二講的小結了。
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第二講小結
|
||||
|
||||
|
||||
1. 欲從當前光標刪除至單字/單詞末尾,請輸入︰dw
|
||||
|
||||
2. 欲從當前光標刪除至當前行末尾,請輸入︰d$
|
||||
|
||||
3. 欲刪除整行,請輸入︰dd
|
||||
|
||||
4. 在正常模式下一個命令的格式是︰
|
||||
|
||||
[number] command object 或者 command [number] object
|
||||
其意是︰
|
||||
number - 代表的是命令執行的次數
|
||||
command - 代表要做的事情,比如 d 代表刪除
|
||||
object - 代表要操作的對象,比如 w 代表單字/單詞,$ 代表到行末等等。
|
||||
$ (to the end of line), etc.
|
||||
|
||||
5. 欲撤消以前的操作,請輸入︰u (小寫的u)
|
||||
欲撤消在一行中所做的改動,請輸入︰U (大寫的U)
|
||||
欲撤消以前的撤消命令,恢復以前的操作結果,請輸入︰CTRL-R
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第三講第一節︰置入類命令
|
||||
|
||||
|
||||
** 輸入 p 將最後一次刪除的內容置入光標之後 **
|
||||
|
||||
1. 請將光標移動到本節中下面示范段落的首行。
|
||||
|
||||
2. 輸入 dd 將該行刪除,這樣會將該行保存到vim的緩沖區中。
|
||||
|
||||
3. 接著將光標移動到準備置入的位置的上方。記住︰是上方哦。
|
||||
|
||||
4. 然後在正常模式下(<ESC>鍵進入),輸入 p 將該行粘貼置入。
|
||||
|
||||
5. 重復步驟2至步驟4,將所有的行依序放置到正確的位置上。
|
||||
|
||||
d) Can you learn too?
|
||||
b) Violets are blue,
|
||||
c) Intelligence is learned,
|
||||
a) Roses are red,
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第三講第二節︰替換類命令
|
||||
|
||||
|
||||
** 輸入 r 和一個字符替換光標所在位置的字符。**
|
||||
|
||||
1. 請將光標移動到本節中下面標記有 ---> 的第一行。
|
||||
|
||||
2. 請移動光標到第一個錯誤的適當位置。
|
||||
|
||||
3. 接著輸入 r ,這樣就能將錯誤替換掉了。
|
||||
|
||||
4. 重復步驟2和步驟3,直到第一行已經修改完畢。
|
||||
|
||||
---> Whan this lime was tuoed in, someone presswd some wrojg keys!
|
||||
---> When this line was typed in, someone pressed some wrong keys!
|
||||
|
||||
5. 然後我們繼續學校第三講第三節。
|
||||
|
||||
特別提示︰切記您要在使用中學習,而不是在記憶中學習。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第三講第三節︰更改類命令
|
||||
|
||||
|
||||
** 要改變一個單字/單詞的部分或者全部,請輸入 cw **
|
||||
|
||||
1. 請將光標移動到本節中下面標記有 ---> 的第一行。
|
||||
|
||||
2. 接著把光標放在單詞 lubw 的字母 u 的位置那裡。
|
||||
|
||||
3. 然後輸入 cw 就可以修正該單詞了(在本例這裡是輸入 ine 。)
|
||||
|
||||
4. 最後按 <ESC> 鍵,然後光標定位到下一個錯誤第一個準備更改的字母處。
|
||||
|
||||
5. 重復步驟3和步驟4,直到第一個句子完全雷同第二個句子。
|
||||
|
||||
---> This lubw has a few wptfd that mrrf changing usf the change command.
|
||||
---> This line has a few words that need changing using the change command.
|
||||
|
||||
提示︰請注意 cw 命令不僅僅是替換了一個單詞,也讓您進入文本插入狀態了。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第三講第四節︰使用c指令的其他更改類命令
|
||||
|
||||
|
||||
** 更改類指令可以使用同刪除類命令所使用的對象參數。**
|
||||
|
||||
1. 更改類指令的工作方式跟刪除類命令是一致的。操作格式是︰
|
||||
|
||||
[number] c object 或者 c [number] object
|
||||
|
||||
2. 對象參數也是一樣的,比如 w 代表單字/單詞,$代表行末等等。
|
||||
|
||||
3. 請將光標移動到本節中下面標記有 ---> 的第一行。
|
||||
|
||||
4. 接著將光標移動到第一個錯誤處。
|
||||
|
||||
5. 然後輸入 c$ 使得該行剩下的部分更正得同第二行一樣。最後按 <ESC> 鍵。
|
||||
|
||||
---> The end of this line needs some help to make it like the second.
|
||||
---> The end of this line needs to be corrected using the c$ command.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第三講小結
|
||||
|
||||
|
||||
1. 要重新置入已經刪除的文本內容,請輸入小寫字母 p。該操作可以將已刪除
|
||||
的文本內容置于光標之後。如果最後一次刪除的是一個整行,那麼該行將置
|
||||
于當前光標所在行的下一行。
|
||||
|
||||
2. 要替換光標所在位置的字符,請輸入小寫的 r 和要替換掉原位置字符的新字
|
||||
符即可。
|
||||
|
||||
3. 更改類命令允許您改變指定的對象,從當前光標所在位置直到對象的末尾。
|
||||
比如輸入 cw 可以替換當前光標到單詞的末尾的內容;輸入 c$ 可以替換當
|
||||
前光標到行末的內容。
|
||||
|
||||
4. 更改類命令的格式是︰
|
||||
|
||||
[number] c object 或者 c [number] object
|
||||
|
||||
下面我們繼續學習下一講。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第四講第一節︰定位及文件狀態
|
||||
|
||||
|
||||
** 輸入 CTRL-g 顯示當前編輯文件中當前光標所在行位置以及文件狀態信息。
|
||||
輸入 SHIFT-G 則直接跳轉到文件中的某一指定行。**
|
||||
|
||||
提示︰切記要先通讀本節內容,之後才可以執行以下步驟!!!
|
||||
|
||||
1. 按下 CTRL 鍵不放開然後按 g 鍵。然後就會看到頁面最底部出現一個狀態信
|
||||
息行,顯示的內容是當前編輯的文件名和文件的總行數。請記住步驟3的行號。
|
||||
|
||||
2. 按下 SHIFT-G 鍵可以使得當前光標直接跳轉到文件最後一行。
|
||||
|
||||
3. 輸入您曾停留的行號,然後按下 SHIFT-G。這樣就可以返回到您第一次按下
|
||||
CTRL-g 時所在的行好了。注意︰輸入行號時,行號是不會在屏幕上顯示出來
|
||||
的。
|
||||
|
||||
4. 如果願意,您可以繼續執行步驟1至步驟三。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第四講第二節︰搜索類命令
|
||||
|
||||
|
||||
** 輸入 / 以及尾隨的字符串可以用以在當前文件中查找該字符串。**
|
||||
|
||||
1. 在正常模式下輸入 / 字符。您此時會注意到該字符和光標都會出現在屏幕底
|
||||
部,這跟 : 命令是一樣的。
|
||||
|
||||
2. 接著輸入 errroor <回車>。那個errroor就是您要查找的字符串。
|
||||
|
||||
3. 要查找同上一次的字符串,只需要按 n 鍵。要向相反方向查找同上一次的字
|
||||
符串,請輸入 Shift-N 即可。
|
||||
|
||||
4. 如果您想逆向查找字符串,請使用 ? 代替 / 進行。
|
||||
|
||||
---> When the search reaches the end of the file it will continue at the start.
|
||||
|
||||
"errroor" is not the way to spell error; errroor is an error.
|
||||
|
||||
提示︰如果查找已經到達文件末尾,查找會自動從文件頭部繼續查找。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第四講第三節︰配對括號的查找
|
||||
|
||||
|
||||
** 按 % 可以查找配對的括號 )、]、}。**
|
||||
|
||||
1. 把光標放在本節下面標記有 --> 那一行中的任何一個 (、[ 或 { 處。
|
||||
|
||||
2. 接著按 % 字符。
|
||||
|
||||
3. 此時光標的位置應當是在配對的括號處。
|
||||
|
||||
4. 再次按 % 就可以跳回配對的第一個括號處。
|
||||
|
||||
---> This ( is a test line with ('s, ['s ] and {'s } in it. ))
|
||||
|
||||
提示︰在程序調試時,這個功能用來查找不配對的括號是很有用的。
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第四講第四節︰修正錯誤的方法之一
|
||||
|
||||
|
||||
** 輸入 :s/old/new/g 可以替換 old 為 new。**
|
||||
|
||||
1. 請將光標移動到本節中下面標記有 ---> 的那一行。
|
||||
|
||||
2. 輸入 :s/thee/the <回車> 。請注意該命令只改變光標所在行的第一個匹配
|
||||
串。
|
||||
|
||||
3. 輸入 :s/thee/the/g 則是替換全行的匹配串。
|
||||
|
||||
---> the best time to see thee flowers is in thee spring.
|
||||
|
||||
4. 要替換兩行之間出現的每個匹配串,請輸入 :#,#s/old/new/g (#,#代表的是
|
||||
兩行的行號)。輸入 :%s/old/new/g 則是替換整個文件中的每個匹配串。
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第四講小結
|
||||
|
||||
|
||||
1. Ctrl-g 用于顯示當前光標所在位置和文件狀態信息。Shift-G 用于將光標跳
|
||||
轉至文件最後一行。先敲入一個行號然後按 Shift-G 則是將光標移動至該行
|
||||
號代表的行。
|
||||
|
||||
2. 輸入 / 然後緊隨一個字符串是則是在當前所編輯的文檔中向後查找該字符串。
|
||||
輸入問號 ? 然後緊隨一個字符串是則是在當前所編輯的文檔中向前查找該字
|
||||
符串。完成一次查找之後按 n 鍵則是重復上一次的命令,可在同一方向上查
|
||||
找下一個字符串所在;或者按 Shift-N 向相反方向查找下該字符串所在。
|
||||
|
||||
3. 如果光標當前位置是括號(、)、[、]、{、},按 % 可以將光標移動到配對的
|
||||
括號上。
|
||||
|
||||
4. 在一行內替換頭一個字符串 old 為新的字符串 new,請輸入 :s/old/new
|
||||
在一行內替換所有的字符串 old 為新的字符串 new,請輸入 :s/old/new/g
|
||||
在兩行內替換所有的字符串 old 為新的字符串 new,請輸入 :#,#s/old/new/g
|
||||
在文件內替換所有的字符串 old 為新的字符串 new,請輸入 :%s/old/new/g
|
||||
進行全文替換時詢問用戶確認每個替換需添加 c 選項,請輸入 :%s/old/new/gc
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第五講第一節︰在 VIM 內執行外部命令的方法
|
||||
|
||||
|
||||
** 輸入 :! 然後緊隨著輸入一個外部命令可以執行該外部命令。**
|
||||
|
||||
1. 按下我們所熟悉的 : 命令設置光標到屏幕底部。這樣就可以讓您輸入命令了。
|
||||
|
||||
2. 接著輸入感嘆號 ! 這個字符,這樣就允許您執行外部的 shell 命令了。
|
||||
|
||||
3. 我們以 ls 命令為例。輸入 !ls <回車> 。該命令就會列舉出您當前目錄的
|
||||
內容,就如同您在命令行提示符下輸入 ls 命令的結果一樣。如果 !ls 沒起
|
||||
作用,您可以試試 :!dir 看看。
|
||||
|
||||
---> 提示︰ 所有的外部命令都可以以這種方式執行。
|
||||
|
||||
---> 提示︰ 所有的 : 命令都必須以 <回車> 告終。
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第五講第二節︰關于保存文件的更多信息
|
||||
|
||||
|
||||
** 要將對文件的改動保存到文件中,請輸入 :w FILENAME **
|
||||
|
||||
1. 輸入 :!dir 或者 :!ls 獲知當前目錄的內容。您應當已知道最後還得敲
|
||||
<回車> 吧。
|
||||
|
||||
2. 選擇一個尚未存在文件名,比如 TEST 。
|
||||
|
||||
3. 接著輸入 :w TEST (此處 TEST 是您所選擇的文件名。)
|
||||
|
||||
4. 該命令會以 TEST 為文件名保存整個文件 (VIM 教程)。為了確保正確保存,
|
||||
請再次輸入 :!dir 查看您的目錄列表內容。
|
||||
|
||||
---> 請注意︰如果您退出 VIM 然後在以文件名 TEST 為參數進入,那麼該文件內
|
||||
容應該同您保存時的文件內容是完全一樣的。
|
||||
|
||||
5. 現在您可以通過輸入 :!rm TEST 來刪除 TEST 文件了。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第五講第三節︰一個具有選擇性的保存命令
|
||||
|
||||
|
||||
** 要保存文件的部分內容,請輸入 :#,# w FILENAME **
|
||||
|
||||
1. 再來執行一次 :!dir 或者 :!ls 獲知當前目錄的內容,然後選擇一個合適的
|
||||
不重名的文件名,比如 TEST 。
|
||||
|
||||
2. 接著將光標移動至本頁的最頂端,然後按 CTRL-g 找到該行的行號。別忘了
|
||||
行號哦。
|
||||
|
||||
3. 接著把光標移動至本頁的最底端,再按一次 CTRL-g 。也別忘了這個行好哦。
|
||||
|
||||
4. 為了只保存文章的某個部分,請輸入 :#,# w TEST 。這裡的 #,# 就是上面
|
||||
要求您記住的行號(頂端行號,底端行號),而 TEST 就是選定的文件名。
|
||||
|
||||
5. 最後,用 :!dir 確認文件是否正確保存。但是這次先別刪除掉。
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第五講第四節︰提取和合並文件
|
||||
|
||||
|
||||
** 要向當前文件中插入另外的文件的內容,請輸入 :r FILENAME **
|
||||
|
||||
1. 請鍵入 :!dir 確認您前面創建的 TEST 文件還在。
|
||||
|
||||
2. 然後將光標移動至當前頁面的頂端。
|
||||
|
||||
特別提示︰ 執行步驟3之後您將看到第五講第三節,請屆時再往下移動回到這裡來。
|
||||
|
||||
3. 接著通過 :r TEST 將前面創建的名為 TEST 的文件提取進來。
|
||||
|
||||
特別提示︰您所提取進來的文件將從光標所在位置處開始置入。
|
||||
|
||||
4. 為了確認文件已經提取成功,移動光標回到原來的位置就可以注意有兩份第
|
||||
五講第三節,一份是原本,另外一份是來自文件的副本。
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第五講小結
|
||||
|
||||
|
||||
1. :!command 用于執行一個外部命令 command。
|
||||
|
||||
請看一些實際例子︰
|
||||
:!dir - 用于顯示當前目錄的內容。
|
||||
:!rm FILENAME - 用于刪除名為 FILENAME 的文件。
|
||||
|
||||
2. :w FILENAME 可將當前 VIM 中正在編輯的文件保存到名為 FILENAME
|
||||
的文件中。
|
||||
|
||||
3. :#,#w FILENAME 可將當前編輯文件第 # 行至第 # 行的內容保存到文件
|
||||
FILENAME 中。
|
||||
|
||||
4. :r FILENAME 可提取磁盤文件 FILENAME 並將其插入到當前文件的光標位置
|
||||
後面。
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第六講第一節︰打開類命令
|
||||
|
||||
|
||||
** 輸入 o 將在光標的下方打開新的一行並進入插入模式。**
|
||||
|
||||
1. 請將光標移動到本節中下面標記有 ---> 的那一行。
|
||||
|
||||
2. 接著輸入小寫的 o 在光標 *下方* 打開新的一行並進入插入模式。
|
||||
|
||||
3. 然後復制標記有 ---> 的行並按 <ESC> 鍵退出插入模式而進入正常模式。
|
||||
|
||||
---> After typing o the cursor is placed on the open line in Insert mode.
|
||||
|
||||
4. 為了在光標 *上方* 打開新的一行,只需要輸入大寫的 O 而不是小寫的 o
|
||||
就可以了。請在下行測試一下吧。當光標處在在該行上時,按 Shift-O可以
|
||||
在該行上方新開一行。
|
||||
|
||||
Open up a line above this by typing Shift-O while the cursor is on this line.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第六講第二節︰光標後插入類命令
|
||||
|
||||
|
||||
** 輸入 a 將可在光標之後插入文本。 **
|
||||
|
||||
1. 請在正常模式下通過輸入 $ 將光標移動到本節中下面標記有 ---> 的第一行
|
||||
的末尾。
|
||||
|
||||
2. 接著輸入小寫的 a 則可在光標之後插入文本了。大寫的 A 則可以直接在行
|
||||
末插入文本。
|
||||
|
||||
提示︰輸入大寫 A 的操作方法可以在行末插入文本,避免了輸入 i,光標定位到
|
||||
最後一個字符,輸入的文本,<ESC> 回復正常模式,箭頭右鍵移動光標以及
|
||||
x 刪除當前光標所在位置字符等等諸多繁雜的操作。
|
||||
|
||||
3. 操作之後第一行就可以補充完整了。請注意光標後插入文本與插入模式是基
|
||||
本完全一致的,只是文本插入的位置定位稍有不同罷了。
|
||||
|
||||
---> This line will allow you to practice
|
||||
---> This line will allow you to practice appending text to the end of a line.
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第六講第三節︰另外一個置換類命令的版本
|
||||
|
||||
|
||||
** 輸入大寫的 R 可連續替換多個字符。**
|
||||
|
||||
1. 請將光標移動到本節中下面標記有 ---> 的第一行。
|
||||
|
||||
2. 移動光標到第一行中不同于標有 ---> 的第二行的第一個單詞的開始,即單
|
||||
詞 last 處。
|
||||
|
||||
3. 然後輸入大寫的 R 開始把第一行中的不同于第二行的剩余字符逐一輸入,就
|
||||
可以全部替換掉原有的字符而使得第一行完全雷同第二行了。
|
||||
|
||||
---> To make the first line the same as the last on this page use the keys.
|
||||
---> To make the first line the same as the second, type R and the new text.
|
||||
|
||||
4. 請注意︰如果您按 <ESC> 退出置換模式回復正常模式,尚未替換的文本將仍
|
||||
然保持原狀。
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第六講第四節︰設置類命令的選項
|
||||
|
||||
|
||||
** 設置可使查找或者替換可忽略大小寫的選項 **
|
||||
|
||||
|
||||
1. 要查找單詞 ignore 可在正常模式下輸入 /ignore 。要重復查找該詞,可以
|
||||
重復按 n 鍵。
|
||||
|
||||
2. 然後設置 ic 選項(ic就是英文忽略大小寫Ignore Case的首字母縮寫詞),即
|
||||
輸入︰
|
||||
:set ic
|
||||
|
||||
3. 現在可以通過鍵入 n 鍵再次查找單詞 ignore。重復查找可以重復鍵入 n 鍵。
|
||||
|
||||
4. 然後設置 hlsearch 和 incsearch 這兩個選項,輸入以下內容︰
|
||||
:set hls is
|
||||
|
||||
5. 現在可以再次輸入查找命令,看看會有什麼效果︰
|
||||
/ignore
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第六講小結
|
||||
|
||||
|
||||
1. 輸入小寫的 o 可以在光標下方打開新的一行並將光標置于新開的行首,進入
|
||||
插入模式。
|
||||
輸入大寫的 O 可以在光標上方打開新的一行並將光標置于新開的行首,進入
|
||||
插入模式。
|
||||
|
||||
2. 輸入小寫的 a 可以在光標所在位置之後插入文本。
|
||||
輸入大寫的 A 可以在光標所在行的行末之後插入文本。
|
||||
|
||||
3. 輸入大寫的 R 將進入替換模式,直至按 <ESC> 鍵退出替換模式而進入正常
|
||||
模式。
|
||||
|
||||
4. 輸入 :set xxx 可以設置 xxx 選項。
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第七講︰在線幫助命令
|
||||
|
||||
** 使用在線幫助系統 **
|
||||
|
||||
Vim 擁有一個細致全面的在線幫助系統。要啟動該幫助系統,請選擇如下三種方
|
||||
法之一︰
|
||||
- 按下 <HELP> 鍵 (如果鍵盤上有的話)
|
||||
- 按下 <F1> 鍵 (如果鍵盤上有的話)
|
||||
- 輸入 :help <回車>
|
||||
|
||||
輸入 :q <回車> 可以關閉幫助窗口。
|
||||
|
||||
提供一個正確的參數給":help"命令,您可以找到關于該主題的幫助。請試驗以
|
||||
下參數(可別忘了按回車鍵哦。:)︰
|
||||
|
||||
:help w <回車>
|
||||
:help c_<T <回車>
|
||||
:help insert-index <回車>
|
||||
:help user-manual <回車>
|
||||
|
||||
|
||||
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
第八講︰創建一個啟動腳本
|
||||
|
||||
** 啟用vim的功能 **
|
||||
|
||||
Vim的功能特性要比vi多得多,但大部分功能都沒有缺省激活。為了啟動更多的
|
||||
功能,您得創建一個vimrc文件。
|
||||
|
||||
1. 開始編輯vimrc文件,這取決于您所使用的操作系統︰
|
||||
|
||||
:edit ~/.vimrc 這是Unix系統所使用的命令
|
||||
:edit $VIM/_vimrc 這是Windows系統所使用的命令
|
||||
|
||||
2. 接著導入vimrc范例文件︰
|
||||
|
||||
:read $VIMRUNTIME/vimrc_example.vim
|
||||
|
||||
3. 保存文件,命令為︰
|
||||
|
||||
:write
|
||||
|
||||
在下次您啟動vim的時候,編輯器就會有了語法高亮的功能。您可以繼續把您喜
|
||||
歡的其它功能設置添加到這個vimrc文件中。
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
vim 教程到此結束。本教程只是為了簡明地介紹一下vim編輯器,但已足以讓您
|
||||
很容易學會使用本編輯器了。毋庸質疑,vim還有很多很多的命令,本教程所介
|
||||
紹的還差得遠著呢。所以您要精通的話,還望繼續努力哦。下一步您可以閱讀
|
||||
vim手冊,使用的命令是︰
|
||||
:help user-manual
|
||||
|
||||
為了更進一步的參考和學習,以下這本書值得推薦︰
|
||||
|
||||
Vim - Vi Improved - 作者︰Steve Oualline
|
||||
出版社︰New Riders
|
||||
|
||||
這是第一本完全講解vim的書籍。對于初學者特別有用。其中還包含有大量實例
|
||||
和圖示。欲知詳情,請訪問 http://iccf-holland.org/click5.html
|
||||
|
||||
以下這本書比較老了而且內容主要是vi而不是vim,但是也值得推薦︰
|
||||
|
||||
Learning the Vi Editor - 作者︰Linda Lamb
|
||||
出版社︰O'Reilly & Associates Inc.
|
||||
|
||||
這是一本不錯的書,通過它您幾乎能夠了解到全部vi能夠做到的事情。此書的第
|
||||
六個版本也包含了一些關于vim的信息。
|
||||
|
||||
本教程是由來自Calorado School of Minese的Michael C. Pierce、Robert K.
|
||||
Ware 所編寫的,其中來自Colorado State University的Charles Smith提供了
|
||||
很多創意。編者通信地址是︰
|
||||
|
||||
bware@mines.colorado.edu
|
||||
|
||||
本教程已由Bram Moolenaar專為vim進行修訂。
|
||||
|
||||
|
||||
|
||||
譯制者附言︰
|
||||
===========
|
||||
簡體中文教程翻譯版之譯制者為梁昌泰 <beos@turbolinux.com.cn>,還有
|
||||
另外一個聯系地址︰linuxrat@gnuchina.org。
|
||||
|
||||
繁體中文教程是從簡體中文教程翻譯版使用 Debian GNU/Linux 中文項目小
|
||||
組的于廣輝先生編寫的中文漢字轉碼器 autoconvert 轉換而成的,並對轉
|
||||
換的結果做了一些細節的改動。
|
||||
|
||||
變更記錄︰
|
||||
=========
|
||||
2002年08月30日 梁昌泰 <beos@turbolinux.com.cn>
|
||||
感謝 RMS@SMTH 的指正,將多處錯誤修正。
|
||||
|
||||
2002年04月22日 梁昌泰 <linuxrat@gnuchina.org>
|
||||
感謝 xuandong@sh163.net 的指正,將兩處錯別字修正。
|
||||
|
||||
2002年03月18日 梁昌泰 <linuxrat@gnuchina.org>
|
||||
根據Bram Molenaar先生在2002年03月16日的來信要求,將vimtutor1.4中譯
|
||||
版升級到vimtutor1.5。
|
||||
|
||||
2001年11月15日 梁昌泰 <linuxrat@gnuchina.org>
|
||||
將vimtutor1.4中譯版提交給Bram Molenaar和Sven Guckes。
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
@@ -1,6 +1,6 @@
|
||||
#
|
||||
# Makefile for VIM on Win32, using Cygnus gcc
|
||||
# Last updated by Dan Sharp. Last Change: 2010 Nov 03
|
||||
# Last updated by Dan Sharp. Last Change: 2012 Jun 30
|
||||
#
|
||||
# Also read INSTALLpc.txt!
|
||||
#
|
||||
@@ -48,7 +48,7 @@
|
||||
# -L/lib/w32api to EXTRA_LIBS.
|
||||
# POSTSCRIPT no or yes: set to yes for PostScript printing (no)
|
||||
# FEATURES TINY, SMALL, NORMAL, BIG or HUGE (BIG)
|
||||
# WINVER Lowest Win32 version to support. (0x0400)
|
||||
# WINVER Lowest Win32 version to support. (0x0500)
|
||||
# CSCOPE no or yes: to include cscope interface support (yes)
|
||||
# OPTIMIZE SPACE, SPEED, or MAXSPEED: set optimization level (MAXSPEED)
|
||||
# NETBEANS no or yes: to include netbeans interface support (yes when GUI
|
||||
@@ -85,7 +85,7 @@ ARCH = i386
|
||||
endif
|
||||
|
||||
ifndef WINVER
|
||||
WINVER = 0x0400
|
||||
WINVER = 0x0500
|
||||
endif
|
||||
|
||||
ifndef CSCOPE
|
||||
|
||||
@@ -1,14 +1,15 @@
|
||||
# Makefile for VIM on Win32, using 'EGCS/mingw32 1.1.2'.
|
||||
# Makefile for VIM on Win32
|
||||
#
|
||||
# Info at http://www.mingw.org
|
||||
# Also requires 'GNU make 3.77', which you can get through a link
|
||||
# to 'JanJaap's page from the above page.
|
||||
# Alternative x86 and 64-builds: http://mingw-w64.sourceforge.net
|
||||
# Also requires GNU make, which you can download from the same sites.
|
||||
# Get missing libraries from http://gnuwin32.sf.net.
|
||||
#
|
||||
# Tested on Win32 NT 4 and Win95.
|
||||
#
|
||||
# To make everything, just 'make -f Make_ming.mak'
|
||||
# To make just e.g. gvim.exe, 'make -f Make_ming.mak gvim.exe'
|
||||
# After a run, you can 'make -f Make_ming.mak clean' to clean up
|
||||
# To make everything, just 'make -f Make_ming.mak'.
|
||||
# To make just e.g. gvim.exe, 'make -f Make_ming.mak gvim.exe'.
|
||||
# After a run, you can 'make -f Make_ming.mak clean' to clean up.
|
||||
#
|
||||
# NOTE: Sometimes 'GNU Make' will stop after building vimrun.exe -- I think
|
||||
# it's just run out of memory or something. Run again, and it will continue
|
||||
@@ -20,8 +21,8 @@
|
||||
# "make mpress" uses the MPRESS compressor for 32- and 64-bit EXEs:
|
||||
# http://www.matcode.com/mpress.htm
|
||||
#
|
||||
# Maintained by Ron Aaron <ronaharon@yahoo.com>
|
||||
# updated 2003 Jan 20
|
||||
# Maintained by Ron Aaron <ronaharon@yahoo.com> et al.
|
||||
# Updated 2012 Sep 5.
|
||||
|
||||
#>>>>> choose options:
|
||||
# set to yes for a debug build
|
||||
@@ -31,32 +32,33 @@ OPTIMIZE=MAXSPEED
|
||||
# set to yes to make gvim, no for vim
|
||||
GUI=yes
|
||||
# FEATURES=[TINY | SMALL | NORMAL | BIG | HUGE]
|
||||
# set to TINY to make minimal version (few features)
|
||||
# Set to TINY to make minimal version (few features).
|
||||
FEATURES=BIG
|
||||
# set to one of i386, i486, i586, i686 as the minimum target processor
|
||||
# Set to one of i386, i486, i586, i686 as the minimum target processor.
|
||||
# For amd64/x64 architecture set ARCH=x86-64 .
|
||||
ARCH=i386
|
||||
# set to yes to cross-compile from unix; no=native Windows
|
||||
# Set to yes to cross-compile from unix; no=native Windows.
|
||||
CROSS=no
|
||||
# set to path to iconv.h and libiconv.a to enable using 'iconv.dll'
|
||||
# Set to path to iconv.h and libiconv.a to enable using 'iconv.dll'.
|
||||
#ICONV="."
|
||||
ICONV=yes
|
||||
GETTEXT=yes
|
||||
# set to yes to include multibyte support
|
||||
# Set to yes to include multibyte support.
|
||||
MBYTE=yes
|
||||
# set to yes to include IME support
|
||||
# Set to yes to include IME support.
|
||||
IME=yes
|
||||
DYNAMIC_IME=yes
|
||||
# set to yes to enable writing a postscript file with :hardcopy
|
||||
# Set to yes to enable writing a postscript file with :hardcopy.
|
||||
POSTSCRIPT=no
|
||||
# set to yes to enable OLE support
|
||||
# Set to yes to enable OLE support.
|
||||
OLE=no
|
||||
# Set the default $(WINVER) to make it work with pre-Win2k
|
||||
# Set the default $(WINVER) to make it work with pre-Win2k.
|
||||
ifndef WINVER
|
||||
WINVER = 0x0400
|
||||
WINVER = 0x0500
|
||||
endif
|
||||
# Set to yes to enable Cscope support
|
||||
# Set to yes to enable Cscope support.
|
||||
CSCOPE=yes
|
||||
# Set to yes to enable Netbeans support
|
||||
# Set to yes to enable Netbeans support.
|
||||
NETBEANS=$(GUI)
|
||||
|
||||
|
||||
@@ -260,7 +262,9 @@ endif
|
||||
# DYNAMIC_RUBY=yes (to load the Ruby DLL dynamically)
|
||||
# RUBY_VER=[Ruby version, eg 16, 17] (default is 16)
|
||||
# RUBY_VER_LONG=[Ruby version, eg 1.6, 1.7] (default is 1.6)
|
||||
# You must set RUBY_VER_LONG when change RUBY_VER.
|
||||
# You must set RUBY_VER_LONG when changing RUBY_VER.
|
||||
# You must set RUBY_API_VER version to RUBY_VER_LONG.
|
||||
# Don't set ruby API version to RUBY_VER like 191.
|
||||
#RUBY=c:/ruby
|
||||
ifdef RUBY
|
||||
ifndef DYNAMIC_RUBY
|
||||
@@ -273,6 +277,9 @@ endif
|
||||
ifndef RUBY_VER_LONG
|
||||
RUBY_VER_LONG = 1.6
|
||||
endif
|
||||
ifndef RUBY_API_VER
|
||||
RUBY_API_VER = $(subst .,,$(RUBY_VER_LONG))
|
||||
endif
|
||||
|
||||
ifndef RUBY_PLATFORM
|
||||
ifeq ($(RUBY_VER), 16)
|
||||
@@ -288,9 +295,9 @@ endif
|
||||
|
||||
ifndef RUBY_INSTALL_NAME
|
||||
ifeq ($(RUBY_VER), 16)
|
||||
RUBY_INSTALL_NAME = mswin32-ruby$(RUBY_VER)
|
||||
RUBY_INSTALL_NAME = mswin32-ruby$(RUBY_API_VER)
|
||||
else
|
||||
RUBY_INSTALL_NAME = msvcrt-ruby$(RUBY_VER)
|
||||
RUBY_INSTALL_NAME = msvcrt-ruby$(RUBY_API_VER)
|
||||
endif
|
||||
endif
|
||||
|
||||
@@ -426,11 +433,32 @@ endif
|
||||
endif
|
||||
endif
|
||||
|
||||
ifdef XPM
|
||||
# Only allow XPM for a GUI build.
|
||||
ifeq (yes, $(GUI))
|
||||
CFLAGS += -DFEAT_XPM_W32 -I $(XPM)/include
|
||||
|
||||
ifndef XPM
|
||||
ifeq ($(ARCH),i386)
|
||||
XPM = xpm/x86
|
||||
endif
|
||||
ifeq ($(ARCH),i486)
|
||||
XPM = xpm/x86
|
||||
endif
|
||||
ifeq ($(ARCH),i586)
|
||||
XPM = xpm/x86
|
||||
endif
|
||||
ifeq ($(ARCH),i686)
|
||||
XPM = xpm/x86
|
||||
endif
|
||||
ifeq ($(ARCH),x86-64)
|
||||
XPM = xpm/x64
|
||||
endif
|
||||
endif
|
||||
ifdef XPM
|
||||
ifneq ($(XPM),no)
|
||||
CFLAGS += -DFEAT_XPM_W32 -I $(XPM)/include -I $(XPM)/../include
|
||||
endif
|
||||
endif
|
||||
|
||||
endif
|
||||
|
||||
ifeq ($(DEBUG),yes)
|
||||
@@ -560,10 +588,10 @@ TARGET := gvim$(DEBUG_SUFFIX).exe
|
||||
DEFINES += $(DEF_GUI)
|
||||
OBJ += $(GUIOBJ)
|
||||
LFLAGS += -mwindows
|
||||
OUTDIR = gobj$(DEBUG_SUFFIX)$(MZSCHEME_SUFFIX)
|
||||
OUTDIR = gobj$(DEBUG_SUFFIX)$(MZSCHEME_SUFFIX)$(ARCH)
|
||||
else
|
||||
TARGET := vim$(DEBUG_SUFFIX).exe
|
||||
OUTDIR = obj$(DEBUG_SUFFIX)$(MZSCHEME_SUFFIX)
|
||||
OUTDIR = obj$(DEBUG_SUFFIX)$(MZSCHEME_SUFFIX)$(ARCH)
|
||||
endif
|
||||
|
||||
ifdef GETTEXT
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# Makefile for Vim on Win32 (Windows NT/2000/XP/2003 and Windows 95/98/Me)
|
||||
# and Win64, using the Microsoft Visual C++ compilers. Known to work with
|
||||
# VC5, VC6 (VS98), VC7.0 (VS2002), VC7.1 (VS2003), VC8 (VS2005),
|
||||
# VC9 (VS2008), and VC10 (VS2010).
|
||||
# VC9 (VS2008), VC10 (VS2010) and VC11 (VS2012)
|
||||
#
|
||||
# To build using other Windows compilers, see INSTALLpc.txt
|
||||
#
|
||||
@@ -15,6 +15,9 @@
|
||||
# This will build the console version of Vim with no additional interfaces.
|
||||
# To add features, define any of the following:
|
||||
#
|
||||
# For MSVC 11 you need to specify where the Win32.mak file is, e.g.:
|
||||
# SDK_INCLUDE_DIR="C:\Program Files\Microsoft SDKs\Windows\v7.1\Include"
|
||||
#
|
||||
# !!!! After changing features do "nmake clean" first !!!!
|
||||
#
|
||||
# Feature Set: FEATURES=[TINY, SMALL, NORMAL, BIG, HUGE] (default is BIG)
|
||||
@@ -63,6 +66,8 @@
|
||||
# RUBY_VER=[Ruby version, eg 16, 17] (default is 18)
|
||||
# RUBY_VER_LONG=[Ruby version, eg 1.6, 1.7] (default is 1.8)
|
||||
# You must set RUBY_VER_LONG when change RUBY_VER.
|
||||
# You must set RUBY_API_VER to RUBY_VER_LONG.
|
||||
# Don't set ruby API version to RUBY_VER like 191.
|
||||
#
|
||||
# Tcl interface:
|
||||
# TCL=[Path to Tcl directory]
|
||||
@@ -87,6 +92,8 @@
|
||||
# Netbeans Support: NETBEANS=[yes or no] (default is yes if GUI is yes)
|
||||
#
|
||||
# XPM Image Support: XPM=[path to XPM directory]
|
||||
# Default is "xpm", using the files included in the distribution.
|
||||
# Use "no" to disable this feature.
|
||||
#
|
||||
# Optimization: OPTIMIZE=[SPACE, SPEED, MAXSPEED] (default is MAXSPEED)
|
||||
#
|
||||
@@ -209,6 +216,7 @@ CPU = i386
|
||||
# We're on Windows 95
|
||||
CPU = i386
|
||||
!endif # !PROCESSOR_ARCHITECTURE
|
||||
OBJDIR = $(OBJDIR)$(CPU)
|
||||
|
||||
# Build a retail version by default
|
||||
|
||||
@@ -222,7 +230,12 @@ MAKEFLAGS_GVIMEXT = DEBUG=yes
|
||||
|
||||
# Get all sorts of useful, standard macros from the Platform SDK.
|
||||
|
||||
!ifdef SDK_INCLUDE_DIR
|
||||
!include $(SDK_INCLUDE_DIR)\Win32.mak
|
||||
!else
|
||||
!include <Win32.mak>
|
||||
!endif
|
||||
|
||||
|
||||
# Flag to turn on Win64 compatibility warnings for VC7.x and VC8.
|
||||
WP64CHECK = /Wp64
|
||||
@@ -277,13 +290,23 @@ NBDEBUG_SRC = nbdebug.c
|
||||
NETBEANS_LIB = WSock32.lib
|
||||
!endif
|
||||
|
||||
!ifdef XPM
|
||||
!ifndef XPM
|
||||
# XPM is not set, use the included xpm files, depending on the architecture.
|
||||
!if "$(CPU)" == "AMD64"
|
||||
XPM = xpm\x64
|
||||
!elseif "$(CPU)" == "i386"
|
||||
XPM = xpm\x86
|
||||
!else
|
||||
XPM = no
|
||||
!endif
|
||||
!endif
|
||||
!if "$(XPM)" != "no"
|
||||
# XPM - Include support for XPM signs
|
||||
# you can get xpm.lib from http://iamphet.nm.ru/xpm or create it yourself
|
||||
# See the xpm directory for more information.
|
||||
XPM_OBJ = $(OBJDIR)/xpm_w32.obj
|
||||
XPM_DEFS = -DFEAT_XPM_W32
|
||||
XPM_LIB = $(XPM)\lib\libXpm.lib
|
||||
XPM_INC = -I $(XPM)\include
|
||||
XPM_INC = -I $(XPM)\include -I $(XPM)\..\include
|
||||
!endif
|
||||
!endif
|
||||
|
||||
@@ -380,6 +403,9 @@ MSVCVER = 10.0
|
||||
!if "$(_NMAKE_VER)" == "10.00.30319.01"
|
||||
MSVCVER = 10.0
|
||||
!endif
|
||||
!if "$(_NMAKE_VER)" == "11.00.50727.1"
|
||||
MSVCVER = 11.0
|
||||
!endif
|
||||
!endif
|
||||
|
||||
# Abort bulding VIM if version of VC is unrecognised.
|
||||
@@ -394,7 +420,7 @@ MSVCVER = 10.0
|
||||
!endif
|
||||
|
||||
# Convert processor ID to MVC-compatible number
|
||||
!if ("$(MSVCVER)" != "8.0") && ("$(MSVCVER)" != "9.0") && ("$(MSVCVER)" != "10.0")
|
||||
!if ("$(MSVCVER)" != "8.0") && ("$(MSVCVER)" != "9.0") && ("$(MSVCVER)" != "10.0") && ("$(MSVCVER)" != "11.0")
|
||||
!if "$(CPUNR)" == "i386"
|
||||
CPUARG = /G3
|
||||
!elseif "$(CPUNR)" == "i486"
|
||||
@@ -428,7 +454,7 @@ OPTFLAG = /O2
|
||||
OPTFLAG = /Ox
|
||||
!endif
|
||||
|
||||
!if ("$(MSVCVER)" == "8.0") || ("$(MSVCVER)" == "9.0") || ("$(MSVCVER)" == "10.0")
|
||||
!if ("$(MSVCVER)" == "8.0") || ("$(MSVCVER)" == "9.0") || ("$(MSVCVER)" == "10.0") || ("$(MSVCVER)" == "11.0")
|
||||
# Use link time code generation if not worried about size
|
||||
!if "$(OPTIMIZE)" != "SPACE"
|
||||
OPTFLAG = $(OPTFLAG) /GL
|
||||
@@ -807,28 +833,31 @@ RUBY_VER = 18
|
||||
!ifndef RUBY_VER_LONG
|
||||
RUBY_VER_LONG = 1.8
|
||||
!endif
|
||||
!ifndef RUBY_API_VER
|
||||
RUBY_API_VER = $(RUBY_VER_LONG:.=)
|
||||
!endif
|
||||
|
||||
!if $(RUBY_VER) >= 18
|
||||
!ifndef RUBY_PLATFORM
|
||||
RUBY_PLATFORM = i386-mswin32
|
||||
!endif
|
||||
!ifndef RUBY_INSTALL_NAME
|
||||
RUBY_INSTALL_NAME = msvcrt-ruby$(RUBY_VER)
|
||||
RUBY_INSTALL_NAME = msvcrt-ruby$(RUBY_API_VER)
|
||||
!endif
|
||||
!else
|
||||
!ifndef RUBY_PLATFORM
|
||||
RUBY_PLATFORM = i586-mswin32
|
||||
!endif
|
||||
!ifndef RUBY_INSTALL_NAME
|
||||
RUBY_INSTALL_NAME = mswin32-ruby$(RUBY_VER)
|
||||
RUBY_INSTALL_NAME = mswin32-ruby$(RUBY_API_VER)
|
||||
!endif
|
||||
!endif # $(RUBY_VER) >= 18
|
||||
|
||||
!message Ruby requested (version $(RUBY_VER)) - root dir is "$(RUBY)"
|
||||
CFLAGS = $(CFLAGS) -DFEAT_RUBY
|
||||
RUBY_OBJ = $(OUTDIR)\if_ruby.obj
|
||||
!if $(RUBY_VER) >= 190
|
||||
RUBY_INC = /I "$(RUBY)\include\ruby-$(RUBY_VER_LONG)\$(RUBY_PLATFORM)" /I "$(RUBY)\include\ruby-$(RUBY_VER_LONG)"
|
||||
!if $(RUBY_VER) >= 19
|
||||
RUBY_INC = /I "$(RUBY)\lib\ruby\$(RUBY_VER_LONG)\$(RUBY_PLATFORM)" /I "$(RUBY)\include\ruby-$(RUBY_VER_LONG)" /I "$(RUBY)\include\ruby-$(RUBY_VER_LONG)\$(RUBY_PLATFORM)"
|
||||
!else
|
||||
RUBY_INC = /I "$(RUBY)\lib\ruby\$(RUBY_VER_LONG)\$(RUBY_PLATFORM)"
|
||||
!endif
|
||||
@@ -890,7 +919,7 @@ LINKARGS2 = $(CON_LIB) $(GUI_LIB) $(LIBC) $(OLE_LIB) user32.lib $(SNIFF_LIB) \
|
||||
|
||||
# Report link time code generation progress if used.
|
||||
!ifdef NODEBUG
|
||||
!if ("$(MSVCVER)" == "8.0") || ("$(MSVCVER)" == "9.0") || ("$(MSVCVER)" == "10.0")
|
||||
!if ("$(MSVCVER)" == "8.0") || ("$(MSVCVER)" == "9.0") || ("$(MSVCVER)" == "10.0") || ("$(MSVCVER)" == "11.0")
|
||||
!if "$(OPTIMIZE)" != "SPACE"
|
||||
LINKARGS1 = $(LINKARGS1) /LTCG:STATUS
|
||||
!endif
|
||||
|
||||
@@ -2559,19 +2559,11 @@ objects/if_perl.o: auto/if_perl.c
|
||||
objects/if_perlsfio.o: if_perlsfio.c
|
||||
$(CCC) $(PERL_CFLAGS) -o $@ if_perlsfio.c
|
||||
|
||||
objects/py_config.o: $(PYTHON_CONFDIR)/config.c
|
||||
$(CCC) $(PYTHON_CFLAGS) -o $@ $(PYTHON_CONFDIR)/config.c \
|
||||
-I$(PYTHON_CONFDIR) -DHAVE_CONFIG_H -DNO_MAIN
|
||||
|
||||
objects/py_getpath.o: $(PYTHON_CONFDIR)/getpath.c
|
||||
$(CCC) $(PYTHON_CFLAGS) -o $@ $(PYTHON_CONFDIR)/getpath.c \
|
||||
-I$(PYTHON_CONFDIR) -DHAVE_CONFIG_H -DNO_MAIN \
|
||||
$(PYTHON_GETPATH_CFLAGS)
|
||||
|
||||
objects/py3_config.o: $(PYTHON3_CONFDIR)/config.c
|
||||
$(CCC) $(PYTHON3_CFLAGS) -o $@ $(PYTHON3_CONFDIR)/config.c \
|
||||
-I$(PYTHON3_CONFDIR) -DHAVE_CONFIG_H -DNO_MAIN
|
||||
|
||||
objects/if_python.o: if_python.c if_py_both.h
|
||||
$(CCC) $(PYTHON_CFLAGS) $(PYTHON_CFLAGS_EXTRA) -o $@ if_python.c
|
||||
|
||||
|
||||
109
src/auto/configure
vendored
109
src/auto/configure
vendored
@@ -4648,15 +4648,7 @@ $as_echo "not set, default to /usr" >&6; }
|
||||
|
||||
LUA_INC=
|
||||
if test "X$vi_cv_path_lua_pfx" != "X"; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if lua.h can be found in $vi_cv_path_lua_pfx/include" >&5
|
||||
$as_echo_n "checking if lua.h can be found in $vi_cv_path_lua_pfx/include... " >&6; }
|
||||
if test -f $vi_cv_path_lua_pfx/include/lua.h; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
|
||||
$as_echo "yes" >&6; }
|
||||
else
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
||||
$as_echo "no" >&6; }
|
||||
# Extract the first word of "lua", so it can be a program name with args.
|
||||
# Extract the first word of "lua", so it can be a program name with args.
|
||||
set dummy lua; ac_word=$2
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
|
||||
$as_echo_n "checking for $ac_word... " >&6; }
|
||||
@@ -4696,8 +4688,8 @@ $as_echo "no" >&6; }
|
||||
fi
|
||||
|
||||
|
||||
if test "X$vi_cv_path_lua" != "X"; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking Lua version" >&5
|
||||
if test "X$vi_cv_path_lua" != "X"; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking Lua version" >&5
|
||||
$as_echo_n "checking Lua version... " >&6; }
|
||||
if test "${vi_cv_version_lua+set}" = set; then :
|
||||
$as_echo_n "(cached) " >&6
|
||||
@@ -4706,23 +4698,31 @@ else
|
||||
fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $vi_cv_version_lua" >&5
|
||||
$as_echo "$vi_cv_version_lua" >&6; }
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if lua.h can be found in $vi_cv_path_lua_pfx/include/lua$vi_cv_version_lua" >&5
|
||||
$as_echo_n "checking if lua.h can be found in $vi_cv_path_lua_pfx/include/lua$vi_cv_version_lua... " >&6; }
|
||||
if test -f $vi_cv_path_lua_pfx/include/lua$vi_cv_version_lua/lua.h; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
|
||||
fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if lua.h can be found in $vi_cv_path_lua_pfx/include" >&5
|
||||
$as_echo_n "checking if lua.h can be found in $vi_cv_path_lua_pfx/include... " >&6; }
|
||||
if test -f $vi_cv_path_lua_pfx/include/lua.h; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
|
||||
$as_echo "yes" >&6; }
|
||||
LUA_INC=/lua$vi_cv_version_lua
|
||||
else
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
||||
else
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
||||
$as_echo "no" >&6; }
|
||||
vi_cv_path_lua_pfx=
|
||||
fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if lua.h can be found in $vi_cv_path_lua_pfx/include/lua$vi_cv_version_lua" >&5
|
||||
$as_echo_n "checking if lua.h can be found in $vi_cv_path_lua_pfx/include/lua$vi_cv_version_lua... " >&6; }
|
||||
if test -f $vi_cv_path_lua_pfx/include/lua$vi_cv_version_lua/lua.h; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
|
||||
$as_echo "yes" >&6; }
|
||||
LUA_INC=/lua$vi_cv_version_lua
|
||||
else
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
||||
$as_echo "no" >&6; }
|
||||
vi_cv_path_lua_pfx=
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
if test "X$vi_cv_path_lua_pfx" != "X"; then
|
||||
if test "X$vi_cv_version_lua" != "X"; then
|
||||
if test "X$LUA_INC" != "X"; then
|
||||
LUA_LIBS="-L${vi_cv_path_lua_pfx}/lib -llua$vi_cv_version_lua"
|
||||
else
|
||||
LUA_LIBS="-L${vi_cv_path_lua_pfx}/lib -llua"
|
||||
@@ -4734,16 +4734,21 @@ $as_echo "no" >&6; }
|
||||
$as_echo "#define FEAT_LUA 1" >>confdefs.h
|
||||
|
||||
if test "$enable_luainterp" = "dynamic"; then
|
||||
for i in 0 1 2 3 4 5 6 7 8 9; do
|
||||
if test -f "${vi_cv_path_lua_pfx}/lib/liblua${vi_cv_version_lua}.so.$i"; then
|
||||
LUA_SONAME=".$i"
|
||||
break
|
||||
fi
|
||||
done
|
||||
if test -f "${vi_cv_path_lua_pfx}/bin/cyglua-${vi_cv_version_lua}.dll"; then
|
||||
vi_cv_dll_name_lua="cyglua-${vi_cv_version_lua}.dll"
|
||||
else
|
||||
for i in 0 1 2 3 4 5 6 7 8 9; do
|
||||
if test -f "${vi_cv_path_lua_pfx}/lib/liblua${vi_cv_version_lua}.so.$i"; then
|
||||
LUA_SONAME=".$i"
|
||||
break
|
||||
fi
|
||||
done
|
||||
vi_cv_dll_name_lua="liblua${vi_cv_version_lua}.so$LUA_SONAME"
|
||||
fi
|
||||
$as_echo "#define DYNAMIC_LUA 1" >>confdefs.h
|
||||
|
||||
LUA_LIBS=""
|
||||
LUA_CFLAGS="-DDYNAMIC_LUA_DLL=\\\"liblua${vi_cv_version_lua}.so$LUA_SONAME\\\" $LUA_CFLAGS"
|
||||
LUA_CFLAGS="-DDYNAMIC_LUA_DLL=\\\"${vi_cv_dll_name_lua}\\\" $LUA_CFLAGS"
|
||||
fi
|
||||
fi
|
||||
if test "$fail_if_missing" = "yes" -a -z "$LUA_SRC"; then
|
||||
@@ -5330,6 +5335,7 @@ __:
|
||||
@echo "python_LIBS='$(LIBS)'"
|
||||
@echo "python_SYSLIBS='$(SYSLIBS)'"
|
||||
@echo "python_LINKFORSHARED='$(LINKFORSHARED)'"
|
||||
@echo "python_DLLLIBRARY='$(DLLLIBRARY)'"
|
||||
@echo "python_INSTSONAME='$(INSTSONAME)'"
|
||||
eof
|
||||
eval "`cd ${PYTHON_CONFDIR} && make -f "${tmp_mkf}" __ | sed '/ directory /d'`"
|
||||
@@ -5350,6 +5356,9 @@ eof
|
||||
fi
|
||||
|
||||
|
||||
if test "X$python_DLLLIBRARY" != "X"; then
|
||||
python_INSTSONAME="$python_DLLLIBRARY"
|
||||
fi
|
||||
PYTHON_LIBS="${vi_cv_path_python_plibs}"
|
||||
if test "${vi_cv_path_python_pfx}" = "${vi_cv_path_python_epfx}"; then
|
||||
PYTHON_CFLAGS="-I${vi_cv_path_python_pfx}/include/python${vi_cv_var_python_version} -DPYTHON_HOME=\\\"${vi_cv_path_python_pfx}\\\""
|
||||
@@ -5357,11 +5366,7 @@ fi
|
||||
PYTHON_CFLAGS="-I${vi_cv_path_python_pfx}/include/python${vi_cv_var_python_version} -I${vi_cv_path_python_epfx}/include/python${vi_cv_var_python_version} -DPYTHON_HOME=\\\"${vi_cv_path_python_pfx}\\\""
|
||||
fi
|
||||
PYTHON_SRC="if_python.c"
|
||||
if test "x$MACOSX" = "xyes"; then
|
||||
PYTHON_OBJ="objects/if_python.o"
|
||||
else
|
||||
PYTHON_OBJ="objects/if_python.o objects/py_config.o"
|
||||
fi
|
||||
PYTHON_OBJ="objects/if_python.o"
|
||||
if test "${vi_cv_var_python_version}" = "1.4"; then
|
||||
PYTHON_OBJ="$PYTHON_OBJ objects/py_getpath.o"
|
||||
fi
|
||||
@@ -5637,6 +5642,7 @@ __:
|
||||
@echo "python3_BASEMODLIBS='$(BASEMODLIBS)'"
|
||||
@echo "python3_LIBS='$(LIBS)'"
|
||||
@echo "python3_SYSLIBS='$(SYSLIBS)'"
|
||||
@echo "python3_DLLLIBRARY='$(DLLLIBRARY)'"
|
||||
@echo "python3_INSTSONAME='$(INSTSONAME)'"
|
||||
eof
|
||||
eval "`cd ${PYTHON3_CONFDIR} && make -f "${tmp_mkf}" __ | sed '/ directory /d'`"
|
||||
@@ -5649,6 +5655,9 @@ eof
|
||||
fi
|
||||
|
||||
|
||||
if test "X$python3_DLLLIBRARY" != "X"; then
|
||||
python3_INSTSONAME="$python3_DLLLIBRARY"
|
||||
fi
|
||||
PYTHON3_LIBS="${vi_cv_path_python3_plibs}"
|
||||
if test "${vi_cv_path_python3_pfx}" = "${vi_cv_path_python3_epfx}"; then
|
||||
PYTHON3_CFLAGS="-I${vi_cv_path_python3_pfx}/include/python${vi_cv_var_python3_version}${vi_cv_var_python3_abiflags} -DPYTHON3_HOME=L\\\"${vi_cv_path_python3_pfx}\\\""
|
||||
@@ -5656,11 +5665,7 @@ fi
|
||||
PYTHON3_CFLAGS="-I${vi_cv_path_python3_pfx}/include/python${vi_cv_var_python3_version}${vi_cv_var_python3_abiflags} -I${vi_cv_path_python3_epfx}/include/python${vi_cv_var_python3_version}${vi_cv_var_python3_abiflags} -DPYTHON3_HOME=L\\\"${vi_cv_path_python3_pfx}\\\""
|
||||
fi
|
||||
PYTHON3_SRC="if_python3.c"
|
||||
if test "x$MACOSX" = "xyes"; then
|
||||
PYTHON3_OBJ="objects/if_python3.o"
|
||||
else
|
||||
PYTHON3_OBJ="objects/if_python3.o objects/py3_config.o"
|
||||
fi
|
||||
PYTHON3_OBJ="objects/if_python3.o"
|
||||
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if -pthread should be used" >&5
|
||||
$as_echo_n "checking if -pthread should be used... " >&6; }
|
||||
@@ -6327,26 +6332,34 @@ $as_echo_n "checking Ruby version... " >&6; }
|
||||
if $vi_cv_path_ruby -e '(VERSION rescue RUBY_VERSION) >= "1.6.0" or exit 1' >/dev/null 2>/dev/null; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: OK" >&5
|
||||
$as_echo "OK" >&6; }
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking Ruby rbconfig" >&5
|
||||
$as_echo_n "checking Ruby rbconfig... " >&6; }
|
||||
ruby_rbconfig="RbConfig"
|
||||
if ! $vi_cv_path_ruby -r rbconfig -e 'RbConfig' >/dev/null 2>/dev/null; then
|
||||
ruby_rbconfig="Config"
|
||||
fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ruby_rbconfig" >&5
|
||||
$as_echo "$ruby_rbconfig" >&6; }
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking Ruby header files" >&5
|
||||
$as_echo_n "checking Ruby header files... " >&6; }
|
||||
rubyhdrdir=`$vi_cv_path_ruby -r mkmf -e 'print Config::CONFIG["rubyhdrdir"] || Config::CONFIG["archdir"] || $hdrdir' 2>/dev/null`
|
||||
rubyhdrdir=`$vi_cv_path_ruby -r mkmf -e "print $ruby_rbconfig::CONFIG['rubyhdrdir'] || $ruby_rbconfig::CONFIG['archdir'] || \\$hdrdir" 2>/dev/null`
|
||||
if test "X$rubyhdrdir" != "X"; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $rubyhdrdir" >&5
|
||||
$as_echo "$rubyhdrdir" >&6; }
|
||||
RUBY_CFLAGS="-I$rubyhdrdir"
|
||||
rubyarch=`$vi_cv_path_ruby -r rbconfig -e 'print Config::CONFIG["arch"]'`
|
||||
rubyarch=`$vi_cv_path_ruby -r rbconfig -e "print $ruby_rbconfig::CONFIG['arch']"`
|
||||
if test -d "$rubyhdrdir/$rubyarch"; then
|
||||
RUBY_CFLAGS="$RUBY_CFLAGS -I$rubyhdrdir/$rubyarch"
|
||||
fi
|
||||
rubyversion=`$vi_cv_path_ruby -r rbconfig -e 'print Config::CONFIG["ruby_version"].gsub(/\./, "")[0,2]'`
|
||||
rubyversion=`$vi_cv_path_ruby -r rbconfig -e "print $ruby_rbconfig::CONFIG['ruby_version'].gsub(/\./, '')[0,2]"`
|
||||
RUBY_CFLAGS="$RUBY_CFLAGS -DRUBY_VERSION=$rubyversion"
|
||||
rubylibs=`$vi_cv_path_ruby -r rbconfig -e 'print Config::CONFIG["LIBS"]'`
|
||||
rubylibs=`$vi_cv_path_ruby -r rbconfig -e "print $ruby_rbconfig::CONFIG['LIBS']"`
|
||||
if test "X$rubylibs" != "X"; then
|
||||
RUBY_LIBS="$rubylibs"
|
||||
fi
|
||||
librubyarg=`$vi_cv_path_ruby -r rbconfig -e 'print Config.expand(Config::CONFIG["LIBRUBYARG"])'`
|
||||
librubya=`$vi_cv_path_ruby -r rbconfig -e 'print Config.expand(Config::CONFIG["LIBRUBY_A"])'`
|
||||
rubylibdir=`$vi_cv_path_ruby -r rbconfig -e 'print Config.expand(Config::CONFIG["libdir"])'`
|
||||
librubyarg=`$vi_cv_path_ruby -r rbconfig -e "print $ruby_rbconfig.expand($ruby_rbconfig::CONFIG['LIBRUBYARG'])"`
|
||||
librubya=`$vi_cv_path_ruby -r rbconfig -e "print $ruby_rbconfig.expand($ruby_rbconfig::CONFIG['LIBRUBY_A'])"`
|
||||
rubylibdir=`$vi_cv_path_ruby -r rbconfig -e "print $ruby_rbconfig.expand($ruby_rbconfig::CONFIG['libdir'])"`
|
||||
if test -f "$rubylibdir/$librubya"; then
|
||||
librubyarg="$librubyarg"
|
||||
RUBY_LIBS="$RUBY_LIBS -L$rubylibdir"
|
||||
@@ -6358,7 +6371,7 @@ $as_echo "$rubyhdrdir" >&6; }
|
||||
if test "X$librubyarg" != "X"; then
|
||||
RUBY_LIBS="$librubyarg $RUBY_LIBS"
|
||||
fi
|
||||
rubyldflags=`$vi_cv_path_ruby -r rbconfig -e 'print Config::CONFIG["LDFLAGS"]'`
|
||||
rubyldflags=`$vi_cv_path_ruby -r rbconfig -e "print $ruby_rbconfig::CONFIG['LDFLAGS']"`
|
||||
if test "X$rubyldflags" != "X"; then
|
||||
rubyldflags=`echo "$rubyldflags" | sed -e 's/-arch\ ppc//' -e 's/-arch\ i386//' -e 's/-arch\ x86_64//'`
|
||||
if test "X$rubyldflags" != "X"; then
|
||||
@@ -6371,7 +6384,7 @@ $as_echo "$rubyhdrdir" >&6; }
|
||||
$as_echo "#define FEAT_RUBY 1" >>confdefs.h
|
||||
|
||||
if test "$enable_rubyinterp" = "dynamic"; then
|
||||
libruby=`$vi_cv_path_ruby -r rbconfig -e 'printf "lib%s.%s\n", Config::CONFIG["RUBY_SO_NAME"], Config::CONFIG["DLEXT"]'`
|
||||
libruby=`$vi_cv_path_ruby -r rbconfig -e "puts $ruby_rbconfig::CONFIG['LIBRUBY_SO']"`
|
||||
$as_echo "#define DYNAMIC_RUBY 1" >>confdefs.h
|
||||
|
||||
RUBY_CFLAGS="-DDYNAMIC_RUBY_DLL=\\\"$libruby\\\" -DDYNAMIC_RUBY_VER=$rubyversion $RUBY_CFLAGS"
|
||||
@@ -10639,7 +10652,7 @@ if test "x$vim_cv_getcwd_broken" = "xyes" ; then
|
||||
fi
|
||||
|
||||
for ac_func in bcmp fchdir fchown fsync getcwd getpseudotty \
|
||||
getpwnam getpwuid getrlimit gettimeofday getwd lstat memcmp \
|
||||
getpwent getpwnam getpwuid getrlimit gettimeofday getwd lstat memcmp \
|
||||
memset mkdtemp nanosleep opendir putenv qsort readlink select setenv \
|
||||
setpgid setsid sigaltstack sigstack sigset sigsetjmp sigaction \
|
||||
sigvec strcasecmp strerror strftime stricmp strncasecmp \
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
:: command to build big Vim with OLE, Perl, Python, Ruby and Tcl
|
||||
nmake -f Make_mvc.mak GUI=yes OLE=yes PERL=E:\perl512 DYNAMIC_PERL=yes PERL_VER=512 PYTHON=e:\python27 DYNAMIC_PYTHON=yes PYTHON_VER=27 PYTHON3=e:\python31 DYNAMIC_PYTHON3=yes PYTHON3_VER=31 RUBY=e:\ruby191 DYNAMIC_RUBY=yes RUBY_VER=191 RUBY_VER_LONG=1.9.1 TCL=e:\tcl DYNAMIC_TCL=yes %1 IME=yes CSCOPE=yes XPM=e:\xpm
|
||||
SET VCDIR="C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\"
|
||||
SET TOOLDIR=E:\
|
||||
%VCDIR%nmake -f Make_mvc.mak GUI=yes OLE=yes PERL=E:\perl514 DYNAMIC_PERL=yes PERL_VER=514 PYTHON=%TOOLDIR%python27 DYNAMIC_PYTHON=yes PYTHON_VER=27 PYTHON3=%TOOLDIR%python32 DYNAMIC_PYTHON3=yes PYTHON3_VER=32 RUBY=%TOOLDIR%ruby192 DYNAMIC_RUBY=yes RUBY_VER=192 RUBY_VER_LONG=1.9.2 TCL=%TOOLDIR%tcl TCL_VER=85 TCL_VER_LONG=8.5 DYNAMIC_TCL=yes %1 IME=yes CSCOPE=yes
|
||||
|
||||
|
||||
6
src/bigvim64.bat
Normal file
6
src/bigvim64.bat
Normal file
@@ -0,0 +1,6 @@
|
||||
:: command to build big Vim 64 bit with OLE, Perl, Python, Ruby and Tcl
|
||||
:: First run: %VCDIR%\vcvarsall.bat x86_amd64
|
||||
SET VCDIR="C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\"
|
||||
SET TOOLDIR=E:\
|
||||
%VCDIR%\bin\nmake -f Make_mvc.mak CPU=AMD64 GUI=yes OLE=yes PERL=E:\perl514 DYNAMIC_PERL=yes PERL_VER=514 PYTHON=%TOOLDIR%python27 DYNAMIC_PYTHON=yes PYTHON_VER=27 PYTHON3=%TOOLDIR%python32 DYNAMIC_PYTHON3=yes PYTHON3_VER=32 RUBY=%TOOLDIR%ruby192 DYNAMIC_RUBY=yes RUBY_VER=192 RUBY_VER_LONG=1.9.2 TCL=%TOOLDIR%tcl TCL_VER=85 TCL_VER_LONG=8.5 DYNAMIC_TCL=yes %1 IME=yes CSCOPE=yes
|
||||
|
||||
66
src/buffer.c
66
src/buffer.c
@@ -57,7 +57,6 @@ static void clear_wininfo __ARGS((buf_T *buf));
|
||||
|
||||
#if defined(FEAT_SIGNS)
|
||||
static void insert_sign __ARGS((buf_T *buf, signlist_T *prev, signlist_T *next, int id, linenr_T lnum, int typenr));
|
||||
static void buf_delete_signs __ARGS((buf_T *buf));
|
||||
#endif
|
||||
|
||||
#if defined(FEAT_WINDOWS) && defined(FEAT_QUICKFIX)
|
||||
@@ -1363,9 +1362,6 @@ set_curbuf(buf, action)
|
||||
int action;
|
||||
{
|
||||
buf_T *prevbuf;
|
||||
#ifdef FEAT_WINDOWS
|
||||
win_T *prevwin;
|
||||
#endif
|
||||
int unload = (action == DOBUF_UNLOAD || action == DOBUF_DEL
|
||||
|| action == DOBUF_WIPE);
|
||||
|
||||
@@ -1406,7 +1402,7 @@ set_curbuf(buf, action)
|
||||
#endif
|
||||
{
|
||||
#ifdef FEAT_WINDOWS
|
||||
prevwin = curwin;
|
||||
win_T *previouswin = curwin;
|
||||
#endif
|
||||
if (prevbuf == curbuf)
|
||||
u_sync(FALSE);
|
||||
@@ -1415,9 +1411,9 @@ set_curbuf(buf, action)
|
||||
&& !P_HID(prevbuf)
|
||||
&& !bufIsChanged(prevbuf)) ? DOBUF_UNLOAD : 0, FALSE);
|
||||
#ifdef FEAT_WINDOWS
|
||||
if (curwin != prevwin && win_valid(prevwin))
|
||||
if (curwin != previouswin && win_valid(previouswin))
|
||||
/* autocommands changed curwin, Grr! */
|
||||
curwin = prevwin;
|
||||
curwin = previouswin;
|
||||
#endif
|
||||
}
|
||||
}
|
||||
@@ -1751,7 +1747,8 @@ buflist_new(ffname, sfname, lnum, flags)
|
||||
buf->b_wininfo->wi_win = curwin;
|
||||
|
||||
#ifdef FEAT_EVAL
|
||||
init_var_dict(&buf->b_vars, &buf->b_bufvar); /* init b: variables */
|
||||
/* init b: variables */
|
||||
init_var_dict(&buf->b_vars, &buf->b_bufvar, VAR_SCOPE);
|
||||
#endif
|
||||
#ifdef FEAT_SYN_HL
|
||||
hash_init(&buf->b_s.b_keywtab);
|
||||
@@ -2638,7 +2635,7 @@ buflist_list(eap)
|
||||
continue;
|
||||
msg_putchar('\n');
|
||||
if (buf_spname(buf) != NULL)
|
||||
STRCPY(NameBuff, buf_spname(buf));
|
||||
vim_strncpy(NameBuff, buf_spname(buf), MAXPATHL - 1);
|
||||
else
|
||||
home_replace(buf, buf->b_fname, NameBuff, MAXPATHL, TRUE);
|
||||
|
||||
@@ -3061,7 +3058,7 @@ fileinfo(fullname, shorthelp, dont_truncate)
|
||||
|
||||
*p++ = '"';
|
||||
if (buf_spname(curbuf) != NULL)
|
||||
STRCPY(p, buf_spname(curbuf));
|
||||
vim_strncpy(p, buf_spname(curbuf), IOSIZE - (p - buffer) - 1);
|
||||
else
|
||||
{
|
||||
if (!fullname && curbuf->b_fname != NULL)
|
||||
@@ -3237,12 +3234,15 @@ maketitle()
|
||||
{
|
||||
/* format: "fname + (path) (1 of 2) - VIM" */
|
||||
|
||||
#define SPACE_FOR_FNAME (IOSIZE - 100)
|
||||
#define SPACE_FOR_DIR (IOSIZE - 20)
|
||||
#define SPACE_FOR_ARGNR (IOSIZE - 10) /* at least room for " - VIM" */
|
||||
if (curbuf->b_fname == NULL)
|
||||
vim_strncpy(buf, (char_u *)_("[No Name]"), IOSIZE - 100);
|
||||
vim_strncpy(buf, (char_u *)_("[No Name]"), SPACE_FOR_FNAME);
|
||||
else
|
||||
{
|
||||
p = transstr(gettail(curbuf->b_fname));
|
||||
vim_strncpy(buf, p, IOSIZE - 100);
|
||||
vim_strncpy(buf, p, SPACE_FOR_FNAME);
|
||||
vim_free(p);
|
||||
}
|
||||
|
||||
@@ -3266,7 +3266,7 @@ maketitle()
|
||||
buf[off++] = ' ';
|
||||
buf[off++] = '(';
|
||||
home_replace(curbuf, curbuf->b_ffname,
|
||||
buf + off, IOSIZE - off, TRUE);
|
||||
buf + off, SPACE_FOR_DIR - off, TRUE);
|
||||
#ifdef BACKSLASH_IN_FILENAME
|
||||
/* avoid "c:/name" to be reduced to "c" */
|
||||
if (isalpha(buf[off]) && buf[off + 1] == ':')
|
||||
@@ -3277,18 +3277,28 @@ maketitle()
|
||||
if (p == buf + off)
|
||||
/* must be a help buffer */
|
||||
vim_strncpy(buf + off, (char_u *)_("help"),
|
||||
(size_t)(IOSIZE - off - 1));
|
||||
(size_t)(SPACE_FOR_DIR - off - 1));
|
||||
else
|
||||
*p = NUL;
|
||||
|
||||
/* translate unprintable chars */
|
||||
p = transstr(buf + off);
|
||||
vim_strncpy(buf + off, p, (size_t)(IOSIZE - off - 1));
|
||||
vim_free(p);
|
||||
/* Translate unprintable chars and concatenate. Keep some
|
||||
* room for the server name. When there is no room (very long
|
||||
* file name) use (...). */
|
||||
if (off < SPACE_FOR_DIR)
|
||||
{
|
||||
p = transstr(buf + off);
|
||||
vim_strncpy(buf + off, p, (size_t)(SPACE_FOR_DIR - off));
|
||||
vim_free(p);
|
||||
}
|
||||
else
|
||||
{
|
||||
vim_strncpy(buf + off, (char_u *)"...",
|
||||
(size_t)(SPACE_FOR_ARGNR - off));
|
||||
}
|
||||
STRCAT(buf, ")");
|
||||
}
|
||||
|
||||
append_arg_number(curwin, buf, IOSIZE, FALSE);
|
||||
append_arg_number(curwin, buf, SPACE_FOR_ARGNR, FALSE);
|
||||
|
||||
#if defined(FEAT_CLIENTSERVER)
|
||||
if (serverName != NULL)
|
||||
@@ -3340,7 +3350,7 @@ maketitle()
|
||||
else
|
||||
{
|
||||
if (buf_spname(curbuf) != NULL)
|
||||
i_name = (char_u *)buf_spname(curbuf);
|
||||
i_name = buf_spname(curbuf);
|
||||
else /* use file name only in icon */
|
||||
i_name = gettail(curbuf->b_ffname);
|
||||
*i_str = NUL;
|
||||
@@ -3756,7 +3766,7 @@ build_stl_str_hl(wp, out, outlen, fmt, use_sandbox, fillchar,
|
||||
case STL_FILENAME:
|
||||
fillable = FALSE; /* don't change ' ' to fillchar */
|
||||
if (buf_spname(wp->w_buffer) != NULL)
|
||||
STRCPY(NameBuff, buf_spname(wp->w_buffer));
|
||||
vim_strncpy(NameBuff, buf_spname(wp->w_buffer), MAXPATHL - 1);
|
||||
else
|
||||
{
|
||||
t = (opt == STL_FULLPATH) ? wp->w_buffer->b_ffname
|
||||
@@ -5234,7 +5244,7 @@ write_viminfo_bufferlist(fp)
|
||||
* Return special buffer name.
|
||||
* Returns NULL when the buffer has a normal file name.
|
||||
*/
|
||||
char *
|
||||
char_u *
|
||||
buf_spname(buf)
|
||||
buf_T *buf;
|
||||
{
|
||||
@@ -5253,9 +5263,9 @@ buf_spname(buf)
|
||||
goto win_found;
|
||||
win_found:
|
||||
if (win != NULL && win->w_llist_ref != NULL)
|
||||
return _(msg_loclist);
|
||||
return (char_u *)_(msg_loclist);
|
||||
else
|
||||
return _(msg_qflist);
|
||||
return (char_u *)_(msg_qflist);
|
||||
}
|
||||
#endif
|
||||
#ifdef FEAT_QUICKFIX
|
||||
@@ -5264,12 +5274,12 @@ win_found:
|
||||
if (bt_nofile(buf))
|
||||
{
|
||||
if (buf->b_sfname != NULL)
|
||||
return (char *)buf->b_sfname;
|
||||
return _("[Scratch]");
|
||||
return buf->b_sfname;
|
||||
return (char_u *)_("[Scratch]");
|
||||
}
|
||||
#endif
|
||||
if (buf->b_fname == NULL)
|
||||
return _("[No Name]");
|
||||
return (char_u *)_("[No Name]");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@@ -5540,7 +5550,7 @@ buf_signcount(buf, lnum)
|
||||
/*
|
||||
* Delete signs in buffer "buf".
|
||||
*/
|
||||
static void
|
||||
void
|
||||
buf_delete_signs(buf)
|
||||
buf_T *buf;
|
||||
{
|
||||
|
||||
@@ -161,6 +161,7 @@
|
||||
#undef HAVE_FSYNC
|
||||
#undef HAVE_GETCWD
|
||||
#undef HAVE_GETPSEUDOTTY
|
||||
#undef HAVE_GETPWENT
|
||||
#undef HAVE_GETPWNAM
|
||||
#undef HAVE_GETPWUID
|
||||
#undef HAVE_GETRLIMIT
|
||||
|
||||
101
src/configure.in
101
src/configure.in
@@ -455,31 +455,31 @@ if test "$enable_luainterp" = "yes" -o "$enable_luainterp" = "dynamic"; then
|
||||
|
||||
LUA_INC=
|
||||
if test "X$vi_cv_path_lua_pfx" != "X"; then
|
||||
dnl -- try to find Lua executable
|
||||
AC_PATH_PROG(vi_cv_path_lua, lua)
|
||||
if test "X$vi_cv_path_lua" != "X"; then
|
||||
dnl -- find Lua version
|
||||
AC_CACHE_CHECK(Lua version, vi_cv_version_lua,
|
||||
[ vi_cv_version_lua=`${vi_cv_path_lua} -e "print(_VERSION)" | sed 's/.* //'` ])
|
||||
fi
|
||||
AC_MSG_CHECKING(if lua.h can be found in $vi_cv_path_lua_pfx/include)
|
||||
if test -f $vi_cv_path_lua_pfx/include/lua.h; then
|
||||
AC_MSG_RESULT(yes)
|
||||
else
|
||||
AC_MSG_RESULT(no)
|
||||
dnl -- try to find Lua executable
|
||||
AC_PATH_PROG(vi_cv_path_lua, lua)
|
||||
if test "X$vi_cv_path_lua" != "X"; then
|
||||
dnl -- find Lua version
|
||||
AC_CACHE_CHECK(Lua version, vi_cv_version_lua,
|
||||
[ vi_cv_version_lua=`${vi_cv_path_lua} -e "print(_VERSION)" | sed 's/.* //'` ])
|
||||
AC_MSG_CHECKING(if lua.h can be found in $vi_cv_path_lua_pfx/include/lua$vi_cv_version_lua)
|
||||
if test -f $vi_cv_path_lua_pfx/include/lua$vi_cv_version_lua/lua.h; then
|
||||
AC_MSG_RESULT(yes)
|
||||
LUA_INC=/lua$vi_cv_version_lua
|
||||
else
|
||||
AC_MSG_RESULT(no)
|
||||
vi_cv_path_lua_pfx=
|
||||
fi
|
||||
AC_MSG_CHECKING(if lua.h can be found in $vi_cv_path_lua_pfx/include/lua$vi_cv_version_lua)
|
||||
if test -f $vi_cv_path_lua_pfx/include/lua$vi_cv_version_lua/lua.h; then
|
||||
AC_MSG_RESULT(yes)
|
||||
LUA_INC=/lua$vi_cv_version_lua
|
||||
else
|
||||
AC_MSG_RESULT(no)
|
||||
vi_cv_path_lua_pfx=
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
if test "X$vi_cv_path_lua_pfx" != "X"; then
|
||||
if test "X$vi_cv_version_lua" != "X"; then
|
||||
if test "X$LUA_INC" != "X"; then
|
||||
dnl Test alternate location using version
|
||||
LUA_LIBS="-L${vi_cv_path_lua_pfx}/lib -llua$vi_cv_version_lua"
|
||||
else
|
||||
@@ -491,17 +491,22 @@ if test "$enable_luainterp" = "yes" -o "$enable_luainterp" = "dynamic"; then
|
||||
LUA_PRO="if_lua.pro"
|
||||
AC_DEFINE(FEAT_LUA)
|
||||
if test "$enable_luainterp" = "dynamic"; then
|
||||
dnl Determine the SONAME for the current version, but fallback to
|
||||
dnl liblua${vi_cv_version_lua}.so if no SONAME-versioned file is found.
|
||||
for i in 0 1 2 3 4 5 6 7 8 9; do
|
||||
if test -f "${vi_cv_path_lua_pfx}/lib/liblua${vi_cv_version_lua}.so.$i"; then
|
||||
LUA_SONAME=".$i"
|
||||
break
|
||||
fi
|
||||
done
|
||||
if test -f "${vi_cv_path_lua_pfx}/bin/cyglua-${vi_cv_version_lua}.dll"; then
|
||||
vi_cv_dll_name_lua="cyglua-${vi_cv_version_lua}.dll"
|
||||
else
|
||||
dnl Determine the SONAME for the current version, but fallback to
|
||||
dnl liblua${vi_cv_version_lua}.so if no SONAME-versioned file is found.
|
||||
for i in 0 1 2 3 4 5 6 7 8 9; do
|
||||
if test -f "${vi_cv_path_lua_pfx}/lib/liblua${vi_cv_version_lua}.so.$i"; then
|
||||
LUA_SONAME=".$i"
|
||||
break
|
||||
fi
|
||||
done
|
||||
vi_cv_dll_name_lua="liblua${vi_cv_version_lua}.so$LUA_SONAME"
|
||||
fi
|
||||
AC_DEFINE(DYNAMIC_LUA)
|
||||
LUA_LIBS=""
|
||||
LUA_CFLAGS="-DDYNAMIC_LUA_DLL=\\\"liblua${vi_cv_version_lua}.so$LUA_SONAME\\\" $LUA_CFLAGS"
|
||||
LUA_CFLAGS="-DDYNAMIC_LUA_DLL=\\\"${vi_cv_dll_name_lua}\\\" $LUA_CFLAGS"
|
||||
fi
|
||||
fi
|
||||
if test "$fail_if_missing" = "yes" -a -z "$LUA_SRC"; then
|
||||
@@ -889,6 +894,7 @@ __:
|
||||
@echo "python_LIBS='$(LIBS)'"
|
||||
@echo "python_SYSLIBS='$(SYSLIBS)'"
|
||||
@echo "python_LINKFORSHARED='$(LINKFORSHARED)'"
|
||||
@echo "python_DLLLIBRARY='$(DLLLIBRARY)'"
|
||||
@echo "python_INSTSONAME='$(INSTSONAME)'"
|
||||
eof
|
||||
dnl -- delete the lines from make about Entering/Leaving directory
|
||||
@@ -909,6 +915,9 @@ eof
|
||||
fi
|
||||
])
|
||||
|
||||
if test "X$python_DLLLIBRARY" != "X"; then
|
||||
python_INSTSONAME="$python_DLLLIBRARY"
|
||||
fi
|
||||
PYTHON_LIBS="${vi_cv_path_python_plibs}"
|
||||
if test "${vi_cv_path_python_pfx}" = "${vi_cv_path_python_epfx}"; then
|
||||
PYTHON_CFLAGS="-I${vi_cv_path_python_pfx}/include/python${vi_cv_var_python_version} -DPYTHON_HOME=\\\"${vi_cv_path_python_pfx}\\\""
|
||||
@@ -916,12 +925,7 @@ eof
|
||||
PYTHON_CFLAGS="-I${vi_cv_path_python_pfx}/include/python${vi_cv_var_python_version} -I${vi_cv_path_python_epfx}/include/python${vi_cv_var_python_version} -DPYTHON_HOME=\\\"${vi_cv_path_python_pfx}\\\""
|
||||
fi
|
||||
PYTHON_SRC="if_python.c"
|
||||
dnl For Mac OSX 10.2 config.o is included in the Python library.
|
||||
if test "x$MACOSX" = "xyes"; then
|
||||
PYTHON_OBJ="objects/if_python.o"
|
||||
else
|
||||
PYTHON_OBJ="objects/if_python.o objects/py_config.o"
|
||||
fi
|
||||
PYTHON_OBJ="objects/if_python.o"
|
||||
if test "${vi_cv_var_python_version}" = "1.4"; then
|
||||
PYTHON_OBJ="$PYTHON_OBJ objects/py_getpath.o"
|
||||
fi
|
||||
@@ -1087,6 +1091,7 @@ __:
|
||||
@echo "python3_BASEMODLIBS='$(BASEMODLIBS)'"
|
||||
@echo "python3_LIBS='$(LIBS)'"
|
||||
@echo "python3_SYSLIBS='$(SYSLIBS)'"
|
||||
@echo "python3_DLLLIBRARY='$(DLLLIBRARY)'"
|
||||
@echo "python3_INSTSONAME='$(INSTSONAME)'"
|
||||
eof
|
||||
dnl -- delete the lines from make about Entering/Leaving directory
|
||||
@@ -1099,6 +1104,9 @@ eof
|
||||
vi_cv_path_python3_plibs=`echo $vi_cv_path_python3_plibs | sed s/-lffi//`
|
||||
])
|
||||
|
||||
if test "X$python3_DLLLIBRARY" != "X"; then
|
||||
python3_INSTSONAME="$python3_DLLLIBRARY"
|
||||
fi
|
||||
PYTHON3_LIBS="${vi_cv_path_python3_plibs}"
|
||||
if test "${vi_cv_path_python3_pfx}" = "${vi_cv_path_python3_epfx}"; then
|
||||
PYTHON3_CFLAGS="-I${vi_cv_path_python3_pfx}/include/python${vi_cv_var_python3_version}${vi_cv_var_python3_abiflags} -DPYTHON3_HOME=L\\\"${vi_cv_path_python3_pfx}\\\""
|
||||
@@ -1106,12 +1114,7 @@ eof
|
||||
PYTHON3_CFLAGS="-I${vi_cv_path_python3_pfx}/include/python${vi_cv_var_python3_version}${vi_cv_var_python3_abiflags} -I${vi_cv_path_python3_epfx}/include/python${vi_cv_var_python3_version}${vi_cv_var_python3_abiflags} -DPYTHON3_HOME=L\\\"${vi_cv_path_python3_pfx}\\\""
|
||||
fi
|
||||
PYTHON3_SRC="if_python3.c"
|
||||
dnl For Mac OSX 10.2 config.o is included in the Python library.
|
||||
if test "x$MACOSX" = "xyes"; then
|
||||
PYTHON3_OBJ="objects/if_python3.o"
|
||||
else
|
||||
PYTHON3_OBJ="objects/if_python3.o objects/py3_config.o"
|
||||
fi
|
||||
PYTHON3_OBJ="objects/if_python3.o"
|
||||
|
||||
dnl On FreeBSD linking with "-pthread" is required to use threads.
|
||||
dnl _THREAD_SAFE must be used for compiling then.
|
||||
@@ -1439,24 +1442,30 @@ if test "$enable_rubyinterp" = "yes" -o "$enable_rubyinterp" = "dynamic"; then
|
||||
AC_MSG_CHECKING(Ruby version)
|
||||
if $vi_cv_path_ruby -e '(VERSION rescue RUBY_VERSION) >= "1.6.0" or exit 1' >/dev/null 2>/dev/null; then
|
||||
AC_MSG_RESULT(OK)
|
||||
AC_MSG_CHECKING(Ruby rbconfig)
|
||||
ruby_rbconfig="RbConfig"
|
||||
if ! $vi_cv_path_ruby -r rbconfig -e 'RbConfig' >/dev/null 2>/dev/null; then
|
||||
ruby_rbconfig="Config"
|
||||
fi
|
||||
AC_MSG_RESULT($ruby_rbconfig)
|
||||
AC_MSG_CHECKING(Ruby header files)
|
||||
rubyhdrdir=`$vi_cv_path_ruby -r mkmf -e 'print Config::CONFIG[["rubyhdrdir"]] || Config::CONFIG[["archdir"]] || $hdrdir' 2>/dev/null`
|
||||
rubyhdrdir=`$vi_cv_path_ruby -r mkmf -e "print $ruby_rbconfig::CONFIG[['rubyhdrdir']] || $ruby_rbconfig::CONFIG[['archdir']] || \\$hdrdir" 2>/dev/null`
|
||||
if test "X$rubyhdrdir" != "X"; then
|
||||
AC_MSG_RESULT($rubyhdrdir)
|
||||
RUBY_CFLAGS="-I$rubyhdrdir"
|
||||
rubyarch=`$vi_cv_path_ruby -r rbconfig -e 'print Config::CONFIG[["arch"]]'`
|
||||
rubyarch=`$vi_cv_path_ruby -r rbconfig -e "print $ruby_rbconfig::CONFIG[['arch']]"`
|
||||
if test -d "$rubyhdrdir/$rubyarch"; then
|
||||
RUBY_CFLAGS="$RUBY_CFLAGS -I$rubyhdrdir/$rubyarch"
|
||||
fi
|
||||
rubyversion=`$vi_cv_path_ruby -r rbconfig -e 'print Config::CONFIG[["ruby_version"]].gsub(/\./, "")[[0,2]]'`
|
||||
rubyversion=`$vi_cv_path_ruby -r rbconfig -e "print $ruby_rbconfig::CONFIG[['ruby_version']].gsub(/\./, '')[[0,2]]"`
|
||||
RUBY_CFLAGS="$RUBY_CFLAGS -DRUBY_VERSION=$rubyversion"
|
||||
rubylibs=`$vi_cv_path_ruby -r rbconfig -e 'print Config::CONFIG[["LIBS"]]'`
|
||||
rubylibs=`$vi_cv_path_ruby -r rbconfig -e "print $ruby_rbconfig::CONFIG[['LIBS']]"`
|
||||
if test "X$rubylibs" != "X"; then
|
||||
RUBY_LIBS="$rubylibs"
|
||||
fi
|
||||
librubyarg=`$vi_cv_path_ruby -r rbconfig -e 'print Config.expand(Config::CONFIG[["LIBRUBYARG"]])'`
|
||||
librubya=`$vi_cv_path_ruby -r rbconfig -e 'print Config.expand(Config::CONFIG[["LIBRUBY_A"]])'`
|
||||
rubylibdir=`$vi_cv_path_ruby -r rbconfig -e 'print Config.expand(Config::CONFIG[["libdir"]])'`
|
||||
librubyarg=`$vi_cv_path_ruby -r rbconfig -e "print $ruby_rbconfig.expand($ruby_rbconfig::CONFIG[['LIBRUBYARG']])"`
|
||||
librubya=`$vi_cv_path_ruby -r rbconfig -e "print $ruby_rbconfig.expand($ruby_rbconfig::CONFIG[['LIBRUBY_A']])"`
|
||||
rubylibdir=`$vi_cv_path_ruby -r rbconfig -e "print $ruby_rbconfig.expand($ruby_rbconfig::CONFIG[['libdir']])"`
|
||||
if test -f "$rubylibdir/$librubya"; then
|
||||
librubyarg="$librubyarg"
|
||||
RUBY_LIBS="$RUBY_LIBS -L$rubylibdir"
|
||||
@@ -1469,7 +1478,7 @@ if test "$enable_rubyinterp" = "yes" -o "$enable_rubyinterp" = "dynamic"; then
|
||||
if test "X$librubyarg" != "X"; then
|
||||
RUBY_LIBS="$librubyarg $RUBY_LIBS"
|
||||
fi
|
||||
rubyldflags=`$vi_cv_path_ruby -r rbconfig -e 'print Config::CONFIG[["LDFLAGS"]]'`
|
||||
rubyldflags=`$vi_cv_path_ruby -r rbconfig -e "print $ruby_rbconfig::CONFIG[['LDFLAGS']]"`
|
||||
if test "X$rubyldflags" != "X"; then
|
||||
dnl Ruby on Mac OS X 10.5 adds "-arch" flags but these should only
|
||||
dnl be included if requested by passing --with-mac-arch to
|
||||
@@ -1484,7 +1493,7 @@ if test "$enable_rubyinterp" = "yes" -o "$enable_rubyinterp" = "dynamic"; then
|
||||
RUBY_PRO="if_ruby.pro"
|
||||
AC_DEFINE(FEAT_RUBY)
|
||||
if test "$enable_rubyinterp" = "dynamic"; then
|
||||
libruby=`$vi_cv_path_ruby -r rbconfig -e 'printf "lib%s.%s\n", Config::CONFIG[["RUBY_SO_NAME"]], Config::CONFIG[["DLEXT"]]'`
|
||||
libruby=`$vi_cv_path_ruby -r rbconfig -e "puts $ruby_rbconfig::CONFIG[['LIBRUBY_SO']]"`
|
||||
AC_DEFINE(DYNAMIC_RUBY)
|
||||
RUBY_CFLAGS="-DDYNAMIC_RUBY_DLL=\\\"$libruby\\\" -DDYNAMIC_RUBY_VER=$rubyversion $RUBY_CFLAGS"
|
||||
RUBY_LIBS=
|
||||
@@ -3004,7 +3013,7 @@ fi
|
||||
dnl Check for functions in one big call, to reduce the size of configure.
|
||||
dnl Can only be used for functions that do not require any include.
|
||||
AC_CHECK_FUNCS(bcmp fchdir fchown fsync getcwd getpseudotty \
|
||||
getpwnam getpwuid getrlimit gettimeofday getwd lstat memcmp \
|
||||
getpwent getpwnam getpwuid getrlimit gettimeofday getwd lstat memcmp \
|
||||
memset mkdtemp nanosleep opendir putenv qsort readlink select setenv \
|
||||
setpgid setsid sigaltstack sigstack sigset sigsetjmp sigaction \
|
||||
sigvec strcasecmp strerror strftime stricmp strncasecmp \
|
||||
|
||||
50
src/edit.c
50
src/edit.c
@@ -3823,6 +3823,11 @@ ins_compl_prep(c)
|
||||
*/
|
||||
if (want_cindent && in_cinkeys(KEY_COMPLETE, ' ', inindent(0)))
|
||||
do_c_expr_indent();
|
||||
#endif
|
||||
#ifdef FEAT_AUTOCMD
|
||||
/* Trigger the CompleteDone event to give scripts a chance to act
|
||||
* upon the completion. */
|
||||
apply_autocmds(EVENT_COMPLETEDONE, NULL, NULL, FALSE, curbuf);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
@@ -3954,7 +3959,7 @@ expand_by_function(type, base)
|
||||
curbuf_save = curbuf;
|
||||
|
||||
/* Call a function, which returns a list or dict. */
|
||||
if (call_vim_function(funcname, 2, args, FALSE, &rettv) == OK)
|
||||
if (call_vim_function(funcname, 2, args, FALSE, FALSE, &rettv) == OK)
|
||||
{
|
||||
switch (rettv.v_type)
|
||||
{
|
||||
@@ -6320,14 +6325,15 @@ internal_format(textwidth, second_indent, flags, format_only, c)
|
||||
if (!(flags & INSCHAR_COM_LIST))
|
||||
{
|
||||
/*
|
||||
* This section is for numeric lists w/o comments. If comment
|
||||
* indents are needed with numeric lists (formatoptions=nq),
|
||||
* then the INSCHAR_COM_LIST flag will cause the corresponding
|
||||
* OPENLINE_COM_LIST flag to be passed through to open_line()
|
||||
* (as seen above)...
|
||||
* This section is for auto-wrap of numeric lists. When not
|
||||
* in insert mode (i.e. format_lines()), the INSCHAR_COM_LIST
|
||||
* flag will be set and open_line() will handle it (as seen
|
||||
* above). The code here (and in get_number_indent()) will
|
||||
* recognize comments if needed...
|
||||
*/
|
||||
if (second_indent < 0 && has_format_option(FO_Q_NUMBER))
|
||||
second_indent = get_number_indent(curwin->w_cursor.lnum -1);
|
||||
second_indent =
|
||||
get_number_indent(curwin->w_cursor.lnum - 1);
|
||||
if (second_indent >= 0)
|
||||
{
|
||||
#ifdef FEAT_VREPLACE
|
||||
@@ -6335,8 +6341,30 @@ internal_format(textwidth, second_indent, flags, format_only, c)
|
||||
change_indent(INDENT_SET, second_indent,
|
||||
FALSE, NUL, TRUE);
|
||||
else
|
||||
#endif
|
||||
#ifdef FEAT_COMMENTS
|
||||
if (leader_len > 0 && second_indent - leader_len > 0)
|
||||
{
|
||||
int i;
|
||||
int padding = second_indent - leader_len;
|
||||
|
||||
/* We started at the first_line of a numbered list
|
||||
* that has a comment. the open_line() function has
|
||||
* inserted the proper comment leader and positioned
|
||||
* the cursor at the end of the split line. Now we
|
||||
* add the additional whitespace needed after the
|
||||
* comment leader for the numbered list. */
|
||||
for (i = 0; i < padding; i++)
|
||||
ins_str((char_u *)" ");
|
||||
changed_bytes(curwin->w_cursor.lnum, leader_len);
|
||||
}
|
||||
else
|
||||
{
|
||||
#endif
|
||||
(void)set_indent(second_indent, SIN_CHANGED);
|
||||
#ifdef FEAT_COMMENTS
|
||||
}
|
||||
#endif
|
||||
}
|
||||
}
|
||||
first_line = FALSE;
|
||||
@@ -8871,9 +8899,9 @@ ins_bs(c, mode, inserted_space_p)
|
||||
|
||||
*inserted_space_p = FALSE;
|
||||
if (p_sta && in_indent)
|
||||
ts = curbuf->b_p_sw;
|
||||
ts = (int)get_sw_value();
|
||||
else
|
||||
ts = curbuf->b_p_sts;
|
||||
ts = (int)curbuf->b_p_sts;
|
||||
/* Compute the virtual column where we want to be. Since
|
||||
* 'showbreak' may get in the way, need to get the last column of
|
||||
* the previous character. */
|
||||
@@ -9561,7 +9589,7 @@ ins_tab()
|
||||
* When nothing special, insert TAB like a normal character
|
||||
*/
|
||||
if (!curbuf->b_p_et
|
||||
&& !(p_sta && ind && curbuf->b_p_ts != curbuf->b_p_sw)
|
||||
&& !(p_sta && ind && curbuf->b_p_ts != get_sw_value())
|
||||
&& curbuf->b_p_sts == 0)
|
||||
return TRUE;
|
||||
|
||||
@@ -9577,7 +9605,7 @@ ins_tab()
|
||||
AppendToRedobuff((char_u *)"\t");
|
||||
|
||||
if (p_sta && ind) /* insert tab in indent, use 'shiftwidth' */
|
||||
temp = (int)curbuf->b_p_sw;
|
||||
temp = (int)get_sw_value();
|
||||
else if (curbuf->b_p_sts > 0) /* use 'softtabstop' when set */
|
||||
temp = (int)curbuf->b_p_sts;
|
||||
else /* otherwise use 'tabstop' */
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user