changeset 11659:49c12c93abf3

Updated runtime files and translations. commit https://github.com/vim/vim/commit/74675a666b51edd61e0210132658d81a86c5102c Author: Bram Moolenaar <Bram@vim.org> Date: Sat Jul 15 13:53:23 2017 +0200 Updated runtime files and translations.
author Christian Brabandt <cb@256bit.org>
date Sat, 15 Jul 2017 14:00:04 +0200
parents 8486d843ab52
children 16dab1cd56f2
files runtime/doc/autocmd.txt runtime/doc/channel.txt runtime/doc/cmdline.txt runtime/doc/editing.txt runtime/doc/eval.txt runtime/doc/gui_x11.txt runtime/doc/if_cscop.txt runtime/doc/index.txt runtime/doc/options.txt runtime/doc/quickref.txt runtime/doc/syntax.txt runtime/doc/tags runtime/doc/terminal.txt runtime/doc/todo.txt runtime/doc/version8.txt runtime/filetype.vim runtime/optwin.vim runtime/syntax/murphi.vim runtime/syntax/php.vim runtime/syntax/sisu.vim runtime/tutor/tutor.fr.utf-8 runtime/tutor/tutor.pt runtime/tutor/tutor.pt.utf-8 src/po/Makefile src/po/README.txt src/po/de.po src/po/eo.po src/po/fr.po src/po/ga.po src/po/ja.euc-jp.po src/po/ja.po src/po/ja.sjis.po src/po/ko.UTF-8.po src/po/ko.po src/po/pt_BR.po src/po/uk.cp1251.po src/po/uk.po src/po/zh_CN.UTF-8.po src/po/zh_CN.cp936.po
diffstat 39 files changed, 4081 insertions(+), 2334 deletions(-) [+]
line wrap: on
line diff
--- a/runtime/doc/autocmd.txt
+++ b/runtime/doc/autocmd.txt
@@ -1,4 +1,4 @@
-*autocmd.txt*   For Vim version 8.0.  Last change: 2017 Apr 07
+*autocmd.txt*   For Vim version 8.0.  Last change: 2017 Jul 14
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -651,7 +651,8 @@ FileType			When the 'filetype' option ha
 				pattern is matched against the filetype.
 				<afile> can be used for the name of the file
 				where this option was set, and <amatch> for
-				the new value of 'filetype'.
+				the new value of 'filetype'.  Navigating to
+				another window or buffer is not allowed.
 				See |filetypes|.
 							*FileWriteCmd*
 FileWriteCmd			Before writing to a file, when not writing the
--- a/runtime/doc/channel.txt
+++ b/runtime/doc/channel.txt
@@ -518,7 +518,7 @@ By default this reads the whole buffer. 
 and "in_bot" options.
 
 A special mode is when "in_top" is set to zero and "in_bot" is not set: Every
-time a line is added to the buffer, the last-but-one line will be send to the
+time a line is added to the buffer, the last-but-one line will be sent to the
 job stdin.  This allows for editing the last line and sending it when pressing
 Enter.
 							*channel-close-in*
--- a/runtime/doc/cmdline.txt
+++ b/runtime/doc/cmdline.txt
@@ -1,4 +1,4 @@
-*cmdline.txt*   For Vim version 8.0.  Last change: 2016 Sep 27
+*cmdline.txt*   For Vim version 8.0.  Last change: 2017 Jul 11
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -455,6 +455,9 @@ matches exactly one character.
 
 The 'wildignorecase' option can be set to ignore case in filenames.
 
+The 'wildmenu' option can be set to show the matches just above the command
+line.
+
 If you like tcsh's autolist completion, you can use this mapping:
 	:cnoremap X <C-L><C-D>
 (Where X is the command key to use, <C-L> is CTRL-L and <C-D> is CTRL-D)
--- a/runtime/doc/editing.txt
+++ b/runtime/doc/editing.txt
@@ -1,4 +1,4 @@
-*editing.txt*   For Vim version 8.0.  Last change: 2017 Apr 10
+*editing.txt*   For Vim version 8.0.  Last change: 2017 Jun 20
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -1328,9 +1328,11 @@ present in 'cpoptions' and "!" is not us
 :chd[ir][!] [path]	Same as |:cd|.
 
 							*:lc* *:lcd*
-:lc[d][!] {path}	Like |:cd|, but only set the current directory for the
-			current window.  The current directory for other
-			windows is not changed. {not in Vi}
+:lc[d][!] {path}	Like |:cd|, but only set the current directory when
+			the cursor is in the current window.  The current
+			directory for other windows is not changed, switching
+			to another window will stop using {path}.
+			{not in Vi}
 
 							*:lch* *:lchdir*
 :lch[dir][!]		Same as |:lcd|. {not in Vi}
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt*	For Vim version 8.0.  Last change: 2017 Jul 08
+*eval.txt*	For Vim version 8.0.  Last change: 2017 Jul 15
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -2369,6 +2369,12 @@ tagfiles()			List	tags files used
 tan({expr})			Float	tangent of {expr}
 tanh({expr})			Float	hyperbolic tangent of {expr}
 tempname()			String	name for a temporary file
+term_getsize()			Dict	get the size of a terminal
+term_open()			Job	open a terminal window and run a job
+term_scrape()			List	inspect terminal screen
+term_sendkeys()			Number	send keystrokes to a terminal
+term_setsize()			Number	set the size of a terminal
+term_wait()			Number  wait for screen to be updated
 test_alloc_fail({id}, {countdown}, {repeat})
 				none	make memory allocation fail
 test_autochdir()		none	enable 'autochdir' during startup
@@ -7887,6 +7893,23 @@ tempname()					*tempname()* *temp-file-n
 		For MS-Windows forward slashes are used when the 'shellslash'
 		option is set or when 'shellcmdflag' starts with '-'.
 
+term_getsize()						*term_getsize()*
+		Get the size of a terminal. NOT IMPLEMENTED YET
+
+term_open()						*term_open()*
+		Open a terminal window and run a job. NOT IMPLEMENTED YET
+
+term_scrape()						*term_scrape()*
+		Inspect terminal screen. NOT IMPLEMENTED YET
+
+term_sendkeys()						*term_sendkeys()*
+		Send keystrokes to a terminal. NOT IMPLEMENTED YET
+
+term_setsize()						*term_setsize()*
+		Set the size of a terminal. NOT IMPLEMENTED YET
+
+term_wait()						*term_wait()*
+		Wait for screen to be updated. NOT IMPLEMENTED YET
 
 test_alloc_fail({id}, {countdown}, {repeat})		*test_alloc_fail()*
 		This is for testing: If the memory allocation with {id} is
--- a/runtime/doc/gui_x11.txt
+++ b/runtime/doc/gui_x11.txt
@@ -1,4 +1,4 @@
-*gui_x11.txt*   For Vim version 8.0.  Last change: 2016 Sep 12
+*gui_x11.txt*   For Vim version 8.0.  Last change: 2017 Jun 27
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -279,8 +279,9 @@ For CDE "dtwm" (a derivative of Motif) a
 For "mwm" (Motif window manager) the line would be: >
    Mwm*Vim*iconImage: /usr/local/share/vim/vim32x32.xpm
 
-Mouse Pointers Available in X11				*X11_mouse_shapes*
 
+Mouse Pointers Available in X11 ~
+						*X11_mouse_shapes*
 By using the |'mouseshape'| option, the mouse pointer can be automatically
 changed whenever Vim enters one of its various modes (e.g., Insert or
 Command).  Currently, the available pointers are:
@@ -354,7 +355,9 @@ to the GTK documentation, however little
 See http://developer.gnome.org/doc/API/2.0/gtk/gtk-Resource-Files.html
 for more information.
 
-						*gtk-tooltip-colors*
+
+Tooltip Colors ~
+							*gtk-tooltip-colors*
 Example, which sets the tooltip colors to black on light-yellow: >
 
 	style "tooltips"
@@ -372,15 +375,122 @@ distribution.
 For GTK+ 3, an effect similar to the above can be obtained by adding the
 following snippet of CSS code to $XDG_HOME_DIR/gtk-3.0/gtk.css (usually,
 $HOME/.config/gtk-3.0/gtk.css):
- >
+
+For GTK+ 3 < 3.20: >
+
 	.tooltip {
 		background-color: #ffffcc;
 		color: #000000;
 	}
 <
+For GTK+ 3 >= 3.20: >
 
-Using Vim as a GTK+ plugin				*gui-gtk-socketid*
+	tooltip {
+	    background-color: #ffffcc;
+	    text-shadow: none;
+	}
+
+	tooltip label {
+	    color: #2e3436;
+	}
+<
+
+A Quick Look at GTK+ CSS ~
+							*gtk-css*
+The contents of this subsection apply to GTK+ 3.20 or later which provides
+stable support for GTK+ CSS:
+
+	https://developer.gnome.org/gtk3/stable/theming.html
+
+GTK+ uses CSS for styling and layout of widgets.  In this subsection, we'll
+have a quick look at GTK+ CSS through simple, illustrative examples.
+
+Example 1.  Empty Space Adjustment ~
+
+By default, the toolbar and the tabline of the GTK+ 3 GUI are somewhat larger
+than those of the GTK+ 2 GUI.  Some people may want to make them look similar
+to the GTK+ 2 GUI in size.
+
+To do that, we'll try reducing empty space around icons and labels that looks
+apparently superfluous.
+
+Add the following lines to $XDG_HOME_DIR/gtk-3.0/gtk.css (usually,
+$HOME/.config/gtk-3.0/gtk.css): >
+
+	toolbar button {
+	    margin-top: -2px;
+	    margin-right: 0px;
+	    margin-bottom: -2px;
+	    margin-left: 0px;
+
+	    padding-top: 0px;
+	    padding-right: 0px;
+	    padding-bottom: 0px;
+	    padding-left: 0px
+	}
+
+	notebook tab {
+	    margin-top: -1px;
+	    margin-right: 3px;
+	    margin-bottom: -1px;
+	    margin-left: 3px;
 
+	    padding-top: 0px;
+	    padding-right: 0px;
+	    padding-bottom: 0px;
+	    padding-left: 0px
+	}
+<
+Since it's a CSS, they can be rewritten using shorthand: >
+
+	toolbar button {
+	    margin: -2px 0px;
+	    padding: 0px;
+	}
+
+	notebook tab {
+	    margin: -1px 3px;
+	    padding: 0px
+	}
+<
+Note: You might want to use 'toolbariconsize' to adjust the icon size, too.
+
+Note: Depending on the icon theme and/or the font in use, some extra tweaks
+may be needed for a satisfactory result.
+
+Note: In addition to margin and padding, you can use border.  For details,
+refer to the box model of CSS, e.g.,
+
+	https://www.w3schools.com/css/css_boxmodel.asp
+
+Example 2.  More Than Just Colors ~
+
+GTK+ CSS supports gradients as well: >
+
+	tooltip {
+	    background-image: -gtk-gradient(linear,
+					    0 0, 0 1,
+					    color-stop(0, #344752),
+					    color-stop(0.5, #546772),
+					    color-stop(1, #243742));
+	}
+
+	tooltip label {
+	    color: #f3f3f3;
+	}
+<
+Gradients can be used to make a GUI element visually distinguishable from
+others without relying on high contrast. Accordingly, effective use of them is
+a useful technique to give a theme a sense of unity in color and luminance.
+
+Note: Theming can be difficult since it must make every application look
+equally good; making a single application more charming often gets others
+unexpectedly less attractive or even deteriorates their usability.  Keep this
+in mind always when you try improving a theme.
+
+
+Using Vim as a GTK+ plugin ~
+							*gui-gtk-socketid*
 When the GTK+ version of Vim starts up normally, it creates its own top level
 window (technically, a 'GtkWindow').  GTK+ provides an embedding facility with
 its GtkSocket and GtkPlug widgets.  If one GTK+ application creates a
@@ -425,8 +535,8 @@ Note: Avoid use of --enable-gnome-check 
 functionality mentioned above is consolidated in GTK+ 3.
 
 
-GNOME session support			*gui-gnome-session* *gnome-session*
-
+GNOME session support ~
+					*gui-gnome-session* *gnome-session*
 On logout, Vim shows the well-known exit confirmation dialog if any buffers
 are modified.  Clicking [Cancel] will stop the logout process.  Otherwise the
 current session is stored to disk by using the |:mksession| command, and
--- a/runtime/doc/if_cscop.txt
+++ b/runtime/doc/if_cscop.txt
@@ -1,4 +1,4 @@
-*if_cscop.txt*  For Vim version 8.0.  Last change: 2011 Jun 12
+*if_cscop.txt*  For Vim version 8.0.  Last change: 2017 Jun 14
 
 
 		  VIM REFERENCE MANUAL    by Andy Kahn
@@ -91,9 +91,10 @@ suggested use.)
 2. Cscope related commands				*cscope-commands*
 
 		*:cscope* *:cs* *:scs* *:scscope* *E259* *E262* *E561* *E560*
-All cscope commands are accessed through suboptions to the main cscope
-command ":cscope".  The shortest abbreviation is ":cs".  The ":scscope"
-command does the same and also splits the window (short: "scs").
+All cscope commands are accessed through suboptions to the cscope commands.
+	`:cscope` or `:cs` is the main command
+	`:scscope` or `:scs` does the same and splits the window
+	`:lcscope` or `:lcs` uses the location list, see |:lcscope|
 
 The available subcommands are:
 
--- a/runtime/doc/index.txt
+++ b/runtime/doc/index.txt
@@ -1,4 +1,4 @@
-*index.txt*     For Vim version 8.0.  Last change: 2017 Apr 22
+*index.txt*     For Vim version 8.0.  Last change: 2017 Jul 15
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -1573,6 +1573,7 @@ tag	      command	      action ~
 |:tcldo|	:tcld[o]	execute Tcl command for each line
 |:tclfile|	:tclf[ile]	execute Tcl script file
 |:tearoff|	:te[aroff]	tear-off a menu
+|:terminal|	:ter[minal]	open a terminal window
 |:tfirst|	:tf[irst]	jump to first matching tag
 |:throw|	:th[row]	throw an exception
 |:tjump|	:tj[ump]	like ":tselect", but jump directly when there
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1,4 +1,4 @@
-*options.txt*	For Vim version 8.0.  Last change: 2017 Jun 18
+*options.txt*	For Vim version 8.0.  Last change: 2017 Jul 15
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -7754,6 +7754,26 @@ A jump table for the options with a shor
 	Note that the "cterm" attributes are still used, not the "gui" ones.
 	NOTE: This option is reset when 'compatible' is set.
 
+						*'termkey'* *'tk'*
+'termkey' 'tk'	string	(default "CTRL-W")
+			local to window
+			{not in Vi}
+	The key that precedes a Vim command in a terminal window.  Other keys
+	are sent to the job running in the window.
+	The string must be one key stroke.
+	NOT IMPLEMENTED YET
+
+
+						*'thesaurus'* *'tsr'*
+'termsize' 'tms'	string	(default "")
+			local to window
+			{not in Vi}
+	Size of the |terminal| window.  Format: {rows}x{columns}.
+	- When empty the terminal gets the size from the window.
+	- When set (e.g., "24x80") the terminal size is fixed.  If the window
+	  is smaller only the top-left part is displayed.
+	NOT IMPLEMENTED YET
+
 						*'terse'* *'noterse'*
 'terse'			boolean	(default off)
 			global
@@ -8455,14 +8475,27 @@ A jump table for the options with a shor
 'visualbell' 'vb'	boolean	(default off)
 			global
 			{not in Vi}
-	Use visual bell instead of beeping.  The terminal code to display the
+	Use a visual bell instead of beeping.  The terminal code to display the
 	visual bell is given with 't_vb'.  When no beep or flash is wanted,
-	use ":set vb t_vb=".
-	Note: When the GUI starts, 't_vb' is reset to its default value.  You
-	might want to set it again in your |gvimrc|.
+	use: >
+		:set vb t_vb=
+<	If you want a short flash, you can use this on many terminals: >
+		:set vb t_vb=[?5h$<100>[?5l
+<	Here $<100> specifies the time, you can use a smaller or bigger value
+	to get a shorter or longer flash.
+
+	Note: Vim will limit the bell to once per half a second.  This avoids
+	having to wait for the flashing to finish when there are lots of
+	bells, e.g. on key repeat.  This also happens without 'visualbell'
+	set.
+
 	In the GUI, 't_vb' defaults to "<Esc>|f", which inverts the display
 	for 20 msec.  If you want to use a different time, use "<Esc>|40f",
 	where 40 is the time in msec.
+
+	Note: When the GUI starts, 't_vb' is reset to its default value.  You
+	might want to set it again in your |gvimrc|.
+
 	Does not work on the Amiga, you always get a screen flash.
 	Also see 'errorbells'.
 
--- a/runtime/doc/quickref.txt
+++ b/runtime/doc/quickref.txt
@@ -1,4 +1,4 @@
-*quickref.txt*  For Vim version 8.0.  Last change: 2016 Dec 16
+*quickref.txt*  For Vim version 8.0.  Last change: 2017 Jul 15
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -920,6 +920,8 @@ Short explanation of each option:		*opti
 'termbidi'	  'tbidi'   terminal takes care of bi-directionality
 'termencoding'	  'tenc'    character encoding used by the terminal
 'termguicolors'	  'tgc'     use GUI colors for the terminal
+'termkey'	  'tk'	    key that precedes a Vim command in a terminal
+'termsize'	  'tms'	    size of a terminal window
 'terse'			    shorten some messages
 'textauto'	  'ta'	    obsolete, use 'fileformats'
 'textmode'	  'tx'	    obsolete, use 'fileformat'
@@ -1309,6 +1311,7 @@ Context-sensitive completion on the comm
 
 |:sfind|	:sf[ind] {file}		split window, find {file} in 'path'
 					   and edit it
+|:terminal|	:terminal {cmd}		open a terminal window
 |CTRL-W_]|	CTRL-W ]		split window and jump to tag under
 					   cursor
 |CTRL-W_f|	CTRL-W f		split window and edit file name under
--- a/runtime/doc/syntax.txt
+++ b/runtime/doc/syntax.txt
@@ -1,4 +1,4 @@
-*syntax.txt*	For Vim version 8.0.  Last change: 2017 Jun 04
+*syntax.txt*	For Vim version 8.0.  Last change: 2017 Jul 14
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -4982,10 +4982,11 @@ PmenuSbar	Popup menu: scrollbar.
 PmenuThumb	Popup menu: Thumb of the scrollbar.
 							*hl-Question*
 Question	|hit-enter| prompt and yes/no questions
+							*hl-QuickFixLine*
+QuickFixLine	Current |quickfix| item in the quickfix window.
 							*hl-Search*
 Search		Last search pattern highlighting (see 'hlsearch').
-		Also used for highlighting the current line in the quickfix
-		window and similar items that need to stand out.
+		Also used for similar items that need to stand out.
 							*hl-SpecialKey*
 SpecialKey	Meta and special keys listed with ":map", also for text used
 		to show unprintable characters in the text, 'listchars'.
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -3098,6 +3098,8 @@ 90.5	usr_90.txt	/*90.5*
 :tclfile	if_tcl.txt	/*:tclfile*
 :te	gui_w32.txt	/*:te*
 :tearoff	gui_w32.txt	/*:tearoff*
+:ter	terminal.txt	/*:ter*
+:terminal	terminal.txt	/*:terminal*
 :tf	tagsrch.txt	/*:tf*
 :tfirst	tagsrch.txt	/*:tfirst*
 :th	eval.txt	/*:th*
@@ -4802,6 +4804,7 @@ W18	syntax.txt	/*W18*
 W19	autocmd.txt	/*W19*
 W20	if_pyth.txt	/*W20*
 W21	if_pyth.txt	/*W21*
+W22	eval.txt	/*W22*
 WORD	motion.txt	/*WORD*
 WWW	intro.txt	/*WWW*
 Win32	os_win32.txt	/*Win32*
@@ -6571,6 +6574,7 @@ gs	various.txt	/*gs*
 gsp.vim	syntax.txt	/*gsp.vim*
 gstar	pattern.txt	/*gstar*
 gt	tabpage.txt	/*gt*
+gtk-css	gui_x11.txt	/*gtk-css*
 gtk-tooltip-colors	gui_x11.txt	/*gtk-tooltip-colors*
 gu	change.txt	/*gu*
 gugu	change.txt	/*gugu*
@@ -6740,6 +6744,7 @@ hl-PmenuSbar	syntax.txt	/*hl-PmenuSbar*
 hl-PmenuSel	syntax.txt	/*hl-PmenuSel*
 hl-PmenuThumb	syntax.txt	/*hl-PmenuThumb*
 hl-Question	syntax.txt	/*hl-Question*
+hl-QuickFixLine	syntax.txt	/*hl-QuickFixLine*
 hl-Scrollbar	syntax.txt	/*hl-Scrollbar*
 hl-Search	syntax.txt	/*hl-Search*
 hl-SignColumn	syntax.txt	/*hl-SignColumn*
@@ -8778,6 +8783,12 @@ tempname()	eval.txt	/*tempname()*
 term-dependent-settings	term.txt	/*term-dependent-settings*
 term-list	syntax.txt	/*term-list*
 term.txt	term.txt	/*term.txt*
+term_getsize()	eval.txt	/*term_getsize()*
+term_open()	eval.txt	/*term_open()*
+term_scrape()	eval.txt	/*term_scrape()*
+term_sendkeys()	eval.txt	/*term_sendkeys()*
+term_setsize()	eval.txt	/*term_setsize()*
+term_wait()	eval.txt	/*term_wait()*
 termcap	term.txt	/*termcap*
 termcap-changed	version4.txt	/*termcap-changed*
 termcap-colors	term.txt	/*termcap-colors*
@@ -8785,11 +8796,16 @@ termcap-cursor-color	term.txt	/*termcap-
 termcap-cursor-shape	term.txt	/*termcap-cursor-shape*
 termcap-options	term.txt	/*termcap-options*
 termcap-title	term.txt	/*termcap-title*
+terminal	terminal.txt	/*terminal*
 terminal-colors	os_unix.txt	/*terminal-colors*
+terminal-debug	terminal.txt	/*terminal-debug*
 terminal-info	term.txt	/*terminal-info*
 terminal-key-codes	term.txt	/*terminal-key-codes*
 terminal-options	term.txt	/*terminal-options*
 terminal-output-codes	term.txt	/*terminal-output-codes*
+terminal-testing	terminal.txt	/*terminal-testing*
+terminal-use	terminal.txt	/*terminal-use*
+terminal.txt	terminal.txt	/*terminal.txt*
 terminfo	term.txt	/*terminfo*
 termresponse-variable	eval.txt	/*termresponse-variable*
 test-functions	usr_41.txt	/*test-functions*
--- a/runtime/doc/terminal.txt
+++ b/runtime/doc/terminal.txt
@@ -1,4 +1,4 @@
-*terminal.txt*	For Vim version 8.0.  Last change: 2017 Jul 04
+*terminal.txt*	For Vim version 8.0.  Last change: 2017 Jul 15
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -35,15 +35,11 @@ the job.  This uses a pty when possible.
 Navigate between windows with CTRL-W commands (and mouse).
 E.g. CTRL-W CTRL-W moves focus to the next window.
 
-Option 'termkey'
-Specify key for Vim command in terminal window.  local to window.
+See option 'termkey' for specifying the key that precedes a Vim command.
 Default is CTRL-W.
 
-Option 'termsize'
-Specify terminal size. Local to window.
-When empty the terminal gets the size from the window.
-When set (e.g., "24x80") the terminal size is fixed.  If the window is smaller
-only the top-left part is displayed.  (TODO: scrolling?)
+See option 'termsize' for controlling the size of the terminal window.
+(TODO: scrolling when the terminal is larger than the window)
 
 Syntax ~
 						*:ter* *:terminal*
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 8.0.  Last change: 2017 Jun 13
+*todo.txt*      For Vim version 8.0.  Last change: 2017 Jul 15
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -35,9 +35,39 @@ entered there will not be repeated below
 							*known-bugs*
 -------------------- Known bugs and current work -----------------------
 
+When redrawing for the channel buffer, command line completion is cleared.
+  (Ramel Eshed, 2017 May 4)
+When a timer triggers the command completion disappears. (Dominique Pelle,
+2017 Jun 13, #1768)
+Caused by 8.0.0592.
+Check if anything was output?  Don't redraw when scrolled. (#1820)
+When redrawing the command line a pending CTRL-R shows ", which is removed.
+
+No maintainer for German translations.
+No maintainer for Vietnamese translations.
+No maintainer for Simplified Chinese translations.
+
+
+Terminal emulator window:
+- Lots of stuff to implement, see src/terminal.c
+- Windows implementation (WiP): https://github.com/mattn/vim/tree/terminal
+    Using winpty ?
+-   Running a shell command from the GUI still has limitations.  Look into how
+    the terminal emulator of the Vim shell project can help:
+    http://vimshell.wana.at
+-   Add debugger interface.  Implementation for gdb by Xavier de Gaye.
+    Should work like an IDE.  Try to keep it generic.  Now found here:
+    http://clewn.sf.net.
+-   Look into the idevim plugin/script.
+-   Related wishes for NetBeans commands:
+    - make it possible to have 'defineAnnoType' also handle terminal colors.
+    - send 'balloonText' events for the cursor position (using CursorHold ?)
+      in terminal mode.
+- Feature: switch between "running job" and a normal buffer (possibly
+  read-only) to allow for searching, copy/paste, etc. (Domnique).  Having a
+  (large) scrollback would be useful.
+
 +channel:
-- When redrawing for the channel buffer, command line completion is cleared.
-  (Ramel Eshed, 2017 May 4)
 - Try out background make plugin: 
   https://github.com/AndrewVos/vim-make-background
 - Problem with stderr on Windows? (Vincent Rischmann, 2016 Aug 31, #1026)
@@ -101,14 +131,14 @@ Regexp problems:
   col and vcol when moving to another line.
 - this doesn't work: "syntax match ErrorMsg /.\%9l\%>20c\&\%<28c/".  Leaving
   out the \& works.  Seems any column check after \& fails.
-- The pattern "\1" with the old engine gives E65, with the new engine it
-  matches the empty string. (Dominique Pelle, 2015 Oct 2, Nov 24)
-  had_endbrace[] is set but not initialized or used.
 - Difference between two engines: ".*\zs\/\@>\/" on text "///"
   (Chris Paul, 2016 Nov 13)  New engine not greedy enough?
   Another one: echom matchstr(" sdfsfsf\n sfdsdfsdf",'[^\n]*')
   (2017 May 15, #1252)
 
+Patch to update b:changedtick in the quickfix window. (Yegappan Lakshmanan,
+2017 Jul 13)
+
 With foldmethod=syntax and nofoldenable comment highlighting isn't removed.
 (Marcin Szewczyk, 2017 Apr 26)
 
@@ -119,13 +149,38 @@ ml_get errors with buggy script. (Domini
 
 Error in emsg with buggy script. (Dominique, 2017 Apr 30)
 
+Better detection of strace file. (Steven Fernandez, 2017 Jul 12, #1837)
+
+To reproduce problems "vim -u NONE -N" is often used, but this still uses
+'viminfo'. Add "-I" to not use 'viminfo'?
+Or use "vim -B" for "bug reproduction"?
+
+Bug with conceal mode: 3rd element returned by synconcealed() differs for
+every call. (Dominique Pelle, 2017 Jun 18)
+
 Add options_default() / options_restore() to set several options to Vim
 defaults for a plugin. Comments from Zyx, 2017 May 10.
 Perhaps use a vimcontext / endvimcontext command block.
 
-Using freed memory with "qf" FileType autocommand that does :cclose.
-(Lemonboy, 2017 May 28, #1730, fix in 1734, with test that doesn't fail, but
-it fails when run manually)  Add "starting" to test_override()?
+Patch to trigger OptionSet when entering diff mode. (Christian Brabandt, 2017
+Jul 7)
+
+Illegal memory access, requires ASAN to see. (Dominique Pelle, 2015 Jul 28)
+Still happens (2017 Jul 9)
+
+Memory leak in test_arabic.
+
+Refactored HTML indent file. (Michael Lee, #1821)
+
+Using uninitialzed value in test_crypt.
+
+X11: Putting more than about 262040 characters of text on the clipboard and
+pasting it in another Vim doesn't work.  (Dominique Pelle, 2008 Aug 21-23)
+clip_x11_request_selection_cb() is called with zero value and length.
+Also: Get an error message from free() in the process that owns the selection.
+Seems to happen when the selection is requested the second time, but before
+clip_x11_convert_selection_cb() is invoked, thus in X library code.
+Patch to fix this by Kiichi, 2017 Jul 11, #1822)
 
 Problem with three-piece comment. (Michael Lee, 2017 May 11, #1696)
 
@@ -134,15 +189,24 @@ case of :bwipe followed by :new.
 
 Files for Latvian language. (Vitolins, 2017 May 3, #1675)
 
+MS-Windows: Opening same file in a second gvim hangs. (Sven Bruggemann, 2017
+Jul 4)
+
 Setting 'clipboard' to "unnamed" makes a global command very slow (Daniel
 Drucker, 2017 May 8).
 This was supposed to be fixed, did it break again somehow?
 Christian cannot reproduce it.
 
+Using composing char in mapping does not work properly. maparg() shows the
+wrong thing. (Nikolai Pavlov, 2017 Jul 8, #1827)
+Or is this not an actual problem?
+
 Better TeX indent file. (Christian Brabandt, 2017 May 3)
 
 Openhab syntax file (mueller, #1678)
 
+Patch to use a separate code for BS on Windows. (Linwei, #1823)
+
 Use gvimext.dll from the nightly build? (Issue #249)
 
 'synmaxcol' works with bytes instead of screen cells. (Llandon, 2017 May 31,
@@ -151,18 +215,17 @@ Use gvimext.dll from the nightly build? 
 Problem with using :cd when remotely editing a file. (Gerd Wachsmuth, 2017 May
 8, #1690)
 
-'equalalways' only works for one column. (Glacambre, 2017 May 15, #1707)
-
 Include solarized color scheme?
 
-Updates to GTK help. (Kazunobu Kuriyama, 2017 May 4)
-
 Running test_gui and test_gui_init with Motif sometimes kills the window
 manager.  Problem with Motif?
 
 Bogus characters inserted when triggering indent while changing text.
 (Vitor Antunes, 2016 Nov 22, #1269)
 
+Using "wviminfo /tmp/viminfo" does not store file marks that Vim knows about,
+it only works when merging with an existing file.  (Shougo, 2017 Jun 19, #1781)
+
 Segmentation fault with complete(). (Lifepillar, 2017 Apr 29, #1668)
 Check for "pat" to be NULL in search_for_exact_line()?
 How did it get NULL?  Comment by Christian, Apr 30.
@@ -172,6 +235,9 @@ Is it possible to keep the complete menu
 
 Memory leak in test97?  The string is actually freed.  Weird.
 
+assert_fails() can only check for the first error.  Make it possible to have
+it catch multiple errors and check all of them.
+
 New value "uselast" for 'switchbuf'. (Lemonboy, 2017 Apr 23, #1652)
 
 Add a toolbar in the terminal.  Can be global, above all windows, or specific
@@ -187,6 +253,11 @@ Perhaps simpler: actually delete the map
 mappings (with a lhs prefix, like maparg()), mapdelete() to delete,
 maprestore() to restore (using the output of maplist().
 
+Patch to add setbufline(). (email from Yasuhiro Matsumoto, patch by Ozaki
+Kiichi, 2016 Feb 28)
+Update Mar 8: https://gist.github.com/mattn/23c1f50999084992ca98
+Update Mar 13: https://gist.github.com/mattn/23c1f50999084992ca98
+
 Add an argument to :mkvimrc (or add aother command) to skip mappings from
 plugins (source is a Vim script).  No need to put these in a .vimrc, they will
 be defined when the plugin is loaded.
@@ -200,6 +271,9 @@ What if there is an invalid character?
 
 Json string with trailing \u should be an error. (Lcd)
 
+import can't be used in define option when include matches too.
+(Romain Lafourcade, 2017 Jun 18, #1519)
+
 When session file has name in argument list but the buffer was deleted, the
 buffer is not deleted when using the session file. (#1393)
 Should add the buffer in hidden state.
@@ -211,10 +285,6 @@ Wrong diff highlighting with three files
 Also get E749 on exit.
 Another example in #1309
 
-Patch to change all use of &sw to shiftwidth(). (Tyru, 2017 Feb 19)
-Takuya Fujiwara
-Wait until maintainers integrate it.
-
 When deleting a mark or register, leave a tombstone, so that it's also deleted
 when writing viminfo (and the delete was the most recent action). #1339
 
@@ -244,6 +314,12 @@ 8   "stl" and "stlnc" in 'fillchars' don
 Using CTRL-G_U in InsertCharPre causes trouble for redo. (Israel Chauca
 Fuentes, 2017 Feb 12, #1470)
 
+Add a "keytrans()" function, which turns the internal byte representation of a
+key into a form that can be used for :map.  E.g.
+    let xx = "\<C-Home>"
+    echo keytrans(xx)
+    <C-Home>
+
 Check for errors E704 and E705 only does VAR_FUNC, should also do VAR_PARTIAL.
 (Nikolai Pavlov, 2017 Mar 13, #1557)
 Make a function to check for function-like type?
@@ -257,9 +333,6 @@ Implement optional arguments for functio
     call Foo(12, all = 0)
     call Foo(12, 15, 0)
 
-writefile() does not abort as soon as an error is found. (Nikolai Pavlov,
-2017 Feb 14, #1476)
-
 Patch to support on-the-spot and over-the-spot input method. (Ken Takata, 2017
 Feb 14).
 
@@ -273,6 +346,10 @@ somewhere else.  :{range}copy {dest} !cm
 Patch to fix that empty first tab is not in session.
 (Hirohito Higashi, 2016 Nov 25, #1282)
 
+Patch to add random number generator. (Hong Xu, 2010 Nov 8, update Nov 10)
+Alternative from Christian Brabandt. (2010 Sep 19)
+New one from Yasuhiro Matsumoto, #1277.
+
 Patch for restoring wide characters in the console buffer.
 (Ken Takata, 2016 Jun 7)
 
@@ -286,9 +363,6 @@ The TermResponse event is not triggered 
 "all".  Netrw does this. (Gary Johnson, 2017 Jan 24)
 Postpone the event until 'eventignore' is reset.
 
-Patch to make urxvt mouse work better, recognize Esc[*M termcap code.
-(Maurice Bos, 2017 Feb 17, #1486)
-
 Expanding /**/ is slow.  Idea by Luc Hermitte, 2017 Apr 14.
 
 Once .exe with updated installer is available: Add remark to download page
@@ -324,11 +398,24 @@ Does this also fix #1408 ?
 
 Patch to add "module" to quickfix entries. (Coot, 2017 Jun 8, #1757)
 
+'cursorline' and match interfere. (Ozaki Kiichi, 2017 Jun 23, #1792)
+
 Patch for 'cursorlinenr' option. (Ozaki Kiichi, 2016 Nov 30)
 
+Patch to be able to separately map CTRL-H and BS on Windows.
+(Linwei, 2017 Jul 11, #1833)
+
 When 'completeopt' has "noselect" does not insert a newline. (Lifepillar, 2017
 Apr 23, #1653)
 
+Using an external diff is inefficient.  Not all systems have a good diff
+program available (esp. MS-Windows).  Would be nice to have in internal diff
+implementation.  Can then also use this for displaying changes within a line.
+Olaf Dabrunz is working on this. (10 Jan 2016)
+9   Instead invoking an external diff program, use builtin code.  One can be
+    found here: http://www.ioplex.com/~miallen/libmba/dl/src/diff.c
+    It's complicated and badly documented.
+
 Window resizing with 'winfixheight': With a vertical split the height changes
 anyway. (Tommy allen, 2017 Feb 21, #1502)
 
@@ -385,9 +472,6 @@ Include the test.
 Patch to add tagfunc().  Cleaned up by Christian Brabandt, 2013 Jun 22.
 New update 2017 Apr 10, #1628
 
-Unnamed register only contains the last deleted text when appending deleted
-text to a register. (Wolfgang Jeltsch, reproduced by Ben Fritz, 2017 Apr 10)
-
 When 'keywordprg' starts with ":" the argument is still escaped as a shell
 command argument. (Romain Lafourcade, 2016 Oct 16, #1175)
 
@@ -405,6 +489,8 @@ execute() cannot be used with command co
 
 cmap using execute() has side effects. (Killthemule, 2016 Aug 17, #983)
 
+:map X may print invalid data. (Nikolay Pavlov, 2017 Jul 3, #1816)
+
 Patch to order results from taglist(). (Duncan McDougall, 2016 Oct 25)
 
 patch for 'spellcamelcase' option: spellcheck each CamelCased word.
@@ -502,9 +588,6 @@ Because of using the initial buffer? (Du
 Patch to add the :bvimgrep command.  (Christian Brabandt, 2014 Nov 12)
 Updated 2016 Jun 10, #858  Update 2017 Mar 28: use <buffer>
 
-Patch to fix that an encoding conversion failure results in a corrupted or
-empty file. (Christian Brabandt, #1765, https://github.com/chrisbra/vim-mq-patches/blob/master/conversion_error)
-
 Add redrawtabline command. (Naruhiko Nishino, 2016 Jun 11)
 
 Neovim patch for utfc_ptr2char_len() https://github.com/neovim/neovim/pull/4574
@@ -522,11 +605,6 @@ Possibly include the needed code so that
 Add a way to restart a timer.  It's similar to timer_stop() and timer_start(),
 but the reference remains valid.
 
-Patch to add setbufline(). (email from Yasuhiro Matsumoto, patch by Ozaki
-Kiichi, 2016 Feb 28)
-Update Mar 8: https://gist.github.com/mattn/23c1f50999084992ca98
-Update Mar 13: https://gist.github.com/mattn/23c1f50999084992ca98
-
 Need to try out instructions in INSSTALLpc.txt about how to install all
 interfaces and how to build Vim with them.
 Appveyor build with self-installing executable, includes getting most
@@ -639,8 +717,6 @@ Patch to add TagNotFound autocommand. (A
 Patch to add Error autocommand. (Anton Lindqvist, 2016 Feb 17)
 Only remembers one error.
 
-Illegal memory access, requires ASAN to see. (Dominique Pelle, 2015 Jul 28)
-
 Gvim: when both Tab and CTRL-I are mapped, use CTRL-I not for Tab.
 
 Unexpected delay when using CTRL-O u.  It's not timeoutlen.
@@ -708,11 +784,6 @@ 30)
 MS-Windows: Crash opening very long file name starting with "\\".
 (Christian Brock, 2012 Jun 29)
 
-Using an external diff is inefficient.  Not all systems have a good diff
-program available (esp. MS-Windows).  Would be nice to have in internal diff
-implementation.  Can then also use this for displaying changes within a line.
-Olaf Dabrunz is working on this.
-
 The OptionSet autocommand event is not always triggered. (Rick Howe, 2015 Sep
 24): :diffthis, :diffoff.
 
@@ -1408,9 +1479,6 @@ 2011 Feb 27)
 Editing a file with a ^M with 'ff' set to "mac", opening a help file, then the
 ^M is displayed as ^J sometimes.  Getting 'ff' value from wrong window/buffer?
 
-'colorcolumn' has higher priority than hlsearch.  Should probably be the other
-way around. (Nazri Ramliy, 2013 Feb 19)
-
 When Vim is put in the background (SIGTSTP) and then gets a SIGHUP it doesn't
 exit.  It exists as soon as back in the foreground. (Stephen Liang, 2011 Jan
 9)  Caused by vim_handle_signal(SIGNAL_BLOCK); in ui.c.
@@ -1459,14 +1527,13 @@ setpos() does not restore cursor positio
 7   The 'directory' option supports changing path separators to "%" to make
     file names unique, also support this for 'backupdir'. (Mikolaj Machowski)
     Patch by Christian Brabandt, 2010 Oct 21.
+    Is this an update:  related to: #179
+    https://github.com/chrisbra/vim-mq-patches/blob/master/backupdir
+    Fixed patch 2017 Jul 1.
 
 With "tw=55 fo+=a" typing space before ) doesn't work well. (Scott Mcdermott,
 2010 Oct 24)
 
-Patch to add random number generator. (Hong Xu, 2010 Nov 8, update Nov 10)
-Alternative from Christian Brabandt. (2010 Sep 19)
-New one from Yasuhiro Matsumoto, #1277.
-
 Messages in message.txt are highlighted as examples.
 
 When using cp850 the NBSP (0xff) is not drawn correctly. (Brett Stahlman, 2010
@@ -2406,13 +2473,6 @@ respond to selection requests.  Invoking
 the shell doesn't help.  Would require forking and doing a message loop, like
 what happens for the GUI.
 
-X11: Putting more than about 262040 characters of text on the clipboard and
-pasting it in another Vim doesn't work.  (Dominique Pelle, 2008 Aug 21-23)
-clip_x11_request_selection_cb() is called with zero value and length.
-Also: Get an error message from free() in the process that owns the selection.
-Seems to happen when the selection is requested the second time, but before
-clip_x11_convert_selection_cb() is invoked, thus in X library code.
-
 ":vimgrep" does not recognize a recursive symlink.  Is it possible to detect
 this, at least for Unix (using device/inode)?
 
@@ -3275,18 +3335,6 @@ Most interesting new features to be adde
     Alternative: Make a function for Ex commands: cmd_edit().
 -   Add COLUMN NUMBERS to ":" commands ":line1,line2[col1,col2]cmd".  Block
     can be selected with CTRL-V.  Allow '$' (end of line) for col2.
--   Add DEBUGGER INTERFACE.  Implementation for gdb by Xavier de Gaye.
-    Should work like an IDE.  Try to keep it generic.  Now found here:
-    http://clewn.sf.net.
-    And the idevim plugin/script.
-    To be able to start the debugger from inside Vim: For GUI run a program
-    with a netbeans connection; for console: start a program that splits the
-    terminal, runs the debugger in one window and reconnect Vim I/O to the
-    other window.
-    Wishes for NetBeans commands:
-    - make it possible to have 'defineAnnoType' also handle terminal colors.
-    - send 'balloonText' events for the cursor position (using CursorHold ?)
-      in terminal mode.
 -   ECLIPSE plugin.  Problem is: the interface is very complicated.  Need to
     implement part in Java and then connect to Vim.  Some hints from Alexandru
     Roman, 2004 Dec 15.  Should then also work with Oracle Jdeveloper, see JSR
@@ -3299,9 +3347,6 @@ Most interesting new features to be adde
     scrolls back to where the cursor is.
 -   Scroll commands by screen line. g CTRL-E and g CTRL-Y ?  Requires the
     first line to be able to start halfway.
--   Running a shell command from the GUI still has limitations.  Look into how
-    the terminal emulator of the Vim shell project can help:
-    http://vimshell.wana.at
 8   Add a command to jump to a certain kind of tag.  Allow the user to specify
     values for the optional fields.  E.g., ":tag size type=m".
     Also allow specifying the file and command, so that the result of
@@ -3490,9 +3535,6 @@ 8   Add hl groups to 'spelllang'?
 Diff mode:
 9   When making small changes, e.g. deleting a character, update the diff.
     Possibly without running diff.
-9   Instead invoking an external diff program, use builtin code.  One can be
-    found here: http://www.ioplex.com/~miallen/libmba/dl/src/diff.c
-    It's quite big and badly documented though.
 8   Also show difference with the file when editing started?  Should show what
     can be undone. (Tom Popovich)
 
--- a/runtime/doc/version8.txt
+++ b/runtime/doc/version8.txt
@@ -16827,7 +16827,7 @@ Patch 8.0.0388
 Problem:    filtering lines through "cat", without changing the line count,
             changes manual folds.
 Solution:   Change how marks and folds are adjusted. (Matthew Malcomson, from
-            neovim #6194.
+            neovim #6194).
 Files:      src/fold.c, src/testdir/test_fold.vim
 
 Patch 8.0.0389
@@ -17499,7 +17499,7 @@ Files:      src/evalfunc.c, src/if_xcmds
 
 Patch 8.0.0493
 Problem:    Crash with cd command with very long argument.
-Solution:   Check for running out of space. (Dominique pending, closes #1576)
+Solution:   Check for running out of space. (Dominique Pelle, closes #1576)
 Files:      src/testdir/test_alot.vim, src/testdir/test_cd.vim, src/Makefile,
             src/misc2.c
 
--- 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:	2017 Jun 22
+" Last Change:	2017 Jul 11
 
 " Listen very carefully, I will say this only once
 if exists("did_load_filetypes")
@@ -635,7 +635,13 @@ au BufNewFile,BufRead dict.conf,.dictrc	
 au BufNewFile,BufRead dictd.conf		setf dictdconf
 
 " Diff files
-au BufNewFile,BufRead *.diff,*.rej,*.patch	setf diff
+au BufNewFile,BufRead *.diff,*.rej		setf diff
+au BufNewFile,BufRead *.patch
+	\ if getline(1) =~ '^From [0-9a-f]\{40\} Mon Sep 17 00:00:00 2001$' |
+	\   setf gitsendemail |
+	\ else |
+	\   setf diff |
+	\ endif
 
 " Dircolors
 au BufNewFile,BufRead .dir_colors,.dircolors,*/etc/DIR_COLORS	setf dircolors
@@ -804,6 +810,7 @@ if !empty($XDG_CONFIG_HOME)
   au BufNewFile,BufRead $XDG_CONFIG_HOME/git/config	setf gitconfig
 endif
 au BufNewFile,BufRead git-rebase-todo		setf gitrebase
+au BufRead,BufNewFile .gitsendemail.msg.??????	setf gitsendemail
 au BufNewFile,BufRead .msg.[0-9]*
       \ if getline(1) =~ '^From.*# This line is ignored.$' |
       \   setf gitsendemail |
--- 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:	2017 Mar 06
+" Last Change:	2017 Jul 15
 
 " If there already is an option window, jump to that one.
 if bufwinnr("option-window") > 0
@@ -506,6 +506,14 @@ if has("cursorbind")
   call append("$", "\t(local to window)")
   call <SID>BinOptionL("crb")
 endif
+if has("terminal")
+  call append("$", "termsize\tsize of a terminal window")
+  call append("$", "\t(local to window)")
+  call <SID>OptionL("tms")
+  call append("$", "termkey\tkey that precedes Vim commands in a terminal window")
+  call append("$", "\t(local to window)")
+  call <SID>OptionL("tk")
+endif
 
 
 call <SID>Header("multiple tab pages")
new file mode 100644
--- /dev/null
+++ b/runtime/syntax/murphi.vim
@@ -0,0 +1,127 @@
+" Vim syntax file
+" Language: Murphi model checking language
+" Maintainer: Matthew Fernandez <matthew.fernandez@gmail.com>
+" Last Change: 2017 May 3
+" Version: 2
+" Remark: Originally authored by Diego Ongaro <ongaro@cs.stanford.edu> 
+
+if version < 600
+  syntax clear
+elseif exists("b:current_syntax")
+  finish
+endif
+
+" Keywords are case insensitive.
+" Keep these in alphabetical order.
+syntax case ignore
+syn keyword murphiKeyword       alias
+syn keyword murphiStructure     array
+syn keyword murphiKeyword       assert
+syn keyword murphiKeyword       begin
+syn keyword murphiType          boolean
+syn keyword murphiKeyword       by
+syn keyword murphiLabel         case
+syn keyword murphiKeyword       clear
+syn keyword murphiLabel         const
+syn keyword murphiRepeat        do
+syn keyword murphiConditional   else
+syn keyword murphiConditional   elsif
+syn keyword murphiKeyword       end
+syn keyword murphiKeyword       endalias
+syn keyword murphiRepeat        endexists
+syn keyword murphiRepeat        endfor
+syn keyword murphiRepeat        endforall
+syn keyword murphiKeyword       endfunction
+syn keyword murphiConditional   endif
+syn keyword murphiKeyword       endprocedure
+syn keyword murphiStructure     endrecord
+syn keyword murphiKeyword       endrule
+syn keyword murphiKeyword       endruleset
+syn keyword murphiKeyword       endstartstate
+syn keyword murphiConditional   endswitch
+syn keyword murphiRepeat        endwhile
+syn keyword murphiStructure     enum
+syn keyword murphiKeyword       error
+syn keyword murphiRepeat        exists
+syn keyword murphiBoolean       false
+syn keyword murphiRepeat        for
+syn keyword murphiRepeat        forall
+syn keyword murphiKeyword       function
+syn keyword murphiConditional   if
+syn keyword murphiKeyword       in
+syn keyword murphiKeyword       interleaved
+syn keyword murphiLabel         invariant
+syn keyword murphiFunction      ismember
+syn keyword murphiFunction      isundefined
+syn keyword murphiKeyword       log
+syn keyword murphiStructure     of
+syn keyword murphiType          multiset
+syn keyword murphiFunction      multisetadd
+syn keyword murphiFunction      multisetcount
+syn keyword murphiFunction      multisetremove
+syn keyword murphiFunction      multisetremovepred
+syn keyword murphiKeyword       procedure
+syn keyword murphiKeyword       process
+syn keyword murphiKeyword       program
+syn keyword murphiKeyword       put
+syn keyword murphiStructure     record
+syn keyword murphiKeyword       return
+syn keyword murphiLabel         rule
+syn keyword murphiLabel         ruleset
+syn keyword murphiType          scalarset
+syn keyword murphiLabel         startstate
+syn keyword murphiConditional   switch
+syn keyword murphiConditional   then
+syn keyword murphiRepeat        to
+syn keyword murphiKeyword       traceuntil
+syn keyword murphiBoolean       true
+syn keyword murphiLabel         type
+syn keyword murphiKeyword       undefine
+syn keyword murphiStructure     union
+syn keyword murphiLabel         var
+syn keyword murphiRepeat        while
+
+syn keyword murphiTodo contained todo xxx fixme
+syntax case match
+
+" Integers.
+syn match murphiNumber "\<\d\+\>"
+
+" Operators and special characters.
+syn match murphiOperator "[\+\-\*\/%&|=!<>:\?]\|\."
+syn match murphiDelimiter "\(:[^=]\|[;,]\)"
+syn match murphiSpecial "[()\[\]]"
+
+" Double equal sign is a common error: use one equal sign for equality testing.
+syn match murphiError "==[^>]"he=e-1
+" Double && and || are errors.
+syn match murphiError "&&\|||"
+
+" Strings. This is defined so late so that it overrides previous matches.
+syn region murphiString start=+"+ end=+"+
+
+" Comments. This is defined so late so that it overrides previous matches.
+syn region murphiComment start="--" end="$" contains=murphiTodo
+syn region murphiComment start="/\*" end="\*/" contains=murphiTodo
+
+" Link the rules to some groups.
+highlight link murphiComment        Comment
+highlight link murphiString         String
+highlight link murphiNumber         Number
+highlight link murphiBoolean        Boolean
+highlight link murphiIdentifier     Identifier
+highlight link murphiFunction       Function
+highlight link murphiStatement      Statement
+highlight link murphiConditional    Conditional
+highlight link murphiRepeat         Repeat
+highlight link murphiLabel          Label
+highlight link murphiOperator       Operator
+highlight link murphiKeyword        Keyword
+highlight link murphiType           Type
+highlight link murphiStructure      Structure
+highlight link murphiSpecial        Special
+highlight link murphiDelimiter      Delimiter
+highlight link murphiError          Error
+highlight link murphiTodo           Todo
+
+let b:current_syntax = "murphi"
--- a/runtime/syntax/php.vim
+++ b/runtime/syntax/php.vim
@@ -1,38 +1,38 @@
 " Vim syntax file
 " Language: php PHP 3/4/5/7
 " Maintainer: Jason Woofenden <jason@jasonwoof.com>
-" Last Change: Jun 09, 2017
+" Last Change: Jul 14, 2017
 " URL: https://jasonwoof.com/gitweb/?p=vim-syntax.git;a=blob;f=php.vim;hb=HEAD
 " Former Maintainers: Peter Hodge <toomuchphp-vim@yahoo.com>
 "         Debian VIM Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
 "
-" Note: If you are using a colour terminal with dark background, you will probably find
-"       the 'elflord' colorscheme is much better for PHP's syntax than the default
-"       colourscheme, because elflord's colours will better highlight the break-points
-"       (Statements) in your code.
+" Note: If you are using a colour terminal with dark background, you will
+"       probably find the 'elflord' colorscheme is much better for PHP's syntax
+"       than the default colourscheme, because elflord's colours will better
+"       highlight the break-points (Statements) in your code.
 "
 " Options:
-"    Set to anything to enable:
-"       php_sql_query           SQL syntax highlighting inside strings
-"       php_htmlInStrings       HTML syntax highlighting inside strings
-"       php_baselib             highlighting baselib functions
-"       php_asp_tags            highlighting ASP-style short tags
-"       php_parent_error_close  highlighting parent error ] or )
-"       php_parent_error_open   skipping an php end tag, if there exists
-"                                 an open ( or [ without a closing one
-"       php_oldStyle            use old colorstyle
-"       php_noShortTags         don't sync <? ?> as php
-"    Set to a specific value:
-"       php_folding = 1         fold classes and functions
-"       php_folding = 2         fold all { } regions
-"       php_sync_method = x  where x is an integer:
-"                         -1  sync by search ( default )
-"                         >0  sync at least x lines backwards
-"                         0   sync from start
-"    Set to 0 to _disable_:      (Added by Peter Hodge On June 9, 2006)
-"       php_special_functions = 0      highlight functions with abnormal behaviour
-"       php_alt_comparisons = 0        comparison operators in an alternate colour
-"       php_alt_assignByReference = 0  '= &' in an alternate colour
+"   Set to anything to enable:
+"     php_sql_query           SQL syntax highlighting inside strings
+"     php_htmlInStrings       HTML syntax highlighting inside strings
+"     php_baselib             highlighting baselib functions
+"     php_asp_tags            highlighting ASP-style short tags
+"     php_parent_error_close  highlighting parent error ] or )
+"     php_parent_error_open   skipping an php end tag, if there exists
+"                               an open ( or [ without a closing one
+"     php_oldStyle            use old colorstyle
+"     php_noShortTags         don't sync <? ?> as php
+"   Set to a specific value:
+"     php_folding = 1         fold classes and functions
+"     php_folding = 2         fold all { } regions
+"     php_sync_method = x  where x is an integer:
+"                       -1  sync by search ( default )
+"                       >0  sync at least x lines backwards
+"                       0   sync from start
+"   Set to 0 to _disable_:      (Added by Peter Hodge On June 9, 2006)
+"     php_special_functions = 0      highlight functions with abnormal behaviour
+"     php_alt_comparisons = 0        comparison operators in an alternate colour
+"     php_alt_assignByReference = 0  '= &' in an alternate colour
 "
 "
 " Note:
@@ -101,7 +101,7 @@ syn case match
 syn keyword phpEnvVar GATEWAY_INTERFACE SERVER_NAME SERVER_SOFTWARE SERVER_PROTOCOL REQUEST_METHOD QUERY_STRING DOCUMENT_ROOT HTTP_ACCEPT HTTP_ACCEPT_CHARSET HTTP_ENCODING HTTP_ACCEPT_LANGUAGE HTTP_CONNECTION HTTP_HOST HTTP_REFERER HTTP_USER_AGENT REMOTE_ADDR REMOTE_PORT SCRIPT_FILENAME SERVER_ADMIN SERVER_PORT SERVER_SIGNATURE PATH_TRANSLATED SCRIPT_NAME REQUEST_URI contained
 
 " Internal Variables
-syn keyword phpIntVar GLOBALS PHP_ERRMSG PHP_SELF HTTP_GET_VARS HTTP_POST_VARS HTTP_COOKIE_VARS HTTP_POST_FILES HTTP_ENV_VARS HTTP_SERVER_VARS HTTP_SESSION_VARS HTTP_RAW_POST_DATA HTTP_STATE_VARS _GET _POST _COOKIE _FILES _SERVER _ENV _SERVER _REQUEST _SESSION  contained
+syn keyword phpIntVar GLOBALS PHP_ERRMSG PHP_SELF HTTP_GET_VARS HTTP_POST_VARS HTTP_COOKIE_VARS HTTP_POST_FILES HTTP_ENV_VARS HTTP_SERVER_VARS HTTP_SESSION_VARS HTTP_RAW_POST_DATA HTTP_STATE_VARS _GET _POST _COOKIE _FILES _SERVER _ENV _SERVER _REQUEST _SESSION contained
 
 " Constants
 syn keyword phpCoreConstant PHP_VERSION PHP_OS DEFAULT_INCLUDE_PATH PEAR_INSTALL_DIR PEAR_EXTENSION_DIR PHP_EXTENSION_DIR PHP_BINDIR PHP_LIBDIR PHP_DATADIR PHP_SYSCONFDIR PHP_LOCALSTATEDIR PHP_CONFIG_FILE_PATH PHP_OUTPUT_HANDLER_START PHP_OUTPUT_HANDLER_CONT PHP_OUTPUT_HANDLER_END contained
@@ -112,185 +112,185 @@ syn keyword phpCoreConstant E_ALL E_COMP
 
 syn case ignore
 
-syn keyword phpConstant  __LINE__ __FILE__ __FUNCTION__ __METHOD__ __CLASS__ __DIR__ __NAMESPACE__  contained
+syn keyword phpConstant __LINE__ __FILE__ __FUNCTION__ __METHOD__ __CLASS__ __DIR__ __NAMESPACE__ __TRAIT__ contained
 
 
 " Function and Methods ripped from php_manual_de.tar.gz Jan 2003
-syn keyword phpFunctions  apache_child_terminate apache_get_modules apache_get_version apache_getenv apache_lookup_uri apache_note apache_request_headers apache_response_headers apache_setenv ascii2ebcdic ebcdic2ascii getallheaders virtual contained
-syn keyword phpFunctions  array_change_key_case array_chunk array_column array_combine array_count_values array_diff_assoc array_diff_key array_diff_uassoc array_diff_ukey array_diff array_fill_keys array_fill array_filter array_flip array_intersect_assoc array_intersect_key array_intersect_uassoc array_intersect_ukey array_intersect array_key_exists array_keys array_map array_merge_recursive array_merge array_multisort array_pad array_pop array_product array_push array_rand array_reduce array_replace_recursive array_replace array_reverse array_search array_shift array_slice array_splice array_sum array_udiff_assoc array_udiff_uassoc array_udiff array_uintersect_assoc array_uintersect_uassoc array_uintersect array_unique array_unshift array_values array_walk_recursive array_walk arsort asort count current each end in_array key_exists key krsort ksort natcasesort natsort next pos prev range reset rsort shuffle sizeof sort uasort uksort usort contained
-syn keyword phpFunctions  aspell_check aspell_new aspell_suggest  contained
-syn keyword phpFunctions  bcadd bccomp bcdiv bcmod bcmul bcpow bcpowmod bcscale bcsqrt bcsub  contained
-syn keyword phpFunctions  bzclose bzcompress bzdecompress bzerrno bzerror bzerrstr bzflush bzopen bzread bzwrite  contained
-syn keyword phpFunctions  cal_days_in_month cal_from_jd cal_info cal_to_jd easter_date easter_days frenchtojd gregoriantojd jddayofweek jdmonthname jdtofrench jdtogregorian jdtojewish jdtojulian jdtounix jewishtojd juliantojd unixtojd  contained
-syn keyword phpFunctions  ccvs_add ccvs_auth ccvs_command ccvs_count ccvs_delete ccvs_done ccvs_init ccvs_lookup ccvs_new ccvs_report ccvs_return ccvs_reverse ccvs_sale ccvs_status ccvs_textvalue ccvs_void contained
-syn keyword phpFunctions  call_user_method_array call_user_method class_exists get_class_methods get_class_vars get_class get_declared_classes get_object_vars get_parent_class is_a is_subclass_of method_exists contained
-syn keyword phpFunctions  com VARIANT com_addref com_get com_invoke com_isenum com_load_typelib com_load com_propget com_propput com_propset com_release com_set  contained
-syn keyword phpFunctions  cpdf_add_annotation cpdf_add_outline cpdf_arc cpdf_begin_text cpdf_circle cpdf_clip cpdf_close cpdf_closepath_fill_stroke cpdf_closepath_stroke cpdf_closepath cpdf_continue_text cpdf_curveto cpdf_end_text cpdf_fill_stroke cpdf_fill cpdf_finalize_page cpdf_finalize cpdf_global_set_document_limits cpdf_import_jpeg cpdf_lineto cpdf_moveto cpdf_newpath cpdf_open cpdf_output_buffer cpdf_page_init cpdf_place_inline_image cpdf_rect cpdf_restore cpdf_rlineto cpdf_rmoveto cpdf_rotate_text cpdf_rotate cpdf_save_to_file cpdf_save cpdf_scale cpdf_set_action_url cpdf_set_char_spacing cpdf_set_creator cpdf_set_current_page cpdf_set_font_directories cpdf_set_font_map_file cpdf_set_font cpdf_set_horiz_scaling cpdf_set_keywords cpdf_set_leading cpdf_set_page_animation cpdf_set_subject cpdf_set_text_matrix cpdf_set_text_pos cpdf_set_text_rendering cpdf_set_text_rise cpdf_set_title cpdf_set_viewer_preferences cpdf_set_word_spacing cpdf_setdash cpdf_setflat cpdf_setgray_fill cpdf_setgray_stroke cpdf_setgray cpdf_setlinecap cpdf_setlinejoin cpdf_setlinewidth cpdf_setmiterlimit cpdf_setrgbcolor_fill cpdf_setrgbcolor_stroke cpdf_setrgbcolor cpdf_show_xy cpdf_show cpdf_stringwidth cpdf_stroke cpdf_text cpdf_translate  contained
-syn keyword phpFunctions  crack_check crack_closedict crack_getlastmessage crack_opendict contained
-syn keyword phpFunctions  ctype_alnum ctype_alpha ctype_cntrl ctype_digit ctype_graph ctype_lower ctype_print ctype_punct ctype_space ctype_upper ctype_xdigit  contained
-syn keyword phpFunctions  curl_close curl_errno curl_error curl_exec curl_getinfo curl_init curl_multi_add_handle curl_multi_close curl_multi_exec curl_multi_getcontent curl_multi_info_read curl_multi_init curl_multi_remove_handle curl_multi_select curl_setopt curl_version contained
-syn keyword phpFunctions  cybercash_base64_decode cybercash_base64_encode cybercash_decr cybercash_encr contained
-syn keyword phpFunctions  cyrus_authenticate cyrus_bind cyrus_close cyrus_connect cyrus_query cyrus_unbind  contained
-syn keyword phpFunctions  checkdate date getdate gettimeofday gmdate gmmktime gmstrftime localtime microtime mktime strftime strtotime time contained
-syn keyword phpFunctions  dba_close dba_delete dba_exists dba_fetch dba_firstkey dba_handlers dba_insert dba_key_split dba_list dba_nextkey dba_open dba_optimize dba_popen dba_replace dba_sync  contained
-syn keyword phpFunctions  dbase_add_record dbase_close dbase_create dbase_delete_record dbase_get_header_info dbase_get_record_with_names dbase_get_record dbase_numfields dbase_numrecords dbase_open dbase_pack dbase_replace_record  contained
-syn keyword phpFunctions  dblist dbmclose dbmdelete dbmexists dbmfetch dbmfirstkey dbminsert dbmnextkey dbmopen dbmreplace  contained
-syn keyword phpFunctions  dbplus_add dbplus_aql dbplus_chdir dbplus_close dbplus_curr dbplus_errcode dbplus_errno dbplus_find dbplus_first dbplus_flush dbplus_freealllocks dbplus_freelock dbplus_freerlocks dbplus_getlock dbplus_getunique dbplus_info dbplus_last dbplus_lockrel dbplus_next dbplus_open dbplus_prev dbplus_rchperm dbplus_rcreate dbplus_rcrtexact dbplus_rcrtlike dbplus_resolve dbplus_restorepos dbplus_rkeys dbplus_ropen dbplus_rquery dbplus_rrename dbplus_rsecindex dbplus_runlink dbplus_rzap dbplus_savepos dbplus_setindex dbplus_setindexbynumber dbplus_sql dbplus_tcl dbplus_tremove dbplus_undo dbplus_undoprepare dbplus_unlockrel dbplus_unselect dbplus_update dbplus_xlockrel dbplus_xunlockrel contained
-syn keyword phpFunctions  dbx_close dbx_compare dbx_connect dbx_error dbx_escape_string dbx_fetch_row dbx_query dbx_sort  contained
-syn keyword phpFunctions  dio_close dio_fcntl dio_open dio_read dio_seek dio_stat dio_tcsetattr dio_truncate dio_write  contained
-syn keyword phpFunctions  chdir chroot dir closedir getcwd opendir readdir rewinddir scandir  contained
-syn keyword phpFunctions  domxml_new_doc domxml_open_file domxml_open_mem domxml_version domxml_xmltree domxml_xslt_stylesheet_doc domxml_xslt_stylesheet_file domxml_xslt_stylesheet xpath_eval_expression xpath_eval xpath_new_context xptr_eval xptr_new_context contained
-syn keyword phpMethods  name specified value create_attribute create_cdata_section create_comment create_element_ns create_element create_entity_reference create_processing_instruction create_text_node doctype document_element dump_file dump_mem get_element_by_id get_elements_by_tagname html_dump_mem xinclude entities internal_subset name notations public_id system_id get_attribute_node get_attribute get_elements_by_tagname has_attribute remove_attribute set_attribute tagname add_namespace append_child append_sibling attributes child_nodes clone_node dump_node first_child get_content has_attributes has_child_nodes insert_before is_blank_node last_child next_sibling node_name node_type node_value owner_document parent_node prefix previous_sibling remove_child replace_child replace_node set_content set_name set_namespace unlink_node data target process result_dump_file result_dump_mem contained
-syn keyword phpFunctions  dotnet_load contained
-syn keyword phpFunctions  debug_backtrace debug_print_backtrace error_log error_reporting restore_error_handler set_error_handler trigger_error user_error  contained
-syn keyword phpFunctions  escapeshellarg escapeshellcmd exec passthru proc_close proc_get_status proc_nice proc_open proc_terminate shell_exec system contained
-syn keyword phpFunctions  fam_cancel_monitor fam_close fam_monitor_collection fam_monitor_directory fam_monitor_file fam_next_event fam_open fam_pending fam_resume_monitor fam_suspend_monitor contained
-syn keyword phpFunctions  fbsql_affected_rows fbsql_autocommit fbsql_change_user fbsql_close fbsql_commit fbsql_connect fbsql_create_blob fbsql_create_clob fbsql_create_db fbsql_data_seek fbsql_database_password fbsql_database fbsql_db_query fbsql_db_status fbsql_drop_db fbsql_errno fbsql_error fbsql_fetch_array fbsql_fetch_assoc fbsql_fetch_field fbsql_fetch_lengths fbsql_fetch_object fbsql_fetch_row fbsql_field_flags fbsql_field_len fbsql_field_name fbsql_field_seek fbsql_field_table fbsql_field_type fbsql_free_result fbsql_get_autostart_info fbsql_hostname fbsql_insert_id fbsql_list_dbs fbsql_list_fields fbsql_list_tables fbsql_next_result fbsql_num_fields fbsql_num_rows fbsql_password fbsql_pconnect fbsql_query fbsql_read_blob fbsql_read_clob fbsql_result fbsql_rollback fbsql_select_db fbsql_set_lob_mode fbsql_set_transaction fbsql_start_db fbsql_stop_db fbsql_tablename fbsql_username fbsql_warnings  contained
-syn keyword phpFunctions  fdf_add_doc_javascript fdf_add_template fdf_close fdf_create fdf_enum_values fdf_errno fdf_error fdf_get_ap fdf_get_attachment fdf_get_encoding fdf_get_file fdf_get_flags fdf_get_opt fdf_get_status fdf_get_value fdf_get_version fdf_header fdf_next_field_name fdf_open_string fdf_open fdf_remove_item fdf_save_string fdf_save fdf_set_ap fdf_set_encoding fdf_set_file fdf_set_flags fdf_set_javascript_action fdf_set_opt fdf_set_status fdf_set_submit_form_action fdf_set_target_frame fdf_set_value fdf_set_version  contained
-syn keyword phpFunctions  filepro_fieldcount filepro_fieldname filepro_fieldtype filepro_fieldwidth filepro_retrieve filepro_rowcount filepro contained
-syn keyword phpFunctions  basename chgrp chmod chown clearstatcache copy delete dirname disk_free_space disk_total_space diskfreespace fclose feof fflush fgetc fgetcsv fgets fgetss file_exists file_get_contents file_put_contents file fileatime filectime filegroup fileinode filemtime fileowner fileperms filesize filetype flock fnmatch fopen fpassthru fputs fread fscanf fseek fstat ftell ftruncate fwrite glob is_dir is_executable is_file is_link is_readable is_uploaded_file is_writable is_writeable link linkinfo lstat mkdir move_uploaded_file parse_ini_file pathinfo pclose popen readfile readlink realpath rename rewind rmdir set_file_buffer stat symlink tempnam tmpfile touch umask unlink  contained
-syn keyword phpFunctions  fribidi_log2vis contained
-syn keyword phpFunctions  ftp_alloc ftp_cdup ftp_chdir ftp_chmod ftp_close ftp_connect ftp_delete ftp_exec ftp_fget ftp_fput ftp_get_option ftp_get ftp_login ftp_mdtm ftp_mkdir ftp_nb_continue ftp_nb_fget ftp_nb_fput ftp_nb_get ftp_nb_put ftp_nlist ftp_pasv ftp_put ftp_pwd ftp_quit ftp_raw ftp_rawlist ftp_rename ftp_rmdir ftp_set_option ftp_site ftp_size ftp_ssl_connect ftp_systype  contained
-syn keyword phpFunctions  call_user_func_array call_user_func create_function func_get_arg func_get_args func_num_args function_exists get_defined_functions register_shutdown_function register_tick_function unregister_tick_function contained
-syn keyword phpFunctions  bind_textdomain_codeset bindtextdomain dcgettext dcngettext dgettext dngettext gettext ngettext textdomain  contained
-syn keyword phpFunctions  gmp_abs gmp_add gmp_and gmp_clrbit gmp_cmp gmp_com gmp_div_q gmp_div_qr gmp_div_r gmp_div gmp_divexact gmp_fact gmp_gcd gmp_gcdext gmp_hamdist gmp_init gmp_intval gmp_invert gmp_jacobi gmp_legendre gmp_mod gmp_mul gmp_neg gmp_or gmp_perfect_square gmp_popcount gmp_pow gmp_powm gmp_prob_prime gmp_random gmp_scan0 gmp_scan1 gmp_setbit gmp_sign gmp_sqrt gmp_sqrtrem gmp_sqrtrm gmp_strval gmp_sub gmp_xor  contained
-syn keyword phpFunctions  header headers_list headers_sent setcookie  contained
-syn keyword phpFunctions  hw_api_attribute hwapi_hgcsp hw_api_content hw_api_object contained
-syn keyword phpMethods  key langdepvalue value values checkin checkout children mimetype read content copy dbstat dcstat dstanchors dstofsrcanchors count reason find ftstat hwstat identify info insert insertanchor insertcollection insertdocument link lock move assign attreditable count insert remove title value object objectbyanchor parents description type remove replace setcommitedversion srcanchors srcsofdst unlock user userlist contained
-syn keyword phpFunctions  hw_Array2Objrec hw_changeobject hw_Children hw_ChildrenObj hw_Close hw_Connect hw_connection_info hw_cp hw_Deleteobject hw_DocByAnchor hw_DocByAnchorObj hw_Document_Attributes hw_Document_BodyTag hw_Document_Content hw_Document_SetContent hw_Document_Size hw_dummy hw_EditText hw_Error hw_ErrorMsg hw_Free_Document hw_GetAnchors hw_GetAnchorsObj hw_GetAndLock hw_GetChildColl hw_GetChildCollObj hw_GetChildDocColl hw_GetChildDocCollObj hw_GetObject hw_GetObjectByQuery hw_GetObjectByQueryColl hw_GetObjectByQueryCollObj hw_GetObjectByQueryObj hw_GetParents hw_GetParentsObj hw_getrellink hw_GetRemote hw_getremotechildren hw_GetSrcByDestObj hw_GetText hw_getusername hw_Identify hw_InCollections hw_Info hw_InsColl hw_InsDoc hw_insertanchors hw_InsertDocument hw_InsertObject hw_mapid hw_Modifyobject hw_mv hw_New_Document hw_objrec2array hw_Output_Document hw_pConnect hw_PipeDocument hw_Root hw_setlinkroot hw_stat hw_Unlock hw_Who contained
-syn keyword phpFunctions  ibase_add_user ibase_affected_rows ibase_blob_add ibase_blob_cancel ibase_blob_close ibase_blob_create ibase_blob_echo ibase_blob_get ibase_blob_import ibase_blob_info ibase_blob_open ibase_close ibase_commit_ret ibase_commit ibase_connect ibase_delete_user ibase_drop_db ibase_errcode ibase_errmsg ibase_execute ibase_fetch_assoc ibase_fetch_object ibase_fetch_row ibase_field_info ibase_free_event_handler ibase_free_query ibase_free_result ibase_gen_id ibase_modify_user ibase_name_result ibase_num_fields ibase_num_params ibase_param_info ibase_pconnect ibase_prepare ibase_query ibase_rollback_ret ibase_rollback ibase_set_event_handler ibase_timefmt ibase_trans ibase_wait_event  contained
-syn keyword phpFunctions  iconv_get_encoding iconv_mime_decode_headers iconv_mime_decode iconv_mime_encode iconv_set_encoding iconv_strlen iconv_strpos iconv_strrpos iconv_substr iconv ob_iconv_handler contained
-syn keyword phpFunctions  ifx_affected_rows ifx_blobinfile_mode ifx_byteasvarchar ifx_close ifx_connect ifx_copy_blob ifx_create_blob ifx_create_char ifx_do ifx_error ifx_errormsg ifx_fetch_row ifx_fieldproperties ifx_fieldtypes ifx_free_blob ifx_free_char ifx_free_result ifx_get_blob ifx_get_char ifx_getsqlca ifx_htmltbl_result ifx_nullformat ifx_num_fields ifx_num_rows ifx_pconnect ifx_prepare ifx_query ifx_textasvarchar ifx_update_blob ifx_update_char ifxus_close_slob ifxus_create_slob ifxus_free_slob ifxus_open_slob ifxus_read_slob ifxus_seek_slob ifxus_tell_slob ifxus_write_slob  contained
-syn keyword phpFunctions  exif_imagetype exif_read_data exif_thumbnail gd_info getimagesize image_type_to_mime_type image2wbmp imagealphablending imageantialias imagearc imagechar imagecharup imagecolorallocate imagecolorallocatealpha imagecolorat imagecolorclosest imagecolorclosestalpha imagecolorclosesthwb imagecolordeallocate imagecolorexact imagecolorexactalpha imagecolormatch imagecolorresolve imagecolorresolvealpha imagecolorset imagecolorsforindex imagecolorstotal imagecolortransparent imagecopy imagecopymerge imagecopymergegray imagecopyresampled imagecopyresized imagecreate imagecreatefromgd2 imagecreatefromgd2part imagecreatefromgd imagecreatefromgif imagecreatefromjpeg imagecreatefrompng imagecreatefromstring imagecreatefromwbmp imagecreatefromxbm imagecreatefromxpm imagecreatetruecolor imagedashedline imagedestroy imageellipse imagefill imagefilledarc imagefilledellipse imagefilledpolygon imagefilledrectangle imagefilltoborder imagefontheight imagefontwidth imageftbbox imagefttext imagegammacorrect imagegd2 imagegd imagegif imageinterlace imageistruecolor imagejpeg imageline imageloadfont imagepalettecopy imagepng imagepolygon imagepsbbox imagepscopyfont imagepsencodefont imagepsextendfont imagepsfreefont imagepsloadfont imagepsslantfont imagepstext imagerectangle imagerotate imagesavealpha imagesetbrush imagesetpixel imagesetstyle imagesetthickness imagesettile imagestring imagestringup imagesx imagesy imagetruecolortopalette imagettfbbox imagettftext imagetypes imagewbmp iptcembed iptcparse jpeg2wbmp png2wbmp read_exif_data contained
-syn keyword phpFunctions  imap_8bit imap_alerts imap_append imap_base64 imap_binary imap_body imap_bodystruct imap_check imap_clearflag_full imap_close imap_createmailbox imap_delete imap_deletemailbox imap_errors imap_expunge imap_fetch_overview imap_fetchbody imap_fetchheader imap_fetchstructure imap_get_quota imap_get_quotaroot imap_getacl imap_getmailboxes imap_getsubscribed imap_header imap_headerinfo imap_headers imap_last_error imap_list imap_listmailbox imap_listscan imap_listsubscribed imap_lsub imap_mail_compose imap_mail_copy imap_mail_move imap_mail imap_mailboxmsginfo imap_mime_header_decode imap_msgno imap_num_msg imap_num_recent imap_open imap_ping imap_qprint imap_renamemailbox imap_reopen imap_rfc822_parse_adrlist imap_rfc822_parse_headers imap_rfc822_write_address imap_scanmailbox imap_search imap_set_quota imap_setacl imap_setflag_full imap_sort imap_status imap_subscribe imap_thread imap_timeout imap_uid imap_undelete imap_unsubscribe imap_utf7_decode imap_utf7_encode imap_utf8  contained
-syn keyword phpFunctions  assert_options assert dl extension_loaded get_cfg_var get_current_user get_defined_constants get_extension_funcs get_include_path get_included_files get_loaded_extensions get_magic_quotes_gpc get_magic_quotes_runtime get_required_files getenv getlastmod getmygid getmyinode getmypid getmyuid getopt getrusage ini_alter ini_get_all ini_get ini_restore ini_set main memory_get_usage php_ini_scanned_files php_logo_guid php_sapi_name php_uname phpcredits phpinfo phpversion putenv restore_include_path set_include_path set_magic_quotes_runtime set_time_limit version_compare zend_logo_guid zend_version contained
-syn keyword phpFunctions  ingres_autocommit ingres_close ingres_commit ingres_connect ingres_fetch_array ingres_fetch_object ingres_fetch_row ingres_field_length ingres_field_name ingres_field_nullable ingres_field_precision ingres_field_scale ingres_field_type ingres_num_fields ingres_num_rows ingres_pconnect ingres_query ingres_rollback  contained
-syn keyword phpFunctions  ircg_channel_mode ircg_disconnect ircg_fetch_error_msg ircg_get_username ircg_html_encode ircg_ignore_add ircg_ignore_del ircg_is_conn_alive ircg_join ircg_kick ircg_lookup_format_messages ircg_msg ircg_nick ircg_nickname_escape ircg_nickname_unescape ircg_notice ircg_part ircg_pconnect ircg_register_format_messages ircg_set_current ircg_set_file ircg_set_on_die ircg_topic ircg_whois  contained
-syn keyword phpFunctions  java_last_exception_clear java_last_exception_get contained
-syn keyword phpFunctions  json_decode json_encode json_last_error contained
-syn keyword phpFunctions  ldap_8859_to_t61 ldap_add ldap_bind ldap_close ldap_compare ldap_connect ldap_count_entries ldap_delete ldap_dn2ufn ldap_err2str ldap_errno ldap_error ldap_explode_dn ldap_first_attribute ldap_first_entry ldap_first_reference ldap_free_result ldap_get_attributes ldap_get_dn ldap_get_entries ldap_get_option ldap_get_values_len ldap_get_values ldap_list ldap_mod_add ldap_mod_del ldap_mod_replace ldap_modify ldap_next_attribute ldap_next_entry ldap_next_reference ldap_parse_reference ldap_parse_result ldap_read ldap_rename ldap_search ldap_set_option ldap_set_rebind_proc ldap_sort ldap_start_tls ldap_t61_to_8859 ldap_unbind  contained
-syn keyword phpFunctions  lzf_compress lzf_decompress lzf_optimized_for contained
-syn keyword phpFunctions  ezmlm_hash mail contained
-syn keyword phpFunctions  mailparse_determine_best_xfer_encoding mailparse_msg_create mailparse_msg_extract_part_file mailparse_msg_extract_part mailparse_msg_free mailparse_msg_get_part_data mailparse_msg_get_part mailparse_msg_get_structure mailparse_msg_parse_file mailparse_msg_parse mailparse_rfc822_parse_addresses mailparse_stream_encode mailparse_uudecode_all contained
-syn keyword phpFunctions  abs acos acosh asin asinh atan2 atan atanh base_convert bindec ceil cos cosh decbin dechex decoct deg2rad exp expm1 floor fmod getrandmax hexdec hypot is_finite is_infinite is_nan lcg_value log10 log1p log max min mt_getrandmax mt_rand mt_srand octdec pi pow rad2deg rand round sin sinh sqrt srand tan tanh  contained
-syn keyword phpFunctions  mb_convert_case mb_convert_encoding mb_convert_kana mb_convert_variables mb_decode_mimeheader mb_decode_numericentity mb_detect_encoding mb_detect_order mb_encode_mimeheader mb_encode_numericentity mb_ereg_match mb_ereg_replace mb_ereg_search_getpos mb_ereg_search_getregs mb_ereg_search_init mb_ereg_search_pos mb_ereg_search_regs mb_ereg_search_setpos mb_ereg_search mb_ereg mb_eregi_replace mb_eregi mb_get_info mb_http_input mb_http_output mb_internal_encoding mb_language mb_output_handler mb_parse_str mb_preferred_mime_name mb_regex_encoding mb_regex_set_options mb_send_mail mb_split mb_strcut mb_strimwidth mb_strlen mb_strpos mb_strrpos mb_strtolower mb_strtoupper mb_strwidth mb_substitute_character mb_substr_count mb_substr  contained
-syn keyword phpFunctions  mcal_append_event mcal_close mcal_create_calendar mcal_date_compare mcal_date_valid mcal_day_of_week mcal_day_of_year mcal_days_in_month mcal_delete_calendar mcal_delete_event mcal_event_add_attribute mcal_event_init mcal_event_set_alarm mcal_event_set_category mcal_event_set_class mcal_event_set_description mcal_event_set_end mcal_event_set_recur_daily mcal_event_set_recur_monthly_mday mcal_event_set_recur_monthly_wday mcal_event_set_recur_none mcal_event_set_recur_weekly mcal_event_set_recur_yearly mcal_event_set_start mcal_event_set_title mcal_expunge mcal_fetch_current_stream_event mcal_fetch_event mcal_is_leap_year mcal_list_alarms mcal_list_events mcal_next_recurrence mcal_open mcal_popen mcal_rename_calendar mcal_reopen mcal_snooze mcal_store_event mcal_time_valid mcal_week_of_year contained
-syn keyword phpFunctions  mcrypt_cbc mcrypt_cfb mcrypt_create_iv mcrypt_decrypt mcrypt_ecb mcrypt_enc_get_algorithms_name mcrypt_enc_get_block_size mcrypt_enc_get_iv_size mcrypt_enc_get_key_size mcrypt_enc_get_modes_name mcrypt_enc_get_supported_key_sizes mcrypt_enc_is_block_algorithm_mode mcrypt_enc_is_block_algorithm mcrypt_enc_is_block_mode mcrypt_enc_self_test mcrypt_encrypt mcrypt_generic_deinit mcrypt_generic_end mcrypt_generic_init mcrypt_generic mcrypt_get_block_size mcrypt_get_cipher_name mcrypt_get_iv_size mcrypt_get_key_size mcrypt_list_algorithms mcrypt_list_modes mcrypt_module_close mcrypt_module_get_algo_block_size mcrypt_module_get_algo_key_size mcrypt_module_get_supported_key_sizes mcrypt_module_is_block_algorithm_mode mcrypt_module_is_block_algorithm mcrypt_module_is_block_mode mcrypt_module_open mcrypt_module_self_test mcrypt_ofb mdecrypt_generic  contained
-syn keyword phpFunctions  mcve_adduser mcve_adduserarg mcve_bt mcve_checkstatus mcve_chkpwd mcve_chngpwd mcve_completeauthorizations mcve_connect mcve_connectionerror mcve_deleteresponse mcve_deletetrans mcve_deleteusersetup mcve_deluser mcve_destroyconn mcve_destroyengine mcve_disableuser mcve_edituser mcve_enableuser mcve_force mcve_getcell mcve_getcellbynum mcve_getcommadelimited mcve_getheader mcve_getuserarg mcve_getuserparam mcve_gft mcve_gl mcve_gut mcve_initconn mcve_initengine mcve_initusersetup mcve_iscommadelimited mcve_liststats mcve_listusers mcve_maxconntimeout mcve_monitor mcve_numcolumns mcve_numrows mcve_override mcve_parsecommadelimited mcve_ping mcve_preauth mcve_preauthcompletion mcve_qc mcve_responseparam mcve_return mcve_returncode mcve_returnstatus mcve_sale mcve_setblocking mcve_setdropfile mcve_setip mcve_setssl_files mcve_setssl mcve_settimeout mcve_settle mcve_text_avs mcve_text_code mcve_text_cv mcve_transactionauth mcve_transactionavs mcve_transactionbatch mcve_transactioncv mcve_transactionid mcve_transactionitem mcve_transactionssent mcve_transactiontext mcve_transinqueue mcve_transnew mcve_transparam mcve_transsend mcve_ub mcve_uwait mcve_verifyconnection mcve_verifysslcert mcve_void  contained
-syn keyword phpFunctions  mhash_count mhash_get_block_size mhash_get_hash_name mhash_keygen_s2k mhash contained
-syn keyword phpFunctions  mime_content_type contained
-syn keyword phpFunctions  ming_setcubicthreshold ming_setscale ming_useswfversion SWFAction SWFBitmap swfbutton_keypress SWFbutton SWFDisplayItem SWFFill SWFFont SWFGradient SWFMorph SWFMovie SWFShape SWFSprite SWFText SWFTextField contained
-syn keyword phpMethods  getHeight getWidth addAction addShape setAction setdown setHit setOver setUp addColor move moveTo multColor remove Rotate rotateTo scale scaleTo setDepth setName setRatio skewX skewXTo skewY skewYTo moveTo rotateTo scaleTo skewXTo skewYTo getwidth addEntry getshape1 getshape2 add nextframe output remove save setbackground setdimension setframes setrate streammp3 addFill drawCurve drawCurveTo drawLine drawLineTo movePen movePenTo setLeftFill setLine setRightFill add nextframe remove setframes addString getWidth moveTo setColor setFont setHeight setSpacing addstring align setbounds setcolor setFont setHeight setindentation setLeftMargin setLineSpacing setMargins setname setrightMargin contained
-syn keyword phpFunctions  connection_aborted connection_status connection_timeout constant define defined die eval exit get_browser highlight_file highlight_string ignore_user_abort pack show_source sleep uniqid unpack usleep contained
-syn keyword phpFunctions  udm_add_search_limit udm_alloc_agent udm_api_version udm_cat_list udm_cat_path udm_check_charset udm_check_stored udm_clear_search_limits udm_close_stored udm_crc32 udm_errno udm_error udm_find udm_free_agent udm_free_ispell_data udm_free_res udm_get_doc_count udm_get_res_field udm_get_res_param udm_load_ispell_data udm_open_stored udm_set_agent_param contained
-syn keyword phpFunctions  msession_connect msession_count msession_create msession_destroy msession_disconnect msession_find msession_get_array msession_get msession_getdata msession_inc msession_list msession_listvar msession_lock msession_plugin msession_randstr msession_set_array msession_set msession_setdata msession_timeout msession_uniq msession_unlock  contained
-syn keyword phpFunctions  msql_affected_rows msql_close msql_connect msql_create_db msql_createdb msql_data_seek msql_dbname msql_drop_db msql_dropdb msql_error msql_fetch_array msql_fetch_field msql_fetch_object msql_fetch_row msql_field_seek msql_fieldflags msql_fieldlen msql_fieldname msql_fieldtable msql_fieldtype msql_free_result msql_freeresult msql_list_dbs msql_list_fields msql_list_tables msql_listdbs msql_listfields msql_listtables msql_num_fields msql_num_rows msql_numfields msql_numrows msql_pconnect msql_query msql_regcase msql_result msql_select_db msql_selectdb msql_tablename msql  contained
-syn keyword phpFunctions  mssql_bind mssql_close mssql_connect mssql_data_seek mssql_execute mssql_fetch_array mssql_fetch_assoc mssql_fetch_batch mssql_fetch_field mssql_fetch_object mssql_fetch_row mssql_field_length mssql_field_name mssql_field_seek mssql_field_type mssql_free_result mssql_free_statement mssql_get_last_message mssql_guid_string mssql_init mssql_min_error_severity mssql_min_message_severity mssql_next_result mssql_num_fields mssql_num_rows mssql_pconnect mssql_query mssql_result mssql_rows_affected mssql_select_db  contained
-syn keyword phpFunctions  muscat_close muscat_get muscat_give muscat_setup_net muscat_setup contained
-syn keyword phpFunctions  mysql_affected_rows mysql_change_user mysql_client_encoding mysql_close mysql_connect mysql_create_db mysql_data_seek mysql_db_name mysql_db_query mysql_drop_db mysql_errno mysql_error mysql_escape_string mysql_fetch_array mysql_fetch_assoc mysql_fetch_field mysql_fetch_lengths mysql_fetch_object mysql_fetch_row mysql_field_flags mysql_field_len mysql_field_name mysql_field_seek mysql_field_table mysql_field_type mysql_free_result mysql_get_client_info mysql_get_host_info mysql_get_proto_info mysql_get_server_info mysql_info mysql_insert_id mysql_list_dbs mysql_list_fields mysql_list_processes mysql_list_tables mysql_num_fields mysql_num_rows mysql_pconnect mysql_ping mysql_query mysql_real_escape_string mysql_result mysql_select_db mysql_stat mysql_tablename mysql_thread_id mysql_unbuffered_query  contained
-syn keyword phpFunctions  mysqli_affected_rows mysqli_autocommit mysqli_bind_param mysqli_bind_result mysqli_change_user mysqli_character_set_name mysqli_close mysqli_commit mysqli_connect mysqli_data_seek mysqli_debug mysqli_disable_reads_from_master mysqli_disable_rpl_parse mysqli_dump_debug_info mysqli_enable_reads_from_master mysqli_enable_rpl_parse mysqli_errno mysqli_error mysqli_execute mysqli_fetch_array mysqli_fetch_assoc mysqli_fetch_field_direct mysqli_fetch_field mysqli_fetch_fields mysqli_fetch_lengths mysqli_fetch_object mysqli_fetch_row mysqli_fetch mysqli_field_count mysqli_field_seek mysqli_field_tell mysqli_free_result mysqli_get_client_info mysqli_get_host_info mysqli_get_proto_info mysqli_get_server_info mysqli_get_server_version mysqli_info mysqli_init mysqli_insert_id mysqli_kill mysqli_master_query mysqli_num_fields mysqli_num_rows mysqli_options mysqli_param_count mysqli_ping mysqli_prepare_result mysqli_prepare mysqli_profiler mysqli_query mysqli_read_query_result mysqli_real_connect mysqli_real_escape_string mysqli_real_query mysqli_reload mysqli_rollback mysqli_rpl_parse_enabled mysqli_rpl_probe mysqli_rpl_query_type mysqli_select_db mysqli_send_long_data mysqli_send_query mysqli_slave_query mysqli_ssl_set mysqli_stat mysqli_stmt_affected_rows mysqli_stmt_close mysqli_stmt_errno mysqli_stmt_error mysqli_stmt_store_result mysqli_store_result mysqli_thread_id mysqli_thread_safe mysqli_use_result mysqli_warning_count  contained
-syn keyword phpFunctions  ncurses_addch ncurses_addchnstr ncurses_addchstr ncurses_addnstr ncurses_addstr ncurses_assume_default_colors ncurses_attroff ncurses_attron ncurses_attrset ncurses_baudrate ncurses_beep ncurses_bkgd ncurses_bkgdset ncurses_border ncurses_bottom_panel ncurses_can_change_color ncurses_cbreak ncurses_clear ncurses_clrtobot ncurses_clrtoeol ncurses_color_content ncurses_color_set ncurses_curs_set ncurses_def_prog_mode ncurses_def_shell_mode ncurses_define_key ncurses_del_panel ncurses_delay_output ncurses_delch ncurses_deleteln ncurses_delwin ncurses_doupdate ncurses_echo ncurses_echochar ncurses_end ncurses_erase ncurses_erasechar ncurses_filter ncurses_flash ncurses_flushinp ncurses_getch ncurses_getmaxyx ncurses_getmouse ncurses_getyx ncurses_halfdelay ncurses_has_colors ncurses_has_ic ncurses_has_il ncurses_has_key ncurses_hide_panel ncurses_hline ncurses_inch ncurses_init_color ncurses_init_pair ncurses_init ncurses_insch ncurses_insdelln ncurses_insertln ncurses_insstr ncurses_instr ncurses_isendwin ncurses_keyok ncurses_keypad ncurses_killchar ncurses_longname ncurses_meta ncurses_mouse_trafo ncurses_mouseinterval ncurses_mousemask ncurses_move_panel ncurses_move ncurses_mvaddch ncurses_mvaddchnstr ncurses_mvaddchstr ncurses_mvaddnstr ncurses_mvaddstr ncurses_mvcur ncurses_mvdelch ncurses_mvgetch ncurses_mvhline ncurses_mvinch ncurses_mvvline ncurses_mvwaddstr ncurses_napms ncurses_new_panel ncurses_newpad ncurses_newwin ncurses_nl ncurses_nocbreak ncurses_noecho ncurses_nonl ncurses_noqiflush ncurses_noraw ncurses_pair_content ncurses_panel_above ncurses_panel_below ncurses_panel_window ncurses_pnoutrefresh ncurses_prefresh ncurses_putp ncurses_qiflush ncurses_raw ncurses_refresh ncurses_replace_panel ncurses_reset_prog_mode ncurses_reset_shell_mode ncurses_resetty ncurses_savetty ncurses_scr_dump ncurses_scr_init ncurses_scr_restore ncurses_scr_set ncurses_scrl ncurses_show_panel ncurses_slk_attr ncurses_slk_attroff ncurses_slk_attron ncurses_slk_attrset ncurses_slk_clear ncurses_slk_color ncurses_slk_init ncurses_slk_noutrefresh ncurses_slk_refresh ncurses_slk_restore ncurses_slk_set ncurses_slk_touch ncurses_standend ncurses_standout ncurses_start_color ncurses_termattrs ncurses_termname ncurses_timeout ncurses_top_panel ncurses_typeahead ncurses_ungetch ncurses_ungetmouse ncurses_update_panels ncurses_use_default_colors ncurses_use_env ncurses_use_extended_names ncurses_vidattr ncurses_vline ncurses_waddch ncurses_waddstr ncurses_wattroff ncurses_wattron ncurses_wattrset ncurses_wborder ncurses_wclear ncurses_wcolor_set ncurses_werase ncurses_wgetch ncurses_whline ncurses_wmouse_trafo ncurses_wmove ncurses_wnoutrefresh ncurses_wrefresh ncurses_wstandend ncurses_wstandout ncurses_wvline contained
-syn keyword phpFunctions  checkdnsrr closelog debugger_off debugger_on define_syslog_variables dns_check_record dns_get_mx dns_get_record fsockopen gethostbyaddr gethostbyname gethostbynamel getmxrr getprotobyname getprotobynumber getservbyname getservbyport ip2long long2ip openlog pfsockopen socket_get_status socket_set_blocking socket_set_timeout syslog contained
-syn keyword phpFunctions  yp_all yp_cat yp_err_string yp_errno yp_first yp_get_default_domain yp_master yp_match yp_next yp_order contained
-syn keyword phpFunctions  notes_body notes_copy_db notes_create_db notes_create_note notes_drop_db notes_find_note notes_header_info notes_list_msgs notes_mark_read notes_mark_unread notes_nav_create notes_search notes_unread notes_version contained
-syn keyword phpFunctions  nsapi_request_headers nsapi_response_headers nsapi_virtual  contained
-syn keyword phpFunctions  aggregate_info aggregate_methods_by_list aggregate_methods_by_regexp aggregate_methods aggregate_properties_by_list aggregate_properties_by_regexp aggregate_properties aggregate aggregation_info deaggregate  contained
-syn keyword phpFunctions  ocibindbyname ocicancel ocicloselob ocicollappend ocicollassign ocicollassignelem ocicollgetelem ocicollmax ocicollsize ocicolltrim ocicolumnisnull ocicolumnname ocicolumnprecision ocicolumnscale ocicolumnsize ocicolumntype ocicolumntyperaw ocicommit ocidefinebyname ocierror ociexecute ocifetch ocifetchinto ocifetchstatement ocifreecollection ocifreecursor ocifreedesc ocifreestatement ociinternaldebug ociloadlob ocilogoff ocilogon ocinewcollection ocinewcursor ocinewdescriptor ocinlogon ocinumcols ociparse ociplogon ociresult ocirollback ocirowcount ocisavelob ocisavelobfile ociserverversion ocisetprefetch ocistatementtype ociwritelobtofile ociwritetemporarylob contained
-syn keyword phpFunctions  odbc_autocommit odbc_binmode odbc_close_all odbc_close odbc_columnprivileges odbc_columns odbc_commit odbc_connect odbc_cursor odbc_data_source odbc_do odbc_error odbc_errormsg odbc_exec odbc_execute odbc_fetch_array odbc_fetch_into odbc_fetch_object odbc_fetch_row odbc_field_len odbc_field_name odbc_field_num odbc_field_precision odbc_field_scale odbc_field_type odbc_foreignkeys odbc_free_result odbc_gettypeinfo odbc_longreadlen odbc_next_result odbc_num_fields odbc_num_rows odbc_pconnect odbc_prepare odbc_primarykeys odbc_procedurecolumns odbc_procedures odbc_result_all odbc_result odbc_rollback odbc_setoption odbc_specialcolumns odbc_statistics odbc_tableprivileges odbc_tables  contained
-syn keyword phpFunctions  openssl_cipher_iv_length openssl_csr_export_to_file openssl_csr_export openssl_csr_get_public_key openssl_csr_get_subject openssl_csr_new openssl_csr_sign openssl_decrypt openssl_dh_compute_key openssl_digest openssl_encrypt openssl_error_string openssl_free_key openssl_get_cert_locations openssl_get_cipher_methods openssl_get_md_methods openssl_get_privatekey openssl_get_publickey openssl_open openssl_pbkdf2 openssl_pkcs12_export_to_file openssl_pkcs12_export openssl_pkcs12_read openssl_pkcs7_decrypt openssl_pkcs7_encrypt openssl_pkcs7_sign openssl_pkcs7_verify openssl_pkey_export_to_file openssl_pkey_export openssl_pkey_free openssl_pkey_get_details openssl_pkey_get_private openssl_pkey_get_public openssl_pkey_new openssl_private_decrypt openssl_private_encrypt openssl_public_decrypt openssl_public_encrypt openssl_random_pseudo_bytes openssl_seal openssl_sign openssl_spki_export_challenge openssl_spki_export openssl_spki_new openssl_spki_verify openssl_verify openssl_x509_check_private_key openssl_x509_checkpurpose openssl_x509_export_to_file openssl_x509_export openssl_x509_fingerprint openssl_x509_free openssl_x509_parse openssl_x509_read  contained
-syn keyword phpFunctions  ora_bind ora_close ora_columnname ora_columnsize ora_columntype ora_commit ora_commitoff ora_commiton ora_do ora_error ora_errorcode ora_exec ora_fetch_into ora_fetch ora_getcolumn ora_logoff ora_logon ora_numcols ora_numrows ora_open ora_parse ora_plogon ora_rollback  contained
-syn keyword phpFunctions  flush ob_clean ob_end_clean ob_end_flush ob_flush ob_get_clean ob_get_contents ob_get_flush ob_get_length ob_get_level ob_get_status ob_gzhandler ob_implicit_flush ob_list_handlers ob_start output_add_rewrite_var output_reset_rewrite_vars  contained
-syn keyword phpFunctions  overload  contained
-syn keyword phpFunctions  ovrimos_close ovrimos_commit ovrimos_connect ovrimos_cursor ovrimos_exec ovrimos_execute ovrimos_fetch_into ovrimos_fetch_row ovrimos_field_len ovrimos_field_name ovrimos_field_num ovrimos_field_type ovrimos_free_result ovrimos_longreadlen ovrimos_num_fields ovrimos_num_rows ovrimos_prepare ovrimos_result_all ovrimos_result ovrimos_rollback  contained
-syn keyword phpFunctions  pcntl_exec pcntl_fork pcntl_signal pcntl_waitpid pcntl_wexitstatus pcntl_wifexited pcntl_wifsignaled pcntl_wifstopped pcntl_wstopsig pcntl_wtermsig contained
-syn keyword phpFunctions  preg_grep preg_match_all preg_match preg_quote preg_replace_callback preg_replace preg_split  contained
-syn keyword phpFunctions  pdf_add_annotation pdf_add_bookmark pdf_add_launchlink pdf_add_locallink pdf_add_note pdf_add_outline pdf_add_pdflink pdf_add_thumbnail pdf_add_weblink pdf_arc pdf_arcn pdf_attach_file pdf_begin_page pdf_begin_pattern pdf_begin_template pdf_circle pdf_clip pdf_close_image pdf_close_pdi_page pdf_close_pdi pdf_close pdf_closepath_fill_stroke pdf_closepath_stroke pdf_closepath pdf_concat pdf_continue_text pdf_curveto pdf_delete pdf_end_page pdf_end_pattern pdf_end_template pdf_endpath pdf_fill_stroke pdf_fill pdf_findfont pdf_get_buffer pdf_get_font pdf_get_fontname pdf_get_fontsize pdf_get_image_height pdf_get_image_width pdf_get_majorversion pdf_get_minorversion pdf_get_parameter pdf_get_pdi_parameter pdf_get_pdi_value pdf_get_value pdf_initgraphics pdf_lineto pdf_makespotcolor pdf_moveto pdf_new pdf_open_CCITT pdf_open_file pdf_open_gif pdf_open_image_file pdf_open_image pdf_open_jpeg pdf_open_memory_image pdf_open_pdi_page pdf_open_pdi pdf_open_png pdf_open_tiff pdf_open pdf_place_image pdf_place_pdi_page pdf_rect pdf_restore pdf_rotate pdf_save pdf_scale pdf_set_border_color pdf_set_border_dash pdf_set_border_style pdf_set_char_spacing pdf_set_duration pdf_set_font pdf_set_horiz_scaling pdf_set_info_author pdf_set_info_creator pdf_set_info_keywords pdf_set_info_subject pdf_set_info_title pdf_set_info pdf_set_leading pdf_set_parameter pdf_set_text_matrix pdf_set_text_pos pdf_set_text_rendering pdf_set_text_rise pdf_set_value pdf_set_word_spacing pdf_setcolor pdf_setdash pdf_setflat pdf_setfont pdf_setgray_fill pdf_setgray_stroke pdf_setgray pdf_setlinecap pdf_setlinejoin pdf_setlinewidth pdf_setmatrix pdf_setmiterlimit pdf_setpolydash pdf_setrgbcolor_fill pdf_setrgbcolor_stroke pdf_setrgbcolor pdf_show_boxed pdf_show_xy pdf_show pdf_skew pdf_stringwidth pdf_stroke pdf_translate contained
-syn keyword phpFunctions  pfpro_cleanup pfpro_init pfpro_process_raw pfpro_process pfpro_version  contained
-syn keyword phpFunctions  pg_affected_rows pg_cancel_query pg_client_encoding pg_close pg_connect pg_connection_busy pg_connection_reset pg_connection_status pg_convert pg_copy_from pg_copy_to pg_dbname pg_delete pg_end_copy pg_escape_bytea pg_escape_string pg_fetch_all pg_fetch_array pg_fetch_assoc pg_fetch_object pg_fetch_result pg_fetch_row pg_field_is_null pg_field_name pg_field_num pg_field_prtlen pg_field_size pg_field_type pg_free_result pg_get_notify pg_get_pid pg_get_result pg_host pg_insert pg_last_error pg_last_notice pg_last_oid pg_lo_close pg_lo_create pg_lo_export pg_lo_import pg_lo_open pg_lo_read_all pg_lo_read pg_lo_seek pg_lo_tell pg_lo_unlink pg_lo_write pg_meta_data pg_num_fields pg_num_rows pg_options pg_pconnect pg_ping pg_port pg_put_line pg_query pg_result_error pg_result_seek pg_result_status pg_select pg_send_query pg_set_client_encoding pg_trace pg_tty pg_unescape_bytea pg_untrace pg_update  contained
-syn keyword phpFunctions  posix_ctermid posix_get_last_error posix_getcwd posix_getegid posix_geteuid posix_getgid posix_getgrgid posix_getgrnam posix_getgroups posix_getlogin posix_getpgid posix_getpgrp posix_getpid posix_getppid posix_getpwnam posix_getpwuid posix_getrlimit posix_getsid posix_getuid posix_isatty posix_kill posix_mkfifo posix_setegid posix_seteuid posix_setgid posix_setpgid posix_setsid posix_setuid posix_strerror posix_times posix_ttyname posix_uname contained
-syn keyword phpFunctions  printer_abort printer_close printer_create_brush printer_create_dc printer_create_font printer_create_pen printer_delete_brush printer_delete_dc printer_delete_font printer_delete_pen printer_draw_bmp printer_draw_chord printer_draw_elipse printer_draw_line printer_draw_pie printer_draw_rectangle printer_draw_roundrect printer_draw_text printer_end_doc printer_end_page printer_get_option printer_list printer_logical_fontheight printer_open printer_select_brush printer_select_font printer_select_pen printer_set_option printer_start_doc printer_start_page printer_write contained
-syn keyword phpFunctions  pspell_add_to_personal pspell_add_to_session pspell_check pspell_clear_session pspell_config_create pspell_config_ignore pspell_config_mode pspell_config_personal pspell_config_repl pspell_config_runtogether pspell_config_save_repl pspell_new_config pspell_new_personal pspell_new pspell_save_wordlist pspell_store_replacement pspell_suggest contained
-syn keyword phpFunctions  qdom_error qdom_tree  contained
-syn keyword phpFunctions  readline_add_history readline_clear_history readline_completion_function readline_info readline_list_history readline_read_history readline_write_history readline  contained
-syn keyword phpFunctions  recode_file recode_string recode  contained
-syn keyword phpFunctions  ereg_replace ereg eregi_replace eregi split spliti sql_regcase  contained
-syn keyword phpFunctions  ftok msg_get_queue msg_receive msg_remove_queue msg_send msg_set_queue msg_stat_queue sem_acquire sem_get sem_release sem_remove shm_attach shm_detach shm_get_var shm_put_var shm_remove_var shm_remove  contained
-syn keyword phpFunctions  sesam_affected_rows sesam_commit sesam_connect sesam_diagnostic sesam_disconnect sesam_errormsg sesam_execimm sesam_fetch_array sesam_fetch_result sesam_fetch_row sesam_field_array sesam_field_name sesam_free_result sesam_num_fields sesam_query sesam_rollback sesam_seek_row sesam_settransaction contained
-syn keyword phpFunctions  session_cache_expire session_cache_limiter session_decode session_destroy session_encode session_get_cookie_params session_id session_is_registered session_module_name session_name session_regenerate_id session_register session_save_path session_set_cookie_params session_set_save_handler session_start session_unregister session_unset session_write_close contained
-syn keyword phpFunctions  shmop_close shmop_delete shmop_open shmop_read shmop_size shmop_write contained
-syn keyword phpFunctions  snmp_get_quick_print snmp_set_quick_print snmpget snmprealwalk snmpset snmpwalk snmpwalkoid contained
-syn keyword phpFunctions  socket_accept socket_bind socket_clear_error socket_close socket_connect socket_create_listen socket_create_pair socket_create socket_get_option socket_getpeername socket_getsockname socket_iovec_add socket_iovec_alloc socket_iovec_delete socket_iovec_fetch socket_iovec_free socket_iovec_set socket_last_error socket_listen socket_read socket_readv socket_recv socket_recvfrom socket_recvmsg socket_select socket_send socket_sendmsg socket_sendto socket_set_block socket_set_nonblock socket_set_option socket_shutdown socket_strerror socket_write socket_writev contained
-syn keyword phpFunctions  sqlite_array_query sqlite_busy_timeout sqlite_changes sqlite_close sqlite_column sqlite_create_aggregate sqlite_create_function sqlite_current sqlite_error_string sqlite_escape_string sqlite_fetch_array sqlite_fetch_single sqlite_fetch_string sqlite_field_name sqlite_has_more sqlite_last_error sqlite_last_insert_rowid sqlite_libencoding sqlite_libversion sqlite_next sqlite_num_fields sqlite_num_rows sqlite_open sqlite_popen sqlite_query sqlite_rewind sqlite_seek sqlite_udf_decode_binary sqlite_udf_encode_binary sqlite_unbuffered_query  contained
-syn keyword phpFunctions  stream_context_create stream_context_get_options stream_context_set_option stream_context_set_params stream_copy_to_stream stream_filter_append stream_filter_prepend stream_filter_register stream_get_contents stream_get_filters stream_get_line stream_get_meta_data stream_get_transports stream_get_wrappers stream_register_wrapper stream_select stream_set_blocking stream_set_timeout stream_set_write_buffer stream_socket_accept stream_socket_client stream_socket_get_name stream_socket_recvfrom stream_socket_sendto stream_socket_server stream_wrapper_register contained
-syn keyword phpFunctions  addcslashes addslashes bin2hex chop chr chunk_split convert_cyr_string count_chars crc32 crypt explode fprintf get_html_translation_table hebrev hebrevc html_entity_decode htmlentities htmlspecialchars implode join levenshtein localeconv ltrim md5_file md5 metaphone money_format nl_langinfo nl2br number_format ord parse_str print printf quoted_printable_decode quotemeta rtrim setlocale sha1_file sha1 similar_text soundex sprintf sscanf str_ireplace str_pad str_repeat str_replace str_rot13 str_shuffle str_split str_word_count strcasecmp strchr strcmp strcoll strcspn strip_tags stripcslashes stripos stripslashes stristr strlen strnatcasecmp strnatcmp strncasecmp strncmp strpos strrchr strrev strripos strrpos strspn strstr strtok strtolower strtoupper strtr substr_compare substr_count substr_replace substr trim ucfirst ucwords vprintf vsprintf wordwrap contained
-syn keyword phpFunctions  swf_actiongeturl swf_actiongotoframe swf_actiongotolabel swf_actionnextframe swf_actionplay swf_actionprevframe swf_actionsettarget swf_actionstop swf_actiontogglequality swf_actionwaitforframe swf_addbuttonrecord swf_addcolor swf_closefile swf_definebitmap swf_definefont swf_defineline swf_definepoly swf_definerect swf_definetext swf_endbutton swf_enddoaction swf_endshape swf_endsymbol swf_fontsize swf_fontslant swf_fonttracking swf_getbitmapinfo swf_getfontinfo swf_getframe swf_labelframe swf_lookat swf_modifyobject swf_mulcolor swf_nextid swf_oncondition swf_openfile swf_ortho2 swf_ortho swf_perspective swf_placeobject swf_polarview swf_popmatrix swf_posround swf_pushmatrix swf_removeobject swf_rotate swf_scale swf_setfont swf_setframe swf_shapearc swf_shapecurveto3 swf_shapecurveto swf_shapefillbitmapclip swf_shapefillbitmaptile swf_shapefilloff swf_shapefillsolid swf_shapelinesolid swf_shapelineto swf_shapemoveto swf_showframe swf_startbutton swf_startdoaction swf_startshape swf_startsymbol swf_textwidth swf_translate swf_viewport contained
-syn keyword phpFunctions  sybase_affected_rows sybase_close sybase_connect sybase_data_seek sybase_deadlock_retry_count sybase_fetch_array sybase_fetch_assoc sybase_fetch_field sybase_fetch_object sybase_fetch_row sybase_field_seek sybase_free_result sybase_get_last_message sybase_min_client_severity sybase_min_error_severity sybase_min_message_severity sybase_min_server_severity sybase_num_fields sybase_num_rows sybase_pconnect sybase_query sybase_result sybase_select_db sybase_set_message_handler sybase_unbuffered_query contained
-syn keyword phpFunctions  tidy_access_count tidy_clean_repair tidy_config_count tidy_diagnose tidy_error_count tidy_get_body tidy_get_config tidy_get_error_buffer tidy_get_head tidy_get_html_ver tidy_get_html tidy_get_output tidy_get_release tidy_get_root tidy_get_status tidy_getopt tidy_is_xhtml tidy_load_config tidy_parse_file tidy_parse_string tidy_repair_file tidy_repair_string tidy_reset_config tidy_save_config tidy_set_encoding tidy_setopt tidy_warning_count  contained
-syn keyword phpMethods  attributes children get_attr get_nodes has_children has_siblings is_asp is_comment is_html is_jsp is_jste is_text is_xhtml is_xml next prev tidy_node contained
-syn keyword phpFunctions  token_get_all token_name  contained
-syn keyword phpFunctions  base64_decode base64_encode get_meta_tags http_build_query parse_url rawurldecode rawurlencode urldecode urlencode  contained
-syn keyword phpFunctions  doubleval empty floatval get_defined_vars get_resource_type gettype import_request_variables intval is_array is_bool is_callable is_double is_float is_int is_integer is_long is_null is_numeric is_object is_real is_resource is_scalar is_string isset print_r serialize settype strval unserialize unset var_dump var_export contained
-syn keyword phpFunctions  vpopmail_add_alias_domain_ex vpopmail_add_alias_domain vpopmail_add_domain_ex vpopmail_add_domain vpopmail_add_user vpopmail_alias_add vpopmail_alias_del_domain vpopmail_alias_del vpopmail_alias_get_all vpopmail_alias_get vpopmail_auth_user vpopmail_del_domain_ex vpopmail_del_domain vpopmail_del_user vpopmail_error vpopmail_passwd vpopmail_set_user_quota  contained
-syn keyword phpFunctions  w32api_deftype w32api_init_dtype w32api_invoke_function w32api_register_function w32api_set_call_method contained
-syn keyword phpFunctions  wddx_add_vars wddx_deserialize wddx_packet_end wddx_packet_start wddx_serialize_value wddx_serialize_vars contained
-syn keyword phpFunctions  utf8_decode utf8_encode xml_error_string xml_get_current_byte_index xml_get_current_column_number xml_get_current_line_number xml_get_error_code xml_parse_into_struct xml_parse xml_parser_create_ns xml_parser_create xml_parser_free xml_parser_get_option xml_parser_set_option xml_set_character_data_handler xml_set_default_handler xml_set_element_handler xml_set_end_namespace_decl_handler xml_set_external_entity_ref_handler xml_set_notation_decl_handler xml_set_object xml_set_processing_instruction_handler xml_set_start_namespace_decl_handler xml_set_unparsed_entity_decl_handler contained
-syn keyword phpFunctions  xmlrpc_decode_request xmlrpc_decode xmlrpc_encode_request xmlrpc_encode xmlrpc_get_type xmlrpc_parse_method_descriptions xmlrpc_server_add_introspection_data xmlrpc_server_call_method xmlrpc_server_create xmlrpc_server_destroy xmlrpc_server_register_introspection_callback xmlrpc_server_register_method xmlrpc_set_type  contained
-syn keyword phpFunctions  xslt_create xslt_errno xslt_error xslt_free xslt_output_process xslt_set_base xslt_set_encoding xslt_set_error_handler xslt_set_log xslt_set_sax_handler xslt_set_sax_handlers xslt_set_scheme_handler xslt_set_scheme_handlers contained
-syn keyword phpFunctions  yaz_addinfo yaz_ccl_conf yaz_ccl_parse yaz_close yaz_connect yaz_database yaz_element yaz_errno yaz_error yaz_es_result yaz_get_option yaz_hits yaz_itemorder yaz_present yaz_range yaz_record yaz_scan_result yaz_scan yaz_schema yaz_search yaz_set_option yaz_sort yaz_syntax yaz_wait contained
-syn keyword phpFunctions  zip_close zip_entry_close zip_entry_compressedsize zip_entry_compressionmethod zip_entry_filesize zip_entry_name zip_entry_open zip_entry_read zip_open zip_read  contained
-syn keyword phpFunctions  gzclose gzcompress gzdeflate gzencode gzeof gzfile gzgetc gzgets gzgetss gzinflate gzopen gzpassthru gzputs gzread gzrewind gzseek gztell gzuncompress gzwrite readgzfile zlib_get_coding_type  contained
+syn keyword phpFunctions apache_child_terminate apache_get_modules apache_get_version apache_getenv apache_lookup_uri apache_note apache_request_headers apache_response_headers apache_setenv ascii2ebcdic ebcdic2ascii getallheaders virtual contained
+syn keyword phpFunctions array_change_key_case array_chunk array_column array_combine array_count_values array_diff_assoc array_diff_key array_diff_uassoc array_diff_ukey array_diff array_fill_keys array_fill array_filter array_flip array_intersect_assoc array_intersect_key array_intersect_uassoc array_intersect_ukey array_intersect array_key_exists array_keys array_map array_merge_recursive array_merge array_multisort array_pad array_pop array_product array_push array_rand array_reduce array_replace_recursive array_replace array_reverse array_search array_shift array_slice array_splice array_sum array_udiff_assoc array_udiff_uassoc array_udiff array_uintersect_assoc array_uintersect_uassoc array_uintersect array_unique array_unshift array_values array_walk_recursive array_walk arsort asort count current each end in_array key_exists key krsort ksort natcasesort natsort next pos prev range reset rsort shuffle sizeof sort uasort uksort usort contained
+syn keyword phpFunctions aspell_check aspell_new aspell_suggest contained
+syn keyword phpFunctions bcadd bccomp bcdiv bcmod bcmul bcpow bcpowmod bcscale bcsqrt bcsub contained
+syn keyword phpFunctions bzclose bzcompress bzdecompress bzerrno bzerror bzerrstr bzflush bzopen bzread bzwrite contained
+syn keyword phpFunctions cal_days_in_month cal_from_jd cal_info cal_to_jd easter_date easter_days frenchtojd gregoriantojd jddayofweek jdmonthname jdtofrench jdtogregorian jdtojewish jdtojulian jdtounix jewishtojd juliantojd unixtojd contained
+syn keyword phpFunctions ccvs_add ccvs_auth ccvs_command ccvs_count ccvs_delete ccvs_done ccvs_init ccvs_lookup ccvs_new ccvs_report ccvs_return ccvs_reverse ccvs_sale ccvs_status ccvs_textvalue ccvs_void contained
+syn keyword phpFunctions call_user_method_array call_user_method class_exists get_class_methods get_class_vars get_class get_declared_classes get_object_vars get_parent_class is_a is_subclass_of method_exists contained
+syn keyword phpFunctions com VARIANT com_addref com_get com_invoke com_isenum com_load_typelib com_load com_propget com_propput com_propset com_release com_set contained
+syn keyword phpFunctions cpdf_add_annotation cpdf_add_outline cpdf_arc cpdf_begin_text cpdf_circle cpdf_clip cpdf_close cpdf_closepath_fill_stroke cpdf_closepath_stroke cpdf_closepath cpdf_continue_text cpdf_curveto cpdf_end_text cpdf_fill_stroke cpdf_fill cpdf_finalize_page cpdf_finalize cpdf_global_set_document_limits cpdf_import_jpeg cpdf_lineto cpdf_moveto cpdf_newpath cpdf_open cpdf_output_buffer cpdf_page_init cpdf_place_inline_image cpdf_rect cpdf_restore cpdf_rlineto cpdf_rmoveto cpdf_rotate_text cpdf_rotate cpdf_save_to_file cpdf_save cpdf_scale cpdf_set_action_url cpdf_set_char_spacing cpdf_set_creator cpdf_set_current_page cpdf_set_font_directories cpdf_set_font_map_file cpdf_set_font cpdf_set_horiz_scaling cpdf_set_keywords cpdf_set_leading cpdf_set_page_animation cpdf_set_subject cpdf_set_text_matrix cpdf_set_text_pos cpdf_set_text_rendering cpdf_set_text_rise cpdf_set_title cpdf_set_viewer_preferences cpdf_set_word_spacing cpdf_setdash cpdf_setflat cpdf_setgray_fill cpdf_setgray_stroke cpdf_setgray cpdf_setlinecap cpdf_setlinejoin cpdf_setlinewidth cpdf_setmiterlimit cpdf_setrgbcolor_fill cpdf_setrgbcolor_stroke cpdf_setrgbcolor cpdf_show_xy cpdf_show cpdf_stringwidth cpdf_stroke cpdf_text cpdf_translate contained
+syn keyword phpFunctions crack_check crack_closedict crack_getlastmessage crack_opendict contained
+syn keyword phpFunctions ctype_alnum ctype_alpha ctype_cntrl ctype_digit ctype_graph ctype_lower ctype_print ctype_punct ctype_space ctype_upper ctype_xdigit contained
+syn keyword phpFunctions curl_close curl_errno curl_error curl_exec curl_getinfo curl_init curl_multi_add_handle curl_multi_close curl_multi_exec curl_multi_getcontent curl_multi_info_read curl_multi_init curl_multi_remove_handle curl_multi_select curl_setopt curl_version contained
+syn keyword phpFunctions cybercash_base64_decode cybercash_base64_encode cybercash_decr cybercash_encr contained
+syn keyword phpFunctions cyrus_authenticate cyrus_bind cyrus_close cyrus_connect cyrus_query cyrus_unbind contained
+syn keyword phpFunctions checkdate date getdate gettimeofday gmdate gmmktime gmstrftime localtime microtime mktime strftime strtotime time contained
+syn keyword phpFunctions dba_close dba_delete dba_exists dba_fetch dba_firstkey dba_handlers dba_insert dba_key_split dba_list dba_nextkey dba_open dba_optimize dba_popen dba_replace dba_sync contained
+syn keyword phpFunctions dbase_add_record dbase_close dbase_create dbase_delete_record dbase_get_header_info dbase_get_record_with_names dbase_get_record dbase_numfields dbase_numrecords dbase_open dbase_pack dbase_replace_record contained
+syn keyword phpFunctions dblist dbmclose dbmdelete dbmexists dbmfetch dbmfirstkey dbminsert dbmnextkey dbmopen dbmreplace contained
+syn keyword phpFunctions dbplus_add dbplus_aql dbplus_chdir dbplus_close dbplus_curr dbplus_errcode dbplus_errno dbplus_find dbplus_first dbplus_flush dbplus_freealllocks dbplus_freelock dbplus_freerlocks dbplus_getlock dbplus_getunique dbplus_info dbplus_last dbplus_lockrel dbplus_next dbplus_open dbplus_prev dbplus_rchperm dbplus_rcreate dbplus_rcrtexact dbplus_rcrtlike dbplus_resolve dbplus_restorepos dbplus_rkeys dbplus_ropen dbplus_rquery dbplus_rrename dbplus_rsecindex dbplus_runlink dbplus_rzap dbplus_savepos dbplus_setindex dbplus_setindexbynumber dbplus_sql dbplus_tcl dbplus_tremove dbplus_undo dbplus_undoprepare dbplus_unlockrel dbplus_unselect dbplus_update dbplus_xlockrel dbplus_xunlockrel contained
+syn keyword phpFunctions dbx_close dbx_compare dbx_connect dbx_error dbx_escape_string dbx_fetch_row dbx_query dbx_sort contained
+syn keyword phpFunctions dio_close dio_fcntl dio_open dio_read dio_seek dio_stat dio_tcsetattr dio_truncate dio_write contained
+syn keyword phpFunctions chdir chroot dir closedir getcwd opendir readdir rewinddir scandir contained
+syn keyword phpFunctions domxml_new_doc domxml_open_file domxml_open_mem domxml_version domxml_xmltree domxml_xslt_stylesheet_doc domxml_xslt_stylesheet_file domxml_xslt_stylesheet xpath_eval_expression xpath_eval xpath_new_context xptr_eval xptr_new_context contained
+syn keyword phpMethods name specified value create_attribute create_cdata_section create_comment create_element_ns create_element create_entity_reference create_processing_instruction create_text_node doctype document_element dump_file dump_mem get_element_by_id get_elements_by_tagname html_dump_mem xinclude entities internal_subset name notations public_id system_id get_attribute_node get_attribute get_elements_by_tagname has_attribute remove_attribute set_attribute tagname add_namespace append_child append_sibling attributes child_nodes clone_node dump_node first_child get_content has_attributes has_child_nodes insert_before is_blank_node last_child next_sibling node_name node_type node_value owner_document parent_node prefix previous_sibling remove_child replace_child replace_node set_content set_name set_namespace unlink_node data target process result_dump_file result_dump_mem contained
+syn keyword phpFunctions dotnet_load contained
+syn keyword phpFunctions debug_backtrace debug_print_backtrace error_log error_reporting restore_error_handler set_error_handler trigger_error user_error contained
+syn keyword phpFunctions escapeshellarg escapeshellcmd exec passthru proc_close proc_get_status proc_nice proc_open proc_terminate shell_exec system contained
+syn keyword phpFunctions fam_cancel_monitor fam_close fam_monitor_collection fam_monitor_directory fam_monitor_file fam_next_event fam_open fam_pending fam_resume_monitor fam_suspend_monitor contained
+syn keyword phpFunctions fbsql_affected_rows fbsql_autocommit fbsql_change_user fbsql_close fbsql_commit fbsql_connect fbsql_create_blob fbsql_create_clob fbsql_create_db fbsql_data_seek fbsql_database_password fbsql_database fbsql_db_query fbsql_db_status fbsql_drop_db fbsql_errno fbsql_error fbsql_fetch_array fbsql_fetch_assoc fbsql_fetch_field fbsql_fetch_lengths fbsql_fetch_object fbsql_fetch_row fbsql_field_flags fbsql_field_len fbsql_field_name fbsql_field_seek fbsql_field_table fbsql_field_type fbsql_free_result fbsql_get_autostart_info fbsql_hostname fbsql_insert_id fbsql_list_dbs fbsql_list_fields fbsql_list_tables fbsql_next_result fbsql_num_fields fbsql_num_rows fbsql_password fbsql_pconnect fbsql_query fbsql_read_blob fbsql_read_clob fbsql_result fbsql_rollback fbsql_select_db fbsql_set_lob_mode fbsql_set_transaction fbsql_start_db fbsql_stop_db fbsql_tablename fbsql_username fbsql_warnings contained
+syn keyword phpFunctions fdf_add_doc_javascript fdf_add_template fdf_close fdf_create fdf_enum_values fdf_errno fdf_error fdf_get_ap fdf_get_attachment fdf_get_encoding fdf_get_file fdf_get_flags fdf_get_opt fdf_get_status fdf_get_value fdf_get_version fdf_header fdf_next_field_name fdf_open_string fdf_open fdf_remove_item fdf_save_string fdf_save fdf_set_ap fdf_set_encoding fdf_set_file fdf_set_flags fdf_set_javascript_action fdf_set_opt fdf_set_status fdf_set_submit_form_action fdf_set_target_frame fdf_set_value fdf_set_version contained
+syn keyword phpFunctions filepro_fieldcount filepro_fieldname filepro_fieldtype filepro_fieldwidth filepro_retrieve filepro_rowcount filepro contained
+syn keyword phpFunctions basename chgrp chmod chown clearstatcache copy delete dirname disk_free_space disk_total_space diskfreespace fclose feof fflush fgetc fgetcsv fgets fgetss file_exists file_get_contents file_put_contents file fileatime filectime filegroup fileinode filemtime fileowner fileperms filesize filetype flock fnmatch fopen fpassthru fputs fread fscanf fseek fstat ftell ftruncate fwrite glob is_dir is_executable is_file is_link is_readable is_uploaded_file is_writable is_writeable link linkinfo lstat mkdir move_uploaded_file parse_ini_file pathinfo pclose popen readfile readlink realpath rename rewind rmdir set_file_buffer stat symlink tempnam tmpfile touch umask unlink contained
+syn keyword phpFunctions fribidi_log2vis contained
+syn keyword phpFunctions ftp_alloc ftp_cdup ftp_chdir ftp_chmod ftp_close ftp_connect ftp_delete ftp_exec ftp_fget ftp_fput ftp_get_option ftp_get ftp_login ftp_mdtm ftp_mkdir ftp_nb_continue ftp_nb_fget ftp_nb_fput ftp_nb_get ftp_nb_put ftp_nlist ftp_pasv ftp_put ftp_pwd ftp_quit ftp_raw ftp_rawlist ftp_rename ftp_rmdir ftp_set_option ftp_site ftp_size ftp_ssl_connect ftp_systype contained
+syn keyword phpFunctions call_user_func_array call_user_func create_function func_get_arg func_get_args func_num_args function_exists get_defined_functions register_shutdown_function register_tick_function unregister_tick_function contained
+syn keyword phpFunctions bind_textdomain_codeset bindtextdomain dcgettext dcngettext dgettext dngettext gettext ngettext textdomain contained
+syn keyword phpFunctions gmp_abs gmp_add gmp_and gmp_clrbit gmp_cmp gmp_com gmp_div_q gmp_div_qr gmp_div_r gmp_div gmp_divexact gmp_fact gmp_gcd gmp_gcdext gmp_hamdist gmp_init gmp_intval gmp_invert gmp_jacobi gmp_legendre gmp_mod gmp_mul gmp_neg gmp_or gmp_perfect_square gmp_popcount gmp_pow gmp_powm gmp_prob_prime gmp_random gmp_scan0 gmp_scan1 gmp_setbit gmp_sign gmp_sqrt gmp_sqrtrem gmp_sqrtrm gmp_strval gmp_sub gmp_xor contained
+syn keyword phpFunctions header headers_list headers_sent setcookie contained
+syn keyword phpFunctions hw_api_attribute hwapi_hgcsp hw_api_content hw_api_object contained
+syn keyword phpMethods key langdepvalue value values checkin checkout children mimetype read content copy dbstat dcstat dstanchors dstofsrcanchors count reason find ftstat hwstat identify info insert insertanchor insertcollection insertdocument link lock move assign attreditable count insert remove title value object objectbyanchor parents description type remove replace setcommitedversion srcanchors srcsofdst unlock user userlist contained
+syn keyword phpFunctions hw_Array2Objrec hw_changeobject hw_Children hw_ChildrenObj hw_Close hw_Connect hw_connection_info hw_cp hw_Deleteobject hw_DocByAnchor hw_DocByAnchorObj hw_Document_Attributes hw_Document_BodyTag hw_Document_Content hw_Document_SetContent hw_Document_Size hw_dummy hw_EditText hw_Error hw_ErrorMsg hw_Free_Document hw_GetAnchors hw_GetAnchorsObj hw_GetAndLock hw_GetChildColl hw_GetChildCollObj hw_GetChildDocColl hw_GetChildDocCollObj hw_GetObject hw_GetObjectByQuery hw_GetObjectByQueryColl hw_GetObjectByQueryCollObj hw_GetObjectByQueryObj hw_GetParents hw_GetParentsObj hw_getrellink hw_GetRemote hw_getremotechildren hw_GetSrcByDestObj hw_GetText hw_getusername hw_Identify hw_InCollections hw_Info hw_InsColl hw_InsDoc hw_insertanchors hw_InsertDocument hw_InsertObject hw_mapid hw_Modifyobject hw_mv hw_New_Document hw_objrec2array hw_Output_Document hw_pConnect hw_PipeDocument hw_Root hw_setlinkroot hw_stat hw_Unlock hw_Who contained
+syn keyword phpFunctions ibase_add_user ibase_affected_rows ibase_blob_add ibase_blob_cancel ibase_blob_close ibase_blob_create ibase_blob_echo ibase_blob_get ibase_blob_import ibase_blob_info ibase_blob_open ibase_close ibase_commit_ret ibase_commit ibase_connect ibase_delete_user ibase_drop_db ibase_errcode ibase_errmsg ibase_execute ibase_fetch_assoc ibase_fetch_object ibase_fetch_row ibase_field_info ibase_free_event_handler ibase_free_query ibase_free_result ibase_gen_id ibase_modify_user ibase_name_result ibase_num_fields ibase_num_params ibase_param_info ibase_pconnect ibase_prepare ibase_query ibase_rollback_ret ibase_rollback ibase_set_event_handler ibase_timefmt ibase_trans ibase_wait_event contained
+syn keyword phpFunctions iconv_get_encoding iconv_mime_decode_headers iconv_mime_decode iconv_mime_encode iconv_set_encoding iconv_strlen iconv_strpos iconv_strrpos iconv_substr iconv ob_iconv_handler contained
+syn keyword phpFunctions ifx_affected_rows ifx_blobinfile_mode ifx_byteasvarchar ifx_close ifx_connect ifx_copy_blob ifx_create_blob ifx_create_char ifx_do ifx_error ifx_errormsg ifx_fetch_row ifx_fieldproperties ifx_fieldtypes ifx_free_blob ifx_free_char ifx_free_result ifx_get_blob ifx_get_char ifx_getsqlca ifx_htmltbl_result ifx_nullformat ifx_num_fields ifx_num_rows ifx_pconnect ifx_prepare ifx_query ifx_textasvarchar ifx_update_blob ifx_update_char ifxus_close_slob ifxus_create_slob ifxus_free_slob ifxus_open_slob ifxus_read_slob ifxus_seek_slob ifxus_tell_slob ifxus_write_slob contained
+syn keyword phpFunctions exif_imagetype exif_read_data exif_thumbnail gd_info getimagesize image_type_to_mime_type image2wbmp imagealphablending imageantialias imagearc imagechar imagecharup imagecolorallocate imagecolorallocatealpha imagecolorat imagecolorclosest imagecolorclosestalpha imagecolorclosesthwb imagecolordeallocate imagecolorexact imagecolorexactalpha imagecolormatch imagecolorresolve imagecolorresolvealpha imagecolorset imagecolorsforindex imagecolorstotal imagecolortransparent imagecopy imagecopymerge imagecopymergegray imagecopyresampled imagecopyresized imagecreate imagecreatefromgd2 imagecreatefromgd2part imagecreatefromgd imagecreatefromgif imagecreatefromjpeg imagecreatefrompng imagecreatefromstring imagecreatefromwbmp imagecreatefromxbm imagecreatefromxpm imagecreatetruecolor imagedashedline imagedestroy imageellipse imagefill imagefilledarc imagefilledellipse imagefilledpolygon imagefilledrectangle imagefilltoborder imagefontheight imagefontwidth imageftbbox imagefttext imagegammacorrect imagegd2 imagegd imagegif imageinterlace imageistruecolor imagejpeg imageline imageloadfont imagepalettecopy imagepng imagepolygon imagepsbbox imagepscopyfont imagepsencodefont imagepsextendfont imagepsfreefont imagepsloadfont imagepsslantfont imagepstext imagerectangle imagerotate imagesavealpha imagesetbrush imagesetpixel imagesetstyle imagesetthickness imagesettile imagestring imagestringup imagesx imagesy imagetruecolortopalette imagettfbbox imagettftext imagetypes imagewbmp iptcembed iptcparse jpeg2wbmp png2wbmp read_exif_data contained
+syn keyword phpFunctions imap_8bit imap_alerts imap_append imap_base64 imap_binary imap_body imap_bodystruct imap_check imap_clearflag_full imap_close imap_createmailbox imap_delete imap_deletemailbox imap_errors imap_expunge imap_fetch_overview imap_fetchbody imap_fetchheader imap_fetchstructure imap_get_quota imap_get_quotaroot imap_getacl imap_getmailboxes imap_getsubscribed imap_header imap_headerinfo imap_headers imap_last_error imap_list imap_listmailbox imap_listscan imap_listsubscribed imap_lsub imap_mail_compose imap_mail_copy imap_mail_move imap_mail imap_mailboxmsginfo imap_mime_header_decode imap_msgno imap_num_msg imap_num_recent imap_open imap_ping imap_qprint imap_renamemailbox imap_reopen imap_rfc822_parse_adrlist imap_rfc822_parse_headers imap_rfc822_write_address imap_scanmailbox imap_search imap_set_quota imap_setacl imap_setflag_full imap_sort imap_status imap_subscribe imap_thread imap_timeout imap_uid imap_undelete imap_unsubscribe imap_utf7_decode imap_utf7_encode imap_utf8 contained
+syn keyword phpFunctions assert_options assert dl extension_loaded get_cfg_var get_current_user get_defined_constants get_extension_funcs get_include_path get_included_files get_loaded_extensions get_magic_quotes_gpc get_magic_quotes_runtime get_required_files getenv getlastmod getmygid getmyinode getmypid getmyuid getopt getrusage ini_alter ini_get_all ini_get ini_restore ini_set main memory_get_usage php_ini_scanned_files php_logo_guid php_sapi_name php_uname phpcredits phpinfo phpversion putenv restore_include_path set_include_path set_magic_quotes_runtime set_time_limit version_compare zend_logo_guid zend_version contained
+syn keyword phpFunctions ingres_autocommit ingres_close ingres_commit ingres_connect ingres_fetch_array ingres_fetch_object ingres_fetch_row ingres_field_length ingres_field_name ingres_field_nullable ingres_field_precision ingres_field_scale ingres_field_type ingres_num_fields ingres_num_rows ingres_pconnect ingres_query ingres_rollback contained
+syn keyword phpFunctions ircg_channel_mode ircg_disconnect ircg_fetch_error_msg ircg_get_username ircg_html_encode ircg_ignore_add ircg_ignore_del ircg_is_conn_alive ircg_join ircg_kick ircg_lookup_format_messages ircg_msg ircg_nick ircg_nickname_escape ircg_nickname_unescape ircg_notice ircg_part ircg_pconnect ircg_register_format_messages ircg_set_current ircg_set_file ircg_set_on_die ircg_topic ircg_whois contained
+syn keyword phpFunctions java_last_exception_clear java_last_exception_get contained
+syn keyword phpFunctions json_decode json_encode json_last_error contained
+syn keyword phpFunctions ldap_8859_to_t61 ldap_add ldap_bind ldap_close ldap_compare ldap_connect ldap_count_entries ldap_delete ldap_dn2ufn ldap_err2str ldap_errno ldap_error ldap_explode_dn ldap_first_attribute ldap_first_entry ldap_first_reference ldap_free_result ldap_get_attributes ldap_get_dn ldap_get_entries ldap_get_option ldap_get_values_len ldap_get_values ldap_list ldap_mod_add ldap_mod_del ldap_mod_replace ldap_modify ldap_next_attribute ldap_next_entry ldap_next_reference ldap_parse_reference ldap_parse_result ldap_read ldap_rename ldap_search ldap_set_option ldap_set_rebind_proc ldap_sort ldap_start_tls ldap_t61_to_8859 ldap_unbind contained
+syn keyword phpFunctions lzf_compress lzf_decompress lzf_optimized_for contained
+syn keyword phpFunctions ezmlm_hash mail contained
+syn keyword phpFunctions mailparse_determine_best_xfer_encoding mailparse_msg_create mailparse_msg_extract_part_file mailparse_msg_extract_part mailparse_msg_free mailparse_msg_get_part_data mailparse_msg_get_part mailparse_msg_get_structure mailparse_msg_parse_file mailparse_msg_parse mailparse_rfc822_parse_addresses mailparse_stream_encode mailparse_uudecode_all contained
+syn keyword phpFunctions abs acos acosh asin asinh atan2 atan atanh base_convert bindec ceil cos cosh decbin dechex decoct deg2rad exp expm1 floor fmod getrandmax hexdec hypot is_finite is_infinite is_nan lcg_value log10 log1p log max min mt_getrandmax mt_rand mt_srand octdec pi pow rad2deg rand round sin sinh sqrt srand tan tanh contained
+syn keyword phpFunctions mb_convert_case mb_convert_encoding mb_convert_kana mb_convert_variables mb_decode_mimeheader mb_decode_numericentity mb_detect_encoding mb_detect_order mb_encode_mimeheader mb_encode_numericentity mb_ereg_match mb_ereg_replace mb_ereg_search_getpos mb_ereg_search_getregs mb_ereg_search_init mb_ereg_search_pos mb_ereg_search_regs mb_ereg_search_setpos mb_ereg_search mb_ereg mb_eregi_replace mb_eregi mb_get_info mb_http_input mb_http_output mb_internal_encoding mb_language mb_output_handler mb_parse_str mb_preferred_mime_name mb_regex_encoding mb_regex_set_options mb_send_mail mb_split mb_strcut mb_strimwidth mb_strlen mb_strpos mb_strrpos mb_strtolower mb_strtoupper mb_strwidth mb_substitute_character mb_substr_count mb_substr contained
+syn keyword phpFunctions mcal_append_event mcal_close mcal_create_calendar mcal_date_compare mcal_date_valid mcal_day_of_week mcal_day_of_year mcal_days_in_month mcal_delete_calendar mcal_delete_event mcal_event_add_attribute mcal_event_init mcal_event_set_alarm mcal_event_set_category mcal_event_set_class mcal_event_set_description mcal_event_set_end mcal_event_set_recur_daily mcal_event_set_recur_monthly_mday mcal_event_set_recur_monthly_wday mcal_event_set_recur_none mcal_event_set_recur_weekly mcal_event_set_recur_yearly mcal_event_set_start mcal_event_set_title mcal_expunge mcal_fetch_current_stream_event mcal_fetch_event mcal_is_leap_year mcal_list_alarms mcal_list_events mcal_next_recurrence mcal_open mcal_popen mcal_rename_calendar mcal_reopen mcal_snooze mcal_store_event mcal_time_valid mcal_week_of_year contained
+syn keyword phpFunctions mcrypt_cbc mcrypt_cfb mcrypt_create_iv mcrypt_decrypt mcrypt_ecb mcrypt_enc_get_algorithms_name mcrypt_enc_get_block_size mcrypt_enc_get_iv_size mcrypt_enc_get_key_size mcrypt_enc_get_modes_name mcrypt_enc_get_supported_key_sizes mcrypt_enc_is_block_algorithm_mode mcrypt_enc_is_block_algorithm mcrypt_enc_is_block_mode mcrypt_enc_self_test mcrypt_encrypt mcrypt_generic_deinit mcrypt_generic_end mcrypt_generic_init mcrypt_generic mcrypt_get_block_size mcrypt_get_cipher_name mcrypt_get_iv_size mcrypt_get_key_size mcrypt_list_algorithms mcrypt_list_modes mcrypt_module_close mcrypt_module_get_algo_block_size mcrypt_module_get_algo_key_size mcrypt_module_get_supported_key_sizes mcrypt_module_is_block_algorithm_mode mcrypt_module_is_block_algorithm mcrypt_module_is_block_mode mcrypt_module_open mcrypt_module_self_test mcrypt_ofb mdecrypt_generic contained
+syn keyword phpFunctions mcve_adduser mcve_adduserarg mcve_bt mcve_checkstatus mcve_chkpwd mcve_chngpwd mcve_completeauthorizations mcve_connect mcve_connectionerror mcve_deleteresponse mcve_deletetrans mcve_deleteusersetup mcve_deluser mcve_destroyconn mcve_destroyengine mcve_disableuser mcve_edituser mcve_enableuser mcve_force mcve_getcell mcve_getcellbynum mcve_getcommadelimited mcve_getheader mcve_getuserarg mcve_getuserparam mcve_gft mcve_gl mcve_gut mcve_initconn mcve_initengine mcve_initusersetup mcve_iscommadelimited mcve_liststats mcve_listusers mcve_maxconntimeout mcve_monitor mcve_numcolumns mcve_numrows mcve_override mcve_parsecommadelimited mcve_ping mcve_preauth mcve_preauthcompletion mcve_qc mcve_responseparam mcve_return mcve_returncode mcve_returnstatus mcve_sale mcve_setblocking mcve_setdropfile mcve_setip mcve_setssl_files mcve_setssl mcve_settimeout mcve_settle mcve_text_avs mcve_text_code mcve_text_cv mcve_transactionauth mcve_transactionavs mcve_transactionbatch mcve_transactioncv mcve_transactionid mcve_transactionitem mcve_transactionssent mcve_transactiontext mcve_transinqueue mcve_transnew mcve_transparam mcve_transsend mcve_ub mcve_uwait mcve_verifyconnection mcve_verifysslcert mcve_void contained
+syn keyword phpFunctions mhash_count mhash_get_block_size mhash_get_hash_name mhash_keygen_s2k mhash contained
+syn keyword phpFunctions mime_content_type contained
+syn keyword phpFunctions ming_setcubicthreshold ming_setscale ming_useswfversion SWFAction SWFBitmap swfbutton_keypress SWFbutton SWFDisplayItem SWFFill SWFFont SWFGradient SWFMorph SWFMovie SWFShape SWFSprite SWFText SWFTextField contained
+syn keyword phpMethods getHeight getWidth addAction addShape setAction setdown setHit setOver setUp addColor move moveTo multColor remove Rotate rotateTo scale scaleTo setDepth setName setRatio skewX skewXTo skewY skewYTo moveTo rotateTo scaleTo skewXTo skewYTo getwidth addEntry getshape1 getshape2 add nextframe output remove save setbackground setdimension setframes setrate streammp3 addFill drawCurve drawCurveTo drawLine drawLineTo movePen movePenTo setLeftFill setLine setRightFill add nextframe remove setframes addString getWidth moveTo setColor setFont setHeight setSpacing addstring align setbounds setcolor setFont setHeight setindentation setLeftMargin setLineSpacing setMargins setname setrightMargin contained
+syn keyword phpFunctions connection_aborted connection_status connection_timeout constant define defined die eval exit get_browser highlight_file highlight_string ignore_user_abort pack show_source sleep uniqid unpack usleep contained
+syn keyword phpFunctions udm_add_search_limit udm_alloc_agent udm_api_version udm_cat_list udm_cat_path udm_check_charset udm_check_stored udm_clear_search_limits udm_close_stored udm_crc32 udm_errno udm_error udm_find udm_free_agent udm_free_ispell_data udm_free_res udm_get_doc_count udm_get_res_field udm_get_res_param udm_load_ispell_data udm_open_stored udm_set_agent_param contained
+syn keyword phpFunctions msession_connect msession_count msession_create msession_destroy msession_disconnect msession_find msession_get_array msession_get msession_getdata msession_inc msession_list msession_listvar msession_lock msession_plugin msession_randstr msession_set_array msession_set msession_setdata msession_timeout msession_uniq msession_unlock contained
+syn keyword phpFunctions msql_affected_rows msql_close msql_connect msql_create_db msql_createdb msql_data_seek msql_dbname msql_drop_db msql_dropdb msql_error msql_fetch_array msql_fetch_field msql_fetch_object msql_fetch_row msql_field_seek msql_fieldflags msql_fieldlen msql_fieldname msql_fieldtable msql_fieldtype msql_free_result msql_freeresult msql_list_dbs msql_list_fields msql_list_tables msql_listdbs msql_listfields msql_listtables msql_num_fields msql_num_rows msql_numfields msql_numrows msql_pconnect msql_query msql_regcase msql_result msql_select_db msql_selectdb msql_tablename msql contained
+syn keyword phpFunctions mssql_bind mssql_close mssql_connect mssql_data_seek mssql_execute mssql_fetch_array mssql_fetch_assoc mssql_fetch_batch mssql_fetch_field mssql_fetch_object mssql_fetch_row mssql_field_length mssql_field_name mssql_field_seek mssql_field_type mssql_free_result mssql_free_statement mssql_get_last_message mssql_guid_string mssql_init mssql_min_error_severity mssql_min_message_severity mssql_next_result mssql_num_fields mssql_num_rows mssql_pconnect mssql_query mssql_result mssql_rows_affected mssql_select_db contained
+syn keyword phpFunctions muscat_close muscat_get muscat_give muscat_setup_net muscat_setup contained
+syn keyword phpFunctions mysql_affected_rows mysql_change_user mysql_client_encoding mysql_close mysql_connect mysql_create_db mysql_data_seek mysql_db_name mysql_db_query mysql_drop_db mysql_errno mysql_error mysql_escape_string mysql_fetch_array mysql_fetch_assoc mysql_fetch_field mysql_fetch_lengths mysql_fetch_object mysql_fetch_row mysql_field_flags mysql_field_len mysql_field_name mysql_field_seek mysql_field_table mysql_field_type mysql_free_result mysql_get_client_info mysql_get_host_info mysql_get_proto_info mysql_get_server_info mysql_info mysql_insert_id mysql_list_dbs mysql_list_fields mysql_list_processes mysql_list_tables mysql_num_fields mysql_num_rows mysql_pconnect mysql_ping mysql_query mysql_real_escape_string mysql_result mysql_select_db mysql_stat mysql_tablename mysql_thread_id mysql_unbuffered_query contained
+syn keyword phpFunctions mysqli_affected_rows mysqli_autocommit mysqli_bind_param mysqli_bind_result mysqli_change_user mysqli_character_set_name mysqli_close mysqli_commit mysqli_connect mysqli_data_seek mysqli_debug mysqli_disable_reads_from_master mysqli_disable_rpl_parse mysqli_dump_debug_info mysqli_enable_reads_from_master mysqli_enable_rpl_parse mysqli_errno mysqli_error mysqli_execute mysqli_fetch_array mysqli_fetch_assoc mysqli_fetch_field_direct mysqli_fetch_field mysqli_fetch_fields mysqli_fetch_lengths mysqli_fetch_object mysqli_fetch_row mysqli_fetch mysqli_field_count mysqli_field_seek mysqli_field_tell mysqli_free_result mysqli_get_client_info mysqli_get_host_info mysqli_get_proto_info mysqli_get_server_info mysqli_get_server_version mysqli_info mysqli_init mysqli_insert_id mysqli_kill mysqli_master_query mysqli_num_fields mysqli_num_rows mysqli_options mysqli_param_count mysqli_ping mysqli_prepare_result mysqli_prepare mysqli_profiler mysqli_query mysqli_read_query_result mysqli_real_connect mysqli_real_escape_string mysqli_real_query mysqli_reload mysqli_rollback mysqli_rpl_parse_enabled mysqli_rpl_probe mysqli_rpl_query_type mysqli_select_db mysqli_send_long_data mysqli_send_query mysqli_slave_query mysqli_ssl_set mysqli_stat mysqli_stmt_affected_rows mysqli_stmt_close mysqli_stmt_errno mysqli_stmt_error mysqli_stmt_store_result mysqli_store_result mysqli_thread_id mysqli_thread_safe mysqli_use_result mysqli_warning_count contained
+syn keyword phpFunctions ncurses_addch ncurses_addchnstr ncurses_addchstr ncurses_addnstr ncurses_addstr ncurses_assume_default_colors ncurses_attroff ncurses_attron ncurses_attrset ncurses_baudrate ncurses_beep ncurses_bkgd ncurses_bkgdset ncurses_border ncurses_bottom_panel ncurses_can_change_color ncurses_cbreak ncurses_clear ncurses_clrtobot ncurses_clrtoeol ncurses_color_content ncurses_color_set ncurses_curs_set ncurses_def_prog_mode ncurses_def_shell_mode ncurses_define_key ncurses_del_panel ncurses_delay_output ncurses_delch ncurses_deleteln ncurses_delwin ncurses_doupdate ncurses_echo ncurses_echochar ncurses_end ncurses_erase ncurses_erasechar ncurses_filter ncurses_flash ncurses_flushinp ncurses_getch ncurses_getmaxyx ncurses_getmouse ncurses_getyx ncurses_halfdelay ncurses_has_colors ncurses_has_ic ncurses_has_il ncurses_has_key ncurses_hide_panel ncurses_hline ncurses_inch ncurses_init_color ncurses_init_pair ncurses_init ncurses_insch ncurses_insdelln ncurses_insertln ncurses_insstr ncurses_instr ncurses_isendwin ncurses_keyok ncurses_keypad ncurses_killchar ncurses_longname ncurses_meta ncurses_mouse_trafo ncurses_mouseinterval ncurses_mousemask ncurses_move_panel ncurses_move ncurses_mvaddch ncurses_mvaddchnstr ncurses_mvaddchstr ncurses_mvaddnstr ncurses_mvaddstr ncurses_mvcur ncurses_mvdelch ncurses_mvgetch ncurses_mvhline ncurses_mvinch ncurses_mvvline ncurses_mvwaddstr ncurses_napms ncurses_new_panel ncurses_newpad ncurses_newwin ncurses_nl ncurses_nocbreak ncurses_noecho ncurses_nonl ncurses_noqiflush ncurses_noraw ncurses_pair_content ncurses_panel_above ncurses_panel_below ncurses_panel_window ncurses_pnoutrefresh ncurses_prefresh ncurses_putp ncurses_qiflush ncurses_raw ncurses_refresh ncurses_replace_panel ncurses_reset_prog_mode ncurses_reset_shell_mode ncurses_resetty ncurses_savetty ncurses_scr_dump ncurses_scr_init ncurses_scr_restore ncurses_scr_set ncurses_scrl ncurses_show_panel ncurses_slk_attr ncurses_slk_attroff ncurses_slk_attron ncurses_slk_attrset ncurses_slk_clear ncurses_slk_color ncurses_slk_init ncurses_slk_noutrefresh ncurses_slk_refresh ncurses_slk_restore ncurses_slk_set ncurses_slk_touch ncurses_standend ncurses_standout ncurses_start_color ncurses_termattrs ncurses_termname ncurses_timeout ncurses_top_panel ncurses_typeahead ncurses_ungetch ncurses_ungetmouse ncurses_update_panels ncurses_use_default_colors ncurses_use_env ncurses_use_extended_names ncurses_vidattr ncurses_vline ncurses_waddch ncurses_waddstr ncurses_wattroff ncurses_wattron ncurses_wattrset ncurses_wborder ncurses_wclear ncurses_wcolor_set ncurses_werase ncurses_wgetch ncurses_whline ncurses_wmouse_trafo ncurses_wmove ncurses_wnoutrefresh ncurses_wrefresh ncurses_wstandend ncurses_wstandout ncurses_wvline contained
+syn keyword phpFunctions checkdnsrr closelog debugger_off debugger_on define_syslog_variables dns_check_record dns_get_mx dns_get_record fsockopen gethostbyaddr gethostbyname gethostbynamel getmxrr getprotobyname getprotobynumber getservbyname getservbyport ip2long long2ip openlog pfsockopen socket_get_status socket_set_blocking socket_set_timeout syslog contained
+syn keyword phpFunctions yp_all yp_cat yp_err_string yp_errno yp_first yp_get_default_domain yp_master yp_match yp_next yp_order contained
+syn keyword phpFunctions notes_body notes_copy_db notes_create_db notes_create_note notes_drop_db notes_find_note notes_header_info notes_list_msgs notes_mark_read notes_mark_unread notes_nav_create notes_search notes_unread notes_version contained
+syn keyword phpFunctions nsapi_request_headers nsapi_response_headers nsapi_virtual contained
+syn keyword phpFunctions aggregate_info aggregate_methods_by_list aggregate_methods_by_regexp aggregate_methods aggregate_properties_by_list aggregate_properties_by_regexp aggregate_properties aggregate aggregation_info deaggregate contained
+syn keyword phpFunctions ocibindbyname ocicancel ocicloselob ocicollappend ocicollassign ocicollassignelem ocicollgetelem ocicollmax ocicollsize ocicolltrim ocicolumnisnull ocicolumnname ocicolumnprecision ocicolumnscale ocicolumnsize ocicolumntype ocicolumntyperaw ocicommit ocidefinebyname ocierror ociexecute ocifetch ocifetchinto ocifetchstatement ocifreecollection ocifreecursor ocifreedesc ocifreestatement ociinternaldebug ociloadlob ocilogoff ocilogon ocinewcollection ocinewcursor ocinewdescriptor ocinlogon ocinumcols ociparse ociplogon ociresult ocirollback ocirowcount ocisavelob ocisavelobfile ociserverversion ocisetprefetch ocistatementtype ociwritelobtofile ociwritetemporarylob contained
+syn keyword phpFunctions odbc_autocommit odbc_binmode odbc_close_all odbc_close odbc_columnprivileges odbc_columns odbc_commit odbc_connect odbc_cursor odbc_data_source odbc_do odbc_error odbc_errormsg odbc_exec odbc_execute odbc_fetch_array odbc_fetch_into odbc_fetch_object odbc_fetch_row odbc_field_len odbc_field_name odbc_field_num odbc_field_precision odbc_field_scale odbc_field_type odbc_foreignkeys odbc_free_result odbc_gettypeinfo odbc_longreadlen odbc_next_result odbc_num_fields odbc_num_rows odbc_pconnect odbc_prepare odbc_primarykeys odbc_procedurecolumns odbc_procedures odbc_result_all odbc_result odbc_rollback odbc_setoption odbc_specialcolumns odbc_statistics odbc_tableprivileges odbc_tables contained
+syn keyword phpFunctions openssl_cipher_iv_length openssl_csr_export_to_file openssl_csr_export openssl_csr_get_public_key openssl_csr_get_subject openssl_csr_new openssl_csr_sign openssl_decrypt openssl_dh_compute_key openssl_digest openssl_encrypt openssl_error_string openssl_free_key openssl_get_cert_locations openssl_get_cipher_methods openssl_get_md_methods openssl_get_privatekey openssl_get_publickey openssl_open openssl_pbkdf2 openssl_pkcs12_export_to_file openssl_pkcs12_export openssl_pkcs12_read openssl_pkcs7_decrypt openssl_pkcs7_encrypt openssl_pkcs7_sign openssl_pkcs7_verify openssl_pkey_export_to_file openssl_pkey_export openssl_pkey_free openssl_pkey_get_details openssl_pkey_get_private openssl_pkey_get_public openssl_pkey_new openssl_private_decrypt openssl_private_encrypt openssl_public_decrypt openssl_public_encrypt openssl_random_pseudo_bytes openssl_seal openssl_sign openssl_spki_export_challenge openssl_spki_export openssl_spki_new openssl_spki_verify openssl_verify openssl_x509_check_private_key openssl_x509_checkpurpose openssl_x509_export_to_file openssl_x509_export openssl_x509_fingerprint openssl_x509_free openssl_x509_parse openssl_x509_read contained
+syn keyword phpFunctions ora_bind ora_close ora_columnname ora_columnsize ora_columntype ora_commit ora_commitoff ora_commiton ora_do ora_error ora_errorcode ora_exec ora_fetch_into ora_fetch ora_getcolumn ora_logoff ora_logon ora_numcols ora_numrows ora_open ora_parse ora_plogon ora_rollback contained
+syn keyword phpFunctions flush ob_clean ob_end_clean ob_end_flush ob_flush ob_get_clean ob_get_contents ob_get_flush ob_get_length ob_get_level ob_get_status ob_gzhandler ob_implicit_flush ob_list_handlers ob_start output_add_rewrite_var output_reset_rewrite_vars contained
+syn keyword phpFunctions overload contained
+syn keyword phpFunctions ovrimos_close ovrimos_commit ovrimos_connect ovrimos_cursor ovrimos_exec ovrimos_execute ovrimos_fetch_into ovrimos_fetch_row ovrimos_field_len ovrimos_field_name ovrimos_field_num ovrimos_field_type ovrimos_free_result ovrimos_longreadlen ovrimos_num_fields ovrimos_num_rows ovrimos_prepare ovrimos_result_all ovrimos_result ovrimos_rollback contained
+syn keyword phpFunctions pcntl_exec pcntl_fork pcntl_signal pcntl_waitpid pcntl_wexitstatus pcntl_wifexited pcntl_wifsignaled pcntl_wifstopped pcntl_wstopsig pcntl_wtermsig contained
+syn keyword phpFunctions preg_grep preg_match_all preg_match preg_quote preg_replace_callback preg_replace preg_split contained
+syn keyword phpFunctions pdf_add_annotation pdf_add_bookmark pdf_add_launchlink pdf_add_locallink pdf_add_note pdf_add_outline pdf_add_pdflink pdf_add_thumbnail pdf_add_weblink pdf_arc pdf_arcn pdf_attach_file pdf_begin_page pdf_begin_pattern pdf_begin_template pdf_circle pdf_clip pdf_close_image pdf_close_pdi_page pdf_close_pdi pdf_close pdf_closepath_fill_stroke pdf_closepath_stroke pdf_closepath pdf_concat pdf_continue_text pdf_curveto pdf_delete pdf_end_page pdf_end_pattern pdf_end_template pdf_endpath pdf_fill_stroke pdf_fill pdf_findfont pdf_get_buffer pdf_get_font pdf_get_fontname pdf_get_fontsize pdf_get_image_height pdf_get_image_width pdf_get_majorversion pdf_get_minorversion pdf_get_parameter pdf_get_pdi_parameter pdf_get_pdi_value pdf_get_value pdf_initgraphics pdf_lineto pdf_makespotcolor pdf_moveto pdf_new pdf_open_CCITT pdf_open_file pdf_open_gif pdf_open_image_file pdf_open_image pdf_open_jpeg pdf_open_memory_image pdf_open_pdi_page pdf_open_pdi pdf_open_png pdf_open_tiff pdf_open pdf_place_image pdf_place_pdi_page pdf_rect pdf_restore pdf_rotate pdf_save pdf_scale pdf_set_border_color pdf_set_border_dash pdf_set_border_style pdf_set_char_spacing pdf_set_duration pdf_set_font pdf_set_horiz_scaling pdf_set_info_author pdf_set_info_creator pdf_set_info_keywords pdf_set_info_subject pdf_set_info_title pdf_set_info pdf_set_leading pdf_set_parameter pdf_set_text_matrix pdf_set_text_pos pdf_set_text_rendering pdf_set_text_rise pdf_set_value pdf_set_word_spacing pdf_setcolor pdf_setdash pdf_setflat pdf_setfont pdf_setgray_fill pdf_setgray_stroke pdf_setgray pdf_setlinecap pdf_setlinejoin pdf_setlinewidth pdf_setmatrix pdf_setmiterlimit pdf_setpolydash pdf_setrgbcolor_fill pdf_setrgbcolor_stroke pdf_setrgbcolor pdf_show_boxed pdf_show_xy pdf_show pdf_skew pdf_stringwidth pdf_stroke pdf_translate contained
+syn keyword phpFunctions pfpro_cleanup pfpro_init pfpro_process_raw pfpro_process pfpro_version contained
+syn keyword phpFunctions pg_affected_rows pg_cancel_query pg_client_encoding pg_close pg_connect pg_connection_busy pg_connection_reset pg_connection_status pg_convert pg_copy_from pg_copy_to pg_dbname pg_delete pg_end_copy pg_escape_bytea pg_escape_string pg_fetch_all pg_fetch_array pg_fetch_assoc pg_fetch_object pg_fetch_result pg_fetch_row pg_field_is_null pg_field_name pg_field_num pg_field_prtlen pg_field_size pg_field_type pg_free_result pg_get_notify pg_get_pid pg_get_result pg_host pg_insert pg_last_error pg_last_notice pg_last_oid pg_lo_close pg_lo_create pg_lo_export pg_lo_import pg_lo_open pg_lo_read_all pg_lo_read pg_lo_seek pg_lo_tell pg_lo_unlink pg_lo_write pg_meta_data pg_num_fields pg_num_rows pg_options pg_pconnect pg_ping pg_port pg_put_line pg_query pg_result_error pg_result_seek pg_result_status pg_select pg_send_query pg_set_client_encoding pg_trace pg_tty pg_unescape_bytea pg_untrace pg_update contained
+syn keyword phpFunctions posix_ctermid posix_get_last_error posix_getcwd posix_getegid posix_geteuid posix_getgid posix_getgrgid posix_getgrnam posix_getgroups posix_getlogin posix_getpgid posix_getpgrp posix_getpid posix_getppid posix_getpwnam posix_getpwuid posix_getrlimit posix_getsid posix_getuid posix_isatty posix_kill posix_mkfifo posix_setegid posix_seteuid posix_setgid posix_setpgid posix_setsid posix_setuid posix_strerror posix_times posix_ttyname posix_uname contained
+syn keyword phpFunctions printer_abort printer_close printer_create_brush printer_create_dc printer_create_font printer_create_pen printer_delete_brush printer_delete_dc printer_delete_font printer_delete_pen printer_draw_bmp printer_draw_chord printer_draw_elipse printer_draw_line printer_draw_pie printer_draw_rectangle printer_draw_roundrect printer_draw_text printer_end_doc printer_end_page printer_get_option printer_list printer_logical_fontheight printer_open printer_select_brush printer_select_font printer_select_pen printer_set_option printer_start_doc printer_start_page printer_write contained
+syn keyword phpFunctions pspell_add_to_personal pspell_add_to_session pspell_check pspell_clear_session pspell_config_create pspell_config_ignore pspell_config_mode pspell_config_personal pspell_config_repl pspell_config_runtogether pspell_config_save_repl pspell_new_config pspell_new_personal pspell_new pspell_save_wordlist pspell_store_replacement pspell_suggest contained
+syn keyword phpFunctions qdom_error qdom_tree contained
+syn keyword phpFunctions readline_add_history readline_clear_history readline_completion_function readline_info readline_list_history readline_read_history readline_write_history readline contained
+syn keyword phpFunctions recode_file recode_string recode contained
+syn keyword phpFunctions ereg_replace ereg eregi_replace eregi split spliti sql_regcase contained
+syn keyword phpFunctions ftok msg_get_queue msg_receive msg_remove_queue msg_send msg_set_queue msg_stat_queue sem_acquire sem_get sem_release sem_remove shm_attach shm_detach shm_get_var shm_put_var shm_remove_var shm_remove contained
+syn keyword phpFunctions sesam_affected_rows sesam_commit sesam_connect sesam_diagnostic sesam_disconnect sesam_errormsg sesam_execimm sesam_fetch_array sesam_fetch_result sesam_fetch_row sesam_field_array sesam_field_name sesam_free_result sesam_num_fields sesam_query sesam_rollback sesam_seek_row sesam_settransaction contained
+syn keyword phpFunctions session_cache_expire session_cache_limiter session_decode session_destroy session_encode session_get_cookie_params session_id session_is_registered session_module_name session_name session_regenerate_id session_register session_save_path session_set_cookie_params session_set_save_handler session_start session_unregister session_unset session_write_close contained
+syn keyword phpFunctions shmop_close shmop_delete shmop_open shmop_read shmop_size shmop_write contained
+syn keyword phpFunctions snmp_get_quick_print snmp_set_quick_print snmpget snmprealwalk snmpset snmpwalk snmpwalkoid contained
+syn keyword phpFunctions socket_accept socket_bind socket_clear_error socket_close socket_connect socket_create_listen socket_create_pair socket_create socket_get_option socket_getpeername socket_getsockname socket_iovec_add socket_iovec_alloc socket_iovec_delete socket_iovec_fetch socket_iovec_free socket_iovec_set socket_last_error socket_listen socket_read socket_readv socket_recv socket_recvfrom socket_recvmsg socket_select socket_send socket_sendmsg socket_sendto socket_set_block socket_set_nonblock socket_set_option socket_shutdown socket_strerror socket_write socket_writev contained
+syn keyword phpFunctions sqlite_array_query sqlite_busy_timeout sqlite_changes sqlite_close sqlite_column sqlite_create_aggregate sqlite_create_function sqlite_current sqlite_error_string sqlite_escape_string sqlite_fetch_array sqlite_fetch_single sqlite_fetch_string sqlite_field_name sqlite_has_more sqlite_last_error sqlite_last_insert_rowid sqlite_libencoding sqlite_libversion sqlite_next sqlite_num_fields sqlite_num_rows sqlite_open sqlite_popen sqlite_query sqlite_rewind sqlite_seek sqlite_udf_decode_binary sqlite_udf_encode_binary sqlite_unbuffered_query contained
+syn keyword phpFunctions stream_context_create stream_context_get_options stream_context_set_option stream_context_set_params stream_copy_to_stream stream_filter_append stream_filter_prepend stream_filter_register stream_get_contents stream_get_filters stream_get_line stream_get_meta_data stream_get_transports stream_get_wrappers stream_register_wrapper stream_select stream_set_blocking stream_set_timeout stream_set_write_buffer stream_socket_accept stream_socket_client stream_socket_get_name stream_socket_recvfrom stream_socket_sendto stream_socket_server stream_wrapper_register contained
+syn keyword phpFunctions addcslashes addslashes bin2hex chop chr chunk_split convert_cyr_string count_chars crc32 crypt explode fprintf get_html_translation_table hebrev hebrevc html_entity_decode htmlentities htmlspecialchars implode join levenshtein localeconv ltrim md5_file md5 metaphone money_format nl_langinfo nl2br number_format ord parse_str print printf quoted_printable_decode quotemeta rtrim setlocale sha1_file sha1 similar_text soundex sprintf sscanf str_ireplace str_pad str_repeat str_replace str_rot13 str_shuffle str_split str_word_count strcasecmp strchr strcmp strcoll strcspn strip_tags stripcslashes stripos stripslashes stristr strlen strnatcasecmp strnatcmp strncasecmp strncmp strpos strrchr strrev strripos strrpos strspn strstr strtok strtolower strtoupper strtr substr_compare substr_count substr_replace substr trim ucfirst ucwords vprintf vsprintf wordwrap contained
+syn keyword phpFunctions swf_actiongeturl swf_actiongotoframe swf_actiongotolabel swf_actionnextframe swf_actionplay swf_actionprevframe swf_actionsettarget swf_actionstop swf_actiontogglequality swf_actionwaitforframe swf_addbuttonrecord swf_addcolor swf_closefile swf_definebitmap swf_definefont swf_defineline swf_definepoly swf_definerect swf_definetext swf_endbutton swf_enddoaction swf_endshape swf_endsymbol swf_fontsize swf_fontslant swf_fonttracking swf_getbitmapinfo swf_getfontinfo swf_getframe swf_labelframe swf_lookat swf_modifyobject swf_mulcolor swf_nextid swf_oncondition swf_openfile swf_ortho2 swf_ortho swf_perspective swf_placeobject swf_polarview swf_popmatrix swf_posround swf_pushmatrix swf_removeobject swf_rotate swf_scale swf_setfont swf_setframe swf_shapearc swf_shapecurveto3 swf_shapecurveto swf_shapefillbitmapclip swf_shapefillbitmaptile swf_shapefilloff swf_shapefillsolid swf_shapelinesolid swf_shapelineto swf_shapemoveto swf_showframe swf_startbutton swf_startdoaction swf_startshape swf_startsymbol swf_textwidth swf_translate swf_viewport contained
+syn keyword phpFunctions sybase_affected_rows sybase_close sybase_connect sybase_data_seek sybase_deadlock_retry_count sybase_fetch_array sybase_fetch_assoc sybase_fetch_field sybase_fetch_object sybase_fetch_row sybase_field_seek sybase_free_result sybase_get_last_message sybase_min_client_severity sybase_min_error_severity sybase_min_message_severity sybase_min_server_severity sybase_num_fields sybase_num_rows sybase_pconnect sybase_query sybase_result sybase_select_db sybase_set_message_handler sybase_unbuffered_query contained
+syn keyword phpFunctions tidy_access_count tidy_clean_repair tidy_config_count tidy_diagnose tidy_error_count tidy_get_body tidy_get_config tidy_get_error_buffer tidy_get_head tidy_get_html_ver tidy_get_html tidy_get_output tidy_get_release tidy_get_root tidy_get_status tidy_getopt tidy_is_xhtml tidy_load_config tidy_parse_file tidy_parse_string tidy_repair_file tidy_repair_string tidy_reset_config tidy_save_config tidy_set_encoding tidy_setopt tidy_warning_count contained
+syn keyword phpMethods attributes children get_attr get_nodes has_children has_siblings is_asp is_comment is_html is_jsp is_jste is_text is_xhtml is_xml next prev tidy_node contained
+syn keyword phpFunctions token_get_all token_name contained
+syn keyword phpFunctions base64_decode base64_encode get_meta_tags http_build_query parse_url rawurldecode rawurlencode urldecode urlencode contained
+syn keyword phpFunctions doubleval empty floatval get_defined_vars get_resource_type gettype import_request_variables intval is_array is_bool is_callable is_double is_float is_int is_integer is_long is_null is_numeric is_object is_real is_resource is_scalar is_string isset print_r serialize settype strval unserialize unset var_dump var_export contained
+syn keyword phpFunctions vpopmail_add_alias_domain_ex vpopmail_add_alias_domain vpopmail_add_domain_ex vpopmail_add_domain vpopmail_add_user vpopmail_alias_add vpopmail_alias_del_domain vpopmail_alias_del vpopmail_alias_get_all vpopmail_alias_get vpopmail_auth_user vpopmail_del_domain_ex vpopmail_del_domain vpopmail_del_user vpopmail_error vpopmail_passwd vpopmail_set_user_quota contained
+syn keyword phpFunctions w32api_deftype w32api_init_dtype w32api_invoke_function w32api_register_function w32api_set_call_method contained
+syn keyword phpFunctions wddx_add_vars wddx_deserialize wddx_packet_end wddx_packet_start wddx_serialize_value wddx_serialize_vars contained
+syn keyword phpFunctions utf8_decode utf8_encode xml_error_string xml_get_current_byte_index xml_get_current_column_number xml_get_current_line_number xml_get_error_code xml_parse_into_struct xml_parse xml_parser_create_ns xml_parser_create xml_parser_free xml_parser_get_option xml_parser_set_option xml_set_character_data_handler xml_set_default_handler xml_set_element_handler xml_set_end_namespace_decl_handler xml_set_external_entity_ref_handler xml_set_notation_decl_handler xml_set_object xml_set_processing_instruction_handler xml_set_start_namespace_decl_handler xml_set_unparsed_entity_decl_handler contained
+syn keyword phpFunctions xmlrpc_decode_request xmlrpc_decode xmlrpc_encode_request xmlrpc_encode xmlrpc_get_type xmlrpc_parse_method_descriptions xmlrpc_server_add_introspection_data xmlrpc_server_call_method xmlrpc_server_create xmlrpc_server_destroy xmlrpc_server_register_introspection_callback xmlrpc_server_register_method xmlrpc_set_type contained
+syn keyword phpFunctions xslt_create xslt_errno xslt_error xslt_free xslt_output_process xslt_set_base xslt_set_encoding xslt_set_error_handler xslt_set_log xslt_set_sax_handler xslt_set_sax_handlers xslt_set_scheme_handler xslt_set_scheme_handlers contained
+syn keyword phpFunctions yaz_addinfo yaz_ccl_conf yaz_ccl_parse yaz_close yaz_connect yaz_database yaz_element yaz_errno yaz_error yaz_es_result yaz_get_option yaz_hits yaz_itemorder yaz_present yaz_range yaz_record yaz_scan_result yaz_scan yaz_schema yaz_search yaz_set_option yaz_sort yaz_syntax yaz_wait contained
+syn keyword phpFunctions zip_close zip_entry_close zip_entry_compressedsize zip_entry_compressionmethod zip_entry_filesize zip_entry_name zip_entry_open zip_entry_read zip_open zip_read contained
+syn keyword phpFunctions gzclose gzcompress gzdeflate gzencode gzeof gzfile gzgetc gzgets gzgetss gzinflate gzopen gzpassthru gzputs gzread gzrewind gzseek gztell gzuncompress gzwrite readgzfile zlib_get_coding_type contained
 
 if exists( "php_baselib" )
-  syn keyword phpMethods  query next_record num_rows affected_rows nf f p np num_fields haltmsg seek link_id query_id metadata table_names nextid connect halt free register unregister is_registered delete url purl self_url pself_url hidden_session add_query padd_query reimport_get_vars reimport_post_vars reimport_cookie_vars set_container set_tokenname release_token put_headers get_id get_id put_id freeze thaw gc reimport_any_vars start url purl login_if is_authenticated auth_preauth auth_loginform auth_validatelogin auth_refreshlogin auth_registerform auth_doregister start check have_perm permsum perm_invalid contained
-  syn keyword phpFunctions  page_open page_close sess_load sess_save  contained
+  syn keyword phpMethods query next_record num_rows affected_rows nf f p np num_fields haltmsg seek link_id query_id metadata table_names nextid connect halt free register unregister is_registered delete url purl self_url pself_url hidden_session add_query padd_query reimport_get_vars reimport_post_vars reimport_cookie_vars set_container set_tokenname release_token put_headers get_id get_id put_id freeze thaw gc reimport_any_vars start url purl login_if is_authenticated auth_preauth auth_loginform auth_validatelogin auth_refreshlogin auth_registerform auth_doregister start check have_perm permsum perm_invalid contained
+  syn keyword phpFunctions page_open page_close sess_load sess_save contained
 endif
 
 " Conditional
-syn keyword phpConditional  declare else enddeclare endswitch elseif endif if switch  contained
+syn keyword phpConditional declare else enddeclare endswitch elseif endif if switch contained
 
 " Repeat
-syn keyword phpRepeat as do endfor endforeach endwhile for foreach while  contained
+syn keyword phpRepeat as do endfor endforeach endwhile for foreach while contained
 
 " Repeat
-syn keyword phpLabel  case default switch contained
+syn keyword phpLabel case default switch contained
 
 " Statement
-syn keyword phpStatement  return break continue exit goto  contained
+syn keyword phpStatement return break continue exit goto yield contained
 
 " Keyword
-syn keyword phpKeyword  var const contained
+syn keyword phpKeyword var const contained
 
 " Type
-syn keyword phpType bool boolean int integer real double float string array object NULL  contained
+syn keyword phpType bool boolean int integer real double float string array object NULL callable iterable contained
 
 " Structure
-syn keyword phpStructure  namespace extends implements instanceof parent self contained
+syn keyword phpStructure namespace extends implements instanceof parent self contained
 
 " Operator
 syn match phpOperator "[-=+%^&|*!.~?:]" contained display
-syn match phpOperator "[-+*/%^&|.]="  contained display
-syn match phpOperator "/[^*/]"me=e-1  contained display
-syn match phpOperator "\$"  contained display
+syn match phpOperator "[-+*/%^&|.]=" contained display
+syn match phpOperator "/[^*/]"me=e-1 contained display
+syn match phpOperator "\$" contained display
 syn match phpOperator "&&\|\<and\>" contained display
 syn match phpOperator "||\|\<x\=or\>" contained display
 syn match phpRelation "[!=<>]=" contained display
-syn match phpRelation "[<>]"  contained display
-syn match phpMemberSelector "->"  contained display
-syn match phpVarSelector  "\$"  contained display
+syn match phpRelation "[<>]" contained display
+syn match phpMemberSelector "->" contained display
+syn match phpVarSelector "\$" contained display
 
 " Identifier
-syn match phpIdentifier "$\h\w*"  contained contains=phpEnvVar,phpIntVar,phpVarSelector display
-syn match phpIdentifierSimply "${\h\w*}"  contains=phpOperator,phpParent  contained display
-syn region  phpIdentifierComplex  matchgroup=phpParent start="{\$"rs=e-1 end="}"  contains=phpIdentifier,phpMemberSelector,phpVarSelector,phpIdentifierComplexP contained extend
-syn region  phpIdentifierComplexP matchgroup=phpParent start="\[" end="]" contains=@phpClInside contained
+syn match phpIdentifier "$\h\w*" contained contains=phpEnvVar,phpIntVar,phpVarSelector display
+syn match phpIdentifierSimply "${\h\w*}" contains=phpOperator,phpParent contained display
+syn region phpIdentifierComplex matchgroup=phpParent start="{\$"rs=e-1 end="}" contains=phpIdentifier,phpMemberSelector,phpVarSelector,phpIdentifierComplexP contained extend
+syn region phpIdentifierComplexP matchgroup=phpParent start="\[" end="]" contains=@phpClInside contained
 
 " Interpolated indentifiers (inside strings)
 	syn match phpBrackets "[][}{]" contained display
 	" errors
-		syn match phpInterpSimpleError "\[[^]]*\]" contained display  " fallback (if nothing else matches)
+		syn match phpInterpSimpleError "\[[^]]*\]" contained display " fallback (if nothing else matches)
 		syn match phpInterpSimpleError "->[^a-zA-Z_]" contained display
 		" make sure these stay above the correct DollarCurlies so they don't take priority
-		syn match phpInterpBogusDollarCurley "${[^}]*}" contained display  " fallback (if nothing else matches)
+		syn match phpInterpBogusDollarCurley "${[^}]*}" contained display " fallback (if nothing else matches)
 	syn match phpinterpSimpleBracketsInner "\w\+" contained
 	syn match phpInterpSimpleBrackets "\[\h\w*]" contained contains=phpBrackets,phpInterpSimpleBracketsInner
 	syn match phpInterpSimpleBrackets "\[\d\+]" contained contains=phpBrackets,phpInterpSimpleBracketsInner
@@ -298,7 +298,7 @@ syn region  phpIdentifierComplexP matchg
 	syn match phpInterpSimple "\$\h\w*\(\[[^]]*\]\|->\h\w*\)\?" contained contains=phpInterpSimpleBrackets,phpIdentifier,phpInterpSimpleError,phpMethods,phpMemberSelector display
 	syn match phpInterpVarname "\h\w*" contained
 	syn match phpInterpMethodName "\h\w*" contained " default color
-	syn match phpInterpSimpleCurly "\${\h\w*}"  contains=phpInterpVarname contained extend
+	syn match phpInterpSimpleCurly "\${\h\w*}" contains=phpInterpVarname contained extend
 	syn region phpInterpDollarCurley1Helper matchgroup=phpParent start="{" end="\[" contains=phpInterpVarname contained
 	syn region phpInterpDollarCurly1 matchgroup=phpParent start="\${\h\w*\["rs=s+1 end="]}" contains=phpInterpDollarCurley1Helper,@phpClConst contained extend
 
@@ -318,28 +318,27 @@ syn region  phpIdentifierComplexP matchg
 syn match phpMethodsVar "->\h\w*" contained contains=phpMethods,phpMemberSelector display
 
 " Include
-syn keyword phpInclude  include require include_once require_once use contained
+syn keyword phpInclude include require include_once require_once use contained
 
-" Peter Hodge - added 'clone' keyword
 " Define
 syn keyword phpDefine new clone contained
 
 " Boolean
-syn keyword phpBoolean  true false  contained
+syn keyword phpBoolean true false contained
 
 " Number
 syn match phpNumber "-\=\<\d\+\>" contained display
-syn match phpNumber "\<0x\x\{1,8}\>"  contained display
+syn match phpNumber "\<0x\x\{1,8}\>" contained display
 
 " Float
-syn match phpFloat  "\(-\=\<\d+\|-\=\)\.\d\+\>" contained display
+syn match phpFloat "\(-\=\<\d+\|-\=\)\.\d\+\>" contained display
 
 " Backslash escapes
 	syn case match
 	" for double quotes and heredoc
-	syn match phpBackslashSequences  "\\[fnrtv\\\"$]" contained display
-	syn match phpBackslashSequences  "\\\d\{1,3}"  contained contains=phpOctalError display
-	syn match phpBackslashSequences  "\\x\x\{1,2}" contained display
+	syn match phpBackslashSequences "\\[fnrtv\\\"$]" contained display
+	syn match phpBackslashSequences "\\\d\{1,3}" contained contains=phpOctalError display
+	syn match phpBackslashSequences "\\x\x\{1,2}" contained display
 	" additional sequence for double quotes only
 	syn match phpBackslashDoubleQuote "\\[\"]" contained display
 	" for single quotes only
@@ -348,57 +347,57 @@ syn match phpFloat  "\(-\=\<\d+\|-\=\)\.
 
 
 " Error
-syn match phpOctalError "[89]"  contained display
+syn match phpOctalError "[89]" contained display
 if exists("php_parent_error_close")
-  syn match phpParentError  "[)\]}]"  contained display
+  syn match phpParentError "[)\]}]" contained display
 endif
 
 " Todo
-syn keyword phpTodo todo fixme xxx  contained
+syn keyword phpTodo todo fixme xxx contained
 
 " Comment
 if exists("php_parent_error_open")
-  syn region  phpComment  start="/\*" end="\*/" contained contains=phpTodo,@Spell
+  syn region phpComment start="/\*" end="\*/" contained contains=phpTodo,@Spell
 else
-  syn region  phpComment  start="/\*" end="\*/" contained contains=phpTodo,@Spell extend
+  syn region phpComment start="/\*" end="\*/" contained contains=phpTodo,@Spell extend
 endif
-syn match phpComment  "#.\{-}\(?>\|$\)\@="  contained contains=phpTodo,@Spell
-syn match phpComment  "//.\{-}\(?>\|$\)\@=" contained contains=phpTodo,@Spell
+syn match phpComment "#.\{-}\(?>\|$\)\@=" contained contains=phpTodo,@Spell
+syn match phpComment "//.\{-}\(?>\|$\)\@=" contained contains=phpTodo,@Spell
 
 " String
 if exists("php_parent_error_open")
-  syn region  phpStringDouble matchgroup=phpStringDouble start=+"+ skip=+\\\\\|\\"+ end=+"+  contains=@phpAddStrings,phpBackslashSequences,phpBackslashDoubleQuote,@phpInterpDouble,@Spell contained keepend
-  syn region  phpBacktick matchgroup=phpBacktick start=+`+ skip=+\\\\\|\\"+ end=+`+  contains=@phpAddStrings,phpIdentifier,phpBackslashSequences,phpIdentifierSimply,phpIdentifierComplex contained keepend
-  syn region  phpStringSingle matchgroup=phpStringSingle start=+'+ skip=+\\\\\|\\'+ end=+'+  contains=@phpAddStrings,phpBackslashSingleQuote,@Spell contained keepend
+  syn region phpStringDouble matchgroup=phpStringDouble start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=@phpAddStrings,phpBackslashSequences,phpBackslashDoubleQuote,@phpInterpDouble,@Spell contained keepend
+  syn region phpBacktick matchgroup=phpBacktick start=+`+ skip=+\\\\\|\\"+ end=+`+ contains=@phpAddStrings,phpIdentifier,phpBackslashSequences,phpIdentifierSimply,phpIdentifierComplex contained keepend
+  syn region phpStringSingle matchgroup=phpStringSingle start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=@phpAddStrings,phpBackslashSingleQuote,@Spell contained keepend
 else
-  syn region  phpStringDouble matchgroup=phpStringDouble start=+"+ skip=+\\\\\|\\"+ end=+"+  contains=@phpAddStrings,phpBackslashSequences,phpBackslashDoubleQuote,@phpInterpDouble,@Spell contained extend keepend
-  syn region  phpBacktick matchgroup=phpBacktick start=+`+ skip=+\\\\\|\\"+ end=+`+  contains=@phpAddStrings,phpIdentifier,phpBackslashSequences,phpIdentifierSimply,phpIdentifierComplex contained extend keepend
-  syn region  phpStringSingle matchgroup=phpStringSingle start=+'+ skip=+\\\\\|\\'+ end=+'+  contains=@phpAddStrings,phpBackslashSingleQuote,@Spell contained keepend extend
+  syn region phpStringDouble matchgroup=phpStringDouble start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=@phpAddStrings,phpBackslashSequences,phpBackslashDoubleQuote,@phpInterpDouble,@Spell contained extend keepend
+  syn region phpBacktick matchgroup=phpBacktick start=+`+ skip=+\\\\\|\\"+ end=+`+ contains=@phpAddStrings,phpIdentifier,phpBackslashSequences,phpIdentifierSimply,phpIdentifierComplex contained extend keepend
+  syn region phpStringSingle matchgroup=phpStringSingle start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=@phpAddStrings,phpBackslashSingleQuote,@Spell contained keepend extend
 endif
 
 " HereDoc and NowDoc
 syn case match
 
 " HereDoc
-syn region  phpHereDoc  matchgroup=Delimiter start="\(<<<\)\@<=\(\"\=\)\z(\I\i*\)\2$" end="^\z1\(;\=$\)\@=" contained contains=phpIdentifier,phpIdentifierSimply,phpIdentifierComplex,phpBackslashSequences,phpMethodsVar,@Spell keepend extend
+syn region phpHereDoc matchgroup=Delimiter start="\(<<<\)\@<=\(\"\=\)\z(\I\i*\)\2$" end="^\z1\(;\=$\)\@=" contained contains=phpIdentifier,phpIdentifierSimply,phpIdentifierComplex,phpBackslashSequences,phpMethodsVar,@Spell keepend extend
 " including HTML,JavaScript,SQL even if not enabled via options
-syn region  phpHereDoc  matchgroup=Delimiter start="\(<<<\)\@<=\(\"\=\)\z(\(\I\i*\)\=\(html\)\c\(\i*\)\)\2$" end="^\z1\(;\=$\)\@="  contained contains=@htmlTop,phpIdentifier,phpIdentifierSimply,phpIdentifierComplex,phpBackslashSequences,phpMethodsVar,@Spell keepend extend
-syn region  phpHereDoc  matchgroup=Delimiter start="\(<<<\)\@<=\(\"\=\)\z(\(\I\i*\)\=\(sql\)\c\(\i*\)\)\2$" end="^\z1\(;\=$\)\@=" contained contains=@sqlTop,phpIdentifier,phpIdentifierSimply,phpIdentifierComplex,phpBackslashSequences,phpMethodsVar,@Spell keepend extend
-syn region  phpHereDoc  matchgroup=Delimiter start="\(<<<\)\@<=\(\"\=\)\z(\(\I\i*\)\=\(javascript\)\c\(\i*\)\)\2$" end="^\z1\(;\=$\)\@="  contained contains=@htmlJavascript,phpIdentifierSimply,phpIdentifier,phpIdentifierComplex,phpBackslashSequences,phpMethodsVar,@Spell keepend extend
+syn region phpHereDoc matchgroup=Delimiter start="\(<<<\)\@<=\(\"\=\)\z(\(\I\i*\)\=\(html\)\c\(\i*\)\)\2$" end="^\z1\(;\=$\)\@=" contained contains=@htmlTop,phpIdentifier,phpIdentifierSimply,phpIdentifierComplex,phpBackslashSequences,phpMethodsVar,@Spell keepend extend
+syn region phpHereDoc matchgroup=Delimiter start="\(<<<\)\@<=\(\"\=\)\z(\(\I\i*\)\=\(sql\)\c\(\i*\)\)\2$" end="^\z1\(;\=$\)\@=" contained contains=@sqlTop,phpIdentifier,phpIdentifierSimply,phpIdentifierComplex,phpBackslashSequences,phpMethodsVar,@Spell keepend extend
+syn region phpHereDoc matchgroup=Delimiter start="\(<<<\)\@<=\(\"\=\)\z(\(\I\i*\)\=\(javascript\)\c\(\i*\)\)\2$" end="^\z1\(;\=$\)\@=" contained contains=@htmlJavascript,phpIdentifierSimply,phpIdentifier,phpIdentifierComplex,phpBackslashSequences,phpMethodsVar,@Spell keepend extend
 
 " NowDoc
-syn region  phpNowDoc  matchgroup=Delimiter start="\(<<<\)\@<='\z(\I\i*\)'$" end="^\z1\(;\=$\)\@=" contained contains=@Spell keepend extend
+syn region phpNowDoc matchgroup=Delimiter start="\(<<<\)\@<='\z(\I\i*\)'$" end="^\z1\(;\=$\)\@=" contained contains=@Spell keepend extend
 " including HTML,JavaScript,SQL even if not enabled via options
-syn region  phpNowDoc  matchgroup=Delimiter start="\(<<<\)\@<='\z(\(\I\i*\)\=\(html\)\c\(\i*\)\)'$" end="^\z1\(;\=$\)\@="  contained contains=@htmlTop,@Spell keepend extend
-syn region  phpNowDoc  matchgroup=Delimiter start="\(<<<\)\@<='\z(\(\I\i*\)\=\(sql\)\c\(\i*\)\)'$" end="^\z1\(;\=$\)\@=" contained contains=@sqlTop,@Spell keepend extend
-syn region  phpNowDoc  matchgroup=Delimiter start="\(<<<\)\@<='\z(\(\I\i*\)\=\(javascript\)\c\(\i*\)\)'$" end="^\z1\(;\=$\)\@="  contained contains=@htmlJavascript,@Spell keepend extend
+syn region phpNowDoc matchgroup=Delimiter start="\(<<<\)\@<='\z(\(\I\i*\)\=\(html\)\c\(\i*\)\)'$" end="^\z1\(;\=$\)\@=" contained contains=@htmlTop,@Spell keepend extend
+syn region phpNowDoc matchgroup=Delimiter start="\(<<<\)\@<='\z(\(\I\i*\)\=\(sql\)\c\(\i*\)\)'$" end="^\z1\(;\=$\)\@=" contained contains=@sqlTop,@Spell keepend extend
+syn region phpNowDoc matchgroup=Delimiter start="\(<<<\)\@<='\z(\(\I\i*\)\=\(javascript\)\c\(\i*\)\)'$" end="^\z1\(;\=$\)\@=" contained contains=@htmlJavascript,@Spell keepend extend
 syn case ignore
 
 " Parent
 if exists("php_parent_error_close") || exists("php_parent_error_open")
-  syn match phpParent "[{}]"  contained
-  syn region  phpParent matchgroup=Delimiter start="(" end=")"  contained contains=@phpClInside transparent
-  syn region  phpParent matchgroup=Delimiter start="\[" end="\]"  contained contains=@phpClInside transparent
+  syn match phpParent "[{}]" contained
+  syn region phpParent matchgroup=Delimiter start="(" end=")" contained contains=@phpClInside transparent
+  syn region phpParent matchgroup=Delimiter start="\[" end="\]" contained contains=@phpClInside transparent
   if !exists("php_parent_error_close")
     syn match phpParent "[\])]" contained
   endif
@@ -406,73 +405,67 @@ else
   syn match phpParent "[({[\]})]" contained
 endif
 
-syn cluster phpClConst  contains=phpFunctions,phpIdentifier,phpConditional,phpRepeat,phpStatement,phpOperator,phpRelation,phpStringSingle,phpStringDouble,phpBacktick,phpNumber,phpFloat,phpKeyword,phpType,phpBoolean,phpStructure,phpMethodsVar,phpConstant,phpCoreConstant,phpException
+syn cluster phpClConst contains=phpFunctions,phpIdentifier,phpConditional,phpRepeat,phpStatement,phpOperator,phpRelation,phpStringSingle,phpStringDouble,phpBacktick,phpNumber,phpFloat,phpKeyword,phpType,phpBoolean,phpStructure,phpMethodsVar,phpConstant,phpCoreConstant,phpException
 syn cluster phpClInside contains=@phpClConst,phpComment,phpLabel,phpParent,phpParentError,phpInclude,phpHereDoc,phpNowDoc
 syn cluster phpClFunction contains=@phpClInside,phpDefine,phpParentError,phpStorageClass
-syn cluster phpClTop  contains=@phpClFunction,phpFoldFunction,phpFoldClass,phpFoldInterface,phpFoldTry,phpFoldCatch
+syn cluster phpClTop contains=@phpClFunction,phpFoldFunction,phpFoldClass,phpFoldInterface,phpFoldTry,phpFoldCatch
 
 " Php Region
 if exists("php_parent_error_open")
   if exists("php_noShortTags")
-    syn region   phpRegion  matchgroup=Delimiter start="<?php" end="?>" contains=@phpClTop
+    syn region phpRegion matchgroup=Delimiter start="<?php" end="?>" contains=@phpClTop
   else
-    syn region   phpRegion  matchgroup=Delimiter start="<?\(php\)\=" end="?>" contains=@phpClTop
+    syn region phpRegion matchgroup=Delimiter start="<?\(php\)\=" end="?>" contains=@phpClTop
   endif
-  syn region   phpRegionSc  matchgroup=Delimiter start=+<script language="php">+ end=+</script>+  contains=@phpClTop
+  syn region phpRegionSc matchgroup=Delimiter start=+<script language="php">+ end=+</script>+ contains=@phpClTop
   if exists("php_asp_tags")
-    syn region   phpRegionAsp matchgroup=Delimiter start="<%\(=\)\=" end="%>" contains=@phpClTop
+    syn region phpRegionAsp matchgroup=Delimiter start="<%\(=\)\=" end="%>" contains=@phpClTop
   endif
 else
   if exists("php_noShortTags")
-    syn region   phpRegion  matchgroup=Delimiter start="<?php" end="?>" contains=@phpClTop keepend
+    syn region phpRegion matchgroup=Delimiter start="<?php" end="?>" contains=@phpClTop keepend
   else
-    syn region   phpRegion  matchgroup=Delimiter start="<?\(php\)\=" end="?>" contains=@phpClTop keepend
+    syn region phpRegion matchgroup=Delimiter start="<?\(php\)\=" end="?>" contains=@phpClTop keepend
   endif
-  syn region   phpRegionSc  matchgroup=Delimiter start=+<script language="php">+ end=+</script>+  contains=@phpClTop keepend
+  syn region phpRegionSc matchgroup=Delimiter start=+<script language="php">+ end=+</script>+ contains=@phpClTop keepend
   if exists("php_asp_tags")
-    syn region   phpRegionAsp matchgroup=Delimiter start="<%\(=\)\=" end="%>" contains=@phpClTop keepend
+    syn region phpRegionAsp matchgroup=Delimiter start="<%\(=\)\=" end="%>" contains=@phpClTop keepend
   endif
 endif
 
 " Fold
 if exists("php_folding") && php_folding==1
 " match one line constructs here and skip them at folding
-  syn keyword phpSCKeyword  abstract final private protected public static  contained
-  syn keyword phpFCKeyword  function  contained
-  syn keyword phpStorageClass global  contained
-  syn match phpDefine "\(\s\|^\)\(abstract\s\+\|final\s\+\|private\s\+\|protected\s\+\|public\s\+\|static\s\+\)*function\(\s\+.*[;}]\)\@="  contained contains=phpSCKeyword
-  syn match phpStructure  "\(\s\|^\)\(abstract\s\+\|final\s\+\)*class\(\s\+.*}\)\@="  contained
-  syn match phpStructure  "\(\s\|^\)interface\(\s\+.*}\)\@="  contained
-  syn match phpException  "\(\s\|^\)try\(\s\+.*}\)\@="  contained
-  syn match phpException  "\(\s\|^\)catch\(\s\+.*}\)\@="  contained
+  syn keyword phpSCKeyword abstract final private protected public static contained
+  syn keyword phpFCKeyword function contained
+  syn keyword phpStorageClass global contained
+  syn match phpDefine "\(\s\|^\)\(abstract\s\+\|final\s\+\|private\s\+\|protected\s\+\|public\s\+\|static\s\+\)*function\(\s\+.*[;}]\)\@=" contained contains=phpSCKeyword
+  syn match phpStructure "\(\s\|^\)\(abstract\s\+\|final\s\+\)*\(trait\|class\)\(\s\+.*}\)\@=" contained
+  syn match phpStructure "\(\s\|^\)interface\(\s\+.*}\)\@=" contained
+  syn match phpException "\(\s\|^\)try\(\s\+.*}\)\@=" contained
+  syn match phpException "\(\s\|^\)catch\(\s\+.*}\)\@=" contained
+  syn match phpException "\(\s\|^\)finally\(\s\+.*}\)\@=" contained
 
   set foldmethod=syntax
-  syn region  phpFoldHtmlInside matchgroup=Delimiter start="?>" end="<?\(php\)\=" contained transparent contains=@htmlTop
-  syn region  phpFoldFunction matchgroup=Storageclass start="^\z(\s*\)\(abstract\s\+\|final\s\+\|private\s\+\|protected\s\+\|public\s\+\|static\s\+\)*function\s\([^};]*$\)\@="rs=e-9 matchgroup=Delimiter end="^\z1}" contains=@phpClFunction,phpFoldHtmlInside,phpFCKeyword contained transparent fold extend
-  syn region  phpFoldFunction matchgroup=Define start="^function\s\([^};]*$\)\@=" matchgroup=Delimiter end="^}" contains=@phpClFunction,phpFoldHtmlInside contained transparent fold extend
-  syn region  phpFoldClass  matchgroup=Structure start="^\z(\s*\)\(abstract\s\+\|final\s\+\)*class\s\+\([^}]*$\)\@=" matchgroup=Delimiter end="^\z1}" contains=@phpClFunction,phpFoldFunction,phpSCKeyword contained transparent fold extend
-  syn region  phpFoldInterface  matchgroup=Structure start="^\z(\s*\)interface\s\+\([^}]*$\)\@=" matchgroup=Delimiter end="^\z1}" contains=@phpClFunction,phpFoldFunction contained transparent fold extend
-  syn region  phpFoldCatch  matchgroup=Exception start="^\z(\s*\)catch\s\+\([^}]*$\)\@=" matchgroup=Delimiter end="^\z1}" contains=@phpClFunction,phpFoldFunction contained transparent fold extend
-  syn region  phpFoldTry  matchgroup=Exception start="^\z(\s*\)try\s\+\([^}]*$\)\@=" matchgroup=Delimiter end="^\z1}" contains=@phpClFunction,phpFoldFunction contained transparent fold extend
-elseif exists("php_folding") && php_folding==2
-  syn keyword phpDefine function  contained
-  syn keyword phpStructure  abstract class interface  contained
-  syn keyword phpException  catch throw try contained
-  syn keyword phpStorageClass final global private protected public static  contained
-
-  set foldmethod=syntax
-  syn region  phpFoldHtmlInside matchgroup=Delimiter start="?>" end="<?\(php\)\=" contained transparent contains=@htmlTop
-  syn region  phpParent matchgroup=Delimiter start="{" end="}"  contained contains=@phpClFunction,phpFoldHtmlInside transparent fold
+  syn region phpFoldHtmlInside matchgroup=Delimiter start="?>" end="<?\(php\)\=" contained transparent contains=@htmlTop
+  syn region phpFoldFunction matchgroup=Storageclass start="^\z(\s*\)\(abstract\s\+\|final\s\+\|private\s\+\|protected\s\+\|public\s\+\|static\s\+\)*function\s\([^};]*$\)\@="rs=e-9 matchgroup=Delimiter end="^\z1}" contains=@phpClFunction,phpFoldHtmlInside,phpFCKeyword contained transparent fold extend
+  syn region phpFoldFunction matchgroup=Define start="^function\s\([^};]*$\)\@=" matchgroup=Delimiter end="^}" contains=@phpClFunction,phpFoldHtmlInside contained transparent fold extend
+  syn region phpFoldClass matchgroup=Structure start="^\z(\s*\)\(abstract\s\+\|final\s\+\)*\(trait\|class\)\s\+\([^}]*$\)\@=" matchgroup=Delimiter end="^\z1}" contains=@phpClFunction,phpFoldFunction,phpSCKeyword contained transparent fold extend
+  syn region phpFoldInterface matchgroup=Structure start="^\z(\s*\)interface\s\+\([^}]*$\)\@=" matchgroup=Delimiter end="^\z1}" contains=@phpClFunction,phpFoldFunction contained transparent fold extend
+  syn region phpFoldCatch matchgroup=Exception start="^\z(\s*\)catch\s\+\([^}]*$\)\@=" matchgroup=Delimiter end="^\z1}" contains=@phpClFunction,phpFoldFunction contained transparent fold extend
+  syn region phpFoldTry matchgroup=Exception start="^\z(\s*\)try\s\+\([^}]*$\)\@=" matchgroup=Delimiter end="^\z1}" contains=@phpClFunction,phpFoldFunction contained transparent fold extend
 else
-  syn keyword phpDefine function  contained
-  syn keyword phpStructure  abstract class interface  contained
-  syn keyword phpException  catch throw try contained
-  syn keyword phpStorageClass final global private protected public static  contained
+  syn keyword phpDefine function contained
+  syn keyword phpStructure abstract class trait interface contained
+  syn keyword phpException catch throw try finally contained
+  syn keyword phpStorageClass final global private protected public static contained
+  if exists("php_folding") && php_folding==2
+    set foldmethod=syntax
+    syn region phpFoldHtmlInside matchgroup=Delimiter start="?>" end="<?\(php\)\=" contained transparent contains=@htmlTop
+    syn region phpParent matchgroup=Delimiter start="{" end="}" contained contains=@phpClFunction,phpFoldHtmlInside transparent fold
+  endif
 endif
 
-" TODO: fold on "trait". For now just make sure it gets colored:
-syn keyword phpStructure trait
-
 " ================================================================
 " Peter Hodge - June 9, 2006
 " Some of these changes (highlighting isset/unset/echo etc) are not so
@@ -487,7 +480,7 @@ syntax keyword phpStatement die containe
 
 " Highlighting for PHP5's user-definable magic class methods
 syntax keyword phpSpecialFunction containedin=ALLBUT,phpComment,phpStringDouble,phpStringSingle,phpIdentifier
-  \  __construct __destruct __call __callStatic __get __set __isset __unset __sleep __wakeup __toString __invoke __set_state __clone __debugInfo
+  \ __construct __destruct __call __callStatic __get __set __isset __unset __sleep __wakeup __toString __invoke __set_state __clone __debugInfo
 " Highlighting for __autoload slightly different from line above
 syntax keyword phpSpecialFunction containedin=ALLBUT,phpComment,phpStringDouble,phpStringSingle,phpIdentifier,phpMethodsVar
   \ __autoload
@@ -525,30 +518,30 @@ hi def link phpInterfaces phpConstant
 
 " option defaults:
 if ! exists('php_special_functions')
-    let php_special_functions = 1
+  let php_special_functions = 1
 endif
 if ! exists('php_alt_comparisons')
-    let php_alt_comparisons = 1
+  let php_alt_comparisons = 1
 endif
 if ! exists('php_alt_assignByReference')
-    let php_alt_assignByReference = 1
+  let php_alt_assignByReference = 1
 endif
 
 if php_special_functions
-    " Highlighting for PHP built-in functions which exhibit special behaviours
-    " - isset()/unset()/empty() are not real functions.
-    " - compact()/extract() directly manipulate variables in the local scope where
-    "   regular functions would not be able to.
-    " - eval() is the token 'make_your_code_twice_as_complex()' function for PHP.
-    " - user_error()/trigger_error() can be overloaded by set_error_handler and also
-    "   have the capacity to terminate your script when type is E_USER_ERROR.
-    syntax keyword phpSpecialFunction containedin=ALLBUT,phpComment,phpStringDouble,phpStringSingle
+  " Highlighting for PHP built-in functions which exhibit special behaviours
+  " - isset()/unset()/empty() are not real functions.
+  " - compact()/extract() directly manipulate variables in the local scope where
+  "   regular functions would not be able to.
+  " - eval() is the token 'make_your_code_twice_as_complex()' function for PHP.
+  " - user_error()/trigger_error() can be overloaded by set_error_handler and also
+  "   have the capacity to terminate your script when type is E_USER_ERROR.
+  syntax keyword phpSpecialFunction containedin=ALLBUT,phpComment,phpStringDouble,phpStringSingle
   \ user_error trigger_error isset unset eval extract compact empty
 endif
 
 if php_alt_assignByReference
-    " special highlighting for '=&' operator
-    syntax match phpAssignByRef /=\s*&/ containedin=ALLBUT,phpComment,phpStringDouble,phpStringSingle
+  " special highlighting for '=&' operator
+  syntax match phpAssignByRef /=\s*&/ containedin=ALLBUT,phpComment,phpStringDouble,phpStringSingle
     hi def link phpAssignByRef Type
 endif
 
@@ -587,49 +580,49 @@ else
   exec "syn sync fromstart"
 endif
 
-syntax match  phpDocCustomTags  "@[a-zA-Z]*\(\s\+\|\n\|\r\)" containedin=phpComment
-syntax region phpDocTags  start="{@\(example\|id\|internal\|inheritdoc\|link\|source\|toc\|tutorial\)" end="}" containedin=phpComment
-syntax match  phpDocTags  "@\(abstract\|access\|author\|category\|copyright\|deprecated\|example\|final\|global\|ignore\|internal\|license\|link\|method\|name\|package\|param\|property\|return\|see\|since\|static\|staticvar\|subpackage\|tutorial\|uses\|var\|version\|contributor\|modified\|filename\|description\|filesource\|throws\)\(\s\+\)\?" containedin=phpComment
-syntax match  phpDocTodo  "@\(todo\|fixme\|xxx\)\(\s\+\)\?" containedin=phpComment
+syntax match phpDocCustomTags "@[a-zA-Z]*\(\s\+\|\n\|\r\)" containedin=phpComment
+syntax region phpDocTags start="{@\(example\|id\|internal\|inheritdoc\|link\|source\|toc\|tutorial\)" end="}" containedin=phpComment
+syntax match phpDocTags "@\(abstract\|access\|author\|category\|copyright\|deprecated\|example\|final\|global\|ignore\|internal\|license\|link\|method\|name\|package\|param\|property\|return\|see\|since\|static\|staticvar\|subpackage\|tutorial\|uses\|var\|version\|contributor\|modified\|filename\|description\|filesource\|throws\)\(\s\+\)\?" containedin=phpComment
+syntax match phpDocTodo "@\(todo\|fixme\|xxx\)\(\s\+\)\?" containedin=phpComment
 
 " Define the default highlighting.
 " Only when an item doesn't have highlighting yet
 
-hi def link phpConstant  Constant
-hi def link phpCoreConstant  Constant
+hi def link phpConstant Constant
+hi def link phpCoreConstant Constant
 hi def link phpComment Comment
 hi def link phpDocTags PreProc
 hi def link phpDocCustomTags Type
 hi def link phpException Exception
 hi def link phpBoolean Boolean
-hi def link phpStorageClass  StorageClass
+hi def link phpStorageClass StorageClass
 hi def link phpSCKeyword StorageClass
 hi def link phpFCKeyword Define
 hi def link phpStructure Structure
-hi def link phpStringSingle  String
-hi def link phpStringDouble  String
-hi def link phpBacktick  String
-hi def link phpNumber  Number
+hi def link phpStringSingle String
+hi def link phpStringDouble String
+hi def link phpBacktick String
+hi def link phpNumber Number
 hi def link phpFloat Float
 hi def link phpMethods Function
 hi def link phpFunctions Function
 hi def link phpBaselib Function
-hi def link phpRepeat  Repeat
+hi def link phpRepeat Repeat
 hi def link phpConditional Conditional
 hi def link phpLabel Label
 hi def link phpStatement Statement
 hi def link phpKeyword Statement
-hi def link phpType  Type
+hi def link phpType Type
 hi def link phpInclude Include
-hi def link phpDefine  Define
+hi def link phpDefine Define
 hi def link phpBackslashSequences SpecialChar
 hi def link phpBackslashDoubleQuote SpecialChar
 hi def link phpBackslashSingleQuote SpecialChar
-hi def link phpParent  Delimiter
-hi def link phpBrackets  Delimiter
+hi def link phpParent Delimiter
+hi def link phpBrackets Delimiter
 hi def link phpIdentifierConst Delimiter
 hi def link phpParentError Error
-hi def link phpOctalError  Error
+hi def link phpOctalError Error
 hi def link phpInterpSimpleError Error
 hi def link phpInterpBogusDollarCurley Error
 hi def link phpInterpDollarCurly1 Error
@@ -637,9 +630,9 @@ hi def link phpInterpDollarCurly2 Error
 hi def link phpInterpSimpleBracketsInner String
 hi def link phpInterpSimpleCurly Delimiter
 hi def link phpInterpVarname Identifier
-hi def link phpTodo  Todo
+hi def link phpTodo Todo
 hi def link phpDocTodo Todo
-hi def link phpMemberSelector  Structure
+hi def link phpMemberSelector Structure
 if exists("php_oldStyle")
   hi def phpIntVar guifg=Red ctermfg=DarkRed
   hi def phpEnvVar guifg=Red ctermfg=DarkRed
@@ -652,7 +645,7 @@ else
   hi def link phpIntVar Identifier
   hi def link phpEnvVar Identifier
   hi def link phpOperator Operator
-  hi def link phpVarSelector  Operator
+  hi def link phpVarSelector Operator
   hi def link phpRelation Operator
   hi def link phpIdentifier Identifier
   hi def link phpIdentifierSimply Identifier
--- a/runtime/syntax/sisu.vim
+++ b/runtime/syntax/sisu.vim
@@ -1,7 +1,7 @@
 " SiSU Vim syntax file
 " SiSU Maintainer: Ralph Amissah <ralph.amissah@gmail.com>
 " SiSU Markup:     SiSU (sisu-5.6.7)
-" Last Change:     2014-09-14
+" Last Change:     2017 Jun 22
 " URL: <http://git.sisudoc.org/gitweb/?p=code/sisu.git;a=blob;f=data/sisu/conf/editor-syntax-etc/vim/syntax/sisu.vim;hb=HEAD>
 "      <http://git.sisudoc.org/gitweb/?p=code/sisu.git;a=blob_plain;f=data/sisu/conf/editor-syntax-etc/vim/syntax/sisu.vim;hb=HEAD>
 "(originally looked at Ruby Vim by Mirko Nasato)
@@ -102,7 +102,7 @@ syn region sisu_content_alt contains=sis
 syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^```\s\+table" end="^```\(\s\|$\)"
 syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^{\(t\|table\)\(\~h\)\?\(\sc[0-9]\+;\)\?[0-9; ]*}" end="\n$"
 " block, group, poem, alt
-syn region sisu_content_alt contains=sisu_mark_endnote,sisu_content_endnote,sisu_link,sisu_mark,sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^\(block\|group\|poem\|alt\){" end="^}\1"
+syn region sisu_content_alt contains=sisu_mark_endnote,sisu_content_endnote,sisu_link,sisu_mark,sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^\z(block\|group\|poem\|alt\){" end="^}\z1"
 syn region sisu_content_alt contains=sisu_mark_endnote,sisu_content_endnote,sisu_link,sisu_mark,sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^```\s\+\(block\|group\|poem\|alt\)" end="^```\(\s\|$\)"
 " box
 syn region sisu_content_alt contains=sisu_mark_endnote,sisu_content_endnote,sisu_link,sisu_mark,sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^box\(\.[a-z]\+\)\?{" end="^}box"
--- a/runtime/tutor/tutor.fr.utf-8
+++ b/runtime/tutor/tutor.fr.utf-8
@@ -88,7 +88,7 @@ NOTE :  :q! <Entrée> annule tous les changements que vous avez faits. Dans
 
   4. Répétez les étapes 2 à 4 jusqu'à ce que la phrase soit correcte.
 
----> La vvache à sautéé au-ddessus dde la luune.
+---> La vvache a sautéé au-ddessus dde la luune.
 
   5. Maintenant que la ligne est correcte, passez à la Leçon 1.4.
 
@@ -1034,5 +1034,5 @@ NOTE : Le complètement fonctionne pour de nombreuses commandes. Essayez
   Dernières mises à jour par Dominique Pellé.
 
   E-mail :      dominique.pelle@gmail.com
-  Last Change : 2017 Jan 16
+  Last Change : 2017 Jun 30
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--- a/runtime/tutor/tutor.pt
+++ b/runtime/tutor/tutor.pt
@@ -904,7 +904,7 @@ NOTA:  Se quiser ignorar a diferena entre maisculas e minsculas em apenas
          :e $VIM/_vimrc           para MS-Windows
 
   2. Agora, leia o contedo do arquivo "vimrc" de exemplo:
-         :r $VIM/vimrc_example.vim
+         :r $VIMRUNTIME/vimrc_example.vim
 
   3. Salve o arquivo com:
          :w
--- a/runtime/tutor/tutor.pt.utf-8
+++ b/runtime/tutor/tutor.pt.utf-8
@@ -904,7 +904,7 @@ NOTA:  Se quiser ignorar a diferença entre maiúsculas e minúsculas em apenas
          :e $VIM/_vimrc           para MS-Windows
 
   2. Agora, leia o conteúdo do arquivo "vimrc" de exemplo:
-         :r $VIM/vimrc_example.vim
+	 :r $VIMRUNTIME/vimrc_example.vim
 
   3. Salve o arquivo com:
          :w
--- a/src/po/Makefile
+++ b/src/po/Makefile
@@ -238,7 +238,7 @@ sk.cp1250.po: sk.po
 zh_CN.cp936.po: zh_CN.UTF-8.po
 	rm -f zh_CN.cp936.po
 	iconv -f UTF-8 -t cp936 zh_CN.UTF-8.po | \
-		sed -e 's/charset=utf-8/charset=gbk/' -e 's/# Original translations/# Generated from zh_CN.po, DO NOT EDIT/' > zh_CN.cp936.po
+		sed -e 's/charset=utf-8/charset=gbk/' -e 's/# Original translations/# Generated from zh_CN.UTF-8.po, DO NOT EDIT/' > zh_CN.cp936.po
 
 # Convert ko.UTF-8.po to create ko.po.
 ko.po: ko.UTF-8.po
--- a/src/po/README.txt
+++ b/src/po/README.txt
@@ -102,6 +102,10 @@ language.
 
 (4) Check:
 
+    While editing the .po file:
+        :source check.vim
+
+    From the command line:
 	vim -S check.vim xx.po
 	make xx.mo
 
--- a/src/po/de.po
+++ b/src/po/de.po
@@ -12,7 +12,7 @@ msgstr ""
 "Project-Id-Version: Vim(deutsch)\n"
 "POT-Creation-Date: 2006-04-02 11:30+0200\n"
 "PO-Revision-Date: 2008-05-24 17:26+0200\n"
-"Last-Translator: Georg Dahn <georg.dahn@gmail.com>\n"
+"Last-Translator: was: Georg Dahn\n"
 "Language-Team: German <de@li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=ISO_8859-1\n"
--- a/src/po/eo.po
+++ b/src/po/eo.po
@@ -13,18 +13,12 @@
 #   Komputeko:           http://komputeko.net/index_eo.php
 #   Komputada leksikono: http://bertilow.com/div/komputada_leksikono/
 #
-# Lasta versio:
-#   http://dominique.pelle.free.fr/vim-eo.php
-#
-# Ĉiu komento estas bonvenata...
-# Every remark is welcome...
-#
 msgid ""
 msgstr ""
 "Project-Id-Version: Vim(Esperanto)\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2017-01-16 00:30+0100\n"
-"PO-Revision-Date: 2017-01-16 01:14+0100\n"
+"POT-Creation-Date: 2017-07-11 23:10+0200\n"
+"PO-Revision-Date: 2017-07-12 05:14+0200\n"
 "Last-Translator: Dominique PELLÉ <dominique.pelle@gmail.com>\n"
 "Language-Team: \n"
 "Language: eo\n"
@@ -442,6 +436,9 @@ msgstr "Analizas: %s"
 msgid "Scanning tags."
 msgstr "Analizas etikedojn."
 
+msgid "match in file"
+msgstr "kongruo en dosiero"
+
 msgid " Adding"
 msgstr " Aldonanta"
 
@@ -523,17 +520,23 @@ msgid "E711: List value has not enough i
 msgstr "E711: Lista valoro ne havas sufiĉe da eroj"
 
 msgid "E690: Missing \"in\" after :for"
-msgstr "E690: \"in\" mankas post \":for\""
+msgstr "E690: \"in\" mankas malantaŭ \":for\""
 
 #, c-format
 msgid "E108: No such variable: \"%s\""
 msgstr "E108: Ne estas tia variablo: \"%s\""
 
+#. For historic reasons this error is not given for a list or dict.
+#. * E.g., the b: dict could be locked/unlocked.
+#, c-format
+msgid "E940: Cannot lock or unlock variable %s"
+msgstr "E940: Ne eblas ŝlosi aŭ malŝlosi variablon %s"
+
 msgid "E743: variable nested too deep for (un)lock"
-msgstr "E743: variablo ingita tro profunde por malŝlosi"
+msgstr "E743: variablo ingita tro profunde por (mal)ŝlosi"
 
 msgid "E109: Missing ':' after '?'"
-msgstr "E109: Mankas ':' post '?'"
+msgstr "E109: Mankas ':' malantaŭ '?'"
 
 msgid "E691: Can only compare List with List"
 msgstr "E691: Eblas nur kompari Liston kun Listo"
@@ -706,12 +709,6 @@ msgid "&Ok"
 msgstr "&Bone"
 
 #, c-format
-msgid "+-%s%3ld line: "
-msgid_plural "+-%s%3ld lines: "
-msgstr[0] "+-%s%3ld linio: "
-msgstr[1] "+-%s%3ld linioj: "
-
-#, c-format
 msgid "E700: Unknown function: %s"
 msgstr "E700: Nekonata funkcio: %s"
 
@@ -756,8 +753,8 @@ msgstr "E727: Komenco preter fino"
 msgid "<empty>"
 msgstr "<malplena>"
 
-msgid "E240: No connection to Vim server"
-msgstr "E240: Neniu konekto al Vim-servilo"
+msgid "E240: No connection to the X server"
+msgstr "E240: Neniu konekto al X-servilo"
 
 #, c-format
 msgid "E241: Unable to send to %s"
@@ -766,6 +763,12 @@ msgstr "E241: Ne eblas sendi al %s"
 msgid "E277: Unable to read a server reply"
 msgstr "E277: Ne eblas legi respondon de servilo"
 
+msgid "E941: already started a server"
+msgstr "E941: servilo jam lanĉita"
+
+msgid "E942: +clientserver feature not available"
+msgstr "E942: la eblo +clientserver ne disponeblas"
+
 msgid "remove() argument"
 msgstr "argumento de remove()"
 
@@ -1002,8 +1005,9 @@ msgstr " en 1 linio"
 msgid " on %ld lines"
 msgstr " en %ld linioj"
 
-msgid "E147: Cannot do :global recursive"
-msgstr "E147: Ne eblas fari \":global\" rekursie"
+#. will increment global_busy to break out of the loop
+msgid "E147: Cannot do :global recursive with a range"
+msgstr "E147: Ne eblas fari \":global\" rekursie kun amplekso"
 
 # DP: global estas por ":global" do mi ne tradukis ĝin
 msgid "E148: Regular expression missing from global"
@@ -1189,6 +1193,14 @@ msgstr "Serĉado de \"%s\""
 msgid "not found in '%s': \"%s\""
 msgstr "ne trovita en '%s: \"%s\""
 
+#, c-format
+msgid "W20: Required python version 2.x not supported, ignoring file: %s"
+msgstr "W20: Pitono versio 2.x bezonata sed nesubtenata, ignoro de dosiero: %s"
+
+#, c-format
+msgid "W21: Required python version 3.x not supported, ignoring file: %s"
+msgstr "W21: pitono versio 3.x bezonata sed nesubtenata, ignore de dosiero: %s"
+
 msgid "Source Vim script"
 msgstr "Ruli Vim-skripton"
 
@@ -1286,6 +1298,9 @@ msgstr "Inversa amplekso donita, permute
 msgid "E494: Use w or w>>"
 msgstr "E494: Uzu w aŭ w>>"
 
+msgid "E943: Command table needs to be updated, run 'make cmdidxs'"
+msgstr "E943: Tabulo de komandoj estas ĝisdatigenda, lanĉu 'make cmdidx'"
+
 msgid "E319: Sorry, the command is not available in this version"
 msgstr "E319: Bedaŭrinde, tiu komando ne haveblas en tiu versio"
 
@@ -1562,7 +1577,7 @@ msgid "E583: multiple :else"
 msgstr "E583: pluraj \":else\""
 
 msgid "E584: :elseif after :else"
-msgstr "E584: \":elseif\" post \":else\""
+msgstr "E584: \":elseif\" malantaŭ \":else\""
 
 msgid "E585: :while/:for nesting too deep"
 msgstr "E585: \":while/:for\" ingita tro profunde"
@@ -1588,7 +1603,7 @@ msgstr "E603: \":catch\" sen \":try\""
 #. Give up for a ":catch" after ":finally" and ignore it.
 #. * Just parse.
 msgid "E604: :catch after :finally"
-msgstr "E604: \":catch\" post \":finally\""
+msgstr "E604: \":catch\" malantaŭ \":finally\""
 
 msgid "E606: :finally without :try"
 msgstr "E606: \":finally\" sen \":try\""
@@ -1986,7 +2001,7 @@ msgstr "W19: Forviŝo de augroup kiu estas ankoraŭ uzata"
 
 #, c-format
 msgid "E215: Illegal character after *: %s"
-msgstr "E215: Nevalida signo post *: %s"
+msgstr "E215: Nevalida signo malantaŭ *: %s"
 
 #, c-format
 msgid "E216: No such event: %s"
@@ -2044,12 +2059,6 @@ msgstr "E350: Ne eblas krei faldon per l
 msgid "E351: Cannot delete fold with current 'foldmethod'"
 msgstr "E351: Ne eblas forviŝi faldon per la aktuala 'foldmethod'"
 
-#, c-format
-msgid "+--%3ld line folded "
-msgid_plural "+--%3ld lines folded "
-msgstr[0] "+--%3ld linio faldita "
-msgstr[1] "+--%3ld linioj falditaj "
-
 msgid "E222: Add to read buffer"
 msgstr "E222: Aldoni al lega bufro"
 
@@ -2859,10 +2868,10 @@ msgid "Too many edit arguments"
 msgstr "Tro da argumentoj de redakto"
 
 msgid "Argument missing after"
-msgstr "Argumento mankas post"
+msgstr "Argumento mankas malantaŭ"
 
 msgid "Garbage after option argument"
-msgstr "Forĵetindaĵo post argumento de opcio"
+msgstr "Forĵetindaĵo malantaŭ argumento de opcio"
 
 msgid "Too many \"+command\", \"-c command\" or \"--cmd command\" arguments"
 msgstr "Tro da argumentoj \"+komando\", \"-c komando\" aŭ \"--cmd komando\""
@@ -2968,7 +2977,7 @@ msgstr ""
 "Argumentoj:\n"
 
 msgid "--\t\t\tOnly file names after this"
-msgstr "--\t\t\tNur dosiernomoj post tio"
+msgstr "--\t\t\tNur dosiernomoj malantaŭ tio"
 
 msgid "--literal\t\tDon't expand wildcards"
 msgstr "--literal\t\tNe malvolvi ĵokerojn"
@@ -3069,8 +3078,7 @@ msgstr ""
 "--not-a-term\t\tPreterpasi averton por enigo/eligo, kiu ne estas terminalo"
 
 msgid "--ttyfail\t\tExit if input or output is not a terminal"
-msgstr ""
-"--ttyfail\t\tEliri se le eniro aŭ eliro ne estas terminalo"
+msgstr "--ttyfail\t\tEliri se la eniro aŭ eliro ne estas terminalo"
 
 msgid "-u <vimrc>\t\tUse <vimrc> instead of any .vimrc"
 msgstr "-u <vimrc>\t\tUzi <vimrc> anstataŭ iun ajn .vimrc"
@@ -4116,8 +4124,8 @@ msgstr "E662: Ĉe komenco de ŝanĝlisto"
 msgid "E663: At end of changelist"
 msgstr "E663: Ĉe fino de ŝanĝlisto"
 
-msgid "Type  :quit<Enter>  to exit Vim"
-msgstr "Tajpu \":quit<Enenklavo>\" por eliri el Vim"
+msgid "Type  :qa!  and press <Enter> to abandon all changes and exit Vim"
+msgstr "Tajpu  :qa!  kaj premu <Enenklavon> por forlasi ĉiujn ŝanĝojn kaj eliri el Vim"
 
 #, c-format
 msgid "1 line %sed 1 time"
@@ -4262,7 +4270,7 @@ msgid "E846: Key code not set"
 msgstr "E846: Klavkodo ne agordita"
 
 msgid "E521: Number required after ="
-msgstr "E521: Nombro bezonata post ="
+msgstr "E521: Nombro bezonata malantaŭ ="
 
 msgid "E522: Not found in termcap"
 msgstr "E522: Netrovita en termcap"
@@ -4304,7 +4312,7 @@ msgstr "E525: Ĉeno de nula longo"
 
 #, c-format
 msgid "E526: Missing number after <%s>"
-msgstr "E526: Mankas nombro post <%s>"
+msgstr "E526: Mankas nombro malantaŭ <%s>"
 
 msgid "E527: Missing comma"
 msgstr "E527: Mankas komo"
@@ -4332,7 +4340,7 @@ msgstr "E534: Nevalida larĝa tiparo"
 
 #, c-format
 msgid "E535: Illegal character after <%c>"
-msgstr "E535: Nevalida signo post <%c>"
+msgstr "E535: Nevalida signo malantaŭ <%c>"
 
 msgid "E536: comma required"
 msgstr "E536: komo bezonata"
@@ -4415,7 +4423,7 @@ msgstr "E357: 'langmap': Kongrua signo m
 
 #, c-format
 msgid "E358: 'langmap': Extra characters after semicolon: %s"
-msgstr "E358: 'langmap': Ekstraj signoj post punktokomo: %s"
+msgstr "E358: 'langmap': Ekstraj signoj malantaŭ punktokomo: %s"
 
 msgid "cannot open "
 msgstr "ne eblas malfermi "
@@ -4736,7 +4744,13 @@ msgstr "E369: nevalida ano en %s%%[]"
 
 #, c-format
 msgid "E769: Missing ] after %s["
-msgstr "E769: Mankas ] post %s["
+msgstr "E769: Mankas ] malantaŭ %s["
+
+msgid "E944: Reverse range in character class"
+msgstr "E944: Inversa amplekso en klaso de signoj"
+
+msgid "E945: Range too large in character class"
+msgstr "E945: tro larga amplekso de klaso de signoj"
 
 #, c-format
 msgid "E53: Unmatched %s%%("
@@ -4759,12 +4773,15 @@ msgstr "E67: \\z1 kaj aliaj estas neperm
 
 #, c-format
 msgid "E69: Missing ] after %s%%["
-msgstr "E69: Mankas ] post %s%%["
+msgstr "E69: Mankas ] malantaŭ %s%%["
 
 #, c-format
 msgid "E70: Empty %s%%[]"
 msgstr "E70: Malplena %s%%[]"
 
+msgid "E65: Illegal back reference"
+msgstr "E65: Nevalida retro-referenco"
+
 msgid "E339: Pattern too long"
 msgstr "E339: Ŝablono tro longa"
 
@@ -4780,7 +4797,7 @@ msgstr "E52: Neekvilibra \\z("
 
 #, c-format
 msgid "E59: invalid character after %s@"
-msgstr "E59: nevalida signo post %s@"
+msgstr "E59: nevalida signo malantaŭ %s@"
 
 #, c-format
 msgid "E60: Too many complex %s{...}s"
@@ -4801,19 +4818,16 @@ msgstr "E63: nevalida uzo de \\_"
 msgid "E64: %s%c follows nothing"
 msgstr "E64: %s%c sekvas nenion"
 
-msgid "E65: Illegal back reference"
-msgstr "E65: Nevalida retro-referenco"
-
 msgid "E68: Invalid character after \\z"
-msgstr "E68: Nevalida signo post \\z"
+msgstr "E68: Nevalida signo malantaŭ \\z"
 
 #, c-format
 msgid "E678: Invalid character after %s%%[dxouU]"
-msgstr "E678: Nevalida signo post %s%%[dxouU]"
+msgstr "E678: Nevalida signo malantaŭ %s%%[dxouU]"
 
 #, c-format
 msgid "E71: Invalid character after %s%%"
-msgstr "E71: Nevalida signo post %s%%"
+msgstr "E71: Nevalida signo malantaŭ %s%%"
 
 #, c-format
 msgid "E554: Syntax error in %s{...}"
@@ -4845,7 +4859,7 @@ msgstr "E866: (NFA-regulesprimo) Mispozi
 
 #, c-format
 msgid "E877: (NFA regexp) Invalid character class: %ld"
-msgstr "E877: (NFA-regulesprimo) Nevalida klaso de signo: %ld"
+msgstr "E877: (NFA-regulesprimo) Nevalida klaso de signoj: %ld"
 
 #, c-format
 msgid "E867: (NFA) Unknown operator '\\z%c'"
@@ -4975,7 +4989,7 @@ msgid "E385: search hit BOTTOM without m
 msgstr "E385: serĉo atingis SUBON sen trovi: %s"
 
 msgid "E386: Expected '?' or '/'  after ';'"
-msgstr "E386: Atendis '?' aŭ '/' post ';'"
+msgstr "E386: Atendis '?' aŭ '/' malantaŭ ';'"
 
 msgid " (includes previously listed match)"
 msgstr " (enhavas antaŭe listigitajn kongruojn)"
@@ -5406,10 +5420,31 @@ msgstr "E783: ripetita signo en rikordo 
 msgid "No Syntax items defined for this buffer"
 msgstr "Neniu sintaksa elemento difinita por tiu bufro"
 
+msgid "syntax conceal on"
+msgstr "sintakso de conceal ŝaltata"
+
+msgid "syntax conceal off"
+msgstr "sintakso de conceal malŝaltita"
+
 #, c-format
 msgid "E390: Illegal argument: %s"
 msgstr "E390: Nevalida argumento: %s"
 
+msgid "syntax case ignore"
+msgstr "sintakso ignoras usklecon"
+
+msgid "syntax case match"
+msgstr "sintakso konsideras usklecon"
+
+msgid "syntax spell toplevel"
+msgstr "literumado en teksto sen sintaksa grupo"
+
+msgid "syntax spell notoplevel"
+msgstr "sen literumado en teksto sen sintaksa grupo"
+
+msgid "syntax spell default"
+msgstr "literumado en teksto sen sintaksa grupo, nur se ne estas @Spell aŭ @NoSpell"
+
 msgid "syntax iskeyword "
 msgstr "sintakso iskeyword "
 
@@ -5491,7 +5526,7 @@ msgstr "E789: Mankas ']': %s"
 
 #, c-format
 msgid "E890: trailing char after ']': %s]%s"
-msgstr "E890: vosta signo post ']': %s]%s"
+msgstr "E890: vosta signo malantaŭ ']': %s]%s"
 
 #, c-format
 msgid "E398: Missing '=': %s"
@@ -5513,7 +5548,7 @@ msgstr "E401: Disigilo de ŝablono netrovita: %s"
 
 #, c-format
 msgid "E402: Garbage after pattern: %s"
-msgstr "E402: Forĵetindaĵo post ŝablono: %s"
+msgstr "E402: Forĵetindaĵo malantaŭ ŝablono: %s"
 
 msgid "E403: syntax sync: line continuations pattern specified twice"
 msgstr "E403: sintaksa sinkronigo: ŝablono de linia daŭrigo specifita dufoje"
@@ -5987,6 +6022,10 @@ msgid "E126: Missing :endfunction"
 msgstr "E126: Mankas \":endfunction\""
 
 #, c-format
+msgid "W22: Text found after :endfunction: %s"
+msgstr "W22: Teksto trovita malantaŭ :endfunction: %s"
+
+#, c-format
 msgid "E707: Function name conflicts with variable: %s"
 msgstr "E707: Nomo de funkcio konfliktas kun variablo: %s"
 
@@ -6730,8 +6769,8 @@ msgstr "E592: 'winwidth' ne rajtas esti 
 msgid "E80: Error while writing"
 msgstr "E80: Eraro dum skribado"
 
-msgid "Zero count"
-msgstr "Nul kvantoro"
+msgid "E939: Positive count required"
+msgstr "E939: Pozitiva kvantoro bezonata"
 
 msgid "E81: Using <SID> not in a script context"
 msgstr "E81: Uzo de <SID> ekster kunteksto de skripto"
--- a/src/po/fr.po
+++ b/src/po/fr.po
@@ -3,20 +3,17 @@
 # Do ":help uganda"  in Vim to read copying and usage conditions.
 # Do ":help credits" in Vim to see a list of people who contributed.
 #
-#  FIRST AUTHOR  DindinX         <David.Odin@bigfoot.com>     2000.
-# SECOND AUTHOR  Adrien Beau     <version.francaise@free.fr>  2002, 2003.
-#  THIRD AUTHOR  David Blanchet  <david.blanchet@free.fr>     2006, 2008.
-# FOURTH AUTHOR  Dominique Pell <dominique.pelle@gmail.com>  2008, 2017.
-#
-# Latest translation available at:
-#   http://dominique.pelle.free.fr/vim-fr.php
+#  FIRST AUTHOR  DindinX         <David.Odin@bigfoot.com>    2000.
+# SECOND AUTHOR  Adrien Beau     <version.francaise@free.fr> 2002, 2003.
+#  THIRD AUTHOR  David Blanchet  <david.blanchet@free.fr>    2006, 2008.
+# FOURTH AUTHOR  Dominique Pell <dominique.pelle@gmail.com> 2008, 2017.
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: Vim(Franais)\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2017-01-16 00:30+0100\n"
-"PO-Revision-Date: 2017-01-16 00:51+0100\n"
+"POT-Creation-Date: 2017-07-11 23:10+0200\n"
+"PO-Revision-Date: 2017-01-12 05:16+0200\n"
 "Last-Translator: Dominique Pell <dominique.pelle@gmail.com>\n"
 "Language-Team: \n"
 "Language: fr\n"
@@ -480,6 +477,9 @@ msgstr "Examen : %s"
 msgid "Scanning tags."
 msgstr "Examen des marqueurs."
 
+msgid "match in file"
+msgstr "correspondance dans le fichier"
+
 # AB - Cette chane de caractres est ajoute en dbut de ligne lorsqu'une
 #      opration de compltion est rpte (typiquement avec CTRL-X CTRL-N).
 #      Que ce soit en anglais ou en franais, il y a un problme de majuscules.
@@ -583,6 +583,12 @@ msgstr "E690: \"in\" manquant aprs :for"
 msgid "E108: No such variable: \"%s\""
 msgstr "E108: Variable inexistante : %s"
 
+#. For historic reasons this error is not given for a list or dict.
+#. * E.g., the b: dict could be locked/unlocked.
+#, c-format
+msgid "E940: Cannot lock or unlock variable %s"
+msgstr "E940: Impossible de (d)verrouiler la variable %s"
+
 msgid "E743: variable nested too deep for (un)lock"
 msgstr "E743: variable trop imbrique pour la (d)verrouiller"
 
@@ -773,12 +779,6 @@ msgid "&Ok"
 msgstr "&Ok"
 
 #, c-format
-msgid "+-%s%3ld line: "
-msgid_plural "+-%s%3ld lines: "
-msgstr[0] "+-%s%3ld ligne : "
-msgstr[1] "+-%s%3ld lignes : "
-
-#, c-format
 msgid "E700: Unknown function: %s"
 msgstr "E700: Fonction inconnue : %s"
 
@@ -826,9 +826,7 @@ msgstr "E727: Dbut au-del de la fin"
 msgid "<empty>"
 msgstr "<vide>"
 
-# AB -  mon avis, la version anglaise est errone.
-# DB : Vrifier
-msgid "E240: No connection to Vim server"
+msgid "E240: No connection to the X server"
 msgstr "E240: Pas de connexion au serveur X"
 
 # AB - La version franaise est meilleure que la version anglaise.
@@ -839,6 +837,12 @@ msgstr "E241: L'envoi au serveur %s a chou"
 msgid "E277: Unable to read a server reply"
 msgstr "E277: Impossible de lire la rponse du serveur"
 
+msgid "E941: already started a server"
+msgstr "E941: serveur dj dmarr"
+
+msgid "E942: +clientserver feature not available"
+msgstr "E942: La fonctionnalit +clientserver n'est pas disponible"
+
 msgid "remove() argument"
 msgstr "argument de remove()"
 
@@ -1136,8 +1140,9 @@ msgstr " sur %ld lignes"
 
 # AB - Il faut respecter l'esprit plus que la lettre.
 # AB - Ce message devrait contenir une rfrence  :vglobal.
-msgid "E147: Cannot do :global recursive"
-msgstr "E147: :global ne peut pas excuter :global"
+#. will increment global_busy to break out of the loop
+msgid "E147: Cannot do :global recursive with a range"
+msgstr "E147: :global ne peut pas excuter :global avec une plage"
 
 # AB - Ce message devrait contenir une rfrence  :vglobal.
 msgid "E148: Regular expression missing from global"
@@ -1356,6 +1361,14 @@ msgstr "Recherche de \"%s\""
 msgid "not found in '%s': \"%s\""
 msgstr "introuvable dans '%s' : \"%s\""
 
+#, c-format
+msgid "W20: Required python version 2.x not supported, ignoring file: %s"
+msgstr "W20: Python version 2.x non support, fichier %s ignor"
+
+#, c-format
+msgid "W21: Required python version 3.x not supported, ignoring file: %s"
+msgstr "W21: Python 3.x non support, fichier %s ignor"
+
 msgid "Source Vim script"
 msgstr "Sourcer un script - Vim"
 
@@ -1456,6 +1469,9 @@ msgstr "La plage spcifie est inverse, OK pour l'inverser"
 msgid "E494: Use w or w>>"
 msgstr "E494: Utilisez w ou w>>"
 
+msgid "E943: Command table needs to be updated, run 'make cmdidxs'"
+msgstr "E943: La table des commandes doit tre mise  jour, lancez 'make cmdidxs'"
+
 msgid "E319: Sorry, the command is not available in this version"
 msgstr "E319: Dsol, cette commande n'est pas disponible dans cette version"
 
@@ -2232,12 +2248,6 @@ msgstr "E350: Impossible de crer un repli avec la 'foldmethod'e actuelle"
 msgid "E351: Cannot delete fold with current 'foldmethod'"
 msgstr "E351: Impossible de supprimer un repli avec la 'foldmethod'e actuelle"
 
-#, c-format
-msgid "+--%3ld line folded "
-msgid_plural "+--%3ld lines folded "
-msgstr[0] "+--%3ld ligne replie "
-msgstr[1] "+--%3ld lignes replies "
-
 msgid "E222: Add to read buffer"
 msgstr "E222: Ajout au tampon de lecture"
 
@@ -3280,8 +3290,7 @@ msgstr ""
 "--no-a-term\t\tAucun avertissement si l'entre/sortie n'est pas un terminal"
 
 msgid "--ttyfail\t\tExit if input or output is not a terminal"
-msgstr ""
-"--ttyfail\t\tQuitte si l'entre ou la sortie ne sont pas un terminal"
+msgstr "--ttyfail\t\tQuitte si l'entre ou la sortie ne sont pas un terminal"
 
 msgid "-u <vimrc>\t\tUse <vimrc> instead of any .vimrc"
 msgstr "-u <vimrc>\tUtiliser <vimrc> au lieu du vimrc habituel"
@@ -4337,8 +4346,8 @@ msgstr "E662: Au dbut de la liste des modifications"
 msgid "E663: At end of changelist"
 msgstr "E663:  la fin de la liste des modifications"
 
-msgid "Type  :quit<Enter>  to exit Vim"
-msgstr "tapez  :q<Entre>  pour quitter Vim"
+msgid "Type  :qa!  and press <Enter> to abandon all changes and exit Vim"
+msgstr "Tapez  :qa!  puis <Entre> pour abandonner tous les changements et quitter Vim"
 
 #, c-format
 msgid "1 line %sed 1 time"
@@ -4967,6 +4976,12 @@ msgstr "E369: lment invalide dans %s%%[]"
 msgid "E769: Missing ] after %s["
 msgstr "E769: ']' manquant aprs %s["
 
+msgid "E944: Reverse range in character class"
+msgstr "E944: Classe de caractres inverse"
+
+msgid "E945: Range too large in character class"
+msgstr "E945: Plage de classe de caractres trop large"
+
 #, c-format
 msgid "E53: Unmatched %s%%("
 msgstr "E53: Pas de correspondance pour %s%%("
@@ -4993,6 +5008,9 @@ msgstr "E69: ']' manquant aprs %s%%["
 msgid "E70: Empty %s%%[]"
 msgstr "E70: %s%%[] vide"
 
+msgid "E65: Illegal back reference"
+msgstr "E65: post-rfrence invalide"
+
 msgid "E339: Pattern too long"
 msgstr "E339: Motif trop long"
 
@@ -5029,9 +5047,6 @@ msgstr "E63: utilisation invalide de \\_
 msgid "E64: %s%c follows nothing"
 msgstr "E64: %s%c ne suit aucun atome"
 
-msgid "E65: Illegal back reference"
-msgstr "E65: post-rfrence invalide"
-
 msgid "E68: Invalid character after \\z"
 msgstr "E68: Caractre invalide aprs \\z"
 
@@ -5641,10 +5656,31 @@ msgstr "E783: caractre dupliqu dans l'entre MAP"
 msgid "No Syntax items defined for this buffer"
 msgstr "Aucun lment de syntaxe dfini pour ce tampon"
 
+msgid "syntax conceal on"
+msgstr "\"syntax conceal\" active"
+
+msgid "syntax conceal off"
+msgstr "\"syntax conceal\" dsactive"
+
 #, c-format
 msgid "E390: Illegal argument: %s"
 msgstr "E390: Argument invalide : %s"
 
+msgid "syntax case ignore"
+msgstr "syntaxe ignore la casse"
+
+msgid "syntax case match"
+msgstr "syntaxe respecte la casse"
+
+msgid "syntax spell toplevel"
+msgstr "contrle orthographique dans le texte sans groupe syntaxique"
+
+msgid "syntax spell notoplevel"
+msgstr "pas de contrle orthographique dans le texte sans groupe syntaxique"
+
+msgid "syntax spell default"
+msgstr "contrle orthographique dans le texte sans groupe syntaxique, sauf si @Spell/@NoSpell"
+
 msgid "syntax iskeyword "
 msgstr "syntaxe iskeyword "
 
@@ -6248,6 +6284,10 @@ msgid "E126: Missing :endfunction"
 msgstr "E126: Il manque :endfunction"
 
 #, c-format
+msgid "W22: Text found after :endfunction: %s"
+msgstr "W22: Texte trouv aprs :endfunction: %s"
+
+#, c-format
 msgid "E707: Function name conflicts with variable: %s"
 msgstr "E707: Le nom de fonction entre en conflit avec la variable : %s"
 
@@ -6996,8 +7036,8 @@ msgstr "E592: 'winwidth' ne peut pas tre plus petit que 'winminwidth'"
 msgid "E80: Error while writing"
 msgstr "E80: Erreur lors de l'criture"
 
-msgid "Zero count"
-msgstr "Le quantificateur est nul"
+msgid "E939: Positive count required"
+msgstr "E939: Quantificateur positif requis"
 
 msgid "E81: Using <SID> not in a script context"
 msgstr "E81: <SID> utilis en dehors d'un script"
--- a/src/po/ga.po
+++ b/src/po/ga.po
@@ -6,7 +6,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: vim 7.0\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2016-10-25 09:31-0500\n"
+"POT-Creation-Date: 2017-07-11 15:45-0500\n"
 "PO-Revision-Date: 2010-04-14 10:01-0500\n"
 "Last-Translator: Kevin Patrick Scannell <kscanne@gmail.com>\n"
 "Language-Team: Irish <gaeilge-gnulinux@lists.sourceforge.net>\n"
@@ -239,7 +239,8 @@ msgid "E917: Cannot use a callback with 
 msgstr "E917: N fidir aisghlaoch a sid le %s()"
 
 msgid "E912: cannot use ch_evalexpr()/ch_sendexpr() with a raw or nl channel"
-msgstr "E912: n fidir ch_evalexpr()/ch_sendexpr() a sid le cainal raw n nl"
+msgstr ""
+"E912: n fidir ch_evalexpr()/ch_sendexpr() a sid le cainal raw n nl"
 
 msgid "E906: not an open channel"
 msgstr "E906: n cainal oscailte "
@@ -426,6 +427,9 @@ msgstr "%s  scanadh"
 msgid "Scanning tags."
 msgstr "Clibeanna  scanadh."
 
+msgid "match in file"
+msgstr "meaitseil sa chomhad"
+
 msgid " Adding"
 msgstr " Mad"
 
@@ -513,6 +517,12 @@ msgstr "E690: \"in\" ar iarraidh i ndiai
 msgid "E108: No such variable: \"%s\""
 msgstr "E108: Nl a leithid d'athrg: \"%s\""
 
+#. For historic reasons this error is not given for a list or dict.
+#. * E.g., the b: dict could be locked/unlocked.
+#, c-format
+msgid "E940: Cannot lock or unlock variable %s"
+msgstr "E940: N fidir athrg %s a ghlasil n a dhghlasil"
+
 msgid "E743: variable nested too deep for (un)lock"
 msgstr "E743: athrg neadaithe rdhomhain chun  a (d)ghlasil"
 
@@ -691,15 +701,6 @@ msgid "&Ok"
 msgstr "&Ok"
 
 #, c-format
-msgid "+-%s%3ld line: "
-msgid_plural "+-%s%3ld lines: "
-msgstr[0] "+-%s%3ld lne: "
-msgstr[1] "+-%s%3ld lne: "
-msgstr[2] "+-%s%3ld lne: "
-msgstr[3] "+-%s%3ld lne: "
-msgstr[4] "+-%s%3ld lne: "
-
-#, c-format
 msgid "E700: Unknown function: %s"
 msgstr "E700: Feidhm anaithnid: %s"
 
@@ -707,7 +708,9 @@ msgid "E922: expected a dict"
 msgstr "E922: bhothas ag sil le foclir"
 
 msgid "E923: Second argument of function() must be a list or a dict"
-msgstr "E923: Caithfidh an dara hargint de function() a bheith ina liosta n ina foclir"
+msgstr ""
+"E923: Caithfidh an dara hargint de function() a bheith ina liosta n ina "
+"foclir"
 
 msgid ""
 "&OK\n"
@@ -744,8 +747,8 @@ msgstr "E727: Tosach thar dheireadh"
 msgid "<empty>"
 msgstr "<folamh>"
 
-msgid "E240: No connection to Vim server"
-msgstr "E240: Nl aon nasc le freastala Vim"
+msgid "E240: No connection to the X server"
+msgstr "E240: Nl aon cheangal leis an bhfreastala X"
 
 #, c-format
 msgid "E241: Unable to send to %s"
@@ -754,6 +757,12 @@ msgstr "E241: N fidir aon rud a sheoladh chuig %s"
 msgid "E277: Unable to read a server reply"
 msgstr "E277: N fidir freagra n fhreastala a lamh"
 
+msgid "E941: already started a server"
+msgstr "E941: tosaodh freastala cheana"
+
+msgid "E942: +clientserver feature not available"
+msgstr "E942: nl an ghn +clientserver ar fil"
+
 msgid "remove() argument"
 msgstr "argint remove()"
 
@@ -993,8 +1002,9 @@ msgstr " ar lne amhin"
 msgid " on %ld lines"
 msgstr " ar %ld lne"
 
-msgid "E147: Cannot do :global recursive"
-msgstr "E147: N cheadatear :global go hathchrsach"
+#. will increment global_busy to break out of the loop
+msgid "E147: Cannot do :global recursive with a range"
+msgstr "E147: N cheadatear :global athchrsach le raon"
 
 # should have ":"
 msgid "E148: Regular expression missing from global"
@@ -1179,6 +1189,14 @@ msgstr "Ag danamh cuardach ar \"%s\""
 msgid "not found in '%s': \"%s\""
 msgstr "gan aimsi in '%s': \"%s\""
 
+#, c-format
+msgid "W20: Required python version 2.x not supported, ignoring file: %s"
+msgstr "W20: Nl leagan 2.x de Python ar fil; ag danamh neamhaird de %s"
+
+#, c-format
+msgid "W21: Required python version 3.x not supported, ignoring file: %s"
+msgstr "W21: Nl leagan 3.x de Python ar fil; ag danamh neamhaird de %s"
+
 msgid "Source Vim script"
 msgstr "Foinsigh script Vim"
 
@@ -1278,6 +1296,9 @@ msgstr "Raon droim ar ais, babhtil"
 msgid "E494: Use w or w>>"
 msgstr "E494: Bain sid as w n w>>"
 
+msgid "E943: Command table needs to be updated, run 'make cmdidxs'"
+msgstr "E943: Caithfear tbla na n-orduithe a nuashonr; rith 'make cmdidxs'"
+
 msgid "E319: Sorry, the command is not available in this version"
 msgstr "E319: T brn orm, nl an t-ord ar fil sa leagan seo"
 
@@ -1391,7 +1412,7 @@ msgid "No swap file"
 msgstr "Nl aon chomhad babhtla ann"
 
 msgid "Append File"
-msgstr "Cuir Comhad i nDeireadh"
+msgstr "Ceangail Comhad ag an Deireadh"
 
 msgid "E747: Cannot change directory, buffer is modified (add ! to override)"
 msgstr ""
@@ -1412,10 +1433,10 @@ msgid "Window position: X %d, Y %d"
 msgstr "Ionad na fuinneoige: X %d, Y %d"
 
 msgid "E188: Obtaining window position not implemented for this platform"
-msgstr "E188: N fidir ionad na fuinneoige a fhil amach ar an chras seo"
+msgstr "E188: N fidir ionad na fuinneoige a fhil amach ar an gcras seo"
 
 msgid "E466: :winpos requires two number arguments"
-msgstr "E466: n folir dh argint uimhrila le :winpos"
+msgstr "E466: dh argint uimhrila de dhth le :winpos"
 
 msgid "E930: Cannot use :redir inside execute()"
 msgstr "E930: N fidir :redir a sid laistigh de execute()"
@@ -2045,15 +2066,6 @@ msgstr "E350: N fidir filleadh a chruth leis an 'foldmethod' reatha"
 msgid "E351: Cannot delete fold with current 'foldmethod'"
 msgstr "E351: N fidir filleadh a scriosadh leis an 'foldmethod' reatha"
 
-#, c-format
-msgid "+--%3ld line folded "
-msgid_plural "+--%3ld lines folded "
-msgstr[0] "+--%3ld lne fillte "
-msgstr[1] "+--%3ld lne fillte "
-msgstr[2] "+--%3ld lne fillte "
-msgstr[3] "+--%3ld lne fillte "
-msgstr[4] "+--%3ld lne fillte "
-
 msgid "E222: Add to read buffer"
 msgstr "E222: Cuir leis an maoln lite"
 
@@ -2652,8 +2664,8 @@ msgid ""
 "E895: Sorry, this command is disabled, the MzScheme's racket/base module "
 "could not be loaded."
 msgstr ""
-"E895: r leithscal, t an t-ord seo dchumasaithe; norbh fhidir "
-"modl racket/base MzScheme a lucht."
+"E895: r leithscal, t an t-ord seo dchumasaithe; norbh fhidir modl "
+"racket/base MzScheme a lucht."
 
 msgid "invalid expression"
 msgstr "slonn neamhbhail"
@@ -2846,6 +2858,10 @@ msgid "E251: VIM instance registry prope
 msgstr "E251: Air mchumtha sa chlrlann isc VIM.  Scriosta!"
 
 #, c-format
+msgid "E938: Duplicate key in JSON: \"%s\""
+msgstr "E938: Eochair dhblach in JSON: \"%s\""
+
+#, c-format
 msgid "E696: Missing comma in List: %s"
 msgstr "E696: Camg ar iarraidh i Liosta: %s"
 
@@ -2898,7 +2914,8 @@ msgid "Vim: Error: Failure to start gvim
 msgstr "Vim: Earrid: Theip ar thos gvim  NetBeans\n"
 
 msgid "Vim: Error: This version of Vim does not run in a Cygwin terminal\n"
-msgstr "Vim: Earrid: N fidir an leagan seo de Vim a rith i dteirminal Cygwin\n"
+msgstr ""
+"Vim: Earrid: N fidir an leagan seo de Vim a rith i dteirminal Cygwin\n"
 
 msgid "Vim: Warning: Output is not to a terminal\n"
 msgstr "Vim: Rabhadh: Nl an t-aschur ag dul chuig teirminal\n"
@@ -3067,7 +3084,12 @@ msgid "-T <terminal>\tSet terminal type 
 msgstr "-T <teirminal>\tSocraigh cinel teirminal"
 
 msgid "--not-a-term\t\tSkip warning for input/output not being a terminal"
-msgstr "--not-a-term\t\tN bac le rabhadh faoi ionchur/aschur gan a bheith n teirminal"
+msgstr ""
+"--not-a-term\t\tN bac le rabhadh faoi ionchur/aschur gan a bheith n "
+"teirminal"
+
+msgid "--ttyfail\t\tExit if input or output is not a terminal"
+msgstr "--ttyfail\t\tScoir mura bhfuil ionchur agus aschur ina dteirminil"
 
 msgid "-u <vimrc>\t\tUse <vimrc> instead of any .vimrc"
 msgstr "-u <vimrc>\t\tsid <vimrc> in ionad aon .vimrc"
@@ -4122,8 +4144,8 @@ msgstr "E662: Ag tosach liosta na n-athr
 msgid "E663: At end of changelist"
 msgstr "E663: Ag deireadh liosta na n-athruithe"
 
-msgid "Type  :quit<Enter>  to exit Vim"
-msgstr "Clscrobh  :quit<Enter>  chun Vim a scor"
+msgid "Type  :qa!  and press <Enter> to abandon all changes and exit Vim"
+msgstr "Clscrobh  :qa!  agus brigh <Enter> le fgil  Vim gan athruithe a shbhil"
 
 # ouch - English -ed ?
 #, c-format
@@ -4234,7 +4256,8 @@ msgid ""
 "Selected %s%ld of %ld Lines; %lld of %lld Words; %lld of %lld Chars; %lld of "
 "%lld Bytes"
 msgstr ""
-"Roghnaodh %s%ld as %ld Lne; %lld as %lld Focal; %lld as %lld Carachtar; %lld as %lld Beart"
+"Roghnaodh %s%ld as %ld Lne; %lld as %lld Focal; %lld as %lld Carachtar; "
+"%lld as %lld Beart"
 
 #, c-format
 msgid "Col %s of %s; Line %ld of %ld; Word %lld of %lld; Byte %lld of %lld"
@@ -4245,7 +4268,8 @@ msgid ""
 "Col %s of %s; Line %ld of %ld; Word %lld of %lld; Char %lld of %lld; Byte "
 "%lld of %lld"
 msgstr ""
-"Col %s as %s; Lne %ld as %ld; Focal %lld as %lld; Carachtar %lld as %lld; Beart %lld as %lld"
+"Col %s as %s; Lne %ld as %ld; Focal %lld as %lld; Carachtar %lld as %lld; "
+"Beart %lld as %lld"
 
 #, c-format
 msgid "(+%ld for BOM)"
@@ -4507,8 +4531,7 @@ msgstr ""
 
 #, c-format
 msgid "E244: Illegal quality name \"%s\" in font name \"%s\""
-msgstr ""
-"E244: Ainm neamhcheadaithe ar chilocht \"%s\" in ainm cl \"%s\""
+msgstr "E244: Ainm neamhcheadaithe ar chilocht \"%s\" in ainm cl \"%s\""
 
 #, c-format
 msgid "E245: Illegal char '%c' in font name \"%s\""
@@ -4551,7 +4574,8 @@ msgstr "Norbh fhidir comhthacs slndla %s a shocr le haghaidh %s"
 
 #, c-format
 msgid "Could not get security context %s for %s. Removing it!"
-msgstr "Norbh fhidir comhthacs slndla %s a fhil le haghaidh %s.  bhaint!"
+msgstr ""
+"Norbh fhidir comhthacs slndla %s a fhil le haghaidh %s.  bhaint!"
 
 msgid ""
 "\n"
@@ -4752,6 +4776,12 @@ msgstr "E369: mr neamhbhail i %s%%[]"
 msgid "E769: Missing ] after %s["
 msgstr "E769: ] ar iarraidh i ndiaidh %s["
 
+msgid "E944: Reverse range in character class"
+msgstr "E944: Raon aisiompaithe in aicme carachtar"
+
+msgid "E945: Range too large in character class"
+msgstr "E945: Raon rmhr in aicme carachtar"
+
 #, c-format
 msgid "E53: Unmatched %s%%("
 msgstr "E53: %s%%( corr"
@@ -4778,6 +4808,9 @@ msgstr "E69: ] ar iarraidh i ndiaidh %s%
 msgid "E70: Empty %s%%[]"
 msgstr "E70: %s%%[] folamh"
 
+msgid "E65: Illegal back reference"
+msgstr "E65: Cltagairt neamhbhail"
+
 msgid "E339: Pattern too long"
 msgstr "E339: Slonn rfhada"
 
@@ -4814,9 +4847,6 @@ msgstr "E63: sid neamhbhail de \\_"
 msgid "E64: %s%c follows nothing"
 msgstr "E64: nl aon rud roimh %s%c"
 
-msgid "E65: Illegal back reference"
-msgstr "E65: Cltagairt neamhbhail"
-
 msgid "E68: Invalid character after \\z"
 msgstr "E68: Carachtar neamhbhail i ndiaidh \\z"
 
@@ -5424,12 +5454,33 @@ msgstr "E783: carachtar dblach in iontril MAP"
 msgid "No Syntax items defined for this buffer"
 msgstr "Nl aon mhr chomhrire sainmhnithe le haghaidh an mhaolin seo"
 
+msgid "syntax conceal on"
+msgstr "syntax conceal on"
+
+msgid "syntax conceal off"
+msgstr "syntax conceal off"
+
 #, c-format
 msgid "E390: Illegal argument: %s"
 msgstr "E390: Argint neamhcheadaithe: %s"
 
+msgid "syntax case ignore"
+msgstr "syntax case ignore"
+
+msgid "syntax case match"
+msgstr "syntax case match"
+
+msgid "syntax spell toplevel"
+msgstr "syntax spell toplevel"
+
+msgid "syntax spell notoplevel"
+msgstr "syntax spell notoplevel"
+
+msgid "syntax spell default"
+msgstr "syntax spell default"
+
 msgid "syntax iskeyword "
-msgstr "comhrir iskeyword "
+msgstr "syntax iskeyword "
 
 #, c-format
 msgid "E391: No such syntax cluster: %s"
@@ -6006,6 +6057,10 @@ msgid "E126: Missing :endfunction"
 msgstr "E126: :endfunction ar iarraidh"
 
 #, c-format
+msgid "W22: Text found after :endfunction: %s"
+msgstr "W22: Aimsodh tacs tar is :endfunction: %s"
+
+#, c-format
 msgid "E707: Function name conflicts with variable: %s"
 msgstr "E707: Tagann ainm na feidhme salach ar athrg: %s"
 
@@ -6475,6 +6530,10 @@ msgstr "E236: N cl aonleithid  \"%s\""
 msgid "E473: Internal error"
 msgstr "E473: Earrid inmhenach"
 
+#, c-format
+msgid "E685: Internal error: %s"
+msgstr "E685: Earrid inmhenach: %s"
+
 msgid "Interrupted"
 msgstr "Idirbhriste"
 
@@ -6635,7 +6694,7 @@ msgid "E486: Pattern not found: %s"
 msgstr "E486: Patrn gan aimsi: %s"
 
 msgid "E487: Argument must be positive"
-msgstr "E487: N folir argint dheimhneach"
+msgstr "E487: Argint dheimhneach de dhth"
 
 msgid "E459: Cannot go back to previous directory"
 msgstr "E459: N fidir a fhilleadh ar an chomhadlann roimhe seo"
@@ -6745,8 +6804,8 @@ msgstr "E592: n cheadatear 'winwidth' a bheith nos l n 'winminwidth'"
 msgid "E80: Error while writing"
 msgstr "E80: Earrid agus  scrobh"
 
-msgid "Zero count"
-msgstr "Nialas"
+msgid "E939: Positive count required"
+msgstr "E939: Uimhir dheimhneach de dhth"
 
 msgid "E81: Using <SID> not in a script context"
 msgstr "E81: <SID>  sid nach i gcomhthacs scripte"
@@ -6760,10 +6819,6 @@ msgstr "E463: Rigin cosanta, n fidir  a athr"
 msgid "E744: NetBeans does not allow changes in read-only files"
 msgstr "E744: N cheadaonn NetBeans aon athr i gcomhaid inlite amhin"
 
-#, c-format
-msgid "E685: Internal error: %s"
-msgstr "E685: Earrid inmhenach: %s"
-
 msgid "E363: pattern uses more memory than 'maxmempattern'"
 msgstr "E363: sideann an patrn nos m cuimhne n 'maxmempattern'"
 
@@ -7062,6 +7117,28 @@ msgstr ""
 "Norbh fhidir an chonair a shocr: n liosta  sys.path\n"
 "Ba chir duit vim.VIM_SPECIAL_PATH a cheangal le deireadh sys.path"
 
+#~ msgid "+-%s%3ld line: "
+#~ msgid_plural "+-%s%3ld lines: "
+#~ msgstr[0] "+-%s%3ld lne: "
+#~ msgstr[1] "+-%s%3ld lne: "
+#~ msgstr[2] "+-%s%3ld lne: "
+#~ msgstr[3] "+-%s%3ld lne: "
+#~ msgstr[4] "+-%s%3ld lne: "
+
+#~ msgid "+--%3ld line folded "
+#~ msgid_plural "+--%3ld lines folded "
+#~ msgstr[0] "+--%3ld lne fillte "
+#~ msgstr[1] "+--%3ld lne fillte "
+#~ msgstr[2] "+--%3ld lne fillte "
+#~ msgstr[3] "+--%3ld lne fillte "
+#~ msgstr[4] "+--%3ld lne fillte "
+
+#~ msgid "Type  :quit<Enter>  to exit Vim"
+#~ msgstr "Clscrobh  :quit<Enter>  chun Vim a scor"
+
+#~ msgid "Zero count"
+#~ msgstr "Nialas"
+
 #~ msgid "E693: Can only compare Funcref with Funcref"
 #~ msgstr "E693: Is fidir Funcref a chur i gcomparid le Funcref eile amhin"
 
--- a/src/po/ja.euc-jp.po
+++ b/src/po/ja.euc-jp.po
@@ -12,10 +12,10 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: Vim 7.4\n"
+"Project-Id-Version: Vim 8.0\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2016-09-10 21:10+0900\n"
-"PO-Revision-Date: 2016-09-10 21:20+0900\n"
+"POT-Creation-Date: 2017-07-03 23:05+0900\n"
+"PO-Revision-Date: 2017-07-12 20:45+0900\n"
 "Last-Translator: MURAOKA Taro <koron.kaoriya@gmail.com>\n"
 "Language-Team: vim-jp (https://github.com/vim-jp/lang-ja)\n"
 "Language: Japanese\n"
@@ -244,7 +244,8 @@ msgid "E917: Cannot use a callback with 
 msgstr "E917: %s() ˥ХåϻȤޤ"
 
 msgid "E912: cannot use ch_evalexpr()/ch_sendexpr() with a raw or nl channel"
-msgstr "E912:  nl ͥ ch_evalexpr()/ch_sendexpr ϻȤޤ"
+msgstr ""
+"E912: raw  nl ⡼ɤΥͥ ch_evalexpr()/ch_sendexpr() ϻȤޤ"
 
 msgid "E906: not an open channel"
 msgstr "E906: ƤʤͥǤ"
@@ -430,6 +431,9 @@ msgstr ": %s"
 msgid "Scanning tags."
 msgstr "򥹥."
 
+msgid "match in file"
+msgstr "եΥޥå"
+
 msgid " Adding"
 msgstr " ɲ"
 
@@ -518,6 +522,12 @@ msgstr "E690: :for θ \"in\" ޤ"
 msgid "E108: No such variable: \"%s\""
 msgstr "E108: ѿϤޤ: \"%s\""
 
+#. For historic reasons this error is not given for a list or dict.
+#. * E.g., the b: dict could be locked/unlocked.
+#, c-format
+msgid "E940: Cannot lock or unlock variable %s"
+msgstr "E940: ѿ %s ϥåޤϥåǤޤ"
+
 msgid "E743: variable nested too deep for (un)lock"
 msgstr "E743: ()åˤѿҤ᤮ޤ"
 
@@ -696,11 +706,6 @@ msgid "&Ok"
 msgstr "&Ok"
 
 #, c-format
-msgid "+-%s%3ld line: "
-msgid_plural "+-%s%3ld lines: "
-msgstr[0] "+-%s%3ld : "
-
-#, c-format
 msgid "E700: Unknown function: %s"
 msgstr "E700: ̤ΤδؿǤ: %s"
 
@@ -745,8 +750,8 @@ msgstr "E727: ϰ֤λ֤ۤޤ"
 msgid "<empty>"
 msgstr "<>"
 
-msgid "E240: No connection to Vim server"
-msgstr "E240: Vim Сؤ³ޤ"
+msgid "E240: No connection to the X server"
+msgstr "E240: X Сؤ³ޤ"
 
 #, c-format
 msgid "E241: Unable to send to %s"
@@ -755,6 +760,12 @@ msgstr "E241: %s 뤳ȤǤޤ"
 msgid "E277: Unable to read a server reply"
 msgstr "E277: Сαޤ"
 
+msgid "E941: already started a server"
+msgstr "E941: СϤǤ˳ϤƤޤ"
+
+msgid "E942: +clientserver feature not available"
+msgstr "E942: +clientserver ǽ̵ˤʤäƤޤ"
+
 msgid "remove() argument"
 msgstr "remove() ΰ"
 
@@ -992,8 +1003,9 @@ msgstr " ( 1 )"
 msgid " on %ld lines"
 msgstr " ( %ld )"
 
-msgid "E147: Cannot do :global recursive"
-msgstr "E147: :global ƵŪˤϻȤޤ"
+#. will increment global_busy to break out of the loop
+msgid "E147: Cannot do :global recursive with a range"
+msgstr "E147: :global ϰդǺƵŪˤϻȤޤ"
 
 msgid "E148: Regular expression missing from global"
 msgstr "E148: globalޥɤɽꤵƤޤ"
@@ -1179,6 +1191,14 @@ msgstr "\"%s\" 򸡺"
 msgid "not found in '%s': \"%s\""
 msgstr "'%s' ˤϤޤ: \"%s\""
 
+#, c-format
+msgid "W20: Required python version 2.x not supported, ignoring file: %s"
+msgstr "W20: ׵ᤵ줿python 2.xбƤޤ󡢥ե̵뤷ޤ: %s"
+
+#, c-format
+msgid "W21: Required python version 3.x not supported, ignoring file: %s"
+msgstr "W21: ׵ᤵ줿python 3.xбƤޤ󡢥ե̵뤷ޤ: %s"
+
 msgid "Source Vim script"
 msgstr "VimץȤμ"
 
@@ -1277,6 +1297,11 @@ msgstr "դޤϰϤꤵޤ, ؤޤ?"
 msgid "E494: Use w or w>>"
 msgstr "E494: w ⤷ w>> ѤƤ"
 
+msgid "E943: Command table needs to be updated, run 'make cmdidxs'"
+msgstr ""
+"E943: ޥɥơ֥򹹿ɬפޤ'make cmdidxs' ¹ԤƤ"
+""
+
 msgid "E319: Sorry, the command is not available in this version"
 msgstr "E319: ΥСǤϤΥޥɤѤǤޤ, ʤ"
 
@@ -2029,11 +2054,6 @@ msgstr "E350: ߤ 'foldmethod' Ǥ޾ߤǤޤ"
 msgid "E351: Cannot delete fold with current 'foldmethod'"
 msgstr "E351: ߤ 'foldmethod' Ǥ޾ߤǤޤ"
 
-#, c-format
-msgid "+--%3ld line folded "
-msgid_plural "+--%3ld lines folded "
-msgstr[0] "+--%3ld Ԥ޾ޤޤ "
-
 msgid "E222: Add to read buffer"
 msgstr "E222: ɹХåեɲ"
 
@@ -2818,6 +2838,10 @@ msgid "E251: VIM instance registry prope
 msgstr "E251: VIM ΤϿץѥƥǤ. õޤ!"
 
 #, c-format
+msgid "E938: Duplicate key in JSON: \"%s\""
+msgstr "E938: JSON˽ʣޤ: \"%s\""
+
+#, c-format
 msgid "E696: Missing comma in List: %s"
 msgstr "E696: ꥹȷ˥ޤޤ: %s"
 
@@ -2857,7 +2881,7 @@ msgid "This Vim was not compiled with th
 msgstr "Vimˤdiffǽޤ(ѥ)."
 
 msgid "Attempt to open script file again: \""
-msgstr "ץȥեƤӳƤߤޤ: \""
+msgstr "ץȥեƤӳȤޤ: \""
 
 msgid "Cannot open for reading: \""
 msgstr "ɹѤȤƳޤ"
@@ -3038,6 +3062,9 @@ msgstr "-T <terminal>\tü <terminal> ꤹ"
 msgid "--not-a-term\t\tSkip warning for input/output not being a terminal"
 msgstr "--not-a-term\t\tϤüǤʤȤηٹ򥹥åפ"
 
+msgid "--ttyfail\t\tExit if input or output is not a terminal"
+msgstr "--ttyfail\t\tϤüǤʤнλ"
+
 msgid "-u <vimrc>\t\tUse <vimrc> instead of any .vimrc"
 msgstr "-u <vimrc>\t\t.vimrc <vimrc> Ȥ"
 
@@ -3905,7 +3932,7 @@ msgid "E766: Insufficient arguments for 
 msgstr "E766: printf() ΰԽʬǤ"
 
 msgid "E807: Expected Float argument for printf()"
-msgstr "E807: printf() ΰˤưԤƤޤ"
+msgstr "E807: printf() ΰˤưԤƤޤ"
 
 msgid "E767: Too many arguments to printf()"
 msgstr "E767: printf() ΰ¿᤮ޤ"
@@ -4062,8 +4089,10 @@ msgstr "E662: ѹꥹȤƬ"
 msgid "E663: At end of changelist"
 msgstr "E663: ѹꥹȤ"
 
-msgid "Type  :quit<Enter>  to exit Vim"
-msgstr "Vimλˤ :quit<Enter> ϤƤ"
+msgid "Type  :qa!  and press <Enter> to abandon all changes and exit Vim"
+msgstr ""
+"٤Ƥѹ˴Vimλˤ  :qa!  Ϥ <Enter> 򲡤Ƥ"
+""
 
 #, c-format
 msgid "1 line %sed 1 time"
@@ -4412,9 +4441,6 @@ msgstr "ϥ顼"
 msgid "Message"
 msgstr "å"
 
-msgid "'columns' is not 80, cannot execute external commands"
-msgstr "'columns'  80 ǤϤʤᡢޥɤ¹ԤǤޤ"
-
 msgid "E237: Printer selection failed"
 msgstr "E237: ץ󥿤˼Ԥޤ"
 
@@ -4684,6 +4710,12 @@ msgstr "E369: ̵ʹܤǤ: %s%%[]"
 msgid "E769: Missing ] after %s["
 msgstr "E769: %s[ θ ] ޤ"
 
+msgid "E944: Reverse range in character class"
+msgstr "E944: ʸ饹ϰϤդǤ"
+
+msgid "E945: Range too large in character class"
+msgstr "E945: ʸ饹ϰϤ礭ޤ"
+
 #, c-format
 msgid "E53: Unmatched %s%%("
 msgstr "E53: %s%%( äƤޤ"
@@ -4713,6 +4745,10 @@ msgstr "E69: %s%%[ θ ] ޤ"
 msgid "E70: Empty %s%%[]"
 msgstr "E70: %s%%[] Ǥ"
 
+#
+msgid "E65: Illegal back reference"
+msgstr "E65: ʸȤǤ"
+
 msgid "E339: Pattern too long"
 msgstr "E339: ѥĹ᤮ޤ"
 
@@ -4751,10 +4787,6 @@ msgid "E64: %s%c follows nothing"
 msgstr "E64:%s%c θˤʤˤ⤢ޤ"
 
 #
-msgid "E65: Illegal back reference"
-msgstr "E65: ʸȤǤ"
-
-#
 msgid "E68: Invalid character after \\z"
 msgstr "E68: \\z θʸޤ"
 
@@ -5362,12 +5394,33 @@ msgstr "E783: MAP ȥ˽ʣʸ¸ߤޤ"
 msgid "No Syntax items defined for this buffer"
 msgstr "ΥХåե줿ʸǤϤޤ"
 
+msgid "syntax conceal on"
+msgstr "ʸ conceal ϸ on Ǥ"
+
+msgid "syntax conceal off"
+msgstr "ʸ conceal ϸ off Ǥ"
+
 #, c-format
 msgid "E390: Illegal argument: %s"
 msgstr "E390: ʰǤ: %s"
 
+msgid "syntax case ignore"
+msgstr "ʸʸʸϸ ignore Ǥ"
+
+msgid "syntax case match"
+msgstr "ʸʸʸϸ match Ǥ"
+
+msgid "syntax spell toplevel"
+msgstr "ʸ spell ϸ toplevel Ǥ"
+
+msgid "syntax spell notoplevel"
+msgstr "ʸ spell ϸ notoplevel Ǥ"
+
+msgid "syntax spell default"
+msgstr "ʸ spell ϸ default Ǥ"
+
 msgid "syntax iskeyword "
-msgstr "󥿥å iskeyword "
+msgstr "ʸ iskeyword "
 
 #, c-format
 msgid "E391: No such syntax cluster: %s"
@@ -5578,7 +5631,7 @@ msgid "E556: at top of tag stack"
 msgstr "E556: åƬǤ"
 
 msgid "E425: Cannot go before first matching tag"
-msgstr "E425: ǽγĶ뤳ȤϤǤޤ"
+msgstr "E425: ǽγۤ뤳ȤϤǤޤ"
 
 #, c-format
 msgid "E426: tag not found: %s"
@@ -5594,7 +5647,7 @@ msgid "E427: There is only one matching 
 msgstr "E427: 1Ĥޤ"
 
 msgid "E428: Cannot go beyond last matching tag"
-msgstr "E428: Ǹ˳륿ĶƿʤळȤϤǤޤ"
+msgstr "E428: ǸγۤƿʤळȤϤǤޤ"
 
 #, c-format
 msgid "File \"%s\" does not exist"
@@ -5942,6 +5995,10 @@ msgid "E126: Missing :endfunction"
 msgstr "E126: :endfunction ޤ"
 
 #, c-format
+msgid "W22: Text found after :endfunction: %s"
+msgstr "W22: :endfunction θʸޤ: %s"
+
+#, c-format
 msgid "E707: Function name conflicts with variable: %s"
 msgstr "E707: ؿ̾ѿ̾Ⱦͤޤ: %s"
 
@@ -5964,14 +6021,6 @@ msgstr "E133: ؿ :return ޤ"
 msgid "E107: Missing parentheses: %s"
 msgstr "E107: å '(' ޤ: %s"
 
-#. Only MS VC 4.1 and earlier can do Win32s
-msgid ""
-"\n"
-"MS-Windows 16/32-bit GUI version"
-msgstr ""
-"\n"
-"MS-Windows 16/32 ӥå GUI "
-
 msgid ""
 "\n"
 "MS-Windows 64-bit GUI version"
@@ -6255,12 +6304,6 @@ msgstr "ܺ٤ʾ           :help register<Enter>  "
 msgid "menu  Help->Sponsor/Register  for information    "
 msgstr "ܺ٤ϥ˥塼 إ->ݥ󥵡/Ͽ 򻲾ȤƲ"
 
-msgid "WARNING: Windows 95/98/ME detected"
-msgstr "ٹ: Windows 95/98/ME 򸡽Фޤ"
-
-msgid "type  :help windows95<Enter>  for info on this"
-msgstr "ܺ٤ʾ            :help windows95<Enter>"
-
 msgid "Already only one window"
 msgstr "˥ɥ1Ĥޤ"
 
@@ -6414,6 +6457,10 @@ msgstr "E236: ե \"%s\" ϸǤϤޤ"
 msgid "E473: Internal error"
 msgstr "E473: 顼Ǥ"
 
+#, c-format
+msgid "E685: Internal error: %s"
+msgstr "E685: 顼Ǥ: %s"
+
 msgid "Interrupted"
 msgstr "ޤޤ"
 
@@ -6679,8 +6726,8 @@ msgstr "E592: 'winwidth'  'winminwidth' 꾮Ǥޤ"
 msgid "E80: Error while writing"
 msgstr "E80: Υ顼"
 
-msgid "Zero count"
-msgstr ""
+msgid "E939: Positive count required"
+msgstr "E939: ΥȤɬפǤ"
 
 msgid "E81: Using <SID> not in a script context"
 msgstr "E81: ץȰʳ<SID>Ȥޤ"
@@ -6694,10 +6741,6 @@ msgstr "E463: ΰ褬ݸƤΤ, ѹǤޤ"
 msgid "E744: NetBeans does not allow changes in read-only files"
 msgstr "E744: NetBeans ɹѥեѹ뤳Ȥޤ"
 
-#, c-format
-msgid "E685: Internal error: %s"
-msgstr "E685: 顼Ǥ: %s"
-
 msgid "E363: pattern uses more memory than 'maxmempattern'"
 msgstr "E363: ѥ 'maxmempattern' ʾΥѤޤ"
 
--- a/src/po/ja.po
+++ b/src/po/ja.po
@@ -12,10 +12,10 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: Vim 7.4\n"
+"Project-Id-Version: Vim 8.0\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2016-09-10 21:10+0900\n"
-"PO-Revision-Date: 2016-09-10 21:20+0900\n"
+"POT-Creation-Date: 2017-07-03 23:05+0900\n"
+"PO-Revision-Date: 2017-07-12 20:45+0900\n"
 "Last-Translator: MURAOKA Taro <koron.kaoriya@gmail.com>\n"
 "Language-Team: vim-jp (https://github.com/vim-jp/lang-ja)\n"
 "Language: Japanese\n"
@@ -244,7 +244,8 @@ msgid "E917: Cannot use a callback with 
 msgstr "E917: %s() にコールバックは使えません"
 
 msgid "E912: cannot use ch_evalexpr()/ch_sendexpr() with a raw or nl channel"
-msgstr "E912: 生や nl チャンネルに ch_evalexpr()/ch_sendexpr は使えません"
+msgstr ""
+"E912: raw や nl モードのチャンネルに ch_evalexpr()/ch_sendexpr() は使えません"
 
 msgid "E906: not an open channel"
 msgstr "E906: 開いていないチャンネルです"
@@ -430,6 +431,9 @@ msgstr "スキャン中: %s"
 msgid "Scanning tags."
 msgstr "タグをスキャン中."
 
+msgid "match in file"
+msgstr "ファイル内のマッチ"
+
 msgid " Adding"
 msgstr " 追加中"
 
@@ -518,6 +522,12 @@ msgstr "E690: :for の後に \"in\" がありません"
 msgid "E108: No such variable: \"%s\""
 msgstr "E108: その変数はありません: \"%s\""
 
+#. For historic reasons this error is not given for a list or dict.
+#. * E.g., the b: dict could be locked/unlocked.
+#, c-format
+msgid "E940: Cannot lock or unlock variable %s"
+msgstr "E940: 変数 %s はロックまたはアンロックできません"
+
 msgid "E743: variable nested too deep for (un)lock"
 msgstr "E743: (アン)ロックするには変数の入れ子が深過ぎます"
 
@@ -696,11 +706,6 @@ msgid "&Ok"
 msgstr "&Ok"
 
 #, c-format
-msgid "+-%s%3ld line: "
-msgid_plural "+-%s%3ld lines: "
-msgstr[0] "+-%s%3ld 行: "
-
-#, c-format
 msgid "E700: Unknown function: %s"
 msgstr "E700: 未知の関数です: %s"
 
@@ -745,8 +750,8 @@ msgstr "E727: 開始位置が終了位置を越えました"
 msgid "<empty>"
 msgstr "<空>"
 
-msgid "E240: No connection to Vim server"
-msgstr "E240: Vim サーバーへの接続がありません"
+msgid "E240: No connection to the X server"
+msgstr "E240: X サーバーへの接続がありません"
 
 #, c-format
 msgid "E241: Unable to send to %s"
@@ -755,6 +760,12 @@ msgstr "E241: %s へ送ることができません"
 msgid "E277: Unable to read a server reply"
 msgstr "E277: サーバーの応答がありません"
 
+msgid "E941: already started a server"
+msgstr "E941: サーバーはすでに開始しています"
+
+msgid "E942: +clientserver feature not available"
+msgstr "E942: +clientserver 機能が無効になっています"
+
 msgid "remove() argument"
 msgstr "remove() の引数"
 
@@ -992,8 +1003,9 @@ msgstr " (計 1 行内)"
 msgid " on %ld lines"
 msgstr " (計 %ld 行内)"
 
-msgid "E147: Cannot do :global recursive"
-msgstr "E147: :global を再帰的には使えません"
+#. will increment global_busy to break out of the loop
+msgid "E147: Cannot do :global recursive with a range"
+msgstr "E147: :global を範囲付きで再帰的には使えません"
 
 msgid "E148: Regular expression missing from global"
 msgstr "E148: globalコマンドに正規表現が指定されていません"
@@ -1179,6 +1191,14 @@ msgstr "\"%s\" を検索中"
 msgid "not found in '%s': \"%s\""
 msgstr "'%s' の中にはありません: \"%s\""
 
+#, c-format
+msgid "W20: Required python version 2.x not supported, ignoring file: %s"
+msgstr "W20: 要求されたpython 2.xは対応していません、ファイルを無視します: %s"
+
+#, c-format
+msgid "W21: Required python version 3.x not supported, ignoring file: %s"
+msgstr "W21: 要求されたpython 3.xは対応していません、ファイルを無視します: %s"
+
 msgid "Source Vim script"
 msgstr "Vimスクリプトの取込み"
 
@@ -1277,6 +1297,11 @@ msgstr "逆さまの範囲が指定されました, 入替えますか?"
 msgid "E494: Use w or w>>"
 msgstr "E494: w もしくは w>> を使用してください"
 
+msgid "E943: Command table needs to be updated, run 'make cmdidxs'"
+msgstr ""
+"E943: コマンドテーブルを更新する必要があります、'make cmdidxs' を実行してくだ"
+"さい"
+
 msgid "E319: Sorry, the command is not available in this version"
 msgstr "E319: このバージョンではこのコマンドは利用できません, ごめんなさい"
 
@@ -2029,11 +2054,6 @@ msgstr "E350: 現在の 'foldmethod' では折畳みを作成できません"
 msgid "E351: Cannot delete fold with current 'foldmethod'"
 msgstr "E351: 現在の 'foldmethod' では折畳みを削除できません"
 
-#, c-format
-msgid "+--%3ld line folded "
-msgid_plural "+--%3ld lines folded "
-msgstr[0] "+--%3ld 行が折畳まれました "
-
 msgid "E222: Add to read buffer"
 msgstr "E222: 読込バッファへ追加"
 
@@ -2818,6 +2838,10 @@ msgid "E251: VIM instance registry prope
 msgstr "E251: VIM 実体の登録プロパティが不正です. 消去しました!"
 
 #, c-format
+msgid "E938: Duplicate key in JSON: \"%s\""
+msgstr "E938: JSONに重複キーがあります: \"%s\""
+
+#, c-format
 msgid "E696: Missing comma in List: %s"
 msgstr "E696: リスト型にカンマがありません: %s"
 
@@ -2857,7 +2881,7 @@ msgid "This Vim was not compiled with th
 msgstr "このVimにはdiff機能がありません(コンパイル時設定)."
 
 msgid "Attempt to open script file again: \""
-msgstr "スクリプトファイルを再び開いてみます: \""
+msgstr "スクリプトファイルを再び開こうとしました: \""
 
 msgid "Cannot open for reading: \""
 msgstr "読込用として開けません"
@@ -3038,6 +3062,9 @@ msgstr "-T <terminal>\t端末を <terminal> に設定する"
 msgid "--not-a-term\t\tSkip warning for input/output not being a terminal"
 msgstr "--not-a-term\t\t入出力が端末でないとの警告をスキップする"
 
+msgid "--ttyfail\t\tExit if input or output is not a terminal"
+msgstr "--ttyfail\t\t入出力が端末でなければ終了する"
+
 msgid "-u <vimrc>\t\tUse <vimrc> instead of any .vimrc"
 msgstr "-u <vimrc>\t\t.vimrcの代わりに <vimrc> を使う"
 
@@ -3905,7 +3932,7 @@ msgid "E766: Insufficient arguments for 
 msgstr "E766: printf() の引数が不十分です"
 
 msgid "E807: Expected Float argument for printf()"
-msgstr "E807: printf() の引数には浮動少数点数が期待されています"
+msgstr "E807: printf() の引数には浮動小数点数が期待されています"
 
 msgid "E767: Too many arguments to printf()"
 msgstr "E767: printf() の引数が多過ぎます"
@@ -4062,8 +4089,10 @@ msgstr "E662: 変更リストの先頭"
 msgid "E663: At end of changelist"
 msgstr "E663: 変更リストの末尾"
 
-msgid "Type  :quit<Enter>  to exit Vim"
-msgstr "Vimを終了するには :quit<Enter> と入力してください"
+msgid "Type  :qa!  and press <Enter> to abandon all changes and exit Vim"
+msgstr ""
+"すべての変更を破棄し、Vimを終了するには  :qa!  と入力し <Enter> を押してくだ"
+"さい"
 
 #, c-format
 msgid "1 line %sed 1 time"
@@ -4412,9 +4441,6 @@ msgstr "入出力エラー"
 msgid "Message"
 msgstr "メッセージ"
 
-msgid "'columns' is not 80, cannot execute external commands"
-msgstr "'columns' が 80 ではないため、外部コマンドを実行できません"
-
 msgid "E237: Printer selection failed"
 msgstr "E237: プリンタの選択に失敗しました"
 
@@ -4684,6 +4710,12 @@ msgstr "E369: 無効な項目です: %s%%[]"
 msgid "E769: Missing ] after %s["
 msgstr "E769: %s[ の後に ] がありません"
 
+msgid "E944: Reverse range in character class"
+msgstr "E944: 文字クラスの範囲が逆です"
+
+msgid "E945: Range too large in character class"
+msgstr "E945: 文字クラスの範囲が大きすぎます"
+
 #, c-format
 msgid "E53: Unmatched %s%%("
 msgstr "E53: %s%%( が釣り合っていません"
@@ -4713,6 +4745,10 @@ msgstr "E69: %s%%[ の後に ] がありません"
 msgid "E70: Empty %s%%[]"
 msgstr "E70: %s%%[] が空です"
 
+#
+msgid "E65: Illegal back reference"
+msgstr "E65: 不正な後方参照です"
+
 msgid "E339: Pattern too long"
 msgstr "E339: パターンが長過ぎます"
 
@@ -4751,10 +4787,6 @@ msgid "E64: %s%c follows nothing"
 msgstr "E64:%s%c の後になにもありません"
 
 #
-msgid "E65: Illegal back reference"
-msgstr "E65: 不正な後方参照です"
-
-#
 msgid "E68: Invalid character after \\z"
 msgstr "E68: \\z の後に不正な文字がありました"
 
@@ -5362,12 +5394,33 @@ msgstr "E783: MAP エントリに重複文字が存在します"
 msgid "No Syntax items defined for this buffer"
 msgstr "このバッファに定義された構文要素はありません"
 
+msgid "syntax conceal on"
+msgstr "構文の conceal は現在 on です"
+
+msgid "syntax conceal off"
+msgstr "構文の conceal は現在 off です"
+
 #, c-format
 msgid "E390: Illegal argument: %s"
 msgstr "E390: 不正な引数です: %s"
 
+msgid "syntax case ignore"
+msgstr "構文の大文字小文字は現在 ignore です"
+
+msgid "syntax case match"
+msgstr "構文の大文字小文字は現在 match です"
+
+msgid "syntax spell toplevel"
+msgstr "構文の spell は現在 toplevel です"
+
+msgid "syntax spell notoplevel"
+msgstr "構文の spell は現在 notoplevel です"
+
+msgid "syntax spell default"
+msgstr "構文の spell は現在 default です"
+
 msgid "syntax iskeyword "
-msgstr "シンタックス用 iskeyword "
+msgstr "構文用 iskeyword "
 
 #, c-format
 msgid "E391: No such syntax cluster: %s"
@@ -5578,7 +5631,7 @@ msgid "E556: at top of tag stack"
 msgstr "E556: タグスタックの先頭です"
 
 msgid "E425: Cannot go before first matching tag"
-msgstr "E425: 最初の該当タグを超えて戻ることはできません"
+msgstr "E425: 最初の該当タグを越えて戻ることはできません"
 
 #, c-format
 msgid "E426: tag not found: %s"
@@ -5594,7 +5647,7 @@ msgid "E427: There is only one matching 
 msgstr "E427: 該当タグが1つだけしかありません"
 
 msgid "E428: Cannot go beyond last matching tag"
-msgstr "E428: 最後に該当するタグを超えて進むことはできません"
+msgstr "E428: 最後の該当タグを越えて進むことはできません"
 
 #, c-format
 msgid "File \"%s\" does not exist"
@@ -5942,6 +5995,10 @@ msgid "E126: Missing :endfunction"
 msgstr "E126: :endfunction がありません"
 
 #, c-format
+msgid "W22: Text found after :endfunction: %s"
+msgstr "W22: :endfunction の後に文字があります: %s"
+
+#, c-format
 msgid "E707: Function name conflicts with variable: %s"
 msgstr "E707: 関数名が変数名と衝突します: %s"
 
@@ -5964,14 +6021,6 @@ msgstr "E133: 関数外に :return がありました"
 msgid "E107: Missing parentheses: %s"
 msgstr "E107: カッコ '(' がありません: %s"
 
-#. Only MS VC 4.1 and earlier can do Win32s
-msgid ""
-"\n"
-"MS-Windows 16/32-bit GUI version"
-msgstr ""
-"\n"
-"MS-Windows 16/32 ビット GUI 版"
-
 msgid ""
 "\n"
 "MS-Windows 64-bit GUI version"
@@ -6255,12 +6304,6 @@ msgstr "詳細な情報は           :help register<Enter>  "
 msgid "menu  Help->Sponsor/Register  for information    "
 msgstr "詳細はメニューの ヘルプ->スポンサー/登録 を参照して下さい"
 
-msgid "WARNING: Windows 95/98/ME detected"
-msgstr "警告: Windows 95/98/ME を検出しました"
-
-msgid "type  :help windows95<Enter>  for info on this"
-msgstr "詳細な情報は            :help windows95<Enter>"
-
 msgid "Already only one window"
 msgstr "既にウィンドウは1つしかありません"
 
@@ -6414,6 +6457,10 @@ msgstr "E236: フォント \"%s\" は固定幅ではありません"
 msgid "E473: Internal error"
 msgstr "E473: 内部エラーです"
 
+#, c-format
+msgid "E685: Internal error: %s"
+msgstr "E685: 内部エラーです: %s"
+
 msgid "Interrupted"
 msgstr "割込まれました"
 
@@ -6679,8 +6726,8 @@ msgstr "E592: 'winwidth' は 'winminwidth' より小さくできません"
 msgid "E80: Error while writing"
 msgstr "E80: 書込み中のエラー"
 
-msgid "Zero count"
-msgstr "ゼロカウント"
+msgid "E939: Positive count required"
+msgstr "E939: 正のカウントが必要です"
 
 msgid "E81: Using <SID> not in a script context"
 msgstr "E81: スクリプト以外で<SID>が使われました"
@@ -6694,10 +6741,6 @@ msgstr "E463: 領域が保護されているので, 変更できません"
 msgid "E744: NetBeans does not allow changes in read-only files"
 msgstr "E744: NetBeans は読込専用ファイルを変更することを許しません"
 
-#, c-format
-msgid "E685: Internal error: %s"
-msgstr "E685: 内部エラーです: %s"
-
 msgid "E363: pattern uses more memory than 'maxmempattern'"
 msgstr "E363: パターンが 'maxmempattern' 以上のメモリを使用します"
 
--- a/src/po/ja.sjis.po
+++ b/src/po/ja.sjis.po
@@ -12,10 +12,10 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: Vim 7.4\n"
+"Project-Id-Version: Vim 8.0\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2016-09-10 21:10+0900\n"
-"PO-Revision-Date: 2016-09-10 21:20+0900\n"
+"POT-Creation-Date: 2017-07-03 23:05+0900\n"
+"PO-Revision-Date: 2017-07-12 20:45+0900\n"
 "Last-Translator: MURAOKA Taro <koron.kaoriya@gmail.com>\n"
 "Language-Team: vim-jp (https://github.com/vim-jp/lang-ja)\n"
 "Language: Japanese\n"
@@ -244,7 +244,8 @@ msgid "E917: Cannot use a callback with 
 msgstr "E917: %s() ɃR[obN͎g܂"
 
 msgid "E912: cannot use ch_evalexpr()/ch_sendexpr() with a raw or nl channel"
-msgstr "E912:  nl `l ch_evalexpr()/ch_sendexpr ͎g܂"
+msgstr ""
+"E912: raw  nl [h̃`l ch_evalexpr()/ch_sendexpr() ͎g܂"
 
 msgid "E906: not an open channel"
 msgstr "E906: JĂȂ`lł"
@@ -430,6 +431,9 @@ msgstr "XL: %s"
 msgid "Scanning tags."
 msgstr "^OXL."
 
+msgid "match in file"
+msgstr "t@C̃}b`"
+
 msgid " Adding"
 msgstr " lj"
 
@@ -518,6 +522,12 @@ msgstr "E690: :for ̌ \"in\" ܂"
 msgid "E108: No such variable: \"%s\""
 msgstr "E108: ̕ϐ͂܂: \"%s\""
 
+#. For historic reasons this error is not given for a list or dict.
+#. * E.g., the b: dict could be locked/unlocked.
+#, c-format
+msgid "E940: Cannot lock or unlock variable %s"
+msgstr "E940: ϐ %s ̓bN܂̓AbNł܂"
+
 msgid "E743: variable nested too deep for (un)lock"
 msgstr "E743: (A)bNɂ͕ϐ̓q[߂܂"
 
@@ -696,11 +706,6 @@ msgid "&Ok"
 msgstr "&Ok"
 
 #, c-format
-msgid "+-%s%3ld line: "
-msgid_plural "+-%s%3ld lines: "
-msgstr[0] "+-%s%3ld s: "
-
-#, c-format
 msgid "E700: Unknown function: %s"
 msgstr "E700: m̊֐ł: %s"
 
@@ -745,8 +750,8 @@ msgstr "E727: JnʒuIʒuz܂"
 msgid "<empty>"
 msgstr "<>"
 
-msgid "E240: No connection to Vim server"
-msgstr "E240: Vim T[o[ւ̐ڑ܂"
+msgid "E240: No connection to the X server"
+msgstr "E240: X T[o[ւ̐ڑ܂"
 
 #, c-format
 msgid "E241: Unable to send to %s"
@@ -755,6 +760,12 @@ msgstr "E241: %s ֑邱Ƃł܂"
 msgid "E277: Unable to read a server reply"
 msgstr "E277: T[o[̉܂"
 
+msgid "E941: already started a server"
+msgstr "E941: T[o[͂łɊJnĂ܂"
+
+msgid "E942: +clientserver feature not available"
+msgstr "E942: +clientserver @\\ɂȂĂ܂"
+
 msgid "remove() argument"
 msgstr "remove() ̈"
 
@@ -992,8 +1003,9 @@ msgstr " (v 1 s)"
 msgid " on %ld lines"
 msgstr " (v %ld s)"
 
-msgid "E147: Cannot do :global recursive"
-msgstr "E147: :global ċAIɂ͎g܂"
+#. will increment global_busy to break out of the loop
+msgid "E147: Cannot do :global recursive with a range"
+msgstr "E147: :global ͈͕tōċAIɂ͎g܂"
 
 msgid "E148: Regular expression missing from global"
 msgstr "E148: globalR}hɐK\\w肳Ă܂"
@@ -1179,6 +1191,14 @@ msgstr "\"%s\" "
 msgid "not found in '%s': \"%s\""
 msgstr "'%s' ̒ɂ͂܂: \"%s\""
 
+#, c-format
+msgid "W20: Required python version 2.x not supported, ignoring file: %s"
+msgstr "W20: vꂽpython 2.x͑ΉĂ܂At@C𖳎܂: %s"
+
+#, c-format
+msgid "W21: Required python version 3.x not supported, ignoring file: %s"
+msgstr "W21: vꂽpython 3.x͑ΉĂ܂At@C𖳎܂: %s"
+
 msgid "Source Vim script"
 msgstr "VimXNvg̎捞"
 
@@ -1277,6 +1297,11 @@ msgstr "t܂͈̔͂w肳܂, ւ܂?"
 msgid "E494: Use w or w>>"
 msgstr "E494: w  w>> gpĂ"
 
+msgid "E943: Command table needs to be updated, run 'make cmdidxs'"
+msgstr ""
+"E943: R}he[uXVKv܂A'make cmdidxs' sĂ"
+""
+
 msgid "E319: Sorry, the command is not available in this version"
 msgstr "E319: ̃o[Wł͂̃R}h͗pł܂, ߂Ȃ"
 
@@ -2029,11 +2054,6 @@ msgstr "E350: ݂ 'foldmethod' ł͐܏݂쐬ł܂"
 msgid "E351: Cannot delete fold with current 'foldmethod'"
 msgstr "E351: ݂ 'foldmethod' ł͐܏݂폜ł܂"
 
-#, c-format
-msgid "+--%3ld line folded "
-msgid_plural "+--%3ld lines folded "
-msgstr[0] "+--%3ld s܏܂܂ "
-
 msgid "E222: Add to read buffer"
 msgstr "E222: Ǎobt@֒lj"
 
@@ -2818,6 +2838,10 @@ msgid "E251: VIM instance registry prope
 msgstr "E251: VIM ̂̓o^vpeBsł. ܂!"
 
 #, c-format
+msgid "E938: Duplicate key in JSON: \"%s\""
+msgstr "E938: JSONɏdL[܂: \"%s\""
+
+#, c-format
 msgid "E696: Missing comma in List: %s"
 msgstr "E696: Xg^ɃJ}܂: %s"
 
@@ -2857,7 +2881,7 @@ msgid "This Vim was not compiled with th
 msgstr "Vimɂdiff@\\܂(RpCݒ)."
 
 msgid "Attempt to open script file again: \""
-msgstr "XNvgt@CĂъJĂ݂܂: \""
+msgstr "XNvgt@CĂъJƂ܂: \""
 
 msgid "Cannot open for reading: \""
 msgstr "ǍpƂĊJ܂"
@@ -3038,6 +3062,9 @@ msgstr "-T <terminal>\t[ <terminal> ɐݒ肷"
 msgid "--not-a-term\t\tSkip warning for input/output not being a terminal"
 msgstr "--not-a-term\t\to͂[łȂƂ̌xXLbv"
 
+msgid "--ttyfail\t\tExit if input or output is not a terminal"
+msgstr "--ttyfail\t\to͂[łȂΏI"
+
 msgid "-u <vimrc>\t\tUse <vimrc> instead of any .vimrc"
 msgstr "-u <vimrc>\t\t.vimrc̑ <vimrc> g"
 
@@ -3905,7 +3932,7 @@ msgid "E766: Insufficient arguments for 
 msgstr "E766: printf() ̈s\\ł"
 
 msgid "E807: Expected Float argument for printf()"
-msgstr "E807: printf() ̈ɂ͕_҂Ă܂"
+msgstr "E807: printf() ̈ɂ͕_҂Ă܂"
 
 msgid "E767: Too many arguments to printf()"
 msgstr "E767: printf() ̈߂܂"
@@ -4062,8 +4089,10 @@ msgstr "E662: ύXXg̐擪"
 msgid "E663: At end of changelist"
 msgstr "E663: ύXXg̖"
 
-msgid "Type  :quit<Enter>  to exit Vim"
-msgstr "VimIɂ :quit<Enter> Ɠ͂Ă"
+msgid "Type  :qa!  and press <Enter> to abandon all changes and exit Vim"
+msgstr ""
+"ׂĂ̕ύXjAVimIɂ  :qa!  Ɠ͂ <Enter> Ă"
+""
 
 #, c-format
 msgid "1 line %sed 1 time"
@@ -4412,9 +4441,6 @@ msgstr "o̓G["
 msgid "Message"
 msgstr "bZ[W"
 
-msgid "'columns' is not 80, cannot execute external commands"
-msgstr "'columns'  80 ł͂Ȃ߁AOR}hsł܂"
-
 msgid "E237: Printer selection failed"
 msgstr "E237: v^̑IɎs܂"
 
@@ -4684,6 +4710,12 @@ msgstr "E369: ȍڂł: %s%%[]"
 msgid "E769: Missing ] after %s["
 msgstr "E769: %s[ ̌ ] ܂"
 
+msgid "E944: Reverse range in character class"
+msgstr "E944: NX͈̔͂tł"
+
+msgid "E945: Range too large in character class"
+msgstr "E945: NX͈̔͂傫܂"
+
 #, c-format
 msgid "E53: Unmatched %s%%("
 msgstr "E53: %s%%( ނ荇Ă܂"
@@ -4713,6 +4745,10 @@ msgstr "E69: %s%%[ ̌ ] ܂"
 msgid "E70: Empty %s%%[]"
 msgstr "E70: %s%%[] ł"
 
+#
+msgid "E65: Illegal back reference"
+msgstr "E65: sȌQƂł"
+
 msgid "E339: Pattern too long"
 msgstr "E339: p^[߂܂"
 
@@ -4751,10 +4787,6 @@ msgid "E64: %s%c follows nothing"
 msgstr "E64:%s%c ̌ɂȂɂ܂"
 
 #
-msgid "E65: Illegal back reference"
-msgstr "E65: sȌQƂł"
-
-#
 msgid "E68: Invalid character after \\z"
 msgstr "E68: \\z ̌ɕsȕ܂"
 
@@ -5362,12 +5394,33 @@ msgstr "E783: MAP Ggɏd݂܂"
 msgid "No Syntax items defined for this buffer"
 msgstr "̃obt@ɒ`ꂽ\\vf͂܂"
 
+msgid "syntax conceal on"
+msgstr "\\ conceal ͌ on ł"
+
+msgid "syntax conceal off"
+msgstr "\\ conceal ͌ off ł"
+
 #, c-format
 msgid "E390: Illegal argument: %s"
 msgstr "E390: sȈł: %s"
 
+msgid "syntax case ignore"
+msgstr "\\̑啶͌ ignore ł"
+
+msgid "syntax case match"
+msgstr "\\̑啶͌ match ł"
+
+msgid "syntax spell toplevel"
+msgstr "\\ spell ͌ toplevel ł"
+
+msgid "syntax spell notoplevel"
+msgstr "\\ spell ͌ notoplevel ł"
+
+msgid "syntax spell default"
+msgstr "\\ spell ͌ default ł"
+
 msgid "syntax iskeyword "
-msgstr "V^bNXp iskeyword "
+msgstr "\\p iskeyword "
 
 #, c-format
 msgid "E391: No such syntax cluster: %s"
@@ -5578,7 +5631,7 @@ msgid "E556: at top of tag stack"
 msgstr "E556: ^OX^bN̐擪ł"
 
 msgid "E425: Cannot go before first matching tag"
-msgstr "E425: ŏ̊Y^O𒴂Ė߂邱Ƃ͂ł܂"
+msgstr "E425: ŏ̊Y^OzĖ߂邱Ƃ͂ł܂"
 
 #, c-format
 msgid "E426: tag not found: %s"
@@ -5594,7 +5647,7 @@ msgid "E427: There is only one matching 
 msgstr "E427: Y^O1‚܂"
 
 msgid "E428: Cannot go beyond last matching tag"
-msgstr "E428: ŌɊY^O𒴂ĐiނƂ͂ł܂"
+msgstr "E428: Ō̊Y^OzĐiނƂ͂ł܂"
 
 #, c-format
 msgid "File \"%s\" does not exist"
@@ -5942,6 +5995,10 @@ msgid "E126: Missing :endfunction"
 msgstr "E126: :endfunction ܂"
 
 #, c-format
+msgid "W22: Text found after :endfunction: %s"
+msgstr "W22: :endfunction ̌ɕ܂: %s"
+
+#, c-format
 msgid "E707: Function name conflicts with variable: %s"
 msgstr "E707: ֐ϐƏՓ˂܂: %s"
 
@@ -5964,14 +6021,6 @@ msgstr "E133: ֐O :return ܂"
 msgid "E107: Missing parentheses: %s"
 msgstr "E107: JbR '(' ܂: %s"
 
-#. Only MS VC 4.1 and earlier can do Win32s
-msgid ""
-"\n"
-"MS-Windows 16/32-bit GUI version"
-msgstr ""
-"\n"
-"MS-Windows 16/32 rbg GUI "
-
 msgid ""
 "\n"
 "MS-Windows 64-bit GUI version"
@@ -6255,12 +6304,6 @@ msgstr "ڍׂȏ           :help register<Enter>  "
 msgid "menu  Help->Sponsor/Register  for information    "
 msgstr "ڍׂ̓j[ wv->X|T[/o^ QƂĉ"
 
-msgid "WARNING: Windows 95/98/ME detected"
-msgstr "x: Windows 95/98/ME o܂"
-
-msgid "type  :help windows95<Enter>  for info on this"
-msgstr "ڍׂȏ            :help windows95<Enter>"
-
 msgid "Already only one window"
 msgstr "ɃEBhE1‚܂"
 
@@ -6414,6 +6457,10 @@ msgstr "E236: tHg \"%s\" ͌Œ蕝ł͂܂"
 msgid "E473: Internal error"
 msgstr "E473: G[ł"
 
+#, c-format
+msgid "E685: Internal error: %s"
+msgstr "E685: G[ł: %s"
+
 msgid "Interrupted"
 msgstr "܂܂"
 
@@ -6679,8 +6726,8 @@ msgstr "E592: 'winwidth'  'winminwidth' 菬ł܂"
 msgid "E80: Error while writing"
 msgstr "E80: ݒ̃G["
 
-msgid "Zero count"
-msgstr "[JEg"
+msgid "E939: Positive count required"
+msgstr "E939: ̃JEgKvł"
 
 msgid "E81: Using <SID> not in a script context"
 msgstr "E81: XNvgȊO<SID>g܂"
@@ -6694,10 +6741,6 @@ msgstr "E463: ̈悪ی삳Ă̂, ύXł܂"
 msgid "E744: NetBeans does not allow changes in read-only files"
 msgstr "E744: NetBeans ͓Ǎpt@CύX邱Ƃ܂"
 
-#, c-format
-msgid "E685: Internal error: %s"
-msgstr "E685: G[ł: %s"
-
 msgid "E363: pattern uses more memory than 'maxmempattern'"
 msgstr "E363: p^[ 'maxmempattern' ȏ̃gp܂"
 
--- a/src/po/ko.UTF-8.po
+++ b/src/po/ko.UTF-8.po
@@ -4,12 +4,12 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: vim 7.3\n"
+"Project-Id-Version: vim 8.0\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-02-16 16:18+0900\n"
-"PO-Revision-Date: 2010-02-18 09:49+0900\n"
+"POT-Creation-Date: 2017-07-12 14:52+0900\n"
+"PO-Revision-Date: 2017-07-12 18:56+0900\n"
 "Last-Translator: SungHyun Nam <goweol@gmail.com>\n"
-"Language-Team: GTP Korean <gnome-kr-translation@gnome.or.kr>\n"
+"Language-Team: GTP Korean\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -35,12 +35,21 @@ msgstr "[위치 목록]"
 msgid "[Quickfix List]"
 msgstr "[Quickfix 목록]"
 
+msgid "E855: Autocommands caused command to abort"
+msgstr "E855: Autocommand로 명령이 중단되었습니다"
+
 msgid "E82: Cannot allocate any buffer, exiting..."
 msgstr "E82: 버퍼를 할당할 수 없어서 끝냅니다..."
 
 msgid "E83: Cannot allocate buffer, using other one..."
 msgstr "E83: 버퍼를 할당할 수 없어서 다른 걸 사용합니다..."
 
+msgid "E931: Buffer cannot be registered"
+msgstr "E931: 버퍼를 등록하지 못했습니다"
+
+msgid "E937: Attempt to delete a buffer that is in use"
+msgstr "E937: 사용중인 버퍼를 삭제하려고 했습니다"
+
 msgid "E515: No buffers were unloaded"
 msgstr "E515: 내려진 버퍼가 없습니다"
 
@@ -71,6 +80,9 @@ msgstr "버퍼 한 개가 완전히 지워졌습니다"
 msgid "%d buffers wiped out"
 msgstr "버퍼 %d개가 완전히 지워졌습니다"
 
+msgid "E90: Cannot unload last buffer"
+msgstr "E90: 마지막 버퍼를 내릴 수 없습니다"
+
 msgid "E84: No modified buffer found"
 msgstr "E84: 바뀐 버퍼를 찾을 수 없습니다"
 
@@ -78,10 +90,6 @@ msgstr "E84: 바뀐 버퍼를 찾을 수 없습니다"
 msgid "E85: There is no listed buffer"
 msgstr "E85: 나열된 버퍼가 없습니다"
 
-#, c-format
-msgid "E86: Buffer %ld does not exist"
-msgstr "E86: 버퍼 %ld이(가) 존재하지 않습니다"
-
 msgid "E87: Cannot go beyond last buffer"
 msgstr "E87: 마지막 버퍼입니다"
 
@@ -94,9 +102,6 @@ msgstr ""
 "E89: 버퍼 %ld을(를) 마지막으로 고친 뒤 저장하지 않았습니다 (덮어쓰려면 ! 더하"
 "기)"
 
-msgid "E90: Cannot unload last buffer"
-msgstr "E90: 마지막 버퍼를 내릴 수 없습니다"
-
 msgid "W14: Warning: List of file names overflow"
 msgstr "W14: 경고: 파일 이름 목록이 넘쳤습니다"
 
@@ -131,6 +136,9 @@ msgstr "[새 파일]"
 msgid "[Read errors]"
 msgstr "[읽기 에러]"
 
+msgid "[RO]"
+msgstr "[읽기 전용]"
+
 msgid "[readonly]"
 msgstr "[읽기 전용]"
 
@@ -193,9 +201,100 @@ msgstr "%s에 대한 기호:"
 msgid "    line=%ld  id=%d  name=%s"
 msgstr "    줄=%ld  id=%d  이름=%s"
 
-#, c-format
-msgid "E96: Can not diff more than %ld buffers"
-msgstr "E96: %ld개 이상의 버퍼에 대해서는 diff를 할 수 없습니다"
+msgid "E902: Cannot connect to port"
+msgstr "E902: 포트로 연결할 수 없습니다"
+
+msgid "E901: gethostbyname() in channel_open()"
+msgstr "E901: channel_open()에서 gethostbyname()"
+
+msgid "E898: socket() in channel_open()"
+msgstr "E898: channel_open()에서 socket()"
+
+msgid "E903: received command with non-string argument"
+msgstr "E903: 문자열이 아닌 인자를 명령으로 수신했습니다"
+
+msgid "E904: last argument for expr/call must be a number"
+msgstr "E904: expr/call의 마지막 인자는 숫자여야 합니다"
+
+msgid "E904: third argument for call must be a list"
+msgstr "E904: 3번째 인자는 list여야 합니다"
+
+#, c-format
+msgid "E905: received unknown command: %s"
+msgstr "E905: 모르는 명령 수신: %s"
+
+#, c-format
+msgid "E630: %s(): write while not connected"
+msgstr "E630: %s(): 연결되지 않았는 데 쓰기"
+
+#, c-format
+msgid "E631: %s(): write failed"
+msgstr "E631: %s(): 쓰기가 실패했습니다"
+
+#, c-format
+msgid "E917: Cannot use a callback with %s()"
+msgstr "E917: %s()에는 callback을 사용할 수 없습니다"
+
+msgid "E912: cannot use ch_evalexpr()/ch_sendexpr() with a raw or nl channel"
+msgstr "E912: raw 혹은 nl 채널에서 ch_evalexpr()/ch_sendexpr()을 사용할 수 없습니다"
+
+msgid "E906: not an open channel"
+msgstr "E906: 열린 채널이 아닙니다"
+
+msgid "E920: _io file requires _name to be set"
+msgstr "E920: _io 파일은 설정하려면 _name이 필요합니다"
+
+msgid "E915: in_io buffer requires in_buf or in_name to be set"
+msgstr "E915: in_io 버퍼는 설정하려면 in_buf나 in_name이 필요합니다"
+
+#, c-format
+msgid "E918: buffer must be loaded: %s"
+msgstr "E918: 버퍼가 로딩되어야 합니다: %s"
+
+msgid "E821: File is encrypted with unknown method"
+msgstr "E821: 파일이 모르는 방법으로 암호화되어 있습니다"
+
+msgid "Warning: Using a weak encryption method; see :help 'cm'"
+msgstr "경고: 약한 암호 방식을 사용중; :help 'cm'을 확인하세요"
+
+msgid "Enter encryption key: "
+msgstr "암호 키 입력: "
+
+msgid "Enter same key again: "
+msgstr "같은 키를 다시 입력: "
+
+msgid "Keys don't match!"
+msgstr "키가 맞지 않습니다!"
+
+msgid "[crypted]"
+msgstr "[암호화 되었습니다]"
+
+#, c-format
+msgid "E720: Missing colon in Dictionary: %s"
+msgstr "E720: Dictionary에 콜론 누락: %s"
+
+#, c-format
+msgid "E721: Duplicate key in Dictionary: \"%s\""
+msgstr "E721: Dictionary에 중복된 키: \"%s\""
+
+#, c-format
+msgid "E722: Missing comma in Dictionary: %s"
+msgstr "E722: Dictionary에 콤마 누락: %s"
+
+#, c-format
+msgid "E723: Missing end of Dictionary '}': %s"
+msgstr "E723: Dictionary 끝에 '}' 누락: %s"
+
+msgid "extend() argument"
+msgstr "extend() 인자"
+
+#, c-format
+msgid "E737: Key already exists: %s"
+msgstr "E737: 키가 이미 존재함: %s"
+
+#, c-format
+msgid "E96: Cannot diff more than %ld buffers"
+msgstr "E96: 버퍼를 %ld개 이상은 비교할 수 없습니다"
 
 msgid "E810: Cannot read or write temp files"
 msgstr "E810: 임시 파일을 읽거나 쓸 수 없습니다"
@@ -323,6 +422,9 @@ msgstr "찾는 중: %s"
 msgid "Scanning tags."
 msgstr "태그 찾는 중."
 
+#~ msgid "match in file"
+#~ msgstr ""
+
 msgid " Adding"
 msgstr " 더하기"
 
@@ -350,55 +452,17 @@ msgstr "match %d of %d"
 msgid "match %d"
 msgstr "match %d"
 
+#. maximum nesting of lists and dicts
 msgid "E18: Unexpected characters in :let"
 msgstr "E18: ':let'에 모르는 글자"
 
 #, c-format
-msgid "E684: list index out of range: %ld"
-msgstr "E684: 목록 번호가 범위를 벗어남: %ld"
-
-#, c-format
 msgid "E121: Undefined variable: %s"
 msgstr "E121: 정의 안 된 변수: %s"
 
 msgid "E111: Missing ']'"
 msgstr "E111: ']'이 없습니다"
 
-#, c-format
-msgid "E686: Argument of %s must be a List"
-msgstr "E686: %s 인자는 List이어야 합니다"
-
-#, c-format
-msgid "E712: Argument of %s must be a List or Dictionary"
-msgstr "E712: %s 인자는 List 혹은 Dictionary여야 합니다"
-
-msgid "E713: Cannot use empty key for Dictionary"
-msgstr "E713: Dictionary에 빈 키를 쓸 수 없습니다"
-
-msgid "E714: List required"
-msgstr "E714: List가 필요합니다"
-
-msgid "E715: Dictionary required"
-msgstr "E715: Dictionary가 필요합니다"
-
-#, c-format
-msgid "E118: Too many arguments for function: %s"
-msgstr "E118: 함수에 너무 많은 인자 넘김: %s"
-
-#, c-format
-msgid "E716: Key not present in Dictionary: %s"
-msgstr "E716: Dictionary에 키가 없음: %s"
-
-#, c-format
-msgid "E122: Function %s already exists, add ! to replace it"
-msgstr "E122: 함수 %s이(가) 이미 있습니다, 바꾸려면 !을 더하세요"
-
-msgid "E717: Dictionary entry already exists"
-msgstr "E717: 이미 Dictionary 항목이 있습니다"
-
-msgid "E718: Funcref required"
-msgstr "E718: Funcref가 필요합니다"
-
 msgid "E719: Cannot use [:] with a Dictionary"
 msgstr "E719: Dictionary에 [:]을 사용할 수 없습니다"
 
@@ -407,13 +471,12 @@ msgid "E734: Wrong variable type for %s=
 msgstr "E734: %s=에 대한 잘못된 변수형"
 
 #, c-format
-msgid "E130: Unknown function: %s"
-msgstr "E130: 모르는 함수: %s"
-
-#, c-format
 msgid "E461: Illegal variable name: %s"
 msgstr "E461: 비정상적인 변수 명: %s"
 
+msgid "E806: using Float as a String"
+msgstr "E806: Float를 String으로 사용"
+
 msgid "E687: Less targets than List items"
 msgstr "E687: List 항목보다 적은 대상"
 
@@ -446,13 +509,15 @@ msgid "E690: Missing \"in\" after :for"
 msgstr "E690: :for 뒤에 \"in\"가 없습니다"
 
 #, c-format
-msgid "E107: Missing parentheses: %s"
-msgstr "E107: 괄호 없음: %s"
-
-#, c-format
 msgid "E108: No such variable: \"%s\""
 msgstr "E108: 이런 변수 없음: \"%s\""
 
+#. For historic reasons this error is not given for a list or dict.
+#. * E.g., the b: dict could be locked/unlocked.
+#, c-format
+msgid "E940: Cannot lock or unlock variable %s"
+msgstr "E940: 변수 %s을(를) 잠금 혹은 해제할 수 없습니다"
+
 msgid "E743: variable nested too deep for (un)lock"
 msgstr "E743: 잠금(해제)하기에 변수가 너무 깊이 중첩되었습니다"
 
@@ -471,9 +536,6 @@ msgstr "E735: Dictionary는 Dictionary와만 비교할 수 있습니다"
 msgid "E736: Invalid operation for Dictionary"
 msgstr "E736: Dictionary에 대한 잘못된 동작"
 
-msgid "E693: Can only compare Funcref with Funcref"
-msgstr "E693: Funcref는 Funcref와만 비교할 수 있습니다"
-
 msgid "E694: Invalid operation for Funcrefs"
 msgstr "E694: Funcrefs에 대한 잘못된 동작"
 
@@ -486,6 +548,9 @@ msgstr "E110: ')'가 없습니다"
 msgid "E695: Cannot index a Funcref"
 msgstr "E695: Funcref를 색인할 수 없습니다"
 
+msgid "E909: Cannot index a special variable"
+msgstr "E909: 특수한 변수는 색인할 수 없습니다"
+
 #, c-format
 msgid "E112: Option name missing: %s"
 msgstr "E112: 옵션 이름 없음: %s"
@@ -502,136 +567,12 @@ msgstr "E114: 따옴표 없음: %s"
 msgid "E115: Missing quote: %s"
 msgstr "E115: 따옴표 없음: %s"
 
-#, c-format
-msgid "E696: Missing comma in List: %s"
-msgstr "E696: List에 콤마 누락: %s"
-
-#, c-format
-msgid "E697: Missing end of List ']': %s"
-msgstr "E697: List 끝에 ']' 누락: %s"
-
-#, c-format
-msgid "E720: Missing colon in Dictionary: %s"
-msgstr "E720: Dictionary에 콜론 누락: %s"
-
-#, c-format
-msgid "E721: Duplicate key in Dictionary: \"%s\""
-msgstr "E721: Dictionary에 중복된 키: \"%s\""
-
-#, c-format
-msgid "E722: Missing comma in Dictionary: %s"
-msgstr "E722: Dictionary에 콤마 누락: %s"
-
-#, c-format
-msgid "E723: Missing end of Dictionary '}': %s"
-msgstr "E723: Dictionary 끝에 '}' 누락: %s"
+#~ msgid "Not enough memory to set references, garbage collection aborted!"
+#~ msgstr ""
 
 msgid "E724: variable nested too deep for displaying"
 msgstr "E724: 변수가 표시하기에 너무 깊이 중첩되었습니다"
 
-#, c-format
-msgid "E740: Too many arguments for function %s"
-msgstr "E740: 함수 %s에 너무 많은 인자가 전달되었습니다"
-
-#, c-format
-msgid "E116: Invalid arguments for function %s"
-msgstr "E116: 함수 %s(으)로 잘못된 인자가 넘겨졌습니다"
-
-#, c-format
-msgid "E117: Unknown function: %s"
-msgstr "E117: 모르는 함수: %s"
-
-#, c-format
-msgid "E119: Not enough arguments for function: %s"
-msgstr "E119: 함수에 적은 인자 넘김: %s"
-
-#, c-format
-msgid "E120: Using <SID> not in a script context: %s"
-msgstr "E120: 스크립트 콘텍스트 밖에서 <SID> 사용: %s"
-
-#, c-format
-msgid "E725: Calling dict function without Dictionary: %s"
-msgstr "E725: Dictionary없이 사전함수가 불려짐: %s"
-
-msgid "E808: Number or Float required"
-msgstr "E808: Number 혹은 Float가 필요합니다"
-
-msgid "E699: Too many arguments"
-msgstr "E699: 너무 많은 인자"
-
-msgid "E785: complete() can only be used in Insert mode"
-msgstr "E785: complete()은 입력 모드에서만 사용될 수 있습니다"
-
-#.
-#. * 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 "확인(&O)"
-
-#, c-format
-msgid "E737: Key already exists: %s"
-msgstr "E737: 키가 이미 존재함: %s"
-
-#, c-format
-msgid "+-%s%3ld lines: "
-msgstr "+-%s%3ld 줄: "
-
-#, c-format
-msgid "E700: Unknown function: %s"
-msgstr "E700: 모르는 함수: %s"
-
-msgid ""
-"&OK\n"
-"&Cancel"
-msgstr ""
-"확인(&O)\n"
-"취소(&C)"
-
-msgid "called inputrestore() more often than inputsave()"
-msgstr "inputrestore()가 inputsave()보다 많이 불려졌습니다"
-
-msgid "E786: Range not allowed"
-msgstr "E786: 범위가 허용되지 않습니다"
-
-msgid "E701: Invalid type for len()"
-msgstr "E701: len()에 잘못된 형"
-
-msgid "E726: Stride is zero"
-msgstr "E726: Stride가 0"
-
-msgid "E727: Start past end"
-msgstr "E727: 시작위치가 끝을 지나침"
-
-msgid "<empty>"
-msgstr "<비어있음>"
-
-msgid "E240: No connection to Vim server"
-msgstr "E240: Vim 서버에 연결되어 있지 않습니다"
-
-#, c-format
-msgid "E241: Unable to send to %s"
-msgstr "E241: %s(으)로 보낼 수 없습니다"
-
-msgid "E277: Unable to read a server reply"
-msgstr "E277: 서버의 응답을 읽을 수 없습니다"
-
-msgid "E655: Too many symbolic links (cycle?)"
-msgstr "E655: 너무 많은 심볼릭 링크 (반복순환?)"
-
-msgid "E258: Unable to send to client"
-msgstr "E258: 클라이언트로 보낼 수 없습니다"
-
-msgid "E702: Sort compare function failed"
-msgstr "E702: 정렬 비교 기능이 실패했습니다"
-
-msgid "(Invalid)"
-msgstr "(잘못되었습니다)"
-
-msgid "E677: Error writing temp file"
-msgstr "E677: 임시 파일 쓰기 에러"
-
 msgid "E805: Using a Float as a Number"
 msgstr "E805: Float를 Number로 사용"
 
@@ -644,6 +585,33 @@ msgstr "E745: List를 Number로 사용"
 msgid "E728: Using a Dictionary as a Number"
 msgstr "E728: Dictionary를 Number로 사용"
 
+msgid "E910: Using a Job as a Number"
+msgstr "E910: Job을 Number로 사용하고 있습니다"
+
+msgid "E913: Using a Channel as a Number"
+msgstr "E913: Channel을 Number로 사용하고 있습니다"
+
+msgid "E891: Using a Funcref as a Float"
+msgstr "E891: Funcref를 Float로 사용하고 있습니다"
+
+msgid "E892: Using a String as a Float"
+msgstr "E892: String을 Float로 사용하고 있습니다"
+
+msgid "E893: Using a List as a Float"
+msgstr "E893: List를 Float로 사용하고 있습니다"
+
+msgid "E894: Using a Dictionary as a Float"
+msgstr "E894: Dictionary를 Float로 사용하고 있습니다"
+
+msgid "E907: Using a special value as a Float"
+msgstr "E907: 특수한 값을 Float로 사용하고 있습니다"
+
+msgid "E911: Using a Job as a Float"
+msgstr "E911: Job을 Float로 사용하고 있습니다"
+
+msgid "E914: Using a Channel as a Float"
+msgstr "E914: Channel을 Float로 사용하고 있습니다"
+
 msgid "E729: using Funcref as a String"
 msgstr "E729: Funcref를 String으로 사용"
 
@@ -653,8 +621,12 @@ msgstr "E730: List를 String으로 사용"
 msgid "E731: using Dictionary as a String"
 msgstr "E731: Dictionary를 String으로 사용"
 
-msgid "E806: using Float as a String"
-msgstr "E806: Float를 String으로 사용"
+msgid "E908: using an invalid value as a String"
+msgstr "E908: 잘못된 값을 String으로 사용하고 있습니다"
+
+#, c-format
+msgid "E795: Cannot delete variable %s"
+msgstr "E795: 변수 %s를 삭제할 수 없습니다"
 
 #, c-format
 msgid "E704: Funcref variable name must start with a capital: %s"
@@ -665,14 +637,6 @@ msgid "E705: Variable name conflicts wit
 msgstr "E705: 변수명이 이미 있는 함수명과 충돌: %s"
 
 #, c-format
-msgid "E706: Variable type mismatch for: %s"
-msgstr "E706: 변수 형 다름: %s"
-
-#, c-format
-msgid "E795: Cannot delete variable %s"
-msgstr "E795: 변수 %s를 삭제할 수 없습니다"
-
-#, c-format
 msgid "E741: Value is locked: %s"
 msgstr "E741: 값이 잠겨있음: %s"
 
@@ -686,70 +650,6 @@ msgstr "E742: %s 값을 바꿀 수 없습니다"
 msgid "E698: variable nested too deep for making a copy"
 msgstr "E698: 복사하기에 변수가 너무 깊게 중첩되었습니다"
 
-#, c-format
-msgid "E123: Undefined function: %s"
-msgstr "E123: 정의 안 된 함수: %s"
-
-#, c-format
-msgid "E124: Missing '(': %s"
-msgstr "E124: '('가 없음: %s"
-
-#, c-format
-msgid "E125: Illegal argument: %s"
-msgstr "E125: 잘못된 인자: %s"
-
-msgid "E126: Missing :endfunction"
-msgstr "E126: :endfunction이 없습니다"
-
-#, c-format
-msgid "E707: Function name conflicts with variable: %s"
-msgstr "E707: 함수명이 변수명과 충돌: %s"
-
-#, c-format
-msgid "E127: Cannot redefine function %s: It is in use"
-msgstr "E127: 함수 %s을(를) 다시 정의할 수 없습니다: 사용중입니다"
-
-#, c-format
-msgid "E746: Function name does not match script file name: %s"
-msgstr "E746: 함수명이 스크립트 파일명과 다름: %s"
-
-msgid "E129: Function name required"
-msgstr "E129: 함수 이름이 필요합니다"
-
-#, c-format
-msgid "E128: Function name must start with a capital or contain a colon: %s"
-msgstr "E128: 함수 이름은 대문자로 시작하거나 콜론을 포함해야 함: %s"
-
-#, c-format
-msgid "E131: Cannot delete function %s: It is in use"
-msgstr "E131: 함수 %s을(를) 지울 수 없습니다: 사용중입니다"
-
-msgid "E132: Function call depth is higher than 'maxfuncdepth'"
-msgstr "E132: 함수를 부른 깊이가 'maxfuncdepth'보다 큽니다"
-
-#, c-format
-msgid "calling %s"
-msgstr "%s 부르는 중"
-
-#, c-format
-msgid "%s aborted"
-msgstr "%s이(가) 중지되었습니다"
-
-#, c-format
-msgid "%s returning #%ld"
-msgstr "%s이(가) #%ld을(를) 돌려주었습니다"
-
-#, c-format
-msgid "%s returning %s"
-msgstr "%s이(가) %s을(를) 돌려주었습니다"
-
-#, c-format
-msgid "continuing in %s"
-msgstr "%s에서 계속"
-
-msgid "E133: :return not inside a function"
-msgstr "E133: :return이 함수 안에 있지 않습니다"
-
 msgid ""
 "\n"
 "# global variables:\n"
@@ -764,8 +664,137 @@ msgstr ""
 "\n"
 "\tLast set from "
 
-msgid "No old files"
-msgstr "old 파일이 없습니다"
+msgid "map() argument"
+msgstr "map() 인자"
+
+msgid "filter() argument"
+msgstr "filter() 인자"
+
+#, c-format
+msgid "E686: Argument of %s must be a List"
+msgstr "E686: %s 인자는 List이어야 합니다"
+
+msgid "E928: String required"
+msgstr "E928: String이 필요합니다"
+
+msgid "E808: Number or Float required"
+msgstr "E808: Number 혹은 Float가 필요합니다"
+
+msgid "add() argument"
+msgstr "add() 인자"
+
+msgid "E785: complete() can only be used in Insert mode"
+msgstr "E785: complete()은 입력 모드에서만 사용될 수 있습니다"
+
+#.
+#. * 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 "확인(&O)"
+
+#, c-format
+msgid "E700: Unknown function: %s"
+msgstr "E700: 모르는 함수: %s"
+
+msgid "E922: expected a dict"
+msgstr "E922: dict가 요구됩니다"
+
+msgid "E923: Second argument of function() must be a list or a dict"
+msgstr "E923: function()의 두번째 인자는 list나 dict이어야 합니다"
+
+msgid ""
+"&OK\n"
+"&Cancel"
+msgstr ""
+"확인(&O)\n"
+"취소(&C)"
+
+msgid "called inputrestore() more often than inputsave()"
+msgstr "inputrestore()가 inputsave()보다 많이 불려졌습니다"
+
+msgid "insert() argument"
+msgstr "insert() 인자"
+
+msgid "E786: Range not allowed"
+msgstr "E786: 범위가 허용되지 않습니다"
+
+msgid "E916: not a valid job"
+msgstr "E916: 정상적인 job이 아닙니다"
+
+msgid "E701: Invalid type for len()"
+msgstr "E701: len()에 잘못된 형"
+
+#, c-format
+msgid "E798: ID is reserved for \":match\": %ld"
+msgstr "E798: ID가 \":match\"때문에 예약됨: %ld"
+
+msgid "E726: Stride is zero"
+msgstr "E726: Stride가 0"
+
+msgid "E727: Start past end"
+msgstr "E727: 시작위치가 끝을 지나침"
+
+msgid "<empty>"
+msgstr "<비어있음>"
+
+msgid "E240: No connection to the X server"
+msgstr "E240: X 서버에 연결되어 있지 않습니다"
+
+#, c-format
+msgid "E241: Unable to send to %s"
+msgstr "E241: %s(으)로 보낼 수 없습니다"
+
+msgid "E277: Unable to read a server reply"
+msgstr "E277: 서버의 응답을 읽을 수 없습니다"
+
+msgid "E941: already started a server"
+msgstr "E941: 서버가 이미 시작되었습니다"
+
+msgid "E942: +clientserver feature not available"
+msgstr "E942: +clientserver 기능이 포함되지 않았습니다"
+
+msgid "remove() argument"
+msgstr "remove() 인자"
+
+msgid "E655: Too many symbolic links (cycle?)"
+msgstr "E655: 너무 많은 심볼릭 링크 (반복순환?)"
+
+msgid "reverse() argument"
+msgstr "reverse() 인자"
+
+msgid "E258: Unable to send to client"
+msgstr "E258: 클라이언트로 보낼 수 없습니다"
+
+#, c-format
+msgid "E927: Invalid action: '%s'"
+msgstr "E927: 비정상적인 동작: '%s'"
+
+msgid "sort() argument"
+msgstr "sort() 인자"
+
+msgid "uniq() argument"
+msgstr "uniq() 인자"
+
+msgid "E702: Sort compare function failed"
+msgstr "E702: 정렬 비교 기능이 실패했습니다"
+
+msgid "E882: Uniq compare function failed"
+msgstr "E882: Uniq 비교 함수가 실패하였습니다"
+
+msgid "(Invalid)"
+msgstr "(비정상)"
+
+#, c-format
+msgid "E935: invalid submatch number: %d"
+msgstr "E935: 비정상적인 submatch number: %d"
+
+msgid "E677: Error writing temp file"
+msgstr "E677: 임시 파일 쓰기 에러"
+
+msgid "E921: Invalid callback argument"
+msgstr "E921: 비정상적인 콜백 인자"
 
 #, c-format
 msgid "<%s>%s%s  %d,  Hex %02x,  Octal %03o"
@@ -828,6 +857,10 @@ msgid "E137: Viminfo file is not writabl
 msgstr "E137: Viminfo 파일의 쓰기 권한이 없습니다: %s"
 
 #, c-format
+msgid "E929: Too many viminfo temp files, like %s!"
+msgstr "E929: 너무 많은 viminfo 임시 파일들, 가령 %s!"
+
+#, c-format
 msgid "E138: Can't write viminfo file %s!"
 msgstr "E138: Viminfo 파일 %s을(를) 쓸 수 없습니다!"
 
@@ -835,6 +868,10 @@ msgstr "E138: Viminfo 파일 %s을(를) 쓸 수 없습니다!"
 msgid "Writing viminfo file \"%s\""
 msgstr "Viminfo 파일 \"%s\"을(를) 쓰는 중"
 
+#, c-format
+msgid "E886: Can't rename viminfo file to %s!"
+msgstr "E886: viminfo 파일명을 %s(으)로 변경할 수 없습니다!"
+
 #. Write the info:
 #, c-format
 msgid "# This viminfo file was generated by Vim %s.\n"
@@ -853,6 +890,11 @@ msgstr "# 이 파일이 저장되었을 때의 'encoding'의 값\n"
 msgid "Illegal starting char"
 msgstr "이상한 시작 글자"
 
+#~ msgid ""
+#~ "\n"
+#~ "# Bar lines, copied verbatim:\n"
+#~ msgstr ""
+
 msgid "Save As"
 msgstr "다른 이름으로 저장"
 
@@ -947,8 +989,9 @@ msgstr " 한 줄에서"
 msgid " on %ld lines"
 msgstr " %ld 줄에서"
 
-msgid "E147: Cannot do :global recursive"
-msgstr "E147: :global은 재귀 호출 될 수 없습니다"
+#. will increment global_busy to break out of the loop
+msgid "E147: Cannot do :global recursive with a range"
+msgstr "E147: :global은 범위로 재귀 호출 될 수 없습니다"
 
 msgid "E148: Regular expression missing from global"
 msgstr "E148: global에서 정규표현식이 빠졌습니다"
@@ -957,6 +1000,10 @@ msgstr "E148: global에서 정규표현식이 빠졌습니다"
 msgid "Pattern found in every line: %s"
 msgstr "여러 줄에서 패턴을 찾았습니다: %s"
 
+#, c-format
+msgid "Pattern not found: %s"
+msgstr "패턴을 찾을 수 없음: %s"
+
 msgid ""
 "\n"
 "# Last Substitute String:\n"
@@ -982,8 +1029,8 @@ msgid "Sorry, help file \"%s\" not found
 msgstr "미안합니다, 도움말 파일 \"%s\"을(를) 찾을 수 없습니다"
 
 #, c-format
-msgid "E150: Not a directory: %s"
-msgstr "E150: 디렉토리가 아님: %s"
+msgid "E151: No match: %s"
+msgstr "E151: 맞지 않음: %s"
 
 #, c-format
 msgid "E152: Cannot open %s for writing"
@@ -1002,6 +1049,10 @@ msgid "E154: Duplicate tag \"%s\" in fil
 msgstr "E154: \"%s\" 태그가 %s/%s 파일에서 중복되었습니다"
 
 #, c-format
+msgid "E150: Not a directory: %s"
+msgstr "E150: 디렉토리가 아님: %s"
+
+#, c-format
 msgid "E160: Unknown sign command: %s"
 msgstr "E160: 모르는 sign 명령: %s"
 
@@ -1026,10 +1077,17 @@ msgstr "E159: sign 번호가 없습니다"
 msgid "E158: Invalid buffer name: %s"
 msgstr "E158: 잘못된 버퍼 이름: %s"
 
+msgid "E934: Cannot jump to a buffer that does not have a name"
+msgstr "E934: 이름없는 버퍼로는 점프할 수 없습니다"
+
 #, c-format
 msgid "E157: Invalid sign ID: %ld"
 msgstr "E157: 잘못된 sign ID: %ld"
 
+#, c-format
+msgid "E885: Not possible to change sign %s"
+msgstr "E885: sign %s을(를) 바꿀 수 없습니다"
+
 msgid " (NOT FOUND)"
 msgstr " (못 찾았음)"
 
@@ -1039,6 +1097,9 @@ msgstr " (지원되지 않음)"
 msgid "[Deleted]"
 msgstr "[지워졌습니다]"
 
+msgid "No old files"
+msgstr "old 파일이 없습니다"
+
 msgid "Entering Debug mode.  Type \"cont\" to continue."
 msgstr "디버그 상태로 들어감.  계속하려면 \"cont\"를 입력하십시오."
 
@@ -1050,6 +1111,13 @@ msgstr "%ld 줄: %s"
 msgid "cmd: %s"
 msgstr "명령: %s"
 
+msgid "frame is zero"
+msgstr "프레임이 0"
+
+#, c-format
+msgid "frame at highest level: %d"
+msgstr "프레임이 가장 높은 단계임: %d"
+
 #, c-format
 msgid "Breakpoint in \"%s%s\" line %ld"
 msgstr "중지점: \"%s%s\" %ld 줄"
@@ -1104,8 +1172,16 @@ msgid "Searching for \"%s\""
 msgstr "\"%s\"을(를) 찾는 중"
 
 #, c-format
-msgid "not found in 'runtimepath': \"%s\""
-msgstr "'runtimepath'에서 찾을 수 없음: \"%s\""
+msgid "not found in '%s': \"%s\""
+msgstr "'%s'에서 찾을 수 없음: \"%s\""
+
+#, c-format
+msgid "W20: Required python version 2.x not supported, ignoring file: %s"
+msgstr "W20: 요구되는 파이선 버젼 2.x는 지원되지 않음, 파일을 무시: %s"
+
+#, c-format
+msgid "W21: Required python version 3.x not supported, ignoring file: %s"
+msgstr "W21: 요구되는 파이선 버젼 3.x는 지원되지 않음, 파일을 무시: %s"
 
 msgid "Source Vim script"
 msgstr "빔 스크립트 로드"
@@ -1134,8 +1210,12 @@ msgstr "%ld 줄: \"%s\" 불러들이는 중"
 msgid "finished sourcing %s"
 msgstr "%s 불러들이기 끝"
 
-#~ msgid "modeline"
-#~ msgstr ""
+#, c-format
+msgid "continuing in %s"
+msgstr "%s에서 계속"
+
+msgid "modeline"
+msgstr "modeline"
 
 msgid "--cmd argument"
 msgstr "--cmd 인자"
@@ -1200,6 +1280,9 @@ msgstr "반대 영역이 주어졌습니다, 뒤집을까요"
 msgid "E494: Use w or w>>"
 msgstr "E494: w나 w>>를 사용하십시오"
 
+msgid "E943: Command table needs to be updated, run 'make cmdidxs'"
+msgstr "E943: 명령 테이블 갱신이 필요, 'make cmdidxs'를 실행하세요"
+
 msgid "E319: Sorry, the command is not available in this version"
 msgstr "E319: 미안합니다, 그 명령은 현재 판에서 사용할 수 없습니다"
 
@@ -1225,10 +1308,10 @@ msgstr "E174: 명령이 이미 존재합니다: 바꾸려면 !을 더하세요"
 
 msgid ""
 "\n"
-"    Name        Args Range Complete  Definition"
+"    Name        Args       Address   Complete  Definition"
 msgstr ""
 "\n"
-"    이름        인자 범위  완성      정의"
+"    이름        인자       주소      완성      정의"
 
 msgid "No user-defined commands found"
 msgstr "사용자 정의 명령을 찾을 수 없습니다"
@@ -1248,6 +1331,9 @@ msgstr "E178: 잘못된 기본 카운트 값"
 msgid "E179: argument required for -complete"
 msgstr "E179: -complete에 인자가 필요합니다"
 
+msgid "E179: argument required for -addr"
+msgstr "E179: -addr에 인자가 필요합니다"
+
 #, c-format
 msgid "E181: Invalid attribute: %s"
 msgstr "E181: 잘못된 속성: %s"
@@ -1266,6 +1352,10 @@ msgid "E184: No such user-defined comman
 msgstr "E184: 그런 사용자 정의 명령 없음: %s"
 
 #, c-format
+msgid "E180: Invalid address type value: %s"
+msgstr "E180: 잘못된 주소 형식 값: %s"
+
+#, c-format
 msgid "E180: Invalid complete value: %s"
 msgstr "E180: 잘못된 끝내기 값: %s"
 
@@ -1279,7 +1369,7 @@ msgid "unknown"
 msgstr "모름"
 
 #, c-format
-msgid "E185: Cannot find color scheme %s"
+msgid "E185: Cannot find color scheme '%s'"
 msgstr "E185: 색 스킴 %s을(를) 찾을 수 없습니다"
 
 msgid "Greetings, Vim user!"
@@ -1326,6 +1416,9 @@ msgstr "E188: 이 플랫폼에 대한 창 위치 얻는 기능을 구현되지 않았습니다"
 msgid "E466: :winpos requires two number arguments"
 msgstr "E466: :winpos에는 두개의 인자가 필요합니다"
 
+msgid "E930: Cannot use :redir inside execute()"
+msgstr "E930: execute() 내에서 :redir을 사용할 수 없습니다"
+
 msgid "Save Redirection"
 msgstr "리디렉션 저장"
 
@@ -1522,7 +1615,7 @@ msgstr ""
 "# %s 히스토리 (새것부터 오래된 것 순):\n"
 
 msgid "Command Line"
-msgstr "명령 줄"
+msgstr "명령 행"
 
 msgid "Search String"
 msgstr "찾을 문자열"
@@ -1531,7 +1624,10 @@ msgid "Expression"
 msgstr "표현"
 
 msgid "Input Line"
-msgstr "입력 줄"
+msgstr "입력 행"
+
+msgid "Debug Line"
+msgstr "디버그 행"
 
 msgid "E198: cmd_pchar beyond the command length"
 msgstr "E198: cmd_pchar가 명령 길이를 벗어났습니다"
@@ -1594,9 +1690,6 @@ msgstr "[소켓]"
 #~ msgid "[character special]"
 #~ msgstr ""
 
-msgid "[RO]"
-msgstr "[읽기 전용]"
-
 msgid "[CR missing]"
 msgstr "[CR 없음]"
 
@@ -1609,9 +1702,6 @@ msgstr "[변환 안 됩니다]"
 msgid "[converted]"
 msgstr "[변환 되었습니다]"
 
-msgid "[crypted]"
-msgstr "[암호화 되었습니다]"
-
 #, c-format
 msgid "[CONVERSION ERROR in line %ld]"
 msgstr "[%ld 줄에서 변환 에러]"
@@ -1632,9 +1722,6 @@ msgstr "'charconvert'를 사용한 변환이 실패했습니다"
 msgid "can't read output of 'charconvert'"
 msgstr "'charconvert'의 출력결과를 읽을 수 없습니다"
 
-msgid "E821: File is encrypted with unknown method"
-msgstr "E821: 파일이 모르는 방법으로 암호화되어 있습니다"
-
 msgid "E676: No matching autocommands for acwrite buffer"
 msgstr "E676: acwrite 버퍼에 대한 autocommand를 찾을 수 없습니다"
 
@@ -1783,11 +1870,6 @@ msgstr "1 글자"
 msgid "%lld characters"
 msgstr "%lld 글자"
 
-#. Explicit typecast avoids warning on Mac OS X 10.6
-#, c-format
-msgid "%ld characters"
-msgstr "%ld 글자"
-
 msgid "[noeol]"
 msgstr "[noeol]"
 
@@ -1880,6 +1962,12 @@ msgstr "autocommand 자동삭제: %s <buffer=%d>"
 msgid "E367: No such group: \"%s\""
 msgstr "E367: 이런 그룹 없음: \"%s\""
 
+msgid "E936: Cannot delete the current group"
+msgstr "E936: 현재 그룹을 삭제할 수 없습니다"
+
+msgid "W19: Deleting augroup that is still in use"
+msgstr "W19: 사용중인 augroup을 삭제하려고 합니다"
+
 #, c-format
 msgid "E215: Illegal character after *: %s"
 msgstr "E215: * 뒤에 이상한 글자: %s"
@@ -1940,10 +2028,6 @@ msgstr "E350: 현재의 'foldmethod'으로 접기를 만들 수 없습니다"
 msgid "E351: Cannot delete fold with current 'foldmethod'"
 msgstr "E351: 현재의 'foldmethod'으로 접기를 지울 수 없습니다"
 
-#, c-format
-msgid "+--%3ld lines folded "
-msgstr "+--%3ld 줄 접힘 "
-
 msgid "E222: Add to read buffer"
 msgstr "E222: 읽혀진 버퍼에 더하기"
 
@@ -1975,6 +2059,12 @@ msgstr "맵핑을 찾을 수 없습니다"
 msgid "E228: makemap: Illegal mode"
 msgstr "E228: makemap: 이상한 상태"
 
+msgid "E851: Failed to create a new process for the GUI"
+msgstr "E851: 새로운 GUI 프로세스를 생성할 수 없습니다"
+
+msgid "E852: The child process failed to start the GUI"
+msgstr "E852: 자식 프로세스가 GUI를 시작하지 못했습니다"
+
 msgid "E229: Cannot start the GUI"
 msgstr "E229: GUI를 시작할 수 없습니다"
 
@@ -2029,6 +2119,18 @@ msgstr "빔 대화상자"
 msgid "E232: Cannot create BalloonEval with both message and callback"
 msgstr "E232: 메시지와 콜백 모두를 사용해서는 BalloonEval을 만들 수 없습니다"
 
+msgid "_Cancel"
+msgstr "취소(_C)"
+
+msgid "_Save"
+msgstr "저장(_S)"
+
+msgid "_Open"
+msgstr "열기(_O)"
+
+msgid "_OK"
+msgstr "확인(_O)"
+
 msgid ""
 "&Yes\n"
 "&No\n"
@@ -2038,6 +2140,12 @@ msgstr ""
 "아니오(&N)\n"
 "취소(&C)"
 
+msgid "Yes"
+msgstr "예"
+
+msgid "No"
+msgstr "아니오"
+
 msgid "Input _Methods"
 msgstr "입력 방법(_M)"
 
@@ -2071,23 +2179,23 @@ msgstr "위로"
 msgid "Down"
 msgstr "아래로"
 
-#. 'Find Next' button
 msgid "Find Next"
 msgstr "다음 찾기"
 
-#. 'Replace' button
 msgid "Replace"
 msgstr "바꾸기"
 
-#. 'Replace All' button
 msgid "Replace All"
 msgstr "모두 바꾸기"
 
+msgid "_Close"
+msgstr "닫기(_C)"
+
 msgid "Vim: Received \"die\" request from session manager\n"
 msgstr "빔: 세션 관리자로부터 \"die\" 요청을 받았습니다\n"
 
-msgid "Close"
-msgstr "닫기"
+msgid "Close tab"
+msgstr "탭 닫기"
 
 msgid "New tab"
 msgstr "새 탭"
@@ -2134,20 +2242,6 @@ msgstr "모두 바꾸기(&A)"
 msgid "&Undo"
 msgstr "취소(&U)"
 
-#, c-format
-msgid "E671: Cannot find window title \"%s\""
-msgstr "E671: 창 제목 \"%s\"을(를) 찾을 수 없습니다"
-
-#, c-format
-msgid "E243: Argument not supported: \"-%s\"; Use the OLE version."
-msgstr "E243: 지원되지 않는 인자: \"-%s\": OLE 판을 사용하십시오."
-
-msgid "E672: Unable to open window inside MDI application"
-msgstr "E672: MDI 응용프로그램 안에서 창을 열 수 없습니다"
-
-msgid "Close tab"
-msgstr "탭 닫기"
-
 msgid "Open tab..."
 msgstr "탭 열기..."
 
@@ -2165,6 +2259,17 @@ msgstr "사용 않됨"
 msgid "Directory\t*.nothing\n"
 msgstr "디렉토리\t*.nothing\n"
 
+#, c-format
+msgid "E671: Cannot find window title \"%s\""
+msgstr "E671: 창 제목 \"%s\"을(를) 찾을 수 없습니다"
+
+#, c-format
+msgid "E243: Argument not supported: \"-%s\"; Use the OLE version."
+msgstr "E243: 지원되지 않는 인자: \"-%s\": OLE 판을 사용하십시오."
+
+msgid "E672: Unable to open window inside MDI application"
+msgstr "E672: MDI 응용프로그램 안에서 창을 열 수 없습니다"
+
 msgid "Vim E458: Cannot allocate colormap entry, some colors may be incorrect"
 msgstr ""
 "빔 E458: 색상맵 엔트리를 할당할 수 없습니다, 몇몇 색이 잘못될 수 있습니다"
@@ -2182,32 +2287,28 @@ msgid "Font '%s' is not fixed-width"
 msgstr "글꼴 '%s'은(는) 고정넓이가 아닙니다"
 
 #, c-format
-msgid "E253: Fontset name: %s\n"
-msgstr "E253: 글꼴셋 이름: %s\n"
-
-#, c-format
-msgid "Font0: %s\n"
-msgstr "글꼴0: %s\n"
-
-#, c-format
-msgid "Font1: %s\n"
-msgstr "글꼴1: %s\n"
-
-#, c-format
-msgid "Font%ld width is not twice that of font0\n"
-msgstr "글꼴%ld 너비가 글꼴0의 두배가 아닙니다\n"
-
-#, c-format
-msgid "Font0 width: %ld\n"
-msgstr "글꼴0 너비: %ld\n"
-
-#, c-format
-msgid ""
-"Font1 width: %ld\n"
-"\n"
-msgstr ""
-"글꼴1 너비: %ld\n"
-"\n"
+msgid "E253: Fontset name: %s"
+msgstr "E253: 글꼴셋 이름: %s"
+
+#, c-format
+msgid "Font0: %s"
+msgstr "글꼴0: %s"
+
+#, c-format
+msgid "Font1: %s"
+msgstr "글꼴1: %s"
+
+#, c-format
+msgid "Font%ld width is not twice that of font0"
+msgstr "글꼴%ld 너비가 글꼴0의 두배가 아닙니다"
+
+#, c-format
+msgid "Font0 width: %ld"
+msgstr "글꼴0 너비: %ld"
+
+#, c-format
+msgid "Font1 width: %ld"
+msgstr "글꼴1 너비: %ld"
 
 #~ msgid "Invalid font specification"
 #~ msgstr ""
@@ -2395,6 +2496,9 @@ msgstr "E566: cscope 파이프를 만들 수 없습니다"
 msgid "E622: Could not fork for cscope"
 msgstr "E622: cscope를 fork할 수 없습니다"
 
+msgid "cs_create_connection setpgid failed"
+msgstr "cs_create_connection setpgid가 실패했습니다"
+
 msgid "cs_create_connection exec failed"
 msgstr "cs_create_connection 실행이 실패했습니다"
 
@@ -2427,6 +2531,7 @@ msgstr "%-5s: %s%*s (사용법: %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"
@@ -2437,13 +2542,14 @@ msgid ""
 "       t: Find this text string\n"
 msgstr ""
 "\n"
+"       a: 이 기호에 대한 할당 찾기\n"
 "       c: 이 함수를 부르는 함수들 찾기\n"
 "       d: 이 함수에 의해 불려지는 함수들 찾기\n"
 "       e: 이 egrep 패턴 찾기\n"
 "       f: 이 파일 찾기\n"
 "       g: 이 정의 찾기\n"
-"       i: 이 파일을 포함하는 파일들 찾기\n"
-"       s: 이 C 심볼 찾기\n"
+"       i: 이 파일을 #include하는 파일들 찾기\n"
+"       s: 이 C 기호 찾기\n"
 "       t: 이 문자열 찾기\n"
 
 #, c-format
@@ -2495,8 +2601,8 @@ msgstr "cscope 연결이 없습니다\n"
 msgid " # pid    database name                       prepend path\n"
 msgstr " # pid    데이터베이스 이름                   prepend path\n"
 
-#~ msgid "Lua library cannot be loaded."
-#~ msgstr ""
+msgid "Lua library cannot be loaded."
+msgstr "Lua 라이브러리를 로딩할 수 없습니다."
 
 msgid "cannot save undo information"
 msgstr "undo 정보를 저장할 수 없습니다"
@@ -2508,14 +2614,21 @@ msgstr ""
 "E815: 미안합니다, 이 명령은 사용할 수 없습니다, MzScheme 라이브러리를 로딩할 "
 "수 없습니다."
 
+msgid ""
+"E895: Sorry, this command is disabled, the MzScheme's racket/base module "
+"could not be loaded."
+msgstr ""
+"E895: 미안합니다, 이 명령은 사용할 수 없습니다, MzScheme의 racket/base "
+"모듈을 로딩할 수 없습니다."
+
 msgid "invalid expression"
 msgstr "잘못된 표현식"
 
 msgid "expressions disabled at compile time"
 msgstr "표현식을 지원하지 않도록 컴파일 되었습니다"
 
-#~ msgid "hidden option"
-#~ msgstr ""
+msgid "hidden option"
+msgstr "숨김 옵션"
 
 msgid "unknown option"
 msgstr "모르는 옵션"
@@ -2538,6 +2651,9 @@ msgstr "줄을 끼워넣을 수 없습니다"
 msgid "string cannot contain newlines"
 msgstr "문자열은 newline을 포함할 수 없습니다"
 
+#~ msgid "error converting Scheme values to Vim"
+#~ msgstr ""
+
 msgid "Vim error: ~a"
 msgstr "Vim 에러: ~a"
 
@@ -2566,27 +2682,21 @@ msgstr ""
 "E263: 미안합니다, 이 명령은 사용할 수 없습니다, 파이썬 라이브러리를 로딩할 "
 "수 없습니다."
 
+msgid ""
+"E887: Sorry, this command is disabled, the Python's site module could not be "
+"loaded."
+msgstr ""
+"E887: 미안합니다, 이 명령은 사용할 수 없습니다, 파이썬의 사이트 모듈을 "
+"로딩할 수 없습니다."
+
 msgid "E659: Cannot invoke Python recursively"
 msgstr "E659: Python을 재귀호출할 수 없습니다"
 
-msgid "can't delete OutputObject attributes"
-msgstr "OutputObject 속성을 지울 수 없습니다"
-
-msgid "softspace must be an integer"
-msgstr "softspace는 정수여야만 합니다"
-
-msgid "invalid attribute"
-msgstr "잘못된 속성"
-
-#, c-format
-msgid "<buffer object (deleted) at %p>"
-msgstr "<%p에 버퍼 객체 (삭제됨)>"
-
 msgid "E837: This Vim cannot execute :py3 after using :python"
 msgstr "E837: 이 Vim은 :python을 사용한 후에 :py3을 사용할 수 없습니다"
 
-#~ msgid "E265: $_ must be an instance of String"
-#~ msgstr ""
+msgid "E265: $_ must be an instance of String"
+msgstr "E265: $_는 String 인스턴스이어야 합니다"
 
 msgid ""
 "E266: Sorry, this command is disabled, the Ruby library could not be loaded."
@@ -2616,95 +2726,6 @@ msgstr "E272: 처리않된 예외"
 msgid "E273: unknown longjmp status %d"
 msgstr "E273: 모르는 longjmp 상태 %d"
 
-msgid "Toggle implementation/definition"
-msgstr "토글 구현/정의"
-
-msgid "Show base class of"
-msgstr "...의 기본 클래스 보여주기"
-
-#~ msgid "Show overridden member function"
-#~ msgstr ""
-
-#~ msgid "Retrieve from file"
-#~ msgstr ""
-
-#~ msgid "Retrieve from project"
-#~ msgstr ""
-
-#~ msgid "Retrieve from all projects"
-#~ msgstr ""
-
-#~ msgid "Retrieve"
-#~ msgstr ""
-
-#~ msgid "Show source of"
-#~ msgstr ""
-
-#~ msgid "Find symbol"
-#~ msgstr ""
-
-#~ msgid "Browse class"
-#~ msgstr ""
-
-#~ msgid "Show class in hierarchy"
-#~ msgstr ""
-
-#~ msgid "Show class in restricted hierarchy"
-#~ msgstr ""
-
-#~ msgid "Xref refers to"
-#~ msgstr ""
-
-#~ msgid "Xref referred by"
-#~ msgstr ""
-
-#~ msgid "Xref has a"
-#~ msgstr ""
-
-#~ msgid "Xref used by"
-#~ msgstr ""
-
-#~ msgid "Show docu of"
-#~ msgstr ""
-
-#~ msgid "Generate docu for"
-#~ msgstr ""
-
-msgid ""
-"Cannot connect to SNiFF+. Check environment (sniffemacs must be found in "
-"$PATH).\n"
-msgstr ""
-"SNiFF+로 연결할 수 없습니다. 환경을 확인하십시오 (sniffemacs가 $PATH에서 찾아"
-"져야 합니다).\n"
-
-msgid "E274: Sniff: Error during read. Disconnected"
-msgstr "E274: Sniff: 읽는 중 에러. 끊김"
-
-msgid "SNiFF+ is currently "
-msgstr "SNiFF+ is currently "
-
-msgid "not "
-msgstr "not "
-
-msgid "connected"
-msgstr "connected"
-
-#, c-format
-msgid "E275: Unknown SNiFF+ request: %s"
-msgstr "E275: 모르는 SNiFF+ 요청: %s"
-
-msgid "E276: Error connecting to SNiFF+"
-msgstr "E276: SNiFF+에 연결 에러"
-
-msgid "E278: SNiFF+ not connected"
-msgstr "E278: SniFF+가 연결되지 않았습니다"
-
-msgid "E279: Not a SNiFF+ buffer"
-msgstr "E279: SniFF+ 버퍼가 아닙니다"
-
-msgid "Sniff: Error during write. Disconnected"
-msgstr "Sniff: 쓰는 도중 에러. 끊겼습니다"
-
 msgid "invalid buffer number"
 msgstr "잘못된 버퍼 번호"
 
@@ -2767,12 +2788,6 @@ msgstr ""
 "E571: 미안합니다, 이 명령은 사용할 수 없습니다, Tcl 라이브러리를 로딩할 수 없"
 "습니다."
 
-msgid ""
-"E281: TCL ERROR: exit code is not int!? Please report this to vim-dev@vim.org"
-msgstr ""
-"E281: TCL 에러: 끝내기 코드가 정수가 아닌가!? 이 문제를 vim-dev@vim.org로 알"
-"려주십시오"
-
 #, c-format
 msgid "E572: exit code %d"
 msgstr "E572: 종료 코드 %d"
@@ -2793,6 +2808,18 @@ msgstr "E573: 잘못된 서버 id 사용됨: %s"
 msgid "E251: VIM instance registry property is badly formed.  Deleted!"
 msgstr "E251: 빔 인스턴스 레지스트리 속성이 잘못되어 있습니다. 지웠습니다!"
 
+#, c-format
+msgid "E938: Duplicate key in JSON: \"%s\""
+msgstr "E938: JSON에 중복된 키: \"%s\""
+
+#, c-format
+msgid "E696: Missing comma in List: %s"
+msgstr "E696: List에 콤마 누락: %s"
+
+#, c-format
+msgid "E697: Missing end of List ']': %s"
+msgstr "E697: List 끝에 ']' 누락: %s"
+
 msgid "Unknown option argument"
 msgstr "모르는 옵션 인자"
 
@@ -2818,12 +2845,12 @@ msgstr "%d 파일을 고치기\n"
 msgid "netbeans is not supported with this GUI\n"
 msgstr "이 GUI는 netbeans를 지원하지 않습니다\n"
 
+msgid "'-nb' cannot be used: not enabled at compile time\n"
+msgstr "'-nb'는 사용할 수 없음: 컴파일할 때 포함되지 않음\n"
+
 msgid "This Vim was not compiled with the diff feature."
 msgstr "이 빔은 diff 기능 없이 컴파일 되었습니다."
 
-msgid "'-nb' cannot be used: not enabled at compile time\n"
-msgstr "'-nb'는 사용할 수 없음: 컴파일할 때 포함되지 않음\n"
-
 msgid "Attempt to open script file again: \""
 msgstr "스크립트 파일을 다시 열려고 시도: \""
 
@@ -2836,6 +2863,9 @@ msgstr "스크립트 출력을 열 수 없음: \""
 msgid "Vim: Error: Failure to start gvim from NetBeans\n"
 msgstr "Vim: 에러: NetBeans에서 gvim 시작 실패\n"
 
+msgid "Vim: Error: This version of Vim does not run in a Cygwin terminal\n"
+msgstr "Vim: 에러: 이 버젼의 빔은 Cygwin 터미널에서 실행할 수 없습니다\n"
+
 msgid "Vim: Warning: Output is not to a terminal\n"
 msgstr "빔: 경고: 터미널로 출력할 수 없습니다\n"
 
@@ -2921,25 +2951,28 @@ msgid "-f  or  --nofork\tForeground: Don
 msgstr "-f 혹은 --nofork\t포그라운드: GUI로 시작할 때 fork하지 말 것"
 
 msgid "-v\t\t\tVi mode (like \"vi\")"
-msgstr "-v\t\t\tVi 상태 (\"vi\"와 같음)"
+msgstr "-v\t\t\tVi 모드 (\"vi\"와 같음)"
 
 msgid "-e\t\t\tEx mode (like \"ex\")"
-msgstr "-e\t\t\tEx 상태 (\"ex\"와 같음)"
+msgstr "-e\t\t\tEx 모드 (\"ex\"와 같음)"
+
+msgid "-E\t\t\tImproved Ex mode"
+msgstr "-E\t\t\t향상된 Ex 모드"
 
 msgid "-s\t\t\tSilent (batch) mode (only for \"ex\")"
-msgstr "-s\t\t\t조용한 (배치) 상태 (\"ex\"만)"
+msgstr "-s\t\t\t조용한 (배치) 모드 (\"ex\"만)"
 
 msgid "-d\t\t\tDiff mode (like \"vimdiff\")"
-msgstr "-d\t\t\tDiff 상태 (\"vimdiff\"와 같음)"
+msgstr "-d\t\t\tDiff 모드 (\"vimdiff\"와 같음)"
 
 msgid "-y\t\t\tEasy mode (like \"evim\", modeless)"
-msgstr "-y\t\t\t쉬운 상태 (\"evim\"과 같음, modeless)"
+msgstr "-y\t\t\t쉬운 모드 (\"evim\"과 같음, modeless)"
 
 msgid "-R\t\t\tReadonly mode (like \"view\")"
-msgstr "-R\t\t\t읽기 전용 상태 (\"view\"와 같음)"
+msgstr "-R\t\t\t읽기 전용 모드 (\"view\"와 같음)"
 
 msgid "-Z\t\t\tRestricted mode (like \"rvim\")"
-msgstr "-Z\t\t\t제한된 상태 (\"rvim\"과 같음)"
+msgstr "-Z\t\t\t제한된 모드 (\"rvim\"과 같음)"
 
 msgid "-m\t\t\tModifications (writing files) not allowed"
 msgstr "-m\t\t\t수정(파일 쓰기)이 허용되지 않음"
@@ -2959,11 +2992,11 @@ msgstr "-C\t\t\tVi 호환: 'compatible'"
 msgid "-N\t\t\tNot fully Vi compatible: 'nocompatible'"
 msgstr "-N\t\t\tVi와 호환되지 않음: 'nocompatible'"
 
-#~ msgid "-V[N][fname]\t\tBe verbose [level N] [log messages to fname]"
-#~ msgstr ""
+msgid "-V[N][fname]\t\tBe verbose [level N] [log messages to fname]"
+msgstr "-V[N][fname]\t\tBe verbose [level N] [fname에 메시지 저장]"
 
 msgid "-D\t\t\tDebugging mode"
-msgstr "-D\t\t\t디버깅 상태"
+msgstr "-D\t\t\t디버깅 모드"
 
 msgid "-n\t\t\tNo swap file, use memory only"
 msgstr "-n\t\t\t스왑 파일 없이 메모리만 사용"
@@ -2995,6 +3028,12 @@ msgstr "-F\t\t\tFarsi 모드로 시작"
 msgid "-T <terminal>\tSet terminal type to <terminal>"
 msgstr "-T <terminal>\t터미널 종류를 <terminal>로 설정"
 
+msgid "--not-a-term\t\tSkip warning for input/output not being a terminal"
+msgstr "--not-a-term\t\t터미널에 입출력할 수 없다는 경고하지 않음"
+
+msgid "--ttyfail\t\tExit if input or output is not a terminal"
+msgstr "--ttyfail\t\t터미널에 입출력할 수 없는 경우 종료"
+
 msgid "-u <vimrc>\t\tUse <vimrc> instead of any .vimrc"
 msgstr "-u <vimrc>\t\t.vimrc 대신 <vimrc>를 사용"
 
@@ -3155,19 +3194,6 @@ msgstr "-xrm <resource>\t명시된 리소스 설정"
 
 msgid ""
 "\n"
-"Arguments recognised by gvim (RISC OS version):\n"
-msgstr ""
-"\n"
-"gvim이 알고있는 인자 (RISC OS 판):\n"
-
-msgid "--columns <number>\tInitial width of window in columns"
-msgstr "--columns <숫자>\t칸에서 창 초기 너비"
-
-msgid "--rows <number>\tInitial height of window in rows"
-msgstr "--rows <숫자>\t줄에서 창 초기 높이"
-
-msgid ""
-"\n"
 "Arguments recognised by gvim (GTK+ version):\n"
 msgstr ""
 "\n"
@@ -3182,6 +3208,9 @@ msgstr "--role <role>\t메인 창 구분을 위해 유일한 역할 설정"
 msgid "--socketid <xid>\tOpen Vim inside another GTK widget"
 msgstr "--socketid <xid>\t빔을 다른 GTK 위젯 안에서 열음"
 
+msgid "--echo-wid\t\tMake gvim echo the Window ID on stdout"
+msgstr "--echo-wid\t\t표준출력에 gvim의 Window ID를 표시"
+
 msgid "-P <parent title>\tOpen Vim inside parent application"
 msgstr "-P <parent title>\tVim을 부모 응용 프로그램 내에서 열기"
 
@@ -3373,8 +3402,7 @@ msgstr " 이 컴퓨터에서는 사용될 수 없습니다.\n"
 #, c-format
 msgid ""
 "E833: %s is encrypted and this version of Vim does not support encryption"
-msgstr ""
-"E833: %s이(가) 암호화되어 있는 데, 이 Vim은 암호화를 지원하지 않습니다"
+msgstr "E833: %s이(가) 암호화되어 있는 데, 이 Vim은 암호화를 지원하지 않습니다"
 
 #~ msgid " has been damaged (page size is smaller than minimum value).\n"
 #~ msgstr ""
@@ -3666,24 +3694,17 @@ msgstr "      NEWER than swap file!\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) 다른 프로그램이 같은 파일을 고치고 있는중일 수 있습니다.\n"
-"    만약 그렇다면 같은 파일을 두 개의 프로그램에서 고치지\n"
-"    않도록 조심하시기 바랍니다.\n"
-
-msgid "    Quit, or continue with caution.\n"
-msgstr "    끝내거나 위험을 감수하시려면 계속하십시오.\n"
-
-msgid ""
-"\n"
-"(2) An edit session for this file crashed.\n"
-msgstr ""
-"\n"
-"(2) 파일을 고치다가 죽었었습니다.\n"
+"    만약 그렇다면 같은 파일을 두 개의 프로그램에서 고치지 않도록\n"
+"    조심하시기 바랍니다. 종료하세요. 계속하시려면 주의하세요.\n"
+
+msgid "(2) An edit session for this file crashed.\n"
+msgstr "(2) 이 파일을 고치다가 죽었었습니다.\n"
 
 msgid "    If this is the case, use \":recover\" or \"vim -r "
 msgstr "    만약 그렇다면 \":recover\" 혹은 \"vim -r "
@@ -3905,13 +3926,6 @@ msgstr " (중단되었습니다)"
 msgid "Beep!"
 msgstr "삑!"
 
-msgid "Vim: preserving files...\n"
-msgstr "빔: 파일 보존중...\n"
-
-#. close all memfiles, without deleting
-msgid "Vim: Finished.\n"
-msgstr "빔: 끌났습니다.\n"
-
 msgid "ERROR: "
 msgstr "에러: "
 
@@ -3957,14 +3971,8 @@ msgstr "E548: 숫자가 필요합니다"
 msgid "E549: Illegal percentage"
 msgstr "E549: 이상한 백분율"
 
-msgid "Enter encryption key: "
-msgstr "암호 키 입력: "
-
-msgid "Enter same key again: "
-msgstr "같은 키를 다시 입력: "
-
-msgid "Keys don't match!"
-msgstr "키가 맞지 않습니다!"
+#~ msgid "E854: path too long for completion"
+#~ msgstr ""
 
 #, c-format
 msgid ""
@@ -3990,19 +3998,10 @@ msgstr "E346: cdpath에서 더 이상의 \"%s\" 디렉토리를 찾을 수 없습니다"
 msgid "E347: No more file \"%s\" found in path"
 msgstr "E347: path에서 더 이상의 \"%s\" 파일을 찾을 수 없습니다"
 
-msgid "Cannot connect to Netbeans #2"
-msgstr "Netbeans #2에 연결할 수 없습니다"
-
-msgid "Cannot connect to Netbeans"
-msgstr "Netbeans에 연결할 수 없습니다"
-
 #, c-format
 msgid "E668: Wrong access mode for NetBeans connection info file: \"%s\""
 msgstr "E668: NetBeans 연결 정보 파일이 접근 모드가 잘못됨: \"%s\""
 
-msgid "read from Netbeans socket"
-msgstr "Netbeans 소켓에서 읽기"
-
 #, c-format
 msgid "E658: NetBeans connection lost for buffer %ld"
 msgstr "E658: 버퍼 %ld에 대한 NetBeans 연결을 잃어버렸습니다"
@@ -4013,8 +4012,9 @@ msgstr "E838: 이 GUI는 netbeans를 지원하지 않습니다"
 msgid "E511: netbeans already connected"
 msgstr "E511: netbeans가 이미 연결되어 있습니다"
 
-msgid "E505: "
-msgstr "E505: "
+#, c-format
+msgid "E505: %s is read-only (add ! to override)"
+msgstr "E505: %s은(는) 읽기 전용입니다 (덮어쓰려면 ! 더하기)"
 
 msgid "E349: No identifier under cursor"
 msgstr "E349: 커서 밑에 식별자가 없습니다"
@@ -4043,8 +4043,8 @@ msgstr "E664: changelist가 비었습니다"
 #~ msgid "E663: At end of changelist"
 #~ msgstr ""
 
-msgid "Type  :quit<Enter>  to exit Vim"
-msgstr "VIM을 마치려면  :quit<Enter>  입력"
+msgid "Type  :qa!  and press <Enter> to abandon all changes and exit Vim"
+msgstr ":qa! 입력 후에 <엔터> 키를 누르시면 수정을 취소하고 빔을 종료합니다"
 
 #, c-format
 msgid "1 line %sed 1 time"
@@ -4131,37 +4131,38 @@ msgstr ""
 msgid "E574: Unknown register type %d"
 msgstr "E574: 모르는 레지스터 형식 %d"
 
+#~ msgid ""
+#~ "E883: search pattern and expression register may not contain two or more "
+#~ "lines"
+#~ msgstr ""
+
 #, c-format
 msgid "%ld Cols; "
 msgstr "%ld 열; "
 
 #, c-format
-msgid "Selected %s%ld of %ld Lines; %ld of %ld Words; %ld of %ld Bytes"
-msgstr "Selected %s%ld of %ld 라인; %ld of %ld 단어; %ld of %ld 바이트"
-
-#, c-format
-msgid ""
-"Selected %s%ld of %ld Lines; %ld of %ld Words; %ld of %ld Chars; %ld of %ld "
-"Bytes"
-msgstr ""
-"Selected %s%ld of %ld 라인; %ld of %ld 단어; %ld of %ld 문자; %ld of %ld 바이"
-"트"
-
-#, c-format
-msgid "Col %s of %s; Line %ld of %ld; Word %ld of %ld; Byte %ld of %ld"
-msgstr "Col %s of %s; 라인 %ld of %ld; 단어 %ld of %ld; 바이트 %ld of %ld"
-
-#, c-format
-msgid ""
-"Col %s of %s; Line %ld of %ld; Word %ld of %ld; Char %ld of %ld; Byte %ld of "
-"%ld"
-msgstr ""
-"Col %s of %s; 라인 %ld of %ld; 단어 %ld of %ld; 문자 %ld of %ld; 바이트 %ld "
-"of %ld"
-
-#, c-format
-msgid "(+%ld for BOM)"
-msgstr "(+%ld for BOM)"
+#~ msgid "Selected %s%ld of %ld Lines; %lld of %lld Words; %lld of %lld Bytes"
+#~ msgstr ""
+
+#, c-format
+#~ msgid ""
+#~ "Selected %s%ld of %ld Lines; %lld of %lld Words; %lld of %lld Chars; %lld of "
+#~ "%lld Bytes"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "Col %s of %s; Line %ld of %ld; Word %lld of %lld; Byte %lld of %lld"
+#~ msgstr ""
+
+#, c-format
+#~ msgid ""
+#~ "Col %s of %s; Line %ld of %ld; Word %lld of %lld; Char %lld of %lld; Byte "
+#~ "%lld of %lld"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "(+%ld for BOM)"
+#~ msgstr ""
 
 msgid "%<%f%h%m%=Page %N"
 msgstr "%<%f%h%m%=페이지 %N"
@@ -4178,6 +4179,9 @@ msgstr "E519: 지원되지 않는 옵션입니다"
 msgid "E520: Not allowed in a modeline"
 msgstr "E520: 모드라인에서 사용될 수 없습니다"
 
+msgid "E846: Key code not set"
+msgstr "E846: 키 코드가 설정되지 않았습니다"
+
 msgid "E521: Number required after ="
 msgstr "E521: = 뒤에 숫자가 필요합니다"
 
@@ -4188,6 +4192,10 @@ msgstr "E522: termcap에서 찾을 수 없습니다"
 msgid "E539: Illegal character <%s>"
 msgstr "E539: 이상한 글자 <%s>"
 
+#, c-format
+#~ msgid "For option %s"
+#~ msgstr ""
+
 msgid "E529: Cannot set 'term' to empty string"
 msgstr "E529: 'term'을 빈 문자열로 설정할 수 없습니다"
 
@@ -4381,9 +4389,6 @@ msgstr "I/O 에러"
 msgid "Message"
 msgstr "메시지"
 
-msgid "'columns' is not 80, cannot execute external commands"
-msgstr "'columns'이 80이 아니어서, 외부 명령을 실행할 수 없습니다"
-
 msgid "E237: Printer selection failed"
 msgstr "E237: 프린터를 고르지 못했습니다"
 
@@ -4408,20 +4413,13 @@ msgid "E244: Illegal charset name \"%s\"
 msgstr "E244: 잘못된 글자셋 이름 \"%s\"이(가) 글꼴 이름 \"%s\"에 있습니다"
 
 #, c-format
+msgid "E244: Illegal quality name \"%s\" in font name \"%s\""
+msgstr "E244: 잘못된 퀄러티 이름 \"%s\"이(가) 글꼴 이름 \"%s\"에 있습니다"
+
+#, c-format
 msgid "E245: Illegal char '%c' in font name \"%s\""
 msgstr "E245: 잘못된 글자 '%c'이(가) 글꼴 이름 \"%s\"에 있습니다"
 
-msgid "Vim: Double signal, exiting\n"
-msgstr "빔: 같은 시그널 두 번, 끝냅니다\n"
-
-#, c-format
-msgid "Vim: Caught deadly signal %s\n"
-msgstr "빔: %s 시그널을 잡았습니다\n"
-
-#, c-format
-msgid "Vim: Caught deadly signal\n"
-msgstr "빔: 죽을 시그널을 잡았습니다\n"
-
 #, c-format
 msgid "Opening the X display took %ld msec"
 msgstr "X 디스플레이를 여는 데 %ld msec이 걸렸습니다"
@@ -4453,12 +4451,13 @@ msgstr ""
 "\n"
 "Could not set security context for "
 
-msgid ""
-"\n"
-"Cannot execute shell "
-msgstr ""
-"\n"
-"Cannot execute shell "
+#, c-format
+#~ msgid "Could not set security context %s for %s"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "Could not get security context %s for %s. Removing it!"
+#~ msgstr ""
 
 msgid ""
 "\n"
@@ -4490,6 +4489,13 @@ msgstr ""
 
 msgid ""
 "\n"
+"Cannot execute shell "
+msgstr ""
+"\n"
+"Cannot execute shell "
+
+msgid ""
+"\n"
 "Command terminated\n"
 msgstr ""
 "\n"
@@ -4531,10 +4537,6 @@ msgid "Could not fix up function pointer
 msgstr "함수 포인터를 DLL로 바꿀 수 없습니다!"
 
 #, c-format
-msgid "shell returned %d"
-msgstr "쉘이 %d을(를) 돌려주었습니다"
-
-#, c-format
 msgid "Vim: Caught %s event\n"
 msgstr "빔: %s 이벤트를 잡았습니다\n"
 
@@ -4563,6 +4565,10 @@ msgid "Vim Warning"
 msgstr "빔 경고"
 
 #, c-format
+msgid "shell returned %d"
+msgstr "쉘이 %d을(를) 돌려주었습니다"
+
+#, c-format
 msgid "E372: Too many %%%c in format string"
 msgstr "E372: 형식 문자열에 %%%c이(가) 너무 많습니다"
 
@@ -4585,6 +4591,7 @@ msgstr "E376: 형식 문자열 서두에 잘못된 %%%c이(가) 있습니다"
 msgid "E377: Invalid %%%c in format string"
 msgstr "E377: 형식 문자열에 잘못된 %%%c이(가) 있습니다"
 
+#. nothing found
 msgid "E378: 'errorformat' contains no pattern"
 msgstr "E378: 'errorformat'이 어떤 패턴도 포함하고 있지 않습니다"
 
@@ -4594,6 +4601,15 @@ msgstr "E379: 빠졌거나 빈 디렉토리 이름"
 msgid "E553: No more items"
 msgstr "E553: 더 이상의 항목이 없습니다"
 
+msgid "E924: Current window was closed"
+msgstr "E924: 현재 창이 닫혔습니다"
+
+msgid "E925: Current quickfix was changed"
+msgstr "E925: 현재의 quickfix가 바뀌었습니다"
+
+msgid "E926: Current location list was changed"
+msgstr "E926: 현재의 location list가 바뀌었습니다"
+
 #, c-format
 msgid "(%d of %d)%s%s: "
 msgstr "(%d of %d)%s%s: "
@@ -4601,15 +4617,18 @@ msgstr "(%d of %d)%s%s: "
 msgid " (line deleted)"
 msgstr " (줄을 지웠음)"
 
+#, c-format
+#~ msgid "%serror list %d of %d; %d errors "
+#~ msgstr ""
+
 msgid "E380: At bottom of quickfix stack"
 msgstr "E380: 퀵픽스 스택의 바닥입니다"
 
 msgid "E381: At top of quickfix stack"
 msgstr "E381: 퀵픽스 스택의 꼭대기입니다"
 
-#, c-format
-msgid "error list %d of %d; %d errors"
-msgstr "error list %d of %d; %d errors"
+#~ msgid "No entries"
+#~ msgstr ""
 
 msgid "E382: Cannot write, 'buftype' option is set"
 msgstr "E382: 쓸 수 없음, 'buftype' 옵션이 설정되어 있습니다"
@@ -4634,6 +4653,45 @@ msgstr "E777: String이나 List가 있어야 함"
 msgid "E369: invalid item in %s%%[]"
 msgstr "E369: %s%%[]에 잘못된 항목"
 
+#, c-format
+msgid "E769: Missing ] after %s["
+msgstr "E769: %s[ 뒤에 ]가 없습니다"
+
+#~ msgid "E944: Reverse range in character class"
+#~ msgstr ""
+
+#~ msgid "E945: Range too large in character class"
+#~ msgstr ""
+
+#, c-format
+msgid "E53: Unmatched %s%%("
+msgstr "E53: 맞지 않는 %s%%("
+
+#, c-format
+msgid "E54: Unmatched %s("
+msgstr "E54: 맞지 않는 %s("
+
+#, c-format
+msgid "E55: Unmatched %s)"
+msgstr "E55: 맞지 않는 %s)"
+
+msgid "E66: \\z( not allowed here"
+msgstr "E66: \\z(는 여기에서 허용되지 않습니다"
+
+msgid "E67: \\z1 et al. not allowed here"
+msgstr "E67: \\z1 등은 여기에서 허용되지 않습니다"
+
+#, c-format
+msgid "E69: Missing ] after %s%%["
+msgstr "E69: %s%%[ 뒤에 ]가 없습니다"
+
+#, c-format
+msgid "E70: Empty %s%%[]"
+msgstr "E70: 빈 %s%%[]"
+
+msgid "E65: Illegal back reference"
+msgstr "E65: 이상한 후위 참조"
+
 msgid "E339: Pattern too long"
 msgstr "E339: 패턴이 너무 깁니다"
 
@@ -4648,18 +4706,6 @@ msgid "E52: Unmatched \\z("
 msgstr "E52: 맞지 않는 \\z("
 
 #, c-format
-msgid "E53: Unmatched %s%%("
-msgstr "E53: 맞지 않는 %s%%("
-
-#, c-format
-msgid "E54: Unmatched %s("
-msgstr "E54: 맞지 않는 %s("
-
-#, c-format
-msgid "E55: Unmatched %s)"
-msgstr "E55: 맞지 않는 %s)"
-
-#, c-format
 msgid "E59: invalid character after %s@"
 msgstr "E59: %s@ 뒤에 잘못된 문자"
 
@@ -4682,27 +4728,10 @@ msgstr "E63: \\_를 잘 못 사용"
 msgid "E64: %s%c follows nothing"
 msgstr "E64: %s%c 뒤에 아무것도 없습니다"
 
-msgid "E65: Illegal back reference"
-msgstr "E65: 이상한 후위 참조"
-
-msgid "E66: \\z( not allowed here"
-msgstr "E66: \\z(는 여기에서 허용되지 않습니다"
-
-msgid "E67: \\z1 et al. not allowed here"
-msgstr "E67: \\z1 등은 여기에서 허용되지 않습니다"
-
 msgid "E68: Invalid character after \\z"
 msgstr "E68: \\z 뒤에 이상한 문자"
 
 #, c-format
-msgid "E69: Missing ] after %s%%["
-msgstr "E69: %s%%[ 뒤에 ]가 없습니다"
-
-#, c-format
-msgid "E70: Empty %s%%[]"
-msgstr "E70: 빈 %s%%[]"
-
-#, c-format
 msgid "E678: Invalid character after %s%%[dxouU]"
 msgstr "E678: %s%%[dxouU] 뒤에 이상한 문자"
 
@@ -4711,16 +4740,93 @@ msgid "E71: Invalid character after %s%%
 msgstr "E71: %s%% 뒤에 이상한 문자"
 
 #, c-format
-msgid "E769: Missing ] after %s["
-msgstr "E769: %s[ 뒤에 ]가 없습니다"
-
-#, c-format
 msgid "E554: Syntax error in %s{...}"
 msgstr "E554: %s{...}에 구문 에러"
 
 msgid "External submatches:\n"
 msgstr "외부 submatches:\n"
 
+#, c-format
+msgid "E888: (NFA regexp) cannot repeat %s"
+msgstr "E888: (NFA 정규표현식) %s을(를) 반복할 수 없습니다"
+
+#~ msgid ""
+#~ "E864: \\%#= can only be followed by 0, 1, or 2. The automatic engine will be "
+#~ "used "
+#~ msgstr ""
+
+#~ msgid "Switching to backtracking RE engine for pattern: "
+#~ msgstr ""
+
+#~ msgid "E865: (NFA) Regexp end encountered prematurely"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "E866: (NFA regexp) Misplaced %c"
+#~ msgstr ""
+
+#, c-format
+msgid "E877: (NFA regexp) Invalid character class: %ld"
+msgstr "E877: (NFA 정규표현식) 비정상적인 문자 클래스: %ld"
+
+#, c-format
+msgid "E867: (NFA) Unknown operator '\\z%c'"
+msgstr "E867: (NFA) 모르는 오퍼레이터 '\\z%c'"
+
+#, c-format
+msgid "E867: (NFA) Unknown operator '\\%%%c'"
+msgstr "E867: (NFA) 모르는 오퍼레이터 '\\%%%c'"
+
+#. should never happen
+#~ msgid "E868: Error building NFA with equivalence class!"
+#~ msgstr ""
+
+#, c-format
+msgid "E869: (NFA) Unknown operator '\\@%c'"
+msgstr "E869: (NFA) 모르는 오퍼레이터 '\\@%c'"
+
+#~ msgid "E870: (NFA regexp) Error reading repetition limits"
+#~ msgstr ""
+
+#. Can't have a multi follow a multi.
+#~ msgid "E871: (NFA regexp) Can't have a multi follow a multi !"
+#~ msgstr ""
+
+#. Too many `('
+msgid "E872: (NFA regexp) Too many '('"
+msgstr "E872: (NFA 정규표현식) '('가 너무 많습니다"
+
+msgid "E879: (NFA regexp) Too many \\z("
+msgstr "E879: (NFA 정규표현식) \\z(가 너무 많습니다"
+
+#~ msgid "E873: (NFA regexp) proper termination error"
+#~ msgstr ""
+
+#~ msgid "E874: (NFA) Could not pop the stack !"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "E875: (NFA regexp) (While converting from postfix to NFA), too many states "
+#~ "left on stack"
+#~ msgstr ""
+
+#~ msgid "E876: (NFA regexp) Not enough space to store the whole NFA "
+#~ msgstr ""
+
+#~ msgid "E878: (NFA) Could not allocate memory for branch traversal!"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Could not open temporary log file for writing, displaying on stderr ... "
+#~ msgstr ""
+
+#, c-format
+msgid "(NFA) COULD NOT OPEN %s !"
+msgstr "(NFA) %s을(를) 열 수 없습니다!"
+
+msgid "Could not open temporary log file for writing "
+msgstr "임시 로그 파일을 쓰기 위해 열 수 없습니다"
+
 msgid " VREPLACE"
 msgstr " 선택치환"
 
@@ -4748,9 +4854,6 @@ msgstr " 헤브루"
 msgid " Arabic"
 msgstr " 아라비아"
 
-msgid " (lang)"
-msgstr " (언어)"
-
 msgid " (paste)"
 msgstr " (붙이기)"
 
@@ -4845,8 +4948,47 @@ msgstr ""
 "# Last %sSearch Pattern:\n"
 "~"
 
-msgid "E759: Format error in spell file"
-msgstr "E759: spell 파일 형식 에러"
+msgid "E756: Spell checking is not enabled"
+msgstr "E756: 맞춤법 검사가 활성화되어 있지 않습니다"
+
+#, c-format
+msgid "Warning: Cannot find word list \"%s_%s.spl\" or \"%s_ascii.spl\""
+msgstr "경고: 단어 목록 \"%s_%s.spl\" 혹은 \"%s_ascii.spl\"을 찾을 수 없습니다"
+
+#, c-format
+msgid "Warning: Cannot find word list \"%s.%s.spl\" or \"%s.ascii.spl\""
+msgstr "경고: 단어 목록 \"%s.%s.spl\" 혹은 \"%s.ascii.spl\"을 찾을 수 없습니다"
+
+msgid "E797: SpellFileMissing autocommand deleted buffer"
+msgstr "E797: SpellFileMissing autocommand가 버퍼를 삭제했습니다"
+
+#, c-format
+msgid "Warning: region %s not supported"
+msgstr "경고: %s 영역은 지원되지 않습니다"
+
+msgid "Sorry, no suggestions"
+msgstr "죄송, 제안할 게 없습니다"
+
+#, c-format
+msgid "Sorry, only %ld suggestions"
+msgstr "죄송, %ld개만 제안"
+
+#. for when 'cmdheight' > 1
+#. avoid more prompt
+#, c-format
+msgid "Change \"%.*s\" to:"
+msgstr "Change \"%.*s\" to:"
+
+#, c-format
+msgid " < \"%.*s\""
+msgstr " < \"%.*s\""
+
+msgid "E752: No previous spell replacement"
+msgstr "E752: 철자가 바뀐적이 없습니다"
+
+#, c-format
+msgid "E753: Not found: %s"
+msgstr "E753: 찾을 수 없음: %s"
 
 msgid "E758: Truncated spell file"
 msgstr "E758: 잘린 spell 파일"
@@ -4868,17 +5010,6 @@ msgstr "E762: FOL, LOW 혹은 UPP의 문자가 범위를 벗어남"
 msgid "Compressing word tree..."
 msgstr "단어 트리 압축중..."
 
-msgid "E756: Spell checking is not enabled"
-msgstr "E756: 맞춤법 검사가 활성화되어 있지 않습니다"
-
-#, c-format
-msgid "Warning: Cannot find word list \"%s_%s.spl\" or \"%s_ascii.spl\""
-msgstr "경고: 단어 목록 \"%s_%s.spl\" 혹은 \"%s_ascii.spl\"을 찾을 수 없습니다"
-
-#, c-format
-msgid "Warning: Cannot find word list \"%s.%s.spl\" or \"%s.ascii.spl\""
-msgstr "경고: 단어 목록 \"%s.%s.spl\" 혹은 \"%s.ascii.spl\"을 찾을 수 없습니다"
-
 #, c-format
 msgid "Reading spell file \"%s\""
 msgstr "spell 파일 \"%s\"을(를) 읽고 있습니다"
@@ -4896,8 +5027,24 @@ msgid "E770: Unsupported section in spel
 msgstr "E770: spell 파일에 지원되지 않는 섹션"
 
 #, c-format
-msgid "Warning: region %s not supported"
-msgstr "경고: %s 영역은 지원되지 않습니다"
+msgid "E778: This does not look like a .sug file: %s"
+msgstr "E778: .sug 파일이 아닌 것 같음: %s"
+
+#, c-format
+msgid "E779: Old .sug file, needs to be updated: %s"
+msgstr "E779: 오래된 .sug 파일, 갱신 필요: %s"
+
+#, c-format
+msgid "E780: .sug file is for newer version of Vim: %s"
+msgstr "E780: .sug 파일이 새 버젼의 Vim용임: %s"
+
+#, c-format
+msgid "E781: .sug file doesn't match .spl file: %s"
+msgstr "E781: .sug 파일이 .spl 파일과 맞지 않음: %s"
+
+#, c-format
+msgid "E782: error while reading .sug file: %s"
+msgstr "E782: .sug 파일 읽기 에러: %s"
 
 #, c-format
 msgid "Reading affix file %s ..."
@@ -5157,76 +5304,56 @@ msgid "E765: 'spellfile' does not have %
 msgstr "E765: 'spellfile'에 %ld 항목이 없습니다"
 
 #, c-format
-msgid "Word removed from %s"
-msgstr "%s에서 단어 삭제됨"
-
-#, c-format
-msgid "Word added to %s"
-msgstr "%s에 단어 추가됨"
+msgid "Word '%.*s' removed from %s"
+msgstr "단어 '%.*s'이(가) %s에서 제거됨"
+
+#, c-format
+msgid "Word '%.*s' added to %s"
+msgstr "단어 '%.*s'이(가) %s에 추가됨"
 
 msgid "E763: Word characters differ between spell files"
 msgstr "E763: 단어가 spell 파일 간에 다릅니다"
 
-msgid "Sorry, no suggestions"
-msgstr "죄송, 제안할 게 없습니다"
-
-#, c-format
-msgid "Sorry, only %ld suggestions"
-msgstr "죄송, %ld개만 제안"
-
-#. for when 'cmdheight' > 1
-#. avoid more prompt
-#, c-format
-msgid "Change \"%.*s\" to:"
-msgstr "Change \"%.*s\" to:"
-
-#, c-format
-msgid " < \"%.*s\""
-msgstr " < \"%.*s\""
-
-msgid "E752: No previous spell replacement"
-msgstr "E752: 철자가 바뀐적이 없습니다"
-
-#, c-format
-msgid "E753: Not found: %s"
-msgstr "E753: 찾을 수 없음: %s"
-
-#, c-format
-msgid "E778: This does not look like a .sug file: %s"
-msgstr "E778: .sug 파일이 아닌 것 같음: %s"
-
-#, c-format
-msgid "E779: Old .sug file, needs to be updated: %s"
-msgstr "E779: 오래된 .sug 파일, 갱신 필요: %s"
-
-#, c-format
-msgid "E780: .sug file is for newer version of Vim: %s"
-msgstr "E780: .sug 파일이 새 버젼의 Vim용임: %s"
-
-#, c-format
-msgid "E781: .sug file doesn't match .spl file: %s"
-msgstr "E781: .sug 파일이 .spl 파일과 맞지 않음: %s"
-
-#, c-format
-msgid "E782: error while reading .sug file: %s"
-msgstr "E782: .sug 파일 읽기 에러: %s"
-
 #. This should have been checked when generating the .spl
 #. * file.
 msgid "E783: duplicate char in MAP entry"
 msgstr "E783: MAP 항목에 중복된 문자"
 
+msgid "No Syntax items defined for this buffer"
+msgstr "이 버퍼에 대해 정의된 구문 항목이 없습니다"
+
+#~ msgid "syntax conceal on"
+#~ msgstr ""
+
+#~ msgid "syntax conceal off"
+#~ msgstr ""
+
 #, c-format
 msgid "E390: Illegal argument: %s"
 msgstr "E390: 잘못된 인자: %s"
 
+#~ msgid "syntax case ignore"
+#~ msgstr ""
+
+#~ msgid "syntax case match"
+#~ msgstr ""
+
+#~ msgid "syntax spell toplevel"
+#~ msgstr ""
+
+#~ msgid "syntax spell notoplevel"
+#~ msgstr ""
+
+#~ msgid "syntax spell default"
+#~ msgstr ""
+
+#~ msgid "syntax iskeyword "
+#~ msgstr ""
+
 #, c-format
 msgid "E391: No such syntax cluster: %s"
 msgstr "E391: 이런 구문 클러스터는 없습니다: %s"
 
-msgid "No Syntax items defined for this buffer"
-msgstr "이 버퍼에 대해 정의된 구문 항목이 없습니다"
-
 msgid "syncing on C-style comments"
 msgstr "C-형식 주석문에 동기맞춤"
 
@@ -5292,11 +5419,18 @@ msgstr "E394: %s에 대한 region 항목을 찾지 못했습니다"
 msgid "E397: Filename required"
 msgstr "E397: 파일이름이 필요합니다"
 
+#~ msgid "E847: Too many syntax includes"
+#~ msgstr ""
+
 #, c-format
 msgid "E789: Missing ']': %s"
 msgstr "E789: ']' 누락: %s"
 
 #, c-format
+msgid "E890: trailing char after ']': %s]%s"
+msgstr "E890: ']' 뒤에 문자가 더 있음: %s]%s"
+
+#, c-format
 msgid "E398: Missing '=': %s"
 msgstr "E398: '=' 누락: %s"
 
@@ -5304,6 +5438,9 @@ msgstr "E398: '=' 누락: %s"
 msgid "E399: Not enough arguments: syntax region %s"
 msgstr "E399: 충분치 않은 인자: 구문 영역 %s"
 
+msgid "E848: Too many syntax clusters"
+msgstr "E848: 구문 클러스터가 너무 많습니다"
+
 msgid "E400: No cluster specified"
 msgstr "E400: 클러스터가 명시되지 않았습니다"
 
@@ -5346,6 +5483,10 @@ msgstr "E409: 모르는 그룹 이름: %s"
 msgid "E410: Invalid :syntax subcommand: %s"
 msgstr "E410: 잘못된 :syntax 하위 명령: %s"
 
+#~ msgid ""
+#~ "  TOTAL      COUNT  MATCH   SLOWEST     AVERAGE   NAME               PATTERN"
+#~ msgstr ""
+
 msgid "E679: recursive loop loading syncolor.vim"
 msgstr "E679: syncolor.vim 반복 로딩"
 
@@ -5407,6 +5548,9 @@ msgstr "E669: 그룹 이름에 출력할 수 없는 문자가 있습니다"
 msgid "W18: Invalid character in group name"
 msgstr "W18: 그룹 이름에 이상한 문자"
 
+msgid "E849: Too many highlight and syntax groups"
+msgstr "E849: highlight와 syntax group이 너무 많습니다"
+
 msgid "E555: at bottom of tag stack"
 msgstr "E555: 태그 스택의 끝입니다"
 
@@ -5467,6 +5611,9 @@ msgstr "태그 파일 %s 찾는 중"
 msgid "E430: Tag file path truncated for %s\n"
 msgstr "E430: %s에 대한 태그 파일 경로가 잘렸습니다\n"
 
+msgid "Ignoring long line in tags file"
+msgstr "태그 파일의 너무 긴 라인을 무시합니다"
+
 #, c-format
 msgid "E431: Format error in tags file \"%s\""
 msgstr "E431: 태그 파일 \"%s\"에 형식 에러가 있습니다"
@@ -5483,9 +5630,6 @@ msgstr "E432: 태그 파일이 정렬되어 있지 않음: %s"
 msgid "E433: No tags file"
 msgstr "E433: 태그 파일이 없습니다"
 
-msgid "Ignoring long line in tags file"
-msgstr "태그 파일의 너무 긴 라인을 무시합니다"
-
 msgid "E434: Can't find tag pattern"
 msgstr "E434: 태그 패턴을 찾을 수 없습니다"
 
@@ -5526,6 +5670,9 @@ msgstr ""
 "\n"
 "--- 터미널 키 ---"
 
+msgid "Cannot open $VIMRUNTIME/rgb.txt"
+msgstr "$VIMRUNTIME/rgb.txt을 열 수 없습니다"
+
 msgid "new shell started\n"
 msgstr "새 쉘이 시작되었습니다\n"
 
@@ -5537,8 +5684,8 @@ msgstr "빈 고르기 대신 CUT_BUFFER0을 사용했습니다"
 
 #. This happens when the FileChangedRO autocommand changes the
 #. * file in a way it becomes shorter.
-msgid "E834: Line count changed unexpectedly"
-msgstr "E834: 줄 갯수가 모르는 사이에 바뀌었습니다"
+msgid "E881: Line count changed unexpectedly"
+msgstr "E881: 행 갯수가 갑자기 바뀌었습니다"
 
 #. must display the prompt
 msgid "No undo possible; continue anyway"
@@ -5673,13 +5820,133 @@ msgstr "E439: undo 목록이 깨졌습니다"
 msgid "E440: undo line missing"
 msgstr "E440: undo 줄이 없습니다"
 
-#. Only MS VC 4.1 and earlier can do Win32s
-msgid ""
-"\n"
-"MS-Windows 16/32-bit GUI version"
-msgstr ""
-"\n"
-"MS-Windows 16/32 비트 GUI 판"
+#, c-format
+msgid "E122: Function %s already exists, add ! to replace it"
+msgstr "E122: 함수 %s이(가) 이미 있습니다, 바꾸려면 !을 더하세요"
+
+msgid "E717: Dictionary entry already exists"
+msgstr "E717: 이미 Dictionary 항목이 있습니다"
+
+msgid "E718: Funcref required"
+msgstr "E718: Funcref가 필요합니다"
+
+#, c-format
+msgid "E130: Unknown function: %s"
+msgstr "E130: 모르는 함수: %s"
+
+#, c-format
+msgid "E125: Illegal argument: %s"
+msgstr "E125: 잘못된 인자: %s"
+
+#, c-format
+msgid "E853: Duplicate argument name: %s"
+msgstr "E853: 중복된 인자 이름: %s"
+
+#, c-format
+msgid "E740: Too many arguments for function %s"
+msgstr "E740: 함수 %s에 너무 많은 인자가 전달되었습니다"
+
+#, c-format
+msgid "E116: Invalid arguments for function %s"
+msgstr "E116: 함수 %s(으)로 잘못된 인자가 넘겨졌습니다"
+
+msgid "E132: Function call depth is higher than 'maxfuncdepth'"
+msgstr "E132: 함수를 부른 깊이가 'maxfuncdepth'보다 큽니다"
+
+#, c-format
+msgid "calling %s"
+msgstr "%s 부르는 중"
+
+#, c-format
+msgid "%s aborted"
+msgstr "%s이(가) 중지되었습니다"
+
+#, c-format
+msgid "%s returning #%ld"
+msgstr "%s이(가) #%ld을(를) 돌려주었습니다"
+
+#, c-format
+msgid "%s returning %s"
+msgstr "%s이(가) %s을(를) 돌려주었습니다"
+
+msgid "E699: Too many arguments"
+msgstr "E699: 너무 많은 인자"
+
+#, c-format
+msgid "E117: Unknown function: %s"
+msgstr "E117: 모르는 함수: %s"
+
+#, c-format
+msgid "E933: Function was deleted: %s"
+msgstr "E933: 함수가 삭제됨: %s"
+
+#, c-format
+msgid "E119: Not enough arguments for function: %s"
+msgstr "E119: 함수에 적은 인자 넘김: %s"
+
+#, c-format
+msgid "E120: Using <SID> not in a script context: %s"
+msgstr "E120: 스크립트 콘텍스트 밖에서 <SID> 사용: %s"
+
+#, c-format
+msgid "E725: Calling dict function without Dictionary: %s"
+msgstr "E725: Dictionary없이 사전함수가 불려짐: %s"
+
+msgid "E129: Function name required"
+msgstr "E129: 함수 이름이 필요합니다"
+
+#, c-format
+msgid "E128: Function name must start with a capital or \"s:\": %s"
+msgstr "E128: 함수 이름은 대문자 혹은 \"s:\"로 시작해야 함: %s"
+
+#, c-format
+msgid "E884: Function name cannot contain a colon: %s"
+msgstr "E884: 함수 이름은 콜론을 포함할 수 없음: %s"
+
+#, c-format
+msgid "E123: Undefined function: %s"
+msgstr "E123: 정의 안 된 함수: %s"
+
+#, c-format
+msgid "E124: Missing '(': %s"
+msgstr "E124: '('가 없음: %s"
+
+msgid "E862: Cannot use g: here"
+msgstr "E862: 여기에서 g:을 사용할 수 없습니다"
+
+#, c-format
+#~ msgid "E932: Closure function should not be at top level: %s"
+#~ msgstr ""
+
+msgid "E126: Missing :endfunction"
+msgstr "E126: :endfunction이 없습니다"
+
+#, c-format
+msgid "W22: Text found after :endfunction: %s"
+msgstr "W22: :endfunction 뒤에 문자열이 있음: %s"
+
+#, c-format
+msgid "E707: Function name conflicts with variable: %s"
+msgstr "E707: 함수명이 변수명과 충돌: %s"
+
+#, c-format
+msgid "E127: Cannot redefine function %s: It is in use"
+msgstr "E127: 함수 %s을(를) 다시 정의할 수 없습니다: 사용중입니다"
+
+#, c-format
+msgid "E746: Function name does not match script file name: %s"
+msgstr "E746: 함수명이 스크립트 파일명과 다름: %s"
+
+#, c-format
+msgid "E131: Cannot delete function %s: It is in use"
+msgstr "E131: 함수 %s을(를) 지울 수 없습니다: 사용중입니다"
+
+msgid "E133: :return not inside a function"
+msgstr "E133: :return이 함수 안에 있지 않습니다"
+
+#, c-format
+msgid "E107: Missing parentheses: %s"
+msgstr "E107: 괄호 없음: %s"
 
 msgid ""
 "\n"
@@ -5695,9 +5962,6 @@ msgstr ""
 "\n"
 "MS-Windows 32비트 GUI 버젼"
 
-msgid " in Win32s mode"
-msgstr " Win32s 상태"
-
 msgid " with OLE support"
 msgstr " OLE 지원"
 
@@ -5717,27 +5981,6 @@ msgstr ""
 
 msgid ""
 "\n"
-"MS-Windows 16-bit version"
-msgstr ""
-"\n"
-"MS-Windows 16비트 버젼"
-
-msgid ""
-"\n"
-"32-bit MS-DOS version"
-msgstr ""
-"\n"
-"32비트 MS-DOS 버젼"
-
-msgid ""
-"\n"
-"16-bit MS-DOS version"
-msgstr ""
-"\n"
-"16비트 MS-DOS 버젼"
-
-msgid ""
-"\n"
 "MacOS X (unix) version"
 msgstr ""
 "\n"
@@ -5759,13 +6002,6 @@ msgstr ""
 
 msgid ""
 "\n"
-"RISC OS version"
-msgstr ""
-"\n"
-"RISC OS 버젼"
-
-msgid ""
-"\n"
 "OpenVMS version"
 msgstr ""
 "\n"
@@ -5836,6 +6072,9 @@ msgstr ""
 msgid "without GUI."
 msgstr "GUI 없음."
 
+msgid "with GTK3 GUI."
+msgstr "GTK3 GUI."
+
 msgid "with GTK2-GNOME GUI."
 msgstr "GTK2-GNOME GUI."
 
@@ -5899,6 +6138,9 @@ msgstr "사용자 두 번째 gvimrc 파일: \""
 msgid "3rd user gvimrc file: \""
 msgstr "사용자 세 번째 gvimrc 파일: \""
 
+msgid "       defaults file: \""
+msgstr "       defaults 파일: \""
+
 msgid "    system menu file: \""
 msgstr "    시스템 메뉴 파일: \""
 
@@ -5930,7 +6172,7 @@ msgid "by Bram Moolenaar et al."
 msgstr "by Bram Moolenaar et al."
 
 msgid "Vim is open source and freely distributable"
-msgstr "빔은 소스가 열려 있고 공짜로 배포됩니다"
+msgstr "빔은 누구나 소스를 볼 수 있고 공짜로 배포됩니다"
 
 msgid "Help poor children in Uganda!"
 msgstr "우간다에 사는 가난한 아이를 도와주세요!"
@@ -5989,12 +6231,6 @@ msgstr "이에 대한 정보를 보려면    :help register<엔터>   입력"
 msgid "menu  Help->Sponsor/Register  for information    "
 msgstr "이에 대한 정보를 보려면    메뉴 도움말->Sponsor/Register"
 
-msgid "WARNING: Windows 95/98/ME detected"
-msgstr "경고: 윈도우즈 95/98/ME를 찾았음"
-
-msgid "type  :help windows95<Enter>  for info on this"
-msgstr "이에 대한 정보를 보려면    :help windows95<엔터>  입력"
-
 msgid "Already only one window"
 msgstr "이미 하나의 창만 있습니다"
 
@@ -6027,6 +6263,25 @@ msgid "E447: Can't find file \"%s\" in p
 msgstr "E447: path에서 \"%s\" 파일을 찾을 수 없습니다"
 
 #, c-format
+msgid "E799: Invalid ID: %ld (must be greater than or equal to 1)"
+msgstr "E799: 비정상적인 ID: %ld (1보다 크거나 같아야 합니다)"
+
+#, c-format
+#~ msgid "E801: ID already taken: %ld"
+#~ msgstr ""
+
+msgid "List or number required"
+msgstr "List나 number가 필요합니다"
+
+#, c-format
+msgid "E802: Invalid ID: %ld (must be greater than or equal to 1)"
+msgstr "E802: 비정상적인 ID: %ld (1보다 크거나 같아야 합니다)"
+
+#, c-format
+msgid "E803: ID not found: %ld"
+msgstr "E803: ID를 찾을 수 없음: %ld"
+
+#, c-format
 msgid "E370: Could not load library %s"
 msgstr "E370: %s 라이브러리를 로드할 수 없습니다"
 
@@ -6128,6 +6383,10 @@ msgstr "E236: 글꼴 \"%s\"은(는) 고정넓이가 아닙니다"
 msgid "E473: Internal error"
 msgstr "E473: 내부 에러"
 
+#, c-format
+msgid "E685: Internal error: %s"
+msgstr "E685: 내부 에러: %s"
+
 msgid "Interrupted"
 msgstr "중단되었습니다"
 
@@ -6256,6 +6515,9 @@ msgstr "E485: %s 파일을 읽을 수 없습니다"
 msgid "E37: No write since last change (add ! to override)"
 msgstr "E37: 마지막으로 고친 뒤 저장되지 않았습니다 (무시하려면 ! 더하기)"
 
+msgid "E37: No write since last change"
+msgstr "E37: 마지막으로 고친 뒤 저장하지 않았습니다"
+
 msgid "E38: Null argument"
 msgstr "E38: 널 인자"
 
@@ -6308,6 +6570,31 @@ msgstr "E46: 읽기 전용 변수 \"%s\"을(를) 바꿀 수 없습니다"
 msgid "E794: Cannot set variable in the sandbox: \"%s\""
 msgstr "E794: sandbox 안에서는 변수를 설정할 수 없음: \"%s\""
 
+msgid "E713: Cannot use empty key for Dictionary"
+msgstr "E713: Dictionary에 빈 키를 쓸 수 없습니다"
+
+msgid "E715: Dictionary required"
+msgstr "E715: Dictionary가 필요합니다"
+
+#, c-format
+msgid "E684: list index out of range: %ld"
+msgstr "E684: 목록 번호가 범위를 벗어남: %ld"
+
+#, c-format
+msgid "E118: Too many arguments for function: %s"
+msgstr "E118: 함수에 너무 많은 인자 넘김: %s"
+
+#, c-format
+msgid "E716: Key not present in Dictionary: %s"
+msgstr "E716: Dictionary에 키가 없음: %s"
+
+msgid "E714: List required"
+msgstr "E714: List가 필요합니다"
+
+#, c-format
+msgid "E712: Argument of %s must be a List or Dictionary"
+msgstr "E712: %s 인자는 List 혹은 Dictionary여야 합니다"
+
 msgid "E47: Error while reading errorfile"
 msgstr "E47: 에러파일 읽는 도중에 에러"
 
@@ -6365,8 +6652,8 @@ msgstr "E592: 'winwidth'는 'winminwidth'보다 커야 합니다"
 msgid "E80: Error while writing"
 msgstr "E80: 쓰는 중에 에러"
 
-msgid "Zero count"
-msgstr "Zero count"
+#~ msgid "E939: Positive count required"
+#~ msgstr ""
 
 msgid "E81: Using <SID> not in a script context"
 msgstr "E81: 스크립트 콘텍스트 밖에서 <SID> 사용"
@@ -6380,16 +6667,16 @@ msgstr "E463: 영역이 보호되고 있어서 수정할 수 없습니다"
 msgid "E744: NetBeans does not allow changes in read-only files"
 msgstr "E744: NetBeans는 읽기 전용 파일을 바꿀 수 없습니다"
 
-#, c-format
-msgid "E685: Internal error: %s"
-msgstr "E685: 내부 에러: %s"
-
 msgid "E363: pattern uses more memory than 'maxmempattern'"
 msgstr "E363: 패턴이 'maxmempattern'보다 많은 메모리를 사용합니다"
 
 msgid "E749: empty buffer"
 msgstr "E749: 빈 버퍼"
 
+#, c-format
+msgid "E86: Buffer %ld does not exist"
+msgstr "E86: 버퍼 %ld이(가) 존재하지 않습니다"
+
 msgid "E682: Invalid search pattern or delimiter"
 msgstr "E682: 잘못된 찾기 패턴 혹은 구분자"
 
@@ -6400,6 +6687,13 @@ msgstr "E139: 파일이 다른 버퍼에 로딩되어 있습니다"
 msgid "E764: Option '%s' is not set"
 msgstr "E764: 옵션 '%s'이(가) 설정되어 있지 않습니다"
 
+msgid "E850: Invalid register name"
+msgstr "E850: 잘못된 레지스터 이름"
+
+#, c-format
+msgid "E919: Directory not found in '%s': \"%s\""
+msgstr "E919: '%s'에서 디렉토리를 못찾음: \"%s\""
+
 msgid "search hit TOP, continuing at BOTTOM"
 msgstr "처음까지 찾았음, 끝에서 계속"
 
@@ -6410,38 +6704,250 @@ msgstr "끝까지 찾았음, 처음부터 계속"
 msgid "Need encryption key for \"%s\""
 msgstr "\"%s\"에 대한 암호 키가 필요합니다"
 
-msgid "writelines() requires list of strings"
-msgstr "writelines()는 문자열 목록이 필요합니다"
+msgid "empty keys are not allowed"
+msgstr "빈 키 값은 허용되지 않습니다"
+
+msgid "dictionary is locked"
+msgstr "dictionary가 잠겨있습니다"
+
+msgid "list is locked"
+msgstr "list가 잠겨있습니다"
+
+#, c-format
+msgid "failed to add key '%s' to dictionary"
+msgstr "dictionary에 '%s' 키를 추가할 수 없습니다"
+
+#, c-format
+#~ msgid "index must be int or slice, not %s"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "expected str() or unicode() instance, but got %s"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "expected bytes() or str() instance, but got %s"
+#~ msgstr ""
+
+#, c-format
+#~ msgid ""
+#~ "expected int(), long() or something supporting coercing to long(), but got %s"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "expected int() or something supporting coercing to int(), but got %s"
+#~ msgstr ""
+
+msgid "value is too large to fit into C int type"
+msgstr "값이 C 정수 형식 대비하여 너무 큽니다"
+
+msgid "value is too small to fit into C int type"
+msgstr "값이 C 정수 형식 대비하여 너무 작습니다"
+
+msgid "number must be greater than zero"
+msgstr "값이 0보다 커야 합니다"
+
+msgid "number must be greater or equal to zero"
+msgstr "값이 0보다 크거나 같아야 합니다"
+
+msgid "can't delete OutputObject attributes"
+msgstr "OutputObject 속성을 지울 수 없습니다"
+
+#, c-format
+msgid "invalid attribute: %s"
+msgstr "잘못된 속성: %s"
 
 msgid "E264: Python: Error initialising I/O objects"
 msgstr "E264: 파이썬: I/O 객체 초기화중 에러가 생겼습니다"
 
-msgid "no such buffer"
-msgstr "그런 버퍼는 없습니다"
+msgid "failed to change directory"
+msgstr "디렉토리를 바꿀 수 없습니다"
+
+#, c-format
+#~ msgid "expected 3-tuple as imp.find_module() result, but got %s"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "expected 3-tuple as imp.find_module() result, but got tuple of size %d"
+#~ msgstr ""
+
+#~ msgid "internal error: imp.find_module returned tuple with NULL"
+#~ msgstr ""
+
+msgid "cannot delete vim.Dictionary attributes"
+msgstr "vim.Dictionary 속성을 삭제할 수 없습니다"
+
+msgid "cannot modify fixed dictionary"
+msgstr "fixed dictionary를 수정할 수 없습니다"
+
+#, c-format
+msgid "cannot set attribute %s"
+msgstr "속성 %s을(를) 설정할 수 없습니다"
+
+#~ msgid "hashtab changed during iteration"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "expected sequence element of size 2, but got sequence of size %d"
+#~ msgstr ""
+
+#~ msgid "list constructor does not accept keyword arguments"
+#~ msgstr ""
+
+msgid "list index out of range"
+msgstr "list 색인이 범위를 벗어났습니다"
+
+#. No more suitable format specifications in python-2.3
+#, c-format
+#~ msgid "internal error: failed to get vim list item %d"
+#~ msgstr ""
+
+#~ msgid "slice step cannot be zero"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "attempt to assign sequence of size greater than %d to extended slice"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "internal error: no vim list item %d"
+#~ msgstr ""
+
+#~ msgid "internal error: not enough list items"
+#~ msgstr ""
+
+#~ msgid "internal error: failed to add item to list"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "attempt to assign sequence of size %d to extended slice of size %d"
+#~ msgstr ""
+
+#~ msgid "failed to add item to list"
+#~ msgstr ""
+
+msgid "cannot delete vim.List attributes"
+msgstr "vim.List 속성을 삭제할 수 없습니다"
+
+#~ msgid "cannot modify fixed list"
+#~ msgstr ""
+
+#, c-format
+msgid "unnamed function %s does not exist"
+msgstr "이름없는 함수 %s이(가) 존재하지 않습니다"
+
+#, c-format
+msgid "function %s does not exist"
+msgstr "함수 %s이(가) 존재하지 않습니다"
+
+#, c-format
+msgid "failed to run function %s"
+msgstr "함수 %s을(를) 실행할 수 없습니다"
+
+msgid "unable to get option value"
+msgstr "옵션 값을 얻을 수 없습니다"
+
+#~ msgid "internal error: unknown option type"
+#~ msgstr ""
+
+#~ msgid "problem while switching windows"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "unable to unset global option %s"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "unable to unset option %s which does not have global value"
+#~ msgstr ""
+
+msgid "attempt to refer to deleted tab page"
+msgstr "지워진 탭 페이지를 참조하려고 하였습니다"
+
+msgid "no such tab page"
+msgstr "그런 탭 페이지가 없습니다"
 
 msgid "attempt to refer to deleted window"
 msgstr "지워진 창을 참조하려고 하였습니다"
 
-msgid "readonly attribute"
-msgstr "읽기 전용 속성"
+msgid "readonly attribute: buffer"
+msgstr "읽기 전용 속성: 버퍼"
 
 msgid "cursor position outside buffer"
 msgstr "퍼서 위치가 버퍼 밖에 있습니다"
 
-#, c-format
-msgid "<window object (deleted) at %p>"
-msgstr "<%p에 창 객체 (삭제됨)>"
-
-#, c-format
-msgid "<window object (unknown) at %p>"
-msgstr "<%p에 창 객체 (모름)>"
-
-#, c-format
-msgid "<window %d>"
-msgstr "<창 %d>"
-
 msgid "no such window"
 msgstr "그런 창은 없습니다"
 
 msgid "attempt to refer to deleted buffer"
 msgstr "지워진 버퍼를 참조하려고 하였습니다"
+
+msgid "failed to rename buffer"
+msgstr "버퍼 이름을 변경할 수 없습니다"
+
+#~ msgid "mark name must be a single character"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "expected vim.Buffer object, but got %s"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "failed to switch to buffer %d"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "expected vim.Window object, but got %s"
+#~ msgstr ""
+
+#~ msgid "failed to find window in the current tab page"
+#~ msgstr ""
+
+#~ msgid "did not switch to the specified window"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "expected vim.TabPage object, but got %s"
+#~ msgstr ""
+
+#~ msgid "did not switch to the specified tab page"
+#~ msgstr ""
+
+#~ msgid "failed to run the code"
+#~ msgstr ""
+
+#~ msgid "E858: Eval did not return a valid python object"
+#~ msgstr ""
+
+#~ msgid "E859: Failed to convert returned python object to vim value"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "unable to convert %s to vim dictionary"
+#~ msgstr ""
+
+#, c-format
+msgid "unable to convert %s to vim list"
+msgstr "%s을(를) vim list로 변경할 수 없습니다"
+
+#, c-format
+#~ msgid "unable to convert %s to vim structure"
+#~ msgstr ""
+
+#~ msgid "internal error: NULL reference passed"
+#~ msgstr ""
+
+#~ msgid "internal error: invalid value type"
+#~ msgstr ""
+
+#~ 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 ""
+
+#~ msgid ""
+#~ "Failed to set path: sys.path is not a list\n"
+#~ "You should now append vim.VIM_SPECIAL_PATH to sys.path"
+#~ msgstr ""
--- a/src/po/ko.po
+++ b/src/po/ko.po
@@ -4,12 +4,12 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: vim 7.3\n"
+"Project-Id-Version: vim 8.0\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2011-02-16 16:18+0900\n"
-"PO-Revision-Date: 2010-02-18 09:49+0900\n"
+"POT-Creation-Date: 2017-07-12 14:52+0900\n"
+"PO-Revision-Date: 2017-07-12 18:56+0900\n"
 "Last-Translator: SungHyun Nam <goweol@gmail.com>\n"
-"Language-Team: GTP Korean <gnome-kr-translation@gnome.or.kr>\n"
+"Language-Team: GTP Korean\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=euc-kr\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -35,12 +35,21 @@ msgstr "[ġ ]"
 msgid "[Quickfix List]"
 msgstr "[Quickfix ]"
 
+msgid "E855: Autocommands caused command to abort"
+msgstr "E855: Autocommand  ߴܵǾϴ"
+
 msgid "E82: Cannot allocate any buffer, exiting..."
 msgstr "E82: ۸ Ҵ   ϴ..."
 
 msgid "E83: Cannot allocate buffer, using other one..."
 msgstr "E83: ۸ Ҵ   ٸ  մϴ..."
 
+msgid "E931: Buffer cannot be registered"
+msgstr "E931: ۸  ߽ϴ"
+
+msgid "E937: Attempt to delete a buffer that is in use"
+msgstr "E937:  ۸ Ϸ ߽ϴ"
+
 msgid "E515: No buffers were unloaded"
 msgstr "E515:  ۰ ϴ"
 
@@ -71,6 +80,9 @@ msgstr "    ϴ"
 msgid "%d buffers wiped out"
 msgstr " %d  ϴ"
 
+msgid "E90: Cannot unload last buffer"
+msgstr "E90:  ۸   ϴ"
+
 msgid "E84: No modified buffer found"
 msgstr "E84: ٲ ۸ ã  ϴ"
 
@@ -78,10 +90,6 @@ msgstr "E84: ٲ ۸ ã  ϴ"
 msgid "E85: There is no listed buffer"
 msgstr "E85:  ۰ ϴ"
 
-#, c-format
-msgid "E86: Buffer %ld does not exist"
-msgstr "E86:  %ld()  ʽϴ"
-
 msgid "E87: Cannot go beyond last buffer"
 msgstr "E87:  Դϴ"
 
@@ -94,9 +102,6 @@ msgstr ""
 "E89:  %ld()  ģ   ʾҽϴ ( ! "
 ")"
 
-msgid "E90: Cannot unload last buffer"
-msgstr "E90:  ۸   ϴ"
-
 msgid "W14: Warning: List of file names overflow"
 msgstr "W14: :  ̸  ƽϴ"
 
@@ -131,6 +136,9 @@ msgstr "[ ]"
 msgid "[Read errors]"
 msgstr "[б ]"
 
+msgid "[RO]"
+msgstr "[б ]"
+
 msgid "[readonly]"
 msgstr "[б ]"
 
@@ -193,9 +201,100 @@ msgstr "%s  ȣ:"
 msgid "    line=%ld  id=%d  name=%s"
 msgstr "    =%ld  id=%d  ̸=%s"
 
-#, c-format
-msgid "E96: Can not diff more than %ld buffers"
-msgstr "E96: %ld ̻ ۿ ؼ diff   ϴ"
+msgid "E902: Cannot connect to port"
+msgstr "E902: Ʈ   ϴ"
+
+msgid "E901: gethostbyname() in channel_open()"
+msgstr "E901: channel_open() gethostbyname()"
+
+msgid "E898: socket() in channel_open()"
+msgstr "E898: channel_open() socket()"
+
+msgid "E903: received command with non-string argument"
+msgstr "E903: ڿ ƴ ڸ  ߽ϴ"
+
+msgid "E904: last argument for expr/call must be a number"
+msgstr "E904: expr/call  ڴ ڿ մϴ"
+
+msgid "E904: third argument for call must be a list"
+msgstr "E904: 3° ڴ list մϴ"
+
+#, c-format
+msgid "E905: received unknown command: %s"
+msgstr "E905: 𸣴  : %s"
+
+#, c-format
+msgid "E630: %s(): write while not connected"
+msgstr "E630: %s():  ʾҴ  "
+
+#, c-format
+msgid "E631: %s(): write failed"
+msgstr "E631: %s(): Ⱑ ߽ϴ"
+
+#, c-format
+msgid "E917: Cannot use a callback with %s()"
+msgstr "E917: %s() callback   ϴ"
+
+msgid "E912: cannot use ch_evalexpr()/ch_sendexpr() with a raw or nl channel"
+msgstr "E912: raw Ȥ nl äο ch_evalexpr()/ch_sendexpr()   ϴ"
+
+msgid "E906: not an open channel"
+msgstr "E906:  ä ƴմϴ"
+
+msgid "E920: _io file requires _name to be set"
+msgstr "E920: _io  Ϸ _name ʿմϴ"
+
+msgid "E915: in_io buffer requires in_buf or in_name to be set"
+msgstr "E915: in_io ۴ Ϸ in_buf in_name ʿմϴ"
+
+#, c-format
+msgid "E918: buffer must be loaded: %s"
+msgstr "E918: ۰ εǾ մϴ: %s"
+
+msgid "E821: File is encrypted with unknown method"
+msgstr "E821:  𸣴  ȣȭǾ ֽϴ"
+
+msgid "Warning: Using a weak encryption method; see :help 'cm'"
+msgstr ":  ȣ  ; :help 'cm' Ȯϼ"
+
+msgid "Enter encryption key: "
+msgstr "ȣ Ű Է: "
+
+msgid "Enter same key again: "
+msgstr " Ű ٽ Է: "
+
+msgid "Keys don't match!"
+msgstr "Ű  ʽϴ!"
+
+msgid "[crypted]"
+msgstr "[ȣȭ Ǿϴ]"
+
+#, c-format
+msgid "E720: Missing colon in Dictionary: %s"
+msgstr "E720: Dictionary ݷ : %s"
+
+#, c-format
+msgid "E721: Duplicate key in Dictionary: \"%s\""
+msgstr "E721: Dictionary ߺ Ű: \"%s\""
+
+#, c-format
+msgid "E722: Missing comma in Dictionary: %s"
+msgstr "E722: Dictionary ޸ : %s"
+
+#, c-format
+msgid "E723: Missing end of Dictionary '}': %s"
+msgstr "E723: Dictionary  '}' : %s"
+
+msgid "extend() argument"
+msgstr "extend() "
+
+#, c-format
+msgid "E737: Key already exists: %s"
+msgstr "E737: Ű ̹ : %s"
+
+#, c-format
+msgid "E96: Cannot diff more than %ld buffers"
+msgstr "E96: ۸ %ld ̻   ϴ"
 
 msgid "E810: Cannot read or write temp files"
 msgstr "E810: ӽ  аų   ϴ"
@@ -323,6 +422,9 @@ msgstr "ã : %s"
 msgid "Scanning tags."
 msgstr "± ã ."
 
+#~ msgid "match in file"
+#~ msgstr ""
+
 msgid " Adding"
 msgstr " ϱ"
 
@@ -350,55 +452,17 @@ msgstr "match %d of %d"
 msgid "match %d"
 msgstr "match %d"
 
+#. maximum nesting of lists and dicts
 msgid "E18: Unexpected characters in :let"
 msgstr "E18: ':let' 𸣴 "
 
 #, c-format
-msgid "E684: list index out of range: %ld"
-msgstr "E684:  ȣ  : %ld"
-
-#, c-format
 msgid "E121: Undefined variable: %s"
 msgstr "E121:    : %s"
 
 msgid "E111: Missing ']'"
 msgstr "E111: ']' ϴ"
 
-#, c-format
-msgid "E686: Argument of %s must be a List"
-msgstr "E686: %s ڴ List̾ մϴ"
-
-#, c-format
-msgid "E712: Argument of %s must be a List or Dictionary"
-msgstr "E712: %s ڴ List Ȥ Dictionary մϴ"
-
-msgid "E713: Cannot use empty key for Dictionary"
-msgstr "E713: Dictionary  Ű   ϴ"
-
-msgid "E714: List required"
-msgstr "E714: List ʿմϴ"
-
-msgid "E715: Dictionary required"
-msgstr "E715: Dictionary ʿմϴ"
-
-#, c-format
-msgid "E118: Too many arguments for function: %s"
-msgstr "E118: Լ ʹ   ѱ: %s"
-
-#, c-format
-msgid "E716: Key not present in Dictionary: %s"
-msgstr "E716: Dictionary Ű : %s"
-
-#, c-format
-msgid "E122: Function %s already exists, add ! to replace it"
-msgstr "E122: Լ %s() ̹ ֽϴ, ٲٷ ! ϼ"
-
-msgid "E717: Dictionary entry already exists"
-msgstr "E717: ̹ Dictionary ׸ ֽϴ"
-
-msgid "E718: Funcref required"
-msgstr "E718: Funcref ʿմϴ"
-
 msgid "E719: Cannot use [:] with a Dictionary"
 msgstr "E719: Dictionary [:]   ϴ"
 
@@ -407,13 +471,12 @@ msgid "E734: Wrong variable type for %s=
 msgstr "E734: %s=  ߸ "
 
 #, c-format
-msgid "E130: Unknown function: %s"
-msgstr "E130: 𸣴 Լ: %s"
-
-#, c-format
 msgid "E461: Illegal variable name: %s"
 msgstr "E461:   : %s"
 
+msgid "E806: using Float as a String"
+msgstr "E806: Float String "
+
 msgid "E687: Less targets than List items"
 msgstr "E687: List ׸񺸴  "
 
@@ -446,13 +509,15 @@ msgid "E690: Missing \"in\" after :for"
 msgstr "E690: :for ڿ \"in\" ϴ"
 
 #, c-format
-msgid "E107: Missing parentheses: %s"
-msgstr "E107: ȣ : %s"
-
-#, c-format
 msgid "E108: No such variable: \"%s\""
 msgstr "E108: ̷  : \"%s\""
 
+#. For historic reasons this error is not given for a list or dict.
+#. * E.g., the b: dict could be locked/unlocked.
+#, c-format
+msgid "E940: Cannot lock or unlock variable %s"
+msgstr "E940:  %s()  Ȥ   ϴ"
+
 msgid "E743: variable nested too deep for (un)lock"
 msgstr "E743: ()ϱ⿡  ʹ  øǾϴ"
 
@@ -471,9 +536,6 @@ msgstr "E735: Dictionary Dictionary͸   ֽϴ"
 msgid "E736: Invalid operation for Dictionary"
 msgstr "E736: Dictionary  ߸ "
 
-msgid "E693: Can only compare Funcref with Funcref"
-msgstr "E693: Funcref Funcref͸   ֽϴ"
-
 msgid "E694: Invalid operation for Funcrefs"
 msgstr "E694: Funcrefs  ߸ "
 
@@ -486,6 +548,9 @@ msgstr "E110: ')' ϴ"
 msgid "E695: Cannot index a Funcref"
 msgstr "E695: Funcref   ϴ"
 
+msgid "E909: Cannot index a special variable"
+msgstr "E909: Ư    ϴ"
+
 #, c-format
 msgid "E112: Option name missing: %s"
 msgstr "E112: ɼ ̸ : %s"
@@ -502,136 +567,12 @@ msgstr "E114: ǥ : %s"
 msgid "E115: Missing quote: %s"
 msgstr "E115: ǥ : %s"
 
-#, c-format
-msgid "E696: Missing comma in List: %s"
-msgstr "E696: List ޸ : %s"
-
-#, c-format
-msgid "E697: Missing end of List ']': %s"
-msgstr "E697: List  ']' : %s"
-
-#, c-format
-msgid "E720: Missing colon in Dictionary: %s"
-msgstr "E720: Dictionary ݷ : %s"
-
-#, c-format
-msgid "E721: Duplicate key in Dictionary: \"%s\""
-msgstr "E721: Dictionary ߺ Ű: \"%s\""
-
-#, c-format
-msgid "E722: Missing comma in Dictionary: %s"
-msgstr "E722: Dictionary ޸ : %s"
-
-#, c-format
-msgid "E723: Missing end of Dictionary '}': %s"
-msgstr "E723: Dictionary  '}' : %s"
+#~ msgid "Not enough memory to set references, garbage collection aborted!"
+#~ msgstr ""
 
 msgid "E724: variable nested too deep for displaying"
 msgstr "E724:  ǥϱ⿡ ʹ  øǾϴ"
 
-#, c-format
-msgid "E740: Too many arguments for function %s"
-msgstr "E740: Լ %s ʹ  ڰ ޵Ǿϴ"
-
-#, c-format
-msgid "E116: Invalid arguments for function %s"
-msgstr "E116: Լ %s() ߸ ڰ Ѱϴ"
-
-#, c-format
-msgid "E117: Unknown function: %s"
-msgstr "E117: 𸣴 Լ: %s"
-
-#, c-format
-msgid "E119: Not enough arguments for function: %s"
-msgstr "E119: Լ   ѱ: %s"
-
-#, c-format
-msgid "E120: Using <SID> not in a script context: %s"
-msgstr "E120: ũƮ ؽƮ ۿ <SID> : %s"
-
-#, c-format
-msgid "E725: Calling dict function without Dictionary: %s"
-msgstr "E725: Dictionary Լ ҷ: %s"
-
-msgid "E808: Number or Float required"
-msgstr "E808: Number Ȥ Float ʿմϴ"
-
-msgid "E699: Too many arguments"
-msgstr "E699: ʹ  "
-
-msgid "E785: complete() can only be used in Insert mode"
-msgstr "E785: complete() Է 忡   ֽϴ"
-
-#.
-#. * 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 "Ȯ(&O)"
-
-#, c-format
-msgid "E737: Key already exists: %s"
-msgstr "E737: Ű ̹ : %s"
-
-#, c-format
-msgid "+-%s%3ld lines: "
-msgstr "+-%s%3ld : "
-
-#, c-format
-msgid "E700: Unknown function: %s"
-msgstr "E700: 𸣴 Լ: %s"
-
-msgid ""
-"&OK\n"
-"&Cancel"
-msgstr ""
-"Ȯ(&O)\n"
-"(&C)"
-
-msgid "called inputrestore() more often than inputsave()"
-msgstr "inputrestore() inputsave()  ҷϴ"
-
-msgid "E786: Range not allowed"
-msgstr "E786:   ʽϴ"
-
-msgid "E701: Invalid type for len()"
-msgstr "E701: len() ߸ "
-
-msgid "E726: Stride is zero"
-msgstr "E726: Stride 0"
-
-msgid "E727: Start past end"
-msgstr "E727: ġ  ħ"
-
-msgid "<empty>"
-msgstr "<>"
-
-msgid "E240: No connection to Vim server"
-msgstr "E240: Vim  Ǿ  ʽϴ"
-
-#, c-format
-msgid "E241: Unable to send to %s"
-msgstr "E241: %s()   ϴ"
-
-msgid "E277: Unable to read a server reply"
-msgstr "E277:     ϴ"
-
-msgid "E655: Too many symbolic links (cycle?)"
-msgstr "E655: ʹ  ɺ ũ (ݺȯ?)"
-
-msgid "E258: Unable to send to client"
-msgstr "E258: Ŭ̾Ʈ   ϴ"
-
-msgid "E702: Sort compare function failed"
-msgstr "E702:    ߽ϴ"
-
-msgid "(Invalid)"
-msgstr "(߸Ǿϴ)"
-
-msgid "E677: Error writing temp file"
-msgstr "E677: ӽ   "
-
 msgid "E805: Using a Float as a Number"
 msgstr "E805: Float Number "
 
@@ -644,6 +585,33 @@ msgstr "E745: List Number "
 msgid "E728: Using a Dictionary as a Number"
 msgstr "E728: Dictionary Number "
 
+msgid "E910: Using a Job as a Number"
+msgstr "E910: Job Number ϰ ֽϴ"
+
+msgid "E913: Using a Channel as a Number"
+msgstr "E913: Channel Number ϰ ֽϴ"
+
+msgid "E891: Using a Funcref as a Float"
+msgstr "E891: Funcref Float ϰ ֽϴ"
+
+msgid "E892: Using a String as a Float"
+msgstr "E892: String Float ϰ ֽϴ"
+
+msgid "E893: Using a List as a Float"
+msgstr "E893: List Float ϰ ֽϴ"
+
+msgid "E894: Using a Dictionary as a Float"
+msgstr "E894: Dictionary Float ϰ ֽϴ"
+
+msgid "E907: Using a special value as a Float"
+msgstr "E907: Ư  Float ϰ ֽϴ"
+
+msgid "E911: Using a Job as a Float"
+msgstr "E911: Job Float ϰ ֽϴ"
+
+msgid "E914: Using a Channel as a Float"
+msgstr "E914: Channel Float ϰ ֽϴ"
+
 msgid "E729: using Funcref as a String"
 msgstr "E729: Funcref String "
 
@@ -653,8 +621,12 @@ msgstr "E730: List String "
 msgid "E731: using Dictionary as a String"
 msgstr "E731: Dictionary String "
 
-msgid "E806: using Float as a String"
-msgstr "E806: Float String "
+msgid "E908: using an invalid value as a String"
+msgstr "E908: ߸  String ϰ ֽϴ"
+
+#, c-format
+msgid "E795: Cannot delete variable %s"
+msgstr "E795:  %s   ϴ"
 
 #, c-format
 msgid "E704: Funcref variable name must start with a capital: %s"
@@ -665,14 +637,6 @@ msgid "E705: Variable name conflicts wit
 msgstr "E705:  ̹ ִ Լ 浹: %s"
 
 #, c-format
-msgid "E706: Variable type mismatch for: %s"
-msgstr "E706:   ٸ: %s"
-
-#, c-format
-msgid "E795: Cannot delete variable %s"
-msgstr "E795:  %s   ϴ"
-
-#, c-format
 msgid "E741: Value is locked: %s"
 msgstr "E741:  : %s"
 
@@ -686,70 +650,6 @@ msgstr "E742: %s  ٲ  ϴ"
 msgid "E698: variable nested too deep for making a copy"
 msgstr "E698: ϱ⿡  ʹ  øǾϴ"
 
-#, c-format
-msgid "E123: Undefined function: %s"
-msgstr "E123:    Լ: %s"
-
-#, c-format
-msgid "E124: Missing '(': %s"
-msgstr "E124: '(' : %s"
-
-#, c-format
-msgid "E125: Illegal argument: %s"
-msgstr "E125: ߸ : %s"
-
-msgid "E126: Missing :endfunction"
-msgstr "E126: :endfunction ϴ"
-
-#, c-format
-msgid "E707: Function name conflicts with variable: %s"
-msgstr "E707: Լ  浹: %s"
-
-#, c-format
-msgid "E127: Cannot redefine function %s: It is in use"
-msgstr "E127: Լ %s() ٽ   ϴ: Դϴ"
-
-#, c-format
-msgid "E746: Function name does not match script file name: %s"
-msgstr "E746: Լ ũƮ ϸ ٸ: %s"
-
-msgid "E129: Function name required"
-msgstr "E129: Լ ̸ ʿմϴ"
-
-#, c-format
-msgid "E128: Function name must start with a capital or contain a colon: %s"
-msgstr "E128: Լ ̸ 빮ڷ ϰų ݷ ؾ : %s"
-
-#, c-format
-msgid "E131: Cannot delete function %s: It is in use"
-msgstr "E131: Լ %s()   ϴ: Դϴ"
-
-msgid "E132: Function call depth is higher than 'maxfuncdepth'"
-msgstr "E132: Լ θ ̰ 'maxfuncdepth' Ůϴ"
-
-#, c-format
-msgid "calling %s"
-msgstr "%s θ "
-
-#, c-format
-msgid "%s aborted"
-msgstr "%s() Ǿϴ"
-
-#, c-format
-msgid "%s returning #%ld"
-msgstr "%s() #%ld() ־ϴ"
-
-#, c-format
-msgid "%s returning %s"
-msgstr "%s() %s() ־ϴ"
-
-#, c-format
-msgid "continuing in %s"
-msgstr "%s "
-
-msgid "E133: :return not inside a function"
-msgstr "E133: :return Լ ȿ  ʽϴ"
-
 msgid ""
 "\n"
 "# global variables:\n"
@@ -764,8 +664,137 @@ msgstr ""
 "\n"
 "\tLast set from "
 
-msgid "No old files"
-msgstr "old  ϴ"
+msgid "map() argument"
+msgstr "map() "
+
+msgid "filter() argument"
+msgstr "filter() "
+
+#, c-format
+msgid "E686: Argument of %s must be a List"
+msgstr "E686: %s ڴ List̾ մϴ"
+
+msgid "E928: String required"
+msgstr "E928: String ʿմϴ"
+
+msgid "E808: Number or Float required"
+msgstr "E808: Number Ȥ Float ʿմϴ"
+
+msgid "add() argument"
+msgstr "add() "
+
+msgid "E785: complete() can only be used in Insert mode"
+msgstr "E785: complete() Է 忡   ֽϴ"
+
+#.
+#. * 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 "Ȯ(&O)"
+
+#, c-format
+msgid "E700: Unknown function: %s"
+msgstr "E700: 𸣴 Լ: %s"
+
+msgid "E922: expected a dict"
+msgstr "E922: dict 䱸˴ϴ"
+
+msgid "E923: Second argument of function() must be a list or a dict"
+msgstr "E923: function() ι° ڴ list dict̾ մϴ"
+
+msgid ""
+"&OK\n"
+"&Cancel"
+msgstr ""
+"Ȯ(&O)\n"
+"(&C)"
+
+msgid "called inputrestore() more often than inputsave()"
+msgstr "inputrestore() inputsave()  ҷϴ"
+
+msgid "insert() argument"
+msgstr "insert() "
+
+msgid "E786: Range not allowed"
+msgstr "E786:   ʽϴ"
+
+msgid "E916: not a valid job"
+msgstr "E916:  job ƴմϴ"
+
+msgid "E701: Invalid type for len()"
+msgstr "E701: len() ߸ "
+
+#, c-format
+msgid "E798: ID is reserved for \":match\": %ld"
+msgstr "E798: ID \":match\" : %ld"
+
+msgid "E726: Stride is zero"
+msgstr "E726: Stride 0"
+
+msgid "E727: Start past end"
+msgstr "E727: ġ  ħ"
+
+msgid "<empty>"
+msgstr "<>"
+
+msgid "E240: No connection to the X server"
+msgstr "E240: X  Ǿ  ʽϴ"
+
+#, c-format
+msgid "E241: Unable to send to %s"
+msgstr "E241: %s()   ϴ"
+
+msgid "E277: Unable to read a server reply"
+msgstr "E277:     ϴ"
+
+msgid "E941: already started a server"
+msgstr "E941:  ̹ ۵Ǿϴ"
+
+msgid "E942: +clientserver feature not available"
+msgstr "E942: +clientserver  Ե ʾҽϴ"
+
+msgid "remove() argument"
+msgstr "remove() "
+
+msgid "E655: Too many symbolic links (cycle?)"
+msgstr "E655: ʹ  ɺ ũ (ݺȯ?)"
+
+msgid "reverse() argument"
+msgstr "reverse() "
+
+msgid "E258: Unable to send to client"
+msgstr "E258: Ŭ̾Ʈ   ϴ"
+
+#, c-format
+msgid "E927: Invalid action: '%s'"
+msgstr "E927:  : '%s'"
+
+msgid "sort() argument"
+msgstr "sort() "
+
+msgid "uniq() argument"
+msgstr "uniq() "
+
+msgid "E702: Sort compare function failed"
+msgstr "E702:    ߽ϴ"
+
+msgid "E882: Uniq compare function failed"
+msgstr "E882: Uniq  Լ Ͽϴ"
+
+msgid "(Invalid)"
+msgstr "()"
+
+#, c-format
+msgid "E935: invalid submatch number: %d"
+msgstr "E935:  submatch number: %d"
+
+msgid "E677: Error writing temp file"
+msgstr "E677: ӽ   "
+
+msgid "E921: Invalid callback argument"
+msgstr "E921:  ݹ "
 
 #, c-format
 msgid "<%s>%s%s  %d,  Hex %02x,  Octal %03o"
@@ -828,6 +857,10 @@ msgid "E137: Viminfo file is not writabl
 msgstr "E137: Viminfo    ϴ: %s"
 
 #, c-format
+msgid "E929: Too many viminfo temp files, like %s!"
+msgstr "E929: ʹ  viminfo ӽ ϵ,  %s!"
+
+#, c-format
 msgid "E138: Can't write viminfo file %s!"
 msgstr "E138: Viminfo  %s()   ϴ!"
 
@@ -835,6 +868,10 @@ msgstr "E138: Viminfo  %s()   ϴ!"
 msgid "Writing viminfo file \"%s\""
 msgstr "Viminfo  \"%s\"()  "
 
+#, c-format
+msgid "E886: Can't rename viminfo file to %s!"
+msgstr "E886: viminfo ϸ %s()   ϴ!"
+
 #. Write the info:
 #, c-format
 msgid "# This viminfo file was generated by Vim %s.\n"
@@ -853,6 +890,11 @@ msgstr "#   Ǿ  'encoding' \n"
 msgid "Illegal starting char"
 msgstr "̻  "
 
+#~ msgid ""
+#~ "\n"
+#~ "# Bar lines, copied verbatim:\n"
+#~ msgstr ""
+
 msgid "Save As"
 msgstr "ٸ ̸ "
 
@@ -947,8 +989,9 @@ msgstr "  ٿ"
 msgid " on %ld lines"
 msgstr " %ld ٿ"
 
-msgid "E147: Cannot do :global recursive"
-msgstr "E147: :global  ȣ   ϴ"
+#. will increment global_busy to break out of the loop
+msgid "E147: Cannot do :global recursive with a range"
+msgstr "E147: :global   ȣ   ϴ"
 
 msgid "E148: Regular expression missing from global"
 msgstr "E148: global ǥ ϴ"
@@ -957,6 +1000,10 @@ msgstr "E148: global ǥ ϴ"
 msgid "Pattern found in every line: %s"
 msgstr " ٿ  ãҽϴ: %s"
 
+#, c-format
+msgid "Pattern not found: %s"
+msgstr " ã  : %s"
+
 msgid ""
 "\n"
 "# Last Substitute String:\n"
@@ -982,8 +1029,8 @@ msgid "Sorry, help file \"%s\" not found
 msgstr "̾մϴ,   \"%s\"() ã  ϴ"
 
 #, c-format
-msgid "E150: Not a directory: %s"
-msgstr "E150: 丮 ƴ: %s"
+msgid "E151: No match: %s"
+msgstr "E151:  : %s"
 
 #, c-format
 msgid "E152: Cannot open %s for writing"
@@ -1002,6 +1049,10 @@ msgid "E154: Duplicate tag \"%s\" in fil
 msgstr "E154: \"%s\" ±װ %s/%s Ͽ ߺǾϴ"
 
 #, c-format
+msgid "E150: Not a directory: %s"
+msgstr "E150: 丮 ƴ: %s"
+
+#, c-format
 msgid "E160: Unknown sign command: %s"
 msgstr "E160: 𸣴 sign : %s"
 
@@ -1026,10 +1077,17 @@ msgstr "E159: sign ȣ ϴ"
 msgid "E158: Invalid buffer name: %s"
 msgstr "E158: ߸  ̸: %s"
 
+msgid "E934: Cannot jump to a buffer that does not have a name"
+msgstr "E934: ̸ ۷δ   ϴ"
+
 #, c-format
 msgid "E157: Invalid sign ID: %ld"
 msgstr "E157: ߸ sign ID: %ld"
 
+#, c-format
+msgid "E885: Not possible to change sign %s"
+msgstr "E885: sign %s() ٲ  ϴ"
+
 msgid " (NOT FOUND)"
 msgstr " ( ã)"
 
@@ -1039,6 +1097,9 @@ msgstr " ( )"
 msgid "[Deleted]"
 msgstr "[ϴ]"
 
+msgid "No old files"
+msgstr "old  ϴ"
+
 msgid "Entering Debug mode.  Type \"cont\" to continue."
 msgstr " · .  Ϸ \"cont\" ԷϽʽÿ."
 
@@ -1050,6 +1111,13 @@ msgstr "%ld : %s"
 msgid "cmd: %s"
 msgstr ": %s"
 
+msgid "frame is zero"
+msgstr " 0"
+
+#, c-format
+msgid "frame at highest level: %d"
+msgstr "   ܰ: %d"
+
 #, c-format
 msgid "Breakpoint in \"%s%s\" line %ld"
 msgstr ": \"%s%s\" %ld "
@@ -1104,8 +1172,16 @@ msgid "Searching for \"%s\""
 msgstr "\"%s\"() ã "
 
 #, c-format
-msgid "not found in 'runtimepath': \"%s\""
-msgstr "'runtimepath' ã  : \"%s\""
+msgid "not found in '%s': \"%s\""
+msgstr "'%s' ã  : \"%s\""
+
+#, c-format
+msgid "W20: Required python version 2.x not supported, ignoring file: %s"
+msgstr "W20: 䱸Ǵ ̼  2.x  ,  : %s"
+
+#, c-format
+msgid "W21: Required python version 3.x not supported, ignoring file: %s"
+msgstr "W21: 䱸Ǵ ̼  3.x  ,  : %s"
 
 msgid "Source Vim script"
 msgstr " ũƮ ε"
@@ -1134,8 +1210,12 @@ msgstr "%ld : \"%s\" ҷ̴ "
 msgid "finished sourcing %s"
 msgstr "%s ҷ̱ "
 
-#~ msgid "modeline"
-#~ msgstr ""
+#, c-format
+msgid "continuing in %s"
+msgstr "%s "
+
+msgid "modeline"
+msgstr "modeline"
 
 msgid "--cmd argument"
 msgstr "--cmd "
@@ -1200,6 +1280,9 @@ msgstr "ݴ  ־ϴ, "
 msgid "E494: Use w or w>>"
 msgstr "E494: w w>> Ͻʽÿ"
 
+msgid "E943: Command table needs to be updated, run 'make cmdidxs'"
+msgstr "E943:  ̺  ʿ, 'make cmdidxs' ϼ"
+
 msgid "E319: Sorry, the command is not available in this version"
 msgstr "E319: ̾մϴ,    ǿ   ϴ"
 
@@ -1225,10 +1308,10 @@ msgstr "E174:  ̹ մϴ: ٲٷ ! ϼ"
 
 msgid ""
 "\n"
-"    Name        Args Range Complete  Definition"
+"    Name        Args       Address   Complete  Definition"
 msgstr ""
 "\n"
-"    ̸           ϼ      "
+"    ̸               ּ      ϼ      "
 
 msgid "No user-defined commands found"
 msgstr "   ã  ϴ"
@@ -1248,6 +1331,9 @@ msgstr "E178: ߸ ⺻ īƮ "
 msgid "E179: argument required for -complete"
 msgstr "E179: -complete ڰ ʿմϴ"
 
+msgid "E179: argument required for -addr"
+msgstr "E179: -addr ڰ ʿմϴ"
+
 #, c-format
 msgid "E181: Invalid attribute: %s"
 msgstr "E181: ߸ Ӽ: %s"
@@ -1266,6 +1352,10 @@ msgid "E184: No such user-defined comman
 msgstr "E184: ׷    : %s"
 
 #, c-format
+msgid "E180: Invalid address type value: %s"
+msgstr "E180: ߸ ּ  : %s"
+
+#, c-format
 msgid "E180: Invalid complete value: %s"
 msgstr "E180: ߸  : %s"
 
@@ -1279,7 +1369,7 @@ msgid "unknown"
 msgstr ""
 
 #, c-format
-msgid "E185: Cannot find color scheme %s"
+msgid "E185: Cannot find color scheme '%s'"
 msgstr "E185:  Ŵ %s() ã  ϴ"
 
 msgid "Greetings, Vim user!"
@@ -1326,6 +1416,9 @@ msgstr "E188:  ÷  â ġ    ʾҽϴ"
 msgid "E466: :winpos requires two number arguments"
 msgstr "E466: :winpos ΰ ڰ ʿմϴ"
 
+msgid "E930: Cannot use :redir inside execute()"
+msgstr "E930: execute()  :redir   ϴ"
+
 msgid "Save Redirection"
 msgstr "𷺼 "
 
@@ -1522,7 +1615,7 @@ msgstr ""
 "# %s 丮 (ͺ   ):\n"
 
 msgid "Command Line"
-msgstr " "
+msgstr " "
 
 msgid "Search String"
 msgstr "ã ڿ"
@@ -1531,7 +1624,10 @@ msgid "Expression"
 msgstr "ǥ"
 
 msgid "Input Line"
-msgstr "Է "
+msgstr "Է "
+
+msgid "Debug Line"
+msgstr " "
 
 msgid "E198: cmd_pchar beyond the command length"
 msgstr "E198: cmd_pchar  ̸ ϴ"
@@ -1594,9 +1690,6 @@ msgstr "[]"
 #~ msgid "[character special]"
 #~ msgstr ""
 
-msgid "[RO]"
-msgstr "[б ]"
-
 msgid "[CR missing]"
 msgstr "[CR ]"
 
@@ -1609,9 +1702,6 @@ msgstr "[ȯ  ˴ϴ]"
 msgid "[converted]"
 msgstr "[ȯ Ǿϴ]"
 
-msgid "[crypted]"
-msgstr "[ȣȭ Ǿϴ]"
-
 #, c-format
 msgid "[CONVERSION ERROR in line %ld]"
 msgstr "[%ld ٿ ȯ ]"
@@ -1632,9 +1722,6 @@ msgstr "'charconvert'  ȯ ߽ϴ"
 msgid "can't read output of 'charconvert'"
 msgstr "'charconvert' °   ϴ"
 
-msgid "E821: File is encrypted with unknown method"
-msgstr "E821:  𸣴  ȣȭǾ ֽϴ"
-
 msgid "E676: No matching autocommands for acwrite buffer"
 msgstr "E676: acwrite ۿ  autocommand ã  ϴ"
 
@@ -1783,11 +1870,6 @@ msgstr "1 "
 msgid "%lld characters"
 msgstr "%lld "
 
-#. Explicit typecast avoids warning on Mac OS X 10.6
-#, c-format
-msgid "%ld characters"
-msgstr "%ld "
-
 msgid "[noeol]"
 msgstr "[noeol]"
 
@@ -1880,6 +1962,12 @@ msgstr "autocommand ڵ: %s <buffer=%d>"
 msgid "E367: No such group: \"%s\""
 msgstr "E367: ̷ ׷ : \"%s\""
 
+msgid "E936: Cannot delete the current group"
+msgstr "E936:  ׷   ϴ"
+
+msgid "W19: Deleting augroup that is still in use"
+msgstr "W19:  augroup Ϸ մϴ"
+
 #, c-format
 msgid "E215: Illegal character after *: %s"
 msgstr "E215: * ڿ ̻ : %s"
@@ -1940,10 +2028,6 @@ msgstr "E350:  'foldmethod' ⸦   ϴ"
 msgid "E351: Cannot delete fold with current 'foldmethod'"
 msgstr "E351:  'foldmethod' ⸦   ϴ"
 
-#, c-format
-msgid "+--%3ld lines folded "
-msgstr "+--%3ld   "
-
 msgid "E222: Add to read buffer"
 msgstr "E222:  ۿ ϱ"
 
@@ -1975,6 +2059,12 @@ msgstr " ã  ϴ"
 msgid "E228: makemap: Illegal mode"
 msgstr "E228: makemap: ̻ "
 
+msgid "E851: Failed to create a new process for the GUI"
+msgstr "E851: ο GUI μ   ϴ"
+
+msgid "E852: The child process failed to start the GUI"
+msgstr "E852: ڽ μ GUI  ߽ϴ"
+
 msgid "E229: Cannot start the GUI"
 msgstr "E229: GUI   ϴ"
 
@@ -2029,6 +2119,18 @@ msgstr " ȭ"
 msgid "E232: Cannot create BalloonEval with both message and callback"
 msgstr "E232: ޽ ݹ θ ؼ BalloonEval   ϴ"
 
+msgid "_Cancel"
+msgstr "(_C)"
+
+msgid "_Save"
+msgstr "(_S)"
+
+msgid "_Open"
+msgstr "(_O)"
+
+msgid "_OK"
+msgstr "Ȯ(_O)"
+
 msgid ""
 "&Yes\n"
 "&No\n"
@@ -2038,6 +2140,12 @@ msgstr ""
 "ƴϿ(&N)\n"
 "(&C)"
 
+msgid "Yes"
+msgstr ""
+
+msgid "No"
+msgstr "ƴϿ"
+
 msgid "Input _Methods"
 msgstr "Է (_M)"
 
@@ -2071,23 +2179,23 @@ msgstr ""
 msgid "Down"
 msgstr "Ʒ"
 
-#. 'Find Next' button
 msgid "Find Next"
 msgstr " ã"
 
-#. 'Replace' button
 msgid "Replace"
 msgstr "ٲٱ"
 
-#. 'Replace All' button
 msgid "Replace All"
 msgstr " ٲٱ"
 
+msgid "_Close"
+msgstr "ݱ(_C)"
+
 msgid "Vim: Received \"die\" request from session manager\n"
 msgstr ":  ڷκ \"die\" û ޾ҽϴ\n"
 
-msgid "Close"
-msgstr "ݱ"
+msgid "Close tab"
+msgstr " ݱ"
 
 msgid "New tab"
 msgstr " "
@@ -2134,20 +2242,6 @@ msgstr " ٲٱ(&A)"
 msgid "&Undo"
 msgstr "(&U)"
 
-#, c-format
-msgid "E671: Cannot find window title \"%s\""
-msgstr "E671: â  \"%s\"() ã  ϴ"
-
-#, c-format
-msgid "E243: Argument not supported: \"-%s\"; Use the OLE version."
-msgstr "E243:  ʴ : \"-%s\": OLE  Ͻʽÿ."
-
-msgid "E672: Unable to open window inside MDI application"
-msgstr "E672: MDI α׷ ȿ â   ϴ"
-
-msgid "Close tab"
-msgstr " ݱ"
-
 msgid "Open tab..."
 msgstr " ..."
 
@@ -2165,6 +2259,17 @@ msgstr " ʵ"
 msgid "Directory\t*.nothing\n"
 msgstr "丮\t*.nothing\n"
 
+#, c-format
+msgid "E671: Cannot find window title \"%s\""
+msgstr "E671: â  \"%s\"() ã  ϴ"
+
+#, c-format
+msgid "E243: Argument not supported: \"-%s\"; Use the OLE version."
+msgstr "E243:  ʴ : \"-%s\": OLE  Ͻʽÿ."
+
+msgid "E672: Unable to open window inside MDI application"
+msgstr "E672: MDI α׷ ȿ â   ϴ"
+
 msgid "Vim E458: Cannot allocate colormap entry, some colors may be incorrect"
 msgstr ""
 " E458:  Ʈ Ҵ  ϴ,   ߸  ֽϴ"
@@ -2182,32 +2287,28 @@ msgid "Font '%s' is not fixed-width"
 msgstr "۲ '%s'() ̰ ƴմϴ"
 
 #, c-format
-msgid "E253: Fontset name: %s\n"
-msgstr "E253: ۲ü ̸: %s\n"
-
-#, c-format
-msgid "Font0: %s\n"
-msgstr "۲0: %s\n"
-
-#, c-format
-msgid "Font1: %s\n"
-msgstr "۲1: %s\n"
-
-#, c-format
-msgid "Font%ld width is not twice that of font0\n"
-msgstr "۲%ld ʺ ۲0 ι谡 ƴմϴ\n"
-
-#, c-format
-msgid "Font0 width: %ld\n"
-msgstr "۲0 ʺ: %ld\n"
-
-#, c-format
-msgid ""
-"Font1 width: %ld\n"
-"\n"
-msgstr ""
-"۲1 ʺ: %ld\n"
-"\n"
+msgid "E253: Fontset name: %s"
+msgstr "E253: ۲ü ̸: %s"
+
+#, c-format
+msgid "Font0: %s"
+msgstr "۲0: %s"
+
+#, c-format
+msgid "Font1: %s"
+msgstr "۲1: %s"
+
+#, c-format
+msgid "Font%ld width is not twice that of font0"
+msgstr "۲%ld ʺ ۲0 ι谡 ƴմϴ"
+
+#, c-format
+msgid "Font0 width: %ld"
+msgstr "۲0 ʺ: %ld"
+
+#, c-format
+msgid "Font1 width: %ld"
+msgstr "۲1 ʺ: %ld"
 
 #~ msgid "Invalid font specification"
 #~ msgstr ""
@@ -2395,6 +2496,9 @@ msgstr "E566: cscope    ϴ"
 msgid "E622: Could not fork for cscope"
 msgstr "E622: cscope fork  ϴ"
 
+msgid "cs_create_connection setpgid failed"
+msgstr "cs_create_connection setpgid ߽ϴ"
+
 msgid "cs_create_connection exec failed"
 msgstr "cs_create_connection  ߽ϴ"
 
@@ -2427,6 +2531,7 @@ msgstr "%-5s: %s%*s (: %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"
@@ -2437,13 +2542,14 @@ msgid ""
 "       t: Find this text string\n"
 msgstr ""
 "\n"
+"       a:  ȣ  Ҵ ã\n"
 "       c:  Լ θ Լ ã\n"
 "       d:  Լ  ҷ Լ ã\n"
 "       e:  egrep  ã\n"
 "       f:   ã\n"
 "       g:   ã\n"
-"       i:   ϴ ϵ ã\n"
-"       s:  C ɺ ã\n"
+"       i:   #includeϴ ϵ ã\n"
+"       s:  C ȣ ã\n"
 "       t:  ڿ ã\n"
 
 #, c-format
@@ -2495,8 +2601,8 @@ msgstr "cscope  ϴ\n"
 msgid " # pid    database name                       prepend path\n"
 msgstr " # pid    ͺ̽ ̸                   prepend path\n"
 
-#~ msgid "Lua library cannot be loaded."
-#~ msgstr ""
+msgid "Lua library cannot be loaded."
+msgstr "Lua ̺귯 ε  ϴ."
 
 msgid "cannot save undo information"
 msgstr "undo    ϴ"
@@ -2508,14 +2614,21 @@ msgstr ""
 "E815: ̾մϴ,     ϴ, MzScheme ̺귯 ε "
 " ϴ."
 
+msgid ""
+"E895: Sorry, this command is disabled, the MzScheme's racket/base module "
+"could not be loaded."
+msgstr ""
+"E895: ̾մϴ,     ϴ, MzScheme racket/base "
+" ε  ϴ."
+
 msgid "invalid expression"
 msgstr "߸ ǥ"
 
 msgid "expressions disabled at compile time"
 msgstr "ǥ  ʵ  Ǿϴ"
 
-#~ msgid "hidden option"
-#~ msgstr ""
+msgid "hidden option"
+msgstr " ɼ"
 
 msgid "unknown option"
 msgstr "𸣴 ɼ"
@@ -2538,6 +2651,9 @@ msgstr "   ϴ"
 msgid "string cannot contain newlines"
 msgstr "ڿ newline   ϴ"
 
+#~ msgid "error converting Scheme values to Vim"
+#~ msgstr ""
+
 msgid "Vim error: ~a"
 msgstr "Vim : ~a"
 
@@ -2566,27 +2682,21 @@ msgstr ""
 "E263: ̾մϴ,     ϴ, ̽ ̺귯 ε "
 " ϴ."
 
+msgid ""
+"E887: Sorry, this command is disabled, the Python's site module could not be "
+"loaded."
+msgstr ""
+"E887: ̾մϴ,     ϴ, ̽ Ʈ  "
+"ε  ϴ."
+
 msgid "E659: Cannot invoke Python recursively"
 msgstr "E659: Python ȣ  ϴ"
 
-msgid "can't delete OutputObject attributes"
-msgstr "OutputObject Ӽ   ϴ"
-
-msgid "softspace must be an integer"
-msgstr "softspace ߸ մϴ"
-
-msgid "invalid attribute"
-msgstr "߸ Ӽ"
-
-#, c-format
-msgid "<buffer object (deleted) at %p>"
-msgstr "<%p  ü ()>"
-
 msgid "E837: This Vim cannot execute :py3 after using :python"
 msgstr "E837:  Vim :python  Ŀ :py3   ϴ"
 
-#~ msgid "E265: $_ must be an instance of String"
-#~ msgstr ""
+msgid "E265: $_ must be an instance of String"
+msgstr "E265: $_ String νϽ̾ մϴ"
 
 msgid ""
 "E266: Sorry, this command is disabled, the Ruby library could not be loaded."
@@ -2616,95 +2726,6 @@ msgstr "E272: óʵ "
 msgid "E273: unknown longjmp status %d"
 msgstr "E273: 𸣴 longjmp  %d"
 
-msgid "Toggle implementation/definition"
-msgstr " /"
-
-msgid "Show base class of"
-msgstr "... ⺻ Ŭ ֱ"
-
-#~ msgid "Show overridden member function"
-#~ msgstr ""
-
-#~ msgid "Retrieve from file"
-#~ msgstr ""
-
-#~ msgid "Retrieve from project"
-#~ msgstr ""
-
-#~ msgid "Retrieve from all projects"
-#~ msgstr ""
-
-#~ msgid "Retrieve"
-#~ msgstr ""
-
-#~ msgid "Show source of"
-#~ msgstr ""
-
-#~ msgid "Find symbol"
-#~ msgstr ""
-
-#~ msgid "Browse class"
-#~ msgstr ""
-
-#~ msgid "Show class in hierarchy"
-#~ msgstr ""
-
-#~ msgid "Show class in restricted hierarchy"
-#~ msgstr ""
-
-#~ msgid "Xref refers to"
-#~ msgstr ""
-
-#~ msgid "Xref referred by"
-#~ msgstr ""
-
-#~ msgid "Xref has a"
-#~ msgstr ""
-
-#~ msgid "Xref used by"
-#~ msgstr ""
-
-#~ msgid "Show docu of"
-#~ msgstr ""
-
-#~ msgid "Generate docu for"
-#~ msgstr ""
-
-msgid ""
-"Cannot connect to SNiFF+. Check environment (sniffemacs must be found in "
-"$PATH).\n"
-msgstr ""
-"SNiFF+   ϴ. ȯ ȮϽʽÿ (sniffemacs $PATH ã"
-" մϴ).\n"
-
-msgid "E274: Sniff: Error during read. Disconnected"
-msgstr "E274: Sniff: д  . "
-
-msgid "SNiFF+ is currently "
-msgstr "SNiFF+ is currently "
-
-msgid "not "
-msgstr "not "
-
-msgid "connected"
-msgstr "connected"
-
-#, c-format
-msgid "E275: Unknown SNiFF+ request: %s"
-msgstr "E275: 𸣴 SNiFF+ û: %s"
-
-msgid "E276: Error connecting to SNiFF+"
-msgstr "E276: SNiFF+  "
-
-msgid "E278: SNiFF+ not connected"
-msgstr "E278: SniFF+  ʾҽϴ"
-
-msgid "E279: Not a SNiFF+ buffer"
-msgstr "E279: SniFF+ ۰ ƴմϴ"
-
-msgid "Sniff: Error during write. Disconnected"
-msgstr "Sniff:   . ϴ"
-
 msgid "invalid buffer number"
 msgstr "߸  ȣ"
 
@@ -2767,12 +2788,6 @@ msgstr ""
 "E571: ̾մϴ,     ϴ, Tcl ̺귯 ε  "
 "ϴ."
 
-msgid ""
-"E281: TCL ERROR: exit code is not int!? Please report this to vim-dev@vim.org"
-msgstr ""
-"E281: TCL :  ڵ尡  ƴѰ!?   vim-dev@vim.org "
-"ֽʽÿ"
-
 #, c-format
 msgid "E572: exit code %d"
 msgstr "E572:  ڵ %d"
@@ -2793,6 +2808,18 @@ msgstr "E573: ߸  id : %s"
 msgid "E251: VIM instance registry property is badly formed.  Deleted!"
 msgstr "E251:  νϽ Ʈ Ӽ ߸Ǿ ֽϴ. ϴ!"
 
+#, c-format
+msgid "E938: Duplicate key in JSON: \"%s\""
+msgstr "E938: JSON ߺ Ű: \"%s\""
+
+#, c-format
+msgid "E696: Missing comma in List: %s"
+msgstr "E696: List ޸ : %s"
+
+#, c-format
+msgid "E697: Missing end of List ']': %s"
+msgstr "E697: List  ']' : %s"
+
 msgid "Unknown option argument"
 msgstr "𸣴 ɼ "
 
@@ -2818,12 +2845,12 @@ msgstr "%d  ġ\n"
 msgid "netbeans is not supported with this GUI\n"
 msgstr " GUI netbeans  ʽϴ\n"
 
+msgid "'-nb' cannot be used: not enabled at compile time\n"
+msgstr "'-nb'   :   Ե \n"
+
 msgid "This Vim was not compiled with the diff feature."
 msgstr "  diff    Ǿϴ."
 
-msgid "'-nb' cannot be used: not enabled at compile time\n"
-msgstr "'-nb'   :   Ե \n"
-
 msgid "Attempt to open script file again: \""
 msgstr "ũƮ  ٽ  õ: \""
 
@@ -2836,6 +2863,9 @@ msgstr "ũƮ    : \""
 msgid "Vim: Error: Failure to start gvim from NetBeans\n"
 msgstr "Vim: : NetBeans gvim  \n"
 
+msgid "Vim: Error: This version of Vim does not run in a Cygwin terminal\n"
+msgstr "Vim: :    Cygwin ͹̳ο   ϴ\n"
+
 msgid "Vim: Warning: Output is not to a terminal\n"
 msgstr ": : ͹̳η   ϴ\n"
 
@@ -2921,25 +2951,28 @@ msgid "-f  or  --nofork\tForeground: Don
 msgstr "-f Ȥ --nofork\t׶: GUI   fork  "
 
 msgid "-v\t\t\tVi mode (like \"vi\")"
-msgstr "-v\t\t\tVi  (\"vi\" )"
+msgstr "-v\t\t\tVi  (\"vi\" )"
 
 msgid "-e\t\t\tEx mode (like \"ex\")"
-msgstr "-e\t\t\tEx  (\"ex\" )"
+msgstr "-e\t\t\tEx  (\"ex\" )"
+
+msgid "-E\t\t\tImproved Ex mode"
+msgstr "-E\t\t\t Ex "
 
 msgid "-s\t\t\tSilent (batch) mode (only for \"ex\")"
-msgstr "-s\t\t\t (ġ)  (\"ex\")"
+msgstr "-s\t\t\t (ġ)  (\"ex\")"
 
 msgid "-d\t\t\tDiff mode (like \"vimdiff\")"
-msgstr "-d\t\t\tDiff  (\"vimdiff\" )"
+msgstr "-d\t\t\tDiff  (\"vimdiff\" )"
 
 msgid "-y\t\t\tEasy mode (like \"evim\", modeless)"
-msgstr "-y\t\t\t  (\"evim\" , modeless)"
+msgstr "-y\t\t\t  (\"evim\" , modeless)"
 
 msgid "-R\t\t\tReadonly mode (like \"view\")"
-msgstr "-R\t\t\tб   (\"view\" )"
+msgstr "-R\t\t\tб   (\"view\" )"
 
 msgid "-Z\t\t\tRestricted mode (like \"rvim\")"
-msgstr "-Z\t\t\tѵ  (\"rvim\" )"
+msgstr "-Z\t\t\tѵ  (\"rvim\" )"
 
 msgid "-m\t\t\tModifications (writing files) not allowed"
 msgstr "-m\t\t\t( )  "
@@ -2959,11 +2992,11 @@ msgstr "-C\t\t\tVi ȣȯ: 'compatible'"
 msgid "-N\t\t\tNot fully Vi compatible: 'nocompatible'"
 msgstr "-N\t\t\tVi ȣȯ : 'nocompatible'"
 
-#~ msgid "-V[N][fname]\t\tBe verbose [level N] [log messages to fname]"
-#~ msgstr ""
+msgid "-V[N][fname]\t\tBe verbose [level N] [log messages to fname]"
+msgstr "-V[N][fname]\t\tBe verbose [level N] [fname ޽ ]"
 
 msgid "-D\t\t\tDebugging mode"
-msgstr "-D\t\t\t "
+msgstr "-D\t\t\t "
 
 msgid "-n\t\t\tNo swap file, use memory only"
 msgstr "-n\t\t\t   ޸𸮸 "
@@ -2995,6 +3028,12 @@ msgstr "-F\t\t\tFarsi  "
 msgid "-T <terminal>\tSet terminal type to <terminal>"
 msgstr "-T <terminal>\t͹̳  <terminal> "
 
+msgid "--not-a-term\t\tSkip warning for input/output not being a terminal"
+msgstr "--not-a-term\t\t͹̳ο   ٴ  "
+
+msgid "--ttyfail\t\tExit if input or output is not a terminal"
+msgstr "--ttyfail\t\t͹̳ο     "
+
 msgid "-u <vimrc>\t\tUse <vimrc> instead of any .vimrc"
 msgstr "-u <vimrc>\t\t.vimrc  <vimrc> "
 
@@ -3155,19 +3194,6 @@ msgstr "-xrm <resource>\tõ ҽ "
 
 msgid ""
 "\n"
-"Arguments recognised by gvim (RISC OS version):\n"
-msgstr ""
-"\n"
-"gvim ˰ִ  (RISC OS ):\n"
-
-msgid "--columns <number>\tInitial width of window in columns"
-msgstr "--columns <>\tĭ â ʱ ʺ"
-
-msgid "--rows <number>\tInitial height of window in rows"
-msgstr "--rows <>\tٿ â ʱ "
-
-msgid ""
-"\n"
 "Arguments recognised by gvim (GTK+ version):\n"
 msgstr ""
 "\n"
@@ -3182,6 +3208,9 @@ msgstr "--role <role>\t â     "
 msgid "--socketid <xid>\tOpen Vim inside another GTK widget"
 msgstr "--socketid <xid>\t ٸ GTK  ȿ "
 
+msgid "--echo-wid\t\tMake gvim echo the Window ID on stdout"
+msgstr "--echo-wid\t\tǥ¿ gvim Window ID ǥ"
+
 msgid "-P <parent title>\tOpen Vim inside parent application"
 msgstr "-P <parent title>\tVim θ  α׷  "
 
@@ -3373,8 +3402,7 @@ msgstr "  ǻͿ   ϴ.\n"
 #, c-format
 msgid ""
 "E833: %s is encrypted and this version of Vim does not support encryption"
-msgstr ""
-"E833: %s() ȣȭǾ ִ ,  Vim ȣȭ  ʽϴ"
+msgstr "E833: %s() ȣȭǾ ִ ,  Vim ȣȭ  ʽϴ"
 
 #~ msgid " has been damaged (page size is smaller than minimum value).\n"
 #~ msgstr ""
@@ -3666,24 +3694,17 @@ msgstr "      NEWER than swap file!\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) ٸ α׷   ġ ִ  ֽϴ.\n"
-"     ׷ٸ     α׷ ġ\n"
-"    ʵ Ͻñ ٶϴ.\n"
-
-msgid "    Quit, or continue with caution.\n"
-msgstr "    ų  Ͻ÷ Ͻʽÿ.\n"
-
-msgid ""
-"\n"
-"(2) An edit session for this file crashed.\n"
-msgstr ""
-"\n"
-"(2)  ġٰ ׾ϴ.\n"
+"     ׷ٸ     α׷ ġ ʵ\n"
+"    Ͻñ ٶϴ. ϼ. Ͻ÷ ϼ.\n"
+
+msgid "(2) An edit session for this file crashed.\n"
+msgstr "(2)   ġٰ ׾ϴ.\n"
 
 msgid "    If this is the case, use \":recover\" or \"vim -r "
 msgstr "     ׷ٸ \":recover\" Ȥ \"vim -r "
@@ -3905,13 +3926,6 @@ msgstr " (ߴܵǾϴ)"
 msgid "Beep!"
 msgstr "!"
 
-msgid "Vim: preserving files...\n"
-msgstr ":  ...\n"
-
-#. close all memfiles, without deleting
-msgid "Vim: Finished.\n"
-msgstr ": ϴ.\n"
-
 msgid "ERROR: "
 msgstr ": "
 
@@ -3957,14 +3971,8 @@ msgstr "E548: ڰ ʿմϴ"
 msgid "E549: Illegal percentage"
 msgstr "E549: ̻ "
 
-msgid "Enter encryption key: "
-msgstr "ȣ Ű Է: "
-
-msgid "Enter same key again: "
-msgstr " Ű ٽ Է: "
-
-msgid "Keys don't match!"
-msgstr "Ű  ʽϴ!"
+#~ msgid "E854: path too long for completion"
+#~ msgstr ""
 
 #, c-format
 msgid ""
@@ -3990,19 +3998,10 @@ msgstr "E346: cdpath  ̻ \"%s\" 丮 ã  ϴ"
 msgid "E347: No more file \"%s\" found in path"
 msgstr "E347: path  ̻ \"%s\"  ã  ϴ"
 
-msgid "Cannot connect to Netbeans #2"
-msgstr "Netbeans #2   ϴ"
-
-msgid "Cannot connect to Netbeans"
-msgstr "Netbeans   ϴ"
-
 #, c-format
 msgid "E668: Wrong access mode for NetBeans connection info file: \"%s\""
 msgstr "E668: NetBeans     尡 ߸: \"%s\""
 
-msgid "read from Netbeans socket"
-msgstr "Netbeans Ͽ б"
-
 #, c-format
 msgid "E658: NetBeans connection lost for buffer %ld"
 msgstr "E658:  %ld  NetBeans  ҾȽϴ"
@@ -4013,8 +4012,9 @@ msgstr "E838:  GUI netbeans  ʽϴ"
 msgid "E511: netbeans already connected"
 msgstr "E511: netbeans ̹ Ǿ ֽϴ"
 
-msgid "E505: "
-msgstr "E505: "
+#, c-format
+msgid "E505: %s is read-only (add ! to override)"
+msgstr "E505: %s() б Դϴ ( ! ϱ)"
 
 msgid "E349: No identifier under cursor"
 msgstr "E349: Ŀ ؿ ĺڰ ϴ"
@@ -4043,8 +4043,8 @@ msgstr "E664: changelist ϴ"
 #~ msgid "E663: At end of changelist"
 #~ msgstr ""
 
-msgid "Type  :quit<Enter>  to exit Vim"
-msgstr "VIM ġ  :quit<Enter>  Է"
+msgid "Type  :qa!  and press <Enter> to abandon all changes and exit Vim"
+msgstr ":qa! Է Ŀ <> Ű ø  ϰ  մϴ"
 
 #, c-format
 msgid "1 line %sed 1 time"
@@ -4131,37 +4131,38 @@ msgstr ""
 msgid "E574: Unknown register type %d"
 msgstr "E574: 𸣴   %d"
 
+#~ msgid ""
+#~ "E883: search pattern and expression register may not contain two or more "
+#~ "lines"
+#~ msgstr ""
+
 #, c-format
 msgid "%ld Cols; "
 msgstr "%ld ; "
 
 #, c-format
-msgid "Selected %s%ld of %ld Lines; %ld of %ld Words; %ld of %ld Bytes"
-msgstr "Selected %s%ld of %ld ; %ld of %ld ܾ; %ld of %ld Ʈ"
-
-#, c-format
-msgid ""
-"Selected %s%ld of %ld Lines; %ld of %ld Words; %ld of %ld Chars; %ld of %ld "
-"Bytes"
-msgstr ""
-"Selected %s%ld of %ld ; %ld of %ld ܾ; %ld of %ld ; %ld of %ld "
-"Ʈ"
-
-#, c-format
-msgid "Col %s of %s; Line %ld of %ld; Word %ld of %ld; Byte %ld of %ld"
-msgstr "Col %s of %s;  %ld of %ld; ܾ %ld of %ld; Ʈ %ld of %ld"
-
-#, c-format
-msgid ""
-"Col %s of %s; Line %ld of %ld; Word %ld of %ld; Char %ld of %ld; Byte %ld of "
-"%ld"
-msgstr ""
-"Col %s of %s;  %ld of %ld; ܾ %ld of %ld;  %ld of %ld; Ʈ %ld "
-"of %ld"
-
-#, c-format
-msgid "(+%ld for BOM)"
-msgstr "(+%ld for BOM)"
+#~ msgid "Selected %s%ld of %ld Lines; %lld of %lld Words; %lld of %lld Bytes"
+#~ msgstr ""
+
+#, c-format
+#~ msgid ""
+#~ "Selected %s%ld of %ld Lines; %lld of %lld Words; %lld of %lld Chars; %lld of "
+#~ "%lld Bytes"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "Col %s of %s; Line %ld of %ld; Word %lld of %lld; Byte %lld of %lld"
+#~ msgstr ""
+
+#, c-format
+#~ msgid ""
+#~ "Col %s of %s; Line %ld of %ld; Word %lld of %lld; Char %lld of %lld; Byte "
+#~ "%lld of %lld"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "(+%ld for BOM)"
+#~ msgstr ""
 
 msgid "%<%f%h%m%=Page %N"
 msgstr "%<%f%h%m%= %N"
@@ -4178,6 +4179,9 @@ msgstr "E519:  ʴ ɼԴϴ"
 msgid "E520: Not allowed in a modeline"
 msgstr "E520: ο   ϴ"
 
+msgid "E846: Key code not set"
+msgstr "E846: Ű ڵ尡  ʾҽϴ"
+
 msgid "E521: Number required after ="
 msgstr "E521: = ڿ ڰ ʿմϴ"
 
@@ -4188,6 +4192,10 @@ msgstr "E522: termcap ã  ϴ"
 msgid "E539: Illegal character <%s>"
 msgstr "E539: ̻  <%s>"
 
+#, c-format
+#~ msgid "For option %s"
+#~ msgstr ""
+
 msgid "E529: Cannot set 'term' to empty string"
 msgstr "E529: 'term'  ڿ   ϴ"
 
@@ -4381,9 +4389,6 @@ msgstr "I/O "
 msgid "Message"
 msgstr "޽"
 
-msgid "'columns' is not 80, cannot execute external commands"
-msgstr "'columns' 80 ƴϾ, ܺ    ϴ"
-
 msgid "E237: Printer selection failed"
 msgstr "E237: ͸  ߽ϴ"
 
@@ -4408,20 +4413,13 @@ msgid "E244: Illegal charset name \"%s\"
 msgstr "E244: ߸ ڼ ̸ \"%s\"() ۲ ̸ \"%s\" ֽϴ"
 
 #, c-format
+msgid "E244: Illegal quality name \"%s\" in font name \"%s\""
+msgstr "E244: ߸ Ƽ ̸ \"%s\"() ۲ ̸ \"%s\" ֽϴ"
+
+#, c-format
 msgid "E245: Illegal char '%c' in font name \"%s\""
 msgstr "E245: ߸  '%c'() ۲ ̸ \"%s\" ֽϴ"
 
-msgid "Vim: Double signal, exiting\n"
-msgstr ":  ñ׳  , ϴ\n"
-
-#, c-format
-msgid "Vim: Caught deadly signal %s\n"
-msgstr ": %s ñ׳ ҽϴ\n"
-
-#, c-format
-msgid "Vim: Caught deadly signal\n"
-msgstr ":  ñ׳ ҽϴ\n"
-
 #, c-format
 msgid "Opening the X display took %ld msec"
 msgstr "X ÷̸   %ld msec ɷȽϴ"
@@ -4453,12 +4451,13 @@ msgstr ""
 "\n"
 "Could not set security context for "
 
-msgid ""
-"\n"
-"Cannot execute shell "
-msgstr ""
-"\n"
-"Cannot execute shell "
+#, c-format
+#~ msgid "Could not set security context %s for %s"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "Could not get security context %s for %s. Removing it!"
+#~ msgstr ""
 
 msgid ""
 "\n"
@@ -4490,6 +4489,13 @@ msgstr ""
 
 msgid ""
 "\n"
+"Cannot execute shell "
+msgstr ""
+"\n"
+"Cannot execute shell "
+
+msgid ""
+"\n"
 "Command terminated\n"
 msgstr ""
 "\n"
@@ -4531,10 +4537,6 @@ msgid "Could not fix up function pointer
 msgstr "Լ ͸ DLL ٲ  ϴ!"
 
 #, c-format
-msgid "shell returned %d"
-msgstr " %d() ־ϴ"
-
-#, c-format
 msgid "Vim: Caught %s event\n"
 msgstr ": %s ̺Ʈ ҽϴ\n"
 
@@ -4563,6 +4565,10 @@ msgid "Vim Warning"
 msgstr " "
 
 #, c-format
+msgid "shell returned %d"
+msgstr " %d() ־ϴ"
+
+#, c-format
 msgid "E372: Too many %%%c in format string"
 msgstr "E372:  ڿ %%%c() ʹ ϴ"
 
@@ -4585,6 +4591,7 @@ msgstr "E376:  ڿ ο ߸ %%%c() ֽϴ"
 msgid "E377: Invalid %%%c in format string"
 msgstr "E377:  ڿ ߸ %%%c() ֽϴ"
 
+#. nothing found
 msgid "E378: 'errorformat' contains no pattern"
 msgstr "E378: 'errorformat'  ϵ ϰ  ʽϴ"
 
@@ -4594,6 +4601,15 @@ msgstr "E379: ų  丮 ̸"
 msgid "E553: No more items"
 msgstr "E553:  ̻ ׸ ϴ"
 
+msgid "E924: Current window was closed"
+msgstr "E924:  â ϴ"
+
+msgid "E925: Current quickfix was changed"
+msgstr "E925:  quickfix ٲϴ"
+
+msgid "E926: Current location list was changed"
+msgstr "E926:  location list ٲϴ"
+
 #, c-format
 msgid "(%d of %d)%s%s: "
 msgstr "(%d of %d)%s%s: "
@@ -4601,15 +4617,18 @@ msgstr "(%d of %d)%s%s: "
 msgid " (line deleted)"
 msgstr " ( )"
 
+#, c-format
+#~ msgid "%serror list %d of %d; %d errors "
+#~ msgstr ""
+
 msgid "E380: At bottom of quickfix stack"
 msgstr "E380: Ƚ  ٴԴϴ"
 
 msgid "E381: At top of quickfix stack"
 msgstr "E381: Ƚ  Դϴ"
 
-#, c-format
-msgid "error list %d of %d; %d errors"
-msgstr "error list %d of %d; %d errors"
+#~ msgid "No entries"
+#~ msgstr ""
 
 msgid "E382: Cannot write, 'buftype' option is set"
 msgstr "E382:   , 'buftype' ɼ Ǿ ֽϴ"
@@ -4634,6 +4653,45 @@ msgstr "E777: String̳ List ־ "
 msgid "E369: invalid item in %s%%[]"
 msgstr "E369: %s%%[] ߸ ׸"
 
+#, c-format
+msgid "E769: Missing ] after %s["
+msgstr "E769: %s[ ڿ ] ϴ"
+
+#~ msgid "E944: Reverse range in character class"
+#~ msgstr ""
+
+#~ msgid "E945: Range too large in character class"
+#~ msgstr ""
+
+#, c-format
+msgid "E53: Unmatched %s%%("
+msgstr "E53:  ʴ %s%%("
+
+#, c-format
+msgid "E54: Unmatched %s("
+msgstr "E54:  ʴ %s("
+
+#, c-format
+msgid "E55: Unmatched %s)"
+msgstr "E55:  ʴ %s)"
+
+msgid "E66: \\z( not allowed here"
+msgstr "E66: \\z( ⿡  ʽϴ"
+
+msgid "E67: \\z1 et al. not allowed here"
+msgstr "E67: \\z1  ⿡  ʽϴ"
+
+#, c-format
+msgid "E69: Missing ] after %s%%["
+msgstr "E69: %s%%[ ڿ ] ϴ"
+
+#, c-format
+msgid "E70: Empty %s%%[]"
+msgstr "E70:  %s%%[]"
+
+msgid "E65: Illegal back reference"
+msgstr "E65: ̻  "
+
 msgid "E339: Pattern too long"
 msgstr "E339:  ʹ ϴ"
 
@@ -4648,18 +4706,6 @@ msgid "E52: Unmatched \\z("
 msgstr "E52:  ʴ \\z("
 
 #, c-format
-msgid "E53: Unmatched %s%%("
-msgstr "E53:  ʴ %s%%("
-
-#, c-format
-msgid "E54: Unmatched %s("
-msgstr "E54:  ʴ %s("
-
-#, c-format
-msgid "E55: Unmatched %s)"
-msgstr "E55:  ʴ %s)"
-
-#, c-format
 msgid "E59: invalid character after %s@"
 msgstr "E59: %s@ ڿ ߸ "
 
@@ -4682,27 +4728,10 @@ msgstr "E63: \\_   "
 msgid "E64: %s%c follows nothing"
 msgstr "E64: %s%c ڿ ƹ͵ ϴ"
 
-msgid "E65: Illegal back reference"
-msgstr "E65: ̻  "
-
-msgid "E66: \\z( not allowed here"
-msgstr "E66: \\z( ⿡  ʽϴ"
-
-msgid "E67: \\z1 et al. not allowed here"
-msgstr "E67: \\z1  ⿡  ʽϴ"
-
 msgid "E68: Invalid character after \\z"
 msgstr "E68: \\z ڿ ̻ "
 
 #, c-format
-msgid "E69: Missing ] after %s%%["
-msgstr "E69: %s%%[ ڿ ] ϴ"
-
-#, c-format
-msgid "E70: Empty %s%%[]"
-msgstr "E70:  %s%%[]"
-
-#, c-format
 msgid "E678: Invalid character after %s%%[dxouU]"
 msgstr "E678: %s%%[dxouU] ڿ ̻ "
 
@@ -4711,16 +4740,93 @@ msgid "E71: Invalid character after %s%%
 msgstr "E71: %s%% ڿ ̻ "
 
 #, c-format
-msgid "E769: Missing ] after %s["
-msgstr "E769: %s[ ڿ ] ϴ"
-
-#, c-format
 msgid "E554: Syntax error in %s{...}"
 msgstr "E554: %s{...}  "
 
 msgid "External submatches:\n"
 msgstr "ܺ submatches:\n"
 
+#, c-format
+msgid "E888: (NFA regexp) cannot repeat %s"
+msgstr "E888: (NFA ǥ) %s() ݺ  ϴ"
+
+#~ msgid ""
+#~ "E864: \\%#= can only be followed by 0, 1, or 2. The automatic engine will be "
+#~ "used "
+#~ msgstr ""
+
+#~ msgid "Switching to backtracking RE engine for pattern: "
+#~ msgstr ""
+
+#~ msgid "E865: (NFA) Regexp end encountered prematurely"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "E866: (NFA regexp) Misplaced %c"
+#~ msgstr ""
+
+#, c-format
+msgid "E877: (NFA regexp) Invalid character class: %ld"
+msgstr "E877: (NFA ǥ)   Ŭ: %ld"
+
+#, c-format
+msgid "E867: (NFA) Unknown operator '\\z%c'"
+msgstr "E867: (NFA) 𸣴 ۷ '\\z%c'"
+
+#, c-format
+msgid "E867: (NFA) Unknown operator '\\%%%c'"
+msgstr "E867: (NFA) 𸣴 ۷ '\\%%%c'"
+
+#. should never happen
+#~ msgid "E868: Error building NFA with equivalence class!"
+#~ msgstr ""
+
+#, c-format
+msgid "E869: (NFA) Unknown operator '\\@%c'"
+msgstr "E869: (NFA) 𸣴 ۷ '\\@%c'"
+
+#~ msgid "E870: (NFA regexp) Error reading repetition limits"
+#~ msgstr ""
+
+#. Can't have a multi follow a multi.
+#~ msgid "E871: (NFA regexp) Can't have a multi follow a multi !"
+#~ msgstr ""
+
+#. Too many `('
+msgid "E872: (NFA regexp) Too many '('"
+msgstr "E872: (NFA ǥ) '(' ʹ ϴ"
+
+msgid "E879: (NFA regexp) Too many \\z("
+msgstr "E879: (NFA ǥ) \\z( ʹ ϴ"
+
+#~ msgid "E873: (NFA regexp) proper termination error"
+#~ msgstr ""
+
+#~ msgid "E874: (NFA) Could not pop the stack !"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "E875: (NFA regexp) (While converting from postfix to NFA), too many states "
+#~ "left on stack"
+#~ msgstr ""
+
+#~ msgid "E876: (NFA regexp) Not enough space to store the whole NFA "
+#~ msgstr ""
+
+#~ msgid "E878: (NFA) Could not allocate memory for branch traversal!"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Could not open temporary log file for writing, displaying on stderr ... "
+#~ msgstr ""
+
+#, c-format
+msgid "(NFA) COULD NOT OPEN %s !"
+msgstr "(NFA) %s()   ϴ!"
+
+msgid "Could not open temporary log file for writing "
+msgstr "ӽ α      ϴ"
+
 msgid " VREPLACE"
 msgstr " ġȯ"
 
@@ -4748,9 +4854,6 @@ msgstr " "
 msgid " Arabic"
 msgstr " ƶ"
 
-msgid " (lang)"
-msgstr " ()"
-
 msgid " (paste)"
 msgstr " (̱)"
 
@@ -4845,8 +4948,47 @@ msgstr ""
 "# Last %sSearch Pattern:\n"
 "~"
 
-msgid "E759: Format error in spell file"
-msgstr "E759: spell   "
+msgid "E756: Spell checking is not enabled"
+msgstr "E756:  ˻簡 ȰȭǾ  ʽϴ"
+
+#, c-format
+msgid "Warning: Cannot find word list \"%s_%s.spl\" or \"%s_ascii.spl\""
+msgstr ": ܾ  \"%s_%s.spl\" Ȥ \"%s_ascii.spl\" ã  ϴ"
+
+#, c-format
+msgid "Warning: Cannot find word list \"%s.%s.spl\" or \"%s.ascii.spl\""
+msgstr ": ܾ  \"%s.%s.spl\" Ȥ \"%s.ascii.spl\" ã  ϴ"
+
+msgid "E797: SpellFileMissing autocommand deleted buffer"
+msgstr "E797: SpellFileMissing autocommand ۸ ߽ϴ"
+
+#, c-format
+msgid "Warning: region %s not supported"
+msgstr ": %s   ʽϴ"
+
+msgid "Sorry, no suggestions"
+msgstr "˼,   ϴ"
+
+#, c-format
+msgid "Sorry, only %ld suggestions"
+msgstr "˼, %ld "
+
+#. for when 'cmdheight' > 1
+#. avoid more prompt
+#, c-format
+msgid "Change \"%.*s\" to:"
+msgstr "Change \"%.*s\" to:"
+
+#, c-format
+msgid " < \"%.*s\""
+msgstr " < \"%.*s\""
+
+msgid "E752: No previous spell replacement"
+msgstr "E752: öڰ ٲ ϴ"
+
+#, c-format
+msgid "E753: Not found: %s"
+msgstr "E753: ã  : %s"
 
 msgid "E758: Truncated spell file"
 msgstr "E758: ߸ spell "
@@ -4868,17 +5010,6 @@ msgstr "E762: FOL, LOW Ȥ UPP ڰ  "
 msgid "Compressing word tree..."
 msgstr "ܾ Ʈ ..."
 
-msgid "E756: Spell checking is not enabled"
-msgstr "E756:  ˻簡 ȰȭǾ  ʽϴ"
-
-#, c-format
-msgid "Warning: Cannot find word list \"%s_%s.spl\" or \"%s_ascii.spl\""
-msgstr ": ܾ  \"%s_%s.spl\" Ȥ \"%s_ascii.spl\" ã  ϴ"
-
-#, c-format
-msgid "Warning: Cannot find word list \"%s.%s.spl\" or \"%s.ascii.spl\""
-msgstr ": ܾ  \"%s.%s.spl\" Ȥ \"%s.ascii.spl\" ã  ϴ"
-
 #, c-format
 msgid "Reading spell file \"%s\""
 msgstr "spell  \"%s\"() а ֽϴ"
@@ -4896,8 +5027,24 @@ msgid "E770: Unsupported section in spel
 msgstr "E770: spell Ͽ  ʴ "
 
 #, c-format
-msgid "Warning: region %s not supported"
-msgstr ": %s   ʽϴ"
+msgid "E778: This does not look like a .sug file: %s"
+msgstr "E778: .sug  ƴ  : %s"
+
+#, c-format
+msgid "E779: Old .sug file, needs to be updated: %s"
+msgstr "E779:  .sug ,  ʿ: %s"
+
+#, c-format
+msgid "E780: .sug file is for newer version of Vim: %s"
+msgstr "E780: .sug    Vim: %s"
+
+#, c-format
+msgid "E781: .sug file doesn't match .spl file: %s"
+msgstr "E781: .sug  .spl ϰ  : %s"
+
+#, c-format
+msgid "E782: error while reading .sug file: %s"
+msgstr "E782: .sug  б : %s"
 
 #, c-format
 msgid "Reading affix file %s ..."
@@ -5157,76 +5304,56 @@ msgid "E765: 'spellfile' does not have %
 msgstr "E765: 'spellfile' %ld ׸ ϴ"
 
 #, c-format
-msgid "Word removed from %s"
-msgstr "%s ܾ "
-
-#, c-format
-msgid "Word added to %s"
-msgstr "%s ܾ ߰"
+msgid "Word '%.*s' removed from %s"
+msgstr "ܾ '%.*s'() %s ŵ"
+
+#, c-format
+msgid "Word '%.*s' added to %s"
+msgstr "ܾ '%.*s'() %s ߰"
 
 msgid "E763: Word characters differ between spell files"
 msgstr "E763: ܾ spell   ٸϴ"
 
-msgid "Sorry, no suggestions"
-msgstr "˼,   ϴ"
-
-#, c-format
-msgid "Sorry, only %ld suggestions"
-msgstr "˼, %ld "
-
-#. for when 'cmdheight' > 1
-#. avoid more prompt
-#, c-format
-msgid "Change \"%.*s\" to:"
-msgstr "Change \"%.*s\" to:"
-
-#, c-format
-msgid " < \"%.*s\""
-msgstr " < \"%.*s\""
-
-msgid "E752: No previous spell replacement"
-msgstr "E752: öڰ ٲ ϴ"
-
-#, c-format
-msgid "E753: Not found: %s"
-msgstr "E753: ã  : %s"
-
-#, c-format
-msgid "E778: This does not look like a .sug file: %s"
-msgstr "E778: .sug  ƴ  : %s"
-
-#, c-format
-msgid "E779: Old .sug file, needs to be updated: %s"
-msgstr "E779:  .sug ,  ʿ: %s"
-
-#, c-format
-msgid "E780: .sug file is for newer version of Vim: %s"
-msgstr "E780: .sug    Vim: %s"
-
-#, c-format
-msgid "E781: .sug file doesn't match .spl file: %s"
-msgstr "E781: .sug  .spl ϰ  : %s"
-
-#, c-format
-msgid "E782: error while reading .sug file: %s"
-msgstr "E782: .sug  б : %s"
-
 #. This should have been checked when generating the .spl
 #. * file.
 msgid "E783: duplicate char in MAP entry"
 msgstr "E783: MAP ׸ ߺ "
 
+msgid "No Syntax items defined for this buffer"
+msgstr " ۿ  ǵ  ׸ ϴ"
+
+#~ msgid "syntax conceal on"
+#~ msgstr ""
+
+#~ msgid "syntax conceal off"
+#~ msgstr ""
+
 #, c-format
 msgid "E390: Illegal argument: %s"
 msgstr "E390: ߸ : %s"
 
+#~ msgid "syntax case ignore"
+#~ msgstr ""
+
+#~ msgid "syntax case match"
+#~ msgstr ""
+
+#~ msgid "syntax spell toplevel"
+#~ msgstr ""
+
+#~ msgid "syntax spell notoplevel"
+#~ msgstr ""
+
+#~ msgid "syntax spell default"
+#~ msgstr ""
+
+#~ msgid "syntax iskeyword "
+#~ msgstr ""
+
 #, c-format
 msgid "E391: No such syntax cluster: %s"
 msgstr "E391: ̷  Ŭʹ ϴ: %s"
 
-msgid "No Syntax items defined for this buffer"
-msgstr " ۿ  ǵ  ׸ ϴ"
-
 msgid "syncing on C-style comments"
 msgstr "C- ּ "
 
@@ -5292,11 +5419,18 @@ msgstr "E394: %s  region ׸ ã ߽ϴ"
 msgid "E397: Filename required"
 msgstr "E397: ̸ ʿմϴ"
 
+#~ msgid "E847: Too many syntax includes"
+#~ msgstr ""
+
 #, c-format
 msgid "E789: Missing ']': %s"
 msgstr "E789: ']' : %s"
 
 #, c-format
+msgid "E890: trailing char after ']': %s]%s"
+msgstr "E890: ']' ڿ ڰ  : %s]%s"
+
+#, c-format
 msgid "E398: Missing '=': %s"
 msgstr "E398: '=' : %s"
 
@@ -5304,6 +5438,9 @@ msgstr "E398: '=' : %s"
 msgid "E399: Not enough arguments: syntax region %s"
 msgstr "E399: ġ  :   %s"
 
+msgid "E848: Too many syntax clusters"
+msgstr "E848:  ŬͰ ʹ ϴ"
+
 msgid "E400: No cluster specified"
 msgstr "E400: ŬͰ õ ʾҽϴ"
 
@@ -5346,6 +5483,10 @@ msgstr "E409: 𸣴 ׷ ̸: %s"
 msgid "E410: Invalid :syntax subcommand: %s"
 msgstr "E410: ߸ :syntax  : %s"
 
+#~ msgid ""
+#~ "  TOTAL      COUNT  MATCH   SLOWEST     AVERAGE   NAME               PATTERN"
+#~ msgstr ""
+
 msgid "E679: recursive loop loading syncolor.vim"
 msgstr "E679: syncolor.vim ݺ ε"
 
@@ -5407,6 +5548,9 @@ msgstr "E669: ׷ ̸    ڰ ֽϴ"
 msgid "W18: Invalid character in group name"
 msgstr "W18: ׷ ̸ ̻ "
 
+msgid "E849: Too many highlight and syntax groups"
+msgstr "E849: highlight syntax group ʹ ϴ"
+
 msgid "E555: at bottom of tag stack"
 msgstr "E555: ±  Դϴ"
 
@@ -5467,6 +5611,9 @@ msgstr "±  %s ã "
 msgid "E430: Tag file path truncated for %s\n"
 msgstr "E430: %s  ±  ΰ ߷Ƚϴ\n"
 
+msgid "Ignoring long line in tags file"
+msgstr "±  ʹ   մϴ"
+
 #, c-format
 msgid "E431: Format error in tags file \"%s\""
 msgstr "E431: ±  \"%s\"   ֽϴ"
@@ -5483,9 +5630,6 @@ msgstr "E432: ±  ĵǾ  : %s"
 msgid "E433: No tags file"
 msgstr "E433: ±  ϴ"
 
-msgid "Ignoring long line in tags file"
-msgstr "±  ʹ   մϴ"
-
 msgid "E434: Can't find tag pattern"
 msgstr "E434: ±  ã  ϴ"
 
@@ -5526,6 +5670,9 @@ msgstr ""
 "\n"
 "--- ͹̳ Ű ---"
 
+msgid "Cannot open $VIMRUNTIME/rgb.txt"
+msgstr "$VIMRUNTIME/rgb.txt   ϴ"
+
 msgid "new shell started\n"
 msgstr "  ۵Ǿϴ\n"
 
@@ -5537,8 +5684,8 @@ msgstr "   CUT_BUFFER0 ߽ϴ"
 
 #. This happens when the FileChangedRO autocommand changes the
 #. * file in a way it becomes shorter.
-msgid "E834: Line count changed unexpectedly"
-msgstr "E834:   𸣴 ̿ ٲϴ"
+msgid "E881: Line count changed unexpectedly"
+msgstr "E881:   ڱ ٲϴ"
 
 #. must display the prompt
 msgid "No undo possible; continue anyway"
@@ -5673,13 +5820,133 @@ msgstr "E439: undo  ϴ"
 msgid "E440: undo line missing"
 msgstr "E440: undo  ϴ"
 
-#. Only MS VC 4.1 and earlier can do Win32s
-msgid ""
-"\n"
-"MS-Windows 16/32-bit GUI version"
-msgstr ""
-"\n"
-"MS-Windows 16/32 Ʈ GUI "
+#, c-format
+msgid "E122: Function %s already exists, add ! to replace it"
+msgstr "E122: Լ %s() ̹ ֽϴ, ٲٷ ! ϼ"
+
+msgid "E717: Dictionary entry already exists"
+msgstr "E717: ̹ Dictionary ׸ ֽϴ"
+
+msgid "E718: Funcref required"
+msgstr "E718: Funcref ʿմϴ"
+
+#, c-format
+msgid "E130: Unknown function: %s"
+msgstr "E130: 𸣴 Լ: %s"
+
+#, c-format
+msgid "E125: Illegal argument: %s"
+msgstr "E125: ߸ : %s"
+
+#, c-format
+msgid "E853: Duplicate argument name: %s"
+msgstr "E853: ߺ  ̸: %s"
+
+#, c-format
+msgid "E740: Too many arguments for function %s"
+msgstr "E740: Լ %s ʹ  ڰ ޵Ǿϴ"
+
+#, c-format
+msgid "E116: Invalid arguments for function %s"
+msgstr "E116: Լ %s() ߸ ڰ Ѱϴ"
+
+msgid "E132: Function call depth is higher than 'maxfuncdepth'"
+msgstr "E132: Լ θ ̰ 'maxfuncdepth' Ůϴ"
+
+#, c-format
+msgid "calling %s"
+msgstr "%s θ "
+
+#, c-format
+msgid "%s aborted"
+msgstr "%s() Ǿϴ"
+
+#, c-format
+msgid "%s returning #%ld"
+msgstr "%s() #%ld() ־ϴ"
+
+#, c-format
+msgid "%s returning %s"
+msgstr "%s() %s() ־ϴ"
+
+msgid "E699: Too many arguments"
+msgstr "E699: ʹ  "
+
+#, c-format
+msgid "E117: Unknown function: %s"
+msgstr "E117: 𸣴 Լ: %s"
+
+#, c-format
+msgid "E933: Function was deleted: %s"
+msgstr "E933: Լ : %s"
+
+#, c-format
+msgid "E119: Not enough arguments for function: %s"
+msgstr "E119: Լ   ѱ: %s"
+
+#, c-format
+msgid "E120: Using <SID> not in a script context: %s"
+msgstr "E120: ũƮ ؽƮ ۿ <SID> : %s"
+
+#, c-format
+msgid "E725: Calling dict function without Dictionary: %s"
+msgstr "E725: Dictionary Լ ҷ: %s"
+
+msgid "E129: Function name required"
+msgstr "E129: Լ ̸ ʿմϴ"
+
+#, c-format
+msgid "E128: Function name must start with a capital or \"s:\": %s"
+msgstr "E128: Լ ̸ 빮 Ȥ \"s:\" ؾ : %s"
+
+#, c-format
+msgid "E884: Function name cannot contain a colon: %s"
+msgstr "E884: Լ ̸ ݷ   : %s"
+
+#, c-format
+msgid "E123: Undefined function: %s"
+msgstr "E123:    Լ: %s"
+
+#, c-format
+msgid "E124: Missing '(': %s"
+msgstr "E124: '(' : %s"
+
+msgid "E862: Cannot use g: here"
+msgstr "E862: ⿡ g:   ϴ"
+
+#, c-format
+#~ msgid "E932: Closure function should not be at top level: %s"
+#~ msgstr ""
+
+msgid "E126: Missing :endfunction"
+msgstr "E126: :endfunction ϴ"
+
+#, c-format
+msgid "W22: Text found after :endfunction: %s"
+msgstr "W22: :endfunction ڿ ڿ : %s"
+
+#, c-format
+msgid "E707: Function name conflicts with variable: %s"
+msgstr "E707: Լ  浹: %s"
+
+#, c-format
+msgid "E127: Cannot redefine function %s: It is in use"
+msgstr "E127: Լ %s() ٽ   ϴ: Դϴ"
+
+#, c-format
+msgid "E746: Function name does not match script file name: %s"
+msgstr "E746: Լ ũƮ ϸ ٸ: %s"
+
+#, c-format
+msgid "E131: Cannot delete function %s: It is in use"
+msgstr "E131: Լ %s()   ϴ: Դϴ"
+
+msgid "E133: :return not inside a function"
+msgstr "E133: :return Լ ȿ  ʽϴ"
+
+#, c-format
+msgid "E107: Missing parentheses: %s"
+msgstr "E107: ȣ : %s"
 
 msgid ""
 "\n"
@@ -5695,9 +5962,6 @@ msgstr ""
 "\n"
 "MS-Windows 32Ʈ GUI "
 
-msgid " in Win32s mode"
-msgstr " Win32s "
-
 msgid " with OLE support"
 msgstr " OLE "
 
@@ -5717,27 +5981,6 @@ msgstr ""
 
 msgid ""
 "\n"
-"MS-Windows 16-bit version"
-msgstr ""
-"\n"
-"MS-Windows 16Ʈ "
-
-msgid ""
-"\n"
-"32-bit MS-DOS version"
-msgstr ""
-"\n"
-"32Ʈ MS-DOS "
-
-msgid ""
-"\n"
-"16-bit MS-DOS version"
-msgstr ""
-"\n"
-"16Ʈ MS-DOS "
-
-msgid ""
-"\n"
 "MacOS X (unix) version"
 msgstr ""
 "\n"
@@ -5759,13 +6002,6 @@ msgstr ""
 
 msgid ""
 "\n"
-"RISC OS version"
-msgstr ""
-"\n"
-"RISC OS "
-
-msgid ""
-"\n"
 "OpenVMS version"
 msgstr ""
 "\n"
@@ -5836,6 +6072,9 @@ msgstr ""
 msgid "without GUI."
 msgstr "GUI ."
 
+msgid "with GTK3 GUI."
+msgstr "GTK3 GUI."
+
 msgid "with GTK2-GNOME GUI."
 msgstr "GTK2-GNOME GUI."
 
@@ -5899,6 +6138,9 @@ msgstr "  ° gvimrc : \""
 msgid "3rd user gvimrc file: \""
 msgstr "  ° gvimrc : \""
 
+msgid "       defaults file: \""
+msgstr "       defaults : \""
+
 msgid "    system menu file: \""
 msgstr "    ý ޴ : \""
 
@@ -5930,7 +6172,7 @@ msgid "by Bram Moolenaar et al."
 msgstr "by Bram Moolenaar et al."
 
 msgid "Vim is open source and freely distributable"
-msgstr " ҽ  ְ ¥ ˴ϴ"
+msgstr "  ҽ   ְ ¥ ˴ϴ"
 
 msgid "Help poor children in Uganda!"
 msgstr "찣ٿ   ̸ ּ!"
@@ -5989,12 +6231,6 @@ msgstr "̿       :help register<>   Է"
 msgid "menu  Help->Sponsor/Register  for information    "
 msgstr "̿       ޴ ->Sponsor/Register"
 
-msgid "WARNING: Windows 95/98/ME detected"
-msgstr ":  95/98/ME ã"
-
-msgid "type  :help windows95<Enter>  for info on this"
-msgstr "̿       :help windows95<>  Է"
-
 msgid "Already only one window"
 msgstr "̹ ϳ â ֽϴ"
 
@@ -6027,6 +6263,25 @@ msgid "E447: Can't find file \"%s\" in p
 msgstr "E447: path \"%s\"  ã  ϴ"
 
 #, c-format
+msgid "E799: Invalid ID: %ld (must be greater than or equal to 1)"
+msgstr "E799:  ID: %ld (1 ũų ƾ մϴ)"
+
+#, c-format
+#~ msgid "E801: ID already taken: %ld"
+#~ msgstr ""
+
+msgid "List or number required"
+msgstr "List number ʿմϴ"
+
+#, c-format
+msgid "E802: Invalid ID: %ld (must be greater than or equal to 1)"
+msgstr "E802:  ID: %ld (1 ũų ƾ մϴ)"
+
+#, c-format
+msgid "E803: ID not found: %ld"
+msgstr "E803: ID ã  : %ld"
+
+#, c-format
 msgid "E370: Could not load library %s"
 msgstr "E370: %s ̺귯 ε  ϴ"
 
@@ -6128,6 +6383,10 @@ msgstr "E236: ۲ \"%s\"() ̰ ƴմϴ"
 msgid "E473: Internal error"
 msgstr "E473:  "
 
+#, c-format
+msgid "E685: Internal error: %s"
+msgstr "E685:  : %s"
+
 msgid "Interrupted"
 msgstr "ߴܵǾϴ"
 
@@ -6256,6 +6515,9 @@ msgstr "E485: %s    ϴ"
 msgid "E37: No write since last change (add ! to override)"
 msgstr "E37:  ģ   ʾҽϴ (Ϸ ! ϱ)"
 
+msgid "E37: No write since last change"
+msgstr "E37:  ģ   ʾҽϴ"
+
 msgid "E38: Null argument"
 msgstr "E38:  "
 
@@ -6308,6 +6570,31 @@ msgstr "E46: б   \"%s\"() ٲ  ϴ"
 msgid "E794: Cannot set variable in the sandbox: \"%s\""
 msgstr "E794: sandbox ȿ    : \"%s\""
 
+msgid "E713: Cannot use empty key for Dictionary"
+msgstr "E713: Dictionary  Ű   ϴ"
+
+msgid "E715: Dictionary required"
+msgstr "E715: Dictionary ʿմϴ"
+
+#, c-format
+msgid "E684: list index out of range: %ld"
+msgstr "E684:  ȣ  : %ld"
+
+#, c-format
+msgid "E118: Too many arguments for function: %s"
+msgstr "E118: Լ ʹ   ѱ: %s"
+
+#, c-format
+msgid "E716: Key not present in Dictionary: %s"
+msgstr "E716: Dictionary Ű : %s"
+
+msgid "E714: List required"
+msgstr "E714: List ʿմϴ"
+
+#, c-format
+msgid "E712: Argument of %s must be a List or Dictionary"
+msgstr "E712: %s ڴ List Ȥ Dictionary մϴ"
+
 msgid "E47: Error while reading errorfile"
 msgstr "E47:  д ߿ "
 
@@ -6365,8 +6652,8 @@ msgstr "E592: 'winwidth' 'winminwidth' Ŀ մϴ"
 msgid "E80: Error while writing"
 msgstr "E80:  ߿ "
 
-msgid "Zero count"
-msgstr "Zero count"
+#~ msgid "E939: Positive count required"
+#~ msgstr ""
 
 msgid "E81: Using <SID> not in a script context"
 msgstr "E81: ũƮ ؽƮ ۿ <SID> "
@@ -6380,16 +6667,16 @@ msgstr "E463:  ȣǰ ־   ϴ"
 msgid "E744: NetBeans does not allow changes in read-only files"
 msgstr "E744: NetBeans б   ٲ  ϴ"
 
-#, c-format
-msgid "E685: Internal error: %s"
-msgstr "E685:  : %s"
-
 msgid "E363: pattern uses more memory than 'maxmempattern'"
 msgstr "E363:  'maxmempattern'  ޸𸮸 մϴ"
 
 msgid "E749: empty buffer"
 msgstr "E749:  "
 
+#, c-format
+msgid "E86: Buffer %ld does not exist"
+msgstr "E86:  %ld()  ʽϴ"
+
 msgid "E682: Invalid search pattern or delimiter"
 msgstr "E682: ߸ ã  Ȥ "
 
@@ -6400,6 +6687,13 @@ msgstr "E139:  ٸ ۿ εǾ ֽϴ"
 msgid "E764: Option '%s' is not set"
 msgstr "E764: ɼ '%s'() Ǿ  ʽϴ"
 
+msgid "E850: Invalid register name"
+msgstr "E850: ߸  ̸"
+
+#, c-format
+msgid "E919: Directory not found in '%s': \"%s\""
+msgstr "E919: '%s' 丮 ã: \"%s\""
+
 msgid "search hit TOP, continuing at BOTTOM"
 msgstr "ó ã,  "
 
@@ -6410,38 +6704,250 @@ msgstr " ã, ó "
 msgid "Need encryption key for \"%s\""
 msgstr "\"%s\"  ȣ Ű ʿմϴ"
 
-msgid "writelines() requires list of strings"
-msgstr "writelines() ڿ  ʿմϴ"
+msgid "empty keys are not allowed"
+msgstr " Ű   ʽϴ"
+
+msgid "dictionary is locked"
+msgstr "dictionary ֽϴ"
+
+msgid "list is locked"
+msgstr "list ֽϴ"
+
+#, c-format
+msgid "failed to add key '%s' to dictionary"
+msgstr "dictionary '%s' Ű ߰  ϴ"
+
+#, c-format
+#~ msgid "index must be int or slice, not %s"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "expected str() or unicode() instance, but got %s"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "expected bytes() or str() instance, but got %s"
+#~ msgstr ""
+
+#, c-format
+#~ msgid ""
+#~ "expected int(), long() or something supporting coercing to long(), but got %s"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "expected int() or something supporting coercing to int(), but got %s"
+#~ msgstr ""
+
+msgid "value is too large to fit into C int type"
+msgstr " C   Ͽ ʹ Ůϴ"
+
+msgid "value is too small to fit into C int type"
+msgstr " C   Ͽ ʹ ۽ϴ"
+
+msgid "number must be greater than zero"
+msgstr " 0 Ŀ մϴ"
+
+msgid "number must be greater or equal to zero"
+msgstr " 0 ũų ƾ մϴ"
+
+msgid "can't delete OutputObject attributes"
+msgstr "OutputObject Ӽ   ϴ"
+
+#, c-format
+msgid "invalid attribute: %s"
+msgstr "߸ Ӽ: %s"
 
 msgid "E264: Python: Error initialising I/O objects"
 msgstr "E264: ̽: I/O ü ʱȭ  ϴ"
 
-msgid "no such buffer"
-msgstr "׷ ۴ ϴ"
+msgid "failed to change directory"
+msgstr "丮 ٲ  ϴ"
+
+#, c-format
+#~ msgid "expected 3-tuple as imp.find_module() result, but got %s"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "expected 3-tuple as imp.find_module() result, but got tuple of size %d"
+#~ msgstr ""
+
+#~ msgid "internal error: imp.find_module returned tuple with NULL"
+#~ msgstr ""
+
+msgid "cannot delete vim.Dictionary attributes"
+msgstr "vim.Dictionary Ӽ   ϴ"
+
+msgid "cannot modify fixed dictionary"
+msgstr "fixed dictionary   ϴ"
+
+#, c-format
+msgid "cannot set attribute %s"
+msgstr "Ӽ %s()   ϴ"
+
+#~ msgid "hashtab changed during iteration"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "expected sequence element of size 2, but got sequence of size %d"
+#~ msgstr ""
+
+#~ msgid "list constructor does not accept keyword arguments"
+#~ msgstr ""
+
+msgid "list index out of range"
+msgstr "list   ϴ"
+
+#. No more suitable format specifications in python-2.3
+#, c-format
+#~ msgid "internal error: failed to get vim list item %d"
+#~ msgstr ""
+
+#~ msgid "slice step cannot be zero"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "attempt to assign sequence of size greater than %d to extended slice"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "internal error: no vim list item %d"
+#~ msgstr ""
+
+#~ msgid "internal error: not enough list items"
+#~ msgstr ""
+
+#~ msgid "internal error: failed to add item to list"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "attempt to assign sequence of size %d to extended slice of size %d"
+#~ msgstr ""
+
+#~ msgid "failed to add item to list"
+#~ msgstr ""
+
+msgid "cannot delete vim.List attributes"
+msgstr "vim.List Ӽ   ϴ"
+
+#~ msgid "cannot modify fixed list"
+#~ msgstr ""
+
+#, c-format
+msgid "unnamed function %s does not exist"
+msgstr "̸ Լ %s()  ʽϴ"
+
+#, c-format
+msgid "function %s does not exist"
+msgstr "Լ %s()  ʽϴ"
+
+#, c-format
+msgid "failed to run function %s"
+msgstr "Լ %s()   ϴ"
+
+msgid "unable to get option value"
+msgstr "ɼ    ϴ"
+
+#~ msgid "internal error: unknown option type"
+#~ msgstr ""
+
+#~ msgid "problem while switching windows"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "unable to unset global option %s"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "unable to unset option %s which does not have global value"
+#~ msgstr ""
+
+msgid "attempt to refer to deleted tab page"
+msgstr "   Ϸ Ͽϴ"
+
+msgid "no such tab page"
+msgstr "׷   ϴ"
 
 msgid "attempt to refer to deleted window"
 msgstr " â Ϸ Ͽϴ"
 
-msgid "readonly attribute"
-msgstr "б  Ӽ"
+msgid "readonly attribute: buffer"
+msgstr "б  Ӽ: "
 
 msgid "cursor position outside buffer"
 msgstr "ۼ ġ  ۿ ֽϴ"
 
-#, c-format
-msgid "<window object (deleted) at %p>"
-msgstr "<%p â ü ()>"
-
-#, c-format
-msgid "<window object (unknown) at %p>"
-msgstr "<%p â ü ()>"
-
-#, c-format
-msgid "<window %d>"
-msgstr "<â %d>"
-
 msgid "no such window"
 msgstr "׷ â ϴ"
 
 msgid "attempt to refer to deleted buffer"
 msgstr " ۸ Ϸ Ͽϴ"
+
+msgid "failed to rename buffer"
+msgstr " ̸   ϴ"
+
+#~ msgid "mark name must be a single character"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "expected vim.Buffer object, but got %s"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "failed to switch to buffer %d"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "expected vim.Window object, but got %s"
+#~ msgstr ""
+
+#~ msgid "failed to find window in the current tab page"
+#~ msgstr ""
+
+#~ msgid "did not switch to the specified window"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "expected vim.TabPage object, but got %s"
+#~ msgstr ""
+
+#~ msgid "did not switch to the specified tab page"
+#~ msgstr ""
+
+#~ msgid "failed to run the code"
+#~ msgstr ""
+
+#~ msgid "E858: Eval did not return a valid python object"
+#~ msgstr ""
+
+#~ msgid "E859: Failed to convert returned python object to vim value"
+#~ msgstr ""
+
+#, c-format
+#~ msgid "unable to convert %s to vim dictionary"
+#~ msgstr ""
+
+#, c-format
+msgid "unable to convert %s to vim list"
+msgstr "%s() vim list   ϴ"
+
+#, c-format
+#~ msgid "unable to convert %s to vim structure"
+#~ msgstr ""
+
+#~ msgid "internal error: NULL reference passed"
+#~ msgstr ""
+
+#~ msgid "internal error: invalid value type"
+#~ msgstr ""
+
+#~ 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 ""
+
+#~ msgid ""
+#~ "Failed to set path: sys.path is not a list\n"
+#~ "You should now append vim.VIM_SPECIAL_PATH to sys.path"
+#~ msgstr ""
--- a/src/po/pt_BR.po
+++ b/src/po/pt_BR.po
@@ -7,7 +7,7 @@ msgstr ""
 "POT-Creation-Date: 2010-08-04 20:05-0300\n"
 "PO-Revision-Date: 2010-08-04 20:36-0300\n"
 "Last-Translator: Eduardo S. Dobay <edudobay@gmail.com>\n"
-"Language-Team: Brazilian Portuguese <pt-br@li.org>\n"
+"Language-Team: Brazilian Portuguese\n"
 "Language: pt_BR\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=ISO-8859-1\n"
--- a/src/po/uk.cp1251.po
+++ b/src/po/uk.cp1251.po
@@ -1,6 +1,8 @@
 #
 # Ukrainian Vim translation [uk]
 #
+# Generated from uk.po, DO NOT EDIT
+#
 # Copyright (C) 2001 Bohdan Vlasyuk <bohdan@vstu.edu.ua>
 # Bohdan donated this work to be distributed with Vim under the Vim license.
 #
@@ -12,7 +14,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: vim 8.0\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2016-09-12 18:50+0300\n"
+"POT-Creation-Date: 2017-07-12 12:22+0300\n"
 "PO-Revision-Date: 2010-06-18 21:53+0300\n"
 "Last-Translator:   <sakhnik@gmail.com>\n"
 "Language-Team: Bohdan Vlasyuk <bohdan@vstu.edu.ua>\n"
@@ -241,7 +243,8 @@ msgid "E917: Cannot use a callback with 
 msgstr "E917:       %s()"
 
 msgid "E912: cannot use ch_evalexpr()/ch_sendexpr() with a raw or nl channel"
-msgstr "E912:    ch_evalexpr()/ch_sendexpr()  raw  nl "
+msgstr ""
+"E912:    ch_evalexpr()/ch_sendexpr()  raw  nl "
 
 msgid "E906: not an open channel"
 msgstr "E906:   "
@@ -433,6 +436,9 @@ msgstr " : %s"
 msgid "Scanning tags."
 msgstr "  ."
 
+msgid "match in file"
+msgstr "  "
+
 msgid " Adding"
 msgstr " "
 
@@ -523,6 +529,12 @@ msgstr "E690:  in  :for"
 msgid "E108: No such variable: \"%s\""
 msgstr "E108:  : %s"
 
+#. For historic reasons this error is not given for a list or dict.
+#. * E.g., the b: dict could be locked/unlocked.
+#, c-format
+msgid "E940: Cannot lock or unlock variable %s"
+msgstr "E940:      %s"
+
 msgid "E743: variable nested too deep for (un)lock"
 msgstr "E743:       -/."
 
@@ -708,12 +720,6 @@ msgid "&Ok"
 msgstr "&O:"
 
 #, c-format
-msgid "+-%s%3ld line: "
-msgid_plural "+-%s%3ld lines: "
-msgstr[0] "+-%s%3ld : "
-msgstr[1] "+-%s%3ld : "
-
-#, c-format
 msgid "E700: Unknown function: %s"
 msgstr "E700:  : %s"
 
@@ -761,8 +767,8 @@ msgstr "E727:   "
 msgid "<empty>"
 msgstr "<>"
 
-msgid "E240: No connection to Vim server"
-msgstr "E240:  '   Vim"
+msgid "E240: No connection to the X server"
+msgstr "E240:  '   X"
 
 #, c-format
 msgid "E241: Unable to send to %s"
@@ -771,6 +777,12 @@ msgstr "E241:     %s"
 msgid "E277: Unable to read a server reply"
 msgstr "E277:     "
 
+msgid "E941: already started a server"
+msgstr "E941:   "
+
+msgid "E942: +clientserver feature not available"
+msgstr "E942:  +clientserver "
+
 # msgstr "E14: "
 msgid "remove() argument"
 msgstr " remove()"
@@ -899,6 +911,14 @@ msgstr " %s"
 msgid "not found in '%s': \"%s\""
 msgstr "   '%s': %s"
 
+#, c-format
+msgid "W20: Required python version 2.x not supported, ignoring file: %s"
+msgstr "W20:   python 2.x  ,  : %s"
+
+#, c-format
+msgid "W21: Required python version 3.x not supported, ignoring file: %s"
+msgstr "W21:   python 3.x  ,  : %s"
+
 msgid "Source Vim script"
 msgstr "  Vim"
 
@@ -1157,8 +1177,9 @@ msgstr "   "
 msgid " on %ld lines"
 msgstr "  %ld "
 
-msgid "E147: Cannot do :global recursive"
-msgstr "E147: :global    "
+#. will increment global_busy to break out of the loop
+msgid "E147: Cannot do :global recursive with a range"
+msgstr "E147: :global      "
 
 msgid "E148: Regular expression missing from global"
 msgstr "E148:  global  "
@@ -1301,6 +1322,9 @@ msgstr "  ,     "
 msgid "E494: Use w or w>>"
 msgstr "E494:  w  w>>"
 
+msgid "E943: Command table needs to be updated, run 'make cmdidxs'"
+msgstr "E943:    ,  'make cmdidxs'"
+
 msgid "E319: Sorry, the command is not available in this version"
 msgstr "E319: ,      "
 
@@ -2085,12 +2109,6 @@ msgstr "E350:      'foldmethod'"
 msgid "E351: Cannot delete fold with current 'foldmethod'"
 msgstr "E351:      'foldmethod'"
 
-#, c-format
-msgid "+--%3ld line folded "
-msgid_plural "+--%3ld lines folded "
-msgstr[0] "+--%3ld   "
-msgstr[1] "+--%3ld   "
-
 msgid "E222: Add to read buffer"
 msgstr "E222:    "
 
@@ -2893,6 +2911,10 @@ msgstr "E573:    : %s"
 msgid "E251: VIM instance registry property is badly formed.  Deleted!"
 msgstr "E251:    VIM  .  !"
 
+#, c-format
+msgid "E938: Duplicate key in JSON: \"%s\""
+msgstr "E938:    JSON: %s"
+
 # msgstr "E404: "
 #, c-format
 msgid "E696: Missing comma in List: %s"
@@ -3118,6 +3140,9 @@ msgstr "-T <>\t    <>"
 msgid "--not-a-term\t\tSkip warning for input/output not being a terminal"
 msgstr "--not-a-term\t\t  /   "
 
+msgid "--ttyfail\t\tExit if input or output is not a terminal"
+msgstr "--ttyfail\t\t,  /   "
+
 msgid "-u <vimrc>\t\tUse <vimrc> instead of any .vimrc"
 msgstr "-u <vimrc>\t\t    .vimrc"
 
@@ -3827,7 +3852,8 @@ msgstr ""
 "\n"
 "(1) ,       .   ,\n"
 "     ,      \n"
-"          .      .\n"
+"          .      "
+".\n"
 
 msgid "(2) An edit session for this file crashed.\n"
 msgstr "(2)      .\n"
@@ -4197,8 +4223,8 @@ msgstr "E662:   "
 msgid "E663: At end of changelist"
 msgstr "E663: ʳ  "
 
-msgid "Type  :quit<Enter>  to exit Vim"
-msgstr " :quit<Enter>     Vim"
+msgid "Type  :qa!  and press <Enter> to abandon all changes and exit Vim"
+msgstr "  :qa!    <Enter>,        Vim"
 
 #, c-format
 msgid "1 line %sed 1 time"
@@ -4306,8 +4332,8 @@ msgid ""
 "Selected %s%ld of %ld Lines; %lld of %lld Words; %lld of %lld Chars; %lld of "
 "%lld Bytes"
 msgstr ""
-" %s%ld  %ld ; %lld  %lld ; %lld of %lld ; %lld  %lld "
-""
+" %s%ld  %ld ; %lld  %lld ; %lld of %lld ; %lld  "
+"%lld "
 
 #, c-format
 msgid "Col %s of %s; Line %ld of %ld; Word %lld of %lld; Byte %lld of %lld"
@@ -4318,8 +4344,8 @@ msgid ""
 "Col %s of %s; Line %ld of %ld; Word %lld of %lld; Char %lld of %lld; Byte "
 "%lld of %lld"
 msgstr ""
-" %s  %s;  %ld  %ld;  %lld  %lld;  %lld of %lld;  "
-"%lld  %lld"
+" %s  %s;  %ld  %ld;  %lld  %lld;  %lld of %lld; "
+" %lld  %lld"
 
 #, c-format
 msgid "(+%ld for BOM)"
@@ -4557,9 +4583,6 @@ msgstr " /"
 msgid "Message"
 msgstr ""
 
-msgid "'columns' is not 80, cannot execute external commands"
-msgstr "'columns'  80,     "
-
 # msgstr "E364: "
 msgid "E237: Printer selection failed"
 msgstr "E237:    "
@@ -4839,6 +4862,12 @@ msgstr "E369:    %s%%[]"
 msgid "E769: Missing ] after %s["
 msgstr "E769:  ]  %s["
 
+msgid "E944: Reverse range in character class"
+msgstr "E944:     "
+
+msgid "E945: Range too large in character class"
+msgstr "E945:     "
+
 #, c-format
 msgid "E53: Unmatched %s%%("
 msgstr "E53:   %s%%("
@@ -4867,6 +4896,9 @@ msgstr "E69:  ]  %s%%["
 msgid "E70: Empty %s%%[]"
 msgstr "E70: %s%%[] "
 
+msgid "E65: Illegal back reference"
+msgstr "E65:   "
+
 # msgstr "E382: "
 msgid "E339: Pattern too long"
 msgstr "E339:   "
@@ -4907,9 +4939,6 @@ msgstr "E63:   \\_"
 msgid "E64: %s%c follows nothing"
 msgstr "E64: ϳ %s%c  "
 
-msgid "E65: Illegal back reference"
-msgstr "E65:   "
-
 msgid "E68: Invalid character after \\z"
 msgstr "E68:    \\z"
 
@@ -5520,10 +5549,31 @@ msgstr "E783:     MAP"
 msgid "No Syntax items defined for this buffer"
 msgstr "     "
 
+msgid "syntax conceal on"
+msgstr "  "
+
+msgid "syntax conceal off"
+msgstr "  "
+
 #, c-format
 msgid "E390: Illegal argument: %s"
 msgstr "E390:  : %s"
 
+msgid "syntax case ignore"
+msgstr "  "
+
+msgid "syntax case match"
+msgstr "  "
+
+msgid "syntax spell toplevel"
+msgstr "  "
+
+msgid "syntax spell notoplevel"
+msgstr "  "
+
+msgid "syntax spell default"
+msgstr " "
+
 msgid "syntax iskeyword "
 msgstr " iskeyword "
 
@@ -6140,6 +6190,10 @@ msgid "E126: Missing :endfunction"
 msgstr "E126:  :endfunction"
 
 #, c-format
+msgid "W22: Text found after :endfunction: %s"
+msgstr "W22:    :endfunction: %s"
+
+#, c-format
 msgid "E707: Function name conflicts with variable: %s"
 msgstr "E707:     : %s"
 
@@ -6162,16 +6216,6 @@ msgstr "E133: :return   "
 msgid "E107: Missing parentheses: %s"
 msgstr "E107:  : %s"
 
-# msgstr "E440: "
-# ---------------------------------------
-#. Only MS VC 4.1 and earlier can do Win32s
-msgid ""
-"\n"
-"MS-Windows 16/32-bit GUI version"
-msgstr ""
-"\n"
-"  GUI  16/32- Windows"
-
 msgid ""
 "\n"
 "MS-Windows 64-bit GUI version"
@@ -6455,12 +6499,6 @@ msgstr ":help register<Enter>            "
 msgid "menu  Help->Sponsor/Register  for information    "
 msgstr "  ->/        "
 
-msgid "WARNING: Windows 95/98/ME detected"
-msgstr ":   Windows 95/98/ME"
-
-msgid "type  :help windows95<Enter>  for info on this"
-msgstr ":help windows95<Enter>              "
-
 # msgstr "E444: "
 msgid "Already only one window"
 msgstr "   "
@@ -6626,6 +6664,10 @@ msgstr "E236:  %s  "
 msgid "E473: Internal error"
 msgstr "E473:  "
 
+#, c-format
+msgid "E685: Internal error: %s"
+msgstr "E685:  : %s"
+
 msgid "Interrupted"
 msgstr ""
 
@@ -6915,8 +6957,9 @@ msgstr "E592: 'winwidth'      'winminwidth'"
 msgid "E80: Error while writing"
 msgstr "E80:    "
 
-msgid "Zero count"
-msgstr " "
+# msgstr "E396: "
+msgid "E939: Positive count required"
+msgstr "E939:   "
 
 msgid "E81: Using <SID> not in a script context"
 msgstr "E81: <SID>     "
@@ -6930,10 +6973,6 @@ msgstr "E463:     "
 msgid "E744: NetBeans does not allow changes in read-only files"
 msgstr "E744: NetBeans       "
 
-#, c-format
-msgid "E685: Internal error: %s"
-msgstr "E685:  : %s"
-
 msgid "E363: pattern uses more memory than 'maxmempattern'"
 msgstr "E363:   ,  'maxmempattern', '"
 
--- a/src/po/uk.po
+++ b/src/po/uk.po
@@ -1,6 +1,8 @@
 #
 # Ukrainian Vim translation [uk]
 #
+# Original translations
+#
 # Copyright (C) 2001 Bohdan Vlasyuk <bohdan@vstu.edu.ua>
 # Bohdan donated this work to be distributed with Vim under the Vim license.
 #
@@ -12,7 +14,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: vim 8.0\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2016-09-12 18:50+0300\n"
+"POT-Creation-Date: 2017-07-12 12:22+0300\n"
 "PO-Revision-Date: 2010-06-18 21:53+0300\n"
 "Last-Translator: Анатолій Сахнік <sakhnik@gmail.com>\n"
 "Language-Team: Bohdan Vlasyuk <bohdan@vstu.edu.ua>\n"
@@ -241,7 +243,8 @@ msgid "E917: Cannot use a callback with 
 msgstr "E917: Не можна використати зворотній виклик у %s()"
 
 msgid "E912: cannot use ch_evalexpr()/ch_sendexpr() with a raw or nl channel"
-msgstr "E912: не можна використати ch_evalexpr()/ch_sendexpr() з raw чи nl каналом"
+msgstr ""
+"E912: не можна використати ch_evalexpr()/ch_sendexpr() з raw чи nl каналом"
 
 msgid "E906: not an open channel"
 msgstr "E906: не відкритий канал"
@@ -433,6 +436,9 @@ msgstr "Пошук у: %s"
 msgid "Scanning tags."
 msgstr "Пошук серед міток."
 
+msgid "match in file"
+msgstr "збіг у файлі"
+
 msgid " Adding"
 msgstr " Додається"
 
@@ -523,6 +529,12 @@ msgstr "E690: Пропущено «in» після :for"
 msgid "E108: No such variable: \"%s\""
 msgstr "E108: Змінної немає: «%s»"
 
+#. For historic reasons this error is not given for a list or dict.
+#. * E.g., the b: dict could be locked/unlocked.
+#, c-format
+msgid "E940: Cannot lock or unlock variable %s"
+msgstr "E940: Неможливо заблокувати чи розблокувати змінну %s"
+
 msgid "E743: variable nested too deep for (un)lock"
 msgstr "E743: Змінна має забагато вкладень щоб бути за-/відкритою."
 
@@ -708,12 +720,6 @@ msgid "&Ok"
 msgstr "&O:Гаразд"
 
 #, c-format
-msgid "+-%s%3ld line: "
-msgid_plural "+-%s%3ld lines: "
-msgstr[0] "+-%s%3ld рядків: "
-msgstr[1] "+-%s%3ld рядків: "
-
-#, c-format
 msgid "E700: Unknown function: %s"
 msgstr "E700: Невідома функція: %s"
 
@@ -761,8 +767,8 @@ msgstr "E727: Початок за кінцем"
 msgid "<empty>"
 msgstr "<нічого>"
 
-msgid "E240: No connection to Vim server"
-msgstr "E240: Немає з'єднання із сервером Vim"
+msgid "E240: No connection to the X server"
+msgstr "E240: Немає з'єднання із сервером X"
 
 #, c-format
 msgid "E241: Unable to send to %s"
@@ -771,6 +777,12 @@ msgstr "E241: Не вдалося відіслати до %s"
 msgid "E277: Unable to read a server reply"
 msgstr "E277: Не вдалося прочитати відповідь сервера"
 
+msgid "E941: already started a server"
+msgstr "E941: сервер вже запущено"
+
+msgid "E942: +clientserver feature not available"
+msgstr "E942: можливість +clientserver відсутня"
+
 # msgstr "E14: "
 msgid "remove() argument"
 msgstr "аргумент remove()"
@@ -899,6 +911,14 @@ msgstr "Пошук «%s»"
 msgid "not found in '%s': \"%s\""
 msgstr "не знайдено у '%s': «%s»"
 
+#, c-format
+msgid "W20: Required python version 2.x not supported, ignoring file: %s"
+msgstr "W20: Потрібна версія python 2.x не підтримується, ігнорується файл: %s"
+
+#, c-format
+msgid "W21: Required python version 3.x not supported, ignoring file: %s"
+msgstr "W21: Потрібна версія python 3.x не підтримується, ігнорується файл: %s"
+
 msgid "Source Vim script"
 msgstr "Прочитати скрипт Vim"
 
@@ -1157,8 +1177,9 @@ msgstr " в одному рядку"
 msgid " on %ld lines"
 msgstr " в %ld рядках"
 
-msgid "E147: Cannot do :global recursive"
-msgstr "E147: :global не можна вживати рекурсивно"
+#. will increment global_busy to break out of the loop
+msgid "E147: Cannot do :global recursive with a range"
+msgstr "E147: :global не можна вживати рекурсивно з діапазоном"
 
 msgid "E148: Regular expression missing from global"
 msgstr "E148: У global бракує зразка"
@@ -1301,6 +1322,9 @@ msgstr "Інтервал задано навиворіт, щоб поміняти місцями — ГАРАЗД"
 msgid "E494: Use w or w>>"
 msgstr "E494: Спробуйте w або w>>"
 
+msgid "E943: Command table needs to be updated, run 'make cmdidxs'"
+msgstr "E943: Таблицю команд потрібно поновити, запустіть 'make cmdidxs'"
+
 msgid "E319: Sorry, the command is not available in this version"
 msgstr "E319: Вибачте, цієї команди немає у цій версії"
 
@@ -2085,12 +2109,6 @@ msgstr "E350: Не вдалося створити згортку методом 'foldmethod'"
 msgid "E351: Cannot delete fold with current 'foldmethod'"
 msgstr "E351: Не вдалося знищити згортку методом 'foldmethod'"
 
-#, c-format
-msgid "+--%3ld line folded "
-msgid_plural "+--%3ld lines folded "
-msgstr[0] "+--%3ld рядків згорнуто "
-msgstr[1] "+--%3ld рядків згорнуто "
-
 msgid "E222: Add to read buffer"
 msgstr "E222: Додати до буфера читання"
 
@@ -2893,6 +2911,10 @@ msgstr "E573: Використано некоректний ідентифікатор сервера: %s"
 msgid "E251: VIM instance registry property is badly formed.  Deleted!"
 msgstr "E251: Реквізит реєстру зразку VIM сформований неправильно.  Знищено!"
 
+#, c-format
+msgid "E938: Duplicate key in JSON: \"%s\""
+msgstr "E938: Повторення ключа в JSON: «%s»"
+
 # msgstr "E404: "
 #, c-format
 msgid "E696: Missing comma in List: %s"
@@ -3118,6 +3140,9 @@ msgstr "-T <термінал>\tВстановити тип терміналу у <термінал>"
 msgid "--not-a-term\t\tSkip warning for input/output not being a terminal"
 msgstr "--not-a-term\t\tПропустити попередження вводу/виводу не в термінал"
 
+msgid "--ttyfail\t\tExit if input or output is not a terminal"
+msgstr "--ttyfail\t\tВийти, якщо введення/виведення не в термінал"
+
 msgid "-u <vimrc>\t\tUse <vimrc> instead of any .vimrc"
 msgstr "-u <vimrc>\t\tВикористати поданий файл замість .vimrc"
 
@@ -3827,7 +3852,8 @@ msgstr ""
 "\n"
 "(1) Можливо, інша програма вже редагує цей самий файл. Якщо це так,\n"
 "    будьте обережні, щоб не залишилися два різні екземпляри\n"
-"    одного й того самого файлу після змін.  Вийдіть чи продовжуйте з обережністю.\n"
+"    одного й того самого файлу після змін.  Вийдіть чи продовжуйте з "
+"обережністю.\n"
 
 msgid "(2) An edit session for this file crashed.\n"
 msgstr "(2) Сеанс редагування цього файлу зазнав краху.\n"
@@ -4197,8 +4223,8 @@ msgstr "E662: Початок списку змін"
 msgid "E663: At end of changelist"
 msgstr "E663: Кінець списку змін"
 
-msgid "Type  :quit<Enter>  to exit Vim"
-msgstr "Уведіть :quit<Enter>  щоб вийти з Vim"
+msgid "Type  :qa!  and press <Enter> to abandon all changes and exit Vim"
+msgstr "Уведіть  :qa!  і натисніть <Enter>, щоб відкинути всі зміни і вийти з Vim"
 
 #, c-format
 msgid "1 line %sed 1 time"
@@ -4306,8 +4332,8 @@ msgid ""
 "Selected %s%ld of %ld Lines; %lld of %lld Words; %lld of %lld Chars; %lld of "
 "%lld Bytes"
 msgstr ""
-"Вибрано %s%ld з %ld рядків; %lld з %lld слів; %lld of %lld символів; %lld з %lld "
-"байтів"
+"Вибрано %s%ld з %ld рядків; %lld з %lld слів; %lld of %lld символів; %lld з "
+"%lld байтів"
 
 #, c-format
 msgid "Col %s of %s; Line %ld of %ld; Word %lld of %lld; Byte %lld of %lld"
@@ -4318,8 +4344,8 @@ msgid ""
 "Col %s of %s; Line %ld of %ld; Word %lld of %lld; Char %lld of %lld; Byte "
 "%lld of %lld"
 msgstr ""
-"Колонка %s з %s; рядок %ld з %ld; слово %lld з %lld; символ %lld of %lld; байт "
-"%lld з %lld"
+"Колонка %s з %s; рядок %ld з %ld; слово %lld з %lld; символ %lld of %lld; "
+"байт %lld з %lld"
 
 #, c-format
 msgid "(+%ld for BOM)"
@@ -4557,9 +4583,6 @@ msgstr "Помилка вводу/виводу"
 msgid "Message"
 msgstr "Повідомлення"
 
-msgid "'columns' is not 80, cannot execute external commands"
-msgstr "'columns' не 80, не можна виконувати зовнішні команди"
-
 # msgstr "E364: "
 msgid "E237: Printer selection failed"
 msgstr "E237: Не вдалося вибрати принтер"
@@ -4839,6 +4862,12 @@ msgstr "E369: Некоректний елемент у %s%%[]"
 msgid "E769: Missing ] after %s["
 msgstr "E769: Бракує ] після %s["
 
+msgid "E944: Reverse range in character class"
+msgstr "E944: Зворотній діапазон у класі символів"
+
+msgid "E945: Range too large in character class"
+msgstr "E945: Завеликий діапазон у класі символів"
+
 #, c-format
 msgid "E53: Unmatched %s%%("
 msgstr "E53: Немає пари %s%%("
@@ -4867,6 +4896,9 @@ msgstr "E69: Пропущено ] після %s%%["
 msgid "E70: Empty %s%%[]"
 msgstr "E70: %s%%[] порожній"
 
+msgid "E65: Illegal back reference"
+msgstr "E65: Некоректне зворотне посилання"
+
 # msgstr "E382: "
 msgid "E339: Pattern too long"
 msgstr "E339: Зразок занадто довгий"
@@ -4907,9 +4939,6 @@ msgstr "E63: Некоректно вжито \\_"
 msgid "E64: %s%c follows nothing"
 msgstr "E64: Після %s%c нічого немає"
 
-msgid "E65: Illegal back reference"
-msgstr "E65: Некоректне зворотне посилання"
-
 msgid "E68: Invalid character after \\z"
 msgstr "E68: Неправильний символ після \\z"
 
@@ -5520,10 +5549,31 @@ msgstr "E783: Повторено символ у елементі MAP"
 msgid "No Syntax items defined for this buffer"
 msgstr "Для буфера не визначено елементів синтаксису"
 
+msgid "syntax conceal on"
+msgstr "маскування синтаксису увімк"
+
+msgid "syntax conceal off"
+msgstr "маскування синтаксису вимк"
+
 #, c-format
 msgid "E390: Illegal argument: %s"
 msgstr "E390: Неправильний аргумент: %s"
 
+msgid "syntax case ignore"
+msgstr "синтаксис ігнорувати регістр"
+
+msgid "syntax case match"
+msgstr "синтаксис дотримуватися регістру"
+
+msgid "syntax spell toplevel"
+msgstr "синтаксис перевіряти всюди"
+
+msgid "syntax spell notoplevel"
+msgstr "синтаксис не перевіряти"
+
+msgid "syntax spell default"
+msgstr "синтаксис початково"
+
 msgid "syntax iskeyword "
 msgstr "синтаксис iskeyword "
 
@@ -6140,6 +6190,10 @@ msgid "E126: Missing :endfunction"
 msgstr "E126: Бракує :endfunction"
 
 #, c-format
+msgid "W22: Text found after :endfunction: %s"
+msgstr "W22: Трапився текст після :endfunction: %s"
+
+#, c-format
 msgid "E707: Function name conflicts with variable: %s"
 msgstr "E707: Назва функції співпадає зі змінною: %s"
 
@@ -6162,16 +6216,6 @@ msgstr "E133: :return поза межами функції"
 msgid "E107: Missing parentheses: %s"
 msgstr "E107: Пропущено дужки: %s"
 
-# msgstr "E440: "
-# ---------------------------------------
-#. Only MS VC 4.1 and earlier can do Win32s
-msgid ""
-"\n"
-"MS-Windows 16/32-bit GUI version"
-msgstr ""
-"\n"
-"Версія з GUI для 16/32-розрядної Windows"
-
 msgid ""
 "\n"
 "MS-Windows 64-bit GUI version"
@@ -6455,12 +6499,6 @@ msgstr ":help register<Enter>     подальша інформація      "
 msgid "menu  Help->Sponsor/Register  for information    "
 msgstr "меню  Допомога->Спонсор/Реєстрація  подробиці      "
 
-msgid "WARNING: Windows 95/98/ME detected"
-msgstr "ЗАСТЕРЕЖЕННЯ: Ви користуєтеся Windows 95/98/ME"
-
-msgid "type  :help windows95<Enter>  for info on this"
-msgstr ":help windows95<Enter>    інформація про це        "
-
 # msgstr "E444: "
 msgid "Already only one window"
 msgstr "Це вже єдине вікно"
@@ -6626,6 +6664,10 @@ msgstr "E236: Шрифт «%s» не моноширинний"
 msgid "E473: Internal error"
 msgstr "E473: Внутрішня помилка"
 
+#, c-format
+msgid "E685: Internal error: %s"
+msgstr "E685: Внутрішня помилка: %s"
+
 msgid "Interrupted"
 msgstr "Перервано"
 
@@ -6915,8 +6957,9 @@ msgstr "E592: 'winwidth' не може бути меншим за 'winminwidth'"
 msgid "E80: Error while writing"
 msgstr "E80: Помилка під час запису"
 
-msgid "Zero count"
-msgstr "Нульова кількість"
+# msgstr "E396: "
+msgid "E939: Positive count required"
+msgstr "E939: Потрібна додатна кількість"
 
 msgid "E81: Using <SID> not in a script context"
 msgstr "E81: <SID> використовується не в контексті скрипту"
@@ -6930,10 +6973,6 @@ msgstr "E463: Не можна змінити захищений регіон"
 msgid "E744: NetBeans does not allow changes in read-only files"
 msgstr "E744: NetBeans не дозволяє змінювати захищені від запису файли"
 
-#, c-format
-msgid "E685: Internal error: %s"
-msgstr "E685: Внутрішня помилка: %s"
-
 msgid "E363: pattern uses more memory than 'maxmempattern'"
 msgstr "E363: Зразок використовує більше, ніж 'maxmempattern', пам'яті"
 
--- a/src/po/zh_CN.UTF-8.po
+++ b/src/po/zh_CN.UTF-8.po
@@ -17,8 +17,8 @@ msgstr ""
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2006-04-21 15:16+0800\n"
 "PO-Revision-Date: 2006-04-21 14:00+0800\n"
-"Last-Translator: Yuheng Xie <elephant@linux.net.cn>\n"
-"Language-Team: Simplified Chinese <i18n-translation@lists.linux.net.cn>\n"
+"Last-Translator: Yuheng Xie\n"
+"Language-Team: Simplified Chinese\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
 "Content-Transfer-Encoding: 8-bit\n"
--- a/src/po/zh_CN.cp936.po
+++ b/src/po/zh_CN.cp936.po
@@ -9,7 +9,7 @@
 #   Edyfox <edyfox@gmail.com>
 #   Yuheng Xie <elephant@linux.net.cn>
 #
-# Generated from zh_CN.po, DO NOT EDIT.
+# Generated from zh_CN.UTF-8.po, DO NOT EDIT.
 #
 msgid ""
 msgstr ""
@@ -17,8 +17,8 @@ msgstr ""
 "Report-Msgid-Bugs-To: \n"
 "POT-Creation-Date: 2006-04-21 15:16+0800\n"
 "PO-Revision-Date: 2006-04-21 14:00+0800\n"
-"Last-Translator: Yuheng Xie <elephant@linux.net.cn>\n"
-"Language-Team: Simplified Chinese <i18n-translation@lists.linux.net.cn>\n"
+"Last-Translator: Yuheng Xie\n"
+"Language-Team: Simplified Chinese\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=gbk\n"
 "Content-Transfer-Encoding: 8-bit\n"
@@ -2894,7 +2894,8 @@ msgstr "-X\t\t\tӵ X Server"
 msgid "--remote <files>\tEdit <files> in a Vim server if possible"
 msgstr "--remote <files>\tпܣ Vim ϱ༭ļ <files>"
 
-msgid "--remote-silent <files>  Same, don't complain if there is no server"
+msgid ""
+"--remote-silent <files>  Same, don't complain if there is no server"
 msgstr "--remote-silent <files>  ͬϣҲʱԹ"
 
 msgid ""