Emacs

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

2
วิธีการมาร์กอัปใบเสนอราคา?
ฉันจะระบุคำพูดในโหมดองค์กรได้อย่างไรเพื่อให้มันแสดงผลอย่างดีใน GitHub? ใน markdown มันถูกเรนเดอร์ดังนี้: สองสิ่งไม่มีที่สิ้นสุดคือจักรวาลและความโง่เขลาของมนุษย์ และฉันไม่แน่ใจเกี่ยวกับจักรวาล - อัลเบิร์ต enstein ขอบคุณล่วงหน้า.
19 org-mode 

2
ฉันจะปรับปรุงเวลาเริ่มต้นได้อย่างไรแม้จะมีหลายแพ็คเกจ
TL; DRฉันมีแพคเกจจำนวนมากเช่นนี้ซึ่งทำให้เจ็บเวลาเริ่มต้นของฉัน หากคุณไม่เชื่อว่าเป็นเช่นนั้นอ่านต่อ เวลาเริ่มต้น Emacs ของฉันค่อนข้างเล็ก ฉันไม่ได้ใช้use-packageฉันเพิ่งตั้ง hooks และautoloads หลาย ๆ ตัวเพื่อให้โค้ดเกือบทั้งหมดถูกเลื่อนออกไป ในความเป็นจริงสิ่งต่าง ๆ ถูกโหลดโดยปกติแล้วจะน้อยกว่าครึ่งวินาทีแม้ว่ามันจะดูเหมือนเป็นบ้าก็ตาม แต่เมื่อเวลาผ่านไปผมสังเกตเห็นว่าเวลาเริ่มต้นของฉันได้รับพิถีพิถันช้าลงอย่างลึกลับ สิ่งนี้ได้มาถึงจุดที่เวลาเริ่มต้นคือ≥ 1 วินาที ในที่สุดฉันก็มีเพียงพอและขุดลงไปในรากของปัญหา ในที่สุดฉันก็แสดงความคิดเห็น~/.emacsไฟล์ทั้งหมดของฉันและพบว่าเวลาเริ่มต้นยังคงเป็น≥ 1 วินาที อันที่จริงแล้วมันก็แค่โกนออก ~ 0.2วินาทีบางครั้งก็น้อยลง จากนั้นฉันลองemacs -qและพบว่าเวลาเริ่มต้นคือ ~ 0.1วินาที จากการตรวจสอบในส่วนของคู่มือ Elisp นี้ฉันพบว่าทำไมemacs -qลดเวลาในการเริ่มต้นให้มาก เห็นได้ชัดว่าemacs -qหยุด Emacs จากการทำสามสิ่งเมื่อเริ่มต้น: โหลดไฟล์ init ของคุณ กำลังโหลดdefault.elไฟล์ของคุณ โทร package-initialize เราได้ตัดออกไฟล์ init ของฉันแล้วเนื่องจากการแสดงความคิดเห็นทั้งหมดของฉัน~/.emacsไม่ได้ทำอะไรเลย ฉันไม่ได้ใช้default.elไฟล์เพื่อตัดออกไป ซึ่งปล่อยpackage-initializeให้เป็นผู้กระทำความผิดสำหรับการแสดงยอดฮิต เหตุใดจึงpackage-initializeต้องสละเวลาเริ่มต้นมาก …

1
ฉันจะติดตั้ง GnuTLS สำหรับ Emacs 25.1 บน Windows ได้อย่างไร
ฉันเพิ่งอัพเกรด Emacs บนเครื่อง Windows 10 จาก 24.5 เป็น 25.1 สำหรับ Emacs 24.5 ฉันมีการตั้งค่า GnuTLS อย่างถูกต้องและสำหรับ 25.1 ฉันทำสิ่งที่ฉันคิดว่าฉันจำได้: ได้สร้างไว้ล่วงหน้าไบนารี Emacs จากหน้าเว็บไซต์ดาวน์โหลด GNU Emacs ของ ฉันใช้ Windows 32 บิตดังนั้นฉันจึงได้รับ Emacs รุ่น i686 มีสำเนาของ GnuTLS จากezwinportsและแตกไฟล์ zip ไปยังไดเรกทอรีเดียวกันกับ Emacs - วิธีที่ gnutls zip ถูกจัดระเบียบหมายความว่าวิธีนี้ทั้ง dll และ exe สำหรับ gnutls ไขลานในไดเรกทอรีเดียวกันกับ Emacs exe (ฉันได้รับเวอร์ชั่น …

3
ดี, วิธีการใช้ระบบตัวแทน SSH และไม่ขอรหัสผ่าน
ฉัน googled และอ่านคำถามที่พบบ่อยและ Wiki สำหรับ Magit แต่ก็ยังไม่สามารถหาคำตอบได้ทั้งหมดที่ฉันพบคือคำตอบเกี่ยวกับ Windows ... ฉันจะกำหนดค่า Magit ให้ใช้เซสชัน ssh-agent ที่ทำงานอยู่ได้อย่างไรและไม่ต้องขอรหัสผ่านเมื่อทำการพุช ฉันใช้ linux และมีการเริ่มต้น ssh-agent ด้วยเทอร์มินัลของฉันและปลดล็อคกุญแจของฉันแล้วซึ่งช่วยให้ฉันสามารถกด git ฯลฯ โดยไม่ต้องป้อนรหัสผ่านทุกครั้ง Env: Arch Linux Emacs 24.4 ssh-agent พร้อมปุ่มเพิ่มเพื่อปลดล็อคเมื่อเปิดเทอร์มินัลแรก แก้ไข:ฉันหมายถึงการใช้ข้อความรหัสผ่านคุณรู้สำหรับคีย์ ssh และอื่น ๆ และฉันกำลังผลักดันไปยัง Bitbucket แต่ฉันเชื่อว่าปัญหาสำคัญคือ Magit ไม่ได้พูด / จำตัวแทนของฉัน อาจจะมีการตั้งค่าบางอย่างที่จะบอกว่าฉันใช้มันได้หรือไม่
19 magit  linux  ssh 

4
วิธีแก้ไขไฟล์ jsx (ตอบสนอง) ใน emacs?
ฉันใช้โหมด js2 แต่ไม่ได้เยื้อง html ใน javascript อย่างถูกต้อง ฉันได้พบ repo นี้แล้วhttps://github.com/jsx/jsx-mode.elแต่มันไม่ได้มีไว้เพื่อตอบสนอง แต่เป็นสำหรับ jsx อื่น ๆ คุณใช้อะไรในการแก้ไขแอปพลิเคชันตอบโต้ด้วยไฟล์ jsx

1
Emacs ไม่ได้อยู่ในโหมด Visual ของ Evil กับคลิปบอร์ดของระบบปฏิบัติการทุกอัน
ติดตั้ง: GUI รุ่น GNU Emacs 25.0.50.1 (x86_64-w64-mingw32) ปี 2015-07-25 บน KAEL รวบรวมจาก EmacsW64 Package Evil ใช้ Evil เวอร์ชันล่าสุดจาก MELPA Windows 7 x64 บิต สถานการณ์: ทดสอบด้วยการกำหนดค่า Emacs ว่างเปล่าที่เปิดใช้งาน Evil เท่านั้น ฉันคัดลอกข้อความบางส่วนจากแอปพลิเคชัน Windows จากนั้นผมวางลงภายใน Emacs ด้วยnormal mode pฉันเห็นข้อความ จากนั้นฉันเปลี่ยนเป็นแอปพลิเคชัน Windows เลือกข้อความอื่นคัดลอก สลับกลับไป Emacs visual modeสายตาเลือกข้อความและวางภายใน แต่ข้อความภายในภูมิภาคจะไม่ถูกแทนที่ด้วยข้อความจากคลิปบอร์ดของ Windows นี่ไม่ใช่ Vim เริ่มต้น ฉันจะกำหนดค่าข้อความที่ถูกแทนที่ด้วยแอคชันการคัดลอกล่าสุดได้อย่างไรในกรณีนี้คลิปบอร์ด Windows

3
ฉันควรใช้ progn เมื่อใด / เพราะเหตุใด
ฉันเห็นว่ามีprognการใช้งานค่อนข้างมากเมื่อฉันเรียกดูไฟล์กำหนดค่าของผู้ใช้ Emac ที่มีประสบการณ์ ฉันพบคำอธิบายที่ดีของprognสิ่งนี้ แต่สิ่งที่ฉันอยากรู้จริงๆคือประโยชน์ของการใช้ฟังก์ชั่นนี้คืออะไร? ยกตัวอย่างเช่นตัวอย่างนี้ (นำมาจากการกำหนดค่าของ Sacha Chua ): (use-package undo-tree :defer t :ensure t :diminish undo-tree-mode :config (progn (global-undo-tree-mode) (setq undo-tree-visualizer-timestamps t) (setq undo-tree-visualizer-diff t))) มีความแตกต่างที่สำคัญระหว่างการกำหนดค่าข้างต้นและสิ่งนี้หรือไม่? (use-package undo-tree :defer t :ensure t :diminish undo-tree-mode :config (global-undo-tree-mode) (setq undo-tree-visualizer-timestamps t) (setq undo-tree-visualizer-diff t)) ฉันรู้สึกว่าตัวอย่างแรกสะอาดกว่าแม้ว่ามันจะมีไวยากรณ์มากกว่าและปรีชาของฉันก็คืออาจมีการเพิ่มประสิทธิภาพบางอย่างจากการใช้prognแต่ฉันไม่แน่ใจ ขอบคุณสำหรับข้อมูลเชิงลึกใด ๆ !
19 lisp 

2
เป็นไปได้ไหมที่จะลบ '\ emsp' ออกจากรายงานนาฬิกา แต่คงไว้ซึ่งการเยื้อง
เป็นไปได้ไหมที่จะแทนที่ '\ emsp' ด้วยช่องว่างธรรมดา? เช่นในรายงานนาฬิกามีจำนวนมาก '\ emsp เหล่านี้ (ดูตัวอย่างด้านล่าง) ฉันสามารถกำจัดพวกมันได้โดยตั้งค่า ': เยื้องศูนย์' แต่สิ่งนี้จะลบการเยื้องทั้งหมดซึ่งไม่เป็นที่น่าพอใจ ฉันสามารถกำจัดพวกมันได้ถ้าฉันส่งออกสิ่งของ แต่ในมุมมองวาระฉันไม่ส่งออกรายงานและ \ emsp เป็นเพียงการเบี่ยงเบนความสนใจทางสายตา จนถึงขณะนี้ผมก็สามารถที่จะลบคำหลัก 'สิ่งที่ต้องทำ' ผ่านการจัดรูปแบบตามที่อธิบายไว้ที่นี่ แต่ผู้จัดรูปแบบไม่เห็น '\ emsp' และไม่สามารถลบออกได้ ดูเหมือนว่าพวกเขาจะถูกเพิ่มเข้ามาหลังจากนั้น |-----------+-------------------------------------------------------------------+---------+------| | dev.org | *File time* | *9:54* | | | | Dev | 9:54 | | | | \emsp Configure VMs for testing …
19 org-mode 

1
วิธีการหนึ่งที่ใช้ flyspell ในองค์กรบัฟเฟอร์โดยไม่ต้อง flyspell เรียกบนบล็อกรหัส tangled?
ลองนึกภาพบัฟเฟอร์ org ใน Emacs เช่น: * Title Some text describing the title and the codew (sic) and whatnot. #+BEGIN_SRC emacs_lisp (setq backup-by-copying t) #+END_SRC ฉันต้องการ flyspell เพื่อตรวจสอบบัฟเฟอร์องค์กร (และตรวจจับข้อผิดพลาดในการสะกดคำ) แต่ไม่ต้องสนใจเนื้อหาระหว่างเครื่องหมาย # + BEGIN_SRC และ # + END_SRC เราจะไปได้อย่างไร

1
โหมด Markdown ของ GitHub
มีโหมด Emacs สำหรับ GitHub Flavored Markdown หรือไม่? GitHub Flavoured Markdown เพิ่มคุณสมบัติหลายอย่างให้กับ Markdown แบบดั้งเดิม: การจัดการขีดล่าง, การเชื่อมโยง URL อัตโนมัติ, ขีดกลางและตาราง มันจะดีถ้ามีโหมด Emacs ที่รองรับการเพิ่มเติมเหล่านี้ (โดยเฉพาะตาราง)
19 markdown  github 

2
ฉันจะดูการเปลี่ยนแปลงที่ทำกับบัฟเฟอร์ที่แก้ไขแล้วตั้งแต่บันทึกครั้งสุดท้ายได้อย่างไร
รับบัฟเฟอร์ที่แก้ไขแล้วฉันจะแตกต่างกับไฟล์ที่สำรองไว้บนดิสก์เพื่อดูสิ่งที่ฉันเปลี่ยนไปได้อย่างไร

4
วิธีการตั้งค่า emacs เป็นตัวจัดการไฟล์เริ่มต้น?
บางโปรแกรมเช่น firefox มีปุ่มที่เมื่อคลิกเปิดตัวจัดการไฟล์สำหรับเรียกดูไฟล์ ฉันจะทำให้เปิดใน emacs ด้วยโหมด dired บน Debian Linux ได้อย่างไร

1
วิธีการระบุอาร์กิวเมนต์ส่วนหัวเริ่มต้นในบล็อกรหัส orgmode
ฉันคาดว่าจะตั้งค่าอาร์กิวเมนต์ส่วนหัวเริ่มต้นเป็นบล็อกโค้ดในไฟล์ org ของฉันเช่นนี้ #+PROPERTY: header-args :session *my_python_session* #+PROPERTY: header-args :results silent #+PROPERTY: header-args :tangle yes บล็อกรหัสของฉันมีลักษณะเช่นนี้: #+BEGIN_SRC python import pandas as pd #+END_SRC แต่เมื่อผมเรียกorg-babel-tangleจากบัฟเฟอร์นี้ผมได้รับTangled 0 บล็อกโค้ดจาก filename.org เมื่อฉันเพิ่ม:tangle yesไปยังจุดสิ้นสุดของเส้นการป้องกันรหัสถูกส่งออกเมื่อฉันโทร#+BEGIN_SRCorg-babel-tangle ฉันคาดหวังว่าฉันไม่จำเป็นต้องตั้งค่า:tangle yesในแต่ละบล็อครหัส ผมทำอะไรผิดหรือเปล่า?

2
วิธีที่เร็วกว่าในการรับ 'หมายเลขบรรทัดที่ตำแหน่ง pos' ในบัฟเฟอร์ขนาดใหญ่
ฟังก์ชั่นline-number-at-pos(เมื่อทำซ้ำประมาณ 50 ครั้ง) ทำให้เกิดการชะลอตัวลงอย่างเห็นได้ชัดในบัฟเฟอร์กึ่งใหญ่เช่น 50,000 บรรทัด - เมื่อจุดใกล้ถึงจุดสิ้นสุดของบัฟเฟอร์ เมื่อชะลอความเร็วลงฉันหมายถึงผลรวมทั้งหมดประมาณ 1.35 วินาที แทนที่จะใช้elispfunciton 100% เพื่อนับจำนวนบรรทัดและข้ามส่วนบนสุดของบัฟเฟอร์ฉันสนใจวิธีไฮบริดที่แตะเข้าไปในความสามารถ C ในตัวที่รับผิดชอบต่อหมายเลขบรรทัดที่ปรากฏบนโหมดบรรทัด หมายเลขบรรทัดที่ปรากฏบนโหมดบรรทัดเกิดขึ้นที่ความเร็วแสงโดยไม่คำนึงถึงขนาดของบัฟเฟอร์ นี่คือฟังก์ชั่นทดสอบ: (defmacro measure-time (&rest body) "Measure the time it takes to evaluate BODY. http://lists.gnu.org/archive/html/help-gnu-emacs/2008-06/msg00087.html" `(let ((time (current-time))) ,@body (message "%.06f" (float-time (time-since time))))) (measure-time (let* ( line-numbers (window-start (window-start)) (window-end (window-end))) (save-excursion (goto-char …

1
มีประโยชน์ใด ๆ ในการรวบรวม Emacs ด้วยชุดเครื่องมือกราฟิกชุดหนึ่งซึ่งตรงกันข้ามกับชุดเครื่องมืออื่นหรือไม่?
ดูเหมือนว่าตัวเลือกคือ gtk, gtk2, gtk3, สุวิมลหรือ athena แรงจูงใจ แน่นอนว่ามีความแตกต่างของภาพและชุดเครื่องมือหนึ่งอาจมีรสนิยมมากกว่าคนอื่น ๆ นอกเหนือจากนั้นมีความแตกต่างอื่น ๆ เช่นเกี่ยวกับประสิทธิภาพหรือคุณสมบัติหรือไม่ เพื่อความสอดคล้องทางภาพกับแอปพลิเคชั่นอื่นฉันใช้ในการรวบรวม Emacs กับ gtk อย่างไรก็ตามเมื่อฉันเพิ่งคอมไพล์ด้วย lucid ฉันมีความรู้สึกว่าการเรนเดอร์อาจเร็วกว่า lucid มากกว่า gtk

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