2017-01-05 182 views
0

我有几个缩写ack如何在没有扩展名的情况下在vim中扩展文件名?

cnoreabbrev Ack Ack! 
cnoreabbrev ack Ack! 

其重写ackAck! Vim的命令行/模式。

现在,我想使用的文件名,而不扩展到使用

:echo expand('%:r') 

我想象,我会做同样使用`bash的扩展从搜索结果中忽略它

cnoreabbrev acki Ack! --ignore `expand('%:r')` 

但这不起作用。

我该如何做到这一点?我特别想要的缩写不是一个函数(但也可能是有间接的)有一个不间断的流动,我写acki,如果你想使用expand()您需要与c_CTRL-R=玩,然后立即搜索词

+0

只是'%<'怎么样?你的情况不够吗? –

+0

@LucHermitte这正是我需要的!谢谢。你可以将它作为答案发布(可能有一些解释它是如何工作的) – Patryk

+0

请问你能解释一下什么是主要问题? – Sabrina

回答

1

。幸运的是,在这里你不需要复杂的东西。

事实上,%就足以获得文件名。只保留其主要部分,然后可以使用普通旧版vi的%<

+0

这个机制('%<')是如何调用的?我可以在哪里找到关于它的一些信息? – Patryk

+0

我现在还没有vim的工作版本。我想你已经尝试过':h%<'。通常它应该与其他文件名修饰符一起使用。你应该从'expand()'和'fnamemodify()'帮助中找到链接。关于命令行的行为。我不确定有什么帮助。这对我来说已经是老知识了^^' –

相关问题