changeset 7782:3a99194bd187 v7.4.1188

commit https://github.com/vim/vim/commit/009d84a34f3678ec93921bee3bc05be2fd606264 Author: Bram Moolenaar <Bram@vim.org> Date: Thu Jan 28 14:12:00 2016 +0100 patch 7.4.1188 Problem: Using older JSON standard. Solution: Update the link. Adjust the text a bit.
author Christian Brabandt <cb@256bit.org>
date Thu, 28 Jan 2016 14:15:04 +0100
parents 44dda9870e07
children 78bd525c219f
files runtime/doc/eval.txt src/json.c src/version.c
diffstat 3 files changed, 16 insertions(+), 18 deletions(-) [+]
line wrap: on
line diff
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt*	For Vim version 7.4.  Last change: 2016 Jan 24
+*eval.txt*	For Vim version 7.4.  Last change: 2016 Jan 28
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -2842,6 +2842,7 @@ empty({expr})						*empty()*
 		Return the Number 1 if {expr} is empty, zero otherwise.
 		A |List| or |Dictionary| is empty when it does not have any
 		items.	A Number is empty when its value is zero.
+		|v:false|, |v:none| and |v:null| are empty, |v:true| is not.
 		For a long |List| this is much faster than comparing the
 		length with zero.
 
@@ -4252,16 +4253,21 @@ jsondecode({string})					*jsondecode()*
 		JSON and Vim values.
 		The decoding is permissive:
 		- A trailing comma in an array and object is ignored.
-		- An empty item in an array results in v:none.
-		- When an object name is not a string it is converted to a
-		  string.  E.g. the number 123 is used as the string "123".
+		- An empty item in an array, two commas with nothing or white
+		  space in between, results in v:none.
+		- When an object member name is not a string it is converted
+		  to a string.  E.g. the number 123 is used as the string
+		  "123".
 		- More floating point numbers are recognized, e.g. "1." for
 		  "1.0".
+		The result must be a valid Vim type:
+		- An empty object member name is not allowed.
+		- Duplicate object member names are not allowed.
 
 jsonencode({expr})					*jsonencode()*
 		Encode {expr} as JSON and return this as a string.
 		The encoding is specified in:
-		http://www.ietf.org/rfc/rfc4627.txt
+		https://tools.ietf.org/html/rfc7159.html
 		Vim values are converted as follows:
 		   Number		decimal number
 		   Float		floating point number
@@ -5889,18 +5895,8 @@ shellescape({string} [, {special}])			*s
 shiftwidth()						*shiftwidth()*
 		Returns the effective value of 'shiftwidth'. This is the
 		'shiftwidth' value unless it is zero, in which case it is the
-		'tabstop' value.  To be backwards compatible in indent
-		plugins, use this: >
-			if exists('*shiftwidth')
-			  func s:sw()
-			    return shiftwidth()
-			  endfunc
-			else
-			  func s:sw()
-			    return &sw
-			  endfunc
-			endif
-<		And then use s:sw() instead of &sw.
+		'tabstop' value.  This function was introduced with patch
+		7.3.694 in 2012, everybody should have it by now.
 
 
 simplify({filename})					*simplify()*
--- a/src/json.c
+++ b/src/json.c
@@ -10,7 +10,7 @@
 /*
  * json.c: Encoding and decoding JSON.
  *
- * Follows this standard: http://www.ietf.org/rfc/rfc4627.txt
+ * Follows this standard: https://tools.ietf.org/html/rfc7159.html
  */
 
 #include "vim.h"
--- a/src/version.c
+++ b/src/version.c
@@ -747,6 +747,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1188,
+/**/
     1187,
 /**/
     1186,