From a17d4c1934b008b9aa8a2d7cf085cfe76a690d9a Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Sun, 30 May 2010 18:30:36 +0200 Subject: Added the undofile() function. Updated runtime files. --- src/eval.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'src/eval.c') diff --git a/src/eval.c b/src/eval.c index 06615ae90..865dc3a7d 100644 --- a/src/eval.c +++ b/src/eval.c @@ -731,6 +731,7 @@ static void f_tr __ARGS((typval_T *argvars, typval_T *rettv)); static void f_trunc __ARGS((typval_T *argvars, typval_T *rettv)); #endif static void f_type __ARGS((typval_T *argvars, typval_T *rettv)); +static void f_undofile __ARGS((typval_T *argvars, typval_T *rettv)); static void f_values __ARGS((typval_T *argvars, typval_T *rettv)); static void f_virtcol __ARGS((typval_T *argvars, typval_T *rettv)); static void f_visualmode __ARGS((typval_T *argvars, typval_T *rettv)); @@ -7825,6 +7826,7 @@ static struct fst {"trunc", 1, 1, f_trunc}, #endif {"type", 1, 1, f_type}, + {"undofile", 1, 1, f_undofile}, {"values", 1, 1, f_values}, {"virtcol", 1, 1, f_virtcol}, {"visualmode", 0, 1, f_visualmode}, @@ -17583,6 +17585,23 @@ f_type(argvars, rettv) rettv->vval.v_number = n; } +/* + * "undofile(name)" function + */ + static void +f_undofile(argvars, rettv) + typval_T *argvars; + typval_T *rettv; +{ + rettv->v_type = VAR_STRING; +#ifdef FEAT_PERSISTENT_UNDO + rettv->vval.v_string = u_get_undo_file_name(get_tv_string(&argvars[0]), + FALSE); +#else + rettv->vval.v_string = NULL; +#endif +} + /* * "values(dict)" function */ -- cgit v1.2.1