diff --git a/autoload/fern/scheme/file/mapping/ex.vim b/autoload/fern/scheme/file/mapping/ex.vim index 9862354..58e493a 100644 --- a/autoload/fern/scheme/file/mapping/ex.vim +++ b/autoload/fern/scheme/file/mapping/ex.vim @@ -26,7 +26,7 @@ function! s:map_ex(helper) abort return endif call feedkeys("\", 'in') - let expr = join(map(copy(nodes), { _, v -> fnamemodify(v._path, ':~:.') }), ' ') + let expr = join(map(copy(nodes), { _, v -> fnameescape(fnamemodify(v._path, ':~:.')) }), ' ') let expr = input(':', ' ' . expr, 'command') if empty(expr) return diff --git a/doc/fern.txt b/doc/fern.txt index 8f26ddc..6469e06 100644 --- a/doc/fern.txt +++ b/doc/fern.txt @@ -1136,7 +1136,7 @@ The following mappings/actions are only available on file:// scheme. *(fern-action-ex)* *(fern-action-ex=)* Open a prompt to execute an Ex command with a path of cursor node or - paths of marked nodes. + paths of marked nodes. The paths are |fnameescape()|ed. You can use a "=" variant to apply values to the prompt and/or submit a value like: >