diff options
author | Bram Moolenaar <Bram@vim.org> | 2007-05-05 17:59:48 +0000 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2007-05-05 17:59:48 +0000 |
commit | 756ec0f3c999500f331ac019f5053b76e40b84de (patch) | |
tree | 31b20204adbb9df4cc408eb854ecc5bdcc7148d0 /runtime | |
parent | 313b7237adc1808b896d2bdc54963c1c90c72e87 (diff) | |
download | vim-git-756ec0f3c999500f331ac019f5053b76e40b84de.tar.gz |
updated for version 7.1a
Diffstat (limited to 'runtime')
-rw-r--r-- | runtime/doc/usr_31.txt | 2 | ||||
-rw-r--r-- | runtime/doc/windows.txt | 11 | ||||
-rw-r--r-- | runtime/ftplugin/ruby.vim | 130 | ||||
-rw-r--r-- | runtime/syntax/apache.vim | 8 | ||||
-rw-r--r-- | runtime/syntax/django.vim | 37 | ||||
-rw-r--r-- | runtime/tutor/tutor | 84 | ||||
-rw-r--r-- | runtime/tutor/tutor.tr.iso9 | 813 |
7 files changed, 999 insertions, 86 deletions
diff --git a/runtime/doc/usr_31.txt b/runtime/doc/usr_31.txt index 4c1123218..4a73cde2a 100644 --- a/runtime/doc/usr_31.txt +++ b/runtime/doc/usr_31.txt @@ -1,4 +1,4 @@ -*usr_31.txt* For Vim version 7.0. Last change: 2006 Apr 24 +*usr_31.txt* For Vim version 7.1a. Last change: 2006 Apr 24 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/windows.txt b/runtime/doc/windows.txt index fb4a3b436..1b18b2e0a 100644 --- a/runtime/doc/windows.txt +++ b/runtime/doc/windows.txt @@ -1,4 +1,4 @@ -*windows.txt* For Vim version 7.0. Last change: 2006 Apr 24 +*windows.txt* For Vim version 7.1a. Last change: 2007 Mar 17 VIM REFERENCE MANUAL by Bram Moolenaar @@ -200,6 +200,7 @@ window will appear. :vert[ical] {cmd} Execute {cmd}. If it contains a command that splits a window, it will be split vertically. + Doesn't work for |:execute| and |:normal|. :lefta[bove] {cmd} *:lefta* *:leftabove* :abo[veleft] {cmd} *:abo* *:aboveleft* @@ -207,6 +208,7 @@ window will appear. it will be opened left (vertical split) or above (horizontal split) the current window. Overrules 'splitbelow' and 'splitright'. + Doesn't work for |:execute| and |:normal|. :rightb[elow] {cmd} *:rightb* *:rightbelow* :bel[owright] {cmd} *:bel* *:belowright* @@ -214,6 +216,7 @@ window will appear. it will be opened right (vertical split) or below (horizontal split) the current window. Overrules 'splitbelow' and 'splitright'. + Doesn't work for |:execute| and |:normal|. *:topleft* *E442* :to[pleft] {cmd} @@ -221,6 +224,7 @@ window will appear. it will appear at the top and occupy the full width of the Vim window. When the split is vertical the window appears at the far left and occupies the full height of the Vim window. + Doesn't work for |:execute| and |:normal|. *:botright* :bo[tright] {cmd} @@ -228,6 +232,7 @@ window will appear. it will appear at the bottom and occupy the full width of the Vim window. When the split is vertical the window appears at the far right and occupies the full height of the Vim window. + Doesn't work for |:execute| and |:normal|. These command modifiers can be combined to make a vertically split window occupy the full height. Example: > @@ -447,6 +452,8 @@ CTRL-W T Move the current window to a new tab page. This fails if *CTRL-W_=* CTRL-W = Make all windows (almost) equally high and wide, but use 'winheight' and 'winwidth' for the current window. + Windows with 'winfixheight' set keep their height and windows + with 'winfixwidth' set keep their width. :res[ize] -N *:res* *:resize* *CTRL-W_-* CTRL-W - Decrease current window height by N (default 1). @@ -1118,7 +1125,7 @@ list of buffers. |unlisted-buffer| of windows opened ('winwidth' if |:vertical| was prepended). Buf/Win Enter/Leave autocommands are not executed for the new windows here, that's only done when they are really entered. - When the |:tab| modifier is used new windows are opended in a + When the |:tab| modifier is used new windows are opened in a new tab, up to 'tabpagemax'. Note: All the commands above that start editing another buffer, keep the diff --git a/runtime/ftplugin/ruby.vim b/runtime/ftplugin/ruby.vim index 66cfcc787..630d260c9 100644 --- a/runtime/ftplugin/ruby.vim +++ b/runtime/ftplugin/ruby.vim @@ -4,10 +4,10 @@ " Info: $Id$ " URL: http://vim-ruby.rubyforge.org " Anon CVS: See above site -" Release Coordinator: Doug Kearns <dougkearns@gmail.com> +" Release Coordinator: Doug Kearns <dougkearns@gmail.com> " ---------------------------------------------------------------------------- " -" Original matchit support thanks to Ned Konz. See his ftplugin/ruby.vim at +" Original matchit support thanks to Ned Konz. See his ftplugin/ruby.vim at " http://bike-nomad.com/vim/ruby.vim. " ---------------------------------------------------------------------------- @@ -20,31 +20,37 @@ let b:did_ftplugin = 1 let s:cpo_save = &cpo set cpo&vim +if has("gui_running") && !has("gui_win32") + setlocal keywordprg=ri\ -T +else + setlocal keywordprg=ri +endif + " Matchit support if exists("loaded_matchit") && !exists("b:match_words") let b:match_ignorecase = 0 " TODO: improve optional do loops - let b:match_words = - \ '\%(' . - \ '\%(\%(\.\|\:\:\)\s*\|\:\)\@<!\<\%(class\|module\|begin\|def\|case\|for\|do\)\>' . - \ '\|' . - \ '\%(\%(^\|\.\.\.\=\|[\,;=([<>~\*/%!&^|+-]\)\s*\)\@<=\%(if\|unless\|until\|while\)\>' . - \ '\)' . - \ ':' . - \ '\%(' . - \ '\%(\%(\.\|\:\:\)\s*\|\:\)\@<!\<\%(else\|elsif\|ensure\|when\)\>' . - \ '\|' . - \ '\%(\%(^\|;\)\s*\)\@<=\<rescue\>' . - \ '\)' . - \ ':' . - \ '\%(\%(\.\|\:\:\)\s*\|\:\)\@<!\<end\>' . - \ ',{:},\[:\],(:)' + let b:match_words = + \ '\%(' . + \ '\%(\%(\.\|\:\:\)\s*\|\:\)\@<!\<\%(class\|module\|begin\|def\|case\|for\|do\)\>' . + \ '\|' . + \ '\%(\%(^\|\.\.\.\=\|[{\:\,;([<>~\*/%&^|+-]\|\%(\<[_[\:lower\:]][_[\:alnum\:]]*\)\@<![!=?]\)\s*\)\@<=\%(if\|unless\|while\|until\)\>' . + \ '\)' . + \ ':' . + \ '\%(' . + \ '\%(\%(\.\|\:\:\)\s*\|\:\)\@<!\<\%(else\|elsif\|ensure\|when\)\>' . + \ '\|' . + \ '\%(\%(^\|;\)\s*\)\@<=\<rescue\>' . + \ '\)' . + \ ':' . + \ '\%(\%(\.\|\:\:\)\s*\|\:\)\@<!\<end\>' . + \ ',{:},\[:\],(:)' let b:match_skip = - \ "synIDattr(synID(line('.'),col('.'),0),'name') =~ '" . - \ "\\<ruby\\%(String\\|StringDelimiter\\|ASCIICode\\|Interpolation\\|" . - \ "NoInterpolation\\|Escape\\|Comment\\|Documentation\\)\\>'" + \ "synIDattr(synID(line('.'),col('.'),0),'name') =~ '" . + \ "\\<ruby\\%(String\\|StringDelimiter\\|ASCIICode\\|Interpolation\\|" . + \ "NoInterpolation\\|Escape\\|Comment\\|Documentation\\)\\>'" endif @@ -54,10 +60,16 @@ setlocal include=^\\s*\\<\\(load\\\|\w*require\\)\\> setlocal includeexpr=substitute(substitute(v:fname,'::','/','g'),'$','.rb','') setlocal suffixesadd=.rb -if version >= 700 +if exists("&ofu") && has("ruby") setlocal omnifunc=rubycomplete#Complete endif +" To activate, :set ballooneval +if has('balloon_eval') && exists('+balloonexpr') + setlocal balloonexpr=RubyBalloonexpr() +endif + + " TODO: "setlocal define=^\\s*def @@ -65,7 +77,10 @@ setlocal comments=:# setlocal commentstring=#\ %s if !exists("s:rubypath") - if executable("ruby") + if has("ruby") && has("win32") + ruby VIM::command( 'let s:rubypath = "%s"' % ($: + begin; require %q{rubygems}; Gem.all_load_paths.sort.uniq; rescue LoadError; []; end).join(%q{,}) ) + let s:rubypath = '.,' . substitute(s:rubypath, '\%(^\|,\)\.\%(,\|$\)', ',,', '') + elseif executable("ruby") let s:code = "print ($: + begin; require %q{rubygems}; Gem.all_load_paths.sort.uniq; rescue LoadError; []; end).join(%q{,})" if &shellxquote == "'" let s:rubypath = system('ruby -e "' . s:code . '"') @@ -84,21 +99,78 @@ let &l:path = s:rubypath if has("gui_win32") && !exists("b:browsefilter") let b:browsefilter = "Ruby Source Files (*.rb)\t*.rb\n" . - \ "All Files (*.*)\t*.*\n" + \ "All Files (*.*)\t*.*\n" endif -let b:undo_ftplugin = "setl fo< inc< inex< sua< def< com< cms< path< " +let b:undo_ftplugin = "setl fo< inc< inex< sua< def< com< cms< path< kp<" \ "| unlet! b:browsefilter b:match_ignorecase b:match_words b:match_skip" + \ "| if exists('&ofu') && has('ruby') | setl ofu< | endif" + \ "| if has('balloon_eval') && exists('+bexpr') | setl bexpr< | endif" let &cpo = s:cpo_save unlet s:cpo_save +if exists("g:did_ruby_ftplugin_functions") + finish +endif +let g:did_ruby_ftplugin_functions = 1 + +function! RubyBalloonexpr() + if !exists('s:ri_found') + let s:ri_found = executable('ri') + endif + if s:ri_found + let line = getline(v:beval_lnum) + let b = matchstr(strpart(line,0,v:beval_col),'\%(\w\|[:.]\)*$') + let a = substitute(matchstr(strpart(line,v:beval_col),'^\w*\%([?!]\|\s*=\)\?'),'\s\+','','g') + let str = b.a + let before = strpart(line,0,v:beval_col-strlen(b)) + let after = strpart(line,v:beval_col+strlen(a)) + if str =~ '^\.' + let str = substitute(str,'^\.','#','g') + if before =~ '\]\s*$' + let str = 'Array'.str + elseif before =~ '}\s*$' + " False positives from blocks here + let str = 'Hash'.str + elseif before =~ "[\"'`]\\s*$" || before =~ '\$\d\+\s*$' + let str = 'String'.str + elseif before =~ '\$\d\+\.\d\+\s*$' + let str = 'Float'.str + elseif before =~ '\$\d\+\s*$' + let str = 'Integer'.str + elseif before =~ '/\s*$' + let str = 'Regexp'.str + else + let str = substitute(str,'^#','.','') + endif + endif + let str = substitute(str,'.*\.\s*to_f\s*\.\s*','Float#','') + let str = substitute(str,'.*\.\s*to_i\%(nt\)\=\s*\.\s*','Integer#','') + let str = substitute(str,'.*\.\s*to_s\%(tr\)\=\s*\.\s*','String#','') + let str = substitute(str,'.*\.\s*to_sym\s*\.\s*','Symbol#','') + let str = substitute(str,'.*\.\s*to_a\%(ry\)\=\s*\.\s*','Array#','') + let str = substitute(str,'.*\.\s*to_proc\s*\.\s*','Proc#','') + if str !~ '^\w' + return '' + endif + silent! let res = substitute(system("ri -f simple -T \"".str.'"'),'\n$','','') + if res =~ '^Nothing known about' || res =~ '^Bad argument:' + return '' + endif + return res + else + return "" + endif +endfunction + + " " Instructions for enabling "matchit" support: " " 1. Look for the latest "matchit" plugin at " -" http://www.vim.org/scripts/script.php?script_id=39 +" http://www.vim.org/scripts/script.php?script_id=39 " " It is also packaged with Vim, in the $VIMRUNTIME/macros directory. " @@ -109,16 +181,16 @@ unlet s:cpo_save " 4. Ensure this file (ftplugin/ruby.vim) is installed. " " 5. Ensure you have this line in your $HOME/.vimrc: -" filetype plugin on +" filetype plugin on " " 6. Restart Vim and create the matchit documentation: " -" :helptags ~/.vim/doc +" :helptags ~/.vim/doc " " Now you can do ":help matchit", and you should be able to use "%" on Ruby -" keywords. Try ":echo b:match_words" to be sure. +" keywords. Try ":echo b:match_words" to be sure. " -" Thanks to Mark J. Reed for the instructions. See ":help vimrc" for the +" Thanks to Mark J. Reed for the instructions. See ":help vimrc" for the " locations of plugin directories, etc., as there are several options, and it " differs on Windows. Email gsinclair@soyabean.com.au if you need help. " diff --git a/runtime/syntax/apache.vim b/runtime/syntax/apache.vim index d15388a84..db08ab457 100644 --- a/runtime/syntax/apache.vim +++ b/runtime/syntax/apache.vim @@ -4,9 +4,9 @@ " Maintainer: David Ne\v{c}as (Yeti) <yeti@physics.muni.cz> " License: This file can be redistribued and/or modified under the same terms " as Vim itself. -" Last Change: 2006-04-12 +" Last Change: 2006-12-13 " URL: http://trific.ath.cx/Ftp/vim/syntax/apache.vim -" Notes: Last synced with apache-2.2.0, version 1.x is no longer supported +" Notes: Last synced with apache-2.2.3, version 1.x is no longer supported " TODO: see particular FIXME's scattered through the file " make it really linewise? " + add `display' where appropriate @@ -94,7 +94,7 @@ syn keyword apacheDeclaration AddAlt AddAltByEncoding AddAltByType AddDescriptio syn keyword apacheDeclaration IndexStyleSheet syn keyword apacheOption DescriptionWidth FancyIndexing FoldersFirst IconHeight IconsAreLinks IconWidth NameWidth ScanHTMLTitles SuppressColumnSorting SuppressDescription SuppressHTMLPreamble SuppressLastModified SuppressSize TrackModified syn keyword apacheOption Ascending Descending Name Date Size Description -syn keyword apacheOption HTMLTable SupressIcon SupressRules VersionSort XHTML +syn keyword apacheOption HTMLTable SuppressIcon SuppressRules VersionSort XHTML syn keyword apacheOption IgnoreClient IgnoreCase ShowForbidden SuppresRules syn keyword apacheDeclaration CacheForceCompletion CacheMaxStreamingBuffer syn keyword apacheDeclaration CacheDefaultExpire CacheDisable CacheEnable CacheIgnoreCacheControl CacheIgnoreHeaders CacheIgnoreNoLastMod CacheLastModifiedFactor CacheMaxExpire CacheStoreNoStore CacheStorePrivate @@ -161,7 +161,7 @@ syn keyword apacheDeclaration RewriteBase RewriteCond RewriteEngine RewriteLock syn keyword apacheOption inherit syn keyword apacheDeclaration BrowserMatch BrowserMatchNoCase SetEnvIf SetEnvIfNoCase syn keyword apacheDeclaration LoadFile LoadModule -syn keyword apacheDeclaration CheckSpelling +syn keyword apacheDeclaration CheckSpelling CheckCaseOnly syn keyword apacheDeclaration SSLCACertificateFile SSLCACertificatePath SSLCADNRequestFile SSLCADNRequestPath SSLCARevocationFile SSLCARevocationPath SSLCertificateChainFile SSLCertificateFile SSLCertificateKeyFile SSLCipherSuite SSLCryptoDevice SSLEngine SSLHonorCipherOrder SSLMutex SSLOptions SSLPassPhraseDialog SSLProtocol SSLProxyCACertificateFile SSLProxyCACertificatePath SSLProxyCARevocationFile SSLProxyCARevocationPath SSLProxyCipherSuite SSLProxyEngine SSLProxyMachineCertificateFile SSLProxyMachineCertificatePath SSLProxyProtocol SSLProxyVerify SSLProxyVerifyDepth SSLRandomSeed SSLRequire SSLRequireSSL SSLSessionCache SSLSessionCacheTimeout SSLUserName SSLVerifyClient SSLVerifyDepth syn match apacheOption "[+-]\?\<\(StdEnvVars\|CompatEnvVars\|ExportCertData\|FakeBasicAuth\|StrictRequire\|OptRenegotiate\)\>" syn keyword apacheOption builtin sem diff --git a/runtime/syntax/django.vim b/runtime/syntax/django.vim index fc48d2608..d8250d2ae 100644 --- a/runtime/syntax/django.vim +++ b/runtime/syntax/django.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: Django template " Maintainer: Dave Hodder <dmh@dmh.org.uk> -" Last Change: 2006 Mar 23 +" Last Change: 2007 Jan 26 " For version 5.x: Clear all syntax items " For version 6.x: Quit when a syntax file was already loaded @@ -13,9 +13,12 @@ endif syntax case match +" Mark illegal characters +syn match djangoError "%}\|}}\|#}" + " Django template built-in tags and parameters " 'comment' doesn't appear here because it gets special treatment -syn keyword djangoStatement contained as block endblock by cycle debug else +syn keyword djangoStatement contained and as block endblock by cycle debug else syn keyword djangoStatement contained extends filter endfilter firstof for syn keyword djangoStatement contained endfor if endif ifchanged endifchanged syn keyword djangoStatement contained ifequal endifequal ifnotequal @@ -23,7 +26,11 @@ syn keyword djangoStatement contained endifnotequal in include load not now or syn keyword djangoStatement contained parsed regroup reversed spaceless syn keyword djangoStatement contained endspaceless ssi templatetag openblock syn keyword djangoStatement contained closeblock openvariable closevariable -syn keyword djangoStatement contained widthratio with +syn keyword djangoStatement contained openbrace closebrace opencomment +syn keyword djangoStatement contained closecomment widthratio with +syn keyword djangoStatement contained get_current_language trans noop blocktrans +syn keyword djangoStatement contained endblocktrans get_available_languages +syn keyword djangoStatement contained get_current_language_bidi plural " Django templete built-in filters syn keyword djangoFilter contained add addslashes capfirst center cut date @@ -34,19 +41,28 @@ syn keyword djangoFilter contained floatformat get_digit join length length_is syn keyword djangoFilter contained linebreaks linebreaksbr linenumbers ljust syn keyword djangoFilter contained lower make_list phone2numeric pluralize syn keyword djangoFilter contained pprint random removetags rjust slice slugify -syn keyword djangoFilter contained stringformat striptags time timesince title +syn keyword djangoFilter contained stringformat striptags +syn keyword djangoFilter contained time timesince timeuntil title syn keyword djangoFilter contained truncatewords unordered_list upper urlencode syn keyword djangoFilter contained urlize urlizetrunc wordcount wordwrap yesno +" Keywords to highlight within comments +syn keyword djangoTodo contained TODO FIXME XXX + " Django template constants (always surrounded by double quotes) syn region djangoArgument contained start=/"/ skip=/\\"/ end=/"/ +" Mark illegal characters within tag and variables blocks +syn match djangoTagError contained "#}\|{{\|[^%]}}\|[<>!=&#]" +syn match djangoVarError contained "#}\|{%\|%}\|[<>!=&#%]" + " Django template tag and variable blocks -syn region djangoTagBlock start="{%" end="%}" contains=djangoStatement,djangoFilter,djangoArgument display -syn region djangoVarBlock start="{{" end="}}" contains=djangoFilter,djangoArgument display +syn region djangoTagBlock start="{%" end="%}" contains=djangoStatement,djangoFilter,djangoArgument,djangoTagError display +syn region djangoVarBlock start="{{" end="}}" contains=djangoFilter,djangoArgument,djangoVarError display -" Django template 'comment' tag -syn region djangoComment start="{%\s*comment\s*%}" end="{%\s*endcomment\s*%}" +" Django template 'comment' tag and comment block +syn region djangoComment start="{%\s*comment\s*%}" end="{%\s*endcomment\s*%}" contains=djangoTodo +syn region djangoComBlock start="{#" end="#}" contains=djangoTodo " Define the default highlighting. " For version 5.7 and earlier: only when not done already @@ -64,7 +80,12 @@ if version >= 508 || !exists("did_django_syn_inits") HiLink djangoStatement Statement HiLink djangoFilter Identifier HiLink djangoArgument Constant + HiLink djangoTagError Error + HiLink djangoVarError Error + HiLink djangoError Error HiLink djangoComment Comment + HiLink djangoComBlock Comment + HiLink djangoTodo Todo delcommand HiLink endif diff --git a/runtime/tutor/tutor b/runtime/tutor/tutor index 04fe335b8..32aef9445 100644 --- a/runtime/tutor/tutor +++ b/runtime/tutor/tutor @@ -29,7 +29,7 @@ ^ k Hint: The h key is at the left and moves left. < h l > The l key is at the right and moves right. - j The j key looks like a down arrow + j The j key looks like a down arrow. v 1. Move the cursor around the screen until you are comfortable. @@ -38,10 +38,10 @@ 3. Using the down key, move to Lesson 1.2. -Note: If you are ever unsure about something you typed, press <ESC> to place +NOTE: If you are ever unsure about something you typed, press <ESC> to place you in Normal mode. Then retype the command you wanted. -Note: The cursor keys should also work. But using hjkl you will be able to +NOTE: The cursor keys should also work. But using hjkl you will be able to move around much faster, once you get used to it. Really! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -109,7 +109,7 @@ NOTE: As you go through this tutor, do not try to memorize, learn by usage. ---> There is text misng this . ---> There is some text missing from this line. - 5. When you are comfortable inserting text move to the summary below. + 5. When you are comfortable inserting text move to lesson 1.5. @@ -160,7 +160,7 @@ NOTE: As you go through this tutor, do not try to memorize, learn by usage. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - LESSON 1 SUMMARY + Lesson 1 SUMMARY 1. The cursor is moved using either the arrow keys or the hjkl keys. @@ -286,15 +286,15 @@ NOTE: Pressing just the motion while in Normal mode without an operator will 1. Move the cursor to the first UPPER CASE word in the line marked --->. - 2. Type 2dw to delete the two UPPER CASE words + 2. Type d2w to delete the two UPPER CASE words 3. Repeat steps 1 and 2 with a different count to delete the consecutive UPPER CASE words with one command ---> this ABC DE line FGHI JK LMN OP of words is Q RS TUV cleaned up. -NOTE: A count between the operator d and the motion works similar to - using the motion without an operator. + + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -344,10 +344,10 @@ NOTE: A count between the operator d and the motion works similar to ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - LESSON 2 SUMMARY + Lesson 2 SUMMARY - 1. To delete from the cursor upto the next word type: dw + 1. To delete from the cursor up to the next word type: dw 2. To delete from the cursor to the end of a line type: d$ 3. To delete a whole line type: dd @@ -357,7 +357,7 @@ NOTE: A count between the operator d and the motion works similar to where: operator - is what to do, such as d for delete [number] - is an optional count to repeat the motion - motion - moves over the text to operator on, such as w (word), + motion - moves over the text to operate on, such as w (word), $ (to the end of line), etc. 6. To move to the start of the line use a zero: 0 @@ -406,7 +406,7 @@ NOTE: A count between the operator d and the motion works similar to ---> Whan this lime was tuoed in, someone presswd some wrojg keys! ---> When this line was typed in, someone pressed some wrong keys! - 5. Now move on to Lesson 3.2. + 5. Now move on to Lesson 3.3. NOTE: Remember that you should be learning by doing, not memorization. @@ -428,8 +428,8 @@ NOTE: Remember that you should be learning by doing, not memorization. 5. Repeat steps 3 and 4 until the first sentence is the same as the second. ----> This lubw has a few wptfd that mrrf changing usf the change command. ----> This line has a few words that need changing using the change command. +---> This lubw has a few wptfd that mrrf changing usf the change operator. +---> This line has a few words that need changing using the change operator. Notice that ce deletes the word and places you in Insert mode. @@ -439,7 +439,7 @@ Notice that ce deletes the word and places you in Insert mode. Lesson 3.4: MORE CHANGES USING c - ** The change command is used with the same motions as delete. ** + ** The change operator is used with the same motions as delete. ** 1. The change operator works in the same way as delete. The format is: @@ -459,7 +459,7 @@ Notice that ce deletes the word and places you in Insert mode. NOTE: You can use the Backspace key to correct mistakes while typing. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - LESSON 3 SUMMARY + Lesson 3 SUMMARY 1. To put back text that has just been deleted, type p . This puts the @@ -487,14 +487,14 @@ Now go on to the next lesson. ** Type CTRL-G to show your location in the file and the file status. Type G to move to a line in the file. ** - Note: Read this entire lesson before executing any of the steps!! + NOTE: Read this entire lesson before executing any of the steps!! 1. Hold down the Ctrl key and press g . We call this CTRL-G. A message will appear at the bottom of the page with the filename and the position in the file. Remember the line number for Step 3. NOTE: You may see the cursor position in the lower right corner of the screen - This happens when the 'ruler' option is set (explained in lesson 6). + This happens when the 'ruler' option is set (see :help 'ruler' ) 2. Press G to move you to the bottom of the file. Type gg to move you to the start of the file. @@ -523,8 +523,8 @@ NOTE: You may see the cursor position in the lower right corner of the screen 5. To go back to where you came from press CTRL-O (Keep Ctrl down while pressing the letter o). Repeat to go back further. CTRL-I goes forward. -Note: "errroor" is not the way to spell error; errroor is an error. -Note: When the search reaches the end of the file it will continue at the +---> "errroor" is not the way to spell error; errroor is an error. +NOTE: When the search reaches the end of the file it will continue at the start, unless the 'wrapscan' option has been reset. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -546,7 +546,7 @@ Note: When the search reaches the end of the file it will continue at the ---> This ( is a test line with ('s, ['s ] and {'s } in it. )) -Note: This is very useful in debugging a program with unmatched parentheses! +NOTE: This is very useful in debugging a program with unmatched parentheses! @@ -568,13 +568,13 @@ Note: This is very useful in debugging a program with unmatched parentheses! 4. To change every occurrence of a character string between two lines, type :#,#s/old/new/g where #,# are the line numbers of the range - of lines where the subsitution is to be done. + of lines where the substitution is to be done. Type :%s/old/new/g to change every occurrence in the whole file. Type :%s/old/new/gc to find every occurrence in the whole file, - with a prompt wether to substitute or not. + with a prompt whether to substitute or not. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - LESSON 4 SUMMARY + Lesson 4 SUMMARY 1. CTRL-G displays your location in the file and the file status. @@ -612,11 +612,11 @@ Note: This is very useful in debugging a program with unmatched parentheses! will show you a listing of your directory, just as if you were at the shell prompt. Or use :!dir if ls doesn't work. -Note: It is possible to execute any external command this way, also with +NOTE: It is possible to execute any external command this way, also with arguments. -Note: All : commands must be finished by hitting <ENTER> - From here one we will not always mention it. +NOTE: All : commands must be finished by hitting <ENTER> + From here on we will not always mention it. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -635,7 +635,7 @@ Note: All : commands must be finished by hitting <ENTER> 4. This saves the whole file (the Vim Tutor) under the name TEST. To verify this, type :!dir or :!ls again to see your directory. -Note: If you were to exit Vim and start it again with vim TEST , the file +NOTE: If you were to exit Vim and start it again with vim TEST , the file would be an exact copy of the tutor when you saved it. 5. Now remove the file by typing (MS-DOS): :!del TEST @@ -689,7 +689,7 @@ NOTE: You can also read the output of an external command. For example, ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - LESSON 5 SUMMARY + Lesson 5 SUMMARY 1. :!command executes an external command. @@ -708,7 +708,7 @@ NOTE: You can also read the output of an external command. For example, cursor position. 5. :r !dir reads the output of the dir command and puts it below the - cursor position + cursor position. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -754,7 +754,7 @@ NOTE: You can also read the output of an external command. For example, ---> This li will allow you to pract appendi text to a line. ---> This line will allow you to practice appending text to a line. -Note: a, i and A all go to the same Insert mode, the only difference is where +NOTE: a, i and A all go to the same Insert mode, the only difference is where the characters are inserted. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -772,7 +772,7 @@ Note: a, i and A all go to the same Insert mode, the only difference is where 3. Press <ESC> to leave Replace mode. Notice that the rest of the line remains unmodified. - 5. Repeat the steps to replace the remaining xxx. + 4. Repeat the steps to replace the remaining xxx. ---> Adding 123 to xxx gives you xxx. ---> Adding 123 to 456 gives you 579. @@ -784,7 +784,7 @@ NOTE: Replace mode is like Insert mode, but every typed character deletes an Lesson 6.4: COPY AND PASTE TEXT - ** use the y operator to copy text and p to paste it ** + ** Use the y operator to copy text and p to paste it ** 1. Go to the line marked with ---> below and place the cursor after "a)". @@ -802,7 +802,7 @@ NOTE: Replace mode is like Insert mode, but every typed character deletes an ---> a) this is the first item. b) - Note: you can also use y as an operator; yw yanks one word. + NOTE: you can also use y as an operator; yw yanks one word. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Lesson 6.5: SET OPTION @@ -823,11 +823,11 @@ NOTE: Replace mode is like Insert mode, but every typed character deletes an 6. To disable ignoring case enter: :set noic -Note: To remove the highlighting of matches enter: :nohlsearch -Note: If you want to ignore case for just one search command, use \c +NOTE: To remove the highlighting of matches enter: :nohlsearch +NOTE: If you want to ignore case for just one search command, use \c in the phrase: /ignore\c <ENTER> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - LESSON 6 SUMMARY + Lesson 6 SUMMARY 1. Type o to open a line BELOW the cursor and start Insert mode. Type O to open a line ABOVE the cursor. @@ -850,7 +850,7 @@ Note: If you want to ignore case for just one search command, use \c 7. Prepend "no" to switch an option off: :set noic ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - LESSON 7.1: GETTING HELP + Lesson 7.1: GETTING HELP ** Use the on-line help system ** @@ -862,7 +862,7 @@ Note: If you want to ignore case for just one search command, use \c - type :help <ENTER> Read the text in the help window to find out how the help works. - type CTRL-W CTRL-W to jump from one window to another + Type CTRL-W CTRL-W to jump from one window to another. Type :q <ENTER> to close the help window. You can find help on just about any subject, by giving an argument to the @@ -873,7 +873,7 @@ Note: If you want to ignore case for just one search command, use \c :help insert-index :help user-manual ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - LESSON 7.2: CREATE A STARTUP SCRIPT + Lesson 7.2: CREATE A STARTUP SCRIPT ** Enable Vim features ** @@ -896,7 +896,7 @@ Note: If you want to ignore case for just one search command, use \c For more information type :help vimrc-intro ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - LESSON 7.3: COMPLETION + Lesson 7.3: COMPLETION ** Command line completion with CTRL-D and <TAB> ** @@ -919,7 +919,7 @@ NOTE: Completion works for many commands. Just try pressing CTRL-D and <TAB>. It is especially useful for :help . ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - LESSON 7 SUMMARY + Lesson 7 SUMMARY 1. Type :help or press <F1> or <Help> to open a help window. diff --git a/runtime/tutor/tutor.tr.iso9 b/runtime/tutor/tutor.tr.iso9 new file mode 100644 index 000000000..759e57d3e --- /dev/null +++ b/runtime/tutor/tutor.tr.iso9 @@ -0,0 +1,813 @@ +=============================================================================== += V I M T u t o r'a Hoş Geldiniz - Sürüm 1.5 = +=============================================================================== + + Vim, bu gibi bir eğitmen ile açıklanması gereken çok fazla komut barındıran, + oldukça kuvvetli bir metin düzenleyicidir. Bu eğitmen Vim'i çok amaçlı bir + düzenleyici olarak kolaylıkla kullanabileceğiniz yeterli sayıda komutu açıklamak + için tasarlanmıştır. + + Eğitmeni tamamlama süresi yapacağınız denemelere bağlı olarak 25-30 + dakikadır. + + Derslerdeki komutlar bu metini değiştirecektir. Üzerinde çalışmak için + bu dosyanın bir kopyasını alın (eğer "vimtutor" uygulamasını çalıştırdıysanız + zaten bir kopyasını almış oldunuz). + + Bu eğitmenin, kullanarak öğretmeye ayarlandığını unutmamak önemlidir. Bu şu + anlama gelir; komutları öğrenmek için doğru bir şekilde çalıştırmanız gerekir. + Eğer sadece yazılanları okursanız komutları unutursunuz. + + Şimdi Shift-Lock tuşlarınızın basılı olmadığına emin olun ve Ders 1.1'in + ekranı tamamen doldurması için j tuşuna yeterli miktarda basın. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ders 1.1: İMLECİ HAREKET ETTİRMEK + + Ç.N: Tüm derslerde <ENTER> gördüğünüz yerde bu tuşa basmanız gerekir. + + ** İmleci hareket ettirmek için, h,j,k,l tuşlarına gösterildiği gibi basın. ** + ^ + k İpucu: h tuşu soldadır ve sola hareket eder. + < h l > l tuşu sağdadır ve sağa hareket eder. + j j tuşu aşağı yönlü bir ok gibidir. + v + 1. Yeterli hissedinceye kadar imleci ekranda hareket ettirin. + + 2. Aşağı tuşunu (j) tekrar edene kadar basılı tutun. +---> Şimdi, bir sonraki derse nasıl geçeceğinizi biliyorsunuz. + + 3. Aşağı tuşunu kullanarak, Ders 1.2'ye geçin. + Not: Eğer yazdığınız bir şeyden emin değilseniz, Normal kipe geçmek için <ESC> tuşuna basın. + Daha sonra istediğiniz komutu yeniden yazın. + Not: İmleç tuşları da aynı zamanda işe yararlar ancak hjkl tuşlarını kullanmaya alıştığınızda etrafta daha hızlı + hareket edersiniz. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ders 1.2: VIM'E GİRİŞ VE VIM'DEN ÇIKIŞ + + + !! NOT: Aşağıdaki adımları yapmadan önce, bu dersi tamamen okuyun. + + 1. <ESC> tuşuna basın (Normal kipte olmayı garantilemek için). + + 2. Yazın: :q! <ENTER>. + +---> Bu düzenleyicinin yaptığınız değişiklikleri KAYDETMEDEN kapanmasını sağlar. + Eğer yaptıklarınızın kaydedilmesini istiyorsanız şunu yazın: + :wq <ENTER> + + 3. Kabuk istemcisini (shell prompt) gördüğünüzde, sizi bu eğitmene getiren + komutu yazın. Bu: vimtutor <ENTER> komutudur. + Normalde: vim tutor <ENTER> komutu kullanılır. +---> 'vim' vim düzenleyicisine gir anlamına gelir, 'tutor' ise açmak istediğiniz dosyadır. + + 4. Eğer bu adımları ezberlediyseniz ve kendinizden eminseniz, 1'den 3'e kadar olan adımları, + düzenleyiciden çıkmak ve yeniden girmek için uygulayın. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ders 1.3: METİN DÜZENLEME - SİLME + + +** Normal kipteyken imlecin altındaki karakteri silmek için x 'e basın.** + + 1. İmleci aşağıda işaretlenmiş (-->) satıra götürün. + + 2. Hataları düzeltmek için, imleci silinmesi gereken karakterin üzerine getirin + + 3. İstenmeyen karakteri silmek için x tuşuna basın. + + 4. Cümle düzelene kadar 2'den 4'e kadar olan adımları tekrar edin. + +---> İinek ayyın üzzerinden attladı. + + 5. Şimdi satır düzeldi, Ders 1.4'e geçin. + +NOT: Bu eğitmende ilerledikçe ezberlemeye çalışmayın, kullanarak öğrenin. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ders 1.4: METİN DÜZENLEME - EKLEME + + + ** Normal kipteyken metin eklemek için i 'ye basın. ** + + 1. İmleci aşağıdaki işaretlenmiş (-->) ilk satıra götürün. + + 2. İlk satırı ikincisinin aynısı gibi yapmak için, imleci eklenmesi gereken + metinden sonraki ilk karakterin üzerine götürün. + + 3. i 'ye basın ve gerekli eklemeleri yapın. + + 4. Her hata düzeltildiğinde <ESC> tuşuna basarak Normal kipe dönün. + Cümleyi düzeltmek için 2'den 4'e kadar olan adımları tekrar edin. + +---> Bu metinde eksk. +---> Bu metinde birşey eksik. + + 5. Metin ekleme çalışmalarını yeterli görüyorsanız aşağıdaki özete geçin. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + DERS 1 ÖZET + + + 1. İmleç hem ok tuşları hem de hjkl tuşları ile hareket ettirilir. + h (sol) j (aşağı) k (yukarı) l (sağ) + + 2. (Konsoldan) Vim'e girmek içn yazın: vim DOSYAİSMİ <ENTER> + + 3. Tüm değişiklikleri göz ardı edip vimden çıkmak için yazın: + <ESC> :q! <ENTER> + veya tüm değişiklikleri kaydetmek için yazın: + <ESC> :wq <ENTER> + + 4. İmlecin altındaki bir karakteri silmek için Normal kipte x yazın. + + 5. İmlecin altında metin eklemek için Normal kipte yazın: + i yazılacak metin <ESC> + +NOT: <ESC> tuşuna basmak sizi Normal kipe götürür ya da istenmeyen tamamlanmamış bir komutu + iptal eder. + +Şimdi Ders 2 ile devam edin. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ders 2.1: SİLME KOMUTLARI + + ** Bir kelimeyi silmek için dw yazın.** + + 1. Normal kipte olmakten emin olmak için <ESC> tuşuna basın. + + 2. İmleci aşağıdaki işaretlenmiş (-->) satıra götürün. + + 3. İmleci silinmesi gereken kelimenin başına götürün. + + 4. Kelimeyi silmek için dw yazın. + + NOT: dw harfleri siz yazdıkça ekranın son satırında görülecektir. + Eğer yanlış bir şeyler yazarsanız, yeniden başlamak için <ESC> tuşuna basın. + +---> Bu satırda çerez cümleye ait olmayan leblebi kelimeler var. + + + 5. Cümle düzelene kadar adım 3 ve 4'ü tekrar edin, daha sonra Ders 2.2'ye gidin. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ders 2.2: DAHA FAZLA SİLME KOMUTU + + + ** Satırı sonuna kadar silmek için d$ yazın.** + + 1. Normal kipte olmaktan emin olmak için <ESC> tuşuna basın. + + 2. İmleci aşağıdaki işaretlenmiş (-->) satıra götürün. + + 3. İmleci doğru olan satırın sonuna götürün. (Birinciden SONRA. ) + + 4. Satırı sonuna kadar silmek için d$ yazın. + ( d$ yazarken d'den sonra <ALT> ile beraber $ tuşuna basın) + +---> Birileri bu satırın sonunu iki defa yazmış. Birileri bu satırın sonunu iki defa yazmış. + + 5. Neler olduğunu anlamak için Ders 2.3'e gidin. + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ders 2.3: KOMUTLAR VE NESNELER + + + d silme komutu için biçim aşağıdaki gibidir: + + [sayı] d nesne VEYA d [sayı] nesne + Burada: + sayı - komutun kaç defa çalıştırlacağı (isteğe bağlı, varsayılan=1). + d - silme komutu + nesne - komutun ne şekilde çalışacağı (aşağıda listlendi). + + Nesnelerin kısa bir listesi. + w - Boşluğu da içererek, imleçten itibaren kelimenin sonuna kadar. + e - Boşluğu İÇERMEDEN, imleçten itibaren kelimenin sonuna kadar. + $ - imleçten satırın sonuna kadar. + +NOT: Serüven sevenler için, Normal kipte iken, komut olmadan sadece nesnenin kendisine basmak + imleci yukardaki listede olduğu gibi hareket ettirecektir. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ders 2.4: 'KOMUT-NESNE'ye BİR İSTİSNA + + + ** Bütün bir satırı silmek için dd yazın. ** + + Bütün bir satır silme sıklığından dolayı, Vi tasarımcıları bir satırı + tamamen silmek için iki d yazmanın daha kolay olacağına karar verdiler. + + 1. İmleci aşağıdaki tümceciğin ikinci satırına götürün. + 2. Satırı silmek için dd yazın. + 3. Şimdi de dördüncü satıra gidin. + 4. İki satırı birden silmek için 2dd (sayı-komut-nesne'yi hatırlayın) yazın. + + 1) Güller kırmızıdır, + 2) Çamur eğlenceli, + 3) Menekşeler mavi, + 4) Bir arabam var, + 5) Saat bana söyler, + 6) Şeker tatlıdır + 7) Ve sen de öylesin + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ders 2.5: GERİ AL KOMUTU + + + ** Son komutu geri almak için u , bütün bir satırı düzeltmek için U yazın.** + + 1. İmleci aşağıdaki işaretlenmiş (-->) satırdaki ilk hatanın üzerine götürün. + 2. İlk istenmeyen karakteri silmek için x yazın. + 3. Şimdi son çalıştırılan komutu geri almak için u yazın. + 4. Bu sefer x komutunu kullanarak satırdaki tüm hataları düzeltin. + 5. Şimdi satırı ilk haline çevirmek için büyük U yazın. + 6. Şimdi U ve daha önceki komutları geri almak için birkaç defa u yazın. + 7. Şimdi birkaç defa CTRL-R (CTRL'yi basılı tutarken R ye basın) yazarak geri almaları da geri alın. + +---> Buu satıırdaki hataları düüzeltinn ve sonra koomutu geri alllın. + + 8. Bunlar son derece kullanışlı komutlardır. Şimdi Ders 2 Özete geçin. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + DERS 2 ÖZET + + + 1. İmleçten itibaren bir kelimeyi silmek için yazın: dw + + 2. İmleçten itibaren bir satırı silmek için yazın: d$ + + 3. Bütün bir satırı silmek için yazın: dd + + 4. Normal kipte bir komut biçimi şöyledir: + + [sayı] komut nesne VEYA komut [sayı] nesne + burada: + sayı - komutun kaç kere tekrar edeceği + komut - ne yapılacağı, silmek için d olduğu gibi + nesne - komutun nasıl davranacağı, w (kelime), $ (satır sonu), vb gibi. + + 5. Önceki hareketleri geri almak için yazın: u (küçük u) + Bir satırdaki tüm değişiklikleri geri almak için yazın: U (büyük u) + Geri almaları geri almak için yazın: CTRL-R + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ders 3.1: KOY KOMUTU + + + ** Son yaptığınız silme işlemini imleçten sona geri yerleştirmek için p yazın.** + + 1. İmleci aşağıdaki tümceciğin ilk satırına götürün. + + 2. Satırı silip Vim'in tamponuna yerleştirmek için dd yazın. + + 3. İmleci, silinmiş satırı nereye yerleştirmek istiyorsanız, o satırın ÜZERİNE götürün. + + 4. Normal kipteyken, satırı yerleştirmek için p yazın. + + 5. Tüm satırları doğru sıraya koymak için 2'den 4'e kadar olan adımları tekrar edin. + + d) Sen de öğrendin mi? + b) Menekşeler mavidir, + c) Akıl öğrenilir, + a) Güller kırmızıdır, + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ders 3.2: YERLEŞTİR KOMUTU + + + ** İmlecin altında bir karakter yerleştirmek için r yazın.** + + 1. İmleci aşağıdaki işaretlenmiş(--->) ilk satıra götürün. + + 2. İmleci satırdaki ilk hatanın üzerine götürün. + + 3. Hatayı düzeltmek için önce r ardından da doğru karakteri yazın. + + 4. İlk satır düzelene kadar adım 2 ve 3'ü tekrar edin. + +---> Bu satıv yazılıvken, bivileri yamlış tuştara basmış. +---> Bu satır yazılırken, birileri yanlış tuşlara basmış. + + 5. Ders 3.2'ye geçin. + +NOT: Unutmayın, ezberleyerek değil kullanarak öğrenin. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ders 3.3: DEĞİŞTİR KOMUTU + + + ** Bir kelimenin tamamını veya parçasını değiştirmek için cw yazın. + + 1. İmleci aşağıdaki işaretlenmiş(--->) satıra götürün. + + 2. İmleci "sutar" daki u'nun üzerine yerleştirin. + + 3. Önce cw ardından doğru kelimeyi girin (bu durumda 'atır'.) + + 4. <ESC> tuşuna basın ve bir sonraki hataya gidin (değişmesi gereken ilk karakter.) + + 5. İlk cümle ikincisiyle aynı olana kadar adım 3 ve 4'ü tekrar edin. + +---> Bu sutar değiştir komutu ile değişneli gereken birkaç petime içeriyor. +---> Bu satır değiştir komutu ile değişmesi gereken birkaç kelime içeriyor. + +cw'nin sadece kelimeyi değiştirmediğini, aynı zamanda sizi insert kipine götürdüğüne de dikkat edin. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ders 3.4: c'Yİ KULLANARAK DAHA FAZLA DEĞİŞTİRME + + + ** Değiştir komutu sil komutu ile aynı nesnelerle kullanılır.** + + 1. Değiştir komutu sil ile aynı yolla çalışır. Biçim şöyledir: + + [sayı] c nesne VEYA c [sayı] nesne + + 2. Nesneler de aynı zamanda aynıdır. Örneğin w (word), $ (satır sonu), vb. gibi. + + 3. Aşağıdaki işaretlenmiş(--->) ilk satıra gidin. + + 4. İmleci ilk hataya götürün. + + 5. Satırın geri kalan kısmını ikincisi gibi yapmak için c$ yazın ve daha sonra <ESC> tuşuna basın. + +---> Bu satırın sonu düzeltilmek için biraz yardıma ihtiyaç duyuyor. +---> Bu satırın sonu düzeltilmek için c$ komutu kullanılarak yardıma ihtiyaç duyuyor. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + DERS 3 ÖZET + + + 1. Silinmiş olan bir metini geri yerleştirmek için p yazın. Bu silinmiş metini + imleçten hemen SONRA geri yerleştirir (eğer bir satır silinmişse hemen imleçten sonra, alta + yerleştirilecektir) + + 2. İmlecin altındaki karakteri değiştirmek için önce r ardından da + asıl karakteri yazın. + + 3. Değiştir komutu belirlenen nesneyi, imleçten nesnenin sonuna kadar değiştirme imkanı verir. + Örneğin, bir kelimeyi imleçten sonuna kadar değiştirmek için cw , bir satırın tamamını + değiştirmek içinse c$ yazın. + + 4. Değiştir için biçim şöyledir: + + [sayı] c nesne VEYA c [sayı] nesne + +Şimdi bir sonraki derse geçin. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ders 4.1: KONUM VE DOSYA DURUMU + + + ** Dosya içerisindeki konumunuzu ve dosyanın durumunu görmek için CTRL-g yazın. ** + ** Dosya içerisindeki bir satıra gitmek için SHIFT-g yazın. ** + + Not: Adımlardan herhangi birini yapmadan önce dersin tamamını okuyun!! + + 1. Ctrl tuşunu basılı tutun ve g'ye basın. Dosyanın sonunda dosya ismini ve bulunduğunuz konumu + gösteren bir durum satırı görünecektir. Adım 3 için satır numarasını + unutmayın. + + 2. Dosyanın sonuna gitmek için shift-G 'ye basın. + + 3. Daha önce bulunduğunuz satır numarasını yazın ve daha sonra shift-G 'ye basın. + Bu sizi daha önce bulunduğunuz ve Ctrl-g 'ye bastığınız satıra geri götürecektir. + (Sayılar yazılırken ekranda GÖRÜNMEYECEKLERDİR.) + + 4. Yapabileceğinizi düşündüğünüzde, adım 1'den 3'e kadar yapın. + + Ç.N: Bu kısım orijinal metinde de biraz eksik anlatılmış gibi. Bir satır hakkında bilgi almak için + Ctrl-g'yi kullanın. Herhangi bir satıra gitmek içinse, önce satır numarasını yazın ve ardınan + shift-g'ye basın. Satır numarası girmeden basılan shift-g sizi satır sonuna götürür. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ders 4.2: ARAMA KOMUTU + + + ** Bir kelime öbeğini aramak için / ile beraber kelime öbeğini girin. ** + + 1. Normal kipteyken / karakterini yazın. Komut bölümü yerine / karakterinin ve + imlecin ekranın sonunda göründüğüne dikkat edin. + + 2. Şimdi, 'hatttaa' yazıp <ENTER> 'a basın. Bu sizin aramak istediğiniz kelime. + + 3. Aynı kelime öbeğini tekrar aramak için, basitçe n yazın. + Aynı kelime öbeğini zıt yönde aramak için, Shift-N yazın. + + 4. Eğer zıt yöne doğru bir arama yapmak istiyorsanız, / komutu yerine + ? komutunu kullanın. + +---> "hatttaa" hatayı yazmanın doğru yolu değil; hatttaa bir hata. + +Not: Arama dosyanın sonuna ulaştığında, tekrar baştan başlayacaktır. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ders 4.3: UYAN PARANTEZ ARAMASI + + + ** Uyan bir ),] veya } bulmak için % yazın. ** + + 1. İmleci işaretli (--->) satırdaki herhangi bir (, [ veya { karakterinin + üzerine götürün. + + 2. Şimdi % karakterini yazın. + + 3. İmleç uyan parantez veya ayracın üzerine gider. + + 4. Uyan ilk parantezin üzerine geri dönmek için yine % yazın. + +---> Bu ( içerisinde ('ler, ['ler ] ve {'ler } bulunan bir satırdır. )) + +Not: Bu içerisinde uymayan parantezler bulunan bir programın yanlışını ayıklamak için + son derece yararlıdır. + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ders 4.4: HATALARI DÜZELTMEK İÇİN BİR YOL + + + ** 'eski' yerine 'yeni' yerleştirmek için :s/eski/yeni/g yazın. ** + + 1. İmleci aşağıdaki işaretli (--->) satıra götürün. + + 2. :s/buu/bu yazıp <ENTER> 'a basın. Bu komutun sadece satırdaki ilk karşılaşmayı + düzelttiğine dikkat edin. + + 3. Şimdi genel olarak satırdaki tüm değişikliği yapmak için :s/buu/bu/g yazın. + +---> Buu birinci, buu ikinci, buu üçüncü bölüm. + + 4. İki satır arasındaki bir karakter katarının tümünü değiştirmek için, + :#,#s/eski/yeni/g yazın, burada #,# iki satırın sayılarıdır. + Tüm dosyadaki karşılaşılan kelimeleri değiştirmek için :%s/eski/yeni/g yazın. + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + DERS 4 ÖZET + + + 1. Ctrl-g sizin dosyadaki konumunuzu ve dosya durumunu gösterir. + Shift-G dosyanın sonuna gider. Shift-G 'den önce bir sayı yazılırsa, o satıra + gidilir. + + 2. Bir sözcük öbeğinden önce / yazmak, İLERİ yönde o öbeği aratır. + Bir sözcük öbeğinden önce ? yazmak, GERİ yönde o öbeği aratır. + Bir aramadan sonra, aynı yöndeki bir sonraki karşılaşmayı bulmak için n , + veya zıt yöndekini bulmak için Shift-N yazın. + + 3. İmleç bir (,),[,],{,} parantezi üzerindeyken % yazmak, uyan diğer eş parantezi bulur. + + 4. Bir satırdaki ilk 'eski'yi 'yeni' ile değiştirmek için :s/eski/yeni yazın. + Bir satırdaki tüm 'eski'leri 'yeni' ile değiştirmek için :s/eski/yeni/g yazın. + İki satır arasındaki öbekleri değiştirmek için :#,#s/eski/yeni/g yazın. + (#'lar satır numaraları) + Bir dosyadaki tüm karşılaşmaları değiştirmek için :%s/eski/yeni/g yazın. + Her seferinde onay sorması için 'c' ekleyin. :%s/eski/yeni/gc + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ders 5.1: BIR DIŞ KOMUT ÇALIŞTIRMAK + + + ** Bir dış komutu çalıştırmak için :! ve ardından istediğiniz dış komutu yazın. ** + + 1. İmleci ekranın altına götürmek için alışık olduğunuz : komutunu yazın. Bu size + bir komut yazma imkanı verir. + + 2. Şimdi ! (ünlem) karakterini yazın. Bu size bir dış komut çalıştırma + imkanı verir. + + 3. Örnek olarak ! karakterini takiben ls yazın ve <ENTER>'a basın. Bu size + o anda bulunduğunuz dizindeki dosyaları gösterecektir. Veya ls çalışmazsa :!dir + komutunu kullanın. + +Not: Herhangi bir dış komutu bu yolla çalıştırmak mümkündür. + +Not: Tüm : komutlarından sonra <ENTER> tuşuna basılmalıdır. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ders 5.2: DOSYA YAZMAYA DEVAM + + + ** Dosyaya yapılan değişikliği kaydetmek için, :w DOSYAİSMİ yazın. ** + + 1. Bulunduğunuz dizini listelemek için :!dir veya :!ls yazın. + Komuttan sonra <ENTER> tuşuna basıcağınızı zaten biliyorsunuz. + + 2. Mevcut olmayan bir dosya ismi seçin, örneğin DENEME. + + 3. Şimdi :w DENEME yazın (DENEME sizin seçtiğiniz dosya ismi). + + 4. Bu tüm dosyayı (Vim Tutor) DENEME isminde başka bir dosyaya yazar. + Bunu doğrulamak için, :!dir yazın ve yeniden bulunduğunuz dizini listeleyin. + +Not: Eğer Vim'den çıkıp kaydettiğiniz DENEME dosyasını açarsanız, bunun kaydettiğiniz + vimtutor'un gerçek bir kopyası olduğunu görürsünüz. + + 5. Şimdi dosyayı şu komutları vererek silin (MS-DOS) :!del DENEME + (veya UNIX) :!rm DENEME + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ders 5.3: SEÇMELİ YAZ KOMUTU + + + ** Dosyanın bir bölümünü kaydetmek için, :#,# w DOSYAİSMİ yazın. ** + + 1. Bir kez daha bulunduğunuz dizini görmek için :!dir veya :!ls yazın, + ardından DENEME gibi uygun bir dosya ismi seçin. + + 2. İmleci bu sayfanın başına götürün ve ardından CTRL-g'ye basarak satır numarasını + öğrenin. BU NUMARAYI UNUTMAYIN! + + 3. Şimdi sayfanın sonuna gidib ve yine CTRL-g'ye basarak satır numarasını + öğrenin. BU NUMARAYI DA UNUTMAYIN! + + 4. Bir dosyaya sadece bir bölümü kaydetmek için, :#,# w DENEME yazın. #,# sizin + baktığınız sayılar (üst,alt) ve DENEME dosyanızın ismidir. + + + 5. Yine, :!dir yazarak dosyanın orada olduğuna bakın ama SİLMEYİN. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ders 5.4: DOSYALARI BİRLEŞTİRMEK-BÖLÜM EKLEMEK + + + ** Bir dosyanın içeriğini eklemek için :r DOSYAİSMİ yazın. ** + + 1. DENEME dosyanızın önceden bulunduğundan emin olmak için :!dir yazın. + + 2. İmleci bu sayfanın başına yerleştirin. + +NOT: Adım 3'ü uyguladıktan sonra Ders 5.3'ü görüyor olacaksınız. Daha sonra bu + derse sayfasına dönün. + + 3. Şimdi DENEME sayfasını :r DENEME yazarak aktarın. + +NOT: Aktardığınız dosya imlecinizin hemen altına eklenecektir. + + 4. Dosyanın eklendiğini görmek için, geriye gidin. Ders 5.3'ten iki kopya + olduğunu göreceksiniz; asıl ve kopya olanı. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + DERS 5 ÖZET + + + 1. :!komut bir dış komut çalıştırır. + + Bazı yararlı örnekler: + (MS-DOS) (Unix) + :!dir :!ls - bir dizini listeler. + :!del DOSYA :!rm DOSYA - DOSYA'yı siler. + + 2. :w DOSYAİSMİ o anki Vim dosyasını diske DOSYAİSMİ ile kaydeder. + + 3. :#,#w DOSYAİSMİ # ile # satır arasını DOSYAİSMİ ile kaydeder. + + 4. :r DOSYAİSMİ imlecin altından başlayarak DOSYAİSMİ isimli dosyanın içeriğini ekler. + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ders 6.1: AÇ KOMUTU + + + ** İmlecin aşağısına bir satır açmak ve Insert kipine geçmek için o yazın. ** + + 1. İmleci aşağıdaki işaretlenmiş (--->) satıra götürün. + + 2. İmlecin aşağısına bir satır açmak ve Insert kipine geçmek için + o (küçük harfle) yazın. + + 3. Şimdi işaretlenmiş satırı kopyalayın ve Insert kipinden çıkmak için <ESC> + tuşuna basın. + +---> o yazdıktan sonra imlec açılan satıra gidicek ve Insert kipine geçilecek. + + 4. İmlecin üzerinde bir satır açmak için, basitçe büyük O yazın. Bunu aşağıdaki + satırda deneyin. +Bu satırın üzerine bir satır açmak için imleç bu satırdayken Shift-o yazın. + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ders 6.2: EKLE KOMUTU + + + ** İmleçten sonra metin eklemek için a yazın. ** + + 1. İmleci aşağıdaki işaretlenmiş (--->) satırın sonuna götürmek için + Normal Kipteyken $ yazın. + + 2. İmlecin altındaki karakterden sonra metin eklemek için a (küçük harfle) yazın. + (Büyük A satırın sonuna ekler). + + 3. Şimdi ilk satırı tamamlayın. Ekle komutunun Insert kipiyle aynı işi yaptığına + dikkat edin. Tek fark metinin eklendiği yer. +Ç.N: Eğer a yazarsanız imlecin altındaki karakterden hemen sonra ekleme yapabilirsiniz. + Eğer Shift-a yazarsanız imleç satır sonuna gidecek ve hemen ardına ekleme yapabileceksiniz. + Doğal olarak bizim örneğimizde Shift-A'yı kullanmak daha güzel olacaktır. Önce $ ardınan a + yazmamıza gerek kalmaz. + +---> Bu satırda çalışabilirsiniz +---> Bu satırda çalışabilirsiniz. Çalışırken metin eklemeyi kullanın. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ders 6.3: BİR BAŞKA DEĞİŞTİR KOMUTU + + + ** Birden fazla karakter değiştirmek için büyük R yazın. ** + + 1. İmleci aşağıdaki işaretli (--->) satırların ilkine götürün. + + 2. İmleci işaretli olan ikinci satırdakinden farklı olan ilk kelimenin + başına götürün. ( "tuşları" kelimesi ) + + 3. Şimdi büyük R yazın ve ilk satırı ikincisinin aynısı yapmak için + eski metinin üzerinden yenisini yazın. Siz yazdıkça metin değişecektir. + +---> Bu satırı ikincisinin aynısı yapmak için tuşları kullanın. +---> Bu satırı ikincisinin aynısı yapmak için R yazın ve metini girin. + + 4. Çıkmak için <ESC> tuşuna bastığınızda, değişmemiş metinin aynen + kaldığına dikkat edin. + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ders 6.4: SET SEÇENEĞİ + + ** Bir seçenek ayarlayın , böylece bir arama veya değiştirme ** + ** durumu görmezden gelsin. ** + + 1. 'ignore' kelimesini aramak için: + /ignore + yazın. + Bunu n tuşuna basarak birkaç kez tekrar edin + + 2. :set ic yazarak 'ic' (Ignore case) ayarını seçin. + + 3. Tekrar n tuşuna basarak 'ignore' kelimseini arayın. + n tuşuna basarak bu aramayı birden çok defa tekrar edin. + + 4. :set hls is yazarak 'hlsearch' ve 'incsearch' ayarlarını seçin. + + 5. /ignore yazarak arama komutunu tekrar verin ve ne olacağını görün. + + 6. Karşılaşma vurgularını iptal etmek için, + :nohlsearch yazın. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + DERS 6 ÖZET + + + 1. o yazmak imlecin altında bir satır açar ve imleci bu açılmış satıra + Insert kipinde yerleştirir. + Büyük O yazmak imlecin üzerinde bir satır açar. + + 2. İmlecin üzerindeki karakterden hemen sonra metin eklemek için a yazın. + Büyük A yazmak hemen satır sonuna giderek metin eklemeye hazır hale getirir. + + 3. Büyük R yazmak Değiştir kipine girer ve çıkmak için <ESC> tuşuna + basılana kadar sizi bu kipte bırakır. + + 4. ":set xxx" yazmak "xxx" seçeneğini ayarlar. + + + + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ders 7: ÇEVİRİMİÇİ (ON-LINE) YARDIM KOMUTLARI + + + ** Çevirimiçi yardım sistemini kullanın ** + + Vim geniş bir çevirimiçi yardım sistemine sahiptir. Başlamak için şu üçünü + deneyebilirsiniz. + - (eğer sahipseniz) <HELP> tuşuna basın + - (eğer sahipseniz) <F1> tuşuna basın + - :help yazın ve <ENTER> tuşuna basın + + Yardım penceresini kapatmak için :q yazıp <ENTER> tuşuna basın. + + ":help" komutuna değişken (argüman) vererek herhangi bir konu hakkında + yardım alabilirsini. Şunları deneyin (<ENTER> tuşuna basmayı unutmayın) : + + :help w + :help c_<T + :help insert-index + :help user-manual + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Ders 8: BİR BAŞLANGIÇ BETİĞİ OLUŞTURUN + + ** Switch on Vim features ** + ** Vim'in özelliklerine bakın ** + + Vim Vi'dan çok daha fazla özelliğe sahiptir fakat birçoğu öntanımlı olarak kapalıdır. + Daha fazla özellik kullanabilmek için bir "vimrc" dosyası oluşturmalısınız. + + 1. "vimrc" dosyasını düzenlemeye başlayın, bu işletim sisteminize göre değişir: + + Ç.N: (Bu komutu verdiğinizde eğer yoksa home dizininizde .vimrc isimli bir dosya oluşacaktır. + Bu dosyaya vimrc örnek dosyasını aktarmak için 2. adımdaki komutu kullanacaksınız. Bu yüzden + vimrc dosyanızı düzenlemeden önce aşağıdaki adımların hepsini okuyun ve komutları hatırlayın.) + + :edit ~/.vimrc Unix için + :edit $VIM/_vimrc MS-Windows için + + 2. Şimdi örnek "vimrc" dosyasını okuyun + + :read $VIMRUNTIME/vimrc_example.vim + + 3. Dosyayı kaydedin ve çıkın + + :write + :q + + Vim'i bir dahaki sefer çalıştırdığınızda sözdizim (sytax) vurgusu kullanılacaktır. + Tüm tercih ettiğiniz ayarları bu "vimrc" dosyasına ekleyebilirsiniz. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + Burada Vim Eğitmeni tamamlanmış oldu. Eğitmendeki amaç Vim düzenleyicisi hakkında + kısa bir bilgi vermek ve onu kolayca kullanmanızı sağlamaktı. Vim'in tamamını öğretmek + çok zordur zira Vim birçok komuta sahiptir.Bundan sonra :help user-manual" komutu ile + kullanıcı kılavuzunu okumalısınız. + + Daha fazla okuma ve çalışma için şu kitabı öneriyoruz: + Vim - Vi Improved - by Steve Oualline + Publisher: New Riders + Tamamiyle Vim için hazırlanmış ilk kitap. Özellikle ilk kullanıcılar için uygun. + Kitapta birçok örnek ve resim var. + http://iccf-holland.org/click5.html adresine bakabilirsiniz. + + Bu kitap daha eskidir ve Vim'den daha çok Vi içindir ancak tavsiye edilir: + Learning the Vi Editor - by Linda Lamb + Publisher: O'Reilly & Associates Inc. + Vi hakkında bilmek isteyeceğiniz neredeyse herşeyin bulunduğu bir kitap. + 6.Basım aynı zamanda Vim hakkında bilgi de içermekte. + + Bu eğitmen Michael C. Pierce ve Robert K. Ware tarafından yazıldı, + Charles Smith tarafından sağlanan fikirlerle Colorado School Of Mines, + Colorado State University. E-mail: bware@mines.colorado.edu. + + Vim için değiştiren : Bram Moolenaar. + + Türkçeye çeviren : Serkan "heartsmagic" Çalış Yıl 2005 + E-mail : adresimeyaz (at) yahoo com + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |