To: vim-dev@vim.org Subject: Patch 7.1.262 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit ------------ Patch 7.1.262 Problem: Can't get the process ID of Vim. Solution: Implement getpid(). Files: src/eval.c, runtime/doc/eval.txt *** ../vim-7.1.261/src/eval.c Wed Feb 20 12:22:59 2008 --- src/eval.c Wed Feb 20 11:08:21 2008 *************** *** 532,537 **** --- 532,538 ---- static void f_getftype __ARGS((typval_T *argvars, typval_T *rettv)); static void f_getline __ARGS((typval_T *argvars, typval_T *rettv)); static void f_getmatches __ARGS((typval_T *argvars, typval_T *rettv)); + static void f_getpid __ARGS((typval_T *argvars, typval_T *rettv)); static void f_getpos __ARGS((typval_T *argvars, typval_T *rettv)); static void f_getqflist __ARGS((typval_T *argvars, typval_T *rettv)); static void f_getreg __ARGS((typval_T *argvars, typval_T *rettv)); *************** *** 7132,7137 **** --- 7133,7139 ---- {"getline", 1, 2, f_getline}, {"getloclist", 1, 1, f_getqflist}, {"getmatches", 0, 0, f_getmatches}, + {"getpid", 0, 0, f_getpid}, {"getpos", 1, 1, f_getpos}, {"getqflist", 0, 0, f_getqflist}, {"getreg", 0, 2, f_getreg}, *************** *** 10371,10376 **** --- 10373,10390 ---- } } #endif + } + + /* + * "getpid()" function + */ + /*ARGSUSED*/ + static void + f_getpid(argvars, rettv) + typval_T *argvars; + typval_T *rettv; + { + rettv->vval.v_number = mch_get_pid(); } /* *** ../vim-7.1.261/runtime/doc/eval.txt Wed Feb 13 12:41:30 2008 --- runtime/doc/eval.txt Wed Feb 20 11:10:17 2008 *************** *** 1,4 **** ! *eval.txt* For Vim version 7.1. Last change: 2008 Feb 13 VIM REFERENCE MANUAL by Bram Moolenaar --- 1,4 ---- ! *eval.txt* For Vim version 7.1. Last change: 2008 Feb 20 VIM REFERENCE MANUAL by Bram Moolenaar *************** *** 1638,1643 **** --- 1638,1644 ---- getline( {lnum}, {end}) List lines {lnum} to {end} of current buffer getloclist({nr}) List list of location list items getmatches() List list of current matches + getpid() Number process ID of Vim getpos( {expr}) List position of cursor, mark, etc. getqflist() List list of quickfix items getreg( [{regname} [, 1]]) String contents of register *************** *** 3833,3838 **** --- 3837,3846 ---- characters. nr2char(0) is a real NUL and terminates the string, thus results in an empty string. + *getpid()* + getpid() Return a Number which is the process ID of the Vim process. + On Unix this is a unique number. On MS-DOS it's always zero. + *getpos()* getpos({expr}) Get the position for {expr}. For possible values of {expr} see |line()|. *** ../vim-7.1.261/src/version.c Wed Feb 20 18:14:25 2008 --- src/version.c Wed Feb 20 20:04:14 2008 *************** *** 668,669 **** --- 668,671 ---- { /* Add new patch number below this line */ + /**/ + 262, /**/ -- Those who live by the sword get shot by those who don't. /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ \\\ download, build and distribute -- http://www.A-A-P.org /// \\\ help me help AIDS victims -- http://ICCF-Holland.org ///