diff --git a/runtime/doc/cmdline.txt b/runtime/doc/cmdline.txt
index 0ed5cb3..c3627d4 100644
--- a/runtime/doc/cmdline.txt
+++ b/runtime/doc/cmdline.txt
@@ -1,4 +1,4 @@
-*cmdline.txt*   For Vim version 7.3.  Last change: 2012 Oct 11
+*cmdline.txt*   For Vim version 7.3.  Last change: 2013 Jan 17
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -714,10 +714,15 @@
 Visual Mode and Range					*v_:*
 
 {Visual}:	Starts a command-line with the Visual selected lines as a
-		range.  The code ":'<,'>" is used for this range, which makes
+		range.  The code `:'<,'>` is used for this range, which makes
 		it possible to select a similar line from the command-line
 		history for repeating a command on different Visually selected
 		lines.
+		When Visual mode was already ended, a short way to use the
+		Visual area for a range is `:*`.  This requires that "*" does
+		not appear in 'cpo', see |cpo-star|.  Otherwise you will have
+		to type `:'<,'>`
+
 
 ==============================================================================
 5. Ex command-line flags				*ex-flags*
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 7594ea9..9819d9b 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt*	For Vim version 7.3.  Last change: 2012 Dec 05
+*eval.txt*	For Vim version 7.3.  Last change: 2013 Jan 23
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -5943,8 +5943,9 @@
 		If there are no matching tags, then an empty list is returned.
 
 		To get an exact tag match, the anchors '^' and '$' should be
-		used in {expr}.  Refer to |tag-regexp| for more information
-		about the tag search regular expression pattern.
+		used in {expr}.  This also make the function work faster.
+		Refer to |tag-regexp| for more information about the tag
+		search regular expression pattern.
 
 		Refer to |'tags'| for information about how the tags file is
 		located by Vim. Refer to |tags-file-format| for the format of
diff --git a/runtime/doc/help.txt b/runtime/doc/help.txt
index 4860eb2..bca3364 100644
--- a/runtime/doc/help.txt
+++ b/runtime/doc/help.txt
@@ -1,4 +1,4 @@
-*help.txt*	For Vim version 7.3.  Last change: 2010 Jul 20
+*help.txt*	For Vim version 7.3.  Last change: 2012 Dec 06
 
 			VIM - main help file
 									 k
@@ -195,12 +195,12 @@
 						*standard-plugin-list*
 Standard plugins ~
 |pi_getscript.txt| Downloading latest version of Vim scripts
-|pi_gzip.txt|	   Reading and writing compressed files
-|pi_netrw.txt|	   Reading and writing files over a network
-|pi_paren.txt|	   Highlight matching parens
-|pi_tar.txt|	   Tar file explorer
+|pi_gzip.txt|      Reading and writing compressed files
+|pi_netrw.txt|     Reading and writing files over a network
+|pi_paren.txt|     Highlight matching parens
+|pi_tar.txt|       Tar file explorer
 |pi_vimball.txt|   Create a self-installing Vim script
-|pi_zip.txt|	   Zip archive explorer
+|pi_zip.txt|       Zip archive explorer
 
 LOCAL ADDITIONS:				*local-additions*
 
diff --git a/runtime/doc/if_pyth.txt b/runtime/doc/if_pyth.txt
index ec7d239..23b6b38 100644
--- a/runtime/doc/if_pyth.txt
+++ b/runtime/doc/if_pyth.txt
@@ -1,4 +1,4 @@
-*if_pyth.txt*   For Vim version 7.3.  Last change: 2012 Sep 23
+*if_pyth.txt*   For Vim version 7.3.  Last change: 2013 Jan 30
 
 
 		  VIM REFERENCE MANUAL    by Paul Moore
@@ -54,8 +54,8 @@
 	EOF
 	endfunction
 <
-Note: Python is very sensitive to the indenting.  Also make sure the "class"
-line and "EOF" do not have any indent.
+Note: Python is very sensitive to the indenting.  Make sure the "class" line
+and "EOF" do not have any indent.
 
 							*:pyfile* *:pyf*
 :[range]pyf[ile] {file}
diff --git a/runtime/doc/insert.txt b/runtime/doc/insert.txt
index bf020fd..4db4341 100644
--- a/runtime/doc/insert.txt
+++ b/runtime/doc/insert.txt
@@ -1,4 +1,4 @@
-*insert.txt*    For Vim version 7.3.  Last change: 2012 Jul 10
+*insert.txt*    For Vim version 7.3.  Last change: 2013 Jan 09
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -380,7 +380,9 @@
 end of the line, it will be put on the last character in the line.  In
 mappings it's often better to use <Esc> (first put an "x" in the text, <Esc>
 will then always put the cursor on it).  Or use CTRL-\ CTRL-O, but then
-beware of the cursor possibly being beyond the end of the line.
+beware of the cursor possibly being beyond the end of the line.  Note that the
+command following CTRL-\ CTRL-O can still move the cursor, it is not restored
+to its original position.
 
 The CTRL-O command takes you to Normal mode.  If you then use a command enter
 Insert mode again it normally doesn't nest.  Thus when typing "a<C-O>a" and
diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index c3cc087..3beb2b0 100644
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1,4 +1,4 @@
-*options.txt*	For Vim version 7.3.  Last change: 2012 Oct 21
+*options.txt*	For Vim version 7.3.  Last change: 2013 Jan 30
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -3562,7 +3562,7 @@
 
 	Windows +multibyte only:		*guifontwide_win_mbyte*
 
-	If set and vaild, 'guifontwide' is used for IME instead of 'guifont'.
+	If set and valid, 'guifontwide' is used for IME instead of 'guifont'.
 
 						*'guiheadroom'* *'ghr'*
 'guiheadroom' 'ghr'	number	(default 50)
@@ -3824,7 +3824,8 @@
 	|hl-ModeMsg|	 M  Mode (e.g., "-- INSERT --")
 	|hl-LineNr|	 n  line number for ":number" and ":#" commands, and
 			    when 'number' or 'relativenumber' option is set.
-	|hl-CursorLineNr|  N like n for when 'cursorline' is set.
+	|hl-CursorLineNr|  N like n for when 'cursorline' or 'relativenumber' is
+			    set.
 	|hl-Question|	 r  |hit-enter| prompt and yes/no questions
 	|hl-StatusLine|	 s  status line of current window |status-line|
 	|hl-StatusLineNC| S  status lines of not-current windows
@@ -4717,8 +4718,10 @@
 			local to buffer
 			{not in Vi}
 	Characters that form pairs.  The |%| command jumps from one to the
-	other.  Currently only single byte character pairs are allowed, and
-	they must be different.  The characters must be separated by a colon.
+	other.
+	Only character pairs are allowed that are different, thus you cannot
+	jump between two double quotes.
+	The characters must be separated by a colon.
 	The pairs must be separated by a comma.  Example for including '<' and
 	'>' (HTML): >
 		:set mps+=<:>
diff --git a/runtime/doc/pattern.txt b/runtime/doc/pattern.txt
index 5c4a790..6040ba8 100644
--- a/runtime/doc/pattern.txt
+++ b/runtime/doc/pattern.txt
@@ -1,4 +1,4 @@
-*pattern.txt*   For Vim version 7.3.  Last change: 2012 May 18
+*pattern.txt*   For Vim version 7.3.  Last change: 2013 Jan 25
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -993,6 +993,8 @@
 	[xyz]		any 'x', 'y' or 'z'
 	[a-zA-Z]$	any alphabetic character at the end of a line
 	\c[a-z]$	same
+	[А-яЁё]		Russian alphabet (with utf-8 and cp1251)
+
 								*/[\n]*
 	With "\_" prepended the collection also includes the end-of-line.
 	The same can be done by including "\n" in the collection.  The
diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt
index 5b56585..b48307d 100644
--- a/runtime/doc/syntax.txt
+++ b/runtime/doc/syntax.txt
@@ -1,4 +1,4 @@
-*syntax.txt*	For Vim version 7.3.  Last change: 2012 Nov 28
+*syntax.txt*	For Vim version 7.3.  Last change: 2013 Jan 30
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -3903,9 +3903,9 @@
 These extra regular expression items are available in region patterns:
 
 						*/\z(* */\z(\)* *E50* *E52*
-    \z(\)	Marks the sub-expression as "external", meaning that it is can
-		be accessed from another pattern match.  Currently only usable
-		in defining a syntax region start pattern.
+    \z(\)	Marks the sub-expression as "external", meaning that it can be
+		accessed from another pattern match.  Currently only usable in
+		defining a syntax region start pattern.
 
 					*/\z1* */\z2* */\z3* */\z4* */\z5*
     \z1  ...  \z9			*/\z6* */\z7* */\z8* */\z9* *E66* *E67*
@@ -4592,7 +4592,8 @@
 LineNr		Line number for ":number" and ":#" commands, and when 'number'
 		or 'relativenumber' option is set.
 							*hl-CursorLineNr*
-CursorLineNr	Like LineNr when 'cursorline' is set for the cursor line.
+CursorLineNr	Like LineNr when 'cursorline' or 'relativenumber' is set for
+		the cursor line.
 							*hl-MatchParen*
 MatchParen	The character under the cursor or just before it, if it
 		is a paired bracket, and its match. |pi_paren.txt|
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index 47dbce6..a4737ac 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 7.3.  Last change: 2012 Dec 05
+*todo.txt*      For Vim version 7.3.  Last change: 2013 Jan 30
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -34,9 +34,8 @@
 							*known-bugs*
 -------------------- Known bugs and current work -----------------------
 
-On external command get the message: 
-     SIGCHLD handler called (some thread has SIGCHLD unblocked)
-From MzScheme
+Several syntax file match "^\s*" which may get underlined if that's in the
+highlight group.  Add a "\zs" after it?
 
 Go through more coverity reports.
 
@@ -53,30 +52,8 @@
 - The word that was selected (empty if abandoned complete)
 - Type of completion: tag, omnifunc, user func.
 
-Patch for matchit.vim. (Mike Morearty, 2012 Nov 28)
-
-Patch to fix that the QuitPre autocommand clears the quitmore flag. (Techlive
-Zheng, 2012 Nov 28)
-
-":gundo" command: global undo.  Undoes changes spread over multiple files in
-the order they were made.  Also ":gredo".  Both with a count.  Useful when
-tests fail after making changes and you forgot in which files.
-
-Patch to make updating tabline faster. (Arseny Kapoulkine, 2012 Oct 3)
-Also remove the "rc" variable.
-
-Patch to make "- register not always used. (Christian Brabandt, 2012 Nov 28)
-
-Crash with vimdiff. (Don Cruickshank, 2012 Sep 23)
-
-Patch to support subdirectories for help files. (Charles Campbell, 2012 Nov
-21)
-
 Patch for mzscheme.  (Sergey Khorev, 2012 Nov 19)
-What about ignoring SEGV?
-
-Win32: use 'guifontwide' for IME composition. (Taro Muraoka, 2012 Sep 30)
-Update Oct 2.
+Updated patch 2013 Jan 28.
 
 Patch to fix :s command with confirm and typing "a". (Christian Brabandt, 2012
 Oct 28)
@@ -88,24 +65,45 @@
 Patch to make multibyte input work on Win32 console when codepage differs from
 'encoding'. (Ken Takata, 2012 Sep 29)
 
-It's possible to defined an input() function that overrides the built-in one.
+Patch for building with Ruby and Cygwin. (Ken Takata, 2013 Jan 9)
+
+Patch to make 'relativenumber' show the current lnum instead of zero.
+(Nazri Ramliy, 2013 Jan 29)
+
+It's possible to define an input() function that overrides the built-in one.
 (ZyX, 2012 Sep 28)
 
+Patch to add sha256() function. (Tyru, 2013 Jan 8)
+
+Patch to make pyeval() print error messages. (ZyX, 2013 Jan 12)
+
 Win32: When a directory name contains an exclamation mark, completion doesn't
 complete the contents of the directory.  No escaping for the "!"? (Jan
 Stocker, 2012 Jan 5)
 
+Patch for Win32 clipboard under Cygwin. (Frodak Baksik, Feb 15)
+    Sutcliffe says it works well.
+    Update 2007 May 22 for Vim 7.1
+    Update 2008 Dec 2008 for Vim 7.2.xx (Sharonov)
+    Update by Ken Takata (2012 Dec 31, 2013 Jan 4, 2013 Jan 26)
+
 Problem parsing expression with function(). (Andy Wokula, 2012 Nov 22)
 Patch by Christian Brabandt, Nov 22.  Tests in another patch, Nov 23.
 
+Patch to add default value to getbufvar() et al. (Hirohito Higashi, 2013 Jan 1)
+
 Problem caused by patch 7.3.638: window->open does not update window
 correctly. Issue 91.
 
+Patch to fix compiler warnings for MingW 4.5.3. (Ken Takata, 2013 Jan 26)
+
 Do allow real tags above the !_TAG entries. Undo older patch. Issue 90.
 
 Patch to support 'u' in interactive substitute. (Christian Brabandt, 2012 Sep
 28)  With tests: Oct 9.
 
+Patch to make fold updates much faster. (Christian Brabandt, 2012 Dec)
+
 Patch for IME handling, adds 'imactivatefunc' and 'imstatusfunc' option.
 (Yukihiro Nakadaira, 2012 Aug 16)
 Patch to improve IME handling. (Yasuhiro Matsumoto, 2012 Jul 18)
@@ -136,6 +134,8 @@
 It's probably a good idea to make a negative value for 'sts' use the value of
 'sw'.  Patch by So8res, Oct 3 2012
 
+patch to add "combine" flag to  syntax commands. (so8res, 2012 Dec 6)
+
 Syntax update problem in one buffer opened in two windows, bottom window is
 not correctly updated. (Paul Harris, 2012 Feb 27)
 
@@ -145,9 +145,22 @@
 Patch to add getsid(). (Tyru, 2011 Oct 2)  Do we want this?  Update Oct 4.
 Or use expand('<sid>')?
 
+Patch to make confirm() display colors. (Christian Brabandt, 2012 Nov 9)
+
+Patch to add functions for signs. (Christian Brabandt,, 2013 Jan 27)
+
+Patch to use directX to draw text on Windows.  Adds the 'directx' option.
+(Taro Muraoka, 2013 Jan 25)
+
+b:undo_ftplugin cannot call a script-local function. (Boris Danilov, 2013 Jan
+7)
+
 Patch for :tabcloseleft, after closing a tab go to left tab. (William Bowers,
 2012 Aug 4)
 
+Patch to improve equivalence classes in regexp patterns.
+(Christian Brabandt, 2013 Jan 16, update Jan 17)
+
 Patch with suggestions for starting.txt. (Tony Mechelynck, 2012 Oct 24)
 But use Gnome instead of GTK?
 
@@ -160,6 +173,7 @@
 
 MS-Windows ACL support doesn't work well.  Patch from Ken Takata, 2012 Aug 29.
 Update Aug 31.
+Another patch for MingW, 2012 Dec 29.
 
 MS-Windows resizing problems:
 - Windows window on screen positioning: Patch by Yukihiro Nakadaira, 2012 Jun
@@ -260,7 +274,7 @@
 
 Patch to add ":py3do". (Lilydjwg, 2012 Apr 7)
 
-`[ moves to character after insert, instead of the last inserted character.
+`] moves to character after insert, instead of the last inserted character.
 (Yukihiro Nakadaira, 2011 Dec 9)
 
 Plugin for Modeleasy. (Massimiliano Tripoli, 2011 Nov 29)
@@ -388,6 +402,11 @@
 
 Make 'formatprg' global-local. (Sung Pae)
 
+When a buffer-local mapping is used, but a global mapping starts with the same
+characters, Vim currently waits for the next typed character to find out if
+the global mapping matches.  It is probably better to let the local mapping
+win and not wait. (discussion with Andy Wokula, 2013 Jan 30)
+
 When doing "redir => s:foo" in a script and then "redir END" somewhere else
 (e.g. in a function) it can't find s:foo.
 
@@ -516,6 +535,9 @@
 Assume the system converts between the actual encoding of the filesystem to
 the system encoding (usually utf-8).
 
+Patch to add GUI colors to the terminal, when it supports it. (ZyX, 2013 Jan
+26)
+
 Problem producing tags file when hebrew.frx is present.  It has a BOM.
 Results in E670. (Tony Mechelynck, 2010 May 2)
 
@@ -714,7 +736,7 @@
 Patch for displaying 0x200c and 0x200d. (Ali Gholami Rudi, 2009 May 6)
 Probably needs a bit of work.
 
-List of encoding aliases. (Takao Fujiware, 2009 Jul 18)
+List of encoding aliases. (Takao Fujiwara, 2009 Jul 18)
 Are they all OK?  Update Jul 22.
 
 Win32: Improved Makefile for MSVC. (Leonardo Valeri Manera, 2010 Aug 18)
@@ -744,7 +766,7 @@
 When starting Vim with "gvim -f -u non_existent_file > foo.txt" there are a
 few control characters in the output. (Dale Wiles, 2009 May 28)
 
-'cmdwinheight is only used in last window when 'winheight' is a large value.
+'cmdwinheight' is only used in last window when 'winheight' is a large value.
 (Tony Mechelynck, 2009 Apr 15)
 
 Status line containing winnr() isn't updated when splitting the window (Clark
@@ -1245,11 +1267,6 @@
 Changes for Win32 makefile. (Mike Williams, 2007 Jan 22, Alexei Alexandrov,
 2007 Feb 8)
 
-Patch for Win32 clipboard under Cygwin. (Frodak Baksik, Feb 15)
-    Sutcliffe says it works well.
-    Update 2007 May 22 for Vim 7.1
-    Update 2008 Dec 2008 for Vim 7.2.xx (Sharonov)
-
 Win32: Can't complete shell command names.  Why is setting xp_context in
 set_one_cmd_context() inside #ifndef BACKSLASH_IN_FILENAME?
 
@@ -1664,7 +1681,8 @@
 2010 Jun 30)
 
 
-At next release:
+At next release 7.4:
+-   Build a huge version by default.
 -   Rename src/Makefile and create a new one like toplevel Makefile that
     creates auto/config.mk when it's not there? (Ben Schmidt, 2011 Feb 11)
 -   Improve plugin handling: Automatic updates, handle dependencies?
@@ -4297,6 +4315,7 @@
 
 
 Searching:
+9   Should have an option for :vimgrep to find lines without a match.
 8   Add "g/" and "gb" to search for a pattern in the Visually selected text?
     "g?" is already used for rot13.
     The vis.vim script has a ":S" command that does something like this.
@@ -4428,6 +4447,9 @@
 
 
 Undo:
+9   ":gundo" command: global undo.  Undoes changes spread over multiple files
+    in the order they were made.  Also ":gredo".  Both with a count.  Useful
+    when tests fail after making changes and you forgot in which files.
 9   After undo/redo, in the message show whether the buffer is modified or
     not.
 8   Use timestamps for undo, so that a version a certain time ago can be found
@@ -4612,6 +4634,7 @@
 7   There is 'titleold', why is there no 'iconold'? (Chazelas)
 7   Make 'scrolloff' a global-local option, so that it can be different in the
     quickfix window, for example. (Gary Holloway)
+    Also do 'sidescrolloff'.
 
 
 External commands:
diff --git a/runtime/doc/various.txt b/runtime/doc/various.txt
index d339adc..d602af6 100644
--- a/runtime/doc/various.txt
+++ b/runtime/doc/various.txt
@@ -1,4 +1,4 @@
-*various.txt*   For Vim version 7.3.  Last change: 2012 Dec 05
+*various.txt*   For Vim version 7.3.  Last change: 2012 Dec 06
 
 
 		  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -174,27 +174,37 @@
 			the command-line.  {commands} are executed like they
 			are typed.  For undo all commands are undone together.
 			Execution stops when an error is encountered.
+
 			If the [!] is given, mappings will not be used.
+			Without it, when this command is called from a
+			non-remappable mapping (|:noremap|), the argument can
+			be mapped anyway.
+
 			{commands} should be a complete command.  If
 			{commands} does not finish a command, the last one
 			will be aborted as if <Esc> or <C-C> was typed.
-			The display isn't updated while ":normal" is busy.
 			This implies that an insert command must be completed
 			(to start Insert mode, see |:startinsert|).  A ":"
 			command must be completed as well.  And you can't use
 			"Q" or "gQ" to start Ex mode.
+
+			The display is not updated while ":normal" is busy.
+
 			{commands} cannot start with a space.  Put a count of
 			1 (one) before it, "1 " is one space.
+
 			The 'insertmode' option is ignored for {commands}.
+
 			This command cannot be followed by another command,
 			since any '|' is considered part of the command.
+
 			This command can be used recursively, but the depth is
 			limited by 'maxmapdepth'.
-			When this command is called from a non-remappable
-			mapping |:noremap|, the argument can be mapped anyway.
+
 			An alternative is to use |:execute|, which uses an
 			expression as argument.  This allows the use of
 			printable characters to represent special characters.
+
 			Example: >
 				:exe "normal \<c-w>\<c-w>"
 <			{not in Vi, of course}
diff --git a/runtime/indent/sqlanywhere.vim b/runtime/indent/sqlanywhere.vim
index edc9650..d11c54b 100644
--- a/runtime/indent/sqlanywhere.vim
+++ b/runtime/indent/sqlanywhere.vim
@@ -1,7 +1,7 @@
 " Vim indent file
 " Language:    SQL
 " Maintainer:  David Fishburn <dfishburn dot vim at gmail dot com>
-" Last Change: 2012 Dec 05
+" Last Change: 2012 Dec 06
 " Version:     3.0
 " Download:    http://vim.sourceforge.net/script.php?script_id=495
 
@@ -36,8 +36,6 @@
 endif
 let b:did_indent     = 1
 let b:current_indent = "sqlanywhere"
-let s:keepcpo= &cpo
-set cpo&vim
 
 setlocal indentkeys-=0{
 setlocal indentkeys-=0}
@@ -57,6 +55,13 @@
 " in the indentkeys is typed
 setlocal indentexpr=GetSQLIndent()
 
+" Only define the functions once.
+if exists("*GetSQLIndent")
+    finish
+endif
+let s:keepcpo= &cpo
+set cpo&vim
+
 " List of all the statements that start a new block.
 " These are typically words that start a line.
 " IS is excluded, since it is difficult to determine when the
diff --git a/runtime/menu.vim b/runtime/menu.vim
index 2b5acb9..656212e 100644
--- a/runtime/menu.vim
+++ b/runtime/menu.vim
@@ -2,7 +2,7 @@
 " You can also use this as a start for your own set of menus.
 "
 " Maintainer:	Bram Moolenaar <Bram@vim.org>
-" Last Change:	2012 Oct 21
+" Last Change:	2012 Dec 06
 
 " Note that ":an" (short for ":anoremenu") is often used to make a menu work
 " in all modes and avoid side effects from mappings defined by the user.
@@ -132,7 +132,7 @@
 an 10.620 &File.E&xit<Tab>:qa			:confirm qa<CR>
 
 func! <SID>SelectAll()
-  exe "norm gg" . (&slm == "" ? "VG" : "gH\<C-O>G")
+  exe "norm! gg" . (&slm == "" ? "VG" : "gH\<C-O>G")
 endfunc
 
 func! s:FnameEscape(fname)
diff --git a/runtime/syntax/c.vim b/runtime/syntax/c.vim
index 6f99004..501c91a 100644
--- a/runtime/syntax/c.vim
+++ b/runtime/syntax/c.vim
@@ -1,7 +1,7 @@
 " Vim syntax file
 " Language:	C
 " Maintainer:	Bram Moolenaar <Bram@vim.org>
-" Last Change:	2012 May 03
+" Last Change:	2012 Dec 14
 
 " Quit when a (custom) syntax file was already loaded
 if exists("b:current_syntax")
@@ -93,16 +93,16 @@
 
 " This should be before cErrInParen to avoid problems with #define ({ xxx })
 if exists("c_curly_error")
-  syntax match cCurlyError "}"
-  syntax region	cBlock		start="{" end="}" contains=ALLBUT,cBadBlock,cCurlyError,@cParenGroup,cErrInParen,cCppParen,cErrInBracket,cCppBracket,cCppString,@Spell fold
+  syn match cCurlyError "}"
+  syn region	cBlock		start="{" end="}" contains=ALLBUT,cBadBlock,cCurlyError,@cParenGroup,cErrInParen,cCppParen,cErrInBracket,cCppBracket,cCppString,@Spell fold
 else
-  syntax region	cBlock		start="{" end="}" transparent fold
+  syn region	cBlock		start="{" end="}" transparent fold
 endif
 
 "catch errors caused by wrong parenthesis and brackets
 " also accept <% for {, %> for }, <: for [ and :> for ] (C99)
 " But avoid matching <::.
-syn cluster	cParenGroup	contains=cParenError,cIncluded,cSpecial,cCommentSkip,cCommentString,cComment2String,@cCommentGroup,cCommentStartError,cUserCont,cUserLabel,cBitField,cOctalZero,@cCppOutInGroup,cFormat,cNumber,cFloat,cOctal,cOctalError,cNumbersCom
+syn cluster	cParenGroup	contains=cParenError,cIncluded,cSpecial,cCommentSkip,cCommentString,cComment2String,@cCommentGroup,cCommentStartError,cUserLabel,cBitField,cOctalZero,@cCppOutInGroup,cFormat,cNumber,cFloat,cOctal,cOctalError,cNumbersCom
 if exists("c_no_curly_error")
   syn region	cParen		transparent start='(' end=')' end='}'me=s-1 contains=ALLBUT,cBlock,@cParenGroup,cCppParen,cCppString,@Spell
   " cCppParen: same as cParen but ends at end-of-line; used in cDefine
diff --git a/runtime/syntax/php.vim b/runtime/syntax/php.vim
index 956197d..ac3b20c 100644
--- a/runtime/syntax/php.vim
+++ b/runtime/syntax/php.vim
@@ -1,7 +1,7 @@
 " Vim syntax file
 " Language: php PHP 3/4/5
 " Maintainer: Jason Woofenden <jason@jasonwoof.com>
-" Last Change: Oct 20, 2011
+" Last Change: Dec 11, 2012
 " URL: https://gitorious.org/jasonwoof/vim-syntax/blobs/master/php.vim
 " Former Maintainers: Peter Hodge <toomuchphp-vim@yahoo.com>
 "         Debian VIM Maintainers <pkg-vim-maintainers@lists.alioth.debian.org>
@@ -182,6 +182,7 @@
 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
