Mercurial > hg > RemoteEditor > vim7
changeset 5:db46d51a3939
Initial revision
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/compiler/rspec.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,41 @@ +" Vim compiler file +" Language: RSpec +" Maintainer: Tim Pope <vimNOSPAM@tpope.info> +" Info: $Id$ +" URL: http://vim-ruby.rubyforge.org +" Anon CVS: See above site +" Release Coordinator: Doug Kearns <dougkearns@gmail.com> + +if exists("current_compiler") + finish +endif +let current_compiler = "rspec" + +if exists(":CompilerSet") != 2 " older Vim always used :setlocal + command -nargs=* CompilerSet setlocal <args> +endif + +let s:cpo_save = &cpo +set cpo-=C + +CompilerSet makeprg=spec + +CompilerSet errorformat= + \%+W'%.%#'\ FAILED, + \%+I'%.%#'\ FIXED, + \%-Cexpected:%.%#, + \%-C\ \ \ \ \ got:%.%#, + \%E%.%#:in\ `load':\ %f:%l:%m, + \%C%f:%l:, + \%W%f:%l:\ warning:\ %m, + \%E%f:%l:in\ %*[^:]:\ %m, + \%E%f:%l:\ %m, + \%-Z%\tfrom\ %f:%l, + \%-Z%p^%.%#, + \%-C%.%#, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save + +" vim: nowrap sw=2 sts=2 ts=8:
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/doc/ft_ada.txt Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,515 @@ +*ft_ada.txt* For Vim version 7.2. Last change: 2008 Jun 21 + + + ADA FILE TYPE PLUG-INS REFERENCE MANUAL~ + +ADA *ada.vim* + +1. Syntax Highlighting |ft-ada-syntax| +2. Plug-in |ft-ada-plugin| +3. Omni Completion |ft-ada-omni| + 3.1 Omni Completion with "gnat xref" |gnat-xref| + 3.2 Omni Completion with "ctags" |ada-ctags| +4. Compiler Support |ada-compiler| + 4.1 GNAT |compiler-gnat| + 4.1 Dec Ada |compiler-decada| +5. References |ada-reference| + 5.1 Options |ft-ada-options| + 5.2 Functions |ft-ada-functions| + 5.3 Commands |ft-ada-commands| + 5.4 Variables |ft-ada-variables| + 5.5 Constants |ft-ada-constants| +8. Extra Plug-ins |ada-extra-plugins| + +============================================================================== +1. Syntax Highlighting ~ + *ft-ada-syntax* + +This mode is designed for the 2005 edition of Ada ("Ada 2005"), which includes +support for objected-programming, protected types, and so on. It handles code +written for the original Ada language ("Ada83", "Ada87", "Ada95") as well, +though code which uses Ada 2005-only keywords will be wrongly colored (such +code should be fixed anyway). For more information about Ada, see +http://www.adapower.com. + +The Ada mode handles a number of situations cleanly. + +For example, it knows that the "-" in "-5" is a number, but the same character +in "A-5" is an operator. Normally, a "with" or "use" clause referencing +another compilation unit is coloured the same way as C's "#include" is coloured. +If you have "Conditional" or "Repeat" groups coloured differently, then "end +if" and "end loop" will be coloured as part of those respective groups. + +You can set these to different colours using vim's "highlight" command (e.g., +to change how loops are displayed, enter the command ":hi Repeat" followed by +the colour specification; on simple terminals the colour specification +ctermfg=White often shows well). + +There are several options you can select in this Ada mode. See|ft-ada-options| +for a complete list. + +To enable them, assign a value to the option. For example, to turn one on: + > + > let g:ada_standard_types = 1 +> +To disable them use ":unlet". Example: +> + > unlet g:ada_standard_types + +You can just use ":" and type these into the command line to set these +temporarily before loading an Ada file. You can make these option settings +permanent by adding the "let" command(s), without a colon, to your "~/.vimrc" +file. + +Even on a slow (90Mhz) PC this mode works quickly, but if you find the +performance unacceptable, turn on |g:ada_withuse_ordinary|. + +Syntax folding instructions (|fold-syntax|) are added when |g:ada_folding| is +set. + +============================================================================== +2. File type Plug-in ~ + *ft-ada-indent* *ft-ada-plugin* + +The Ada plug-in provides support for: + + - auto indenting (|indent.txt|) + - insert completion (|i_CTRL-N|) + - user completion (|i_CTRL-X_CTRL-U|) + - tag searches (|tagsrch.txt|) + - Quick Fix (|quickfix.txt|) + - backspace handling (|'backspace'|) + - comment handling (|'comments'|, |'commentstring'|) + +The plug-in only activates the features of the Ada mode whenever an Ada +files is opened and add adds Ada related entries to the main and pop-up menu. + +============================================================================== +3. Omni Completion ~ + *ft-ada-omni* + +The Ada omni-completions (|i_CTRL-X_CTRL-O|) uses tags database created either +by "gnat xref -v" or the "exuberant Ctags (http://ctags.sourceforge.net). The +complete function will automatically detect which tool was used to create the +tags file. + +------------------------------------------------------------------------------ +3.1 Omni Completion with "gnat xref" ~ + *gnat-xref* + +GNAT XREF uses the compiler internal information (ali-files) to produce the +tags file. This has the advantage to be 100% correct and the option of deep +nested analysis. However the code must compile, the generator is quite +slow and the created tags file contains only the basic Ctags information for +each entry - not enough for some of the more advanced Vim code browser +plug-ins. + +NOTE: "gnat xref -v" is very tricky to use as it has almost no diagnostic + output - If nothing is printed then usually the parameters are wrong. + Here some important tips: + +1) You need to compile your code first and use the "-aO" option to point to + your .ali files. +2) "gnat xref -v ../Include/adacl.ads" won't work - use the "gnat xref -v + -aI../Include adacl.ads" instead. +3) "gnat xref -v -aI../Include *.ad?" won't work - use "cd ../Include" and + then "gnat xref -v *.ad?" +4) Project manager support is completely broken - don't even try "gnat xref + -Padacl.gpr". +5) VIM is faster when the tags file is sorted - use "sort --unique + --ignore-case --output=tags tags" . +6) Remember to insert "!_TAG_FILE_SORTED 2 %sort ui" as first line to mark + the file assorted. + +------------------------------------------------------------------------------ +3.2 Omni Completion with "ctags"~ + *ada-ctags* + +Exuberant Ctags uses its own multi-language code parser. The parser is quite +fast, produces a lot of extra information (hence the name "Exuberant Ctags") +and can run on files which currently do not compile. + +There are also lots of other Vim-tools which use exuberant Ctags. + +You will need to install a version of the Exuberant Ctags which has Ada +support patched in. Such a version is available from the GNU Ada Project +(http://gnuada.sourceforge.net). + +The Ada parser for Exuberant Ctags is fairly new - don't expect complete +support yet. + +============================================================================== +4. Compiler Support ~ + *ada-compiler* + +The Ada mode supports more then one Ada compiler and will automatically load the +compiler set in|g:ada_default_compiler|whenever an Ada source is opened. The +provided compiler plug-ins are split into the actual compiler plug-in and a +collection of support functions and variables. This allows the easy +development of specialized compiler plug-ins fine tuned to your development +environment. + +------------------------------------------------------------------------------ +4.1 GNAT ~ + *compiler-gnat* + +GNAT is the only free (beer and speech) Ada compiler available. There are +several version available which differentiate in the licence terms used. + +The GNAT compiler plug-in will perform a compile on pressing <F7> and then +immediately shows the result. You can set the project file to be used by +setting: + > + > call g:gnat.Set_Project_File ('my_project.gpr') + +Setting a project file will also create a Vim session (|views-sessions|) so - +like with the GPS - opened files, window positions etc. will remembered +separately for all projects. + + *gnat_members* +GNAT OBJECT ~ + + *g:gnat.Make()* +g:gnat.Make() + Calls|g:gnat.Make_Command|and displays the result inside a + |quickfix| window. + + *g:gnat.Pretty()* +g:gnat.Pretty() + Calls|g:gnat.Pretty_Command| + + *g:gnat.Find()* +g:gnat.Find() + Calls|g:gnat.Find_Command| + + *g:gnat.Tags()* +g:gnat.Tags() + Calls|g:gnat.Tags_Command| + + *g:gnat.Set_Project_File()* +g:gnat.Set_Project_File([{file}]) + Set gnat project file and load associated session. An open + project will be closed and the session written. If called + without file name the file selector opens for selection of a + project file. If called with an empty string then the project + and associated session are closed. + + *g:gnat.Project_File* +g:gnat.Project_File string + Current project file. + + *g:gnat.Make_Command* +g:gnat.Make_Command string + External command used for|g:gnat.Make()| (|'makeprg'|). + + *g:gnat.Pretty_Program* +g:gnat.Pretty_Program string + External command used for|g:gnat.Pretty()| + + *g:gnat.Find_Program* +g:gnat.Find_Program string + External command used for|g:gnat.Find()| + + *g:gnat.Tags_Command* +g:gnat.Tags_Command string + External command used for|g:gnat.Tags()| + + *g:gnat.Error_Format* +g:gnat.Error_Format string + Error format (|'errorformat'|) + +------------------------------------------------------------------------------ +4.2 Dec Ada ~ + *compiler-hpada* *compiler-decada* + *compiler-vaxada* *compiler-compaqada* + +Dec Ada (also known by - in chronological order - VAX Ada, Dec Ada, Compaq Ada +and HP Ada) is a fairly dated Ada 83 compiler. Support is basic: <F7> will +compile the current unit. + +The Dec Ada compiler expects the package name and not the file name to be +passed a parameter. The compiler plug-in supports the usual file name +convention to convert the file into a unit name. For separates both '-' and +'__' are allowed. + + *decada_members* +DEC ADA OBJECT ~ + + *g:decada.Make()* +g:decada.Make() function + Calls|g:decada.Make_Command|and displays the result inside a + |quickfix| window. + + *g:decada.Unit_Name()* +g:decada.Unit_Name() function + Get the Unit name for the current file. + + *g:decada.Make_Command* +g:decada.Make_Command string + External command used for|g:decadat.Make()| (|'makeprg'|). + + *g:decada.Error_Format* +g:decada.Error_Format| string + Error format (|'errorformat'|). + +============================================================================== +5. References ~ + *ada-reference* + +------------------------------------------------------------------------------ +5.1 Options ~ + *ft-ada-options* + + *g:ada_standard_types* +g:ada_standard_types bool (true when exists) + Highlight types in package Standard (e.g., "Float") + + *g:ada_space_errors* + *g:ada_no_trail_space_error* + *g:ada_no_tab_space_error* + *g:ada_all_tab_usage* +g:ada_space_errors bool (true when exists) + Highlight extraneous errors in spaces ... + g:ada_no_trail_space_error + - but ignore trailing spaces at the end of a line + g:ada_no_tab_space_error + - but ignore tabs after spaces + g:ada_all_tab_usage + - highlight all tab use + + *g:ada_line_errors* +g:ada_line_errors bool (true when exists) + Highlight lines which are to long. Note: This highlighting + option is quite CPU intensive. + + *g:ada_rainbow_color* +g:ada_rainbow_color bool (true when exists) + Use rainbow colours for '(' and ')'. You need the + rainbow_parenthesis for this to work + + *g:ada_folding* +g:ada_folding set ('sigpft') + Use folding for Ada sources. + 's': activate syntax folding on load + 'p': fold packages + 'f': fold functions and procedures + 't': fold types + 'c': fold conditionals + 'g': activate gnat pretty print folding on load + 'i': lone 'is' folded with line above + 'b': lone 'begin' folded with line above + 'p': lone 'private' folded with line above + 'x': lone 'exception' folded with line above + 'i': activate indent folding on load + + Note: Syntax folding is in an early (unusable) stage and + indent or gnat pretty folding is suggested. + + For gnat pretty folding to work the following settings are + suggested: -cl3 -M79 -c2 -c3 -c4 -A1 -A2 -A3 -A4 -A5 + + For indent folding to work the following settings are + suggested: shiftwidth=3 softtabstop=3 + + *g:ada_abbrev* +g:ada_abbrev bool (true when exists) + Add some abbreviations. This feature more or less superseded + by the various completion methods. + + *g:ada_withuse_ordinary* +g:ada_withuse_ordinary bool (true when exists) + Show "with" and "use" as ordinary keywords (when used to + reference other compilation units they're normally highlighted + specially). + + *g:ada_begin_preproc* +g:ada_begin_preproc bool (true when exists) + Show all begin-like keywords using the colouring of C + preprocessor commands. + + *g:ada_omni_with_keywords* +g:ada_omni_with_keywords + Add Keywords, Pragmas, Attributes to omni-completions + (|compl-omni|). Note: You can always complete then with user + completion (|i_CTRL-X_CTRL-U|). + + *g:ada_extended_tagging* +g:ada_extended_tagging enum ('jump', 'list') + use extended tagging, two options are available + 'jump': use tjump to jump. + 'list': add tags quick fix list. + Normal tagging does not support function or operator + overloading as these features are not available in C and + tagging was originally developed for C. + + *g:ada_extended_completion* +g:ada_extended_completion + Uses extended completion for <C-N> and <C-R> completions + (|i_CTRL-N|). In this mode the '.' is used as part of the + identifier so that 'Object.Method' or 'Package.Procedure' are + completed together. + + *g:ada_gnat_extensions* +g:ada_gnat_extensions bool (true when exists) + Support GNAT extensions. + + *g:ada_with_gnat_project_files* +g:ada_with_gnat_project_files bool (true when exists) + Add gnat project file keywords and Attributes. + + *g:ada_default_compiler* +g:ada_default_compiler string + set default compiler. Currently supported is 'gnat' and + 'decada'. + +An "exists" type is a boolean is considered true when the variable is defined +and false when the variable is undefined. The value which the variable is +set makes no difference. + +------------------------------------------------------------------------------ +5.3 Commands ~ + *ft-ada-commands* + +:AdaRainbow *:AdaRainbow* + Toggles rainbow colour (|g:ada_rainbow_color|) mode for + '(' and ')' + +:AdaLines *:AdaLines* + Toggles line error (|g:ada_line_errors|) display + +:AdaSpaces *:AdaSpaces* + Toggles space error (|g:ada_space_errors|) display. + +:AdaTagDir *:AdaTagDir* + Creates tags file for the directory of the current file. + +:AdaTagFile *:AdaTagFile* + Creates tags file for the current file. + +:AdaTypes *:AdaTypes* + Toggles standard types (|g:ada_standard_types|) colour. + +:GnatFind *:GnatFind* + Calls |g:gnat.Find()| + +:GnatPretty *:GnatPretty* + Calls |g:gnat.Pretty()| + +:GnatTags *:GnatTags* + Calls |g:gnat.Tags()| + +------------------------------------------------------------------------------ +5.3 Variables ~ + *ft-ada-variables* + + *g:gnat* +g:gnat object + Control object which manages GNAT compiles. The object + is created when the first Ada source code is loaded provided + that |g:ada_default_compiler|is set to 'gnat'. See|gnat_members| + for details. + + *g:decada* +g:decada object + Control object which manages Dec Ada compiles. The object + is created when the first Ada source code is loaded provided + that |g:ada_default_compiler|is set to 'decada'. See + |decada_members|for details. + +------------------------------------------------------------------------------ +5.4 Constants ~ + *ft-ada-constants* + +All constants are locked. See |:lockvar| for details. + + *g:ada#WordRegex* +g:ada#WordRegex string + Regular expression to search for Ada words + + *g:ada#DotWordRegex* +g:ada#DotWordRegex string + Regular expression to search for Ada words separated by dots. + + *g:ada#Comment* +g:ada#Comment string + Regular expression to search for Ada comments + + *g:ada#Keywords* +g:ada#Keywords list of dictionaries + List of keywords, attributes etc. pp. in the format used by + omni completion. See |complete-items| for details. + + *g:ada#Ctags_Kinds* +g:ada#Ctags_Kinds dictionary of lists + Dictionary of the various kinds of items which the Ada support + for Ctags generates. + +------------------------------------------------------------------------------ +5.2 Functions ~ + *ft-ada-functions* + +ada#Word([{line}, {col}]) *ada#Word()* + Return full name of Ada entity under the cursor (or at given + line/column), stripping white space/newlines as necessary. + +ada#List_Tag([{line}, {col}]) *ada#Listtags()* + List all occurrences of the Ada entity under the cursor (or at + given line/column) inside the quick-fix window + +ada#Jump_Tag ({ident}, {mode}) *ada#Jump_Tag()* + List all occurrences of the Ada entity under the cursor (or at + given line/column) in the tag jump list. Mode can either be + 'tjump' or 'stjump'. + +ada#Create_Tags ({option}) *ada#Create_Tags()* + Creates tag file using Ctags. The option can either be 'file' + for the current file, 'dir' for the directory of the current + file or a file name. + +gnat#Insert_Tags_Header() *gnat#Insert_Tags_Header()* + Adds the tag file header (!_TAG_) information to the current + file which are missing from the GNAT XREF output. + +ada#Switch_Syntax_Option ({option}) *ada#Switch_Syntax_Option()* + Toggles highlighting options on or off. Used for the Ada menu. + + *gnat#New()* +gnat#New () + Create a new gnat object. See |g:gnat| for details. + + +============================================================================== +8. Extra Plugins ~ + *ada-extra-plugins* + +You can optionally install the following extra plug-in. They work well with Ada +and enhance the ability of the Ada mode.: + +backup.vim + http://www.vim.org/scripts/script.php?script_id=1537 + Keeps as many backups as you like so you don't have to. + +rainbow_parenthsis.vim + http://www.vim.org/scripts/script.php?script_id=1561 + Very helpful since Ada uses only '(' and ')'. + +nerd_comments.vim + http://www.vim.org/scripts/script.php?script_id=1218 + Excellent commenting and uncommenting support for almost any + programming language. + +matchit.vim + http://www.vim.org/scripts/script.php?script_id=39 + '%' jumping for any language. The normal '%' jump only works for '{}' + style languages. The Ada mode will set the needed search patters. + +taglist.vim + http://www.vim.org/scripts/script.php?script_id=273 + Source code explorer sidebar. There is a patch for Ada available. + +The GNU Ada Project distribution (http://gnuada.sourceforge.net) of Vim +contains all of the above. + +============================================================================== +vim: textwidth=78 nowrap tabstop=8 shiftwidth=4 softtabstop=4 noexpandtab +vim: filetype=help
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/doc/ft_sql.txt Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,763 @@ +*ft_sql.txt* For Vim version 7.2. Last change: Wed Apr 26 2006 3:05:33 PM + +by David Fishburn + +This is a filetype plugin to work with SQL files. + +The Structured Query Language (SQL) is a standard which specifies statements +that allow a user to interact with a relational database. Vim includes +features for navigation, indentation and syntax highlighting. + +1. Navigation |sql-navigation| + 1.1 Matchit |sql-matchit| + 1.2 Text Object Motions |sql-object-motions| + 1.3 Predefined Object Motions |sql-predefined-objects| + 1.4 Macros |sql-macros| +2. SQL Dialects |sql-dialects| + 2.1 SQLSetType |SQLSetType| + 2.2 SQL Dialect Default |sql-type-default| +3. Adding new SQL Dialects |sql-adding-dialects| +4. OMNI SQL Completion |sql-completion| + 4.1 Static mode |sql-completion-static| + 4.2 Dynamic mode |sql-completion-dynamic| + 4.3 Tutorial |sql-completion-tutorial| + 4.3.1 Complete Tables |sql-completion-tables| + 4.3.2 Complete Columns |sql-completion-columns| + 4.3.3 Complete Procedures |sql-completion-procedures| + 4.3.4 Complete Views |sql-completion-views| + 4.4 Completion Customization |sql-completion-customization| + 4.5 SQL Maps |sql-completion-maps| + 4.6 Using with other filetypes |sql-completion-filetypes| + +============================================================================== +1. Navigation *sql-navigation* + +The SQL ftplugin provides a number of options to assist with file +navigation. + + +1.1 Matchit *sql-matchit* +----------- +The matchit plugin (http://www.vim.org/scripts/script.php?script_id=39) +provides many additional features and can be customized for different +languages. The matchit plugin is configured by defining a local +buffer variable, b:match_words. Pressing the % key while on various +keywords will move the cursor to its match. For example, if the cursor +is on an "if", pressing % will cycle between the "else", "elseif" and +"end if" keywords. + +The following keywords are supported: > + if + elseif | elsif + else [if] + end if + + [while condition] loop + leave + break + continue + exit + end loop + + for + leave + break + continue + exit + end loop + + do + statements + doend + + case + when + when + default + end case + + merge + when not matched + when matched + + create[ or replace] procedure|function|event + returns + + +1.2 Text Object Motions *sql-object-motions* +----------------------- +Vim has a number of predefined keys for working with text |object-motions|. +This filetype plugin attempts to translate these keys to maps which make sense +for the SQL language. + +The following |Normal| mode and |Visual| mode maps exist (when you edit a SQL +file): > + ]] move forward to the next 'begin' + [[ move backwards to the previous 'begin' + ][ move forward to the next 'end' + [] move backwards to the previous 'end' + + +1.3 Predefined Object Motions *sql-predefined-objects* +----------------------------- +Most relational databases support various standard features, tables, indices, +triggers and stored procedures. Each vendor also has a variety of proprietary +objects. The next set of maps have been created to help move between these +objects. Depends on which database vendor you are using, the list of objects +must be configurable. The filetype plugin attempts to define many of the +standard objects, plus many additional ones. In order to make this as +flexible as possible, you can override the list of objects from within your +|vimrc| with the following: > + let g:ftplugin_sql_objects = 'function,procedure,event,table,trigger' . + \ ',schema,service,publication,database,datatype,domain' . + \ ',index,subscription,synchronization,view,variable' + +The following |Normal| mode and |Visual| mode maps have been created which use +the above list: > + ]} move forward to the next 'create <object name>' + [{ move backward to the previous 'create <object name>' + +Repeatedly pressing ]} will cycle through each of these create statements: > + create table t1 ( + ... + ); + + create procedure p1 + begin + ... + end; + + create index i1 on t1 (c1); + +The default setting for g:ftplugin_sql_objects is: > + let g:ftplugin_sql_objects = 'function,procedure,event,' . + \ '\\(existing\\\\|global\\s\\+temporary\\s\\+\\)\\\{,1}' . + \ 'table,trigger' . + \ ',schema,service,publication,database,datatype,domain' . + \ ',index,subscription,synchronization,view,variable' + +The above will also handle these cases: > + create table t1 ( + ... + ); + create existing table t2 ( + ... + ); + create global temporary table t3 ( + ... + ); + +By default, the ftplugin only searches for CREATE statements. You can also +override this via your |vimrc| with the following: > + let g:ftplugin_sql_statements = 'create,alter' + +The filetype plugin defines three types of comments: > + 1. -- + 2. // + 3. /* + * + */ + +The following |Normal| mode and |Visual| mode maps have been created to work +with comments: > + ]" move forward to the beginning of a comment + [" move forward to the end of a comment + + + +1.4 Macros *sql-macros* +---------- +Vim's feature to find macro definitions, |'define'|, is supported using this +regular expression: > + \c\<\(VARIABLE\|DECLARE\|IN\|OUT\|INOUT\)\> + +This addresses the following code: > + CREATE VARIABLE myVar1 INTEGER; + + CREATE PROCEDURE sp_test( + IN myVar2 INTEGER, + OUT myVar3 CHAR(30), + INOUT myVar4 NUMERIC(20,0) + ) + BEGIN + DECLARE myVar5 INTEGER; + + SELECT c1, c2, c3 + INTO myVar2, myVar3, myVar4 + FROM T1 + WHERE c4 = myVar1; + END; + +Place your cursor on "myVar1" on this line: > + WHERE c4 = myVar1; + ^ + +Press any of the following keys: > + [d + [D + [CTRL-D + + +============================================================================== +2. SQL Dialects *sql-dialects* *sql-types* + *sybase* *TSQL* *Transact-SQL* + *sqlanywhere* + *oracle* *plsql* *sqlj* + *sqlserver* + *mysql* *postgres* *psql* + *informix* + +All relational databases support SQL. There is a portion of SQL that is +portable across vendors (ex. CREATE TABLE, CREATE INDEX), but there is a +great deal of vendor specific extensions to SQL. Oracle supports the +"CREATE OR REPLACE" syntax, column defaults specified in the CREATE TABLE +statement and the procedural language (for stored procedures and triggers). + +The default Vim distribution ships with syntax highlighting based on Oracle's +PL/SQL. The default SQL indent script works for Oracle and SQL Anywhere. +The default filetype plugin works for all vendors and should remain vendor +neutral, but extendable. + +Vim currently has support for a variety of different vendors, currently this +is via syntax scripts. Unfortunately, to flip between different syntax rules +you must either create: + 1. New filetypes + 2. Custom autocmds + 3. Manual steps / commands + +The majority of people work with only one vendor's database product, it would +be nice to specify a default in your |vimrc|. + + +2.1 SQLSetType *sqlsettype* *SQLSetType* +-------------- +For the people that work with many different databases, it would be nice to be +able to flip between the various vendors rules (indent, syntax) on a per +buffer basis, at any time. The ftplugin/sql.vim file defines this function: > + SQLSetType + +Executing this function without any parameters will set the indent and syntax +scripts back to their defaults, see |sql-type-default|. If you have turned +off Vi's compatibility mode, |'compatible'|, you can use the <Tab> key to +complete the optional parameter. + +After typing the function name and a space, you can use the completion to +supply a parameter. The function takes the name of the Vim script you want to +source. Using the |cmdline-completion| feature, the SQLSetType function will +search the |'runtimepath'| for all Vim scripts with a name containing 'sql'. +This takes the guess work out of the spelling of the names. The following are +examples: > + :SQLSetType + :SQLSetType sqloracle + :SQLSetType sqlanywhere + :SQLSetType sqlinformix + :SQLSetType mysql + +The easiest approach is to the use <Tab> character which will first complete +the command name (SQLSetType), after a space and another <Tab>, display a list +of available Vim script names: > + :SQL<Tab><space><Tab> + + +2.2 SQL Dialect Default *sql-type-default* +----------------------- +As mentioned earlier, the default syntax rules for Vim is based on Oracle +(PL/SQL). You can override this default by placing one of the following in +your |vimrc|: > + let g:sql_type_default = 'sqlanywhere' + let g:sql_type_default = 'sqlinformix' + let g:sql_type_default = 'mysql' + +If you added the following to your |vimrc|: > + let g:sql_type_default = 'sqlinformix' + +The next time edit a SQL file the following scripts will be automatically +loaded by Vim: > + ftplugin/sql.vim + syntax/sqlinformix.vim + indent/sql.vim +> +Notice indent/sqlinformix.sql was not loaded. There is no indent file +for Informix, Vim loads the default files if the specified files does not +exist. + + +============================================================================== +3. Adding new SQL Dialects *sql-adding-dialects* + +If you begin working with a SQL dialect which does not have any customizations +available with the default Vim distribution you can check http://www.vim.org +to see if any customization currently exist. If not, you can begin by cloning +an existing script. Read |filetype-plugins| for more details. + +To help identify these scripts, try to create the files with a "sql" prefix. +If you decide you wish to create customizations for the SQLite database, you +can create any of the following: > + Unix + ~/.vim/syntax/sqlite.vim + ~/.vim/indent/sqlite.vim + Windows + $VIM/vimfiles/syntax/sqlite.vim + $VIM/vimfiles/indent/sqlite.vim + +No changes are necessary to the SQLSetType function. It will automatically +pickup the new SQL files and load them when you issue the SQLSetType command. + + +============================================================================== +4. OMNI SQL Completion *sql-completion* + *omni-sql-completion* + +Vim 7 includes a code completion interface and functions which allows plugin +developers to build in code completion for any language. Vim 7 includes +code completion for the SQL language. + +There are two modes to the SQL completion plugin, static and dynamic. The +static mode populates the popups with the data generated from current syntax +highlight rules. The dynamic mode populates the popups with data retrieved +directly from a database. This includes, table lists, column lists, +procedures names and more. + +4.1 Static Mode *sql-completion-static* +--------------- +The static popups created contain items defined by the active syntax rules +while editing a file with a filetype of SQL. The plugin defines (by default) +various maps to help the user refine the list of items to be displayed. +The defaults static maps are: > + imap <buffer> <C-C>a <C-\><C-O>:call sqlcomplete#Map('syntax')<CR><C-X><C-O> + imap <buffer> <C-C>k <C-\><C-O>:call sqlcomplete#Map('sqlKeyword')<CR><C-X><C-O> + imap <buffer> <C-C>f <C-\><C-O>:call sqlcomplete#Map('sqlFunction')<CR><C-X><C-O> + imap <buffer> <C-C>o <C-\><C-O>:call sqlcomplete#Map('sqlOption')<CR><C-X><C-O> + imap <buffer> <C-C>T <C-\><C-O>:call sqlcomplete#Map('sqlType')<CR><C-X><C-O> + imap <buffer> <C-C>s <C-\><C-O>:call sqlcomplete#Map('sqlStatement')<CR><C-X><C-O> + +The static maps (which are based on the syntax highlight groups) follow this +format: > + imap <buffer> <C-C>k <C-\><C-O>:call sqlcomplete#Map('sqlKeyword')<CR><C-X><C-O> + +This command breaks down as: > + imap - Create an insert map + <buffer> - Only for this buffer + <C-C>k - Your choice of key map + <C-\><C-O> - Execute one command, return to Insert mode + :call sqlcomplete#Map( - Allows the SQL completion plugin to perform some + housekeeping functions to allow it to be used in + conjunction with other completion plugins. + Indicate which item you want the SQL completion + plugin to complete. + In this case we are asking the plugin to display + items from the syntax highlight group + 'sqlKeyword'. + You can view a list of highlight group names to + choose from by executing the + :syntax list + command while editing a SQL file. + 'sqlKeyword' - Display the items for the sqlKeyword highlight + group + )<CR> - Execute the :let command + <C-X><C-O> - Trigger the standard omni completion key stroke. + Passing in 'sqlKeyword' instructs the SQL + completion plugin to populate the popup with + items from the sqlKeyword highlight group. The + plugin will also cache this result until Vim is + restarted. The syntax list is retrieved using + the syntaxcomplete plugin. + +Using the 'syntax' keyword is a special case. This instructs the +syntaxcomplete plugin to retrieve all syntax items. So this will effectively +work for any of Vim's SQL syntax files. At the time of writing this includes +10 different syntax files for the different dialects of SQL (see section 3 +above, |sql-dialects|). + +Here are some examples of the entries which are pulled from the syntax files: > + All + - Contains the contents of all syntax highlight groups + Statements + - Select, Insert, Update, Delete, Create, Alter, ... + Functions + - Min, Max, Trim, Round, Date, ... + Keywords + - Index, Database, Having, Group, With + Options + - Isolation_level, On_error, Qualify_owners, Fire_triggers, ... + Types + - Integer, Char, Varchar, Date, DateTime, Timestamp, ... + + +4.2 Dynamic Mode *sql-completion-dynamic* +---------------- +Dynamic mode populates the popups with data directly from a database. In +order for the dynamic feature to be enabled you must have the dbext.vim +plugin installed, (http://vim.sourceforge.net/script.php?script_id=356). + +Dynamic mode is used by several features of the SQL completion plugin. +After installing the dbext plugin see the dbext-tutorial for additional +configuration and usage. The dbext plugin allows the SQL completion plugin +to display a list of tables, procedures, views and columns. > + Table List + - All tables for all schema owners + Procedure List + - All stored procedures for all schema owners + View List + - All stored procedures for all schema owners + Column List + - For the selected table, the columns that are part of the table + +To enable the popup, while in INSERT mode, use the following key combinations +for each group (where <C-C> means hold the CTRL key down while pressing +the space bar): + Table List - <C-C>t + - <C-X><C-O> (the default map assumes tables) + Stored Procedure List - <C-C>p + View List - <C-C>v + Column List - <C-C>c + + Windows platform only - When viewing a popup window displaying the list + of tables, you can press <C-Right>, this will + replace the table currently highlighted with + the column list for that table. + - When viewing a popup window displaying the list + of columns, you can press <C-Left>, this will + replace the column list with the list of tables. + - This allows you to quickly drill down into a + table to view it's columns and back again. + +The SQL completion plugin caches various lists that are displayed in +the popup window. This makes the re-displaying of these lists very +fast. If new tables or columns are added to the database it may become +necessary to clear the plugins cache. The default map for this is: > + imap <buffer> <C-C>R <C-\><C-O>:call sqlcomplete#Map('ResetCache')<CR><C-X><C-O> + + +4.3 SQL Tutorial *sql-completion-tutorial* +---------------- + +This tutorial is designed to take you through the common features of the SQL +completion plugin so that: > + a) You gain familiarity with the plugin + b) You are introduced to some of the more common features + c) Show how to customize it to your preferences + d) Demonstrate "Best of Use" of the plugin (easiest way to configure). + +First, create a new buffer: > + :e tutorial.sql + + +Static features +--------------- +To take you through the various lists, simply enter insert mode, hit: + <C-C>s (show SQL statements) +At this point, you can page down through the list until you find "select". +If you are familiar with the item you are looking for, for example you know +the statement begins with the letter "s". You can type ahead (without the +quotes) "se" then press: + <C-Space>t +Assuming "select" is highlighted in the popup list press <Enter> to choose +the entry. Now type: + * fr<C-C>a (show all syntax items) +choose "from" from the popup list. + +When writing stored procedures using the "type" list is useful. It contains +a list of all the database supported types. This may or may not be true +depending on the syntax file you are using. The SQL Anywhere syntax file +(sqlanywhere.vim) has support for this: > + BEGIN + DECLARE customer_id <C-C>T <-- Choose a type from the list + + +Dynamic features +---------------- +To take advantage of the dynamic features you must first install the +dbext.vim plugin (http://vim.sourceforge.net/script.php?script_id=356). It +also comes with a tutorial. From the SQL completion plugin's perspective, +the main feature dbext provides is a connection to a database. dbext +connection profiles are the most efficient mechanism to define connection +information. Once connections have been setup, the SQL completion plugin +uses the features of dbext in the background to populate the popups. + +What follows assumes dbext.vim has been correctly configured, a simple test +is to run the command, :DBListTable. If a list of tables is shown, you know +dbext.vim is working as expected. If not, please consult the dbext.txt +documentation. + +Assuming you have followed the dbext-tutorial you can press <C-C>t to +display a list of tables. There is a delay while dbext is creating the table +list. After the list is displayed press <C-W>. This will remove both the +popup window and the table name already chosen when the list became active. > + + 4.3.1 Table Completion: *sql-completion-tables* + +Press <C-C>t to display a list of tables from within the database you +have connected via the dbext plugin. +NOTE: All of the SQL completion popups support typing a prefix before pressing +the key map. This will limit the contents of the popup window to just items +beginning with those characters. > + + 4.3.2 Column Completion: *sql-completion-columns* + +The SQL completion plugin can also display a list of columns for particular +tables. The column completion is trigger via <C-C>c. + +NOTE: The following example uses <C-Right> to trigger a column list while +the popup window is active. This map is only available on the Windows +platforms since *nix does not recognize CTRL and the right arrow held down +together. If you wish to enable this functionality on a *nix platform choose +a key and create one of these mappings (see |sql-completion-maps| for further +details on where to create this imap): > + imap <buffer> <your_keystroke> <C-R>=sqlcomplete#DrillIntoTable()<CR> + imap <buffer> <your_keystroke> <C-Y><C-\><C-O>:call sqlcomplete#Map('column')<CR><C-X><C-O> + +Example of using column completion: + - Press <C-C>t again to display the list of tables. + - When the list is displayed in the completion window, press <C-Right>, + this will replace the list of tables, with a list of columns for the + table highlighted (after the same short delay). + - If you press <C-Left>, this will again replace the column list with the + list of tables. This allows you to drill into tables and column lists + very quickly. + - Press <C-Right> again while the same table is highlighted. You will + notice there is no delay since the column list has been cached. If you + change the schema of a cached table you can press <C-C>R, which + clears the SQL completion cache. + - NOTE: <C-Right> and <C-Left> have been designed to work while the + completion window is active. If the completion popup window is + not active, a normal <C-Right> or <C-Left> will be executed. + +Lets look how we can build a SQL statement dynamically. A select statement +requires a list of columns. There are two ways to build a column list using +the SQL completion plugin. > + One column at a time: +< 1. After typing SELECT press <C-C>t to display a list of tables. + 2. Choose a table from the list. + 3. Press <C-Right> to display a list of columns. + 4. Choose the column from the list and press enter. + 5. Enter a "," and press <C-C>c. Generating a column list + generally requires having the cursor on a table name. The plugin + uses this name to determine what table to retrieve the column list. + In this step, since we are pressing <C-C>c without the cursor + on a table name the column list displayed will be for the previous + table. Choose a different column and move on. + 6. Repeat step 5 as often as necessary. > + All columns for a table: +< 1. After typing SELECT press <C-C>t to display a list of tables. + 2. Highlight the table you need the column list for. + 3. Press <Enter> to choose the table from the list. + 4. Press <C-C>l to request a comma separated list of all columns + for this table. + 5. Based on the table name chosen in step 3, the plugin attempts to + decide on a reasonable table alias. You are then prompted to + either accept of change the alias. Press OK. + 6. The table name is replaced with the column list of the table is + replaced with the comma separate list of columns with the alias + prepended to each of the columns. + 7. Step 3 and 4 can be replaced by pressing <C-C>L, which has + a <C-Y> embedded in the map to choose the currently highlighted + table in the list. + +There is a special provision when writing select statements. Consider the +following statement: > + select * + from customer c, + contact cn, + department as dp, + employee e, + site_options so + where c. + +In INSERT mode after typing the final "c." which is an alias for the +"customer" table, you can press either <C-C>c or <C-X><C-O>. This will +popup a list of columns for the customer table. It does this by looking back +to the beginning of the select statement and finding a list of the tables +specified in the FROM clause. In this case it notes that in the string +"customer c", "c" is an alias for the customer table. The optional "AS" +keyword is also supported, "customer AS c". > + + + 4.3.3 Procedure Completion: *sql-completion-procedures* + +Similar to the table list, <C-C>p, will display a list of stored +procedures stored within the database. > + + 4.3.4 View Completion: *sql-completion-views* + +Similar to the table list, <C-C>v, will display a list of views in the +database. + + +4.4 Completion Customization *sql-completion-customization* +---------------------------- + +The SQL completion plugin can be customized through various options set in +your |vimrc|: > + omni_sql_no_default_maps +< - Default: This variable is not defined + - If this variable is defined, no maps are created for OMNI + completion. See |sql-completion-maps| for further discussion. +> + omni_sql_use_tbl_alias +< - Default: a + - This setting is only used when generating a comma separated + column list. By default the map is <C-C>l. When generating + a column list, an alias can be prepended to the beginning of each + column, for example: e.emp_id, e.emp_name. This option has three + settings: > + n - do not use an alias + d - use the default (calculated) alias + a - ask to confirm the alias name +< + An alias is determined following a few rules: + 1. If the table name has an '_', then use it as a separator: > + MY_TABLE_NAME --> MTN + my_table_name --> mtn + My_table_NAME --> MtN +< 2. If the table name does NOT contain an '_', but DOES use + mixed case then the case is used as a separator: > + MyTableName --> MTN +< 3. If the table name does NOT contain an '_', and does NOT + use mixed case then the first letter of the table is used: > + mytablename --> m + MYTABLENAME --> M + + omni_sql_ignorecase +< - Default: Current setting for|ignorecase| + - Valid settings are 0 or 1. + - When entering a few letters before initiating completion, the list + will be filtered to display only the entries which begin with the + list of characters. When this option is set to 0, the list will be + filtered using case sensitivity. > + + omni_sql_include_owner +< - Default: 0, unless dbext.vim 3.00 has been installed + - Valid settings are 0 or 1. + - When completing tables, procedure or views and using dbext.vim 3.00 + or higher the list of objects will also include the owner name. + When completing these objects and omni_sql_include_owner is enabled + the owner name will be replaced. > + + omni_sql_precache_syntax_groups +< - Default: + ['syntax','sqlKeyword','sqlFunction','sqlOption','sqlType','sqlStatement'] + - sqlcomplete can be used in conjunction with other completion + plugins. This is outlined at |sql-completion-filetypes|. When the + filetype is changed temporarily to SQL, the sqlcompletion plugin + will cache the syntax groups listed in the List specified in this + option. +> + +4.5 SQL Maps *sql-completion-maps* +------------ + +The default SQL maps have been described in other sections of this document in +greater detail. Here is a list of the maps with a brief description of each. + +Static Maps +----------- +These are maps which use populate the completion list using Vim's syntax +highlighting rules. > + <C-C>a +< - Displays all SQL syntax items. > + <C-C>k +< - Displays all SQL syntax items defined as 'sqlKeyword'. > + <C-C>f +< - Displays all SQL syntax items defined as 'sqlFunction. > + <C-C>o +< - Displays all SQL syntax items defined as 'sqlOption'. > + <C-C>T +< - Displays all SQL syntax items defined as 'sqlType'. > + <C-C>s +< - Displays all SQL syntax items defined as 'sqlStatement'. > + +Dynamic Maps +------------ +These are maps which use populate the completion list using the dbext.vim +plugin. > + <C-C>t +< - Displays a list of tables. > + <C-C>p +< - Displays a list of procedures. > + <C-C>v +< - Displays a list of views. > + <C-C>c +< - Displays a list of columns for a specific table. > + <C-C>l +< - Displays a comma separated list of columns for a specific table. > + <C-C>L +< - Displays a comma separated list of columns for a specific table. + This should only be used when the completion window is active. > + <C-Right> +< - Displays a list of columns for the table currently highlighted in + the completion window. <C-Right> is not recognized on most Unix + systems, so this maps is only created on the Windows platform. + If you would like the same feature on Unix, choose a different key + and make the same map in your vimrc. > + <C-Left> +< - Displays the list of tables. + <C-Left> is not recognized on most Unix systems, so this maps is + only created on the Windows platform. If you would like the same + feature on Unix, choose a different key and make the same map in + your vimrc. > + <C-C>R +< - This maps removes all cached items and forces the SQL completion + to regenerate the list of items. + +Customizing Maps +---------------- +You can create as many additional key maps as you like. Generally, the maps +will be specifying different syntax highlight groups. + +If you do not wish the default maps created or the key choices do not work on +your platform (often a case on *nix) you define the following variable in +your |vimrc|: > + let g:omni_sql_no_default_maps = 1 + +Do no edit ftplugin/sql.vim directly! If you change this file your changes +will be over written on future updates. Vim has a special directory structure +which allows you to make customizations without changing the files that are +included with the Vim distribution. If you wish to customize the maps +create an after/ftplugin/sql.vim (see |after-directory|) and place the same +maps from the ftplugin/sql.vim in it using your own key strokes. <C-C> was +chosen since it will work on both Windows and *nix platforms. On the windows +platform you can also use <C-Space> or ALT keys. + + +4.6 Using with other filetypes *sql-completion-filetypes* +------------------------------ + +Many times SQL can be used with different filetypes. For example Perl, Java, +PHP, Javascript can all interact with a database. Often you need both the SQL +completion as well as the completion capabilities for the current language you +are editing. + +This can be enabled easily with the following steps (assuming a Perl file): > + 1. :e test.pl + 2. :set filetype=sql + 3. :set ft=perl + +Step 1 +------ +Begins by editing a Perl file. Vim automatically sets the filetype to +"perl". By default, Vim runs the appropriate filetype file +ftplugin/perl.vim. If you are using the syntax completion plugin by following +the directions at |ft-syntax-omni| then the |'omnifunc'| option has been set to +"syntax#Complete". Pressing <C-X><C-O> will display the omni popup containing +the syntax items for Perl. + +Step 2 +------ +Manually setting the filetype to 'sql' will also fire the appropriate filetype +files ftplugin/sql.vim. This file will define a number of buffer specific +maps for SQL completion, see |sql-completion-maps|. Now these maps have +been created and the SQL completion plugin has been initialized. All SQL +syntax items have been cached in preparation. The SQL filetype script detects +we are attempting to use two different completion plugins. Since the SQL maps +begin with <C-C>, the maps will toggle the |'omnifunc'| when in use. So you +can use <C-X><C-O> to continue using the completion for Perl (using the syntax +completion plugin) and <C-C> to use the SQL completion features. + +Step 3 +------ +Setting the filetype back to Perl sets all the usual "perl" related items back +as they were. + + +vim:tw=78:ts=8:ft=help:norl:
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/ftplugin/cdrdaoconf.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,18 @@ +" Vim filetype plugin file +" Maintainer: Nikolai Weibull <now@bitwi.se> +" Latest Revision: 2007-12-04 + +if exists("b:did_ftplugin") + finish +endif +let b:did_ftplugin = 1 + +let s:cpo_save = &cpo +set cpo&vim + +let b:undo_ftplugin = "setl com< cms< fo<" + +setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql + +let &cpo = s:cpo_save +unlet s:cpo_save
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/ftplugin/debcontrol.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,70 @@ +" Vim filetype plugin file (GUI menu and folding) +" Language: Debian control files +" Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org> +" Former Maintainer: Pierre Habouzit <madcoder@debian.org> +" Last Change: 2008-03-08 +" URL: http://git.debian.org/?p=pkg-vim/vim.git;a=blob_plain;f=runtime/ftplugin/debcontrol.vim;hb=debian + +" Do these settings once per buffer +if exists("b:did_ftplugin") + finish +endif +let b:did_ftplugin=1 + +" {{{1 Local settings (do on every load) +if exists("g:debcontrol_fold_enable") + setlocal foldmethod=expr + setlocal foldexpr=DebControlFold(v:lnum) + setlocal foldtext=DebControlFoldText() +endif +setlocal textwidth=0 + +" Clean unloading +let b:undo_ftplugin = "setlocal tw< foldmethod< foldexpr< foldtext<" + +" }}}1 + +" {{{1 folding + +function! s:getField(f, lnum) + let line = getline(a:lnum) + let fwdsteps = 0 + while line !~ '^'.a:f.':' + let fwdsteps += 1 + let line = getline(a:lnum + fwdsteps) + if line == '' + return 'unknown' + endif + endwhile + return substitute(line, '^'.a:f.': *', '', '') +endfunction + +function! DebControlFoldText() + if v:folddashes == '-' " debcontrol entry fold + let type = substitute(getline(v:foldstart), ':.*', '', '') + if type == 'Source' + let ftext = substitute(foldtext(), ' *Source: *', ' ', '') + return ftext . ' -- ' . s:getField('Maintainer', v:foldstart) . ' ' + endif + let arch = s:getField('Architecture', v:foldstart) + let ftext = substitute(foldtext(), ' *Package: *', ' [' . arch . '] ', '') + return ftext . ': ' . s:getField('Description', v:foldstart) . ' ' + endif + return foldtext() +endfunction + +function! DebControlFold(l) + + " This is for not merging blank lines around folds to them + if getline(a:l) =~ '^Source:' + return '>1' + endif + + if getline(a:l) =~ '^Package:' + return '>1' + endif + + return '=' +endfunction + +" }}}1
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/ftplugin/denyhosts.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,18 @@ +" Vim filetype plugin file +" Maintainer: Nikolai Weibull <now@bitwi.se> +" Latest Revision: 2007-12-04 + +if exists("b:did_ftplugin") + finish +endif +let b:did_ftplugin = 1 + +let s:cpo_save = &cpo +set cpo&vim + +let b:undo_ftplugin = "setl com< cms< fo<" + +setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql + +let &cpo = s:cpo_save +unlet s:cpo_save
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/ftplugin/dosini.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,19 @@ +" Vim filetype plugin file +" Language: Configuration File (ini file) for MSDOS/MS Windows +" Maintainer: Nikolai Weibull <now@bitwi.se> +" Latest Revision: 2008-07-09 + +if exists("b:did_ftplugin") + finish +endif +let b:did_ftplugin = 1 + +let s:cpo_save = &cpo +set cpo&vim + +let b:undo_ftplugin = "setl com< cms< fo<" + +setlocal comments=:; commentstring=;\ %s formatoptions-=t formatoptions+=croql + +let &cpo = s:cpo_save +unlet s:cpo_save
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/ftplugin/dtrace.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,40 @@ +" Language: D script as described in "Solaris Dynamic Tracing Guide", +" http://docs.sun.com/app/docs/doc/817-6223 +" Last Change: 2008/03/20 +" Version: 1.2 +" Maintainer: Nicolas Weber <nicolasweber@gmx.de> + +" Only do this when not done yet for this buffer +if exists("b:did_ftplugin") + finish +endif + +" Don't load another plugin for this buffer +let b:did_ftplugin = 1 + +" Using line continuation here. +let s:cpo_save = &cpo +set cpo-=C + +let b:undo_ftplugin = "setl fo< com< cms< isk<" + +" Set 'formatoptions' to break comment lines but not other lines, +" and insert the comment leader when hitting <CR> or using "o". +setlocal fo-=t fo+=croql + +" Set 'comments' to format dashed lists in comments. +setlocal comments=sO:*\ -,mO:*\ \ ,exO:*/,s1:/*,mb:*,ex:*/ + +" dtrace uses /* */ comments. Set this explicitly, just in case the user +" changed this (/*%s*/ is the default) +setlocal commentstring=/*%s*/ + +setlocal iskeyword+=@,$ + +" When the matchit plugin is loaded, this makes the % command skip parens and +" braces in comments. +let b:match_words = &matchpairs +let b:match_skip = 's:comment\|string\|character' + +let &cpo = s:cpo_save +unlet s:cpo_save
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/ftplugin/framescript.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,30 @@ +" Vim ftplugin file +" Language: FrameScript +" Maintainer: Nikolai Weibull <now@bitwi.se> +" Latest Revision: 2008-07-19 + +let s:cpo_save = &cpo +set cpo&vim + +if exists("b:did_ftplugin") + finish +endif +let b:did_ftplugin = 1 + +let b:undo_ftplugin = "setl com< cms< fo< inc< | unlet! b:matchwords" + +setlocal comments=s1:/*,mb:*,ex:*/,:// commentstring=/*\ %s\ */ +setlocal formatoptions-=t formatoptions+=croql +setlocal include=^\\s*<#Include + +if exists("loaded_matchit") + let s:not_end = '\c\%(\<End\)\@<!' + let b:match_words = + \ s:not_end . '\<If\>:\c\<ElseIf\>:\c\<Else\>:\c\<EndIf\>,' . + \ s:not_end . '\<Loop\>:\c\<EndLoop\>' . + \ s:not_end . '\<Sub\>:\c\<EndSub\>' + unlet s:not_end +endif + +let &cpo = s:cpo_save +unlet s:cpo_save
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/ftplugin/git.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,34 @@ +" Vim filetype plugin +" Language: generic git output +" Maintainer: Tim Pope <vimNOSPAM@tpope.info> +" Last Change: 2008 Jul 30 + +" Only do this when not done yet for this buffer +if (exists("b:did_ftplugin")) + finish +endif +let b:did_ftplugin = 1 + +if !exists('b:git_dir') + if expand('%:p') =~# '\.git\>' + let b:git_dir = matchstr(expand('%:p'),'.*\.git\>') + elseif $GIT_DIR != '' + let b:git_dir = $GIT_DIR + endif + if (has('win32') || has('win64')) && exists('b:git_dir') + let b:git_dir = substitute(b:git_dir,'\\','/','g') + endif +endif + +if exists('*shellescape') && exists('b:git_dir') && b:git_dir != '' + if b:git_dir =~# '/\.git$' " Not a bare repository + let &l:path = escape(fnamemodify(b:git_dir,':h'),'\, ').','.&l:path + endif + let &l:path = escape(b:git_dir,'\, ').','.&l:path + let &l:keywordprg = 'git --git-dir='.shellescape(b:git_dir).' show' +else + setlocal keywordprg=git\ show +endif + +setlocal includeexpr=substitute(v:fname,'^[^/]\\+/','','') +let b:undo_ftplugin = "setl keywordprg< path< includeexpr<"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/ftplugin/gitcommit.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,68 @@ +" Vim filetype plugin +" Language: git config file +" Maintainer: Tim Pope <vimNOSPAM@tpope.info> +" Last Change: 2008 Jun 04 + +" Only do this when not done yet for this buffer +if (exists("b:did_ftplugin")) + finish +endif + +runtime! ftplugin/git.vim +let b:did_ftplugin = 1 + +if &textwidth == 0 + " make sure that log messages play nice with git-log on standard terminals + setlocal textwidth=72 + if !exists("b:undo_ftplugin") + let b:undo_ftplugin = "" + endif + let b:undo_ftplugin = b:undo_ftplugin . "|setl tw<" +endif + +if exists("g:no_gitcommit_commands") || v:version < 700 + finish +endif + +if !exists("b:git_dir") + let b:git_dir = expand("%:p:h") +endif + +" Automatically diffing can be done with: +" autocmd FileType gitcommit DiffGitCached | wincmd p +command! -bang -bar -buffer -complete=custom,s:diffcomplete -nargs=* DiffGitCached :call s:gitdiffcached(<bang>0,b:git_dir,<f-args>) + +function! s:diffcomplete(A,L,P) + let args = "" + if a:P <= match(a:L." -- "," -- ")+3 + let args = args . "-p\n--stat\n--shortstat\n--summary\n--patch-with-stat\n--no-renames\n-B\n-M\n-C\n" + end + if exists("b:git_dir") && a:A !~ '^-' + let tree = fnamemodify(b:git_dir,':h') + if strpart(getcwd(),0,strlen(tree)) == tree + let args = args."\n".system("git diff --cached --name-only") + endif + endif + return args +endfunction + +function! s:gitdiffcached(bang,gitdir,...) + let tree = fnamemodify(a:gitdir,':h') + let name = tempname() + let git = "git" + if strpart(getcwd(),0,strlen(tree)) != tree + let git .= " --git-dir=".(exists("*shellescape") ? shellescape(a:gitdir) : '"'.a:gitdir.'"') + endif + if a:0 + let extra = join(map(copy(a:000),exists("*shellescape") ? 'shellescape(v:val)' : "'\"'.v:val.'\"'")) + else + let extra = "-p --stat=".&columns + endif + call system(git." diff --cached --no-color ".extra." > ".(exists("*shellescape") ? shellescape(name) : name)) + exe "pedit ".(exists("*fnameescape") ? fnameescape(name) : name) + wincmd P + let b:git_dir = a:gitdir + command! -bang -bar -buffer -complete=custom,s:diffcomplete -nargs=* DiffGitCached :call s:gitdiffcached(<bang>0,b:git_dir,<f-args>) + nnoremap <silent> q :q<CR> + setlocal buftype=nowrite nobuflisted noswapfile nomodifiable filetype=git +endfunction
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/ftplugin/gitconfig.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,15 @@ +" Vim filetype plugin +" Language: git config file +" Maintainer: Tim Pope <vimNOSPAM@tpope.info> +" Last Change: 2007 Dec 16 + +" Only do this when not done yet for this buffer +if (exists("b:did_ftplugin")) + finish +endif +let b:did_ftplugin = 1 + +setlocal formatoptions-=t formatoptions+=croql +setlocal comments=:#,:; commentstring=;\ %s + +let b:undo_ftplugin = "setl fo< com< cms<"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/ftplugin/gitrebase.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,41 @@ +" Vim filetype plugin +" Language: git rebase --interactive +" Maintainer: Tim Pope <vimNOSPAM@tpope.info> +" Last Change: 2008 Apr 16 + +" Only do this when not done yet for this buffer +if (exists("b:did_ftplugin")) + finish +endif + +runtime! ftplugin/git.vim +let b:did_ftplugin = 1 + +setlocal comments=:# commentstring=#\ %s formatoptions-=t +if !exists("b:undo_ftplugin") + let b:undo_ftplugin = "" +endif +let b:undo_ftplugin = b:undo_ftplugin."|setl com< cms< fo<" + +function! s:choose(word) + s/^\(\w\+\>\)\=\(\s*\)\ze\x\{4,40\}\>/\=(strlen(submatch(1)) == 1 ? a:word[0] : a:word) . substitute(submatch(2),'^$',' ','')/e +endfunction + +function! s:cycle() + call s:choose(get({'s':'edit','p':'squash'},getline('.')[0],'pick')) +endfunction + +command! -buffer -bar Pick :call s:choose('pick') +command! -buffer -bar Squash :call s:choose('squash') +command! -buffer -bar Edit :call s:choose('edit') +command! -buffer -bar Cycle :call s:cycle() +" The above are more useful when they are mapped; for example: +"nnoremap <buffer> <silent> S :Cycle<CR> + +if exists("g:no_plugin_maps") || exists("g:no_gitrebase_maps") + finish +endif + +nnoremap <buffer> <expr> K col('.') < 7 && expand('<Lt>cword>') =~ '\X' && getline('.') =~ '^\w\+\s\+\x\+\>' ? 'wK' : 'K' + +let b:undo_ftplugin = b:undo_ftplugin . "|nunmap <buffer> K"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/ftplugin/gitsendemail.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,6 @@ +" Vim filetype plugin +" Language: git send-email message +" Maintainer: Tim Pope <vimNOSPAM@tpope.info> +" Last Change: 2007 Dec 16 + +runtime! ftplugin/mail.vim
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/ftplugin/haml.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,66 @@ +" Vim filetype plugin +" Language: Haml +" Maintainer: Tim Pope <vimNOSPAM@tpope.info> + +" Only do this when not done yet for this buffer +if exists("b:did_ftplugin") + finish +endif + +let s:save_cpo = &cpo +set cpo-=C + +" Define some defaults in case the included ftplugins don't set them. +let s:undo_ftplugin = "" +let s:browsefilter = "All Files (*.*)\t*.*\n" +let s:match_words = "" + +runtime! ftplugin/html.vim ftplugin/html_*.vim ftplugin/html/*.vim +unlet! b:did_ftplugin + +" Override our defaults if these were set by an included ftplugin. +if exists("b:undo_ftplugin") + let s:undo_ftplugin = b:undo_ftplugin + unlet b:undo_ftplugin +endif +if exists("b:browsefilter") + let s:browsefilter = b:browsefilter + unlet b:browsefilter +endif +if exists("b:match_words") + let s:match_words = b:match_words + unlet b:match_words +endif + +runtime! ftplugin/ruby.vim ftplugin/ruby_*.vim ftplugin/ruby/*.vim +let b:did_ftplugin = 1 + +" Combine the new set of values with those previously included. +if exists("b:undo_ftplugin") + let s:undo_ftplugin = b:undo_ftplugin . " | " . s:undo_ftplugin +endif +if exists ("b:browsefilter") + let s:browsefilter = substitute(b:browsefilter,'\cAll Files (\*\.\*)\t\*\.\*\n','','') . s:browsefilter +endif +if exists("b:match_words") + let s:match_words = b:match_words . ',' . s:match_words +endif + +" Change the browse dialog on Win32 to show mainly Haml-related files +if has("gui_win32") + let b:browsefilter="Haml Files (*.haml)\t*.haml\nSass Files (*.sass)\t*.sass\n" . s:browsefilter +endif + +" Load the combined list of match_words for matchit.vim +if exists("loaded_matchit") + let b:match_words = s:match_words +endif + +setlocal commentstring=-#\ %s + +let b:undo_ftplugin = "setl cms< com< " + \ " | unlet! b:browsefilter b:match_words | " . s:undo_ftplugin + +let &cpo = s:save_cpo + +" vim:set sw=2:
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/ftplugin/hostconf.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,18 @@ +" Vim filetype plugin file +" Maintainer: Nikolai Weibull <now@bitwi.se> +" Latest Revision: 2007-12-04 + +if exists("b:did_ftplugin") + finish +endif +let b:did_ftplugin = 1 + +let s:cpo_save = &cpo +set cpo&vim + +let b:undo_ftplugin = "setl com< cms< fo<" + +setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql + +let &cpo = s:cpo_save +unlet s:cpo_save
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/ftplugin/hostsaccess.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,19 @@ +" Vim filetype plugin file +" Language: hosts_access(5) control file +" Maintainer: Nikolai Weibull <now@bitwi.se> +" Latest Revision: 2008-07-09 + +if exists("b:did_ftplugin") + finish +endif +let b:did_ftplugin = 1 + +let s:cpo_save = &cpo +set cpo&vim + +let b:undo_ftplugin = "setl com< cms< fo<" + +setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql + +let &cpo = s:cpo_save +unlet s:cpo_save
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/ftplugin/logtalk.dict Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,164 @@ +encoding +calls +category +dynamic +end_category +end_object +end_protocol +info +initialization +object +protocol +synchronized +threaded +uses +alias +discontiguous +meta_predicate +mode +op +private +protected +public +current_object +current_protocol +current_category +object_property +protocol_property +category_property +create_object +create_protocol +create_category +abolish_object +abolish_protocol +abolish_category +complements +complements_object +extends +extends_object +extends_protocol +extends_category +implements +implements_protocol +imports +imports_category +instantiates +instantiates_class +specializes +specializes_class +abolish_events +current_event +define_events +logtalk_load +logtalk_compile +logtalk_library_path +current_logtalk_flag +set_logtalk_flag +threaded_call +threaded_once +threaded_ignore +threaded_exit +threaded_peek +threaded_wait +threaded_notify +self +this +sender +parameter +before +after +phrase +expand_term +goal_expansion +term_expansion +true +fail +call +catch +throw +unify_with_occurs_check +var +atom +integer +float +atomic +compound +nonvar +number +arg +copy_term +functor +current_predicate +predicate_property +abolish +assertz +asserta +clause +retract +retractall +bagof +findall +forall +setof +current_input +current_output +set_input +set_output +open +close +flush_output +stream_property +at_end_of_stream +set_stream_position +get_char +get_code +peek_char +peek_code +put_char +put_code +nl +get_byte +peek_byte +put_byte +read +read_term +write +writeq +write_canonical +atom_chars +atom_codes +atom_concat +number_chars +number_codes +current_op +char_conversion +current_char_conversion +once +repeat +atom_length +atom_concat +sub_atom +atom_chars +atom_codes +char_code +number_chars +number_codes +set_prolog_flag +current_prolog_flag +halt +abs +atan +ceiling +cos +exp +float_fractional_part +float_integer_part +floor +log +mod +rem +round +sign +sin +sqrt +truncate
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/ftplugin/logtalk.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,18 @@ +" Logtalk filetype plugin file +" Language: Logtalk +" Maintainer: Paulo Moura <pmoura@logtalk.org> +" Latest Revision: 2007-07-06 + +if exists("b:did_ftplugin") + finish +endif +let b:did_ftplugin = 1 + +let b:undo_ftplugin = "setl ts< sw< fdm< fdc< ai< dict<" + +"setlocal ts=4 +setlocal sw=4 +setlocal fdm=syntax +setlocal fdc=2 +setlocal autoindent +setlocal dict=$VIMRUNTIME/ftplugin/logtalk.dict
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/ftplugin/msmessages.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,40 @@ +" Vim filetype plugin file +" Language: MS Message files (*.mc) +" Maintainer: Kevin Locke <kwl7@cornell.edu> +" Last Change: 2008 April 09 +" Location: http://kevinlocke.name/programs/vim/syntax/msmessages.vim + +" Based on c.vim + +" Only do this when not done yet for this buffer +if exists("b:did_ftplugin") + finish +endif + +" Don't load another plugin for this buffer +let b:did_ftplugin = 1 + +" Using line continuation here. +let s:cpo_save = &cpo +set cpo-=C + +let b:undo_ftplugin = "setl fo< com< cms< | unlet! b:browsefilter" + +" Set 'formatoptions' to format all lines, including comments +setlocal fo-=ct fo+=roql + +" Comments includes both ";" which describes a "comment" which will be +" converted to C code and variants on "; //" which will remain comments +" in the generated C code +setlocal comments=:;,:;//,:;\ //,s:;\ /*\ ,m:;\ \ *\ ,e:;\ \ */ +setlocal commentstring=;\ //\ %s + +" Win32 can filter files in the browse dialog +if has("gui_win32") && !exists("b:browsefilter") + let b:browsefilter = "MS Message Files (*.mc)\t*.mc\n" . + \ "Resource Files (*.rc)\t*.rc\n" . + \ "All Files (*.*)\t*.*\n" +endif + +let &cpo = s:cpo_save +unlet s:cpo_save
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/ftplugin/nsis.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,22 @@ +" Vim ftplugin file +" Language: NSIS script +" Maintainer: Nikolai Weibull <now@bitwi.se> +" Latest Revision: 2008-07-09 + +let s:cpo_save = &cpo +set cpo&vim + +if exists("b:did_ftplugin") + finish +endif +let b:did_ftplugin = 1 + +let b:undo_ftplugin = "setl com< cms< fo< def< inc<" + +setlocal comments=s1:/*,mb:*,ex:*/,b:#,:; commentstring=;\ %s +setlocal formatoptions-=t formatoptions+=croql +setlocal define=^\\s*!define\\%(\\%(utc\\)\\=date\\|math\\)\\= +setlocal include=^\\s*!include\\%(/NONFATAL\\)\\= + +let &cpo = s:cpo_save +unlet s:cpo_save
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/ftplugin/pdf.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,89 @@ +" Vim filetype plugin file +" Language: PDF +" Maintainer: Tim Pope <vimNOSPAM@tpope.info> +" Last Change: 2007 Dec 16 + +if exists("b:did_ftplugin") + finish +endif +let b:did_ftplugin = 1 + +setlocal commentstring=%%s +setlocal comments=:% +let b:undo_ftplugin = "setlocal cms< com< | unlet! b:match_words" + +if exists("g:loaded_matchit") + let b:match_words = '\<\%(\d\+\s\+\d\+\s\+\)obj\>:\<endobj\>,\<stream$:\<endstream\>,\<xref\>:\<trailer\>,<<:>>' +endif + +if exists("g:no_plugin_maps") || exists("g:no_pdf_maps") || v:version < 700 + finish +endif + +if !exists("b:pdf_tagstack") + let b:pdf_tagstack = [] +endif + +let b:undo_ftplugin .= " | silent! nunmap <buffer> <C-]> | silent! nunmap <buffer> <C-T>" +nnoremap <silent><buffer> <C-]> :call <SID>Tag()<CR> +" Inline, so the error from an empty tag stack will be simple. +nnoremap <silent><buffer> <C-T> :if len(b:pdf_tagstack) > 0 <Bar> call setpos('.',remove(b:pdf_tagstack, -1)) <Bar> else <Bar> exe "norm! \<Lt>C-T>" <Bar> endif<CR> + +function! s:Tag() + call add(b:pdf_tagstack,getpos('.')) + if getline('.') =~ '^\d\+$' && getline(line('.')-1) == 'startxref' + return s:dodigits(getline('.')) + elseif getline('.') =~ '/Prev\s\+\d\+\>\%(\s\+\d\)\@!' && expand("<cword>") =~ '^\d\+$' + return s:dodigits(expand("<cword>")) + elseif getline('.') =~ '^\d\{10\} \d\{5\} ' + return s:dodigits(matchstr(getline('.'),'^\d\+')) + else + let line = getline(".") + let lastend = 0 + let pat = '\<\d\+\s\+\d\+\s\+R\>' + while lastend >= 0 + let beg = match(line,'\C'.pat,lastend) + let end = matchend(line,'\C'.pat,lastend) + if beg < col(".") && end >= col(".") + return s:doobject(matchstr(line,'\C'.pat,lastend)) + endif + let lastend = end + endwhile + return s:notag() + endif +endfunction + +function! s:doobject(string) + let first = matchstr(a:string,'^\s*\zs\d\+') + let second = matchstr(a:string,'^\s*\d\+\s\+\zs\d\+') + norm! m' + if first != '' && second != '' + let oldline = line('.') + let oldcol = col('.') + 1 + if !search('^\s*'.first.'\s\+'.second.'\s\+obj\>') + exe oldline + exe 'norm! '.oldcol.'|' + return s:notag() + endif + endif +endfunction + +function! s:dodigits(digits) + let digits = 0 + substitute(a:digits,'^0*','','') + norm! m' + if digits <= 0 + norm! 1go + else + " Go one character before the destination and advance. This method + " lands us after a newline rather than before, if that is our target. + exe "goto ".(digits)."|norm! 1 " + endif +endfunction + +function! s:notag() + silent! call remove(b:pdf_tagstack,-1) + echohl ErrorMsg + echo "E426: tag not found" + echohl NONE +endfunction
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/ftplugin/reva.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,25 @@ +" Vim ftplugin file +" Language: Reva Forth +" Version: 7.1 +" Last Change: 2008/01/11 +" Maintainer: Ron Aaron <ron@ronware.org> +" URL: http://ronware.org/reva/ +" Filetypes: *.rf *.frt +" NOTE: Forth allows any non-whitespace in a name, so you need to do: +" setlocal iskeyword=!,@,33-35,%,$,38-64,A-Z,91-96,a-z,123-126,128-255 +" +" This goes with the syntax/reva.vim file. + +" Only do this when not done yet for this buffer +if exists("b:did_ftplugin") + finish +endif + +" Don't load another plugin for this buffer +let b:did_ftplugin = 1 + +setlocal sts=4 sw=4 +setlocal com=s1:/*,mb:*,ex:*/,:\|,:\\ +setlocal fo=tcrqol +setlocal matchpairs+=\::; +setlocal iskeyword=!,@,33-35,%,$,38-64,A-Z,91-96,a-z,123-126,128-255
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/ftplugin/sass.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,18 @@ +" Vim filetype plugin +" Language: Sass +" Maintainer: Tim Pope <vimNOSPAM@tpope.info> + +" Only do this when not done yet for this buffer +if exists("b:did_ftplugin") + finish +endif +let b:did_ftplugin = 1 + +let b:undo_ftplugin = "setl cms< inc< ofu<" + +setlocal commentstring=//\ %s +setlocal omnifunc=csscomplete#CompleteCSS + +let &l:include = '^\s*@import\s\+\%(url(\)\=' + +" vim:set sw=2:
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/indent/dtd.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,325 @@ +" Vim indent file +" Language: DTD (Document Type Definition for XML) +" Maintainer: Nikolai Weibull <now@bitwi.se> +" Latest Revision: 2008-07-18 + +let s:cpo_save = &cpo +set cpo&vim + +setlocal indentexpr=GetDTDIndent() +setlocal indentkeys=!^F,o,O,> +setlocal nosmartindent + +if exists("*GetDTDIndent") + finish +endif + +" TODO: Needs to be adjusted to stop at [, <, and ]. +let s:token_pattern = '^[^[:space:]]\+' + +function s:lex1(input, start, ...) + let pattern = a:0 > 0 ? a:1 : s:token_pattern + let start = matchend(a:input, '^\_s*', a:start) + if start == -1 + return ["", a:start] + endif + let end = matchend(a:input, pattern, start) + if end == -1 + return ["", a:start] + endif + let token = strpart(a:input, start, end - start) + return [token, end] +endfunction + +function s:lex(input, start, ...) + let pattern = a:0 > 0 ? a:1 : s:token_pattern + let info = s:lex1(a:input, a:start, pattern) + while info[0] == '--' + let info = s:lex1(a:input, info[1], pattern) + while info[0] != "" && info[0] != '--' + let info = s:lex1(a:input, info[1], pattern) + endwhile + if info[0] == "" + return info + endif + let info = s:lex1(a:input, info[1], pattern) + endwhile + return info +endfunction + +function s:indent_to_innermost_parentheses(line, end) + let token = '(' + let end = a:end + let parentheses = [end - 1] + while token != "" + let [token, end] = s:lex(a:line, end, '^\%([(),|]\|[A-Za-z0-9_-]\+\)[?*+]\=') + if token[0] == '(' + call add(parentheses, end - 1) + elseif token[0] == ')' + if len(parentheses) == 1 + return [-1, end] + endif + call remove(parentheses, -1) + endif + endwhile + return [parentheses[-1] - strridx(a:line, "\n", parentheses[-1]), end] +endfunction + +" TODO: Line and end could be script global (think OO members). +function GetDTDIndent() + if v:lnum == 1 + return 0 + endif + + " Begin by searching back for a <! that isn’t inside a comment. + " From here, depending on what follows immediately after, parse to + " where we’re at to determine what to do. + if search('<!', 'bceW') == 0 + return indent(v:lnum - 1) + endif + let lnum = line('.') + let col = col('.') + let indent = indent('.') + let line = join(getline(lnum, v:lnum - 1), "\n") + + let [declaration, end] = s:lex1(line, col) + if declaration == "" + return indent + &sw + elseif declaration == '--' + " We’re looking at a comment. Now, simply determine if the comment is + " terminated or not. If it isn’t, let Vim take care of that using + " 'comments' and 'autoindent'. Otherwise, indent to the first lines level. + while declaration != "" + let [declaration, end] = s:lex(line, end) + if declaration == "-->" + return indent + endif + endwhile + return -1 + elseif declaration == 'ELEMENT' + " Check for element name. If none exists, indent one level. + let [name, end] = s:lex(line, end) + if name == "" + return indent + &sw + endif + + " Check for token following element name. This can be a specification of + " whether the start or end tag may be omitted. If nothing is found, indent + " one level. + let [token, end] = s:lex(line, end) + let n = 0 + while token =~ '[-O]' && n < 2 + let [token, end] = s:lex(line, end, '^\%([-O(]\|ANY\|EMPTY\)') + let n += 1 + endwhile + if token == "" + return indent + &sw + endif + + " Next comes the content model. If the token we’ve found isn’t a + " parenthesis it must be either ANY, EMPTY or some random junk. Either + " way, we’re done indenting this element, so set it to that of the first + " line so that the terminating “>” winds up having the same indention. + if token != '(' + return indent + endif + + " Now go through the content model. We need to keep track of the nesting + " of parentheses. As soon as we hit 0 we’re done. If that happens we must + " have a complete content model. Thus set indention to be the same as that + " of the first line so that the terminating “>” winds up having the same + " indention. Otherwise, we’ll indent to the innermost parentheses not yet + " matched. + let [indent_of_innermost, end] = s:indent_to_innermost_parentheses(line, end) + if indent_of_innermost != -1 + return indent_of_innermost + endif + + " Finally, look for any additions and/or exceptions to the content model. + " This is defined by a “+” or “-” followed by another content model + " declaration. + " TODO: Can the “-” be separated by whitespace from the “(”? + let seen = { '+(': 0, '-(': 0 } + while 1 + let [additions_exceptions, end] = s:lex(line, end, '^[+-](') + if additions_exceptions != '+(' && additions_exceptions != '-(' + let [token, end] = s:lex(line, end) + if token == '>' + return indent + endif + " TODO: Should use s:lex here on getline(v:lnum) and check for >. + return getline(v:lnum) =~ '^\s*>' || count(values(seen), 0) == 0 ? indent : (indent + &sw) + endif + + " If we’ve seen an addition or exception already and this is of the same + " kind, the user is writing a broken DTD. Time to bail. + if seen[additions_exceptions] + return indent + endif + let seen[additions_exceptions] = 1 + + let [indent_of_innermost, end] = s:indent_to_innermost_parentheses(line, end) + if indent_of_innermost != -1 + return indent_of_innermost + endif + endwhile + elseif declaration == 'ATTLIST' + " Check for element name. If none exists, indent one level. + let [name, end] = s:lex(line, end) + if name == "" + return indent + &sw + endif + + " Check for any number of attributes. + while 1 + " Check for attribute name. If none exists, indent one level, unless the + " current line is a lone “>”, in which case we indent to the same level + " as the first line. Otherwise, if the attribute name is “>”, we have + " actually hit the end of the attribute list, in which case we indent to + " the same level as the first line. + let [name, end] = s:lex(line, end) + if name == "" + " TODO: Should use s:lex here on getline(v:lnum) and check for >. + return getline(v:lnum) =~ '^\s*>' ? indent : (indent + &sw) + elseif name == ">" + return indent + endif + + " Check for attribute value declaration. If none exists, indent two + " levels. Otherwise, if it’s an enumerated value, check for nested + " parentheses and indent to the innermost one if we don’t reach the end + " of the listc. Otherwise, just continue with looking for the default + " attribute value. + " TODO: Do validation of keywords + " (CDATA|NMTOKEN|NMTOKENS|ID|IDREF|IDREFS|ENTITY|ENTITIES)? + let [value, end] = s:lex(line, end, '^\%((\|[^[:space:]]\+\)') + if value == "" + return indent + &sw * 2 + elseif value == 'NOTATION' + " If this is a enumerated value based on notations, read another token + " for the actual value. If it doesn’t exist, indent three levels. + " TODO: If validating according to above, value must be equal to '('. + let [value, end] = s:lex(line, end, '^\%((\|[^[:space:]]\+\)') + if value == "" + return indent + &sw * 3 + endif + endif + + if value == '(' + let [indent_of_innermost, end] = s:indent_to_innermost_parentheses(line, end) + if indent_of_innermost != -1 + return indent_of_innermost + endif + endif + + " Finally look for the attribute’s default value. If non exists, indent + " two levels. + " TODO: Do validation of keywords (#REQUIRED|#IMPLIED)? + let [default, end] = s:lex(line, end, '^\%("\_[^"]*"\|[^[:space:]]\+\)') + if default == "" + return indent + &sw * 2 + elseif default == '#FIXED' + " We need to look for the fixed value. If non exists, indent three + " levels. + let [default, end] = s:lex(line, end, '^"\_[^"]*"') + if default == "" + return indent + &sw * 3 + endif + endif + endwhile + elseif declaration == 'ENTITY' + " Check for entity name. If none exists, indent one level. Otherwise, if + " the name actually turns out to be a percent sign, “%”, this is a + " parameter entity. Read another token to determine the entity name and, + " again, if none exists, indent one level. + let [name, end] = s:lex(line, end) + if name == "" + return indent + &sw + elseif name == '%' + let [name, end] = s:lex(line, end) + if name == "" + return indent + &sw + endif + endif + + " Now check for the entity value. If none exists, indent one level. If it + " does exist, indent to same level as first line, as we’re now done with + " this entity. + " + " The entity value can be a string in single or double quotes (no escapes + " to worry about, as entities are used instead). However, it can also be + " that this is an external unparsed entity. In that case we have to look + " further for (possibly) a public ID and an URI followed by the NDATA + " keyword and the actual notation name. For the public ID and URI, indent + " two levels, if they don’t exist. If the NDATA keyword doesn’t exist, + " indent one level. Otherwise, if the actual notation name doesn’t exist, + " indent two level. If it does, indent to same level as first line, as + " we’re now done with this entity. + let [value, end] = s:lex(line, end) + if value == "" + return indent + &sw + elseif value == 'SYSTEM' || value == 'PUBLIC' + let [quoted_string, end] = s:lex(line, end, '\%("[^"]\+"\|''[^'']\+''\)') + if quoted_string == "" + return indent + &sw * 2 + endif + + if value == 'PUBLIC' + let [quoted_string, end] = s:lex(line, end, '\%("[^"]\+"\|''[^'']\+''\)') + if quoted_string == "" + return indent + &sw * 2 + endif + endif + + let [ndata, end] = s:lex(line, end) + if ndata == "" + return indent + &sw + endif + + let [name, end] = s:lex(line, end) + return name == "" ? (indent + &sw * 2) : indent + else + return indent + endif + elseif declaration == 'NOTATION' + " Check for notation name. If none exists, indent one level. + let [name, end] = s:lex(line, end) + if name == "" + return indent + &sw + endif + + " Now check for the external ID. If none exists, indent one level. + let [id, end] = s:lex(line, end) + if id == "" + return indent + &sw + elseif id == 'SYSTEM' || id == 'PUBLIC' + let [quoted_string, end] = s:lex(line, end, '\%("[^"]\+"\|''[^'']\+''\)') + if quoted_string == "" + return indent + &sw * 2 + endif + + if id == 'PUBLIC' + let [quoted_string, end] = s:lex(line, end, '\%("[^"]\+"\|''[^'']\+''\|>\)') + if quoted_string == "" + " TODO: Should use s:lex here on getline(v:lnum) and check for >. + return getline(v:lnum) =~ '^\s*>' ? indent : (indent + &sw * 2) + elseif quoted_string == '>' + return indent + endif + endif + endif + + return indent + endif + + " TODO: Processing directives could be indented I suppose. But perhaps it’s + " just as well to let the user decide how to indent them (perhaps extending + " this function to include proper support for whatever processing directive + " language they want to use). + + " Conditional sections are simply passed along to let Vim decide what to do + " (and hence the user). + return -1 +endfunction + +let &cpo = s:cpo_save
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/indent/dtrace.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,17 @@ +" Vim indent file +" Language: D script as described in "Solaris Dynamic Tracing Guide", +" http://docs.sun.com/app/docs/doc/817-6223 +" Last Change: 2008/03/20 +" Version: 1.2 +" Maintainer: Nicolas Weber <nicolasweber@gmx.de> + +" Only load this indent file when no other was loaded. +if exists("b:did_indent") + finish +endif +let b:did_indent = 1 + +" Built-in C indenting works nicely for dtrace. +setlocal cindent + +let b:undo_indent = "setl cin<"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/indent/erlang.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,206 @@ +" Vim indent file +" Language: Erlang +" Maintainer: Csaba Hoch <csaba.hoch@gmail.com> +" Contributor: Edwin Fine <efine145_nospam01 at usa dot net> +" Last Change: 2008 Mar 12 + +" Only load this indent file when no other was loaded. +if exists("b:did_indent") + finish +endif +let b:did_indent = 1 + +setlocal indentexpr=ErlangIndent() +setlocal indentkeys+==after,=end,=catch,=),=],=} + +" Only define the functions once. +if exists("*ErlangIndent") + finish +endif + +" The function go through the whole line, analyses it and sets the indentation +" (ind variable). +" l: the number of the line to be examined. +function s:ErlangIndentAtferLine(l) + let i = 0 " the index of the current character in the line + let length = strlen(a:l) " the length of the line + let ind = 0 " how much should be the difference between the indentation of + " the current line and the indentation of the next line? + " e.g. +1: the indentation of the next line should be equal to + " the indentation of the current line plus one shiftwidth + let lastFun = 0 " the last token was a 'fun' + let lastReceive = 0 " the last token was a 'receive'; needed for 'after' + let lastHashMark = 0 " the last token was a 'hashmark' + + while 0<= i && i < length + + " m: the next value of the i + if a:l[i] == '%' + break + elseif a:l[i] == '"' + let m = matchend(a:l,'"\%([^"\\]\|\\.\)*"',i) + let lastReceive = 0 + elseif a:l[i] == "'" + let m = matchend(a:l,"'[^']*'",i) + let lastReceive = 0 + elseif a:l[i] =~# "[a-z]" + let m = matchend(a:l,".[[:alnum:]_]*",i) + if lastFun + let ind = ind - 1 + let lastFun = 0 + let lastReceive = 0 + elseif a:l[(i):(m-1)] =~# '^\%(case\|if\|try\)$' + let ind = ind + 1 + elseif a:l[(i):(m-1)] =~# '^receive$' + let ind = ind + 1 + let lastReceive = 1 + elseif a:l[(i):(m-1)] =~# '^begin$' + let ind = ind + 2 + let lastReceive = 0 + elseif a:l[(i):(m-1)] =~# '^end$' + let ind = ind - 2 + let lastReceive = 0 + elseif a:l[(i):(m-1)] =~# '^after$' + if lastReceive == 0 + let ind = ind - 1 + else + let ind = ind + 0 + end + let lastReceive = 0 + elseif a:l[(i):(m-1)] =~# '^fun$' + let ind = ind + 1 + let lastFun = 1 + let lastReceive = 0 + endif + elseif a:l[i] =~# "[A-Z_]" + let m = matchend(a:l,".[[:alnum:]_]*",i) + let lastReceive = 0 + elseif a:l[i] == '$' + let m = i+2 + let lastReceive = 0 + elseif a:l[i] == "." && (i+1>=length || a:l[i+1]!~ "[0-9]") + let m = i+1 + if lastHashMark + let lastHashMark = 0 + else + let ind = ind - 1 + end + let lastReceive = 0 + elseif a:l[i] == '-' && (i+1<length && a:l[i+1]=='>') + let m = i+2 + let ind = ind + 1 + let lastReceive = 0 + elseif a:l[i] == ';' + let m = i+1 + let ind = ind - 1 + let lastReceive = 0 + elseif a:l[i] == '#' + let m = i+1 + let lastHashMark = 1 + elseif a:l[i] =~# '[({[]' + let m = i+1 + let ind = ind + 1 + let lastFun = 0 + let lastReceive = 0 + let lastHashMark = 0 + elseif a:l[i] =~# '[)}\]]' + let m = i+1 + let ind = ind - 1 + let lastReceive = 0 + else + let m = i+1 + endif + + let i = m + + endwhile + + return ind + +endfunction + +function s:FindPrevNonBlankNonComment(lnum) + let lnum = prevnonblank(a:lnum) + let line = getline(lnum) + " continue to search above if the current line begins with a '%' + while line =~# '^\s*%.*$' + let lnum = prevnonblank(lnum - 1) + if 0 == lnum + return 0 + endif + let line = getline(lnum) + endwhile + return lnum +endfunction + +function ErlangIndent() + + " Find a non-blank line above the current line. + let lnum = prevnonblank(v:lnum - 1) + + " Hit the start of the file, use zero indent. + if lnum == 0 + return 0 + endif + + let prevline = getline(lnum) + let currline = getline(v:lnum) + + let ind = indent(lnum) + &sw * s:ErlangIndentAtferLine(prevline) + + " special cases: + if prevline =~# '^\s*\%(after\|end\)\>' + let ind = ind + 2*&sw + endif + if currline =~# '^\s*end\>' + let ind = ind - 2*&sw + endif + if currline =~# '^\s*after\>' + let plnum = s:FindPrevNonBlankNonComment(v:lnum-1) + if getline(plnum) =~# '^[^%]*\<receive\>\s*\%(%.*\)\=$' + let ind = ind - 1*&sw + " If the 'receive' is not in the same line as the 'after' + else + let ind = ind - 2*&sw + endif + endif + if prevline =~# '^\s*[)}\]]' + let ind = ind + 1*&sw + endif + if currline =~# '^\s*[)}\]]' + let ind = ind - 1*&sw + endif + if prevline =~# '^\s*\%(catch\)\s*\%(%\|$\)' + let ind = ind + 1*&sw + endif + if currline =~# '^\s*\%(catch\)\s*\%(%\|$\)' + let ind = ind - 1*&sw + endif + + if ind<0 + let ind = 0 + endif + return ind + +endfunction + +" TODO: +" +" f() -> +" x("foo +" bar") +" , +" bad_indent. +" +" fun +" init/0, +" bad_indent +" +" #rec +" .field, +" bad_indent +" +" case X of +" 1 when A; B -> +" bad_indent +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/indent/framescript.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,41 @@ +" Vim indent file +" Language: FrameScript +" Maintainer: Nikolai Weibull <now@bitwi.se> +" Latest Revision: 2008-07-19 + +if exists("b:did_indent") + finish +endif +let b:did_indent = 1 + +setlocal indentexpr=GetFrameScriptIndent() +setlocal indentkeys=!^F,o,O,0=~Else,0=~EndIf,0=~EndLoop,0=~EndSub +setlocal nosmartindent + +if exists("*GetFrameScriptIndent") + finish +endif + +function GetFrameScriptIndent() + let lnum = prevnonblank(v:lnum - 1) + + if lnum == 0 + return 0 + endif + + if getline(v:lnum) =~ '^\s*\*' + return cindent(v:lnum) + endif + + let ind = indent(lnum) + + if getline(lnum) =~? '^\s*\%(If\|Loop\|Sub\)' + let ind = ind + &sw + endif + + if getline(v:lnum) =~? '^\s*\%(Else\|End\%(If\|Loop\|Sub\)\)' + let ind = ind - &sw + endif + + return ind +endfunction
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/indent/gitconfig.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,35 @@ +" Vim indent file +" Language: git config file +" Maintainer: Tim Pope <vimNOSPAM@tpope.info> +" Last Change: 2008 Jun 04 + +if exists("b:did_indent") + finish +endif +let b:did_indent = 1 + +setlocal autoindent +setlocal indentexpr=GetGitconfigIndent() +setlocal indentkeys=o,O,*<Return>,0[,],0;,0#,=,!^F + +" Only define the function once. +if exists("*GetGitconfigIndent") + finish +endif + +function! GetGitconfigIndent() + let line = getline(prevnonblank(v:lnum-1)) + let cline = getline(v:lnum) + if line =~ '\\\@<!\%(\\\\\)*\\$' + " odd number of slashes, in a line continuation + return 2 * &sw + elseif cline =~ '^\s*\[' + return 0 + elseif cline =~ '^\s*\a' + return &sw + elseif cline == '' && line =~ '^\[' + return &sw + else + return -1 + endif +endfunction
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/indent/haml.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,73 @@ +" Vim indent file +" Language: HAML +" Maintainer: Tim Pope <vimNOSPAM@tpope.info> +" Last Change: 2007 Dec 16 + +if exists("b:did_indent") + finish +endif +runtime! indent/ruby.vim +unlet! b:did_indent +let b:did_indent = 1 + +setlocal autoindent sw=2 et +setlocal indentexpr=GetHamlIndent() +setlocal indentkeys=o,O,*<Return>,},],0),!^F,=end,=else,=elsif,=rescue,=ensure,=when + +" Only define the function once. +if exists("*GetHamlIndent") + finish +endif + +let s:attributes = '\%({.\{-\}}\|\[.\{-\}\]\)' +let s:tag = '\%([%.#][[:alnum:]_-]\+\|'.s:attributes.'\)*[<>]*' + +if !exists('g:haml_self_closing_tags') + let g:haml_self_closing_tags = 'meta|link|img|hr|br' +endif + +function! GetHamlIndent() + let lnum = prevnonblank(v:lnum-1) + if lnum == 0 + return 0 + endif + let line = substitute(getline(lnum),'\s\+$','','') + let cline = substitute(substitute(getline(v:lnum),'\s\+$','',''),'^\s\+','','') + let lastcol = strlen(line) + let line = substitute(line,'^\s\+','','') + let indent = indent(lnum) + let cindent = indent(v:lnum) + if cline =~# '\v^-\s*%(elsif|else|when)>' + let indent = cindent < indent ? cindent : indent - &sw + endif + let increase = indent + &sw + if indent == indent(lnum) + let indent = cindent <= indent ? -1 : increase + endif + "let indent = indent == indent(lnum) ? -1 : indent + "let indent = indent > indent(lnum) + &sw ? indent(lnum) + &sw : indent + + let group = synIDattr(synID(lnum,lastcol,1),'name') + + if line =~ '^!!!' + return indent + elseif line =~ '^/\%(\[[^]]*\]\)\=$' + return increase + elseif line =~ '^:' + return increase + elseif line =~ '^'.s:tag.'[=~-]\s*\%(\%(if\|else\|elsif\|unless\|case\|when\|while\|until\|for\|begin\|module\|class\|def\)\>\%(.*\<end\>\)\@!\|.*do |[^|]*|\s*$\)' + return increase + elseif line == '-#' + return increase + elseif group =~? '\v^(hamlSelfCloser)$' || line =~? '^%\v%('.g:haml_self_closing_tags.')>' + return indent + elseif group =~? '\v^%(hamlTag|hamlAttributesDelimiter|hamlObjectDelimiter|hamlClass|hamlId|htmlTagName|htmlSpecialTagName)$' + return increase + elseif synIDattr(synID(v:lnum,1,1),'name') ==? 'hamlRubyFilter' + return GetRubyIndent() + else + return indent + endif +endfunction + +" vim:set sw=2:
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/indent/logtalk.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,61 @@ +" Maintainer: Paulo Moura <pmoura@logtalk.org> +" Revised on: 2008.06.02 +" Language: Logtalk + +" This Logtalk indent file is a modified version of the Prolog +" indent file written by Gergely Kontra + +" Only load this indent file when no other was loaded. +if exists("b:did_indent") + finish +endif + +let b:did_indent = 1 + +setlocal indentexpr=GetLogtalkIndent() +setlocal indentkeys-=:,0# +setlocal indentkeys+=0%,-,0;,>,0) + +" Only define the function once. +if exists("*GetLogtalkIndent") + finish +endif + +function! GetLogtalkIndent() + " Find a non-blank line above the current line. + let pnum = prevnonblank(v:lnum - 1) + " Hit the start of the file, use zero indent. + if pnum == 0 + return 0 + endif + let line = getline(v:lnum) + let pline = getline(pnum) + + let ind = indent(pnum) + " Previous line was comment -> use previous line's indent + if pline =~ '^\s*%' + retu ind + endif + " Check for entity opening directive on previous line + if pline =~ '^\s*:-\s\(object\|protocol\|category\)\ze(.*,$' + let ind = ind + &sw + " Check for clause head on previous line + elseif pline =~ ':-\s*\(%.*\)\?$' + let ind = ind + &sw + " Check for entity closing directive on previous line + elseif pline =~ '^\s*:-\send_\(object\|protocol\|category\)\.\(%.*\)\?$' + let ind = ind - &sw + " Check for end of clause on previous line + elseif pline =~ '\.\s*\(%.*\)\?$' + let ind = ind - &sw + endif + " Check for opening conditional on previous line + if pline =~ '^\s*\([(;]\|->\)' && pline !~ '\.\s*\(%.*\)\?$' && pline !~ '^.*\([)][,]\s*\(%.*\)\?$\)' + let ind = ind + &sw + endif + " Check for closing an unclosed paren, or middle ; or -> + if line =~ '^\s*\([);]\|->\)' + let ind = ind - &sw + endif + return ind +endfunction
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/indent/sass.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,39 @@ +" Vim indent file +" Language: SASS +" Maintainer: Tim Pope <vimNOSPAM@tpope.info> +" Last Change: 2007 Dec 16 + +if exists("b:did_indent") + finish +endif +let b:did_indent = 1 + +setlocal autoindent sw=2 et +setlocal indentexpr=GetSassIndent() +setlocal indentkeys=o,O,*<Return>,<:>,!^F + +" Only define the function once. +if exists("*GetSassIndent") + finish +endif + +let s:property = '^\s*:\|^\s*[[:alnum:]-]\+:' + +function! GetSassIndent() + let lnum = prevnonblank(v:lnum-1) + let line = substitute(getline(lnum),'\s\+$','','') + let cline = substitute(substitute(getline(v:lnum),'\s\+$','',''),'^\s\+','','') + let lastcol = strlen(line) + let line = substitute(line,'^\s\+','','') + let indent = indent(lnum) + let cindent = indent(v:lnum) + if line !~ s:property && cline =~ s:property + return indent + &sw + "elseif line =~ s:property && cline !~ s:property + "return indent - &sw + else + return -1 + endif +endfunction + +" vim:set sw=2:
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/indent/tf.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,72 @@ +" Vim indent file +" Language: tf (TinyFugue) +" Maintainer: Christian J. Robinson <infynity@onewest.net> +" URL: http://www.infynity.spodzone.com/vim/indent/tf.vim +" Last Change: 2002 May 29 + +" Only load this indent file when no other was loaded. +if exists("b:did_indent") + finish +endif +let b:did_indent = 1 + +setlocal indentexpr=GetTFIndent() +setlocal indentkeys-=0{,0} indentkeys-=0# indentkeys-=: +setlocal indentkeys+==/endif,=/then,=/else,=/done,0; + +" Only define the function once: +if exists("*GetTFIndent") + finish +endif + +function GetTFIndent() + " Find a non-blank line above the current line: + let lnum = prevnonblank(v:lnum - 1) + + " No indent for the start of the file: + if lnum == 0 + return 0 + endif + + let ind = indent(lnum) + let line = getline(lnum) + + " No indentation if the previous line didn't end with "\": + " (Could be annoying, but it lets you know if you made a mistake.) + if line !~ '\\$' + return 0 + endif + + if line =~ '\(/def.*\\\|/for.*\(%;\s*\)\@\<!\\\)$' + let ind = ind + &sw + elseif line =~ '\(/if\|/else\|/then\)' + if line !~ '/endif' + let ind = ind + &sw + endif + elseif line =~ '/while' + if line !~ '/done' + let ind = ind + &sw + endif + endif + + let line = getline(v:lnum) + + if line =~ '\(/else\|/endif\|/then\)' + if line !~ '/if' + let ind = ind - &sw + endif + elseif line =~ '/done' + if line !~ '/while' + let ind = ind - &sw + endif + endif + + " Comments at the beginning of a line: + if line =~ '^\s*;' + let ind = 0 + endif + + + return ind + +endfunction
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/keymap/croatian.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,16 @@ +let s:encoding = &enc +if s:encoding == 'latin1' + if has("unix") + let s:encoding = 'iso-8859-2' + else + let s:encoding = 'cp1250' + endif +endif + +if s:encoding == 'utf-8' + source <sfile>:p:h/croatian_utf-8.vim +elseif s:encoding == 'cp1250' + source <sfile>:p:h/croatian_cp1250.vim +else + source <sfile>:p:h/croatian_iso-8859-2.vim +endif
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/keymap/croatian_cp1250.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,65 @@ +" Vim Keymap file for Croatian characters, classical variant, cp1250 encoding +" +" Maintainer: Paul B. Mahol <onemda@gmail.com> +" Last Changed: 2007 Oct 15 + +scriptencoding cp1250 + +let b:keymap_name = "croatian-cp1250" +" Uncomment line below if you prefer short name +"let b:keymap_name = "hr-cp1250" + +loadkeymap +z y +Z Y +y z +Y Z +[ � +{ � +] � +} � +; � +: � +' � +" � +\ � +| � +/ - +? _ +> : +< ; +� < +� > +� { +� } +� [ +� ] +� \ +� | += + ++ * +- ' +_ ? +@ " +^ & +& / +* ( +( ) +) = +� ~ +� @ +� ^ +� � +� � +� � +� � +� � +� � +� � +� � +� ` +� � +� � +� � +� � +� �
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/keymap/croatian_iso-8859-2.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,84 @@ +" Vim Keymap file for Croatian characters, classical variant, iso-8859-2 encoding +" +" Maintainer: Paul B. Mahol <onemda@gmail.com> +" Last Changed: 2007 Oct 14 + +scriptencoding iso-8859-2 + +let b:keymap_name = "croatian-iso-8859-2" +" Uncomment line below if you prefer short name +"let b:keymap_name = "hr-iso-8859-2" + +loadkeymap +" swap y and z, not important +z y +Z Y +y z +Y Z + +" s< +[ � +" S< +{ � +" D/ +} � +" d/ +] � +" c< +; � +" c' +' � +" C< +: � +" C' +" � +" z< +\ � +" Z< +| � +� | +� @ +� \ +� � +� � +� � +� � +� � +� � +� � +� { +� } +� [ +� ] +@ " +^ & +& / +* ( +( ) +) = +_ ? +- ' += + ++ * +/ - +< ; +> : +? _ +� ~ +� � +� � +� � +� ^ +� � +� � +� ` +� � +� � +� � + +" you still want to be able to type <, > +� < +� > + +` � +� �
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/keymap/croatian_utf-8.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,68 @@ +" Vim Keymap file for Croatian characters, classical variant, UTF-8 encoding +" +" Maintainer: Paul B. Mahol <onemda@gmail.com> +" Last Changed: 2007 Oct 14 + +scriptencoding UTF-8 + +let b:keymap_name = "croatian-UTF-8" +" Uncomment line below if you prefer short name +"let b:keymap_name = "hr-UTF-8" + +loadkeymap +z y +Z Y +y z +Y Z +[ š +{ Š +] đ +} Đ +; č +: Č +' ć +" Ć +\ ž +| Ž +@ " +^ & +& / +* ( +( ) +) = +_ ? ++ * += + +- ' +æ [ +ç ] +â { +î } +< ; +> : +/ - +? _ +ö @ +ñ \ +÷ | +å € +¬ < +® > +± ~ +² ˇ +³ ^ +´ ˘ +µ ° +· ` +¹ ´ +í § +Û ÷ +Ü ¤ +Ý × +§ ß +ì ł +Ì Ł +° ˝ +` ¸ +½ ¸ + ¨
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/keymap/russian-dvorak.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,89 @@ +" Vim Keymap file for russian characters, layout 'dvorak', MS Windows variant +" Derived from russian-jcuken.vim by Artem Chuprina <ran@ran.pp.ru> +" Useful mainly with utf-8 but may work with other encodings + +" Maintainer: Serhiy Boiko <cris.kiev@gmail.com> +" Last Changed: 2007 Jun 29 + +" All characters are given literally, conversion to another encoding (e.g., +" UTF-8) should work. +scriptencoding utf-8 + +let b:keymap_name = "ru" + +loadkeymap +~ Ё CYRILLIC CAPITAL LETTER IO +` ё CYRILLIC SMALL LETTER IO +U А CYRILLIC CAPITAL LETTER A +W Б CYRILLIC CAPITAL LETTER BE +E В CYRILLIC CAPITAL LETTER VE +G Г CYRILLIC CAPITAL LETTER GHE +N Д CYRILLIC CAPITAL LETTER DE +Y Е CYRILLIC CAPITAL LETTER IE +S Ж CYRILLIC CAPITAL LETTER ZHE +L З CYRILLIC CAPITAL LETTER ZE +X И CYRILLIC CAPITAL LETTER I +\" Й CYRILLIC CAPITAL LETTER SHORT I +P К CYRILLIC CAPITAL LETTER KA +T Л CYRILLIC CAPITAL LETTER EL +K М CYRILLIC CAPITAL LETTER EM +F Н CYRILLIC CAPITAL LETTER EN +H О CYRILLIC CAPITAL LETTER O +I П CYRILLIC CAPITAL LETTER PE +D Р CYRILLIC CAPITAL LETTER ER +J С CYRILLIC CAPITAL LETTER ES +B Т CYRILLIC CAPITAL LETTER TE +> У CYRILLIC CAPITAL LETTER U +A Ф CYRILLIC CAPITAL LETTER EF +? Х CYRILLIC CAPITAL LETTER HA +< Ц CYRILLIC CAPITAL LETTER TSE +Q Ч CYRILLIC CAPITAL LETTER CHE +C Ш CYRILLIC CAPITAL LETTER SHA +R Щ CYRILLIC CAPITAL LETTER SHCHA ++ Ъ CYRILLIC CAPITAL LETTER HARD SIGN +O Ы CYRILLIC CAPITAL LETTER YERU +M Ь CYRILLIC CAPITAL LETTER SOFT SIGN +_ Э CYRILLIC CAPITAL LETTER E +V Ю CYRILLIC CAPITAL LETTER YU +: Я CYRILLIC CAPITAL LETTER YA +u а CYRILLIC SMALL LETTER A +w б CYRILLIC SMALL LETTER BE +e в CYRILLIC SMALL LETTER VE +g г CYRILLIC SMALL LETTER GHE +n д CYRILLIC SMALL LETTER DE +y е CYRILLIC SMALL LETTER IE +s ж CYRILLIC SMALL LETTER ZHE +l з CYRILLIC SMALL LETTER ZE +x и CYRILLIC SMALL LETTER I +' й CYRILLIC SMALL LETTER SHORT I +p к CYRILLIC SMALL LETTER KA +t л CYRILLIC SMALL LETTER EL +k м CYRILLIC SMALL LETTER EM +f н CYRILLIC SMALL LETTER EN +h о CYRILLIC SMALL LETTER O +i п CYRILLIC SMALL LETTER PE +d р CYRILLIC SMALL LETTER ER +j с CYRILLIC SMALL LETTER ES +b т CYRILLIC SMALL LETTER TE +. у CYRILLIC SMALL LETTER U +a ф CYRILLIC SMALL LETTER EF +/ х CYRILLIC SMALL LETTER HA +, ц CYRILLIC SMALL LETTER TSE +q ч CYRILLIC SMALL LETTER CHE +c ш CYRILLIC SMALL LETTER SHA +r щ CYRILLIC SMALL LETTER SHCHA += ъ CYRILLIC SMALL LETTER HARD SIGN +o ы CYRILLIC SMALL LETTER YERU +m ь CYRILLIC SMALL LETTER SOFT SIGN +- э CYRILLIC SMALL LETTER E +v ю CYRILLIC SMALL LETTER YU +; я CYRILLIC SMALL LETTER YA +@ " +# № NUMERO SIGN +$ ; +^ : +& ? +z . +Z , +[ - +] =
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/keymap/ukrainian-dvorak.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,92 @@ +" Vim Keymap file for ukrainian characters, layout 'dvorak', +" MS Windows variant +" Derived from ukrainian-jcuken.vim by Anatoli Sakhnik <sakhnik@gmail.com> +" Useful mainly with utf-8 but may work with other encodings + +" Maintainer: Serhiy Boiko <cris.kiev@gmail.com> +" Last Changed: 2007 Jun 29 + +" All characters are given literally, conversion to another encoding (e.g., +" UTF-8) should work. +scriptencoding utf-8 + +let b:keymap_name = "uk" + +loadkeymap +~ ~ CYRILLIC CAPITAL LETTER IO +` ' CYRILLIC SMALL LETTER IO +U А CYRILLIC CAPITAL LETTER A +W Б CYRILLIC CAPITAL LETTER BE +E В CYRILLIC CAPITAL LETTER VE +G Г CYRILLIC CAPITAL LETTER GHE +N Д CYRILLIC CAPITAL LETTER DE +Y Е CYRILLIC CAPITAL LETTER IE +S Ж CYRILLIC CAPITAL LETTER ZHE +L З CYRILLIC CAPITAL LETTER ZE +X И CYRILLIC CAPITAL LETTER I +\" Й CYRILLIC CAPITAL LETTER SHORT I +P К CYRILLIC CAPITAL LETTER KA +T Л CYRILLIC CAPITAL LETTER EL +K М CYRILLIC CAPITAL LETTER EM +F Н CYRILLIC CAPITAL LETTER EN +H О CYRILLIC CAPITAL LETTER O +I П CYRILLIC CAPITAL LETTER PE +D Р CYRILLIC CAPITAL LETTER ER +J С CYRILLIC CAPITAL LETTER ES +B Т CYRILLIC CAPITAL LETTER TE +> У CYRILLIC CAPITAL LETTER U +A Ф CYRILLIC CAPITAL LETTER EF +? Х CYRILLIC CAPITAL LETTER HA +< Ц CYRILLIC CAPITAL LETTER TSE +Q Ч CYRILLIC CAPITAL LETTER CHE +C Ш CYRILLIC CAPITAL LETTER SHA +R Щ CYRILLIC CAPITAL LETTER SHCHA ++ Ї CYRILLIC CAPITAL LETTER YI +O І CYRILLIC CAPITAL LETTER BYELORUSSION-UKRAINIAN I +M Ь CYRILLIC CAPITAL LETTER SOFT SIGN +_ Є CYRILLIC CAPITAL LETTER UKRAINIAN IE +V Ю CYRILLIC CAPITAL LETTER YU +: Я CYRILLIC CAPITAL LETTER YA +| Ґ CYRILLIC CAPITAL LETTER GHE WITH UPTURN +u а CYRILLIC SMALL LETTER A +w б CYRILLIC SMALL LETTER BE +e в CYRILLIC SMALL LETTER VE +g г CYRILLIC SMALL LETTER GHE +n д CYRILLIC SMALL LETTER DE +y е CYRILLIC SMALL LETTER IE +s ж CYRILLIC SMALL LETTER ZHE +l з CYRILLIC SMALL LETTER ZE +x и CYRILLIC SMALL LETTER I +' й CYRILLIC SMALL LETTER SHORT I +p к CYRILLIC SMALL LETTER KA +t л CYRILLIC SMALL LETTER EL +k м CYRILLIC SMALL LETTER EM +f н CYRILLIC SMALL LETTER EN +h о CYRILLIC SMALL LETTER O +i п CYRILLIC SMALL LETTER PE +d р CYRILLIC SMALL LETTER ER +j с CYRILLIC SMALL LETTER ES +b т CYRILLIC SMALL LETTER TE +. у CYRILLIC SMALL LETTER U +a ф CYRILLIC SMALL LETTER EF +/ х CYRILLIC SMALL LETTER HA +, ц CYRILLIC SMALL LETTER TSE +q ч CYRILLIC SMALL LETTER CHE +c ш CYRILLIC SMALL LETTER SHA +r щ CYRILLIC SMALL LETTER SHCHA += ї CYRILLIC SMALL LETTER YI +o і CYRILLIC SMALL LETTER BYELORUSSION-UKRAINIAN I +m ь CYRILLIC SMALL LETTER SOFT SIGN +- є CYRILLIC SMALL LETTER UKRAINIAN IE +v ю CYRILLIC SMALL LETTER YU +; я CYRILLIC SMALL LETTER YA +\\ ґ CYRILLIC SMALL LETTER GHE WITH UPTURN +@ " +# № NUMERO SIGN +$ ; +^ : +& ? +z . +Z , +[ - +] =
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/lang/menu_eo.utf-8.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,457 @@ +" Menu Translations: Esperanto +" Maintainer: Dominique PELLE <dominique.pelle@free.fr> +" Last Change: 2008 Mar 01 +" +" Quit when menu translations have already been done. +if exists("did_menu_trans") + finish +endif +let did_menu_trans = 1 + +scriptencoding utf-8 + +menutrans &Help &Helpo + +menutrans &Overview<Tab><F1> &Enhavtabelo<Tab><F1> +menutrans &User\ Manual &Uzula\ manlibro +menutrans &How-to\ links &Kiel\ fari +menutrans &Find\.\.\. T&rovi\.\.\. +" -sep1- +menutrans &Credits &Dankoj +menutrans Co&pying &Permisilo +menutrans &Sponsor/Register &Subteni/Registriĝi +menutrans O&rphans &Orfoj +" -sep2- +menutrans &Version &Versio +menutrans &About Pri\ &Vim + +let g:menutrans_help_dialog = "Tajpu komandon aŭ serĉendan vorton en la helparo.\n\nAldonu i_ por la komandoj de la enmeta reĝimo (ekz: i_CTRL-X)\nAldonu c_ por redakto de la komanda linio (ekz: c_<Del>)\nĈirkaŭi la opciojn per apostrofoj (ekz: 'shiftwidth')" + +menutrans &File &Dosiero + +menutrans &Open\.\.\.<Tab>:e &Malfermi\.\.\.<Tab>:e +menutrans Sp&lit-Open\.\.\.<Tab>:sp Malfermi\ ÷\.\.\.<Tab>:sp +menutrans Open\ Tab\.\.\.<Tab>:tabnew Malfermi\ &langeton\.\.\.<Tab>:tabnew +menutrans &New<Tab>:enew &Nova<Tab>:enew +menutrans &Close<Tab>:close &Fermi<Tab>:close +" -SEP1- +menutrans &Save<Tab>:w &Konservi<Tab>:w +menutrans Save\ &As\.\.\.<Tab>:sav Konservi\ ki&el\.\.\.<Tab>:sav +" -SEP2- +menutrans Split\ &Diff\ with\.\.\. Kom&pari\ divide\.\.\. +menutrans Split\ Patched\ &By\.\.\. &Testi\ flikaĵon\.\.\. +" -SEP3- +menutrans &Print &Presi +" -SEP4- +menutrans Sa&ve-Exit<Tab>:wqa Konservi\ kaj\ eli&ri<Tab>:wqa +menutrans E&xit<Tab>:qa &Eliri<Tab>:qa + + +menutrans &Edit &Redakti + +menutrans &Undo<Tab>u &Malfari<Tab>u +menutrans &Redo<Tab>^R Re&fari<Tab>^R +menutrans Rep&eat<Tab>\. R&ipeti<Tab>\. +" -SEP1- +menutrans Cu&t<Tab>"+x &Tondi<Tab>"+x +menutrans &Copy<Tab>"+y &Kopii<Tab>"+y +menutrans &Paste<Tab>"+gP Al&glui<Tab>"+gP +menutrans Put\ &Before<Tab>[p Enmeti\ &antaŭ<Tab>[p +menutrans Put\ &After<Tab>]p Enmeti\ ma&lantaŭ<Tab>]p +menutrans &Delete<Tab>x &Forviŝi<Tab>x +menutrans &Select\ All<Tab>ggVG A&partigi\ ĉion<Tab>ggVG +" -SEP2- +menutrans &Find\.\.\. &Trovi\.\.\. +menutrans Find\ and\ Rep&lace\.\.\. Trovi\ kaj\ a&nstataŭigi\.\.\. +menutrans &Find<Tab>/ &Trovi<Tab>/ +menutrans Find\ and\ Rep&lace<Tab>:%s Trovi\ kaj\ ansta&taŭigi<Tab>:%s +menutrans Find\ and\ Rep&lace<Tab>:s Trovi\ kaj\ ansta&taŭigi<Tab>:s +" -SEP3- +menutrans Settings\ &Window Fenestro\ de\ a&gordoj +menutrans Startup\ &Settings Agordoj\ de\ prav&aloroj +menutrans &Global\ Settings Mallo&kaj\ agordoj + +menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! Baskuli\ emfazon\ de\ ŝa&blono<Tab>:set\ hls! +menutrans Toggle\ &Ignore-case<Tab>:set\ ic! Baskuli\ kongruon\ de\ uskle&co<Tab>:set\ ic! +menutrans Toggle\ &Showmatch<Tab>:set\ sm! Baskuli\ kongruon\ de\ kram&poj<Tab>:set\ sm! + +menutrans &Context\ lines Linioj\ de\ &kunteksto + +menutrans &Virtual\ Edit &Virtuala\ redakto +menutrans Never &Neniam +menutrans Block\ Selection &Bloka\ apartigo +menutrans Insert\ mode &Enmeta\ reĝimo +menutrans Block\ and\ Insert Blo&ko\ kaj\ enmeto +menutrans Always Ĉia&m + +menutrans Toggle\ Insert\ &Mode<Tab>:set\ im! Baskuli\ &enmetan\ reĝimon<Tab>:set\ im! +menutrans Toggle\ Vi\ C&ompatible<Tab>:set\ cp! Baskuli\ kongruon\ kun\ &Vi<Tab>:set\ cp! +menutrans Search\ &Path\.\.\. &Serĉvojo\ de\ dosieroj\.\.\. +menutrans Ta&g\ Files\.\.\. Dosiero\ de\ etike&doj\.\.\. +" -SEP1- +menutrans Toggle\ &Toolbar Baskuli\ &ilobreton +menutrans Toggle\ &Bottom\ Scrollbar Baskuli\ su&ban\ rulumskalon +menutrans Toggle\ &Left\ Scrollbar Baskuli\ &maldekstran\ rulumskalon +menutrans Toggle\ &Right\ Scrollbar Baskuli\ &dekstran\ rulumskalon + +let g:menutrans_path_dialog = "Tajpu la vojon de serĉo de dosieroj.\nDisigu la dosierujojn per komoj." +let g:menutrans_tags_dialog = "Tajpu la nomojn de dosieroj de etikedoj.\nDisigu la nomojn per komoj." + +menutrans F&ile\ Settings A&gordoj\ de\ dosiero + +menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! Baskuli\ &numerojn\ de\ linioj<Tab>:set\ nu! +menutrans Toggle\ &List\ Mode<Tab>:set\ list! Baskuli\ &listan\ reĝimon<Tab>:set\ list! +menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap! Baskuli\ linifal&don<Tab>:set\ wrap! +menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr! Baskuli\ &vortofaldon<Tab>:set\ lbr! +menutrans Toggle\ &expand-tab<Tab>:set\ et! Baskuli\ ekspansio\ de\ &taboj<Tab>:set\ et! +menutrans Toggle\ &auto-indent<Tab>:set\ ai! Baskuli\ &aŭtokrommarĝenon<Tab>:set\ ai! +menutrans Toggle\ &C-indenting<Tab>:set\ cin! Baskuli\ &C-krommarĝenon<Tab>:set\ cin! +" -SEP2- +menutrans &Shiftwidth &Larĝo\ de\ krommarĝeno +menutrans Soft\ &Tabstop &Malm&olaj\ taboj +menutrans Te&xt\ Width\.\.\. Larĝo\ de\ te&ksto\.\.\. +menutrans &File\ Format\.\.\. &Formato\ de\ &dosiero\.\.\. + +let g:menutrans_textwidth_dialog = "Tajpu la novan larĝon de teksto\n(0 por malŝalti formatigon)." +let g:menutrans_fileformat_dialog = "Elektu la formaton de la skribonta dosiero." +let g:menutrans_fileformat_choices = " &Unikso \n &Dos \n &Mak \n &Rezigni " + +menutrans C&olor\ Scheme &Koloraro +menutrans &Keymap Klavo&mapo +menutrans None (nenio) +menutrans Select\ Fo&nt\.\.\. Elekti\ &tiparon\.\.\. + + +menutrans &Tools &Iloj + +menutrans &Jump\ to\ this\ tag<Tab>g^] &Aliri\ al\ tiu\ etikedo<Tab>g^] +menutrans Jump\ &back<Tab>^T &Retroiri<Tab>^T +menutrans Build\ &Tags\ File Krei\ &etikedan\ dosieron + +" -SEP1- +menutrans &Spelling &Literumilo +menutrans &Spell\ Check\ On Ŝal&ti\ literumilon +menutrans Spell\ Check\ &Off &Malŝalti\ literumilon +menutrans To\ &Next\ error<Tab>]s Al\ sek&vonta\ eraro<Tab>]s +menutrans To\ &Previous\ error<Tab>[s Al\ an&taŭa\ eraro<Tab>[s +menutrans Suggest\ &Corrections<Tab>z= &Sugesti\ korektojn<Tab>z= +menutrans &Repeat\ correction<Tab>:spellrepall R&ipeti\ korekton<Tab>:spellrepall + +menutrans Set\ language\ to\ "en" Angla +menutrans Set\ language\ to\ "en_au" Angla\ (Aŭstralio) +menutrans Set\ language\ to\ "en_ca" Angla\ (Kanado) +menutrans Set\ language\ to\ "en_gb" Angla\ (Britio) +menutrans Set\ language\ to\ "en_nz" Angla\ (Novzelando) +menutrans Set\ language\ to\ "en_us" Angla\ (Usono) + +menutrans &Find\ More\ Languages &Trovi\ pli\ da\ lingvoj + + +menutrans &Folding &Faldo + +menutrans &Enable/Disable\ folds<Tab>zi &Baskuli\ faldojn<Tab>zi +menutrans &View\ Cursor\ Line<Tab>zv &Vidi\ linion\ de\ kursoro<Tab>zv +menutrans Vie&w\ Cursor\ Line\ only<Tab>zMzx Vidi\ nur\ &kursoran\ linion<Tab>zMzx +menutrans C&lose\ more\ folds<Tab>zm F&ermi\ pli\ da\ faldoj<Tab>zm +menutrans &Close\ all\ folds<Tab>zM Fermi\ ĉiu&jn\ faldojn<Tab>zM +menutrans O&pen\ more\ folds<Tab>zr &Malfermi\ pli\ da\ faldoj<Tab>zr +menutrans &Open\ all\ folds<Tab>zR Malfermi\ ĉiuj&n\ faldojn<Tab>zR +" -SEP1- +menutrans Fold\ Met&hod &Metodo\ de\ faldo + +menutrans M&anual &Permana\ metodo +menutrans I&ndent &Krommarĝeno +menutrans E&xpression &Esprimo +menutrans S&yntax &Sintakso +menutrans &Diff &Komparo +menutrans Ma&rker Ma&rko + +menutrans Create\ &Fold<Tab>zf &Krei\ faldon<Tab>zf +menutrans &Delete\ Fold<Tab>zd Forv&iŝi\ faldon<Tab>zd +menutrans Delete\ &All\ Folds<Tab>zD Forviŝi\ ĉiu&jn\ faldojn<Tab>zD +" -SEP2- +menutrans Fold\ col&umn\ width &Larĝo\ de\ falda\ kolumno + +menutrans &Diff Kom&pari + +menutrans &Update Ĝis&datigi +menutrans &Get\ Block &Akiri\ blokon +menutrans &Put\ Block Enme&ti\ blokon + +" -SEP2- +menutrans &Make<Tab>:make Lanĉi\ ma&ke<Tab>:make +menutrans &List\ Errors<Tab>:cl Listigi\ &erarojn<Tab>:cl +menutrans L&ist\ Messages<Tab>:cl! Listigi\ &mesaĝojn<Tab>:cl! +menutrans &Next\ Error<Tab>:cn Sek&vanta\ eraro<Tab>:cn +menutrans &Previous\ Error<Tab>:cp An&taŭa\ eraro<Tab>:cp +menutrans &Older\ List<Tab>:cold Pli\ ma&lnova\ listo<Tab>:cold +menutrans N&ewer\ List<Tab>:cnew Pli\ nova\ listo<Tab>:cnew + +menutrans Error\ &Window &Fenestro\ de\ eraroj + +menutrans &Update<Tab>:cwin Ĝis&datigi<Tab>:cwin +menutrans &Open<Tab>:copen &Malfermi<Tab>:copen +menutrans &Close<Tab>:cclose &Fermi<Tab>:cclose + +" -SEP3- +menutrans &Convert\ to\ HEX<Tab>:%!xxd Konverti\ al\ deksesuma<Tab>:%!xxd +menutrans Conve&rt\ back<Tab>:%!xxd\ -r Retrokonverti<Tab>:%!xxd\ -r + +menutrans Se&T\ Compiler &Elekti\ kompililon + + +menutrans &Buffers &Bufroj + +menutrans Dummy Fikcia +menutrans &Refresh\ menu Ĝis&datigi\ menuon +menutrans &Delete &Forviŝi +menutrans &Alternate &Alterni +menutrans &Next &Sekvanta +menutrans &Previous An&taŭa +" -SEP- + +menutrans &others a&liaj +menutrans &u-z &u-z +let g:menutrans_no_file = "[Neniu dosiero]" + + +menutrans &Window Fene&stro + +menutrans &New<Tab>^Wn &Nova<Tab>^Wn +menutrans S&plit<Tab>^Ws Di&vidi<Tab>^Ws +menutrans Sp&lit\ To\ #<Tab>^W^^ Dividi\ &al\ #<Tab>^W^^ +menutrans Split\ &Vertically<Tab>^Wv Dividi\ &vertikale<Tab>^Wv +menutrans Split\ File\ E&xplorer Dividi\ &dosierfoliumilo +" -SEP1- +menutrans &Close<Tab>^Wc &Fermi<Tab>^Wc +menutrans Close\ &Other(s)<Tab>^Wo Fermi\ &aliajn<Tab>^Wo +" -SEP2- +menutrans Move\ &To &Movu\ al + +menutrans &Top<Tab>^WK Su&pro<Tab>^WK +menutrans &Bottom<Tab>^WJ Su&bo<Tab>^WJ +menutrans &Left\ side<Tab>^WH Maldekstra\ &flanko<Tab>^WH +menutrans &Right\ side<Tab>^WL Dekstra\ f&lanko<Tab>^WL + +menutrans Rotate\ &Up<Tab>^WR Rota&cii\ supre<Tab>^WR +menutrans Rotate\ &Down<Tab>^Wr Rotac&ii\ sube<Tab>^Wr +" -SEP3- +menutrans &Equal\ Size<Tab>^W= &Egala\ grando<Tab>^W= +menutrans &Max\ Height<Tab>^W_ Ma&ksimuma\ alto<Tab>^W_ +menutrans M&in\ Height<Tab>^W1_ Mi&nimuma\ alto<Tab>^W1_ +menutrans Max\ &Width<Tab>^W\| Maksimuma\ &larĝo<Tab>^W\| +menutrans Min\ Widt&h<Tab>^W1\| Minimuma\ lar&ĝo<Tab>^W1\| + + +" PopUp + +menutrans &Undo &Malfari +" -SEP1- +menutrans Cu&t &Tondi +menutrans &Copy &Kopii +menutrans &Paste &Al&glui +" &Buffers.&Delete overwrites this one +menutrans &Delete &Forviŝi +" -SEP2- +menutrans Select\ Blockwise Apartigi\ &bloke +menutrans Select\ &Word Apartigi\ &vorton +menutrans Select\ &Line Apartigi\ &linion +menutrans Select\ &Block Apartigi\ blo&kon +menutrans Select\ &All Apartigi\ ĉi&on + + +" ToolBar + +menutrans Open Malfermi +menutrans Save Konservi +menutrans SaveAll Konservi\ ĉion +menutrans Print Presi +" -sep1- +menutrans Undo Rezigni +menutrans Redo Refari +" -sep2- +menutrans Cut Tondi +menutrans Copy Kopii +menutrans Paste Alglui +" -sep3- +menutrans Find Trovi +menutrans FindNext Trovi\ sekvanten +menutrans FindPrev Trovi\ antaŭen +menutrans Replace Anstataŭigi +" -sep4- +menutrans New Nova +menutrans WinSplit DividFen +menutrans WinMax MaksFen +menutrans WinMin MinFen +menutrans WinVSplit VDividFen +menutrans WinMaxWidth MaksLarĝFen +menutrans WinMinWidth MinLarĝFen +menutrans WinClose FermFen +" -sep5- +menutrans LoadSesn ŜargSeanc +menutrans SaveSesn KonsSeanc +menutrans RunScript LanĉSkript +" -sep6- +menutrans Make Make +menutrans RunCtags KreiEtik +menutrans TagJump IriAlEtik +" -sep7- +menutrans Help Helpo +menutrans FindHelp SerĉHelp + +fun! Do_toolbar_tmenu() + let did_toolbar_tmenu = 1 + tmenu ToolBar.Open Malfermi dosieron + tmenu ToolBar.Save Konservi aktualan dosieron + tmenu ToolBar.SaveAll Konservi ĉiujn dosierojn + tmenu ToolBar.Print Presi + tmenu ToolBar.Undo Rezigni + tmenu ToolBar.Redo Refari + tmenu ToolBar.Cut Tondi + tmenu ToolBar.Copy Kopii + tmenu ToolBar.Paste Alglui + if !has("gui_athena") + tmenu ToolBar.Find Trovi + tmenu ToolBar.FindNext Trovi sekvanten + tmenu ToolBar.FindPrev Trovi antaŭen + tmenu ToolBar.Replace Anstataŭigi + endif + if 0 " disabled; These are in the Windows menu + tmenu ToolBar.New Nova fenestro + tmenu ToolBar.WinSplit Dividi fenestron + tmenu ToolBar.WinMax Maksimumi fenestron + tmenu ToolBar.WinMin Minimumi fenestron + tmenu ToolBar.WinVSplit Dividi vertikale + tmenu ToolBar.WinMaxWidth Maksimumi larĝon de fenestro + tmenu ToolBar.WinMinWidth Minimumi larĝon de fenestro + tmenu ToolBar.WinClose Fermi fenestron + endif + tmenu ToolBar.LoadSesn Malfermi seancon + tmenu ToolBar.SaveSesn Konservi aktualan seancon + tmenu ToolBar.RunScript Ruli skripton Vim + tmenu ToolBar.Make Lanĉi make + tmenu ToolBar.RunCtags Krei etikedojn + tmenu ToolBar.TagJump Atingi tiun etikedon + tmenu ToolBar.Help Helpo de Vim + tmenu ToolBar.FindHelp Serĉo en helparo +endfun + + +menutrans &Syntax &Sintakso + +menutrans &Off &Malŝalti +menutrans &Manual &Permana +menutrans A&utomatic &Aŭtomata +menutrans on/off\ for\ &This\ file Ŝalti/Malŝalti\ por\ &tiu\ dosiero + +" The Start Of The Syntax Menu +menutrans ABC\ music\ notation ABC\ (muzika\ notacio) +menutrans AceDB\ model Modelo\ AceDB +menutrans Apache\ config Konfiguro\ de\ Apache +menutrans Apache-style\ config Konfiguro\ de\ stilo\ Apache +menutrans ASP\ with\ VBScript ASP\ kun\ VBScript +menutrans ASP\ with\ Perl ASP\ kun\ Perl +menutrans Assembly Asemblilo +menutrans BC\ calculator Kalkulilo\ BC +menutrans BDF\ font Tiparo\ BDF +menutrans BIND\ config Konfiguro\ de\ BIND +menutrans BIND\ zone Zone\ BIND +menutrans Cascading\ Style\ Sheets CSS +menutrans Cfg\ Config\ file Konfigura\ dosiero\ \.cfg +menutrans Cheetah\ template Ŝablono\ Cheetah +menutrans commit\ file Dosiero\ commit +menutrans Generic\ Config\ file Dosiero\ de\ ĝenerala\ konfiguro +menutrans Digital\ Command\ Lang DCL +menutrans DNS/BIND\ zone Regiono\ BIND/DNS +menutrans Dylan\ interface Interfaco\ Dylan +menutrans Dylan\ lid Dylan\ lid +menutrans Elm\ filter\ rules Reguloj\ de\ filtrado\ Elm +menutrans ERicsson\ LANGuage Erlang\ (Lingvo\ de\ Ericsson) +menutrans Essbase\ script Skripto\ Essbase +menutrans Eterm\ config Konfiguro\ de\ Eterm +menutrans Exim\ conf Konfiguro\ de\ Exim +menutrans Fvwm\ configuration Konfiguro\ de\ Fvwm +menutrans Fvwm2\ configuration Konfiguro\ de\ Fvwm2 +menutrans Fvwm2\ configuration\ with\ M4 Konfiguro\ de\ Fvwm2\ kun\ M4 +menutrans GDB\ command\ file Komanda\ dosiero\ de\ GDB +menutrans HTML\ with\ M4 HTML\ kun\ M4 +menutrans Cheetah\ HTML\ template Ŝablono\ Cheetah\ HTML +menutrans IDL\Generic\ IDL Ĝenerala\ IDL\IDL +menutrans IDL\Microsoft\ IDL IDL\IDL\ Mikrosofto +menutrans Indent\ profile Profilo\ Indent +menutrans Inno\ setup Konfiguro\ de\ Inno +menutrans InstallShield\ script Skripto\ InstallShield +menutrans KDE\ script Skripto\ KDE +menutrans LFTP\ config Konfiguro\ de\ LFTP +menutrans LifeLines\ script Skripto\ LifeLines +menutrans Lynx\ Style Stilo\ de\ Lynx +menutrans Lynx\ config Konfiguro\ de\ Lynx +menutrans Man\ page Manlibra\ paĝo +menutrans MEL\ (for\ Maya) MEL\ (por\ Maya) +menutrans 4DOS\ \.bat\ file Dosiero\ \.bat\ 4DOS +menutrans \.bat\/\.cmd\ file Dosiero\ \.bat\/\.cmd +menutrans \.ini\ file Dosiero\ \.ini +menutrans Module\ Definition Difino\ de\ modulo +menutrans Registry Registraro +menutrans Resource\ file Dosiero\ de\ rimedoj +menutrans Novell\ NCF\ batch Staplo\ Novell\ NCF +menutrans NSIS\ script Skripto\ NSIS +menutrans Oracle\ config Konfiguro\ de\ Oracle +menutrans Palm\ resource\ compiler Tradukilo\ de\ rimedoj\ Palm +menutrans PHP\ 3-4 PHP\ 3\ et\ 4 +menutrans Postfix\ main\ config Ĉefa\ konfiguro\ de\ Postfix +menutrans Povray\ scene\ descr Scenejo\ Povray +menutrans Povray\ configuration Konfiguro\ de\ Povray +menutrans Purify\ log Protokolo\ de\ Purify +menutrans Readline\ config Konfiguro\ de\ Readline +menutrans RCS\ log\ output Protokola\ eligo\ de\ RCS +menutrans RCS\ file Dosiero\ RCS +menutrans RockLinux\ package\ desc\. Priskribo\ de\ pakaĵoj\ RockLinux +menutrans Samba\ config Konfiguro\ de\ Samba +menutrans SGML\ catalog Katalogo\ SGML +menutrans SGML\ DTD DTD\ SGML +menutrans SGML\ Declaration Deklaracio\ SGML +menutrans Shell\ script Skripto-ŝelo +menutrans sh\ and\ ksh sh\ kaj\ ksh +menutrans Sinda\ compare Komparo\ Sinda +menutrans Sinda\ input Enigo\ Sinda +menutrans Sinda\ output Eligo\ Sinda +menutrans SKILL\ for\ Diva SKILL\ por\ Diva +menutrans Smarty\ Templates Ŝablono\ Smarty +menutrans SNNS\ network Reto\ SNNS +menutrans SNNS\ pattern Ŝablono\ SNNS +menutrans SNNS\ result Rezulto\ SNNS +menutrans Snort\ Configuration Konfiguro\ de\ Snort +menutrans Squid\ config Konfiguro\ de\ Squid +menutrans Subversion\ commit Commit\ Subversion +menutrans TAK\ compare Komparo\ TAK +menutrans TAK\ input Enigo\ TAK +menutrans TAK\ output Eligo\ TAK +menutrans TeX\ configuration Konfiguro\ de\ TeX +menutrans TF\ mud\ client TF\ (client\ MUD) +menutrans Tidy\ configuration Konfiguro\ de\ Tidy +menutrans Trasys\ input Enigo\ Trasys +menutrans Command\ Line Komanda\ linio +menutrans Geometry Geometrio +menutrans Optics Optiko +menutrans Vim\ help\ file Helpa\ dosiero\ de\ Vim +menutrans Vim\ script Skripto\ Vim +menutrans Viminfo\ file Dosiero\ Viminfo +menutrans Virata\ config Konfiguro\ de\ Virata +menutrans Wget\ config Konfiguro\ de\ wget +menutrans Whitespace\ (add) Spacetoj +menutrans WildPackets\ EtherPeek\ Decoder Malkodilo\ WildPackets\ EtherPeek +menutrans X\ resources Rimedoj\ X +menutrans XXD\ hex\ dump Eligo\ deksesuma\.\ de\ xxd +menutrans XFree86\ Config Konfiguro\ de\ XFree86 +" The End Of The Syntax Menu + +menutrans &Show\ filetypes\ in\ menu &Montri\ dosiertipojn\ en\ menuo +" -SEP1- +menutrans Set\ '&syntax'\ only Ŝalti\ nur\ '&syntax' +menutrans Set\ '&filetype'\ too Ŝalti\ ankaŭ\ '&filetype' +menutrans &Off M&alŝaltita +" -SEP3- +menutrans Co&lor\ test Testo\ de\ &koloroj +menutrans &Highlight\ test Testo\ de\ &emfazo +menutrans &Convert\ to\ HTML Konverti\ al\ &HTML
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/lang/menu_eo_eo.utf-8.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,3 @@ +" Menu Translations: Esperanto for UTF-8 encoding + +source <sfile>:p:h/menu_eo.utf-8.vim
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/lang/menu_eo_xx.utf-8.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,3 @@ +" Menu Translations: Esperanto for UTF-8 encoding + +source <sfile>:p:h/menu_eo.utf-8.vim
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/lang/menu_fi.latin1.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,3 @@ +" Menu Translations: Finnish for latin 1 encoding + +source <sfile>:p:h/menu_fi_fi.latin1.vim
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/lang/menu_fi.utf-8.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,3 @@ +" Menu Translations: Finnish for UTF-8 encoding + +source <sfile>:p:h/menu_fi_fi.latin1.vim
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/lang/menu_fi_fi.latin1.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,473 @@ +" Menu Translations: Finnish +" Maintainer: Flammie Pirinen <flammie@iki.fi> +" Last Change: 2007 Sep 04 + +" Quit when menu translations have already been done. +if exists("did_menu_trans") + finish +endif +let did_menu_trans = 1 + +" Translations should be in latin1, if it requires latin9 or even unicode, +" change this: +if &enc != "cp1252" && &enc != "iso-8859-15" && &enc != "iso-8859-1" + scriptencoding latin1 +endif + +" Accels: TMYSPIO +menutrans &File &Tiedosto +" Accels: AJTUSNIDPOE +menutrans &Open\.\.\.<Tab>:e &Avaa\.\.\.<Tab>:e +menutrans Sp&lit-Open\.\.\.<Tab>:sp Avaa\ &jaettuna\.\.\.<Tab>:sp +menutrans Open\ Tab\.\.\.<Tab>:tabnew Avaa\ &tabissa\.\.\.<Tab>:tabnew +menutrans &New<Tab>:enew &Uusi<Tab>:enew +menutrans &Close<Tab>:close &Sulje<Tab>:close +" -SEP1- +menutrans &Save<Tab>:w Talle&nna<Tab>:w +menutrans Save\ &As\.\.\.<Tab>:sav Tallenna\ n&imell�\.\.\.<Tab>:sav +" -SEP2- +menutrans Split\ &Diff\ with\.\.\. Jaa\ &diffill�\.\.\. +menutrans Split\ Patched\ &By\.\.\. Jaa\ &patchilla\.\.\. +" -SEP3- +menutrans &Print Tul&osta +" -SEP4- +menutrans Sa&ve-Exit<Tab>:wqa Tall&enna\ ja\ lopeta<Tab>:wqa +menutrans E&xit<Tab>:qa &Lopeta<Tab>:qa + + +menutrans &Edit &Muokkaa +" Accels: KPTLOIEJSAHRUYKVNF +menutrans &Undo<Tab>u &Kumoa<Tab>u +menutrans &Redo<Tab>^R &Palauta<Tab>^R +menutrans Rep&eat<Tab>\. &Toista<Tab>\. +" -SEP1- +menutrans Cu&t<Tab>"+x &Leikkaa<Tab>"+x +menutrans &Copy<Tab>"+y K&opioi<Tab>"+y +menutrans &Paste<Tab>"+gP L&iit�<Tab>"+gP +menutrans Put\ &Before<Tab>[p Lis��\ &ennen<Tab>[p +menutrans Put\ &After<Tab>]p Lis��\ &j�lkeen<Tab>]p +menutrans &Delete<Tab>x Poi&sta<Tab>x +menutrans &Select\ All<Tab>ggVG V&alitse\ kaikki<Tab>ggVG +" -SEP2- +menutrans &Find\.\.\. &Hae\.\.\. +menutrans Find\ and\ Rep&lace\.\.\. Hae\ ja\ ko&rvaa\.\.\. +menutrans &Find<Tab>/ &Hae<Tab>/ +menutrans Find\ and\ Rep&lace<Tab>:%s Hae\ ja\ ko&rvaa<Tab>:%s +menutrans Find\ and\ Rep&lace<Tab>:s Hae\ ja\ ko&rvaa<Tab>:s +" -SEP3- +menutrans Settings\ &Window Aset&usikkuna +menutrans Startup\ &Settings &K�ynnistysasetukset +menutrans &Global\ Settings &Yleiset\ asetukset +" Submenu: +" Accels: KOSHVYIATLEPR +menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! &Korostus<Tab>:set\ hls! +menutrans Toggle\ &Ignore-case<Tab>:set\ ic! &Ohita\ kirjaintaso<Tab>:set\ ic! +menutrans Toggle\ &Showmatch<Tab>:set\ sm! &Suljekorostus<Tab>:set\ sm! + +menutrans &Context\ lines &Huomioitavat\ kontekstirivit +" Subsubmenu: +" Accels: ELSOA +menutrans &Virtual\ Edit &Virtuaalimuokkaus +menutrans Never &Ei koskaan +menutrans Block\ Selection &Lohkovalinta +menutrans Insert\ mode &Sy�tt�tila +menutrans Block\ and\ Insert L&ohkosy�tt�tila +menutrans Always &Aina + +menutrans Toggle\ Insert\ &Mode<Tab>:set\ im! S&y�tt�tila<Tab>:set\ im! +menutrans Toggle\ Vi\ C&ompatible<Tab>:set\ cp! V&i-tila<Tab>:set\ cp! +menutrans Search\ &Path\.\.\. H&akupolku\.\.\. +menutrans Ta&g\ Files\.\.\. &T�gitiedostot\.\.\. +" -SEP1- +menutrans Toggle\ &Toolbar Ty�ka&lupalkki +menutrans Toggle\ &Bottom\ Scrollbar Vaakavi&erityspalkki +menutrans Toggle\ &Left\ Scrollbar Vasen\ &pystyvierityspalkki +menutrans Toggle\ &Right\ Scrollbar Oikea\ pystyvie&rityspalkki + +let g:menutrans_path_dialog = "Anna tiedostojen hakupolku.\nErota hakemistot pilkuin." +let g:menutrans_tags_dialog = "Anna t�gitiedostojen nimet.\nErota tidostot pilkuin." + +menutrans F&ile\ Settings Tiedostoasetu&kset +" Submenu: +" Accels: NLRSTACIBEM +menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! Rivi&numerointi<Tab>:set\ nu! +menutrans Toggle\ &List\ Mode<Tab>:set\ list! &Listaustila<Tab>:set\ list! +menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap! &Rivitys<Tab>:set\ wrap! +menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr! &Sanoittainen rivitys<Tab>:set\ lbr! +menutrans Toggle\ &expand-tab<Tab>:set\ et! Muuta\ &tabit\ v�leiksi<Tab>:set\ et! +menutrans Toggle\ &auto-indent<Tab>:set\ ai! &Automaattinen\ sisennys<Tab>:set\ ai! +menutrans Toggle\ &C-indenting<Tab>:set\ cin! &C-kielen\ sisennys<Tab>:set\ cin! +" -SEP2- +menutrans &Shiftwidth S&isennysleveys +menutrans Soft\ &Tabstop N�enn�ista&bulointi +menutrans Te&xt\ Width\.\.\. Tekstinl&eveys\.\.\. +menutrans &File\ Format\.\.\. Tiedosto&muoto\.\.\. + +let g:menutrans_textwidth_dialog = "Anna uusi tekstin leveys\n(0 poistaa k�yt�st�)" +let g:menutrans_fileformat_dialog = "Anaa tiedoston kirjoitusmuoto." +let g:menutrans_fileformat_choices = " &Unix \n &Dos \n &Mac \n &Peru " + +menutrans C&olor\ Scheme &V�riteema +menutrans &Keymap &N�pp�inkartta +menutrans None Ei mik��n +menutrans Select\ Fo&nt\.\.\. Valitse\ &fontti\.\.\. + + +menutrans &Tools T&y�kalut +" Accels: ___OTDM__ +menutrans &Jump\ to\ this\ tag<Tab>g^] Siirry\ t�giin<Tab>g^] +menutrans Jump\ &back<Tab>^T Siirry\ takaisin<Tab>^T +menutrans Build\ &Tags\ File Luo\ t�gitiedosto + +" -SEP1- +menutrans &Spelling &Oikeinkirjoitus +" Submenu: +" Accels: OSEKT +menutrans &Spell\ Check\ On &Oikaisuluku\ p��lle +menutrans Spell\ Check\ &Off &Oikaisuluku\ pois\ p��lt� +menutrans To\ &Next\ error<Tab>]s &Seuraavaan\ virheeseen<Tab>]s +menutrans To\ &Previous\ error<Tab>[s &Edelliseen\ virheeseen<Tab>[s +menutrans Suggest\ &Corrections<Tab>z= Ehdota\ &korjausta<Tab>z= +menutrans &Repeat\ correction<Tab>:spellrepall &Toista\ korjaus<Tab>:spellrepall + +menutrans Set\ language\ to\ "en" Aseta\ kieleksi\ en +menutrans Set\ language\ to\ "en_au" Aseta\ kieleksi\ en_au +menutrans Set\ language\ to\ "en_ca" Aseta\ kieleksi\ en_ca +menutrans Set\ language\ to\ "en_gb" Aseta\ kieleksi\ en_gb +menutrans Set\ language\ to\ "en_nz" Aseta\ kieleksi\ en_nz +menutrans Set\ language\ to\ "en_us" Aseta\ kieleksi\ en_us + +menutrans &Find\ More\ Languages Hae\ lis��\ kieli� + + + +menutrans &Folding &Taitokset +" Accels: TNVSAPEOKL +menutrans &Enable/Disable\ folds<Tab>zi &Taitokset<Tab>zi +menutrans &View\ Cursor\ Line<Tab>zv &N�yt�\ kursorin\ rivi<Tab>zv +menutrans Vie&w\ Cursor\ Line\ only<Tab>zMzx N�yt�\ &vain\ kursorin\ rivi<Tab>zMzx +menutrans C&lose\ more\ folds<Tab>zm &Sulje\ lis��\ taitoksia<Tab>zm +menutrans &Close\ all\ folds<Tab>zM &Sulje\ kaikki\ taitokset<Tab>zM +menutrans O&pen\ more\ folds<Tab>zr &Avaa\ lis��\ taitoksia<Tab>zr +menutrans &Open\ all\ folds<Tab>zR &Avaa\ kaikki\ taitokset<Tab>zR +" -SEP1- +menutrans Fold\ Met&hod Taitteluta&pa +" Submenu: +" Accels: MILSDM +menutrans M&anual &Manuaalinen +menutrans I&ndent S&isennys +menutrans E&xpression I&lmaus +menutrans S&yntax &Syntaksi +menutrans &Diff &Diff +menutrans Ma&rker &Merkit + +menutrans Create\ &Fold<Tab>zf T&ee\ taitos<Tab>zf +menutrans &Delete\ Fold<Tab>zd P&oista\ taitos<Tab>zd +menutrans Delete\ &All\ Folds<Tab>zD Poista\ &kaikki\ taitokset<Tab>zD +" -SEP2- +menutrans Fold\ col&umn\ width Taitossarakkeen\ &leveys + +menutrans &Diff &Diffit +" Submenu: +" Accels: PHL +menutrans &Update &P�ivit� +menutrans &Get\ Block &Hae\ lohko +menutrans &Put\ Block &Lis��\ lohko + +" -SEP2- +menutrans &Make<Tab>:make &Make<Tab>:make +menutrans &List\ Errors<Tab>:cl Virheluettelo<Tab>:cl +menutrans L&ist\ Messages<Tab>:cl! Virheviestit<Tab>:cl! +menutrans &Next\ Error<Tab>:cn Seuraava\ virhe<Tab>:cn +menutrans &Previous\ Error<Tab>:cp Edellinen\ virhe<Tab>:cp +menutrans &Older\ List<Tab>:cold Edellinen\ lista<Tab>:cold +menutrans N&ewer\ List<Tab>:cnew Seuraava\ lista<Tab>:cnew + +menutrans Error\ &Window Virheikkuna +" Submenu: +" Accels: PAS +menutrans &Update<Tab>:cwin &P�ivit�<Tab>:cwin +menutrans &Open<Tab>:copen &Avaa<Tab>:copen +menutrans &Close<Tab>:cclose &Sulje<Tab>:cclose + +menutrans Se&T\ Compiler Ase&ta\ k��nt�j� +" -SEP3- +menutrans &Convert\ to\ HEX<Tab>:%!xxd Muunna\ heksoiksi<Tab>:%!xxd +menutrans Conve&rt\ back<Tab>:%!xxd\ -r Muunna\ takaisin<Tab>:%!xxd\ -r + + +menutrans &Syntax &Syntaksi +" Accels: NSFPMAT +menutrans &Show\ filetypes\ in\ menu &N�yt�\ tiedostotyypit\ valikossa +" -SEP1- +menutrans Set\ '&syntax'\ only Aseta\ vain\ &syntax +menutrans Set\ '&filetype'\ too Aseta\ my�s\ &filetype +menutrans &Off &Pois\ p��lt� +" -SEP3- +menutrans Co&lor\ test Testaa\ v�rit +menutrans &Highlight\ test Testaa\ korostukset +menutrans &Convert\ to\ HTML Muunna\ HTML:ksi +" -SEP2- +menutrans &Off &Pois\ p��lt� +menutrans &Manual &Manuaalinen +menutrans A&utomatic &Automaattinen +menutrans on/off\ for\ &This\ file Kytke\ &t�lle\ tiedostolle + +" The Start Of The Syntax Menu +menutrans ABC\ music\ notation ABC\ (notation\ musicale) +menutrans AceDB\ model Mod�le\ AceDB +menutrans Apache\ config Config\.\ Apache +menutrans Apache-style\ config Config\.\ style\ Apache +menutrans ASP\ with\ VBScript ASP\ avec\ VBScript +menutrans ASP\ with\ Perl ASP\ avec\ Perl +menutrans Assembly Assembleur +menutrans BC\ calculator Calculateur\ BC +menutrans BDF\ font Fonte\ BDF +menutrans BIND\ config Config\.\ BIND +menutrans BIND\ zone Zone\ BIND +menutrans Cascading\ Style\ Sheets Feuilles\ de\ style\ en\ cascade +menutrans Cfg\ Config\ file Fichier\ de\ config\.\ \.cfg +menutrans Cheetah\ template Patron\ Cheetah +menutrans commit\ file Fichier\ commit +menutrans Generic\ Config\ file Fichier\ de\ config\.\ g�n�rique +menutrans Digital\ Command\ Lang DCL +menutrans DNS/BIND\ zone Zone\ BIND/DNS +menutrans Dylan\ interface Interface +menutrans Dylan\ lid LID +menutrans Elm\ filter\ rules R�gles\ de\ filtrage\ Elm +menutrans ERicsson\ LANGuage Erlang\ (langage\ Ericsson) +menutrans Essbase\ script Script\ Essbase +menutrans Eterm\ config Config\.\ Eterm +menutrans Exim\ conf Config\.\ Exim +menutrans Fvwm\ configuration Config\.\ Fvwm +menutrans Fvwm2\ configuration Config\.\ Fvwm2 +menutrans Fvwm2\ configuration\ with\ M4 Config\.\ Fvwm2\ avec\ M4 +menutrans GDB\ command\ file Fichier\ de\ commandes\ GDB +menutrans HTML\ with\ M4 HTML\ avec\ M4 +menutrans Cheetah\ HTML\ template Patron\ Cheetah\ pour\ HTML +menutrans IDL\Generic\ IDL IDL\IDL\ g�n�rique +menutrans IDL\Microsoft\ IDL IDL\IDL\ Microsoft +menutrans Indent\ profile Profil\ Indent +menutrans Inno\ setup Config\.\ Inno +menutrans InstallShield\ script Script\ InstallShield +menutrans KDE\ script Script\ KDE +menutrans LFTP\ config Config\.\ LFTP +menutrans LifeLines\ script Script\ LifeLines +menutrans Lynx\ Style Style\ Lynx +menutrans Lynx\ config Config\.\ Lynx +menutrans Man\ page Page\ Man +menutrans MEL\ (for\ Maya) MEL\ (pour\ Maya) +menutrans 4DOS\ \.bat\ file Fichier\ \.bat\ 4DOS +menutrans \.bat\/\.cmd\ file Fichier\ \.bat\ /\ \.cmd +menutrans \.ini\ file Fichier\ \.ini +menutrans Module\ Definition D�finition\ de\ module +menutrans Registry Extrait\ du\ registre +menutrans Resource\ file Fichier\ de\ ressources +menutrans Novell\ NCF\ batch Batch\ Novell\ NCF +menutrans NSIS\ script Script\ NSIS +menutrans Oracle\ config Config\.\ Oracle +menutrans Palm\ resource\ compiler Compil\.\ de\ resources\ Palm +menutrans PHP\ 3-4 PHP\ 3\ et\ 4 +menutrans Postfix\ main\ config Config\.\ Postfix +menutrans Povray\ scene\ descr Sc�ne\ Povray +menutrans Povray\ configuration Config\.\ Povray +menutrans Purify\ log Log\ Purify +menutrans Readline\ config Config\.\ Readline +menutrans RCS\ log\ output Log\ RCS +menutrans RCS\ file Fichier\ RCS +menutrans RockLinux\ package\ desc\. Desc\.\ pkg\.\ RockLinux +menutrans Samba\ config Config\.\ Samba +menutrans SGML\ catalog Catalogue\ SGML +menutrans SGML\ DTD DTD\ SGML +menutrans SGML\ Declaration D�claration\ SGML +menutrans Shell\ script Script\ shell +menutrans sh\ and\ ksh sh\ et\ ksh +menutrans Sinda\ compare Comparaison\ Sinda +menutrans Sinda\ input Entr�e\ Sinda +menutrans Sinda\ output Sortie\ Sinda +menutrans SKILL\ for\ Diva SKILL\ pour\ Diva +menutrans Smarty\ Templates Patrons\ Smarty +menutrans SNNS\ network R�seau\ SNNS +menutrans SNNS\ pattern Motif\ SNNS +menutrans SNNS\ result R�sultat\ SNNS +menutrans Snort\ Configuration Config\.\ Snort +menutrans Squid\ config Config\.\ Squid +menutrans Subversion\ commit Commit\ Subversion +menutrans TAK\ compare Comparaison\ TAK +menutrans TAK\ input Entr�e\ TAK +menutrans TAK\ output Sortie\ TAK +menutrans TeX\ configuration Config\.\ TeX +menutrans TF\ mud\ client TF\ (client\ MUD) +menutrans Tidy\ configuration Config\.\ Tidy +menutrans Trasys\ input Entr�e\ Trasys +menutrans Command\ Line Ligne\ de\ commande +menutrans Geometry G�om�trie +menutrans Optics Optiques +menutrans Vim\ help\ file Fichier\ d'aide\ Vim +menutrans Vim\ script Script\ Vim +menutrans Viminfo\ file Fichier\ Viminfo +menutrans Virata\ config Config\.\ Virata +menutrans Wget\ config Config\.\ wget +menutrans Whitespace\ (add) Espaces\ et\ tabulations +menutrans WildPackets\ EtherPeek\ Decoder D�codeur\ WildPackets\ EtherPeek +menutrans X\ resources Resources\ X +menutrans XXD\ hex\ dump Sortie\ hexa\.\ de\ xxd +menutrans XFree86\ Config Config\.\ XFree86 + +menutrans &Buffers &Puskurit +" Accels: VPASE +menutrans Dummy Dummy +menutrans &Refresh\ menu P�ivit�\ &valikko +menutrans &Delete &Poista +menutrans &Alternate V&aihda +menutrans &Next &Seuraava +menutrans &Previous &Edellinen +" -SEP- +" (Alphabet menus) +menutrans &others &muut +let g:menutrans_no_file = "[Ei tiedostoja]" + + +menutrans &Window &Ikkuna +" Accels: UJPTSMIYAKOL +menutrans &New<Tab>^Wn &Uusi\ ikkuna<Tab>^Wn +menutrans S&plit<Tab>^Ws &Jaa<Tab>^Ws +menutrans Sp&lit\ To\ #<Tab>^W^^ &Jaa\ #<Tab>^W^^ +menutrans Split\ &Vertically<Tab>^Wv Jaa\ &pystysuunnassa<Tab>^Wv +menutrans Split\ File\ E&xplorer Jaa\ &tiedostonhallinnalle +" -SEP1- +menutrans &Close<Tab>^Wc &Sulje<Tab>^Wc +menutrans Close\ &Other(s)<Tab>^Wo Sulje\ &muut<Tab>^Wo +" -SEP2- +menutrans Move\ &To S&iirr� +" Submenu: +" Accels: YAOV +menutrans &Top<Tab>^WK &Yl�s<Tab>^WK +menutrans &Bottom<Tab>^WJ &Alas<Tab>^WJ +menutrans &Left\ side<Tab>^WH &Oikealle<Tab>^WH +menutrans &Right\ side<Tab>^WL &Vasemmalle<Tab>^WL + +menutrans Rotate\ &Up<Tab>^WR Vaihda\ &ylemm�s<Tab>^WR +menutrans Rotate\ &Down<Tab>^Wr Vaihda\ &alemmas<Tab>^Wr +" -SEP3- +menutrans &Equal\ Size<Tab>^W= Saman\ &kokoisiksi<Tab>^W= +menutrans &Max\ Height<Tab>^W_ Enimm�isk&orkeuteen<Tab>^W_ +menutrans M&in\ Height<Tab>^W1_ V�himm�isk&orkeuteen<Tab>^W1_ +menutrans Max\ &Width<Tab>^W\| Enimm�is&leveyteen<Tab>^W\| +menutrans Min\ Widt&h<Tab>^W1\| V�himm�is&leveyteen<Tab>^W1\| + +" (Plugin menus here) +menutrans Plugin Liit�nn�iset + +menutrans &Help &Ohje +" Accels: YKUHTLROVI +menutrans &Overview<Tab><F1> &Yleiskatsaus<Tab><F1> +menutrans &User\ Manual &K�ytt�ohje +menutrans &How-to\ links K&UINKA-linkkej� +menutrans &Find\.\.\. &Hae\.\.\. +" -sep1- +menutrans &Credits &Tekij�t +menutrans Co&pying &Lisenssi +menutrans &Sponsor/Register Sponsoroi/&Rekister�i +menutrans O&rphans &Orvoista +" -sep2- +menutrans &Version &Versio +menutrans &About T&ietoja + +let g:menutrans_help_dialog = "Anna komento tai sana, jota haetaan ohjeesta.\n\nAloita i_:ll� sy�tt�tilan komentoja varten (esim. i_CTRL-X)\nAloita c_:ll� komentorivi� varten (esim. c_<Del>)\nKirjoita asetukset puolilainausmerkkeijin (esim. 'shiftwidth')" + + +" PopUp + +menutrans &Undo &Kumoa +" -SEP1- +menutrans Cu&t &Leikkaa +menutrans &Copy &Kopioi +menutrans &Paste L&iit� +" &Buffers.&Delete overwrites this one +menutrans &Delete &Poista +" -SEP2- +menutrans Select\ Blockwise Valitse\ lohkoittain +menutrans Select\ &Word Valitse\ &sana +menutrans Select\ &Line Valitse\ &rivi +menutrans Select\ &Block Valitse\ &lohko +menutrans Select\ &All Valitse\ &kaikki + + +" ToolBar + +menutrans Open Avaa +menutrans Save Tallenna +menutrans SaveAll TallennaKaikki +menutrans Print Tulosta +" -sep1- +menutrans Undo Kumoa +menutrans Redo Palauta +" -sep2- +menutrans Cut Leikkaa +menutrans Copy Kopioi +menutrans Paste Liit� +" -sep3- +menutrans Find Etsi +menutrans FindNext EtsiSeur +menutrans FindPrev EtsiEd +menutrans Replace Korvaa +" -sep4- +menutrans New Uusi +menutrans WinSplit JaaIkk +menutrans WinMax IkkMax +menutrans WinMin IkkMin +menutrans WinVSplit JaaIkkV +menutrans WinMaxWidth IkkMaxLev +menutrans WinMinWidth IkkMinLev +menutrans WinClose SuljeIkk +" -sep5- +menutrans LoadSesn AvaaSess +menutrans SaveSesn TallSess +menutrans RunScript AjaSkripti +" -sep6- +menutrans Make Make +menutrans RunCtags AjaCTags +menutrans TagJump TagHypp +" -sep7- +menutrans Help Ohje +menutrans FindHelp OhjeHaku + +fun! Do_toolbar_tmenu() + let did_toolbar_tmenu = 1 + tmenu ToolBar.Open Avaa tiedosto + tmenu ToolBar.Save Tallenna nykyinen tiedosto + tmenu ToolBar.SaveAll Tallenna kaikki tiedostot + tmenu ToolBar.Print Tulosta + tmenu ToolBar.Undo Kumoa + tmenu ToolBar.Redo Palauta + tmenu ToolBar.Cut Leikkaa + tmenu ToolBar.Copy Kopioi + tmenu ToolBar.Paste Liit� + if !has("gui_athena") + tmenu ToolBar.Find Hae + tmenu ToolBar.FindNext Hae seuraava + tmenu ToolBar.FindPrev Hae edellinen + tmenu ToolBar.Replace Korvaa + endif + if 0 " disabled; These are in the Windows menu + tmenu ToolBar.New Uusi ikkuna + tmenu ToolBar.WinSplit Jaa ikkuna + tmenu ToolBar.WinMax Maximiser fen�tre + tmenu ToolBar.WinMin Minimiser fen�tre + tmenu ToolBar.WinVSplit Fractionner verticalement + tmenu ToolBar.WinMaxWidth Maximiser largeur fen�tre + tmenu ToolBar.WinMinWidth Minimiser largeur fen�tre + tmenu ToolBar.WinClose Fermer fen�tre + endif + tmenu ToolBar.LoadSesn Avaa sessio + tmenu ToolBar.SaveSesn Tallenna nykyinen sessio + tmenu ToolBar.RunScript Lataa vim-skripti + tmenu ToolBar.Make Suorita make + tmenu ToolBar.RunCtags Suorita CTags + tmenu ToolBar.TagJump Hypp�� t�giin + tmenu ToolBar.Help Vimin ohje + tmenu ToolBar.FindHelp Etsi ohjeesta +endfun + +" vim: set fileencoding=latin1
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/lang/menu_fi_fi.utf-8.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,3 @@ +" Menu Translations: Finnish for UTF-8 encoding + +source <sfile>:p:h/menu_fi_fi.latin1.vim
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/lang/menu_finnish_finland.1252.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,3 @@ +" Menu Translations: Finnish for Windows CodePage 1252 encoding + +source <sfile>:p:h/menu_fi_fi.latin1.vim
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/syntax/cdrdaoconf.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,139 @@ +" Vim syntax file +" Language: cdrdao(1) configuration file +" Maintainer: Nikolai Weibull <now@bitwi.se> +" Latest Revision: 2007-09-02 + +if exists("b:current_syntax") + finish +endif + +let s:cpo_save = &cpo +set cpo&vim + +syn keyword cdrdaoconfTodo + \ TODO FIXME XXX NOTE + +syn match cdrdaoconfBegin + \ display + \ nextgroup=@cdrdaoconfKeyword,cdrdaoconfComment + \ '^' + +syn cluster cdrdaoconfKeyword + \ contains=cdrdaoconfIntegerKeyword, + \ cdrdaoconfDriverKeyword, + \ cdrdaoconfDeviceKeyword, + \ cdrdaoconfPathKeyword + +syn keyword cdrdaoconfIntegerKeyword + \ contained + \ nextgroup=cdrdaoconfIntegerDelimiter + \ write_speed + \ write_buffers + \ user_capacity + \ full_burn + \ read_speed + \ cddb_timeout + +syn keyword cdrdaoconfIntegerKeyword + \ contained + \ nextgroup=cdrdaoconfParanoiaModeDelimiter + \ read_paranoia_mode + +syn keyword cdrdaoconfDriverKeyword + \ contained + \ nextgroup=cdrdaoconfDriverDelimiter + \ write_driver + \ read_driver + +syn keyword cdrdaoconfDeviceKeyword + \ contained + \ nextgroup=cdrdaoconfDeviceDelimiter + \ write_device + \ read_device + +syn keyword cdrdaoconfPathKeyword + \ contained + \ nextgroup=cdrdaoconfPathDelimiter + \ cddb_directory + \ tmp_file_dir + +syn match cdrdaoconfIntegerDelimiter + \ contained + \ nextgroup=cdrdaoconfInteger + \ skipwhite + \ ':' + +syn match cdrdaoconfParanoiaModeDelimiter + \ contained + \ nextgroup=cdrdaoconfParanoiaMode + \ skipwhite + \ ':' + +syn match cdrdaoconfDriverDelimiter + \ contained + \ nextgroup=cdrdaoconfDriver + \ skipwhite + \ ':' + +syn match cdrdaoconfDeviceDelimiter + \ contained + \ nextgroup=cdrdaoconfDevice + \ skipwhite + \ ':' + +syn match cdrdaoconfPathDelimiter + \ contained + \ nextgroup=cdrdaoconfPath + \ skipwhite + \ ':' + +syn match cdrdaoconfInteger + \ contained + \ '\<\d\+\>' + +syn match cdrdaoParanoiaMode + \ contained + \ '[0123]' + +syn match cdrdaoconfDriver + \ contained + \ '\<\(cdd2600\|generic-mmc\%(-raw\)\=\|plextor\%(-scan\)\|ricoh-mp6200\|sony-cdu9\%(20\|48\)\|taiyo-yuden\|teac-cdr55\|toshiba\|yamaha-cdr10x\)\>' + +syn region cdrdaoconfDevice + \ contained + \ matchgroup=cdrdaoconfDevice + \ start=+"+ + \ end=+"+ + +syn region cdrdaoconfPath + \ contained + \ matchgroup=cdrdaoconfPath + \ start=+"+ + \ end=+"+ + +syn match cdrdaoconfComment + \ contains=cdrdaoconfTodo,@Spell + \ '^.*#.*$' + +hi def link cdrdaoconfTodo Todo +hi def link cdrdaoconfComment Comment +hi def link cdrdaoconfKeyword Keyword +hi def link cdrdaoconfIntegerKeyword cdrdaoconfKeyword +hi def link cdrdaoconfDriverKeyword cdrdaoconfKeyword +hi def link cdrdaoconfDeviceKeyword cdrdaoconfKeyword +hi def link cdrdaoconfPathKeyword cdrdaoconfKeyword +hi def link cdrdaoconfDelimiter Delimiter +hi def link cdrdaoconfIntegerDelimiter cdrdaoconfDelimiter +hi def link cdrdaoconfDriverDelimiter cdrdaoconfDelimiter +hi def link cdrdaoconfDeviceDelimiter cdrdaoconfDelimiter +hi def link cdrdaoconfPathDelimiter cdrdaoconfDelimiter +hi def link cdrdaoconfInteger Number +hi def link cdrdaoconfParanoiaMode Number +hi def link cdrdaoconfDriver Identifier +hi def link cdrdaoconfDevice cdrdaoconfPath +hi def link cdrdaoconfPath String + +let b:current_syntax = "cdrdaoconf" + +let &cpo = s:cpo_save +unlet s:cpo_save
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/syntax/coco.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,33 @@ +" Vim syntax file +" Language: Coco/R +" Maintainer: Ashish Shukla <wahjava@gmail.com> +" Last Change: 2007 Aug 10 +" Remark: Coco/R syntax partially implemented. +" License: Vim license + +if version < 600 + syntax clear +elseif exists("b:current_syntax") + finish +endif + +syn keyword cocoKeywords ANY CHARACTERS COMMENTS COMPILER CONTEXT END FROM IF IGNORE IGNORECASE NESTED PRAGMAS PRODUCTIONS SYNC TO TOKENS WEAK +syn match cocoUnilineComment #//.*$# +syn match cocoIdentifier /[[:alpha:]][[:alnum:]]*/ +syn region cocoMultilineComment start=#/[*]# end=#[*]/# +syn region cocoString start=/"/ skip=/\\"\|\\\\/ end=/"/ +syn region cocoCharacter start=/'/ skip=/\\'\|\\\\/ end=/'/ +syn match cocoOperator /+\||\|\.\.\|-\|(\|)\|{\|}\|\[\|\]\|=\|<\|>/ +syn region cocoProductionCode start=/([.]/ end=/[.])/ +syn match cocoPragma /[$][[:alnum:]]*/ + +hi def link cocoKeywords Keyword +hi def link cocoUnilineComment Comment +hi def link cocoMultilineComment Comment +hi def link cocoIdentifier Identifier +hi def link cocoString String +hi def link cocoCharacter Character +hi def link cocoOperator Operator +hi def link cocoProductionCode Statement +hi def link cocoPragma Special +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/syntax/cuda.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,72 @@ +" Vim syntax file +" Language: CUDA (NVIDIA Compute Unified Device Architecture) +" Maintainer: Timothy B. Terriberry <tterribe@users.sourceforge.net> +" Last Change: 2007 Oct 13 + +" For version 5.x: Clear all syntax items +" For version 6.x: Quit when a syntax file was already loaded +if version < 600 + syntax clear +elseif exists("b:current_syntax") + finish +endif + +" Read the C syntax to start with +if version < 600 + source <sfile>:p:h/c.vim +else + runtime! syntax/c.vim +endif + +" CUDA extentions +syn keyword cudaStorageClass __device__ __global__ __host__ +syn keyword cudaStorageClass __constant__ __shared__ +syn keyword cudaStorageClass __inline__ __align__ __thread__ +"syn keyword cudaStorageClass __import__ __export__ __location__ +syn keyword cudaStructure template +syn keyword cudaType char1 char2 char3 char4 +syn keyword cudaType uchar1 uchar2 uchar3 uchar4 +syn keyword cudaType short1 short2 short3 short4 +syn keyword cudaType ushort1 ushort2 ushort3 ushort4 +syn keyword cudaType int1 int2 int3 int4 +syn keyword cudaType uint1 uint2 uint3 uint4 +syn keyword cudaType long1 long2 long3 long4 +syn keyword cudaType ulong1 ulong2 ulong3 ulong4 +syn keyword cudaType float1 float2 float3 float4 +syn keyword cudaType ufloat1 ufloat2 ufloat3 ufloat4 +syn keyword cudaType dim3 texture textureReference +syn keyword cudaType cudaError_t cudaDeviceProp cudaMemcpyKind +syn keyword cudaType cudaArray cudaChannelFormatKind +syn keyword cudaType cudaChannelFormatDesc cudaTextureAddressMode +syn keyword cudaType cudaTextureFilterMode cudaTextureReadMode +syn keyword cudaVariable gridDim blockIdx blockDim threadIdx +syn keyword cudaConstant __DEVICE_EMULATION__ +syn keyword cudaConstant cudaSuccess +" Many more errors are defined, but only these are listed in the maunal +syn keyword cudaConstant cudaErrorMemoryAllocation +syn keyword cudaConstant cudaErrorInvalidDevicePointer +syn keyword cudaConstant cudaErrorInvalidSymbol +syn keyword cudaConstant cudaErrorMixedDeviceExecution +syn keyword cudaConstant cudaMemcpyHostToHost +syn keyword cudaConstant cudaMemcpyHostToDevice +syn keyword cudaConstant cudaMemcpyDeviceToHost +syn keyword cudaConstant cudaMemcpyDeviceToDevice +syn keyword cudaConstant cudaReadModeElementType +syn keyword cudaConstant cudaReadModeNormalizedFloat +syn keyword cudaConstant cudaFilterModePoint +syn keyword cudaConstant cudaFilterModeLinear +syn keyword cudaConstant cudaAddressModeClamp +syn keyword cudaConstant cudaAddressModeWrap +syn keyword cudaConstant cudaChannelFormatKindSigned +syn keyword cudaConstant cudaChannelFormatKindUnsigned +syn keyword cudaConstant cudaChannelFormatKindFloat + +hi def link cudaStorageClass StorageClass +hi def link cudaStructure Structure +hi def link cudaType Type +hi def link cudaVariable Identifier +hi def link cudaConstant Constant + +let b:current_syntax = "cuda" + +" vim: ts=8
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/syntax/denyhosts.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,289 @@ +" Vim syntax file +" Language: denyhosts configuration file +" Maintainer: Nikolai Weibull <now@bitwi.se> +" Latest Revision: 2007-06-25 + +if exists("b:current_syntax") + finish +endif + +let s:cpo_save = &cpo +set cpo&vim + +syn keyword denyhostsTodo + \ contained + \ TODO + \ FIXME + \ XXX + \ NOTE + +syn case ignore + +syn match denyhostsComment + \ contained + \ display + \ '#.*' + \ contains=denyhostsTodo, + \ @Spell + +syn match denyhostsBegin + \ display + \ '^' + \ nextgroup=@denyhostsSetting, + \ denyhostsComment + \ skipwhite + +syn cluster denyhostsSetting + \ contains=denyhostsStringSetting, + \ denyhostsBooleanSetting, + \ denyhostsPathSetting, + \ denyhostsNumericSetting, + \ denyhostsTimespecSetting, + \ denyhostsFormatSetting, + \ denyhostsRegexSetting + +syn keyword denyhostsStringSetting + \ contained + \ ADMIN_EMAIL + \ SMTP_HOST + \ SMTP_USERNAME + \ SMTP_PASSWORD + \ SMTP_FROM + \ SMTP_SUBJECT + \ BLOCK_SERVICE + \ nextgroup=denyhostsStringDelimiter + \ skipwhite + +syn keyword denyhostsBooleanSetting + \ contained + \ SUSPICIOUS_LOGIN_REPORT_ALLOWED_HOSTS + \ HOSTNAME_LOOKUP + \ SYSLOG_REPORT + \ RESET_ON_SUCCESS + \ SYNC_UPLOAD + \ SYNC_DOWNLOAD + \ ALLOWED_HOSTS_HOSTNAME_LOOKUP + \ nextgroup=denyhostsBooleanDelimiter + \ skipwhite + +syn keyword denyhostsPathSetting + \ contained + \ DAEMON_LOG + \ PLUGIN_DENY + \ PLUGIN_PURGE + \ SECURE_LOG + \ LOCK_FILE + \ HOSTS_DENY + \ WORK_DIR + \ nextgroup=denyhostsPathDelimiter + \ skipwhite + +syn keyword denyhostsNumericSetting + \ contained + \ SYNC_DOWNLOAD_THRESHOLD + \ SMTP_PORT + \ PURGE_THRESHOLD + \ DENY_THRESHOLD_INVALID + \ DENY_THRESHOLD_VALID + \ DENY_THRESHOLD_ROOT + \ DENY_THRESHOLD_RESTRICTED + \ nextgroup=denyhostsNumericDelimiter + \ skipwhite + +syn keyword denyhostsTimespecSetting + \ contained + \ DAEMON_SLEEP + \ DAEMON_PURGE + \ AGE_RESET_INVALID + \ AGE_RESET_VALID + \ AGE_RESET_ROOT + \ AGE_RESET_RESTRICTED + \ SYNC_INTERVAL + \ SYNC_DOWNLOAD_RESILIENCY + \ PURGE_DENY + \ nextgroup=denyhostsTimespecDelimiter + \ skipwhite + +syn keyword denyhostsFormatSetting + \ contained + \ DAEMON_LOG_TIME_FORMAT + \ DAEMON_LOG_MESSAGE_FORMAT + \ SMTP_DATE_FORMAT + \ nextgroup=denyhostsFormatDelimiter + \ skipwhite + +syn keyword denyhostsRegexSetting + \ contained + \ SSHD_FORMAT_REGEX + \ FAILED_ENTRY_REGEX + \ FAILED_ENTRY_REGEX2 + \ FAILED_ENTRY_REGEX3 + \ FAILED_ENTRY_REGEX4 + \ FAILED_ENTRY_REGEX5 + \ FAILED_ENTRY_REGEX6 + \ FAILED_ENTRY_REGEX7 + \ USERDEF_FAILED_ENTRY_REGEX + \ SUCCESSFUL_ENTRY_REGEX + \ nextgroup=denyhostsRegexDelimiter + \ skipwhite + +syn keyword denyhostURLSetting + \ contained + \ SYNC_SERVER + \ nextgroup=denyhostsURLDelimiter + \ skipwhite + +syn match denyhostsStringDelimiter + \ contained + \ display + \ '[:=]' + \ nextgroup=denyhostsString + \ skipwhite + +syn match denyhostsBooleanDelimiter + \ contained + \ display + \ '[:=]' + \ nextgroup=@denyhostsBoolean + \ skipwhite + +syn match denyhostsPathDelimiter + \ contained + \ display + \ '[:=]' + \ nextgroup=denyhostsPath + \ skipwhite + +syn match denyhostsNumericDelimiter + \ contained + \ display + \ '[:=]' + \ nextgroup=denyhostsNumber + \ skipwhite + +syn match denyhostsTimespecDelimiter + \ contained + \ display + \ '[:=]' + \ nextgroup=denyhostsTimespec + \ skipwhite + +syn match denyhostsFormatDelimiter + \ contained + \ display + \ '[:=]' + \ nextgroup=denyhostsFormat + \ skipwhite + +syn match denyhostsRegexDelimiter + \ contained + \ display + \ '[:=]' + \ nextgroup=denyhostsRegex + \ skipwhite + +syn match denyhostsURLDelimiter + \ contained + \ display + \ '[:=]' + \ nextgroup=denyhostsURL + \ skipwhite + +syn match denyhostsString + \ contained + \ display + \ '.\+' + +syn cluster denyhostsBoolean + \ contains=denyhostsBooleanTrue, + \ denyhostsBooleanFalse + +syn match denyhostsBooleanFalse + \ contained + \ display + \ '.\+' + +syn match denyhostsBooleanTrue + \ contained + \ display + \ '\s*\%(1\|t\%(rue\)\=\|y\%(es\)\=\)\>\s*$' + +syn match denyhostsPath + \ contained + \ display + \ '.\+' + +syn match denyhostsNumber + \ contained + \ display + \ '\d\+\>' + +syn match denyhostsTimespec + \ contained + \ display + \ '\d\+[mhdwy]\>' + +syn match denyhostsFormat + \ contained + \ display + \ '.\+' + \ contains=denyhostsFormattingExpandos + +syn match denyhostsFormattingExpandos + \ contained + \ display + \ '%.' + +syn match denyhostsRegex + \ contained + \ display + \ '.\+' + +" TODO: Perhaps come up with a better regex here? There should really be a +" library for these kinds of generic regexes, that is, URLs, mail addresses, … +syn match denyhostsURL + \ contained + \ display + \ '.\+' + +hi def link denyhostsTodo Todo +hi def link denyhostsComment Comment +hi def link denyhostsSetting Keyword +hi def link denyhostsStringSetting denyhostsSetting +hi def link denyhostsBooleanSetting denyhostsSetting +hi def link denyhostsPathSetting denyhostsSetting +hi def link denyhostsNumericSetting denyhostsSetting +hi def link denyhostsTimespecSetting denyhostsSetting +hi def link denyhostsFormatSetting denyhostsSetting +hi def link denyhostsRegexSetting denyhostsSetting +hi def link denyhostURLSetting denyhostsSetting +hi def link denyhostsDelimiter Normal +hi def link denyhostsStringDelimiter denyhostsDelimiter +hi def link denyhostsBooleanDelimiter denyhostsDelimiter +hi def link denyhostsPathDelimiter denyhostsDelimiter +hi def link denyhostsNumericDelimiter denyhostsDelimiter +hi def link denyhostsTimespecDelimiter denyhostsDelimiter +hi def link denyhostsFormatDelimiter denyhostsDelimiter +hi def link denyhostsRegexDelimiter denyhostsDelimiter +hi def link denyhostsURLDelimiter denyhostsDelimiter +hi def link denyhostsString String +if exists('g:syntax_booleans_simple') || exists('b:syntax_booleans_simple') + hi def link denyhostsBoolean Boolean + hi def link denyhostsBooleanFalse denyhostsBoolean + hi def link denyhostsBooleanTrue denyhostsBoolean +else + hi def denyhostsBooleanTrue term=bold ctermfg=Green guifg=Green + hi def denyhostsBooleanFalse ctermfg=Red guifg=Red +endif +hi def link denyhostsPath String +hi def link denyhostsNumber Number +hi def link denyhostsTimespec Number +hi def link denyhostsFormat String +hi def link denyhostsFormattingExpandos Special +hi def link denyhostsRegex String +hi def link denyhostsURL String + +let b:current_syntax = "denyhosts" + +let &cpo = s:cpo_save +unlet s:cpo_save
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/syntax/dtrace.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,150 @@ +" DTrace D script syntax file. To avoid confusion with the D programming +" language, I call this script dtrace.vim instead of d.vim. +" Language: D script as described in "Solaris Dynamic Tracing Guide", +" http://docs.sun.com/app/docs/doc/817-6223 +" Version: 1.5 +" Last Change: 2008/04/05 +" Maintainer: Nicolas Weber <nicolasweber@gmx.de> + +" dtrace lexer and parser are at +" http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/lib/libdtrace/common/dt_lex.l +" http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/lib/libdtrace/common/dt_grammar.y + +if version < 600 + syntax clear +elseif exists("b:current_syntax") + finish +endif + +" Read the C syntax to start with +if version < 600 + so <sfile>:p:h/c.vim +else + runtime! syntax/c.vim + unlet b:current_syntax +endif + +syn clear cCommentL " dtrace doesn't support // style comments + +" First line may start with #!, also make sure a '-s' flag is somewhere in +" that line. +syn match dtraceComment "\%^#!.*-s.*" + +" Probe descriptors need explicit matches, so that keywords in probe +" descriptors don't show up as errors. Note that this regex detects probes +" as "something with three ':' in it". This works in practice, but it's not +" really correct. Also add special case code for BEGIN, END and ERROR, since +" they are common. +" Be careful not to detect '/*some:::node*/\n/**/' as probe, as it's +" commented out. +" XXX: This allows a probe description to end with ',', even if it's not +" followed by another probe. +" XXX: This doesn't work if followed by a comment. +let s:oneProbe = '\%(BEGIN\|END\|ERROR\|\S\{-}:\S\{-}:\S\{-}:\S\{-}\)\_s*' +exec 'syn match dtraceProbe "'.s:oneProbe.'\%(,\_s*'.s:oneProbe.'\)*\ze\_s\%({\|\/[^*]\|\%$\)"' + +" Note: We have to be careful to not make this match /* */ comments. +" Also be careful not to eat `c = a / b; b = a / 2;`. We use the same +" technique as the dtrace lexer: a predicate has to be followed by {, ;, or +" EOF. Also note that dtrace doesn't allow an empty predicate // (we do). +" This regex doesn't allow a divison operator in the predicate. +" Make sure that this matches the empty predicate as well. +" XXX: This doesn't work if followed by a comment. +syn match dtracePredicate "/\*\@!\_[^/]*/\ze\_s*\%({\|;\|\%$\)" + "contains=ALLBUT,dtraceOption " this lets the region contain too much stuff + +" Pragmas. +" dtrace seems not to support whitespace before or after the '='. dtrace +" supports only one option per #pragma, and no continuations of #pragma over +" several lines with '\'. +" Note that dtrace treats units (Hz etc) as case-insenstive, we allow only +" sane unit capitalization in this script (ie 'ns', 'us', 'ms', 's' have to be +" small, Hertz can be 'Hz' or 'hz') +" XXX: "cpu" is always highlighted as builtin var, not as option + +" auto or manual: bufresize +syn match dtraceOption contained "bufresize=\%(auto\|manual\)\s*$" + +" scalar: cpu jstackframes jstackstrsize nspec stackframes stackindent ustackframes +syn match dtraceOption contained "\%(cpu\|jstackframes\|jstackstrsize\|nspec\|stackframes\|stackindent\|ustackframes\)=\d\+\s*$" + +" size: aggsize bufsize dynvarsize specsize strsize +" size defaults to something if no unit is given (ie., having no unit is ok) +syn match dtraceOption contained "\%(aggsize\|bufsize\|dynvarsize\|specsize\|strsize\)=\d\+\%(k\|m\|g\|t\|K\|M\|G\|T\)\=\s*$" + +" time: aggrate cleanrate statusrate switchrate +" time defaults to hz if no unit is given +syn match dtraceOption contained "\%(aggrate\|cleanrate\|statusrate\|switchrate\)=\d\+\%(hz\|Hz\|ns\|us\|ms\|s\)\=\s*$" + +" No type: defaultargs destructive flowindent grabanon quiet rawbytes +syn match dtraceOption contained "\%(defaultargs\|destructive\|flowindent\|grabanon\|quiet\|rawbytes\)\s*$" + + +" Turn reserved but unspecified keywords into errors +syn keyword dtraceReservedKeyword auto break case continue counter default do +syn keyword dtraceReservedKeyword else for goto if import probe provider +syn keyword dtraceReservedKeyword register restrict return static switch while + +" Add dtrace-specific stuff +syn keyword dtraceOperator sizeof offsetof stringof xlate +syn keyword dtraceStatement self inline xlate this translator + +" Builtin variables +syn keyword dtraceIdentifier arg0 arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9 +syn keyword dtraceIdentifier args caller chip cpu curcpu curlwpsinfo curpsinfo +syn keyword dtraceIdentifier curthread cwd epid errno execname gid id ipl lgrp +syn keyword dtraceIdentifier pid ppid probefunc probemod probename probeprov +syn keyword dtraceIdentifier pset root stackdepth tid timestamp uid uregs +syn keyword dtraceIdentifier vtimestamp walltimestamp +syn keyword dtraceIdentifier ustackdepth + +" Macro Variables +syn match dtraceConstant "$[0-9]\+" +syn match dtraceConstant "$\(egid\|euid\|gid\|pgid\|ppid\)" +syn match dtraceConstant "$\(projid\|sid\|target\|taskid\|uid\)" + +" Data Recording Actions +syn keyword dtraceFunction trace tracemem printf printa stack ustack jstack + +" Process Destructive Actions +syn keyword dtraceFunction stop raise copyout copyoutstr system + +" Kernel Destructive Actions +syn keyword dtraceFunction breakpoint panic chill + +" Special Actions +syn keyword dtraceFunction speculate commit discard exit + +" Subroutines +syn keyword dtraceFunction alloca basename bcopy cleanpath copyin copyinstr +syn keyword dtraceFunction copyinto dirname msgdsize msgsize mutex_owned +syn keyword dtraceFunction mutex_owner mutex_type_adaptive progenyof +syn keyword dtraceFunction rand rw_iswriter rw_write_held speculation +syn keyword dtraceFunction strjoin strlen + +" Aggregating Functions +syn keyword dtraceAggregatingFunction count sum avg min max lquantize quantize + +syn keyword dtraceType int8_t int16_t int32_t int64_t intptr_t +syn keyword dtraceType uint8_t uint16_t uint32_t uint64_t uintptr_t +syn keyword dtraceType string +syn keyword dtraceType pid_t id_t + + +" Define the default highlighting. +" We use `hi def link` directly, this requires 5.8. +hi def link dtraceReservedKeyword Error +hi def link dtracePredicate String +hi def link dtraceProbe dtraceStatement +hi def link dtraceStatement Statement +hi def link dtraceConstant Constant +hi def link dtraceIdentifier Identifier +hi def link dtraceAggregatingFunction dtraceFunction +hi def link dtraceFunction Function +hi def link dtraceType Type +hi def link dtraceOperator Operator +hi def link dtraceComment Comment +hi def link dtraceNumber Number +hi def link dtraceOption Identifier + +let b:current_syntax = "dtrace"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/syntax/git.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,67 @@ +" Vim syntax file +" Language: generic git output +" Maintainer: Tim Pope <vimNOSPAM@tpope.info> +" Last Change: 2008 Mar 21 + +if exists("b:current_syntax") + finish +endif + +syn case match +syn sync minlines=50 + +syn include @gitDiff syntax/diff.vim + +syn region gitHead start=/\%^/ end=/^$/ +syn region gitHead start=/\%(^commit \x\{40\}$\)\@=/ end=/^$/ + +" For git reflog and git show ...^{tree}, avoid sync issues +syn match gitHead /^\d\{6\} \%(\w\{4} \)\=\x\{40\}\%( [0-3]\)\=\t.*/ +syn match gitHead /^\x\{40\} \x\{40}\t.*/ + +syn region gitDiff start=/^\%(diff --git \)\@=/ end=/^\%(diff --git \|$\)\@=/ contains=@gitDiff fold +syn region gitDiff start=/^\%(@@ -\)\@=/ end=/^\%(diff --git \|$\)\@=/ contains=@gitDiff + +syn match gitKeyword /^\%(object\|type\|tag\|commit\|tree\|parent\|encoding\)\>/ contained containedin=gitHead nextgroup=gitHash,gitType skipwhite +syn match gitKeyword /^\%(tag\>\|ref:\)/ contained containedin=gitHead nextgroup=gitReference skipwhite +syn match gitKeyword /^Merge:/ contained containedin=gitHead nextgroup=gitHashAbbrev skipwhite +syn match gitMode /^\d\{6\}/ contained containedin=gitHead nextgroup=gitType,gitHash skipwhite +syn match gitIdentityKeyword /^\%(author\|committer\|tagger\)\>/ contained containedin=gitHead nextgroup=gitIdentity skipwhite +syn match gitIdentityHeader /^\%(Author\|Commit\|Tagger\):/ contained containedin=gitHead nextgroup=gitIdentity skipwhite +syn match gitDateHeader /^\%(AuthorDate\|CommitDate\|Date\):/ contained containedin=gitHead nextgroup=gitDate skipwhite +syn match gitIdentity /\S.\{-\} <[^>]*>/ contained nextgroup=gitDate skipwhite +syn region gitEmail matchgroup=gitEmailDelimiter start=/</ end=/>/ keepend oneline contained containedin=gitIdentity + +syn match gitReflogHeader /^Reflog:/ contained containedin=gitHead nextgroup=gitReflogMiddle skipwhite +syn match gitReflogHeader /^Reflog message:/ contained containedin=gitHead skipwhite +syn match gitReflogMiddle /\S\+@{\d\+} (/he=e-2 nextgroup=gitIdentity + +syn match gitDate /\<\u\l\l \u\l\l \d\=\d \d\d:\d\d:\d\d \d\d\d\d [+-]\d\d\d\d/ contained +syn match gitDate /-\=\d\+ [+-]\d\d\d\d\>/ contained +syn match gitDate /\<\d\+ \l\+ ago\>/ contained +syn match gitType /\<\%(tag\|commit\|tree\|blob\)\>/ contained nextgroup=gitHash skipwhite +syn match gitStage /\<\d\t\@=/ contained +syn match gitReference /\S\+\S\@!/ contained +syn match gitHash /\<\x\{40\}\>/ contained nextgroup=gitIdentity,gitStage skipwhite +syn match gitHash /^\<\x\{40\}\>/ containedin=gitHead contained nextgroup=gitHash skipwhite +syn match gitHashAbbrev /\<\x\{4,39\}\.\.\./he=e-3 contained nextgroup=gitHashAbbrev skipwhite +syn match gitHashAbbrev /\<\x\{40\}\>/ contained nextgroup=gitHashAbbrev skipwhite + +hi def link gitDateHeader gitIdentityHeader +hi def link gitIdentityHeader gitIdentityKeyword +hi def link gitIdentityKeyword Label +hi def link gitReflogHeader gitKeyword +hi def link gitKeyword Keyword +hi def link gitIdentity String +hi def link gitEmailDelimiter Delimiter +hi def link gitEmail Special +hi def link gitDate Number +hi def link gitMode Number +hi def link gitHashAbbrev gitHash +hi def link gitHash Identifier +hi def link gitReflogMiddle gitReference +hi def link gitReference Function +hi def link gitStage gitType +hi def link gitType Type + +let b:current_syntax = "git"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/syntax/gitcommit.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,65 @@ +" Vim syntax file +" Language: git commit file +" Maintainer: Tim Pope <vimNOSPAM@tpope.info> +" Filenames: *.git/COMMIT_EDITMSG +" Last Change: 2008 Apr 09 + +if exists("b:current_syntax") + finish +endif + +syn case match +syn sync minlines=50 + +if has("spell") + syn spell toplevel +endif + +syn include @gitcommitDiff syntax/diff.vim +syn region gitcommitDiff start=/\%(^diff --git \)\@=/ end=/^$\|^#\@=/ contains=@gitcommitDiff + +syn match gitcommitFirstLine "\%^[^#].*" nextgroup=gitcommitBlank skipnl +syn match gitcommitSummary "^.\{0,50\}" contained containedin=gitcommitFirstLine nextgroup=gitcommitOverflow contains=@Spell +syn match gitcommitOverflow ".*" contained contains=@Spell +syn match gitcommitBlank "^[^#].*" contained contains=@Spell +syn match gitcommitComment "^#.*" +syn region gitcommitHead start=/^# / end=/^#$/ contained transparent +syn match gitcommitOnBranch "\%(^# \)\@<=On branch" contained containedin=gitcommitComment nextgroup=gitcommitBranch skipwhite +syn match gitcommitBranch "\S\+" contained +syn match gitcommitHeader "\%(^# \)\@<=.*:$" contained containedin=gitcommitComment + +syn region gitcommitUntracked start=/^# Untracked files:/ end=/^#$\|^#\@!/ contains=gitcommitHeader,gitcommitHead,gitcommitUntrackedFile fold +syn match gitcommitUntrackedFile "\t\@<=.*" contained + +syn region gitcommitDiscarded start=/^# Changed but not updated:/ end=/^#$\|^#\@!/ contains=gitcommitHeader,gitcommitHead,gitcommitDiscardedType fold +syn region gitcommitSelected start=/^# Changes to be committed:/ end=/^#$\|^#\@!/ contains=gitcommitHeader,gitcommitHead,gitcommitSelectedType fold + +syn match gitcommitDiscardedType "\t\@<=[a-z][a-z ]*[a-z]: "he=e-2 contained containedin=gitcommitComment nextgroup=gitcommitDiscardedFile skipwhite +syn match gitcommitSelectedType "\t\@<=[a-z][a-z ]*[a-z]: "he=e-2 contained containedin=gitcommitComment nextgroup=gitcommitSelectedFile skipwhite +syn match gitcommitDiscardedFile ".\{-\}\%($\| -> \)\@=" contained nextgroup=gitcommitDiscardedArrow +syn match gitcommitSelectedFile ".\{-\}\%($\| -> \)\@=" contained nextgroup=gitcommitSelectedArrow +syn match gitcommitDiscardedArrow " -> " contained nextgroup=gitcommitDiscardedFile +syn match gitcommitSelectedArrow " -> " contained nextgroup=gitcommitSelectedFile + +hi def link gitcommitSummary Keyword +hi def link gitcommitComment Comment +hi def link gitcommitUntracked gitcommitComment +hi def link gitcommitDiscarded gitcommitComment +hi def link gitcommitSelected gitcommitComment +hi def link gitcommitOnBranch Comment +hi def link gitcommitBranch Special +hi def link gitcommitDiscardedType gitcommitType +hi def link gitcommitSelectedType gitcommitType +hi def link gitcommitType Type +hi def link gitcommitHeader PreProc +hi def link gitcommitUntrackedFile gitcommitFile +hi def link gitcommitDiscardedFile gitcommitFile +hi def link gitcommitSelectedFile gitcommitFile +hi def link gitcommitFile Constant +hi def link gitcommitDiscardedArrow gitcommitArrow +hi def link gitcommitSelectedArrow gitcommitArrow +hi def link gitcommitArrow gitcommitComment +"hi def link gitcommitOverflow Error +hi def link gitcommitBlank Error + +let b:current_syntax = "gitcommit"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/syntax/gitconfig.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,38 @@ +" Vim syntax file +" Language: git config file +" Maintainer: Tim Pope <vimNOSPAM@tpope.info> +" Filenames: gitconfig, .gitconfig, *.git/config +" Last Change: 2008 Jun 04 + +if exists("b:current_syntax") + finish +endif + +setlocal iskeyword+=- +setlocal iskeyword-=_ +syn case ignore +syn sync minlines=10 + +syn match gitconfigComment "[#;].*" +syn match gitconfigSection "\%(^\s*\)\@<=\[[a-z0-9.-]\+\]" +syn match gitconfigSection '\%(^\s*\)\@<=\[[a-z0-9.-]\+ \+\"\%([^\\"]\|\\.\)*"\]' +syn match gitconfigVariable "\%(^\s*\)\@<=\a\k*\%(\s*\%([=#;]\|$\)\)\@=" nextgroup=gitconfigAssignment skipwhite +syn region gitconfigAssignment matchgroup=gitconfigNone start=+=\s*+ skip=+\\+ end=+\s*$+ contained contains=gitconfigBoolean,gitconfigNumber,gitConfigString,gitConfigEscape,gitConfigError,gitconfigComment keepend +syn keyword gitconfigBoolean true false yes no contained +syn match gitconfigNumber "\d\+" contained +syn region gitconfigString matchgroup=gitconfigDelim start=+"+ skip=+\\+ end=+"+ matchgroup=gitconfigError end=+[^\\"]\%#\@!$+ contained contains=gitconfigEscape,gitconfigEscapeError +syn match gitconfigError +\\.+ contained +syn match gitconfigEscape +\\[\\"ntb]+ contained +syn match gitconfigEscape +\\$+ contained + +hi def link gitconfigComment Comment +hi def link gitconfigSection Keyword +hi def link gitconfigVariable Identifier +hi def link gitconfigBoolean Boolean +hi def link gitconfigNumber Number +hi def link gitconfigString String +hi def link gitconfigDelim Delimiter +hi def link gitconfigEscape Delimiter +hi def link gitconfigError Error + +let b:current_syntax = "gitconfig"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/syntax/gitrebase.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,31 @@ +" Vim syntax file +" Language: git rebase --interactive +" Maintainer: Tim Pope <vimNOSPAM@tpope.info> +" Filenames: git-rebase-todo +" Last Change: 2008 Apr 16 + +if exists("b:current_syntax") + finish +endif + +syn case match + +syn match gitrebaseHash "\v<\x{7,40}>" contained +syn match gitrebaseCommit "\v<\x{7,40}>" nextgroup=gitrebaseSummary skipwhite +syn match gitrebasePick "\v^p%(ick)=>" nextgroup=gitrebaseCommit skipwhite +syn match gitrebaseEdit "\v^e%(dit)=>" nextgroup=gitrebaseCommit skipwhite +syn match gitrebaseSquash "\v^s%(quash)=>" nextgroup=gitrebaseCommit skipwhite +syn match gitrebaseSummary ".*" contains=gitrebaseHash contained +syn match gitrebaseComment "^#.*" contains=gitrebaseHash +syn match gitrebaseSquashError "\v%^s%(quash)=>" nextgroup=gitrebaseCommit skipwhite + +hi def link gitrebaseCommit gitrebaseHash +hi def link gitrebaseHash Identifier +hi def link gitrebasePick Statement +hi def link gitrebaseEdit PreProc +hi def link gitrebaseSquash Type +hi def link gitrebaseSummary String +hi def link gitrebaseComment Comment +hi def link gitrebaseSquashError Error + +let b:current_syntax = "gitrebase"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/syntax/gitsendemail.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,19 @@ +" Vim syntax file +" Language: git send-email message +" Maintainer: Tim Pope +" Filenames: *.msg.[0-9]* (first line is "From ... # This line is ignored.") +" Last Change: 2007 Dec 16 + +if exists("b:current_syntax") + finish +endif + +runtime! syntax/mail.vim +syn case match + +syn match gitsendemailComment "\%^From.*#.*" +syn match gitsendemailComment "^GIT:.*" + +hi def link gitsendemailComment Comment + +let b:current_syntax = "gitsendemail"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/syntax/haml.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,89 @@ +" Vim syntax file +" Language: Haml +" Maintainer: Tim Pope <vimNOSPAM@tpope.info> +" Filenames: *.haml + +if exists("b:current_syntax") + finish +endif + +if !exists("main_syntax") + let main_syntax = 'haml' +endif +let b:ruby_no_expensive = 1 + +runtime! syntax/html.vim +unlet! b:current_syntax +silent! syn include @hamlSassTop syntax/sass.vim +unlet! b:current_syntax +syn include @hamlRubyTop syntax/ruby.vim + +syn case match + +syn cluster hamlComponent contains=hamlAttributes,hamlClassChar,hamlIdChar,hamlObject,hamlDespacer,hamlSelfCloser,hamlRuby,hamlPlainChar,hamlInterpolatable +syn cluster hamlEmbeddedRuby contains=hamlAttributes,hamlObject,hamlRuby,hamlRubyFilter +syn cluster hamlTop contains=hamlBegin,hamlPlainFilter,hamlRubyFilter,hamlSassFilter,hamlComment,hamlHtmlComment + +syn match hamlBegin "^\s*[<>&]\@!" nextgroup=hamlTag,hamlAttributes,hamlClassChar,hamlIdChar,hamlObject,hamlRuby,hamlPlainChar,hamlInterpolatable + +syn match hamlTag "%\w\+" contained contains=htmlTagName,htmlSpecialTagName nextgroup=@hamlComponent +syn region hamlAttributes matchgroup=hamlAttributesDelimiter start="{" end="}" contained contains=@hamlRubyTop nextgroup=@hamlComponent +syn region hamlObject matchgroup=hamlObjectDelimiter start="\[" end="\]" contained contains=@hamlRubyTop nextgroup=@hamlComponent +syn match hamlDespacer "[<>]" contained nextgroup=hamlDespacer,hamlSelfCloser,hamlRuby,hamlPlainChar,hamlInterpolatable +syn match hamlSelfCloser "/" contained +syn match hamlClassChar "\." contained nextgroup=hamlClass +syn match hamlIdChar "#" contained nextgroup=hamlId +syn match hamlClass "\%(\w\|-\)\+" contained nextgroup=@hamlComponent +syn match hamlId "\%(\w\|-\)\+" contained nextgroup=@hamlComponent +syn region hamlDocType start="^\s*!!!" end="$" + +syn region hamlRuby matchgroup=hamlRubyOutputChar start="[=~]" end="$" contained contains=@hamlRubyTop keepend +syn region hamlRuby matchgroup=hamlRubyChar start="-" end="$" contained contains=@hamlRubyTop keepend +syn match hamlPlainChar "\\" contained +syn region hamlInterpolatable matchgroup=hamlInterpolatableChar start="==" end="$" keepend contained contains=hamlInterpolation +syn region hamlInterpolation matchgroup=hamlInterpolationDelimiter start="#{" end="}" contained contains=@hamlRubyTop +syn region hamlErbInterpolation matchgroup=hamlInterpolationDelimiter start="<%[=-]\=" end="-\=%>" contained contains=@hamlRubyTop + +syn match hamlHelper "\<action_view?\|\.\@<!\<\%(flatten\|open\|puts\)" contained containedin=@hamlEmbeddedRuby,@hamlRubyTop,rubyInterpolation +syn keyword hamlHelper capture_haml find_and_preserve html_attrs init_haml_helpers list_of preced preserve succeed surround tab_down tab_up page_class contained containedin=@hamlEmbeddedRuby,@hamlRubyTop,rubyInterpolation + +syn cluster hamlHtmlTop contains=@htmlTop,htmlBold,htmlItalic,htmlUnderline +syn region hamlPlainFilter matchgroup=hamlFilter start="^\z(\s*\):\%(plain\|preserve\|erb\|redcloth\|textile\|markdown\)\s*$" end="^\%(\z1 \)\@!" contains=@hamlHtmlTop,rubyInterpolation +syn region hamlEscapedFilter matchgroup=hamlFilter start="^\z(\s*\):\%(escaped\)\s*$" end="^\%(\z1 \)\@!" contains=rubyInterpolation +syn region hamlErbFilter matchgroup=hamlFilter start="^\z(\s*\):erb\s*$" end="^\%(\z1 \)\@!" contains=@hamlHtmlTop,hamlErbInterpolation +syn region hamlRubyFilter matchgroup=hamlFilter start="^\z(\s*\):ruby\s*$" end="^\%(\z1 \)\@!" contains=@hamlRubyTop +syn region hamlSassFilter matchgroup=hamlFilter start="^\z(\s*\):sass\s*$" end="^\%(\z1 \)\@!" contains=@hamlSassTop + +syn region hamlJavascriptBlock start="^\z(\s*\)%script" nextgroup=@hamlComponent,hamlError end="^\%(\z1 \)\@!" contains=@hamlTop,@htmlJavaScript keepend +syn region hamlCssBlock start="^\z(\s*\)%style" nextgroup=@hamlComponent,hamlError end="^\%(\z1 \)\@!" contains=@hamlTop,@htmlCss keepend +syn match hamlError "\$" contained + +syn region hamlComment start="^\z(\s*\)-#" end="^\%(\z1 \)\@!" contains=rubyTodo +syn region hamlHtmlComment start="^\z(\s*\)/" end="^\%(\z1 \)\@!" contains=@hamlTop,rubyTodo +syn match hamlIEConditional "\%(^\s*/\)\@<=\[if\>[^]]*]" contained containedin=hamlHtmlComment + +hi def link hamlSelfCloser Special +hi def link hamlDespacer Special +hi def link hamlClassChar Special +hi def link hamlIdChar Special +hi def link hamlTag Special +hi def link hamlClass Type +hi def link hamlId Identifier +hi def link hamlPlainChar Special +hi def link hamlInterpolatableChar hamlRubyChar +hi def link hamlRubyOutputChar hamlRubyChar +hi def link hamlRubyChar Special +hi def link hamlInterpolationDelimiter Delimiter +hi def link hamlDocType PreProc +hi def link hamlFilter PreProc +hi def link hamlAttributesDelimiter Delimiter +hi def link hamlObjectDelimiter Delimiter +hi def link hamlHelper Function +hi def link hamlHtmlComment hamlComment +hi def link hamlComment Comment +hi def link hamlIEConditional SpecialComment +hi def link hamlError Error + +let b:current_syntax = "haml" + +" vim:set sw=2:
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/syntax/haste.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,145 @@ +" Vim syntax file +" Language: HASTE - a language for VLSI IC programming +" Maintainer: M. Tranchero - maurizio.tranchero?gmail.com +" Credits: some parts have been taken from vhdl, verilog, and C syntax +" files +" Version: 0.9 +" Last Change: 0.9 improvement of haste numbers detection +" Change: 0.8 error matching for wrong hierarchical connections +" Change: 0.7 added more rules to highlight pre-processor directives + +" HASTE +if exists("b:current_syntax") + finish +endif +" For version 5.x: Clear all syntax items +" For version 6.x: Quit when a syntax file was already loaded +if version < 600 + syntax clear +elseif exists("b:current_syntax") + finish +endif + +" case is significant +syn case match + +" HASTE keywords +syn keyword hasteStatement act alias arb array begin bitvec +syn keyword hasteStatement bitwidth boolvec broad case +syn keyword hasteStatement cast chan const dataprobe do edge +syn keyword hasteStatement else end export false ff fi file +syn keyword hasteStatement fit for forever func if import +syn keyword hasteStatement inprobe is les main narb narrow +syn keyword hasteStatement negedge od of or outprobe pas +syn keyword hasteStatement posedge probe proc ram ramreg +syn keyword hasteStatement repeat rom romreg sample sel si +syn keyword hasteStatement sign sizeof skip stop then true +syn keyword hasteStatement type until var wait wire +syn keyword hasteFutureExt Z ffe partial +syn keyword hasteVerilog buf reg while + +" Special match for "if", "or", and "else" since "else if" +" and other "else+if" combination shouldn't be highlighted. +" The right keyword is "or" +syn match hasteStatement "\<\(if\|then\|else\|fi\)\>" +syn match hasteNone "\<else\s\+if\>$" +syn match hasteNone "\<else\s\+if\>\s" +syn match hasteNone "\<elseif\>\s" +syn match hasteNone "\<elsif\>\s" +syn match hasteStatement "\<\(case\|is\|si\)\>" +syn match hasteStatement "\<\(repeat\|until\)\>" +syn match hasteStatement "\<\(forever\|do\|od\)\>" +syn match hasteStatement "\<\(for\|do\|od\)\>" +syn match hasteStatement "\<\(do\|or\|od\)\>" +syn match hasteStatement "\<\(sel\|les\)\>" +syn match hasteError "\<\d\+[_a-zA-Z]\+\>" +syn match hasteError "\(\([[:alnum:]]\+\s*(\s\+\|)\s*,\)\)\s*\([[:alnum:]]\+\s*(\)" + +" Predifined Haste types +syn keyword hasteType bool + +" Values for standard Haste types +" syn match hasteVector "\'[0L1HXWZU\-\?]\'" + +syn match hasteVector "0b\"[01_]\+\"" +syn match hasteVector "0x\"[0-9a-f_]\+\"" +syn match hasteCharacter "'.'" +" syn region hasteString start=+"+ end=+"+ +syn match hasteIncluded display contained "<[^>]*>" +syn match hasteIncluded display contained "<[^"]*>" +syn region hasteInclude start="^\s*#include\>\s*" end="$" contains=hasteIncluded,hasteString + +" integer numbers +syn match hasteNumber "\d\+\^[[:alnum:]]*[-+]\{0,1\}[[:alnum:]]*" +syn match hasteNumber "-\=\<\d\+\(\^[+\-]\=\d\+\)\>" +syn match hasteNumber "-\=\<\d\+\>" +" syn match hasteNumber "0*2#[01_]\+#\(\^[+\-]\=\d\+\)\=" +" syn match hasteNumber "0*16#[0-9a-f_]\+#\(\^[+\-]\=\d\+\)\=" +" operators +syn keyword hasteSeparators & , . \| +syn keyword hasteExecution \|\| ; @ +syn keyword hasteOperator := ? ! : +syn keyword hasteTypeConstr "[" << >> .. "]" ~ +syn keyword hasteExprOp < <= >= > = # <> + - * == ## +syn keyword hasteMisc ( ) 0x 0b +" +syn match hasteSeparators "[&:\|,.]" +syn match hasteOperator ":=" +syn match hasteOperator ":" +syn match hasteOperator "?" +syn match hasteOperator "!" +syn match hasteExecution "||" +syn match hasteExecution ";" +syn match hasteExecution "@" +syn match hasteType "\[\[" +syn match hasteType "\]\]" +syn match hasteType "<<" +syn match hasteType ">>" +syn match hasteExprOp "<" +syn match hasteExprOp "<=" +syn match hasteExprOp ">=" +syn match hasteExprOp ">" +syn match hasteExprOp "<>" +syn match hasteExprOp "=" +syn match hasteExprOp "==" +syn match hasteExprOp "##" +" syn match hasteExprOp "#" +syn match hasteExprOp "*" +syn match hasteExprOp "+" + +syn region hasteComment start="/\*" end="\*/" contains=@Spell +syn region hasteComment start="{" end="}" contains=@Spell +syn match hasteComment "//.*" contains=@Spell + +" Define the default highlighting. +" Only when an item doesn't have highlighting yet +hi def link hasteSpecial Special +hi def link hasteStatement Statement +hi def link hasteCharacter String +hi def link hasteString String +hi def link hasteVector String +hi def link hasteBoolean String +hi def link hasteComment Comment +hi def link hasteNumber String +hi def link hasteTime String +hi def link hasteType Type +hi def link hasteGlobal Error +hi def link hasteError Error +hi def link hasteAttribute Type +" +hi def link hasteSeparators Special +hi def link hasteExecution Special +hi def link hasteTypeConstr Special +hi def link hasteOperator Type +hi def link hasteExprOp Type +hi def link hasteMisc String +hi def link hasteFutureExt Error +hi def link hasteVerilog Error +hi def link hasteDefine Macro +hi def link hasteInclude Include +" hi def link hastePreProc Preproc +" hi def link hastePreProcVar Special + +let b:current_syntax = "haste" + +" vim: ts=8
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/syntax/hastepreproc.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,49 @@ +" Vim syntax file +" Language: Haste preprocessor files +" Maintainer: M. Tranchero - maurizio.tranchero@gmail.com +" Credits: some parts have been taken from vhdl, verilog, and C syntax +" files +" Version: 0.5 + +" HASTE +if exists("b:current_syntax") + finish +endif +" For version 5.x: Clear all syntax items +" For version 6.x: Quit when a syntax file was already loaded +if version < 600 + syntax clear +elseif exists("b:current_syntax") + finish +endif +" Read the C syntax to start with +if version < 600 + so <sfile>:p:h/haste.vim +else + runtime! syntax/haste.vim + unlet b:current_syntax +endif + +" case is significant +syn case match + +" C pre-processor directives +syn match hastepreprocVar display "\$[[:alnum:]_]*" +syn region hastepreprocVar start="\${" end="}" contains=hastepreprocVar +" +"syn region hastepreproc start="#\[\s*tg[:alnum:]*" end="]#" contains=hastepreprocVar,hastepreproc,hastepreprocError,@Spell +syn region hastepreproc start="#\[\s*\(\|tgfor\|tgif\)" end="$" contains=hastepreprocVar,hastepreproc,@Spell +syn region hastepreproc start="}\s\(else\)\s{" end="$" contains=hastepreprocVar,hastepreproc,@Spell +syn region hastepreproc start="^\s*#\s*\(ifndef\|ifdef\|else\|endif\)\>" end="$" contains=@hastepreprocGroup,@Spell +syn region hastepreproc start="\s*##\s*\(define\|undef\)\>" end="$" contains=@hastepreprocGroup,@Spell +syn match hastepreproc "}\{0,1}\s*]#" + +" Define the default highlighting. +" Only when an item doesn't have highlighting yet +hi def link hastepreproc Preproc +hi def link hastepreprocVar Special +hi def link hastepreprocError Error + +let b:current_syntax = "hastepreproc" + +" vim: ts=8
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/syntax/hostconf.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,147 @@ +" Vim syntax file +" Language: host.conf(5) configuration file +" Maintainer: Nikolai Weibull <now@bitwi.se> +" Latest Revision: 2007-06-25 + +if exists("b:current_syntax") + finish +endif + +let s:cpo_save = &cpo +set cpo&vim + +syn keyword hostconfTodo + \ contained + \ TODO + \ FIXME + \ XXX + \ NOTE + +syn match hostconfComment + \ display + \ contained + \ '\s*#.*' + \ contains=hostconfTodo, + \ @Spell + +syn match hostconfBegin + \ display + \ '^' + \ nextgroup=hostconfComment,hostconfKeyword + \ skipwhite + +syn keyword hostconfKeyword + \ contained + \ order + \ nextgroup=hostconfLookupOrder + \ skipwhite + +let s:orders = ['bind', 'hosts', 'nis'] + +function s:permute_suffixes(list) + if empty(a:list) + return [] + elseif len(a:list) == 1 + return a:list[0] + else + let i = 0 + let n = len(a:list) + let sub_permutations = [] + while i < n + let list_copy = copy(a:list) + let removed = list_copy[i] + call remove(list_copy, i) + call add(sub_permutations, [removed, s:permute_suffixes(list_copy)]) + let i += 1 + endwhile + return sub_permutations + endif +endfunction + +function s:generate_suffix_groups(list_of_order_of_orders, context, trailing_context) + for order_of_orders in a:list_of_order_of_orders + let order = order_of_orders[0] + let trailing_context = a:trailing_context . toupper(order[0]) . order[1:] + let nextgroup = 'hostconfLookupOrder' . trailing_context + let nextgroup_delimiter = nextgroup . 'Delimiter' + let group = 'hostconfLookupOrder' . a:context + execute 'syn keyword' group 'contained' order 'nextgroup=' . nextgroup_delimiter 'skipwhite' + execute 'syn match' nextgroup_delimiter 'contained display "," nextgroup=' . nextgroup 'skipwhite' + if a:context != "" + execute 'hi def link' group 'hostconfLookupOrder' + endif + execute 'hi def link' nextgroup_delimiter 'hostconfLookupOrderDelimiter' + let context = trailing_context + if type(order_of_orders[1]) == type([]) + call s:generate_suffix_groups(order_of_orders[1], context, trailing_context) + else + execute 'syn keyword hostconfLookupOrder' . context 'contained' order_of_orders[-1] + execute 'hi def link hostconfLookupOrder' . context 'hostconfLookupOrder' + endif + endfor +endfunction + +call s:generate_suffix_groups(s:permute_suffixes(s:orders), "", "") + +delfunction s:generate_suffix_groups +delfunction s:permute_suffixes + +syn keyword hostconfKeyword + \ contained + \ trim + \ nextgroup=hostconfDomain + \ skipwhite + +syn match hostconfDomain + \ contained + \ '\.[^:;,[:space:]]\+' + \ nextgroup=hostconfDomainDelimiter + \ skipwhite + +syn match hostconfDomainDelimiter + \ contained + \ display + \ '[:;,]' + \ nextgroup=hostconfDomain + \ skipwhite + +syn keyword hostconfKeyword + \ contained + \ multi + \ nospoof + \ spoofalert + \ reorder + \ nextgroup=hostconfBoolean + \ skipwhite + +syn keyword hostconfBoolean + \ contained + \ on + \ off + +syn keyword hostconfKeyword + \ contained + \ spoof + \ nextgroup=hostconfSpoofValue + \ skipwhite + +syn keyword hostconfSpoofValue + \ contained + \ off + \ nowarn + \ warn + +hi def link hostconfTodo Todo +hi def link hostconfComment Comment +hi def link hostconfKeyword Keyword +hi def link hostconfLookupOrder Identifier +hi def link hostconfLookupOrderDelimiter Delimiter +hi def link hostconfDomain String +hi def link hostconfDomainDelimiter Delimiter +hi def link hostconfBoolean Boolean +hi def link hostconfSpoofValue hostconfBoolean + +let b:current_syntax = "hostconf" + +let &cpo = s:cpo_save +unlet s:cpo_save
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/syntax/lsl.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,272 @@ +" Vim syntax file +" Language: Linden Scripting Language +" Maintainer: Timo Frenay <timo@frenay.net> +" Last Change: 2008 Mar 29 + +" Quit when a syntax file was already loaded +if exists("b:current_syntax") + finish +endif + +" Initializations +syn case match + +" Keywords +syn keyword lslKeyword default do else for if jump return state while + +" Types +syn keyword lslType float integer key list quaternion rotation string vector + +" Labels +syn match lslLabel +@\h\w*+ display + +" Constants +syn keyword lslConstant +\ ACTIVE AGENT AGENT_ALWAYS_RUN AGENT_ATTACHMENTS AGENT_AWAY AGENT_BUSY +\ AGENT_CROUCHING AGENT_FLYING AGENT_IN_AIR AGENT_MOUSELOOK AGENT_ON_OBJECT +\ AGENT_SCRIPTED AGENT_SITTING AGENT_TYPING AGENT_WALKING ALL_SIDES ANIM_ON +\ ATTACH_BACK ATTACH_BELLY ATTACH_CHEST ATTACH_CHIN ATTACH_HEAD +\ ATTACH_HUD_BOTTOM ATTACH_HUD_BOTTOM_LEFT ATTACH_HUD_BOTTOM_RIGHT +\ ATTACH_HUD_CENTER_1 ATTACH_HUD_CENTER_2 ATTACH_HUD_TOP_CENTER +\ ATTACH_HUD_TOP_LEFT ATTACH_HUD_TOP_RIGHT ATTACH_LEAR ATTACH_LEYE ATTACH_LFOOT +\ ATTACH_LHAND ATTACH_LHIP ATTACH_LLARM ATTACH_LLLEG ATTACH_LPEC +\ ATTACH_LSHOULDER ATTACH_LUARM ATTACH_LULEG ATTACH_MOUTH ATTACH_NOSE +\ ATTACH_PELVIS ATTACH_REAR ATTACH_REYE ATTACH_RFOOT ATTACH_RHAND ATTACH_RHIP +\ ATTACH_RLARM ATTACH_RLLEG ATTACH_RPEC ATTACH_RSHOULDER ATTACH_RUARM +\ ATTACH_RULEG CAMERA_ACTIVE CAMERA_BEHINDNESS_ANGLE CAMERA_BEHINDNESS_LAG +\ CAMERA_DISTANCE CAMERA_FOCUS CAMERA_FOCUS_LAG CAMERA_FOCUS_LOCKED +\ CAMERA_FOCUS_OFFSET CAMERA_FOCUS_THRESHOLD CAMERA_PITCH CAMERA_POSITION +\ CAMERA_POSITION_LAG CAMERA_POSITION_LOCKED CAMERA_POSITION_THRESHOLD +\ CHANGED_ALLOWED_DROP CHANGED_COLOR CHANGED_INVENTORY CHANGED_LINK +\ CHANGED_OWNER CHANGED_REGION CHANGED_SCALE CHANGED_SHAPE CHANGED_TELEPORT +\ CHANGED_TEXTURE CLICK_ACTION_BUY CLICK_ACTION_NONE CLICK_ACTION_OPEN +\ CLICK_ACTION_OPEN_MEDIA CLICK_ACTION_PAY CLICK_ACTION_PLAY CLICK_ACTION_SIT +\ CLICK_ACTION_TOUCH CONTROL_BACK CONTROL_DOWN CONTROL_FWD CONTROL_LBUTTON +\ CONTROL_LEFT CONTROL_ML_LBUTTON CONTROL_RIGHT CONTROL_ROT_LEFT +\ CONTROL_ROT_RIGHT CONTROL_UP DATA_BORN DATA_NAME DATA_ONLINE DATA_PAYINFO +\ DATA_RATING DATA_SIM_POS DATA_SIM_RATING DATA_SIM_STATUS DEBUG_CHANNEL +\ DEG_TO_RAD EOF FALSE HTTP_BODY_MAXLENGTH HTTP_BODY_TRUNCATED HTTP_METHOD +\ HTTP_MIMETYPE HTTP_VERIFY_CERT INVENTORY_ALL INVENTORY_ANIMATION +\ INVENTORY_BODYPART INVENTORY_CLOTHING INVENTORY_GESTURE INVENTORY_LANDMARK +\ INVENTORY_NONE INVENTORY_NOTECARD INVENTORY_OBJECT INVENTORY_SCRIPT +\ INVENTORY_SOUND INVENTORY_TEXTURE LAND_LARGE_BRUSH LAND_LEVEL LAND_LOWER +\ LAND_MEDIUM_BRUSH LAND_NOISE LAND_RAISE LAND_REVERT LAND_SMALL_BRUSH +\ LAND_SMOOTH LINK_ALL_CHILDREN LINK_ALL_OTHERS LINK_ROOT LINK_SET LINK_THIS +\ LIST_STAT_GEOMETRIC_MEAN LIST_STAT_MAX LIST_STAT_MEAN LIST_STAT_MEDIAN +\ LIST_STAT_MIN LIST_STAT_NUM_COUNT LIST_STAT_RANGE LIST_STAT_STD_DEV +\ LIST_STAT_SUM LIST_STAT_SUM_SQUARES LOOP MASK_BASE MASK_EVERYONE MASK_GROUP +\ MASK_NEXT MASK_OWNER NULL_KEY OBJECT_CREATOR OBJECT_DESC OBJECT_GROUP +\ OBJECT_NAME OBJECT_OWNER OBJECT_POS OBJECT_ROT OBJECT_UNKNOWN_DETAIL +\ OBJECT_VELOCITY PARCEL_COUNT_GROUP PARCEL_COUNT_OTHER PARCEL_COUNT_OWNER +\ PARCEL_COUNT_SELECTED PARCEL_COUNT_TEMP PARCEL_COUNT_TOTAL PARCEL_DETAILS_AREA +\ PARCEL_DETAILS_DESC PARCEL_DETAILS_GROUP PARCEL_DETAILS_NAME +\ PARCEL_DETAILS_OWNER PARCEL_FLAG_ALLOW_ALL_OBJECT_ENTRY +\ PARCEL_FLAG_ALLOW_CREATE_GROUP_OBJECTS PARCEL_FLAG_ALLOW_CREATE_OBJECTS +\ PARCEL_FLAG_ALLOW_DAMAGE PARCEL_FLAG_ALLOW_FLY +\ PARCEL_FLAG_ALLOW_GROUP_OBJECT_ENTRY PARCEL_FLAG_ALLOW_GROUP_SCRIPTS +\ PARCEL_FLAG_ALLOW_LANDMARK PARCEL_FLAG_ALLOW_SCRIPTS +\ PARCEL_FLAG_ALLOW_TERRAFORM PARCEL_FLAG_LOCAL_SOUND_ONLY +\ PARCEL_FLAG_RESTRICT_PUSHOBJECT PARCEL_FLAG_USE_ACCESS_GROUP +\ PARCEL_FLAG_USE_ACCESS_LIST PARCEL_FLAG_USE_BAN_LIST +\ PARCEL_FLAG_USE_LAND_PASS_LIST PARCEL_MEDIA_COMMAND_AGENT +\ PARCEL_MEDIA_COMMAND_AUTO_ALIGN PARCEL_MEDIA_COMMAND_DESC +\ PARCEL_MEDIA_COMMAND_LOOP PARCEL_MEDIA_COMMAND_LOOP_SET +\ PARCEL_MEDIA_COMMAND_PAUSE PARCEL_MEDIA_COMMAND_PLAY PARCEL_MEDIA_COMMAND_SIZE +\ PARCEL_MEDIA_COMMAND_STOP PARCEL_MEDIA_COMMAND_TEXTURE +\ PARCEL_MEDIA_COMMAND_TIME PARCEL_MEDIA_COMMAND_TYPE +\ PARCEL_MEDIA_COMMAND_UNLOAD PARCEL_MEDIA_COMMAND_URL PASSIVE +\ PAYMENT_INFO_ON_FILE PAYMENT_INFO_USED PAY_DEFAULT PAY_HIDE PERM_ALL PERM_COPY +\ PERM_MODIFY PERM_MOVE PERM_TRANSFER PERMISSION_ATTACH PERMISSION_CHANGE_LINKS +\ PERMISSION_CONTROL_CAMERA PERMISSION_DEBIT PERMISSION_TAKE_CONTROLS +\ PERMISSION_TRACK_CAMERA PERMISSION_TRIGGER_ANIMATION PI PI_BY_TWO PING_PONG +\ PRIM_BUMP_BARK PRIM_BUMP_BLOBS PRIM_BUMP_BRICKS PRIM_BUMP_BRIGHT +\ PRIM_BUMP_CHECKER PRIM_BUMP_CONCRETE PRIM_BUMP_DARK PRIM_BUMP_DISKS +\ PRIM_BUMP_GRAVEL PRIM_BUMP_LARGETILE PRIM_BUMP_NONE PRIM_BUMP_SHINY +\ PRIM_BUMP_SIDING PRIM_BUMP_STONE PRIM_BUMP_STUCCO PRIM_BUMP_SUCTION +\ PRIM_BUMP_TILE PRIM_BUMP_WEAVE PRIM_BUMP_WOOD PRIM_CAST_SHADOWS PRIM_COLOR +\ PRIM_FLEXIBLE PRIM_FULLBRIGHT PRIM_HOLE_CIRCLE PRIM_HOLE_DEFAULT +\ PRIM_HOLE_SQUARE PRIM_HOLE_TRIANGLE PRIM_MATERIAL PRIM_MATERIAL_FLESH +\ PRIM_MATERIAL_GLASS PRIM_MATERIAL_LIGHT PRIM_MATERIAL_METAL +\ PRIM_MATERIAL_PLASTIC PRIM_MATERIAL_RUBBER PRIM_MATERIAL_STONE +\ PRIM_MATERIAL_WOOD PRIM_PHANTOM PRIM_PHYSICS PRIM_POINT_LIGHT PRIM_POSITION +\ PRIM_ROTATION PRIM_SCULPT_TYPE_CYLINDER PRIM_SCULPT_TYPE_PLANE +\ PRIM_SCULPT_TYPE_SPHERE PRIM_SCULPT_TYPE_TORUS PRIM_SHINY_HIGH PRIM_SHINY_LOW +\ PRIM_SHINY_MEDIUM PRIM_SHINY_NONE PRIM_SIZE PRIM_TEMP_ON_REZ PRIM_TEXGEN +\ PRIM_TEXGEN_DEFAULT PRIM_TEXGEN_PLANAR PRIM_TEXTURE PRIM_TYPE PRIM_TYPE_BOX +\ PRIM_TYPE_BOX PRIM_TYPE_CYLINDER PRIM_TYPE_CYLINDER PRIM_TYPE_LEGACY +\ PRIM_TYPE_PRISM PRIM_TYPE_PRISM PRIM_TYPE_RING PRIM_TYPE_SCULPT +\ PRIM_TYPE_SPHERE PRIM_TYPE_SPHERE PRIM_TYPE_TORUS PRIM_TYPE_TORUS +\ PRIM_TYPE_TUBE PRIM_TYPE_TUBE PSYS_PART_BEAM_MASK PSYS_PART_BOUNCE_MASK +\ PSYS_PART_DEAD_MASK PSYS_PART_EMISSIVE_MASK PSYS_PART_END_ALPHA +\ PSYS_PART_END_COLOR PSYS_PART_END_SCALE PSYS_PART_FLAGS +\ PSYS_PART_FOLLOW_SRC_MASK PSYS_PART_FOLLOW_VELOCITY_MASK +\ PSYS_PART_INTERP_COLOR_MASK PSYS_PART_INTERP_SCALE_MASK PSYS_PART_MAX_AGE +\ PSYS_PART_RANDOM_ACCEL_MASK PSYS_PART_RANDOM_VEL_MASK PSYS_PART_START_ALPHA +\ PSYS_PART_START_COLOR PSYS_PART_START_SCALE PSYS_PART_TARGET_LINEAR_MASK +\ PSYS_PART_TARGET_POS_MASK PSYS_PART_TRAIL_MASK PSYS_PART_WIND_MASK +\ PSYS_SRC_ACCEL PSYS_SRC_ANGLE_BEGIN PSYS_SRC_ANGLE_END +\ PSYS_SRC_BURST_PART_COUNT PSYS_SRC_BURST_RADIUS PSYS_SRC_BURST_RATE +\ PSYS_SRC_BURST_SPEED_MAX PSYS_SRC_BURST_SPEED_MIN PSYS_SRC_INNERANGLE +\ PSYS_SRC_MAX_AGE PSYS_SRC_OMEGA PSYS_SRC_OUTERANGLE PSYS_SRC_PATTERN +\ PSYS_SRC_PATTERN_ANGLE PSYS_SRC_PATTERN_ANGLE_CONE +\ PSYS_SRC_PATTERN_ANGLE_CONE_EMPTY PSYS_SRC_PATTERN_DROP +\ PSYS_SRC_PATTERN_EXPLODE PSYS_SRC_TARGET_KEY PSYS_SRC_TEXTURE PUBLIC_CHANNEL +\ RAD_TO_DEG REGION_FLAG_ALLOW_DAMAGE REGION_FLAG_ALLOW_DIRECT_TELEPORT +\ REGION_FLAG_BLOCK_FLY REGION_FLAG_BLOCK_TERRAFORM +\ REGION_FLAG_DISABLE_COLLISIONS REGION_FLAG_DISABLE_PHYSICS +\ REGION_FLAG_FIXED_SUN REGION_FLAG_RESTRICT_PUSHOBJECT REGION_FLAG_SANDBOX +\ REMOTE_DATA_CHANNEL REMOTE_DATA_REPLY REMOTE_DATA_REQUEST REVERSE ROTATE SCALE +\ SCRIPTED SMOOTH SQRT2 STATUS_BLOCK_GRAB STATUS_CAST_SHADOWS STATUS_DIE_AT_EDGE +\ STATUS_PHANTOM STATUS_PHYSICS STATUS_RETURN_AT_EDGE STATUS_ROTATE_X +\ STATUS_ROTATE_Y STATUS_ROTATE_Z STATUS_SANDBOX STRING_TRIM STRING_TRIM_HEAD +\ STRING_TRIM_TAIL TRUE TWO_PI TYPE_FLOAT TYPE_INTEGER TYPE_INVALID TYPE_KEY +\ TYPE_ROTATION TYPE_STRING TYPE_VECTOR VEHICLE_ANGULAR_DEFLECTION_EFFICIENCY +\ VEHICLE_ANGULAR_DEFLECTION_TIMESCALE VEHICLE_ANGULAR_FRICTION_TIMESCALE +\ VEHICLE_ANGULAR_MOTOR_DECAY_TIMESCALE VEHICLE_ANGULAR_MOTOR_DIRECTION +\ VEHICLE_ANGULAR_MOTOR_TIMESCALE VEHICLE_BANKING_EFFICIENCY VEHICLE_BANKING_MIX +\ VEHICLE_BANKING_TIMESCALE VEHICLE_BUOYANCY VEHICLE_FLAG_CAMERA_DECOUPLED +\ VEHICLE_FLAG_HOVER_GLOBAL_HEIGHT VEHICLE_FLAG_HOVER_TERRAIN_ONLY +\ VEHICLE_FLAG_HOVER_UP_ONLY VEHICLE_FLAG_HOVER_WATER_ONLY +\ VEHICLE_FLAG_LIMIT_MOTOR_UP VEHICLE_FLAG_LIMIT_ROLL_ONLY +\ VEHICLE_FLAG_MOUSELOOK_BANK VEHICLE_FLAG_MOUSELOOK_STEER +\ VEHICLE_FLAG_NO_DEFLECTION_UP VEHICLE_HOVER_EFFICIENCY VEHICLE_HOVER_HEIGHT +\ VEHICLE_HOVER_TIMESCALE VEHICLE_LINEAR_DEFLECTION_EFFICIENCY +\ VEHICLE_LINEAR_DEFLECTION_TIMESCALE VEHICLE_LINEAR_FRICTION_TIMESCALE +\ VEHICLE_LINEAR_MOTOR_DECAY_TIMESCALE VEHICLE_LINEAR_MOTOR_TIMESCALE +\ VEHICLE_LINEAR_MOTOR_DIRECTION VEHICLE_LINEAR_MOTOR_OFFSET +\ VEHICLE_REFERENCE_FRAME VEHICLE_TYPE_AIRPLANE VEHICLE_TYPE_BALLOON +\ VEHICLE_TYPE_BOAT VEHICLE_TYPE_CAR VEHICLE_TYPE_NONE VEHICLE_TYPE_SLED +\ VEHICLE_VERTICAL_ATTRACTION_EFFICIENCY VEHICLE_VERTICAL_ATTRACTION_TIMESCALE +\ ZERO_ROTATION ZERO_VECTOR + +" Events +syn keyword lslEvent +\ attach at_rot_target at_target changed collision collision_end collision_start +\ control dataserver email http_response land_collision land_collision_end +\ land_collision_start link_message listen money moving_end moving_start +\ not_at_rot_target no_sensor object_rez on_rez remote_data run_time_permissions +\ sensor state_entry state_exit timer touch touch_end touch_start not_at_target + +" Functions +syn keyword lslFunction +\ llAbs llAcos llAddToLandBanList llAddToLandPassList llAdjustSoundVolume +\ llAllowInventoryDrop llAngleBetween llApplyImpulse llApplyRotationalImpulse +\ llAsin llAtan2 llAttachToAvatar llAvatarOnSitTarget llAxes2Rot llAxisAngle2Rot +\ llBase64ToInteger llBase64ToString llBreakAllLinks llBreakLink llCSV2List +\ llCeil llClearCameraParams llCloseRemoteDataChannel llCloud llCollisionFilter +\ llCollisionSound llCollisionSprite llCos llCreateLink llDeleteSubList +\ llDeleteSubString llDetachFromAvatar llDetectedGrab llDetectedGroup +\ llDetectedKey llDetectedLinkNumber llDetectedName llDetectedOwner +\ llDetectedPos llDetectedRot llDetectedType llDetectedVel llDialog llDie +\ llDumpList2String llEdgeOfWorld llEjectFromLand llEmail llEscapeURL +\ llEuler2Rot llFabs llFloor llForceMouselook llFrand llGetAccel llGetAgentInfo +\ llGetAgentSize llGetAlpha llGetAndResetTime llGetAnimation llGetAnimationList +\ llGetAttached llGetBoundingBox llGetCameraPos llGetCameraRot llGetCenterOfMass +\ llGetColor llGetCreator llGetDate llGetEnergy llGetForce llGetFreeMemory +\ llGetGMTclock llGetGeometricCenter llGetInventoryCreator llGetInventoryKey +\ llGetInventoryName llGetInventoryNumber llGetInventoryPermMask +\ llGetInventoryType llGetKey llGetLandOwnerAt llGetLinkKey llGetLinkName +\ llGetLinkNumber llGetListEntryType llGetListLength llGetLocalPos llGetLocalRot +\ llGetMass llGetNextEmail llGetNotecardLine llGetNumberOfNotecardLines +\ llGetNumberOfPrims llGetNumberOfSides llGetObjectDesc llGetObjectDetails +\ llGetObjectMass llGetObjectName llGetObjectPermMask llGetObjectPrimCount +\ llGetOmega llGetOwner llGetOwnerKey llGetParcelDetails llGetParcelFlags +\ llGetParcelMaxPrims llGetParcelPrimCount llGetParcelPrimOwners +\ llGetPermissions llGetPermissionsKey llGetPos llGetPrimitiveParams +\ llGetRegionCorner llGetRegionFPS llGetRegionFlags llGetRegionName +\ llGetRegionTimeDilation llGetRootPosition llGetRootRotation llGetRot +\ llGetScale llGetScriptName llGetScriptState llGetSimulatorHostname +\ llGetStartParameter llGetStatus llGetSubString llGetSunDirection llGetTexture +\ llGetTextureOffset llGetTextureRot llGetTextureScale llGetTime llGetTimeOfDay +\ llGetTimestamp llGetTorque llGetUnixTime llGetVel llGetWallclock +\ llGiveInventory llGiveInventoryList llGiveMoney llGodLikeRezObject llGround +\ llGroundContour llGroundNormal llGroundRepel llGroundSlope llHTTPRequest +\ llInsertString llInstantMessage llIntegerToBase64 llKey2Name llList2CSV +\ llList2Float llList2Integer llList2Key llList2List llList2ListStrided +\ llList2Rot llList2String llList2Vector llListFindList llListInsertList +\ llListRandomize llListReplaceList llListSort llListStatistics llListen +\ llListenControl llListenRemove llLoadURL llLog llLog10 llLookAt llLoopSound +\ llLoopSoundMaster llLoopSoundSlave llMD5String llMakeExplosion llMakeFire +\ llMakeFountain llMakeSmoke llMapDestination llMessageLinked llMinEventDelay +\ llModPow llModifyLand llMoveToTarget llOffsetTexture llOpenRemoteDataChannel +\ llOverMyLand llOwnerSay llParcelMediaCommandList llParcelMediaQuery +\ llParseString2List llParseStringKeepNulls llParticleSystem llPassCollisions +\ llPassTouches llPlaySound llPlaySoundSlave llPointAt llPow llPreloadSound +\ llPushObject llRefreshPrimURL llRegionSay llReleaseCamera llReleaseControls +\ llRemoteDataReply llRemoteDataSetRegion llRemoteLoadScript +\ llRemoteLoadScriptPin llRemoveFromLandBanList llRemoveFromLandPassList +\ llRemoveInventory llRemoveVehicleFlags llRequestAgentData +\ llRequestInventoryData llRequestPermissions llRequestSimulatorData +\ llResetLandBanList llResetLandPassList llResetOtherScript llResetScript +\ llResetTime llRezAtRoot llRezObject llRot2Angle llRot2Axis llRot2Euler +\ llRot2Fwd llRot2Left llRot2Up llRotBetween llRotLookAt llRotTarget +\ llRotTargetRemove llRotateTexture llRound llSameGroup llSay llScaleTexture +\ llScriptDanger llSendRemoteData llSensor llSensorRemove llSensorRepeat +\ llSetAlpha llSetBuoyancy llSetCameraAtOffset llSetCameraEyeOffset +\ llSetCameraParams llSetClickAction llSetColor llSetDamage llSetForce +\ llSetForceAndTorque llSetHoverHeight llSetInventoryPermMask llSetLinkAlpha +\ llSetLinkColor llSetLinkPrimitiveParams llSetLinkTexture llSetLocalRot +\ llSetObjectDesc llSetObjectName llSetObjectPermMask llSetParcelMusicURL +\ llSetPayPrice llSetPos llSetPrimURL llSetPrimitiveParams +\ llSetRemoteScriptAccessPin llSetRot llSetScale llSetScriptState llSetSitText +\ llSetSoundQueueing llSetSoundRadius llSetStatus llSetText llSetTexture +\ llSetTextureAnim llSetTimerEvent llSetTorque llSetTouchText llSetVehicleFlags +\ llSetVehicleFloatParam llSetVehicleRotationParam llSetVehicleType +\ llSetVehicleVectorParam llShout llSin llSitTarget llSleep llSound +\ llSoundPreload llSqrt llStartAnimation llStopAnimation llStopHover +\ llStopLookAt llStopMoveToTarget llStopPointAt llStopSound llStringLength +\ llStringToBase64 llStringTrim llSubStringIndex llTakeCamera llTakeControls +\ llTan llTarget llTargetOmega llTargetRemove llTeleportAgentHome llToLower +\ llToUpper llTriggerSound llTriggerSoundLimited llUnSit llUnescapeURL llVecDist +\ llVecMag llVecNorm llVolumeDetect llWater llWhisper llWind llXorBase64Strings +\ llXorBase64StringsCorrect + +" Operators +syn match lslOperator +[-!%&*+/<=>^|~]+ display + +" Numbers +syn match lslNumber +-\=\%(\<\d\+\|\%(\<\d\+\)\=\.\d\+\)\%([Ee][-+]\=\d\+\)\=\>\|\<0x\x\+\>+ display + +" Vectors and rotations +syn match lslVectorRot +<[-\t +.0-9A-Za-z_]\+\%(,[-\t +.0-9A-Za-z_]\+\)\{2,3}>+ contains=lslNumber display + +" Vector and rotation properties +syn match lslProperty +\.\@<=[sxyz]\>+ display + +" Strings +syn region lslString start=+"+ skip=+\\.+ end=+"+ contains=lslSpecialChar,@Spell +syn match lslSpecialChar +\\.+ contained display + +" Keys +syn match lslKey +"\x\{8}-\x\{4}-\x\{4}-\x\{4}-\x\{12}"+ display + +" Parentheses, braces and brackets +syn match lslBlock +[][(){}]+ display + +" Typecast operators +syn match lslTypecast +(\%(float\|integer\|key\|list\|quaternion\|rotation\|string\|vector\))+ contains=lslType display + +" Comments +syn match lslComment +//.*+ contains=@Spell + +" Define the default highlighting. +hi def link lslKeyword Keyword +hi def link lslType Type +hi def link lslLabel Label +hi def link lslConstant Constant +hi def link lslEvent PreProc +hi def link lslFunction Function +hi def link lslOperator Operator +hi def link lslNumber Number +hi def link lslVectorRot Special +hi def link lslProperty Identifier +hi def link lslString String +hi def link lslSpecialChar SpecialChar +hi def link lslKey Special +hi def link lslBlock Special +hi def link lslTypecast Operator +hi def link lslComment Comment + +let b:current_syntax = "lsl" + +" vim: ts=8
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/syntax/mmp.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,53 @@ +" Vim syntax file +" Language: Symbian meta-makefile definition (MMP) +" Maintainer: Ron Aaron <ron@ronware.org> +" Last Change: 2007/11/07 +" URL: http://ronware.org/wiki/vim/mmp +" Filetypes: *.mmp + +" For version 5.x: Clear all syntax items +" For version 6.x: Quit when a syntax file was already loaded +if version < 600 + syntax clear +elseif exists("b:current_syntax") + finish +endif + +syn case ignore + +syn match mmpComment "//.*" +syn region mmpComment start="/\*" end="\*\/" + +syn keyword mmpKeyword aif asspabi assplibrary aaspexports baseaddress +syn keyword mmpKeyword debuglibrary deffile document epocheapsize +syn keyword mmpKeyword epocprocesspriority epocstacksize exportunfrozen +syn keyword mmpStorage lang library linkas macro nostrictdef option +syn keyword mmpStorage resource source sourcepath srcdbg startbitmap +syn keyword mmpStorage start end staticlibrary strictdepend systeminclude +syn keyword mmpStorage systemresource target targettype targetpath uid +syn keyword mmpStorage userinclude win32_library + +syn match mmpIfdef "\#\(include\|ifdef\|ifndef\|if\|endif\|else\|elif\)" + +syn match mmpNumber "\d+" +syn match mmpNumber "0x\x\+" + + +" Define the default highlighting. +" For version 5.7 and earlier: only when not done already +" For version 5.8 and later: only when an item doesn't have highlighting yet +if !exists("did_mmp_syntax_inits") + let did_mmp_syntax_inits=1 + + hi def link mmpComment Comment + hi def link mmpKeyword Keyword + hi def link mmpStorage StorageClass + hi def link mmpString String + hi def link mmpNumber Number + hi def link mmpOrdinal Operator + hi def link mmpIfdef PreCondit +endif + +let b:current_syntax = "mmp" + +" vim: ts=8
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/syntax/msmessages.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,135 @@ +" Vim syntax file +" Language: MS Message Text files (*.mc) +" Maintainer: Kevin Locke <kwl7@cornell.edu> +" Last Change: 2008 April 09 +" Location: http://kevinlocke.name/programs/vim/syntax/msmessages.vim + +" See format description at <http://msdn2.microsoft.com/en-us/library/aa385646.aspx> +" This file is based on the rc.vim and c.vim + +" For version 5.x: Clear all syntax items +" For version 6.x: Quit when a syntax file was already loaded +if version < 600 + syntax clear +elseif exists("b:current_syntax") + finish +endif + +" Common MS Messages keywords +syn case ignore +syn keyword msmessagesIdentifier MessageIdTypedef +syn keyword msmessagesIdentifier SeverityNames +syn keyword msmessagesIdentifier FacilityNames +syn keyword msmessagesIdentifier LanguageNames +syn keyword msmessagesIdentifier OutputBase + +syn keyword msmessagesIdentifier MessageId +syn keyword msmessagesIdentifier Severity +syn keyword msmessagesIdentifier Facility +syn keyword msmessagesIdentifier OutputBase + +syn match msmessagesIdentifier /\<SymbolicName\>/ nextgroup=msmessagesIdentEq skipwhite +syn match msmessagesIdentEq transparent /=/ nextgroup=msmessagesIdentDef skipwhite contained +syn match msmessagesIdentDef display /\w\+/ contained +" Note: The Language keyword is highlighted as part of an msmessagesLangEntry + +" Set value +syn case match +syn region msmessagesSet start="(" end=")" transparent fold contains=msmessagesName keepend +syn match msmessagesName /\w\+/ nextgroup=msmessagesSetEquals skipwhite contained +syn match msmessagesSetEquals /=/ display transparent nextgroup=msmessagesNumVal skipwhite contained +syn match msmessagesNumVal display transparent "\<\d\|\.\d" contains=msmessagesNumber,msmessagesFloat,msmessagesOctalError,msmessagesOctal nextgroup=msmessagesValSep +syn match msmessagesValSep /:/ display nextgroup=msmessagesNameDef contained +syn match msmessagesNameDef /\w\+/ display contained + + +" Comments are converted to C source (by removing leading ;) +" So we highlight the comments as C +syn include @msmessagesC syntax/c.vim +unlet b:current_syntax +syn region msmessagesCComment matchgroup=msmessagesComment start=/;/ end=/$/ contains=@msmessagesC keepend + +" String and Character constants +" Highlight special characters (those which have a escape) differently +syn case ignore +syn region msmessagesLangEntry start=/\<Language\>\s*=\s*\S\+\s*$/hs=e+1 end=/^\./ contains=msmessagesFormat,msmessagesLangEntryEnd,msmessagesLanguage keepend +syn match msmessagesLanguage /\<Language\(\s*=\)\@=/ contained +syn match msmessagesLangEntryEnd display /^\./ contained +syn case match +syn match msmessagesFormat display /%[1-9]\d\?\(![-+0 #]*\d*\(\.\d\+\)\?\(h\|l\|ll\|I\|I32\|I64\)\?[aAcCdeEfgGinopsSuxX]!\)\?/ contained +syn match msmessagesFormat display /%[0.%\\br]/ contained +syn match msmessagesFormat display /%!\(\s\)\@=/ contained + +" Integer number, or floating point number without a dot and with "f". +" Copied from c.vim +syn case ignore +"(long) integer +syn match msmessagesNumber display contained "\d\+\(u\=l\{0,2}\|ll\=u\)\>" +"hex number +syn match msmessagesNumber display contained "\<0x\x\+\(u\=l\{0,2}\|ll\=u\)\>" +" Flag the first zero of an octal number as something special +syn match msmessagesOctal display contained "\<0\o\+\(u\=l\{0,2}\|ll\=u\)\>" contains=msmessagesOctalZero +syn match msmessagesOctalZero display contained "\<0" +" flag an octal number with wrong digits +syn match msmessagesOctalError display contained "\<0\o*[89]\d*" +syn match msmessagesFloat display contained "\d\+f" +"floating point number, with dot, optional exponent +syn match msmessagesFloat display contained "\d\+\.\d*\(e[-+]\=\d\+\)\=[fl]\=" +"floating point number, starting with a dot, optional exponent +syn match msmessagesFloat display contained "\.\d\+\(e[-+]\=\d\+\)\=[fl]\=\>" +"floating point number, without dot, with exponent +syn match msmessagesFloat display contained "\d\+e[-+]\=\d\+[fl]\=\>" +"hexadecimal floating point number, optional leading digits, with dot, with exponent +syn match msmessagesFloat display contained "0x\x*\.\x\+p[-+]\=\d\+[fl]\=\>" +"hexadecimal floating point number, with leading digits, optional dot, with exponent +syn match msmessagesFloat display contained "0x\x\+\.\=p[-+]\=\d\+[fl]\=\>" + +" Types (used in MessageIdTypedef statement) +syn case match +syn keyword msmessagesType int long short char +syn keyword msmessagesType signed unsigned +syn keyword msmessagesType size_t ssize_t sig_atomic_t +syn keyword msmessagesType int8_t int16_t int32_t int64_t +syn keyword msmessagesType uint8_t uint16_t uint32_t uint64_t +syn keyword msmessagesType int_least8_t int_least16_t int_least32_t int_least64_t +syn keyword msmessagesType uint_least8_t uint_least16_t uint_least32_t uint_least64_t +syn keyword msmessagesType int_fast8_t int_fast16_t int_fast32_t int_fast64_t +syn keyword msmessagesType uint_fast8_t uint_fast16_t uint_fast32_t uint_fast64_t +syn keyword msmessagesType intptr_t uintptr_t +syn keyword msmessagesType intmax_t uintmax_t +" Add some Windows datatypes that will be common in msmessages files +syn keyword msmessagesType BYTE CHAR SHORT SIZE_T SSIZE_T TBYTE TCHAR UCHAR USHORT +syn keyword msmessagesType DWORD DWORDLONG DWORD32 DWORD64 +syn keyword msmessagesType INT INT32 INT64 UINT UINT32 UINT64 +syn keyword msmessagesType LONG LONGLONG LONG32 LONG64 +syn keyword msmessagesType ULONG ULONGLONG ULONG32 ULONG64 + +" Sync to language entries, since they should be most common +syn sync match msmessagesLangSync grouphere msmessagesLangEntry "\<Language\s*=" +syn sync match msmessagesLangEndSync grouphere NONE "^\." + +" Define the default highlighting. +hi def link msmessagesNumber Number +hi def link msmessagesOctal Number +hi def link msmessagesFloat Float +hi def link msmessagesOctalError msmessagesError +hi def link msmessagesSetError msmessagesError +hi def link msmessagesError Error +hi def link msmessagesLangEntry String +hi def link msmessagesLangEntryEnd Special +hi def link msmessagesComment Comment +hi def link msmessagesFormat msmessagesSpecial +hi def link msmessagesSpecial SpecialChar + +hi def link msmessagesType Type +hi def link msmessagesIdentifier Identifier +hi def link msmessagesLanguage msmessagesIdentifier +hi def link msmessagesName msmessagesIdentifier +hi def link msmessagesNameDef Macro +hi def link msmessagesIdentDef Macro +hi def link msmessagesValSep Special +hi def link msmessagesNameErr Error + +let b:current_syntax = "msmessages" + +" vim: ts=8
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/syntax/pdf.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,73 @@ +" Vim syntax file +" Language: PDF +" Maintainer: Tim Pope <vimNOSPAM@tpope.info> +" Last Change: 2007 Dec 16 + +if exists("b:current_syntax") + finish +endif + +if !exists("main_syntax") + let main_syntax = 'pdf' +endif + +syn include @pdfXML syntax/xml.vim + +syn case match + +syn cluster pdfObjects contains=pdfBoolean,pdfConstant,pdfNumber,pdfFloat,pdfName,pdfHexString,pdfString,pdfArray,pdfHash,pdfReference,pdfComment +syn keyword pdfBoolean true false contained +syn keyword pdfConstant null contained +syn match pdfNumber "[+-]\=\<\d\+\>" +syn match pdfFloat "[+-]\=\<\%(\d\+\.\|\d*\.\d\+\)\>" contained + +syn match pdfNameError "#\X\|#\x\X\|#00" contained containedin=pdfName +syn match pdfSpecialChar "#\x\x" contained containedin=pdfName +syn match pdfName "/[^[:space:]\[\](){}<>/]*" contained +syn match pdfHexError "[^[:space:][:xdigit:]<>]" contained +"syn match pdfHexString "<\s*\x[^<>]*\x\s*>" contained contains=pdfHexError +"syn match pdfHexString "<\s*\x\=\s*>" contained +syn region pdfHexString matchgroup=pdfDelimiter start="<<\@!" end=">" contained contains=pdfHexError +syn match pdfStringError "\\." contained containedin=pdfString +syn match pdfSpecialChar "\\\%(\o\{1,3\}\|[nrtbf()\\]\)" contained containedin=pdfString +syn region pdfString matchgroup=pdfDelimiter start="\\\@<!(" end="\\\@<!)" contains=pdfString + +syn region pdfArray matchgroup=pdfOperator start="\[" end="\]" contains=@pdfObjects contained +syn region pdfHash matchgroup=pdfOperator start="<<" end=">>" contains=@pdfObjects contained +syn match pdfReference "\<\d\+\s\+\d\+\s\+R\>" +"syn keyword pdfOperator R contained containedin=pdfReference + +syn region pdfObject matchgroup=pdfType start="\<obj\>" end="\<endobj\>" contains=@pdfObjects +syn region pdfObject matchgroup=pdfType start="\<obj\r\=\n" end="\<endobj\>" contains=@pdfObjects fold + +" Do these twice. The ones with only newlines are foldable +syn region pdfStream matchgroup=pdfType start="\<stream\r\=\n" end="endstream\s*\%(\r\|\n\|\r\n\)" contained containedin=pdfObject +syn region pdfXMLStream matchgroup=pdfType start="\<stream\r\=\n\_s*\%(<?\)\@=" end="endstream\s*\%(\r\|\n\|\r\n\)" contained containedin=pdfObject contains=@pdfXML +syn region pdfStream matchgroup=pdfType start="\<stream\n" end="endstream\s*\%(\r\|\n\|\r\n\)" contained containedin=pdfObject fold +syn region pdfXMLStream matchgroup=pdfType start="\<stream\n\_s*\%(<?\)\@=" end="endstream\s*\%(\r\|\n\|\r\n\)" contained containedin=pdfObject contains=@pdfXML fold + +syn region pdfPreProc start="\<xref\%(\r\|\n\|\r\n\)" end="^trailer\%(\r\|\n\|\r\n\)" skipwhite skipempty nextgroup=pdfHash contains=pdfNumber fold +syn keyword pdfPreProc startxref +syn match pdfComment "%.*\%(\r\|\n\)" contains=pdfPreProc +syn match pdfPreProc "^%\%(%EOF\|PDF-\d\.\d\)\(\r\|\n\)" + +hi def link pdfOperator Operator +hi def link pdfNumber Number +hi def link pdfFloat Float +hi def link pdfBoolean Boolean +hi def link pdfConstant Constant +hi def link pdfName Identifier +hi def link pdfNameError pdfStringError +hi def link pdfHexString pdfString +hi def link pdfHexError pdfStringError +hi def link pdfString String +hi def link pdfStringError Error +hi def link pdfSpecialChar SpecialChar +hi def link pdfDelimiter Delimiter +hi def link pdfType Type +hi def link pdfReference Tag +hi def link pdfStream NonText +hi def link pdfPreProc PreProc +hi def link pdfComment Comment + +let b:current_syntax = "pdf"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/syntax/promela.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,56 @@ +" Vim syntax file +" Language: ProMeLa +" Maintainer: Maurizio Tranchero <maurizio.tranchero@polito.it> - <maurizio.tranchero@gmail.com> +" First Release: Mon Oct 16 08:49:46 CEST 2006 +" Last Change: Thu Aug 7 21:22:48 CEST 2008 +" Version: 0.5 + +" For version 5.x: Clear all syntax items +" For version 6.x: Quit when a syntax file was already loaded +if version < 600 + syntax clear +elseif exists("b:current_syntax") + finish +endif + +" case is significant +" syn case ignore +" ProMeLa Keywords +syn keyword promelaStatement proctype if else while chan do od fi break goto unless +syn keyword promelaStatement active assert label atomic +syn keyword promelaFunctions skip timeout run +syn keyword promelaTodo contained TODO +" ProMeLa Types +syn keyword promelaType bit bool byte short int +" Operators and special characters +syn match promelaOperator "!" +syn match promelaOperator "?" +syn match promelaOperator "->" +syn match promelaOperator "=" +syn match promelaOperator "+" +syn match promelaOperator "*" +syn match promelaOperator "/" +syn match promelaOperator "-" +syn match promelaOperator "<" +syn match promelaOperator ">" +syn match promelaOperator "<=" +syn match promelaOperator ">=" +syn match promelaSpecial "\[" +syn match promelaSpecial "\]" +syn match promelaSpecial ";" +syn match promelaSpecial "::" +" ProMeLa Comments +syn region promelaComment start="/\*" end="\*/" contains=promelaTodo,@Spell +syn match promelaComment "//.*" contains=promelaTodo,@Spell + +" Class Linking +hi def link promelaStatement Statement +hi def link promelaType Type +hi def link promelaComment Comment +hi def link promelaOperator Type +hi def link promelaSpecial Special +hi def link promelaFunctions Special +hi def link promelaString String +hi def link promelaTodo Todo + +let b:current_syntax = "promela"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/syntax/reva.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,191 @@ +" Vim syntax file +" Language: Reva Forth +" Version: 7.1 +" Last Change: 2008/01/11 +" Maintainer: Ron Aaron <ron@ronware.org> +" URL: http://ronware.org/reva/ +" Filetypes: *.rf *.frt +" NOTE: You should also have the ftplugin/reva.vim file to set 'isk' + +" For version 5.x: Clear all syntax items and don't load +" For version 6.x: Quit when a syntax file was already loaded +if version < 600 + syntax clear + echo "Reva syntax file requires version 6.0 or later of vim!" + finish +elseif exists("b:current_syntax") + finish +endif + +syn clear + +" Synchronization method +syn sync ccomment +syn sync maxlines=100 + + +syn case ignore +" Some special, non-FORTH keywords +"syn keyword revaTodo contained todo fixme bugbug todo: bugbug: note: +syn match revaTodo contained '\(todo\|fixme\|bugbug\|note\)[:]*' +syn match revaTodo contained 'copyright\(\s(c)\)\=\(\s[0-9]\{2,4}\)\=' + +syn match revaHelpDesc '\S.*' contained +syn match revaHelpStuff '\<\(def\|stack\|ctx\|ver\|os\|related\):\s.*' +syn region revaHelpStuff start='\<desc:\>' end='^\S' contains=revaHelpDesc +syn region revaEOF start='\<|||\>' end='{$}' contains=revaHelpStuff + + +syn case match +" basic mathematical and logical operators +syn keyword revaoperators + - * / mod /mod negate abs min max umin umax +syn keyword revaoperators and or xor not invert 1+ 1- +syn keyword revaoperators m+ */ */mod m* um* m*/ um/mod fm/mod sm/rem +syn keyword revaoperators d+ d- dnegate dabs dmin dmax > < = >> << u< <> + + +" stack manipulations +syn keyword revastack drop nip dup over tuck swap rot -rot ?dup pick roll +syn keyword revastack 2drop 2nip 2dup 2over 2swap 2rot 3drop +syn keyword revastack >r r> r@ rdrop +" syn keyword revastack sp@ sp! rp@ rp! + +" address operations +syn keyword revamemory @ ! +! c@ c! 2@ 2! align aligned allot allocate here free resize +syn keyword revaadrarith chars char+ cells cell+ cell cell- 2cell+ 2cell- 3cell+ 4cell+ +syn keyword revamemblks move fill + +" conditionals +syn keyword revacond if else then =if >if <if <>if if0 ;; catch throw + +" iterations +syn keyword revaloop while repeat until again +syn keyword revaloop do loop i j leave unloop skip more + +" new words +syn match revaColonDef '\<noname:\|\<:\s+' contains=revaComment +syn keyword revaEndOfColonDef ; ;inline +syn keyword revadefine constant constant, variable create variable, +syn keyword revadefine user value to +to defer! defer@ defer is does> immediate +syn keyword revadefine compile literal ' ['] + +" Built in words +com! -nargs=+ Builtin syn keyword revaBuiltin <args> +Builtin execute ahead interp bye >body here pad words make +Builtin accept close cr creat delete ekey emit fsize ioerr key? +Builtin mtime open/r open/rw read rename seek space spaces stat +Builtin tell type type_ write (seek) (argv) (save) 0; 0drop; +Builtin >class >lz >name >xt alias alias: appname argc asciiz, asciizl, +Builtin body> clamp depth disassemble findprev fnvhash getenv here, +Builtin iterate last! last@ later link lz> lzmax os parse/ peek +Builtin peek-n pop prior push put rp@ rpick save setenv slurp +Builtin stack-empty? stack-iterate stack-size stack: THROW_BADFUNC +Builtin THROW_BADLIB THROW_GENERIC used xt>size z, +Builtin +lplace +place -chop /char /string bounds c+lplace c+place +Builtin chop cmp cmpi count lc lcount lplace place quote rsplit search split +Builtin zcount zt \\char +Builtin chdir g32 k32 u32 getcwd getpid hinst osname stdin stdout +Builtin (-lib) (bye) (call) (else) (find) (func) (here) (if (lib) (s0) (s^) +Builtin (to~) (while) >in >rel ?literal appstart cold compiling? context? d0 default_class +Builtin defer? dict dolstr dostr find-word h0 if) interp isa onexit +Builtin onstartup pdoes pop>ebx prompt rel> rp0 s0 src srcstr state str0 then,> then> tib +Builtin tp vector vector! word? xt? .ver revaver revaver# && '' 'constant 'context +Builtin 'create 'defer 'does 'forth 'inline 'macro 'macront 'notail 'value 'variable +Builtin (.r) (context) (create) (header) (hide) (inline) (p.r) (words~) (xfind) +Builtin ++ -- , -2drop -2nip -link -swap . .2x .classes .contexts .funcs .libs .needs .r +Builtin .rs .x 00; 0do 0if 1, 2, 3, 2* 2/ 2constant 2variable 3dup 4dup ;then >base >defer +Builtin >rr ? ?do @execute @rem appdir argv as back base base! between chain cleanup-libs +Builtin cmove> context?? ctrl-c ctx>name data: defer: defer@def dictgone do_cr eleave +Builtin endcase endof eval exception exec false find func: header heapgone help help/ +Builtin hex# hide inline{ last lastxt lib libdir literal, makeexename mnotail ms ms@ +Builtin newclass noop nosavedict notail nul of off on p: padchar parse parseln +Builtin parsews rangeof rdepth remains reset reva revaused rol8 rr> scratch setclass sp +Builtin strof super> temp time&date true turnkey? undo vfunc: w! w@ +Builtin xchg xchg2 xfind xt>name xwords { {{ }} } _+ _1+ _1- pathsep case \|| +" p[ [''] [ ['] + + +" debugging +syn keyword revadebug .s dump see + +" basic character operations +" syn keyword revaCharOps (.) CHAR EXPECT FIND WORD TYPE -TRAILING EMIT KEY +" syn keyword revaCharOps KEY? TIB CR +" syn match revaCharOps '\<char\s\S\s' +" syn match revaCharOps '\<\[char\]\s\S\s' +" syn region revaCharOps start=+."\s+ skip=+\\"+ end=+"+ + +" char-number conversion +syn keyword revaconversion s>d >digit digit> >single >double >number >float + +" contexts +syn keyword revavocs forth macro inline +syn keyword revavocs context: +syn match revavocs /\<\~[^~ ]*/ +syn match revavocs /[^~ ]*\~\>/ + +" numbers +syn keyword revamath decimal hex base binary octal +syn match revainteger '\<-\=[0-9.]*[0-9.]\+\>' +" recognize hex and binary numbers, the '$' and '%' notation is for greva +syn match revainteger '\<\$\x*\x\+\>' " *1* --- dont't mess +syn match revainteger '\<\x*\d\x*\>' " *2* --- this order! +syn match revainteger '\<%[0-1]*[0-1]\+\>' +syn match revainteger "\<'.\>" + +" Strings +" syn region revaString start=+\.\?\"+ end=+"+ end=+$+ +syn region revaString start=/"/ skip=/\\"/ end=/"/ + +" Comments +syn region revaComment start='\\S\s' end='.*' contains=revaTodo +syn match revaComment '\.(\s[^)]\{-})' contains=revaTodo +syn region revaComment start='(\s' skip='\\)' end=')' contains=revaTodo +syn match revaComment '(\s[^\-]*\-\-[^\-]\{-})' contains=revaTodo +syn match revaComment '\<|\s.*$' contains=revaTodo +syn match revaColonDef '\<:m\?\s*[^ \t]\+\>' contains=revaComment + +" Include files +syn match revaInclude '\<\(include\|needs\)\s\+\S\+' + + +" Define the default highlighting. +if !exists("did_reva_syntax_inits") + let did_reva_syntax_inits=1 + " The default methods for highlighting. Can be overriden later. + hi def link revaEOF cIf0 + hi def link revaHelpStuff special + hi def link revaHelpDesc Comment + hi def link revaTodo Todo + hi def link revaOperators Operator + hi def link revaMath Number + hi def link revaInteger Number + hi def link revaStack Special + hi def link revaFStack Special + hi def link revaSP Special + hi def link revaMemory Operator + hi def link revaAdrArith Function + hi def link revaMemBlks Function + hi def link revaCond Conditional + hi def link revaLoop Repeat + hi def link revaColonDef Define + hi def link revaEndOfColonDef Define + hi def link revaDefine Define + hi def link revaDebug Debug + hi def link revaCharOps Character + hi def link revaConversion String + hi def link revaForth Statement + hi def link revaVocs Statement + hi def link revaString String + hi def link revaComment Comment + hi def link revaClassDef Define + hi def link revaEndOfClassDef Define + hi def link revaObjectDef Define + hi def link revaEndOfObjectDef Define + hi def link revaInclude Include + hi def link revaBuiltin Keyword +endif + +let b:current_syntax = "reva" + +" vim: ts=8:sw=4:nocindent:smartindent:
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/syntax/sass.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,56 @@ +" Vim syntax file +" Language: Sass +" Maintainer: Tim Pope <vimNOSPAM@tpope.info> +" Filenames: *.sass + +if exists("b:current_syntax") + finish +endif + +runtime! syntax/css.vim + +syn case ignore + +syn cluster sassCssProperties contains=cssFontProp,cssFontDescriptorProp,cssColorProp,cssTextProp,cssBoxProp,cssGeneratedContentProp,cssPagingProp,cssUIProp,cssRenderProp,cssAuralProp,cssTableProp +syn cluster sassCssAttributes contains=css.*Attr,cssComment,cssValue.*,cssColor,cssURL,cssImportant,cssError,cssStringQ,cssStringQQ,cssFunction,cssUnicodeEscape,cssRenderProp + +syn match sassProperty "^\s*\zs\s\%([[:alnum:]-]\+:\|:[[:alnum:]-]\+\)"hs=s+1 contains=css.*Prop skipwhite nextgroup=sassCssAttribute +syn match sassCssAttribute ".*$" contained contains=@sassCssAttributes,sassConstant +syn match sassConstant "![[:alnum:]_-]\+" +syn match sassConstantAssignment "\%(![[:alnum:]_]\+\s*\)\@<==" nextgroup=sassCssAttribute skipwhite +syn match sassMixin "^=.*" +syn match sassMixing "^\s\+\zs+.*" + +syn match sassEscape "^\s*\zs\\" +syn match sassIdChar "#[[:alnum:]_-]\@=" nextgroup=sassId +syn match sassId "[[:alnum:]_-]\+" contained +syn match sassClassChar "\.[[:alnum:]_-]\@=" nextgroup=sassClass +syn match sassClass "[[:alnum:]_-]\+" contained +syn match sassAmpersand "&" + +" TODO: Attribute namespaces +" TODO: Arithmetic (including strings and concatenation) + +syn region sassInclude start="@import" end=";\|$" contains=cssComment,cssURL,cssUnicodeEscape,cssMediaType + +syn keyword sassTodo FIXME NOTE TODO OPTIMIZE XXX contained +syn region sassComment start="^\z(\s*\)//" end="^\%(\z1 \)\@!" contains=sassTodo +syn region sassCssComment start="^\z(\s*\)/\*" end="^\%(\z1 \)\@!" contains=sassTodo + +hi def link sassCssComment sassComment +hi def link sassComment Comment +hi def link sassConstant Identifier +hi def link sassMixing PreProc +hi def link sassMixin PreProc +hi def link sassTodo Todo +hi def link sassInclude Include +hi def link sassEscape Special +hi def link sassIdChar Special +hi def link sassClassChar Special +hi def link sassAmpersand Character +hi def link sassId Identifier +hi def link sassClass Type + +let b:current_syntax = "sass" + +" vim:set sw=2:
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/syntax/voscm.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,94 @@ +" Vim syntax file +" Language: VOS CM macro +" Maintainer: Andrew McGill andrewm at lunch.za.net +" Last Change: Apr 06, 2007 +" Version: 1 +" URL: http://lunch.za.net/ +" + +" For version 5.x: Clear all syntax items +" For version 6.x: Quit when a syntax file was already loaded +if exists("b:current_syntax") + finish +endif + +syn case match +" set iskeyword=48-57,_,a-z,A-Z + +syn match voscmStatement "^!" +syn match voscmStatement "&\(label\|begin_parameters\|end_parameters\|goto\|attach_input\|break\|continue\|control\|detach_input\|display_line\|display_line_partial\|echo\|eof\|eval\|if\|mode\|return\|while\|set\|set_string\|then\|else\|do\|done\|end\)\>" +syn match voscmJump "\(&label\|&goto\) *" nextgroup=voscmLabelId +syn match voscmLabelId contained "\<[A-Za-z][A-Z_a-z0-9]* *$" +syn match voscmSetvar "\(&set_string\|&set\) *" nextgroup=voscmVariable +syn match voscmError "\(&set_string\|&set\) *&" +syn match voscmVariable contained "\<[A-Za-z][A-Z_a-z0-9]\+\>" +syn keyword voscmParamKeyword contained number req string switch allow byte disable_input hidden length longword max min no_abbrev output_path req required req_for_form word +syn region voscmParamList matchgroup=voscmParam start="&begin_parameters" end="&end_parameters" contains=voscmParamKeyword,voscmString,voscmParamName,voscmParamId +syn match voscmParamName contained "\(^\s*[A-Za-z_0-9]\+\s\+\)\@<=\k\+" +syn match voscmParamId contained "\(^\s*\)\@<=\k\+" +syn region par1 matchgroup=par1 start=/(/ end=/)/ contains=voscmFunction,voscmIdentifier,voscmString transparent +" FIXME: functions should only be allowed after a bracket ... ie (ask ...): +syn keyword voscmFunction contained abs access after ask before break byte calc ceil command_status concat +syn keyword voscmFunction contained contents path_name copy count current_dir current_module date date_time +syn keyword voscmFunction contained decimal directory_name end_of_file exists file_info floor given group_name +syn keyword voscmFunction contained has_access hexadecimal home_dir index iso_date iso_date_time language_name +syn keyword voscmFunction contained length lock_type locked ltrim master_disk max message min mod module_info +syn keyword voscmFunction contained module_name object_name online path_name person_name process_dir process_info +syn keyword voscmFunction contained process_type quote rank referencing_dir reverse rtrim search +syn keyword voscmFunction contained software_purchased string substitute substr system_name terminal_info +syn keyword voscmFunction contained terminal_name time translate trunc unique_string unquote user_name verify +syn keyword voscmFunction contained where_path +syn keyword voscmTodo contained TODO FIXME XXX DEBUG NOTE +syn match voscmTab "\t\+" + +syn keyword voscmCommand add_entry_names add_library_path add_profile analyze_pc_samples attach_default_output attach_port batch bind break_process c c_preprocess call_thru cancel_batch_requests cancel_device_reservation cancel_print_requests cc change_current_dir check_posix cobol comment_on_manual compare_dirs compare_files convert_text_file copy_dir copy_file copy_tape cpp create_data_object create_deleted_record_index create_dir create_file create_index create_record_index create_tape_volumes cvt_fixed_to_stream cvt_stream_to_fixed debug delete_dir delete_file delete_index delete_library_path detach_default_output detach_port dismount_tape display display_access display_access_list display_batch_status display_current_dir display_current_module display_date_time display_default_access_list display_device_info display_dir_status display_disk_info display_disk_usage display_error display_file display_file_status display_line display_notices display_object_module_info display_print_defaults display_print_status display_program_module display_system_usage display_tape_params display_terminal_parameters dump_file dump_record dump_tape edit edit_form emacs enforce_region_locks fortran get_external_variable give_access give_default_access handle_sig_dfl harvest_pc_samples help kill line_edit link link_dirs list list_batch_requests list_devices list_gateways list_library_paths list_modules list_port_attachments list_print_requests list_process_cmd_limits list_save_tape list_systems list_tape list_terminal_types list_users locate_files locate_large_files login logout mount_tape move_device_reservation move_dir move_file mp_debug nls_edit_form pascal pl1 position_tape preprocess_file print profile propagate_access read_tape ready remove_access remove_default_access rename reserve_device restore_object save_object send_message set set_cpu_time_limit set_expiration_date set_external_variable set_file_allocation set_implicit_locking set_index_flags set_language set_library_paths set_line_wrap_width set_log_protected_file set_owner_access set_pipe_file set_priority set_ready set_safety_switch set_second_tape set_tape_drive_params set_tape_file_params set_tape_mount_params set_terminal_parameters set_text_file set_time_zone sleep sort start_logging start_process stop_logging stop_process tail_file text_data_merge translate_links truncate_file unlink update_batch_requests update_print_requests update_process_cmd_limits use_abbreviations use_message_file vcc verify_posix_access verify_save verify_system_access walk_dir where_command where_path who_locked write_tape + +syn match voscmIdentifier "&[A-Za-z][a-z0-9_A-Z]*&" + +syn match voscmString "'[^']*'" + +" Number formats +syn match voscmNumber "\<\d\+\>" +"Floating point number part only +syn match voscmDecimalNumber "\.\d\+\([eE][-+]\=\d\)\=\>" + +"syn region voscmComment start="^[ ]*&[ ]+" end="$" +"syn match voscmComment "^[ ]*&[ ].*$" +"syn match voscmComment "^&$" +syn region voscmComment start="^[ ]*&[ ]" end="$" contains=voscmTodo +syn match voscmComment "^&$" +syn match voscmContinuation "&+$" + +"syn match voscmIdentifier "[A-Za-z0-9&._-]\+" + +"Synchronization with Statement terminator $ +" syn sync maxlines=100 + +hi def link voscmConditional Conditional +hi def link voscmStatement Statement +hi def link voscmSetvar Statement +hi def link voscmNumber Number +hi def link voscmDecimalNumber Float +hi def link voscmString String +hi def link voscmIdentifier Identifier +hi def link voscmVariable Identifier +hi def link voscmComment Comment +hi def link voscmJump Statement +hi def link voscmContinuation Macro +hi def link voscmLabelId String +hi def link voscmParamList NONE +hi def link voscmParamId Identifier +hi def link voscmParamName String +hi def link voscmParam Statement +hi def link voscmParamKeyword Statement +hi def link voscmFunction Function +hi def link voscmCommand Structure +"hi def link voscmIdentifier NONE +"hi def link voscmSpecial Special " not used +hi def link voscmTodo Todo +hi def link voscmTab Error +hi def link voscmError Error + +let b:current_syntax = "voscm" + +" vim: ts=8
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/syntax/xbl.vim Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,29 @@ +" Vim syntax file +" Language: XBL 1.0 +" Maintainer: Doug Kearns <dougkearns@gmail.com> +" Latest Revision: 2007 November 5 + +if exists("b:current_syntax") + finish +endif + +let s:cpo_save = &cpo +set cpo&vim + +runtime! syntax/xml.vim +unlet b:current_syntax + +syn include @javascriptTop syntax/javascript.vim +unlet b:current_syntax + +syn region xblJavascript + \ matchgroup=xmlCdataStart start=+<!\[CDATA\[+ + \ matchgroup=xmlCdataEnd end=+]]>+ + \ contains=@javascriptTop keepend extend + +let b:current_syntax = "xbl" + +let &cpo = s:cpo_save +unlet s:cpo_save + +" vim: ts=8
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/tutor/README.el.cp737.txt Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,24 @@ +�� Tutor �夘� �� "������������" ����㚞�� ��� �⦬� ��㩫�� ��� +����ᡫ� Vim. + +�� ������櫜��� �⦠ ��㩫�� ������ �� �� �����驦�� �� ���櫜�� ��� +�� 騘. �� ����⢜��� �夘� 櫠 �����嫜 �� �ᤜ�� �� ���� ������ +���������嘪 ����⤦� ����������餫�� ��� ����ᡫ� Vim. + +�� Tutor �夘� ⤘ ����� ��� ����⮜� �� ���㣘�� ��� ������������. +�����嫜 �� �����⩜�� ���� "vim tutor" ��� ���� �� �������㩜�� ��� +����圪 ��� ���㣘��. �� ���㣘�� �� ��� ��礜 �� ��������㩜�� +�� �����, ������ ��� �� ������ ��� ��������� ��������� ���. + +�� �穫��� Unix �����嫜 ��婞� �� ����������㩜�� �� ��暨���� "vimtutor". +�� ��������㩜� ��高 ⤘ ��殜��� ���嚨��� ��� tutor. + +�� ������� �� ������� ������櫜�� ����ਞ�⤘ ���㣘�� ���� ��� �� ���� +��� �����嫞�� ��椦. ������驫� �� �������� �� �� �� �⢘�� ��� ���墜�� +��� �������㧦�� �����驜�� �ᤜ��. + +Bob Ware, Colorado School of Mines, Golden, Co 80401, USA +(303) 273-3987 +bware@mines.colorado.edu bware@slate.mines.colorado.edu bware@mines.bitnet + +[�� ����� ���� ��������㟞�� ��� ��� Vim ��� ��� Bram Moolenaar]
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/tutor/README.el.txt Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,24 @@ +�� Tutor ����� ��� "������������" ��������� ��� ����� ������� ��� +�������� Vim. + +�� ������������ ���� ������� ������� �� �� ���������� �� �������� ��� +��� ���. �� ���������� ����� ��� �������� �� ������ ��� ���� ������� +������������ �������� ��������������� ��� �������� Vim. + +�� Tutor ����� ��� ������ ��� �������� �� �������� ��� �������������. +�������� �� ���������� ���� "vim tutor" ��� ���� �� ������������ ��� +������� ��� ��������. �� �������� �� ��� ����� �� ������������� +�� ������, �������� ��� �� ������ ��� ��������� ��������� ���. + +�� ������� Unix �������� ������ �� ��������������� �� ��������� "vimtutor". +�� ������������ ����� ��� �������� ��������� ��� tutor. + +��� ������� �� �������� ����������� ����������� �������� ���� ��� ��� ���� +��� ���������� �����. ���������� �� �������� ��� �� �� ������ ��� �������� +��� ������������ ���������� ������. + +Bob Ware, Colorado School of Mines, Golden, Co 80401, USA +(303) 273-3987 +bware@mines.colorado.edu bware@slate.mines.colorado.edu bware@mines.bitnet + +[�� ������ ���� ������������� ��� ��� Vim ��� ��� Bram Moolenaar]
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/tutor/tutor.ca.utf-8 Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,807 @@ +=============================================================================== += B e n v i n g u t s a l t u t o r d e l V I M - Versió 1.5 = +=============================================================================== + + El Vim és un editor molt potent que té moltes ordres, masses com per + explicar-les totes un tutor com aquest. Aquest tutor està dissenyat + per descriure les ordres bàsiques que us permetin fer servir el Vim com + a editor de propòsit general. + + El temps aproximat de seguir el tutor complet és d'uns 25 o 30 minuts + depenent de quant temps dediqueu a experimentar. + + Feu una còpia d'aquest fitxer per practicar-hi (si heu començat amb el + programa vimtutor això que esteu llegint ja és una còpia). + + És important recordar que aquest tutor està pensat per ensenyar + practicant. És a dir, que haureu d'executar les ordres si les voleu + aprendre. Si només llegiu el text el més probable és que les oblideu. + + Ara assegureu-vos que la tecla de bloqueig de majúscules no està + activada i premeu la tecla j per moure el cursor avall, fins que + la lliçó 1.1 ocupi completament la pantalla. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lliçó 1.1: MOURE EL CURSOR + + + ** Per moure el cursor premeu les tecles h,j,k,l tal com està indicat. ** + ^ + k Pista: La h és a l'esquerra i mou el cursor cap a l'esquerra. + < h l > La l és a la dreta i mou el cursor cap a la dreta. + j La j sembla una fletxa cap avall. + v + 1. Moveu el cursor per la pantalla fins que us sentiu confortables. + + 2. Mantingueu premuda la tecla avall (j) una estona. +---> Ara sabeu com moure-us fins a la pròxima lliçó. + + 3. Usant la tecla avall, aneu a la lliçó 1.2. + +Nota: Si no esteu segurs de la tecla que heu premut, premeu <ESC> per tornar + al mode Normal. Llavors torneu a teclejar l'ordre que volíeu. + +Nota: Les tecles de moviment del cursor (fletxes) també funcionen. Però usant + hjkl anireu més ràpid, quan us hi hàgiu acostumant. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lliçó 1.2: ENTRAR I SORTIR DEL VIM + + + !! NOTA: Abans de seguir els passos següents llegiu *tota* la lliçó!! + + 1. Premeu <ESC> (per estar segurs que esteu en el mode Normal). + + 2. Teclegeu: :q! <ENTRAR>. + +---> Amb això sortireu de l'editor SENSE desar els canvis que hàgiu pogut + fer. Si voleu desar els canvis teclegeu: + :wq <ENTRAR> + + 3. Quan vegeu l'introductor de la shell escriviu l'ordre amb la qual heu + arribat a aquest tutor. Podria ser: vimtutor <ENTRAR> + O bé: vim tutor <ENTRAR> + +---> 'vim' és l'editor vim, i 'tutor' és el fitxer que voleu editar. + + 4. Si heu memoritzat les ordres, feu els passos anteriors, de l'1 al 3, + per sortir i tornar a entrar a l'editor. Llavors moveu el cursor avall + fins la lliçó 1.3. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lliçó 1.3: EDITAR TEXT - ESBORRAR + + + ** En mode Normal premeu x per esborrar el caràcter de sota el cursor. ** + + 1. Moveu el cursor fins la línia que hi ha més avall marcada amb --->. + + 2. Poseu el cursor a sobre el caràcter que cal esborrar, per corregir els + errors. + + 3. Premeu la tecla x per esborrar el caràcter. + + 4. Repetiu els passos 2 i 3 fins que la frase sigui correcta. + +---> Unna vaaca vva salttar sobbree la llluna. + + 5. Ara que la línia és correcta, aneu a la lliçó 1.4. + +NOTA: Mentre aneu fent no tracteu de memoritzar, practiqueu i prou. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lliçó 1.4: EDITAR TEXT - INSERIR + + + ** En mode Normal premeu i per inserir text. ** + + 1. Moveu el cursor avall fins la primera línia marcada amb --->. + + 2. Per fer la primera línia igual que la segona poseu el cursor sobre el + primer caràcter POSTERIOR al text que s'ha d'inserir. + + 3. Premeu la tecla i i escriviu el text que falta. + + 4. Quan hàgiu acabat premeu <ESC> per tornar al mode Normal. Repetiu + els passos 2, 3 i 4 per corregir la frase. + +---> Falten carctrs en aquesta . +---> Falten alguns caràcters en aquesta línia. + + 5. Quan us trobeu còmodes inserint text aneu al sumari de baix. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + LLIÇÓ 1 SUMARI + + + 1. El cursor es mou amb les fletxes o bé amb les tecles hjkl. + h (esquerra) j (avall) k (amunt) l (dreta) + + 2. Per entrar al Vim (des de la shell) escriviu: vim FITXER <ENTRAR> + + 3. Per sortir teclegeu: <ESC> :q! <ENTRAR> per descartar els canvis. + O BÉ teclegeu: <ESC> :wq <ENTRAR> per desar els canvis. + + 4. Per esborrar el caràcter de sota el cursor en el mode Normal premeu: x + + 5. Per inserir text on hi ha el cursor, en mode Normal, premeu: + i escriviu el text <ESC> + +NOTA: La tecla <ESC> us portarà al mode Normal o cancel·larà una ordre + que estigui a mitges. + +Ara continueu amb la lliçó 2. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lliçó 2.1: ORDRES PER ESBORRAR + + + ** Teclegeu dw per esborrar fins al final d'una paraula. ** + + 1. Premeu <ESC> per estar segurs que esteu en mode normal. + + 2. Moveu el cursor avall fins la línia marcada amb --->. + + 3. Moveu el cursor fins el principi de la paraula que s'ha d'esborrar. + + 4. Teclegeu dw per fer desaparèixer la paraula. + +NOTA: Les lletres dw apareixeran a la línia de baix de la pantalla mentre + les aneu escrivint. Si us equivoqueu premeu <ESC> i torneu a començar. + +---> Hi han algunes paraules divertit que no pertanyen paper a aquesta frase. + + 5. Repetiu el passos 3 i 4 fins que la frase sigui correcta i continueu a + la lliçó 2.2. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lliçó 2.2: MÉS ORDRES PER ESBORRAR + + + ** Escriviu d$ per esborrar fins al final de la línia. ** + + 1. Premeu <ESC> per estar segurs que esteu en el mode Normal. + + 2. Moveu el cursor avall fins a la línia marcada amb --->. + + 3. Moveu el cursor fins el final de la línia correcta + (DESPRÉS del primer . ). + + 4. Teclegeu d$ per esborrar fins al final de la línia. + +---> Algú ha escrit el final d'aquesta línia dos cops. línia dos cops. + + 5. Aneu a la lliçó 2.3 per entendre què està passant. + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lliçó 2.3: SOBRE ORDRES I OBJECTES + + + El format de l'ordre d'esborrar d és el següent: + + [nombre] d objecte O BÉ d [nombre] objecte + On: + nombre - és el nombre de cops que s'ha d'executar (opcional, omissió=1). + d - és l'ordre per esborrar. + objecte - és la cosa amb la qual operar (llista a baix). + + Una petita llista d'objectes: + w - des del cursor fins al final de la paraula, incloent-hi l'espai. + e - des del cursor fins al final de la paraula, SENSE incloure l'espai. + $ - des del cursor fins al final de la línia. + +NOTA: Per als aventurers: si teclegeu només l'objecte, en el mode Normal, + sense cap ordre, el cursor es mourà tal com està especificat a la + llista d'objectes. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lliçó 2.4: UNA EXCEPCIÓ A 'ORDRE-OBJECTE' + + + ** Teclegeu dd esborrar tota la línia. ** + + Com que molt sovint s'han d'eliminar línies senceres els dissenyadors del + Vi van creure que seria més fàcil teclejar dd per esborrar tota la línia. + + 1. Moveu el cursor a la segona línia de la frase de baix. + 2. Teclegeu dd per esborrar la línia. + 3. Ara aneu a la quarta línia. + 4. Teclegeu 2dd per esborrar dues línies (recordeu nombre-ordre-objecte). + + 1) Les roses són vermelles, + 2) El fang és divertit, + 3) Les violetes són blaves, + 4) Tinc un cotxe, + 5) Els rellotges diuen l'hora, + 6) El sucre és dolç, + 7) Igual que tu. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lliçó 2.5: L'ORDRE DESFER + + + ** Premeu u per desfer els últims canvis, U per arreglar tota la línia. ** + + 1. Moveu el cursor sobre el primer error de línia de baix marcada amb ---> + 2. Premeu x per esborrar el caràcter no desitjat. + 3. Ara premeu u per desfer l'última ordre executada. + 4. Aquest cop corregiu tots els errors de la línia amb l'ordre x. + 5. Ara premeu U per restablir la línia al seu estat original. + 6. Ara premeu u uns quants cops per desfer U i les ordres anteriors. + 7. Ara premeu CONTROL-R (les dues tecles al mateix temps) uns quants cops + per refer les ordres. + +---> Correegiu els errors d'aqquesta línia i dessfeu-los aamb desfer. + + 8. Aquestes ordres són molt útils. Ara aneu al sumari de la lliçó 2. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + LLIÇÓ 2 SUMARI + + + 1. Per esborrar del cursor al final de la paraula teclegeu: dw + + 2. Per esborrar del cursor al final de la línia teclegeu: d$ + + 3. Per esborrar una línia sencera teclegeu: dd + + 4. El format de qualsevol ordre del mode Normal és: + + [nombre] ordre objecte O BÉ ordre [nombre] objecte + on: + nombre - és quants cops repetir l'ordre + ordre - és què fer, com ara d per esborrar + objecte - és amb què s'ha d'actuar, com ara w (paraula), + $ (fins a final de línia), etc. + + 5. Per desfer les accions anteriors premeu: u + Per desfer tots el canvis en una línia premeu: U + Per desfer l'ordre desfer premeu: CTRL-R + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lliçó 3.1: L'ORDRE 'POSAR' + + + ** Premeu p per posar l'última cosa que heu esborrat després del cursor. ** + + + 1. Moveu el cursor a la primera línia de llista de baix. + + 2. Teclegeu dd per esborrar la línia i desar-la a la memòria. + + 3. Moveu el cursor a la línia ANTERIOR on hauria d'anar. + + 4. En mode Normal, premeu p per inserir la línia. + + 5. Repetiu els passos 2, 3 i 4 per ordenar les línies correctament. + + d) Pots aprendre tu? + b) Les violetes són blaves, + c) L'intel·ligència s'aprèn, + a) Les roses són vermelles, + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lliçó 3.2: L'ORDRE SUBSTITUIR + + + ** Premeu r i un caràcter per substituir el caràcter de sota el cursor. ** + + 1. Moveu el cursor a la primera línia de sota marcada amb --->. + + 2. Moveu el cursor a sobre del primer caràcter equivocat. + + 3. Premeu r i tot seguit el caràcter correcte per corregir l'error. + + 4. Repetiu els passos 2 i 3 fins que la línia sigui correcta. + +---> Quen van escroure aquerta línia, algh va apretar tikles equivocades! +---> Quan van escriure aquesta línia, algú va apretar tecles equivocades! + + 5. Ara continueu a la lliçó 3.2. + +NOTA: Recordeu que heu de practicar, no memoritzar. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lliçó 3.3: L'ORDRE CANVIAR + + + ** Per canviar una part o tota la paraula, escriviu cw . ** + + 1. Moveu el cursor a la primera línia de sota marcada amb --->. + + 2. Poseu el cursor sobre la u de 'lughc'. + + 3. Teclegeu cw i corregiu la paraula (en aquest cas escriviu 'ínia'.) + + 4. Premeu <ESC> i aneu al següent error. + + 5. Repetiu els passos 3 i 4 fins que les dues frases siguin iguals. + +---> Aquesta lughc té algunes paradskl que s'han de cdddf. +---> Aquesta línia té algunes paraules que s'han de canviar. + +Noteu que cw no només canvia la paraula, també us posa en mode d'inserció. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lliçó 3.4: MÉS CANVIS AMB c + + + ** L'ordre canviar s'usa amb els mateixos objectes que l'ordre esborrar. ** + + 1. L'ordre canviar funciona igual que la d'esborrar. El format és: + + [nombre] c objecte O BÉ c [nombre] objecte + + 2. Els objectes són els mateixos, com w (paraula), $ (final de línia), etc. + + 3. Moveu el cursor fins la primera línia marcada amb --->. + + 4. Avanceu fins al primer error. + + 5. Premeu c$ per fer la línia igual que la segona i premeu <ESC>. + +---> El final d'aquesta línia necessita canvis per ser igual que la segona. +---> El final d'aquesta línia s'ha de corregir amb l'ordre c$. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + LLIÇÓ 3 SUMARI + + + 1. Per tornar a posar el text que s'ha esborrat, premeu p . Això posa el + text esborrat DESPRÉS del cursor (si heu esborrat una línia anirà a + parar a la línia SEGÜENT d'on hi ha el cursor). + + 2. Per substituir el caràcter de sota el cursor, premeu r i tot seguit + el caràcter que ha de reemplaçar l'original. + + 3. L'ordre canviar permet canviar l'objecte especificat des del cursor + fins el final de l'objecte. Per exemple, cw canvia el que hi ha des + del cursor fins al final de la paraula, i c$ fins al final de línia. + + 4. El format de l'ordre canviar és: + + [nombre] c objecte O BÉ c [nombre] objecte + +Ara aneu a la pròxima lliçó. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lliçó 4.1: SITUACIÓ I ESTAT DEL FITXER + + + ** Premeu CTRL-g per veure la situació dins del fitxer i el seu estat. + Premeu SHIFT-G per anar a una línia determinada. ** + + Nota: No proveu res fins que hàgiu llegit TOTA la lliçó!! + + 1. Mantingueu premuda la tecla Control i premeu g . A la part de baix de + la pàgina apareixerà un línia amb el nom del fitxer i la línia en la + qual us trobeu. Recordeu el número de la línia pel Pas 3. + + 2. Premeu Shift-G per anar al final de tot del fitxer. + + 3. Teclegeu el número de la línia on éreu i després premeu Shift-G. Això + us tornarà a la línia on éreu quan heu premut per primer cop Ctrl-g. + (Quan teclegeu el número NO es veurà a la pantalla.) + + 4. Ara executeu els passos de l'1 al 3. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lliçó 4.2: L'ORDRE CERCAR + + + ** Premeu / seguit de la frase que vulgueu cercar. ** + + 1. En el mode Normal premeu el caràcter / . Noteu que el cursor apareix + a la part de baix de la pantalla igual que amb l'ordre : . + + 2. Ara escriviu 'errroor' <ENTRAR>. Aquesta és la paraula que voleu + cercar. + + 3. Per tornar a cercar la mateixa frase, premeu n . + Per cercar la mateixa frase en direcció contraria, premeu Shift-N . + + 4. Si voleu cercar una frase en direcció ascendent, useu l'ordre ? en + lloc de /. + +---> "errroor" no és com s'escriu error; errroor és un error. + +Note: Quan la cerca arribi al final del fitxer continuarà a l'inici. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lliçó 4.3: CERCA DE PARÈNTESIS + + + ** Premeu % per cercar el ),], o } corresponent. ** + + 1. Poseu el cursor en qualsevol (, [, o { de la línia marcada amb --->. + + 2. Ara premeu el caràcter % . + + 3. El cursor hauria d'anar a la clau o parèntesis corresponent. + + 4. Premeu % per tornar el cursor al primer parèntesi. + +---> Això ( és una línia amb caràcters (, [ ] i { } de prova. )) + +Nota: Això és molt útil per trobar errors en programes informàtics! + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lliçó 4.4: UNA MANERA DE CANVIAR ERRORS + + + ** Escriviu :s/vell/nou/g per substituir 'vell' per 'nou'. ** + + 1. Moveu el cursor a la línia de sota marcada amb --->. + + 2. Escriviu :s/laa/la <ENTRAR> . Aquesta ordre només canvia la primera + coincidència que es trobi a la línia. + + 3. Ara escriviu :s/laa/la/g per fer una substitució global. Això + canviarà totes les coincidències que es trobin a la línia. + +---> laa millor època per veure laa flor és laa primavera. + + 4. Per canviar totes les coincidències d'una cadena entre dues línies, + escriviu :#,#s/vell/nou/g on #,# són els nombres de les línies. + Escriviu :%s/vell/nou/g per substituir la cadena a tot el fitxer. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + LLIÇÓ 4 SUMARI + + + 1. Ctrl-g mostra la posició dins del fitxer i l'estat del mateix. + Shift-G us porta al final del fitxer. Un número seguit de Shift-G + us porta a la línia corresponent. + + 2. L'ordre / seguida d'una frase cerca la frase ENDAVANT. + L'ordre ? seguida d'una frase cerca la frase ENDARRERE. + Després d'una cerca premeu n per trobar la pròxima coincidència en + la mateixa direcció, o Shift-N per cercar en la direcció contrària. + + 3. L'ordre % quan el cursor és a sobre un (,),[,],{, o } troba la + parella corresponent. + + 4. Per substituir el primer 'vell' per 'nou' en una línia :s/vell/nou + Per substituir tots els 'vell' per 'nou' en una línia :s/vell/nou/g + Per substituir frases entre les línies # i # :#,#s/vell/nou/g + Per substituir totes les coincidències en el fitxer :%s/vell/nou/g + Per demanar confirmació cada cop afegiu 'c' :%s/vell/nou/gc + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lliçó 5.1: COM EXECUTAR UNA ORDRE EXTERNA + + + ** Teclegeu :! seguit d'una ordre externa per executar-la. ** + + 1. Premeu el familiar : per col·locar el cursor a la part de baix de + la pantalla. Això us permet entrar una ordre. + + 2. Ara teclegeu el caràcter ! (signe d'exclamació). Això us permet + executar qualsevol ordre de la shell. + + 3. Com a exemple escriviu ls i tot seguit premeu <ENTRAR>. Això us + mostrarà el contingut del directori, tal com si estiguéssiu a la + línia d'ordres. Feu servir :!dir si ls no funciona. + +Nota: D'aquesta manera es pot executar qualsevol ordre externa. + +Nota: Totes les ordres : s'han d'acabar amb la tecla <ENTRAR> + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lliçó 5.2: MÉS SOBRE L'ESCRIPTURA DE FITXERS + + + ** Per desar els canvis fets, escriviu :w FITXER. *** + + 1. Escriviu :!dir o bé :!ls per obtenir un llistat del directori. + Ja sabeu que heu de prémer <ENTRAR> després d'això. + + 2. Trieu un nom de fitxer que no existeixi, com ara PROVA. + + 3. Ara feu: :w PROVA (on PROVA és el nom que heu triat.) + + 4. Això desa tot el fitxer amb el nom de PROVA. Per comprovar-ho + escriviu :!dir per veure el contingut del directori. + +Note: Si sortiu del Vim i entreu una altra vegada amb el fitxer PROVA, el + fitxer serà una còpia exacta del tutor que heu desat. + + 5. Ara esborreu el fitxer teclejant (MS-DOS): :!del PROVA + o bé (Unix): :!rm PROVA + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lliçó 5.3: UNA ORDRE SELECTIVA PER DESAR + + + ** Per desar una part del fitxer, escriviu :#,# w FITXER ** + + 1. Un altre cop, feu :!dir o :!ls per obtenir un llistat del directori + i trieu un nom de fitxer adequat com ara PROVA. + + 2. Moveu el cursor a dalt de tot de la pàgina i premeu Ctrl-g per + saber el número de la línia. RECORDEU AQUEST NÚMERO! + + 3. Ara aneu a baix de tot de la pàgina i torneu a prémer Ctrl-g. + RECORDEU AQUEST NÚMERO TAMBÉ! + + 4. Per desar NOMÉS una secció en un fitxer, escriviu :#,# w PROVA on + #,# són els dos números que heu recordat (dalt,baix) i PROVA el nom + del fitxer. + + 5. Mireu que el fitxer nou hi sigui amb :!dir però no l'esborreu. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lliçó 5.4: OBTENIR I AJUNTAR FITXERS + + + ** Per inserir el contingut d'un fitxer, feu :r FITXER ** + + 1. Assegureu-vos, amb l'ordre :!dir , que el fitxer PROVA encara hi és. + + 2. Poseu el cursor a dalt de tot d'aquesta pàgina. + +NOTA: Després d'executar el Pas 3 veureu la lliçó 5.3. Aleshores moveu-vos + cap avall fins a aquesta lliçó un altre cop. + + 3. Ara obtingueu el fitxer PROVA amb l'ordre :r PROVA on PROVA és el + nom del fitxer. + +NOTA: El fitxer que obtingueu es posa en el lloc on hi hagi el cursor. + + 4. Per comprovar que s'ha obtingut el fitxer tireu enrere i mireu com + ara hi han dues còpies de la lliçó 5.3: l'original i la del fitxer. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + LLIÇÓ 5 SUMARI + + + 1. :!ordre executa una ordre externa. + + Alguns exemples útils són: + (MS-DOS) (Unix) + :!dir :!ls - mostra un llistat del directori + :!del FITXER :!rm FITXER - esborra el fitxer FITXER + + 2. :w FITXER escriu el fitxer editat al disc dur, amb el nom FITXER. + + 3. :#,#w FITXER desa les línies de # a # en el fitxer FITXER. + + 4. :r FITXER llegeix el fitxer FITXER del disc dur i l'insereix en el + fitxer editat a la posició on hi ha el cursor. + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lliçó 6.1: L'ORDRE OBRIR + + +** Premeu o per obrir una línia sota el cursor i entrar en mode inserció. ** + + 1. Moveu el cursor a la línia de sota marcada amb --->. + + 2. Premeu o (minúscula) per obrir una línia SOTA el cursor i situar-vos + en mode d'inserció. + + 3. Ara copieu la línia marcada amb ---> i premeu <ESC> per tornar al mode + normal. + +---> Després de prémer o el cursor es situa a la línia nova en mode inserció. + + 4. Per obrir una línia SOBRE el cursor, premeu la O majúscula, en lloc + de la minúscula. Proveu-ho amb la línia de sota. +Obriu una línia sobre aquesta amb Shift-O amb el cursor en aquesta línia. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lliçó 6.2: L'ORDRE AFEGIR + + + ** Premeu a per afegir text DESPRÉS del cursor. ** + + 1. Moveu el cursor al final de la primera línia de sota marcada + amb ---> prement $ en el mode Normal. + + 2. Premeu la lletra a (minúscula) per afegir text DESPRÉS del caràcter + sota el cursor. (La A majúscula afegeix text al final de línia.) + +Nota: Així s'evita haver de prémer i , l'últim caràcter, el text a inserir, + la tecla <ESC>, cursor a la dreta, i finalment x , només per afegir + text a final de línia. + + 3. Ara completeu la primera línia. Tingueu en compte que aquesta ordre + és exactament igual que la d'inserir, excepte pel que fa al lloc on + s'insereix el text. + +---> Aquesta línia us permetrà practicar +---> Aquesta línia us permetrà practicar afegir text a final de línia. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lliçó 6.3: UNA ALTRA MANERA DE SUBSTITUIR + + + ** Teclegeu una R majúscula per substituir més d'un caràcter. ** + + 1. Moveu el cursor a la línia de sota marcada amb --->. + + 2. Poseu el cursor al principi de la primera paraula que es diferent + respecte a la segona línia marcada amb ---> (la paraula "l'última"). + + 3. Ara premeu R i substituïu el que queda de text a la primera línia + escrivint sobre el text vell, per fer-la igual que la segona. + +---> Per fer aquesta línia igual que l'última useu les tecles. +---> Per fer aquesta línia igual que la segona, premeu R i el text nou. + + 4. Tingueu en compte que en prémer <ESC> per sortir, el text que no + s'hagi alterat es manté. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lliçó 6.4: ESTABLIR OPCIONS + + ** Feu que les ordres cercar o substituir ignorin les diferències + entre majúscules i minúscules ** + + 1. Cerqueu la paraula 'ignorar' amb: /ignorar + Repetiu-ho uns quants cops amb la tecla n. + + 2. Establiu l'opció 'ic' (Ignorar Capitals) escrivint: + :set ic + + 3. Ara cerqueu 'ignorar' un altre cop amb la tecla n. + Repetiu-ho uns quants cops més. + + 4. Establiu les opcions 'hlsearch' i 'incsearch': + :set hls is + + 5. Ara torneu a executar una ordre de cerca, i mireu què passa: + /ignorar + + 6. Per treure el ressalt dels resultats, feu: + :nohlsearch +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + LLIÇÓ 6 SUMARI + + + 1. L'ordre o obre una línia SOTA la del cursor i mou el cursor a la nova + línia, en mode Inserció. + La O majúscula obre la línia a SOBRE la que hi ha el cursor. + + 2. Premeu una a per afegir text DESPRÉS del caràcter sota el cursor. + La A majúscula afegeix automàticament el text a final de línia. + + 3. L'ordre R majúscula us posa en mode substitució fins que premeu <ESC>. + + 4. Escriviu ":set xxx" per establir l'opció "xxx" + + + + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + LLIÇÓ 7: ORDRES D'AJUDA + + + ** Utilitzeu el sistema intern d'ajuda ** + + El Vim té un extens sistema d'ajuda. Per llegir una introducció proveu una + d'aquestes tres coses: + - premeu la tecla <AJUDA> (si en teniu alguna) + - premeu la tecla <F1> (si en teniu alguna) + - escriviu :help <ENTRAR> + + Teclegeu :q <ENTRAR> per tancar la finestra d'ajuda. + + Podeu trobar ajuda sobre pràcticament qualsevol tema donant un argument + a l'ordre ":help". Proveu això (no oblideu prémer <ENTRAR>): + + :help w + :help c_<T + :help insert-index + :help user-manual + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + LLIÇÓ 8: CREAR UN SCRIPT D'INICI + + ** Activar funcions automàticament ** + + El Vim té moltes més funcions que el Vi, però moltes estan desactivades per + omissió. Per començar a utilitzar més funcions heu de crear un fitxer "vimrc". + + 1. Comenceu a editar el fitxer "vimrc", depenent del sistema + :edit ~/.vimrc per Unix + :edit $VIM/_vimrc per MS-Windows + + 2. Ara llegiu el fitxer "vimrc" d'exemple: + + :read $VIMRUNTIME/vimrc_example.vim + + 3. Deseu el fitxer amb: + + :write + + El pròxim cop que executeu el Vim usarà ressalt de sintaxi. + Podeu afegir els ajustos que vulgueu en aquest fitxer "vimrc". + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + Aquí conclou el Tutor del Vim. Ha sigut un intent de fer-vos una breu + introducció a l'editor Vim, suficient com per què el pugueu començar a fer + servir. Està lluny de ser complet perquè el Vim té moltes més ordres. + Llegiu el manual de l'usuari: ":help user-manual". + + Per un estudi més profund us recomanem el següent llibre: + Vim - Vi Improved - de Steve Oualline + Editorial: New Riders + És el primer llibre dedicat completament al Vim, especialment útil per a + usuaris novells. Té molts exemples i dibuixos. + Vegeu http://iccf-holland.org/click5.html + + Aquest altre és més vell i tracta més sobre el Vi que sobre el Vim: + Learning the Vi Editor - de Linda Lamb + Editorial: O'Reilly & Associates Inc. + És un bon llibre per saber qualsevol cosa que desitgeu sobre el Vi. + La sisena edició també inclou informació sobre el Vim. + + Aquest tutorial ha estat escrit per Michael C. Pierce i Robert K. Ware, + Colorado School of Mines amb la col·laboració de Charles Smith, + Colorado State University. E-mail: bware@mines.colorado.edu. + + Modificat pel Vim per Bram Moolenaar. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/tutor/tutor.de.utf-8 Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,980 @@ +=============================================================================== += W i l l k o m m e n im V I M T u t o r - Version 1.7D = +=============================================================================== + + Vim ist ein sehr mächtiger Editor, der viele Befehle bereitstellt; zu viele, + um alle in einem Tutor wie diesem zu erklären. Dieser Tutor ist so + gestaltet, um genug Befehle vorzustellen, dass Du die Fähigkeit erlangst, + Vim mit Leichtigkeit als einen Allzweck-Editor zu benutzen. + Die Zeit für das Durcharbeiten dieses Tutors beträgt ca. 25-30 Minuten, + abhängig davon, wie viel Zeit Du mit Experimentieren verbringst. + + ACHTUNG: + Die in den Lektionen angewendeten Kommandos werden den Text modifizieren. + Erstelle eine Kopie dieser Datei, in der Du üben willst (falls Du "vimtutor" + aufgerufen hast, ist dies bereits eine Kopie). + + Es ist wichtig, sich zu vergegenwärtigen, dass dieser Tutor für das Anwenden + konzipiert ist. Das bedeutet, dass Du die Befehle ausführen musst, um sie + richtig zu lernen. Wenn Du nur den Text liest, vergisst Du die Befehle! + + Jetzt stelle sicher, dass Deine Umstelltaste NICHT gedrückt ist und betätige + die j Taste genügend Male, um den Cursor nach unten zu bewegen, so dass + Lektion 1.1 den Bildschirm vollkommen ausfüllt. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 1.1: BEWEGEN DES CURSORS + + ** Um den Cursor zu bewegen, drücke die h,j,k,l Tasten wie unten gezeigt. ** + ^ Hilfestellung: + k Die h Taste befindet sich links und bewegt nach links. + < h l > Die l Taste liegt rechts und bewegt nach rechts. + j Die j Taste ähnelt einem Pfeil nach unten. + v + 1. Bewege den Cursor auf dem Bildschirm umher, bis Du Dich sicher fühlst. + + 2. Halte die Nach-Unten-Taste (j) gedrückt, bis sie sich wiederholt. + Jetzt weißt Du, wie Du Dich zur nächsten Lektion bewegen kannst. + + 3. Benutze die Nach-Unten-Taste, um Dich zu Lektion 1.2 zu bewegen. + +Bemerkung: Immer, wenn Du Dir unsicher bist über das, was Du getippt hast, + drücke <ESC> , um Dich in den Normalmodus zu begeben. + Dann gib das gewünschte Kommando noch einmal ein. + +Bemerkung: Die Cursor-Tasten sollten ebenfalls funktionieren. Aber wenn Du + hjkl benutzt, wirst Du in der Lage sein, Dich sehr viel schneller + umherzubewegen, wenn Du Dich einmal daran gewöhnt hast. Wirklich! +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 1.2: VIM BEENDEN + + + !! ACHTUNG: Bevor Du einen der unten aufgeführten Schritte ausführst, lies + diese gesamte Lektion!! + + 1. Drücke die <ESC> Taste (um sicherzustellen, dass Du im Normalmodus bist). + + 2. Tippe: :q! <ENTER>. + Dies beendet den Editor und VERWIRFT alle Änderungen, die Du gemacht hast. + + 3. Wenn Du die Eingabeaufforderung siehst, gib das Kommando ein, das Dich zu + diesem Tutor geführt hat. Dies wäre: vimtutor <ENTER> + + 4. Wenn Du Dir diese Schritte eingeprägt hast und Du Dich sicher fühlst, + führe Schritte 1 bis 3 aus, um den Editor zu verlassen und wieder + hineinzugelangen. + +Bemerkung: :q! <ENTER> verwirft alle Änderungen, die Du gemacht hast. In + einigen Lektionen lernst Du , die Änderungen in einer Datei zu speichern. + + 5. Bewege den Cursor abwärts zu Lektion 1.3. + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 1.3: TEXT EDITIEREN - LÖSCHEN + + + ** Drücke x um das Zeichen unter dem Cursor zu löschen. ** + + 1. Bewege den Cursor zu der mit ---> markierten Zeile unten. + + 2. Um die Fehler zu beheben, bewege den Cursor, bis er auf dem Zeichen steht, + das gelöscht werden soll. + + 3. Drücke die x Taste, um das überflüssige Zeichen zu löschen. + + 4. Wiederhole die Schritte 2 bis 4, bis der Satz korrekt ist. + +---> Die Kkuh sprangg übber deen Moond. + + 5. Wenn nun die Zeile korrekt ist, gehe weiter zur Lektion 1.4. + +Anmerkung: Während Du durch diesen Tutor gehst, versuche nicht, auswendig zu + lernen, lerne vielmehr durch Anwenden. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 1.4: TEXT EDITIEREN - EINFÜGEN + + + ** Drücke i , um Text einzufügen. ** + + 1. Bewege den Cursor zur ersten unten stehenden mit ---> markierten Zeile. + + 2. Um die erste Zeile mit der zweiten gleichzumachen, bewege den Cursor auf + das erste Zeichen NACH der Stelle, wo der Text eingefügt werden soll. + + 3. Drücke i und gib die notwendigen Ergänzungen ein. + + 4. Wenn jeweils ein Fehler beseitigt ist, drücke <ESC> , um zum Normalmodus + zurückzukehren. + Wiederhole die Schritte 2 bis 4, um den Satz zu korrigieren. + +---> In dieser ft etwas . +---> In dieser Zeile fehlt etwas Text. + + 5. Wenn Du Dich mit dem Einfügen von Text sicher fühlst, gehe zu Lektion 1.5. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 1.5: TEXT EDITIEREN - ANFÜGEN + + + ** Drücke A , um Text anzufügen. ** + + 1. Bewege den Cursor zur ersten unten stehenden mit ---> markierten Zeile. + Es ist gleichgültig, auf welchem Zeichen der Zeile der Cursor steht. + + 2. Drücke A und gib die nötigen Ergänzungen ein. + + 3. Wenn das Anfügen abgeschlossen ist, drücke <ESC>, um in den Normalmodus + zurückzukehren. + + 4. Bewege den Cursor zur zweiten mit ---> markierten Zeile und wiederhole + die Schritte 2 und 3, um den Satz zu korrigieren. + +---> In dieser Zeile feh + In dieser Zeile fehlt etwas Text. +---> Auch hier steh + Auch hier steht etwas Unvollständiges. + + 5. Wenn Du dich mit dem Anfügen von Text sicher fühlst, gehe zu Lektion 1.6. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 1.6: EINE DATEI EDITIEREN + + + ** Benutze :wq , um eine Datei zu speichern und Vim zu verlassen. ** + + !! ACHTUNG: Bevor Du einen der unten aufgeführten Schritte ausführst, lies + diese gesamte Lektion!! + + 1. Verlasse den Editor so wie in Lektion 1.2: :q! + + 2. Gib dieses Kommando in die Eingabeaufforderung ein: vim tutor <ENTER> + 'vim' ist der Aufruf des Editors, 'tutor' ist die zu editierende Datei. + Benutze eine Datei, die geändert werden kann. + + 3. Füge Text ein oder lösche ihn, wie Du in den vorigen Lektionen gelernt + hast. + + 4. Speichere die geänderte Datei und verlasse Vim mit: :wq <ENTER> + + 5. Starte den vimtutor neu und bewege Dich zu der folgenden Zusammenfassung. + + 6. Nachdem Du obige Schritte gelesen und verstanden hast, führe sie durch. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ZUSAMMENFASSUNG VON LEKTION 1 + + + 1. Der Cursor wird mit den Pfeiltasten oder den Tasten hjkl bewegt. + h (links) j (unten) k (aufwärts) l (rechts) + + 2. Um Vim von der Eingabeaufforderung auszuführen, tippe: vim DATEI <ENTER> + + 3. Um Vim zu verlassen und alle Änderungen zu verwerfen, tippe: + <ESC> :q! <ENTER> . + ODER tippe: <ESC> :wq <ENTER> , um die Änderungen zu speichern. + + 4. Um das Zeichen unter dem Cursor zu löschen, tippe: x + + 5. Um Text einzufügen oder anzufügen, tippe: + i Einzufügenden Text eingeben <ESC> Einfügen vor dem Cursor + A Anzufügenden Text eingeben <ESC> Anfügen nach dem Zeilendene + +Bemerkung: Drücken von <ESC> bringt Dich in den Normalmodus oder bricht ein + ungewolltes, erst teilweise eingegebenes Kommando ab. + + Nun fahre mit Lektion 2 fort. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 2.1: LÖSCHKOMMANDOS + + + ** Tippe dw , um ein Wort zu löschen. ** + + 1. Drücke <ESC> um sicherzustellen, dass Du im Normalmodus bist. + + 2. Bewege den Cursor zu der mit ---> markierten Zeile unten. + + 3. Bewege den Cursor zum Anfang eines Wortes, das gelöscht werden soll. + + 4. Tippe dw , um das Wort zu entfernen. + + Bemerkung: Der Buchstabe d erscheint auf der letzten Zeile des Bildschirms, + wenn Du ihn eingibst. Vim wartet darauf, daß Du w eingibst. Wenn Du + ein anderes Zeichen als d siehst, hast Du etwas falsches getippt; + drücke <ESC> und beginne neu. + +---> Einige Wörter lustig gehören nicht Papier in diesen Satz. + + 5. Wiederhole die Schritte 3 und 4, bis der Satz korrekt ist und gehe + danach zur Lektion 2.2. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 2.2: WEITERE LÖSCHKOMMANDOS + + + ** Tippe d$ , um bis zum Ende der Zeile zu löschen. ** + + 1. Drücke <ESC> , um sicherzustellen, dass Du im Normalmodus bist. + + 2. Bewege den Cursor zu der mit ---> markierten Zeile unten. + + 3. Bewege den Cursor zum Ende der korrekten Zeile (NACH dem ersten . ). + + 4. Tippe d$ , um bis zum Ende der Zeile zu löschen. + +---> Jemand hat das Ende der Zeile doppelt eingegeben. doppelt eingegeben. + + + 5. Gehe weiter zur Lektion 2.3 , um zu verstehen, was hierbei passiert. + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 2.3: ÜBER OPERATOREN UND BEWEGUNGSZÜGE + + + Viele Kommandos, die Text ändern, setzen sich aus einem Operator und einer + Bewegung zusammen. Das Format für ein Löschkommando mit dem Löschoperator d + lautet wie folgt: + + d Bewegung + + wobei: + d - der Löschoperator + Bewegung - worauf der Löschoperator angewandt wird (unten aufgelistet). + + Eine kleine Auflistung von Bewegungen: + w - bis zum Beginn des nächsten Wortes OHNE dessen erstes Zeichen. + e - zum Ende des aktuellen Wortes MIT dessen letztem Zeichen. + $ - zum Ende der Zeile MIT dem letzen Zeichen. + + Dementsprechend löscht die Eingabe von de vom Cursor an bis zum Wortende. + +Bemerkung: Die Eingabe lediglich des Bewegungsteils im Normalmodus bewegt den + Cursor entsprechend. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 2.4: ANWENDUNG EINES ZÄHLERS FÜR EINEN BEWEGUNGSSCHRITT + + + ** Die Eingabe einer Zahl vor einem Bewegungsschritt wiederholt diesen. ** + + 1. Bewege den Cursor zum Beginn der mit ---> markierten Zeile unten. + + 2. Tippe 2w , um den Cursor zwei Wörter vorwärts zu bewegen. + + 3. Tippe 3e , um den Cursor zum Ende des dritten Wortes zu bewegen. + + 4. Tippe 0 (Null) , um zum Anfang der Zeile zu gelangen. + + 5. Wiederhole Schritte 2 und 3 mit verschiedenen Zählern. + + ---> Dies ist nur eine Zeile aus Wörten um sich darin herumzubewegen. + + 6. Gehe weiter zu Lektion 2.5. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 2.5: ANWENDUNG EINES ZÄHLERS FÜR MEHRERE LÖSCHVORGÄNGE + + + ** Die Eingabe einer Zahl mit einem Operator wiederholt diesen mehrfach. ** + + Für die Kombination des Löschoperators und einem Bewegungsschritt (siehe + oben) stellt man dem Bewegungsschritt einen Zähler voran, um mehr zu löschen: + d Nummer Bewegungsschritt + + 1. Bewege den Cursor zum ersten Wort in GROSSBUCHSTABEN in der mit ---> + markieren Zeile. + + 2. Tippe d2w , um die zwei Wörter in GROSSBUCHSTABEN zu löschen. + + 3. Wiederhole Schritte 1 und 2 mit einem anderen Zähler, um die + darauffolgenden Wörter in GROSSBUCHSTABEN mit einem einzigen Kommando + zu löschen. + +---> Diese ABC DE Zeile FGHI JK LMN OP mit Wörtern ist Q RS TUV bereinigt. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 2.6: ARBEITEN AUF ZEILEN + + + ** Tippe dd , um eine ganze Zeile zu löschen. ** + + Wegen der Häufigkeit, dass man ganze Zeilen löscht, kamen die Entwickler von + Vi darauf, dass es leichter wäre, einfach zwei d's einzugeben, um eine Zeile + zu löschen. + + 1. Bewege den Cursor zur zweiten Zeile in der unten stehenden Redewendung. + 2. Tippe dd , um die Zeile zu löschen. + 3. Nun bewege Dich zur vierten Zeile. + 4. Tippe 2dd , um zwei Zeilen zu löschen. + +---> 1) Rosen sind rot, +---> 2) Matsch ist lustig, +---> 3) Veilchen sind blau, +---> 4) Ich habe ein Auto, +---> 5) Die Uhr sagt die Zeit, +---> 6) Zucker ist süß, +---> 7) So wie Du auch. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 2.7: RÜCKGÄNGIG MACHEN (UNDO) + + + ** Tippe u , um die letzten Kommandos rückgängig zu machen ** + ** oder U um eine ganze Zeile wiederherzustellen. ** + + 1. Bewege den Cursor zu der mit ---> markierten Zeile unten + und setze ihn auf den ersten Fehler. + 2. Tippe x , um das erste unerwünschte Zeichen zu löschen. + 3. Nun tippe u um das soeben ausgeführte Kommando rückgängig zu machen. + 4. Jetzt behebe alle Fehler auf der Zeile mit Hilfe des x Kommandos. + 5. Nun tippe ein großes U , um die Zeile in ihren Ursprungszustand + wiederherzustellen. + 6. Nun tippe u einige Male, um das U und die vorhergehenden Kommandos + rückgängig zu machen. + 7. Nun tippe CTRL-R (halte CTRL gedrückt und drücke R) mehrere Male, um die + Kommandos wiederherzustellen (die Rückgängigmachungen rückgängig machen). + +---> Beehebe die Fehller diesser Zeile und sttelle sie mitt 'undo' wieder her. + + 8. Dies sind sehr nützliche Kommandos. + Nun gehe weiter zur Zusammenfassung von Lektion 2. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ZUSAMMENFASSUNG VON LEKTION 2 + + + 1. Um vom Cursor bis zum nächsten Wort zu löschen, tippe: dw + 2. Um vom Cursor bis zum Ende einer Zeile zu löschen, tippe: d$ + 3. Um eine ganze Zeile zu löschen, tippe: dd + + 4. Um eine Bewegung zu wiederholen, stelle eine Nummer voran: 2w + 5. Das Format für ein Änderungskommando ist: + Operator [Anzahl] Bewegungsschritt + wobei: + Operator - gibt an, was getan werden soll, zum Beispiel d für delete + [Anzahl] - ein optionaler Zähler, um den Bewegungsschritt zu wiederholen + Bewegungsschritt - Bewegung über den zu ändernden Text, so wie + w (Wort), $ (zum Ende der Zeile), etc. + + 6. Um Dich zum Anfang der Zeile zu begeben, benutze die Null: 0 + + 7. Um vorherige Aktionen rückgängig zu machen, tippe: u (kleines u) + Um alle Änderungen auf einer Zeile rückgängig zu machen: U (großes U) + Um die Rückgängigmachungen rückgängig zu machen, tippe: CTRL-R + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 3.1: ANFÜGEN (PUT) + + + ** Tippe p , um vorher gelöschten Text nach dem Cursor anzufügen. ** + + 1. Bewege den Cursor zur ersten unten stehenden mit ---> markierten Zeile. + + 2. Tippe dd , um die Zeile zu löschen und sie in eimem Vim-Register zu + speichern. + + 3. Bewege den Cursor zur Zeile c), ÜBER derjenigen, wo die gelöschte Zeile + platziert werden soll. + + 4. Tippe p , um die Zeile unterhalb des Cursors zu platzieren. + + 5. Wiederhole die Schritte 2 bis 4, um alle Zeilen in die richtige + Reihenfolge zu bringen. + +---> d) Kannst Du das auch? +---> b) Veilchen sind blau, +---> c) Intelligenz ist erlernbar, +---> a) Rosen sind rot, +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 3.2: ERSETZEN (REPLACE) + + + ** Tippe rx , um das Zeichen unter dem Cursor durch x zu ersetzen. ** + + 1. Bewege den Cursor zur ersten unten stehenden mit ---> markierten Zeile. + + 2. Bewege den Cursor, bis er sich auf dem ersten Fehler befindet. + + 3. Tippe r und anschließend das Zeichen, welches dort stehen sollte. + + 4. Wiederhole Schritte 2 und 3, bis die erste Zeile gleich der zweiten ist. + +---> Als diese Zeite eingegoben wurde, wurden einike falsche Tasten gelippt! +---> Als diese Zeile eingegeben wurde, wurden einige falsche Tasten getippt! + + 5. Nun fahre fort mit Lektion 3.2. + +Bemerkung: Erinnere Dich, dass Du durch Anwenden lernen solltest, nicht durch + Auswendiglernen. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 3.3: ÄNDERN (CHANGE) + + + ** Um eine Änderung bis zum Wortende durchzuführen, tippe ce . ** + + 1. Bewege den Cursor zur ersten unten stehenden mit ---> markierten Zeile. + + 2. Platziere den Cursor auf das s von Wstwr. + + 3. Tippe ce und die Wortkorrektur ein (in diesem Fall tippe örter ). + + 4. Drücke <ESC> und bewege den Cursor zum nächsten zu ändernden Zeichen. + + 5. Wiederhole Schritte 3 und 4 bis der erste Satz gleich dem zweiten ist. + +---> Einige Wstwr dieser Zlaww lasdjlaf mit dem Ändern-Operator gaaauu werden. +---> Einige Wörter dieser Zeile sollen mit dem Ändern-Operator geändert werden. + +Bemerke, dass ce das Wort löscht und Dich in den Eingabemodus versetzt. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 3.4: MEHR ÄNDERUNGEN MITTELS c + + + ** Das change-Kommando arbeitet mit denselben Bewegungen wie delete. ** + + 1. Der change Operator arbeitet in gleicher Weise wie delete. Das Format ist: + + c [Anzahl] Bewegungsschritt + + 2. Die Bewegungsschritte sind die gleichen , so wie w (Wort) und $ + (Zeilenende). + + 3. Bewege Dich zur ersten unten stehenden mit ---> markierten Zeile. + + 4. Bewege den Cursor zum ersten Fehler. + + 5. Tippe c$ , gib den Rest der Zeile wie in der zweiten ein, drücke <ESC> . + +---> Das Ende dieser Zeile soll an die zweite Zeile angeglichen werden. +---> Das Ende dieser Zeile soll mit dem c$ Kommando korrigiert werden. + +Bemerkung: Du kannst die Rücktaste benutzen, um Tippfehler zu korrigieren. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ZUSAMMENFASSUNG VON LEKTION 3 + + + 1. Um einen vorher gelöschten Text anzufügen, tippe p . Dies fügt den + gelöschten Text NACH dem Cursor an (wenn eine ganze Zeile gelöscht wurde, + wird diese in die Zeile unter dem Cursor eingefügt). + + 2. Um das Zeichen unter dem Cursor zu ersetzen, tippe r und das an dieser + Stelle gewünschte Zeichen. + + 3. Der Änderungs- (change) Operator erlaubt, vom Cursor bis zum Ende des + Bewegungsschrittes zu ändern. Tippe ce , um eine Änderung vom Cursor bis + zum Ende des Wortes vorzunehmen; c$ bis zum Ende einer Zeile. + + 4. Das Format für change ist: + + c [Anzahl] Bewegungsschritt + + Nun fahre mit der nächsten Lektion fort. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 4.1: CURSORPOSITION UND DATEISTATUS + + ** Tippe CTRL-G , um Deine Dateiposition sowie den Dateistatus anzuzeigen. ** + ** Tippe G , um Dich zu einer Zeile in der Datei zu begeben. ** + +Bemerkung: Lies diese gesamte Lektion, bevor Du irgendeinen Schritt ausführst!! + + 1. Halte die Ctrl Taste unten und drücke g . Dies nennen wir wir CTRL-G. + Eine Statusmeldung am Fuß der Seite erscheint mit dem Dateinamen und der + Position innerhalb der Datei. Merke Dir die Zeilennummer für Schritt 3. + +Bemerkung: Möglicherweise siehst Du die Cursorposition in der unteren rechten + Bildschirmecke. Dies ist Folge der 'ruler' Option (siehe :help 'ruler') + + 2. Drücke G , um Dich zum Ende der Datei zu begeben. + Tippe gg , um Dich zum Anfang der Datei zu begeben. + + 3. Gib die Nummer der Zeile ein, auf der Du vorher warst, gefolgt von G . + Dies bringt Dich zurück zu der Zeile, auf der Du gestanden hast, als Du + das erste Mal CTRL-G gedrückt hast. + + 4. Wenn Du Dich sicher genug fühlst, führe die Schritte 1 bis 3 aus. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 4.2: DAS SUCHEN - KOMMANDO + + + ** Tippe / gefolgt von einem Ausdruck, um nach dem Ausdruck zu suchen. ** + + 1. Im Normalmodus, tippe das / Zeichen. Bemerke, dass das / und der + Cursor am Fuß des Schirms erscheinen, so wie beim : Kommando. + + 2. Nun tippe 'Fehhler' <ENTER>. Dies ist das Wort, nach dem Du suchen willst. + + 3. Um nach demselben Ausdruck weiterzusuchen, tippe einfach n (für next). + Um nach demselben Ausdruck in der Gegenrichtung zu suchen, tippe N . + + 4. Um nach einem Ausdruck rückwärts zu suchen , benutze ? statt / . + + 5. Um dahin zurückzukehren, von wo Du gekommen bist, drücke CTRL-O (Halte + Ctrl unten und drücke den Buchstaben o). Wiederhole dies, um weiter + zurückzugehen. CTRL-I bringt dich vorwärts. + +---> Fehler schreibt sich nicht "Fehhler"; Fehhler ist ein Fehler +Bemerkung: Wenn die Suche das Dateiende erreicht hat, wird sie am Anfang + fortgesetzt, es sei denn, die 'wrapscan' Option wurde abgeschaltet. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 4.3: PASSENDE KLAMMERN FINDEN + + + ** Tippe % , um eine korrespondierende Klammer ),], oder } zu finden. ** + + 1. Platziere den Cursor auf irgendeines der Zeichen (, [, oder { in der unten + stehenden Zeile, die mit ---> markiert ist. + + 2. Nun tippe das % Zeichen. + + 3. Der Cursor bewegt sich zur passenden gegenüberliegenden Klammer. + + 4. Tippe % , um den Cursor zur anderen passenden Klammer zu bewegen. + + 5. Setze den Cursor auf ein anderes (,),[,],{ oder } und probiere % aus. + +---> Dies ( ist eine Testzeile ( mit [ verschiedenen ] { Klammern } darin. )) + +Bemerkung: Diese Funktionalität ist sehr nützlich bei der Fehlersuche in einem + Programmtext, in dem passende Klammern fehlen! + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 4.4: DAS ERSETZUNGSKOMMANDO (SUBSTITUTE) + + + ** Tippe :s/alt/neu/g , um 'alt' durch 'neu' zu ersetzen. ** + + 1. Bewege den Cursor zu der unten stehenden mit ---> markierten Zeile. + + 2. Tippe :s/diee/die <ENTER> . Bemerke, dass der Befehl nur das erste + Vorkommen von "diee" ersetzt. + + 3. Nun tippe :s/diee/die/g . Das Zufügen des Flags g bedeutet, eine + globale Ersetzung über die Zeile durchzuführen, was alle Vorkommen von + "diee" auf der Zeile ersetzt. + +---> diee schönste Zeit, um diee Blumen anzuschauen, ist diee Frühlingszeit. + + 4. Um alle Vorkommen einer Zeichenkette innerhalb zweier Zeilen zu ändern, + tippe :#,#s/alt/neu/g wobei #,# die Zeilennummern des Zeilenbereiches + sind, in dem die Ersetzung durchgeführt werden soll. + Tippe :%s/alt/neu/g um alle Vorkommen in der gesamten Datei zu ändern. + Tippe :%s/alt/neu/gc um alle Vorkommen in der gesamten Datei zu finden + mit einem Fragedialog, ob ersetzt werden soll oder nicht. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ZUSAMMENFASSUNG VON LEKTION 4 + + 1. CTRL-G zeigt die aktuelle Dateiposition sowie den Dateistatus. + G bringt Dich zum Ende der Datei. + Nummer G bringt Dich zur entsprechenden Zeilennummer. + gg bringt Dich zur ersten Zeile. + + 2. Die Eingabe von / plus einem Ausdruck sucht VORWÄRTS nach dem Ausdruck. + Die Eingabe von ? plus einem Ausdruck sucht RÜCKWÄRTS nach dem Ausdruck. + Tippe nach einer Suche n , um das nächste Vorkommen in der gleichen + Richtung zu finden; oder N , um in der Gegenrichtung zu suchen. + CTRL-O bringt Dich zurück zu älteren Positionen, CTRL-I zu neueren. + + 3. Die Eingabe von % , wenn der Cursor sich auf (,),[,],{, oder } + befindet, bringt Dich zur Gegenklammer. + + 4. Um das erste Vorkommen von "alt" in einer Zeile durch "neu" zu ersetzen, + tippe :s/alt/neu + Um alle Vorkommen von "alt" in der Zeile ersetzen, tippe :s/alt/neu/g + Um Ausdrücke innerhalb zweier Zeilennummern zu ersetzen, :#,#s/alt/neu/g + Um alle Vorkommen in der ganzen Datei zu ersetzen, tippe :%s/alt/neu/g + Für eine jedmalige Bestätigung, addiere 'c' (confirm) :%s/alt/neu/gc +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 5.1: AUSFÜHREN EINES EXTERNEN KOMMANDOS + + + ** Gib :! , gefolgt von einem externen Kommando ein, um es auszuführen. ** + + 1. Tippe das vertraute Kommando : , um den Cursor auf den Fuß des Schirms + zu setzen. Dies erlaubt Dir, ein Kommandozeilen-Kommando einzugeben. + + 2. Nun tippe ein ! (Ausrufezeichen). Dies ermöglicht Dir, ein beliebiges, + externes Shellkommando auszuführen. + + 3. Als Beispiel tippe ls nach dem ! und drücke <ENTER>. Dies zeigt + eine Auflistung Deines Verzeichnisses; genauso, als wenn Du auf der + Eingabeaufforderung wärst. Oder verwende :!dir , falls ls nicht geht. + +Bemerkung: Mit dieser Methode kann jedes beliebige externe Kommando + ausgeführt werden, auch mit Argumenten. + +Bemerkung: Alle : Kommandos müssen durch Eingabe von <ENTER> + abgeschlossen werden. Von jetzt an erwähnen wir dies nicht jedesmal. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 5.2: MEHR ÜBER DAS SCHREIBEN VON DATEIEN + + +** Um am Text durchgeführte Änderungen zu speichern, tippe :w DATEINAME. ** + + 1. Tippe :!dir oder :!ls , um eine Auflistung Deines Verzeichnisses zu + erhalten. Du weißt nun bereits, dass Du danach <ENTER> eingeben musst. + + 2. Wähle einen Dateinamen, der noch nicht existiert, z.B. TEST. + + 3. Nun tippe: :w TEST (wobei TEST der gewählte Dateiname ist). + + 4. Dies speichert die ganze Datei (den Vim Tutor) unter dem Namen TEST. + Um dies zu überprüfen, tippe nochmals :!ls bzw. !dir, um Deinen + Verzeichnisinhalt zu sehen. + +Bemerkung: Würdest Du Vim jetzt beenden und danach wieder mit vim TEST + starten, dann wäre diese Datei eine exakte Kopie des Tutors zu dem + Zeitpunkt, als Du ihn gespeichert hast. + + 5. Nun entferne die Datei durch Eingabe von (MS-DOS): :!del TEST + oder (Unix): :!rm TEST +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 5.3: AUSWÄHLEN VON TEXT ZUM SCHREIBEN + +** Um einen Abschnitt der Datei zu speichern, tippe v Bewegung :w DATEI ** + + 1. Bewege den Cursor zu dieser Zeile. + + 2. Tippe v und bewege den Cursor zum fünften Auflistungspunkt unten. + Bemerke, daß der Text hervorgehoben wird. + + 3. Drücke das Zeichen : . Am Fuß des Schirms erscheint :'<,'> . + + 4. Tippe w TEST , wobei TEST ein noch nicht vorhandener Dateiname ist. + Vergewissere Dich, daß Du :'<,'>w TEST siehst, bevor Du Enter drückst. + + 5. Vim schreibt die ausgewählten Zeilen in die Datei TEST. Benutze :!dir + oder :!ls , um sie zu sehen. Lösche sie noch nicht! Wir werden sie in + der nächsten Lektion benutzen. + +Bemerkung: Drücken von v startet die Visuelle Auswahl. Du kannst den Cursor + umherbewegen, um die Auswahl größer oder kleiner zu machen. Anschließend + kann man einen Operator anwenden, um mit dem Text etwas zu tun. Zum + Beispiel löscht d den Text. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 5.4: EINLESEN UND ZUSAMMENFÜHREN VON DATEIEN + + + ** Um den Inhalt einer Datei einzulesen, tippe :r DATEINAME ** + + 1. Platziere den Cursor überhalb dieser Zeile. + +BEACHTE: Nachdem Du Schritt 2 ausgeführt hast, wirst Du Text aus Lektion 5.3 + sehen. Dann bewege Dich wieder ABWÄRTS, um diese Lektion wiederzusehen. + + 2. Nun lies Deine Datei TEST ein indem Du das Kommando :r TEST ausführst, + wobei TEST der von Dir verwendete Dateiname ist. + Die eingelesene Datei wird unterhalb der Cursorzeile eingefügt. + + 3. Um zu überprüfen, dass die Datei eingelesen wurde, gehe zurück und siehe, + dass es jetzt zwei Kopien von Lektion 5.3 gibt, das Original und die + eingefügte Dateiversion. + +Bemerkung: Du kannst auch die Ausgabe eines externen Kommandos einlesen. Zum + Beispiel liest :r !ls die Ausgabe des Kommandos ls ein und platziert + sie unterhalb des Cursors. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ZUSAMMENFASSUNG VON LEKTION 5 + + + 1. :!Kommando führt ein externes Kommando aus. + + Einige nützliche Beispiele sind + (MS-DOS) (Unix) + :!dir :!ls - zeigt eine Verzeichnisauflistung. + :!del DATEINAME :!rm DATEINAME - entfernt Datei DATEINAME. + + 2. :w DATEINAME speichert die aktuelle Vim-Datei unter dem Namen DATEINAME. + + 3. v Bewegung :w DATEINAME schreibt die Visuell ausgewählten Zeilen in + die Datei DATEINAME. + + 4. :r DATEINAME lädt die Datei DATEINAME und fügt sie unterhalb der + Cursorposition ein. + + 5. :r !dir liest die Ausgabe des Kommandos dir und fügt sie unterhalb der + Cursorposition ein. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 6.1: ZEILEN ÖFFNEN (OPEN) + + + ** Tippe o , um eine Zeile unterhalb des Cursors zu öffnen und Dich in ** + ** den Einfügemodus zu begeben. ** + + 1. Bewege den Cursor zu der ersten mit ---> markierten Zeile unten. + + 2. Tippe o (klein geschrieben), um eine Zeile UNTERHALB des Cursos zu öffnen + und Dich in den Einfügemodus zu begeben. + + 3. Nun tippe etwas Text und drücke <ESC> , um den Einfügemodus zu verlassen. + +---> Mit o wird der Cursor auf der offenen Zeile im Einfügemodus platziert. + + 4. Um eine Zeile ÜBERHALB des Cursos aufzumachen, gib einfach ein großes O + statt einem kleinen o ein. Versuche dies auf der unten stehenden Zeile. + +---> Öffne eine Zeile über dieser mit O , wenn der Cursor auf dieser Zeile ist. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 6.2: TEXT ANFÜGEN (APPEND) + + + ** Tippe a , um Text NACH dem Cursor einzufügen. ** + + 1. Bewege den Cursor zum Anfang der ersten Übungszeile mit ---> unten. + + 2. Drücke e , bis der Cursor am Ende von Zei steht. + + 3. Tippe ein kleines a , um Text NACH dem Cursor anzufügen. + + 4. Vervollständige das Wort so wie in der Zeile darunter. Drücke <ESC> , + um den Einfügemodus zu verlassen. + + 5. Bewege Dich mit e zum nächsten unvollständigen Wort und wiederhole + Schritte 3 und 4. + +---> Diese Zei bietet Gelegen , Text in einer Zeile anzufü. +---> Diese Zeile bietet Gelegenheit, Text in einer Zeile anzufügen. + +Bemerkung: a, i und A gehen alle gleichermaßen in den Einfügemodus; der + einzige Unterschied ist, wo die Zeichen eingefügt werden. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 6.3: EINE ANDERE ART DES ERSETZENS (REPLACE) + + + ** Tippe ein großes R , um mehr als ein Zeichen zu ersetzen. ** + + 1. Bewege den Cursor zur ersten unten stehenden, mit ---> markierten Zeile. + Bewege den Cursor zum Anfang des ersten xxx . + + 2. Nun drücke R und tippe die Nummer, die darunter in der zweiten Zeile + steht, so das diese das xxx ersetzt. + + 3. Drücke <ESC> , um den Ersetzungsmodus zu verlassen. Bemerke, daß der Rest + der Zeile unverändert bleibt. + + 4. Wiederhole die Schritte, um das verbliebene xxx zu ersetzen. + +---> Das Addieren von 123 zu xxx ergibt xxx. +---> Das Addieren von 123 zu 456 ergibt 579. + +Bemerkung: Der Ersetzungsmodus ist wie der Einfügemodus, aber jedes eingetippte + Zeichen löscht ein vorhandenes Zeichen. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 6.4: TEXT KOPIEREN UND EINFÜGEN + + ** Benutze den y Operator, um Text zu kopieren; p , um ihn einzufügen ** + + 1. Gehe zu der mit ---> markierten Zeile unten, setze den Cursor hinter "a)". + + 2. Starte den Visuellen Modus mit v , bewege den Cursor genau vor "erste". + + 3. Tippe y , um den hervorgehoben Text zu kopieren. + + 4. Bewege den Cursor zum Ende der nächsten Zeile: j$ + + 5. Tippe p , um den Text einzufügen und anschließend: a zweite <ESC> . + + 6. Benutze den Visuellen Modus, um " Eintrag." auszuwählen, kopiere mittels + y , bewege Dich zum Ende der nächsten Zeile mit j$ und füge den Text + dort mit p an. + +---> a) dies ist der erste Eintrag. + b) + +Bemerkung: Du kannst y auch als Operator verwenden; yw kopiert ein Wort. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 6.5: OPTIONEN SETZEN + + ** Setze eine Option so, dass eine Suche oder eine Ersetzung Groß- ** + ** und Kleinschreibung ignoriert ** + + 1. Suche nach 'ignoriere', indem Du /ignoriere eingibst. + Wiederhole die Suche einige Male, indem Du die n - Taste drückst. + + 2. Setze die 'ic' (Ignore case) - Option, indem Du :set ic eingibst. + + 3. Nun suche wieder nach 'ignoriere', indem Du n tippst. + Bemerke, daß jetzt Ignoriere und auch IGNORIERE gefunden wird. + + 4. Setze die 'hlsearch' und 'incsearch' - Optionen: :set hls is + + 5. Wiederhole die Suche und beobachte, was passiert: /ignoriere <ENTER> + + 6. Um das Ignorieren von Groß/Kleinschreibung abzuschalten, tippe: :set noic + +Bemerkung: Um die Hervorhebung der Treffer zu enfernen, gib ein: :nohlsearch +Bemerkung: Um die Schreibweise für eine einzige Suche zu ignorieren, benutze + \c im Suchausdruck: /ignoriere\c <ENTER> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ZUSAMMENFASSUNG VON LEKTION 6 + + 1. Tippe o , um eine Zeile UNTER dem Cursor zu öffnen und den Einfügemodus + zu starten. + Tippe O , um eine Zeile ÜBER dem Cursor zu öffnen. + + 2. Tippe a , um Text NACH dem Cursor anzufügen. + Tippe A , um Text nach dem Zeilenende anzufügen. + + 3. Das Kommando e bringt Dich zum Ende eines Wortes. + + 4. Der Operator y (yank) kopiert Text, p (put) fügt ihn ein. + + 5. Ein großes R geht in den Ersetzungsmodus bis zum Drücken von <ESC> . + + 6. Die Eingabe von ":set xxx" setzt die Option "xxx". Einige Optionen sind: + 'ic' 'ignorecase' Ignoriere Groß/Kleinschreibung bei einer Suche + 'is' 'incsearch' Zeige Teilübereinstimmungen für einen Suchausdruck + 'hls' 'hlsearch' Hebe alle passenden Ausdrücke hervor + Der Optionsname kann in der Kurz- oder der Langform angegeben werden. + + 7. Stelle einer Option "no" voran, um sie abzuschalten: :set noic +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 7.1 : AUFRUFEN VON HILFE + + + ** Nutze das eingebaute Hilfesystem ** + + Vim besitzt ein umfassendes eingebautes Hilfesystem. Für den Anfang probiere + eins der drei folgenden Dinge aus: + - Drücke die <Hilfe> - Taste (falls Du eine besitzt) + - Drücke die <F1> Taste (falls Du eine besitzt) + - Tippe :help <ENTER> + + Lies den Text im Hilfefenster, um zu verstehen wie die Hilfe funktioniert. + Tippe CTRL-W CTRL-W , um von einem Fenster zum anderen zu springen. + Tippe :q <ENTER> , um das Hilfefenster zu schließen. + + Du kannst Hilfe zu praktisch jedem Thema finden, indem Du dem ":help"- + Kommando ein Argument gibst. Probiere folgendes (<ENTER> nicht vergessen): + + :help w + :help c_CTRL-D + :help insert-index + :help user-manual +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 7.2: ERSTELLE EIN START-SKRIPT + + + ** Aktiviere die eingebauten Funktionalitäten von Vim ** + + Vim besitzt viele Funktionalitäten, die über Vi hinausgehen, aber die meisten + von ihnen sind standardmäßig deaktiviert. Um mehr Funktionalitäten zu nutzen, + musst Du eine "vimrc" - Datei erstellen. + + 1. Starte das Editieren der "vimrc"-Datei, abhängig von Deinem System: + :e ~/.vimrc für Unix + :e $VIM/_vimrc für MS-Windows + + 2. Nun lies den Inhalt der Beispiel-"vimrc"-Datei ein: + :r $VIMRUNTIME/vimrc_example.vim + + 3. Speichere die Datei mit: + :w + + Beim nächsten Start von Vim wird die Syntaxhervorhebung aktiviert sein. + Du kannst all Deine bevorzugten Optionen zu dieser "vimrc"-Datei zufügen. + Für mehr Informationen tippe :help vimrc-intro +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 7.3: VERVOLLSTÄNDIGEN + + + ** Kommandozeilenvervollständigung mit CTRL-D and <TAB> ** + + 1. Stelle sicher, daß Vim nicht im vi-Kompatibilitätsmodus ist: :set nocp + + 2. Siehe nach, welche Dateien im Verzeichnis existieren: :!ls oder :dir + + 3. Tippe den Beginn eines Komandos: :e + + 4. Drücke CTRL-D und Vim zeigt eine Liste mit "e" beginnender Kommandos. + + 5. Drücke <TAB> und Vim vervollständigt den Kommandonamen zu ":edit". + + 6. Nun füge ein Leerzeichen und den Beginn einer existierenden Datei an: + :edit DAT + + 7. Drücke <TAB>. Vim vervollständigt den Namen (falls er eindeutig ist). + +Bemerkung: Vervollständigung funktioniert für viele Kommandos. Versuche + einfach CTRL-D und <TAB>. Dies ist insbesondere nützlich für :help . +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ZUSAMMENFASSUNG VON LEKTION 7 + + + 1. Tippe :help oder drücke <F1> oder <Help>, um ein Hilfefenster zu öffnen. + + 2. Tippe :help Kommando , um Hilfe über Kommando zu erhalten. + + 3. Tippe CTRL-W CTRL-W , um zum anderen Fenster zu springen. + + 4. Tippe :q , um das Hilfefenster zu schließen. + + 5. Erstelle ein vimrc - Startskript zur Sicherung bevorzugter Einstellungen. + + 6. Drücke CTRL-D nach dem Tippen eines Kommandos : , um mögliche + Vervollständigungen zu sehen. + Drücke <TAB> für eine einzige Vervollständigung. + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + Damit ist der Vim Tutor beendet. Die Intention war, einen kurzen und + bündigen Überblick über den Vim Editor zu liefern; gerade genug, um relativ + leicht mit ihm umgehen zu können. Der Vim Tutor hat nicht den geringsten + Anspruch auf Vollständigkeit; Vim hat noch weitaus mehr Kommandos. Lies als + nächstes das User Manual: ":help user-manual". + + Für weiteres Lesen und Lernen ist folgendes Buch empfohlen : + Vim - Vi Improved - von Steve Oualline + Verlag: New Riders + Das erste Buch, welches durchgängig Vim gewidmet ist. Besonders nützlich + für Anfänger. Viele Beispiele und Bilder sind enthalten. + Siehe http://iccf-holland.org/click5.html + + Folgendes Buch ist älter und mehr über Vi als Vim, aber auch empfehlenswert: + Textbearbeitung mit dem vi-Editor - von Linda Lamb und Arnold Robbins + Verlag O'Reilly - ISBN: 3897211262 + In diesem Buch kann man fast alles finden, was man mit Vi tun möchte. + Die sechste Ausgabe enthält auch Informationen über Vim. + + Als aktuelle Referenz für Version 6.2 und knappe Einführung dient das + folgende Buch: + vim ge-packt von Reinhard Wobst + mitp-Verlag, ISBN 3-8266-1425-9 + Trotz der kompakten Darstellung ist es durch viele nützliche Beispiele auch + für Einsteiger empfehlenswert. Probekapitel und die Beispielskripte sind + online erhältlich. Siehe http://iccf-holland.org/click5.html + + Dieses Tutorial wurde geschrieben von Michael C. Pierce and Robert K. Ware, + Colorado School of Mines. Es benutzt Ideen, die Charles Smith, Colorado State + University, zur Verfügung stellte. E-mail: bware@mines.colorado.edu. + + Bearbeitet für Vim von Bram Moolenaar. + Deutsche Übersetzung von Joachim Hofmann 2007. E-mail: Joachim.Hof@gmx.de + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/tutor/tutor.el Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,815 @@ +=============================================================================== += � �� � � � � � � � � � � � V I M T u t o r - ������ 1.5 = +=============================================================================== + + � Vim ����� ���� ���������� ��������� ��� ���� ������ �������, ���� + ������ ��� �� ���������� �� ��� ��������� ���� ����. ���� � ��������� + ����������� ��� �� ���������� ������������� ��� ������� ��� �� ��� + ������ �� �������������� ������ ��� Vim ��� ���� ������� ������ ��������. + + � ���� ���������� ������ ��� ���������� ��� �� ������������ ��� ��������� + ����� 25-30 �����, ���������� ��� �� ���� ����� �� �������� ��� + ��������������. + + �� ������� ��� �������� �� ������������� �� �������. ������������ ��� + ��������� ����� ��� ������� ��� �� ����������� (�� ���������� �� + "Vimtutor" ���� ����� ��� ��� ���������). + + ����� ��������� �� ������� ��� ���� � ��������� ����� ���������� ���� + ���� �� �������� ���� ��� ������. ���� �������� ��� ���������� �� + ��������� ��� ������� ��� �� ��� ������ �����. �� ��������� ���� �� + �������, �� ��� ��������! + + ����, ����������� ��� �� ������� Shift-Lock ��� ����� �������� ��� + ������� �� ������� j ������� ����� ��� �� ������������ ��� ������ ���� + ���� �� ������ 1.1 �� ������� ������ ��� �����. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 1.1: ������������ ��� ������ + + ** ��� �� �������� ��� ������, ������� �� ������� h,j,k,l ���� ���������. ** + ^ + k Hint: �� ������� h ����� �������� ��� ����� ��' ��������. + < h l > �� ������� l ����� ����� ��� ����� ��� �����. + j �� ������� j ������� �� ������ ���� �� ����. + v + + 1. ������������ ��� ������ ������� ���� ����� ����� �� �������� �����. + + 2. �������� �������� �� ���� ������� (j) ����� �� �����������. +---> ���� ������ ��� �� ������������� ��� ������� ������. + + 3. ��������������� �� ���� �������, ������������� ��� ������ 1.2. + +��������: �� ����������� ��� ���� ��� ��������, ������� <ESC> ��� �� �������� + ���� �������� ���������. ���� ������� ���� ��� ������ ��� ������. + +��������: �� ������� ��� ������ �� ������ ������ �� ���������. ���� �� �� hjkl + �� �������� �� ��������� ���� �����������, ����� �� ����������. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 1.2: ���������� ��� ���������� ���� VIM + + !! ��������: ���� ���������� ������ ��� �� ������, �������� ��� �� ������!! + + 1. ������� �� ������� <ESC> (��� �� ����� ������� ���� �������� ���������). + + 2. ��������������: :q! <ENTER>. + +---> ���� ��������� ��� ��� �������� ����� �� ����� ������ ������� ����� �����. + �� ������ �� ������ ��� ������� ��� �� �������� ��������������: + :wq <ENTER> + + 3. ���� ����� ��� �������� ��� ������, �������������� ��� ������ �� ��� ����� + ������� �� ����� ��� ���������. ������ �� �����: vimtutor <ENTER> + �������� �� ����������������: vim tutor <ENTER> + +---> 'vim' �������� �������� ���� �������� vim, 'tutor' ����� �� ������ ��� + ������� �� �����������. + + 4. �� ����� �������������� ���� �� ������ ��� ����� �������������, ��������� + �� ������ 1 ��� 3 ��� �� ������ ��� �� ������ ���� ���� ��������. ���� + ����������� ��� ������ ���� ��� ������ 1.3. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 1.3: �������� �������� - �������� + + ** ��� ����� ���� �������� ��������� ������� x ��� �� ���������� ��� + ��������� ���� ��� ��� ������. ** + + 1. ������������ ��� ������ ���� �������� ������ ���������� �� --->. + + 2. ��� �� ���������� �� ����, �������� ��� ������ ����� �� ����� ���� ��� + ��� ��������� ��� �� ���������. + + 3. ������� �� ������� x ��� �� ���������� ��� ����������� ���������. + + 4. ����������� �� ������ 2 ����� 4 ����� � ������� �� ����� �����. + +---> The ccow jumpedd ovverr thhe mooon. + + 5. ���� ��� � ������ ����� �����, �������� ��� ������ 1.4. + +��������: ����� ���������� ����� ��� ���������, ����������� �� ��� + ��������������, ��������� �� �� �����. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 1.4: �������� �������� - ��������� + + ** ��� ����� �� �������� ��������� ������� i ��� �� ������������ �������. ** + + 1. ������������ ��� ������ ����� ��� ����� ������ �������� ���������� �� --->. + + 2. ��� �� ������ ��� ����� ������ ���� �� ��� �������, ������������ ��� + ������ ���� ���� ����� ��������� ���� ��� ���� �� ����������� �� �������. + + 3. ������� �� i ��� �������������� ��� ����������� ���������. + + 4. ����� ���������� ���� ����� ������� <ESC> ��� �� ����������� ���� + �������� ���������. ����������� �� ������ 2 ����� 4 ��� �� ���������� + ��� �������. + +---> There is text misng this . +---> There is some text missing from this line. + + 5. ���� ����� ������ �� ��� ��������� �������� ������������� ���� + �������� ��������. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 1 �������� + + + 1. � ������� �������� ��������������� ���� �� ������� ������ � �� hjkl. + h (��������) j (����) k (����) l (�����) + + 2. ��� �� ������ ���� Vim (��� ��� �������� %) ������: vim ������ <ENTER> + + 3. ��� �� ������ ������: <ESC> :q! <ENTER> ��� �������� ��� �������. + � ������: <ESC> :wq <ENTER> ��� ���������� ��� �������. + + 4. ��� �� ���������� ���� ��������� ���� ��� ��� ������ �� + �������� ��������� �������: x + + 5. ��� �� �������� ������� ���� ������ ��� ����� �� �������� ��������� ������: + i �������������� �� ������� <ESC> + +��������: �������� <ESC> �� ������������� ���� �������� ��������� � �� + ��������� ��� ����������� ��� ������� ������������ ������. + +���� ��������� �� �� ������ 2. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 2.1: ������� ��������� + + ** ������ dw ��� �� ���������� ����� �� ����� ���� �����. ** + + 1. ������� <ESC> ��� �� ����������� ��� ����� ���� �������� ���������. + + 2. ������������ ��� ������ ���� �������� ������ ���������� �� --->. + + 3. ��������� ��� ������ ���� ���� ��� ����� ��� ������ �� ���������. + + 4. ������ dw ��� �� ������ ��� ���� �� �����������. + +��������: �� �������� dw �� ����������� ���� ��������� ������ ��� ������ ��� + �� ��������������. �� ������� ���� �����, ������� <ESC> ��� + ��������� ��� ��� ����. + +---> There are a some words fun that don't belong paper in this sentence. + + 5. ����������� �� ������ 3 ��� 4 ����� � ������� �� ����� ����� ��� + ��������� ��� ������ 2.2. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 2.2: ������������ ������� ��������� + + ** �������������� d$ ��� �� ���������� ����� �� ����� ��� �������. ** + + 1. ������� <ESC> ��� �� ����������� ��� ����� ���� �������� ���������. + + 2. ������������ ��� ������ ���� �������� ������ ���������� �� --->. + + 3. ������������ ��� ������ ��� ����� ��� ������ ������� (���� ��� ����� . ). + + 4. ������� d$ ��� �� ���������� ����� �� ����� ��� �������. + +---> Somebody typed the end of this line twice. end of this line twice. + + 5. ��������� ��� ������ 2.3 ��� �� ���������� �� ���������. + + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 2.3: ���� ������� ��� ������������ + + +� ����� ��� ������� ��������� d ����� �� ����: + + [�������] d ����������� � d [�������] ����������� + ����: + ������� - ����� ����� �� ���������� � ������ (�����������, ��' �������=1). + d - � ������ ��� ���������. + ����������� - ���� �� �� �� ������������ � ������ (�������� �����). + + ��� ����� ����� ��� �����������: + w - ��� ��� ������ ����� �� ����� ��� �����, ��������������� �� ��������. + e - ��� ��� ������ ����� �� ����� ��� �����, ����� �� ��������. + $ - ��� ��� ������ ����� �� ����� ��� �������. + +��������: ��� ���� ������ ��� �����������, �������� ����� �� ����������� ��� + ����� ���� �������� ��������� ����� ������ ������ �� ������������ + ��� ������ ���� ����������� ���� ����� ������������. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 2.4: ��� �������� ���� '������-�����������' + + ** �������������� dd ��� �� ���������� ��� �� ������. ** + + �������� ��� ���������� ��� ��������� ��������� �������, �� ���������� + ��� Vim ���������� ��� �� ���� ���������� �� ������� ����� ��� d ��� + ����� ��� �� ���������� ��� ������. + + 1. ������������ ��� ������ ��� ������� ������ ��� �������� ������. + 2. ������ dd ��� �� ���������� �� ������. + 3. ���� ������������� ���� ������� ������. + 4. ������ 2dd (��������� �������-������-�����������) ��� �� + ���������� ��� �������. + + 1) Roses are red, + 2) Mud is fun, + 3) Violets are blue, + 4) I have a car, + 5) Clocks tell time, + 6) Sugar is sweet + 7) And so are you. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 2.5: � ������ ��������� + + ** ������� u ��� �� ���������� ��� ���������� �������, + U ��� �� ���������� ��� �� ������. ** + + 1. ������������ ��� ������ ���� �������� ������ ���������� �� ---> ��� + ����������� ��� ���� ��� ����� �����. + 2. ������� x ��� �� ���������� ��� ����� ����������� ���������. + 3. ���� ������� u ��� �� ���������� ��� ��������� ����������� ������. + 4. ���� �� ���� ��������� ��� �� ���� ��� ������ ��������������� ��� ������ x. + 5. ���� ������� ��� �������� U ��� �� ����������� �� ������ ���� ������ + ��� ���������. + 6. ���� ������� u ������� ����� ��� �� ���������� ��� U ��� + ������������ �������. + 7. ���� ������� CTRL-R (��������� �������� �� ������� CTRL ����� ������ �� R) + ������� ����� ��� �� ����������� ��� ������� (�������� ��� ����������). + +---> Fiix the errors oon thhis line and reeplace them witth undo. + + 8. ����� ����� ���� �������� �������. ���� ��������� ���� + �������� ��� ��������� 2. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 2 �������� + + + 1. ��� �� ���������� ��� ��� ������ ����� �� ����� ����� ������: dw + + 2. ��� �� ���������� ��� ��� ������ ����� �� ����� ������� ������: d$ + + 3. ��� �� ���������� �������� �� ������ ������: dd + + 4. � ����� ��� ��� ������ ���� �������� ��������� �����: + + [�������] ������ ����������� � ������ [�������] ����������� + ����: + ������� - ����� ����� �� ����������� � ������ + ������ - �� �� �����, ���� � d ��� �������� + ����������� - ���� �� �� �� ��������� � ������, ���� w (����), + $ (����� ��� �������), ���. + + 5. ��� �� ���������� ������������ ���������, �������: u (���� u) + ��� �� ���������� ���� ��� ������� ��� ������, �������: U (�������� U) + ��� �� ���������� ��� ����������, �������: CTRL-R + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 3.1: � ������ ����������� + + + ** ������� p ��� �� ������������ ��� ��������� �������� ���� ��� ������. ** + + 1. ������������ ��� ������ ���� ����� ������ ��� �������� ������. + + 2. ������� dd ��� �� ���������� �� ������ ��� �� ��� ������������ �� + ��������� ����� ��� Vim. + + 3. ������������ ��� ������ ��� ������ ���� ��� ���� ��� �� ������ �� ���� + � ����������� ������. + + 4. ��� ����� �� �������� ���������, ������� p ��� �� ������ �� ������. + + 5. ����������� �� ������ 2 ��� 4 ��� �� ������ ���� ��� ������� ��� + ����� �����. + + d) Can you learn too? + b) Violets are blue, + c) Intelligence is learned, + a) Roses are red, + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 3.2: � ������ �������������� + + + ** ������� r ��� ��������� ��� �� �������� ����� ��� ����� + ���� ��� ��� ������. ** + + 1. ������������ ��� ������ ���� ����� ������ �������� ���������� �� --->. + + 2. ������������ ��� ������ ���� ���� �� ����� ���� ��� ����� �����. + + 3. ������� r ��� ���� ��� ��������� � ������ ��������� �� �����. + + 4. ����������� �� ������ 2 ��� 3 ����� �� ����� ����� � ����� ������. + +---> Whan this lime was tuoed in, someone presswd some wrojg keys! +---> When this line was typed in, someone pressed some wrong keys! + + 5. ���� ��������� ��� ������ 3.2. + +��������: �� ������� ��� ������ �� ��������� �� �� �����, ��� ��� �� + ��� �������������. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 3.3: � ������ ������� + + ** ��� �� �������� ����� � ��� �� ����, ������� cw . ** + + 1. ������������ ��� ������ ���� ����� ������ �������� ���������� �� --->. + + 2. ����������� ��� ������ ���� ��� u ��� ����� lubw. + + 3. ������� cw ��� �� ����� ���� (���� ��������� ����, ������ 'ine'.) + + 4. ������� <ESC> ��� ��������� ��� ������� ����� (���� ����� + ��������� ���� ������). + + 5. ����������� �� ������ 3 ��� 4 ������ ���� � ����� ������� �� ����� + ���� �� �� �������. + +---> This lubw has a few wptfd that mrrf changing usf the change command. +---> This line has a few words that need changing using the change command. + +������������ ��� � cw ��� ���� ������������� �� ����, ���� ��� ������� +������ �� ���������. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 3.4: ������������ ������� �� c + + + ** � ������ ������� ��������������� �� �� ���� ����������� ��� ���������. ** + + + 1. � ������ ������� �������� �� ��� ���� ����� ���� � ��������. � ����� �����: + + [�������] c ����������� � c [�������] ����������� + + 2. �� ����������� ����� ���� �� ����, ���� w (����), $ (����� �������), ���. + + 3. ������������� ���� ����� ������ �������� ���������� �� --->. + + 4. ������������ ��� ������ ��� ����� �����. + + 5. ������ c$ ��� �� ������ �� �������� ��� ������� ���� �� �� ������� + ��� ������� <ESC>. + +---> The end of this line needs some help to make it like the second. +---> The end of this line needs to be corrected using the c$ command. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 3 �������� + + + 1. ��� �� ������������ ������� ��� ����� ���� ���������, ������� p . + ���� ��������� �� ����������� ������� ���� ��� ������ (�� ����������� + ������ �� ���� ���� ��� ������ ���� ��� ��� ������. + + 2. ��� �� ��������������� ��� ��������� ���� ��� ��� ������, ������� r + ��� ���� ��� ��������� ��� �� �������������� ��� ������. + + 3. � ������ ������� ��� ��������� �� �������� �� ����������� ����������� + ��� ��� ������ ����� �� ����� ��� �����������. �.�. ������ cw ��� �� + �������� ��� ��� ������ ����� �� ����� ��� �����, c$ ��� �� �������� + ����� �� ����� �������. + + 4. � ����� ��� ��� ������ �����: + + [�������] c ����������� � c [�������] ����������� + +���� ��������� �� �� ������� ������. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 4.1: ���� ��� ��������� ������� + + + ** ������� CTRL-g ��� �� ���������� � ���� ��� ��� ������ ��� � ��������� ���. + ������� SHIFT-G ��� �� ���� �� ��� ������ ��� ������. ** + + ��������: �������� �������� �� ������ ���� ���������� ������ ��� �� ������!! + + 1. �������� �������� �� ������� Ctrl ��� ������� g . ��� ������ ���������� + �� ���������� ��� ���� ����� ��� ������� �� �� ����� ������� ��� �� + ������ ��� �����. ��������� ��� ������ ������� ��� �� ���� 3. + + 2. ������� shift-G ��� �� ������������� ��� ����� ��� �������. + + 3. ������� ��� ������ ��� ������� ��� ������� ��� ���� shift-G. ���� �� + ��� ���������� ��� ������ ��� ������� ���� �������� ��� ����� ���� Ctrl-g. + (���� �������������� ���� ��������, ��� �� ������������ ���� �����). + + 4. �� �������� �������� ��� ����, ��������� �� ������ 1 ��� 3. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 4.2: � ������ ���������� + + + ** ������� / ������������� ��� �� ����� ��� �������. ** + + 1. �� �������� ��������� ������� ��� ��������� / . ����������� ��� ����� ��� + � ������� ������������ ��� ���� ����� ��� ������ ���� �� ��� ������ : . + + 2. ���� ������ 'errroor' <ENTER>. ���� ����� � ���� ��� ������ �� ������. + + 3. ��� �� ������ ���� ��� ��� ���� �����, ������� ����� n . + ��� �� ������ ��� ���� ����� ���� �������� ����������, ������� Shift-N . + + 4. �� ������ �� ������ ��� ��� ����� ���� �� ����, �������������� ��� ������ ? ���� ��� / . + +---> ���� � ��������� ������ ��� ����� ��� ������� �� ��������� ��� ��� ����. + + "errroor" is not the way to spell error; errroor is an error. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 4.3: ������ ���������� ����������� + + + ** ������� % ��� �� ������ ��� ���������� ), ], � } . ** + + 1. ����������� ��� ������ �� ������ (, [, � { ���� �������� ������ + ���������� �� --->. + + 2. ���� ������� ��� ��������� % . + + 3. � ������� �� ������ �� ����� ���� ���������� ��������� � ������. + + 4. ������� % ��� �� ������������ ��� ������ ���� ���� ����� ������ + (��� ���������). + +---> This ( is a test line with ('s, ['s ] and {'s } in it. )) + +��������: ���� ����� ���� ������� ���� ������������� ���� ������������ + �� �� ���������� �����������! + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 4.4: ���� ������ ��� ������ ����� + + + ** ������ :s/old/new/g ��� �� �������� �� 'new' �� �� 'old'. ** + + 1. ������������ ��� ������ ���� �������� ������ ���������� �� --->. + + 2. ������ :s/thee/the <ENTER> . ��������� ��� ���� � ������ ������� ���� + ��� ����� �������� ��� ������. + + 3. ���� ������ :s/thee/the/g ��������� ������ ������������� ��� + ������. ���� ������� ���� ��� ���������� ��� ��� �������. + +---> thee best time to see thee flowers is in thee spring. + + 4. ��� �� �������� ���� �������� ���� ������������� ������ ��� �������, + ������ :#,#s/old/new/g ���� #,# �� ������� ��� ��� �������. + ������ :%s/old/new/g ��� �� �������� ���� �������� �� ��� �� ������. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 4 �������� + + + 1. �� Ctrl-g ��������� �� ���� ��� ��� ������ ��� ��� ��������� ���. + �� Shift-G �������� ��� ����� ��� �������. ���� ������� ������� + �������������� ��� Shift-G �������� �� ������ �� ������. + + 2. ��������� / ������������� ��� ��� ����� ������ ���� �� ������� ��� + �� �����. ��������� ? ������������� ��� ��� ����� ������ ���� �� ���� + ��� �� �����. ���� ��� ��� ��������� ������� n ��� �� ������ ��� + ������� �������� ���� ��� ���� ���������� � Shift-N ��� �� ������ + ���� ��� �������� ����������. + + 3. �������� % ��� � ������� ����� ���� �� ��� (,),[,],{, � } ��������� + �� ���������� ����� ��� ���������. + + 4. ��� ������������� �� new ��� ������ old ��� ������ ������ :s/old/new + ��� ������������� �� new ���� ��� 'old' ��� ������ ������ :s/old/new/g + ��� ������������� ������� ������ ��� # ������� ������ :#,#s/old/new/g + ��� ������������� ���� ��� ���������� ��� ������ ������ :%s/old/new/g + ��� ������� ������������ ���� ���� ��������� ��� 'c' "%s/old/new/gc + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 5.1: ��� ������ ��� ��������� ������ + + +** ������ :! ������������� ��� ��� ��������� ������ ��� �� ��� ����������. ** + + 1. ������� ��� ������ ������ : ��� �� ������ ��� ������ ��� ���� ����� + ��� ������. ���� ��� ��������� �� ������ ��� ������. + + 2. ���� ������� �� ! (����������). ���� ��� ��������� �� ���������� + ����������� ��������� ������ ��� ������. + + 3. ��� ���������� ������ ls ���� ��� �� ! ��� ������� <ENTER>. ���� �� + ��� ��������� ��� ����� ��� ��������� ���, ������� ��� �� ������� ���� + �������� ��� ������. � �������������� :!dir �� �� ls ��� ��������. + +---> ��������: ����� ������� �� ���������� ����������� ��������� ������ + �� ����� ��� �����. + +---> ��������: ���� �� ������� : ������ �� ������������� �������� �� <ENTER>. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 5.2: ����������� ���� �������� ������� + + + ** ��� �� ������ ��� ������� ��� ������ ��� ������, ������ :w ������. ** + + 1. ������ :!dir � :!ls ��� �� ������ ��� ����� ��� ��������� ���. + ��� ������ ��� ������ �� �������� <ENTER> ���� ��� ����. + + 2. �������� ��� ����� ������� ��� ��� ������� �����, ���� �� TEST. + + 3. ���� ������: :w TEST (���� TEST ����� �� ����� ������� ��� ���������). + + 4. ���� ����� ��� �� ������ (vim Tutor) �� �� ����� TEST. ��� �� �� + ������������, ������ ���� :!dir ��� �� ����� ��� �������� ���. + +---> ��������� ��� �� �������� ��� ��� Vim ��� �������� ���� �� �� ����� + ������� TEST, �� ������ �� ���� ������� ��������� ��� tutor ���� �� ������. + + 5. ���� ��������� �� ������ ��������� (MS-DOS): :!del TEST + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 5.3: ���������� ������ �������� + + + ** ��� �� ������ ����� ��� �������, ������ :#,# w ������ ** + + 1. ���� ��� ����, ������ :!dir � :!ls ��� �� ������ ��� ����� ��� ��� + �������� ��� ��� �������� ��� ��������� ����� ������� ���� �� TEST. + + 2. ������������ ��� ������ ��� ���� ����� ����� ��� ������� ��� ������� + Ctrl-g ��� �� ������ ��� ������ ����� ��� �������. + �� ������� ����� ��� ������! + + 3. ���� ��������� ��� ���� ����� ��� ������� ��� ������� Ctrl-g ����. + �� ������� ��� ����� ��� ������! + + 4. ��� �� ������ ���� ��� ����� �� ������, ������ :#,# w TEST + ���� #,# �� ��� ������� ��� ��������������� (����,����) ��� TEST �� + ����� ��� ������� ���. + + 5. ����, ����� ��� �� ������ ����� ���� �� ��� :!dir ���� ��� �� ����������. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 5.4: ���������� ��� ��������� ������ + + + ** ��� �� �������� �� ����������� ���� �������, ������ :r ������ ** + + 1. ������ :!dir ��� �� ����������� ��� �� TEST ������� ��� ����. + + 2. ����������� ��� ������ ��� ���� ����� ��� �������. + +��������: ������ ���������� �� ���� 3 �� ����� �� ������ 5.3. + ���� ��������� ���� ���� ���� �� ������ ����. + + 3. ���� ��������� �� ������ ��� TEST ��������������� ��� ������ :r TEST + ���� TEST ����� �� ����� ��� �������. + +��������: �� ������ ��� �������� ������������ ���������� ���� ��� ��������� + � �������. + + 4. ��� �� ������������ ��� �� ������ ����������, ���� ��� ������ ��� + ����������� ��� �������� ���� ��� ��������� ��� ��������� 5.3, �� + ������ ��� � ������ ��� �������. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 5 �������� + + + 1. :!������ ������� ��� ��������� ������. + + ������ ������� ������������ ����� (MS-DOS): + :!dir - �������� ������ ���� ���������. + :!del ������ - ��������� �� ������. + + 2. :w ������ ������ �� ������ ������ ��� Vim ��� ����� �� ����� ������. + + 3. :#,#w ������ ����� ��� ������� ��� # ����� # ��� ������. + + 4. :r ������ ������� �� ������ ������ ������ ��� �� ����������� ���� + ��� ������ ������ ���� ��� �� ���� ��� ������. + + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 6.1: � ������ ���������� + + + ** ������� o ��� �� �������� ��� ������ ���� ��� ��� ������ ��� �� + �������� �� ��������� ��������. ** + + 1. ������������ ��� ������ ���� �������� ������ ���������� �� --->. + + 2. ������� o (����) ��� �� �������� ��� ������ ���� ��� ��� ������ ��� �� + �������� �� ��������� ��������. + + 3. ���� ���������� �� ���������� �� ---> ������ ��� ������� <ESC> ��� �� + ������ ��� ��� ��������� ��������. + +---> After typing o the cursor is placed on the open line in Insert mode. + + 4. ��� �� �������� ��� ������ ���� ��� ��� ������, ������� ���� ��� �������� + O, ���� ��� ��� ���� o. ��������� �� ���� �������� ������. +�������� ������ ���� ��� ����� �������� Shift-O ��� � ������� ����� ��� ������ + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 6.2: � ������ ��������� + + ** ������� a ��� �� �������� ������� ���� ��� ������. ** + + 1. ������������ ��� ������ ��� ����� ��� ������ ������� �������� + ���������� �� ---> �������� $ ���� �������� ���������. + + 2. ������� ��� a (����) ��� �� ���������� ������� ���� ��� ��� ��������� + ��� ����� ���� ��� ��� ������. (�� �������� A ��������� ��� ����� + ��� �������). + +��������: ���� ��������� �� ������ ��� i , ��� ��������� ���������, �� + ������� ��� ���������, <ESC>, ������-�����, ��� �����, x, ���� ��� + ���� ��� �� ���������� ��� ����� ��� �������! + + 3. ����������� ���� ��� ����� ������. ��������� ������ ��� � �������� ����� + ������� ���� ���� ��������� �������� �� ��� ��������� ���������, ����� + ��� �� ���� ��� ��������� �� �������. + +---> This line will allow you to practice +---> This line will allow you to practice appending text to the end of a line. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 6.3: ���� ������ ��� �������������� + + + ** ������� �������� R ��� �� �������� ������������� ��� ���� ����������. ** + + 1. ������������ ��� ������ ���� ����� ������ �������� ���������� �� --->. + + 2. ����������� ��� ������ ���� ���� ��� ������ ����� ��� ����� ����������� + ��� �� ������� ������ ���������� �� ---> (� ���� 'last'). + + 3. ������� ���� R ��� ������� �� �������� ��� �������� ���� ����� ������ + ��������� ���� ��� �� ����� ������� ���� �� ������ ��� ����� ������ ���� + �� �� �������. + +---> To make the first line the same as the last on this page use the keys. +---> To make the first line the same as the second, type R and the new text. + + 4. ��������� ��� ���� ������ <ESC> ��� �� ������, ��������� ����������� + ���������� �������. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 6.4: ������� �������� + + + ** �������� ��� ������� ���� ���� � ��������� � � ������������� �� ������ + �� ������� �����-��������� ** + + 1. ����� ��� 'ignore' ����������: + /ignore + ��������� ������� ����� �������� �� ������� n. + + 2. ����� ��� ������� 'ic' (Ignore case) ���������: + :set ic + + 3. ����� ���� ���� ��� 'ignore' ��������: n + ��������� ��� ��������� ������� ����� ����� �������� �� ������� n + + 4. ����� ��� �������� 'hlsearch' ��� 'incsearch': + :set hls is + + 5. �������� ���� ���� ��� ������ ����������, ��� ����� �� ��������� + /ignore + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 6 �������� + + + 1. �������� o ������� ��� ������ ���� ��� ��� ������ ��� ��������� ��� + ������ ���� ������� ������ �� ��������� ��������. + + 2. ������� a ��� �� �������� ������� ���� ��� ��������� ���� ����� ����� + � �������. �������� �������� A �������� ��������� ������� ��� ����� + ��� �������. + + 3. �������� �������� R ���������� ���� �������� �������������� ����� �� + ������� �� <ESC> ��� �� �������. + + 4. ��������� ":set xxx" �������� ��� ������� "xxx". + + + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 7: ON-LINE ������� �������� + + + ** �������������� �� on-line ������� �������� ** + + � Vim ���� ��� ���������� on-line ������� ��������. ��� �� ���������, + ��������� ������ ��� �� ����: + - ������� �� ������� <HELP> (�� ����� ������) + - ������� �� ������� <F1> (�� ����� ������) + - ������ :help <ENTER> + + ������ :q <ENTER> ��� �� �������� �� �������� ��� ��������. + + �������� �� ������ ������� ���� �� ���� �����������, �������� ��� ��������� + ���� ������ ":help". ��������� ���� (��� ������� �� ������ <ENTER>): + + :help w + :help c_<T + :help insert-index + :help user-manual + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 8: ������������ ��� SCRIPT ��������� + + ** ������������� �������������� ��� Vim ** + + � Vim ���� ����� ����������� �������������� ��' �,�� � Vi, ���� �� + ����������� ����� ������ ����������������. ��� �� �������� �� �������������� + ����������� �������������� ������ �� �������� ��� ������ "vimrc". + + 1. ������� ������������ �� ������ "vimrc", ���� ��������� ��� �� ������� ���: + :edit ~/.vimrc ��� Unix + :edit $VIM/_vimrc ��� MS-Windows + + 2. ���� �������� �� ������� ������������� ��� ������ "vimrc": + :read $VIMRUNTIME/vimrc_example.vim + + 3. ������ �� ������ �� ���: + :write + + ��� ������� ���� ��� �� ���������� ��� Vim �� �������������� ������� + ��������. �������� �� ���������� ���� ��� ������������ �������� �' ���� + �� ������ "vimrc". + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + ��� ������������� �� Vim Tutor. ������ ��� ���� �� ����� ��� ������� + �������� ��� �������� Vim, ����������� ���� ���� �� ��� ��������� �� + ��������������� ��� �������� ������ ������. ������ ���� ��� ��� + ������������ ���������� ����� � Vim ���� ���� ������ �������. �������� + ������� �� ���������� ������: + ":help user-manual". + + ��� ��������� �������� ��� ������, ���������� ���� �� ������: + Vim - Vi Improved - by Steve Oualline + Publisher: New Riders + �� ����� ������ ������ ���������� ���� Vim. + ��������� ������� ��� ���������. + �������� ����� ������������ ��� �������. + ����� ��� http://iccf-holland.org/click5.html + + ���� �� ������ ����� ��������� ��� ����������� ��� ��� Vi ���� ��� ��� Vim, + ���� ������ �����������: + Learning the Vi Editor - by Linda Lamb + Publisher: O'Reilly & Associates Inc. + ����� ��� ���� ������ ��� �� ������ ������ �� ����� ��� ������ + �� ������ �� ��� Vi. + � ���� ������ �������� ����� ����������� ��� ��� Vim. + + ���� � ��������� �������� ��� ���� Michael C. Pierce ��� Robert K. Ware, + Colorado School of Mines ��������������� ����� ��� ��� Charles Smith, + Colorado State University. E-mail: bware@mines.colorado.edu. + + ���������� ��� ��� Vim ��� ��� Bram Moolenaar. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/tutor/tutor.el.cp737 Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,815 @@ +=============================================================================== += � �� � � � � � � � � � � � V I M T u t o r - 롛��� 1.5 = +=============================================================================== + + � Vim �夘� ⤘� ���婮���� ����ᡫ�� ��� ⮜� ����� ������, �ᨘ + ����� ��� �� ����㩦��� �� �� ����㚞�� �� ����. ���� � ����㚞�� + �����ᩫ��� ��� �� ������ᯜ� ������������� ��� ������ ��� �� ��� + �ᤦ�� �� �����������嫜 �硦�� ��� Vim ��� ⤘� ������ ��㩞� ����ᡫ�. + + � ���� ����⚚��� ��椦� ��� ������嫘� ��� �� �������驜�� ��� ����㚞�� + �夘� 25-30 �����, �����餫�� ��� �� �橦 ��椦 �� ���⯜�� ��� + �������������. + + �� ������ ��� ���㣘�� �� ��������㩦�� �� ��壜��. ��������㩫� ⤘ + ���嚨��� ����� ��� ����妬 ��� �� ��������嫜 (�� �����㩘�� �� + "Vimtutor" ���� �夘� 㛞 ⤘ ���嚨���). + + �夘� ��������� �� ���ᩫ� 櫠 ���� � ����㚞�� �夘� ������⤞ ⫩� + 驫� �� ���ᩡ�� ��� ��� ��㩞�. ���� ����夜� 櫠 ������� �� + ������嫜 ��� ������ ��� �� ��� �ៜ�� �੫�. �� ������ �椦 �� + ��壜��, �� ��� ���ᩜ��! + + �騘, ��������嫜 櫠 �� ��㡫�� Shift-Lock ��� �夘� �����⤦ ��� + ���㩫� �� ��㡫�� j ������ ���� ��� �� �������㩜�� ��� ����� ⫩� + 驫� �� ��� 1.1 �� ���婜� ���� ��� ��椞. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ��� 1.1: ������������ ��� ������ + + ** ��� �� ���㩜�� ��� �����, ���㩫� �� ��㡫�� h,j,k,l �� ��室����. ** + ^ + k Hint: �� ��㡫�� h �夘� �������� ��� ����� ��' ��������. + < h l > �� ��㡫�� l �夘� ����� ��� ����� ��� �����. + j �� ��㡫�� j ���� �� ���ᡠ ���� �� ���. + v + + 1. ��������婫� ��� ����� ������ ���� ��椞 �⮨� �� ���韜�� ᤜ��. + + 2. ����㩫� �����⤦ �� ��� ��㡫�� (j) �⮨� �� �����������. +---> �騘 �⨜�� �� �� ����������嫜 ��� ��棜�� ���. + + 3. ����������餫�� �� ��� ��㡫��, ����������嫜 ��� ��� 1.2. + +�����ਫ਼: �� �����ᢢ��� ��� � ��� ���㩘��, ���㩫� <ESC> ��� �� �����嫜 + ���� �������� ���ᩫ���. ���� ���㩫� ���� ��� ������ ��� �⢘��. + +�����ਫ਼: �� ��㡫�� ��� ����� �� ��⧜� ��婞� �� �����禬�. ���� �� �� hjkl + �� �����嫜 �� ������嫜 ���� ������櫜��, �梠� �� �����婜��. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ��� 1.2: ���������� ��� ���������� ���� VIM + + !! ��������: ���� �����⩜�� �᧦�� ��� �� �㣘��, ����ᩫ� 梦 �� ���!! + + 1. ���㩫� �� ��㡫�� <ESC> (��� �� �婫� �嚦��� ���� �������� ���ᩫ���). + + 2. ����������㩫�: :q! <ENTER>. + +---> ���� ��⨮���� ��� ��� ����ᡫ� ����� �� �驜� 槦��� ������ ⮜�� �ᤜ�. + �� �⢜�� �� �驜�� ��� ������ ��� �� ��⨟��� ����������㩫�: + :wq <ENTER> + + 3. � ��嫜 ��� �������� ��� ������, ����������㩫� ��� ������ �� ��� ���� + ��㡘�� �� ���� ��� ����㚞��. ������ �� �夘�: vimtutor <ENTER> + �������� �� �����������穘��: vim tutor <ENTER> + +---> 'vim' ����夜� �������� ���� ����ᡫ� vim, 'tutor' �夘� �� ����� ��� + �⢦��� �� �����驦���. + + 4. �� ⮜�� ����������穜� ���� �� �㣘�� ��� ⮜�� ��������埞��, �����⩫� + �� �㣘�� 1 �� 3 ��� �� ���嫜 ��� �� ���嫜 ���� ���� ����ᡫ�. ���� + �������㩫� ��� ����� ��� ��� ��� 1.3. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ��� 1.3: �������� �������� - �������� + + ** �婫� ���� �������� ���ᩫ��� ���㩫� x ��� �� �����ᯜ�� ��� + ������㨘 ��� ��� ��� �����. ** + + 1. ��������婫� ��� ����� ���� ������� ������ ������⤞ �� --->. + + 2. ��� �� �����驜�� �� �, ����婫� ��� ����� �⮨� �� �夘� ��� ��� + ��� ������㨘 ��� �� ���������. + + 3. ���㩫� �� ��㡫�� x ��� �� �����ᯜ�� ��� ������磞�� ������㨘. + + 4. ������ᙜ�� �� �㣘�� 2 �⮨� 4 �⮨� � ��櫘�� �� �夘� �੫�. + +---> The ccow jumpedd ovverr thhe mooon. + + 5. �騘 ��� � ������ �夘� �੫�, ����夫� ��� ��� 1.4. + +��������: ���� �����⮜�� ���� ��� ����㚞��, �������㩫� �� ��� + ����������眫�, ����夜�� �� �� ��㩞. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ��� 1.4: �������� �������� - ��������� + + ** �婫� �� �������� ���ᩫ��� ���㩫� i ��� �� ������ᢢ��� ��壜��. ** + + 1. ��������婫� ��� ����� �⮨� ��� ��髞 ������ ������� ������⤞ �� --->. + + 2. ��� �� �ᤜ�� ��� ��髞 ������ 因� �� ��� ��竜��, ��������婫� ��� + ����� ��� ���� ��髦 ������㨘 ���� ��� 槦� �� ����������� �� ��壜��. + + 3. ���㩫� �� i ��� ����������㩫� ��� �����嫞��� �����㡜�. + + 4. ���� �����餜�� �ៜ �៦� ���㩫� <ESC> ��� �� ������⯜�� ���� + �������� ���ᩫ���. ������ᙜ�� �� �㣘�� 2 �⮨� 4 ��� �� �����驜�� + ��� ��櫘��. + +---> There is text misng this . +---> There is some text missing from this line. + + 5. � �婫� ᤜ��� �� ��� ��������� ����⤦� ����������嫜 ���� + ������� ���增��. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 1 �������� + + + 1. � ����☪ ����嫘� ����������餫�� �嫜 �� ��㡫�� ����� � �� hjkl. + h (�����⨘) j (���) k (���) l (�����) + + 2. ��� �� ���嫜 ���� Vim (��� ��� �������� %) ��ᯫ�: vim ������ <ENTER> + + 3. ��� �� ���嫜 ��ᯫ�: <ESC> :q! <ENTER> ��� ��樨��� �� ������. + � ��ᯫ�: <ESC> :wq <ENTER> ��� ����㡜��� �� ������. + + 4. ��� �� �����ᯜ�� ⤘� ������㨘 ��� ��� ��� ����� �� + �������� ���ᩫ��� ���㩫�: x + + 5. ��� �� ���᚜�� ��壜�� ���� ����� 橦 �婫� �� �������� ���ᩫ��� ��ᯫ�: + i ����������㩫� �� ��壜�� <ESC> + +��������: ���餫�� <ESC> �� ����������嫜 ���� �������� ���ᩫ��� � �� + ����驜�� �� ������磞�� ��� ������ ��������⤞ ������. + +�騘 �����婫� �� �� ��� 2. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ��� 2.1: ������� ��������� + + ** ��ᯫ� dw ��� �� �����ᯜ�� �⮨� �� �⢦� �嘪 �⥞�. ** + + 1. ���㩫� <ESC> ��� �� ��������嫜 櫠 �婫� ���� �������� ���ᩫ���. + + 2. ��������婫� ��� ����� ���� ������� ������ ������⤞ �� --->. + + 3. ����夜�� ��� ����� ���� ���� ��� �⥞� ��� ��⧜� �� ���������. + + 4. ��ᯫ� dw ��� �� �ᤜ�� ��� �⥞ �� �����������. + +��������: �� ��ᣣ��� dw �� ���������� ���� �������� ������ ��� ��椞� 橦 + �� �����������嫜. �� ��ᯘ�� � �៦�, ���㩫� <ESC> ��� + �����㩫� ��� ��� ����. + +---> There are a some words fun that don't belong paper in this sentence. + + 5. ������ᙜ�� �� �㣘�� 3 ��� 4 �⮨� � ��櫘�� �� �夘� �੫� ��� + ����夜�� ��� ��� 2.2. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ��� 2.2: ������������ ������� ��������� + + ** ����������㩫� d$ ��� �� �����ᯜ�� �⮨� �� �⢦� ��� ������. ** + + 1. ���㩫� <ESC> ��� �� ��������嫜 櫠 �婫� ���� �������� ���ᩫ���. + + 2. ��������婫� ��� ����� ���� ������� ������ ������⤞ �� --->. + + 3. ��������婫� ��� ����� ��� �⢦� ��� �੫� ������ (���� ��� ��髞 . ). + + 4. ���㩫� d$ ��� �� �����ᯜ�� �⮨� �� �⢦� ��� ������. + +---> Somebody typed the end of this line twice. end of this line twice. + + 5. ����夜�� ��� ��� 2.3 ��� �� �����ᙜ�� �� �����夜�. + + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ��� 2.3: ���� ������� ��� ������������ + + +� ����� ��� ������ �������� d �夘� � ���: + + [������] d ������壜�� � d [������] ������壜�� + �: + ������ - �橜� ���� �� ���������� � ������ (�����������, ��' �������=1). + d - � ������ ��� ��������. + ������壜�� - ��� �� �� �� ��������㩜� � ������ (������� �婫�). + + �� ����� �婫� ��� ������壜��: + w - ��� ��� ����� �⮨� �� �⢦� ��� �⥞�, ��������ᤦ���� �� ��ᩫ���. + e - ��� ��� ����� �⮨� �� �⢦� ��� �⥞�, ����� �� ��ᩫ���. + $ - ��� ��� ����� �⮨� �� �⢦� ��� ������. + +��������: ��� ���� �秦�� ��� �����⫝̸���, ���餫�� ���� �� ������壜�� 橦 + �婫� ���� �������� ���ᩫ��� ��� �᧦�� ������ �� �������㩜�� + ��� ����� �� �����坜��� ���� �婫� ����������. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ��� 2.4: ��� �������� ���� '������-�����������' + + ** ����������㩫� dd ��� �� �����ᯜ�� 梞 �� ������. ** + + �����嘪 ��� ����櫞��� ��� �������� ��桢���� ������, �� ��������� + ��� Vim ����᩠��� 櫠 �� 㫘� �����櫜�� �� ��᭜�� ���� �� d ��� + ����� ��� �� �����ᯜ�� �� ������. + + 1. ��������婫� ��� ����� ��� ��竜�� ������ ��� ������� ��ᩞ�. + 2. ��ᯫ� dd ��� �� �����ᯜ�� �� ������. + 3. �騘 ����������嫜 ���� �⫘��� ������. + 4. ��ᯫ� 2dd (������嫜 ������-������-������壜��) ��� �� + �����ᯜ�� �� ������. + + 1) Roses are red, + 2) Mud is fun, + 3) Violets are blue, + 4) I have a car, + 5) Clocks tell time, + 6) Sugar is sweet + 7) And so are you. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ��� 2.5: � ������ ��������� + + ** ���㩫� u ��� �� �����⩜�� ��� �������圪 ������, + U ��� �� �����驜�� 梞 �� ������. ** + + 1. ��������婫� ��� ����� ���� ������� ������ ������⤞ �� ---> ��� + �������㩫� ��� ��� ��� ��髦 �៦�. + 2. ���㩫� x ��� �� �����ᯜ�� ��� ��髦 ������磞�� ������㨘. + 3. �騘 ���㩫� u ��� �� �����⩜�� ��� �������� ��������⤞ ������. + 4. ���� �� ���� �����驫� 梘 �� � ��� ������ ����������餫�� ��� ������ x. + 5. �騘 ���㩫� ⤘ ������� U ��� �� ������⯜�� �� ������ ���� ������ + ��� ���ᩫ���. + 6. �騘 ���㩫� u ������ ���� ��� �� �����⩜�� ��� U ��� + ������磜��� ������. + 7. �騘 ���㩫� CTRL-R (����餫�� �����⤦ �� ��㡫�� CTRL ���� ��� �� R) + ������ ���� ��� �� ������⨜�� ��� ������ (���娜�� �� �����⩜�). + +---> Fiix the errors oon thhis line and reeplace them witth undo. + + 8. ���� �夘� ���� ��㩠��� ������. �騘 ����夜�� ���� + ���增�� ��� ���㣘��� 2. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 2 �������� + + + 1. ��� �� �����ᯜ�� ��� ��� ����� �⮨� �� �⢦� �⥞� ��ᯫ�: dw + + 2. ��� �� �����ᯜ�� ��� ��� ����� �⮨� �� �⢦� ������ ��ᯫ�: d$ + + 3. ��� �� �����ᯜ�� ��桢��� �� ������ ��ᯫ�: dd + + 4. � ����� ��� �� ������ ���� �������� ���ᩫ��� �夘�: + + [������] ������ ������壜�� � ������ [������] ������壜�� + 槦�: + ������ - �橜� ���� �� ����������� � ������ + ������ - �� �� �夜�, �� � d ��� �������� + ������壜�� - ��� �� �� �� �����㩜� � ������, �� w (�⥞), + $ (�⢦� ��� ������), ���. + + 5. ��� �� �����⩜�� ������磜��� ��⨚����, ���㩫�: u (���� u) + ��� �� �����⩜�� 梜� ��� ������ ��� ������, ���㩫�: U (������� U) + ��� �� �����⩜�� ��� �����⩜��, ���㩫�: CTRL-R + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ��� 3.1: � ������ ����������� + + + ** ���㩫� p ��� �� �������㩜�� ��� �������� �������� ���� ��� �����. ** + + 1. ��������婫� ��� ����� ���� ��髞 ������ ��� ������� ��ᛘ�. + + 2. ���㩫� dd ��� �� �����ᯜ�� �� ������ ��� �� ��� �������穜�� �� + ����ਠ�� ��㣞 ��� Vim. + + 3. ��������婫� ��� ����� ��� ������ ���� ��� ���� ��� �� ��⧜� �� �ᜠ + � ��������⤞ ������. + + 4. �婫� �� �������� ���ᩫ���, ���㩫� p ��� �� �ᢜ�� �� ������. + + 5. ������ᙜ�� �� �㣘�� 2 �� 4 ��� �� �ᢜ�� 梜� ��� ������ ��� + �੫� �����. + + d) Can you learn too? + b) Violets are blue, + c) Intelligence is learned, + a) Roses are red, + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ��� 3.2: � ������ �������������� + + + ** ���㩫� r ��� ������㨘 ��� �� ���ᥜ�� ���� ��� �夘� + ��� ��� ��� �����. ** + + 1. ��������婫� ��� ����� ���� ��髞 ������ ������� ������⤞ �� --->. + + 2. ��������婫� ��� ����� ⫩� 驫� �� �夘� ��� ��� ��髦 �៦�. + + 3. ���㩫� r ��� ���� ��� ������㨘 � ���妪 �����餜� �� �៦�. + + 4. ������ᙜ�� �� �㣘�� 2 ��� 3 �⮨� �� �夘� �੫� � ��髞 ������. + +---> Whan this lime was tuoed in, someone presswd some wrojg keys! +---> When this line was typed in, someone pressed some wrong keys! + + 5. �騘 ����夜�� ��� ��� 3.2. + +��������: �� ���ᩫ� 櫠 ��⧜� �� ����夜�� �� �� ��㩞, ��� 殠 �� + ��� �������検���. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ��� 3.3: � ������ ������� + + ** ��� �� ���ᥜ�� ��㣘 � 梞 �� �⥞, ���㩫� cw . ** + + 1. ��������婫� ��� ����� ���� ��髞 ������ ������� ������⤞ �� --->. + + 2. �������㩫� ��� ����� ��� ��� u ��� �⥞� lubw. + + 3. ���㩫� cw ��� �� �੫� �⥞ (���� ���姫ਫ਼ ����, ��ᯫ� 'ine'.) + + 4. ���㩫� <ESC> ��� ����夜�� ��� ��棜�� �៦� (���� ��髦 + ������㨘 ���� ������). + + 5. ������ᙜ�� �� �㣘�� 3 ��� 4 �⮨�� 櫦� � ��髞 ��櫘�� �� �夘� + 因� �� �� ��竜��. + +---> This lubw has a few wptfd that mrrf changing usf the change command. +---> This line has a few words that need changing using the change command. + +��������婫� 櫠 � cw 殠 �椦 ����������ᜠ �� �⥞, ���� ��� ���᚜� +��婞� �� ���������. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ��� 3.4: ������������ ������� �� c + + + ** � ������ ������ �����������嫘� �� �� 因� ������壜�� ��� ��������. ** + + + 1. � ������ ������ �����眠 �� ��� 因� ��槦 �� � ��������. � ����� �夘�: + + [������] c ������壜�� � c [������] ������壜�� + + 2. �� ������壜�� �夘� �ᢠ �� 因�, �� w (�⥞), $ (�⢦� ������), ���. + + 3. ����������嫜 ���� ��髞 ������ ������� ������⤞ �� --->. + + 4. ��������婫� ��� ����� ��� ��髦 �៦�. + + 5. ��ᯫ� c$ ��� �� �ᤜ�� �� ��梦��� ��� ������ 因� �� �� ��竜�� + ��� ���㩫� <ESC>. + +---> The end of this line needs some help to make it like the second. +---> The end of this line needs to be corrected using the c$ command. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 3 �������� + + + 1. ��� �� �������㩜�� ��壜�� ��� �梠� ⮜� ���������, ���㩫� p . + ���� ��������� �� ��������⤦ ��壜�� ���� ��� ����� (�� �����᭫��� + ������ �� �ᜠ ���� ��� ������ ��� ��� ��� �����. + + 2. ��� �� ����������㩜�� ��� ������㨘 ��� ��� ��� �����, ���㩫� r + ��� ���� ��� ������㨘 ��� �� ����������㩜� ��� ������. + + 3. � ������ ������ ��� �����⧜� �� ���ᥜ�� �� ��������⤦ ������壜�� + ��� ��� ����� �⮨� �� �⢦� ��� ������壜��. �.�. ��ᯫ� cw ��� �� + ���ᥜ�� ��� ��� ����� �⮨� �� �⢦� ��� �⥞�, c$ ��� �� ���ᥜ�� + �⮨� �� �⢦� ������. + + 4. � ����� ��� ��� ������ �夘�: + + [������] c ������壜�� � c [������] ������壜�� + +�騘 �����婫� �� �� ��棜�� ���. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ��� 4.1: ���� ��� ��������� ������� + + + ** ���㩫� CTRL-g ��� �� ���������� � �⩞ ��� ��� ����� ��� � ���ᩫ��� ���. + ���㩫� SHIFT-G ��� �� � �� �� ������ ��� �����. ** + + �����ਫ਼: ����ᩫ� ��桢��� �� ��� ���� �����⩜�� �᧦�� ��� �� �㣘��!! + + 1. ����㩫� �����⤦ �� ��㡫�� Ctrl ��� ���㩫� g . �� ������ ���ᩫ���� + �� ���������� ��� ��� �⨦� ��� ���囘� �� �� 椦�� ����妬 ��� �� + ������ ��� �婫�. ������嫜 ��� ������ ������ ��� �� �㣘 3. + + 2. ���㩫� shift-G ��� �� ����������嫜 ��� �⢦� ��� ����妬. + + 3. ���㩫� ��� ������ ��� ������ ��� 㩘���� ��� ���� shift-G. ���� �� + ��� ������⯜� ��� ������ ��� 㩘���� ���� ���㩜�� ��� ��髞 ���� Ctrl-g. + (� �����������嫜 ���� �������, ��� �� �����坦���� ���� ��椞). + + 4. �� ���韜�� �嚦���� ��� ����, �����⩫� �� �㣘�� 1 �� 3. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ��� 4.2: � ������ ���������� + + + ** ���㩫� / ��������磜�� ��� �� ��ᩞ ��� �ᮤ���. ** + + 1. �� �������� ���ᩫ��� ���㩫� ��� ������㨘 / . �������㩫� 櫠 ���� ��� + � ����☪ �����坦���� ��� ��� �⨦� ��� ��椞� �� �� ��� ������ : . + + 2. �騘 ��ᯫ� 'errroor' <ENTER>. ���� �夘� � �⥞ ��� �⢜�� �� �ᥜ��. + + 3. ��� �� �ᥜ�� ���� ��� ��� 因� ��ᩞ, ���㩫� ���� n . + ��� �� �ᥜ�� ��� 因� ��ᩞ ���� ���埜�� ����矬���, ���㩫� Shift-N . + + 4. �� �⢜�� �� �ᥜ�� ��� �� ��ᩞ ���� �� ���, ����������㩫� ��� ������ ? ���� ��� / . + +---> � � ����㫞�� ��ᩜ� ��� �⢦� ��� ����妬 �� �����婜� ��� ��� ����. + + "errroor" is not the way to spell error; errroor is an error. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ��� 4.3: ������ ���������� ����������� + + + ** ���㩫� % ��� �� ���嫜 ��� ���婫���� ), ], � } . ** + + 1. �������㩫� ��� ����� �� �᧦�� (, [, � { ���� ������� ������ + ������⤞ �� --->. + + 2. �騘 ���㩫� ��� ������㨘 % . + + 3. � ����☪ �� ��⧜� �� �夘� ���� ���婫���� ���⤟��� � ���碞. + + 4. ���㩫� % ��� �� �������㩜�� ��� ����� ��� ���� ��髞 ���碞 + (��� ���������). + +---> This ( is a test line with ('s, ['s ] and {'s } in it. )) + +��������: ���� �夘� ���� ��㩠�� ���� ���������ਫ਼ ��� �����ᣣ���� + �� �� ��������� ������⩜��! + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ��� 4.4: ���� ������ ��� ������ ����� + + + ** ��ᯫ� :s/old/new/g ��� �� ���ᥜ�� �� 'new' �� �� 'old'. ** + + 1. ��������婫� ��� ����� ���� ������� ������ ������⤞ �� --->. + + 2. ��ᯫ� :s/thee/the <ENTER> . �����驫� 櫠 ���� � ������ ���� �椦 + ��� ��髞 ���ᤠ�� ��� ������. + + 3. �騘 ��ᯫ� :s/thee/the/g ����餫�� ������ �������ᩫ��� ��� + ������. ���� ���� 梜� ��� �����婜�� ��� ��� ������. + +---> thee best time to see thee flowers is in thee spring. + + 4. ��� �� ���ᥜ�� �ៜ ���ᤠ�� �嘪 ������������ ������ �� ������, + ��ᯫ� :#,#s/old/new/g 槦� #,# �� ������� �� �� ������. + ��ᯫ� :%s/old/new/g ��� �� ���ᥜ�� �ៜ ���ᤠ�� �� 梦 �� �����. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 4 �������� + + + 1. �� Ctrl-g �����坜� �� �⩞ ��� ��� ����� ��� ��� ���ᩫ��� ���. + �� Shift-G ����夜� ��� �⢦� ��� ����妬. 뤘� ������ ������ + ��������磜��� ��� Shift-G ����夜� �� ���夞 �� ������. + + 2. ��᭦���� / ��������磜�� ��� �� ��ᩞ �ᮤ�� ���� �� ������� ��� + �� ��ᩞ. ��᭦���� ? ��������磜�� ��� �� ��ᩞ �ᮤ�� ���� �� ���� + ��� �� ��ᩞ. ���� ��� �� ����㫞�� ���㩫� n ��� �� ���嫜 ��� + ��棜�� ���ᤠ�� ���� ��� 因� ����矬��� � Shift-N ��� �� �ᥜ�� + ���� ��� ���埜�� ����矬���. + + 3. ���餫�� % 橦 � ����☪ �夘� ��� �� �� (,),[,],{, � } �����坜� + �� ���婫���� ��娠 ��� ���������. + + 4. ��� �������ᩫ��� �� new ��� ��髦� old ��� ������ ��ᯫ� :s/old/new + ��� �������ᩫ��� �� new �� �� 'old' ��� ������ ��ᯫ� :s/old/new/g + ��� �������ᩫ��� ��ᩜ� ������ �� # ������ ��ᯫ� :#,#s/old/new/g + ��� �������ᩫ��� �� �� �����婜� ��� ����� ��ᯫ� :%s/old/new/g + ��� ��髞�� ��������ਫ਼� �ៜ ���� �����⩫� ⤘ 'c' "%s/old/new/gc + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ��� 5.1: ��� ������ ��� ��������� ������ + + +** ��ᯫ� :! ��������磜�� ��� �� ������ ������ ��� �� ��� �����⩜��. ** + + 1. ���㩫� ��� ����� ������ : ��� �� �⩜�� ��� ����� ��� ��� �⨦� + ��� ��椞�. ���� ��� �����⧜� �� �驜�� �� ������. + + 2. �騘 ���㩫� �� ! (����������). ���� ��� �����⧜� �� �����⩜�� + ������㧦�� ������ ������ ��� ������. + + 3. ��� ���ᛜ���� ��ᯫ� ls ���� ��� �� ! ��� ���㩫� <ENTER>. ���� �� + ��� �����婜� �� �婫� ��� �����暦� ���, ������ ��� �� 㩘���� ���� + �������� ��� ������. � ����������㩫� :!dir �� �� ls ��� �����眠. + +---> �����ਫ਼: �夘� ������ �� �����⩜�� ������㧦�� ������ ������ + �� ���� ��� ��槦. + +---> �����ਫ਼: � �� ������ : ��⧜� �� ������坦���� ���餫�� �� <ENTER>. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ��� 5.2: ����������� ���� �������� ������� + + + ** ��� �� �驜�� ��� ���᚜� ��� �ᤘ�� ��� �����, ��ᯫ� :w ������. ** + + 1. ��ᯫ� :!dir � :!ls ��� �� ��� �� �婫� ��� �����暦� ���. + 웞 �⨜�� 櫠 ��⧜� �� ���㩜�� <ENTER> ���� ��� ����. + + 2. ����⥫� ⤘ 椦�� ����妬 ��� ��� ��ᨮ�� ��棘, �� �� TEST. + + 3. �騘 ��ᯫ�: :w TEST (槦� TEST �夘� �� 椦�� ����妬 ��� ����⥘��). + + 4. ���� �靜� 梦 �� ����� (vim Tutor) �� �� 椦�� TEST. ��� �� �� + �������穜��, ��ᯫ� ���� :!dir ��� �� ��嫜 ��� ���ᢦ�� ���. + +---> �����驫� 櫠 �� ���夘�� ��� ��� Vim ��� ���夘�� ���� �� �� 椦�� + ����妬 TEST, �� ����� �� 㫘� ������ ���嚨��� ��� tutor 櫘� �� �驘��. + + 5. �騘 �����ᯫ� �� ����� ��᭦���� (MS-DOS): :!del TEST + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ��� 5.3: ���������� ������ �������� + + + ** ��� �� �驜�� ��㣘 ��� ����妬, ��ᯫ� :#,# w ������ ** + + 1. ꢢ� ��� ����, ��ᯫ� :!dir � :!ls ��� �� ��� �� �婫� ��� ��� + ���ᢦ�� ��� ��� ����⥫� ⤘ ���ᢢ��� 椦�� ����妬 �� �� TEST. + + 2. ��������婫� ��� ����� ��� ��� �⨦� ���� ��� ���囘� ��� ���㩫� + Ctrl-g ��� �� ���嫜 ��� ������ ���� ��� ������. + �� ������� ����� ��� ������! + + 3. �騘 ����夜�� ��� ��� �⨦� ��� ���囘� ��� ���㩫� Ctrl-g ����. + �� ������� ��� ����� ��� ������! + + 4. ��� �� �驜�� ���� ⤘ ��㣘 �� �����, ��ᯫ� :#,# w TEST + 槦� #,# �� �� ������� ��� ����������穘�� (���,���) ��� TEST �� + 椦�� ��� ����妬 ���. + + 5. ����, ��嫜 櫠 �� ����� �夘� ���� �� ��� :!dir ���� ��� �� �����ᯜ��. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ��� 5.4: ���������� ��� ��������� ������ + + + ** ��� �� ���᚜�� �� ������棜�� ��� ����妬, ��ᯫ� :r ������ ** + + 1. ��ᯫ� :!dir ��� �� ��������嫜 櫠 �� TEST ��ᨮ�� ��� ����. + + 2. �������㩫� ��� ����� ��� ��� �⨦� ��� ���囘�. + +��������: ��櫦� �����⩜�� �� �㣘 3 �� ��嫜 �� ��� 5.3. + ���� ������嫜 ���� ���� ���� �� ��� ����. + + 3. �騘 �����㩫� �� ����� ��� TEST ����������餫�� ��� ������ :r TEST + 槦� TEST �夘� �� 椦�� ��� ����妬. + +��������: �� ����� ��� ����� ��������嫘� �����餫�� ���� ��� ��婡���� + � ����☪. + + 4. ��� �� �������穜�� 櫠 �� ����� �����㟞��, ��� ��� ����� ��� + �������㩫� 櫠 ��ᨮ��� �騘 �� ���嚨��� ��� ���㣘��� 5.3, �� + ������ ��� � ⡛��� ��� ����妬. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 5 �������� + + + 1. :!������ ������� �� ������ ������. + + ������ ��㩠�� ������嚣��� �夘� (MS-DOS): + :!dir - ���ᤠ�� �婫�� ��� �����暦�. + :!del ������ - �����᭜� �� ������. + + 2. :w ������ ��᭜� �� ���� ����� ��� Vim ��� �婡� �� 椦�� ������. + + 3. :#,#w ������ �靜� ��� ������ ��� # �⮨� # ��� ������. + + 4. :r ������ ������� �� ����� �婡�� ������ ��� �� ������ᢢ�� �⩘ + ��� ��⮦� ����� ���� ��� �� �⩞ ��� �����. + + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ��� 6.1: � ������ ���������� + + + ** ���㩫� o ��� �� ���奜�� �� ������ ��� ��� ��� ����� ��� �� + �����嫜 �� ���ᩫ��� ����⤦�. ** + + 1. ��������婫� ��� ����� ���� ������� ������ ������⤞ �� --->. + + 2. ���㩫� o (����) ��� �� ���奜�� �� ������ ���� ��� ��� ����� ��� �� + �����嫜 �� ���ᩫ��� ����⤦�. + + 3. �騘 ������ᯫ� �� ������⤞ �� ---> ������ ��� ���㩫� <ESC> ��� �� + ���嫜 ��� ��� ���ᩫ��� ����⤦�. + +---> After typing o the cursor is placed on the open line in Insert mode. + + 4. ��� �� ���奜�� �� ������ ���� ��� ��� �����, ���㩫� ���� ⤘ ������� + O, ���� ��� ⤘ ���� o. �����ᩫ� �� ���� ������� ������. +���嚜�� ������ ��� ��� ���� ���餫�� Shift-O 橦 � ����☪ �夘� ��� ������ + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ��� 6.2: � ������ ��������� + + ** ���㩫� a ��� �� ���᚜�� ��壜�� ���� ��� �����. ** + + 1. ��������婫� ��� ����� ��� �⢦� ��� ��髞� ������ ������� + ������⤞ �� ---> ���餫�� $ ���� �������� ���ᩫ���. + + 2. ���㩫� ⤘ a (����) ��� �� �����⩜�� ��壜�� ���� ��� ��� ������㨘 + ��� �夘� ��� ��� ��� �����. (�� ������� A �����⫝̸� ��� �⢦� + ��� ������). + +�����ਫ਼: ���� �����皜� �� ��� ��� i , ��� �������� ������㨘, �� + ��壜�� ��� ��������, <ESC>, �����-�����, ��� �⢦�, x, �椦 ��� + �椦 ��� �� �����⩜�� ��� �⢦� ��� ������! + + 3. �������驫� �騘 ��� ��髞 ������. �����驫� ��婞� 櫠 � �����㡞 �夘� + ������ 因� ���� ���ᩫ��� ����⤦� �� ��� ���ᩫ��� ��������, ���� + ��� �� �⩞ ��� ���᚜��� �� ��壜��. + +---> This line will allow you to practice +---> This line will allow you to practice appending text to the end of a line. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ��� 6.3: ���� ������ ��� �������������� + + + ** ���㩫� ������� R ��� �� ���ᥜ�� ������櫜���� ��� ⤘� ������㨜�. ** + + 1. ��������婫� ��� ����� ���� ��髞 ������ ������� ������⤞ �� --->. + + 2. �������㩫� ��� ����� ���� ���� ��� ��髞� �⥞� ��� �夘� ����������� + ��� �� ��竜�� ������ ������⤞ �� ---> (� �⥞ 'last'). + + 3. ���㩫� �騘 R ��� ���ᥫ� �� ��梦��� ��� ����⤦� ���� ��髞 ������ + ��᭦���� ��� ��� �� ����� ��壜�� 驫� �� �ᤜ�� ��� ��髞 ������ 因� + �� �� ��竜��. + +---> To make the first line the same as the last on this page use the keys. +---> To make the first line the same as the second, type R and the new text. + + 4. �����驫� 櫠 櫘� ��� <ESC> ��� �� ���嫜, �����⤜� ������㧦�� + �������૦ ��壜��. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ��� 6.4: ������� �������� + + + ** ����婫� �� ������� ⫩� 驫� � ����㫞�� � � �������ᩫ��� �� ������ + �� ������� ����-�������� ** + + 1. �ᥫ� ��� 'ignore' ���ᚦ����: + /ignore + �����婫� ������ ���� ���餫�� �� ��㡫�� n. + + 2. �⩫� ��� ������� 'ic' (Ignore case) ��᭦����: + :set ic + + 3. �ᥫ� �騘 ���� ��� 'ignore' ���餫��: n + �����婫� ��� ����㫞�� ������ ��棘 ���� ���餫�� �� ��㡫�� n + + 4. �⩫� ��� ������� 'hlsearch' ��� 'incsearch': + :set hls is + + 5. ���᚜�� �騘 ���� ��� ������ ����㫞���, ��� ��嫜 �� �����夜� + /ignore + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 6 �������� + + + 1. ���餫�� o ���嚜� �� ������ ���� ��� ��� ����� ��� ��������� ��� + ����� ���� ������� ������ �� ���ᩫ��� ����⤦�. + + 2. ���㩫� a ��� �� ���᚜�� ��壜�� ���� ��� ������㨘 ���� ���� �夘� + � ����☪. ���餫�� ������� A ���棘�� �����⫝̸� ��壜�� ��� �⢦� + ��� ������. + + 3. ���餫�� ������� R ���⨮���� ���� ���ᩫ�� �������ᩫ���� �⮨� �� + ������� �� <ESC> ��� �� ��⢟��. + + 4. ��᭦���� ":set xxx" ����坜� ��� ������� "xxx". + + + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 7: ON-LINE ������� �������� + + + ** ����������㩫� �� on-line �穫��� ��㟜��� ** + + � Vim ⮜� ⤘ ���������� on-line �穫��� ��㟜���. ��� �� �����㩜�, + �����ᩫ� �᧦�� ��� �� ���: + - ���㩫� �� ��㡫�� <HELP> (�� ⮜�� �᧦��) + - ���㩫� �� ��㡫�� <F1> (�� ⮜�� �᧦��) + - ��ᯫ� :help <ENTER> + + ��ᯫ� :q <ENTER> ��� �� ���婜�� �� ����� ��� ��㟜���. + + �����嫜 �� ���嫜 ��㟜�� ��� �� �ៜ ������壜��, �夦���� �� ���ᣜ��� + ���� ������ ":help". �����ᩫ� ���� (��� ���� �� ��� <ENTER>): + + :help w + :help c_<T + :help insert-index + :help user-manual + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ������ 8: ������������ ��� SCRIPT ��������� + + ** ���������㩫� �������������� ��� Vim ** + + � Vim ⮜� ����� ������櫜�� �������������� ��' �,�� � Vi, ���� �� + ������櫜�� �夘� ������ �������������⤘. ��� �� ���婜�� �� �����������嫜 + ������櫜�� �������������� ��⧜� �� ���ᥜ�� ⤘ ����� "vimrc". + + 1. ���婫� �����餦���� �� ����� "vimrc", ���� ������ ��� �� �穫��� ���: + :edit ~/.vimrc ��� Unix + :edit $VIM/_vimrc ��� MS-Windows + + 2. �騘 ���᚜�� �� ��壜�� ������嚣���� ��� ����� "vimrc": + :read $VIMRUNTIME/vimrc_example.vim + + 3. ��ᯫ� �� ����� �� ���: + :write + + ��� ��棜�� ���� ��� �� �����㩜�� ��� Vim �� ����������㩜� �ૠ��� + �礫����. �����嫜 �� �����⩜�� 梜� ��� ������飜��� ������� �' ���� + �� ����� "vimrc". + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + ��� �������餜��� �� Vim Tutor. ����� ��� 㫘� �� �驜� �� �礫��� + ���增�� ��� ����ᡫ� Vim, ����ᮠ���� �橞 驫� �� ��� �����⯜� �� + ����������㩜�� ��� ����ᡫ� ������ �硦��. ��⮜� ���� ��� �� + ��������⤞ ������嘩� ���� � Vim ⮜� �ᨘ ����� ������. ����ᩫ� + ���槠� �� ������因� ��㩞�: + ":help user-manual". + + ��� �������� ��ᙘ��� ��� ���⫞, ����㤜��� ���� �� �����: + Vim - Vi Improved - by Steve Oualline + Publisher: New Riders + �� ��髦 ����� ���� ������⤦ ���� Vim. + ����嫜�� ��㩠�� ��� ���ᨠ���. + ��ᨮ��� ����� ������嚣��� ��� ���検�. + ��嫜 ��� http://iccf-holland.org/click5.html + + ���� �� ����� �夘� ����櫜�� ��� ������櫜�� ��� ��� Vi ���� ��� ��� Vim, + ���� ��婞� ������飜��: + Learning the Vi Editor - by Linda Lamb + Publisher: O'Reilly & Associates Inc. + �夘� ⤘ ���� ����� ��� �� �ៜ�� ����� �� �ᤫ� ��� �⢜�� + �� �ᤜ�� �� ��� Vi. + � ⡫� ⡛��� ����⮜� ��棘 ��������圪 ��� ��� Vim. + + ���� � ����㚞�� ��᭫��� ��� ���� Michael C. Pierce ��� Robert K. Ware, + Colorado School of Mines ����������餫�� ��✪ ��� ��� Charles Smith, + Colorado State University. E-mail: bware@mines.colorado.edu. + + ���������� ��� ��� Vim ��� ��� Bram Moolenaar. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/tutor/tutor.el.utf-8 Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,815 @@ +=============================================================================== += Κ αλ ω σ ή ρ θ α τ ε σ τ ο V I M T u t o r - Έκδοση 1.5 = +=============================================================================== + + Ο Vim είναι ένας πανίσχυρος συντάκτης που έχει πολλές εντολές, πάρα + πολλές για να εξηγήσουμε σε μία περιήγηση όπως αυτή. Αυτή η περιήγηση + σχεδιάστηκε για να περιγράψει ικανοποιητικά τις εντολές που θα σας + κάνουν να χρησιμοποιείτε εύκολα τον Vim σαν έναν γενικής χρήσης συντάκτη. + + Ο κατά προσέγγιση χρόνος που απαιτείται για να ολοκληρώσετε την περιήγηση + είναι 25-30 λεπτά, εξαρτώντας από το πόσο χρόνο θα ξοδέψετε για + πειραματισμούς. + + Οι εντολές στα μαθήματα θα τροποποιήσουν το κείμενο. Δημιουργήστε ένα + αντίγραφο αυτού του αρχείου για να εξασκηθείτε (αν ξεκινήσατε το + "Vimtutor" αυτό είναι ήδη ένα αντίγραφο). + + Είναι σημαντικό να θυμάστε ότι αυτή η περιήγηση είναι οργανωμένη έτσι + ώστε να διδάσκει μέσω της χρήσης. Αυτό σημαίνει ότι χρειάζεται να + εκτελείτε τις εντολές για να τις μάθετε σωστά. Αν διαβάζετε μόνο το + κείμενο, θα τις ξεχάσετε! + + Τώρα, βεβαιωθείτε ότι το πλήκτρο Shift-Lock ΔΕΝ είναι πατημένο και + πατήστε το πλήκτρο j αρκετές φορές για να μετακινήσετε τον δρομέα έτσι + ώστε το Μάθημα 1.1 να γεμίσει πλήρως την οθόνη. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Μάθημα 1.1: ΜΕΤΑΚΙΝΟΝΤΑΣ ΤΟΝ ΔΡΟΜΕΑ + + ** Για να κινήσετε τον δρομέα, πατήστε τα πλήκτρα h,j,k,l όπως δείχνεται. ** + ^ + k Hint: Το πλήκτρο h είναι αριστερά και κινεί στ' αριστερά. + < h l > Το πλήκτρο l είναι δεξιά και κινεί στα δεξιά. + j Το πλήκτρο j μοιάζει με βελάκι προς τα κάτω. + v + + 1. Μετακινείστε τον δρομέα τριγύρω στην οθόνη μέχρι να νοιώθετε άνετα. + + 2. Κρατήστε πατημένο το κάτω πλήκτρο (j) μέχρι να επαναληφθεί. +---> Τώρα ξέρετε πώς να μετακινηθείτε στο επόμενο μάθημα. + + 3. Χρησιμοποιώντας το κάτω πλήκτρο, μετακινηθείτε στο Μάθημα 1.2. + +Σημείωση: Αν αμφιβάλλετε για κάτι που πατήσατε, πατήστε <ESC> για να βρεθείτε + στην Κανονική Κατάσταση. Μετά πατήστε ξανά την εντολή που θέλατε. + +Σημείωση: Τα πλήκτρα του δρομέα θα πρέπει επίσης να δουλεύουν. Αλλά με τα hjkl + θα μπορείτε να κινηθείτε πολύ γρηγορότερα, μόλις τα συνηθίσετε. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Μάθημα 1.2: ΜΠΑΙΝΟΝΤΑΣ ΚΑΙ ΒΓΑΙΝΟΝΤΑΣ ΣΤΟΝ VIM + + !! ΣΗΜΕΙΩΣΗ: Πριν εκτελέσετε κάποιο από τα βήματα, διαβάστε όλο το μάθημα!! + + 1. Πατήστε το πλήκτρο <ESC> (για να είστε σίγουρα στην Κανονική Κατάσταση). + + 2. Πληκτρολογήστε: :q! <ENTER>. + +---> Αυτό εξέρχεται από τον συντάκτη ΧΩΡΙΣ να σώσει όποιες αλλαγές έχετε κάνει. + Αν θέλετε να σώσετε τις αλλαγές και να εξέρθετε πληκτρολογήστε: + :wq <ENTER> + + 3. Όταν δείτε την προτροπή του φλοιού, πληκτρολογήστε την εντολή με την οποία + μπήκατε σε αυτήν την περιήγηση. Μπορεί να είναι: vimtutor <ENTER> + Κανονικά θα χρησιμοποιούσατε: vim tutor <ENTER> + +---> 'vim' σημαίνει εισαγωγή στον συντάκτη vim, 'tutor' είναι το αρχείο που + θέλουμε να διορθώσουμε. + + 4. Αν έχετε απομνημονεύσει αυτά τα βήματα και έχετε αυτοπεποίθηση, εκτελέστε + τα βήματα 1 έως 3 για να βγείτε και να μπείτε ξανά στον συντάκτη. Μετά + μετακινήστε τον δρομέα κάτω στο Μάθημα 1.3. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Μάθημα 1.3: ΔΙΟΡΘΩΣΗ ΚΕΙΜΕΝΟΥ - ΔΙΑΓΡΑΦΗ + + ** Όσο είστε στην Κανονική Κατάσταση πατήστε x για να διαγράψετε τον + χαρακτήρα κάτω από τον δρομέα. ** + + 1. Μετακινείστε τον δρομέα στην παρακάτω γραμμή σημειωμένη με --->. + + 2. Για να διορθώσετε τα λάθη, κινείστε τον δρομέα μέχρι να είναι πάνω από + τον χαρακτήρα που θα διαγραφεί. + + 3. Πατήστε το πλήκτρο x για να διαγράψετε τον ανεπιθύμητο χαρακτήρα. + + 4. Επαναλάβετε τα βήματα 2 μέχρι 4 μέχρι η πρόταση να είναι σωστή. + +---> The ccow jumpedd ovverr thhe mooon. + + 5. Τώρα που η γραμμή είναι σωστή, πηγαίντε στο Μάθημα 1.4. + +ΣΗΜΕΙΩΣΗ: Καθώς διατρέχετε αυτήν την περιήγηση, προσπαθήστε να μην + απομνημονεύετε, μαθαίνετε με τη χρήση. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Μάθημα 1.4: ΔΙΟΡΘΩΣΗ ΚΕΙΜΕΝΟΥ - ΠΑΡΕΜΒΟΛΗ + + ** Όσο είστε σε Κανονική Κατάσταση πατήστε i για να παρεμβάλλετε κείμενο. ** + + 1. Μετακινείστε τον δρομέα μέχρι την πρώτη γραμμή παρακάτω σημειωμένη με --->. + + 2. Για να κάνετε την πρώτη γραμμή ίδια με την δεύτερη, μετακινείστε τον + δρομέα πάνω στον πρώτο χαρακτήρα ΜΕΤΑ από όπου θα παρεμβληθεί το κείμενο. + + 3. Πατήστε το i και πληκτρολογήστε τις απαραίτητες προσθήκες. + + 4. Καθώς διορθώνετε κάθε λάθος πατήστε <ESC> για να επιστρέψετε στην + Κανονική Κατάσταση. Επαναλάβετε τα βήματα 2 μέχρι 4 για να διορθώσετε + την πρόταση. + +---> There is text misng this . +---> There is some text missing from this line. + + 5. Όταν είστε άνετοι με την παρεμβολή κειμένου μετακινηθείτε στην + παρακάτω περίληψη. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ΜΑΘΗΜΑ 1 ΠΕΡΙΛΗΨΗ + + + 1. Ο δρομέας κινείται χρησιμοποιώντας είτε τα πλήκτρα δρομέα ή τα hjkl. + h (αριστέρα) j (κάτω) k (πάνω) l (δεξιά) + + 2. Για να μπείτε στον Vim (από την προτροπή %) γράψτε: vim ΑΡΧΕΙΟ <ENTER> + + 3. Για να βγείτε γράψτε: <ESC> :q! <ENTER> για απόρριψη των αλλαγών. + Ή γράψτε: <ESC> :wq <ENTER> για αποθήκευση των αλλαγών. + + 4. Για να διαγράψετε έναν χαρακτήρα κάτω από τον δρομέα σε + Κανονική Κατάσταση πατήστε: x + + 5. Για να εισάγετε κείμενο στον δρομέα όσο είστε σε Κανονική Κατάσταση γράψτε: + i πληκτρολογήστε το κείμενο <ESC> + +ΣΗΜΕΙΩΣΗ: Πατώντας <ESC> θα τοποθετηθείτε στην Κανονική Κατάσταση ή θα + ακυρώσετε μία ανεπιθύμητη και μερικώς ολοκληρωμένη εντολή. + +Τώρα συνεχίστε με το Μάθημα 2. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Μάθημα 2.1: ΕΝΤΟΛΕΣ ΔΙΑΓΡΑΦΗΣ + + ** Γράψτε dw για να διαγράψετε μέχρι το τέλος μίας λέξης. ** + + 1. Πατήστε <ESC> για να βεβαιωθείτε ότι είστε στην Κανονική Κατάσταση. + + 2. Μετακινείστε τον δρομέα στην παρακάτω γραμμή σημειωμένη με --->. + + 3. Πηγαίνετε τον δρομέα στην αρχή της λέξης που πρέπει να διαγραφεί. + + 4. Γράψτε dw για να κάνετε την λέξη να εξαφανιστεί. + +ΣΗΜΕΙΩΣΗ: Τα γράμματα dw θα εμφανιστούν στην τελευταία γραμμή της οθόνης όσο + τα πληκτρολογείτε. Αν γράψατε κάτι λάθος, πατήστε <ESC> και + ξεκινήστε από την αρχή. + +---> There are a some words fun that don't belong paper in this sentence. + + 5. Επαναλάβετε τα βήματα 3 και 4 μέχρι η πρόταση να είναι σωστή και + πηγαίνετε στο Μάθημα 2.2. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Μάθημα 2.2: ΠΕΡΙΣΣΟΤΕΡΕΣ ΕΝΤΟΛΕΣ ΔΙΑΓΡΑΦΗΣ + + ** Πληκτρολογήστε d$ για να διαγράψετε μέχρι το τέλος της γραμμής. ** + + 1. Πατήστε <ESC> για να βεβαιωθείτε ότι είστε στην Κανονική Κατάσταση. + + 2. Μετακινείστε τον δρομέα στην παρακάτω γραμμή σημειωμένη με --->. + + 3. Μετακινείστε τον δρομέα στο τέλος της σωστής γραμμής (ΜΕΤΑ την πρώτη . ). + + 4. Πατήστε d$ για να διαγράψετε μέχρι το τέλος της γραμμής. + +---> Somebody typed the end of this line twice. end of this line twice. + + 5. Πηγαίνετε στο Μάθημα 2.3 για να καταλάβετε τι συμβαίνει. + + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Μάθημα 2.3: ΠΕΡΙ ΕΝΤΟΛΩΝ ΚΑΙ ΑΝΤΙΚΕΙΜΕΝΩΝ + + +Η μορφή της εντολής διαγραφής d είναι ως εξής: + + [αριθμός] d αντικείμενο Ή d [αριθμός] αντικείμενο + Όπου: + αριθμός - πόσες φορές θα εκτελεστεί η εντολή (προαιρετικό, εξ' ορισμού=1). + d - η εντολή της διαγραφής. + αντικείμενο - πάνω σε τι θα λειτουργήσει η εντολή (παρακάτω λίστα). + + Μία μικρή λίστα από αντικείμενα: + w - από τον δρομέα μέχρι το τέλος της λέξης, περιλαμβάνοντας το διάστημα. + e - από τον δρομέα μέχρι το τέλος της λέξης, ΧΩΡΙΣ το διάστημα. + $ - από τον δρομέα μέχρι το τέλος της γραμμής. + +ΣΗΜΕΙΩΣΗ: Για τους τύπους της περιπέτειας, πατώντας απλώς το αντικείμενο όσο + είστε στην Κανονική Κατάσταση χωρίς κάποια εντολή θα μετακινήσετε + τον δρομέα όπως καθορίζεται στην λίστα αντικειμένων. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Μάθημα 2.4: ΜΙΑ ΕΞΑΙΡΕΣΗ ΣΤΗΝ 'ΕΝΤΟΛΗ-ΑΝΤΙΚΕΙΜΕΝΟ' + + ** Πληκτρολογήστε dd για να διαγράψετε όλη τη γραμμή. ** + + Εξαιτίας της συχνότητας της διαγραφής ολόκληρης γραμμής, οι σχεδιαστές + του Vim αποφάσισαν ότι θα ήταν ευκολότερο να γράφετε απλώς δύο d στη + σειρά για να διαγράψετε μία γραμμή. + + 1. Μετακινείστε τον δρομέα στη δεύτερη γραμμή της παρακάτω φράσης. + 2. Γράψτε dd για να διαγράψετε τη γραμμή. + 3. Τώρα μετακινηθείτε στην τέταρτη γραμμή. + 4. Γράψτε 2dd (θυμηθείτε αριθμός-εντολή-αντικείμενο) για να + διαγράψετε δύο γραμμές. + + 1) Roses are red, + 2) Mud is fun, + 3) Violets are blue, + 4) I have a car, + 5) Clocks tell time, + 6) Sugar is sweet + 7) And so are you. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Μάθημα 2.5: Η ΕΝΤΟΛΗ ΑΝΑΙΡΕΣΗΣ + + ** Πατήστε u για να αναιρέσετε τις τελευταίες εντολές, + U για να διορθώσετε όλη τη γραμμή. ** + + 1. Μετακινείστε τον δρομέα στην παρακάτω γραμμή σημειωμένη με ---> και + τοποθετήστε τον πάνω στο πρώτο λάθος. + 2. Πατήστε x για να διαγράψετε τον πρώτο ανεπιθύμητο χαρακτήρα. + 3. Τώρα πατήστε u για να αναιρέσετε την τελευταία εκτελεσμένη εντολή. + 4. Αυτή τη φορά διορθώστε όλα τα λάθη στη γραμμή χρησιμοποιώντας την εντολή x. + 5. Τώρα πατήστε ένα κεφαλαίο U για να επιστρέψετε τη γραμμή στην αρχική + της κατάσταση. + 6. Τώρα πατήστε u μερικές φορές για να αναιρέσετε την U και + προηγούμενες εντολές. + 7. Τώρα πατήστε CTRL-R (κρατώντας πατημένο το πλήκτρο CTRL καθώς πατάτε το R) + μερικές φορές για να επαναφέρετε τις εντολές (αναίρεση των αναιρέσεων). + +---> Fiix the errors oon thhis line and reeplace them witth undo. + + 8. Αυτές είναι πολύ χρήσιμες εντολές. Τώρα πηγαίνετε στην + Περίληψη του Μαθήματος 2. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ΜΑΘΗΜΑ 2 ΠΕΡΙΛΗΨΗ + + + 1. Για να διαγράψετε από τον δρομέα μέχρι το τέλος λέξης γράψτε: dw + + 2. Για να διαγράψετε από τον δρομέα μέχρι το τέλος γραμμής γράψτε: d$ + + 3. Για να διαγράψετε ολόκληρη τη γραμμή γράψτε: dd + + 4. Η μορφή για μία εντολή στην Κανονική Κατάσταση είναι: + + [αριθμός] εντολή αντικείμενο Ή εντολή [αριθμός] αντικείμενο + όπου: + αριθμός - πόσες φορές να επαναληφθεί η εντολή + εντολή - τι να γίνει, όπως η d για διαγραφή + αντικείμενο - πάνω σε τι να ενεργήσει η εντολή, όπως w (λέξη), + $ (τέλος της γραμμής), κτλ. + + 5. Για να αναιρέσετε προηγούμενες ενέργειες, πατήστε: u (πεζό u) + Για να αναιρέσετε όλες τις αλλαγές στη γραμμή, πατήστε: U (κεφαλαίο U) + Για να αναιρέσετε τις αναιρέσεις, πατήστε: CTRL-R + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Μάθημα 3.1: Η ΕΝΤΟΛΗ ΤΟΠΟΘΕΤΗΣΗΣ + + + ** Πατήστε p για να τοποθετήσετε την τελευταία διαγραφή μετά τον δρομέα. ** + + 1. Μετακινείστε τον δρομέα στην πρώτη γραμμή της παρακάτω ομάδας. + + 2. Πατήστε dd για να διαγράψετε τη γραμμή και να την αποθηκεύσετε σε + προσωρινή μνήμη του Vim. + + 3. Μετακινείστε τον δρομέα στη γραμμή ΠΑΝΩ από εκεί που θα πρέπει να πάει + η διαγραμμένη γραμμή. + + 4. Όσο είστε σε Κανονική Κατάσταση, πατήστε p για να βάλετε τη γραμμή. + + 5. Επαναλάβετε τα βήματα 2 έως 4 για να βάλετε όλες τις γραμμές στη + σωστή σειρά. + + d) Can you learn too? + b) Violets are blue, + c) Intelligence is learned, + a) Roses are red, + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Μάθημα 3.2: Η ΕΝΤΟΛΗ ΑΝΤΙΚΑΤΑΣΤΑΣΗΣ + + + ** Πατήστε r και χαρακτήρα για να αλλάξετε αυτόν που είναι + κάτω από τον δρομέα. ** + + 1. Μετακινείστε τον δρομέα στην πρώτη γραμμή παρακάτω σημειωμένη με --->. + + 2. Μετακινείστε τον δρομέα έτσι ώστε να είναι πάνω στο πρώτο λάθος. + + 3. Πατήστε r και μετά τον χαρακτήρα ο οποίος διορθώνει το λάθος. + + 4. Επαναλάβετε τα βήματα 2 και 3 μέχρι να είναι σωστή η πρώτη γραμμή. + +---> Whan this lime was tuoed in, someone presswd some wrojg keys! +---> When this line was typed in, someone pressed some wrong keys! + + 5. Τώρα πηγαίνετε στο Μάθημα 3.2. + +ΣΗΜΕΙΩΣΗ: Να θυμάστε ότι πρέπει να μαθαίνετε με τη χρήση, και όχι με + την απομνημόνευση. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Μάθημα 3.3: Η ΕΝΤΟΛΗ ΑΛΛΑΓΗΣ + + ** Για να αλλάξετε τμήμα ή όλη τη λέξη, πατήστε cw . ** + + 1. Μετακινείστε τον δρομέα στην πρώτη γραμμή παρακάτω σημειωμένη με --->. + + 2. Τοποθετήστε τον δρομέα πάνω στο u της λέξης lubw. + + 3. Πατήστε cw και τη σωστή λέξη (στην περίπτωση αυτή, γράψτε 'ine'.) + + 4. Πατήστε <ESC> και πηγαίνετε στο επόμενο λάθος (στον πρώτο + χαρακτήρα προς αλλαγή). + + 5. Επαναλάβετε τα βήματα 3 και 4 μέχρις ότου η πρώτη πρόταση να είναι + ίδια με τη δεύτερη. + +---> This lubw has a few wptfd that mrrf changing usf the change command. +---> This line has a few words that need changing using the change command. + +Παρατηρείστε ότι η cw όχι μόνο αντικαθιστάει τη λέξη, αλλά σας εισάγει +επίσης σε παρεμβολή. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Μάθημα 3.4: ΠΕΡΙΣΣΟΤΕΡΕΣ ΑΛΛΑΓΕΣ ΜΕ c + + + ** Η εντολή αλλαγής χρησιμοποιείται με τα ίδια αντικείμενα της διαγραφής. ** + + + 1. Η εντολή αλλαγής δουλεύει με τον ίδιο τρόπο όπως η διαγραφή. Η μορφή είναι: + + [αριθμός] c αντικείμενο Ή c [αριθμός] αντικείμενο + + 2. Τα αντικείμενα είναι πάλι τα ίδια, όπως w (λέξη), $ (τέλος γραμμής), κτλ. + + 3. Μετακινηθείτε στην πρώτη γραμμή παρακάτω σημειωμένη με --->. + + 4. Μετακινείστε τον δρομέα στο πρώτο λάθος. + + 5. Γράψτε c$ για να κάνετε το υπόλοιπο της γραμμής ίδιο με τη δεύτερη + και πατήστε <ESC>. + +---> The end of this line needs some help to make it like the second. +---> The end of this line needs to be corrected using the c$ command. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ΜΑΘΗΜΑ 3 ΠΕΡΙΛΗΨΗ + + + 1. Για να τοποθετήσετε κείμενο που μόλις έχει διαγραφεί, πατήστε p . + Αυτό τοποθετεί το διαγραμμένο κείμενο ΜΕΤΑ τον δρομέα (αν διαγράφτηκε + γραμμή θα πάει μετά στη γραμμή κάτω από τον δρομέα. + + 2. Για να αντικαταστήσετε τον χαρακτήρα κάτω από τον δρομέα, πατήστε r + και μετά τον χαρακτήρα που θα αντικαταστήσει τον αρχικό. + + 3. Η εντολή αλλαγής σας επιτρέπει να αλλάξετε το καθορισμένο αντικείμενο + από τον δρομέα μέχρι το τέλος του αντικείμενο. Π.χ. γράψτε cw για να + αλλάξετε από τον δρομέα μέχρι το τέλος της λέξης, c$ για να αλλάξετε + μέχρι το τέλος γραμμής. + + 4. Η μορφή για την αλλαγή είναι: + + [αριθμός] c αντικείμενο Ή c [αριθμός] αντικείμενο + +Τώρα συνεχίστε με το επόμενο μάθημα. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Μάθημα 4.1: ΘΕΣΗ ΚΑΙ ΚΑΤΑΣΤΑΣΗ ΑΡΧΕΙΟΥ + + + ** Πατήστε CTRL-g για να εμφανιστεί η θέση σας στο αρχείο και η κατάστασή του. + Πατήστε SHIFT-G για να πάτε σε μία γραμμή στο αρχείο. ** + + Σημείωση: Διαβάστε ολόκληρο το μάθημα πριν εκτελέσετε κάποιο από τα βήματα!! + + 1. Κρατήστε πατημένο το πλήκτρο Ctrl και πατήστε g . Μία γραμμή κατάστασης + θα εμφανιστεί στο κάτω μέρος της σελίδας με το όνομα αρχείου και τη + γραμμή που είστε. Θυμηθείτε τον αριθμό γραμμής για το Βήμα 3. + + 2. Πατήστε shift-G για να μετακινηθείτε στο τέλος του αρχείου. + + 3. Πατήστε τον αριθμό της γραμμής που ήσασταν και μετά shift-G. Αυτό θα + σας επιστρέψει στη γραμμή που ήσασταν πριν πατήσετε για πρώτη φορά Ctrl-g. + (Όταν πληκτρολογείτε τους αριθμούς, ΔΕΝ θα εμφανίζονται στην οθόνη). + + 4. Αν νοιώθετε σίγουρος για αυτό, εκτελέστε τα βήματα 1 έως 3. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Μάθημα 4.2: Η ΕΝΤΟΛΗ ΑΝΑΖΗΤΗΣΗΣ + + + ** Πατήστε / ακολουθούμενο από τη φράση που ψάχνετε. ** + + 1. Σε Κανονική Κατάσταση πατήστε τον χαρακτήρα / . Παρατηρήστε ότι αυτός και + ο δρομέας εμφανίζονται στο κάτω μέρος της οθόνης όπως με την εντολή : . + + 2. Τώρα γράψτε 'errroor' <ENTER>. Αυτή είναι η λέξη που θέλετε να ψάξετε. + + 3. Για να ψάξετε ξανά για την ίδια φράση, πατήστε απλώς n . + Για να ψάξετε την ίδια φράση στην αντίθετη κατεύθυνση, πατήστε Shift-N . + + 4. Αν θέλετε να ψάξετε για μία φράση προς τα πίσω, χρησιμοποιήστε την εντολή ? αντί της / . + +---> Όταν η αναζήτηση φτάσει στο τέλος του αρχείου θα συνεχίσει από την αρχή. + + "errroor" is not the way to spell error; errroor is an error. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Μάθημα 4.3: ΕΥΡΕΣΗ ΤΑΙΡΙΑΣΤΩΝ ΠΑΡΕΝΘΕΣΕΩΝ + + + ** Πατήστε % για να βρείτε την αντίστοιχη ), ], ή } . ** + + 1. Τοποθετήστε τον δρομέα σε κάποια (, [, ή { στην παρακάτω γραμμή + σημειωμένη με --->. + + 2. Τώρα πατήστε τον χαρακτήρα % . + + 3. Ο δρομέας θα πρέπει να είναι στην αντίστοιχη παρένθεση ή αγκύλη. + + 4. Πατήστε % για να μετακινήσετε τον δρομέα πίσω στην πρώτη αγκύλη + (του ζευγαριού). + +---> This ( is a test line with ('s, ['s ] and {'s } in it. )) + +ΣΗΜΕΙΩΣΗ: Αυτό είναι πολύ χρήσιμο στην αποσφαλμάτωση ενός προγράμματος + με μη ταιριαστές παρενθέσεις! + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Μάθημα 4.4: ΕΝΑΣ ΤΡΟΠΟΣ ΓΙΑ ΑΛΛΑΓΗ ΛΑΘΩΝ + + + ** Γράψτε :s/old/new/g για να αλλάξετε το 'new' με το 'old'. ** + + 1. Μετακινείστε τον δρομέα στην παρακάτω γραμμή σημειωμένη με --->. + + 2. Γράψτε :s/thee/the <ENTER> . Σημειώστε ότι αυτή η εντολή αλλάζει μόνο + την πρώτη εμφάνιση στη γραμμή. + + 3. Τώρα γράψτε :s/thee/the/g εννοώντας γενική αντικατάσταση στη + γραμμή. Αυτό αλλάζει όλες τις εμφανίσεις επί της γραμμής. + +---> thee best time to see thee flowers is in thee spring. + + 4. Για να αλλάξετε κάθε εμφάνιση μίας συμβολοσειράς μεταξύ δύο γραμμών, + γράψτε :#,#s/old/new/g όπου #,# οι αριθμοί των δύο γραμμών. + Γράψτε :%s/old/new/g για να αλλάξετε κάθε εμφάνιση σε όλο το αρχείο. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ΜΑΘΗΜΑ 4 ΠΕΡΙΛΗΨΗ + + + 1. Το Ctrl-g εμφανίζει τη θέση σας στο αρχείο και την κατάστασή του. + Το Shift-G πηγαίνει στο τέλος του αρχείου. Ένας αριθμός γραμμής + ακολουθούμενος από Shift-G πηγαίνει σε εκείνη τη γραμμή. + + 2. Γράφοντας / ακολουθούμενο από μία φράση ψάχνει προς τα ΜΠΡΟΣΤΑ για + τη φράση. Γράφοντας ? ακολουθούμενο από μία φράση ψάχνει προς τα ΠΙΣΩ + για τη φράση. Μετά από μία αναζήτηση πατήστε n για να βρείτε την + επόμενη εμφάνιση προς την ίδια κατεύθυνση ή Shift-N για να ψάξετε + προς την αντίθετη κατεύθυνση. + + 3. Πατώντας % όσο ο δρομέας είναι πάνω σε μία (,),[,],{, ή } εντοπίζει + το αντίστοιχο ταίρι του ζευγαριού. + + 4. Για αντικατάσταση με new του πρώτου old στη γραμμή γράψτε :s/old/new + Για αντικατάσταση με new όλων των 'old' στη γραμμή γράψτε :s/old/new/g + Για αντικατάσταση φράσεων μεταξύ δύο # γραμμών γράψτε :#,#s/old/new/g + Για αντικατάσταση όλων των εμφανίσεων στο αρχείο γράψτε :%s/old/new/g + Για ερώτηση επιβεβαίωσης κάθε φορά προσθέστε ένα 'c' "%s/old/new/gc + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Μάθημα 5.1: ΠΩΣ ΕΚΤΕΛΩ ΜΙΑ ΕΞΩΤΕΡΙΚΗ ΕΝΤΟΛΗ + + +** Γράψτε :! ακολουθούμενο από μία εξωτερική εντολή για να την εκτελέσετε. ** + + 1. Πατήστε την οικεία εντολή : για να θέσετε τον δρομέα στο κάτω μέρος + της οθόνης. Αυτό σας επιτρέπει να δώσετε μία εντολή. + + 2. Τώρα πατήστε το ! (θαυμαστικό). Αυτό σας επιτρέπει να εκτελέσετε + οποιαδήποτε εξωτερική εντολή του φλοιού. + + 3. Σαν παράδειγμα γράψτε ls μετά από το ! και πατήστε <ENTER>. Αυτό θα + σας εμφανίσει μία λίστα του καταλόγου σας, ακριβώς σαν να ήσασταν στην + προτροπή του φλοιού. Ή χρησιμοποιήστε :!dir αν το ls δεν δουλεύει. + +---> Σημείωση: Είναι δυνατόν να εκτελέσετε οποιαδήποτε εξωτερική εντολή + με αυτόν τον τρόπο. + +---> Σημείωση: Όλες οι εντολές : πρέπει να τερματίζονται πατώντας το <ENTER>. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Μάθημα 5.2: ΠΕΡΙΣΣΟΤΕΡΑ ΠΕΡΙ ΕΓΓΡΑΦΗΣ ΑΡΧΕΙΩΝ + + + ** Για να σώσετε τις αλλάγες που κάνατε στο αρχείο, γράψτε :w ΑΡΧΕΙΟ. ** + + 1. Γράψτε :!dir ή :!ls για να πάρετε μία λίστα του καταλόγου σας. + Ήδη ξέρετε ότι πρέπει να πατήσετε <ENTER> μετά από αυτό. + + 2. Διαλέξτε ένα όνομα αρχείου που δεν υπάρχει ακόμα, όπως το TEST. + + 3. Τώρα γράψτε: :w TEST (όπου TEST είναι το όνομα αρχείου που διαλέξατε). + + 4. Αυτό σώζει όλο το αρχείο (vim Tutor) με το όνομα TEST. Για να το + επαληθεύσετε, γράψτε ξανά :!dir για να δείτε τον κατάλογό σας. + +---> Σημειώστε ότι αν βγαίνατε από τον Vim και μπαίνατε ξανά με το όνομα + αρχείου TEST, το αρχείο θα ήταν ακριβές αντίγραφο του tutor όταν το σώσατε. + + 5. Τώρα διαγράψτε το αρχείο γράφοντας (MS-DOS): :!del TEST + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Μάθημα 5.3: ΕΠΙΛΕΚΤΙΚΗ ΕΝΤΟΛΗ ΕΓΓΡΑΦΗΣ + + + ** Για να σώσετε τμήμα του αρχείου, γράψτε :#,# w ΑΡΧΕΙΟ ** + + 1. Άλλη μια φορά, γράψτε :!dir ή :!ls για να πάρετε μία λίστα από τον + κατάλογό σας και διαλέξτε ένα κατάλληλο όνομα αρχείου όπως το TEST. + + 2. Μετακινείστε τον δρομέα στο πάνω μέρος αυτής της σελίδας και πατήστε + Ctrl-g για να βρείτε τον αριθμό αυτής της γραμμής. + ΝΑ ΘΥΜΑΣΤΕ ΑΥΤΟΝ ΤΟΝ ΑΡΙΘΜΟ! + + 3. Τώρα πηγαίνετε στο κάτω μέρος της σελίδας και πατήστε Ctrl-g ξανά. + ΝΑ ΘΥΜΑΣΤΕ ΚΑΙ ΑΥΤΟΝ ΤΟΝ ΑΡΙΘΜΟ! + + 4. Για να σώσετε ΜΟΝΟ ένα τμήμα σε αρχείο, γράψτε :#,# w TEST + όπου #,# οι δύο αριθμοί που απομνημονεύσατε (πάνω,κάτω) και TEST το + όνομα του αρχείου σας. + + 5. Ξανά, δείτε ότι το αρχείο είναι εκεί με την :!dir αλλά ΜΗΝ το διαγράψετε. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Μάθημα 5.4: ΑΝΑΚΤΩΝΤΑΣ ΚΑΙ ΕΝΩΝΟΝΤΑΣ ΑΡΧΕΙΑ + + + ** Για να εισάγετε τα περιεχόμενα ενός αρχείου, γράψτε :r ΑΡΧΕΙΟ ** + + 1. Γράψτε :!dir για να βεβαιωθείτε ότι το TEST υπάρχει από πριν. + + 2. Τοποθετήστε τον δρομέα στο πάνω μέρος της σελίδας. + +ΣΗΜΕΙΩΣΗ: Αφότου εκτελέσετε το Βήμα 3 θα δείτε το Μάθημα 5.3. + Μετά κινηθείτε ΚΑΤΩ ξανά προς το μάθημα αυτό. + + 3. Τώρα ανακτήστε το αρχείο σας TEST χρησιμοποιώντας την εντολή :r TEST + όπου TEST είναι το όνομα του αρχείου. + +ΣΗΜΕΙΩΣΗ: Το αρχείο που ανακτάτε τοποθετείται ξεκινώντας εκεί που βρίσκεται + ο δρομέας. + + 4. Για να επαληθεύσετε ότι το αρχείο ανακτήθηκε, πίσω τον δρομέα και + παρατηρήστε ότι υπάρχουν τώρα δύο αντίγραφα του Μαθήματος 5.3, το + αρχικό και η έκδοση του αρχείου. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ΜΑΘΗΜΑ 5 ΠΕΡΙΛΗΨΗ + + + 1. :!εντολή εκτελεί μία εξωτερική εντολή. + + Μερικά χρήσιμα παραδείγματα είναι (MS-DOS): + :!dir - εμφάνιση λίστας ενός καταλόγου. + :!del ΑΡΧΕΙΟ - διαγράφει το ΑΡΧΕΙΟ. + + 2. :w ΑΡΧΕΙΟ γράφει το τρέχων αρχείο του Vim στο δίσκο με όνομα ΑΡΧΕΙΟ. + + 3. :#,#w ΑΡΧΕΙΟ σώζει τις γραμμές από # μέχρι # στο ΑΡΧΕΙΟ. + + 4. :r ΑΡΧΕΙΟ ανακτεί το αρχείο δίσκου ΑΡΧΕΙΟ και το παρεμβάλλει μέσα + στο τρέχον αρχείο μετά από τη θέση του δρομέα. + + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Μάθημα 6.1: Η ΕΝΤΟΛΗ ΑΝΟΙΓΜΑΤΟΣ + + + ** Πατήστε o για να ανοίξετε μία γραμμή κάτω από τον δρομέα και να + βρεθείτε σε Κατάσταση Κειμένου. ** + + 1. Μετακινείστε τον δρομέα στην παρακάτω γραμμή σημειωμένη με --->. + + 2. Πατήστε o (πεζό) για να ανοίξετε μία γραμμή ΚΑΤΩ από τον δρομέα και να + βρεθείτε σε Κατάσταση Κειμένου. + + 3. Τώρα αντιγράψτε τη σημειωμένη με ---> γραμμή και πατήστε <ESC> για να + βγείτε από την Κατάσταση Κειμένου. + +---> After typing o the cursor is placed on the open line in Insert mode. + + 4. Για να ανοίξετε μία γραμμή ΠΑΝΩ από τον δρομέα, πατήστε απλά ένα κεφαλαίο + O, αντί για ένα πεζό o. Δοκιμάστε το στην παρακάτω γραμμή. +Ανοίγετε γραμμή πάνω από αυτήν πατώντας Shift-O όσο ο δρομέας είναι στη γραμμή + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Μάθημα 6.2: Η ΕΝΤΟΛΗ ΠΡΟΣΘΗΚΗΣ + + ** Πατήστε a για να εισάγετε κείμενο ΜΕΤΑ τον δρομέα. ** + + 1. Μετακινείστε τον δρομέα στο τέλος της πρώτης γραμμής παρακάτω + σημειωμένη με ---> πατώντας $ στην Κανονική Κατάσταση. + + 2. Πατήστε ένα a (πεζό) για να προσθέσετε κείμενο ΜΕΤΑ από τον χαρακτήρα + που είναι κάτω από τον δρομέα. (Το κεφαλαίο A προσθέτει στο τέλος + της γραμμής). + +Σημείωση: Αυτό αποφεύγει το πάτημα του i , τον τελευταίο χαρακτήρα, το + κείμενο της εισαγωγής, <ESC>, δρομέα-δεξιά, και τέλος, x, μόνο και + μόνο για να προσθέσετε στο τέλος της γραμμής! + + 3. Συμπληρώστε τώρα την πρώτη γραμμή. Σημειώστε επίσης ότι η προσθήκη είναι + ακριβώς ίδια στην Κατάσταση Κειμένου με την Κατάσταση Εισαγωγής, εκτός + από τη θέση που εισάγεται το κείμενο. + +---> This line will allow you to practice +---> This line will allow you to practice appending text to the end of a line. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Μάθημα 6.3: ΑΛΛΗ ΕΚΔΟΣΗ ΤΗΣ ΑΝΤΙΚΑΤΑΣΤΑΣΗΣ + + + ** Πατήστε κεφαλαίο R για να αλλάξετε περισσότερους από έναν χαρακτήρες. ** + + 1. Μετακινείστε τον δρομέα στην πρώτη γραμμή παρακάτω σημειωμένη με --->. + + 2. Τοποθετήστε τον δρομέα στην αρχή της πρώτης λέξης που είναι διαφορετική + από τη δεύτερη γραμμή σημειωμένη με ---> (η λέξη 'last'). + + 3. Πατήστε τώρα R και αλλάξτε το υπόλοιπο του κειμένου στην πρώτη γραμμή + γράφοντας πάνω από το παλιό κείμενο ώστε να κάνετε την πρώτη γραμμή ίδια + με τη δεύτερη. + +---> To make the first line the same as the last on this page use the keys. +---> To make the first line the same as the second, type R and the new text. + + 4. Σημειώστε ότι όταν πατάτε <ESC> για να βγείτε, παραμένει οποιοδήποτε + αναλλοίωτο κείμενο. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Μάθημα 6.4: ΡΥΘΜΙΣΗ ΕΠΙΛΟΓΗΣ + + + ** Ρυθμίστε μία επιλογή έτσι ώστε η αναζήτηση ή η αντικατάσταση να αγνοεί + τη διαφορά πεζών-κεφαλαίων ** + + 1. Ψάξτε για 'ignore' εισάγοντας: + /ignore + Συνεχίστε αρκετές φορές πατώντας το πλήκτρο n. + + 2. Θέστε την επιλογή 'ic' (Ignore case) γράφοντας: + :set ic + + 3. Ψάξτε τώρα ξανά για 'ignore' πατώντας: n + Συνεχίστε την αναζήτηση μερικές ακόμα φορές πατώντας το πλήκτρο n + + 4. Θέστε τις επιλογές 'hlsearch' και 'incsearch': + :set hls is + + 5. Εισάγετε τώρα ξανά την εντολή αναζήτησης, και δείτε τι συμβαίνει + /ignore + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ΜΑΘΗΜΑ 6 ΠΕΡΙΛΗΨΗ + + + 1. Πατώντας o ανοίγει μία γραμμή ΚΑΤΩ από τον δρομέα και τοποθετεί τον + δρομέα στην ανοιχτή γραμμή σε Κατάσταση Κειμένου. + + 2. Πατήστε a για να εισάγετε κείμενο ΜΕΤΑ τον χαρακτήρα στον οποίο είναι + ο δρομέας. Πατώντας κεφαλαίο A αυτόματα προσθέτει κείμενο στο τέλος + της γραμμής. + + 3. Πατώντας κεφαλαίο R εισέρχεται στην Κατάσταη Αντικατάστασης μέχρι να + πατηθεί το <ESC> και να εξέλθει. + + 4. Γράφοντας ":set xxx" ρυθμίζει την επιλογή "xxx". + + + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ΜΑΘΗΜΑ 7: ON-LINE ΕΝΤΟΛΕΣ ΒΟΗΘΕΙΑΣ + + + ** Χρησιμοποιήστε το on-line σύστημα βοήθειας ** + + Ο Vim έχει ένα περιεκτικό on-line σύστημα βοήθειας. Για να ξεκινήσει, + δοκιμάστε κάποιο από τα τρία: + - πατήστε το πλήκτρο <HELP> (αν έχετε κάποιο) + - πατήστε το πλήκτρο <F1> (αν έχετε κάποιο) + - γράψτε :help <ENTER> + + Γράψτε :q <ENTER> για να κλείσετε το παράθυρο της βοήθειας. + + Μπορείτε να βρείτε βοήθεια πάνω σε κάθε αντικείμενο, δίνοντας μία παράμετρο + στην εντολή ":help". Δοκιμάστε αυτά (μην ξεχνάτε να πατάτε <ENTER>): + + :help w + :help c_<T + :help insert-index + :help user-manual + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ΜΑΘΗΜΑ 8: ΔΗΜΙΟΥΡΓΗΣΤΕ ΕΝΑ SCRIPT ΕΚΚΙΝΗΣΗΣ + + ** Ενεργοποιήστε χαρακτηριστικά του Vim ** + + Ο Vim έχει πολλά περισσότερα χαρακτηριστικά απ' ό,τι ο Vi, αλλά τα + περισσότερα είναι αρχικά απενεργοποιημένα. Για να αρχίσετε να χρησιμοποιείτε + περισσότερα χαρακτηριστικά πρέπει να φτιάξετε ένα αρχείο "vimrc". + + 1. Αρχίστε διορθώνοντας το αρχείο "vimrc", αυτό εξαρτάται από το σύστημά σας: + :edit ~/.vimrc για Unix + :edit $VIM/_vimrc για MS-Windows + + 2. Τώρα εισάγετε το κείμενο παραδείγματος για αρχείο "vimrc": + :read $VIMRUNTIME/vimrc_example.vim + + 3. Γράψτε το αρχείο με την: + :write + + Την επόμενη φορά που θα ξεκινήσετε τον Vim θα χρησιμοποιήσει φωτισμό + σύνταξης. Μπορείτε να προσθέσετε όλες τις προτιμώμενες επιλογές σ' αυτό + το αρχείο "vimrc". + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + Εδώ ολοκληρώνεται το Vim Tutor. Σκοπός του ήταν να δώσει μία σύντομη + περίληψη του συντάκτη Vim, τουλάχιστον τόση ώστε να σας επιτρέψει να + χρησιμοποιήσετε τον συντάκτη αρκετά εύκολα. Απέχει πολύ από μία + ολοκληρωμένη παρουσίαση καθώς ο Vim έχει πάρα πολλές εντολές. Διαβάστε + κατόπιν το εγχειρίδιο χρήσης: + ":help user-manual". + + Για περαιτέρω διάβασμα και μελέτη, συστήνεται αυτό το βιβλίο: + Vim - Vi Improved - by Steve Oualline + Publisher: New Riders + Το πρώτο βιβλίο πλήρως αφιερωμένο στον Vim. + Ιδιαίτερα χρήσιμο για αρχάριους. + Υπάρχουν πολλά παραδείγματα και εικόνες. + Δείτε την http://iccf-holland.org/click5.html + + Αυτό το βιβλίο είναι παλιότερο και περισσότερο για τον Vi παρά για τον Vim, + αλλά επίσης συνιστώμενο: + Learning the Vi Editor - by Linda Lamb + Publisher: O'Reilly & Associates Inc. + Είναι ένα καλό βιβλίο για να μάθετε σχεδόν τα πάντα που θέλετε + να κάνετε με τον Vi. + Η έκτη έκδοση περιέχει ακόμα πληροφορίες για τον Vim. + + Αυτή η περιήγηση γράφτηκε από τους Michael C. Pierce και Robert K. Ware, + Colorado School of Mines χρησιμοποιώντας ιδέες από τον Charles Smith, + Colorado State University. E-mail: bware@mines.colorado.edu. + + Προσαρμογή για τον Vim από τον Bram Moolenaar. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/tutor/tutor.eo.utf-8 Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,967 @@ +============================================================================== += B o n v e n o n al la I n s t r u i l o de V I M - Versio 1.0.eo = +============================================================================== + + Vim estas tre potenca redaktilo, kiu havas multajn komandojn, tro da ili + por ĉion klarigi en instruilo kiel ĉi tiu. Ĉi tiu instruilo estas + fasonita por priskribi sufiĉajn komandojn, por ke vi kapablu uzi Vim + kun sufiĉa facileco. + + La tempo bezonata por plenumi la kurson estas 25-30 minutoj, kaj dependas + de kiom da tempo estas uzata por eksperimenti. + + ATENTU: + La komandoj en la lecionoj ŝanĝos la tekston. Kopiu tiun ĉi dosieron + por ekzerci vin (se vi lanĉis "vimtutor", tiam estas jam kopio). + + Gravas memori, ke ĉi tiu instruilo estas organizata por instrui per + la uzo. Tio signifas, ke vi devas plenumi la komandojn por bone lerni + ilin. Se vi nur legas la tekston, vi forgesos la komandojn! + + Nun, certigu, ke la majuskla baskulo NE estas en reĝimo majuskla, + kaj premu la klavon j sufiĉe da fojoj por movi la kursoron, kaj por + ke la leciono 1.1 plenigu la ekranon. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 1.1: MOVI LA KURSORON + + + ** Por movi la kursoron, premu la h,j,k,l klavojn kiel montrite. ** + ^ + k Konsilo: La klavo h estas la plej liva kaj movas liven. + < h l > La klavo l estas la plej dekstra kaj movas dekstren. + j La klavo j aspektas kiel malsuprena sago. + v + 1. Movu la kursoron sur la ekrano ĝis kiam vi sentas vin komforta. + + 2. Premu la klavon (j) ĝis kiam ĝi ripetas. + Vi nun scias, kiel moviĝi al la sekvanta leciono + + 3. Uzante la malsuprenan klavon, moviĝu al la leciono 1.2. + +RIMARKO: Se vi dubas pri tio, kion vi premis, premu <ESK> por reiri al + la normala reĝimo. Tiam repremu la deziratan komandon. + +RIMARKO: La klavoj de la kursoro devus ankaŭ funkcii. Sed uzante hjkl, + vi kapablos moviĝi pli rapide post kiam vi kutimiĝos. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 1.2: ELIRI EL VIM + + + !! RIMARKO: Antaŭ ol plenumi iujn subajn paŝojn ajn, legu la tutan lecionon!! + + 1. Premu la klavon <ESK> (por certigi, ke vi estas en normala reĝimo). + + 2. Tajpu: :q! <Enenklavo>. + Tio eliras el la rekdaktilo, SEN konservi la ŝanĝojn, kion vi faris. + + 3. Kiam vi vidas la ŝelinviton, tajpu la komandon kiun vi uzis por eniri + en ĉi tiu instruilo. Tio estus: vimtutor <Enenklavo> + + 4. Se vi memoris tiujn paŝojn kaj sentas vin memfida, plenumu la paŝojn + 1 ĝis 3 por eliri kaj reeniri la redaktilon. + +RIMARKO: :q! <Enenklavo> eliras sen konservi la ŝanĝojn kion vi faris. + Post kelkaj lecionoj, vi lernos kiel konservi la ŝanĝojn al dosiero. + + 5. Movu la kursoron suben ĝis la leciono 1.3. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 1.3: REDAKTO DE TEKSTO - FORVIŜO + + + ** Premu x por forviŝi la signon sub la kursoro. ** + + 1. Movu la kursoron al la suba linio markita per --->. + + 2. Por korekti la erarojn, movu la kursoron ĝis kiam ĝi estas sur la + forviŝenda signo. + + 3. Premu la klavon x por forviŝi la nedeziratan signon. + + 4. Ripetu paŝojn 2 ĝis 4 ĝis kiam la frazo estas ĝusta. + + +---> La boovinno saaltiss ssur laa luuno. + + 5. Post kiam la linio estas ĝusta, iru al la leciono 1.4 + +RIMARKO: Trairante la instruilon, ne provu memori, lernu per la uzo. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 1.4: REDAKTO DE TEKSTO - ENMETO + + + ** Premu i por enmeti tekston. ** + + 1. Movu la kursoron al la unua suba linio markita per --->. + + 2. Por igi la unuan linion sama ol la dua, movu la kursoron sur la unuan + signon post kie la teksto estas enmetenda. + + 3. Premu i kaj tajpu la bezonatajn aldonojn. + + 4. Premu <ESK> kiam la eraroj estas korektitaj por reiri al la normala + reĝimo. Ripetu la paŝojn 2 ĝis 4 por korekti la frazon. + +---> Mank en ĉi linio. +---> Mankas tekston en ĉi tiu linio. + + 5. Kiam vi sentas vin komforta pri enmeto de teksto, moviĝu al la + leciono 1.5. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 1.5: REDAKTO DE TEKSTO - POSTALDONO + + + ** Premu A por postaldoni tekston. ** + + 1. Movu la kursoron al la unua suba linio markita per --->. + Ne gravas sur kiu signo estas la kursoro. + + 2. Premu A kaj tajpu la bezonatajn aldonojn. + + 3. Post kiam la teksto estas aldonita, premu <ESK> por reiri al la normala + reĝimo. + + 4. Movu la kursoron al la dua linio markita per ---> kaj ripetu la + paŝojn 2 kaj 3 por korekti la frazon. + +---> Mankas teksto el ti + Mankas teksto el tiu linio. +---> Mankas ankaŭ teks + Mankas ankaŭ teksto ĉi tie. + + 5 Kiam vi sentas vin komforta pri postaldono de teksto, moviĝu al la + leciono 1.6 + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 1.6: REDAKTI DOSIERON + + ** Uzu :wq por konservi dosieron kaj eliri. ** + + !! RIMARKO: Antaŭ ol plenumi iun suban paŝon ajn, legu la tutan lecionon!! + + 1. Eliru el la instruilo kiel vi faris en la leciono 1.2: :q! + + 2. Ĉe la ŝelinvito, tajpu ĉi tiun komandon: vim tutor <Enenklavo> + 'vim' estas la komando por lanĉi la redaktilon Vim, 'tutor' estas la + dosiernomo de la dosiero, kiun vi volas redakti. Uzu dosieron, kiu + ŝanĝeblas. + + 3. Enmetu kaj forviŝu tekston, kiel vi lernis en la antaŭaj lecionoj. + + 4. Konservu la dosieron kun ŝanĝoj kaj eliru el Vim per: :qw <Enenklavo> + + 5. Relanĉu la instruilon vimtutor kaj moviĝu suben al la sekvanta resumo. + + 6. Post kiam vi legis la suprajn paŝojn, kaj komprenis ilin: faru ilin. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 1 RESUMO + + 1. La kursoro moviĝas aŭ per la sagoklavoj, aŭ per la klavoj hjkl. + h (liven) j (suben) k (supren) l (dekstren) + + 2. Por lanĉi Vim el la ŝelinvito, tajpu: vim DOSIERNOMO <Enenklavo> + + 3. Por eliri el Vim, tajpu: <ESK> :q! <Enenklavo> por rezigni la ŝanĝojn + + 4. Por forviŝi la signojn ĉe la pozicio de la kursoro, tajpu: x + + 5. Por enmeti aŭ postaldoni tekston, tajpu: + i tajpu enmetendan tekston <ESK> + enmetas tekston antaŭ la kursoro + + A tajpu la postaldonendan tekston <ESK> + postaldonas post la kursoro + +RIMARKO: Premo de <ESK> iras al la normala reĝimo, aŭ rezignas la + nedeziratan aŭ parte plenumita komando. + +Nun daŭrigu al la leciono 2. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 2.1: KOMANDOJ DE FORVIŜO + + + ** Tajpu dw por forviŝi vorton. ** + + 1. Premu <ESK> por certigi, ke vi estas en normala reĝimo. + + 2. Movu la kursoron al la linio markita per --->. + + 3. Movu la kursoron al la komenco de vorto, kiu forviŝendas. + + 4. Tajpu dw por forviŝi la vorton. + + RIMARKO: La litero d aperos en la lasta linio sur la ekrano kiam vi + tajpas ĝin. Vim atendas ĝis kiam vi tajpas w . Se vi vidas + alian signon ol d vi tajpis ion mise; premu <ESK> kaj + rekomencu. + +---> Estas iuj vortoj kiuj Zamenhof ne devus esti akuzativo en ĉi tiu frazo. + + 5. Ripetu paŝojn 3 kaj 4 ĝis kiam la frazo estas ĝusta kaj moviĝu al la + leciono 2.2. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 2.2: PLIAJ KOMANDOJ DE FORVIŜO + + ** Tajpu d$ por forviŝi la finon de la linio. ** + + 1. Premu <ESK> por certigi, ke vi estas en normala reĝimo. + + 2. Movu la kursoron sur la suban linion markita per --->. + + 3. Movu la kursoron ĉe la fino de la ĝusta linio (POST la unua . ). + + 4. Tajpu d$ por forivŝi ĝis la fino de la linio. + +---> Iu tajpis la finon de ĉi tiu linio dufoje. fino de ĉi tiu linio dufoje. + + + 5. Moviĝu al la leciono 2.3 por kompreni kio okazas. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 2.3: PRI OPERATOROJ KAJ MOVOJ + + + Multaj komandoj, kiuj ŝanĝas la tekston, estas faritaj de operatoro kaj + movo. La formato de komando de forviŝo per la operatoro de forviŝo d + estas kiel sekvas: + + d movo + + Kie: + d - estas la operatoro de movo + movo - estas tio, pri kio la operatoro operacios (listigita sube) + + Mallonga listo de movoj: + w - ĝis la komenco de la sekvanta vorto, krom ĝian unuan signon. + e - ĝis la fino de la nuna vorto, krom la lasta signo. + $ - ĝis la fino de la linio, krom la lasta signo. + + Do tajpo de 'de' forviŝos ekde la kursoro ĝis la fino de la vorto. + +RIMARKO: Premo de nur la movo en Normala reĝimo sen operatoro movos + la kursoron kiel specifite. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 2.4: UZI NOMBRON POR MOVO + + ** Tajpo de nombro antaŭ movo ripetas ĝin laŭfoje. ** + + 1. Movu la kursoron ĉe la komenco de la suba linio markita per --->. + + 2. Tajpu 2w por movi la kursoron je du vortoj antaŭen. + + 3. Tajpu 3e por movi la kursoron ĉe la fino de la tria vorto antaŭen. + + 4. Tajpu 0 (nul) por moviĝi ĉe la komenco de la linio. + + + 5. Ripetu paŝojn 2 ĝis 3 kun malsamaj nombroj. + +---> Tio estas nur linio kun vortoj, kie vi povas moviĝi. + + 6. Moviĝu al la leciono 2.5. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 2.5: UZI NOMBRON POR FORVIŜI PLI + + ** Tajpo de nombro kun operatoro ripetas ĝin laŭfoje. ** + + En la kombinaĵo de la operatoro de forviŝo, kaj movo kiel menciita + ĉi-supre, eblas aldoni nombron antaŭ la movo por pli forviŝi: + d nombro movo + + 1. Movu la kursoron ĉe la unua MAJUSKLA vorto en la linio markita per --->. + + 2. Tajpu d2w por forviŝi la du MAJUSKLAJN vortojn + + 3. Ripetu paŝojn 1 ĝis 2 per malsama nombro por forviŝi la sinsekvajn + MAJUSKLAJN vortojn per unu komando + +---> Tiu AB CDE linio FGHI JK LMN OP de vortoj estas Q RS TUV purigita. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 2.6: OPERACII SUR LINIOJ + + ** Tajpu dd por forviŝi tutan linion. ** + + Pro la ofteco de forviŝo de tuta linio, la verkisto de Vi decidis, ke + estus pli facile simple tajpi du d-ojn por forviŝi linion. + + 1. Movu la kursoron sur la duan linion en la suba frazo. + 2. Tajpu dd por forviŝi la linion. + 3. Nun moviĝu al la kvara linio. + 4. Tajpu 2dd por forviŝi du liniojn. + +---> 1) Rozoj estas ruĝaj, +---> 2) Ŝlimo estas amuza, +---> 3) Violoj estas bluaj, +---> 4) Mi havas aŭton, +---> 5) Horloĝoj diras kioma horo estas, +---> 6) Sukero estas dolĉa, +---> 7) Kaj tiel vi estas. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 2.7: LA KOMANDO DE MALFARO + + ** Premu u por malfari la lastajn komandojn, U por ripari la tutan linion. ** + + 1. Movu la kursoron ĉe la suba linio markita per ---> kaj metu ĝin sur + la unuan eraron. + 2. Tajpu x por forviŝi la unuan nedeziratan signon. + 3. Nun tajpu u por malfari la lastan plenumitan komandon. + 4. Ĉi-foje, riparu ĉiujn erarojn en la linio kaj ĝia originala stato. + 5. Nun tajpu majusklan U por igi la linion al ĝia antaŭa stato. + 6. Nun tajpu u kelkfoje por malfari la U kaj antaŭajn komandojn. + 7. Nun tajpu CTRL-R (premante la CTRL klavon dum vi premas R) kelkfoje + por refari la komandojn (malfari la malfarojn). + +---> Koorektii la erarojn sur tiuu ĉi liniio kaj remettu illlin per malfaro. + + 8. Tiuj estas tre utilaj komandoj. Nun moviĝu al la leciono 2 RESUMO. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 2 RESUMO + + 1. Por forviŝi ekde la kursoro ĝis la sekvanta vorto, tajpu: dw + 2. Por forviŝi ekde la kursoro ĝis la fino de la linio, tajpu: d$ + 3. Por forviŝi tutan linion, tajpu: dd + + 4. Por ripeti movon, antaŭmetu nombron: 2w + 5. La formato de ŝanĝa komando estas: + operatoro [nombro] movo + + kie: + operatoro - estas tio, kio farendas, kiel d por forviŝi + [nombro] - estas opcia nombro por ripeti la movon + movo - movas sur la teksto por operacii, kiel ekzemple w (vorto), + $ (ĝis fino de linio), ktp. + + 6. Por moviĝi al la komenco de la linio, uzu nul: 0 + + 7. Por malfari antaŭajn agojn, tajpu: u (minuskla u) + Por malfari ĉiujn ŝanĝojn sur la linio, tajpu: U (majuskla U) + Por refari la malfarojn, tajpu: CTRL-R + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 3.1 LA KOMANDO DE METO + + ** Tajpu p por meti tekston forviŝitan antaŭe post la kursoro. ** + + 1. Movu la kursoron ĉe la unua ---> suba linio. + + 2. Tajpu dd por forviŝi la linion kaj konservi ĝin ene de reĝistro de Vim. + + 3. Movu la kursoron ĉe la linio c), SUPER kie la forviŝita linio devus esti. + + 4. Tajpu p por meti la linion sub la kursoron. + + 5. Ripetu la paŝojn 2 ĝis 4 por meti ĉiujn liniojn en la ĝusta ordo. + +---> d) Ĉu ankaŭ vi povas lerni? +---> b) Violoj estas bluaj, +---> c) Inteligenteco lerneblas, +---> a) Rozoj estas ruĝaj, + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 3.2 LA KOMANDO DE ANSTATAŬIGO + + ** Tajpu rx por anstataŭigi la signon ĉe la kursoro per x . ** + + + 1. Movu la kursoron ĉe la unua suba linio markita per --->. + + 2. Movu la kursoron ĝis la unua eraro. + + 3. Tajpu r kaj la signon, kiu devus esti tie. + + 4. Ripetu paŝojn 2 kaj 3 ĝis kiam la unua linio egalas la duan. + +---> Kiem tiu lanio estis tajpita, iu pramis la naĝuftajn klovojn! +---> Kiam tiu linio estis tajpita, iu premis la neĝustajn klavojn! + + 5. Nun moviĝu al la leciono 3.3. + +Rimarko: Memoru, ke vi devus lerni per uzo, kaj ne per memorado. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 3.3 LA OPERATORO DE ŜANĜO + + ** Por ŝanĝi ĝis la fino de la vorto, tajpu ce . ** + + 1. Movu la kursoron ĉe la unua suba linio markita per --->. + + 2. Metu la kursoron sur la d en lduzw + + 3. Tajpu ce kaj la ĝustan vorton (en tiu ĉi kazo, tajpu inio ). + + 4. Premu <ESK> kaj moviĝu al la sekvanta signo, kiu bezonas ŝanĝon. + + 5. Ripetu la paŝojn 3 kaj 4 ĝis kiam la unua frazo egalas la duan. + +---> Tiu lduzw havas kelkajn vortojn, kiii bezas ŝanĝon per la ŝanĝooto. +---> Tiu linio havas kelkajn vortojn, kiuj bezonas ŝanĝon per la ŝanĝoperatoro. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 3.4 PLIAJ ŜANĜOJ PER c + + ** La operatoro de ŝanĝo uzeblas kun la sama movo ol forviŝo. ** + + 1. La operatoro de ŝanĝo funkcias sammaniere kiel forviŝo. La formato estas: + + c [nombro] movo + + 2. La movoj estas samaj, kiel ekzemple w (vorto) kaj $ (fino de linio). + + 3. Moviĝu ĉe la unua suba linio markita per --->. + + 4. Movu la kursoron al la unua eraro. + + 5. Tajpu c$ kaj tajpu la reston de la linio kiel la dua kaj premu <ESK>. + +---> La fino de ĉi tiu linio bezonas helpon por igi ĝin same kiel la dua. +---> La fino de ĉi tiu linio bezonas korektojn per uzo de la komando c$ + +RIMARKO: Vi povas uzi la klavon Retropaŝo por korekti erarojn dum vi tajpas. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 3 RESUMO + + 1. Por remeti tekston, kiun vi ĵus forviŝis, tajpu p. Tio metas la + forviŝitan tekston POST la kursoro (se linio estis forviŝita, ĝi + iros en la linion sub la kursoro). + + 2. Por anstataŭigi la signon sub la kursoro, tajpu r kaj tiam la signon + kion vi deziras havi tie. + + 3. La operatoro de ŝanĝo ebligas al vi ŝanĝi ekde la kursoro, ĝis kie + la movo iras. Ekz. tajpu ce por ŝanĝi ekde la kursoro ĝis la fino + de la vorto, c$ por ŝanĝi ĝis la fino de la linio. + + 4. La formato de ŝanĝo estas: + + c [nombro] movo + +Nun daŭrigu al la sekvanta leciono. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 4.1: POZICIO DE KURSORO KAJ STATO DE DOSIERO + + ** Tajpu CTRL-G por montri vian pozicion en la dosiero kaj la dosierstaton. + Tajpu G por moviĝi al linio en la dosiero. ** + + RIMARKO: Legu la tutan lecionon antaŭ ol plenumi iun paŝon ajn!! + + 1. Premu la klavon Ctrl kaj premu g . Oni nomas tion CTRL-G. + Mesaĝo aperos ĉe la suba parto de la paĝo kun la dosiernomo kaj la + pozicio en la dosiero. Memoru la numeron de la linio por paŝo 3. + + RIMARKO: Vi eble vidas la pozicion de la kursoro ĉe la suba dekstra + angulo de la ekrano. Tio okazas kiam la agordo 'ruler' estas + ŝaltita (vidu :help 'ruler') + + 2. Premu G por moviĝi ĉe la subo de la dosiero. + Tajpu gg por moviĝi ĉe la komenco de la dosiero. + + 3. Tajpu la numeron de la linio kie vi estis kaj poste G . Tio removos + vin al la linio, kie vi estis kiam vi unue premis CTRL-G. + + 4. Se vi sentas vin komforta, plenumu paŝojn 1 ĝis 3. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 4.2 LA KOMANDO DE SERĈO + + ** Tajpu / kaj poste frazon por serĉi la frazon. ** + + 1. En normala reĝimo, tajpu la / signon. Rimarku, ke ĝi kaj la kursoro + aperas ĉe la suba parto de la ekrano kiel por la : komando. + + 2. Nun tajpu 'errarro' <Enenklavo>. + Tio estas la vorto, kion vi volas serĉi. + + 3. Por serĉi la saman frazon denove, simple tajpu n . + Por serĉi la saman frazon denove en la retrodirekto, tajpu N . + + 4. Por serĉi frazon en la retrodirekto, uzu ? anstataŭ / . + + 5. Por reiri tien, el kie vi venis, premu CTRL-O (Premu Ctrl kaj o + literon o). Ripetu por pli retroiri. CTRL-I iras antaŭen. + +---> "errarro" ne estas maniero por literumi eraro; errarro estas eraro. + +RIMARKO: Kiam la serĉo atingas la finon de la dosiero, ĝi daŭras ĉe la + komenco, krom se la agordo 'wrapscan' estas malŝaltita. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 4.3 SERĈO DE KONGRUAJ KRAMPOJ + + ** Tajpu % por trovi kongruan ), [ aŭ } ** + + 1. Poziciu la kursoron sur iun (, [ aŭ { en la linio markita per --->. + + 2. Nun tajpu la % signon. + + 3. La kursoro moviĝas al la kongrua krampo. + + 4. Tajpu % por movi la kursoron al la alia kongrua krampo. + + 5. Movu la kursoron al la alia (, ), [, ], {, } kaj observu tion, + kion % faras. + +---> Ĉi tiu ( estas testa linio kun (-oj, [-oj, ]-oj kaj {-oj, }-oj en ĝi. )) + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 4.4 LA KOMANDO DE ANSTATAŭIGO + + + ** Tajpu :s/malnova/nova/g por anstataŭigi 'nova' per 'malnova'. ** + + 1. Movu la kursoron al la suba linio markita per --->. + + 2. Tajpu :s/laa/la <Enenklavo> . Rimarku, ke la komando ŝanĝas nur la + unuan okazaĵon de "laa" en la linio. + + 3. Nun tajpu :s/laa/la/g . Aldono de g opcio signifas mallokan + anstataŭigon en la linio. Ĝi ŝanĝas ĉiujn okazaĵojn de "laa" en la + linio. + +---> laa plej bona tempo por vidi florojn estas en laa printempo. + + 4. Por ŝanĝi ĉiujn okazaĵojn de iu ĉena signo inter du linioj, + tajpu :#,#s/malnova/nova/g kie #,# estas la numeroj de linioj de la + intervalo de la linioj kie la anstataŭigo + okazos. + Tajpu :%s/malnova/nova/g por ŝanĝi ĉiujn okazaĵojn en la tuta + dosiero. + Tajpu :s/malnova/nova/gc por trovi ĉiujn okazaĵojn en la tuta + dosiero, kun invitilo ĉu anstataŭigi + aŭ ne. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 4 RESUMO + + 1. CTRL-G vidigas vian pozicion en la dosiero kaj la staton de la dosiero. + G movas la kursoron al la fino de la dosiero. + numero G movas la kursoron al tiu numero de linio. + gg movas la kursoron al la unua linio. + + 2. Tajpo de / kaj frazon serĉas la frazon antaŭen. + Tajpo de ? kaj frazon serĉas la frazon malantaŭen. + Post serĉo, tajpu n por trovi la sekvantan okazaĵon en la sama direkto aŭ + N por serĉi en la mala direkto. + CTRL-O movas vin al la antaŭaj pozicioj, CTRL-I al la novaj pozicioj. + + 3. Tajpo de % kiam la kursoro estas sur (,),[,],{ aŭ } moviĝas al ĝia + kongruo. + + 4. Por anstataŭigi 'nova' en la unua 'malnova' en linio :s/malnova/nova + Por anstataŭigi 'nova' en ĉiuj 'malnova'-oj en linio :s/malnova/nova/g + Por anstataŭigi frazon inter du #-aj linioj :#,#s/malnova/nova/g + Por anstataŭigi ĉiujn okazaĵojn en la dosiero :%s/malnova/nova/g + Por demandi konfirmon ĉiu-foje, aldonu 'c' :%s/malnova/nova/gc + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 5.1 KIEL PLENUMI EKSTERAN KOMANDON + + ** Tajpu :! sekvata de ekstera komando por plenumi la komandon. ** + + 1. Tajpu la konatan komandon : por pozicii la kursoron ĉe la suba parto + de la ekrano. Tio ebligas tajpadon de komando en komanda linio. + + 2. Nun tajpu la ! (krisigno) signon. Tio ebligas al vi plenumi iun + eksteran ŝelan komandon ajn. + + 3. Ekzemple, tajpu ls post ! kaj tajpu <Enenklavo>. Tio listigos la + enhavon de la dosierujo, same kiel se vi estis en ŝela invito. + Aŭ uzu :!dir se ls ne funkcias. + +RIMARKO: Eblas plenumi iun eksteran komandon ajn tiamaniere, ankaŭ kun + argumentoj. + +RIMARKO: Ĉiuj : komandoj devas finiĝi per tajpo de <Enenklavo> + Ekde nun, ni ne plu mencios tion. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 5.2 PLI PRI KONSERVO DE DOSIERO + + ** Por konservi la faritajn ŝanĝojn en la teksto, tajpu :w DOSIERNOMO. ** + + 1. Tajpu !dir aŭ !ls por akiri liston de via dosierujo. + Vi jam scias, ke vi devas tajpi <Enenklavo> post tio. + + 2. Elektu dosieron, kiu ne jam ekzistas, kiel ekzemple TESTO. + + 3. Nun tajpu: :w TESTO (kie TESTO estas la elektita dosiernomo) + + 4. Tio konservas la tutan dosieron (instruilo de Vim) per la nomo TESTO. + Por kontroli tion, tajpu :!dir aŭ !ls denove por vidigi vian + dosierujon. + +RIMARKO: Se vi volus eliri el Vim kaj restartigi ĝin denove per vim TESTO, + la dosiero estus precize same kiel kopio de la instruilo kiam vi + konservis ĝin. + + 5. Nun forviŝu la dosieron tajpante (MS-DOS): :!del TESTO + aŭ (UNIKSO): :!rm TESTO + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 5.3 APARTIGI KONSERVENDAN TESTON + + ** Por konservi parton de la dosiero, tajpu v movo :w DOSIERNOMO ** + + 1. Movu la kursoron al tiu linio. + + 2. Premu v kaj movu la kursoron al la kvina suba ero. Rimarku, ke la + teksto emfaziĝas. + + 3. Premu la : signon. Ĉe la fino de la ekrano :'<,'> aperos. + + 4. Tajpu w TESTO , kie TESTO estas dosiernomo, kiu ne jam ekzistas. + Kontrolu, ke vi vidas :'<,'>w TESTO antaŭ premi <Enenklavo>. + + 5. Vim konservos la apartigitajn liniojn al la dosiero TESTO. Uzu :dir + aŭ :!ls por vidigi ĝin. Ne jam forviŝu ĝin. Ni uzos ĝin en la + sekvanta leciono. + +RIMARKO: PREMO DE v komencas Viduman apartigon. Vi povas movi la kursoron + por pligrandigi aŭ malpligrandigi la apartigon. Tiam vi povas uzi + operatoron por plenumi ion kun la teksto. Ekzemple, d forviŝas + la tekston. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 5.4 AKIRI KAJ KUNFANDI DOSIEROJN + + + ** Por enmeti la enhavon de dosiero, tajpu :r DOSIERNOMON ** + + 1. Movu la kursoron ĵus super ĉi tiu linio. + +RIMARKO: Post plenumo de paŝo 2, vi vidos tekston el la leciono 5.3. Tiam + moviĝu SUBEN por vidi tiun lecionon denove. + + 2. Nun akiru vian dosieron TESTO uzante la komandon :r TESTO kie TESTO + estas la nomo de la dosiero, kiun vi uzis. + La dosiero, kion vi akiras, estas metita sub la linio de la kursoro. + + 3. Por kontroli, ĉu la dosiero akiriĝis, retromovu la kursoron kaj rimarku, + ke estas nun du kopioj de la leciono 5.3, la originala kaj la versio mem + de la dosiero. + +RIMARKO: Vi nun povas legi la eliron de ekstera komando. Ekzemple, + :r !ls legas la eliron de la komando ls kaj metas ĝin sub la + kursoron. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 5 RESUMO + + + 1. :!komando plenumas eksteran komandon. + + Iuj utilaj ekzemploj estas: + (MS-DOS) (UNIKSO) + :!dir :!ls - listigas dosierujon + :!del DOSIERNOMO :!rm DOSIERNOMO - forviŝas la dosieron DOSIERNOMO + + 2. :w DOSIERNOMO konservas la nunan dosieron de Vim al disko kun la + nomo DOSIERNOMO. + + 3. v movo :w DOSIERNOMO konservas la Viduman apartigo de linioj en + dosiero DOSIERNOMO. + + 4. :r DOSIERNOMO akiras la dosieron DOSIERNOMO el la disko kaj metas + ĝin sub la pozicion de la kursoro. + + 5. :r !dir legas la eligon de la komando dir kaj metas ĝin sub la + pozicion de la kursoro. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 6.1 LA KOMANDO DE MALFERMO + + + ** Tajpu o por malfermi linion sub la kursoro kaj eniri Enmetan reĝimon. ** + + 1. Movu la kursoron al la suba linio markita per --->. + + 2. Tajpu la minusklan literon o por malfermi linion SUB la kursoro kaj + eniri la Enmetan reĝimon. + + 3. Nun tajpu tekston kaj premu <ESK> por eliri la Enmetan reĝimon. + +---> Post tajpo de o la kursoro moviĝas al la malfermata linio en + Enmeta reĝimo. + + 4. Por malfermi linion SUPER la kursoro, nur tajpu majusklan O , + anstataŭ minusklan o. Provu tion per la suba linio. + +---> Malfermu linion SUPER tiu tajpante O dum la kursoro estas sur tiu linio. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 6.2 LA KOMANDO DE POSTALDONO + + + ** Tajpu a por enmeti POST la kursoro. ** + + 1. Movu la kursoron ĉe la komenco de la linio markita per --->. + + 2. Premu e ĝis kiam la kursoro estas ĉe la fino de li. + + 3. Tajpu a (minuskle) por aldoni tekston POST la kursoro. + + 4. Kompletigu la vorton same kiel la linio sub ĝi. Premu <ESK> por + eliri la Enmetan reĝimon. + + 5. Uzu e por moviĝi al la sekvanta nekompleta vorto kaj ripetu + paŝojn 3 kaj 4. + +---> Ĉi tiu lin ebligos vin ekz vin postal tekston al linio. +---> Ĉi tiu linio ebligos vin ekzerci vin postaldoni tekston al linio. + +RIMARKO: Ĉiu a, i kaj A iras al la sama Enmeta reĝimo, la nura malsamo + estas tie, kie la signoj estas enmetitaj. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 6.3 ALIA MANIERO POR ANSTATAŬIGI + + + ** Tajpu majusklan R por anstataŭigi pli ol unu signo. ** + + 1. Movu la kursoron al la unua suba linio markita per --->. Movu la + kursoron al la komenco de la unua xxx . + + 2. Nun premu R kaj tajpu la nombron sub ĝi en la dua linio, por ke ĝi + anstataŭigu la xxx . + + 3. Premu <ESK> por foriri la Anstataŭigan reĝimon. Rimarku, ke la cetera + parto de la linio restas neŝanĝata. + + 4. Ripetu la paŝojn por anstataŭigi la restantajn xxx. + +---> Aldono de 123 al xxx donas al vi xxx. +---> Aldono de 123 al 456 donas al vi 579. + +RIMARKO: Anstataŭiga reĝimo estas same kiel Enmeta reĝimo, sed ĉiu signo + tajpita forviŝas ekzistan signon. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 6.4 KOPII KAJ ALGLUI TEKSTON + + + ** Uzu la y operatoron por kopii tekston, kaj p por alglui ĝin ** + + + 1. Iru al la linio markita per ---> sube kaj poziciu la kursoron post "a)". + + 2. Komencu la Viduman reĝimon per v kaj movu la kursoron ĵus antaŭ "unua". + + 3. Tajpu y por kopii la emfazitan tekston. + + 4. Movu la kursoron ĉe la fino de la linio: j$ + + 5. Tajpu p por alglui la tekston. Tiam tajpu: a dua <ESK> . + + 6. Uzu Viduman reĝimon por apartigi " ero.", kopiu ĝin per y , moviĝu + ĉe la fino de la sekvanta linio per j$ kaj algluu la tekston tie + per p . + +---> a) tio estas la unua ero. + b) + +RIMARKO: vi povas ankaŭ uzi y kiel operatoro; yw kopias unu vorton. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 6.5 AGORDI OPCION + + ** Agordu opcion por ke serĉo aŭ anstataŭgo ignoru usklecon ** + + 1. Serĉu 'ignori' per tajpo de /ignori <Enenklavo> + Ripetu plurfoje premante n . + + 2. Ŝaltu la opcion 'ic' (ignori usklecon) per: :set ic + + 3. Nun serĉu 'ignori' denove premante n + Rimarku, ke Ignori kaj IGNORI estas nun troveblas. + + 4. Ŝaltu la opciojn 'hlsearch' kaj 'incsearch': :set hls is + + 5. Nun retajpu la serĉan komandon kaj vidu kio okazas: /ignore <Enenklavo> + + 6. Por malŝalti ignoron de uskleco: :set noic + +RIMARKO: Por forigi emfazon de kongruo, tajpu: :nohlsearch +RIMARKO: Se vi deziras ignori usklecon por nur unu serĉa komando, uzu \c + en la frazo: /ignore\c <Enenklavo> + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 6 RESUMO + + 1. Tajpu o por malfermi linion SUB la kursoro kaj eki en Enmeta reĝimo. + 1. Tajpu O por malfermi linion SUPER la kursoro. + + 2. Tajpu a por enmeti tekston POST la kursoro. + Tajpu A por enmeti tekston post la fino de la linio. + + 3. La e komando movas la kursoron al la fino de vorto. + + 4. la y operatoro kopias tekston, p algluas ĝin. + + 5. Tajpo de majuskla R eniras la Anstataŭigan reĝimon ĝis kiam + <ESK> estas premita. + + 6. Tajpo de ":set xxx" ŝaltas la opcion "xxx". Iuj opcioj estas: + 'ic' 'ignorecase' ignori usklecon dum serĉo + 'is' 'incsearch' montru partan kongruon dum serĉo + 'hls' 'hlsearch' emfazas ĉiujn kongruajn frazojn + Vi povas uzi aŭ la longan, aŭ la mallongan nomon de opcio. + + 7. Antaŭaldonu "no" por malŝalti la opcion: :set noic + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 7.1 AKIRI HELPON + + ** Uzu la helpan sistemon ** + + Vim havas ampleksan helpan sistemon. Por komenciĝi, provu unu el la tiuj + tri: + - premu la klavon <HELPO> (se vi havas ĝin) + - premu la klavon <F1> (se vi havas ĝin) + - tajpu :help <Enenklavo> + + Legu la tekston en la helpfenestro por trovi kiel helpo funkcias. + Tajpu CTRL-W CTRL-W por salti de unu fenestro al la alia. + Tajpu :q <Enenklavo> por fermi la helpan fenestron. + + Vi povas trovi helpon pri io ajn aldonante argumenton al la komando + ":help". Provu tiujn (ne forgesu premi <Enenklavo>): + + :help w + :help c_CTRL-D + :help insert-index + :help user-manual + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 7.2 KREI STARTAN SKRIPTON + + ** Ebligu eblecojn de Vim ** + + Vim havas multe pli da eblecoj ol Vi, sed la plej multaj estas defaŭlte + malŝaltitaj. Por ekuzi la eblecojn, vi devas krei dosieron "vimrc. + + 1. Ekredaktu la dosieron "vimrc". Tio dependas de via sistemo: + :e ~/.vimrc por Unikso + :e $VIM/_vimrc por MS-Vindozo + + 2. Nun legu la enhavon de la ekzempla "vimrc" + :r $VIMRUNTIME/vimrc_example.vim + + 3. Konservu la dosieron per: + :w + + La sekvanta fojo, kiam vi lanĉas Vim, ĝi uzos sintaksan emfazon. + Vi povas aldoni ĉiujn viajn preferatajn agordojn al tiu dosiero "vimrc". + Por pli da informoj, tajpu :help vimrc-intro + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 7.3 KOMPLETIGO + + ** Kompletigo de komanda linio per CTRL-D kaj <TAB> ** + + 1. Certigu ke Vim estas en kongrua reĝimo: :set nocp + + 2. Rigardu tiujn dosierojn, kiuj ekzistas en la dosierujo: :!ls aŭ :!dir + + 3. Tajpu la komencon de komando: :e + + 4. Premu CTRL-D kaj Vim montros liston de komandoj, kiuj komencas per "e". + + 5. Premu <TAB> kaj Vim kompletigos la nomon de la komando al ":edit". + + 6. Nun aldonu spaceton kaj la komencon de ekzistanta nomo: :edit DOSI + + 7. Premu <TAB>. Vim kompletigos la nomon (se ĝi estas unika) + +RIMARKO: Kompletigo funkcias por multaj komandoj. Nur provu premi CTRL-D kaj + <TAB>. Estas aparte utila por :help . + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leciono 7 RESUMO + + + 1. Tajpu :help aŭ premu <F1> aŭ <Helpo> por malfermi helpan fenestron. + + 2. Tajpu :help kmd por trovi helpon pri kmd. + + 3. Tajpu CTRL-W CTRL-W por salti al alia fenestro. + + 4. Tajpu :q to fermi la helpan fenestron. + + 5. Kreu komencan skripton vimrc por konservi viajn agordojn. + + 6. Kiam vi tajpas : komandon, premu CTRL-D por vidi ĉiujn kompleteblojn. + Premu <TAB> por uzi unu kompletigon. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + Tio konkludas la instruilon de Vim. Ĝi celis doni mallongan superrigardon + de la redaktilo Vim, nur tio kio sufiĉas por ebligi al vi facilan uzon de + la redaktilo. Estas nepre nekompleta, ĉar Vim havas multajn multajn pliajn + komandojn. Legu la manlibron: ":help user-manual". + + Tiu instruilo estis verkita de Michael C. Pierce kaj Robert K. Ware, + el la Koloradia Lernejo de Minejoj (Colorado School of Mines) uzante + ideojn provizitajn de Charles Smith el la Stata Universitato de Koloradio + (Colorado State University) + + Retpoŝto: bware@mines.colorado.edu. + + Modifita por Vim de Bram Moolenaar. + + Tradukita en Esperanto de Dominique Pellé, 2008-04-01 + Retpoŝto: dominique.pelle@gmail.com + Lasta ŝanĝo: 2008-04-02 + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/tutor/tutor.es.utf-8 Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,769 @@ +=============================================================================== += B i e n v e n i d o a l t u t o r d e V I M - Versión 1.4 = +=============================================================================== + + Vim es un editor muy potente que dispone de muchos mandatos, demasiados + para ser explicados en un tutor como éste. Este tutor está diseñado + para describir suficientes mandatos para que usted sea capaz de + aprender fácilmente a usar Vim como un editor de propósito general. + + El tiempo necesario para completar el tutor es aproximadamente de 25-30 + minutos, dependiendo de cuanto tiempo se dedique a la experimentación. + + Los mandatos de estas lecciones modificarán el texto. Haga una copia de + este fichero para practicar (con «vimtutor» esto ya es una copia). + + Es importante recordar que este tutor está pensado para enseñar con + la práctica. Esto significa que es necesario ejecutar los mandatos + para aprenderlos adecuadamente. Si únicamente se lee el texto, se + olvidarán los mandatos. + + Ahora, asegúrese de que la tecla de bloqueo de mayúsculas no está + activada y pulse la tecla j lo suficiente para mover el cursor + de forma que la Lección 1.1 ocupe completamente la pantalla. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lección 1.1: MOVIMIENTOS DEL CURSOR + + ** Para mover el cursor, pulse las teclas h,j,k,l de la forma que se indica. ** + ^ + k Indicación: La tecla h está a la izquierda y mueve a la izquierda. + < h l > La tecla l está a la derecha y mueve a la derecha. + j La tecla j parece una flecha que apunta hacia abajo. + v + + 1. Mueva el cursor por la pantalla hasta que se sienta cómodo con ello. + + 2. Mantenga pulsada la tecla j hasta que se repita «automágicamente». +---> Ahora ya sabe como llegar a la lección siguiente. + + 3. Utilizando la tecla abajo, vaya a la Lección 1.2. + +Nota: Si alguna vez no está seguro sobre algo que ha tecleado, pulse <ESC> + para situarse en modo Normal. Luego vuelva a teclear la orden que deseaba. + +Nota: Las teclas de movimiento del cursor también funcionan. Pero usando + hjkl podrá moverse mucho más rápido una vez que se acostumbre a ello. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lección 1.2: ENTRANDO Y SALIENDO DE VIM + + ¡¡ NOTA: Antes de ejecutar alguno de los pasos siguientes lea primero + la lección entera!! + + 1. Pulse la tecla <ESC> (para asegurarse de que está en modo Normal). + + 2. Escriba: :q! <INTRO> + +---> Esto provoca la salida del editor SIN guardar ningún cambio que se haya + hecho. Si quiere guardar los cambios y salir escriba: + :wq <INTRO> + + 3. Cuando vea el símbolo del sistema, escriba el mandato que le trajo a este + tutor. Éste puede haber sido: vimtutor <INTRO> + Normalmente se usaría: vim tutor <INTRO> + +---> 'vim' significa entrar al editor, 'tutor' es el fichero a editar. + + 4. Si ha memorizado estos pasos y se se siente con confianza, ejecute los + pasos 1 a 3 para salir y volver a entrar al editor. Después mueva el + cursor hasta la Lección 1.3. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lección 1.3: EDICIÓN DE TEXTO - BORRADO + +** Estando en modo Normal pulse x para borrar el carácter sobre el cursor. **j + + + 1. Mueva el cursor a la línea de abajo señalada con --->. + + 2. Para corregir los errores, mueva el cursor hasta que esté bajo el + carácter que va aser borrado. + + 3. Pulse la tecla x para borrar el carácter sobrante. + + 4. Repita los pasos 2 a 4 hasta que la frase sea la correcta. + +---> La vvaca saltóó soobree laa luuuuna. + + 5. Ahora que la línea esta correcta, continúe con la Lección 1.4. + + +NOTA: A medida que vaya avanzando en este tutor no intente memorizar, + aprenda practicando. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lección 1.4: EDICIÓN DE TEXTO - INSERCIÓN + + ** Estando en modo Normal pulse i para insertar texto. ** + + + 1. Mueva el cursor a la primera línea de abajo señalada con --->. + + 2. Para que la primera línea se igual a la segunda mueva el cursor bajo el + primer carácter que sigue al texto que ha de ser insertado. + + 3. Pulse i y escriba los caracteres a añadir. + + 4. A medida que sea corregido cada error pulse <ESC> para volver al modo + Normal. Repita los pasos 2 a 4 para corregir la frase. + +---> Flta texto en esta . +---> Falta algo de texto en esta línea. + + 5. Cuando se sienta cómodo insertando texto pase al resumen que esta más + abajo. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + RESUMEN DE LA LECCIÓN 1 + + + 1. El cursor se mueve utilizamdo las teclas de las flechas o las teclas hjkl. + h (izquierda) j (abajo) k (arriba) l (derecha) + + 2. Para acceder a Vim (desde el símbolo del sistema %) escriba: + vin FILENAME <INTRO> + + 3. Para salir de Vim escriba: <ESC> :q! <INTRO> para eliminar todos + los cambios. + + 4. Para borrar un carácter sobre el cursor en modo Normal pulse: x + + 5. Para insertar texto en la posición del cursor estando en modo Normal: + pulse i escriba el texto pulse <ESC> + +NOTA: Pulsando <ESC> se vuelve al modo Normal o cancela un mandato no deseado + o incompleto. + +Ahora continúe con la Lección 2. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lección 2.1: MANDATOS PARA BORRAR + + + ** Escriba dw para borrar hasta el final de una palabra ** + + + 1. Pulse <ESC> para asegurarse de que está en el modo Normal. + + 2. Mueva el cursor a la línea de abajo señalada con --->. + + 3. Mueva el cursor al comienzo de una palabra que desee borrar. + + 4. Pulse dw para hacer que la palabra desaparezca. + + + NOTA: Las letras dw aparecerán en la última línea de la pantalla cuando + las escriba. Si escribe algo equivocado pulse <ESC> y comience de nuevo. + + +---> Hay algunas palabras pásalo bien que no pertenecen papel a esta frase. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lección 2.2: MÁS MANDATOS PARA BORRAR + + + ** Escriba d$ para borrar hasta el final de la línea. ** + + + 1. Pulse <ESC> para asegurarse de que está en el modo Normal. + + 2. Mueva el cursor a la línea de abajo señalada con --->. + + 3. Mueva el cursor al final de la línea correcta (DESPUÉS del primer . ). + + 4. Escriba d$ para borrar hasta el final de la línea. + +---> Alguien ha escrito el final de esta línea dos veces. esta línea dos veces. + + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lección 2.3: SOBRE MANDATOS Y OBJETOS + + + El formato del mandato de borrar d es como sigue: + + [número] d objeto O d [número] objeto + donde: + número - es cuántas veces se ha de ejecutar el mandato (opcional, defecto=1). + d - es el mandato para borrar. + objeto - es sobre lo que el mandato va a operar (lista, abajo). + + Una lista corta de objetos: + w - desde el cursor hasta el final de la palabra, incluyendo el espacio. + e - desde el cursor hasta el final de la palabra, SIN incluir el espacio. + $ - desde el cursor hasta el final de la línea. + +NOTE: Para los aventureros, pulsando sólo el objeto estando en modo Normal + sin un mandato moverá el cursor como se especifica en la lista de objetos. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lección 2.4: UNA EXCEPCIÓN AL 'MANDATO-OBJETO' + + ** Escriba dd para borrar una línea entera. ** + + Debido a la frecuencia con que se borran líneas enteras, los diseñadores + de Vim decidieron que sería más fácil el escribir simplemente dos des en + una fila para borrar una línea. + + 1. Mueva el cursor a la segunda línea de la lista de abajo. + 2. Escriba dd para borrar la línea. + 3. Muévase ahora a la cuarta línea. + 4. Escriba 2dd (recuerde número-mandato-objeto) para borrar las dos + líneas. + + 1) Las rosas son rojas, + 2) El barro es divertido, + 3) El cielo es azul, + 4) Yo tengo un coche, + 5) Los relojes marcan la hora, + 6) El azucar es dulce, + 7) Y así eres tu. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lección 2.5: EL MANDATO DESHACER + + + ** Pulse u para deshacer los últimos mandatos, + U para deshacer una línea entera. ** + + 1. Mueva el cursor a la línea de abajo señalada con ---> y sitúelo bajo el + primer error. + 2. Pulse x para borrar el primer caráter erróneo. + 3. Pulse ahora u para deshacer el último mandato ejecutado. + 4. Ahora corrija todos los errores de la línea usando el mandato x. + 5. Pulse ahora U mayúscula para devolver la línea a su estado original. + 6. Pulse ahora u unas pocas veces para deshacer lo hecho por U y los + mandatos previos. + 7. Ahora pulse CTRL-R (mantenga pulsada la tecla CTRL y pulse R) unas + pocas veces para volver a ejecutar los mandatos (deshacer lo deshecho). + +---> Corrrija los errores dee esttta línea y vuuelva a ponerlos coon deshacer. + + 8. Estos mandatos son muy útiles. Ahora pase al resumen de la Lección 2. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + RESUMEN DE LA LECCIÓN 2 + + 1. Para borrar desde el cursor hasta el final de una palabra pulse: dw + + 2. Para borrar desde el cursor hasta el final de una línea pulse: d$ + + 3. Para borrar una línea enter pulse: dd + + 4. El formato de un mandato en modo Normal es: + + [número] mandato objeto O mandato [número] objeto + donde: + número - es cuántas veces se ha de ejecutar el mandato + mandato - es lo que hay que hacer, por ejemplo, d para borrar + objeto - es sobre lo que el mandato va a operar, por ejemplo + w (palabra), $ (hasta el final de la línea), etc. + + 5. Para deshacer acciones previas pulse: u (u minúscula) + Para deshacer todos los cambios de una línea pulse: U (U mayúscula) + Para deshacer lo deshecho pulse: CTRL-R + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lección 3.1: EL MANDATO «PUT» (poner) + + ** Pulse p para poner lo último que ha borrado después del cursor. ** + + 1. Mueva el cursor al final de la lista de abajo. + + 2. Escriba dd para borrar la línea y almacenarla en el buffer de Vim. + + 3. Mueva el cursor a la línea que debe quedar por debajo de la + línea a mover. + + 4. Estando en mod Normal, pulse p para restituir la línea borrada. + + 5. Repita los pasos 2 a 4 para poner todas las líneas en el orden correcto. + + d) ¿Puedes aprenderla tu? + b) Las violetas son azules, + c) La inteligencia se aprende, + a) Las rosas son rojas, + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lección 3.2: EL MANDATO «REPLACE» (remplazar) + + + ** Pulse r y un carácter para sustituir el carácter sobre el cursor. ** + + + 1. Mueva el cursor a la primera línea de abajo señalada con --->. + + 2. Mueva el cursor para situarlo bajo el primer error. + + 3. Pulse r y el carácter que debe sustituir al erróneo. + + 4. Repita los pasos 2 y 3 hasta que la primera línea esté corregida. + +---> ¡Cuendo esta línea fue rscrita alguien pulso algunas teclas equibocadas! +---> ¡Cuando esta línea fue escrita alguien pulsó algunas teclas equivocadas! + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lección 3.3: EL MANDATO «CHANGE» (cambiar) + + + ** Para cambiar parte de una palabra o toda ella escriba cw . ** + + + 1. Mueva el cursor a la primera línea de abajo señalada con --->. + + 2. Sitúe el cursor en la u de lubrs. + + 3. Escriba cw y corrija la palabra (en este caso, escriba 'ínea'). + + 4. Pulse <ESC> y mueva el cursor al error siguiente (el primer carácter + que deba cambiarse). + + 5. Repita los pasos 3 y 4 hasta que la primera frase sea igual a la segunda. + +---> Esta lubrs tiene unas pocas pskavtad que corregir usem el mandato change. +---> Esta línea tiene unas pocas palabras que corregir usando el mandato change. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lección 3.4: MÁS CAMBIOS USANDO c + + ** El mandato change se utiliza con los mismos objetos que delete. ** + + 1. El mandato change funciona de la misma forma que delete. El formato es: + + [número] c objeto O c [número] objeto + + 2. Los objetos son tambiém los mismos, tales como w (palabra), $ (fin de + la línea), etc. + + 3. Mueva el cursor a la primera línea de abajo señalada con --->. + + 4. Mueva el cursor al primer error. + + 5. Escriba c$ para hacer que el resto de la línea sea como la segunda + y pulse <ESC>. + +---> El final de esta línea necesita alguna ayuda para que sea como la segunda. +---> El final de esta línea necesita ser corregido usando el mandato c$. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + RESUMEN DE LA LECCIÓN 3 + + + 1. Para sustituir texto que ha sido borrado, pulse p . Esto Pone el texto + borrado DESPUÉS del cursor (si lo que se ha borrado es una línea se + situará sobre la línea que está sobre el cursor). + + 2. Para sustituir el carácter bajo el cursor, pulse r y luego el + carácter que sustituirá al original. + + 3. El mandato change le permite cambiar el objeto especificado desde la + posición del cursor hasta el final del objeto; e.g. Pulse cw para + cambiar desde el cursor hasta el final de la palabra, c$ para cambiar + hasta el final de la línea. + + 4. El formato para change es: + + [número] c objeto O c [número] objeto + + Pase ahora a la lección siguiente. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lección 4.1: SITUACIÓN EN EL FICHERO Y SU ESTADO + + + ** Pulse CTRL-g para mostrar su situación en el fichero y su estado. + Pulse MAYU-G para moverse a una determinada línea del fichero. ** + + Nota: ¡¡Lea esta lección entera antes de ejecutar alguno de los pasos!! + + + 1. Mantenga pulsada la tecla Ctrl y pulse g . Aparece una línea de estado + al final de la pantalla con el nombre del fichero y la línea en la que + está situado. Recuerde el número de la línea para el Paso 3. + + 2. Pulse Mayu-G para ir al final del fichero. + + 3. Escriba el número de la línea en la que estaba y despúes Mayu-G. Esto + le volverá a la línea en la que estaba cuando pulsó Ctrl-g. + (Cuando escriba los números NO se mostrarán en la pantalla). + + 4. Si se siente confiado en poder hacer esto ejecute los pasos 1 a 3. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lección 4.2: EL MANDATO «SEARCH» (buscar) + + ** Escriba / seguido de una frase para buscar la frase. ** + + 1. En modo Normal pulse el carácter / . Fíjese que tanto el carácter / + como el cursor aparecen en la última línea de la pantalla, lo mismo + que el mandato : . + + 2. Escriba ahora errroor <INTRO>. Esta es la palabra que quiere buscar. + + 3. Para repetir la búsqueda, simplemente pulse n . + Para busacar la misma frase en la dirección opuesta, pulse Mayu-N . + + 4. Si quiere buscar una frase en la dirección opuesta (hacia arriba), + utilice el mandato ? en lugar de / . + +---> Cuando la búsqueda alcanza el final del fichero continuará desde el + principio. + + «errroor» no es la forma de deletrear error; errroor es un error. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lección 4.3: BÚSQUEDA PARA COMPROBAR PARÉNTESIS + + ** Pulse % para encontrar el paréntesis correspondiente a ),] o } . ** + + + 1. Sitúe el cursor en cualquiera de los caracteres ), ] o } en la línea de + abajo señalada con --->. + + 2. Pulse ahora el carácter % . + + 3. El cursor debería situarse en el paréntesis (, corchete [ o llave { + correspondiente. + + 4. Pulse % para mover de nuevo el cursor al paréntesis, corchete o llave + correspondiente. + +---> Esto ( es una línea de prueba con (, [, ], {, y } en ella. )). + +Nota: ¡Esto es muy útil en la detección de errores en un programa con + paréntesis, corchetes o llaves disparejos. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lección 4.4: UNA FORMA DE CAMBIAR ERRORES + + + ** Escriba :s/viejo/nuevo/g para sustituir 'viejo' por 'nuevo'. ** + + + 1. Mueva el cursor a la línea de abajo señalada con --->. + + 2. Escriba :s/laas/las/ <INTRO> . Tenga en cuenta que este mandato cambia + sólo la primera aparición en la línea de la expresión a cambiar. + +---> Laas mejores épocas para ver laas flores son laas primaveras. + + 4. Para cambiar todas las apariciones de una expresión ente dos líneas + escriba :#,#s/viejo/nuevo/g donde #,# son los números de las dos + líneas. Escriba :%s/viejo/nuevo/g para hacer los cambios en todo + el fichero. + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + RESUMEN DE LA LECCIÓN 4 + + + 1. Ctrl-g muestra la posición del cursor en el fichero y su estado. + Mayu-G mueve el cursor al final del fichero. Un número de línea + sewguido de Mayu-G mueve el cursor a la línea con ese número. + + 2. Pulsando / seguido de una frase busca la frase hacia ADELANTE. + Pulsando ? seguido de una frase busca la frase hacia ATRÁS. + Después de una búsqueda pulse n para encontrar la aparición + siguiente en la misma dirección. + + 3. Pulsando % cuando el cursor esta sobre (,), [,], { o } localiza + la pareja correspondiente. + + 4. Para cambiar viejo por nuevo en una línea pulse :s/viejo/nuevo + Para cambiar todos los viejo por nuevo en una línea pulse :s/viejo/nuevo/g + Para cambiar frases entre dos números de líneas pulse :#,#s/viejo/nuevo/g + Para cambiar viejo por nuevo en todo el fichero pulse :%s/viejo/nuevo/g + Para pedir confirmación en cada caso añada 'c' :%s/viejo/nuevo/gc + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lección 5.1: CÓMO EJECUTAR UN MANDATO EXTERNO + + + ** Escriba :! seguido de un mandato externo para ejecutar ese mandato. ** + + + 1. Escriba el conocido mandato : para situar el cursor al final de la + pantalla. Esto le permitirá introducir un mandato. + + 2. Ahora escriba el carácter ! (signo de admiración). Esto le permitirá + ejecutar cualquier mandato del sistema. + + 3. Como ejemplo escriba ls después del ! y luego pulse <INTRO>. Esto + le mostrará una lista de su directorio, igual que si estuviera en el + símbolo del sistema. Si ls no funciona utilice !:dir . + +--->Nota: De esta manera es posible ejecutar cualquier mandato externo. + +--->Nota: Todos los mandatos : deben finalizarse pulsando <INTRO>. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lección 5.2: MÁS SOBRE GUARDAR FICHEROS + + + ** Para guardar los cambios hechos en un fichero, + escriba :w NOMBRE_DE_FICHERO. ** + + + 1. Escriba :!dir o :!ls para ver una lista de su directorio. + Ya sabe que debe pulsar <INTRO> después de ello. + + 2. Elija un nombre de fichero que todavía no exista, como TEST. + + 3. Ahora escriba :w TEST (donde TEST es el nombre de fichero elegido). + + 4. Esta acción guarda todo el fichero (Vim Tutor) bajo el nombre TEST. + Para comprobarlo escriba :!dir de nuevo y vea su directorio. + +---> Tenga en cuenta que si sale de Vim y entra de nuevo con el nombre de + fichero TEST, el fichero sería una copia exacta del tutor cuando lo + ha guardado. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lección 5.3: UN MANDATO DE ESCRITURA SELECTIVO + + ** Para guardar parte del fuchero escriba :#,# NOMBRE_DEL_FICHERO ** + + + 1. Escriba de nuevo, una vez más, :!dir o :!ls para obtener una lista + de su directorio y elija nombre de fichero adecuado, como TEST. + + 2. Mueva el cursor al principio de la pantalla y pulse Ctrl-g para saber + el número de la línea correspondiente. ¡RECUERDE ESTE NÚMERO! + + 3. Ahora mueva el cursor a la última línea de la pantalla y pulse Ctrl-g + de nuevo. ¡RECUERDE TAMBIÉN ESTE NÚMERO! + + 4. Para guardar SOLAMENTE una parte de un fichero, escriba :#,# w TEST + donde #,# son los números que usted ha recordado (primera línea, + última línea) y TEST es su nombre de dichero. + + 5. De nuevo, vea que el fichero esta ahí con :!dir pero NO lo borre. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lección 5.4: RECUPERANDO Y MEZCLANDO FICHEROS + + ** Para insertar el contenido de un fichero escriba :r NOMBRE_DEL_FICHERO ** + + 1. Escriba :!dir para asegurarse de que su fichero TEST del ejercicio + anterior está presente. + + 2. Situe el cursor al principio de esta pantalla. + +NOTA: Después de ejecutar el paso 3 se verá la Lección 5.3. Luego muévase + hacia ABAJO para ver esta lección de nuevo. + + 3. Ahora recupere el fichero TEST utilizando el mandato :r TEST donde + TEST es el nombre del fichero. + +NOTA: El fichero recuperado se sitúa a partir de la posición del cursor. + + 4. Para verificar que el fichero ha sido recuperado, mueva el cursor hacia + arriba y vea que hay dos copias de la Lección 5.3, la original y la + versión del fichero. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + RESUMEN DE LA LECCIÓN 5 + + + 1. :!mandato ejecuta un mandato externo. + + Algunos ejemplos útiles son: + :!dir - muestra el contenido de un directorio. + :!del NOMBRE_DE_FICHERO - borra el fichero NOMBRE_DE FICHERO. + + 2. :#,#w NOMBRE_DE _FICHERO guarda desde las líneas # hasta la # en el + fichero NOMBRE_DE_FICHERO. + + 3. :r NOMBRE_DE _FICHERO recupera el fichero del disco NOMBRE_DE FICHERO + y lo inserta en el fichero en curso a partir de la posición del cursor. + + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lección 6.1: EL MANDATO «OPEN» (abrir) + + + ** Pulse o para abrir una línea debajo del cursor + y situarle en modo Insert ** + + + 1. Mueva el cursor a la línea de abajo señalada con --->. + + 2. Pulse o (minúscula) para abrir una línea por DEBAJO del cursor + y situarle en modo Insert. + + 3. Ahora copie la línea señalada con ---> y pulse <ESC> para salir del + modo Insert. + +---> Luego de pulsar o el cursor se sitúa en la línea abierta en modo Insert. + + 4. Para abrir una línea por encima del cursor, simplemente pulse una O + mayúscula, en lugar de una o minúscula. Pruebe este en la línea siguiente. +Abra una línea sobre ésta pulsando Mayu-O cuando el curso está en esta línea. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lección 6.2: EL MANDATO «APPEND» (añadir) + + ** Pulse a para insertar texto DESPUÉS del cursor. ** + + + 1. Mueva el cursor al final de la primera línea de abajo señalada con ---> + pulsando $ en modo Normal. + + 2. Escriba una a (minúscula) para añadir texto DESPUÉS del carácter + que está sobre el cursor. (A mayúscula añade texto al final de la línea). + +Nota: ¡Esto evita el pulsar i , el último carácter, el texto a insertar, + <ESC>, cursor a la derecha y, finalmente, x , sólo para añadir algo + al final de una línea! + + 3. Complete ahora la primera línea. Nótese que append es exactamente lo + mismo que modo Insert, excepto por el lugar donde se inserta el texto. + +---> Esta línea le permitirá praticar +---> Esta línea le permitirá praticar el añadido de texto al final de una línea. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lección 6.3: OTRA VERSIÓN DE «REPLACE» (remplazar) + + ** Pulse una R mayúscula para sustituir más de un carácter. ** + + + 1. Mueva el cursor a la primera línea de abajo señalada con --->. + + 2. Sitúe el cursor al comienzo de la primera palabra que sea diferente + de las de la segunda línea marcada con ---> (la palabra 'anterior'). + + 3. Ahora pulse R y sustituya el resto del texto de la primera línea + escribiendo sobre el viejo texto para que la primera línea sea igual + que la primera. + +---> Para hacer que esta línea sea igual que la anterior use las teclas. +---> Para hacer que esta línea sea igual que la siguiente escriba R y el texto. + + 4. Nótese que cuando pulse <ESC> para salir, el texto no alterado permanece. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lección 6.4: FIJAR OPCIONES + + ** Fijar una opción de forma que una búsqueda o sustitución ignore la caja ** + (Para el concepto de caja de una letra, véase la nota al final del fichero) + + + 1. Busque 'ignorar' introduciendo: + /ignorar + Repita varias veces la búsque pulsando la tecla n + + 2. Fije la opción 'ic' (Ignorar la caja de la letra) escribiendo: + :set ic + + 3. Ahora busque 'ignorar' de nuevo pulsando n + Repita la búsqueda varias veces más pulsando la tecla n + + 4. Fije las opciones 'hlsearch' y 'insearch': + :set hls is + + 5. Ahora introduzca la orden de búsqueda otra vez, y vea qué pasa: + /ignore + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + RESUMEN DE LA LECCIÓN 6 + + + 1. Pulsando o abre una línea por DEBAJO del cursor y sitúa el cursor en + la línea abierta en modo Insert. + Pulsando una O mayúscula se abre una línea SOBRE la que está el cursor. + + 2. Pulse una a para insertar texto DESPUÉS del carácter sobre el cursor. + Pulsando una A mayúscula añade automáticamente texto al final de la + línea. + + 3. Pulsando una R mayúscula se entra en modo Replace hasta que, para salir, + se pulse <ESC>. + + 4. Escribiendo «:set xxx» fija la opción «xxx» + + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lección 7: MANDATOS PARA LA AYUDA EN LÍNEA + + ** Utilice el sistema de ayuda en línea ** + + + Vim dispone de un sistema de ayuda en línea. Para activarlo, pruebe una + de estas tres formas: + - pulse la tecla <AYUDA> (si dispone de ella) + - pulse la tecla <F1> (si dispone de ella) + - escriba :help <INTRO> + + Escriba :q <INTRO> para cerrar la ventana de ayuda. + + Puede encontrar ayuda en casi cualquier tema añadiendo un argumento al + mandato «:help» mandato. Pruebe éstos: + + :help w <INTRO> + :help c_<T <INTRO> + :help insert-index <INTRO> + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + Aquí concluye el tutor de Vim. Está pensado para dar una visión breve del + editor Vim, lo suficiente para permitirle usar el editor de forma bastante + sencilla. Está muy lejos de estar completo pues Vim tiene muchísimos más + mandatos. + + Para lecturas y estudios posteriores se recomienda el libro: + Learning the Vi Editor - por Linda Lamb + Editorial: O'Reilly & Associates Inc. + Es un buen libro para llegar a saber casi todo lo que desee hacer con Vi. + La sexta edición incluye también información sobre Vim. + + Este tutorial ha sido escrito por Michael C. Pierce y Robert K. Ware, + Colorado School of Mines utilizando ideas suministradas por Charles Smith, + Colorado State University. + E-mail: bware@mines.colorado.edu. + + Modificado para Vim por Bram Moolenaar. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + Traducido del inglés por: + + Eduardo F. Amatria + Correo electrónico: eferna1@platea.pntic.mec.es + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/tutor/tutor.fr.utf-8 Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,809 @@ +=============================================================================== += B i e n v e n u e dans le T u t o r i e l de V I M - Version 1.5.fr.2 = +=============================================================================== + + Vim est un éditeur très puissant qui a trop de commandes pour pouvoir + toutes les expliquer dans un cours comme celui-ci, qui est conçu pour en + décrire suffisamment afin de vous permettre d'utiliser simplement Vim. + + Le temps requis pour suivre ce cours est d'environ 25 à 30 minutes, selon + le temps que vous passerez à expérimenter. Les commandes utilisées dans + les leçons modifieront le texte. Faites une copie de ce fichier afin de + vous entraîner dessus (si vous avez lancé "vimtutor" ceci est déjà une + copie). + + Il est important de garder en tête que ce cours est conçu pour apprendre + par la pratique. Cela signifie que vous devez exécuter les commandes + pour les apprendre correctement. Si vous vous contentez de lire le + texte, vous oublierez les commandes ! + + Maintenant, vérifiez que votre clavier n'est PAS verouillé en majuscules, + et appuyez la touche j le nombre de fois suffisant pour que la leçon + 1.1 remplisse complètement l'écran. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leçon 1.1 : DÉPLACEMENT DU CURSEUR + + + ** Pour déplacer le curseur, appuyez les touches h,j,k,l comme indiqué. ** + ^ + k Astuce: La touche h est à gauche et déplace à gauche. + < h l > La touche l est à droite et déplace à droite. + j La touche j ressemble à une flèche vers le bas. + v + 1. Déplacez le curseur sur l'écran jusqu'à vous sentir à l'aise. + + 2. Maintenez la touche Bas (j) enfoncée jusqu'à ce qu'elle se répète. +---> Maintenant vous êtes capable de vous déplacer jusqu'à la leçon suivante. + + 3. En utilisant la touche Bas, allez à la Leçon 1.2. + +Note: Si jamais vous doutez de ce que vous venez de taper, appuyez <Échap> + pour revenir en mode Normal. Puis retapez la commande que vous vouliez. + +Note: Les touches fléchées devraient également fonctionner. Mais en utilisant + hjkl vous pourrez vous déplacer beaucoup plus rapidement, une fois que + vous aurez pris l'habitude. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leçon 1.2 : ENTRÉE ET SORTIE DE VIM + + + !! NOTE: Avant d'effectuer les étapes ci-dessous, lisez toute cette leçon !! + + 1. Appuyez la touche <Échap> (pour être sûr d'être en mode Normal). + + 2. Tapez: :q! <Entrée> + +---> Ceci quitte l'éditeur SANS sauver les changements que vous avez faits. + Si vous voulez enregistrer les changements et sortir, tapez: + :wq <Entrée> + + 3. Lorsque l'invite du 'shell' vous sera présentée, tapez la commande qui + vous a amené dans ce tutoriel. Cela pourrait être: vimtutor <Entrée> + Normalement, vous utiliseriez: vim tutor <Entrée> + +---> 'vim' lance l'éditeur, 'tutor' est le fichier que vous souhaitez éditer. + + 4. Si vous avez mémorisé ces étapes et êtes confiant, effectuez les étapes + 1 à 3 pour sortir puis rentrer dans l'éditeur. Déplacez ensuite le + curseur jusqu'à la Leçon 1.3. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leçon 1.3 : ÉDITION DE TEXTE - EFFACEMENT + + + ** En mode Normal, appuyez x pour effacer le caractère sous le curseur. ** + + 1. Déplacez le curseur sur la ligne marquée ---> ci-dessous. + + 2. Pour corriger les erreurs, déplacez le curseur jusqu'à ce qu'il soit + sur un caractère à effacer. + + 3. Appuyez la touche x pour effacer le caractère redondant. + + 4. Répétez les étapes 2 à 4 jusqu'à ce que la phrase soit correcte. + +---> La vvache à sautéé au-ddessus dde la luune. + + 5. Maintenant que la ligne est correcte, passez à la leçon 1.4. + +NOTE: En avançant dans ce cours, n'essayez pas de mémoriser, apprenez par + la pratique. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leçon 1.4 : ÉDITION DE TEXTE - INSERTION + + + ** En mode Normal, appuyez i pour insérer du texte. ** + + 1. Déplacez le curseur sur la première ligne marquée ---> ci-dessous. + + 2. Pour rendre la première ligne identique à la seconde, mettez le curseur + sur le premier caractère APRÈS l'endroit où insérer le texte. + + 3. Appuyez i et tapez les caractères qui manquent. + + 4. Une fois qu'une erreur est corrigée, appuyez <Échap> pour revenir en mode + Normal. Répétez les étapes 2 à 4 pour corriger la phrase. + +---> Il mnqe caractères cette . +---> Il manque des caractères dans cette ligne. + + 5. Une fois que vous êtes à l'aise avec l'insertion de texte, allez au + résumé ci-dessous. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + RÉSUMÉ DE LA LEÇON 1 + + 1. Le curseur se déplace avec les touches fléchées ou les touches hjkl. + h (gauche) j (bas) k (haut) l (droite) + + 2. Pour entrer dans Vim (à l'invite %) tapez: vim FICHIER <Entrée> + + 3. Pour quitter Vim tapez: <Échap> :q! <Entrée> pour perdre tous les + changements. + OU tapez: <Échap> :wq <Entrée> pour enregistrer les + changements. + + 4. Pour effacer un caractère sous le curseur en mode Normal tapez: x + + 5. Pour insérer du texte au niveau du curseur en mode Normal tapez: + i tapez le texte <Échap> + +NOTE: Appuyer <Échap> vous place en mode Normal ou annule une commande + partiellement tapée dont vous ne voudriez plus. + +Passez maintenant à la Leçon 2. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leçon 2.1 : EFFACEMENTS + + + ** Tapez dw pour effacer jusqu'à la fin d'un mot. ** + + 1. Appuyez <Échap> pour être sûr d'être en mode Normal. + + 2. Déplacez le curseur sur la ligne marquée ---> ci-dessous. + + 3. Placez le curseur sur le début d'un mot qui a besoin d'être effacé. + + 4. Tapez dw pour faire disparaître ce mot. + +NOTE: Les lettres dw apparaîtront sur la dernière ligne de l'écran lors de + votre frappe. Si vous avez mal tapé quelque chose, appuyez <Échap> et + recommencez. + +---> Il y a quelques drôle mots qui n'ont rien à faire papier sur cette ligne. + + 5. Répétez les étapes 3 et 4 jusqu'à ce que la phrase soit correcte et allez + à la Leçon 2.2. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leçon 2.2 : PLUS D'EFFACEMENTS + + + ** Tapez d$ pour effacer jusqu'à la fin de la ligne. ** + + 1. Appuyez <Échap> pour être sûr d'être en mode Normal. + + 2. Déplacez le curseur sur la ligne marquée ---> ci-dessous. + + 3. Déplacez le curseur jusqu'à la fin correcte de la ligne + (APRÈS le premier . ). + + 4. Tapez d$ pour effacer jusqu'à la fin de la ligne. + +---> Quelqu'un a tapé la fin de cette ligne deux fois. cette ligne deux fois. + + 5. Allez à la Leçon 2.3 pour comprendre ce qui se passe. + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leçon 2.3 : DES COMMANDES ET DES OBJETS + + + Le format de la commande d'effacement d est le suivant: + + [nombre] d objet OU d [nombre] objet + où: + nombre - est combien de fois exécuter la commande (optionnel, défaut: 1). + d - est la commande d'effacement. + objet - est ce sur quoi la commande va opérer (liste ci-dessous). + + Une courte liste d'objets: + w - du curseur jusqu'à la fin du mot, y compris l'espace qui suit. + e - du curseur jusqu'à la fin du mot, SANS l'espace qui suit. + $ - du curseur jusqu'à la fin de la ligne. + +NOTE: Pour les aventureux, le seul appui d' objet en mode Normal, sans + commande, déplace le curseur comme indiqué dans la liste des objets. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leçon 2.4 : UNE EXCEPTION À 'COMMANDE-OBJET' + + ** Tapez dd pour effacer une ligne complète. ** + + Vu le nombre de fois où l'on efface des lignes complètes, les concepteurs + de Vi ont décidé qu'il serait plus facile de taper simplement deux d à la + suite pour effacer une ligne. + + 1. Placez le curseur sur la seconde ligne de la phrase ci-dessous. + 2. Tapez dd pour effacer la ligne. + 3. Maintenant allez à la quatrième ligne. + 4. Tapez 2dd (rappelez-vous, nombre-commande-objet) pour effacer les + deux lignes. + + 1) Les roses sont rouges, + 2) La boue c'est drôle, + 3) Les violettes sont bleues, + 4) J'ai une voiture, + 5) Les horloges donnent l'heure, + 6) Le sucre est doux + 7) Tout comme vous. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leçon 2.5 : L'ANNULATION + + ** Tapez u pour annuler les dernières commandes. ** + ** Tapez U pour récupérer toute une ligne. ** + + 1. Déplacez le curseur sur la ligne marquée ---> ci-dessous et placez-le sur + la première erreur. + 2. Tapez x pour effacer le premier caractère redondant. + 3. Puis tapez u pour annuler la dernière commande exécutée. + 4. Cette fois, corrigez toutes les erreurs de la ligne avec la commande x . + 5. Puis tapez un U majuscule pour remettre la ligne dans son état initial. + 6. Puis tapez u deux-trois fois pour annuler le U et les commandes + précédentes. + 7. Maintenant tapez Ctrl-R (maintenez la touche Ctrl enfoncée pendant que + vous appuyez sur R) deux-trois fois pour refaire les commandes (annuler + les annulations). + +---> Coorrigez les erreurs suur ccette ligne et reemettez-les avvec 'annuler'. + + 8. Ce sont des commandes très utiles. Maintenant, allez au résumé de la + Leçon 2. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + RÉSUMÉ DE LA LEÇON 2 + + + 1. Pour effacer du curseur jusqu'à la fin d'un mot tapez: dw + + 2. Pour effacer du curseur jusqu'à la fin d'une ligne tapez: d$ + + 3. Pour effacer toute une ligne tapez: dd + + 4. Le format d'une commande en mode Normal est: + + [nombre] commande objet OU commande [nombre] objet + où: + nombre - est combien de fois répéter la commande + commande - est ce qu'il faut faire, par exemple d pour effacer + objet - est ce sur quoi la commande devrait agir, par exemple w (mot), + $ (jusqu'à la fin de la ligne), etc. + + 5. Pour annuler des actions précédentes, tapez: u (u minuscule) + Pour annuler tous les changements sur une ligne tapez: U (U majuscule) + Pour annuler l'annulation tapez: Ctrl-R + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leçon 3.1 : LE COLLAGE + + + ** Tapez p pour placer après le curseur ce qui vient d'être effacé. ** + + 1. Placez le curseur sur la première ligne du "poème" ci-dessous. + + 2. Tapez dd pour effacer la ligne et la placer dans le tampon de Vim. + + 3. Déplacez le curseur sur la ligne qui PRÉCÈDE l'endroit où vous voulez + remettre la ligne effacée. + + 4. En mode Normal, tapez p pour remettre la ligne. + + 5. Répétez les étapes 2 à 4 pour mettre toutes les lignes dans le bon ordre. + + d) Et vous, qu'apprenez-vous ? + b) Les violettes sont bleues, + c) L'intelligence s'apprend, + a) Les roses sont rouges, + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leçon 3.2 : LE REMPLACEMENT + + + ** Tapez r et un caractère pour remplacer le caractère sous le curseur. ** + + 1. Déplacez le curseur sur la première ligne marquée ---> ci-dessous. + + 2. Placez le curseur de manière à ce qu'il surplombe la première erreur. + + 3. Tapez r suivi du caractère qui doit corriger l'erreur. + + 4. Répétez les étapes 2 et 3 jusqu'à ce que la première ligne soit correcte. + +---> Quand cette ligne a été sauvie, quelqu'un a lait des faunes de frappe ! +---> Quand cette ligne a été saisie, quelqu'un a fait des fautes de frappe ! + + 5. Maintenant, allez à la Leçon 3.3. + +NOTE: N'oubliez pas que vous devriez apprendre par la pratique, pas par + mémorisation. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leçon 3.3 : LE CHANGEMENT + + + ** Pour changer tout ou partie d'un mot, tapez cw .** + + 1. Déplacez le curseur sur la première ligne marquée ---> ci-dessous. + + 2. Placez le curseur sur le u de luhko. + + 3. Tapez cw et corrigez le mot (dans notre cas, tapez 'igne'.) + + 4. Appuyez <Échap> et placez-vous sur l'erreur suivante (le premier + caractère qui doit être changé). + + 5. Répétez les étapes 3 et 4 jusqu'à ce que la première phrase soit + identique à la seconde. + +---> Cette luhko contient quelques myqa qui ont ricne d'être chantufip. +---> Cette ligne contient quelques mots qui ont besoin d'être changés. + +Notez que cw efface le mot et vous place ensuite en mode Insertion. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leçon 3.4 : PLUS DE CHANGEMENTS AVEC c + + + ** Le changement fonctionne avec les mêmes objets que l'effacement. ** + + 1. Le changement fonctionne de la même manière que l'effacement. + Le format est: + + [nombre] c objet OU c [nombre] objet + + 2. Les objets sont également les mêmes: w (mot), $ (fin de ligne), etc. + + 3. Déplacez-vous à la première ligne marquée ---> ci-dessous. + + 4. Placez le curseur sur la première erreur. + + 5. Tapez c$ pour changer la fin de la ligne, rendez-là identique à la + seconde ligne, puis tapez <Échap>. + +---> La fin de cette ligne doit être rendue identique à la seconde. +---> La fin de cette ligne doit être corrigée avec la commande c$ . + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + RÉSUMÉ DE LA LEÇON 3 + + + 1. Pour remettre du texte qui vient d'être effacé, tapez p . Cela Place le + texte effacé APRÈS le curseur (si une ligne complète a été effacée, elle + sera placée sous la ligne du curseur). + + 2. Pour remplacer le caractère sous le curseur, tapez r suivi du caractère + qui remplacera l'original. + + 3. Le changement vous permet de changer l'objet spécifié, du curseur jusqu'à + la fin de l'objet. Par exemple, tapez cw pour changer du curseur + jusqu'à la fin du mot, c$ pour changer jusqu'à la fin d'une ligne. + + 4. Le format pour le changement est: + + [nombre] c objet OU c [nombre] objet + +Passez maintenant à la leçon suivante. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leçon 4.1 : POSITION ET ÉTAT DU FICHIER + + + ** Tapez Ctrl-G pour afficher votre position dans le fichier et son état. + Utilisez Maj-G pour vous rendre à une ligne donnée du fichier. ** + + Note: Lisez toute cette leçon avant d'effectuer l'une des étapes ! + + 1. Maintenez enfoncée la touche Ctrl et appuyez sur G . Une ligne d'état + va apparaître en bas de l'écran avec le nom du fichier et le numéro de la + ligne où vous êtes. Notez ce numéro, il servira lors de l'étape 3. + + 2. Tapez G majuscule (Maj-G) pour vous rendre à la fin du fichier. + + 3. Tapez le numéro de la ligne où vous étiez suivi de Maj-G. Cela vous + ramènera à la ligne où vous étiez au départ. + (Lorsque vous tapez les chiffres, ils n'apparaissent PAS à l'écran). + + 4. Si vous vous sentez prêt à faire ceci, effectuez les étapes 1 à 3. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leçon 4.2 : LA RECHERCHE + + + ** Tapez / suivi d'un texte pour rechercher ce texte. ** + + 1. Tapez le caractère / en mode Normal. Notez que celui-ci et le curseur + apparaissent en bas de l'écran, comme lorsque l'on utilise : . + + 2. Puis tapez 'errreuur' <Entrée>. C'est le mot que vous voulez rechercher. + + 3. Pour rechercher à nouveau le même texte, tapez simplement n . + Pour rechercher le même texte dans la direction opposée, tapez Maj-N . + + 4. Si vous voulez rechercher un texte vers le haut du fichier, utilisez ? + à la place de / . + +---> erreur ne s'écrit pas "errreuur"; errreuur est une erreur. + +Note: Quand la recherche atteint la fin du fichier, elle reprend au début. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leçon 4.3 : RECHERCHE DES PARENTHÈSES CORRESPONDANTES + + + ** Tapez % pour trouver des ), ] ou } correspondants. ** + + 1. Placez le curseur sur l'un des (, [ ou { de la ligne marquée ---> + ci-dessous. + + 2. Puis tapez le caractère % . + + 3. Le curseur devrait se placer sur la parenthèse correspondante. + + 4. Tapez % pour replacer le curseur sur l'autre parenthèse. + +---> Voici ( une ligne de test contenant des (, des [ ] et des { } )). + +Note: Cette fonctionnalité est très utile lors du débogage d'un programme qui + contient des parenthèses déséquilibrées ! + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leçon 4.4 : UNE MANIÈRE DE CORRIGER LES ERREURS + + + ** Tapez :s/ancien/nouveau/g pour remplacer 'ancien' par 'nouveau'. ** + + 1. Déplacez le curseur sur la ligne marquée ---> ci-dessous. + + 2. Tapez :s/lee/le <Entrée> . Notez que cette commande change seulement la + première occurence sur la ligne. + + 3. Puis tapez :s/lee/le/g qui ordonne de faire une substitution globale + sur la ligne. Cela change toutes les occurences sur la ligne + +---> lee meilleur moment pour regarder lees fleurs est pendant lee Printemps. + + 4. Pour changer toutes les occurences d'un texte, entre deux lignes, + tapez :#,#s/ancien/nouveau/g où #,# sont les numéros des deux lignes. + Tapez :%s/ancien/nouveau/g pour changer chaque occurence dans tout + le fichier. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + RÉSUMÉ DE LA LEÇON 4 + + + 1. Ctrl-G affiche votre position dans le fichier et l'état de celui-ci. + Maj-G vous place à la fin du fichier. Un numéro de ligne suivi de Maj-G + vous place à cette ligne. + + 2. Taper / suivi d'un texte recherche ce texte vers l'AVANT. + Taper ? suivi d'un texte recherche ce texte vers l'ARRIÈRE. + Après une recherche tapez n pour trouver l'occurence suivante dans la + même direction ou Maj-N pour rechercher dans la direction opposée. + + 3. Taper % lorsque le curseur est sur (, ), [, ], { ou } déplace + celui-ci sur le caractère correspondant. + + 4. Pour remplacer le premier aa par bb sur une ligne tapez :s/aa/bb + Pour remplacer tous les aa par bb sur une ligne tapez :s/aa/bb/g + Pour remplacer du texte entre deux numéros de ligne tapez :#,#s/aa/bb/g + Pour remplacer toutes les occurences dans le fichier tapez :%s/aa/bb/g + Pour demander une confirmation à chaque fois ajoutez 'c' :%s/aa/bb/gc + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leçon 5.1 : COMMENT EXÉCUTER UNE COMMANDE EXTERNE + + + ** Tapez :! suivi d'une commande externe pour exécuter cette commande. ** + + 1. Tapez le : familier pour mettre le curseur en bas de l'écran. Cela vous + permet de saisir une commande. + + 2. Puis tapez un ! (point d'exclamation). Cela vous permet d'exécuter + n'importe quelle commande valide pour votre interpréteur (shell). + + 3. Par exemple, tapez ls après le ! et appuyez <Entrée>. Ceci affichera + la liste des fichiers du dossier courant, comme si vous aviez tapé la + commande à l'invite du shell. Utilisez :!dir si :!ls ne marche pas. + +Note: Il est possible d'exécuter n'importe quelle commande externe de cette + manière. + +Note: Toutes les commandes : doivent finir par la frappe de <Entrée>. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leçon 5.2 : PLUS DE DÉTAILS SUR L'ENREGISTREMENT DE FICHIERS + + + ** Pour enregistrer les changements faits au fichier, tapez :w FICHIER . ** + + 1. Tapez :!dir ou :!ls pour avoir la liste des fichiers du dossier + courant. Vous savez déjà qu'il faut appuyer <Entrée> après cela. + + 2. Choisissez un nom de fichier qui n'existe pas encore, par exemple TEST. + + 3. Puis tapez :w TEST (où TEST est le nom que vous avez choisi). + + 4. Cela sauvegarde tout le fichier (Tutoriel Vim) sous le nom TEST. + Pour le vérifier, tapez :!dir pour revisualiser le contenu du dossier. + +Notez que si vous quittez Vim et y retournez avec le fichier TEST, celui-ci +sera une copie exacte du cours au moment où vous l'avez sauvé. + + 5. Maintenant, effacez le fichier en tapant (MS-DOS): :!del TEST + ou (Unix): :!rm TEST + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leçon 5.3 : UN ENREGISTREMENT SÉLECTIF + + + ** Pour enregistrer une portion de fichier, tapez :#,#w FICHIER ** + + 1. Tapez à nouveau :!dir ou :!ls pour visualiser le contenu du dossier + courant et choisissez un nom de fichier, tel que TEST. + + 2. Déplacez le curseur jusqu'en haut de cette page et tapez Ctrl-G pour + connaître le numéro de cette ligne. NOTEZ CE NUMÉRO ! + + 3. Puis rendez-vous au bas de cette page et tapez à nouveau Ctrl-G . + NOTEZ ÉGALEMENT CE NUMÉRO ! + + 4. Pour enregistrer SEULEMENT une portion d'un fichier, tapez :#,#w TEST + où #,# sont les deux numéros que vous avez notés (haut,bas) et TEST est + le nom du fichier. + + 5. Une fois encore, vérifiez la présence du fichier avec :!dir mais NE + L'EFFACEZ PAS. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leçon 5.4 : RÉCUPÉRATION ET FUSION DE FICHIERS + + + ** Pour insérer le contenu d'un fichier, tapez :r FICHIER ** + + 1. Tapez :!dir pour vérifier que votre fichier TEST est encore là. + + 2. Placez le curseur en haut de cette page. + +NOTE: Après avoir suivi l'étape 3 vous verrez à l'écran la Leçon 5.3. + Déplacez-vous vers le bas jusqu'à revenir à cette leçon. + + 3. Maintenant récupérez votre fichier TEST en utilisant la commande :r TEST + où TEST est le nom de votre fichier. + +NOTE: Le fichier que vous récupérez est placé là où se trouve le curseur. + + 4. Pour vérifier que le fichier a bien été inséré, remontez et vérifiez + qu'il y a maintenant deux copies de la Leçon 5.3, l'originale et celle + contenue dans le fichier. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + RÉSUMÉ DE LA LEÇON 5 + + + 1. :!commande exécute une commande externe. + + Quelques exemples pratiques: + (MS-DOS) (Unix) + :!dir :!ls affiche le contenu du dossier courant. + :!del FICHIER :!rm FICHIER efface FICHIER. + + 2. :w FICHIER enregistre le fichier Vim courant sur le disque avec pour + nom FICHIER. + + 3. :#,#w FICHIER enregistre les lignes # à # dans le fichier FICHIER. + + 4. :r FICHIER récupère le fichier FICHIER et l'insère dans le fichier + courant à partir de la position du curseur. + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leçon 6.1 : L'OUVERTURE + + +** Tapez o pour ouvrir une ligne sous le curseur et y aller en Insertion. ** + + 1. Déplacez le curseur sur la ligne marquée ---> ci-dessous. + + 2. Tapez o (minuscule) pour ouvrir une ligne SOUS le curseur et vous y + placer en mode Insertion. + + 3. Puis recopiez la ligne marquée ---> et appuyez sur <Échap> pour quitter + le mode Insertion. + +---> En tapant o le curseur se met sur la ligne ouverte, en mode Insertion. + + 4. Pour ouvrir une ligne au DESSUS du curseur, tapez simplement un O + majuscule, plutôt qu'un o minuscule. Faites un essai sur la ligne + ci-dessous. +Ouvrez une ligne ci-dessus en tapant MAJ-O lorsque le curseur est ici. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leçon 6.2 : L'AJOUT + + + ** Tapez a pour insérer du texte APRÈS le curseur. ** + + 1. Placez le curseur à la fin de la première ligne marquée ---> ci-dessous + en tapant $ en mode Normal. + + 2. Tapez un a (minuscule) pour ajouter du texte APRÈS le caractère situé + sous le curseur. ( A majuscule ajoute du texte à la fin de la ligne). + +Note: Ceci évite de taper i , le dernier caractère, le texte à insérer, + <Échap>, curseur-à-droite, et finalement x , juste pour ajouter du + texte à la fin d'une ligne ! + + 3. Maintenant, complétez la première ligne. Notez également que l'ajout est + identique au mode Insertion, hormis la position où le texte est inséré. + +---> Cette ligne vous permet de pratiquer +---> Cette ligne vous permet de pratiquer l'ajout de texte en fin de ligne. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leçon 6.3 : UNE AUTRE VERSION DU REMPLACEMENT + + + ** Tapez un R majuscule pour remplacer plus d'un caractère. ** + + 1. Déplacez le curseur sur la première ligne marquée ---> ci-dessous. + + 2. Placez le curseur au début du premier mot qui diffère de la seconde ligne + marquée ---> (le mot 'celle'). + + 3. Puis tapez R et remplacez le reste du texte de la première ligne en + tapant par dessus celui-ci, de manière à rendre la première ligne + identique à la seconde. + +---> Pour rendre cette ligne identique à celle du dessous utilisez le clavier. +---> Pour rendre cette ligne identique à la seconde, tapez R et la correction. + + 4. Notez que lorsque vous appuyez <Échap>, le texte qui n'a pas encore été + remplacé reste. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leçon 6.4 : RÉGLAGE DES OPTIONS + + + ** Réglons une option afin que la recherche et la substitution ignorent la + casse des caractères. ** + + 1. Recherchez 'ignore' en tapant /ignore . + Répétez ceci plusieurs fois en utilisant la touche n . + + 2. Activez l'option 'ic' (Ignorer casse) en tapant :set ic . + + 3. Puis poursuivez votre recherche en utilisant n . + Répétez cette recherche plusieurs fois avec la touche n . + + 4. Activez les options 'hlsearch' et 'incsearch' avec :set hls is . + + 5. Puis recommencez une recherche, et faites bien attention à ce qui se + produit: /ignore . + + 6. Pour interrompre la mise en surbrillance des résultats, tapez: + :nohlsearch + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + RÉSUMÉ DE LA LEÇON 6 + + + 1. Taper o ouvre une ligne SOUS le curseur et y place celui-ci en mode + Insertion. Taper un O majuscule ouvre une ligne au DESSUS de la ligne + où se trouve le curseur. + + 2. Tapez un a pour insérer du texte APRÈS le caractère où se trouve le + curseur. Taper un A majuscule ajoute du texte automatiquement à la fin + de la ligne. + + 3. Taper un R majuscule active le mode Remplacement jusqu'à ce que la + touche <Échap> soit appuyée pour en sortir. + + 4. Taper :set xxx active l'option 'xxx'. + + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leçon 7 : ACCÉDER À L'AIDE EN LIGNE + + ** Utiliser le système d'aide en ligne. ** + + Vim a un système complet d'aide en ligne. Pour y accéder, essayez l'une de + ces trois méthodes: + - appuyez la touche <Help> (si vous en avez une) + - appuyez la touche <F1> (si vous en avez une) + - tapez :help <Entrée> + + Tapez :q <Entrée> pour fermer la fenêtre d'aide. + + Vous pouvez accéder à l'aide sur à peu près n'importe quel sujet en donnant + des arguments à la commande :help . Essayez par exemple (n'oubliez pas + d'appuyer sur <Entrée>): + + :help w + :help c_<T + :help insert-index + :help user-manual + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Leçon 8 : CRÉER UN SCRIPT DE DÉMARRAGE + + ** Activer les fonctionnalités de Vim. ** + + Vim a beaucoup plus de fonctionnalités que Vi, mais la plupart de celles-ci + sont désactivées par défaut. Pour commencer à les utiliser, vous devez + créer un fichier "vimrc". + + 1. Commencez à éditer le fichier "vimrc". Ceci dépend de votre système: + :edit ~/.vimrc pour Unix + :edit $VIM/_vimrc pour MS-Windows + + 2. Intégrez maintenant le texte du fichier "vimrc" d'exemple: + :read $VIMRUNTIME/vimrc_example.vim + + 3. Enregistrez le fichier avec: + :write + + La prochaine fois que vous démarrerez Vim, le surlignage syntactique sera + activé. Vous pouvez ajouter tous vos réglages préférés dans ce fichier. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + Ceci conclut le Tutoriel Vim. Le but était de vous donner un bref aperçu de + l'éditeur Vim, juste assez pour vous permettre d'utiliser l'éditeur + relativement facilement. Il est loin d'être complet, vu que Vim a beaucoup + beaucoup plus de commandes. Un Manuel de l'utilisateur est disponible en + anglais: :help user-manual . + + Pour continuer à découvrir et à apprendre Vim, il existe un livre traduit en + français. Il parle plus de Vi que de Vim, mais pourra vous être utile. + L'éditeur Vi - Collection Précis et concis - par Arnold Robbins + Éditeur: O'Reilly France + ISBN: 2-84177-102-4 + + Deux livres en anglais sont également mentionnés dans la version originale + de ce tutoriel, dont un qui traite spécifiquement de Vim. Merci de vous y + référer si vous êtes intéressé. + + Ce tutoriel a été écrit par Michael C. Pierce et Robert K. Ware de l'École + des Mines du Colorado et reprend des idées fournies par Charles Smith, + Universté d'État du Colorado. E-mail: bware@mines.colorado.edu. + + Modifié pour Vim par Bram Moolenar. + + Traduit en Français par Adrien Beau, en avril 2001. + E-mail: version.francaise@free.fr + Last Change: 2003 May 29 +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/tutor/tutor.hr Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,972 @@ +=============================================================================== += D o b r o d o � l i u VIM p r i r u � n i k - Verzija 1.7 = +=============================================================================== + + Vim je vrlo mo�an editor koji ima mnogo naredbi, previ�e da bi ih + se svih ovdje spomenulo. Namjena priru�nika je objasniti dovoljno + naredbi kako bi po�etnici znatno lak�e koristili ovaj svestran editor. + + Pribli�no vrijeme potrebno za uspje�an zavr�etak priru�nika je oko + 30 minuta a ovisi o tome koliko �e te vremena odvojiti za vje�banje. + + UPOZORENJE: + Naredbe u ovom priru�niku �e promijeniti ovaj tekst. + Napravite kopiju ove datoteke kako bi ste na istoj vje�bali + (ako ste pokrenuli "vimtutor" ovo je ve� kopija). + + Vrlo je va�no primijetiti da je ovaj priru�nik namijenjen za vje�banje. + Preciznije, morate izvr�iti naredbe u Vim-u kako bi ste iste nau�ili + pravilno koristiti. Ako samo �itate tekst, zaboraviti �e te naredbe! + + Ako je CapsLock uklju�en ISKLJU�ITE ga. Pritiskajte tipku j kako + bi pomakli kursor sve dok Lekcija 1.1 ne ispuni ekran. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 1.1: POMICANJE KURSORA + + + ** Za pomicanje kursora, pritisnite h,j,k,l tipke kako je prikazano ** + ^ + k Savjet: h tipka je lijevo i pomi�e kursor lijevo. + < h l > l tipka je desno i pomi�e kursor desno. + j j izgleda kao strelica usmjerena dolje. + v + 1. Pomi�ite kursor po ekranu dok se ne naviknete na kori�tenje. + + 2. Dr�ite tipku (j) pritisnutom. + Sada znate kako do�i do sljede�e lekcije. + + 3. Koriste�i tipku j prije�ite na sljede�u lekciju 1.2. + +NAPOMENA: Ako niste sigurni �to ste zapravo pritisnuli uvijek koristite + tipku <ESC> kako bi pre�li u Normal mod i onda poku�ajte ponovno. + +NAPOMENA: Kursorske tipke rade isto. Kori�tenje hjkl tipaka je znatno + br�e, nakon �to se jednom naviknete na njihovo kori�tenje. Stvarno! + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 1.2: IZLAZ IZ VIM-a + + + !! UPOZORENJE: Prije izvo�enja bilo kojeg koraka, + pro�itajte cijelu lekciju!! + + 1. Pritisnite <ESC> tipku (Vim je sada u Normal modu). + + 2. Otipkajte: :q! <ENTER>. + Izlaz iz editora, GUBE se sve napravljene promjene. + + 3. Kada se pojavi ljuska, utipkajte naredbu koja je pokrenula + ovaj priru�nik: vimtutor <ENTER> + + 4. Ako ste upamtili ove korake, izvr�ite ih redom od 1 do 3 + kako bi ponovno pokrenuli editor. + +NAPOMENA: :q! <ENTER> poni�tava sve promjene koje ste napravili. + U sljede�im lekcijama nau�it �e te kako promjene sa�uvati. + + 5. Pomaknite kursor na Lekciju 1.3. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 1.3: PROMJENA TEKSTA - BRISANJE + + + ** Pritisnite x za brisanje znaka pod kursorom. ** + + 1. Pomaknite kursor na liniju ozna�enu s --->. + + 2. Kako bi ste ispravili pogre�ke, pomi�ite kursor dok se + ne bude nalazio na slovu kojeg trebate izbrisati. + + 3. Pritisnite tipku x kako bi uklonili ne�eljeno slovo. + + 4. Ponovite korake od 2 do 4 dok ne ispravite sve pogre�ke. + +---> KKKravaa jee pressko�ila mmjeseccc. + + 5. Nakon �to ispravite liniju, prije�ite na lekciju 1.4. + +NAPOMENA: Koriste�i ovaj priru�nik ne poku�avajte pamtiti + ve� u�ite primjenom. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 1.4: PROMJENA TEKSTA - UBACIVANJE + + + ** Pritisnite i za ubacivanje teksta ispred kursora. ** + + 1. Pomaknite kursor na prvu sljede�u liniju ozna�enu s --->. + + 2. Kako bi napravili prvu liniju istovjetnoj drugoj, pomaknite + kursor na prvi znak POSLIJE kojeg �e te utipkati potreban tekst. + + 3. Pritisnite i te utipkajte potrebne nadopune. + + 4. Nakon �to ispravite pogre�ku pritisnite <ESC> kako bi vratili Vim + u Normal mod. Ponovite korake od 2 do 4 kako bi ispravili sve pogre�ke. + +---> Nedje no teka od v lin. +---> Nedostaje ne�to teksta od ove linije. + + 5. Prije�ite na sljede�u lekciju. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 1.5: PROMJENA TEKSTA - DODAVANJE + + + ** Pritisnite A za dodavanje teksta. ** + + 1. Pomaknite kursor na prvu sljede�u liniju ozna�enu s --->. + Nije va�no na kojem se slovu nalazi kursor na toj liniji. + + 2. Pritisnite A i napravite potrebne promjene. + + 3. Nakon �to ste dodali tekst, pritisnite <ESC> + za povratak u Normal mod. + + 4. Pomaknite kursor na drugu liniju ozna�enu s ---> + i ponovite korake 2 i 3 dok ne popravite tekst. + +---> Ima ne�to teksta koji nedostaje n + Ima ne�to teksta koji nedostaje na ovoj liniji. +---> Ima ne�to teksta koji ne + Ima ne�to teksta koji nedostaje ba� ovdje. + + 5. Prije�ite na lekciju 1.6. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 1.6: PROMJENA DATOTEKE + + + ** Koristite :wq za spremanje teksta i napu�tanje Vim-a. ** + + !! UPOZORENJE: Prije izvr�avanja bilo kojeg koraka, pro�itajte lekciju!! + + 1. Iza�ite iz programa kao sto ste napravili u lekciji 1.2: :q! + + 2. Iz ljuske utipkajte sljede�u naredbu: vim tutor <ENTER> + 'vim' je naredba pokretanja Vim editora, 'tutor' je ime datoteke koju + �elite ure�ivati. Koristite datoteku koju imate ovlasti mijenjati. + + 3. Ubacite i izbri�ite tekst kao �to ste to napravili u lekcijama prije. + + 4. Sa�uvajte promjenjeni tekst i iza�ite iz Vim-a: :wq <ENTER> + + 5. Ponovno pokrenite vimtutor i nastavite �itati sa�etak koji sljedi. + + 6. Nakon sto pro�itate gornje korake i u potpunosti ih razumijete: + izvr�ite ih. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 1 SA�ETAK + + + 1. Kursor se pomi�e strelicama ili pomo�u hjkl tipaka. + h (lijevo) j (dolje) k (gore) l (desno) + + 2. Pokretanje Vim-a iz ljuske: vim IME_DATOTEKE <ENTER> + + 3. Izlaz: <ESC> :q! <ENTER> sve promjene su izgubljene. + ILI: <ESC> :wq <ENTER> promjene su sa�uvane. + + 4. Brisanje znaka na kojem se nalazi kursor: x + + 5. Ubacivanja ili dodavanje teksta: + i utipkajte tekst <ESC> unos ispred kursora + A utipkajte tekst <ESC> dodavanje na kraju linije + +NAPOMENA: Tipkanjem tipke <ESC> prebacuje Vim u Normal mod i + prekida ne�eljenu ili djelomi�no zavr�enu naredbu. + +Nastavite �itati Lekciju 2. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 2.1: NAREDBE BRISANJA + + + ** Tipkajte dw za brisanje rije�i. ** + + 1. Pritisnite <ESC> kako bi bili sigurni da je Vim u Normal modu. + + 2. Pomaknite kursor na liniju ozna�enu s --->. + + 3. Pomaknite kursor na po�etak rije�i koju treba izbrisati. + + 4. Otipkajte dw kako bi uklonili rije�. + +NAPOMENA: Vim �e prikazati slovo d na zadnjoj liniji kad ga otipkate. + Vim �eka da otipkate w . Ako je prikazano neko drugo slovo, + krivo ste otipkali; pritisnite <ESC> i poku�ajte ponovno. + +---> Neke rije�i smije�no ne pripadaju na papir ovoj re�enici. + + 5. Ponovite korake 3 i 4 dok ne ispravite re�enicu; + prije�ite na Lekciju 2.2. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 2.2: JO� BRISANJA + + + ** Otipkajte d$ za brisanje znakova do kraja linije. ** + + 1. Pritisnite <ESC> kako bi bili + sigurni da je Vim u Normal modu. + + 2. Pomaknite kursor na liniju ozna�enu s --->. + + 3. Pomaknite kursor do kraja ispravne re�enice + (POSLJE prve . ). + + 4. Otipkajte d$ + kako bi izbrisali sve znakove do kraja linije. + +---> Netko je utipkao kraj ove linije dvaput. kraj ove linije dvaput. + + 5. Prije�ite na Lekciju 2.3 za bolje obja�njenje. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 2.3: UKRATKO O OPERATORIMA I POKRETIMA + + + Mnogo naredbi koje mijenjaju tekst se sastoje od operatora i pokreta. + Oblik naredbe brisanja sa d operatorom je sljede�i: + + d pokret + + Pri �emu je: + d - operator brisanja. + pokret - ono na �emu �e se operacija izvr�avati (navedeno u nastavku). + + Kratka lista pokreta: + w - sve do po�etka sljede�e rije�i, NE UKLJU�UJU�I prvo slovo. + e - sve do kraja trenuta�ne rije�i, UKLJU�UJU�I zadnje slovo. + $ - sve do kraje linije, UKLJU�UJU�I zadnje slovo. + + Tipkanjem de �e se brisati od kursora do kraja rije�i. + +NAPOMENA: Pritiskaju�i samo pokrete dok ste u Normal modu bez operatora �e + pomicati kursor kao �to je navedeno. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 2.4: KORI�TENJE BROJANJA ZA POKRETE + + + ** Tipkanjem nekog broja prije pokreta, pokret se izvr�ava toliko puta. ** + + 1. Pomaknite kursor na liniju ozna�enu s --->. + + 2. Otipkajte 2w da pomaknete kursor dvije rije�i naprijed. + + 3. Otipkajte 3e da pomaknete kursor na kraj tre�e rije�i naprijed. + + 4. Otipkajte 0 (nulu) da pomaknete kursor na po�etak linije. + + 5. Ponovite korake 2 i 3 s nekim drugim brojevima. + +---> Re�enica sa rije�ima po kojoj mo�ete pomicati kursor. + + 6. Prije�ite na Lekciju 2.5. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 2.5: KORI�TENJE BROJANJA ZA VE�E BRISANJE + + + ** Tipkanje broja N s operatorom ponavlja ga N-puta. ** + + U kombinaciji operatora brisanja i pokreta spomenutih iznad + ubacujete broj prije pokreta kako bi izbrisali vi�e znakova: + + d broj pokret + + 1. Pomaknite kursor na prvo slovo u rije�i sa VELIKIM SLOVIMA + ozna�enu s --->. + + 2. Otipkajte 2dw da izbri�ete dvije rije�i sa VELIKIM SLOVIMA + + 3. Ponovite korake 1 i 2 sa razli�itim brojevima da izbri�ete + uzastopne rije�i sa VELIKIM SLOVIMA sa samo jednom naredbom. + +---> ova ABC�� D�E linija FGHI JK LMN OP rije�i je RS� TUVZ� popravljena. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 2.6: OPERIRANJE NAD LINIJAMA + + + ** Otipkajte dd za brisanje cijele linije. ** + + Zbog u�estalosti brisanja cijelih linija, dizajneri Vi-a su odlu�ili da + je lak�e brisati linije tipkanjem d dvaput. + + 1. Pomaknite kursor na drugu liniju u donjoj kitici. + 2. Otipkajte dd kako bi izbrisali liniju. + 3. Pomaknite kursor na �etvrtu liniju. + 4. Otipkajte 2dd kako bi izbrisali dvije linije. + +---> 1) Ru�e su crvene, +---> 2) Pla�a je super, +---> 3) Ljubice su plave, +---> 4) Imam auto, +---> 5) Satovi ukazuju vrijeme, +---> 6) �e�er je sladak +---> 7) Kao i ti. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 2.7: NAREDBA PONI�TENJA + + + ** Pritisnite u za poni�tenje zadnje naredbe, U za cijelu liniju. ** + + 1. Pomaknite kursor na liniju ozna�enu s ---> i postavite kursor na prvu + pogre�ku. + 2. Otipkajte x kako bi izbrisali prvi ne�eljeni znak. + 3. Otipkajte u kako bi poni�tili zadnju izvr�enu naredbu. + 4. Ovaj put ispravite sve pogre�ke na liniji koriste�i x naredbu. + 5. Sada utipkajte veliko U kako bi poni�tili sve promjene + na liniji, vra�aju�i je u prija�nje stanje. + 6. Sada utipkajte u nekoliko puta kako bi poni�tili U + i prija�nje naredbe. + 7. Sada utipkajte CTRL-R (dr�e�i CTRL tipku pritisnutom dok + ne pritisnete R) nekoliko puta kako bi vratili promjene + (poni�tili poni�tenja). + +---> Poopravite pogre�ke nna ovvoj liniji ii pooni�titeee ih. + + 8. Vrlo korisne naredbe. Prije�ite na sa�etak Lekcije 2. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 2 SA�ETAK + + + 1. Brisanje od kursora do sljede�e rije�i: dw + 2. Brisanje od kursora do kraja linije: d$ + 3. Brisanje cijele linije: dd + + 4. Za ponavljanje pokreta prethodite mu broj: 2w + 5. Oblik naredbe mijenjanja: + operator [broj] pokret + gdje je: + operator - �to napraviti, npr. d za brisanje + [broj] - neobavezan broj ponavljanja pokreta + pokret - kretanje po tekstu po kojem se operira, + kao �to je: w (rije�), $ (kraj linije), itd. + + 6. Postavljanje kursora na po�etak linije: 0 + + 7. Za poni�tenje prethodnih promjena, pritisnite: u (malo u) + Za poni�tenje svih promjena na liniji, pritisnite: U (veliko U) + Za vra�anja promjena, utipkajte: CTRL-R + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 3.1: NAREDBA POSTAVI + + + ** p za unos prethodno izbrisanog teksta iza kursora. ** + + 1. Pomaknite kursor na prvu sljede�u liniju ozna�enu s --->. + + 2. Otipkajte dd kako bi izbrisali liniju i spremili je u Vim registar. + + 3. Pomaknite kursor na liniju c), IZNAD linije koju trebate unijeti. + + 4. Otipkajte p kako bi postavili liniju ispod kursora. + + 5. Ponovite korake 2 do 4 kako bi postavili sve linije u pravilnom + rasporedu. + +---> d) Mo�e� li i ti nau�iti? +---> b) Ljubice su plave, +---> c) Inteligencija je nau�ena, +---> a) Ru�e su crvene, + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 3.2: NAREDBA PROMJENE + + + ** Otipkajte rx za zamjenu slova ispod kursora sa slovom x . ** + + 1. Pomaknite kursor na prvu sljede�u liniju ozna�enu s --->. + + 2. Pomaknite kursor tako da se nalazi na prvoj pogre�ci. + + 3. Otipkajte r i nakon toga ispravan znak na tom mjestu. + + 4. Ponovite korake 2 i 3 sve dok prva + linije ne bude istovjetna drugoj. + +---> Kede ju ovu limija tupjana, natko je protuskao kruve tupke! +---> Kada je ova linija tipkana, netko je pritiskao krive tipke! + + 5. Prije�ite na Lekciju 3.2. + +NAPOMENA: Prisjetite da trebate u�iti vje�banjem, ne pam�enjem. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 3.3: OPERATOR MIJENJANJA + + + ** Za mijenjanje do kraja rije�i, istipkajte ce . ** + + 1. Pomaknite kursor na prvu sljede�u liniju ozna�enu s --->. + + 2. Postavite kursor na a u lackmb. + + 3. Otipkajte ce i ispravite rije� (u ovom slu�aju otipkajte inija ). + + 4. Pritisnite <ESC> i pomaknite kursor na sljede�i znak + kojeg je potrebno ispraviti. + + 5. Ponovite korake 3 i 4 sve dok prva re�enica ne postane istovjetna + drugoj. + +---> Ova lackmb ima nekoliko rjlcah koje trfcb mijdmlfsz. +---> Ova linija ima nekoliko rije�i koje treba mijenjati. + +Primijetite da ce bri�e rije� i postavlja Vim u Insert mod. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 3.4: JO� MIJENJANJA KORI�TENJEM c + + + ** Naredba mijenjanja se koristi sa istim pokretima kao i brisanje. ** + + 1. Operator mijenjanja se koristi na isti na�in kao i operator brisanja: + + c [broj] pokret + + 2. Pokreti su isti, npr: w (rije�) i $ (kraj linije). + + 3. Pomaknite kursor na prvu sljede�u liniju ozna�enu s --->. + + 4. Pomaknite kursor na prvu pogre�ku. + + 5. Otipkajte c$ i utipkajte ostatak linije tako da bude istovjetna + drugoj te pritisnite <ESC>. + +---> Kraj ove linije treba pomo� tako da izgleda kao linija ispod. +---> Kraj ove linije treba ispraviti kori�tenjem c$ naredbe. + +NAPOMENA: Mo�ete koristiti Backspace za ispravljanje gre�aka. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 3 SA�ETAK + + + 1. Za postavljanje teksta koji je upravo izbrisan, pritisnite p . Ovo + postavlja tekst IZA kursora (ako je pak linija izbrisana tekst se + postavlja na liniju ispod kursora). + + 2. Za promjenu znaka na kojem se nalazi kursor, pritisnite r i nakon toga + �eljeni znak. + + 3. Operator mijenjanja dozvoljava promjenu teksta od kursora do pozicije do + koje dovede pokret. tj. Otipkajte ce za mijenjanje od kursora do kraja + rije�i, c$ za mijenjanje od kursora do kraja linije. + + 4. Oblik naredbe mijenjanja: + + c [broj] pokret + +Prije�ite na sljede�u lekciju. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 4.1: POZICIJA KURSORA I STATUS DATOTEKE + + ** CTRL-G za prikaz pozicije kursora u datoteci i status datoteke. + Pritisnite G za pomicanje kursora na neku liniju u datoteci. ** + +NAPOMENA: Pro�itajte cijelu lekciju prije izvr�enja bilo kojeg koraka!! + + 1. Dr�ite Ctrl tipku pritisnutom i pritisnite g . Ukratko: CTRL-G. + Vim �e ispisati poruku na dnu ekrana sa imenom datoteke i pozicijom + kursora u datoteci. Zapamtite broj linije za 3. korak. + +NAPOMENA: Mo�ete vidjeti poziciju kursora u donjem desnom kutu ako + je postavka 'ruler' aktivirana (obja�njeno u 6. lekciji). + + 2. Pritisnite G za pomicanje kursora na kraj datoteke. + Otipkajte gg za pomicanje kursora na po�etak datoteke. + + 3. Otipkajte broj linije na kojoj ste bili maloprije i zatim G . Kursor + �e se vratiti na liniju na kojoj se nalazio kada ste otipkali CTRL-G. + + 4. Ako ste spremni, izvr�ite korake od 1 do 3. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 4.2: NAREDBE TRA�ENJA + + ** Otipkajte / i nakon toga izraz kojeg �elite tra�iti. ** + + 1. U Normal modu otipkajte / znak. Primijetite da se znak + pojavio zajedno sa kursorom na dnu ekrana kao kod : naredbe. + + 2. Sada otipkajte 'grrrre�ka' <ENTER>. To je rije� koju zapravo tra�ite. + + 3. Za ponovno tra�enje istog izraza, otipkajte n . + Za tra�enje istog izraza ali u suprotnom smjeru, otipkajte N . + + 4. Za tra�enje izraza unatrag, koristite ? umjesto / . + + 5. Za povratak na prethodnu poziciju koristite CTRL-O (dr�ite Ctrl + pritisnutim dok ne pritisnete tipku o). Ponavljajte sve dok se ne + vratite na po�etak. CTRL-I sli�no kao CTRL-O ali u suprotnom smjeru. + +---> "pogrrrre�ka" je pogre�no; umjesto pogrrrre�ka treba stajati pogre�ka. + +NAPOMENA: Ako se tra�enjem do�e do kraja datoteke nastavit �e se od njenog + po�etka osim ako je postavka 'wrapscan' deaktivirana. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 4.3: TRA�ENJE PRIPADAJU�E ZAGRADE + + + ** Otipkajte % za pronalazak pripadaju�e ), ] ili } . ** + + 1. Postavite kursor na bilo koju od ( , [ ili { + otvorenih zagrada u liniji ozna�enoj s --->. + + 2. Otipkajte znak % . + + 3. Kursor �e se pomaknuti na pripadaju�u zatvorenu zagradu. + + 4. Otipkajte % kako bi pomakli kursor na drugu pripadaju�u zagradu. + + 5. Pomaknite kursor na neku od (,),[,],{ ili } i ponovite % naredbu. + +---> Linija ( testiranja obi�nih ( [ uglatih ] i { viti�astih } zagrada.)) + + +NAPOMENA: Vrlo korisno u ispravljanju koda sa nepripadaju�im zagradama! + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 4.4: NAREDBE ZAMIJENE + + + ** Otipkajte :s/staro/novo/g da zamijenite 'staro' za 'novo'. ** + + 1. Pomaknite kursor na liniju ozna�enu s --->. + + 2. Otipkajte :s/cvr��/cvr� <ENTER> . Primjetite da ova naredba zamjenjuje + samo prvi "cvr��" u liniji. + + 3. Otipkajte :s/cvr��/cvr�/g . Dodavanje g stavke zna�i da �e se naredba + izvr�iti na cijeloj liniji, zamjenjivanjem svih "cvr��" u liniji. + +---> i cvr��i cvr��i cvr��ak na �voru crne smr�e. + + 4. Za zamjenu svih izraza u rasponu dviju linija, + otipkajte :#,#s/staro/novo/g #,# su brojevi linije datoteke na kojima + te izme�u njih �e se izvr�iti zamjena. + Otipkajte :%s/staro/novo/g za zamjenu svih izraza u cijeloj datoteci. + Otipkajte :%s/staro/novo/gc za pronalazak svakog izraza u datoteci i + potvrdu zamjene. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 4 SA�ETAK + + + 1. CTRL-G prikazuje poziciju kursora u datoteci i status datoteke. + G postavlja kursor na zadnju liniju datoteke. + broj G postavlja kursor na broj liniju. + gg postavlja kursor na prvu liniju. + + 2. Tipkanje / sa izrazom tra�i UNAPRIJED taj izraz. + Tipkanje ? sa izrazom tra�i UNATRAG taj izraz. + Nakon naredbe tra�enja koristite n za pronalazak izraza u istom + smjeru, i N za pronalazak istog izraza ali u suprotnom smjeru. + CTRL-O vra�a kursor na prethodnu poziciju, CTRL-I na sljede�u poziciju. + + 3. Tipkanje % dok je kursor na zagradi pomi�e ga na pripadaju�u zagradu. + + 4. Za zamjenu prvog izraza staro za izraz novo :s/staro/novo + Za zamjenu svih izraza staro na cijeloj liniji :s/staro/novo/g + Za zamjenu svih izraza staro u rasponu linija #,# :#,#s/staro/novo/g + Za zamjenu u cijeloj datoteci :%s/staro/novo/g + Za potvrdu svake zamjene dodajte 'c' :%s/staro/novo/gc + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 5.1: IZVR�AVANJE VANJSKIH NAREDBI + + + ** Otipkajte :! sa vanjskom naredbom koju �elite izvr�iti. ** + + 1. Otipkajte poznatu naredbu : kako bi kursor premjestili na dno + ekrana. Time omogu�avate unos naredbe u naredbenoj liniji. + + 2. Otipkajte znak ! (uskli�nik). Tako omogu�avate + izvr�avanje naredbe vanjske ljuske. + + 3. Kao primjer otipkajte ls nakon ! te pritisnite <ENTER>. + Ovo �e prikazati sadr�aj direktorija, kao da ste u ljusci. + Koristite :!dir ako :!ls ne radi. + +NAPOMENA: Mogu�e je izvr�avati bilo koju vanjsku naredbu na ovaj na�in, + zajedno sa njenim argumentima. + +NAPOMENA: Sve : naredbe se izvr�avaju nakon �to pritisnete <ENTER> + U daljnjem tekstu to ne�e uvijek biti napomenuto. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 5.2: VI�E O SPREMANJU DATOTEKA + + ** Za spremanje promjena, otipkajte :w IME_DATOTEKE. ** + + 1. Otipkajte :!dir ili :!ls za pregled direktorija. + Ve� znate da morate pritisnuti <ENTER> na kraju tipkanja. + + 2. Izaberite ime datoteke koja jo� ne postoji, npr. TEST. + + 3. Otipkajte: :w TEST (gdje je TEST ime koje ste prethodno odabrali.) + + 4. Time �e te spremiti cijelu datoteku (Vim Tutor) pod imenom TEST. + Za provjeru, otipkajte ponovno :!dir ili :!ls + za pregled direktorija. + +NAPOMENA: Ako bi napustili Vim i ponovno ga pokrenuli sa vim TEST , + datoteka bi bila potpuna kopija ove datoteke u trenutku + kada ste je spremili. + + 5. Izbri�ite datoteku tako da otipkate (MS-DOS): :!del TEST + ili (Unix): :!rm TEST + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 5.3: SPREMANJE OZNA�ENOG TEKSTA + + + ** Kako bi spremili dio datoteke, otipkajte v pokret :w IME_DATOTEKE ** + + 1. Pomaknite kursor na ovu liniju. + + 2. Pritisnite v i pomaknite kursor pet linija ispod ove. + Primijetite promjenu, ozna�eni tekst se razlikuje od obi�nog. + + 3. Pritisnite : znak. Na dnu ekrana pojavit �e se :'<,'> . + + 4. Otipkajte w TEST , pritom je TEST ime datoteke koja jo� ne postoji. + Provjerite da zaista pi�e :'<,'>w TEST + prije nego �to pritisnite <ENTER>. + + 5. Vim �e spremiti ozna�eni tekst u TEST. Provjerite sa :!dir ili !ls . + Nemojte je jo� brisati! Koristiti �e te je u sljede�oj lekciji. + +NAPOMENA: Tipka v zapo�inje Vizualno ozna�avanje. Mo�ete pomicati kursor + unaokolo kako bi mijenjali veli�inu ozna�enog teksta. Mo�ete + koristiti i operatore. Npr, d �e izbrisati ozna�eni tekst. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 5.4: U�ITAVANJE DATOTEKA + + + ** Za ubacivanje sadr�aja datoteke, otipkajte :r IME_DATOTEKE ** + + 1. Postavite kursor iznad ove linije. + +NAPOMENA: Nakon �to izvr�ite 2. korak vidjeti �e te tekst iz Lekcije 5.3. + Stoga pomaknite kursor DOLJE kako bi ponovno vidjeli ovu lekciju. + + 2. U�itajte va�u TEST datoteku koriste�i naredbu :r TEST + gdje je TEST ime datoteke koju ste koristili u prethodnoj lekciji. + Sadr�aj u�itane datoteke je uba�en liniju ispod kursora. + + 3. Kako bi provjerili da je datoteka u�itana, vratite kursor unatrag i + primijetite dvije kopije Lekcije 5.3, originalnu i onu iz datoteke. + +NAPOMENA: Mo�ete tako�er u�itati ispis vanjske naredbe. Npr, :r !ls + �e u�itati ispis ls naredbe i postaviti ispis liniju ispod + kursora. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 5 SA�ETAK + + + 1. :!naredba izvr�ava vanjsku naredbu. + + Korisni primjeri: + (MS-DOS) (Unix) + :!dir :!ls - pregled direktorija. + :!del DATOTEKA :!rm DATOTEKA - bri�e datoteku DATOTEKA. + + 2. :w DATOTEKA zapisuje trenuta�nu datoteku na disk sa imenom DATOTEKA. + + 3. v pokret :w IME_DATOTEKE sprema vizualno ozna�ene linije u + datoteku IME_DATOTEKE. + + 4. :r IME_DATOTEKE u�itava datoteku IME_DATOTEKE sa diska i stavlja + njen sadr�aj liniju ispod kursora. + + 5. :r !dir u�itava ispis naredbe dir i postavlja sadr�aj ispisa liniju + ispod kursora. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 6.1: NAREDBA OTVORI + + + ** Pritisnite o kako bi otvorili liniju ispod kursora + i pre�li u Insert mod. ** + + 1. Pomaknite kursor na sljede�u liniju ozna�enu s --->. + + 2. Otipkajte malo o kako bi otvorili novu liniju ISPOD kursora + i pre�li u Insert mod. + + 3. Otipkajte ne�to teksta i nakon toga pritisnite <ESC> + kako bi napustili Insert mod. + +---> Nakon �to pritisnete o kursor �e pre�i u novu liniju u Insert mod. + + 4. Za otvaranje linije IZNAD kursora, otipkajte umjesto malog o veliko O , + Poku�ajte na donjoj liniji ozna�enoj s --->. + +---> Otvorite liniju iznad ove - otipkajte O dok je kursor na ovoj liniji. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 6.2: NAREDBA DODAJ + + + ** Otipkajte a za dodavanje teksta IZA kursora. ** + + 1. Pomaknite kursor na po�etak sljede�e linije ozna�ene s --->. + + 2. Tipkajte e dok se kursor ne nalazi na kraju li . + + 3. Otipkajte a (malo) kako bi dodali tekst IZA kursora. + + 4. Dopunite rije� kao �to je na liniji ispod. + Pritisnite <ESC> za izlaz iz Insert moda. + + 5. Sa e prije�ite na sljede�u nepotpunu rije� i ponovite korake 3 i 4. + +---> Ova li omogu�ava vje dodav teksta nekoj liniji. +---> Ova linija omogu�ava vje�banje dodavanja teksta nekoj liniji. + +NAPOMENA: Sa i, a, i A prelazite u isti Insert mod, jedina + razlika je u poziciji od koje �e se tekst ubacivati. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 6.3: DRUGI NA�IN MIJENJANJA + + + ** Otipkajte veliko R kako bi zamijelili vi�e od jednog znaka. ** + + 1. Pomaknite kursor na prvu sljede�u liniju ozna�enu s --->. + Pomaknite kursor na po�etak prvog xxx . + + 2. Pritisnite R i otipkajte broj koji je liniju ispod, + tako da zamijeni xxx . + + 3. Pritisnite <ESC> za izlaz iz Replace moda. + Primijetite da je ostatak linije ostao nepromjenjen. + + 5. Ponovite korake kako bi zamijenili preostali xxx. + +---> Zbrajanje: 123 plus xxx je xxx. +---> Zbrajanje: 123 plus 456 je 579. + +NAPOMENA: Replace mod je kao Insert mod, ali sa bitnom razlikom, + svaki otipkani znak bri�e ve� postoje�i. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 6.4: KOPIRANJE I LIJEPLJENJE TEKSTA + + + ** Koristite y operator za kopiranje a p za lijepljenje teksta. ** + + 1. Pomaknite kursor na liniju s ---> i postavite kursor nakon "a)". + + 2. Pokrenite Visual mod sa v i pomaknite kursor sve do ispred "prva". + + 3. Pritisnite y kako bi kopirali ozna�eni tekst. + + 4. Pomaknite kursor do kraja sljede�e linije: j$ + + 5. Pritisnite p kako bi zalijepili tekst. Onda utipkajte: druga <ESC> . + + 6. Koristite Visual mod kako bi ozna�ili " linija.", kopirajte: y , kursor + postavite na kraj sljede�e linije: j$ i ondje zalijepite tekst: p . + +---> a) ovo je prva linija. + b) + +NAPOMENA: mo�ete koristiti y kao operator; yw kopira jednu rije�. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 6.5: MIJENJANJE POSTAVKI + + + ** Postavka: naredbe tra�enja i zamijene ne razlikuju VELIKA i mala slova ** + + 1. Potra�ite 'razlika' tipkanjem: /razlika <ENTER> + Nekoliko puta ponovite pritiskanjem n . + + 2. Aktivirajte 'ic' (Ignore case) postavku: :set ic + + 3. Ponovno potra�ite 'razlika' tipkanjem n + Primijetite da su sada i RAZLIKA i Razlika prona�eni. + + 4. Aktivirajte 'hlsearch' i 'incsearch' postavke: :set hls is + + 5. Otipkajte naredbu tra�enja i primijetite razlike: /razlika <ENTER> + + 6. Za deaktiviranje ic postavke koristite: :set noic + +NAPOMENA: Za neozna�avanje prona�enih izraza otipkajte: :nohlsearch +NAPOMENA: Bez razlikovanja velikih i malih slova u samo jednoj naredbi + koristite \c u izrazu: /razlika\c <ENTER> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 6 SA�ETAK + + 1. Pritisnite o za otvaranje linije ISPOD kursora i prelazak u Insert mod. + Pritisnite O za otvaranje linije IZNAD kursora. + + 2. Pritisnite a za unos teksta IZA kursora. + Pritisnite A za unos teksta na kraju linije. + + 3. Naredba e pomi�e kursor na kraj rije�i. + + 4. Operator y kopira tekst, p ga lijepi. + + 5. Tipkanjem velikog R Vim prelazi u Replace mod dok ne pritisnete <ESC> . + + 6. Tipkanjem ":set xxx" aktivira postavku "xxx". Neke postavke su: + 'ic' 'ignorecase' ne razlikuje velika/mala slova pri tra�enju + 'is' 'incsearch' tra�i nedovr�ene izraze + 'hls' 'hlsearch' ozna�i sve prona�ene izraze + Mo�ete koristite dugo ili kratko ime postavke. + + 7. Prethodite "no" imenu postavke za deaktiviranje iste: :set noic + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 7.1: DOBIVANJE POMO�I + + + ** Koristite on-line sustav pomo�i ** + + Vim ima detaljan on-line sustav pomo�i. + Za po�etak, poku�ajte jedno od sljede�eg: + - pritisnite <HELP> tipku (ako je va�a tipkovnica ima) + - pritisnite <F1> tipku (ako je va�a tipkovnica ima) + - utipkajte :help <ENTER> + + Pro�itajte tekst u prozoru pomo�i kako bi ste se znali slu�iti istom. + Tipkanjem CTRL-W CTRL-W prelazite iz jednog prozora u drugi. + Otipkajte :q <ENTER> kako bi zatvorili prozor pomo�i. + + Prona�i �e te pomo� o bilo kojoj temi, tako da dodate upit samoj + ":help" naredbi. Poku�ajte (ne zaboravite pritisnuti <ENTER>): + + :help w + :help c_CTRL-D + :help insert-index + :help user-manual +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 7.2: PRAVLJENJE SKRIPTE + + + ** Aktivirajte Vim mogu�nosti ** + + Vim ima mnogo vi�e alata od Vi-ja, ali ve�ina njih nije aktivirana. + Kako bi mogli koristiti vi�e mogu�nosti napravite "vimrc" datoteku. + + 1. Uredite "vimrc" datoteku. Ovo ovisi o va�em sistemu: + :e ~/.vimrc za Unix + :e $VIM/_vimrc za MS-Windows + + 2. Sada u�itajte primjer sadr�aja "vimrc" datoteke: + :r $VIMRUNTIME/vimrc_example.vim + + 3. Sa�uvajte datoteku sa: + :w + + Sljede�eg puta kada pokrenete Vim, bojanje sintakse teksta biti �e + aktivirano. Sve va�e postavke mo�ete dodati u "vimrc" datoteku. + Za vi�e informacija otipkajte :help vimrc-intro + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 7.3: AUTOMATSKO DOVR�AVANJE + + + ** Dovr�avanje iz naredbene linije pomo�u CTRL-D i <TAB> ** + + 1. Provjerite da Vim nije u Vi modu: :set nocp + + 2. Pogledajte koje datoteke postoje u direktoriju: :!ls or :!dir + + 3. Otipkajte po�etak naredbe: :e + + 4. Tipkajte CTRL-D i prikazati �e se lista naredbi koje zapo�inju sa "e". + + 5. Pritisnite <TAB> i Vim �e dopuniti unos u naredbu ":edit". + + 6. Dodajte razmak i po�etak datoteke: :edit FIL + + 7. Pritisnite <TAB>. Vim �e nadopuniti ime datoteke (ako je jedinstveno). + +NAPOMENA: Mogu�e je dopuniti mnoge naredbe. Koristite CTRL-D i <TAB>. + Naro�ito je korisno za :help naredbe. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 7 SA�ETAK + + + 1. Otipkajte :help ili pritisnite <F1> ili <Help> za pomo�. + + 2. Otipkajte :help naredba kako bi dobili pomo� za naredba . + + 3. Otipkajte CTRL-W CTRL-W za prelazak u drugi prozor + + 4. Otipkajte :q kako bi zatvorili prozor pomo�i + + 5. Napravite vimrc skriptu za podizanje kako bi u nju spremali + va�e omiljene postavke. + + 6. Kada tipkate naredbu koja zapo�inje sa : + pritisnite CTRL-D kako bi vidjeli mogu�e valjane vrijednosti. + Pritisnite <TAB> kako bi odabrali jednu od njih. + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Kraj. Cilj priru�nika je da poka�e kratak pregled Vim editora, tek toliko + da omogu�i njegovo kori�tenje. Priru�nik nije potpun jer Vim ima mnogo vi�e + naredbi. Za vi�e informacija: ":help user-manual". + + Za �itanje i kori�tenje, preporu�amo: + Vim - Vi Improved - by Steve Oualline + Izdava�: New Riders + Prva knjiga potpuno posve�ena Vim-u. Vrlo korisna za po�etnike. + Sa mnogo primjera i slika. + Posjetite http://iccf-holland.org/click5.html + + Sljede�a knjiga je ne�to starija i vi�e o Vi-u nego o Vim-u, preporu�amo: + Learning the Vi Editor - by Linda Lamb + Izdava�: O'Reilly & Associates Inc. + Solidna knjiga, mo�ete saznati skoro sve �to mo�ete napraviti + u Vi-u. �esto izdanje ima ne�to informacija i o Vim-u. + + Ovaj priru�nik su napisali: Michael C. Pierce i Robert K. Ware, + Colorado School of Mines koriste�i ideje Charles Smith, + Colorado State University. E-po�ta: bware@mines.colorado.edu. + + Naknadne promjene napravio je Bram Moolenaar. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + Preveo na hrvatski: Paul B. Mahol <onemda@gmail.com> + Preinaka 1.42, Lipanj 2008 + +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/tutor/tutor.hr.cp1250 Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,972 @@ +=============================================================================== += D o b r o d o � l i u VIM p r i r u � n i k - Verzija 1.7 = +=============================================================================== + + Vim je vrlo mo�an editor koji ima mnogo naredbi, previ�e da bi ih + se svih ovdje spomenulo. Namjena priru�nika je objasniti dovoljno + naredbi kako bi po�etnici znatno lak�e koristili ovaj svestran editor. + + Pribli�no vrijeme potrebno za uspje�an zavr�etak priru�nika je oko + 30 minuta a ovisi o tome koliko �e te vremena odvojiti za vje�banje. + + UPOZORENJE: + Naredbe u ovom priru�niku �e promijeniti ovaj tekst. + Napravite kopiju ove datoteke kako bi ste na istoj vje�bali + (ako ste pokrenuli "vimtutor" ovo je ve� kopija). + + Vrlo je va�no primijetiti da je ovaj priru�nik namijenjen za vje�banje. + Preciznije, morate izvr�iti naredbe u Vim-u kako bi ste iste nau�ili + pravilno koristiti. Ako samo �itate tekst, zaboraviti �e te naredbe! + + Ako je CapsLock uklju�en ISKLJU�ITE ga. Pritiskajte tipku j kako + bi pomakli kursor sve dok Lekcija 1.1 ne ispuni ekran. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 1.1: POMICANJE KURSORA + + + ** Za pomicanje kursora, pritisnite h,j,k,l tipke kako je prikazano ** + ^ + k Savjet: h tipka je lijevo i pomi�e kursor lijevo. + < h l > l tipka je desno i pomi�e kursor desno. + j j izgleda kao strelica usmjerena dolje. + v + 1. Pomi�ite kursor po ekranu dok se ne naviknete na kori�tenje. + + 2. Dr�ite tipku (j) pritisnutom. + Sada znate kako do�i do sljede�e lekcije. + + 3. Koriste�i tipku j prije�ite na sljede�u lekciju 1.2. + +NAPOMENA: Ako niste sigurni �to ste zapravo pritisnuli uvijek koristite + tipku <ESC> kako bi pre�li u Normal mod i onda poku�ajte ponovno. + +NAPOMENA: Kursorske tipke rade isto. Kori�tenje hjkl tipaka je znatno + br�e, nakon �to se jednom naviknete na njihovo kori�tenje. Stvarno! + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 1.2: IZLAZ IZ VIM-a + + + !! UPOZORENJE: Prije izvo�enja bilo kojeg koraka, + pro�itajte cijelu lekciju!! + + 1. Pritisnite <ESC> tipku (Vim je sada u Normal modu). + + 2. Otipkajte: :q! <ENTER>. + Izlaz iz editora, GUBE se sve napravljene promjene. + + 3. Kada se pojavi ljuska, utipkajte naredbu koja je pokrenula + ovaj priru�nik: vimtutor <ENTER> + + 4. Ako ste upamtili ove korake, izvr�ite ih redom od 1 do 3 + kako bi ponovno pokrenuli editor. + +NAPOMENA: :q! <ENTER> poni�tava sve promjene koje ste napravili. + U sljede�im lekcijama nau�it �e te kako promjene sa�uvati. + + 5. Pomaknite kursor na Lekciju 1.3. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 1.3: PROMJENA TEKSTA - BRISANJE + + + ** Pritisnite x za brisanje znaka pod kursorom. ** + + 1. Pomaknite kursor na liniju ozna�enu s --->. + + 2. Kako bi ste ispravili pogre�ke, pomi�ite kursor dok se + ne bude nalazio na slovu kojeg trebate izbrisati. + + 3. Pritisnite tipku x kako bi uklonili ne�eljeno slovo. + + 4. Ponovite korake od 2 do 4 dok ne ispravite sve pogre�ke. + +---> KKKravaa jee pressko�ila mmjeseccc. + + 5. Nakon �to ispravite liniju, prije�ite na lekciju 1.4. + +NAPOMENA: Koriste�i ovaj priru�nik ne poku�avajte pamtiti + ve� u�ite primjenom. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 1.4: PROMJENA TEKSTA - UBACIVANJE + + + ** Pritisnite i za ubacivanje teksta ispred kursora. ** + + 1. Pomaknite kursor na prvu sljede�u liniju ozna�enu s --->. + + 2. Kako bi napravili prvu liniju istovjetnoj drugoj, pomaknite + kursor na prvi znak POSLIJE kojeg �e te utipkati potreban tekst. + + 3. Pritisnite i te utipkajte potrebne nadopune. + + 4. Nakon �to ispravite pogre�ku pritisnite <ESC> kako bi vratili Vim + u Normal mod. Ponovite korake od 2 do 4 kako bi ispravili sve pogre�ke. + +---> Nedje no teka od v lin. +---> Nedostaje ne�to teksta od ove linije. + + 5. Prije�ite na sljede�u lekciju. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 1.5: PROMJENA TEKSTA - DODAVANJE + + + ** Pritisnite A za dodavanje teksta. ** + + 1. Pomaknite kursor na prvu sljede�u liniju ozna�enu s --->. + Nije va�no na kojem se slovu nalazi kursor na toj liniji. + + 2. Pritisnite A i napravite potrebne promjene. + + 3. Nakon �to ste dodali tekst, pritisnite <ESC> + za povratak u Normal mod. + + 4. Pomaknite kursor na drugu liniju ozna�enu s ---> + i ponovite korake 2 i 3 dok ne popravite tekst. + +---> Ima ne�to teksta koji nedostaje n + Ima ne�to teksta koji nedostaje na ovoj liniji. +---> Ima ne�to teksta koji ne + Ima ne�to teksta koji nedostaje ba� ovdje. + + 5. Prije�ite na lekciju 1.6. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 1.6: PROMJENA DATOTEKE + + + ** Koristite :wq za spremanje teksta i napu�tanje Vim-a. ** + + !! UPOZORENJE: Prije izvr�avanja bilo kojeg koraka, pro�itajte lekciju!! + + 1. Iza�ite iz programa kao sto ste napravili u lekciji 1.2: :q! + + 2. Iz ljuske utipkajte sljede�u naredbu: vim tutor <ENTER> + 'vim' je naredba pokretanja Vim editora, 'tutor' je ime datoteke koju + �elite ure�ivati. Koristite datoteku koju imate ovlasti mijenjati. + + 3. Ubacite i izbri�ite tekst kao �to ste to napravili u lekcijama prije. + + 4. Sa�uvajte promjenjeni tekst i iza�ite iz Vim-a: :wq <ENTER> + + 5. Ponovno pokrenite vimtutor i nastavite �itati sa�etak koji sljedi. + + 6. Nakon sto pro�itate gornje korake i u potpunosti ih razumijete: + izvr�ite ih. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 1 SA�ETAK + + + 1. Kursor se pomi�e strelicama ili pomo�u hjkl tipaka. + h (lijevo) j (dolje) k (gore) l (desno) + + 2. Pokretanje Vim-a iz ljuske: vim IME_DATOTEKE <ENTER> + + 3. Izlaz: <ESC> :q! <ENTER> sve promjene su izgubljene. + ILI: <ESC> :wq <ENTER> promjene su sa�uvane. + + 4. Brisanje znaka na kojem se nalazi kursor: x + + 5. Ubacivanja ili dodavanje teksta: + i utipkajte tekst <ESC> unos ispred kursora + A utipkajte tekst <ESC> dodavanje na kraju linije + +NAPOMENA: Tipkanjem tipke <ESC> prebacuje Vim u Normal mod i + prekida ne�eljenu ili djelomi�no zavr�enu naredbu. + +Nastavite �itati Lekciju 2. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 2.1: NAREDBE BRISANJA + + + ** Tipkajte dw za brisanje rije�i. ** + + 1. Pritisnite <ESC> kako bi bili sigurni da je Vim u Normal modu. + + 2. Pomaknite kursor na liniju ozna�enu s --->. + + 3. Pomaknite kursor na po�etak rije�i koju treba izbrisati. + + 4. Otipkajte dw kako bi uklonili rije�. + +NAPOMENA: Vim �e prikazati slovo d na zadnjoj liniji kad ga otipkate. + Vim �eka da otipkate w . Ako je prikazano neko drugo slovo, + krivo ste otipkali; pritisnite <ESC> i poku�ajte ponovno. + +---> Neke rije�i smije�no ne pripadaju na papir ovoj re�enici. + + 5. Ponovite korake 3 i 4 dok ne ispravite re�enicu; + prije�ite na Lekciju 2.2. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 2.2: JO� BRISANJA + + + ** Otipkajte d$ za brisanje znakova do kraja linije. ** + + 1. Pritisnite <ESC> kako bi bili + sigurni da je Vim u Normal modu. + + 2. Pomaknite kursor na liniju ozna�enu s --->. + + 3. Pomaknite kursor do kraja ispravne re�enice + (POSLJE prve . ). + + 4. Otipkajte d$ + kako bi izbrisali sve znakove do kraja linije. + +---> Netko je utipkao kraj ove linije dvaput. kraj ove linije dvaput. + + 5. Prije�ite na Lekciju 2.3 za bolje obja�njenje. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 2.3: UKRATKO O OPERATORIMA I POKRETIMA + + + Mnogo naredbi koje mijenjaju tekst se sastoje od operatora i pokreta. + Oblik naredbe brisanja sa d operatorom je sljede�i: + + d pokret + + Pri �emu je: + d - operator brisanja. + pokret - ono na �emu �e se operacija izvr�avati (navedeno u nastavku). + + Kratka lista pokreta: + w - sve do po�etka sljede�e rije�i, NE UKLJU�UJU�I prvo slovo. + e - sve do kraja trenuta�ne rije�i, UKLJU�UJU�I zadnje slovo. + $ - sve do kraje linije, UKLJU�UJU�I zadnje slovo. + + Tipkanjem de �e se brisati od kursora do kraja rije�i. + +NAPOMENA: Pritiskaju�i samo pokrete dok ste u Normal modu bez operatora �e + pomicati kursor kao �to je navedeno. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 2.4: KORI�TENJE BROJANJA ZA POKRETE + + + ** Tipkanjem nekog broja prije pokreta, pokret se izvr�ava toliko puta. ** + + 1. Pomaknite kursor na liniju ozna�enu s --->. + + 2. Otipkajte 2w da pomaknete kursor dvije rije�i naprijed. + + 3. Otipkajte 3e da pomaknete kursor na kraj tre�e rije�i naprijed. + + 4. Otipkajte 0 (nulu) da pomaknete kursor na po�etak linije. + + 5. Ponovite korake 2 i 3 s nekim drugim brojevima. + +---> Re�enica sa rije�ima po kojoj mo�ete pomicati kursor. + + 6. Prije�ite na Lekciju 2.5. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 2.5: KORI�TENJE BROJANJA ZA VE�E BRISANJE + + + ** Tipkanje broja N s operatorom ponavlja ga N-puta. ** + + U kombinaciji operatora brisanja i pokreta spomenutih iznad + ubacujete broj prije pokreta kako bi izbrisali vi�e znakova: + + d broj pokret + + 1. Pomaknite kursor na prvo slovo u rije�i sa VELIKIM SLOVIMA + ozna�enu s --->. + + 2. Otipkajte 2dw da izbri�ete dvije rije�i sa VELIKIM SLOVIMA + + 3. Ponovite korake 1 i 2 sa razli�itim brojevima da izbri�ete + uzastopne rije�i sa VELIKIM SLOVIMA sa samo jednom naredbom. + +---> ova ABC�� D�E linija FGHI JK LMN OP rije�i je RS� TUVZ� popravljena. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 2.6: OPERIRANJE NAD LINIJAMA + + + ** Otipkajte dd za brisanje cijele linije. ** + + Zbog u�estalosti brisanja cijelih linija, dizajneri Vi-a su odlu�ili da + je lak�e brisati linije tipkanjem d dvaput. + + 1. Pomaknite kursor na drugu liniju u donjoj kitici. + 2. Otipkajte dd kako bi izbrisali liniju. + 3. Pomaknite kursor na �etvrtu liniju. + 4. Otipkajte 2dd kako bi izbrisali dvije linije. + +---> 1) Ru�e su crvene, +---> 2) Pla�a je super, +---> 3) Ljubice su plave, +---> 4) Imam auto, +---> 5) Satovi ukazuju vrijeme, +---> 6) �e�er je sladak +---> 7) Kao i ti. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 2.7: NAREDBA PONI�TENJA + + + ** Pritisnite u za poni�tenje zadnje naredbe, U za cijelu liniju. ** + + 1. Pomaknite kursor na liniju ozna�enu s ---> i postavite kursor na prvu + pogre�ku. + 2. Otipkajte x kako bi izbrisali prvi ne�eljeni znak. + 3. Otipkajte u kako bi poni�tili zadnju izvr�enu naredbu. + 4. Ovaj put ispravite sve pogre�ke na liniji koriste�i x naredbu. + 5. Sada utipkajte veliko U kako bi poni�tili sve promjene + na liniji, vra�aju�i je u prija�nje stanje. + 6. Sada utipkajte u nekoliko puta kako bi poni�tili U + i prija�nje naredbe. + 7. Sada utipkajte CTRL-R (dr�e�i CTRL tipku pritisnutom dok + ne pritisnete R) nekoliko puta kako bi vratili promjene + (poni�tili poni�tenja). + +---> Poopravite pogre�ke nna ovvoj liniji ii pooni�titeee ih. + + 8. Vrlo korisne naredbe. Prije�ite na sa�etak Lekcije 2. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 2 SA�ETAK + + + 1. Brisanje od kursora do sljede�e rije�i: dw + 2. Brisanje od kursora do kraja linije: d$ + 3. Brisanje cijele linije: dd + + 4. Za ponavljanje pokreta prethodite mu broj: 2w + 5. Oblik naredbe mijenjanja: + operator [broj] pokret + gdje je: + operator - �to napraviti, npr. d za brisanje + [broj] - neobavezan broj ponavljanja pokreta + pokret - kretanje po tekstu po kojem se operira, + kao �to je: w (rije�), $ (kraj linije), itd. + + 6. Postavljanje kursora na po�etak linije: 0 + + 7. Za poni�tenje prethodnih promjena, pritisnite: u (malo u) + Za poni�tenje svih promjena na liniji, pritisnite: U (veliko U) + Za vra�anja promjena, utipkajte: CTRL-R + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 3.1: NAREDBA POSTAVI + + + ** p za unos prethodno izbrisanog teksta iza kursora. ** + + 1. Pomaknite kursor na prvu sljede�u liniju ozna�enu s --->. + + 2. Otipkajte dd kako bi izbrisali liniju i spremili je u Vim registar. + + 3. Pomaknite kursor na liniju c), IZNAD linije koju trebate unijeti. + + 4. Otipkajte p kako bi postavili liniju ispod kursora. + + 5. Ponovite korake 2 do 4 kako bi postavili sve linije u pravilnom + rasporedu. + +---> d) Mo�e� li i ti nau�iti? +---> b) Ljubice su plave, +---> c) Inteligencija je nau�ena, +---> a) Ru�e su crvene, + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 3.2: NAREDBA PROMJENE + + + ** Otipkajte rx za zamjenu slova ispod kursora sa slovom x . ** + + 1. Pomaknite kursor na prvu sljede�u liniju ozna�enu s --->. + + 2. Pomaknite kursor tako da se nalazi na prvoj pogre�ci. + + 3. Otipkajte r i nakon toga ispravan znak na tom mjestu. + + 4. Ponovite korake 2 i 3 sve dok prva + linije ne bude istovjetna drugoj. + +---> Kede ju ovu limija tupjana, natko je protuskao kruve tupke! +---> Kada je ova linija tipkana, netko je pritiskao krive tipke! + + 5. Prije�ite na Lekciju 3.2. + +NAPOMENA: Prisjetite da trebate u�iti vje�banjem, ne pam�enjem. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 3.3: OPERATOR MIJENJANJA + + + ** Za mijenjanje do kraja rije�i, istipkajte ce . ** + + 1. Pomaknite kursor na prvu sljede�u liniju ozna�enu s --->. + + 2. Postavite kursor na a u lackmb. + + 3. Otipkajte ce i ispravite rije� (u ovom slu�aju otipkajte inija ). + + 4. Pritisnite <ESC> i pomaknite kursor na sljede�i znak + kojeg je potrebno ispraviti. + + 5. Ponovite korake 3 i 4 sve dok prva re�enica ne postane istovjetna + drugoj. + +---> Ova lackmb ima nekoliko rjlcah koje trfcb mijdmlfsz. +---> Ova linija ima nekoliko rije�i koje treba mijenjati. + +Primijetite da ce bri�e rije� i postavlja Vim u Insert mod. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 3.4: JO� MIJENJANJA KORI�TENJEM c + + + ** Naredba mijenjanja se koristi sa istim pokretima kao i brisanje. ** + + 1. Operator mijenjanja se koristi na isti na�in kao i operator brisanja: + + c [broj] pokret + + 2. Pokreti su isti, npr: w (rije�) i $ (kraj linije). + + 3. Pomaknite kursor na prvu sljede�u liniju ozna�enu s --->. + + 4. Pomaknite kursor na prvu pogre�ku. + + 5. Otipkajte c$ i utipkajte ostatak linije tako da bude istovjetna + drugoj te pritisnite <ESC>. + +---> Kraj ove linije treba pomo� tako da izgleda kao linija ispod. +---> Kraj ove linije treba ispraviti kori�tenjem c$ naredbe. + +NAPOMENA: Mo�ete koristiti Backspace za ispravljanje gre�aka. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 3 SA�ETAK + + + 1. Za postavljanje teksta koji je upravo izbrisan, pritisnite p . Ovo + postavlja tekst IZA kursora (ako je pak linija izbrisana tekst se + postavlja na liniju ispod kursora). + + 2. Za promjenu znaka na kojem se nalazi kursor, pritisnite r i nakon toga + �eljeni znak. + + 3. Operator mijenjanja dozvoljava promjenu teksta od kursora do pozicije do + koje dovede pokret. tj. Otipkajte ce za mijenjanje od kursora do kraja + rije�i, c$ za mijenjanje od kursora do kraja linije. + + 4. Oblik naredbe mijenjanja: + + c [broj] pokret + +Prije�ite na sljede�u lekciju. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 4.1: POZICIJA KURSORA I STATUS DATOTEKE + + ** CTRL-G za prikaz pozicije kursora u datoteci i status datoteke. + Pritisnite G za pomicanje kursora na neku liniju u datoteci. ** + +NAPOMENA: Pro�itajte cijelu lekciju prije izvr�enja bilo kojeg koraka!! + + 1. Dr�ite Ctrl tipku pritisnutom i pritisnite g . Ukratko: CTRL-G. + Vim �e ispisati poruku na dnu ekrana sa imenom datoteke i pozicijom + kursora u datoteci. Zapamtite broj linije za 3. korak. + +NAPOMENA: Mo�ete vidjeti poziciju kursora u donjem desnom kutu ako + je postavka 'ruler' aktivirana (obja�njeno u 6. lekciji). + + 2. Pritisnite G za pomicanje kursora na kraj datoteke. + Otipkajte gg za pomicanje kursora na po�etak datoteke. + + 3. Otipkajte broj linije na kojoj ste bili maloprije i zatim G . Kursor + �e se vratiti na liniju na kojoj se nalazio kada ste otipkali CTRL-G. + + 4. Ako ste spremni, izvr�ite korake od 1 do 3. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 4.2: NAREDBE TRA�ENJA + + ** Otipkajte / i nakon toga izraz kojeg �elite tra�iti. ** + + 1. U Normal modu otipkajte / znak. Primijetite da se znak + pojavio zajedno sa kursorom na dnu ekrana kao kod : naredbe. + + 2. Sada otipkajte 'grrrre�ka' <ENTER>. To je rije� koju zapravo tra�ite. + + 3. Za ponovno tra�enje istog izraza, otipkajte n . + Za tra�enje istog izraza ali u suprotnom smjeru, otipkajte N . + + 4. Za tra�enje izraza unatrag, koristite ? umjesto / . + + 5. Za povratak na prethodnu poziciju koristite CTRL-O (dr�ite Ctrl + pritisnutim dok ne pritisnete tipku o). Ponavljajte sve dok se ne + vratite na po�etak. CTRL-I sli�no kao CTRL-O ali u suprotnom smjeru. + +---> "pogrrrre�ka" je pogre�no; umjesto pogrrrre�ka treba stajati pogre�ka. + +NAPOMENA: Ako se tra�enjem do�e do kraja datoteke nastavit �e se od njenog + po�etka osim ako je postavka 'wrapscan' deaktivirana. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 4.3: TRA�ENJE PRIPADAJU�E ZAGRADE + + + ** Otipkajte % za pronalazak pripadaju�e ), ] ili } . ** + + 1. Postavite kursor na bilo koju od ( , [ ili { + otvorenih zagrada u liniji ozna�enoj s --->. + + 2. Otipkajte znak % . + + 3. Kursor �e se pomaknuti na pripadaju�u zatvorenu zagradu. + + 4. Otipkajte % kako bi pomakli kursor na drugu pripadaju�u zagradu. + + 5. Pomaknite kursor na neku od (,),[,],{ ili } i ponovite % naredbu. + +---> Linija ( testiranja obi�nih ( [ uglatih ] i { viti�astih } zagrada.)) + + +NAPOMENA: Vrlo korisno u ispravljanju koda sa nepripadaju�im zagradama! + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 4.4: NAREDBE ZAMIJENE + + + ** Otipkajte :s/staro/novo/g da zamijenite 'staro' za 'novo'. ** + + 1. Pomaknite kursor na liniju ozna�enu s --->. + + 2. Otipkajte :s/cvr��/cvr� <ENTER> . Primjetite da ova naredba zamjenjuje + samo prvi "cvr��" u liniji. + + 3. Otipkajte :s/cvr��/cvr�/g . Dodavanje g stavke zna�i da �e se naredba + izvr�iti na cijeloj liniji, zamjenjivanjem svih "cvr��" u liniji. + +---> i cvr��i cvr��i cvr��ak na �voru crne smr�e. + + 4. Za zamjenu svih izraza u rasponu dviju linija, + otipkajte :#,#s/staro/novo/g #,# su brojevi linije datoteke na kojima + te izme�u njih �e se izvr�iti zamjena. + Otipkajte :%s/staro/novo/g za zamjenu svih izraza u cijeloj datoteci. + Otipkajte :%s/staro/novo/gc za pronalazak svakog izraza u datoteci i + potvrdu zamjene. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 4 SA�ETAK + + + 1. CTRL-G prikazuje poziciju kursora u datoteci i status datoteke. + G postavlja kursor na zadnju liniju datoteke. + broj G postavlja kursor na broj liniju. + gg postavlja kursor na prvu liniju. + + 2. Tipkanje / sa izrazom tra�i UNAPRIJED taj izraz. + Tipkanje ? sa izrazom tra�i UNATRAG taj izraz. + Nakon naredbe tra�enja koristite n za pronalazak izraza u istom + smjeru, i N za pronalazak istog izraza ali u suprotnom smjeru. + CTRL-O vra�a kursor na prethodnu poziciju, CTRL-I na sljede�u poziciju. + + 3. Tipkanje % dok je kursor na zagradi pomi�e ga na pripadaju�u zagradu. + + 4. Za zamjenu prvog izraza staro za izraz novo :s/staro/novo + Za zamjenu svih izraza staro na cijeloj liniji :s/staro/novo/g + Za zamjenu svih izraza staro u rasponu linija #,# :#,#s/staro/novo/g + Za zamjenu u cijeloj datoteci :%s/staro/novo/g + Za potvrdu svake zamjene dodajte 'c' :%s/staro/novo/gc + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 5.1: IZVR�AVANJE VANJSKIH NAREDBI + + + ** Otipkajte :! sa vanjskom naredbom koju �elite izvr�iti. ** + + 1. Otipkajte poznatu naredbu : kako bi kursor premjestili na dno + ekrana. Time omogu�avate unos naredbe u naredbenoj liniji. + + 2. Otipkajte znak ! (uskli�nik). Tako omogu�avate + izvr�avanje naredbe vanjske ljuske. + + 3. Kao primjer otipkajte ls nakon ! te pritisnite <ENTER>. + Ovo �e prikazati sadr�aj direktorija, kao da ste u ljusci. + Koristite :!dir ako :!ls ne radi. + +NAPOMENA: Mogu�e je izvr�avati bilo koju vanjsku naredbu na ovaj na�in, + zajedno sa njenim argumentima. + +NAPOMENA: Sve : naredbe se izvr�avaju nakon �to pritisnete <ENTER> + U daljnjem tekstu to ne�e uvijek biti napomenuto. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 5.2: VI�E O SPREMANJU DATOTEKA + + ** Za spremanje promjena, otipkajte :w IME_DATOTEKE. ** + + 1. Otipkajte :!dir ili :!ls za pregled direktorija. + Ve� znate da morate pritisnuti <ENTER> na kraju tipkanja. + + 2. Izaberite ime datoteke koja jo� ne postoji, npr. TEST. + + 3. Otipkajte: :w TEST (gdje je TEST ime koje ste prethodno odabrali.) + + 4. Time �e te spremiti cijelu datoteku (Vim Tutor) pod imenom TEST. + Za provjeru, otipkajte ponovno :!dir ili :!ls + za pregled direktorija. + +NAPOMENA: Ako bi napustili Vim i ponovno ga pokrenuli sa vim TEST , + datoteka bi bila potpuna kopija ove datoteke u trenutku + kada ste je spremili. + + 5. Izbri�ite datoteku tako da otipkate (MS-DOS): :!del TEST + ili (Unix): :!rm TEST + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 5.3: SPREMANJE OZNA�ENOG TEKSTA + + + ** Kako bi spremili dio datoteke, otipkajte v pokret :w IME_DATOTEKE ** + + 1. Pomaknite kursor na ovu liniju. + + 2. Pritisnite v i pomaknite kursor pet linija ispod ove. + Primijetite promjenu, ozna�eni tekst se razlikuje od obi�nog. + + 3. Pritisnite : znak. Na dnu ekrana pojavit �e se :'<,'> . + + 4. Otipkajte w TEST , pritom je TEST ime datoteke koja jo� ne postoji. + Provjerite da zaista pi�e :'<,'>w TEST + prije nego �to pritisnite <ENTER>. + + 5. Vim �e spremiti ozna�eni tekst u TEST. Provjerite sa :!dir ili !ls . + Nemojte je jo� brisati! Koristiti �e te je u sljede�oj lekciji. + +NAPOMENA: Tipka v zapo�inje Vizualno ozna�avanje. Mo�ete pomicati kursor + unaokolo kako bi mijenjali veli�inu ozna�enog teksta. Mo�ete + koristiti i operatore. Npr, d �e izbrisati ozna�eni tekst. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 5.4: U�ITAVANJE DATOTEKA + + + ** Za ubacivanje sadr�aja datoteke, otipkajte :r IME_DATOTEKE ** + + 1. Postavite kursor iznad ove linije. + +NAPOMENA: Nakon �to izvr�ite 2. korak vidjeti �e te tekst iz Lekcije 5.3. + Stoga pomaknite kursor DOLJE kako bi ponovno vidjeli ovu lekciju. + + 2. U�itajte va�u TEST datoteku koriste�i naredbu :r TEST + gdje je TEST ime datoteke koju ste koristili u prethodnoj lekciji. + Sadr�aj u�itane datoteke je uba�en liniju ispod kursora. + + 3. Kako bi provjerili da je datoteka u�itana, vratite kursor unatrag i + primijetite dvije kopije Lekcije 5.3, originalnu i onu iz datoteke. + +NAPOMENA: Mo�ete tako�er u�itati ispis vanjske naredbe. Npr, :r !ls + �e u�itati ispis ls naredbe i postaviti ispis liniju ispod + kursora. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 5 SA�ETAK + + + 1. :!naredba izvr�ava vanjsku naredbu. + + Korisni primjeri: + (MS-DOS) (Unix) + :!dir :!ls - pregled direktorija. + :!del DATOTEKA :!rm DATOTEKA - bri�e datoteku DATOTEKA. + + 2. :w DATOTEKA zapisuje trenuta�nu datoteku na disk sa imenom DATOTEKA. + + 3. v pokret :w IME_DATOTEKE sprema vizualno ozna�ene linije u + datoteku IME_DATOTEKE. + + 4. :r IME_DATOTEKE u�itava datoteku IME_DATOTEKE sa diska i stavlja + njen sadr�aj liniju ispod kursora. + + 5. :r !dir u�itava ispis naredbe dir i postavlja sadr�aj ispisa liniju + ispod kursora. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 6.1: NAREDBA OTVORI + + + ** Pritisnite o kako bi otvorili liniju ispod kursora + i pre�li u Insert mod. ** + + 1. Pomaknite kursor na sljede�u liniju ozna�enu s --->. + + 2. Otipkajte malo o kako bi otvorili novu liniju ISPOD kursora + i pre�li u Insert mod. + + 3. Otipkajte ne�to teksta i nakon toga pritisnite <ESC> + kako bi napustili Insert mod. + +---> Nakon �to pritisnete o kursor �e pre�i u novu liniju u Insert mod. + + 4. Za otvaranje linije IZNAD kursora, otipkajte umjesto malog o veliko O , + Poku�ajte na donjoj liniji ozna�enoj s --->. + +---> Otvorite liniju iznad ove - otipkajte O dok je kursor na ovoj liniji. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 6.2: NAREDBA DODAJ + + + ** Otipkajte a za dodavanje teksta IZA kursora. ** + + 1. Pomaknite kursor na po�etak sljede�e linije ozna�ene s --->. + + 2. Tipkajte e dok se kursor ne nalazi na kraju li . + + 3. Otipkajte a (malo) kako bi dodali tekst IZA kursora. + + 4. Dopunite rije� kao �to je na liniji ispod. + Pritisnite <ESC> za izlaz iz Insert moda. + + 5. Sa e prije�ite na sljede�u nepotpunu rije� i ponovite korake 3 i 4. + +---> Ova li omogu�ava vje dodav teksta nekoj liniji. +---> Ova linija omogu�ava vje�banje dodavanja teksta nekoj liniji. + +NAPOMENA: Sa i, a, i A prelazite u isti Insert mod, jedina + razlika je u poziciji od koje �e se tekst ubacivati. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 6.3: DRUGI NA�IN MIJENJANJA + + + ** Otipkajte veliko R kako bi zamijelili vi�e od jednog znaka. ** + + 1. Pomaknite kursor na prvu sljede�u liniju ozna�enu s --->. + Pomaknite kursor na po�etak prvog xxx . + + 2. Pritisnite R i otipkajte broj koji je liniju ispod, + tako da zamijeni xxx . + + 3. Pritisnite <ESC> za izlaz iz Replace moda. + Primijetite da je ostatak linije ostao nepromjenjen. + + 5. Ponovite korake kako bi zamijenili preostali xxx. + +---> Zbrajanje: 123 plus xxx je xxx. +---> Zbrajanje: 123 plus 456 je 579. + +NAPOMENA: Replace mod je kao Insert mod, ali sa bitnom razlikom, + svaki otipkani znak bri�e ve� postoje�i. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 6.4: KOPIRANJE I LIJEPLJENJE TEKSTA + + + ** Koristite y operator za kopiranje a p za lijepljenje teksta. ** + + 1. Pomaknite kursor na liniju s ---> i postavite kursor nakon "a)". + + 2. Pokrenite Visual mod sa v i pomaknite kursor sve do ispred "prva". + + 3. Pritisnite y kako bi kopirali ozna�eni tekst. + + 4. Pomaknite kursor do kraja sljede�e linije: j$ + + 5. Pritisnite p kako bi zalijepili tekst. Onda utipkajte: druga <ESC> . + + 6. Koristite Visual mod kako bi ozna�ili " linija.", kopirajte: y , kursor + postavite na kraj sljede�e linije: j$ i ondje zalijepite tekst: p . + +---> a) ovo je prva linija. + b) + +NAPOMENA: mo�ete koristiti y kao operator; yw kopira jednu rije�. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 6.5: MIJENJANJE POSTAVKI + + + ** Postavka: naredbe tra�enja i zamijene ne razlikuju VELIKA i mala slova ** + + 1. Potra�ite 'razlika' tipkanjem: /razlika <ENTER> + Nekoliko puta ponovite pritiskanjem n . + + 2. Aktivirajte 'ic' (Ignore case) postavku: :set ic + + 3. Ponovno potra�ite 'razlika' tipkanjem n + Primijetite da su sada i RAZLIKA i Razlika prona�eni. + + 4. Aktivirajte 'hlsearch' i 'incsearch' postavke: :set hls is + + 5. Otipkajte naredbu tra�enja i primijetite razlike: /razlika <ENTER> + + 6. Za deaktiviranje ic postavke koristite: :set noic + +NAPOMENA: Za neozna�avanje prona�enih izraza otipkajte: :nohlsearch +NAPOMENA: Bez razlikovanja velikih i malih slova u samo jednoj naredbi + koristite \c u izrazu: /razlika\c <ENTER> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 6 SA�ETAK + + 1. Pritisnite o za otvaranje linije ISPOD kursora i prelazak u Insert mod. + Pritisnite O za otvaranje linije IZNAD kursora. + + 2. Pritisnite a za unos teksta IZA kursora. + Pritisnite A za unos teksta na kraju linije. + + 3. Naredba e pomi�e kursor na kraj rije�i. + + 4. Operator y kopira tekst, p ga lijepi. + + 5. Tipkanjem velikog R Vim prelazi u Replace mod dok ne pritisnete <ESC> . + + 6. Tipkanjem ":set xxx" aktivira postavku "xxx". Neke postavke su: + 'ic' 'ignorecase' ne razlikuje velika/mala slova pri tra�enju + 'is' 'incsearch' tra�i nedovr�ene izraze + 'hls' 'hlsearch' ozna�i sve prona�ene izraze + Mo�ete koristite dugo ili kratko ime postavke. + + 7. Prethodite "no" imenu postavke za deaktiviranje iste: :set noic + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 7.1: DOBIVANJE POMO�I + + + ** Koristite on-line sustav pomo�i ** + + Vim ima detaljan on-line sustav pomo�i. + Za po�etak, poku�ajte jedno od sljede�eg: + - pritisnite <HELP> tipku (ako je va�a tipkovnica ima) + - pritisnite <F1> tipku (ako je va�a tipkovnica ima) + - utipkajte :help <ENTER> + + Pro�itajte tekst u prozoru pomo�i kako bi ste se znali slu�iti istom. + Tipkanjem CTRL-W CTRL-W prelazite iz jednog prozora u drugi. + Otipkajte :q <ENTER> kako bi zatvorili prozor pomo�i. + + Prona�i �e te pomo� o bilo kojoj temi, tako da dodate upit samoj + ":help" naredbi. Poku�ajte (ne zaboravite pritisnuti <ENTER>): + + :help w + :help c_CTRL-D + :help insert-index + :help user-manual +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 7.2: PRAVLJENJE SKRIPTE + + + ** Aktivirajte Vim mogu�nosti ** + + Vim ima mnogo vi�e alata od Vi-ja, ali ve�ina njih nije aktivirana. + Kako bi mogli koristiti vi�e mogu�nosti napravite "vimrc" datoteku. + + 1. Uredite "vimrc" datoteku. Ovo ovisi o va�em sistemu: + :e ~/.vimrc za Unix + :e $VIM/_vimrc za MS-Windows + + 2. Sada u�itajte primjer sadr�aja "vimrc" datoteke: + :r $VIMRUNTIME/vimrc_example.vim + + 3. Sa�uvajte datoteku sa: + :w + + Sljede�eg puta kada pokrenete Vim, bojanje sintakse teksta biti �e + aktivirano. Sve va�e postavke mo�ete dodati u "vimrc" datoteku. + Za vi�e informacija otipkajte :help vimrc-intro + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 7.3: AUTOMATSKO DOVR�AVANJE + + + ** Dovr�avanje iz naredbene linije pomo�u CTRL-D i <TAB> ** + + 1. Provjerite da Vim nije u Vi modu: :set nocp + + 2. Pogledajte koje datoteke postoje u direktoriju: :!ls or :!dir + + 3. Otipkajte po�etak naredbe: :e + + 4. Tipkajte CTRL-D i prikazati �e se lista naredbi koje zapo�inju sa "e". + + 5. Pritisnite <TAB> i Vim �e dopuniti unos u naredbu ":edit". + + 6. Dodajte razmak i po�etak datoteke: :edit FIL + + 7. Pritisnite <TAB>. Vim �e nadopuniti ime datoteke (ako je jedinstveno). + +NAPOMENA: Mogu�e je dopuniti mnoge naredbe. Koristite CTRL-D i <TAB>. + Naro�ito je korisno za :help naredbe. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 7 SA�ETAK + + + 1. Otipkajte :help ili pritisnite <F1> ili <Help> za pomo�. + + 2. Otipkajte :help naredba kako bi dobili pomo� za naredba . + + 3. Otipkajte CTRL-W CTRL-W za prelazak u drugi prozor + + 4. Otipkajte :q kako bi zatvorili prozor pomo�i + + 5. Napravite vimrc skriptu za podizanje kako bi u nju spremali + va�e omiljene postavke. + + 6. Kada tipkate naredbu koja zapo�inje sa : + pritisnite CTRL-D kako bi vidjeli mogu�e valjane vrijednosti. + Pritisnite <TAB> kako bi odabrali jednu od njih. + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Kraj. Cilj priru�nika je da poka�e kratak pregled Vim editora, tek toliko + da omogu�i njegovo kori�tenje. Priru�nik nije potpun jer Vim ima mnogo vi�e + naredbi. Za vi�e informacija: ":help user-manual". + + Za �itanje i kori�tenje, preporu�amo: + Vim - Vi Improved - by Steve Oualline + Izdava�: New Riders + Prva knjiga potpuno posve�ena Vim-u. Vrlo korisna za po�etnike. + Sa mnogo primjera i slika. + Posjetite http://iccf-holland.org/click5.html + + Sljede�a knjiga je ne�to starija i vi�e o Vi-u nego o Vim-u, preporu�amo: + Learning the Vi Editor - by Linda Lamb + Izdava�: O'Reilly & Associates Inc. + Solidna knjiga, mo�ete saznati skoro sve �to mo�ete napraviti + u Vi-u. �esto izdanje ima ne�to informacija i o Vim-u. + + Ovaj priru�nik su napisali: Michael C. Pierce i Robert K. Ware, + Colorado School of Mines koriste�i ideje Charles Smith, + Colorado State University. E-po�ta: bware@mines.colorado.edu. + + Naknadne promjene napravio je Bram Moolenaar. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + Preveo na hrvatski: Paul B. Mahol <onemda@gmail.com> + Preinaka 1.42, Lipanj 2008 + +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/tutor/tutor.hr.utf-8 Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,972 @@ +=============================================================================== += D o b r o d o š l i u VIM p r i r u č n i k - Verzija 1.7 = +=============================================================================== + + Vim je vrlo moćan editor koji ima mnogo naredbi, previše da bi ih + se svih ovdje spomenulo. Namjena priručnika je objasniti dovoljno + naredbi kako bi početnici znatno lakše koristili ovaj svestran editor. + + Približno vrijeme potrebno za uspješan završetak priručnika je oko + 30 minuta a ovisi o tome koliko će te vremena odvojiti za vježbanje. + + UPOZORENJE: + Naredbe u ovom priručniku će promijeniti ovaj tekst. + Napravite kopiju ove datoteke kako bi ste na istoj vježbali + (ako ste pokrenuli "vimtutor" ovo je već kopija). + + Vrlo je važno primijetiti da je ovaj priručnik namijenjen za vježbanje. + Preciznije, morate izvršiti naredbe u Vim-u kako bi ste iste naučili + pravilno koristiti. Ako samo čitate tekst, zaboraviti će te naredbe! + + Ako je CapsLock uključen ISKLJUČITE ga. Pritiskajte tipku j kako + bi pomakli kursor sve dok Lekcija 1.1 ne ispuni ekran. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 1.1: POMICANJE KURSORA + + + ** Za pomicanje kursora, pritisnite h,j,k,l tipke kako je prikazano ** + ^ + k Savjet: h tipka je lijevo i pomiče kursor lijevo. + < h l > l tipka je desno i pomiče kursor desno. + j j izgleda kao strelica usmjerena dolje. + v + 1. Pomičite kursor po ekranu dok se ne naviknete na korištenje. + + 2. Držite tipku (j) pritisnutom. + Sada znate kako doći do sljedeće lekcije. + + 3. Koristeći tipku j prijeđite na sljedeću lekciju 1.2. + +NAPOMENA: Ako niste sigurni što ste zapravo pritisnuli uvijek koristite + tipku <ESC> kako bi prešli u Normal mod i onda pokušajte ponovno. + +NAPOMENA: Kursorske tipke rade isto. Korištenje hjkl tipaka je znatno + brže, nakon što se jednom naviknete na njihovo korištenje. Stvarno! + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 1.2: IZLAZ IZ VIM-a + + + !! UPOZORENJE: Prije izvođenja bilo kojeg koraka, + pročitajte cijelu lekciju!! + + 1. Pritisnite <ESC> tipku (Vim je sada u Normal modu). + + 2. Otipkajte: :q! <ENTER>. + Izlaz iz editora, GUBE se sve napravljene promjene. + + 3. Kada se pojavi ljuska, utipkajte naredbu koja je pokrenula + ovaj priručnik: vimtutor <ENTER> + + 4. Ako ste upamtili ove korake, izvršite ih redom od 1 do 3 + kako bi ponovno pokrenuli editor. + +NAPOMENA: :q! <ENTER> poništava sve promjene koje ste napravili. + U sljedećim lekcijama naučit će te kako promjene sačuvati. + + 5. Pomaknite kursor na Lekciju 1.3. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 1.3: PROMJENA TEKSTA - BRISANJE + + + ** Pritisnite x za brisanje znaka pod kursorom. ** + + 1. Pomaknite kursor na liniju označenu s --->. + + 2. Kako bi ste ispravili pogreške, pomičite kursor dok se + ne bude nalazio na slovu kojeg trebate izbrisati. + + 3. Pritisnite tipku x kako bi uklonili neželjeno slovo. + + 4. Ponovite korake od 2 do 4 dok ne ispravite sve pogreške. + +---> KKKravaa jee presskočila mmjeseccc. + + 5. Nakon što ispravite liniju, prijeđite na lekciju 1.4. + +NAPOMENA: Koristeći ovaj priručnik ne pokušavajte pamtiti + već učite primjenom. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 1.4: PROMJENA TEKSTA - UBACIVANJE + + + ** Pritisnite i za ubacivanje teksta ispred kursora. ** + + 1. Pomaknite kursor na prvu sljedeću liniju označenu s --->. + + 2. Kako bi napravili prvu liniju istovjetnoj drugoj, pomaknite + kursor na prvi znak POSLIJE kojeg će te utipkati potreban tekst. + + 3. Pritisnite i te utipkajte potrebne nadopune. + + 4. Nakon što ispravite pogrešku pritisnite <ESC> kako bi vratili Vim + u Normal mod. Ponovite korake od 2 do 4 kako bi ispravili sve pogreške. + +---> Nedje no teka od v lin. +---> Nedostaje nešto teksta od ove linije. + + 5. Prijeđite na sljedeću lekciju. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 1.5: PROMJENA TEKSTA - DODAVANJE + + + ** Pritisnite A za dodavanje teksta. ** + + 1. Pomaknite kursor na prvu sljedeću liniju označenu s --->. + Nije važno na kojem se slovu nalazi kursor na toj liniji. + + 2. Pritisnite A i napravite potrebne promjene. + + 3. Nakon što ste dodali tekst, pritisnite <ESC> + za povratak u Normal mod. + + 4. Pomaknite kursor na drugu liniju označenu s ---> + i ponovite korake 2 i 3 dok ne popravite tekst. + +---> Ima nešto teksta koji nedostaje n + Ima nešto teksta koji nedostaje na ovoj liniji. +---> Ima nešto teksta koji ne + Ima nešto teksta koji nedostaje baš ovdje. + + 5. Prijeđite na lekciju 1.6. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 1.6: PROMJENA DATOTEKE + + + ** Koristite :wq za spremanje teksta i napuštanje Vim-a. ** + + !! UPOZORENJE: Prije izvršavanja bilo kojeg koraka, pročitajte lekciju!! + + 1. Izađite iz programa kao sto ste napravili u lekciji 1.2: :q! + + 2. Iz ljuske utipkajte sljedeću naredbu: vim tutor <ENTER> + 'vim' je naredba pokretanja Vim editora, 'tutor' je ime datoteke koju + želite uređivati. Koristite datoteku koju imate ovlasti mijenjati. + + 3. Ubacite i izbrišite tekst kao što ste to napravili u lekcijama prije. + + 4. Sačuvajte promjenjeni tekst i izađite iz Vim-a: :wq <ENTER> + + 5. Ponovno pokrenite vimtutor i nastavite čitati sažetak koji sljedi. + + 6. Nakon sto pročitate gornje korake i u potpunosti ih razumijete: + izvršite ih. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 1 SAŽETAK + + + 1. Kursor se pomiče strelicama ili pomoću hjkl tipaka. + h (lijevo) j (dolje) k (gore) l (desno) + + 2. Pokretanje Vim-a iz ljuske: vim IME_DATOTEKE <ENTER> + + 3. Izlaz: <ESC> :q! <ENTER> sve promjene su izgubljene. + ILI: <ESC> :wq <ENTER> promjene su sačuvane. + + 4. Brisanje znaka na kojem se nalazi kursor: x + + 5. Ubacivanja ili dodavanje teksta: + i utipkajte tekst <ESC> unos ispred kursora + A utipkajte tekst <ESC> dodavanje na kraju linije + +NAPOMENA: Tipkanjem tipke <ESC> prebacuje Vim u Normal mod i + prekida neželjenu ili djelomično završenu naredbu. + +Nastavite čitati Lekciju 2. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 2.1: NAREDBE BRISANJA + + + ** Tipkajte dw za brisanje riječi. ** + + 1. Pritisnite <ESC> kako bi bili sigurni da je Vim u Normal modu. + + 2. Pomaknite kursor na liniju označenu s --->. + + 3. Pomaknite kursor na početak riječi koju treba izbrisati. + + 4. Otipkajte dw kako bi uklonili riječ. + +NAPOMENA: Vim će prikazati slovo d na zadnjoj liniji kad ga otipkate. + Vim čeka da otipkate w . Ako je prikazano neko drugo slovo, + krivo ste otipkali; pritisnite <ESC> i pokušajte ponovno. + +---> Neke riječi smiješno ne pripadaju na papir ovoj rečenici. + + 5. Ponovite korake 3 i 4 dok ne ispravite rečenicu; + prijeđite na Lekciju 2.2. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 2.2: JOŠ BRISANJA + + + ** Otipkajte d$ za brisanje znakova do kraja linije. ** + + 1. Pritisnite <ESC> kako bi bili + sigurni da je Vim u Normal modu. + + 2. Pomaknite kursor na liniju označenu s --->. + + 3. Pomaknite kursor do kraja ispravne rečenice + (POSLJE prve . ). + + 4. Otipkajte d$ + kako bi izbrisali sve znakove do kraja linije. + +---> Netko je utipkao kraj ove linije dvaput. kraj ove linije dvaput. + + 5. Prijeđite na Lekciju 2.3 za bolje objašnjenje. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 2.3: UKRATKO O OPERATORIMA I POKRETIMA + + + Mnogo naredbi koje mijenjaju tekst se sastoje od operatora i pokreta. + Oblik naredbe brisanja sa d operatorom je sljedeći: + + d pokret + + Pri čemu je: + d - operator brisanja. + pokret - ono na čemu će se operacija izvršavati (navedeno u nastavku). + + Kratka lista pokreta: + w - sve do početka sljedeće riječi, NE UKLJUČUJUĆI prvo slovo. + e - sve do kraja trenutačne riječi, UKLJUČUJUĆI zadnje slovo. + $ - sve do kraje linije, UKLJUČUJUĆI zadnje slovo. + + Tipkanjem de će se brisati od kursora do kraja riječi. + +NAPOMENA: Pritiskajući samo pokrete dok ste u Normal modu bez operatora će + pomicati kursor kao što je navedeno. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 2.4: KORIŠTENJE BROJANJA ZA POKRETE + + + ** Tipkanjem nekog broja prije pokreta, pokret se izvršava toliko puta. ** + + 1. Pomaknite kursor na liniju označenu s --->. + + 2. Otipkajte 2w da pomaknete kursor dvije riječi naprijed. + + 3. Otipkajte 3e da pomaknete kursor na kraj treće riječi naprijed. + + 4. Otipkajte 0 (nulu) da pomaknete kursor na početak linije. + + 5. Ponovite korake 2 i 3 s nekim drugim brojevima. + +---> Rečenica sa riječima po kojoj možete pomicati kursor. + + 6. Prijeđite na Lekciju 2.5. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 2.5: KORIŠTENJE BROJANJA ZA VEĆE BRISANJE + + + ** Tipkanje broja N s operatorom ponavlja ga N-puta. ** + + U kombinaciji operatora brisanja i pokreta spomenutih iznad + ubacujete broj prije pokreta kako bi izbrisali više znakova: + + d broj pokret + + 1. Pomaknite kursor na prvo slovo u riječi sa VELIKIM SLOVIMA + označenu s --->. + + 2. Otipkajte 2dw da izbrišete dvije riječi sa VELIKIM SLOVIMA + + 3. Ponovite korake 1 i 2 sa različitim brojevima da izbrišete + uzastopne riječi sa VELIKIM SLOVIMA sa samo jednom naredbom. + +---> ova ABCČĆ DĐE linija FGHI JK LMN OP riječi je RSŠ TUVZŽ popravljena. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 2.6: OPERIRANJE NAD LINIJAMA + + + ** Otipkajte dd za brisanje cijele linije. ** + + Zbog učestalosti brisanja cijelih linija, dizajneri Vi-a su odlučili da + je lakše brisati linije tipkanjem d dvaput. + + 1. Pomaknite kursor na drugu liniju u donjoj kitici. + 2. Otipkajte dd kako bi izbrisali liniju. + 3. Pomaknite kursor na četvrtu liniju. + 4. Otipkajte 2dd kako bi izbrisali dvije linije. + +---> 1) Ruže su crvene, +---> 2) Plaža je super, +---> 3) Ljubice su plave, +---> 4) Imam auto, +---> 5) Satovi ukazuju vrijeme, +---> 6) Šećer je sladak +---> 7) Kao i ti. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 2.7: NAREDBA PONIŠTENJA + + + ** Pritisnite u za poništenje zadnje naredbe, U za cijelu liniju. ** + + 1. Pomaknite kursor na liniju označenu s ---> i postavite kursor na prvu + pogrešku. + 2. Otipkajte x kako bi izbrisali prvi neželjeni znak. + 3. Otipkajte u kako bi poništili zadnju izvršenu naredbu. + 4. Ovaj put ispravite sve pogreške na liniji koristeći x naredbu. + 5. Sada utipkajte veliko U kako bi poništili sve promjene + na liniji, vraćajući je u prijašnje stanje. + 6. Sada utipkajte u nekoliko puta kako bi poništili U + i prijašnje naredbe. + 7. Sada utipkajte CTRL-R (držeći CTRL tipku pritisnutom dok + ne pritisnete R) nekoliko puta kako bi vratili promjene + (poništili poništenja). + +---> Poopravite pogreške nna ovvoj liniji ii pooništiteee ih. + + 8. Vrlo korisne naredbe. Prijeđite na sažetak Lekcije 2. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 2 SAŽETAK + + + 1. Brisanje od kursora do sljedeće riječi: dw + 2. Brisanje od kursora do kraja linije: d$ + 3. Brisanje cijele linije: dd + + 4. Za ponavljanje pokreta prethodite mu broj: 2w + 5. Oblik naredbe mijenjanja: + operator [broj] pokret + gdje je: + operator - što napraviti, npr. d za brisanje + [broj] - neobavezan broj ponavljanja pokreta + pokret - kretanje po tekstu po kojem se operira, + kao što je: w (riječ), $ (kraj linije), itd. + + 6. Postavljanje kursora na početak linije: 0 + + 7. Za poništenje prethodnih promjena, pritisnite: u (malo u) + Za poništenje svih promjena na liniji, pritisnite: U (veliko U) + Za vraćanja promjena, utipkajte: CTRL-R + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 3.1: NAREDBA POSTAVI + + + ** p za unos prethodno izbrisanog teksta iza kursora. ** + + 1. Pomaknite kursor na prvu sljedeću liniju označenu s --->. + + 2. Otipkajte dd kako bi izbrisali liniju i spremili je u Vim registar. + + 3. Pomaknite kursor na liniju c), IZNAD linije koju trebate unijeti. + + 4. Otipkajte p kako bi postavili liniju ispod kursora. + + 5. Ponovite korake 2 do 4 kako bi postavili sve linije u pravilnom + rasporedu. + +---> d) Možeš li i ti naučiti? +---> b) Ljubice su plave, +---> c) Inteligencija je naučena, +---> a) Ruže su crvene, + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 3.2: NAREDBA PROMJENE + + + ** Otipkajte rx za zamjenu slova ispod kursora sa slovom x . ** + + 1. Pomaknite kursor na prvu sljedeću liniju označenu s --->. + + 2. Pomaknite kursor tako da se nalazi na prvoj pogrešci. + + 3. Otipkajte r i nakon toga ispravan znak na tom mjestu. + + 4. Ponovite korake 2 i 3 sve dok prva + linije ne bude istovjetna drugoj. + +---> Kede ju ovu limija tupjana, natko je protuskao kruve tupke! +---> Kada je ova linija tipkana, netko je pritiskao krive tipke! + + 5. Prijeđite na Lekciju 3.2. + +NAPOMENA: Prisjetite da trebate učiti vježbanjem, ne pamćenjem. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 3.3: OPERATOR MIJENJANJA + + + ** Za mijenjanje do kraja riječi, istipkajte ce . ** + + 1. Pomaknite kursor na prvu sljedeću liniju označenu s --->. + + 2. Postavite kursor na a u lackmb. + + 3. Otipkajte ce i ispravite riječ (u ovom slučaju otipkajte inija ). + + 4. Pritisnite <ESC> i pomaknite kursor na sljedeći znak + kojeg je potrebno ispraviti. + + 5. Ponovite korake 3 i 4 sve dok prva rečenica ne postane istovjetna + drugoj. + +---> Ova lackmb ima nekoliko rjlcah koje trfcb mijdmlfsz. +---> Ova linija ima nekoliko riječi koje treba mijenjati. + +Primijetite da ce briše riječ i postavlja Vim u Insert mod. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 3.4: JOŠ MIJENJANJA KORIŠTENJEM c + + + ** Naredba mijenjanja se koristi sa istim pokretima kao i brisanje. ** + + 1. Operator mijenjanja se koristi na isti način kao i operator brisanja: + + c [broj] pokret + + 2. Pokreti su isti, npr: w (riječ) i $ (kraj linije). + + 3. Pomaknite kursor na prvu sljedeću liniju označenu s --->. + + 4. Pomaknite kursor na prvu pogrešku. + + 5. Otipkajte c$ i utipkajte ostatak linije tako da bude istovjetna + drugoj te pritisnite <ESC>. + +---> Kraj ove linije treba pomoć tako da izgleda kao linija ispod. +---> Kraj ove linije treba ispraviti korištenjem c$ naredbe. + +NAPOMENA: Možete koristiti Backspace za ispravljanje grešaka. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 3 SAŽETAK + + + 1. Za postavljanje teksta koji je upravo izbrisan, pritisnite p . Ovo + postavlja tekst IZA kursora (ako je pak linija izbrisana tekst se + postavlja na liniju ispod kursora). + + 2. Za promjenu znaka na kojem se nalazi kursor, pritisnite r i nakon toga + željeni znak. + + 3. Operator mijenjanja dozvoljava promjenu teksta od kursora do pozicije do + koje dovede pokret. tj. Otipkajte ce za mijenjanje od kursora do kraja + riječi, c$ za mijenjanje od kursora do kraja linije. + + 4. Oblik naredbe mijenjanja: + + c [broj] pokret + +Prijeđite na sljedeću lekciju. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 4.1: POZICIJA KURSORA I STATUS DATOTEKE + + ** CTRL-G za prikaz pozicije kursora u datoteci i status datoteke. + Pritisnite G za pomicanje kursora na neku liniju u datoteci. ** + +NAPOMENA: Pročitajte cijelu lekciju prije izvršenja bilo kojeg koraka!! + + 1. Držite Ctrl tipku pritisnutom i pritisnite g . Ukratko: CTRL-G. + Vim će ispisati poruku na dnu ekrana sa imenom datoteke i pozicijom + kursora u datoteci. Zapamtite broj linije za 3. korak. + +NAPOMENA: Možete vidjeti poziciju kursora u donjem desnom kutu ako + je postavka 'ruler' aktivirana (objašnjeno u 6. lekciji). + + 2. Pritisnite G za pomicanje kursora na kraj datoteke. + Otipkajte gg za pomicanje kursora na početak datoteke. + + 3. Otipkajte broj linije na kojoj ste bili maloprije i zatim G . Kursor + će se vratiti na liniju na kojoj se nalazio kada ste otipkali CTRL-G. + + 4. Ako ste spremni, izvršite korake od 1 do 3. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 4.2: NAREDBE TRAŽENJA + + ** Otipkajte / i nakon toga izraz kojeg želite tražiti. ** + + 1. U Normal modu otipkajte / znak. Primijetite da se znak + pojavio zajedno sa kursorom na dnu ekrana kao kod : naredbe. + + 2. Sada otipkajte 'grrrreška' <ENTER>. To je riječ koju zapravo tražite. + + 3. Za ponovno traženje istog izraza, otipkajte n . + Za traženje istog izraza ali u suprotnom smjeru, otipkajte N . + + 4. Za traženje izraza unatrag, koristite ? umjesto / . + + 5. Za povratak na prethodnu poziciju koristite CTRL-O (držite Ctrl + pritisnutim dok ne pritisnete tipku o). Ponavljajte sve dok se ne + vratite na početak. CTRL-I slično kao CTRL-O ali u suprotnom smjeru. + +---> "pogrrrreška" je pogrešno; umjesto pogrrrreška treba stajati pogreška. + +NAPOMENA: Ako se traženjem dođe do kraja datoteke nastavit će se od njenog + početka osim ako je postavka 'wrapscan' deaktivirana. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 4.3: TRAŽENJE PRIPADAJUĆE ZAGRADE + + + ** Otipkajte % za pronalazak pripadajuće ), ] ili } . ** + + 1. Postavite kursor na bilo koju od ( , [ ili { + otvorenih zagrada u liniji označenoj s --->. + + 2. Otipkajte znak % . + + 3. Kursor će se pomaknuti na pripadajuću zatvorenu zagradu. + + 4. Otipkajte % kako bi pomakli kursor na drugu pripadajuću zagradu. + + 5. Pomaknite kursor na neku od (,),[,],{ ili } i ponovite % naredbu. + +---> Linija ( testiranja običnih ( [ uglatih ] i { vitičastih } zagrada.)) + + +NAPOMENA: Vrlo korisno u ispravljanju koda sa nepripadajućim zagradama! + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 4.4: NAREDBE ZAMIJENE + + + ** Otipkajte :s/staro/novo/g da zamijenite 'staro' za 'novo'. ** + + 1. Pomaknite kursor na liniju označenu s --->. + + 2. Otipkajte :s/cvrćč/cvrč <ENTER> . Primjetite da ova naredba zamjenjuje + samo prvi "cvrćč" u liniji. + + 3. Otipkajte :s/cvrćč/cvrč/g . Dodavanje g stavke znači da će se naredba + izvršiti na cijeloj liniji, zamjenjivanjem svih "cvrćč" u liniji. + +---> i cvrćči cvrćči cvrćčak na čvoru crne smrče. + + 4. Za zamjenu svih izraza u rasponu dviju linija, + otipkajte :#,#s/staro/novo/g #,# su brojevi linije datoteke na kojima + te između njih će se izvršiti zamjena. + Otipkajte :%s/staro/novo/g za zamjenu svih izraza u cijeloj datoteci. + Otipkajte :%s/staro/novo/gc za pronalazak svakog izraza u datoteci i + potvrdu zamjene. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 4 SAŽETAK + + + 1. CTRL-G prikazuje poziciju kursora u datoteci i status datoteke. + G postavlja kursor na zadnju liniju datoteke. + broj G postavlja kursor na broj liniju. + gg postavlja kursor na prvu liniju. + + 2. Tipkanje / sa izrazom traži UNAPRIJED taj izraz. + Tipkanje ? sa izrazom traži UNATRAG taj izraz. + Nakon naredbe traženja koristite n za pronalazak izraza u istom + smjeru, i N za pronalazak istog izraza ali u suprotnom smjeru. + CTRL-O vraća kursor na prethodnu poziciju, CTRL-I na sljedeću poziciju. + + 3. Tipkanje % dok je kursor na zagradi pomiče ga na pripadajuću zagradu. + + 4. Za zamjenu prvog izraza staro za izraz novo :s/staro/novo + Za zamjenu svih izraza staro na cijeloj liniji :s/staro/novo/g + Za zamjenu svih izraza staro u rasponu linija #,# :#,#s/staro/novo/g + Za zamjenu u cijeloj datoteci :%s/staro/novo/g + Za potvrdu svake zamjene dodajte 'c' :%s/staro/novo/gc + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 5.1: IZVRŠAVANJE VANJSKIH NAREDBI + + + ** Otipkajte :! sa vanjskom naredbom koju želite izvršiti. ** + + 1. Otipkajte poznatu naredbu : kako bi kursor premjestili na dno + ekrana. Time omogućavate unos naredbe u naredbenoj liniji. + + 2. Otipkajte znak ! (uskličnik). Tako omogućavate + izvršavanje naredbe vanjske ljuske. + + 3. Kao primjer otipkajte ls nakon ! te pritisnite <ENTER>. + Ovo će prikazati sadržaj direktorija, kao da ste u ljusci. + Koristite :!dir ako :!ls ne radi. + +NAPOMENA: Moguće je izvršavati bilo koju vanjsku naredbu na ovaj način, + zajedno sa njenim argumentima. + +NAPOMENA: Sve : naredbe se izvršavaju nakon što pritisnete <ENTER> + U daljnjem tekstu to neće uvijek biti napomenuto. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 5.2: VIŠE O SPREMANJU DATOTEKA + + ** Za spremanje promjena, otipkajte :w IME_DATOTEKE. ** + + 1. Otipkajte :!dir ili :!ls za pregled direktorija. + Već znate da morate pritisnuti <ENTER> na kraju tipkanja. + + 2. Izaberite ime datoteke koja još ne postoji, npr. TEST. + + 3. Otipkajte: :w TEST (gdje je TEST ime koje ste prethodno odabrali.) + + 4. Time će te spremiti cijelu datoteku (Vim Tutor) pod imenom TEST. + Za provjeru, otipkajte ponovno :!dir ili :!ls + za pregled direktorija. + +NAPOMENA: Ako bi napustili Vim i ponovno ga pokrenuli sa vim TEST , + datoteka bi bila potpuna kopija ove datoteke u trenutku + kada ste je spremili. + + 5. Izbrišite datoteku tako da otipkate (MS-DOS): :!del TEST + ili (Unix): :!rm TEST + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 5.3: SPREMANJE OZNAČENOG TEKSTA + + + ** Kako bi spremili dio datoteke, otipkajte v pokret :w IME_DATOTEKE ** + + 1. Pomaknite kursor na ovu liniju. + + 2. Pritisnite v i pomaknite kursor pet linija ispod ove. + Primijetite promjenu, označeni tekst se razlikuje od običnog. + + 3. Pritisnite : znak. Na dnu ekrana pojavit će se :'<,'> . + + 4. Otipkajte w TEST , pritom je TEST ime datoteke koja još ne postoji. + Provjerite da zaista piše :'<,'>w TEST + prije nego što pritisnite <ENTER>. + + 5. Vim će spremiti označeni tekst u TEST. Provjerite sa :!dir ili !ls . + Nemojte je još brisati! Koristiti će te je u sljedećoj lekciji. + +NAPOMENA: Tipka v započinje Vizualno označavanje. Možete pomicati kursor + unaokolo kako bi mijenjali veličinu označenog teksta. Možete + koristiti i operatore. Npr, d će izbrisati označeni tekst. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 5.4: UČITAVANJE DATOTEKA + + + ** Za ubacivanje sadržaja datoteke, otipkajte :r IME_DATOTEKE ** + + 1. Postavite kursor iznad ove linije. + +NAPOMENA: Nakon što izvršite 2. korak vidjeti će te tekst iz Lekcije 5.3. + Stoga pomaknite kursor DOLJE kako bi ponovno vidjeli ovu lekciju. + + 2. Učitajte vašu TEST datoteku koristeći naredbu :r TEST + gdje je TEST ime datoteke koju ste koristili u prethodnoj lekciji. + Sadržaj učitane datoteke je ubačen liniju ispod kursora. + + 3. Kako bi provjerili da je datoteka učitana, vratite kursor unatrag i + primijetite dvije kopije Lekcije 5.3, originalnu i onu iz datoteke. + +NAPOMENA: Možete također učitati ispis vanjske naredbe. Npr, :r !ls + će učitati ispis ls naredbe i postaviti ispis liniju ispod + kursora. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 5 SAŽETAK + + + 1. :!naredba izvršava vanjsku naredbu. + + Korisni primjeri: + (MS-DOS) (Unix) + :!dir :!ls - pregled direktorija. + :!del DATOTEKA :!rm DATOTEKA - briše datoteku DATOTEKA. + + 2. :w DATOTEKA zapisuje trenutačnu datoteku na disk sa imenom DATOTEKA. + + 3. v pokret :w IME_DATOTEKE sprema vizualno označene linije u + datoteku IME_DATOTEKE. + + 4. :r IME_DATOTEKE učitava datoteku IME_DATOTEKE sa diska i stavlja + njen sadržaj liniju ispod kursora. + + 5. :r !dir učitava ispis naredbe dir i postavlja sadržaj ispisa liniju + ispod kursora. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 6.1: NAREDBA OTVORI + + + ** Pritisnite o kako bi otvorili liniju ispod kursora + i prešli u Insert mod. ** + + 1. Pomaknite kursor na sljedeću liniju označenu s --->. + + 2. Otipkajte malo o kako bi otvorili novu liniju ISPOD kursora + i prešli u Insert mod. + + 3. Otipkajte nešto teksta i nakon toga pritisnite <ESC> + kako bi napustili Insert mod. + +---> Nakon što pritisnete o kursor će preći u novu liniju u Insert mod. + + 4. Za otvaranje linije IZNAD kursora, otipkajte umjesto malog o veliko O , + Pokušajte na donjoj liniji označenoj s --->. + +---> Otvorite liniju iznad ove - otipkajte O dok je kursor na ovoj liniji. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 6.2: NAREDBA DODAJ + + + ** Otipkajte a za dodavanje teksta IZA kursora. ** + + 1. Pomaknite kursor na početak sljedeće linije označene s --->. + + 2. Tipkajte e dok se kursor ne nalazi na kraju li . + + 3. Otipkajte a (malo) kako bi dodali tekst IZA kursora. + + 4. Dopunite riječ kao što je na liniji ispod. + Pritisnite <ESC> za izlaz iz Insert moda. + + 5. Sa e prijeđite na sljedeću nepotpunu riječ i ponovite korake 3 i 4. + +---> Ova li omogućava vje dodav teksta nekoj liniji. +---> Ova linija omogućava vježbanje dodavanja teksta nekoj liniji. + +NAPOMENA: Sa i, a, i A prelazite u isti Insert mod, jedina + razlika je u poziciji od koje će se tekst ubacivati. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 6.3: DRUGI NAČIN MIJENJANJA + + + ** Otipkajte veliko R kako bi zamijelili više od jednog znaka. ** + + 1. Pomaknite kursor na prvu sljedeću liniju označenu s --->. + Pomaknite kursor na početak prvog xxx . + + 2. Pritisnite R i otipkajte broj koji je liniju ispod, + tako da zamijeni xxx . + + 3. Pritisnite <ESC> za izlaz iz Replace moda. + Primijetite da je ostatak linije ostao nepromjenjen. + + 5. Ponovite korake kako bi zamijenili preostali xxx. + +---> Zbrajanje: 123 plus xxx je xxx. +---> Zbrajanje: 123 plus 456 je 579. + +NAPOMENA: Replace mod je kao Insert mod, ali sa bitnom razlikom, + svaki otipkani znak briše već postojeći. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 6.4: KOPIRANJE I LIJEPLJENJE TEKSTA + + + ** Koristite y operator za kopiranje a p za lijepljenje teksta. ** + + 1. Pomaknite kursor na liniju s ---> i postavite kursor nakon "a)". + + 2. Pokrenite Visual mod sa v i pomaknite kursor sve do ispred "prva". + + 3. Pritisnite y kako bi kopirali označeni tekst. + + 4. Pomaknite kursor do kraja sljedeće linije: j$ + + 5. Pritisnite p kako bi zalijepili tekst. Onda utipkajte: druga <ESC> . + + 6. Koristite Visual mod kako bi označili " linija.", kopirajte: y , kursor + postavite na kraj sljedeće linije: j$ i ondje zalijepite tekst: p . + +---> a) ovo je prva linija. + b) + +NAPOMENA: možete koristiti y kao operator; yw kopira jednu riječ. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 6.5: MIJENJANJE POSTAVKI + + + ** Postavka: naredbe traženja i zamijene ne razlikuju VELIKA i mala slova ** + + 1. Potražite 'razlika' tipkanjem: /razlika <ENTER> + Nekoliko puta ponovite pritiskanjem n . + + 2. Aktivirajte 'ic' (Ignore case) postavku: :set ic + + 3. Ponovno potražite 'razlika' tipkanjem n + Primijetite da su sada i RAZLIKA i Razlika pronađeni. + + 4. Aktivirajte 'hlsearch' i 'incsearch' postavke: :set hls is + + 5. Otipkajte naredbu traženja i primijetite razlike: /razlika <ENTER> + + 6. Za deaktiviranje ic postavke koristite: :set noic + +NAPOMENA: Za neoznačavanje pronađenih izraza otipkajte: :nohlsearch +NAPOMENA: Bez razlikovanja velikih i malih slova u samo jednoj naredbi + koristite \c u izrazu: /razlika\c <ENTER> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 6 SAŽETAK + + 1. Pritisnite o za otvaranje linije ISPOD kursora i prelazak u Insert mod. + Pritisnite O za otvaranje linije IZNAD kursora. + + 2. Pritisnite a za unos teksta IZA kursora. + Pritisnite A za unos teksta na kraju linije. + + 3. Naredba e pomiče kursor na kraj riječi. + + 4. Operator y kopira tekst, p ga lijepi. + + 5. Tipkanjem velikog R Vim prelazi u Replace mod dok ne pritisnete <ESC> . + + 6. Tipkanjem ":set xxx" aktivira postavku "xxx". Neke postavke su: + 'ic' 'ignorecase' ne razlikuje velika/mala slova pri traženju + 'is' 'incsearch' traži nedovršene izraze + 'hls' 'hlsearch' označi sve pronađene izraze + Možete koristite dugo ili kratko ime postavke. + + 7. Prethodite "no" imenu postavke za deaktiviranje iste: :set noic + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 7.1: DOBIVANJE POMOĆI + + + ** Koristite on-line sustav pomoći ** + + Vim ima detaljan on-line sustav pomoći. + Za početak, pokušajte jedno od sljedećeg: + - pritisnite <HELP> tipku (ako je vaša tipkovnica ima) + - pritisnite <F1> tipku (ako je vaša tipkovnica ima) + - utipkajte :help <ENTER> + + Pročitajte tekst u prozoru pomoći kako bi ste se znali služiti istom. + Tipkanjem CTRL-W CTRL-W prelazite iz jednog prozora u drugi. + Otipkajte :q <ENTER> kako bi zatvorili prozor pomoći. + + Pronaći će te pomoć o bilo kojoj temi, tako da dodate upit samoj + ":help" naredbi. Pokušajte (ne zaboravite pritisnuti <ENTER>): + + :help w + :help c_CTRL-D + :help insert-index + :help user-manual +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 7.2: PRAVLJENJE SKRIPTE + + + ** Aktivirajte Vim mogućnosti ** + + Vim ima mnogo više alata od Vi-ja, ali većina njih nije aktivirana. + Kako bi mogli koristiti više mogućnosti napravite "vimrc" datoteku. + + 1. Uredite "vimrc" datoteku. Ovo ovisi o vašem sistemu: + :e ~/.vimrc za Unix + :e $VIM/_vimrc za MS-Windows + + 2. Sada učitajte primjer sadržaja "vimrc" datoteke: + :r $VIMRUNTIME/vimrc_example.vim + + 3. Sačuvajte datoteku sa: + :w + + Sljedećeg puta kada pokrenete Vim, bojanje sintakse teksta biti će + aktivirano. Sve vaše postavke možete dodati u "vimrc" datoteku. + Za više informacija otipkajte :help vimrc-intro + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 7.3: AUTOMATSKO DOVRŠAVANJE + + + ** Dovršavanje iz naredbene linije pomoću CTRL-D i <TAB> ** + + 1. Provjerite da Vim nije u Vi modu: :set nocp + + 2. Pogledajte koje datoteke postoje u direktoriju: :!ls or :!dir + + 3. Otipkajte početak naredbe: :e + + 4. Tipkajte CTRL-D i prikazati će se lista naredbi koje započinju sa "e". + + 5. Pritisnite <TAB> i Vim će dopuniti unos u naredbu ":edit". + + 6. Dodajte razmak i početak datoteke: :edit FIL + + 7. Pritisnite <TAB>. Vim će nadopuniti ime datoteke (ako je jedinstveno). + +NAPOMENA: Moguće je dopuniti mnoge naredbe. Koristite CTRL-D i <TAB>. + Naročito je korisno za :help naredbe. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lekcija 7 SAŽETAK + + + 1. Otipkajte :help ili pritisnite <F1> ili <Help> za pomoć. + + 2. Otipkajte :help naredba kako bi dobili pomoć za naredba . + + 3. Otipkajte CTRL-W CTRL-W za prelazak u drugi prozor + + 4. Otipkajte :q kako bi zatvorili prozor pomoći + + 5. Napravite vimrc skriptu za podizanje kako bi u nju spremali + vaše omiljene postavke. + + 6. Kada tipkate naredbu koja započinje sa : + pritisnite CTRL-D kako bi vidjeli moguće valjane vrijednosti. + Pritisnite <TAB> kako bi odabrali jednu od njih. + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Kraj. Cilj priručnika je da pokaže kratak pregled Vim editora, tek toliko + da omogući njegovo korištenje. Priručnik nije potpun jer Vim ima mnogo više + naredbi. Za više informacija: ":help user-manual". + + Za čitanje i korištenje, preporučamo: + Vim - Vi Improved - by Steve Oualline + Izdavač: New Riders + Prva knjiga potpuno posvećena Vim-u. Vrlo korisna za početnike. + Sa mnogo primjera i slika. + Posjetite http://iccf-holland.org/click5.html + + Sljedeća knjiga je nešto starija i više o Vi-u nego o Vim-u, preporučamo: + Learning the Vi Editor - by Linda Lamb + Izdavač: O'Reilly & Associates Inc. + Solidna knjiga, možete saznati skoro sve što možete napraviti + u Vi-u. Šesto izdanje ima nešto informacija i o Vim-u. + + Ovaj priručnik su napisali: Michael C. Pierce i Robert K. Ware, + Colorado School of Mines koristeći ideje Charles Smith, + Colorado State University. E-pošta: bware@mines.colorado.edu. + + Naknadne promjene napravio je Bram Moolenaar. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + Preveo na hrvatski: Paul B. Mahol <onemda@gmail.com> + Preinaka 1.42, Lipanj 2008 + +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/tutor/tutor.hu.cp1250 Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,823 @@ +=============================================================================== += � d v � z � l j � k a V I M T u t o r b a n - 1.5-�s verzi� === +=============================================================================== + + A Vim egy nagyon hat�kony szerkeszt�, amelnyek rengeteg utas�t�sa + van, t�l sok, hogy egy ilyen oktat�ban (tutorban), mint az itteni + mindet elmagyar�zzuk. Ez az oktat� arra t�rekszik, hogy annyit + elmagyar�zzon, amennyi el�g, hogy k�nnyed�n haszn�ljuk a Vim-et, az + �ltal�nos c�l� sz�vegszerkeszt�t. + + A feladatok megold�s�hoz 25-30 perc sz�ks�ges att�l f�gg�en, + mennyit t�lt�nk a kis�rletez�ssel. + + A leck�ben szerepl� utas�t�sok m�dos�tani fogj�k a sz�vegek. + K�sz�tsen m�solatot err�l a f�jlr�l, ha gyakorolni akar. + (Ha "vimtutor"-ral ind�totta, akkor ez m�r egy m�solat.) + + Fontos meg�rteni, hogy ez az oktat� cselekedve tan�ttat. + Ez azt jelenti, hogy �nnek aj�nlott v�grehajtania az utas�t�sokat, + hogy megfelel�en megtanulja azokat. Ha csak olvassa, elfelejti! + + Most bizonyosodjon, meg, hogy a Caps-Lock gombja NINCS lenyomva, �s + Nyomja meg megfelel� sz�m�szor a j gombot, hogy az 1.1-es + lecke teljesen a k�perny�n legyen! + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 1.1. lecke: A KURZOR MOZGAT�SA + + + ** A kurzor mozgat�s�hoz nyomja meg a h,j,k,l gombokat az al�bbi szerint. ** + ^ + k Tipp: A h billenty� van balra, �s balra mozgat + < h l > A l billenty� van jobbra, �s jobbra mozgat + j A j billenty� olyan, mint egy lefele ny�l + v + 1. Mozgassa a kurzort k�rbe az ablakban, am�g hozz� nem szokik! + + 2. Tartsa lenyomva a lefel�t (j), akkor ism�tl�dik! +---> Most tudja, hogyan mehet a k�vetkez� leck�re. + + 3. A lefel� fomb haszn�lat�val menjen a 1.2. leck�re! + +Megj: Ha nem biztos benne, mit nyomott meg, nyomja meg az <ESC>-et, hogy + norm�l m�dba ker�lj�n, �s ism�telje meg a parancsot! + +Megj: A kurzor gomboknak is m�k�dni�k kell, de a hjkl haszn�lat�val + sokkal gyorsabban tud, mozogni, ha hozz�szokik. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 1.2. lecke: BE �S KIL�P�S A VIMB�L + + + !! MEGJ: Miel�tt v�grehajtja az al�bbi l�p�seket, olvassa v�gig a leck�t !! + + 1. Nyomja meg az <ESC> gombot (hogy biztosan norm�l m�dban legyen). + + 2. �rja: :q! <ENTER>. + +---> Ezzel kil�p a szerkeszt�b�l a v�ltoz�sok MENT�SE N�LK�L. + Ha menteni szeretn� a v�ltoz�sokat �s kil�pni, �rja: + :wq <ENTER> + + 3. Amikor a shell promptot l�tja, �rja be a parancsot, amely ebbe a + tutorba hozza: + Ez val�sz�n�leg: vimtutor <ENTER> + Norm�lis esetben ezt �rn�: vim tutor.hu <ENTER> + +---> 'vim' jelenti a vimbe bel�p�st, 'tutor.hu' a f�jl, amit szerkeszteni k�v�n. + + 4. Ha megjegyezte a l�p�seket �s biztos mag�ban, hajtsa v�gre a l�p�seket + 1-t�l 3-ig, hogy kil�pjen �s visszat�rjen a szerkeszt�be. Azut�n + menjen az 1.3. leck�re. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 1.3. lecke: SZ�VEG SZERKESZT�SE - T�RL�S + + +** Norm�l m�dban nyomjon x-et, hogy a kurzor alatti karaktert t�r�lje. ** + + 1. Mozgassa a kurzort a ---> kezdet� sorra! + + 2. A hib�k kijav�t�s�hoz mozgassa a kurzort am�g a t�rlend� karakter + f�l� nem �r. + + 3. Nyomja meg az x gombot, hogy t�r�lje a nemk�v�nt karaktert. + + 4. Ism�telje a 2, 3, 4-es l�p�seket, hogy kijav�tsa a mondatot. + +---> ��szi �jjjell izziik aa galaggonya rruuh�ja. + + 5. Ha a sor helyes, ugorjon a 1.4. leck�re. + +MEGJ: A tanul�s sor�n ne memoriz�lni pr�b�ljon, hanem haszn�lat sor�n tanuljon. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 1.4. lecke: SZ�VEG SZERKESZT�SE - BESZ�R�S + + + ** Norm�l m�dban i megnyom�s�val lehet beilleszteni. ** + + 1. Az al�bbi els� ---> kezdet� sorra menjen. + + 2. Ahhoz, hogy az els�t azonoss� tegye a m�sodikkal, mozgassa a kurzort + az els� karakterre, amely UT�N sz�veget kell besz�rni. + + 3. Nyomjon i-t �s �rja be a megfelel� sz�veget. + + 4. Amikor mindent be�rt, nyomjon <ESC>-et, hogy Norm�l m�dba visszat�rjen. + Ism�telje a 2 �s 4 k�z�tti l�p�seket, hogy kijav�tsa a mondatot. + +---> Az �that� so�l hizik p�r �sz. +---> Az itt l�that� sorb�l hi�nyzik p�r r�sz. + + 5. Ha m�r begyakorolta a besz�r�st, menjen az al�bbi �sszefoglal�ra. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 1. LECKE �SSZEFOGLAL�JA + + + 1. A kurzort vagy a nyilakkal vagy a hjkl gombokkal mozgathatja. + h (balra) j (le) k (fel) l (jobbra) + + 2. A Vimbe (a $ promptt�l) �gy l�phet be: vim FILENAME <ENTER> + + 3. A Vimb�l �gy l�phet ki: <ESC> :q! <ENTER> a v�ltoztat�sok eldob�s�val. + vagy �gy: <ESC> :wq <ENTER> a v�ltoz�sok ment�s�vel. + + 4. A kurzor alatti karakter t�rl�se norm�l m�dban: x + + 5. Sz�veg besz�r�sa a kurzor ut�n norm�l m�dban: + i g�pelje be a sz�veget <ESC> + +MEGJ: Az <ESC> megnyom�sa norm�l m�dba viszi, vagy megszak�t egy nem befejezett + r�szben befejezett parancsot. + +Most folytassuk a 2. leck�vel! + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 2.1. lecke: T�RL� UTAS�T�SOK + + + ** dw t�r�l a sz� v�g�ig. ** + + 1. Nyomjon <ESC>-et, hogy megbizonyosodjon, hogy norm�l m�dban van! + + 2. Mozgassa a kurzort a ---> kezdet� sorra! + + 3. Mozgassa a kurzort arra annak a sz�nak az elej�re, amit t�r�lni szeretne. + T�r�lje az �llatokat a mondatb�l. + + 4. A sz� t�rl�s�hez �rja: dw + + MEGJ: Ha rosszul kezdte az utas�t�st csak nyomjon <ESC> gombot + a megszak�t�s�hoz. + +---> P�r sz� kutya nem uhu illik pingvin a mondatba teh�n. + + 5. Ism�telje a 3 �s 4 k�z�tti utas�t�sokat am�g kell �s ugorjon a 2.2 leck�re! + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 2.2. lecke: M�G T�BB T�RL� UTAS�T�S + + + ** d$ be�r�s�val a sor v�g�ig t�r�lhet. ** + + 1. Nyomjon <ESC>-et, hogy megbizonyosodjon, hogy norm�l m�dban van! + + 2. Mozgassa a kurzort a ---> kezdet� sorra! + + 3. Mozgassa a kurzort a helyes sor v�g�re (az els� . UT�N)! + + 4. d$ beg�pel�s�velt�r�lje a sor v�g�t! + +---> Valaki a sor v�g�t k�tszer g�pelte be. k�tszer g�pelte be. + + + 5. Menjen a 2.3. leck�re, hogy meg�rtse mi t�rt�nt! + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 2.3. lecke: UTAS�T�SOKR�L �S OBJEKTUMOKR�L + + + A d (delete=t�rl�s) utas�t�s form�ja a k�vetkez�: + + [sz�m] d objektum VAGY d [sz�m] objektum + Ahol: + sz�m - h�nyszor hajt�djon v�gre a parancs (elhagyhat�, alap�rt�k=1). + d - a t�rl�s (delete) utas�t�s. + objektum - amin a parancsnak teljes�lnie kell (al�bb list�zva). + + Objektumok r�vid list�ja: + w - a kurzort�l a sz� v�g�ig, bele�rtve a sz�k�zt. + e - a kurzort�l a sz� v�g�ig, NEM bele�rtve a sz�k�zt. + $ - a kurzort�l a sor v�g�ig. + +MEGJ: V�llalkoz�bbak kedv��rt, csup�n az objektum beg�pel�s�vel parancs n�lk�l + a kurzor oda ker�l, amit az objektumlista megad. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 2.4. lecke: EGY KIV�TEL A 'PARANCSOBJEKTUM' AL�L + + + ** dd be�r�s�val t�r�lheti az eg�sz sort. ** + + A teljes sor t�rl�s�nek gyakoris�ga miatt a Vi tervez�i elhat�rozt�k, + hogy k�nnyebb lenne csup�n a d-t k�tszer megnyomni, hogy egy sort t�r�lj�nk. + + 1. Mozgassa a kurzort az al�bbi kifejez�sek m�sodik sor�ra! + 2. dd beg�pel�s�vel t�r�lje a sort! + 3. Menjen a 4. (eredetileg 5.) sorra! + 4. 2dd (ugyeb�r sz�m-utas�t�s-objektum) beg�pel�s�vel t�r�lj�n k�t sort! + + 1) Alv� szegek a j�ghideg homokban, + 2) - kezdi a k�lt� - + 3) Plak�tmag�nyban �z� �jjelek. + 4) Pingvinek ne f�ljetek, + 5) T�volr�l egy vaku villant, + 6) �gve hagytad a folyos�n a villanyt. + 7) Ma ontj�k v�remet. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 2.5. lecke: A VISSZAVON�S (UNDO) PARANCS + + +** u g�pel�s�vel visszavonhat� az utols� parancs, U az eg�sz sort helyre�ll�tja. ** + + 1. Menj�nk az al�bbi ---> kezdet� sor els� hib�j�ra! + 2. x lenyom�s�val t�r�lje az els� felesleges karaktert! + 3. u megnyom�s�val vonja vissza az utols�nak v�grehajtott utas�t�st! + 4. M�sodj�ra jav�tson ki minden hib�t a sorben az x utas�t�ssal! + 5. Most nagy U -val �ll�tsa vissza a sor eredeti �llapot�t! + 6. Nyomja meg az u gombot p�rszor, hogy az U �s sz el�z� utas�t�sokat + vissza�ll�tsa! + 7. CTRL-R (CTRL gomb lenyom�sa mellett �ss�n R-t) p�rszor csin�lja �jra a + visszavont parancsokat (redo)! + +---> Jav��tsd a hhib�kaat ebbben a sooorban majd �ll�tsa visszaaa az eredetit. + + 8. Ezek nagyon hasznos parancsok. Most ugarjon a 2. lecke �sszefoglal�j�ra. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 2. LECKE �SSZEFOGLAL�JA + + + 1. T�rl�s a kurzort�l a sz� v�g�ig: dw + + 2. T�rl�s a kurzort�l a sz� v�g�ig: d$ + + 3. Eg�sz sor t�rl�se: dd + + 4. Egy utas�t�s alakja norm�l m�dban: + + [sz�m] utas�t�s objektum VAGY utas�t�s [sz�m] objektum + ahol: + sz�m - h�nyszor ism�telj�k a parancsot + utas�t�s - mit tegy�nk, pl. d a t�rl�skor + objektum - mire hasson az utas�t�s, p�ld�ul w (sz�=word), + $ (a sor v�g�ig), stb. + + 5. Az el�z� tett visszavon�sa (undo): u (kis u) + A sor �sszes v�ltoz�s�nak visszavon�sa: U (nagy U) + Visszavon�sok visszavon�sa: CTRL-R + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 3.1. lecke: A PUT PARANCS + + + ** p le�t�s�vel az utols�nak t�r�ltet a kurzor ut�n illeszhetj�k. ** + + 1. Mozgassuk a kurzort az al�bbi sorok els� sor�ra. + + 2. dd le�t�s�vel t�r�lj�k a sort �s elt�rol�dik a Vim puffer�ben. + + 3. Mozgassuk a kurzort AF�L� a sor f�l�, ahov� mozgatni szeretn�nk a + t�r�lt sort. + + 4. Norm�l m�dban �rjunk p bet�t a t�r�lt sor beilleszt�s�hez. + + 5. Folytassuk a 2-4. utas�t�sokkal hogy a helyes sorrendet kapjuk. + + d) Can you learn too? + b) Violets are blue, + c) Intelligence is learned, + a) Roses are red, + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 3.2. lecke: A REPLACE PARANCS + + +** r �s a karakterek le�t�s�vel a kurzor alatti karaktert megv�ltoztatjuk. ** + + 1. Mozgassuk a kurzort az els� ---> kezdet� sorra! + + 2. Mozgassuk a kurzort az els� hiba f�l�! + + 3. r majd a k�v�nt karakter le�t�s�vel v�ltoztassuk meg a hib�sat! + + 4. A 2. �s 3. l�p�sekkel jav�tsuk az �sszes hib�t! + +---> Whan this lime was tuoed in, someone presswd some wrojg keys! +---> When this line was typed in, someone pressed some wrong keys! + + 5. Menj�nk a 3.2. leck�re! + +MEGJ: Eml�kezzen, hogy nem memoriz�l�ssal, hanem gyakorl�ssal tanuljon. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 3.3. lecke: A CHANGE PARANCS + + + ** A sz� egy r�sz�nek megv�ltoztat�s�hoz �rjuk: cw . ** + + 1. Mozgassuk a kurzort az els� ---> kezdet� sorra! + + 2. Vigye a kurzort a Ezen sz� z bet�je f�l�! + + 3. cw �s a helyes sz�r�sz (itt 'bben') be�r�s�val jav�tsa a sz�t! + + 4. <ESC> lenyom�sa ut�n a k�vetkez� hib�ra ugorjon (az els� cser�lend� + karakterre)! + + 5. A 3. �s 4. l�p�sek ism�tl�s�vel az els� mondatot tegye a m�sodikkal + azonoss�! + +---> Ezen a sorrrrr p�r sz�ra meg kell v�ltozzanak a change utask�r�s�. +---> Ebben a sorban p�r sz�t meg kell v�ltoztatni a change utas�t�ssal. + +Vegy�k �szre, hogy a cw nem csak a sz�t �rja �t, hanem besz�r� +(insert) m�dba v�lt. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 3.4. lecke: T�BBF�LE V�LTOZTAT�S c-VEL + + + ** A c utas�t�s haszn�lhat� ugyanazokkal az objektumokkal mint a t�rl�s ** + + 1. A change utas�t�s a t�rl�ssel azonosan viselkedik. A forma: + + [sz�m] c objektum OR c [sz�m] objektum + + 2. Az objektumok is azonosak, pl. w (sz�), $ (sorv�g), stb. + + 3. Mozgassuk a kurzort az els� ---> kezdet� sorra! + + 4. Menj�nk az els� hib�ra! + + 5. c$ beg�pel�s�vel a sorv�geket tegy�k azonoss� �s nyomjunk <ESC>-et! + +---> Ennek a sornak a v�ge kiigaz�t�sra szorul, hogy megegyezzen a m�sodikkal. +---> Ennek a sornak a v�ge a c$ paranccsal v�ltoztathat� meg. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 3. LECKE �SSZEFOGLAL�JA + + + 1. A m�r t�r�lt sort beilleszt�s�hez nyomjunk p-t. Ez a t�r�lt sz�veget + a kurzor UT�N helyezi (ha sor ker�lt t�rl�sre, a kurzor allatti sorba). + + 2. A kurzor alatti karakter �t�r�s�hoz az r-et �s azt a karaktert + nyomjuk, amellyel az eredetit fel�l szeretn�nk �rni. + + 3. A v�ltoztat�s (c) utas�t�s a karaktert�l az objektum v�g�ig + v�ltoztatja meg az objektumot. P�ld�ul a cw a kurzort�l a sz� v�g�ig, + a c$ a sor v�g�ig. + + 4. A v�ltoztat�s form�tuma: + + [sz�m] c objektum VAGY c [sz�m] objektum + +Ugorjunk a k�vetkez� leck�re! + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 4.1. lecke: HELY �S F�JL�LLAPOT + + + ** CTRL-g megnyom�s�val megn�zhetj�k a hely�nket a f�jlban �s a f�jl �llapot�t. + SHIFT-G le�t�s�vel a f�jl adott sor�ra ugorhatunk. ** + + Megj: Olvassuk el az eg�sz leck�t a l�p�sek v�grehajt�sa el�tt!! + + 1. Tartsuk nyomva a Ctrl gombot �s nyomjunk g-t. Az �llapotsor + megjelenik a lap alj�n a f�jln�vvel �s az aktu�lis sor sorsz�m�val. + Jegyezz�k meg a sorsz�mot a 3. l�p�shez! + + 2. Nyomjunk Shift-G-t a lap alj�ra ugr�shoz! + + 3. �ss�k be az eredeti sor sz�m�t, majd �ss�nk shift-G-t! Ezzel + visszajutunk az eredeti sorra ahol Ctrl-g-t nyomtunk. + (A be�rt sz�m NEM fog megjelenni a k�perny�n.) + + 4. Ha megjegyezte a feladatot, hajtsa v�gre az 1-3. l�p�seket! + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 4.2. lecke: A SEARCH PARANCS + + + ** / majd a k�v�nt kifejez�s be�r�s�val kereshetj�k meg a kifejez�st. ** + + 1. Norm�l m�dban �ss�nk / karaktert! Ez �s a kurzor megjelenik + a k�perny� alj�n, ahogy a : utas�t�s is. + + 2. �rjuk be: 'hiibaa' <ENTER>! Ez az a sz� amit keres�nk. + + 3. A kifejez�s �jabb keres�s�hez �ss�k le egyszer�en: n . + A kifejez�s ellenkez� ir�nyban t�rt�n� keres�s�hez ezt �ss�k be: Shift-N . + + 4. Ha visszafel� szeretne keresni, akkor ? kell a ! helyett. + +---> "hiibaa" nem a helyes m�dja a hiba le�r�s�nak; a hiibaa egy hiba. + +Megj: Ha a keres�s el�ri a f�jl v�g�t, akkor az elej�n kezdi. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 4.3. lecke: Z�R�JELEK P�RJ�NAK KERES�SE + + + ** % le�t�s�vel megtal�ljuk a ),], vagy } p�rj�t. ** + + 1. Helyezze a kurzort valamelyik (, [, vagy { z�r�jelre a ---> kezdet� + sorban! + + 2. �ss�n % karaktert! + + 3. A kurzor a z�r�jel p�rj�ra fog ugrani. + + 4. % le�t�s�vel visszaugrik az eredeti z�r�jelre. + +---> Ez ( egy tesztsor (-ekkel, [-ekkel ] �s {-ekkel } a sorban. )) + +Megj: Ez nagyon hasznos, ha olyan programot debugolunk, amelyben a + z�r�jelek nem p�rosak! + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 4.4. lecke: A HIB�K KIJAV�T�S�NAK EGY M�DJA + + + ** :s/�j/r�gi/g beg�pel�s�vel az '�j'-ra cser�lj�k a 'r�gi'-t. ** + + 1. Menj�nk a ---> kezdet� sorra! + + 2. �rjuk be: :s/eggy/egy <ENTER> . Ekkor csak az els� v�ltozik meg a + sorban. + + 3. Most ezt �rjuk: :s/eggy/egg/g amely glob�lisan helyettes�t + a sorban. + Ez a sorban minden el�fordul�st helyettes�t. + +---> eggy hegy meggy, szembe j�n eggy m�sik heggy. + + 4. K�t sor k�z�tt a karaktersor minden el�fordul�s�nak helyettes�t�se: + :#,#s/r�gi/�j/g ahol #,# a k�t sor sorsz�ma. + :%s/r�gi/�j/g a f�jlbeli �sszes el�fordul�s helyettes�t�se. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 4. LECKE �SSZEFOGLAL�JA + + + 1. Ctrl-g ki�rja az kurzor hely�t a f�jlban �s a f�jl �llapot�t. + Shift-G a f�jl v�g�re megy, gg az elej�re. Egy sz�m ut�n + Shift-G az adott sz�m� sorra ugrik. + + 2. / ut�n egy kifejez�s EL�REFELE keresi a kifejez�st. + 2. ? ut�n egy kifejez�s VISSZAFELE keresi a kifejez�st. + Egy keres�s ut�n az n a k�vetkez� el�fordul�st keresi azonos ir�nyban + Shift-N az ellenkez� ir�nyban keres. + + 3. % beg�pel�s�vel, ha (,),[,],{, vagy } karakteren vagyunk a z�r�jel + p�rj�ra ugrik. + + 4. az els� r�gi helyettes�t�se �jjal a sorban :s/r�gi/�j + az �sszes r�gi helyettes�t�se �jjal a sorban :s/r�gi/�j/g + k�t sor k�z�tti kifejez�sekre :#,#s/r�gi/�j/g + # hely�n az aktu�lis sor (.) �s az utols� ($) is �llhat :.,$/r�gi/�j/g + A f�jlbeli �sszes el�fordul�s helyettes�t�se :%s/r�gi/�j/g + Mindenkori meger�s�t�sre v�r 'c' hat�s�ra :%s/r�gi/�j/gc + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 5.1. lecke: K�LS� PARANCS V�GREHAJT�SA + + + ** :! ut�n k�ls� parancsot �rva v�grehajt�dik a parancs. ** + + 1. �rjuk be az ismer�s : parancsot, hogy a kurzort a k�perny� alj�ra + helyezz�k. Ez lehet�v� teszi egy parancs be�r�s�t. + + 2. ! (felki�lt�jel) be�r�s�val tegy�k lehet�v� k�ls� h�j (shell)-parancs + v�grehajt�s�t. + + 3. �rjunk p�ld�ul ls parancsot a ! ut�n majd �ss�nk <ENTER>-t. Ez ki + fogja list�zni a k�nyvt�runkat ugyan�gy, mintha a shell promptn�l + lenn�nk. Vagy �rja ezt :!dir ha az ls nem m�k�dik. + +Megj: Ilym�don b�rmely k�ls� utas�t�s v�grehajthat�. + +Megj: Minden : parancs ut�n <ENTER>-t kell �tni. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 5.2. lecke: B�VEBBEN A F�JLOK �R�S�R�L + + + ** A f�jlok v�ltoz�sait �gy �rhatjuk ki :w F�JLN�V. ** + + 1. :!dir vagy :!ls be�r�s�val list�zzuk a k�nyvt�runkat! + �n m�r tudja, hogy <ENTER>-t kell �tnie ut�na. + + 2. V�lasszon egy f�jlnevet, amely m�g nem l�tezik pl. TESZT! + + 3. �rja: :w TESZT (ahol TESZT a v�lasztott f�jln�v)! + + 4. Ez elmenti a teljes f�jlt (a Vim Tutort) TESZT n�ven. + Ellen�rz�sk�pp �rjuk ism�t :!dir hogy l�ssuk a k�nyvt�rat! + (Felfel� gombbal : ut�n az el�z� utas�t�sok visszahozhat�ak.) + +Megj: Ha �n kil�pne a Vimb�l �s �s visszat�rne a TESZT f�jln�vvel, akkor a + f�jl a tutor ment�skori pontos m�solata lenne. + + 5. T�vol�tsa el a f�jlt (MS-DOS): :!del TESZT + vagy (Unix): :!rm TESZT + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 5.3. lecke: EGY KIV�LASZTOTT R�SZ KI�R�SA + + + ** A f�jl egy r�sz�nek ki�r�s�hoz �rja :#,# w F�JLN�V ** + + 1. :!dir vagy :!ls be�r�s�val list�zza a k�nyvt�rat, �s v�lasszon egy + megfelel� f�jlnevet, pl. TESZT. + + 2. Mozgassa a kurzort ennek az oldalnak a tetej�re, �s nyomjon + Ctrl-g-t, hogy megtudja a sorsz�mot. JEGYEZZE MEG A SZ�MOT! + + 3. Most menjen a lap alj�ra, �s �sse be ism�t: Ctrl-g. EZT A SZ�MOT + IS JEGYEZZE MEG! + + 4. Ha csak ezt a r�sz�t szeretn� menteni a f�jlnak, �rja :#,# w TESZT + ahol #,# a k�t sorsz�m, amit megjegyzett, TESZT az �n f�jlneve. + + 5. Ism�t n�zze meg, hogy a f�jl ott van (:!dir) de NE t�r�lje. + + 6. Vimben l�tezik egy m�sik lehet�s�g: nyomja meg a Shift-V gombp�rt + az els� menteni k�v�nt soron, majd menjen le az utols�ra, ezut�n + �rja :w TESZT2 Ekkor a TESZT2 f�jlba ker�l a kijel�lt r�sz. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 5.4. lecke: RETRIEVING AND MERGING FILES + + + ** Egy f�jl tartalm�nak beilleszt�s�hez �rja :r F�JLN�V ** + + 1. :!dir be�r�s�val n�zze meg, hogy az �n TESZT f�jlja l�tezik m�g. + + 2. Helyezze a kurzort ennek az oldalnak a tetej�re. + +MEGJ: A 3. l�p�s ut�n az 5.3. leck�t fogja l�tni. Azut�n LEFEL� indulva + keresse meg ism�t ezt a leck�t. + + 3. Most sz�rja be a TESZT nev� f�jlt a :r TESZT paranccsal, ahol + TESZT az �n f�jlj�nak a neve. + +MEGJ: A f�jl, amit beillesztett a kurzora alatt helyezkedik el. + + 4. Hogy ellen�rizz�k, hogy a f�jlt t�nyleg beillsztett�k, menjen + vissza, �s n�zze meg, hogy k�tszer szerepel az 5.3. lecke! Az eredeti + mellett a f�jlb�l bem�solt is ott van. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 5. LECKE �SSZEFOGLAL�JA + + + 1. :!parancs v�grehajt egy k�ls� utas�t�st. + + P�r hasznos p�lda: + (MS-DOS) (Unix) + :!dir :!ls - k�nyvt�rlista ki�r�sa. + :!del F�JLN�V :!rm F�JLN�V - F�JLN�V nev� f�jl t�rl�se. + + 2. :w F�JLN�V ki�rja a jelenlegi Vim-f�jlt a lemezre F�JN�V n�ven. + + 3. :#,#w F�JLN�V ki�rja a k�t sorsz�m (#) k�z�tti sorokat F�JLN�V-be + M�sik lehet�s�g, hogy a kezd�sorn�l Ctrl-v-t nyom lemegy az utols� + sorra, majd ezt �ti be :w F�JLN�V + + 4. :r F�JLN�V beolvassa a F�JLN�V f�jlt �s behelyezi a jelenlegi f�jlba + a kurzorpozici� ut�ni sorba. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 6.1. lecke: A OPEN PARANCS + + +** o be�r�s�val nyithat egy �j sort a kurzor alatt �s v�lthat besz�r� m�dba ** + + 1. Mozgassuk a kurzort a ---> kezdet� sorra. + + 2. o (kicsi) be�r�s�val nyisson egy sort a kurzor ALATT! Ekkor + automatikusan besz�r� (insert) m�dba ker�l. + + 3. M�solja le a ---> jel� sort �s <ESC> megnyom�s�val l�pjen ki + a besz�r� m�db�l. + +---> Az o lenyom�sa ut�n a kurzor a k�vetkez� sor elej�n �ll besz�r� m�dban. + + 4. A kurzor FELETTI for megnyit�s�hoz egyzser�en a nagy O bet�t �rjon +kicsi helyett. Pr�b�lja ki a k�vetkez� soron! +Nyisson egy �j sort efelett Shift-O megnyom�s�val, mialatt a kurzor +ezen a soron �ll. + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 6.2. lecke: AZ APPEND PARANCS + + + ** a lenyom�s�val a kuror UT�N sz�rhatunk sz�veget. ** + + 1. Mozgassuk a kurzort a k�vetkez� ---> kezdet� sor v�g�re �gy, + hogy norm�l m�dban $ �r be. + + 2. a (kicsi) le�t�s�vel sz�veget sz�rhat be AM�G� a karakter m�g�, + amelyen a kurzor �ll. + (A nagy A az eg�sz sor v�g�re �rja a sz�veget.) + +Megj: A Vimben a sor legv�g�re is lehet �llni, azonba ez el�dj�ben + a Vi-ban nem lehets�ges, ez�rt abban az a n�lk�l el�g k�r�lm�nyes + a sor v�g�hez sz�veget �rni. + + 3. Eg�sz�tse ki az els� sort. Vegye �szre, hogy az a utas�t�s (append) + teljesen egyezik az i-vel (insert) csup�n a besz�rt sz�veg helye + k�l�nb�zik. + +---> Ez a sor lehet�v� teszi �nnek, hogy gyakorolja +---> Ez a sor lehet�v� teszi �nnek, hogy gyakorolja a sor v�g�re beilleszt�st. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 6.3. lecke: AZ �T�R�S M�SIK V�LTOZATA + + + ** Nagy R be�r�s�val �rhat fel�l t�bb mint egy karaktert. ** + + 1. Mozgassuk a kurzort az els� ---> kezdet� sorra! + + 2. Place the cursor at the beginning of the first word that is different + from the second line marked ---> (the word 'last'). + + 3. Now type R and replace the remainder of the text on the first line by + typing over the old text to make the first line the same as the second. + +---> To make the first line the same as the last on this page use the keys. +---> To make the first line the same as the second, type R and the new text. + + 4. Note that when you press <ESC> to exit, any unaltered text remains. + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 6.4. lecke: BE�LL�T�SOK + +** �ll�tsuk be, hogy a keres�s �s a helyettes�t�s ne f�ggj�n kis/NAGYbet�kt�l ** + + 1. Keress�k meg az 'ignore'-t az be�rva: + /ignore + Ezt ism�telj�k t�bbsz�r az n billenty�vel + + 2. �ll�tsuk be az 'ic' (Ignore case) lehet�s�get �gy: + :set ic + + 3. Most keress�nk ism�t az 'ignore'-ra n-nel + Ism�telj�k meg t�bbsz�r a keres�st: n + + 4. �ll�tsuk be a 'hlsearch' �s 'incsearch' lehet�s�geket: + :set hls is + + 5. Most ism�t �rjuk be a keres�parancsot, �s l�ssuk mi t�rt�nik: + /ignore + + 6. A kiemel�st sz�ntess�k meg al�bbi utas�t�sok egyik�vel: + :set nohls vagy :nohlsearch +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 6. LECKE �SSZEFOGLAL�JA + + + 1. Typing o opens a line BELOW the cursor and places the cursor on the open + line in Insert mode. + Typing a capital O opens the line ABOVE the line the cursor is on. + + 2. Type an a to insert text AFTER the character the cursor is on. + Typing a capital A automatically appends text to the end of the line. + + 3. Typing a capital R enters Replace mode until <ESC> is pressed to exit. + + 4. Typing ":set xxx" sets the option "xxx" + + + + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 7. lecke: ON-LINE HELP PARANCSOK + + + ** Az online s�g�rendszer haszn�lata ** + + A Vim r�szletes s�g�val rendelkezik. Indul�shoz a k�vetkez�k egyik�t + tegye: + - nyomja meg a <HELP> gombot (ha van ilyen) + - nyomja meg az <F1> gombot (ha van ilyen) + - �rja be: :help <ENTER> + + :q <ENTER> be�r�s�val z�rhatja be a s�g�ablakot. + + Majdnem minden t�mak�rr�l tal�lhat s�g�t, argumentum megad�s�val + ":help" utas�t�s . Pr�b�lja az al�bbiakat ki (<ENTER>-t ne felejts�k): + + :help w + :help c_<T + :help insert-index + :help user-manual + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 8. lecke: IND�T�SZKRIPT �R�SA + + ** A Vim lehet�s�geinek be�ll�t�sa ** + + A Vim rengeteg lehet�s�ggel rendelkezik a Vi-hoz k�pest, de a legt�bb + alapb�l el�rhetetlen. Ahhoz, hogy alapb�l t�bb lehet�s�g�nk legyen k�sz�ten�nk + kell egy "vimrc" f�jlt. + + 1. Kezdj�k el szerkeszteni a "vimrc" f�jlt, ennek m�dja: + :edit ~/.vimrc Unixon, Linuxon + :edit $VIM/_vimrc MS-Windowson + + 2. Most sz�rjuk be a p�lda "vimrc" f�jl sz�veg�t: + + :read $VIMRUNTIME/vimrc_example.vim + + 3. �rjuk ki a f�jlt: + + :write + + Legk�zelebb a Vim szintaxiskiemel�ssel indul. + Hozz�adhatja kedvenc be�ll�t�sait ehhez a "vimrc" f�jlhoz. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + Itt v�gz�dik a Vim oktat�, melynek a sz�nd�ka egy r�vid �ttekint�s a + Vimr�l, amely el�g ahhoz, hogy el�g k�nnyed�n kezelj�k a szerkeszt�t. + T�vol van a teljess�gt�l, mivel a Vimnek sz�mtalan tov�bbi utas�t�sa + van. Ezut�n a felhaszn�l�i k�zik�nyvet �rdemes elolvasni az angolul + tud�knak: ":help user-manual". (egyel�re nem tud magyarul) + + Tov�bbi magyar olvasnival�k �rhet�ek el az al�bbi oldalr�l. + http://ubuntu.hu/index.php?title=Vim + + For further reading and studying, this book is recommended: + Vim - Vi Improved - by Steve Oualline + Publisher: New Riders + The first book completely dedicated to Vim. Especially useful for beginners. + There are many examples and pictures. + See http://iccf-holland.org/click5.html + + This book is older and more about Vi than Vim, but also recommended: + Learning the Vi Editor - by Linda Lamb + Publisher: O'Reilly & Associates Inc. + It is a good book to get to know almost anything you want to do with Vi. + The sixth edition also includes information on Vim. + + This tutorial was written by Michael C. Pierce and Robert K. Ware, + Colorado School of Mines using ideas supplied by Charles Smith, + Colorado State University. E-mail: bware@mines.colorado.edu. + + Modified for Vim by Bram Moolenaar.
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/tutor/tutor.it.utf-8 Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,967 @@ +=============================================================================== += Benvenuto alla G u i d a all'Editor V I M - Versione 1.7 = +=============================================================================== + + Vim è un Editor molto potente ed ha parecchi comandi, troppi per + spiegarli tutti in una guida come questa. Questa guida serve a + descrivere quei comandi che ti permettono di usare facilmente + Vim come Editor di uso generale. + + Il tempo necessario per completare la guida è circa 25-30 minuti, + a seconda di quanto tempo dedichi alla sperimentazione. + + ATTENZIONE! + I comandi nelle lezioni modificano questo testo. Fai una copia di questo + file per esercitarti (se hai usato "vimtutor", stai già usando una copia). + + E' importante non scordare che questa guida vuole insegnare tramite + l'uso. Questo vuol dire che devi eseguire i comandi per impararli + davvero. Se leggi il testo e basta, dimenticherai presto i comandi! + + Adesso, assicurati che il tasto BLOCCA-MAIUSCOLO non sia schiacciato + e premi il tasto j tanto da muovere il cursore fino a che la + Lezione 1.1 riempia completamente lo schermo. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 1.1: MOVIMENTI DEL CURSORE + + + ** Per muovere il cursore, premi i tasti h,j,k,l come indicato. ** + ^ + k NOTA: Il tasto h è a sinistra e muove a sinistra. + < h l > Il tasto l è a destra e muove a destra. + j Il tasto j ricorda una freccia in giù. + v + 1. Muovi il cursore sullo schermo finché non ti senti a tuo agio. + + 2. Tieni schiacciato il tasto "giù" (j) finché non si ripete il movimento. + Adesso sai come arrivare fino alla lezione seguente. + + 3. Usando il tasto "giù" spostati alla Lezione 1.2. + +NOTA: Quando non sei sicuro del tasto che hai premuto, premi <ESC> per andare + in Modalità Normale [Normal Mode]. Poi ri-immetti il comando che volevi. + +NOTA: I tasti con le frecce fanno lo stesso servizio. Ma usando hjkl riesci + a muoverti molto più rapidamente, dopo che ci si abitua. Davvero! + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 1.2: USCIRE DA VIM + + + !! NOTA: Prima di eseguire quanto richiesto, leggi la Lezione per intero!! + + 1. Premi il tasto <ESC> (per assicurarti di essere in Modalità Normale). + + 2. Batti: :q! <INVIO>. + Così esci dall'Editor SCARTANDO qualsiasi modifica fatta. + + 3. Quando vedi il PROMPT della Shell, batti il comando con cui sei arrivato + qui. Sarebbe: vimtutor <INVIO> + + 4. Se hai memorizzato questi comandi e ti senti pronto, esegui i passi + da 1 a 3 per uscire e rientrare nell'Editor. + +NOTA: :q! <INVIO> SCARTA qualsiasi modifica fatta. In una delle prossime + lezioni imparerai come salvare un file che hai modificato. + + 5. Muovi in giù il cursore per passare alla lezione 1.3. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 1.3: MODIFICA DI TESTI - CANCELLAZIONE + + + ** Premere x per cancellare il carattere sotto al cursore ** + + 1. Muovi il cursore alla linea più sotto, indicata da --->. + + 2. Per correggere errori, muovi il cursore fino a posizionarlo sopra il + carattere da cancellare. + + 3. Premi il tasto x per cancellare il carattere sbagliato. + + 4. Ripeti i passi da 2 a 4 finché la frase è corretta. + +---> La mmucca saltòò finnoo allaa lunnna. + + 5. Ora che la linea è corretta, vai alla Lezione 1.4 + +NOTA: Mentre segui questa guida, non cercare di imparare a memoria, + ma impara facendo pratica. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 1.4: MODIFICA DI TESTI - INSERIMENTO + + + ** Premere i per inserire testo. ** + + 1. Muovi il cursore alla prima linea qui sotto, indicata da --->. + + 2. Per rendere la prima linea uguale alla seconda, muovi il cursore sopra + il primo carattere DOPO la posizione in cui il testo va inserito. + + 3. Premi i e batti le aggiunte opportune. + + 4. Quando un errore è corretto, premi <ESC> per tornare in Modalità Normale. + Ripeti i passi da 2 a 4 fino a completare la correzione della frase. + +---> C'era del tsto mncnt questa . +---> C'era del testo mancante da questa linea. + + 5. Quando sei a tuo agio nell'inserimento di testo vai alla lezione 1.5. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 1.5: MODIFICA DI TESTI - AGGIUNTA + + + ** Premere A per aggiungere testo a fine linea. ** + + 1. Muovi il cursore alla prima linea qui sotto, indicata da --->. + Non importa dove è posizionato il cursore sulla linea stessa. + + 2. Batti A e inserisci le necessarie aggiunte. + + 3. Alla fine della aggiunta premi <ESC> per tornare in modalità Normale. + + 4. Muovi il cursore alla seconda linea indicata ---> e ripeti + i passi 2 e 3 per correggere questa frase. + +---> C'è del testo che manca da qu + C'è del testo che manca da questa linea. +---> C'è anche del testo che ma + C'è anche del testo che manca qui. + + 5. Quando sei a tuo agio nell'aggiunta di testo vai alla lezione 1.6. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 1.6: MODIFICARE UN FILE + + + ** Usare :wq per salvare un file e uscire. ** + + !! NOTA: Prima di eseguire quanto richiesto, leggi la Lezione per intero!! + + 1. Esci da Vim come hai fatto nella lezione 1.2: :q! + + 2. Quando vedi il PROMPT della Shell, batti il comando: vim tutor <INVIO> + 'vim' è il comando per richiamare Vim, 'tutor' è il nome del file che + desideri modificare. Usa un file che possa essere modificato. + + 3. Inserisci e cancella testo come hai imparato nelle lezioni precedenti. + + 4. Salva il file ed esci da Vim con: :wq <INVIO> + + 5. Rientra in vimtutor e scendi al sommario che segue. + + 6. Dopo aver letto i passi qui sopra ed averli compresi: eseguili. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 1 SOMMARIO + + + 1. Il cursore si muove usando i tasti con le frecce o i tasti hjkl. + h (sinistra) j (giù) k (su) l (destra) + + 2. Per eseguire Vim dal PROMPT della Shell batti: vim NOMEFILE <INVIO> + + 3. Per uscire da Vim batti: <ESC> :q! <INVIO> per uscire senza salvare. + oppure batti: <ESC> :wq <INVIO> per uscire salvando modifiche. + + 4. Per cancellare il carattere sotto al cursore batti: x + + 5. Per inserire testo subito prima del cursore batti: + i batti testo inserito <ESC> inserisci prima del cursore + A batti testo aggiunto <ESC> aggiungi a fine linea + +NOTA: premendo <ESC> ritornerai in Modalità Normale o annullerai + un comando errato che puoi aver inserito in parte. + +Ora continua con la Lezione 2. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 2.1: COMANDI DI CANCELLAZIONE + + + ** Batti dw per cancellare una parola. ** + + 1. Premi <ESC> per accertarti di essere in Modalità Normale. + + 2. Muovi il cursore fino alla linea qui sotto, indicata da --->. + + 3. Muovi il cursore all'inizio di una parola che vuoi cancellare. + + 4. Batti dw per cancellare la parola. + +NOTA: La lettera d sarà visibile sull'ultima linea dello schermo mentre la + batti. Vim attende che tu batta w . Se vedi una lettera diversa + da d hai battuto qualcosa di sbagliato; premi <ESC> e ricomincia. + +---> Ci sono le alcune parole gioia che non c'entrano carta in questa frase. + + 5. Ripeti i passi 3 e 4 finché la frase è corretta, poi vai alla Lezione 2.2. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 2.2: ALTRI COMANDI DI CANCELLAZIONE + + + ** Batti d$ per cancellare fino a fine linea. ** + + 1. Premi <ESC> per accertarti di essere in Modalità Normale. + + 2. Muovi il cursore fino alla linea qui sotto, indicata da --->. + + 3. Muovi il cursore alla fine della linea corretta (DOPO il primo . ). + + 4. Batti d$ per cancellare fino a fine linea. + +---> Qualcuno ha battuto la fine di questa linea due volte. linea due volte. + + + 5. Vai alla Lezione 2.3 per capire il funzionamento di questo comando. + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 2.3: OPERATORI E MOVIMENTI + + + Molti comandi di modifica testi consistono in un operatore e un movimento. + Il formato del comando di cancellazione con l'operatore d è il seguente: + + d movimento + + Dove: + d - è l'operatore di cancellazione + movimento - indica dove l'operatore va applicato (lista qui sotto). + + Breve lista di movimenti: + w - fino a inizio della parola seguente, ESCLUSO il suo primo carattere. + e - alla fine della parola corrente, COMPRESO il suo ultimo carattere. + $ - dal cursore fino a fine linea, COMPRESO l'ultimo carattere della linea. + + Quindi se batti de cancelli dal cursore fino a fine parola. + +NOTA: Se batti solo il movimento mentre sei in Modalità Normale, senza + nessun operatore, il cursore si muoverà come specificato. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 2.4: USO DI UN CONTATORE PER UN MOVIMENTO + + + ** Se batti un numero prima di un movimento, lo ripeti altrettante volte. ** + + 1. Muovi il cursore fino all'inizio della linea qui sotto, indicata da --->. + + 2. Batti 2w per spostare il cursore due parole più avanti. + + 3. Batti 3e per spostare il cursore alla fine della terza parola seguente. + + 4. Batti 0 (zero) per posizionarti all'inizio della linea. + + 5. Ripeti i passi 2 e 3 usando numeri differenti. + +---> Questa è solo una linea con parole all'interno della quale puoi muoverti. + + 6. Vai alla Lezione 2.5. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 2.5: USO DI UN CONTATORE PER CANCELLARE DI PIU' + + + ** Se batti un numero prima di un movimento, lo ripeti altrettante volte. ** + + Nella combinazione dell'operatore cancella e di un movimento, descritto prima, + inserite un contatore prima del movimento per cancellare di più: + d numero movimento + + 1. Muovi il cursore alla prima parola MAIUSCOLA nella riga indicata da --->. + + 2. Batti d2w per cancellare le due parole MAIUSCOLE + + 3. Ripeti i passi 1 e 2 con un contatore diverso per cancellare la parole + MAIUSCOLE consecutive con un solo comando + +---> questa ABC DE linea FGHI JK LMN OP di parole è Q RS TUV ora ripulita. + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 2.6: LAVORARE SU LINEE INTERE + + ** Batti dd per cancellare un'intera linea. ** + + Per la frequenza con cui capita di cancellare linee intere, chi ha + disegnato Vi ha deciso che sarebbe stato più semplice battere + due d consecutive per cancellare una linea. + + 1. Muovi il cursore alla linea 2) nella frase qui sotto. + 2. Batti dd per cancellare la linea. + 3. Ora spostati alla linea 4). + 4. Batti 2dd per cancellare due linee. + +---> 1) Le rose sono rosse, +---> 2) Il fango è divertente, +---> 3) Le viole sono blu, +---> 4) Io ho un'automobile, +---> 5) Gli orologi segnano il tempo, +---> 6) Lo zucchero è dolce, +---> 7) E così sei anche tu. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 2.7: IL COMANDO UNDO [ANNULLA] + + ** Premi u per annullare gli ultimi comandi eseguiti. ** + ** Premi U per annullare le modifiche all'ultima linea. ** + + 1. Muovi il cursore fino alla linea qui sotto, indicata da --->. + e posizionati sul primo errore. + 2. Batti x per cancellare il primo carattere sbagliato. + 3. Adesso batti u per annullare l'ultimo comando eseguito. + 4. Ora invece, correggi tutti gli errori sulla linea usando il comando x . + 5. Adesso batti una U Maiuscola per riportare la linea al suo stato originale. + 6. Adesso batti u più volte per annullare la U e i comandi precedenti. + 7. Adesso batti più volte CTRL-r (tieni il tasto CTRL schiacciato + mentre batti r) per rieseguire i comandi (annullare l'annullamento). + +---> Correeggi gli errori ssu quuesta linea e riimpiazzali coon "undo". + + 8. Questi comandi sono molto utili. Ora spostati al Sommario della Lezione 2. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 2 SOMMARIO + + + 1. Per cancellare dal cursore fino alla parola seguente batti: dw + 2. Per cancellare dal cursore fino alla fine della linea batti: d$ + 3. Per cancellare un'intera linea batti: dd + 4. Per eseguire più volte un movimento, mettici davanti un numero: 2w + 5. Il formato per un comando di modifica è: + + operatore [numero] movimento + dove: + operatore - indica il da farsi, ad es. d per [delete] cancellare + [numero] - contatore facoltativo di ripetizione del movimento + movimento - spostamento nel testo su cui operare, ad es. + w [word] parola, $ (fino a fine linea), etc. + + 6. Per andare a inizio linea usate uno zero: 0 + 7. Per annullare i comandi precedenti, batti: u (u minuscola) + Per annullare tutte le modifiche a una linea batti: U (U maiuscola) + Per annullare l'annullamento ["redo"] batti: CTRL-r + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 3.1: IL COMANDO PUT [METTI, PONI] + + + ** Batti p per porre [put] testo (cancellato prima) dopo il cursore. ** + + 1. Muovi il cursore alla prima linea indicata con ---> qui in basso. + + 2. Batti dd per cancellare la linea e depositarla in un registro di Vim. + + 3. Muovi il cursore fino alla linea c) SOPRA quella dove andrebbe messa + la linea appena cancellata. + + 4. Batti p per mettere la linea sotto il cursore. + + 5. Ripeti i passi da 2 a 4 per mettere tutte le linee nel giusto ordine. + +---> d) Puoi impararla tu? +---> b) Le viole sono blu, +---> c) La saggezza si impara, +---> a) Le rose sono rosse, + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 3.2: IL COMANDO REPLACE [RIMPIAZZARE] + + + ** Batti rx per rimpiazzare il carattere sotto al cursore con x . ** + + 1. Muovi il cursore alla prima linea qui sotto, indicata da --->. + + 2. Muovi il cursore fino a posizionarlo sopra il primo errore. + + 3. Batti r e poi il carattere che dovrebbe stare qui. + + 4. Ripeti i passi 2 e 3 finché la prima linea è uguale alla seconda. + +---> Ammattendo quetta lince, qualcuno ho predato alcuni tosti sballiati! +---> Immettendo questa linea, qualcuno ha premuto alcuni tasti sbagliati! + + 5. Ora passa alla Lezione 3.2. + +NOTA: Ricordati che dovresti imparare con la pratica, non solo leggendo. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 3.3: L'OPERATORE CHANGE [CAMBIA] + + + ** Per cambiare fino alla fine di una parola, batti ce . ** + + 1. Muovi il cursore alla prima linea qui sotto, indicata da --->. + + 2. Posiziona il cursore alla u in lubw. + + 3. Batti ce e la parola corretta (in questo caso, batti inea ). + + 4. Premi <ESC> e vai sul prossimo carattere da modificare. + + 5. Ripeti i passi 3 e 4 finché la prima frase è uguale alla seconda. + +---> Questa lubw ha alcune pptfd da asdert usgfk l'operatore CHANGE. +---> Questa linea ha alcune parole da cambiare usando l'operatore CHANGE. + +Nota che ce cancella la parola, e ti mette anche in Modalità Inserimento + [Insert Mode] + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 3.4: ALTRI CAMBIAMENTI USANDO c + +** L'operatore c [CHANGE] agisce sugli stessi movimenti di d [DELETE] ** + + 1. L'operatore CHANGE si comporta come DELETE. Il formato è: + + c [numero] movimento + + 2. I movimenti sono gli stessi, + ad es. w (word, parola), $ (fine linea), etc. + + 3. Muovi il cursore alla prima linea qui sotto, indicata da --->. + + 4. Posiziona il cursore al primo errore. + + 5. Batti c$ e inserisci resto della linea utilizzando come modello la + linea seguente, e quando hai finito premi <ESC> + +---> La fine di questa linea deve essere aiutata a divenire come la seguente. +---> La fine di questa linea deve essere corretta usando il comando c$ . + +NOTA: Puoi usare il tasto Backspace se devi correggere errori di battitura. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 3 SOMMARIO + + + 1. Per reinserire del testo appena cancellato, batti p . Questo + inserisce [pone] il testo cancellato DOPO il cursore (se era stata tolta + una linea intera, questa verrà messa nella linea SOTTO il cursore). + + 2. Per rimpiazzare il carattere sotto il cursore, batti r e poi il + carattere che vuoi sostituire. + + 3. L'operatore change ti permette di cambiare dal cursore fino a dove + arriva il movimento. Ad es. Batti ce per cambiare dal cursore + fino alla fine della parola, c$ per cambiare fino a fine linea. + + 4. Il formato di change è: + + c [numero] movimento + +Ora vai alla prossima Lezione. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 4.1: POSIZIONAMENTO E SITUAZIONE FILE + + ** Batti CTRL-G per vedere a che punto sei nel file e la situazione ** + ** del file. Batti G per raggiungere una linea nel file. ** + + NOTA: Leggi l'intera Lezione prima di eseguire un qualsiasi passo!! + + 1. Tieni premuto il tasto CTRL e batti g . Ossia batti CTRL-G. + Un messaggio apparirà in fondo alla pagina con il NOME FILE e la + posizione nel file. Ricordati il numero della linea per il Passo 3. + +NOTA: La posizione del cursore si vede nell'angolo in basso a destra dello + schermo, se è impostata l'opzione 'ruler' (righello, vedi :help ruler). + + 2. Premi G [G Maiuscolo] per posizionarti in fondo al file. + Batti gg per posizionarti in cima al file. + + 3. Batti il numero della linea in cui ti trovavi e poi G . Questo ti + riporterà fino alla linea in cui ti trovavi quando avevi battuto CTRL-g. + + 4. Se ti senti sicuro nel farlo, esegui i passi da 1 a 3. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 4.2: IL COMANDO SEARCH [RICERCA] + + ** Batti / seguito da una frase per ricercare quella frase. ** + + 1. in Modalità Normale batti il carattere / . Nota che la "/" e il cursore + sono visibili in fondo dello schermo come quando si usa il comando : . + + 2. Adesso batti 'errroore' <INVIO>. Questa è la parola che vuoi ricercare. + + 3. Per ricercare ancora la stessa frase, batti soltanto n . + Per ricercare la stessa frase in direzione opposta, batti N . + + 4. Per ricercare una frase nella direzione opposta, usa ? al posto di / . + + 5. Per tornare dove eri prima nel file premi CTRL-O (tieni il tasto CTRL + schiacciato mentre premi la lettera o). Ripeti CTRL-O per andare ancora + indietro. Puoi usare CTRL-I per tornare in avanti. + +NOTA: "errroore" non è il modo giusto di digitare errore; errroore è un errore. +NOTA: Quando la ricerca arriva a fine file, ricomincia dall'inizio del file, + a meno che l'opzione 'wrapscan' sia stata disattivata. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 4.3: RICERCA DI PARENTESI CORRISPONDENTI + + + ** Batti % per trovare una ),], o } corrispondente. ** + + 1. Posiziona il cursore su una (, [, o { nella linea sotto, indicata da --->. + + 2. Adesso batti il carattere % . + + 3. Il cursore si sposterà sulla parentesi corrispondente. + + 4. Batti % per muovere il cursore all'altra parentesi corrispondente. + +---> Questa ( è una linea di test con (, [ ] e { } al suo interno. )) + + +NOTA: Questo è molto utile nel "debug" di un programma con parentesi errate! + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 4.4: L'OPERATORE SOSTITUZIONE (SUBSTITUTE) + + ** Batti :s/vecchio/nuovo/g per sostituire 'nuovo' a 'vecchio'. ** + + 1. Muovi il cursore fino alla linea qui sotto, indicata da --->. + + 2. Batti :s/lla/la <INVIO> . Nota che questo comando cambia solo + LA PRIMA occorrenza di "lla" sulla linea. + + 3. Adesso batti :s/lla/la/g . Aggiungendo la flag g si chiede di + sostituire "globalmente" sulla linea, ossia tutte le occorrenze + di "lla" sulla linea. + +---> lla stagione migliore per lla fioritura è lla primavera. + + 4. Per cambiare ogni ricorrenza di una stringa di caratteri tra due linee, + batti :#,#s/vecchio/nuovo/g dove #,# sono i numeri che delimitano + il gruppo di linee in cui si vuole sostituire. + Batti :%s/vecchio/nuovo/g per cambiare ogni occorrenza nell'intero file. + Batti :%s/vecchio/nuovo/gc per trovare ogni occorrenza nell'intero file + ricevendo per ognuna una richiesta se + effettuare o meno la sostituzione. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 4 SOMMARIO + + +1. CTRL-G visualizza a che punto sei nel file e la situazione del file. + G [G Maiuscolo] ti porta all'ultima linea del file. + numero G ti porta alla linea con quel numero. + gg ti porta alla prima linea del file. + +2. Battendo / seguito da una frase ricerca IN AVANTI quella frase. + Battendo ? seguito da una frase ricerca ALL'INDIETRO quella frase. + DOPO una ricerca batti n per trovare la prossima occorrenza nella + stessa direzione, oppure N per cercare in direzione opposta. + CTRL-O ti porta alla posizione precedente, CTRL-I a quella più nuova. + +3. Battendo % mentre il cursore si trova su (,),[,],{, oppure } + ti posizioni sulla corrispondente parentesi. + +4. Per sostituire "nuovo" al primo "vecchio" in 1 linea batti :s/vecchio/nuovo + Per sostituire "nuovo" ad ogni "vecchio" in 1 linea batti :s/vecchio/nuovo/g + Per sostituire frasi tra 2 numeri di linea [#] batti :#,#s/vecchio/nuovo/g + Per sostituire tutte le occorrenze nel file batti :%s/vecchio/nuovo/g + Per chiedere conferma ogni volta aggiungi 'c' :%s/vecchio/nuovo/gc +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 5.1: COME ESEGUIRE UN COMANDO ESTERNO + + + ** Batti :! seguito da un comando esterno per eseguire quel comando. ** + + 1. Batti il comando : per posizionare il cursore in fondo allo schermo. + Ciò ti permette di immettere un comando dalla linea comandi. + + 2. Adesso batti il carattere ! (punto esclamativo). Ciò ti permette di + eseguire qualsiasi comando esterno si possa eseguire nella "shell". + + 3. Ad esempio batti ls dopo il ! e poi premi <INVIO>. Questo + visualizza una lista della tua directory, proprio come se fossi in una + "shell". Usa :!dir se ls non funziona. [Unix: ls MS-DOS: dir] + +NOTA: E' possibile in questo modo eseguire un comando a piacere, specificando + anche dei parametri per i comandi stessi. + +NOTA: Tutti i comandi : devono essere terminati premendo <INVIO> + Da qui in avanti non lo ripeteremo ogni volta. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 5.2: ANCORA SULLA SCRITTURA DEI FILE + + + ** Per salvare le modifiche apportate a un testo batti :w NOMEFILE. ** + + 1. Batti :!dir or :!ls per procurarti una lista della tua directory. + Già sai che devi premere <INVIO> dopo aver scritto il comando. + + 2. Scegli un NOMEFILE che ancora non esista, ad es. TEST . + + 3. Adesso batti: :w TEST (dove TEST è il NOMEFILE che hai scelto). + + 4. Questo salva l'intero file ("tutor.it") con il nome di TEST. + Per verifica batti ancora :!dir o :!ls per listare la tua directory. + +NOTA: Se esci da Vim e riesegui Vim battendo vim TEST , il file aperto + sarà una copia esatta di "tutor.it" al momento del salvataggio. + + 5. Ora cancella il file battendo (MR-DOS): :!del TEST + o (Unix): :!rm TEST + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 5.3: SELEZIONARE IL TESTO DA SCRIVERE + + ** Per salvare una porzione di file, batti v movimento :w NOMEFILE ** + + 1. Muovi il cursore su questa linea. + + 2. Premi v e muovi il cursore fino alla linea numerata 5., qui sotto. + Nota che il testo viene evidenziato. + + 3. Batti il carattere : . In fondo allo schermo apparirà :'<,'> . + + 4. Batti w TEST , dove TEST è il nome di un file non ancora esistente. + Verifica che si veda :'<,'>w TEST prima di dare <INVIO>. + + 5. Vim scriverà nel file TEST le linee che hai selezionato. Usa :!dir + o :!ls per controllare che esiste. Non cancellarlo ora! Ti servirà + nella prossima lezione. + +NOTA: Battere v inizia una selezione visuale. Puoi muovere il cursore + come vuoi, e rendere la selezione più piccola o più grande. Poi + puoi usare un operatore per agire sul testo selezionato. + Ad es., d cancella il testo. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 5.4: INSERIRE E RIUNIRE FILE + + + ** Per inserire il contenuto di un file, batti :r NOMEFILE ** + + 1. Posiziona il cursore appena sopra questa riga. + +NOTA: Dopo aver eseguito il Passo 2 vedrai il testo della Lezione 5.3. + Quindi spostati IN GIU' per tornare ancora a questa Lezione. + + 2. Ora inserisci il tuo file TEST con il comando :r TEST dove TEST è + il nome che hai usato per creare il file. + Il file richiesto è inserito sotto la linea in cui si trova il cursore. + + 3. Per verificare che un file è stato inserito, torna indietro col cursore + e nota che ci sono ora 2 copie della Lezione 5.3, quella originale e + quella che viene dal file. + +NOTA: Puoi anche leggere l'output prodotto da un comando esterno. Ad es. + :r !ls legge l'output del comando ls e lo inserisce sotto la linea + in cui si trova il cursore. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 5 SOMMARIO + + + 1. :!comando esegue un comando esterno. + + Alcuni esempi utili sono [in MSDOS]: + :!dir - visualizza lista directory + :!del NOMEFILE - cancella file NOMEFILE. + + 2. :w NOMEFILE scrive su disco il file che stai editando con nome NOMEFILE. + + 3. v movimento :w NOMEFILE salva le linee selezionate in maniera + visuale nel file NOMEFILE. + + 4. :r NOMEFILE legge il file NOMEFILE da disco e lo inserisce nel file + che stai modificando, dopo la linea in cui è posizionato il cursore. + + 5. :r !dir legge l'output del comando dir e lo inserisce dopo la + linea in cui è posizionato il cursore. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 6.1: IL COMANDO OPEN [APRIRE] + + + ** Batti o per aprire una linea sotto il cursore ** + ** e passare in Modalità Inserimento. ** + + 1. Muovi il cursore fino alla linea qui sotto, indicata da --->. + + 2. Batti la lettera minuscola o per aprire una linea sotto il cursore e + passare in Modalità Inserimento. + + 3. Poi inserisci del testo e premi <ESC> per uscire dalla + Modalità Inserimento. + +---> Dopo battuto o il cursore è sulla linea aperta (in Modalità Inserimento). + + 4. Per aprire una linea SOPRA il cursore, batti una O maiuscola, invece + che una o minuscola. Prova sulla linea qui sotto. +Apri una linea SOPRA questa battendo O mentre il cursore è su questa linea. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 6.2: IL COMANDO APPEND [AGGIUNGERE] + + ** Batti a per inserire testo DOPO il cursore. ** + + 1. Muovi il cursore all'inizio della linea qui sotto, indicata da --->. + + 2. Batti e finché il cursore arriva alla fine di li . + + 3. Batti una a (minuscola) per aggiungere testo DOPO il cursore. + + 4. Completa la parola come mostrato nella linea successiva. Premi <ESC> + per uscire dalla Modalità Inserimento. + + 5. Usa e per passare alla successiva parola incompleta e ripeti i passi + 3 e 4. + +---> Questa li ti permetterà di esercit ad aggiungere testo a una linea. +---> Questa linea ti permetterà di esercitarti ad aggiungere testo a una linea. + +NOTA: a, i ed A entrano sempre in Modalità Inserimento, la sola differenza + è dove verranno inseriti i caratteri. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 6.3: UN ALTRO MODO DI RIMPIAZZARE [REPLACE] + + + ** Batti una R maiuscola per rimpiazzare più di un carattere. ** + + 1. Muovi il cursore alla prima linea qui sotto, indicata da --->. Muovi il + cursore all'inizio del primo xxx . + + 2. Ora batti R e batti il numero che vedi nella linea seguente, in modo + che rimpiazzi l' xxx . + + 3. Premi <ESC> per uscire dalla Modalità Replace. Nota che il resto della + linea resta invariato. + + 4. Ripeti i passi in modo da rimpiazzare l'altro xxx . + +---> Aggiungendo 123 a xxx si ottiene xxx. +---> Aggiungendo 123 a 456 si ottiene 579. + +NOTA: La Modalità Replace è come la Modalità Inserimento, ma ogni carattere + che viene battuto ricopre un carattere esistente. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 6.4: COPIA E INCOLLA DEL TESTO + + + ** usa l'operatore y per copiare del testo e p per incollarlo ** + + 1. Vai alla linea indicata da ---> qui sotto, e metti il cursore dopo "a)". + + 2. Entra in Modalità Visuale con v e metti il cursore davanti a "primo". + + 3. Batti y per copiare [yank] il testo evidenziato. + + 4. Muovi il cursore alla fine della linea successiva: j$ + + 5. Batti p per incollare [paste] il testo. Poi batti: a secondo <ESC> . + + 6. Usa la Modalità Visuale per selezionare " elemento.", copialo con y , + Vai alla fine della linea successiva con j$ e incolla il testo con p . + +---> a) questo è il primo elemento. + b) + +NOTA: Puoi usare y come operatore; yw copia una parola [word]. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 6.5: SET [IMPOSTA] UN'OPZIONE + + ** Imposta un'opzione per ignorare maiuscole/minuscole ** + ** durante la ricerca/sostituzione ** + + 1. Ricerca 'nota' battendo: /nota <ENTER> + Ripeti la ricerca più volte usando il tasto n + + 2. Imposta l'opzione 'ic' (Ignore Case, [Ignora maiuscolo/minuscolo]) + battendo: :set ic + + 3. Ora ricerca ancora 'nota' premendo il tasto n + Troverai adesso anche Nota e NOTA . + + 4. Imposta le opzioni 'hlsearch' e 'incsearch' :set hls is + + 5. Ora batti ancora il comando di ricerca, e guarda cosa succede: /nota + + 6. Per disabilitare il riconoscimento di maiuscole/minuscole batti: :set noic +NOTA: Per non evidenziare le occorrenze trovate batti: :nohlsearch +NOTA: Per ignorare maiuscole/minuscole solo per una ricerca, usa \c + nel comando di ricerca: /nota\c <INVIO> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 6 SOMMARIO + + 1. Batti o per aggiungere una linea SOTTO il cursore ed entrare in + Modalità Inserimento. + Batti O per aggiungere una linea SOPRA il cursore. + + 2. Batti a per inserire testo DOPO il cursore. + Batti A per inserire testo alla fine della linea. + + 3. Il comando e sposta il cursore alla fine di una parola. + + 4. L'operatore y copia del testo, p incolla del testo. + + 5. Batti R per entrare in Modalità Replace, e ne esci premendo <ESC>. + + 6. Batti ":set xxx" per impostare l'opzione "xxx". Alcun opzioni sono: + 'ic' 'ignorecase' ignorare maiuscole/minuscole nella ricerca + 'is' 'incsearch' mostra occorrenze parziali durante una ricerca + 'hls' 'hlsearch' evidenzia tutte le occorrenze di una ricerca + Puoi usare sia il nome completo di un'opzione che quello abbreviato. + + 7. Usa il prefisso "no" per annullare una opzione: :set noic +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 7.1: OTTENERE AIUTO + + ** Usa il sistema di aiuto on-line ** + + Vim ha un esauriente sistema di aiuto on-line. Per cominciare, prova una di + queste alternative: + - premi il tasto <AIUTO> (se ce n'è uno) + - premi il tasto <F1> (se ce n'è uno) + - batti :help <INVIO> OPPURE :h <INVIO> + + Leggi il testo nella finestra di aiuto per vedere come funziona l'aiuto. + Batti CTRL-W CTRL-W per passare da una finestra all'altra. + Batti :q <INVIO> per chiudere la finestra di aiuto. + + Puoi trovare aiuto su quasi tutto, dando un argomento al comando ":help" + Prova questi (non dimenticare di premere <INVIO>): + + :help w + :help c_CTRL-D + :help insert-index + :help user-manual + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 7.2: PREPARARE UNO SCRIPT INIZIALE + + ** Attiva le opzioni Vim ** + + Vim ha molte più opzioni di Vi, ma molte di esse sono predefinite inattive. + Per cominciare a usare più opzioni, devi creare un file "vimrc". + + 1. Comincia a editare il file "vimrc". Questo dipende dal tuo sistema: + :e ~/.vimrc per Unix + :e $VIM/_vimrc per MS-Windows + + 2. Ora leggi i contenuti del file "vimrc" distribuito come esempio: + + :r $VIMRUNTIME/vimrc_example.vim + + 3. Scrivi il file con: + :w + + La prossima volta che apri Vim, sarà abilitata la colorazione sintattica. + Puoi aggiungere a questo file "vimrc" tutte le tue impostazioni preferite. + Per maggiori informazioni batti: :help vimrc-intro + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 7.3: COMPLETAMENTO + + + ** Completamento linea comandi con CTRL-D e <TAB> ** + + 1. Imposta Vim in modalità compatibile: :set nocp + + 2. Guarda i file esistenti nella directory: :!ls o :!dir + + 3. Batti l'inizio di un comando: :e + + 4. Premi CTRL-D e Vim ti mostra una lista di comandi che iniziano per "e". + + 5. Premi <TAB> e Vim completa per te il nome comando come ":edit". + + 6. Ora batti uno spazio e l'inizio del nome di un file esistente: :edit FIL + + 7. Premi <TAB>. Vim completerà il nome del file (se è il solo possibile). + +NOTA: Il completamento è disponibile per molti comandi. Prova a battere + CTRL-D e <TAB>. Particolarmente utile per :help . + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lezione 7 Sommario + + + 1. Batti :help o premi <F1> o <Help> per aprire una finestra di aiuto. + + 2. Batti :help comando per avere aiuto su comando . + + 3. Batti CTRL-W CTRL-W per saltare alla prossima finestra. + + 4. Batti :q per chiudere la finestra di aiuto. + + 5. Crea uno script iniziale vimrc contenente le tue impostazioni preferite. + + 6. Mentre batti un comando : , premi CTRL-D per vedere i possibili + completamenti. Premi <TAB> per usare il completamento desiderato. + + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Qui finisce la Guida a Vim. Il suo intento è di fornire una breve panoramica + dell'Editor Vim, che ti consenta di usare l'Editor abbastanza facilmente. + Questa guida è largamente incompleta poiché Vim ha moltissimi altri comandi. + Puoi anche leggere il manuale utente (anche in italiano): ":help user-manual". + + Per ulteriore lettura e studio, raccomandiamo: + Vim - Vi Improved - di Steve Oualline Editore: New Riders + Il primo libro completamente dedicato a Vim. Utile specie per principianti. + Contiene molti esempi e figure. + Vedi http://iccf-holland.org/click5.html + + Quest'altro libro è più su Vi che su Vim, ma è pure consigliato: + Learning the Vi Editor - di Linda Lamb e Arnold Robbins + Editore: O'Reilly & Associates Inc. + E' un buon libro per imparare quasi tutto ciò che puoi voler fare con Vi. + Ne esiste una traduzione italiana, basata su una vecchia edizione. + + Questa guida è stata scritta da Michael C. Pierce e Robert K. Ware, + Colorado School of Mines, usando idee fornite da Charles Smith, + Colorado State University - E-mail: bware@mines.colorado.edu + Modificato per Vim da Bram Moolenaar. + Segnalare refusi ad Antonio Colombo - E-mail: azc100@gmail.com +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/tutor/tutor.no.utf-8 Wed Aug 13 17:36:09 2008 +0900 @@ -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 <ESC> 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 <ESC>-tasten (for å forsikre deg om at du er i normalmodus). + + 2. Skriv: :q! <ENTER>. + 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 <ENTER> + + 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! <ENTER> 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 <ESC> 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 <ESC> 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 <ENTER> + «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 <ENTER> + + 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 <ENTER> + + 3. For å avslutte Vim, skriv: <ESC> :q! <ENTER> for å forkaste endringer. + ELLER skriv: <ESC> :wq <ENTER> 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 <ESC> sett inn før markøren + A skriv tillagt tekst <ESC> legg til på slutten av linjen + +MERK: Når du trykker <ESC> 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 <ESC> 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 <ESC> 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 <ESC> 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 <ESC> 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 <ESC>. + +---> 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 <ENTER>. 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/ <ENTER> . 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 <ENTER>. 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 <ENTER>. 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 <ENTER> 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 <ESC> 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 <ESC> 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 <ESC> 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 <ESC> . + + 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 <ENTER> + 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 <ENTER> + + 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 <ENTER> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 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 <ESC> 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 <ENTER> + + 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 <ENTER> 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 <ENTER>): + + :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 <TAB> ** + + 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 <TAB> og Vim vil fullføre kommandonavnet til «:edit». + + 6. Legg til et mellomrom og starten på et eksisterende filnavn: :edit FIL + + 7. Trykk <TAB>. Vim vil fullføre navnet (hvis det er unikt). + +MERK: Fullføring fungerer for mange kommandoer. Prøv ved å trykke CTRL-D og + <TAB>. Det er spesielt nyttig for bruk sammen med :help . +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + OPPSUMMERING AV LEKSJON 7 + + + 1. Skriv :help eller trykk <F1> eller <Help> 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 <TAB> 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 :
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/tutor/tutor.sv.utf-8 Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,830 @@ +=============================================================================== += V ä l k o m m e n t i l l h a n d l e d n i n g e n i V i m - Ver. 1.5 = +=============================================================================== + + Vim är en väldigt kraftfull redigerare som har många kommandon, alltför + många att förklara i en handledning som denna. Den här handledningen är + gjord för att förklara tillräckligt många kommandon så att du enkelt ska + kunna använda Vim som en redigerare för alla ändamål. + + Den beräknade tiden för att slutföra denna handledning är 25-30 minuter, + beroende på hur mycket tid som läggs ned på experimentering. + + Kommandona i lektionerna kommer att modifiera texten. Gör en kopia av den + här filen att öva på (om du startade "vimtutor är det här redan en kopia). + + Det är viktigt att komma ihåg att den här handledningen är konstruerad + att lära vid användning. Det betyder att du måste köra kommandona för att + lära dig dem ordentligt. Om du bara läser texten så kommer du att glömma + kommandona! + + Försäkra dig nu om att din Caps-Lock tangent INTE är aktiv och tryck på + j-tangenten tillräckligt många gånger för att förflytta markören så att + Lektion 1.1 fyller skärmen helt. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 1.1: FLYTTA MARKÖREN + + + ** För att flytta markören, tryck på tangenterna h,j,k,l som indikerat. ** + ^ + k Tips: + < h l > h-tangenten är till vänster och flyttar till vänster. + j l-tangenten är till höger och flyttar till höger. + v j-tangenten ser ut som en pil ned. + 1. Flytta runt markören på skärmen tills du känner dig bekväm. + + 2. Håll ned tangenten pil ned (j) tills att den repeterar. +---> Nu vet du hur du tar dig till nästa lektion. + + 3. Flytta till Lektion 1.2, med hjälp av ned tangenten. + +Notera: Om du är osäker på någonting du skrev, tryck <ESC> för att placera dig + dig i Normal-läge. Skriv sedan om kommandot. + +Notera: Piltangenterna borde också fungera. Men om du använder hjkl så kommer + du att kunna flytta omkring mycket snabbare, när du väl vant dig vid + det. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 1.2: STARTA OCH AVSLUTA VIM + + + !! NOTERA: Innan du utför någon av punkterna nedan, läs hela lektionen!! + + 1. Tryck <ESC>-tangenten (för att se till att du är i Normal-läge). + + 2. Skriv: :q! <ENTER>. + +---> Detta avslutar redigeraren UTAN att spara några ändringar du gjort. + Om du vill spara ändringarna och avsluta skriv: + :wq <ENTER> + + 3. När du ser skal-prompten, skriv kommandot som tog dig in i den här + handledningen. Det kan vara: vimtutor <ENTER> + Normalt vill du använda: vim tutor <ENTER> + +---> 'vim' betyder öppna redigeraren vim, 'tutor' är filen du vill redigera. + + 4. Om du har memorerat dessa steg och känner dig självsäker, kör då stegen + 1 till 3 för att avsluta och starta om redigeraren. Flytta sedan ned + markören till Lektion 1.3. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 1.3: TEXT REDIGERING - BORTTAGNING + + +** När du är i Normal-läge tryck x för att ta bort tecknet under markören. ** + + 1. Flytta markören till raden nedan med markeringen --->. + + 2. För att rätta felen, flytta markören tills den står på tecknet som ska + tas bort. fix the errors, move the cursor until it is on top of the + + 3. Tryck på x-tangenten för att ta bort det felaktiga tecknet. + + 4. Upprepa steg 2 till 4 tills meningen är korrekt. + +---> Kkon hoppadee övverr måånen. + + 5. Nu när raden är korrekt, gå till Lektion 1.4. + +NOTERA: När du går igenom den här handledningen, försök inte att memorera, lär + genom användning. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 1.4: TEXT REDIGERING - INFOGNING + + + ** När du är i Normal-läge tryck i för att infoga text. ** + + 1. Flytta markören till den första raden nedan med markeringen --->. + + 2. För att göra den första raden likadan som den andra, flytta markören till + det första tecknet EFTER där text ska infogas. + + 3. Tryck i och skriv in det som saknas. + + 4. När du rättat ett fel tryck <ESC> för att återgå till Normal-läge. + Upprepa steg 2 till 4 för att rätta meningen. + +---> Det sakns här . +---> Det saknas lite text från den här raden. + + 5. När du känner dig bekväm med att infoga text, gå till sammanfattningen + nedan. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + LEKTION 1 SAMMANFATTNING + + + 1. Markören flyttas genom att använda piltangenterna eller hjkl-tangenterna. + h (vänster) j (ned) k (upp) l (höger) + + 2. För att starta Vim (från %-prompten) skriv: vim FILNAMN <ENTER> + + 3. För att avsluta Vim skriv: <ESC> :q! <ENTER> för att kasta ändringar. + ELLER skriv: <ESC> :wq <ENTER> för att spara ändringar. + + 4. För att ta bort tecknet under markören i Normal-läge skriv: x + + 5. För att infoga text vid markören i Normal-läge skriv: + i skriv in text <ESC> + +NOTERA: Genom att trycka <ESC> kommer du att placeras i Normal-läge eller + avbryta ett delvis färdigskrivet kommando. + +Fortsätt nu med Lektion 2. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 2.1: BORTTAGNINGSKOMMANDON + + + ** Skriv dw för att radera till slutet av ett ord. ** + + 1. Tryck <ESC> för att försäkra dig om att du är i Normal-läge. + + 2. Flytta markören till raden nedan markerad --->. + + 3. Flytta markören till början av ett ord som måste raderas. + + 4. Skriv dw för att radera ordet. + + NOTERA: Bokstäverna dw kommer att synas på den sista raden på skärmen när + du skriver dem. Om du skrev något fel, tryck <ESC> och börja om. + +---> Det är ett några ord roliga att som inte hör hemma i den här meningen. + + 5. Upprepa stegen 3 och 4 tills meningen är korrekt och gå till Lektion 2.2. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 2.2: FLER BORTTAGNINGSKOMMANDON + + + ** Skriv d$ för att radera till slutet på raden. ** + + 1. Tryck <ESC> för att försäkra dig om att du är i Normal-läge. + + 2. Flytta markören till raden nedan markerad --->. + + 3. Flytta markören till slutet på den rätta raden (EFTER den första . ). + + 4. Skriv d$ för att radera till slutet på raden. + +---> Någon skrev slutet på den här raden två gånger. den här raden två gånger. + + + 5. Gå vidare till Lektion 2.3 för att förstå vad det är som händer. + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 2.3: KOMMANDON OCH OBJEKT + + + Syntaxen för d raderingskommandot är följande: + + [nummer] d objekt ELLER d [nummer] objekt + Var: + nummer - är antalet upprepningar av kommandot (valfritt, standard=1). + d - är kommandot för att radera. + objekt - är vad kommandot kommer att operera på (listade nedan). + + En kort lista över objekt: + w - från markören till slutet av ordet, inklusive blanksteget. + e - från markören till slutet av ordet, EJ inklusive blanksteget. + $ - från markören till slutet på raden. + +NOTERA: För den äventyrslystne, genom att bara trycka på objektet i + Normal-läge (utan kommando) så kommer markören att flyttas som + angivet i objektlistan. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 2.4: ETT UNDANTAG TILL 'KOMMANDO-OBJEKT' + + + ** Skriv dd för att radera hela raden. ** + + På grund av hur vanligt det är att ta bort hela rader, valde upphovsmannen + till Vi att det skulle vara enklare att bara trycka d två gånger i rad för + att ta bort en rad. + + 1. Flytta markören till den andra raden i frasen nedan. + 2. Skriv dd för att radera raden. + 3. Flytta nu till den fjärde raden. + 4. Skriv 2dd (kom ihåg: nummer-kommando-objekt) för att radera de två + raderna. + + 1) Roses are red, + 2) Mud is fun, + 3) Violets are blue, + 4) I have a car, + 5) Clocks tell time, + 6) Sugar is sweet + 7) And so are you. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 2.5: ÅNGRA-KOMMANDOT + + +** Skriv u för att ångra det senaste kommandona, U för att fixa en hel rad. ** + + 1. Flytta markören till slutet av raden nedan markerad ---> och placera den + på det första felet. + 2. Skriv x för att radera den första felaktiga tecknet. + 3. Skriv nu u för att ångra det senaste körda kommandot. + 4. Rätta den här gången alla felen på raden med x-kommandot. + 5. Skriv nu U för att återställa raden till dess ursprungliga utseende. + 6. Skriv nu u några gånger för att ångra U och tidigare kommandon. + 7. Tryck nu CTRL-R (håll inne CTRL samtidigt som du trycker R) några gånger + för att upprepa kommandona (ångra ångringarna). + +---> Fiixa felen ppå deen häär meningen och återskapa dem med ångra. + + 8. Det här är väldigt användbara kommandon. Gå nu vidare till + Lektion 2 Sammanfattning. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + LEKTION 2 SAMMANFATTNING + + + 1. För att radera från markören till slutet av ett ord skriv: dw + + 2. För att radera från markören till slutet av en rad skriv: d$ + + 3. För att radera en hel rad skriv: dd + + 4. Syntaxen för ett kommando i Normal-läge är: + + [nummer] kommando objekt ELLER kommando [nummer] objekt + där: + nummer - är hur många gånger kommandot kommandot ska repeteras + kommando - är vad som ska göras, t.ex. d för att radera + objekt - är vad kommandot ska operera på, som t.ex. w (ord), + $ (till slutet av raden), etc. + + 5. För att ångra tidigare kommandon, skriv: u (litet u) + För att ångra alla tidigare ändringar på en rad skriv: U (stort U) + För att ångra ångringar tryck: CTRL-R + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 3.1: KLISTRA IN-KOMMANDOT + + + ** Skriv p för att klistra in den senaste raderingen efter markören. ** + + 1. Flytta markören till den första raden i listan nedan. + + 2. Skriv dd för att radera raden och lagra den i Vims buffert. + + 3. Flytta markören till raden OVANFÖR där den raderade raden borde vara. + + 4. När du är i Normal-läge, skriv p för att byta ut raden. + + 5. Repetera stegen 2 till 4 för att klistra in alla rader i rätt ordning. + + d) Kan du lära dig också? + b) Violetter är blå, + c) Intelligens fås genom lärdom, + a) Rosor är röda, + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 3.2: ERSÄTT-KOMMANDOT + + + ** Skriv r och ett tecken för att ersätta tecknet under markören. ** + + 1. Flytta markören till den första raden nedan markerad --->. + + 2. Flytta markören så att den står på det första felet. + + 3. Skriv r och sedan det tecken som borde ersätta felet. + + 4. Repetera steg 2 och 3 tills den första raden är korrekt. + +---> När drn här ruden skrevs, trickte någon på fil knappar! +---> När den här raden skrevs, tryckte någon på fel knappar! + + 5. Gå nu vidare till Lektion 3.2. + +NOTERA: Kom ihåg att du skall lära dig genom användning, inte genom memorering. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 3.3: ÄNDRA-KOMMANDOT + + + ** För att ändra en del eller ett helt ord, skriv cw . ** + + 1. Flytta markören till den första redan nedan markerad --->. + + 2. Placera markören på d i rdrtn. + + 3. Skriv cw och det rätta ordet (i det här fallet, skriv "aden".) + + 4. Tryck <ESC> och flytta markören till nästa fel (det första tecknet som + ska ändras.) + + 5. Repetera steg 3 och 4 tills den första raden är likadan som den andra. + +---> Den här rdrtn har några otf som brhotrt ändras mrf ändra-komjendit. +---> Den här raden har några ord som behöver ändras med ändra-kommandot. + +Notera att cw inte bara ändrar ordet, utan även placerar dig i infogningsläge. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 3.4: FLER ÄNDRINGAR MED c + + + ** Ändra-kommandot används på samma objekt som radera. ** + + 1. Ändra-kommandot fungerar på samma sätt som radera. Syntaxen är: + + [nummer] c objekt ELLER c [nummer] objekt + + 2. Objekten är också de samma, som t.ex. w (ord), $ (slutet av raden), etc. + + 3. Flytta till den första raden nedan markerad -->. + + 4. Flytta markören till det första felet. + + 5. Skriv c$ för att göra resten av raden likadan som den andra och tryck + <ESC>. + +---> Slutet på den här raden behöver hjälp med att få den att likna den andra. +---> Slutet på den här raden behöver rättas till med c$-kommandot. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + LEKTION 3 SAMMANFATTNING + + + 1. För att ersätta text som redan har blivit raderad, skriv p . + Detta klistrar in den raderade texten EFTER markören (om en rad raderades + kommer den att hamna på raden under markören. + + 2. För att ersätta tecknet under markören, skriv r och sedan tecknet som + kommer att ersätta orginalet. + + 3. Ändra-kommandot låter dig ändra det angivna objektet från markören till + slutet på objektet. eg. Skriv cw för att ändra från markören till slutet + på ordet, c$ för att ändra till slutet på en rad. + + 4. Syntaxen för ändra-kommandot är: + + [nummer] c objekt ELLER c [nummer] objekt + +Gå nu till nästa lektion. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 4.1: POSITION OCH FILSTATUS + + + ** Tryck CTRL-g för att visa din position i filen och filstatusen. + Tryck SHIFT-G för att flytta till en rad i filen. ** + + Notera: Läsa hela den lektion innan du utför något av stegen!! + + 1. Håll ned Ctrl-tangenten och tryck g . En statusrad med filnamn och raden + du befinner dig på kommer att synas. Kom ihåg radnummret till Steg 3. + + 2. Tryck shift-G för att flytta markören till slutet på filen. + + 3. Skriv in nummret på raden du var på och tryck sedan shift-G. Detta kommer + att ta dig tillbaka till raden du var på när du först tryckte Ctrl-g. + (När du skriver in nummren, kommer de INTE att visas på skärmen.) + + 4. Om du känner dig säker på det här, utför steg 1 till 3. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 4.2: SÖK-KOMMANDOT + + + ** Skriv / följt av en fras för att söka efter frasen. ** + + 1. I Normal-läge skriv /-tecknet. Notera att det och markören blir synlig + längst ned på skärmen precis som med :-kommandot. + + 2. Skriv nu "feeel" <ENTER>. Det här är ordet du vill söka efter. + + 3. För att söka efter samma fras igen, tryck helt enkelt n . + För att söka efter samma fras igen i motsatt riktning, tryck Shift-N . + + 4. Om du vill söka efter en fras bakåt i filen, använd kommandot ? istället + för /. + +---> "feeel" är inte rätt sätt att stava fel: feeel är ett fel. + +Notera: När sökningen når slutet på filen kommer den att fortsätta vid början. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 4.3: SÖKNING EFTER MATCHANDE PARENTESER + + + ** Skriv % för att hitta en matchande ),], or } . ** + + 1. Placera markören på någon av (, [, or { på raden nedan markerad --->. + + 2. Skriv nu %-tecknet. + + 3. Markören borde vara på den matchande parentesen eller hakparentesen. + + 4. Skriv % för att flytta markören tillbaka till den första hakparentesen + (med matchning). + +---> Det ( här är en testrad med (, [ ] och { } i den. )) + +Notera: Det här är väldigt användbart vid avlusning av ett program med icke + matchande parenteser! + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 4.4: ETT SÄTT ATT ÄNDRA FEL + + + ** Skriv :s/gammalt/nytt/g för att ersätta "gammalt" med "nytt". ** + + 1. Flytta markören till raden nedan markerad --->. + + 2. Skriv :s/denn/den <ENTER> . Notera att det här kommandot bara ändrar den + första förekomsten på raden. + + 3. Skriv nu :s/denn/den/g vilket betyder ersätt globalt på raden. + Det ändrar alla förekomster på raden. + +---> denn bästa tiden att se blommor blomma är denn på våren. + + 4. För att ändra alla förekomster av en teckensträng mellan två rader, + skriv :#,#s/gammalt/nytt/g där #,# är de två radernas radnummer. + Skriv :%s/gammtl/nytt/g för att ändra varje förekomst i hela filen. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + LEKTION 4 SAMMANFATTNING + + + 1. Ctrl-g visar din position i filen och filstatusen. + Shift-G flyttar till slutet av filen. Ett radnummer följt Shift-G + flyttar till det radnummret. + + 2. Skriver man / följt av en fras söks det FRAMMÅT efter frasen. + Skriver man ? följt av en fras söks det BAKÅT efter frasen. + Efter en sökning skriv n för att hitta nästa förekomst i samma riktning + eller Shift-N för att söka i den motsatta riktningen. + + 3. Skriver man % när markören är på ett (,),[,],{, eller } hittas dess + matchande par. + + 4. För att ersätta den första gammalt med nytt på en rad skriv :s/gammlt/nytt + För att ersätta alla gammlt med nytt på en rad skriv :s/gammlt/nytt/g + För att ersätta fraser mellan rad # och rad # skriv :#,#s/gammlt/nytt/g + För att ersätta alla förekomster i filen skriv :%s/gammlt/nytt/g + För att bekräfta varje gång lägg till "c" :%s/gammlt/nytt/gc + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 5.1: HUR MAN KÖR ETT EXTERNT KOMMANDO + + + ** Skriv :! följt av ett externt kommando för att köra det kommandot. ** + + 1. Skriv det välbekanta kommandot : för att placera markören längst ned + på skärmen på skärmen. Detta låter dig skriva in ett kommando. + + 2. Skriv nu ! (utropstecken). Detta låter dig köra ett godtyckligt externt + skalkommando. + + 3. Som ett exempel skriv ls efter ! och tryck sedan <ENTER>. Detta kommer + att visa dig en listning av din katalog, precis som om du kört det vid + skalprompten. Använd :!dir om ls inte fungerar. + +Notera: Det är möjligt att köra vilket externt kommando som helst på det här + sättet. + +Notera: Alla :-kommandon måste avslutas med att trycka på <ENTER> + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 5.2: MER OM ATT SPARA FILER + + + ** För att spara ändringar gjorda i en fil, skriv :w FILNAMN. ** + + 1. Skriv :!dir eller :!ls för att få en listning av din katalog. + Du vet redan att du måste trycka <ENTER> efter det här. + + 2. Välj ett filnamn som inte redan existerar, som t.ex. TEST. + + 3. Skriv nu: :w TEST (där TEST är filnamnet du valt.) + + 4. Det här sparar hela filen (Vim handledningen) under namnet TEST. + För att verifiera detta, skriv :!dir igen för att se din katalog + +Notera: Om du skulle avsluta Vim och sedan öppna igen med filnamnet TEST så + skulle filen vara en exakt kopia av handledningen när du sparade den. + + 5. Ta nu bort filen genom att skriva (MS-DOS): :!del TEST + eller (Unix): :!rm TEST + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 5.3: ETT SELEKTIVT SPARA-KOMMANDO + + + ** För att spara en del av en fil, skriv :#,# w FILNAMN ** + + 1. Ännu en gång, skriv :!dir eller :!ls för att få en listning av din + katalog och välj ett passande filnamn som t.ex. TEST. + + 2. Flytta markören högst upp på den här sidan och tryck Ctrl-g för att få + reda på radnumret på den raden. KOM IHÅG DET NUMMRET! + + 3. Flytta nu längst ned på sidan och skriv Ctrl-g igen. + KOM IHÅG DET RADNUMMRET OCKSÅ! + + 4. För att BARA spara en sektion till en fil, skriv :#,# w TEST + där #,# är de två nummren du kom ihåg (toppen, botten) och TEST är + ditt filnamn. + + 5. Ännu en gång, kolla så att filen är där med :!dir men radera den INTE. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 5.4: TA EMOT OCH FÖRENA FILER + + + ** För att infoga innehållet av en fil, skriv :r FILNAMN ** + + 1. Skriv :!dir för att försäkra dig om att TEST-filen från tidigare + fortfarande är kvar. + + 2. Placera markören högst upp på den här sidan. + +NOTERA: Efter att du kört Steg 3 kommer du att se Lektion 5.3. + Flytta då NED till den här lektionen igen. + + 3. Ta nu emot din TEST-fil med kommandot :r TEST där TEST är namnet på + filen. + +NOTERA: Filen du tar emot placeras där markören är placerad. + + 4. För att verifiera att filen togs emot, gå tillbaka och notera att det nu + finns två kopior av Lektion 5.3, orginalet och filversionen. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + LEKTION 5 SAMMANFATTNING + + + 1. :!kommando kör ett externt kommando. + + Några användbara exempel är: + (MS-DOS) (Unix) + :!dir :!ls - visar en kataloglistning. + :!del FILNAMN :!rm FILNAMN - tar bort filen FILNAMN. + + 2. :w FILNAMN sparar den aktuella Vim-filen med namnet FILNAMN. + + 3. :#,#w FILNAMN sparar raderna # till # i filen FILNAMN. + + 4. :r FILNAMN tar emot filen FILNAMN och infogar den i den aktuella filen + efter markören. + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 6.1: ÖPPNA-KOMMANDOT + + + ** Skriv o för att öppna en rad under markören och placera dig i + Infoga-läge. ** + + 1. Flytta markören till raden nedan markerad --->. + + 2. Skriv o (litet o) för att öppna upp en rad NEDANFÖR markören och placera + dig i Infoga-mode. + + 3. Kopiera nu raden markerad ---> och tryck <ESC> för att avsluta + Infoga-läget. + +---> Efter du skrivit o placerad markören på en öppen rad i Infoga-läge. + + 4. För att öppna upp en rad OVANFÖR markören, skriv ett stort O , istället + för ett litet o. Pröva detta på raden nedan. +Öppna upp en rad ovanför denna genom att trycka Shift-O när markören står här. + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 6.2: LÄGG TILL-KOMMANDOT + + + ** Skriv a för att infoga text EFTER markören. ** + + 1. Flytta markören till slutet av den första raden nedan markerad ---> genom + att skriv $ i Normal-läge. + + 2. Skriv ett a (litet a) för att lägga till text EFTER tecknet under + markören. (Stort A lägger till i slutet av raden.) + +Notera: Detta undviker att behöva skriva i , det sista tecknet, texten att + infoga, <ESC>, högerpil, och slutligen, x, bara för att lägga till i + slutet på en rad! + + 3. Gör nu färdigt den första raden. Notera också att lägga till är likadant + som Infoga-läge, enda skillnaden är positionen där texten blir infogad. + +---> Här kan du träna +---> Här kan du träna på att lägga till text i slutet på en rad. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 6.3: EN ANNAN VERSION AV ERSÄTT + + + ** Skriv ett stort R för att ersätta fler än ett tecken. ** + + 1. Flytta markören till den första raden nedan markerad --->. + + 2. Placera markören vid början av det första ordet som är annorlunda jämfört + med den andra raden markerad ---> (ordet "sista"). + + 3. Skriv nu R och ersätt resten av texten på den första raden genom att + skriva över den gamla texten så att den första raden blir likadan som + den andra. + +---> För att få den första raden lika som den sista, använd tangenterna. +---> För att få den första raden lika som den andra, skriv R och den nya texten. + + 4. Notera att när du trycker <ESC> för att avsluta, så blir eventuell + oförändrad text kvar. + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lektion 6.4: SÄTT FLAGGOR + + ** Sätt en flagga så att en sökning eller ersättning ignorerar storlek ** + + 1. Sök efter "ignore" genom att skriva: + /ignore + Repetera flera gånger genom att trycka på n-tangenten + + 2. Sätt 'ic' (Ignore Case) flaggan genom att skriva: + :set ic + + 3. Sök nu efter "ignore" igen genom att trycka: n + Repeat search several more times by hitting the n key + + 4. Sätt 'hlsearch' and 'incsearch' flaggorna: + :set hls is + + 5. Skriv nu in sök-kommandot igen, och se vad som händer: + /ignore + + 6. För att ta bort framhävningen av träffar, skriv + :nohlsearch +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + LEKTION 6 SAMMANFATTNING + + + 1. Genom att skriva o öpnnas en rad NEDANFÖR markören och markören placeras + på den öppna raden i Infoga-läge. + Genom att skriva ett stort O öppnas raden OVANFÖR raden som markören är + på. + + 2. Skriv ett a för att infoga text EFTER tecknet som markören står på. + Genom att skriva ett stort A läggs text automatiskt till i slutet på + raden. + + 3. Genom att skriva ett stort R hamnar du i Ersätt-läge till <ESC> trycks + för att avsluta. + + 4. Genom att skriva ":set xxx" sätts flaggan "xxx" + + + + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + LEKTION 7: ON-LINE HJÄLP-KOMMANDON + + + ** Använd on-line hjälpsystemet ** + + Vim har ett omfattande on-line hjälpsystem. För att komma igång pröva ett av + dessa tre: + - tryck <HELP> tangenten (om du har någon) + - tryck <F1> tangenten (om du har någon) + - skriv :help <ENTER> + + Skriv :q <ENTER> för att stränga hjälpfönstret. + + Du kan hitta hjälp om nästan allting, genom att ge ett argument till + ":help" kommandot. Pröva dessa (glöm inte att trycka <ENTER>): + + :help w + :help c_<T + :help insert-index + :help user-manual + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + LEKTION 8: SKAPA ETT UPPSTARTSSKRIPT + + ** Aktivera Vim- funktioner ** + + Vim har många fler funktioner än Vi, men de flesta av dem är inaktiverade som + standard. För att börja använda fler funktioner måste du skapa en "vimrc"-fil. + + 1. Börja redigera "vimrc"-filen, detta beror på ditt system: + :edit ~/.vimrc för Unix + :edit $VIM/_vimrc för MS-Windows + + 2. Läs nu texten i exempel "vimrc"-filen: + + :read $VIMRUNTIME/vimrc_example.vim + + 3. Spara filen med: + + :write + + Nästa gång du startar Vim kommer den att använda syntaxframhävning. + Du kan lägga till alla inställningar du föredrar till den här "vimrc"-filen. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + Detta avslutar handledningen i Vim. Den var avsedd att ge en kort översikt av + redigeraren Vim, bara tillräckligt för att du ska kunna använda redigeraren + relativt enkelt. Den är långt ifrån komplett eftersom Vim har många många fler + kommandon. Läs användarmanualen härnäst: ":help user-manual". + + För vidare läsning rekommenderas den här boken: + Vim - Vi Improved - av Steve Oualline + Förlag: New Riders + Den första boken som är endast behandlar Vim. Speciellt användbar för + nybörjare. Det finns många exempel och bilder. + Se http://iccf-holland.org/click5.html + + Den här boken är äldre och behandlar mer Vi än Vim, men rekommenderas också: + Learning the Vi Editor - av Linda Lamb + Förlag: O'Reilly & Associates Inc. + Det är en bra bok för att lära sig nästan allt som du vill kunna göra med Vi. + Den sjätte upplagan inkluderar också information om Vim. + + Den här handledningen är skriven av Michael C. Pierce och Robert K. Ware, + Colorado School of Mines med idéer från Charles Smith, + Colorado State University. E-post: bware@mines.colorado.edu. + + Modifierad för Vim av Bram Moolenaar. + Översatt av Johan Svedberg <johan@svedberg.com> + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/tutor/tutor.utf-8 Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,970 @@ +=============================================================================== += W e l c o m e t o t h e V I M T u t o r - Version 1.7 = +=============================================================================== + + Vim is a very powerful editor that has many commands, too many to + explain in a tutor such as this. This tutor is designed to describe + enough of the commands that you will be able to easily use Vim as + an all-purpose editor. + + The approximate time required to complete the tutor is 25-30 minutes, + depending upon how much time is spent with experimentation. + + ATTENTION: + The commands in the lessons will modify the text. Make a copy of this + file to practise on (if you started "vimtutor" this is already a copy). + + It is important to remember that this tutor is set up to teach by + use. That means that you need to execute the commands to learn them + properly. If you only read the text, you will forget the commands! + + Now, make sure that your Shift-Lock key is NOT depressed and press + the j key enough times to move the cursor so that Lesson 1.1 + completely fills the screen. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 1.1: MOVING THE CURSOR + + + ** To move the cursor, press the h,j,k,l keys as indicated. ** + ^ + 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. + v + 1. Move the cursor around the screen until you are comfortable. + + 2. Hold down the down key (j) until it repeats. + Now you know how to move to the next lesson. + + 3. Using the down key, move to Lesson 1.2. + +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 + move around much faster, once you get used to it. Really! + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 1.2: EXITING VIM + + + !! NOTE: Before executing any of the steps below, read this entire lesson!! + + 1. Press the <ESC> key (to make sure you are in Normal mode). + + 2. Type: :q! <ENTER>. + This exits the editor, DISCARDING any changes you have made. + + 3. When you see the shell prompt, type the command that got you into this + tutor. That would be: vimtutor <ENTER> + + 4. If you have these steps memorized and are confident, execute steps + 1 through 3 to exit and re-enter the editor. + +NOTE: :q! <ENTER> discards any changes you made. In a few lessons you + will learn how to save the changes to a file. + + 5. Move the cursor down to Lesson 1.3. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 1.3: TEXT EDITING - DELETION + + + ** Press x to delete the character under the cursor. ** + + 1. Move the cursor to the line below marked --->. + + 2. To fix the errors, move the cursor until it is on top of the + character to be deleted. + + 3. Press the x key to delete the unwanted character. + + 4. Repeat steps 2 through 4 until the sentence is correct. + +---> The ccow jumpedd ovverr thhe mooon. + + 5. Now that the line is correct, go on to Lesson 1.4. + +NOTE: As you go through this tutor, do not try to memorize, learn by usage. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 1.4: TEXT EDITING - INSERTION + + + ** Press i to insert text. ** + + 1. Move the cursor to the first line below marked --->. + + 2. To make the first line the same as the second, move the cursor on top + of the first character AFTER where the text is to be inserted. + + 3. Press i and type in the necessary additions. + + 4. As each error is fixed press <ESC> to return to Normal mode. + Repeat steps 2 through 4 to correct the sentence. + +---> There is text misng this . +---> There is some text missing from this line. + + 5. When you are comfortable inserting text move to lesson 1.5. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 1.5: TEXT EDITING - APPENDING + + + ** Press A to append text. ** + + 1. Move the cursor to the first line below marked --->. + It does not matter on what character the cursor is in that line. + + 2. Press A and type in the necessary additions. + + 3. As the text has been appended press <ESC> to return to Normal mode. + + 4. Move the cursor to the second line marked ---> and repeat + steps 2 and 3 to correct this sentence. + +---> There is some text missing from th + There is some text missing from this line. +---> There is also some text miss + There is also some text missing here. + + 5. When you are comfortable appending text move to lesson 1.6. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 1.6: EDITING A FILE + + ** Use :wq to save a file and exit. ** + + !! NOTE: Before executing any of the steps below, read this entire lesson!! + + 1. Exit this tutor as you did in lesson 1.2: :q! + Or, if you have access to another terminal, do the following there. + + 2. At the shell prompt type this command: vim tutor <ENTER> + 'vim' is the command to start the Vim editor, 'tutor' is the name of the + file you wish to edit. Use a file that may be changed. + + 3. Insert and delete text as you learned in the previous lessons. + + 4. Save the file with changes and exit Vim with: :wq <ENTER> + + 5. If you have quit vimtutor in step 1 restart the vimtutor and move down to + the following summary. + + 6. After reading the above steps and understanding them: do it. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 1 SUMMARY + + + 1. The cursor is moved using either the arrow keys or the hjkl keys. + h (left) j (down) k (up) l (right) + + 2. To start Vim from the shell prompt type: vim FILENAME <ENTER> + + 3. To exit Vim type: <ESC> :q! <ENTER> to trash all changes. + OR type: <ESC> :wq <ENTER> to save the changes. + + 4. To delete the character at the cursor type: x + + 5. To insert or append text type: + i type inserted text <ESC> insert before the cursor + A type appended text <ESC> append after the line + +NOTE: Pressing <ESC> will place you in Normal mode or will cancel + an unwanted and partially completed command. + +Now continue with Lesson 2. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 2.1: DELETION COMMANDS + + + ** Type dw to delete a word. ** + + 1. Press <ESC> to make sure you are in Normal mode. + + 2. Move the cursor to the line below marked --->. + + 3. Move the cursor to the beginning of a word that needs to be deleted. + + 4. Type dw to make the word disappear. + + NOTE: The letter d will appear on the last line of the screen as you type + it. Vim is waiting for you to type w . If you see another character + than d you typed something wrong; press <ESC> and start over. + +---> There are a some words fun that don't belong paper in this sentence. + + 5. Repeat steps 3 and 4 until the sentence is correct and go to Lesson 2.2. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 2.2: MORE DELETION COMMANDS + + + ** Type d$ to delete to the end of the line. ** + + 1. Press <ESC> to make sure you are in Normal mode. + + 2. Move the cursor to the line below marked --->. + + 3. Move the cursor to the end of the correct line (AFTER the first . ). + + 4. Type d$ to delete to the end of the line. + +---> Somebody typed the end of this line twice. end of this line twice. + + + 5. Move on to Lesson 2.3 to understand what is happening. + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 2.3: ON OPERATORS AND MOTIONS + + + Many commands that change text are made from an operator and a motion. + The format for a delete command with the d delete operator is as follows: + + d motion + + Where: + d - is the delete operator. + motion - is what the operator will operate on (listed below). + + A short list of motions: + w - until the start of the next word, EXCLUDING its first character. + e - to the end of the current word, INCLUDING the last character. + $ - to the end of the line, INCLUDING the last character. + + Thus typing de will delete from the cursor to the end of the word. + +NOTE: Pressing just the motion while in Normal mode without an operator will + move the cursor as specified. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 2.4: USING A COUNT FOR A MOTION + + + ** Typing a number before a motion repeats it that many times. ** + + 1. Move the cursor to the start of the line marked ---> below. + + 2. Type 2w to move the cursor two words forward. + + 3. Type 3e to move the cursor to the end of the third word forward. + + 4. Type 0 (zero) to move to the start of the line. + + 5. Repeat steps 2 and 3 with different numbers. + +---> This is just a line with words you can move around in. + + 6. Move on to Lesson 2.5. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 2.5: USING A COUNT TO DELETE MORE + + + ** Typing a number with an operator repeats it that many times. ** + + In the combination of the delete operator and a motion mentioned above you + insert a count before the motion to delete more: + d number motion + + 1. Move the cursor to the first UPPER CASE word in the line marked --->. + + 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. + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 2.6: OPERATING ON LINES + + + ** Type dd to delete a whole line. ** + + Due to the frequency of whole line deletion, the designers of Vi decided + it would be easier to simply type two d's to delete a line. + + 1. Move the cursor to the second line in the phrase below. + 2. Type dd to delete the line. + 3. Now move to the fourth line. + 4. Type 2dd to delete two lines. + +---> 1) Roses are red, +---> 2) Mud is fun, +---> 3) Violets are blue, +---> 4) I have a car, +---> 5) Clocks tell time, +---> 6) Sugar is sweet +---> 7) And so are you. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 2.7: THE UNDO COMMAND + + + ** Press u to undo the last commands, U to fix a whole line. ** + + 1. Move the cursor to the line below marked ---> and place it on the + first error. + 2. Type x to delete the first unwanted character. + 3. Now type u to undo the last command executed. + 4. This time fix all the errors on the line using the x command. + 5. Now type a capital U to return the line to its original state. + 6. Now type u a few times to undo the U and preceding commands. + 7. Now type CTRL-R (keeping CTRL key pressed while hitting R) a few times + to redo the commands (undo the undo's). + +---> Fiix the errors oon thhis line and reeplace them witth undo. + + 8. These are very useful commands. Now move on to the Lesson 2 Summary. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 2 SUMMARY + + + 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 + + 4. To repeat a motion prepend it with a number: 2w + 5. The format for a change command is: + operator [number] motion + 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 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 + + 7. To undo previous actions, type: u (lowercase u) + To undo all the changes on a line, type: U (capital U) + To undo the undo's, type: CTRL-R + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 3.1: THE PUT COMMAND + + + ** Type p to put previously deleted text after the cursor. ** + + 1. Move the cursor to the first ---> line below. + + 2. Type dd to delete the line and store it in a Vim register. + + 3. Move the cursor to the c) line, ABOVE where the deleted line should go. + + 4. Type p to put the line below the cursor. + + 5. Repeat steps 2 through 4 to put all the lines in correct order. + +---> d) Can you learn too? +---> b) Violets are blue, +---> c) Intelligence is learned, +---> a) Roses are red, + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 3.2: THE REPLACE COMMAND + + + ** Type rx to replace the character at the cursor with x . ** + + 1. Move the cursor to the first line below marked --->. + + 2. Move the cursor so that it is on top of the first error. + + 3. Type r and then the character which should be there. + + 4. Repeat steps 2 and 3 until the first line is equal to the second one. + +---> 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.3. + +NOTE: Remember that you should be learning by doing, not memorization. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 3.3: THE CHANGE OPERATOR + + + ** To change until the end of a word, type ce . ** + + 1. Move the cursor to the first line below marked --->. + + 2. Place the cursor on the u in lubw. + + 3. Type ce and the correct word (in this case, type ine ). + + 4. Press <ESC> and move to the next character that needs to be changed. + + 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 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. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 3.4: MORE CHANGES USING c + + + ** 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: + + c [number] motion + + 2. The motions are the same, such as w (word) and $ (end of line). + + 3. Move to the first line below marked --->. + + 4. Move the cursor to the first error. + + 5. Type c$ and type the rest of the line like the second and press <ESC>. + +---> The end of this line needs some help to make it like the second. +---> The end of this line needs to be corrected using the c$ command. + +NOTE: You can use the Backspace key to correct mistakes while typing. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 3 SUMMARY + + + 1. To put back text that has just been deleted, type p . This puts the + deleted text AFTER the cursor (if a line was deleted it will go on the + line below the cursor). + + 2. To replace the character under the cursor, type r and then the + character you want to have there. + + 3. The change operator allows you to change from the cursor to where the + motion takes you. eg. Type ce to change from the cursor to the end of + the word, c$ to change to the end of a line. + + 4. The format for change is: + + c [number] motion + +Now go on to the next lesson. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 4.1: CURSOR LOCATION AND FILE STATUS + + ** 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!! + + 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 (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. + + 3. Type the number of the line you were on and then G . This will + return you to the line you were on when you first pressed CTRL-G. + + 4. If you feel confident to do this, execute steps 1 through 3. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 4.2: THE SEARCH COMMAND + + + ** Type / followed by a phrase to search for the phrase. ** + + 1. In Normal mode type the / character. Notice that it and the cursor + appear at the bottom of the screen as with the : command. + + 2. Now type 'errroor' <ENTER>. This is the word you want to search for. + + 3. To search for the same phrase again, simply type n . + To search for the same phrase in the opposite direction, type N . + + 4. To search for a phrase in the backward direction, use ? instead of / . + + 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. + +---> "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. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 4.3: MATCHING PARENTHESES SEARCH + + + ** Type % to find a matching ),], or } . ** + + 1. Place the cursor on any (, [, or { in the line below marked --->. + + 2. Now type the % character. + + 3. The cursor will move to the matching parenthesis or bracket. + + 4. Type % to move the cursor to the other matching bracket. + + 5. Move the cursor to another (,),[,],{ or } and see what % does. + +---> This ( is a test line with ('s, ['s ] and {'s } in it. )) + + +NOTE: This is very useful in debugging a program with unmatched parentheses! + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 4.4: THE SUBSTITUTE COMMAND + + + ** Type :s/old/new/g to substitute 'new' for 'old'. ** + + 1. Move the cursor to the line below marked --->. + + 2. Type :s/thee/the <ENTER> . Note that this command only changes the + first occurrence of "thee" in the line. + + 3. Now type :s/thee/the/g . Adding the g flag means to substitute + globally in the line, change all occurrences of "thee" in the line. + +---> thee best time to see thee flowers is in thee spring. + + 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 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 whether to substitute or not. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 4 SUMMARY + + + 1. CTRL-G displays your location in the file and the file status. + G moves to the end of the file. + number G moves to that line number. + gg moves to the first line. + + 2. Typing / followed by a phrase searches FORWARD for the phrase. + Typing ? followed by a phrase searches BACKWARD for the phrase. + After a search type n to find the next occurrence in the same direction + or N to search in the opposite direction. + CTRL-O takes you back to older positions, CTRL-I to newer positions. + + 3. Typing % while the cursor is on a (,),[,],{, or } goes to its match. + + 4. To substitute new for the first old in a line type :s/old/new + To substitute new for all 'old's on a line type :s/old/new/g + To substitute phrases between two line #'s type :#,#s/old/new/g + To substitute all occurrences in the file type :%s/old/new/g + To ask for confirmation each time add 'c' :%s/old/new/gc + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 5.1: HOW TO EXECUTE AN EXTERNAL COMMAND + + + ** Type :! followed by an external command to execute that command. ** + + 1. Type the familiar command : to set the cursor at the bottom of the + screen. This allows you to enter a command-line command. + + 2. Now type the ! (exclamation point) character. This allows you to + execute any external shell command. + + 3. As an example type ls following the ! and then hit <ENTER>. This + 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 + arguments. + +NOTE: All : commands must be finished by hitting <ENTER> + From here on we will not always mention it. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 5.2: MORE ON WRITING FILES + + + ** To save the changes made to the text, type :w FILENAME. ** + + 1. Type :!dir or :!ls to get a listing of your directory. + You already know you must hit <ENTER> after this. + + 2. Choose a filename that does not exist yet, such as TEST. + + 3. Now type: :w TEST (where TEST is the filename you chose.) + + 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 + would be an exact copy of the tutor when you saved it. + + 5. Now remove the file by typing (MS-DOS): :!del TEST + or (Unix): :!rm TEST + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 5.3: SELECTING TEXT TO WRITE + + + ** To save part of the file, type v motion :w FILENAME ** + + 1. Move the cursor to this line. + + 2. Press v and move the cursor to the fifth item below. Notice that the + text is highlighted. + + 3. Press the : character. At the bottom of the screen :'<,'> will appear. + + 4. Type w TEST , where TEST is a filename that does not exist yet. Verify + that you see :'<,'>w TEST before you press Enter. + + 5. Vim will write the selected lines to the file TEST. Use :!dir or !ls + to see it. Do not remove it yet! We will use it in the next lesson. + +NOTE: Pressing v starts Visual selection. You can move the cursor around + to make the selection bigger or smaller. Then you can use an operator + to do something with the text. For example, d deletes the text. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 5.4: RETRIEVING AND MERGING FILES + + + ** To insert the contents of a file, type :r FILENAME ** + + 1. Place the cursor just above this line. + +NOTE: After executing Step 2 you will see text from Lesson 5.3. Then move + DOWN to see this lesson again. + + 2. Now retrieve your TEST file using the command :r TEST where TEST is + the name of the file you used. + The file you retrieve is placed below the cursor line. + + 3. To verify that a file was retrieved, cursor back and notice that there + are now two copies of Lesson 5.3, the original and the file version. + +NOTE: You can also read the output of an external command. For example, + :r !ls reads the output of the ls command and puts it below the + cursor. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 5 SUMMARY + + + 1. :!command executes an external command. + + Some useful examples are: + (MS-DOS) (Unix) + :!dir :!ls - shows a directory listing. + :!del FILENAME :!rm FILENAME - removes file FILENAME. + + 2. :w FILENAME writes the current Vim file to disk with name FILENAME. + + 3. v motion :w FILENAME saves the Visually selected lines in file + FILENAME. + + 4. :r FILENAME retrieves disk file FILENAME and puts it below the + cursor position. + + 5. :r !dir reads the output of the dir command and puts it below the + cursor position. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 6.1: THE OPEN COMMAND + + + ** Type o to open a line below the cursor and place you in Insert mode. ** + + 1. Move the cursor to the line below marked --->. + + 2. Type the lowercase letter o to open up a line BELOW the cursor and place + you in Insert mode. + + 3. Now type some text and press <ESC> to exit Insert mode. + +---> After typing o the cursor is placed on the open line in Insert mode. + + 4. To open up a line ABOVE the cursor, simply type a capital O , rather + than a lowercase o. Try this on the line below. + +---> Open up a line above this by typing O while the cursor is on this line. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 6.2: THE APPEND COMMAND + + + ** Type a to insert text AFTER the cursor. ** + + 1. Move the cursor to the start of the line below marked --->. + + 2. Press e until the cursor is on the end of li . + + 3. Type an a (lowercase) to append text AFTER the cursor. + + 4. Complete the word like the line below it. Press <ESC> to exit Insert + mode. + + 5. Use e to move to the next incomplete word and repeat steps 3 and 4. + +---> 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 + the characters are inserted. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 6.3: ANOTHER WAY TO REPLACE + + + ** Type a capital R to replace more than one character. ** + + 1. Move the cursor to the first line below marked --->. Move the cursor to + the beginning of the first xxx . + + 2. Now press R and type the number below it in the second line, so that it + replaces the xxx . + + 3. Press <ESC> to leave Replace mode. Notice that the rest of the line + remains unmodified. + + 4. Repeat the steps to replace the remaining xxx. + +---> Adding 123 to xxx gives you xxx. +---> Adding 123 to 456 gives you 579. + +NOTE: Replace mode is like Insert mode, but every typed character deletes an + existing character. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 6.4: COPY AND PASTE TEXT + + + ** 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)". + + 2. Start Visual mode with v and move the cursor to just before "first". + + 3. Type y to yank (copy) the highlighted text. + + 4. Move the cursor to the end of the next line: j$ + + 5. Type p to put (paste) the text. Then type: a second <ESC> . + + 6. Use Visual mode to select " item.", yank it with y , move to the end of + the next line with j$ and put the text there with p . + +---> a) this is the first item. + b) + + NOTE: you can also use y as an operator; yw yanks one word. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 6.5: SET OPTION + + + ** Set an option so a search or substitute ignores case ** + + 1. Search for 'ignore' by entering: /ignore <ENTER> + Repeat several times by pressing n . + + 2. Set the 'ic' (Ignore case) option by entering: :set ic + + 3. Now search for 'ignore' again by pressing n + Notice that Ignore and IGNORE are now also found. + + 4. Set the 'hlsearch' and 'incsearch' options: :set hls is + + 5. Now type the search command again and see what happens: /ignore <ENTER> + + 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 + in the phrase: /ignore\c <ENTER> +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 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. + + 2. Type a to insert text AFTER the cursor. + Type A to insert text after the end of the line. + + 3. The e command moves to the end of a word. + + 4. The y operator yanks (copies) text, p puts (pastes) it. + + 5. Typing a capital R enters Replace mode until <ESC> is pressed. + + 6. Typing ":set xxx" sets the option "xxx". Some options are: + 'ic' 'ignorecase' ignore upper/lower case when searching + 'is' 'incsearch' show partial matches for a search phrase + 'hls' 'hlsearch' highlight all matching phrases + You can either use the long or the short option name. + + 7. Prepend "no" to switch an option off: :set noic + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 7.1: GETTING HELP + + + ** Use the on-line help system ** + + Vim has a comprehensive on-line help system. To get started, try one of + these three: + - press the <HELP> key (if you have one) + - press the <F1> key (if you have one) + - 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 :q <ENTER> to close the help window. + + You can find help on just about any subject, by giving an argument to the + ":help" command. Try these (don't forget pressing <ENTER>): + + :help w + :help c_CTRL-D + :help insert-index + :help user-manual +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 7.2: CREATE A STARTUP SCRIPT + + + ** Enable Vim features ** + + Vim has many more features than Vi, but most of them are disabled by + default. To start using more features you have to create a "vimrc" file. + + 1. Start editing the "vimrc" file. This depends on your system: + :e ~/.vimrc for Unix + :e $VIM/_vimrc for MS-Windows + + 2. Now read the example "vimrc" file contents: + :r $VIMRUNTIME/vimrc_example.vim + + 3. Write the file with: + :w + + The next time you start Vim it will use syntax highlighting. + You can add all your preferred settings to this "vimrc" file. + For more information type :help vimrc-intro + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 7.3: COMPLETION + + + ** Command line completion with CTRL-D and <TAB> ** + + 1. Make sure Vim is not in compatible mode: :set nocp + + 2. Look what files exist in the directory: :!ls or :!dir + + 3. Type the start of a command: :e + + 4. Press CTRL-D and Vim will show a list of commands that start with "e". + + 5. Press <TAB> and Vim will complete the command name to ":edit". + + 6. Now add a space and the start of an existing file name: :edit FIL + + 7. Press <TAB>. Vim will complete the name (if it is unique). + +NOTE: Completion works for many commands. Just try pressing CTRL-D and + <TAB>. It is especially useful for :help . + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 7 SUMMARY + + + 1. Type :help or press <F1> or <Help> to open a help window. + + 2. Type :help cmd to find help on cmd . + + 3. Type CTRL-W CTRL-W to jump to another window + + 4. Type :q to close the help window + + 5. Create a vimrc startup script to keep your preferred settings. + + 6. When typing a : command, press CTRL-D to see possible completions. + Press <TAB> to use one completion. + + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + This concludes the Vim Tutor. It was intended to give a brief overview of + the Vim editor, just enough to allow you to use the editor fairly easily. + It is far from complete as Vim has many many more commands. Read the user + manual next: ":help user-manual". + + For further reading and studying, this book is recommended: + Vim - Vi Improved - by Steve Oualline + Publisher: New Riders + The first book completely dedicated to Vim. Especially useful for beginners. + There are many examples and pictures. + See http://iccf-holland.org/click5.html + + This book is older and more about Vi than Vim, but also recommended: + Learning the Vi Editor - by Linda Lamb + Publisher: O'Reilly & Associates Inc. + It is a good book to get to know almost anything you want to do with Vi. + The sixth edition also includes information on Vim. + + This tutorial was written by Michael C. Pierce and Robert K. Ware, + Colorado School of Mines using ideas supplied by Charles Smith, + Colorado State University. E-mail: bware@mines.colorado.edu. + + Modified for Vim by Bram Moolenaar. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/tutor/tutor.vi.utf-8 Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,812 @@ +=============================================================================== += Xin chào mừng bạn đến với Hướng dẫn dùng Vim - Phiên bản 1.5 = +=============================================================================== + Vim là một trình soạn thảo rất mạnh. Vim có rất nhiều câu lệnh, + chính vì thế không thể trình bày hết được trong cuốn hướng dẫn này. + Cuốn hướng dẫn chỉ đưa ra những câu lệnh để giúp bạn sử dụng Vim + được dễ dàng hơn. Đây cũng chính là mục đich của sách + + Cần khoảng 25-30 phút để hoàn thành bài học, phụ thuộc vào thời + gian thực hành. + + Các câu lệnh trong bài học sẽ thay đổi văn bản này. Vì thế hãy tạo + một bản sao của tập tin này để thực hành (nếu bạn dùng "vimtutor" + thì đây đã là bản sao). + + Hãy nhớ rằng hướng dẫn này viết với nguyên tắc "học đi đôi với hành". + Có nghĩa là bạn cần chạy các câu lệnh để học chúng. Nếu chỉ đọc, bạn + sẽ quên các câu lệnh! + + Bây giờ, cần chắc chắn là phím Shift KHÔNG bị nhấn và hãy nhấn phím + j đủ số lần cần thiết (di chuyển con trỏ) để Bài 1.1 hiện ra đầy đủ + trên màn hình. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Bài 1.1: DI CHUYỂN CON TRỎ + + + ** Để di chuyển con trỏ, nhấn các phím h,j,k,l như đã chỉ ra. ** + ^ + k Gợi ý: phím h ở phía trái và di chuyển sang trái. + < h l > phím l ở bên phải và di chuyển sang phải. + j phím j trong như một mũi tên chỉ xuống + v + 1. Di chuyển con trỏ quanh màn hình cho đến khi bạn quen dùng. + + 2. Nhấn và giữ phím (j) cho đến khi nó lặp lại. +---> Bây giờ bạn biết cách chuyển tới bài học thứ hai. + + 3. Sử dụng phím di chuyển xuống bài 1.2. + +Chú ý: Nếu bạn không chắc chắn về những gì đã gõ, hãy nhấn <ESC> để chuyển vào + chế độ Câu lệnh, rồi gõ lại những câu lệnh mình muốn. + +Chú ý: Các phím mũi tên cũng làm việc. Nhưng một khi sử dụng thành thạo hjkl, + bạn sẽ di chuyển con trỏ nhanh hơn so với các phím mũi tên. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Bài 1.2: VÀO VÀ THOÁT VIM + + + !! CHÚ Ý: Trước khi thực hiện bất kỳ lệnh nào, xin hãy đọc cả bài học này!! + + 1. Nhấn phím <ESC> (để chắc chắn là bạn đang ở chế độ Câu lệnh). + + 2. Gõ: :q! <ENTER>. + +---> Lệnh này sẽ thoát trình soạn thảo mà KHÔNG ghi nhớ bất kỳ thay đổi nào mà bạn đã làm. + Nếu bạn muốn ghi nhớ những thay đổi đó và thoát thì hãy gõ: + :wq <ENTER> + + 3. Khi thấy dấu nhắc shell, hãy gõ câu lệnh đã đưa bạn tới hướng dẫn này. Có + thể là lệnh: vimtutor vi <ENTER> + Thông thường bạn dùng: vim tutor.vi<ENTER> + +---> 'vim' là trình soạn thảo vim, 'tutor.vi' là tập tin bạn muốn soạn thảo. + + 4. Nếu bạn đã nhớ và nắm chắc những câu lệnh trên, hãy thực hiện các bước từ + 1 tới 3 để thoát và quay vào trình soạn thảo. Sau đó di chuyển con trỏ + tới Bài 1.3. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Bài 1.3: SOẠN THẢO VĂN BẢN - XÓA + + +** Trong chế độ Câu lệnh nhấn x để xóa ký tự nằm dưới con trỏ. ** + + 1. Di chuyển con trỏ tới dòng có dấu --->. + + 2. Để sửa lỗi, di chuyển con trỏ để nó nằm trên ký tự sẽ bị + xóa. + + 3. Nhấn phím x để xóa ký tự không mong muốn. + + 4. Lặp lại các bước từ 2 tới 4 để sửa lại câu. + +---> Emm xiinh em đứnng chỗ nào cũnkg xinh. + + 5. Câu trên đã sửa xong, hãy chuyển tới Bài 1.4. + +Chú ý: Khi học theo cuốn hướng dẫn này đừng cố nhớ, mà học từ thực hành. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Bài 1.4: SOẠN THẢO VĂN BẢN - CHÈN + + + ** Trong chế độ Câu lệnh nhấn i để chèn văn bản. ** + + 1. Di chuyển con trỏ tới dòng có dấu ---> đầu tiên. + + 2. Để dòng thứ nhất giống hệt với dòng thứ hai, di chuyển con trỏ lên ký tự + đầu tiên NGAY SAU chỗ muốn chèn văn bản. + + 3. Nhấn i và gõ văn bản cần thêm. + + 4. Sau mỗi lần chèn từ còn thiếu nhấn <ESC> để trở lại chế dộ Câu lệnh. + Lặp lại các bước từ 2 tới 4 để sửa câu này. + +---> Mot lam chang nen , ba cay chum lai hon cao. +---> Mot cay lam chang nen non, ba cay chum lai nen hon nui cao. + + 5. Sau khi thấy quen với việc chèn văn bản hãy chuyển tới phần tổng kết + ở dưới. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + TỔNG KẾT BÀI 1 + + + 1. Con trỏ được di chuyển bởi các phím mũi tên hoặc các phím hjkl. + h (trái) j (xuống) k (lên) l (phải) + + 2. Để vào Vim (từ dấu nhắc %) gõ: vim TÊNTẬPTIN <ENTER> + + 3. Muốn thoát Vim gõ: <ESC> :q! <ENTER> để vứt bỏ mọi thay đổi. + HOẶC gõ: <ESC> :wq <ENTER> để ghi nhớ thay đổi. + + 4. Để xóa bỏ ký tự nằm dưới con trỏ trong chế độ Câu lệnh gõ: x + + 5. Để chèn văn bản tại vị trí con trỏ trong chế độ Câu lệnh gõ: + i văn bản sẽ nhập <ESC> + +CHÚ Ý: Nhấn <ESC> sẽ đưa bạn vào chế độ Câu lệnh hoặc sẽ hủy bỏ một câu lệnh + hay đoạn câu lệnh không mong muốn. + +Bây giờ chúng ta tiếp tục với Bài 2. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Bài 2.1: CÁC LỆNH XÓA + + + ** Gõ dw để xóa tới cuối một từ. ** + + 1. Nhấn <ESC> để chắc chắn là bạn đang trong chế độ Câu lệnh. + + 2. Di chuyển con trỏ tới dòng có dấu --->. + + 3. Di chuyển con trỏ tới ký tự đầu của từ cần xóa. + + 4. Gõ dw để làm từ đó biến mất. + + CHÚ Ý: các ký tự dw sẽ xuất hiện trên dòng cuối cùng của màn hình khi bạn gõ + chúng. Nếu bạn gõ nhầm, hãy nhấn <ESC> và làm lại từ đầu. + +---> Khi trái tỉm tìm tim ai như mùa đông giá lạnh lanh + Anh đâu thành cánh én nhỏ trùng khơi. + + 5. Lặp lại các bước cho đến khi sửa xong câu thơ rồi chuyển tới Bài 2.2. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Bài 2.2: CÁC CÂU LỆNH XÓA KHÁC + + + ** gõ d$ để xóa tới cuối một dòng. ** + + 1. Nhấn <ESC> để chắc chắn là bạn đang trong chế độ Câu lệnh. + + 2. Di chuyển con trỏ tới dòng có dấu --->. + + 3. Di chuyển con trỏ tới cuối câu đúng (SAU dấu . đầu tiên). + + 4. Gõ d$ để xóa tới cuối dòng. + +---> Đã qua đi những tháng năm khờ dại. thừa thãi. + + + 5. Chuyển tới Bài 2.3 để hiểu cái gì đang xảy ra. + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Bài 2.3: CÂU LỆNH VÀ ĐỐI TƯỢNG + + + Câu lệnh xóa d có dạng như sau: + + [số] d đối_tượng HOẶC d [số] đối_tượng + Trong đó: + số - là số lần thực hiện câu lệnh (không bắt buộc, mặc định=1). + d - là câu lệnh xóa. + đối_tượng - câu lệnh sẽ thực hiện trên chúng (liệt kê phía dưới). + + Danh sách ngắn của đối tượng: + w - từ con trỏ tới cuối một từ, bao gồm cả khoảng trắng. + e - từ con trỏ tới cuối một từ, KHÔNG bao gồm khoảng trắng. + $ - từ con trỏ tới cuối một dòng. + +CHÚ Ý: Dành cho những người ham tìm hiểu, chỉ nhấn đối tượng trong chế độ Câu + lệnh mà không có câu lệnh sẽ di chuyển con trỏ như trong danh sách trên. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Bài 2.4: TRƯỜNG HỢP NGOẠI LỆ CỦA QUY LUẬT 'CÂU LỆNH-ĐỐI TƯỢNG' + + + ** Gõ dd để xóa cả một dòng. ** + + Người dùng thường xuyên xóa cả một dòng, vì thế các nhà phát triển Vi đã + quyết định dùng hai chữ d để đơn giản hóa thao tác này. + + 1. Di chuyển con trỏ tới dòng thứ hai trong cụm phía dưới. + 2. Gõ dd để xóa dòng này. + 3. Bây giờ di chuyển tới dòng thứ tư. + 4. Gõ 2dd (hãy nhớ lại bộ ba số-câu lệnh-đối tượng) để xóa hai dòng. + + 1) Trong tim em khắc sâu bao kỉ niệm + 2) Tình yêu chân thành em dành cả cho anh + 3) Dẫu cuộc đời như bể dâu thay đổi + 4) Anh mãi là ngọn lửa ấm trong đêm + 5) Đã qua đi những tháng năm khờ dại + 7) Hãy để tự em lau nước mắt của mình + 8) Lặng lẽ sống những đêm dài bất tận + 9) Bao khổ đau chờ tia nắng bình minh + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Bài 2.5: CÂU LỆNH "HỦY THAO TÁC" + + + ** Nhấn u để hủy bỏ những câu lệnh cuối cùng, U để sửa cả một dòng. ** + + 1. Di chuyển con trỏ tới dòng có dấu ---> và đặt con trỏ trên từ có lỗi + đầu tiên + 2. Gõ x để xóa chữ cái gây ra lỗi đầu tiên. + 3. Bây giờ gõ u để hủy bỏ câu lệnh vừa thự hiện (xóa chữ cái). + 4. Dùng câu lệnh x để sửa lỗi cả dòng này. + 5. Bây giờ gõ chữ U hoa để phục hồi trạng thái ban đầu của dòng. + 6. Bây giờ gõ u vài lần để hủy bỏ câu lệnh U và các câu lệnh trước. + 7. Bây giờ gõ CTRL-R (giữ phím CTRL và gõ R) và lầu để thực hiện + lại các câu lệnh (hủy bỏ các câu lệnh hủy bỏ). + +---> Câyy ccó cộii, nuước csó nguuồn. + + 8. Đây là những câu lệnh rất hữu ích. Bây giờ chuyển tới Tổng kết Bài 2. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + TỔNG KẾT BÀI 2 + + + 1. Để xóa từ con trỏ tới cuối một từ gõ: dw + + 2. Để xóa từ con trỏ tới cuối một dòng gõ: d$ + + 3. Để xóa cả một dòng gõ: dd + + 4. Một câu lệnh trong chế độ Câu lệnh có dạng: + + [số] câu_lệnh đối_tượng HOẶC câu_lệnh [số] đối_tượng + trong đó: + số - là số lần thực hiện câu lệnh (không bắt buộc, mặc định=1). + câu_lệnh - là những gì thực hiện, ví dụ d dùng để xóa. + đối_tượng - câu lệnh sẽ thực hiện trên chúng, ví dụ w (từ), + $ (tới cuối một dòng), v.v... + + 5. Để hủy bỏ thao tác trước, gõ: u (chữ u thường) + Để hủy bỏ tất cả các thao tác trên một dòng, gõ: U (chữ U hoa) + Để hủy bỏ các câu lệnh hủy bỏ, gõ: CTRL-R + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Bài 3.1: CÂU LỆNH DÁN + + + ** Gõ p để dán những gì vừa xóa tới sau con trỏ. ** + + 1. Di chuyển con trỏ tới dòng đầu tiên trong cụm ở dưới. + + 2. Gõ dd để xóa và ghi lại một dòng trong bộ nhớ đệm của Vim. + + 3. Di chuyển con trỏ tới dòng Ở TRÊN chỗ cần dán. + + 4. Trong chế độ Câu lệnh, gõ p để thay thế dòng. + + 5. Lặp lại các bước từ 2 tới 4 để đặt các dòng theo đúng thứ tự của chúng. + + d) Niềm vui như gió xưa bay nhè nhẹ + b) Em vẫn mong anh sẽ đến với em + c) Đừng để em mất đi niềm hy vọng đó + a) Ai sẽ giúp em vượt qua sóng gió + e) Dễ ra đi khó giữ lại bên mình + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Bài 3.2: CÂU LỆNH THAY THẾ + + + ** Gõ r và một ký tự để thay thế ký tự nằm dưới con trỏ. ** + + 1. Di chuyển con trỏ tới dòng có dấu --->. + + 2. Di chuyển con trỏ tới ký tự gõ sai đầu tiên. + + 3. Gõ r và ký tự đúng. + + 4. Lặp lại các bước từ 2 đến 4 để sửa cả dòng. + +---> "Trên đời nài làm gì có đườmg, người to đi mãi rồi thànk đường là tHôi" +---> "Trên đời này làm gì có đường, người ta đi mãi rồi thành đường mà thôi" + + 5. Bây giờ chuyển sang Bài 3.3. + +CHÚ Ý: Hãy nhớ rằng bạn cần thực hành, không nên "học vẹt". + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Bài 3.3: CÂU LỆNH THAY ĐỔI + + + ** Để thay đổi một phần hay cả một từ, gõ cw . ** + + 1. Di chuyển con trỏ tới dòng có dấu --->. + + 2. Đặt con trỏ trên chữ trong. + + 3. Gõ cw và sửa lại từ (trong trường hợp này, gõ 'ine'.) + + 4. Gõ <ESC> và chuyển tới lỗi tiếp theo (chữ cái đầu tiên trong số cần thay.) + + 5. Lặp lại các bước 3 và 4 cho tới khi thu được dòng như dòng thứ hai. + +---> Trên dùgn này có một dầy từ cần tyays đổi, sử dunk câu lệnh thay đổi. +---> Trên dong này có một vai từ cần thay đổi, sử dung câu lệnh thay đổi. + +Chú ý rằng cw không chỉ thay đổi từ, nhưng còn đưa bạn vào chế độ chèn. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Bài 3.4: TIẾP TỤC THAY ĐỔI VỚI c + + + ** Câu lệnh thay đổi được sử dụng với cùng đối tượng như câu lệnh xóa. ** + + 1. Câu lệnh thay đổi làm việc tương tự như câu lệnh xóa. Định dạng như sau: + + [số] c đối_tượng HOẶC c [số] đối_tượng + + 2. Đối tượng cũng giống như ở trên, ví dụ w (từ), $ (cuối dòng), v.v... + + 3. Di chuyển con trỏ tới dòng có dấu --->. + + 4. Di chuyển con trỏ tới dòng có lỗi đầu tiên. + + 5. Gõ c$ để sửa cho giống với dòng thứ hai và gõ <ESC>. + +---> Doan cuoi dong nay can sua de cho giong voi dong thu hai. +---> Doan cuoi dong nay can su dung cau lenh c$ de sua. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + TỔNG KẾT BÀI 3 + + + 1. Để dán đoạn văn bản vừa xóa, gõ p. Câu lệnh này sẽ đặt đoạn văn bản này + PHÍA SAU con trỏ (nếu một dòng vừa bị xóa, dòng này sẽ được đặt vào dòng + nằm dưới con trỏ). + + 2. Để thay thế ký tự dưới con trỏ, gõ r và sau đó gõ + ký tự muốn thay vào. + + 3. Câu lệnh thay đổi cho phép bạn thay đổi đối tượng chỉ ra từ con + trỏ tới cuối đối tượng. vd. Gõ cw để thay đổi từ + con trỏ tới cuối một từ, c$ để thay đổi tới cuối một dòng. + + 4. Định dạng để thay đổi: + + [số] c đối_tượng HOẶC c [số] đối_tượng + +Bây giờ chúng ta tiếp tục bài học mới. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Bài 4.1: THÔNG TIN VỀ TẬP TIN VÀ VỊ TRÍ TRONG TẬP TIN + + + ** Gõ CTRL-g để hiển thị vị trí của bạn trong tập tin và thông tin về tập tin. + Gõ SHIFT-G để chuyển tới một dòng trong tập tin. ** + + Chú ý: Đọc toàn bộ bài học này trước khi thực hiện bất kỳ bước nào!! + + 1. Giữ phím Ctrl và nhấn g . Một dòng thông tin xuất hiện tại cuối trang + với tên tập tin và dòng mà bạn đang nằm trên. Hãy nhớ số dòng này + Cho bước số 3. + + 2. Nhấn shift-G để chuyển tới cuối tập tin. + + 3. Gõ số dòng mà bạn đã nằm trên và sau đó shift-G. Thao tác này sẽ đưa bạn + trở lại dòng mà con trỏ đã ở trước khi nhấn tổ hợp Ctrl-g. + (Khi bạn gõ số, chúng sẽ KHÔNG hiển thị trên màn hình.) + + 4. Nếu bạn cảm thấy đã hiểu rõ, hãy thực hiện các bước từ 1 tới 3. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Bài 4.2: CÂU LỆNH TÌM KIẾM + + + ** Gõ / và theo sau là cụm từ muốn tìm kiếm. ** + + 1. Trong chế độ Câu lệnh gõ ký tự / .Chú ý rằng ký tự này và con trỏ sẽ + xuất hiện tại cuối màn hình giống như câu lệnh : . + + 2. Bây giờ gõ 'loiiiii' <ENTER>. Đây là từ bạn muốn tìm. + + 3. Để tìm kiếm cụm từ đó lần nữa, đơn giản gõ n . + Để tìm kiếm cụm từ theo hướng ngược lại, gõ Shift-N . + + 4. Nếu bạn muối tìm kiếm cụm từ theo hướng ngược lại đầu tập tin, sử dụng + câu lệnh ? thay cho /. + +---> "loiiiii" là những gì không đúng lắm; loiiiii thường xuyên xảy ra. + +Chú ý: Khi tìm kiếm đến cuối tập tin, việc tìm kiếm sẽ tiếp tục từ đầu + tập tin này. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Bài 4.3: TÌM KIẾM CÁC DẤU NGOẶC SÁNH ĐÔI + + + ** Gõ % để tìm kiếm ),], hay } . ** + + 1. Đặt con trỏ trên bất kỳ một (, [, hay { nào trong dòng có dấu --->. + + 2. Bây giờ gõ ký tự % . + + 3. Con trỏ sẽ di chuyển đến dấu ngoặc tạo cặp (dấu đóng ngoặc). + + 4. Gõ % để chuyển con trỏ trở lại dấu ngoặc đầu tiên (dấu mở ngoặc). + +---> Đây là ( một dòng thử nghiệm với các dấu ngoặc (, [ ] và { } . )) + +Chú ý: Rất có ích khi sửa lỗi chương trình, khi có các lỗi thừa thiếu dấu ngoặc! + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Bài 4.4: MỘT CÁCH SỬA LỖI + + + ** Gõ :s/cũ/mới/g để thay thế 'mới' vào 'cũ'. ** + + 1. Di chuyển con trỏ tới dòng có dấu --->. + + 2. Gõ :s/duou/ruou <ENTER> . Chú ý rằng câu lệnh này chỉ thay đổi từ tìm + thấy đầu tiên trên dòng (từ 'duou' đầu dòng). + + 3. Bây giờ gõ :s/duou/ruou/g để thực hiện thay thế trên toàn bộ dòng. + Lệnh này sẽ thay thế tất cả những từ ('duou') tìm thấy trên dòng. + +---> duou ngon phai co ban hie. Khong duou cung khong hoa. + + 4. Để thay thế thực hiện trong đoạn văn bản giữa hai dòng, + gõ :#,#s/cũ/mới/g trong đó #,# là số thứ tự của hai dòng. + Gõ :%s/cũ/mới/g để thực hiện thay thế trong toàn bộ tập tin. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + TỔNG KẾT BÀI 4 + + + 1. Ctrl-g vị trí của con trỏ trong tập tin và thông tin về tập tin. + Shift-G di chuyển con trỏ tới cuối tập tin. Số dòng và theo sau + là Shift-G di chuyển con trỏ tới dòng đó. + + 2. Gõ / và cụm từ theo sau để tìm kiếm cụm từ VỀ PHÍA TRƯỚC. + Gõ ? và cụm từ theo sau để tìm kiếm cụm từ NGƯỢC TRỞ LẠI. + Sau một lần tìm kiếm gõ n để tìm kiếm cụm từ lại một lần nữa theo hướng + đã tìm hoặc Shift-N để tìm kiếm theo hướng ngược lại. + + 3. Gõ % khi con trỏ nằm trên một (,),[,],{, hay } sẽ chỉ ra vị trí của + dấu ngoặc còn lại trong cặp. + + 4. Để thay thế 'mới' cho 'cũ' đầu tiên trên dòng, gõ :s/cũ/mới + Để thay thế 'mới' cho tất cả 'cũ' trên dòng, gõ :s/cũ/mới/g + Để thay thế giữa hai dòng, gõ :#,#s/cũ/mới/g + Để thay thế trong toàn bộ tập tin, gõ :%s/cũ/mới/g + Để chương trình hỏi lại trước khi thay thế, thêm 'c' :%s/cũ/mới/gc + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Lesson 5.1: CÁCH THỰC HIỆN MỘT CÂU LỆNH NGOẠI TRÚ + + + ** Gõ :! theo sau là một câu lệnh ngoại trú để thực hiện câu lệnh đó. ** + + 1. Gõ câu lệnh quen thuộc : để đặt con trỏ tại cuối màn hình. + Thao tác này cho phép bạn nhập một câu lệnh. + + 2. Bây giờ gõ ký tự ! (chấm than). Ký tự này cho phép bạn + thực hiện bất kỳ một câu lệnh shell nào. + + 3. Ví dụ gõ ls theo sau dấu ! và gõ <ENTER>. Lệnh này + sẽ hiển thị nội dung của thư mục hiện thời, hoặc sử dụng + lệnh :!dir nếu ls không làm việc. + +Chú ý: Có thể thực hiện bất kỳ câu lệnh ngoại trú nào theo cách này. + +Chú ý: Tất cả các câu lệnh : cần kết thúc bởi phím <ENTER> + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Bài 5.2: GHI LẠI CÁC TẬP TIN + + + ** Để ghi lại các thay đổi, gõ :w TÊNTỆPTIN. ** + + 1. Gõ :!dir hoặc :!ls để lấy bảng liệt kê thư mục hiện thời. + Như bạn đã biết, bạn cần gõ <ENTER> để thực hiện. + + 2. Chọn một tên tập tin chưa có, ví dụ TEST. + + 3. Bây giờ gõ: :w TEST (trong đó TEST là tên tập tin bạn đã chọn.) + + 4. Thao tác này ghi toàn bộ tập tin (Hướng dẫn dùng Vim) dưới tên TEST. + Để kiểm tra lại, gõ :!dir một lần nữa để liệt kê thư mục. + +Chú ý: Nếu bạn thoát khỏi Vim và quay trở lại với tên tập tin TEST, thì tập + tin sẽ là bản sao của hướng dẫn tại thời điểm bạn ghi lại. + + 5. Bây giờ xóa bỏ tập tin (MS-DOS): :!del TEST + hay (Unix): :!rm TEST + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Bài 5.3: CÂU LỆNH GHI CHỌN LỌC + + + ** Để ghi một phần của tập tin, gõ :#,# w TÊNTẬPTIN ** + + 1. Gõ lại một lần nữa :!dir hoặc :!ls để liệt kê nội dung thư mục + rồi chọn một tên tập tin thích hợp, ví dụ TEST. + + 2. Di chuyển con trỏ tới đầu trang này, rồi gõ Ctrl-g để tìm ra số thứ + tự của dòng đó. HÃY NHỚ SỐ THỨ TỰ NÀY! + + 3. Bây giờ di chuyển con trỏ tới dòng cuối trang và gõ lại Ctrl-g lần nữa. + HÃY NHỚ CẢ SỐ THỨ TỰ NÀY! + + 4. Để CHỈ ghi lại một phần vào một tập tin, gõ :#,# w TEST trong đó #,# + là hai số thứ tự bạn đã nhớ (đầu,cuối) và TEST là tên tập tin. + + 5. Nhắc lại, xem tập tin của bạn có ở đó không với :!dir nhưng ĐỪNG xóa. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Bài 5.4: ĐỌC VÀ KẾT HỢP CÁC TẬP TIN + + + ** Để chèn nội dung của một tập tin, gõ :r TÊNTẬPTIN ** + + 1. Gõ :!dir để chắc chắn là có tệp tin TEST. + + 2. Đặt con trỏ tại đầu trang này. + +CHÚ Ý: Sau khi thực hiện Bước 3 bạn sẽ thấy Bài 5.3. Sau đó cần di chuyển + XUỐNG bài học này lần nữa. + + 3. Bây giờ dùng câu lệnh :r TEST để đọc tập tin TEST, trong đó TEST là + tên của tập tin. + +CHÚ Ý: Tập tin được đọc sẽ đặt bắt đầu từ vị trí của con trỏ. + + 4. Để kiểm tra lại, di chuyển con trỏ ngược trở lại và thấy rằng bây giờ + có hai Bài 5.3, bản gốc và bản vừa chèn. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + TỔNG KẾT BÀI 5 + + + 1. :!câulệnh thực hiện một câu lệnh ngoại trú + + Một vài ví dụ hữu ích: + (MS-DOS) (Unix) + :!dir :!ls - liệt kê nội dung một thư mục. + :!del TÊNTẬPTIN :!rm TÊNTẬPTIN - xóa bỏ tập tin TÊNTẬPTIN. + + 2. :w TÊNTẬPTIN ghi tập tin hiện thời của Vim lên đĩa với tên TÊNTẬPTIN. + + 3. :#,#w TÊNTẬPTIN ghi các dòng từ # tới # vào tập tin TÊNTẬPTIN. + + 4. :r TÊNTẬPTIN đọc tập tin trên đĩa TÊNTẬPTIN và chèn nội dung của nó vào + tập tin hiện thời sau vị trí của con trỏ. + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Bài 6.1: CÂU LỆNH TẠO DÒNG + + + ** Gõ o để mở một dòng phía dưới con trỏ và chuyển vào chế độ Soạn thảo. ** + + 1. Di chuyển con trỏ tới dòng có dấu --->. + + 2. Gõ o (chữ thường) để mở một dòng BÊN DƯỚI con trỏ và chuyển vào chế độ + Soạn thảo. + + 3. Bây giờ sao chép dòng có dấu ---> và nhấn <ESC> để thoát khỏi chế độ Soạn + thảo. + +---> Sau khi gõ o con trỏ sẽ đặt trên dòng vừa mở trong chế độ Soạn thảo. + + 4. Để mở một dòng Ở TRÊN con trỏ, đơn giản gõ một chữ O hoa, thay cho + chữ o thường. Hãy thử thực hiện trên dòng dưới đây. +Di chuyển con trỏ tới dòng này, rồi gõ Shift-O sẽ mở một dòng trên nó. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Bài 6.2: CÂU LỆNH THÊM VÀO + + + ** Gõ a để chèn văn bản vào SAU con trỏ. ** + + 1. Di chuyển con trỏ tới cuối dòng đầu tiên có ký hiệu ---> + bằng cách gõ $ trong chế độ câu lệnh. + + 2. Gõ a (chữ thường) để thêm văn bản vào SAU ký tự dưới con trỏ. + (Chữ A hoa thêm văn bản vào cuối một dòng.) + +Chú ý: Lệnh này thay cho việc gõ i , ký tự cuối cùng, văn bản muốn chèn, + <ESC>, mũi tên sang phải, và cuối cùng, x , chỉ để thêm vào cuối dòng! + + 3. Bây giờ thêm cho đủ dòng thứ nhất. Chú ý rằng việc thêm giống hệt với + việc chèn, trừ vị trí chèn văn bản. + +---> Dong nay cho phep ban thuc hanh +---> Dong nay cho phep ban thuc hanh viec them van ban vao cuoi dong. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Bài 6.3: MỘT CÁCH THAY THẾ KHÁC + + + ** Gõ chữ cái R hoa để thay thế nhiều ký tự. ** + + 1. Di chuyển con trỏ tới cuối dòng đầu tiên có ký hiệu --->. + + 2. Đặt con trỏ tại chữ cái đầu của từ đầu tiên khác với dòng có dấu + ---> tiếp theo (từ 'tren'). + + 3. Bây giờ gõ R và thay thế phần còn lại của dòng thứ nhất bằng cách gõ + đè lên văn bản cũ để cho hai dòng giống nhau. + +---> De cho dong thu nhat giong voi dong thu hai tren trang nay. +---> De cho dong thu nhat giong voi dong thu hai, go R va van ban moi. + + 4. Chú ý rằng khi bạn nhấn <ESC> để thoát, đoạn văn bản không sửa đổi sẽ + được giữ nguyên. + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Bài 6.4: THIẾT LẬP CÁC THAM SỐ + + ** Thiết lập một tùy chọn để việc tìm kiếm hay thay thế lờ đi kiểu chữ ** + + 1. Tìm kiếm từ 'lodi' bằng cách gõ: + /lodi + Lặp lại vài lần bằng phím n. + + 2. Đặt tham số 'ic' (Lodi - ignore case) bằng cách gõ: + :set ic + + 3. Bây giờ thử lại tìm kiếm 'lodi' bằng cách gõ: n + Lặp lại vài lần bằng phím n. + + 4. Đặt các tham số 'hlsearch' và 'incsearch': + :set hls is + + 5. Bây giờ nhập lại câu lệnh tìm kiếm một lần nữa và xem cái gì xảy ra: + /lodi + + 6. Để xóa bỏ việc hiện sáng từ tìm thấy, gõ: + :nohlsearch +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + TỔNG KẾT BÀI 6 + + + 1. Gõ o mở một dòng phía DƯỚI con trỏ và đặt con trỏ trên dòng vừa mở + trong chế độ Soạn thảo. + Gõ một chữ O hoa để mở dòng phía TRÊN dòng của con trỏ. + + 2. Gõ a để chèn văn bản vào SAU ký tự nằm dưới con trỏ. + Gõ một chữ A hoa tự động thêm văn bản vào cuối một dòng. + + 3. Gõ một chữ R hoa chuyển vào chế độ Thay thế cho đến khi nhấn <ESC>. + + 4. Gõ ":set xxx" sẽ đặt tham số "xxx" + + + + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Bài 7: CÂU LỆNH TRỢ GIÚP + + + ** Sử dụng hệ thống trợ giúp có sẵn ** + + Vim có một hệ thống trợ giúp đầy đủ. Để bắt đầu, thử một trong ba + lệnh sau: + - nhấn phím <HELP> (nếu bàn phím có) + - nhấn phím <F1> (nếu bàn phím có) + - gõ :help <ENTER> + + Gõ :q <ENTER> để đóng cửa sổ trợ giúp. + + Bạn có thể tìm thấy trợ giúp theo một đề tài, bằng cách đưa tham số tới + câu lệnh ":help". Hãy thử (đừng quên gõ <ENTER>): + + :help w + :help c_<T + :help insert-index + :help user-manual + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Bài 8: TẠO MỘT SCRIPT KHỞI ĐỘNG + + ** Bật các tính năng của Vim ** + + Vim có nhiều tính năng hơn Vi, nhưng hầu hết chúng bị tắt theo mặc định. + Để sử dụng các tính năng này bạn cần phải tạo một tập tin "vimrc". + + 1. Soạn thảo tệp tin "vimrc", phụ thuộc vào hệ thống của bạn: + :edit ~/.vimrc đối với Unix + :edit $VIM/_vimrc đối với MS-Windows + + 2. Bây giờ đọc tập tin "vimrc" ví dụ: + + :read $VIMRUNTIME/vimrc_example.vim + + 3. Ghi lại tập tin: + + :write + + Trong lần khởi động tiếp theo, Vim sẽ sử dụng việc hiện sáng cú pháp. + Bạn có thể thêm các thiết lập ưa thích vào tập tin "vimrc" này. + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + Bài học hướng dẫn sử dụng Vim (Vim Tutor) kết thúc tại đây. Bài học đưa ra + cái nhìn tổng quát về trình soạn thảo Vim, chỉ đủ để bạn có thể sử dụng + trình soạn thảo một cách dễ dàng. Bài học còn rất xa để có thể nói là đầy + đủ vì Vim có rất rất nhiều câu lệnh. Tiếp theo xin hãy đọc hướng dẫn người + dùng: ":help user-manual". + + Cuốn sách sau được khuyên dùng cho việc nghiên cứu sâu hơn: + Vim - Vi Improved - Tác giả: Steve Oualline + Nhà xuất bản: New Riders + Cuốn sách đầu tiên dành hoàn toàn cho Vim. Đặc biệt có ích cho người mới. + Có rất nhiều ví dụ và tranh ảnh. + Hãy xem: http://iccf-holland.org/click5.html + + Cuốn sách tiếp theo này xuất bản sớm hơn và nói nhiều về Vi hơn là Vim, + nhưng cũng rất nên đọc: + Learning the Vi Editor - Tác giả: Linda Lamb + Nhà xuất bản: O'Reilly & Associates Inc. + Đây là một cuốn sách hay và cho bạn biết tất cả cách thực hiện những gì muốn + làm với Vi. Lần xuất bản thứ sáu đã thêm thông tin về Vim. + + Bài học hướng dẫn này viết bởi Michael C. Pierce và Robert K. Ware, + Colorado School of Mines sử dụng ý tưởng của Charles Smith, + Colorado State University. E-mail: bware@mines.colorado.edu. + + Sửa đổi cho Vim bởi Bram Moolenaar. + + Dịch bởi: Phan Vĩnh Thịnh <teppi@vnlinux.org>, 2005 + Translator: Phan Vinh Thịnh <teppi@vnlinux.org>, 2005 +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/runtime/tutor/tutor.zh.utf-8 Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,852 @@ +=============================================================================== += 歡 迎 閱 讀 《 V I M 教 程 》 ── 版本 1.5 = +=============================================================================== + vim 是一個具有很多命令的功能非常強大的編輯器。限于篇幅,在本教程當中 + 不就詳細介紹了。本教程的設計目標是講述一些必要的基本命令,而掌握好這 + 些命令,您就能夠很容易將vim當作一個通用的萬能編輯器來使用了。 + + 完成本教程的內容大約需要25-30分鐘,取決于您訓練的時間。 + + 每一節的命令操作將會更改本文。推薦您復制本文的一個副本,然後在副本上 + 進行訓練(如果您是通過"vimtutor"來啟動教程的,那麼本文就已經是副本了)。 + + 切記一點︰本教程的設計思路是在使用中進行學習的。也就是說,您需要通過 + 執行命令來學習它們本身的正確用法。如果您只是閱讀而不操作,那麼您可能 + 會很快遺忘這些命令的! + + 好了,現在請確定您的Shift-Lock(大小寫鎖定鍵)還沒有按下,然後按鍵盤上 + 的字母鍵 j 足夠多的次數來移動光標,直到第一節的內容能夠完全充滿屏幕。 + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第一講第一節︰移動光標 + + + ※※ 要移動光標,請依照說明分別按下 h、j、k、l 鍵。 ※※ + + ^ + k 提示︰ h 的鍵位于左邊,每次按下就會向左移動。 + < h l > l 的鍵位于右邊,每次按下就會向右移動。 + j j 鍵看起來很象一支尖端方向朝下的箭頭。 + v + + 1. 請隨意在屏幕內移動光標,直至您覺得舒服為止。 + + 2. 按下下行鍵(j),直到出現光標重復下行。 + +---> 現在您應該已經學會如何移動到下一講吧。 + + 3. 現在請使用下行鍵,將光標移動到第二講。 + +提示︰如果您不敢確定您所按下的字母,請按下<ESC>鍵回到正常(Normal)模式。 + 然後再次從鍵盤輸入您想要的命令。 + +提示︰光標鍵應當也能正常工作的。但是使用hjkl鍵,在習慣之後您就能夠快速 + 地在屏幕內四處移動光標了。 + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第一講第二節︰VIM的進入和退出 + + + !! 特別提示︰敬請閱讀完整本一節的內容,然後才能執行以下所講解的命令。 + + 1. 請按<ESC>鍵(這是為了確保您處在正常模式)。 + + 2. 然後輸入︰ :q! <回車> + +---> 這種方式的退出編輯器絕不會保存您進入編輯器以來所做的改動。 + 如果您想保存更改再退出,請輸入︰ + :wq <回車> + + 3. 如果您看到了命令行提示符,請輸入能夠帶您回到本教程的命令,那就是︰ + + vimtutor <回車> + + 通常情況下您也可以用這種方式︰ + + vim tutor <回車> + +---> 這裡的 'vim' 表示進入vim編輯器,而 'tutor'則是您準備要編輯的文件。 + + 4. 如果您自信已經牢牢記住了這些步驟的話,請從步驟1執行到步驟3退出,然 + 後再次進入編輯器。接著將光標移動到第一講第三節來繼續我們的教程講解。 + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第一講第三節︰文本編輯之刪除 + + + ** 在正常(Normal)模式下,可以按下 x 鍵來刪除光標所在位置的字符。** + + 1. 請將光標移動到本節中下面標記有 ---> 的那一行。 + + 2. 為了修正輸入錯誤,請將光標移至準備刪除的字符的位置處。 + + 3. 然後按下 x 鍵將錯誤字符刪除掉。 + + 4. 重復步驟2到步驟4,直到句子修正為止。 + +---> The ccow jumpedd ovverr thhe mooon. + + 5. 好了,該行已經修正了,下一節內容是第一講第四節。 + +特別提示︰在您瀏覽本教程時,不要強行記憶。記住一點︰在使用中學習。 + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第一講第四節︰文本編輯之插入 + + + ** 在正常模式下,可以按下 i 鍵來插入文本。** + + 1. 請將光標移動到本節中下面標記有 ---> 的第一行。 + + 2. 為了使得第一行內容雷同于第二行,請將光標移至文本第一個字符準備插入 + 的位置。 + + 3. 然後按下 i 鍵,接著輸入必要的文本字符。 + + 4. 所有文本都修正完畢,請按下 <ESC> 鍵返回正常模式。 + 重復步驟2至步驟4以便修正句子。 + +---> There is text misng this . +---> There is some text missing from this line. + + 5. 如果您對文本插入操作已經很滿意,請接著閱讀下面的小結。 + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第一講小結 + + + 1. 光標在屏幕文本中的移動既可以用箭頭鍵,也可以使用 hjkl 字母鍵。 + h (左移) j (下行) k (上行) l (右移) + + 2. 欲進入vim編輯器(從命令行提示符),請輸入︰vim 文件名 <回車> + + 3. 欲退出vim編輯器,請輸入以下命令放棄所有修改︰ + + <ESC> :q! <回車> + + 或者輸入以下命令保存所有修改︰ + + <ESC> :wq <回車> + + 4. 在正常模式下刪除光標所在位置的字符,請按︰ x + + 5. 在正常模式下要在光標所在位置開始插入文本,請按︰ + + i 輸入必要文本 <ESC> + +特別提示︰按下 <ESC> 鍵會帶您回到正常模式或者取消一個不期望或者部分完成 +的命令。 + +好了,第一講到此結束。下面接下來繼續第二講的內容。 + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第二講第一節︰刪除類命令 + + + ** 輸入 dw 可以從光標處刪除至一個單字/單詞的末尾。** + + 1. 請按下 <ESC> 鍵確保您處于正常模式。 + + 2. 請將光標移動到本節中下面標記有 ---> 的那一行。 + + 3. 請將光標移至準備要刪除的單詞的開始。 + + 4. 接著輸入 dw 刪除掉該單詞。 + + 特別提示︰您所輸入的 dw 會在您輸入的同時出現在屏幕的最後一行。如果您輸 + 入有誤,請按下 <ESC> 鍵取消,然後重新再來。 + +---> There are a some words fun that don't belong paper in this sentence. + + 5. 重復步驟3至步驟4,直至句子修正完畢。接著繼續第二講第二節內容。 + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第二講第二節︰其他刪除類命令 + + + ** 輸入 d$ 從當前光標刪除到行末。** + + 1. 請按下 <ESC> 鍵確保您處于正常模式。 + + 2. 請將光標移動到本節中下面標記有 ---> 的那一行。 + + 3. 請將光標移動到該行的尾部(也就是在第一個點號‘.’後面)。 + + 4. 然後輸入 d$ 從光標處刪至當前行尾部。 + +---> Somebody typed the end of this line twice. end of this line twice. + + + 5. 請繼續學習第二講第三節就知道是怎麼回事了。 + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第二講第三節︰關于命令和對象 + + + 刪除命令 d 的格式如下︰ + + [number] d object 或者 d [number] object + + 其意如下︰ + number - 代表執行命令的次數(可選項,缺省設置為 1 )。 + d - 代表刪除。 + object - 代表命令所要操作的對象(下面有相關介紹)。 + + 一個簡短的對象列表︰ + w - 從當前光標當前位置直到單字/單詞末尾,包括空格。 + e - 從當前光標當前位置直到單字/單詞末尾,但是 *不* 包括空格。 + $ - 從當前光標當前位置直到當前行末。 + +特別提示︰ + 對于勇于探索者,請在正常模式下面僅按代表相應對象的鍵而不使用命令,則 + 將看到光標的移動正如上面的對象列表所代表的一樣。 + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第二講第四節︰對象命令的特殊情況 + + + ** 輸入 dd 可以刪除整一個當前行。 ** + + 鑒于整行刪除的高頻度,VIM 的設計者決定要簡化整行刪除,僅需要在同一行上 + 擊打兩次 d 就可以刪除掉光標所在的整行了。 + + 1. 請將光標移動到本節中下面的短句段落中的第二行。 + 2. 輸入 dd 刪除該行。 + 3. 然後移動到第四行。 + 4. 接著輸入 2dd (還記得前面講過的 number-command-object 嗎?) 刪除兩行。 + + 1) Roses are red, + 2) Mud is fun, + 3) Violets are blue, + 4) I have a car, + 5) Clocks tell time, + 6) Sugar is sweet + 7) And so are you. + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第二講第五節︰撤消類命令 + + + ** 輸入 u 來撤消最後執行的命令,輸入 U 來修正整行。** + + 1. 請將光標移動到本節中下面標記有 ---> 的那一行,並將其置于第一個錯誤 + 處。 + 2. 輸入 x 刪除第一個不想保留的字母。 + 3. 然後輸入 u 撤消最後執行的(一次)命令。 + 4. 這次要使用 x 修正本行的所有錯誤。 + 5. 現在輸入一個大寫的 U ,恢復到該行的原始狀態。 + 6. 接著多次輸入 u 以撤消 U 以及更前的命令。 + 7. 然後多次輸入 CTRL-R (先按下 CTRL 鍵不放開,接著輸入 R 鍵) ,這樣就 + 可以執行恢復命令,也就是撤消掉撤消命令。 + +---> Fiix the errors oon thhis line and reeplace them witth undo. + + 8. 這些都是非常有用的命令。下面是第二講的小結了。 + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第二講小結 + + + 1. 欲從當前光標刪除至單字/單詞末尾,請輸入︰dw + + 2. 欲從當前光標刪除至當前行末尾,請輸入︰d$ + + 3. 欲刪除整行,請輸入︰dd + + 4. 在正常模式下一個命令的格式是︰ + + [number] command object 或者 command [number] object + 其意是︰ + number - 代表的是命令執行的次數 + command - 代表要做的事情,比如 d 代表刪除 + object - 代表要操作的對象,比如 w 代表單字/單詞,$ 代表到行末等等。 + $ (to the end of line), etc. + + 5. 欲撤消以前的操作,請輸入︰u (小寫的u) + 欲撤消在一行中所做的改動,請輸入︰U (大寫的U) + 欲撤消以前的撤消命令,恢復以前的操作結果,請輸入︰CTRL-R + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第三講第一節︰置入類命令 + + + ** 輸入 p 將最後一次刪除的內容置入光標之後 ** + + 1. 請將光標移動到本節中下面示范段落的首行。 + + 2. 輸入 dd 將該行刪除,這樣會將該行保存到vim的緩沖區中。 + + 3. 接著將光標移動到準備置入的位置的上方。記住︰是上方哦。 + + 4. 然後在正常模式下(<ESC>鍵進入),輸入 p 將該行粘貼置入。 + + 5. 重復步驟2至步驟4,將所有的行依序放置到正確的位置上。 + + d) Can you learn too? + b) Violets are blue, + c) Intelligence is learned, + a) Roses are red, + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第三講第二節︰替換類命令 + + + ** 輸入 r 和一個字符替換光標所在位置的字符。** + + 1. 請將光標移動到本節中下面標記有 ---> 的第一行。 + + 2. 請移動光標到第一個錯誤的適當位置。 + + 3. 接著輸入 r ,這樣就能將錯誤替換掉了。 + + 4. 重復步驟2和步驟3,直到第一行已經修改完畢。 + +---> Whan this lime was tuoed in, someone presswd some wrojg keys! +---> When this line was typed in, someone pressed some wrong keys! + + 5. 然後我們繼續學校第三講第三節。 + +特別提示︰切記您要在使用中學習,而不是在記憶中學習。 + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第三講第三節︰更改類命令 + + + ** 要改變一個單字/單詞的部分或者全部,請輸入 cw ** + + 1. 請將光標移動到本節中下面標記有 ---> 的第一行。 + + 2. 接著把光標放在單詞 lubw 的字母 u 的位置那裡。 + + 3. 然後輸入 cw 就可以修正該單詞了(在本例這裡是輸入 ine 。) + + 4. 最後按 <ESC> 鍵,然後光標定位到下一個錯誤第一個準備更改的字母處。 + + 5. 重復步驟3和步驟4,直到第一個句子完全雷同第二個句子。 + +---> This lubw has a few wptfd that mrrf changing usf the change command. +---> This line has a few words that need changing using the change command. + +提示︰請注意 cw 命令不僅僅是替換了一個單詞,也讓您進入文本插入狀態了。 + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第三講第四節︰使用c指令的其他更改類命令 + + + ** 更改類指令可以使用同刪除類命令所使用的對象參數。** + + 1. 更改類指令的工作方式跟刪除類命令是一致的。操作格式是︰ + + [number] c object 或者 c [number] object + + 2. 對象參數也是一樣的,比如 w 代表單字/單詞,$代表行末等等。 + + 3. 請將光標移動到本節中下面標記有 ---> 的第一行。 + + 4. 接著將光標移動到第一個錯誤處。 + + 5. 然後輸入 c$ 使得該行剩下的部分更正得同第二行一樣。最後按 <ESC> 鍵。 + +---> The end of this line needs some help to make it like the second. +---> The end of this line needs to be corrected using the c$ command. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第三講小結 + + + 1. 要重新置入已經刪除的文本內容,請輸入小寫字母 p。該操作可以將已刪除 + 的文本內容置于光標之後。如果最後一次刪除的是一個整行,那麼該行將置 + 于當前光標所在行的下一行。 + + 2. 要替換光標所在位置的字符,請輸入小寫的 r 和要替換掉原位置字符的新字 + 符即可。 + + 3. 更改類命令允許您改變指定的對象,從當前光標所在位置直到對象的末尾。 + 比如輸入 cw 可以替換當前光標到單詞的末尾的內容;輸入 c$ 可以替換當 + 前光標到行末的內容。 + + 4. 更改類命令的格式是︰ + + [number] c object 或者 c [number] object + +下面我們繼續學習下一講。 + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第四講第一節︰定位及文件狀態 + + + ** 輸入 CTRL-g 顯示當前編輯文件中當前光標所在行位置以及文件狀態信息。 + 輸入 SHIFT-G 則直接跳轉到文件中的某一指定行。** + + 提示︰切記要先通讀本節內容,之後才可以執行以下步驟!!! + + 1. 按下 CTRL 鍵不放開然後按 g 鍵。然後就會看到頁面最底部出現一個狀態信 + 息行,顯示的內容是當前編輯的文件名和文件的總行數。請記住步驟3的行號。 + + 2. 按下 SHIFT-G 鍵可以使得當前光標直接跳轉到文件最後一行。 + + 3. 輸入您曾停留的行號,然後按下 SHIFT-G。這樣就可以返回到您第一次按下 + CTRL-g 時所在的行好了。注意︰輸入行號時,行號是不會在屏幕上顯示出來 + 的。 + + 4. 如果願意,您可以繼續執行步驟1至步驟三。 + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第四講第二節︰搜索類命令 + + + ** 輸入 / 以及尾隨的字符串可以用以在當前文件中查找該字符串。** + + 1. 在正常模式下輸入 / 字符。您此時會注意到該字符和光標都會出現在屏幕底 + 部,這跟 : 命令是一樣的。 + + 2. 接著輸入 errroor <回車>。那個errroor就是您要查找的字符串。 + + 3. 要查找同上一次的字符串,只需要按 n 鍵。要向相反方向查找同上一次的字 + 符串,請輸入 Shift-N 即可。 + + 4. 如果您想逆向查找字符串,請使用 ? 代替 / 進行。 + +---> When the search reaches the end of the file it will continue at the start. + + "errroor" is not the way to spell error; errroor is an error. + + 提示︰如果查找已經到達文件末尾,查找會自動從文件頭部繼續查找。 + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第四講第三節︰配對括號的查找 + + + ** 按 % 可以查找配對的括號 )、]、}。** + + 1. 把光標放在本節下面標記有 --> 那一行中的任何一個 (、[ 或 { 處。 + + 2. 接著按 % 字符。 + + 3. 此時光標的位置應當是在配對的括號處。 + + 4. 再次按 % 就可以跳回配對的第一個括號處。 + +---> This ( is a test line with ('s, ['s ] and {'s } in it. )) + +提示︰在程序調試時,這個功能用來查找不配對的括號是很有用的。 + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第四講第四節︰修正錯誤的方法之一 + + + ** 輸入 :s/old/new/g 可以替換 old 為 new。** + + 1. 請將光標移動到本節中下面標記有 ---> 的那一行。 + + 2. 輸入 :s/thee/the <回車> 。請注意該命令只改變光標所在行的第一個匹配 + 串。 + + 3. 輸入 :s/thee/the/g 則是替換全行的匹配串。 + +---> the best time to see thee flowers is in thee spring. + + 4. 要替換兩行之間出現的每個匹配串,請輸入 :#,#s/old/new/g (#,#代表的是 + 兩行的行號)。輸入 :%s/old/new/g 則是替換整個文件中的每個匹配串。 + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第四講小結 + + + 1. Ctrl-g 用于顯示當前光標所在位置和文件狀態信息。Shift-G 用于將光標跳 + 轉至文件最後一行。先敲入一個行號然後按 Shift-G 則是將光標移動至該行 + 號代表的行。 + + 2. 輸入 / 然後緊隨一個字符串是則是在當前所編輯的文檔中向後查找該字符串。 + 輸入問號 ? 然後緊隨一個字符串是則是在當前所編輯的文檔中向前查找該字 + 符串。完成一次查找之後按 n 鍵則是重復上一次的命令,可在同一方向上查 + 找下一個字符串所在;或者按 Shift-N 向相反方向查找下該字符串所在。 + + 3. 如果光標當前位置是括號(、)、[、]、{、},按 % 可以將光標移動到配對的 + 括號上。 + + 4. 在一行內替換頭一個字符串 old 為新的字符串 new,請輸入 :s/old/new + 在一行內替換所有的字符串 old 為新的字符串 new,請輸入 :s/old/new/g + 在兩行內替換所有的字符串 old 為新的字符串 new,請輸入 :#,#s/old/new/g + 在文件內替換所有的字符串 old 為新的字符串 new,請輸入 :%s/old/new/g + 進行全文替換時詢問用戶確認每個替換需添加 c 選項,請輸入 :%s/old/new/gc + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第五講第一節︰在 VIM 內執行外部命令的方法 + + + ** 輸入 :! 然後緊隨著輸入一個外部命令可以執行該外部命令。** + + 1. 按下我們所熟悉的 : 命令設置光標到屏幕底部。這樣就可以讓您輸入命令了。 + + 2. 接著輸入感嘆號 ! 這個字符,這樣就允許您執行外部的 shell 命令了。 + + 3. 我們以 ls 命令為例。輸入 !ls <回車> 。該命令就會列舉出您當前目錄的 + 內容,就如同您在命令行提示符下輸入 ls 命令的結果一樣。如果 !ls 沒起 + 作用,您可以試試 :!dir 看看。 + +---> 提示︰ 所有的外部命令都可以以這種方式執行。 + +---> 提示︰ 所有的 : 命令都必須以 <回車> 告終。 + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第五講第二節︰關于保存文件的更多信息 + + + ** 要將對文件的改動保存到文件中,請輸入 :w FILENAME ** + + 1. 輸入 :!dir 或者 :!ls 獲知當前目錄的內容。您應當已知道最後還得敲 + <回車> 吧。 + + 2. 選擇一個尚未存在文件名,比如 TEST 。 + + 3. 接著輸入 :w TEST (此處 TEST 是您所選擇的文件名。) + + 4. 該命令會以 TEST 為文件名保存整個文件 (VIM 教程)。為了確保正確保存, + 請再次輸入 :!dir 查看您的目錄列表內容。 + +---> 請注意︰如果您退出 VIM 然後在以文件名 TEST 為參數進入,那麼該文件內 + 容應該同您保存時的文件內容是完全一樣的。 + + 5. 現在您可以通過輸入 :!rm TEST 來刪除 TEST 文件了。 + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第五講第三節︰一個具有選擇性的保存命令 + + + ** 要保存文件的部分內容,請輸入 :#,# w FILENAME ** + + 1. 再來執行一次 :!dir 或者 :!ls 獲知當前目錄的內容,然後選擇一個合適的 + 不重名的文件名,比如 TEST 。 + + 2. 接著將光標移動至本頁的最頂端,然後按 CTRL-g 找到該行的行號。別忘了 + 行號哦。 + + 3. 接著把光標移動至本頁的最底端,再按一次 CTRL-g 。也別忘了這個行好哦。 + + 4. 為了只保存文章的某個部分,請輸入 :#,# w TEST 。這裡的 #,# 就是上面 + 要求您記住的行號(頂端行號,底端行號),而 TEST 就是選定的文件名。 + + 5. 最後,用 :!dir 確認文件是否正確保存。但是這次先別刪除掉。 + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第五講第四節︰提取和合並文件 + + + ** 要向當前文件中插入另外的文件的內容,請輸入 :r FILENAME ** + + 1. 請鍵入 :!dir 確認您前面創建的 TEST 文件還在。 + + 2. 然後將光標移動至當前頁面的頂端。 + +特別提示︰ 執行步驟3之後您將看到第五講第三節,請屆時再往下移動回到這裡來。 + + 3. 接著通過 :r TEST 將前面創建的名為 TEST 的文件提取進來。 + +特別提示︰您所提取進來的文件將從光標所在位置處開始置入。 + + 4. 為了確認文件已經提取成功,移動光標回到原來的位置就可以注意有兩份第 + 五講第三節,一份是原本,另外一份是來自文件的副本。 + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第五講小結 + + + 1. :!command 用于執行一個外部命令 command。 + + 請看一些實際例子︰ + :!dir - 用于顯示當前目錄的內容。 + :!rm FILENAME - 用于刪除名為 FILENAME 的文件。 + + 2. :w FILENAME 可將當前 VIM 中正在編輯的文件保存到名為 FILENAME + 的文件中。 + + 3. :#,#w FILENAME 可將當前編輯文件第 # 行至第 # 行的內容保存到文件 + FILENAME 中。 + + 4. :r FILENAME 可提取磁盤文件 FILENAME 並將其插入到當前文件的光標位置 + 後面。 + + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第六講第一節︰打開類命令 + + + ** 輸入 o 將在光標的下方打開新的一行並進入插入模式。** + + 1. 請將光標移動到本節中下面標記有 ---> 的那一行。 + + 2. 接著輸入小寫的 o 在光標 *下方* 打開新的一行並進入插入模式。 + + 3. 然後復制標記有 ---> 的行並按 <ESC> 鍵退出插入模式而進入正常模式。 + +---> After typing o the cursor is placed on the open line in Insert mode. + + 4. 為了在光標 *上方* 打開新的一行,只需要輸入大寫的 O 而不是小寫的 o + 就可以了。請在下行測試一下吧。當光標處在在該行上時,按 Shift-O可以 + 在該行上方新開一行。 + +Open up a line above this by typing Shift-O while the cursor is on this line. + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第六講第二節︰光標後插入類命令 + + + ** 輸入 a 將可在光標之後插入文本。 ** + + 1. 請在正常模式下通過輸入 $ 將光標移動到本節中下面標記有 ---> 的第一行 + 的末尾。 + + 2. 接著輸入小寫的 a 則可在光標之後插入文本了。大寫的 A 則可以直接在行 + 末插入文本。 + +提示︰輸入大寫 A 的操作方法可以在行末插入文本,避免了輸入 i,光標定位到 + 最後一個字符,輸入的文本,<ESC> 回復正常模式,箭頭右鍵移動光標以及 + x 刪除當前光標所在位置字符等等諸多繁雜的操作。 + + 3. 操作之後第一行就可以補充完整了。請注意光標後插入文本與插入模式是基 + 本完全一致的,只是文本插入的位置定位稍有不同罷了。 + +---> This line will allow you to practice +---> This line will allow you to practice appending text to the end of a line. + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第六講第三節︰另外一個置換類命令的版本 + + + ** 輸入大寫的 R 可連續替換多個字符。** + + 1. 請將光標移動到本節中下面標記有 ---> 的第一行。 + + 2. 移動光標到第一行中不同于標有 ---> 的第二行的第一個單詞的開始,即單 + 詞 last 處。 + + 3. 然後輸入大寫的 R 開始把第一行中的不同于第二行的剩余字符逐一輸入,就 + 可以全部替換掉原有的字符而使得第一行完全雷同第二行了。 + +---> To make the first line the same as the last on this page use the keys. +---> To make the first line the same as the second, type R and the new text. + + 4. 請注意︰如果您按 <ESC> 退出置換模式回復正常模式,尚未替換的文本將仍 + 然保持原狀。 + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第六講第四節︰設置類命令的選項 + + + ** 設置可使查找或者替換可忽略大小寫的選項 ** + + + 1. 要查找單詞 ignore 可在正常模式下輸入 /ignore 。要重復查找該詞,可以 + 重復按 n 鍵。 + + 2. 然後設置 ic 選項(ic就是英文忽略大小寫Ignore Case的首字母縮寫詞),即 + 輸入︰ + :set ic + + 3. 現在可以通過鍵入 n 鍵再次查找單詞 ignore。重復查找可以重復鍵入 n 鍵。 + + 4. 然後設置 hlsearch 和 incsearch 這兩個選項,輸入以下內容︰ + :set hls is + + 5. 現在可以再次輸入查找命令,看看會有什麼效果︰ + /ignore + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第六講小結 + + + 1. 輸入小寫的 o 可以在光標下方打開新的一行並將光標置于新開的行首,進入 + 插入模式。 + 輸入大寫的 O 可以在光標上方打開新的一行並將光標置于新開的行首,進入 + 插入模式。 + + 2. 輸入小寫的 a 可以在光標所在位置之後插入文本。 + 輸入大寫的 A 可以在光標所在行的行末之後插入文本。 + + 3. 輸入大寫的 R 將進入替換模式,直至按 <ESC> 鍵退出替換模式而進入正常 + 模式。 + + 4. 輸入 :set xxx 可以設置 xxx 選項。 + + + + + + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第七講︰在線幫助命令 + + ** 使用在線幫助系統 ** + + Vim 擁有一個細致全面的在線幫助系統。要啟動該幫助系統,請選擇如下三種方 + 法之一︰ + - 按下 <HELP> 鍵 (如果鍵盤上有的話) + - 按下 <F1> 鍵 (如果鍵盤上有的話) + - 輸入 :help <回車> + + 輸入 :q <回車> 可以關閉幫助窗口。 + + 提供一個正確的參數給":help"命令,您可以找到關于該主題的幫助。請試驗以 + 下參數(可別忘了按回車鍵哦。:)︰ + + :help w <回車> + :help c_<T <回車> + :help insert-index <回車> + :help user-manual <回車> + + + + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + 第八講︰創建一個啟動腳本 + + ** 啟用vim的功能 ** + + Vim的功能特性要比vi多得多,但大部分功能都沒有缺省激活。為了啟動更多的 + 功能,您得創建一個vimrc文件。 + + 1. 開始編輯vimrc文件,這取決于您所使用的操作系統︰ + + :edit ~/.vimrc 這是Unix系統所使用的命令 + :edit $VIM/_vimrc 這是Windows系統所使用的命令 + + 2. 接著導入vimrc范例文件︰ + + :read $VIMRUNTIME/vimrc_example.vim + + 3. 保存文件,命令為︰ + + :write + + 在下次您啟動vim的時候,編輯器就會有了語法高亮的功能。您可以繼續把您喜 + 歡的其它功能設置添加到這個vimrc文件中。 + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + vim 教程到此結束。本教程只是為了簡明地介紹一下vim編輯器,但已足以讓您 + 很容易學會使用本編輯器了。毋庸質疑,vim還有很多很多的命令,本教程所介 + 紹的還差得遠著呢。所以您要精通的話,還望繼續努力哦。下一步您可以閱讀 + vim手冊,使用的命令是︰ + :help user-manual + + 為了更進一步的參考和學習,以下這本書值得推薦︰ + + Vim - Vi Improved - 作者︰Steve Oualline + 出版社︰New Riders + + 這是第一本完全講解vim的書籍。對于初學者特別有用。其中還包含有大量實例 + 和圖示。欲知詳情,請訪問 http://iccf-holland.org/click5.html + + 以下這本書比較老了而且內容主要是vi而不是vim,但是也值得推薦︰ + + Learning the Vi Editor - 作者︰Linda Lamb + 出版社︰O'Reilly & Associates Inc. + + 這是一本不錯的書,通過它您幾乎能夠了解到全部vi能夠做到的事情。此書的第 + 六個版本也包含了一些關于vim的信息。 + + 本教程是由來自Calorado School of Minese的Michael C. Pierce、Robert K. + Ware 所編寫的,其中來自Colorado State University的Charles Smith提供了 + 很多創意。編者通信地址是︰ + + bware@mines.colorado.edu + + 本教程已由Bram Moolenaar專為vim進行修訂。 + + + + 譯制者附言︰ + =========== + 簡體中文教程翻譯版之譯制者為梁昌泰 <beos@turbolinux.com.cn>,還有 + 另外一個聯系地址︰linuxrat@gnuchina.org。 + + 繁體中文教程是從簡體中文教程翻譯版使用 Debian GNU/Linux 中文項目小 + 組的于廣輝先生編寫的中文漢字轉碼器 autoconvert 轉換而成的,並對轉 + 換的結果做了一些細節的改動。 + + 變更記錄︰ + ========= + 2002年08月30日 梁昌泰 <beos@turbolinux.com.cn> + 感謝 RMS@SMTH 的指正,將多處錯誤修正。 + + 2002年04月22日 梁昌泰 <linuxrat@gnuchina.org> + 感謝 xuandong@sh163.net 的指正,將兩處錯別字修正。 + + 2002年03月18日 梁昌泰 <linuxrat@gnuchina.org> + 根據Bram Molenaar先生在2002年03月16日的來信要求,將vimtutor1.4中譯 + 版升級到vimtutor1.5。 + + 2001年11月15日 梁昌泰 <linuxrat@gnuchina.org> + 將vimtutor1.4中譯版提交給Bram Molenaar和Sven Guckes。 + +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/INSTALLx.txt Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,165 @@ +INSTALLx.txt - cross-compiling Vim on Unix + +Content: + 1. Introduction + 2. Necessary arguments for "configure" + 3. Necessary environment variables for "configure" + 4. Example + + +1. INTRODUCTION +=============== + +This document discusses cross-compiling VIM on Unix-like systems. We assume +you are already familiar with cross-compiling and have a working cross-compile +environment with at least the following components: + + * a cross-compiler + * a libc to link against + * ncurses library to link against + +Discussing how to set up a cross-compile environment would go beyond the scope +of this document. See http://www.kegel.com/crosstool/ for more information and +a script that aids in setting up such an environment. + + +The problem is that "configure" needs to compile and run small test programs +to check for certain features. Running these test programs can't be done when +cross-compiling so we need to pass the results these checks would produce via +environment variables. See the list of variables and the examples at the end of +this document. + + +2. NECESSARY ARGUMENTS FOR "configure" +====================================== + +You need to set the following "configure" command line switches: + +--build=... : + The build system (i.e. the platform name of the system you compile on + right now). + For example, "i586-linux". + +--host=... : + The system on which VIM will be run. Quite often this the name of your + cross-compiler without the "-gcc". + For example, "powerpc-603-linux-gnu". + +--target=... : + Only relevant for compiling compilers. Set this to the same value as + --host. + +--with-tlib=... : + Which terminal library to. + For example, "ncurses". + + +3. NECESSARY ENVIRONMENT VARIABLES FOR "configure" +================================================== + +Additionally to the variables listed here you might want to set the CPPFLAGS +environment variable to enable optimization for your target system (e.g. +"CPPFLAGS=-march=arm5te"). + +The following variables need to be set: + +ac_cv_sizeof_int: + The size of an "int" C type in bytes. Should be "4" on all 32bit + machines. + +vi_cv_path_python_conf: + If Python support is enabled, set this variables to the path for + Python's library implementation. This is a path like + "/usr/lib/pythonX.Y/config" (the directory contains a file + "config.c"). + +vi_cv_var_python_epfx: + If Python support is enabled, set this variables to the execution + prefix of your Python interpreter (that is, where it thinks it is + running). + This is the output of the following Python script: + import sys; print sys.exec_prefix + +vi_cv_var_python_pfx: + If Python support is enabled, set this variables to the prefix of your + Python interpreter (that is, where was installed). + This is the output of the following Python script: + import sys; print sys.prefix + +vi_cv_var_python_version: + If Python support is enabled, set this variables to the version of the + Python interpreter that will be used. + This is the output of the following Python script: + import sys; print sys.version[:3] + +vim_cv_bcopy_handles_overlap: + Whether the "memmove" C library call is able to copy overlapping + memory regions. Set to "yes" if it does or "no" if it does not. + You only need to set this if vim_cv_memmove_handles_overlap is set + to "no". + +vim_cv_getcwd_broken: + Whether the "getcwd" C library call is broken. Set to "yes" if you + know that "getcwd" is implemented as 'system("sh -c pwd")', set to + "no" otherwise. + +vim_cv_memcpy_handles_overlap: + Whether the "memcpy" C library call is able to copy overlapping + memory regions. Set to "yes" if it does or "no" if it does not. + You only need to set this if both vim_cv_memmove_handles_overlap + and vim_cv_bcopy_handles_overlap are set to "no". + +vim_cv_memmove_handles_overlap: + Whether the "memmove" C library call is able to copy overlapping + memory regions. Set to "yes" if it does or "no" if it does not. + +vim_cv_stat_ignores_slash: + Whether the "stat" C library call ignores trailing slashes in the path + name. Set to "yes" if it ignores them or "no" if it does not ignore + them. + +vim_cv_tgetent: + Whether the "tgetent" terminal library call returns a zero or non-zero + value when it encounters an unknown terminal. Set to either the string + "zero" or "non-zero", corresponding. + +vim_cv_terminfo: + Whether the environment has terminfo support. Set to "yes" if so, + otherwise set to "no". + +vim_cv_toupper_broken: + Whether the "toupper" C library function works correctly. Set to "yes" + if you know it's broken, otherwise set to "no". + +vim_cv_tty_group: + The default group of pseudo terminals. Either set to the numeric value + of the your tty group or to "world" if they are world accessable. + +vim_cv_tty_mode: + The default mode of pseudo terminals if they are not world accessable. + Most propably the value "0620". + + +4. EXAMPLE: +=========== + +Assuming the target system string is "armeb-xscale-linux-gnu" (a Intel XScale +system) with glibc and ncurses, the call to configure would look like this: + +ac_cv_sizeof_int=4 \ +vim_cv_getcwd_broken=no \ +vim_cv_memmove_handles_overlap=yes \ +vim_cv_stat_ignores_slash=yes \ +vim_cv_tgetent=zero \ +vim_cv_terminfo=yes \ +vim_cv_toupper_broken=no \ +vim_cv_tty_group=world \ +./configure \ + --build=i586-linux \ + --host=armeb-xscale-linux-gnu \ + --target=armeb-xscale-linux-gnu \ + --with-tlib=ncurses + + + +Written 2007 by Marc Haisenko <marc@darkdust.net> for the VIM project.
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/gvimtutor Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,8 @@ +#!/bin/sh + +# Start GUI Vim on a copy of the tutor file. + +# Usage: gvimtutor [xx] +# See vimtutor for usage. + +exec `dirname $0`/vimtutor -g "$@"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/msvc2008.bat Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,5 @@ +rem To be used on MS-Windows for Visual C++ 2008 Express Edition +rem aka Microsoft Visual Studio 9.0. +rem See INSTALLpc.txt for information. + +call "%VS90COMNTOOLS%%vsvars32.bat"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/po/eo.po Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,6302 @@ +# Esperanto Translation for Vim +# +# Do ":help uganda" in Vim to read copying and usage conditions. +# Do ":help credits" in Vim to see a list of people who contributed. +# +# UNUA TRADUKISTO Dominique PELLE <dominique.pelle ĉe gmail.com> +# PROVLEGANTO(J) Felipe CASTRO <fefcas ĉe gmail.com> +# Antono MECHELYNCK <antoine.mechelynck ĉe skynet.be> +# Yves NEVELSTEEN +# +# Uzitaj vortaroj kaj fakvortaroj: +# Revo: http://www.reta-vortaro.de/revo/ +# Komputeko: http://komputeko.net/index_eo.php +# Komputada leksikono: http://bertilow.com/div/komputada_leksikono/ +# +# Lasta versio: +# http://svn.ikso.net/programtradukoj/vim/vim7/src/po/eo.po +# +# Ĉiu komento estas bonvenata... +# Every remark is welcome... +# +msgid "" +msgstr "" +"Project-Id-Version: Vim(Esperanto)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2008-07-19 10:37+0200\n" +"PO-Revision-Date: 2008-07-19 10:43+0200\n" +"Last-Translator: Dominique PELLÉ <dominique.pelle@gmail.com>\n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" + +msgid "E82: Cannot allocate any buffer, exiting..." +msgstr "E82: Ne eblas disponigi iun ajn bufron, nun eliras..." + +msgid "E83: Cannot allocate buffer, using other one..." +msgstr "E83: Ne eblas disponigi bufron, nun uzas alian..." + +msgid "E515: No buffers were unloaded" +msgstr "E515: Neniu bufro estis malŝargita" + +msgid "E516: No buffers were deleted" +msgstr "E516: Neniu bufro estis forviŝita" + +msgid "E517: No buffers were wiped out" +msgstr "E517: Neniu bufro estis detruita" + +msgid "1 buffer unloaded" +msgstr "1 bufro malŝargita" + +#, c-format +msgid "%d buffers unloaded" +msgstr "%d bufroj malŝargitaj" + +msgid "1 buffer deleted" +msgstr "1 bufro forviŝita" + +#, c-format +msgid "%d buffers deleted" +msgstr "%d bufroj forviŝitaj" + +msgid "1 buffer wiped out" +msgstr "1 bufro detruita" + +#, c-format +msgid "%d buffers wiped out" +msgstr "%d bufroj detruitaj" + +msgid "E84: No modified buffer found" +msgstr "E84: Neniu modifita bufro trovita" + +#. back where we started, didn't find anything. +msgid "E85: There is no listed buffer" +msgstr "E85: Estas neniu listigita bufro" + +#, c-format +msgid "E86: Buffer %ld does not exist" +msgstr "E86: La bufro %ld ne ekzistas" + +msgid "E87: Cannot go beyond last buffer" +msgstr "E87: Ne eblas iri preter la lastan bufron" + +msgid "E88: Cannot go before first buffer" +msgstr "E88: Ne eblas iri antaŭ la unuan bufron" + +#, c-format +msgid "E89: No write since last change for buffer %ld (add ! to override)" +msgstr "" +"E89: Neniu skribo de post la lasta ŝanĝo de la bufro %ld (aldonu ! por " +"transpasi)" + +msgid "E90: Cannot unload last buffer" +msgstr "E90: Ne eblas malŝargi la lastan bufron" + +msgid "W14: Warning: List of file names overflow" +msgstr "W14: Averto: Listo de dosiernomoj troas" + +#, c-format +msgid "E92: Buffer %ld not found" +msgstr "E92: Bufro %ld ne trovita" + +#, c-format +msgid "E93: More than one match for %s" +msgstr "E93: Pli ol unu kongruo kun %s" + +#, c-format +msgid "E94: No matching buffer for %s" +msgstr "E94: Neniu bufro kongruas kun %s" + +#, c-format +msgid "line %ld" +msgstr "linio %ld" + +msgid "E95: Buffer with this name already exists" +msgstr "E95: Bufro kun tiu nomo jam ekzistas" + +msgid " [Modified]" +msgstr "[Modifita]" + +msgid "[Not edited]" +msgstr "[Ne redaktita]" + +msgid "[New file]" +msgstr "[Nova dosiero]" + +msgid "[Read errors]" +msgstr "[Eraroj de legado]" + +msgid "[readonly]" +msgstr "[nurlegebla]" + +#, c-format +msgid "1 line --%d%%--" +msgstr "1 linio --%d%%--" + +#, c-format +msgid "%ld lines --%d%%--" +msgstr "%ld linioj --%d%%--" + +#, c-format +msgid "line %ld of %ld --%d%%-- col " +msgstr "linio %ld de %ld --%d%%-- kol " + +msgid "[No Name]" +msgstr "[Neniu nomo]" + +#. must be a help buffer +msgid "help" +msgstr "helpo" + +msgid "[Help]" +msgstr "[Helpo]" + +msgid "[Preview]" +msgstr "[Antaŭvido]" + +msgid "All" +msgstr "Ĉio" + +msgid "Bot" +msgstr "Subo" + +msgid "Top" +msgstr "Supro" + +#, c-format +msgid "" +"\n" +"# Buffer list:\n" +msgstr "" +"\n" +"# Listo de bufroj:\n" + +msgid "[Location List]" +msgstr "[Listo de lokoj]" + +# DP: Ĉu vere indas traduki Quickfix? +msgid "[Quickfix List]" +msgstr "[Listo de rapidriparoj]" + +# DP: Vidu ":help sign-support" por klarigo pri "Sign" +msgid "" +"\n" +"--- Signs ---" +msgstr "" +"\n" +"--- Emfazaj simbolaĵoj ---" + +#, c-format +msgid "Signs for %s:" +msgstr "Emfazaj simbolaĵoj de %s:" + +#, c-format +msgid " line=%ld id=%d name=%s" +msgstr " linio=%ld id=%d nomo=%s" + +#, c-format +msgid "E96: Can not diff more than %ld buffers" +msgstr "E96: Ne eblas dosierdiferenci pli ol %ld bufrojn" + +msgid "E97: Cannot create diffs" +msgstr "E97: Ne eblas krei dosierdiferencojn" + +msgid "Patch file" +msgstr "Flika dosiero" + +msgid "E98: Cannot read diff output" +msgstr "E98: Ne eblas legi eliron de dosierdiferenco" + +msgid "E99: Current buffer is not in diff mode" +msgstr "E99: Aktuala bufro ne estas en dosierdiferenca reĝimo" + +msgid "E793: No other buffer in diff mode is modifiable" +msgstr "E793: Neniu alia bufro en dosierdiferenca reĝimo estas modifebla" + +msgid "E100: No other buffer in diff mode" +msgstr "E100: Neniu alia bufro en dosierdiferenca reĝimo" + +msgid "E101: More than two buffers in diff mode, don't know which one to use" +msgstr "E101: Pli ol du bufroj en dosierdiferenca reĝimo, ne scias kiun uzi" + +#, c-format +msgid "E102: Can't find buffer \"%s\"" +msgstr "E102: Ne eblas trovi bufron \"%s\"" + +#, c-format +msgid "E103: Buffer \"%s\" is not in diff mode" +msgstr "E103: Bufro \"%s\" ne estas en dosierdiferenca reĝimo" + +msgid "E787: Buffer changed unexpectedly" +msgstr "E787: Bufro ŝanĝiĝis neatendite" + +msgid "E104: Escape not allowed in digraph" +msgstr "E104: Eskapsigno malpermesita en duliteraĵo" + +msgid "E544: Keymap file not found" +msgstr "E544: Dosiero de klavmapo ne troveblas" + +msgid "E105: Using :loadkeymap not in a sourced file" +msgstr "E105: Uzo de \":loadkeymap\" nur eblas en vim-skripto" + +msgid "E791: Empty keymap entry" +msgstr "E791: Malplena rikordo en klavmapo" + +msgid " Keyword completion (^N^P)" +msgstr " Kompletigo de ŝlosilvorto (^N^P)" + +#. ctrl_x_mode == 0, ^P/^N compl. +msgid " ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)" +msgstr " Reĝimo ^X (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)" + +msgid " Whole line completion (^L^N^P)" +msgstr " Kompletigo de tuta linio (^L^N^P)" + +msgid " File name completion (^F^N^P)" +msgstr " Kompletigo de dosiernomo (^F^N^P)" + +msgid " Tag completion (^]^N^P)" +msgstr " Kompletigo de etikedo (^]^N^P)" + +msgid " Path pattern completion (^N^P)" +msgstr " Kompletigo de ŝablona dosierindiko (^N^P)" + +msgid " Definition completion (^D^N^P)" +msgstr " Kompletigo de difino (^D^N^P)" + +msgid " Dictionary completion (^K^N^P)" +msgstr " Kompletigo de vortaro (^K^N^P)" + +msgid " Thesaurus completion (^T^N^P)" +msgstr " Kompletigo de tesaŭro (^T^N^P)" + +msgid " Command-line completion (^V^N^P)" +msgstr " Kompletigo de komanda linio (^V^N^P)" + +msgid " User defined completion (^U^N^P)" +msgstr " Kompletigo difinita de uzanto (^U^N^P)" + +# DP: Ĉu eblas trovi pli bonan tradukon? +msgid " Omni completion (^O^N^P)" +msgstr " Kompletigo Omni (^O^N^P)" + +msgid " Spelling suggestion (s^N^P)" +msgstr " Sugesto de literumo (s^N^P)" + +msgid " Keyword Local completion (^N^P)" +msgstr " Kompletigo loka de ŝlosilvorto (^N/^P)" + +msgid "Hit end of paragraph" +msgstr "Atingis finon de alineo" + +msgid "'dictionary' option is empty" +msgstr "La opcio 'dictionary' estas malplena" + +msgid "'thesaurus' option is empty" +msgstr "La opcio 'thesaurus' estas malplena" + +#, c-format +msgid "Scanning dictionary: %s" +msgstr "Analizas vortaron: %s" + +msgid " (insert) Scroll (^E/^Y)" +msgstr " (enmeto) Rulumo (^E/^Y)" + +msgid " (replace) Scroll (^E/^Y)" +msgstr " (anstataŭigo) Rulumo (^E/^Y)" + +#, c-format +msgid "Scanning: %s" +msgstr "Analizas: %s" + +#, c-format +msgid "Scanning tags." +msgstr "Analizas etikedojn." + +msgid " Adding" +msgstr " Aldonanta" + +#. showmode might reset the internal line pointers, so it must +#. * be called before line = ml_get(), or when this address is no +#. * longer needed. -- Acevedo. +#. +msgid "-- Searching..." +msgstr "-- Serĉanta..." + +msgid "Back at original" +msgstr "Reveninta al originalo" + +msgid "Word from other line" +msgstr "Vorto el alia linio" + +msgid "The only match" +msgstr "La sola kongruo" + +#, c-format +msgid "match %d of %d" +msgstr "kongruo %d de %d" + +#, c-format +msgid "match %d" +msgstr "kongruo %d" + +msgid "E18: Unexpected characters in :let" +msgstr "E18: Neatenditaj signoj en \":let\"" + +#, c-format +msgid "E684: list index out of range: %ld" +msgstr "E684: indekso de listo ekster limoj: %ld" + +#, c-format +msgid "E121: Undefined variable: %s" +msgstr "E121: Nedifinita variablo: %s" + +msgid "E111: Missing ']'" +msgstr "E111: Mankas ']'" + +#, c-format +msgid "E686: Argument of %s must be a List" +msgstr "E686: Argumento de %s devas esti Listo" + +#, c-format +msgid "E712: Argument of %s must be a List or Dictionary" +msgstr "E712: Argumento de %s devas esti Listo aŭ Vortaro" + +msgid "E713: Cannot use empty key for Dictionary" +msgstr "E713: Ne eblas uzi malplenan ŝlosilon de Vortaro" + +msgid "E714: List required" +msgstr "E714: Listo bezonata" + +msgid "E715: Dictionary required" +msgstr "E715: Vortaro bezonata" + +#, c-format +msgid "E118: Too many arguments for function: %s" +msgstr "E118: Tro da argumentoj por funkcio: %s" + +#, c-format +msgid "E716: Key not present in Dictionary: %s" +msgstr "E716: Ŝlosilo malekzistas en Vortaro: %s" + +#, c-format +msgid "E122: Function %s already exists, add ! to replace it" +msgstr "E122: La funkcio %s jam ekzistas (aldonu ! por anstataŭigi ĝin)" + +msgid "E717: Dictionary entry already exists" +msgstr "E717: Rikordo de vortaro jam ekzistas" + +msgid "E718: Funcref required" +msgstr "E718: Funcref bezonata" + +msgid "E719: Cannot use [:] with a Dictionary" +msgstr "E719: Uzo de [:] ne eblas kun Vortaro" + +#, c-format +msgid "E734: Wrong variable type for %s=" +msgstr "E734: Nevalida datumtipo de variablo de %s=" + +#, c-format +msgid "E130: Unknown function: %s" +msgstr "E130: Nekonata funkcio: %s" + +#, c-format +msgid "E461: Illegal variable name: %s" +msgstr "E461: Nevalida nomo de variablo: %s" + +msgid "E687: Less targets than List items" +msgstr "E687: Malpli da celoj ol Listeroj" + +msgid "E688: More targets than List items" +msgstr "E688: Pli da celoj ol Listeroj" + +msgid "Double ; in list of variables" +msgstr "Duobla ; en listo de variabloj" + +#, c-format +msgid "E738: Can't list variables for %s" +msgstr "E738: Ne eblas listigi variablojn de %s" + +msgid "E689: Can only index a List or Dictionary" +msgstr "E689: Nur eblas indeksi Liston aŭ Vortaron" + +msgid "E708: [:] must come last" +msgstr "E708: [:] devas esti laste" + +msgid "E709: [:] requires a List value" +msgstr "E709: [:] bezonas listan valoron" + +msgid "E710: List value has more items than target" +msgstr "E710: Lista valoro havas pli da eroj ol la celo" + +msgid "E711: List value has not enough items" +msgstr "E711: Lista valoro ne havas sufiĉe da eroj" + +msgid "E690: Missing \"in\" after :for" +msgstr "E690: \"in\" mankas malantaŭ \":for\"" + +#, c-format +msgid "E107: Missing braces: %s" +msgstr "E107: Mankas kramposigno malantaŭ: %s" + +#, c-format +msgid "E108: No such variable: \"%s\"" +msgstr "E108: Ne estas tia variablo: \"%s\"" + +msgid "E743: variable nested too deep for (un)lock" +msgstr "E743: variablo ingita tro profunde por malŝlosi" + +msgid "E109: Missing ':' after '?'" +msgstr "E109: Mankas ':' malantaŭ '?'" + +msgid "E691: Can only compare List with List" +msgstr "E691: Eblas nur kompari Liston kun Listo" + +msgid "E692: Invalid operation for Lists" +msgstr "E692: Nevalida operacio de Listoj" + +msgid "E735: Can only compare Dictionary with Dictionary" +msgstr "E735: Eblas nur kompari Vortaron kun Vortaro" + +msgid "E736: Invalid operation for Dictionary" +msgstr "E736: Nevalida operacio de Vortaro" + +msgid "E693: Can only compare Funcref with Funcref" +msgstr "E693: Eblas nur kompari Funcref kun Funcref" + +msgid "E694: Invalid operation for Funcrefs" +msgstr "E694: Nevalida operacio de Funcref-oj" + +msgid "E804: Cannot use '%' with Float" +msgstr "E804: Ne eblas uzi '%' kun Glitpunktnombro" + +msgid "E110: Missing ')'" +msgstr "E110: Mankas ')'" + +msgid "E695: Cannot index a Funcref" +msgstr "E695: Ne eblas indeksi Funcref" + +#, c-format +msgid "E112: Option name missing: %s" +msgstr "E112: Mankas nomo de opcio: %s" + +#, c-format +msgid "E113: Unknown option: %s" +msgstr "E113: Nekonata opcio: %s" + +#, c-format +msgid "E114: Missing quote: %s" +msgstr "E114: Mankas citilo: %s" + +#, c-format +msgid "E115: Missing quote: %s" +msgstr "E115: Mankas citilo: %s" + +#, c-format +msgid "E696: Missing comma in List: %s" +msgstr "E696: Mankas komo en Listo: %s" + +#, c-format +msgid "E697: Missing end of List ']': %s" +msgstr "E697: Mankas fino de Listo ']': %s" + +#, c-format +msgid "E720: Missing colon in Dictionary: %s" +msgstr "E720: Mankas dupunkto en la vortaro: %s" + +#, c-format +msgid "E721: Duplicate key in Dictionary: \"%s\"" +msgstr "E721: Ripetita ŝlosilo en la vortaro: \"%s\"" + +#, c-format +msgid "E722: Missing comma in Dictionary: %s" +msgstr "E722: Mankas komo en la vortaro: %s" + +#, c-format +msgid "E723: Missing end of Dictionary '}': %s" +msgstr "E723: Mankas fino de vortaro '}': %s" + +msgid "E724: variable nested too deep for displaying" +msgstr "E724: variablo ingita tro profunde por vidigi" + +#, c-format +msgid "E117: Unknown function: %s" +msgstr "E117: Nekonata funkcio: %s" + +#, c-format +msgid "E119: Not enough arguments for function: %s" +msgstr "E119: Ne sufiĉe da argumentoj de funkcio: %s" + +#, c-format +msgid "E120: Using <SID> not in a script context: %s" +msgstr "E120: <SID> estas uzata ekster kunteksto de skripto: %s" + +#, c-format +msgid "E725: Calling dict function without Dictionary: %s" +msgstr "E725: Alvoko de funkcio dict sen Vortaro: %s" + +msgid "E808: Number or Float required" +msgstr "E808: Nombro aŭ Glitpunktnombro bezonata" + +msgid "E699: Too many arguments" +msgstr "E699: Tro da argumentoj" + +msgid "E785: complete() can only be used in Insert mode" +msgstr "E785: complete() uzeblas nur en Enmeta reĝimo" + +#. +#. * Yes this is ugly, I don't particularly like it either. But doing it +#. * this way has the compelling advantage that translations need not to +#. * be touched at all. See below what 'ok' and 'ync' are used for. +#. +msgid "&Ok" +msgstr "&Bone" + +#, c-format +msgid "E737: Key already exists: %s" +msgstr "E737: Ŝlosilo jam ekzistas: %s" + +#, c-format +msgid "+-%s%3ld lines: " +msgstr "+-%s%3ld linioj: " + +#, c-format +msgid "E700: Unknown function: %s" +msgstr "E700: Nekonata funkcio: %s" + +msgid "" +"&OK\n" +"&Cancel" +msgstr "" +"&Bone\n" +"&Rezigni" + +msgid "called inputrestore() more often than inputsave()" +msgstr "alvokis inputrestore() pli ofte ol inputsave()" + +msgid "E786: Range not allowed" +msgstr "E786: Amplekso malpermesita" + +msgid "E701: Invalid type for len()" +msgstr "E701: Nevalida datumtipo de len()" + +msgid "E726: Stride is zero" +msgstr "E726: Paŝo estas nul" + +msgid "E727: Start past end" +msgstr "E727: Komenco preter fino" + +msgid "<empty>" +msgstr "<malplena>" + +msgid "E240: No connection to Vim server" +msgstr "E240: Neniu konekto al Vim-servilo" + +#, c-format +msgid "E241: Unable to send to %s" +msgstr "E241: Ne eblas sendi al %s" + +msgid "E277: Unable to read a server reply" +msgstr "E277: Ne eblas legi respondon de servilo" + +msgid "E655: Too many symbolic links (cycle?)" +msgstr "E655: Tro da simbolaj ligiloj (ĉu estas ciklo?)" + +msgid "E258: Unable to send to client" +msgstr "E258: Ne eblas sendi al kliento" + +msgid "E702: Sort compare function failed" +msgstr "E702: Ordiga funkcio fiaskis" + +msgid "(Invalid)" +msgstr "(Nevalida)" + +msgid "E677: Error writing temp file" +msgstr "E677: Eraro dum skribo de provizora dosiero" + +msgid "E805: Using a Float as a Number" +msgstr "E805: Uzo de Glitpunktnombro kiel Nombro" + +msgid "E703: Using a Funcref as a Number" +msgstr "E703: Uzo de Funcref kiel Nombro" + +msgid "E745: Using a List as a Number" +msgstr "E745: Uzo de Listo kiel Nombro" + +msgid "E728: Using a Dictionary as a Number" +msgstr "E728: Uzo de Vortaro kiel Nombro" + +msgid "E729: using Funcref as a String" +msgstr "E729: uzo de Funcref kiel Ĉeno" + +msgid "E730: using List as a String" +msgstr "E730: uzo de Listo kiel Ĉeno" + +msgid "E731: using Dictionary as a String" +msgstr "E731: uzo de Vortaro kiel Ĉeno" + +msgid "E806: using Float as a String" +msgstr "E806: uzo de Glitpunktnumbro kiel Ĉeno" + +#, c-format +msgid "E704: Funcref variable name must start with a capital: %s" +msgstr "E704: Nomo de variablo Funcref ekendas per majusklo: %s" + +#, c-format +msgid "E705: Variable name conflicts with existing function: %s" +msgstr "E705: Nomo de variablo konfliktas kun ekzistanta funkcio: %s" + +#, c-format +msgid "E706: Variable type mismatch for: %s" +msgstr "E706: Nekongrua datumtipo de variablo: %s" + +#, c-format +msgid "E795: Cannot delete variable %s" +msgstr "E795: Ne eblas forviŝi variablon %s" + +#, c-format +msgid "E741: Value is locked: %s" +msgstr "E741: Valoro estas ŝlosita: %s" + +msgid "Unknown" +msgstr "Nekonata" + +#, c-format +msgid "E742: Cannot change value of %s" +msgstr "E742: Ne eblas ŝanĝi valoron de %s" + +msgid "E698: variable nested too deep for making a copy" +msgstr "E698: variablo ingita tro profunde por fari kopion" + +#, c-format +msgid "E124: Missing '(': %s" +msgstr "E124: Mankas '(': %s" + +#, c-format +msgid "E125: Illegal argument: %s" +msgstr "E125: Nevalida argumento: %s" + +msgid "E126: Missing :endfunction" +msgstr "E126: Mankas \":endfunction\"" + +#, c-format +msgid "E746: Function name does not match script file name: %s" +msgstr "E746: Nomo de funkcio ne kongruas kun dosiernomo de skripto: %s" + +msgid "E129: Function name required" +msgstr "E129: Nomo de funkcio bezonata" + +#, c-format +msgid "E128: Function name must start with a capital or contain a colon: %s" +msgstr "E128: Nomo de funkcio devas eki per majusklo aŭ enhavi dupunkton: %s" + +#, c-format +msgid "E131: Cannot delete function %s: It is in use" +msgstr "E131: Ne eblas forviŝi funkcion %s: Estas nuntempe uzata" + +msgid "E132: Function call depth is higher than 'maxfuncdepth'" +msgstr "E132: Profundo de funkcia alvoko superas 'maxfuncdepth'" + +#, c-format +msgid "calling %s" +msgstr "alvokas %s" + +#, c-format +msgid "%s aborted" +msgstr "%s ĉesigita" + +#, c-format +msgid "%s returning #%ld" +msgstr "%s liveras #%ld" + +#, c-format +msgid "%s returning %s" +msgstr "%s liveras %s" + +#, c-format +msgid "continuing in %s" +msgstr "daŭrigas en %s" + +msgid "E133: :return not inside a function" +msgstr "E133: \":return\" ekster funkcio" + +#, c-format +msgid "" +"\n" +"# global variables:\n" +msgstr "" +"\n" +"# mallokaj variabloj:\n" + +msgid "" +"\n" +"\tLast set from " +msgstr "" +"\n" +"\tLaste ŝaltita de " + +#, c-format +msgid "<%s>%s%s %d, Hex %02x, Octal %03o" +msgstr "<%s>%s%s %d, Deksesuma %02x, Okuma %03o" + +#, c-format +msgid "> %d, Hex %04x, Octal %o" +msgstr "> %d, Deksesuma %04x, Okuma %o" + +#, c-format +msgid "> %d, Hex %08x, Octal %o" +msgstr "> %d, Deksesuma %08x, Okuma %o" + +msgid "E134: Move lines into themselves" +msgstr "E134: Movas liniojn en ilin mem" + +msgid "1 line moved" +msgstr "1 linio movita" + +#, c-format +msgid "%ld lines moved" +msgstr "%ld linioj movitaj" + +#, c-format +msgid "%ld lines filtered" +msgstr "%ld linioj filtritaj" + +msgid "E135: *Filter* Autocommands must not change current buffer" +msgstr "E135: *Filtraj* Aŭtokomandoj ne rajtas ŝanĝi aktualan bufron" + +msgid "[No write since last change]\n" +msgstr "[Neniu skribo de post lasta ŝanĝo]\n" + +#, c-format +msgid "%sviminfo: %s in line: " +msgstr "%sviminfo: %s en linio: " + +msgid "E136: viminfo: Too many errors, skipping rest of file" +msgstr "E136: viminfo: Tro da eraroj, nun ignoras la reston de la dosiero" + +#, c-format +msgid "Reading viminfo file \"%s\"%s%s%s" +msgstr "Legado de dosiero viminfo \"%s\"%s%s%s" + +msgid " info" +msgstr " informo" + +msgid " marks" +msgstr " markoj" + +msgid " FAILED" +msgstr " FIASKIS" + +#. avoid a wait_return for this message, it's annoying +#, c-format +msgid "E137: Viminfo file is not writable: %s" +msgstr "E137: Dosiero viminfo ne skribeblas: %s" + +#, c-format +msgid "E138: Can't write viminfo file %s!" +msgstr "E138: Ne eblas skribi dosieron viminfo %s!" + +#, c-format +msgid "Writing viminfo file \"%s\"" +msgstr "Skribas dosieron viminfo \"%s\"" + +#. Write the info: +#, c-format +msgid "# This viminfo file was generated by Vim %s.\n" +msgstr "# Tiu dosiero viminfo estis kreita de Vim %s.\n" + +#, c-format +msgid "" +"# You may edit it if you're careful!\n" +"\n" +msgstr "" +"# Vi povas redakti ĝin se vi estas singarda.\n" +"\n" + +#, c-format +msgid "# Value of 'encoding' when this file was written\n" +msgstr "# Valoro de 'encoding' kiam tiu dosiero estis kreita\n" + +msgid "Illegal starting char" +msgstr "Nevalida eka signo" + +msgid "Save As" +msgstr "Konservi kiel" + +msgid "Write partial file?" +msgstr "Ĉu skribi partan dosieron?" + +msgid "E140: Use ! to write partial buffer" +msgstr "E140: Uzu ! por skribi partan bufron" + +#, c-format +msgid "Overwrite existing file \"%s\"?" +msgstr "Ĉu anstataŭigi ekzistantan dosieron \"%s\"?" + +#, c-format +msgid "Swap file \"%s\" exists, overwrite anyway?" +msgstr "Permutodosiero .swp \"%s\" ekzistas, ĉu tamen anstataŭigi ĝin?" + +#, c-format +msgid "E768: Swap file exists: %s (:silent! overrides)" +msgstr "E768: Permutodosiero .swp ekzistas: %s (:silent! por transpasi)" + +#, c-format +msgid "E141: No file name for buffer %ld" +msgstr "E141: Neniu dosiernomo de bufro %ld" + +msgid "E142: File not written: Writing is disabled by 'write' option" +msgstr "E142: Dosiero ne skribita: Skribo malŝaltita per la opcio 'write'" + +#, c-format +msgid "" +"'readonly' option is set for \"%s\".\n" +"Do you wish to write anyway?" +msgstr "" +"La opcio 'readonly' estas ŝaltita por \"%s\".\n" +"Ĉu vi tamen volas skribi?" + +#, c-format +msgid "" +"File permissions of \"%s\" are read-only.\n" +"It may still be possible to write it.\n" +"Do you wish to try?" +msgstr "" +"Permesoj de dosiero \"%s\" estas nur-legeblaj.\n" +"Bonŝance ĝi eble skribeblus.\n" +"Ĉu vi volas provi?" + +#, c-format +msgid "E505: \"%s\" is read-only (add ! to override)" +msgstr "E505: \"%s\" estas nurlegebla (aldonu ! por transpasi)" + +msgid "Edit File" +msgstr "Redakti dosieron" + +#, c-format +msgid "E143: Autocommands unexpectedly deleted new buffer %s" +msgstr "E143: Aŭtokomandoj neatendite forviŝis novan bufron %s" + +msgid "E144: non-numeric argument to :z" +msgstr "E144: nenumera argumento de :z" + +msgid "E145: Shell commands not allowed in rvim" +msgstr "E145: Ŝelkomandoj ne permesataj en rvim" + +msgid "E146: Regular expressions can't be delimited by letters" +msgstr "E146: Ne eblas limigi regulesprimon per literoj" + +#, c-format +msgid "replace with %s (y/n/a/q/l/^E/^Y)?" +msgstr "ĉu anstataŭigi per %s (y/n/a/q/l/^E/^Y)?" + +msgid "(Interrupted) " +msgstr "(Interrompita) " + +msgid "1 match" +msgstr "1 kongruo" + +msgid "1 substitution" +msgstr "1 anstataŭigo" + +#, c-format +msgid "%ld matches" +msgstr "%ld kongruoj" + +#, c-format +msgid "%ld substitutions" +msgstr "%ld anstataŭigoj" + +msgid " on 1 line" +msgstr " en 1 linio" + +#, c-format +msgid " on %ld lines" +msgstr " en %ld linioj" + +msgid "E147: Cannot do :global recursive" +msgstr "E147: Ne eblas fari \":global\" rekursie" + +# DP: global estas por ":global" do mi ne tradukis ĝin +msgid "E148: Regular expression missing from global" +msgstr "E148: Regulesprimo mankas el global" + +#, c-format +msgid "Pattern found in every line: %s" +msgstr "Ŝablono trovita en ĉiuj linioj: %s" + +#, c-format +msgid "" +"\n" +"# Last Substitute String:\n" +"$" +msgstr "" +"\n" +"# Lasta anstataŭigita ĉeno:\n" +"$" + +# This message should *so* be E42! +msgid "E478: Don't panic!" +msgstr "E478: Ne paniku!" + +#, c-format +msgid "E661: Sorry, no '%s' help for %s" +msgstr "E661: Bedaŭrinde estas neniu helpo '%s' por %s" + +#, c-format +msgid "E149: Sorry, no help for %s" +msgstr "E149: Bedaŭrinde estas neniu helpo por %s" + +#, c-format +msgid "Sorry, help file \"%s\" not found" +msgstr "Bedaŭrinde, la helpdosiero \"%s\" ne troveblas" + +#, c-format +msgid "E150: Not a directory: %s" +msgstr "E150: Ne estas dosierujo: %s" + +#, c-format +msgid "E152: Cannot open %s for writing" +msgstr "E152: Ne eblas malfermi %s en skribreĝimo" + +#, c-format +msgid "E153: Unable to open %s for reading" +msgstr "E153: Ne eblas malfermi %s en legreĝimo" + +#, c-format +msgid "E670: Mix of help file encodings within a language: %s" +msgstr "E670: Miksaĵo de kodoprezento de helpa dosiero en lingvo: %s" + +#, c-format +msgid "E154: Duplicate tag \"%s\" in file %s/%s" +msgstr "E154: Ripetita etikedo \"%s\" en dosiero %s/%s" + +#, c-format +msgid "E160: Unknown sign command: %s" +msgstr "E160: Nekonata simbola komando: %s" + +msgid "E156: Missing sign name" +msgstr "E156: Mankas nomo de simbolo" + +msgid "E612: Too many signs defined" +msgstr "E612: Tro da simboloj estas difinitaj" + +#, c-format +msgid "E239: Invalid sign text: %s" +msgstr "E239: Nevalida teksto de simbolo: %s" + +#, c-format +msgid "E155: Unknown sign: %s" +msgstr "E155: Nekonata simbolo: %s" + +msgid "E159: Missing sign number" +msgstr "E159: Mankas numero de simbolo" + +#, c-format +msgid "E158: Invalid buffer name: %s" +msgstr "E158: Nevalida nomo de bufro: %s" + +#, c-format +msgid "E157: Invalid sign ID: %ld" +msgstr "E157: Nevalida identigilo de simbolo: %ld" + +msgid " (NOT FOUND)" +msgstr " (NETROVITA)" + +msgid " (not supported)" +msgstr " (nesubtenita)" + +msgid "[Deleted]" +msgstr "[Forviŝita]" + +msgid "Entering Debug mode. Type \"cont\" to continue." +msgstr "Eniras sencimigan reĝimon. Tajpu \"cont\" por daŭrigi." + +#, c-format +msgid "line %ld: %s" +msgstr "linio %ld: %s" + +#, c-format +msgid "cmd: %s" +msgstr "kmd: %s" + +#, c-format +msgid "Breakpoint in \"%s%s\" line %ld" +msgstr "Kontrolpunkto en \"%s%s\" linio %ld" + +#, c-format +msgid "E161: Breakpoint not found: %s" +msgstr "E161: Kontrolpunkto ne trovita: %s" + +msgid "No breakpoints defined" +msgstr "Neniu kontrolpunkto estas difinita" + +#, c-format +msgid "%3d %s %s line %ld" +msgstr "%3d %s %s linio %ld" + +msgid "E750: First use :profile start <fname>" +msgstr "E750: Uzu unue \":profile start <dosiernomo>\"" + +#, c-format +msgid "Save changes to \"%s\"?" +msgstr "Ĉu konservi ŝanĝojn al \"%s\"?" + +msgid "Untitled" +msgstr "Sen titolo" + +#, c-format +msgid "E162: No write since last change for buffer \"%s\"" +msgstr "E162: Neniu skribo de post la lasta ŝanĝo por bufro \"%s\"" + +msgid "Warning: Entered other buffer unexpectedly (check autocommands)" +msgstr "Averto: Eniris neatendite alian bufron (kontrolu aŭtokomandojn)" + +msgid "E163: There is only one file to edit" +msgstr "E163: Estas nur unu redaktenda dosiero" + +msgid "E164: Cannot go before first file" +msgstr "E164: Ne eblas iri antaŭ ol la unuan dosieron" + +msgid "E165: Cannot go beyond last file" +msgstr "E165: Ne eblas iri preter la lastan dosieron" + +#, c-format +msgid "E666: compiler not supported: %s" +msgstr "E666: kompililo nesubtenita: %s" + +#, c-format +msgid "Searching for \"%s\" in \"%s\"" +msgstr "Serĉado de \"%s\" en \"%s\"" + +#, c-format +msgid "Searching for \"%s\"" +msgstr "Serĉado de \"%s\"" + +#, c-format +msgid "not found in 'runtimepath': \"%s\"" +msgstr "ne trovita en 'runtimepath': \"%s\"" + +msgid "Source Vim script" +msgstr "Ruli Vim-skripton" + +#, c-format +msgid "Cannot source a directory: \"%s\"" +msgstr "Ne eblas ruli dosierujon: \"%s\"" + +#, c-format +msgid "could not source \"%s\"" +msgstr "ne eblis ruli \"%s\"" + +#, c-format +msgid "line %ld: could not source \"%s\"" +msgstr "linio %ld: ne eblis ruli \"%s\"" + +#, c-format +msgid "sourcing \"%s\"" +msgstr "rulas \"%s\"" + +#, c-format +msgid "line %ld: sourcing \"%s\"" +msgstr "linio %ld: rulas \"%s\"" + +#, c-format +msgid "finished sourcing %s" +msgstr "finis ruli %s" + +msgid "modeline" +msgstr "reĝimlinio" + +msgid "--cmd argument" +msgstr "--cmd argumento" + +msgid "-c argument" +msgstr "-c argumento" + +msgid "environment variable" +msgstr "medivariablo" + +msgid "error handler" +msgstr "erartraktilo" + +msgid "W15: Warning: Wrong line separator, ^M may be missing" +msgstr "W15: Averto: Neĝusta disigilo de linio, ^M eble mankas" + +msgid "E167: :scriptencoding used outside of a sourced file" +msgstr "E167: \":scriptencoding\" uzita ekster rulita dosiero" + +msgid "E168: :finish used outside of a sourced file" +msgstr "E168: \":finish\" uzita ekster rulita dosiero" + +#, c-format +msgid "Current %slanguage: \"%s\"" +msgstr "Aktuala %slingvo: \"%s\"" + +#, c-format +msgid "E197: Cannot set language to \"%s\"" +msgstr "E197: Ne eblas ŝanĝi la lingvon al \"%s\"" + +msgid "Entering Ex mode. Type \"visual\" to go to Normal mode." +msgstr "Eniras reĝimon Ex. Tajpu \"visual\" por iri al reĝimo Normala." + +msgid "E501: At end-of-file" +msgstr "E501: Ĉe fino-de-dosiero" + +msgid "E169: Command too recursive" +msgstr "E169: Komando tro rekursia" + +#, c-format +msgid "E605: Exception not caught: %s" +msgstr "E605: Escepto nekaptita: %s" + +msgid "End of sourced file" +msgstr "Fino de rulita dosiero" + +msgid "End of function" +msgstr "Fino de funkcio" + +msgid "E464: Ambiguous use of user-defined command" +msgstr "E464: Ambigua uzo de komando difinita de uzanto" + +msgid "E492: Not an editor command" +msgstr "E492: Ne estas redaktila komando" + +msgid "E493: Backwards range given" +msgstr "E493: Inversa amplekso donita" + +msgid "Backwards range given, OK to swap" +msgstr "Inversa amplekso donita, permuteblas" + +msgid "E494: Use w or w>>" +msgstr "E494: Uzu w aŭ w>>" + +msgid "E319: Sorry, the command is not available in this version" +msgstr "E319: Bedaŭrinde, tiu komando ne haveblas en tiu versio" + +msgid "E172: Only one file name allowed" +msgstr "E172: Nur unu dosiernomo permesita" + +msgid "1 more file to edit. Quit anyway?" +msgstr "1 plia redaktenda dosiero. Ĉu tamen eliri?" + +#, c-format +msgid "%d more files to edit. Quit anyway?" +msgstr "%d pliaj redaktendaj dosieroj. Ĉu tamen eliri?" + +msgid "E173: 1 more file to edit" +msgstr "E173: 1 plia redaktenda dosiero" + +#, c-format +msgid "E173: %ld more files to edit" +msgstr "E173: %ld pliaj redaktendaj dosieroj" + +msgid "E174: Command already exists: add ! to replace it" +msgstr "E174: La komando jam ekzistas: aldonu ! por anstataŭigi ĝin" + +# DP: malfacilas traduki tion, kaj samtempe honori spacetojn +msgid "" +"\n" +" Name Args Range Complete Definition" +msgstr "" +"\n" +" Nomo Arg Interv Kompleto Difino" + +msgid "No user-defined commands found" +msgstr "Neniu komando difinita de uzanto trovita" + +msgid "E175: No attribute specified" +msgstr "E175: Neniu atributo specifita" + +msgid "E176: Invalid number of arguments" +msgstr "E176: Nevalida nombro de argumentoj" + +msgid "E177: Count cannot be specified twice" +msgstr "E177: Kvantoro ne povas aperi dufoje" + +msgid "E178: Invalid default value for count" +msgstr "E178: Nevalida defaŭlta valoro de kvantoro" + +msgid "E179: argument required for -complete" +msgstr "E179: argumento bezonata por -complete" + +#, c-format +msgid "E181: Invalid attribute: %s" +msgstr "E181: Nevalida atributo: %s" + +msgid "E182: Invalid command name" +msgstr "E182: Nevalida komanda nomo" + +msgid "E183: User defined commands must start with an uppercase letter" +msgstr "E183: Komandoj difinataj de uzanto devas eki per majusklo" + +#, c-format +msgid "E184: No such user-defined command: %s" +msgstr "E184: Neniu komando-difinita-de-uzanto kiel: %s" + +#, c-format +msgid "E180: Invalid complete value: %s" +msgstr "E180: Nevalida valoro de kompletigo: %s" + +msgid "E468: Completion argument only allowed for custom completion" +msgstr "" +"E468: Argumento de kompletigo nur permesata por kompletigo difinita de uzanto" + +msgid "E467: Custom completion requires a function argument" +msgstr "E467: Uzula kompletigo bezonas funkcian argumenton" + +#, c-format +msgid "E185: Cannot find color scheme %s" +msgstr "E185: Ne eblas trovi agordaron de koloroj %s" + +msgid "Greetings, Vim user!" +msgstr "Bonvenon, uzanto de Vim!" + +msgid "E784: Cannot close last tab page" +msgstr "E784: Ne eblas fermi lastan langeton" + +msgid "Already only one tab page" +msgstr "Jam nur unu langeto" + +msgid "Edit File in new window" +msgstr "Redakti Dosieron en nova fenestro" + +#, c-format +msgid "Tab page %d" +msgstr "Langeto %d" + +msgid "No swap file" +msgstr "Neniu permutodosiero .swp" + +msgid "Append File" +msgstr "Postaldoni dosieron" + +msgid "E747: Cannot change directory, buffer is modified (add ! to override)" +msgstr "" +"E747: Ne eblas ŝanĝi dosierujon, bufro estas ŝanĝita (aldonu ! por transpasi)" + +msgid "E186: No previous directory" +msgstr "E186: Neniu antaŭa dosierujo" + +msgid "E187: Unknown" +msgstr "E187: Nekonata" + +msgid "E465: :winsize requires two number arguments" +msgstr "E465: \":winsize\" bezonas du numerajn argumentojn" + +#, c-format +msgid "Window position: X %d, Y %d" +msgstr "Pozicio de fenestro: X %d, Y %d" + +msgid "E188: Obtaining window position not implemented for this platform" +msgstr "" +"E188: Akiro de pozicio de fenestro ne estas realigita por tiu platformo" + +msgid "E466: :winpos requires two number arguments" +msgstr "E466: \":winpos\" bezonas du numerajn argumentojn" + +msgid "Save Redirection" +msgstr "Konservi alidirekton" + +# DP: mi ne certas pri superflugo +msgid "Save View" +msgstr "Konservi superflugon" + +msgid "Save Session" +msgstr "Konservi seancon" + +msgid "Save Setup" +msgstr "Konservi agordaron" + +#, c-format +msgid "E739: Cannot create directory: %s" +msgstr "E739: Ne eblas krei dosierujon %s" + +#, c-format +msgid "E189: \"%s\" exists (add ! to override)" +msgstr "E189: \"%s\" ekzistas (aldonu ! por transpasi)" + +#, c-format +msgid "E190: Cannot open \"%s\" for writing" +msgstr "E190: Ne eblas malfermi \"%s\" por skribi" + +#. set mark +msgid "E191: Argument must be a letter or forward/backward quote" +msgstr "E191: Argumento devas esti litero, citilo aŭ retrocitilo" + +msgid "E192: Recursive use of :normal too deep" +msgstr "E192: Tro profunda rekursia alvoko de \":normal\"" + +msgid "E194: No alternate file name to substitute for '#'" +msgstr "E194: Neniu alterna dosiernomo por anstataŭigi al '#'" + +# DP: mi ne certas, ĉu <afile> tradukeblas +# AM: laŭ mi ne +msgid "E495: no autocommand file name to substitute for \"<afile>\"" +msgstr "E495: neniu dosiernomo de aŭtokomando por anstataŭigi al \"<afile>\"" + +# DP: mi ne certas, ĉu <abuf> tradukeblas +# AM: laŭ mi ne +msgid "E496: no autocommand buffer number to substitute for \"<abuf>\"" +msgstr "" +"E496: neniu numero de bufro de aŭtokomando por anstataŭigi al \"<abuf>\"" + +# DP: mi ne certas, ĉu <amatch> tradukeblas +# AM: laŭ mi ne +# DP: ĉu match estas verbo aŭ nomo en la angla version? +# AM: ĉi tie, nomo, ŝajnas al mi +msgid "E497: no autocommand match name to substitute for \"<amatch>\"" +msgstr "" +"E497: neniu nomo de kongruo de aŭtokomando por anstataŭigi al \"<amatch>\"" + +# DP: mi ne certas, ĉu <sfile> tradukeblas +# AM: laŭ mi ne +msgid "E498: no :source file name to substitute for \"<sfile>\"" +msgstr "E498: neniu dosiernomo \":source\" por anstataŭigi al \"<sfile>\"" + +#, no-c-format +msgid "E499: Empty file name for '%' or '#', only works with \":p:h\"" +msgstr "E499: Malplena dosiernomo por '%' aŭ '#', nur funkcias kun \":p:h\"" + +msgid "E500: Evaluates to an empty string" +msgstr "E500: Liveras malplenan ĉenon" + +msgid "E195: Cannot open viminfo file for reading" +msgstr "E195: Ne eblas malfermi dosieron viminfo en lega reĝimo" + +msgid "E196: No digraphs in this version" +msgstr "E196: Neniu duliteraĵo en tiu versio" + +msgid "E608: Cannot :throw exceptions with 'Vim' prefix" +msgstr "E608: Ne eblas lanĉi (:throw) escepton kun prefikso 'Vim'" + +#. always scroll up, don't overwrite +#, c-format +msgid "Exception thrown: %s" +msgstr "Escepto lanĉita: %s" + +#, c-format +msgid "Exception finished: %s" +msgstr "Escepto finiĝis: %s" + +#, c-format +msgid "Exception discarded: %s" +msgstr "Escepto ne konservita: %s" + +#, c-format +msgid "%s, line %ld" +msgstr "%s, linio %ld" + +#. always scroll up, don't overwrite +#, c-format +msgid "Exception caught: %s" +msgstr "Kaptis escepton: %s" + +#, c-format +msgid "%s made pending" +msgstr "%s iĝis atendanta(j)" + +#, c-format +msgid "%s resumed" +msgstr "%s daŭrigita(j)" + +#, c-format +msgid "%s discarded" +msgstr "%s ne konservita(j)" + +msgid "Exception" +msgstr "Escepto" + +msgid "Error and interrupt" +msgstr "Eraro kaj interrompo" + +msgid "Error" +msgstr "Eraro" + +#. if (pending & CSTP_INTERRUPT) +msgid "Interrupt" +msgstr "Interrompo" + +msgid "E579: :if nesting too deep" +msgstr "E579: \":if\" tro profunde ingita" + +msgid "E580: :endif without :if" +msgstr "E580: \":endif\" sen \":if\"" + +msgid "E581: :else without :if" +msgstr "E581: \":else\" sen \":if\"" + +msgid "E582: :elseif without :if" +msgstr "E582: \":elseif\" sen \":if\"" + +msgid "E583: multiple :else" +msgstr "E583: pluraj \":else\"" + +msgid "E584: :elseif after :else" +msgstr "E584: \":elseif\" malantaŭ \":else\"" + +msgid "E585: :while/:for nesting too deep" +msgstr "E585: \":while/:for\" ingita tro profunde" + +msgid "E586: :continue without :while or :for" +msgstr "E586: \":continue\" sen \":while\" aŭ \":for\"" + +msgid "E587: :break without :while or :for" +msgstr "E587: \":break\" sen \":while\" aŭ \":for\"" + +msgid "E732: Using :endfor with :while" +msgstr "E732: Uzo de \":endfor\" kun \":while\"" + +msgid "E733: Using :endwhile with :for" +msgstr "E733: Uzo de \":endwhile\" kun \":for\"" + +msgid "E601: :try nesting too deep" +msgstr "E601: \":try\" ingita tro profunde" + +msgid "E603: :catch without :try" +msgstr "E603: \":catch\" sen \":try\"" + +#. Give up for a ":catch" after ":finally" and ignore it. +#. * Just parse. +msgid "E604: :catch after :finally" +msgstr "E604: \":catch\" malantaŭ \":finally\"" + +msgid "E606: :finally without :try" +msgstr "E606: \":finally\" sen \":try\"" + +#. Give up for a multiple ":finally" and ignore it. +msgid "E607: multiple :finally" +msgstr "E607: pluraj \":finally\"" + +msgid "E602: :endtry without :try" +msgstr "E602: \":endtry\" sen \":try\"" + +msgid "E193: :endfunction not inside a function" +msgstr "E193: \":endfunction\" ekster funkcio" + +msgid "E788: Not allowed to edit another buffer now" +msgstr "E788: Nun malpermesas redakti alian bufron" + +msgid "tagname" +msgstr "nomo de etikedo" + +msgid " kind file\n" +msgstr " tipo de dosiero\n" + +msgid "'history' option is zero" +msgstr "opcio 'history' estas nul" + +#, c-format +msgid "" +"\n" +"# %s History (newest to oldest):\n" +msgstr "" +"\n" +"# Historio %s (de plej nova al plej malnova):\n" + +msgid "Command Line" +msgstr "Komanda linio" + +msgid "Search String" +msgstr "Serĉa ĉeno" + +msgid "Expression" +msgstr "Esprimo" + +msgid "Input Line" +msgstr "Eniga linio" + +msgid "E198: cmd_pchar beyond the command length" +msgstr "E198: cmd_pchar preter la longo de komando" + +msgid "E199: Active window or buffer deleted" +msgstr "E199: Aktiva fenestro aŭ bufro forviŝita" + +msgid "Illegal file name" +msgstr "Nevalida dosiernomo" + +msgid "is a directory" +msgstr "estas dosierujo" + +msgid "is not a file" +msgstr "ne estas dosiero" + +msgid "is a device (disabled with 'opendevice' option)" +msgstr "estas aparatdosiero (malŝaltita per la opcio 'opendevice')" + +msgid "[New File]" +msgstr "[Nova dosiero]" + +msgid "[New DIRECTORY]" +msgstr "[Nova DOSIERUJO]" + +msgid "[File too big]" +msgstr "[Dosiero tro granda]" + +msgid "[Permission Denied]" +msgstr "[Permeso rifuzita]" + +msgid "E200: *ReadPre autocommands made the file unreadable" +msgstr "E200: La aŭtokomandoj *ReadPre igis la dosieron nelegebla" + +msgid "E201: *ReadPre autocommands must not change current buffer" +msgstr "E201: La aŭtokomandoj *ReadPre ne rajtas ŝanĝi la aktualan bufron" + +msgid "Vim: Reading from stdin...\n" +msgstr "Vim: Legado el stdin...\n" + +msgid "Reading from stdin..." +msgstr "Legado el stdin..." + +#. Re-opening the original file failed! +msgid "E202: Conversion made file unreadable!" +msgstr "E202: Konverto igis la dosieron nelegebla!" + +msgid "[fifo/socket]" +msgstr "[rektvica memoro/kontaktoskatolo]" + +msgid "[fifo]" +msgstr "[rektvica memoro]" + +msgid "[socket]" +msgstr "[kontaktoskatolo]" + +msgid "[character special]" +msgstr "[speciala signo]" + +msgid "[RO]" +msgstr "[Nurlegebla]" + +msgid "[CR missing]" +msgstr "[CR mankas]" + +# DP: ĉu traduki NL? +msgid "[NL found]" +msgstr "[NL trovita]" + +msgid "[long lines split]" +msgstr "[divido de longaj linioj]" + +msgid "[NOT converted]" +msgstr "[NE konvertita]" + +msgid "[converted]" +msgstr "[konvertita]" + +msgid "[crypted]" +msgstr "[ĉifrita]" + +#, c-format +msgid "[CONVERSION ERROR in line %ld]" +msgstr "[ERARO DE KONVERTO ĉe linio %ld]" + +#, c-format +msgid "[ILLEGAL BYTE in line %ld]" +msgstr "[NEVALIDA BAJTO en linio %ld]" + +msgid "[READ ERRORS]" +msgstr "[ERAROJ DE LEGADO]" + +msgid "Can't find temp file for conversion" +msgstr "Ne eblas trovi provizoran dosieron por konverti" + +msgid "Conversion with 'charconvert' failed" +msgstr "Konverto kun 'charconvert' fiaskis" + +msgid "can't read output of 'charconvert'" +msgstr "ne eblas legi la eligon de 'charconvert'" + +msgid "E676: No matching autocommands for acwrite buffer" +msgstr "E676: Neniu kongrua aŭtokomando por la bufro acwrite" + +msgid "E203: Autocommands deleted or unloaded buffer to be written" +msgstr "E203: Aŭtokomandoj forviŝis aŭ malŝargis la skribendan bufron" + +msgid "E204: Autocommand changed number of lines in unexpected way" +msgstr "E204: Aŭtokomando ŝanĝis la nombron de linioj neatendite" + +msgid "NetBeans disallows writes of unmodified buffers" +msgstr "NetBeans malpermesas skribojn de neŝanĝitaj bufroj" + +msgid "Partial writes disallowed for NetBeans buffers" +msgstr "Partaj skriboj malpermesitaj ĉe bufroj NetBeans" + +msgid "is not a file or writable device" +msgstr "ne estas dosiero aŭ skribebla aparatdosiero" + +msgid "writing to device disabled with 'opendevice' option" +msgstr "skribo al aparatdosiero malŝaltita per la opcio 'opendevice'" + +msgid "is read-only (add ! to override)" +msgstr "estas nurlegebla (aldonu ! por transpasi)" + +msgid "E506: Can't write to backup file (add ! to override)" +msgstr "E506: Ne eblas skribi restaŭrkopion (aldonu ! por transpasi)" + +msgid "E507: Close error for backup file (add ! to override)" +msgstr "E507: Eraro dum fermo de restaŭrkopio (aldonu ! transpasi)" + +msgid "E508: Can't read file for backup (add ! to override)" +msgstr "E508: Ne eblas legi restaŭrkopion (aldonu ! por transpasi)" + +msgid "E509: Cannot create backup file (add ! to override)" +msgstr "E509: Ne eblas krei restaŭrkopion (aldonu ! por transpasi)" + +msgid "E510: Can't make backup file (add ! to override)" +msgstr "E510: Ne eblas krei restaŭrkopion (aldonu ! por transpasi)" + +msgid "E460: The resource fork would be lost (add ! to override)" +msgstr "E460: La rimeda forko estus perdita (aldonu ! por transpasi)" + +msgid "E214: Can't find temp file for writing" +msgstr "E214: Ne eblas trovi provizoran dosieron por skribi" + +msgid "E213: Cannot convert (add ! to write without conversion)" +msgstr "E213: Ne eblas konverti (aldonu ! por skribi sen konverto)" + +msgid "E166: Can't open linked file for writing" +msgstr "E166: Ne eblas malfermi ligitan dosieron por skribi" + +msgid "E212: Can't open file for writing" +msgstr "E212: Ne eblas malfermi la dosieron por skribi" + +# AM: fsync: ne traduku (nomo de C-komando) +msgid "E667: Fsync failed" +msgstr "E667: Fsync fiaskis" + +msgid "E512: Close failed" +msgstr "E512: Fermo fiaskis" + +msgid "E513: write error, conversion failed (make 'fenc' empty to override)" +msgstr "E513: Skriberaro, konverto fiaskis (igu 'fenc' malplena por transpasi)" + +msgid "E514: write error (file system full?)" +msgstr "E514: skriberaro (ĉu plena dosiersistemo?)" + +msgid " CONVERSION ERROR" +msgstr " ERARO DE KONVERTO" + +msgid "[Device]" +msgstr "[Aparatdosiero]" + +msgid "[New]" +msgstr "[Nova]" + +msgid " [a]" +msgstr " [a]" + +msgid " appended" +msgstr " postaldonita(j)" + +msgid " [w]" +msgstr " [s]" + +msgid " written" +msgstr " skribita(j)" + +msgid "E205: Patchmode: can't save original file" +msgstr "E205: Patchmode: ne eblas konservi originalan dosieron" + +msgid "E206: patchmode: can't touch empty original file" +msgstr "E206: patchmode: ne eblas tuŝi malplenan originalan dosieron" + +msgid "E207: Can't delete backup file" +msgstr "E207: Ne eblas forviŝi restaŭrkopion" + +msgid "" +"\n" +"WARNING: Original file may be lost or damaged\n" +msgstr "" +"\n" +"AVERTO: Originala dosiero estas eble perdita aŭ difekta\n" + +msgid "don't quit the editor until the file is successfully written!" +msgstr "ne eliru el la redaktilo ĝis kiam la dosiero estas sukcese konservita!" + +msgid "[dos]" +msgstr "[dos]" + +msgid "[dos format]" +msgstr "[formato dos]" + +msgid "[mac]" +msgstr "[mac]" + +msgid "[mac format]" +msgstr "[formato mac]" + +msgid "[unix]" +msgstr "[unikso]" + +msgid "[unix format]" +msgstr "[formato unikso]" + +msgid "1 line, " +msgstr "1 linio, " + +#, c-format +msgid "%ld lines, " +msgstr "%ld linioj, " + +msgid "1 character" +msgstr "1 signo" + +#, c-format +msgid "%ld characters" +msgstr "%ld signoj" + +msgid "[noeol]" +msgstr "[sen EOL]" + +msgid "[Incomplete last line]" +msgstr "[Nekompleta lasta linio]" + +#. don't overwrite messages here +#. must give this prompt +#. don't use emsg() here, don't want to flush the buffers +msgid "WARNING: The file has been changed since reading it!!!" +msgstr "AVERTO: La dosiero estas ŝanĝita de post kiam ĝi estis legita!!!" + +msgid "Do you really want to write to it" +msgstr "Ĉu vi vere volas skribi al ĝi" + +#, c-format +msgid "E208: Error writing to \"%s\"" +msgstr "E208: Eraro dum skribo de \"%s\"" + +#, c-format +msgid "E209: Error closing \"%s\"" +msgstr "E209: Eraro dum fermo de \"%s\"" + +#, c-format +msgid "E210: Error reading \"%s\"" +msgstr "E210: Eraro dum lego de \"%s\"" + +msgid "E246: FileChangedShell autocommand deleted buffer" +msgstr "E246: Aŭtokomando FileChangedShell forviŝis bufron" + +#, c-format +msgid "E211: File \"%s\" no longer available" +msgstr "E211: Dosiero \"%s\" ne plu haveblas" + +#, c-format +msgid "" +"W12: Warning: File \"%s\" has changed and the buffer was changed in Vim as " +"well" +msgstr "" +"W12: Averto: Dosiero \"%s\" ŝanĝiĝis kaj la bufro estis ŝanĝita ankaŭ en Vim" + +msgid "See \":help W12\" for more info." +msgstr "Vidu \":help W12\" por pliaj informoj." + +#, c-format +msgid "W11: Warning: File \"%s\" has changed since editing started" +msgstr "W11: Averto: La dosiero \"%s\" ŝanĝiĝis ekde redakti ĝin" + +msgid "See \":help W11\" for more info." +msgstr "Vidu \":help W11\" por pliaj informoj." + +#, c-format +msgid "W16: Warning: Mode of file \"%s\" has changed since editing started" +msgstr "W16: Averto: Permeso de dosiero \"%s\" ŝanĝiĝis ekde redakti ĝin" + +msgid "See \":help W16\" for more info." +msgstr "Vidu \":help W16\" por pliaj informoj." + +#, c-format +msgid "W13: Warning: File \"%s\" has been created after editing started" +msgstr "W13: Averto: Dosiero \"%s\" kreiĝis post la komenco de redaktado" + +msgid "Warning" +msgstr "Averto" + +msgid "" +"&OK\n" +"&Load File" +msgstr "" +"&Bone\n" +"Ŝ&argi Dosieron" + +#, c-format +msgid "E462: Could not prepare for reloading \"%s\"" +msgstr "E462: Ne eblis prepari por reŝargi \"%s\"" + +#, c-format +msgid "E321: Could not reload \"%s\"" +msgstr "E321: Ne eblis reŝargi \"%s\"" + +msgid "--Deleted--" +msgstr "--Forviŝita--" + +#, c-format +msgid "auto-removing autocommand: %s <buffer=%d>" +msgstr "aŭto-forviŝas aŭtokomandon: %s <bufro=%d>" + +#. the group doesn't exist +#, c-format +msgid "E367: No such group: \"%s\"" +msgstr "E367: Ne ekzistas tia grupo: \"%s\"" + +#, c-format +msgid "E215: Illegal character after *: %s" +msgstr "E215: Nevalida signo malantaŭ *: %s" + +#, c-format +msgid "E216: No such event: %s" +msgstr "E216: Ne estas tia evento: %s" + +#, c-format +msgid "E216: No such group or event: %s" +msgstr "E216: Ne ekzistas tia grupo aŭ evento: %s" + +#. Highlight title +msgid "" +"\n" +"--- Auto-Commands ---" +msgstr "" +"\n" +"--- Aŭto-Komandoj ---" + +#, c-format +msgid "E680: <buffer=%d>: invalid buffer number " +msgstr "E680: <bufro=%d>: nevalida numero de bufro " + +msgid "E217: Can't execute autocommands for ALL events" +msgstr "E217: Ne eblas plenumi aŭtokomandojn por ĈIUJ eventoj" + +msgid "No matching autocommands" +msgstr "Neniu kongrua aŭtokomando" + +msgid "E218: autocommand nesting too deep" +msgstr "E218: aŭtokomando tro ingita" + +#, c-format +msgid "%s Auto commands for \"%s\"" +msgstr "%s Aŭtokomandoj por \"%s\"" + +#, c-format +msgid "Executing %s" +msgstr "Plenumado de %s" + +#, c-format +msgid "autocommand %s" +msgstr "aŭtokomando %s" + +msgid "E219: Missing {." +msgstr "E219: Mankas {." + +msgid "E220: Missing }." +msgstr "E220: Mankas }." + +msgid "E490: No fold found" +msgstr "E490: Neniu faldo trovita" + +msgid "E350: Cannot create fold with current 'foldmethod'" +msgstr "E350: Ne eblas krei faldon per la aktuala 'foldmethod'" + +msgid "E351: Cannot delete fold with current 'foldmethod'" +msgstr "E351: Ne eblas forviŝi faldon per la aktuala 'foldmethod'" + +#, c-format +msgid "+--%3ld lines folded " +msgstr "+--%3ld linioj falditaj " + +msgid "E222: Add to read buffer" +msgstr "E222: Aldoni al lega bufro" + +msgid "E223: recursive mapping" +msgstr "E223: rekursia mapo" + +#, c-format +msgid "E224: global abbreviation already exists for %s" +msgstr "E224: malloka mallongigo jam ekzistas por %s" + +#, c-format +msgid "E225: global mapping already exists for %s" +msgstr "E225: malloka mapo jam ekzistas por %s" + +#, c-format +msgid "E226: abbreviation already exists for %s" +msgstr "E226: mallongigo jam ekzistas por %s" + +#, c-format +msgid "E227: mapping already exists for %s" +msgstr "E227: mapo jam ekzistas por %s" + +msgid "No abbreviation found" +msgstr "Neniu mallongigo trovita" + +msgid "No mapping found" +msgstr "Neniu mapo trovita" + +msgid "E228: makemap: Illegal mode" +msgstr "E228: makemap: Nevalida reĝimo" + +msgid "E229: Cannot start the GUI" +msgstr "E229: Ne eblas lanĉi la grafikan interfacon" + +#, c-format +msgid "E230: Cannot read from \"%s\"" +msgstr "E230: Ne eblas legi el \"%s\"" + +msgid "E665: Cannot start GUI, no valid font found" +msgstr "" +"E665: Ne eblas startigi grafikan interfacon, neniu valida tiparo trovita" + +msgid "E231: 'guifontwide' invalid" +msgstr "E231: 'guifontwide' nevalida" + +msgid "E599: Value of 'imactivatekey' is invalid" +msgstr "E599: Valoro de 'imactivatekey' estas nevalida" + +#, c-format +msgid "E254: Cannot allocate color %s" +msgstr "E254: Ne eblas disponigi koloron %s" + +msgid "No match at cursor, finding next" +msgstr "Neniu kongruo ĉe kursorpozicio, trovas sekvan" + +msgid "<cannot open> " +msgstr "<ne eblas malfermi> " + +#, c-format +msgid "E616: vim_SelFile: can't get font %s" +msgstr "E616: vim_SelFile: ne eblas akiri tiparon %s" + +msgid "E614: vim_SelFile: can't return to current directory" +msgstr "E614: vim_SelFile: ne eblas reveni al la aktuala dosierujo" + +msgid "Pathname:" +msgstr "Serĉvojo:" + +msgid "E615: vim_SelFile: can't get current directory" +msgstr "E615: vim_SelFile: ne eblas akiri aktualan dosierujon" + +msgid "OK" +msgstr "Bone" + +msgid "Cancel" +msgstr "Rezigni" + +msgid "Scrollbar Widget: Could not get geometry of thumb pixmap." +msgstr "" +"Fenestraĵo de rulumskalo: Ne eblis akiri geometrion de reduktita rastrumbildo" + +msgid "Vim dialog" +msgstr "Vim dialogo" + +msgid "E232: Cannot create BalloonEval with both message and callback" +msgstr "E232: Ne eblas krei BalloonEval kun ambaŭ mesaĝo kaj reagfunkcio" + +msgid "Vim dialog..." +msgstr "Vim dialogo..." + +msgid "" +"&Yes\n" +"&No\n" +"&Cancel" +msgstr "" +"&Jes\n" +"&Ne\n" +"&Rezigni" + +# todo '_' is for hotkey, i guess? +msgid "Input _Methods" +msgstr "Enigaj _metodoj" + +msgid "VIM - Search and Replace..." +msgstr "VIM - Serĉi kaj anstataŭigi..." + +msgid "VIM - Search..." +msgstr "VIM- Serĉi..." + +msgid "Find what:" +msgstr "Serĉi kion:" + +msgid "Replace with:" +msgstr "Anstataŭigi per:" + +#. whole word only button +msgid "Match whole word only" +msgstr "Kongrui nur plenan vorton" + +#. match case button +msgid "Match case" +msgstr "Uskleca kongruo" + +msgid "Direction" +msgstr "Direkto" + +#. 'Up' and 'Down' buttons +msgid "Up" +msgstr "Supren" + +msgid "Down" +msgstr "Suben" + +msgid "Find Next" +msgstr "Trovi sekvantan" + +msgid "Replace" +msgstr "Anstataŭigi" + +msgid "Replace All" +msgstr "Anstataŭigi ĉiujn" + +msgid "Vim: Received \"die\" request from session manager\n" +msgstr "Vim: Ricevis peton \"die\" (morti) el la seanca administrilo\n" + +msgid "Close" +msgstr "Fermi" + +msgid "New tab" +msgstr "Nova langeto" + +msgid "Open Tab..." +msgstr "Malfermi langeton..." + +msgid "Vim: Main window unexpectedly destroyed\n" +msgstr "Vim: Ĉefa fenestro neatendite detruiĝis\n" + +msgid "Font Selection" +msgstr "Elekto de tiparo" + +msgid "Used CUT_BUFFER0 instead of empty selection" +msgstr "Uzis CUT_BUFFER0 anstataŭ malplenan apartigon" + +msgid "&Filter" +msgstr "&Filtri" + +msgid "&Cancel" +msgstr "&Rezigni" + +msgid "Directories" +msgstr "Dosierujoj" + +msgid "Filter" +msgstr "Filtri" + +msgid "&Help" +msgstr "&Helpo" + +msgid "Files" +msgstr "Dosieroj" + +msgid "&OK" +msgstr "&Bone" + +msgid "Selection" +msgstr "Apartigo" + +msgid "Find &Next" +msgstr "Trovi &Sekvanta" + +msgid "&Replace" +msgstr "&Anstataŭigi" + +msgid "Replace &All" +msgstr "Anstataŭigi ĉi&on" + +msgid "&Undo" +msgstr "&Malfari" + +#, c-format +msgid "E610: Can't load Zap font '%s'" +msgstr "E610: Ne eblas ŝargi la tiparon Zap \"%s\"" + +#, c-format +msgid "E611: Can't use font %s" +msgstr "E611: Ne eblas uzi tiparon %s" + +msgid "" +"\n" +"Sending message to terminate child process.\n" +msgstr "" +"\n" +"Sendas mesaĝon por finigi idan procezon\n" + +#, c-format +msgid "E671: Cannot find window title \"%s\"" +msgstr "E671: Ne eblas trovi titolon de fenestro \"%s\"" + +#, c-format +msgid "E243: Argument not supported: \"-%s\"; Use the OLE version." +msgstr "E243: Ne subtenita argumento: \"-%s\"; Uzu la version OLE." + +msgid "E672: Unable to open window inside MDI application" +msgstr "E672: Ne eblas malfermi fenestron interne de aplikaĵo MDI" + +msgid "Close tab" +msgstr "Fermi langeton" + +msgid "Open tab..." +msgstr "Malfermi langeton..." + +msgid "Find string (use '\\\\' to find a '\\')" +msgstr "Trovi ĉenon (uzu '\\\\' por trovi '\\')" + +msgid "Find & Replace (use '\\\\' to find a '\\')" +msgstr "Trovi kaj anstataŭigi (uzu '\\\\' por trovi '\\')" + +#. We fake this: Use a filter that doesn't select anything and a default +#. * file name that won't be used. +msgid "Not Used" +msgstr "Ne uzata" + +msgid "Directory\t*.nothing\n" +msgstr "Dosierujo\t*.nenio\n" + +msgid "Vim E458: Cannot allocate colormap entry, some colors may be incorrect" +msgstr "" +"Vim E458: Ne eblas disponigi rikordon de kolormapo, iuj koloroj estas eble " +"neĝustaj" + +#, c-format +msgid "E250: Fonts for the following charsets are missing in fontset %s:" +msgstr "E250: Tiparoj de tiuj signaroj mankas en aro de tiparo %s:" + +#, c-format +msgid "E252: Fontset name: %s" +msgstr "E252: Nomo de tiparo: %s" + +#, c-format +msgid "Font '%s' is not fixed-width" +msgstr "Tiparo \"%s\" ne estas egallarĝa" + +#, c-format +msgid "E253: Fontset name: %s\n" +msgstr "E253: Nomo de tiparo: %s\n" + +#, c-format +msgid "Font0: %s\n" +msgstr "Font0: %s\n" + +#, c-format +msgid "Font1: %s\n" +msgstr "Font1: %s\n" + +#, c-format +msgid "Font%ld width is not twice that of font0\n" +msgstr "Font%ld ne estas duoble pli larĝa ol font0\n" + +#, c-format +msgid "Font0 width: %ld\n" +msgstr "Larĝo de font0: %ld\n" + +#, c-format +msgid "" +"Font1 width: %ld\n" +"\n" +msgstr "" +"Larĝo de Font1: %ld\n" +"\n" + +msgid "Invalid font specification" +msgstr "Nevalida tiparo specifita" + +msgid "&Dismiss" +msgstr "&Forlasi" + +msgid "no specific match" +msgstr "Neniu specifa kongruo" + +msgid "Vim - Font Selector" +msgstr "Vim - Elektilo de tiparo" + +msgid "Name:" +msgstr "Nomo:" + +#. create toggle button +msgid "Show size in Points" +msgstr "Montri grandon en punktoj" + +msgid "Encoding:" +msgstr "Kodoprezento:" + +msgid "Font:" +msgstr "Tiparo:" + +msgid "Style:" +msgstr "Stilo:" + +msgid "Size:" +msgstr "Grando:" + +msgid "E256: Hangul automata ERROR" +msgstr "E256: ERARO en aŭtomato de korea alfabeto" + +msgid "E550: Missing colon" +msgstr "E550: Mankas dupunkto" + +msgid "E551: Illegal component" +msgstr "E551: Nevalida komponento" + +msgid "E552: digit expected" +msgstr "E552: cifero atendita" + +#, c-format +msgid "Page %d" +msgstr "Paĝo %d" + +msgid "No text to be printed" +msgstr "Neniu presenda teksto" + +#, c-format +msgid "Printing page %d (%d%%)" +msgstr "Presas paĝon %d (%d%%)" + +#, c-format +msgid " Copy %d of %d" +msgstr " Kopio %d de %d" + +#, c-format +msgid "Printed: %s" +msgstr "Presis: %s" + +msgid "Printing aborted" +msgstr "Presado ĉesigita" + +msgid "E455: Error writing to PostScript output file" +msgstr "E455: Eraro dum skribo de PostSkripta eliga dosiero" + +#, c-format +msgid "E624: Can't open file \"%s\"" +msgstr "E624: Ne eblas malfermi dosieron \"%s\"" + +#, c-format +msgid "E457: Can't read PostScript resource file \"%s\"" +msgstr "E457: Ne eblas legi dosieron de PostSkripta rimedo \"%s\"" + +#, c-format +msgid "E618: file \"%s\" is not a PostScript resource file" +msgstr "E618: \"%s\" ne estas dosiero de PostSkripta rimedo" + +#, c-format +msgid "E619: file \"%s\" is not a supported PostScript resource file" +msgstr "E619: \"%s\" ne estas subtenita dosiero de PostSkripta rimedo" + +#, c-format +msgid "E621: \"%s\" resource file has wrong version" +msgstr "E621: \"%s\" dosiero de rimedo havas neĝustan version" + +msgid "E673: Incompatible multi-byte encoding and character set." +msgstr "E673: Nekongrua plurbajta kodoprezento kaj signaro." + +msgid "E674: printmbcharset cannot be empty with multi-byte encoding." +msgstr "" +"E674: printmbcharset ne rajtas esti malplena kun plurbajta kodoprezento." + +msgid "E675: No default font specified for multi-byte printing." +msgstr "E675: Neniu defaŭlta tiparo specifita por plurbajta presado." + +msgid "E324: Can't open PostScript output file" +msgstr "E324: Ne eblas malfermi eligan PostSkriptan dosieron" + +#, c-format +msgid "E456: Can't open file \"%s\"" +msgstr "E456: Ne eblas malfermi dosieron \"%s\"" + +msgid "E456: Can't find PostScript resource file \"prolog.ps\"" +msgstr "E456: Dosiero de PostSkripta rimedo \"prolog.ps\" ne troveblas" + +msgid "E456: Can't find PostScript resource file \"cidfont.ps\"" +msgstr "E456: Dosiero de PostSkripta rimedo \"cidfont.ps\" ne troveblas" + +#, c-format +msgid "E456: Can't find PostScript resource file \"%s.ps\"" +msgstr "E456: Dosiero de PostSkripta rimedo \"%s.ps\" ne troveblas" + +#, c-format +msgid "E620: Unable to convert to print encoding \"%s\"" +msgstr "E620: Ne eblas konverti al la presa kodoprezento \"%s\"" + +msgid "Sending to printer..." +msgstr "Sendas al presilo..." + +msgid "E365: Failed to print PostScript file" +msgstr "E365: Presado de PostSkripta dosiero fiaskis" + +msgid "Print job sent." +msgstr "Laboro de presado sendita" + +msgid "Add a new database" +msgstr "Aldoni novan datumbazon" + +msgid "Query for a pattern" +msgstr "Serĉi ŝablonon" + +msgid "Show this message" +msgstr "Montri tiun mesaĝon" + +msgid "Kill a connection" +msgstr "Ĉesigi konekton" + +msgid "Reinit all connections" +msgstr "Repravalorizi ĉiujn konektojn" + +msgid "Show connections" +msgstr "Montri konektojn" + +#, c-format +msgid "E560: Usage: cs[cope] %s" +msgstr "E560: Uzo: cs[cope] %s" + +msgid "This cscope command does not support splitting the window.\n" +msgstr "Tiu ĉi komando de cscope ne subtenas dividon de fenestro.\n" + +msgid "E562: Usage: cstag <ident>" +msgstr "E562: Uzo: cstag <ident>" + +msgid "E257: cstag: tag not found" +msgstr "E257: cstag: etikedo netrovita" + +#, c-format +msgid "E563: stat(%s) error: %d" +msgstr "E563: Eraro de stat(%s): %d" + +msgid "E563: stat error" +msgstr "E563: Eraro de stat" + +#, c-format +msgid "E564: %s is not a directory or a valid cscope database" +msgstr "E564: %s ne estas dosierujo aŭ valida datumbazo de cscope" + +#, c-format +msgid "Added cscope database %s" +msgstr "Aldonis datumbazon de cscope %s" + +#, c-format +msgid "E262: error reading cscope connection %ld" +msgstr "E262: eraro dum legado de konekto de cscope %ld" + +msgid "E561: unknown cscope search type" +msgstr "E561: nekonata tipo de serĉo de cscope" + +msgid "E566: Could not create cscope pipes" +msgstr "E566: Ne eblis krei duktojn de cscope" + +msgid "E622: Could not fork for cscope" +msgstr "E622: Ne eblis forki cscope" + +msgid "cs_create_connection exec failed" +msgstr "plenumo de cs_create_connection fiaskis" + +msgid "cs_create_connection: fdopen for to_fp failed" +msgstr "cs_create_connection: fdopen de to_fp fiaskis" + +msgid "cs_create_connection: fdopen for fr_fp failed" +msgstr "cs_create_connection: fdopen de fr_fp fiaskis" + +msgid "E623: Could not spawn cscope process" +msgstr "E623: Ne eblis naskigi procezon cscope" + +msgid "E567: no cscope connections" +msgstr "E567: neniu konekto al cscope" + +#, c-format +msgid "E259: no matches found for cscope query %s of %s" +msgstr "E259: neniu kongruo trovita por serĉo per cscope %s de %s" + +#, c-format +msgid "E469: invalid cscopequickfix flag %c for %c" +msgstr "E469: nevalida flago cscopequickfix %c de %c" + +msgid "cscope commands:\n" +msgstr "komandoj de cscope:\n" + +#, c-format +msgid "%-5s: %-30s (Usage: %s)" +msgstr "%-5s: %-30s (Uzo: %s)" + +#, c-format +msgid "E625: cannot open cscope database: %s" +msgstr "E625: ne eblas malfermi datumbazon de cscope: %s" + +msgid "E626: cannot get cscope database information" +msgstr "E626: ne eblas akiri informojn pri la datumbazo de cscope" + +msgid "E568: duplicate cscope database not added" +msgstr "E568: ripetita datumbazo de cscope ne aldonita" + +msgid "E569: maximum number of cscope connections reached" +msgstr "E569: atingis maksimuman nombron de konektoj de cscope" + +#, c-format +msgid "E261: cscope connection %s not found" +msgstr "E261: konekto cscope %s netrovita" + +#, c-format +msgid "cscope connection %s closed" +msgstr "konekto cscope %s fermita" + +#. should not reach here +msgid "E570: fatal error in cs_manage_matches" +msgstr "E570: neriparebla eraro en cs_manage_matches" + +#, c-format +msgid "Cscope tag: %s" +msgstr "Etikedo de cscope: %s" + +msgid "" +"\n" +" # line" +msgstr "" +"\n" +" nro linio" + +msgid "filename / context / line\n" +msgstr "dosiernomo / kunteksto / linio\n" + +#, c-format +msgid "E609: Cscope error: %s" +msgstr "E609: Eraro de cscope: %s" + +msgid "All cscope databases reset" +msgstr "Reŝargo de ĉiuj datumbazoj de cscope" + +msgid "no cscope connections\n" +msgstr "neniu konekto de cscope\n" + +msgid " # pid database name prepend path\n" +msgstr " # pid nomo de datumbazo prefiksa vojo\n" + +msgid "" +"???: Sorry, this command is disabled, the MzScheme library could not be " +"loaded." +msgstr "" +"???: Bedaŭrinde tiu komando estas malŝaltita: la biblioteko MzScheme ne " +"ŝargeblis." + +msgid "invalid expression" +msgstr "nevalida esprimo" + +msgid "expressions disabled at compile time" +msgstr "esprimoj malŝaltitaj dum kompilado" + +msgid "hidden option" +msgstr "kaŝita opcio" + +msgid "unknown option" +msgstr "nekonata opcio" + +msgid "window index is out of range" +msgstr "indekso de fenestro estas ekster limoj" + +msgid "couldn't open buffer" +msgstr "ne eblis malfermi bufron" + +msgid "cannot save undo information" +msgstr "ne eblas konservi informojn de malfaro" + +msgid "cannot delete line" +msgstr "ne eblas forviŝi linion" + +msgid "cannot replace line" +msgstr "ne eblas anstataŭigi linion" + +msgid "cannot insert line" +msgstr "ne eblas enmeti linion" + +msgid "string cannot contain newlines" +msgstr "ĉeno ne rajtas enhavi liniavancojn" + +msgid "Vim error: ~a" +msgstr "Eraro de Vim: ~a" + +msgid "Vim error" +msgstr "Eraro de Vim" + +msgid "buffer is invalid" +msgstr "bufro estas nevalida" + +msgid "window is invalid" +msgstr "fenestro estas nevalida" + +msgid "linenr out of range" +msgstr "numero de linio ekster limoj" + +msgid "not allowed in the Vim sandbox" +msgstr "nepermesita en sabloludejo de Vim" + +msgid "" +"E263: Sorry, this command is disabled, the Python library could not be " +"loaded." +msgstr "" +"E263: Bedaŭrinde tiu komando estas malŝaltita: la biblioteko de Pitono ne " +"ŝargeblis." + +msgid "E659: Cannot invoke Python recursively" +msgstr "E659: Ne eblas alvoki Pitonon rekursie" + +msgid "can't delete OutputObject attributes" +msgstr "ne eblas forviŝi atributojn de OutputObject" + +msgid "softspace must be an integer" +msgstr "malmolspaceto (softspace) devas esti entjero" + +msgid "invalid attribute" +msgstr "nevalida atributo" + +msgid "writelines() requires list of strings" +msgstr "writelines() bezonas liston de ĉenoj" + +msgid "E264: Python: Error initialising I/O objects" +msgstr "E264: Pitono: Eraro de pravalorizo de eneligaj objektoj" + +msgid "attempt to refer to deleted buffer" +msgstr "provo de referenco al forviŝita bufro" + +msgid "line number out of range" +msgstr "numero de linio ekster limoj" + +#, c-format +msgid "<buffer object (deleted) at %p>" +msgstr "<bufra objekto (forviŝita) ĉe %p>" + +msgid "invalid mark name" +msgstr "nevalida nomo de marko" + +msgid "no such buffer" +msgstr "ne estas tia bufro" + +msgid "attempt to refer to deleted window" +msgstr "provo de referenco al forviŝita fenestro" + +msgid "readonly attribute" +msgstr "nurlegebla atributo" + +msgid "cursor position outside buffer" +msgstr "kursoro poziciita ekster bufro" + +#, c-format +msgid "<window object (deleted) at %p>" +msgstr "<fenestra objekto (forviŝita) ĉe %p>" + +#, c-format +msgid "<window object (unknown) at %p>" +msgstr "<objekta fenestro (nekonata) ĉe %p>" + +#, c-format +msgid "<window %d>" +msgstr "<fenestro %d>" + +msgid "no such window" +msgstr "ne estas tia fenestro" + +msgid "E265: $_ must be an instance of String" +msgstr "E265: $_ devas esti apero de Ĉeno" + +msgid "" +"E266: Sorry, this command is disabled, the Ruby library could not be loaded." +msgstr "" +"E266: Bedaŭrinde tiu komando estas malŝaltita, la biblioteko Ruby ne " +"ŝargeblis." + +msgid "E267: unexpected return" +msgstr "E267: \"return\" neatendita" + +msgid "E268: unexpected next" +msgstr "E268: \"next\" neatendita" + +msgid "E269: unexpected break" +msgstr "E269: \"break\" neatendita" + +msgid "E270: unexpected redo" +msgstr "E270: \"redo\" neatendita" + +msgid "E271: retry outside of rescue clause" +msgstr "E271: \"retry\" ekster klaŭzo \"rescue\"" + +msgid "E272: unhandled exception" +msgstr "E272: netraktita escepto" + +#, c-format +msgid "E273: unknown longjmp status %d" +msgstr "E273: nekonata stato de longjmp: %d" + +msgid "Toggle implementation/definition" +msgstr "Baskuli realigon/difinon" + +msgid "Show base class of" +msgstr "Vidigi bazan klason de" + +msgid "Show overridden member function" +msgstr "Montri anajn homonimigajn funkciojn" + +msgid "Retrieve from file" +msgstr "Rekuperi el dosiero" + +msgid "Retrieve from project" +msgstr "Rekuperi el projekto" + +msgid "Retrieve from all projects" +msgstr "Rekuperi de ĉiuj projektoj" + +msgid "Retrieve" +msgstr "Rekuperi" + +msgid "Show source of" +msgstr "Vidigi fonton de" + +msgid "Find symbol" +msgstr "Trovi simbolon" + +msgid "Browse class" +msgstr "Foliumi klasojn" + +msgid "Show class in hierarchy" +msgstr "Montri klason en hierarkio" + +msgid "Show class in restricted hierarchy" +msgstr "Montri klason en hierarkio restriktita" + +# todo +msgid "Xref refers to" +msgstr "Xref ligas al" + +msgid "Xref referred by" +msgstr "Xref ligiĝas de" + +msgid "Xref has a" +msgstr "Xref havas" + +msgid "Xref used by" +msgstr "Xref uzita de" + +# DP: mi ne certas pri kio temas +msgid "Show docu of" +msgstr "Vidigi dokumentaron de" + +msgid "Generate docu for" +msgstr "Krei dokumentaron de" + +msgid "" +"Cannot connect to SNiFF+. Check environment (sniffemacs must be found in " +"$PATH).\n" +msgstr "" +"Konekto al SNiFF+ neeblas. Kontrolu medion (sniffemacs trovendas en $PATH).\n" + +msgid "E274: Sniff: Error during read. Disconnected" +msgstr "E274: Sniff: Eraro dum lego. Malkonektita" + +# DP: Tiuj 3 mesaĝoj estas kune +msgid "SNiFF+ is currently " +msgstr "SNiFF+ estas aktuale " + +msgid "not " +msgstr "ne " + +msgid "connected" +msgstr "konektita" + +#, c-format +msgid "E275: Unknown SNiFF+ request: %s" +msgstr "E275: Nekonata peto de SNiFF+: %s" + +msgid "E276: Error connecting to SNiFF+" +msgstr "E276: Eraro dum konekto al SNiFF+" + +msgid "E278: SNiFF+ not connected" +msgstr "E278: SNiFF+ ne estas konektita" + +msgid "E279: Not a SNiFF+ buffer" +msgstr "E279: Ne estas bufro SNiFF+" + +msgid "Sniff: Error during write. Disconnected" +msgstr "Sniff: Eraro dum skribo. Malkonektita" + +msgid "invalid buffer number" +msgstr "nevalida nombro de bufroj" + +msgid "not implemented yet" +msgstr "ne jam realigita" + +#. ??? +msgid "cannot set line(s)" +msgstr "ne eblas meti la linio(j)n" + +msgid "mark not set" +msgstr "marko ne estas metita" + +#, c-format +msgid "row %d column %d" +msgstr "linio %d kolumno %d" + +msgid "cannot insert/append line" +msgstr "ne eblas enmeti/postaldoni linion" + +msgid "unknown flag: " +msgstr "nekonata flago: " + +# DP: ĉu traduki vimOption +msgid "unknown vimOption" +msgstr "nekonata vimOption" + +msgid "keyboard interrupt" +msgstr "klavara interrompo" + +msgid "vim error" +msgstr "eraro de Vim" + +msgid "cannot create buffer/window command: object is being deleted" +msgstr "ne eblas krei komandon de bufro/fenestro: objekto estas forviŝiĝanta" + +msgid "" +"cannot register callback command: buffer/window is already being deleted" +msgstr "" +"ne eblas registri postalvokan komandon: bufro/fenestro estas jam forviŝiĝanta" + +#. This should never happen. Famous last word? +msgid "" +"E280: TCL FATAL ERROR: reflist corrupt!? Please report this to vim-dev@vim." +"org" +msgstr "" +"E280: NERIPAREBLA TCL-ERARO: reflist difekta!? Bv. retpoŝti al vim-dev@vim." +"org" + +msgid "cannot register callback command: buffer/window reference not found" +msgstr "" +"ne eblas registri postalvokan komandon: referenco de bufro/fenestro ne " +"troveblas" + +msgid "" +"E571: Sorry, this command is disabled: the Tcl library could not be loaded." +msgstr "" +"E571: Bedaŭrinde tiu komando estas malŝaltita: la biblioteko Tcl ne " +"ŝargeblis." + +msgid "" +"E281: TCL ERROR: exit code is not int!? Please report this to vim-dev@vim.org" +msgstr "" +"E281: TCL-ERARO: elira kodo ne estas entjera!? Bv. retpoŝti al vim-dev@vim." +"org" + +#, c-format +msgid "E572: exit code %d" +msgstr "E572: elira kodo %d" + +msgid "cannot get line" +msgstr "ne eblas akiri linion" + +msgid "Unable to register a command server name" +msgstr "Ne eblas registri nomon de komanda servilo" + +msgid "E248: Failed to send command to the destination program" +msgstr "E248: Sendo de komando al cela programo fiaskis" + +#, c-format +msgid "E573: Invalid server id used: %s" +msgstr "E573: Nevalida identigilo de servilo uzita: %s" + +msgid "E251: VIM instance registry property is badly formed. Deleted!" +msgstr "" +"E251: Ecoj de registro de apero de VIM estas nevalide formata. Forviŝita!" + +msgid "Unknown option argument" +msgstr "Nekonata argumento de opcio" + +msgid "Too many edit arguments" +msgstr "Tro da argumentoj de redakto" + +msgid "Argument missing after" +msgstr "Argumento mankas malantaŭ" + +msgid "Garbage after option argument" +msgstr "Forĵetindaĵo malantaŭ argumento de opcio" + +msgid "Too many \"+command\", \"-c command\" or \"--cmd command\" arguments" +msgstr "Tro da argumentoj \"+komando\", \"-c komando\" aŭ \"--cmd komando\"" + +msgid "Invalid argument for" +msgstr "Nevalida argumento por" + +#, c-format +msgid "%d files to edit\n" +msgstr "%d redaktendaj dosieroj\n" + +msgid "This Vim was not compiled with the diff feature." +msgstr "Tiu Vim ne estis kompilita kun la kompara eblo" + +msgid "Attempt to open script file again: \"" +msgstr "Provas malfermi skriptan dosieron denove: \"" + +msgid "Cannot open for reading: \"" +msgstr "Ne eblas malfermi en lega reĝimo: \"" + +msgid "Cannot open for script output: \"" +msgstr "Ne eblas malfermi por eligo de skripto: \"" + +msgid "Vim: Error: Failure to start gvim from NetBeans\n" +msgstr "Vim: Eraro: Fiaskis lanĉi gvim el NetBeans\n" + +msgid "Vim: Warning: Output is not to a terminal\n" +msgstr "Vim: Averto: Eligo ne estas al terminalo\n" + +msgid "Vim: Warning: Input is not from a terminal\n" +msgstr "Vim: Averto: Enigo ne estas el terminalo\n" + +#. just in case.. +msgid "pre-vimrc command line" +msgstr "komanda linio pre-vimrc" + +#, c-format +msgid "E282: Cannot read from \"%s\"" +msgstr "E282: Ne eblas legi el \"%s\"" + +msgid "" +"\n" +"More info with: \"vim -h\"\n" +msgstr "" +"\n" +"Pliaj informoj per: \"vim -h\"\n" + +# DP: tajpu "vim --help" por testi tiujn mesaĝojn +msgid "[file ..] edit specified file(s)" +msgstr "[dosiero...] redakti specifita(j)n dosiero(j)n" + +msgid "- read text from stdin" +msgstr "- legi tekston el stdin" + +msgid "-t tag edit file where tag is defined" +msgstr "-t etikedo redakti dosieron kie etikedo estas difinata" + +msgid "-q [errorfile] edit file with first error" +msgstr "-q [erardosiero] redakti dosieron kun unua eraro" + +msgid "" +"\n" +"\n" +"usage:" +msgstr "" +"\n" +"\n" +" uzo:" + +msgid " vim [arguments] " +msgstr " vim [argumentoj] " + +msgid "" +"\n" +" or:" +msgstr "" +"\n" +" aŭ:" + +msgid "" +"\n" +"Where case is ignored prepend / to make flag upper case" +msgstr "" +"\n" +"Kie uskleco estas ignorita antaŭaldonu / por igi flagon majuskla" + +msgid "" +"\n" +"\n" +"Arguments:\n" +msgstr "" +"\n" +"\n" +"Argumentoj:\n" + +msgid "--\t\t\tOnly file names after this" +msgstr "--\t\t\tNur dosiernomoj malantaŭ tio" + +msgid "--literal\t\tDon't expand wildcards" +msgstr "--literal\t\tNe ekspansii ĵokerojn" + +msgid "-register\t\tRegister this gvim for OLE" +msgstr "-register\t\tRegistri tiun gvim al OLE" + +msgid "-unregister\t\tUnregister gvim for OLE" +msgstr "-unregister\t\tMalregistri gvim de OLE" + +msgid "-g\t\t\tRun using GUI (like \"gvim\")" +msgstr "-g\t\t\tRuli per grafika interfaco (kiel \"gvim\")" + +msgid "-f or --nofork\tForeground: Don't fork when starting GUI" +msgstr "-f aŭ --nofork\tMalfono: ne forki kiam lanĉas grafikan interfacon" + +msgid "-v\t\t\tVi mode (like \"vi\")" +msgstr "-v\t\t\tReĝimo Vi (kiel \"vi\")" + +msgid "-e\t\t\tEx mode (like \"ex\")" +msgstr "-e\t\t\tReĝimo Ex (kiel \"ex\")" + +msgid "-s\t\t\tSilent (batch) mode (only for \"ex\")" +msgstr "-s\t\t\tSilenta (stapla) reĝimo (nur por \"ex\")" + +msgid "-d\t\t\tDiff mode (like \"vimdiff\")" +msgstr "-d\t\t\tKompara reĝimo (kiel \"vimdiff\")" + +msgid "-y\t\t\tEasy mode (like \"evim\", modeless)" +msgstr "-y\t\t\tFacila reĝimo (kiel \"evim\", senreĝima)" + +msgid "-R\t\t\tReadonly mode (like \"view\")" +msgstr "-R\t\t\tNurlegebla reĝimo (kiel \"view\")" + +msgid "-Z\t\t\tRestricted mode (like \"rvim\")" +msgstr "-Z\t\t\tLimigita reĝimo (kiel \"rvim\")" + +msgid "-m\t\t\tModifications (writing files) not allowed" +msgstr "-m\t\t\tŜanĝoj (skribo al dosieroj) malpermesitaj" + +msgid "-M\t\t\tModifications in text not allowed" +msgstr "-M\t\t\tŜanĝoj al teksto malpermesitaj" + +msgid "-b\t\t\tBinary mode" +msgstr "-b\t\t\tDuuma reĝimo" + +msgid "-l\t\t\tLisp mode" +msgstr "-l\t\t\tReĝimo Lisp" + +msgid "-C\t\t\tCompatible with Vi: 'compatible'" +msgstr "-C\t\t\tKongrua kun Vi: 'compatible'" + +msgid "-N\t\t\tNot fully Vi compatible: 'nocompatible'" +msgstr "-N\t\t\tNe tute kongrua kun Vi: 'nocompatible'" + +msgid "-V[N][fname]\t\tBe verbose [level N] [log messages to fname]" +msgstr "" +"-V[N][dosiernomo]\tEsti babilema [nivelo N] [konservi mesaĝojn al dosiernomo]" + +msgid "-D\t\t\tDebugging mode" +msgstr "-D\t\t\tSencimiga reĝimo" + +msgid "-n\t\t\tNo swap file, use memory only" +msgstr "-n\t\t\tNeniu permutodosiero .swp, uzas nur memoron" + +msgid "-r\t\t\tList swap files and exit" +msgstr "-r\t\t\tListigi permutodosierojn .swp kaj eliri" + +msgid "-r (with file name)\tRecover crashed session" +msgstr "-r (kun dosiernomo)\tRestaŭri kolapsitan seancon" + +msgid "-L\t\t\tSame as -r" +msgstr "-L\t\t\tKiel -r" + +msgid "-f\t\t\tDon't use newcli to open window" +msgstr "-f\t\t\tNe uzi newcli por malfermi fenestrojn" + +msgid "-dev <device>\t\tUse <device> for I/O" +msgstr "-dev <aparatdosiero>\t\tUzi <aparatdosiero>-n por eneligo" + +msgid "-A\t\t\tstart in Arabic mode" +msgstr "-A\t\t\tKomenci en araba reĝimo" + +msgid "-H\t\t\tStart in Hebrew mode" +msgstr "-H\t\t\tKomenci en hebrea reĝimo" + +msgid "-F\t\t\tStart in Farsi mode" +msgstr "-F\t\t\tKomenci en persa reĝimo" + +msgid "-T <terminal>\tSet terminal type to <terminal>" +msgstr "-T <terminalo>\tAgordi terminalon al <terminalo>" + +msgid "-u <vimrc>\t\tUse <vimrc> instead of any .vimrc" +msgstr "-u <vimrc>\t\tUzi <vimrc> anstataŭ iun ajn .vimrc" + +msgid "-U <gvimrc>\t\tUse <gvimrc> instead of any .gvimrc" +msgstr "-U <gvimrc>\t\tUzi <gvimrc> anstataŭ iun ajn .gvimrc" + +msgid "--noplugin\t\tDon't load plugin scripts" +msgstr "--noplugin\t\tNe ŝargi kromaĵajn skriptojn" + +msgid "-p[N]\t\tOpen N tab pages (default: one for each file)" +msgstr "-p[N]\t\tMalfermi N langetojn (defaŭlto: po unu por ĉiu dosiero)" + +msgid "-o[N]\t\tOpen N windows (default: one for each file)" +msgstr "-o[N]\t\tMalfermi N fenestrojn (defaŭlto: po unu por ĉiu dosiero)" + +msgid "-O[N]\t\tLike -o but split vertically" +msgstr "-O[N]\t\tKiel -o sed dividi vertikale" + +msgid "+\t\t\tStart at end of file" +msgstr "+\t\t\tKomenci ĉe la fino de la dosiero" + +msgid "+<lnum>\t\tStart at line <lnum>" +msgstr "+<numL>\t\tKomenci ĉe linio <numL>" + +msgid "--cmd <command>\tExecute <command> before loading any vimrc file" +msgstr "" +"--cmd <komando>\tPlenumi <komando>-n antaŭ ol ŝargi iun ajn dosieron vimrc" + +msgid "-c <command>\t\tExecute <command> after loading the first file" +msgstr "-c <komando>\t\tPlenumi <komando>-n post kiam la unua dosiero ŝargiĝis" + +msgid "-S <session>\t\tSource file <session> after loading the first file" +msgstr "" +"-S <seanco>\t\tRuli dosieron <seanco>-n post kiam la unua dosiero ŝargiĝis" + +msgid "-s <scriptin>\tRead Normal mode commands from file <scriptin>" +msgstr "-s <skripto>\t\tLegi komandojn en Normala reĝimo el dosiero <skripto>" + +msgid "-w <scriptout>\tAppend all typed commands to file <scriptout>" +msgstr "" +"-w <eligaskripto>\tPostaldoni ĉiujn tajpitajn komandojn al dosiero " +"<eligaskripto>" + +msgid "-W <scriptout>\tWrite all typed commands to file <scriptout>" +msgstr "" +"-W <eligaskripto>\tSkribi ĉiujn tajpitajn komandojn al dosiero <eligaskripto>" + +msgid "-x\t\t\tEdit encrypted files" +msgstr "-x\t\t\tRedakti ĉifradan dosieron" + +msgid "-display <display>\tConnect vim to this particular X-server" +msgstr "-display <ekrano>\tKonekti Vim al tiu X-servilo" + +msgid "-X\t\t\tDo not connect to X server" +msgstr "-X\t\t\tNe konekti al X-servilo" + +msgid "--remote <files>\tEdit <files> in a Vim server if possible" +msgstr "--remote <dosieroj>\tRedakti <dosieroj>-n en Vim-servilo se eblas" + +msgid "--remote-silent <files> Same, don't complain if there is no server" +msgstr "--remote-silent <dosieroj> Same, sed ne plendi se ne estas servilo" + +msgid "" +"--remote-wait <files> As --remote but wait for files to have been edited" +msgstr "" +"--remote-wait <dosieroj> Kiel --remote sed atendi ĝis dosieroj estas " +"redaktitaj" + +msgid "" +"--remote-wait-silent <files> Same, don't complain if there is no server" +msgstr "" +"--remote-wait-silent <dosieroj> Same, sed ne plendi se ne estas servilo" + +msgid "" +"--remote-tab[-wait][-silent] <files> As --remote but use tab page per file" +msgstr "" +"--remote-tab[-wait][-silent] <dosieroj> Kiel --remote sed uzi langeton por " +"ĉiu dosiero" + +msgid "--remote-send <keys>\tSend <keys> to a Vim server and exit" +msgstr "--remote-send <klavoj> Sendi <klavoj>-n al Vim-servilo kaj eliri" + +msgid "--remote-expr <expr>\tEvaluate <expr> in a Vim server and print result" +msgstr "--remote-expr <espr>\tKomputi <espr> en Vim-servilo kaj afiŝi rezulton" + +msgid "--serverlist\t\tList available Vim server names and exit" +msgstr "--serverlist\t\tListigi haveblajn nomojn de Vim-serviloj kaj eliri" + +msgid "--servername <name>\tSend to/become the Vim server <name>" +msgstr "--servername <nomo>\tSendu al/iĝi la Vim-servilo <nomo>" + +msgid "-i <viminfo>\t\tUse <viminfo> instead of .viminfo" +msgstr "-i <viminfo>\t\tUzi <viminfo> anstataŭ .viminfo" + +msgid "-h or --help\tPrint Help (this message) and exit" +msgstr "-h aŭ --help\tAfiŝi Helpon (tiun mesaĝon) kaj eliri" + +msgid "--version\t\tPrint version information and exit" +msgstr "--version\t\tAfiŝi informon de versio kaj eliri" + +msgid "" +"\n" +"Arguments recognised by gvim (Motif version):\n" +msgstr "" +"\n" +"Argumentoj agnoskitaj de gvim (versio Motif):\n" + +msgid "" +"\n" +"Arguments recognised by gvim (neXtaw version):\n" +msgstr "" +"\n" +"Argumentoj agnoskitaj de gvim (versio neXtaw):\n" + +msgid "" +"\n" +"Arguments recognised by gvim (Athena version):\n" +msgstr "" +"\n" +"Argumentoj agnoskitaj de gvim (versio Athena):\n" + +msgid "-display <display>\tRun vim on <display>" +msgstr "-display <ekrano>\tLanĉi vim sur <ekrano>" + +msgid "-iconic\t\tStart vim iconified" +msgstr "-iconic\t\tLanĉi vim piktograme" + +msgid "-name <name>\t\tUse resource as if vim was <name>" +msgstr "-name <nomo>\t\tUzi rimedon kvazaŭ vim estus <nomo>" + +msgid "\t\t\t (Unimplemented)\n" +msgstr "\t\t\t (Nerealigita)\n" + +msgid "-background <color>\tUse <color> for the background (also: -bg)" +msgstr "-background <koloro>\tUzi <koloro>-n por la fona koloro (ankaŭ: -bg)" + +msgid "-foreground <color>\tUse <color> for normal text (also: -fg)" +msgstr "" +"-foreground <koloro>\tUzi <koloro>-n por la malfona koloro (ankaŭ: -fg)" + +msgid "-font <font>\t\tUse <font> for normal text (also: -fn)" +msgstr "-font <tiparo>\tUzi <tiparo>-n por normala teksto (ankaŭ: -fn)" + +msgid "-boldfont <font>\tUse <font> for bold text" +msgstr "-boldfont <tiparo>\tUzi <tiparo>-n por grasa teksto" + +msgid "-italicfont <font>\tUse <font> for italic text" +msgstr "-italicfont <tiparo>\tUzi <tiparo>-n por kursiva teksto" + +msgid "-geometry <geom>\tUse <geom> for initial geometry (also: -geom)" +msgstr "-geometry <geom>\tUzi <geom> kiel komenca geometrio (ankaŭ: -geom)" + +msgid "-borderwidth <width>\tUse a border width of <width> (also: -bw)" +msgstr "-borderwidth <larĝo>\tUzi <larĝo>-n kiel larĝo de bordero (ankaŭ: -bw)" + +msgid "-scrollbarwidth <width> Use a scrollbar width of <width> (also: -sw)" +msgstr "" +"-scrollbarwidth <larĝo> Uzi <larĝo>-n kiel larĝo de rulumskalo (ankaŭ: -sw)" + +msgid "-menuheight <height>\tUse a menu bar height of <height> (also: -mh)" +msgstr "" +"-menuheight <alto>\tUzi <alto>-n kiel alto de menuzona alto (ankaŭ: -mh)" + +msgid "-reverse\t\tUse reverse video (also: -rv)" +msgstr "-reverse\t\tUzi inversan videon (ankaŭ: -rv)" + +msgid "+reverse\t\tDon't use reverse video (also: +rv)" +msgstr "+reverse\t\tNe uzi inversan videon (ankaŭ: +rv)" + +msgid "-xrm <resource>\tSet the specified resource" +msgstr "-xrm <rimedo>\tAgordi la specifitan <rimedo>-n" + +msgid "" +"\n" +"Arguments recognised by gvim (RISC OS version):\n" +msgstr "" +"\n" +"Argumentoj agnoskitaj de gvim (versio RISC OS):\n" + +msgid "--columns <number>\tInitial width of window in columns" +msgstr "--columns <nombro>\tKomenca larĝo de fenestro en kolumnoj" + +msgid "--rows <number>\tInitial height of window in rows" +msgstr "--rows <nombro>\tKomenca alto de fenestro en vicoj" + +msgid "" +"\n" +"Arguments recognised by gvim (GTK+ version):\n" +msgstr "" +"\n" +"Argumentoj agnoskitaj de gvim (versio GTK+):\n" + +msgid "-display <display>\tRun vim on <display> (also: --display)" +msgstr "-display <ekrano>\tLanĉi Vim sur tiu <ekrano> (ankaŭ: --display)" + +msgid "--role <role>\tSet a unique role to identify the main window" +msgstr "--role <rolo>\tDoni unikan rolon por identigi la ĉefan fenestron" + +msgid "--socketid <xid>\tOpen Vim inside another GTK widget" +msgstr "--socketid <xid>\tMalfermi Vim en alia GTK fenestraĵo" + +msgid "-P <parent title>\tOpen Vim inside parent application" +msgstr "-P <gepatra titolo>\tMalfermi Vim en gepatra aplikaĵo" + +msgid "--windowid <HWND>\tOpen Vim inside another win32 widget" +msgstr "--windowid <HWND>\tMalfermi Vim en alia win32 fenestraĵo" + +msgid "No display" +msgstr "Neniu ekrano" + +#. Failed to send, abort. +msgid ": Send failed.\n" +msgstr ": Sendo fiaskis.\n" + +#. Let vim start normally. +msgid ": Send failed. Trying to execute locally\n" +msgstr ": Sendo fiaskis. Provo de loka plenumo\n" + +#, c-format +msgid "%d of %d edited" +msgstr "%d de %d redaktita(j)" + +msgid "No display: Send expression failed.\n" +msgstr "Neniu ekrano: Sendado de esprimo fiaskis.\n" + +msgid ": Send expression failed.\n" +msgstr ": Sendado de esprimo fiaskis.\n" + +msgid "No marks set" +msgstr "Neniu marko" + +#, c-format +msgid "E283: No marks matching \"%s\"" +msgstr "E283: Neniu marko kongruas kun \"%s\"" + +#. Highlight title +msgid "" +"\n" +"mark line col file/text" +msgstr "" +"\n" +"mark linio kol dosiero/teksto" + +#. Highlight title +msgid "" +"\n" +" jump line col file/text" +msgstr "" +"\n" +" salt linio kol dosiero/teksto" + +#. Highlight title +msgid "" +"\n" +"change line col text" +msgstr "" +"\n" +"ŝanĝo linio kol teksto" + +#, c-format +msgid "" +"\n" +"# File marks:\n" +msgstr "" +"\n" +"# Markoj de dosiero:\n" + +#. Write the jumplist with -' +#, c-format +msgid "" +"\n" +"# Jumplist (newest first):\n" +msgstr "" +"\n" +"# Saltlisto (plej novaj unue):\n" + +#, c-format +msgid "" +"\n" +"# History of marks within files (newest to oldest):\n" +msgstr "" +"\n" +"# Historio de markoj en dosieroj (de plej nova al plej malnova):\n" + +msgid "Missing '>'" +msgstr "Mankas '>'" + +msgid "E543: Not a valid codepage" +msgstr "E543: Nevalida kodpaĝo" + +msgid "E284: Cannot set IC values" +msgstr "E284: Ne eblas agordi valorojn de IC" + +msgid "E285: Failed to create input context" +msgstr "E285: Ne eblis krei enigan kuntekston" + +msgid "E286: Failed to open input method" +msgstr "E286: Ne eblis malfermi enigan metodon" + +msgid "E287: Warning: Could not set destroy callback to IM" +msgstr "E287: Averto: Ne eblis agordi detruan reagfunkcion al IM" + +msgid "E288: input method doesn't support any style" +msgstr "E288: eniga metodo subtenas neniun stilon" + +# DP: mi ne scias, kio estas "preedit" +msgid "E289: input method doesn't support my preedit type" +msgstr "E289: eniga metodo ne subtenas mian antaŭredaktan tipon" + +msgid "E290: over-the-spot style requires fontset" +msgstr "E290: la stilo over-the-spot bezonas tiparon" + +msgid "E291: Your GTK+ is older than 1.2.3. Status area disabled" +msgstr "E291: Via GTK+ estas pli malnova ol 1.2.3. Stata zono malŝaltita" + +msgid "E292: Input Method Server is not running" +msgstr "E292: Servilo de eniga metodo ne rulas" + +msgid "E293: block was not locked" +msgstr "E293: bloko ne estis ŝlosita" + +msgid "E294: Seek error in swap file read" +msgstr "E294: Eraro de enpoziciigo dum lego de permutodosiero .swp" + +msgid "E295: Read error in swap file" +msgstr "E295: Eraro de lego en permutodosiero .swp" + +msgid "E296: Seek error in swap file write" +msgstr "E296: Eraro de enpoziciigo dum skribo de permutodosiero .swp" + +msgid "E297: Write error in swap file" +msgstr "E297: Eraro de skribo en permutodosiero .swp" + +msgid "E300: Swap file already exists (symlink attack?)" +msgstr "E300: Permutodosiero .swp jam ekzistas (ĉu atako per simbola ligilo?)" + +msgid "E298: Didn't get block nr 0?" +msgstr "E298: Ĉu ne akiris blokon n-ro 0?" + +msgid "E298: Didn't get block nr 1?" +msgstr "E298: Ĉu ne akiris blokon n-ro 1?" + +msgid "E298: Didn't get block nr 2?" +msgstr "E298: Ĉu ne akiris blokon n-ro 2?" + +#. could not (re)open the swap file, what can we do???? +msgid "E301: Oops, lost the swap file!!!" +msgstr "E301: Ve, perdis la permutodosieron .swp!!!" + +msgid "E302: Could not rename swap file" +msgstr "E302: Ne eblis renomi la permutodosieron .swp" + +#, c-format +msgid "E303: Unable to open swap file for \"%s\", recovery impossible" +msgstr "" +"E303: Ne eblas malfermi permutodosieron .swp de \"%s\", restaŭro neeblas" + +msgid "E304: ml_upd_block0(): Didn't get block 0??" +msgstr "E304: ml_upd_block0(): Ne akiris blokon 0??" + +#, c-format +msgid "E305: No swap file found for %s" +msgstr "E305: Neniu permutodosiero .swp trovita por %s" + +msgid "Enter number of swap file to use (0 to quit): " +msgstr "Entajpu la uzendan numeron de permutodosiero .swp (0 por eliri): " + +#, c-format +msgid "E306: Cannot open %s" +msgstr "E306: Ne eblas malfermi %s" + +msgid "Unable to read block 0 from " +msgstr "Ne eblas legi blokon 0 de " + +msgid "" +"\n" +"Maybe no changes were made or Vim did not update the swap file." +msgstr "" +"\n" +"Eble neniu ŝanĝo estis farita aŭ Vim ne ĝisdatigis la permutodosieron .swp." + +msgid " cannot be used with this version of Vim.\n" +msgstr " ne uzeblas per tiu versio de vim.\n" + +msgid "Use Vim version 3.0.\n" +msgstr "Uzu version 3.0 de Vim\n" + +#, c-format +msgid "E307: %s does not look like a Vim swap file" +msgstr "E307: %s ne aspektas kiel permutodosiero .swp de Vim" + +msgid " cannot be used on this computer.\n" +msgstr " ne uzeblas per tiu komputilo.\n" + +msgid "The file was created on " +msgstr "La dosiero estas kreita je " + +msgid "" +",\n" +"or the file has been damaged." +msgstr "" +",\n" +"aŭ la dosiero estas difekta." + +msgid " has been damaged (page size is smaller than minimum value).\n" +msgstr " difektiĝis (paĝa grando pli malgranda ol minimuma valoro).\n" + +#, c-format +msgid "Using swap file \"%s\"" +msgstr "Uzado de permutodosiero .swp \"%s\"" + +#, c-format +msgid "Original file \"%s\"" +msgstr "Originala dosiero \"%s\"" + +msgid "E308: Warning: Original file may have been changed" +msgstr "E308: Averto: Originala dosiero eble ŝanĝiĝis" + +#, c-format +msgid "E309: Unable to read block 1 from %s" +msgstr "E309: Ne eblas legi blokon 1 de %s" + +msgid "???MANY LINES MISSING" +msgstr "???MULTAJ LINIOJ MANKAS" + +msgid "???LINE COUNT WRONG" +msgstr "???NOMBRO DE LINIOJ NE ĜUSTAS" + +msgid "???EMPTY BLOCK" +msgstr "???MALPLENA BLOKO" + +msgid "???LINES MISSING" +msgstr "???LINIOJ MANKANTAJ" + +#, c-format +msgid "E310: Block 1 ID wrong (%s not a .swp file?)" +msgstr "" +"E310: Nevalida identigilo de bloko 1 (ĉu %s ne estas permutodosiero .swp?)" + +msgid "???BLOCK MISSING" +msgstr "???MANKAS BLOKO" + +msgid "??? from here until ???END lines may be messed up" +msgstr "??? ekde tie ĝis ???FINO linioj estas eble difektaj" + +msgid "??? from here until ???END lines may have been inserted/deleted" +msgstr "??? ekde tie ĝis ???FINO linioj estas eble enmetitaj/forviŝitaj" + +msgid "???END" +msgstr "???FINO" + +msgid "E311: Recovery Interrupted" +msgstr "E311: Restaŭro interrompita" + +msgid "" +"E312: Errors detected while recovering; look for lines starting with ???" +msgstr "E312: Eraroj dum restaŭro; rigardu liniojn komencantajn per ???" + +msgid "See \":help E312\" for more information." +msgstr "Vidu \":help E312\" por pliaj informoj." + +msgid "Recovery completed. You should check if everything is OK." +msgstr "Restaŭro finiĝis. Indus kontroli ĉu ĉio estas en ordo." + +msgid "" +"\n" +"(You might want to write out this file under another name\n" +msgstr "" +"\n" +"(Indas konservi tiun dosieron per alia nomo\n" + +msgid "and run diff with the original file to check for changes)\n" +msgstr "kaj lanĉi diff kun la originala dosiero por kontroli la ŝanĝojn)\n" + +msgid "" +"Delete the .swp file afterwards.\n" +"\n" +msgstr "" +"Poste forviŝi la permutodosieron .swp.\n" +"\n" + +#. use msg() to start the scrolling properly +msgid "Swap files found:" +msgstr "Permutodosiero .swp trovita:" + +msgid " In current directory:\n" +msgstr " En la aktuala dosierujo:\n" + +msgid " Using specified name:\n" +msgstr " Uzado de specifita nomo:\n" + +msgid " In directory " +msgstr " En dosierujo " + +msgid " -- none --\n" +msgstr " -- nenio --\n" + +msgid " owned by: " +msgstr " posedata de: " + +msgid " dated: " +msgstr " dato: " + +msgid " dated: " +msgstr " dato: " + +msgid " [from Vim version 3.0]" +msgstr " [de Vim versio 3.0]" + +msgid " [does not look like a Vim swap file]" +msgstr " [ne aspektas kiel permutodosiero .swp de Vim]" + +msgid " file name: " +msgstr " dosiernomo: " + +msgid "" +"\n" +" modified: " +msgstr "" +"\n" +" modifita: " + +msgid "YES" +msgstr "JES" + +msgid "no" +msgstr "ne" + +msgid "" +"\n" +" user name: " +msgstr "" +"\n" +" uzantonomo: " + +msgid " host name: " +msgstr " komputila nomo: " + +msgid "" +"\n" +" host name: " +msgstr "" +"\n" +" komputila nomo: " + +msgid "" +"\n" +" process ID: " +msgstr "" +"\n" +" proceza ID: " + +msgid " (still running)" +msgstr " (ankoraŭ rulas)" + +msgid "" +"\n" +" [not usable with this version of Vim]" +msgstr "" +"\n" +" [ne uzebla per tiu versio de Vim]" + +msgid "" +"\n" +" [not usable on this computer]" +msgstr "" +"\n" +" [neuzebla per tiu komputilo]" + +msgid " [cannot be read]" +msgstr " [nelegebla]" + +msgid " [cannot be opened]" +msgstr " [nemalfermebla]" + +msgid "E313: Cannot preserve, there is no swap file" +msgstr "E313: Ne eblas konservi, ne estas permutodosiero .swp" + +msgid "File preserved" +msgstr "Dosiero konservita" + +msgid "E314: Preserve failed" +msgstr "E314: Konservo fiaskis" + +#, c-format +msgid "E315: ml_get: invalid lnum: %ld" +msgstr "E315: ml_get: nevalida lnum: %ld" + +#, c-format +msgid "E316: ml_get: cannot find line %ld" +msgstr "E316: ml_get: ne eblas trovi linion %ld" + +msgid "E317: pointer block id wrong 3" +msgstr "E317: nevalida referenco de bloko id 3" + +msgid "stack_idx should be 0" +msgstr "stack_idx devus esti 0" + +msgid "E318: Updated too many blocks?" +msgstr "E318: Ĉu ĝisdatigis tro da blokoj?" + +msgid "E317: pointer block id wrong 4" +msgstr "E317: nevalida referenco de bloko id 4" + +msgid "deleted block 1?" +msgstr "ĉu forviŝita bloko 1?" + +#, c-format +msgid "E320: Cannot find line %ld" +msgstr "E320: Ne eblas trovi linion %ld" + +msgid "E317: pointer block id wrong" +msgstr "E317: nevalida referenco de bloko id" + +msgid "pe_line_count is zero" +msgstr "pe_line_count estas nul" + +#, c-format +msgid "E322: line number out of range: %ld past the end" +msgstr "E322: numero de linio ekster limoj: %ld preter la fino" + +#, c-format +msgid "E323: line count wrong in block %ld" +msgstr "E323: nevalida nombro de linioj en bloko %ld" + +msgid "Stack size increases" +msgstr "Stako pligrandiĝas" + +msgid "E317: pointer block id wrong 2" +msgstr "E317: nevalida referenco de bloko id 2" + +#, c-format +msgid "E773: Symlink loop for \"%s\"" +msgstr "E773: Buklo de simbolaj ligiloj por \"%s\"" + +msgid "E325: ATTENTION" +msgstr "E325: ATENTO" + +msgid "" +"\n" +"Found a swap file by the name \"" +msgstr "" +"\n" +"Trovis permutodosieron .swp kun la nomo \"" + +msgid "While opening file \"" +msgstr "Dum malfermo de dosiero \"" + +msgid " NEWER than swap file!\n" +msgstr " PLI NOVA ol permutodosiero .swp!\n" + +#. Some of these messages are long to allow translation to +#. * other languages. +msgid "" +"\n" +"(1) Another program may be editing the same file.\n" +" If this is the case, be careful not to end up with two\n" +" different instances of the same file when making changes.\n" +msgstr "" +"\n" +"(1) Alia programo eble redaktas la saman dosieron.\n" +" Se jes, estu singarda por ne havi du malsamajn\n" +" aperojn de la sama dosiero, kiam vi faros ŝanĝojn.\n" + +msgid " Quit, or continue with caution.\n" +msgstr " Eliru, aŭ daŭrigu singarde.\n" + +msgid "" +"\n" +"(2) An edit session for this file crashed.\n" +msgstr "" +"\n" +"(2) Redakta seanco de tiu dosiero kolapsis.\n" + +msgid " If this is the case, use \":recover\" or \"vim -r " +msgstr " Se veras, uzu \":recover\" aŭ \"vim -r " + +msgid "" +"\"\n" +" to recover the changes (see \":help recovery\").\n" +msgstr "" +"\"\n" +" por restaŭri la ŝanĝojn (vidu \":help recovery\").\n" + +msgid " If you did this already, delete the swap file \"" +msgstr " Se vi jam faris ĝin, forviŝu la permutodosieron .swp \"" + +msgid "" +"\"\n" +" to avoid this message.\n" +msgstr "" +"\"\n" +" por eviti tiun mesaĝon.\n" + +msgid "Swap file \"" +msgstr "Permutodosiero .swp \"" + +msgid "\" already exists!" +msgstr "\" jam ekzistas!" + +msgid "VIM - ATTENTION" +msgstr "VIM - ATENTO" + +msgid "Swap file already exists!" +msgstr "Permutodosiero .swp jam ekzistas!" + +# AM: ĉu Vim konvertos la unuliterajn respondojn de la uzulo? +# DP: jes, la '&' respondoj bone funkcias (mi kontrolis) +msgid "" +"&Open Read-Only\n" +"&Edit anyway\n" +"&Recover\n" +"&Quit\n" +"&Abort" +msgstr "" +"&Malfermi nurlegreĝime\n" +"Tamen &redakti\n" +"Res&taŭri\n" +"&Eliri\n" +"Ĉe&sigi" + +msgid "" +"&Open Read-Only\n" +"&Edit anyway\n" +"&Recover\n" +"&Delete it\n" +"&Quit\n" +"&Abort" +msgstr "" +"&Malfermi nurlegreĝime\n" +"Tamen &redakti\n" +"Res&taŭri\n" +"&Forviŝi\n" +"&Eliri\n" +"Ĉe&sigi" + +msgid "E326: Too many swap files found" +msgstr "E326: Tro da dosieroj trovitaj" + +msgid "E327: Part of menu-item path is not sub-menu" +msgstr "E327: Parto de vojo de menuero ne estas sub-menuo" + +msgid "E328: Menu only exists in another mode" +msgstr "E328: Menuo nur ekzistas en alia reĝimo" + +#, c-format +msgid "E329: No menu \"%s\"" +msgstr "E329: Neniu menuo \"%s\"" + +#. Only a mnemonic or accelerator is not valid. +msgid "E792: Empty menu name" +msgstr "E792: Malplena nomo de menuo" + +msgid "E330: Menu path must not lead to a sub-menu" +msgstr "E330: Vojo de menuo ne rajtas konduki al sub-menuo." + +msgid "E331: Must not add menu items directly to menu bar" +msgstr "E331: Aldono de menueroj direkte al menuzono estas malpermesita" + +msgid "E332: Separator cannot be part of a menu path" +msgstr "E332: Disigilo ne rajtas esti ero de vojo de menuo" + +#. Now we have found the matching menu, and we list the mappings +#. Highlight title +msgid "" +"\n" +"--- Menus ---" +msgstr "" +"\n" +"--- Menuoj ---" + +msgid "Tear off this menu" +msgstr "Disigi tiun menuon" + +msgid "E333: Menu path must lead to a menu item" +msgstr "E333: Vojo de menuo devas konduki al menuero" + +#, c-format +msgid "E334: Menu not found: %s" +msgstr "E334: Menuo netrovita: %s" + +#, c-format +msgid "E335: Menu not defined for %s mode" +msgstr "E335: Menuo ne estas difinita por reĝimo %s" + +msgid "E336: Menu path must lead to a sub-menu" +msgstr "E336: Vojo de menuo devas konduki al sub-menuo" + +msgid "E337: Menu not found - check menu names" +msgstr "E337: Menuo ne trovita - kontrolu nomojn de menuoj" + +#, c-format +msgid "Error detected while processing %s:" +msgstr "Eraro okazis dum traktado de %s:" + +#, c-format +msgid "line %4ld:" +msgstr "linio %4ld:" + +#, c-format +msgid "E354: Invalid register name: '%s'" +msgstr "E354: Nevalida nomo de reĝistro: '%s'" + +msgid "Messages maintainer: Bram Moolenaar <Bram@vim.org>" +msgstr "Flegado de mesaĝoj: Dominique PELLÉ <dominique.pelle@free.fr>" + +msgid "Interrupt: " +msgstr "Interrompo: " + +msgid "Press ENTER or type command to continue" +msgstr "Premu ENEN-KLAVON aŭ tajpu komandon por daŭrigi" + +#, c-format +msgid "%s line %ld" +msgstr "%s linio %ld" + +msgid "-- More --" +msgstr "-- Pli --" + +msgid " SPACE/d/j: screen/page/line down, b/u/k: up, q: quit " +msgstr " SPACETO/d/j: ekrano/paĝo/sub linio, b/u/k: supre, q: eliri " + +msgid "Question" +msgstr "Demando" + +msgid "" +"&Yes\n" +"&No" +msgstr "" +"&Jes\n" +"&Ne" + +# AM: ĉu Vim konvertos unuliterajn respondojn? +# DP: jes, '&' bone funkcias (mi kontrolis) +msgid "" +"&Yes\n" +"&No\n" +"Save &All\n" +"&Discard All\n" +"&Cancel" +msgstr "" +"&Jes\n" +"&Ne\n" +"&Konservi Ĉion\n" +"&Forlasi Ĉion\n" +"&Rezigni" + +msgid "Select Directory dialog" +msgstr "Dialogujo de dosiera elekto" + +msgid "Save File dialog" +msgstr "Dialogujo de dosiera konservo" + +msgid "Open File dialog" +msgstr "Dialogujo de dosiera malfermo" + +#. TODO: non-GUI file selector here +msgid "E338: Sorry, no file browser in console mode" +msgstr "E338: Bedaŭrinde ne estas dosierfoliumilo en konzola reĝimo" + +msgid "E766: Insufficient arguments for printf()" +msgstr "E766: Ne sufiĉaj argumentoj por printf()" + +msgid "E807: Expected Float argument for printf()" +msgstr "E807: Atendis Glitpunktnombron kiel argumento de printf()" + +msgid "E767: Too many arguments to printf()" +msgstr "E767: Tro da argumentoj al printf()" + +msgid "W10: Warning: Changing a readonly file" +msgstr "W10: Averto: Ŝanĝo de nurlegebla dosiero" + +msgid "Type number or click with mouse (<Enter> cancels): " +msgstr "Tajpu nombron aŭ musklaku (<Enen-klavo> rezignas): " + +msgid "Choice number (<Enter> cancels): " +msgstr "Tajpu numeron (<Enen-klavo> rezignas): " + +msgid "1 more line" +msgstr "1 plia linio" + +msgid "1 line less" +msgstr "1 malplia linio" + +#, c-format +msgid "%ld more lines" +msgstr "%ld pliaj linioj" + +#, c-format +msgid "%ld fewer lines" +msgstr "%ld malpliaj linioj" + +msgid " (Interrupted)" +msgstr " (Interrompita)" + +msgid "Beep!" +msgstr "Bip!" + +msgid "Vim: preserving files...\n" +msgstr "Vim: konservo de dosieroj...\n" + +#. close all memfiles, without deleting +msgid "Vim: Finished.\n" +msgstr "Vim: Finita.\n" + +#, c-format +msgid "ERROR: " +msgstr "ERARO: " + +#, c-format +msgid "" +"\n" +"[bytes] total alloc-freed %lu-%lu, in use %lu, peak use %lu\n" +msgstr "" +"\n" +"[bajtoj] totalaj disponigitaj/maldisponigitaj %lu-%lu, nun uzataj %lu, " +"kulmina uzo %lu\n" + +#, c-format +msgid "" +"[calls] total re/malloc()'s %lu, total free()'s %lu\n" +"\n" +msgstr "" +"[alvokoj] totalaj re/malloc() %lu, totalaj free() %lu\n" +"\n" + +msgid "E340: Line is becoming too long" +msgstr "E340: Linio iĝas tro longa" + +#, c-format +msgid "E341: Internal error: lalloc(%ld, )" +msgstr "E341: Interna eraro: lalloc(%ld, )" + +#, c-format +msgid "E342: Out of memory! (allocating %lu bytes)" +msgstr "E342: Ne plu restas memoro! (disponigo de %lu bajtoj)" + +#, c-format +msgid "Calling shell to execute: \"%s\"" +msgstr "Alvokas ŝelon por plenumi: \"%s\"" + +msgid "E545: Missing colon" +msgstr "E545: Mankas dupunkto" + +msgid "E546: Illegal mode" +msgstr "E546: Reĝimo nepermesata" + +msgid "E547: Illegal mouseshape" +msgstr "E547: Nevalida formo de muskursoro" + +msgid "E548: digit expected" +msgstr "E548: cifero atendata" + +msgid "E549: Illegal percentage" +msgstr "E549: Nevalida procento" + +msgid "Enter encryption key: " +msgstr "Tajpu la ŝlosilon de ĉifrado: " + +msgid "Enter same key again: " +msgstr "Tajpu la ŝlosilon denove: " + +msgid "Keys don't match!" +msgstr "Ŝlosiloj ne kongruas!" + +#, c-format +msgid "" +"E343: Invalid path: '**[number]' must be at the end of the path or be " +"followed by '%s'." +msgstr "" +"E343: Nevalida vojo: '**[nombro]' devas esti ĉe la fino de la vojo aŭ " +"sekvita de '%s'." + +#, c-format +msgid "E344: Can't find directory \"%s\" in cdpath" +msgstr "E344: Ne eblas trovi dosierujon \"%s\" en cdpath" + +#, c-format +msgid "E345: Can't find file \"%s\" in path" +msgstr "E345: Ne eblas trovi dosieron \"%s\" en serĉvojo" + +#, c-format +msgid "E346: No more directory \"%s\" found in cdpath" +msgstr "E346: Ne plu trovis dosierujon \"%s\" en cdpath" + +#, c-format +msgid "E347: No more file \"%s\" found in path" +msgstr "E347: Ne plu trovis dosieron \"%s\" en serĉvojo" + +msgid "Cannot connect to Netbeans #2" +msgstr "Ne eblas konekti al Netbeans n-ro 2" + +msgid "Cannot connect to Netbeans" +msgstr "Ne eblas konekti al Netbeans" + +#, c-format +msgid "E668: Wrong access mode for NetBeans connection info file: \"%s\"" +msgstr "" +"E668: Nevalida permeso de dosiero de informo de konekto NetBeans: \"%s\"" + +msgid "read from Netbeans socket" +msgstr "lego el kontaktoskatolo de Netbeans" + +#, c-format +msgid "E658: NetBeans connection lost for buffer %ld" +msgstr "E658: Konekto de NetBeans perdita por bufro %ld" + +msgid "E505: " +msgstr "E505: " + +msgid "E774: 'operatorfunc' is empty" +msgstr "E774: 'operatorfunc' estas malplena" + +# DP: ĉu Eval devas esti tradukita? +msgid "E775: Eval feature not available" +msgstr "E775: Eval eblo ne disponeblas" + +msgid "Warning: terminal cannot highlight" +msgstr "Averto: terminalo ne povas emfazi" + +msgid "E348: No string under cursor" +msgstr "E348: Neniu ĉeno sub la kursoro" + +msgid "E349: No identifier under cursor" +msgstr "E349: Neniu identigilo sub la kursoro" + +msgid "E352: Cannot erase folds with current 'foldmethod'" +msgstr "E352: Ne eblas forviŝi faldon per aktuala 'foldmethod'" + +msgid "E664: changelist is empty" +msgstr "E664: Listo de ŝanĝoj estas malplena" + +msgid "E662: At start of changelist" +msgstr "E662: Ĉe komenco de ŝanĝlisto" + +msgid "E663: At end of changelist" +msgstr "E663: Ĉe fino de ŝanĝlisto" + +msgid "Type :quit<Enter> to exit Vim" +msgstr "Tajpu \":quit<Enen-klavo>\" por eliri el Vim" + +#, c-format +msgid "1 line %sed 1 time" +msgstr "1 linio %sita 1 foje" + +#, c-format +msgid "1 line %sed %d times" +msgstr "1 linio %sita %d foje" + +#, c-format +msgid "%ld lines %sed 1 time" +msgstr "%ld linio %sita 1 foje" + +#, c-format +msgid "%ld lines %sed %d times" +msgstr "%ld linioj %sitaj %d foje" + +#, c-format +msgid "%ld lines to indent... " +msgstr "%ld krommarĝenendaj linioj... " + +msgid "1 line indented " +msgstr "1 linio krommarĝenita " + +#, c-format +msgid "%ld lines indented " +msgstr "%ld linioj krommarĝenitaj " + +msgid "E748: No previously used register" +msgstr "E748: Neniu reĝistro antaŭe uzata" + +#. must display the prompt +msgid "cannot yank; delete anyway" +msgstr "ne eblas kopii; forviŝi tamene" + +msgid "1 line changed" +msgstr "1 linio ŝanĝita" + +#, c-format +msgid "%ld lines changed" +msgstr "%ld linioj ŝanĝitaj" + +#, c-format +msgid "freeing %ld lines" +msgstr "malokupas %ld liniojn" + +msgid "block of 1 line yanked" +msgstr "bloko de 1 linio kopiita" + +msgid "1 line yanked" +msgstr "1 linio kopiita" + +#, c-format +msgid "block of %ld lines yanked" +msgstr "bloko de %ld linioj kopiita" + +#, c-format +msgid "%ld lines yanked" +msgstr "%ld linioj kopiitaj" + +#, c-format +msgid "E353: Nothing in register %s" +msgstr "E353: Nenio en reĝistro %s" + +#. Highlight title +msgid "" +"\n" +"--- Registers ---" +msgstr "" +"\n" +"--- Reĝistroj ---" + +msgid "Illegal register name" +msgstr "Nevalida nomo de reĝistro" + +#, c-format +msgid "" +"\n" +"# Registers:\n" +msgstr "" +"\n" +"# Reĝistroj:\n" + +#, c-format +msgid "E574: Unknown register type %d" +msgstr "E574: Nekonata tipo de reĝistro %d" + +#, c-format +msgid "%ld Cols; " +msgstr "%ld Kolumnoj; " + +#, c-format +msgid "Selected %s%ld of %ld Lines; %ld of %ld Words; %ld of %ld Bytes" +msgstr "Apartigis %s%ld de %ld Linioj; %ld de %ld Vortoj; %ld de %ld Bajtoj" + +#, c-format +msgid "" +"Selected %s%ld of %ld Lines; %ld of %ld Words; %ld of %ld Chars; %ld of %ld " +"Bytes" +msgstr "" +"Apartigis %s%ld de %ld Linioj; %ld de %ld Vortoj; %ld de %ld Signoj; %ld de %" +"ld Bajtoj" + +#, c-format +msgid "Col %s of %s; Line %ld of %ld; Word %ld of %ld; Byte %ld of %ld" +msgstr "Kol %s de %s; Linio %ld de %ld; Vorto %ld de %ld; Bajto %ld de %ld" + +#, c-format +msgid "" +"Col %s of %s; Line %ld of %ld; Word %ld of %ld; Char %ld of %ld; Byte %ld of " +"%ld" +msgstr "" +"Kol %s de %s; Linio %ld de %ld; Vorto %ld de %ld; Signo %ld de %ld; Bajto %" +"ld de %ld" + +#, c-format +msgid "(+%ld for BOM)" +msgstr "(+%ld por BOM)" + +msgid "%<%f%h%m%=Page %N" +msgstr "%<%f%h%m%=Folio %N" + +msgid "Thanks for flying Vim" +msgstr "Dankon pro flugi per Vim" + +msgid "E518: Unknown option" +msgstr "E518: Nekonata opcio" + +msgid "E519: Option not supported" +msgstr "E519: Opcio ne subtenita" + +msgid "E520: Not allowed in a modeline" +msgstr "E520: Ne permesita en reĝimlinio" + +msgid "E521: Number required after =" +msgstr "E521: Nombro bezonata malantaŭ =" + +msgid "E522: Not found in termcap" +msgstr "E522: Netrovita en termcap" + +#, c-format +msgid "E539: Illegal character <%s>" +msgstr "E539: Nevalida signo <%s>" + +msgid "E529: Cannot set 'term' to empty string" +msgstr "E529: Ne eblas agordi 'term' al malplena ĉeno" + +msgid "E530: Cannot change term in GUI" +msgstr "E530: term ne ŝanĝeblas en grafika interfaco" + +msgid "E531: Use \":gui\" to start the GUI" +msgstr "E531: Uzu \":gui\" por lanĉi la grafikan interfacon" + +msgid "E589: 'backupext' and 'patchmode' are equal" +msgstr "E589: 'backupext' kaj 'patchmode' estas egalaj" + +msgid "E617: Cannot be changed in the GTK+ 2 GUI" +msgstr "E617: Ne ŝanĝeblas en la grafika interfaco GTK+ 2" + +msgid "E524: Missing colon" +msgstr "E524: Mankas dupunkto" + +msgid "E525: Zero length string" +msgstr "E525: Ĉeno de nula longo" + +#, c-format +msgid "E526: Missing number after <%s>" +msgstr "E526: Mankas nombro malantaŭ <%s>" + +msgid "E527: Missing comma" +msgstr "E527: Mankas komo" + +msgid "E528: Must specify a ' value" +msgstr "E528: Devas specifi ' valoron" + +msgid "E595: contains unprintable or wide character" +msgstr "E595: enhavas nepreseblan aŭ plurĉellarĝan signon" + +msgid "E596: Invalid font(s)" +msgstr "E596: Nevalida(j) tiparo(j)" + +msgid "E597: can't select fontset" +msgstr "E597: ne eblas elekti tiparon" + +msgid "E598: Invalid fontset" +msgstr "E598: Nevalida tiparo" + +msgid "E533: can't select wide font" +msgstr "E533: ne eblas elekti larĝan tiparon" + +msgid "E534: Invalid wide font" +msgstr "E534: Nevalida larĝa tiparo" + +#, c-format +msgid "E535: Illegal character after <%c>" +msgstr "E535: Nevalida signo malantaŭ <%c>" + +msgid "E536: comma required" +msgstr "E536: komo bezonata" + +#, c-format +msgid "E537: 'commentstring' must be empty or contain %s" +msgstr "E537: 'commentstring' devas esti malplena aŭ enhavi %s" + +msgid "E538: No mouse support" +msgstr "E538: Neniu muso subtenita" + +msgid "E540: Unclosed expression sequence" +msgstr "E540: '}' mankas" + +msgid "E541: too many items" +msgstr "E541: tro da elementoj" + +msgid "E542: unbalanced groups" +msgstr "E542: misekvilibritaj grupoj" + +msgid "E590: A preview window already exists" +msgstr "E590: Antaŭvida fenestro jam ekzistas" + +msgid "W17: Arabic requires UTF-8, do ':set encoding=utf-8'" +msgstr "W17: La araba bezonas UTF-8, tajpu \":set encoding=utf-8\"" + +#, c-format +msgid "E593: Need at least %d lines" +msgstr "E593: Bezonas almenaŭ %d liniojn" + +#, c-format +msgid "E594: Need at least %d columns" +msgstr "E594: Bezonas almenaŭ %d kolumnojn" + +#, c-format +msgid "E355: Unknown option: %s" +msgstr "E355: Nekonata opcio: %s" + +#. There's another character after zeros or the string +#. * is empty. In both cases, we are trying to set a +#. * num option using a string. +#, c-format +msgid "E521: Number required: &%s = '%s'" +msgstr "E521: Nombro bezonata: &%s = '%s'" + +msgid "" +"\n" +"--- Terminal codes ---" +msgstr "" +"\n" +"--- Kodoj de terminalo ---" + +msgid "" +"\n" +"--- Global option values ---" +msgstr "" +"\n" +"--- Mallokaj opcioj ---" + +msgid "" +"\n" +"--- Local option values ---" +msgstr "" +"\n" +"--- Valoroj de lokaj opcioj ---" + +msgid "" +"\n" +"--- Options ---" +msgstr "" +"\n" +"--- Opcioj ---" + +msgid "E356: get_varp ERROR" +msgstr "E356: ERARO get_varp" + +#, c-format +msgid "E357: 'langmap': Matching character missing for %s" +msgstr "E357: 'langmap': Kongrua signo mankas por %s" + +#, c-format +msgid "E358: 'langmap': Extra characters after semicolon: %s" +msgstr "E358: 'langmap': Ekstraj signoj malantaŭ punktokomo: %s" + +msgid "cannot open " +msgstr "ne eblas malfermi " + +msgid "VIM: Can't open window!\n" +msgstr "VIM: Ne eblas malfermi fenestron!\n" + +msgid "Need Amigados version 2.04 or later\n" +msgstr "Bezonas version 2.04 de Amigados aŭ pli novan\n" + +#, c-format +msgid "Need %s version %ld\n" +msgstr "Bezonas %s-on versio %ld\n" + +msgid "Cannot open NIL:\n" +msgstr "Ne eblas malfermi NIL:\n" + +msgid "Cannot create " +msgstr "Ne eblas krei " + +#, c-format +msgid "Vim exiting with %d\n" +msgstr "Vim eliras kun %d\n" + +msgid "cannot change console mode ?!\n" +msgstr "ne eblas ŝanĝi reĝimon de konzolo?!\n" + +msgid "mch_get_shellsize: not a console??\n" +msgstr "mch_get_shellsize: ne estas konzolo??\n" + +#. if Vim opened a window: Executing a shell may cause crashes +msgid "E360: Cannot execute shell with -f option" +msgstr "E360: Ne eblas plenumi ŝelon kun opcio -f" + +msgid "Cannot execute " +msgstr "Ne eblas plenumi " + +msgid "shell " +msgstr "ŝelo " + +msgid " returned\n" +msgstr " liveris\n" + +msgid "ANCHOR_BUF_SIZE too small." +msgstr "ANCHOR_BUF_SIZE tro malgranda." + +msgid "I/O ERROR" +msgstr "ERARO DE ENIGO/ELIGO" + +msgid "Message" +msgstr "Mesaĝo" + +msgid "'columns' is not 80, cannot execute external commands" +msgstr "'columns' ne estas 80, ne eblas plenumi eksternajn komandojn" + +msgid "E237: Printer selection failed" +msgstr "E237: Elekto de presilo fiaskis" + +#, c-format +msgid "to %s on %s" +msgstr "al %s de %s" + +#, c-format +msgid "E613: Unknown printer font: %s" +msgstr "E613: Nekonata tiparo de presilo: %s" + +#, c-format +msgid "E238: Print error: %s" +msgstr "E238: Eraro de presado: %s" + +#, c-format +msgid "Printing '%s'" +msgstr "Presas \"%s\"" + +#, c-format +msgid "E244: Illegal charset name \"%s\" in font name \"%s\"" +msgstr "E244: Nevalida nomo de signaro \"%s\" en nomo de tiparo \"%s\"" + +#, c-format +msgid "E245: Illegal char '%c' in font name \"%s\"" +msgstr "E245: Nevalida signo '%c' en nomo de tiparo \"%s\"" + +# DP: ĉu traduki Text? +msgid "E366: Invalid 'osfiletype' option - using Text" +msgstr "E366: Nevalida opcio 'osfiletype' - uzas Text" + +msgid "Vim: Double signal, exiting\n" +msgstr "Vim: Duobla signalo, eliranta\n" + +#, c-format +msgid "Vim: Caught deadly signal %s\n" +msgstr "Vim: Kaptis mortigantan signalon %s\n" + +#, c-format +msgid "Vim: Caught deadly signal\n" +msgstr "Vim: Kaptis mortigantan signalon\n" + +#, c-format +msgid "Opening the X display took %ld msec" +msgstr "Malfermo de vidigo X daŭris %ld msek" + +msgid "" +"\n" +"Vim: Got X error\n" +msgstr "" +"\n" +"Vim: Alvenis X eraro\n" + +msgid "Testing the X display failed" +msgstr "Testo de la vidigo X fiaskis" + +msgid "Opening the X display timed out" +msgstr "Tempolimo okazis dum malfermo de vidigo X" + +msgid "" +"\n" +"Could not get security context for " +msgstr "" +"\n" +"Ne povis akiri kuntekston de sekureco por " + +msgid "" +"\n" +"Could not set security context for " +msgstr "" +"\n" +"Ne povis ŝalti kuntekston de sekureco por " + +msgid "" +"\n" +"Cannot execute shell " +msgstr "" +"\n" +"Ne eblas plenumi ŝelon " + +msgid "" +"\n" +"Cannot execute shell sh\n" +msgstr "" +"\n" +"Ne eblas plenumi ŝelon sh\n" + +msgid "" +"\n" +"shell returned " +msgstr "" +"\n" +"ŝelo liveris " + +msgid "" +"\n" +"Cannot create pipes\n" +msgstr "" +"\n" +"Ne eblas krei duktojn\n" + +msgid "" +"\n" +"Cannot fork\n" +msgstr "" +"\n" +"Ne eblas forki\n" + +msgid "" +"\n" +"Command terminated\n" +msgstr "" +"\n" +"Komando terminigita\n" + +msgid "XSMP lost ICE connection" +msgstr "XSMP perdis la konekton ICE" + +#, c-format +msgid "dlerror = \"%s\"" +msgstr "dlerror = \"%s\"" + +msgid "Opening the X display failed" +msgstr "Malfermo de vidigo X fiaskis" + +msgid "XSMP handling save-yourself request" +msgstr "XSMP: traktado de peto konservi-mem" + +msgid "XSMP opening connection" +msgstr "XSMP: malfermo de konekto" + +msgid "XSMP ICE connection watch failed" +msgstr "XSMP: kontrolo de konekto ICE fiaskis" + +#, c-format +msgid "XSMP SmcOpenConnection failed: %s" +msgstr "XSMP: SmcOpenConnection fiaskis: %s" + +msgid "At line" +msgstr "Ĉe linio" + +msgid "Could not load vim32.dll!" +msgstr "Ne eblis ŝargi vim32.dll!" + +msgid "VIM Error" +msgstr "Eraro de VIM" + +msgid "Could not fix up function pointers to the DLL!" +msgstr "Ne eblis ripari referencojn de funkcioj al la DLL!" + +#, c-format +msgid "shell returned %d" +msgstr "la ŝelo liveris %d" + +# DP: la eventoj estas tiuj, kiuj estas en la sekvantaj ĉenoj +#, c-format +msgid "Vim: Caught %s event\n" +msgstr "Vim: Kaptis eventon %s\n" + +msgid "close" +msgstr "fermo" + +msgid "logoff" +msgstr "elsaluto" + +msgid "shutdown" +msgstr "sistemfermo" + +msgid "E371: Command not found" +msgstr "E371: Netrovebla komando" + +msgid "" +"VIMRUN.EXE not found in your $PATH.\n" +"External commands will not pause after completion.\n" +"See :help win32-vimrun for more information." +msgstr "" +"VIMRUN.EXE ne troveblas en via $PATH.\n" +"Eksteraj komandoj ne paŭzos post kompletigo.\n" +"Vidu :help win32-vimrun por pliaj informoj." + +msgid "Vim Warning" +msgstr "Averto de Vim" + +#, c-format +msgid "E372: Too many %%%c in format string" +msgstr "E372: Tro da %%%c en formata ĉeno" + +#, c-format +msgid "E373: Unexpected %%%c in format string" +msgstr "E373: Neatendita %%%c en formata ĉeno" + +msgid "E374: Missing ] in format string" +msgstr "E374: Mankas ] en formata ĉeno" + +#, c-format +msgid "E375: Unsupported %%%c in format string" +msgstr "E375: Nesubtenita %%%c en formata ĉeno" + +#, c-format +msgid "E376: Invalid %%%c in format string prefix" +msgstr "E376: Nevalida %%%c en prefikso de formata ĉeno" + +#, c-format +msgid "E377: Invalid %%%c in format string" +msgstr "E377: Nevalida %%%c en formata ĉeno" + +msgid "E378: 'errorformat' contains no pattern" +msgstr "E378: 'errorformat' enhavas neniun ŝablonon" + +msgid "E379: Missing or empty directory name" +msgstr "E379: Nomo de dosierujo mankas aŭ estas malplena" + +msgid "E553: No more items" +msgstr "E553: Ne plu estas eroj" + +#, c-format +msgid "(%d of %d)%s%s: " +msgstr "(%d de %d)%s%s: " + +msgid " (line deleted)" +msgstr " (forviŝita linio)" + +msgid "E380: At bottom of quickfix stack" +msgstr "E380: Ĉe la subo de stako de rapidriparo" + +msgid "E381: At top of quickfix stack" +msgstr "E381: Ĉe la supro de stako de rapidriparo" + +#, c-format +msgid "error list %d of %d; %d errors" +msgstr "listo de eraroj %d de %d; %d eraroj" + +msgid "E382: Cannot write, 'buftype' option is set" +msgstr "E382: Ne eblas skribi, opcio 'buftype' estas ŝaltita" + +msgid "E683: File name missing or invalid pattern" +msgstr "E683: Dosiernomo mankas aŭ nevalida ŝablono" + +#, c-format +msgid "Cannot open file \"%s\"" +msgstr "Ne eblas malfermi dosieron \"%s\"" + +msgid "E681: Buffer is not loaded" +msgstr "E681: Bufro ne estas ŝargita" + +msgid "E777: String or List expected" +msgstr "E777: Ĉeno aŭ Listo atendita" + +#, c-format +msgid "E369: invalid item in %s%%[]" +msgstr "E369: nevalida ano en %s%%[]" + +msgid "E339: Pattern too long" +msgstr "E339: Ŝablono tro longa" + +msgid "E50: Too many \\z(" +msgstr "E50: Tro da \\z(" + +#, c-format +msgid "E51: Too many %s(" +msgstr "E51: Tro da %s(" + +msgid "E52: Unmatched \\z(" +msgstr "E52: Neekvilibra \\z(" + +#, c-format +msgid "E53: Unmatched %s%%(" +msgstr "E53: Neekvilibra %s%%(" + +#, c-format +msgid "E54: Unmatched %s(" +msgstr "E54: Neekvilibra %s(" + +#, c-format +msgid "E55: Unmatched %s)" +msgstr "E55: Neekvilibra %s" + +#, c-format +msgid "E59: invalid character after %s@" +msgstr "E59: nevalida signo malantaŭ %s@" + +#, c-format +msgid "E60: Too many complex %s{...}s" +msgstr "E60: Tro da kompleksaj %s{...}-oj" + +#, c-format +msgid "E61: Nested %s*" +msgstr "E61: Ingita %s*" + +#, c-format +msgid "E62: Nested %s%c" +msgstr "E62: Ingita %s%c" + +msgid "E63: invalid use of \\_" +msgstr "E63: nevalida uzo de \\_" + +#, c-format +msgid "E64: %s%c follows nothing" +msgstr "E64: %s%c sekvas nenion" + +msgid "E65: Illegal back reference" +msgstr "E65: Nevalida retro-referenco" + +msgid "E66: \\z( not allowed here" +msgstr "E66: \\z( estas malpermesa tie" + +# DP: vidu http://www.thefreedictionary.com/et+al. +msgid "E67: \\z1 et al. not allowed here" +msgstr "E67: \\z1 kaj aliaj estas malpermesataj tie" + +msgid "E68: Invalid character after \\z" +msgstr "E68: Nevalida signo malantaŭ \\z" + +#, c-format +msgid "E69: Missing ] after %s%%[" +msgstr "E69: Mankas ] malantaŭ %s%%[" + +#, c-format +msgid "E70: Empty %s%%[]" +msgstr "E70: Malplena %s%%[]" + +#, c-format +msgid "E678: Invalid character after %s%%[dxouU]" +msgstr "E678: Nevalida signo malantaŭ %s%%[dxouU]" + +#, c-format +msgid "E71: Invalid character after %s%%" +msgstr "E71: Nevalida signo malantaŭ %s%%" + +#, c-format +msgid "E769: Missing ] after %s[" +msgstr "E769: Mankas ] malantaŭ %s[" + +#, c-format +msgid "E554: Syntax error in %s{...}" +msgstr "E554: Sintaksa eraro en %s{...}" + +msgid "External submatches:\n" +msgstr "Eksteraj subkongruoj:\n" + +msgid " VREPLACE" +msgstr " V-ANSTATAŬIGO" + +msgid " REPLACE" +msgstr " ANSTATAŬIGO" + +msgid " REVERSE" +msgstr " INVERSI" + +msgid " INSERT" +msgstr " ENMETO" + +msgid " (insert)" +msgstr " (enmeto)" + +msgid " (replace)" +msgstr " (anstataŭigo)" + +msgid " (vreplace)" +msgstr " (v-anstataŭigo)" + +msgid " Hebrew" +msgstr " hebrea" + +msgid " Arabic" +msgstr " araba" + +msgid " (lang)" +msgstr " (lingvo)" + +msgid " (paste)" +msgstr " (algluo)" + +msgid " VISUAL" +msgstr " VIDUMA" + +msgid " VISUAL LINE" +msgstr " VIDUMA LINIO" + +msgid " VISUAL BLOCK" +msgstr " VIDUMA BLOKO" + +msgid " SELECT" +msgstr " APARTIGO" + +msgid " SELECT LINE" +msgstr " APARTIGITA LINIO" + +msgid " SELECT BLOCK" +msgstr " APARTIGITA BLOKO" + +msgid "recording" +msgstr "registrado" + +#, c-format +msgid "E383: Invalid search string: %s" +msgstr "E383: Nevalida serĉenda ĉeno: %s" + +#, c-format +msgid "E384: search hit TOP without match for: %s" +msgstr "E384: serĉo atingis SUPRON sen trovi: %s" + +#, c-format +msgid "E385: search hit BOTTOM without match for: %s" +msgstr "E385: serĉo atingis SUBON sen trovi: %s" + +msgid "E386: Expected '?' or '/' after ';'" +msgstr "E386: Atendis '?' aŭ '/' malantaŭ ';'" + +msgid " (includes previously listed match)" +msgstr " (enhavas antaŭe listigitajn kongruojn)" + +#. cursor at status line +msgid "--- Included files " +msgstr "--- Inkluzivitaj dosieroj " + +msgid "not found " +msgstr "netrovita " + +msgid "in path ---\n" +msgstr "en serĉvojo ---\n" + +msgid " (Already listed)" +msgstr " (Jam listigita)" + +msgid " NOT FOUND" +msgstr " NETROVITA" + +#, c-format +msgid "Scanning included file: %s" +msgstr "Skanado de inkluzivitaj dosieroj: %s" + +#, c-format +msgid "Searching included file %s" +msgstr "Serĉado de inkluzivitaj dosieroj %s" + +msgid "E387: Match is on current line" +msgstr "E387: Kongruo estas ĉe aktuala linio" + +msgid "All included files were found" +msgstr "Ĉiuj inkluzivitaj dosieroj estis trovitaj" + +msgid "No included files" +msgstr "Neniu inkluzivita dosiero" + +msgid "E388: Couldn't find definition" +msgstr "E388: Ne eblis trovi difinon" + +msgid "E389: Couldn't find pattern" +msgstr "E389: Ne eblis trovi ŝablonon" + +msgid "Substitute " +msgstr "Anstataŭigi " + +#, c-format +msgid "" +"\n" +"# Last %sSearch Pattern:\n" +"~" +msgstr "" +"\n" +"# Lasta serĉa ŝablono %s:\n" +"~" + +msgid "E759: Format error in spell file" +msgstr "E759: Eraro de formato en literuma dosiero" + +msgid "E758: Truncated spell file" +msgstr "E758: Trunkita literuma dosiero" + +#, c-format +msgid "Trailing text in %s line %d: %s" +msgstr "Vosta teksto en %s linio %d: %s" + +#, c-format +msgid "Affix name too long in %s line %d: %s" +msgstr "Nomo de afikso tro longa en %s linio %d: %s" + +msgid "E761: Format error in affix file FOL, LOW or UPP" +msgstr "E761: Eraro de formato en afiksa dosiero FOL, LOW aŭ UPP" + +msgid "E762: Character in FOL, LOW or UPP is out of range" +msgstr "E762: Signo en FOL, LOW aŭ UPP estas ekster limoj" + +msgid "Compressing word tree..." +msgstr "Densigas arbon de vortoj" + +msgid "E756: Spell checking is not enabled" +msgstr "E756: Literumilo ne estas ŝaltita" + +#, c-format +msgid "Warning: Cannot find word list \"%s.%s.spl\" or \"%s.ascii.spl\"" +msgstr "Averto: Ne eblas trovi vortliston \"%s.%s.spl\" aŭ \"%s.ascii.spl\"" + +#, c-format +msgid "Reading spell file \"%s\"" +msgstr "Legado de literuma dosiero \"%s\"" + +msgid "E757: This does not look like a spell file" +msgstr "E757: Tio ne ŝajnas esti literuma dosiero" + +msgid "E771: Old spell file, needs to be updated" +msgstr "E771: Malnova literuma dosiero, ĝisdatigo bezonata" + +msgid "E772: Spell file is for newer version of Vim" +msgstr "E772: Literuma dosiero estas por pli nova versio de Vim" + +msgid "E770: Unsupported section in spell file" +msgstr "E770: Nesubtenita sekcio en literuma dosiero" + +#, c-format +msgid "Warning: region %s not supported" +msgstr "Averto: regiono %s ne subtenita" + +#, c-format +msgid "Reading affix file %s ..." +msgstr "Legado de afiksa dosiero %s..." + +#, c-format +msgid "Conversion failure for word in %s line %d: %s" +msgstr "Malsukceso dum konverto de vorto en %s linio %d: %s" + +#, c-format +msgid "Conversion in %s not supported: from %s to %s" +msgstr "Konverto en %s nesubtenita: de %s al %s" + +#, c-format +msgid "Conversion in %s not supported" +msgstr "Konverto en %s nesubtenita" + +#, c-format +msgid "Invalid value for FLAG in %s line %d: %s" +msgstr "Nevalida valoro de FLAG en %s linio %d: %s" + +#, c-format +msgid "FLAG after using flags in %s line %d: %s" +msgstr "FLAG maltantaŭ flagoj en %s linio %d: %s" + +#, c-format +msgid "" +"Defining COMPOUNDFORBIDFLAG after PFX item may give wrong results in %s line " +"%d" +msgstr "" +"Difino de COMPOUNDFORBIDFLAG malantaŭ ano PFX povas doni neĝustajn rezultojn " +"en %s linio %d" + +#, c-format +msgid "" +"Defining COMPOUNDPERMITFLAG after PFX item may give wrong results in %s line " +"%d" +msgstr "" +"Difino de COMPOUNDPERMITFLAG malantaŭ ano PFX povas doni neĝustajn rezultojn " +"en %s linio %d" + +#, c-format +msgid "Wrong COMPOUNDWORDMAX value in %s line %d: %s" +msgstr "Nevalida valoro de COMPOUNDWORDMAX en %s linio %d: %s" + +#, c-format +msgid "Wrong COMPOUNDMIN value in %s line %d: %s" +msgstr "Nevalida valoro de COMPOUNDMIN en %s linio %d: %s" + +#, c-format +msgid "Wrong COMPOUNDSYLMAX value in %s line %d: %s" +msgstr "Nevalida valoro de COMPOUNDSYLMAX en %s linio %d: %s" + +#, c-format +msgid "Wrong CHECKCOMPOUNDPATTERN value in %s line %d: %s" +msgstr "Nevalida valoro de CHECKCOMPOUNDPATTERN en %s linio %d: %s" + +#, c-format +msgid "Different combining flag in continued affix block in %s line %d: %s" +msgstr "Malsama flago de kombino en daŭra bloko de afikso en %s linio %d: %s" + +#, c-format +msgid "Duplicate affix in %s line %d: %s" +msgstr "Ripetita afikso en %s linio %d: %s" + +#, c-format +msgid "" +"Affix also used for BAD/RARE/KEEPCASE/NEEDAFFIX/NEEDCOMPOUND/NOSUGGEST in %s " +"line %d: %s" +msgstr "" +"Afikso ankaŭ uzata por BAD/RARE/KEEPCASE/NEEDAFFIX/NEEDCOMPOUND/NOSUGGEST en " +"%s linio %d: %s" + +#, c-format +msgid "Expected Y or N in %s line %d: %s" +msgstr "Y aŭ N atendita en %s linio %d: %s" + +#, c-format +msgid "Broken condition in %s line %d: %s" +msgstr "Nevalida kondiĉo en %s linio %d: %s" + +#, c-format +msgid "Expected REP(SAL) count in %s line %d" +msgstr "Neatendita nombro REP(SAL) en %s linio %d" + +#, c-format +msgid "Expected MAP count in %s line %d" +msgstr "Neatendita nombro de MAPen %s linio %d" + +#, c-format +msgid "Duplicate character in MAP in %s line %d" +msgstr "Ripetita signo en MAP en %s linio %d" + +#, c-format +msgid "Unrecognized or duplicate item in %s line %d: %s" +msgstr "Neagnoskita aŭ ripetita ano en %s linio %d: %s" + +#, c-format +msgid "Missing FOL/LOW/UPP line in %s" +msgstr "Mankas linio FOL/LOW/UPP en %s" + +msgid "COMPOUNDSYLMAX used without SYLLABLE" +msgstr "COMPOUNDSYLMAX uzita sen SYLLABLE" + +msgid "Too many postponed prefixes" +msgstr "Tro da prokrastitaj prefiksoj" + +msgid "Too many compound flags" +msgstr "Tro da kunmetitaj flagoj" + +msgid "Too many postponed prefixes and/or compound flags" +msgstr "Tro da prokrastitaj prefiksoj kaj/aŭ kunmetitaj flagoj" + +#, c-format +msgid "Missing SOFO%s line in %s" +msgstr "Mankas SOFO%s-aj linioj en %s" + +#, c-format +msgid "Both SAL and SOFO lines in %s" +msgstr "Ambaŭ SAL kaj SOFO linioj en %s" + +#, c-format +msgid "Flag is not a number in %s line %d: %s" +msgstr "Flago ne estas nombro en %s linio %d: %s" + +#, c-format +msgid "Illegal flag in %s line %d: %s" +msgstr "Nevalida flago en %s linio %d: %s" + +#, c-format +msgid "%s value differs from what is used in another .aff file" +msgstr "Valoro de %s malsamas ol tiu en alia dosiero .aff" + +#, c-format +msgid "Reading dictionary file %s ..." +msgstr "Legado de vortardosiero %s..." + +#, c-format +msgid "E760: No word count in %s" +msgstr "E760: Ne estas nombro de vortoj en %s" + +#, c-format +msgid "line %6d, word %6d - %s" +msgstr "linio %6d, vorto %6d - %s" + +#, c-format +msgid "Duplicate word in %s line %d: %s" +msgstr "Ripetita vorto en %s linio %d: %s" + +#, c-format +msgid "First duplicate word in %s line %d: %s" +msgstr "Unua ripetita vorto en %s linio %d: %s" + +#, c-format +msgid "%d duplicate word(s) in %s" +msgstr "%d ripetita(j) vorto(j) en %s" + +#, c-format +msgid "Ignored %d word(s) with non-ASCII characters in %s" +msgstr "%d ignorita(j) vorto(j) kun neaskiaj signoj en %s" + +#, c-format +msgid "Reading word file %s ..." +msgstr "Legado de dosiero de vortoj %s ..." + +#, c-format +msgid "Duplicate /encoding= line ignored in %s line %d: %s" +msgstr "Ripetita linio /encoding= ignorita en %s linio %d: %s" + +#, c-format +msgid "/encoding= line after word ignored in %s line %d: %s" +msgstr "Linio /encoding= malantaŭ vorto ignorita en %s linio %d: %s" + +#, c-format +msgid "Duplicate /regions= line ignored in %s line %d: %s" +msgstr "Ripetita linio /regions= ignorita en %s linio %d: %s" + +#, c-format +msgid "Too many regions in %s line %d: %s" +msgstr "Tro da regionoj en %s linio %d: %s" + +#, c-format +msgid "/ line ignored in %s line %d: %s" +msgstr "Linio / ignorita en %s linio %d: %s" + +#, c-format +msgid "Invalid region nr in %s line %d: %s" +msgstr "Nevalida regiono nr en %s linio %d: %s" + +#, c-format +msgid "Unrecognized flags in %s line %d: %s" +msgstr "Nekonata flago en %s linio %d: %s" + +#, c-format +msgid "Ignored %d words with non-ASCII characters" +msgstr "Ignoris %d vorto(j)n kun neaskiaj signoj" + +#, c-format +msgid "Compressed %d of %d nodes; %d (%d%%) remaining" +msgstr "Densigis %d de %d nodoj; %d (%d%%) restantaj" + +msgid "Reading back spell file..." +msgstr "Relegas la dosieron de literumo..." + +#. +#. * Go through the trie of good words, soundfold each word and add it to +#. * the soundfold trie. +#. +msgid "Performing soundfolding..." +msgstr "Fonetika analizado..." + +#, c-format +msgid "Number of words after soundfolding: %ld" +msgstr "Nombro de vortoj post fonetika analizado: %ld" + +#, c-format +msgid "Total number of words: %d" +msgstr "Totala nombro de vortoj: %d" + +#, c-format +msgid "Writing suggestion file %s ..." +msgstr "Skribado de dosiero de sugesto %s ..." + +#, c-format +msgid "Estimated runtime memory use: %d bytes" +msgstr "Evaluo de memoro uzata: %d bajtoj" + +msgid "E751: Output file name must not have region name" +msgstr "E751: Nomo de eliga dosiero ne devas havi nomon de regiono" + +msgid "E754: Only up to 8 regions supported" +msgstr "E754: Nur 8 regionoj subtenitaj" + +#, c-format +msgid "E755: Invalid region in %s" +msgstr "E755: Nevalida regiono en %s" + +msgid "Warning: both compounding and NOBREAK specified" +msgstr "Averto: ambaŭ NOBREAK kaj NOBREAK specifitaj" + +#, c-format +msgid "Writing spell file %s ..." +msgstr "Skribado de literuma dosiero %s..." + +msgid "Done!" +msgstr "Farita!" + +#, c-format +msgid "E765: 'spellfile' does not have %ld entries" +msgstr "E765: 'spellfile' ne havas %ld rikordojn" + +#, c-format +msgid "Word removed from %s" +msgstr "Vorto fortirita el %s" + +#, c-format +msgid "Word added to %s" +msgstr "Vorto aldonita al %s" + +msgid "E763: Word characters differ between spell files" +msgstr "E763: Signoj de vorto malsamas tra literumaj dosieroj" + +msgid "Sorry, no suggestions" +msgstr "Bedaŭrinde ne estas sugestoj" + +#, c-format +msgid "Sorry, only %ld suggestions" +msgstr "Bedaŭrinde estas nur %ld sugestoj" + +#. for when 'cmdheight' > 1 +#. avoid more prompt +#, c-format +msgid "Change \"%.*s\" to:" +msgstr "Anstataŭigi \"%.*s\" per:" + +#, c-format +msgid " < \"%.*s\"" +msgstr " < \"%.*s\"" + +msgid "E752: No previous spell replacement" +msgstr "E752: Neniu antaŭa literuma anstataŭigo" + +#, c-format +msgid "E753: Not found: %s" +msgstr "E753: Netrovita: %s" + +#, c-format +msgid "E778: This does not look like a .sug file: %s" +msgstr "E778: Tio ne ŝajnas esti dosiero .sug: %s" + +#, c-format +msgid "E779: Old .sug file, needs to be updated: %s" +msgstr "E779: Malnova dosiero .sug, bezonas ĝisdatigon: %s" + +#, c-format +msgid "E780: .sug file is for newer version of Vim: %s" +msgstr "E780: Dosiero .sug estas por pli nova versio de Vim: %s" + +#, c-format +msgid "E781: .sug file doesn't match .spl file: %s" +msgstr "E781: Dosiero .sug ne kongruas kun dosiero .spl: %s" + +#, c-format +msgid "E782: error while reading .sug file: %s" +msgstr "E782: eraro dum legado de dosiero .sug: %s" + +#. This should have been checked when generating the .spl +#. * file. +msgid "E783: duplicate char in MAP entry" +msgstr "E783: ripetita signo en rikordo MAP" + +#, c-format +msgid "E390: Illegal argument: %s" +msgstr "E390: Nevalida argumento: %s" + +#, c-format +msgid "E391: No such syntax cluster: %s" +msgstr "E391: Nenia sintaksa fasko: %s" + +msgid "No Syntax items defined for this buffer" +msgstr "Neniu sintaksa elemento difinita por tiu bufro" + +msgid "syncing on C-style comments" +msgstr "sinkronigo per C-stilaj komentoj" + +msgid "no syncing" +msgstr "neniu sinkronigo" + +msgid "syncing starts " +msgstr "sinkronigo ekas " + +msgid " lines before top line" +msgstr " linioj antaŭ supra linio" + +msgid "" +"\n" +"--- Syntax sync items ---" +msgstr "" +"\n" +"--- Eroj de sintaksa sinkronigo ---" + +msgid "" +"\n" +"syncing on items" +msgstr "" +"\n" +"sinkronigo per eroj" + +msgid "" +"\n" +"--- Syntax items ---" +msgstr "" +"\n" +"--- Sintakseroj ---" + +#, c-format +msgid "E392: No such syntax cluster: %s" +msgstr "E392: Nenia sintaksa fasko: %s" + +msgid "minimal " +msgstr "minimuma " + +msgid "maximal " +msgstr "maksimuma " + +msgid "; match " +msgstr "; kongruo " + +msgid " line breaks" +msgstr " liniavancoj" + +msgid "E395: contains argument not accepted here" +msgstr "E395: La argumento \"contains\" ne akcepteblas tie" + +msgid "E396: containedin argument not accepted here" +msgstr "E396: La argumento \"containedin\" ne akcepteblas tie" + +msgid "E393: group[t]here not accepted here" +msgstr "E393: La argumento \"group[t]here\" ne akcepteblas tie" + +#, c-format +msgid "E394: Didn't find region item for %s" +msgstr "E394: Ne trovis regionan elementon por %s" + +msgid "E397: Filename required" +msgstr "E397: Dosiernomo bezonata" + +#, c-format +msgid "E789: Missing ']': %s" +msgstr "E789: Mankas ']': %s" + +#, c-format +msgid "E398: Missing '=': %s" +msgstr "E398: Mankas '=': %s" + +#, c-format +msgid "E399: Not enough arguments: syntax region %s" +msgstr "E399: Ne sufiĉaj argumentoj: sintaksa regiono %s" + +msgid "E400: No cluster specified" +msgstr "E400: Neniu fasko specifita" + +#, c-format +msgid "E401: Pattern delimiter not found: %s" +msgstr "E401: Disigilo de ŝablono netrovita: %s" + +#, c-format +msgid "E402: Garbage after pattern: %s" +msgstr "E402: Forĵetindaĵo malantaŭ ŝablono: %s" + +msgid "E403: syntax sync: line continuations pattern specified twice" +msgstr "E403: sintaksa sinkronigo: ŝablono de linia daŭrigo specifita dufoje" + +#, c-format +msgid "E404: Illegal arguments: %s" +msgstr "E404: Nevalidaj argumentoj: %s" + +#, c-format +msgid "E405: Missing equal sign: %s" +msgstr "E405: Mankas egalsigno: %s" + +#, c-format +msgid "E406: Empty argument: %s" +msgstr "E406: Malplena argumento: %s" + +#, c-format +msgid "E407: %s not allowed here" +msgstr "E407: %s ne estas permesata tie" + +#, c-format +msgid "E408: %s must be first in contains list" +msgstr "E408: %s devas esti la unua ano de la listo \"contains\"" + +#, c-format +msgid "E409: Unknown group name: %s" +msgstr "E409: Nekonata nomo de grupo: %s" + +#, c-format +msgid "E410: Invalid :syntax subcommand: %s" +msgstr "E410: Nevalida \":syntax\" subkomando: %s" + +msgid "E679: recursive loop loading syncolor.vim" +msgstr "E679: rekursia buklo dum ŝargo de syncolor.vim" + +#, c-format +msgid "E411: highlight group not found: %s" +msgstr "E411: emfaza grupo netrovita: %s" + +#, c-format +msgid "E412: Not enough arguments: \":highlight link %s\"" +msgstr "E412: Ne sufiĉaj argumentoj: \":highlight link %s\"" + +#, c-format +msgid "E413: Too many arguments: \":highlight link %s\"" +msgstr "E413: Tro argumentoj: \":highlight link %s\"" + +msgid "E414: group has settings, highlight link ignored" +msgstr "E414: grupo havas agordojn, ligilo de emfazo ignorita" + +#, c-format +msgid "E415: unexpected equal sign: %s" +msgstr "E415: neatendita egalsigno: %s" + +#, c-format +msgid "E416: missing equal sign: %s" +msgstr "E416: mankas egalsigno: %s" + +#, c-format +msgid "E417: missing argument: %s" +msgstr "E417: mankas argumento: %s" + +#, c-format +msgid "E418: Illegal value: %s" +msgstr "E418: Nevalida valoro: %s" + +msgid "E419: FG color unknown" +msgstr "E419: Nekonata malfona koloro" + +msgid "E420: BG color unknown" +msgstr "E420: Nekonata fona koloro" + +#, c-format +msgid "E421: Color name or number not recognized: %s" +msgstr "E421: Kolora nomo aŭ nombro nerekonita: %s" + +#, c-format +msgid "E422: terminal code too long: %s" +msgstr "E422: kodo de terminalo estas tro longa: %s" + +#, c-format +msgid "E423: Illegal argument: %s" +msgstr "E423: Nevalida argumento: %s" + +msgid "E424: Too many different highlighting attributes in use" +msgstr "E424: Tro da malsamaj atributoj de emfazo uzataj" + +msgid "E669: Unprintable character in group name" +msgstr "E669: Nepresebla signo en nomo de grupo" + +msgid "W18: Invalid character in group name" +msgstr "W18: Nevalida signo en nomo de grupo" + +msgid "E555: at bottom of tag stack" +msgstr "E555: ĉe subo de stako de etikedoj" + +msgid "E556: at top of tag stack" +msgstr "E556: ĉe supro de stako de etikedoj" + +msgid "E425: Cannot go before first matching tag" +msgstr "E425: Ne eblas iri antaŭ la unuan kongruan etikedon" + +#, c-format +msgid "E426: tag not found: %s" +msgstr "E426: etikedo netrovita: %s" + +# DP: "pri" estas "priority" +msgid " # pri kind tag" +msgstr "nro pri tipo etikedo" + +msgid "file\n" +msgstr "dosiero\n" + +msgid "E427: There is only one matching tag" +msgstr "E427: Estas nur unu kongrua etikedo" + +msgid "E428: Cannot go beyond last matching tag" +msgstr "E428: Ne eblas iri preter lastan kongruan etikedon" + +#, c-format +msgid "File \"%s\" does not exist" +msgstr "La dosiero \"%s\" ne ekzistas" + +#. Give an indication of the number of matching tags +#, c-format +msgid "tag %d of %d%s" +msgstr "etikedo %d de %d%s" + +msgid " or more" +msgstr " aŭ pli" + +msgid " Using tag with different case!" +msgstr " Uzo de etikedo kun malsama uskleco!" + +#, c-format +msgid "E429: File \"%s\" does not exist" +msgstr "E429: Dosiero \"%s\" ne ekzistas" + +#. Highlight title +msgid "" +"\n" +" # TO tag FROM line in file/text" +msgstr "" +"\n" +"nro AL etikedo DE linio en dosiero/teksto" + +#, c-format +msgid "Searching tags file %s" +msgstr "Serĉado de dosiero de etikedoj %s" + +#, c-format +msgid "E430: Tag file path truncated for %s\n" +msgstr "E430: Vojo de etikeda dosiero trunkita por %s\n" + +#, c-format +msgid "E431: Format error in tags file \"%s\"" +msgstr "E431: Eraro de formato en etikeda dosiero \"%s\"" + +#, c-format +msgid "Before byte %ld" +msgstr "Antaŭ bajto %ld" + +#, c-format +msgid "E432: Tags file not sorted: %s" +msgstr "E432: Etikeda dosiero ne estas ordigita: %s" + +#. never opened any tags file +msgid "E433: No tags file" +msgstr "E433: Neniu etikeda dosiero" + +msgid "E434: Can't find tag pattern" +msgstr "E434: Ne eblas trovi ŝablonon de etikedo" + +msgid "E435: Couldn't find tag, just guessing!" +msgstr "E435: Ne eblis trovi etikedon, nur divenas!" + +msgid "' not known. Available builtin terminals are:" +msgstr "' nekonata. Haveblaj terminaloj estas:" + +msgid "defaulting to '" +msgstr "defaŭlto al '" + +msgid "E557: Cannot open termcap file" +msgstr "E557: Ne eblas malfermi la dosieron termcap" + +msgid "E558: Terminal entry not found in terminfo" +msgstr "E558: Ne trovis rikordon de terminalo terminfo" + +msgid "E559: Terminal entry not found in termcap" +msgstr "E559: Ne trovis rikordon de terminalo en termcap" + +#, c-format +msgid "E436: No \"%s\" entry in termcap" +msgstr "E436: Neniu rikordo \"%s\" en termcap" + +msgid "E437: terminal capability \"cm\" required" +msgstr "E437: kapablo de terminalo \"cm\" bezonata" + +#. Highlight title +msgid "" +"\n" +"--- Terminal keys ---" +msgstr "" +"\n" +"--- Klavoj de terminalo ---" + +msgid "new shell started\n" +msgstr "nova ŝelo lanĉita\n" + +msgid "Vim: Error reading input, exiting...\n" +msgstr "Vim: Eraro dum legado de eniro, elironta...\n" + +#. must display the prompt +msgid "No undo possible; continue anyway" +msgstr "Malfaro neebla; daŭrigi tamene" + +msgid "Already at oldest change" +msgstr "Jam al la plej malnova ŝanĝo" + +msgid "Already at newest change" +msgstr "Jam al la plej nova ŝanĝo" + +#, c-format +msgid "Undo number %ld not found" +msgstr "Malfaro numero %ld netrovita" + +msgid "E438: u_undo: line numbers wrong" +msgstr "E438: u_undo: nevalidaj numeroj de linioj" + +msgid "more line" +msgstr "plia linio" + +msgid "more lines" +msgstr "pliaj linioj" + +msgid "line less" +msgstr "malpli linio" + +msgid "fewer lines" +msgstr "malpli linioj" + +msgid "change" +msgstr "ŝanĝo" + +msgid "changes" +msgstr "ŝanĝoj" + +#, c-format +msgid "%ld %s; %s #%ld %s" +msgstr "%ld %s; %s #%ld %s" + +msgid "before" +msgstr "antaŭ" + +msgid "after" +msgstr "malantaŭ" + +msgid "Nothing to undo" +msgstr "Nenio por malfari" + +msgid "number changes time" +msgstr "numero ŝanĝoj tempo" + +#, c-format +msgid "%ld seconds ago" +msgstr "antaŭ %ld sekundoj" + +msgid "E790: undojoin is not allowed after undo" +msgstr "E790: undojoin estas nepermesita malantaŭ malfaro" + +msgid "E439: undo list corrupt" +msgstr "E439: listo de malfaro estas difekta" + +msgid "E440: undo line missing" +msgstr "E440: linio de malfaro mankas" + +#. Only MS VC 4.1 and earlier can do Win32s +msgid "" +"\n" +"MS-Windows 16/32-bit GUI version" +msgstr "" +"\n" +"Grafika versio MS-Vindozo 16/32-bitoj" + +msgid "" +"\n" +"MS-Windows 64-bit GUI version" +msgstr "" +"\n" +"Grafika versio MS-Vindozo 64-bitoj" + +msgid "" +"\n" +"MS-Windows 32-bit GUI version" +msgstr "" +"\n" +"Grafika versio MS-Vindozo 32-bitoj" + +msgid " in Win32s mode" +msgstr " en reĝimo Win32s" + +msgid " with OLE support" +msgstr " kun subteno de OLE" + +msgid "" +"\n" +"MS-Windows 64-bit console version" +msgstr "" +"\n" +"Versio konzola MS-Vindozo 64-bitoj" + +msgid "" +"\n" +"MS-Windows 32-bit console version" +msgstr "" +"\n" +"Versio konzola MS-Vindozo 32-bitoj" + +msgid "" +"\n" +"MS-Windows 16-bit version" +msgstr "" +"\n" +"Versio MS-Vindozo 16-bitoj" + +msgid "" +"\n" +"32-bit MS-DOS version" +msgstr "" +"\n" +"Versio MS-DOS 32-bitoj" + +msgid "" +"\n" +"16-bit MS-DOS version" +msgstr "" +"\n" +"Versio MS-DOS 16-bitoj" + +msgid "" +"\n" +"MacOS X (unix) version" +msgstr "" +"\n" +"Versio Mak OS X (unikso)" + +msgid "" +"\n" +"MacOS X version" +msgstr "" +"\n" +"Versio Mak OS X" + +msgid "" +"\n" +"MacOS version" +msgstr "" +"\n" +"Versio Mak OS" + +msgid "" +"\n" +"RISC OS version" +msgstr "" +"\n" +"Versio RISC operaciumo" + +msgid "" +"\n" +"Included patches: " +msgstr "" +"\n" +"Flikaĵoj inkluzivitaj: " + +msgid "Modified by " +msgstr "Modifita de " + +msgid "" +"\n" +"Compiled " +msgstr "" +"\n" +"Kompilita " + +msgid "by " +msgstr "de " + +msgid "" +"\n" +"Huge version " +msgstr "" +"\n" +"Grandega versio " + +msgid "" +"\n" +"Big version " +msgstr "" +"\n" +"Granda versio " + +msgid "" +"\n" +"Normal version " +msgstr "" +"\n" +"Normala versio " + +msgid "" +"\n" +"Small version " +msgstr "" +"\n" +"Malgranda versio " + +msgid "" +"\n" +"Tiny version " +msgstr "" +"\n" +"Malgrandega versio " + +msgid "without GUI." +msgstr "sen grafika interfaco." + +msgid "with GTK2-GNOME GUI." +msgstr "kun grafika interfaco GTK2-GNOME." + +msgid "with GTK-GNOME GUI." +msgstr "kun grafika interfaco GTK-GNOME." + +msgid "with GTK2 GUI." +msgstr "kun grafika interfaco GTK2." + +msgid "with GTK GUI." +msgstr "kun grafika interfaco GTK." + +msgid "with X11-Motif GUI." +msgstr "kun grafika interfaco X11-Motif." + +msgid "with X11-neXtaw GUI." +msgstr "kun grafika interfaco X11-neXtaw." + +msgid "with X11-Athena GUI." +msgstr "kun grafika interfaco X11-Athena." + +msgid "with Photon GUI." +msgstr "kun grafika interfaco Photon." + +msgid "with GUI." +msgstr "sen grafika interfaco." + +msgid "with Carbon GUI." +msgstr "kun grafika interfaco Carbon." + +msgid "with Cocoa GUI." +msgstr "kun grafika interfaco Cocoa." + +msgid "with (classic) GUI." +msgstr "kun (klasika) grafika interfaco." + +msgid " Features included (+) or not (-):\n" +msgstr " Ebloj inkluzivitaj (+) aŭ ne (-):\n" + +msgid " system vimrc file: \"" +msgstr " sistema dosiero vimrc: \"" + +msgid " user vimrc file: \"" +msgstr " dosiero vimrc de uzanto: \"" + +msgid " 2nd user vimrc file: \"" +msgstr " 2-a dosiero vimrc de uzanto: \"" + +msgid " 3rd user vimrc file: \"" +msgstr " 3-a dosiero vimrc de uzanto: \"" + +msgid " user exrc file: \"" +msgstr " dosiero exrc de uzanto: \"" + +msgid " 2nd user exrc file: \"" +msgstr " 2-a dosiero exrc de uzanto: \"" + +msgid " system gvimrc file: \"" +msgstr " sistema dosiero gvimrc: \"" + +msgid " user gvimrc file: \"" +msgstr " dosiero gvimrc de uzanto: \"" + +msgid "2nd user gvimrc file: \"" +msgstr " 2-a dosiero gvimrc de uzanto: \"" + +msgid "3rd user gvimrc file: \"" +msgstr " 3-a dosiero gvimrc de uzanto: \"" + +msgid " system menu file: \"" +msgstr " dosiero de sistema menuo: \"" + +msgid " fall-back for $VIM: \"" +msgstr " defaŭlto de $VIM: \"" + +msgid " f-b for $VIMRUNTIME: \"" +msgstr " defaŭlto de VIMRUNTIME: \"" + +msgid "Compilation: " +msgstr "Kompilado: " + +msgid "Compiler: " +msgstr "Kompililo: " + +msgid "Linking: " +msgstr "Ligado: " + +msgid " DEBUG BUILD" +msgstr " SENCIMIGA MUNTO" + +msgid "VIM - Vi IMproved" +msgstr "VIM - Vi plibonigita" + +msgid "version " +msgstr "versio " + +# DP: vidu http://www.thefreedictionary.com/et+al. +msgid "by Bram Moolenaar et al." +msgstr "de Bram Moolenaar kaj aliuloj" + +msgid "Vim is open source and freely distributable" +msgstr "Vim estas libera programo kaj disdoneblas libere" + +msgid "Help poor children in Uganda!" +msgstr "Helpu malriĉajn infanojn en Ugando!" + +# DP: atentu al la spacetoj: ĉiuj ĉenoj devas havi la saman longon +msgid "type :help iccf<Enter> for information " +msgstr "tajpu :help iccf<Enenklavo> por pliaj informoj " + +# DP: atentu al la spacetoj: ĉiuj ĉenoj devas havi la saman longon +msgid "type :q<Enter> to exit " +msgstr "tajpu :q<Enenklavo> por eliri " + +# DP: atentu al la spacetoj: ĉiuj ĉenoj devas havi la saman longon +msgid "type :help<Enter> or <F1> for on-line help" +msgstr "tajpu :help<Enenklavo> aŭ <F1> por aliri la helpon " + +# DP: atentu al la spacetoj: ĉiuj ĉenoj devas havi la saman longon +msgid "type :help version7<Enter> for version info" +msgstr "tajpu :help version7<Enenklavo> por informo de versio" + +msgid "Running in Vi compatible mode" +msgstr "Rulas en reĝimo kongrua kun Vi" + +# DP: atentu al la spacetoj: ĉiuj ĉenoj devas havi la saman longon +msgid "type :set nocp<Enter> for Vim defaults" +msgstr "tajpu :set nocp<Enenklavo> por Vim defaŭltoj " + +# DP: atentu al la spacetoj: ĉiuj ĉenoj devas havi la saman longon +msgid "type :help cp-default<Enter> for info on this" +msgstr "tajpu :help cp-default<Enenklavo> por pliaj informoj " + +# DP: atentu al la spacetoj: ĉiuj ĉenoj devas havi la saman longon +msgid "menu Help->Orphans for information " +msgstr "menuo Help->Orfinoj por pliaj informoj " + +msgid "Running modeless, typed text is inserted" +msgstr "Rulas senreĝime, tajpita teksto estas enmetita" + +# DP: atentu al la spacetoj: ĉiuj ĉenoj devas havi la saman longon +msgid "menu Edit->Global Settings->Toggle Insert Mode " +msgstr "menuo Redakti->Mallokaj Agordoj->Baskuli Enmetan Reĝimon" + +# DP: atentu al la spacetoj: ĉiuj ĉenoj devas havi la saman longon +msgid " for two modes " +msgstr " por du reĝimoj " + +# DP: tiu ĉeno pli longas (mi ne volas igi ĉiujn aliajn ĉenojn +# pli longajn) +msgid "menu Edit->Global Settings->Toggle Vi Compatible" +msgstr "menuo Redakti->Mallokaj Agordoj->Baskuli Reĝimon Kongruan kun Vi" + +# DP: atentu al la spacetoj: ĉiuj ĉenoj devas havi la saman longon +msgid " for Vim defaults " +msgstr " por defaŭltoj de Vim " + +msgid "Sponsor Vim development!" +msgstr "Subtenu la programadon de Vim!" + +msgid "Become a registered Vim user!" +msgstr "Iĝu registrita uzanto de Vim!" + +# DP: atentu al la spacetoj: ĉiuj ĉenoj devas havi la saman longon +msgid "type :help sponsor<Enter> for information " +msgstr "tajpu :help sponsor<Enenklavo> por pliaj informoj " + +# DP: atentu al la spacetoj: ĉiuj ĉenoj devas havi la saman longon +msgid "type :help register<Enter> for information " +msgstr "tajpu :help register<Enenklavo> por pliaj informoj " + +# DP: atentu al la spacetoj: ĉiuj ĉenoj devas havi la saman longon +msgid "menu Help->Sponsor/Register for information " +msgstr "menuo Helpo->Subteni/Registri por pliaj informoj " + +msgid "WARNING: Windows 95/98/ME detected" +msgstr "AVERTO: Trovis Vindozon 95/98/ME" + +# DP: atentu al la spacetoj: ĉiuj ĉenoj devas havi la saman longon +msgid "type :help windows95<Enter> for info on this" +msgstr "tajpu :help windows95<Enenklavo> por pliaj informoj " + +msgid "Already only one window" +msgstr "Jam nur unu fenestro" + +msgid "E441: There is no preview window" +msgstr "E441: Ne estas antaŭvida fenestro" + +msgid "E442: Can't split topleft and botright at the same time" +msgstr "E442: Ne eblas dividi supralivan kaj subdekstran samtempe" + +msgid "E443: Cannot rotate when another window is split" +msgstr "E443: Ne eblas rotacii kiam alia fenestro estas dividita" + +msgid "E444: Cannot close last window" +msgstr "E444: Ne eblas fermi la lastan fenestron" + +msgid "E445: Other window contains changes" +msgstr "E445: La alia fenestro enhavas ŝanĝojn" + +msgid "E446: No file name under cursor" +msgstr "E446: Neniu dosiernomo sub la kursoro" + +#, c-format +msgid "E447: Can't find file \"%s\" in path" +msgstr "E447: Ne eblas trovi dosieron \"%s\" en serĉvojo" + +#, c-format +msgid "E370: Could not load library %s" +msgstr "E370: Ne eblis ŝargi bibliotekon %s" + +msgid "Sorry, this command is disabled: the Perl library could not be loaded." +msgstr "" +"Bedaŭrinde tiu komando estas malŝaltita: la biblioteko de Perl ne ŝargeblis." + +msgid "E299: Perl evaluation forbidden in sandbox without the Safe module" +msgstr "" +"E299: Plenumo de Perl esprimoj malpermesata en sabloludejo sen la modulo Safe" + +msgid "Edit with &multiple Vims" +msgstr "Redakti per &pluraj Vim-oj" + +msgid "Edit with single &Vim" +msgstr "Redakti per unuopa &Vim" + +msgid "Diff with Vim" +msgstr "Kompari per Vim" + +msgid "Edit with &Vim" +msgstr "Redakti per &Vim" + +#. Now concatenate +msgid "Edit with existing Vim - " +msgstr "Redakti per ekzistanta Vim - " + +msgid "Edits the selected file(s) with Vim" +msgstr "Redakti la apartigita(j)n dosiero(j)n per Vim" + +msgid "Error creating process: Check if gvim is in your path!" +msgstr "Eraro dum kreo de procezo: Kontrolu ĉu gvim estas en via serĉvojo!" + +msgid "gvimext.dll error" +msgstr "Eraro de gvimext.dll" + +msgid "Path length too long!" +msgstr "Serĉvojo estas tro longa!" + +msgid "--No lines in buffer--" +msgstr "--Neniu linio en bufro--" + +#. +#. * The error messages that can be shared are included here. +#. * Excluded are errors that are only used once and debugging messages. +#. +msgid "E470: Command aborted" +msgstr "E470: komando ĉesigita" + +msgid "E471: Argument required" +msgstr "E471: Argumento bezonata" + +msgid "E10: \\ should be followed by /, ? or &" +msgstr "E10: \\ devus esti sekvita de /, ? aŭ &" + +msgid "E11: Invalid in command-line window; <CR> executes, CTRL-C quits" +msgstr "" +"E11: Nevalida en fenestro de komanda linio; <CR> plenumas, CTRL-C eliras" + +msgid "E12: Command not allowed from exrc/vimrc in current dir or tag search" +msgstr "" +"E12: Malpermesata komando el exrc/vimrc en aktuala dosierujo aŭ etikeda serĉo" + +msgid "E171: Missing :endif" +msgstr "E171: Mankas \":endif\"" + +msgid "E600: Missing :endtry" +msgstr "E600: Mankas \":endtry\"" + +msgid "E170: Missing :endwhile" +msgstr "E170: Mankas \":endwhile\"" + +msgid "E170: Missing :endfor" +msgstr "E170: Mankas \":endfor\"" + +msgid "E588: :endwhile without :while" +msgstr "E588: \":endwhile\" sen \":while\"" + +msgid "E588: :endfor without :for" +msgstr "E588: \":endfor\" sen \":for\"" + +msgid "E13: File exists (add ! to override)" +msgstr "E13: Dosiero ekzistas (aldonu ! por transpasi)" + +msgid "E472: Command failed" +msgstr "E472: La komando fiaskis" + +#, c-format +msgid "E234: Unknown fontset: %s" +msgstr "E234: Nekonata familio de tiparo: %s" + +#, c-format +msgid "E235: Unknown font: %s" +msgstr "E235: Nekonata tiparo: %s" + +#, c-format +msgid "E236: Font \"%s\" is not fixed-width" +msgstr "E236: La tiparo \"%s\" ne estas egallarĝa" + +msgid "E473: Internal error" +msgstr "E473: Interna eraro" + +msgid "Interrupted" +msgstr "Interrompita" + +msgid "E14: Invalid address" +msgstr "E14: Nevalida adreso" + +msgid "E474: Invalid argument" +msgstr "E474: Nevalida argumento" + +#, c-format +msgid "E475: Invalid argument: %s" +msgstr "E475: Nevalida argumento: %s" + +#, c-format +msgid "E15: Invalid expression: %s" +msgstr "E15: Nevalida esprimo: %s" + +msgid "E16: Invalid range" +msgstr "E16: Nevalida amplekso" + +msgid "E476: Invalid command" +msgstr "E476: Nevalida komando" + +#, c-format +msgid "E17: \"%s\" is a directory" +msgstr "E17: \"%s\" estas dosierujo" + +#, c-format +msgid "E364: Library call failed for \"%s()\"" +msgstr "E364: Alvoko al biblioteko fiaskis por \"%s()\"" + +#, c-format +msgid "E448: Could not load library function %s" +msgstr "E448: Ne eblis ŝargi bibliotekan funkcion %s" + +msgid "E19: Mark has invalid line number" +msgstr "E19: Marko havas nevalidan numeron de linio" + +msgid "E20: Mark not set" +msgstr "E20: Marko ne estas agordita" + +msgid "E21: Cannot make changes, 'modifiable' is off" +msgstr "E21: Ne eblas fari ŝanĝojn, 'modifiable' estas malŝaltita" + +msgid "E22: Scripts nested too deep" +msgstr "E22: Tro profunde ingitaj skriptoj" + +msgid "E23: No alternate file" +msgstr "E23: Neniu alterna dosiero" + +msgid "E24: No such abbreviation" +msgstr "E24: Ne estas tia mallongigo" + +msgid "E477: No ! allowed" +msgstr "E477: Neniu ! permesita" + +msgid "E25: GUI cannot be used: Not enabled at compile time" +msgstr "E25: Grafika interfaco ne uzeblas: Malŝaltita dum kompilado" + +msgid "E26: Hebrew cannot be used: Not enabled at compile time\n" +msgstr "E26: La hebrea ne uzeblas: Malŝaltita dum kompilado\n" + +msgid "E27: Farsi cannot be used: Not enabled at compile time\n" +msgstr "E27: La persa ne uzeblas: Malŝaltita dum kompilado\n" + +msgid "E800: Arabic cannot be used: Not enabled at compile time\n" +msgstr "E800: La araba ne uzeblas: Malŝaltita dum kompilado\n" + +#, c-format +msgid "E28: No such highlight group name: %s" +msgstr "E28: Neniu grupo de emfazo kiel: %s" + +msgid "E29: No inserted text yet" +msgstr "E29: Ankoraŭ neniu enmetita teksto" + +msgid "E30: No previous command line" +msgstr "E30: Neniu antaŭa komanda linio" + +msgid "E31: No such mapping" +msgstr "E31: Neniu tiel mapo" + +msgid "E479: No match" +msgstr "E479: Neniu kongruo" + +#, c-format +msgid "E480: No match: %s" +msgstr "E480: Neniu kongruo: %s" + +msgid "E32: No file name" +msgstr "E32: Neniu dosiernomo" + +msgid "E33: No previous substitute regular expression" +msgstr "E33: Neniu antaŭa regulesprimo de anstataŭigo" + +msgid "E34: No previous command" +msgstr "E34: Neniu antaŭa komando" + +msgid "E35: No previous regular expression" +msgstr "E35: Neniu antaŭa regulesprimo" + +msgid "E481: No range allowed" +msgstr "E481: Amplekso ne permesita" + +msgid "E36: Not enough room" +msgstr "E36: Ne sufiĉe da spaco" + +#, c-format +msgid "E247: no registered server named \"%s\"" +msgstr "E247: neniu registrita servilo nomita \"%s\"" + +#, c-format +msgid "E482: Can't create file %s" +msgstr "E482: Ne eblas krei dosieron %s" + +msgid "E483: Can't get temp file name" +msgstr "E483: Ne eblas akiri provizaran dosiernomon" + +#, c-format +msgid "E484: Can't open file %s" +msgstr "E484: Ne eblas malfermi dosieron %s" + +#, c-format +msgid "E485: Can't read file %s" +msgstr "E485: Ne eblas legi dosieron %s" + +msgid "E37: No write since last change (add ! to override)" +msgstr "E37: Neniu skribo de post lasta ŝanĝo (aldonu ! por transpasi)" + +msgid "E38: Null argument" +msgstr "E38: Nula argumento" + +msgid "E39: Number expected" +msgstr "E39: Nombro atendita" + +#, c-format +msgid "E40: Can't open errorfile %s" +msgstr "E40: Ne eblas malfermi eraran dosieron %s" + +msgid "E233: cannot open display" +msgstr "E233: ne eblas malfermi vidigon" + +msgid "E41: Out of memory!" +msgstr "E41: Ne plu restas memoro!" + +msgid "Pattern not found" +msgstr "Ŝablono ne trovita" + +#, c-format +msgid "E486: Pattern not found: %s" +msgstr "E486: Ŝablono ne trovita: %s" + +msgid "E487: Argument must be positive" +msgstr "E487: La argumento devas esti pozitiva" + +msgid "E459: Cannot go back to previous directory" +msgstr "E459: Ne eblas reiri al antaŭa dosierujo" + +msgid "E42: No Errors" +msgstr "E42: Neniu eraro" + +msgid "E776: No location list" +msgstr "E776: Neniu listo de loko" + +msgid "E43: Damaged match string" +msgstr "E43: Difekta kongruenda ĉeno" + +msgid "E44: Corrupted regexp program" +msgstr "E44: Difekta programo de regulesprimo" + +msgid "E45: 'readonly' option is set (add ! to override)" +msgstr "E45: La opcio 'readonly' estas ŝaltita '(aldonu ! por transpasi)" + +#, c-format +msgid "E46: Cannot change read-only variable \"%s\"" +msgstr "E46: Ne eblas ŝanĝi nurlegeblan variablon \"%s\"" + +#, c-format +msgid "E794: Cannot set variable in the sandbox: \"%s\"" +msgstr "E794: Ne eblas agordi variablon en la sabloludejo: \"%s\"" + +msgid "E47: Error while reading errorfile" +msgstr "E47: Eraro dum legado de erardosiero" + +msgid "E48: Not allowed in sandbox" +msgstr "E48: Ne permesita en sabloludejo" + +msgid "E523: Not allowed here" +msgstr "E523: Ne permesita tie" + +msgid "E359: Screen mode setting not supported" +msgstr "E359: Reĝimo de ekrano ne subtenita" + +msgid "E49: Invalid scroll size" +msgstr "E49: Nevalida grando de rulumo" + +msgid "E91: 'shell' option is empty" +msgstr "E91: La opcio 'shell' estas malplena" + +msgid "E255: Couldn't read in sign data!" +msgstr "E255: Ne eblis legi datumojn de simboloj!" + +msgid "E72: Close error on swap file" +msgstr "E72: Eraro dum malfermo de permutodosiero .swp" + +msgid "E73: tag stack empty" +msgstr "E73: malplena stako de etikedo" + +msgid "E74: Command too complex" +msgstr "E74: Komando tro kompleksa" + +msgid "E75: Name too long" +msgstr "E75: Nomo tro longa" + +msgid "E76: Too many [" +msgstr "E76: Tro da [" + +msgid "E77: Too many file names" +msgstr "E77: Tro da dosiernomoj" + +msgid "E488: Trailing characters" +msgstr "E488: Vostaj signoj" + +msgid "E78: Unknown mark" +msgstr "E78: Nekonata marko" + +msgid "E79: Cannot expand wildcards" +msgstr "E79: Ne eblas ekspansi ĵokerojn" + +msgid "E591: 'winheight' cannot be smaller than 'winminheight'" +msgstr "E591: 'winheight' ne rajtas esti malpli ol 'winminheight'" + +msgid "E592: 'winwidth' cannot be smaller than 'winminwidth'" +msgstr "E592: 'winwidth' ne rajtas esti malpli ol 'winminwidth'" + +msgid "E80: Error while writing" +msgstr "E80: Eraro dum skribado" + +msgid "Zero count" +msgstr "Nul kvantoro" + +msgid "E81: Using <SID> not in a script context" +msgstr "E81: Uzo de <SID> ekster kunteksto de skripto" + +msgid "E449: Invalid expression received" +msgstr "E449: Nevalida esprimo ricevita" + +msgid "E463: Region is guarded, cannot modify" +msgstr "E463: Regiono estas gardita, ne eblas ŝanĝi" + +msgid "E744: NetBeans does not allow changes in read-only files" +msgstr "E744: NetBeans ne permesas ŝanĝojn en nurlegeblaj dosieroj" + +#, c-format +msgid "E685: Internal error: %s" +msgstr "E685: Interna eraro: %s" + +msgid "E363: pattern uses more memory than 'maxmempattern'" +msgstr "E363: ŝablono uzas pli da memoro ol 'maxmempattern'" + +msgid "E749: empty buffer" +msgstr "E749: malplena bufro" + +msgid "E682: Invalid search pattern or delimiter" +msgstr "E682: Nevalida serĉa ŝablono aŭ disigilo" + +msgid "E139: File is loaded in another buffer" +msgstr "E139: Dosiero estas ŝargita en alia bufro" + +#, c-format +msgid "E764: Option '%s' is not set" +msgstr "E764: La opcio '%s' ne estas ŝaltita" + +msgid "search hit TOP, continuing at BOTTOM" +msgstr "serĉo atingis SUPRON, daŭrigonte al SUBO" + +msgid "search hit BOTTOM, continuing at TOP" +msgstr "serĉo atingis SUBON, daŭrigonte al SUPRO"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/po/fi.po Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,6264 @@ +# Finnish translation for Vim. +# Copyright (C) 2003-2006 Free Software Foundation, Inc. +# 2007-2008, Flammie Pirinen <flammie@iki.fi> +# +# Vimin k�ytt�j�t on n�rttej�. Sanasto on jargonia :-p +# +# L�hinn� latin-1:t�, sill� vim pit�� portata ilmeisen obskuureille +# alustoille. My�s: pluralit puuttuu, ohjelman k�ytt�liittym�n fontti +# tasav�linen, tila rajattu, jne. jne., luovia ratkaisuja edess�. +# +# Sanastosta: +# Fold on sellainen moderneissa ohjelmointi-IDE:iss� oleva toiminto, jolla +# lohko koodia esim. funktio piilotetaan n�kym�st�: suom. taitos alkup. +# analogian mukaan +# source v. lataa tiedoston, kuten bash-komento source (tai .) +# +msgid "" +msgstr "" +"Project-Id-Version: Vim 7\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2008-07-23 16:57+0300\n" +"PO-Revision-Date: 2008-07-23 17:15+0300\n" +"Last-Translator: Flammie Pirinen <flammie@iki.fi>\n" +"Language-Team: Finnish <laatu@lokalisointi.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ISO-8859-1\n" +"Content-Transfer-Encoding: 8bit\n" + +msgid "E82: Cannot allocate any buffer, exiting..." +msgstr "E82: Mit��n puskuria ei voitu varata, lopetetaan..." + +msgid "E83: Cannot allocate buffer, using other one..." +msgstr "E83: Puskuria ei voitu varata, k�ytet��n toista..." + +msgid "E515: No buffers were unloaded" +msgstr "E515: Puskureita ei vapautettu" + +msgid "E516: No buffers were deleted" +msgstr "E516: Puskureita ei poistettu" + +msgid "E517: No buffers were wiped out" +msgstr "E517: Puskureita ei pyyhitty" + +msgid "1 buffer unloaded" +msgstr "1 puskuri vapautettiin" + +#, c-format +msgid "%d buffers unloaded" +msgstr "%d puskuria vapautettiin" + +msgid "1 buffer deleted" +msgstr "1 puskuri poistettu" + +#, c-format +msgid "%d buffers deleted" +msgstr "%d puskuria poistettu" + +msgid "1 buffer wiped out" +msgstr "1 puskuri pyyhitty" + +#, c-format +msgid "%d buffers wiped out" +msgstr "%d puskuria pyyhitty" + +msgid "E84: No modified buffer found" +msgstr "E84: Ei muokattuja puskureita" + +#. back where we started, didn't find anything. +msgid "E85: There is no listed buffer" +msgstr "E85: Luetteloitua puskuria ei ole" + +#, c-format +msgid "E86: Buffer %ld does not exist" +msgstr "E86: Puskuria %ld ei ole" + +msgid "E87: Cannot go beyond last buffer" +msgstr "E87: Viimeisen puskurin ohi ei voi edet�" + +msgid "E88: Cannot go before first buffer" +msgstr "E88: Ensimm�isen puskurin ohi ei voi edet�" + +#, c-format +msgid "E89: No write since last change for buffer %ld (add ! to override)" +msgstr "" +"E89: Puskurin %ld muutoksia ei ole tallennettu (lis�� komentoon ! " +"ohittaaksesi)" + +msgid "E90: Cannot unload last buffer" +msgstr "E90: Ei voi vapauttaa viimeist� puskuria" + +msgid "W14: Warning: List of file names overflow" +msgstr "W14: Varoitus: Tiedostonimiluettelon ylivuoto" + +#, c-format +msgid "E92: Buffer %ld not found" +msgstr "E92: Puskuria %ld ei l�ydy" + +#, c-format +msgid "E93: More than one match for %s" +msgstr "E93: %s t�sm�� useampaan kuin yhteen puskuriin" + +#, c-format +msgid "E94: No matching buffer for %s" +msgstr "E94: %s ei t�sm�� yhteenk��n puskuriin" + +#, c-format +msgid "line %ld" +msgstr "rivi %ld" + +msgid "E95: Buffer with this name already exists" +msgstr "E95: Samanniminen puskuri on jo olemassa" + +msgid " [Modified]" +msgstr " [Muokattu]" + +msgid "[Not edited]" +msgstr "[Muokkaamaton]" + +msgid "[New file]" +msgstr "[Uusi tiedosto]" + +msgid "[Read errors]" +msgstr "[Lukuvirheit�]" + +msgid "[readonly]" +msgstr "[kirjoitussuojattu]" + +#, c-format +msgid "1 line --%d%%--" +msgstr "1 rivi --%d %%--" + +#, c-format +msgid "%ld lines --%d%%--" +msgstr "%ld rivi� --%d %%--" + +#, c-format +msgid "line %ld of %ld --%d%%-- col " +msgstr "rivi %ld/%ld --%d %%-- sarake " + +msgid "[No Name]" +msgstr "[Nimet�n]" + +#. must be a help buffer +msgid "help" +msgstr "ohje" + +msgid "[Help]" +msgstr "[Ohje]" + +msgid "[Preview]" +msgstr "[Esikatselu]" + +# sijainti tiedostossa -indikaattoreja: +# 4 merkki� sais riitt�� +msgid "All" +msgstr "Kaik" + +msgid "Bot" +msgstr "Loppu" + +msgid "Top" +msgstr "Alku" + +#, c-format +msgid "" +"\n" +"# Buffer list:\n" +msgstr "" +"\n" +"# Puskuriluettelo:\n" + +msgid "[Location List]" +msgstr "[Sijaintiluettelo]" + +msgid "[Quickfix List]" +msgstr "[Pikakorjausluettelo]" + +msgid "" +"\n" +"--- Signs ---" +msgstr "" +"\n" +"--- Merkit ---" + +#, c-format +msgid "Signs for %s:" +msgstr "Merkit kohteelle %s:" + +#, c-format +msgid " line=%ld id=%d name=%s" +msgstr " rivi=%ld id=%d nimi=%s" + +#, c-format +msgid "E96: Can not diff more than %ld buffers" +msgstr "E96: Ei voi diffata enemp�� kuin %ld puskuria" + +msgid "E97: Cannot create diffs" +msgstr "E97: Ei voi luoda diffej�" + +msgid "Patch file" +msgstr "Patch-tiedosto" + +msgid "E98: Cannot read diff output" +msgstr "E98: Ei voi lukea diffin tulostetta" + +msgid "E99: Current buffer is not in diff mode" +msgstr "E99: T�m� puskuri ei ole diff-tilassa" + +msgid "E793: No other buffer in diff mode is modifiable" +msgstr "E793: Yksik��n muu diff-tilan puskurit ei ole muokattavissa" + +msgid "E100: No other buffer in diff mode" +msgstr "E100: Yksik��n muu puskuri ei ole diff-tilassa" + +msgid "E101: More than two buffers in diff mode, don't know which one to use" +msgstr "E101: Monta puskuria on diff-tilassa, k�ytett�v�n valinta ei onnistu" + +#, c-format +msgid "E102: Can't find buffer \"%s\"" +msgstr "E102: Puskuria %s ei l�ydy" + +#, c-format +msgid "E103: Buffer \"%s\" is not in diff mode" +msgstr "E103: Puskuri %s ei ole diff-tilassa" + +msgid "E787: Buffer changed unexpectedly" +msgstr "E787: Puskuri vaihtui odottamatta" + +msgid "E104: Escape not allowed in digraph" +msgstr "E104: Escapea ei voi k�ytt�� digraafissa" + +msgid "E544: Keymap file not found" +msgstr "E544: N�pp�inkarttaa ei l�ydy" + +msgid "E105: Using :loadkeymap not in a sourced file" +msgstr "E105: K�ytet��n :loadkeymapia ladatun tiedoston ulkopuolella" + +msgid "E791: Empty keymap entry" +msgstr "E791: Tyhj� keymap-kentt�" + +msgid " Keyword completion (^N^P)" +msgstr " Avainsanat�ydennys (^N^P)" + +#. ctrl_x_mode == 0, ^P/^N compl. +msgid " ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)" +msgstr " ^X-tila (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)" + +msgid " Whole line completion (^L^N^P)" +msgstr " T�ysrivit�ydennys (^L^N^P)" + +msgid " File name completion (^F^N^P)" +msgstr " Tiedostonimit�ydennys (^F^N^P)" + +msgid " Tag completion (^]^N^P)" +msgstr " T�git�ydennys (^]^N^P)" + +msgid " Path pattern completion (^N^P)" +msgstr " Polkukuviot�ydennys (^N^P)" + +msgid " Definition completion (^D^N^P)" +msgstr " M��ritelm�t�ydennys (^D^N^P)" + +msgid " Dictionary completion (^K^N^P)" +msgstr " Sanakirjat�ydennys (^K^N^P)" + +msgid " Thesaurus completion (^T^N^P)" +msgstr " Thesaurus-t�ydennys (^T^N^P)" + +msgid " Command-line completion (^V^N^P)" +msgstr " Komentorivit�ydennys (^V^N^P)" + +msgid " User defined completion (^U^N^P)" +msgstr " K�ytt�j�n m��rittelem� t�ydennys (^U^N^P)" + +msgid " Omni completion (^O^N^P)" +msgstr " Omnit�ydennys (^O^N^P)" + +msgid " Spelling suggestion (s^N^P)" +msgstr " Oikaisulukuehdotus (s^N^P)" + +msgid " Keyword Local completion (^N^P)" +msgstr " Avainsanan paikallinen t�ydennys (^N^P)" + +msgid "Hit end of paragraph" +msgstr "Kappaleen loppu tuli vastaan" + +msgid "'dictionary' option is empty" +msgstr "dictionary-asetus on tyhj�" + +msgid "'thesaurus' option is empty" +msgstr "thesaurus-asetus on tyhj�" + +#, c-format +msgid "Scanning dictionary: %s" +msgstr "Luetaan sanakirjaa: %s" + +msgid " (insert) Scroll (^E/^Y)" +msgstr " (sy�tt�) Vieritys (^E/^Y)" + +msgid " (replace) Scroll (^E/^Y)" +msgstr " (korvaus) Vieritys (^E/^Y)" + +#, c-format +msgid "Scanning: %s" +msgstr "Luetaan: %s" + +#, c-format +msgid "Scanning tags." +msgstr "Luetaan t�gej�." + +msgid " Adding" +msgstr " Lis�t��n" + +#. showmode might reset the internal line pointers, so it must +#. * be called before line = ml_get(), or when this address is no +#. * longer needed. -- Acevedo. +#. +msgid "-- Searching..." +msgstr "-- Haetaan..." + +msgid "Back at original" +msgstr "Takaisin l�ht�pisteess�" + +msgid "Word from other line" +msgstr "Sana toisella rivill�" + +msgid "The only match" +msgstr "Ainoa t�sm�ys" + +#, c-format +msgid "match %d of %d" +msgstr "t�sm�ys %d/%d" + +#, c-format +msgid "match %d" +msgstr "t�sm�ys %d" + +msgid "E18: Unexpected characters in :let" +msgstr "E18: Odottamattomia merkkej� komennossa :let" + +#, c-format +msgid "E684: list index out of range: %ld" +msgstr "E684: Indeksi %ld luettelon rajojen ulkopuolella" + +#, c-format +msgid "E121: Undefined variable: %s" +msgstr "E121: M��rittelem�t�n muuttuja %s" + +msgid "E111: Missing ']'" +msgstr "E111: ] puuttuu" + +#, c-format +msgid "E686: Argument of %s must be a List" +msgstr "E686: Argumentin %s pit�� olla lista" + +# datarakenteita +#, c-format +msgid "E712: Argument of %s must be a List or Dictionary" +msgstr "E712: Argumentin %s pit�� olla lista tai sanakirja" + +msgid "E713: Cannot use empty key for Dictionary" +msgstr "E713: Sanakirjassa ei voi olla tyhji� avaimia" + +msgid "E714: List required" +msgstr "E714: Lista tarvitaan" + +msgid "E715: Dictionary required" +msgstr "E715: Sanakirja tarvitaan" + +#, c-format +msgid "E118: Too many arguments for function: %s" +msgstr "E118: Liikaa argumentteja funktiolle %s" + +#, c-format +msgid "E716: Key not present in Dictionary: %s" +msgstr "E716: Avainta %s ei ole sanakirjassa" + +#, c-format +msgid "E122: Function %s already exists, add ! to replace it" +msgstr "E122: Funktio %s on jo olemassa, lis�� ! korvataksesi" + +msgid "E717: Dictionary entry already exists" +msgstr "E717: Sanakirja-alkio on jo olemassa" + +msgid "E718: Funcref required" +msgstr "E718: Funcref tarvitaan" + +msgid "E719: Cannot use [:] with a Dictionary" +msgstr "E719: Sanakirjassa ei voi k�ytt�� merkint�� [:]" + +#, c-format +msgid "E734: Wrong variable type for %s=" +msgstr "E734: V��r� muuttujatyyppi muuttujalle %s=" + +#, c-format +msgid "E130: Unknown function: %s" +msgstr "E130: Tuntematon funktio: %s" + +#, c-format +msgid "E461: Illegal variable name: %s" +msgstr "E461: Virheellinen muuttujanimi: %s" + +msgid "E687: Less targets than List items" +msgstr "E687: Kohteita on v�hemm�n kuin listan alkioita" + +msgid "E688: More targets than List items" +msgstr "E688: Kohteita on enemm�n kuin listan alkioita" + +msgid "Double ; in list of variables" +msgstr "Kaksi ;:tt� listan muuttujissa" + +#, c-format +msgid "E738: Can't list variables for %s" +msgstr "E738: Kohteen %s muuttujia ei voi listata" + +msgid "E689: Can only index a List or Dictionary" +msgstr "E689: Vain listalla ja sanakirjalla voi olla indeksej�" + +msgid "E708: [:] must come last" +msgstr "E708: [:]:n pit�� olla viimeisen�" + +msgid "E709: [:] requires a List value" +msgstr "E709: [:] toimii vain listalla" + +msgid "E710: List value has more items than target" +msgstr "E710: Listalla on enemm�n alkioita kuin kohteella" + +msgid "E711: List value has not enough items" +msgstr "E711: Listalla ei ole tarpeeksi alkioita" + +msgid "E690: Missing \"in\" after :for" +msgstr "E690: :for-kommenolta puuttuu in" + +#, c-format +msgid "E107: Missing braces: %s" +msgstr "E107: Sulkeita puuttuu: %s" + +#, c-format +msgid "E108: No such variable: \"%s\"" +msgstr "E108: Muuttujaa %s ei ole" + +msgid "E743: variable nested too deep for (un)lock" +msgstr "E743: muuttujassa liian monta tasoa lukituksen k�sittelyyn" + +msgid "E109: Missing ':' after '?'" +msgstr "E109: ?:n j�lkeen puuttuu :" + +msgid "E691: Can only compare List with List" +msgstr "E691: Listaa voi verrata vain listaan" + +msgid "E692: Invalid operation for Lists" +msgstr "E692: Virheellinen toiminto listalle" + +msgid "E735: Can only compare Dictionary with Dictionary" +msgstr "E735: Sanakirjaa voi verrata vain sanakirjaan" + +msgid "E736: Invalid operation for Dictionary" +msgstr "E736: Virheellinen toiminto sanakirjalle" + +msgid "E693: Can only compare Funcref with Funcref" +msgstr "E693: Funcrefi� voi verrata vain funcrefiin" + +msgid "E694: Invalid operation for Funcrefs" +msgstr "E694: Virheellinen toiminto funcrefille" + +msgid "E804: Cannot use '%' with Float" +msgstr "E804: Ei voi k�ytt�� '%':a Floatin kanssa" + +msgid "E110: Missing ')'" +msgstr "E110: ) puuttuu" + +msgid "E695: Cannot index a Funcref" +msgstr "E695: Funcrefi� ei voi indeksoida" + +#, c-format +msgid "E112: Option name missing: %s" +msgstr "E112: Asetuksen nimi puuttuu: %s" + +#, c-format +msgid "E113: Unknown option: %s" +msgstr "E113: Tuntematon asetus: %s" + +#, c-format +msgid "E114: Missing quote: %s" +msgstr "E114: Puuttuva lainausmerkki: %s" + +#, c-format +msgid "E115: Missing quote: %s" +msgstr "E115: Puuttuva lainausmerkki: %s" + +#, c-format +msgid "E696: Missing comma in List: %s" +msgstr "E696: Listasta puuttuu pilkku: %s" + +#, c-format +msgid "E697: Missing end of List ']': %s" +msgstr "E697: Listan lopusta puuttuu ]: %s" + +#, c-format +msgid "E720: Missing colon in Dictionary: %s" +msgstr "E720: Sanakirjasta puuttuu kaksoispiste: %s" + +#, c-format +msgid "E721: Duplicate key in Dictionary: \"%s\"" +msgstr "E721: Kaksi samaa avainta sanakirjassa: %s" + +#, c-format +msgid "E722: Missing comma in Dictionary: %s" +msgstr "E722: Sanakirjasta puuttuu pilkku: %s" + +#, c-format +msgid "E723: Missing end of Dictionary '}': %s" +msgstr "E723: Sanakirjan lopusta puuttuu }: %s" + +msgid "E724: variable nested too deep for displaying" +msgstr "E724: muuttuja on upotettu liian syv�lle n�ytett�v�ksi" + +#, c-format +msgid "E117: Unknown function: %s" +msgstr "E117: Tuntematon funktio: %s" + +#, c-format +msgid "E119: Not enough arguments for function: %s" +msgstr "E119: Liikaa argumentteja funktiolle %s" + +#, c-format +msgid "E120: Using <SID> not in a script context: %s" +msgstr "E120: <SID> skriptin ulkopuolella: %s" + +#, c-format +msgid "E725: Calling dict function without Dictionary: %s" +msgstr "E725: dict-funktio ilman sanakirjaa: %s" + +msgid "E808: Number or Float required" +msgstr "E808: Number tai Float vaaditaan" + +msgid "E699: Too many arguments" +msgstr "E699: Liikaa argumentteja" + +msgid "E785: complete() can only be used in Insert mode" +msgstr "E785: complete() toimii vain sy�tt�tilassa" + +#. +#. * Yes this is ugly, I don't particularly like it either. But doing it +#. * this way has the compelling advantage that translations need not to +#. * be touched at all. See below what 'ok' and 'ync' are used for. +#. +msgid "&Ok" +msgstr "&Ok" + +#, c-format +msgid "E737: Key already exists: %s" +msgstr "E737: Avain on jo olemassa: %s" + +#, c-format +msgid "+-%s%3ld lines: " +msgstr "+-%s%3ld rivi�: " + +#, c-format +msgid "E700: Unknown function: %s" +msgstr "E700: Tuntematon funktio: %s" + +msgid "" +"&OK\n" +"&Cancel" +msgstr "" +"&OK\n" +"&Peru" + +msgid "called inputrestore() more often than inputsave()" +msgstr "inputrestore() suoritettu useammin kuin inputsave()" + +msgid "E786: Range not allowed" +msgstr "E786: Aluetta ei voi k�ytt��" + +msgid "E701: Invalid type for len()" +msgstr "E701: Virheellinen tyyppi funktiolle len()" + +msgid "E726: Stride is zero" +msgstr "E726: Stride on nolla" + +msgid "E727: Start past end" +msgstr "E727: Alku on lopun j�lkeen" + +msgid "<empty>" +msgstr "<tyhj�>" + +msgid "E240: No connection to Vim server" +msgstr "E240: Ei yhteytt� vim-palvelimeen" + +#, c-format +msgid "E241: Unable to send to %s" +msgstr "E241: Kohteeseen %s l�hett�minen ei onnistunut" + +msgid "E277: Unable to read a server reply" +msgstr "E277: Palvelimen vastauksen lukeminen ei onnistunut" + +msgid "E655: Too many symbolic links (cycle?)" +msgstr "E655: Liikaa symbolisia linkkej� (mahdollinen sykli)" + +msgid "E258: Unable to send to client" +msgstr "E258: Asiakkaalle l�hetys ei onnistunut" + +msgid "E702: Sort compare function failed" +msgstr "E702: Lajittelun vertausfunktio ei onnistunut" + +msgid "(Invalid)" +msgstr "(Virheellinen)" + +msgid "E677: Error writing temp file" +msgstr "E677: V�liaikaistiedostoon kirjoittaminen ei onnistunut" + +msgid "E805: Using a Float as a Number" +msgstr "E805: Float ei k�y Numberista" + +msgid "E703: Using a Funcref as a Number" +msgstr "E703: Funcref ei k�y Numberista" + +msgid "E745: Using a List as a Number" +msgstr "E745: Lista ei k�y Numberista" + +msgid "E728: Using a Dictionary as a Number" +msgstr "E728: Sanakirja ei k�y Numberista" + +msgid "E729: using Funcref as a String" +msgstr "E729: Funcref ei k�y merkkijonosta" + +msgid "E730: using List as a String" +msgstr "E730: Lista ei k�y merkkijonosta" + +msgid "E731: using Dictionary as a String" +msgstr "E731: Sanakirja ei k�y merkkijonosta" + +msgid "E806: using Float as a String" +msgstr "E806: Float ei k�y merkkijonosta" + +#, c-format +msgid "E704: Funcref variable name must start with a capital: %s" +msgstr "E704: Funcrefin muuttujanimen pit�� alkaa suuraakkosella: %s" + +#, c-format +msgid "E705: Variable name conflicts with existing function: %s" +msgstr "E705: Muuttujanimi on sama kuin olemassaolevan funktion: %s" + +#, c-format +msgid "E706: Variable type mismatch for: %s" +msgstr "E706: Muuttujatyyppi ei t�sm��: %s" + +#, c-format +msgid "E795: Cannot delete variable %s" +msgstr "E795: Muuttujaa %s ei voi poistaa" + +#, c-format +msgid "E741: Value is locked: %s" +msgstr "E741: Arvo on lukittu: %s" + +msgid "Unknown" +msgstr "Tuntematon" + +#, c-format +msgid "E742: Cannot change value of %s" +msgstr "E742: Ei voi muuttaa muuttujan %s arvoa" + +msgid "E698: variable nested too deep for making a copy" +msgstr "E698: muuttuja on upotettu liian syv�lle kopioitavaksi" + +#, c-format +msgid "E124: Missing '(': %s" +msgstr "E124: ( puuttuu: %s" + +#, c-format +msgid "E125: Illegal argument: %s" +msgstr "E125: Virheellinen argumentti: %s" + +msgid "E126: Missing :endfunction" +msgstr "E126: :endfunction puuttuu" + +#, c-format +msgid "E746: Function name does not match script file name: %s" +msgstr "E746: Funktion nimi ei ole sama kuin skriptin tiedostonnimi: %s" + +msgid "E129: Function name required" +msgstr "E129: Funktion nimi puuttuu" + +#, c-format +msgid "E128: Function name must start with a capital or contain a colon: %s" +msgstr "" +"E128: Funktion nimen pit�� alkaa suuraakkosella tai sis�lt�� kaksoispisteen: " +"%s" + +#, c-format +msgid "E131: Cannot delete function %s: It is in use" +msgstr "E131: Funktiota %s ei voi poistaa" + +msgid "E132: Function call depth is higher than 'maxfuncdepth'" +msgstr "E132: Funktiokutsujen syvyys on enemm�n kuin maxfuncdepth" + +#, c-format +msgid "calling %s" +msgstr "kutsutaan funktiota %s" + +#, c-format +msgid "%s aborted" +msgstr "%s keskeytettiin" + +#, c-format +msgid "%s returning #%ld" +msgstr "%s palaa kohdassa #%ld" + +#, c-format +msgid "%s returning %s" +msgstr "%s palaa kohdassa %s" + +#, c-format +msgid "continuing in %s" +msgstr "jatkaa kohdassa %s" + +msgid "E133: :return not inside a function" +msgstr "E133: :return ei ole funktion sis�ll�" + +#, c-format +msgid "" +"\n" +"# global variables:\n" +msgstr "" +"\n" +"# globaalit muuttujat:\n" + +msgid "" +"\n" +"\tLast set from " +msgstr "" +"\n" +"\tViimeksi asetettu kohteesta " + +msgid "Entering Debug mode. Type \"cont\" to continue." +msgstr "Siirryt��n vianetsint�tilaan, kirjoita cont jatkaaksesi." + +#, c-format +msgid "line %ld: %s" +msgstr "rivi %ld: %s" + +#, c-format +msgid "cmd: %s" +msgstr "kmnt: %s" + +#, c-format +msgid "Breakpoint in \"%s%s\" line %ld" +msgstr "Katkaisukohta %s%s rivill� %ld" + +#, c-format +msgid "E161: Breakpoint not found: %s" +msgstr "E161: Katkaisukohta puuttuu: %s" + +msgid "No breakpoints defined" +msgstr "Ei katkaisukohtia" + +#, c-format +msgid "%3d %s %s line %ld" +msgstr "%3d %s %s rivi %ld" + +msgid "E750: First use :profile start <fname>" +msgstr "E750: Aloita k�skyll� :profile start <fname>" + +msgid "Save As" +msgstr "Tallenna nimell�" + +#, c-format +msgid "Save changes to \"%s\"?" +msgstr "Tallennetaanko muutokset tiedostoon %s?" + +msgid "Untitled" +msgstr "Nimet�n" + +#, c-format +msgid "E162: No write since last change for buffer \"%s\"" +msgstr "E162: Muutoksia ei ole kirjoitettu puskurin %s viime muutoksen j�lkeen" + +msgid "Warning: Entered other buffer unexpectedly (check autocommands)" +msgstr "Varoitus: Puskuri vaihtui odottamatta (tarkista autocommands)" + +msgid "E163: There is only one file to edit" +msgstr "E163: Vain yksi tiedosto muokattavana" + +msgid "E164: Cannot go before first file" +msgstr "E164: Ensimm�isen tiedoston ohi ei voi menn�" + +msgid "E165: Cannot go beyond last file" +msgstr "E165: Viimeisen tiedoston ohi ei voi menn�" + +#, c-format +msgid "E666: compiler not supported: %s" +msgstr "E666: k��nt�j�� ei tueta: %s" + +#, c-format +msgid "Searching for \"%s\" in \"%s\"" +msgstr "Etsit��n ilmausta %s kohteesta %s" + +#, c-format +msgid "Searching for \"%s\"" +msgstr "Etsit��n ilmausta %s" + +#, c-format +msgid "not found in 'runtimepath': \"%s\"" +msgstr "ei l�ydy runtimepathista: %s" + +msgid "Source Vim script" +msgstr "Lataa vim-skripti" + +#, c-format +msgid "Cannot source a directory: \"%s\"" +msgstr "Hakemistoa ei voi ladata: %s" + +#, c-format +msgid "could not source \"%s\"" +msgstr "ei voitu ladata %s" + +#, c-format +msgid "line %ld: could not source \"%s\"" +msgstr "rivi %ld: ei voitu ladata %s" + +#, c-format +msgid "sourcing \"%s\"" +msgstr "ladataan %s" + +#, c-format +msgid "line %ld: sourcing \"%s\"" +msgstr "rivi %ld: ladataan %s" + +#, c-format +msgid "finished sourcing %s" +msgstr "ladattu %s" + +msgid "modeline" +msgstr "mode-rivi" + +msgid "--cmd argument" +msgstr "--cmd-argumentti" + +msgid "-c argument" +msgstr "-c-argumentti" + +msgid "environment variable" +msgstr "ymp�rist�muuttuja" + +msgid "error handler" +msgstr "virhek�sittelin" + +msgid "W15: Warning: Wrong line separator, ^M may be missing" +msgstr "W15: Varoitus: V��r� rivierotin, ^M saattaa puuttua" + +msgid "E167: :scriptencoding used outside of a sourced file" +msgstr "E167: :scriptencoding ladatun tiedoston ulkopuolella" + +msgid "E168: :finish used outside of a sourced file" +msgstr "E168: :finish ladatun tiedoston ulkopuolella" + +#, c-format +msgid "Current %slanguage: \"%s\"" +msgstr "K�yt�ss� oleva %skieli: %s" + +#, c-format +msgid "E197: Cannot set language to \"%s\"" +msgstr "E197: Kieleksi ei voitu asettaa kielt� %s" + +# puhutaan merkin ulkoasusta snprintf(..., c, c, c, c) +#, c-format +msgid "<%s>%s%s %d, Hex %02x, Octal %03o" +msgstr "<%s>%s%s %d, heksana %02x, oktaalina %03o" + +#, c-format +msgid "> %d, Hex %04x, Octal %o" +msgstr "> %d, heksana %04x, oktaalina %o" + +#, c-format +msgid "> %d, Hex %08x, Octal %o" +msgstr "> %d, hekdana %08x, oktaalina %o" + +msgid "E134: Move lines into themselves" +msgstr "E134: Rivien siirto itsejens� p��lle" + +msgid "1 line moved" +msgstr "1 rivi siirretty" + +#, c-format +msgid "%ld lines moved" +msgstr "%ld rivi� siirretty" + +#, c-format +msgid "%ld lines filtered" +msgstr "%ld rivi� suodatettu" + +msgid "E135: *Filter* Autocommands must not change current buffer" +msgstr "E135: *Filter*-autocommand ei voi vaihtaa puskuria" + +msgid "[No write since last change]\n" +msgstr "[Viimeisint� muutosta ei ole kirjoitettu]\n" + +#, c-format +msgid "%sviminfo: %s in line: " +msgstr "%sviminfo: %s rivill�: " + +msgid "E136: viminfo: Too many errors, skipping rest of file" +msgstr "E136: viminfo: liikaa virheit�, ohitetaan lopputiedosto" + +#, c-format +msgid "Reading viminfo file \"%s\"%s%s%s" +msgstr "Luetaan viminfo-tiedostoa \"%s\"%s%s%s" + +msgid " info" +msgstr " info" + +msgid " marks" +msgstr " merkit" + +msgid " FAILED" +msgstr " EP�ONNISTUI" + +#. avoid a wait_return for this message, it's annoying +#, c-format +msgid "E137: Viminfo file is not writable: %s" +msgstr "E137: Viminfo-tiedostoon ei voitu kirjoittaa: %s" + +#, c-format +msgid "E138: Can't write viminfo file %s!" +msgstr "E138: Viminfo-tiedoston kirjoittaminen ei onnistu %s" + +#, c-format +msgid "Writing viminfo file \"%s\"" +msgstr "Kirjoitetaan viminfo-tiedostoa %s" + +#. Write the info: +#, c-format +msgid "# This viminfo file was generated by Vim %s.\n" +msgstr "# Vimin %s generoima viminfo-tiedosto.\n" + +#, c-format +msgid "" +"# You may edit it if you're careful!\n" +"\n" +msgstr "" +"# Muokkaa varovasti!\n" +"\n" + +#, c-format +msgid "# Value of 'encoding' when this file was written\n" +msgstr "# encoding-muuttujan arvo tiedostoa kirjoitettaessa\n" + +msgid "Illegal starting char" +msgstr "Virheellinen aloitusmerkki" + +msgid "Write partial file?" +msgstr "Kirjoita osittainen tiedosto" + +msgid "E140: Use ! to write partial buffer" +msgstr "E140: K�yt� !-komentoa osittaisen puskurin kirjoittamiseen" + +#, c-format +msgid "Overwrite existing file \"%s\"?" +msgstr "Ylikirjoitetaanko olemassaoleva tiedosto %s?" + +#, c-format +msgid "Swap file \"%s\" exists, overwrite anyway?" +msgstr "Swap-tiedosto %s on olemassa, ylikirjoitetaanko?" + +#, c-format +msgid "E768: Swap file exists: %s (:silent! overrides)" +msgstr "E768: Swap-tiedosto on jo olemassa: %s (komento :silent! ohittaa)" + +#, c-format +msgid "E141: No file name for buffer %ld" +msgstr "E141: Ei tiedostonime� puskurille %ld" + +msgid "E142: File not written: Writing is disabled by 'write' option" +msgstr "" +"E142: Tiedostoa ei kirjoitettu; write-asetus poistaa kirjoituksen k�yt�st�" + +#, c-format +msgid "" +"'readonly' option is set for \"%s\".\n" +"Do you wish to write anyway?" +msgstr "" +"readonly asetettu tiedostolle \"%s\".\n" +"Kirjoitetaanko?" + +#, c-format +msgid "" +"File permissions of \"%s\" are read-only.\n" +"It may still be possible to write it.\n" +"Do you wish to try?" +msgstr "" +"Tiedosto %s on kirjoitussuojattu.\n" +"Siihen saattaa voida silti kirjoittaa.\n" +"Yritet��nk�?" + +#, c-format +msgid "E505: \"%s\" is read-only (add ! to override)" +msgstr "E505: %s on kirjoitussuojattu (lis�� komentoon ! ohittaaksesi)" + +msgid "Edit File" +msgstr "Muokkaa tiedostoa" + +#, c-format +msgid "E143: Autocommands unexpectedly deleted new buffer %s" +msgstr "E143: Autocommand poisti uuden puskurin odotuksen vastaisesti %s" + +msgid "E144: non-numeric argument to :z" +msgstr "E144: :z:n argumentti ei ole numero" + +msgid "E145: Shell commands not allowed in rvim" +msgstr "E145: Kuoren komennot eiv�t toimi rvimiss�" + +msgid "E146: Regular expressions can't be delimited by letters" +msgstr "E146: S��nn�llist� ilmausta ei voi rajata kirjaimilla" + +#, c-format +msgid "replace with %s (y/n/a/q/l/^E/^Y)?" +msgstr "korvaa kohteella %s (y/n/a/q/l/^E/^Y)?" + +msgid "(Interrupted) " +msgstr "(Keskeytetty)" + +msgid "1 match" +msgstr "1 t�sm�ys" + +msgid "1 substitution" +msgstr "1 korvaus" + +#, c-format +msgid "%ld matches" +msgstr "%ld t�sm�yst�" + +#, c-format +msgid "%ld substitutions" +msgstr "%ld korvausta" + +msgid " on 1 line" +msgstr " 1 rivill�" + +#, c-format +msgid " on %ld lines" +msgstr " %ld rivill�" + +msgid "E147: Cannot do :global recursive" +msgstr "E147: :globalia ei voi suorittaa rekursiivisesti" + +msgid "E148: Regular expression missing from global" +msgstr "E148: S��nn�llinen ilmaus puuttuu globaalista" + +#, c-format +msgid "Pattern found in every line: %s" +msgstr "Kuvio l�ytyi joka rivilt�: %s" + +#, c-format +msgid "" +"\n" +"# Last Substitute String:\n" +"$" +msgstr "" +"\n" +"# Viimeisin korvausmerkkijono:\n" +"$" + +msgid "E478: Don't panic!" +msgstr "E478: �l� panikoi." + +#, c-format +msgid "E661: Sorry, no '%s' help for %s" +msgstr "E661: Sori, ei l�ydy %s-ohjetta kohteelle %s" + +#, c-format +msgid "E149: Sorry, no help for %s" +msgstr "E149: Sori, ei l�ydy ohjetta kohteelle %s" + +#, c-format +msgid "Sorry, help file \"%s\" not found" +msgstr "Sori, ohjetiedostoa %s ei l�ydy" + +#, c-format +msgid "E150: Not a directory: %s" +msgstr "E150: Ei ole hakemisto: %s" + +#, c-format +msgid "E152: Cannot open %s for writing" +msgstr "E152: Ei voi avata tiedostoa %s kirjoittamista varten" + +#, c-format +msgid "E153: Unable to open %s for reading" +msgstr "E153: Ei voi avata tiedostoa %s lukemista varten" + +#, c-format +msgid "E670: Mix of help file encodings within a language: %s" +msgstr "E670: Monia ohjetiedostokoodauksia kieless�: %s" + +#, c-format +msgid "E154: Duplicate tag \"%s\" in file %s/%s" +msgstr "E154: Kaksoiskappale t�gist� %s tiedostossa %s/%s" + +#, c-format +msgid "E160: Unknown sign command: %s" +msgstr "E160: Tuntematon merkkikomento: %s" + +msgid "E156: Missing sign name" +msgstr "E156: Merkki puuttuu" + +msgid "E612: Too many signs defined" +msgstr "E612: Liikaa merkkej� m��ritelty" + +#, c-format +msgid "E239: Invalid sign text: %s" +msgstr "E239: Virheellinen merkkiteksti: %s" + +#, c-format +msgid "E155: Unknown sign: %s" +msgstr "E155: Tuntematon merkki: %s" + +msgid "E159: Missing sign number" +msgstr "E159: Merkin numero puuttuu" + +#, c-format +msgid "E158: Invalid buffer name: %s" +msgstr "E158: Virheellinen puskurin nimi: %s" + +#, c-format +msgid "E157: Invalid sign ID: %ld" +msgstr "E157: Virheellinen merkin tunnus: %ld" + +msgid " (NOT FOUND)" +msgstr " (EI L�YTYNYT)" + +msgid " (not supported)" +msgstr " (ei tuettu)" + +msgid "[Deleted]" +msgstr "[Poistettu]" + +msgid "Entering Ex mode. Type \"visual\" to go to Normal mode." +msgstr "Siirryt��n Ex-tilaan, kirjoita visual palataksesi normaaliin tilaan." + +msgid "E501: At end-of-file" +msgstr "E501: Tiedoston lopussa" + +msgid "E169: Command too recursive" +msgstr "E169: Liian rekursiivinen komento" + +#, c-format +msgid "E605: Exception not caught: %s" +msgstr "E605: Kiinniottamaton poikkeus: %s" + +msgid "End of sourced file" +msgstr "Ladatun tiedoston loppu" + +msgid "End of function" +msgstr "Funktion loppu" + +msgid "E464: Ambiguous use of user-defined command" +msgstr "E464: K�ytt�j�n m��rittelem�n komennon monimerkityksinen k�ytt�" + +msgid "E492: Not an editor command" +msgstr "E492: Ei ole editorikomento" + +msgid "E493: Backwards range given" +msgstr "E493: Takaperoinen arvoalue annettu" + +msgid "Backwards range given, OK to swap" +msgstr "Takaperoinen arvoalue annettu, OK k��nt��" + +msgid "E494: Use w or w>>" +msgstr "E494: K�yt� w:t� tai w>>:aa" + +msgid "E319: Sorry, the command is not available in this version" +msgstr "E319: Komento ei ole k�ytett�viss� t�ss� versiossa" + +msgid "E172: Only one file name allowed" +msgstr "E172: Vain yksi tiedostonimi sallitaan" + +msgid "1 more file to edit. Quit anyway?" +msgstr "viel� 1 tiedosto muokattavana, lopetaanko silti?" + +#, c-format +msgid "%d more files to edit. Quit anyway?" +msgstr "viel� %d tiedostoa muokattavana, lopetetaanko silti?" + +msgid "E173: 1 more file to edit" +msgstr "E173: viel� 1 tiedosto muokattavana" + +#, c-format +msgid "E173: %ld more files to edit" +msgstr "E173: viel� %ld tiedostoa muokattavana" + +msgid "E174: Command already exists: add ! to replace it" +msgstr "E174: Komento on jo olemassa, k�yt� !:� korvataksesi" + +msgid "" +"\n" +" Name Args Range Complete Definition" +msgstr "" +"\n" +" Nimi Arg Arvot Valmis M��ritelm�" + +msgid "No user-defined commands found" +msgstr "Ei k�ytt�j�n m��rittelemi� komentoja" + +msgid "E175: No attribute specified" +msgstr "E175: Ei attribuutteja m��riteltyn�" + +msgid "E176: Invalid number of arguments" +msgstr "E176: V��r� m��r� attribuutteja" + +msgid "E177: Count cannot be specified twice" +msgstr "E177: Lukum��r�� ei voi m��ritell� kahdesti" + +msgid "E178: Invalid default value for count" +msgstr "E178: Lukum��r�n oletusarvo on v��r�" + +msgid "E179: argument required for -complete" +msgstr "E179: -complete vaatii argumentin" + +#, c-format +msgid "E181: Invalid attribute: %s" +msgstr "E181: Virheellinen attribuutti %s" + +msgid "E182: Invalid command name" +msgstr "E182: Virheellinen komennon nimi" + +msgid "E183: User defined commands must start with an uppercase letter" +msgstr "E183: K�ytt�j�n m��rittelem�n komennon pit�� alkaa suuraakkosella" + +#, c-format +msgid "E184: No such user-defined command: %s" +msgstr "E184: K�ytt�j�n komentoa ei ole olemassa: %s" + +#, c-format +msgid "E180: Invalid complete value: %s" +msgstr "E180: Virheellinen t�ydennysarvo: %s" + +msgid "E468: Completion argument only allowed for custom completion" +msgstr "E468: T�ydennysargumentti sopii vain itse m��riteltyyn t�ydennykseen" + +msgid "E467: Custom completion requires a function argument" +msgstr "E467: Itse m��ritelty t�ydennys vaatii funktioargumentin" + +#, c-format +msgid "E185: Cannot find color scheme %s" +msgstr "E185: V�riteemaa %s ei l�ydy" + +msgid "Greetings, Vim user!" +msgstr "Tervehdys, Vimin k�ytt�j�." + +msgid "E784: Cannot close last tab page" +msgstr "E784: Viimeist� v�lilehte� ei voi sulkea" + +msgid "Already only one tab page" +msgstr "Vain yksi v�lilehti j�ljell� en��" + +msgid "Edit File in new window" +msgstr "Muokkaa uudessa ikkunassa" + +#, c-format +msgid "Tab page %d" +msgstr "Tabisivu %d" + +msgid "No swap file" +msgstr "Ei swap-tiedostoa" + +msgid "Append File" +msgstr "Lis�� tiedostoon" + +msgid "E747: Cannot change directory, buffer is modified (add ! to override)" +msgstr "" +"E747: Hakemistoa ei voida muuttaa, puskuria on muokattu (lis�� komentoon ! " +"ohittaaksesi" + +msgid "E186: No previous directory" +msgstr "E186: Ei edellist� hakemistoa" + +msgid "E187: Unknown" +msgstr "E187: Tuntematon" + +msgid "E465: :winsize requires two number arguments" +msgstr "E465: :winsize vaatii kaksi numeroargumenttia" + +#, c-format +msgid "Window position: X %d, Y %d" +msgstr "Ikkunan sijainti: X %d, Y %d" + +msgid "E188: Obtaining window position not implemented for this platform" +msgstr "E188: Ikkunan sijainnin selvitys ei toimi t�ll� alustalla" + +msgid "E466: :winpos requires two number arguments" +msgstr "E466: :winpos vaatii kaksi lukuargumenttia" + +msgid "Save Redirection" +msgstr "Tallenna uudelleenosoitus" + +msgid "Save View" +msgstr "Tallenna n�kym�" + +msgid "Save Session" +msgstr "Tallenna sessio" + +msgid "Save Setup" +msgstr "Tallenna asetukset" + +#, c-format +msgid "E739: Cannot create directory: %s" +msgstr "E739: hakemistoa ei voi luoda: %s" + +#, c-format +msgid "E189: \"%s\" exists (add ! to override)" +msgstr "E189: %s on jo olemassa (lis�� komentoon ! ohittaaksesi)" + +#, c-format +msgid "E190: Cannot open \"%s\" for writing" +msgstr "E190: Tiedostoa %s ei voitu avata kirjoittamista varten" + +#. set mark +msgid "E191: Argument must be a letter or forward/backward quote" +msgstr "E191: Argumentin eteen- tai taaksep�in lainaukseen pit�� olla kirjain" + +msgid "E192: Recursive use of :normal too deep" +msgstr "E192: :normalin liian syv� rekursio" + +msgid "E194: No alternate file name to substitute for '#'" +msgstr "E194: Ei vaihtoehtoista tiedostonime� #:lle" + +msgid "E495: no autocommand file name to substitute for \"<afile>\"" +msgstr "E495: ei autocommand-tiedostoa kohteelle <afile>" + +msgid "E496: no autocommand buffer number to substitute for \"<abuf>\"" +msgstr "E496: ei autocommand-puskurinumeroa kohteelle <abuf>" + +msgid "E497: no autocommand match name to substitute for \"<amatch>\"" +msgstr "E497: ei autocommand-t�sm�ysnime� kohteella <amatch>" + +msgid "E498: no :source file name to substitute for \"<sfile>\"" +msgstr "E498: ei :source-tiedostonime� kohteelle <sfile>" + +#, no-c-format +msgid "E499: Empty file name for '%' or '#', only works with \":p:h\"" +msgstr "E499: Tyhj� tiedostonimi kohteissa % tai # toimii vain :p:h" + +msgid "E500: Evaluates to an empty string" +msgstr "E500: Loppuarvo on tyhj� merkkijono" + +msgid "E195: Cannot open viminfo file for reading" +msgstr "E195: Viminfoa ei voi avata lukemista varten" + +msgid "E196: No digraphs in this version" +msgstr "E196: Digraafeja ei ole t�ss� versiossa" + +msgid "E608: Cannot :throw exceptions with 'Vim' prefix" +msgstr "E608: Vim-alkuisia poikkeuksia ei voi heitt�� :throw-komennolla" + +#. always scroll up, don't overwrite +#, c-format +msgid "Exception thrown: %s" +msgstr "Poikkeus heitetty: %s" + +#, c-format +msgid "Exception finished: %s" +msgstr "Poikkeus lopeteltu: %s" + +#, c-format +msgid "Exception discarded: %s" +msgstr "Poikkeus poistettu: %s" + +#, c-format +msgid "%s, line %ld" +msgstr "%s, rivi %ld" + +#. always scroll up, don't overwrite +#, c-format +msgid "Exception caught: %s" +msgstr "Poikkeus otettu kiinni: %s" + +#, c-format +msgid "%s made pending" +msgstr "%s odotutettu" + +#, c-format +msgid "%s resumed" +msgstr "%s palautettu" + +#, c-format +msgid "%s discarded" +msgstr "%s poistettu" + +msgid "Exception" +msgstr "Poikkeus" + +msgid "Error and interrupt" +msgstr "Virhe ja keskeytys" + +msgid "Error" +msgstr "Virhe" + +#. if (pending & CSTP_INTERRUPT) +msgid "Interrupt" +msgstr "Keskeytys" + +msgid "E579: :if nesting too deep" +msgstr "E579: liian monta kerrosta :if-komennossa" + +msgid "E580: :endif without :if" +msgstr "E580: :endif ilman komentoa :if" + +msgid "E581: :else without :if" +msgstr "E581: :else ilman komentoa :if" + +msgid "E582: :elseif without :if" +msgstr "E582: :elseif ilman komentoa :if" + +msgid "E583: multiple :else" +msgstr "E583: :else monta kertaa" + +msgid "E584: :elseif after :else" +msgstr "E584: :elseif komennon :else j�lkeen" + +msgid "E585: :while/:for nesting too deep" +msgstr "E585: liian monta tasoa :while- tai :for-komennoissa" + +msgid "E586: :continue without :while or :for" +msgstr "E586: :continue ilman komentoa :while tai :for" + +msgid "E587: :break without :while or :for" +msgstr "E587: :break ilman komentoa :while tai :for" + +msgid "E732: Using :endfor with :while" +msgstr "E732: :endfor ilman komentoa :while" + +msgid "E733: Using :endwhile with :for" +msgstr "E733: :endwhile ilman komentoa :for" + +msgid "E601: :try nesting too deep" +msgstr "E601: liian monta tasoa :try-komennossa" + +msgid "E603: :catch without :try" +msgstr "E603: :catch ilman komentoa :try" + +#. Give up for a ":catch" after ":finally" and ignore it. +#. * Just parse. +msgid "E604: :catch after :finally" +msgstr "E604: :catch ilman komentoa :finally" + +msgid "E606: :finally without :try" +msgstr "E606: :finally ilman komentoa :try" + +#. Give up for a multiple ":finally" and ignore it. +msgid "E607: multiple :finally" +msgstr "E607: :finally monta kertaa" + +msgid "E602: :endtry without :try" +msgstr "E602: :endtry ilman komentoa :try" + +msgid "E193: :endfunction not inside a function" +msgstr "E193: :endfunction funktion ulkopuolella" + +msgid "E788: Not allowed to edit another buffer now" +msgstr "E788: Puskuria ei voi muokata nyt" + +msgid "tagname" +msgstr "t�ginimi" + +msgid " kind file\n" +msgstr " -tiedostotyyppi\n" + +msgid "'history' option is zero" +msgstr "history-asetus on nolla" + +#, c-format +msgid "" +"\n" +"# %s History (newest to oldest):\n" +msgstr "" +"\n" +"# %s Historia (uusimmasta alkaen):\n" + +msgid "Command Line" +msgstr "Komentorivi" + +msgid "Search String" +msgstr "Hakujono" + +msgid "Expression" +msgstr "Ilmaus" + +msgid "Input Line" +msgstr "Sy�terivi" + +msgid "E198: cmd_pchar beyond the command length" +msgstr "E198: cmd_pchar komennon pituuden ulkopuolella" + +msgid "E199: Active window or buffer deleted" +msgstr "E199: Aktiivinen ikkuna tai puskuri poistettu" + +msgid "Illegal file name" +msgstr "Virheellinen tiedostonimi" + +msgid "is a directory" +msgstr "on hakemisto" + +msgid "is not a file" +msgstr "ei ole tiedosto" + +msgid "is a device (disabled with 'opendevice' option)" +msgstr "on laite (ei k�yt�ss� opendevice-asetuksen takia)" + +msgid "[New File]" +msgstr "[Uusi tiedosto]" + +msgid "[New DIRECTORY]" +msgstr "[uusi HAKEMISTO]" + +msgid "[File too big]" +msgstr "[Liian iso tiedosto]" + +msgid "[Permission Denied]" +msgstr "[Lupa kielletty]" + +msgid "E200: *ReadPre autocommands made the file unreadable" +msgstr "" +"E200: *ReadPre-autocommand-komennot tekiv�t tiedostosta lukukelvottoman" + +msgid "E201: *ReadPre autocommands must not change current buffer" +msgstr "E201: *ReadPre-autocommand-komennot eiv�t saa muuttaa puskuria" + +msgid "Vim: Reading from stdin...\n" +msgstr "Vim: Luetaan vakiosy�tteest�...\n" + +msgid "Reading from stdin..." +msgstr "Luetaan vakiosy�tteest�" + +#. Re-opening the original file failed! +msgid "E202: Conversion made file unreadable!" +msgstr "E202: Muunnos teki tiedostosta lukukelvottoman." + +msgid "[fifo/socket]" +msgstr "[fifo t. soketti]" + +msgid "[fifo]" +msgstr "[fifo]" + +msgid "[socket]" +msgstr "[soketti]" + +msgid "[character special]" +msgstr "[merkki erikoinen]" + +msgid "[RO]" +msgstr "[Luku]" + +# Carriage Return elikk� rivinvaihtomerkin er�s muoto/osa (vrt. LF) +msgid "[CR missing]" +msgstr "[CR puuttuu]" + +# New Line eli uusi rivinvaihtomerkki (ei CR, LF tai CR LF) +msgid "[NL found]" +msgstr "[NL puuttuu]" + +msgid "[long lines split]" +msgstr "[pitk�t rivit hajotettu]" + +msgid "[NOT converted]" +msgstr "[EI muunnettu]" + +msgid "[converted]" +msgstr "[muunnettu]" + +msgid "[crypted]" +msgstr "[salattu]" + +#, c-format +msgid "[CONVERSION ERROR in line %ld]" +msgstr "[MUUNNOSVIRHE rivill� %ld]" + +#, c-format +msgid "[ILLEGAL BYTE in line %ld]" +msgstr "[VIRHEELLINEN OKTETTI rivill� %ld]" + +msgid "[READ ERRORS]" +msgstr "[LUKUVIRHEIT�]" + +msgid "Can't find temp file for conversion" +msgstr "Ei voi l�yt�� v�liaikaistiedstoa muuntamiseksi" + +msgid "Conversion with 'charconvert' failed" +msgstr "Muunnos charconvert ep�onnistui" + +msgid "can't read output of 'charconvert'" +msgstr "charconvertin tulostetta ei voida lukea" + +msgid "E676: No matching autocommands for acwrite buffer" +msgstr "E676: Ei autocommand-komentoa acwrite-puskurille" + +msgid "E203: Autocommands deleted or unloaded buffer to be written" +msgstr "" +"E203: Autocommand-komennot poistivat tai vapauttivat puskurin, johon piti " +"kirjoittaa" + +msgid "E204: Autocommand changed number of lines in unexpected way" +msgstr "E204: Autocommand-komento muutti rivien m��r� odottamatta" + +msgid "NetBeans disallows writes of unmodified buffers" +msgstr "NetBeans ei salli kirjoittaa muokkaamattomiin puskureihin" + +msgid "Partial writes disallowed for NetBeans buffers" +msgstr "Osittaiset kirjoitukset kielletty NetBeans-puskureissa" + +msgid "is not a file or writable device" +msgstr "ei ole tiedosto tai kirjoitettava laite" + +msgid "writing to device disabled with 'opendevice' option" +msgstr "laitteeseen kirjoittaminen pois k�yt�st� opendevice-asetuksella" + +msgid "is read-only (add ! to override)" +msgstr "on kirjoitussuojattu (lis�� komentoon ! ohittaaksesi)" + +msgid "E506: Can't write to backup file (add ! to override)" +msgstr "" +"E506: Ei voi kirjoittaa varmuuskopiotiedostoon (lis�� komentoon ! " +"ohittaaksesi)" + +msgid "E507: Close error for backup file (add ! to override)" +msgstr "" +"E507: Varmuuskopiotiedoston sulkeminen ei onnistu (lis�� komentoon ! " +"ohittaaksesi)" + +msgid "E508: Can't read file for backup (add ! to override)" +msgstr "" +"E508: Varmuuskopiotiedostoa ei voi lukea (lis�� komentoon ! ohittaaksesi)" + +msgid "E509: Cannot create backup file (add ! to override)" +msgstr "" +"E509: Ei voi luoda varmuuskopiotiedostoa (lis�� komentoon ! ohittaaksesi)" + +msgid "E510: Can't make backup file (add ! to override)" +msgstr "" +"E510: Ei voi tehd� varmuuskopiotiedostoa (lis�� komentoon ! ohittaaksesi)" + +# tiet��kseni resurssiforkki on applen tiedostoj�rjestelm�n tunnistejuttujuttu +msgid "E460: The resource fork would be lost (add ! to override)" +msgstr "E460: resurssiosa h�vi�isi (lis�� komentoon ! ohittaaksesi)" + +msgid "E214: Can't find temp file for writing" +msgstr "E214: Ei voi l�yt�� v�liaikaistiedostoa kirjoitettavaksi" + +msgid "E213: Cannot convert (add ! to write without conversion)" +msgstr "" +"E213: Muunnos ei onnistu (lis�� komentoon ! kirjoittaaksesi muuntamatta)" + +msgid "E166: Can't open linked file for writing" +msgstr "E166: Linkitetyn tiedoston avaus kirjoittamista varten ei onnistu" + +msgid "E212: Can't open file for writing" +msgstr "E212: Tiedoston avaus kirjoittamista varten ei onnistu" + +msgid "E667: Fsync failed" +msgstr "E667: Fsync ei onnistunut" + +msgid "E512: Close failed" +msgstr "E512: Sulkeminen ei onnistunut" + +msgid "E513: write error, conversion failed (make 'fenc' empty to override)" +msgstr "E513: kirjoitusvirhe, muunnos ep�onnistui (tyhj�� fenc ohittaaksesi)" + +msgid "E514: write error (file system full?)" +msgstr "E514: kirjoitusvirhe (tiedostoj�rjestelm� t�ysi)" + +msgid " CONVERSION ERROR" +msgstr " MUUNNOSVIRHE" + +msgid "[Device]" +msgstr "[Laite]" + +msgid "[New]" +msgstr "[Uusi]" + +msgid " [a]" +msgstr " [a]" + +msgid " appended" +msgstr " lis�tty" + +msgid " [w]" +msgstr " [w]" + +msgid " written" +msgstr " kirjoitettu" + +msgid "E205: Patchmode: can't save original file" +msgstr "E205: Patch-tilassa ei voi tallentaa alkuper�istiedostoa" + +msgid "E206: patchmode: can't touch empty original file" +msgstr "E206: patch-tilassa ei voi muuttaa tyhj�� alkuper�istiedostoa" + +msgid "E207: Can't delete backup file" +msgstr "E207: Ei voi poistaa varmuuskopiota" + +msgid "" +"\n" +"WARNING: Original file may be lost or damaged\n" +msgstr "" +"\n" +"VAROITUS: Alkuper�istiedosto voi h�vit� tai vahingoittua\n" + +msgid "don't quit the editor until the file is successfully written!" +msgstr "�l� lopeta editoria kesken tallentamisen." + +msgid "[dos]" +msgstr "[dos]" + +msgid "[dos format]" +msgstr "[dos-muoto]" + +msgid "[mac]" +msgstr "[mac]" + +msgid "[mac format]" +msgstr "[mac-muoto]" + +msgid "[unix]" +msgstr "[unix]" + +msgid "[unix format]" +msgstr "[unix-muoto]" + +msgid "1 line, " +msgstr "1 rivi, " + +#, c-format +msgid "%ld lines, " +msgstr "%ld rivi�, " + +msgid "1 character" +msgstr "1 merkki" + +#, c-format +msgid "%ld characters" +msgstr "%ld merkki�" + +# ei rivinvaihtoja +msgid "[noeol]" +msgstr "[eiriviv.]" + +msgid "[Incomplete last line]" +msgstr "[Vajaa viimeinen rivi]" + +# Jos aukiolevaa tiedostoa s�rkkii toisella ohjelmalla +#. don't overwrite messages here +#. must give this prompt +#. don't use emsg() here, don't want to flush the buffers +msgid "WARNING: The file has been changed since reading it!!!" +msgstr "VAROITUS: tiedosto on muuttunut viime lukukerran j�lkeen!" + +msgid "Do you really want to write to it" +msgstr "Kirjoitetaanko" + +#, c-format +msgid "E208: Error writing to \"%s\"" +msgstr "E208: Virhe kirjoitettaessa tiedostoon %s" + +#, c-format +msgid "E209: Error closing \"%s\"" +msgstr "E209: Virhe suljettaessa tiedostoa %s" + +#, c-format +msgid "E210: Error reading \"%s\"" +msgstr "E210: Virhe luettaessa tiedostoa %s" + +msgid "E246: FileChangedShell autocommand deleted buffer" +msgstr "E246: FileChangedShell-autocommand poisti puskurin" + +#, c-format +msgid "E211: File \"%s\" no longer available" +msgstr "E211: Tiedostoa %s ei ole en��" + +#, c-format +msgid "" +"W12: Warning: File \"%s\" has changed and the buffer was changed in Vim as " +"well" +msgstr "" +"W12: Varoitus: Tiedostoa %s on muutettu ja Vimin puskurissa on muutoksia " +"tiedostoon" + +msgid "See \":help W12\" for more info." +msgstr ":help W12 kertoo lis�tietoja." + +#, c-format +msgid "W11: Warning: File \"%s\" has changed since editing started" +msgstr "W11: Varoitus: Tiedostoa %s on muutettu muokkauksen aloituksen j�lkeen" + +msgid "See \":help W11\" for more info." +msgstr ":help W11 kertoo lis�tietoja." + +#, c-format +msgid "W16: Warning: Mode of file \"%s\" has changed since editing started" +msgstr "" +"W16: Varoitus: Tiedoston %s oikeuksia on muutettu muokkauksen aloituksen " +"j�lkeen" + +msgid "See \":help W16\" for more info." +msgstr ":help W16 kertoo lis�tietoja." + +#, c-format +msgid "W13: Warning: File \"%s\" has been created after editing started" +msgstr "W13: Varoitus: Tiedosto %s on luotu muokkauksen aloituksen j�lkeen" + +msgid "Warning" +msgstr "Varoitus" + +# yll� olevien varoitusten ratkaisut +msgid "" +"&OK\n" +"&Load File" +msgstr "" +"&OK\n" +"&Avaa tiedosto uudelleen" + +#, c-format +msgid "E462: Could not prepare for reloading \"%s\"" +msgstr "E462: Ei voitu valmistella uudelleen avausta %s" + +#, c-format +msgid "E321: Could not reload \"%s\"" +msgstr "E321: Ei voitu uudelleenavata %s" + +msgid "--Deleted--" +msgstr "--Poistettu--" + +#, c-format +msgid "auto-removing autocommand: %s <buffer=%d>" +msgstr "poistetaan autocommand automaattisesti: %s <puskuri=%d>" + +#. the group doesn't exist +#, c-format +msgid "E367: No such group: \"%s\"" +msgstr "E367: Ryhm�� ei ole: %s" + +#, c-format +msgid "E215: Illegal character after *: %s" +msgstr "E215: Virheellinen merkki *:n j�lkeen: %s" + +#, c-format +msgid "E216: No such event: %s" +msgstr "E216: Eventti� ei ole: %s" + +#, c-format +msgid "E216: No such group or event: %s" +msgstr "E216: Ryhm�� tai eventti� ei ole: %s" + +#. Highlight title +msgid "" +"\n" +"--- Auto-Commands ---" +msgstr "" +"\n" +"--- Autocommandit ---" + +#, c-format +msgid "E680: <buffer=%d>: invalid buffer number " +msgstr "E680: <puskuri=%d>: virheellinen puskurinumero" + +msgid "E217: Can't execute autocommands for ALL events" +msgstr "E217: Ei voi suorittaa autocommandsia kaikille eventeille" + +msgid "No matching autocommands" +msgstr "Ei t�sm��vi� autocommandsia" + +msgid "E218: autocommand nesting too deep" +msgstr "E218: liian monta tasoa autocommandissa" + +#, c-format +msgid "%s Auto commands for \"%s\"" +msgstr "%s Autocommands kohteelle %s" + +#, c-format +msgid "Executing %s" +msgstr "Suoritetaan %s" + +#, c-format +msgid "autocommand %s" +msgstr "autocommand %s" + +msgid "E219: Missing {." +msgstr "E219: { puuttuu." + +msgid "E220: Missing }." +msgstr "E220: } puuttuu." + +msgid "E490: No fold found" +msgstr "E490: taitos puuttuu" + +msgid "E350: Cannot create fold with current 'foldmethod'" +msgstr "E350: Taitoksia ei voi tehd� t�ll� foldmethodilla" + +msgid "E351: Cannot delete fold with current 'foldmethod'" +msgstr "E351: Taitosta ei voi poistaa t�ll� foldmethodilla" + +#, c-format +msgid "+--%3ld lines folded " +msgstr "+--%3ld rivi� taitettu pois " + +msgid "E222: Add to read buffer" +msgstr "E222: Lis�� lukupuskuriin" + +msgid "E223: recursive mapping" +msgstr "E223: rekursiivinen kuvaus" + +#, c-format +msgid "E224: global abbreviation already exists for %s" +msgstr "E224: globaali lyhenne merkinn�lle %s on jo olemassa" + +#, c-format +msgid "E225: global mapping already exists for %s" +msgstr "E225: globaali kuvaus merkinn�lle %s on jo olemassa" + +#, c-format +msgid "E226: abbreviation already exists for %s" +msgstr "E226: lyhenne on jo olemassa %s" + +#, c-format +msgid "E227: mapping already exists for %s" +msgstr "E227: kuvaus on jo olemassa %s" + +msgid "No abbreviation found" +msgstr "Lyhennett� ei l�ydy" + +msgid "No mapping found" +msgstr "Kuvausta ei l�ydy" + +msgid "E228: makemap: Illegal mode" +msgstr "E228: makemap: Virheellinen tila" + +msgid "<cannot open> " +msgstr "<ei voi avata> " + +#, c-format +msgid "E616: vim_SelFile: can't get font %s" +msgstr "E616: vim_SelFile: ei saada fonttia %s" + +msgid "E614: vim_SelFile: can't return to current directory" +msgstr "E614: vim_SelFile: nykyiseen hakemistoon ei voi palata" + +msgid "Pathname:" +msgstr "Polku:" + +msgid "E615: vim_SelFile: can't get current directory" +msgstr "E615: vim_SelFile: nykyist� hakemistoa ei saada selville" + +msgid "OK" +msgstr "OK" + +msgid "Cancel" +msgstr "Peru" + +msgid "Vim dialog" +msgstr "Vim-ikkuna" + +msgid "Scrollbar Widget: Could not get geometry of thumb pixmap." +msgstr "Vierityspalkki: Pixmapin geometria ei selvi�" + +msgid "E232: Cannot create BalloonEval with both message and callback" +msgstr "E232: Ei voi luoda BalloonEvalia viestille ja callbackille" + +msgid "E229: Cannot start the GUI" +msgstr "E229: GUIn k�ynnistys ei onnistu" + +#, c-format +msgid "E230: Cannot read from \"%s\"" +msgstr "E230: Ei voi lukea kohteesta %s" + +msgid "E665: Cannot start GUI, no valid font found" +msgstr "E665: Ei voi avata GUIta, sopivaa fonttia ei l�ydy" + +msgid "E231: 'guifontwide' invalid" +msgstr "E231: guifontwide virheellinen" + +msgid "E599: Value of 'imactivatekey' is invalid" +msgstr "E599: imactivatekeyn arvo on virheellinen" + +#, c-format +msgid "E254: Cannot allocate color %s" +msgstr "E254: V�ri� %s ei voi m��ritell�" + +msgid "No match at cursor, finding next" +msgstr "Ei t�sm�yst� kursorin alla, etsit��n seuraava" + +msgid "Vim dialog..." +msgstr "Vim-ikkuna..." + +msgid "" +"&Yes\n" +"&No\n" +"&Cancel" +msgstr "" +"&Kyll�\n" +"&Ei\n" +"&Peru" + +msgid "Input _Methods" +msgstr "Sy�te_menetelm�t" + +msgid "VIM - Search and Replace..." +msgstr "VIM - Etsi ja korvaa..." + +msgid "VIM - Search..." +msgstr "VIM - Etsi..." + +msgid "Find what:" +msgstr "Etsi:" + +msgid "Replace with:" +msgstr "Korvaa:" + +#. whole word only button +msgid "Match whole word only" +msgstr "Korvaa kokonaisia sanoja" + +#. match case button +msgid "Match case" +msgstr "Kirjaintaso" + +msgid "Direction" +msgstr "Suunta" + +#. 'Up' and 'Down' buttons +msgid "Up" +msgstr "Yl�s" + +msgid "Down" +msgstr "Alas" + +msgid "Find Next" +msgstr "Etsi seuraava" + +msgid "Replace" +msgstr "Korvaa" + +msgid "Replace All" +msgstr "Korvaa kaikki" + +msgid "Vim: Received \"die\" request from session manager\n" +msgstr "Vim: sessiomanageri l�hetti die-pyynn�n\n" + +msgid "Close" +msgstr "Sulje" + +msgid "New tab" +msgstr "Uusi v�lilehti" + +msgid "Open Tab..." +msgstr "Avaa v�lilehti..." + +msgid "Vim: Main window unexpectedly destroyed\n" +msgstr "Vim: P��ikkuna tuhoutui odottamatta\n" + +msgid "Font Selection" +msgstr "Fontin valinta" + +msgid "Used CUT_BUFFER0 instead of empty selection" +msgstr "K�ytettiin CUT_BUFFER0:aa tyhj�n valinnan sijaan" + +msgid "&Filter" +msgstr "&Suodata" + +msgid "&Cancel" +msgstr "&Peru" + +msgid "Directories" +msgstr "Hakemistot" + +msgid "Filter" +msgstr "Suodatus" + +msgid "&Help" +msgstr "O&hje" + +msgid "Files" +msgstr "Tiedostot" + +msgid "&OK" +msgstr "&Ok" + +msgid "Selection" +msgstr "Valinta" + +msgid "Find &Next" +msgstr "Hae &seuraava" + +msgid "&Replace" +msgstr "Ko&rvaa" + +msgid "Replace &All" +msgstr "Korvaa k&aikki" + +msgid "&Undo" +msgstr "&Kumoa" + +#, c-format +msgid "E610: Can't load Zap font '%s'" +msgstr "E610: Zap-fontin latause ei onnistu %s" + +#, c-format +msgid "E611: Can't use font %s" +msgstr "E611: Ei voi k�ytt�� fonttia %s" + +# varmaan SIGTERM, ei SIGKILL tms. +msgid "" +"\n" +"Sending message to terminate child process.\n" +msgstr "" +"\n" +"L�hetet��n viesti� lapsiprosessien terminoimiseksi.\n" + +#, c-format +msgid "E671: Cannot find window title \"%s\"" +msgstr "E671: Ikkunan otsikkoa ei l�ydy %s" + +# OLE on object linking and embedding p� windowska +#, c-format +msgid "E243: Argument not supported: \"-%s\"; Use the OLE version." +msgstr "E243: Argumenttia ei tueta: -%s, k�yt� OLE-versiota" + +# MDI eli windowsin moni-ikkunasovellus +msgid "E672: Unable to open window inside MDI application" +msgstr "E672: Ikkunaa ei voitu avata MDI-sovellukseen" + +msgid "Close tab" +msgstr "Sulje v�lilehti" + +msgid "Open tab..." +msgstr "Avaa v�lilehti..." + +msgid "Find string (use '\\\\' to find a '\\')" +msgstr "Etsi merkkijonoa (\\\\:ll� l�yt�� \\:t)" + +msgid "Find & Replace (use '\\\\' to find a '\\')" +msgstr "Etsi ja korvaa (\\\\:ll� l�yt�� \\:t)" + +#. We fake this: Use a filter that doesn't select anything and a default +#. * file name that won't be used. +msgid "Not Used" +msgstr "Ei k�yt�ss�" + +msgid "Directory\t*.nothing\n" +msgstr "Hakemisto\t*.nothing\n" + +msgid "Vim E458: Cannot allocate colormap entry, some colors may be incorrect" +msgstr "Vim E458: Ei voi varata v�rikartan alkiota, v�rit voivat menn� v��rin" + +#, c-format +msgid "E250: Fonts for the following charsets are missing in fontset %s:" +msgstr "E250: Seuraavien merkist�joukkojen fontit puuttuvat fontsetist� %s:" + +#, c-format +msgid "E252: Fontset name: %s" +msgstr "E252: Fontsetin nimi: %s" + +#, c-format +msgid "Font '%s' is not fixed-width" +msgstr "Fontti %s ei ole tasav�linen" + +#, c-format +msgid "E253: Fontset name: %s\n" +msgstr "E253: Fontsetin nimi: %s\n" + +#, c-format +msgid "Font0: %s\n" +msgstr "Fontti0. %s\n" + +#, c-format +msgid "Font1: %s\n" +msgstr "Fontti1: %s\n" + +#, c-format +msgid "Font%ld width is not twice that of font0\n" +msgstr "Fontti%ld:n leveys ei ole kaksi kertaa fontti0:n\n" + +#, c-format +msgid "Font0 width: %ld\n" +msgstr "Fontti0:n leveys: %ld\n" + +#, c-format +msgid "" +"Font1 width: %ld\n" +"\n" +msgstr "" +"Fontti1:n leveys: %ld\n" +"\n" + +msgid "Invalid font specification" +msgstr "Virheellinen fonttim��ritys" + +msgid "&Dismiss" +msgstr "&Ohita" + +msgid "no specific match" +msgstr "ei tarkkaa t�sm�yst�" + +msgid "Vim - Font Selector" +msgstr "Vim - fonttivalitsin" + +msgid "Name:" +msgstr "Nimi:" + +#. create toggle button +msgid "Show size in Points" +msgstr "N�yt� koko pistein�" + +msgid "Encoding:" +msgstr "Koodaus:" + +msgid "Font:" +msgstr "Fontti:" + +msgid "Style:" +msgstr "Tyyli:" + +msgid "Size:" +msgstr "Koko:" + +msgid "E256: Hangul automata ERROR" +msgstr "E256: Hangu-automaattivirhe" + +msgid "E550: Missing colon" +msgstr "E550: kaksoispiste puuttuu" + +msgid "E551: Illegal component" +msgstr "E551: Virheellinen komponentti" + +msgid "E552: digit expected" +msgstr "E552: pit�isi olla numero" + +#, c-format +msgid "Page %d" +msgstr "Sivu %d" + +msgid "No text to be printed" +msgstr "Ei teksti� tulostettavaksi" + +#, c-format +msgid "Printing page %d (%d%%)" +msgstr "Tulostetaan sivua %d (%d %%)" + +#, c-format +msgid " Copy %d of %d" +msgstr " Kopio %d/%d" + +#, c-format +msgid "Printed: %s" +msgstr "Tulostettu: %s" + +msgid "Printing aborted" +msgstr "Tulostus peruttu" + +msgid "E455: Error writing to PostScript output file" +msgstr "E455: Virhe kirjoitettaessa PostScripti� tiedostoon" + +#, c-format +msgid "E624: Can't open file \"%s\"" +msgstr "E624: Ei voi avata tiedostoa %s" + +#, c-format +msgid "E457: Can't read PostScript resource file \"%s\"" +msgstr "E457: Ei voi lukea PostScript-resurssitiedostoa %s" + +#, c-format +msgid "E618: file \"%s\" is not a PostScript resource file" +msgstr "E618: tiedosto %s ei ole PostScript-resurssitiedosto" + +#, c-format +msgid "E619: file \"%s\" is not a supported PostScript resource file" +msgstr "E619: tiedosto %s ei ole tuettu PostScript-resurssitiedosto" + +#, c-format +msgid "E621: \"%s\" resource file has wrong version" +msgstr "E621: resurssitiedoston %s versio on v��r�" + +msgid "E673: Incompatible multi-byte encoding and character set." +msgstr "E673: Tukematon monitvauinen merkist�koodaus ja merkist�." + +msgid "E674: printmbcharset cannot be empty with multi-byte encoding." +msgstr "E674: printmbcharset ei voi olla tyhj� monitavuiselle koodaukselle." + +msgid "E675: No default font specified for multi-byte printing." +msgstr "E675: Ei oletusfonttia monitavuiseen tulostukseen" + +msgid "E324: Can't open PostScript output file" +msgstr "E324: PostScript-tulostetiedoston avaus ei onnistu" + +#, c-format +msgid "E456: Can't open file \"%s\"" +msgstr "E456: Tiedoston %s avaus ei onnistu" + +msgid "E456: Can't find PostScript resource file \"prolog.ps\"" +msgstr "E456: PostScript-resurssitiedostoa prolog.ps ei l�ydy" + +msgid "E456: Can't find PostScript resource file \"cidfont.ps\"" +msgstr "E456: PostScript-resurssitiedostoa cidfont.ps ei l�ydy" + +#, c-format +msgid "E456: Can't find PostScript resource file \"%s.ps\"" +msgstr "E456: Postscript-resurssitiedosta %s.ps ei l�ydy" + +#, c-format +msgid "E620: Unable to convert to print encoding \"%s\"" +msgstr "E620: Tulostuskoodaukseen %s muunto ei onnistu" + +msgid "Sending to printer..." +msgstr "L�hetet��n tulostimelle..." + +msgid "E365: Failed to print PostScript file" +msgstr "E365: PostScript-tiedoston tulostus ep�onnistui" + +msgid "Print job sent." +msgstr "Tulostusty� l�hetetty." + +msgid "Add a new database" +msgstr "Lis�� uusi tietokanta" + +msgid "Query for a pattern" +msgstr "Hae kuviota" + +msgid "Show this message" +msgstr "N�yt� t�m� viesti" + +msgid "Kill a connection" +msgstr "Tapa yhteys" + +msgid "Reinit all connections" +msgstr "Alusta uudelleen yhteydet" + +msgid "Show connections" +msgstr "N�yt� yhteydet" + +#, c-format +msgid "E560: Usage: cs[cope] %s" +msgstr "E560: K�ytt�: cs[cope] %s" + +msgid "This cscope command does not support splitting the window.\n" +msgstr "T�m� cscope-komento ei tue ikkunan jakamista.\n" + +msgid "E562: Usage: cstag <ident>" +msgstr "E562: K�ytt�: cstag <ident>" + +msgid "E257: cstag: tag not found" +msgstr "E257: cstag: t�gia ei l�ydy" + +#, c-format +msgid "E563: stat(%s) error: %d" +msgstr "E563: stat(%s)-virhe: %d" + +msgid "E563: stat error" +msgstr "E563: stat-virhe" + +#, c-format +msgid "E564: %s is not a directory or a valid cscope database" +msgstr "E564: %s ei ole hakemisto eik� cscope-tietokanta" + +#, c-format +msgid "Added cscope database %s" +msgstr "Lis�tty cscope-tietokanta %s" + +#, c-format +msgid "E262: error reading cscope connection %ld" +msgstr "E262: Virhe luettaessa cscope-yhteytt� %ld" + +msgid "E561: unknown cscope search type" +msgstr "E561: tuntematon cscope-hakutyyppi" + +msgid "E566: Could not create cscope pipes" +msgstr "E566: Ei voitu luoda cscope-putkia" + +msgid "E622: Could not fork for cscope" +msgstr "E622: Ei voitu haarauttaa cscopea" + +msgid "cs_create_connection exec failed" +msgstr "cs_create_connection ep�onnistui" + +msgid "cs_create_connection: fdopen for to_fp failed" +msgstr "cs_create_connection: fdopen to_fp ep�onnistui" + +msgid "cs_create_connection: fdopen for fr_fp failed" +msgstr "cs_create_connection: fdopen fr_fp ep�onnistui" + +msgid "E623: Could not spawn cscope process" +msgstr "E623: Cscope-prosessin luonti ep�onnistui" + +msgid "E567: no cscope connections" +msgstr "E567: ei cscope-yhteyksi�" + +#, c-format +msgid "E259: no matches found for cscope query %s of %s" +msgstr "E259: ei t�sm�yksi� cscope-hakuun %s/%s" + +#, c-format +msgid "E469: invalid cscopequickfix flag %c for %c" +msgstr "E469: virheellinen cscopequickfix-asetus %c kohteelle %c" + +msgid "cscope commands:\n" +msgstr "cscope-komennot:\n" + +#, c-format +msgid "%-5s: %-30s (Usage: %s)" +msgstr "%-5s: %-30s (K�ytt�: %s)" + +#, c-format +msgid "E625: cannot open cscope database: %s" +msgstr "E625: ei voi avata csope-tietokantaa %s" + +msgid "E626: cannot get cscope database information" +msgstr "E626: ei voi hakea cscope-tietokannan tietoja" + +msgid "E568: duplicate cscope database not added" +msgstr "E568: kaksoiskappaletta cscope-tietokannasta ei lis�tty" + +msgid "E569: maximum number of cscope connections reached" +msgstr "E569: enimm�ism��r� cscope-yhteyksi� otettu" + +#, c-format +msgid "E261: cscope connection %s not found" +msgstr "E261: cscope-yhteys %s puuttuu" + +#, c-format +msgid "cscope connection %s closed" +msgstr "cscope-yhteys %s on katkaistu" + +#. should not reach here +msgid "E570: fatal error in cs_manage_matches" +msgstr "E570: kriittinen virhe cs_manage_matches-funktiossa" + +#, c-format +msgid "Cscope tag: %s" +msgstr "Cscope-t�gi: %s" + +msgid "" +"\n" +" # line" +msgstr "" +"\n" +" # rivi" + +msgid "filename / context / line\n" +msgstr "tiedosto / konteksti / rivi\n" + +#, c-format +msgid "E609: Cscope error: %s" +msgstr "E609: Cscope-virhe: %s" + +msgid "All cscope databases reset" +msgstr "Kaikki cscope-tietokannat nollattu" + +msgid "no cscope connections\n" +msgstr "ei cscope-yhteyksi�\n" + +msgid " # pid database name prepend path\n" +msgstr " # pid tietokanta lis�yspolku\n" + +msgid "" +"???: Sorry, this command is disabled, the MzScheme library could not be " +"loaded." +msgstr "???: Sori, komento ei toimi, MzScheme-kirjastoa ei voitu ladata." + +msgid "invalid expression" +msgstr "virheellinen ilmaus" + +msgid "expressions disabled at compile time" +msgstr "ilmaukset poistettu k�yt�st� k��nn�saikana" + +msgid "hidden option" +msgstr "piilotettu asetus" + +msgid "unknown option" +msgstr "tuntematon asetus" + +msgid "window index is out of range" +msgstr "ikkunan indeksi alueen ulkopuolella" + +msgid "couldn't open buffer" +msgstr "ei voitu avata puskuria" + +msgid "cannot save undo information" +msgstr "ei voitu tallentaa kumoustietoja" + +msgid "cannot delete line" +msgstr "ei voitu poistaa rivi�" + +msgid "cannot replace line" +msgstr "ei voitu korvata rivi�" + +msgid "cannot insert line" +msgstr "ei voitu lis�t� rivi�" + +msgid "string cannot contain newlines" +msgstr "merkkijono ei saa sis�lt�� rivinvaihtoja" + +msgid "Vim error: ~a" +msgstr "Vim-virhe: ~a" + +msgid "Vim error" +msgstr "Vim-virhe" + +msgid "buffer is invalid" +msgstr "puskuri on virheellinen" + +msgid "window is invalid" +msgstr "ikkuna on virheellinen" + +msgid "linenr out of range" +msgstr "rivinumero arvoalueen ulkopuolelta" + +msgid "not allowed in the Vim sandbox" +msgstr "ei sallittu Vimin hiekkalaatikossa" + +msgid "" +"E263: Sorry, this command is disabled, the Python library could not be " +"loaded." +msgstr "" +"E263: Sori, komento ei toimi, Python-kirjaston lataaminen ei onnistunut." + +msgid "E659: Cannot invoke Python recursively" +msgstr "E659: Pythonia ei voi kutsua rekursiivisesti" + +msgid "can't delete OutputObject attributes" +msgstr "ei voi poistaa OutputObject-attribuutteja" + +msgid "softspace must be an integer" +msgstr "softspacen pit�� olla kokonaisluku" + +msgid "invalid attribute" +msgstr "virheellinen attribuutti" + +msgid "writelines() requires list of strings" +msgstr "writelines()-komennolle pit�� antaa merkkijonolista" + +msgid "E264: Python: Error initialising I/O objects" +msgstr "E264: Python: Virhe IO-olioiden alustuksessa" + +msgid "attempt to refer to deleted buffer" +msgstr "yritettiin viitata poistettuun puskuriin" + +msgid "line number out of range" +msgstr "rivinumero arvoalueen ulkopuolella" + +#, c-format +msgid "<buffer object (deleted) at %p>" +msgstr "<puskuriolio (poistettu) kohdassa %p>" + +msgid "invalid mark name" +msgstr "virheellinen merkin nimi" + +msgid "no such buffer" +msgstr "puskuria ei ole" + +msgid "attempt to refer to deleted window" +msgstr "yritettiin viitata poistettuun ikkunaan" + +msgid "readonly attribute" +msgstr "kirjoitussuojattu attribuutti" + +msgid "cursor position outside buffer" +msgstr "kursorin sijainti puskurin ulkopuolella" + +#, c-format +msgid "<window object (deleted) at %p>" +msgstr "<ikkunaolio (poistettu) kohdassa %p>" + +#, c-format +msgid "<window object (unknown) at %p>" +msgstr "<ikkunaolio (tuntematon) kohdassa %p>" + +#, c-format +msgid "<window %d>" +msgstr "<ikkuna %d>" + +msgid "no such window" +msgstr "ikkunaa ei ole" + +msgid "E265: $_ must be an instance of String" +msgstr "E265: muuttujan $_ pit�� olla Stringin instanssi" + +msgid "" +"E266: Sorry, this command is disabled, the Ruby library could not be loaded." +msgstr "E266: Sori, komento ei toimi, Ruby-kirjastoa ei voitu ladata." + +msgid "E267: unexpected return" +msgstr "E267: odotuksenvastainen return" + +msgid "E268: unexpected next" +msgstr "E268: Odotuksenvastainen next" + +msgid "E269: unexpected break" +msgstr "E269: Odotuksenvastainen break" + +msgid "E270: unexpected redo" +msgstr "E270: odotuksenvastainen redo" + +msgid "E271: retry outside of rescue clause" +msgstr "E271: retry rescuen ulkopuolella" + +msgid "E272: unhandled exception" +msgstr "E272: k�sittelem�t�n poikkeus" + +#, c-format +msgid "E273: unknown longjmp status %d" +msgstr "E273: tuntematon longjmp-tila %d" + +msgid "Toggle implementation/definition" +msgstr "Vaihda toteutuksen ja m��ritelm�n v�lill�" + +msgid "Show base class of" +msgstr "N�yt� kantaluokka kohteelle" + +msgid "Show overridden member function" +msgstr "N�yt� korvattu j�senfunktio" + +msgid "Retrieve from file" +msgstr "J�ljit� tiedostosta" + +msgid "Retrieve from project" +msgstr "J�ljit� projektista" + +msgid "Retrieve from all projects" +msgstr "J�ljit� kaikista projekteista" + +msgid "Retrieve" +msgstr "J�ljit�" + +msgid "Show source of" +msgstr "N�yt� l�hdekoodi kohteelle" + +msgid "Find symbol" +msgstr "Etsi symboli" + +msgid "Browse class" +msgstr "Selaa luokkaa" + +msgid "Show class in hierarchy" +msgstr "N�yt� luokka hierarkiassa" + +msgid "Show class in restricted hierarchy" +msgstr "N�yt� luokka rajoitetussa hierarkiassa" + +msgid "Xref refers to" +msgstr "Xref viittaa kohteeseen" + +msgid "Xref referred by" +msgstr "Xref viitattu kohteesta" + +msgid "Xref has a" +msgstr "Xref sis�lt�� kohteen" + +msgid "Xref used by" +msgstr "Xrefi� k�ytt��" + +msgid "Show docu of" +msgstr "N�yt� dokumentti kohteelle" + +msgid "Generate docu for" +msgstr "Luo dokumentti kohteelle" + +msgid "" +"Cannot connect to SNiFF+. Check environment (sniffemacs must be found in " +"$PATH).\n" +msgstr "" +"Ei voida yhdist�� SNiFF+:aan. Tarkista ymp�rist�muuttujat (sniffemacsin " +"l�yty� polkumuuttujasta $PATH).\n" + +msgid "E274: Sniff: Error during read. Disconnected" +msgstr "E274: Sniff: Virhe luettaessa, yhteys katkaistu" + +msgid "SNiFF+ is currently " +msgstr "SNiFF+ " + +msgid "not " +msgstr "ei ole " + +msgid "connected" +msgstr "yhdistetty" + +#, c-format +msgid "E275: Unknown SNiFF+ request: %s" +msgstr "E275: Tuntematon SNiFF+-pyynt�: %s" + +msgid "E276: Error connecting to SNiFF+" +msgstr "E276: Virhe yhdistett�ess� SNiFF+:aan" + +msgid "E278: SNiFF+ not connected" +msgstr "E278: SNiFF+ ei ole yhdistetty" + +msgid "E279: Not a SNiFF+ buffer" +msgstr "E279: Ei ole SNiFF+-puskuri" + +msgid "Sniff: Error during write. Disconnected" +msgstr "Sniff: Virhe kirjoituksessa, yhteys katkaistu" + +msgid "invalid buffer number" +msgstr "virheellinen puskurinumero" + +msgid "not implemented yet" +msgstr "ei toteutettu" + +#. ??? +msgid "cannot set line(s)" +msgstr "ei voi asettaa rivej�" + +msgid "mark not set" +msgstr "merkko ei ole asetettu" + +#, c-format +msgid "row %d column %d" +msgstr "rivi %d sarake %d" + +msgid "cannot insert/append line" +msgstr "rivin lis�ys ei onnistu" + +msgid "unknown flag: " +msgstr "tuntematon asetus: " + +msgid "unknown vimOption" +msgstr "tuntematon vimOption" + +msgid "keyboard interrupt" +msgstr "n�pp�imist�keskeytys" + +msgid "vim error" +msgstr "vim-virhe" + +msgid "cannot create buffer/window command: object is being deleted" +msgstr "ei voi luoda puskuri- tai ikkunakomentoa, olio on poistumassa" + +msgid "" +"cannot register callback command: buffer/window is already being deleted" +msgstr "callbackia ei voi rekister�id�: puskuri tai ikkuna on poistettu" + +#. This should never happen. Famous last word? +msgid "" +"E280: TCL FATAL ERROR: reflist corrupt!? Please report this to vim-dev@vim." +"org" +msgstr "" +"E280: kriittinen TCL-virhe: reflist hajalla? Ilmoita asiasta " +"postituslistalle vim-dev@vim.org" + +msgid "cannot register callback command: buffer/window reference not found" +msgstr "callbackia ei voi rekister�id�: puskurin tai ikkunan viitett� ei l�ydy" + +msgid "" +"E571: Sorry, this command is disabled: the Tcl library could not be loaded." +msgstr "E571: Sori, komento ei toimi, Tcl-kirjastoa ei voitu ladata." + +msgid "" +"E281: TCL ERROR: exit code is not int!? Please report this to vim-dev@vim.org" +msgstr "" +"E281: TCL-virhe: lopetuskoodi ei ole kokonaisluku? Ilmoita asiasta " +"postituslistalle vim-dev@vim.org" + +#, c-format +msgid "E572: exit code %d" +msgstr "E572: palautusarvo %d" + +msgid "cannot get line" +msgstr "ei voida hakea rivi�" + +msgid "Unable to register a command server name" +msgstr "Komentopalvelimen nimen rekister�inti ei onnistu" + +msgid "E248: Failed to send command to the destination program" +msgstr "E248: Komennon l�hetys kohdeohjelmalle ei onnistu" + +#, c-format +msgid "E573: Invalid server id used: %s" +msgstr "E573: Virheellinen palvelimen tunniste: %s" + +msgid "E251: VIM instance registry property is badly formed. Deleted!" +msgstr "E251: VIMin instanssin rekisteriarvo on virheellinen, poistettiin." + +msgid "Unknown option argument" +msgstr "Tuntematon asetusargumentti" + +msgid "Too many edit arguments" +msgstr "Liikaa muokkausargumentteja" + +msgid "Argument missing after" +msgstr "Argumentti puuttuu kohdasta" + +msgid "Garbage after option argument" +msgstr "Roskaa argumentin per�ss�" + +msgid "Too many \"+command\", \"-c command\" or \"--cmd command\" arguments" +msgstr "Liikaa +komentoja, -c-komentoja tai --cmd-komentoja" + +msgid "Invalid argument for" +msgstr "V��r� argumentti valitsimelle" + +#, c-format +msgid "%d files to edit\n" +msgstr "%d tiedostoa muokattavana\n" + +msgid "This Vim was not compiled with the diff feature." +msgstr "T�h�n Vimiin ei ole k��nnetty diff-toimintoja mukaan." + +msgid "Attempt to open script file again: \"" +msgstr "Yritettiin avata skriptitiedostoa uudestaan:" + +msgid "Cannot open for reading: \"" +msgstr "Ei voi avata luettavaksi: " + +msgid "Cannot open for script output: \"" +msgstr "Ei voi avata skriptin tulostetta varten: " + +msgid "Vim: Error: Failure to start gvim from NetBeans\n" +msgstr "Vim: Virhe: Gvimin k�ynnistys NetBeansist� ei onnistu\n" + +msgid "Vim: Warning: Output is not to a terminal\n" +msgstr "Vim: Varoitus: Tuloste ei mene terminaalille\n" + +msgid "Vim: Warning: Input is not from a terminal\n" +msgstr "Vim: Varoitus: Sy�te ei tule terminaalilta\n" + +#. just in case.. +msgid "pre-vimrc command line" +msgstr "esi-vimrc-komentorivi" + +#, c-format +msgid "E282: Cannot read from \"%s\"" +msgstr "E282: Ei voida lukea kohteesta %s" + +msgid "" +"\n" +"More info with: \"vim -h\"\n" +msgstr "" +"\n" +"Lis�tietoja: \"vim -h\"\n" + +msgid "[file ..] edit specified file(s)" +msgstr "[tiedosto ..] muokkaa tiedostoja" + +msgid "- read text from stdin" +msgstr "- lue vakiosy�tteest�" + +msgid "-t tag edit file where tag is defined" +msgstr "-t t�gi muokkaa tiedostoa t�gist�" + +msgid "-q [errorfile] edit file with first error" +msgstr "-q [virhetiedosto] muokkaa tiedostoa ensimm�isest� virheest�" + +msgid "" +"\n" +"\n" +"usage:" +msgstr "" +"\n" +"\n" +"k�ytt�:" + +msgid " vim [arguments] " +msgstr " vim [argumentit] " + +msgid "" +"\n" +" or:" +msgstr "" +"\n" +" tai:" + +msgid "" +"\n" +"Where case is ignored prepend / to make flag upper case" +msgstr "" +"\n" +"Jos aakkoslaji on ohitettu, lis�� alkuun / tehd�ksesi asetuksesta " +"suuraakkosia" + +msgid "" +"\n" +"\n" +"Arguments:\n" +msgstr "" +"\n" +"\n" +"Argumentit:\n" + +msgid "--\t\t\tOnly file names after this" +msgstr "--\t\t\tvain tiedostonimi� t�m�n j�lkeen" + +msgid "--literal\t\tDon't expand wildcards" +msgstr "--literal\t\t�l� k�sittele jokerimerkkej� " + +msgid "-register\t\tRegister this gvim for OLE" +msgstr "-register\t\trekister�i gvim OLEa varten" + +msgid "-unregister\t\tUnregister gvim for OLE" +msgstr "-unregister\t\tPoista gvim OLE-rekisterist�" + +msgid "-g\t\t\tRun using GUI (like \"gvim\")" +msgstr "-g\t\t\tAvaa GUI (kuten gvimill�)" + +msgid "-f or --nofork\tForeground: Don't fork when starting GUI" +msgstr "-f tai --nofork\tEdustalle: �l� haarauta GUIn k�ynnistyksess�" + +msgid "-v\t\t\tVi mode (like \"vi\")" +msgstr "-v\t\t\tVi-tila (kuten vill�)" + +msgid "-e\t\t\tEx mode (like \"ex\")" +msgstr "-e\t\t\tEx-tila (kute exill�)" + +msgid "-s\t\t\tSilent (batch) mode (only for \"ex\")" +msgstr "-s\t\t\tHiljainen (er�ajo)tila (vain exill�)" + +msgid "-d\t\t\tDiff mode (like \"vimdiff\")" +msgstr "-d\t\t\tDiff-tila (kuten vimdiffill�)" + +msgid "-y\t\t\tEasy mode (like \"evim\", modeless)" +msgstr "-y\t\t\tHelppok�ytt�tila (kuten evimiss�, ilman tiloja)" + +msgid "-R\t\t\tReadonly mode (like \"view\")" +msgstr "-R\t\t\tKirjoitussuojattu tila (kuten view'lla)" + +msgid "-Z\t\t\tRestricted mode (like \"rvim\")" +msgstr "-Z\t\t\tRajoitettu tila (kuten rvimill�)" + +msgid "-m\t\t\tModifications (writing files) not allowed" +msgstr "-m\t\t\tMuokkaukset (kirjoittaminen tiedostoon) pois k�yt�st�" + +msgid "-M\t\t\tModifications in text not allowed" +msgstr "-M\t\t\tTekstin muokkaus pois k�yt�st�" + +msgid "-b\t\t\tBinary mode" +msgstr "-b\t\t\tBin��ritila" + +msgid "-l\t\t\tLisp mode" +msgstr "-l\t\t\tLisp-tila" + +msgid "-C\t\t\tCompatible with Vi: 'compatible'" +msgstr "-C\t\t\tVi-yhteensopivuustila: compatible" + +msgid "-N\t\t\tNot fully Vi compatible: 'nocompatible'" +msgstr "-N\t\t\tEi Vi-yhteensopivuutta: nocompatible" + +msgid "-V[N][fname]\t\tBe verbose [level N] [log messages to fname]" +msgstr "" +"-V[N][tnimi]\t\tMonisanainen tuloste [Taso N] [kirjoita tuloste tnimeen] " + +msgid "-D\t\t\tDebugging mode" +msgstr "-D\t\t\tVianetsint�tila" + +msgid "-n\t\t\tNo swap file, use memory only" +msgstr "-n\t\t\tEi swap-tiedostoja, k�yt� muistia" + +msgid "-r\t\t\tList swap files and exit" +msgstr "-r\t\t\tLuetteloi swap-tiedostot ja poistu" + +msgid "-r (with file name)\tRecover crashed session" +msgstr "-r (tiedostonimi)\tPalauta kaatunut sessio" + +msgid "-L\t\t\tSame as -r" +msgstr "-L\t\t\tkuten -r" + +msgid "-f\t\t\tDon't use newcli to open window" +msgstr "-f\t\t\t�l� k�yt� newcli:t� ikkunan avaamiseen" + +msgid "-dev <device>\t\tUse <device> for I/O" +msgstr "-dev <laite>\t\tK�yt� <laitetta> IO:hon" + +msgid "-A\t\t\tstart in Arabic mode" +msgstr "-A\t\t\tk�ynnist� arabia-tilassa" + +msgid "-H\t\t\tStart in Hebrew mode" +msgstr "-H\t\t\tk�ynnist� heprea-tilassa" + +msgid "-F\t\t\tStart in Farsi mode" +msgstr "-F\t\t\tk�ynnist� farsi-tilassa" + +msgid "-T <terminal>\tSet terminal type to <terminal>" +msgstr "-T <terminaali>\tAseta terminaalin tyypiksi <terminaali>" + +msgid "-u <vimrc>\t\tUse <vimrc> instead of any .vimrc" +msgstr "-u <vimrc>\t\tK�yt� <vimrc>-tiedostoa .vimrc:iden sijasta" + +msgid "-U <gvimrc>\t\tUse <gvimrc> instead of any .gvimrc" +msgstr "-U <gvimrc>\t\tK�yt� <gvimrc>-tiedostoa .gvimrc:iden sijasta" + +msgid "--noplugin\t\tDon't load plugin scripts" +msgstr "--noplugin\t\t�l� lataa liit�nn�isi�" + +msgid "-p[N]\t\tOpen N tab pages (default: one for each file)" +msgstr "-p[N]\t\tAvaa N v�lilehte� (oletus: yksi per tiedosto)" + +msgid "-o[N]\t\tOpen N windows (default: one for each file)" +msgstr "-o[N]\t\tAvaa N ikkunaa (oletus: yksi per tiedosto)" + +msgid "-O[N]\t\tLike -o but split vertically" +msgstr "-O[N]\t\tKuten -o, mutta jaa pystysuunnassa" + +msgid "+\t\t\tStart at end of file" +msgstr "+\t\t\tAloita tiedoston lopusta" + +msgid "+<lnum>\t\tStart at line <lnum>" +msgstr "+<rivi>\t\t\tAloita rivilt� <rivi>" + +msgid "--cmd <command>\tExecute <command> before loading any vimrc file" +msgstr "--cmd <komento>\tSuorita <komento> ennen vimrc:iden latausta" + +msgid "-c <command>\t\tExecute <command> after loading the first file" +msgstr "-c <komento>\t\tSuorita <komento> ensimm�isen tiedoston latauduttua" + +msgid "-S <session>\t\tSource file <session> after loading the first file" +msgstr "-S <sessio>\t\tLataa <sessio> ensimm�isen tiedoston latauduttua" + +msgid "-s <scriptin>\tRead Normal mode commands from file <scriptin>" +msgstr "-s <skripti>\tLue normaalitilan komentoja <skripti>-tiedostosta" + +msgid "-w <scriptout>\tAppend all typed commands to file <scriptout>" +msgstr "-w <skripti>\tLis�� kirjoitetut komennot <skripti>-tiedostoon" + +msgid "-W <scriptout>\tWrite all typed commands to file <scriptout>" +msgstr "-W <skripti>\tKirjoita komennot <skripti>-tiedostoon" + +msgid "-x\t\t\tEdit encrypted files" +msgstr "-x\t\t\tMuokkaa salattua tiedostoa" + +msgid "-display <display>\tConnect vim to this particular X-server" +msgstr "-display <n�ytt�>\tYhdist� vim tiettyyn X-palvelimeen" + +msgid "-X\t\t\tDo not connect to X server" +msgstr "-X\t\t\t�l� yhdist� X-palvelimeen" + +msgid "--remote <files>\tEdit <files> in a Vim server if possible" +msgstr "" +"--remote <tiedostoja>\tMuokkaa <tiedostoja> Vim-palvelimessa, jos mahdollista" + +msgid "--remote-silent <files> Same, don't complain if there is no server" +msgstr "" +"--remote-silent <tiedostoja>\tSama, mutta �l� ilmoita puuttuvasta " +"palvelimesta" + +msgid "" +"--remote-wait <files> As --remote but wait for files to have been edited" +msgstr "" +"--remote-wait <tiedostoja> kuten --remote, mutta odota tiedostojen " +"muokkaamista" + +msgid "" +"--remote-wait-silent <files> Same, don't complain if there is no server" +msgstr "" +"--remote-wait-silent <tiedostoja> sama, mutta �l� ilmoita puuttuvasta " +"palvelimesta" + +msgid "" +"--remote-tab[-wait][-silent] <files> As --remote but use tab page per file" +msgstr "" +"--remote-tab[-wait][-silent] <tiedostoja> kuten --remote, mutta avaa " +"v�lilehti joka tiedostolle" + +msgid "--remote-send <keys>\tSend <keys> to a Vim server and exit" +msgstr "" +"--remote-send <n�pp�imi�>\tL�het� <n�pp�imi�> painalluksina Vimille ja lopeta" + +msgid "--remote-expr <expr>\tEvaluate <expr> in a Vim server and print result" +msgstr "" +"--remote-expr <ilmaus>\tK�sittele <ilmaus> Vim-palvelimella ja tulosta tulos" + +msgid "--serverlist\t\tList available Vim server names and exit" +msgstr "--serverlist\t\tLuettele Vim-palvelinten nimet ja lopeta" + +msgid "--servername <name>\tSend to/become the Vim server <name>" +msgstr "--servername <nimi>\tL�het� Vim-palvelimelle <nimi> tai luo se" + +msgid "-i <viminfo>\t\tUse <viminfo> instead of .viminfo" +msgstr "-i <viminfo>\t\tK�yt� <viminfo>-tiedostoa .viminfon sijaan" + +msgid "-h or --help\tPrint Help (this message) and exit" +msgstr "-h tai --help\tTulosta ohje (t�m� viesti) ja lopeta" + +msgid "--version\t\tPrint version information and exit" +msgstr "--version\t\t\tTulosta versiotiedot ja lopeta" + +msgid "" +"\n" +"Arguments recognised by gvim (Motif version):\n" +msgstr "" +"\n" +"Gvimin (Motif-version) tuntemat argumentit:\n" + +msgid "" +"\n" +"Arguments recognised by gvim (neXtaw version):\n" +msgstr "" +"\n" +"Gvimin (neXtaw-version) tuntemat argumentit:\n" + +msgid "" +"\n" +"Arguments recognised by gvim (Athena version):\n" +msgstr "" +"\n" +"Gvimin (Athena-version) tuntemat argumentit:\n" + +msgid "-display <display>\tRun vim on <display>" +msgstr "-display <n�ytt�>\tSuorita vim <n�yt�ss�>" + +msgid "-iconic\t\tStart vim iconified" +msgstr "-iconic\t\tK�ynnist� pienennettyn�" + +msgid "-name <name>\t\tUse resource as if vim was <name>" +msgstr "-name <nimi>\t\tK�yt� resurssia vim <nimen�>" + +msgid "\t\t\t (Unimplemented)\n" +msgstr "\t\t\t (toteuttamatta)\n" + +msgid "-background <color>\tUse <color> for the background (also: -bg)" +msgstr "-background <v�ri>\tK�yt� <v�ri�> taustav�rin� (my�s: -bg)" + +msgid "-foreground <color>\tUse <color> for normal text (also: -fg)" +msgstr "-foreground <v�ri>\tK�yt� <v�ri�> tekstin v�rin� (my�s: -fg)" + +msgid "-font <font>\t\tUse <font> for normal text (also: -fn)" +msgstr "-font <fontti>\t\tK�yt� <fonttia> tekstiss� (my�s: -fn)" + +msgid "-boldfont <font>\tUse <font> for bold text" +msgstr "-boldfont <fontti>\tK�yt� <fonttia> lihavoidussa tekstiss�" + +msgid "-italicfont <font>\tUse <font> for italic text" +msgstr "-italicfont <fontti>\tK�yt� <fonttia> kursivoidussa tekstiss�" + +msgid "-geometry <geom>\tUse <geom> for initial geometry (also: -geom)" +msgstr "" +"-geometry <geom>\tK�yt� mittoja <geom> ikkunan asetteluun (my�s: -geom)" + +msgid "-borderwidth <width>\tUse a border width of <width> (also: -bw)" +msgstr "-borderwidt <leveys>\tK�yt� <leveytt�> reunuksissa (my�s: -bw) " + +msgid "-scrollbarwidth <width> Use a scrollbar width of <width> (also: -sw)" +msgstr "" +"-scrollbarwidth <leveys> K�yt� <leveytt�> vierityspalkissa (my�s: -sw)" + +msgid "-menuheight <height>\tUse a menu bar height of <height> (also: -mh)" +msgstr "-menuheight <korkeus>\tK�yt� <korkeutta> valikossa (my�s: -mh)" + +msgid "-reverse\t\tUse reverse video (also: -rv)" +msgstr "-reverse\t\tK�yt� k��nteisv�rej� (my�s: -rv) " + +msgid "+reverse\t\tDon't use reverse video (also: +rv)" +msgstr "+reverse\t\t�l� k�yt� k��nteisv�rej� (my�s: +rv)" + +msgid "-xrm <resource>\tSet the specified resource" +msgstr "-xrm <resurssi>\tAseta resurssi" + +msgid "" +"\n" +"Arguments recognised by gvim (RISC OS version):\n" +msgstr "" +"\n" +"Gvimin (RISC OS -version) tuntemat argumentit:\n" + +msgid "--columns <number>\tInitial width of window in columns" +msgstr "--columns <luku>\tIkkunan alkuleveys sarakkeina" + +msgid "--rows <number>\tInitial height of window in rows" +msgstr "--rows <luku>\tIkkunan alkukorkeus rivein�" + +msgid "" +"\n" +"Arguments recognised by gvim (GTK+ version):\n" +msgstr "" +"\n" +"Gvimin (GTK+-version) tuntemat argumentit:\n" + +msgid "-display <display>\tRun vim on <display> (also: --display)" +msgstr "-display <n�ytt�>\tSuorita vim n�yt�ll� <n�ytt�> (my�s: --display)" + +# X-ikkunointij�rjestelm�ss� saman sovelluksen saman luokan ikkunat +# tunnistetaan rooliresursseista +msgid "--role <role>\tSet a unique role to identify the main window" +msgstr "--role <rooli>\tAseta p��ikkunalle ainutlaatuinen rooli tunnisteeksi" + +msgid "--socketid <xid>\tOpen Vim inside another GTK widget" +msgstr "--socketid <xid>\tAvaa Vim annettuun GTK-olioon " + +msgid "-P <parent title>\tOpen Vim inside parent application" +msgstr "-P <otsikko>\tAvaa Vim is�nt�ohjelman sis��n" + +msgid "--windowid <HWND>\tOpen Vim inside another win32 widget" +msgstr "--windowid <HWND>\tAvaa Vim annettuun win32-olioon " + +msgid "No display" +msgstr "Ei n�ytt��" + +#. Failed to send, abort. +msgid ": Send failed.\n" +msgstr ": L�hetys ep�onnistui.\n" + +#. Let vim start normally. +msgid ": Send failed. Trying to execute locally\n" +msgstr ": L�hetys ep�onnistui. Yritet��n suorittaa paikallisena\n" + +#, c-format +msgid "%d of %d edited" +msgstr "%d/%d muokattu" + +msgid "No display: Send expression failed.\n" +msgstr "Ei n�ytt��: Ilmauksen l�hetys ep�onnistui.\n" + +msgid ": Send expression failed.\n" +msgstr ": Ilmauksen l�hetys ep�onnistui.\n" + +msgid "No marks set" +msgstr "Ei asetettuja merkkej�" + +#, c-format +msgid "E283: No marks matching \"%s\"" +msgstr "E283: Mik��n merkki ei t�sm�� ilmaukseen \"%s\"" + +#. Highlight title +msgid "" +"\n" +"mark line col file/text" +msgstr "" +"\n" +"merkki rivi sarake tiedosto/teksti" + +#. Highlight title +msgid "" +"\n" +" jump line col file/text" +msgstr "" +"\n" +"hyppy rivi sarake tiedosto/teksti" + +#. Highlight title +msgid "" +"\n" +"change line col text" +msgstr "" +"\n" +"muutos rivi sarake teksti" + +#, c-format +msgid "" +"\n" +"# File marks:\n" +msgstr "" +"\n" +"# Tiedoston merkit:\n" + +#. Write the jumplist with -' +#, c-format +msgid "" +"\n" +"# Jumplist (newest first):\n" +msgstr "" +"\n" +"# Hyppylista (uusin ensiksi):\n" + +#, c-format +msgid "" +"\n" +"# History of marks within files (newest to oldest):\n" +msgstr "" +"\n" +"# Tiedostojen merkkien historia (uusimmasta vanhimpaan):\n" + +msgid "Missing '>'" +msgstr "> puuttuu" + +msgid "E543: Not a valid codepage" +msgstr "E543: Koodisivu ei ole k�yp�" + +msgid "E284: Cannot set IC values" +msgstr "E284: Ei voi asettaa IC-arvoja" + +msgid "E285: Failed to create input context" +msgstr "E285: Sy�tekontekstin luonti ei onnistu" + +msgid "E286: Failed to open input method" +msgstr "E286: Sy�temetodin avaus ei onnistu" + +msgid "E287: Warning: Could not set destroy callback to IM" +msgstr "" +"E287: Varoitus: Ei voitu asettaa destroy-kutsua sy�temetodipalvelimelle" + +msgid "E288: input method doesn't support any style" +msgstr "E288: sy�temetodi ei tue tyylej�" + +msgid "E289: input method doesn't support my preedit type" +msgstr "E289: sy�temetodi ei tue t�t� preedit-tyyppi�" + +msgid "E290: over-the-spot style requires fontset" +msgstr "E290: over-the-spot-tyyliss� pit�� olla fontset" + +msgid "E291: Your GTK+ is older than 1.2.3. Status area disabled" +msgstr "E291: GTK+-versio vanhempi kuin 1.2.3: Tila-alue poistettu k�yt�st�" + +msgid "E292: Input Method Server is not running" +msgstr "E292: Sy�temetodipalvelin ei ole k�ynniss�" + +msgid "E293: block was not locked" +msgstr "E293: lohkoa ei ole lukittu" + +msgid "E294: Seek error in swap file read" +msgstr "E294: Hakuvirhe swap-tiedostoa luettaessa" + +msgid "E295: Read error in swap file" +msgstr "E295: Lukuvirhe swap-tiedostossa" + +msgid "E296: Seek error in swap file write" +msgstr "E296: Hakuvirhe swap-tiedostoa kirjoitettaessa" + +msgid "E297: Write error in swap file" +msgstr "E297: Kirjoitusvirhe swap-tiedostossa" + +msgid "E300: Swap file already exists (symlink attack?)" +msgstr "E300: Swaptiedosto on jo olemassa (symlink-hy�kk�ys?)" + +msgid "E298: Didn't get block nr 0?" +msgstr "E298: Lohko 0:aa ei saatu?" + +msgid "E298: Didn't get block nr 1?" +msgstr "E298: Lohko 1:t� ei saatu?" + +msgid "E298: Didn't get block nr 2?" +msgstr "E298: Lohko 2:ta ei saatu?" + +#. could not (re)open the swap file, what can we do???? +msgid "E301: Oops, lost the swap file!!!" +msgstr "E301: Hups, swap-tiedosto h�visi!" + +msgid "E302: Could not rename swap file" +msgstr "E302: Swap-tiedoston uudellennimeys ei onnistu" + +#, c-format +msgid "E303: Unable to open swap file for \"%s\", recovery impossible" +msgstr "E303: Swap-tiedostoa %s ei voi avata, palautus ei onnistu" + +msgid "E304: ml_upd_block0(): Didn't get block 0??" +msgstr "E304: ml_upd_block0(): Lohko 0:aa ei saatu?" + +#, c-format +msgid "E305: No swap file found for %s" +msgstr "E305: Ei swap-tiedostoa tiedostolle %s" + +msgid "Enter number of swap file to use (0 to quit): " +msgstr "Anna swap-tiedoston numero tai 0 lopettaaksesi: " + +#, c-format +msgid "E306: Cannot open %s" +msgstr "E306: Ei voi avata tiedostoa %s" + +msgid "Unable to read block 0 from " +msgstr "Ei voi lukea lohkoa 0 kohteesta " + +msgid "" +"\n" +"Maybe no changes were made or Vim did not update the swap file." +msgstr "" +"\n" +"Muutoksia ei tehty, tai Vim ei p�ivitt�nyt swap-tiedostoa." + +msgid " cannot be used with this version of Vim.\n" +msgstr " ei toimi t�m�n version Vimin kanssa.\n" + +msgid "Use Vim version 3.0.\n" +msgstr "K�yt� Vimin versiota 3.0\n" + +#, c-format +msgid "E307: %s does not look like a Vim swap file" +msgstr "E307: %s ei ole Vimin swap-tiedosto" + +msgid " cannot be used on this computer.\n" +msgstr " ei toimi t�ll� koneella.\n" + +msgid "The file was created on " +msgstr "Tiedosto luotiin " + +msgid "" +",\n" +"or the file has been damaged." +msgstr "" +",\n" +"tai tiedosto on vahingoittunut." + +msgid " has been damaged (page size is smaller than minimum value).\n" +msgstr " on vioittunut (sivun koko on v�himm�isarvoa pienempi).\n" + +#, c-format +msgid "Using swap file \"%s\"" +msgstr "K�ytet��n swap-tiedostoa %s" + +#, c-format +msgid "Original file \"%s\"" +msgstr "Alkuper�inen tiedosto %s" + +msgid "E308: Warning: Original file may have been changed" +msgstr "E308: Varoitus: Alkuper�ist� tiedostoa saattaa olla muutettu" + +#, c-format +msgid "E309: Unable to read block 1 from %s" +msgstr "E309: Ei voitu lukea lohkoa 1 tiedostosta %s" + +msgid "???MANY LINES MISSING" +msgstr "???PALJON RIVEJ� PUUTTUU" + +msgid "???LINE COUNT WRONG" +msgstr "???RIVIM��R� PIELESS�" + +msgid "???EMPTY BLOCK" +msgstr "???TYHJ� LOHKO" + +msgid "???LINES MISSING" +msgstr "???RIVEJ� PUUTTUU" + +#, c-format +msgid "E310: Block 1 ID wrong (%s not a .swp file?)" +msgstr "E310: Lohon 1 tunniste v��r� (%s ei ole .swp-tiedosto?)" + +msgid "???BLOCK MISSING" +msgstr "???LOHKO PUUTTUU" + +msgid "??? from here until ???END lines may be messed up" +msgstr "??? t�st� kohtaan ???LOPPU rivej� sekaisin" + +msgid "??? from here until ???END lines may have been inserted/deleted" +msgstr "??? t�st� kohtaan ???LOPPU rivej� saattaa olla lis�tty tai poistettu" + +msgid "???END" +msgstr "???LOPPU" + +msgid "E311: Recovery Interrupted" +msgstr "E311: Palautus keskeytetty" + +msgid "" +"E312: Errors detected while recovering; look for lines starting with ???" +msgstr "E312: Palautuksessa oli virheit�, etsi rivej�, jotka alkavat ???" + +msgid "See \":help E312\" for more information." +msgstr ":help E312 kertoo lis�tietoja" + +msgid "Recovery completed. You should check if everything is OK." +msgstr "Palautus onnistui. Tarkista, ett� kaikki on kunnossa." + +msgid "" +"\n" +"(You might want to write out this file under another name\n" +msgstr "" +"\n" +"(Saattaa kannattaa kirjoittaa t�m� tiedosto toisella nimell�\n" + +msgid "and run diff with the original file to check for changes)\n" +msgstr "ja katsoa diffill� muutoksia)\n" + +msgid "" +"Delete the .swp file afterwards.\n" +"\n" +msgstr "" +"Poista .swp-tiedosto j�lkik�teen.\n" +"\n" + +#. use msg() to start the scrolling properly +msgid "Swap files found:" +msgstr "Swap-tiedostoja l�ytyi:" + +msgid " In current directory:\n" +msgstr " T�ss� hakemistossa:\n" + +msgid " Using specified name:\n" +msgstr " M��ritellyll� nimell�:\n" + +msgid " In directory " +msgstr " Hakemistossa " + +msgid " -- none --\n" +msgstr " -- ei mit��n --\n" + +msgid " owned by: " +msgstr " omistaja: " + +msgid " dated: " +msgstr " ajalta: " + +msgid " dated: " +msgstr " ajalta:" + +msgid " [from Vim version 3.0]" +msgstr " [Vimin 3.0-versiosta]" + +msgid " [does not look like a Vim swap file]" +msgstr " [ei n�yt� Vimin swap-tiedostolta]" + +msgid " file name: " +msgstr " tiedostonimi: " + +msgid "" +"\n" +" modified: " +msgstr "" +"\n" +" muokattu: " + +msgid "YES" +msgstr "KYLL�" + +msgid "no" +msgstr "ei" + +msgid "" +"\n" +" user name: " +msgstr "" +"\n" +" k�ytt�j�nimi: " + +msgid " host name: " +msgstr " laitenimi: " + +msgid "" +"\n" +" host name: " +msgstr "" +"\n" +" laitenimi: " + +msgid "" +"\n" +" process ID: " +msgstr "" +"\n" +" prosessin tunniste: " + +msgid " (still running)" +msgstr " (k�ynniss�)" + +msgid "" +"\n" +" [not usable with this version of Vim]" +msgstr "" +"\n" +" [ei toimi t�m�n Vim-version kanssa]" + +msgid "" +"\n" +" [not usable on this computer]" +msgstr "" +"\n" +" [ei toimi t�ll� koneella]" + +msgid " [cannot be read]" +msgstr " [ei voi lukea]" + +msgid " [cannot be opened]" +msgstr " [ei voi avata]" + +msgid "E313: Cannot preserve, there is no swap file" +msgstr "E313: Ei voi s�ilytt��, swap-tiedostoa ei ole" + +msgid "File preserved" +msgstr "Tiedosto s�ilytetty" + +msgid "E314: Preserve failed" +msgstr "E314: S�ilytt�minen ep�onnistui" + +#, c-format +msgid "E315: ml_get: invalid lnum: %ld" +msgstr "E315: ml_get: virheellinen lnum: %ld" + +#, c-format +msgid "E316: ml_get: cannot find line %ld" +msgstr "E316: ml_get: rivi� %ld ei l�ydy" + +msgid "E317: pointer block id wrong 3" +msgstr "E317: osoitinlohkon tunnus v��r� 3" + +msgid "stack_idx should be 0" +msgstr "stack_idx pit�� olla 0" + +msgid "E318: Updated too many blocks?" +msgstr "E318: P�ivitetty liikaa lohkoja" + +msgid "E317: pointer block id wrong 4" +msgstr "E317: osoitinlohkon tunnus v��r� 4" + +msgid "deleted block 1?" +msgstr "poistettu lohko 1?" + +#, c-format +msgid "E320: Cannot find line %ld" +msgstr "E320: Rivi� %ld ei l�ydy" + +msgid "E317: pointer block id wrong" +msgstr "E317: osoitinlohkon tunnus v��r�" + +msgid "pe_line_count is zero" +msgstr "pe_line_count on nolla" + +#, c-format +msgid "E322: line number out of range: %ld past the end" +msgstr "E322: rivinumero arvoalueen ulkopuoleta: %ld on loppua suurempi" + +#, c-format +msgid "E323: line count wrong in block %ld" +msgstr "E323: rivim��r� v��rin lohkossa %ld" + +msgid "Stack size increases" +msgstr "Pinon koko kasvaa" + +msgid "E317: pointer block id wrong 2" +msgstr "E317: osoitinlohon tunnus v��r� 2" + +#, c-format +msgid "E773: Symlink loop for \"%s\"" +msgstr "E773: Symlinkkisilmukka kohteelle %s" + +msgid "E325: ATTENTION" +msgstr "E325: HUOMAA" + +msgid "" +"\n" +"Found a swap file by the name \"" +msgstr "" +"\n" +"Swap-tiedosto l�ytyi: \"" + +msgid "While opening file \"" +msgstr "Avattaessa tiedostoa " + +msgid " NEWER than swap file!\n" +msgstr " joka on UUDEMPI kuin swap-tiedosto!\n" + +#. Some of these messages are long to allow translation to +#. * other languages. +msgid "" +"\n" +"(1) Another program may be editing the same file.\n" +" If this is the case, be careful not to end up with two\n" +" different instances of the same file when making changes.\n" +msgstr "" +"\n" +"(1) Toinen ohjelma saattaa k�ytt�� samaa tiedostoa.\n" +" Jos n�in on, varo, ettet muokkaa saman tiedoston\n" +" kahta instanssia yht� aikaa.\n" + +msgid " Quit, or continue with caution.\n" +msgstr " Lopeta, tai jatka.\n" + +msgid "" +"\n" +"(2) An edit session for this file crashed.\n" +msgstr "" +"\n" +"(2) Ohjelma on kaatunut muokatessa tiedostoa.\n" + +msgid " If this is the case, use \":recover\" or \"vim -r " +msgstr " Jos n�in on, k�yt� komentoa :recover tai vim -r " + +msgid "" +"\"\n" +" to recover the changes (see \":help recovery\").\n" +msgstr "" +"\"\n" +" palauttaaksesi muutokset (lis�tietoja: \":help recovery\").\n" + +msgid " If you did this already, delete the swap file \"" +msgstr " Jos teit jo n�in, poista swap-tiedosto " + +msgid "" +"\"\n" +" to avoid this message.\n" +msgstr "" +"\"\n" +" v�ltt��ksesi t�m�n viestin.\n" + +msgid "Swap file \"" +msgstr "Swap-tiedosto " + +msgid "\" already exists!" +msgstr " on jo olemassa" + +msgid "VIM - ATTENTION" +msgstr "VIM - HUOMAUTUS" + +msgid "Swap file already exists!" +msgstr "Swap-tiedosto on jo olemassa" + +msgid "" +"&Open Read-Only\n" +"&Edit anyway\n" +"&Recover\n" +"&Quit\n" +"&Abort" +msgstr "" +"&Avaa kirjoitussuojattuna\n" +"&Muokkaa\n" +"&Palauta\n" +"&Lopeta\n" +"P&eru" + +msgid "" +"&Open Read-Only\n" +"&Edit anyway\n" +"&Recover\n" +"&Delete it\n" +"&Quit\n" +"&Abort" +msgstr "" +"&Avaa kirjoitussuojattuna\n" +"&Muokkaa\n" +"&Palauta\n" +"P&oista\n" +"&Lopeta\n" +"P&eru" + +msgid "E326: Too many swap files found" +msgstr "E326: Liian monta swap-tiedostoa" + +msgid "E327: Part of menu-item path is not sub-menu" +msgstr "E327: Valikkokohtapolun osa ei ole alivalikko" + +msgid "E328: Menu only exists in another mode" +msgstr "E328: Valikko on olemassa vain toisessa tilassa" + +#, c-format +msgid "E329: No menu \"%s\"" +msgstr "E329: Ei valikkoa %s" + +#. Only a mnemonic or accelerator is not valid. +msgid "E792: Empty menu name" +msgstr "E792: tyhj� valikkonimi" + +msgid "E330: Menu path must not lead to a sub-menu" +msgstr "E330: Valikkopolku ei saa johtaa alivalikkoon" + +msgid "E331: Must not add menu items directly to menu bar" +msgstr "E331: Valikkokohtia ei saa lis�t� suoraan valikkopalkkiin" + +msgid "E332: Separator cannot be part of a menu path" +msgstr "E332: Erotin ei voi olla valikkopolun osa" + +#. Now we have found the matching menu, and we list the mappings +#. Highlight title +msgid "" +"\n" +"--- Menus ---" +msgstr "" +"\n" +"--- Valikot ---" + +msgid "Tear off this menu" +msgstr "Rep�ise valikko irti" + +msgid "E333: Menu path must lead to a menu item" +msgstr "E333: Valikkopolun on johdettava valikkokohtaan" + +#, c-format +msgid "E334: Menu not found: %s" +msgstr "E334: Valikkoa ei l�ydy: %s" + +#, c-format +msgid "E335: Menu not defined for %s mode" +msgstr "E335: Valikkoa ei ole m��ritelty %s-tilassa" + +msgid "E336: Menu path must lead to a sub-menu" +msgstr "E336: Valikkopolun pit�� johtaa alivalikkoon" + +msgid "E337: Menu not found - check menu names" +msgstr "E337: Valikkoa ei l�ytynyt - tarkista valikkojen nimet" + +#, c-format +msgid "Error detected while processing %s:" +msgstr "Virhe suoritettaessa komentoja %s:" + +#, c-format +msgid "line %4ld:" +msgstr "rivi %4ld:" + +#, c-format +msgid "E354: Invalid register name: '%s'" +msgstr "E354: Virheellinen rekisterin nimi: %s" + +msgid "Messages maintainer: Bram Moolenaar <Bram@vim.org>" +msgstr "K��nn�ksen yll�pit�j�: Flammie Pirinen <flammie@iki.fi>" + +msgid "Interrupt: " +msgstr "Keskeytys: " + +msgid "Press ENTER or type command to continue" +msgstr "Paina enteri� tai kirjoita komento aloittaaksesi " + +#, c-format +msgid "%s line %ld" +msgstr "%s rivi %ld" + +msgid "-- More --" +msgstr "-- Lis�� --" + +msgid " SPACE/d/j: screen/page/line down, b/u/k: up, q: quit " +msgstr " SPACE/d/j: ruutu/sivu/rivi alas, b/u/k: yl�s, q: lopeta" + +msgid "Question" +msgstr "Kysymys" + +msgid "" +"&Yes\n" +"&No" +msgstr "" +"&Kyll�\n" +"&Ei" + +msgid "" +"&Yes\n" +"&No\n" +"Save &All\n" +"&Discard All\n" +"&Cancel" +msgstr "" +"&Kyll�\n" +"&Ei\n" +"&Tallenna kaikki\n" +"T&uhoa kaikki\n" +"&Peru" + +msgid "Select Directory dialog" +msgstr "Hakemiston valintaikkuna" + +msgid "Save File dialog" +msgstr "Tallennusikkuna" + +msgid "Open File dialog" +msgstr "Avausikkuna" + +#. TODO: non-GUI file selector here +msgid "E338: Sorry, no file browser in console mode" +msgstr "E338: Sori, tiedostonselain puuttuu konsolitilasta" + +msgid "E766: Insufficient arguments for printf()" +msgstr "E766: printf():lle ei annettu tarpeeksi argumentteja" + +msgid "E807: Expected Float argument for printf()" +msgstr "E807: Odotettiin Float-argumenttia printf():lle" + +msgid "E767: Too many arguments to printf()" +msgstr "E767: printf():lle annettiin liikaa argumentteja" + +msgid "W10: Warning: Changing a readonly file" +msgstr "W10: Varoitus: Muutetaan kirjoitussuojattua tiedostoa" + +msgid "Type number or click with mouse (<Enter> cancels): " +msgstr "Kirjoita numero tai valitse hiirell� (<Enter> peruu): " + +msgid "Choice number (<Enter> cancels): " +msgstr "Valitse numero (<Enter> peruu): " + +msgid "1 more line" +msgstr "1 rivi lis��" + +msgid "1 line less" +msgstr "1 rivi v�hemm�n" + +#, c-format +msgid "%ld more lines" +msgstr "%ld rivi� lis��" + +#, c-format +msgid "%ld fewer lines" +msgstr "%ld rivi� v�hemm�n" + +msgid " (Interrupted)" +msgstr " (Keskeytetty)" + +msgid "Beep!" +msgstr "Piip!" + +msgid "Vim: preserving files...\n" +msgstr "Vim: s��stet��n tiedostoja...\n" + +#. close all memfiles, without deleting +msgid "Vim: Finished.\n" +msgstr "Vim: Valmis.\n" + +#, c-format +msgid "ERROR: " +msgstr "VIRHE: " + +#, c-format +msgid "" +"\n" +"[bytes] total alloc-freed %lu-%lu, in use %lu, peak use %lu\n" +msgstr "" +"\n" +"[tavua] yht. alloc-free %lu-%lu, k�yt�ss� %lu, k�ytt�huippu %lu\n" + +#, c-format +msgid "" +"[calls] total re/malloc()'s %lu, total free()'s %lu\n" +"\n" +msgstr "" +"[kutsut] yht. re/malloc() %lu, yht. free() %lu\n" +"\n" + +msgid "E340: Line is becoming too long" +msgstr "E340: Rivist� tulee liian pitk�" + +#, c-format +msgid "E341: Internal error: lalloc(%ld, )" +msgstr "E341: Sis�inen virhe: lalloc(%ld, )" + +#, c-format +msgid "E342: Out of memory! (allocating %lu bytes)" +msgstr "E342: Muisti loppui! (varattaessa %lu tavua)" + +#, c-format +msgid "Calling shell to execute: \"%s\"" +msgstr "Kutsutaan kuorta suorittamaan: %s" + +msgid "E545: Missing colon" +msgstr "E545: Kaksoispiste puuttuu" + +msgid "E546: Illegal mode" +msgstr "E546: Virheellinen tila" + +msgid "E547: Illegal mouseshape" +msgstr "E547: Virheellinen hiiren muoto" + +msgid "E548: digit expected" +msgstr "E548: pit�� olla numero" + +msgid "E549: Illegal percentage" +msgstr "E549: Virheellinen prosenttiluku" + +msgid "Enter encryption key: " +msgstr "Anna salausavain: " + +msgid "Enter same key again: " +msgstr "Anna sama avain uudestaan: " + +msgid "Keys don't match!" +msgstr "Avaimet eiv�t t�sm��!" + +#, c-format +msgid "" +"E343: Invalid path: '**[number]' must be at the end of the path or be " +"followed by '%s'." +msgstr "" +"E343: Virheellinen polku: '**[numero]' kuuluu polun loppuun tai ennen kohtaa " +"%s." + +#, c-format +msgid "E344: Can't find directory \"%s\" in cdpath" +msgstr "E344: Hakemistoa %s ei l�ydy cdpathista" + +#, c-format +msgid "E345: Can't find file \"%s\" in path" +msgstr "E345: Tiedostoa %s ei l�ydy polulta" + +#, c-format +msgid "E346: No more directory \"%s\" found in cdpath" +msgstr "E346: Hakemisto %s ei ole en�� cdpathissa" + +#, c-format +msgid "E347: No more file \"%s\" found in path" +msgstr "E347: Tiedosto %s ei ole en�� polulla" + +msgid "Cannot connect to Netbeans #2" +msgstr "Ei voi yhdist�� Netbeans #2:een" + +msgid "Cannot connect to Netbeans" +msgstr "Ei voi yhdist�� Netbeansiin" + +#, c-format +msgid "E668: Wrong access mode for NetBeans connection info file: \"%s\"" +msgstr "E668: V��r� avaustila NetBeans-yhteyden infotiedostolle: %s" + +msgid "read from Netbeans socket" +msgstr "luettu Netbeans-soketista" + +#, c-format +msgid "E658: NetBeans connection lost for buffer %ld" +msgstr "E658: NetBeans-yhteys katkesi puskurille %ld" + +msgid "E505: " +msgstr "E505: " + +msgid "E774: 'operatorfunc' is empty" +msgstr "E774: operatorfunc on tyhj�" + +msgid "E775: Eval feature not available" +msgstr "E775: Eval ei ole k�ytett�viss�" + +msgid "Warning: terminal cannot highlight" +msgstr "Varoitus: terminaalista puuttuu korostus" + +msgid "E348: No string under cursor" +msgstr "E348: Ei merkkijonoa kursorin alla" + +msgid "E349: No identifier under cursor" +msgstr "E349: Ei tunnistetta osoittimen alla" + +msgid "E352: Cannot erase folds with current 'foldmethod'" +msgstr "E352: taitoksia ei voi poistaa t�ll� foldmethodilla" + +msgid "E664: changelist is empty" +msgstr "E664: muutoslista on tyhj�" + +msgid "E662: At start of changelist" +msgstr "E662: Muutoslistan alussa" + +msgid "E663: At end of changelist" +msgstr "E663: Muutoslistan lopussa" + +msgid "Type :quit<Enter> to exit Vim" +msgstr "Komento :quit<Enter> lopettaa Vimin" + +#, c-format +msgid "1 line %sed 1 time" +msgstr "1 rivi� %s kerran" + +#, c-format +msgid "1 line %sed %d times" +msgstr "1 rivi� %s %d kertaa" + +#, c-format +msgid "%ld lines %sed 1 time" +msgstr "%ld rivi� %s kerran" + +#, c-format +msgid "%ld lines %sed %d times" +msgstr "%ld rivi� %s %d kertaa" + +#, c-format +msgid "%ld lines to indent... " +msgstr "%ld rivi� sisennett�v�n�..." + +msgid "1 line indented " +msgstr "1 rivi sisennetty " + +#, c-format +msgid "%ld lines indented " +msgstr "%ld rivi� sisennetty " + +msgid "E748: No previously used register" +msgstr "E748: Ei aiemmin k�ytettyj� rekisterej�" + +#. must display the prompt +msgid "cannot yank; delete anyway" +msgstr "Ei voi kopioida; poista joka tapauksessa" + +msgid "1 line changed" +msgstr "1 rivi muuttui" + +#, c-format +msgid "%ld lines changed" +msgstr "%ld rivi� muuttui" + +#, c-format +msgid "freeing %ld lines" +msgstr "vapautetaan %ld rivi�" + +msgid "block of 1 line yanked" +msgstr "1 rivin lohko kopioitu" + +msgid "1 line yanked" +msgstr "1 rivi kopioitu" + +#, c-format +msgid "block of %ld lines yanked" +msgstr "lohko %ld rivilt� kopioitu" + +#, c-format +msgid "%ld lines yanked" +msgstr "%ld rivi� kopioitu" + +#, c-format +msgid "E353: Nothing in register %s" +msgstr "E353: Rekisteriss� %s ei ole mit��n" + +#. Highlight title +msgid "" +"\n" +"--- Registers ---" +msgstr "" +"\n" +"--- Rekisterit ---" + +msgid "Illegal register name" +msgstr "Virheellinen rekisterin nimi" + +#, c-format +msgid "" +"\n" +"# Registers:\n" +msgstr "" +"\n" +"# Rekisterit:\n" + +#, c-format +msgid "E574: Unknown register type %d" +msgstr "E574: Tuntematon rekisterityyppi %d" + +#, c-format +msgid "%ld Cols; " +msgstr "%ld saraketta, " + +#, c-format +msgid "Selected %s%ld of %ld Lines; %ld of %ld Words; %ld of %ld Bytes" +msgstr "Valittu %s%ld/%ld rivi�, %ld/%ld sanaa, %ld/%ld tavua" + +#, c-format +msgid "" +"Selected %s%ld of %ld Lines; %ld of %ld Words; %ld of %ld Chars; %ld of %ld " +"Bytes" +msgstr "Valittu %s%ld/%ld rivi�, %ld/%ld sanaa, %ld/%ld merkki�, %ld/%ld tavua" + +#, c-format +msgid "Col %s of %s; Line %ld of %ld; Word %ld of %ld; Byte %ld of %ld" +msgstr "Sarake %s/%s, Rivi %ld/%ld, sana %ld/%ld, tavu %ld/%ld" + +#, c-format +msgid "" +"Col %s of %s; Line %ld of %ld; Word %ld of %ld; Char %ld of %ld; Byte %ld of " +"%ld" +msgstr "Sarake %s/%s, rivi %ld/%ld, sana %ld/%ld, merkki %ld/%ld, tavu %ld/%ld" + +# Unicode Byte Order Mark +#, c-format +msgid "(+%ld for BOM)" +msgstr "(+%ld BOMista)" + +msgid "%<%f%h%m%=Page %N" +msgstr "%<%f%h%m%=Sivu %N" + +msgid "Thanks for flying Vim" +msgstr "Kiitos ett� ajoit Vimi�" + +msgid "E518: Unknown option" +msgstr "E518: Tuntematon asetus" + +msgid "E519: Option not supported" +msgstr "E519: Asetusta ei tueta" + +msgid "E520: Not allowed in a modeline" +msgstr "E520: Ei sallitu modeline-rivill�" + +msgid "E521: Number required after =" +msgstr "E521: =:n j�lkeen tarvitaan luku" + +msgid "E522: Not found in termcap" +msgstr "E522: Puuttuu termcapista" + +#, c-format +msgid "E539: Illegal character <%s>" +msgstr "E539: Virheellinen merkki <%s>" + +msgid "E529: Cannot set 'term' to empty string" +msgstr "E529: Termi� ei voi asettaa tyhj�ksi merkkijonoksi" + +msgid "E530: Cannot change term in GUI" +msgstr "E530: Ei voi vaihtaa termi� GUIssa" + +msgid "E531: Use \":gui\" to start the GUI" +msgstr "E531: K�yt� komentoa :gui GUIn k�ynnist�miseen" + +msgid "E589: 'backupext' and 'patchmode' are equal" +msgstr "E589: backupext ja patchmod ovat samat" + +msgid "E617: Cannot be changed in the GTK+ 2 GUI" +msgstr "E617: Ei voi muuttaa GTK+2-GUIssa" + +msgid "E524: Missing colon" +msgstr "E524: Kaksoispiste puuttuu" + +msgid "E525: Zero length string" +msgstr "E525: Nollan pituinen merkkijono" + +#, c-format +msgid "E526: Missing number after <%s>" +msgstr "E526: Lukuarvo puuttuu merkkijonon <%s> j�lkeen" + +msgid "E527: Missing comma" +msgstr "E527: Pilkku puuttuu" + +msgid "E528: Must specify a ' value" +msgstr "E528: '-arvo pit�� antaa" + +msgid "E595: contains unprintable or wide character" +msgstr "E595: Sis�lt�� tulostumattomia tai leveit� merkkej�" + +msgid "E596: Invalid font(s)" +msgstr "E596: Viallisia fontteja" + +msgid "E597: can't select fontset" +msgstr "E597: Fontsetin valinta ei onnistu" + +msgid "E598: Invalid fontset" +msgstr "E598: Viallinen fontset" + +msgid "E533: can't select wide font" +msgstr "E533: Leve�n fontin valinta ei onnistu" + +msgid "E534: Invalid wide font" +msgstr "E534: Viallinen leve� fontti" + +#, c-format +msgid "E535: Illegal character after <%c>" +msgstr "E535: Virheellinen merkki merkin <%c> j�lkeen" + +msgid "E536: comma required" +msgstr "E536: pilkku puuttuu" + +#, c-format +msgid "E537: 'commentstring' must be empty or contain %s" +msgstr "E537: commentstringin pit�� olla tyhj� tai sis�lt�� %s" + +msgid "E538: No mouse support" +msgstr "E538: Hiirt� ei tueta" + +msgid "E540: Unclosed expression sequence" +msgstr "E540: Sulkematon lausekesarja" + +msgid "E541: too many items" +msgstr "E541: liikaa kohteita" + +msgid "E542: unbalanced groups" +msgstr "E542: ep�tasapainoisia ryhmi�" + +msgid "E590: A preview window already exists" +msgstr "E590: Esikatseluikkuna on jo olemassa" + +msgid "W17: Arabic requires UTF-8, do ':set encoding=utf-8'" +msgstr "W17: Arabialle pit�� olla UTF-8:aa, aseta :set encoding=utf-8" + +#, c-format +msgid "E593: Need at least %d lines" +msgstr "E593: Tarvitaan ainakin %d rivi�" + +#, c-format +msgid "E594: Need at least %d columns" +msgstr "E594: Tarvitaan ainakin %d saraketta" + +#, c-format +msgid "E355: Unknown option: %s" +msgstr "E355: Tuntematon asetus: %s" + +#. There's another character after zeros or the string +#. * is empty. In both cases, we are trying to set a +#. * num option using a string. +#, c-format +msgid "E521: Number required: &%s = '%s'" +msgstr "E521: tarvitaan luku: &%s = '%s'" + +msgid "" +"\n" +"--- Terminal codes ---" +msgstr "" +"\n" +"--- Terminaalikoodit ---" + +msgid "" +"\n" +"--- Global option values ---" +msgstr "" +"\n" +"--- Globaalit asetukset ---" + +msgid "" +"\n" +"--- Local option values ---" +msgstr "" +"\n" +"--- Paikalliset asetukset ---" + +msgid "" +"\n" +"--- Options ---" +msgstr "" +"\n" +"--- Asetukset ---" + +msgid "E356: get_varp ERROR" +msgstr "E356: get_varp-virhe" + +#, c-format +msgid "E357: 'langmap': Matching character missing for %s" +msgstr "E357: langmap: Merkkiin %s t�sm��v� merkki puuttuu" + +#, c-format +msgid "E358: 'langmap': Extra characters after semicolon: %s" +msgstr "E358: langmap: ylim��r�isi� merkkej� puolipisteen j�lkeen: %s" + +msgid "cannot open " +msgstr "ei voi avata " + +msgid "VIM: Can't open window!\n" +msgstr "VIM: Ei voi avata ikkunaa\n" + +msgid "Need Amigados version 2.04 or later\n" +msgstr "Amigados 2.04 tai uudempi tarvitaan\n" + +#, c-format +msgid "Need %s version %ld\n" +msgstr "Tarvitaan %s versio %ld\n" + +msgid "Cannot open NIL:\n" +msgstr "Ei voi avata NILi�:\n" + +msgid "Cannot create " +msgstr "Ei voi luoda " + +#, c-format +msgid "Vim exiting with %d\n" +msgstr "Vim sulkeutuu koodilla %d\n" + +msgid "cannot change console mode ?!\n" +msgstr "ei voi vaihtaa konsolitilaa?\n" + +msgid "mch_get_shellsize: not a console??\n" +msgstr "mch_get_shellsize: ei ole konsoli?\n" + +#. if Vim opened a window: Executing a shell may cause crashes +msgid "E360: Cannot execute shell with -f option" +msgstr "E360: Kuorta ei voi avata asetuksella -f" + +msgid "Cannot execute " +msgstr "Ei voi suorittaa " + +msgid "shell " +msgstr "kuori " + +msgid " returned\n" +msgstr " palautti\n" + +msgid "ANCHOR_BUF_SIZE too small." +msgstr "ANCHOR_BUF_SIZE liian pieni." + +msgid "I/O ERROR" +msgstr "IO-virhe" + +msgid "Message" +msgstr "Viesti" + +msgid "'columns' is not 80, cannot execute external commands" +msgstr "columns ei ole 80, ei voi suorittaa ulkoista komentoa" + +msgid "E237: Printer selection failed" +msgstr "E237: Tulostimen valinta ep�onnistui" + +#, c-format +msgid "to %s on %s" +msgstr "tulostimelle %s kohteessa %s" + +#, c-format +msgid "E613: Unknown printer font: %s" +msgstr "E613: Tuntematon tulostimen fontti: %s" + +#, c-format +msgid "E238: Print error: %s" +msgstr "E238: Tulostinvirhe: %s" + +#, c-format +msgid "Printing '%s'" +msgstr "Tulostetaan %s" + +#, c-format +msgid "E244: Illegal charset name \"%s\" in font name \"%s\"" +msgstr "E244: Virheellinen merkist�n nimi %s fontin nimess� %s" + +#, c-format +msgid "E245: Illegal char '%c' in font name \"%s\"" +msgstr "E245: Virheellinen merkki %c fontin nimess� %s" + +msgid "E366: Invalid 'osfiletype' option - using Text" +msgstr "E366: Virheellinen osfiletype - k�ytet��n Texti�" + +msgid "Vim: Double signal, exiting\n" +msgstr "Vim: Kaksoissignaali, lopetetaan\n" + +#, c-format +msgid "Vim: Caught deadly signal %s\n" +msgstr "Vim: Tappava signaali %s\n" + +#, c-format +msgid "Vim: Caught deadly signal\n" +msgstr "Vim: Tappava signaali\n" + +#, c-format +msgid "Opening the X display took %ld msec" +msgstr "X-n�yt�n avaus vei %ld millisekuntia" + +msgid "" +"\n" +"Vim: Got X error\n" +msgstr "" +"\n" +"Vim: X-virhe\n" + +msgid "Testing the X display failed" +msgstr "X-n�yt�n testaus ep�onnistui" + +msgid "Opening the X display timed out" +msgstr "X-n�yt�n avaus aikakatkaistiin" + +# mik� security context? +msgid "" +"\n" +"Could not get security context for " +msgstr "" +"\n" +"Ei saatu turvallisuuskontekstia kohteelle " + +msgid "" +"\n" +"Could not set security context for " +msgstr "" +"\n" +"Ei voitu asettaa turvallisuuskontekstia kohteelle " + +msgid "" +"\n" +"Cannot execute shell " +msgstr "" +"\n" +"Kuoren suoritus ei onnistu " + +msgid "" +"\n" +"Cannot execute shell sh\n" +msgstr "" +"\n" +"Kuoren sh suoritus ei onnistu\n" + +msgid "" +"\n" +"shell returned " +msgstr "" +"\n" +"kuoren palautusarvo " + +msgid "" +"\n" +"Cannot create pipes\n" +msgstr "" +"\n" +"Putkia ei voi tehd�\n" + +msgid "" +"\n" +"Cannot fork\n" +msgstr "" +"\n" +"Ei voi haarauttaa\n" + +msgid "" +"\n" +"Command terminated\n" +msgstr "" +"\n" +"Komento loppui\n" + +msgid "XSMP lost ICE connection" +msgstr "XSMP kadotti ICE-yhteyden" + +#, c-format +msgid "dlerror = \"%s\"" +msgstr "dlerror = %s" + +msgid "Opening the X display failed" +msgstr "X-n�yt�n avaus ep�onnistui" + +msgid "XSMP handling save-yourself request" +msgstr "XSMP k�sittelee save-yourself-pyynt��" + +msgid "XSMP opening connection" +msgstr "XSMP avaa yhteytt�" + +msgid "XSMP ICE connection watch failed" +msgstr "XSMP:n ICE-yhteyden tarkkailu ep�onnistui" + +#, c-format +msgid "XSMP SmcOpenConnection failed: %s" +msgstr "XSMP SmcOpenConnection ep�onnistui: %s" + +msgid "At line" +msgstr "Rivill�" + +msgid "Could not load vim32.dll!" +msgstr "Vim32.dll:�� ei voitu ladata" + +msgid "VIM Error" +msgstr "VIM-virhe" + +msgid "Could not fix up function pointers to the DLL!" +msgstr "Ei voitu korjata funktio-osoittimia DLL:ss�" + +#, c-format +msgid "shell returned %d" +msgstr "kuori palautti arvon %d" + +#, c-format +msgid "Vim: Caught %s event\n" +msgstr "Vim: Napattiin %s\n" + +msgid "close" +msgstr "sulkeminen" + +msgid "logoff" +msgstr "uloskirjautuminen" + +msgid "shutdown" +msgstr "sammutus" + +msgid "E371: Command not found" +msgstr "E371: Komentoa ei l�ydy" + +msgid "" +"VIMRUN.EXE not found in your $PATH.\n" +"External commands will not pause after completion.\n" +"See :help win32-vimrun for more information." +msgstr "" +"VIMRUN.EXE� ei l�ydy muuttujasta $PATH.\n" +"Ulkoiset komennot eiv�t pys�hdy suorituksen lopussa.\n" +"Lis�tietoja komennolla :help win32-vimrun" + +msgid "Vim Warning" +msgstr "Vim-varoitus" + +#, c-format +msgid "E372: Too many %%%c in format string" +msgstr "E372: Liikaa %%%c-juttuja muotoilumerkkijonossa" + +#, c-format +msgid "E373: Unexpected %%%c in format string" +msgstr "E373: Odottamaton %%%c muotoilumerkkijonossa" + +msgid "E374: Missing ] in format string" +msgstr "E374: ] puuttuu muotoilemerkkijonosta" + +#, c-format +msgid "E375: Unsupported %%%c in format string" +msgstr "E375: Tukematon %%%c muotoilumerkkijonossa" + +#, c-format +msgid "E376: Invalid %%%c in format string prefix" +msgstr "E376: Virheellinen %%%c muotoilumerkkijonon alussa" + +#, c-format +msgid "E377: Invalid %%%c in format string" +msgstr "E377: Virheellinen %%%c muotoilumerkkijonossa" + +msgid "E378: 'errorformat' contains no pattern" +msgstr "E378: errorformatissa ei ole kuvioita" + +msgid "E379: Missing or empty directory name" +msgstr "E379: Puuttuva tai tyhj� hakemiston nimi" + +msgid "E553: No more items" +msgstr "E553: Ei en�� kohteita" + +#, c-format +msgid "(%d of %d)%s%s: " +msgstr "(%d/%d)%s%s: " + +msgid " (line deleted)" +msgstr " (rivi poistettu)" + +msgid "E380: At bottom of quickfix stack" +msgstr "E380: quickfix-pinon pohjalla" + +msgid "E381: At top of quickfix stack" +msgstr "E381: quickfix-pinon huipulla" + +#, c-format +msgid "error list %d of %d; %d errors" +msgstr "virhelista %d/%d, %d virhett�" + +msgid "E382: Cannot write, 'buftype' option is set" +msgstr "E382: Ei voi kirjoittaa, buftype asetettu" + +msgid "E683: File name missing or invalid pattern" +msgstr "E683: Tiedostonimi puuttuu tai kuvio on viallinen" + +#, c-format +msgid "Cannot open file \"%s\"" +msgstr "Tiedostoa %s ei voi avata" + +msgid "E681: Buffer is not loaded" +msgstr "E681: Puskuria ei ole ladattu" + +msgid "E777: String or List expected" +msgstr "E777: Pit�� olla merkkijono tai lista" + +#, c-format +msgid "E369: invalid item in %s%%[]" +msgstr "E369: virheellinen olio kohdassa %s%%[]" + +msgid "E339: Pattern too long" +msgstr "E339: Liian pitk� kuvio" + +msgid "E50: Too many \\z(" +msgstr "E50: Liikaa merkkej� \\z(" + +#, c-format +msgid "E51: Too many %s(" +msgstr "E51: Liikaa merkkej� %s(" + +msgid "E52: Unmatched \\z(" +msgstr "E52: Pariton \\z(" + +#, c-format +msgid "E53: Unmatched %s%%(" +msgstr "E53: Pariton %s%%(" + +#, c-format +msgid "E54: Unmatched %s(" +msgstr "E54: Pariton %s(" + +#, c-format +msgid "E55: Unmatched %s)" +msgstr "E55: Pariton %s)" + +#, c-format +msgid "E59: invalid character after %s@" +msgstr "E59: virheellinen merkki kohdan %s@ j�lkeen" + +#, c-format +msgid "E60: Too many complex %s{...}s" +msgstr "E60: Liikaa monimutkaisia ilmauksia %s{...}s" + +#, c-format +msgid "E61: Nested %s*" +msgstr "E61: Sis�kk�istetty %s*" + +#, c-format +msgid "E62: Nested %s%c" +msgstr "E62: Sis�kk�istetty %s%c" + +msgid "E63: invalid use of \\_" +msgstr "E63: v��rink�ytetty \\_" + +#, c-format +msgid "E64: %s%c follows nothing" +msgstr "E64: %s%c j�lkeen ei mink��n" + +msgid "E65: Illegal back reference" +msgstr "E65: Virheellinen t�sm�ysviittaus" + +msgid "E66: \\z( not allowed here" +msgstr "E66: \\z( ei ole sallittu t�ss�" + +msgid "E67: \\z1 et al. not allowed here" +msgstr "E67: \\z1 jne. ei ole sallittu t�ss�" + +msgid "E68: Invalid character after \\z" +msgstr "E68: Virheellinen merkki ilmauksen \\z j�lkeen" + +#, c-format +msgid "E69: Missing ] after %s%%[" +msgstr "E69: ] puuttuu merkinn�n %s%%[ j�ljest�" + +#, c-format +msgid "E70: Empty %s%%[]" +msgstr "E70: Tyhj� %s%%[]" + +#, c-format +msgid "E678: Invalid character after %s%%[dxouU]" +msgstr "E678: Virheellinen merkki merkinn�n %s%%[dxouU] j�ljess�" + +#, c-format +msgid "E71: Invalid character after %s%%" +msgstr "E71: Virheellinen merkki merkinn�n %s%% j�ljess�" + +#, c-format +msgid "E769: Missing ] after %s[" +msgstr "E769: ] puuttuu merkinn�n %s[ j�ljest�" + +#, c-format +msgid "E554: Syntax error in %s{...}" +msgstr "E554: Syntaksivirhe ilmauksessa %s{...}" + +msgid "External submatches:\n" +msgstr "Ulkoisia alit�sm�yksi�:\n" + +# tiloja +msgid " VREPLACE" +msgstr " VKORVAUS" + +msgid " REPLACE" +msgstr " KORVAUS" + +msgid " REVERSE" +msgstr " K��NTEIS" + +msgid " INSERT" +msgstr " SY�TT�" + +msgid " (insert)" +msgstr " (sy�tt�)" + +msgid " (replace)" +msgstr " (korvaus)" + +msgid " (vreplace)" +msgstr " (vkorvaus)" + +msgid " Hebrew" +msgstr " Heprea" + +msgid " Arabic" +msgstr " Arabia" + +msgid " (lang)" +msgstr " (kieli)" + +msgid " (paste)" +msgstr " (liitos)" + +msgid " VISUAL" +msgstr " VALINTA" + +msgid " VISUAL LINE" +msgstr " VALINTARIVI" + +msgid " VISUAL BLOCK" +msgstr " VALINTALOHKO" + +msgid " SELECT" +msgstr " WALINTA" + +msgid " SELECT LINE" +msgstr " WALINTARIVI" + +msgid " SELECT BLOCK" +msgstr " WALINTALOHKO" + +msgid "recording" +msgstr "tallennetaan" + +#, c-format +msgid "E383: Invalid search string: %s" +msgstr "E383: Viallinen hakujono: %s" + +#, c-format +msgid "E384: search hit TOP without match for: %s" +msgstr "E384: Haku p��si alkuun l�yt�m�tt� jonoa: %s" + +#, c-format +msgid "E385: search hit BOTTOM without match for: %s" +msgstr "E385: Haku p��si loppuun l�yt�m�tt� jonoa: %s" + +msgid "E386: Expected '?' or '/' after ';'" +msgstr "E386: ;:n j�lkeen pit�� olla ? tai /" + +msgid " (includes previously listed match)" +msgstr " (sis�lt�� viimeksi luetellun t�sm�yksen)" + +#. cursor at status line +msgid "--- Included files " +msgstr "--- Sis�llytetyt tiedostot " + +msgid "not found " +msgstr "ei l�ytynyt " + +msgid "in path ---\n" +msgstr "polusta ---\n" + +msgid " (Already listed)" +msgstr " (Jo lueteltu)" + +msgid " NOT FOUND" +msgstr " EI L�YTYNYT" + +#, c-format +msgid "Scanning included file: %s" +msgstr "Haku sis�lsi tiedoston: %s" + +#, c-format +msgid "Searching included file %s" +msgstr "Haku sis�lsi tiedoston %s" + +msgid "E387: Match is on current line" +msgstr "E387: T�sm�ys t�ll� rivill�" + +msgid "All included files were found" +msgstr "Kaikki sis�llytetyt rivit l�ytyiv�t" + +msgid "No included files" +msgstr "Ei sis�llytettyj� tiedostoja" + +msgid "E388: Couldn't find definition" +msgstr "E388: M��ritelm� ei l�ydy" + +msgid "E389: Couldn't find pattern" +msgstr "E389: kuvio ei l�ydy" + +msgid "Substitute " +msgstr "Korvaa " + +#, c-format +msgid "" +"\n" +"# Last %sSearch Pattern:\n" +"~" +msgstr "" +"\n" +"# Edellinen %sHakulauseke:\n" +"~" + +msgid "E759: Format error in spell file" +msgstr "E759: Muotoiluvirhe oikolukutiedostossa" + +msgid "E758: Truncated spell file" +msgstr "E758: Oikolukutiedosto katkaistu" + +#, c-format +msgid "Trailing text in %s line %d: %s" +msgstr "Teksti� rivin per�ss� tiedostossa %s rivill� %d: %s" + +#, c-format +msgid "Affix name too long in %s line %d: %s" +msgstr "Affiksin nimi on liian pitk� tiedostossa %s rivill� %d: %s" + +msgid "E761: Format error in affix file FOL, LOW or UPP" +msgstr "E761: Affiksitiedoston FOL-, LOW- tai UPP-muotovirhe " + +msgid "E762: Character in FOL, LOW or UPP is out of range" +msgstr "E762: Merkki FOL:ss�, LOW:ss� tai UPP:ss� ei kuulu arvoalueeseen" + +msgid "Compressing word tree..." +msgstr "Tiivistet��n sanapuuta..." + +msgid "E756: Spell checking is not enabled" +msgstr "E756: Oikaisuluku ei ole p��ll�" + +#, c-format +msgid "Warning: Cannot find word list \"%s.%s.spl\" or \"%s.ascii.spl\"" +msgstr "Varoitus: Ei l�ydetty sanalistaa %s.%s.spl tai %s.ascii.spl" + +#, c-format +msgid "Reading spell file \"%s\"" +msgstr "Luetaan oikaisulukutiedosta %s" + +msgid "E757: This does not look like a spell file" +msgstr "E757: Ei vaikuta oikaisulukutiedostolta" + +msgid "E771: Old spell file, needs to be updated" +msgstr "E771: Vanha oikaisulukutiedosto vaatii p�ivitt�mist�" + +msgid "E772: Spell file is for newer version of Vim" +msgstr "E772: Oikaisulukutiedosto on uudemmalle Vimille" + +msgid "E770: Unsupported section in spell file" +msgstr "E770: Tukematon osio oikaisulukutiedostossa" + +#, c-format +msgid "Warning: region %s not supported" +msgstr "Varoitus: osaa %s ei tueta" + +#, c-format +msgid "Reading affix file %s ..." +msgstr "Luetaan affiksitiedostoa %s..." + +#, c-format +msgid "Conversion failure for word in %s line %d: %s" +msgstr "Muunnosvirhe sanalle %s rivill� %d: %s" + +#, c-format +msgid "Conversion in %s not supported: from %s to %s" +msgstr "Muunnosta kohteessa %s ei tueta: kohteesta %s kohteeseen %s" + +#, c-format +msgid "Conversion in %s not supported" +msgstr "Muutosta kohteessa %s ei tueta" + +#, c-format +msgid "Invalid value for FLAG in %s line %d: %s" +msgstr "Tuntematon FLAG kohteessa %s rivill� %d: %s" + +#, c-format +msgid "FLAG after using flags in %s line %d: %s" +msgstr "FLAG kohteessa %s lippujen j�lkeen rivill� %d: %s" + +#, c-format +msgid "" +"Defining COMPOUNDFORBIDFLAG after PFX item may give wrong results in %s line " +"%d" +msgstr "" +"COMPOUNDFORBIDFLAG PFX:n j�lkeen voi antaa v��ri� tuloksia kohteessa %s " +"rivill� %d" + +#, c-format +msgid "" +"Defining COMPOUNDPERMITFLAG after PFX item may give wrong results in %s line " +"%d" +msgstr "" +"COMPOUNDPERMITFLAG PFX:n j�lkeen voi antaa v��ri� tuloksia kohteessa %s " +"rivill� %d" + +#, c-format +msgid "Wrong COMPOUNDWORDMAX value in %s line %d: %s" +msgstr "V��r� COMPOUNDWORDMAX-arvo kohteessa %s rivill� %d: %s" + +#, c-format +msgid "Wrong COMPOUNDMIN value in %s line %d: %s" +msgstr "V��r� COMPOUNDMIN-arvo kohteessa %s rivill� %d: %s" + +#, c-format +msgid "Wrong COMPOUNDSYLMAX value in %s line %d: %s" +msgstr "V��r� COMPOUNDSYLMAX-arvo kohteessa %s rivill� %d: %s" + +#, c-format +msgid "Wrong CHECKCOMPOUNDPATTERN value in %s line %d: %s" +msgstr "V��r� CHECKCOMPOUNDPATTERN-arvo kohteessa %s rivill� %d: %s" + +#, c-format +msgid "Different combining flag in continued affix block in %s line %d: %s" +msgstr "" +"Eri yhdistelm�lippu jatketussa affiksilohkossa kohteessa %s rivill� %d: %s" + +#, c-format +msgid "Duplicate affix in %s line %d: %s" +msgstr "Kaksoiskappale affiksista kohteessa %s rivill� %d: %s" + +#, c-format +msgid "" +"Affix also used for BAD/RARE/KEEPCASE/NEEDAFFIX/NEEDCOMPOUND/NOSUGGEST in %s " +"line %d: %s" +msgstr "" +"Affiksia k�ytetty my�s BAD-, RARE-, KEEPCASE-, NEEDAFFIX-, NEEDCOMPOUND- tai " +"NOSUGGEST-arvossa kohteessa %s rivill� %d: %s" + +#, c-format +msgid "Expected Y or N in %s line %d: %s" +msgstr "Odotettiin Y:t� tai N:�� kohteessa %s rivill� %d: %s" + +#, c-format +msgid "Broken condition in %s line %d: %s" +msgstr "Viallinen ehto kohteessa %s rivill� %d: %s" + +#, c-format +msgid "Expected REP(SAL) count in %s line %d" +msgstr "Odotettiin REP(SAL)-arvoa kohteessa %s rivill� %d" + +#, c-format +msgid "Expected MAP count in %s line %d" +msgstr "Odotettiin MAP-arvoa kohteessa %s rivill� %d" + +#, c-format +msgid "Duplicate character in MAP in %s line %d" +msgstr "Kaksoiskappale merkist� MAP:ss� kohteessa %s rivill� %d" + +#, c-format +msgid "Unrecognized or duplicate item in %s line %d: %s" +msgstr "Tunnistamaton tai kaksoiskappale arvosta kohteessa %s rivill� %d: %s" + +#, c-format +msgid "Missing FOL/LOW/UPP line in %s" +msgstr "Puuttuva FOL, LOW tai UPP rivi kohteessa %s" + +msgid "COMPOUNDSYLMAX used without SYLLABLE" +msgstr "COMPOUNDSYLMAX ilman SYLLABLEa" + +msgid "Too many postponed prefixes" +msgstr "Liikaa j�lkik�teistettyj� prefiksej�" + +msgid "Too many compound flags" +msgstr "Liikaa yhdyssanalippuja" + +msgid "Too many posponed prefixes and/or compound flags" +msgstr "Liikaa j�lkik�teistettyj� prefiksej� tai yhdyssanalippuja" + +#, c-format +msgid "Missing SOFO%s line in %s" +msgstr "Puuttuva SOFO%s-rivi kohteessa %s" + +#, c-format +msgid "Both SAL and SOFO lines in %s" +msgstr "SAL- ja SOFO-rivit kohteessa %s" + +#, c-format +msgid "Flag is not a number in %s line %d: %s" +msgstr "Lippu ei ole lukuarvo kohteessa %s rivill� %d: %s" + +#, c-format +msgid "Illegal flag in %s line %d: %s" +msgstr "Tuntematon lippu kohteessa %s rivill� %d: %s" + +#, c-format +msgid "%s value differs from what is used in another .aff file" +msgstr "%s-arvo eroaa toisessa .aff-tiedostossa olevasta" + +#, c-format +msgid "Reading dictionary file %s ..." +msgstr "Luetaan sanakirjatiedostoa %s" + +#, c-format +msgid "E760: No word count in %s" +msgstr "E760: Ei sanalaskuria kohteessa %s" + +#, c-format +msgid "line %6d, word %6d - %s" +msgstr "rivi %6d, sana %6d - %s" + +#, c-format +msgid "Duplicate word in %s line %d: %s" +msgstr "Toistettu sana kohteessa %s rivill� %d: %s" + +#, c-format +msgid "First duplicate word in %s line %d: %s" +msgstr "Ensimm�inen kappale kohteessa %s rivill� %d: %s" + +#, c-format +msgid "%d duplicate word(s) in %s" +msgstr "toistettuja sanoja %d kohteessa %s" + +#, c-format +msgid "Ignored %d word(s) with non-ASCII characters in %s" +msgstr "Ei-ASCII-merkkien takia ohitettuja sanoja %d kohteessa %s" + +#, c-format +msgid "Reading word file %s ..." +msgstr "Luetaan sanatiedostoa %s..." + +#, c-format +msgid "Duplicate /encoding= line ignored in %s line %d: %s" +msgstr "Toistettu /encoding= ohitettu kohteessa %s rivill� %d: %s" + +#, c-format +msgid "/encoding= line after word ignored in %s line %d: %s" +msgstr "/encoding= sanojen j�lkeen ohitettu kohteessa %s rivill� %d: %s" + +#, c-format +msgid "Duplicate /regions= line ignored in %s line %d: %s" +msgstr "Toistettu /regions= ohitettu kohteessa %s rivill� %d: %s" + +#, c-format +msgid "Too many regions in %s line %d: %s" +msgstr "Liikaa regionseja kohteessa %s rivill� %d: %s" + +#, c-format +msgid "/ line ignored in %s line %d: %s" +msgstr "/ ohitettu kohteessa %s rivill� %d: %s" + +#, c-format +msgid "Invalid region nr in %s line %d: %s" +msgstr "Virheellinen region-luku kohteessa %s rivill� %d: %s" + +#, c-format +msgid "Unrecognized flags in %s line %d: %s" +msgstr "Tunnistamaton lippu kohteessa %s rivill� %d: %s" + +#, c-format +msgid "Ignored %d words with non-ASCII characters" +msgstr "Ei-ASCIIn takia ohitettuja sanoja %d" + +#, c-format +msgid "Compressed %d of %d nodes; %d (%d%%) remaining" +msgstr "Tiivistetty %d/%d noodia. %d (%d %%) j�ljell�" + +msgid "Reading back spell file..." +msgstr "Luetaan taas oikaisulukutiedostoa..." + +#. +#. * Go through the trie of good words, soundfold each word and add it to +#. * the soundfold trie. +#. +msgid "Performing soundfolding..." +msgstr "��nt�myksen mukaan yhdistell��n..." + +#, c-format +msgid "Number of words after soundfolding: %ld" +msgstr "Sanoja ��nt�mysyhdistelyn j�lkeen: %ld" + +#, c-format +msgid "Total number of words: %d" +msgstr "Sanoja yhteens�: %d" + +#, c-format +msgid "Writing suggestion file %s ..." +msgstr "Kirjoitetaan ehdotustiedostoa %s..." + +#, c-format +msgid "Estimated runtime memory use: %d bytes" +msgstr "Arvioitu k�ytt�muisti: %d tavua" + +msgid "E751: Output file name must not have region name" +msgstr "E751: Tulostetiedostonimess� ei saa olla alueen nime�" + +msgid "E754: Only up to 8 regions supported" +msgstr "E754: Enint��n 8 aluetta tuetaan" + +#, c-format +msgid "E755: Invalid region in %s" +msgstr "E755: Virheellinen alue kohteelle %s" + +msgid "Warning: both compounding and NOBREAK specified" +msgstr "Varoitus: sek� yhdyssanamuodostus ett� NOBREAK k�yt�ss�" + +#, c-format +msgid "Writing spell file %s ..." +msgstr "Kirjoitetaan oikaisulukutiedostoa %s..." + +msgid "Done!" +msgstr "Valmista." + +#, c-format +msgid "E765: 'spellfile' does not have %ld entries" +msgstr "E765: spellfile ei sis�ll� %ld kohtaa" + +#, c-format +msgid "Word removed from %s" +msgstr "Sana poistettu kohteesta %s" + +#, c-format +msgid "Word added to %s" +msgstr "Sana lis�tty kohteeseen %s" + +msgid "E763: Word characters differ between spell files" +msgstr "E763: Sanan merkit muuttuvat oikaisulukutiedostojen v�lill�" + +msgid "Sorry, no suggestions" +msgstr "Sori, ei ehdotuksia" + +#, c-format +msgid "Sorry, only %ld suggestions" +msgstr "Sori, vain %ld ehdotusta" + +#. for when 'cmdheight' > 1 +#. avoid more prompt +#, c-format +msgid "Change \"%.*s\" to:" +msgstr "Muuta %.*s:" + +#, c-format +msgid " < \"%.*s\"" +msgstr " < %.*s" + +msgid "E752: No previous spell replacement" +msgstr "E752: Ei edellist� oikaisulukukorjausta" + +#, c-format +msgid "E753: Not found: %s" +msgstr "E753: Ei l�ytynyt: %s" + +#, c-format +msgid "E778: This does not look like a .sug file: %s" +msgstr "E778: Ei vaikuta .sug-tiedostolta: %s" + +#, c-format +msgid "E779: Old .sug file, needs to be updated: %s" +msgstr "E779: Vanha .sug-tiedosto pit�� p�ivitt��: %s" + +#, c-format +msgid "E780: .sug file is for newer version of Vim: %s" +msgstr "E780: .sug-tiedosto on uudemmalle Vimille: %s" + +#, c-format +msgid "E781: .sug file doesn't match .spl file: %s" +msgstr "E781: .sug-tiedosto ei t�sm�� .spl-tiedostoon: %s" + +#, c-format +msgid "E782: error while reading .sug file: %s" +msgstr "E782: virhe luettaessa .sug-tiedostoa: %s" + +#. This should have been checked when generating the .spl +#. * file. +msgid "E783: duplicate char in MAP entry" +msgstr "E783: kaksoiskappale merkist� MAP-kohdassa" + +#, c-format +msgid "E390: Illegal argument: %s" +msgstr "E390: Virheellinen argumentti: %s" + +#, c-format +msgid "E391: No such syntax cluster: %s" +msgstr "E391: Syntaksiklusteri puuttuu: %s" + +msgid "No Syntax items defined for this buffer" +msgstr "Ei syntaksikohteita t�lle puskurille" + +msgid "syncing on C-style comments" +msgstr "synkkaa C-tyylin kommentteihin" + +msgid "no syncing" +msgstr "ei synkkausta" + +msgid "syncing starts " +msgstr "synkkaus aloitettu " + +msgid " lines before top line" +msgstr " rivi� ennen alkua" + +msgid "" +"\n" +"--- Syntax sync items ---" +msgstr "" +"\n" +"--- Syntax sync -kohteet ---" + +msgid "" +"\n" +"syncing on items" +msgstr "" +"\n" +"synkataan kohteisiin" + +msgid "" +"\n" +"--- Syntax items ---" +msgstr "" +"\n" +"--- Syntax-kohteet ---" + +#, c-format +msgid "E392: No such syntax cluster: %s" +msgstr "E392: syntaksiklusteria ei ole: %s" + +msgid "minimal " +msgstr "v�hint��n " + +msgid "maximal " +msgstr "enitnt��n " + +msgid "; match " +msgstr "; t�sm�� " + +msgid " line breaks" +msgstr " rivinvaihdot" + +msgid "E395: contains argument not accepted here" +msgstr "E395: contains ei sovi t�h�n" + +msgid "E396: containedin argument not accepted here" +msgstr "E396: containedin ei sovi t�h�n" + +msgid "E393: group[t]here not accepted here" +msgstr "E393: group[t]here ei sovi t�h�n" + +#, c-format +msgid "E394: Didn't find region item for %s" +msgstr "E394: Aluetta nimelle %s ei l�ydy" + +msgid "E397: Filename required" +msgstr "E397: Tiedostonimi puuttuu" + +#, c-format +msgid "E789: Missing ']': %s" +msgstr "E789: ] puuttuu; %s" + +#, c-format +msgid "E398: Missing '=': %s" +msgstr "E398: = puuttuu: %s" + +#, c-format +msgid "E399: Not enough arguments: syntax region %s" +msgstr "E399: Argumentteja puuttuu: syntaksialue %s" + +msgid "E400: No cluster specified" +msgstr "E400: klusteri m��rittelem�tt�" + +#, c-format +msgid "E401: Pattern delimiter not found: %s" +msgstr "E401: Kuvoin erotin puuttuu: %s" + +#, c-format +msgid "E402: Garbage after pattern: %s" +msgstr "E402: Roskia kuvion j�ljess�: %s" + +msgid "E403: syntax sync: line continuations pattern specified twice" +msgstr "E403: syntax sync: rivinjatkamiskuvio m��ritelty kahdesti" + +#, c-format +msgid "E404: Illegal arguments: %s" +msgstr "E404: Virheelliset argumentit: %s" + +#, c-format +msgid "E405: Missing equal sign: %s" +msgstr "E405: = puuttuu: %s" + +#, c-format +msgid "E406: Empty argument: %s" +msgstr "E406: Tyhj� argumentti: %s" + +#, c-format +msgid "E407: %s not allowed here" +msgstr "E407: %s ei sovi t�h�n" + +#, c-format +msgid "E408: %s must be first in contains list" +msgstr "E408: %s kuuluu contains-listan alkuun" + +#, c-format +msgid "E409: Unknown group name: %s" +msgstr "E409: Tuntematon ryhm�n nimi: %s" + +#, c-format +msgid "E410: Invalid :syntax subcommand: %s" +msgstr "E410: Virheelluinen :syntax-osakomento: %s" + +msgid "E679: recursive loop loading syncolor.vim" +msgstr "E679: rekursiivinen silmukka syncolor.vimiss�" + +#, c-format +msgid "E411: highlight group not found: %s" +msgstr "E411: korostusryhm�� ei l�ytynyt: %s" + +#, c-format +msgid "E412: Not enough arguments: \":highlight link %s\"" +msgstr "E412: Argumentteja puuttuu: :highlight link %s" + +#, c-format +msgid "E413: Too many arguments: \":highlight link %s\"" +msgstr "E413: Liikaa argumentteja: :highlight link %s" + +msgid "E414: group has settings, highlight link ignored" +msgstr "E414: ryhm�ll� on asetuksia, highlight link -komento ohitetaan" + +#, c-format +msgid "E415: unexpected equal sign: %s" +msgstr "E415: odotuksenvastainen =-merkki: %s" + +#, c-format +msgid "E416: missing equal sign: %s" +msgstr "E416: puuttuva =-merkki: %s" + +#, c-format +msgid "E417: missing argument: %s" +msgstr "E417: puuttuva argumentti: %s" + +#, c-format +msgid "E418: Illegal value: %s" +msgstr "E418: Viallinen arvo: %s" + +msgid "E419: FG color unknown" +msgstr "E419: edustav�ri tuntematon" + +msgid "E420: BG color unknown" +msgstr "E420: taustav�ri tuntematon" + +#, c-format +msgid "E421: Color name or number not recognized: %s" +msgstr "E421: V�rin nimi tai numero tuntematon: %s" + +#, c-format +msgid "E422: terminal code too long: %s" +msgstr "E422: terminaalikoodi liian pitk�: %s" + +#, c-format +msgid "E423: Illegal argument: %s" +msgstr "E423: Virheellinen argumentti: %s" + +msgid "E424: Too many different highlighting attributes in use" +msgstr "E424: Liikaa eri korostusattribuutteja" + +msgid "E669: Unprintable character in group name" +msgstr "E669: Tulostuskelvoton merkki ryhm�n nimess�" + +msgid "W18: Invalid character in group name" +msgstr "W18: Virheellinen merkki ryhm�n nimess�" + +msgid "E555: at bottom of tag stack" +msgstr "E555: t�gipinon pohja" + +msgid "E556: at top of tag stack" +msgstr "E556: t�gipinon huippu" + +msgid "E425: Cannot go before first matching tag" +msgstr "E425: Ei voida menn� ensimm�ist� t�sm��v�� t�gi� alummaksi" + +#, c-format +msgid "E426: tag not found: %s" +msgstr "E426: t�gi puuttuu: %s" + +msgid " # pri kind tag" +msgstr " # arvo tyyppi t�gi" + +msgid "file\n" +msgstr "tiedosto\n" + +msgid "E427: There is only one matching tag" +msgstr "E427: Vain yksi t�gi t�sm��" + +msgid "E428: Cannot go beyond last matching tag" +msgstr "E428: Ei voida edet� viimeisen t�sm��v�n t�gin ohi" + +#, c-format +msgid "File \"%s\" does not exist" +msgstr "Tiedostoa %s ei ole" + +#. Give an indication of the number of matching tags +#, c-format +msgid "tag %d of %d%s" +msgstr "t�gi %d/%d%s" + +msgid " or more" +msgstr " tai useammasta" + +msgid " Using tag with different case!" +msgstr " T�giss� eri kirjaintaso" + +#, c-format +msgid "E429: File \"%s\" does not exist" +msgstr "E429: Tiedostoa %s ei ole" + +#. Highlight title +msgid "" +"\n" +" # TO tag FROM line in file/text" +msgstr "" +"\n" +" # TILL tagg FR�N LINJE i fil/text" + +#, c-format +msgid "Searching tags file %s" +msgstr "Etsit��n t�gitiedostoa %s" + +#, c-format +msgid "E430: Tag file path truncated for %s\n" +msgstr "E430: T�gitiedoston polku katkaistu kohdassa %s\n" + +#, c-format +msgid "E431: Format error in tags file \"%s\"" +msgstr "E431: Muotovirh t�gitiedostossa %s" + +#, c-format +msgid "Before byte %ld" +msgstr "Ennen tavua %ld" + +#, c-format +msgid "E432: Tags file not sorted: %s" +msgstr "E432: T�gitiedosto ei ole j�rjestetty: %s" + +#. never opened any tags file +msgid "E433: No tags file" +msgstr "E433: Ei t�gitiedostoja" + +msgid "E434: Can't find tag pattern" +msgstr "E434: T�gikuviota ei l�ydy" + +msgid "E435: Couldn't find tag, just guessing!" +msgstr "E435: T�gi� ei l�ydy, arvataan." + +msgid "' not known. Available builtin terminals are:" +msgstr " ei tunnettu. Tuetut terminaalit:" + +msgid "defaulting to '" +msgstr "oletusarvona " + +msgid "E557: Cannot open termcap file" +msgstr "E557: Ei voi avata termcap-tiedostoa" + +msgid "E558: Terminal entry not found in terminfo" +msgstr "E558: Terminaalia ei l�ytynyt terminfosta" + +msgid "E559: Terminal entry not found in termcap" +msgstr "E559: Terminaalia ei l�ytynyt termcapista" + +#, c-format +msgid "E436: No \"%s\" entry in termcap" +msgstr "E436: %s ei l�ytynyt termcapista" + +msgid "E437: terminal capability \"cm\" required" +msgstr "E437: terminaalilla pit�� olla cm kyvyiss��n" + +#. Highlight title +msgid "" +"\n" +"--- Terminal keys ---" +msgstr "" +"\n" +"--- Terminaalin�pp�imet ---" + +msgid "new shell started\n" +msgstr "uusi kuori avattu\n" + +msgid "Vim: Error reading input, exiting...\n" +msgstr "Vim: Virhe luettaessa sy�tett�, poistutaan...\n" + +#. must display the prompt +msgid "No undo possible; continue anyway" +msgstr "Ei voi kumota, jatketaan silti" + +msgid "Already at oldest change" +msgstr "Vanhimmassa muutoksessa" + +msgid "Already at newest change" +msgstr "Nuorimmassa muutoksessa" + +#, c-format +msgid "Undo number %ld not found" +msgstr "Kumouslukua %ld ei l�ydy" + +msgid "E438: u_undo: line numbers wrong" +msgstr "E438: u_undo: v��r�t rivinumerot" + +msgid "more line" +msgstr "rivi lis��" + +msgid "more lines" +msgstr "rivi� lis��" + +msgid "line less" +msgstr "rivi v�hemm�n" + +msgid "fewer lines" +msgstr "rivi� v�hemm�n" + +msgid "change" +msgstr "muutos" + +msgid "changes" +msgstr "muutosta" + +# eka %s yl�puolelta, toka %s alapuolelta, kolmas %s aika +#, c-format +msgid "%ld %s; %s #%ld %s" +msgstr "%ld %s, %s #%ld %s" + +msgid "before" +msgstr "ennen muutosta" + +msgid "after" +msgstr "j�lkeen muutoksen" + +msgid "Nothing to undo" +msgstr "Ei kumottavaa" + +msgid "number changes time" +msgstr "muutoksia aika" + +#, c-format +msgid "%ld seconds ago" +msgstr "%ld sekuntia sitten" + +msgid "E790: undojoin is not allowed after undo" +msgstr "E790: undojoin ei toimi undon j�lkeen" + +msgid "E439: undo list corrupt" +msgstr "E439: kumouslista rikki" + +msgid "E440: undo line missing" +msgstr "E440: kumousrivi puuttuu" + +#. Only MS VC 4.1 and earlier can do Win32s +msgid "" +"\n" +"MS-Windows 16/32-bit GUI version" +msgstr "" +"\n" +"MS-Windows 16- t. 32-bittinen GUI-versio" + +msgid "" +"\n" +"MS-Windows 64-bit GUI version" +msgstr "" +"\n" +"MS-Windows 64-bittinen GUI-versio" + +msgid "" +"\n" +"MS-Windows 32-bit GUI version" +msgstr "" +"\n" +"MS-Windows 32-bittinen GUI-version" + +msgid " in Win32s mode" +msgstr " Win32s-tilassa" + +msgid " with OLE support" +msgstr " OLE-tuella" + +msgid "" +"\n" +"MS-Windows 64-bit console version" +msgstr "" +"\n" +"MS-Windows 32-bittinen konsoliversio" + +msgid "" +"\n" +"MS-Windows 32-bit console version" +msgstr "" +"\n" +"MS-Windows 32-bittinen konsoliversio" + +msgid "" +"\n" +"MS-Windows 16-bit version" +msgstr "" +"\n" +"MS-Windows 16-bittinen versio" + +msgid "" +"\n" +"32-bit MS-DOS version" +msgstr "" +"\n" +"32-bittinen MS-DOS-versio" + +msgid "" +"\n" +"16-bit MS-DOS version" +msgstr "" +"\n" +"16-bittinen MS-DOS-versio" + +msgid "" +"\n" +"MacOS X (unix) version" +msgstr "" +"\n" +"MacOS X-version (unix)" + +msgid "" +"\n" +"MacOS X version" +msgstr "" +"\n" +"MacOS X-version" + +msgid "" +"\n" +"MacOS version" +msgstr "" +"\n" +"MacOS-version" + +msgid "" +"\n" +"RISC OS version" +msgstr "" +"\n" +"RISC OS-version" + +msgid "" +"\n" +"Included patches: " +msgstr "" +"\n" +"P�tsit: " + +msgid "Modified by " +msgstr "Muokannut " + +msgid "" +"\n" +"Compiled " +msgstr "" +"\n" +"K��nt�nyt " + +msgid "by " +msgstr ": " + +msgid "" +"\n" +"Huge version " +msgstr "" +"\n" +"Huge-versio " + +msgid "" +"\n" +"Big version " +msgstr "" +"\n" +"Big-version " + +msgid "" +"\n" +"Normal version " +msgstr "" +"\n" +"Normal-versio " + +msgid "" +"\n" +"Small version " +msgstr "" +"\n" +"Small-versio " + +msgid "" +"\n" +"Tiny version " +msgstr "" +"\n" +"Tiny-versio " + +msgid "without GUI." +msgstr "ilman GUIta." + +msgid "with GTK2-GNOME GUI." +msgstr "GTK2-Gnome-GUIlla." + +msgid "with GTK-GNOME GUI." +msgstr "GTK-Gnome-GUIlla." + +msgid "with GTK2 GUI." +msgstr "GTK2-GUIlla." + +msgid "with GTK GUI." +msgstr "GTK-GUIlla." + +msgid "with X11-Motif GUI." +msgstr "X11-Motif-GUIlla." + +msgid "with X11-neXtaw GUI." +msgstr "X11-neXtaw-GUIlla." + +msgid "with X11-Athena GUI." +msgstr "X11-Athena-GUIlla." + +msgid "with Photon GUI." +msgstr "Photon-GUIlla." + +msgid "with GUI." +msgstr "GUIlla." + +msgid "with Carbon GUI." +msgstr "Carbon-GUIlla." + +msgid "with Cocoa GUI." +msgstr "Cocoa-GUIlla." + +msgid "with (classic) GUI." +msgstr "perinteisell� GUIlla." + +msgid " Features included (+) or not (-):\n" +msgstr " Ominaisuudet mukana (+) ja poissa (-):\n" + +msgid " system vimrc file: \"" +msgstr " j�rjestelm�n vimrc: \"" + +msgid " user vimrc file: \"" +msgstr " k�ytt�j�n vimrc: \"" + +msgid " 2nd user vimrc file: \"" +msgstr " 2. k�ytt�j�n vimrc: \"" + +msgid " 3rd user vimrc file: \"" +msgstr " 3. k�ytt�j�n vimrc: \"" + +msgid " user exrc file: \"" +msgstr " k�ytt�j�n exrc: \"" + +msgid " 2nd user exrc file: \"" +msgstr " 2. k�ytt�j�n exrc: \"" + +msgid " system gvimrc file: \"" +msgstr " j�rjestelm�n gvimrc: \"" + +msgid " user gvimrc file: \"" +msgstr " k�ytt�j�n gvimrc: \"" + +msgid "2nd user gvimrc file: \"" +msgstr "2. k�ytt�j�n gvimrc: \"" + +msgid "3rd user gvimrc file: \"" +msgstr "3. k�ytt�j�n gvimrc: \"" + +msgid " system menu file: \"" +msgstr " j�rjestelm�valikko: \"" + +msgid " fall-back for $VIM: \"" +msgstr " $VIMin fallback: \"" + +msgid " f-b for $VIMRUNTIME: \"" +msgstr " $VIMRUNTIMEn f-b: \"" + +msgid "Compilation: " +msgstr "K��nn�s: " + +msgid "Compiler: " +msgstr "K��nnin: " + +msgid "Linking: " +msgstr "Linkitys: " + +msgid " DEBUG BUILD" +msgstr " DEBUG-versio" + +msgid "VIM - Vi IMproved" +msgstr "VIM - Vi IMproved" + +msgid "version " +msgstr "versio " + +msgid "by Bram Moolenaar et al." +msgstr "tekij�t Bram Moolenaar et al." + +msgid "Vim is open source and freely distributable" +msgstr "Vim on avointa l�hdekoodia ja vapaasti jaossa" + +msgid "Help poor children in Uganda!" +msgstr "Auta Ugandan k�yhi� lapsia" + +msgid "type :help iccf<Enter> for information " +msgstr "kirjoita :help iccf<Enter> lis�tietoa varten " + +msgid "type :q<Enter> to exit " +msgstr "kirjoita :q<Enter> lopettaaksesi " + +msgid "type :help<Enter> or <F1> for on-line help" +msgstr "kirjoita :help<Enter> tai <F1> ohjetta varten " + +msgid "type :help version7<Enter> for version info" +msgstr "kirjoita :help version7<Enter> versiotietoja varten " + +msgid "Running in Vi compatible mode" +msgstr "Suoritetaan Vi-yhteensopivuustilaa" + +msgid "type :set nocp<Enter> for Vim defaults" +msgstr "kirjoita :set nocp<Enter> Vimin oletuksiin " + +msgid "type :help cp-default<Enter> for info on this" +msgstr "kirjoita :help cp-default<Enter> ohjetta oletuksista varten" + +msgid "menu Help->Orphans for information " +msgstr "valikko Ohje->Orvot lis�tietoja varten " + +msgid "Running modeless, typed text is inserted" +msgstr "Suoritetaan tilattomana, kirjoitettu teksti sy�tet��n" + +msgid "menu Edit->Global Settings->Toggle Insert Mode " +msgstr "valikko Muokkaa->Yleiset asetukset->Vaihda sy�tetilaa" + +msgid " for two modes " +msgstr " kahta tilaa varten " + +msgid "menu Edit->Global Settings->Toggle Vi Compatible" +msgstr "valikko Muokkaa->Yleiset asetukset->Vaihda Vi-yhteensopivuutta" + +msgid " for Vim defaults " +msgstr " Vim-oletuksia varten" + +msgid "Sponsor Vim development!" +msgstr "Tue Vimin kehityst�" + +msgid "Become a registered Vim user!" +msgstr "Rekister�idy Vim-k�ytt�j�ksi." + +msgid "type :help sponsor<Enter> for information " +msgstr "kirjoita :help sponsor<Enter> lis�tietoja varten" + +msgid "type :help register<Enter> for information " +msgstr "kirjoita :help register<Enter> lis�tietoja varten" + +msgid "menu Help->Sponsor/Register for information " +msgstr "valikko Ohje->Sponsoroi/Rekister�i lis�tietoja varten" + +msgid "WARNING: Windows 95/98/ME detected" +msgstr "VAROITUS: Window 95/98/ME havaittu" + +msgid "type :help windows95<Enter> for info on this" +msgstr "kirjoita :help windows95<Enter> lis�tietoja varten" + +msgid "Already only one window" +msgstr "En�� yksi ikkuna j�ljell�" + +msgid "E441: There is no preview window" +msgstr "E441: Ei esikatseluikkunaa" + +msgid "E442: Can't split topleft and botright at the same time" +msgstr "E442: Ei voi jakaa vasenta yl�nurkkaa ja oikeaa alanurkkaa yht�aikaa" + +msgid "E443: Cannot rotate when another window is split" +msgstr "E443: Ei voi kiert�� kun toinen ikkuna on jaettu" + +msgid "E444: Cannot close last window" +msgstr "E444: Ei voi sulkea viimeist� ikkunaa" + +msgid "E445: Other window contains changes" +msgstr "E445: Toinen ikkuna sis�lt�� muutoksia" + +msgid "E446: No file name under cursor" +msgstr "E446: Ei tiedostonime� kursorin alla" + +#, c-format +msgid "E447: Can't find file \"%s\" in path" +msgstr "E447: Tiedosto %s ei l�ydy polulta" + +#, c-format +msgid "E370: Could not load library %s" +msgstr "E370: Kirjaston %s lataaminen ei onnistu" + +msgid "Sorry, this command is disabled: the Perl library could not be loaded." +msgstr "Sori, komento ei toimi, Perl kirjastoa ei voinut ladata." + +msgid "E299: Perl evaluation forbidden in sandbox without the Safe module" +msgstr "E299: Perl-suoritus kielletty hiekkalaatikossa ilman Safe-moduulia" + +msgid "Edit with &multiple Vims" +msgstr "&Muokkaa usealla Vimill�" + +msgid "Edit with single &Vim" +msgstr "Muokkaa yhdell� &Vimill�" + +msgid "Diff with Vim" +msgstr "Diffi Vimill�" + +msgid "Edit with &Vim" +msgstr "Muokkaa &Vimill�" + +#. Now concatenate +msgid "Edit with existing Vim - " +msgstr "Muokkaa olemassaolevalla Vimill� - " + +msgid "Edits the selected file(s) with Vim" +msgstr "Muokkaa valittuja tiedostoja Vimill�" + +msgid "Error creating process: Check if gvim is in your path!" +msgstr "Virhe prosessin k�ynnist�misess�, varmista ett� gvim on polulla" + +msgid "gvimext.dll error" +msgstr "gvimext.dll-virhe" + +msgid "Path length too long!" +msgstr "Liian pitk� polku" + +msgid "--No lines in buffer--" +msgstr "--Ei rivej� puskurissa--" + +#. +#. * The error messages that can be shared are included here. +#. * Excluded are errors that are only used once and debugging messages. +#. +msgid "E470: Command aborted" +msgstr "E470: Komento peruttu" + +msgid "E471: Argument required" +msgstr "E471: Argumentti puuttuu" + +msgid "E10: \\ should be followed by /, ? or &" +msgstr "E10: \\:n j�lkeen pit�� tulla /, ? tai &" + +msgid "E11: Invalid in command-line window; <CR> executes, CTRL-C quits" +msgstr "E11: Virheellinen komentorivi-ikkuna, <CR> suorittaa, Ctrl C lopettaa" + +msgid "E12: Command not allowed from exrc/vimrc in current dir or tag search" +msgstr "" +"E12: Komentoa ei tueta exrc:ss� tai vimrc:ss� t�ss� hakemistossa tai" +" t�gihaussa" + +msgid "E171: Missing :endif" +msgstr "E171: :endif puuttuu" + +msgid "E600: Missing :endtry" +msgstr "E600: :endtry puuttuu" + +msgid "E170: Missing :endwhile" +msgstr "E170: :endwhile puuttuu" + +msgid "E170: Missing :endfor" +msgstr "E170: :endfor puuttuu" + +msgid "E588: :endwhile without :while" +msgstr "E588: :endwhile ilman komentoa :while" + +msgid "E588: :endfor without :for" +msgstr "E588: :endfor ilman komentoa :for" + +msgid "E13: File exists (add ! to override)" +msgstr "E13: Tiedosto on jo olemassa (lis�� ! ohittaaksesi)" + +msgid "E472: Command failed" +msgstr "E472: Komento ep�onnistui" + +#, c-format +msgid "E234: Unknown fontset: %s" +msgstr "E234: Tuntematon fontset: %s" + +#, c-format +msgid "E235: Unknown font: %s" +msgstr "E235: Tuntematon fontti: %s" + +#, c-format +msgid "E236: Font \"%s\" is not fixed-width" +msgstr "E236: Fontti %s ei ole tasav�linen" + +msgid "E473: Internal error" +msgstr "E473: Sis�inen virhe" + +msgid "Interrupted" +msgstr "Keskeytetty" + +msgid "E14: Invalid address" +msgstr "E14: Virheellinen osoite" + +msgid "E474: Invalid argument" +msgstr "E474: Virheellinen argumentti" + +#, c-format +msgid "E475: Invalid argument: %s" +msgstr "E475: Virheellinen argumentti %s" + +#, c-format +msgid "E15: Invalid expression: %s" +msgstr "E15: Virheellinen ilmaus %s" + +msgid "E16: Invalid range" +msgstr "E16: Virheellinen arvoalue" + +msgid "E476: Invalid command" +msgstr "E476: Virheellinen komento" + +#, c-format +msgid "E17: \"%s\" is a directory" +msgstr "E17: %s on hakemisto" + +#, c-format +msgid "E364: Library call failed for \"%s()\"" +msgstr "E364: Kirjastukutsu %s() ep�onnistui" + +#, c-format +msgid "E448: Could not load library function %s" +msgstr "E448: Ei voitu ladta kirjastofunktiota %s" + +msgid "E19: Mark has invalid line number" +msgstr "E19: Merkill� on virheellinen rivinumero" + +msgid "E20: Mark not set" +msgstr "E20: Merkki� ei asetettu" + +msgid "E21: Cannot make changes, 'modifiable' is off" +msgstr "E21: Ei voi tehd� muutoksia, modifiable on pois p��lt�" + +msgid "E22: Scripts nested too deep" +msgstr "E22: Liian monta tasoa skripteiss�" + +msgid "E23: No alternate file" +msgstr "E23: Eo vaihtoehtoista tiedostoa" + +msgid "E24: No such abbreviation" +msgstr "E24: Lyhennett� ei ole" + +msgid "E477: No ! allowed" +msgstr "E477: ! ei sallittu" + +msgid "E25: GUI cannot be used: Not enabled at compile time" +msgstr "E25: GUIta ei voi k�ytt��, koska sit� ei k��nnetty mukaan" + +msgid "E26: Hebrew cannot be used: Not enabled at compile time\n" +msgstr "E26: Hepreaa ei voi k�ytt��, koska sit� ei k��nnetty mukaan\n" + +msgid "E27: Farsi cannot be used: Not enabled at compile time\n" +msgstr "E27: Farsia ei voi k�ytt��, koska sit� ei k��nnetty mukaan\n" + +msgid "E800: Arabic cannot be used: Not enabled at compile time\n" +msgstr "E800: Arabiaa ei voi k�ytt��, koska sit� ei k��nnetty mukaan\n" + +#, c-format +msgid "E28: No such highlight group name: %s" +msgstr "E28: Korostusryhm�� ei ole nimell�: %s" + +msgid "E29: No inserted text yet" +msgstr "E29: Teksti� ei ole sy�tetty viel�" + +msgid "E30: No previous command line" +msgstr "E30: Ei edellist� komentorivi�" + +msgid "E31: No such mapping" +msgstr "E31: Kuvausta ei ole" + +msgid "E479: No match" +msgstr "E479: Ei t�sm��" + +#, c-format +msgid "E480: No match: %s" +msgstr "E480: Ei ts�m��: %s" + +msgid "E32: No file name" +msgstr "E32: Ei tiedostonime�" + +msgid "E33: No previous substitute regular expression" +msgstr "E33: Ei edellist� korvausta s��nn�lliselle ilmaukselle" + +msgid "E34: No previous command" +msgstr "E34: Ei edellist� komentoa" + +msgid "E35: No previous regular expression" +msgstr "E35: Ei edellist� s��nn�llist� ilmausta" + +msgid "E481: No range allowed" +msgstr "E481: Arvoalue ei sallittu" + +msgid "E36: Not enough room" +msgstr "E36: Tila ei riit�" + +#, c-format +msgid "E247: no registered server named \"%s\"" +msgstr "E247: palvelinta %s ei ole rekister�ityn�" + +#, c-format +msgid "E482: Can't create file %s" +msgstr "E482: Tiedostoa %s ei voi luoda" + +msgid "E483: Can't get temp file name" +msgstr "E483: v�liaikaistiedoston nime� ei saada selville" + +#, c-format +msgid "E484: Can't open file %s" +msgstr "E484: Ei voi avata tiedostoa %s" + +#, c-format +msgid "E485: Can't read file %s" +msgstr "E485: Ei voi lukea tiedostoa %s" + +msgid "E37: No write since last change (add ! to override)" +msgstr "" +"E37: Viimeisen muutoksen j�lkeen ei ole kirjoitettu (lis�� ! ohittaaksesi)" + +msgid "E38: Null argument" +msgstr "E38: Null-argumentti" + +msgid "E39: Number expected" +msgstr "E39: Pit�� olla numero" + +#, c-format +msgid "E40: Can't open errorfile %s" +msgstr "E40: virhetiedostoa %s ei voi avata" + +msgid "E233: cannot open display" +msgstr "E233: n�ytt�� ei voi avata" + +msgid "E41: Out of memory!" +msgstr "E41: Muisti loppui" + +msgid "Pattern not found" +msgstr "Kuviota ei l�ydy" + +#, c-format +msgid "E486: Pattern not found: %s" +msgstr "E486: Kuviota ei l�ydy: %s" + +msgid "E487: Argument must be positive" +msgstr "E487: Argumentin pit�� olla positiivinen" + +msgid "E459: Cannot go back to previous directory" +msgstr "E459: Ei voi siirty� edelliseen hakemistoon" + +# ;-) +msgid "E42: No Errors" +msgstr "E42: Ei virheit�" + +msgid "E776: No location list" +msgstr "E776: Ei sijaintilistaa" + +msgid "E43: Damaged match string" +msgstr "E43: Viallinen t�sm�ysmerkkijono" + +msgid "E44: Corrupted regexp program" +msgstr "E44: Viallinen regexp-ohjelma" + +msgid "E45: 'readonly' option is set (add ! to override)" +msgstr "E45: readonly asetettu (lis�� ! ohittaaksesi)" + +#, c-format +msgid "E46: Cannot change read-only variable \"%s\"" +msgstr "E46: Kirjoitussuojattua muuttujaa %s ei voi muuttaa" + +#, c-format +msgid "E794: Cannot set variable in the sandbox: \"%s\"" +msgstr "E794: Muuttujaa ei voi asettaa hiekkalaatikossa: %s" + +msgid "E47: Error while reading errorfile" +msgstr "E47: Virhe virhetiedostoa luettaessa" + +msgid "E48: Not allowed in sandbox" +msgstr "E48: Ei sallittu hiekkalaatikossa" + +msgid "E523: Not allowed here" +msgstr "E523: Ei sallittu t��ll�" + +msgid "E359: Screen mode setting not supported" +msgstr "E359: N�ytt�tila-asetus ei tuettu" + +msgid "E49: Invalid scroll size" +msgstr "E49: Virheellinen vierityskoko" + +msgid "E91: 'shell' option is empty" +msgstr "E91: shell-asetus on tyhj�" + +msgid "E255: Couldn't read in sign data!" +msgstr "E255: Merkkidatan luku ei onnistu" + +msgid "E72: Close error on swap file" +msgstr "E72: Swap-tiedoston sulkemisvirhe" + +msgid "E73: tag stack empty" +msgstr "E73: t�gipino tyhj�" + +msgid "E74: Command too complex" +msgstr "E74: Liian monimutkainen komento" + +msgid "E75: Name too long" +msgstr "E75: Liian pitk� nimi" + +msgid "E76: Too many [" +msgstr "E76: Liian monta [:a" + +msgid "E77: Too many file names" +msgstr "E77: Liikaa tiedostonimi�" + +msgid "E488: Trailing characters" +msgstr "E488: Ylim��r�isi� merkkej� per�ss�" + +msgid "E78: Unknown mark" +msgstr "E78: Tuntematon merkki" + +msgid "E79: Cannot expand wildcards" +msgstr "E79: Jokerimerkkien avaus ei onnistu" + +msgid "E591: 'winheight' cannot be smaller than 'winminheight'" +msgstr "E591: winheight ei voi olla pienempi kuin winminheight" + +msgid "E592: 'winwidth' cannot be smaller than 'winminwidth'" +msgstr "E592: winwidth ei voi olla pienempi kuin winminwidth" + +msgid "E80: Error while writing" +msgstr "E80: Kirjoitusvirhe" + +msgid "Zero count" +msgstr "Nollalaskuri" + +msgid "E81: Using <SID> not in a script context" +msgstr "E81: <SID> skriptin ulkopuolella" + +msgid "E449: Invalid expression received" +msgstr "E449: Virheellinen ilmaus saatu" + +msgid "E463: Region is guarded, cannot modify" +msgstr "E463: Alue on suojattu, muuttaminen ei onnistu" + +msgid "E744: NetBeans does not allow changes in read-only files" +msgstr "E744: NetBeans ei tue muutoksia kirjoitussuojattuihin tiedostoihin" + +#, c-format +msgid "E685: Internal error: %s" +msgstr "E685: Sis�inen virhe: %s" + +msgid "E363: pattern uses more memory than 'maxmempattern'" +msgstr "E363: kuvio k�ytt�� enemm�n muistia kuin maxmempattern on" + +msgid "E749: empty buffer" +msgstr "E749: tyhj� puskuri" + +msgid "E682: Invalid search pattern or delimiter" +msgstr "E682: Virheellinen hakulauseke tai erotin" + +msgid "E139: File is loaded in another buffer" +msgstr "E139: Tiedosto on ladattu toiseen puskuriin" + +#, c-format +msgid "E764: Option '%s' is not set" +msgstr "E764: Asetus %s on asettamatta" + +msgid "search hit TOP, continuing at BOTTOM" +msgstr "haku p��si ALKUUN, jatketaan LOPUSTA" + +msgid "search hit BOTTOM, continuing at TOP" +msgstr "haku p��si LOPPUUN, jatketaan ALUSTA" + +#~ msgid "-V[N]\t\tVerbose level" +#~ msgstr "-V[N]\t\tMonisanaisuustaso" + +#~ msgid "...(truncated)" +#~ msgstr "...(katkaistu)"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/po/pt_BR.po Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,6131 @@ +# Brazilian Portuguese Translation for Vim vim:set foldmethod=marker: +# +msgid "" +msgstr "" +"Project-Id-Version: Vim 7.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2008-07-11 19:38-0300\n" +"PO-Revision-Date: 2008-07-13 13:14-0300\n" +"Last-Translator: Eduardo S. Dobay <edudobay@gmail.com>\n" +"Language-Team: Brazilian Portuguese <pt-br@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ISO-8859-1\n" +"Content-Transfer-Encoding: 8bit\n" + +msgid "E82: Cannot allocate any buffer, exiting..." +msgstr "E82: N�o foi poss�vel alocar nenhum buffer, saindo do Vim..." + +msgid "E83: Cannot allocate buffer, using other one..." +msgstr "E83: Imposs�vel alocar buffer; tentando usar outro..." + +msgid "E515: No buffers were unloaded" +msgstr "E515: Nenhum buffer foi descarregado" + +msgid "E516: No buffers were deleted" +msgstr "E516: Nenhum buffer foi apagado" + +msgid "E517: No buffers were wiped out" +msgstr "E517: Nenhum buffer foi eliminado" + +msgid "1 buffer unloaded" +msgstr "1 buffer descarregado" + +#, c-format +msgid "%d buffers unloaded" +msgstr "%d buffers descarregados" + +msgid "1 buffer deleted" +msgstr "1 buffer apagado" + +#, c-format +msgid "%d buffers deleted" +msgstr "%d buffers apagados" + +msgid "1 buffer wiped out" +msgstr "1 buffer eliminado" + +#, c-format +msgid "%d buffers wiped out" +msgstr "%d buffers eliminados" + +msgid "E84: No modified buffer found" +msgstr "E84: N�o foram encontrados buffers modificados" + +#. back where we started, didn't find anything. +msgid "E85: There is no listed buffer" +msgstr "E85: N�o h� buffers listados" + +#, c-format +msgid "E86: Buffer %ld does not exist" +msgstr "E86: Buffer %ld n�o existe" + +msgid "E87: Cannot go beyond last buffer" +msgstr "E87: N�o � poss�vel ir al�m do �ltimo buffer" + +msgid "E88: Cannot go before first buffer" +msgstr "E88: N�o � poss�vel ir para antes do primeiro buffer" + +#, c-format +msgid "E89: No write since last change for buffer %ld (add ! to override)" +msgstr "E89: Altera��es no buffer %ld n�o foram gravadas (adicione ! para for�ar)" + +msgid "E90: Cannot unload last buffer" +msgstr "E90: Imposs�vel descarregar �ltimo buffer" + +msgid "W14: Warning: List of file names overflow" +msgstr "W14: Aviso: Estouro da lista de nomes de arquivos" + +#, c-format +msgid "E92: Buffer %ld not found" +msgstr "E92: Buffer %ld n�o encontrado" + +#, c-format +msgid "E93: More than one match for %s" +msgstr "E93: Mais de uma correspond�ncia com %s" + +#, c-format +msgid "E94: No matching buffer for %s" +msgstr "E94: Nenhum buffer coincide com %s" + +#, c-format +msgid "line %ld" +msgstr "linha %ld" + +msgid "E95: Buffer with this name already exists" +msgstr "E95: J� existe um buffer com esse nome" + +msgid " [Modified]" +msgstr " [Modificado]" + +msgid "[Not edited]" +msgstr "[N�o editado]" + +msgid "[New file]" +msgstr "[Novo arquivo]" + +msgid "[Read errors]" +msgstr "[Erros de leitura]" + +msgid "[readonly]" +msgstr "[somente-leitura]" + +#, c-format +msgid "1 line --%d%%--" +msgstr "1 linha --%d%%--" + +#, c-format +msgid "%ld lines --%d%%--" +msgstr "%ld linhas --%d%%--" + +#, c-format +msgid "line %ld of %ld --%d%%-- col " +msgstr "linha %ld de %ld --%d%%-- col " + +msgid "[No Name]" +msgstr "[Sem nome]" + +#. must be a help buffer +msgid "help" +msgstr "ajuda" + +msgid "[Help]" +msgstr "[Ajuda]" + +msgid "[Preview]" +msgstr "[Visualiza��o]" + +msgid "All" +msgstr "Tudo" + +msgid "Bot" +msgstr "Fim" + +msgid "Top" +msgstr "Topo" + +#, c-format +msgid "" +"\n" +"# Buffer list:\n" +msgstr "" +"\n" +"# Lista de buffers:\n" + +msgid "[Location List]" +msgstr "[Lista de locais]" + +msgid "[Quickfix List]" +msgstr "[Lista quickfix]" + +msgid "" +"\n" +"--- Signs ---" +msgstr "" +"\n" +"--- Sinais ---" + +#, c-format +msgid "Signs for %s:" +msgstr "Sinais para %s:" + +#, c-format +msgid " line=%ld id=%d name=%s" +msgstr " linha=%ld id=%d nome=%s" + +#, c-format +msgid "E96: Can not diff more than %ld buffers" +msgstr "E96: N�o � poss�vel usar diff com mais de %ld buffers" + +msgid "E97: Cannot create diffs" +msgstr "E97: diff n�o funcionou" + +msgid "Patch file" +msgstr "Selecionar arquivo de patch" + +msgid "E98: Cannot read diff output" +msgstr "E98: N�o foi poss�vel ler o resultado do diff" + +msgid "E99: Current buffer is not in diff mode" +msgstr "E99: O buffer atual n�o est� no modo diff" + +msgid "E793: No other buffer in diff mode is modifiable" +msgstr "E793: N�o h� nenhum outro buffer modific�vel em modo diff" + +msgid "E100: No other buffer in diff mode" +msgstr "E100: N�o h� nenhum outro buffer no modo diff" + +msgid "E101: More than two buffers in diff mode, don't know which one to use" +msgstr "E101: H� mais de dois buffers no modo diff; n�o sei quais usar" + +#, c-format +msgid "E102: Can't find buffer \"%s\"" +msgstr "E102: Buffer \"%s\" n�o encontrado" + +#, c-format +msgid "E103: Buffer \"%s\" is not in diff mode" +msgstr "E103: Buffer \"%s\" n�o est� no modo diff" + +msgid "E787: Buffer changed unexpectedly" +msgstr "E787: Buffer foi alterado inesperadamente" + +msgid "E104: Escape not allowed in digraph" +msgstr "E104: Caractere escape n�o � permitido em d�grafos" + +msgid "E544: Keymap file not found" +msgstr "E544: Arquivo de mapa de teclado n�o encontrado" + +msgid "E105: Using :loadkeymap not in a sourced file" +msgstr "E105: :loadkeymap usado fora de um script Vim" + +msgid "E791: Empty keymap entry" +msgstr "E791: Entrada vazia no mapa de teclado" + +msgid " Keyword completion (^N^P)" +msgstr " Completar palavra-chave (^N^P)" + +#. ctrl_x_mode == 0, ^P/^N compl. +msgid " ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)" +msgstr " modo ^X (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)" + +msgid " Whole line completion (^L^N^P)" +msgstr " Completar linha inteira (^L^N^P)" + +msgid " File name completion (^F^N^P)" +msgstr " Completar nome de arquivo (^F^N^P)" + +msgid " Tag completion (^]^N^P)" +msgstr " Completar marcador (^]^N^P)" + +msgid " Path pattern completion (^N^P)" +msgstr " Completar padr�o de caminho (^N^P)" + +msgid " Definition completion (^D^N^P)" +msgstr " Completar defini��o (^D^N^P)" + +msgid " Dictionary completion (^K^N^P)" +msgstr " Completar do dicion�rio (^K^N^P)" + +msgid " Thesaurus completion (^T^N^P)" +msgstr " Completar do dicion�rio de sin�nimos (^T^N^P)" + +msgid " Command-line completion (^V^N^P)" +msgstr " Completar da linha de comando (^V^N^P)" + +msgid " User defined completion (^U^N^P)" +msgstr " Completar definido pelo usu�rio (^U^N^P)" + +msgid " Omni completion (^O^N^P)" +msgstr " Completa��o inteligente (^O^N^P)" + +msgid " Spelling suggestion (s^N^P)" +msgstr " Sugest�o de ortografia (s^N^P)" + +msgid " Keyword Local completion (^N^P)" +msgstr " Completar palavra-chave local (^N^P)" + +msgid "Hit end of paragraph" +msgstr "Fim do par�grafo atingido" + +msgid "'dictionary' option is empty" +msgstr "op��o 'dictionary' vazia" + +msgid "'thesaurus' option is empty" +msgstr "op��o 'thesaurus' vazia" + +#, c-format +msgid "Scanning dictionary: %s" +msgstr "Examinando dicion�rio: %s" + +msgid " (insert) Scroll (^E/^Y)" +msgstr " (inser��o) Rolagem (^E/^Y)" + +msgid " (replace) Scroll (^E/^Y)" +msgstr " (substitui��o) Rolagem (^E/^Y)" + +#, c-format +msgid "Scanning: %s" +msgstr "Examinando: %s" + +#, c-format +msgid "Scanning tags." +msgstr "Examinando tags." + +msgid " Adding" +msgstr " Adicionando" + +#. showmode might reset the internal line pointers, so it must +#. * be called before line = ml_get(), or when this address is no +#. * longer needed. -- Acevedo. +#. +msgid "-- Searching..." +msgstr "-- Procurando..." + +msgid "Back at original" +msgstr "De volta ao original" + +msgid "Word from other line" +msgstr "Palavra de outra linha" + +msgid "The only match" +msgstr "A �nica correspond�ncia" + +#, c-format +msgid "match %d of %d" +msgstr "correspond�ncia %d de %d" + +#, c-format +msgid "match %d" +msgstr "correspond�ncia %d" + +msgid "E18: Unexpected characters in :let" +msgstr "E18: Caracteres inesperados em :let" + +#, c-format +msgid "E684: list index out of range: %ld" +msgstr "E684: �ndice da lista fora dos limites: %ld" + +#, c-format +msgid "E121: Undefined variable: %s" +msgstr "E121: Vari�vel indefinida: %s" + +msgid "E111: Missing ']'" +msgstr "E111: ']' faltando" + +#, c-format +msgid "E686: Argument of %s must be a List" +msgstr "E686: Argumento de %s deve ser uma Lista" + +#, c-format +msgid "E712: Argument of %s must be a List or Dictionary" +msgstr "E712: Argumento de %s deve ser uma Lista ou Dicion�rio" + +msgid "E713: Cannot use empty key for Dictionary" +msgstr "E713: Imposs�vel usar chave vazia num Dicion�rio" + +msgid "E714: List required" +msgstr "E714: Lista requerida" + +msgid "E715: Dictionary required" +msgstr "E715: Dicion�rio requerido" + +#, c-format +msgid "E118: Too many arguments for function: %s" +msgstr "E118: Muitos argumentos para a fun��o: %s" + +#, c-format +msgid "E716: Key not present in Dictionary: %s" +msgstr "E716: Chave inexistente no Dicion�rio: %s" + +#, c-format +msgid "E122: Function %s already exists, add ! to replace it" +msgstr "E122: Fun��o %s j� existe, adicione ! para substitu�-la" + +msgid "E717: Dictionary entry already exists" +msgstr "E717: Entrada do Dicion�rio j� existente" + +msgid "E718: Funcref required" +msgstr "E718: Refer�ncia de fun��o (Funcref) requerida" + +msgid "E719: Cannot use [:] with a Dictionary" +msgstr "E719: N�o � poss�vel usar [:] com um Dicion�rio" + +#, c-format +msgid "E734: Wrong variable type for %s=" +msgstr "E734: Vari�vel de tipo errado para %s=" + +#, c-format +msgid "E130: Unknown function: %s" +msgstr "E130: Fun��o desconhecida: %s" + +#, c-format +msgid "E461: Illegal variable name: %s" +msgstr "E461: Nome ilegal para vari�vel: %s" + +msgid "E687: Less targets than List items" +msgstr "E687: H� menos destinos que itens na Lista" + +msgid "E688: More targets than List items" +msgstr "E688: H� mais destinos que itens na Lista" + +msgid "Double ; in list of variables" +msgstr "; duplo na lista de vari�veis" + +#, c-format +msgid "E738: Can't list variables for %s" +msgstr "E738: Imposs�vel listar vari�veis %s" + +msgid "E689: Can only index a List or Dictionary" +msgstr "E689: S� Listas ou Dicion�rios podem ser indexados" + +msgid "E708: [:] must come last" +msgstr "E708: [:] deve vir por �ltimo" + +msgid "E709: [:] requires a List value" +msgstr "E709: [:] requer uma Lista" + +msgid "E710: List value has more items than target" +msgstr "E710: a Lista tem mais itens que o destino" + +msgid "E711: List value has not enough items" +msgstr "E711: a Lista n�o tem itens suficientes" + +msgid "E690: Missing \"in\" after :for" +msgstr "E690: \"in\" faltando ap�s :for" + +#, c-format +msgid "E107: Missing braces: %s" +msgstr "E107: Par�nteses faltando: %s" + +#, c-format +msgid "E108: No such variable: \"%s\"" +msgstr "E108: Vari�vel inexistente: \"%s\"" + +msgid "E743: variable nested too deep for (un)lock" +msgstr "E743: vari�vel aninhada demais para ser (des)bloqueada" + +msgid "E109: Missing ':' after '?'" +msgstr "E109: ':' faltando depois de '?'" + +msgid "E691: Can only compare List with List" +msgstr "E691: Uma Lista s� pode ser comparada com outra Lista" + +msgid "E692: Invalid operation for Lists" +msgstr "E692: Opera��o inv�lida para Listas" + +msgid "E735: Can only compare Dictionary with Dictionary" +msgstr "E735: Um Dicion�rio s� pode ser comparado com outro Dicion�rio" + +msgid "E736: Invalid operation for Dictionary" +msgstr "E736: Opera��o inv�lida para um Dicion�rio" + +msgid "E693: Can only compare Funcref with Funcref" +msgstr "E693: Funcref s� pode ser comparada com outra Funcref" + +msgid "E694: Invalid operation for Funcrefs" +msgstr "E694: Opera��o inv�lida para Funcrefs" + +msgid "E110: Missing ')'" +msgstr "E110: ')' faltando" + +msgid "E695: Cannot index a Funcref" +msgstr "E695: N�o � poss�vel indexar uma Funcref" + +#, c-format +msgid "E112: Option name missing: %s" +msgstr "E112: Nome de op��o faltando: %s" + +#, c-format +msgid "E113: Unknown option: %s" +msgstr "E113: Op��o desconhecida: %s" + +#, c-format +msgid "E114: Missing quote: %s" +msgstr "E114: Aspas duplas (\") faltando: %s" + +#, c-format +msgid "E115: Missing quote: %s" +msgstr "E115: Aspas simples (') faltando: %s" + +#, c-format +msgid "E696: Missing comma in List: %s" +msgstr "E696: Falta uma v�rgula na Lista: %s" + +#, c-format +msgid "E697: Missing end of List ']': %s" +msgstr "E697: Lista n�o finalizada com ']': %s" + +#, c-format +msgid "E720: Missing colon in Dictionary: %s" +msgstr "E720: Dois-pontos faltando no Dicion�rio: %s" + +#, c-format +msgid "E721: Duplicate key in Dictionary: \"%s\"" +msgstr "E721: Chave duplicada no Dicion�rio: \"%s\"" + +#, c-format +msgid "E722: Missing comma in Dictionary: %s" +msgstr "E722: V�rgula faltando no Dicion�rio: %s" + +#, c-format +msgid "E723: Missing end of Dictionary '}': %s" +msgstr "E723: Dicion�rio n�o finalizado com '}': %s" + +msgid "E724: variable nested too deep for displaying" +msgstr "E724: vari�vel aninhada demais para ser exibida" + +#, c-format +msgid "E117: Unknown function: %s" +msgstr "E117: Fun��o desconhecida: %s" + +#, c-format +msgid "E119: Not enough arguments for function: %s" +msgstr "E119: Argumentos insuficientes para a fun��o: %s" + +#, c-format +msgid "E120: Using <SID> not in a script context: %s" +msgstr "E120: <SID> usado fora de um script: %s" + +#, c-format +msgid "E725: Calling dict function without Dictionary: %s" +msgstr "E725: Fun��o dict chamada sem um Dicion�rio: %s" + +msgid "E699: Too many arguments" +msgstr "E699: Argumentos demais" + +msgid "E785: complete() can only be used in Insert mode" +msgstr "E785: complete() s� pode ser usado no modo de Inser��o" + +#. +#. * Yes this is ugly, I don't particularly like it either. But doing it +#. * this way has the compelling advantage that translations need not to +#. * be touched at all. See below what 'ok' and 'ync' are used for. +#. +msgid "&Ok" +msgstr "&OK" + +#, c-format +msgid "E737: Key already exists: %s" +msgstr "E737: Chave j� existe: %s" + +#, c-format +msgid "+-%s%3ld lines: " +msgstr "+-%s%3ld linhas: " + +#, c-format +msgid "E700: Unknown function: %s" +msgstr "E700: Fun��o desconhecida: %s" + +msgid "" +"&OK\n" +"&Cancel" +msgstr "" +"&OK\n" +"&Cancelar" + +msgid "called inputrestore() more often than inputsave()" +msgstr "inputrestore() foi chamado mais vezes que inputsave()" + +msgid "E786: Range not allowed" +msgstr "E786: Intervalos n�o s�o permitidos" + +msgid "E701: Invalid type for len()" +msgstr "E701: Tipo inv�lido para len()" + +msgid "E726: Stride is zero" +msgstr "E726: Incremento nulo" + +msgid "E727: Start past end" +msgstr "E727: O in�cio est� depois do fim" + +msgid "<empty>" +msgstr "<vazio>" + +msgid "E240: No connection to Vim server" +msgstr "E240: Nenhuma conex�o a um servidor do Vim" + +#, c-format +msgid "E241: Unable to send to %s" +msgstr "E241: N�o foi poss�vel enviar para %s" + +msgid "E277: Unable to read a server reply" +msgstr "E277: N�o foi poss�vel ler a resposta do servidor" + +msgid "E655: Too many symbolic links (cycle?)" +msgstr "E655: Links simb�licos em excesso (c�clicos?)" + +msgid "E258: Unable to send to client" +msgstr "E258: N�o foi poss�vel enviar ao cliente" + +msgid "E702: Sort compare function failed" +msgstr "E702: A fun��o de compara��o para a classifica��o falhou" + +msgid "(Invalid)" +msgstr "(Inv�lido)" + +msgid "E677: Error writing temp file" +msgstr "E677: Erro ao gravar o arquivo tempor�rio" + +msgid "E703: Using a Funcref as a number" +msgstr "E703: Funcref usada como n�mero" + +msgid "E745: Using a List as a number" +msgstr "E745: Lista usada como n�mero" + +msgid "E728: Using a Dictionary as a number" +msgstr "E728: Dicion�rio usado como n�mero" + +msgid "E729: using Funcref as a String" +msgstr "E729: Funcref usada como String" + +msgid "E730: using List as a String" +msgstr "E730: Lista usada como String" + +msgid "E731: using Dictionary as a String" +msgstr "E731: Dicion�rio usado como String" + +#, c-format +msgid "E704: Funcref variable name must start with a capital: %s" +msgstr "E704: Nome de vari�vel Funcref deve come�ar com letra mai�scula: %s" + +#, c-format +msgid "E705: Variable name conflicts with existing function: %s" +msgstr "E705: Nome da vari�vel em conflito com fun��o j� existente: %s" + +#, c-format +msgid "E706: Variable type mismatch for: %s" +msgstr "E706: Tipo de vari�vel incoerente para: %s" + +#, c-format +msgid "E795: Cannot delete variable %s" +msgstr "E795: Imposs�vel excluir vari�vel %s" + +#, c-format +msgid "E741: Value is locked: %s" +msgstr "E741: Valor bloqueado: %s" + +msgid "Unknown" +msgstr "Desconhecido" + +#, c-format +msgid "E742: Cannot change value of %s" +msgstr "E742: N�o � poss�vel mudar valor de %s" + +msgid "E698: variable nested too deep for making a copy" +msgstr "E698: vari�vel aninhada demais para fazer uma c�pia" + +#, c-format +msgid "E124: Missing '(': %s" +msgstr "E124: '(' faltando: %s" + +#, c-format +msgid "E125: Illegal argument: %s" +msgstr "E125: Argumento inv�lido: %s" + +msgid "E126: Missing :endfunction" +msgstr "E126: :endfunction faltando" + +#, c-format +msgid "E746: Function name does not match script file name: %s" +msgstr "E746: Nome da fun��o n�o coincide com o nome de arquivo do script: %s" + +msgid "E129: Function name required" +msgstr "E129: Nome da fun��o requerido" + +#, c-format +msgid "E128: Function name must start with a capital or contain a colon: %s" +msgstr "E128: Nome da fun��o deve come�ar com letra mai�scula ou conter dois-pontos: %s" + +#, c-format +msgid "E131: Cannot delete function %s: It is in use" +msgstr "E131: N�o � poss�vel excluir a fun��o %s: ela est� em uso" + +msgid "E132: Function call depth is higher than 'maxfuncdepth'" +msgstr "E132: Profundidade de chamadas de fun��o � maior que 'maxfuncdepth'" + +#, c-format +msgid "calling %s" +msgstr "chamando %s" + +#, c-format +msgid "%s aborted" +msgstr "%s cancelada" + +#, c-format +msgid "%s returning #%ld" +msgstr "%s devolveu #%ld" + +#, c-format +msgid "%s returning %s" +msgstr "%s devolveu %s" + +#, c-format +msgid "continuing in %s" +msgstr "continuando em %s" + +msgid "E133: :return not inside a function" +msgstr "E133: :return fora de uma fun��o" + +#, c-format +msgid "" +"\n" +"# global variables:\n" +msgstr "" +"\n" +"# vari�veis globais:\n" + +msgid "" +"\n" +"\tLast set from " +msgstr "" +"\n" +"\tDefinido pela �ltima vez em " + +#, c-format +msgid "<%s>%s%s %d, Hex %02x, Octal %03o" +msgstr "<%s>%s%s %d, Hex %02x, Octal %03o" + +#, c-format +msgid "> %d, Hex %04x, Octal %o" +msgstr "> %d, Hex %04x, Octal %o" + +#, c-format +msgid "> %d, Hex %08x, Octal %o" +msgstr "> %d, Hex %08x, Octal %o" + +msgid "E134: Move lines into themselves" +msgstr "E134: O destino coincide com a origem" + +msgid "1 line moved" +msgstr "1 linha movida" + +#, c-format +msgid "%ld lines moved" +msgstr "%ld linhas movidas" + +#, c-format +msgid "%ld lines filtered" +msgstr "%ld linhas filtradas" + +msgid "E135: *Filter* Autocommands must not change current buffer" +msgstr "E135: Os autocomandos *Filter* n�o devem modificar o buffer atual" + +msgid "[No write since last change]\n" +msgstr "[Altera��es n�o gravadas]\n" + +#, c-format +msgid "%sviminfo: %s in line: " +msgstr "%sviminfo: %s na linha: " + +msgid "E136: viminfo: Too many errors, skipping rest of file" +msgstr "E136: viminfo: H� erros demais; abandonando a leitura do arquivo" + +#, c-format +msgid "Reading viminfo file \"%s\"%s%s%s" +msgstr "Lendo arquivo viminfo \"%s\"%s%s%s" + +msgid " info" +msgstr " info" + +msgid " marks" +msgstr " marcas" + +msgid " FAILED" +msgstr " FALHOU" + +#. avoid a wait_return for this message, it's annoying +#, c-format +msgid "E137: Viminfo file is not writable: %s" +msgstr "E137: O arquivo viminfo n�o pode ser escrito: %s" + +#, c-format +msgid "E138: Can't write viminfo file %s!" +msgstr "E138: N�o � poss�vel gravar o arquivo viminfo %s!" + +#, c-format +msgid "Writing viminfo file \"%s\"" +msgstr "Gravando arquivo viminfo \"%s\"" + +#. Write the info: +#, c-format +msgid "# This viminfo file was generated by Vim %s.\n" +msgstr "# Este arquivo viminfo foi gerado pelo Vim %s.\n" + +#, c-format +msgid "" +"# You may edit it if you're careful!\n" +"\n" +msgstr "" +"# Voc� pode edit�-lo se for cuidadoso!\n" +"\n" + +#, c-format +msgid "# Value of 'encoding' when this file was written\n" +msgstr "# Valor de 'encoding' quando este arquivo foi escrito\n" + +msgid "Illegal starting char" +msgstr "Caractere inicial inv�lido" + +msgid "Save As" +msgstr "Salvar como" + +msgid "Write partial file?" +msgstr "Gravar arquivo parcial?" + +msgid "E140: Use ! to write partial buffer" +msgstr "E140: Use ! para gravar o buffer apenas parcialmente" + +#, c-format +msgid "Overwrite existing file \"%s\"?" +msgstr "Sobrescrever arquivo existente \"%s\"?" + +#, c-format +msgid "Swap file \"%s\" exists, overwrite anyway?" +msgstr "O arquivo de troca \"%s\" existe. Sobrescrev�-lo?" + +#, c-format +msgid "E768: Swap file exists: %s (:silent! overrides)" +msgstr "E768: Arquivo de troca existe: %s (:silent! para for�ar)" + +#, c-format +msgid "E141: No file name for buffer %ld" +msgstr "E141: Sem nome de arquivo para o buffer %ld" + +msgid "E142: File not written: Writing is disabled by 'write' option" +msgstr "E142: Arquivo n�o gravado: grava��o desativada pela op��o 'write'" + +#, c-format +msgid "" +"'readonly' option is set for \"%s\".\n" +"Do you wish to write anyway?" +msgstr "" +"\"%s\" est� com a op��o 'readonly' (somente-leitura) ativada.\n" +"Voc� deseja gravar assim mesmo?" + +#, c-format +msgid "" +"File permissions of \"%s\" are read-only.\n" +"It may still be possible to write it.\n" +"Do you wish to try?" +msgstr "" +"As permiss�es para \"%s\" s�o somente-leitura.\n" +"Ainda pode ser poss�vel gravar no arquivo.\n" +"Voc� deseja tentar?" + +#, c-format +msgid "E505: \"%s\" is read-only (add ! to override)" +msgstr "E505: \"%s\" � somente-leitura (adicione ! para for�ar)" + +msgid "Edit File" +msgstr "Editar arquivo" + +#, c-format +msgid "E143: Autocommands unexpectedly deleted new buffer %s" +msgstr "E143: Algum autocomando inesperadamente apagou o buffer %s rec�m-criado" + +msgid "E144: non-numeric argument to :z" +msgstr "E144: argumento n�o-num�rico passado a :z" + +msgid "E145: Shell commands not allowed in rvim" +msgstr "E145: Comandos do shell n�o s�o permitidos no rvim" + +msgid "E146: Regular expressions can't be delimited by letters" +msgstr "E146: Express�es regulares n�o podem ser delimitadas por letras" + +#, c-format +msgid "replace with %s (y/n/a/q/l/^E/^Y)?" +msgstr "substituir por %s (y/n/a/q/l/^E/^Y)?" + +msgid "(Interrupted) " +msgstr "(Interrompido) " + +msgid "1 match" +msgstr "1 correspond�ncia" + +msgid "1 substitution" +msgstr "1 substitui��o" + +#, c-format +msgid "%ld matches" +msgstr "%ld correspond�ncias" + +#, c-format +msgid "%ld substitutions" +msgstr "%ld substitui��es" + +msgid " on 1 line" +msgstr " em 1 linha" + +#, c-format +msgid " on %ld lines" +msgstr " em %ld linhas" + +msgid "E147: Cannot do :global recursive" +msgstr "E147: :global n�o pode ser executado recursivamente" + +msgid "E148: Regular expression missing from global" +msgstr "E148: Express�o regular faltando no comando :global" + +#, c-format +msgid "Pattern found in every line: %s" +msgstr "Padr�o encontrado em toda linha: %s" + +#, c-format +msgid "" +"\n" +"# Last Substitute String:\n" +"$" +msgstr "" +"\n" +"# �ltima string de substitui��o:\n" +"$" + +msgid "E478: Don't panic!" +msgstr "E478: N�o entre em p�nico!" + +#, c-format +msgid "E661: Sorry, no '%s' help for %s" +msgstr "E661: Desculpe, nenhuma ajuda para %s em '%s'" + +#, c-format +msgid "E149: Sorry, no help for %s" +msgstr "E149: Desculpe, nenhuma ajuda para %s" + +#, c-format +msgid "Sorry, help file \"%s\" not found" +msgstr "Desculpe, arquivo de ajuda \"%s\" n�o encontrado" + +#, c-format +msgid "E150: Not a directory: %s" +msgstr "E150: N�o � um diret�rio: %s" + +#, c-format +msgid "E152: Cannot open %s for writing" +msgstr "E152: N�o foi poss�vel abrir %s para escrita" + +#, c-format +msgid "E153: Unable to open %s for reading" +msgstr "E153: N�o foi poss�vel abrir %s para leitura" + +#, c-format +msgid "E670: Mix of help file encodings within a language: %s" +msgstr "E670: Mistura de codifica��es nos arquivos de ajuda na l�ngua: %s" + +#, c-format +msgid "E154: Duplicate tag \"%s\" in file %s/%s" +msgstr "E154: Marcador duplicado \"%s\" no arquivo %s/%s" + +#, c-format +msgid "E160: Unknown sign command: %s" +msgstr "E160: Subcomando sign desconhecido: %s" + +msgid "E156: Missing sign name" +msgstr "E156: Nome do sinal faltando" + +msgid "E612: Too many signs defined" +msgstr "E612: Muitos sinais definidos" + +#, c-format +msgid "E239: Invalid sign text: %s" +msgstr "E239: Texto de sinal inv�lido: %s" + +#, c-format +msgid "E155: Unknown sign: %s" +msgstr "E155: Sinal desconhecido: %s" + +msgid "E159: Missing sign number" +msgstr "E159: N�mero do sinal faltando" + +#, c-format +msgid "E158: Invalid buffer name: %s" +msgstr "E158: Nome de buffer inv�lido: %s" + +#, c-format +msgid "E157: Invalid sign ID: %ld" +msgstr "E157: ID de sinal inv�lido: %ld" + +msgid " (NOT FOUND)" +msgstr " (N�O ENCONTRADO)" + +msgid " (not supported)" +msgstr " (n�o suportado)" + +msgid "[Deleted]" +msgstr "[Exclu�do]" + +msgid "Entering Debug mode. Type \"cont\" to continue." +msgstr "Entrando modo de depura��o. Digite \"cont\" para continuar." + +#, c-format +msgid "line %ld: %s" +msgstr "linha %ld: %s" + +#, c-format +msgid "cmd: %s" +msgstr "cmdo: %s" + +#, c-format +msgid "Breakpoint in \"%s%s\" line %ld" +msgstr "Ponto de interrup��o em \"%s%s\", linha %ld" + +#, c-format +msgid "E161: Breakpoint not found: %s" +msgstr "E161: Ponto de interrup��o n�o encontrado: %s" + +msgid "No breakpoints defined" +msgstr "Nenhum ponto de interrup��o definido" + +#, c-format +msgid "%3d %s %s line %ld" +msgstr "%3d %s %s linha %ld" + +msgid "E750: First use :profile start <fname>" +msgstr "E750: Primeiramente digite :profile start <nome_arquivo>" + +#, c-format +msgid "Save changes to \"%s\"?" +msgstr "Salvar as altera��es em \"%s\"?" + +msgid "Untitled" +msgstr "(Sem t�tulo)" + +#, c-format +msgid "E162: No write since last change for buffer \"%s\"" +msgstr "E162: Altera��es no buffer \"%s\" n�o foram gravadas" + +msgid "Warning: Entered other buffer unexpectedly (check autocommands)" +msgstr "Aviso: Entrada inesperada em outro buffer (verifique os autocomandos)" + +msgid "E163: There is only one file to edit" +msgstr "E163: S� h� um arquivo para editar" + +msgid "E164: Cannot go before first file" +msgstr "E164: Imposs�vel ir antes do primeiro arquivo" + +msgid "E165: Cannot go beyond last file" +msgstr "E165: Imposs�vel ir al�m do �ltimo arquivo" + +#, c-format +msgid "E666: compiler not supported: %s" +msgstr "E666: compilador n�o suportado: %s" + +#, c-format +msgid "Searching for \"%s\" in \"%s\"" +msgstr "Procurando por \"%s\" em \"%s\"" + +#, c-format +msgid "Searching for \"%s\"" +msgstr "Procurando por \"%s\"" + +#, c-format +msgid "not found in 'runtimepath': \"%s\"" +msgstr "n�o encontrado em 'runtimepath': \"%s\"" + +msgid "Source Vim script" +msgstr "Executar script do Vim" + +#, c-format +msgid "Cannot source a directory: \"%s\"" +msgstr "Imposs�vel executar um diret�rio: \"%s\"" + +#, c-format +msgid "could not source \"%s\"" +msgstr "n�o foi poss�vel executar \"%s\"" + +#, c-format +msgid "line %ld: could not source \"%s\"" +msgstr "linha %ld: n�o foi poss�vel executar \"%s\"" + +#, c-format +msgid "sourcing \"%s\"" +msgstr "executando \"%s\"" + +#, c-format +msgid "line %ld: sourcing \"%s\"" +msgstr "linha %ld: executando \"%s\"" + +#, c-format +msgid "finished sourcing %s" +msgstr "fim da execu��o de %s" + +msgid "modeline" +msgstr "modeline" + +msgid "--cmd argument" +msgstr "argumento --cmd" + +msgid "-c argument" +msgstr "argumento -c" + +msgid "environment variable" +msgstr "vari�vel de ambiente" + +msgid "error handler" +msgstr "tratador de erro" + +msgid "W15: Warning: Wrong line separator, ^M may be missing" +msgstr "W15: Aviso: Separador de linha incorreto; ^M pode estar faltando" + +msgid "E167: :scriptencoding used outside of a sourced file" +msgstr "E167: :scriptencoding usado fora de um script" + +msgid "E168: :finish used outside of a sourced file" +msgstr "E168: :finish usado fora de um script" + +#, c-format +msgid "Current %slanguage: \"%s\"" +msgstr "Idioma atual para %s: \"%s\"" + +#, c-format +msgid "E197: Cannot set language to \"%s\"" +msgstr "E197: Imposs�vel definir idioma como \"%s\"" + +msgid "Entering Ex mode. Type \"visual\" to go to Normal mode." +msgstr "Entrando no modo Ex. Digite \"visual\" para ir para o modo Normal." + +msgid "E501: At end-of-file" +msgstr "E501: Fim do arquivo" + +msgid "E169: Command too recursive" +msgstr "E169: Comando recursivo demais" + +#, c-format +msgid "E605: Exception not caught: %s" +msgstr "E605: Exce��o n�o interceptada: %s" + +msgid "End of sourced file" +msgstr "Fim do arquivo executado" + +msgid "End of function" +msgstr "Fim da fun��o" + +msgid "E464: Ambiguous use of user-defined command" +msgstr "E464: Uso amb�guo de comando definido pelo usu�rio" + +msgid "E492: Not an editor command" +msgstr "E492: N�o � um comando do editor" + +msgid "E493: Backwards range given" +msgstr "E493: Intervalo com limites invertidos" + +msgid "Backwards range given, OK to swap" +msgstr "O intervalo dado est� com os limites invertidos. OK para reverter" + +msgid "E494: Use w or w>>" +msgstr "E494: Use w ou w>>" + +msgid "E319: Sorry, the command is not available in this version" +msgstr "E319: Desculpe, esse comando n�o est� dispon�vel nesta vers�o" + +msgid "E172: Only one file name allowed" +msgstr "E172: S� � permitido um nome de arquivo" + +msgid "1 more file to edit. Quit anyway?" +msgstr "Ainda h� 1 arquivo para editar. Sair mesmo assim?" + +#, c-format +msgid "%d more files to edit. Quit anyway?" +msgstr "H� mais %d arquivos para editar. Sair mesmo assim?" + +msgid "E173: 1 more file to edit" +msgstr "E173: Mais 1 arquivo para editar" + +#, c-format +msgid "E173: %ld more files to edit" +msgstr "E173: Mais %ld arquivos para editar" + +msgid "E174: Command already exists: add ! to replace it" +msgstr "E174: Comando j� existe; adicione ! para substitu�-lo" + +msgid "" +"\n" +" Name Args Range Complete Definition" +msgstr "" +"\n" +" Nome Args Intrv Complet. Defini��o" + +msgid "No user-defined commands found" +msgstr "Nenhum comando definido pelo usu�rio foi encontrado" + +msgid "E175: No attribute specified" +msgstr "E175: Nenhum atributo foi especificado" + +msgid "E176: Invalid number of arguments" +msgstr "E176: N�mero inv�lido de argumentos" + +msgid "E177: Count cannot be specified twice" +msgstr "E177: Quantificador n�o pode ser especificado duas vezes" + +msgid "E178: Invalid default value for count" +msgstr "E178: Valor padr�o inv�lido para o quantificador" + +msgid "E179: argument required for -complete" +msgstr "E179: argumento necess�rio para -complete" + +#, c-format +msgid "E181: Invalid attribute: %s" +msgstr "E181: Atributo inv�lido: %s" + +msgid "E182: Invalid command name" +msgstr "E182: Nome de comando inv�lido" + +msgid "E183: User defined commands must start with an uppercase letter" +msgstr "E183: Comandos definidos pelo usu�rio devem come�ar com letra mai�scula" + +#, c-format +msgid "E184: No such user-defined command: %s" +msgstr "E184: N�o existe tal comando definido pelo usu�rio: %s" + +#, c-format +msgid "E180: Invalid complete value: %s" +msgstr "E180: Valor inv�lido para -complete: %s" + +msgid "E468: Completion argument only allowed for custom completion" +msgstr "E468: Argumento s� � permitido para completa��o personalizada" + +msgid "E467: Custom completion requires a function argument" +msgstr "E467: Completa��o autom�tica requer fun��o como argumento" + +#, c-format +msgid "E185: Cannot find color scheme %s" +msgstr "E185: Esquema de cores %s n�o encontrado" + +msgid "Greetings, Vim user!" +msgstr "Sauda��es, usu�rio do Vim!" + +msgid "E784: Cannot close last tab page" +msgstr "E784: N�o � poss�vel fechar a �ltima aba" + +msgid "Already only one tab page" +msgstr "J� h� apenas uma aba" + +msgid "Edit File in new window" +msgstr "Editar arquivo em nova janela" + +#, c-format +msgid "Tab page %d" +msgstr "Aba %d" + +msgid "No swap file" +msgstr "Sem arquivo de troca" + +msgid "Append File" +msgstr "Adicionar arquivo" + +msgid "E747: Cannot change directory, buffer is modified (add ! to override)" +msgstr "E747: Imposs�vel mudar de diret�rio, o buffer foi alterado (adicione ! para for�ar)" + +msgid "E186: No previous directory" +msgstr "E186: N�o h� diret�rio anterior" + +msgid "E187: Unknown" +msgstr "E187: Desconhecido" + +msgid "E465: :winsize requires two number arguments" +msgstr "E465: :winsize requer dois argumentos num�ricos" + +#, c-format +msgid "Window position: X %d, Y %d" +msgstr "Posi��o da janela: X %d, Y %d" + +msgid "E188: Obtaining window position not implemented for this platform" +msgstr "E188: A obten��o da posi��o da janela n�o foi implementada para esta plataforma" + +msgid "E466: :winpos requires two number arguments" +msgstr "E466: :winpos requer dois argumentos num�ricos" + +msgid "Save Redirection" +msgstr "Salvar redirecionamento" + +msgid "Save View" +msgstr "Salvar vis�o atual" + +msgid "Save Session" +msgstr "Salvar sess�o" + +msgid "Save Setup" +msgstr "Salvar configura��es" + +#, c-format +msgid "E739: Cannot create directory: %s" +msgstr "E739: Diret�rio n�o pode ser criado: %s" + +#, c-format +msgid "E189: \"%s\" exists (add ! to override)" +msgstr "E189: \"%s\" existe (adicione ! para for�ar)" + +#, c-format +msgid "E190: Cannot open \"%s\" for writing" +msgstr "E190: \"%s\" n�o pode ser aberto para escrita" + +#. set mark +msgid "E191: Argument must be a letter or forward/backward quote" +msgstr "E191: Argumento deve ser uma letra ou aspa (` ou ')" + +msgid "E192: Recursive use of :normal too deep" +msgstr "E192: Recurs�o excessiva de :normal" + +msgid "E194: No alternate file name to substitute for '#'" +msgstr "E194: Sem nome de arquivo alternativo para substituir '#'" + +msgid "E495: no autocommand file name to substitute for \"<afile>\"" +msgstr "E495: nenhum nome de arquivo de autocomandos para substituir \"<afile>\"" + +msgid "E496: no autocommand buffer number to substitute for \"<abuf>\"" +msgstr "E496: nenhum n�mero de buffer de autocomandos para substituir \"<abuf>\"" + +msgid "E497: no autocommand match name to substitute for \"<amatch>\"" +msgstr "E497: nenhum crit�rio de autocomando para substituir \"<amatch>\"" + +msgid "E498: no :source file name to substitute for \"<sfile>\"" +msgstr "E498: nenhum nome de arquivo :source para substituir \"<sfile>\"" + +#, no-c-format +msgid "E499: Empty file name for '%' or '#', only works with \":p:h\"" +msgstr "E499: Nome de arquivo vazio para '%' ou '#' s� funciona com \":p:h\"" + +msgid "E500: Evaluates to an empty string" +msgstr "E500: Express�o resulta em string vazia" + +msgid "E195: Cannot open viminfo file for reading" +msgstr "E195: O arquivo viminfo n�o pode ser aberto para leitura" + +msgid "E196: No digraphs in this version" +msgstr "E196: Sem suporte a d�grafos nesta vers�o" + +msgid "E608: Cannot :throw exceptions with 'Vim' prefix" +msgstr "E608: N�o � poss�vel lan�ar exce��es com o prefixo 'Vim'" + +#. always scroll up, don't overwrite +#, c-format +msgid "Exception thrown: %s" +msgstr "Exce��o lan�ada: %s" + +#, c-format +msgid "Exception finished: %s" +msgstr "Exce��o conclu�da: %s" + +#, c-format +msgid "Exception discarded: %s" +msgstr "Exce��o descartada: %s" + +#, c-format +msgid "%s, line %ld" +msgstr "%s, linha %ld" + +#. always scroll up, don't overwrite +#, c-format +msgid "Exception caught: %s" +msgstr "Exce��o interceptada: %s" + +#, c-format +msgid "%s made pending" +msgstr "%s tornado(s) pendente(s)" + +#, c-format +msgid "%s resumed" +msgstr "%s continuado(s)" + +#, c-format +msgid "%s discarded" +msgstr "%s descartado(s)" + +msgid "Exception" +msgstr "Exce��o" + +msgid "Error and interrupt" +msgstr "Erro e interrup��o" + +msgid "Error" +msgstr "Erro" + +#. if (pending & CSTP_INTERRUPT) +msgid "Interrupt" +msgstr "Interrup��o" + +msgid "E579: :if nesting too deep" +msgstr "E579: :if aninhado demais" + +msgid "E580: :endif without :if" +msgstr "E580: :endif sem :if" + +msgid "E581: :else without :if" +msgstr "E581: :else sem :if" + +msgid "E582: :elseif without :if" +msgstr "E582: :elseif sem :if" + +msgid "E583: multiple :else" +msgstr "E583: mais de um :else" + +msgid "E584: :elseif after :else" +msgstr "E584: :elseif depois de :else" + +msgid "E585: :while/:for nesting too deep" +msgstr "E585: :while/:for aninhados demais" + +msgid "E586: :continue without :while or :for" +msgstr "E586: :continue sem :while ou :for" + +msgid "E587: :break without :while or :for" +msgstr "E587: :break sem :while ou :for" + +msgid "E732: Using :endfor with :while" +msgstr "E732: :endfor usado com :while" + +msgid "E733: Using :endwhile with :for" +msgstr "E733: :endwhile usado com :for" + +msgid "E601: :try nesting too deep" +msgstr "E601: :try aninhado demais" + +msgid "E603: :catch without :try" +msgstr "E603: :catch sem :try" + +#. Give up for a ":catch" after ":finally" and ignore it. +#. * Just parse. +msgid "E604: :catch after :finally" +msgstr "E604: :catch depois de :finally" + +msgid "E606: :finally without :try" +msgstr "E606: :finally sem :try" + +#. Give up for a multiple ":finally" and ignore it. +msgid "E607: multiple :finally" +msgstr "E607: mais de um :finally" + +msgid "E602: :endtry without :try" +msgstr "E602: :endtry sem :try" + +msgid "E193: :endfunction not inside a function" +msgstr "E193: :endfunction fora de uma fun��o" + +msgid "E788: Not allowed to edit another buffer now" +msgstr "E788: N�o � poss�vel editar outro buffer agora" + +msgid "tagname" +msgstr "marcador" + +msgid " kind file\n" +msgstr " tipo arquivo\n" + +msgid "'history' option is zero" +msgstr "op��o 'history' vale zero" + +#, c-format +msgid "" +"\n" +"# %s History (newest to oldest):\n" +msgstr "" +"\n" +"# Hist�rico de %s (mais recente primeiro):\n" + +msgid "Command Line" +msgstr "Linha de comando" + +msgid "Search String" +msgstr "Express�es de busca" + +msgid "Expression" +msgstr "Express�o" + +msgid "Input Line" +msgstr "Linhas de entrada" + +msgid "E198: cmd_pchar beyond the command length" +msgstr "E198: cmd_pchar al�m do final do comando" + +msgid "E199: Active window or buffer deleted" +msgstr "E199: A janela ou buffer ativo foi apagado" + +msgid "Illegal file name" +msgstr "Nome de arquivo inv�lido" + +msgid "is a directory" +msgstr "� um diret�rio" + +msgid "is not a file" +msgstr "n�o � um arquivo" + +msgid "is a device (disabled with 'opendevice' option)" +msgstr "� um dispositivo (desativado pela op��o 'opendevice')" + +msgid "[New File]" +msgstr "[Novo arquivo]" + +msgid "[New DIRECTORY]" +msgstr "[Novo DIRET�RIO]" + +msgid "[File too big]" +msgstr "[Arquivo muito grande]" + +msgid "[Permission Denied]" +msgstr "[Permiss�o negada]" + +msgid "E200: *ReadPre autocommands made the file unreadable" +msgstr "E200: Autocomandos *ReadPre tornaram o arquivo ileg�vel" + +msgid "E201: *ReadPre autocommands must not change current buffer" +msgstr "E201: Os autocomandos *ReadPre n�o devem alterar o buffer atual" + +msgid "Vim: Reading from stdin...\n" +msgstr "Vim: Lendo da entrada padr�o...\n" + +msgid "Reading from stdin..." +msgstr "Lendo da entrada padr�o..." + +#. Re-opening the original file failed! +msgid "E202: Conversion made file unreadable!" +msgstr "E202: A convers�o tornou o arquivo ileg�vel!" + +msgid "[fifo/socket]" +msgstr "[fifo/socket]" + +msgid "[fifo]" +msgstr "[fifo]" + +msgid "[socket]" +msgstr "[socket]" + +msgid "[character special]" +msgstr "[dispositivo de caractere]" + +msgid "[RO]" +msgstr "[S/L]" + +msgid "[CR missing]" +msgstr "[CR faltando]" + +msgid "[NL found]" +msgstr "[NL encontrado]" + +msgid "[long lines split]" +msgstr "[linhas longas divididas]" + +msgid "[NOT converted]" +msgstr "[N�O convertido]" + +msgid "[converted]" +msgstr "[convertido]" + +msgid "[crypted]" +msgstr "[criptografado]" + +#, c-format +msgid "[CONVERSION ERROR in line %ld]" +msgstr "[ERRO DE CONVERS�O na linha %ld]" + +#, c-format +msgid "[ILLEGAL BYTE in line %ld]" +msgstr "[BYTE INV�LIDO na linha %ld]" + +msgid "[READ ERRORS]" +msgstr "[ERROS DE LEITURA]" + +msgid "Can't find temp file for conversion" +msgstr "N�o foi poss�vel encontrar um arquivo tempor�rio para a convers�o" + +msgid "Conversion with 'charconvert' failed" +msgstr "Convers�o com 'charconvert' falhou" + +msgid "can't read output of 'charconvert'" +msgstr "n�o foi poss�vel ler o resultado de 'charconvert'" + +msgid "E676: No matching autocommands for acwrite buffer" +msgstr "E676: Nenhum comando autom�tico correspondente para acwrite buffer" + +msgid "E203: Autocommands deleted or unloaded buffer to be written" +msgstr "E203: Os autocomandos apagaram ou descarregaram o buffer a ser gravado" + +msgid "E204: Autocommand changed number of lines in unexpected way" +msgstr "E204: Autocomando alterou n�mero de linhas de maneira inesperada" + +msgid "NetBeans dissallows writes of unmodified buffers" +msgstr "NetBeans n�o permite grava��o de buffers n�o modificados" + +msgid "Partial writes disallowed for NetBeans buffers" +msgstr "Grava��o parcial n�o � permitida em buffers do NetBeans" + +msgid "is not a file or writable device" +msgstr "n�o � um arquivo ou dispositivo com permiss�o de escrita" + +msgid "writing to device disabled with 'opendevice' option" +msgstr "escrita em dispositivo desativada pela op��o 'opendevice'" + +msgid "is read-only (add ! to override)" +msgstr "� somente-leitura (adicione ! para for�ar)" + +msgid "E506: Can't write to backup file (add ! to override)" +msgstr "E506: Imposs�vel gravar arquivo de backup (adicione ! para for�ar)" + +msgid "E507: Close error for backup file (add ! to override)" +msgstr "E507: Erro de fechamento no arquivo de backup (adicione ! para for�ar)" + +msgid "E508: Can't read file for backup (add ! to override)" +msgstr "E508: Imposs�vel ler o arquivo para backup (adicione ! para for�ar)" + +msgid "E509: Cannot create backup file (add ! to override)" +msgstr "E509: Imposs�vel criar arquivo de backup (adicione ! para for�ar)" + +msgid "E510: Can't make backup file (add ! to override)" +msgstr "E510: Imposs�vel fazer o backup (adicione ! para for�ar)" + +msgid "E460: The resource fork would be lost (add ! to override)" +msgstr "E460: O resource fork seria perdido (adicione ! para for�ar)" + +msgid "E214: Can't find temp file for writing" +msgstr "E214: N�o foi poss�vel encontrar arquivo tempor�rio para escrita" + +msgid "E213: Cannot convert (add ! to write without conversion)" +msgstr "E213: Imposs�vel converter (adicione ! para gravar sem converter)" + +msgid "E166: Can't open linked file for writing" +msgstr "E166: Imposs�vel abrir liga��o para escrita" + +msgid "E212: Can't open file for writing" +msgstr "E212: Imposs�vel abrir arquivo para escrita" + +msgid "E667: Fsync failed" +msgstr "E667: Fsync falhou" + +msgid "E512: Close failed" +msgstr "E512: Falha no fechamento do arquivo" + +msgid "E513: write error, conversion failed (make 'fenc' empty to override)" +msgstr "E513: erro de grava��o, convers�o falhou (torne 'fenc' vazio para for�ar)" + +msgid "E514: write error (file system full?)" +msgstr "E514: erro de grava��o (sistema de arquivos cheio?)" + +msgid " CONVERSION ERROR" +msgstr " ERRO DE CONVERS�O" + +msgid "[Device]" +msgstr "[Dispositivo]" + +msgid "[New]" +msgstr "[Novo]" + +msgid " [a]" +msgstr " [a]" + +msgid " appended" +msgstr " adicionado(s)" + +msgid " [w]" +msgstr " [g]" + +msgid " written" +msgstr " gravado(s)" + +msgid "E205: Patchmode: can't save original file" +msgstr "E205: patchmode: imposs�vel salvar o arquivo original" + +msgid "E206: patchmode: can't touch empty original file" +msgstr "E206: patchmode: imposs�vel criar arquivo original vazio" + +msgid "E207: Can't delete backup file" +msgstr "E207: Imposs�vel excluir arquivo de backup" + +msgid "" +"\n" +"WARNING: Original file may be lost or damaged\n" +msgstr "" +"\n" +"AVISO: O arquivo original pode ter sido perdido ou danificado\n" + +msgid "don't quit the editor until the file is successfully written!" +msgstr "n�o saia do editor at� que o arquivo tenha sido gravado com sucesso!" + +msgid "[dos]" +msgstr "[dos]" + +msgid "[dos format]" +msgstr "[formato dos]" + +msgid "[mac]" +msgstr "[mac]" + +msgid "[mac format]" +msgstr "[formato mac]" + +msgid "[unix]" +msgstr "[unix]" + +msgid "[unix format]" +msgstr "[formato unix]" + +msgid "1 line, " +msgstr "1 linha, " + +#, c-format +msgid "%ld lines, " +msgstr "%ld linhas, " + +msgid "1 character" +msgstr "1 caractere" + +#, c-format +msgid "%ld characters" +msgstr "%ld caracteres" + +msgid "[noeol]" +msgstr "[sem fim de linha]" + +msgid "[Incomplete last line]" +msgstr "[�ltima linha incompleta]" + +#. don't overwrite messages here +#. must give this prompt +#. don't use emsg() here, don't want to flush the buffers +msgid "WARNING: The file has been changed since reading it!!!" +msgstr "AVISO: O arquivo foi alterado desde que foi carregado!!!" + +msgid "Do you really want to write to it" +msgstr "Voc� realmente deseja grav�-lo" + +#, c-format +msgid "E208: Error writing to \"%s\"" +msgstr "E208: Erro ao gravar \"%s\"" + +#, c-format +msgid "E209: Error closing \"%s\"" +msgstr "E209: Erro ao fechar \"%s\"" + +#, c-format +msgid "E210: Error reading \"%s\"" +msgstr "E210: Erro ao ler \"%s\"" + +msgid "E246: FileChangedShell autocommand deleted buffer" +msgstr "E246: O autocomando FileChangedShell apagou o buffer" + +#, c-format +msgid "E211: File \"%s\" no longer available" +msgstr "E211: Arquivo \"%s\" n�o est� mais dispon�vel" + +#, c-format +msgid "W12: Warning: File \"%s\" has changed and the buffer was changed in Vim as well" +msgstr "W12: Aviso: O arquivo \"%s\" foi alterado e o buffer tamb�m foi alterado no Vim!" + +msgid "See \":help W12\" for more info." +msgstr "Veja \":help W12\" para mais informa��es." + +#, c-format +msgid "W11: Warning: File \"%s\" has changed since editing started" +msgstr "W11: Aviso: O arquivo \"%s\" foi alterado desde o in�cio da edi��o!" + +msgid "See \":help W11\" for more info." +msgstr "Veja \":help W11\" para mais informa��es." + +#, c-format +msgid "W16: Warning: Mode of file \"%s\" has changed since editing started" +msgstr "W16: Aviso: O modo do arquivo \"%s\" foi alterado desde o in�cio da edi��o!" + +msgid "See \":help W16\" for more info." +msgstr "Veja \":help W16\" para mais informa��es." + +#, c-format +msgid "W13: Warning: File \"%s\" has been created after editing started" +msgstr "W13: Aviso: O arquivo \"%s\" foi criado ap�s o in�cio da edi��o!" + +msgid "Warning" +msgstr "Aviso" + +msgid "" +"&OK\n" +"&Load File" +msgstr "" +"&OK\n" +"&Carregar arquivo" + +#, c-format +msgid "E462: Could not prepare for reloading \"%s\"" +msgstr "E462: N�o foi poss�vel preparar \"%s\" para ser recarregado" + +#, c-format +msgid "E321: Could not reload \"%s\"" +msgstr "E321: N�o foi poss�vel recarregar \"%s\"" + +msgid "--Deleted--" +msgstr "--Exclu�do--" + +#, c-format +msgid "auto-removing autocommand: %s <buffer=%d>" +msgstr "removendo automaticamente o autocomando: %s <buffer=%d>" + +#. the group doesn't exist +#, c-format +msgid "E367: No such group: \"%s\"" +msgstr "E367: Grupo inexistente: \"%s\"" + +#, c-format +msgid "E215: Illegal character after *: %s" +msgstr "E215: Caractere inv�lido ap�s *: %s" + +#, c-format +msgid "E216: No such event: %s" +msgstr "E216: Evento inexistente: %s" + +#, c-format +msgid "E216: No such group or event: %s" +msgstr "E216: Grupo ou evento inexistente: %s" + +#. Highlight title +msgid "" +"\n" +"--- Auto-Commands ---" +msgstr "" +"\n" +"--- Autocomandos ---" + +#, c-format +msgid "E680: <buffer=%d>: invalid buffer number " +msgstr "E680: <buffer=%d>: n�mero inv�lido de buffer " + +msgid "E217: Can't execute autocommands for ALL events" +msgstr "E217: N�o � poss�vel executar autocomandos para TODOS os eventos" + +msgid "No matching autocommands" +msgstr "Nenhum autocomando coincidente" + +msgid "E218: autocommand nesting too deep" +msgstr "E218: autocomandos aninhados demais" + +#, c-format +msgid "%s Auto commands for \"%s\"" +msgstr "Comandos autom�ticos %s para \"%s\"" + +#, c-format +msgid "Executing %s" +msgstr "Executando %s" + +#, c-format +msgid "autocommand %s" +msgstr "autocomando %s" + +msgid "E219: Missing {." +msgstr "E219: { faltando." + +msgid "E220: Missing }." +msgstr "E220: } faltando." + +msgid "E490: No fold found" +msgstr "E490: Nenhuma dobra encontrada" + +msgid "E350: Cannot create fold with current 'foldmethod'" +msgstr "E350: Imposs�vel criar dobra com a configura��o atual de 'foldmethod'" + +msgid "E351: Cannot delete fold with current 'foldmethod'" +msgstr "E351: Imposs�vel excluir dobra com a configura��o atual de 'foldmethod'" + +#, c-format +msgid "+--%3ld lines folded " +msgstr "+--%3ld linhas dobradas " + +msgid "E222: Add to read buffer" +msgstr "E222: Adi��o a um buffer j� lido" + +msgid "E223: recursive mapping" +msgstr "E223: associa��o recursiva" + +#, c-format +msgid "E224: global abbreviation already exists for %s" +msgstr "E224: j� existe uma abrevia��o global para %s" + +#, c-format +msgid "E225: global mapping already exists for %s" +msgstr "E225: j� existe uma associa��o global para %s" + +#, c-format +msgid "E226: abbreviation already exists for %s" +msgstr "E226: j� existe uma abrevia��o para %s" + +#, c-format +msgid "E227: mapping already exists for %s" +msgstr "E227: j� existe uma associa��o para %s" + +msgid "No abbreviation found" +msgstr "Nenhuma abrevia��o encontrada" + +msgid "No mapping found" +msgstr "Nenhuma associa��o encontrada" + +msgid "E228: makemap: Illegal mode" +msgstr "E228: makemap: Modo inv�lido" + +msgid "E229: Cannot start the GUI" +msgstr "E229: N�o � poss�vel iniciar a interface gr�fica" + +#, c-format +msgid "E230: Cannot read from \"%s\"" +msgstr "E230: Imposs�vel ler de \"%s\"" + +msgid "E665: Cannot start GUI, no valid font found" +msgstr "E665: Imposs�vel iniciar a interface gr�fica, nenhuma fonte v�lida encontrada" + +msgid "E231: 'guifontwide' invalid" +msgstr "E231: Valor inv�lido para 'guifontwide'" + +msgid "E599: Value of 'imactivatekey' is invalid" +msgstr "E599: Valor inv�lido para 'imactivatekey'" + +#, c-format +msgid "E254: Cannot allocate color %s" +msgstr "E254: Imposs�vel alocar cor %s" + +msgid "No match at cursor, finding next" +msgstr "Nenhum resultado sob o cursor; procurando pr�ximo" + +msgid "<cannot open> " +msgstr "<imposs�vel abrir> " + +#, c-format +msgid "E616: vim_SelFile: can't get font %s" +msgstr "E616: vim_SelFile: imposs�vel obter fonte %s" + +msgid "E614: vim_SelFile: can't return to current directory" +msgstr "E614: vim_SelFile: imposs�vel voltar ao diret�rio atual" + +msgid "Pathname:" +msgstr "Caminho:" + +msgid "E615: vim_SelFile: can't get current directory" +msgstr "E615: vim_SelFile: imposs�vel obter diret�rio atual" + +msgid "OK" +msgstr "OK" + +msgid "Cancel" +msgstr "Cancelar" + +msgid "Scrollbar Widget: Could not get geometry of thumb pixmap." +msgstr "Widget barra de rolagem: imposs�vel obter geometria do pixmap 'thumb'" + +msgid "Vim dialog" +msgstr "Di�logo do Vim" + +msgid "E232: Cannot create BalloonEval with both message and callback" +msgstr "E232: Imposs�vel criar BalloonEval com mensagem E callback" + +msgid "Vim dialog..." +msgstr "Di�logo do Vim..." + +msgid "" +"&Yes\n" +"&No\n" +"&Cancel" +msgstr "" +"&Sim\n" +"&N�o\n" +"&Cancelar" + +msgid "Input _Methods" +msgstr "_M�todos de entrada" + +msgid "VIM - Search and Replace..." +msgstr "VIM - Procurar e substituir..." + +msgid "VIM - Search..." +msgstr "VIM - Procurar..." + +msgid "Find what:" +msgstr "Localizar:" + +msgid "Replace with:" +msgstr "Substituir por:" + +#. whole word only button +msgid "Match whole word only" +msgstr "Coincidir palavra inteira" + +#. match case button +msgid "Match case" +msgstr "Diferenciar mai�sculas/min�sculas" + +msgid "Direction" +msgstr "Dire��o" + +#. 'Up' and 'Down' buttons +msgid "Up" +msgstr "Acima" + +msgid "Down" +msgstr "Abaixo" + +msgid "Find Next" +msgstr "Localizar pr�xima" + +msgid "Replace" +msgstr "Substituir" + +msgid "Replace All" +msgstr "Substituir todas" + +msgid "Vim: Received \"die\" request from session manager\n" +msgstr "Vim: Recebido um pedido \"die\" do gerenciador de sess�o\n" + +msgid "Close" +msgstr "Fechar" + +msgid "New tab" +msgstr "Nova aba" + +msgid "Open Tab..." +msgstr "Abrir aba..." + +msgid "Vim: Main window unexpectedly destroyed\n" +msgstr "Vim: Janela principal destru�da inesperadamente\n" + +msgid "Font Selection" +msgstr "Selecionar fonte" + +msgid "Used CUT_BUFFER0 instead of empty selection" +msgstr "Foi usado CUT_BUFFER0 em vez de uma sele��o vazia" + +msgid "&Filter" +msgstr "&Filtrar" + +msgid "&Cancel" +msgstr "&Cancelar" + +msgid "Directories" +msgstr "Diret�rios" + +msgid "Filter" +msgstr "Filtro" + +msgid "&Help" +msgstr "A&juda" + +msgid "Files" +msgstr "Arquivos" + +msgid "&OK" +msgstr "&OK" + +msgid "Selection" +msgstr "Sele��o" + +msgid "Find &Next" +msgstr "Localizar &pr�xima" + +msgid "&Replace" +msgstr "&Substituir" + +msgid "Replace &All" +msgstr "Substituir &todas" + +msgid "&Undo" +msgstr "&Desfazer" + +#, c-format +msgid "E610: Can't load Zap font '%s'" +msgstr "E610: Imposs�vel carregar a fonte Zap '%s'" + +#, c-format +msgid "E611: Can't use font %s" +msgstr "E611: Imposs�vel usar a fonte %s" + +msgid "" +"\n" +"Sending message to terminate child process.\n" +msgstr "" +"\n" +"Enviando mensagem para terminar processo-filho.\n" + +#, c-format +msgid "E671: Cannot find window title \"%s\"" +msgstr "E671: Imposs�vel encontrar janela de t�tulo \"%s\"" + +#, c-format +msgid "E243: Argument not supported: \"-%s\"; Use the OLE version." +msgstr "E243: Argumento n�o suportado: \"-%s\"; Use a vers�o OLE." + +msgid "E672: Unable to open window inside MDI application" +msgstr "E672: Imposs�vel abrir janela dentro de aplica��o MDI" + +msgid "Close tab" +msgstr "Fechar aba" + +msgid "Open tab..." +msgstr "Abrir aba..." + +msgid "Find string (use '\\\\' to find a '\\')" +msgstr "Localizar cadeia de caracteres (use '\\\\' para procurar por '\\')" + +msgid "Find & Replace (use '\\\\' to find a '\\')" +msgstr "Localizar e Substituir (use '\\\\' para procurar por '\\')" + +#. We fake this: Use a filter that doesn't select anything and a default +#. * file name that won't be used. +msgid "Not Used" +msgstr "N�o usado" + +msgid "Directory\t*.nothing\n" +msgstr "Diret�rio\t*.nada\n" + +msgid "Vim E458: Cannot allocate colormap entry, some colors may be incorrect" +msgstr "Vim E458: Imposs�vel alocar entrada do mapa de cores; algumas cores podem estar erradas" + +#, c-format +msgid "E250: Fonts for the following charsets are missing in fontset %s:" +msgstr "E250: Faltam fontes para os seguintes conjuntos de caracteres no conjunto de fontes %s:" + +#, c-format +msgid "E252: Fontset name: %s" +msgstr "E252: Nome do conjunto de fontes: %s" + +#, c-format +msgid "Font '%s' is not fixed-width" +msgstr "Fonte '%s' n�o � de largura fixa" + +#, c-format +msgid "E253: Fontset name: %s\n" +msgstr "E253: Nome do conjunto de fontes: %s\n" + +#, c-format +msgid "Font0: %s\n" +msgstr "Fonte0: %s\n" + +#, c-format +msgid "Font1: %s\n" +msgstr "Fonte1: %s\n" + +#, c-format +msgid "Font%ld width is not twice that of font0\n" +msgstr "O tamanho da Fonte%ld n�o � o dobro do da Fonte0\n" + +#, c-format +msgid "Font0 width: %ld\n" +msgstr "Tamanho da Fonte0: %ld\n" + +#, c-format +msgid "" +"Font1 width: %ld\n" +"\n" +msgstr "" +"Tamanho da Fonte1: %ld\n" +"\n" + +msgid "Invalid font specification" +msgstr "Especifica��o de fonte inv�lida" + +msgid "&Dismiss" +msgstr "&Dispensar" + +msgid "no specific match" +msgstr "nenhuma coincid�ncia exata" + +msgid "Vim - Font Selector" +msgstr "Vim - Seletor de fontes" + +msgid "Name:" +msgstr "Nome:" + +#. create toggle button +msgid "Show size in Points" +msgstr "Mostrar tamanho em pontos" + +msgid "Encoding:" +msgstr "Codifica��o:" + +msgid "Font:" +msgstr "Fonte:" + +msgid "Style:" +msgstr "Estilo:" + +msgid "Size:" +msgstr "Tamanho:" + +msgid "E256: Hangul automata ERROR" +msgstr "E256: ERRO no aut�mato Hangul" + +msgid "E550: Missing colon" +msgstr "E550: Dois-pontos faltando" + +msgid "E551: Illegal component" +msgstr "E551: Elemento inv�lido" + +msgid "E552: digit expected" +msgstr "E552: era esperado um algarismo" + +#, c-format +msgid "Page %d" +msgstr "P�gina %d" + +msgid "No text to be printed" +msgstr "Sem texto para imprimir" + +#, c-format +msgid "Printing page %d (%d%%)" +msgstr "Imprimindo p�gina %d (%d%%)" + +#, c-format +msgid " Copy %d of %d" +msgstr " C�pia %d de %d" + +#, c-format +msgid "Printed: %s" +msgstr "Impresso: %s" + +msgid "Printing aborted" +msgstr "Impress�o cancelada" + +msgid "E455: Error writing to PostScript output file" +msgstr "E455: Erro ao escrever no arquivo PostScript" + +#, c-format +msgid "E624: Can't open file \"%s\"" +msgstr "E624: Imposs�vel abrir arquivo \"%s\"" + +#, c-format +msgid "E457: Can't read PostScript resource file \"%s\"" +msgstr "E457: Imposs�vel ler o arquivo de recursos de PostScript \"%s\"" + +#, c-format +msgid "E618: file \"%s\" is not a PostScript resource file" +msgstr "E618: arquivo \"%s\" n�o � um arquivo de recursos de PostScript" + +#, c-format +msgid "E619: file \"%s\" is not a supported PostScript resource file" +msgstr "E619: arquivo \"%s\" n�o � um arquivo de recursos de PostScript suportado" + +#, c-format +msgid "E621: \"%s\" resource file has wrong version" +msgstr "E621: vers�o errada do arquivo de recursos \"%s\"" + +msgid "E673: Incompatible multi-byte encoding and character set." +msgstr "E673: Codifica��o multi-byte incompat�vel com o conjunto de caracteres." + +msgid "E674: printmbcharset cannot be empty with multi-byte encoding." +msgstr "E674: 'printmbcharset' n�o pode estar vazio com codifica��es multi-byte." + +msgid "E675: No default font specified for multi-byte printing." +msgstr "E675: Nenhuma fonte padr�o especificada para impress�o em multi-byte." + +msgid "E324: Can't open PostScript output file" +msgstr "E324: Imposs�vel abrir arquivo PostScript para sa�da" + +#, c-format +msgid "E456: Can't open file \"%s\"" +msgstr "E456: Imposs�vel abrir arquivo \"%s\"" + +msgid "E456: Can't find PostScript resource file \"prolog.ps\"" +msgstr "E456: Arquivo de recursos de PostScript \"prolog.ps\" n�o encontrado" + +msgid "E456: Can't find PostScript resource file \"cidfont.ps\"" +msgstr "E456: Arquivo de recursos de PostScript \"cidfont.ps\" n�o encontrado" + +#, c-format +msgid "E456: Can't find PostScript resource file \"%s.ps\"" +msgstr "E456: Arquivo de recursos de PostScript \"%s.ps\" n�o encontrado" + +#, c-format +msgid "E620: Unable to convert to print encoding \"%s\"" +msgstr "E620: Imposs�vel converter para a codifica��o \"%s\" para impress�o" + +msgid "Sending to printer..." +msgstr "Enviando � impressora..." + +msgid "E365: Failed to print PostScript file" +msgstr "E365: N�o foi poss�vel imprimir o arquivo PostScript" + +msgid "Print job sent." +msgstr "Trabalho de impress�o enviado." + +msgid "Add a new database" +msgstr "Adicionar novo banco de dados" + +msgid "Query for a pattern" +msgstr "Procurar por um padr�o" + +msgid "Show this message" +msgstr "Mostrar esta mensagem" + +msgid "Kill a connection" +msgstr "Terminar uma conex�o" + +msgid "Reinit all connections" +msgstr "Reinicializar todas as conex�es" + +msgid "Show connections" +msgstr "Mostrar conex�es" + +#, c-format +msgid "E560: Usage: cs[cope] %s" +msgstr "E560: Forma de uso: cs[cope] %s" + +msgid "This cscope command does not support splitting the window.\n" +msgstr "Este comando cscope n�o suporta a divis�o da janela.\n" + +msgid "E562: Usage: cstag <ident>" +msgstr "E562: Forma de uso: cstag <ident>" + +msgid "E257: cstag: tag not found" +msgstr "E257: cstag: marcador n�o encontrado" + +#, c-format +msgid "E563: stat(%s) error: %d" +msgstr "E563: erro em stat(%s): %d" + +msgid "E563: stat error" +msgstr "E563: erro em stat" + +#, c-format +msgid "E564: %s is not a directory or a valid cscope database" +msgstr "E564: %s n�o � um diret�rio ou um banco de dados v�lido do cscope" + +#, c-format +msgid "Added cscope database %s" +msgstr "Adicionado banco de dados do cscope %s" + +#, c-format +msgid "E262: error reading cscope connection %ld" +msgstr "E262: erro ao ler a conex�o %ld do cscope" + +msgid "E561: unknown cscope search type" +msgstr "E561: tipo desconhecido de busca do cscope" + +msgid "E566: Could not create cscope pipes" +msgstr "E566: N�o foi poss�vel criar os pipes para comunica��o com o cscope" + +msgid "E622: Could not fork for cscope" +msgstr "E622: N�o foi poss�vel fazer a bifurca��o de processo para o cscope" + +msgid "cs_create_connection exec failed" +msgstr "a execu��o do cscope em cs_create_connection falhou" + +msgid "cs_create_connection: fdopen for to_fp failed" +msgstr "cs_create_connection: fdopen para to_fp falhou" + +msgid "cs_create_connection: fdopen for fr_fp failed" +msgstr "cs_create_connection: fdopen para fr_fp falhou" + +msgid "E623: Could not spawn cscope process" +msgstr "E623: N�o foi poss�vel invocar o processo do cscope" + +msgid "E567: no cscope connections" +msgstr "E567: n�o h� conex�es com o cscope" + +#, c-format +msgid "E259: no matches found for cscope query %s of %s" +msgstr "E259: nenhum resultado para a busca cscope %s de %s" + +#, c-format +msgid "E469: invalid cscopequickfix flag %c for %c" +msgstr "E469: marca %c inv�lida para %c em 'cscopequickfix'" + +msgid "cscope commands:\n" +msgstr "comandos do cscope:\n" + +#, c-format +msgid "%-5s: %-30s (Usage: %s)" +msgstr "%-5s: %-30s (Forma de uso: %s)" + +#, c-format +msgid "E625: cannot open cscope database: %s" +msgstr "E625: imposs�vel abrir banco de dados do cscope: %s" + +msgid "E626: cannot get cscope database information" +msgstr "E626: imposs�vel obter informa��es do banco de dados do cscope" + +msgid "E568: duplicate cscope database not added" +msgstr "E568: banco de dados do cscope repetido; n�o foi adicionado" + +msgid "E569: maximum number of cscope connections reached" +msgstr "E569: atingido o n�mero m�ximo de conex�es com o cscope" + +#, c-format +msgid "E261: cscope connection %s not found" +msgstr "E261: conex�o %s com o cscope n�o encontrada" + +#, c-format +msgid "cscope connection %s closed" +msgstr "conex�o %s com o cscope fechada" + +#. should not reach here +msgid "E570: fatal error in cs_manage_matches" +msgstr "E570: erro fatal em cs_manage_matches" + +#, c-format +msgid "Cscope tag: %s" +msgstr "Tag do cscope: %s" + +msgid "" +"\n" +" # line" +msgstr "" +"\n" +" # linha" + +msgid "filename / context / line\n" +msgstr "arquivo / contexto / linha\n" + +#, c-format +msgid "E609: Cscope error: %s" +msgstr "E609: Erro do cscope: %s" + +msgid "All cscope databases reset" +msgstr "Todos os bancos de dados do cscope redefinidos" + +msgid "no cscope connections\n" +msgstr "nenhuma conex�o ao cscope\n" + +msgid " # pid database name prepend path\n" +msgstr " # pid nome do banco de dados adicionar caminho\n" + +msgid "???: Sorry, this command is disabled, the MzScheme library could not be loaded." +msgstr "???: Desculpe, este comando est� desativado. A biblioteca MzScheme n�o p�de ser carregada." + +msgid "invalid expression" +msgstr "express�o inv�lida" + +msgid "expressions disabled at compile time" +msgstr "express�es desativadas na compila��o" + +msgid "hidden option" +msgstr "op��o oculta" + +msgid "unknown option" +msgstr "op��o desconhecida" + +msgid "window index is out of range" +msgstr "n�mero da janela fora dos limites" + +msgid "couldn't open buffer" +msgstr "imposs�vel abrir buffer" + +msgid "cannot save undo information" +msgstr "imposs�vel salvar informa��es para desfazer" + +msgid "cannot delete line" +msgstr "imposs�vel excluir linha" + +msgid "cannot replace line" +msgstr "imposs�vel substituir linha" + +msgid "cannot insert line" +msgstr "imposs�vel inserir linha" + +msgid "string cannot contain newlines" +msgstr "a cadeia n�o pode conter quebras de linha" + +msgid "Vim error: ~a" +msgstr "Erro do Vim: ~a" + +msgid "Vim error" +msgstr "Erro do Vim" + +msgid "buffer is invalid" +msgstr "buffer inv�lido" + +msgid "window is invalid" +msgstr "janela inv�lida" + +msgid "linenr out of range" +msgstr "n�mero de linha fora dos limites" + +msgid "not allowed in the Vim sandbox" +msgstr "n�o permitido na caixa de areia do Vim" + +msgid "E263: Sorry, this command is disabled, the Python library could not be loaded." +msgstr "E263: Desculpe, este comando est� desativado. A biblioteca do Python n�o p�de ser carregada." + +msgid "E659: Cannot invoke Python recursively" +msgstr "E659: N�o � poss�vel invocar o Python recursivamente" + +msgid "can't delete OutputObject attributes" +msgstr "imposs�vel excluir os atributos do OutputObject" + +msgid "softspace must be an integer" +msgstr "'softspace' deve ser um inteiro" + +msgid "invalid attribute" +msgstr "atributo inv�lido" + +msgid "writelines() requires list of strings" +msgstr "writelines() requer uma lista de cadeias de caracteres" + +msgid "E264: Python: Error initialising I/O objects" +msgstr "E264: Python: Erro ao inicializar objetos de E/S" + +msgid "attempt to refer to deleted buffer" +msgstr "tentativa de refer�ncia a buffer apagado" + +msgid "line number out of range" +msgstr "n�mero de linha fora dos limites" + +#, c-format +msgid "<buffer object (deleted) at %p>" +msgstr "<objeto buffer (apagado) em %p>" + +msgid "invalid mark name" +msgstr "nome de marca inv�lido" + +msgid "no such buffer" +msgstr "buffer inexistente" + +msgid "attempt to refer to deleted window" +msgstr "tentativa de refer�ncia a janela exclu�da" + +msgid "readonly attribute" +msgstr "atributo somente-leitura" + +msgid "cursor position outside buffer" +msgstr "cursor posicionado fora do buffer" + +#, c-format +msgid "<window object (deleted) at %p>" +msgstr "<objeto janela (apagado) em %p>" + +#, c-format +msgid "<window object (unknown) at %p>" +msgstr "<objeto janela (desconhecido) em %p>" + +#, c-format +msgid "<window %d>" +msgstr "<janela %d>" + +msgid "no such window" +msgstr "janela inexistente" + +msgid "E265: $_ must be an instance of String" +msgstr "E265: $_ deve ser uma inst�ncia de String" + +msgid "E266: Sorry, this command is disabled, the Ruby library could not be loaded." +msgstr "E266: Desculpe, este comando est� desativado. A biblioteca do Ruby n�o p�de ser carregada." + +msgid "E267: unexpected return" +msgstr "E267: \"return\" inesperado" + +msgid "E268: unexpected next" +msgstr "E268: \"next\" inesperado" + +msgid "E269: unexpected break" +msgstr "E269: \"break\" inesperado" + +msgid "E270: unexpected redo" +msgstr "E270: \"redo\" inesperado" + +msgid "E271: retry outside of rescue clause" +msgstr "E271: \"retry\" fora de bloco \"rescue\"" + +msgid "E272: unhandled exception" +msgstr "E272: exce��o n�o tratada" + +#, c-format +msgid "E273: unknown longjmp status %d" +msgstr "E273: status %d de longjmp desconhecido" + +msgid "Toggle implementation/definition" +msgstr "Alternar implementa��o/defini��o" + +msgid "Show base class of" +msgstr "Mostrar classe base de" + +msgid "Show overridden member function" +msgstr "Mostrar fun��o membro sobrescrita" + +msgid "Retrieve from file" +msgstr "Recuperar do arquivo" + +msgid "Retrieve from project" +msgstr "Recuperar do projeto" + +msgid "Retrieve from all projects" +msgstr "Recuperar de todos os projetos" + +msgid "Retrieve" +msgstr "Recuperar" + +msgid "Show source of" +msgstr "Mostrar c�digo de" + +msgid "Find symbol" +msgstr "Procurar s�mbolo" + +msgid "Browse class" +msgstr "Navegador de classe" + +msgid "Show class in hierarchy" +msgstr "Mostrar classe na hierarquia" + +msgid "Show class in restricted hierarchy" +msgstr "Mostrar classe em hierarquia restrita" + +msgid "Xref refers to" +msgstr "Xref refere-se a" + +msgid "Xref referred by" +msgstr "Xref referido por" + +msgid "Xref has a" +msgstr "Xref tem um" + +msgid "Xref used by" +msgstr "Xref usado por" + +msgid "Show docu of" +msgstr "Mostrar docum. de" + +msgid "Generate docu for" +msgstr "Gerar docum. para" + +msgid "Cannot connect to SNiFF+. Check environment (sniffemacs must be found in $PATH).\n" +msgstr "N�o foi poss�vel conectar-se ao SNiFF+. Verifique o ambiente (sniffemacs precisa ser encontrado no $PATH).\n" + +msgid "E274: Sniff: Error during read. Disconnected" +msgstr "E274: Sniff: Erro durante a leitura. Desconectado" + +msgid "SNiFF+ is currently " +msgstr "SNiFF+ est� atualmente " + +msgid "not " +msgstr "des" + +msgid "connected" +msgstr "conectado" + +#, c-format +msgid "E275: Unknown SNiFF+ request: %s" +msgstr "E275: Pedido do SNiFF+ desconhecido: %s" + +msgid "E276: Error connecting to SNiFF+" +msgstr "E276: Erro ao conectar-se ao SNiFF+" + +msgid "E278: SNiFF+ not connected" +msgstr "E278: SNiFF+ desconectado" + +msgid "E279: Not a SNiFF+ buffer" +msgstr "E279: N�o � um buffer do SNiFF+" + +msgid "Sniff: Error during write. Disconnected" +msgstr "Sniff: Erro durante a grava��o. Desconectado" + +msgid "invalid buffer number" +msgstr "n�mero inv�lido de buffer" + +msgid "not implemented yet" +msgstr "ainda n�o implementado" + +#. ??? +msgid "cannot set line(s)" +msgstr "n�o foi poss�vel redefinir a(s) linha(s)" + +msgid "mark not set" +msgstr "marca n�o definida" + +#, c-format +msgid "row %d column %d" +msgstr "linha %d coluna %d" + +msgid "cannot insert/append line" +msgstr "imposs�vel inserir/adicionar linha" + +msgid "unknown flag: " +msgstr "op��o desconhecida: " + +msgid "unknown vimOption" +msgstr "op��o do Vim desconhecida" + +msgid "keyboard interrupt" +msgstr "interrompido pelo teclado" + +msgid "vim error" +msgstr "erro do vim" + +msgid "cannot create buffer/window command: object is being deleted" +msgstr "imposs�vel criar comando de buffer/janela: o objeto est� sendo exclu�do" + +msgid "cannot register callback command: buffer/window is already being deleted" +msgstr "n�o foi poss�vel registrar o comando de callback: o buffer/janela j� est� sendo exclu�do" + +#. This should never happen. Famous last word? +msgid "E280: TCL FATAL ERROR: reflist corrupt!? Please report this to vim-dev@vim.org" +msgstr "E280: ERRO FATAL DO TCL: reflist corrompida!? Por favor relate isso para vim-dev@vim.org" + +msgid "cannot register callback command: buffer/window reference not found" +msgstr "n�o foi poss�vel registrar o comando de callback: refer�ncia a buffer/janela n�o encontrada" + +msgid "E571: Sorry, this command is disabled: the Tcl library could not be loaded." +msgstr "E571: Desculpe, este comando est� desativado. A biblioteca do Tcl n�o p�de ser carregada." + +msgid "E281: TCL ERROR: exit code is not int!? Please report this to vim-dev@vim.org" +msgstr "E281: ERRO DO TCL: c�digo de sa�da n�o � int!? Por favor relate isso para vim-dev@vim.org" + +#, c-format +msgid "E572: exit code %d" +msgstr "E572: c�digo de sa�da %d" + +msgid "cannot get line" +msgstr "n�o foi poss�vel obter a linha" + +msgid "Unable to register a command server name" +msgstr "N�o foi poss�vel registrar um nome para o servidor de comandos" + +msgid "E248: Failed to send command to the destination program" +msgstr "E248: Falha ao enviar comando ao programa de destino" + +#, c-format +msgid "E573: Invalid server id used: %s" +msgstr "E573: Foi usada uma id de servidor inv�lida: %s" + +msgid "E251: VIM instance registry property is badly formed. Deleted!" +msgstr "E251: Propriedade de registro de inst�ncia do VIM malformada encontrada e exclu�da!" + +msgid "Unknown option argument" +msgstr "Argumento de op��o desconhecido" + +msgid "Too many edit arguments" +msgstr "Argumentos de edi��o em excesso" + +msgid "Argument missing after" +msgstr "Argumento faltando ap�s" + +msgid "Garbage after option argument" +msgstr "Lixo ap�s argumento de op��o" + +msgid "Too many \"+command\", \"-c command\" or \"--cmd command\" arguments" +msgstr "Demasiados argumentos \"+comando\", \"-c comando\" ou \"--cmd comando\"" + +msgid "Invalid argument for" +msgstr "Argumento inv�lido para" + +#, c-format +msgid "%d files to edit\n" +msgstr "%d arquivos para editar\n" + +msgid "This Vim was not compiled with the diff feature." +msgstr "Este Vim n�o foi compilado com o recurso diff." + +msgid "Attempt to open script file again: \"" +msgstr "Tentando abrir novamente arquivo de script: \"" + +msgid "Cannot open for reading: \"" +msgstr "Imposs�vel abrir para leitura: \"" + +msgid "Cannot open for script output: \"" +msgstr "Imposs�vel abrir para transcri��o do script: \"" + +msgid "Vim: Error: Failure to start gvim from NetBeans\n" +msgstr "Vim: Erro: N�o foi poss�vel iniciar o gvim a partir do NetBeans\n" + +msgid "Vim: Warning: Output is not to a terminal\n" +msgstr "Vim: Aviso: Sa�da n�o � um terminal\n" + +msgid "Vim: Warning: Input is not from a terminal\n" +msgstr "Vim: Aviso: Entrada n�o � de um terminal\n" + +#. just in case.. +msgid "pre-vimrc command line" +msgstr "linha de comando pr�-vimrc" + +#, c-format +msgid "E282: Cannot read from \"%s\"" +msgstr "E282: Imposs�vel ler de \"%s\"" + +msgid "" +"\n" +"More info with: \"vim -h\"\n" +msgstr "" +"\n" +"Mais informa��es com: \"vim -h\"\n" + +msgid "[file ..] edit specified file(s)" +msgstr "[arquivo ..] abrir o(s) arquivo(s) especificado(s)" + +msgid "- read text from stdin" +msgstr "- ler texto a partir da entrada padr�o" + +msgid "-t tag edit file where tag is defined" +msgstr "-t marcador editar arquivo onde o marcador � definido" + +msgid "-q [errorfile] edit file with first error" +msgstr "-q [arq.erro] editar arquivo e abrir no primeiro erro" + +msgid "" +"\n" +"\n" +"usage:" +msgstr "" +"\n" +"\n" +"uso:" + +msgid " vim [arguments] " +msgstr " vim [argumentos] " + +msgid "" +"\n" +" or:" +msgstr "" +"\n" +" ou:" + +msgid "" +"\n" +"Where case is ignored prepend / to make flag upper case" +msgstr "" +"\n" +"Se a caixa � ignorada, insira / antes da op��o para torn�-la mai�scula" + +msgid "" +"\n" +"\n" +"Arguments:\n" +msgstr "" +"\n" +"\n" +"Argumentos:\n" + +msgid "--\t\t\tOnly file names after this" +msgstr "--\t\t\tApenas nomes de arquivo depois daqui" + +msgid "--literal\t\tDon't expand wildcards" +msgstr "--literal\t\tN�o expandir caracteres-curinga" + +msgid "-register\t\tRegister this gvim for OLE" +msgstr "-register\t\tRegistrar o gvim para o OLE" + +msgid "-unregister\t\tUnregister gvim for OLE" +msgstr "-unregister\t\tDesregistrar o gvim para o OLE" + +msgid "-g\t\t\tRun using GUI (like \"gvim\")" +msgstr "-g\t\t\tExecutar a interface gr�fica (como \"gvim\")" + +msgid "-f or --nofork\tForeground: Don't fork when starting GUI" +msgstr "-f ou --nofork\tPrimeiro plano: N�o separar a interface gr�fica do terminal" + +msgid "-v\t\t\tVi mode (like \"vi\")" +msgstr "-v\t\t\tModo Vi (como \"vi\")" + +msgid "-e\t\t\tEx mode (like \"ex\")" +msgstr "-e\t\t\tModo Ex (como \"ex\")" + +msgid "-s\t\t\tSilent (batch) mode (only for \"ex\")" +msgstr "-s\t\t\tModo silencioso ou \"batch\" (apenas para \"ex\")" + +msgid "-d\t\t\tDiff mode (like \"vimdiff\")" +msgstr "-d\t\t\tModo diff (como \"vimdiff\")" + +msgid "-y\t\t\tEasy mode (like \"evim\", modeless)" +msgstr "-y\t\t\tModo f�cil (como \"evim\", o Vim n�o modal)" + +msgid "-R\t\t\tReadonly mode (like \"view\")" +msgstr "-R\t\t\tmodo somente-leitura (como \"view\")" + +msgid "-Z\t\t\tRestricted mode (like \"rvim\")" +msgstr "-Z\t\t\tmodo restrito (como \"rvim\")" + +msgid "-m\t\t\tModifications (writing files) not allowed" +msgstr "-m\t\t\tN�o permitir altera��es (grava��o de arquivos)" + +msgid "-M\t\t\tModifications in text not allowed" +msgstr "-M\t\t\tN�o permitir altera��es no texto" + +msgid "-b\t\t\tBinary mode" +msgstr "-b\t\t\tModo bin�rio" + +msgid "-l\t\t\tLisp mode" +msgstr "-l\t\t\tModo Lisp" + +msgid "-C\t\t\tCompatible with Vi: 'compatible'" +msgstr "-C\t\t\tCompat�vel com o Vi: 'compatible'" + +msgid "-N\t\t\tNot fully Vi compatible: 'nocompatible'" +msgstr "-N\t\t\tN�o totalmente compat�vel com o Vi: 'nocompatible'" + +msgid "-V[N][fname]\t\tBe verbose [level N] [log messages to fname]" +msgstr "-V[N][arq]\t\tDetalhado [n�vel N] [gravar mensagens em 'arq']" + +msgid "-D\t\t\tDebugging mode" +msgstr "-D\t\t\tModo de depura��o (debug)" + +msgid "-n\t\t\tNo swap file, use memory only" +msgstr "-n\t\t\tN�o usar arquivo de troca, apenas a mem�ria" + +msgid "-r\t\t\tList swap files and exit" +msgstr "-r\t\t\tListar arquivos de troca e sair" + +msgid "-r (with file name)\tRecover crashed session" +msgstr "-r (nome de arquivo)\tRecuperar sess�o perdida" + +msgid "-L\t\t\tSame as -r" +msgstr "-L\t\t\tMesmo que -r" + +msgid "-f\t\t\tDon't use newcli to open window" +msgstr "-f\t\t\tN�o usar newcli para abrir janela" + +msgid "-dev <device>\t\tUse <device> for I/O" +msgstr "-dev <dispositivo>\tUsar <dispositivo> para E/S" + +msgid "-A\t\t\tstart in Arabic mode" +msgstr "-A\t\t\tiniciar no modo �rabe" + +msgid "-H\t\t\tStart in Hebrew mode" +msgstr "-H\t\t\tIniciar no modo Hebraico" + +msgid "-F\t\t\tStart in Farsi mode" +msgstr "-F\t\t\tIniciar no modo Farsi (persa)" + +msgid "-T <terminal>\tSet terminal type to <terminal>" +msgstr "-T <terminal>\tDefinir tipo de terminal como <terminal>" + +msgid "-u <vimrc>\t\tUse <vimrc> instead of any .vimrc" +msgstr "-u <vimrc>\t\tUsar <vimrc> em vez de qualquer outro .vimrc" + +msgid "-U <gvimrc>\t\tUse <gvimrc> instead of any .gvimrc" +msgstr "-U <gvimrc>\t\tUsar <gvimrc> em vez de qualquer outro .gvimrc" + +msgid "--noplugin\t\tDon't load plugin scripts" +msgstr "--noplugin\t\tN�o carregar scripts de plugins" + +msgid "-p[N]\t\tOpen N tab pages (default: one for each file)" +msgstr "-p[N]\t\tAbrir N abas (padr�o: uma para cada arquivo)" + +msgid "-o[N]\t\tOpen N windows (default: one for each file)" +msgstr "-o[N]\t\tAbrir N janelas (padr�o: uma para cada arquivo)" + +msgid "-O[N]\t\tLike -o but split vertically" +msgstr "-O[N]\t\tComo -o, mas dividindo verticalmente" + +msgid "+\t\t\tStart at end of file" +msgstr "+\t\t\tAbrir no final do arquivo" + +msgid "+<lnum>\t\tStart at line <lnum>" +msgstr "+<n�m.l>\t\tCome�ar na linha <n�m.l>" + +msgid "--cmd <command>\tExecute <command> before loading any vimrc file" +msgstr "--cmd <comando>\tExecutar <comando> antes de carregar qualquer vimrc" + +msgid "-c <command>\t\tExecute <command> after loading the first file" +msgstr "-c <comando>\t\tExecutar <comando> depois de carregar o primeiro arquivo" + +msgid "-S <session>\t\tSource file <session> after loading the first file" +msgstr "" +"-S <sess�o>\t\tExecutar o arquivo <sess�o> depois de carregar o\n" +"\t\t\tprimeiro arquivo" + +msgid "-s <scriptin>\tRead Normal mode commands from file <scriptin>" +msgstr "-s <script>\t\tLer comandos do modo Normal do arquivo <script>" + +msgid "-w <scriptout>\tAppend all typed commands to file <scriptout>" +msgstr "-w <script>\t\tAdicionar todos os comandos digitados ao arquivo <script>" + +msgid "-W <scriptout>\tWrite all typed commands to file <scriptout>" +msgstr "-W <script>\t\tGravar todos os comandos digitados no arquivo <script>" + +msgid "-x\t\t\tEdit encrypted files" +msgstr "-x\t\t\tEditar arquivos criptografados" + +msgid "-display <display>\tConnect vim to this particular X-server" +msgstr "-display <display>\tConectar o vim a este servidor X espec�fico" + +msgid "-X\t\t\tDo not connect to X server" +msgstr "-X\t\t\tN�o conectar ao servidor X" + +msgid "--remote <files>\tEdit <files> in a Vim server if possible" +msgstr "--remote <arquivos>\tEditar <arquivos> num servidor Vim se poss�vel" + +msgid "--remote-silent <files> Same, don't complain if there is no server" +msgstr "--remote-silent <arqs.> Idem, sem reclamar se n�o houver servidor" + +msgid "--remote-wait <files> As --remote but wait for files to have been edited" +msgstr "--remote-wait <arqs.> Como --remote, mas esperar a edi��o dos arquivos" + +msgid "--remote-wait-silent <files> Same, don't complain if there is no server" +msgstr "--remote-wait-silent <arqs.> Idem, sem reclamar se n�o houver servidor" + +msgid "--remote-tab[-wait][-silent] <files> As --remote but use tab page per file" +msgstr "--remote-tab[-wait][-silent] <arqs.> Como --remote, mas com uma aba por arquivo" + +msgid "--remote-send <keys>\tSend <keys> to a Vim server and exit" +msgstr "--remote-send <teclas> Enviar <teclas> para um servidor Vim e sair" + +msgid "--remote-expr <expr>\tEvaluate <expr> in a Vim server and print result" +msgstr "--remote-expr <expr>\tAvaliar <expr> num servidor Vim e exibir o resultado" + +msgid "--serverlist\t\tList available Vim server names and exit" +msgstr "--serverlist\t\tListar servidores Vim dispon�veis e sair" + +msgid "--servername <name>\tSend to/become the Vim server <name>" +msgstr "--servername <nome>\tEnviar para/tornar-se o servidor Vim <nome>" + +msgid "-i <viminfo>\t\tUse <viminfo> instead of .viminfo" +msgstr "-i <viminfo>\t\tUsar <viminfo> em vez do .viminfo normal" + +msgid "-h or --help\tPrint Help (this message) and exit" +msgstr "-h ou --help\tImprimir a ajuda (esta mensagem) e sair" + +msgid "--version\t\tPrint version information and exit" +msgstr "--version\t\tImprimir informa��es da vers�o e sair" + +msgid "" +"\n" +"Arguments recognised by gvim (Motif version):\n" +msgstr "" +"\n" +"Argumentos reconhecidos pelo gvim (vers�o Motif):\n" + +msgid "" +"\n" +"Arguments recognised by gvim (neXtaw version):\n" +msgstr "" +"\n" +"Argumentos reconhecidos pelo gvim (vers�o neXtaw):\n" + +msgid "" +"\n" +"Arguments recognised by gvim (Athena version):\n" +msgstr "" +"\n" +"Argumentos reconhecidos pelo gvim (vers�o Athena):\n" + +msgid "-display <display>\tRun vim on <display>" +msgstr "-display <display>\tExecutar vim em <display>" + +msgid "-iconic\t\tStart vim iconified" +msgstr "-iconic\t\tIniciar vim iconizado" + +msgid "-name <name>\t\tUse resource as if vim was <name>" +msgstr "-name <nome>\t\tUsar recurso como se o vim fosse <nome>" + +msgid "\t\t\t (Unimplemented)\n" +msgstr "\t\t\t (N�o implementado)\n" + +msgid "-background <color>\tUse <color> for the background (also: -bg)" +msgstr "-background <cor>\tUsar <cor> para o fundo (abrev.: -bg)" + +msgid "-foreground <color>\tUse <color> for normal text (also: -fg)" +msgstr "-foreground <cor>\tUsar <cor> para texto normal (abrev.: -fg)" + +msgid "-font <font>\t\tUse <font> for normal text (also: -fn)" +msgstr "-font <fonte>\tUsar <fonte> para texto normal (abrev.: -fn)" + +msgid "-boldfont <font>\tUse <font> for bold text" +msgstr "-boldfont <fonte>\tUsar <fonte> para texto em negrito" + +msgid "-italicfont <font>\tUse <font> for italic text" +msgstr "-italicfont <fonte>\tUsar <fonte> para texto em it�lico" + +msgid "-geometry <geom>\tUse <geom> for initial geometry (also: -geom)" +msgstr "-geometry <geom>\tUsar <geom> como geometria inicial (abrev.: -geom)" + +msgid "-borderwidth <width>\tUse a border width of <width> (also: -bw)" +msgstr "-borderwidth <larg.>\tUsar <larg.> como largura da borda (abrev.: -bw)" + +msgid "-scrollbarwidth <width> Use a scrollbar width of <width> (also: -sw)" +msgstr "-scrollbarwidth <larg.> Usar <larg.> como largura da barra de rolagem (abrev.: -sw)" + +msgid "-menuheight <height>\tUse a menu bar height of <height> (also: -mh)" +msgstr "-menuheight <altura>\tUsar <altura> para a barra de menus (abrev.: -mh)" + +msgid "-reverse\t\tUse reverse video (also: -rv)" +msgstr "-reverse\t\tUsar v�deo reverso (abrev.: -rv)" + +msgid "+reverse\t\tDon't use reverse video (also: +rv)" +msgstr "+reverse\t\tN�o usar v�deo reverso (abrev.: +rv)" + +msgid "-xrm <resource>\tSet the specified resource" +msgstr "-xrm <recurso>\tDefinir o recurso especificado" + +msgid "" +"\n" +"Arguments recognised by gvim (RISC OS version):\n" +msgstr "" +"\n" +"Argumentos reconhecidos pelo gvim (vers�o RISC OS):\n" + +msgid "--columns <number>\tInitial width of window in columns" +msgstr "--columns <n�mero>\tLargura inicial da janela, em colunas" + +msgid "--rows <number>\tInitial height of window in rows" +msgstr "--rows <n�mero>\tAltura inicial da janela, em linhas" + +msgid "" +"\n" +"Arguments recognised by gvim (GTK+ version):\n" +msgstr "" +"\n" +"Argumentos reconhecidos pelo gvim (vers�o GTK+):\n" + +msgid "-display <display>\tRun vim on <display> (also: --display)" +msgstr "-display <display>\tExecutar vim no <display> (alt.: --display)" + +msgid "--role <role>\tSet a unique role to identify the main window" +msgstr "" +"--role <papel>\tDefine um papel �nico para identificar a janela\n" +"\t\t\tprincipal" + +msgid "--socketid <xid>\tOpen Vim inside another GTK widget" +msgstr "--socketid <xid>\tAbrir o Vim dentro de outro widget do GTK" + +msgid "-P <parent title>\tOpen Vim inside parent application" +msgstr "-P <t�tulo pai>\tAbrir o Vim dentro de uma aplica��o-pai" + +msgid "--windowid <HWND>\tOpen Vim inside another win32 widget" +msgstr "--windowid <HWND>\tAbrir o Vim dentro de outro widget win32" + +msgid "No display" +msgstr "N�o h� display" + +#. Failed to send, abort. +msgid ": Send failed.\n" +msgstr ": Envio falhou.\n" + +#. Let vim start normally. +msgid ": Send failed. Trying to execute locally\n" +msgstr ": Envio falhou. Tentando executar localmente\n" + +#, c-format +msgid "%d of %d edited" +msgstr "%d de %d editados" + +msgid "No display: Send expression failed.\n" +msgstr "N�o h� display: Envio da express�o falhou.\n" + +msgid ": Send expression failed.\n" +msgstr ": Envio da express�o falhou.\n" + +msgid "No marks set" +msgstr "Nenhuma marca definida" + +#, c-format +msgid "E283: No marks matching \"%s\"" +msgstr "E283: Nenhuma marca coincide com \"%s\"" + +#. Highlight title +msgid "" +"\n" +"mark line col file/text" +msgstr "" +"\n" +"marc linha col arquivo/texto" + +#. Highlight title +msgid "" +"\n" +" jump line col file/text" +msgstr "" +"\n" +"salto linha col arquivo/texto" + +#. Highlight title +msgid "" +"\n" +"change line col text" +msgstr "" +"\n" +"alter. linha col texto" + +#, c-format +msgid "" +"\n" +"# File marks:\n" +msgstr "" +"\n" +"# Marcas nos arquivos:\n" + +#. Write the jumplist with -' +#, c-format +msgid "" +"\n" +"# Jumplist (newest first):\n" +msgstr "" +"\n" +"# Lista de saltos (mais recente primeiro):\n" + +#, c-format +msgid "" +"\n" +"# History of marks within files (newest to oldest):\n" +msgstr "" +"\n" +"# Hist�rico de marcas nos arquivos (mais recente primeiro):\n" + +msgid "Missing '>'" +msgstr "'>' faltando" + +msgid "E543: Not a valid codepage" +msgstr "E543: P�gina de c�digos inv�lida" + +msgid "E284: Cannot set IC values" +msgstr "E284: N�o foi poss�vel definir os valores do contexto de entrada" + +msgid "E285: Failed to create input context" +msgstr "E285: Falha ao criar o contexto de entrada" + +msgid "E286: Failed to open input method" +msgstr "E286: Falha ao abrir o m�todo de entrada" + +msgid "E287: Warning: Could not set destroy callback to IM" +msgstr "E287: Aviso: N�o foi poss�vel definir o callback de destrui��o do ME" + +msgid "E288: input method doesn't support any style" +msgstr "E288: o m�todo de entrada n�o suporta nenhum estilo" + +msgid "E289: input method doesn't support my preedit type" +msgstr "E289: o m�todo de entrada n�o suporta meu tipo de pr�-edi��o" + +msgid "E290: over-the-spot style requires fontset" +msgstr "E290: o estilo over-the-spot requer um conjunto de fontes" + +msgid "E291: Your GTK+ is older than 1.2.3. Status area disabled" +msgstr "E291: Sua vers�o do GTK+ � anterior � 1.2.3. A �rea de status foi desativada" + +msgid "E292: Input Method Server is not running" +msgstr "E292: O Servidor de M�todo de Entrada n�o est� em execu��o" + +msgid "E293: block was not locked" +msgstr "E293: o bloco n�o estava travado" + +msgid "E294: Seek error in swap file read" +msgstr "E294: Erro de posicionamento na leitura do arquivo de troca" + +msgid "E295: Read error in swap file" +msgstr "E295: Erro de leitura no arquivo de troca" + +msgid "E296: Seek error in swap file write" +msgstr "E296: Erro de posicionamento na escrita do arquivo de troca" + +msgid "E297: Write error in swap file" +msgstr "E297: Erro de escrita no arquivo de troca" + +msgid "E300: Swap file already exists (symlink attack?)" +msgstr "E300: Arquivo de troca j� existe (ataque de symlink?)" + +msgid "E298: Didn't get block nr 0?" +msgstr "E298: N�o foi obtido o bloco n� 0?" + +msgid "E298: Didn't get block nr 1?" +msgstr "E298: N�o foi obtido o bloco n� 1?" + +msgid "E298: Didn't get block nr 2?" +msgstr "E298: N�o foi obtido o bloco n� 2?" + +#. could not (re)open the swap file, what can we do???? +msgid "E301: Oops, lost the swap file!!!" +msgstr "E301: Oops, o arquivo de troca foi perdido!!!" + +msgid "E302: Could not rename swap file" +msgstr "E302: N�o foi poss�vel renomear o arquivo de troca" + +#, c-format +msgid "E303: Unable to open swap file for \"%s\", recovery impossible" +msgstr "E303: Imposs�vel abrir arquivo de troca para \"%s\", recupera��o imposs�vel" + +msgid "E304: ml_upd_block0(): Didn't get block 0??" +msgstr "E304: ml_upd_block0(): N�o foi obtido o bloco 0??" + +#, c-format +msgid "E305: No swap file found for %s" +msgstr "E305: Nenhum arquivo de troca encontrado para %s" + +msgid "Enter number of swap file to use (0 to quit): " +msgstr "Insira o n�mero do arquivo de troca a usar (0 para sair): " + +#, c-format +msgid "E306: Cannot open %s" +msgstr "E306: Imposs�vel abrir %s" + +msgid "Unable to read block 0 from " +msgstr "Imposs�vel ler o bloco 0 de " + +msgid "" +"\n" +"Maybe no changes were made or Vim did not update the swap file." +msgstr "" +"\n" +"Talvez nenhuma mudan�a tenha sido feita ou o Vim n�o tenha atualizado o arquivo\n" +"de troca." + +msgid " cannot be used with this version of Vim.\n" +msgstr " n�o pode ser usado com esta vers�o do Vim.\n" + +msgid "Use Vim version 3.0.\n" +msgstr "Use o Vim vers�o 3.0.\n" + +#, c-format +msgid "E307: %s does not look like a Vim swap file" +msgstr "E307: %s n�o se parece com um arquivo de troca do Vim" + +msgid " cannot be used on this computer.\n" +msgstr " n�o pode ser usado neste computador.\n" + +msgid "The file was created on " +msgstr "O arquivo foi criado em " + +msgid "" +",\n" +"or the file has been damaged." +msgstr "" +",\n" +"ou o arquivo foi danificado." + +msgid " has been damaged (page size is smaller than minimum value).\n" +msgstr " foi danificado (o tamanho da p�gina � menor que o valor m�nimo).\n" + +#, c-format +msgid "Using swap file \"%s\"" +msgstr "Usando arquivo de troca \"%s\"" + +#, c-format +msgid "Original file \"%s\"" +msgstr "Arquivo original \"%s\"" + +msgid "E308: Warning: Original file may have been changed" +msgstr "E308: Aviso: O arquivo original pode ter sido alterado" + +#, c-format +msgid "E309: Unable to read block 1 from %s" +msgstr "E309: Imposs�vel ler o bloco 1 de %s" + +msgid "???MANY LINES MISSING" +msgstr "???MUITAS LINHAS FALTANDO" + +msgid "???LINE COUNT WRONG" +msgstr "???N�MERO DE LINHAS ERRADO" + +msgid "???EMPTY BLOCK" +msgstr "???BLOCO VAZIO" + +msgid "???LINES MISSING" +msgstr "???LINHAS FALTANDO" + +#, c-format +msgid "E310: Block 1 ID wrong (%s not a .swp file?)" +msgstr "E310: ID do bloco 1 est� errado (%s n�o � um arquivo .swp?)" + +msgid "???BLOCK MISSING" +msgstr "???BLOCO FALTANDO" + +msgid "??? from here until ???END lines may be messed up" +msgstr "??? daqui at� ???FIM as linhas podem estar corrompidas" + +msgid "??? from here until ???END lines may have been inserted/deleted" +msgstr "??? daqui at� ???FIM linhas podem ter sido inseridas/exclu�das" + +msgid "???END" +msgstr "???FIM" + +msgid "E311: Recovery Interrupted" +msgstr "E311: Recupera��o interrompida" + +msgid "E312: Errors detected while recovering; look for lines starting with ???" +msgstr "E312: Erros detectados durante a recupera��o; procure por linhas come�ando com ???" + +msgid "See \":help E312\" for more information." +msgstr "Veja \":help E312\" para mais informa��es." + +msgid "Recovery completed. You should check if everything is OK." +msgstr "Recupera��o conclu�da. Voc� deve verificar se est� tudo certo." + +msgid "" +"\n" +"(You might want to write out this file under another name\n" +msgstr "" +"\n" +"(Voc� talvez queira salvar este arquivo com outro nome\n" + +msgid "and run diff with the original file to check for changes)\n" +msgstr "e executar diff com o arquivo original para verificar se houve altera��es)\n" + +msgid "" +"Delete the .swp file afterwards.\n" +"\n" +msgstr "" +"Exclua o arquivo .swp em seguida.\n" +"\n" + +#. use msg() to start the scrolling properly +msgid "Swap files found:" +msgstr "Arquivos de troca encontrados:" + +msgid " In current directory:\n" +msgstr " No diret�rio atual:\n" + +msgid " Using specified name:\n" +msgstr " Usando o nome especificado:\n" + +msgid " In directory " +msgstr " No diret�rio " + +msgid " -- none --\n" +msgstr " -- nenhum --\n" + +msgid " owned by: " +msgstr " pertence a: " + +msgid " dated: " +msgstr "com data: " + +msgid " dated: " +msgstr " com data de: " + +msgid " [from Vim version 3.0]" +msgstr " [do Vim vers�o 3.0]" + +msgid " [does not look like a Vim swap file]" +msgstr " [n�o se parece com um arquivo de troca do Vim]" + +msgid " file name: " +msgstr " nome do arquivo: " + +msgid "" +"\n" +" modified: " +msgstr "" +"\n" +" modificado: " + +msgid "YES" +msgstr "SIM" + +msgid "no" +msgstr "n�o" + +msgid "" +"\n" +" user name: " +msgstr "" +"\n" +" nome de usu�rio: " + +msgid " host name: " +msgstr " nome do host: " + +msgid "" +"\n" +" host name: " +msgstr "" +"\n" +" nome do host: " + +msgid "" +"\n" +" process ID: " +msgstr "" +"\n" +" ID do processo: " + +msgid " (still running)" +msgstr " (ainda executando)" + +msgid "" +"\n" +" [not usable with this version of Vim]" +msgstr "" +"\n" +" [n�o pode ser usado com esta vers�o do Vim]" + +msgid "" +"\n" +" [not usable on this computer]" +msgstr "" +"\n" +" [n�o pode ser usado neste computador]" + +msgid " [cannot be read]" +msgstr " [n�o pode ser lido]" + +msgid " [cannot be opened]" +msgstr " [n�o pode ser aberto]" + +msgid "E313: Cannot preserve, there is no swap file" +msgstr "E313: Imposs�vel preservar, n�o h� um arquivo de troca" + +msgid "File preserved" +msgstr "Arquivo preservado" + +msgid "E314: Preserve failed" +msgstr "E314: Preserva��o falhou" + +#, c-format +msgid "E315: ml_get: invalid lnum: %ld" +msgstr "E315: ml_get: n�mero de linha inv�lido: %ld" + +#, c-format +msgid "E316: ml_get: cannot find line %ld" +msgstr "E316: ml_get: linha %ld n�o encontrada" + +msgid "E317: pointer block id wrong 3" +msgstr "E317: id do bloco de ponteiros incorreto: 3" + +msgid "stack_idx should be 0" +msgstr "stack_idx deveria ser 0" + +msgid "E318: Updated too many blocks?" +msgstr "E318: Foram atualizados blocos demais?" + +msgid "E317: pointer block id wrong 4" +msgstr "E317: id do bloco de ponteiros incorreto: 4" + +msgid "deleted block 1?" +msgstr "bloco 1 apagado?" + +#, c-format +msgid "E320: Cannot find line %ld" +msgstr "E320: Linha %ld n�o encontrada" + +msgid "E317: pointer block id wrong" +msgstr "E317: id do bloco de ponteiros incorreto" + +msgid "pe_line_count is zero" +msgstr "pe_line_count � zero" + +#, c-format +msgid "E322: line number out of range: %ld past the end" +msgstr "E322: n�mero da linha fora dos limites: %ld al�m do fim" + +#, c-format +msgid "E323: line count wrong in block %ld" +msgstr "E323: n�mero de linhas incorreto no bloco %ld" + +msgid "Stack size increases" +msgstr "Aumenta o tamanho da pilha" + +msgid "E317: pointer block id wrong 2" +msgstr "E317: id do bloco de ponteiros incorreto: 2" + +#, c-format +msgid "E773: Symlink loop for \"%s\"" +msgstr "E773: Links simb�licos c�clicos para \"%s\"" + +msgid "E325: ATTENTION" +msgstr "E325: ATEN��O" + +msgid "" +"\n" +"Found a swap file by the name \"" +msgstr "" +"\n" +"Foi encontrado um arquivo de troca de nome \"" + +msgid "While opening file \"" +msgstr "Ao abrir o arquivo \"" + +msgid " NEWER than swap file!\n" +msgstr " MAIS NOVO que o arquivo de troca!\n" + +#. Some of these messages are long to allow translation to +#. * other languages. +msgid "" +"\n" +"(1) Another program may be editing the same file.\n" +" If this is the case, be careful not to end up with two\n" +" different instances of the same file when making changes.\n" +msgstr "" +"\n" +"(1) Outro programa pode estar editando o mesmo arquivo.\n" +" Se for esse o caso, cuidado para n�o acabar com duas\n" +" vers�es do mesmo arquivo ao fazer altera��es.\n" + +msgid " Quit, or continue with caution.\n" +msgstr " Saia do programa, ou continue com cuidado.\n" + +msgid "" +"\n" +"(2) An edit session for this file crashed.\n" +msgstr "" +"\n" +"(2) Ocorreu um travamento numa sess�o de edi��o desse arquivo.\n" + +msgid " If this is the case, use \":recover\" or \"vim -r " +msgstr " Se esse for o caso, use \":recover\" ou \"vim -r " + +msgid "" +"\"\n" +" to recover the changes (see \":help recovery\").\n" +msgstr "" +"\"\n" +" para recuperar as altera��es (veja \":help recovery\").\n" + +msgid " If you did this already, delete the swap file \"" +msgstr " Se voc� j� vez isso, exclua o arquivo de troca \"" + +msgid "" +"\"\n" +" to avoid this message.\n" +msgstr "" +"\"\n" +" para evitar esta mensagem.\n" + +msgid "Swap file \"" +msgstr "O arquivo de troca \"" + +msgid "\" already exists!" +msgstr "\" j� existe!" + +msgid "VIM - ATTENTION" +msgstr "VIM - ATEN��O" + +msgid "Swap file already exists!" +msgstr "O arquivo de troca j� existe!" + +msgid "" +"&Open Read-Only\n" +"&Edit anyway\n" +"&Recover\n" +"&Quit\n" +"&Abort" +msgstr "" +"&Abrir somente-leitura\n" +"&Editar mesmo assim\n" +"&Recuperar\n" +"&Sair\n" +"&Cancelar" + +msgid "" +"&Open Read-Only\n" +"&Edit anyway\n" +"&Recover\n" +"&Delete it\n" +"&Quit\n" +"&Abort" +msgstr "" +"&Abrir somente-leitura\n" +"&Editar mesmo assim\n" +"&Recuperar\n" +"E&xclu�-lo\n" +"&Sair\n" +"&Cancelar" + +msgid "E326: Too many swap files found" +msgstr "E326: Foram encontrados arquivos de troca demais" + +msgid "E327: Part of menu-item path is not sub-menu" +msgstr "E327: Parte do caminho do item do menu n�o � um submenu" + +msgid "E328: Menu only exists in another mode" +msgstr "E328: Menu s� existe em outro modo" + +#, c-format +msgid "E329: No menu \"%s\"" +msgstr "E329: N�o h� o menu \"%s\"" + +#. Only a mnemonic or accelerator is not valid. +msgid "E792: Empty menu name" +msgstr "E792: Menu com nome vazio" + +msgid "E330: Menu path must not lead to a sub-menu" +msgstr "E330: Caminho do menu n�o deve levar a um submenu" + +msgid "E331: Must not add menu items directly to menu bar" +msgstr "E331: Itens n�o devem ser adicionados diretamente � barra de menus" + +msgid "E332: Separator cannot be part of a menu path" +msgstr "E332: Um separador n�o pode ser parte de um caminho de menu" + +#. Now we have found the matching menu, and we list the mappings +#. Highlight title +msgid "" +"\n" +"--- Menus ---" +msgstr "" +"\n" +"--- Menus ---" + +msgid "Tear off this menu" +msgstr "Destacar este menu" + +msgid "E333: Menu path must lead to a menu item" +msgstr "E333: Caminho de menu deve levar a um item de menu" + +#, c-format +msgid "E334: Menu not found: %s" +msgstr "E334: Menu n�o encontrado: %s" + +#, c-format +msgid "E335: Menu not defined for %s mode" +msgstr "E335: Menu n�o definido para o modo %s" + +msgid "E336: Menu path must lead to a sub-menu" +msgstr "E336: O caminho do menu deve levar a um submenu" + +msgid "E337: Menu not found - check menu names" +msgstr "E337: Menu n�o encontrado - verifique os nomes dos menus" + +#, c-format +msgid "Error detected while processing %s:" +msgstr "Erro detectado ao processar %s:" + +#, c-format +msgid "line %4ld:" +msgstr "linha %4ld:" + +#, c-format +msgid "E354: Invalid register name: '%s'" +msgstr "E354: Nome de registrador inv�lido: '%s'" + +msgid "Messages maintainer: Bram Moolenaar <Bram@vim.org>" +msgstr "Tradutor das mensagens: Eduardo Dobay <edudobay@gmail.com>" + +msgid "Interrupt: " +msgstr "Interrup��o: " + +msgid "Press ENTER or type command to continue" +msgstr "Aperte ENTER ou digite um comando para continuar" + +#, c-format +msgid "%s line %ld" +msgstr "%s, linha %ld" + +msgid "-- More --" +msgstr "-- Mais --" + +msgid " SPACE/d/j: screen/page/line down, b/u/k: up, q: quit " +msgstr " ESPA�O/d/j: tela/p�gina/linha abaixo, b/u/k: acima, q: sair " + +msgid "Question" +msgstr "Quest�o" + +msgid "" +"&Yes\n" +"&No" +msgstr "" +"&Sim\n" +"&N�o" + +msgid "" +"&Yes\n" +"&No\n" +"Save &All\n" +"&Discard All\n" +"&Cancel" +msgstr "" +"&Sim\n" +"&N�o\n" +"Salvar &tudo\n" +"&Descartar tudo\n" +"&Cancelar" + +msgid "Select Directory dialog" +msgstr "Seletor de diret�rio" + +msgid "Save File dialog" +msgstr "Salvar arquivo" + +msgid "Open File dialog" +msgstr "Abrir arquivo" + +#. TODO: non-GUI file selector here +msgid "E338: Sorry, no file browser in console mode" +msgstr "E338: Desculpe, n�o h� um seletor de arquivos no modo console" + +msgid "E766: Insufficient arguments for printf()" +msgstr "E766: Argumentos insuficientes para printf()" + +msgid "E767: Too many arguments to printf()" +msgstr "E767: Argumentos demais para printf()" + +msgid "W10: Warning: Changing a readonly file" +msgstr "W10: Aviso: Modificando um arquivo somente-leitura" + +msgid "Type number or click with mouse (<Enter> cancels): " +msgstr "Digite um n�mero ou clique com o mouse (<Enter> cancela): " + +msgid "Choice number (<Enter> cancels): " +msgstr "N�mero da op��o (<Enter> cancela): " + +msgid "1 more line" +msgstr "1 linha a mais" + +msgid "1 line less" +msgstr "1 linha a menos" + +#, c-format +msgid "%ld more lines" +msgstr "%ld linhas a mais" + +#, c-format +msgid "%ld fewer lines" +msgstr "%ld linhas a menos" + +msgid " (Interrupted)" +msgstr " (Interrompido)" + +msgid "Beep!" +msgstr "Bip!" + +msgid "Vim: preserving files...\n" +msgstr "Vim: preservando arquivos...\n" + +#. close all memfiles, without deleting +msgid "Vim: Finished.\n" +msgstr "Vim: Conclu�do.\n" + +#, c-format +msgid "ERROR: " +msgstr "ERRO: " + +#, c-format +msgid "" +"\n" +"[bytes] total alloc-freed %lu-%lu, in use %lu, peak use %lu\n" +msgstr "" +"\n" +"[bytes] total alocado-liberado %lu-%lu, em uso %lu, pico %lu\n" + +#, c-format +msgid "" +"[calls] total re/malloc()'s %lu, total free()'s %lu\n" +"\n" +msgstr "" +"[total de chamadas] re/malloc() %lu, free() %lu\n" +"\n" + +msgid "E340: Line is becoming too long" +msgstr "E340: A linha est� tornando-se muito longa" + +#, c-format +msgid "E341: Internal error: lalloc(%ld, )" +msgstr "E341: Erro interno: lalloc(%ld, )" + +#, c-format +msgid "E342: Out of memory! (allocating %lu bytes)" +msgstr "E342: Mem�ria esgotada! (ao alocar %lu bytes)" + +#, c-format +msgid "Calling shell to execute: \"%s\"" +msgstr "Chamando o shell para executar: \"%s\"" + +msgid "E545: Missing colon" +msgstr "E545: Dois-pontos faltando" + +msgid "E546: Illegal mode" +msgstr "E546: Modo de opera��o inv�lido" + +msgid "E547: Illegal mouseshape" +msgstr "E547: 'mouseshape' inv�lido" + +msgid "E548: digit expected" +msgstr "E548: era esperado um algarismo" + +msgid "E549: Illegal percentage" +msgstr "E549: Porcentagem inv�lida" + +msgid "Enter encryption key: " +msgstr "Insira a chave criptogr�fica: " + +msgid "Enter same key again: " +msgstr "Insira a mesma chave novamente: " + +msgid "Keys don't match!" +msgstr "As chaves n�o coincidem!" + +#, c-format +msgid "E343: Invalid path: '**[number]' must be at the end of the path or be followed by '%s'." +msgstr "E343: Caminho inv�lido: '**[n�mero]' deve estar no final do caminho ou seguido de '%s'." + +#, c-format +msgid "E344: Can't find directory \"%s\" in cdpath" +msgstr "E344: Diret�rio \"%s\" n�o encontrado em 'cdpath'" + +#, c-format +msgid "E345: Can't find file \"%s\" in path" +msgstr "E345: Arquivo \"%s\" n�o encontrado em 'path'" + +#, c-format +msgid "E346: No more directory \"%s\" found in cdpath" +msgstr "E346: Mais nenhum diret�rio \"%s\" encontrado em 'cdpath'" + +#, c-format +msgid "E347: No more file \"%s\" found in path" +msgstr "E347: Mais nenhum arquivo \"%s\" encontrado em 'path'" + +#. Get here when the server can't be found. +msgid "Cannot connect to Netbeans #2" +msgstr "N�o foi poss�vel conectar-se ao Netbeans #2" + +msgid "Cannot connect to Netbeans" +msgstr "N�o foi poss�vel conectar-se ao Netbeans" + +#, c-format +msgid "E668: Wrong access mode for NetBeans connection info file: \"%s\"" +msgstr "E668: Modo de acesso errado para o arquivo de informa��o de conex�o do NetBeans: \"%s\"" + +msgid "read from Netbeans socket" +msgstr "lido do socket do NetBeans" + +#, c-format +msgid "E658: NetBeans connection lost for buffer %ld" +msgstr "E658: Conex�o com o NetBeans perdida para o buffer %ld" + +msgid "E505: " +msgstr "E505: " + +msgid "E774: 'operatorfunc' is empty" +msgstr "E774: 'operatorfunc' est� vazio" + +msgid "E775: Eval feature not available" +msgstr "E775: O recurso eval n�o est� dispon�vel" + +msgid "Warning: terminal cannot highlight" +msgstr "Aviso: o terminal n�o suporta destaque no modo visual" + +msgid "E348: No string under cursor" +msgstr "E348: Nenhuma cadeia de caracteres sob o cursor" + +msgid "E349: No identifier under cursor" +msgstr "E349: Nenhum identificador sob o cursor" + +msgid "E352: Cannot erase folds with current 'foldmethod'" +msgstr "E352: Imposs�vel eliminar dobras com o 'foldmethod' atual" + +msgid "E664: changelist is empty" +msgstr "E664: lista de modifica��es est� vazia" + +msgid "E662: At start of changelist" +msgstr "E662: No in�cio da lista de modifica��es" + +msgid "E663: At end of changelist" +msgstr "E663: No final da lista de modifica��es" + +msgid "Type :quit<Enter> to exit Vim" +msgstr "Digite :quit<Enter> para sair do Vim" + +#, c-format +msgid "1 line %sed 1 time" +msgstr "1 linha %sada 1 vez" + +#, c-format +msgid "1 line %sed %d times" +msgstr "1 linha %sada %d vezes" + +#, c-format +msgid "%ld lines %sed 1 time" +msgstr "%ld linhas %sadas 1 vez" + +#, c-format +msgid "%ld lines %sed %d times" +msgstr "%ld linhas %sadas %d vezes" + +#, c-format +msgid "%ld lines to indent... " +msgstr "%ld linhas para indentar... " + +msgid "1 line indented " +msgstr "1 linha indentada " + +#, c-format +msgid "%ld lines indented " +msgstr "%ld linhas indentadas " + +msgid "E748: No previously used register" +msgstr "E748: Nenhum registrador foi anteriormente utilizado" + +#. must display the prompt +msgid "cannot yank; delete anyway" +msgstr "imposs�vel copiar; excluir assim mesmo" + +msgid "1 line changed" +msgstr "1 linha alterada" + +#, c-format +msgid "%ld lines changed" +msgstr "%ld linhas alteradas" + +#, c-format +msgid "freeing %ld lines" +msgstr "liberando %ld linhas" + +msgid "block of 1 line yanked" +msgstr "bloco de uma linha copiado" + +msgid "1 line yanked" +msgstr "1 linha copiada" + +#, c-format +msgid "block of %ld lines yanked" +msgstr "bloco de %ld linhas copiado" + +#, c-format +msgid "%ld lines yanked" +msgstr "%ld linhas copiadas" + +#, c-format +msgid "E353: Nothing in register %s" +msgstr "E353: N�o h� nada no registrador %s" + +#. Highlight title +msgid "" +"\n" +"--- Registers ---" +msgstr "" +"\n" +"--- Registradores ---" + +msgid "Illegal register name" +msgstr "Nome de registrador inv�lido" + +#, c-format +msgid "" +"\n" +"# Registers:\n" +msgstr "" +"\n" +"# Registradores:\n" + +#, c-format +msgid "E574: Unknown register type %d" +msgstr "E574: Registrador de tipo desconhecido %d" + +#, c-format +msgid "%ld Cols; " +msgstr "%ld colunas; " + +#, c-format +msgid "Selected %s%ld of %ld Lines; %ld of %ld Words; %ld of %ld Bytes" +msgstr "Selecionadas %s%ld de %ld linhas; %ld de %ld palavras; %ld de %ld bytes" + +#, c-format +msgid "Selected %s%ld of %ld Lines; %ld of %ld Words; %ld of %ld Chars; %ld of %ld Bytes" +msgstr "Selecionadas %s%ld de %ld linhas; %ld de %ld palavras; %ld de %ld caracteres; %ld de %ld bytes" + +#, c-format +msgid "Col %s of %s; Line %ld of %ld; Word %ld of %ld; Byte %ld of %ld" +msgstr "Coluna %s de %s; linha %ld de %ld; palavra %ld de %ld; byte %ld de %ld" + +#, c-format +msgid "Col %s of %s; Line %ld of %ld; Word %ld of %ld; Char %ld of %ld; Byte %ld of %ld" +msgstr "Coluna %s de %s; linha %ld de %ld; palavra %ld de %ld; caractere %ld de %ld; byte %ld de %ld" + +#, c-format +msgid "(+%ld for BOM)" +msgstr "(+%ld para BOM)" + +msgid "%<%f%h%m%=Page %N" +msgstr "%<%f%h%m%=P�gina %N" + +msgid "Thanks for flying Vim" +msgstr "Obrigado por voar com o Vim" + +msgid "E518: Unknown option" +msgstr "E518: Op��o desconhecida" + +msgid "E519: Option not supported" +msgstr "E519: Op��o n�o suportada" + +msgid "E520: Not allowed in a modeline" +msgstr "E520: N�o permitido em modelines" + +msgid "E521: Number required after =" +msgstr "E521: N�mero requerido ap�s =" + +msgid "E522: Not found in termcap" +msgstr "E522: N�o encontrado no termcap" + +#, c-format +msgid "E539: Illegal character <%s>" +msgstr "E539: Caractere ilegal <%s>" + +msgid "E529: Cannot set 'term' to empty string" +msgstr "E529: 'term' n�o pode ser uma string vazia" + +msgid "E530: Cannot change term in GUI" +msgstr "E530: term n�o pode ser alterado na interface gr�fica" + +msgid "E531: Use \":gui\" to start the GUI" +msgstr "E531: Use \":gui\" para iniciar a interface gr�fica" + +msgid "E589: 'backupext' and 'patchmode' are equal" +msgstr "E589: 'backupext' e 'patchmode' s�o iguais" + +msgid "E617: Cannot be changed in the GTK+ 2 GUI" +msgstr "E617: N�o pode ser modificado na interface GTK+ 2" + +msgid "E524: Missing colon" +msgstr "E524: Dois-pontos faltando" + +msgid "E525: Zero length string" +msgstr "E525: Cadeia de comprimento zero" + +#, c-format +msgid "E526: Missing number after <%s>" +msgstr "E526: N�mero faltando ap�s <%s>" + +msgid "E527: Missing comma" +msgstr "E527: V�rgula faltando" + +msgid "E528: Must specify a ' value" +msgstr "E528: � necess�rio especificar um valor para '" + +msgid "E595: contains unprintable or wide character" +msgstr "E595: cont�m caracteres n�o-imprim�veis ou largos" + +msgid "E596: Invalid font(s)" +msgstr "E596: Fonte(s) inv�lida(s)" + +msgid "E597: can't select fontset" +msgstr "E597: imposs�vel selecionar conjunto de fontes" + +msgid "E598: Invalid fontset" +msgstr "E598: Conjunto de fontes inv�lido" + +msgid "E533: can't select wide font" +msgstr "E533: imposs�vel selecionar fonte de caracteres largos" + +msgid "E534: Invalid wide font" +msgstr "E534: Fonte de caracteres largos inv�lida." + +#, c-format +msgid "E535: Illegal character after <%c>" +msgstr "E535: Caractere inv�lido ap�s <%c>" + +msgid "E536: comma required" +msgstr "E536: v�rgula requerida" + +#, c-format +msgid "E537: 'commentstring' must be empty or contain %s" +msgstr "E537: 'commentstring' deve estar vazia ou conter %s" + +msgid "E538: No mouse support" +msgstr "E538: N�o h� suporte a mouse" + +msgid "E540: Unclosed expression sequence" +msgstr "E540: Express�o n�o terminada com '}'" + +msgid "E541: too many items" +msgstr "E541: itens demais" + +msgid "E542: unbalanced groups" +msgstr "E542: par�nteses desequilibrados" + +msgid "E590: A preview window already exists" +msgstr "E590: J� existe uma janela de visualiza��o" + +msgid "W17: Arabic requires UTF-8, do ':set encoding=utf-8'" +msgstr "W17: �rabe requer UTF-8; digite ':set encoding=utf-8'" + +#, c-format +msgid "E593: Need at least %d lines" +msgstr "E593: S�o necess�rias pelo menos %d linhas" + +#, c-format +msgid "E594: Need at least %d columns" +msgstr "E594: S�o necess�rias pelo menos %d colunas" + +#, c-format +msgid "E355: Unknown option: %s" +msgstr "E355: Op��o desconhecida: %s" + +#. There's another character after zeros or the string +#. * is empty. In both cases, we are trying to set a +#. * num option using a string. +#, c-format +msgid "E521: Number required: &%s = '%s'" +msgstr "E521: N�mero requerido: &%s = '%s'" + +msgid "" +"\n" +"--- Terminal codes ---" +msgstr "" +"\n" +"--- C�digos de terminal ---" + +msgid "" +"\n" +"--- Global option values ---" +msgstr "" +"\n" +"--- Valores de op��es globais ---" + +msgid "" +"\n" +"--- Local option values ---" +msgstr "" +"\n" +"--- Valores de op��es locais ---" + +msgid "" +"\n" +"--- Options ---" +msgstr "" +"\n" +"--- Op��es ---" + +msgid "E356: get_varp ERROR" +msgstr "E356: ERRO em get_varp" + +#, c-format +msgid "E357: 'langmap': Matching character missing for %s" +msgstr "E357: 'langmap': Falta um caractere para corresponder com %s" + +#, c-format +msgid "E358: 'langmap': Extra characters after semicolon: %s" +msgstr "E358: 'langmap': Caracteres a mais ap�s ponto-e-v�rgula: %s" + +msgid "cannot open " +msgstr "imposs�vel abrir " + +msgid "VIM: Can't open window!\n" +msgstr "VIM: N�o foi poss�vel abrir a janela!\n" + +msgid "Need Amigados version 2.04 or later\n" +msgstr "Necess�rio Amigados vers�o 2.04 ou mais nova\n" + +#, c-format +msgid "Need %s version %ld\n" +msgstr "Necess�rio %s vers�o %ld\n" + +msgid "Cannot open NIL:\n" +msgstr "Imposs�vel abrir NIL:\n" + +msgid "Cannot create " +msgstr "Imposs�vel criar " + +#, c-format +msgid "Vim exiting with %d\n" +msgstr "Vim terminando com %d\n" + +msgid "cannot change console mode ?!\n" +msgstr "imposs�vel alterar o modo de console ?!\n" + +msgid "mch_get_shellsize: not a console??\n" +msgstr "mch_get_shellsize: n�o � um console??\n" + +#. if Vim opened a window: Executing a shell may cause crashes +msgid "E360: Cannot execute shell with -f option" +msgstr "E360: Imposs�vel executar shell com op��o -f" + +msgid "Cannot execute " +msgstr "N�o � poss�vel executar " + +msgid "shell " +msgstr "shell " + +msgid " returned\n" +msgstr " devolveu\n" + +msgid "ANCHOR_BUF_SIZE too small." +msgstr "ANCHOR_BUF_SIZE pequeno demais." + +msgid "I/O ERROR" +msgstr "ERRO DE E/S" + +msgid "Message" +msgstr "Mensagem" + +msgid "'columns' is not 80, cannot execute external commands" +msgstr "'columns' n�o vale 80; imposs�vel executar comandos externos" + +msgid "E237: Printer selection failed" +msgstr "E237: Sele��o da impressora falhou" + +#, c-format +msgid "to %s on %s" +msgstr "para %s em %s" + +#, c-format +msgid "E613: Unknown printer font: %s" +msgstr "E613: Fonte de impress�o desconhecida: %s" + +#, c-format +msgid "E238: Print error: %s" +msgstr "E238: Erro de impress�o: %s" + +#, c-format +msgid "Printing '%s'" +msgstr "Imprimindo '%s'" + +#, c-format +msgid "E244: Illegal charset name \"%s\" in font name \"%s\"" +msgstr "E244: Conjunto de caracteres \"%s\" inv�lido no nome da fonte \"%s\"" + +#, c-format +msgid "E245: Illegal char '%c' in font name \"%s\"" +msgstr "E245: Caractere '%c' inv�lido no nome da fonte \"%s\"" + +msgid "E366: Invalid 'osfiletype' option - using Text" +msgstr "E366: Valor inv�lido para 'osfiletype' - usando Text" + +msgid "Vim: Double signal, exiting\n" +msgstr "Vim: Sinal duplo, saindo\n" + +#, c-format +msgid "Vim: Caught deadly signal %s\n" +msgstr "Vim: Sinal mortal %s interceptado\n" + +#, c-format +msgid "Vim: Caught deadly signal\n" +msgstr "Vim: Sinal mortal interceptado\n" + +#, c-format +msgid "Opening the X display took %ld msec" +msgstr "Abertura do display X demorou %ld ms" + +msgid "" +"\n" +"Vim: Got X error\n" +msgstr "" +"\n" +"Vim: Recebido erro do X\n" + +msgid "Testing the X display failed" +msgstr "Teste do display X falhou" + +msgid "Opening the X display timed out" +msgstr "Abertura do display X excedeu o tempo-limite" + +msgid "" +"\n" +"Could not get security context for " +msgstr "" +"\n" +"N�o foi poss�vel obter o contexto de seguran�a para " + +msgid "" +"\n" +"Could not set security context for " +msgstr "" +"\n" +"N�o foi poss�vel definir o contexto de seguran�a para " + +msgid "" +"\n" +"Cannot execute shell " +msgstr "" +"\n" +"N�o foi poss�vel executar o shell " + +msgid "" +"\n" +"Cannot execute shell sh\n" +msgstr "" +"\n" +"N�o foi poss�vel executar o shell sh\n" + +msgid "" +"\n" +"shell returned " +msgstr "" +"\n" +"o shell devolveu " + +msgid "" +"\n" +"Cannot create pipes\n" +msgstr "" +"\n" +"Imposs�vel criar pipes de comunica��o\n" + +msgid "" +"\n" +"Cannot fork\n" +msgstr "" +"\n" +"Imposs�vel realizar bifurca��o de processo\n" + +msgid "" +"\n" +"Command terminated\n" +msgstr "" +"\n" +"Comando interrompido\n" + +msgid "XSMP lost ICE connection" +msgstr "XSMP perdeu a conex�o ICE" + +#, c-format +msgid "dlerror = \"%s\"" +msgstr "dlerror = \"%s\"" + +msgid "Opening the X display failed" +msgstr "Abertura do display X falhou" + +msgid "XSMP handling save-yourself request" +msgstr "XSMP tratando pedido de auto-salvamento" + +msgid "XSMP opening connection" +msgstr "XSMP abrindo conex�o" + +msgid "XSMP ICE connection watch failed" +msgstr "Falha no vigia de conex�es ICE do XSMP" + +#, c-format +msgid "XSMP SmcOpenConnection failed: %s" +msgstr "Falha em SmcOpenConnection do XSMP: %s" + +msgid "At line" +msgstr "Na linha" + +msgid "Could not load vim32.dll!" +msgstr "N�o foi poss�vel carregar vim32.dll!" + +msgid "VIM Error" +msgstr "Erro do VIM" + +msgid "Could not fix up function pointers to the DLL!" +msgstr "N�o foi poss�vel definir os ponteiros de fun��o para a DLL!" + +#, c-format +msgid "shell returned %d" +msgstr "shell devolveu %d" + +#, c-format +msgid "Vim: Caught %s event\n" +msgstr "Vim: Evento %s interceptado\n" + +msgid "close" +msgstr "de fechamento" + +msgid "logoff" +msgstr "de logoff" + +msgid "shutdown" +msgstr "de desligamento" + +msgid "E371: Command not found" +msgstr "E371: Comando n�o encontrado" + +msgid "" +"VIMRUN.EXE not found in your $PATH.\n" +"External commands will not pause after completion.\n" +"See :help win32-vimrun for more information." +msgstr "" +"VIMRUN.EXE n�o foi encontrado no seu $PATH.\n" +"Comandos externos n�o far�o uma pausa ao terminar.\n" +"Veja :help win32-vimrun para mais informa��es." + +msgid "Vim Warning" +msgstr "Alerta do Vim" + +#, c-format +msgid "E372: Too many %%%c in format string" +msgstr "E372: Muitos %%%c na especifica��o do formato" + +#, c-format +msgid "E373: Unexpected %%%c in format string" +msgstr "E373: %%%c inesperado na especifica��o do formato" + +msgid "E374: Missing ] in format string" +msgstr "E374: ] faltando na especifica��o do formato" + +#, c-format +msgid "E375: Unsupported %%%c in format string" +msgstr "E375: %%%c n�o suportado na especifica��o de formato" + +#, c-format +msgid "E376: Invalid %%%c in format string prefix" +msgstr "E376: %%%c inv�lido no prefixo da especifica��o de formato" + +#, c-format +msgid "E377: Invalid %%%c in format string" +msgstr "E377: %%%c inv�lido na especifica��o de formato" + +msgid "E378: 'errorformat' contains no pattern" +msgstr "E378: 'errorformat' n�o cont�m nenhum padr�o" + +msgid "E379: Missing or empty directory name" +msgstr "E379: O nome do diret�rio est� faltando ou vazio" + +msgid "E553: No more items" +msgstr "E553: N�o h� mais itens" + +#, c-format +msgid "(%d of %d)%s%s: " +msgstr "(%d de %d)%s%s: " + +msgid " (line deleted)" +msgstr " (linha exclu�da)" + +msgid "E380: At bottom of quickfix stack" +msgstr "E380: No final da pilha do quickfix" + +msgid "E381: At top of quickfix stack" +msgstr "E381: No topo da pilha do quickfix" + +#, c-format +msgid "error list %d of %d; %d errors" +msgstr "lista de erros %d de %d; %d erros" + +msgid "E382: Cannot write, 'buftype' option is set" +msgstr "E382: Imposs�vel gravar, op��o 'buftype' foi definida" + +msgid "E683: File name missing or invalid pattern" +msgstr "E683: Nome de arquivo faltando ou padr�o inv�lido" + +#, c-format +msgid "Cannot open file \"%s\"" +msgstr "Imposs�vel abrir arquivo \"%s\"" + +msgid "E681: Buffer is not loaded" +msgstr "E681: Buffer n�o est� carregado" + +msgid "E777: String or List expected" +msgstr "E777: Era esperada uma String ou uma Lista" + +#, c-format +msgid "E369: invalid item in %s%%[]" +msgstr "E369: item inv�lido em %s%%[]" + +msgid "E339: Pattern too long" +msgstr "E339: Padr�o longo demais" + +msgid "E50: Too many \\z(" +msgstr "E50: Muitos \\z(" + +#, c-format +msgid "E51: Too many %s(" +msgstr "E51: Muitos %s(" + +msgid "E52: Unmatched \\z(" +msgstr "E52: \\z( sem correspondente" + +#, c-format +msgid "E53: Unmatched %s%%(" +msgstr "E53: %s%%( sem correspondente" + +#, c-format +msgid "E54: Unmatched %s(" +msgstr "E54: %s( sem correspondente" + +#, c-format +msgid "E55: Unmatched %s)" +msgstr "E55: %s) sem correspondente" + +#, c-format +msgid "E59: invalid character after %s@" +msgstr "E59: caractere inv�lido ap�s %s@" + +#, c-format +msgid "E60: Too many complex %s{...}s" +msgstr "E60: Muitos %s{...}s complexos" + +#, c-format +msgid "E61: Nested %s*" +msgstr "E61: %s* aninhado" + +#, c-format +msgid "E62: Nested %s%c" +msgstr "E62: %s%c aninhado" + +msgid "E63: invalid use of \\_" +msgstr "E63: uso inv�lido de \\_" + +#, c-format +msgid "E64: %s%c follows nothing" +msgstr "E64: %s%c n�o segue nenhum item" + +msgid "E65: Illegal back reference" +msgstr "E65: Retrorrefer�ncia inv�lida" + +msgid "E66: \\z( not allowed here" +msgstr "E66: \\z( n�o � permitido aqui" + +msgid "E67: \\z1 et al. not allowed here" +msgstr "E67: \\z1 e cia. n�o s�o permitidos aqui" + +msgid "E68: Invalid character after \\z" +msgstr "E68: Caractere inv�lido ap�s \\z" + +#, c-format +msgid "E69: Missing ] after %s%%[" +msgstr "E69: ] faltando ap�s %s%%[" + +#, c-format +msgid "E70: Empty %s%%[]" +msgstr "E70: %s%%[] vazio" + +#, c-format +msgid "E678: Invalid character after %s%%[dxouU]" +msgstr "E678: Caractere inv�lido ap�s %s%%[dxouU]" + +#, c-format +msgid "E71: Invalid character after %s%%" +msgstr "E71: Caractere inv�lido ap�s %s%%" + +#, c-format +msgid "E769: Missing ] after %s[" +msgstr "E769: ] faltando ap�s %s[" + +#, c-format +msgid "E554: Syntax error in %s{...}" +msgstr "E554: Erro de sintaxe em %s{...}" + +msgid "External submatches:\n" +msgstr "Subcoincid�ncias externas:\n" + +msgid " VREPLACE" +msgstr " SUBSTITUI��O VISUAL" + +msgid " REPLACE" +msgstr " SUBSTITUI��O" + +# ESD - In Portuguese it would sound more natural if the message for +# "REVERSE" came *after* the message for "INSERT". +msgid " REVERSE" +msgstr " (INVERTIDA)" + +msgid " INSERT" +msgstr " INSER��O" + +msgid " (insert)" +msgstr " (inser��o)" + +msgid " (replace)" +msgstr " (substitui��o)" + +msgid " (vreplace)" +msgstr " (substitui��o visual)" + +msgid " Hebrew" +msgstr " Hebraico" + +msgid " Arabic" +msgstr " �rabe" + +msgid " (lang)" +msgstr " (l�ngua)" + +msgid " (paste)" +msgstr " (colar)" + +msgid " VISUAL" +msgstr " VISUAL" + +msgid " VISUAL LINE" +msgstr " VISUAL/LINHA" + +msgid " VISUAL BLOCK" +msgstr " VISUAL/BLOCO" + +msgid " SELECT" +msgstr " SELE��O" + +msgid " SELECT LINE" +msgstr " SELE��O DE LINHAS" + +msgid " SELECT BLOCK" +msgstr " SELE��O EM BLOCO" + +msgid "recording" +msgstr "gravando" + +#, c-format +msgid "E383: Invalid search string: %s" +msgstr "E383: Texto de busca inv�lido: %s" + +#, c-format +msgid "E384: search hit TOP without match for: %s" +msgstr "E384: busca atingiu o TOPO sem encontrar: %s" + +#, c-format +msgid "E385: search hit BOTTOM without match for: %s" +msgstr "E385: busca atingiu o FIM sem encontrar: %s" + +msgid "E386: Expected '?' or '/' after ';'" +msgstr "E386: '?' ou '/' esperado ap�s ';'" + +msgid " (includes previously listed match)" +msgstr " (inclui coincid�ncias listadas anteriormente)" + +#. cursor at status line +msgid "--- Included files " +msgstr "--- Arquivos inclu�dos " + +msgid "not found " +msgstr "n�o encontrados " + +msgid "in path ---\n" +msgstr "no caminho de busca ---\n" + +msgid " (Already listed)" +msgstr " (J� listado)" + +msgid " NOT FOUND" +msgstr " N�O ENCONTRADO" + +#, c-format +msgid "Scanning included file: %s" +msgstr "Examinando arquivo inclu�do: %s" + +#, c-format +msgid "Searching included file %s" +msgstr "Examinando arquivo inclu�do %s" + +msgid "E387: Match is on current line" +msgstr "E387: A correspond�ncia est� na linha atual" + +msgid "All included files were found" +msgstr "Todos os arquivos inclu�dos foram encontrados" + +msgid "No included files" +msgstr "N�o h� arquivos inclu�dos" + +msgid "E388: Couldn't find definition" +msgstr "E388: Defini��o n�o foi encontrada" + +msgid "E389: Couldn't find pattern" +msgstr "E389: Padr�o n�o foi encontrado" + +# ESD - The %s is replaced by the argument which is given to the wvsp_one() +# function (search.c). The "Substitute " argument which may be given +# to it should be translated as well. +#, c-format +msgid "" +"\n" +"# Last %sSearch Pattern:\n" +"~" +msgstr "" +"\n" +"# �ltimo padr�o de busca %s:\n" +"~" + +msgid "E759: Format error in spell file" +msgstr "E759: Erro de formato no arquivo de verifica��o ortogr�fica" + +msgid "E758: Truncated spell file" +msgstr "E758: Arquivo de verifica��o ortogr�fica truncado" + +#, c-format +msgid "Trailing text in %s line %d: %s" +msgstr "Texto a mais em %s, linha %d: %s" + +#, c-format +msgid "Affix name too long in %s line %d: %s" +msgstr "Nome do afixo longo demais em %s, linha %d: %s" + +msgid "E761: Format error in affix file FOL, LOW or UPP" +msgstr "E761: Erro de formato em FOL, LOW ou UPP no arquivo de afixos" + +msgid "E762: Character in FOL, LOW or UPP is out of range" +msgstr "E762: H� um caractere fora dos limites em FOL, LOW ou UPP" + +msgid "Compressing word tree..." +msgstr "Comprimindo �rvore de palavras..." + +msgid "E756: Spell checking is not enabled" +msgstr "E756: A verifica��o ortogr�fica n�o est� ativada" + +#, c-format +msgid "Warning: Cannot find word list \"%s.%s.spl\" or \"%s.ascii.spl\"" +msgstr "Aviso: A lista de palavras \"%s.%s.spl\" ou \"%s.ascii.spl\" n�o foi encontrada" + +#, c-format +msgid "Reading spell file \"%s\"" +msgstr "Lendo arquivo de verifica��o ortogr�fica \"%s\"" + +msgid "E757: This does not look like a spell file" +msgstr "E757: Este n�o se parece com um arquivo de verifica��o ortogr�fica" + +msgid "E771: Old spell file, needs to be updated" +msgstr "E771: Arquivo de verifica��o ortogr�fica antigo; � necess�rio atualiz�-lo" + +msgid "E772: Spell file is for newer version of Vim" +msgstr "E772: Arquivo de verifica��o ortogr�fica � para uma vers�o mais nova do Vim" + +msgid "E770: Unsupported section in spell file" +msgstr "E770: Se��o n�o suportada no arquivo de verifica��o ortogr�fica" + +#, c-format +msgid "Warning: region %s not supported" +msgstr "Aviso: regi�o %s n�o � suportada" + +#, c-format +msgid "Reading affix file %s ..." +msgstr "Lendo arquivo de afixos %s..." + +#, c-format +msgid "Conversion failure for word in %s line %d: %s" +msgstr "Falha na convers�o para palavra em %s, linha %d: %s" + +#, c-format +msgid "Conversion in %s not supported: from %s to %s" +msgstr "Convers�o em %s n�o � suportada: de %s para %s" + +#, c-format +msgid "Conversion in %s not supported" +msgstr "Convers�o em %s n�o � suportada" + +#, c-format +msgid "Invalid value for FLAG in %s line %d: %s" +msgstr "Valor inv�lido para FLAG em %s, linha %d: %s" + +#, c-format +msgid "FLAG after using flags in %s line %d: %s" +msgstr "FLAG encontrado ap�s outros indicadores em %s, linha %d: %s" + +#, c-format +msgid "Defining COMPOUNDFORBIDFLAG after PFX item may give wrong results in %s line %d" +msgstr "Definir COMPOUNDFORBIDFLAG ap�s um item PFX pode causar resultados errados em %s, linha %d" + +#, c-format +msgid "Defining COMPOUNDPERMITFLAG after PFX item may give wrong results in %s line %d" +msgstr "Definir COMPOUNDPERMITFLAG ap�s um item PFX pode causar resultados errados em %s, linha %d" + +#, c-format +msgid "Wrong COMPOUNDWORDMAX value in %s line %d: %s" +msgstr "Valor COMPOUNDWORDMAX incorreto em %s, linha %d: %s" + +#, c-format +msgid "Wrong COMPOUNDMIN value in %s line %d: %s" +msgstr "Valor COMPOUNDMIN incorreto em %s, linha %d: %s" + +#, c-format +msgid "Wrong COMPOUNDSYLMAX value in %s line %d: %s" +msgstr "Valor COMPOUNDSYLMAX incorreto em %s, linha %d: %s" + +#, c-format +msgid "Wrong CHECKCOMPOUNDPATTERN value in %s line %d: %s" +msgstr "Valor CHECKCOMPOUNDPATTERN incorreto em %s, linha %d: %s" + +#, c-format +msgid "Different combining flag in continued affix block in %s line %d: %s" +msgstr "Indicadores de combina��o diferentes no bloco de afixos continuado em %s linha %d: %s" + +#, c-format +msgid "Duplicate affix in %s line %d: %s" +msgstr "Afixo duplicado em %s, linha %d: %s" + +#, c-format +msgid "Affix also used for BAD/RARE/KEEPCASE/NEEDAFFIX/NEEDCOMPOUND/NOSUGGEST in %s line %d: %s" +msgstr "Afixo tamb�m usado para BAD/RARE/KEEPCASE/NEEDAFFIX/NEEDCOMPOUND/NOSUGGEST em %s, linha %d: %s" + +#, c-format +msgid "Expected Y or N in %s line %d: %s" +msgstr "Esperado Y ou N em %s, linha %d: %s" + +#, c-format +msgid "Broken condition in %s line %d: %s" +msgstr "Condi��o defeituosa em %s, linha %d: %s" + +#, c-format +msgid "Expected REP(SAL) count in %s line %d" +msgstr "Esperado n�mero de REP(SAL) em %s, linha %d" + +#, c-format +msgid "Expected MAP count in %s line %d" +msgstr "Esperado n�mero de MAP em %s, linha %d" + +#, c-format +msgid "Duplicate character in MAP in %s line %d" +msgstr "Caractere duplicado em MAP em %s, linha %d" + +#, c-format +msgid "Unrecognized or duplicate item in %s line %d: %s" +msgstr "Item n�o reconhecido ou duplicado em %s, linha %d: %s" + +#, c-format +msgid "Missing FOL/LOW/UPP line in %s" +msgstr "Linha FOL/LOW/UPP faltando em %s" + +msgid "COMPOUNDSYLMAX used without SYLLABLE" +msgstr "COMPOUNDSYLMAX usado sem SYLLABLE" + +msgid "Too many postponed prefixes" +msgstr "H� muitos prefixos postergados" + +msgid "Too many compound flags" +msgstr "H� muitos indicadores de composi��o" + +msgid "Too many posponed prefixes and/or compound flags" +msgstr "H� muitos prefixos postergados e/ou indicadores de composi��o" + +#, c-format +msgid "Missing SOFO%s line in %s" +msgstr "Linha SOFO%s faltando em %s" + +#, c-format +msgid "Both SAL and SOFO lines in %s" +msgstr "Linhas SAL e SOFO presentes em %s" + +#, c-format +msgid "Flag is not a number in %s line %d: %s" +msgstr "Indicador n�o num�rico em %s, linha %d: %s" + +#, c-format +msgid "Illegal flag in %s line %d: %s" +msgstr "Indicador inv�lido em %s, linha %d: %s" + +#, c-format +msgid "%s value differs from what is used in another .aff file" +msgstr "O valor de %s � diferente daquele usado em outro arquivo .aff" + +#, c-format +msgid "Reading dictionary file %s ..." +msgstr "Lendo arquivo-dicion�rio %s ..." + +#, c-format +msgid "E760: No word count in %s" +msgstr "E760: N�mero de palavras n�o indicado em %s" + +#, c-format +msgid "line %6d, word %6d - %s" +msgstr "linha %6d, palavra %6d - %s" + +#, c-format +msgid "Duplicate word in %s line %d: %s" +msgstr "Palavra duplicada em %s, linha %d: %s" + +#, c-format +msgid "First duplicate word in %s line %d: %s" +msgstr "Primeira palavra duplicada em %s, linha %d: %s" + +#, c-format +msgid "%d duplicate word(s) in %s" +msgstr "%d palavra(s) duplicada(s) em %s" + +#, c-format +msgid "Ignored %d word(s) with non-ASCII characters in %s" +msgstr "Foram ignoradas %d palavra(s) com caracteres n�o-ASCII em %s" + +#, c-format +msgid "Reading word file %s ..." +msgstr "Lendo arquivo de palavras %s ..." + +#, c-format +msgid "Duplicate /encoding= line ignored in %s line %d: %s" +msgstr "Linha /encoding= duplicada ignorada em %s, linha %d: %s" + +#, c-format +msgid "/encoding= line after word ignored in %s line %d: %s" +msgstr "Linha /encoding= ignorada ap�s uma palavra em %s, linha %d: %s" + +#, c-format +msgid "Duplicate /regions= line ignored in %s line %d: %s" +msgstr "Linha /regions= duplicada ignorada em %s, linha %d: %s" + +#, c-format +msgid "Too many regions in %s line %d: %s" +msgstr "Regi�es demais em %s, linha %d: %s" + +#, c-format +msgid "/ line ignored in %s line %d: %s" +msgstr "Linha / ignorada em %s, linha %d: %s" + +#, c-format +msgid "Invalid region nr in %s line %d: %s" +msgstr "N�m. de regi�o inv�lido em %s, linha %d: %s" + +#, c-format +msgid "Unrecognized flags in %s line %d: %s" +msgstr "Indicadores n�o reconhecidos em %s, linha %d: %s" + +#, c-format +msgid "Ignored %d words with non-ASCII characters" +msgstr "Ignoradas %d palavras com caracteres n�o-ASCII" + +#, c-format +msgid "Compressed %d of %d nodes; %d (%d%%) remaining" +msgstr "%d de %d n�s comprimidos; %d (%d%%) restantes" + +msgid "Reading back spell file..." +msgstr "Relendo o arquivo de verifica��o ortogr�fica..." + +#. +#. * Go through the trie of good words, soundfold each word and add it to +#. * the soundfold trie. +#. +msgid "Performing soundfolding..." +msgstr "Realizando an�lise fon�tica..." + +#, c-format +msgid "Number of words after soundfolding: %ld" +msgstr "N�mero de palavras ap�s an�lise fon�tica: %ld" + +#, c-format +msgid "Total number of words: %d" +msgstr "N�mero total de palavras: %d" + +#, c-format +msgid "Writing suggestion file %s ..." +msgstr "Gravando arquivo de sugest�es %s ..." + +#, c-format +msgid "Estimated runtime memory use: %d bytes" +msgstr "Consumo estimado de mem�ria: %d bytes" + +msgid "E751: Output file name must not have region name" +msgstr "E751: O nome do arquivo n�o deve conter o nome da regi�o" + +msgid "E754: Only up to 8 regions supported" +msgstr "E754: S�o suportadas apenas 8 regi�es no m�ximo" + +#, c-format +msgid "E755: Invalid region in %s" +msgstr "E755: Regi�o inv�lida em %s" + +msgid "Warning: both compounding and NOBREAK specified" +msgstr "Aviso: tanto composi��o quanto NOBREAK foram especificados" + +#, c-format +msgid "Writing spell file %s ..." +msgstr "Gravando arquivo de verifica��o ortogr�fica %s ..." + +msgid "Done!" +msgstr "Conclu�do!" + +#, c-format +msgid "E765: 'spellfile' does not have %ld entries" +msgstr "E765: 'spellfile' n�o cont�m %ld elementos" + +#, c-format +msgid "Word removed from %s" +msgstr "Palavra removida de %s" + +#, c-format +msgid "Word added to %s" +msgstr "Palavra adicionada a %s" + +msgid "E763: Word characters differ between spell files" +msgstr "E763: Caracteres das palavras diferem entre os arquivos ortogr�ficos" + +msgid "Sorry, no suggestions" +msgstr "Desculpe, n�o h� sugest�es" + +#, c-format +msgid "Sorry, only %ld suggestions" +msgstr "Desculpe, apenas %ld sugest�es" + +#. for when 'cmdheight' > 1 +#. avoid more prompt +#, c-format +msgid "Change \"%.*s\" to:" +msgstr "Alterar \"%.*s\" para:" + +#, c-format +msgid " < \"%.*s\"" +msgstr " < \"%.*s\"" + +msgid "E752: No previous spell replacement" +msgstr "E752: Nenhuma substitui��o ortogr�fica anterior" + +#, c-format +msgid "E753: Not found: %s" +msgstr "E753: N�o encontrado: %s" + +#, c-format +msgid "E778: This does not look like a .sug file: %s" +msgstr "E778: Este n�o parece com um arquivo .sug: %s" + +#, c-format +msgid "E779: Old .sug file, needs to be updated: %s" +msgstr "E779: Arquivo .sug antigo, precisa ser atualizado: %s" + +#, c-format +msgid "E780: .sug file is for newer version of Vim: %s" +msgstr "E780: Arquivo .sug � para uma vers�o mais nova do Vim: %s" + +#, c-format +msgid "E781: .sug file doesn't match .spl file: %s" +msgstr "E781: O arquivo .sug n�o corresponde ao arquivo .spl: %s" + +#, c-format +msgid "E782: error while reading .sug file: %s" +msgstr "E782: erro ao ler o arquivo .sug: %s" + +#. This should have been checked when generating the .spl +#. * file. +msgid "E783: duplicate char in MAP entry" +msgstr "E783: caractere duplicado na entrada MAP" + +#, c-format +msgid "E390: Illegal argument: %s" +msgstr "E390: Argumento inv�lido: %s" + +#, c-format +msgid "E391: No such syntax cluster: %s" +msgstr "E391: N�o existe o agrupamento sint�tico: %s" + +msgid "No Syntax items defined for this buffer" +msgstr "Nenhum item sint�tico definido para este buffer" + +msgid "syncing on C-style comments" +msgstr "sincroniza��o nos coment�rios no estilo do C" + +msgid "no syncing" +msgstr "sem sincroniza��o" + +msgid "syncing starts " +msgstr "sincroniza��o come�a " + +msgid " lines before top line" +msgstr " linhas antes do topo da tela" + +msgid "" +"\n" +"--- Syntax sync items ---" +msgstr "" +"\n" +"--- Elementos de sincroniza��o da sintaxe ---" + +msgid "" +"\n" +"syncing on items" +msgstr "" +"\n" +"sincroniza��o sobre elementos" + +msgid "" +"\n" +"--- Syntax items ---" +msgstr "" +"\n" +"--- Elementos de sintaxe ---" + +#, c-format +msgid "E392: No such syntax cluster: %s" +msgstr "E392: N�o existe o agrupamento de sintaxe: %s" + +msgid "minimal " +msgstr "m�nimo " + +msgid "maximal " +msgstr "m�ximo " + +msgid "; match " +msgstr "; corresponder com " + +msgid " line breaks" +msgstr " quebras de linha" + +msgid "E395: contains argument not accepted here" +msgstr "E395: o par�metro \"contains\" n�o � aceito aqui" + +msgid "E396: containedin argument not accepted here" +msgstr "E396: o par�metro \"containedin\" n�o � aceito aqui" + +msgid "E393: group[t]here not accepted here" +msgstr "E393: o par�metro \"group[t]here\" n�o � aceito aqui" + +#, c-format +msgid "E394: Didn't find region item for %s" +msgstr "E394: N�o foi encontrado um item de regi�o para %s" + +msgid "E397: Filename required" +msgstr "E397: Nome de arquivo requerido" + +#, c-format +msgid "E789: Missing ']': %s" +msgstr "E789: ']' faltando: %s" + +#, c-format +msgid "E398: Missing '=': %s" +msgstr "E398: '=' faltando: %s" + +#, c-format +msgid "E399: Not enough arguments: syntax region %s" +msgstr "E399: Argumentos insuficientes: syntax region %s" + +msgid "E400: No cluster specified" +msgstr "E400: Nenhum agrupamento especificado" + +#, c-format +msgid "E401: Pattern delimiter not found: %s" +msgstr "E401: Delimitador de padr�o n�o encontrado: %s" + +#, c-format +msgid "E402: Garbage after pattern: %s" +msgstr "E402: Caracteres indevidos ap�s o padr�o: %s" + +msgid "E403: syntax sync: line continuations pattern specified twice" +msgstr "E403: syntax sync: padr�o de continua��o de linha informado duas vezes" + +#, c-format +msgid "E404: Illegal arguments: %s" +msgstr "E404: Argumentos inv�lidos: %s" + +#, c-format +msgid "E405: Missing equal sign: %s" +msgstr "E405: Sinal de igual faltando: %s" + +#, c-format +msgid "E406: Empty argument: %s" +msgstr "E406: Argumento vazio: %s" + +#, c-format +msgid "E407: %s not allowed here" +msgstr "E407: %s n�o � permitido aqui" + +#, c-format +msgid "E408: %s must be first in contains list" +msgstr "E408: %s deve ser o primeiro na lista de \"contains\"" + +#, c-format +msgid "E409: Unknown group name: %s" +msgstr "E409: Nome de grupo desconhecido: %s" + +#, c-format +msgid "E410: Invalid :syntax subcommand: %s" +msgstr "E410: Subcomando inv�lido para :syntax: %s" + +msgid "E679: recursive loop loading syncolor.vim" +msgstr "E679: loop recursivo ao carregar syncolor.vim" + +#, c-format +msgid "E411: highlight group not found: %s" +msgstr "E411: grupo de destaque n�o encontrado: %s" + +#, c-format +msgid "E412: Not enough arguments: \":highlight link %s\"" +msgstr "E412: Argumentos insuficientes: \":highlight link %s\"" + +#, c-format +msgid "E413: Too many arguments: \":highlight link %s\"" +msgstr "E413: Argumentos demais: \":highlight link %s\"" + +msgid "E414: group has settings, highlight link ignored" +msgstr "E414: o grupo j� tem suas defini��es; associa��o de destaque ignorada" + +#, c-format +msgid "E415: unexpected equal sign: %s" +msgstr "E415: sinal de igual inesperado: %s" + +#, c-format +msgid "E416: missing equal sign: %s" +msgstr "E416: sinal de igual faltando: %s" + +#, c-format +msgid "E417: missing argument: %s" +msgstr "E417: argumento faltando: %s" + +#, c-format +msgid "E418: Illegal value: %s" +msgstr "E418: Valor inv�lido: %s" + +msgid "E419: FG color unknown" +msgstr "E419: cor do texto desconhecida" + +msgid "E420: BG color unknown" +msgstr "E420: cor de fundo desconhecida" + +#, c-format +msgid "E421: Color name or number not recognized: %s" +msgstr "E421: Nome ou n�mero de cor n�o reconhecido: %s" + +#, c-format +msgid "E422: terminal code too long: %s" +msgstr "E422: c�digo de terminal longo demais: %s" + +#, c-format +msgid "E423: Illegal argument: %s" +msgstr "E423: Argumento inv�lido: %s" + +msgid "E424: Too many different highlighting attributes in use" +msgstr "E424: Muitos atributos diferentes de destaque sendo usados simultaneamente" + +msgid "E669: Unprintable character in group name" +msgstr "E669: Caractere n�o-imprim�vel no nome do grupo" + +msgid "W18: Invalid character in group name" +msgstr "W18: Caractere inv�lido no nome do grupo" + +msgid "E555: at bottom of tag stack" +msgstr "E555: no fim da pilha de marcadores" + +msgid "E556: at top of tag stack" +msgstr "E556: no topo da pilha de marcadores" + +msgid "E425: Cannot go before first matching tag" +msgstr "E425: Imposs�vel ir para antes do primeiro marcador correspondente" + +#, c-format +msgid "E426: tag not found: %s" +msgstr "E426: marcador n�o encontrado: %s" + +msgid " # pri kind tag" +msgstr " # pri tipo marcador" + +msgid "file\n" +msgstr "arquivo\n" + +msgid "E427: There is only one matching tag" +msgstr "E427: S� h� um marcador coincidente" + +msgid "E428: Cannot go beyond last matching tag" +msgstr "E428: Imposs�vel ir al�m do �ltimo marcador coincidente" + +#, c-format +msgid "File \"%s\" does not exist" +msgstr "Arquivo \"%s\" n�o existe" + +#. Give an indication of the number of matching tags +#, c-format +msgid "tag %d of %d%s" +msgstr "marcador %d de %d%s" + +msgid " or more" +msgstr " ou mais" + +msgid " Using tag with different case!" +msgstr " Usando etiqueta com caixa diferente!" + +#, c-format +msgid "E429: File \"%s\" does not exist" +msgstr "E429: Arquivo \"%s\" n�o existe" + +#. Highlight title +msgid "" +"\n" +" # TO tag FROM line in file/text" +msgstr "" +"\n" +" # PARA marcador DA linha no arquivo/texto" + +#, c-format +msgid "Searching tags file %s" +msgstr "Examinando arquivo de marcadores %s" + +#, c-format +msgid "E430: Tag file path truncated for %s\n" +msgstr "E430: Caminho dos arquivos de marcadores truncado para %s\n" + +#, c-format +msgid "E431: Format error in tags file \"%s\"" +msgstr "E431: Erro de formato no arquivo de marcadores \"%s\"" + +#, c-format +msgid "Before byte %ld" +msgstr "Antes do byte %ld" + +#, c-format +msgid "E432: Tags file not sorted: %s" +msgstr "E432: Arquivo de marcadores n�o ordenado: %s" + +#. never opened any tags file +msgid "E433: No tags file" +msgstr "E433: N�o h� arquivo de marcadores" + +msgid "E434: Can't find tag pattern" +msgstr "E434: Padr�o do marcador n�o encontrado" + +msgid "E435: Couldn't find tag, just guessing!" +msgstr "E435: Marcador n�o foi encontrado, tentando adivinhar apenas!" + +msgid "' not known. Available builtin terminals are:" +msgstr "' desconhecido. Os terminais incorporados dispon�veis s�o:" + +msgid "defaulting to '" +msgstr "usando por omiss�o '" + +msgid "E557: Cannot open termcap file" +msgstr "E557: Imposs�vel abrir arquivo termcap" + +msgid "E558: Terminal entry not found in terminfo" +msgstr "E558: Descri��o do terminal n�o encontrada em terminfo" + +msgid "E559: Terminal entry not found in termcap" +msgstr "E559: Descri��o do terminal n�o encontrada em termcap" + +#, c-format +msgid "E436: No \"%s\" entry in termcap" +msgstr "E436: Nenhuma entrada \"%s\" em termcap" + +msgid "E437: terminal capability \"cm\" required" +msgstr "E437: � necess�rio o recurso de terminal \"cm\"" + +#. Highlight title +msgid "" +"\n" +"--- Terminal keys ---" +msgstr "" +"\n" +"--- Teclas do terminal ---" + +msgid "new shell started\n" +msgstr "novo shell iniciado\n" + +msgid "Vim: Error reading input, exiting...\n" +msgstr "Vim: Erro ao ler a entrada; saindo...\n" + +#. must display the prompt +msgid "No undo possible; continue anyway" +msgstr "Imposs�vel desfazer; continuando assim mesmo" + +msgid "Already at oldest change" +msgstr "J� est� na altera��o mais antiga" + +msgid "Already at newest change" +msgstr "J� est� na altera��o mais nova" + +#, c-format +msgid "Undo number %ld not found" +msgstr "Desfazimento n� %ld n�o encontrado" + +msgid "E438: u_undo: line numbers wrong" +msgstr "E438: u_undo: n�meros de linha errados" + +msgid "more line" +msgstr "linha a mais" + +msgid "more lines" +msgstr "linhas a mais" + +msgid "line less" +msgstr "linha a menos" + +msgid "fewer lines" +msgstr "linhas a menos" + +msgid "change" +msgstr "altera��o" + +msgid "changes" +msgstr "altera��es" + +#, c-format +msgid "%ld %s; %s #%ld %s" +msgstr "%ld %s; %s #%ld %s" + +msgid "before" +msgstr "antes de" + +msgid "after" +msgstr "ap�s" + +msgid "Nothing to undo" +msgstr "Nada a desfazer" + +msgid "number changes time" +msgstr "n�mero altera�. hora" + +#, c-format +msgid "%ld seconds ago" +msgstr "%ld segundos atr�s" + +msgid "E790: undojoin is not allowed after undo" +msgstr "E790: undojoin n�o � permitido depois de desfazer" + +msgid "E439: undo list corrupt" +msgstr "E439: lista de desfazimentos corrompida" + +msgid "E440: undo line missing" +msgstr "E440: a linha para desfazer est� faltando" + +#. Only MS VC 4.1 and earlier can do Win32s +msgid "" +"\n" +"MS-Windows 16/32-bit GUI version" +msgstr "" +"\n" +"Vers�o gr�fica para MS-Windows 16/32 bits" + +msgid "" +"\n" +"MS-Windows 64-bit GUI version" +msgstr "" +"\n" +"Vers�o gr�fica para MS-Windows 64 bits" + +msgid "" +"\n" +"MS-Windows 32-bit GUI version" +msgstr "" +"\n" +"Vers�o gr�fica para MS-Windows 32 bits" + +msgid " in Win32s mode" +msgstr " no modo Win32s" + +msgid " with OLE support" +msgstr " com suporte a OLE" + +msgid "" +"\n" +"MS-Windows 64-bit console version" +msgstr "" +"\n" +"Vers�o console para MS-Windows 64 bits" + +msgid "" +"\n" +"MS-Windows 32-bit console version" +msgstr "" +"\n" +"Vers�o console para MS-Windows 32 bits" + +msgid "" +"\n" +"MS-Windows 16-bit version" +msgstr "" +"\n" +"Vers�o para MS-Windows 16 bits" + +msgid "" +"\n" +"32-bit MS-DOS version" +msgstr "" +"\n" +"Vers�o MS-DOS 32 bits" + +msgid "" +"\n" +"16-bit MS-DOS version" +msgstr "" +"\n" +"Vers�o MS-DOS 16 bits" + +msgid "" +"\n" +"MacOS X (unix) version" +msgstr "" +"\n" +"Vers�o MacOS X (unix)" + +msgid "" +"\n" +"MacOS X version" +msgstr "" +"\n" +"Vers�o MacOS X" + +msgid "" +"\n" +"MacOS version" +msgstr "" +"\n" +"Vers�o MacOS" + +msgid "" +"\n" +"RISC OS version" +msgstr "" +"\n" +"Vers�o RISC OS" + +msgid "" +"\n" +"Included patches: " +msgstr "" +"\n" +"Corre��es inclu�das: " + +msgid "Modified by " +msgstr "Modificado por " + +msgid "" +"\n" +"Compiled " +msgstr "" +"\n" +"Compilado " + +msgid "by " +msgstr "por " + +msgid "" +"\n" +"Huge version " +msgstr "" +"\n" +"Vers�o enorme " + +msgid "" +"\n" +"Big version " +msgstr "" +"\n" +"Vers�o grande " + +msgid "" +"\n" +"Normal version " +msgstr "" +"\n" +"Vers�o normal " + +msgid "" +"\n" +"Small version " +msgstr "" +"\n" +"Vers�o pequena " + +msgid "" +"\n" +"Tiny version " +msgstr "" +"\n" +"Vers�o min�scula " + +msgid "without GUI." +msgstr "sem interface gr�fica." + +msgid "with GTK2-GNOME GUI." +msgstr "com interface GTK2-GNOME." + +msgid "with GTK-GNOME GUI." +msgstr "com interface GTK-GNOME." + +msgid "with GTK2 GUI." +msgstr "com interface GTK2." + +msgid "with GTK GUI." +msgstr "com interface GTK." + +msgid "with X11-Motif GUI." +msgstr "com interface X11-Motif." + +msgid "with X11-neXtaw GUI." +msgstr "com interface X11-neXtaw." + +msgid "with X11-Athena GUI." +msgstr "com interface X11-Athena." + +msgid "with Photon GUI." +msgstr "com interface Photon." + +msgid "with GUI." +msgstr "com interface gr�fica." + +msgid "with Carbon GUI." +msgstr "com interface Carbon." + +msgid "with Cocoa GUI." +msgstr "com interface Cocoa." + +msgid "with (classic) GUI." +msgstr "com interface gr�fica (cl�ssica)." + +msgid " Features included (+) or not (-):\n" +msgstr " Recursos inclu�dos (+) ou n�o (-):\n" + +msgid " system vimrc file: \"" +msgstr " arquivo vimrc de sistema: \"" + +msgid " user vimrc file: \"" +msgstr " arquivo vimrc do usu�rio: \"" + +msgid " 2nd user vimrc file: \"" +msgstr " 2� arquivo vimrc do usu�rio: \"" + +msgid " 3rd user vimrc file: \"" +msgstr " 3� arquivo vimrc do usu�rio: \"" + +msgid " user exrc file: \"" +msgstr " arquivo exrc do usu�rio: \"" + +msgid " 2nd user exrc file: \"" +msgstr " 2� arquivo exrc do usu�rio: \"" + +msgid " system gvimrc file: \"" +msgstr " arquivo gvimrc de sistema: \"" + +msgid " user gvimrc file: \"" +msgstr " arquivo gvimrc do usu�rio: \"" + +msgid "2nd user gvimrc file: \"" +msgstr "2� arquivo gvimrc do usu�rio: \"" + +msgid "3rd user gvimrc file: \"" +msgstr "3� arquivo gvimrc do usu�rio: \"" + +msgid " system menu file: \"" +msgstr " arquivo de menu do sistema: \"" + +msgid " fall-back for $VIM: \"" +msgstr " padr�o para $VIM: \"" + +msgid " f-b for $VIMRUNTIME: \"" +msgstr " padr�o para $VIMRUNTIME: \"" + +msgid "Compilation: " +msgstr "Compila��o: " + +msgid "Compiler: " +msgstr "Compilador: " + +msgid "Linking: " +msgstr "Vincula��o: " + +msgid " DEBUG BUILD" +msgstr " VERS�O DE DEPURA��O" + +msgid "VIM - Vi IMproved" +msgstr "VIM - VI Melhorado" + +msgid "version " +msgstr "vers�o " + +msgid "by Bram Moolenaar et al." +msgstr "por Bram Moolenaar et al." + +msgid "Vim is open source and freely distributable" +msgstr "Vim tem c�digo aberto e � livremente distribu�vel" + +msgid "Help poor children in Uganda!" +msgstr "Ajude crian�as pobres em Uganda!" + +msgid "type :help iccf<Enter> for information " +msgstr "digite :help iccf<Enter> para informa��es " + +msgid "type :q<Enter> to exit " +msgstr "digite :q<Enter> para sair " + +msgid "type :help<Enter> or <F1> for on-line help" +msgstr "digite :help<Enter> ou <F1> para ajuda on-line " + +msgid "type :help version7<Enter> for version info" +msgstr "digite :help version7<Enter> para info da vers�o" + +msgid "Running in Vi compatible mode" +msgstr "Executando no modo compat�vel com Vi" + +msgid "type :set nocp<Enter> for Vim defaults" +msgstr "digite :set nocp<Enter> para restaurar padr�es do Vim" + +msgid "type :help cp-default<Enter> for info on this" +msgstr "digite :help cp-default<Enter> para informa��es sobre isso" + +msgid "menu Help->Orphans for information " +msgstr " menu Ajuda->�rf�os para informa��es " + +msgid "Running modeless, typed text is inserted" +msgstr "Execu��o n�o modal; todo texto digitado � inserido" + +msgid "menu Edit->Global Settings->Toggle Insert Mode " +msgstr " menu Editar->Op��es globais->Alternar modo de inser��o " + +msgid " for two modes " +msgstr " para voltar � execu��o modal " + +msgid "menu Edit->Global Settings->Toggle Vi Compatible" +msgstr " menu Editar->Op��es globais->Alternar compat�vel com Vi " + +msgid " for Vim defaults " +msgstr " para restaurar padr�es do Vim" + +msgid "Sponsor Vim development!" +msgstr "Patrocine o desenvolvimento do Vim!" + +msgid "Become a registered Vim user!" +msgstr "Torne-se um usu�rio registrado do Vim!" + +msgid "type :help sponsor<Enter> for information " +msgstr "digite :help sponsor<Enter> para informa��es " + +msgid "type :help register<Enter> for information " +msgstr "digite :help register<Enter> para informa��es " + +msgid "menu Help->Sponsor/Register for information " +msgstr "menu Ajuda->Doar/Registrar para informa��es" + +msgid "WARNING: Windows 95/98/ME detected" +msgstr "AVISO: Windows 95/98/ME detectado" + +msgid "type :help windows95<Enter> for info on this" +msgstr "digite :help windows95<Enter> para informa��es sobre isso" + +msgid "Already only one window" +msgstr "J� h� apenas uma janela" + +msgid "E441: There is no preview window" +msgstr "E441: N�o h� janela de visualiza��o" + +msgid "E442: Can't split topleft and botright at the same time" +msgstr "E442: Imposs�vel dividir nos cantos sup.esquerdo e inf.direito ao mesmo tempo" + +msgid "E443: Cannot rotate when another window is split" +msgstr "E443: Imposs�vel rodar quando outra janela est� dividida" + +msgid "E444: Cannot close last window" +msgstr "E444: N�o posso fechar a �ltima janela" + +msgid "E445: Other window contains changes" +msgstr "E445: Outra janela cont�m altera��es" + +msgid "E446: No file name under cursor" +msgstr "E446: Nenhum nome de arquivo sob o cursor" + +#, c-format +msgid "E447: Can't find file \"%s\" in path" +msgstr "E447: Arquivo \"%s\" n�o encontrado nos caminhos de busca" + +#, c-format +msgid "E370: Could not load library %s" +msgstr "E370: N�o foi poss�vel carregar a biblioteca %s" + +msgid "Sorry, this command is disabled: the Perl library could not be loaded." +msgstr "Desculpe, este comando est� desativado: a biblioteca do Perl n�o p�de ser carregada." + +msgid "E299: Perl evaluation forbidden in sandbox without the Safe module" +msgstr "E299: Avalia��o de express�es Perl na caixa de areia proibida sem o m�dulo Safe" + +msgid "Edit with &multiple Vims" +msgstr "Editar em &m�ltiplos Vims" + +msgid "Edit with single &Vim" +msgstr "Editar com �nico &Vim" + +msgid "Diff with Vim" +msgstr "Comparar (diff) com Vim" + +msgid "Edit with &Vim" +msgstr "Editar com &Vim" + +#. Now concatenate +msgid "Edit with existing Vim - " +msgstr "Editar com Vim existente - " + +msgid "Edits the selected file(s) with Vim" +msgstr "Edita o(s) arquivo(s) selecionado(s) com o Vim" + +msgid "Error creating process: Check if gvim is in your path!" +msgstr "Erro ao criar processo: verifique se o gvim est� no caminho de busca!" + +msgid "gvimext.dll error" +msgstr "erro da gvimext.dll" + +msgid "Path length too long!" +msgstr "Caminho comprido demais!" + +msgid "--No lines in buffer--" +msgstr "--Sem linhas no buffer--" + +#. +#. * The error messages that can be shared are included here. +#. * Excluded are errors that are only used once and debugging messages. +#. +msgid "E470: Command aborted" +msgstr "E470: Comando cancelado" + +msgid "E471: Argument required" +msgstr "E471: Argumento requerido" + +msgid "E10: \\ should be followed by /, ? or &" +msgstr "E10: \\ deve ser seguido de /, ? ou &" + +msgid "E11: Invalid in command-line window; <CR> executes, CTRL-C quits" +msgstr "E11: Inv�lido na janela da linha de comando; <CR> executa, CTRL-C sai" + +msgid "E12: Command not allowed from exrc/vimrc in current dir or tag search" +msgstr "E12: Comando n�o permitido no exrc/vimrc do diret�rio atual ou num arquivo de marcadores" + +msgid "E171: Missing :endif" +msgstr "E171: :endif faltando" + +msgid "E600: Missing :endtry" +msgstr "E600: :endtry faltando" + +msgid "E170: Missing :endwhile" +msgstr "E170: :endwhile faltando" + +msgid "E170: Missing :endfor" +msgstr "E170: :endfor faltando" + +msgid "E588: :endwhile without :while" +msgstr "E588: :endwhile sem :while" + +msgid "E588: :endfor without :for" +msgstr "E588: :endfor sem :for" + +msgid "E13: File exists (add ! to override)" +msgstr "E13: Arquivo existe (adicione ! para for�ar)" + +msgid "E472: Command failed" +msgstr "E472: Comando falhou" + +#, c-format +msgid "E234: Unknown fontset: %s" +msgstr "E234: Conjunto de fontes desconhecido: %s" + +#, c-format +msgid "E235: Unknown font: %s" +msgstr "E235: Fonte desconhecida: %s" + +#, c-format +msgid "E236: Font \"%s\" is not fixed-width" +msgstr "E236: Fonte \"%s\" n�o � de largura fixa" + +msgid "E473: Internal error" +msgstr "E473: Erro interno" + +msgid "Interrupted" +msgstr "Interrompido" + +msgid "E14: Invalid address" +msgstr "E14: Endere�o inv�lido" + +msgid "E474: Invalid argument" +msgstr "E474: Argumento inv�lido" + +#, c-format +msgid "E475: Invalid argument: %s" +msgstr "E475: Argumento inv�lido: %s" + +#, c-format +msgid "E15: Invalid expression: %s" +msgstr "E15: Express�o inv�lida: %s" + +msgid "E16: Invalid range" +msgstr "E16: Intervalo inv�lido" + +msgid "E476: Invalid command" +msgstr "E476: Comando inv�lido" + +#, c-format +msgid "E17: \"%s\" is a directory" +msgstr "E17: \"%s\" � um diret�rio" + +#, c-format +msgid "E364: Library call failed for \"%s()\"" +msgstr "E364: Chamada � biblioteca falhou para \"%s()\"" + +#, c-format +msgid "E448: Could not load library function %s" +msgstr "E448: N�o foi poss�vel carregar a fun��o %s de biblioteca" + +msgid "E19: Mark has invalid line number" +msgstr "E19: Marca tem n�mero de linha inv�lido" + +msgid "E20: Mark not set" +msgstr "E20: Marca n�o definida" + +msgid "E21: Cannot make changes, 'modifiable' is off" +msgstr "E21: Imposs�vel fazer mudan�as, 'modifiable' est� desativado" + +msgid "E22: Scripts nested too deep" +msgstr "E22: Scripts excessivamente aninhados" + +msgid "E23: No alternate file" +msgstr "E23: Nenhum arquivo alternativo" + +msgid "E24: No such abbreviation" +msgstr "E24: Abrevia��o inexistente" + +msgid "E477: No ! allowed" +msgstr "E477: '!' n�o permitido" + +msgid "E25: GUI cannot be used: Not enabled at compile time" +msgstr "E25: Interface gr�fica n�o pode ser usada, n�o foi ativada na compila��o" + +msgid "E26: Hebrew cannot be used: Not enabled at compile time\n" +msgstr "E26: Hebraico n�o pode ser usado, n�o foi ativado na compila��o\n" + +msgid "E27: Farsi cannot be used: Not enabled at compile time\n" +msgstr "E27: Farsi (persa) n�o pode ser usado, n�o foi ativado na compila��o\n" + +msgid "E800: Arabic cannot be used: Not enabled at compile time\n" +msgstr "E800: �rabe n�o pode ser usado, n�o foi ativado na compila��o\n" + +#, c-format +msgid "E28: No such highlight group name: %s" +msgstr "E28: N�o existe grupo de destaque com tal nome: %s" + +msgid "E29: No inserted text yet" +msgstr "E29: Nenhum texto foi inserido ainda" + +msgid "E30: No previous command line" +msgstr "E30: Nenhuma linha de comando anterior" + +msgid "E31: No such mapping" +msgstr "E31: Associa��o inexistente" + +msgid "E479: No match" +msgstr "E479: Nenhuma correspond�ncia" + +#, c-format +msgid "E480: No match: %s" +msgstr "E480: Nenhuma correspond�ncia: %s" + +msgid "E32: No file name" +msgstr "E32: Nenhum nome de arquivo" + +msgid "E33: No previous substitute regular expression" +msgstr "E33: Nenhuma express�o regular de substitui��o anterior" + +msgid "E34: No previous command" +msgstr "E34: Nenhum comando anterior" + +msgid "E35: No previous regular expression" +msgstr "E35: Nenhuma express�o regular anterior" + +msgid "E481: No range allowed" +msgstr "E481: Intervalos n�o s�o permitidos" + +msgid "E36: Not enough room" +msgstr "E36: N�o h� espa�o suficiente" + +#, c-format +msgid "E247: no registered server named \"%s\"" +msgstr "E247: nenhum servidor registrado com o nome \"%s\"" + +#, c-format +msgid "E482: Can't create file %s" +msgstr "E482: Imposs�vel criar arquivo %s" + +msgid "E483: Can't get temp file name" +msgstr "E483: Imposs�vel obter nome do arquivo tempor�rio" + +#, c-format +msgid "E484: Can't open file %s" +msgstr "E484: Imposs�vel abrir arquivo %s" + +#, c-format +msgid "E485: Can't read file %s" +msgstr "E485: Imposs�vel ler arquivo %s" + +msgid "E37: No write since last change (add ! to override)" +msgstr "E37: Altera��es n�o foram gravadas (adicione ! para for�ar)" + +msgid "E38: Null argument" +msgstr "E38: Argumento nulo" + +msgid "E39: Number expected" +msgstr "E39: N�mero era esperado" + +#, c-format +msgid "E40: Can't open errorfile %s" +msgstr "E40: Imposs�vel abrir o arquivo de erros %s" + +msgid "E233: cannot open display" +msgstr "E233: imposs�vel abrir display" + +msgid "E41: Out of memory!" +msgstr "E41: Mem�ria esgotada!" + +msgid "Pattern not found" +msgstr "Padr�o n�o encontrado" + +#, c-format +msgid "E486: Pattern not found: %s" +msgstr "E486: Padr�o n�o encontrado: %s" + +msgid "E487: Argument must be positive" +msgstr "E487: Argumento deve ser positivo" + +msgid "E459: Cannot go back to previous directory" +msgstr "E459: Imposs�vel voltar ao diret�rio anterior" + +msgid "E42: No Errors" +msgstr "E42: Nenhum erro" + +msgid "E776: No location list" +msgstr "E776: Nenhuma lista de locais" + +msgid "E43: Damaged match string" +msgstr "E43: String de busca danificada" + +msgid "E44: Corrupted regexp program" +msgstr "E44: Aut�mato de express�o regular corrompido" + +msgid "E45: 'readonly' option is set (add ! to override)" +msgstr "E45: op��o 'readonly' est� definida (adicione ! para for�ar)" + +#, c-format +msgid "E46: Cannot change read-only variable \"%s\"" +msgstr "E46: Imposs�vel alterar vari�vel somente-leitura \"%s\"" + +#, c-format +msgid "E794: Cannot set variable in the sandbox: \"%s\"" +msgstr "E794: N�o � poss�vel definir a vari�vel na caixa de areia: \"%s\"" + +msgid "E47: Error while reading errorfile" +msgstr "E47: Erro ao ler arquivo de erros" + +msgid "E48: Not allowed in sandbox" +msgstr "E48: Isso n�o � permitido na caixa de areia" + +msgid "E523: Not allowed here" +msgstr "E523: Isso n�o � permitido aqui" + +msgid "E359: Screen mode setting not supported" +msgstr "E359: Configura��o do modo de tela n�o � suportada" + +msgid "E49: Invalid scroll size" +msgstr "E49: Tamanho de rolagem inv�lido" + +msgid "E91: 'shell' option is empty" +msgstr "E91: Op��o 'shell' est� vazia" + +msgid "E255: Couldn't read in sign data!" +msgstr "E255: N�o foi poss�vel ler os dados dos s�mbolos!" + +msgid "E72: Close error on swap file" +msgstr "E72: Erro ao fechar o arquivo de troca" + +msgid "E73: tag stack empty" +msgstr "E73: pilha de marcadores vazia" + +msgid "E74: Command too complex" +msgstr "E74: Comando complexo demais" + +msgid "E75: Name too long" +msgstr "E75: Nome longo demais" + +msgid "E76: Too many [" +msgstr "E76: Muitos [" + +msgid "E77: Too many file names" +msgstr "E77: Muitos nomes de arquivos" + +msgid "E488: Trailing characters" +msgstr "E488: Caracteres em excesso no final da linha" + +msgid "E78: Unknown mark" +msgstr "E78: Marca desconhecida" + +msgid "E79: Cannot expand wildcards" +msgstr "E79: Imposs�vel expandir os caracteres-curinga" + +msgid "E591: 'winheight' cannot be smaller than 'winminheight'" +msgstr "E591: 'winheight' n�o pode ser menor que 'winminheight'" + +msgid "E592: 'winwidth' cannot be smaller than 'winminwidth'" +msgstr "E592: 'winwidth' n�o pode ser menor que 'winminwidth'" + +msgid "E80: Error while writing" +msgstr "E80: Erro na escrita" + +msgid "Zero count" +msgstr "Quantificador nulo" + +msgid "E81: Using <SID> not in a script context" +msgstr "E81: <SID> usado fora de um script" + +msgid "E449: Invalid expression received" +msgstr "E449: Express�o inv�lida recebida" + +msgid "E463: Region is guarded, cannot modify" +msgstr "E463: A regi�o � protegida; imposs�vel modific�-la" + +msgid "E744: NetBeans does not allow changes in read-only files" +msgstr "E744: O NetBeans n�o permite altera��es em arquivos somente-leitura" + +#, c-format +msgid "E685: Internal error: %s" +msgstr "E685: Erro interno: %s" + +msgid "E363: pattern uses more memory than 'maxmempattern'" +msgstr "E363: padr�o usa mais mem�ria que 'maxmempattern'" + +msgid "E749: empty buffer" +msgstr "E749: buffer vazio" + +msgid "E682: Invalid search pattern or delimiter" +msgstr "E682: Padr�o de busca ou delimitador inv�lido" + +msgid "E139: File is loaded in another buffer" +msgstr "E139: O arquivo est� carregado em outro buffer" + +#, c-format +msgid "E764: Option '%s' is not set" +msgstr "E764: Op��o '%s' n�o est� definida" + +msgid "search hit TOP, continuing at BOTTOM" +msgstr "busca atingiu TOPO; continuando do FIM" + +msgid "search hit BOTTOM, continuing at TOP" +msgstr "busca atingiu FIM; continuando do TOPO" +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/testdir/test65.in Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,78 @@ +Test for floating point. + +STARTTEST +:so small.vim +:if !has("float") +: e! test.ok +: wq! test.out +:endif +:" +:$put =printf('%f', 123.456) +:$put =printf('%e', 123.456) +:$put =printf('%g', 123.456) +:" check we don't crash on division by zero +:echo 1.0 / 0.0 +:$put ='+=' +:let v = 1.234 +:let v += 6.543 +:$put =printf('%g', v) +:let v = 1.234 +:let v += 5 +:$put =printf('%g', v) +:let a = 5 +:let a += 3.333 +:$put =string(a) +:$put ='==' +:let v = 1.234 +:$put =v == 1.234 +:$put =v == 1.2341 +:$put ='add-subtract' +:$put =printf('%g', 4 + 1.234) +:$put =printf('%g', 1.234 - 8) +:$put ='mult-div' +:$put =printf('%g', 4 * 1.234) +:$put =printf('%g', 4.0 / 1234) +:$put ='dict' +:$put =string({'x': 1.234, 'y': -2.0e20}) +:$put ='list' +:$put =string([-123.4, 2.0e-20]) +:$put ='abs' +:$put =printf('%d', abs(1456)) +:$put =printf('%d', abs(-4)) +:$put =printf('%d', abs([1, 2, 3])) +:$put =printf('%g', abs(14.56)) +:$put =printf('%g', abs(-54.32)) +:$put ='ceil' +:$put =printf('%g', ceil(1.456)) +:$put =printf('%g', ceil(-5.456)) +:$put =printf('%g', ceil(-4.000)) +:$put ='floor' +:$put =printf('%g', floor(1.856)) +:$put =printf('%g', floor(-5.456)) +:$put =printf('%g', floor(4.0)) +:$put ='log10' +:$put =printf('%g', log10(1000)) +:$put =printf('%g', log10(0.01000)) +:$put ='pow' +:$put =printf('%g', pow(3, 3.0)) +:$put =printf('%g', pow(2, 16)) +:$put ='round' +:$put =printf('%g', round(0.456)) +:$put =printf('%g', round(4.5)) +:$put =printf('%g', round(-4.50)) +:$put ='sqrt' +:$put =printf('%g', sqrt(100)) +:echo sqrt(-4.01) +:$put ='str2float' +:$put =printf('%g', str2float('1e40')) +:$put ='trunc' +:$put =printf('%g', trunc(1.456)) +:$put =printf('%g', trunc(-5.456)) +:$put =printf('%g', trunc(4.000)) +:$put ='float2nr' +:$put =float2nr(123.456) +:$put =float2nr(-123.456) +:/^Results/,$wq! test.out +ENDTEST + +Results of test65:
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/testdir/test65.ok Wed Aug 13 17:36:09 2008 +0900 @@ -0,0 +1,56 @@ +Results of test65: +123.456000 +1.234560e+02 +123.456 ++= +7.777 +6.234 +8.333 +== +1 +0 +add-subtract +5.234 +-6.766 +mult-div +4.936 +0.003241 +dict +{'x': 1.234, 'y': -2.0e20} +list +[-123.4, 2.0e-20] +abs +1456 +4 +-1 +14.56 +54.32 +ceil +2.0 +-5.0 +-4.0 +floor +1.0 +-6.0 +4.0 +log10 +3.0 +-2.0 +pow +27.0 +65536.0 +round +0.0 +5.0 +-5.0 +sqrt +10.0 +str2float +1.0e40 +trunc +1.0 +-5.0 +4.0 +float2nr +123 +-123