Mercurial > vim
annotate src/proto/filepath.pro @ 32609:0da40da0bbaa v9.0.1636
patch 9.0.1636: expanding a pattern interferes with cmdline completion
Commit: https://github.com/vim/vim/commit/094dd152fe1d47878ec6c0b3f54b03ffde7f4a2d
Author: zeertzjq <zeertzjq@outlook.com>
Date: Thu Jun 15 22:51:57 2023 +0100
patch 9.0.1636: expanding a pattern interferes with cmdline completion
Problem: Expanding a pattern interferes with command line completion.
Solution: Set the file index only when appropriate. (closes https://github.com/vim/vim/issues/12519)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Fri, 16 Jun 2023 00:00:03 +0200 |
parents | 4545f58c8490 |
children | a9e71b25d1b1 |
rev | line source |
---|---|
17966
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1 /* filepath.c */ |
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2 int modify_fname(char_u *src, int tilde_file, int *usedlen, char_u **fnamep, char_u **bufp, int *fnamelen); |
23602
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
22385
diff
changeset
|
3 void shorten_dir(char_u *str); |
32009
4545f58c8490
patch 9.0.1336: functions without arguments are not always declared properly
Bram Moolenaar <Bram@vim.org>
parents:
28629
diff
changeset
|
4 int file_is_readable(char_u *fname); |
17966
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
5 void f_chdir(typval_T *argvars, typval_T *rettv); |
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
6 void f_delete(typval_T *argvars, typval_T *rettv); |
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
7 void f_executable(typval_T *argvars, typval_T *rettv); |
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
8 void f_exepath(typval_T *argvars, typval_T *rettv); |
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
9 void f_filereadable(typval_T *argvars, typval_T *rettv); |
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
10 void f_filewritable(typval_T *argvars, typval_T *rettv); |
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
11 void f_finddir(typval_T *argvars, typval_T *rettv); |
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
12 void f_findfile(typval_T *argvars, typval_T *rettv); |
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
13 void f_fnamemodify(typval_T *argvars, typval_T *rettv); |
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
14 void f_getcwd(typval_T *argvars, typval_T *rettv); |
20643
c2beb6baa42c
patch 8.2.0875: getting attributes for directory entries is slow
Bram Moolenaar <Bram@vim.org>
parents:
18051
diff
changeset
|
15 char_u *getfpermst(stat_T *st, char_u *perm); |
17966
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
16 void f_getfperm(typval_T *argvars, typval_T *rettv); |
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
17 void f_getfsize(typval_T *argvars, typval_T *rettv); |
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
18 void f_getftime(typval_T *argvars, typval_T *rettv); |
20643
c2beb6baa42c
patch 8.2.0875: getting attributes for directory entries is slow
Bram Moolenaar <Bram@vim.org>
parents:
18051
diff
changeset
|
19 char_u *getftypest(stat_T *st); |
17966
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
20 void f_getftype(typval_T *argvars, typval_T *rettv); |
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
21 void f_glob(typval_T *argvars, typval_T *rettv); |
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
22 void f_glob2regpat(typval_T *argvars, typval_T *rettv); |
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
23 void f_globpath(typval_T *argvars, typval_T *rettv); |
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
24 void f_isdirectory(typval_T *argvars, typval_T *rettv); |
28629
5ef46b938c6e
patch 8.2.4838: checking for absolute path is not trivial
Bram Moolenaar <Bram@vim.org>
parents:
28255
diff
changeset
|
25 void f_isabsolutepath(typval_T *argvars, typval_T *rettv); |
17966
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
26 void f_mkdir(typval_T *argvars, typval_T *rettv); |
17986
5c8906f653f5
patch 8.1.1989: the evalfunc.c file is still too big
Bram Moolenaar <Bram@vim.org>
parents:
17978
diff
changeset
|
27 void f_pathshorten(typval_T *argvars, typval_T *rettv); |
17966
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
28 void f_readdir(typval_T *argvars, typval_T *rettv); |
20643
c2beb6baa42c
patch 8.2.0875: getting attributes for directory entries is slow
Bram Moolenaar <Bram@vim.org>
parents:
18051
diff
changeset
|
29 void f_readdirex(typval_T *argvars, typval_T *rettv); |
23602
7b3317e959e3
patch 8.2.2343: Vim9: return type of readfile() is any
Bram Moolenaar <Bram@vim.org>
parents:
22385
diff
changeset
|
30 void f_readblob(typval_T *argvars, typval_T *rettv); |
17966
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
31 void f_readfile(typval_T *argvars, typval_T *rettv); |
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
32 void f_resolve(typval_T *argvars, typval_T *rettv); |
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
33 void f_tempname(typval_T *argvars, typval_T *rettv); |
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
34 void f_writefile(typval_T *argvars, typval_T *rettv); |
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
35 char_u *do_browse(int flags, char_u *title, char_u *dflt, char_u *ext, char_u *initdir, char_u *filter, buf_T *buf); |
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
36 void f_browse(typval_T *argvars, typval_T *rettv); |
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
37 void f_browsedir(typval_T *argvars, typval_T *rettv); |
17978
8f4cc259ed7a
patch 8.1.1985: code for dealing with paths is spread out
Bram Moolenaar <Bram@vim.org>
parents:
17966
diff
changeset
|
38 void home_replace(buf_T *buf, char_u *src, char_u *dst, int dstlen, int one); |
8f4cc259ed7a
patch 8.1.1985: code for dealing with paths is spread out
Bram Moolenaar <Bram@vim.org>
parents:
17966
diff
changeset
|
39 char_u *home_replace_save(buf_T *buf, char_u *src); |
8f4cc259ed7a
patch 8.1.1985: code for dealing with paths is spread out
Bram Moolenaar <Bram@vim.org>
parents:
17966
diff
changeset
|
40 int fullpathcmp(char_u *s1, char_u *s2, int checkname, int expandenv); |
8f4cc259ed7a
patch 8.1.1985: code for dealing with paths is spread out
Bram Moolenaar <Bram@vim.org>
parents:
17966
diff
changeset
|
41 char_u *gettail(char_u *fname); |
8f4cc259ed7a
patch 8.1.1985: code for dealing with paths is spread out
Bram Moolenaar <Bram@vim.org>
parents:
17966
diff
changeset
|
42 char_u *gettail_sep(char_u *fname); |
8f4cc259ed7a
patch 8.1.1985: code for dealing with paths is spread out
Bram Moolenaar <Bram@vim.org>
parents:
17966
diff
changeset
|
43 char_u *getnextcomp(char_u *fname); |
8f4cc259ed7a
patch 8.1.1985: code for dealing with paths is spread out
Bram Moolenaar <Bram@vim.org>
parents:
17966
diff
changeset
|
44 char_u *get_past_head(char_u *path); |
8f4cc259ed7a
patch 8.1.1985: code for dealing with paths is spread out
Bram Moolenaar <Bram@vim.org>
parents:
17966
diff
changeset
|
45 int vim_ispathsep(int c); |
8f4cc259ed7a
patch 8.1.1985: code for dealing with paths is spread out
Bram Moolenaar <Bram@vim.org>
parents:
17966
diff
changeset
|
46 int vim_ispathsep_nocolon(int c); |
8f4cc259ed7a
patch 8.1.1985: code for dealing with paths is spread out
Bram Moolenaar <Bram@vim.org>
parents:
17966
diff
changeset
|
47 int dir_of_file_exists(char_u *fname); |
8f4cc259ed7a
patch 8.1.1985: code for dealing with paths is spread out
Bram Moolenaar <Bram@vim.org>
parents:
17966
diff
changeset
|
48 int vim_fnamecmp(char_u *x, char_u *y); |
8f4cc259ed7a
patch 8.1.1985: code for dealing with paths is spread out
Bram Moolenaar <Bram@vim.org>
parents:
17966
diff
changeset
|
49 int vim_fnamencmp(char_u *x, char_u *y, size_t len); |
8f4cc259ed7a
patch 8.1.1985: code for dealing with paths is spread out
Bram Moolenaar <Bram@vim.org>
parents:
17966
diff
changeset
|
50 char_u *concat_fnames(char_u *fname1, char_u *fname2, int sep); |
8f4cc259ed7a
patch 8.1.1985: code for dealing with paths is spread out
Bram Moolenaar <Bram@vim.org>
parents:
17966
diff
changeset
|
51 void add_pathsep(char_u *p); |
8f4cc259ed7a
patch 8.1.1985: code for dealing with paths is spread out
Bram Moolenaar <Bram@vim.org>
parents:
17966
diff
changeset
|
52 char_u *FullName_save(char_u *fname, int force); |
8f4cc259ed7a
patch 8.1.1985: code for dealing with paths is spread out
Bram Moolenaar <Bram@vim.org>
parents:
17966
diff
changeset
|
53 int vim_fexists(char_u *fname); |
8f4cc259ed7a
patch 8.1.1985: code for dealing with paths is spread out
Bram Moolenaar <Bram@vim.org>
parents:
17966
diff
changeset
|
54 int expand_wildcards_eval(char_u **pat, int *num_file, char_u ***file, int flags); |
8f4cc259ed7a
patch 8.1.1985: code for dealing with paths is spread out
Bram Moolenaar <Bram@vim.org>
parents:
17966
diff
changeset
|
55 int expand_wildcards(int num_pat, char_u **pat, int *num_files, char_u ***files, int flags); |
8f4cc259ed7a
patch 8.1.1985: code for dealing with paths is spread out
Bram Moolenaar <Bram@vim.org>
parents:
17966
diff
changeset
|
56 int match_suffix(char_u *fname); |
8f4cc259ed7a
patch 8.1.1985: code for dealing with paths is spread out
Bram Moolenaar <Bram@vim.org>
parents:
17966
diff
changeset
|
57 int unix_expandpath(garray_T *gap, char_u *path, int wildoff, int flags, int didstar); |
8f4cc259ed7a
patch 8.1.1985: code for dealing with paths is spread out
Bram Moolenaar <Bram@vim.org>
parents:
17966
diff
changeset
|
58 int gen_expand_wildcards(int num_pat, char_u **pat, int *num_file, char_u ***file, int flags); |
8f4cc259ed7a
patch 8.1.1985: code for dealing with paths is spread out
Bram Moolenaar <Bram@vim.org>
parents:
17966
diff
changeset
|
59 void addfile(garray_T *gap, char_u *f, int flags); |
8f4cc259ed7a
patch 8.1.1985: code for dealing with paths is spread out
Bram Moolenaar <Bram@vim.org>
parents:
17966
diff
changeset
|
60 void FreeWild(int count, char_u **files); |
8f4cc259ed7a
patch 8.1.1985: code for dealing with paths is spread out
Bram Moolenaar <Bram@vim.org>
parents:
17966
diff
changeset
|
61 int pathcmp(const char *p, const char *q, int maxlen); |
8f4cc259ed7a
patch 8.1.1985: code for dealing with paths is spread out
Bram Moolenaar <Bram@vim.org>
parents:
17966
diff
changeset
|
62 int vim_isAbsName(char_u *name); |
8f4cc259ed7a
patch 8.1.1985: code for dealing with paths is spread out
Bram Moolenaar <Bram@vim.org>
parents:
17966
diff
changeset
|
63 int vim_FullName(char_u *fname, char_u *buf, int len, int force); |
17966
46f95606b9ec
patch 8.1.1979: code for handling file names is spread out
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
64 /* vim: set ft=c : */ |