| To: vim_dev@googlegroups.com |
| Subject: Patch 7.3.694 |
| Fcc: outbox |
| From: Bram Moolenaar <Bram@moolenaar.net> |
| Mime-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| |
| Patch 7.3.694 |
| Problem: Now that 'shiftwidth' may use the value of 'tabstop' it is not so |
| easy to use in indent files. |
| Solution: Add the shiftwidth() function. (so8res) |
| Files: runtime/doc/eval.txt, src/eval.c |
| |
| |
| |
| |
| |
| *** 1921,1926 **** |
| --- 1932,1938 ---- |
| shellescape( {string} [, {special}]) |
| String escape {string} for use as shell |
| command argument |
| + shiftwidth() Number effective value of 'shiftwidth' |
| simplify( {filename}) String simplify filename as much as possible |
| sin( {expr}) Float sine of {expr} |
| sinh( {expr}) Float hyperbolic sine of {expr} |
| |
| *** 3732,3741 **** |
| Like |input()|, but when the GUI is running and text dialogs |
| are supported, a dialog window pops up to input the text. |
| Example: > |
| ! :let n = inputdialog("value for shiftwidth", &sw) |
| ! :if n != "" |
| ! : let &sw = n |
| ! :endif |
| < When the dialog is cancelled {cancelreturn} is returned. When |
| omitted an empty string is returned. |
| Hitting <Enter> works like pressing the OK button. Hitting |
| --- 3755,3764 ---- |
| Like |input()|, but when the GUI is running and text dialogs |
| are supported, a dialog window pops up to input the text. |
| Example: > |
| ! :let n = inputdialog("value for shiftwidth", shiftwidth()) |
| ! :if n != "" |
| ! : let &sw = n |
| ! :endif |
| < When the dialog is cancelled {cancelreturn} is returned. When |
| omitted an empty string is returned. |
| Hitting <Enter> works like pressing the OK button. Hitting |
| |
| *** 5308,5313 **** |
| --- 5332,5354 ---- |
| :call system("chmod +w -- " . shellescape(expand("%"))) |
| |
| |
| + 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. |
| + |
| + |
| simplify({filename}) *simplify()* |
| Simplify the file name as much as possible without changing |
| the meaning. Shortcuts (on MS-Windows) or symbolic links (on |
| |
| |
| |
| *** 687,692 **** |
| --- 687,693 ---- |
| static void f_settabwinvar __ARGS((typval_T *argvars, typval_T *rettv)); |
| static void f_setwinvar __ARGS((typval_T *argvars, typval_T *rettv)); |
| static void f_shellescape __ARGS((typval_T *argvars, typval_T *rettv)); |
| + static void f_shiftwidth __ARGS((typval_T *argvars, typval_T *rettv)); |
| static void f_simplify __ARGS((typval_T *argvars, typval_T *rettv)); |
| #ifdef FEAT_FLOAT |
| static void f_sin __ARGS((typval_T *argvars, typval_T *rettv)); |
| |
| *** 8051,8056 **** |
| --- 8052,8058 ---- |
| {"settabwinvar", 4, 4, f_settabwinvar}, |
| {"setwinvar", 3, 3, f_setwinvar}, |
| {"shellescape", 1, 2, f_shellescape}, |
| + {"shiftwidth", 0, 0, f_shiftwidth}, |
| {"simplify", 1, 1, f_simplify}, |
| #ifdef FEAT_FLOAT |
| {"sin", 1, 1, f_sin}, |
| |
| *** 16652,16657 **** |
| --- 16654,16670 ---- |
| } |
| |
| /* |
| + * shiftwidth() function |
| + */ |
| + static void |
| + f_shiftwidth(argvars, rettv) |
| + typval_T *argvars; |
| + typval_T *rettv; |
| + { |
| + rettv->vval.v_number = get_sw_value(); |
| + } |
| + |
| + /* |
| * "simplify()" function |
| */ |
| static void |
| |
| |
| |
| *** 721,722 **** |
| --- 721,724 ---- |
| { /* Add new patch number below this line */ |
| + /**/ |
| + 694, |
| /**/ |
| |
| -- |
| CRONE: Who sent you? |
| ARTHUR: The Knights Who Say GNU! |
| CRONE: Aaaagh! (she looks around in rear) No! We have no licenses here. |
| "Monty Python and the Holy editor wars" PYTHON (MONTY) SOFTWARE LTD |
| |
| /// 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 /// |