Emacs में फ़ॉन्ट आकार कैसे सेट करें?


341

मैं अपनी .emacsफ़ाइल में फ़ॉन्ट आकार भी सहेजना चाहता हूं ।



3
यह सबसे सरल उत्तर है जो मेरे लिए काम करता है stackoverflow.com/a/6050987/215094
Zeynel

3
नौसिखिया, .emacs.d/init.elइसके बजाय जो बेहतर है (क्लीनर और बेहतर संस्करण नियंत्रण) का उपयोग करें
लोरेम इप्सम डोलर

जवाबों:


403
(set-face-attribute 'default nil :height 100)

मान 1 / 10pt में है, इसलिए 100 आपको 10pt इत्यादि देगा।


2
मैं ऐसा करने की कोशिश कर रहा हूं, लेकिन 23.1.1 Emacs में ऑटो-कम्पलीट केवल विकल्प दिखाएगा set-face-background set-face-font set-face-inverse-video-p set-face-underline set-face-background-pixmap set-face-foreground set-face-stipple set-face-underline-p
टॉम ब्रिटो

8
@TomBrito कौन सा स्वतः पूर्ण है? मेरे Emacs में, set-face-attributeवास्तव में M-x( execute-extended-command) से गायब है , लेकिन यह M-:( eval-expression) और C-h f( describe-function) में मौजूद है । M-:यदि आप इसे अपनी .emacsफ़ाइल में नहीं रखना चाहते हैं, तो शायद आप क्या चाहते हैं ।
रोरी ओ'केन

1
@ RoryO'Kane कुछ कमांड क्यों उपलब्ध नहीं हैं M-x? Noob सवाल, मुझे यकीन है, लेकिन मैं से परिचित नहीं हूँ कैसे Emacs एक कम स्तर पर "काम"
डेविड्स

6
@ दाविद अच्छा सवाल। मैंने एक उत्तर में लिखा था कि " कुछ एमएसीएस कार्य क्यों उपलब्ध नहीं हैं M-x? "। उत्तर पर शोध करना शैक्षिक था।
रोरी ओ'केन

यह समाधान तब काम नहीं करता है जब आप कुछ चेहरों को अनुकूलित करते हैं, उदाहरण के लिए एक अलग फ़ॉन्ट, तिरछा, आदि। उन्हें पुराने आकार के साथ छोड़ दिया जाएगा, और आप उन्हें व्यक्तिगत रूप से सेट करेंगे।
Hi-Angel

371

से Emacswiki , जीएनयू Emacs 23 एक अंतर्निहित में कुंजी संयोजन:

C-xC-+और C-xC--बफर टेक्स्ट के आकार को बढ़ाने या घटाने के लिए


29
या `Cx C- = 'और' Cx C-- '
होंगझोउ

59
यह उस विशेष बफर के लिए स्थानीय है। इसलिए जब आप अन्य फ़ाइलों पर स्विच कर रहे हैं जो आप संपादित कर रहे हैं, तो वे इस परिवर्तन का प्रभाव नहीं देखेंगे। जब आप बफ़र बंद करते हैं और फिर से खोलते हैं (या Emacs को पुनः आरंभ करते हैं), तो वे पुराने डिफ़ॉल्ट आकार में होंगे। यह वही हो सकता है जो आप चाहते हैं; मैं इसे पूर्णता के लिए कह रहा हूं।
श्रीवत्सआर २२'१२

9
ओपी .emacs में कॉन्फिग को सेव करना चाहता है, और यह नहीं करता है।
xwl

spacemacs UI (macos में), init.el में सेट करने के लिए काम करता है। - stackoverflow.com/a/296316/432903
प्रयागपाद

80

प्रेस शिफ्ट और पहला माउस बटन। आप निम्न प्रकार से फ़ॉन्ट का आकार बदल सकते हैं: इस वेबसाइट में अधिक विवरण है।


1
@AndrewLarned परिवर्तन को स्थायी बनाने के लिए, आप अपनी .emacs फ़ाइल में परिवर्तन करेंगे। (उनके .emacs फ़ाइल में जो कुछ है, उसके एक उदाहरण के लिए क्रिस कॉनवे का जवाब देखें।)
राम नरसिम्हन

क्या यह नियंत्रित करने का कोई तरीका है कि ऐसा करते समय फ़ॉन्ट कितना बढ़ता या घटता है?
मौरिसियो ए। सिनेली

42

M-x customize-face RET defaultआपको चेहरे का defaultचेहरा सेट करने की अनुमति देगा , जिस पर अन्य सभी चेहरे आधार हैं। वहां आप फ़ॉन्ट-आकार सेट कर सकते हैं।

यहाँ मेरे .emacs में क्या है वास्तव में, कलर-थीम मूल बातें सेट करेगा, फिर मेरा कस्टम फेस सेटिंग कुछ सामान को ओवरराइड करेगा। कस्टम-सेट-फेस को emacs के कस्टमाइज़-फेस मैकेनिज़्म द्वारा लिखा गया है:

;; my colour theme is whateveryouwant :)
(require 'color-theme)
(color-theme-initialize)
(color-theme-whateveryouwant)

(custom-set-faces
  ;; custom-set-faces was added by Custom.
  ;; If you edit it by hand, you could mess it up, so be careful.
  ;; Your init file should contain only one such instance.
  ;; If there is more than one, they won't work right.
 '(default ((t (:stipple nil :background "white" :foreground "black" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 98 :width normal :foundry "unknown" :family "DejaVu Sans Mono"))))
 '(font-lock-comment-face ((t (:foreground "darkorange4"))))
 '(font-lock-function-name-face ((t (:foreground "navy"))))
 '(font-lock-keyword-face ((t (:foreground "red4"))))
 '(font-lock-type-face ((t (:foreground "black"))))
 '(linum ((t (:inherit shadow :background "gray95"))))
 '(mode-line ((t (nil nil nil nil :background "grey90" (:line-width -1 :color nil :style released-button) "black" :box nil :width condensed :foundry "unknown" :family "DejaVu Sans Mono")))))

2
कई उन्नत emacs उपयोगकर्ता अनुकूलित प्रणाली का उपयोग नहीं करना पसंद करते हैं, क्योंकि यह त्रुटि प्रवण है और सभी कस्टमाइज़ेशन को इंटरमिल करता है। अपने अनुकूलन को अलग-अलग .el फ़ाइलों में तोड़ना और उन्हें init.el से लोड करना बेहतर है, और हर एक के भीतर अपने मोड अनुकूलन को विशिष्ट कोड के रूप में जोड़ें। ऊपर huaiyuan का उत्तर देखें कि कैसे elisp के माध्यम से फ़ॉन्ट सेट करें।
एडवर्डगार्सन

3
एफडब्ल्यूआईडब्ल्यू, एमएसीएस अनुरक्षक (संभवतः एमएसीएस का "उन्नत" उपयोगकर्ता) अनुकूलित प्रणाली का उपयोग करता है: github.com/jwiegley/dot-emacs/blob/…
बेन

38

यह एक और सरल उपाय है। 24 में भी काम करता है

(set-default-font "Monaco 14")

शॉर्ट कट्स:

`C-+` increases font size
`C--` Decreases font size

15

मुझे अपने में निम्नलिखित मिला है .emacs:

(defun fontify-frame (frame)
  (set-frame-parameter frame 'font "Monospace-11"))

;; Fontify current frame
(fontify-frame nil)
;; Fontify any future frames
(push 'fontify-frame after-make-frame-functions) 

आप अपने चुनने के किसी भी फ़ॉन्ट को सबस्क्राइब कर सकते हैं "Monospace-11"। उपलब्ध विकल्पों का सेट अत्यधिक प्रणाली पर निर्भर है। M-x set-default-fontटैब-पूर्णता का उपयोग करना और देखना आपको कुछ विचार देगा। अपने सिस्टम, Emacs 23 और विरोधी aliasing सक्षम के साथ पर, नाम, उदाहरण के लिए, द्वारा प्रणाली फोंट चुन सकते हैं Monospace, Sans Serifआदि


10

X11 में खुले ईमैक, गोटो मेनू विकल्प, "डिफ़ॉल्ट फ़ॉन्ट सेट करें ..." चुनें, फ़ॉन्ट आकार बदलें। उसी मेनू में "सेव ऑप्शन" चुनें। किया हुआ।


यदि मैं emacs को पुनरारंभ करता हूं, तो परिवर्तन जारी नहीं रहता है।
डिप

9

Zoom.cfg और Global-zoom.cfg फ़ॉन्ट आकार परिवर्तन बाइंडिंग प्रदान करें (EmacsWiki से)

  • C-- या C-mousewheel-up: फ़ॉन्ट आकार बढ़ाता है।
  • C- + या C-mousewheel-down: फ़ॉन्ट का आकार घटाता है।
  • C-0 डिफ़ॉल्ट रूप से फ़ॉन्ट आकार बदलता है।

8

यहां एक समय में एक बिंदु, फ़ॉन्ट ऊंचाई को आकार देने के लिए एक विकल्प दिया गया है:

;; font sizes
(global-set-key (kbd "s-=")
                (lambda ()
                  (interactive)
                  (let ((old-face-attribute (face-attribute 'default :height)))
                    (set-face-attribute 'default nil :height (+ old-face-attribute 10)))))

(global-set-key (kbd "s--")
                (lambda ()
                  (interactive)
                  (let ((old-face-attribute (face-attribute 'default :height)))
                    (set-face-attribute 'default nil :height (- old-face-attribute 10)))))

यह बेहतर है जब आप सभी बफ़र्स में पाठ का आकार बदलना चाहते हैं । मुझे समाधान का उपयोग करना पसंद नहीं है text-scale-increaseऔर text-scale-decreaseगटर में लाइन नंबर बाद में कट सकते हैं।


यह पूर्ण है! बहुत बहुत धन्यवाद।
फोमेंटिया

7

फ़ायरफ़ॉक्स और अन्य कार्यक्रम आपको C- + और C-- के साथ फ़ॉन्ट आकार बढ़ाने और घटाने की अनुमति देते हैं। मैंने अपना .emacs सेट किया ताकि कोड की इन पंक्तियों को जोड़कर मेरे पास वही क्षमता हो:

(global-set-key [C-kp-add] 'text-scale-increase)

(global-set-key [C-kp-subtract] 'text-scale-decrease)

5

एक्वामैक :

(set-face-attribute 'default nil :font "Monaco-16" )

एमएसीएस विकी ग्लोबली से डिफॉल्ट फ़ॉन्ट बदलें , यह कहता है कि आप इनमें से किसी का भी उपयोग कर सकते हैं:

(set-face-attribute 'default nil :font FONT )

(set-frame-font FONT nil t)

जहाँ FONTकुछ ऐसा है "Monaco-16", जैसे:

(set-face-attribute 'default nil :font "Monaco-16" )

विकी पर पहले सुझाव में एक अतिरिक्त समापन कोष्ठक था, जो स्टार्टअप पर एक त्रुटि का कारण बना। मैंने अंततः अतिरिक्त समापन कोष्ठक पर ध्यान दिया, और मैंने बाद में विकी पर सुझाव को सही किया। फिर दोनों सुझावों ने मेरे लिए काम किया।


3

यह सब निर्भर करता है कि फॉन्ट साइज़ में बदलाव से आपका क्या मतलब है। यह EmacsWiki अनुभाग सबसे अच्छी और सबसे संपूर्ण जानकारी प्रदान करता है। यह विभिन्न मामलों (पाठ स्केलिंग, फ्रेम फ़ॉन्ट, बफर / फ्रेम, आदि) को अलग करता है: फ़ॉन्ट आकार बदलना


1

NTEmacs 23.1 में, विकल्प मेनू में "डिफ़ॉल्ट फ़ॉन्ट सेट करें ..." विकल्प है।


1

मैं कंसोल इमैक (एमएसीएस-एनडब्ल्यू) से खुश हूं, आधुनिक vterm कार्यान्वयन (जैसे गनोम-टर्मिनल) में बेहतर फ़ॉन्ट समर्थन है। इसके अलावा अगर आप उस के लिए अभ्यस्त हो जाते हैं, तो आप tmux का उपयोग कर सकते हैं, और इसलिए दूरस्थ सर्वर पर अपने पूरे वातावरण के साथ काम करना संभव हो जाता है, यहां तक ​​कि इसके बिना।



1

मैं का उपयोग हाइड्रा नियंत्रण फ़ॉन्ट वृद्धि करने के लिए पैकेज / दबाकर समीपवर्ती कमी f2 + + + +/ f2 - - - -, जिसका अर्थ है कि प्रेस f2एक बार, और उसके बाद का उपयोग कर +/ -केवल नियंत्रित करते हैं, और द्वारा डिफ़ॉल्ट फ़ॉन्ट आकार को बहाल करने की f2 0। क्योंकि मेरे पास कीपैड है, इसलिए मैं फ़ॉन्ट सेटिंग के लिए कीपैड भी बांधता हूं।

(defhydra hydra-zoom (global-map "<f2>")
  "zoom"
  ("<kp-add>" text-scale-increase "in")
  ("+" text-scale-increase "in")
  ("-" text-scale-decrease "out")
  ("<kp-subtract>" text-scale-decrease "out")
  ("0" (text-scale-set 0) "reset")
  ("<kp-0>" (text-scale-set 0) "reset"))

और आधुनिक संपादक माउस नियंत्रण कार्यक्षमता कुंजी बाइंडिंग, प्रेस नियंत्रण + माउस व्हील द्वारा फ़ॉन्ट को बढ़ाने / घटाने के लिए समर्थित है।

(global-set-key (kbd "<C-wheel-up>") 'text-scale-increase)
(global-set-key (kbd "<C-wheel-down>") 'text-scale-decrease)

माउस व्हील के लिए प्रमुख बाइंडिंग काम नहीं करती है, मेरे पास संस्करण हैGNU Emacs 24.3.1 (x86_64-pc-linux-gnu, GTK+ Version 3.10.7)
ज़ेल्फिर कल्टस्टाहल

1
वे (global-set-key (kbd "<C-mouse-4>") 'text-scale-increase) (global-set-key (kbd "<C-mouse-5>") 'text-scale-decrease) मेरे संस्करण में एमएसीएस (25)
स्टेफानो

1

यहां एक स्निपेट दिया गया है जो आपको इंटरेक्टिव फ़ंक्शन का उपयोग करके सीधे वैश्विक फ़ॉन्ट आकार को निर्दिष्ट करने देता है:

(defun set-font-size ()
    "Set the font size."
  (interactive)
  (set-face-attribute
   'default nil :height
   (string-to-number
    (read-string "Font size: " (number-to-string (face-attribute 'default :height nil))))))
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.