Làm cách nào để thay đổi kích thước phông chữ và loại phông chữ mặc định của emacs?


Câu trả lời:


72

Bạn có thể sử dụng thanh menu. Đi tới Options-> Set Default Font....

Sau khi bạn chọn một phông chữ, đừng quên nhấn Options-> Save Options—còn nữa, phông chữ mới của bạn sẽ không được lưu sau khi bạn đóng Emacs.


9
Điều này không hoạt động (có lẽ nó đã từng?) Nó chỉ thay đổi phông chữ cho khung hiện tại và nó không được lưu cho các phiên trong tương lai. Xem câu trả lời này để biết một phương pháp hoạt động.
alexis

@alexis: Nó vẫn hoạt động với tôi trên Emacs-24.2. Đây là một ảnh chụp màn hình . (Xin lỗi vì sự lựa chọn phông chữ ghê tởm: P.) Nó cũng được lưu đúng cách khi tôi khởi động lại Emacs. Có lẽ bạn có một sự khác biệt về cấu hình của bạn hoặc một cái gì đó?
Tikhon Jelvis

3
Phiên bản của tôi hầu như không khác: Tôi đã có GNU Emacs 24.3.1 trên OS X và nó không hoạt động. Rõ ràng có điều gì đó khác biệt, nhưng hãy xem thêm câu hỏi và thảo luận ở câu trả lời mà tôi đã liên kết . Cách tiếp cận đó đã tiết kiệm một ngày cho tôi. Tôi đoán kết luận là "YMMV".
alexis

1
Cũng không hoạt động với Emacs 24.4 trên OS X 10.10.5. Nhưng thay đổi trực tiếp thành ~ / .emacs hoạt động.
Fonzie

7
Nếu bạn đã ẩn thanh menu nhưng vẫn muốn sử dụng bộ chọn phông chữ GUI với các bản xem trước, bạn có thể sử dụng M-x menu-set-font.
Vladimir Panteleev

114

Bạn cũng có thể làm như sau trong .emacstệp của mình .

Emacs 23,1

(set-frame-font "Inconsolata 12" nil t)

Phiên bản cũ hơn của Emacs

(set-default-font "Inconsolata 12" nil t)

12
(set-default-font Fontname-Size) hiện không được sử dụng nữa (set-frame-font Fontname-Size)
Napoléon

1
Bạn cũng nên đặt FRAMESđối số tđể ảnh hưởng đến tất cả các khung, không chỉ khung hiện tại. (set-frame-font Fontname-Size nil t)
Nick McCurdy,

Bạn cũng có thể chạy describe-fontđể xác định font chữ hiện tại (ví dụ nếu đó là bộ Xuyên tùy chỉnh) hoặc để con số ra tùy chọn có thể cho "tên đầy đủ"
kolen

7

Để có được danh sách mở rộng về việc sử dụng tùy chỉnh

Mx khuôn mặt tùy chỉnh RET


4

Emacs 25.1 trên MacOS có Menlo 12 làm mặc định. Tôi muốn tăng kích thước.

C-x C-f ~/.emacs

Thêm cái này vào cuối ~/.emacstệp

(set-default-font "Menlo 14")

Để xem hiệu ứng thay đổi ngay lập tức khi ở trong ~/.emacs

M-x eval-buffer [RET]


1
Điều này hoạt động cho tệp ĐẦU TIÊN mà tôi mở khi khởi chạy emac, nhưng sau đó các bộ đệm tiếp theo sử dụng lại phông chữ nhỏ hơn.
HaPsantran

4

Trong câu trả lời của tôi, tôi sẽ tập trung vào việc đặt kích thước phông chữ mặc định thông qua X tài nguyên. Việc sử dụng tài nguyên X đã được đề cập trong câu trả lời đề cập ~/.Xdefaults; Tôi sẽ cung cấp thêm chi tiết (giống như tôi đã mô tả trong https://unix.stackexchange.com/a/426914/4319 . Ngoài chiều cao của "khuôn mặt" "mặc định" trong Emacs, người ta có thể đặt tương tự các thông số phông chữ khác.

Để đặt chiều cao phông chữ mặc định cụ thể cho Emacs, tôi đã đặt vào /etc/X11/Xresources-site( /etc/X11/Xresourcescũng được, mặc dù bản phân phối của bạn có thể bị ghi đè):

Emacs.default.attributeHeight: 94

Điều này cũng sẽ ảnh hưởng đến các máy khách X từ xa là Emac (ví dụ: emac bắt đầu trên máy chủ từ xa thông qua ssh).

/etc/X11/Xresources-site/etc/X11/Xresources(và có thể là ~/.Xresources~/.Xdefaults) thường được đọc khi bắt đầu phiên X của bạn; để ảnh hưởng đến tài nguyên X hiện tại của bạn ngay lập tức, hãy chạy một cái gì đó như xrdb -merge /etc/X11/Xresources-site. Các tài nguyên X có thể được xem bởi xrdb -query.

Trên thực tế, trong trường hợp của tôi, /etc/X11/Xresources-siteđang được đọc nhờ một dòng trong /etc/X11/Xresources(được đọc bởi các tập lệnh bắt đầu):

#include "/etc/X11/Xresources-site"

vì thế /etc/X11/Xresourceslà điều được đọc cho chắc chắn.

Cũng có một số tệp có cùng cú pháp được đọc mỗi khi chương trình X như emacs khởi động. Trong trường hợp của tôi, đó là: ~/.Xdefaults-MY_HOST_NAME, /etc/X11/app-defaults/Emacs(chỉ dành cho emacs-athena, không phải cho emacs-gtk3), /usr/share/X11/app-defaults/Emacsvv (Nhưng tôi thích ý tưởng của các nguồn tài nguyên X tải hơn - hiển thị với xrdb -query, vì thế mà khách hàng X từ xa đọc các nguồn lực cùng X .)

Các tài nguyên X khác mà Emacs hiểu được mô tả tại https://www.gnu.org/software/emacs/manual/html_node/emacs/Table-of-Resources.html#Table-of-Resources .

Emacs 24.3 có một lỗi khiến nó không tôn trọng các thuộc tính cho khuôn mặt mặc định đến từ tài nguyên X, chẳng hạn như trong ví dụ của tôi ở trên. Điều này đã được sửa kể từ ngày 24.4.


3

Tôi có cài đặt bên dưới trong init.el:

(set-face-attribute 'default nil :font "Menlo" :height 160)

Lưu ý: Nếu bạn có giá trị đặt trước cho kích thước cửa sổ (chiều rộng và chiều cao), heightthuộc tính của phông chữ sẽ can thiệp vào bố cục đó.


2

Nếu bạn sử dụng Linux / X11, bạn có thể cần thiết lập cài đặt này ~/.Xdefaults. Tôi đã đặt phông chữ ở đó vì các câu trả lời khác ở đây không có hiệu lực.

Tôi có thể xem các cài đặt phông chữ có sẵn bằng cách chạy trong Emacs: helm-select-xfont

Sau đó, tôi bắt đầu nhập Consovà tôi thấy các mục nhập như:

-Consolas-normal-normal-normal-*-*-*-*-*-m-0-iso10646-1
...

Vì vậy, sau đó tôi đặt nó vào ~/.Xdefaults, đặt kích thước 12là:

Emacs.font: xft:-*-Consolas-normal-normal-normal-*-12-*-*-*-m-0-iso10646-1

và khởi động lại Emacs.


0

Chỉ cần nhấn M-xrồi nhập set-frame-font. Tất cả các phông chữ có sẵn trong máy của bạn sẽ được hiển thị, hãy chọn phông chữ bạn tìm. Tôi sử dụng cách này để thay đổi loại phông chữ trong của tôi Emacsrất đơn giản; chứ không phải thay đổi .spacemacshoặc .emacstệp.


0

Cách Emacs

  1. Mx customize-group
  2. Đi vào faces
  3. Nhấp vào "Khuôn mặt cơ bản"
  4. Mở / Mở rộng "Mặc định"
  5. Thay đổi tên phông chữ (như "Inconsolata") và bỏ chọn "xưởng đúc"
  6. Nhấp vào "Áp dụng và lưu"
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.