summaryrefslogtreecommitdiff
path: root/plugins/vim-interaction
diff options
context:
space:
mode:
authorMarc Cornellà <marc.cornella@live.com>2015-09-01 19:07:49 +0200
committerIgor Dejanovic <igor.dejanovic@gmail.com>2015-09-01 19:07:49 +0200
commit7f64092361472e12de85f945884445e0e2274846 (patch)
treea4d6530c2bb704b0454c693fb2d41ee6c39ed73c /plugins/vim-interaction
parentba5fd57c1ff4a8523715bab6acc35dbbeff88af7 (diff)
downloadzsh-7f64092361472e12de85f945884445e0e2274846.tar.gz
zsh-7f64092361472e12de85f945884445e0e2274846.tar.bz2
zsh-7f64092361472e12de85f945884445e0e2274846.zip
[vim-interaction plugin] Escaping special chars in file names and simplifying code.
Diffstat (limited to 'plugins/vim-interaction')
-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"