如果我将鼠标悬停在Ruby文件的任何单词上,我会收到一个工具提示消息。
该弹出消息的屏幕截图位于popup message。
cat ~/.gvimrc
返回:
function! SyntaxBalloon()
let synID = synID(v:beval_lnum, v:beval_col, 0)
let groupID = synIDtrans(synID)
let name = synIDattr(synID, "name")
let group = synIDattr(groupID, "name")
return name . "\n" . group
endfunction
set balloonexpr=SyntaxBalloon()
set ballooneval
"how syntax highlighting groups for word under cursor
nmap <F2> :call <SID>SynStack()<CR>
function! <SID>SynStack()
if !exists("*synstack")
return
endif
echo map(synstack(line('.'), col('.')), 'synIDattr(v:val, "name")')
endfunc
答案 0 :(得分:23)
最简单的方法是将它放在你的.vimrc中:
:set noballooneval
如果您使用这些插件,请在初始化Syntastic和Pathogen后放置它。
在某些情况下,人们在设置noballooneval方面遇到了问题,有一些解决办法:
:verb set ballooneval?
来观看对其的更改。:set balloondelay=100000
:setlocal balloonexpr=
balloon
)。balloon_eval
是编译时配置选项,您可以使用它来启用或禁用该功能。参考文献:
另请参阅:I get this window while editing Ruby Files in Vim. What is it?
答案 1 :(得分:10)
我猜你正在使用vim-ruby。好吧,这个插件定义了一个balloonexpr。你可以阅读它here。就个人而言,我觉得它很烦人所以我用它禁用了它:
setlocal balloonexpr=
在我的.vim/after/ftplugin/ruby.vim
文件中。
答案 2 :(得分:4)
如果您使用的是MacVim,内置的netrw插件将覆盖您的set noballooneval
设置。你必须这样做:
" Disable hover tooltips
set noballooneval
let g:netrw_nobeval = 1
答案 3 :(得分:1)
在没有参数的情况下运行时,您在工具提示中看到的是ri
的默认输出。
我想我几周前在这里看到了一个几乎相同的问题:一个ri
vim脚本/宏,它以某种方式没有将正确的参数(光标下的单词)发送给ri
。
你应该找到应该与ri
交互的脚本/ plugin / macro / autocommand,看看是否:
ri
。ri
进行对话。您使用的是Janus还是其他一些&#34;发行版&#34;?
答案 4 :(得分:0)
对不起,当光标在netrw缓冲区和netrw的横幅中时,netrw的气球帮助才会出现。特别是,它不会影响ruby文件。