vim - 仅复制不带扩展名的文件名到系统剪贴板

标签 vim

有没有办法只将文件名复制/拉到剪贴板?根据这些来源:
Yank file name / path of current buffer in Vim
How can I expand the full path of the current file to pass to a command in Vim?
Get name of the current file in Vim
很明显 expand() 是要使用的函数,可以定义以下内容:

" Full path
nnoremap <leader><leader>f :let @* = expand("%:p")<CR>
" File name, with extension.
nnoremap <leader><leader>n :let @* = expand("%:t")<CR>
" Extension.
nnoremap <leader><leader>e :let @* = expand("%:t:e")<CR>
" Parent directory, full.
nnoremap <leader><leader>p :let @* = expand("%:p:h")<CR>

但是,我没有找到只复制文件名的方法。我的意思是文件名 没有扩展名。这可能吗?我尝试了 "%""%:。都没有用。

最佳答案

expand("%:t:r")

做你想做的事,但凯文提出了非常好的观点。

参见:help filename-modifiers

关于vim - 仅复制不带扩展名的文件名到系统剪贴板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27448157/

相关文章:

linux - vim:通过 ftp 替换文件

VIM 复制一个包含 . (点)

vim - 在多个 session 中自动重新加载 .vimrc

未找到 Vim map 模式

vim - 为什么vim隐藏包裹的行并打印多个@s?

Vim 语法高亮

vim - 获取视觉选择的词

regex - Vim中正则表达式的语法突出显示

python - 从 Ubuntu 迁移到 Windows——恢复 Vim+Python 工作流程

vim - 有人可以给我指出一个很好的适用于 Windows 的 Vi(或 Vim)应用程序吗?