จะเปลี่ยนข้อความ minibuffer เริ่มต้นได้อย่างไร


10

หลังจากโหลดไฟล์เสร็จฉันได้รับข้อความนี้ใน minibuffer:

สำหรับข้อมูลเกี่ยวกับ GNU Emacs และระบบ GNU ให้พิมพ์ Ch Ca

มันถูกกระตุ้นโดยอะไรและฉันจะเปลี่ยนมันได้อย่างไร

คำตอบ:


18

display-startup-echo-area-messageเรียกโฆษณาเล็ก ๆ นี้เว้นแต่คุณจะใช้การปรับแต่งและตั้งไว้ที่นั่นหรือตั้งไว้ในของคุณuser-init-file(เพราะมันจะดำเนินต่อไปและสแกนไฟล์นี้เพื่อหาสิ่งที่ดูเหมือนว่าดูนิยามของdisplay-startup-echo-area-messageรายละเอียดเต็มไปด้วยเลือด)

มีวิธีการแทนที่ด้วยสิ่งที่แตกต่างกันอย่างสมบูรณ์เพียงแค่กำหนดใหม่ในการกำหนดค่า Emacs ของคุณ

(defun display-startup-echo-area-message ()
  (ข้อความ "ให้แฮ็คเริ่มขึ้น!"))

3

สิ่งนี้กำลังถูกทริกเกอร์โดยdisplay-startup-echo-area-messageซึ่งถูกเรียกเมื่อเวลาเริ่มต้น

ข้อความนี้ทำให้ยากที่จะลบโดยเจตนา (ฉันเดาว่าเพราะโครงการ GNU รู้สึกว่าต้องการโฆษณา) คุณยังคงสามารถปิดใช้งานได้โดยปรับแต่งinhibit-startup-echo-area-message:

M-x customize-variable inhibit-startup-echo-area-message RET

ขออภัยฉันเป็นคนเดียวที่ลองใช้เคล็ดลับนี้โดยไม่เห็นการเปลี่ยนแปลงหรือไม่
Nsukami _

FYI: เป็นการยากที่จะจงใจสำหรับกรณีที่ติดตั้ง Emacs โดย sysadmin บนเครื่องที่ผู้ใช้หลายคนใช้ร่วมกันดังนั้น sysadmin จึงไม่สามารถตั้งค่าข้อความ inhibit-startup-echo-area อาจเป็นกรณีใช้งานที่ค่อนข้างหายากในปัจจุบัน
Stefan

2

ข้อความช่วยเหลือสำหรับinhibit-startup-echo-area-messageรัฐ:

Non-nil ยับยั้งข้อความพื้นที่ echo เริ่มต้นเริ่มต้น การตั้งค่าตัวแปรนี้จะมีผลเฉพาะเมื่อคุณทำกับบัฟเฟอร์การปรับแต่งหรือถ้าไฟล์ init ของคุณมีบรรทัดของแบบฟอร์มนี้:

(setq inhibit-startup-echo-area-message "YOUR-USER-NAME")

หากไฟล์ init ของคุณคอมไพล์ด้วยไบต์ให้ใช้แบบฟอร์มต่อไปนี้แทน:

(eval '(setq inhibit-startup-echo-area-message "YOUR-USER-NAME"))

1

หากคุณใช้ Emacs config ที่แชร์ระหว่างเครื่อง (เช่นผ่านการควบคุมเวอร์ชัน) และไม่สามารถป้อนชื่อผู้ใช้ของคุณได้อย่างชัดเจนคุณสามารถใช้:

(put 'inhibit-startup-echo-area-message 'saved-value t)
(setq inhibit-startup-echo-area-message (user-login-name))

... ตามคำแนะนำจากข้อผิดพลาดในรายชื่อผู้รับจดหมาย สิ่งนี้จะตั้งค่าsaved-valueคุณสมบัติบนตัวแปรinhibit-startup-echo-area-messageก่อนที่จะตั้งค่าเป็นชื่อล็อกอินของคุณซึ่งหลีกเลี่ยงคุณลักษณะด้านความปลอดภัยที่ต้องการ (จากการปล่อยให้ผู้ใช้ไม่มีคำแนะนำสำหรับการขอความช่วยเหลือ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.