Почему я получаю всплывающее сообщение при наведении курсора на любое слово из файла Ruby? - PullRequest
10 голосов
/ 16 декабря 2011

Если навести курсор мыши на любое слово из файла Ruby, я получу всплывающую подсказку.

Скриншот этого всплывающего сообщения: всплывающее сообщение .

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

Ответы [ 5 ]

23 голосов
/ 07 марта 2012

Самый простой и простой способ - поместить это в ваш .vimrc:

  • :set noballooneval

Поместите его после инициализации Syntastic и Pathogen, если вы используете эти плагины.

В некоторых случаях у людей возникали проблемы с настройкой noballooneval, есть несколько обходных путей:

  • Если что-то перезаписывает ваши нобаллооневальные настройки, вы можете использовать :verb set ballooneval? для просмотра изменений в них.
  • :set balloondelay=100000
  • :setlocal balloonexpr=
  • Найдите строку обидчика в используемом плагине и закомментируйте ее (grep для balloon).
  • Если вы создаете свой собственный Vim, balloon_eval - это опция конфигурации во время компиляции, вы можете использовать ее для включения или отключения этой функции.

Ссылки:

Смотри также: Я получаю это окно при редактировании Ruby Files в Vim. Что это?

10 голосов
/ 16 декабря 2011

Я полагаю, вы используете vim-ruby.Ну, этот плагин определил balloononexpr .Вы можете прочитать это здесь .Лично я нахожу это довольно раздражающим, поэтому я отключил его с помощью:

setlocal balloonexpr=

в моем .vim/after/ftplugin/ruby.vim файле.

4 голосов
/ 03 февраля 2015

Если вы используете MacVim, встроенный плагин netrw перезапишет ваши настройки set noballooneval. Вы должны сделать это:

" Disable hover tooltips
set noballooneval
let g:netrw_nobeval = 1
1 голос
/ 16 декабря 2011

То, что вы видите во всплывающей подсказке, - это вывод по умолчанию ri при запуске без аргументов.

Мне кажется, я видел почти идентичную проблему здесь несколько недель назад: ri скрипт / макрос vim, который каким-то образом не отправил правильный аргумент (слово под курсором) на ri.

Вы должны выследить скрипт / плагин / макрос / автокоманду, которая должна взаимодействовать с ri, и посмотреть:

  1. Эффективно захватывает слово под курсором.
  2. На самом деле отправляет его на ri.
  3. Использует правильный API для общения с ri.

Вы используете Janus или какой-то другой "дистрибутив"?

0 голосов
/ 04 февраля 2015

Извините, всплывающая подсказка netrw отображается только тогда, когда курсор находится в буфере netrw и в баннере netrw.В частности, это не влияет на файлы ruby.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...