-*todo.txt* For Vim version 7.0aa. Last change: 2005 Jul 29
+*todo.txt* For Vim version 7.0aa. Last change: 2005 Jul 30
VIM REFERENCE MANUAL by Bram Moolenaar
the screen.
- mblen(NULL, 0) also in Vim 6.3?
-Implement printf("blah %d: %s", nr, str)? Use vim_snprintf code.
PLANNED FOR VERSION 7.0:
First cleanup the Insert-mode completion.
UI:
- - Use 'wildmenu' kind of thing.
- - Put the list of choices right under the place where they would be
- inserted.
+ - At first: use 'wildmenu' kind of thing.
+ - Nicer: Display the list of choices right under the place where they
+ would be inserted in a kind of meny (use scrollbar when there are many
+ alternatives).
Completion logic:
Use 'coupler' option to list items that connect words. For C: ".,->".
mapname({idx}, mode) return the name of the idx'th mapping.
Patch by Ilya Sher, 2004 Mar 4.
Return a list instead.
- printf(format, arg, ..) How to prevent a crash???
char2hex() convert char string to hex string.
attributes() return file protection flags "drwxrwxrwx"
filecopy(from, to) Copy a file
}
/*
- * Call some vimL function and return the result as a string
+ * Call vimL function "func" and return the result as a string.
+ * Returns NULL when calling the function fails.
* Uses argv[argc] for the function arguments.
*/
void *
int safe; /* use the sandbox */
{
typval_T rettv;
- char_u *retval = NULL;
+ char_u *retval;
if (call_vim_function(func, argc, argv, safe, &rettv) == FAIL)
return NULL;
retval = vim_strsave(get_tv_string(&rettv));
-
clear_tv(&rettv);
+ return retval;
+}
+#if defined(FEAT_COMPL_FUNC) || defined(PROTO)
+/*
+ * Call vimL function "func" and return the result as a number.
+ * Returns -1 when calling the function fails.
+ * Uses argv[argc] for the function arguments.
+ */
+ long
+call_func_retnr(func, argc, argv, safe)
+ char_u *func;
+ int argc;
+ char_u **argv;
+ int safe; /* use the sandbox */
+{
+ typval_T rettv;
+ long retval;
+
+ if (call_vim_function(func, argc, argv, safe, &rettv) == FAIL)
+ return -1;
+
+ retval = get_tv_number_chk(&rettv, NULL);
+ clear_tv(&rettv);
return retval;
}
+#endif
/*
- * Call some vimL function and return the result as a list
+ * Call vimL function "func" and return the result as a list
* Uses argv[argc] for the function arguments.
*/
void *