web-dev-qa-db-ja.com

emacsのフォントサイズを増減するためのキーのバインド

私の端末では( ターミネーター があります)キーの組み合わせを使用できます Ctrl+ そして Ctrl- フォントサイズを増減します。

Emacsでは、次のようにしてfont-heightを設定できます。

(set-face-attribute 'default nil :height 70)

しかし、それを増減する方法がわかりません。これをemacs構成に簡単に追加するにはどうすればよいですか?

42
dangonfast

あなたが欲しいと思うC-x C-+またはC-x C--

113
Stefan

私はお勧めします:

(global-set-key (kbd "C-+") 'text-scale-increase)
(global-set-key (kbd "C--") 'text-scale-decrease)

@Stefanによって言及されているデフォルトのキーバインディングが機能しますが、私はより一般的に確立されているキーバインディングも使用したいと思っています。ところで、 C-x C-= フォントサイズも大きくし、 C-x C-0 デフォルトのフォントサイズに戻します。

16
Bozhidar Batsov

C-x C-+およびC-x C--は、回答のpartのみを提供します:バッファのテキストスケーリング。

特定のframeのフォントサイズを(そのフレーム内のすべてのウィンドウ/バッファにわたって)変更するか、または指定されたバッファの(見かけの)フォントサイズ(すべてのウィンドウ/フレーム全体)。後者はtext scalingと呼ばれ、それがバニラEmacs C-x C-+およびC-x C--あげます。

図書館 - zoom-frm.el は、同じコマンドで両方の種類のズームを提供します。同じコマンドをバインドします、zoom-in/out、 両方へ C-x C--およびC-x C-+。フレームまたはバッファのいずれかを拡大および縮小します。プレーンなプレフィックス引数は、ズームフレームとズームバッファを切り替えます。それをマウスキーにもバインドします(私はS-mouse-1(in)およびC-S-mouse-1(アウト)とマウスホイール(イン/アウト)。

図書館 - face-remap+.el テキストのスケーリングを修正して、ウィンドウサイズがテキストサイズの変化に対応するように縮小または拡大し、画面の領域を解放できるようにします。

このEmacsWikiページ には、このよくある質問についての詳細があります。

14
Drew

また、コントロールキーを押すとマウスホイールが変更されます。

(global-set-key [C-mouse-4] '(lambda () (interactive) (text-scale-increase 1)))
(global-set-key [C-mouse-5] '(lambda () (interactive) (text-scale-decrease 1)))

それは大丈夫ですが、それはバッファローカルです。次のコードは、コントロール+マウスホイール/トラックパッドを使用して、すべてのバッファーのフレームフォントの高さを変更します。

(defun change-font-height (delta)
  (set-face-attribute 'default 
                      (selected-frame)
                      :height (+ (face-attribute 'default :height) delta)))
(global-set-key [C-mouse-4] '(lambda () (interactive) (change-font-height +4)))
(global-set-key [C-mouse-5] '(lambda () (interactive) (change-font-height -4)))
6
Reece

Purcellの.emacs.dとそのフォント tils を確認してください。

5
stackunderflow