diff --git a/7.3.1067 b/7.3.1067 new file mode 100644 index 0000000..0725a8b --- /dev/null +++ b/7.3.1067 @@ -0,0 +1,158 @@ +To: vim_dev@googlegroups.com +Subject: Patch 7.3.1067 +Fcc: outbox +From: Bram Moolenaar +Mime-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit +------------ + +Patch 7.3.1067 +Problem: Python: documentation lags behind. +Solution: Python patch 26. (ZyX) +Files: runtime/doc/if_pyth.txt + + +*** ../vim-7.3.1066/runtime/doc/if_pyth.txt 2013-05-30 13:01:14.000000000 +0200 +--- runtime/doc/if_pyth.txt 2013-05-30 13:31:16.000000000 +0200 +*************** +*** 480,496 **** + vim.VAR_DEF_SCOPE |g:| or |l:| dictionary + vim.VAR_SCOPE Other scope dictionary, + see |internal-variables| +! Methods: + Method Description ~ + keys() Returns a list with dictionary keys. + values() Returns a list with dictionary values. + items() Returns a list of 2-tuples with dictionary contents. +! update(iterable) +! update(dictionary) +! update(**kwargs) + Adds keys to dictionary. + Examples: > +! py d = vim.bindeval('{}') + d['a'] = 'b' # Item assignment + print d['a'] # getting item + d.update({'c': 'd'}) # .update(dictionary) +--- 480,515 ---- + vim.VAR_DEF_SCOPE |g:| or |l:| dictionary + vim.VAR_SCOPE Other scope dictionary, + see |internal-variables| +! Methods (note: methods do not support keyword arguments): + Method Description ~ + keys() Returns a list with dictionary keys. + values() Returns a list with dictionary values. + items() Returns a list of 2-tuples with dictionary contents. +! update(iterable), update(dictionary), update(**kwargs) + Adds keys to dictionary. ++ get(key[, default=None]) ++ Obtain key from dictionary, returning the default if it is ++ not present. ++ pop(key[, default]) ++ Remove specified key from dictionary and return ++ corresponding value. If key is not found and default is ++ given returns the default, otherwise raises KeyError. ++ popitem(key) ++ Remove specified key from dictionary and return a pair ++ with it and the corresponding value. Returned key is a new ++ object. ++ has_key(key) ++ Check whether dictionary contains specified key, similar ++ to `key in dict`. ++ ++ __new__(), __new__(iterable), __new__(dictionary), __new__(update) ++ You can use `vim.Dictionary()` to create new vim ++ dictionaries. `d=vim.Dictionary(arg)` is the same as ++ `d=vim.bindeval('{}');d.update(arg)`. Without arguments ++ constructs empty dictionary. ++ + Examples: > +! d = vim.Dictionary(food="bar") # Constructor + d['a'] = 'b' # Item assignment + print d['a'] # getting item + d.update({'c': 'd'}) # .update(dictionary) +*************** +*** 501,506 **** +--- 520,526 ---- + for key, val in d.items(): # .items() + print isinstance(d, vim.Dictionary) # True + for key in d: # Iteration over keys ++ class Dict(vim.Dictionary): # Subclassing + < + Note: when iterating over keys you should not modify dictionary. + +*************** +*** 510,517 **** + following methods: + Method Description ~ + extend(item) Add items to the list. + Examples: > +! l = vim.bindeval('[]') + l.extend(['abc', 'def']) # .extend() method + print l[1:] # slicing + l[:0] = ['ghi', 'jkl'] # slice assignment +--- 530,543 ---- + following methods: + Method Description ~ + extend(item) Add items to the list. ++ ++ __new__(), __new__(iterable) ++ You can use `vim.List()` to create new vim lists. ++ `l=vim.List(iterable)` is the same as ++ `l=vim.bindeval('[]');l.extend(iterable)`. Without ++ arguments constructs empty list. + Examples: > +! l = vim.List("abc") # Constructor, result: ['a', 'b', 'c'] + l.extend(['abc', 'def']) # .extend() method + print l[1:] # slicing + l[:0] = ['ghi', 'jkl'] # slice assignment +*************** +*** 519,531 **** + l[0] = 'mno' # assignment + for i in l: # iteration + print isinstance(l, vim.List) # True + + vim.Function object *python-Function* + Function-like object, acting like vim |Funcref| object. Supports `.name` + attribute and is callable. Accepts special keyword argument `self`, see +! |Dictionary-function|. + Examples: > +! f = vim.bindeval('function("tr")') + print f('abc', 'a', 'b') # Calls tr('abc', 'a', 'b') + vim.command(''' + function DictFun() dict +--- 545,560 ---- + l[0] = 'mno' # assignment + for i in l: # iteration + print isinstance(l, vim.List) # True ++ class List(vim.List): # Subclassing + + vim.Function object *python-Function* + Function-like object, acting like vim |Funcref| object. Supports `.name` + attribute and is callable. Accepts special keyword argument `self`, see +! |Dictionary-function|. You can also use `vim.Function(name)` constructor, +! it is the same as `vim.bindeval('function(%s)'%json.dumps(name))`. +! + Examples: > +! f = vim.Function('tr') # Constructor + print f('abc', 'a', 'b') # Calls tr('abc', 'a', 'b') + vim.command(''' + function DictFun() dict +*** ../vim-7.3.1066/src/version.c 2013-05-30 13:28:37.000000000 +0200 +--- src/version.c 2013-05-30 13:31:42.000000000 +0200 +*************** +*** 730,731 **** +--- 730,733 ---- + { /* Add new patch number below this line */ ++ /**/ ++ 1067, + /**/ + +-- +How To Keep A Healthy Level Of Insanity: +9. As often as possible, skip rather than walk. + + /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ +/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ +\\\ an exciting new programming language -- http://www.Zimbu.org /// + \\\ help me help AIDS victims -- http://ICCF-Holland.org ///