summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--runtime/doc/eval.txt4
-rw-r--r--runtime/doc/gui_x11.txt66
-rw-r--r--runtime/doc/index.txt3
-rw-r--r--runtime/doc/options.txt24
-rw-r--r--runtime/doc/quickref.txt4
-rw-r--r--runtime/doc/tags12
-rw-r--r--runtime/doc/tagsrch.txt38
-rw-r--r--runtime/doc/todo.txt51
-rw-r--r--runtime/doc/version8.txt22
-rw-r--r--runtime/doc/vim.man2
-rw-r--r--runtime/doc/windows.txt8
-rw-r--r--runtime/filetype.vim13
-rw-r--r--runtime/ftplugin/rmd.vim16
-rw-r--r--runtime/ftplugin/scala.vim37
-rw-r--r--runtime/indent/fortran.vim10
-rw-r--r--runtime/indent/javascript.vim96
-rw-r--r--runtime/indent/rnoweb.vim14
-rw-r--r--runtime/indent/scala.vim609
-rw-r--r--runtime/keymap/pinyin.vim2
-rw-r--r--runtime/optwin.vim6
-rw-r--r--runtime/pack/dist/opt/matchit/plugin/matchit.vim23
-rw-r--r--runtime/syntax/fortran.vim34
-rw-r--r--runtime/syntax/muttrc.vim358
-rw-r--r--runtime/syntax/python.vim31
-rw-r--r--runtime/syntax/r.vim6
-rw-r--r--runtime/syntax/rhelp.vim3
-rw-r--r--runtime/syntax/rmd.vim4
-rw-r--r--runtime/syntax/rrst.vim4
-rw-r--r--runtime/syntax/scala.vim231
-rw-r--r--runtime/syntax/sh.vim48
-rw-r--r--runtime/syntax/vim.vim44
-rw-r--r--runtime/tutor/tutor.es2
-rw-r--r--runtime/tutor/tutor.es.utf-82
-rw-r--r--src/po/fi.po3589
34 files changed, 3411 insertions, 2005 deletions
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 69fa6e89b..1da05fbd6 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt* For Vim version 7.4. Last change: 2016 Aug 18
+*eval.txt* For Vim version 7.4. Last change: 2016 Aug 21
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -7305,7 +7305,7 @@ strwidth({expr}) *strwidth()*
Ambiguous, this function's return value depends on 'ambiwidth'.
Also see |strlen()|, |strdisplaywidth()| and |strchars()|.
-submatch({nr}[, {list}]) *submatch()*
+submatch({nr}[, {list}]) *submatch()* *E935*
Only for an expression in a |:substitute| command or
substitute() function.
Returns the {nr}'th submatch of the matched text. When {nr}
diff --git a/runtime/doc/gui_x11.txt b/runtime/doc/gui_x11.txt
index c65779061..9a50f2671 100644
--- a/runtime/doc/gui_x11.txt
+++ b/runtime/doc/gui_x11.txt
@@ -1,4 +1,4 @@
-*gui_x11.txt* For Vim version 7.4. Last change: 2016 Apr 08
+*gui_x11.txt* For Vim version 7.4. Last change: 2016 Aug 21
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -421,6 +421,9 @@ These are the different looks:
GNOME is compiled with if it was found by configure and the
--enable-gnome-check argument was used.
+Note: Avoid use of --enable-gnome-check with GTK+ 3 GUI build. The
+functionality mentioned above is consolidated in GTK+ 3.
+
GNOME session support *gui-gnome-session* *gnome-session*
@@ -457,20 +460,37 @@ continues on Yzis: https://github.com/chrizel/Yzis.
==============================================================================
8. Compiling *gui-x11-compiling*
-If using X11, Vim's Makefile will by default first try to find the necessary
-GTK+ files on your system. If the GTK+ files cannot be found, then the Motif
-files will be searched for. Finally, if this fails, the Athena files will be
-searched for. If all three fail, the GUI will be disabled.
+If using X11, Vim's configure will by default first try to find the necessary
+GTK+ files on your system. When both GTK+ 2 and GTK+ 3 are available, GTK+ 2
+will be chosen unless --enable-gui=gtk3 is passed explicitly to configure.
+
+If the GTK+ files cannot be found, then the Motif files will be searched for.
+Finally, if this fails, the Athena files will be searched for. If all three
+fail, the GUI will be disabled.
+
+For GTK+, Vim's configuration process uses pkg-config(1) to check if the
+GTK+ required for a specified build is properly installed and usable.
+Accordingly, it is a good idea to make sure before running configure that
+your system has a working pkg-config together with the .pc file of the
+required GTK+. For that, say, run the following on the command line to see if
+your pkg-config works with your GTK+ 2: >
+
+ $ pkgconfig --modversion gtk+-2.0
-For GTK+, Vim's configuration process requires that GTK+ be properly
-installed. That is, the shell script 'gtk-config' must be in your PATH, and
-you can already successful compile, build, and execute a GTK+ program. The
-reason for this is that the compiler flags (CFLAGS) and link flags (LDFLAGS)
-are obtained through the 'gtk-config' shell script.
+Replace gtk+-2.0 with gtk+-3.0 for GTK+ 3. If you get the correct version
+number of your GTK+, you can proceed; if not, you probably need to do some
+system administration chores to set up pkg-config and GTK+ correctly.
-If you want to build with GTK+ 2 support pass the --enable-gtk2-check argument
-to ./configure. Optionally, support for GNOME 2 will be compiled if the
---enable-gnome-check option is also given.
+The GTK+ 2 GUI is built by default. Therefore, you usually don't need to pass
+any options such as --enable-gui=gtk2 to configure and build that.
+
+Optionally, the GTK+ 2 GUI can consolidate the GNOME 2 support. This support
+is enabled by passing --enable-gnome-check to configure.
+
+If you want to build the GTK+ 3 GUI, you have to pass --enable-gui=gtk3
+explicitly to configure, and avoid passing --enable-gnome-check to that, as
+the functionality of the GNOME 2 support has already been consolidated in
+GTK+ 3.
Otherwise, if you are using Motif or Athena, when you have the Motif or Athena
files in a directory where configure doesn't look, edit the Makefile to enter
@@ -478,18 +498,14 @@ the names of the directories. Search for "GUI_INC_LOC" for an example to set
the Motif directories, "CONF_OPT_X" for Athena.
*gui-x11-gtk*
-At the time of this writing, GTK+ version 1.0.6 and 1.2 are outdated. It
-is suggested that you use GTK 2. The GTK 1 support will most likely be
-dropped soon.
-
-For the GTK+ 2 GUI, using the latest release of the GTK+ 2.0 or GTK+ 2.2
-series is recommended.
-
-Lastly, although GTK+ has supposedly been ported to the Win32 platform, this
-has not been tested with Vim and is also unsupported. Also, it's unlikely to
-even compile since GTK+ GUI uses parts of the generic X11 code. This might
-change in distant future; particularly because getting rid of the X11 centric
-code parts is also required for GTK+ framebuffer support.
+Currently, Vim supports both GTK+ 2 and GTK+ 3.
+
+The GTK+ 2 GUI requires GTK+ 2.2 or later.
+
+Although the GTK+ 3 GUI is written in such a way that the source code can be
+compiled against all versions of the 3.x series, we recommend GTK+ 3.10 or
+later because of its substantial implementation changes in redraw done at
+that version.
*gui-x11-motif*
For Motif, you need at least Motif version 1.2 and/or X11R5. Motif 2.0 and
diff --git a/runtime/doc/index.txt b/runtime/doc/index.txt
index 5ee7351be..6c9f45683 100644
--- a/runtime/doc/index.txt
+++ b/runtime/doc/index.txt
@@ -1,4 +1,4 @@
-*index.txt* For Vim version 7.4. Last change: 2016 Aug 16
+*index.txt* For Vim version 7.4. Last change: 2016 Aug 24
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1239,6 +1239,7 @@ tag command action ~
|:file| :f[ile] show or set the current file name
|:files| :files list all files in the buffer list
|:filetype| :filet[ype] switch file type detection on/off
+|:filter| :filt[er] filter output of following command
|:find| :fin[d] find file in 'path' and edit it
|:finally| :fina[lly] part of a :try command
|:finish| :fini[sh] quit sourcing a Vim script
diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index c531168e3..67b04313b 100644
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1,4 +1,4 @@
-*options.txt* For Vim version 7.4. Last change: 2016 Aug 14
+*options.txt* For Vim version 7.4. Last change: 2016 Aug 26
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -4319,6 +4319,8 @@ A jump table for the options with a short description can be found at |Q_op|.
original position when no match is found and when pressing <Esc>. You
still need to finish the search command with <Enter> to move the
cursor to the match.
+ You can use the CTRL-N and CTRL-P keys to move to the next and
+ previous match. |c_CTRL-N| |c_CTRL-P|
When compiled with the |+reltime| feature Vim only searches for about
half a second. With a complicated pattern and/or a lot of text the
match may not be found. This is to avoid that Vim hangs while you
@@ -4632,7 +4634,7 @@ A jump table for the options with a short description can be found at |Q_op|.
be able to execute Normal mode commands.
This is the opposite of the 'keymap' option, where characters are
mapped in Insert mode.
- Also consider setting 'langnoremap' to avoid 'langmap' applies to
+ Also consider resetting 'langremap' to avoid 'langmap' applies to
characters resulting from a mapping.
This option cannot be set from a |modeline| or in the |sandbox|, for
security reasons.
@@ -4695,10 +4697,20 @@ A jump table for the options with a short description can be found at |Q_op|.
{not in Vi}
{only available when compiled with the |+langmap|
feature}
- When on, setting 'langmap' does not apply to characters resulting from
+ This is just like 'langremap' but with the value inverted. It only
+ exists for backwards compatibility. When setting 'langremap' then
+ 'langnoremap' is set to the inverted value, and the other way around.
+
+ *'langremap'* *'lrm'* *'nolangremap'* *'nolrm'*
+'langremap' 'lrm' boolean (default on, reset in |defaults.vim|)
+ global
+ {not in Vi}
+ {only available when compiled with the |+langmap|
+ feature}
+ When off, setting 'langmap' does not apply to characters resulting from
a mapping. This basically means, if you noticed that setting
- 'langmap' disables some of your mappings, try setting this option.
- This option defaults to off for backwards compatibility. Set it on if
+ 'langmap' disables some of your mappings, try resetting this option.
+ This option defaults to on for backwards compatibility. Set it off if
that works for you to avoid mappings to break.
*'laststatus'* *'ls'*
@@ -6245,6 +6257,8 @@ A jump table for the options with a short description can be found at |Q_op|.
"inclusive" means that the last character of the selection is included
in an operation. For example, when "x" is used to delete the
selection.
+ When "old" is used and 'virtualedit' allows the cursor to move past
+ the end of line the line break still isn't included.
Note that when "exclusive" is used and selecting from the end
backwards, you cannot include the last character of a line, when
starting in Normal mode and 'virtualedit' empty.
diff --git a/runtime/doc/quickref.txt b/runtime/doc/quickref.txt
index c105d8229..1e35b808f 100644
--- a/runtime/doc/quickref.txt
+++ b/runtime/doc/quickref.txt
@@ -1,4 +1,4 @@
-*quickref.txt* For Vim version 7.4. Last change: 2016 Aug 12
+*quickref.txt* For Vim version 7.4. Last change: 2016 Aug 21
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -767,7 +767,7 @@ Short explanation of each option: *option-list*
'keywordprg' 'kp' program to use for the "K" command
'langmap' 'lmap' alphabetic characters for other language mode
'langmenu' 'lm' language to be used for the menus
-'langnoremap' 'lnr' do not apply 'langmap' to mapped characters
+'langremap' 'lrm' do apply 'langmap' to mapped characters
'laststatus' 'ls' tells when last window has status lines
'lazyredraw' 'lz' don't redraw while executing macros
'linebreak' 'lbr' wrap long lines at a blank
diff --git a/runtime/doc/tags b/runtime/doc/tags
index b000d32c1..791df4164 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -400,6 +400,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
'langmap' options.txt /*'langmap'*
'langmenu' options.txt /*'langmenu'*
'langnoremap' options.txt /*'langnoremap'*
+'langremap' options.txt /*'langremap'*
'laststatus' options.txt /*'laststatus'*
'lazyredraw' options.txt /*'lazyredraw'*
'lbr' options.txt /*'lbr'*
@@ -416,6 +417,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
'lnr' options.txt /*'lnr'*
'loadplugins' options.txt /*'loadplugins'*
'lpl' options.txt /*'lpl'*
+'lrm' options.txt /*'lrm'*
'ls' options.txt /*'ls'*
'lsp' options.txt /*'lsp'*
'luadll' options.txt /*'luadll'*
@@ -586,6 +588,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
'nojoinspaces' options.txt /*'nojoinspaces'*
'nojs' options.txt /*'nojs'*
'nolangnoremap' options.txt /*'nolangnoremap'*
+'nolangremap' options.txt /*'nolangremap'*
'nolazyredraw' options.txt /*'nolazyredraw'*
'nolbr' options.txt /*'nolbr'*
'nolinebreak' options.txt /*'nolinebreak'*
@@ -594,6 +597,7 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
'nolnr' options.txt /*'nolnr'*
'noloadplugins' options.txt /*'noloadplugins'*
'nolpl' options.txt /*'nolpl'*
+'nolrm' options.txt /*'nolrm'*
'nolz' options.txt /*'nolz'*
'noma' options.txt /*'noma'*
'nomacatsui' options.txt /*'nomacatsui'*
@@ -1593,6 +1597,9 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
/\{- pattern.txt /*\/\\{-*
/\~ pattern.txt /*\/\\~*
/^ pattern.txt /*\/^*
+/_CTRL-L cmdline.txt /*\/_CTRL-L*
+/_CTRL-N cmdline.txt /*\/_CTRL-N*
+/_CTRL-P cmdline.txt /*\/_CTRL-P*
/atom pattern.txt /*\/atom*
/bar pattern.txt /*\/bar*
/branch pattern.txt /*\/branch*
@@ -2267,6 +2274,8 @@ $VIM_POSIX vi_diff.txt /*$VIM_POSIX*
:filetype-overview filetype.txt /*:filetype-overview*
:filetype-plugin-off filetype.txt /*:filetype-plugin-off*
:filetype-plugin-on filetype.txt /*:filetype-plugin-on*
+:filt various.txt /*:filt*
+:filter various.txt /*:filter*
:fin editing.txt /*:fin*
:fina eval.txt /*:fina*
:finally eval.txt /*:finally*
@@ -4475,6 +4484,7 @@ E931 message.txt /*E931*
E932 eval.txt /*E932*
E933 eval.txt /*E933*
E934 sign.txt /*E934*
+E935 eval.txt /*E935*
E94 windows.txt /*E94*
E95 message.txt /*E95*
E96 diff.txt /*E96*
@@ -9217,6 +9227,7 @@ window-size term.txt /*window-size*
window-size-functions usr_41.txt /*window-size-functions*
window-tag windows.txt /*window-tag*
window-variable eval.txt /*window-variable*
+windowid windows.txt /*windowid*
windowid-variable eval.txt /*windowid-variable*
windows windows.txt /*windows*
windows-3.1 os_win32.txt /*windows-3.1*
@@ -9226,6 +9237,7 @@ windows-starting windows.txt /*windows-starting*
windows.txt windows.txt /*windows.txt*
windows95 os_win32.txt /*windows95*
winheight() eval.txt /*winheight()*
+winid windows.txt /*winid*
winline() eval.txt /*winline()*
winnr() eval.txt /*winnr()*
winrestcmd() eval.txt /*winrestcmd()*
diff --git a/runtime/doc/tagsrch.txt b/runtime/doc/tagsrch.txt
index b8ab15367..5163de812 100644
--- a/runtime/doc/tagsrch.txt
+++ b/runtime/doc/tagsrch.txt
@@ -1,4 +1,4 @@
-*tagsrch.txt* For Vim version 7.4. Last change: 2013 Oct 01
+*tagsrch.txt* For Vim version 7.4. Last change: 2016 Aug 20
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -454,9 +454,9 @@ The next file in the list is not used when:
This also depends on whether case is ignored. Case is ignored when:
- 'tagcase' is "followic" and 'ignorecase' is set
- 'tagcase' is "ignore"
-- 'tagcase' is "smart" and and the pattern only contains lower case
+- 'tagcase' is "smart" and the pattern only contains lower case
characters.
-- 'tagcase' is "followscs" and 'smartcase' is set and and the pattern only
+- 'tagcase' is "followscs" and 'smartcase' is set and the pattern only
contains lower case characters.
If case is not ignored, and the tags file only has a match without matching
case, the next tags file is searched for a match with matching case. If no
@@ -833,24 +833,24 @@ CTRL-W d Open a new window, with the cursor on the first
*:search-args*
Common arguments for the commands above:
-[!] When included, find matches in lines that are recognized as comments.
- When excluded, a match is ignored when the line is recognized as a
- comment (according to 'comments'), or the match is in a C comment (after
- "//" or inside /* */). Note that a match may be missed if a line is
- recognized as a comment, but the comment ends halfway the line.
- And if the line is a comment, but it is not recognized (according to
- 'comments') a match may be found in it anyway. Example: >
+[!] When included, find matches in lines that are recognized as comments.
+ When excluded, a match is ignored when the line is recognized as a
+ comment (according to 'comments'), or the match is in a C comment
+ (after "//" or inside /* */). Note that a match may be missed if a
+ line is recognized as a comment, but the comment ends halfway the line.
+ And if the line is a comment, but it is not recognized (according to
+ 'comments') a match may be found in it anyway. Example: >
/* comment
foobar */
-< A match for "foobar" is found, because this line is not recognized as a
- comment (even though syntax highlighting does recognize it).
- Note: Since a macro definition mostly doesn't look like a comment, the
- [!] makes no difference for ":dlist", ":dsearch" and ":djump".
-[/] A pattern can be surrounded by '/'. Without '/' only whole words are
- matched, using the pattern "\<pattern\>". Only after the second '/' a
- next command can be appended with '|'. Example: >
+< A match for "foobar" is found, because this line is not recognized as
+ a comment (even though syntax highlighting does recognize it).
+ Note: Since a macro definition mostly doesn't look like a comment, the
+ [!] makes no difference for ":dlist", ":dsearch" and ":djump".
+[/] A pattern can be surrounded by '/'. Without '/' only whole words are
+ matched, using the pattern "\<pattern\>". Only after the second '/' a
+ next command can be appended with '|'. Example: >
:isearch /string/ | echo "the last one"
-< For a ":djump", ":dsplit", ":dlist" and ":dsearch" command the pattern
- is used as a literal string, not as a search pattern.
+< For a ":djump", ":dsplit", ":dlist" and ":dsearch" command the pattern
+ is used as a literal string, not as a search pattern.
vim:tw=78:ts=8:ft=help:norl:
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index 53e8b7e76..b4e2193cc 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt* For Vim version 7.4. Last change: 2016 Aug 18
+*todo.txt* For Vim version 7.4. Last change: 2016 Aug 26
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -34,7 +34,13 @@ not be repeated below, unless there is extra information.
*known-bugs*
-------------------- Known bugs and current work -----------------------
-Rename 'langnoremap' to 'langremap' and invert the value?
+Make ":filter" work with more commands.
+
+C highlighting: modern C allows /* comment */ #ifdef
+
+Ramel Eshed: system() is much slower than job_start(), why? (Aug 26)
+
+Error in viminfo. (John Chen, 2016 Aug 26, #1010)
+channel:
- Check that raw mode does NL-NUL conversion.
@@ -55,6 +61,8 @@ Later
With xterm could use -S{pty}.
Regexp problems:
+- The new engine does not do the example in change.txt correctly, where the
+ meaning of \1 and \2 is explained. (Harm te Hennepe, #990)
- Since 7.4.704 the old regex engine fails to match [[:print:]] in 0xf6.
(Manuel Ortega, 2016 Apr 24)
Test fails on Mac. Avoid using isalpha(), isalnum(), etc? Depends on
@@ -138,6 +146,8 @@ Invalid behavior with NULL list. (Nikolai Pavlov, #768)
For current Windows build .pdb file is missing. (Gabriele Fava, 2016 May 11)
5)
+Patch to fix compiler warning with gtk3. (Kazunobu Kuriyama, 2016 Aug 24)
+
Problem with whitespace in errorformat. (Gerd Wachsmuth, 2016 May 15, #807)
Undo problem: "g-" doesn't go back, gets stuck. (Björn Linse, 2016 Jul 18)
@@ -157,6 +167,9 @@ Jul 25, #948)
'hlsearch' interferes with a Conceal match. (Rom Grk, 2016 Aug 9)
+Patch to add context information to quickfix/location list. (Yegappan
+Lakshmanan, 2016 Aug 25)
+
MS-Windows: use WS_HIDE instead of SW_SHOWMINNOACTIVE in os_win32.c?
Otherwise task flickers in taskbar.
@@ -165,23 +178,9 @@ Also for ":@.".
Repeating 'opfunc' in a function only works once. (Tarmean, 2016 Jul 15, #925)
-Patch on issue #728 by Christian Brabandt, 2016 Apr 7. Update with test: Apr 8.
-Explanation Apr 12.
-
Second problem in #966: ins_compl_add_tv() uses get_dict_string() multiple
times, overwrites the one buffer. (Nikolay Pavlov, 2016 Aug 5)
-Patch to add 'topbot' to 'belloff' option. (Coot, 2016 Mar 18, #695)
-
-Patch for C syntax HL. (Bradley Garagan, 2016 Apr 17) #763
-
-Patch to make matchit work better, respect 'matchpairs'. (Ken Takata, 2016 Mar
-25)
-
-Patch to fix that on suckless Terminal mousewheel up does not work.
-(Ralph Eastwood, 2013 Nov 25)
-Patch for mouse support on suckless Terminal. #971 Manuel Schiller
-
This does not work: :set cscopequickfix=a-
(Linewi, 2015 Jul 12, #914)
@@ -260,6 +259,9 @@ Problem using ":try" inside ":execute". (ZyX, 2013 Sep 15)
Patch to make tests pass with EBCDIC. (Owen Leibman, 2016 Apr 10)
+Add ":read :command", to insert the output of an Ex command?
+Can already do it with ":$put =execute('command')".
+
When repeating the 'confirm' dialog one needs to press Enter. (ds26gte, 2016
Apr 17) #762
@@ -289,6 +291,14 @@ Also need to run update-desktop-database (Kuriyama Kazunobu, 2015 Nov 4)
Patch to test popupmenu. Fails, possibly due to a bug.
(Christian Brabandt, 2016 Jul 23)
+Patch to introduce 'cmdencoding'. (Ken Takata, Aug 18?)
+Better help Aug 19.
+Problem: applies to too many commands, such as :cbuffer.
+Should there be a different value for :make and :grep?
+ Win32: When running ":make" and 'encoding' differs from the system locale,
+ the output should be converted. Esp. when 'encoding' is "utf-8". (Yongwei
+ Wu) Should we use 'termencoding' for this?
+
Patch to have text objects defined by arbitrary single characters. (Daniel
Thau, 2013 Nov 20, 2014 Jan 29, 2014 Jan 31)
Added tests (James McCoy, 2016 Aug 3). Still needs more work.
@@ -317,9 +327,6 @@ Patch to avoid redrawing tabline when the popup menu is visible.
Patch to add {skip} argument to search(). (Christian Brabandt, 2016 Feb 24)
Update 2016 Jun 10, #861
-Add value "smart" to 'tagcase': ignore case when tag is all lower case.
-Patch from Christian Brabandt, 2016 Mar 30, #712.
-
Patch to be able to use hex numbers with :digraph. (Lcd, 2015 Sep 6)
Update Sep 7. Update by Christian Brabandt, 2015 Sep 8, 2016 Feb 1.
@@ -544,8 +551,6 @@ Should be easy to highlight all matches with 'incsearch'. Idea by Itchyny,
Wrong scrolling when using incsearch. Patch by Christian Brabandt, 2014 Dec 4.
Is this a good solution?
-Patch to add /pattern/ to :oldfiles. Pull #575.
-
Patch: Let rare word highlighting overrule good word highlighting.
(Jakson A. Aquino, 2010 Jul 30, again 2011 Jul 2)
@@ -2217,10 +2222,6 @@ only set after Visual moded is ended.
Also add a variable for the Visual mode. So that this mode and '< '> can be
used to set what "gv" selects. (Ben Schmidt)
-Win32: When running ":make" and 'encoding' differs from the system locale, the
-output should be converted. Esp. when 'encoding' is "utf-8". (Yongwei Wu)
-Should we use 'termencoding' for this?
-
Win32, NTFS: When editing a specific infostream directly and 'backupcopy' is
"auto" should detect this situation and work like 'backupcopy' is "yes". File
name is something like "c:\path\foo.txt:bar", includes a colon. (Alex
diff --git a/runtime/doc/version8.txt b/runtime/doc/version8.txt
index 1be8b831b..1fb092aea 100644
--- a/runtime/doc/version8.txt
+++ b/runtime/doc/version8.txt
@@ -1,4 +1,4 @@
-*version8.txt* For Vim version 8.0. Last change: 2016 Aug 18
+*version8.txt* For Vim version 8.0. Last change: 2016 Aug 26
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -141,8 +141,10 @@ This adds the 'renderoptions' option to allow for switching on DirectX
GTK+ 3 support ~
-GTK+ 2 is getting old, GTK+ 3 is here. Support has been added and it already
-works quite well, mostly just like GTK+ 2.
+The GTK+ 3 GUI works just like GTK+ 2 except for hardly noticeable technical
+differences between them. Configure still chooses GTK+ 2 if both 2 and 3 are
+available. See src/Makefile for how to use GTK+ 3 instead. See
+|gui-x11-compiling| for other details.
Vim script enhancements *new-vim-script-8*
@@ -165,15 +167,6 @@ Many items were added so support |new-style-testing|.
Various new items *new-items-8*
-----------------
-Normal mode commands: ~
-
-|g+| g+ go to newer text state N times
-|g,| g, go to N newer position in change list
-|g-| g- go to older text state N times
-|g;| g; go to N older position in change list
-|g_| g_ cursor to the last CHAR N - 1 lines lower
-
-
Visual mode commands: ~
|v_CTRL-A| CTRL-A add N to number in highlighted text
@@ -194,7 +187,7 @@ Options: ~
'breakindentopt' settings for 'breakindent'.
'emoji' emoji characters are considered full width
'fixendofline' make sure last line in file has <EOL>
-'langnoremap' do not apply 'langmap' to mapped characters
+'langremap' do apply 'langmap' to mapped characters
'luadll' name of the Lua dynamic library
'packpath' list of directories used for packages
'perldll' name of the Perl dynamic library
@@ -396,6 +389,7 @@ Rmd (markdown with R code chunks) syntax and indent
Rmd ftplugin
Rnoweb ftplugin
Rnoweb indent
+Scala syntax and indent and ftplugin
SystemVerilog syntax and indent and ftplugin
Systemd syntax and indent and ftplugin
Teraterm (TTL) syntax and indent
@@ -12884,7 +12878,7 @@ Files: src/search.c, src/testdir/Make_all.mak, src/Makefile,
src/testdir/test_gn.vim
Patch 7.4.2101
-Problem: Looping over windows, buffers and tab pages is inconsistant.
+Problem: Looping over windows, buffers and tab pages is inconsistent.
Solution: Use FOR_ALL_ macros everywhere. (Yegappan Lakshmanan)
Files: src/buffer.c, src/diff.c, src/edit.c, src/eval.c, src/evalfunc.c,
src/ex_cmds.c, src/ex_cmds2.c, src/ex_docmd.c, src/fileio.c,
diff --git a/runtime/doc/vim.man b/runtime/doc/vim.man
index 9390caa0d..cb0057a1f 100644
--- a/runtime/doc/vim.man
+++ b/runtime/doc/vim.man
@@ -222,7 +222,7 @@ OPTIONS
-R Read-only mode. The 'readonly' option will be set. You
can still edit the buffer, but will be prevented from acci‐
- dently overwriting a file. If you do want to overwrite a
+ dentally overwriting a file. If you do want to overwrite a
file, add an exclamation mark to the Ex command, as in
":w!". The -R option also implies the -n option (see
below). The 'readonly' option can be reset with ":set
diff --git a/runtime/doc/windows.txt b/runtime/doc/windows.txt
index 81042dbcd..770026979 100644
--- a/runtime/doc/windows.txt
+++ b/runtime/doc/windows.txt
@@ -1,4 +1,4 @@
-*windows.txt* For Vim version 7.4. Last change: 2016 Aug 18
+*windows.txt* For Vim version 7.4. Last change: 2016 Aug 23
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -75,7 +75,7 @@ places where a Normal mode command can't be used or is inconvenient.
The main Vim window can hold several split windows. There are also tab pages
|tab-page|, each of which can hold multiple windows.
- *window-ID*
+ *window-ID* *winid* *windowid*
Each window has a unique identifier called the window ID. This identifier
will not change within a Vim session. The |win_getid()| and |win_id2tabwin()|
functions can be used to convert between the window/tab number and the
@@ -1042,6 +1042,10 @@ list of buffers. |unlisted-buffer|
h+ hidden buffers which are modified
a+ active buffers which are modified
+ When using |:filter| the pattern is matched against the
+ displayed buffer name, e.g.: >
+ filter /\.vim/ ls
+<
*:bad* *:badd*
:bad[d] [+lnum] {fname}
Add file name {fname} to the buffer list, without loading it.
diff --git a/runtime/filetype.vim b/runtime/filetype.vim
index e46ad515c..4fc42753c 100644
--- a/runtime/filetype.vim
+++ b/runtime/filetype.vim
@@ -1,7 +1,7 @@
" Vim support file to detect file types
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
-" Last Change: 2016 Aug 18
+" Last Change: 2016 Aug 26
" Listen very carefully, I will say this only once
if exists("did_load_filetypes")
@@ -692,8 +692,8 @@ func! s:FTe()
let n = 1
while n < 100 && n < line("$")
if getline(n) =~ "^\\s*\\(<'\\|'>\\)\\s*$"
- setf specman
- return
+ setf specman
+ return
endif
let n = n + 1
endwhile
@@ -1780,6 +1780,9 @@ au BufNewFile,BufRead *.sass setf sass
" Sather
au BufNewFile,BufRead *.sa setf sather
+" Scala
+au BufNewFile,BufRead *.scala setf scala
+
" Scilab
au BufNewFile,BufRead *.sci,*.sce setf scilab
@@ -2052,7 +2055,7 @@ func! s:FTRules()
if line =~ s:ft_rules_udev_rules_pattern
let udev_rules = substitute(line, s:ft_rules_udev_rules_pattern, '\1', "")
if dir == udev_rules
- setf udevrules
+ setf udevrules
endif
break
endif
@@ -2301,7 +2304,7 @@ au BufNewFile,BufRead */etc/updatedb.conf setf updatedb
au BufNewFile,BufRead */usr/share/upstart/*.conf setf upstart
au BufNewFile,BufRead */usr/share/upstart/*.override setf upstart
au BufNewFile,BufRead */etc/init/*.conf,*/etc/init/*.override setf upstart
-au BufNewFile,BufRead */.init/*.conf,*/.init/*.override setf upstart
+au BufNewFile,BufRead */.init/*.conf,*/.init/*.override setf upstart
au BufNewFile,BufRead */.config/upstart/*.conf setf upstart
au BufNewFile,BufRead */.config/upstart/*.override setf upstart
diff --git a/runtime/ftplugin/rmd.vim b/runtime/ftplugin/rmd.vim
index ec64a0767..8c092ac13 100644
--- a/runtime/ftplugin/rmd.vim
+++ b/runtime/ftplugin/rmd.vim
@@ -1,9 +1,9 @@
" Vim filetype plugin file
-" Language: R help file
+" Language: R Markdown file
" Maintainer: Jakson Alves de Aquino <jalvesaq@gmail.com>
" Homepage: https://github.com/jalvesaq/R-Vim-runtime
-" Last Change: Tue Apr 07, 2015 04:37PM
-" Original work by Alex Zvoleff (adjusted for rmd by Michel Kuhlmann)
+" Last Change: Mon Jun 06, 2016 09:41PM
+" Original work by Alex Zvoleff (adjusted from R help for rmd by Michel Kuhlmann)
" Only do this when not yet done for this buffer
if exists("b:did_ftplugin")
@@ -12,6 +12,16 @@ endif
runtime! ftplugin/html.vim ftplugin/html_*.vim ftplugin/html/*.vim
+" Nvim-R plugin needs this
+if exists("*CompleteR")
+ if &omnifunc == "CompleteR"
+ let b:rplugin_nonr_omnifunc = ""
+ else
+ let b:rplugin_nonr_omnifunc = &omnifunc
+ endif
+ set omnifunc=CompleteR
+endif
+
setlocal comments=fb:*,fb:-,fb:+,n:> commentstring=>\ %s
setlocal formatoptions+=tcqln
setlocal formatlistpat=^\\s*\\d\\+\\.\\s\\+\\\|^\\s*[-*+]\\s\\+
diff --git a/runtime/ftplugin/scala.vim b/runtime/ftplugin/scala.vim
new file mode 100644
index 000000000..e40995010
--- /dev/null
+++ b/runtime/ftplugin/scala.vim
@@ -0,0 +1,37 @@
+" Vim filetype plugin file
+" Language: Scala
+" Maintainer: Derek Wyatt
+" URL: https://github.com/derekwyatt/vim-scala
+" License: Same as Vim
+" Last Change: 02 August 2016
+" ----------------------------------------------------------------------------
+
+if exists('b:did_ftplugin') || &cp
+ finish
+endif
+let b:did_ftplugin = 1
+
+" j is fairly new in Vim, so don't complain if it's not there
+setlocal formatoptions-=t formatoptions+=croqnl
+silent! setlocal formatoptions+=j
+
+" Just like c.vim, but additionally doesn't wrap text onto /** line when
+" formatting. Doesn't bungle bulleted lists when formatting.
+if get(g:, 'scala_scaladoc_indent', 0)
+ setlocal comments=sO:*\ -,mO:*\ \ ,exO:*/,s2:/**,mb:*,ex:*/,s1:/*,mb:*,ex:*/,://
+else
+ setlocal comments=sO:*\ -,mO:*\ \ ,exO:*/,s1:/**,mb:*,ex:*/,s1:/*,mb:*,ex:*/,://
+endif
+setlocal commentstring=//\ %s
+
+setlocal shiftwidth=2 softtabstop=2 expandtab
+
+setlocal include='^\s*import'
+setlocal includeexpr='substitute(v:fname,"\\.","/","g")'
+
+setlocal path+=src/main/scala,src/test/scala
+setlocal suffixesadd=.scala
+
+compiler sbt
+
+" vim:set sw=2 sts=2 ts=8 et:
diff --git a/runtime/indent/fortran.vim b/runtime/indent/fortran.vim
index e19a19fb1..be2f0866d 100644
--- a/runtime/indent/fortran.vim
+++ b/runtime/indent/fortran.vim
@@ -1,7 +1,7 @@
" Vim indent file
" Language: Fortran 2008 (and older: Fortran 2003, 95, 90, and 77)
-" Version: 0.44
-" Last Change: 2016 Jan. 26
+" Version: 0.45
+" Last Change: 2016 Aug. 18
" Maintainer: Ajit J. Thakkar <ajit@unb.ca>; <http://www2.unb.ca/~ajit/>
" Usage: For instructions, do :help fortran-indent from Vim
" Credits:
@@ -121,7 +121,7 @@ function FortranGetIndent(lnum)
let prefix='\(\(pure\|impure\|elemental\|recursive\)\s\+\)\{,2}'
let type='\(\(integer\|real\|double\s\+precision\|complex\|logical'
\.'\|character\|type\|class\)\s*\S*\s\+\)\='
- if prevstat =~? '^\s*\(module\|contains\|program\)\>'
+ if prevstat =~? '^\s*\(module\|contains\/submodule\|program\)\>'
\ ||prevstat =~? '^\s*'.prefix.'subroutine\>'
\ ||prevstat =~? '^\s*'.prefix.type.'function\>'
\ ||prevstat =~? '^\s*'.type.prefix.'function\>'
@@ -129,14 +129,14 @@ function FortranGetIndent(lnum)
endif
if getline(v:lnum) =~? '^\s*contains\>'
\ ||getline(v:lnum)=~? '^\s*end\s*'
- \ .'\(function\|subroutine\|module\|program\)\>'
+ \ .'\(function\|subroutine\|module\/submodule\|program\)\>'
let ind = ind - shiftwidth()
endif
endif
"Subtract a shiftwidth from else, else if, elsewhere, case, end if,
" end where, end select, end forall, end interface, end associate,
- " end enum, and end type statements
+ " end enum, end type, end block and end type statements
if getline(v:lnum) =~? '^\s*\(\d\+\s\)\=\s*'
\. '\(else\|else\s*if\|else\s*where\|case\|'
\. 'end\s*\(if\|where\|select\|interface\|'
diff --git a/runtime/indent/javascript.vim b/runtime/indent/javascript.vim
index 3507e305e..0d6c11d15 100644
--- a/runtime/indent/javascript.vim
+++ b/runtime/indent/javascript.vim
@@ -1,8 +1,8 @@
" Vim indent file
" Language: Javascript
-" Maintainer: vim-javascript community
+" Maintainer: Chris Paul ( https://github.com/bounceme )
" URL: https://github.com/pangloss/vim-javascript
-" Last Change: August 12, 2016
+" Last Change: August 25, 2016
" Only load this indent file when no other was loaded.
if exists('b:did_indent')
@@ -12,11 +12,11 @@ let b:did_indent = 1
" Now, set up our indentation expression and keys that trigger it.
setlocal indentexpr=GetJavascriptIndent()
-setlocal nolisp
+setlocal nolisp noautoindent nosmartindent
setlocal indentkeys=0{,0},0),0],:,!^F,o,O,e
setlocal cinoptions+=j1,J1
-let b:undo_indent = 'setlocal indentexpr< indentkeys< cinoptions<'
+let b:undo_indent = 'setlocal indentexpr< smartindent< autoindent< indentkeys< cinoptions<'
" Only define the function once.
if exists('*GetJavascriptIndent')
@@ -37,7 +37,7 @@ else
endfunction
endif
-let s:line_pre = '^\s*\%(\/\*.\{-}\*\/\s*\)*'
+let s:line_pre = '^\s*\%(\%(\%(\/\*.\{-}\)\=\*\+\/\s*\)\=\)\@>'
let s:expr_case = s:line_pre . '\%(\%(case\>.\+\)\|default\)\s*:'
" Regex of syntax group names that are or delimit string or are comments.
let s:syng_strcom = '\%(s\%(tring\|pecial\)\|comment\|regex\|doc\|template\)'
@@ -46,63 +46,63 @@ let s:syng_strcom = '\%(s\%(tring\|pecial\)\|comment\|regex\|doc\|template\)'
let s:syng_comment = '\%(comment\|doc\)'
" Expression used to check whether we should skip a match with searchpair().
-let s:skip_expr = "line('.') < (prevnonblank(v:lnum) - 2000) ? dummy : synIDattr(synID(line('.'),col('.'),0),'name') =~? '".s:syng_strcom."'"
+let s:skip_expr = "synIDattr(synID(line('.'),col('.'),0),'name') =~? '".s:syng_strcom."'"
-function s:lookForParens(start,end,flags,time)
- if has('reltime')
- return searchpair(a:start,'',a:end,a:flags,s:skip_expr,0,a:time)
- else
- return searchpair(a:start,'',a:end,a:flags,0,0)
- endif
-endfunction
+if has('reltime')
+ function s:GetPair(start,end,flags,time)
+ return searchpair(a:start,'',a:end,a:flags,s:skip_expr,max([prevnonblank(v:lnum) - 2000,0]),a:time)
+ endfunction
+else
+ function s:GetPair(start,end,flags,n)
+ return searchpair(a:start,'',a:end,a:flags,0,max([prevnonblank(v:lnum) - 2000,0]))
+ endfunction
+endif
-let s:line_term = '\%(\s*\%(\/\*.\{-}\*\/\s*\)\=\)\@>$'
+let s:line_term = '\s*\%(\%(\/\%(\%(\*.\{-}\*\/\)\|\%(\*\+\)\)\)\s*\)\=$'
" configurable regexes that define continuation lines, not including (, {, or [.
if !exists('g:javascript_opfirst')
- let g:javascript_opfirst = '\%([<>,:?^%]\|\([-/.+]\)\%(\1\|\*\|\/\)\@!\|\*\/\@!\|=>\@!\||\|&\|in\%(stanceof\)\=\>\)'
+ let g:javascript_opfirst = '\%([<>,:?^%|*&]\|\/[^/*]\|\([-.+]\)\1\@!\|=>\@!\|in\%(stanceof\)\=\>\)'
endif
-let g:javascript_opfirst = s:line_pre . g:javascript_opfirst
-
if !exists('g:javascript_continuation')
- let g:javascript_continuation = '\%([<*,.?:^%]\|+\@<!+\|-\@<!-\|=\@<!>\|\*\@<!\/\|=\||\|&\|\<in\%(stanceof\)\=\)'
+ let g:javascript_continuation = '\%([<=,.?/*:^%|&]\|+\@<!+\|-\@<!-\|=\@<!>\|\<in\%(stanceof\)\=\)'
endif
+
+let g:javascript_opfirst = s:line_pre . g:javascript_opfirst
let g:javascript_continuation .= s:line_term
-function s:Onescope(lnum,text,add)
- return a:text =~# '\%(\<else\|\<do\|=>' . (a:add ? '\|\<try\|\<finally' : '' ) . '\)' . s:line_term ||
+function s:OneScope(lnum,text,add)
+ return a:text =~# '\%(\<else\|\<do\|=>\)' . s:line_term ? 'no b' :
\ ((a:add && a:text =~ s:line_pre . '$' && search('\%' . s:PrevCodeLine(a:lnum - 1) . 'l.)' . s:line_term)) ||
\ cursor(a:lnum, match(a:text, ')' . s:line_term)) > -1) &&
- \ s:lookForParens('(', ')', 'cbW', 100) > 0 && search((a:add ?
- \ '\%(function\*\|[[:lower:][:upper:]_$][[:digit:][:lower:][:upper:]_$]*\)' :
- \ '\<\%(for\%(\s\+each\)\=\|if\|let\|w\%(hile\|ith\)\)') . '\_s*\%#\C','bW') &&
- \ (a:add || (expand('<cword>') ==# 'while' ? !s:lookForParens('\<do\>\C', '\<while\>\C','bW',100) : 1))
+ \ s:GetPair('(', ')', 'cbW', 100) > 0 && search('\C\l\+\_s*\%#','bW') &&
+ \ (a:add || ((expand('<cword>') !=# 'while' || !s:GetPair('\C\<do\>', '\C\<while\>','nbW',100)) &&
+ \ (expand('<cword>') !=# 'each' || search('\C\<for\_s\+\%#','nbW')))) ? expand('<cword>') : ''
endfunction
-" Auxiliary Functions {{{2
-
-" strip line of comment
-function s:StripLine(c)
- return a:c !~# s:expr_case ? substitute(a:c, '\%(:\@<!\/\/.*\)$', '','') : a:c
+" https://github.com/sweet-js/sweet.js/wiki/design#give-lookbehind-to-the-reader
+function s:IsBlock()
+ return getline(line('.'))[col('.')-1] == '{' && !search(
+ \ '\C\%(\<return\s*\|\%([-=~!<*+,.?^%|&\[(]\|=\@<!>\|\*\@<!\/\|\<\%(var\|const\|let\|import\|export\%(\_s\+default\)\=\|yield\|delete\|void\|t\%(ypeof\|hrow\)\|new\|in\%(stanceof\)\=\)\)\_s*\)\%#','bnW') &&
+ \ (!search(':\_s*\%#','bW') || (!s:GetPair('[({[]','[])}]','bW',200) || s:IsBlock()))
endfunction
+" Auxiliary Functions {{{2
+
" Find line above 'lnum' that isn't empty, in a comment, or in a string.
function s:PrevCodeLine(lnum)
let l:lnum = prevnonblank(a:lnum)
- while l:lnum > 0
+ while l:lnum
if synIDattr(synID(l:lnum,matchend(getline(l:lnum), '^\s*[^''"]'),0),'name') !~? s:syng_strcom
- break
+ return l:lnum
endif
let l:lnum = prevnonblank(l:lnum - 1)
endwhile
- return l:lnum
endfunction
" Check if line 'lnum' has a balanced amount of parentheses.
function s:Balanced(lnum)
- let open_0 = 0
- let open_2 = 0
- let open_4 = 0
+ let [open_0,open_2,open_4] = [0,0,0]
let l:line = getline(a:lnum)
let pos = match(l:line, '[][(){}]', 0)
while pos != -1
@@ -129,7 +129,7 @@ function GetJavascriptIndent()
let syns = synIDattr(synID(v:lnum, 1, 0), 'name')
" start with strings,comments,etc.{{{2
- if (l:line !~ '^[''"`]' && syns =~? 'string\|template') ||
+ if (l:line !~ '^[''"`]' && syns =~? '\%(string\|template\)') ||
\ (l:line !~ '^\s*[/*]' && syns =~? s:syng_comment)
return -1
endif
@@ -153,15 +153,15 @@ function GetJavascriptIndent()
" the containing paren, bracket, curly. Memoize, last lineNr either has the
" same scope or starts a new one, unless if it closed a scope.
call cursor(v:lnum,1)
- if b:js_cache[0] >= l:lnum && b:js_cache[0] <= v:lnum && b:js_cache[0] &&
+ if b:js_cache[0] >= l:lnum && b:js_cache[0] < v:lnum && b:js_cache[0] &&
\ (b:js_cache[0] > l:lnum || s:Balanced(l:lnum) > 0)
let num = b:js_cache[1]
elseif syns != '' && l:line[0] =~ '\s'
let pattern = syns =~? 'block' ? ['{','}'] : syns =~? 'jsparen' ? ['(',')'] :
\ syns =~? 'jsbracket'? ['\[','\]'] : ['[({[]','[])}]']
- let num = s:lookForParens(pattern[0],pattern[1],'bW',2000)
+ let num = s:GetPair(pattern[0],pattern[1],'bW',2000)
else
- let num = s:lookForParens('[({[]','[])}]','bW',2000)
+ let num = s:GetPair('[({[]','[])}]','bW',2000)
endif
let b:js_cache = [v:lnum,num,line('.') == v:lnum ? b:js_cache[2] : col('.')]
@@ -169,17 +169,19 @@ function GetJavascriptIndent()
return indent(num)
endif
- let pline = s:StripLine(getline(l:lnum))
- let inb = num == 0 ? 1 : (s:Onescope(num, s:StripLine(strpart(getline(num),0,b:js_cache[2] - 1)),1) ||
- \ (l:line !~ s:line_pre . ',' && pline !~ ',' . s:line_term)) && num < l:lnum
- let switch_offset = (!inb || num == 0) || expand("<cword>") !=# 'switch' ? 0 : &cino !~ ':' || !has('float') ? s:sw() :
+ call cursor(b:js_cache[1],b:js_cache[2])
+
+ let swcase = getline(l:lnum) =~# s:expr_case
+ let pline = swcase ? getline(l:lnum) : substitute(getline(l:lnum), '\%(:\@<!\/\/.*\)$', '','')
+ let inb = num == 0 || num < l:lnum && ((l:line !~ s:line_pre . ',' && pline !~ ',' . s:line_term) || s:IsBlock())
+ let switch_offset = num == 0 || s:OneScope(num, strpart(getline(num),0,b:js_cache[2] - 1),1) !=# 'switch' ? 0 :
+ \ &cino !~ ':' || !has('float') ? s:sw() :
\ float2nr(str2float(matchstr(&cino,'.*:\zs[-0-9.]*')) * (&cino =~# '.*:[^,]*s' ? s:sw() : 1))
" most significant, find the indent amount
- if (inb && (l:line =~# g:javascript_opfirst ||
- \ (pline =~# g:javascript_continuation && pline !~# s:expr_case && (pline !~ ':' . s:line_term || l:line !~#
- \ s:line_pre . '\%(d\%(o\|ebugger\)\|else\|f\%(or\|inally\)\|if\|let\|switch\|t\%(hrow\|ry\)\|w\%(hile\|ith\)\)\>')))) ||
- \ (num < l:lnum && s:Onescope(l:lnum,pline,0) && l:line !~ s:line_pre . '{')
+ if inb && !swcase && ((l:line =~# g:javascript_opfirst || pline =~# g:javascript_continuation) ||
+ \ num < l:lnum && s:OneScope(l:lnum,pline,0) =~# '\<\%(for\|each\|if\|let\|no\sb\|w\%(hile\|ith\)\)\>' &&
+ \ l:line !~ s:line_pre . '{')
return (num > 0 ? indent(num) : -s:sw()) + (s:sw() * 2) + switch_offset
elseif num > 0
return indent(num) + s:sw() + switch_offset
diff --git a/runtime/indent/rnoweb.vim b/runtime/indent/rnoweb.vim
index 29fa5bc78..8c11e85cb 100644
--- a/runtime/indent/rnoweb.vim
+++ b/runtime/indent/rnoweb.vim
@@ -2,7 +2,7 @@
" Language: Rnoweb
" Author: Jakson Alves de Aquino <jalvesaq@gmail.com>
" Homepage: https://github.com/jalvesaq/R-Vim-runtime
-" Last Change: Tue Apr 07, 2015 04:38PM
+" Last Change: Fri Apr 15, 2016 10:58PM
" Only load this indent file when no other was loaded.
@@ -10,7 +10,17 @@ if exists("b:did_indent")
finish
endif
runtime indent/tex.vim
-let s:TeXIndent = function(substitute(&indentexpr, "()", "", ""))
+
+function! s:NoTeXIndent()
+ return indent(line("."))
+endfunction
+
+if &indentexpr == "" || &indentexpr == "GetRnowebIndent()"
+ let s:TeXIndent = function("s:NoTeXIndent")
+else
+ let s:TeXIndent = function(substitute(&indentexpr, "()", "", ""))
+endif
+
unlet b:did_indent
runtime indent/r.vim
let s:RIndent = function(substitute(&indentexpr, "()", "", ""))
diff --git a/runtime/indent/scala.vim b/runtime/indent/scala.vim
new file mode 100644
index 000000000..f97c79bba
--- /dev/null
+++ b/runtime/indent/scala.vim
@@ -0,0 +1,609 @@
+" Vim indent file
+" Language: Scala (http://scala-lang.org/)
+" Original Author: Stefan Matthias Aust
+" Modifications By: Derek Wyatt
+" URL: https://github.com/derekwyatt/vim-scala
+" Last Change: 2016 Aug 26
+
+if exists("b:did_indent")
+ finish
+endif
+let b:did_indent = 1
+
+setlocal autoindent
+setlocal indentexpr=GetScalaIndent()
+setlocal indentkeys=0{,0},0),!^F,<>>,o,O,e,=case,<CR>
+
+if exists("*GetScalaIndent")
+ finish
+endif
+let s:keepcpo= &cpo
+set cpo&vim
+
+let s:defMatcher = '\%(\%(private\|protected\)\%(\[[^\]]*\]\)\?\s\+\|abstract\s\+\|override\s\+\)*\<def\>'
+let s:funcNameMatcher = '\w\+'
+let s:typeSpecMatcher = '\%(\s*\[\_[^\]]*\]\)'
+let s:defArgMatcher = '\%((\_.\{-})\)'
+let s:returnTypeMatcher = '\%(:\s*\w\+' . s:typeSpecMatcher . '\?\)'
+let g:fullDefMatcher = '^\s*' . s:defMatcher . '\s\+' . s:funcNameMatcher . '\s*' . s:typeSpecMatcher . '\?\s*' . s:defArgMatcher . '\?\s*' . s:returnTypeMatcher . '\?\s*[={]'
+
+function! scala#ConditionalConfirm(msg)
+ if 0
+ call confirm(a:msg)
+ endif
+endfunction
+
+function! scala#GetLine(lnum)
+ let line = substitute(getline(a:lnum), '//.*$', '', '')
+ let line = substitute(line, '"\(.\|\\"\)\{-}"', '""', 'g')
+ return line
+endfunction
+
+function! scala#CountBrackets(line, openBracket, closedBracket)
+ let line = substitute(a:line, '"\(.\|\\"\)\{-}"', '', 'g')
+ let open = substitute(line, '[^' . a:openBracket . ']', '', 'g')
+ let close = substitute(line, '[^' . a:closedBracket . ']', '', 'g')
+ return strlen(open) - strlen(close)
+endfunction
+
+function! scala#CountParens(line)
+ return scala#CountBrackets(a:line, '(', ')')
+endfunction
+
+function! scala#CountCurlies(line)
+ return scala#CountBrackets(a:line, '{', '}')
+endfunction
+
+function! scala#LineEndsInIncomplete(line)
+ if a:line =~ '[.,]\s*$'
+ return 1
+ else
+ return 0
+ endif
+endfunction
+
+function! scala#LineIsAClosingXML(line)
+ if a:line =~ '^\s*</\w'
+ return 1
+ else
+ return 0
+ endif
+endfunction
+
+function! scala#LineCompletesXML(lnum, line)
+ let savedpos = getpos('.')
+ call setpos('.', [savedpos[0], a:lnum, 0, savedpos[3]])
+ let tag = substitute(a:line, '^.*</\([^>]*\)>.*$', '\1', '')
+ let [lineNum, colnum] = searchpairpos('<' . tag . '>', '', '</' . tag . '>', 'Wbn')
+ call setpos('.', savedpos)
+ let pline = scala#GetLine(prevnonblank(lineNum - 1))
+ if pline =~ '=\s*$'
+ return 1
+ else
+ return 0
+ endif
+endfunction
+
+function! scala#IsParentCase()
+ let savedpos = getpos('.')
+ call setpos('.', [savedpos[0], savedpos[1], 0, savedpos[3]])
+ let [l, c] = searchpos('^\s*\%(' . s:defMatcher . '\|\%(\<case\>\)\)', 'bnW')
+ let retvalue = -1
+ if l != 0 && search('\%' . l . 'l\s*\<case\>', 'bnW')
+ let retvalue = l
+ endif
+ call setpos('.', savedpos)
+ return retvalue
+endfunction
+
+function! scala#CurlyMatcher()
+ let matchline = scala#GetLineThatMatchesBracket('{', '}')
+ if scala#CountParens(scala#GetLine(matchline)) < 0
+ let savedpos = getpos('.')
+ call setpos('.', [savedpos[0], matchline, 9999, savedpos[3]])
+ call searchpos('{', 'Wbc')
+ call searchpos(')', 'Wb')
+ let [lnum, colnum] = searchpairpos('(', '', ')', 'Wbn')
+ call setpos('.', savedpos)
+ let line = scala#GetLine(lnum)
+ if line =~ '^\s*' . s:defMatcher
+ return lnum
+ else
+ return matchline
+ endif
+ else
+ return matchline
+ endif
+endfunction
+
+function! scala#GetLineAndColumnThatMatchesCurly()
+ return scala#GetLineAndColumnThatMatchesBracket('{', '}')
+endfunction
+
+function! scala#GetLineAndColumnThatMatchesParen()
+ return scala#GetLineAndColumnThatMatchesBracket('(', ')')
+endfunction
+
+function! scala#GetLineAndColumnThatMatchesBracket(openBracket, closedBracket)
+ let savedpos = getpos('.')
+ let curline = scala#GetLine(line('.'))
+ if curline =~ a:closedBracket . '.*' . a:openBracket . '.*' . a:closedBracket
+ call setpos('.', [savedpos[0], savedpos[1], 0, savedpos[3]])
+ call searchpos(a:closedBracket . '\ze[^' . a:closedBracket . a:openBracket . ']*' . a:openBracket, 'W')
+ else
+ call setpos('.', [savedpos[0], savedpos[1], 9999, savedpos[3]])
+ call searchpos(a:closedBracket, 'Wbc')
+ endif
+ let [lnum, colnum] = searchpairpos(a:openBracket, '', a:closedBracket, 'Wbn')
+ call setpos('.', savedpos)
+ return [lnum, colnum]
+endfunction
+
+function! scala#GetLineThatMatchesCurly()
+ return scala#GetLineThatMatchesBracket('{', '}')
+endfunction
+
+function! scala#GetLineThatMatchesParen()
+ return scala#GetLineThatMatchesBracket('(', ')')
+endfunction
+
+function! scala#GetLineThatMatchesBracket(openBracket, closedBracket)
+ let [lnum, colnum] = scala#GetLineAndColumnThatMatchesBracket(a:openBracket, a:closedBracket)
+ return lnum
+endfunction
+
+function! scala#NumberOfBraceGroups(line)
+ let line = substitute(a:line, '[^()]', '', 'g')
+ if strlen(line) == 0
+ return 0
+ endif
+ let line = substitute(line, '^)*', '', 'g')
+ if strlen(line) == 0
+ return 0
+ endif
+ let line = substitute(line, '^(', '', 'g')
+ if strlen(line) == 0
+ return 0
+ endif
+ let c = 1
+ let counter = 0
+ let groupCount = 0
+ while counter < strlen(line)
+ let char = strpart(line, counter, 1)
+ if char == '('
+ let c = c + 1
+ elseif char == ')'
+ let c = c - 1
+ endif
+ if c == 0
+ let groupCount = groupCount + 1
+ endif
+ let counter = counter + 1
+ endwhile
+ return groupCount
+endfunction
+
+function! scala#MatchesIncompleteDefValr(line)
+ if a:line =~ '^\s*\%(' . s:defMatcher . '\|\<va[lr]\>\).*[=({]\s*$'
+ return 1
+ else
+ return 0
+ endif
+endfunction
+
+function! scala#LineIsCompleteIf(line)
+ if scala#CountBrackets(a:line, '{', '}') == 0 &&
+ \ scala#CountBrackets(a:line, '(', ')') == 0 &&
+ \ a:line =~ '^\s*\<if\>\s*([^)]*)\s*\S.*$'
+ return 1
+ else
+ return 0
+ endif
+endfunction
+
+function! scala#LineCompletesIfElse(lnum, line)
+ if a:line =~ '^\s*\%(\<if\>\|\%(}\s*\)\?\<else\>\)'
+ return 0
+ endif
+ let result = search('^\%(\s*\<if\>\s*(.*).*\n\|\s*\<if\>\s*(.*)\s*\n.*\n\)\%(\s*\<else\>\s*\<if\>\s*(.*)\s*\n.*\n\)*\%(\s*\<else\>\s*\n\|\s*\<else\>[^{]*\n\)\?\%' . a:lnum . 'l', 'Wbn')
+ if result != 0 && scala#GetLine(prevnonblank(a:lnum - 1)) !~ '{\s*$'
+ return result
+ endif
+ return 0
+endfunction
+
+function! scala#GetPrevCodeLine(lnum)
+ " This needs to skip comment lines
+ return prevnonblank(a:lnum - 1)
+endfunction
+
+function! scala#InvertBracketType(openBracket, closedBracket)
+ if a:openBracket == '('
+ return [ '{', '}' ]
+ else
+ return [ '(', ')' ]
+ endif
+endfunction
+
+function! scala#Testhelper(lnum, line, openBracket, closedBracket, iteration)
+ let bracketCount = scala#CountBrackets(a:line, a:openBracket, a:closedBracket)
+ " There are more '}' braces than '{' on this line so it may be completing the function definition
+ if bracketCount < 0
+ let [matchedLNum, matchedColNum] = scala#GetLineAndColumnThatMatchesBracket(a:openBracket, a:closedBracket)
+ if matchedLNum == a:lnum
+ return -1
+ endif
+ let matchedLine = scala#GetLine(matchedLNum)
+ if ! scala#MatchesIncompleteDefValr(matchedLine)
+ let bracketLine = substitute(substitute(matchedLine, '\%' . matchedColNum . 'c.*$', '', ''), '[^{}()]', '', 'g')
+ if bracketLine =~ '}$'
+ return scala#Testhelper(matchedLNum, matchedLine, '{', '}', a:iteration + 1)
+ elseif bracketLine =~ ')$'
+ return scala#Testhelper(matchedLNum, matchedLine, '(', ')', a:iteration + 1)
+ else
+ let prevCodeLNum = scala#GetPrevCodeLine(matchedLNum)
+ if scala#MatchesIncompleteDefValr(scala#GetLine(prevCodeLNum))
+ return prevCodeLNum
+ else
+ return -1
+ endif
+ endif
+ else
+ " return indent value instead
+ return matchedLNum
+ endif
+ " There's an equal number of '{' and '}' on this line so it may be a single line function definition
+ elseif bracketCount == 0
+ if a:iteration == 0
+ let otherBracketType = scala#InvertBracketType(a:openBracket, a:closedBracket)
+ return scala#Testhelper(a:lnum, a:line, otherBracketType[0], otherBracketType[1], a:iteration + 1)
+ else
+ let prevCodeLNum = scala#GetPrevCodeLine(a:lnum)
+ let prevCodeLine = scala#GetLine(prevCodeLNum)
+ if scala#MatchesIncompleteDefValr(prevCodeLine) && prevCodeLine !~ '{\s*$'
+ return prevCodeLNum
+ else
+ let possibleIfElse = scala#LineCompletesIfElse(a:lnum, a:line)
+ if possibleIfElse != 0
+ let defValrLine = prevnonblank(possibleIfElse - 1)
+ let possibleDefValr = scala#GetLine(defValrLine)
+ if scala#MatchesIncompleteDefValr(possibleDefValr) && possibleDefValr =~ '^.*=\s*$'
+ return possibleDefValr
+ else
+ return -1
+ endif
+ else
+ return -1
+ endif
+ endif
+ endif
+ else
+ return -1
+ endif
+endfunction
+
+function! scala#Test(lnum, line, openBracket, closedBracket)
+ return scala#Testhelper(a:lnum, a:line, a:openBracket, a:closedBracket, 0)
+endfunction
+
+function! scala#LineCompletesDefValr(lnum, line)
+ let bracketCount = scala#CountBrackets(a:line, '{', '}')
+ if bracketCount < 0
+ let matchedBracket = scala#GetLineThatMatchesBracket('{', '}')
+ if ! scala#MatchesIncompleteDefValr(scala#GetLine(matchedBracket))
+ let possibleDefValr = scala#GetLine(prevnonblank(matchedBracket - 1))
+ if matchedBracket != -1 && scala#MatchesIncompleteDefValr(possibleDefValr)
+ return 1
+ else
+ return 0
+ endif
+ else
+ return 0
+ endif
+ elseif bracketCount == 0
+ let bracketCount = scala#CountBrackets(a:line, '(', ')')
+ if bracketCount < 0
+ let matchedBracket = scala#GetLineThatMatchesBracket('(', ')')
+ if ! scala#MatchesIncompleteDefValr(scala#GetLine(matchedBracket))
+ let possibleDefValr = scala#GetLine(prevnonblank(matchedBracket - 1))
+ if matchedBracket != -1 && scala#MatchesIncompleteDefValr(possibleDefValr)
+ return 1
+ else
+ return 0
+ endif
+ else
+ return 0
+ endif
+ elseif bracketCount == 0
+ let possibleDefValr = scala#GetLine(prevnonblank(a:lnum - 1))
+ if scala#MatchesIncompleteDefValr(possibleDefValr) && possibleDefValr =~ '^.*=\s*$'
+ return 1
+ else
+ let possibleIfElse = scala#LineCompletesIfElse(a:lnum, a:line)
+ if possibleIfElse != 0
+ let possibleDefValr = scala#GetLine(prevnonblank(possibleIfElse - 1))
+ if scala#MatchesIncompleteDefValr(possibleDefValr) && possibleDefValr =~ '^.*=\s*$'
+ return 2
+ else
+ return 0
+ endif
+ else
+ return 0
+ endif
+ endif
+ else
+ return 0
+ endif
+ endif
+endfunction
+
+function! scala#SpecificLineCompletesBrackets(lnum, openBracket, closedBracket)
+ let savedpos = getpos('.')
+ call setpos('.', [savedpos[0], a:lnum, 9999, savedpos[3]])
+ let retv = scala#LineCompletesBrackets(a:openBracket, a:closedBracket)
+ call setpos('.', savedpos)
+
+ return retv
+endfunction
+
+function! scala#LineCompletesBrackets(openBracket, closedBracket)
+ let savedpos = getpos('.')
+ let offline = 0
+ while offline == 0
+ let [lnum, colnum] = searchpos(a:closedBracket, 'Wb')
+ let [lnumA, colnumA] = searchpairpos(a:openBracket, '', a:closedBracket, 'Wbn')
+ if lnum != lnumA
+ let [lnumB, colnumB] = searchpairpos(a:openBracket, '', a:closedBracket, 'Wbnr')
+ let offline = 1
+ endif
+ endwhile
+ call setpos('.', savedpos)
+ if lnumA == lnumB && colnumA == colnumB
+ return lnumA
+ else
+ return -1
+ endif
+endfunction
+
+function! GetScalaIndent()
+ " Find a non-blank line above the current line.
+ let prevlnum = prevnonblank(v:lnum - 1)
+
+ " Hit the start of the file, use zero indent.
+ if prevlnum == 0
+ return 0
+ endif
+
+ let ind = indent(prevlnum)
+ let originalIndentValue = ind
+ let prevline = scala#GetLine(prevlnum)
+ let curlnum = v:lnum
+ let curline = scala#GetLine(curlnum)
+ if get(g:, 'scala_scaladoc_indent', 0)
+ let star_indent = 2
+ else
+ let star_indent = 1
+ end
+
+ if prevline =~ '^\s*/\*\*'
+ if prevline =~ '\*/\s*$'
+ return ind
+ else
+ return ind + star_indent
+ endif
+ endif
+
+ if curline =~ '^\s*\*'
+ return cindent(curlnum)
+ endif
+
+ " If this line starts with a { then make it indent the same as the previous line
+ if curline =~ '^\s*{'
+ call scala#ConditionalConfirm("1")
+ " Unless, of course, the previous one is a { as well
+ if prevline !~ '^\s*{'
+ call scala#ConditionalConfirm("2")
+ return indent(prevlnum)
+ endif
+ endif
+
+ " '.' continuations
+ if curline =~ '^\s*\.'
+ if prevline =~ '^\s*\.'
+ return ind
+ else
+ return ind + &shiftwidth
+ endif
+ endif
+
+ " Indent html literals
+ if prevline !~ '/>\s*$' && prevline =~ '^\s*<[a-zA-Z][^>]*>\s*$'
+ call scala#ConditionalConfirm("3")
+ return ind + &shiftwidth
+ endif
+
+ " assumes curly braces around try-block
+ if curline =~ '^\s*}\s*\<catch\>'
+ return ind - &shiftwidth
+ elseif curline =~ '^\s*\<catch\>'
+ return ind
+ endif
+
+ " Add a 'shiftwidth' after lines that start a block
+ " If 'if', 'for' or 'while' end with ), this is a one-line block
+ " If 'val', 'var', 'def' end with =, this is a one-line block
+ if (prevline =~ '^\s*\<\%(\%(}\?\s*else\s\+\)\?if\|for\|while\)\>.*[)=]\s*$' && scala#NumberOfBraceGroups(prevline) <= 1)
+ \ || prevline =~ '^\s*' . s:defMatcher . '.*=\s*$'
+ \ || prevline =~ '^\s*\<va[lr]\>.*[=]\s*$'
+ \ || prevline =~ '^\s*\%(}\s*\)\?\<else\>\s*$'
+ \ || prevline =~ '=\s*$'
+ call scala#ConditionalConfirm("4")
+ let ind = ind + &shiftwidth
+ elseif prevline =~ '^\s*\<\%(}\?\s*else\s\+\)\?if\>' && curline =~ '^\s*}\?\s*\<else\>'
+ return ind
+ endif
+
+ let lineCompletedBrackets = 0
+ let bracketCount = scala#CountBrackets(prevline, '{', '}')
+ if bracketCount > 0 || prevline =~ '.*{\s*$'
+ call scala#ConditionalConfirm("5b")
+ let ind = ind + &shiftwidth
+ elseif bracketCount < 0
+ call scala#ConditionalConfirm("6b")
+ " if the closing brace actually completes the braces entirely, then we
+ " have to indent to line that started the whole thing
+ let completeLine = scala#LineCompletesBrackets('{', '}')
+ if completeLine != -1
+ call scala#ConditionalConfirm("8b")
+ let prevCompleteLine = scala#GetLine(prevnonblank(completeLine - 1))
+ " However, what actually started this part looks like it was a function
+ " definition, so we need to indent to that line instead. This is
+ " actually pretty weak at the moment.
+ if prevCompleteLine =~ '=\s*$'
+ call scala#ConditionalConfirm("9b")
+ let ind = indent(prevnonblank(completeLine - 1))
+ else
+ call scala#ConditionalConfirm("10b")
+ let ind = indent(completeLine)
+ endif
+ else
+ let lineCompletedBrackets = 1
+ endif
+ endif
+
+ if ind == originalIndentValue
+ let bracketCount = scala#CountBrackets(prevline, '(', ')')
+ if bracketCount > 0 || prevline =~ '.*(\s*$'
+ call scala#ConditionalConfirm("5a")
+ let ind = ind + &shiftwidth
+ elseif bracketCount < 0
+ call scala#ConditionalConfirm("6a")
+ " if the closing brace actually completes the braces entirely, then we
+ " have to indent to line that started the whole thing
+ let completeLine = scala#LineCompletesBrackets('(', ')')
+ if completeLine != -1 && prevline !~ '^.*{\s*$'
+ call scala#ConditionalConfirm("8a")
+ let prevCompleteLine = scala#GetLine(prevnonblank(completeLine - 1))
+ " However, what actually started this part looks like it was a function
+ " definition, so we need to indent to that line instead. This is
+ " actually pretty weak at the moment.
+ if prevCompleteLine =~ '=\s*$'
+ call scala#ConditionalConfirm("9a")
+ let ind = indent(prevnonblank(completeLine - 1))
+ else
+ call scala#ConditionalConfirm("10a")
+ let ind = indent(completeLine)
+ endif
+ else
+ " This is the only part that's different from from the '{', '}' one below
+ " Yup... some refactoring is necessary at some point.
+ let ind = ind + (bracketCount * &shiftwidth)
+ let lineCompletedBrackets = 1
+ endif
+ endif
+ endif
+
+ if curline =~ '^\s*}\?\s*\<else\>\%(\s\+\<if\>\s*(.*)\)\?\s*{\?\s*$' &&
+ \ ! scala#LineIsCompleteIf(prevline) &&
+ \ prevline !~ '^.*}\s*$'
+ let ind = ind - &shiftwidth
+ endif
+
+ " Subtract a 'shiftwidth' on '}' or html
+ let curCurlyCount = scala#CountCurlies(curline)
+ if curCurlyCount < 0
+ call scala#ConditionalConfirm("14a")
+ let matchline = scala#CurlyMatcher()
+ return indent(matchline)
+ elseif curline =~ '^\s*</[a-zA-Z][^>]*>'
+ call scala#ConditionalConfirm("14c")
+ return ind - &shiftwidth
+ endif
+
+ let prevParenCount = scala#CountParens(prevline)
+ if prevline =~ '^\s*\<for\>.*$' && prevParenCount > 0
+ call scala#ConditionalConfirm("15")
+ let ind = indent(prevlnum) + 5
+ endif
+
+ let prevCurlyCount = scala#CountCurlies(prevline)
+ if prevCurlyCount == 0 && prevline =~ '^.*\%(=>\|⇒\)\s*$' && prevline !~ '^\s*this\s*:.*\%(=>\|⇒\)\s*$' && curline !~ '^\s*\<case\>'
+ call scala#ConditionalConfirm("16")
+ let ind = ind + &shiftwidth
+ endif
+
+ if ind == originalIndentValue && curline =~ '^\s*\<case\>'
+ call scala#ConditionalConfirm("17")
+ let parentCase = scala#IsParentCase()
+ if parentCase != -1
+ call scala#ConditionalConfirm("17a")
+ return indent(parentCase)
+ endif
+ endif
+
+ if prevline =~ '^\s*\*/'
+ \ || prevline =~ '*/\s*$'
+ call scala#ConditionalConfirm("18")
+ let ind = ind - star_indent
+ endif
+
+ if scala#LineEndsInIncomplete(prevline)
+ call scala#ConditionalConfirm("19")
+ return ind
+ endif
+
+ if scala#LineIsAClosingXML(prevline)
+ if scala#LineCompletesXML(prevlnum, prevline)
+ call scala#ConditionalConfirm("20a")
+ return ind - &shiftwidth
+ else
+ call scala#ConditionalConfirm("20b")
+ return ind
+ endif
+ endif
+
+ if ind == originalIndentValue
+ "let indentMultiplier = scala#LineCompletesDefValr(prevlnum, prevline)
+ "if indentMultiplier != 0
+ " call scala#ConditionalConfirm("19a")
+ " let ind = ind - (indentMultiplier * &shiftwidth)
+ let defValrLine = scala#Test(prevlnum, prevline, '{', '}')
+ if defValrLine != -1
+ call scala#ConditionalConfirm("21a")
+ let ind = indent(defValrLine)
+ elseif lineCompletedBrackets == 0
+ call scala#ConditionalConfirm("21b")
+ if scala#GetLine(prevnonblank(prevlnum - 1)) =~ '^.*\<else\>\s*\%(//.*\)\?$'
+ call scala#ConditionalConfirm("21c")
+ let ind = ind - &shiftwidth
+ elseif scala#LineCompletesIfElse(prevlnum, prevline)
+ call scala#ConditionalConfirm("21d")
+ let ind = ind - &shiftwidth
+ elseif scala#CountParens(curline) < 0 && curline =~ '^\s*)' && scala#GetLine(scala#GetLineThatMatchesBracket('(', ')')) =~ '.*(\s*$'
+ " Handles situations that look like this:
+ "
+ " val a = func(
+ " 10
+ " )
+ "
+ " or
+ "
+ " val a = func(
+ " 10
+ " ).somethingHere()
+ call scala#ConditionalConfirm("21e")
+ let ind = ind - &shiftwidth
+ endif
+ endif
+ endif
+
+ call scala#ConditionalConfirm("returning " . ind)
+
+ return ind
+endfunction
+
+let &cpo = s:keepcpo
+unlet s:keepcpo
+
+" vim:set sw=2 sts=2 ts=8 et:
+" vim600:fdm=marker fdl=1 fdc=0:
diff --git a/runtime/keymap/pinyin.vim b/runtime/keymap/pinyin.vim
index 757850b83..253814c75 100644
--- a/runtime/keymap/pinyin.vim
+++ b/runtime/keymap/pinyin.vim
@@ -1,5 +1,5 @@
" Vim Keymap file for Hanyu Pinyin tone marks through numbers.
-" Maintainer: Fredrik Roubert <roubert@df.lth.se>
+" Maintainer: Fredrik Roubert <fredrik@roubert.name>
" Last Changed: February 15, 2004
" All characters are given literally.
diff --git a/runtime/optwin.vim b/runtime/optwin.vim
index 9a0fcd12b..d759c044a 100644
--- a/runtime/optwin.vim
+++ b/runtime/optwin.vim
@@ -1,7 +1,7 @@
" These commands create the option window.
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
-" Last Change: 2016 Aug 12
+" Last Change: 2016 Aug 21
" If there already is an option window, jump to that one.
if bufwinnr("option-window") > 0
@@ -1203,8 +1203,8 @@ endif
if has("langmap")
call append("$", "langmap\tlist of characters that are translated in Normal mode")
call <SID>OptionG("lmap", &lmap)
- call append("$", "langnoremap\tdon't apply 'langmap' to mapped characters")
- call <SID>BinOptionG("lnr", &lnr)
+ call append("$", "langremap\tapply 'langmap' to mapped characters")
+ call <SID>BinOptionG("lrm", &lrm)
endif
if has("xim")
call append("$", "imdisable\twhen set never use IM; overrules following IM options")
diff --git a/runtime/pack/dist/opt/matchit/plugin/matchit.vim b/runtime/pack/dist/opt/matchit/plugin/matchit.vim
index 42a6c3e5d..22acb0613 100644
--- a/runtime/pack/dist/opt/matchit/plugin/matchit.vim
+++ b/runtime/pack/dist/opt/matchit/plugin/matchit.vim
@@ -1,8 +1,9 @@
" matchit.vim: (global plugin) Extended "%" matching
-" Last Change: Fri Jan 25 10:00 AM 2008 EST
+" Last Change: 2016 Aug 21
" Maintainer: Benji Fisher PhD <benji@member.AMS.org>
" Version: 1.13.2, for Vim 6.3+
" Fix from Fernando Torres included.
+" Improvement from Ken Takata included.
" URL: http://www.vim.org/script.php?script_id=39
" Documentation:
@@ -44,6 +45,7 @@ endif
let loaded_matchit = 1
let s:last_mps = ""
let s:last_words = ":"
+let s:patBR = ""
let s:save_cpo = &cpo
set cpo&vim
@@ -121,8 +123,8 @@ function! s:Match_wrapper(word, forward, mode) range
execute "let match_words =" b:match_words
endif
" Thanks to Preben "Peppe" Guldberg and Bram Moolenaar for this suggestion!
- if (match_words != s:last_words) || (&mps != s:last_mps) ||
- \ exists("b:match_debug")
+ if (match_words != s:last_words) || (&mps != s:last_mps)
+ \ || exists("b:match_debug")
let s:last_mps = &mps
" The next several lines were here before
" BF started messing with this script.
@@ -148,6 +150,10 @@ function! s:Match_wrapper(word, forward, mode) range
if exists("b:match_debug")
let b:match_pat = s:pat
endif
+ " Reconstruct the version with unresolved backrefs.
+ let s:patBR = substitute(match_words.',',
+ \ s:notslash.'\zs[,:]*,[,:]*', ',', 'g')
+ let s:patBR = substitute(s:patBR, s:notslash.'\zs:\{2,}', ':', 'g')
endif
" Second step: set the following local variables:
@@ -192,14 +198,10 @@ function! s:Match_wrapper(word, forward, mode) range
" group = colon-separated list of patterns, one of which matches
" = ini:mid:fin or ini:fin
"
- " Reconstruct the version with unresolved backrefs.
- let patBR = substitute(match_words.',',
- \ s:notslash.'\zs[,:]*,[,:]*', ',', 'g')
- let patBR = substitute(patBR, s:notslash.'\zs:\{2,}', ':', 'g')
" Now, set group and groupBR to the matching group: 'if:endif' or
" 'while:endwhile' or whatever. A bit of a kluge: s:Choose() returns
" group . "," . groupBR, and we pick it apart.
- let group = s:Choose(s:pat, matchline, ",", ":", prefix, suffix, patBR)
+ let group = s:Choose(s:pat, matchline, ",", ":", prefix, suffix, s:patBR)
let i = matchend(group, s:notslash . ",")
let groupBR = strpart(group, i)
let group = strpart(group, 0, i-1)
@@ -661,6 +663,7 @@ fun! s:MultiMatch(spflag, mode)
\ exists("b:match_debug")
let s:last_words = match_words
let s:last_mps = &mps
+ let match_words = match_words . (strlen(match_words) ? "," : "") . default
if match_words !~ s:notslash . '\\\d'
let s:do_BR = 0
let s:pat = match_words
@@ -668,8 +671,8 @@ fun! s:MultiMatch(spflag, mode)
let s:do_BR = 1
let s:pat = s:ParseWords(match_words)
endif
- let s:all = '\%(' . substitute(s:pat . (strlen(s:pat)?",":"") . default,
- \ '[,:]\+','\\|','g') . '\)'
+ let s:all = '\%(' . substitute(s:pat . (strlen(s:pat) ? "," : "") . default,
+ \ '[,:]\+', '\\|', 'g') . '\)'
if exists("b:match_debug")
let b:match_pat = s:pat
endif
diff --git a/runtime/syntax/fortran.vim b/runtime/syntax/fortran.vim
index b470e56f6..06e5390c6 100644
--- a/runtime/syntax/fortran.vim
+++ b/runtime/syntax/fortran.vim
@@ -1,7 +1,7 @@
" Vim syntax file
" Language: Fortran 2008 (and older: Fortran 2003, 95, 90, and 77)
-" Version: 0.97
-" Last Change: 2016 Feb. 26
+" Version: 0.98
+" Last Change: 2016 Aug. 26
" Maintainer: Ajit J. Thakkar <ajit@unb.ca>; <http://www2.unb.ca/~ajit/>
" Usage: For instructions, do :help fortran-syntax from Vim
" Credits:
@@ -10,7 +10,8 @@
" in chronological order, by:
" Andrej Panjkov, Bram Moolenaar, Thomas Olsen, Michael Sternberg, Christian Reile,
" Walter Dieudonn, Alexander Wagner, Roman Bertle, Charles Rendleman,
-" Andrew Griffiths, Joe Krahn, Hendrik Merx, Matt Thompson, and Jan Hermann.
+" Andrew Griffiths, Joe Krahn, Hendrik Merx, Matt Thompson, Jan Hermann,
+" Stefano Zaghi and Vishnu Krishnan.
if exists("b:current_syntax")
finish
@@ -108,6 +109,7 @@ syn match fortranUnitHeader "\<subroutine\>"
syn keyword fortranCall call
syn match fortranUnitHeader "\<function\>"
syn match fortranUnitHeader "\<program\>"
+syn match fortranUnitHeader "\<block\>"
syn keyword fortranKeyword return stop
syn keyword fortranConditional else then
syn match fortranConditional "\<if\>"
@@ -208,6 +210,7 @@ syn match fortranStorageClass "\<kind\s*="me=s+4
syn match fortranStorageClass "\<len\s*="me=s+3
syn match fortranUnitHeader "\<module\>"
+syn match fortranUnitHeader "\<submodule\>"
syn keyword fortranUnitHeader use only contains
syn keyword fortranUnitHeader result operator assignment
syn match fortranUnitHeader "\<interface\>"
@@ -231,8 +234,10 @@ syn match fortranIntrinsic "\<kind\>\s*[(,]"me=s+4
syn match fortranUnitHeader "\<end\s*function"
syn match fortranUnitHeader "\<end\s*interface"
syn match fortranUnitHeader "\<end\s*module"
+syn match fortranUnitHeader "\<end\s*submodule"
syn match fortranUnitHeader "\<end\s*program"
syn match fortranUnitHeader "\<end\s*subroutine"
+syn match fortranUnitHeader "\<end\s*block"
syn match fortranRepeat "\<end\s*do"
syn match fortranConditional "\<end\s*where"
syn match fortranConditional "\<select\s*case"
@@ -267,6 +272,7 @@ syn match fortranRepeat "\<end\s*forall"
syn keyword fortranIntrinsic null cpu_time
syn match fortranType "\<elemental\>"
syn match fortranType "\<pure\>"
+syn match fortranType "\<impure\>"
if exists("fortran_more_precise")
syn match fortranConstructName "\(\<end\s*forall\s\+\)\@<=\a\w*\>"
endif
@@ -286,8 +292,9 @@ if b:fortran_dialect == "f08"
syn keyword fortranReadWrite flush wait
syn keyword fortranIO decimal round iomsg
- syn keyword fortranType asynchronous nopass non_overridable pass protected volatile abstract extends import
+ syn keyword fortranType asynchronous nopass non_overridable pass protected volatile extends import
syn keyword fortranType non_intrinsic value bind deferred generic final enumerator
+ syn match fortranType "\<abstract\>"
syn match fortranType "\<class\>"
syn match fortranType "\<associate\>"
syn match fortranType "\<end\s*associate"
@@ -305,6 +312,7 @@ if b:fortran_dialect == "f08"
syn keyword fortranIntrinsic bge bgt ble blt dshiftl dshiftr findloc iall iany iparity image_index lcobound ucobound maskl maskr num_images parity popcnt poppar shifta shiftl shiftr this_image
syn keyword fortranIO newunit
syn keyword fortranType contiguous
+ syn keyword fortranRepeat concurrent
" CUDA fortran
syn match fortranTypeCUDA "\<attributes\>"
@@ -383,20 +391,22 @@ if exists("fortran_fold")
if (b:fortran_fixed_source == 1)
syn region fortranProgram transparent fold keepend start="^\s*program\s\+\z(\a\w*\)" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*\(program\(\s\+\z1\>\)\=\|$\)" contains=ALLBUT,fortranModule
+ syn region fortranModule transparent fold keepend start="^\s*submodule\s\+(\a\w*\s*\(:\a\w*\s*\)*)\s*\z\(\a\w*\)" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*\(submodule\(\s\+\z1\>\)\=\|$\)" contains=ALLBUT,fortranProgram,fortranModule
syn region fortranModule transparent fold keepend start="^\s*module\s\+\(procedure\)\@!\z(\a\w*\)" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*\(module\(\s\+\z1\>\)\=\|$\)" contains=ALLBUT,fortranProgram
- syn region fortranFunction transparent fold keepend extend start="^\s*\(elemental \|pure \|recursive \)\=\s*\(\(\(real \|integer \|logical \|complex \|double \s*precision \)\s*\((\(\s*kind\s*=\)\=\s*\w\+\s*)\)\=\)\|type\s\+(\s*\w\+\s*) \|character \((\(\s*len\s*=\)\=\s*\d\+\s*)\|(\(\s*kind\s*=\)\=\s*\w\+\s*)\)\=\)\=\s*function\s\+\z(\a\w*\)" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*\($\|function\(\s\+\z1\>\)\=\)" contains=ALLBUT,fortranProgram,fortranModule
- syn region fortranSubroutine transparent fold keepend extend start="^\s*\(elemental \|pure \|recursive \)\=\s*subroutine\s\+\z(\a\w*\)" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*\($\|subroutine\(\s\+\z1\>\)\=\)" contains=ALLBUT,fortranProgram,fortranModule
+ syn region fortranFunction transparent fold keepend extend start="^\s*\(elemental \|pure \|impure \|module \|recursive \)\=\s*\(\(\(real \|integer \|logical \|complex \|double \s*precision \)\s*\((\(\s*kind\s*=\)\=\s*\w\+\s*)\)\=\)\|type\s\+(\s*\w\+\s*) \|character \((\(\s*len\s*=\)\=\s*\d\+\s*)\|(\(\s*kind\s*=\)\=\s*\w\+\s*)\)\=\)\=\s*function\s\+\z(\a\w*\)" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*\($\|function\(\s\+\z1\>\)\=\)" contains=ALLBUT,fortranProgram,fortranModule
+ syn region fortranSubroutine transparent fold keepend extend start="^\s*\(elemental \|pure \|impure \|module \|recursive \)\=\s*subroutine\s\+\z(\a\w*\)" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*\($\|subroutine\(\s\+\z1\>\)\=\)" contains=ALLBUT,fortranProgram,fortranModule
syn region fortranBlockData transparent fold keepend start="\<block\s*data\(\s\+\z(\a\w*\)\)\=" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*\($\|block\s*data\(\s\+\z1\>\)\=\)" contains=ALLBUT,fortranProgram,fortranModule,fortranSubroutine,fortranFunction,fortran77Loop,fortranCase,fortran90Loop,fortranIfBlock
- syn region fortranInterface transparent fold keepend extend start="^\s*interface\>" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*interface\>" contains=ALLBUT,fortranProgram,fortranModule,fortran77Loop,fortranCase,fortran90Loop,fortranIfBlock
- syn region fortranTypeDef transparent fold keepend extend start="^\s*type\s*\(,\s*\(public\|private\)\)\=\s*::" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*type\>" contains=ALLBUT,fortranProgram,fortranModule,fortran77Loop,fortranCase,fortran90Loop,fortranIfBlock
+ syn region fortranInterface transparent fold keepend extend start="^\s*\(abstract \)\=\s*interface\>" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*interface\>" contains=ALLBUT,fortranProgram,fortranModule,fortran77Loop,fortranCase,fortran90Loop,fortranIfBlock
+ syn region fortranTypeDef transparent fold keepend extend start="^\s*type\s*\(,\s*\(public\|private\|abstract\)\)\=\s*::" skip="^\([!c*]\|\s*#\).*$" excludenl end="\<end\s*type\>" contains=ALLBUT,fortranProgram,fortranModule,fortran77Loop,fortranCase,fortran90Loop,fortranIfBlock,fortranInterface
else
syn region fortranProgram transparent fold keepend start="^\s*program\s\+\z(\a\w*\)" skip="^\s*[!#].*$" excludenl end="\<end\s*\(program\(\s\+\z1\>\)\=\|$\)" contains=ALLBUT,fortranModule
+ syn region fortranModule transparent fold keepend start="^\s*submodule\s\+(\a\w*\s*\(:\a\w*\s*\)*)\s*\z\(\a\w*\)" skip="^\s*[!#].*$" excludenl end="\<end\s*\(submodule\(\s\+\z1\>\)\=\|$\)" contains=ALLBUT,fortranProgram,fortranModule
syn region fortranModule transparent fold keepend start="^\s*module\s\+\(procedure\)\@!\z(\a\w*\)" skip="^\s*[!#].*$" excludenl end="\<end\s*\(module\(\s\+\z1\>\)\=\|$\)" contains=ALLBUT,fortranProgram
- syn region fortranFunction transparent fold keepend extend start="^\s*\(elemental \|pure \|recursive \)\=\s*\(\(\(real \|integer \|logical \|complex \|double \s*precision \)\s*\((\(\s*kind\s*=\)\=\s*\w\+\s*)\)\=\)\|type\s\+(\s*\w\+\s*) \|character \((\(\s*len\s*=\)\=\s*\d\+\s*)\|(\(\s*kind\s*=\)\=\s*\w\+\s*)\)\=\)\=\s*function\s\+\z(\a\w*\)" skip="^\s*[!#].*$" excludenl end="\<end\s*\($\|function\(\s\+\z1\>\)\=\)" contains=ALLBUT,fortranProgram,fortranModule
- syn region fortranSubroutine transparent fold keepend extend start="^\s*\(elemental \|pure \|recursive \)\=\s*subroutine\s\+\z(\a\w*\)" skip="^\s*[!#].*$" excludenl end="\<end\s*\($\|subroutine\(\s\+\z1\>\)\=\)" contains=ALLBUT,fortranProgram,fortranModule
+ syn region fortranFunction transparent fold keepend extend start="^\s*\(elemental \|pure \|impure \|module \|recursive \)\=\s*\(\(\(real \|integer \|logical \|complex \|double \s*precision \)\s*\((\(\s*kind\s*=\)\=\s*\w\+\s*)\)\=\)\|type\s\+(\s*\w\+\s*) \|character \((\(\s*len\s*=\)\=\s*\d\+\s*)\|(\(\s*kind\s*=\)\=\s*\w\+\s*)\)\=\)\=\s*function\s\+\z(\a\w*\)" skip="^\s*[!#].*$" excludenl end="\<end\s*\($\|function\(\s\+\z1\>\)\=\)" contains=ALLBUT,fortranProgram,fortranModule
+ syn region fortranSubroutine transparent fold keepend extend start="^\s*\(elemental \|pure \|impure \|module \|recursive \)\=\s*subroutine\s\+\z(\a\w*\)" skip="^\s*[!#].*$" excludenl end="\<end\s*\($\|subroutine\(\s\+\z1\>\)\=\)" contains=ALLBUT,fortranProgram,fortranModule
syn region fortranBlockData transparent fold keepend start="\<block\s*data\(\s\+\z(\a\w*\)\)\=" skip="^\s*[!#].*$" excludenl end="\<end\s*\($\|block\s*data\(\s\+\z1\>\)\=\)" contains=ALLBUT,fortranProgram,fortranModule,fortranSubroutine,fortranFunction,fortran77Loop,fortranCase,fortran90Loop,fortranIfBlock
- syn region fortranInterface transparent fold keepend extend start="^\s*interface\>" skip="^\s*[!#].*$" excludenl end="\<end\s*interface\>" contains=ALLBUT,fortranProgram,fortranModule,fortran77Loop,fortranCase,fortran90Loop,fortranIfBlock
- syn region fortranTypeDef transparent fold keepend extend start="^\s*type\s*\(,\s*\(public\|private\)\)\=\s*::" skip="^\s*[!#].*$" excludenl end="\<end\s*type\>" contains=ALLBUT,fortranProgram,fortranModule,fortran77Loop,fortranCase,fortran90Loop,fortranIfBlock
+ syn region fortranInterface transparent fold keepend extend start="^\s*\(abstract \)\=\s*interface\>" skip="^\s*[!#].*$" excludenl end="\<end\s*interface\>" contains=ALLBUT,fortranProgram,fortranModule,fortran77Loop,fortranCase,fortran90Loop,fortranIfBlock
+ syn region fortranTypeDef transparent fold keepend extend start="^\s*type\s*\(,\s*\(public\|private\|abstract\)\)\=\s*::" skip="^\s*[!#].*$" excludenl end="\<end\s*type\>" contains=ALLBUT,fortranProgram,fortranModule,fortran77Loop,fortranCase,fortran90Loop,fortranIfBlock,fortranInterface
endif
if exists("fortran_fold_conditionals")
diff --git a/runtime/syntax/muttrc.vim b/runtime/syntax/muttrc.vim
index abe9bfd76..94b27313b 100644
--- a/runtime/syntax/muttrc.vim
+++ b/runtime/syntax/muttrc.vim
@@ -2,10 +2,9 @@
" Language: Mutt setup files
" Original: Preben 'Peppe' Guldberg <peppe-vim@wielders.org>
" Maintainer: Kyle Wheeler <kyle-muttrc.vim@memoryhole.net>
-" Last Change: 2 Feb 2012
+" Last Change: 18 August 2016
-" This file covers mutt version 1.5.21 (and most of the mercurial tip)
-" Included are also a few features from 1.4.2.1
+" This file covers mutt version 1.7.0
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
@@ -98,7 +97,7 @@ syn match muttrcSetNumAssignment contained skipwhite /=\s*'\d\+'/hs=s+1 nextgrou
" Now catch some email addresses and headers (purified version from mail.vim)
syn match muttrcEmail "[a-zA-Z0-9._-]\+@[a-zA-Z0-9./-]\+"
-syn match muttrcHeader "\<\%(From\|To\|C[Cc]\|B[Cc][Cc]\|Reply-To\|Subject\|Return-Path\|Received\|Date\|Replied\|Attach\)\>:\="
+syn match muttrcHeader "\<\c\%(From\|To\|C[Cc]\|B[Cc][Cc]\|Reply-To\|Subject\|Return-Path\|Received\|Date\|Replied\|Attach\)\>:\="
syn match muttrcKeySpecial contained +\%(\\[Cc'"]\|\^\|\\[01]\d\{2}\)+
syn match muttrcKey contained "\S\+" contains=muttrcKeySpecial,muttrcKeyName
@@ -109,143 +108,146 @@ syn match muttrcKeyName contained "\\[trne]"
syn match muttrcKeyName contained "\c<\%(BackSpace\|BackTab\|Delete\|Down\|End\|Enter\|Esc\|Home\|Insert\|Left\|PageDown\|PageUp\|Return\|Right\|Space\|Tab\|Up\)>"
syn match muttrcKeyName contained "<F[0-9]\+>"
-syn keyword muttrcVarBool skipwhite contained allow_8bit allow_ansi arrow_cursor ascii_chars askbcc askcc attach_split auto_tag autoedit beep beep_new nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained bounce_delivered braille_friendly check_new check_mbox_size nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained collapse_unread confirmappend confirmcreate crypt_autoencrypt nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained crypt_autopgp crypt_autosign crypt_autosmime crypt_replyencrypt nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained crypt_replysign crypt_replysignencrypted crypt_timestamp nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained crypt_use_gpgme crypt_use_pka delete_untag digest_collapse duplicate_threads nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained edit_hdrs edit_headers encode_from envelope_from fast_reply nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained fcc_clear followup_to force_name forw_decode nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained forw_decrypt forw_quote forward_decode forward_decrypt nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained forward_quote hdrs header help hidden_host hide_limited nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained hide_missing hide_thread_subject hide_top_limited nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained hide_top_missing honor_disposition ignore_linear_white_space ignore_list_reply_to imap_check_subscribed nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained imap_list_subscribed imap_passive imap_peek imap_servernoise nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained implicit_autoview include_onlyfirst keep_flagged nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained mailcap_sanitize maildir_header_cache_verify maildir_trash nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained mark_old markers menu_move_off menu_scroll message_cache_clean meta_key nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained metoo mh_purge mime_forward_decode narrow_tree pager_stop nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained pgp_auto_decode pgp_auto_traditional pgp_autoencrypt nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained pgp_autoinline pgp_autosign pgp_check_exit nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained pgp_create_traditional pgp_ignore_subkeys pgp_long_ids nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained pgp_replyencrypt pgp_replyinline pgp_replysign nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained pgp_replysignencrypted pgp_retainable_sigs pgp_show_unusable nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained pgp_strict_enc pgp_use_gpg_agent pipe_decode pipe_split nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained pop_auth_try_all pop_last print_decode print_split nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained prompt_after read_only reply_self resolve reverse_alias nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained reverse_name reverse_realname rfc2047_parameters save_address nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained save_empty save_name score sig_dashes sig_on_top nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained smart_wrap smime_ask_cert_label smime_decrypt_use_default_key nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained smime_is_default sort_re ssl_force_tls ssl_use_sslv2 nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained ssl_use_sslv3 ssl_use_tlsv1 ssl_usesystemcerts ssl_verify_dates ssl_verify_host status_on_top nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained strict_mime strict_threads suspend text_flowed thorough_search nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained thread_received tilde uncollapse_jump use_8bitmime nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained use_domain use_envelope_from use_from use_idn use_ipv6 nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained user_agent wait_key weed wrap_search write_bcc nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-
-syn keyword muttrcVarBool skipwhite contained noallow_8bit noallow_ansi noarrow_cursor noascii_chars noaskbcc nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained noaskcc noattach_split noauto_tag noautoedit nobeep nobeep_new nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained nobounce_delivered nobraille_friendly nocheck_new nocollapse_unread nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained noconfirmappend noconfirmcreate nocrypt_autoencrypt nocrypt_autopgp nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained nocrypt_autosign nocrypt_autosmime nocrypt_replyencrypt nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained nocrypt_replysign nocrypt_replysignencrypted nocrypt_timestamp nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained nocrypt_use_gpgme nodelete_untag nodigest_collapse noduplicate_threads nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained noedit_hdrs noedit_headers noencode_from noenvelope_from nofast_reply nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained nofcc_clear nofollowup_to noforce_name noforw_decode nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained noforw_decrypt noforw_quote noforward_decode noforward_decrypt nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained noforward_quote nohdrs noheader nohelp nohidden_host nohide_limited nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained nohide_missing nohide_thread_subject nohide_top_limited nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained nohide_top_missing nohonor_disposition noignore_list_reply_to noimap_check_subscribed nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained noimap_list_subscribed noimap_passive noimap_peek noimap_servernoise nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained noimplicit_autoview noinclude_onlyfirst nokeep_flagged nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained nomailcap_sanitize nomaildir_header_cache_verify nomaildir_trash nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained nomark_old nomarkers nomenu_move_off nomenu_scroll nometa_key nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained nometoo nomh_purge nomime_forward_decode nonarrow_tree nopager_stop nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained nopgp_auto_decode nopgp_auto_traditional nopgp_autoencrypt nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained nopgp_autoinline nopgp_autosign nopgp_check_exit nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained nopgp_create_traditional nopgp_ignore_subkeys nopgp_long_ids nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained nopgp_replyencrypt nopgp_replyinline nopgp_replysign nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained nopgp_replysignencrypted nopgp_retainable_sigs nopgp_show_unusable nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained nopgp_strict_enc nopgp_use_gpg_agent nopipe_decode nopipe_split nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained nopop_auth_try_all nopop_last noprint_decode noprint_split nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained noprompt_after noread_only noreply_self noresolve noreverse_alias nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained noreverse_name noreverse_realname norfc2047_parameters nosave_address nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained nosave_empty nosave_name noscore nosig_dashes nosig_on_top nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained nosmart_wrap nosmime_ask_cert_label nosmime_decrypt_use_default_key nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained nosmime_is_default nosort_re nossl_force_tls nossl_use_sslv2 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained nossl_use_sslv3 nossl_use_tlsv1 nossl_usesystemcerts nostatus_on_top nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained nostrict_threads nosuspend notext_flowed nothorough_search nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained nothread_received notilde nouncollapse_jump nouse_8bitmime nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained nouse_domain nouse_envelope_from nouse_from nouse_idn nouse_ipv6 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained nouser_agent nowait_key noweed nowrap_search nowrite_bcc nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-
-syn keyword muttrcVarBool skipwhite contained invallow_8bit invallow_ansi invarrow_cursor invascii_chars invaskbcc nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invaskcc invattach_split invauto_tag invautoedit invbeep invbeep_new nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invbounce_delivered invbraille_friendly invcheck_new invcollapse_unread nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invconfirmappend invconfirmcreate invcrypt_autoencrypt invcrypt_autopgp nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invcrypt_autosign invcrypt_autosmime invcrypt_replyencrypt nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invcrypt_replysign invcrypt_replysignencrypted invcrypt_timestamp nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invcrypt_use_gpgme invdelete_untag invdigest_collapse invduplicate_threads nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invedit_hdrs invedit_headers invencode_from invenvelope_from invfast_reply nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invfcc_clear invfollowup_to invforce_name invforw_decode nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invforw_decrypt invforw_quote invforward_decode invforward_decrypt nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invforward_quote invhdrs invheader invhelp invhidden_host invhide_limited nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invhide_missing invhide_thread_subject invhide_top_limited nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invhide_top_missing invhonor_disposition invignore_list_reply_to invimap_check_subscribed nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invimap_list_subscribed invimap_passive invimap_peek invimap_servernoise nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invimplicit_autoview invinclude_onlyfirst invkeep_flagged nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invmailcap_sanitize invmaildir_header_cache_verify invmaildir_trash nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invmark_old invmarkers invmenu_move_off invmenu_scroll invmeta_key nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invmetoo invmh_purge invmime_forward_decode invnarrow_tree invpager_stop nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invpgp_auto_decode invpgp_auto_traditional invpgp_autoencrypt nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invpgp_autoinline invpgp_autosign invpgp_check_exit nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invpgp_create_traditional invpgp_ignore_subkeys invpgp_long_ids nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invpgp_replyencrypt invpgp_replyinline invpgp_replysign nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invpgp_replysignencrypted invpgp_retainable_sigs invpgp_show_unusable nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invpgp_strict_enc invpgp_use_gpg_agent invpipe_decode invpipe_split nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invpop_auth_try_all invpop_last invprint_decode invprint_split nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invprompt_after invread_only invreply_self invresolve invreverse_alias nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invreverse_name invreverse_realname invrfc2047_parameters invsave_address nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invsave_empty invsave_name invscore invsig_dashes invsig_on_top nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invsmart_wrap invsmime_ask_cert_label invsmime_decrypt_use_default_key nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invsmime_is_default invsort_re invssl_force_tls invssl_use_sslv2 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invssl_use_sslv3 invssl_use_tlsv1 invssl_usesystemcerts invstatus_on_top nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invstrict_threads invsuspend invtext_flowed invthorough_search nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invthread_received invtilde invuncollapse_jump invuse_8bitmime nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invuse_domain invuse_envelope_from invuse_from invuse_idn invuse_ipv6 nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarBool skipwhite contained invuser_agent invwait_key invweed invwrap_search invwrite_bcc nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-if use_mutt_sidebar == 1
- syn keyword muttrcVarBool skipwhite contained sidebar_visible sidebar_sort nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-endif
-
-syn keyword muttrcVarQuad skipwhite contained abort_nosubject abort_unmodified bounce copy nextgroup=muttrcSetQuadAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarQuad skipwhite contained crypt_verify_sig delete fcc_attach forward_edit honor_followup_to nextgroup=muttrcSetQuadAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarQuad skipwhite contained include mime_forward mime_forward_rest mime_fwd move nextgroup=muttrcSetQuadAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarQuad skipwhite contained pgp_mime_auto pgp_verify_sig pop_delete pop_reconnect nextgroup=muttrcSetQuadAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarQuad skipwhite contained postpone print quit recall reply_to ssl_starttls nextgroup=muttrcSetQuadAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-
-syn keyword muttrcVarQuad skipwhite contained noabort_nosubject noabort_unmodified nobounce nocopy nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarQuad skipwhite contained nocrypt_verify_sig nodelete nofcc_attach noforward_edit nohonor_followup_to nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarQuad skipwhite contained noinclude nomime_forward nomime_forward_rest nomime_fwd nomove nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarQuad skipwhite contained nopgp_mime_auto nopgp_verify_sig nopop_delete nopop_reconnect nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarQuad skipwhite contained nopostpone noprint noquit norecall noreply_to nossl_starttls nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-
-syn keyword muttrcVarQuad skipwhite contained invabort_nosubject invabort_unmodified invbounce invcopy nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarQuad skipwhite contained invcrypt_verify_sig invdelete invfcc_attach invforward_edit invhonor_followup_to nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarQuad skipwhite contained invinclude invmime_forward invmime_forward_rest invmime_fwd invmove nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarQuad skipwhite contained invpgp_mime_auto invpgp_verify_sig invpop_delete invpop_reconnect nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarQuad skipwhite contained invpostpone invprint invquit invrecall invreply_to invssl_starttls nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-
-syn keyword muttrcVarNum skipwhite contained connect_timeout history imap_keepalive imap_pipeline_depth mail_check nextgroup=muttrcSetNumAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarNum skipwhite contained menu_context net_inc pager_context pager_index_lines pgp_timeout nextgroup=muttrcSetNumAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarNum skipwhite contained pop_checkinterval read_inc save_history score_threshold_delete nextgroup=muttrcSetNumAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarNum skipwhite contained score_threshold_flag score_threshold_read search_context sendmail_wait sleep_time nextgroup=muttrcSetNumAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarNum skipwhite contained smime_timeout ssl_min_dh_prime_bits timeout time_inc wrap wrapmargin nextgroup=muttrcSetNumAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarNum skipwhite contained write_inc nextgroup=muttrcSetNumAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-if use_mutt_sidebar == 1
- syn keyword muttrcVarNum skipwhite contained sidebar_width nextgroup=muttrcSetNumAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-endif
+syn keyword muttrcVarBool skipwhite contained
+ \ allow_8bit allow_ansi arrow_cursor ascii_chars askbcc askcc attach_split
+ \ auto_tag autoedit beep beep_new bounce_delivered braille_friendly
+ \ check_mbox_size check_new collapse_unread confirmappend confirmcreate
+ \ crypt_autoencrypt crypt_autopgp crypt_autosign crypt_autosmime
+ \ crypt_confirmhook crypt_opportunistic_encrypt crypt_replyencrypt
+ \ crypt_replysign crypt_replysignencrypted crypt_timestamp crypt_use_gpgme
+ \ crypt_use_pka delete_untag digest_collapse duplicate_threads edit_hdrs
+ \ edit_headers encode_from envelope_from fast_reply fcc_clear followup_to
+ \ force_name forw_decode forw_decrypt forw_quote forward_decode forward_decrypt
+ \ forward_quote hdrs header help hidden_host hide_limited hide_missing
+ \ hide_thread_subject hide_top_limited hide_top_missing honor_disposition
+ \ idn_decode idn_encode ignore_linear_white_space ignore_list_reply_to
+ \ imap_check_subscribed imap_list_subscribed imap_passive imap_peek
+ \ imap_servernoise implicit_autoview include_onlyfirst keep_flagged
+ \ mail_check_recent mail_check_stats mailcap_sanitize maildir_check_cur
+ \ maildir_header_cache_verify maildir_trash mark_old markers menu_move_off
+ \ menu_scroll message_cache_clean meta_key metoo mh_purge mime_forward_decode
+ \ narrow_tree pager_stop pgp_auto_decode pgp_auto_traditional pgp_autoencrypt
+ \ pgp_autoinline pgp_autosign pgp_check_exit pgp_create_traditional
+ \ pgp_ignore_subkeys pgp_long_ids pgp_replyencrypt pgp_replyinline pgp_replysign
+ \ pgp_replysignencrypted pgp_retainable_sigs pgp_show_unusable pgp_strict_enc
+ \ pgp_use_gpg_agent pipe_decode pipe_split pop_auth_try_all pop_last
+ \ postpone_encrypt postpone_encrypt_as print_decode print_split prompt_after
+ \ read_only reflow_space_quotes reflow_text reflow_wrap reply_self resolve
+ \ resume_draft_files resume_edited_draft_files reverse_alias reverse_name
+ \ reverse_realname rfc2047_parameters save_address save_empty save_name score
+ \ sidebar_folder_indent sidebar_new_mail_only sidebar_next_new_wrap
+ \ sidebar_short_path sidebar_sort sidebar_visible sig_dashes sig_on_top
+ \ smart_wrap smime_ask_cert_label smime_decrypt_use_default_key smime_is_default
+ \ sort_re ssl_force_tls ssl_use_sslv2 ssl_use_sslv3 ssl_use_tlsv1
+ \ ssl_usesystemcerts ssl_verify_dates ssl_verify_host status_on_top strict_mime
+ \ strict_threads suspend text_flowed thorough_search thread_received tilde
+ \ ts_enabled uncollapse_jump use_8bitmime use_domain use_envelope_from use_from
+ \ use_idn use_ipv6 user_agent wait_key weed wrap_search write_bcc
+ \ nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
+
+syn keyword muttrcVarBool skipwhite contained
+ \ noallow_8bit noallow_ansi noarrow_cursor noascii_chars noaskbcc noaskcc noattach_split
+ \ noauto_tag noautoedit nobeep nobeep_new nobounce_delivered nobraille_friendly
+ \ nocheck_mbox_size nocheck_new nocollapse_unread noconfirmappend noconfirmcreate
+ \ nocrypt_autoencrypt nocrypt_autopgp nocrypt_autosign nocrypt_autosmime
+ \ nocrypt_confirmhook nocrypt_opportunistic_encrypt nocrypt_replyencrypt
+ \ nocrypt_replysign nocrypt_replysignencrypted nocrypt_timestamp nocrypt_use_gpgme
+ \ nocrypt_use_pka nodelete_untag nodigest_collapse noduplicate_threads noedit_hdrs
+ \ noedit_headers noencode_from noenvelope_from nofast_reply nofcc_clear nofollowup_to
+ \ noforce_name noforw_decode noforw_decrypt noforw_quote noforward_decode noforward_decrypt
+ \ noforward_quote nohdrs noheader nohelp nohidden_host nohide_limited nohide_missing
+ \ nohide_thread_subject nohide_top_limited nohide_top_missing nohonor_disposition
+ \ noidn_decode noidn_encode noignore_linear_white_space noignore_list_reply_to
+ \ noimap_check_subscribed noimap_list_subscribed noimap_passive noimap_peek
+ \ noimap_servernoise noimplicit_autoview noinclude_onlyfirst nokeep_flagged
+ \ nomail_check_recent nomail_check_stats nomailcap_sanitize nomaildir_check_cur
+ \ nomaildir_header_cache_verify nomaildir_trash nomark_old nomarkers nomenu_move_off
+ \ nomenu_scroll nomessage_cache_clean nometa_key nometoo nomh_purge nomime_forward_decode
+ \ nonarrow_tree nopager_stop nopgp_auto_decode nopgp_auto_traditional nopgp_autoencrypt
+ \ nopgp_autoinline nopgp_autosign nopgp_check_exit nopgp_create_traditional
+ \ nopgp_ignore_subkeys nopgp_long_ids nopgp_replyencrypt nopgp_replyinline nopgp_replysign
+ \ nopgp_replysignencrypted nopgp_retainable_sigs nopgp_show_unusable nopgp_strict_enc
+ \ nopgp_use_gpg_agent nopipe_decode nopipe_split nopop_auth_try_all nopop_last
+ \ nopostpone_encrypt nopostpone_encrypt_as noprint_decode noprint_split noprompt_after
+ \ noread_only noreflow_space_quotes noreflow_text noreflow_wrap noreply_self noresolve
+ \ noresume_draft_files noresume_edited_draft_files noreverse_alias noreverse_name
+ \ noreverse_realname norfc2047_parameters nosave_address nosave_empty nosave_name noscore
+ \ nosidebar_folder_indent nosidebar_new_mail_only nosidebar_next_new_wrap
+ \ nosidebar_short_path nosidebar_sort nosidebar_visible nosig_dashes nosig_on_top
+ \ nosmart_wrap nosmime_ask_cert_label nosmime_decrypt_use_default_key nosmime_is_default
+ \ nosort_re nossl_force_tls nossl_use_sslv2 nossl_use_sslv3 nossl_use_tlsv1
+ \ nossl_usesystemcerts nossl_verify_dates nossl_verify_host nostatus_on_top nostrict_mime
+ \ nostrict_threads nosuspend notext_flowed nothorough_search nothread_received notilde
+ \ nots_enabled nouncollapse_jump nouse_8bitmime nouse_domain nouse_envelope_from nouse_from
+ \ nouse_idn nouse_ipv6 nouser_agent nowait_key noweed nowrap_search nowrite_bcc
+ \ nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
+
+syn keyword muttrcVarBool skipwhite contained
+ \ invallow_8bit invallow_ansi invarrow_cursor invascii_chars invaskbcc invaskcc invattach_split
+ \ invauto_tag invautoedit invbeep invbeep_new invbounce_delivered invbraille_friendly
+ \ invcheck_mbox_size invcheck_new invcollapse_unread invconfirmappend invconfirmcreate
+ \ invcrypt_autoencrypt invcrypt_autopgp invcrypt_autosign invcrypt_autosmime
+ \ invcrypt_confirmhook invcrypt_opportunistic_encrypt invcrypt_replyencrypt
+ \ invcrypt_replysign invcrypt_replysignencrypted invcrypt_timestamp invcrypt_use_gpgme
+ \ invcrypt_use_pka invdelete_untag invdigest_collapse invduplicate_threads invedit_hdrs
+ \ invedit_headers invencode_from invenvelope_from invfast_reply invfcc_clear invfollowup_to
+ \ invforce_name invforw_decode invforw_decrypt invforw_quote invforward_decode invforward_decrypt
+ \ invforward_quote invhdrs invheader invhelp invhidden_host invhide_limited invhide_missing
+ \ invhide_thread_subject invhide_top_limited invhide_top_missing invhonor_disposition
+ \ invidn_decode invidn_encode invignore_linear_white_space invignore_list_reply_to
+ \ invimap_check_subscribed invimap_list_subscribed invimap_passive invimap_peek
+ \ invimap_servernoise invimplicit_autoview invinclude_onlyfirst invkeep_flagged
+ \ invmail_check_recent invmail_check_stats invmailcap_sanitize invmaildir_check_cur
+ \ invmaildir_header_cache_verify invmaildir_trash invmark_old invmarkers invmenu_move_off
+ \ invmenu_scroll invmessage_cache_clean invmeta_key invmetoo invmh_purge invmime_forward_decode
+ \ invnarrow_tree invpager_stop invpgp_auto_decode invpgp_auto_traditional invpgp_autoencrypt
+ \ invpgp_autoinline invpgp_autosign invpgp_check_exit invpgp_create_traditional
+ \ invpgp_ignore_subkeys invpgp_long_ids invpgp_replyencrypt invpgp_replyinline invpgp_replysign
+ \ invpgp_replysignencrypted invpgp_retainable_sigs invpgp_show_unusable invpgp_strict_enc
+ \ invpgp_use_gpg_agent invpipe_decode invpipe_split invpop_auth_try_all invpop_last
+ \ invpostpone_encrypt invpostpone_encrypt_as invprint_decode invprint_split invprompt_after
+ \ invread_only invreflow_space_quotes invreflow_text invreflow_wrap invreply_self invresolve
+ \ invresume_draft_files invresume_edited_draft_files invreverse_alias invreverse_name
+ \ invreverse_realname invrfc2047_parameters invsave_address invsave_empty invsave_name invscore
+ \ invsidebar_folder_indent invsidebar_new_mail_only invsidebar_next_new_wrap
+ \ invsidebar_short_path invsidebar_sort invsidebar_visible invsig_dashes invsig_on_top
+ \ invsmart_wrap invsmime_ask_cert_label invsmime_decrypt_use_default_key invsmime_is_default
+ \ invsort_re invssl_force_tls invssl_use_sslv2 invssl_use_sslv3 invssl_use_tlsv1
+ \ invssl_usesystemcerts invssl_verify_dates invssl_verify_host invstatus_on_top invstrict_mime
+ \ invstrict_threads invsuspend invtext_flowed invthorough_search invthread_received invtilde
+ \ invts_enabled invuncollapse_jump invuse_8bitmime invuse_domain invuse_envelope_from invuse_from
+ \ invuse_idn invuse_ipv6 invuser_agent invwait_key invweed invwrap_search invwrite_bcc
+ \ nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
+
+syn keyword muttrcVarQuad skipwhite contained
+ \ abort_nosubject abort_unmodified bounce copy crypt_verify_sig delete
+ \ fcc_attach forward_edit honor_followup_to include mime_forward
+ \ mime_forward_rest mime_fwd move pgp_mime_auto pgp_verify_sig pop_delete
+ \ pop_reconnect postpone print quit recall reply_to ssl_starttls
+ \ nextgroup=muttrcSetQuadAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
+
+syn keyword muttrcVarQuad skipwhite contained
+ \ noabort_nosubject noabort_unmodified nobounce nocopy nocrypt_verify_sig nodelete
+ \ nofcc_attach noforward_edit nohonor_followup_to noinclude nomime_forward
+ \ nomime_forward_rest nomime_fwd nomove nopgp_mime_auto nopgp_verify_sig nopop_delete
+ \ nopop_reconnect nopostpone noprint noquit norecall noreply_to nossl_starttls
+ \ nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
+
+syn keyword muttrcVarQuad skipwhite contained
+ \ invabort_nosubject invabort_unmodified invbounce invcopy invcrypt_verify_sig invdelete
+ \ invfcc_attach invforward_edit invhonor_followup_to invinclude invmime_forward
+ \ invmime_forward_rest invmime_fwd invmove invpgp_mime_auto invpgp_verify_sig invpop_delete
+ \ invpop_reconnect invpostpone invprint invquit invrecall invreply_to invssl_starttls
+ \ nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
+
+syn keyword muttrcVarNum skipwhite contained
+ \ connect_timeout history imap_keepalive imap_pipeline_depth mail_check
+ \ mail_check_stats_interval menu_context net_inc pager_context pager_index_lines
+ \ pgp_timeout pop_checkinterval read_inc save_history score_threshold_delete
+ \ score_threshold_flag score_threshold_read search_context sendmail_wait
+ \ sidebar_width sleep_time smime_timeout ssl_min_dh_prime_bits time_inc timeout
+ \ wrap wrap_headers wrapmargin write_inc
+ \ nextgroup=muttrcSetNumAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
syn match muttrcFormatErrors contained /%./
@@ -349,7 +351,7 @@ syn keyword muttrcVarStr contained skipwhite query_format nextgroup=muttrcVarEqu
syn match muttrcVarEqualsQueryFmt contained skipwhite "=" nextgroup=muttrcQueryFormatStr
syn keyword muttrcVarStr contained skipwhite pgp_decode_command pgp_verify_command pgp_decrypt_command pgp_clearsign_command pgp_sign_command pgp_encrypt_sign_command pgp_encrypt_only_command pgp_import_command pgp_export_command pgp_verify_key_command pgp_list_secring_command pgp_list_pubring_command nextgroup=muttrcVarEqualsPGPCmdFmt
syn match muttrcVarEqualsPGPCmdFmt contained skipwhite "=" nextgroup=muttrcPGPCmdFormatStr
-syn keyword muttrcVarStr contained skipwhite status_format nextgroup=muttrcVarEqualsStatusFmt
+syn keyword muttrcVarStr contained skipwhite ts_icon_format ts_status_format status_format nextgroup=muttrcVarEqualsStatusFmt
syn match muttrcVarEqualsStatusFmt contained skipwhite "=" nextgroup=muttrcStatusFormatStr
syn keyword muttrcVarStr contained skipwhite pgp_getkeys_command nextgroup=muttrcVarEqualsPGPGetKeysFmt
syn match muttrcVarEqualsPGPGetKeysFmt contained skipwhite "=" nextgroup=muttrcPGPGetKeysFormatStr
@@ -361,34 +363,29 @@ syn match muttrcVarEqualsStrftimeFmt contained skipwhite "=" nextgroup=muttrcStr
syn match muttrcVPrefix contained /[?&]/ nextgroup=muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
syn match muttrcVarStr contained skipwhite 'my_[a-zA-Z0-9_]\+' nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarStr contained skipwhite alias_file assumed_charset attach_charset attach_sep nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarStr contained skipwhite certificate_file charset config_charset content_type nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarStr contained skipwhite default_hook display_filter dotlock_program dsn_notify nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarStr contained skipwhite dsn_return editor entropy_file envelope_from_address escape folder nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarStr contained skipwhite forw_format forward_format from gecos_mask hdr_format nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarStr contained skipwhite header_cache header_cache_compress header_cache_pagesize nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarStr contained skipwhite history_file hostname imap_authenticators nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarStr contained skipwhite imap_delim_chars imap_headers imap_idle imap_login imap_pass nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarStr contained skipwhite imap_user indent_str indent_string ispell locale mailcap_path nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarStr contained skipwhite mask mbox mbox_type message_cachedir mh_seq_flagged mh_seq_replied nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarStr contained skipwhite mh_seq_unseen mixmaster msg_format pager nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarStr contained skipwhite pgp_good_sign nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarStr contained skipwhite pgp_mime_signature_filename nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarStr contained skipwhite pgp_mime_signature_description pgp_sign_as nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarStr contained skipwhite pgp_sort_keys nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarStr contained skipwhite pipe_sep pop_authenticators pop_host pop_pass pop_user post_indent_str nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarStr contained skipwhite post_indent_string postponed preconnect print_cmd print_command nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarStr contained skipwhite query_command quote_regexp realname record reply_regexp send_charset nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarStr contained skipwhite sendmail shell signature simple_search smileys smime_ca_location nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarStr contained skipwhite smime_certificates smime_default_key nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarStr contained skipwhite smime_encrypt_with nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarStr contained skipwhite smime_keys smime_sign_as nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarStr contained skipwhite smtp_url smtp_authenticators smtp_pass sort sort_alias sort_aux nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarStr contained skipwhite sort_browser spam_separator spoolfile ssl_ca_certificates_file ssl_client_cert nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-syn keyword muttrcVarStr contained skipwhite status_chars tmpdir to_chars tunnel visual nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-if use_mutt_sidebar == 1
- syn keyword muttrcVarStr skipwhite contained sidebar_delim nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
-endif
+syn keyword muttrcVarStr contained skipwhite
+ \ alias_file assumed_charset attach_charset attach_sep certificate_file charset
+ \ config_charset content_type default_hook display_filter dotlock_program
+ \ dsn_notify dsn_return editor entropy_file envelope_from_address escape folder
+ \ forw_format forward_format from gecos_mask hdr_format header_cache
+ \ header_cache_compress header_cache_pagesize history_file hostname
+ \ imap_authenticators imap_delim_chars imap_headers imap_idle imap_login
+ \ imap_pass imap_user indent_str indent_string ispell locale mailcap_path mask
+ \ mbox mbox_type message_cachedir mh_seq_flagged mh_seq_replied mh_seq_unseen
+ \ mixmaster msg_format pager pgp_decryption_okay pgp_good_sign
+ \ pgp_mime_signature_description pgp_mime_signature_filename pgp_sign_as
+ \ pgp_sort_keys pipe_sep pop_authenticators pop_host pop_pass pop_user
+ \ post_indent_str post_indent_string postpone_encrypt_as postponed preconnect
+ \ print_cmd print_command query_command quote_regexp realname record
+ \ reply_regexp send_charset sendmail shell sidebar_delim sidebar_delim_chars
+ \ sidebar_divider_char sidebar_format sidebar_indent_string sidebar_sort_method
+ \ signature simple_search smileys smime_ca_location smime_certificates
+ \ smime_default_key smime_encrypt_with smime_keys smime_sign_as
+ \ smime_sign_digest_alg smtp_authenticators smtp_pass smtp_url sort sort_alias
+ \ sort_aux sort_browser spam_separator spoolfile ssl_ca_certificates_file
+ \ ssl_ciphers ssl_client_cert status_chars tmpdir to_chars trash ts_icon_format
+ \ ts_status_format tunnel visual
+ \ nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
" Present in 1.4.2.1 (pgp_create_traditional was a bool then)
syn keyword muttrcVarBool contained skipwhite imap_force_ssl noimap_force_ssl invimap_force_ssl nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr
@@ -401,12 +398,11 @@ syn match muttrcMenuCommas /,/ contained
syn keyword muttrcHooks contained skipwhite account-hook charset-hook iconv-hook message-hook folder-hook mbox-hook save-hook fcc-hook fcc-save-hook send-hook send2-hook reply-hook crypt-hook
-syn keyword muttrcCommand auto_view alternative_order exec unalternative_order
-syn keyword muttrcCommand hdr_order iconv-hook ignore mailboxes my_hdr unmailboxes
-syn keyword muttrcCommand pgp-hook push score source unauto_view unhdr_order
-syn keyword muttrcCommand unignore unmono unmy_hdr unscore
-syn keyword muttrcCommand mime_lookup unmime_lookup ungroup
-syn keyword muttrcCommand unalternative_order
+syn keyword muttrcCommand skipwhite
+ \ alternative_order auto_view exec hdr_order iconv-hook ignore mailboxes
+ \ mailto_allow mime_lookup my_hdr pgp-hook push score sidebar_whitelist source
+ \ unalternative_order unalternative_order unauto_view ungroup unhdr_order
+ \ unignore unmailboxes unmailto_allow unmime_lookup unmono unmy_hdr unscore
syn keyword muttrcCommand skipwhite charset-hook nextgroup=muttrcRXString
syn keyword muttrcCommand skipwhite unhook nextgroup=muttrcHooks
@@ -441,7 +437,7 @@ syn match muttrcVariableInner contained "\$[a-zA-Z_-]\+"
syn match muttrcEscapedVariable contained "\\\$[a-zA-Z_-]\+"
syn match muttrcBadAction contained "[^<>]\+" contains=muttrcEmail
-syn match muttrcFunction contained "\<\%(attach\|bounce\|copy\|delete\|display\|flag\|forward\|parent\|pipe\|postpone\|print\|recall\|resend\|save\|send\|tag\|undelete\)-message\>"
+syn match muttrcFunction contained "\<\%(attach\|bounce\|copy\|delete\|display\|flag\|forward\|parent\|pipe\|postpone\|print\|purge\|recall\|resend\|save\|send\|tag\|undelete\)-message\>"
syn match muttrcFunction contained "\<\%(delete\|next\|previous\|read\|tag\|break\|undelete\)-thread\>"
syn match muttrcFunction contained "\<link-threads\>"
syn match muttrcFunction contained "\<\%(backward\|capitalize\|downcase\|forward\|kill\|upcase\)-word\>"
@@ -465,11 +461,13 @@ syn match muttrcFunction contained "\<show-\%(limit\|version\)\>"
syn match muttrcFunction contained "\<sort-\%(mailbox\|reverse\)\>"
syn match muttrcFunction contained "\<tag-\%(pattern\|\%(sub\)\?thread\|prefix\%(-cond\)\?\)\>"
syn match muttrcFunction contained "\<end-cond\>"
+syn match muttrcFunction contained "\<sidebar-\%(next\|next-new\|open\|page-down\|page-up\|prev\|prev-new\|toggle-visible\)\>"
syn match muttrcFunction contained "\<toggle-\%(mailboxes\|new\|quoted\|subscribed\|unlink\|write\)\>"
syn match muttrcFunction contained "\<undelete-\%(pattern\|subthread\)\>"
syn match muttrcFunction contained "\<collapse-\%(parts\|thread\|all\)\>"
syn match muttrcFunction contained "\<view-\%(attach\|attachments\|file\|mailcap\|name\|text\)\>"
syn match muttrcFunction contained "\<\%(backspace\|backward-char\|bol\|bottom\|bottom-page\|buffy-cycle\|clear-flag\|complete\%(-query\)\?\|copy-file\|create-alias\|detach-file\|eol\|exit\|extract-keys\|\%(imap-\)\?fetch-mail\|forget-passphrase\|forward-char\|group-reply\|help\|ispell\|jump\|limit\|list-reply\|mail\|mail-key\|mark-as-new\|middle-page\|new-mime\|noop\|pgp-menu\|query\|query-append\|quit\|quote-char\|read-subthread\|redraw-screen\|refresh\|rename-file\|reply\|select-new\|set-flag\|shell-escape\|skip-quoted\|sort\|subscribe\|sync-mailbox\|top\|top-page\|transpose-chars\|unsubscribe\|untag-pattern\|verify-key\|what-key\|write-fcc\)\>"
+syn keyword muttrcFunction contained imap-logout-all
if use_mutt_sidebar == 1
syn match muttrcFunction contained "\<sidebar-\%(prev\|next\|open\|scroll-up\|scroll-down\)"
endif
@@ -578,7 +576,11 @@ syn match muttrcColorMatchCount contained "[0-9]\+"
syn match muttrcColorMatchCountNL contained skipwhite skipnl "\s*\\$" nextgroup=muttrcColorMatchCount,muttrcColorMatchCountNL
syn region muttrcColorRXPat contained start=+\s*'+ skip=+\\'+ end=+'\s*+ keepend skipwhite contains=muttrcRXString2 nextgroup=muttrcColorMatchCount,muttrcColorMatchCountNL
syn region muttrcColorRXPat contained start=+\s*"+ skip=+\\"+ end=+"\s*+ keepend skipwhite contains=muttrcRXString2 nextgroup=muttrcColorMatchCount,muttrcColorMatchCountNL
-syn keyword muttrcColorField contained attachment body bold error hdrdefault header index indicator markers message normal quoted search signature status tilde tree underline
+syn keyword muttrcColorField skipwhite contained
+ \ attachment body bold error hdrdefault header index indicator markers message
+ \ normal prompt quoted search sidebar-divider sidebar-flagged sidebar-highlight
+ \ sidebar-indicator sidebar-new sidebar-spoolfile signature status tilde tree
+ \ underline
syn match muttrcColorField contained "\<quoted\d\=\>"
if use_mutt_sidebar == 1
syn keyword muttrcColorField contained sidebar_new
diff --git a/runtime/syntax/python.vim b/runtime/syntax/python.vim
index 4b9077a38..59675c374 100644
--- a/runtime/syntax/python.vim
+++ b/runtime/syntax/python.vim
@@ -1,7 +1,7 @@
" Vim syntax file
" Language: Python
" Maintainer: Zvezdan Petkovic <zpetkovic@acm.org>
-" Last Change: 2016 Jul 21
+" Last Change: 2016 Aug 14
" Credits: Neil Schemenauer <nas@python.ca>
" Dmitry Vasiliev
"
@@ -84,14 +84,30 @@ syn keyword pythonInclude from import
syn keyword pythonAsync async await
" Decorators (new in Python 2.4)
-syn match pythonDecorator "@" display nextgroup=pythonFunction skipwhite
-" The zero-length non-grouping match before the function name is
-" extremely important in pythonFunction. Without it, everything is
-" interpreted as a function inside the contained environment of
-" doctests.
+" Python 3.5 introduced the use of the same symbol for matrix
+" multiplication. We now have to exclude the symbol from being
+" highlighted when used in that context. Hence, the check that it's
+" preceded by empty space only (possibly in a docstring/doctest) and
+" followed by decorator name, optional parenthesized list of arguments,
+" and the next line with either def, class, or another decorator.
+syn match pythonDecorator
+ \ "\%(\%(^\s*\)\%(\%(>>>\|\.\.\.\)\s\+\)\=\)\zs@\%(\s*\h\%(\w\|\.\)*\%(([^)]*)\)\=\s*\n\s*\%(\.\.\.\s\+\)\=\%(@\s*\h\|\%(def\|class\)\s\+\)\)\@="
+ \ display nextgroup=pythonDecoratorName skipwhite
+
" A dot must be allowed because of @MyClass.myfunc decorators.
+" It must be preceded by a decorator symbol and on a separate line from
+" a function/class it decorates.
+syn match pythonDecoratorName
+ \ "\%(@\s*\)\@<=\h\%(\w\|\.\)*\%(\%(([^)]*)\)\=\s*\n\)\@="
+ \ contained display nextgroup=pythonFunction skipnl
+
+" The zero-length non-grouping match of def or class before the function
+" name is extremely important in pythonFunction. Without it, everything
+" is interpreted as a function inside the contained environment of
+" doctests.
syn match pythonFunction
- \ "\%(\%(def\s\|class\s\|@\)\s*\)\@<=\h\%(\w\|\.\)*" contained
+ \ "\%(\%(^\s*\)\%(\%(>>>\|\.\.\.\)\s\+\)\=\%(def\|class\)\s\+\)\@<=\h\w*"
+ \ contained
syn match pythonComment "#.*$" contains=pythonTodo,@Spell
syn keyword pythonTodo FIXME NOTE NOTES TODO XXX contained
@@ -293,6 +309,7 @@ if version >= 508 || !exists("did_python_syn_inits")
HiLink pythonInclude Include
HiLink pythonAsync Statement
HiLink pythonDecorator Define
+ HiLink pythonDecoratorName Function
HiLink pythonFunction Function
HiLink pythonComment Comment
HiLink pythonTodo Todo
diff --git a/runtime/syntax/r.vim b/runtime/syntax/r.vim
index d96bf96ac..30a5b23f8 100644
--- a/runtime/syntax/r.vim
+++ b/runtime/syntax/r.vim
@@ -5,7 +5,7 @@
" Tom Payne <tom@tompayne.org>
" Contributor: Johannes Ranke <jranke@uni-bremen.de>
" Homepage: https://github.com/jalvesaq/R-Vim-runtime
-" Last Change: Thu Mar 10, 2016 12:26PM
+" Last Change: Thu Aug 25, 2016 08:52PM
" Filenames: *.R *.r *.Rhistory *.Rt
"
" NOTE: The highlighting of R functions is defined in
@@ -26,7 +26,7 @@ if exists("b:current_syntax")
finish
endif
-setlocal iskeyword=@,48-57,_,.
+syn iskeyword @,48-57,_,.
if exists("g:r_syntax_folding") && g:r_syntax_folding
setlocal foldmethod=syntax
@@ -174,8 +174,6 @@ endif
if g:R_hi_fun
" Nvim-R:
runtime R/functions.vim
- " Vim-R-plugin:
- runtime r-plugin/functions.vim
endif
syn match rDollar display contained "\$"
diff --git a/runtime/syntax/rhelp.vim b/runtime/syntax/rhelp.vim
index 47c764e29..8cac585bb 100644
--- a/runtime/syntax/rhelp.vim
+++ b/runtime/syntax/rhelp.vim
@@ -3,7 +3,7 @@
" Maintainer: Jakson Aquino <jalvesaq@gmail.com>
" Former Maintainer: Johannes Ranke <jranke@uni-bremen.de>
" Homepage: https://github.com/jalvesaq/R-Vim-runtime
-" Last Change: Sat Feb 06, 2016 11:34AM
+" Last Change: Tue Jun 28, 2016 08:53AM
" Remarks: - Includes R syntax highlighting in the appropriate
" sections if an r.vim file is in the same directory or in the
" default debian location.
@@ -17,7 +17,6 @@ if exists("b:current_syntax")
endif
scriptencoding utf-8
-setlocal iskeyword=@,48-57,_,.
syn case match
diff --git a/runtime/syntax/rmd.vim b/runtime/syntax/rmd.vim
index 4cde7441d..48fb5e079 100644
--- a/runtime/syntax/rmd.vim
+++ b/runtime/syntax/rmd.vim
@@ -1,7 +1,7 @@
" markdown Text with R statements
" Language: markdown with R code chunks
" Homepage: https://github.com/jalvesaq/R-Vim-runtime
-" Last Change: Sat Feb 06, 2016 06:45AM
+" Last Change: Tue Jun 28, 2016 10:09AM
"
" CONFIGURATION:
" To highlight chunk headers as R code, put in your vimrc:
@@ -72,8 +72,6 @@ if rmdIsPandoc == 0
hi def link rmdLaTeXRegDelim Special
endif
-setlocal iskeyword=@,48-57,_,.
-
syn sync match rmdSyncChunk grouphere rmdChunk "^[ \t]*``` *{r"
hi def link rmdChunkDelim Special
diff --git a/runtime/syntax/rrst.vim b/runtime/syntax/rrst.vim
index 24d3844df..b643af328 100644
--- a/runtime/syntax/rrst.vim
+++ b/runtime/syntax/rrst.vim
@@ -2,7 +2,7 @@
" Language: reST with R code chunks
" Maintainer: Alex Zvoleff, azvoleff@mail.sdsu.edu
" Homepage: https://github.com/jalvesaq/R-Vim-runtime
-" Last Change: Sat Feb 06, 2016 06:45AM
+" Last Change: Tue Jun 28, 2016 08:53AM
"
" CONFIGURATION:
" To highlight chunk headers as R code, put in your vimrc:
@@ -19,8 +19,6 @@ unlet b:current_syntax
" load all of the r syntax highlighting rules into @R
syntax include @R syntax/r.vim
-setlocal iskeyword=@,48-57,_,.
-
" highlight R chunks
if exists("g:rrst_syn_hl_chunk")
" highlight R code inside chunk header
diff --git a/runtime/syntax/scala.vim b/runtime/syntax/scala.vim
new file mode 100644
index 000000000..b04af3be5
--- /dev/null
+++ b/runtime/syntax/scala.vim
@@ -0,0 +1,231 @@
+" Vim syntax file
+" Language: Scala
+" Maintainer: Derek Wyatt
+" URL: https://github.com/derekwyatt/vim-scala
+" License: Same as Vim
+" Last Change: 20 May 2016
+" ----------------------------------------------------------------------------
+
+if !exists('main_syntax')
+ if version < 600
+ syntax clear
+ elseif exists("b:current_syntax")
+ finish
+ endif
+ let main_syntax = 'scala'
+endif
+
+scriptencoding utf-8
+
+let b:current_syntax = "scala"
+
+" Allows for embedding, see #59; main_syntax convention instead? Refactor TOP
+"
+" The @Spell here is a weird hack, it means *exclude* if the first group is
+" TOP. Otherwise we get spelling errors highlighted on code elements that
+" match scalaBlock, even with `syn spell notoplevel`.
+function! s:ContainedGroup()
+ try
+ silent syn list @scala
+ return '@scala,@NoSpell'
+ catch /E392/
+ return 'TOP,@Spell'
+ endtry
+endfunction
+
+unlet! b:current_syntax
+
+syn case match
+syn sync minlines=200 maxlines=1000
+
+syn keyword scalaKeyword catch do else final finally for forSome if
+syn keyword scalaKeyword match return throw try while yield macro
+syn keyword scalaKeyword class trait object extends with nextgroup=scalaInstanceDeclaration skipwhite
+syn keyword scalaKeyword case nextgroup=scalaKeyword,scalaCaseFollowing skipwhite
+syn keyword scalaKeyword val nextgroup=scalaNameDefinition,scalaQuasiQuotes skipwhite
+syn keyword scalaKeyword def var nextgroup=scalaNameDefinition skipwhite
+hi link scalaKeyword Keyword
+
+exe 'syn region scalaBlock start=/{/ end=/}/ contains=' . s:ContainedGroup() . ' fold'
+
+syn keyword scalaAkkaSpecialWord when goto using startWith initialize onTransition stay become unbecome
+hi link scalaAkkaSpecialWord PreProc
+
+syn keyword scalatestSpecialWord shouldBe
+syn match scalatestShouldDSLA /^\s\+\zsit should/
+syn match scalatestShouldDSLB /\<should\>/
+hi link scalatestSpecialWord PreProc
+hi link scalatestShouldDSLA PreProc
+hi link scalatestShouldDSLB PreProc
+
+syn match scalaSymbol /'[_A-Za-z0-9$]\+/
+hi link scalaSymbol Number
+
+syn match scalaChar /'.'/
+syn match scalaChar /'\\[\\"'ntbrf]'/ contains=scalaEscapedChar
+syn match scalaChar /'\\u[A-Fa-f0-9]\{4}'/ contains=scalaUnicodeChar
+syn match scalaEscapedChar /\\[\\"'ntbrf]/
+syn match scalaUnicodeChar /\\u[A-Fa-f0-9]\{4}/
+hi link scalaChar Character
+hi link scalaEscapedChar Function
+hi link scalaUnicodeChar Special
+
+syn match scalaOperator "||"
+syn match scalaOperator "&&"
+hi link scalaOperator Special
+
+syn match scalaNameDefinition /\<[_A-Za-z0-9$]\+\>/ contained nextgroup=scalaPostNameDefinition,scalaVariableDeclarationList
+syn match scalaNameDefinition /`[^`]\+`/ contained nextgroup=scalaPostNameDefinition
+syn match scalaVariableDeclarationList /\s*,\s*/ contained nextgroup=scalaNameDefinition
+syn match scalaPostNameDefinition /\_s*:\_s*/ contained nextgroup=scalaTypeDeclaration
+hi link scalaNameDefinition Function
+
+syn match scalaInstanceDeclaration /\<[_\.A-Za-z0-9$]\+\>/ contained nextgroup=scalaInstanceHash
+syn match scalaInstanceDeclaration /`[^`]\+`/ contained
+syn match scalaInstanceHash /#/ contained nextgroup=scalaInstanceDeclaration
+hi link scalaInstanceDeclaration Special
+hi link scalaInstanceHash Type
+
+syn match scalaUnimplemented /???/
+hi link scalaUnimplemented ERROR
+
+syn match scalaCapitalWord /\<[A-Z][A-Za-z0-9$]*\>/
+hi link scalaCapitalWord Special
+
+" Handle type declarations specially
+syn region scalaTypeStatement matchgroup=Keyword start=/\<type\_s\+\ze/ end=/$/ contains=scalaTypeTypeDeclaration,scalaSquareBrackets,scalaTypeTypeEquals,scalaTypeStatement
+
+" Ugh... duplication of all the scalaType* stuff to handle special highlighting
+" of `type X =` declarations
+syn match scalaTypeTypeDeclaration /(/ contained nextgroup=scalaTypeTypeExtension,scalaTypeTypeEquals contains=scalaRoundBrackets skipwhite
+syn match scalaTypeTypeDeclaration /\%(⇒\|=>\)\ze/ contained nextgroup=scalaTypeTypeDeclaration contains=scalaTypeTypeExtension skipwhite
+syn match scalaTypeTypeDeclaration /\<[_\.A-Za-z0-9$]\+\>/ contained nextgroup=scalaTypeTypeExtension,scalaTypeTypeEquals skipwhite
+syn match scalaTypeTypeEquals /=\ze[^>]/ contained nextgroup=scalaTypeTypePostDeclaration skipwhite
+syn match scalaTypeTypeExtension /)\?\_s*\zs\%(⇒\|=>\|<:\|:>\|=:=\|::\|#\)/ contained nextgroup=scalaTypeTypeDeclaration skipwhite
+syn match scalaTypeTypePostDeclaration /\<[_\.A-Za-z0-9$]\+\>/ contained nextgroup=scalaTypeTypePostExtension skipwhite
+syn match scalaTypeTypePostExtension /\%(⇒\|=>\|<:\|:>\|=:=\|::\)/ contained nextgroup=scalaTypeTypePostDeclaration skipwhite
+hi link scalaTypeTypeDeclaration Type
+hi link scalaTypeTypeExtension Keyword
+hi link scalaTypeTypePostDeclaration Special
+hi link scalaTypeTypePostExtension Keyword
+
+syn match scalaTypeDeclaration /(/ contained nextgroup=scalaTypeExtension contains=scalaRoundBrackets skipwhite
+syn match scalaTypeDeclaration /\%(⇒\|=>\)\ze/ contained nextgroup=scalaTypeDeclaration contains=scalaTypeExtension skipwhite
+syn match scalaTypeDeclaration /\<[_\.A-Za-z0-9$]\+\>/ contained nextgroup=scalaTypeExtension skipwhite
+syn match scalaTypeExtension /)\?\_s*\zs\%(⇒\|=>\|<:\|:>\|=:=\|::\|#\)/ contained nextgroup=scalaTypeDeclaration skipwhite
+hi link scalaTypeDeclaration Type
+hi link scalaTypeExtension Keyword
+hi link scalaTypePostExtension Keyword
+
+syn match scalaTypeAnnotation /\%([_a-zA-Z0-9$\s]:\_s*\)\ze[_=(\.A-Za-z0-9$]\+/ skipwhite nextgroup=scalaTypeDeclaration contains=scalaRoundBrackets
+syn match scalaTypeAnnotation /)\_s*:\_s*\ze[_=(\.A-Za-z0-9$]\+/ skipwhite nextgroup=scalaTypeDeclaration
+hi link scalaTypeAnnotation Normal
+
+syn match scalaCaseFollowing /\<[_\.A-Za-z0-9$]\+\>/ contained
+syn match scalaCaseFollowing /`[^`]\+`/ contained
+hi link scalaCaseFollowing Special
+
+syn keyword scalaKeywordModifier abstract override final lazy implicit implicitly private protected sealed null require super
+hi link scalaKeywordModifier Function
+
+syn keyword scalaSpecial this true false ne eq
+syn keyword scalaSpecial new nextgroup=scalaInstanceDeclaration skipwhite
+syn match scalaSpecial "\%(=>\|⇒\|<-\|←\|->\|→\)"
+syn match scalaSpecial /`[^`]\+`/ " Backtick literals
+hi link scalaSpecial PreProc
+
+syn keyword scalaExternal package import
+hi link scalaExternal Include
+
+syn match scalaStringEmbeddedQuote /\\"/ contained
+syn region scalaString start=/"/ end=/"/ contains=scalaStringEmbeddedQuote,scalaEscapedChar,scalaUnicodeChar
+hi link scalaString String
+hi link scalaStringEmbeddedQuote String
+
+syn region scalaIString matchgroup=scalaInterpolationBrackets start=/\<[a-zA-Z][a-zA-Z0-9_]*"/ skip=/\\"/ end=/"/ contains=scalaInterpolation,scalaInterpolationB,scalaEscapedChar,scalaUnicodeChar
+syn region scalaTripleIString matchgroup=scalaInterpolationBrackets start=/\<[a-zA-Z][a-zA-Z0-9_]*"""/ end=/"""\%([^"]\|$\)/ contains=scalaInterpolation,scalaInterpolationB,scalaEscapedChar,scalaUnicodeChar
+hi link scalaIString String
+hi link scalaTripleIString String
+
+syn match scalaInterpolation /\$[a-zA-Z0-9_$]\+/ contained
+exe 'syn region scalaInterpolationB matchgroup=scalaInterpolationBoundary start=/\${/ end=/}/ contained contains=' . s:ContainedGroup()
+hi link scalaInterpolation Function
+hi link scalaInterpolationB Normal
+
+syn region scalaFString matchgroup=scalaInterpolationBrackets start=/f"/ skip=/\\"/ end=/"/ contains=scalaFInterpolation,scalaFInterpolationB,scalaEscapedChar,scalaUnicodeChar
+syn match scalaFInterpolation /\$[a-zA-Z0-9_$]\+\(%[-A-Za-z0-9\.]\+\)\?/ contained
+exe 'syn region scalaFInterpolationB matchgroup=scalaInterpolationBoundary start=/${/ end=/}\(%[-A-Za-z0-9\.]\+\)\?/ contained contains=' . s:ContainedGroup()
+hi link scalaFString String
+hi link scalaFInterpolation Function
+hi link scalaFInterpolationB Normal
+
+syn region scalaTripleString start=/"""/ end=/"""\%([^"]\|$\)/ contains=scalaEscapedChar,scalaUnicodeChar
+syn region scalaTripleFString matchgroup=scalaInterpolationBrackets start=/f"""/ end=/"""\%([^"]\|$\)/ contains=scalaFInterpolation,scalaFInterpolationB,scalaEscapedChar,scalaUnicodeChar
+hi link scalaTripleString String
+hi link scalaTripleFString String
+
+hi link scalaInterpolationBrackets Special
+hi link scalaInterpolationBoundary Function
+
+syn match scalaNumber /\<0[dDfFlL]\?\>/ " Just a bare 0
+syn match scalaNumber /\<[1-9]\d*[dDfFlL]\?\>/ " A multi-digit number - octal numbers with leading 0's are deprecated in Scala
+syn match scalaNumber /\<0[xX][0-9a-fA-F]\+[dDfFlL]\?\>/ " Hex number
+syn match scalaNumber /\%(\<\d\+\.\d*\|\.\d\+\)\%([eE][-+]\=\d\+\)\=[fFdD]\=/ " exponential notation 1
+syn match scalaNumber /\<\d\+[eE][-+]\=\d\+[fFdD]\=\>/ " exponential notation 2
+syn match scalaNumber /\<\d\+\%([eE][-+]\=\d\+\)\=[fFdD]\>/ " exponential notation 3
+hi link scalaNumber Number
+
+syn region scalaRoundBrackets start="(" end=")" skipwhite contained contains=scalaTypeDeclaration,scalaSquareBrackets,scalaRoundBrackets
+
+syn region scalaSquareBrackets matchgroup=scalaSquareBracketsBrackets start="\[" end="\]" skipwhite nextgroup=scalaTypeExtension contains=scalaTypeDeclaration,scalaSquareBrackets,scalaTypeOperator,scalaTypeAnnotationParameter
+syn match scalaTypeOperator /[-+=:<>]\+/ contained
+syn match scalaTypeAnnotationParameter /@\<[`_A-Za-z0-9$]\+\>/ contained
+hi link scalaSquareBracketsBrackets Type
+hi link scalaTypeOperator Keyword
+hi link scalaTypeAnnotationParameter Function
+
+syn match scalaShebang "\%^#!.*" display
+syn region scalaMultilineComment start="/\*" end="\*/" contains=scalaMultilineComment,scalaDocLinks,scalaParameterAnnotation,scalaCommentAnnotation,scalaTodo,scalaCommentCodeBlock,@Spell keepend fold
+syn match scalaCommentAnnotation "@[_A-Za-z0-9$]\+" contained
+syn match scalaParameterAnnotation "\%(@tparam\|@param\|@see\)" nextgroup=scalaParamAnnotationValue skipwhite contained
+syn match scalaParamAnnotationValue /[.`_A-Za-z0-9$]\+/ contained
+syn region scalaDocLinks start="\[\[" end="\]\]" contained
+syn region scalaCommentCodeBlock matchgroup=Keyword start="{{{" end="}}}" contained
+syn match scalaTodo "\vTODO|FIXME|XXX" contained
+hi link scalaShebang Comment
+hi link scalaMultilineComment Comment
+hi link scalaDocLinks Function
+hi link scalaParameterAnnotation Function
+hi link scalaParamAnnotationValue Keyword
+hi link scalaCommentAnnotation Function
+hi link scalaCommentCodeBlockBrackets String
+hi link scalaCommentCodeBlock String
+hi link scalaTodo Todo
+
+syn match scalaAnnotation /@\<[`_A-Za-z0-9$]\+\>/
+hi link scalaAnnotation PreProc
+
+syn match scalaTrailingComment "//.*$" contains=scalaTodo,@Spell
+hi link scalaTrailingComment Comment
+
+syn match scalaAkkaFSM /goto([^)]*)\_s\+\<using\>/ contains=scalaAkkaFSMGotoUsing
+syn match scalaAkkaFSM /stay\_s\+using/
+syn match scalaAkkaFSM /^\s*stay\s*$/
+syn match scalaAkkaFSM /when\ze([^)]*)/
+syn match scalaAkkaFSM /startWith\ze([^)]*)/
+syn match scalaAkkaFSM /initialize\ze()/
+syn match scalaAkkaFSM /onTransition/
+syn match scalaAkkaFSM /onTermination/
+syn match scalaAkkaFSM /whenUnhandled/
+syn match scalaAkkaFSMGotoUsing /\<using\>/
+syn match scalaAkkaFSMGotoUsing /\<goto\>/
+hi link scalaAkkaFSM PreProc
+hi link scalaAkkaFSMGotoUsing PreProc
+
+let b:current_syntax = 'scala'
+
+if main_syntax ==# 'scala'
+ unlet main_syntax
+endif
+
+" vim:set sw=2 sts=2 ts=8 et:
diff --git a/runtime/syntax/sh.vim b/runtime/syntax/sh.vim
index 34b8ab79e..2fe13fbde 100644
--- a/runtime/syntax/sh.vim
+++ b/runtime/syntax/sh.vim
@@ -2,8 +2,8 @@
" Language: shell (sh) Korn shell (ksh) bash (sh)
" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
" Previous Maintainer: Lennart Schultz <Lennart.Schultz@ecmwf.int>
-" Last Change: Jul 29, 2016
-" Version: 155
+" Last Change: Aug 23, 2016
+" Version: 161
" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_SH
" For options and settings, please use: :help ft-sh-syntax
" This file includes many ideas from Eric Brunet (eric.brunet@ens.fr)
@@ -127,11 +127,11 @@ syn cluster shErrorList contains=shDoError,shIfError,shInError,shCaseError,shEsa
if exists("b:is_kornshell")
syn cluster ErrorList add=shDTestError
endif
-syn cluster shArithParenList contains=shArithmetic,shCaseEsac,shComment,shDeref,shDo,shDerefSimple,shEcho,shEscape,shNumber,shOperator,shPosnParm,shExSingleQuote,shExDoubleQuote,shRedir,shSingleQuote,shDoubleQuote,shStatement,shVariable,shAlias,shTest,shCtrlSeq,shSpecial,shParen,bashSpecialVariables,bashStatement,shIf,shFor
+syn cluster shArithParenList contains=shArithmetic,shCaseEsac,shComment,shDeref,shDo,shDerefSimple,shEcho,shEscape,shNumber,shOperator,shPosnParm,shExSingleQuote,shExDoubleQuote,shHereString,shRedir,shSingleQuote,shDoubleQuote,shStatement,shVariable,shAlias,shTest,shCtrlSeq,shSpecial,shParen,bashSpecialVariables,bashStatement,shIf,shFor
syn cluster shArithList contains=@shArithParenList,shParenError
syn cluster shCaseEsacList contains=shCaseStart,shCase,shCaseBar,shCaseIn,shComment,shDeref,shDerefSimple,shCaseCommandSub,shCaseExSingleQuote,shCaseSingleQuote,shCaseDoubleQuote,shCtrlSeq,@shErrorList,shStringSpecial,shCaseRange
-syn cluster shCaseList contains=@shCommandSubList,shCaseEsac,shColon,shCommandSub,shComment,shDo,shEcho,shExpr,shFor,shHereDoc,shIf,shRedir,shSetList,shSource,shStatement,shVariable,shCtrlSeq
-syn cluster shCommandSubList contains=shAlias,shArithmetic,shComment,shCmdParenRegion,shCtrlSeq,shDeref,shDerefSimple,shDoubleQuote,shEcho,shEscape,shExDoubleQuote,shExpr,shExSingleQuote,shHereDoc,shNumber,shOperator,shOption,shPosnParm,shSingleQuote,shSpecial,shStatement,shSubSh,shTest,shVariable
+syn cluster shCaseList contains=@shCommandSubList,shCaseEsac,shColon,shCommandSub,shComment,shDo,shEcho,shExpr,shFor,shHereDoc,shIf,shHereString,shRedir,shSetList,shSource,shStatement,shVariable,shCtrlSeq
+syn cluster shCommandSubList contains=shAlias,shArithmetic,shComment,shCmdParenRegion,shCtrlSeq,shDeref,shDerefSimple,shDoubleQuote,shEcho,shEscape,shExDoubleQuote,shExpr,shExSingleQuote,shHereDoc,shNumber,shOperator,shOption,shPosnParm,shHereString,shRedir,shSingleQuote,shSpecial,shStatement,shSubSh,shTest,shVariable
syn cluster shCurlyList contains=shNumber,shComma,shDeref,shDerefSimple,shDerefSpecial
syn cluster shDblQuoteList contains=shCommandSub,shDeref,shDerefSimple,shEscape,shPosnParm,shCtrlSeq,shSpecial
syn cluster shDerefList contains=shDeref,shDerefSimple,shDerefVar,shDerefSpecial,shDerefWordError,shDerefPSR,shDerefPPS
@@ -139,7 +139,7 @@ syn cluster shDerefVarList contains=shDerefOff,shDerefOp,shDerefVarArray,shDeref
syn cluster shEchoList contains=shArithmetic,shCommandSub,shDeref,shDerefSimple,shEscape,shExpr,shExSingleQuote,shExDoubleQuote,shSingleQuote,shDoubleQuote,shCtrlSeq,shEchoQuote
syn cluster shExprList1 contains=shCharClass,shNumber,shOperator,shExSingleQuote,shExDoubleQuote,shSingleQuote,shDoubleQuote,shExpr,shDblBrace,shDeref,shDerefSimple,shCtrlSeq
syn cluster shExprList2 contains=@shExprList1,@shCaseList,shTest
-syn cluster shFunctionList contains=@shCommandSubList,shCaseEsac,shColon,shCommandSub,shComment,shDo,shEcho,shExpr,shFor,shHereDoc,shIf,shOption,shRedir,shSetList,shSource,shStatement,shVariable,shOperator,shCtrlSeq
+syn cluster shFunctionList contains=@shCommandSubList,shCaseEsac,shColon,shCommandSub,shComment,shDo,shEcho,shExpr,shFor,shHereDoc,shIf,shOption,shHereString,shRedir,shSetList,shSource,shStatement,shVariable,shOperator,shCtrlSeq
if exists("b:is_kornshell") || exists("b:is_bash")
syn cluster shFunctionList add=shRepeat
syn cluster shFunctionList add=shDblBrace,shDblParen
@@ -147,11 +147,11 @@ endif
syn cluster shHereBeginList contains=@shCommandSubList
syn cluster shHereList contains=shBeginHere,shHerePayload
syn cluster shHereListDQ contains=shBeginHere,@shDblQuoteList,shHerePayload
-syn cluster shIdList contains=shCommandSub,shWrapLineOperator,shSetOption,shDeref,shDerefSimple,shRedir,shExSingleQuote,shExDoubleQuote,shSingleQuote,shDoubleQuote,shExpr,shCtrlSeq,shStringSpecial,shAtExpr
-syn cluster shIfList contains=@shLoopList,shDblBrace,shDblParen,shFunctionKey,shFunctionOne,shFunctionTwo
+syn cluster shIdList contains=shCommandSub,shWrapLineOperator,shSetOption,shDeref,shDerefSimple,shHereString,shRedir,shExSingleQuote,shExDoubleQuote,shSingleQuote,shDoubleQuote,shExpr,shCtrlSeq,shStringSpecial,shAtExpr
+syn cluster shIfList contains=@shLoopList,shDblBrace,shDblParen,shFunctionKey,shFunctionOne,shFunctionTwo,shParen
syn cluster shLoopList contains=@shCaseList,@shErrorList,shCaseEsac,shConditional,shDblBrace,shExpr,shFor,shForPP,shIf,shOption,shSet,shTest,shTestOpr,shTouch
syn cluster shPPSRightList contains=shComment,shDeref,shDerefSimple,shEscape,shPosnParm
-syn cluster shSubShList contains=@shCommandSubList,shCaseEsac,shColon,shCommandSub,shComment,shDo,shEcho,shExpr,shFor,shIf,shRedir,shSetList,shSource,shStatement,shVariable,shCtrlSeq,shOperator
+syn cluster shSubShList contains=@shCommandSubList,shCaseEsac,shColon,shCommandSub,shComment,shDo,shEcho,shExpr,shFor,shIf,shHereString,shRedir,shSetList,shSource,shStatement,shVariable,shCtrlSeq,shOperator
syn cluster shTestList contains=shCharClass,shCommandSub,shCtrlSeq,shDeref,shDerefSimple,shDoubleQuote,shExDoubleQuote,shExpr,shExSingleQuote,shNumber,shOperator,shSingleQuote,shTest,shTestOpr
" Echo: {{{1
@@ -216,8 +216,8 @@ syn match shPattern "\<\S\+\())\)\@=" contained contains=shExSingleQuote,shSin
" Subshells: {{{1
" ==========
-syn region shExpr transparent matchgroup=shExprRegion start="{" end="}" contains=@shExprList2 nextgroup=shMoreSpecial
-syn region shSubSh transparent matchgroup=shSubShRegion start="[^(]\zs(" end=")" contains=@shSubShList nextgroup=shMoreSpecial
+syn region shExpr transparent matchgroup=shExprRegion start="{" end="}" contains=@shExprList2 nextgroup=shSpecialNxt
+syn region shSubSh transparent matchgroup=shSubShRegion start="[^(]\zs(" end=")" contains=@shSubShList nextgroup=shSpecialNxt
" Tests: {{{1
"=======
@@ -339,8 +339,8 @@ if exists("b:is_bash")
syn match shSpecial "^\(\\\\\)*\zs\\\o\o\o\|\\x\x\x\|\\c[^"]\|\\[abefnrtv]" contained
endif
if exists("b:is_bash")
- syn region shExSingleQuote matchgroup=shQuote start=+\$'+ skip=+\\\\\|\\.+ end=+'+ contains=shStringSpecial,shSpecial
- syn region shExDoubleQuote matchgroup=shQuote start=+\$"+ skip=+\\\\\|\\.\|\\"+ end=+"+ contains=@shDblQuoteList,shStringSpecial,shSpecial
+ syn region shExSingleQuote matchgroup=shQuote start=+\$'+ skip=+\\\\\|\\.+ end=+'+ contains=shStringSpecial,shSpecial nextgroup=shSpecialNxt
+ syn region shExDoubleQuote matchgroup=shQuote start=+\$"+ skip=+\\\\\|\\.\|\\"+ end=+"+ contains=@shDblQuoteList,shStringSpecial,shSpecial nextgroup=shSpecialNxt
elseif !exists("g:sh_no_error")
syn region shExSingleQuote matchGroup=Error start=+\$'+ skip=+\\\\\|\\.+ end=+'+ contains=shStringSpecial
syn region shExDoubleQuote matchGroup=Error start=+\$"+ skip=+\\\\\|\\.+ end=+"+ contains=shStringSpecial
@@ -351,7 +351,7 @@ syn match shStringSpecial "[^[:print:] \t]" contained
syn match shStringSpecial "[^\\]\zs\%(\\\\\)*\\[\\"'`$()#]"
syn match shSpecial "[^\\]\zs\%(\\\\\)*\\[\\"'`$()#]" nextgroup=shBkslshSnglQuote,shBkslshDblQuote
syn match shSpecial "^\%(\\\\\)*\\[\\"'`$()#]"
-syn match shMoreSpecial "[^\\]\zs\%(\\\\\)*\\[\\"'`$()#]" nextgroup=shMoreSpecial contained
+syn match shSpecialNxt contained "\\[\\"'`$()#]"
syn region shBkslshSnglQuote contained matchgroup=shQuote start=+'+ end=+'+ contains=@Spell
syn region shBkslshDblQuote contained matchgroup=shQuote start=+"+ skip=+\\"+ end=+"+ contains=@shDblQuoteList,shStringSpecial,@Spell
@@ -386,7 +386,7 @@ ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc15 start="<<-\s*\\\z([^ \
" =============
" available for: bash; ksh (really should be ksh93 only) but not if its a posix
if exists("b:is_bash") || (exists("b:is_kornshell") && !exists("g:is_posix"))
- syn match shRedir "<<<" skipwhite nextgroup=shCmdParenRegion
+ syn match shHereString "<<<" skipwhite nextgroup=shCmdParenRegion
endif
" Identifiers: {{{1
@@ -431,6 +431,7 @@ syn match shDerefSimple "\$\%(\h\w*\|\d\)"
syn region shDeref matchgroup=PreProc start="\${" end="}" contains=@shDerefList,shDerefVarArray
syn match shDerefSimple "\$[-#*@!?]"
syn match shDerefSimple "\$\$"
+syn match shDerefSimple "\${\d}"
if exists("b:is_bash") || exists("b:is_kornshell")
syn region shDeref matchgroup=PreProc start="\${##\=" end="}" contains=@shDerefList
syn region shDeref matchgroup=PreProc start="\${\$\$" end="}" contains=@shDerefList
@@ -455,6 +456,7 @@ endif
syn match shDerefSpecial contained "{\@<=[-*@?0]" nextgroup=shDerefOp,shDerefOpError
syn match shDerefSpecial contained "\({[#!]\)\@<=[[:alnum:]*@_]\+" nextgroup=@shDerefVarList,shDerefOp
syn match shDerefVar contained "{\@<=\h\w*" nextgroup=@shDerefVarList
+syn match shDerefVar contained '\d' nextgroup=@shDerefVarList
if exists("b:is_kornshell")
syn match shDerefVar contained "{\@<=\h\w*[[:alnum:]_.]*" nextgroup=@shDerefVarList
endif
@@ -482,24 +484,24 @@ endif
syn match shDerefOp contained ":\=[-=?]" nextgroup=@shDerefPatternList
syn match shDerefOp contained ":\=+" nextgroup=@shDerefPatternList
if exists("b:is_bash") || exists("b:is_kornshell")
- syn match shDerefOp contained "#\{1,2}" nextgroup=@shDerefPatternList
- syn match shDerefOp contained "%\{1,2}" nextgroup=@shDerefPatternList
- syn match shDerefPattern contained "[^{}]\+" contains=shDeref,shDerefSimple,shDerefPattern,shDerefString,shCommandSub,shDerefEscape nextgroup=shDerefPattern
+ syn match shDerefOp contained "#\{1,2}" nextgroup=@shDerefPatternList
+ syn match shDerefOp contained "%\{1,2}" nextgroup=@shDerefPatternList
+ syn match shDerefPattern contained "[^{}]\+" contains=shDeref,shDerefSimple,shDerefPattern,shDerefString,shCommandSub,shDerefEscape nextgroup=shDerefPattern
syn region shDerefPattern contained start="{" end="}" contains=shDeref,shDerefSimple,shDerefString,shCommandSub nextgroup=shDerefPattern
syn match shDerefEscape contained '\%(\\\\\)*\\.'
endif
if exists("b:is_bash")
syn match shDerefOp contained "[,^]\{1,2}" nextgroup=@shDerefPatternList
endif
-syn region shDerefString contained matchgroup=shDerefDelim start=+\%(\\\)\@<!'+ end=+'+ contains=shStringSpecial
+syn region shDerefString contained matchgroup=shDerefDelim start=+\%(\\\)\@<!'+ end=+'+ contains=shStringSpecial
syn region shDerefString contained matchgroup=shDerefDelim start=+\%(\\\)\@<!"+ skip=+\\"+ end=+"+ contains=@shDblQuoteList,shStringSpecial
syn match shDerefString contained "\\["']" nextgroup=shDerefPattern
if exists("b:is_bash")
" bash : ${parameter:offset}
" bash : ${parameter:offset:length}
- syn region shDerefOff contained start=':' end='\ze:' end='\ze}' contains=shDeref,shDerefSimple nextgroup=shDerefLen,shDeref,shDerefSimple
- syn region shDerefOff contained start=':\s-' end='\ze:' end='\ze}' contains=shDeref,shDerefSimple nextgroup=shDerefLen,shDeref,shDerefSimple
+ syn region shDerefOff contained start=':' end='\ze:' end='\ze}' contains=shDeref,shDerefSimple,shDerefEscape nextgroup=shDerefLen,shDeref,shDerefSimple
+ syn region shDerefOff contained start=':\s-' end='\ze:' end='\ze}' contains=shDeref,shDerefSimple,shDerefEscape nextgroup=shDerefLen,shDeref,shDerefSimple
syn match shDerefLen contained ":[^}]\+" contains=shDeref,shDerefSimple
" bash : ${parameter//pattern/string}
@@ -602,14 +604,16 @@ hi def link shEcho shString
hi def link shEchoDelim shOperator
hi def link shEchoQuote shString
hi def link shForPP shLoop
+hi def link shFunction Function
hi def link shEmbeddedEcho shString
hi def link shEscape shCommandSub
hi def link shExDoubleQuote shDoubleQuote
hi def link shExSingleQuote shSingleQuote
hi def link shHereDoc shString
+hi def link shHereString shRedir
hi def link shHerePayload shHereDoc
hi def link shLoop shStatement
-hi def link shMoreSpecial shSpecial
+hi def link shSpecialNxt shSpecial
hi def link shNoQuote shDoubleQuote
hi def link shOption shCommandSub
hi def link shPattern shString
diff --git a/runtime/syntax/vim.vim b/runtime/syntax/vim.vim
index 20f22c4a1..38897689d 100644
--- a/runtime/syntax/vim.vim
+++ b/runtime/syntax/vim.vim
@@ -1,8 +1,8 @@
" Vim syntax file
" Language: Vim 7.4 script
" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
-" Last Change: July 11, 2016
-" Version: 7.4-51
+" Last Change: August 26, 2016
+" Version: 7.4-52
" Automatically generated keyword lists: {{{1
" Quit when a syntax file was already loaded {{{2
@@ -18,24 +18,24 @@ syn keyword vimTodo contained COMBAK FIXME TODO XXX
syn cluster vimCommentGroup contains=vimTodo,@Spell
" regular vim commands {{{2
-syn keyword vimCommand contained a arga[dd] argu[ment] bad[d] bn[ext] breakd[el] bw[ipeout] cadde[xpr] ccl[ose] cfdo chd[ir] clo[se] col[der] conf[irm] cs debug deletep delp diffp[atch] dj[ump] dr[op] ec em[enu] ene[w] filet fix[del] for gui helpg[rep] ia in ju[mps] keepj[umps] la[st] lat lcl[ose] lefta[bove] lg[etfile] lh[elpgrep] lmapc[lear] loadk lop[en] lt[ag] lvimgrepa[dd] marks mk[exrc] mod[e] nbc[lose] noautocmd nu[mber] opt[ions] pc[lose] popu[p] prof[ile] ptN[ext] ptn[ext] pw[d] pyf[ile] r[ead] redraws[tatus] rew[ind] rubyd[o] sIc sIp san[dbox] sbf[irst] sbr[ewind] sci scs setl[ocal] sgc sgp sie sin sm[agic] sn[ext] sor[t] spellr[epall] srI srl star[tinsert] sts[elect] sv[iew] syncbind tab tabf[ind] tabnew tags tf[irst] tn[ext] ts[elect] undol[ist] up[date] vi[sual] vmapc[lear] wa[ll] winp[os] ws[verb] xmapc[lear] xprop
-syn keyword vimCommand contained ab argd[elete] as[cii] bd[elete] bo[tright] breakl[ist] cN[ext] caddf[ile] cd cfir[st] che[ckpath] cmapc[lear] colo[rscheme] cope[n] cscope debugg[reedy] deletl dep diffpu[t] dl ds[earch] echoe[rr] en[dif] ex filetype fo[ld] fu[nction] gvim helpt[ags] iabc[lear] intro k keepp[atterns] lad[dexpr] later lcs lex[pr] lgetb[uffer] ll lne[xt] loadkeymap lp[revious] lua lw[indow] mat[ch] mks[ession] mz[scheme] nbs[tart] noh[lsearch] o[pen] ownsyntax pe[rl] pp[op] profd[el] pta[g] ptp[revious] py3 python3 rec[over] reg[isters] ri[ght] rubyf[ile] sIe sIr sav[eas] sbl[ast] sc scl scscope sf[ind] sge sgr sig sip sm[ap] sno[magic] sp[lit] spellu[ndo] src srn startg[replace] sun[hide] sw[apname] syntime tabN[ext] tabfir[st] tabo[nly] tc[l] th[row] to[pleft] tu[nmenu] unh[ide] v vie[w] vne[w] wh[ile] wn[ext] wundo xme xunme
-syn keyword vimCommand contained abc[lear] argdo au bel[owright] bp[revious] bro[wse] cNf[ile] cal[l] cdo cg[etfile] checkt[ime] cn[ext] com cp[revious] cstag delc[ommand] deletp di[splay] diffs[plit] dli[st] dsp[lit] echom[sg] endf[unction] exi[t] fin[d] foldc[lose] g h[elp] hi if is[earch] kee[pmarks] lN[ext] laddb[uffer] lb[uffer] lcscope lf[ile] lgete[xpr] lla[st] lnew[er] loc[kmarks] lpf[ile] luado m[ove] menut[ranslate] mksp[ell] mzf[ile] new nor ol[dfiles] p[rint] ped[it] pre[serve] promptf[ind] ptf[irst] ptr[ewind] py3do q[uit] red[o] res[ize] rightb[elow] rundo sIg sN[ext] sbN[ext] sbm[odified] scI scp se[t] sfir[st] sgi sh[ell] sign sir sme snoreme spe[llgood] spellw[rong] sre[wind] srp startr[eplace] sunme sy t tabc[lose] tabl[ast] tabp[revious] tcld[o] tj[ump] tp[revious] u[ndo] unl ve[rsion] vim[grep] vs[plit] win[size] wp[revious] wv[iminfo] xmenu xunmenu
-syn keyword vimCommand contained abo[veleft] arge[dit] bN[ext] bf[irst] br[ewind] bufdo c[hange] cat[ch] ce[nter] cgetb[uffer] cl[ist] cnew[er] comc[lear] cpf[ile] cuna[bbrev] delel delf[unction] dif[fupdate] difft[his] do e[dit] echon endfo[r] exu[sage] fina[lly] foldd[oopen] go[to] ha[rdcopy] hid[e] ij[ump] isp[lit] keepa lNf[ile] laddf[ile] lc[d] ld[o] lfdo lgr[ep] lli[st] lnf[ile] lockv[ar] lr[ewind] luafile ma[rk] mes mkv[imrc] n[ext] nmapc[lear] nore omapc[lear] pa[ckadd] perld[o] prev[ious] promptr[epl] ptj[ump] pts[elect] py[thon] qa[ll] redi[r] ret[ab] ru[ntime] rv[iminfo] sIl sa[rgument] sb[uffer] sbn[ext] sce scr[iptnames] setf[iletype] sg sgl si sil[ent] sl[eep] smenu snoremenu spelld[ump] spr[evious] srg st[op] stj[ump] sunmenu syn tN[ext] tabd[o] tabm[ove] tabr[ewind] tclf[ile] tl[ast] tr[ewind] una[bbreviate] unlo[ckvar] verb[ose] vimgrepa[dd] wN[ext] winc[md] wq x[it] xnoreme xwininfo
-syn keyword vimCommand contained al[l] argg[lobal] b[uffer] bl[ast] brea[k] buffers cabc[lear] cb[uffer] cex[pr] cgete[xpr] cla[st] cnf[ile] comp[iler] cq[uit] cw[indow] delep dell diffg[et] dig[raphs] doau ea el[se] endt[ry] f[ile] fini[sh] folddoc[losed] gr[ep] helpc[lose] his[tory] il[ist] iuna[bbrev] keepalt l[ist] lan[guage] lch[dir] le[ft] lfir[st] lgrepa[dd] lmak[e] lo[adview] lol[der] ls lv[imgrep] mak[e] messages mkvie[w] nb[key] noa nos[wapfile] on[ly] packl[oadall] po[p] pro ps[earch] ptl[ast] pu[t] pydo quita[ll] redr[aw] retu[rn] rub[y] sI sIn sal[l] sba[ll] sbp[revious] scg scripte[ncoding] setg[lobal] sgI sgn sic sim[alt] sla[st] smile so[urce] spelli[nfo] sr sri sta[g] stopi[nsert] sus[pend] sync ta[g] tabe[dit] tabn[ext] tabs te[aroff] tm[enu] try undoj[oin] uns[ilent] vert[ical] viu[sage] w[rite] windo wqa[ll] xa[ll] xnoremenu y[ank]
-syn keyword vimCommand contained ar[gs] argl[ocal] ba[ll] bm[odified] breaka[dd] bun[load] cad[dbuffer] cc cf[ile] changes cle[arjumps] co[py] con[tinue] cr[ewind] d[elete] deletel delm[arks] diffo[ff] dir dp earlier elsei[f] endw[hile] files fir[st] foldo[pen] grepa[dd] helpf[ind] i imapc[lear] j[oin]
+syn keyword vimCommand contained a arga[dd] argu[ment] bad[d] bn[ext] breakd[el] bw[ipeout] cadde[xpr] cc cf[ile] changes cla[st] cnf[ile] comp[iler] cq[uit] cw[indow] delep dell diffg[et] dig[raphs] doau ea el[se] endt[ry] f[ile] fina[lly] foldd[oopen] go[to] ha[rdcopy] hid[e] ij[ump] isp[lit] keepa l[ist] lat lcl[ose] lex[pr] lgetb[uffer] lhi[story] lmapc[lear] loadk lop[en] lt[ag] lvimgrepa[dd] marks mk[exrc] mod[e] nbc[lose] noautocmd nu[mber] opt[ions] pc[lose] popu[p] prof[ile] ptN[ext] ptn[ext] pw[d] pyf[ile] r[ead] redraws[tatus] rew[ind] rubyd[o] sIc sIp san[dbox] sbf[irst] sbr[ewind] sci scs setl[ocal] sgc sgp sie sin sm[agic] sn[ext] sor[t] spellr[epall] srI srl star[tinsert] sts[elect] sv[iew] syncbind tab tabf[ind] tabnew tags tf[irst] tn[ext] ts[elect] undol[ist] up[date] vi[sual] vmapc[lear] wa[ll] winp[os] ws[verb] xmapc[lear] xprop
+syn keyword vimCommand contained ab argd[elete] as[cii] bd[elete] bo[tright] breakl[ist] cN[ext] caddf[ile] ccl[ose] cfdo chd[ir] cle[arjumps] co[py] con[tinue] cr[ewind] d[elete] deletel delm[arks] diffo[ff] dir dp earlier elsei[f] endw[hile] files fini[sh] folddoc[losed] gr[ep] helpc[lose] his[tory] il[ist] iuna[bbrev] keepalt la[st] later lcs lf[ile] lgete[xpr] ll lne[xt] loadkeymap lp[revious] lua lw[indow] mat[ch] mks[ession] mz[scheme] nbs[tart] noh[lsearch] o[pen] ownsyntax pe[rl] pp[op] profd[el] pta[g] ptp[revious] py3 python3 rec[over] reg[isters] ri[ght] rubyf[ile] sIe sIr sav[eas] sbl[ast] sc scl scscope sf[ind] sge sgr sig sip sm[ap] sno[magic] sp[lit] spellu[ndo] src srn startg[replace] sun[hide] sw[apname] syntime tabN[ext] tabfir[st] tabo[nly] tc[l] th[row] to[pleft] tu[nmenu] unh[ide] v vie[w] vne[w] wh[ile] wn[ext] wundo xme xunme
+syn keyword vimCommand contained abc[lear] argdo au bel[owright] bp[revious] bro[wse] cNf[ile] cal[l] cd cfir[st] che[ckpath] clo[se] col[der] conf[irm] cs debug deletep delp diffp[atch] dj[ump] dr[op] ec em[enu] ene[w] filet fir[st] foldo[pen] grepa[dd] helpf[ind] i imapc[lear] j[oin] keepj[umps] lad[dexpr] lb[uffer] lcscope lfdo lgr[ep] lla[st] lnew[er] loc[kmarks] lpf[ile] luado m[ove] menut[ranslate] mksp[ell] mzf[ile] new nor ol[dfiles] p[rint] ped[it] pre[serve] promptf[ind] ptf[irst] ptr[ewind] py3do q[uit] red[o] res[ize] rightb[elow] rundo sIg sN[ext] sbN[ext] sbm[odified] scI scp se[t] sfir[st] sgi sh[ell] sign sir sme snoreme spe[llgood] spellw[rong] sre[wind] srp startr[eplace] sunme sy t tabc[lose] tabl[ast] tabp[revious] tcld[o] tj[ump] tp[revious] u[ndo] unl ve[rsion] vim[grep] vs[plit] win[size] wp[revious] wv[iminfo] xmenu xunmenu
+syn keyword vimCommand contained abo[veleft] arge[dit] bN[ext] bf[irst] br[ewind] bufdo c[hange] cat[ch] cdo cg[etfile] checkt[ime] cmapc[lear] colo[rscheme] cope[n] cscope debugg[reedy] deletl dep diffpu[t] dl ds[earch] echoe[rr] en[dif] ex filetype fix[del] for gui helpg[rep] ia in ju[mps] keepp[atterns] laddb[uffer] lbo[ttom] ld[o] lfir[st] lgrepa[dd] lli[st] lnf[ile] lockv[ar] lr[ewind] luafile ma[rk] mes mkv[imrc] n[ext] nmapc[lear] nore omapc[lear] pa[ckadd] perld[o] prev[ious] promptr[epl] ptj[ump] pts[elect] py[thon] qa[ll] redi[r] ret[ab] ru[ntime] rv[iminfo] sIl sa[rgument] sb[uffer] sbn[ext] sce scr[iptnames] setf[iletype] sg sgl si sil[ent] sl[eep] smenu snoremenu spelld[ump] spr[evious] srg st[op] stj[ump] sunmenu syn tN[ext] tabd[o] tabm[ove] tabr[ewind] tclf[ile] tl[ast] tr[ewind] una[bbreviate] unlo[ckvar] verb[ose] vimgrepa[dd] wN[ext] winc[md] wq x[it] xnoreme xwininfo
+syn keyword vimCommand contained al[l] argg[lobal] b[uffer] bl[ast] brea[k] buffers cabc[lear] cb[uffer] ce[nter] cgetb[uffer] chi[story] cn[ext] com cp[revious] cstag delc[ommand] deletp di[splay] diffs[plit] dli[st] dsp[lit] echom[sg] endf[unction] exi[t] filt[er] fo[ld] fu[nction] gvim helpt[ags] iabc[lear] intro k lN[ext] laddf[ile] lc[d] le[ft] lg[etfile] lh[elpgrep] lmak[e] lo[adview] lol[der] ls lv[imgrep] mak[e] messages mkvie[w] nb[key] noa nos[wapfile] on[ly] packl[oadall] po[p] pro ps[earch] ptl[ast] pu[t] pydo quita[ll] redr[aw] retu[rn] rub[y] sI sIn sal[l] sba[ll] sbp[revious] scg scripte[ncoding] setg[lobal] sgI sgn sic sim[alt] sla[st] smile so[urce] spelli[nfo] sr sri sta[g] stopi[nsert] sus[pend] sync ta[g] tabe[dit] tabn[ext] tabs te[aroff] tm[enu] try undoj[oin] uns[ilent] vert[ical] viu[sage] w[rite] windo wqa[ll] xa[ll] xnoremenu y[ank]
+syn keyword vimCommand contained ar[gs] argl[ocal] ba[ll] bm[odified] breaka[dd] bun[load] cad[dbuffer] cbo[ttom] cex[pr] cgete[xpr] cl[ist] cnew[er] comc[lear] cpf[ile] cuna[bbrev] delel delf[unction] dif[fupdate] difft[his] do e[dit] echon endfo[r] exu[sage] fin[d] foldc[lose] g h[elp] hi if is[earch] kee[pmarks] lNf[ile] lan[guage] lch[dir] lefta[bove]
syn match vimCommand contained "\<z[-+^.=]\=\>"
syn keyword vimStdPlugin contained DiffOrig Man N[ext] P[rint] S TOhtml XMLent XMLns
" vimOptions are caught only when contained in a vimSet {{{2
-syn keyword vimOption contained acd ambw arshape background ballooneval bg bomb bs cb ch cinoptions cms commentstring copyindent cscopepathcomp csprg cul def diff display edcompatible enc errorbells expandtab fdl fenc fileencodings fixeol foldclose foldmarker formatlistpat gcr ghr guicursor guitablabel hi hkmapp icon imak ims incsearch infercase isk keymap langmenu lines lmap lw mat maxmempattern mis mmt mouse mouseshape mzquantum odev osfiletype patchexpr pexpr pmbfn printencoding prompt qe relativenumber rightleft rs runtimepath scroll sections sh shellslash shm showmode sj smd spell splitbelow ssl stl sw sxe tabpagemax tags tbs termguicolors tgst titleold top ttimeoutlen ttyscroll ul ur verbosefile visualbell wcm wi wildmenu winfixwidth wm wrapscan
-syn keyword vimOption contained ai anti autochdir backspace balloonexpr bh breakat bsdir cc charconvert cinw co compatible cot cscopeprg csqf cursorbind define diffexpr dy ef encoding errorfile exrc fdls fencs fileformat fk foldcolumn foldmethod formatoptions gd go guifont guitabtooltip hid hkp iconstring imc imsearch inde insertmode iskeyword keymodel langnoremap linespace lnr lz matchpairs maxmemtot mkspellmem mod mousef mouset nf oft pa patchmode pfn popt printexpr pt quoteescape remap rightleftcmd rtp sb scrollbind secure shcf shelltemp shortmess showtabline slm sn spellcapcheck splitright ssop stmp swapfile sxq tabstop tagstack tc terse thesaurus titlestring tpm ttm ttytype undodir ut vfile vop wd wic wildmode winheight wmh write
-syn keyword vimOption contained akm antialias autoindent backup bdir bin breakindent bsk ccv ci cinwords cocu complete cp cscopequickfix csre cursorcolumn delcombine diffopt ea efm endofline errorformat fcl fdm fex fileformats fkmap foldenable foldminlines formatprg gdefault gp guifontset helpfile hidden hl ignorecase imcmdline imsf indentexpr is isp keywordprg laststatus lisp loadplugins ma matchtime mco ml modeline mousefocus mousetime nrformats ofu packpath path ph pp printfont pumheight rdt renderoptions rl ru sbo scrolljump sel shell shelltype shortname shq sm so spellfile spr st sts swapsync syn tag tal tcldll textauto tildeop tl tr tty tw undofile vb vi wa weirdinvert wig wildoptions winminheight wmnu writeany
-syn keyword vimOption contained al ar autoread backupcopy bdlay binary breakindentopt bt cd cin clipboard cole completefunc cpo cscoperelative cst cursorline dex digraph ead ei eol esckeys fcs fdn ff fileignorecase flp foldexpr foldnestmax fp gfm grepformat guifontwide helpheight highlight hlg im imd imstatusfunc indentkeys isf isprint km lazyredraw lispwords lpl macatsui maxcombine mef mls modelines mousehide mp nu omnifunc para pdev pheader preserveindent printheader pvh re report rlc rubydll sbr scrolloff selection shellcmdflag shellxescape showbreak si smartcase softtabstop spelllang sps sta su swb synmaxcol tagbsearch tb tenc textmode timeout tm ts ttybuiltin tx undolevels vbs viewdir wak wfh wildchar wim winminwidth wmw writebackup
-syn keyword vimOption contained aleph arab autowrite backupdir belloff bk bri bufhidden cdpath cindent cm colorcolumn completeopt cpoptions cscopetag csto cwh dg dip eadirection ek ep et fdc fdo ffs filetype fml foldignore foldopen fs gfn grepprg guiheadroom helplang history hls imactivatefunc imdisable inc indk isfname joinspaces kmp lbr list ls magic maxfuncdepth menuitems mm modifiable mousem mps number opendevice paragraphs penc pi previewheight printmbcharset pvw readonly restorescreen rnu ruf sc scrollopt selectmode shellpipe shellxquote showcmd sidescroll smartindent sol spellsuggest sr stal sua swf syntax tagcase tbi term textwidth timeoutlen to tsl ttyfast uc undoreload vdir viewoptions warn wfw wildcharm winaltkeys winwidth wop writedelay
-syn keyword vimOption contained allowrevins arabic autowriteall backupext beval bkc briopt buflisted cedit cink cmdheight columns concealcursor cpt cscopetagorder csverb debug dict dir eb emo equalalways eventignore fde fdt fic fillchars fmr foldlevel foldtext fsync gfs gtl guioptions hf hk hlsearch imactivatekey imi include inex isi js kp lcs listchars lsp makeef maxmapdepth mfd mmd modified mousemodel msm numberwidth operatorfunc paste perldll pm previewwindow printmbfont pythondll redrawtime revins ro ruler scb scs sessionoptions shellquote shiftround showfulltag sidescrolloff smarttab sp spf srr startofline suffixes switchbuf ta taglength tbidi termbidi tf title toolbar tsr ttym udf updatecount ve viminfo wb wh wildignore window wiv wrap ws
-syn keyword vimOption contained altkeymap arabicshape aw backupskip bex bl brk buftype cf cinkeys cmdwinheight com conceallevel crb cscopeverbose cuc deco dictionary directory ed emoji equalprg ex fdi fen fileencoding fixendofline fo foldlevelstart formatexpr ft gfw gtt guipty hh hkmap ic imaf iminsert includeexpr inf isident key langmap linebreak lm luadll makeprg maxmem mh mmp more mouses mzq nuw opfunc pastetoggle pex pmbcs printdevice printoptions pythonthreedll regexpengine ri rop rulerformat scr sect sft shellredir shiftwidth showmatch siso smc spc spl ss statusline suffixesadd sws tabline tagrelative tbis termencoding tgc titlelen toolbariconsize ttimeout ttymouse udir updatetime verbose virtualedit wc whichwrap wildignorecase winfixheight wiw wrapmargin ww
-syn keyword vimOption contained ambiwidth ari awa balloondelay bexpr bo browsedir casemap cfu cino cmp comments confirm cryptmethod cspc
+syn keyword vimOption contained acd ambw arshape background ballooneval bg bomb bs cb ch cinoptions cms commentstring copyindent cscopepathcomp csprg cursorbind delcombine diffopt ea efm endofline errorformat fcl fdm fex fileformats fkmap foldenable foldminlines formatprg gdefault gp guifontset helpfile hidden hl ignorecase imcmdline imsf indentexpr is isp keywordprg laststatus lisp loadplugins ma matchtime mco ml modeline mousefocus mousetime nrformats ofu packpath path ph pp printfont pumheight rdt renderoptions rl ru sbo scrollbind secure shcf shelltemp shortmess showtabline sj smd spell splitbelow ssl stl sw sxe tabpagemax tags tbs termguicolors tgst titleold top ttimeoutlen ttyscroll ul ur verbosefile visualbell wcm wi wildmenu winfixwidth wm wrapscan
+syn keyword vimOption contained ai anti autochdir backspace balloonexpr bh breakat bsdir cc charconvert cinw co compatible cot cscopeprg csqf cursorcolumn dex digraph ead ei eol esckeys fcs fdn ff fileignorecase flp foldexpr foldnestmax fp gfm grepformat guifontwide helpheight highlight hlg im imd imstatusfunc indentkeys isf isprint km lazyredraw lispwords lpl macatsui maxcombine mef mls modelines mousehide mp nu omnifunc para pdev pheader preserveindent printheader pvh re report rlc rubydll sbr scrolljump sel shell shelltype shortname shq slm sn spellcapcheck splitright ssop stmp swapfile sxq tabstop tagstack tc terse thesaurus titlestring tpm ttm ttytype undodir ut vfile vop wd wic wildmode winheight wmh write
+syn keyword vimOption contained akm antialias autoindent backup bdir bin breakindent bsk ccv ci cinwords cocu complete cp cscopequickfix csre cursorline dg dip eadirection ek ep et fdc fdo ffs filetype fml foldignore foldopen fs gfn grepprg guiheadroom helplang history hls imactivatefunc imdisable inc indk isfname joinspaces kmp lbr list ls magic maxfuncdepth menuitems mm modifiable mousem mps number opendevice paragraphs penc pi previewheight printmbcharset pvw readonly restorescreen rnu ruf sc scrolloff selection shellcmdflag shellxescape showbreak si sm so spellfile spr st sts swapsync syn tag tal tcldll textauto tildeop tl tr tty tw undofile vb vi wa weirdinvert wig wildoptions winminheight wmnu writeany
+syn keyword vimOption contained al ar autoread backupcopy bdlay binary breakindentopt bt cd cin clipboard cole completefunc cpo cscoperelative cst cwh dict dir eb emo equalalways eventignore fde fdt fic fillchars fmr foldlevel foldtext fsync gfs gtl guioptions hf hk hlsearch imactivatekey imi include inex isi js kp lcs listchars lsp makeef maxmapdepth mfd mmd modified mousemodel msm numberwidth operatorfunc paste perldll pm previewwindow printmbfont pythondll redrawtime revins ro ruler scb scrollopt selectmode shellpipe shellxquote showcmd sidescroll smartcase softtabstop spelllang sps sta su swb synmaxcol tagbsearch tb tenc textmode timeout tm ts ttybuiltin tx undolevels vbs viewdir wak wfh wildchar wim winminwidth wmw writebackup
+syn keyword vimOption contained aleph arab autowrite backupdir belloff bk bri bufhidden cdpath cindent cm colorcolumn completeopt cpoptions cscopetag csto debug dictionary directory ed emoji equalprg ex fdi fen fileencoding fixendofline fo foldlevelstart formatexpr ft gfw gtt guipty hh hkmap ic imaf iminsert includeexpr inf isident key langmap linebreak lm luadll makeprg maxmem mh mmp more mouses mzq nuw opfunc pastetoggle pex pmbcs printdevice printoptions pythonthreedll regexpengine ri rop rulerformat scl scs sessionoptions shellquote shiftround showfulltag sidescrolloff smartindent sol spellsuggest sr stal sua swf syntax tagcase tbi term textwidth timeoutlen to tsl ttyfast uc undoreload vdir viewoptions warn wfw wildcharm winaltkeys winwidth wop writedelay
+syn keyword vimOption contained allowrevins arabic autowriteall backupext beval bkc briopt buflisted cedit cink cmdheight columns concealcursor cpt cscopetagorder csverb deco diff display edcompatible enc errorbells expandtab fdl fenc fileencodings fixeol foldclose foldmarker formatlistpat gcr ghr guicursor guitablabel hi hkmapp icon imak ims incsearch infercase isk keymap langmenu lines lmap lw mat maxmempattern mis mmt mouse mouseshape mzquantum odev osfiletype patchexpr pexpr pmbfn printencoding prompt qe relativenumber rightleft rs runtimepath scr sect sft shellredir shiftwidth showmatch signcolumn smarttab sp spf srr startofline suffixes switchbuf ta taglength tbidi termbidi tf title toolbar tsr ttym udf updatecount ve viminfo wb wh wildignore window wiv wrap ws
+syn keyword vimOption contained altkeymap arabicshape aw backupskip bex bl brk buftype cf cinkeys cmdwinheight com conceallevel crb cscopeverbose cuc def diffexpr dy ef encoding errorfile exrc fdls fencs fileformat fk foldcolumn foldmethod formatoptions gd go guifont guitabtooltip hid hkp iconstring imc imsearch inde insertmode iskeyword keymodel langnoremap linespace lnr lz matchpairs maxmemtot mkspellmem mod mousef mouset nf oft pa patchmode pfn popt printexpr pt quoteescape remap rightleftcmd rtp sb scroll sections sh shellslash shm showmode siso smc spc spl ss statusline suffixesadd sws tabline tagrelative tbis termencoding tgc titlelen toolbariconsize ttimeout ttymouse udir updatetime verbose virtualedit wc whichwrap wildignorecase winfixheight wiw wrapmargin ww
+syn keyword vimOption contained ambiwidth ari awa balloondelay bexpr bo browsedir casemap cfu cino cmp comments confirm cryptmethod cspc cul define
" vimOptions: These are the turn-off setting variants {{{2
syn keyword vimOption contained noacd noallowrevins noantialias noarabic noarshape noautoread noaw noballooneval nobinary nobomb nobuflisted nocin noconfirm nocrb nocscopeverbose nocsverb nocursorbind nodeco nodiff noeb noek noendofline noerrorbells noex nofen nofixendofline nofkmap nofsync noguipty nohk nohkp noic noim noimd noinf noinsertmode nojoinspaces nolangnoremap nolbr nolisp nolnr nolpl noma nomagic noml nomodeline nomodified nomousef nomousehide nonumber noopendevice nopi nopreviewwindow nopvw norelativenumber norestorescreen nori norl noro noru nosb noscb noscs nosft noshelltemp noshortname noshowfulltag noshowmode nosm nosmartindent nosmd nosol nosplitbelow nospr nossl nostartofline noswapfile nota notagrelative notbi notbs noterse notextmode notgst notimeout noto notr nottybuiltin notx noundofile novisualbell nowarn noweirdinvert nowfw nowildignorecase nowinfixheight nowiv nowrap nowrite nowritebackup
@@ -65,21 +65,21 @@ syn keyword vimErrSetting contained bioskey biosk conskey consk autoprint beauti
" AutoCmd Events {{{2
syn case ignore
-syn keyword vimAutoEvent contained BufAdd BufCreate BufDelete BufEnter BufFilePost BufFilePre BufHidden BufLeave BufNew BufNewFile BufRead BufReadCmd BufReadPost BufReadPre BufUnload BufWinEnter BufWinLeave BufWipeout BufWrite BufWriteCmd BufWritePost BufWritePre CmdUndefined CmdwinEnter CmdwinLeave ColorScheme CompleteDone CursorHold CursorHoldI CursorMoved CursorMovedI EncodingChanged FileAppendCmd FileAppendPost FileAppendPre FileChangedRO FileChangedShell FileChangedShellPost FileEncoding FileReadCmd FileReadPost FileReadPre FileType FileWriteCmd FileWritePost FileWritePre FilterReadPost FilterReadPre FilterWritePost FilterWritePre FocusGained FocusLost FuncUndefined GUIEnter GUIFailed InsertChange InsertCharPre InsertEnter InsertLeave MenuPopup OptionSet QuickFixCmdPost QuickFixCmdPre QuitPre RemoteReply SessionLoadPost ShellCmdPost ShellFilterPost SourceCmd SourcePre SpellFileMissing StdinReadPost StdinReadPre SwapExists Syntax TabEnter TabLeave TermChanged TermResponse TextChanged TextChangedI User VimEnter VimLeave VimLeavePre VimResized WinEnter WinLeave
+syn keyword vimAutoEvent contained BufAdd BufCreate BufDelete BufEnter BufFilePost BufFilePre BufHidden BufLeave BufNew BufNewFile BufRead BufReadCmd BufReadPost BufReadPre BufUnload BufWinEnter BufWinLeave BufWipeout BufWrite BufWriteCmd BufWritePost BufWritePre CmdUndefined CmdwinEnter CmdwinLeave ColorScheme CompleteDone CursorHold CursorHoldI CursorMoved CursorMovedI EncodingChanged FileAppendCmd FileAppendPost FileAppendPre FileChangedRO FileChangedShell FileChangedShellPost FileEncoding FileReadCmd FileReadPost FileReadPre FileType FileWriteCmd FileWritePost FileWritePre FilterReadPost FilterReadPre FilterWritePost FilterWritePre FocusGained FocusLost FuncUndefined GUIEnter GUIFailed InsertChange InsertCharPre InsertEnter InsertLeave MenuPopup OptionSet QuickFixCmdPost QuickFixCmdPre QuitPre RemoteReply SessionLoadPost ShellCmdPost ShellFilterPost SourceCmd SourcePre SpellFileMissing StdinReadPost StdinReadPre SwapExists Syntax TabClosed TabEnter TabLeave TabNew TermChanged TermResponse TextChanged TextChangedI User VimEnter VimLeave VimLeavePre VimResized WinEnter WinLeave WinNew
" Highlight commonly used Groupnames {{{2
syn keyword vimGroup contained Comment Constant String Character Number Boolean Float Identifier Function Statement Conditional Repeat Label Operator Keyword Exception PreProc Include Define Macro PreCondit Type StorageClass Structure Typedef Special SpecialChar Tag Delimiter SpecialComment Debug Underlined Ignore Error Todo
" Default highlighting groups {{{2
-syn keyword vimHLGroup contained ColorColumn Cursor CursorColumn CursorIM CursorLine CursorLineNr DiffAdd DiffChange DiffDelete DiffText Directory ErrorMsg FoldColumn Folded IncSearch LineNr MatchParen Menu ModeMsg MoreMsg NonText Normal Pmenu PmenuSbar PmenuSel PmenuThumb Question Scrollbar Search SignColumn SpecialKey SpellBad SpellCap SpellLocal SpellRare StatusLine StatusLineNC TabLine TabLineFill TabLineSel Title Tooltip VertSplit Visual VisualNOS WarningMsg WildMenu
+syn keyword vimHLGroup contained ColorColumn Cursor CursorColumn CursorIM CursorLine CursorLineNr DiffAdd DiffChange DiffDelete DiffText Directory EndOfBuffer ErrorMsg FoldColumn Folded IncSearch LineNr MatchParen Menu ModeMsg MoreMsg NonText Normal Pmenu PmenuSbar PmenuSel PmenuThumb Question Scrollbar Search SignColumn SpecialKey SpellBad SpellCap SpellLocal SpellRare StatusLine StatusLineNC TabLine TabLineFill TabLineSel Title Tooltip VertSplit Visual VisualNOS WarningMsg WildMenu
syn match vimHLGroup contained "Conceal"
syn case match
" Function Names {{{2
-syn keyword vimFuncName contained abs append argv assert_fails assert_notmatch browse bufloaded bufwinnr call ch_close ch_getjob ch_open ch_sendraw clearmatches complete_check cosh deepcopy diff_hlID eventhandler exp filereadable findfile fnameescape foldlevel function getbufvar getcmdline getcurpos getfsize getloclist getqflist gettabwinvar getwinvar globpath haslocaldir histdel hlexists iconv input inputrestore insert islocked job_getchannel job_start join json_decode len line localtime luaeval mapcheck matchaddpos matchend matchstrpos mkdir nextnonblank pathshorten prevnonblank py3eval readfile reltimestr remote_peek remove resolve screenattr screenrow searchpair server2client setcharsearch setline setpos settabvar sha256 simplify sort spellsuggest str2float strchars strgetchar strlen strtrans substitute synIDattr system tabpagenr taglist tempname test_garbagecollect_now test_null_job test_null_string timer_stop tr undofile values wildmenumode win_findbuf winheight winline winrestview wordcount
-syn keyword vimFuncName contained acos argc asin assert_false assert_true browsedir bufname byte2line ceil ch_evalexpr ch_info ch_read ch_setoptions col confirm count delete empty executable expand filewritable float2nr fnamemodify foldtext garbagecollect getchar getcmdpos getcwd getftime getmatches getreg getwinposx glob has hasmapto histget hlID indent inputdialog inputsave invert isnan job_info job_status js_decode json_encode libcall line2byte log map match matcharg matchlist max mode nr2char perleval printf pyeval reltime remote_expr remote_read rename reverse screenchar search searchpairpos serverlist setcmdpos setloclist setqflist settabwinvar shellescape sin soundfold split str2nr strdisplaywidth stridx strpart strwidth synconcealed synIDtrans systemlist tabpagewinnr tan test_alloc_fail test_null_channel test_null_list test_settime tolower trunc undotree virtcol winbufnr win_getid win_id2tabwin winnr winsaveview writefile
-syn keyword vimFuncName contained add argidx assert_equal assert_match atan bufexists bufnr byteidx changenr ch_evalraw ch_log ch_readraw ch_status complete copy cscope_connection did_filetype escape exepath extend filter floor foldclosed foldtextresult get getcharmod getcmdtype getfontname getftype getpid getregtype getwinposy glob2regpat has_key histadd histnr hostname index inputlist inputsecret isdirectory items job_setoptions job_stop js_encode keys libcallnr lispindent log10 maparg matchadd matchdelete matchstr min mzeval or pow pumvisible range reltimefloat remote_foreground remote_send repeat round screencol searchdecl searchpos setbufvar setfperm setmatches setreg setwinvar shiftwidth sinh spellbadword sqrt strcharpart strftime string strridx submatch synID synstack tabpagebuflist tagfiles tanh test_disable_char_avail test_null_dict test_null_partial timer_start toupper type uniq visualmode wincol win_gotoid win_id2win winrestcmd winwidth xor
-syn keyword vimFuncName contained and arglistid assert_exception assert_notequal atan2 buflisted bufwinid byteidxcomp char2nr ch_getbufnr ch_logfile ch_sendexpr cindent complete_add cos cursor diff_filler eval exists feedkeys finddir fmod foldclosedend foreground getbufline getcharsearch getcmdwintype getfperm getline getpos gettabvar
+syn keyword vimFuncName contained abs append argv assert_fails assert_notequal atan2 buflisted bufwinid byteidxcomp char2nr ch_getbufnr ch_logfile ch_sendexpr cindent complete_add cos cursor diff_filler eval exepath extend filter floor foldclosed foldtextresult garbagecollect getbufvar getcmdline getcompletion getfperm getline getpos gettabinfo getwinposx glob2regpat haslocaldir histget hostname input inputsave isdirectory job_getchannel job_status js_decode json_encode libcall line2byte log map match matcharg matchlist max mode nr2char perleval printf pyeval reltime remote_expr remote_read rename reverse screenchar search searchpairpos serverlist setcmdpos setloclist setqflist settabwinvar shellescape sin soundfold split str2nr strdisplaywidth stridx strpart strwidth synconcealed synIDtrans systemlist tabpagewinnr tan test_alloc_fail test_garbagecollect_now test_null_job test_null_string timer_pause timer_stopall tr undofile values wildmenumode win_findbuf winheight winline winrestview wordcount
+syn keyword vimFuncName contained acos argc asin assert_false assert_notmatch browse bufloaded bufwinnr call ch_close ch_getjob ch_open ch_sendraw clearmatches complete_check cosh deepcopy diff_hlID eventhandler exists feedkeys finddir fmod foldclosedend foreground get getchar getcmdpos getcurpos getfsize getloclist getqflist gettabvar getwinposy globpath hasmapto histnr iconv inputdialog inputsecret islocked job_info job_stop js_encode keys libcallnr lispindent log10 maparg matchadd matchdelete matchstr min mzeval or pow pumvisible range reltimefloat remote_foreground remote_send repeat round screencol searchdecl searchpos setbufvar setfperm setmatches setreg setwinvar shiftwidth sinh spellbadword sqrt strcharpart strftime string strridx submatch synID synstack tabpagebuflist tagfiles tanh test_autochdir test_null_channel test_null_list test_settime timer_start tolower trunc undotree virtcol winbufnr win_getid win_id2tabwin winnr winsaveview writefile
+syn keyword vimFuncName contained add argidx assert_equal assert_inrange assert_true browsedir bufname byte2line ceil ch_evalexpr ch_info ch_read ch_setoptions col confirm count delete empty executable exp filereadable findfile fnameescape foldlevel funcref getbufinfo getcharmod getcmdtype getcwd getftime getmatches getreg gettabwinvar getwinvar has histadd hlexists indent inputlist insert isnan job_setoptions join json_decode len line localtime luaeval mapcheck matchaddpos matchend matchstrpos mkdir nextnonblank pathshorten prevnonblank py3eval readfile reltimestr remote_peek remove resolve screenattr screenrow searchpair server2client setcharsearch setline setpos settabvar sha256 simplify sort spellsuggest str2float strchars strgetchar strlen strtrans substitute synIDattr system tabpagenr taglist tempname test_disable_char_avail test_null_dict test_null_partial timer_info timer_stop toupper type uniq visualmode wincol win_gotoid win_id2win winrestcmd winwidth xor
+syn keyword vimFuncName contained and arglistid assert_exception assert_match atan bufexists bufnr byteidx changenr ch_evalraw ch_log ch_readraw ch_status complete copy cscope_connection did_filetype escape execute expand filewritable float2nr fnamemodify foldtext function getbufline getcharsearch getcmdwintype getfontname getftype getpid getregtype getwininfo glob has_key histdel hlID index inputrestore invert items job_start
"--- syntax here and above generated by mkvimvim ---
" Special Vim Highlighting (not automatic) {{{1
diff --git a/runtime/tutor/tutor.es b/runtime/tutor/tutor.es
index 7bd0c54f8..832ad04ce 100644
--- a/runtime/tutor/tutor.es
+++ b/runtime/tutor/tutor.es
@@ -478,7 +478,7 @@ Nota: Esto es muy til en la deteccin de errores en un programa con
1. Ctrl-g muestra la posicin del cursor en el fichero y su estado.
Mayu-G mueve el cursor al final del fichero. Un nmero de lnea
- sewguido de Mayu-G mueve el cursor a la lnea con ese nmero.
+ seguido de Mayu-G mueve el cursor a la lnea con ese nmero.
2. Pulsando / seguido de una frase busca la frase hacia ADELANTE.
Pulsando ? seguido de una frase busca la frase hacia ATRS.
diff --git a/runtime/tutor/tutor.es.utf-8 b/runtime/tutor/tutor.es.utf-8
index b7561e475..49c9cdbbf 100644
--- a/runtime/tutor/tutor.es.utf-8
+++ b/runtime/tutor/tutor.es.utf-8
@@ -478,7 +478,7 @@ Nota: ¡Esto es muy útil en la detección de errores en un programa con
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.
+ seguido 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.
diff --git a/src/po/fi.po b/src/po/fi.po
index 4a7dcaa4f..91ef91e12 100644
--- a/src/po/fi.po
+++ b/src/po/fi.po
@@ -1,45 +1,45 @@
# Finnish translation for Vim.
# Copyright (C) 2003-2006 Free Software Foundation, Inc.
-# 2007-2010, Flammie Pirinen <flammie@iki.fi>
+# 2007-2016, Flammie Pirinen <flammie@iki.fi>
#
-# Vimin kyttjt on nrttej. Sanasto on jargonia :-p
-#
-# Lhinn latin-1:t, sill vim pit portata ilmeisen obskuureille
-# alustoille. Mys: pluralit puuttuu, ohjelman kyttliittymn fontti
-# tasavlinen, tila rajattu, jne. jne., luovia ratkaisuja edess.
+# Jargonia ei ole yritetty suotta kotoperäistää missä teknisempi lainasanasto
+# tulee paremmin kyseeseen.
#
# Sanastosta:
-# Fold on sellainen moderneissa ohjelmointi-IDE:iss oleva toiminto, jolla
-# lohko koodia esim. funktio piilotetaan nkymst: suom. taitos alkup.
+# * 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 .)
+# * source, v. lataa tiedoston, kuten bash-komento source (tai .)
+# * dictionary (dict) on vaihtelevasti sanakirja tai tietorakenne
#
msgid ""
msgstr ""
"Project-Id-Version: Vim 7\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-08-09 02:00+0300\n"
-"PO-Revision-Date: 2010-08-09 02:35+0300\n"
-"Last-Translator: Flammie Pirinen <flammie@iki.fi>\n"
+"POT-Creation-Date: 2016-08-23 12:27+0200\n"
+"PO-Revision-Date: 2016-08-23 16:12+0200\n"
+"Last-Translator: Flammie A Pirinen <flammie@iki.fi>\n"
"Language-Team: Finnish <laatu@lokalisointi.org>\n"
+"Language: fi\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "E831: bf_key_init() called with empty password"
-msgstr "E831: bf_key_init() tyhjll salasanalla"
+msgstr "E831: bf_key_init() tyhjällä salasanalla"
msgid "E820: sizeof(uint32_t) != 4"
msgstr "E820: sizeof(uint32_t) != 4"
msgid "E817: Blowfish big/little endian use wrong"
-msgstr "E817: Blowfishin tavujrjestys vr"
+msgstr "E817: Blowfishin tavujärjestys väärä"
msgid "E818: sha256 test failed"
-msgstr "E818: sha256-testi eponnistui failed"
+msgstr "E818: sha256-testi epäonnistui failed"
msgid "E819: Blowfish test failed"
-msgstr "E819: Blowfish-testi eponnistui"
+msgstr "E819: Blowfish-testi epäonnistui"
msgid "[Location List]"
msgstr "[Sijaintiluettelo]"
@@ -47,11 +47,17 @@ msgstr "[Sijaintiluettelo]"
msgid "[Quickfix List]"
msgstr "[Pikakorjausluettelo]"
+msgid "E855: Autocommands caused command to abort"
+msgstr "E855: Autocommands lopetti komennon"
+
msgid "E82: Cannot allocate any buffer, exiting..."
-msgstr "E82: Mitn puskuria ei voitu varata, lopetetaan..."
+msgstr "E82: Mitään puskuria ei voitu varata, lopetetaan..."
msgid "E83: Cannot allocate buffer, using other one..."
-msgstr "E83: Puskuria ei voitu varata, kytetn toista..."
+msgstr "E83: Puskuria ei voitu varata, käytetään toista..."
+
+msgid "E931: Buffer cannot be registered"
+msgstr "E931: Puskuria ei voi rekisteröidä"
msgid "E515: No buffers were unloaded"
msgstr "E515: Puskureita ei vapautettu"
@@ -83,6 +89,9 @@ msgstr "1 puskuri pyyhitty"
msgid "%d buffers wiped out"
msgstr "%d puskuria pyyhitty"
+msgid "E90: Cannot unload last buffer"
+msgstr "E90: Ei voi vapauttaa viimeistä puskuria"
+
msgid "E84: No modified buffer found"
msgstr "E84: Ei muokattuja puskureita"
@@ -90,39 +99,32 @@ msgstr "E84: Ei muokattuja puskureita"
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"
+msgstr "E87: Viimeisen puskurin ohi ei voi edetä"
msgid "E88: Cannot go before first buffer"
-msgstr "E88: Ensimmisen puskurin ohi ei voi edet"
+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 ! "
+"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 lydy"
+msgstr "E92: Puskuria %ld ei löydy"
#, c-format
msgid "E93: More than one match for %s"
-msgstr "E93: %s tsm useampaan kuin yhteen puskuriin"
+msgstr "E93: %s täsmää useampaan kuin yhteen puskuriin"
#, c-format
msgid "E94: No matching buffer for %s"
-msgstr "E94: %s ei tsm yhteenkn puskuriin"
+msgstr "E94: %s ei täsmää yhteenkään puskuriin"
#, c-format
msgid "line %ld"
@@ -141,7 +143,10 @@ msgid "[New file]"
msgstr "[Uusi tiedosto]"
msgid "[Read errors]"
-msgstr "[Lukuvirheit]"
+msgstr "[Lukuvirheitä]"
+
+msgid "[RO]"
+msgstr "[Luku]"
msgid "[readonly]"
msgstr "[kirjoitussuojattu]"
@@ -152,14 +157,14 @@ msgstr "1 rivi --%d %%--"
#, c-format
msgid "%ld lines --%d%%--"
-msgstr "%ld rivi --%d %%--"
+msgstr "%ld riviä --%d %%--"
#, c-format
msgid "line %ld of %ld --%d%%-- col "
msgstr "rivi %ld/%ld --%d %%-- sarake "
msgid "[No Name]"
-msgstr "[Nimetn]"
+msgstr "[Nimetön]"
#. must be a help buffer
msgid "help"
@@ -172,7 +177,7 @@ msgid "[Preview]"
msgstr "[Esikatselu]"
# sijainti tiedostossa -indikaattoreja:
-# 4 merkki sais riitt
+# 4 merkkiä sais riittää
msgid "All"
msgstr "Kaik"
@@ -182,7 +187,6 @@ msgstr "Loppu"
msgid "Top"
msgstr "Alku"
-#, c-format
msgid ""
"\n"
"# Buffer list:\n"
@@ -208,15 +212,80 @@ msgstr "Merkit kohteelle %s:"
msgid " line=%ld id=%d name=%s"
msgstr " rivi=%ld id=%d nimi=%s"
+msgid "E902: Cannot connect to port"
+msgstr "E902: Ei voi yhdistää porttiin"
+
+#, c-format
+msgid "E917: Cannot use a callback with %s()"
+msgstr "E917: Ei voitu käyttää callbackia %s()"
+
+msgid "E912: cannot use ch_evalexpr()/ch_sendexpr() with a raw or nl channel"
+msgstr "E912: ei voida käyttää funktioita ch_evalexpr(), ch_sendexpr()"
+" raa'an tai nl-kanavan kanssa"
+
+msgid "E906: not an open channel"
+msgstr "E906: ei ole avoin kanava"
+
+msgid "E920: _io file requires _name to be set"
+msgstr "E920: _io-tiedostolla pitää olla _name asetettu"
+
+msgid "E915: in_io buffer requires in_buf or in_name to be set"
+msgstr "E915: in_io-puskurilla pitää olla in_buf tai in_name asetettu"
+
+#, c-format
+msgid "E918: buffer must be loaded: %s"
+msgstr "E918: puskuria ei voi ladata: %s"
+
+msgid "E821: File is encrypted with unknown method"
+msgstr "E821: Tiedoston salaus on tuntematon"
+
+msgid "Warning: Using a weak encryption method; see :help 'cm'"
+msgstr "Varoitus: Käytetään heikkoa salausmenetelmää, ks. :help 'cm'"
+
+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ää!"
+
+msgid "[crypted]"
+msgstr "[salattu]"
+
#, c-format
-msgid "E96: Can not diff more than %ld buffers"
-msgstr "E96: Ei voi diffata enemp kuin %ld puskuria"
+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 "extend() argument"
+msgstr "extend()-argumentti"
+
+#, c-format
+msgid "E737: Key already exists: %s"
+msgstr "E737: Avain on jo olemassa: %s"
+
+#, c-format
+msgid "E96: Cannot diff more than %ld buffers"
+msgstr "E96: Ei voi diffata enempää kuin %ld puskuria"
msgid "E810: Cannot read or write temp files"
-msgstr "E810: Ei voi lukea tai kirjoittaa vliaikaistiedostoja"
+msgstr "E810: Ei voi lukea tai kirjoittaa väliaikaistiedostoja"
msgid "E97: Cannot create diffs"
-msgstr "E97: Ei voi luoda diffej"
+msgstr "E97: Ei voi luoda diffejä"
msgid "Patch file"
msgstr "Patch-tiedosto"
@@ -228,20 +297,20 @@ msgid "E98: Cannot read diff output"
msgstr "E98: Ei voi lukea diffin tulostetta"
msgid "E99: Current buffer is not in diff mode"
-msgstr "E99: Tm puskuri ei ole diff-tilassa"
+msgstr "E99: Tämä puskuri ei ole diff-tilassa"
msgid "E793: No other buffer in diff mode is modifiable"
-msgstr "E793: Yksikn muu diff-tilan puskurit ei ole muokattavissa"
+msgstr "E793: Yksikään muu diff-tilan puskurit ei ole muokattavissa"
msgid "E100: No other buffer in diff mode"
-msgstr "E100: Yksikn muu puskuri ei ole diff-tilassa"
+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, kytettvn valinta ei onnistu"
+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 lydy"
+msgstr "E102: Puskuria %s ei löydy"
#, c-format
msgid "E103: Buffer \"%s\" is not in diff mode"
@@ -251,75 +320,81 @@ msgid "E787: Buffer changed unexpectedly"
msgstr "E787: Puskuri vaihtui odottamatta"
msgid "E104: Escape not allowed in digraph"
-msgstr "E104: Escapea ei voi kytt digraafissa"
+msgstr "E104: Escapea ei voi käyttää digraafissa"
msgid "E544: Keymap file not found"
-msgstr "E544: Nppinkarttaa ei lydy"
+msgstr "E544: Näppäinkarttaa ei löydy"
msgid "E105: Using :loadkeymap not in a sourced file"
-msgstr "E105: Kytetn :loadkeymapia ladatun tiedoston ulkopuolella"
+msgstr "E105: Käytetään :loadkeymapia ladatun tiedoston ulkopuolella"
msgid "E791: Empty keymap entry"
-msgstr "E791: Tyhj keymap-kentt"
+msgstr "E791: Tyhjä keymap-kenttä"
msgid " Keyword completion (^N^P)"
-msgstr " Avainsanatydennys (^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 " Tysrivitydennys (^L^N^P)"
+msgstr " Täysrivitäydennys (^L^N^P)"
msgid " File name completion (^F^N^P)"
-msgstr " Tiedostonimitydennys (^F^N^P)"
+msgstr " Tiedostonimitäydennys (^F^N^P)"
msgid " Tag completion (^]^N^P)"
-msgstr " Tgitydennys (^]^N^P)"
+msgstr " Tägitäydennys (^]^N^P)"
msgid " Path pattern completion (^N^P)"
-msgstr " Polkukuviotydennys (^N^P)"
+msgstr " Polkukuviotäydennys (^N^P)"
msgid " Definition completion (^D^N^P)"
-msgstr " Mritelmtydennys (^D^N^P)"
+msgstr " Määritelmätäydennys (^D^N^P)"
msgid " Dictionary completion (^K^N^P)"
-msgstr " Sanakirjatydennys (^K^N^P)"
+msgstr " Sanakirjatäydennys (^K^N^P)"
msgid " Thesaurus completion (^T^N^P)"
-msgstr " Thesaurus-tydennys (^T^N^P)"
+msgstr " Thesaurus-täydennys (^T^N^P)"
msgid " Command-line completion (^V^N^P)"
-msgstr " Komentorivitydennys (^V^N^P)"
+msgstr " Komentorivitäydennys (^V^N^P)"
msgid " User defined completion (^U^N^P)"
-msgstr " Kyttjn mrittelem tydennys (^U^N^P)"
+msgstr " Käyttäjän määrittelemä täydennys (^U^N^P)"
msgid " Omni completion (^O^N^P)"
-msgstr " Omnitydennys (^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 tydennys (^N^P)"
+msgstr " Avainsanan paikallinen täydennys (^N^P)"
msgid "Hit end of paragraph"
msgstr "Kappaleen loppu tuli vastaan"
+msgid "E839: Completion function changed window"
+msgstr "E839: Täydennys vaihtoi ikkunaa"
+
+msgid "E840: Completion function deleted text"
+msgstr "E840: Täydennys poisti tekstiä"
+
msgid "'dictionary' option is empty"
-msgstr "dictionary-asetus on tyhj"
+msgstr "dictionary-asetus on tyhjä"
msgid "'thesaurus' option is empty"
-msgstr "thesaurus-asetus on tyhj"
+msgstr "thesaurus-asetus on tyhjä"
#, c-format
msgid "Scanning dictionary: %s"
msgstr "Luetaan sanakirjaa: %s"
msgid " (insert) Scroll (^E/^Y)"
-msgstr " (sytt) Vieritys (^E/^Y)"
+msgstr " (syöttö) Vieritys (^E/^Y)"
msgid " (replace) Scroll (^E/^Y)"
msgstr " (korvaus) Vieritys (^E/^Y)"
@@ -329,10 +404,10 @@ msgid "Scanning: %s"
msgstr "Luetaan: %s"
msgid "Scanning tags."
-msgstr "Luetaan tgej."
+msgstr "Luetaan tägejä."
msgid " Adding"
-msgstr " Listn"
+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
@@ -342,111 +417,71 @@ msgid "-- Searching..."
msgstr "-- Haetaan..."
msgid "Back at original"
-msgstr "Takaisin lhtpisteess"
+msgstr "Takaisin lähtöpisteessä"
msgid "Word from other line"
-msgstr "Sana toisella rivill"
+msgstr "Sana toisella rivillä"
msgid "The only match"
-msgstr "Ainoa tsmys"
+msgstr "Ainoa täsmäys"
#, c-format
msgid "match %d of %d"
-msgstr "tsmys %d/%d"
+msgstr "täsmäys %d/%d"
#, c-format
msgid "match %d"
-msgstr "tsmys %d"
+msgstr "täsmäys %d"
+#. maximum nesting of lists and dicts
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"
+msgstr "E18: Odottamattomia merkkejä komennossa :let"
#, c-format
msgid "E121: Undefined variable: %s"
-msgstr "E121: Mrittelemtn muuttuja: %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 kytt merkint [:]"
+msgstr "E719: Sanakirjassa ei voi käyttää merkintää [:]"
#, c-format
msgid "E734: Wrong variable type for %s="
-msgstr "E734: Vr muuttujatyyppi muuttujalle %s="
-
-#, c-format
-msgid "E130: Unknown function: %s"
-msgstr "E130: Tuntematon funktio: %s"
+msgstr "E734: Väärä muuttujatyyppi muuttujalle %s="
#, c-format
msgid "E461: Illegal variable name: %s"
msgstr "E461: Virheellinen muuttujanimi: %s"
+msgid "E806: using Float as a String"
+msgstr "E806: Float ei käy merkkijonosta"
+
msgid "E687: Less targets than List items"
-msgstr "E687: Kohteita on vhemmn kuin listan alkioita"
+msgstr "E687: Kohteita on vähemmän kuin listan alkioita"
msgid "E688: More targets than List items"
-msgstr "E688: Kohteita on enemmn kuin listan alkioita"
+msgstr "E688: Kohteita on enemmän kuin listan alkioita"
msgid "Double ; in list of variables"
-msgstr "Kaksi ;:tt listan muuttujissa"
+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"
+msgstr "E689: Vain listalla ja sanakirjalla voi olla indeksejä"
msgid "E708: [:] must come last"
-msgstr "E708: [:]:n pit olla viimeisen"
+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 enemmn alkioita kuin kohteella"
+msgstr "E710: Listalla on enemmän alkioita kuin kohteella"
msgid "E711: List value has not enough items"
msgstr "E711: Listalla ei ole tarpeeksi alkioita"
@@ -455,18 +490,14 @@ msgid "E690: Missing \"in\" after :for"
msgstr "E690: :for-kommenolta puuttuu in"
#, c-format
-msgid "E107: Missing parentheses: %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 ksittelyyn"
+msgstr "E743: muuttujassa liian monta tasoa lukituksen käsittelyyn"
msgid "E109: Missing ':' after '?'"
-msgstr "E109: ?:n jlkeen puuttuu :"
+msgstr "E109: ?:n jälkeen puuttuu :"
msgid "E691: Can only compare List with List"
msgstr "E691: Listaa voi verrata vain listaan"
@@ -480,20 +511,20 @@ 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 kytt '%':a Floatin kanssa"
+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"
+msgstr "E695: Funcrefiä ei voi indeksoida"
+
+msgid "E909: Cannot index a special variable"
+msgstr "E909: erikoismuuttujaa ei voi indeksoida"
#, c-format
msgid "E112: Option name missing: %s"
@@ -511,177 +542,77 @@ msgstr "E114: Puuttuva lainausmerkki: %s"
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 "Not enough memory to set references, garbage collection aborted!"
+msgstr "Ei tarpeeksi muistia viitteiden asettamista varten, roskiekeruu "
+"peruttiin."
msgid "E724: variable nested too deep for displaying"
-msgstr "E724: muuttuja on upotettu liian syvlle nytettvksi"
-
-#, c-format
-msgid "E740: Too many arguments for function %s"
-msgstr "E740: Liikaa argumentteja funktiolle %s"
-
-#, c-format
-msgid "E116: Invalid arguments for function %s"
-msgstr "E116: Vri argumentteja funktiolle %s"
-
-#, 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"
+msgstr "E724: muuttuja on upotettu liian syvälle näytettäväksi"
-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 sytttilassa"
-
-#.
-#. * 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 kytt"
-
-msgid "E701: Invalid type for len()"
-msgstr "E701: Virheellinen tyyppi funktiolle len()"
+msgid "E805: Using a Float as a Number"
+msgstr "E805: Float ei käy Numberista"
-msgid "E726: Stride is zero"
-msgstr "E726: Stride on nolla"
+msgid "E703: Using a Funcref as a Number"
+msgstr "E703: Funcref ei käy Numberista"
-msgid "E727: Start past end"
-msgstr "E727: Alku on lopun jlkeen"
+msgid "E745: Using a List as a Number"
+msgstr "E745: Lista ei käy Numberista"
-msgid "<empty>"
-msgstr "<tyhj>"
+msgid "E728: Using a Dictionary as a Number"
+msgstr "E728: Sanakirja ei käy Numberista"
-msgid "E240: No connection to Vim server"
-msgstr "E240: Ei yhteytt vim-palvelimeen"
+msgid "E910: Using a Job as a Number"
+msgstr "E910: Job ei käy Numberista"
-#, c-format
-msgid "E241: Unable to send to %s"
-msgstr "E241: Kohteeseen %s lhettminen ei onnistunut"
+msgid "E913: Using a Channel as a Number"
+msgstr "E913: Channel ei käy Numberista"
-msgid "E277: Unable to read a server reply"
-msgstr "E277: Palvelimen vastauksen lukeminen ei onnistunut"
+msgid "E891: Using a Funcref as a Float"
+msgstr "E891: Funcref ei käy Floatista"
-msgid "E655: Too many symbolic links (cycle?)"
-msgstr "E655: Liikaa symbolisia linkkej (mahdollinen sykli)"
+msgid "E892: Using a String as a Float"
+msgstr "E892: String ei käy Floatista"
-msgid "E258: Unable to send to client"
-msgstr "E258: Asiakkaalle lhetys ei onnistunut"
+msgid "E893: Using a List as a Float"
+msgstr "E893: Lista ei käy Floatista"
-msgid "E702: Sort compare function failed"
-msgstr "E702: Lajittelun vertausfunktio ei onnistunut"
+msgid "E894: Using a Dictionary as a Float"
+msgstr "E894: Sanakirja ei käy Floatista"
-msgid "(Invalid)"
-msgstr "(Virheellinen)"
+msgid "E907: Using a special value as a Float"
+msgstr "E907: Käytettiin erikoisarvoa Floattina"
-msgid "E677: Error writing temp file"
-msgstr "E677: Vliaikaistiedostoon kirjoittaminen ei onnistunut"
-
-msgid "E805: Using a Float as a Number"
-msgstr "E805: Float ei ky Numberista"
-
-msgid "E703: Using a Funcref as a Number"
-msgstr "E703: Funcref ei ky Numberista"
+msgid "E911: Using a Job as a Float"
+msgstr "E911: Job ei käy Floatista"
-msgid "E745: Using a List as a Number"
-msgstr "E745: Lista ei ky Numberista"
-
-msgid "E728: Using a Dictionary as a Number"
-msgstr "E728: Sanakirja ei ky Numberista"
+msgid "E914: Using a Channel as a Float"
+msgstr "E914: Käytettiin Channelia Floattina"
msgid "E729: using Funcref as a String"
-msgstr "E729: Funcref ei ky merkkijonosta"
+msgstr "E729: Funcref ei käy merkkijonosta"
msgid "E730: using List as a String"
-msgstr "E730: Lista ei ky merkkijonosta"
+msgstr "E730: Lista ei käy merkkijonosta"
msgid "E731: using Dictionary as a String"
-msgstr "E731: Sanakirja ei ky merkkijonosta"
+msgstr "E731: Sanakirja ei käy merkkijonosta"
-msgid "E806: using Float as a String"
-msgstr "E806: Float ei ky merkkijonosta"
+msgid "E908: using an invalid value as a String"
+msgstr "E908: huono arvo merkkijonolle"
+
+#, c-format
+msgid "E795: Cannot delete variable %s"
+msgstr "E795: Muuttujaa %s ei voi poistaa"
#, c-format
msgid "E704: Funcref variable name must start with a capital: %s"
-msgstr "E704: Funcrefin muuttujanimen pit alkaa suuraakkosella: %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 tsm: %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"
@@ -693,73 +624,7 @@ 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 syvlle kopioitavaksi"
-
-#, c-format
-msgid "E123: Undefined function: %s"
-msgstr "E123: Tuntematon funktio: %s"
-
-#, 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 "E707: Function name conflicts with variable: %s"
-msgstr "E707: Funktion nimi on ristiriidassa muuttujan kanssa: %s"
-
-#, c-format
-msgid "E127: Cannot redefine function %s: It is in use"
-msgstr "E127: Funktiota %s ei voi mritell uudestaan, koska se on kytss"
-
-#, 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 sislt 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 enemmn 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 sisll"
+msgstr "E698: muuttuja on upotettu liian syvälle kopioitavaksi"
msgid ""
"\n"
@@ -775,138 +640,134 @@ msgstr ""
"\n"
"\tViimeksi asetettu kohteesta "
-msgid "No old files"
-msgstr "Ei vanhoja tiedostoja"
-
-msgid "Entering Debug mode. Type \"cont\" to continue."
-msgstr "Siirrytn vianetsinttilaan, kirjoita cont jatkaaksesi."
+msgid "map() argument"
+msgstr "map()-argumentti"
-#, c-format
-msgid "line %ld: %s"
-msgstr "rivi %ld: %s"
+msgid "filter() argument"
+msgstr "filter()-argumentti"
#, c-format
-msgid "cmd: %s"
-msgstr "kmnt: %s"
+msgid "E686: Argument of %s must be a List"
+msgstr "E686: Argumentin %s pitää olla lista"
-#, c-format
-msgid "Breakpoint in \"%s%s\" line %ld"
-msgstr "Katkaisukohta %s%s rivill %ld"
+msgid "E928: String required"
+msgstr "E928: Merkkijono puuttuu"
-#, c-format
-msgid "E161: Breakpoint not found: %s"
-msgstr "E161: Katkaisukohta puuttuu: %s"
-
-msgid "No breakpoints defined"
-msgstr "Ei katkaisukohtia"
+msgid "E808: Number or Float required"
+msgstr "E808: Number tai Float vaaditaan"
-#, c-format
-msgid "%3d %s %s line %ld"
-msgstr "%3d %s %s rivi %ld"
+msgid "add() argument"
+msgstr "add()-argumentti"
-msgid "E750: First use \":profile start {fname}\""
-msgstr "E750: Aloita kskyll :profile start {fname}"
+msgid "E785: complete() can only be used in Insert mode"
+msgstr "E785: complete() toimii vain syöttötilassa"
-msgid "Save As"
-msgstr "Tallenna nimell"
+#.
+#. * 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 "Save changes to \"%s\"?"
-msgstr "Tallennetaanko muutokset tiedostoon %s?"
-
-msgid "Untitled"
-msgstr "Nimetn"
+msgid "+-%s%3ld line: "
+msgid_plural "+-%s%3ld lines: "
+msgstr[0] "+-%s%3ld rivi: "
+msgstr[1] "+-%s%3ld riviä: "
#, c-format
-msgid "E162: No write since last change for buffer \"%s\""
-msgstr "E162: Muutoksia ei ole kirjoitettu puskurin %s viime muutoksen jlkeen"
+msgid "E700: Unknown function: %s"
+msgstr "E700: Tuntematon funktio: %s"
-msgid "Warning: Entered other buffer unexpectedly (check autocommands)"
-msgstr "Varoitus: Puskuri vaihtui odottamatta (tarkista autocommands)"
+msgid "E922: expected a dict"
+msgstr "E922: odotettiin dictiä"
-msgid "E163: There is only one file to edit"
-msgstr "E163: Vain yksi tiedosto muokattavana"
+# datarakenteita
+msgid "E923: Second argument of function() must be a list or a dict"
+msgstr "E923: toisen function()-argumentin pitää olla lista tai sanakirja"
-msgid "E164: Cannot go before first file"
-msgstr "E164: Ensimmisen tiedoston ohi ei voi menn"
+msgid ""
+"&OK\n"
+"&Cancel"
+msgstr ""
+"&OK\n"
+"&Peru"
-msgid "E165: Cannot go beyond last file"
-msgstr "E165: Viimeisen tiedoston ohi ei voi menn"
+msgid "called inputrestore() more often than inputsave()"
+msgstr "inputrestore() suoritettu useammin kuin inputsave()"
-#, c-format
-msgid "E666: compiler not supported: %s"
-msgstr "E666: kntj ei tueta: %s"
+msgid "insert() argument"
+msgstr "insert()-argumentti"
-#, c-format
-msgid "Searching for \"%s\" in \"%s\""
-msgstr "Etsitn ilmausta %s kohteesta %s"
+msgid "E786: Range not allowed"
+msgstr "E786: Aluetta ei voi käyttää"
-#, c-format
-msgid "Searching for \"%s\""
-msgstr "Etsitn ilmausta %s"
+msgid "E916: not a valid job"
+msgstr "E916: ei ole job"
-#, c-format
-msgid "not found in 'runtimepath': \"%s\""
-msgstr "ei lydy runtimepathista: %s"
+msgid "E701: Invalid type for len()"
+msgstr "E701: Virheellinen tyyppi funktiolle len()"
-msgid "Source Vim script"
-msgstr "Lataa vim-skripti"
+msgid "E726: Stride is zero"
+msgstr "E726: Stride on nolla"
-#, c-format
-msgid "Cannot source a directory: \"%s\""
-msgstr "Hakemistoa ei voi ladata: %s"
+msgid "E727: Start past end"
+msgstr "E727: Alku on lopun jälkeen"
-#, c-format
-msgid "could not source \"%s\""
-msgstr "ei voitu ladata %s"
+msgid "<empty>"
+msgstr "<tyhjä>"
-#, c-format
-msgid "line %ld: could not source \"%s\""
-msgstr "rivi %ld: ei voitu ladata %s"
+msgid "E240: No connection to Vim server"
+msgstr "E240: Ei yhteyttä vim-palvelimeen"
#, c-format
-msgid "sourcing \"%s\""
-msgstr "ladataan %s"
+msgid "E241: Unable to send to %s"
+msgstr "E241: Kohteeseen %s lähettäminen ei onnistunut"
-#, c-format
-msgid "line %ld: sourcing \"%s\""
-msgstr "rivi %ld: ladataan %s"
+msgid "E277: Unable to read a server reply"
+msgstr "E277: Palvelimen vastauksen lukeminen ei onnistunut"
-#, c-format
-msgid "finished sourcing %s"
-msgstr "ladattu %s"
+msgid "remove() argument"
+msgstr "remove()-argumentti"
-msgid "modeline"
-msgstr "mode-rivi"
+msgid "E655: Too many symbolic links (cycle?)"
+msgstr "E655: Liikaa symbolisia linkkejä (mahdollinen sykli)"
-msgid "--cmd argument"
-msgstr "--cmd-argumentti"
+msgid "reverse() argument"
+msgstr "reverse()-argumentti"
-msgid "-c argument"
-msgstr "-c-argumentti"
+msgid "E258: Unable to send to client"
+msgstr "E258: Asiakkaalle lähetys ei onnistunut"
-msgid "environment variable"
-msgstr "ympristmuuttuja"
+#, c-format
+msgid "E927: Invalid action: '%s'"
+msgstr "E927: Viallinen toiminto: %s"
-msgid "error handler"
-msgstr "virheksittelin"
+msgid "sort() argument"
+msgstr "sort()-argumentti"
-msgid "W15: Warning: Wrong line separator, ^M may be missing"
-msgstr "W15: Varoitus: Vr rivierotin, ^M saattaa puuttua"
+msgid "uniq() argument"
+msgstr "uniq()-argumentti"
-msgid "E167: :scriptencoding used outside of a sourced file"
-msgstr "E167: :scriptencoding ladatun tiedoston ulkopuolella"
+msgid "E702: Sort compare function failed"
+msgstr "E702: Lajittelun vertausfunktio ei onnistunut"
-msgid "E168: :finish used outside of a sourced file"
-msgstr "E168: :finish ladatun tiedoston ulkopuolella"
+msgid "E882: Uniq compare function failed"
+msgstr "E882: Uniqin vertausfunktio ei onnistunut"
-#, c-format
-msgid "Current %slanguage: \"%s\""
-msgstr "Kytss oleva %skieli: %s"
+msgid "(Invalid)"
+msgstr "(Virheellinen)"
#, c-format
-msgid "E197: Cannot set language to \"%s\""
-msgstr "E197: Kieleksi ei voitu asettaa kielt %s"
+msgid "E935: invalid submatch number: %d"
+msgstr "E935: Virheellinen alitäsmäyksen numero: %d"
+
+msgid "E677: Error writing temp file"
+msgstr "E677: Väliaikaistiedostoon kirjoittaminen ei onnistunut"
+
+msgid "E921: Invalid callback argument"
+msgstr "E921: Virheellinen callback-argumentti"
# puhutaan merkin ulkoasusta snprintf(..., c, c, c, c)
#, c-format
@@ -922,31 +783,31 @@ msgid "> %d, Hex %08x, Octal %o"
msgstr "> %d, hekdana %08x, oktaalina %o"
msgid "E134: Move lines into themselves"
-msgstr "E134: Rivien siirto itsejens plle"
+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"
+msgstr "%ld riviä siirretty"
#, c-format
msgid "%ld lines filtered"
-msgstr "%ld rivi suodatettu"
+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"
+msgstr "[Viimeisintä muutosta ei ole kirjoitettu]\n"
#, c-format
msgid "%sviminfo: %s in line: "
-msgstr "%sviminfo: %s rivill: "
+msgstr "%sviminfo: %s rivillä: "
msgid "E136: viminfo: Too many errors, skipping rest of file"
-msgstr "E136: viminfo: liikaa virheit, ohitetaan lopputiedosto"
+msgstr "E136: viminfo: liikaa virheitä, ohitetaan lopputiedosto"
#, c-format
msgid "Reading viminfo file \"%s\"%s%s%s"
@@ -962,7 +823,7 @@ msgid " oldfiles"
msgstr " vanhaatiedostoa"
msgid " FAILED"
-msgstr " EPONNISTUI"
+msgstr " EPÄONNISTUI"
#. avoid a wait_return for this message, it's annoying
#, c-format
@@ -970,6 +831,10 @@ msgid "E137: Viminfo file is not writable: %s"
msgstr "E137: Viminfo-tiedostoon ei voitu kirjoittaa: %s"
#, c-format
+msgid "E929: Too many viminfo temp files, like %s!"
+msgstr "E929: liikaa viminfo-väliaikaistiedostoja, kuten %s."
+
+#, c-format
msgid "E138: Can't write viminfo file %s!"
msgstr "E138: Viminfo-tiedoston kirjoittaminen ei onnistu %s"
@@ -977,12 +842,15 @@ msgstr "E138: Viminfo-tiedoston kirjoittaminen ei onnistu %s"
msgid "Writing viminfo file \"%s\""
msgstr "Kirjoitetaan viminfo-tiedostoa %s"
+#, c-format
+msgid "E886: Can't rename viminfo file to %s!"
+msgstr "E886: Viminfo-tiedostoa ei voit uudelleennimetä nimelle %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"
@@ -990,18 +858,27 @@ 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 ""
+"\n"
+"# Bar lines, copied verbatim:\n"
+msgstr ""
+"\n"
+"# Bar-rivit, kopiotu sellaisenaan:\n"
+
+msgid "Save As"
+msgstr "Tallenna nimellä"
+
msgid "Write partial file?"
msgstr "Kirjoita osittainen tiedosto"
msgid "E140: Use ! to write partial buffer"
-msgstr "E140: Kyt !-komentoa osittaisen puskurin kirjoittamiseen"
+msgstr "E140: Käytä !-komentoa osittaisen puskurin kirjoittamiseen"
#, c-format
msgid "Overwrite existing file \"%s\"?"
@@ -1017,11 +894,11 @@ 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"
+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 kytst"
+"E142: Tiedostoa ei kirjoitettu; write-asetus poistaa kirjoituksen käytöstä"
#, c-format
msgid ""
@@ -1039,11 +916,11 @@ msgid ""
msgstr ""
"Tiedosto %s on kirjoitussuojattu.\n"
"Siihen saattaa voida silti kirjoittaa.\n"
-"Yritetnk?"
+"Yritetäänkö?"
#, c-format
msgid "E505: \"%s\" is read-only (add ! to override)"
-msgstr "E505: %s on kirjoitussuojattu (lis komentoon ! ohittaaksesi)"
+msgstr "E505: %s on kirjoitussuojattu (lisää komentoon ! ohittaaksesi)"
msgid "Edit File"
msgstr "Muokkaa tiedostoa"
@@ -1056,10 +933,10 @@ 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 eivt toimi rvimiss"
+msgstr "E145: Kuoren komennot eivät toimi rvimissä"
msgid "E146: Regular expressions can't be delimited by letters"
-msgstr "E146: Snnllist ilmausta ei voi rajata kirjaimilla"
+msgstr "E146: Säännöllistä ilmausta ei voi rajata kirjaimilla"
#, c-format
msgid "replace with %s (y/n/a/q/l/^E/^Y)?"
@@ -1069,37 +946,40 @@ msgid "(Interrupted) "
msgstr "(Keskeytetty)"
msgid "1 match"
-msgstr "1 tsmys"
+msgstr "1 täsmäys"
msgid "1 substitution"
msgstr "1 korvaus"
#, c-format
msgid "%ld matches"
-msgstr "%ld tsmyst"
+msgstr "%ld täsmäystä"
#, c-format
msgid "%ld substitutions"
msgstr "%ld korvausta"
msgid " on 1 line"
-msgstr " 1 rivill"
+msgstr " 1 rivillä"
#, c-format
msgid " on %ld lines"
-msgstr " %ld rivill"
+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: Snnllinen ilmaus puuttuu globaalista"
+msgstr "E148: Säännöllinen ilmaus puuttuu globaalista"
#, c-format
msgid "Pattern found in every line: %s"
-msgstr "Kuvio lytyi joka rivilt: %s"
+msgstr "Kuvio löytyi joka riviltä: %s"
#, c-format
+msgid "Pattern not found: %s"
+msgstr "Kuviota ei löydy: %s"
+
msgid ""
"\n"
"# Last Substitute String:\n"
@@ -1110,23 +990,19 @@ msgstr ""
"$"
msgid "E478: Don't panic!"
-msgstr "E478: l panikoi."
+msgstr "E478: Älä panikoi."
#, c-format
msgid "E661: Sorry, no '%s' help for %s"
-msgstr "E661: Sori, ei lydy %s-ohjetta kohteelle %s"
+msgstr "E661: ei löydy %s-ohjetta kohteelle %s"
#, c-format
msgid "E149: Sorry, no help for %s"
-msgstr "E149: Sori, ei lydy ohjetta kohteelle %s"
+msgstr "E149: ei löydy ohjetta kohteelle %s"
#, c-format
msgid "Sorry, help file \"%s\" not found"
-msgstr "Sori, ohjetiedostoa %s ei lydy"
-
-#, c-format
-msgid "E150: Not a directory: %s"
-msgstr "E150: Ei ole hakemisto: %s"
+msgstr "ohjetiedostoa %s ei löydy"
#, c-format
msgid "E152: Cannot open %s for writing"
@@ -1138,11 +1014,15 @@ 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"
+msgstr "E670: Monia ohjetiedostokoodauksia kielessä: %s"
#, c-format
msgid "E154: Duplicate tag \"%s\" in file %s/%s"
-msgstr "E154: Kaksoiskappale tgist %s tiedostossa %s/%s"
+msgstr "E154: Kaksoiskappale tägistä %s tiedostossa %s/%s"
+
+#, c-format
+msgid "E150: Not a directory: %s"
+msgstr "E150: Ei ole hakemisto: %s"
#, c-format
msgid "E160: Unknown sign command: %s"
@@ -1152,7 +1032,7 @@ msgid "E156: Missing sign name"
msgstr "E156: Merkki puuttuu"
msgid "E612: Too many signs defined"
-msgstr "E612: Liikaa merkkej mritelty"
+msgstr "E612: Liikaa merkkejä määritelty"
#, c-format
msgid "E239: Invalid sign text: %s"
@@ -1169,12 +1049,19 @@ msgstr "E159: Merkin numero puuttuu"
msgid "E158: Invalid buffer name: %s"
msgstr "E158: Virheellinen puskurin nimi: %s"
+msgid "E934: Cannot jump to a buffer that does not have a name"
+msgstr "E934: Ei voida hypätä puskuriin jolla ei ole nimeä"
+
#, c-format
msgid "E157: Invalid sign ID: %ld"
msgstr "E157: Virheellinen merkin tunnus: %ld"
+#, c-format
+msgid "E885: Not possible to change sign %s"
+msgstr "E885: Ei voida muuttaa merkkiä %s"
+
msgid " (NOT FOUND)"
-msgstr " (EI LYTYNYT)"
+msgstr " (EI LÖYTYNYT)"
msgid " (not supported)"
msgstr " (ei tuettu)"
@@ -1182,8 +1069,149 @@ msgstr " (ei tuettu)"
msgid "[Deleted]"
msgstr "[Poistettu]"
+msgid "No old files"
+msgstr "Ei vanhoja tiedostoja"
+
+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"
+
+msgid "frame is zero"
+msgstr "kehys on nolla"
+
+#, c-format
+msgid "frame at highest level: %d"
+msgstr "kehys ylimmällä tasolla: %d"
+
+#, 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}"
+
+#, 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 '%s': \"%s\""
+msgstr "'%s' ei löydy kohteesta: %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"
+
+#, c-format
+msgid "continuing in %s"
+msgstr "jatkaa kohdassa %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"
+
msgid "Entering Ex mode. Type \"visual\" to go to Normal mode."
-msgstr "Siirrytn Ex-tilaan, kirjoita visual palataksesi normaaliin tilaan."
+msgstr "Siirrytään Ex-tilaan, kirjoita visual palataksesi normaaliin tilaan."
msgid "E501: At end-of-file"
msgstr "E501: Tiedoston lopussa"
@@ -1202,7 +1230,7 @@ msgid "End of function"
msgstr "Funktion loppu"
msgid "E464: Ambiguous use of user-defined command"
-msgstr "E464: Kyttjn mrittelemn komennon monimerkityksinen kytt"
+msgstr "E464: Käyttäjän määrittelemän komennon monimerkityksinen käyttö"
msgid "E492: Not an editor command"
msgstr "E492: Ei ole editorikomento"
@@ -1211,59 +1239,62 @@ msgid "E493: Backwards range given"
msgstr "E493: Takaperoinen arvoalue annettu"
msgid "Backwards range given, OK to swap"
-msgstr "Takaperoinen arvoalue annettu, OK knt"
+msgstr "Takaperoinen arvoalue annettu, OK kääntää"
msgid "E494: Use w or w>>"
-msgstr "E494: Kyt w:t tai w>>:aa"
+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 kytettviss tss versiossa"
+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?"
+msgstr "vielä 1 tiedosto muokattavana, lopetaanko silti?"
#, c-format
msgid "%d more files to edit. Quit anyway?"
-msgstr "viel %d tiedostoa muokattavana, lopetetaanko silti?"
+msgstr "vielä %d tiedostoa muokattavana, lopetetaanko silti?"
msgid "E173: 1 more file to edit"
-msgstr "E173: viel 1 tiedosto muokattavana"
+msgstr "E173: vielä 1 tiedosto muokattavana"
#, c-format
msgid "E173: %ld more files to edit"
-msgstr "E173: viel %ld tiedostoa muokattavana"
+msgstr "E173: vielä %ld tiedostoa muokattavana"
msgid "E174: Command already exists: add ! to replace it"
-msgstr "E174: Komento on jo olemassa, kyt !: korvataksesi"
+msgstr "E174: Komento on jo olemassa, käytä !:ä korvataksesi"
msgid ""
"\n"
-" Name Args Range Complete Definition"
+" Name Args Address Complete Definition"
msgstr ""
"\n"
-" Nimi Arg Arvot Valmis Mritelm"
+" Nimi Argumentit Osoite Valmis Määritelmä"
msgid "No user-defined commands found"
-msgstr "Ei kyttjn mrittelemi komentoja"
+msgstr "Ei käyttäjän määrittelemiä komentoja"
msgid "E175: No attribute specified"
-msgstr "E175: Ei attribuutteja mriteltyn"
+msgstr "E175: Ei attribuutteja määriteltynä"
msgid "E176: Invalid number of arguments"
-msgstr "E176: Vr mr attribuutteja"
+msgstr "E176: Väärä määrä attribuutteja"
msgid "E177: Count cannot be specified twice"
-msgstr "E177: Lukumr ei voi mritell kahdesti"
+msgstr "E177: Lukumäärää ei voi määritellä kahdesti"
msgid "E178: Invalid default value for count"
-msgstr "E178: Lukumrn oletusarvo on vr"
+msgstr "E178: Lukumäärän oletusarvo on väärä"
msgid "E179: argument required for -complete"
msgstr "E179: -complete vaatii argumentin"
+msgid "E179: argument required for -addr"
+msgstr "E179: -addr vaatii argumentin"
+
#, c-format
msgid "E181: Invalid attribute: %s"
msgstr "E181: Virheellinen attribuutti: %s"
@@ -1272,37 +1303,44 @@ msgid "E182: Invalid command name"
msgstr "E182: Virheellinen komennon nimi"
msgid "E183: User defined commands must start with an uppercase letter"
-msgstr "E183: Kyttjn mrittelemn komennon pit alkaa suuraakkosella"
+msgstr "E183: Käyttäjän määrittelemän komennon pitää alkaa suuraakkosella"
+
+msgid "E841: Reserved name, cannot be used for user defined command"
+msgstr "E841: Varattua nimeä ei voi käyttää käyttäjän määrittelemänä komentona"
#, c-format
msgid "E184: No such user-defined command: %s"
-msgstr "E184: Kyttjn komentoa ei ole olemassa: %s"
+msgstr "E184: Käyttäjän komentoa ei ole olemassa: %s"
+
+#, c-format
+msgid "E180: Invalid address type value: %s"
+msgstr "E180: Virheellinen osoitetyyppiarvo: %s"
#, c-format
msgid "E180: Invalid complete value: %s"
-msgstr "E180: Virheellinen tydennysarvo: %s"
+msgstr "E180: Virheellinen täydennysarvo: %s"
msgid "E468: Completion argument only allowed for custom completion"
-msgstr "E468: Tydennysargumentti sopii vain itse mriteltyyn tydennykseen"
+msgstr "E468: Täydennysargumentti sopii vain itse määriteltyyn täydennykseen"
msgid "E467: Custom completion requires a function argument"
-msgstr "E467: Itse mritelty tydennys vaatii funktioargumentin"
+msgstr "E467: Itse määritelty täydennys vaatii funktioargumentin"
msgid "unknown"
msgstr "tuntematon"
#, c-format
-msgid "E185: Cannot find color scheme %s"
-msgstr "E185: Vriteemaa %s ei lydy"
+msgid "E185: Cannot find color scheme '%s'"
+msgstr "E185: Väriteemaa %s ei löydy"
msgid "Greetings, Vim user!"
-msgstr "Tervehdys, Vimin kyttj."
+msgstr "Tervehdys, Vimin käyttäjä."
msgid "E784: Cannot close last tab page"
-msgstr "E784: Viimeist vlilehte ei voi sulkea"
+msgstr "E784: Viimeistä välilehteä ei voi sulkea"
msgid "Already only one tab page"
-msgstr "Vain yksi vlilehti jljell en"
+msgstr "Vain yksi välilehti jäljellä enää"
msgid "Edit File in new window"
msgstr "Muokkaa uudessa ikkunassa"
@@ -1315,15 +1353,15 @@ msgid "No swap file"
msgstr "Ei swap-tiedostoa"
msgid "Append File"
-msgstr "Lis tiedostoon"
+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 ! "
+"E747: Hakemistoa ei voida muuttaa, puskuria on muokattu (lisää komentoon ! "
"ohittaaksesi"
msgid "E186: No previous directory"
-msgstr "E186: Ei edellist hakemistoa"
+msgstr "E186: Ei edellistä hakemistoa"
msgid "E187: Unknown"
msgstr "E187: Tuntematon"
@@ -1336,16 +1374,19 @@ 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 tll alustalla"
+msgstr "E188: Ikkunan sijainnin selvitys ei toimi tällä alustalla"
msgid "E466: :winpos requires two number arguments"
msgstr "E466: :winpos vaatii kaksi lukuargumenttia"
+msgid "E930: Cannot use :redir inside execute()"
+msgstr "E930: Komentoa :redir ei voi käyttää funktion execute() sisällä"
+
msgid "Save Redirection"
msgstr "Tallenna uudelleenosoitus"
msgid "Save View"
-msgstr "Tallenna nkym"
+msgstr "Tallenna näkymä"
msgid "Save Session"
msgstr "Tallenna sessio"
@@ -1359,7 +1400,7 @@ 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)"
+msgstr "E189: %s on jo olemassa (lisää komentoon ! ohittaaksesi)"
#, c-format
msgid "E190: Cannot open \"%s\" for writing"
@@ -1367,16 +1408,16 @@ 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 taaksepin lainaukseen pit olla kirjain"
+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"
+msgstr "E192: :normalin liian syvä rekursio"
msgid "E809: #< is not available without the +eval feature"
-msgstr "E809: #< ei ole kytss jollei +eval ole pll"
+msgstr "E809: #< ei ole käytössä jollei +eval ole päällä"
msgid "E194: No alternate file name to substitute for '#'"
-msgstr "E194: Ei vaihtoehtoista tiedostonime #:lle"
+msgstr "E194: Ei vaihtoehtoista tiedostonimeä #:lle"
msgid "E495: no autocommand file name to substitute for \"<afile>\""
msgstr "E495: ei autocommand-tiedostoa kohteelle <afile>"
@@ -1385,26 +1426,29 @@ 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-tsmysnime kohteella <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>"
+msgstr "E498: ei :source-tiedostonimeä kohteelle <sfile>"
+
+msgid "E842: no line number to use for \"<slnum>\""
+msgstr "E842: ei rivinumeroa kohteelle <slnum>"
#, 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"
+msgstr "E499: Tyhjä tiedostonimi kohteissa % tai # toimii vain :p:h"
msgid "E500: Evaluates to an empty string"
-msgstr "E500: Loppuarvo on tyhj merkkijono"
+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 tss versiossa"
+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"
+msgstr "E608: Vim-alkuisia poikkeuksia ei voi heittää :throw-komennolla"
#. always scroll up, don't overwrite
#, c-format
@@ -1469,7 +1513,7 @@ msgid "E583: multiple :else"
msgstr "E583: :else monta kertaa"
msgid "E584: :elseif after :else"
-msgstr "E584: :elseif komennon :else jlkeen"
+msgstr "E584: :elseif komennon :else jälkeen"
msgid "E585: :while/:for nesting too deep"
msgstr "E585: liian monta tasoa :while- tai :for-komennoissa"
@@ -1517,7 +1561,7 @@ msgid "E811: Not allowed to change buffer information now"
msgstr "E811: Puskuria ei voi vaihtaa nyt"
msgid "tagname"
-msgstr "tginimi"
+msgstr "täginimi"
msgid " kind file\n"
msgstr " -tiedostotyyppi\n"
@@ -1543,7 +1587,10 @@ msgid "Expression"
msgstr "Ilmaus"
msgid "Input Line"
-msgstr "Syterivi"
+msgstr "Syöterivi"
+
+msgid "Debug Line"
+msgstr "Vianetsintärivi"
msgid "E198: cmd_pchar beyond the command length"
msgstr "E198: cmd_pchar komennon pituuden ulkopuolella"
@@ -1564,7 +1611,7 @@ msgid "is not a file"
msgstr "ei ole tiedosto"
msgid "is a device (disabled with 'opendevice' option)"
-msgstr "on laite (ei kytss opendevice-asetuksen takia)"
+msgstr "on laite (ei käytössä opendevice-asetuksen takia)"
msgid "[New File]"
msgstr "[Uusi tiedosto]"
@@ -1580,16 +1627,16 @@ msgstr "[Lupa kielletty]"
msgid "E200: *ReadPre autocommands made the file unreadable"
msgstr ""
-"E200: *ReadPre-autocommand-komennot tekivt tiedostosta lukukelvottoman"
+"E200: *ReadPre-autocommand-komennot tekivät tiedostosta lukukelvottoman"
msgid "E201: *ReadPre autocommands must not change current buffer"
-msgstr "E201: *ReadPre-autocommand-komennot eivt saa muuttaa puskuria"
+msgstr "E201: *ReadPre-autocommand-komennot eivät saa muuttaa puskuria"
msgid "Vim: Reading from stdin...\n"
-msgstr "Vim: Luetaan vakiosytteest...\n"
+msgstr "Vim: Luetaan vakiosyötteestä...\n"
msgid "Reading from stdin..."
-msgstr "Luetaan vakiosytteest"
+msgstr "Luetaan vakiosyötteestä"
#. Re-opening the original file failed!
msgid "E202: Conversion made file unreadable!"
@@ -1607,15 +1654,12 @@ msgstr "[soketti]"
msgid "[character special]"
msgstr "[merkki erikoinen]"
-msgid "[RO]"
-msgstr "[Luku]"
-
-# Carriage Return elikk rivinvaihtomerkin ers muoto/osa (vrt. LF)
+# Carriage Return elikkä rivinvaihtomerkin eräs muoto/osa (vrt. LF)
msgid "[CR missing]"
msgstr "[CR puuttuu]"
msgid "[long lines split]"
-msgstr "[pitkt rivit hajotettu]"
+msgstr "[pitkät rivit hajotettu]"
msgid "[NOT converted]"
msgstr "[EI muunnettu]"
@@ -1623,32 +1667,26 @@ msgstr "[EI muunnettu]"
msgid "[converted]"
msgstr "[muunnettu]"
-msgid "[crypted]"
-msgstr "[salattu]"
-
#, c-format
msgid "[CONVERSION ERROR in line %ld]"
-msgstr "[MUUNNOSVIRHE rivill %ld]"
+msgstr "[MUUNNOSVIRHE rivillä %ld]"
#, c-format
msgid "[ILLEGAL BYTE in line %ld]"
-msgstr "[VIRHEELLINEN OKTETTI rivill %ld]"
+msgstr "[VIRHEELLINEN OKTETTI rivillä %ld]"
msgid "[READ ERRORS]"
-msgstr "[LUKUVIRHEIT]"
+msgstr "[LUKUVIRHEITÄ]"
msgid "Can't find temp file for conversion"
-msgstr "Ei voi lyt vliaikaistiedstoa muuntamiseksi"
+msgstr "Ei voi löytää väliaikaistiedstoa muuntamiseksi"
msgid "Conversion with 'charconvert' failed"
-msgstr "Muunnos charconvert eponnistui"
+msgstr "Muunnos charconvert epäonnistui"
msgid "can't read output of 'charconvert'"
msgstr "charconvertin tulostetta ei voida lukea"
-msgid "E821: File is encrypted with unknown method"
-msgstr "E821: Tiedoston salaus on tuntematon"
-
msgid "E676: No matching autocommands for acwrite buffer"
msgstr "E676: Ei autocommand-komentoa acwrite-puskurille"
@@ -1658,7 +1696,7 @@ msgstr ""
"kirjoittaa"
msgid "E204: Autocommand changed number of lines in unexpected way"
-msgstr "E204: Autocommand-komento muutti rivien mr odottamatta"
+msgstr "E204: Autocommand-komento muutti rivien määrä odottamatta"
msgid "NetBeans disallows writes of unmodified buffers"
msgstr "NetBeans ei salli kirjoittaa muokkaamattomiin puskureihin"
@@ -1670,43 +1708,43 @@ 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 kytst opendevice-asetuksella"
+msgstr "laitteeseen kirjoittaminen pois käytöstä opendevice-asetuksella"
msgid "is read-only (add ! to override)"
-msgstr "on kirjoitussuojattu (lis komentoon ! ohittaaksesi)"
+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 ! "
+"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 ! "
+"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)"
+"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)"
+"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)"
+"E510: Ei voi tehdä varmuuskopiotiedostoa (lisää komentoon ! ohittaaksesi)"
-# tietkseni resurssiforkki on applen tiedostojrjestelmn tunnistejuttujuttu
+# tietääkseni resurssiforkki on applen tiedostojärjestelmän tunnistejuttujuttu
msgid "E460: The resource fork would be lost (add ! to override)"
-msgstr "E460: resurssiosa hviisi (lis komentoon ! ohittaaksesi)"
+msgstr "E460: resurssiosa häviäisi (lisää komentoon ! ohittaaksesi)"
msgid "E214: Can't find temp file for writing"
-msgstr "E214: Ei voi lyt vliaikaistiedostoa kirjoitettavaksi"
+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)"
+"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"
@@ -1721,24 +1759,25 @@ msgid "E512: Close failed"
msgstr "E512: Sulkeminen ei onnistunut"
msgid "E513: write error, conversion failed (make 'fenc' empty to override)"
-msgstr "E513: kirjoitusvirhe, muunnos eponnistui (tyhj fenc ohittaaksesi)"
+msgstr "E513: kirjoitusvirhe, muunnos epäonnistui (tyhjää fenc ohittaaksesi)"
#, c-format
msgid ""
"E513: write error, conversion failed in line %ld (make 'fenc' empty to "
"override)"
-msgstr "E513: kirjoitusvirhe, muunnos eponnistui rivill %ld"
-"(tyhj fenc ohittaaksesi)"
+msgstr ""
+"E513: kirjoitusvirhe, muunnos epäonnistui rivillä %ld(tyhjää fenc "
+"ohittaaksesi)"
msgid "E514: write error (file system full?)"
-msgstr "E514: kirjoitusvirhe (tiedostojrjestelm tysi)"
+msgstr "E514: kirjoitusvirhe (tiedostojärjestelmä täysi)"
msgid " CONVERSION ERROR"
msgstr " MUUNNOSVIRHE"
#, c-format
msgid " in line %ld;"
-msgstr " rivill %ld"
+msgstr " rivillä %ld"
msgid "[Device]"
msgstr "[Laite]"
@@ -1750,7 +1789,7 @@ msgid " [a]"
msgstr " [a]"
msgid " appended"
-msgstr " listty"
+msgstr " lisätty"
msgid " [w]"
msgstr " [w]"
@@ -1759,10 +1798,10 @@ msgid " written"
msgstr " kirjoitettu"
msgid "E205: Patchmode: can't save original file"
-msgstr "E205: Patch-tilassa ei voi tallentaa alkuperistiedostoa"
+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 alkuperistiedostoa"
+msgstr "E206: patch-tilassa ei voi muuttaa tyhjää alkuperäistiedostoa"
msgid "E207: Can't delete backup file"
msgstr "E207: Ei voi poistaa varmuuskopiota"
@@ -1772,10 +1811,10 @@ msgid ""
"WARNING: Original file may be lost or damaged\n"
msgstr ""
"\n"
-"VAROITUS: Alkuperistiedosto voi hvit tai vahingoittua\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."
+msgstr "älä lopeta editoria kesken tallentamisen."
msgid "[dos]"
msgstr "[dos]"
@@ -1800,19 +1839,14 @@ msgstr "1 rivi, "
#, c-format
msgid "%ld lines, "
-msgstr "%ld rivi, "
+msgstr "%ld riviä, "
msgid "1 character"
msgstr "1 merkki"
#, c-format
msgid "%lld characters"
-msgstr "%lld merkki"
-
-#. Explicit typecast avoids warning on Mac OS X 10.6
-#, c-format
-msgid "%ld characters"
-msgstr "%ld merkki"
+msgstr "%lld merkkiä"
# ei rivinvaihtoja
msgid "[noeol]"
@@ -1821,12 +1855,12 @@ msgstr "[eiriviv.]"
msgid "[Incomplete last line]"
msgstr "[Vajaa viimeinen rivi]"
-# Jos aukiolevaa tiedostoa srkkii toisella ohjelmalla
+# 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 jlkeen!"
+msgstr "VAROITUS: tiedosto on muuttunut viime lukukerran jälkeen!"
msgid "Do you really want to write to it"
msgstr "Kirjoitetaanko"
@@ -1848,7 +1882,7 @@ msgstr "E246: FileChangedShell-autocommand poisti puskurin"
#, c-format
msgid "E211: File \"%s\" no longer available"
-msgstr "E211: Tiedostoa %s ei ole en"
+msgstr "E211: Tiedostoa %s ei ole enää"
#, c-format
msgid ""
@@ -1859,32 +1893,32 @@ msgstr ""
"tiedostoon"
msgid "See \":help W12\" for more info."
-msgstr ":help W12 kertoo listietoja."
+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 jlkeen"
+msgstr "W11: Varoitus: Tiedostoa %s on muutettu muokkauksen aloituksen jälkeen"
msgid "See \":help W11\" for more info."
-msgstr ":help W11 kertoo listietoja."
+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 "
-"jlkeen"
+"jälkeen"
msgid "See \":help W16\" for more info."
-msgstr ":help W16 kertoo listietoja."
+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 jlkeen"
+msgstr "W13: Varoitus: Tiedosto %s on luotu muokkauksen aloituksen jälkeen"
msgid "Warning"
msgstr "Varoitus"
-# yll olevien varoitusten ratkaisut
+# yllä olevien varoitusten ratkaisut
msgid ""
"&OK\n"
"&Load File"
@@ -1900,9 +1934,6 @@ msgstr "E462: Ei voitu valmistella uudelleen avausta %s"
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>"
@@ -1910,19 +1941,25 @@ 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"
+msgstr "E367: Ryhmää ei ole: %s"
+
+msgid "W19: Deleting augroup that is still in use"
+msgstr "W19: käytössä oleva augroup poistetaan"
+
+msgid "--Deleted--"
+msgstr "--Poistettu--"
#, c-format
msgid "E215: Illegal character after *: %s"
-msgstr "E215: Virheellinen merkki *:n jlkeen: %s"
+msgstr "E215: Virheellinen merkki *:n jälkeen: %s"
#, c-format
msgid "E216: No such event: %s"
-msgstr "E216: Eventti ei ole: %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"
+msgstr "E216: Ryhmää tai eventtiä ei ole: %s"
#. Highlight title
msgid ""
@@ -1940,7 +1977,7 @@ msgid "E217: Can't execute autocommands for ALL events"
msgstr "E217: Ei voi suorittaa autocommandsia kaikille eventeille"
msgid "No matching autocommands"
-msgstr "Ei tsmvi autocommandsia"
+msgstr "Ei täsmääviä autocommandsia"
msgid "E218: autocommand nesting too deep"
msgstr "E218: liian monta tasoa autocommandissa"
@@ -1967,28 +2004,30 @@ msgid "E490: No fold found"
msgstr "E490: taitos puuttuu"
msgid "E350: Cannot create fold with current 'foldmethod'"
-msgstr "E350: Taitoksia ei voi tehd tll foldmethodilla"
+msgstr "E350: Taitoksia ei voi tehdä tällä foldmethodilla"
msgid "E351: Cannot delete fold with current 'foldmethod'"
-msgstr "E351: Taitosta ei voi poistaa tll foldmethodilla"
+msgstr "E351: Taitosta ei voi poistaa tällä foldmethodilla"
#, c-format
-msgid "+--%3ld lines folded "
-msgstr "+--%3ld rivi taitettu pois "
+msgid "+--%3ld line folded "
+msgid_plural "+--%3ld lines folded "
+msgstr[0] "+--%3ld rivi taitettu pois "
+msgstr[1] "+--%3ld riviä taitettu pois "
msgid "E222: Add to read buffer"
-msgstr "E222: Lis lukupuskuriin"
+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 merkinnlle %s on jo olemassa"
+msgstr "E224: globaali lyhenne merkinnälle %s on jo olemassa"
#, c-format
msgid "E225: global mapping already exists for %s"
-msgstr "E225: globaali kuvaus merkinnlle %s on jo olemassa"
+msgstr "E225: globaali kuvaus merkinnälle %s on jo olemassa"
#, c-format
msgid "E226: abbreviation already exists for %s"
@@ -1999,14 +2038,43 @@ msgid "E227: mapping already exists for %s"
msgstr "E227: kuvaus on jo olemassa %s"
msgid "No abbreviation found"
-msgstr "Lyhennett ei lydy"
+msgstr "Lyhennettä ei löydy"
msgid "No mapping found"
-msgstr "Kuvausta ei lydy"
+msgstr "Kuvausta ei löydy"
msgid "E228: makemap: Illegal mode"
msgstr "E228: makemap: Virheellinen tila"
+msgid "E851: Failed to create a new process for the GUI"
+msgstr "E851: Ei voitu luoda uutta prosessia käyttöliittymälle"
+
+msgid "E852: The child process failed to start the GUI"
+msgstr "E852: Lapsiprosesi ei voinut käynnistää käyttöliittymää"
+
+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 "<cannot open> "
msgstr "<ei voi avata> "
@@ -2021,7 +2089,7 @@ msgid "Pathname:"
msgstr "Polku:"
msgid "E615: vim_SelFile: can't get current directory"
-msgstr "E615: vim_SelFile: nykyist hakemistoa ei saada selville"
+msgstr "E615: vim_SelFile: nykyistä hakemistoa ei saada selville"
msgid "OK"
msgstr "OK"
@@ -2029,49 +2097,44 @@ msgstr "OK"
msgid "Cancel"
msgstr "Peru"
+msgid "Scrollbar Widget: Could not get geometry of thumb pixmap."
+msgstr "Vierityspalkki: Pixmapin geometria ei selviä"
+
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 kynnistys ei onnistu"
+msgid "_Cancel"
+msgstr "_Peru"
-#, c-format
-msgid "E230: Cannot read from \"%s\""
-msgstr "E230: Ei voi lukea kohteesta %s"
+msgid "_Save"
+msgstr "_Tallenna"
-msgid "E665: Cannot start GUI, no valid font found"
-msgstr "E665: Ei voi avata GUIta, sopivaa fonttia ei lydy"
+msgid "_Open"
+msgstr "_Avaa"
-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: Vri %s ei voi mritell"
-
-msgid "No match at cursor, finding next"
-msgstr "Ei tsmyst kursorin alla, etsitn seuraava"
+msgid "_OK"
+msgstr "_OK"
msgid ""
"&Yes\n"
"&No\n"
"&Cancel"
msgstr ""
-"&Kyll\n"
+"&Kyllä\n"
"&Ei\n"
"&Peru"
+msgid "Yes"
+msgstr "Kyllä"
+
+msgid "No"
+msgstr "Ei"
+
msgid "Input _Methods"
-msgstr "Syte_menetelmt"
+msgstr "Syöte_menetelmät"
msgid "VIM - Search and Replace..."
msgstr "VIM - Etsi ja korvaa..."
@@ -2098,37 +2161,37 @@ msgstr "Suunta"
#. 'Up' and 'Down' buttons
msgid "Up"
-msgstr "Yls"
+msgstr "Ylös"
msgid "Down"
msgstr "Alas"
-#. 'Find Next' button
msgid "Find Next"
msgstr "Etsi seuraava"
-#. 'Replace' button
msgid "Replace"
msgstr "Korvaa"
-#. 'Replace All' button
msgid "Replace All"
msgstr "Korvaa kaikki"
+msgid "_Close"
+msgstr "_Sulje"
+
msgid "Vim: Received \"die\" request from session manager\n"
-msgstr "Vim: sessiomanageri lhetti die-pyynnn\n"
+msgstr "Vim: sessiomanageri lähetti die-pyynnön\n"
-msgid "Close"
-msgstr "Sulje"
+msgid "Close tab"
+msgstr "Sulje välilehti"
msgid "New tab"
-msgstr "Uusi vlilehti"
+msgstr "Uusi välilehti"
msgid "Open Tab..."
-msgstr "Avaa vlilehti..."
+msgstr "Avaa välilehti..."
msgid "Vim: Main window unexpectedly destroyed\n"
-msgstr "Vim: Pikkuna tuhoutui odottamatta\n"
+msgstr "Vim: Pääikkuna tuhoutui odottamatta\n"
msgid "&Filter"
msgstr "&Suodata"
@@ -2166,45 +2229,42 @@ msgstr "Korvaa k&aikki"
msgid "&Undo"
msgstr "&Kumoa"
-#, c-format
-msgid "E671: Cannot find window title \"%s\""
-msgstr "E671: Ikkunan otsikkoa ei lydy %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, kyt 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 vlilehti"
-
msgid "Open tab..."
-msgstr "Avaa vlilehti..."
+msgstr "Avaa välilehti..."
msgid "Find string (use '\\\\' to find a '\\')"
-msgstr "Etsi merkkijonoa (\\\\:ll lyt \\:t)"
+msgstr "Etsi merkkijonoa (\\\\:llä löytää \\:t)"
msgid "Find & Replace (use '\\\\' to find a '\\')"
-msgstr "Etsi ja korvaa (\\\\:ll lyt \\:t)"
+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 kytss"
+msgstr "Ei käytössä"
msgid "Directory\t*.nothing\n"
msgstr "Hakemisto\t*.nothing\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 "Vim E458: Cannot allocate colormap entry, some colors may be incorrect"
-msgstr "Vim E458: Ei voi varata vrikartan alkiota, vrit voivat menn vrin"
+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 merkistjoukkojen fontit puuttuvat fontsetist %s:"
+msgstr "E250: Seuraavien merkistöjoukkojen fontit puuttuvat fontsetistä %s:"
#, c-format
msgid "E252: Fontset name: %s"
@@ -2212,44 +2272,42 @@ msgstr "E252: Fontsetin nimi: %s"
#, c-format
msgid "Font '%s' is not fixed-width"
-msgstr "Fontti %s ei ole tasavlinen"
+msgstr "Fontti %s ei ole tasavälinen"
#, c-format
-msgid "E253: Fontset name: %s\n"
-msgstr "E253: Fontsetin nimi: %s\n"
+msgid "E253: Fontset name: %s"
+msgstr "E253: Fontsetin nimi: %s"
#, c-format
-msgid "Font0: %s\n"
-msgstr "Fontti0: %s\n"
+msgid "Font0: %s"
+msgstr "Fontti0: %s"
#, c-format
-msgid "Font1: %s\n"
-msgstr "Fontti1: %s\n"
+msgid "Font1: %s"
+msgstr "Fontti1: %s"
#, 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"
+msgid "Font%ld width is not twice that of font0"
+msgstr "Fontti%ld:n leveys ei ole kaksi kertaa fontti0:n"
#, c-format
-msgid "Font0 width: %ld\n"
-msgstr "Fontti0:n leveys: %ld\n"
+msgid "Font0 width: %ld"
+msgstr "Fontti0:n leveys: %ld"
#, c-format
-msgid ""
-"Font1 width: %ld\n"
-"\n"
+msgid "Font1 width: %ld"
msgstr ""
-"Fontti1:n leveys: %ld\n"
-"\n"
+"Fontti1:n leveys: %ld"
+
msgid "Invalid font specification"
-msgstr "Virheellinen fonttimritys"
+msgstr "Virheellinen fonttimääritys"
msgid "&Dismiss"
msgstr "&Ohita"
msgid "no specific match"
-msgstr "ei tarkkaa tsmyst"
+msgstr "ei tarkkaa täsmäystä"
msgid "Vim - Font Selector"
msgstr "Vim - fonttivalitsin"
@@ -2259,7 +2317,7 @@ msgstr "Nimi:"
#. create toggle button
msgid "Show size in Points"
-msgstr "Nyt koko pistein"
+msgstr "Näytä koko pisteinä"
msgid "Encoding:"
msgstr "Koodaus:"
@@ -2283,14 +2341,14 @@ msgid "E551: Illegal component"
msgstr "E551: Virheellinen komponentti"
msgid "E552: digit expected"
-msgstr "E552: pitisi olla numero"
+msgstr "E552: pitäisi olla numero"
#, c-format
msgid "Page %d"
msgstr "Sivu %d"
msgid "No text to be printed"
-msgstr "Ei teksti tulostettavaksi"
+msgstr "Ei tekstiä tulostettavaksi"
#, c-format
msgid "Printing page %d (%d%%)"
@@ -2308,7 +2366,7 @@ msgid "Printing aborted"
msgstr "Tulostus peruttu"
msgid "E455: Error writing to PostScript output file"
-msgstr "E455: Virhe kirjoitettaessa PostScripti tiedostoon"
+msgstr "E455: Virhe kirjoitettaessa PostScriptiä tiedostoon"
#, c-format
msgid "E624: Can't open file \"%s\""
@@ -2328,13 +2386,13 @@ 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 vr"
+msgstr "E621: resurssitiedoston %s versio on väärä"
msgid "E673: Incompatible multi-byte encoding and character set."
-msgstr "E673: Tukematon monitvauinen merkistkoodaus ja merkist."
+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."
+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"
@@ -2347,36 +2405,36 @@ 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 lydy"
+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 lydy"
+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 lydy"
+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 "Lhetetn tulostimelle..."
+msgstr "Lähetetään tulostimelle..."
msgid "E365: Failed to print PostScript file"
-msgstr "E365: PostScript-tiedoston tulostus eponnistui"
+msgstr "E365: PostScript-tiedoston tulostus epäonnistui"
msgid "Print job sent."
-msgstr "Tulostusty lhetetty."
+msgstr "Tulostustyö lähetetty."
msgid "Add a new database"
-msgstr "Lis uusi tietokanta"
+msgstr "Lisää uusi tietokanta"
msgid "Query for a pattern"
msgstr "Hae kuviota"
msgid "Show this message"
-msgstr "Nyt tm viesti"
+msgstr "Näytä tämä viesti"
msgid "Kill a connection"
msgstr "Tapa yhteys"
@@ -2385,20 +2443,20 @@ msgid "Reinit all connections"
msgstr "Alusta uudelleen yhteydet"
msgid "Show connections"
-msgstr "Nyt yhteydet"
+msgstr "Näytä yhteydet"
#, c-format
msgid "E560: Usage: cs[cope] %s"
-msgstr "E560: Kytt: cs[cope] %s"
+msgstr "E560: Käyttö: cs[cope] %s"
msgid "This cscope command does not support splitting the window.\n"
-msgstr "Tm cscope-komento ei tue ikkunan jakamista.\n"
+msgstr "Tämä cscope-komento ei tue ikkunan jakamista.\n"
msgid "E562: Usage: cstag <ident>"
-msgstr "E562: Kytt: cstag <ident>"
+msgstr "E562: Käyttö: cstag <ident>"
msgid "E257: cstag: tag not found"
-msgstr "E257: cstag: tgia ei lydy"
+msgstr "E257: cstag: tägia ei löydy"
#, c-format
msgid "E563: stat(%s) error: %d"
@@ -2409,15 +2467,15 @@ 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"
+msgstr "E564: %s ei ole hakemisto eikä cscope-tietokanta"
#, c-format
msgid "Added cscope database %s"
-msgstr "Listty cscope-tietokanta %s"
+msgstr "Lisätty cscope-tietokanta %s"
#, c-format
msgid "E262: error reading cscope connection %ld"
-msgstr "E262: Virhe luettaessa cscope-yhteytt %ld"
+msgstr "E262: Virhe luettaessa cscope-yhteyttä %ld"
msgid "E561: unknown cscope search type"
msgstr "E561: tuntematon cscope-hakutyyppi"
@@ -2428,20 +2486,23 @@ msgstr "E566: Ei voitu luoda cscope-putkia"
msgid "E622: Could not fork for cscope"
msgstr "E622: Ei voitu haarauttaa cscopea"
+msgid "cs_create_connection setpgid failed"
+msgstr "cs_create_connection setpgid epäonnistui"
+
msgid "cs_create_connection exec failed"
-msgstr "cs_create_connection eponnistui"
+msgstr "cs_create_connection epäonnistui"
msgid "cs_create_connection: fdopen for to_fp failed"
-msgstr "cs_create_connection: fdopen to_fp eponnistui"
+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 eponnistui"
+msgstr "cs_create_connection: fdopen fr_fp epäonnistui"
msgid "E623: Could not spawn cscope process"
-msgstr "E623: Cscope-prosessin luonti eponnistui"
+msgstr "E623: Cscope-prosessin luonti epäonnistui"
msgid "E567: no cscope connections"
-msgstr "E567: ei cscope-yhteyksi"
+msgstr "E567: ei cscope-yhteyksiä"
#, c-format
msgid "E469: invalid cscopequickfix flag %c for %c"
@@ -2449,17 +2510,18 @@ msgstr "E469: virheellinen cscopequickfix-asetus %c kohteelle %c"
#, c-format
msgid "E259: no matches found for cscope query %s of %s"
-msgstr "E259: ei tsmyksi cscope-hakuun %s/%s"
+msgstr "E259: ei täsmäyksiä cscope-hakuun %s/%s"
msgid "cscope commands:\n"
msgstr "cscope-komennot:\n"
#, c-format
msgid "%-5s: %s%*s (Usage: %s)"
-msgstr "%-5s: %s%*s (Kytt: %s)"
+msgstr "%-5s: %s%*s (Käyttö: %s)"
msgid ""
"\n"
+" a: Find assignments to this symbol\n"
" c: Find functions calling this function\n"
" d: Find functions called by this function\n"
" e: Find this egrep pattern\n"
@@ -2467,16 +2529,17 @@ msgid ""
" g: Find this definition\n"
" i: Find files #including this file\n"
" s: Find this C symbol\n"
-" t: Find assignments to\n"
+" t: Find this text string\n"
msgstr ""
"\n"
-" c: Etsi tt funktiota kutsuvat funktiot\n"
-" d: Etsi tmn funktion kutsumat funktiot\n"
-" e: Etsi tm egrep-lauseke\n"
-" f: Find tm tiedosto\n"
-" g: Etsi tm mritys\n"
-" i: Etsi tiedostoja jotka #inkluudaavat tmn\n"
-" s: Etsi tm C-symboli\n"
+" a: Etsi sijotukset tähän symboliin\n"
+" c: Etsi tätä funktiota kutsuvat funktiot\n"
+" d: Etsi tämän funktion kutsumat funktiot\n"
+" e: Etsi tämä egrep-lauseke\n"
+" f: Etsi tämä tiedosto\n"
+" g: Etsi tämä määritys\n"
+" i: Etsi tiedostoja jotka #inkluudaavat tämän\n"
+" s: Etsi tämä C-symboli\n"
" t: Etsi sijoitukset muuttujaan \n"
#, c-format
@@ -2487,7 +2550,7 @@ 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 listty"
+msgstr "E568: kaksoiskappaletta cscope-tietokannasta ei lisätty"
#, c-format
msgid "E261: cscope connection %s not found"
@@ -2503,7 +2566,7 @@ msgstr "E570: kriittinen virhe cs_manage_matches-funktiossa"
#, c-format
msgid "Cscope tag: %s"
-msgstr "Cscope-tgi: %s"
+msgstr "Cscope-tägi: %s"
msgid ""
"\n"
@@ -2523,10 +2586,10 @@ msgid "All cscope databases reset"
msgstr "Kaikki cscope-tietokannat nollattu"
msgid "no cscope connections\n"
-msgstr "ei cscope-yhteyksi\n"
+msgstr "ei cscope-yhteyksiä\n"
msgid " # pid database name prepend path\n"
-msgstr " # pid tietokanta lisyspolku\n"
+msgstr " # pid tietokanta lisäyspolku\n"
msgid "Lua library cannot be loaded."
msgstr "Luan kirjastoa ei voitu ladata."
@@ -2537,13 +2600,18 @@ msgstr "ei voitu tallentaa kumoustietoja"
msgid ""
"E815: Sorry, this command is disabled, the MzScheme libraries could not be "
"loaded."
-msgstr "E815: Sori, komento ei toimi, MzScheme-kirjastoa ei voitu ladata."
+msgstr "E815: komento ei toimi, MzScheme-kirjastoa ei voitu ladata."
+
+msgid ""
+"E895: Sorry, this command is disabled, the MzScheme's racket/base module "
+"could not be loaded."
+msgstr "E895: Komento ei toimi, MzScheme-moduulia racket/base ei voitu ladata."
msgid "invalid expression"
msgstr "virheellinen ilmaus"
msgid "expressions disabled at compile time"
-msgstr "ilmaukset poistettu kytst knnsaikana"
+msgstr "ilmaukset poistettu käytöstä käännösaikana"
msgid "hidden option"
msgstr "piilotettu asetus"
@@ -2558,16 +2626,19 @@ msgid "couldn't open buffer"
msgstr "ei voitu avata puskuria"
msgid "cannot delete line"
-msgstr "ei voitu poistaa rivi"
+msgstr "ei voitu poistaa riviä"
msgid "cannot replace line"
-msgstr "ei voitu korvata rivi"
+msgstr "ei voitu korvata riviä"
msgid "cannot insert line"
-msgstr "ei voitu list rivi"
+msgstr "ei voitu lisätä riviä"
msgid "string cannot contain newlines"
-msgstr "merkkijono ei saa sislt rivinvaihtoja"
+msgstr "merkkijono ei saa sisältää rivinvaihtoja"
+
+msgid "error converting Scheme values to Vim"
+msgstr "virhe Schemestä Vimiin konversiossa"
msgid "Vim error: ~a"
msgstr "Vim-virhe: ~a"
@@ -2588,39 +2659,32 @@ msgid "not allowed in the Vim sandbox"
msgstr "ei sallittu Vimin hiekkalaatikossa"
msgid "E836: This Vim cannot execute :python after using :py3"
-msgstr "E836: Python: Ei voi kytt komentoja :py ja :py3 samassa istunnossa"
-
-msgid "E837: This Vim cannot execute :py3 after using :python"
-msgstr "E837: Python: Ei voi kytt komentoja :py ja :py3 samassa istunnossa"
+msgstr "E836: Python: Ei voi käyttää komentoja :py ja :py3 samassa istunnossa"
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 "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"
+"E263: komento ei toimi, Python-kirjaston lataaminen ei onnistunut."
-#, c-format
-msgid "<buffer object (deleted) at %p>"
-msgstr "<puskuriolio (poistettu) kohdassa %p>"
+msgid ""
+"E887: Sorry, this command is disabled, the Python's site module could not be "
+"loaded."
+msgstr ""
+"E887: Komento ei toimi, Pythonin site-moduulien lataaminen ei onnistunut."
msgid "E659: Cannot invoke Python recursively"
msgstr "E659: Pythonia ei voi kutsua rekursiivisesti"
+msgid "E837: This Vim cannot execute :py3 after using :python"
+msgstr "E837: Python: Ei voi käyttää komentoja :py ja :py3 samassa istunnossa"
+
msgid "E265: $_ must be an instance of String"
-msgstr "E265: muuttujan $_ pit olla Stringin instanssi"
+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."
+msgstr "E266: komento ei toimi, Ruby-kirjastoa ei voitu ladata."
msgid "E267: unexpected return"
msgstr "E267: odotuksenvastainen return"
@@ -2638,101 +2702,12 @@ msgid "E271: retry outside of rescue clause"
msgstr "E271: retry rescuen ulkopuolella"
msgid "E272: unhandled exception"
-msgstr "E272: ksittelemtn poikkeus"
+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 mritelmn vlill"
-
-msgid "Show base class of"
-msgstr "Nyt kantaluokka kohteelle"
-
-msgid "Show overridden member function"
-msgstr "Nyt korvattu jsenfunktio"
-
-msgid "Retrieve from file"
-msgstr "Jljit tiedostosta"
-
-msgid "Retrieve from project"
-msgstr "Jljit projektista"
-
-msgid "Retrieve from all projects"
-msgstr "Jljit kaikista projekteista"
-
-msgid "Retrieve"
-msgstr "Jljit"
-
-msgid "Show source of"
-msgstr "Nyt lhdekoodi kohteelle"
-
-msgid "Find symbol"
-msgstr "Etsi symboli"
-
-msgid "Browse class"
-msgstr "Selaa luokkaa"
-
-msgid "Show class in hierarchy"
-msgstr "Nyt luokka hierarkiassa"
-
-msgid "Show class in restricted hierarchy"
-msgstr "Nyt 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 sislt kohteen"
-
-msgid "Xref used by"
-msgstr "Xrefi kytt"
-
-msgid "Show docu of"
-msgstr "Nyt 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 ympristmuuttujat (sniffemacsin "
-"lyty 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 yhdistettess 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"
@@ -2741,7 +2716,7 @@ msgstr "ei toteutettu"
#. ???
msgid "cannot set line(s)"
-msgstr "ei voi asettaa rivej"
+msgstr "ei voi asettaa rivejä"
msgid "invalid mark name"
msgstr "virheellinen merkin nimi"
@@ -2754,7 +2729,7 @@ msgid "row %d column %d"
msgstr "rivi %d sarake %d"
msgid "cannot insert/append line"
-msgstr "rivin lisys ei onnistu"
+msgstr "rivin lisäys ei onnistu"
msgid "line number out of range"
msgstr "rivinumero arvoalueen ulkopuolella"
@@ -2766,7 +2741,7 @@ msgid "unknown vimOption"
msgstr "tuntematon vimOption"
msgid "keyboard interrupt"
-msgstr "nppimistkeskeytys"
+msgstr "näppäimistökeskeytys"
msgid "vim error"
msgstr "vim-virhe"
@@ -2776,7 +2751,7 @@ 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 rekisterid: puskuri tai ikkuna on poistettu"
+msgstr "callbackia ei voi rekisteröidä: puskuri tai ikkuna on poistettu"
#. This should never happen. Famous last word?
msgid ""
@@ -2787,30 +2762,24 @@ msgstr ""
"postituslistalle vim-dev@vim.org"
msgid "cannot register callback command: buffer/window reference not found"
-msgstr "callbackia ei voi rekisterid: puskurin tai ikkunan viitett ei lydy"
+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"
+msgstr "E571: komento ei toimi, Tcl-kirjastoa ei voitu ladata."
#, c-format
msgid "E572: exit code %d"
msgstr "E572: palautusarvo %d"
msgid "cannot get line"
-msgstr "ei voida hakea rivi"
+msgstr "ei voida hakea riviä"
msgid "Unable to register a command server name"
-msgstr "Komentopalvelimen nimen rekisterinti ei onnistu"
+msgstr "Komentopalvelimen nimen rekisteröinti ei onnistu"
msgid "E248: Failed to send command to the destination program"
-msgstr "E248: Komennon lhetys kohdeohjelmalle ei onnistu"
+msgstr "E248: Komennon lähetys kohdeohjelmalle ei onnistu"
#, c-format
msgid "E573: Invalid server id used: %s"
@@ -2819,6 +2788,14 @@ msgstr "E573: Virheellinen palvelimen tunniste: %s"
msgid "E251: VIM instance registry property is badly formed. Deleted!"
msgstr "E251: VIMin instanssin rekisteriarvo on virheellinen, poistettiin."
+#, 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"
+
msgid "Unknown option argument"
msgstr "Tuntematon asetusargumentti"
@@ -2829,26 +2806,26 @@ msgid "Argument missing after"
msgstr "Argumentti puuttuu kohdasta"
msgid "Garbage after option argument"
-msgstr "Roskaa argumentin perss"
+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 "Vr argumentti valitsimelle"
+msgstr "Väärä argumentti valitsimelle"
#, c-format
msgid "%d files to edit\n"
msgstr "%d tiedostoa muokattavana\n"
msgid "netbeans is not supported with this GUI\n"
-msgstr "netbeans ei toimi tss kyttliittymss\n"
-
-msgid "This Vim was not compiled with the diff feature."
-msgstr "Thn Vimiin ei ole knnetty diff-toimintoja mukaan."
+msgstr "netbeans ei toimi tässä käyttöliittymässä\n"
msgid "'-nb' cannot be used: not enabled at compile time\n"
-msgstr "-nb:t ei voi kytt, koska sit ei knnetty mukaan\n"
+msgstr "-nb:tä ei voi käyttää, koska sitä ei käännetty mukaan\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:"
@@ -2860,13 +2837,16 @@ 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 kynnistys NetBeansist ei onnistu\n"
+msgstr "Vim: Virhe: Gvimin käynnistys NetBeansistä ei onnistu\n"
+
+msgid "Vim: Error: This version of Vim does not run in a Cygwin terminal\n"
+msgstr "Vim: Virhe: Tämä versio Vimistä ei toimi Cygwinin terminaalissa\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: Syte ei tule terminaalilta\n"
+msgstr "Vim: Varoitus: Syöte ei tule terminaalilta\n"
#. just in case..
msgid "pre-vimrc command line"
@@ -2881,19 +2861,19 @@ msgid ""
"More info with: \"vim -h\"\n"
msgstr ""
"\n"
-"Listietoja: \"vim -h\"\n"
+"Lisätietoja: \"vim -h\"\n"
msgid "[file ..] edit specified file(s)"
msgstr "[tiedosto ..] muokkaa tiedostoja"
msgid "- read text from stdin"
-msgstr "- lue vakiosytteest"
+msgstr "- lue vakiosyötteestä"
msgid "-t tag edit file where tag is defined"
-msgstr "-t tgi muokkaa tiedostoa tgist"
+msgstr "-t tägi muokkaa tiedostoa tägistä"
msgid "-q [errorfile] edit file with first error"
-msgstr "-q [virhetiedosto] muokkaa tiedostoa ensimmisest virheest"
+msgstr "-q [virhetiedosto] muokkaa tiedostoa ensimmäisestä virheestä"
msgid ""
"\n"
@@ -2902,7 +2882,7 @@ msgid ""
msgstr ""
"\n"
"\n"
-"kytt:"
+"käyttö:"
msgid " vim [arguments] "
msgstr " vim [argumentit] "
@@ -2919,7 +2899,7 @@ msgid ""
"Where case is ignored prepend / to make flag upper case"
msgstr ""
"\n"
-"Jos aakkoslaji on ohitettu, lis alkuun / tehdksesi asetuksesta "
+"Jos aakkoslaji on ohitettu, lisää alkuun / tehdäksesi asetuksesta "
"suuraakkosia"
msgid ""
@@ -2932,52 +2912,55 @@ msgstr ""
"Argumentit:\n"
msgid "--\t\t\tOnly file names after this"
-msgstr "--\t\t\tvain tiedostonimi tmn jlkeen"
+msgstr "--\t\t\tvain tiedostonimiä tämän jälkeen"
msgid "--literal\t\tDon't expand wildcards"
-msgstr "--literal\t\tl ksittele jokerimerkkej "
+msgstr "--literal\t\tÄlä käsittele jokerimerkkejä "
msgid "-register\t\tRegister this gvim for OLE"
-msgstr "-register\t\trekisteri gvim OLEa varten"
+msgstr "-register\t\trekisteröi gvim OLEa varten"
msgid "-unregister\t\tUnregister gvim for OLE"
-msgstr "-unregister\t\tPoista gvim OLE-rekisterist"
+msgstr "-unregister\t\tPoista gvim OLE-rekisteristä"
msgid "-g\t\t\tRun using GUI (like \"gvim\")"
-msgstr "-g\t\t\tAvaa GUI (kuten gvimill)"
+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 kynnistyksess"
+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)"
+msgstr "-v\t\t\tVi-tila (kuten villä)"
msgid "-e\t\t\tEx mode (like \"ex\")"
-msgstr "-e\t\t\tEx-tila (kute exill)"
+msgstr "-e\t\t\tEx-tila (kute exillä)"
+
+msgid "-E\t\t\tImproved Ex mode"
+msgstr "-E\t\t\tParanneltu Ex-tila"
msgid "-s\t\t\tSilent (batch) mode (only for \"ex\")"
-msgstr "-s\t\t\tHiljainen (erajo)tila (vain exill)"
+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)"
+msgstr "-d\t\t\tDiff-tila (kuten vimdiffillä)"
msgid "-y\t\t\tEasy mode (like \"evim\", modeless)"
-msgstr "-y\t\t\tHelppokytttila (kuten evimiss, ilman tiloja)"
+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)"
+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 kytst"
+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 kytst"
+msgstr "-M\t\t\tTekstin muokkaus pois käytöstä"
msgid "-b\t\t\tBinary mode"
-msgstr "-b\t\t\tBinritila"
+msgstr "-b\t\t\tBinääritila"
msgid "-l\t\t\tLisp mode"
msgstr "-l\t\t\tLisp-tila"
@@ -2993,10 +2976,10 @@ msgstr ""
"-V[N][tnimi]\t\tMonisanainen tuloste [Taso N] [kirjoita tuloste tnimeen] "
msgid "-D\t\t\tDebugging mode"
-msgstr "-D\t\t\tVianetsinttila"
+msgstr "-D\t\t\tVianetsintätila"
msgid "-n\t\t\tNo swap file, use memory only"
-msgstr "-n\t\t\tEi swap-tiedostoja, kyt muistia"
+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"
@@ -3008,34 +2991,37 @@ 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\tl kyt newcli:t ikkunan avaamiseen"
+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\tKyt <laitetta> IO:hon"
+msgstr "-dev <laite>\t\tKäytä <laitetta> IO:hon"
msgid "-A\t\t\tstart in Arabic mode"
-msgstr "-A\t\t\tkynnist arabia-tilassa"
+msgstr "-A\t\t\tkäynnistä arabia-tilassa"
msgid "-H\t\t\tStart in Hebrew mode"
-msgstr "-H\t\t\tkynnist heprea-tilassa"
+msgstr "-H\t\t\tkäynnistä heprea-tilassa"
msgid "-F\t\t\tStart in Farsi mode"
-msgstr "-F\t\t\tkynnist farsi-tilassa"
+msgstr "-F\t\t\tkäynnistä farsi-tilassa"
msgid "-T <terminal>\tSet terminal type to <terminal>"
msgstr "-T <terminaali>\tAseta terminaalin tyypiksi <terminaali>"
+msgid "--not-a-term\t\tSkip warning for input/output not being a terminal"
+msgstr "--not-a-term\t\tOhita varoitus siitä että i/o ei ole terminaali"
+
msgid "-u <vimrc>\t\tUse <vimrc> instead of any .vimrc"
-msgstr "-u <vimrc>\t\tKyt <vimrc>-tiedostoa .vimrc:iden sijasta"
+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\tKyt <gvimrc>-tiedostoa .gvimrc:iden sijasta"
+msgstr "-U <gvimrc>\t\tKäytä <gvimrc>-tiedostoa .gvimrc:iden sijasta"
msgid "--noplugin\t\tDon't load plugin scripts"
-msgstr "--noplugin\t\tl lataa liitnnisi"
+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 vlilehte (oletus: yksi per tiedosto)"
+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)"
@@ -3047,22 +3033,22 @@ 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>"
+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> ensimmisen tiedoston latauduttua"
+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> ensimmisen tiedoston latauduttua"
+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"
+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"
@@ -3071,10 +3057,10 @@ 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 <nytt>\tYhdist vim tiettyyn X-palvelimeen"
+msgstr "-display <näyttö>\tYhdistä vim tiettyyn X-palvelimeen"
msgid "-X\t\t\tDo not connect to X server"
-msgstr "-X\t\t\tl yhdist X-palvelimeen"
+msgstr "-X\t\t\tÄlä yhdistä X-palvelimeen"
msgid "--remote <files>\tEdit <files> in a Vim server if possible"
msgstr ""
@@ -3082,7 +3068,7 @@ msgstr ""
msgid "--remote-silent <files> Same, don't complain if there is no server"
msgstr ""
-"--remote-silent <tiedostoja>\tSama, mutta l ilmoita puuttuvasta "
+"--remote-silent <tiedostoja>\tSama, mutta älä ilmoita puuttuvasta "
"palvelimesta"
msgid ""
@@ -3094,37 +3080,37 @@ msgstr ""
msgid ""
"--remote-wait-silent <files> Same, don't complain if there is no server"
msgstr ""
-"--remote-wait-silent <tiedostoja> sama, mutta l ilmoita puuttuvasta "
+"--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 "
-"vlilehti joka tiedostolle"
+"välilehti joka tiedostolle"
msgid "--remote-send <keys>\tSend <keys> to a Vim server and exit"
msgstr ""
-"--remote-send <nppimi>\tLhet <nppimi> painalluksina Vimille ja lopeta"
+"--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>\tKsittele <ilmaus> Vim-palvelimella ja tulosta tulos"
+"--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>\tLhet Vim-palvelimelle <nimi> tai luo se"
+msgstr "--servername <nimi>\tLähetä Vim-palvelimelle <nimi> tai luo se"
msgid "--startuptime <file>\tWrite startup timing messages to <file>"
-msgstr "--startuptime <file>\tKirjoita kynnistysaikaviestit tiedostoon <file>"
+msgstr "--startuptime <file>\tKirjoita käynnistysaikaviestit tiedostoon <file>"
msgid "-i <viminfo>\t\tUse <viminfo> instead of .viminfo"
-msgstr "-i <viminfo>\t\tKyt <viminfo>-tiedostoa .viminfon sijaan"
+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 (tm viesti) ja lopeta"
+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"
@@ -3151,113 +3137,103 @@ msgstr ""
"Gvimin (Athena-version) tuntemat argumentit:\n"
msgid "-display <display>\tRun vim on <display>"
-msgstr "-display <nytt>\tSuorita vim <nytss>"
+msgstr "-display <näyttö>\tSuorita vim <näytössä>"
msgid "-iconic\t\tStart vim iconified"
-msgstr "-iconic\t\tKynnist pienennettyn"
+msgstr "-iconic\t\tKäynnistä pienennettynä"
msgid "-background <color>\tUse <color> for the background (also: -bg)"
-msgstr "-background <vri>\tKyt <vri> taustavrin (mys: -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 <vri>\tKyt <vri> tekstin vrin (mys: -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\tKyt <fonttia> tekstiss (mys: -fn)"
+msgstr "-font <fontti>\t\tKäytä <fonttia> tekstissä (myös: -fn)"
msgid "-boldfont <font>\tUse <font> for bold text"
-msgstr "-boldfont <fontti>\tKyt <fonttia> lihavoidussa tekstiss"
+msgstr "-boldfont <fontti>\tKäytä <fonttia> lihavoidussa tekstissä"
msgid "-italicfont <font>\tUse <font> for italic text"
-msgstr "-italicfont <fontti>\tKyt <fonttia> kursivoidussa tekstiss"
+msgstr "-italicfont <fontti>\tKäytä <fonttia> kursivoidussa tekstissä"
msgid "-geometry <geom>\tUse <geom> for initial geometry (also: -geom)"
msgstr ""
-"-geometry <geom>\tKyt mittoja <geom> ikkunan asetteluun (mys: -geom)"
+"-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>\tKyt <leveytt> reunuksissa (mys: -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> Kyt <leveytt> vierityspalkissa (mys: -sw)"
+"-scrollbarwidth <leveys> Käytä <leveyttä> vierityspalkissa (myös: -sw)"
msgid "-menuheight <height>\tUse a menu bar height of <height> (also: -mh)"
-msgstr "-menuheight <korkeus>\tKyt <korkeutta> valikossa (mys: -mh)"
+msgstr "-menuheight <korkeus>\tKäytä <korkeutta> valikossa (myös: -mh)"
msgid "-reverse\t\tUse reverse video (also: -rv)"
-msgstr "-reverse\t\tKyt knteisvrej (mys: -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\tl kyt knteisvrej (mys: +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 <nytt>\tSuorita vim nytll <nytt> (mys: --display)"
+msgstr "-display <näyttö>\tSuorita vim näytöllä <näyttö> (myös: --display)"
-# X-ikkunointijrjestelmss saman sovelluksen saman luokan ikkunat
+# 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 pikkunalle ainutlaatuinen rooli tunnisteeksi"
+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 "--echo-wid\t\tMake gvim echo the Window ID on stdout"
+msgstr "--echo-wid\t\tTulosta gvimin Window ID vakiotulosteeseen"
+
msgid "-P <parent title>\tOpen Vim inside parent application"
-msgstr "-P <otsikko>\tAvaa Vim isntohjelman sisn"
+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 nytt"
+msgstr "Ei näyttöä"
#. Failed to send, abort.
msgid ": Send failed.\n"
-msgstr ": Lhetys eponnistui.\n"
+msgstr ": Lähetys epäonnistui.\n"
#. Let vim start normally.
msgid ": Send failed. Trying to execute locally\n"
-msgstr ": Lhetys eponnistui. Yritetn suorittaa paikallisena\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 nytt: Ilmauksen lhetys eponnistui.\n"
+msgstr "Ei näyttöä: Ilmauksen lähetys epäonnistui.\n"
msgid ": Send expression failed.\n"
-msgstr ": Ilmauksen lhetys eponnistui.\n"
+msgstr ": Ilmauksen lähetys epäonnistui.\n"
msgid "No marks set"
-msgstr "Ei asetettuja merkkej"
+msgstr "Ei asetettuja merkkejä"
#, c-format
msgid "E283: No marks matching \"%s\""
-msgstr "E283: Mikn merkki ei tsm ilmaukseen \"%s\""
+msgstr "E283: Mikään merkki ei täsmää ilmaukseen \"%s\""
#. Highlight title
msgid ""
@@ -3283,7 +3259,6 @@ msgstr ""
"\n"
"muutos rivi sarake teksti"
-#, c-format
msgid ""
"\n"
"# File marks:\n"
@@ -3292,7 +3267,6 @@ msgstr ""
"# Tiedoston merkit:\n"
#. Write the jumplist with -'
-#, c-format
msgid ""
"\n"
"# Jumplist (newest first):\n"
@@ -3300,7 +3274,6 @@ msgstr ""
"\n"
"# Hyppylista (uusin ensiksi):\n"
-#, c-format
msgid ""
"\n"
"# History of marks within files (newest to oldest):\n"
@@ -3312,26 +3285,26 @@ msgid "Missing '>'"
msgstr "> puuttuu"
msgid "E543: Not a valid codepage"
-msgstr "E543: Koodisivu ei ole kyp"
+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: Sytekontekstin luonti ei onnistu"
+msgstr "E285: Syötekontekstin luonti ei onnistu"
msgid "E286: Failed to open input method"
-msgstr "E286: Sytemetodin avaus ei onnistu"
+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 sytemetodipalvelimelle"
+"E287: Varoitus: Ei voitu asettaa destroy-kutsua syötemetodipalvelimelle"
msgid "E288: input method doesn't support any style"
-msgstr "E288: sytemetodi ei tue tyylej"
+msgstr "E288: syötemetodi ei tue tyylejä"
msgid "E289: input method doesn't support my preedit type"
-msgstr "E289: sytemetodi ei tue tt preedit-tyyppi"
+msgstr "E289: syötemetodi ei tue tätä preedit-tyyppiä"
msgid "E293: block was not locked"
msgstr "E293: lohkoa ei ole lukittu"
@@ -3349,20 +3322,23 @@ 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-hykkys?)"
+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?"
+msgstr "E298: Lohko 1:tä ei saatu?"
msgid "E298: Didn't get block nr 2?"
msgstr "E298: Lohko 2:ta ei saatu?"
+msgid "E843: Error while updating swap file crypt"
+msgstr "E843: Virhe päivitettäessä swapin kryptausta"
+
#. could not (re)open the swap file, what can we do????
msgid "E301: Oops, lost the swap file!!!"
-msgstr "E301: Hups, swap-tiedosto hvisi!"
+msgstr "E301: Hups, swap-tiedosto hävisi!"
msgid "E302: Could not rename swap file"
msgstr "E302: Swap-tiedoston uudellennimeys ei onnistu"
@@ -3393,20 +3369,20 @@ msgid ""
"Maybe no changes were made or Vim did not update the swap file."
msgstr ""
"\n"
-"Muutoksia ei tehty, tai Vim ei pivittnyt swap-tiedostoa."
+"Muutoksia ei tehty, tai Vim ei päivittänyt swap-tiedostoa."
msgid " cannot be used with this version of Vim.\n"
-msgstr " ei toimi tmn version Vimin kanssa.\n"
+msgstr " ei toimi tämän version Vimin kanssa.\n"
msgid "Use Vim version 3.0.\n"
-msgstr "Kyt Vimin versiota 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 tll koneella.\n"
+msgstr " ei toimi tällä koneella.\n"
msgid "The file was created on "
msgstr "Tiedosto luotiin "
@@ -3421,21 +3397,21 @@ msgstr ""
#, c-format
msgid ""
"E833: %s is encrypted and this version of Vim does not support encryption"
-msgstr "E833: %s on salattu eik tm Vim tue salausta"
+msgstr "E833: %s on salattu eikä tämä Vim tue salausta"
msgid " has been damaged (page size is smaller than minimum value).\n"
-msgstr " on vioittunut (sivun koko on vhimmisarvoa pienempi).\n"
+msgstr " on vioittunut (sivun koko on vähimmäisarvoa pienempi).\n"
#, c-format
msgid "Using swap file \"%s\""
-msgstr "Kytetn swap-tiedostoa %s"
+msgstr "Käytetään swap-tiedostoa %s"
#, c-format
msgid "Original file \"%s\""
-msgstr "Alkuperinen tiedosto %s"
+msgstr "Alkuperäinen tiedosto %s"
msgid "E308: Warning: Original file may have been changed"
-msgstr "E308: Varoitus: Alkuperist tiedostoa saattaa olla muutettu"
+msgstr "E308: Varoitus: Alkuperäistä tiedostoa saattaa olla muutettu"
#, c-format
msgid "Swap file is encrypted: \"%s\""
@@ -3444,55 +3420,59 @@ msgstr "Swap-tiedosto on salattu: %s"
msgid ""
"\n"
"If you entered a new crypt key but did not write the text file,"
-msgstr "\n"
-"Jos kytit uutta salausavainta muttet kirjoittanut tekstitiedostoa,"
+msgstr ""
+"\n"
+"Jos käytit uutta salausavainta muttet kirjoittanut tekstitiedostoa,"
msgid ""
"\n"
"enter the new crypt key."
-msgstr "\n"
+msgstr ""
+"\n"
"anna uusi salausavain."
msgid ""
"\n"
"If you wrote the text file after changing the crypt key press enter"
-msgstr "\n"
-"Jos kirjoitit tekstitiedoston salausavaimen vaihdon jlkeen paina enteri"
+msgstr ""
+"\n"
+"Jos kirjoitit tekstitiedoston salausavaimen vaihdon jälkeen paina enteriä"
msgid ""
"\n"
"to use the same key for text file and swap file"
-msgstr "\n"
-"kyttksesi samaa avainta teksti- ja swppitiedostoille"
+msgstr ""
+"\n"
+"käyttääksesi samaa avainta teksti- ja swäppitiedostoille"
#, 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"
+msgstr "???PALJON RIVEJÄ PUUTTUU"
msgid "???LINE COUNT WRONG"
-msgstr "???RIVIMR PIELESS"
+msgstr "???RIVIMÄÄRÄ PIELESSÄ"
msgid "???EMPTY BLOCK"
-msgstr "???TYHJ LOHKO"
+msgstr "???TYHJÄ LOHKO"
msgid "???LINES MISSING"
-msgstr "???RIVEJ PUUTTUU"
+msgstr "???RIVEJÄ PUUTTUU"
#, c-format
msgid "E310: Block 1 ID wrong (%s not a .swp file?)"
-msgstr "E310: Lohon 1 tunniste vr (%s ei ole .swp-tiedosto?)"
+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 "??? tst kohtaan ???LOPPU rivej sekaisin"
+msgstr "??? tästä kohtaan ???LOPPU rivejä sekaisin"
msgid "??? from here until ???END lines may have been inserted/deleted"
-msgstr "??? tst kohtaan ???LOPPU rivej saattaa olla listty tai poistettu"
+msgstr "??? tästä kohtaan ???LOPPU rivejä saattaa olla lisätty tai poistettu"
msgid "???END"
msgstr "???LOPPU"
@@ -3502,53 +3482,54 @@ msgstr "E311: Palautus keskeytetty"
msgid ""
"E312: Errors detected while recovering; look for lines starting with ???"
-msgstr "E312: Palautuksessa oli virheit, etsi rivej, jotka alkavat ???"
+msgstr "E312: Palautuksessa oli virheitä, etsi rivejä, jotka alkavat ???"
msgid "See \":help E312\" for more information."
-msgstr ":help E312 kertoo listietoja"
+msgstr ":help E312 kertoo lisätietoja"
msgid "Recovery completed. You should check if everything is OK."
-msgstr "Palautus onnistui. Tarkista, ett kaikki on kunnossa."
+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 tm tiedosto toisella nimell\n"
+"(Saattaa kannattaa kirjoittaa tämä tiedosto toisella nimellä\n"
msgid "and run diff with the original file to check for changes)"
-msgstr "ja katso diffill muutokset alkuperiseen tiedostoon)"
+msgstr "ja katso diffillä muutokset alkuperäiseen tiedostoon)"
msgid "Recovery completed. Buffer contents equals file contents."
-msgstr "Palautus onnistui. Puskurin ja tiedoston sisllt tsmvt."
+msgstr "Palautus onnistui. Puskurin ja tiedoston sisällöt täsmäävät."
msgid ""
"\n"
"You may want to delete the .swp file now.\n"
"\n"
-msgstr "\n"
+msgstr ""
+"\n"
"Voit poistaa .swp-tiedosto nyt.\n"
"\n"
msgid "Using crypt key from swap file for the text file.\n"
-msgstr "Kytetn swpin salausavainta tekstitiedostolle\n"
+msgstr "Käytetään swäpin salausavainta tekstitiedostolle\n"
#. use msg() to start the scrolling properly
msgid "Swap files found:"
-msgstr "Swap-tiedostoja lytyi:"
+msgstr "Swap-tiedostoja löytyi:"
msgid " In current directory:\n"
-msgstr " Tss hakemistossa:\n"
+msgstr " Tässä hakemistossa:\n"
msgid " Using specified name:\n"
-msgstr " Mritellyll nimell:\n"
+msgstr " Määritellyllä nimellä:\n"
msgid " In directory "
msgstr " Hakemistossa "
msgid " -- none --\n"
-msgstr " -- ei mitn --\n"
+msgstr " -- ei mitään --\n"
msgid " owned by: "
msgstr " omistaja: "
@@ -3563,7 +3544,7 @@ msgid " [from Vim version 3.0]"
msgstr " [Vimin 3.0-versiosta]"
msgid " [does not look like a Vim swap file]"
-msgstr " [ei nyt Vimin swap-tiedostolta]"
+msgstr " [ei näytä Vimin swap-tiedostolta]"
msgid " file name: "
msgstr " tiedostonimi: "
@@ -3576,7 +3557,7 @@ msgstr ""
" muokattu: "
msgid "YES"
-msgstr "KYLL"
+msgstr "KYLLÄ"
msgid "no"
msgstr "ei"
@@ -3586,7 +3567,7 @@ msgid ""
" user name: "
msgstr ""
"\n"
-" kyttjnimi: "
+" käyttäjänimi: "
msgid " host name: "
msgstr " laitenimi: "
@@ -3606,21 +3587,21 @@ msgstr ""
" prosessin tunniste: "
msgid " (still running)"
-msgstr " (kynniss)"
+msgstr " (käynnissä)"
msgid ""
"\n"
" [not usable with this version of Vim]"
msgstr ""
"\n"
-" [ei toimi tmn Vim-version kanssa]"
+" [ei toimi tämän Vim-version kanssa]"
msgid ""
"\n"
" [not usable on this computer]"
msgstr ""
"\n"
-" [ei toimi tll koneella]"
+" [ei toimi tällä koneella]"
msgid " [cannot be read]"
msgstr " [ei voi lukea]"
@@ -3629,13 +3610,13 @@ msgid " [cannot be opened]"
msgstr " [ei voi avata]"
msgid "E313: Cannot preserve, there is no swap file"
-msgstr "E313: Ei voi silytt, swap-tiedostoa ei ole"
+msgstr "E313: Ei voi säilyttää, swap-tiedostoa ei ole"
msgid "File preserved"
-msgstr "Tiedosto silytetty"
+msgstr "Tiedosto säilytetty"
msgid "E314: Preserve failed"
-msgstr "E314: Silyttminen eponnistui"
+msgstr "E314: Säilyttäminen epäonnistui"
#, c-format
msgid "E315: ml_get: invalid lnum: %ld"
@@ -3643,29 +3624,29 @@ msgstr "E315: ml_get: virheellinen lnum: %ld"
#, c-format
msgid "E316: ml_get: cannot find line %ld"
-msgstr "E316: ml_get: rivi %ld ei lydy"
+msgstr "E316: ml_get: riviä %ld ei löydy"
msgid "E317: pointer block id wrong 3"
-msgstr "E317: osoitinlohkon tunnus vr 3"
+msgstr "E317: osoitinlohkon tunnus väärä 3"
msgid "stack_idx should be 0"
-msgstr "stack_idx pit olla 0"
+msgstr "stack_idx pitää olla 0"
msgid "E318: Updated too many blocks?"
-msgstr "E318: Pivitetty liikaa lohkoja"
+msgstr "E318: Päivitetty liikaa lohkoja"
msgid "E317: pointer block id wrong 4"
-msgstr "E317: osoitinlohkon tunnus vr 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 lydy"
+msgstr "E320: Riviä %ld ei löydy"
msgid "E317: pointer block id wrong"
-msgstr "E317: osoitinlohkon tunnus vr"
+msgstr "E317: osoitinlohkon tunnus väärä"
msgid "pe_line_count is zero"
msgstr "pe_line_count on nolla"
@@ -3676,13 +3657,13 @@ msgstr "E322: rivinumero arvoalueen ulkopuoleta: %ld on loppua suurempi"
#, c-format
msgid "E323: line count wrong in block %ld"
-msgstr "E323: rivimr vrin lohkossa %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 vr 2"
+msgstr "E317: osoitinlohon tunnus väärä 2"
#, c-format
msgid "E773: Symlink loop for \"%s\""
@@ -3696,7 +3677,7 @@ msgid ""
"Found a swap file by the name \""
msgstr ""
"\n"
-"Swap-tiedosto lytyi: \""
+"Swap-tiedosto löytyi: \""
msgid "While opening file \""
msgstr "Avattaessa tiedostoa "
@@ -3708,44 +3689,37 @@ msgstr " joka on UUDEMPI kuin swap-tiedosto!\n"
#. * 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"
+"(1) Another program may be editing the same file. If this is the case,\n"
+" be careful not to end up with two different instances of the same\n"
+" file when making changes. Quit, or continue with caution.\n"
msgstr ""
"\n"
-"(1) Toinen ohjelma saattaa kytt samaa tiedostoa.\n"
-" Jos nin on, varo, ettet muokkaa saman tiedoston\n"
-" kahta instanssia yht aikaa.\n"
+"(1) Toinen ohjelma saattaa käyttää samaa tiedostoa.\n"
+" Jos näin on, varo, ettet muokkaa saman tiedoston\n"
+" kahta instanssia yhtä aikaa. Lopeta tai jatka varoen.\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 "(2) An edit session for this file crashed.\n"
+msgstr "(2) Tiedostonmuokkausistunto on kaatunut.\n"
msgid " If this is the case, use \":recover\" or \"vim -r "
-msgstr " Jos nin on, kyt komentoa :recover tai 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 (listietoja: \":help recovery\").\n"
+" palauttaaksesi muutokset (lisätietoja: \":help recovery\").\n"
msgid " If you did this already, delete the swap file \""
-msgstr " Jos teit jo nin, poista swap-tiedosto "
+msgstr " Jos teit jo näin, poista swap-tiedosto "
msgid ""
"\"\n"
" to avoid this message.\n"
msgstr ""
"\"\n"
-" vlttksesi tmn viestin.\n"
+" välttääksesi tämän viestin.\n"
msgid "Swap file \""
msgstr "Swap-tiedosto "
@@ -3802,13 +3776,13 @@ msgstr "E329: Ei valikkoa %s"
#. Only a mnemonic or accelerator is not valid.
msgid "E792: Empty menu name"
-msgstr "E792: tyhj valikkonimi"
+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 list suoraan valikkopalkkiin"
+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"
@@ -3823,24 +3797,24 @@ msgstr ""
"--- Valikot ---"
msgid "Tear off this menu"
-msgstr "Repise valikko irti"
+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 lydy: %s"
+msgstr "E334: Valikkoa ei löydy: %s"
#, c-format
msgid "E335: Menu not defined for %s mode"
-msgstr "E335: Valikkoa ei ole mritelty %s-tilassa"
+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"
+msgstr "E336: Valikkopolun pitää johtaa alivalikkoon"
msgid "E337: Menu not found - check menu names"
-msgstr "E337: Valikkoa ei lytynyt - tarkista valikkojen nimet"
+msgstr "E337: Valikkoa ei löytynyt - tarkista valikkojen nimet"
#, c-format
msgid "Error detected while processing %s:"
@@ -3855,23 +3829,23 @@ msgid "E354: Invalid register name: '%s'"
msgstr "E354: Virheellinen rekisterin nimi: %s"
msgid "Messages maintainer: Bram Moolenaar <Bram@vim.org>"
-msgstr "Knnksen yllpitj: Flammie Pirinen <flammie@iki.fi>"
+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 "
+msgstr "Paina enteriä tai kirjoita komento aloittaaksesi "
#, c-format
msgid "%s line %ld"
msgstr "%s rivi %ld"
msgid "-- More --"
-msgstr "-- Lis --"
+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: yls, q: lopeta "
+msgstr " SPACE/d/j: ruutu/sivu/rivi alas, b/u/k: ylös, q: lopeta "
msgid "Question"
msgstr "Kysymys"
@@ -3880,7 +3854,7 @@ msgid ""
"&Yes\n"
"&No"
msgstr ""
-"&Kyll\n"
+"&Kyllä\n"
"&Ei"
msgid ""
@@ -3890,7 +3864,7 @@ msgid ""
"&Discard All\n"
"&Cancel"
msgstr ""
-"&Kyll\n"
+"&Kyllä\n"
"&Ei\n"
"&Tallenna kaikki\n"
"T&uhoa kaikki\n"
@@ -3907,7 +3881,7 @@ msgstr "Avausikkuna"
#. TODO: non-GUI file selector here
msgid "E338: Sorry, no file browser in console mode"
-msgstr "E338: Sori, tiedostonselain puuttuu konsolitilasta"
+msgstr "E338: tiedostonselain puuttuu konsolitilasta"
msgid "E766: Insufficient arguments for printf()"
msgstr "E766: printf():lle ei annettu tarpeeksi argumentteja"
@@ -3922,24 +3896,24 @@ msgid "W10: Warning: Changing a readonly file"
msgstr "W10: Varoitus: Muutetaan kirjoitussuojattua tiedostoa"
msgid "Type number and <Enter> or click with mouse (empty cancels): "
-msgstr "Kirjoita numero ja <Enter> tai valitse hiirell (tyhj peruu): "
+msgstr "Kirjoita numero ja <Enter> tai valitse hiirellä (tyhjä peruu): "
msgid "Type number and <Enter> (empty cancels): "
-msgstr "Valitse numero ja <Enter> (tyhj peruu): "
+msgstr "Valitse numero ja <Enter> (tyhjä peruu): "
msgid "1 more line"
-msgstr "1 rivi lis"
+msgstr "1 rivi lisää"
msgid "1 line less"
-msgstr "1 rivi vhemmn"
+msgstr "1 rivi vähemmän"
#, c-format
msgid "%ld more lines"
-msgstr "%ld rivi lis"
+msgstr "%ld riviä lisää"
#, c-format
msgid "%ld fewer lines"
-msgstr "%ld rivi vhemmn"
+msgstr "%ld riviä vähemmän"
msgid " (Interrupted)"
msgstr " (Keskeytetty)"
@@ -3947,14 +3921,6 @@ msgstr " (Keskeytetty)"
msgid "Beep!"
msgstr "Piip!"
-msgid "Vim: preserving files...\n"
-msgstr "Vim: sstetn tiedostoja...\n"
-
-#. close all memfiles, without deleting
-msgid "Vim: Finished.\n"
-msgstr "Vim: Valmis.\n"
-
-#, c-format
msgid "ERROR: "
msgstr "VIRHE: "
@@ -3964,7 +3930,7 @@ msgid ""
"[bytes] total alloc-freed %lu-%lu, in use %lu, peak use %lu\n"
msgstr ""
"\n"
-"[tavua] yht. alloc-free %lu-%lu, kytss %lu, kytthuippu %lu\n"
+"[tavua] yht. alloc-free %lu-%lu, käytössä %lu, käyttöhuippu %lu\n"
#, c-format
msgid ""
@@ -3975,11 +3941,11 @@ msgstr ""
"\n"
msgid "E340: Line is becoming too long"
-msgstr "E340: Rivist tulee liian pitk"
+msgstr "E340: Rivistä tulee liian pitkä"
#, c-format
msgid "E341: Internal error: lalloc(%ld, )"
-msgstr "E341: Sisinen virhe: lalloc(%ld, )"
+msgstr "E341: Sisäinen virhe: lalloc(%ld, )"
#, c-format
msgid "E342: Out of memory! (allocating %lu bytes)"
@@ -3999,19 +3965,13 @@ msgid "E547: Illegal mouseshape"
msgstr "E547: Virheellinen hiiren muoto"
msgid "E548: digit expected"
-msgstr "E548: pit olla numero"
+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 eivt tsm!"
+msgid "E854: path too long for completion"
+msgstr "E854: polku on liian pitkä täydennykseen"
#, c-format
msgid ""
@@ -4023,51 +3983,46 @@ msgstr ""
#, c-format
msgid "E344: Can't find directory \"%s\" in cdpath"
-msgstr "E344: Hakemistoa %s ei lydy cdpathista"
+msgstr "E344: Hakemistoa %s ei löydy cdpathista"
#, c-format
msgid "E345: Can't find file \"%s\" in path"
-msgstr "E345: Tiedostoa %s ei lydy polulta"
+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"
+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"
+msgstr "E347: Tiedosto %s ei ole enää polulla"
#, c-format
msgid "E668: Wrong access mode for NetBeans connection info file: \"%s\""
-msgstr "E668: Vr avaustila NetBeans-yhteyden infotiedostolle: %s"
-
-msgid "read from Netbeans socket"
-msgstr "luettu Netbeans-soketista"
+msgstr "E668: Väärä avaustila NetBeans-yhteyden infotiedostolle: %s"
#, c-format
msgid "E658: NetBeans connection lost for buffer %ld"
msgstr "E658: NetBeans-yhteys katkesi puskurille %ld"
+msgid "E838: netbeans is not supported with this GUI"
+msgstr "E838: netbeans ei toimi tässä käyttöliittymässä"
+
msgid "E511: netbeans already connected"
msgstr "E511: netbeans on yhdistetty jo"
-msgid "E505: "
-msgstr "E505: "
+#, c-format
+msgid "E505: %s is read-only (add ! to override)"
+msgstr "E505: %s on kirjoitussuojattu (lisää komentoon ! ohittaaksesi)"
msgid "E349: No identifier under cursor"
msgstr "E349: Ei tunnistetta osoittimen alla"
msgid "E774: 'operatorfunc' is empty"
-msgstr "E774: operatorfunc on tyhj"
+msgstr "E774: operatorfunc on tyhjä"
msgid "E775: Eval feature not available"
-msgstr "E775: Eval ei ole kytettviss"
+msgstr "E775: Eval ei ole käytettävissä"
msgid "Warning: terminal cannot highlight"
msgstr "Varoitus: terminaalista puuttuu korostus"
@@ -4076,10 +4031,10 @@ msgid "E348: No string under cursor"
msgstr "E348: Ei merkkijonoa kursorin alla"
msgid "E352: Cannot erase folds with current 'foldmethod'"
-msgstr "E352: taitoksia ei voi poistaa tll foldmethodilla"
+msgstr "E352: taitoksia ei voi poistaa tällä foldmethodilla"
msgid "E664: changelist is empty"
-msgstr "E664: muutoslista on tyhj"
+msgstr "E664: muutoslista on tyhjä"
msgid "E662: At start of changelist"
msgstr "E662: Muutoslistan alussa"
@@ -4092,33 +4047,33 @@ msgstr "Komento :quit<Enter> lopettaa Vimin"
#, c-format
msgid "1 line %sed 1 time"
-msgstr "1 rivi %s kerran"
+msgstr "1 riviä %s kerran"
#, c-format
msgid "1 line %sed %d times"
-msgstr "1 rivi %s %d kertaa"
+msgstr "1 riviä %s %d kertaa"
#, c-format
msgid "%ld lines %sed 1 time"
-msgstr "%ld rivi %s kerran"
+msgstr "%ld riviä %s kerran"
#, c-format
msgid "%ld lines %sed %d times"
-msgstr "%ld rivi %s %d kertaa"
+msgstr "%ld riviä %s %d kertaa"
#, c-format
msgid "%ld lines to indent... "
-msgstr "%ld rivi sisennettvn..."
+msgstr "%ld riviä sisennettävänä..."
msgid "1 line indented "
msgstr "1 rivi sisennetty "
#, c-format
msgid "%ld lines indented "
-msgstr "%ld rivi sisennetty "
+msgstr "%ld riviä sisennetty "
msgid "E748: No previously used register"
-msgstr "E748: Ei aiemmin kytettyj rekisterej"
+msgstr "E748: Ei aiemmin käytettyjä rekisterejä"
#. must display the prompt
msgid "cannot yank; delete anyway"
@@ -4129,11 +4084,11 @@ msgstr "1 rivi muuttui"
#, c-format
msgid "%ld lines changed"
-msgstr "%ld rivi muuttui"
+msgstr "%ld riviä muuttui"
#, c-format
msgid "freeing %ld lines"
-msgstr "vapautetaan %ld rivi"
+msgstr "vapautetaan %ld riviä"
msgid "block of 1 line yanked"
msgstr "1 rivin lohko kopioitu"
@@ -4143,15 +4098,15 @@ msgstr "1 rivi kopioitu"
#, c-format
msgid "block of %ld lines yanked"
-msgstr "lohko %ld rivilt kopioitu"
+msgstr "lohko %ld riviltä kopioitu"
#, c-format
msgid "%ld lines yanked"
-msgstr "%ld rivi kopioitu"
+msgstr "%ld riviä kopioitu"
#, c-format
msgid "E353: Nothing in register %s"
-msgstr "E353: Rekisteriss %s ei ole mitn"
+msgstr "E353: Rekisterissä %s ei ole mitään"
#. Highlight title
msgid ""
@@ -4175,29 +4130,38 @@ msgstr ""
msgid "E574: Unknown register type %d"
msgstr "E574: Tuntematon rekisterityyppi %d"
+msgid ""
+"E883: search pattern and expression register may not contain two or more "
+"lines"
+msgstr ""
+"E883: hakulauseke- ja -ilmausrekisteri ei voi sisältää kahta tai useampaa "
+"riviä"
+
#, 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"
+msgid "Selected %s%ld of %ld Lines; %lld of %lld Words; %lld of %lld Bytes"
+msgstr "Valittu %s%ld/%ld riviä, %lld/%lld sanaa, %lld/%lld 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"
+"Selected %s%ld of %ld Lines; %lld of %lld Words; %lld of %lld Chars; %lld of "
+"%lld Bytes"
+msgstr "Valittu %s%ld/%ld riviä, %lld/%lld sanaa, %lld/%lld merkkiä, "
+"%lld/%lld 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"
+msgid "Col %s of %s; Line %ld of %ld; Word %lld of %lld; Byte %lld of %lld"
+msgstr "Sarake %s/%s, Rivi %ld/%ld, sana %lld/%lld, tavu %lld/%lld"
#, 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"
+"Col %s of %s; Line %ld of %ld; Word %lld of %lld; Char %lld of %lld; Byte "
+"%lld of %lld"
+msgstr "Sarake %s/%s, rivi %ld/%ld, sana %lld/%lld, merkki %lld/%lld, tavu "
+"%lld/%lld"
# Unicode Byte Order Mark
#, c-format
@@ -4208,7 +4172,7 @@ msgid "%<%f%h%m%=Page %N"
msgstr "%<%f%h%m%=Sivu %N"
msgid "Thanks for flying Vim"
-msgstr "Kiitos ett ajoit Vimi"
+msgstr "Kiitos että ajoit Vimiä"
msgid "E518: Unknown option"
msgstr "E518: Tuntematon asetus"
@@ -4217,10 +4181,13 @@ msgid "E519: Option not supported"
msgstr "E519: Asetusta ei tueta"
msgid "E520: Not allowed in a modeline"
-msgstr "E520: Ei sallitu modeline-rivill"
+msgstr "E520: Ei sallitu modeline-rivillä"
+
+msgid "E846: Key code not set"
+msgstr "E846: Avainkoodi puuttuu"
msgid "E521: Number required after ="
-msgstr "E521: =:n jlkeen tarvitaan luku"
+msgstr "E521: =:n jälkeen tarvitaan luku"
msgid "E522: Not found in termcap"
msgstr "E522: Puuttuu termcapista"
@@ -4229,14 +4196,18 @@ msgstr "E522: Puuttuu termcapista"
msgid "E539: Illegal character <%s>"
msgstr "E539: Virheellinen merkki <%s>"
+#, c-format
+msgid "For option %s"
+msgstr "Asetukselle %s"
+
msgid "E529: Cannot set 'term' to empty string"
-msgstr "E529: Termi ei voi asettaa tyhjksi merkkijonoksi"
+msgstr "E529: Termiä ei voi asettaa tyhjäksi merkkijonoksi"
msgid "E530: Cannot change term in GUI"
-msgstr "E530: Ei voi vaihtaa termi GUIssa"
+msgstr "E530: Ei voi vaihtaa termiä GUIssa"
msgid "E531: Use \":gui\" to start the GUI"
-msgstr "E531: Kyt komentoa :gui GUIn kynnistmiseen"
+msgstr "E531: Käytä komentoa :gui GUIn käynnistämiseen"
msgid "E589: 'backupext' and 'patchmode' are equal"
msgstr "E589: backupext ja patchmod ovat samat"
@@ -4258,16 +4229,16 @@ msgstr "E525: Nollan pituinen merkkijono"
#, c-format
msgid "E526: Missing number after <%s>"
-msgstr "E526: Lukuarvo puuttuu merkkijonon <%s> jlkeen"
+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"
+msgstr "E528: '-arvo pitää antaa"
msgid "E595: contains unprintable or wide character"
-msgstr "E595: Sislt tulostumattomia tai leveit merkkej"
+msgstr "E595: Sisältää tulostumattomia tai leveitä merkkejä"
msgid "E596: Invalid font(s)"
msgstr "E596: Viallisia fontteja"
@@ -4279,24 +4250,24 @@ msgid "E598: Invalid fontset"
msgstr "E598: Viallinen fontset"
msgid "E533: can't select wide font"
-msgstr "E533: Leven fontin valinta ei onnistu"
+msgstr "E533: Leveän fontin valinta ei onnistu"
msgid "E534: Invalid wide font"
-msgstr "E534: Viallinen leve fontti"
+msgstr "E534: Viallinen leveä fontti"
#, c-format
msgid "E535: Illegal character after <%c>"
-msgstr "E535: Virheellinen merkki merkin <%c> jlkeen"
+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 sislt %s"
+msgstr "E537: commentstringin pitää olla tyhjä tai sisältää %s"
msgid "E538: No mouse support"
-msgstr "E538: Hiirt ei tueta"
+msgstr "E538: Hiirtä ei tueta"
msgid "E540: Unclosed expression sequence"
msgstr "E540: Sulkematon lausekesarja"
@@ -4305,17 +4276,17 @@ msgid "E541: too many items"
msgstr "E541: liikaa kohteita"
msgid "E542: unbalanced groups"
-msgstr "E542: eptasapainoisia ryhmi"
+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"
+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"
+msgstr "E593: Tarvitaan ainakin %d riviä"
#, c-format
msgid "E594: Need at least %d columns"
@@ -4365,11 +4336,11 @@ msgstr "E356: get_varp-virhe"
#, c-format
msgid "E357: 'langmap': Matching character missing for %s"
-msgstr "E357: langmap: Merkkiin %s tsmv merkki puuttuu"
+msgstr "E357: langmap: Merkkiin %s täsmäävä merkki puuttuu"
#, c-format
msgid "E358: 'langmap': Extra characters after semicolon: %s"
-msgstr "E358: langmap: ylimrisi merkkej puolipisteen jlkeen: %s"
+msgstr "E358: langmap: ylimääräisiä merkkejä puolipisteen jälkeen: %s"
msgid "cannot open "
msgstr "ei voi avata "
@@ -4385,7 +4356,7 @@ msgid "Need %s version %ld\n"
msgstr "Tarvitaan %s versio %ld\n"
msgid "Cannot open NIL:\n"
-msgstr "Ei voi avata NILi:\n"
+msgstr "Ei voi avata NILiä:\n"
msgid "Cannot create "
msgstr "Ei voi luoda "
@@ -4426,7 +4397,7 @@ 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 eponnistui"
+msgstr "E237: Tulostimen valinta epäonnistui"
#, c-format
msgid "to %s on %s"
@@ -4446,26 +4417,19 @@ msgstr "Tulostetaan %s"
#, c-format
msgid "E244: Illegal charset name \"%s\" in font name \"%s\""
-msgstr "E244: Virheellinen merkistn nimi %s fontin nimess %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 "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"
+msgid "E244: Illegal quality name \"%s\" in font name \"%s\""
+msgstr "E244: Virheellinen laatunimi %s fontin nimessä %s"
#, c-format
-msgid "Vim: Caught deadly signal\n"
-msgstr "Vim: Tappava signaali\n"
+msgid "E245: Illegal char '%c' in font name \"%s\""
+msgstr "E245: Virheellinen merkki %c fontin nimessä %s"
#, c-format
msgid "Opening the X display took %ld msec"
-msgstr "X-nytn avaus vei %ld millisekuntia"
+msgstr "X-näytön avaus vei %ld millisekuntia"
msgid ""
"\n"
@@ -4475,12 +4439,12 @@ msgstr ""
"Vim: X-virhe\n"
msgid "Testing the X display failed"
-msgstr "X-nytn testaus eponnistui"
+msgstr "X-näytön testaus epäonnistui"
msgid "Opening the X display timed out"
-msgstr "X-nytn avaus aikakatkaistiin"
+msgstr "X-näytön avaus aikakatkaistiin"
-# mik security context?
+# mikä security context?
msgid ""
"\n"
"Could not get security context for "
@@ -4495,12 +4459,16 @@ msgstr ""
"\n"
"Ei voitu asettaa turvallisuuskontekstia kohteelle "
-msgid ""
-"\n"
-"Cannot execute shell "
+#, c-format
+msgid "Could not set security context %s for %s"
msgstr ""
-"\n"
-"Kuoren suoritus ei onnistu "
+"Ei voitu asettaa turvallisuuskontekstia %s kohteelle %s"
+
+# mikä security context?
+#, c-format
+msgid "Could not get security context %s for %s. Removing it!"
+msgstr ""
+"Ei saatu turvallisuuskontekstia %s kohteelle %s ja se poistetaan"
msgid ""
"\n"
@@ -4521,7 +4489,7 @@ msgid ""
"Cannot create pipes\n"
msgstr ""
"\n"
-"Putkia ei voi tehd\n"
+"Putkia ei voi tehdä\n"
msgid ""
"\n"
@@ -4532,6 +4500,13 @@ msgstr ""
msgid ""
"\n"
+"Cannot execute shell "
+msgstr ""
+"\n"
+"Kuoren suoritus ei onnistu "
+
+msgid ""
+"\n"
"Command terminated\n"
msgstr ""
"\n"
@@ -4545,36 +4520,32 @@ msgid "dlerror = \"%s\""
msgstr "dlerror = %s"
msgid "Opening the X display failed"
-msgstr "X-nytn avaus eponnistui"
+msgstr "X-näytön avaus epäonnistui"
msgid "XSMP handling save-yourself request"
-msgstr "XSMP ksittelee save-yourself-pyynt"
+msgstr "XSMP käsittelee save-yourself-pyyntöä"
msgid "XSMP opening connection"
-msgstr "XSMP avaa yhteytt"
+msgstr "XSMP avaa yhteyttä"
msgid "XSMP ICE connection watch failed"
-msgstr "XSMP:n ICE-yhteyden tarkkailu eponnistui"
+msgstr "XSMP:n ICE-yhteyden tarkkailu epäonnistui"
#, c-format
msgid "XSMP SmcOpenConnection failed: %s"
-msgstr "XSMP SmcOpenConnection eponnistui: %s"
+msgstr "XSMP SmcOpenConnection epäonnistui: %s"
msgid "At line"
-msgstr "Rivill"
+msgstr "Rivillä"
msgid "Could not load vim32.dll!"
-msgstr "Vim32.dll: ei voitu ladata"
+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"
+msgstr "Ei voitu korjata funktio-osoittimia DLL:ssä"
#, c-format
msgid "Vim: Caught %s event\n"
@@ -4590,21 +4561,25 @@ msgid "shutdown"
msgstr "sammutus"
msgid "E371: Command not found"
-msgstr "E371: Komentoa ei lydy"
+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 lydy muuttujasta $PATH.\n"
-"Ulkoiset komennot eivt pyshdy suorituksen lopussa.\n"
-"Listietoja komennolla :help win32-vimrun"
+"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 "shell returned %d"
+msgstr "kuori palautti arvon %d"
+
+#, c-format
msgid "E372: Too many %%%c in format string"
msgstr "E372: Liikaa %%%c-juttuja muotoilumerkkijonossa"
@@ -4627,14 +4602,24 @@ msgstr "E376: Virheellinen %%%c muotoilumerkkijonon alussa"
msgid "E377: Invalid %%%c in format string"
msgstr "E377: Virheellinen %%%c muotoilumerkkijonossa"
+#. nothing found
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"
+msgstr "E379: Puuttuva tai tyhjä hakemiston nimi"
msgid "E553: No more items"
-msgstr "E553: Ei en kohteita"
+msgstr "E553: Ei enää kohteita"
+
+msgid "E924: Current window was closed"
+msgstr "E924: Nykyinen ikkuna on suljettu"
+
+msgid "E925: Current quickfix was changed"
+msgstr "E925: Nykyinen quickfix on muuttunut"
+
+msgid "E926: Current location list was changed"
+msgstr "E926: Nykyinen sijaintiluettelo on muuttunut"
#, c-format
msgid "(%d of %d)%s%s: "
@@ -4643,15 +4628,18 @@ msgstr "(%d/%d)%s%s: "
msgid " (line deleted)"
msgstr " (rivi poistettu)"
+#, c-format
+msgid "%serror list %d of %d; %d errors "
+msgstr "%svirhelista %d/%d, %d virhettä"
+
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 "No entries"
+msgstr "Ei kenttiä"
msgid "E382: Cannot write, 'buftype' option is set"
msgstr "E382: Ei voi kirjoittaa, buftype asetettu"
@@ -4670,24 +4658,15 @@ 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"
+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("
+msgid "E769: Missing ] after %s["
+msgstr "E769: ] puuttuu merkinnän %s[ jäljestä"
#, c-format
msgid "E53: Unmatched %s%%("
@@ -4701,9 +4680,36 @@ msgstr "E54: Pariton %s("
msgid "E55: Unmatched %s)"
msgstr "E55: Pariton %s)"
+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ä"
+
+#, 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%%[]"
+
+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 "E59: invalid character after %s@"
-msgstr "E59: virheellinen merkki kohdan %s@ jlkeen"
+msgstr "E59: virheellinen merkki kohdan %s@ jälkeen"
#, c-format
msgid "E60: Too many complex %s{...}s"
@@ -4711,57 +4717,126 @@ msgstr "E60: Liikaa monimutkaisia ilmauksia %s{...}s"
#, c-format
msgid "E61: Nested %s*"
-msgstr "E61: Siskkistetty %s*"
+msgstr "E61: Sisäkkäistetty %s*"
#, c-format
msgid "E62: Nested %s%c"
-msgstr "E62: Siskkistetty %s%c"
+msgstr "E62: Sisäkkäistetty %s%c"
msgid "E63: invalid use of \\_"
-msgstr "E63: vrinkytetty \\_"
+msgstr "E63: väärinkäytetty \\_"
#, c-format
msgid "E64: %s%c follows nothing"
-msgstr "E64: %s%c jlkeen ei minkn"
+msgstr "E64: %s%c jälkeen ei minkään"
msgid "E65: Illegal back reference"
-msgstr "E65: Virheellinen tsmysviittaus"
+msgstr "E65: Virheellinen täsmäysviittaus"
-msgid "E66: \\z( not allowed here"
-msgstr "E66: \\z( ei ole sallittu tss"
+msgid "E68: Invalid character after \\z"
+msgstr "E68: Virheellinen merkki ilmauksen \\z jälkeen"
-msgid "E67: \\z1 et al. not allowed here"
-msgstr "E67: \\z1 jne. ei ole sallittu tss"
+#, c-format
+msgid "E678: Invalid character after %s%%[dxouU]"
+msgstr "E678: Virheellinen merkki merkinnän %s%%[dxouU] jäljessä"
-msgid "E68: Invalid character after \\z"
-msgstr "E68: Virheellinen merkki ilmauksen \\z jlkeen"
+#, c-format
+msgid "E71: Invalid character after %s%%"
+msgstr "E71: Virheellinen merkki merkinnän %s%% jäljessä"
#, c-format
-msgid "E69: Missing ] after %s%%["
-msgstr "E69: ] puuttuu merkinnn %s%%[ jljest"
+msgid "E554: Syntax error in %s{...}"
+msgstr "E554: Syntaksivirhe ilmauksessa %s{...}"
+
+msgid "External submatches:\n"
+msgstr "Ulkoisia alitäsmäyksiä:\n"
#, c-format
-msgid "E70: Empty %s%%[]"
-msgstr "E70: Tyhj %s%%[]"
+msgid "E888: (NFA regexp) cannot repeat %s"
+msgstr "E888: (NFA-säänn. ilmaus) ei voi toistaa kohdetta %s"
+
+msgid ""
+"E864: \\%#= can only be followed by 0, 1, or 2. The automatic engine will be "
+"used "
+msgstr ""
+"E864: \\%#=-merkkien perään voi tulla vain 0, 1 tai 2. Käytetään "
+"automaattista engineä "
+
+msgid "Switching to backtracking RE engine for pattern: "
+msgstr "Vaihdetaan käyttämään backtrackkaavaa RE-engineä ilmaukselle: "
+
+msgid "E865: (NFA) Regexp end encountered prematurely"
+msgstr "E865: (NFA) Säännöllisen ilmauksen ennenaikainen loppu"
#, c-format
-msgid "E678: Invalid character after %s%%[dxouU]"
-msgstr "E678: Virheellinen merkki merkinnn %s%%[dxouU] jljess"
+msgid "E866: (NFA regexp) Misplaced %c"
+msgstr "E866: (NFA-regexp) %c väärässä paikassa"
#, c-format
-msgid "E71: Invalid character after %s%%"
-msgstr "E71: Virheellinen merkki merkinnn %s%% jljess"
+msgid "E877: (NFA regexp) Invalid character class: %ld"
+msgstr "E877: (NFA regexp) Virheellinen merkkiluokka: %ld"
#, c-format
-msgid "E769: Missing ] after %s["
-msgstr "E769: ] puuttuu merkinnn %s[ jljest"
+msgid "E867: (NFA) Unknown operator '\\z%c'"
+msgstr "E867: (NFA) Tuntematon operaattori '\\z%c'"
#, c-format
-msgid "E554: Syntax error in %s{...}"
-msgstr "E554: Syntaksivirhe ilmauksessa %s{...}"
+msgid "E867: (NFA) Unknown operator '\\%%%c'"
+msgstr "E867: (NFA) Tuntematon operaattori '\\%%%c'"
-msgid "External submatches:\n"
-msgstr "Ulkoisia alitsmyksi:\n"
+#. should never happen
+msgid "E868: Error building NFA with equivalence class!"
+msgstr "E868: Virhe NFA:n ekvivalenssiluokkia tekemisessä"
+
+#, c-format
+msgid "E869: (NFA) Unknown operator '\\@%c'"
+msgstr "E869: (NFA) Tuntematon operaattori '\\@%c'"
+
+msgid "E870: (NFA regexp) Error reading repetition limits"
+msgstr "E870: (NFA regexp) Virhe luettaessa toiston määriä"
+
+#. Can't have a multi follow a multi.
+msgid "E871: (NFA regexp) Can't have a multi follow a multi !"
+msgstr "E871: (NFA regexp) Multi ei voi seurata multia"
+
+#. Too many `('
+msgid "E872: (NFA regexp) Too many '('"
+msgstr "E872: (NFA regexp) Liian monta suljetta '('"
+
+msgid "E879: (NFA regexp) Too many \\z("
+msgstr"E879: (NFA regexp) Liikaa merkkejä \\z("
+
+msgid "E873: (NFA regexp) proper termination error"
+msgstr "E873: (NFA regexp) oikea lopetusvirhe"
+
+msgid "E874: (NFA) Could not pop the stack !"
+msgstr "E874: (NFA) Ei voida poistaa pinosta"
+
+msgid ""
+"E875: (NFA regexp) (While converting from postfix to NFA), too many states "
+"left on stack"
+msgstr ""
+"E875: (NFA regexp) (Muunnettaessa postfixistä NFA:ksi), liikaa "
+"tiloja jäljellä pinossa"
+
+msgid "E876: (NFA regexp) Not enough space to store the whole NFA "
+msgstr "E876: (NFA regexp) Tila ei riitä NFA:n tallentamiseen"
+
+msgid "E878: (NFA) Could not allocate memory for branch traversal!"
+msgstr "E878: (NFA) Ei voitu allokoida muistia polkujen läpikäyntiin"
+
+msgid ""
+"Could not open temporary log file for writing, displaying on stderr ... "
+msgstr ""
+"Ei voitu avata väliaikaislokitiedosta kirjoittamista varten, joten virheet "
+"näytetään vakiovirhevirrassa. "
+
+#, c-format
+msgid "(NFA) COULD NOT OPEN %s !"
+msgstr "(NFA) EI VOI AVATA KOHDETTA %s"
+
+msgid "Could not open temporary log file for writing "
+msgstr "Väliaikaislokitiedoston avaus kirjoittamista varten ei onnistu"
# tiloja
msgid " VREPLACE"
@@ -4771,13 +4846,13 @@ msgid " REPLACE"
msgstr " KORVAUS"
msgid " REVERSE"
-msgstr " KNTEIS"
+msgstr " KÄÄNTEIS"
msgid " INSERT"
-msgstr " SYTT"
+msgstr " SYÖTTÖ"
msgid " (insert)"
-msgstr " (sytt)"
+msgstr " (syöttö)"
msgid " (replace)"
msgstr " (korvaus)"
@@ -4791,9 +4866,6 @@ msgstr " Heprea"
msgid " Arabic"
msgstr " Arabia"
-msgid " (lang)"
-msgstr " (kieli)"
-
msgid " (paste)"
msgstr " (liitos)"
@@ -4824,24 +4896,24 @@ msgstr "E383: Viallinen hakujono: %s"
#, c-format
msgid "E384: search hit TOP without match for: %s"
-msgstr "E384: Haku psi alkuun lytmtt jonoa: %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 psi loppuun lytmtt jonoa: %s"
+msgstr "E385: Haku pääsi loppuun löytämättä jonoa: %s"
msgid "E386: Expected '?' or '/' after ';'"
-msgstr "E386: ;:n jlkeen pit olla ? tai /"
+msgstr "E386: ;:n jälkeen pitää olla ? tai /"
msgid " (includes previously listed match)"
-msgstr " (sislt viimeksi luetellun tsmyksen)"
+msgstr " (sisältää viimeksi luetellun täsmäyksen)"
#. cursor at status line
msgid "--- Included files "
-msgstr "--- Sisllytetyt tiedostot "
+msgstr "--- Sisällytetyt tiedostot "
msgid "not found "
-msgstr "ei lytynyt "
+msgstr "ei löytynyt "
msgid "in path ---\n"
msgstr "polusta ---\n"
@@ -4850,30 +4922,30 @@ msgid " (Already listed)"
msgstr " (Jo lueteltu)"
msgid " NOT FOUND"
-msgstr " EI LYTYNYT"
+msgstr " EI LÖYTYNYT"
#, c-format
msgid "Scanning included file: %s"
-msgstr "Haku sislsi tiedoston: %s"
+msgstr "Haku sisälsi tiedoston: %s"
#, c-format
msgid "Searching included file %s"
-msgstr "Haku sislsi tiedoston %s"
+msgstr "Haku sisälsi tiedoston %s"
msgid "E387: Match is on current line"
-msgstr "E387: Tsmys tll rivill"
+msgstr "E387: Täsmäys tällä rivillä"
msgid "All included files were found"
-msgstr "Kaikki sisllytetyt rivit lytyivt"
+msgstr "Kaikki sisällytetyt rivit löytyivät"
msgid "No included files"
-msgstr "Ei sisllytettyj tiedostoja"
+msgstr "Ei sisällytettyjä tiedostoja"
msgid "E388: Couldn't find definition"
-msgstr "E388: Mritelm ei lydy"
+msgstr "E388: Määritelmä ei löydy"
msgid "E389: Couldn't find pattern"
-msgstr "E389: kuvio ei lydy"
+msgstr "E389: kuvio ei löydy"
msgid "Substitute "
msgstr "Korvaa "
@@ -4888,35 +4960,64 @@ msgstr ""
"# Edellinen %sHakulauseke:\n"
"~"
-msgid "E759: Format error in spell file"
-msgstr "E759: Muotoiluvirhe oikolukutiedostossa"
+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 "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 "Warning: region %s not supported"
+msgstr "Varoitus: osaa %s ei tueta"
+
+msgid "Sorry, no suggestions"
+msgstr "ei ehdotuksia"
+
+#, c-format
+msgid "Sorry, only %ld suggestions"
+msgstr "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"
msgid "E758: Truncated spell file"
msgstr "E758: Oikolukutiedosto katkaistu"
#, c-format
msgid "Trailing text in %s line %d: %s"
-msgstr "Teksti rivin perss tiedostossa %s rivill %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"
+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"
+msgstr "E762: Merkki FOL:ssä, LOW:ssä tai UPP:ssä ei kuulu arvoalueeseen"
msgid "Compressing word tree..."
-msgstr "Tiivistetn sanapuuta..."
-
-msgid "E756: Spell checking is not enabled"
-msgstr "E756: Oikaisuluku ei ole pll"
-
-#, c-format
-msgid "Warning: Cannot find word list \"%s.%s.spl\" or \"%s.ascii.spl\""
-msgstr "Varoitus: Ei lydetty sanalistaa %s.%s.spl tai %s.ascii.spl"
+msgstr "Tiivistetään sanapuuta..."
#, c-format
msgid "Reading spell file \"%s\""
@@ -4926,7 +5027,7 @@ 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 pivittmist"
+msgstr "E771: Vanha oikaisulukutiedosto vaatii päivittämistä"
msgid "E772: Spell file is for newer version of Vim"
msgstr "E772: Oikaisulukutiedosto on uudemmalle Vimille"
@@ -4935,8 +5036,24 @@ 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"
+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"
#, c-format
msgid "Reading affix file %s ..."
@@ -4944,7 +5061,7 @@ msgstr "Luetaan affiksitiedostoa %s..."
#, c-format
msgid "Conversion failure for word in %s line %d: %s"
-msgstr "Muunnosvirhe sanalle %s rivill %d: %s"
+msgstr "Muunnosvirhe sanalle %s rivillä %d: %s"
#, c-format
msgid "Conversion in %s not supported: from %s to %s"
@@ -4956,88 +5073,88 @@ 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"
+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 jlkeen rivill %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 jlkeen voi antaa vri tuloksia kohteessa %s "
-"rivill %d"
+"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 jlkeen voi antaa vri tuloksia kohteessa %s "
-"rivill %d"
+"COMPOUNDPERMITFLAG PFX:n jälkeen voi antaa vääriä tuloksia kohteessa %s "
+"rivillä %d"
#, c-format
msgid "Wrong COMPOUNDRULES value in %s line %d: %s"
-msgstr "Vr COMPOUNDRULES-arvo kohteessa %s rivill %d: %s"
+msgstr "Väärä COMPOUNDRULES-arvo kohteessa %s rivillä %d: %s"
#, c-format
msgid "Wrong COMPOUNDWORDMAX value in %s line %d: %s"
-msgstr "Vr COMPOUNDWORDMAX-arvo kohteessa %s rivill %d: %s"
+msgstr "Väärä COMPOUNDWORDMAX-arvo kohteessa %s rivillä %d: %s"
#, c-format
msgid "Wrong COMPOUNDMIN value in %s line %d: %s"
-msgstr "Vr COMPOUNDMIN-arvo kohteessa %s rivill %d: %s"
+msgstr "Väärä COMPOUNDMIN-arvo kohteessa %s rivillä %d: %s"
#, c-format
msgid "Wrong COMPOUNDSYLMAX value in %s line %d: %s"
-msgstr "Vr COMPOUNDSYLMAX-arvo kohteessa %s rivill %d: %s"
+msgstr "Väärä COMPOUNDSYLMAX-arvo kohteessa %s rivillä %d: %s"
#, c-format
msgid "Wrong CHECKCOMPOUNDPATTERN value in %s line %d: %s"
-msgstr "Vr CHECKCOMPOUNDPATTERN-arvo kohteessa %s rivill %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 yhdistelmlippu jatketussa affiksilohkossa kohteessa %s rivill %d: %s"
+"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"
+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 kytetty mys BAD-, RARE-, KEEPCASE-, NEEDAFFIX-, NEEDCOMPOUND- tai "
-"NOSUGGEST-arvossa kohteessa %s rivill %d: %s"
+"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"
+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"
+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"
+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"
+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"
+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"
+msgstr "Tunnistamaton tai kaksoiskappale arvosta kohteessa %s rivillä %d: %s"
#, c-format
msgid "Missing FOL/LOW/UPP line in %s"
@@ -5047,13 +5164,13 @@ msgid "COMPOUNDSYLMAX used without SYLLABLE"
msgstr "COMPOUNDSYLMAX ilman SYLLABLEa"
msgid "Too many postponed prefixes"
-msgstr "Liikaa jlkikteistettyj prefiksej"
+msgstr "Liikaa jälkikäteistettyjä prefiksejä"
msgid "Too many compound flags"
msgstr "Liikaa yhdyssanalippuja"
msgid "Too many postponed prefixes and/or compound flags"
-msgstr "Liikaa jlkikteistettyj prefiksej tai yhdyssanalippuja"
+msgstr "Liikaa jälkikäteistettyjä prefiksejä tai yhdyssanalippuja"
#, c-format
msgid "Missing SOFO%s line in %s"
@@ -5065,11 +5182,11 @@ 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"
+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"
+msgstr "Tuntematon lippu kohteessa %s rivillä %d: %s"
#, c-format
msgid "%s value differs from what is used in another .aff file"
@@ -5089,11 +5206,11 @@ msgstr "rivi %6d, sana %6d - %s"
#, c-format
msgid "Duplicate word in %s line %d: %s"
-msgstr "Toistettu sana kohteessa %s rivill %d: %s"
+msgstr "Toistettu sana kohteessa %s rivillä %d: %s"
#, c-format
msgid "First duplicate word in %s line %d: %s"
-msgstr "Ensimminen kappale kohteessa %s rivill %d: %s"
+msgstr "Ensimmäinen kappale kohteessa %s rivillä %d: %s"
#, c-format
msgid "%d duplicate word(s) in %s"
@@ -5109,39 +5226,42 @@ 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"
+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 jlkeen ohitettu kohteessa %s rivill %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"
+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"
+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"
+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"
+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"
+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"
+msgid "E845: Insufficient memory, word list will be incomplete"
+msgstr "E845: Muisti ei riitä, sanalista jää keskeneräiseksi"
+
#, c-format
msgid "Compressed %d of %d nodes; %d (%d%%) remaining"
-msgstr "Tiivistetty %d/%d noodia. %d (%d %%) jljell"
+msgstr "Tiivistetty %d/%d noodia. %d (%d %%) jäljellä"
msgid "Reading back spell file..."
msgstr "Luetaan taas oikaisulukutiedostoa..."
@@ -5151,15 +5271,15 @@ msgstr "Luetaan taas oikaisulukutiedostoa..."
#. * the soundfold trie.
#.
msgid "Performing soundfolding..."
-msgstr "ntmyksen mukaan yhdistelln..."
+msgstr "Ääntämyksen mukaan yhdistellään..."
#, c-format
msgid "Number of words after soundfolding: %ld"
-msgstr "Sanoja ntmysyhdistelyn jlkeen: %ld"
+msgstr "Sanoja ääntämysyhdistelyn jälkeen: %ld"
#, c-format
msgid "Total number of words: %d"
-msgstr "Sanoja yhteens: %d"
+msgstr "Sanoja yhteensä: %d"
#, c-format
msgid "Writing suggestion file %s ..."
@@ -5167,20 +5287,20 @@ msgstr "Kirjoitetaan ehdotustiedostoa %s..."
#, c-format
msgid "Estimated runtime memory use: %d bytes"
-msgstr "Arvioitu kyttmuisti: %d tavua"
+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"
+msgstr "E751: Tulostetiedostonimessä ei saa olla alueen nimeä"
msgid "E754: Only up to 8 regions supported"
-msgstr "E754: Enintn 8 aluetta tuetaan"
+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 kytss"
+msgstr "Varoitus: sekä yhdyssanamuodostus että NOBREAK käytössä"
#, c-format
msgid "Writing spell file %s ..."
@@ -5191,79 +5311,38 @@ msgstr "Valmista."
#, c-format
msgid "E765: 'spellfile' does not have %ld entries"
-msgstr "E765: spellfile ei sisll %ld kohtaa"
+msgstr "E765: spellfile ei sisällä %ld kohtaa"
#, c-format
-msgid "Word removed from %s"
-msgstr "Sana poistettu kohteesta %s"
+msgid "Word '%.*s' removed from %s"
+msgstr "Sana %.*s poistettu kohteesta %s"
#, c-format
-msgid "Word added to %s"
-msgstr "Sana listty kohteeseen %s"
+msgid "Word '%.*s' added to %s"
+msgstr "Sana %.*s lisätty kohteeseen %s"
msgid "E763: Word characters differ between spell files"
-msgstr "E763: Sanan merkit muuttuvat oikaisulukutiedostojen vlill"
-
-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 lytynyt: %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 pivitt: %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 tsm .spl-tiedostoon: %s"
-
-#, c-format
-msgid "E782: error while reading .sug file: %s"
-msgstr "E782: virhe luettaessa .sug-tiedostoa: %s"
+msgstr "E763: Sanan merkit muuttuvat oikaisulukutiedostojen välillä"
#. This should have been checked when generating the .spl
#. * file.
msgid "E783: duplicate char in MAP entry"
-msgstr "E783: kaksoiskappale merkist MAP-kohdassa"
+msgstr "E783: kaksoiskappale merkistä MAP-kohdassa"
+
+msgid "No Syntax items defined for this buffer"
+msgstr "Ei syntaksikohteita tälle puskurille"
#, c-format
msgid "E390: Illegal argument: %s"
msgstr "E390: Virheellinen argumentti: %s"
+msgid "syntax iskeyword "
+msgstr "syntax iskeyword "
+
#, 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 tlle puskurille"
-
msgid "syncing on C-style comments"
msgstr "synkkaa C-tyylin kommentteihin"
@@ -5274,7 +5353,7 @@ msgid "syncing starts "
msgstr "synkkaus aloitettu "
msgid " lines before top line"
-msgstr " rivi ennen alkua"
+msgstr " riviä ennen alkua"
msgid ""
"\n"
@@ -5302,35 +5381,45 @@ msgid "E392: No such syntax cluster: %s"
msgstr "E392: syntaksiklusteria ei ole: %s"
msgid "minimal "
-msgstr "vhintn "
+msgstr "vähintään "
msgid "maximal "
-msgstr "enitntn "
+msgstr "enitntään "
msgid "; match "
-msgstr "; tsm "
+msgstr "; täsmää "
msgid " line breaks"
msgstr " rivinvaihdot"
msgid "E395: contains argument not accepted here"
-msgstr "E395: contains ei sovi thn"
+msgstr "E395: contains ei sovi tähän"
+
+msgid "E844: invalid cchar value"
+msgstr "E844: Virheellinen cchar-arvo"
msgid "E393: group[t]here not accepted here"
-msgstr "E393: group[t]here ei sovi thn"
+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 lydy"
+msgstr "E394: Aluetta nimelle %s ei löydy"
msgid "E397: Filename required"
msgstr "E397: Tiedostonimi puuttuu"
+msgid "E847: Too many syntax includes"
+msgstr "E847: Liikaa syntax includeja"
+
#, c-format
msgid "E789: Missing ']': %s"
msgstr "E789: ] puuttuu: %s"
#, c-format
+msgid "E890: trailing char after ']': %s]%s"
+msgstr "E890: Ylimääräisiä merkkejä merkin ] perässä: %s]%s"
+
+#, c-format
msgid "E398: Missing '=': %s"
msgstr "E398: = puuttuu: %s"
@@ -5338,8 +5427,11 @@ msgstr "E398: = puuttuu: %s"
msgid "E399: Not enough arguments: syntax region %s"
msgstr "E399: Argumentteja puuttuu: syntaksialue %s"
+msgid "E848: Too many syntax clusters"
+msgstr "E848: Liikaa syntaksiklustereita"
+
msgid "E400: No cluster specified"
-msgstr "E400: klusteri mrittelemtt"
+msgstr "E400: klusteri määrittelemättä"
#, c-format
msgid "E401: Pattern delimiter not found: %s"
@@ -5347,10 +5439,10 @@ msgstr "E401: Kuvoin erotin puuttuu: %s"
#, c-format
msgid "E402: Garbage after pattern: %s"
-msgstr "E402: Roskia kuvion jljess: %s"
+msgstr "E402: Roskia kuvion jäljessä: %s"
msgid "E403: syntax sync: line continuations pattern specified twice"
-msgstr "E403: syntax sync: rivinjatkamiskuvio mritelty kahdesti"
+msgstr "E403: syntax sync: rivinjatkamiskuvio määritelty kahdesti"
#, c-format
msgid "E404: Illegal arguments: %s"
@@ -5362,11 +5454,11 @@ msgstr "E405: = puuttuu: %s"
#, c-format
msgid "E406: Empty argument: %s"
-msgstr "E406: Tyhj argumentti: %s"
+msgstr "E406: Tyhjä argumentti: %s"
#, c-format
msgid "E407: %s not allowed here"
-msgstr "E407: %s ei sovi thn"
+msgstr "E407: %s ei sovi tähän"
#, c-format
msgid "E408: %s must be first in contains list"
@@ -5374,18 +5466,23 @@ msgstr "E408: %s kuuluu contains-listan alkuun"
#, c-format
msgid "E409: Unknown group name: %s"
-msgstr "E409: Tuntematon ryhmn nimi: %s"
+msgstr "E409: Tuntematon ryhmän nimi: %s"
#, c-format
msgid "E410: Invalid :syntax subcommand: %s"
msgstr "E410: Virheelluinen :syntax-osakomento: %s"
+msgid ""
+" TOTAL COUNT MATCH SLOWEST AVERAGE NAME PATTERN"
+msgstr ""
+" KAIKKI MÄÄRÄ TÄSMÄYS HITAIN KEKSIARVO NIMI ILMAUS"
+
msgid "E679: recursive loop loading syncolor.vim"
-msgstr "E679: rekursiivinen silmukka syncolor.vimiss"
+msgstr "E679: rekursiivinen silmukka syncolor.vimissä"
#, c-format
msgid "E411: highlight group not found: %s"
-msgstr "E411: korostusryhm ei lytynyt: %s"
+msgstr "E411: korostusryhmää ei löytynyt: %s"
#, c-format
msgid "E412: Not enough arguments: \":highlight link %s\""
@@ -5396,7 +5493,7 @@ 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: ryhmll on asetuksia, highlight link -komento ohitetaan"
+msgstr "E414: ryhmällä on asetuksia, highlight link -komento ohitetaan"
#, c-format
msgid "E415: unexpected equal sign: %s"
@@ -5415,18 +5512,18 @@ msgid "E418: Illegal value: %s"
msgstr "E418: Viallinen arvo: %s"
msgid "E419: FG color unknown"
-msgstr "E419: edustavri tuntematon"
+msgstr "E419: edustaväri tuntematon"
msgid "E420: BG color unknown"
-msgstr "E420: taustavri tuntematon"
+msgstr "E420: taustaväri tuntematon"
#, c-format
msgid "E421: Color name or number not recognized: %s"
-msgstr "E421: Vrin nimi tai numero tuntematon: %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"
+msgstr "E422: terminaalikoodi liian pitkä: %s"
#, c-format
msgid "E423: Illegal argument: %s"
@@ -5436,35 +5533,38 @@ 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 ryhmn nimess"
+msgstr "E669: Tulostuskelvoton merkki ryhmän nimessä"
msgid "W18: Invalid character in group name"
-msgstr "W18: Virheellinen merkki ryhmn nimess"
+msgstr "W18: Virheellinen merkki ryhmän nimessä"
+
+msgid "E849: Too many highlight and syntax groups"
+msgstr "E849: Liikaa korostuksia ja syntaksiryhmiä"
msgid "E555: at bottom of tag stack"
-msgstr "E555: tgipinon pohja"
+msgstr "E555: tägipinon pohja"
msgid "E556: at top of tag stack"
-msgstr "E556: tgipinon huippu"
+msgstr "E556: tägipinon huippu"
msgid "E425: Cannot go before first matching tag"
-msgstr "E425: Ei voida menn ensimmist tsmv tgi alummaksi"
+msgstr "E425: Ei voida mennä ensimmäistä täsmäävää tägiä alummaksi"
#, c-format
msgid "E426: tag not found: %s"
-msgstr "E426: tgi puuttuu: %s"
+msgstr "E426: tägi puuttuu: %s"
msgid " # pri kind tag"
-msgstr " # arvo tyyppi tgi"
+msgstr " # arvo tyyppi tägi"
msgid "file\n"
msgstr "tiedosto\n"
msgid "E427: There is only one matching tag"
-msgstr "E427: Vain yksi tgi tsm"
+msgstr "E427: Vain yksi tägi täsmää"
msgid "E428: Cannot go beyond last matching tag"
-msgstr "E428: Ei voida edet viimeisen tsmvn tgin ohi"
+msgstr "E428: Ei voida edetä viimeisen täsmäävän tägin ohi"
#, c-format
msgid "File \"%s\" does not exist"
@@ -5473,13 +5573,13 @@ msgstr "Tiedostoa %s ei ole"
#. Give an indication of the number of matching tags
#, c-format
msgid "tag %d of %d%s"
-msgstr "tgi %d/%d%s"
+msgstr "tägi %d/%d%s"
msgid " or more"
msgstr " tai useammasta"
msgid " Using tag with different case!"
-msgstr " Tgiss eri kirjaintaso"
+msgstr " Tägissä eri kirjaintaso"
#, c-format
msgid "E429: File \"%s\" does not exist"
@@ -5491,19 +5591,22 @@ msgid ""
" # TO tag FROM line in file/text"
msgstr ""
"\n"
-" # TILL tagg FRN LINJE i fil/text"
+" # TILL tagg FRÅN LINJE i fil/text"
#, c-format
msgid "Searching tags file %s"
-msgstr "Etsitn tgitiedostoa %s"
+msgstr "Etsitään tägitiedostoa %s"
#, c-format
msgid "E430: Tag file path truncated for %s\n"
-msgstr "E430: Tgitiedoston polku katkaistu kohdassa %s\n"
+msgstr "E430: Tägitiedoston polku katkaistu kohdassa %s\n"
+
+msgid "Ignoring long line in tags file"
+msgstr "Ohitetaan pitkä rivi tägitiedostossa"
#, c-format
msgid "E431: Format error in tags file \"%s\""
-msgstr "E431: Muotovirh tgitiedostossa %s"
+msgstr "E431: Muotovirh tägitiedostossa %s"
#, c-format
msgid "Before byte %ld"
@@ -5511,24 +5614,21 @@ msgstr "Ennen tavua %ld"
#, c-format
msgid "E432: Tags file not sorted: %s"
-msgstr "E432: Tgitiedosto ei ole jrjestetty: %s"
+msgstr "E432: Tägitiedosto ei ole järjestetty: %s"
#. never opened any tags file
msgid "E433: No tags file"
-msgstr "E433: Ei tgitiedostoja"
-
-msgid "Ignoring long line in tags file"
-msgstr "Ohitetaan pitk rivi tgitiedostossa"
+msgstr "E433: Ei tägitiedostoja"
msgid "E434: Can't find tag pattern"
-msgstr "E434: Tgikuviota ei lydy"
+msgstr "E434: Tägikuviota ei löydy"
msgid "E435: Couldn't find tag, just guessing!"
-msgstr "E435: Tgi ei lydy, arvataan."
+msgstr "E435: Tägiä ei löydy, arvataan."
#, c-format
msgid "Duplicate field name: %s"
-msgstr "Kaksoiskappale kentn nimest: %s"
+msgstr "Kaksoiskappale kentän nimestä: %s"
msgid "' not known. Available builtin terminals are:"
msgstr " ei tunnettu. Tuetut terminaalit:"
@@ -5540,17 +5640,17 @@ 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 lytynyt terminfosta"
+msgstr "E558: Terminaalia ei löytynyt terminfosta"
msgid "E559: Terminal entry not found in termcap"
-msgstr "E559: Terminaalia ei lytynyt termcapista"
+msgstr "E559: Terminaalia ei löytynyt termcapista"
#, c-format
msgid "E436: No \"%s\" entry in termcap"
-msgstr "E436: %s ei lytynyt termcapista"
+msgstr "E436: %s ei löytynyt termcapista"
msgid "E437: terminal capability \"cm\" required"
-msgstr "E437: terminaalilla pit olla cm kyvyissn"
+msgstr "E437: terminaalilla pitää olla cm kyvyissään"
#. Highlight title
msgid ""
@@ -5558,21 +5658,24 @@ msgid ""
"--- Terminal keys ---"
msgstr ""
"\n"
-"--- Terminaalinppimet ---"
+"--- Terminaalinäppäimet ---"
+
+msgid "Cannot open $VIMRUNTIME/rgb.txt"
+msgstr "Ei voida avata tiedostoa $VIMRUNTIME/rgb.txt"
msgid "new shell started\n"
msgstr "uusi kuori avattu\n"
msgid "Vim: Error reading input, exiting...\n"
-msgstr "Vim: Virhe luettaessa sytett, poistutaan...\n"
+msgstr "Vim: Virhe luettaessa syötettä, poistutaan...\n"
msgid "Used CUT_BUFFER0 instead of empty selection"
-msgstr "Kytettiin CUT_BUFFER0:aa tyhjn valinnan sijaan"
+msgstr "Käytettiin CUT_BUFFER0:aa tyhjän valinnan sijaan"
#. This happens when the FileChangedRO autocommand changes the
#. * file in a way it becomes shorter.
-msgid "E834: Line count changed unexpectedly"
-msgstr "E834: Rivimr vaihtui odottamatta"
+msgid "E881: Line count changed unexpectedly"
+msgstr "E881: Rivimäärä vaihtui odottamatta"
#. must display the prompt
msgid "No undo possible; continue anyway"
@@ -5587,7 +5690,7 @@ msgid "E825: Corrupted undo file (%s): %s"
msgstr "E825: Pilaanntunut kumoustiedosto (%s): %s"
msgid "Cannot write undo file in any directory in 'undodir'"
-msgstr "Ei voitu lukea kumoustiedostoa mistn undodir-muuttujan hakemistosta"
+msgstr "Ei voitu lukea kumoustiedostoa mistään undodir-muuttujan hakemistosta"
#, c-format
msgid "Will not overwrite with undo file, cannot read: %s"
@@ -5595,7 +5698,7 @@ msgstr "Ei ylikirjoitetat kumoustiedostolla, koska ei voida lukea: %s"
#, c-format
msgid "Will not overwrite, this is not an undo file: %s"
-msgstr "Ei ylikirjoiteta, koska tm ei ole kumoustiedosto: %s"
+msgstr "Ei ylikirjoiteta, koska tämä ei ole kumoustiedosto: %s"
msgid "Skipping undo file write, nothing to undo"
msgstr "Ohitetaan kumoustiedoston kirjoitus, koska ei ole peruutettavia"
@@ -5630,7 +5733,7 @@ msgstr "E832: Salaamattomalla tiedostolla on salattu kumoustiedosto: %s"
#, c-format
msgid "E826: Undo file decryption failed: %s"
-msgstr "E826: Kumoustiedoston purku eponnistui: %s"
+msgstr "E826: Kumoustiedoston purku epäonnistui: %s"
#, c-format
msgid "E827: Undo file is encrypted: %s"
@@ -5638,11 +5741,11 @@ msgstr "E827: Kumoustiedosto on salattu: %s"
#, c-format
msgid "E824: Incompatible undo file: %s"
-msgstr "E824: Epyhteensopiva kumoustiedosto: %s"
+msgstr "E824: Epäyhteensopiva kumoustiedosto: %s"
msgid "File contents changed, cannot use undo info"
-msgstr "Tiedoston sislt on muuttunut, joen kumoustiedot ovat "
-"kyttkelvottomia"
+msgstr ""
+"Tiedoston sisältö on muuttunut, joen kumoustiedot ovat käyttökelvottomia"
#, c-format
msgid "Finished reading undo file %s"
@@ -5656,22 +5759,22 @@ msgstr "Nuorimmassa muutoksessa"
#, c-format
msgid "E830: Undo number %ld not found"
-msgstr "E830: Kumouslukua %ld ei lydy"
+msgstr "E830: Kumouslukua %ld ei löydy"
msgid "E438: u_undo: line numbers wrong"
-msgstr "E438: u_undo: vrt rivinumerot"
+msgstr "E438: u_undo: väärät rivinumerot"
msgid "more line"
-msgstr "rivi lis"
+msgstr "rivi lisää"
msgid "more lines"
-msgstr "rivi lis"
+msgstr "riviä lisää"
msgid "line less"
-msgstr "rivi vhemmn"
+msgstr "rivi vähemmän"
msgid "fewer lines"
-msgstr "rivi vhemmn"
+msgstr "riviä vähemmän"
msgid "change"
msgstr "muutos"
@@ -5679,7 +5782,7 @@ msgstr "muutos"
msgid "changes"
msgstr "muutosta"
-# eka %s ylpuolelta, toka %s alapuolelta, kolmas %s aika
+# eka %s yläpuolelta, toka %s alapuolelta, kolmas %s aika
#, c-format
msgid "%ld %s; %s #%ld %s"
msgstr "%ld %s, %s #%ld %s"
@@ -5688,20 +5791,20 @@ msgid "before"
msgstr "ennen muutosta"
msgid "after"
-msgstr "jlkeen muutoksen"
+msgstr "jälkeen muutoksen"
msgid "Nothing to undo"
msgstr "Ei kumottavaa"
-msgid "number changes time saved"
-msgstr "muutoksia aika tallennettu"
+msgid "number changes when saved"
+msgstr "numero muutoksia aika tallennettu"
#, c-format
msgid "%ld seconds ago"
msgstr "%ld sekuntia sitten"
msgid "E790: undojoin is not allowed after undo"
-msgstr "E790: undojoin ei toimi undon jlkeen"
+msgstr "E790: undojoin ei toimi undon jälkeen"
msgid "E439: undo list corrupt"
msgstr "E439: kumouslista rikki"
@@ -5709,6 +5812,134 @@ msgstr "E439: kumouslista rikki"
msgid "E440: undo line missing"
msgstr "E440: kumousrivi puuttuu"
+#, 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"
+
+#, c-format
+msgid "E130: Unknown function: %s"
+msgstr "E130: Tuntematon funktio: %s"
+
+#, c-format
+msgid "E125: Illegal argument: %s"
+msgstr "E125: Virheellinen argumentti: %s"
+
+#, c-format
+msgid "E853: Duplicate argument name: %s"
+msgstr "E853: Kaksoiskappale argumentin nimestä: %s"
+
+#, c-format
+msgid "E740: Too many arguments for function %s"
+msgstr "E740: Liikaa argumentteja funktiolle %s"
+
+#, c-format
+msgid "E116: Invalid arguments for function %s"
+msgstr "E116: Vääriä argumentteja funktiolle %s"
+
+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"
+
+msgid "E699: Too many arguments"
+msgstr "E699: Liikaa argumentteja"
+
+#, c-format
+msgid "E117: Unknown function: %s"
+msgstr "E117: Tuntematon funktio: %s"
+
+#, c-format
+msgid "E933: Function was deleted: %s"
+msgstr "E933: Funktion nimi poistettu: %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 "E129: Function name required"
+msgstr "E129: Funktion nimi puuttuu"
+
+#, c-format
+msgid "E128: Function name must start with a capital or \"s:\": %s"
+msgstr ""
+"E128: Funktion nimen pitää alkaa suuraakkosella tai merkeillä ’s:’: "
+"%s"
+
+#, c-format
+msgid "E884: Function name cannot contain a colon: %s"
+msgstr ""
+"E884: Funktion nimessä ei saa olla kaksoispistettä: "
+"%s"
+
+#, c-format
+msgid "E123: Undefined function: %s"
+msgstr "E123: Tuntematon funktio: %s"
+
+#, c-format
+msgid "E124: Missing '(': %s"
+msgstr "E124: ( puuttuu: %s"
+
+msgid "E862: Cannot use g: here"
+msgstr "E862: g: ei toimi täällä"
+
+#, c-format
+msgid "E932 Closure function should not be at top level: %s"
+msgstr "E932 Sulkeumafunktio ei voi olla uloimmalla tasolla: %s"
+
+msgid "E126: Missing :endfunction"
+msgstr "E126: :endfunction puuttuu"
+
+#, c-format
+msgid "E707: Function name conflicts with variable: %s"
+msgstr "E707: Funktion nimi on ristiriidassa muuttujan kanssa: %s"
+
+#, c-format
+msgid "E127: Cannot redefine function %s: It is in use"
+msgstr "E127: Funktiota %s ei voi määritellä uudestaan, koska se on käytössä"
+
+#, c-format
+msgid "E746: Function name does not match script file name: %s"
+msgstr "E746: Funktion nimi ei ole sama kuin skriptin tiedostonnimi: %s"
+
+#, c-format
+msgid "E131: Cannot delete function %s: It is in use"
+msgstr "E131: Funktiota %s ei voi poistaa"
+
+msgid "E133: :return not inside a function"
+msgstr "E133: :return ei ole funktion sisällä"
+
+#, c-format
+msgid "E107: Missing parentheses: %s"
+msgstr "E107: Sulkeita puuttuu: %s"
+
#. Only MS VC 4.1 and earlier can do Win32s
msgid ""
"\n"
@@ -5753,27 +5984,6 @@ msgstr ""
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"
@@ -5795,13 +6005,6 @@ msgstr ""
msgid ""
"\n"
-"RISC OS version"
-msgstr ""
-"\n"
-"RISC OS-version"
-
-msgid ""
-"\n"
"OpenVMS version"
msgstr ""
"\n"
@@ -5812,13 +6015,14 @@ msgid ""
"Included patches: "
msgstr ""
"\n"
-"Ptsit: "
+"Pätsit: "
msgid ""
"\n"
"Extra patches: "
-msgstr "\n"
-"Muita ptsej: "
+msgstr ""
+"\n"
+"Muita pätsejä: "
msgid "Modified by "
msgstr "Muokannut "
@@ -5828,7 +6032,7 @@ msgid ""
"Compiled "
msgstr ""
"\n"
-"Kntnyt "
+"Kääntänyt "
msgid "by "
msgstr ": "
@@ -5871,6 +6075,9 @@ msgstr ""
msgid "without GUI."
msgstr "ilman GUIta."
+msgid "with GTK3 GUI."
+msgstr "GTK3-GUIlla."
+
msgid "with GTK2-GNOME GUI."
msgstr "GTK2-Gnome-GUIlla."
@@ -5899,43 +6106,46 @@ msgid "with Cocoa GUI."
msgstr "Cocoa-GUIlla."
msgid "with (classic) GUI."
-msgstr "perinteisell GUIlla."
+msgstr "perinteisellä GUIlla."
msgid " Features included (+) or not (-):\n"
msgstr " Ominaisuudet mukana (+) ja poissa (-):\n"
msgid " system vimrc file: \""
-msgstr " jrjestelmn vimrc: \""
+msgstr " järjestelmän vimrc: \""
msgid " user vimrc file: \""
-msgstr " kyttjn vimrc: \""
+msgstr " käyttäjän vimrc: \""
msgid " 2nd user vimrc file: \""
-msgstr " 2. kyttjn vimrc: \""
+msgstr " 2. käyttäjän vimrc: \""
msgid " 3rd user vimrc file: \""
-msgstr " 3. kyttjn vimrc: \""
+msgstr " 3. käyttäjän vimrc: \""
msgid " user exrc file: \""
-msgstr " kyttjn exrc: \""
+msgstr " käyttäjän exrc: \""
msgid " 2nd user exrc file: \""
-msgstr " 2. kyttjn exrc: \""
+msgstr " 2. käyttäjän exrc: \""
msgid " system gvimrc file: \""
-msgstr " jrjestelmn gvimrc: \""
+msgstr " järjestelmän gvimrc: \""
msgid " user gvimrc file: \""
-msgstr " kyttjn gvimrc: \""
+msgstr " käyttäjän gvimrc: \""
msgid "2nd user gvimrc file: \""
-msgstr "2. kyttjn gvimrc: \""
+msgstr "2. käyttäjän gvimrc: \""
msgid "3rd user gvimrc file: \""
-msgstr "3. kyttjn gvimrc: \""
+msgstr "3. käyttäjän gvimrc: \""
+
+msgid " defaults file: \""
+msgstr " defaults-tiedosto: \""
msgid " system menu file: \""
-msgstr " jrjestelmvalikko: \""
+msgstr " järjestelmävalikko: \""
msgid " fall-back for $VIM: \""
msgstr " $VIMin fallback: \""
@@ -5944,10 +6154,10 @@ msgid " f-b for $VIMRUNTIME: \""
msgstr " $VIMRUNTIMEn f-b: \""
msgid "Compilation: "
-msgstr "Knns: "
+msgstr "Käännös: "
msgid "Compiler: "
-msgstr "Knnin: "
+msgstr "Käännin: "
msgid "Linking: "
msgstr "Linkitys: "
@@ -5962,16 +6172,16 @@ msgid "version "
msgstr "versio "
msgid "by Bram Moolenaar et al."
-msgstr "tekijt Bram Moolenaar et al."
+msgstr "tekijät Bram Moolenaar et al."
msgid "Vim is open source and freely distributable"
-msgstr "Vim on avointa lhdekoodia ja vapaasti jaossa"
+msgstr "Vim on avointa lähdekoodia ja vapaasti jaossa"
msgid "Help poor children in Uganda!"
-msgstr "Auta Ugandan kyhi lapsia"
+msgstr "Auta Ugandan köyhiä lapsia"
msgid "type :help iccf<Enter> for information "
-msgstr "kirjoita :help iccf<Enter> listietoa varten "
+msgstr "kirjoita :help iccf<Enter> lisätietoa varten "
msgid "type :q<Enter> to exit "
msgstr "kirjoita :q<Enter> lopettaaksesi "
@@ -5992,13 +6202,13 @@ 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 listietoja varten "
+msgstr "valikko Ohje->Orvot lisätietoja varten "
msgid "Running modeless, typed text is inserted"
-msgstr "Suoritetaan tilattomana, kirjoitettu teksti sytetn"
+msgstr "Suoritetaan tilattomana, kirjoitettu teksti syötetään"
msgid "menu Edit->Global Settings->Toggle Insert Mode "
-msgstr "valikko Muokkaa->Yleiset asetukset->Vaihda sytetilaa"
+msgstr "valikko Muokkaa->Yleiset asetukset->Vaihda syötetilaa"
msgid " for two modes "
msgstr " kahta tilaa varten "
@@ -6010,97 +6220,100 @@ msgid " for Vim defaults "
msgstr " Vim-oletuksia varten"
msgid "Sponsor Vim development!"
-msgstr "Tue Vimin kehityst"
+msgstr "Tue Vimin kehitystä"
msgid "Become a registered Vim user!"
-msgstr "Rekisteridy Vim-kyttjksi."
+msgstr "Rekisteröidy Vim-käyttäjäksi."
msgid "type :help sponsor<Enter> for information "
-msgstr "kirjoita :help sponsor<Enter> listietoja varten"
+msgstr "kirjoita :help sponsor<Enter> lisätietoja varten"
msgid "type :help register<Enter> for information "
-msgstr "kirjoita :help register<Enter> listietoja varten"
+msgstr "kirjoita :help register<Enter> lisätietoja varten"
msgid "menu Help->Sponsor/Register for information "
-msgstr "valikko Ohje->Sponsoroi/Rekisteri listietoja varten"
+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> listietoja varten"
+msgstr "kirjoita :help windows95<Enter> lisätietoja varten"
msgid "Already only one window"
-msgstr "En yksi ikkuna jljell"
+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 ylnurkkaa ja oikeaa alanurkkaa yhtaikaa"
+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"
+msgstr "E443: Ei voi kiertää kun toinen ikkuna on jaettu"
msgid "E444: Cannot close last window"
-msgstr "E444: Ei voi sulkea viimeist ikkunaa"
+msgstr "E444: Ei voi sulkea viimeistä ikkunaa"
msgid "E813: Cannot close autocmd window"
msgstr "E813: Ei voi sulkea autocmd-ikkunaa"
msgid "E814: Cannot close window, only autocmd window would remain"
-msgstr "E814: Ei voi sulkea viimeist ikkunaa, joka ei ole autocmd-ikkuna"
+msgstr "E814: Ei voi sulkea viimeistä ikkunaa, joka ei ole autocmd-ikkuna"
msgid "E445: Other window contains changes"
-msgstr "E445: Toinen ikkuna sislt muutoksia"
+msgstr "E445: Toinen ikkuna sisältää muutoksia"
msgid "E446: No file name under cursor"
-msgstr "E446: Ei tiedostonime kursorin alla"
+msgstr "E446: Ei tiedostonimeä kursorin alla"
#, c-format
msgid "E447: Can't find file \"%s\" in path"
-msgstr "E447: Tiedosto %s ei lydy polulta"
+msgstr "E447: Tiedosto %s ei löydy polulta"
+
+msgid "List or number required"
+msgstr "Lista tai luku tarvitaan"
#, 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."
+msgstr "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"
+msgstr "&Muokkaa usealla Vimillä"
msgid "Edit with single &Vim"
-msgstr "Muokkaa yhdell &Vimill"
+msgstr "Muokkaa yhdellä &Vimillä"
msgid "Diff with Vim"
-msgstr "Diffi Vimill"
+msgstr "Diffi Vimillä"
msgid "Edit with &Vim"
-msgstr "Muokkaa &Vimill"
+msgstr "Muokkaa &Vimillä"
#. Now concatenate
msgid "Edit with existing Vim - "
-msgstr "Muokkaa olemassaolevalla Vimill - "
+msgstr "Muokkaa olemassaolevalla Vimillä - "
msgid "Edits the selected file(s) with Vim"
-msgstr "Muokkaa valittuja tiedostoja Vimill"
+msgstr "Muokkaa valittuja tiedostoja Vimillä"
msgid "Error creating process: Check if gvim is in your path!"
-msgstr "Virhe prosessin kynnistmisess, varmista ett gvim on polulla"
+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"
+msgstr "Liian pitkä polku"
msgid "--No lines in buffer--"
-msgstr "--Ei rivej puskurissa--"
+msgstr "--Ei rivejä puskurissa--"
#.
#. * The error messages that can be shared are included here.
@@ -6113,15 +6326,15 @@ msgid "E471: Argument required"
msgstr "E471: Argumentti puuttuu"
msgid "E10: \\ should be followed by /, ? or &"
-msgstr "E10: \\:n jlkeen pit tulla /, ? tai &"
+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 tss hakemistossa tai "
-"tgihaussa"
+"E12: Komentoa ei tueta exrc:ssä tai vimrc:ssä tässä hakemistossa tai "
+"tägihaussa"
msgid "E171: Missing :endif"
msgstr "E171: :endif puuttuu"
@@ -6142,10 +6355,10 @@ 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)"
+msgstr "E13: Tiedosto on jo olemassa (lisää ! ohittaaksesi)"
msgid "E472: Command failed"
-msgstr "E472: Komento eponnistui"
+msgstr "E472: Komento epäonnistui"
#, c-format
msgid "E234: Unknown fontset: %s"
@@ -6157,10 +6370,10 @@ msgstr "E235: Tuntematon fontti: %s"
#, c-format
msgid "E236: Font \"%s\" is not fixed-width"
-msgstr "E236: Fontti %s ei ole tasavlinen"
+msgstr "E236: Fontti %s ei ole tasavälinen"
msgid "E473: Internal error"
-msgstr "E473: Sisinen virhe"
+msgstr "E473: Sisäinen virhe"
msgid "Interrupted"
msgstr "Keskeytetty"
@@ -6191,93 +6404,93 @@ msgstr "E17: %s on hakemisto"
#, c-format
msgid "E364: Library call failed for \"%s()\""
-msgstr "E364: Kirjastukutsu %s() eponnistui"
+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"
+msgstr "E19: Merkillä on virheellinen rivinumero"
msgid "E20: Mark not set"
-msgstr "E20: Merkki ei asetettu"
+msgstr "E20: Merkkiä ei asetettu"
msgid "E21: Cannot make changes, 'modifiable' is off"
-msgstr "E21: Ei voi tehd muutoksia, modifiable on pois plt"
+msgstr "E21: Ei voi tehdä muutoksia, modifiable on pois päältä"
msgid "E22: Scripts nested too deep"
-msgstr "E22: Liian monta tasoa skripteiss"
+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"
+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 kytt, koska sit ei knnetty mukaan"
+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 kytt, koska sit ei knnetty mukaan\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 kytt, koska sit ei knnetty mukaan\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 kytt, koska sit ei knnetty mukaan\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"
+msgstr "E28: Korostusryhmää ei ole nimellä: %s"
msgid "E29: No inserted text yet"
-msgstr "E29: Teksti ei ole sytetty viel"
+msgstr "E29: Tekstiä ei ole syötetty vielä"
msgid "E30: No previous command line"
-msgstr "E30: Ei edellist komentorivi"
+msgstr "E30: Ei edellistä komentoriviä"
msgid "E31: No such mapping"
msgstr "E31: Kuvausta ei ole"
msgid "E479: No match"
-msgstr "E479: Ei tsm"
+msgstr "E479: Ei täsmää"
#, c-format
msgid "E480: No match: %s"
-msgstr "E480: Ei tsm: %s"
+msgstr "E480: Ei tsämää: %s"
msgid "E32: No file name"
-msgstr "E32: Ei tiedostonime"
+msgstr "E32: Ei tiedostonimeä"
msgid "E33: No previous substitute regular expression"
-msgstr "E33: Ei edellist korvausta snnlliselle ilmaukselle"
+msgstr "E33: Ei edellistä korvausta säännölliselle ilmaukselle"
msgid "E34: No previous command"
-msgstr "E34: Ei edellist komentoa"
+msgstr "E34: Ei edellistä komentoa"
msgid "E35: No previous regular expression"
-msgstr "E35: Ei edellist snnllist ilmausta"
+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"
+msgstr "E36: Tila ei riitä"
#, c-format
msgid "E247: no registered server named \"%s\""
-msgstr "E247: palvelinta %s ei ole rekisterityn"
+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: vliaikaistiedoston nime ei saada selville"
+msgstr "E483: väliaikaistiedoston nimeä ei saada selville"
#, c-format
msgid "E484: Can't open file %s"
@@ -6289,52 +6502,55 @@ msgstr "E485: Ei voi lukea tiedostoa %s"
msgid "E37: No write since last change (add ! to override)"
msgstr ""
-"E37: Viimeisen muutoksen jlkeen ei ole kirjoitettu (lis ! ohittaaksesi)"
+"E37: Viimeisen muutoksen jälkeen ei ole kirjoitettu (lisää ! ohittaaksesi)"
+
+msgid "E37: No write since last change"
+msgstr "E37: Viimeisimmän muutoksen jälkeen ei ole kirjoitettu mitään"
msgid "E38: Null argument"
msgstr "E38: Null-argumentti"
msgid "E39: Number expected"
-msgstr "E39: Pit olla numero"
+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: nytt ei voi avata"
+msgstr "E233: näyttöä ei voi avata"
msgid "E41: Out of memory!"
msgstr "E41: Muisti loppui"
msgid "Pattern not found"
-msgstr "Kuviota ei lydy"
+msgstr "Kuviota ei löydy"
#, c-format
msgid "E486: Pattern not found: %s"
-msgstr "E486: Kuviota ei lydy: %s"
+msgstr "E486: Kuviota ei löydy: %s"
msgid "E487: Argument must be positive"
-msgstr "E487: Argumentin pit olla positiivinen"
+msgstr "E487: Argumentin pitää olla positiivinen"
msgid "E459: Cannot go back to previous directory"
-msgstr "E459: Ei voi siirty edelliseen hakemistoon"
+msgstr "E459: Ei voi siirtyä edelliseen hakemistoon"
# ;-)
msgid "E42: No Errors"
-msgstr "E42: Ei virheit"
+msgstr "E42: Ei virheitä"
msgid "E776: No location list"
msgstr "E776: Ei sijaintilistaa"
msgid "E43: Damaged match string"
-msgstr "E43: Viallinen tsmysmerkkijono"
+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)"
+msgstr "E45: readonly asetettu (lisää ! ohittaaksesi)"
#, c-format
msgid "E46: Cannot change read-only variable \"%s\""
@@ -6344,6 +6560,32 @@ msgstr "E46: Kirjoitussuojattua muuttujaa %s ei voi muuttaa"
msgid "E794: Cannot set variable in the sandbox: \"%s\""
msgstr "E794: Muuttujaa ei voi asettaa hiekkalaatikossa: %s"
+msgid "E713: Cannot use empty key for Dictionary"
+msgstr "E713: Sanakirjassa ei voi olla tyhjiä avaimia"
+
+msgid "E715: Dictionary required"
+msgstr "E715: Sanakirja tarvitaan"
+
+#, c-format
+msgid "E684: list index out of range: %ld"
+msgstr "E684: Indeksi %ld luettelon rajojen ulkopuolella"
+
+#, 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"
+
+msgid "E714: List required"
+msgstr "E714: Lista tarvitaan"
+
+# datarakenteita
+#, c-format
+msgid "E712: Argument of %s must be a List or Dictionary"
+msgstr "E712: Argumentin %s pitää olla lista tai sanakirja"
+
msgid "E47: Error while reading errorfile"
msgstr "E47: Virhe virhetiedostoa luettaessa"
@@ -6351,16 +6593,16 @@ msgid "E48: Not allowed in sandbox"
msgstr "E48: Ei sallittu hiekkalaatikossa"
msgid "E523: Not allowed here"
-msgstr "E523: Ei sallittu tll"
+msgstr "E523: Ei sallittu täällä"
msgid "E359: Screen mode setting not supported"
-msgstr "E359: Nytttila-asetus ei tuettu"
+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"
+msgstr "E91: shell-asetus on tyhjä"
msgid "E255: Couldn't read in sign data!"
msgstr "E255: Merkkidatan luku ei onnistu"
@@ -6369,22 +6611,22 @@ msgid "E72: Close error on swap file"
msgstr "E72: Swap-tiedoston sulkemisvirhe"
msgid "E73: tag stack empty"
-msgstr "E73: tgipino tyhj"
+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"
+msgstr "E75: Liian pitkä nimi"
msgid "E76: Too many ["
msgstr "E76: Liian monta [:a"
msgid "E77: Too many file names"
-msgstr "E77: Liikaa tiedostonimi"
+msgstr "E77: Liikaa tiedostonimiä"
msgid "E488: Trailing characters"
-msgstr "E488: Ylimrisi merkkej perss"
+msgstr "E488: Ylimääräisiä merkkejä perässä"
msgid "E78: Unknown mark"
msgstr "E78: Tuntematon merkki"
@@ -6418,13 +6660,17 @@ msgstr "E744: NetBeans ei tue muutoksia kirjoitussuojattuihin tiedostoihin"
#, c-format
msgid "E685: Internal error: %s"
-msgstr "E685: Sisinen virhe: %s"
+msgstr "E685: Sisäinen virhe: %s"
msgid "E363: pattern uses more memory than 'maxmempattern'"
-msgstr "E363: kuvio kytt enemmn muistia kuin maxmempattern on"
+msgstr "E363: kuvio käyttää enemmän muistia kuin maxmempattern on"
msgid "E749: empty buffer"
-msgstr "E749: tyhj puskuri"
+msgstr "E749: tyhjä puskuri"
+
+#, c-format
+msgid "E86: Buffer %ld does not exist"
+msgstr "E86: Puskuria %ld ei ole"
msgid "E682: Invalid search pattern or delimiter"
msgstr "E682: Virheellinen hakulauseke tai erotin"
@@ -6436,45 +6682,197 @@ msgstr "E139: Tiedosto on ladattu toiseen puskuriin"
msgid "E764: Option '%s' is not set"
msgstr "E764: Asetus %s on asettamatta"
+msgid "E850: Invalid register name"
+msgstr "E850: Virheellinen rekisterin nimi"
+
+#, c-format
+msgid "E919: Directory not found in '%s': \"%s\""
+msgstr "E919: Hakemisto puuttuu kohteesta %s: %s"
+
msgid "search hit TOP, continuing at BOTTOM"
-msgstr "haku psi ALKUUN, jatketaan LOPUSTA"
+msgstr "haku pääsi ALKUUN, jatketaan LOPUSTA"
msgid "search hit BOTTOM, continuing at TOP"
-msgstr "haku psi LOPPUUN, jatketaan ALUSTA"
+msgstr "haku pääsi LOPPUUN, jatketaan ALUSTA"
#, c-format
msgid "Need encryption key for \"%s\""
msgstr "Tarvitaan salausavain kohteelle %s "
-msgid "writelines() requires list of strings"
-msgstr "writelines()-komennolle pit antaa merkkijonolista"
+msgid "empty keys are not allowed"
+msgstr "tyhjiä avaimia ei voi käyttää"
+
+msgid "dictionary is locked"
+msgstr "dictionary on lukittu"
+
+msgid "list is locked"
+msgstr "luettelo on lukittu"
+
+#, c-format
+msgid "failed to add key '%s' to dictionary"
+msgstr "avaimen %s lisääminen sanakirjaan ei onnistu"
+
+#, c-format
+msgid "index must be int or slice, not %s"
+msgstr "indeksin pitää olla int tai slice, ei %s"
+
+#, c-format
+msgid "expected str() or unicode() instance, but got %s"
+msgstr "odottettiin insanssia tyypeistä str() tai unicode(), ei %s"
+
+#, c-format
+msgid "expected bytes() or str() instance, but got %s"
+msgstr "odotettiin instanssia tyypeistä bytes() tai str(), ei %s"
+
+#, c-format
+msgid ""
+"expected int(), long() or something supporting coercing to long(), but got %s"
+msgstr ""
+"odotettiin instanssia tyypeistä int(), long() tai mitä tahansa joka muuntuisi "
+"tyyppiin long(), ei %s"
+
+#, c-format
+msgid "expected int() or something supporting coercing to int(), but got %s"
+msgstr "odotettiin tyyppiä int() tai jotain joka muuntuu tyyppiin int(), ei %s"
+
+msgid "value is too large to fit into C int type"
+msgstr "arvo on liian suuri mahtumaan C:n int-tyyppiin"
+
+msgid "value is too small to fit into C int type"
+msgstr "arvo on liian pieni mahtumaan C:n int-tyyppiin"
+
+msgid "number must be greater than zero"
+msgstr "luvun on oltava nollaa suurempi"
+
+msgid "number must be greater or equal to zero"
+msgstr "luvun on oltava yhtä suuri tai suurempi kuin nolla"
+
+msgid "can't delete OutputObject attributes"
+msgstr "ei voi poistaa OutputObject-attribuutteja"
+
+#, c-format
+msgid "invalid attribute: %s"
+msgstr "virheellinen attribuutti: %s"
msgid "E264: Python: Error initialising I/O objects"
msgstr "E264: Python: Virhe IO-olioiden alustuksessa"
-msgid "no such buffer"
-msgstr "puskuria ei ole"
+msgid "failed to change directory"
+msgstr "hakemistoa ei voitu muuttaa"
-msgid "attempt to refer to deleted window"
-msgstr "yritettiin viitata poistettuun ikkunaan"
+#, c-format
+msgid "expected 3-tuple as imp.find_module() result, but got %s"
+msgstr "odotettiin 3-tuplea tuloksena imp.find_module()-kutsulle, ei %s"
-msgid "readonly attribute"
-msgstr "kirjoitussuojattu attribuutti"
+#, c-format
+msgid "expected 3-tuple as imp.find_module() result, but got tuple of size %d"
+msgstr "odotettiin 3-tuple tuloksnea imp.find_module()-kutsulle, mutta tuplen "
+"koko onkin %d"
-msgid "cursor position outside buffer"
-msgstr "kursorin sijainti puskurin ulkopuolella"
+msgid "internal error: imp.find_module returned tuple with NULL"
+msgstr "sisäinen virhe: imp.find_module palautti tuplen joka sisältää nullin"
+
+msgid "cannot delete vim.Dictionary attributes"
+msgstr "ei voi poistaa vim.Dictionary-attribuutteja"
+
+msgid "cannot modify fixed dictionary"
+msgstr "ei voida muuttaa kiinnitettyä sanakirjaa"
+
+#, c-format
+msgid "cannot set attribute %s"
+msgstr "ei voi asettaa attribuuttia %s"
+
+msgid "hashtab changed during iteration"
+msgstr "hashtab muuttui kesken iteraation"
#, c-format
-msgid "<window object (deleted) at %p>"
-msgstr "<ikkunaolio (poistettu) kohdassa %p>"
+msgid "expected sequence element of size 2, but got sequence of size %d"
+msgstr "sekvenssin elementin koon pitäisi olla 2, ei %d"
+
+msgid "list constructor does not accept keyword arguments"
+msgstr "listakonstruktori ei tue avainsanaparametrejä"
+
+msgid "list index out of range"
+msgstr "listaindeksi arvoalueen ulkopuolelta"
+
+#. No more suitable format specifications in python-2.3
+#, c-format
+msgid "internal error: failed to get vim list item %d"
+msgstr "sisäinen virhe: ei pystytty hakea vimin listan indeksiä %d"
+
+msgid "slice step cannot be zero"
+msgstr "slicen askel ei voi olla nolla"
#, c-format
-msgid "<window object (unknown) at %p>"
-msgstr "<ikkunaolio (tuntematon) kohdassa %p>"
+msgid "attempt to assign sequence of size greater than %d to extended slice"
+msgstr "yritettiin sijoittaa sekvenssiä jonka koko on enemmän kuin %d sliceen"
+
+#, c-format
+msgid "internal error: no vim list item %d"
+msgstr "sisäinen virhe: ei vim-listan indeksiä %d"
+
+msgid "internal error: not enough list items"
+msgstr "sisäinen virhe: ei tarpeeksi listan kohtia"
+
+msgid "internal error: failed to add item to list"
+msgstr "sisäinen virhe: ei voitu lisätä kohtaa listaan"
+
+#, c-format
+msgid "attempt to assign sequence of size %d to extended slice of size %d"
+msgstr "yritettiin asettaa sekvenssiä jonka koko on %d sliceen jonka koko on %d"
+
+msgid "failed to add item to list"
+msgstr "ei voitu lisätä kohtaa listaan"
+
+msgid "cannot delete vim.List attributes"
+msgstr "ei voi poistaa vim.List-attribuutteja"
+
+msgid "cannot modify fixed list"
+msgstr "ei voida muokata kiinitettyä listaa"
#, c-format
-msgid "<window %d>"
-msgstr "<ikkuna %d>"
+msgid "unnamed function %s does not exist"
+msgstr "nimetöntä funktiota %s ei ole"
+
+#, c-format
+msgid "function %s does not exist"
+msgstr "funktiota %s ei ole"
+
+#, c-format
+msgid "failed to run function %s"
+msgstr "ei voitu suorittaa funktiota %s"
+
+msgid "unable to get option value"
+msgstr "ei voitu hakea asetuksen arvoa"
+
+msgid "internal error: unknown option type"
+msgstr "sisäinen virhe: tuntematon asetustyyppi"
+
+msgid "problem while switching windows"
+msgstr "virhe ikkunaa vaihtaessa"
+
+#, c-format
+msgid "unable to unset global option %s"
+msgstr "ei voi tyhjentää yleistä asetusta %s"
+
+#, c-format
+msgid "unable to unset option %s which does not have global value"
+msgstr "ei voi tyhjentää asetusta %s jolla ei ole yleistä arvoa"
+
+msgid "attempt to refer to deleted tab page"
+msgstr "yritettiin viitata poistettuun välilehteen"
+
+msgid "no such tab page"
+msgstr "välilehteä ei ole"
+
+msgid "attempt to refer to deleted window"
+msgstr "yritettiin viitata poistettuun ikkunaan"
+
+msgid "readonly attribute: buffer"
+msgstr "kirjoitussuojausattribuutti: puskuri"
+
+msgid "cursor position outside buffer"
+msgstr "kursorin sijainti puskurin ulkopuolella"
msgid "no such window"
msgstr "ikkunaa ei ole"
@@ -6482,45 +6880,80 @@ msgstr "ikkunaa ei ole"
msgid "attempt to refer to deleted buffer"
msgstr "yritettiin viitata poistettuun puskuriin"
-# New Line eli uusi rivinvaihtomerkki (ei CR, LF tai CR LF)
-#~ msgid "[NL found]"
-#~ msgstr "[NL puuttuu]"
+msgid "failed to rename buffer"
+msgstr "ei voity uudelleennimetä puskuria"
+
+msgid "mark name must be a single character"
+msgstr "merkin nimen pitää olla yksi merkki"
-#~ msgid "Vim dialog..."
-#~ msgstr "Vim-ikkuna..."
+#, c-format
+msgid "expected vim.Buffer object, but got %s"
+msgstr "odotettiin vim.Buffer-oliota, ei %s"
+
+#, c-format
+msgid "failed to switch to buffer %d"
+msgstr "ei voitu vaihtaa puskuriin %d"
-#~ msgid "Font Selection"
-#~ msgstr "Fontin valinta"
+#, c-format
+msgid "expected vim.Window object, but got %s"
+msgstr "odotettiin vim.Window-oliota, saatiin %s"
-#~ msgid "E569: maximum number of cscope connections reached"
-#~ msgstr "E569: enimmismr cscope-yhteyksi otettu"
+msgid "failed to find window in the current tab page"
+msgstr "ei voitu löytää ikkunaa nykyiselle välilehtisivulle"
-#~ msgid "-name <name>\t\tUse resource as if vim was <name>"
-#~ msgstr "-name <nimi>\t\tKyt resurssia vim <nimen>"
+msgid "did not switch to the specified window"
+msgstr "ei vaihdettu annettuun ikkunaan"
-#~ msgid "\t\t\t (Unimplemented)\n"
-#~ msgstr "\t\t\t (toteuttamatta)\n"
+#, c-format
+msgid "expected vim.TabPage object, but got %s"
+msgstr "odotettiin vim.TabPage-oliota, saatiin %s"
-#~ msgid "E290: over-the-spot style requires fontset"
-#~ msgstr "E290: over-the-spot-tyyliss pit olla fontset"
+msgid "did not switch to the specified tab page"
+msgstr "ei voitu vaihtaa annetulle välilehtisivulle"
-#~ 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 kytst"
+msgid "failed to run the code"
+msgstr "ei voitu suorittaa koodia"
-#~ msgid "E292: Input Method Server is not running"
-#~ msgstr "E292: Sytemetodipalvelin ei ole kynniss"
+msgid "E858: Eval did not return a valid python object"
+msgstr "E858: Eval ei palauttanut python-oliota"
-#~ msgid "E396: containedin argument not accepted here"
-#~ msgstr "E396: containedin ei sovi thn"
+msgid "E859: Failed to convert returned python object to vim value"
+msgstr "E859: Ei voitu konvertoida python-oliota vim-arvoksi"
-#~ msgid "with GTK-GNOME GUI."
-#~ msgstr "GTK-Gnome-GUIlla."
+#, c-format
+msgid "unable to convert %s to vim dictionary"
+msgstr "ei voitu konvertoida oliota %s vim-sanakirjaksi"
-#~ msgid "with GTK GUI."
-#~ msgstr "GTK-GUIlla."
+#, c-format
+msgid "unable to convert %s to vim list"
+msgstr "ei voitu konvertoida tyypistä %s vim-listaksi"
-#~ msgid "-V[N]\t\tVerbose level"
-#~ msgstr "-V[N]\t\tMonisanaisuustaso"
+#, c-format
+msgid "unable to convert %s to vim structure"
+msgstr "ei voi konvertoida oliota %s vim-tietorakenteeksi"
+
+msgid "internal error: NULL reference passed"
+msgstr "sisäinen virhe: NULL-viite annettu"
+
+msgid "internal error: invalid value type"
+msgstr "sisäinen virhe: huono arvotyyppi"
+
+msgid ""
+"Failed to set path hook: sys.path_hooks is not a list\n"
+"You should now do the following:\n"
+"- append vim.path_hook to sys.path_hooks\n"
+"- append vim.VIM_SPECIAL_PATH to sys.path\n"
+msgstr ""
+"Ei voitu asettaa polkukoukkua: sys.path_hooks ei ole lista\n"
+"Koeta seuraavaa:\n"
+"- lisää vim.path_hook muuttujaan sys.path_hooks\n"
+"- lisää vim.VIM_SPECIAL_PATH muuttujaan sys.path\n"
+
+
+msgid ""
+"Failed to set path: sys.path is not a list\n"
+"You should now append vim.VIM_SPECIAL_PATH to sys.path"
+msgstr ""
+"Ei onnistuttu asettaman polkua: sys.path ei ole list\n"
+"Lisää vim.VIM_SPECIAL_PATH muuttujaan sys.path"
-#~ msgid "...(truncated)"
-#~ msgstr "...(katkaistu)"