TL; DR
ก่อนที่คุณจะตั้งค่าตัวแปรใด ๆ คุณต้องรู้ว่าจะตีความตัวแปรอย่างไร ในทำนองเดียวกันก่อนที่คุณจะเรียกใช้ฟังก์ชันใด ๆ (ไม่รวมถึงโหมดที่ใช้เพื่อสลับโหมดรอง) คุณต้องรู้ว่าอาร์กิวเมนต์ของฟังก์ชันนั้นถูกตีความอย่างไร
ใช้C-hfและC-hvเพื่อดูเอกสารสำหรับฟังก์ชั่นหรือตัวแปรที่เป็นปัญหา ควรระบุค่าที่คาดไว้
"Non-ศูนย์" หมายถึงตัวอักษรอะไรnil
ที่ไม่ได้เป็น ซึ่งรวมถึง0
และตัวเลขติดลบ
โหมดรอง
ลองมาตัวอย่างที่เฉพาะเจาะจง พิมพ์C-hfblink-cursor-mode
และกดRETเพื่อดูเอกสารประกอบการใช้งานสำหรับblink-cursor-mode
:
(โหมดกะพริบตาเคอร์เซอร์และตัวเลือก ARG)
สลับเคอร์เซอร์กะพริบ (โหมดเคอร์เซอร์กะพริบตา) ด้วยอาร์กิวเมนต์นำหน้า ARG ให้เปิดใช้งานโหมดกะพริบตาเคอร์เซอร์หาก ARG เป็นบวกและปิดใช้งานเป็นอย่างอื่น หากถูกเรียกจาก Lisp ให้เปิดใช้งานโหมดหากไม่ระบุ ARG หรือไม่มี
เราสามารถเปิดใช้งานโหมดเคอร์เซอร์กะพริบได้ด้วยวิธีใดวิธีหนึ่งต่อไปนี้:
(blink-cursor-mode) ; Omitted argument
(blink-cursor-mode 1) ; Positive argument
(blink-cursor-mode t) ; True argument
(blink-cursor-mode nil) ; nil argument (don't use this)
ขอให้สังเกตว่าการโต้แย้งของt
จะทำงานแม้ว่าสตริง doc ไม่ได้พูดถึงมันโดยเฉพาะ แม้ว่าจะเป็นกรณีนี้การเดิมพันที่ปลอดภัยที่สุดของคุณคือการใช้สิ่งที่สตริง doc บอกให้คุณใช้ซึ่งในกรณีนี้คือค่าบวก
นอกจากนี้ให้สังเกตว่าการโต้แย้งของnil
จะทำงาน ฉันขอแนะนำอย่างมากกับnil
วิธีนี้เพราะมันทำให้ความตั้งใจของคุณไม่ชัดเจน หากฉันอ่านรหัสเสียงกระเพื่อมของคุณและฉันเห็นการnil
โต้แย้งฉันจะสมมติว่าคุณต้องการปิดการใช้งานโหมดรอง
นอกจากนี้เรายังสามารถปิดใช้งานblink-cursor-mode
ด้วยวิธีต่อไปนี้:
(blink-cursor-mode 0) ; Non-positive argument
(blink-cursor-mode -1) ; Negative argument
แจ้งให้ทราบอีกครั้งว่าnil
เป็นไม่ได้เป็นหนึ่งในวิธีการที่จะปิดการใช้งานโหมดย่อยนี้ นี่เป็นจริงของโหมดย่อยเกือบทุกโหมดที่คุณจะพบ
ตัวแปร
ทีนี้ลองดูตัวอย่างของตัวแปร พิมพ์C-hvtruncate-lines
และกดRETเพื่อดูเอกสารประกอบสำหรับตัวแปรtruncate-lines
:
truncate-lines เป็นตัวแปรที่กำหนดใน `ซอร์สโค้ด C '
ไม่ใช่ศูนย์หมายความว่าอย่าแสดงบรรทัดต่อเนื่อง ให้ข้อความแต่ละบรรทัดเพียงบรรทัดเดียวเท่านั้น
คุณสามารถเปิดการตัดได้ด้วยวิธีใดวิธีหนึ่งต่อไปนี้:
(setq truncate-lines t) ; Boolean true value (non-nil)
(setq truncate-lines 1) ; Positive value (non-nil)
(setq truncate-lines 0) ; Zero value (non-nil)
(setq truncate-lines -1) ; Negative value (non-nil)
มันอาจทำให้คุณประหลาดใจว่า0
และ-1
จะทำงาน อีกครั้งฉันจะแนะนำต่อต้านการใช้พวกเขาเพราะมันทำให้ความตั้งใจของคุณไม่ชัดเจน
วิธีเดียวที่จะปิดการใช้งานการตัดคือ:
(setq truncate-lines nil) ; nil value
กล่าวอีกนัยหนึ่งคุณสามารถตั้งค่าtruncate-lines
เท่ากับตัวเลขตัวอักษรสตริงรายการหรืออะไรก็ได้ที่คุณต้องการตราบใดที่มันไม่ได้ประเมินnil
มันจะเปิดใช้งานการตัด (แต่คุณควรติดกับt
หรือจริงๆ1
)