วิธีการตั้งค่าขนาดตัวอักษรเริ่มต้น?


13

ฉันพบว่าตัวเองกำลังซูมออกอย่างต่อเนื่อง (Cx C -) ในทุกบัฟเฟอร์ที่ฉันใช้เพื่อดูบรรทัดของโค้ดที่ฉันกำลังทำงานอยู่

มีวิธีตั้งค่าระดับการซูมใน. emacs ของฉันไม่ใช่แบบโต้ตอบหรือไม่? หรือฉันควรตั้งค่าแบบอักษร? ฉันใช้การซูมเนื่องจากเป็นวิธีที่ง่ายที่สุด / เร็วที่สุด แต่ฉันอยากหาวิธีแก้ปัญหาที่ถาวรกว่านี้ มีข้อเสียหรือข้อได้เปรียบในการใช้หนึ่งกับอื่น ๆ ? ฉันไม่ชัดเจนในความแตกต่าง


1
วิธีการเกี่ยวกับ ?: (face-remap-add-relative 'default '((:height 300)))จะระเบิดขึ้น และ(face-remap-add-relative 'default '((:height 120)))จะหดหรือไม่ คุณสามารถเปลี่ยนความสูงได้ตามต้องการ คุณสามารถเปลี่ยนสิ่งเหล่านั้นให้เป็นฟังก์ชั่นอินเทอร์แอคทีฟและจับคู่กับแป้นพิมพ์ลัดที่คุณชื่นชอบ หากต้องการลองใช้ให้วางลงใน*Scratch*บัฟเฟอร์ของคุณและวางเคอร์เซอร์ที่ส่วนท้ายของรหัสและประเภทC-x C-e
lawlist

3
หากคุณกำลังซูมออกในบัฟเฟอร์ที่คุณใช้จริง ๆ ทำไมไม่เพียง แต่ตั้งค่าขนาดตัวอักษรให้เล็กลง? ดูหัวข้อนี้ดังนั้นในปัญหาที่แน่นอน
ด่าน

@ ด่าน: หากคำถามไม่ได้เกี่ยวกับการซูม แต่อันที่จริงแล้วเป็นเรื่องเกี่ยวกับวิธีการตั้งค่าขนาดตัวอักษรเริ่มต้นบางทีก็ควรจะปิดเป็นแบบซ้ำซ้อนกับคำถามที่คุณอ้างถึง ดูเหมือนว่า OP อาจไม่แน่ใจว่าเขาต้องการอะไรในเรื่องนี้: ตั้งค่าขนาดตัวอักษรหรือซูม
ดึง

@ ดึง: ตกลง OP: คุณต้องการตั้งค่าขนาดตัวอักษรหรือซูมหรือไม่
ด่าน

1
คำตอบของฉันจะเป็น: ในกรณีนี้ให้ดูหน้าEmacs Wiki ที่ฉันอ้างถึงในคำตอบของฉัน ครอบคลุมทุกอย่างเกี่ยวกับการตั้งค่าแบบอักษรและขนาดแบบอักษรทั้งแบบโต้ตอบ (เช่นการซูม) และในไฟล์ init (การตั้งค่าเริ่มต้น) มันเป็นสถานที่ที่จะเริ่มต้น (และอาจเป็นสถานที่สิ้นสุด)
ดึง

คำตอบ:


8

ใช่. สิ่งที่คุณต้องการคือการซูม (ขนาดตัวอักษร) กรอบโดยไม่คำนึงว่าบัฟเฟอร์จะปรากฏที่ใด

ดูห้องสมุดzoom-frm.elและคำอธิบายเหล่านี้ซูมกรอบและซูมบัฟเฟอร์

ดูโดยเฉพาะอย่างยิ่งคำสั่งzoom-in/outซึ่งทำทั้งสองอย่าง มันถูกผูกไว้โดยค่าเริ่มต้นกุญแจผูกพันตามปกติเพียงแค่ buffer ซูม: C-x C-+, C-x C--, และC-x C-0 C-x C-=คุณยังสามารถผูกคำสั่งzoom-inและzoom-outการหมุนของล้อเลื่อนของเมาส์ได้ การใช้C-uกับคำสั่งใด ๆ เหล่านี้สลับระหว่างการซูมเฟรมและการซูมบัฟเฟอร์

นอกจากซูมหรือเฟรมบัฟเฟอร์แบบโต้ตอบคุณสามารถกำหนดขนาดตัวอักษรเริ่มต้นที่คุณต้องการสำหรับทุกเฟรมได้อย่างแน่นอน

หน้าEmacs-Wikiเดียวกันมีข้อมูลเพิ่มเติมเกี่ยวกับการตั้งค่าแบบอักษรและขนาดแบบอักษร


อัปเดตหลังจากคุณตัดสินใจว่าคุณต้องการกำหนดขนาดตัวอักษรเริ่มต้น

คำตอบอยู่ในบรรทัดสุดท้ายที่ฉันเขียนไว้ด้านบน: ดูหัวข้อทั่วโลกเปลี่ยนแบบอักษรเริ่มต้นบนหน้าชุดแบบอักษรของวิกิพีเดีย Emacs มันบอกวิธีการตั้งค่าแบบอักษรเริ่มต้น (นอกจากนี้ยังบอกวิธีย่อขนาดตัวอักษรแบบโต้ตอบ)

นี่คือข้อมูลสั้น ๆ - วางไว้ในไฟล์ init ของคุณ:

(add-to-list 'default-frame-alist '(font . FONT ))
(set-face-attribute 'default t :font FONT )

แต่อ่านส่วนทั้งหมดของหน้านั้นตามที่บอกคุณเพิ่มเติมรวมถึงวิธีการตั้งค่าแบบอักษรเริ่มต้นโดยใช้.Xresourcesและ Emacs daemon ตัวอย่างของสายที่เหมาะสมสำหรับ~/.Xresourcesการตั้งขนาดตัวอักษรเริ่มต้นคือ:

Emacs.default.attributeHeight: 94

ฉันอ่านในเอกสารที่ว่าzoom-frm.elมีความสามารถในการบันทึกการปรับแต่งแม้ว่ามันจะดูสับสนเล็กน้อย (ฉันไม่ได้ทำอะไรมากกับอินเทอร์เฟซที่กำหนดเองซึ่งชอบที่จะกำหนดสิ่งต่าง ๆ ในไฟล์ init แทน) ฉันจะลองดู
aepound

ใช่คำอธิบายของไฟล์zoom-frm.elจะบอกวิธีบันทึกการปรับเปลี่ยนแบบอักษรรวมถึงวิธีการทำโดยไม่ต้องใช้ UI ที่กำหนดเอง FWIW ฉันขอแนะนำให้คนใช้กำหนดเอง แต่ใช้แยกต่างหากcustom-file(ดูตัวแปรนั้น) แทนที่จะปล่อยให้กำหนดเองเขียนรหัสไปยังไฟล์ init ของพวกเขา
ดึง

11

หากคุณต้องการใช้ตัวเลือกฟอนต์ GUIกับตัวอย่างและทั้งหมดคุณสามารถใช้M-x menu-set-font

Emacs เลือกแบบอักษร


1
ขอบคุณนี้ควรจะคำตอบเพียงคำแนะนำที่นี่ในหน้าวิกิพีเดีย, บนหน้าแรกของ Aquamacs!
agam

คุณจะทำให้ถาวรนี้ได้อย่างไร
smonff

3

ฉันใช้สิ่งนี้เพื่อซูม Emacs-wide (ไม่ใช่แค่บัฟเฟอร์ปัจจุบัน):

;; http://blog.vivekhaldar.com/post/4809065853/dotemacs-extract-interactively-change-font-size
(defun my/zoom-in ()
  "Increase font size by 10 points"
  (interactive)
  (set-face-attribute 'default nil
                      :height
                      (+ (face-attribute 'default :height)
                         10)))

(defun my/zoom-out ()
  "Decrease font size by 10 points"
  (interactive)
  (set-face-attribute 'default nil
                      :height
                      (- (face-attribute 'default :height)
                         10)))

;; change font size, interactively
(global-set-key (kbd "C->") 'my/zoom-in)
(global-set-key (kbd "C-<") 'my/zoom-out)
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.