Open tyru opened 11 years ago
この問題を今日また自分で直そうと思ったのですが、normal! K
ではなくfeedkeys()
を使っていたためちょっと直すのが難しいですね。
なぜここはfeedkeys()
を使ってるんでしょうか?
今dotfilesのdiff見てて気付いたのですが、そういえばこんな対処してました。(s:has_help_window()
は現在のtabpageにhelp windowが開いていたら1、開いてなかったら0を返す関数)
nmap K <SID>(open-help-window)<Plug>(ref-keyword)
nnoremap <SID>(open-help-window) :<C-u>call <SID>open_help_window()<CR>
function! s:open_help_window()
if !s:has_help_window()
Help
wincmd w
endif
endfunction
issuesが英語ばっかりだったので途中まで空気読んで英語で書いてしまったので無駄に日本語/英語両方で登録するテスト(なんて無駄な)。
The spoken language on this issues seems English. So I started writing this issue in English... but you(@thinca) are an Japanese! I should have written this issue in only Japanese...
日本語(Japanese)
:help <Plug>(ref-open)
にはこう書いてあります。この挙動の問題点
vim
な全てのバッファに対して:normal! K
と同じように振る舞う:normal! K
はg:ref_open
を考慮しないK
(実際は<Plug>(ref-open)
)はfiletypeがvim
な全てのバッファに対してこのように振る舞う途中間違ってたらすみません。
期待する動作
K
(<Plug>(ref-open)
)がg:ref_open
も考慮してくれるとうれしいです。 ただg:ref_open
が:vertical
とか:belowright
みたいな:split
に対するサブコマンドではなく、開くコマンドそのものなので難しいかもしれませんが...英語(English)
From
:help <Plug>(ref-open)
Problem
normal! K
on any buffer whose filetype isvim
.:normal! K
doesn't respectg:ref_open
.K
(this is actually<Plug>(ref-open)
) on any buffer whose filetype isvim
does not respectg:ref_open
.Sorry if my deduction was wrong.
Expected Behavior
It would be great if
K
(<Plug>(ref-open)
) respectsg:ref_open
. I know/guess it is difficult to implement this behavior, becauseg:ref_open
is a command to open a buffer, not subcommand for a command like:vertical
,:belowright
.