開いたウィンドウが正常に閉じない
vimの:termなどで新しいウィンドウを開いた後、閉じようとすると正常にウィンドウが消えない問題が発生しています。
以下のgifのような状態です。(画像が小さかったらごめんなさい)

以下のことがわかっています。
.pyファイルを開いた時、:splitなどで分割したウィンドウで開いたターミナルが正常に閉じない.rbファイルなどの他の拡張子では発生しません。- 閉じられないウィンドウは
ctrl cで消すことができます。 - ターミナル以外も分割をするプラグイン全般も同じく閉じられません。
- 単に
splitしたウィンドウ(:termをしていない)は正常に閉じられます。- vimの範囲を超えた動作(terminalなど)をしたウィンドウが閉じられないと考えています。
- vimの範囲を超えた動作(terminalなど)をしたウィンドウが閉じられないと考えています。
- dotfilesでシェルの設定を同期している他マシンでは発生しません。
いろいろ調べてみましたが完全にお手上げ状態なので詳しい方のお力をお借りしたいです。
試してみたこと
- vimの設定を退避した
- プラグインや設定の問題かと思いましたが素のvimでも同様の問題が発生しました。
- vimを入れ直した
# pacman -S vimで入れたvimも$ yay -S gvimで入れたvimでも同様に発生します。- 他マシンとvimのバージョンを合わせましたが改善しませんでした。
- termで起動するシェルの変更
- fishがbashrcの末尾の
exec fishで呼び出しているので:set zshで呼び出すシェルをbashを経由しないzshに変えましたが同じく閉じられませんでした。
- fishがbashrcの末尾の
バージョン
VIM - Vi IMproved 8.2 (2019 Dec 12, compiled Feb 09 2021 23:51:55)
適用済パッチ: 1-2489
Compiled by Arch Linux
Huge 版 without GUI.
os: manjaro linux x86_64
pc: thinkpad x270
追記
色々ためした結果わかってきたことを追記します
.pyだけでなく*.pywなどでも問題が発生する
filetype.vimでsetf pythonとなっているものはすべてこの問題が発生するようです。:set filetype=pythonとすると.rbなどでも問題が発生する
filetype.vim内でのpythonに関する部分の抜粋を添付します。
filetype.vim
au BufNewFile,BufRead *.cpy \ if getline(1) =~ '^##' | \ setf python | \ else | \ setf cobol | \ endif ~~~ au BufNewFile,BufRead *.py,*.pyw,.pythonstartup,.pythonrc setf python au BufNewFile,BufRead *.ptl,*.pyi,SConstruct setf python
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/03/18 11:44 編集
2021/03/19 04:27
2021/03/19 10:15