web-dev-qa-db-ja.com

Emacsのマウススクロールをより遅くスムーズにするにはどうすればよいですか?

マウスホイールを使用してEmacsでスクロールすると、一度に5行スクロールしますが、これは多すぎると思います。新しい値をどこに設定すればよいですか?

また、Emacsをマウス(ホイールまたはスクロールバー)でスクロールすると、カーソルがジャンプして表示されている画面領域内に留まります-その動作をオーバーライドして、それがあった場合でも、その動作をそのままにしておく方法はありますか?画面から出ますか?つまり、新しく入力した記号が表示される位置をスクロールによって変更したくないのです。

コードのリモートセクションを覗いて、すぐに元の位置に戻る方法についての代替案も歓迎します。

47
Headcrab

変数mouse-wheel-scroll-amount(mwheel.el内)で量を制御できます。

編集:例: (setq mouse-wheel-scroll-amount '(1 ((shift) . 1) ((control) . nil)))を一度に1行ずつ.emacsに追加します。

.emacsにも(setq mouse-wheel-progressive-speed nil)がありますが、これはより良い動作だと思います。

79
luapyad

breadcrumb を使用して、バッファーまたはすべてのバッファーの周囲に証跡を残します。

ブレッドクラムをドロップし、必要なものをすべて確認してから、ブレッドクラムに戻ります。これが私が設定したものです、FWIW:

(global-set-key [(f6)] 'bc-set)
(global-set-key [(shift f6)] 'bc-list)
(global-set-key [(control f6)] 'bc-previous)
(global-set-key [(meta f6)] 'bc-next)
(global-set-key [(shift control f6)] 'bc-local-previous)
(global-set-key [(shift meta f6)] 'bc-local-next)

お役に立てば幸いです。

6
Joe Casadonte

ブックマークソリューションまたはレジスタを使用できますが、組み込みマークとマークリングも使用できます-

(default binding) 

C-Space to set mark (Push a mark in mark ring)
C-u C-Space to pop a mark off the ring; repeat this a few more time should 
            get you where you like to be

または、ハイライト領域がオンになっていない場合、またはハイライトを表示してもかまわない場合は、

C-x C-x (exchange-point-and-mark) switch between you current point and your previous mark.
2
polyglot

コードのリモートセクションを覗いて、すぐに元の位置に戻る方法についての代替案も歓迎します。

BobGlicksteinの "Writing GNU Emacs Extensions" )の第3章は、プログラミング例としてunscroll-function(スクロールコマンドスタック内の指定された場所に戻る)を構築します。 。

コード オンラインで表示されます ですが、それを使用すると ECBとの競合が報告されています があります。

2

これが私の設定です:

(setq mouse-wheel-scroll-amount '(0.07))
(setq mouse-wheel-progressive-speed nil)
(setq ring-bell-function' ignore) 
2
Ivelin

現在のビューの外側のどこかに「ポイント」が存在することは不可能です。すべてのポイント移動コマンドは、ディスプレイも移動します。それがemacsの基本的な前提だと思います。

最後のポイントで必要なこと、つまりリモートセクションをのぞいて戻ってくることは、レジスタを使用して実行できると思います。

これにより、レジスタAの位置が保存されます。

C-x r A

そして、これはレジスタAから位置を復元します。

C-x r j A

これを頻繁に行う場合は、それらを少し冗長でないものにバインドすることをお勧めします:)

2
Andrew Lusk

Easy-come-easy-go 自動名前付きブックマーク - ブックマーク+ 。キーを押すだけで作成または削除できます。マークを設定するのと同じくらい簡単です。それらは永続的または一時的である可能性があります。必要に応じて、それらを自動的に強調表示できます(フリンジまたはライン)。

1
Drew