From fb44c1b1c90225a935b7ac3a27917d94ceba43dd Mon Sep 17 00:00:00 2001 From: Bjorn Winckler Date: Sat, 19 Dec 2009 21:46:15 +0100 Subject: [PATCH] Update runtime files --- runtime/doc/autocmd.txt | 4 +- runtime/doc/change.txt | 7 +- runtime/doc/eval.txt | 12 +- runtime/doc/ft_sql.txt | 2 +- runtime/doc/indent.txt | 5 +- runtime/doc/map.txt | 4 +- runtime/doc/mbyte.txt | 19 +- runtime/doc/options.txt | 17 +- runtime/doc/repeat.txt | 8 +- runtime/doc/starting.txt | 9 +- runtime/doc/syntax.txt | 11 +- runtime/doc/tags | 3 + runtime/doc/term.txt | 17 +- runtime/doc/tips.txt | 4 +- runtime/doc/todo.txt | 92 ++-- runtime/doc/usr_11.txt | 4 +- runtime/doc/various.txt | 3 +- runtime/doc/version7.txt | 4 +- runtime/filetype.vim | 2 +- runtime/getdos.aap | 80 ++-- runtime/getunix.aap | 80 ++-- runtime/indent/sh.vim | 132 +++++- runtime/syntax/c.vim | 6 +- runtime/syntax/erlang.vim | 4 +- runtime/syntax/form.vim | 87 +++- runtime/syntax/groovy.vim | 1 + runtime/syntax/maxima.vim | 2 +- runtime/syntax/papp.vim | 3 +- runtime/syntax/prolog.vim | 4 +- runtime/syntax/pyrex.vim | 6 +- runtime/syntax/scheme.vim | 16 +- runtime/syntax/spec.vim | 3 +- runtime/syntax/spyce.vim | 3 +- runtime/syntax/tcsh.vim | 6 +- runtime/syntax/uil.vim | 5 +- runtime/tutor/Makefile | 13 + runtime/tutor/tutor.bj | 987 +++++++++++++++++++++++++++++++++++++++++++ runtime/tutor/tutor.bj.utf-8 | 987 +++++++++++++++++++++++++++++++++++++++++++ runtime/tutor/tutor.nb | 973 ++++++++++++++++++++++++++++++++++++++++++ runtime/tutor/tutor.nb.utf-8 | 973 ++++++++++++++++++++++++++++++++++++++++++ 40 files changed, 4407 insertions(+), 191 deletions(-) create mode 100644 runtime/tutor/tutor.bj create mode 100644 runtime/tutor/tutor.bj.utf-8 create mode 100644 runtime/tutor/tutor.nb create mode 100644 runtime/tutor/tutor.nb.utf-8 diff --git a/runtime/doc/autocmd.txt b/runtime/doc/autocmd.txt index 216642a4..20b5e6a4 100644 --- a/runtime/doc/autocmd.txt +++ b/runtime/doc/autocmd.txt @@ -1,4 +1,4 @@ -*autocmd.txt* For Vim version 7.2. Last change: 2009 Oct 04 +*autocmd.txt* For Vim version 7.2. Last change: 2009 Nov 25 VIM REFERENCE MANUAL by Bram Moolenaar @@ -1052,7 +1052,7 @@ option will not cause any commands to be executed. *:doautoa* *:doautoall* :doautoa[ll] [group] {event} [fname] Like ":doautocmd", but apply the autocommands to each - loaded buffer. Note that {fname} is used to select + loaded buffer. Note that [fname] is used to select the autocommands, not the buffers to which they are applied. Careful: Don't use this for autocommands that delete a diff --git a/runtime/doc/change.txt b/runtime/doc/change.txt index 57119ddf..f493e10e 100644 --- a/runtime/doc/change.txt +++ b/runtime/doc/change.txt @@ -1,4 +1,4 @@ -*change.txt* For Vim version 7.2. Last change: 2009 Sep 15 +*change.txt* For Vim version 7.2. Last change: 2009 Nov 11 VIM REFERENCE MANUAL by Bram Moolenaar @@ -879,7 +879,10 @@ inside of strings can change! Also see 'softtabstop' option. > *:reg* *:registers* :reg[isters] Display the contents of all numbered and named - registers. {not in Vi} + registers. If a register is written to for |:redir| + it will not be listed. + {not in Vi} + :reg[isters] {arg} Display the contents of the numbered and named registers that are mentioned in {arg}. For example: > diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt index eaa2bd59..1b4c0907 100644 --- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -1,4 +1,4 @@ -*eval.txt* For Vim version 7.2. Last change: 2009 Sep 30 +*eval.txt* For Vim version 7.2. Last change: 2009 Nov 17 VIM REFERENCE MANUAL by Bram Moolenaar @@ -3484,7 +3484,9 @@ hostname() *hostname()* iconv({expr}, {from}, {to}) *iconv()* The result is a String, which is the text {expr} converted from encoding {from} to encoding {to}. - When the conversion fails an empty string is returned. + When the conversion completely fails an empty string is + returned. When some characters could not be converted they + are replaced with "?". The encoding names are whatever the iconv() library function can accept, see ":!man 3 iconv". Most conversions require Vim to be compiled with the |+iconv| @@ -3812,7 +3814,8 @@ map({expr}, {string}) *map()* Replace each item in {expr} with the result of evaluating {string}. Inside {string} |v:val| has the value of the current item. - For a |Dictionary| |v:key| has the key of the current item. + For a |Dictionary| |v:key| has the key of the current item + and for a |List| |v:key| has the index of the current item. Example: > :call map(mylist, '"> " . v:val . " <"') < This puts "> " before and " <" after each item in "mylist". @@ -4998,7 +5001,7 @@ setwinvar({nr}, {varname}, {val}) *setwinvar()* :call setwinvar(2, "myvar", "foobar") shellescape({string} [, {special}]) *shellescape()* - Escape {string} for use as shell command argument. + Escape {string} for use as a shell command argument. On MS-Windows and MS-DOS, when 'shellslash' is not set, it will enclose {string} in double quotes and double all double quotes within {string}. @@ -5881,6 +5884,7 @@ showcmd Compiled with 'showcmd' support. signs Compiled with |:sign| support. smartindent Compiled with 'smartindent' support. sniff Compiled with SNiFF interface support. +startuptime Compiled with |--startuptime| support. statusline Compiled with support for 'statusline', 'rulerformat' and special formats of 'titlestring' and 'iconstring'. sun_workshop Compiled with support for Sun |workshop|. diff --git a/runtime/doc/ft_sql.txt b/runtime/doc/ft_sql.txt index 78032427..9b0903e6 100644 --- a/runtime/doc/ft_sql.txt +++ b/runtime/doc/ft_sql.txt @@ -1,4 +1,4 @@ -*sql.txt* For Vim version 7.0g. Last change: 2009 Oct 08 +*sql.txt* For Vim version 7.2. Last change: 2009 Nov 03 by David Fishburn diff --git a/runtime/doc/indent.txt b/runtime/doc/indent.txt index 4d00da25..9ae52cb4 100644 --- a/runtime/doc/indent.txt +++ b/runtime/doc/indent.txt @@ -1,4 +1,4 @@ -*indent.txt* For Vim version 7.2. Last change: 2008 Jul 30 +*indent.txt* For Vim version 7.2. Last change: 2009 Nov 12 VIM REFERENCE MANUAL by Bram Moolenaar @@ -609,8 +609,9 @@ b:sh_indent_options['continuation-line'] b:sh_indent_options['case-labels'] Amount of indent to add for case labels. + (not actually implemented) -b:sh_indent_options['case-statement'] +b:sh_indent_options['case-statements'] Amount of indent to add for case statements. b:sh_indent_options['case-breaks'] diff --git a/runtime/doc/map.txt b/runtime/doc/map.txt index f4bc6255..ecc992db 100644 --- a/runtime/doc/map.txt +++ b/runtime/doc/map.txt @@ -1,4 +1,4 @@ -*map.txt* For Vim version 7.2. Last change: 2009 Oct 14 +*map.txt* For Vim version 7.2. Last change: 2009 Nov 04 VIM REFERENCE MANUAL by Bram Moolenaar @@ -1263,7 +1263,7 @@ the 'path' option: > :com -nargs=1 -bang -complete=customlist,EditFileComplete \ EditFile edit :fun EditFileComplete(A,L,P) - : return split(globpath(&path, a:ArgLead), "\n") + : return split(globpath(&path, a:A), "\n") :endfun < diff --git a/runtime/doc/mbyte.txt b/runtime/doc/mbyte.txt index 12c95f11..164b4b7a 100644 --- a/runtime/doc/mbyte.txt +++ b/runtime/doc/mbyte.txt @@ -1,4 +1,4 @@ -*mbyte.txt* For Vim version 7.2. Last change: 2009 Feb 28 +*mbyte.txt* For Vim version 7.2. Last change: 2009 Nov 17 VIM REFERENCE MANUAL by Bram Moolenaar et al. @@ -1252,16 +1252,31 @@ ASCII. On MS-Windows UTF-16 is also used (previously UCS-2), which uses 16-bit words. Vim can support all of these encodings, but always uses UTF-8 internally. -Vim has comprehensive UTF-8 support. It appears to work in: +Vim has comprehensive UTF-8 support. It works well in: - xterm with utf-8 support enabled - Athena, Motif and GTK GUI - MS-Windows GUI +- several other platforms Double-width characters are supported. This works best with 'guifontwide' or 'guifontset'. When using only 'guifont' the wide characters are drawn in the normal width and a space to fill the gap. Note that the 'guifontset' option is no longer relevant in the GTK+ 2 GUI. + *bom-bytes* +When reading a file a BOM (Byte Order Mark) can be used to recognize the +Unicode encoding: + EF BB BF utf-8 + FF FE utf-16 big endian + FE FF utf-16 little endian + 00 00 FE FF utf-32 big endian + FF FE 00 00 utf-32 little endian + +Utf-8 is the recommended encoding. Note that it's difficult to tell utf-16 +and utf-32 apart. Utf-16 is often used on MS-Windows, utf-32 is not +widespread as file format. + + *mbyte-combining* *mbyte-composing* A composing or combining character is used to change the meaning of the character before it. The combining characters are drawn on top of the diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt index 7a306af2..2be368e2 100644 --- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -1,4 +1,4 @@ -*options.txt* For Vim version 7.2. Last change: 2009 Oct 12 +*options.txt* For Vim version 7.2. Last change: 2009 Nov 09 VIM REFERENCE MANUAL by Bram Moolenaar @@ -813,11 +813,11 @@ A jump table for the options with a short description can be found at |Q_op|. When 'background' is set Vim will adjust the default color groups for the new value. But the colors used for syntax highlighting will not change. *g:colors_name* - When a color scheme is loaded (the "colors_name" variable is set) + When a color scheme is loaded (the "g:colors_name" variable is set) setting 'background' will cause the color scheme to be reloaded. If the color scheme adjusts to the value of 'background' this will work. However, if the color scheme sets 'background' itself the effect may - be undone. First delete the "colors_name" variable when needed. + be undone. First delete the "g:colors_name" variable when needed. When setting 'background' to the default value with: > :set background& @@ -2451,6 +2451,9 @@ A jump table for the options with a short description can be found at |Q_op|. 'eadirection' option tells in which direction the size is affected. Changing the height and width of a window can be avoided by setting 'winfixheight' and 'winfixwidth', respectively. + If a window size is specified when creating a new window sizes are + currently not equalized (it's complicated, but may be implemented in + the future). *'equalprg'* *'ep'* 'equalprg' 'ep' string (default "") @@ -5912,8 +5915,12 @@ A jump table for the options with a short description can be found at |Q_op|. {not available when compiled without the |+linebreak| feature} String to put at the start of lines that have been wrapped. Useful - values are "> " or "+++ ". - Only printable single-cell characters are allowed, excluding and + values are "> " or "+++ ": > + :set showbreak=>\ +< Note the backslash to escape the trailing space. It's easier like + this: > + :let &showbreak = '+++ ' +< Only printable single-cell characters are allowed, excluding and comma (in a future version the comma might be used to separate the part that is shown at the end and at the start of a line). The characters are highlighted according to the '@' flag in diff --git a/runtime/doc/repeat.txt b/runtime/doc/repeat.txt index 7dbd4945..16a1b2cf 100644 --- a/runtime/doc/repeat.txt +++ b/runtime/doc/repeat.txt @@ -1,4 +1,4 @@ -*repeat.txt* For Vim version 7.2. Last change: 2007 Aug 12 +*repeat.txt* For Vim version 7.2. Last change: 2009 Nov 04 VIM REFERENCE MANUAL by Bram Moolenaar @@ -332,6 +332,12 @@ Note however that trailing whitespace in the line before it cannot be inserted freely; it depends on the position where a command is split up whether additional whitespace is allowed or not. +When a space is required it's best to put it right after the backslash. A +space at the end of a line is hard to see and may be accidentally deleted. > + :syn match Comment + \ "very long regexp" + \ keepend + There is a problem with the ":append" and ":insert" commands: > :1append \asdf diff --git a/runtime/doc/starting.txt b/runtime/doc/starting.txt index e44c03c6..dec5be4a 100644 --- a/runtime/doc/starting.txt +++ b/runtime/doc/starting.txt @@ -1,4 +1,4 @@ -*starting.txt* For Vim version 7.2. Last change: 2009 Oct 25 +*starting.txt* For Vim version 7.2. Last change: 2009 Nov 11 VIM REFERENCE MANUAL by Bram Moolenaar @@ -144,12 +144,13 @@ a slash. Thus "-R" means recovery and "-/R" readonly. -u NORC no yes --noplugin yes no ---startuptime={fname} *--startuptime* +--startuptime {fname} *--startuptime* During startup write timing messages to the file {fname}. This can be used to find out where time is spent while loading - your .vimrc and plugins. + your .vimrc, plugins and opening the first file. When {fname} already exists new messages are appended. - {only when compiled with this feature} + (Only available when compiled with the |+startuptime| + feature). *--literal* --literal Take file names literally, don't expand wildcards. Not needed diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt index ff9e500e..bf174e05 100644 --- a/runtime/doc/syntax.txt +++ b/runtime/doc/syntax.txt @@ -1,4 +1,4 @@ -*syntax.txt* For Vim version 7.2. Last change: 2009 Oct 28 +*syntax.txt* For Vim version 7.2. Last change: 2009 Nov 08 VIM REFERENCE MANUAL by Bram Moolenaar @@ -3872,10 +3872,11 @@ in their own color. :colo[rscheme] {name} Load color scheme {name}. This searches 'runtimepath' for the file "colors/{name}.vim. The first one that is found is loaded. - To see the name of the currently active color scheme - (if there is one): > + To see the name of the currently active color scheme: > :echo g:colors_name -< Doesn't work recursively, thus you can't use +< When using the default colors you will get an E121 + error. + Doesn't work recursively, thus you can't use ":colorscheme" in a color scheme script. After the color scheme has been loaded the |ColorScheme| autocommand event is triggered. @@ -4072,7 +4073,7 @@ ctermbg={color-nr} *highlight-ctermbg* colors. When a colorscheme is being used, changing 'background' causes it to be reloaded, which may reset all colors (including Normal). First - delete the "colors_name" variable when you don't want this. + delete the "g:colors_name" variable when you don't want this. When you have set "ctermfg" or "ctermbg" for the Normal group, Vim needs to reset the color when exiting. This is done with the "op" diff --git a/runtime/doc/tags b/runtime/doc/tags index b554fe46..8113a6ef 100644 --- a/runtime/doc/tags +++ b/runtime/doc/tags @@ -1171,6 +1171,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME* +signs various.txt /*+signs* +smartindent various.txt /*+smartindent* +sniff various.txt /*+sniff* ++startuptime various.txt /*+startuptime* +statusline various.txt /*+statusline* +sun_workshop various.txt /*+sun_workshop* +syntax various.txt /*+syntax* @@ -4679,6 +4680,7 @@ blockwise-operators visual.txt /*blockwise-operators* blockwise-register change.txt /*blockwise-register* blockwise-visual visual.txt /*blockwise-visual* bold syntax.txt /*bold* +bom-bytes mbyte.txt /*bom-bytes* book intro.txt /*book* bookmark usr_03.txt /*bookmark* boolean options.txt /*boolean* @@ -8223,6 +8225,7 @@ xterm-function-keys term.txt /*xterm-function-keys* xterm-modifier-keys term.txt /*xterm-modifier-keys* xterm-mouse options.txt /*xterm-mouse* xterm-mouse-wheel scroll.txt /*xterm-mouse-wheel* +xterm-resize term.txt /*xterm-resize* xterm-save-screen tips.txt /*xterm-save-screen* xterm-screens tips.txt /*xterm-screens* xterm-scroll-region term.txt /*xterm-scroll-region* diff --git a/runtime/doc/term.txt b/runtime/doc/term.txt index 3df06565..ed308e8b 100644 --- a/runtime/doc/term.txt +++ b/runtime/doc/term.txt @@ -1,4 +1,4 @@ -*term.txt* For Vim version 7.2. Last change: 2008 Jun 21 +*term.txt* For Vim version 7.2. Last change: 2009 Nov 05 VIM REFERENCE MANUAL by Bram Moolenaar @@ -410,6 +410,21 @@ VT220, etc.). The result is that codes like are no longer needed. Note: This is only done on startup. If the xterm options are changed after Vim has started, the escape sequences may not be recognized any more. + *xterm-resize* +Window resizing with xterm only works if the allowWindowOps resource is +enabled. On some systems and versions of xterm it's disabled by default +because someone thought it would be a security issue. It's not clear if this +is actually the case. + +To overrule the default, put this line in your ~/.Xdefaults or +~/.Xresources: +> + XTerm*allowWindowOps: true + +And run "xrdb -merge .Xresources" to make it effective. You can check the +value with the context menu (right mouse button while CTRL key is pressed), +there should be a tick at allow-window-ops. + *termcap-colors* Note about colors: The 't_Co' option tells Vim the number of colors available. When it is non-zero, the 't_AB' and 't_AF' options are used to set the color. diff --git a/runtime/doc/tips.txt b/runtime/doc/tips.txt index 4be05025..e5ae40e0 100644 --- a/runtime/doc/tips.txt +++ b/runtime/doc/tips.txt @@ -1,4 +1,4 @@ -*tips.txt* For Vim version 7.2. Last change: 2009 Feb 18 +*tips.txt* For Vim version 7.2. Last change: 2009 Nov 07 VIM REFERENCE MANUAL by Bram Moolenaar @@ -251,6 +251,8 @@ Breaking up restoring the position: zt scroll to move this line to the top of the window `s jump to the original position of the cursor +For something more advanced see |winsaveview()| and |winrestview()|. + ============================================================================== Renaming files *rename-files* diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt index f186c78d..a5106be5 100644 --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -1,4 +1,4 @@ -*todo.txt* For Vim version 7.2. Last change: 2009 Oct 28 +*todo.txt* For Vim version 7.2. Last change: 2009 Dec 16 VIM REFERENCE MANUAL by Bram Moolenaar @@ -30,25 +30,43 @@ be worked on, but only if you sponsor Vim development. See |sponsor|. *known-bugs* -------------------- Known bugs and current work ----------------------- -Crash with redir to unknown array. (Christian Brabandt, 2009 Oct 25) -Analysis by Dominique Pelle. - vim -u NONE -N -c 'redir => temp[0] |echo 1| redir END' +Spanish messages and menus. (Omar Campagne, 2009 Dec 4) -C syntax: Recognize comments in #define (Samuel Thibault, 2009 Sep 16) +iconv() doesn't fail on an illegal character, as documented. (Yongwei Wu, 2009 +Nov 15, example Nov 26) Add argument to specify whether iconv() should fail +or replace with a character and continue? -patch to close file desc on ":shell". (James Vega, 2009 Aug 11, Sep 11) +Update for form syntax. (Michael M Tung, 2009 Dec 4) + +Suggestion for more verbose test output and exit status. (Petr Splichal) +Lech: later version already does this. + +When there is a stray "w" in the .vimrc file, the edited file is overwritten +with an empty file. (Stone Kang). +Detect that the file was not read and either read it first or give an error +message. + +Problem with window jumping to other screen when changing font. (patch by +Michael Wookey, 2009 Oct 16) +Better: if the window offset was negative before changing something, then +don't change it. + +Add local time at start of --startuptime output. +Requires configure check for localtime(). +Use format year-month-day hr:min:sec. + +Shell not recognized properly if it ends in "csh -f". (James Vega, 2009 Nov 3) +Find tail? Might have a / in argument. Find space? Might have space in +path. Crash when assigning s: to variable, pointer becomes invalid later. (Yukihiro Nakadaira, 2009 Oct 12, confirmed by Dominique Pelle) +ml_get error when using SiSU syntax. (Nathan Thomas, 2009 Oct 29) + Coverity: ask someone to create new user: Dominique. look into reported defects: http://scan.coverity.com/rung2.html -Spanish messages and menus. (Omar Campagne, 2009 Oct 1) - -Patch to fix text formatting with small 'tw'. (Yukihiro Nakadaira, 2009 Sep -26, update Sep 29) - Bug with 'incsearch' going to wrong line. (Wolfram Kresse, 2009 Aug 17) Only with "vim -u NONE". @@ -56,8 +74,6 @@ Problem with editing file in binary mode. (Ingo Krabbe, 2009 Oct 8) Support .xz with the xz program, like with lzma. -Patch to set v:key for map() function. (Hari Krishna Dara, 2009 Sep 26) - Perl runtime files update. (Andy Lester, 2009 Aug 25) Gvimext patch to support wide file names. (Szabolcs Horvat 2008 Sep 10) @@ -66,6 +82,10 @@ Problem with stop directory in findfile(). (Adam Simpkins, 2009 Aug 26) Patch to support :browse for more commands. (Lech Lorens, 2009 Jul 18) +Change to C syntax folding to make it work much faster, but a bit less +reliable. (Lech Lorens, 2009 Nov 9) Enable with an option? +Most time is spent in in_id_list(). + New wordlist for Dutch: http://www.opentaal.org/bestanden/1_10/nl_NL-Pack Check for unused functions, idea: @@ -74,6 +94,11 @@ http://blog.flameeyes.eu/2008/01/17/today-how-to-identify-unused-exported-functi In command line window ":close" doesn't work properly. (Tony Mechelynck, 2009 Jun 1) +Why does this give a #705 error: +let X = function('haslocaldir') +let X = function('getcwd') +Inserting "unlet X" helps. + 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. @@ -82,6 +107,9 @@ Reproducable crash in syntax HL. (George Reilly, Dominique Pelle, 2009 May 9) Invalid read error in Farsi mode. (Dominique Pelle, 2009 Aug 2) +Patch to add diff functionality to 2html.vim. (Christian Brabandt, 2009 Dec +15) + For running gvim on an USB stick: avoid the OLE registration. Use a command line argument -noregister. @@ -93,6 +121,10 @@ Caused by "doautoall syntaxset BufEnter *" in syntax/nosyntax.vim ? There also is a BufLeave/BufEnter aucmd to save/restore view. Does the patch to save/restore globaldir work? +":bufdo normal gg" while 'hidden' is set leaves buffers without syntax +highlighting. Don't disable Syntax autocommands then? Or add a flag/modifier +to avoid changing 'eventignore'? + Patch for displaying 0x200c and 0x200d. (Ali Gholami Rudi, 2009 May 6) Probably needs a bit of work. @@ -108,6 +140,8 @@ Patch for completion of ":find" arguments. (Nazri Ramliy, 2009 Feb 22, 26) 8 For ":find" and ":sfind" expand files found in 'path'. Update 2009 Mar 28. +Win32: Expanding 'path' runs into a maximum size limit. (bgold12, 2009 Nov 15) + Setting 'tags' to "tagsdir/*" does not find "tagsdir/tags". (Steven K. Wong, 2009 Jul 18) @@ -288,6 +322,9 @@ do any good. (Patch from Patrick Texier, 2008 Dec 9) When changing 'encoding' convert all the swap file names, so that we can still delete them. Also convert all buffer file names? +"gqip" in Insert mode has an off-by-one error, causing it to reflow text. +(Raul Coronado, 2009 Nov 2) + Update src/testdir/main.aap. "vim -c 'sniff connect'" hangs Vim. (Dominique Pelle, 2008 Dec 7) @@ -423,6 +460,9 @@ an alternate solution, also for src/ex_getln.c. This also fails when the file or directory name contains "%". (Thoml, 2008 July 7) +Win32: The "4913" file is sometimes not deleted. Perhaps another program has +opened it? Use FILE_FLAG_DELETE_ON_CLOSE? (Craig Barkhouse, 2009 Nov 6) + The str2special() function doesn't handle multi-byte characters properly. Patch from Vladimir Vichniakov, 2007 Apr 24. Should clean up the whole function. Also allow modifiers like ? @@ -758,9 +798,6 @@ use a different dialog: "busy saving, really quit? yes / no". Check other interfaces for changing curbuf in a wrong way. Patch like for if_ruby.c. -Problem with cursorcolumn highlighting and folds. (John Mullin, 2008 Jul 18) -Problem with cursorcolumn in wide characters. (Dominique Pelle, 2009 May 5) - ":helpgrep" should use the directory from 'helpfile'. Patch to dynamically load Python on Solaris. (Danek Duvall, 2009 Feb 16) @@ -946,15 +983,6 @@ Wokula, 2007 Aug 25) Problem with using :redir in user command completion function? (Hari Krishna Dara, 2006 June 21) -GTK: When maximizing Vim the result is slightly smaller, the filler border is -not there, and the "maximize" button is still there. Clicking it again does -give a maximized window. (Darren Hiebert) -Problem is that gui_mch_set_text_area_pos() is invoked to change the text area -size, which causes the toplevel window to resize. When doing this while the -size is already right the filler remains there. -Detect using the maximize button (GdkWindowState bit -GDK_WINDOW_STATE_MAXIMIZED) and set it again? - Another resizing problem when setting 'columns' and 'lines' to a very large number. (Tony Mechelynck, 2007 Feb 6) @@ -1002,6 +1030,8 @@ visible. GTK: when setting 'columns' in a startup script and doing ":vertical diffsplit" the window isn't redrawn properly, see two vertical bars. +GTK: file choser is disabled. Patch by Tim Starling, 2009 Nov 13. + The magic clipboard format "VimClipboard2" appears in several places. Should be only one. @@ -1097,8 +1127,13 @@ only want to look at the first few pages. Use zero to disable it. ":vimgrep" does not recognize a recursive symlink. Is it possible to detect this, at least for Unix (using device/inode)? +When switching between windows the cursor is often put in the middle. +Remember the relative position and restore that, just like lnum and col are +restored. (Luc St-Louis) + Vim 7.3: +- Use latest autoconf (3.64) - Use NSIS 2.45, it includes Windows 7 support. - Easier/standard way to disable default plugins. - Add patch for 'relativenumber' option? Markus Heidelberg, 2008 Jun 27. @@ -1106,7 +1141,7 @@ Vim 7.3: Kocher (LGPL), close to original. Mohsin also has some ideas. Take four bytes and turn them into unsigned to avoid byte-order problems. Need to buffer up to 7 bytes to align on 8 byte boundaries. -- ":{range}source": source the lines from the file. +- ":{range}source": source the lines from the current file. You can already yank lines and use :@" to execute them. Most of do_source() would not be used, need a new function. It's easy when not doing breakpoints or profiling. @@ -1143,6 +1178,8 @@ More patches: Schmidt, 2008 Jul 22. - testdir/Make_dos_sh.mak for running tests with MingW. (Bill Mccarthy, 2008 Sep 13) +- Patch for adding "space" item in 'listchars'. (Jérémie Roquet, 2009 Oct 29, + Docs patch Oct 30) Awaiting updated patches: @@ -1167,6 +1204,7 @@ Awaiting updated patches: 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 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 @@ -3933,7 +3971,7 @@ Undo: 8 Search for pattern in undo tree, showing when it happened and the text state, so that you can jump to it. - Persistent undo: store undo in a file. Patch by Jordan Lewis, 2009 Feb - 20. + 20. Repost 2009 Nov 16. Older ideas: Use timestamps, so that a version a certain time ago can be found and info before some time/date can be flushed. 'undopersist' gives maximum time to diff --git a/runtime/doc/usr_11.txt b/runtime/doc/usr_11.txt index 50b84764..1f4e7ca5 100644 --- a/runtime/doc/usr_11.txt +++ b/runtime/doc/usr_11.txt @@ -1,4 +1,4 @@ -*usr_11.txt* For Vim version 7.2. Last change: 2009 Apr 18 +*usr_11.txt* For Vim version 7.2. Last change: 2009 Oct 29 VIM USER MANUAL - by Bram Moolenaar @@ -111,6 +111,8 @@ Example: > vim -r .help.txt.swo This is also handy when the swap file is in another directory than expected. +Vim recognizes files with the pattern *.s[uvw][a-z] as swap files. + If this still does not work, see what file names Vim reports and rename the files accordingly. Check the 'directory' option to see where Vim may have put the swap file. diff --git a/runtime/doc/various.txt b/runtime/doc/various.txt index 18837b64..d2605224 100644 --- a/runtime/doc/various.txt +++ b/runtime/doc/various.txt @@ -1,4 +1,4 @@ -*various.txt* For Vim version 7.2. Last change: 2009 Jul 09 +*various.txt* For Vim version 7.2. Last change: 2009 Nov 11 VIM REFERENCE MANUAL by Bram Moolenaar @@ -374,6 +374,7 @@ N *+scrollbind* |'scrollbind'| B *+signs* |:sign| N *+smartindent* |'smartindent'| m *+sniff* SniFF interface |sniff| +N *+startuptime* |--startuptime| argument N *+statusline* Options 'statusline', 'rulerformat' and special formats of 'titlestring' and 'iconstring' m *+sun_workshop* |workshop| diff --git a/runtime/doc/version7.txt b/runtime/doc/version7.txt index 90cb9143..61fc8528 100644 --- a/runtime/doc/version7.txt +++ b/runtime/doc/version7.txt @@ -1,4 +1,4 @@ -*version7.txt* For Vim version 7.2. Last change: 2008 Dec 17 +*version7.txt* For Vim version 7.2. Last change: 2009 Dec 02 VIM REFERENCE MANUAL by Bram Moolenaar @@ -224,7 +224,7 @@ The 'spelllang' option is used to specify the accepted language(s) The 'spellfile' option specifies where new words are added The 'spellsuggest' option specifies the methods used for making suggestions -The |[s| and |]s| commands can be used to move to the next or previous error +The |]s| and |[s| commands can be used to move to the next or previous error The |zg| and |zw| commands can be used to add good and wrong words The |z=| command can be used to list suggestions and correct the word The |:mkspell| command is used to generate a Vim spell file from word lists diff --git a/runtime/filetype.vim b/runtime/filetype.vim index 21f7d876..2fcb4b8f 100644 --- a/runtime/filetype.vim +++ b/runtime/filetype.vim @@ -1,7 +1,7 @@ " Vim support file to detect file types " " Maintainer: Bram Moolenaar -" Last Change: 2009 Sep 18 +" Last Change: 2009 Dec 02 " Listen very carefully, I will say this only once if exists("did_load_filetypes") diff --git a/runtime/getdos.aap b/runtime/getdos.aap index 8b5aadfb..95261658 100644 --- a/runtime/getdos.aap +++ b/runtime/getdos.aap @@ -22,7 +22,7 @@ all fetch: @if get_md5(file) != "b18587b1029399d31775c00cf129b353": :fetch {fetch = $fetcha} $file file = doc/mbyte.txt - @if get_md5(file) != "b5f91233304ca82cc3dd4c5904ae9b64": + @if get_md5(file) != "7297b699b0c7bcbbe4c49190d8e2185a": :fetch {fetch = $fetcha} $file file = doc/gui_x11.txt @if get_md5(file) != "0670501668632fc19d2007d62a9c5657": @@ -31,7 +31,7 @@ all fetch: @if get_md5(file) != "0d7440dc33cdc54af5747868bfcaf218": :fetch {fetch = $fetcha} $file file = doc/syntax.txt - @if get_md5(file) != "2a8cc248c0ed641536845812fe180b52": + @if get_md5(file) != "15b369ff5dc479ac7c34dcea31d7d113": :fetch {fetch = $fetcha} $file file = doc/os_390.txt @if get_md5(file) != "8cfd5fccda5b1613ab12f0db99708e03": @@ -85,7 +85,7 @@ all fetch: @if get_md5(file) != "a3594c3390cb6e7e321e830ca98c26ce": :fetch {fetch = $fetcha} $file file = doc/term.txt - @if get_md5(file) != "6a005ef11fc761f134fa1c8f63db0d31": + @if get_md5(file) != "a38685e246763791faeeea35ee56aa20": :fetch {fetch = $fetcha} $file file = doc/usr_32.txt @if get_md5(file) != "3d5a39a7d17db4a981829fc266c15f31": @@ -94,7 +94,7 @@ all fetch: @if get_md5(file) != "1b9855a44b9feb444d792c59bd7f7edb": :fetch {fetch = $fetcha} $file file = doc/todo.txt - @if get_md5(file) != "5c17e825e241095b9798e65cd6d65b6a": + @if get_md5(file) != "752cc9ca402a533ce6d2095060cc66f5": :fetch {fetch = $fetcha} $file file = doc/usr_25.txt @if get_md5(file) != "f6b5a9c09cdedc9bce3216322a6cc68b": @@ -106,7 +106,7 @@ all fetch: @if get_md5(file) != "e55e3dc1cd3324059d2ea3de7ececf02": :fetch {fetch = $fetcha} $file file = doc/repeat.txt - @if get_md5(file) != "13f4f84ef1cdae5a3860679eb9a649f5": + @if get_md5(file) != "05bbefb588cbbe0be5f05774a621f860": :fetch {fetch = $fetcha} $file file = doc/ft_ada.txt @if get_md5(file) != "d3c46b60c831f019b768ef024738b9ab": @@ -124,7 +124,7 @@ all fetch: @if get_md5(file) != "8ab94d4664373206a820b8416d61c5af": :fetch {fetch = $fetcha} $file file = doc/ft_sql.txt - @if get_md5(file) != "857fe14b736e397ac978249ff212b567": + @if get_md5(file) != "9e2227ec2448cf08d7aeffaf74e8411d": :fetch {fetch = $fetcha} $file file = doc/os_msdos.txt @if get_md5(file) != "1d099f139a567a697eb15289aa4e9f67": @@ -136,13 +136,13 @@ all fetch: @if get_md5(file) != "22ff4577aa52b2341df58f7879920760": :fetch {fetch = $fetcha} $file file = doc/eval.txt - @if get_md5(file) != "ebf4e5cc49a59610ca5a7b509bcd43c1": + @if get_md5(file) != "a76f1ee19ee2106885f7540158220874": :fetch {fetch = $fetcha} $file file = doc/os_beos.txt @if get_md5(file) != "39cfffc1588db699e71c3826fe455482": :fetch {fetch = $fetcha} $file file = doc/starting.txt - @if get_md5(file) != "09f16ee7635f0d79cfd040170b6643b2": + @if get_md5(file) != "8ed75b32304ecd36ec86d65e26758c2f": :fetch {fetch = $fetcha} $file file = doc/workshop.txt @if get_md5(file) != "6aec1ae9fe97867bb3439a775f4d995b": @@ -166,7 +166,7 @@ all fetch: @if get_md5(file) != "0c97030aea98bd133f888e4470f29689": :fetch {fetch = $fetcha} $file file = doc/usr_11.txt - @if get_md5(file) != "c197854c57bc207123ad9295788aa9c1": + @if get_md5(file) != "1c9e5f4425231f33bc0f9848b687b615": :fetch {fetch = $fetcha} $file file = doc/usr_26.txt @if get_md5(file) != "08328d91eefdbcae5284aeb2157ea162": @@ -187,7 +187,7 @@ all fetch: @if get_md5(file) != "3dfdfc7035d15960c8886bb4ddacdc3c": :fetch {fetch = $fetcha} $file file = doc/version7.txt - @if get_md5(file) != "c9258dc4de493af8d69af208e7fcf79c": + @if get_md5(file) != "ab88ee8f329ed29ff08f491861771276": :fetch {fetch = $fetcha} $file file = doc/version4.txt @if get_md5(file) != "5725b2997ead18ed222557a2be69e177": @@ -211,7 +211,7 @@ all fetch: @if get_md5(file) != "0f17b95ecbde09b2074a4e20ee16bc5a": :fetch {fetch = $fetcha} $file file = doc/tips.txt - @if get_md5(file) != "6001fa5b858d54b5d3dab75f7bdc552f": + @if get_md5(file) != "759a575d2090a02de9ebb5c0e187f94a": :fetch {fetch = $fetcha} $file file = doc/usr_03.txt @if get_md5(file) != "54bfa1745e9d952b811a0f72300f1b62": @@ -244,7 +244,7 @@ all fetch: @if get_md5(file) != "ab7dd7df76ad98780a229c0593fdc7a6": :fetch {fetch = $fetcha} $file file = doc/map.txt - @if get_md5(file) != "9d16f288e795f957df488192f460efce": + @if get_md5(file) != "b5672e9dc141a87ed5f5893c9846a8f7": :fetch {fetch = $fetcha} $file file = doc/undo.txt @if get_md5(file) != "07d6837432d62559984f1d09fe6c42ae": @@ -262,7 +262,7 @@ all fetch: @if get_md5(file) != "02dd25cb7a9be1e597e30977a007f8ce": :fetch {fetch = $fetcha} $file file = doc/options.txt - @if get_md5(file) != "3eed23dad26093d15efc5edab5ad44aa": + @if get_md5(file) != "1c74e7d2e50ecc786b415e6dbee85930": :fetch {fetch = $fetcha} $file file = doc/recover.txt @if get_md5(file) != "5fa27261a8a8696d844407d9d0de6654": @@ -289,7 +289,7 @@ all fetch: @if get_md5(file) != "d015f6601e9b1609a44009e8c2c4baf2": :fetch {fetch = $fetcha} $file file = doc/indent.txt - @if get_md5(file) != "349f04ce95a55843214bc1187902bea6": + @if get_md5(file) != "ed966e227217bd866b93784512d92909": :fetch {fetch = $fetcha} $file file = doc/usr_02.txt @if get_md5(file) != "51426cf0f046d4bc5b0608f6a6ea5b2c": @@ -340,7 +340,7 @@ all fetch: @if get_md5(file) != "07911732a0532886482931612da9032a": :fetch {fetch = $fetcha} $file file = doc/change.txt - @if get_md5(file) != "859501c2bb5a700ed6a652668873cce4": + @if get_md5(file) != "a4fdb20f42148da285c91e39feebbca9": :fetch {fetch = $fetcha} $file file = doc/if_ruby.txt @if get_md5(file) != "3198623b95bd83e5c6e3dde4ab18a66b": @@ -358,7 +358,7 @@ all fetch: @if get_md5(file) != "32d4044efe0ce4250b5bc50e646d0b92": :fetch {fetch = $fetcha} $file file = doc/various.txt - @if get_md5(file) != "7e9a009ac463196eadb702c49395aa84": + @if get_md5(file) != "8b2aa3d3baa7c32c9a57802c99265fd6": :fetch {fetch = $fetcha} $file file = doc/uganda.txt @if get_md5(file) != "b639f685802cc8fc4091711f752bba72": @@ -367,7 +367,7 @@ all fetch: @if get_md5(file) != "47b5561b58e6de0115ecea6228043cad": :fetch {fetch = $fetcha} $file file = doc/autocmd.txt - @if get_md5(file) != "90f1f32299a34ec9e022f3f5477d624c": + @if get_md5(file) != "cb72ebbcbc2f927a3c2e01735bc300e4": :fetch {fetch = $fetcha} $file file = doc/usr_06.txt @if get_md5(file) != "97cb71dcbf90ff2c93913bee31c5c4a5": @@ -617,7 +617,7 @@ all fetch: @if get_md5(file) != "3d9818c34e8ee72d660e45b5f2281fe4": :fetch {fetch = $fetcha} $file file = filetype.vim - @if get_md5(file) != "a59d1ad1a994fc027edc441d888d01a8": + @if get_md5(file) != "719126553bda5f12e929b68f5d2507aa": :fetch {fetch = $fetcha} $file file = scripts.vim @if get_md5(file) != "54ba1f512abd126a062d54cf0b70b392": @@ -1144,7 +1144,7 @@ all fetch: @if get_md5(file) != "1971d1e2bb7fd8ba27d8d4d35daf9782": :fetch {fetch = $fetcha} $file file = indent/sh.vim - @if get_md5(file) != "2e536ae73738fcab171c08d73c16f6ff": + @if get_md5(file) != "5930ac7711d64c2f3efff55c8542851b": :fetch {fetch = $fetcha} $file file = indent/html.vim @if get_md5(file) != "2e0da1e50c79736efa91d644d03f8c5b": @@ -2080,7 +2080,7 @@ all fetch: @if get_md5(file) != "de6ba21ef2170df683f344b2d3fc6bc2": :fetch {fetch = $fetcha} $file file = syntax/groovy.vim - @if get_md5(file) != "a7f402677e42a88e39547f7173a95f5f": + @if get_md5(file) != "d7a15065404549e94cee1613d76dcb1f": :fetch {fetch = $fetcha} $file file = syntax/hostconf.vim @if get_md5(file) != "843db1fc18412872f3dfb0bf5101e01c": @@ -2125,7 +2125,7 @@ all fetch: @if get_md5(file) != "bcfe0b991b4f3169b0b6f3e3721e6bd8": :fetch {fetch = $fetcha} $file file = syntax/spyce.vim - @if get_md5(file) != "30fb6d94d46966ccb6a1dcae6308ea68": + @if get_md5(file) != "55ffe0ba7df68b9725c01baba87537a1": :fetch {fetch = $fetcha} $file file = syntax/icon.vim @if get_md5(file) != "4c87f3f23f2b421333ded6bf55793936": @@ -2137,7 +2137,7 @@ all fetch: @if get_md5(file) != "97a7a167033caaf7a7db021967f2bfd2": :fetch {fetch = $fetcha} $file file = syntax/maxima.vim - @if get_md5(file) != "ec7d20c9c9f5a3e61355e867807f366c": + @if get_md5(file) != "f73531f89d655b07b407406b5f415781": :fetch {fetch = $fetcha} $file file = syntax/lynx.vim @if get_md5(file) != "810ce0af8b49fea2ef34c9645c9391db": @@ -2242,7 +2242,7 @@ all fetch: @if get_md5(file) != "e67f65ae954eb6f105a032a60f68a7f0": :fetch {fetch = $fetcha} $file file = syntax/uil.vim - @if get_md5(file) != "fdc07b254b69e84a666073236d3ea1b7": + @if get_md5(file) != "47c9554a8f53a7de826dde2e2fe5830c": :fetch {fetch = $fetcha} $file file = syntax/wget.vim @if get_md5(file) != "304eb376e3f184955efae0076acbbd14": @@ -2500,7 +2500,7 @@ all fetch: @if get_md5(file) != "1eb965924108db94fe8d97bece4609be": :fetch {fetch = $fetcha} $file file = syntax/prolog.vim - @if get_md5(file) != "83025b93608cb479c81b494b29004d51": + @if get_md5(file) != "662b1ae209302d52ca10519497ea9d55": :fetch {fetch = $fetcha} $file file = syntax/takcmp.vim @if get_md5(file) != "8a125be12a9335ab23dfb0a29eae96a2": @@ -2659,7 +2659,7 @@ all fetch: @if get_md5(file) != "f7f47455894536369dce01cddb974a9d": :fetch {fetch = $fetcha} $file file = syntax/c.vim - @if get_md5(file) != "fd817a17d30d05ce7d2cc966cfc95c2f": + @if get_md5(file) != "330734a6e9f4d72896e24ba21f91d2a0": :fetch {fetch = $fetcha} $file file = syntax/automake.vim @if get_md5(file) != "226bef21fc2717c05bc5738b227d6678": @@ -2740,7 +2740,7 @@ all fetch: @if get_md5(file) != "41822d5dd4ebb3e50906868eef6af4e1": :fetch {fetch = $fetcha} $file file = syntax/form.vim - @if get_md5(file) != "feb7f3e4fc8ad485e6f036a785421820": + @if get_md5(file) != "c5cfccc1f282bf0d2fde4a89b6a63217": :fetch {fetch = $fetcha} $file file = syntax/lotos.vim @if get_md5(file) != "c0cfefb794bf9846d12166e2359a8e16": @@ -2833,7 +2833,7 @@ all fetch: @if get_md5(file) != "27deb97e68df1a2ff1d621e93e72876d": :fetch {fetch = $fetcha} $file file = syntax/pyrex.vim - @if get_md5(file) != "c07de9f9e3a9846190b1e9df3ac9a96b": + @if get_md5(file) != "bbf547d91e69b654b2b3f77cb15aa48f": :fetch {fetch = $fetcha} $file file = syntax/arch.vim @if get_md5(file) != "ac111fa673d6e3fff165fb9da3280962": @@ -2863,7 +2863,7 @@ all fetch: @if get_md5(file) != "35494dc095bd155b97bebdfa0eb45a7c": :fetch {fetch = $fetcha} $file file = syntax/tcsh.vim - @if get_md5(file) != "5c9a22f19408ed71261b3aa6afd292ca": + @if get_md5(file) != "ecaf56dfde03da4d017358f532bfb899": :fetch {fetch = $fetcha} $file file = syntax/dtrace.vim @if get_md5(file) != "a67a87985bd29ca75ef4382e67fe94a1": @@ -3109,7 +3109,7 @@ all fetch: @if get_md5(file) != "33f883056b2b193f9367cf33493ad4a3": :fetch {fetch = $fetcha} $file file = syntax/spec.vim - @if get_md5(file) != "dd5bd250b294bafe170c8a916696c26e": + @if get_md5(file) != "b7f3ed8325cafbbaedb6f027d1b7ac3b": :fetch {fetch = $fetcha} $file file = syntax/htmlm4.vim @if get_md5(file) != "f54358afe00854e71496e34e837ff7ae": @@ -3277,10 +3277,10 @@ all fetch: @if get_md5(file) != "6072be6767ff62b2b8fda8be3f7bffd8": :fetch {fetch = $fetcha} $file file = syntax/papp.vim - @if get_md5(file) != "36122463c58d5c612bbc2e0ad441fb76": + @if get_md5(file) != "64611fd57f270a9ed344fc0376f7515d": :fetch {fetch = $fetcha} $file file = syntax/scheme.vim - @if get_md5(file) != "df81814732f0d3859c97bcbcc37d85f3": + @if get_md5(file) != "803773274ef1cf48fd069c1254f0f6e4": :fetch {fetch = $fetcha} $file file = syntax/sensors.vim @if get_md5(file) != "028c432afcc7d036138a135e40378d88": @@ -3310,7 +3310,7 @@ all fetch: @if get_md5(file) != "7abecc96fd03a4091c37798187c0d3d5": :fetch {fetch = $fetcha} $file file = syntax/erlang.vim - @if get_md5(file) != "74f4f0f784b882b484e7f530e0b8c70f": + @if get_md5(file) != "e558091305a3fb005da4cac4ea63fe76": :fetch {fetch = $fetcha} $file file = syntax/lprolog.vim @if get_md5(file) != "0b7106e6a1980ac5928443213cc2dd5a": @@ -4047,7 +4047,7 @@ all fetch: @if get_md5(file) != "c8ab63ed24fc3ba2d2270414f6eec262": :fetch {fetch = $fetcha} $file file = tutor/Makefile - @if get_md5(file) != "562f57989cabf03a2a789e6283531da6": + @if get_md5(file) != "bebf34aaf86172b35dedc48cb2000914": :fetch {fetch = $fetcha} $file file = tutor/tutor.utf-8 @if get_md5(file) != "89dc613b87da92e94ff615f505b73d4b": @@ -4058,6 +4058,9 @@ all fetch: file = tutor/tutor.de @if get_md5(file) != "2d94dee7313b58f28c9ae08822e4e368": :fetch {fetch = $fetcha} $file + file = tutor/tutor.bj + @if get_md5(file) != "c11df64308a81b17cf5fd74631cbf5fa": + :fetch {fetch = $fetcha} $file file = tutor/tutor.ca @if get_md5(file) != "e7d040069588b16d430f0abb273d110f": :fetch {fetch = $fetcha} $file @@ -4070,6 +4073,9 @@ all fetch: file = tutor/tutor.hu @if get_md5(file) != "4be5529c7d7beb7dd1fc44c5d3cb743f": :fetch {fetch = $fetcha} $file + file = tutor/tutor.nb + @if get_md5(file) != "b3240446b0a4fb6f92a8b4c296f0e7e9": + :fetch {fetch = $fetcha} $file file = tutor/tutor.cs @if get_md5(file) != "185b043ca11714f442ba1adc9ac013c0": :fetch {fetch = $fetcha} $file @@ -4130,6 +4136,9 @@ all fetch: file = tutor/tutor.vi.utf-8 @if get_md5(file) != "d4f954bbb82ffae7e35f7a810355301b": :fetch {fetch = $fetcha} $file + file = tutor/tutor.nb.utf-8 + @if get_md5(file) != "34352cec1cf5e5b1d0cb7a68e817012c": + :fetch {fetch = $fetcha} $file file = tutor/tutor.hr.cp1250 @if get_md5(file) != "fae340923f76c66546406f45facc187d": :fetch {fetch = $fetcha} $file @@ -4163,6 +4172,9 @@ all fetch: file = tutor/tutor.zh.utf-8 @if get_md5(file) != "ae9ffc35ce6b95ce3945741c389e62c5": :fetch {fetch = $fetcha} $file + file = tutor/tutor.bj.utf-8 + @if get_md5(file) != "463ed8b3dcb6c77b189c0dd1c831682f": + :fetch {fetch = $fetcha} $file file = tutor/tutor.fr.utf-8 @if get_md5(file) != "b9eecadc4861cbf6d9ff5bade2f4326a": :fetch {fetch = $fetcha} $file @@ -4237,7 +4249,7 @@ all fetch: @if get_md5(file) != "af0da03b5c998a8f8ed94a66763febd9": :fetch {fetch = $fetcha} $file file = doc/tags - @if get_md5(file) != "7478bb70b071c707b031a939a15f05be": + @if get_md5(file) != "14f5993ce477a57a34c563cab2613b32": :fetch {fetch = $fetcha} $file :mkdir {f} print file = print/jis_roman.ps diff --git a/runtime/getunix.aap b/runtime/getunix.aap index 599932c7..d3aaed4c 100644 --- a/runtime/getunix.aap +++ b/runtime/getunix.aap @@ -22,7 +22,7 @@ all fetch: @if get_md5(file) != "ce173247ba4774edb284ac5803e639ea": :fetch {fetch = $fetcha} $file file = doc/mbyte.txt - @if get_md5(file) != "e854abfbeb85a6264ecbbfacb50c4aa7": + @if get_md5(file) != "81a1c09e311e38f21de27397dcaea4e5": :fetch {fetch = $fetcha} $file file = doc/gui_x11.txt @if get_md5(file) != "f394d9f818426d102de0e2ed68e5f447": @@ -31,7 +31,7 @@ all fetch: @if get_md5(file) != "3e1d23b59cd066a759b58c514c06eed8": :fetch {fetch = $fetcha} $file file = doc/syntax.txt - @if get_md5(file) != "4c16d7aca02ed952b70d95e59046c393": + @if get_md5(file) != "0b99c9752be4f92ced44bef504d3c554": :fetch {fetch = $fetcha} $file file = doc/os_390.txt @if get_md5(file) != "50b1842731db424686ebf8609d17dd5a": @@ -85,7 +85,7 @@ all fetch: @if get_md5(file) != "b36ec066a2c76c46e0e8471f07a3d504": :fetch {fetch = $fetcha} $file file = doc/term.txt - @if get_md5(file) != "ed17b428ab0d1b345403d47b96473c69": + @if get_md5(file) != "07c75604f63293722324e75dc407f1e9": :fetch {fetch = $fetcha} $file file = doc/usr_32.txt @if get_md5(file) != "e9623f95ebd2fb37901534a71c124b9f": @@ -94,7 +94,7 @@ all fetch: @if get_md5(file) != "701bb75ecd83ea0588c89d4efc62b0ec": :fetch {fetch = $fetcha} $file file = doc/todo.txt - @if get_md5(file) != "ee9b56a7362256daed1cbaca45eb043c": + @if get_md5(file) != "18b66f80b7490af5c48e9bc3274152c4": :fetch {fetch = $fetcha} $file file = doc/usr_25.txt @if get_md5(file) != "525e8f47371e991590d1afcc5b1a1490": @@ -106,7 +106,7 @@ all fetch: @if get_md5(file) != "a284345d5e4d8c045a3ec8e72c6b11e5": :fetch {fetch = $fetcha} $file file = doc/repeat.txt - @if get_md5(file) != "a51edf45e52988aff61cb02da1162f00": + @if get_md5(file) != "54f93f2caed49f353783550789375c6b": :fetch {fetch = $fetcha} $file file = doc/ft_ada.txt @if get_md5(file) != "248a7f496274ff411301e843f0c991d7": @@ -124,7 +124,7 @@ all fetch: @if get_md5(file) != "db38a7ba0e74b07aed4e264e80934811": :fetch {fetch = $fetcha} $file file = doc/ft_sql.txt - @if get_md5(file) != "277749258ce1c3120286b1cc421ceff2": + @if get_md5(file) != "1b653684ddc9148f5d5ca5751c89530c": :fetch {fetch = $fetcha} $file file = doc/os_msdos.txt @if get_md5(file) != "e392d0e269e0dc24de41900ccc206549": @@ -136,13 +136,13 @@ all fetch: @if get_md5(file) != "c564aa21efc9a54eee203f47daab956f": :fetch {fetch = $fetcha} $file file = doc/eval.txt - @if get_md5(file) != "1a65b533eeacf35530882d1f86c66001": + @if get_md5(file) != "b0787a72350372172bbef7b44e60ace2": :fetch {fetch = $fetcha} $file file = doc/os_beos.txt @if get_md5(file) != "21cbefe42c374a13c1eb541c4254d2a6": :fetch {fetch = $fetcha} $file file = doc/starting.txt - @if get_md5(file) != "f2165ba0c99bd26a8f94651ba2c1ca97": + @if get_md5(file) != "6eaf79544cd931943f5442636499e3cc": :fetch {fetch = $fetcha} $file file = doc/workshop.txt @if get_md5(file) != "219e66a64511610faebdc8db4c6fe960": @@ -166,7 +166,7 @@ all fetch: @if get_md5(file) != "dfb008b57a5c8e5f5fa44f0891a0fdd0": :fetch {fetch = $fetcha} $file file = doc/usr_11.txt - @if get_md5(file) != "2f9941084dbe5335978f48fd723e7df5": + @if get_md5(file) != "4aecccbedaeb57a163f5730b8dc6f316": :fetch {fetch = $fetcha} $file file = doc/usr_26.txt @if get_md5(file) != "a0967f20f6fc2014db6308607088984e": @@ -187,7 +187,7 @@ all fetch: @if get_md5(file) != "8f79a69d9e72dca3e99269742dd26997": :fetch {fetch = $fetcha} $file file = doc/version7.txt - @if get_md5(file) != "a476912ff2a538b09fafbfccb00ca24e": + @if get_md5(file) != "8ea63aac16f31b3cd4a2c094dc1b5b1f": :fetch {fetch = $fetcha} $file file = doc/version4.txt @if get_md5(file) != "f7da421c97b440880df51e6a6234c033": @@ -211,7 +211,7 @@ all fetch: @if get_md5(file) != "34c9e0c0764832be40a1d6ad550ba779": :fetch {fetch = $fetcha} $file file = doc/tips.txt - @if get_md5(file) != "c21327e50b0f099c7b7e0e07a56fe1b0": + @if get_md5(file) != "ac8b5590a3bbf6c03e6b088d3195fde3": :fetch {fetch = $fetcha} $file file = doc/usr_03.txt @if get_md5(file) != "9b32ceafa7c9b2d74e094be37674b48b": @@ -244,7 +244,7 @@ all fetch: @if get_md5(file) != "bc3311db38a91bd92073d77ed9d1265e": :fetch {fetch = $fetcha} $file file = doc/map.txt - @if get_md5(file) != "2cde04cd76c499678f8aea275d614a61": + @if get_md5(file) != "36b59de5d265c010c202f2cec7319166": :fetch {fetch = $fetcha} $file file = doc/undo.txt @if get_md5(file) != "3be4a2a94bf58ac11c479aa4b1f0dd4b": @@ -262,7 +262,7 @@ all fetch: @if get_md5(file) != "fcae6fb97538151b2d4c4346cecfc08d": :fetch {fetch = $fetcha} $file file = doc/options.txt - @if get_md5(file) != "96a51de73c1c10036b19c3c555fc50f2": + @if get_md5(file) != "dd77f93d230b2c83fb5a6a93ca8bcf19": :fetch {fetch = $fetcha} $file file = doc/recover.txt @if get_md5(file) != "fcb01435557cdc480587cf32fe919ffb": @@ -289,7 +289,7 @@ all fetch: @if get_md5(file) != "f844909d2b55490c32e129dc2ff0b82e": :fetch {fetch = $fetcha} $file file = doc/indent.txt - @if get_md5(file) != "6b6b8232c2e3897ca3c86b40ae9ea7f8": + @if get_md5(file) != "9c1ab8666f93d1403b300068f31c05d3": :fetch {fetch = $fetcha} $file file = doc/usr_02.txt @if get_md5(file) != "c1bdb3cdc7f346db39a1eda632508861": @@ -340,7 +340,7 @@ all fetch: @if get_md5(file) != "36c439f2a6d25f87928b599eebafc852": :fetch {fetch = $fetcha} $file file = doc/change.txt - @if get_md5(file) != "c8a1b1e5f1731636cd7f87f8870d5394": + @if get_md5(file) != "3dc3e3ee91f46e56f71d1fa7f23e7d0e": :fetch {fetch = $fetcha} $file file = doc/if_ruby.txt @if get_md5(file) != "7650ab7e0aaf2f1804d15492f06aa641": @@ -358,7 +358,7 @@ all fetch: @if get_md5(file) != "f6dacdc4fa7cbefef168510fd6e59795": :fetch {fetch = $fetcha} $file file = doc/various.txt - @if get_md5(file) != "0e5a7dd1290787b8fb16b2fe6d05520c": + @if get_md5(file) != "5565c3ca74312a8780248dd8fa571dac": :fetch {fetch = $fetcha} $file file = doc/uganda.txt @if get_md5(file) != "cd49910a3dde6fe0a7e24ebe8cbf7066": @@ -367,7 +367,7 @@ all fetch: @if get_md5(file) != "edf35da5c8b17fdc90539b219e8359be": :fetch {fetch = $fetcha} $file file = doc/autocmd.txt - @if get_md5(file) != "799d2209badfbe1267447490a6fdfc62": + @if get_md5(file) != "3cb8551c84773d04d45e341af12b58b6": :fetch {fetch = $fetcha} $file file = doc/usr_06.txt @if get_md5(file) != "2d3be0b344db5d3014b1f562156d126f": @@ -617,7 +617,7 @@ all fetch: @if get_md5(file) != "dd9ffce89e3e18837f30792b74e44ffb": :fetch {fetch = $fetcha} $file file = filetype.vim - @if get_md5(file) != "e24d22a6566caed0f798a2247286945f": + @if get_md5(file) != "021303bbf15bc2c8077727661cf97f91": :fetch {fetch = $fetcha} $file file = scripts.vim @if get_md5(file) != "87cda0e807a2b92e42cde1769e829c00": @@ -1144,7 +1144,7 @@ all fetch: @if get_md5(file) != "1057c3812cd98eaeed5c03da2b9650b4": :fetch {fetch = $fetcha} $file file = indent/sh.vim - @if get_md5(file) != "0dd8ea3af2a5804c84e6873c497052dc": + @if get_md5(file) != "43b8d1871805989e5e4df5a1618d7324": :fetch {fetch = $fetcha} $file file = indent/html.vim @if get_md5(file) != "0298938797abe6d71d3007a42d1c9afb": @@ -2080,7 +2080,7 @@ all fetch: @if get_md5(file) != "45b2dffd5f12f7a2e8bf5c1b37971fa5": :fetch {fetch = $fetcha} $file file = syntax/groovy.vim - @if get_md5(file) != "16a19bbd0fd80c4f817cb9e041cdee55": + @if get_md5(file) != "60da3ad3932a4fb184ecd0253c76b45c": :fetch {fetch = $fetcha} $file file = syntax/hostconf.vim @if get_md5(file) != "7f41f93332259cf1d95f74a37b1818fa": @@ -2125,7 +2125,7 @@ all fetch: @if get_md5(file) != "a61996611d5b89ec4fab0f640dd70e8e": :fetch {fetch = $fetcha} $file file = syntax/spyce.vim - @if get_md5(file) != "95ae2e0fb4ae5dc70da99ea8603ba23a": + @if get_md5(file) != "bb9b6422f5c70f4a3f44346ce7013db0": :fetch {fetch = $fetcha} $file file = syntax/icon.vim @if get_md5(file) != "587b816037f336f31de4a9c0af722bc9": @@ -2137,7 +2137,7 @@ all fetch: @if get_md5(file) != "927ec6962519627df9296be76d19f426": :fetch {fetch = $fetcha} $file file = syntax/maxima.vim - @if get_md5(file) != "36f61768c9b588f782f5f1f7e193e1e8": + @if get_md5(file) != "0b0a58d6704469429e3e627e6894aa61": :fetch {fetch = $fetcha} $file file = syntax/lynx.vim @if get_md5(file) != "31a01995474c0bc7b3d6d89cf31fc38e": @@ -2242,7 +2242,7 @@ all fetch: @if get_md5(file) != "87c38d86efe6fc66b9f9030348310a77": :fetch {fetch = $fetcha} $file file = syntax/uil.vim - @if get_md5(file) != "7e791985f17c4a1f0be66c903834057e": + @if get_md5(file) != "16c6ac909a485e728996f5e129024eb3": :fetch {fetch = $fetcha} $file file = syntax/wget.vim @if get_md5(file) != "688ebed10720c1218f37dd029747a19c": @@ -2500,7 +2500,7 @@ all fetch: @if get_md5(file) != "8fb1103998576aee2c54ad8d0bb5b08d": :fetch {fetch = $fetcha} $file file = syntax/prolog.vim - @if get_md5(file) != "7730421dda2be26bd5f692d2e43d9bfe": + @if get_md5(file) != "333e05c044af7170979a9f7d90537341": :fetch {fetch = $fetcha} $file file = syntax/takcmp.vim @if get_md5(file) != "e1f647e5568ec422075ba49c972ff6db": @@ -2659,7 +2659,7 @@ all fetch: @if get_md5(file) != "d485c8a329666d19b1d471ec85adf100": :fetch {fetch = $fetcha} $file file = syntax/c.vim - @if get_md5(file) != "7fe40bfec3dbb65d4d1f078c396fffd8": + @if get_md5(file) != "34c110c2718eef6fbd57cdbad64d97eb": :fetch {fetch = $fetcha} $file file = syntax/automake.vim @if get_md5(file) != "2f83ef62bc3dd5f3e364ae2749b42d3a": @@ -2740,7 +2740,7 @@ all fetch: @if get_md5(file) != "834f11b88bfee189abc67a4e7c5a51a0": :fetch {fetch = $fetcha} $file file = syntax/form.vim - @if get_md5(file) != "546041788d1f041ec585cbb5480f881a": + @if get_md5(file) != "91f63cae77d82aa16f5cf79cc767c598": :fetch {fetch = $fetcha} $file file = syntax/lotos.vim @if get_md5(file) != "c9f697f6c57b337d70510ae8d7b66920": @@ -2833,7 +2833,7 @@ all fetch: @if get_md5(file) != "0abc7b0a3db895159a89361fbcc8e101": :fetch {fetch = $fetcha} $file file = syntax/pyrex.vim - @if get_md5(file) != "8114f3419c69cca999c628e8cece9376": + @if get_md5(file) != "eda42734053c459bc21ec62d09f7b473": :fetch {fetch = $fetcha} $file file = syntax/arch.vim @if get_md5(file) != "54c591d0da2a51974ed0b8788e609ccb": @@ -2863,7 +2863,7 @@ all fetch: @if get_md5(file) != "22748970139f2f252afa406ca88a40fb": :fetch {fetch = $fetcha} $file file = syntax/tcsh.vim - @if get_md5(file) != "c5102a15d58d6ab45ee5fa93acf5e4bd": + @if get_md5(file) != "ed6193a8da6b5dfcb133ac079dd6082d": :fetch {fetch = $fetcha} $file file = syntax/dtrace.vim @if get_md5(file) != "0f36a33a3c0bd84363f3576727aa1e03": @@ -3109,7 +3109,7 @@ all fetch: @if get_md5(file) != "ced07df283f9c4be6c28710bb0507e37": :fetch {fetch = $fetcha} $file file = syntax/spec.vim - @if get_md5(file) != "0a9593354d68f3f37ef6122b082fa8b0": + @if get_md5(file) != "34ae8ba674692a123323a268a56e25f7": :fetch {fetch = $fetcha} $file file = syntax/htmlm4.vim @if get_md5(file) != "50b9cdfbb3923c2c22bd645ad45c9467": @@ -3277,10 +3277,10 @@ all fetch: @if get_md5(file) != "daaddfa98940d4abcef726e8ecff42d1": :fetch {fetch = $fetcha} $file file = syntax/papp.vim - @if get_md5(file) != "89352ee4cca50fba8e41a8c8cd0a5658": + @if get_md5(file) != "1a082103f218f7e1990d5683538a30cf": :fetch {fetch = $fetcha} $file file = syntax/scheme.vim - @if get_md5(file) != "382618c6993946a319f0de890d15bc04": + @if get_md5(file) != "8d50e0095a420e8e8840f4d1a65c9df6": :fetch {fetch = $fetcha} $file file = syntax/sensors.vim @if get_md5(file) != "5f49c1f3aac93221d43c7457b358e91c": @@ -3310,7 +3310,7 @@ all fetch: @if get_md5(file) != "1d8f3644a3bc1f130c43895c5f5e28bc": :fetch {fetch = $fetcha} $file file = syntax/erlang.vim - @if get_md5(file) != "fc3d5a8396db95884cc6b7580cba2dff": + @if get_md5(file) != "ed8dd0833c14b8becbf5d0836753a3fb": :fetch {fetch = $fetcha} $file file = syntax/lprolog.vim @if get_md5(file) != "4d4a3816178066451167360799475daf": @@ -4047,7 +4047,7 @@ all fetch: @if get_md5(file) != "5320db3545b0ef8917b954815b729751": :fetch {fetch = $fetcha} $file file = tutor/Makefile - @if get_md5(file) != "c94f3652aa2fff49379d315ae495ca18": + @if get_md5(file) != "40fd63a6f6ed97f89d0bfa89101e76e9": :fetch {fetch = $fetcha} $file file = tutor/tutor.utf-8 @if get_md5(file) != "ef2c744f92a7fb2d232dfcd5c9dd21e0": @@ -4058,6 +4058,9 @@ all fetch: file = tutor/tutor.de @if get_md5(file) != "b7077a2eed6f98571977b89c6e48c083": :fetch {fetch = $fetcha} $file + file = tutor/tutor.bj + @if get_md5(file) != "3125ed03eaf92532105d9a83e48f6e81": + :fetch {fetch = $fetcha} $file file = tutor/tutor.ca @if get_md5(file) != "e01f12117ac53cb73e716f2e9b32ffd6": :fetch {fetch = $fetcha} $file @@ -4070,6 +4073,9 @@ all fetch: file = tutor/tutor.hu @if get_md5(file) != "c5fbfc1459bc5487e908bbb575174bf4": :fetch {fetch = $fetcha} $file + file = tutor/tutor.nb + @if get_md5(file) != "8196492c7c0620172db23d2e99ac4e89": + :fetch {fetch = $fetcha} $file file = tutor/tutor.cs @if get_md5(file) != "706b35f5b4d93af836012361888c4a66": :fetch {fetch = $fetcha} $file @@ -4130,6 +4136,9 @@ all fetch: file = tutor/tutor.vi.utf-8 @if get_md5(file) != "0cdcfa5e9b1901648f09079766cb0a07": :fetch {fetch = $fetcha} $file + file = tutor/tutor.nb.utf-8 + @if get_md5(file) != "2d7410dcaac4bd48d47ca385e65944ec": + :fetch {fetch = $fetcha} $file file = tutor/tutor.hr.cp1250 @if get_md5(file) != "7b74b73fddb1010ef696ba3d93b6f1fd": :fetch {fetch = $fetcha} $file @@ -4163,6 +4172,9 @@ all fetch: file = tutor/tutor.zh.utf-8 @if get_md5(file) != "ff96ffc0b5e318437a867e33f5f34bc7": :fetch {fetch = $fetcha} $file + file = tutor/tutor.bj.utf-8 + @if get_md5(file) != "6a617b9c95f0a96aadb33786e023b58e": + :fetch {fetch = $fetcha} $file file = tutor/tutor.fr.utf-8 @if get_md5(file) != "caf5766cd91512191f851831c8fee625": :fetch {fetch = $fetcha} $file @@ -4612,7 +4624,7 @@ all fetch: @if get_md5(file) != "af0da03b5c998a8f8ed94a66763febd9": :fetch {fetch = $fetcha} $file file = doc/tags - @if get_md5(file) != "7478bb70b071c707b031a939a15f05be": + @if get_md5(file) != "14f5993ce477a57a34c563cab2613b32": :fetch {fetch = $fetcha} $file :mkdir {f} print file = print/jis_roman.ps diff --git a/runtime/indent/sh.vim b/runtime/indent/sh.vim index 483e5430..9bc59eef 100644 --- a/runtime/indent/sh.vim +++ b/runtime/indent/sh.vim @@ -1,7 +1,7 @@ " Vim indent file -" Language: Shell Script +" Language: Shell Script " Maintainer: Nikolai Weibull -" Latest Revision: 2006-04-19 +" Latest Revision: 2009-11-12 if exists("b:did_indent") finish @@ -9,8 +9,10 @@ endif let b:did_indent = 1 setlocal indentexpr=GetShIndent() -setlocal indentkeys+==then,=do,=else,=elif,=esac,=fi,=fin,=fil,=done +setlocal indentkeys+=0=then,0=do,0=else,0=elif,0=fi,0=esac,0=done,),0=;;,0=;& +setlocal indentkeys+=0=fin,0=fil,0=fip,0=fir,0=fix setlocal indentkeys-=:,0# +setlocal nosmartindent if exists("*GetShIndent") finish @@ -19,34 +21,132 @@ endif let s:cpo_save = &cpo set cpo&vim -function GetShIndent() +function s:buffer_shiftwidth() + return &shiftwidth +endfunction + +let s:sh_indent_defaults = { + \ 'default': function('s:buffer_shiftwidth'), + \ 'continuation-line': function('s:buffer_shiftwidth'), + \ 'case-labels': function('s:buffer_shiftwidth'), + \ 'case-statements': function('s:buffer_shiftwidth'), + \ 'case-breaks': 0 } + +function! s:indent_value(option) + let Value = exists('b:sh_indent_options') + \ && has_key(b:sh_indent_options, a:option) ? + \ b:sh_indent_options[a:option] : + \ s:sh_indent_defaults[a:option] + if type(Value) == type(function('type')) + return Value() + endif + return Value +endfunction + +function! GetShIndent() let lnum = prevnonblank(v:lnum - 1) if lnum == 0 return 0 endif - " Add a 'shiftwidth' after if, while, else, case, until, for, function() - " Skip if the line also contains the closure for the above + let pnum = prevnonblank(lnum - 1) + let ind = indent(lnum) let line = getline(lnum) - if line =~ '^\s*\(if\|then\|do\|else\|elif\|case\|while\|until\|for\)\>' - \ || line =~ '^\s*\<\k\+\>\s*()\s*{' - \ || line =~ '^\s*{' - if line !~ '\(esac\|fi\|done\)\>\s*$' && line !~ '}\s*$' - let ind = ind + &sw + if line =~ '^\s*\%(if\|then\|do\|else\|elif\|case\|while\|until\|for\|select\)\>' + if line !~ '\<\%(fi\|esac\|done\)\>\s*\%(#.*\)\=$' + let ind += s:indent_value('default') + endif + elseif s:is_case_label(line, pnum) + if line !~ ';[;&]\s*\%(#.*\)\=$' + let ind += s:indent_value('case-statements') endif + elseif line =~ '^\s*\<\k\+\>\s*()\s*{' || line =~ '^\s*{' + if line !~ '}\s*\%(#.*\)\=$' + let ind += s:indent_value('default') + endif + elseif s:is_continuation_line(line) + if pnum == 0 || !s:is_continuation_line(getline(pnum)) + let ind += s:indent_value('continuation-line') + endif + elseif pnum != 0 && s:is_continuation_line(getline(pnum)) + let ind = indent(s:find_continued_lnum(pnum)) endif - " Subtract a 'shiftwidth' on a then, do, else, esac, fi, done - " Retain the indentation level if line matches fin (for find) + let pine = line let line = getline(v:lnum) - if (line =~ '^\s*\(then\|do\|else\|elif\|esac\|fi\|done\)\>' || line =~ '^\s*}') - \ && line !~ '^\s*fi[ln]\>' - let ind = ind - &sw + if line =~ '^\s*\%(then\|do\|else\|elif\|fi\|done\)\>' || line =~ '^\s*}' + let ind -= s:indent_value('default') + elseif line =~ '^\s*esac\>' + let ind -= s:indent_value('case-statements') + s:indent_value('case-labels') + if s:is_case_break(pine) + let ind += s:indent_value('case-breaks') + endif + elseif s:is_case_label(line, lnum) + if s:is_case(pine) + let ind = indent(lnum) + s:indent_value('case-labels') + else + let ind -= s:indent_value('case-statements') - s:indent_value('case-breaks') + endif + elseif s:is_case_break(line) + let ind -= s:indent_value('case-breaks') endif return ind endfunction +function! s:is_continuation_line(line) + return a:line =~ '\%(\%(^\|[^\\]\)\\\|&&\|||\)$' +endfunction + +function! s:find_continued_lnum(lnum) + let i = a:lnum + while i > 1 && s:is_continuation_line(getline(i - 1)) + let i -= 1 + endwhile + return i +endfunction + +function! s:is_case_label(line, pnum) + if a:line !~ '^\s*(\=.*)\s*$' + return 0 + endif + + if a:pnum > 0 + let pine = getline(a:pnum) + if !(s:is_case(pine) || s:is_case_break(pine)) + return 0 + endif + endif + + let suffix = substitute(a:line, '^\s*(\=', "", "") + let nesting = 0 + let i = 0 + let n = strlen(suffix) + while i < n + let c = suffix[i] + let i += 1 + if c == '\\' + let i += 1 + elseif c == '(' + let nesting += 1 + elseif c == ')' + if nesting == 0 + return 1 + endif + let nesting -= 1 + endif + endwhile + return 0 +endfunction + +function! s:is_case(line) + return a:line =~ '^\s*case\>' +endfunction + +function! s:is_case_break(line) + return a:line =~ '^\s*;[;&]' +endfunction + let &cpo = s:cpo_save unlet s:cpo_save diff --git a/runtime/syntax/c.vim b/runtime/syntax/c.vim index 1cb3d114..94562127 100644 --- a/runtime/syntax/c.vim +++ b/runtime/syntax/c.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: C " Maintainer: Bram Moolenaar -" Last Change: 2009 Jun 03 +" Last Change: 2009 Nov 17 " Quit when a (custom) syntax file was already loaded if exists("b:current_syntax") @@ -270,7 +270,7 @@ if !exists("c_no_c99") " ISO C99 endif " Accept %: for # (C99) -syn region cPreCondit start="^\s*\(%:\|#\)\s*\(if\|ifdef\|ifndef\|elif\)\>" skip="\\$" end="$" end="//"me=s-1 contains=cComment,cCppString,cCharacter,cCppParen,cParenError,cNumbers,cCommentError,cSpaceError +syn region cPreCondit start="^\s*\(%:\|#\)\s*\(if\|ifdef\|ifndef\|elif\)\>" skip="\\$" end="$" contains=cComment,cCommentL,cCppString,cCharacter,cCppParen,cParenError,cNumbers,cCommentError,cSpaceError syn match cPreCondit display "^\s*\(%:\|#\)\s*\(else\|endif\)\>" if !exists("c_no_if0") if !exists("c_no_if0_fold") @@ -286,7 +286,7 @@ syn match cIncluded display contained "<[^>]*>" syn match cInclude display "^\s*\(%:\|#\)\s*include\>\s*["<]" contains=cIncluded "syn match cLineSkip "\\$" syn cluster cPreProcGroup contains=cPreCondit,cIncluded,cInclude,cDefine,cErrInParen,cErrInBracket,cUserLabel,cSpecial,cOctalZero,cCppOut,cCppOut2,cCppSkip,cFormat,cNumber,cFloat,cOctal,cOctalError,cNumbersCom,cString,cCommentSkip,cCommentString,cComment2String,@cCommentGroup,cCommentStartError,cParen,cBracket,cMulti -syn region cDefine start="^\s*\(%:\|#\)\s*\(define\|undef\)\>" skip="\\$" end="$" end="//"me=s-1 keepend contains=ALLBUT,@cPreProcGroup,@Spell +syn region cDefine start="^\s*\(%:\|#\)\s*\(define\|undef\)\>" skip="\\$" end="$" keepend contains=ALLBUT,@cPreProcGroup,@Spell syn region cPreProc start="^\s*\(%:\|#\)\s*\(pragma\>\|line\>\|warning\>\|warn\>\|error\>\)" skip="\\$" end="$" keepend contains=ALLBUT,@cPreProcGroup,@Spell " Highlight User Labels diff --git a/runtime/syntax/erlang.vim b/runtime/syntax/erlang.vim index e3d68363..2f39d614 100644 --- a/runtime/syntax/erlang.vim +++ b/runtime/syntax/erlang.vim @@ -50,7 +50,7 @@ if ! exists ("erlang_characters") " Operators syn match erlangOperator "+\|-\|\*\|\/" syn keyword erlangOperator div rem or xor bor bxor bsl bsr - syn keyword erlangOperator and band not bnot + syn keyword erlangOperator and band not bnot andalso orelse syn match erlangOperator "==\|/=\|=:=\|=/=\|<\|=<\|>\|>=" syn match erlangOperator "++\|--\|=\|!\|<-" @@ -123,7 +123,7 @@ endif if ! exists ("erlang_keywords") " Constants and Directives - syn match erlangDirective "-behaviour\|-behaviour" + syn match erlangDirective "-behaviour\|-behavior" syn match erlangDirective "-compile\|-define\|-else\|-endif\|-export\|-file" syn match erlangDirective "-ifdef\|-ifndef\|-import\|-include_lib\|-include" syn match erlangDirective "-module\|-record\|-undef" diff --git a/runtime/syntax/form.vim b/runtime/syntax/form.vim index 726bf475..19a47ed6 100644 --- a/runtime/syntax/form.vim +++ b/runtime/syntax/form.vim @@ -1,7 +1,10 @@ " Vim syntax file " Language: FORM +" Version: 2.0 " Maintainer: Michael M. Tung -" Last Change: 2001 May 10 +" Last Change: +" Past Change: +" Past Change: " First public release based on 'Symbolic Manipulation with FORM' " by J.A.M. Vermaseren, CAN, Netherlands, 1991. @@ -18,30 +21,73 @@ endif syn case ignore -" A bunch of useful FORM keywords +" a bunch of useful FORM keywords syn keyword formType global local syn keyword formHeaderStatement symbol symbols cfunction cfunctions syn keyword formHeaderStatement function functions vector vectors -syn keyword formHeaderStatement set sets index indices +syn keyword formHeaderStatement tensor tensors ctensor ctensors +syn keyword formHeaderStatement set sets index indices table ctable syn keyword formHeaderStatement dimension dimensions unittrace -syn keyword formStatement id identify drop skip -syn keyword formStatement write nwrite -syn keyword formStatement format print nprint load save -syn keyword formStatement bracket brackets -syn keyword formStatement multiply count match only discard -syn keyword formStatement trace4 traceN contract symmetrize antisymmetrize -syn keyword formConditional if else endif while +syn keyword formConditional if else elseif endif while syn keyword formConditional repeat endrepeat label goto +syn keyword formConditional argument endargument exit +syn keyword formConditional inexpression inside term +syn keyword formConditional endinexpression endinside endterm +syn keyword formStatement abrackets also antibrackets antisymmetrize +syn keyword formStatement argexplode argimplode apply auto autodeclare +syn keyword formStatement brackets chainin chainout chisholm cleartable +syn keyword formStatement collect commuting compress contract +syn keyword formStatement cyclesymmetrize deallocatetable delete +syn keyword formStatement dimension discard disorder drop factarg fill +syn keyword formStatement fillexpression fixindex format funpowers hide +syn keyword formStatement identify idnew idold ifmatch inparallel +syn keyword formStatement insidefirst keep load makeinteger many metric +syn keyword formStatement moduleoption modulus multi multiply ndrop +syn keyword formStatement nfunctions nhide normalize notinparallel +syn keyword formStatement nprint nskip ntable ntensors nunhide nwrite +syn keyword formStatement off on once only polyfun pophide print +syn keyword formStatement printtable propercount pushhide ratio +syn keyword formStatement rcyclesymmetrize redefine renumber +syn keyword formStatement replaceinarg replaceloop save select +syn keyword formStatement setexitflag skip slavepatchsize sort splitarg +syn keyword formStatement splitfirstarg splitlastarg sum symmetrize +syn keyword formStatement tablebase testuse threadbucketsize totensor +syn keyword formStatement tovector trace4 tracen tryreplace unhide +syn keyword formStatement unittrace vectors write +" for compatibility with older FORM versions: +syn keyword formStatement id bracket count match traceN " some special functions -syn keyword formStatement g_ gi_ g5_ g6_ g7_ 5_ 6_ 7_ -syn keyword formStatement e_ d_ delta_ theta_ sum_ sump_ +syn keyword formStatement abs_ bernoulli_ binom_ conjg_ count_ +syn keyword formStatement d_ dd_ delta_ deltap_ denom_ distrib_ +syn keyword formStatement dum_ dummy_ dummyten_ e_ exp_ fac_ +syn keyword formStatement factorin_ firstbracket_ g5_ g6_ g7_ +syn keyword formStatement g_ gcd_ gi_ integer_ invfac_ match_ +syn keyword formStatement max_ maxpowerof_ min_ minpowerof_ +syn keyword formStatement mod_ nargs_ nterms_ pattern_ poly_ +syn keyword formStatement polyadd_ polydiv_ polygcd_ polyintfac_ +syn keyword formStatement polymul_ polynorm_ polyrem_ polysub_ +syn keyword formStatement replace_ reverse_ root_ setfun_ sig_ +syn keyword formStatement sign_ sum_ sump_ table_ tbl_ term_ +syn keyword formStatement termsin_ termsinbracket_ theta_ thetap_ +syn keyword formStatement 5_ 6_ 7_ + +syn keyword formReserved sqrt_ ln_ sin_ cos_ tan_ asin_ acos_ +syn keyword formReserved atan_ atan2_ sinh_ cosh_ tanh_ asinh_ +syn keyword formReserved acosh_ atanh_ li2_ lin_ + +syn keyword formTodo contained TODO FIXME XXX + +syn match formSpecial display contained "\\\(n\|t\|b\|\\\|\"\)" +syn match formSpecial display contained "%\(%\|e\|E\|s\|f\|\$\)" +syn match formSpecial "\" syn match formNumber "\<\d\+\>" syn match formNumber "\<\d\+\.\d*\>" @@ -50,6 +96,13 @@ syn match formNumber "-\d" contains=Number syn match formNumber "-\.\d" contains=Number syn match formNumber "i_\+\>" syn match formNumber "fac_\+\>" +" pattern matching wildcards +syn match formNumber "?[A-z0-9]*" +" dollar-variables (new in 3.x) +syn match formNumber "\\$[A-z0-9]*" +" scalar products +syn match formNumber "^\=[a-zA-z][a-zA-Z0-9]*\.[a-zA-z][a-zA-Z0-9]*\>" + syn match formDirective "^\=\.[a-zA-z][a-zA-Z0-9]*\>" " hi User Labels @@ -74,6 +127,10 @@ if version >= 508 || !exists("did_form_syn_inits") HiLink formDirective PreProc HiLink formType Type HiLink formString String + HiLink formNestedString String + HiLink formReserved Error + HiLink formTodo Todo + HiLink formSpecial SpecialChar if !exists("form_enhanced_color") HiLink formHeaderStatement Statement diff --git a/runtime/syntax/groovy.vim b/runtime/syntax/groovy.vim index 5f96dfbd..d2f34968 100644 --- a/runtime/syntax/groovy.vim +++ b/runtime/syntax/groovy.vim @@ -228,6 +228,7 @@ if !exists("groovy_ignore_groovydoc") && main_syntax != 'jsp' " syntax include @groovyHtml :p:h/html.vim syntax include @groovyHtml runtime! syntax/html.vim unlet b:current_syntax + syntax spell default " added by Bram syn region groovyDocComment start="/\*\*" end="\*/" keepend contains=groovyCommentTitle,@groovyHtml,groovyDocTags,groovyTodo,@Spell syn region groovyCommentTitle contained matchgroup=groovyDocComment start="/\*\*" matchgroup=groovyCommentTitle keepend end="\.$" end="\.[ \t\r<&]"me=e-1 end="[^{]@"me=s-2,he=s-1 end="\*/"me=s-1,he=s-1 contains=@groovyHtml,groovyCommentStar,groovyTodo,@Spell,groovyDocTags diff --git a/runtime/syntax/maxima.vim b/runtime/syntax/maxima.vim index ca982d7a..27dcc188 100644 --- a/runtime/syntax/maxima.vim +++ b/runtime/syntax/maxima.vim @@ -227,7 +227,7 @@ syn match maximaFloat /\<\d\+[BbDdEeSs][-+]\=\d\+\>/ " Comments: " maxima supports /* ... */ (like C) syn keyword maximaTodo contained TODO Todo DEBUG -syn region maximaCommentBlock start="/\*" end="\*/" contains=maximaString,maximaTodo +syn region maximaCommentBlock start="/\*" end="\*/" contains=maximaString,maximaTodo,maximaCommentBlock " synchronizing syn sync match maximaSyncComment grouphere maximaCommentBlock "/*" diff --git a/runtime/syntax/papp.vim b/runtime/syntax/papp.vim index 0d84d80d..d86dce60 100644 --- a/runtime/syntax/papp.vim +++ b/runtime/syntax/papp.vim @@ -2,7 +2,7 @@ " " Language: papp " Maintainer: Marc Lehmann -" Last Change: 2003 May 11 +" Last Change: 2009 Nov 11 " Filenames: *.papp *.pxml *.pxsl " URL: http://papp.plan9.de/ @@ -37,6 +37,7 @@ if exists("papp_include_html") syn include @PAppHtml syntax/html.vim endif unlet b:current_syntax + syntax spell default " added by Bram endif if version < 600 diff --git a/runtime/syntax/prolog.vim b/runtime/syntax/prolog.vim index d6dfce8a..58de71f4 100644 --- a/runtime/syntax/prolog.vim +++ b/runtime/syntax/prolog.vim @@ -1,8 +1,8 @@ " Vim syntax file " Language: PROLOG " Maintainers: Thomas Koehler -" Last Change: 2009 Apr 22 -" URL: http://gott-gehabt/800_wer_wir_sind/thomas/Homepage/Computer/vim/syntax/prolog.vim +" Last Change: 2009 Dec 04 +" URL: http://gott-gehabt.de/800_wer_wir_sind/thomas/Homepage/Computer/vim/syntax/prolog.vim " There are two sets of highlighting in here: " If the "prolog_highlighting_clean" variable exists, it is rather sparse. diff --git a/runtime/syntax/pyrex.vim b/runtime/syntax/pyrex.vim index 081da3e5..7dc9b955 100644 --- a/runtime/syntax/pyrex.vim +++ b/runtime/syntax/pyrex.vim @@ -2,7 +2,7 @@ " Language: Pyrex " Maintainer: Marco Barisione " URL: http://marcobari.altervista.org/pyrex_vim.html -" Last Change: 2009 Oct 28 +" Last Change: 2009 Nov 09 " For version 5.x: Clear all syntax items " For version 6.x: Quit when a syntax file was already loaded @@ -25,7 +25,7 @@ syn keyword pyrexStatement cdef typedef ctypedef sizeof syn keyword pyrexType int long short float double char object void syn keyword pyrexType signed unsigned syn keyword pyrexStructure struct union enum -syn keyword pyrexPrecondit include cimport +syn keyword pyrexInclude include cimport syn keyword pyrexAccess public private property readonly extern " If someome wants Python's built-ins highlighted probably he " also wants Pyrex's built-ins highlighted @@ -54,7 +54,7 @@ if version >= 508 || !exists("did_pyrex_syntax_inits") HiLink pyrexStatement Statement HiLink pyrexType Type HiLink pyrexStructure Structure - HiLink pyrexPrecondit PreCondit + HiLink pyrexInclude PreCondit HiLink pyrexAccess pyrexStatement if exists("python_highlight_builtins") || exists("pyrex_highlight_builtins") HiLink pyrexBuiltin Function diff --git a/runtime/syntax/scheme.vim b/runtime/syntax/scheme.vim index e19fb42c..f9870344 100644 --- a/runtime/syntax/scheme.vim +++ b/runtime/syntax/scheme.vim @@ -1,6 +1,6 @@ " Vim syntax file " Language: Scheme (R5RS + some R6RS extras) -" Last Change: 2009 Apr 12 +" Last Change: 2009 Nov 27 " Maintainer: Sergey Khorev " Original author: Dirk van Deun @@ -174,16 +174,16 @@ syn match schemeError ![-#+0-9.][-#+/0-9a-f@i.boxesfdl]*[^-#+/0-9a-f@i.boxesfdl syn match schemeBoolean "#[tf]" syn match schemeError !#[tf][^ \t\[\]()";]\+! -syn match schemeChar "#\\" -syn match schemeChar "#\\." +syn match schemeCharacter "#\\" +syn match schemeCharacter "#\\." syn match schemeError !#\\.[^ \t\[\]()";]\+! -syn match schemeChar "#\\space" +syn match schemeCharacter "#\\space" syn match schemeError !#\\space[^ \t\[\]()";]\+! -syn match schemeChar "#\\newline" +syn match schemeCharacter "#\\newline" syn match schemeError !#\\newline[^ \t\[\]()";]\+! " R6RS -syn match schemeChar "#\\x[0-9a-fA-F]\+" +syn match schemeCharacter "#\\x[0-9a-fA-F]\+" if exists("b:is_mzscheme") || exists("is_mzscheme") @@ -196,7 +196,7 @@ if exists("b:is_mzscheme") || exists("is_mzscheme") " anything limited by |'s is identifier syn match schemeOther "|[^|]\+|" - syn match schemeChar "#\\\%(return\|tab\)" + syn match schemeCharacter "#\\\%(return\|tab\)" " Modules require stmt syn keyword schemeExtSyntax module require dynamic-require lib prefix all-except prefix-all-except rename @@ -305,7 +305,7 @@ if version >= 508 || !exists("did_scheme_syntax_inits") HiLink schemeFunc Function HiLink schemeString String - HiLink schemeChar Character + HiLink schemeCharacter Character HiLink schemeNumber Number HiLink schemeBoolean Boolean diff --git a/runtime/syntax/spec.vim b/runtime/syntax/spec.vim index cb2f3047..8c9dd1ff 100644 --- a/runtime/syntax/spec.vim +++ b/runtime/syntax/spec.vim @@ -1,8 +1,7 @@ " Filename: spec.vim " Purpose: Vim syntax file " Language: SPEC: Build/install scripts for Linux RPM packages -" Maintainer: Donovan Rebbechi elflord@pegasus.rutgers.edu -" URL: http://pegasus.rutgers.edu/~elflord/vim/syntax/spec.vim +" Maintainer: Donovan Rebbechi elflord@panix.com " Last Change: Fri Dec 3 11:54 EST 2004 Marcin Dalecki " For version 5.x: Clear all syntax items diff --git a/runtime/syntax/spyce.vim b/runtime/syntax/spyce.vim index 641aa865..e76cb1a1 100644 --- a/runtime/syntax/spyce.vim +++ b/runtime/syntax/spyce.vim @@ -2,7 +2,7 @@ " Language: SPYCE " Maintainer: Rimon Barr " URL: http://spyce.sourceforge.net -" Last Change: 2003 May 11 +" Last Change: 2009 Nov 11 " For version 5.x: Clear all syntax items " For version 6.x: Quit when a syntax file was already loaded @@ -25,6 +25,7 @@ if version < 600 else runtime! syntax/html.vim unlet b:current_syntax + syntax spell default " added by Bram endif " include python diff --git a/runtime/syntax/tcsh.vim b/runtime/syntax/tcsh.vim index 94c4181c..0409533f 100644 --- a/runtime/syntax/tcsh.vim +++ b/runtime/syntax/tcsh.vim @@ -1,6 +1,6 @@ " tcsh.vim: Vim syntax file for tcsh scripts -" Maintainer: Gautam Iyer -" Modified: Sat 16 Jun 2007 04:52:12 PM PDT +" Maintainer: Gautam Iyer +" Modified: Sun 13 Dec 2009 11:00:34 PM EST " " Description: We break up each statement into a "command" and an "end" part. " All groups are either a "command" or part of the "end" of a statement (ie @@ -60,7 +60,7 @@ syn region tcshEnvEnd contained transparent matchgroup=tcshBuiltin start='' ski " alias and unalias (contains special aliases) syn keyword tcshAliases contained beepcmd cwdcmd jobcmd helpcommand periodic precmd postcmd shell syn keyword tcshBuiltin nextgroup=tcshAliCmd skipwhite alias unalias -syn match tcshAliCmd contained nextgroup=tcshAliEnd skipwhite '\v[\w-]+' contains=tcshAliases +syn match tcshAliCmd contained nextgroup=tcshAliEnd skipwhite '\v(\w|-)+' contains=tcshAliases syn region tcshAliEnd contained transparent matchgroup=tcshBuiltin start='' skip='\\$' end='$\|;' contains=@tcshStatementEnds " if statements diff --git a/runtime/syntax/uil.vim b/runtime/syntax/uil.vim index bdc4e95b..a4399844 100644 --- a/runtime/syntax/uil.vim +++ b/runtime/syntax/uil.vim @@ -1,8 +1,9 @@ " Vim syntax file " Language: Motif UIL (User Interface Language) " Maintainer: Thomas Koehler -" Last Change: 2002 Sep 20 -" URL: http://jeanluc-picard.de/vim/syntax/uil.vim +" Last Change: 2009 Dec 04 +" URL: http://gott-gehabt.de/800_wer_wir_sind/thomas/Homepage/Computer/vim/syntax/uil.vim + " Quit when a syntax file was already loaded if version < 600 diff --git a/runtime/tutor/Makefile b/runtime/tutor/Makefile index 138bc51a..7f4df75e 100644 --- a/runtime/tutor/Makefile +++ b/runtime/tutor/Makefile @@ -6,6 +6,7 @@ # Similarly for Russian and Korean all: tutor.utf-8 \ + tutor.bj \ tutor.ca.utf-8 \ tutor.de.utf-8 \ tutor.el tutor.el.cp737 \ @@ -18,6 +19,8 @@ all: tutor.utf-8 \ tutor.ja.sjis tutor.ja.euc \ tutor.ko.euc \ tutor.no.utf-8 \ + tutor.nb \ + tutor.nb.utf-8 \ tutor.ru tutor.ru.cp1251 \ tutor.sv.utf-8 \ tutor.zh.utf-8 @@ -25,6 +28,9 @@ all: tutor.utf-8 \ tutor.utf-8: tutor iconv -f ISO-8859-1 -t UTF-8 tutor > tutor.utf-8 +tutor.bj: tutor.bj.utf-8 + iconv -f UTF-8 -t ISO-8859-1 tutor.bj.utf-8 > tutor.bj + tutor.ca.utf-8: tutor.ca iconv -f ISO-8859-1 -t UTF-8 tutor.ca > tutor.ca.utf-8 @@ -70,6 +76,13 @@ tutor.ko.euc: tutor.ko.utf-8 tutor.no.utf-8: tutor.no iconv -f ISO-8859-1 -t UTF-8 tutor.no > tutor.no.utf-8 +# nb is an alias for no +tutor.nb: tutor.no + cp tutor.no tutor.nb + +tutor.nb.utf-8: tutor.no.utf-8 + cp tutor.no.utf-8 tutor.nb.utf-8 + tutor.ru: tutor.ru.utf-8 iconv -f UTF-8 -t KOI8-R tutor.ru.utf-8 > tutor.ru diff --git a/runtime/tutor/tutor.bj b/runtime/tutor/tutor.bj new file mode 100644 index 00000000..642a8f30 --- /dev/null +++ b/runtime/tutor/tutor.bj @@ -0,0 +1,987 @@ +=============================================================================== += G o t i k a m i n n W I M M - S c h a i n e r - Fassung 1.7D = +=============================================================================== + + Dyr Wimm ist ayn gro mächtigs Blat, dös was mit aynn Wösn Befelh aufwartt; z + vil, däß myn s allsand in aynn Schainer wie dönn daader unterbräng. Der + Schainer ist yso aufbaut, däß yr halt netty die Befelh allsand bringt, wost + brauchst, däßst mit iem für s Eerste wirklich öbbs anfangen kanst. + Durchhinarechtn kanst di, wennst willst, in ayner halbetn Stund; dös haisst, + wennst di nit grooß mit n Pröbln und Tüftln aufhaltst. + + OBACHT: + Die Faudungen, wost daader finddst, gaand istig s Gwort öndern. Dösswögn + machst eyn n Böstn glei ayn Aamum von derer Dautticht daader. Haast alsnan + dös Gwort daader mit n Befelh "vimtutor bj" ausherlaassn, ist s ee schoon + ayn Aamum. + Mir kan s nit oft gnueg sagn, däß der Schainer daader istig gan n Üebn + ghoert. Also muesst schoon aau die Befelh ausfüern, wennst ys gscheid ler- + nen willst. Mit n Lösn yllain ist s +nit taan! + + Ietz schaust grad non, däß dein Föststölltastn nit druckt ist; und aft geest + glei aynmaal mit dyr j-Tastn abwärts (yso laaufft dös nömlich), hinst däßst + de gantze Letzn 1.1 auf n Bildschirm haast. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 1.1: MIT N MÖRKL UMAYNANDFARN + +** Dyrmitst mit n Mörkl umaynandkimmst, druck h, j, k und l wie unt zaigt. ** + ^ Ayn Öslsbrugg: + k De Tastn h ist winster und +geet aau gan winster. + < h l > S l leit zesm und richtt si gan zesm. + j S j kan myn wie aynn Pfeil gan unt seghn. + v Mit n k kimmst gan n KOPF. + 1. Ietz ruedertst ainfach mit n Mörkl auf n Bildschirm umaynand, hinst däßst + di sicher füelst. + 2. Halt d Abhin-Tastn (j) druckt; aft rumplt s ainfach weiter. Netty yso + kimmst gan dyr naehstn Letzn. + + 3. Wie gsait, ietz bewögst di also mit derer Tastn gan dyr Letzn 1.2. + +Non öbbs: Allweil, wenn dyr niemer ganz wol ist, wasst öbbenn druckt haast, aft + zipfst ; naacherd bist wider ganz gwon in dyr Befelhs-Artweis. + + + Nöbnbei gsait kimmst gwonerweil aau mit de Pfeiltastnen weiter. Aber + hjkl seind z haissn s Wimm-Urgstain; und de "Hörtn" seind ganz dyr- + für, däß myn bei +dene bleibt. Pröblt s ainfach aus! +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 1.2: ÖNN WIMM AUSSCHALTTN + + + ALSO, EE WENNST ÖBBS VON DAA UNT AUSFÜERST, LIS LIEBER ZEERST DE GANTZE LET- + ZN! + + 1. Druck d -Tastn, dyrmitst aau gwiß in dyr Befelhs-Artweis bist. + + 2. Demmlt :q! . + Daa dyrmit benddst ys Blat und verwirffst allss, wasst öbbenn göndert + haast. + + 3. Balst önn Eingib seghst, gib dö Faudung ein, wo di zo dönn Schainer brun- + gen haat, also vimtutor bj . + + 4. Also, wenn ietz allsse sitzt, naacherd füerst d Schritt 1 hinst 3 aus, mit + wasst ys Blat verlaasst und aft wider einhinkimmst. + +Anmörkung: Mit :q! verwirffst allss, wasst göndert older enther gschribn + haast. In aynn Öttlych Letznen lernst acht, wiest dös allss in ayner + Dautticht speichertst. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 1.3: GWORT BARECHTN - LÖSCHN + + + ** Druck x , dyrmitst dös Zaichen unter n Mörkl löschst. ** + + 1. Bewög di mit n Mörkl auf de mit ---> angmörkte Zeil unt. + + 2. Zo n Faeler Verbössern farst mit n Mörkl netty auf dös Zaichen, dös wo + glöscht ghoert. + + 3. Druck de Tastn x , däßst dös überflüssige Zaichen löschst. + + 4. Ietz tuest so lang weiter mit 2 hinst 4, hinst däß dyr Saz stimmt. + +---> De Kkuue sprangg übber nn Maanad. + + 5. Wenn ietz de Zeil verbössert ist, geest gan dyr Letzn 1.4. weiter. + +Und ganz wichtig: Dyrweilst dönn Schainer durcharechtst, versuech nit öbbenn, + allss auswendig z lernen; nän, lern ainfach mit n Anwenddn! + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 1.4: GWORT BARECHTN - EINFÜEGN + + + ** Druck i , dyrmitst öbbs einfüegst. ** + + 1. Bewög önn Mörkl zo dyr eerstn untignen Zeil, wo mit ---> angeet. + + 2. Dyrmitst de eerste Zeil wie de zwaitte machst, bewög önn Mörkl auf dös + eerste Zaichen NAACH derer Stöll, daa wo s Gwort eingfüegt werdn sollt. + + 3. Druck i und gib dös ein, was abgeet. + + 4. Wenn ieweils ayn Faeler verweitert ist, aft druck ; und dyrmit kimmst + gan dyr Befelhsartweis zrugg. + So, und ietz tuest ainfach yso weiter, hinst däß dyr Saz stimmt. + +---> Daader gt dd öbbs b. +---> Daader geet diend öbbs ab. + + 5. Balst mainst, däßst ys Gwort-Einfüegn kanst, aft geest gan dyr Letzn 1.5. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 1.5: GWORT BARECHTN - ANFÜEGN + + + ** Druck A gan n Gwort Anfüegn. ** + + 1. Gee mit n Mörkl gan dyr eerstn untignen Zeil, wo ayn ---> dyrvor haat. + Daa ist s gleich, wo gnaun dyr Mörkl in derer Zeil steet. + + 2. Demmlt A und gib de entspröchetn Ergöntzungen ein. + + 3. Wennst mit n Anfüegn förtig bist, aft druckst , däßst wider eyn de + Befelhsartweis zruggkimmst. + + 4. So, und ietz geest aft non gan dyr zwaittn mit ---> angmörktn Zeil; und + daadl machst ys netty yso. + +---> In derer Zeil gee + In derer Zeil geet ayn Weeng ayn Gwort ab. +---> Aau daader stee + Aau daader steet öbbs Unvollstöndigs. + + 5. Wennst s Anfüegn von Gwort drauf haast, naacherd gee gan dyr Letzn 1.6. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 1.6: AYN DAUTTICHT BARECHTN + + + ** Mit :wq speichertst ayn Dautticht und verlaasst önn Wimm ganz. ** + + !! OBACHT: Ee wennst mit dönn alln daa unt weitertuest, lis zeerst de gantze + Letzn durch!! + + 1. Verlaaß also s Blat, wie s in dyr Letzn 1.2. haisst, mit :q! ! + + 2. Gib dö Faudung eyn n Eingib ein: vim Schainer . 'vim' ruefft s Blat + auf, und 'Schainer' haisst de Dautticht, wost barechtn willst. Dyrmit + haast also ayn Dautticht, dö wost barechtn kanst. + + 3. Ietz füegst öbbs ein older löschst öbbs, wiest ys in de vorignen Letznen + glernt haast. + + 4. Speichert de gönderte Dautticht und verlaaß önn Wimm mit :wq . + + 5. Schmeiß önn Wimmschainer neu an und gee gan dyr folgetn Zammenfassung. + + 6. Aft däßst de obignen Schritt glösn und käppt haast, kanst ys durchfüern. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ZAMMENFASSUNG VON DYR LETZN 1 + + + 1. Dyr Mörkl werd mit de Tastnen hjkl older aau mit de Pfeiltastnen gsteuert. + h (winst) j (ab) k (auf) l (zes) + + 2. Um önn Wimm umbb n Eingib aus z ginnen, demmlt: vim DAUTTICHT . + + 3. Willst önn Wimm verlaassn und aau allss verwerffen, aft gibst ein: + :q! . + Gan n Verlaassn und Speichern aber zipfst :wq . + + 4. Willst dös Zaichen löschn, daa wo dyr Mörkl drauf ist, demmltst x . + + 5. Willst öbbs vor n Mörkl eingöbn, zipfst i und drafter . + Mechst ys aber eyn s Zeilnend anhinhöngen, benutzt ys A . + Und ainfach naach n Mörkl füegst ys mit a ein . + +Anmörkung: Druckst , kimmst eyn de Befelhsartweis zrugg older brichst ayn + Faudung ab, dö wo dyr schiefgangen ist. + + Ietz tue mit dyr Letzn 2 weiter. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 2.1.: LÖSHFAUDUNGEN + + + ** Demmlt dw , dyrmitst ayn Wort löschst ** + + 1. Druck , dyrmit s aau gwiß ist, däßst in dyr Befelhsartweis bist. + + 2. Bewög önn Mörkl zo dyr mit ---> angmörktn Zeil unt. + + 3. Und daa geest ietz auf n Anfang von aynn Wort, dös wo glöscht ghoert. + + 4. Zipf dw , däßst dös gantze Wort löschst. + + Nöbnbei: Dyr Buechstabn d erscheint auf dyr lösstn Zeil von n Bildschirm, + sobaldst n eingibst. Dyr Wimm wartt ietz drauf, däß öbbs kimmt, al- + so daader ayn w . Seghst freilich öbbs Anderts wie ayn d , + naacherd haast öbbs Falschs demmlt. Druck aft und pröblt + s non aynmaal. +---> Ayn Öttlych Wörter lustig ghoernd nit Fisper eyn dönn Saz einhin. + + 5. Äfert d Schritt 3 und 4, hinst däß dyr Saz pässt, und gee aft gan dyr + Letzn 2.2. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 2.2.: NON MEERER LÖSHFAUDUNGEN + + + ** Gib d$ ein, däßst hinst eyn s Zeilnend löschst. ** + + 1. Druck , dyrmitst aau gwiß in dyr Befelhsartweis bist. + + 2. Bewög önn Mörkl hinst eyn de mit ---> angmörkte Zeil untn. + + 3. Gee mit n Mörkl auf s End von dyr faelerfreien Zeil, NAACH n eerstn . . + + 4. Zipf d$ , däßst hinst eyn s End von dyr Zeil löschst. + +---> Öbber haat s End von dyr Zeil doplt eingöbn. doplt eingöbn. + + + 5. Gee weiter gan dyr Letzn 2.3, dyrmitst versteest, was daader ablaaufft. + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 2.3: PFEMERER UND WOLENDER + + + Vil Faudungen, wo s Gwort öndernd, sötznd si aus aynn Pfemerer und aynn Wo- + lend zamm. Bal i also öbbs löschn will, schreib i ainsting d und aft s "Wo- + lend", dös haisst also, "wolend", "wohin" däß i will - older was i halt gnaun + löschn will. + + + + + + + Daader also, was i wie löschn kan: + w - hinst eyn n Anfang von n naehstn Wort AANE dönn sein eersts Zaichen. + e - gan n End von n ietzundn Wort MIT dönn seinn lösstn Zaichen. + $ - zo n End von dyr Zeil MIT derer irn lösstn Zaichen. + + Also löscht de Tastnfolg de umbb n Mörkl hinst eyn s Wortend. +Anmörkung: Gib i grad dös zwaitte Zaichen yllain ein, ruckt halt dyr Mörkl + entspröchet weiter. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 2.4: MIT AYNN ZÖLER D WOLENDER ÄFERN + + + ** Gib i ayn Zal vor aynn Wolend ein, werd dös Sel halt widerholt. ** + + 1. Bewög önn Mörkl gan n Anfang von dyr Zeil mit ---> dyrvor unt. + + 2. Zipf 2w , däßst mit n Mörkl zwai Wörter weitergeest. + + 3. Zipf 3e , däßst mit n Mörkl auf s End von n drittn Wort kimmst. + + 4. Zipf 0 (aynn Nuller), däßst eyn n Anfang von dyr Zeil hinkimmst. + + 5. Widerhol d Schritt 2 und 3 mit verschaidne Zöler. + + ---> Dös ist ietz grad ayn Zeil zo n drinn Umaynanderruedern. + + 6. Gee weiter gan dyr Letzn 2.5. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 2.5: DURCH AYNN ZÖLER GLEI MEERER LÖSCHN + + + ** Ayn Zal vor aynn Pfemerer äfert dönn um seln Werd. ** + + Also, i mecht löschn, und zwaar öbbs Bestimmts, und dös so und so oft: Daa + dyrzue benutz i aynn Zöler: + d Zöler Wolend (also önn Bewögungsschrit) + + 1. Bewög önn Mörkl gan n eerstn Wort in GROOSSBUECHSTABN in dyr mit ---> an- + gmörktn Zeil. + + 2. Demmlt d2w , dyrmitst de ganz grooßgschribnen Wörter löschst. + + 3. Äfert d Schritt 1 und 2 mit dönn entspröchetn Zöler, dyrmitst de drauf- + folgetn ganz großgschribnen Wörter mit ayner ainzignen Faudung löschst: + + +---> Dö ABC DE Zeil FGHI JK LMN OP mit Wörter ist Q RS TUV ietz berichtigt. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 2.6: ARECHTN AUF ZEILN + + + ** Zipf dd , um ayn gantze Zeil z löschn. ** + + Weil s gro oft vürkimmt, däß myn gantze Zeiln löscht, kaamend schoon d Ent- + wickler von n Urwimm daa drauf, däß myn ainfach dd gan dönn Zwök schreibt. + + + 1. Bewög önn Mörkl gan dyr zwaittn Zeil in n untignen "Gedicht". + 2. Zipf dd , um dö Zeil z löschn. + 3. Ietz bewögst di gan dyr viertn Zeil. + 4. Zipf 2dd , um zwo Zeiln zo n Löschn. + +---> 1) Roosn seind root; +---> 2) Drunter ist s Koot. +---> 3) Veigerln seind blau. +---> 4) Umgrabn tuet s d Sau. +---> 5) D Ur sait de Zeit, +---> 6) Sait, däß s mi freut, +---> 7) Dirndl, dein Gschau. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 2.7: RUGGGÖNGIG MACHEN (RUGGLN) + + + ** Zipf u , dyrmitst de lösstn Faudungen ruggltst ** + ** older U , um ayn gantze Zeil widerherzstölln. ** + + 1. Bewög önn Mörkl gan dyr mit ---> angmörktn Zeil unt und gee dyrmit auf n + eerstn Faeler. + 2. Zipf x , däßst dös eerste z vile Zaichen löschst. + 3. Ietz demmlt u , dyrmitst de lösste Faudung ruggltst. + 4. Ietz behöb allsand Faeler auf dyr Zeil mit dyr Hilf von n Befelh x . + 5. Aft gibst ayn U (grooß) ein, däßst de Zeil wider yso hinbringst, wie s + gwösn ist. + 6. So, und ietz demmltst so oft u , hinst däßst s U und de andern Fau- + dungen rugggöngig gmacht haast. + 7. Und ietzet widerum schreibst so oft r , hinst däßst allsand Be- + felh widerhergstöllt, z haissn allsse rugg-grugglt haast (also d Rugggön- + gigmachungen rugggöngig gmacht). +---> Beerichtig d Faeller voon dehrer Zeiil und sttöll s mitt n Ruggruggln wi- + der her. + 8. Die Faudungen seind gro wichtig; sö helffend ainn närrisch weiter. + Ietz gee weiter gan dyr Zammenfassung von dyr Letzn 2. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ZAMMENFASSUNG VON DYR LETZN 2 + + + 1. Um von n Mörkl aus hinst eyn s naehste Wort zo n Löschn, zipf: dw + 2. Um umbb n Mörkl hinst eyn s End von dyr Zeil zo n Löschn, demmlt d$ + 3. Dyrmitst ayn gantze Zeil löschst, gib ein: dd + 4. Mechst ayn Bewögung, ayn "Wolend", öfters, stöll de entspröchete Zal dyr- + vor: 3dw older aau: d3w + 5. Dyr Pfueg für ayn Önderungsfaudung lautt yso: + Pfemerer [Zal] Bewögungsschrit (Wolend) + Und dös haisst: + Dyr PFEMERER gibt an, WAS taan ghoert, öbbenn d = löschn (»delete«). + [ZAL] - Ayn Zal KAN myn angöbn, wenn myn halt ayn Wolend öfter habn will. + S WOLEND, also dyr Schrit WOHIN, besagt, auf was i aushin will, öbbenn + auf ayn Wort ( w ), s End von dyr Zeil ( $ ) und so weiter. + + 6. Däßst eyn n Anfang von dyr Zeil hinkimmst, schreib aynn Nuller: 0 + + 7. Um öbbs Vorigs wider z ruggln, gib ein: u (klain also) + Um allsand Önderungen in ayner Zeil z ruggln, haast: U (also grooß) + Um "rugg-z-ruggln", also allss wider herzstölln, zipf: r + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 3.1: ANFÜEGN (»put«) + + + ** Zipf p , dyrmitst öbbs gnetty Glöschts naach n Mörkl anfüegst. ** + + 1. Bewög önn Mörkl gan dyr eerstn untignen Zeil mit ---> dyrvor. + + 2. Zipf dd , um sele Zeil z löschn und dyrmit in aynn Wimm-"Roster" zo n + speichern. + + 3. Bewög önn Mörkl gan dyr Zeil c), ÜBER derer, daa wo de glöschte Zeil ein- + hinkemmen sollt. + + 4. So, und ietz gibst ainfach p ein, und schoon haast dö Zeil unter derer + mit n Mörkl drinn. + 5. Äfert d Schritt 2 hinst 4, hinst däßst allsand Zeiln yso naachynaynand + haast, wie s hinghoernd. + +---> d) Kanst du dös aau? +---> b) Veigerln seind blau. +---> c) Bedachtn kan myn lernen. +---> a) Roosn seind root. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 3.2: ERSÖTZN (»replace«) + + + ** Zipf rx , um dös Zaichen unter n Mörkl durch x z ersötzn. ** + + 1. Bewög önn Mörkl zo dyr eerstn untignen Zeil mit ---> dyrvor. + + 2. Bewög önn Mörkl, hinst däß yr auf n eerstn Faeler steet. + + 3. Zipf r und drafter dös Zaichen, wo dyrfür daa hinghoert. + + 4. Widerhol d Schritt 2 und 3, hinst däßst de eerste Zeil gmaeß dyr zwaittn + berichtigt haast: +---> Wie dö Zeit eingobn wurd, wurdnd ainike falsche Zastnen zipft! +---> Wie dö Zeil eingöbn wurd, wurdnd ainige falsche Tastnen zipft! + + 5. Ietz tue mit dyr Letzn 3.3 weiter. + +Anmörkung: Vergiß nit drauf, däßst mit n Anwenddn lernen solltst und nit öbbenn + mit n Auswendiglernen! + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 3.3: ÖNDERN (»change«) + + + ** Um hinst eyn s Wortend z öndern, zipf ce . ** + + 1. Gee mit n Mörkl auf de eerste mit ---> angmörkte Zeil. + + 2. Ietz farst netty auf s "s" von Wstwr hin. + + 3. Zipf ce ein und aft d Wortberichtigung, daader also örter . + + 4. Druck und bewög önn Mörkl gan n naehstn Zaichen, wo göndert ghoert. + + 5. Äfert d Schritt 3 und 4, hinst däß dyr eerste Saz wie dyr zwaitte ist. + +---> Ainige Wstwr von derer Zlww ghhnnd mit n Öndern-Pfemerer gaauu. +---> Ainige Wörter von derer Zeil ghoernd mit n Öndern-Pfemerer göndert. + +ce löscht also s Wort und schlaaufft di eyn d Eingaab-Artweis. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 3.4.: NON MEERER ÖNDERUNGEN PFELFS c + + + ** D Löshfaudung c arechtt mit de nömlichnen Wolender wie dö mit d ** + + 1. Dyr Önder-Pfemerer arechtt anleich wie d Löshfaudung mit d , und zwaar + yso: + c [Zal] Bewögungsschritt (Wolend) + + 2. D Wolender seind de gleichn, öbbenn w für Wort und $ für s Zeilnend. + + + 3. Bewög di zo dyr eerstn untignen Zeil mit ---> . + + 4. Ietz geest auf dönn eerstn Faeler. + + 5. Zipf c$ , gib önn Rest von dyr Zeil wie in dyr zwaittn ein und druck aft + . +---> S End von derer Zeil sollt an de zwaitte daader anglichen werdn. +---> S End von derer Zeil sollt mit n Befelh c$ berichtigt werdn. + +Denk allweil dran, däßst iederzeit mit dyr Ruggtastn Faeler ausbössern kanst. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ZAMMENFASSUNG VON DYR LETZN 3 + + + 1. Um ayn vorher glöschts Gwort anzfüegn, zipf p . Daa dyrmit werd dös + gantze Gwort NAACH n Mörkl angfüegt. Wenn s ayn gantze Zeil gwösn ist, + werd dö sel als de Zeil unterhalb n Mörkl eingfüegt. + + 2. Um dös Zaichen unter n Mörkl, also wo dyr Mörkl ist, z ersötzn, zipf r + und aft dös Zaichen, wost daadl habn willst. + + 3. Dyr Önderungspfemerer ( c = »change«) laasst ainn umbb n Mörkl hinst eyn s + End von n Wolend öndern. Zipf ce , dyrmitst umbb n Mörkl hinst eyn s End + von n Wort öndertst, und c$ hinst eyn s End von dyr Zeil. + + 4. Für d Önderung lautt dyr Pfueg: + + c [Zal] Wolend + +Ietz tue mit dyr naehstn Letzn weiter. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 4.1: MÖRKLSTÖLLUNG UND DAUTTICHTDARSTAND + +** Demmlt g, däßst önn Befand und Darstand von dyr Dautticht anzaigst. ** + ** Zipf G , dyrmitst auf ayn bestimmte Zeil in dyr Dautticht hinkimmst. ** + +Anmörkung: Lis dö gantze Letzn daader durch, ee wennst iewign öbbs unternimmst! + + 1. Druck g . Auf dös hin erscheint auf derer Seitt ganz unt ayn Dar- + standsmeldung mit n Dauttichtnam und n Befand innerhalb dyr Dautticht. + Mörk dyr de Zeilnnummer für n Schrit 3. + +Anmörkung: Müglicherweis seghst aau önn Mörklbefand in n zesmen untern Bild- + schirmögg. Aft ist s "Lindl" (»ruler«) eingstöllt; schau dyrzue mit + n Befelh :help 'ruler' naach. + 2. Druck G , um an s End von dyr Dautticht z kemmen. + gg gibst ein, däßst gan n Anfang von dyr Dautticht aufhinkimmst. + + 3. Gib d Nummer von derer Zeil ein, daa wost vorher warst, und aft non G . + Dös bringt di zrugg gan seler Zeil, daa wost stuenddst, wiest dös eerste + Maal g gadruckst. + + 4. Wennst di sicher gnueg füelst, aft füer d Schritt 1 hinst 3 aus. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 4.2: DYR BEFELH ZO N SUECHEN + + + ** Zipf / und dyrnaach aynn Ausdruk, um selbignen zo n Suechen. ** + + 1. Du gibst also in dyr Befelhsartweis s Zaichen / ein. Dös sel wie aau dyr + Mörkl erscheinend drauf unt auf n Schirm, netty wie bei dyr Faudung : . + + 2. Ietz zipf 'Faeeler' . Netty um dös 'Faeeler' willst ietz suechen. + + 3. Willst um gnaun dönn Ausdruk weitersuechen, zipf ainfach n (wie »next«). + Willst hinzrugg suechen, aft gibst N ein. + + 4. Um von Haus aus zruggaus z suechen, nimm ? statt / her. + + 5. Dyrmitst wider daa hinkimmst, wost herkemmen bist, druck o, und dös + öfter, wennst weiter zrugg willst. Mit i widerum kimmst vorwärts. + +---> Aynn Faeler schreibt myn nit "Faeeler"; Faeeler ist ayn Faeler + +Anmörkung: Wenn d Suech s Dauttichtend dyrraicht haat, geet s eyn n Anfang wi- + der weiter dyrmit, men Sach dyr Schaltter 'wrapscan' wär auf aus. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 4.3: DE GÖGNKLAMMERN FINDDN + + + ** Zipf % , um de entspröchete Klammer ) , ] older } z finddn. ** + + 1. Sötz önn Mörkl auf iewign aine von dene drei Klammern ( , [ older { + in dyr untignen Zeil, wo mit ---> angmörkt ist. + + 2. Ietzet zipf s Zaichen % . + + 3. Dyr Mörkl geet ietz auf de pässete schliessete Klammer. + + 4. Ietz demmlt % , und dyrmit kimmst gan dyr öffneretn Klammer zrugg. + + 5. Sötz önn Mörkl auf ayn anderne Klammer von ({[]}) und pröblt % aus. + +---> Dös ( ist blooß ayn Pochzeil ( mit [ verschaidne ] { Klammern } drinn. )) + +Anmörkung: Um dö Müglichkeit gaast bsunders froo sein, wennst aynmaal in aynn + Spaichgwort verzweiflt ayn faelete Gögnklammer suechst! + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 4.4: D ERSÖTZUNGSFAUDUNG (»substitute«) + + + ** Zipf :s/alt/neu/g , um 'alt' durch 'neu' zo n Ersötzn. ** + + 1. Gee mit n Mörkl zo dyr unt steehetn mit ---> angmörktn Zeil. + + 2. Zipf :s/dee/de . Der Befelh ersötzt alsnan grad dös +eerste "dee", + wo vürkimmt. + + 3. Ietz pröblt s mit :s/dee/de/g . Dös zuesötzliche g ("Pflok" nennt myn + öbbs Sölchers) bewirkt, däß allss, was dyrmit kennzaichnet ist, innerhalb + von dyr ainn Zeil ersötzt werd. + +---> Dee schoenste Zeit, däß myn dee Blüemln anschaut, ist dee schoene Lan- + gesszeit. + 4. Um ietz allsand Suechbegriff innerhalb von zwo Zeiln zo n Öndern, zipf + :#,#s/alt/neu/g , wobei # ieweils für de eerste und lösste Zeil von dönn + Pfraich steet. + :%s/alt/neu/g zipfst, däßst d Vürkemmen in dyr gantzn Dautticht öndertst. + Mit :%s/alt/neu/gc finddst allsand Vürkemmen in dyr gsamtn Dautticht; + daa werst aber zeerst non gfraagt, obst ys ersötzn willst older nity. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ZAMMENFASSUNG VON DYR LETZN 4 + + 1. g zaigt dönn ietzundn Dauttichtbefand und önn Darstand dyrvon an. + G bringt di an s End von dyr Dautticht. + G bringt di gan dyr entspröchetn Zeilnnummer. + gg bringt di zo dyr eerstn Zeil. + + 2. D Eingaab von / mit aynn Ausdruk suecht VÜRSHLING um dönn Ausdruk. + Gibst ? und aynn Suechbegrif ein, suecht s um dönn ÄRSHLING. + Zipf naach ayner Suech n ; naacherd werd in de gleiche Richtung weiter- + gsuecht. Mit N geet s umkeerter weiter. + o bringt di zo ölterne Befändd zrugg, i zo neuerne. + + 3. D Eingaab von % , wenn dyr Mörkl auf ainer von dene Klammern steet: ({[ + )]} , bringt di zo dyr Gögnklammer. + + 4. Um dös eerste Vürkemmen von "alt" in ayner Zeil durch "neu" z ersötzn, + zipf :s/alt/neu . + Um allsand in ayner Zeil z ersötzn, zipf :s/alt/neu/g . + Mechst allss in zwo Zeiln ersötzn, demmlt zo n Beispil :5,6s/alt/neu/g . + Mechst allss in dyr gantzn Dautticht ersötzn, gib ein: :%s/alt/neu/g . + Willst ayn ieds Maal bstaetln, höng 'c' wie »confirm« hint anhin. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 5.1: ZWISCHNDRINN AYNN AUSSERIGNEN BEFELH AUSFÜERN + + + ** Willst ayn Gfäßfaudung ausfüern, gib ainfach dö sel naach :! ein. ** + + 1. Zipf dönn bekanntn Befelh : , dyrmitst mit n Mörkl auf n Bildschirm + ganz abhin kimmst. Draufhin kanst aynn gwonen Gfäßbefelh eingöbn. + + 2. Zeerst kimmt aber non ayn Ruefzaichen ! . Und ietz haast de Müglich- + keit, ayn beliebige ausserige Gfäßfaudung auszfüern. + + 3. Als Beispil zipf :!ls ; und schoon haast ayn Auflistung von deinn + Verzaichniss, netty wie wennst ganz gwon in n Eingib wärst. Geet ls + aus iewign aynn Grund nit, aft pröblt s mit :!dir . + +Also non aynmaal: Mit dönn Angang kan ayn iede beliebige ausserige Faudung aus- + gfüert werdn, aau mit Auerwerdd. + +Und wolgmörkt: Allsand Befelh, wo mit : angeend, müessend mit bstö- + tigt werdn. Dös dyrsagn myr vürbaß niemer. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 5.2: NON MEERER DRÜBER, WIE MYN DAUTTICHTN SCHREIBT + + + ** Um öbbs Gönderts neu z speichern, zipf :w NEUER_DAUTTICHTNAM. ** + + 1. Zipf :!dir older :!ls , däßst dyr ayn Auflistung von deinn Verzaich- + niss ausherlaasst. Däßst dyrnaach eingöbn muesst, waisst ee schoon. + + 2. Suech dyr aynn Dauttichtnam aus, dönn wo s non nit geit, öbbenn POCH. + + 3. Ietz demmlt: :w POCH (also mit POCH als dönn neuen Dauttichtnam). + + 4. Dös speichert ietz de gantze Dautticht, also önn Wimmschainer, unter dönn + Nam POCH. Dös kanst leicht überprüeffen, indem däßst ainfach :!ls older + :!dir zipfst und dyrmit deinn Verzaichnissinhalt seghst. + +Anmörkung: Stigst ietz aus n Wimm aus und gännst n aft wider mit vim POCH , + naacherd wär dö Dautticht ayn gnaune Aamum von n Schainer dyrselbn, + wiest n gspeichert haast. + + 5. Ietz verweitert dö Dautticht - fallsst s Fenstl haast - , mit :!del POCH + beziehungsweis bei aynn Ainslgebäu mit :!rm POCH . +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 5.3: AYNN TAIL VON N GWORT ZO N SPEICHERN AUSWALN + +** Um aynn Tail von dyr Dautticht z speichern, zipf v [Wolend] :w DAUTTICHT ** + + 1. Ruck önn Mörkl auf netty dö Zeil daader. + + 2. Demmlt v und gee mit n Mörkl auf dönn fümftn Auflistungspunt untet. Du + seghst glei, däß s Gwort vürherghöbt erscheint. + + 3. Druck s Zaichen : . Ganz unt auf n Bildschirm erscheint :'<,'> . + + 4. Zipf w POCH , wobei s dönn Dauttichtnam POCH non nit geit. Vergwiß di, + däßst dös :'<,'>w POCH aau +seghst, ee wennst druckst. + + 5. Dyr Wimm schreibt de ausgwaltn Zeil eyn de Dautticht POCH einhin. Benutz + :!dir older :!ls , däßst dös überprüeffst. Lösh s fein nit öbbenn! Mir + brauchend s nömlich für de naehste Letzn. + +Anmörkung: Druckt myn v , ginnt d Sichtisch-Auswal. Du kanst mit n Mörkl um- + aynandfarn, um d Auswal z veröndern. Drafter kan myn mit yn aynn + Pfemerer mit dönn Gwort öbbs machen. Zo n Beispil löscht d dös + Gwort. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 5.4: EINLÖSN UND ZAMMENFÜERN VON DAUTTICHTN + + + ** Um önn Inhalt von ayner Dautticht einzlösn, zipf :r DAUTTICHTNAM ** + + 1. Sötz önn Mörkl über dö Zeil daader. + +OBACHT: Aft däßst önn Schrit 2 ausgfüert haast, seghst auf aynmaal öbbs aus + dyr Letzn 5.3. Bewög di naacherd wider abwärts, dyrmitst dö Letzn wi- + derfinddst. + 2. Ietz lis dein Dautticht POCH ein, indem däßst d Faudung :r POCH aus- + füerst, wobei wie gsait POCH für dönn von dir ausgsuechtn Dauttichtnam + steet. De einglösne Dautticht werd unterhalb dyr Mörklzeil eingfüegt. + + 3. Um zo n Überprüeffen, ob de Dautticht aau gwiß einglösn ist, gee zrugg; + und du seghst, däß s ietz zwo Ausförtigungen von dyr Letzn 5.3. geit, s + Urniss und de eingfüegte Dauttichtfassung. + +Anmörkung: Du kanst aau d Ausgaab von aynn Ausserigbefelh einlösn. Zo n Bei- + spil list :r !ls d Ausgaab von dyr Faudung ls ein und füegt s + unterhalb n Mörkl ein. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ZAMMENFASSUNG VON DYR LETZN 5 + + + 1. :!FAUDUNG füert aynn ausserignen Befelh aus. + + Daader ayn Öttlych gwänddte Beispiler: + (Fenstl) (Ainsl - Leinsl) + :!dir :!ls - listt s Verzaichniss auf. + :!del DAUTTICHT :!rm DAUTTICHT - verweitert sele Dautticht. + + 2. :w DAUTTICHT speichert de ietzunde Wimmdautticht unter dönn besagtn Nam. + + 3. v WOLEND :w DAUTTICHTNAM schreibt de sichtisch ausgwaltn Zeiln eyn de + Dautticht mit seln Nam. + + 4. :r DAUTTICHTNAM ladt sele Dautticht und füegt s unterhalb n Mörklbefand + ein. + + 5. :r !dir list d Ausgaab von dyr Faudung dir und füegt s unterhalb n + Mörklbefand ein. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 6.1: ZEIL ÖFFNEN (»open«) + + + ** Zipf o, um ayn Zeil unterhalb n Mörkl z öffnen und eyn d ** + ** Einfüegartweis z kemmen. ** + + 1. Bewög önn Mörkl zo dyr eerstn mit ---> angmörktn Zeil unt. + + 2. Zipf o (klain), um ayn Zeil UNTERHALB n Mörkl z öffnen und mit dyr Ein- + füegartweis weiterztuen. + + 3. Ietz zipf ayn Weeng ayn Gwort und druck , um d Einfüegartweis z ver- + laassn. +---> Mit o werd dyr Mörkl auf de offene Zeil in dyr Einfüegartweis gsötzt. + + 4. Um ayn Zeil OBERHALB n Mörkl aufzmachen, gib ainfach aynn groosss O statt + yn aynn klainen ein. Versuech dös auf dyr untignen Zeil. + +---> Öffnet ayn Zeil über derer daader mit O , wenn dyr Mörkl auf derer Zeil + ist. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 6.2: GWORT ANFÜEGN (»append«) + + + ** Zipf a , um öbbs NAACH n Mörkl einzfüegn. ** + + 1. Bewög önn Mörkl gan n Anfang von dyr eerstn Üebungszeil mit ---> unt. + + 2. Druck e , hinst däß dyr Mörkl an n End von Zei steet. + + 3. Zipf ayn klains a , um öbbs NAACH n Mörkl anzfüegn. + + 4. Vergöntz dös Wort wie in dyr Zeil drunter. Druck , um d Schreib-Art- + weis z verlaassn. + + 5. Bewög di mit e zo n naehstn ungantzn Wort und widerhol d Schritt 3 und + 4. + +---> Dö Ze biett ayn Glögn , ayn Gwort in ayner Zeil anzfü. +---> Dö Zeil biett ayn Glögnet, ayn Gwort in ayner Zeil anzfüegn. + +Anmörkung: a , i und A bringend ainn gleichermaaßn eyn d Einfüegartweis; + dyr ainzige Unterschaid ist, WO mit n Einfüegn angfangt werd. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 6.3: AYN ANDERNE WEIS ZO N ERSÖTZN (»replace«) + + + ** Demmlt ayn groosss R , um meerer als wie grad ain Zaichen z ersötzn. ** + + 1. Bewög önn Mörkl zo dyr eerstn untignen, mit ---> angmörktn Zeil. + Gee mit n Mörkl gan n Anfang von n eerstn xxx . + + 2. Ietz druck R und zipf sele Zal, wo drunter in dyr zwaittn Zeil steet, + yso däß de sel s xxx ersötzt. + + 3. Druck , um d Ersötzungsartweis z verlaassn. Du gspannst, däß dyr + Rest von dyr Zeil unveröndert bleibt. + + 4. Äfert die Schritt, um dös überblibne xxx z ersötzn. + +---> S Zunddn von 123 zo xxx ergibt xxx. +---> S Zunddn von 123 zo 456 ergibt 579. + +Anmörkung: D Ersötzungsartweis ist wie d Einfüegartweis, aber ayn ieds eindem- + mlte Zaichen löscht ayn vorhanddns. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 6.4: GWORT AAMEN UND EINFÜEGN + + ** Benutz önn Pfemerer y , um öbbs z aamen, und p , um öbbs einzfüegn. ** + + 1. Gee zo dyr mit ---> angmörktn Zeil unt und sötz önn Mörkl hinter "a)". + + 2. Ginn d Sichtisch-Artweis mit v und bewög önn Mörkl gnaun vor "eerste". + + 3. Zipf y , um dönn vürherghöbtn Tail z aamen. + + 4. Bewög önn Mörkl gan n End von dyr naehstn Zeil: j$ + + 5. Demmlt p , um dös Gwort einzfüegn, und aft: a zwaitte . + + 6. Benutz d Sichtischartweis, um " Eintrag." auszwaln, aam s pfelfs y, be- + wög di gan n End von dyr naehstn Zeil mit j$ und füeg s Gwort dortn mit + p an. + +---> a) dös ist dyr eerste Eintrag. + b) + +Anmörkung: Du kanst y aau als Pfemerer verwenddn; yw aamt ain Wort. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 6.5: SCHALTTER SÖTZN + +** Sötz aynn Schaltter yso, däß ayn Suech older Ersötzung Grooß- und Klain- ** + ** schreibung übergeet. ** + + 1. Suech um 'übergee", indem däßst /übergee eingibst. + Widerhol d Suech ayn Öttlych Maal, indem däßst de Tastn n druckst. + + 2. Sötz de Zwisl - önn Schaltter - 'ic' (»ignore case«), indem däßst :set ic + eingibst. + 3. Ietz suech wider um 'übergee' und tue aau wider mit n weiter. Daa fallt + dyr auf, däß ietz öbbenn aau Übergee und ÜBERGEE hergeet. + + 4. Sötz de Zwisln 'hlsearch' und 'incsearch' pfelfs: :set hls is + + 5. Widerhol d Suech und bobacht, was ietz gschieght: /übergee + + 6. Däßst grooß und klain wider gwon unterscheidst, zipf: :set noic + +Anmörkung: Mechst de Tröffer niemer vürherghöbt seghn, gib ein: :nohlsearch +Anmörkung: Sollt klain/grooß bei ayner ainzignen Suech wurst sein, benutz \c + in n Suechausdruk: /übergee\c +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ZAMMENFASSUNG VON DYR LETZN 6 + + 1. Zipf o , um ayn Zeil UNTERHALB n Mörkl z öffnen und d Einfüegartweis z + ginnen. + Zipf O , um ayn Zeil OBERHALB n Mörkl z öffnen. + + 2. Zipf a , um NAACH n Mörkl ayn Gwort einzfüegn. + Zipf A , um ayn Gwort naach n Zeilnend anzfüegn. + + 3. D Faudung e bringt di gan n End von aynn Wort. + + 4. Dyr Pfemerer y (»yank«) aamt öbbs, p (»put«) füegt dös ein. + + 5. Ayn groosss R geet eyn d Ersötzungsartweis, hinst däß myn druckt. + + 6. D Eingaab von ":set xxx" sötzt de Zwisl "xxx". Ayn Öttlych Zwisln seind: + 'ic' 'ignorecase' Grooß/klain wurst bei ayner Suech + 'is' 'incsearch' Zaig aau schoon ayn Tailüberainstimmung + 'hls' 'hlsearch' Höb allsand pässetn Ausdrück vürher + Dyr Schaltternam kan in dyr Kurz- older Langform angöbn werdn. + + 7. Stöll yn ayner Zwisl "no" voran, däßst ys abschalttst: :set noic +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 7.1: AYN HILFGWORT AUFRUEFFEN + + + ** Nutz dös einbaute Hilfgebäu, de "Betribsanlaittung" ** + + Eyn n Wimm ist ayn ausfüerliche "Gebrauchsanweisung" einbaut. Für s Eerste + pröblt ainfach ains von dene dreu aus: + - Druck d -Tastn, wennst öbbenn aine haast. + - Druck de Tastn , fallsst ys haast. + - Zipf :help + + Lis di eyn s Hilffenster ein, dyrmitst draufkimmst, wie dös mit dyr Hilf geet. + Demmlt w w , um von ainn Fenster zo n andern zo n Springen. + Demmlt :q , um s Hilffenster zo n Schliessn. + + Du kanst zo so guet wie allssand ayn Hilf finddn, indem däßst yn dyr Faudung + :help aynn Auerwerd naachstöllst und istig nit vergisst. Pröblt dös: + + :help w + :help c_CTRL-D + :help insert-index + :help user-manual +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 7.2: ERSTÖLL AYN GIN-SCHRIPF + + + ** Mutz önn Wimm mit de einbautn Faehigkeitn auf ** + + Dyr Wimm besitzt ayn Wösn Schäftungen, wo über n Urwimm aushingeend, aber de + meerern dyrvon seind in dyr Vorgaab ausgschaltt. Dyrmitst meerer aus n Wimm + ausherholst, erstöllst ayn "vimrc"-Dautticht. + + 1. Lög ayn "vimrc"-Dautticht an; dös geet ie naach Betribsgebäu verschidn: + :e ~/.vimrc für s Ainsl + :e $VIM/_vimrc bei n Fenstl + + 2. Ietz lis önn Inhalt von dyr Beispil-"vimrc"-Dautticht ein: + :r $VIMRUNTIME/vimrc_example.vim + + 3. Speichert de Dautticht mit: + :w + + 4. Bei n naehstn Gin von n Wimm ist aft d Füegnussvürherhöbung zuegschaltt. + Du kanst dyr allss eyn dö Dautticht einhinschreibn, wasst bständig habn + willst. Meerer dyrzue erfarst unter: :help vimrc-intro +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 7.3: VERGÖNTZN + + + ** Befelhszeilnvergöntzung mit d und ** + + 1. Vergwiß di, däß dyr Wimm nit auf n Urwimm-"Glais" fart: :set nocp + + 2. Schaug naach, wölcherne Dauttichtn däß s in n Verzaichniss geit: :!ls + older :!dir + 3. Zipf önn Anfang von ayner Faudung: :e + + 4. Druck d , und dyr Wimm zaigt ayn Listn von Faudungen, wo mit "e" + angeend. + 5. Druck , und dyr Wimm vervollstöndigt önn Faudungsnam zo ":edit". + + 6. Füeg ayn Laerzaichen und önn Anfang von ayner besteehetn Dautticht an: + :edit DAU + + 7. Druck . Dyr Wimm vergöntzt önn Nam, dös haisst, wenn yr aindeuttig + ist. +Anmörkung: D Vergöntzung geit s für aynn Hauffen Faudungen. Versuech ainfach + d und . Bsunders nützlich ist dös bei :help . +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ZAMMENFASSUNG VON DYR LETZN 7 + + + 1. Zipf :help older druck older , um ayn Hilffenster z öffnen. + + 2. Zipf :help FAUDUNG , um auf ayn Hilf gan aynn Befelh z kemmen. + + 3. Zipf w w , um zo n andern Fenster z springen. + + 4. Zipf :q , um s Hilffenster z schliessn. + + 5. Erstöll ayn vimrc-Ginschripf zuer Sicherung von deine Mötzneinstöllungen. + + 6. Druck d, aft däßst naach : mit ayner Faudung angfangt haast, dyr- + mitst mügliche Vergöntzungen anzaigt kriegst. + Druck für ain Vervollstöndigung yllain. + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + Dös wär ietzet s End von n Wimmschainer. Gangen ist s daa drum, aynn kurtzn + und bündignen Überblik über s Blat WIMM z lifern, netty vil gnueg, däß myn + für s Eerste wirklich öbbs dyrmit anfangen kan. Dyrmit ist s aber auf kain + Weitn non nit taan; dyr Wimm haat schoon non vil meerer auf Lager. Lis als + Naehsts aynmaal s Benutzerhandbuech: :help user-manual . + + Zo n Weiterlösn und Weiterlernen wör dös Buech daader zo n Empfelhen: + Vim - Vi Improved - von n OUALLINE Steve + Verlaag: New Riders + Dös ist dös eerste Buech, wo ganz yn n Wimm gwidmt ist, netty dös Grechte für + Anfönger. Es haat ayn Wösn Beispiler und aau Bilder drinn. + See http://iccf-holland.org/click5.html + + Dös folgete Buech ist schoon ölter und meerer über n Urwimm als wie über n + Wimm, aber aau zo n Empfelhen: Textbearbeitung mit dem vi-Editor - von dyr + LAMB Linda und n ROBBINS Arnold - Verlaag O'Reilly - Buechlaittzal (ISBN): + 3897211262 + In dönn Buech kan myn fast allss finddn, was myn mit n Urwimm angeen mecht. + De söxte Ausgaab enthaltt aau schoon öbbs über n Wimm. + Als ietzunde Bezugniss für d Fassung 6.2 und ayn pfrenge Einfüerung dient + dös folgete Buech: + vim ge-packt von n WOBST Reinhard + mitp-Verlaag, Buechlaittzal 3-8266-1425-9 + Trotz dyr recht pfrengen Darstöllung ist s durch seine viln nützlichnen Bei- + spiler aau für Einsteiger grad grecht. Probhaeupster und de Beispilschripfer + seind zesig zo n Kriegn; see http://iccf-holland.org/click5.html + + Verfasst habnd dönn Schainer dyr PIERCE Michael C. und WARE Robert K. von dyr + Kolraader Knappnschuel (Colorado School of Mines). Er beruet auf Entwürff, wo + dyr SMITH Charles von dyr Kolraader Allschuel (Colorado State University) + zuer Verfüegung gstöllt haat. Gundpost: bware@mines.colorado.edu. + Für n Wimm haat n dyr MOOLENAAR Bram barechtt. + De bairische Übersötzung stammt von n HELL Sepp 2009. Sein Gundpostbrächt ist + sturmibund@t-online.de + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + + + + + diff --git a/runtime/tutor/tutor.bj.utf-8 b/runtime/tutor/tutor.bj.utf-8 new file mode 100644 index 00000000..80c3aded --- /dev/null +++ b/runtime/tutor/tutor.bj.utf-8 @@ -0,0 +1,987 @@ +=============================================================================== += G o t i k a m i n n W I M M - S c h a i n e r - Fassung 1.7D = +=============================================================================== + + Dyr Wimm ist ayn gro mächtigs Blat, dös was mit aynn Wösn Befelh aufwartt; z + vil, däß myn s allsand in aynn Schainer wie dönn daader unterbräng. Der + Schainer ist yso aufbaut, däß yr halt netty die Befelh allsand bringt, wost + brauchst, däßst mit iem für s Eerste wirklich öbbs anfangen kanst. + Durchhinarechtn kanst di, wennst willst, in ayner halbetn Stund; dös haisst, + wennst di nit grooß mit n Pröbln und Tüftln aufhaltst. + + OBACHT: + Die Faudungen, wost daader finddst, gaand istig s Gwort öndern. Dösswögn + machst eyn n Böstn glei ayn Aamum von derer Dautticht daader. Haast alsnan + dös Gwort daader mit n Befelh "vimtutor bj" ausherlaassn, ist s ee schoon + ayn Aamum. + Mir kan s nit oft gnueg sagn, däß der Schainer daader istig gan n Üebn + ghoert. Also muesst schoon aau die Befelh ausfüern, wennst ys gscheid ler- + nen willst. Mit n Lösn yllain ist s +nit taan! + + Ietz schaust grad non, däß dein Föststölltastn nit druckt ist; und aft geest + glei aynmaal mit dyr j-Tastn abwärts (yso laaufft dös nömlich), hinst däßst + de gantze Letzn 1.1 auf n Bildschirm haast. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 1.1: MIT N MÖRKL UMAYNANDFARN + +** Dyrmitst mit n Mörkl umaynandkimmst, druck h, j, k und l wie unt zaigt. ** + ^ Ayn Öslsbrugg: + k De Tastn h ist winster und +geet aau gan winster. + < h l > S l leit zesm und richtt si gan zesm. + j S j kan myn wie aynn Pfeil gan unt seghn. + v Mit n k kimmst gan n KOPF. + 1. Ietz ruedertst ainfach mit n Mörkl auf n Bildschirm umaynand, hinst däßst + di sicher füelst. + 2. Halt d Abhin-Tastn (j) druckt; aft rumplt s ainfach weiter. Netty yso + kimmst gan dyr naehstn Letzn. + + 3. Wie gsait, ietz bewögst di also mit derer Tastn gan dyr Letzn 1.2. + +Non öbbs: Allweil, wenn dyr niemer ganz wol ist, wasst öbbenn druckt haast, aft + zipfst ; naacherd bist wider ganz gwon in dyr Befelhs-Artweis. + + + Nöbnbei gsait kimmst gwonerweil aau mit de Pfeiltastnen weiter. Aber + hjkl seind z haissn s Wimm-Urgstain; und de "Hörtn" seind ganz dyr- + für, däß myn bei +dene bleibt. Pröblt s ainfach aus! +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 1.2: ÖNN WIMM AUSSCHALTTN + + + ALSO, EE WENNST ÖBBS VON DAA UNT AUSFÜERST, LIS LIEBER ZEERST DE GANTZE LET- + ZN! + + 1. Druck d -Tastn, dyrmitst aau gwiß in dyr Befelhs-Artweis bist. + + 2. Demmlt :q! . + Daa dyrmit benddst ys Blat und verwirffst allss, wasst öbbenn göndert + haast. + + 3. Balst önn Eingib seghst, gib dö Faudung ein, wo di zo dönn Schainer brun- + gen haat, also vimtutor bj . + + 4. Also, wenn ietz allsse sitzt, naacherd füerst d Schritt 1 hinst 3 aus, mit + wasst ys Blat verlaasst und aft wider einhinkimmst. + +Anmörkung: Mit :q! verwirffst allss, wasst göndert older enther gschribn + haast. In aynn Öttlych Letznen lernst acht, wiest dös allss in ayner + Dautticht speichertst. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 1.3: GWORT BARECHTN - LÖSCHN + + + ** Druck x , dyrmitst dös Zaichen unter n Mörkl löschst. ** + + 1. Bewög di mit n Mörkl auf de mit ---> angmörkte Zeil unt. + + 2. Zo n Faeler Verbössern farst mit n Mörkl netty auf dös Zaichen, dös wo + glöscht ghoert. + + 3. Druck de Tastn x , däßst dös überflüssige Zaichen löschst. + + 4. Ietz tuest so lang weiter mit 2 hinst 4, hinst däß dyr Saz stimmt. + +---> De Kkuue sprangg übber nn Maanad. + + 5. Wenn ietz de Zeil verbössert ist, geest gan dyr Letzn 1.4. weiter. + +Und ganz wichtig: Dyrweilst dönn Schainer durcharechtst, versuech nit öbbenn, + allss auswendig z lernen; nän, lern ainfach mit n Anwenddn! + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 1.4: GWORT BARECHTN - EINFÜEGN + + + ** Druck i , dyrmitst öbbs einfüegst. ** + + 1. Bewög önn Mörkl zo dyr eerstn untignen Zeil, wo mit ---> angeet. + + 2. Dyrmitst de eerste Zeil wie de zwaitte machst, bewög önn Mörkl auf dös + eerste Zaichen NAACH derer Stöll, daa wo s Gwort eingfüegt werdn sollt. + + 3. Druck i und gib dös ein, was abgeet. + + 4. Wenn ieweils ayn Faeler verweitert ist, aft druck ; und dyrmit kimmst + gan dyr Befelhsartweis zrugg. + So, und ietz tuest ainfach yso weiter, hinst däß dyr Saz stimmt. + +---> Daader gt dd öbbs b. +---> Daader geet diend öbbs ab. + + 5. Balst mainst, däßst ys Gwort-Einfüegn kanst, aft geest gan dyr Letzn 1.5. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 1.5: GWORT BARECHTN - ANFÜEGN + + + ** Druck A gan n Gwort Anfüegn. ** + + 1. Gee mit n Mörkl gan dyr eerstn untignen Zeil, wo ayn ---> dyrvor haat. + Daa ist s gleich, wo gnaun dyr Mörkl in derer Zeil steet. + + 2. Demmlt A und gib de entspröchetn Ergöntzungen ein. + + 3. Wennst mit n Anfüegn förtig bist, aft druckst , däßst wider eyn de + Befelhsartweis zruggkimmst. + + 4. So, und ietz geest aft non gan dyr zwaittn mit ---> angmörktn Zeil; und + daadl machst ys netty yso. + +---> In derer Zeil gee + In derer Zeil geet ayn Weeng ayn Gwort ab. +---> Aau daader stee + Aau daader steet öbbs Unvollstöndigs. + + 5. Wennst s Anfüegn von Gwort drauf haast, naacherd gee gan dyr Letzn 1.6. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 1.6: AYN DAUTTICHT BARECHTN + + + ** Mit :wq speichertst ayn Dautticht und verlaasst önn Wimm ganz. ** + + !! OBACHT: Ee wennst mit dönn alln daa unt weitertuest, lis zeerst de gantze + Letzn durch!! + + 1. Verlaaß also s Blat, wie s in dyr Letzn 1.2. haisst, mit :q! ! + + 2. Gib dö Faudung eyn n Eingib ein: vim Schainer . 'vim' ruefft s Blat + auf, und 'Schainer' haisst de Dautticht, wost barechtn willst. Dyrmit + haast also ayn Dautticht, dö wost barechtn kanst. + + 3. Ietz füegst öbbs ein older löschst öbbs, wiest ys in de vorignen Letznen + glernt haast. + + 4. Speichert de gönderte Dautticht und verlaaß önn Wimm mit :wq . + + 5. Schmeiß önn Wimmschainer neu an und gee gan dyr folgetn Zammenfassung. + + 6. Aft däßst de obignen Schritt glösn und käppt haast, kanst ys durchfüern. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ZAMMENFASSUNG VON DYR LETZN 1 + + + 1. Dyr Mörkl werd mit de Tastnen hjkl older aau mit de Pfeiltastnen gsteuert. + h (winst) j (ab) k (auf) l (zes) + + 2. Um önn Wimm umbb n Eingib aus z ginnen, demmlt: vim DAUTTICHT . + + 3. Willst önn Wimm verlaassn und aau allss verwerffen, aft gibst ein: + :q! . + Gan n Verlaassn und Speichern aber zipfst :wq . + + 4. Willst dös Zaichen löschn, daa wo dyr Mörkl drauf ist, demmltst x . + + 5. Willst öbbs vor n Mörkl eingöbn, zipfst i und drafter . + Mechst ys aber eyn s Zeilnend anhinhöngen, benutzt ys A . + Und ainfach naach n Mörkl füegst ys mit a ein . + +Anmörkung: Druckst , kimmst eyn de Befelhsartweis zrugg older brichst ayn + Faudung ab, dö wo dyr schiefgangen ist. + + Ietz tue mit dyr Letzn 2 weiter. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 2.1.: LÖSHFAUDUNGEN + + + ** Demmlt dw , dyrmitst ayn Wort löschst ** + + 1. Druck , dyrmit s aau gwiß ist, däßst in dyr Befelhsartweis bist. + + 2. Bewög önn Mörkl zo dyr mit ---> angmörktn Zeil unt. + + 3. Und daa geest ietz auf n Anfang von aynn Wort, dös wo glöscht ghoert. + + 4. Zipf dw , däßst dös gantze Wort löschst. + + Nöbnbei: Dyr Buechstabn d erscheint auf dyr lösstn Zeil von n Bildschirm, + sobaldst n eingibst. Dyr Wimm wartt ietz drauf, däß öbbs kimmt, al- + so daader ayn w . Seghst freilich öbbs Anderts wie ayn d , + naacherd haast öbbs Falschs demmlt. Druck aft und pröblt + s non aynmaal. +---> Ayn Öttlych Wörter lustig ghoernd nit Fisper eyn dönn Saz einhin. + + 5. Äfert d Schritt 3 und 4, hinst däß dyr Saz pässt, und gee aft gan dyr + Letzn 2.2. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 2.2.: NON MEERER LÖSHFAUDUNGEN + + + ** Gib d$ ein, däßst hinst eyn s Zeilnend löschst. ** + + 1. Druck , dyrmitst aau gwiß in dyr Befelhsartweis bist. + + 2. Bewög önn Mörkl hinst eyn de mit ---> angmörkte Zeil untn. + + 3. Gee mit n Mörkl auf s End von dyr faelerfreien Zeil, NAACH n eerstn . . + + 4. Zipf d$ , däßst hinst eyn s End von dyr Zeil löschst. + +---> Öbber haat s End von dyr Zeil doplt eingöbn. doplt eingöbn. + + + 5. Gee weiter gan dyr Letzn 2.3, dyrmitst versteest, was daader ablaaufft. + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 2.3: PFEMERER UND WOLENDER + + + Vil Faudungen, wo s Gwort öndernd, sötznd si aus aynn Pfemerer und aynn Wo- + lend zamm. Bal i also öbbs löschn will, schreib i ainsting d und aft s "Wo- + lend", dös haisst also, "wolend", "wohin" däß i will - older was i halt gnaun + löschn will. + + + + + + + Daader also, was i wie löschn kan: + w - hinst eyn n Anfang von n naehstn Wort AANE dönn sein eersts Zaichen. + e - gan n End von n ietzundn Wort MIT dönn seinn lösstn Zaichen. + $ - zo n End von dyr Zeil MIT derer irn lösstn Zaichen. + + Also löscht de Tastnfolg de umbb n Mörkl hinst eyn s Wortend. +Anmörkung: Gib i grad dös zwaitte Zaichen yllain ein, ruckt halt dyr Mörkl + entspröchet weiter. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 2.4: MIT AYNN ZÖLER D WOLENDER ÄFERN + + + ** Gib i ayn Zal vor aynn Wolend ein, werd dös Sel halt widerholt. ** + + 1. Bewög önn Mörkl gan n Anfang von dyr Zeil mit ---> dyrvor unt. + + 2. Zipf 2w , däßst mit n Mörkl zwai Wörter weitergeest. + + 3. Zipf 3e , däßst mit n Mörkl auf s End von n drittn Wort kimmst. + + 4. Zipf 0 (aynn Nuller), däßst eyn n Anfang von dyr Zeil hinkimmst. + + 5. Widerhol d Schritt 2 und 3 mit verschaidne Zöler. + + ---> Dös ist ietz grad ayn Zeil zo n drinn Umaynanderruedern. + + 6. Gee weiter gan dyr Letzn 2.5. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 2.5: DURCH AYNN ZÖLER GLEI MEERER LÖSCHN + + + ** Ayn Zal vor aynn Pfemerer äfert dönn um seln Werd. ** + + Also, i mecht löschn, und zwaar öbbs Bestimmts, und dös so und so oft: Daa + dyrzue benutz i aynn Zöler: + d Zöler Wolend (also önn Bewögungsschrit) + + 1. Bewög önn Mörkl gan n eerstn Wort in GROOSSBUECHSTABN in dyr mit ---> an- + gmörktn Zeil. + + 2. Demmlt d2w , dyrmitst de ganz grooßgschribnen Wörter löschst. + + 3. Äfert d Schritt 1 und 2 mit dönn entspröchetn Zöler, dyrmitst de drauf- + folgetn ganz großgschribnen Wörter mit ayner ainzignen Faudung löschst: + + +---> Dö ABC DE Zeil FGHI JK LMN OP mit Wörter ist Q RS TUV ietz berichtigt. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 2.6: ARECHTN AUF ZEILN + + + ** Zipf dd , um ayn gantze Zeil z löschn. ** + + Weil s gro oft vürkimmt, däß myn gantze Zeiln löscht, kaamend schoon d Ent- + wickler von n Urwimm daa drauf, däß myn ainfach dd gan dönn Zwök schreibt. + + + 1. Bewög önn Mörkl gan dyr zwaittn Zeil in n untignen "Gedicht". + 2. Zipf dd , um dö Zeil z löschn. + 3. Ietz bewögst di gan dyr viertn Zeil. + 4. Zipf 2dd , um zwo Zeiln zo n Löschn. + +---> 1) Roosn seind root; +---> 2) Drunter ist s Koot. +---> 3) Veigerln seind blau. +---> 4) Umgrabn tuet s d Sau. +---> 5) D Ur sait de Zeit, +---> 6) Sait, däß s mi freut, +---> 7) Dirndl, dein Gschau. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 2.7: RUGGGÖNGIG MACHEN (RUGGLN) + + + ** Zipf u , dyrmitst de lösstn Faudungen ruggltst ** + ** older U , um ayn gantze Zeil widerherzstölln. ** + + 1. Bewög önn Mörkl gan dyr mit ---> angmörktn Zeil unt und gee dyrmit auf n + eerstn Faeler. + 2. Zipf x , däßst dös eerste z vile Zaichen löschst. + 3. Ietz demmlt u , dyrmitst de lösste Faudung ruggltst. + 4. Ietz behöb allsand Faeler auf dyr Zeil mit dyr Hilf von n Befelh x . + 5. Aft gibst ayn U (grooß) ein, däßst de Zeil wider yso hinbringst, wie s + gwösn ist. + 6. So, und ietz demmltst so oft u , hinst däßst s U und de andern Fau- + dungen rugggöngig gmacht haast. + 7. Und ietzet widerum schreibst so oft r , hinst däßst allsand Be- + felh widerhergstöllt, z haissn allsse rugg-grugglt haast (also d Rugggön- + gigmachungen rugggöngig gmacht). +---> Beerichtig d Faeller voon dehrer Zeiil und sttöll s mitt n Ruggruggln wi- + der her. + 8. Die Faudungen seind gro wichtig; sö helffend ainn närrisch weiter. + Ietz gee weiter gan dyr Zammenfassung von dyr Letzn 2. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ZAMMENFASSUNG VON DYR LETZN 2 + + + 1. Um von n Mörkl aus hinst eyn s naehste Wort zo n Löschn, zipf: dw + 2. Um umbb n Mörkl hinst eyn s End von dyr Zeil zo n Löschn, demmlt d$ + 3. Dyrmitst ayn gantze Zeil löschst, gib ein: dd + 4. Mechst ayn Bewögung, ayn "Wolend", öfters, stöll de entspröchete Zal dyr- + vor: 3dw older aau: d3w + 5. Dyr Pfueg für ayn Önderungsfaudung lautt yso: + Pfemerer [Zal] Bewögungsschrit (Wolend) + Und dös haisst: + Dyr PFEMERER gibt an, WAS taan ghoert, öbbenn d = löschn (»delete«). + [ZAL] - Ayn Zal KAN myn angöbn, wenn myn halt ayn Wolend öfter habn will. + S WOLEND, also dyr Schrit WOHIN, besagt, auf was i aushin will, öbbenn + auf ayn Wort ( w ), s End von dyr Zeil ( $ ) und so weiter. + + 6. Däßst eyn n Anfang von dyr Zeil hinkimmst, schreib aynn Nuller: 0 + + 7. Um öbbs Vorigs wider z ruggln, gib ein: u (klain also) + Um allsand Önderungen in ayner Zeil z ruggln, haast: U (also grooß) + Um "rugg-z-ruggln", also allss wider herzstölln, zipf: r + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 3.1: ANFÜEGN (»put«) + + + ** Zipf p , dyrmitst öbbs gnetty Glöschts naach n Mörkl anfüegst. ** + + 1. Bewög önn Mörkl gan dyr eerstn untignen Zeil mit ---> dyrvor. + + 2. Zipf dd , um sele Zeil z löschn und dyrmit in aynn Wimm-"Roster" zo n + speichern. + + 3. Bewög önn Mörkl gan dyr Zeil c), ÜBER derer, daa wo de glöschte Zeil ein- + hinkemmen sollt. + + 4. So, und ietz gibst ainfach p ein, und schoon haast dö Zeil unter derer + mit n Mörkl drinn. + 5. Äfert d Schritt 2 hinst 4, hinst däßst allsand Zeiln yso naachynaynand + haast, wie s hinghoernd. + +---> d) Kanst du dös aau? +---> b) Veigerln seind blau. +---> c) Bedachtn kan myn lernen. +---> a) Roosn seind root. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 3.2: ERSÖTZN (»replace«) + + + ** Zipf rx , um dös Zaichen unter n Mörkl durch x z ersötzn. ** + + 1. Bewög önn Mörkl zo dyr eerstn untignen Zeil mit ---> dyrvor. + + 2. Bewög önn Mörkl, hinst däß yr auf n eerstn Faeler steet. + + 3. Zipf r und drafter dös Zaichen, wo dyrfür daa hinghoert. + + 4. Widerhol d Schritt 2 und 3, hinst däßst de eerste Zeil gmaeß dyr zwaittn + berichtigt haast: +---> Wie dö Zeit eingobn wurd, wurdnd ainike falsche Zastnen zipft! +---> Wie dö Zeil eingöbn wurd, wurdnd ainige falsche Tastnen zipft! + + 5. Ietz tue mit dyr Letzn 3.3 weiter. + +Anmörkung: Vergiß nit drauf, däßst mit n Anwenddn lernen solltst und nit öbbenn + mit n Auswendiglernen! + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 3.3: ÖNDERN (»change«) + + + ** Um hinst eyn s Wortend z öndern, zipf ce . ** + + 1. Gee mit n Mörkl auf de eerste mit ---> angmörkte Zeil. + + 2. Ietz farst netty auf s "s" von Wstwr hin. + + 3. Zipf ce ein und aft d Wortberichtigung, daader also örter . + + 4. Druck und bewög önn Mörkl gan n naehstn Zaichen, wo göndert ghoert. + + 5. Äfert d Schritt 3 und 4, hinst däß dyr eerste Saz wie dyr zwaitte ist. + +---> Ainige Wstwr von derer Zlww ghhnnd mit n Öndern-Pfemerer gaauu. +---> Ainige Wörter von derer Zeil ghoernd mit n Öndern-Pfemerer göndert. + +ce löscht also s Wort und schlaaufft di eyn d Eingaab-Artweis. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 3.4.: NON MEERER ÖNDERUNGEN PFELFS c + + + ** D Löshfaudung c arechtt mit de nömlichnen Wolender wie dö mit d ** + + 1. Dyr Önder-Pfemerer arechtt anleich wie d Löshfaudung mit d , und zwaar + yso: + c [Zal] Bewögungsschritt (Wolend) + + 2. D Wolender seind de gleichn, öbbenn w für Wort und $ für s Zeilnend. + + + 3. Bewög di zo dyr eerstn untignen Zeil mit ---> . + + 4. Ietz geest auf dönn eerstn Faeler. + + 5. Zipf c$ , gib önn Rest von dyr Zeil wie in dyr zwaittn ein und druck aft + . +---> S End von derer Zeil sollt an de zwaitte daader anglichen werdn. +---> S End von derer Zeil sollt mit n Befelh c$ berichtigt werdn. + +Denk allweil dran, däßst iederzeit mit dyr Ruggtastn Faeler ausbössern kanst. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ZAMMENFASSUNG VON DYR LETZN 3 + + + 1. Um ayn vorher glöschts Gwort anzfüegn, zipf p . Daa dyrmit werd dös + gantze Gwort NAACH n Mörkl angfüegt. Wenn s ayn gantze Zeil gwösn ist, + werd dö sel als de Zeil unterhalb n Mörkl eingfüegt. + + 2. Um dös Zaichen unter n Mörkl, also wo dyr Mörkl ist, z ersötzn, zipf r + und aft dös Zaichen, wost daadl habn willst. + + 3. Dyr Önderungspfemerer ( c = »change«) laasst ainn umbb n Mörkl hinst eyn s + End von n Wolend öndern. Zipf ce , dyrmitst umbb n Mörkl hinst eyn s End + von n Wort öndertst, und c$ hinst eyn s End von dyr Zeil. + + 4. Für d Önderung lautt dyr Pfueg: + + c [Zal] Wolend + +Ietz tue mit dyr naehstn Letzn weiter. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 4.1: MÖRKLSTÖLLUNG UND DAUTTICHTDARSTAND + +** Demmlt g, däßst önn Befand und Darstand von dyr Dautticht anzaigst. ** + ** Zipf G , dyrmitst auf ayn bestimmte Zeil in dyr Dautticht hinkimmst. ** + +Anmörkung: Lis dö gantze Letzn daader durch, ee wennst iewign öbbs unternimmst! + + 1. Druck g . Auf dös hin erscheint auf derer Seitt ganz unt ayn Dar- + standsmeldung mit n Dauttichtnam und n Befand innerhalb dyr Dautticht. + Mörk dyr de Zeilnnummer für n Schrit 3. + +Anmörkung: Müglicherweis seghst aau önn Mörklbefand in n zesmen untern Bild- + schirmögg. Aft ist s "Lindl" (»ruler«) eingstöllt; schau dyrzue mit + n Befelh :help 'ruler' naach. + 2. Druck G , um an s End von dyr Dautticht z kemmen. + gg gibst ein, däßst gan n Anfang von dyr Dautticht aufhinkimmst. + + 3. Gib d Nummer von derer Zeil ein, daa wost vorher warst, und aft non G . + Dös bringt di zrugg gan seler Zeil, daa wost stuenddst, wiest dös eerste + Maal g gadruckst. + + 4. Wennst di sicher gnueg füelst, aft füer d Schritt 1 hinst 3 aus. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 4.2: DYR BEFELH ZO N SUECHEN + + + ** Zipf / und dyrnaach aynn Ausdruk, um selbignen zo n Suechen. ** + + 1. Du gibst also in dyr Befelhsartweis s Zaichen / ein. Dös sel wie aau dyr + Mörkl erscheinend drauf unt auf n Schirm, netty wie bei dyr Faudung : . + + 2. Ietz zipf 'Faeeler' . Netty um dös 'Faeeler' willst ietz suechen. + + 3. Willst um gnaun dönn Ausdruk weitersuechen, zipf ainfach n (wie »next«). + Willst hinzrugg suechen, aft gibst N ein. + + 4. Um von Haus aus zruggaus z suechen, nimm ? statt / her. + + 5. Dyrmitst wider daa hinkimmst, wost herkemmen bist, druck o, und dös + öfter, wennst weiter zrugg willst. Mit i widerum kimmst vorwärts. + +---> Aynn Faeler schreibt myn nit "Faeeler"; Faeeler ist ayn Faeler + +Anmörkung: Wenn d Suech s Dauttichtend dyrraicht haat, geet s eyn n Anfang wi- + der weiter dyrmit, men Sach dyr Schaltter 'wrapscan' wär auf aus. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 4.3: DE GÖGNKLAMMERN FINDDN + + + ** Zipf % , um de entspröchete Klammer ) , ] older } z finddn. ** + + 1. Sötz önn Mörkl auf iewign aine von dene drei Klammern ( , [ older { + in dyr untignen Zeil, wo mit ---> angmörkt ist. + + 2. Ietzet zipf s Zaichen % . + + 3. Dyr Mörkl geet ietz auf de pässete schliessete Klammer. + + 4. Ietz demmlt % , und dyrmit kimmst gan dyr öffneretn Klammer zrugg. + + 5. Sötz önn Mörkl auf ayn anderne Klammer von ({[]}) und pröblt % aus. + +---> Dös ( ist blooß ayn Pochzeil ( mit [ verschaidne ] { Klammern } drinn. )) + +Anmörkung: Um dö Müglichkeit gaast bsunders froo sein, wennst aynmaal in aynn + Spaichgwort verzweiflt ayn faelete Gögnklammer suechst! + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 4.4: D ERSÖTZUNGSFAUDUNG (»substitute«) + + + ** Zipf :s/alt/neu/g , um 'alt' durch 'neu' zo n Ersötzn. ** + + 1. Gee mit n Mörkl zo dyr unt steehetn mit ---> angmörktn Zeil. + + 2. Zipf :s/dee/de . Der Befelh ersötzt alsnan grad dös +eerste "dee", + wo vürkimmt. + + 3. Ietz pröblt s mit :s/dee/de/g . Dös zuesötzliche g ("Pflok" nennt myn + öbbs Sölchers) bewirkt, däß allss, was dyrmit kennzaichnet ist, innerhalb + von dyr ainn Zeil ersötzt werd. + +---> Dee schoenste Zeit, däß myn dee Blüemln anschaut, ist dee schoene Lan- + gesszeit. + 4. Um ietz allsand Suechbegriff innerhalb von zwo Zeiln zo n Öndern, zipf + :#,#s/alt/neu/g , wobei # ieweils für de eerste und lösste Zeil von dönn + Pfraich steet. + :%s/alt/neu/g zipfst, däßst d Vürkemmen in dyr gantzn Dautticht öndertst. + Mit :%s/alt/neu/gc finddst allsand Vürkemmen in dyr gsamtn Dautticht; + daa werst aber zeerst non gfraagt, obst ys ersötzn willst older nity. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ZAMMENFASSUNG VON DYR LETZN 4 + + 1. g zaigt dönn ietzundn Dauttichtbefand und önn Darstand dyrvon an. + G bringt di an s End von dyr Dautticht. + G bringt di gan dyr entspröchetn Zeilnnummer. + gg bringt di zo dyr eerstn Zeil. + + 2. D Eingaab von / mit aynn Ausdruk suecht VÜRSHLING um dönn Ausdruk. + Gibst ? und aynn Suechbegrif ein, suecht s um dönn ÄRSHLING. + Zipf naach ayner Suech n ; naacherd werd in de gleiche Richtung weiter- + gsuecht. Mit N geet s umkeerter weiter. + o bringt di zo ölterne Befändd zrugg, i zo neuerne. + + 3. D Eingaab von % , wenn dyr Mörkl auf ainer von dene Klammern steet: ({[ + )]} , bringt di zo dyr Gögnklammer. + + 4. Um dös eerste Vürkemmen von "alt" in ayner Zeil durch "neu" z ersötzn, + zipf :s/alt/neu . + Um allsand in ayner Zeil z ersötzn, zipf :s/alt/neu/g . + Mechst allss in zwo Zeiln ersötzn, demmlt zo n Beispil :5,6s/alt/neu/g . + Mechst allss in dyr gantzn Dautticht ersötzn, gib ein: :%s/alt/neu/g . + Willst ayn ieds Maal bstaetln, höng 'c' wie »confirm« hint anhin. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 5.1: ZWISCHNDRINN AYNN AUSSERIGNEN BEFELH AUSFÜERN + + + ** Willst ayn Gfäßfaudung ausfüern, gib ainfach dö sel naach :! ein. ** + + 1. Zipf dönn bekanntn Befelh : , dyrmitst mit n Mörkl auf n Bildschirm + ganz abhin kimmst. Draufhin kanst aynn gwonen Gfäßbefelh eingöbn. + + 2. Zeerst kimmt aber non ayn Ruefzaichen ! . Und ietz haast de Müglich- + keit, ayn beliebige ausserige Gfäßfaudung auszfüern. + + 3. Als Beispil zipf :!ls ; und schoon haast ayn Auflistung von deinn + Verzaichniss, netty wie wennst ganz gwon in n Eingib wärst. Geet ls + aus iewign aynn Grund nit, aft pröblt s mit :!dir . + +Also non aynmaal: Mit dönn Angang kan ayn iede beliebige ausserige Faudung aus- + gfüert werdn, aau mit Auerwerdd. + +Und wolgmörkt: Allsand Befelh, wo mit : angeend, müessend mit bstö- + tigt werdn. Dös dyrsagn myr vürbaß niemer. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 5.2: NON MEERER DRÜBER, WIE MYN DAUTTICHTN SCHREIBT + + + ** Um öbbs Gönderts neu z speichern, zipf :w NEUER_DAUTTICHTNAM. ** + + 1. Zipf :!dir older :!ls , däßst dyr ayn Auflistung von deinn Verzaich- + niss ausherlaasst. Däßst dyrnaach eingöbn muesst, waisst ee schoon. + + 2. Suech dyr aynn Dauttichtnam aus, dönn wo s non nit geit, öbbenn POCH. + + 3. Ietz demmlt: :w POCH (also mit POCH als dönn neuen Dauttichtnam). + + 4. Dös speichert ietz de gantze Dautticht, also önn Wimmschainer, unter dönn + Nam POCH. Dös kanst leicht überprüeffen, indem däßst ainfach :!ls older + :!dir zipfst und dyrmit deinn Verzaichnissinhalt seghst. + +Anmörkung: Stigst ietz aus n Wimm aus und gännst n aft wider mit vim POCH , + naacherd wär dö Dautticht ayn gnaune Aamum von n Schainer dyrselbn, + wiest n gspeichert haast. + + 5. Ietz verweitert dö Dautticht - fallsst s Fenstl haast - , mit :!del POCH + beziehungsweis bei aynn Ainslgebäu mit :!rm POCH . +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 5.3: AYNN TAIL VON N GWORT ZO N SPEICHERN AUSWALN + +** Um aynn Tail von dyr Dautticht z speichern, zipf v [Wolend] :w DAUTTICHT ** + + 1. Ruck önn Mörkl auf netty dö Zeil daader. + + 2. Demmlt v und gee mit n Mörkl auf dönn fümftn Auflistungspunt untet. Du + seghst glei, däß s Gwort vürherghöbt erscheint. + + 3. Druck s Zaichen : . Ganz unt auf n Bildschirm erscheint :'<,'> . + + 4. Zipf w POCH , wobei s dönn Dauttichtnam POCH non nit geit. Vergwiß di, + däßst dös :'<,'>w POCH aau +seghst, ee wennst druckst. + + 5. Dyr Wimm schreibt de ausgwaltn Zeil eyn de Dautticht POCH einhin. Benutz + :!dir older :!ls , däßst dös überprüeffst. Lösh s fein nit öbbenn! Mir + brauchend s nömlich für de naehste Letzn. + +Anmörkung: Druckt myn v , ginnt d Sichtisch-Auswal. Du kanst mit n Mörkl um- + aynandfarn, um d Auswal z veröndern. Drafter kan myn mit yn aynn + Pfemerer mit dönn Gwort öbbs machen. Zo n Beispil löscht d dös + Gwort. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 5.4: EINLÖSN UND ZAMMENFÜERN VON DAUTTICHTN + + + ** Um önn Inhalt von ayner Dautticht einzlösn, zipf :r DAUTTICHTNAM ** + + 1. Sötz önn Mörkl über dö Zeil daader. + +OBACHT: Aft däßst önn Schrit 2 ausgfüert haast, seghst auf aynmaal öbbs aus + dyr Letzn 5.3. Bewög di naacherd wider abwärts, dyrmitst dö Letzn wi- + derfinddst. + 2. Ietz lis dein Dautticht POCH ein, indem däßst d Faudung :r POCH aus- + füerst, wobei wie gsait POCH für dönn von dir ausgsuechtn Dauttichtnam + steet. De einglösne Dautticht werd unterhalb dyr Mörklzeil eingfüegt. + + 3. Um zo n Überprüeffen, ob de Dautticht aau gwiß einglösn ist, gee zrugg; + und du seghst, däß s ietz zwo Ausförtigungen von dyr Letzn 5.3. geit, s + Urniss und de eingfüegte Dauttichtfassung. + +Anmörkung: Du kanst aau d Ausgaab von aynn Ausserigbefelh einlösn. Zo n Bei- + spil list :r !ls d Ausgaab von dyr Faudung ls ein und füegt s + unterhalb n Mörkl ein. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ZAMMENFASSUNG VON DYR LETZN 5 + + + 1. :!FAUDUNG füert aynn ausserignen Befelh aus. + + Daader ayn Öttlych gwänddte Beispiler: + (Fenstl) (Ainsl - Leinsl) + :!dir :!ls - listt s Verzaichniss auf. + :!del DAUTTICHT :!rm DAUTTICHT - verweitert sele Dautticht. + + 2. :w DAUTTICHT speichert de ietzunde Wimmdautticht unter dönn besagtn Nam. + + 3. v WOLEND :w DAUTTICHTNAM schreibt de sichtisch ausgwaltn Zeiln eyn de + Dautticht mit seln Nam. + + 4. :r DAUTTICHTNAM ladt sele Dautticht und füegt s unterhalb n Mörklbefand + ein. + + 5. :r !dir list d Ausgaab von dyr Faudung dir und füegt s unterhalb n + Mörklbefand ein. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 6.1: ZEIL ÖFFNEN (»open«) + + + ** Zipf o, um ayn Zeil unterhalb n Mörkl z öffnen und eyn d ** + ** Einfüegartweis z kemmen. ** + + 1. Bewög önn Mörkl zo dyr eerstn mit ---> angmörktn Zeil unt. + + 2. Zipf o (klain), um ayn Zeil UNTERHALB n Mörkl z öffnen und mit dyr Ein- + füegartweis weiterztuen. + + 3. Ietz zipf ayn Weeng ayn Gwort und druck , um d Einfüegartweis z ver- + laassn. +---> Mit o werd dyr Mörkl auf de offene Zeil in dyr Einfüegartweis gsötzt. + + 4. Um ayn Zeil OBERHALB n Mörkl aufzmachen, gib ainfach aynn groosss O statt + yn aynn klainen ein. Versuech dös auf dyr untignen Zeil. + +---> Öffnet ayn Zeil über derer daader mit O , wenn dyr Mörkl auf derer Zeil + ist. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 6.2: GWORT ANFÜEGN (»append«) + + + ** Zipf a , um öbbs NAACH n Mörkl einzfüegn. ** + + 1. Bewög önn Mörkl gan n Anfang von dyr eerstn Üebungszeil mit ---> unt. + + 2. Druck e , hinst däß dyr Mörkl an n End von Zei steet. + + 3. Zipf ayn klains a , um öbbs NAACH n Mörkl anzfüegn. + + 4. Vergöntz dös Wort wie in dyr Zeil drunter. Druck , um d Schreib-Art- + weis z verlaassn. + + 5. Bewög di mit e zo n naehstn ungantzn Wort und widerhol d Schritt 3 und + 4. + +---> Dö Ze biett ayn Glögn , ayn Gwort in ayner Zeil anzfü. +---> Dö Zeil biett ayn Glögnet, ayn Gwort in ayner Zeil anzfüegn. + +Anmörkung: a , i und A bringend ainn gleichermaaßn eyn d Einfüegartweis; + dyr ainzige Unterschaid ist, WO mit n Einfüegn angfangt werd. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 6.3: AYN ANDERNE WEIS ZO N ERSÖTZN (»replace«) + + + ** Demmlt ayn groosss R , um meerer als wie grad ain Zaichen z ersötzn. ** + + 1. Bewög önn Mörkl zo dyr eerstn untignen, mit ---> angmörktn Zeil. + Gee mit n Mörkl gan n Anfang von n eerstn xxx . + + 2. Ietz druck R und zipf sele Zal, wo drunter in dyr zwaittn Zeil steet, + yso däß de sel s xxx ersötzt. + + 3. Druck , um d Ersötzungsartweis z verlaassn. Du gspannst, däß dyr + Rest von dyr Zeil unveröndert bleibt. + + 4. Äfert die Schritt, um dös überblibne xxx z ersötzn. + +---> S Zunddn von 123 zo xxx ergibt xxx. +---> S Zunddn von 123 zo 456 ergibt 579. + +Anmörkung: D Ersötzungsartweis ist wie d Einfüegartweis, aber ayn ieds eindem- + mlte Zaichen löscht ayn vorhanddns. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 6.4: GWORT AAMEN UND EINFÜEGN + + ** Benutz önn Pfemerer y , um öbbs z aamen, und p , um öbbs einzfüegn. ** + + 1. Gee zo dyr mit ---> angmörktn Zeil unt und sötz önn Mörkl hinter "a)". + + 2. Ginn d Sichtisch-Artweis mit v und bewög önn Mörkl gnaun vor "eerste". + + 3. Zipf y , um dönn vürherghöbtn Tail z aamen. + + 4. Bewög önn Mörkl gan n End von dyr naehstn Zeil: j$ + + 5. Demmlt p , um dös Gwort einzfüegn, und aft: a zwaitte . + + 6. Benutz d Sichtischartweis, um " Eintrag." auszwaln, aam s pfelfs y, be- + wög di gan n End von dyr naehstn Zeil mit j$ und füeg s Gwort dortn mit + p an. + +---> a) dös ist dyr eerste Eintrag. + b) + +Anmörkung: Du kanst y aau als Pfemerer verwenddn; yw aamt ain Wort. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 6.5: SCHALTTER SÖTZN + +** Sötz aynn Schaltter yso, däß ayn Suech older Ersötzung Grooß- und Klain- ** + ** schreibung übergeet. ** + + 1. Suech um 'übergee", indem däßst /übergee eingibst. + Widerhol d Suech ayn Öttlych Maal, indem däßst de Tastn n druckst. + + 2. Sötz de Zwisl - önn Schaltter - 'ic' (»ignore case«), indem däßst :set ic + eingibst. + 3. Ietz suech wider um 'übergee' und tue aau wider mit n weiter. Daa fallt + dyr auf, däß ietz öbbenn aau Übergee und ÜBERGEE hergeet. + + 4. Sötz de Zwisln 'hlsearch' und 'incsearch' pfelfs: :set hls is + + 5. Widerhol d Suech und bobacht, was ietz gschieght: /übergee + + 6. Däßst grooß und klain wider gwon unterscheidst, zipf: :set noic + +Anmörkung: Mechst de Tröffer niemer vürherghöbt seghn, gib ein: :nohlsearch +Anmörkung: Sollt klain/grooß bei ayner ainzignen Suech wurst sein, benutz \c + in n Suechausdruk: /übergee\c +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ZAMMENFASSUNG VON DYR LETZN 6 + + 1. Zipf o , um ayn Zeil UNTERHALB n Mörkl z öffnen und d Einfüegartweis z + ginnen. + Zipf O , um ayn Zeil OBERHALB n Mörkl z öffnen. + + 2. Zipf a , um NAACH n Mörkl ayn Gwort einzfüegn. + Zipf A , um ayn Gwort naach n Zeilnend anzfüegn. + + 3. D Faudung e bringt di gan n End von aynn Wort. + + 4. Dyr Pfemerer y (»yank«) aamt öbbs, p (»put«) füegt dös ein. + + 5. Ayn groosss R geet eyn d Ersötzungsartweis, hinst däß myn druckt. + + 6. D Eingaab von ":set xxx" sötzt de Zwisl "xxx". Ayn Öttlych Zwisln seind: + 'ic' 'ignorecase' Grooß/klain wurst bei ayner Suech + 'is' 'incsearch' Zaig aau schoon ayn Tailüberainstimmung + 'hls' 'hlsearch' Höb allsand pässetn Ausdrück vürher + Dyr Schaltternam kan in dyr Kurz- older Langform angöbn werdn. + + 7. Stöll yn ayner Zwisl "no" voran, däßst ys abschalttst: :set noic +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 7.1: AYN HILFGWORT AUFRUEFFEN + + + ** Nutz dös einbaute Hilfgebäu, de "Betribsanlaittung" ** + + Eyn n Wimm ist ayn ausfüerliche "Gebrauchsanweisung" einbaut. Für s Eerste + pröblt ainfach ains von dene dreu aus: + - Druck d -Tastn, wennst öbbenn aine haast. + - Druck de Tastn , fallsst ys haast. + - Zipf :help + + Lis di eyn s Hilffenster ein, dyrmitst draufkimmst, wie dös mit dyr Hilf geet. + Demmlt w w , um von ainn Fenster zo n andern zo n Springen. + Demmlt :q , um s Hilffenster zo n Schliessn. + + Du kanst zo so guet wie allssand ayn Hilf finddn, indem däßst yn dyr Faudung + :help aynn Auerwerd naachstöllst und istig nit vergisst. Pröblt dös: + + :help w + :help c_CTRL-D + :help insert-index + :help user-manual +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 7.2: ERSTÖLL AYN GIN-SCHRIPF + + + ** Mutz önn Wimm mit de einbautn Faehigkeitn auf ** + + Dyr Wimm besitzt ayn Wösn Schäftungen, wo über n Urwimm aushingeend, aber de + meerern dyrvon seind in dyr Vorgaab ausgschaltt. Dyrmitst meerer aus n Wimm + ausherholst, erstöllst ayn "vimrc"-Dautticht. + + 1. Lög ayn "vimrc"-Dautticht an; dös geet ie naach Betribsgebäu verschidn: + :e ~/.vimrc für s Ainsl + :e $VIM/_vimrc bei n Fenstl + + 2. Ietz lis önn Inhalt von dyr Beispil-"vimrc"-Dautticht ein: + :r $VIMRUNTIME/vimrc_example.vim + + 3. Speichert de Dautticht mit: + :w + + 4. Bei n naehstn Gin von n Wimm ist aft d Füegnussvürherhöbung zuegschaltt. + Du kanst dyr allss eyn dö Dautticht einhinschreibn, wasst bständig habn + willst. Meerer dyrzue erfarst unter: :help vimrc-intro +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Letzn 7.3: VERGÖNTZN + + + ** Befelhszeilnvergöntzung mit d und ** + + 1. Vergwiß di, däß dyr Wimm nit auf n Urwimm-"Glais" fart: :set nocp + + 2. Schaug naach, wölcherne Dauttichtn däß s in n Verzaichniss geit: :!ls + older :!dir + 3. Zipf önn Anfang von ayner Faudung: :e + + 4. Druck d , und dyr Wimm zaigt ayn Listn von Faudungen, wo mit "e" + angeend. + 5. Druck , und dyr Wimm vervollstöndigt önn Faudungsnam zo ":edit". + + 6. Füeg ayn Laerzaichen und önn Anfang von ayner besteehetn Dautticht an: + :edit DAU + + 7. Druck . Dyr Wimm vergöntzt önn Nam, dös haisst, wenn yr aindeuttig + ist. +Anmörkung: D Vergöntzung geit s für aynn Hauffen Faudungen. Versuech ainfach + d und . Bsunders nützlich ist dös bei :help . +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ZAMMENFASSUNG VON DYR LETZN 7 + + + 1. Zipf :help older druck older , um ayn Hilffenster z öffnen. + + 2. Zipf :help FAUDUNG , um auf ayn Hilf gan aynn Befelh z kemmen. + + 3. Zipf w w , um zo n andern Fenster z springen. + + 4. Zipf :q , um s Hilffenster z schliessn. + + 5. Erstöll ayn vimrc-Ginschripf zuer Sicherung von deine Mötzneinstöllungen. + + 6. Druck d, aft däßst naach : mit ayner Faudung angfangt haast, dyr- + mitst mügliche Vergöntzungen anzaigt kriegst. + Druck für ain Vervollstöndigung yllain. + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + Dös wär ietzet s End von n Wimmschainer. Gangen ist s daa drum, aynn kurtzn + und bündignen Überblik über s Blat WIMM z lifern, netty vil gnueg, däß myn + für s Eerste wirklich öbbs dyrmit anfangen kan. Dyrmit ist s aber auf kain + Weitn non nit taan; dyr Wimm haat schoon non vil meerer auf Lager. Lis als + Naehsts aynmaal s Benutzerhandbuech: :help user-manual . + + Zo n Weiterlösn und Weiterlernen wör dös Buech daader zo n Empfelhen: + Vim - Vi Improved - von n OUALLINE Steve + Verlaag: New Riders + Dös ist dös eerste Buech, wo ganz yn n Wimm gwidmt ist, netty dös Grechte für + Anfönger. Es haat ayn Wösn Beispiler und aau Bilder drinn. + See http://iccf-holland.org/click5.html + + Dös folgete Buech ist schoon ölter und meerer über n Urwimm als wie über n + Wimm, aber aau zo n Empfelhen: Textbearbeitung mit dem vi-Editor - von dyr + LAMB Linda und n ROBBINS Arnold - Verlaag O'Reilly - Buechlaittzal (ISBN): + 3897211262 + In dönn Buech kan myn fast allss finddn, was myn mit n Urwimm angeen mecht. + De söxte Ausgaab enthaltt aau schoon öbbs über n Wimm. + Als ietzunde Bezugniss für d Fassung 6.2 und ayn pfrenge Einfüerung dient + dös folgete Buech: + vim ge-packt von n WOBST Reinhard + mitp-Verlaag, Buechlaittzal 3-8266-1425-9 + Trotz dyr recht pfrengen Darstöllung ist s durch seine viln nützlichnen Bei- + spiler aau für Einsteiger grad grecht. Probhaeupster und de Beispilschripfer + seind zesig zo n Kriegn; see http://iccf-holland.org/click5.html + + Verfasst habnd dönn Schainer dyr PIERCE Michael C. und WARE Robert K. von dyr + Kolraader Knappnschuel (Colorado School of Mines). Er beruet auf Entwürff, wo + dyr SMITH Charles von dyr Kolraader Allschuel (Colorado State University) + zuer Verfüegung gstöllt haat. Gundpost: bware@mines.colorado.edu. + Für n Wimm haat n dyr MOOLENAAR Bram barechtt. + De bairische Übersötzung stammt von n HELL Sepp 2009. Sein Gundpostbrächt ist + sturmibund@t-online.de + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + + + + + diff --git a/runtime/tutor/tutor.nb b/runtime/tutor/tutor.nb new file mode 100644 index 00000000..17178df7 --- /dev/null +++ b/runtime/tutor/tutor.nb @@ -0,0 +1,973 @@ +=============================================================================== += V e l k o m m e n t i l i n n f ø r i n g e n i V i m -- Ver. 1.7 = +=============================================================================== + + Vim er en meget kraftig editor med mange kommandoer, alt for mange til å + kunne gå gjennom alle i en innføring som denne. Den er beregnet på å + sette deg inn i bruken av nok kommandoer så du vil være i stand til lett + å kunne bruke Vim som en editor til alle formål. + + Tiden som kreves for å gå gjennom denne innføringen tar ca. 25-30 + minutter, avhengig av hvor mye tid du bruker til eksperimentering. + + MERK: + Kommandoene i leksjonene vil modifisere teksten. Lag en kopi av denne + filen som du kan øve deg på (hvis du kjørte «vimtutor»-kommandoen, er + dette allerede en kopi). + + Det er viktig å huske at denne innføringen er beregnet på læring gjennom + bruk. Det betyr at du må utføre kommandoene for å lære dem skikkelig. + Hvis du bare leser teksten, vil du glemme kommandoene! + + Først av alt, sjekk at «Caps Lock» IKKE er aktiv og trykk «j»-tasten for + å flytte markøren helt til leksjon 1.1 fyller skjermen. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 1.1: FLYTTING AV MARKØREN + + + ** For å flytte markøren, trykk tastene h, j, k, l som vist. ** + ^ + k Tips: h-tasten er til venstre og flytter til venstre. + < h l > l-tasten er til høyre og flytter til høyre. + j j-tasten ser ut som en pil som peker nedover. + v + 1. Flytt markøren rundt på skjermen til du har fått det inn i fingrene. + + 2. Hold inne nedovertasten (j) til den repeterer. + Nå vet du hvordan du beveger deg til neste leksjon. + + 3. Gå til leksjon 1.2 ved hjelp av nedovertasten. + +Merk: Hvis du blir usikker på noe du har skrevet, trykk for å gå til + normalmodus. Skriv deretter kommandoen du ønsket på nytt. + +Merk: Piltastene skal også virke. Men ved å bruke hjkl vil du være i stand til + å bevege markøren mye raskere når du er blitt vant til det. Helt sant! + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 1.2: AVSLUTTE VIM + + + !! MERK: Før du utfører noen av punktene nedenfor, les hele leksjonen!! + + 1. Trykk -tasten (for å forsikre deg om at du er i normalmodus). + + 2. Skriv: :q! . + Dette avslutter editoren og FORKASTER alle forandringer som du har gjort. + + 3. Når du ser kommandolinjen i skallet, skriv kommandoen som startet denne + innføringen. Den er: vimtutor + + 4. Hvis du er sikker på at du husker dette, utfør punktene 1 til 3 for å + avslutte og starte editoren på nytt. + +MERK: :q! forkaster alle forandringer som du gjorde. I løpet av noen + få leksjoner vil du lære hvordan du lagrer forandringene til en fil. + + 5. Flytt markøren ned til leksjon 1.3. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 1.3: REDIGERING AV TEKST -- SLETTING + + + ** Trykk x for å slette tegnet under markøren. ** + + 1. Flytt markøren til den første linjen merket med --->. + + 2. For å ordne feilene på linjen, flytt markøren til den er oppå tegnet som + skal slettes. + + 3. Trykk tasten x for å slette det uønskede tegnet. + + 4. Repeter punkt 2 til 4 til setningen er lik den som er under. + +---> Hessstennnn brrråsnudddde ii gaaata. +---> Hesten bråsnudde i gata. + + 5. Nå som linjen er korrekt, gå til leksjon 1.4. + +MERK: Når du går gjennom innføringen, ikke bare prøv å huske kommandoene, men + bruk dem helt til de sitter. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 1.4: REDIGERING AV TEKST -- INNSETTING + + + ** Trykk i for å sette inn tekst. ** + + 1. Flytt markøren til den første linjen som er merket med --->. + + 2. For å gjøre den første linjen lik den andre, flytt markøren til den står + på tegnet ETTER posisjonen der teksten skal settes inn. + + 3. Trykk i og skriv inn teksten som mangler. + + 4. Etterhvert som hver feil er fikset, trykk for å returnere til + normalmodus. Repeter punkt 2 til 4 til setningen er korrekt. + +---> Det er tkst som mnglr . +---> Det er ganske mye tekst som mangler her. + + 5. Når du føler deg komfortabel med å sette inn tekst, gå til oppsummeringen + nedenfor. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 1.5: REDIGERING AV TEKST -- LEGGE TIL + + + ** Trykk A for å legge til tekst. ** + + 1. Flytt markøren til den første linjen nedenfor merket --->. + Det har ikke noe å si hvor markøren er plassert på den linjen. + + 2. Trykk A og skriv inn det som skal legges til. + + 3. Når teksten er lagt til, trykk for å returnere til normalmodusen. + + 4. Flytt markøren til den andre linjen markert med ---> og repeter steg 2 og + 3 for å reparere denne setningen. + +---> Det mangler noe tekst p + Det mangler noe tekst på denne linjen. +---> Det mangler også litt tek + Det mangler også litt tekst på denne linjen. + + 5. Når du føler at du behersker å legge til tekst, gå til leksjon 1.6. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 1.6: REDIGERE EN FIL + + + ** Bruk :wq for å lagre en fil og avslutte. ** + + !! MERK: Før du utfører noen av stegene nedenfor, les hele denne leksjonen!! + + 1. Avslutt denne innføringen som du gjorde i leksjon 1.2: :q! + + 2. Skriv denne kommandoen på kommandolinja: vim tutor + «vim» er kommandoen for å starte Vim-editoren, «tutor» er navnet på fila + som du vil redigere. Bruk en fil som kan forandres. + + 3. Sett inn og slett tekst som du lærte i de foregående leksjonene. + + 4. Lagre filen med forandringene og avslutt Vim med: :wq + + 5. Start innføringen på nytt og flytt ned til oppsummeringen som følger. + + 6. Etter å ha lest og forstått stegene ovenfor: Sett i gang. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + OPPSUMMERING AV LEKSJON 1 + + + 1. Markøren beveges ved hjelp av piltastene eller hjkl-tastene. + h (venstre) j (ned) k (opp) l (høyre) + + 2. For å starte Vim fra skall-kommandolinjen, skriv: vim FILNAVN + + 3. For å avslutte Vim, skriv: :q! for å forkaste endringer. + ELLER skriv: :wq for å lagre forandringene. + + 4. For å slette tegnet under markøren, trykk: x + + 5. For å sette inn eller legge til tekst, trykk: + i skriv innsatt tekst sett inn før markøren + A skriv tillagt tekst legg til på slutten av linjen + +MERK: Når du trykker går du til normalmodus eller du avbryter en uønsket + og delvis fullført kommando. + + Nå kan du gå videre til leksjon 2. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 2.1: SLETTEKOMMANDOER + + + ** Trykk dw for å slette et ord. ** + + 1. Trykk for å være sikker på at du er i normalmodus. + + 2. Flytt markøren til den første linjen nedenfor merket --->. + + 3. Flytt markøren til begynnelsen av ordet som skal slettes. + + 4. Trykk dw og ordet vil forsvinne. + +MERK: Bokstaven d vil komme til syne på den nederste linjen på skjermen når + du skriver den. Vim venter på at du skal skrive w . Hvis du ser et annet + tegn enn d har du skrevet noe feil; trykk og start på nytt. + +---> Det er agurk tre ord eple som ikke hører pære hjemme i denne setningen. +---> Det er tre ord som ikke hører hjemme i denne setningen. + + 5. Repeter punkt 3 og 4 til den første setningen er lik den andre. Gå + deretter til leksjon 2.2. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 2.2: FLERE SLETTEKOMMANDOER + + + ** Trykk d$ for å slette til slutten av linjen. ** + + 1. Trykk for å være sikker på at du er i normalmodus. + + 2. Flytt markøren til linjen nedenfor merket --->. + + 3. Flytt markøren til punktet der linjen skal kuttes (ETTER første punktum). + + 4. Trykk d$ for å slette alt til slutten av linjen. + +---> Noen skrev slutten på linjen en gang for mye. linjen en gang for mye. + + 5. Gå til leksjon 2.3 for å forstå hva som skjer. + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 2.3: OM OPERATORER OG BEVEGELSER + + + Mange kommandoer som forandrer teksten er laget ut i fra en operator og en + bevegelse. Formatet for en slettekommando med sletteoperatoren d er: + + d bevegelse + + Der: + d - er sletteoperatoren. + bevegelse - er hva operatoren vil opere på (listet nedenfor). + + En kort liste med bevegelser: + w - til starten av det neste ordet, UNNTATT det første tegnet. + e - til slutten av det nåværende ordet, INKLUDERT det siste tegnet. + $ - til slutten av linjen, INKLUDERT det siste tegnet. + + Ved å skrive de vil altså alt fra markøren til slutten av ordet bli + slettet. + +MERK: Ved å skrive kun bevegelsen i normalmodusen uten en operator vil + markøren flyttes som spesifisert. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + LEKSJON 2.4: BRUK AV TELLER FOR EN BEVEGELSE + + + ** Ved å skrive et tall foran en bevegelse repeterer den så mange ganger. ** + + 1. Flytt markøren til starten av linjen markert ---> nedenfor. + + 2. Skriv 2w for å flytte markøren to ord framover. + + 3. Skriv 3e for å flytte markøren framover til slutten av det tredje + ordet. + + 4. Skriv 0 (null) for å flytte til starten av linjen. + + 5. Repeter steg 2 og 3 med forskjellige tall. + +---> Dette er en linje med noen ord som du kan bevege deg rundt på. + + 6. Gå videre til leksjon 2.5. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 2.5: BRUK AV ANTALL FOR Å SLETTE MER + + + ** Et tall sammen med en operator repeterer den så mange ganger. ** + + I kombinasjonen med sletteoperatoren og en bevegelse nevnt ovenfor setter du + inn antall før bevegelsen for å slette mer: + d nummer bevegelse + + 1. Flytt markøren til det første ordet med STORE BOKSTAVER på linjen markert + med --->. + + 2. Skriv 2dw for å slette de to ordene med store bokstaver. + + 3. Repeter steg 1 og 2 med forskjelling antall for å slette de etterfølgende + ordene som har store bokstaver. + +---> Denne ABC DE linjen FGHI JK LMN OP er nå Q RS TUV litt mer lesbar. + +MERK: Et antall mellom operatoren d og bevegelsen virker på samme måte som å + bruke bevegelsen uten en operator. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 2.6: OPERERE PÅ LINJER + + + ** Trykk dd for å slette en hel linje. ** + + På grunn av at sletting av linjer er mye brukt, fant utviklerne av Vi ut at + det vil være lettere å rett og slett trykke to d-er for å slette en linje. + + 1. Flytt markøren til den andre linjen i verset nedenfor. + 2. Trykk dd å slette linjen. + 3. Flytt deretter til den fjerde linjen. + 4. Trykk 2dd for å slette to linjer. + +---> 1) Roser er røde, +---> 2) Gjørme er gøy, +---> 3) Fioler er blå, +---> 4) Jeg har en bil, +---> 5) Klokker viser tiden, +---> 6) Druer er søte +---> 7) Og du er likeså. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 2.7: ANGRE-KOMMANDOEN + + + ** Trykk u for å angre siste kommando, U for å fikse en hel linje. ** + + 1. Flytt markøren til linjen nedenfor merket ---> og plasser den på den + første feilen. + 2. Trykk x for å slette det første uønskede tegnet. + 3. Trykk så u for å angre den siste utførte kommandoen. + 4. Deretter ordner du alle feilene på linjene ved å bruke kommandoen x . + 5. Trykk nå en stor U for å sette linjen tilbake til det den var + originalt. + 6. Trykk u noen ganger for å angre U og foregående kommandoer. + 7. Deretter trykker du CTRL-R (hold CTRL nede mens du trykker R) noen + ganger for å gjenopprette kommandoene (omgjøre angrekommandoene). + +---> RReparer feiilene påå denne linnnjen oog erssstatt dem meed angre. + + 8. Dette er meget nyttige kommandoer. Nå kan du gå til oppsummeringen av + leksjon 2. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + OPPSUMMERING AV LEKSJON 2 + + + 1. For å slette fra markøren fram til det neste ordet, trykk: dw + 2. For å slette fra markøren til slutten av en linje, trykk: d$ + 3. For å slette en hel linje, trykk: dd + + 4. For å repetere en bevegelse, sett et nummer foran: 2w + 5. Formatet for en forandringskommando er: + operator [nummer] bevegelse + der: + operator - hva som skal gjøres, f.eks. d for å slette + [nummer] - et valgfritt antall for å repetere bevegelsen + bevegelse - hva kommandoen skal operere på, eksempelvis w (ord), + $ (til slutten av linjen) og så videre. + + 6. For å gå til starten av en linje, bruk en null: 0 + + 7. For å angre tidligere endringer, skriv: u (liten u) + For å angre alle forandringer på en linje, skriv: U (stor U) + For å omgjøre angringen, trykk: CTRL-R + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 3.1: «LIM INN»-KOMMANDOEN + + + ** Trykk p for å lime inn tidligere slettet tekst etter markøren ** + + 1. Flytt markøren til den første linjen med ---> nedenfor. + + 2. Trykk dd for å slette linjen og lagre den i et Vim-register. + + 3. Flytt markøren til c)-linjen, OVER posisjonen linjen skal settes inn. + + 4. Trykk p for å legge linjen under markøren. + + 5. Repeter punkt 2 til 4 helt til linjene er i riktig rekkefølge. + +---> d) Kan du også lære? +---> b) Fioler er blå, +---> c) Intelligens må læres, +---> a) Roser er røde, + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 3.2: «ERSTATT»-KOMMANDOEN + + + ** Trykk rx for å erstatte tegnet under markøren med x. ** + + 1. Flytt markøren til den første linjen nedenfor merket --->. + + 2. Flytt markøren så den står oppå den første feilen. + + 3. Trykk r og deretter tegnet som skal være der. + + 4. Repeter punkt 2 og 3 til den første linjen er lik den andre. + +---> Da dfnne lynjxn ble zkrevet, var det nøen som tjykket feite taster! +---> Da denne linjen ble skrevet, var det noen som trykket feile taster! + + 5. Gå videre til leksjon 3.2. + +MERK: Husk at du bør lære ved å BRUKE, ikke pugge. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 3.3: «FORANDRE»-OPERATOREN + + + ** For å forandre til slutten av et ord, trykk ce . ** + + 1. Flytt markøren til den første linjen nedenfor som er merket --->. + + 2. Plasser markøren på u i «lubjwr». + + 3. Trykk ce og det korrekte ordet (i dette tilfellet, skriv «injen»). + + 4. Trykk og gå til det neste tegnet som skal forandres. + + 5. Repeter punkt 3 og 4 helt til den første setningen er lik den andre. + +---> Denne lubjwr har noen wgh som må forkwåp med «forækzryas»-kommandoen. +---> Denne linjen har noen ord som må forandres med «forandre»-kommandoen. + +Vær oppmerksom på at ce sletter ordet og går inn i innsettingsmodus. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 3.4: FLERE FORANDRINGER VED BRUK AV c + + + ** Forandringskommandoen blir brukt med de samme bevegelser som «slett». ** + + 1. Forandringsoperatoren fungerer på samme måte som «slett». Formatet er: + + c [nummer] bevegelse + + 2. Bevegelsene er de samme, som for eksempel w (ord) og $ (slutten av en + linje). + + 3. Gå til den første linjen nedenfor som er merket --->. + + 4. Flytt markøren til den første feilen. + + 5. Skriv c$ og skriv resten av linjen lik den andre og trykk . + +---> Slutten på denne linjen trenger litt hjelp for å gjøre den lik den neste. +---> Slutten på denne linjen trenger å bli rettet ved bruk av c$-kommandoen. + +MERK: Du kan bruke slettetasten for å rette feil mens du skriver. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + OPPSUMMERING AV LEKSJON 3 + + + 1. For å legge tilbake tekst som nettopp er blitt slettet, trykk p . Dette + limer inn den slettede teksten ETTER markøren (hvis en linje ble slettet + vil den bli limt inn på linjen under markøren). + + 2. For å erstatte et tegn under markøren, trykk r og deretter tegnet som + du vil ha der. + + 3. Forandringsoperatoren lar deg forandre fra markøren til dit bevegelsen + tar deg. Det vil si, skriv ce for å forandre fra markøren til slutten + av ordet, c$ for å forandre til slutten av linjen. + + 4. Formatet for «forandre» er: + + c [nummer] bevegelse + +Nå kan du gå til neste leksjon. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 4.1: POSISJONERING AV MARKØREN OG FILSTATUS + + ** Trykk CTRL-G for å vise posisjonen i filen og filstatusen. + Trykk G for å gå til en spesifikk linje i filen. ** + + Merk: Les hele leksjonen før du utfører noen av punktene! + + 1. Hold nede Ctrl-tasten og trykk g . Vi kaller dette CTRL-G. En melding + vil komme til syne på bunnen av skjermen med filnavnet og posisjonen i + filen. Husk linjenummeret for bruk i steg 3. + +Merk: Du kan se markørposisjonen i nederste høyre hjørne av skjermen. Dette + skjer når «ruler»-valget er satt (forklart i leksjon 6). + + 2. Trykk G for å gå til bunnen av filen. + Skriv gg for å gå til begynnelsen av filen. + + 3. Skriv inn linjenummeret du var på og deretter G . Dette vil føre deg + tilbake til linjen du var på da du først trykket CTRL-G. + + 4. Utfør steg 1 til 3 hvis du føler deg sikker på prosedyren. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 4.2: SØKEKOMMANDOEN + + ** Skriv / etterfulgt av en søkestreng som du vil lete etter. ** + + 1. Trykk / når du er i normalmodusen. Legg merke til at skråstreken og + markøren kommer til syne på bunnen av skjermen i likhet med + «:»-kommandoene. + + 2. Skriv «feeeiil» og trykk . Dette er teksten du vil lete etter. + + 3. For å finne neste forekomst av søkestrengen, trykk n . + For å lete etter samme søketeksten i motsatt retning, trykk N . + + 4. For å lete etter en tekst bakover i filen, bruk ? istedenfor / . + + 5. For å gå tilbake til der du kom fra, trykk CTRL-O (Hold Ctrl nede mens + du trykker bokstaven o ). Repeter for å gå enda lengre tilbake. CTRL-I + går framover. + +---> «feeeiil» er ikke måten å skrive «feil» på, feeeiil er helt feil. +Merk: Når søkingen når slutten av filen, vil den fortsette fra starten unntatt + hvis «wrapscan»-valget er resatt. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 4.3: FINN SAMSVARENDE PARENTESER + + + ** Trykk % for å finne en samsvarende ), ] eller } . ** + + 1. Plasser markøren på en (, [ eller { på linjen nedenfor merket --->. + + 2. Trykk % . + + 3. Markøren vil gå til den samsvarende parentesen eller hakeparentesen. + + 4. Trykk % for å flytte markøren til den andre samsvarende parentesen. + + 5. Flytt markøren til en annen (, ), [, ], { eller } og se hva % gjør. + +---> Dette ( er en testlinje med (, [ ] og { } i den )). + +Merk: Dette er veldig nyttig til feilsøking i programmer som har ubalansert + antall parenteser! + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 4.4: ERSTATT-KOMMANDOEN + + + ** Skriv :s/gammel/ny/g for å erstatte «gammel» med «ny». ** + + 1. Flytt markøren til linjen nedenfor som er merket med --->. + + 2. Skriv :s/deen/den/ . Legg merke til at denne kommandoen bare + forandrer den første forekomsten av «deen» på linjen. + + 3. Skriv :s/deen/den/g . Når g-flagget legges til, betyr dette global + erstatning på linjen og erstatter alle forekomster av «deen» på linjen. + +---> deen som kan kaste deen tyngste steinen lengst er deen beste + + 4. For å erstatte alle forekomster av en tekststreng mellom to linjer, + skriv :#,#s/gammel/ny/g der #,# er linjenumrene på de to linjene for + linjeområdet erstatningen skal gjøres. + Skriv :%s/gammel/ny/g for å erstatte tekst i hele filen. + Skriv :%s/gammel/ny/gc for å finne alle forekomster i hele filen, og + deretter spørre om teksten skal erstattes eller + ikke. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + OPPSUMMERING AV LEKSJON 4 + + + 1. Ctrl-G viser nåværende posisjon i filen og filstatusen. + G går til slutten av filen. + nummer G går til det linjenummeret. + gg går til den første linjen. + + 2. Skriv / etterfulgt av en søketekst for å lete FRAMOVER etter teksten. + Skriv ? etterfulgt av en søketekst for å lete BAKOVER etter teksten. + Etter et søk kan du trykke n for å finne neste forekomst i den samme + retningen eller N for å lete i motsatt retning. + CTRL-O tar deg tilbake til gamle posisjoner, CTRL-I til nyere posisjoner. + + 3. Skriv % når markøren står på en (, ), [, ], { eller } for å finne den + som samsvarer. + + 4. Erstatte «gammel» med første «ny» på en linje: :s/gammel/ny + Erstatte alle «gammel» med «ny» på en linje: :s/gammel/ny/g + Erstatte tekst mellom to linjenumre: :#,#s/gammel/ny/g + Erstatte alle forekomster i en fil: :%s/gammel/ny/g + For å godkjenne hver erstatning, legg til «c»: :%s/gammel/ny/gc +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 5.1: HVORDAN UTFØRE EN EKSTERN KOMMANDO + + + ** Skriv :! etterfulgt av en ekstern kommando for å utføre denne. ** + + 1. Skriv den velkjente kommandoen : for å plassere markøren på bunnen av + skjermen. Dette lar deg skrive en kommandolinjekommando. + + 2. Nå kan du skrive tegnet ! . Dette lar deg utføre en hvilken som helst + ekstern kommando. + + 3. Som et eksempel, skriv ls etter utropstegnet og trykk . Du vil + nå få en liste over filene i katalogen, akkurat som om du hadde kjørt + kommandoen direkte fra kommandolinjen i skallet. Eller bruk :!dir hvis + «ls» ikke virker. + +MERK: Det er mulig å kjøre alle eksterne kommandoer på denne måten, også med + parametere. + +MERK: Alle «:»-kommandoer må avsluttes med . Fra dette punktet er det + ikke alltid vi nevner det. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 5.2: MER OM LAGRING AV FILER + + + ** For å lagre endringene gjort i en tekst, skriv :w FILNAVN. ** + + 1. Skriv :!dir eller :!ls for å få en liste over filene i katalogen. Du + vet allerede at du må trykke etter dette. + + 2. Velg et filnavn på en fil som ikke finnes, som for eksempel TEST . + + 3. Skriv :w TEST (der TEST er filnavnet du velger). + + 4. Dette lagrer hele filen (denne innføringen) under navnet TEST . For å + sjekke dette, skriv :!dir eller :!ls igjen for å se innholdet av + katalogen. + +Merk: Hvis du nå hadde avsluttet Vim og startet på nytt igjen med «vim TEST», + ville filen vært en eksakt kopi av innføringen da du lagret den. + + 5. Fjern filen ved å skrive :!rm TEST hvis du er på et Unix-lignende + operativsystem, eller :!del TEST hvis du bruker MS-DOS. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 5.3: VELGE TEKST SOM SKAL LAGRES + + + ** For å lagre en del av en fil, skriv v bevegelse :w FILNAVN ** + + 1. Flytt markøren til denne linjen. + + 2. Trykk v og flytt markøren til det femte elementet nedenfor. Legg merke + til at teksten blir markert. + + 3. Trykk : (kolon). På bunnen av skjermen vil :'<,'> komme til syne. + + 4. Trykk w TEST , der TEST er et filnavn som ikke finnes enda. Kontroller + at du ser :'<,'>w TEST før du trykker Enter. + + 5. Vim vil skrive de valgte linjene til filen TEST. Bruk :!dir eller !ls + for å se den. Ikke slett den enda! Vi vil bruke den i neste leksjon. + +MERK: Ved å trykke v startes visuelt valg. Du kan flytte markøren rundt for + å gjøre det valgte området større eller mindre. Deretter kan du bruke en + operator for å gjøre noe med teksten. For eksempel sletter d teksten. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 5.4: HENTING OG SAMMENSLÅING AV FILER + + + ** For å lese inn en annen fil inn i nåværende buffer, skriv :r FILNAVN ** + + 1. Plasser markøren like over denne linjen. + +MERK: Etter å ha utført steg 2 vil du se teksten fra leksjon 5.3. Gå deretter + NED for å se denne leksjonen igjen. + + 2. Hent TEST-filen ved å bruke kommandoen :r TEST der TEST er navnet på + filen du brukte. Filen du henter blir plassert nedenfor markørlinjen. + + 3. For å sjekke at filen ble hentet, gå tilbake og se at det er to kopier av + leksjon 5.3, originalen og denne versjonen. + +MERK: Du kan også lese utdataene av en ekstern kommando. For eksempel, :r !ls + leser utdataene av ls-kommandoen og legger dem nedenfor markøren. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + OPPSUMMERING AV LEKSJON 5 + + + 1. :!kommando utfører en ekstern kommandio. + + Noen nyttige eksempler er: + (MS-DOS) (Unix) + :!dir :!ls - List filene i katalogen. + :!del FILNAVN :!rm FILNAVN - Slett filen FILNAVN. + + 2. :w FILNAVN skriver den nåværende Vim-filen disken med navnet FILNAVN . + + 3. v bevegelse :w FILNAVN lagrer de visuelt valgte linjene til filen + FILNAVN. + + 4. :r FILNAVN henter filen FILNAVN og legger den inn nedenfor markøren. + + 5. :r !dir leser utdataene fra «dir»-kommandoen og legger dem nedenfor + markørposisjonen. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 6.1: «ÅPNE LINJE»-KOMMANDOEN + + + ** Skriv o for å «åpne opp» for en ny linje etter markøren og gå til + innsettingsmodus ** + + 1. Flytt markøren til linjen nedenfor merket --->. + + 2. Skriv o (liten o) for å åpne opp en linje NEDENFOR markøren og gå inn i + innsettingsmodus. + + 3. Skriv litt tekst og trykk for å gå ut av innsettingsmodusen. + +---> Etter at o er skrevet blir markøren plassert på den tomme linjen. + + 4. For å åpne en ny linje OVER markøren, trykk rett og slett en stor O + istedenfor en liten o . Prøv dette på linjen nedenfor. + +---> Lag ny linje over denne ved å trykke O mens markøren er på denne linjen. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 6.2: «LEGG TIL»-KOMMANDOEN + + + ** Skriv a for å legge til tekst ETTER markøren. ** + + 1. Flytt markøren til starten av linjen merket ---> nedenfor. + + 2. Trykk e til markøren er på slutten av «li». + + 3. Trykk a (liten a) for å legge til tekst ETTER markøren. + + 4. Fullfør ordet sånn som på linjen nedenfor. Trykk for å gå ut av + innsettingsmodusen. + + 5. Bruk e for å gå til det neste ufullstendige ordet og repeter steg 3 og + 4. + +---> Denne li lar deg øve på å leg til tek på en linje. +---> Denne linjen lar deg øve på å legge til tekst på en linje. + +Merk: a, i og A går alle til den samme innsettingsmodusen, den eneste + forskjellen er hvor tegnene blir satt inn. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 6.3: EN ANNEN MÅTE Å ERSTATTE PÅ + + + ** Skriv en stor R for å erstatte mer enn ett tegn. ** + + 1. Flytt markøren til den første linjen nedenfor merket --->. Flytt markøren + til begynnelsen av den første «xxx»-en. + + 2. Trykk R og skriv inn tallet som står nedenfor på den andre linjen så + det erstatter xxx. + + 3. Trykk for å gå ut av erstatningsmodusen. Legg merke til at resten + av linjen forblir uforandret. + + 4. Repeter stegene for å erstatte den gjenværende xxx. + +---> Ved å legge 123 til xxx får vi xxx. +---> Ved å legge 123 til 456 får vi 579. + +MERK: Erstatningsmodus er lik insettingsmodus, men hvert tegn som skrives + erstatter et eksisterende tegn. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 6.4: KOPIERE OG LIME INN TEKST + + + ** Bruk y-operatoren for å kopiere tekst og p for å lime den inn ** + + 1. Gå til linjen merket ---> nedenfor og plasser markøren etter «a)». + + 2. Gå inn i visuell modus med v og flytt markøren til like før «første». + + 3. Trykk y for å kopiere (engelsk: «yank») den uthevede teksten. + + 4. Flytt markøren til slutten av den neste linjen: j$ + + 5. Trykk p for å lime inn teksten. Trykk deretter: a andre . + + 6. Bruk visuell modus for å velge « valget.», kopier det med y , gå til + slutten av den neste linjen med j$ og legg inn teksten der med p . + +---> a) Dette er det første valget. + b) + +Merk: Du kan også bruke y som en operator; yw kopierer ett ord. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 6.5: SETT VALG + + + ** Sett et valg så søk eller erstatning ignorerer store/små bokstaver. ** + + 1. Let etter «ignore» ved å skrive: /ignore + Repeter flere ganger ved å trykke n . + + 2. Sett «ic»-valget (Ignore Case) ved å skrive: :set ic + + 3. Søk etter «ignore» igjen ved å trykke n . + Legg merke til at både «Ignore» og «IGNORE» blir funnet. + + 4. Sett «hlsearch»- og «incsearch»-valgene: :set hls is + + 5. Skriv søkekommandoen igjen og se hva som skjer: /ignore + + 6. For å slå av ignorering av store/små bokstaver, skriv: :set noic + +Merk: For å fjerne uthevingen av treff, skriv: :nohlsearch +Merk: Hvis du vil ignorere store/små bokstaver for kun en søkekommando, bruk + \c i uttrykket: /ignore\c +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + OPPSUMMERING AV LEKSJON 6 + + 1. Trykk o for å legge til en linje NEDENFOR markøren og gå inn i + innsettingsmodus. + Trykk O for å åpne en linje OVER markøren. + + 2. Skriv a for å sette inn tekst ETTER markøren. + Skriv A for å sette inn tekst etter slutten av linjen. + + 3. Kommandoen e går til slutten av et ord. + + 4. Operatoren y («yank») kopierer tekst, p («paste») limer den inn. + + 5. Ved å trykke R går du inn i erstatningsmodus helt til trykkes. + + 6. Skriv «:set xxx» for å sette valget «xxx». Noen valg er: + «ic» «ignorecase» ignorer store/små bokstaver under søk + «is» «incsearch» vis delvise treff for en søketekst + «hls» «hlsearch» uthev alle søketreff + + 7. Legg til «no» foran valget for å slå det av: :set noic + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 7.1: FÅ HJELP + + + ** Bruk det innebygde hjelpesystemet. ** + + Vim har et omfattende innebygget hjelpesystem. For å starte det, prøv en av + disse måtene: + - Trykk Hjelp-tasten (hvis du har en) + - Trykk F1-tasten (hvis du har en) + - Skriv :help + + Les teksten i hjelpevinduet for å finne ut hvordan hjelpen virker. + Skriv CTRL-W CTRL-W for å hoppe fra et vindu til et annet + Skriv :q for å lukke hjelpevinduet. + + Du kan få hjelp for omtrent alle temaer om Vim ved å skrive et parameter til + «:help»-kommandoen. Prøv disse (ikke glem å trykke ): + + :help w + :help c_CTRL-D + :help insert-index + :help user-manual +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 7.2: LAG ET OPPSTARTSSKRIPT + + + ** Slå på funksjoner i Vim ** + + Vim har mange flere funksjoner enn Vi, men flesteparten av dem er slått av + som standard. For å begynne å bruke flere funksjoner må du lage en + «vimrc»-fil. + + 1. Start redigeringen av «vimrc»-filen. Dette avhenger av systemet ditt: + :e ~/.vimrc for Unix + :e $VIM/_vimrc for MS Windows + + 2. Les inn eksempelfilen for «vimrc»: + :r $VIMRUNTIME/vimrc_example.vim + + 3. Lagre filen med: + :w + + Neste gang du starter Vim vil den bruke syntaks-utheving. Du kan legge til + alle dine foretrukne oppsett i denne «vimrc»-filen. + For mer informasjon, skriv :help vimrc-intro +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 7.3: FULLFØRING + + + ** Kommandolinjefullføring med CTRL-D og ** + + 1. Vær sikker på at Vim ikke er i Vi-kompatibel modus: :set nocp + + 2. Se hvilke filer som er i katalogen: :!ls eller :!dir + + 3. Skriv starten på en kommando: :e + + 4. Trykk CTRL-D og Vim vil vise en liste over kommandoer som starter med + «e». + + 5. Trykk og Vim vil fullføre kommandonavnet til «:edit». + + 6. Legg til et mellomrom og starten på et eksisterende filnavn: :edit FIL + + 7. Trykk . Vim vil fullføre navnet (hvis det er unikt). + +MERK: Fullføring fungerer for mange kommandoer. Prøv ved å trykke CTRL-D og + . Det er spesielt nyttig for bruk sammen med :help . +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + OPPSUMMERING AV LEKSJON 7 + + + 1. Skriv :help eller trykk eller for å åpne et hjelpevindu. + + 2. Skriv :help kommando for å få hjelp om kommando . + + 3. Trykk CTRL-W CTRL-W for å hoppe til et annet vindu. + + 4. Trykk :q for å lukke hjelpevinduet. + + 5. Opprett et vimrc-oppstartsskript for å lagre favorittvalgene dine. + + 6. Når du skriver en «:»-kommando, trykk CTRL-D for å se mulige + fullføringer. Trykk for å bruke en fullføring. + + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + Her slutter innføringen i Vim. Den var ment som en rask oversikt over + editoren, akkurat nok til å la deg sette i gang med enkel bruk. Den er på + langt nær komplett, da Vim har mange flere kommandoer. Les bruksanvisningen + ved å skrive :help user-manual . + + For videre lesing og studier, kan denne boken anbefales: + «Vim - Vi Improved» av Steve Oualline + Utgiver: New Riders + Den første boken som er fullt og helt dedisert til Vim. Spesielt nyttig for + nybegynnere. Inneholder mange eksempler og illustrasjoner. + Se http://iccf-holland.org/click5.html + + Denne boken er eldre og handler mer om Vi enn Vim, men anbefales også: + «Learning the Vi Editor» av Linda Lamb + Utgiver: O'Reilly & Associates Inc. + Det er en god bok for å få vite omtrent hva som helst om Vi. + Den sjette utgaven inneholder også informasjon om Vim. + + Denne innføringen er skrevet av Michael C. Pierce og Robert K. Ware, + Colorado School of Mines med idéer av Charles Smith, Colorado State + University. E-mail: bware@mines.colorado.edu . + + Modifisert for Vim av Bram Moolenaar. + Oversatt av Øyvind A. Holm. E-mail: vimtutor _AT_ sunbase.org + Id: tutor.no 406 2007-03-18 22:48:36Z sunny + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +vim: set ts=8 : diff --git a/runtime/tutor/tutor.nb.utf-8 b/runtime/tutor/tutor.nb.utf-8 new file mode 100644 index 00000000..a7826b78 --- /dev/null +++ b/runtime/tutor/tutor.nb.utf-8 @@ -0,0 +1,973 @@ +=============================================================================== += V e l k o m m e n t i l i n n f ø r i n g e n i V i m -- Ver. 1.7 = +=============================================================================== + + Vim er en meget kraftig editor med mange kommandoer, alt for mange til å + kunne gå gjennom alle i en innføring som denne. Den er beregnet på å + sette deg inn i bruken av nok kommandoer så du vil være i stand til lett + å kunne bruke Vim som en editor til alle formål. + + Tiden som kreves for å gå gjennom denne innføringen tar ca. 25-30 + minutter, avhengig av hvor mye tid du bruker til eksperimentering. + + MERK: + Kommandoene i leksjonene vil modifisere teksten. Lag en kopi av denne + filen som du kan øve deg på (hvis du kjørte «vimtutor»-kommandoen, er + dette allerede en kopi). + + Det er viktig å huske at denne innføringen er beregnet på læring gjennom + bruk. Det betyr at du må utføre kommandoene for å lære dem skikkelig. + Hvis du bare leser teksten, vil du glemme kommandoene! + + Først av alt, sjekk at «Caps Lock» IKKE er aktiv og trykk «j»-tasten for + å flytte markøren helt til leksjon 1.1 fyller skjermen. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 1.1: FLYTTING AV MARKØREN + + + ** For å flytte markøren, trykk tastene h, j, k, l som vist. ** + ^ + k Tips: h-tasten er til venstre og flytter til venstre. + < h l > l-tasten er til høyre og flytter til høyre. + j j-tasten ser ut som en pil som peker nedover. + v + 1. Flytt markøren rundt på skjermen til du har fått det inn i fingrene. + + 2. Hold inne nedovertasten (j) til den repeterer. + Nå vet du hvordan du beveger deg til neste leksjon. + + 3. Gå til leksjon 1.2 ved hjelp av nedovertasten. + +Merk: Hvis du blir usikker på noe du har skrevet, trykk for å gå til + normalmodus. Skriv deretter kommandoen du ønsket på nytt. + +Merk: Piltastene skal også virke. Men ved å bruke hjkl vil du være i stand til + å bevege markøren mye raskere når du er blitt vant til det. Helt sant! + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 1.2: AVSLUTTE VIM + + + !! MERK: Før du utfører noen av punktene nedenfor, les hele leksjonen!! + + 1. Trykk -tasten (for å forsikre deg om at du er i normalmodus). + + 2. Skriv: :q! . + Dette avslutter editoren og FORKASTER alle forandringer som du har gjort. + + 3. Når du ser kommandolinjen i skallet, skriv kommandoen som startet denne + innføringen. Den er: vimtutor + + 4. Hvis du er sikker på at du husker dette, utfør punktene 1 til 3 for å + avslutte og starte editoren på nytt. + +MERK: :q! forkaster alle forandringer som du gjorde. I løpet av noen + få leksjoner vil du lære hvordan du lagrer forandringene til en fil. + + 5. Flytt markøren ned til leksjon 1.3. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 1.3: REDIGERING AV TEKST -- SLETTING + + + ** Trykk x for å slette tegnet under markøren. ** + + 1. Flytt markøren til den første linjen merket med --->. + + 2. For å ordne feilene på linjen, flytt markøren til den er oppå tegnet som + skal slettes. + + 3. Trykk tasten x for å slette det uønskede tegnet. + + 4. Repeter punkt 2 til 4 til setningen er lik den som er under. + +---> Hessstennnn brrråsnudddde ii gaaata. +---> Hesten bråsnudde i gata. + + 5. Nå som linjen er korrekt, gå til leksjon 1.4. + +MERK: Når du går gjennom innføringen, ikke bare prøv å huske kommandoene, men + bruk dem helt til de sitter. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 1.4: REDIGERING AV TEKST -- INNSETTING + + + ** Trykk i for å sette inn tekst. ** + + 1. Flytt markøren til den første linjen som er merket med --->. + + 2. For å gjøre den første linjen lik den andre, flytt markøren til den står + på tegnet ETTER posisjonen der teksten skal settes inn. + + 3. Trykk i og skriv inn teksten som mangler. + + 4. Etterhvert som hver feil er fikset, trykk for å returnere til + normalmodus. Repeter punkt 2 til 4 til setningen er korrekt. + +---> Det er tkst som mnglr . +---> Det er ganske mye tekst som mangler her. + + 5. Når du føler deg komfortabel med å sette inn tekst, gå til oppsummeringen + nedenfor. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 1.5: REDIGERING AV TEKST -- LEGGE TIL + + + ** Trykk A for å legge til tekst. ** + + 1. Flytt markøren til den første linjen nedenfor merket --->. + Det har ikke noe å si hvor markøren er plassert på den linjen. + + 2. Trykk A og skriv inn det som skal legges til. + + 3. Når teksten er lagt til, trykk for å returnere til normalmodusen. + + 4. Flytt markøren til den andre linjen markert med ---> og repeter steg 2 og + 3 for å reparere denne setningen. + +---> Det mangler noe tekst p + Det mangler noe tekst på denne linjen. +---> Det mangler også litt tek + Det mangler også litt tekst på denne linjen. + + 5. Når du føler at du behersker å legge til tekst, gå til leksjon 1.6. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 1.6: REDIGERE EN FIL + + + ** Bruk :wq for å lagre en fil og avslutte. ** + + !! MERK: Før du utfører noen av stegene nedenfor, les hele denne leksjonen!! + + 1. Avslutt denne innføringen som du gjorde i leksjon 1.2: :q! + + 2. Skriv denne kommandoen på kommandolinja: vim tutor + «vim» er kommandoen for å starte Vim-editoren, «tutor» er navnet på fila + som du vil redigere. Bruk en fil som kan forandres. + + 3. Sett inn og slett tekst som du lærte i de foregående leksjonene. + + 4. Lagre filen med forandringene og avslutt Vim med: :wq + + 5. Start innføringen på nytt og flytt ned til oppsummeringen som følger. + + 6. Etter å ha lest og forstått stegene ovenfor: Sett i gang. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + OPPSUMMERING AV LEKSJON 1 + + + 1. Markøren beveges ved hjelp av piltastene eller hjkl-tastene. + h (venstre) j (ned) k (opp) l (høyre) + + 2. For å starte Vim fra skall-kommandolinjen, skriv: vim FILNAVN + + 3. For å avslutte Vim, skriv: :q! for å forkaste endringer. + ELLER skriv: :wq for å lagre forandringene. + + 4. For å slette tegnet under markøren, trykk: x + + 5. For å sette inn eller legge til tekst, trykk: + i skriv innsatt tekst sett inn før markøren + A skriv tillagt tekst legg til på slutten av linjen + +MERK: Når du trykker går du til normalmodus eller du avbryter en uønsket + og delvis fullført kommando. + + Nå kan du gå videre til leksjon 2. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 2.1: SLETTEKOMMANDOER + + + ** Trykk dw for å slette et ord. ** + + 1. Trykk for å være sikker på at du er i normalmodus. + + 2. Flytt markøren til den første linjen nedenfor merket --->. + + 3. Flytt markøren til begynnelsen av ordet som skal slettes. + + 4. Trykk dw og ordet vil forsvinne. + +MERK: Bokstaven d vil komme til syne på den nederste linjen på skjermen når + du skriver den. Vim venter på at du skal skrive w . Hvis du ser et annet + tegn enn d har du skrevet noe feil; trykk og start på nytt. + +---> Det er agurk tre ord eple som ikke hører pære hjemme i denne setningen. +---> Det er tre ord som ikke hører hjemme i denne setningen. + + 5. Repeter punkt 3 og 4 til den første setningen er lik den andre. Gå + deretter til leksjon 2.2. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 2.2: FLERE SLETTEKOMMANDOER + + + ** Trykk d$ for å slette til slutten av linjen. ** + + 1. Trykk for å være sikker på at du er i normalmodus. + + 2. Flytt markøren til linjen nedenfor merket --->. + + 3. Flytt markøren til punktet der linjen skal kuttes (ETTER første punktum). + + 4. Trykk d$ for å slette alt til slutten av linjen. + +---> Noen skrev slutten på linjen en gang for mye. linjen en gang for mye. + + 5. Gå til leksjon 2.3 for å forstå hva som skjer. + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 2.3: OM OPERATORER OG BEVEGELSER + + + Mange kommandoer som forandrer teksten er laget ut i fra en operator og en + bevegelse. Formatet for en slettekommando med sletteoperatoren d er: + + d bevegelse + + Der: + d - er sletteoperatoren. + bevegelse - er hva operatoren vil opere på (listet nedenfor). + + En kort liste med bevegelser: + w - til starten av det neste ordet, UNNTATT det første tegnet. + e - til slutten av det nåværende ordet, INKLUDERT det siste tegnet. + $ - til slutten av linjen, INKLUDERT det siste tegnet. + + Ved å skrive de vil altså alt fra markøren til slutten av ordet bli + slettet. + +MERK: Ved å skrive kun bevegelsen i normalmodusen uten en operator vil + markøren flyttes som spesifisert. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + LEKSJON 2.4: BRUK AV TELLER FOR EN BEVEGELSE + + + ** Ved å skrive et tall foran en bevegelse repeterer den så mange ganger. ** + + 1. Flytt markøren til starten av linjen markert ---> nedenfor. + + 2. Skriv 2w for å flytte markøren to ord framover. + + 3. Skriv 3e for å flytte markøren framover til slutten av det tredje + ordet. + + 4. Skriv 0 (null) for å flytte til starten av linjen. + + 5. Repeter steg 2 og 3 med forskjellige tall. + +---> Dette er en linje med noen ord som du kan bevege deg rundt på. + + 6. Gå videre til leksjon 2.5. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 2.5: BRUK AV ANTALL FOR Å SLETTE MER + + + ** Et tall sammen med en operator repeterer den så mange ganger. ** + + I kombinasjonen med sletteoperatoren og en bevegelse nevnt ovenfor setter du + inn antall før bevegelsen for å slette mer: + d nummer bevegelse + + 1. Flytt markøren til det første ordet med STORE BOKSTAVER på linjen markert + med --->. + + 2. Skriv 2dw for å slette de to ordene med store bokstaver. + + 3. Repeter steg 1 og 2 med forskjelling antall for å slette de etterfølgende + ordene som har store bokstaver. + +---> Denne ABC DE linjen FGHI JK LMN OP er nå Q RS TUV litt mer lesbar. + +MERK: Et antall mellom operatoren d og bevegelsen virker på samme måte som å + bruke bevegelsen uten en operator. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 2.6: OPERERE PÅ LINJER + + + ** Trykk dd for å slette en hel linje. ** + + På grunn av at sletting av linjer er mye brukt, fant utviklerne av Vi ut at + det vil være lettere å rett og slett trykke to d-er for å slette en linje. + + 1. Flytt markøren til den andre linjen i verset nedenfor. + 2. Trykk dd å slette linjen. + 3. Flytt deretter til den fjerde linjen. + 4. Trykk 2dd for å slette to linjer. + +---> 1) Roser er røde, +---> 2) Gjørme er gøy, +---> 3) Fioler er blå, +---> 4) Jeg har en bil, +---> 5) Klokker viser tiden, +---> 6) Druer er søte +---> 7) Og du er likeså. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 2.7: ANGRE-KOMMANDOEN + + + ** Trykk u for å angre siste kommando, U for å fikse en hel linje. ** + + 1. Flytt markøren til linjen nedenfor merket ---> og plasser den på den + første feilen. + 2. Trykk x for å slette det første uønskede tegnet. + 3. Trykk så u for å angre den siste utførte kommandoen. + 4. Deretter ordner du alle feilene på linjene ved å bruke kommandoen x . + 5. Trykk nå en stor U for å sette linjen tilbake til det den var + originalt. + 6. Trykk u noen ganger for å angre U og foregående kommandoer. + 7. Deretter trykker du CTRL-R (hold CTRL nede mens du trykker R) noen + ganger for å gjenopprette kommandoene (omgjøre angrekommandoene). + +---> RReparer feiilene påå denne linnnjen oog erssstatt dem meed angre. + + 8. Dette er meget nyttige kommandoer. Nå kan du gå til oppsummeringen av + leksjon 2. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + OPPSUMMERING AV LEKSJON 2 + + + 1. For å slette fra markøren fram til det neste ordet, trykk: dw + 2. For å slette fra markøren til slutten av en linje, trykk: d$ + 3. For å slette en hel linje, trykk: dd + + 4. For å repetere en bevegelse, sett et nummer foran: 2w + 5. Formatet for en forandringskommando er: + operator [nummer] bevegelse + der: + operator - hva som skal gjøres, f.eks. d for å slette + [nummer] - et valgfritt antall for å repetere bevegelsen + bevegelse - hva kommandoen skal operere på, eksempelvis w (ord), + $ (til slutten av linjen) og så videre. + + 6. For å gå til starten av en linje, bruk en null: 0 + + 7. For å angre tidligere endringer, skriv: u (liten u) + For å angre alle forandringer på en linje, skriv: U (stor U) + For å omgjøre angringen, trykk: CTRL-R + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 3.1: «LIM INN»-KOMMANDOEN + + + ** Trykk p for å lime inn tidligere slettet tekst etter markøren ** + + 1. Flytt markøren til den første linjen med ---> nedenfor. + + 2. Trykk dd for å slette linjen og lagre den i et Vim-register. + + 3. Flytt markøren til c)-linjen, OVER posisjonen linjen skal settes inn. + + 4. Trykk p for å legge linjen under markøren. + + 5. Repeter punkt 2 til 4 helt til linjene er i riktig rekkefølge. + +---> d) Kan du også lære? +---> b) Fioler er blå, +---> c) Intelligens må læres, +---> a) Roser er røde, + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 3.2: «ERSTATT»-KOMMANDOEN + + + ** Trykk rx for å erstatte tegnet under markøren med x. ** + + 1. Flytt markøren til den første linjen nedenfor merket --->. + + 2. Flytt markøren så den står oppå den første feilen. + + 3. Trykk r og deretter tegnet som skal være der. + + 4. Repeter punkt 2 og 3 til den første linjen er lik den andre. + +---> Da dfnne lynjxn ble zkrevet, var det nøen som tjykket feite taster! +---> Da denne linjen ble skrevet, var det noen som trykket feile taster! + + 5. Gå videre til leksjon 3.2. + +MERK: Husk at du bør lære ved å BRUKE, ikke pugge. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 3.3: «FORANDRE»-OPERATOREN + + + ** For å forandre til slutten av et ord, trykk ce . ** + + 1. Flytt markøren til den første linjen nedenfor som er merket --->. + + 2. Plasser markøren på u i «lubjwr». + + 3. Trykk ce og det korrekte ordet (i dette tilfellet, skriv «injen»). + + 4. Trykk og gå til det neste tegnet som skal forandres. + + 5. Repeter punkt 3 og 4 helt til den første setningen er lik den andre. + +---> Denne lubjwr har noen wgh som må forkwåp med «forækzryas»-kommandoen. +---> Denne linjen har noen ord som må forandres med «forandre»-kommandoen. + +Vær oppmerksom på at ce sletter ordet og går inn i innsettingsmodus. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 3.4: FLERE FORANDRINGER VED BRUK AV c + + + ** Forandringskommandoen blir brukt med de samme bevegelser som «slett». ** + + 1. Forandringsoperatoren fungerer på samme måte som «slett». Formatet er: + + c [nummer] bevegelse + + 2. Bevegelsene er de samme, som for eksempel w (ord) og $ (slutten av en + linje). + + 3. Gå til den første linjen nedenfor som er merket --->. + + 4. Flytt markøren til den første feilen. + + 5. Skriv c$ og skriv resten av linjen lik den andre og trykk . + +---> Slutten på denne linjen trenger litt hjelp for å gjøre den lik den neste. +---> Slutten på denne linjen trenger å bli rettet ved bruk av c$-kommandoen. + +MERK: Du kan bruke slettetasten for å rette feil mens du skriver. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + OPPSUMMERING AV LEKSJON 3 + + + 1. For å legge tilbake tekst som nettopp er blitt slettet, trykk p . Dette + limer inn den slettede teksten ETTER markøren (hvis en linje ble slettet + vil den bli limt inn på linjen under markøren). + + 2. For å erstatte et tegn under markøren, trykk r og deretter tegnet som + du vil ha der. + + 3. Forandringsoperatoren lar deg forandre fra markøren til dit bevegelsen + tar deg. Det vil si, skriv ce for å forandre fra markøren til slutten + av ordet, c$ for å forandre til slutten av linjen. + + 4. Formatet for «forandre» er: + + c [nummer] bevegelse + +Nå kan du gå til neste leksjon. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 4.1: POSISJONERING AV MARKØREN OG FILSTATUS + + ** Trykk CTRL-G for å vise posisjonen i filen og filstatusen. + Trykk G for å gå til en spesifikk linje i filen. ** + + Merk: Les hele leksjonen før du utfører noen av punktene! + + 1. Hold nede Ctrl-tasten og trykk g . Vi kaller dette CTRL-G. En melding + vil komme til syne på bunnen av skjermen med filnavnet og posisjonen i + filen. Husk linjenummeret for bruk i steg 3. + +Merk: Du kan se markørposisjonen i nederste høyre hjørne av skjermen. Dette + skjer når «ruler»-valget er satt (forklart i leksjon 6). + + 2. Trykk G for å gå til bunnen av filen. + Skriv gg for å gå til begynnelsen av filen. + + 3. Skriv inn linjenummeret du var på og deretter G . Dette vil føre deg + tilbake til linjen du var på da du først trykket CTRL-G. + + 4. Utfør steg 1 til 3 hvis du føler deg sikker på prosedyren. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 4.2: SØKEKOMMANDOEN + + ** Skriv / etterfulgt av en søkestreng som du vil lete etter. ** + + 1. Trykk / når du er i normalmodusen. Legg merke til at skråstreken og + markøren kommer til syne på bunnen av skjermen i likhet med + «:»-kommandoene. + + 2. Skriv «feeeiil» og trykk . Dette er teksten du vil lete etter. + + 3. For å finne neste forekomst av søkestrengen, trykk n . + For å lete etter samme søketeksten i motsatt retning, trykk N . + + 4. For å lete etter en tekst bakover i filen, bruk ? istedenfor / . + + 5. For å gå tilbake til der du kom fra, trykk CTRL-O (Hold Ctrl nede mens + du trykker bokstaven o ). Repeter for å gå enda lengre tilbake. CTRL-I + går framover. + +---> «feeeiil» er ikke måten å skrive «feil» på, feeeiil er helt feil. +Merk: Når søkingen når slutten av filen, vil den fortsette fra starten unntatt + hvis «wrapscan»-valget er resatt. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 4.3: FINN SAMSVARENDE PARENTESER + + + ** Trykk % for å finne en samsvarende ), ] eller } . ** + + 1. Plasser markøren på en (, [ eller { på linjen nedenfor merket --->. + + 2. Trykk % . + + 3. Markøren vil gå til den samsvarende parentesen eller hakeparentesen. + + 4. Trykk % for å flytte markøren til den andre samsvarende parentesen. + + 5. Flytt markøren til en annen (, ), [, ], { eller } og se hva % gjør. + +---> Dette ( er en testlinje med (, [ ] og { } i den )). + +Merk: Dette er veldig nyttig til feilsøking i programmer som har ubalansert + antall parenteser! + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 4.4: ERSTATT-KOMMANDOEN + + + ** Skriv :s/gammel/ny/g for å erstatte «gammel» med «ny». ** + + 1. Flytt markøren til linjen nedenfor som er merket med --->. + + 2. Skriv :s/deen/den/ . Legg merke til at denne kommandoen bare + forandrer den første forekomsten av «deen» på linjen. + + 3. Skriv :s/deen/den/g . Når g-flagget legges til, betyr dette global + erstatning på linjen og erstatter alle forekomster av «deen» på linjen. + +---> deen som kan kaste deen tyngste steinen lengst er deen beste + + 4. For å erstatte alle forekomster av en tekststreng mellom to linjer, + skriv :#,#s/gammel/ny/g der #,# er linjenumrene på de to linjene for + linjeområdet erstatningen skal gjøres. + Skriv :%s/gammel/ny/g for å erstatte tekst i hele filen. + Skriv :%s/gammel/ny/gc for å finne alle forekomster i hele filen, og + deretter spørre om teksten skal erstattes eller + ikke. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + OPPSUMMERING AV LEKSJON 4 + + + 1. Ctrl-G viser nåværende posisjon i filen og filstatusen. + G går til slutten av filen. + nummer G går til det linjenummeret. + gg går til den første linjen. + + 2. Skriv / etterfulgt av en søketekst for å lete FRAMOVER etter teksten. + Skriv ? etterfulgt av en søketekst for å lete BAKOVER etter teksten. + Etter et søk kan du trykke n for å finne neste forekomst i den samme + retningen eller N for å lete i motsatt retning. + CTRL-O tar deg tilbake til gamle posisjoner, CTRL-I til nyere posisjoner. + + 3. Skriv % når markøren står på en (, ), [, ], { eller } for å finne den + som samsvarer. + + 4. Erstatte «gammel» med første «ny» på en linje: :s/gammel/ny + Erstatte alle «gammel» med «ny» på en linje: :s/gammel/ny/g + Erstatte tekst mellom to linjenumre: :#,#s/gammel/ny/g + Erstatte alle forekomster i en fil: :%s/gammel/ny/g + For å godkjenne hver erstatning, legg til «c»: :%s/gammel/ny/gc +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 5.1: HVORDAN UTFØRE EN EKSTERN KOMMANDO + + + ** Skriv :! etterfulgt av en ekstern kommando for å utføre denne. ** + + 1. Skriv den velkjente kommandoen : for å plassere markøren på bunnen av + skjermen. Dette lar deg skrive en kommandolinjekommando. + + 2. Nå kan du skrive tegnet ! . Dette lar deg utføre en hvilken som helst + ekstern kommando. + + 3. Som et eksempel, skriv ls etter utropstegnet og trykk . Du vil + nå få en liste over filene i katalogen, akkurat som om du hadde kjørt + kommandoen direkte fra kommandolinjen i skallet. Eller bruk :!dir hvis + «ls» ikke virker. + +MERK: Det er mulig å kjøre alle eksterne kommandoer på denne måten, også med + parametere. + +MERK: Alle «:»-kommandoer må avsluttes med . Fra dette punktet er det + ikke alltid vi nevner det. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 5.2: MER OM LAGRING AV FILER + + + ** For å lagre endringene gjort i en tekst, skriv :w FILNAVN. ** + + 1. Skriv :!dir eller :!ls for å få en liste over filene i katalogen. Du + vet allerede at du må trykke etter dette. + + 2. Velg et filnavn på en fil som ikke finnes, som for eksempel TEST . + + 3. Skriv :w TEST (der TEST er filnavnet du velger). + + 4. Dette lagrer hele filen (denne innføringen) under navnet TEST . For å + sjekke dette, skriv :!dir eller :!ls igjen for å se innholdet av + katalogen. + +Merk: Hvis du nå hadde avsluttet Vim og startet på nytt igjen med «vim TEST», + ville filen vært en eksakt kopi av innføringen da du lagret den. + + 5. Fjern filen ved å skrive :!rm TEST hvis du er på et Unix-lignende + operativsystem, eller :!del TEST hvis du bruker MS-DOS. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 5.3: VELGE TEKST SOM SKAL LAGRES + + + ** For å lagre en del av en fil, skriv v bevegelse :w FILNAVN ** + + 1. Flytt markøren til denne linjen. + + 2. Trykk v og flytt markøren til det femte elementet nedenfor. Legg merke + til at teksten blir markert. + + 3. Trykk : (kolon). På bunnen av skjermen vil :'<,'> komme til syne. + + 4. Trykk w TEST , der TEST er et filnavn som ikke finnes enda. Kontroller + at du ser :'<,'>w TEST før du trykker Enter. + + 5. Vim vil skrive de valgte linjene til filen TEST. Bruk :!dir eller !ls + for å se den. Ikke slett den enda! Vi vil bruke den i neste leksjon. + +MERK: Ved å trykke v startes visuelt valg. Du kan flytte markøren rundt for + å gjøre det valgte området større eller mindre. Deretter kan du bruke en + operator for å gjøre noe med teksten. For eksempel sletter d teksten. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 5.4: HENTING OG SAMMENSLÅING AV FILER + + + ** For å lese inn en annen fil inn i nåværende buffer, skriv :r FILNAVN ** + + 1. Plasser markøren like over denne linjen. + +MERK: Etter å ha utført steg 2 vil du se teksten fra leksjon 5.3. Gå deretter + NED for å se denne leksjonen igjen. + + 2. Hent TEST-filen ved å bruke kommandoen :r TEST der TEST er navnet på + filen du brukte. Filen du henter blir plassert nedenfor markørlinjen. + + 3. For å sjekke at filen ble hentet, gå tilbake og se at det er to kopier av + leksjon 5.3, originalen og denne versjonen. + +MERK: Du kan også lese utdataene av en ekstern kommando. For eksempel, :r !ls + leser utdataene av ls-kommandoen og legger dem nedenfor markøren. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + OPPSUMMERING AV LEKSJON 5 + + + 1. :!kommando utfører en ekstern kommandio. + + Noen nyttige eksempler er: + (MS-DOS) (Unix) + :!dir :!ls - List filene i katalogen. + :!del FILNAVN :!rm FILNAVN - Slett filen FILNAVN. + + 2. :w FILNAVN skriver den nåværende Vim-filen disken med navnet FILNAVN . + + 3. v bevegelse :w FILNAVN lagrer de visuelt valgte linjene til filen + FILNAVN. + + 4. :r FILNAVN henter filen FILNAVN og legger den inn nedenfor markøren. + + 5. :r !dir leser utdataene fra «dir»-kommandoen og legger dem nedenfor + markørposisjonen. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 6.1: «ÅPNE LINJE»-KOMMANDOEN + + + ** Skriv o for å «åpne opp» for en ny linje etter markøren og gå til + innsettingsmodus ** + + 1. Flytt markøren til linjen nedenfor merket --->. + + 2. Skriv o (liten o) for å åpne opp en linje NEDENFOR markøren og gå inn i + innsettingsmodus. + + 3. Skriv litt tekst og trykk for å gå ut av innsettingsmodusen. + +---> Etter at o er skrevet blir markøren plassert på den tomme linjen. + + 4. For å åpne en ny linje OVER markøren, trykk rett og slett en stor O + istedenfor en liten o . Prøv dette på linjen nedenfor. + +---> Lag ny linje over denne ved å trykke O mens markøren er på denne linjen. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 6.2: «LEGG TIL»-KOMMANDOEN + + + ** Skriv a for å legge til tekst ETTER markøren. ** + + 1. Flytt markøren til starten av linjen merket ---> nedenfor. + + 2. Trykk e til markøren er på slutten av «li». + + 3. Trykk a (liten a) for å legge til tekst ETTER markøren. + + 4. Fullfør ordet sånn som på linjen nedenfor. Trykk for å gå ut av + innsettingsmodusen. + + 5. Bruk e for å gå til det neste ufullstendige ordet og repeter steg 3 og + 4. + +---> Denne li lar deg øve på å leg til tek på en linje. +---> Denne linjen lar deg øve på å legge til tekst på en linje. + +Merk: a, i og A går alle til den samme innsettingsmodusen, den eneste + forskjellen er hvor tegnene blir satt inn. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 6.3: EN ANNEN MÅTE Å ERSTATTE PÅ + + + ** Skriv en stor R for å erstatte mer enn ett tegn. ** + + 1. Flytt markøren til den første linjen nedenfor merket --->. Flytt markøren + til begynnelsen av den første «xxx»-en. + + 2. Trykk R og skriv inn tallet som står nedenfor på den andre linjen så + det erstatter xxx. + + 3. Trykk for å gå ut av erstatningsmodusen. Legg merke til at resten + av linjen forblir uforandret. + + 4. Repeter stegene for å erstatte den gjenværende xxx. + +---> Ved å legge 123 til xxx får vi xxx. +---> Ved å legge 123 til 456 får vi 579. + +MERK: Erstatningsmodus er lik insettingsmodus, men hvert tegn som skrives + erstatter et eksisterende tegn. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 6.4: KOPIERE OG LIME INN TEKST + + + ** Bruk y-operatoren for å kopiere tekst og p for å lime den inn ** + + 1. Gå til linjen merket ---> nedenfor og plasser markøren etter «a)». + + 2. Gå inn i visuell modus med v og flytt markøren til like før «første». + + 3. Trykk y for å kopiere (engelsk: «yank») den uthevede teksten. + + 4. Flytt markøren til slutten av den neste linjen: j$ + + 5. Trykk p for å lime inn teksten. Trykk deretter: a andre . + + 6. Bruk visuell modus for å velge « valget.», kopier det med y , gå til + slutten av den neste linjen med j$ og legg inn teksten der med p . + +---> a) Dette er det første valget. + b) + +Merk: Du kan også bruke y som en operator; yw kopierer ett ord. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 6.5: SETT VALG + + + ** Sett et valg så søk eller erstatning ignorerer store/små bokstaver. ** + + 1. Let etter «ignore» ved å skrive: /ignore + Repeter flere ganger ved å trykke n . + + 2. Sett «ic»-valget (Ignore Case) ved å skrive: :set ic + + 3. Søk etter «ignore» igjen ved å trykke n . + Legg merke til at både «Ignore» og «IGNORE» blir funnet. + + 4. Sett «hlsearch»- og «incsearch»-valgene: :set hls is + + 5. Skriv søkekommandoen igjen og se hva som skjer: /ignore + + 6. For å slå av ignorering av store/små bokstaver, skriv: :set noic + +Merk: For å fjerne uthevingen av treff, skriv: :nohlsearch +Merk: Hvis du vil ignorere store/små bokstaver for kun en søkekommando, bruk + \c i uttrykket: /ignore\c +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + OPPSUMMERING AV LEKSJON 6 + + 1. Trykk o for å legge til en linje NEDENFOR markøren og gå inn i + innsettingsmodus. + Trykk O for å åpne en linje OVER markøren. + + 2. Skriv a for å sette inn tekst ETTER markøren. + Skriv A for å sette inn tekst etter slutten av linjen. + + 3. Kommandoen e går til slutten av et ord. + + 4. Operatoren y («yank») kopierer tekst, p («paste») limer den inn. + + 5. Ved å trykke R går du inn i erstatningsmodus helt til trykkes. + + 6. Skriv «:set xxx» for å sette valget «xxx». Noen valg er: + «ic» «ignorecase» ignorer store/små bokstaver under søk + «is» «incsearch» vis delvise treff for en søketekst + «hls» «hlsearch» uthev alle søketreff + + 7. Legg til «no» foran valget for å slå det av: :set noic + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 7.1: FÅ HJELP + + + ** Bruk det innebygde hjelpesystemet. ** + + Vim har et omfattende innebygget hjelpesystem. For å starte det, prøv en av + disse måtene: + - Trykk Hjelp-tasten (hvis du har en) + - Trykk F1-tasten (hvis du har en) + - Skriv :help + + Les teksten i hjelpevinduet for å finne ut hvordan hjelpen virker. + Skriv CTRL-W CTRL-W for å hoppe fra et vindu til et annet + Skriv :q for å lukke hjelpevinduet. + + Du kan få hjelp for omtrent alle temaer om Vim ved å skrive et parameter til + «:help»-kommandoen. Prøv disse (ikke glem å trykke ): + + :help w + :help c_CTRL-D + :help insert-index + :help user-manual +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 7.2: LAG ET OPPSTARTSSKRIPT + + + ** Slå på funksjoner i Vim ** + + Vim har mange flere funksjoner enn Vi, men flesteparten av dem er slått av + som standard. For å begynne å bruke flere funksjoner må du lage en + «vimrc»-fil. + + 1. Start redigeringen av «vimrc»-filen. Dette avhenger av systemet ditt: + :e ~/.vimrc for Unix + :e $VIM/_vimrc for MS Windows + + 2. Les inn eksempelfilen for «vimrc»: + :r $VIMRUNTIME/vimrc_example.vim + + 3. Lagre filen med: + :w + + Neste gang du starter Vim vil den bruke syntaks-utheving. Du kan legge til + alle dine foretrukne oppsett i denne «vimrc»-filen. + For mer informasjon, skriv :help vimrc-intro +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leksjon 7.3: FULLFØRING + + + ** Kommandolinjefullføring med CTRL-D og ** + + 1. Vær sikker på at Vim ikke er i Vi-kompatibel modus: :set nocp + + 2. Se hvilke filer som er i katalogen: :!ls eller :!dir + + 3. Skriv starten på en kommando: :e + + 4. Trykk CTRL-D og Vim vil vise en liste over kommandoer som starter med + «e». + + 5. Trykk og Vim vil fullføre kommandonavnet til «:edit». + + 6. Legg til et mellomrom og starten på et eksisterende filnavn: :edit FIL + + 7. Trykk . Vim vil fullføre navnet (hvis det er unikt). + +MERK: Fullføring fungerer for mange kommandoer. Prøv ved å trykke CTRL-D og + . Det er spesielt nyttig for bruk sammen med :help . +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + OPPSUMMERING AV LEKSJON 7 + + + 1. Skriv :help eller trykk eller for å åpne et hjelpevindu. + + 2. Skriv :help kommando for å få hjelp om kommando . + + 3. Trykk CTRL-W CTRL-W for å hoppe til et annet vindu. + + 4. Trykk :q for å lukke hjelpevinduet. + + 5. Opprett et vimrc-oppstartsskript for å lagre favorittvalgene dine. + + 6. Når du skriver en «:»-kommando, trykk CTRL-D for å se mulige + fullføringer. Trykk for å bruke en fullføring. + + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + Her slutter innføringen i Vim. Den var ment som en rask oversikt over + editoren, akkurat nok til å la deg sette i gang med enkel bruk. Den er på + langt nær komplett, da Vim har mange flere kommandoer. Les bruksanvisningen + ved å skrive :help user-manual . + + For videre lesing og studier, kan denne boken anbefales: + «Vim - Vi Improved» av Steve Oualline + Utgiver: New Riders + Den første boken som er fullt og helt dedisert til Vim. Spesielt nyttig for + nybegynnere. Inneholder mange eksempler og illustrasjoner. + Se http://iccf-holland.org/click5.html + + Denne boken er eldre og handler mer om Vi enn Vim, men anbefales også: + «Learning the Vi Editor» av Linda Lamb + Utgiver: O'Reilly & Associates Inc. + Det er en god bok for å få vite omtrent hva som helst om Vi. + Den sjette utgaven inneholder også informasjon om Vim. + + Denne innføringen er skrevet av Michael C. Pierce og Robert K. Ware, + Colorado School of Mines med idéer av Charles Smith, Colorado State + University. E-mail: bware@mines.colorado.edu . + + Modifisert for Vim av Bram Moolenaar. + Oversatt av Øyvind A. Holm. E-mail: vimtutor _AT_ sunbase.org + Id: tutor.no 406 2007-03-18 22:48:36Z sunny + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +vim: set ts=8 : -- 2.11.4.GIT