diff options
author | skippi <jbtcao@gmail.com> | 2020-10-18 21:36:30 -0500 |
---|---|---|
committer | skippi <jbtcao@gmail.com> | 2020-10-26 15:20:12 -0500 |
commit | 089f4f8e4a297aa8e7c689331ffd16ffe415120a (patch) | |
tree | 8fc9491acc11254133dfd2c539dd221954b5086d /src/nvim/edit.c | |
parent | a22fe09b90a52f451d9fd8d3372b8c390dd1dc1a (diff) | |
download | rneovim-089f4f8e4a297aa8e7c689331ffd16ffe415120a.tar.gz rneovim-089f4f8e4a297aa8e7c689331ffd16ffe415120a.tar.bz2 rneovim-089f4f8e4a297aa8e7c689331ffd16ffe415120a.zip |
vim-patch:8.1.1769: 'shellslash' is also used for completion
Problem: 'shellslash' is also used for completion.
Solution: Add the 'completeslash' option. (Yasuhiro Matsumoto, closes vim/vim#3612)
https://github.com/vim/vim/commit/ac3150d385e6e3f3fe76642aac3cda954d30583f
Diffstat (limited to 'src/nvim/edit.c')
-rw-r--r-- | src/nvim/edit.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/nvim/edit.c b/src/nvim/edit.c index b3261cfce6..ac0e6cc9f6 100644 --- a/src/nvim/edit.c +++ b/src/nvim/edit.c @@ -4171,6 +4171,21 @@ static int ins_compl_get_exp(pos_T *ini) EW_FILE|EW_DIR|EW_ADDSLASH|EW_SILENT) == OK) { // May change home directory back to "~". tilde_replace(compl_pattern, num_matches, matches); +#ifdef BACKSLASH_IN_FILENAME + if (curbuf->b_p_csl[0] != NUL) { + for (int i = 0; i < num_matches; i++) { + char_u *ptr = matches[i]; + while (*ptr != NUL) { + if (curbuf->b_p_csl[0] == 's' && *ptr == '\\') { + *ptr = '/'; + } else if (curbuf->b_p_csl[0] == 'b' && *ptr == '/') { + *ptr = '\\'; + } + ptr += utfc_ptr2len(ptr); + } + } + } +#endif ins_compl_add_matches(num_matches, matches, p_fic || p_wic); } break; |