Mercurial > vim
view src/testdir/test105.in @ 8708:31f9fa8e1532 v7.4.1643
commit https://github.com/vim/vim/commit/d4caf5c16a9f1c9477d426e58d8d3dc47ab5f066
Author: Bram Moolenaar <Bram@vim.org>
Date: Thu Mar 24 19:14:35 2016 +0100
patch 7.4.1643
Problem: Terminating file name has side effects.
Solution: Restore the character. (mostly by James McCoy, closes https://github.com/vim/vim/issues/713)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Thu, 24 Mar 2016 19:15:09 +0100 |
parents | 8af6e33e4d4c |
children |
line wrap: on
line source
Test filename modifiers vim: set ft=vim : STARTTEST :source small.vim :%delete _ :set shell=sh :set shellslash :let tab="\t" :command -nargs=1 Put :let expr=<q-args> | $put =expr.tab.strtrans(string(eval(expr))) :let $HOME=fnamemodify('.', ':p:h:h') :Put fnamemodify('.', ':p' )[-1:] :Put fnamemodify('.', ':p:h' )[-1:] :Put fnamemodify('test.out', ':p' )[-1:] :Put fnamemodify('test.out', ':.' ) :Put fnamemodify('../testdir/a', ':.' ) :Put fnamemodify('test.out', ':~' ) :Put fnamemodify('../testdir/a', ':~' ) :Put fnamemodify('../testdir/a', ':t' ) :Put fnamemodify('.', ':p:t' ) :Put fnamemodify('test.out', ':p:t' ) :Put fnamemodify('test.out', ':p:e' ) :Put fnamemodify('test.out', ':p:t:e' ) :Put fnamemodify('abc.fb2.tar.gz', ':r' ) :Put fnamemodify('abc.fb2.tar.gz', ':r:r' ) :Put fnamemodify('abc.fb2.tar.gz', ':r:r:r' ) :Put substitute(fnamemodify('abc.fb2.tar.gz', ':p:r:r'), '.*\(testdir/.*\)', '\1', '') :Put fnamemodify('abc.fb2.tar.gz', ':e' ) :Put fnamemodify('abc.fb2.tar.gz', ':e:e' ) :Put fnamemodify('abc.fb2.tar.gz', ':e:e:e' ) :Put fnamemodify('abc.fb2.tar.gz', ':e:e:e:e') :Put fnamemodify('abc.fb2.tar.gz', ':e:e:r' ) :Put fnamemodify('abc def', ':S' ) :Put fnamemodify('abc" "def', ':S' ) :Put fnamemodify('abc"%"def', ':S' ) :Put fnamemodify('abc'' ''def', ':S' ) :Put fnamemodify('abc''%''def', ':S' ) :Put fnamemodify("abc\ndef", ':S' ) :Put expand('%:r:S') == shellescape(expand('%:r')) :Put join([expand('%:r'), expand('%:r:S'), expand('%')], ',') :set shell=tcsh :Put fnamemodify("abc\ndef", ':S' ) :$put ='vim: ts=8' :1 delete _ :w! test.out :qa! ENDTEST