summaryrefslogtreecommitdiff
path: root/plugins/vim-interaction/vim-interaction.plugin.zsh
diff options
context:
space:
mode:
authorRobby Russell <robby@planetargon.com>2015-09-19 09:04:17 -0700
committerRobby Russell <robby@planetargon.com>2015-09-19 09:04:17 -0700
commit3b291322140a110355fb34dd90f43f5418bcc6ca (patch)
treee56dda0f7c5dd423850e55b5f5377791ad69faf5 /plugins/vim-interaction/vim-interaction.plugin.zsh
parentcfba05cf9d4f22e5629a2bdc692101008b2ebae9 (diff)
parent7f64092361472e12de85f945884445e0e2274846 (diff)
downloadzsh-3b291322140a110355fb34dd90f43f5418bcc6ca.tar.gz
zsh-3b291322140a110355fb34dd90f43f5418bcc6ca.tar.bz2
zsh-3b291322140a110355fb34dd90f43f5418bcc6ca.zip
Merge pull request #4300 from igordejanovic/vim-escape-fname
[vim-interaction plugin] Escape special chars in filenames.
Diffstat (limited to 'plugins/vim-interaction/vim-interaction.plugin.zsh')
-rw-r--r--plugins/vim-interaction/vim-interaction.plugin.zsh22
1 files changed, 4 insertions, 18 deletions
diff --git a/plugins/vim-interaction/vim-interaction.plugin.zsh b/plugins/vim-interaction/vim-interaction.plugin.zsh
index b0b9414cd..b774be342 100644
--- a/plugins/vim-interaction/vim-interaction.plugin.zsh
+++ b/plugins/vim-interaction/vim-interaction.plugin.zsh
@@ -4,17 +4,6 @@
# Derek Wyatt (derek@{myfirstnamemylastname}.org
#
-function resolveFile
-{
- if [ -f "$1" ]; then
- echo $(readlink -f "$1")
- elif [[ "${1#/}" == "$1" ]]; then
- echo "$PWD/$1"
- else
- echo $1
- fi
-}
-
function callvim
{
if [[ $# == 0 ]]; then
@@ -48,13 +37,10 @@ EOH
if [[ ${before#:} != $before && ${before%<cr>} == $before ]]; then
before="$before<cr>"
fi
- local files=""
- for f in $@
- do
- files="$files $(resolveFile $f)"
- done
- if [[ -n $files ]]; then
- files=':args! '"$files<cr>"
+ local files
+ if [[ $# -gt 0 ]]; then
+ # absolute path of files resolving symlinks (:A) and quoting special chars (:q)
+ files=':args! '"${@:A:q}<cr>"
fi
cmd="$before$files$after"
gvim --remote-send "$cmd"