如何在vim中插入没有路径的文件名

如何在vim中插入没有路径的文件名,vim,filenames,Vim,Filenames,我知道在插入模式下,我可以使用CTRL-R-%插入具有路径的FilineName 但是我想只插入文件名,不插入路径部分。有类似的命令吗?在插入模式下,您可以使用 CTRL-R =expand('%:t') <C-r>=expand("%:t")<CR> 你可以用 CTRL-R =expand('%:t') <C-r>=expand("%:t")<CR> 这是地图命令吗?这是否会影响其他C-R命令,例如wNo,这就是您必须在插入模式中键入的内

我知道在插入模式下,我可以使用CTRL-R-%插入具有路径的FilineName


但是我想只插入文件名,不插入路径部分。有类似的命令吗?

在插入模式下,您可以使用

CTRL-R =expand('%:t')
<C-r>=expand("%:t")<CR>
你可以用

CTRL-R =expand('%:t')
<C-r>=expand("%:t")<CR>

这是地图命令吗?这是否会影响其他C-R命令,例如wNo,这就是您必须在插入模式中键入的内容,以插入不带路径的文件名:
Ctrl+R
,然后
=
,然后
展开(“%:t”)
,然后
输入
。对不起,没有捷径可走。如果需要自定义映射,请将
inoremap expand(“%t”)
添加到
~/.vimrc
@ChrisStryczynski请参阅用户手册中的
:help 40.2
。您还可以使用
expand(“%t:r”)
删除扩展(对于那些不想阅读帮助的人:)这是映射命令吗?这是否会影响其他C-R命令,例如。w@schurik-罗梅因已经彻底回答了你的评论。如果还有什么不清楚的地方,请尽管问。嗯,对我来说,
Ctrl-R%
已经给出了basename。也许这取决于一些配置参数?在Unix SE上可能相同:您可以使用
:r!echo%