git diff内でマウスホイールを使用して新しい行にスクロールできますか?


12

Ubuntu 16.04のデフォルトターミナルを使用しています(GNOMEと思いますか?)

私が直面している問題は、git diffコマンドを使用してローカルの変更を検査するとき、マウスホイールを使用して上下にスクロールできるが、下に行くと新しい行が表示されないことです(したがって、1ページしか表示されません変更)。次の行に進むために、キーボードのスペースまたは上/下矢印を使用できますが、マウスホイールでこれを作成できますか?

ところで、lessコマンドを使用すると、期待どおりに動作します->下にスクロールすると新しい行に移動します。

回答:


20

@edwinkslの回答のおかげで、問題の解決策を見つけることができました。

したがって、デフォルトではgitはLESSページャーとして使用し、デフォルトの引数はであると信じていますFRSX

git 1.8以降ではless -+<option>、でオプションを削除できます。私の場合、Xオプションを削除する必要があります。

git config --global --replace-all core.pager 'less -+X'

しかし、@ pcworldが言及しているように、これは単一のページに収まるdiffで問題を引き起こす可能性があります。

git config --global --replace-all core.pager 'less -+FX'

スクロールの問題を修正しました。


2
-+Fオプションを追加するlessか、1つの画面に収まる出力が空です。1つの画面に収まる場合でも、両方のオプションを組み合わせると、gitの出力がページャーにパイプされます。ただし、出力が画面サイズを超えた場合にのみlessを呼び出すlessのラッパースクリプトがあります。参照は、#10と#11。このDebianのバグへのコメント少ない上、この質問を技術的な詳細について。
pcworld

3

/programming//a/2183920/486919から、これを実行して差分強調表示を保持する1つの方法はgit diff、ページャーなしで使用することです。

git --no-pager diff

この答えをありがとう、これは私が探していた正確な解決策を見つけるのに役立ちます->マウスホイールのスクロールを有効にします。ページャーを削除するのは良い回避策ですが、最初から差分の読み取りを開始することを好みます。
トドル

@Todorそれは公平です。--no-pager短い差分には最適ですが、長い差分には最適ではないことに同意します。
edwinksl
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.