web-dev-qa-db-ja.com

CygwinターミナルのVimでブロックカーソルを取得するにはどうすればよいですか?

Vimの通常モードでブロックカーソルを使用することに慣れています。これはVimパラダイムで理にかなっています。あなたが押すと x、どの文字が削除されるかは明らかです。

WindowsコンピューターにCygwinをインストールしましたが、ターミナルでVimを使用すると、通常モードであってもIカーソルが表示されます。代わりにカーソルをブロックにするにはどうすればよいですか?

52
Kazark

この質問 Cygwinメーリングリストの==は、いくつかの難解な変数を適切なエスケープシーケンスに設定することにより、質問に回答します。これを.vimrcに追加してください:

let &t_ti.="\e[1 q"
let &t_SI.="\e[5 q"
let &t_EI.="\e[1 q"
let &t_te.="\e[0 q"
80
Kazark

そのための設定が、cygwinターミナルエミュレータにあります。

ウィンドウのタイトルバーを右クリック> [オプション]> [外観]> [カーソル]> [カーソル]ラジオボタン

33
Johnny Hoang

ファイルを作成する~/.minttyrc、以下の行を追加します

CursorType=block

次に、Cygwinのデフォルトのターミナルであるminttyを再起動します。

3
qeatzy

または、バッチファイルを作成することもできます。

 %SYSTEMDRIVE%\cygwin\bin\mintty.exe ^
        -s 132,50 -o ScrollbackLines=10000 ^
        -o BackgroundColour=54,54,54 ^
        -o Transparency=High -o OpaqueWhenFocused=yes ^
        -o CursorColour=Green -o CursorType=block -o CursorBlinks=no ^
        -o Font=Consolas -o FontHeight=10 ^
        /bin/env CHERE_INVOKING=1 /bin/bash -l -i

そしてそれを実行します。

DOSコマンドウィンドウで点滅するカーソルが気に入らない場合は、%COMSPEC% の代わりに /bin/env/...と驚いてください。

0