คำถามติดแท็ก emacs

GNU Emacs เป็นโปรแกรมแก้ไขข้อความที่สามารถปรับขยายและปรับแต่งได้เองซึ่งสามารถขยายได้ด้วยรหัส Lisp แม้ว่า Emacs จะเป็นโปรแกรมแก้ไขวัตถุประสงค์ทั่วไปคำถามอาจอยู่ในหัวข้อที่นี่หากพวกเขากำลังขยาย Emacs เอง (โดยปกติจะเขียนฟังก์ชัน Emacs Lisp) หรือเกี่ยวกับโหมดการเขียนโปรแกรมเฉพาะ มิฉะนั้น (และอาจเป็นในกรณีเหล่านั้น) ลองถามคำถามของคุณเกี่ยวกับ Emacs Stack Exchange

18
ใช้ Emacs เป็น IDE
ปัจจุบันเวิร์กโฟลว์ของฉันกับ Emacs เมื่อฉันเข้ารหัสใน C หรือ C ++ เกี่ยวข้องกับสาม windows ใหญ่ที่สุดทางด้านขวามีไฟล์ที่ฉันทำงานด้วย ด้านซ้ายแบ่งออกเป็นสองส่วนด้านล่างเป็นเชลล์ที่ฉันใช้พิมพ์คอมไพล์หรือสร้างคำสั่งและด้านบนมักเป็นเอกสารหรือไฟล์ README ที่ฉันต้องการปรึกษาขณะทำงาน ตอนนี้ฉันรู้แล้วว่ามีผู้ใช้ Emac ที่มีความเชี่ยวชาญจำนวนหนึ่งออกมาและฉันอยากรู้ว่า Emacs อื่น ๆ มีประโยชน์อย่างไรถ้าจุดประสงค์คือใช้เป็น IDE ที่สมบูรณ์ โดยเฉพาะอย่างยิ่ง IDEs ส่วนใหญ่มักจะเติมเต็มฟังก์ชั่นเหล่านี้คือบางรูปแบบหรืออื่น ๆ : โปรแกรมแก้ไขซอร์สโค้ด ผู้รวบรวม แก้จุดบกพร่อง การค้นหาเอกสาร การควบคุมเวอร์ชัน คุณสมบัติ OO เช่นการค้นหาชั้นเรียนและผู้ตรวจสอบวัตถุ สำหรับสองสามอย่างนี้ค่อนข้างชัดเจนว่า Emacs สามารถใช้งานฟังก์ชั่นเหล่านี้ได้อย่างไร แต่ส่วนที่เหลือล่ะ นอกจากนี้หากภาษาใดภาษาหนึ่งต้องให้ความสำคัญฉันจะบอกว่ามันควรจะเป็น C ++ แก้ไข:ผู้ใช้คนหนึ่งชี้ให้เห็นว่าฉันควรจะเฉพาะเจาะจงมากขึ้นเมื่อฉันพูดว่า 'ส่วนที่เหลือ' ส่วนใหญ่ฉันอยากรู้เกี่ยวกับการควบคุมเวอร์ชันที่มีประสิทธิภาพเช่นเดียวกับการค้นหาเอกสาร ตัวอย่างเช่นใน SLIME การค้นหาไฮเปอร์สเปคอย่างรวดเร็วบนฟังก์ชั่น Lisp ค่อนข้างง่าย …


7
Emacs - หลายคอลัมน์หนึ่งบัฟเฟอร์
ฉันกำลังพยายามแก้ไขรหัสการประกอบบางอย่างซึ่งมีแนวโน้มที่จะจัดรูปแบบในรายการที่ยาว แต่บาง ฉันต้องการใช้พื้นที่แนวนอนบางเอเคอร์ที่ฉันมีและดูรหัสเพิ่มเติมบนหน้าจอในครั้งเดียว มีวิธีการรับ Emacs (หรือตัวแก้ไขอื่น ๆ ) เพื่อแสดงให้ฉันเห็นคอลัมน์หลายคอลัมน์ทั้งหมดชี้ไปที่บัฟเฟอร์เดียวกันหรือไม่? Cx 3 (emacs) และ: vsplit (vim) นั้นยอดเยี่ยมสำหรับการดูหลาย ๆ ครั้งในโค้ด แต่ฉันต้องการให้มันไหลจากคอลัมน์หนึ่งไปยังอีกคอลัมน์หนึ่ง (เช่นข้อความในหนังสือพิมพ์)
165 emacs 

20
ตั้งค่าการเยื้องช่องว่าง 4 ช่องใน Emacs ในโหมดข้อความ
ผมเคยประสบความสำเร็จในการได้รับ Emacs ที่จะเปลี่ยนจาก 8 แท็บพื้นที่ 4 แท็บพื้นที่เมื่อกดในบัฟเฟอร์ด้วยโหมดที่สำคัญTAB text-modeฉันได้เพิ่มสิ่งต่อไปนี้ในของฉัน.emacs: (setq-default indent-tabs-mode nil) (setq-default tab-width 4) ;;; And I have tried (setq indent-tabs-mode nil) (setq tab-width 4) ไม่ว่าฉันจะเปลี่ยน.emacsไฟล์ของฉัน(หรือตัวแปรท้องถิ่นของบัฟเฟอร์) TABปุ่มจะทำสิ่งเดียวกันเสมอ หากไม่มีข้อความข้างต้นเยื้องช่องว่าง8 หากมีข้อความในบรรทัดก่อนหน้าเยื้องไปที่จุดเริ่มต้นของคำที่สอง เท่าที่ฉันรัก Emacs นี่มันช่างน่ารำคาญ มีวิธีที่จะทำให้ Emacs มีการเว้นวรรคอย่างน้อย 4 ย่อหน้าเมื่อไม่มีข้อความในบรรทัดก่อนหน้าหรือไม่?
159 emacs  indentation 

14
^ M เหล่านี้คืออะไรที่ปรากฏขึ้นในไฟล์ของฉันเป็น emacs?
ดังนั้นฉันคิดว่ามันอาจจะเกี่ยวกับ textmate แต่เราทำงานกันเป็นทีมเล็ก ๆ และมีปัญหาบางอย่างเกี่ยวกับความขัดแย้งไฟล์เต็มรูปแบบของไฟล์ที่เกือบเหมือนกันในคอมไพล์เพราะแต่ละบรรทัดของสาขาหนึ่งมี ^ M ต่อท้าย ^Mตัวละครลึกลับนี้ควรทำอะไรและมันมาจากไหน? นักพัฒนาของเราใช้ emacs ใน Windows / Mac, TextMate บน Mac, coda บน Mac และบางครั้งก็เป็นโปรแกรมแก้ไขข้อความ wp-admin มีใครเคยมีปัญหานี้เกิดขึ้นจากหนึ่งในนั้นหรือไม่
157 git  emacs  newline 

30
ฉันจะทำสำเนาทั้งบรรทัดใน Emacs ได้อย่างไร
ฉันเห็นคำถามเดียวกันนี้สำหรับ VIMและเป็นสิ่งที่ฉันต้องการรู้วิธีทำเพื่อ Emacs ใน ReSharper ฉันใช้ CTRL-D สำหรับการกระทำนี้ จำนวนคำสั่งที่น้อยที่สุดที่จะดำเนินการใน Emacs คืออะไร?
155 emacs  text  editor  editing  command 

7
วิธีรันหลาย shells บน Emacs
ฉันใช้ Emacs 23.3.1 บน windows 7 ฉันรู้ว่าฉันสามารถเรียกใช้เชลล์จาก emacs โดยใช้ Mx เชลล์ได้ ฉันต้องการมีเชลล์ windows หลายหน้าต่างในเวลาเดียวกัน แต่การพิมพ์ Mx shell เป็นครั้งที่สองเพิ่งเปิดหน้าต่างเชลล์เดียวกันให้ฉัน มีวิธีที่จะมี windows shell ที่แตกต่างกันหรือไม่?
147 emacs 

4
การอัพเดทแพ็คเกจใน Emacs
ฉันมีการตั้งค่าต่อไปนี้สำหรับแพ็คเกจ (ไม่แน่ใจว่ามีสิ่งที่แนะนำดีกว่า): (require 'package) (setq package-archives '(("ELPA" . "http://tromey.com/elpa/") ("gnu" . "http://elpa.gnu.org/packages/") ("marmalade" . "http://marmalade-repo.org/packages/"))) ; Apparently needed for the package auto-complete (why?) (add-to-list 'package-archives '("melpa" . "http://melpa.milkbox.net/packages/") t) (package-initialize) (setq url-http-attempt-keepalives nil) ฉันมีคำถามสามข้อเกี่ยวกับการติดตั้งและอัปเดตแพ็คเกจ ไตรมาสที่ 1 มีวิธีอัปเดตรายการแพ็กเกจที่มีอยู่ (และเวอร์ชันล่าสุด) และอัพเดตแพ็กเกจเฉพาะหรือไม่? Q.2อะไรคือความแตกต่างระหว่างแหล่งแพ็กเกจต่อไปนี้: ELPA, GNU แยมผิวส้ม melpa คำถามที่ 3มันมีความสำคัญต่อลำดับที่เพิ่มเข้าไปpackage-archivesหรือไม่?
144 emacs  elpa 

9
มี (ซ้ำคำสั่งสุดท้าย) ใน Emacs หรือไม่
บ่อยครั้งที่ฉันขุด apropos และ docs กำลังมองหาสิ่งต่อไปนี้เท่านั้นที่จะยอมแพ้เพื่อกลับไปที่งานที่ทำอยู่: (ซ้ำสุดท้ายคำสั่ง) ทำคำสั่ง C- หรือ M- สุดท้ายที่ฉันเพิ่งดำเนินการ (เพื่อให้รีบาวด์ไปยังคีย์ fn) หรือบางครั้งเกี่ยวข้อง: (อธิบายสุดท้ายฟังก์ชั่น) การกดแป้นพิมพ์ที่ฉันเพิ่งทำผิดพลาดซึ่งผลที่ฉันต้องการเพิ่มในถุงของฉัน คำอธิบายคีย์ใกล้ แต่ต้องรู้ว่าฉันพิมพ์อะไร ฉันแค่ขอจากเพื่อนสนิทที่เชื่อถือได้ของฉันมากเกินไปหรือไม่
143 emacs  elisp 


4
สิ่งนี้มาจากไหน: - * - coding: utf-8 - * -
Python รับรู้สิ่งต่อไปนี้เป็นคำสั่งซึ่งกำหนดการเข้ารหัสของไฟล์: # -*- coding: utf-8 -*- ฉันเคยเห็นคำแนะนำประเภทนี้มาก่อน ( -*- var: value -*-) มันมาจากไหน? ข้อกำหนดทั้งหมดคืออะไรเช่นค่าสามารถรวมช่องว่างสัญลักษณ์พิเศษขึ้นบรรทัดใหม่หรือแม้แต่-*-ตัวมันเอง โปรแกรมของฉันจะเขียนไฟล์ข้อความธรรมดาและฉันต้องการรวมข้อมูลเมตาบางส่วนไว้ในไฟล์โดยใช้รูปแบบนี้
142 python  file  text  encoding  emacs 

5
ฉันจะรวบรวมทุกสิ่งในไดเรกทอรี. emacs.d ของฉันได้อย่างไร
ฉันตัดสินใจที่จะดู Emacs และฉันชอบมันมาก ตอนนี้ฉันใช้Emacs Starter Kitซึ่งเป็นประเภทที่ให้ค่าเริ่มต้นที่ดีขึ้นและการปรับแต่งที่ดีในการติดตั้ง Emacs เริ่มต้น ฉันปรับแต่งมันเล็กน้อยเพิ่มบางสิ่งเช่นyasnippet , ธีมสี , ไม่ได้ผูกไว้และอื่น ๆ ฉันได้ตั้งค่าที่เก็บ githubที่ฉันเก็บการปรับแต่งทั้งหมดเพื่อให้ฉันสามารถเข้าถึงได้จากหลาย ๆ ที่หรือในกรณีที่มีบางอย่างไม่ดีและฉันสูญเสียไดเรกทอรี. emacs.d ของฉัน ทั้งหมดนี้ดีมาก แต่มีปัญหา: Emacs ใช้เวลาโหลดประมาณ 1-2 วินาที AFAIK ฉันสามารถรวบรวมไฟล์. el แต่ละไฟล์ด้วย Mx ไบต์คอมไพล์ไฟล์เป็น. elc และใช้งานได้ แต่มีไฟล์. el อยู่มากมายและฉันสงสัยว่ามีวิธีรวบรวมไฟล์เหล่านั้นทั้งหมดด้วยคำสั่งหรือสิ่งง่าย ๆ เพื่อเร่งความเร็วในการโหลด Emacs หรือไม่ Emacs ของฉันไม่ได้เปิดอยู่เสมอและฉันเปิดและปิดบ่อยๆโดยเฉพาะหลังจากที่ฉันตั้งค่าเป็นตัวแก้ไขค่าเริ่มต้นสำหรับคำสั่งแก้ไขใน Total Commander เพื่อให้คุ้นเคยกับมันเร็วขึ้น (ใช่แล้ว windows xp ที่นี่) …

1
การเติมข้อความอัตโนมัติ Emacs Ruby เกือบจะทำงาน
ฉันได้อัปเดตการกำหนดค่า emacs ของฉันด้วยการใช้ Rsense เพื่อให้กล่องแบบเลื่อนลงการเติมข้อความอัตโนมัติปรากฏขึ้นในขณะที่พิมพ์รหัส สิ่งนี้ใช้งานได้ดีในไฟล์ส่วนใหญ่ยกเว้นฉันพบว่าไม่อนุญาตให้ฉันเลือกคำตอบจากตารางเมื่อฉันแก้ไขโค้ดในโครงการ Ruby on rail นี่คือการตั้งค่าของฉัน: https://github.com/map7/simple_emacs ฉันใช้สิ่งนี้ภายใต้ Ubuntu 10.04 สำหรับไฟล์สคริปต์ Ruby แบบธรรมดามันใช้งานได้ดี ฉันสามารถเปิดไฟล์ใหม่และพิมพ์ "test".up... เช่นเดียวกับที่ฉันพิมพ์อักขระ 'p' ในรายการตัวเลือกต่างๆจะปรากฏขึ้นและฉันสามารถขึ้นและลงรายการด้วยปุ่มลูกศรและเลือกหนึ่งตัว (เช่น: ตัวพิมพ์ใหญ่) ด้วยปุ่ม Enter สิ่งที่ไม่ได้ผลคือเมื่อฉันทำการทดสอบแบบเดียวกันทั้งหมด แต่อยู่ในไดเร็กทอรีฐานของโครงการราง อัปเดต: พบว่าปัญหาเกิดจาก (ต้องใช้ 'ราง) ดังนั้นจึงเป็นสิ่งที่อยู่ในปลั๊กอิน emacs-rail ที่การเติมข้อความอัตโนมัติไม่ชอบ อัปเดต: มันอยู่ใน emacs-rail -> railway-project.el หากฉันแสดงความคิดเห็นมาโครนี้การเติมข้อความอัตโนมัติจะทำงานมิฉะนั้นจะไม่: (defmacro* rails-project:with-root ((root) &body body) "If you use `rails-project:root' …

8
Emacs จำนวนมากเยื้องสำหรับ Python
การทำงานกับ Python ใน Emacs หากฉันต้องการเพิ่มการลอง / ยกเว้นในบล็อกของโค้ดฉันมักจะพบว่าฉันต้องเยื้องบล็อกทั้งหมดทีละบรรทัด ใน Emacs คุณจะเยื้องบล็อกทั้งหมดพร้อมกันได้อย่างไร ฉันไม่ใช่ผู้ใช้ Emacs ที่มีประสบการณ์ แต่เพียงแค่พบว่ามันเป็นเครื่องมือที่ดีที่สุดสำหรับการทำงานผ่าน ssh ฉันใช้ Emacs บนบรรทัดคำสั่ง (Ubuntu) ไม่ใช่ gui หากสิ่งนั้นสร้างความแตกต่าง
132 python  emacs  ssh 

30
Emacs จะทำให้ฉันเป็นโปรแกรมเมอร์ที่ดีขึ้นได้หรือไม่? [ปิด]
ตามที่กล่าวมาในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบถาม & ตอบของเรา เราคาดหวังว่าคำตอบจะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจก่อให้เกิดการถกเถียงโต้แย้งการสำรวจความคิดเห็นหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงได้และอาจเปิดขึ้นมาใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อรับคำแนะนำ ปิดให้บริการใน8 ปีที่ผ่านมา Steve Yegge เขียนความคิดเห็นในบล็อกของเขา : วิศวกรที่ยิ่งใหญ่ที่สุดในโลกทั้งหมดใช้ Emacs ประเภทผู้เปลี่ยนแปลงโลก ไม่ใช่สาวที่ยอดเยี่ยมในลูกบาศก์ถัดจากคุณ ไม่ใช่เฟร็ดคนที่น่าทึ่งในห้องโถง ฉันกำลังพูดถึงนักพัฒนาซอฟต์แวร์ที่ยิ่งใหญ่ที่สุดในอาชีพของเราซึ่งเป็นผู้ที่เปลี่ยนโฉมหน้าของอุตสาหกรรม The James Goslings, Donald Knuths, the Paul Grahams, Jamie Zawinskis, Eric Bensons วิศวกรตัวจริงใช้ Emacs คุณต้องฉลาดในการใช้งานให้ดีและจะทำให้คุณมีพลังอย่างไม่น่าเชื่อหากคุณสามารถเชี่ยวชาญได้ ไปดูไหล่ของ Paul Nordstrom ในขณะที่เขาทำงานบ้างถ้าคุณไม่เชื่อฉัน เป็นโปรแกรมเปิดหูเปิดตาที่แท้จริงสำหรับผู้ที่ใช้ Visual Blub .NET เหมือน IDE ทั้งอาชีพของพวกเขา Emacs เป็นบรรณาธิการ 100 ปี ครั้งสุดท้ายที่ฉันใช้โปรแกรมแก้ไขข้อความในการเขียนโค้ดคือย้อนกลับไปเมื่อฉันยังเขียน HTML …
130 emacs  text-editor  vi 

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