Emacs

คำถาม & คำตอบสำหรับผู้ใช้ขยายหรือพัฒนา Emacs


1
ทำรายงานองค์กร:“ วันเกิดครบรอบ 21 ปีของบ็อบ” เช่นเดียวกับรายการบันทึกการนำเข้า
เมื่อคุณมี: (setq org-agenda-include-diary t) ตั้งค่าจากนั้นรายการใน~/diaryไฟล์ดังนี้: %%(org-anniversary 1950 02 14) Bob's %d%s birthday แสดงเป็น: Diary: Bob's 65th birthday ในวาระองค์กร ฉันจะได้รับผลกระทบเดียวกันได้อย่างไร - รายงานจำนวนการทำซ้ำไม่ว่าจะวัดเป็นปีหรือวันหรืออะไรก็ตาม - ใช้ไวยากรณ์ Org ปกติใน.orgไฟล์เพื่อให้ฉันสามารถใช้ประโยชน์จากคุณสมบัติอื่น ๆ ขององค์กรเช่น TODOs เป็นต้น ไม่มีสิ่งใดต่อไปนี้ขยาย%dหรือ%s: * Bob's %d%s birthday <1950-02-14 Tue +1y> * Bob's %d%s birthday <%%(org-anniversary 1950 02 14) Bob's %d%s birthday> * Bob's …

1
การสร้างเอาต์พุตในภาษาอื่นด้วยโหมด org
รับต่อไปนี้มีวัตถุประสงค์เพื่อสร้างรหัส C ++: #+BEGIN_SRC python :exports both :results output code print "struct Whatever{};" #+END_SRC ผลลัพธ์ถูกแทรกดังนี้: #+RESULTS: #+BEGIN_SRC python struct Whatever{}; #+END_SRC ซึ่งไม่ได้จัดรูปแบบเป็น C ++ อย่างชัดเจน ฉันจะรับมันได้อย่างไรเพื่อให้องค์กรสร้างสิ่งต่อไปนี้: #+RESULTS: #+BEGIN_SRC c++ struct Whatever{}; #+END_SRC ขอบคุณ

1
บันทึกไฟล์ล็อคไปยังไดเรกทอรีแทนการปิดการใช้งานพวกเขา
Emacs 24 แนะนำความสามารถในการปิดการใช้งานการสร้าง.#file-nameไฟล์ล็อคที่ น่าอับอาย การประเมินรูปแบบเสียงกระเพื่อมต่อไปนี้จะปิดใช้งานความสามารถของ Emacs ในการล็อคไฟล์อย่างสมบูรณ์เพื่อป้องกันการเปลี่ยนแปลงพร้อมกัน มีวิธีการตั้งค่า Emacs เพื่อบันทึกไฟล์ล็อคในไดเรกทอรีเฉพาะคล้ายกับสิ่งที่เกิดขึ้นกับไฟล์บันทึกอัตโนมัติและสำรอง? (setq create-lockfiles nil)

2
Git: เป็นไปได้หรือไม่ที่จะจัดพื้นที่ที่เลือกโดยตรงจากบัฟเฟอร์ไฟล์?
ด้วย Magit คุณสามารถเปิดบัฟเฟอร์สถานะ magit กดTABเพื่อขยาย diff (หรือRETเพื่อแสดงบัฟเฟอร์ diff แยกต่างหาก) ทำเครื่องหมายส่วนต่าง ๆ ของก้อนใหญ่และกดsหรือuเพื่อหยุดเวที / ไม่แสดงพื้นที่ ดีจริงๆ. ฉันอยากรู้ว่าเป็นไปได้หรือไม่: แก้ไขไฟล์ เลือกภูมิภาคก้อนใหญ่หรือก้อนหินหลายอันในบัฟเฟอร์ไฟล์ เวที / unstage ภูมิภาคที่เลือกหรือก้อนใหญ่รอบจุด
14 magit  git 

3
ค้นหาแบ็กเอนด์ที่ใช้ในการทำ บริษัท
เมื่อใช้companyแบ็กเอนด์แบบกำหนดเองcompany-completeท้ายจะไม่คืนความสมบูรณ์เนื่องจากแบ็กเอนด์ที่ทำงานผิดปกติ ในกรณีเช่นนี้จะช่วยให้ทราบว่าแบ็กเอนด์ของ บริษัท ใดถูกใช้เพื่อสร้างรายการความสำเร็จ ฉันจะรับข้อมูลนี้ได้อย่างไรหลังจากการcompany-completeร้องขอ?

4
อย่าเปิดไฟล์ org-วาระ - ไฟล์หลังจากสร้างวาระ
สร้างวาระการประชุมของวันนี้ใน Org-Mode ( C-c a a) org-agenda-filesเปิดไฟล์ใน ฉันไม่ต้องการให้ Emacs เปิดบัฟเฟอร์พิเศษเหล่านี้ มีวิธีง่าย ๆ ที่จะบอกว่า Emacs ไม่ให้เปิดบัฟเฟอร์เหล่านี้หรือไม่? (หรือเหมือนกันคือการปิดโดยอัตโนมัติหากพวกเขาไม่ได้เปิดก่อนที่จะเรียกวาระการประชุม?) UPDATE: นี่เป็นโซลูชันขนาดกะทัดรัดที่ให้บริการโดย @lawlist: (require 'dash) (defun my-org-keep-quiet (orig-fun &rest args) (let ((buffers-pre (-filter #'get-file-buffer (org-agenda-files)))) (apply orig-fun args) (let* ((buffers-post (-filter #'get-file-buffer (org-agenda-files))) (buffers-new (-difference buffers-post buffers-pre))) (mapcar (lambda (file) (kill-buffer (get-file-buffer file))) buffers-new)))) …

2
จะป้องกันไม่ให้ช้าลงเมื่อกระบวนการที่ด้อยกว่าสร้างเส้นยาวได้อย่างไร
ฉันใช้ Emacs กับ Geiser เพื่อแฮกรหัส Scheme ขณะที่ฉันเล่นไปรอบ ๆ ใน REPL บางครั้งฉันประเมินนิพจน์ที่ให้ผลลัพธ์จำนวนมากซึ่งมักจะอยู่ในหนึ่งบรรทัด ตัวอย่างเช่นฉันเพิ่งเล่นกับ SRFI-41 (สตรีม) และสร้างสตรีมตัวละครจากไฟล์ขนาดใหญ่ จากนั้นฉันบังคับสตรีมและ Geiser แก้ไขเนื้อหาทั้งหมดของไฟล์เป็นสตรีมอักขระลงในบัฟเฟอร์ของฉัน เกือบจะในทันที Emacs ต้องหยุดชะงักเหมือนตัวละครมากขึ้นเรื่อย ๆ ที่ต่อท้ายบรรทัดเอาท์พุทและไม่ว่าฉันจะกดค้างไว้นานเท่าไหร่C-gหรือC-c C-cไม่สามารถหยุด Emacs (หรือ Geiser) ได้ สิ่งนี้ทำให้เซสชัน Emacs ของฉันทั้งหมดเสียหายเนื่องจากตอนนี้ Emacs ไม่สนใจอินพุตของฉันอย่างสมบูรณ์โดยคิดว่าจำเป็นต้องให้ความสำคัญกับการพิมพ์สตรีมตัวละครขนาดใหญ่นี้ในบรรทัดเดียวให้เป็นบัฟเฟอร์ Geiser REPL ที่ไม่ตอบสนอง มีสิ่งที่ฉันสามารถทำได้เพื่อปกป้องเซสชั่น Emacs ของฉันจากความอยากรู้อยากเห็นของฉันทำลาย? (เพราะเหตุใด Emac จึงช้ามากเมื่อแสดงเส้นที่ยาวมากอยู่แล้ว) ฉันสามารถกำหนดขีด จำกัด ของเส้นยาวและบอก Emacs ได้ว่าไม่เป็นไรที่จะไม่พยายามแสดงเส้นที่ยาวมาก ๆ ?

4
ฉันจะบอก Ido ให้พ้นทางได้อย่างไรเมื่อฉันสามารถวางชื่อไฟล์ได้แล้ว?
ฉันพยายามทำให้ตัวเองใช้โหมด Ido บางครั้งมันก็ดี แต่บางครั้งมันก็โง่มาก นี่คือความผิดหวังที่ยิ่งใหญ่ที่สุดของฉัน ฉันอ่านบันทึกที่มีชื่อเต็มจากนั้นคัดลอกชื่อหนึ่งลองเปิดไฟล์นั้น วิธีการทำเช่นนี้โดยไม่มี Ido: C-aC-yC-kRET ด้วย Ido มีสองปัญหาที่สำคัญ: หากฉันมีชื่อไฟล์ทั้งหมดไม่มีวิธีที่จะป้อนข้อมูลนั้น (ฉันต้องลบเครื่องหมายทับแรกไม่เช่นนั้นการกดอื่น ๆ//จะไม่ช่วยได้ ฉันไม่สามารถแก้ไขส่วนตรงกลางของชื่อไฟล์ที่เหลือโดยไม่แก้ไข หรือฉัน
14 files  ido 

2
ฉันจะแบ่งย่อหน้าออกเป็นหนึ่งบรรทัดต่อประโยค แต่ยังคงซ่อนอยู่ได้อย่างไร?
สิ่งนี้คล้ายกับการแก้ไขไฟล์ที่มีหนึ่งประโยคต่อบรรทัด (ในฟังก์ชั่นรวมถึงแรงจูงใจ) แต่ฉันต้องการที่จะมีย่อหน้าที่สมบูรณ์และลื่นไหลมากกว่าที่จะเห็นภาพทุกประโยค ฉันอยากมีโหมดย่อยที่เมื่อใช้งานจะเข้าร่วมสายตาบรรทัดจากวรรคเดียวกัน (ไม่แยกจากกันโดย\n\nหรือparagraph-separateหรือ ... ) และพฤติกรรมการเปิดใช้งานแล้ว (อาจจะมาจากvisual-line-mode) \nที่จะตัดสายโดยไม่ต้องใส่ มีโหมดดังกล่าวหรือไม่? ถ้าไม่ฉันจะไปเกี่ยวกับกระบวนการแก้ไขคุณสมบัติการแสดงผลของย่อหน้าเพื่อให้ได้ผลลัพธ์อย่างไร (หลังจากทั้งหมดนี่คือ crux ของโหมดดังกล่าวและสามารถพัฒนาได้จากข้อมูลโค้ด)

1
เลือก * หน้าต่างช่วยเหลือบัฟเฟอร์ * หลัง Ch ฉ
ฉันทำ "Ch f" มากสำหรับฟังก์ชั่นเสียงกระเพื่อม emacs ฉันต้องการให้หน้าต่างแสดงบัฟเฟอร์ความช่วยเหลือที่เลือก (ขวาหลังจาก Ch f) แล้วกด "q" เมื่อฉันทำเพื่อปิดหน้าต่าง มีวิธีที่จะทำให้เข้าใจสิ่งนี้หรือไม่?
14 help-mode 

2
ฉันจะเพิ่มตัวละครในวิธีป้อนข้อมูลได้อย่างไร
ฉันมักจะใช้TeXวิธีการป้อนข้อมูลเพื่อพิมพ์อักขระ Unicode เช่นλซึ่งค่อนข้างมีประโยชน์ อย่างไรก็ตามอักขระบางตัวที่ฉันต้องการพิมพ์ไม่รองรับเช่นตัวห้อยต่าง ๆᵢตัวอักษรสคริปต์ (เช่น𝒞) และสัญลักษณ์อื่น ๆ (เช่น⦅และ⦆) ฉันจะขยายวิธีการป้อนข้อมูล TeX เพื่อสนับสนุนอักขระบางตัวด้วยสตริงอินพุตที่กำหนดเองได้ (เช่น_iเพื่อᵢ) ได้อย่างไร

3
วิธีกำหนดค่าโหมดองค์กรให้เคารพแอปพลิเคชันเริ่มต้นเฉพาะระบบสำหรับลิงก์ภายนอกได้อย่างไร
ในโหมดองค์กรฉันสามารถกำหนดลิงก์ภายนอกเช่น [[file+sys:path/to/document.pdf]] จากนั้นไฟล์ document.pdf จะถูกเปิดด้วยโปรแกรมดูไฟล์ PDF ภายนอก เอกสาร org โหมดอ้างว่าคำสั่งนี้ "เปิด [s] ผ่านทางระบบปฏิบัติการเช่นดับเบิลคลิก" อย่างไรก็ตามมีความแตกต่างกับ "ดับเบิลคลิก" เนื่องจากฉันพบว่าแอปพลิเคชันเริ่มต้นเฉพาะระบบ (สำหรับเอกสารเว็บไซต์วิดีโอ ฯลฯ ) ไม่ได้รับการเคารพในการตั้งค่าของฉัน ใน Ubuntu 12.04 แอปพลิเคชันเริ่มต้นสำหรับหน้าเว็บได้รับการตั้งค่าเป็น Firefox และเฉพาะไฟล์. html แบบโลคอลเท่านั้นที่ยังคงเปิดใช้งานด้วย Chromium ฉันจะกำหนดค่าโหมดองค์กรให้เคารพการตั้งค่าแอปพลิเคชันเริ่มต้นของฉันได้อย่างไร
14 org-mode 

3
มีเทียบเท่ากับคำสั่งทดแทนสไตล์ sed จากเสียงเรียกเข้า?
สิ่งหนึ่งที่ฉันพลาดจากเสียงเรียกเข้าคือสามารถพิมพ์คำสั่งการแทนที่ที่จะทำงานผ่านหลายบรรทัดตัวอย่างเช่น: :/begin/,/end/s/foo/bar/g คำสั่งดังกล่าวใช้แทน "foo" สำหรับ "bar" ที่ขึ้นต้นด้วยบรรทัดแรกที่มี "start" และลงท้ายด้วยบรรทัดถัดไปหลังจากนั้นจะมี "end" มีวิธีการทำสิ่งที่คล้ายกันใน emacs หรือไม่?

1
มีเครื่องมือของ Emac สำหรับผู้พิการทางสายตาหรือไม่?
ฉันมีลูกค้า, ปริญญาเอก ผู้สมัครในเคมีเชิงคำนวณที่มีความบกพร่องทางสายตา เขาค่อนข้างมีความพอเพียงและเขาก็ประสบความสำเร็จในการเรียนรู้เนื้อหาจากแหล่งข้อมูลการอ่านโดยตรงสำหรับตำราส่วนใหญ่ เขาทำสิ่งนี้เพื่ออ่าน LaTeX เมื่อใช้เพื่อทำความเข้าใจคณิตศาสตร์ เขายังพยายามเรียนรู้ Python ซึ่งอาศัยการเยื้องเพื่อระบุบล็อคโค้ด ฉันได้ช่วยให้เขาแฮ็คโหมดหลามเพื่อกระตุ้นการแจ้งเตือนระบบทุกครั้งที่เขาใช้การเยื้องอัตโนมัติและดูเหมือนว่าจะใช้ได้ในตอนนี้ เขาทำงานบนไคลเอนต์ windows เพื่อเข้าถึงเซิร์ฟเวอร์ unix สำหรับการคำนวณของเขา โดยทั่วไป Emacs ของเขากำลังทำงานบนเซิร์ฟเวอร์และเขาเข้าถึงผ่านการส่งต่อ X ฉันเจอEmacspeakแต่ดูเหมือนว่าจะกำหนดเป้าหมายกล่อง linux มีความหลากหลายของเครื่องมือการแปลงข้อความเป็นเสียงพูดสำหรับแพลตฟอร์ม Windows, และฉันคิดว่าเขาชอบคือการใช้ปาก เครื่องมือเหล่านี้มีประโยชน์ แต่พวกเขาสามารถทำให้กระบวนการซับซ้อนขึ้นเมื่อพวกเขาแข่งขันกับคุณลักษณะสอนคำพูดของแอปพลิเคชันต่าง ๆ นอกจาก Emacspeak ยังมีเครื่องมือหรือเทคนิคอื่น ๆ สำหรับการใช้ Emacs อย่างมีประสิทธิภาพหากคุณบกพร่องทางสายตาหรือไม่? ฉันจำเป็นต้องรู้รายละเอียดเกี่ยวกับ Emacspeak เพื่อที่จะได้รับประโยชน์จากมันหรือไม่?

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