18

ターミナルで Vim を実行すると、Vim ウィンドウが画面スペース全体を埋め尽くすわけではありません。これは、ターミナルの背景色が vim の背景色と根本的に異なる場合に非常にイライラします。確かに、それらをある程度同期させたいと思うかもしれませんが、それが望ましくないことを考えると、vim をウィンドウ全体に広げるにはどうすればよいでしょうか? 以下のスクリーンショットは、問題を示しています。

ここに画像の説明を入力

4

5 に答える 5

5

解決策は 2 つだけです。

  • 端末エミュレータの背景と Vim の背景を同じ色にします。

  • または Vim の背景色を削除します。

Vim、シェル、およびすべてのコマンドライン プログラムは、画面をグリッドに分割します。グリッドの各セルは文字サイズです。GUI ウィンドウのサイズ (ピクセル単位) がシェルのグリッド サイズに合わない場合は、見苦しいパディングが発生します。

例:

  • 私のセル サイズは 7x19 で、ディスプレイは 1680x1050 です。
  • 240 列と 55 行を収めることができますが、画面の下部には常に 5 ピクセルのパディングがあります。

さらに、ほとんどの端末エミュレーターは、読みやすさを向上させるために使用可能な画面の周りにデフォルトのパディングを追加するため、端末エミュレーターで実行したときに Vim を実際にフルスクリーンにすることはできません。

于 2014-11-14T20:39:15.597 に答える
4

お使いの端末では、1 行 / 列未満の増分でサイズ変更できるようです。

一方、Vim は完全な行または列のみを描画します。したがって、Vim がそのウィンドウを表示するとき、端末で部分的に表示されている行/列は描画されません。

于 2014-11-14T19:54:05.527 に答える
2

私は最近、この問題を視覚的に解決するのに役立つ中規模の記事を書きました。リンク

これを行う 1 つの方法は、Vim の実行中に端末の背景色を変更することです。これは、端末エミュレーターでは使用できない可能性があるエスケープ シーケンスと端末の色を使用します。

change_terminal_background() {
 local COLOR="$1"

 if [ "$TERM" == "screen-256color" ]; then
# TMUX
  echo -ne "\\ePtmux;\\e\\033]11;$COLOR\\007\\e\\\\"
 else
#  NOT TMUX
  echo -ne "\\033]11;$COLOR\\007"
 fi
}

次のように呼び出します。

vim() {
# Change the terminal's color when Vim starts
  change_terminal_background "#924560"

  /usr/bin/vim "$@"

# Change it back when it exits
  change_terminal_background "#000000"
}
于 2018-10-20T08:05:32.073 に答える