Emacs มีวิธีใดบ้างที่จะทำงานได้มากขึ้น? [ปิด]


20

ฉันเคยใช้ Emacs มาบ้างแล้วและฉันก็รู้สึกสบายใจกับคำสั่ง / ทางลัดขั้นพื้นฐานที่สุด แต่ฉันรู้ว่า Emacs มีข้อเสนอมากมายกว่าที่ฉันใช้ อะไรคือคุณสมบัติที่รู้จักน้อยของ emacs ที่สามารถช่วยให้ฉันเป็นโปรแกรมเมอร์ที่มีประสิทธิผลมากขึ้น?


8
@ ใครก็ตามที่ลงคะแนนให้ปิด: นี่ไม่ใช่หัวข้อแน่นอน ...
Chinmay Kanchi

1
หากนี่เป็นหัวข้อนอกฉันคิดว่าจุดประสงค์หลักของเว็บไซต์นี้จะเป็นคำถามประเภท "บอกฉันเรื่องโปรดของคุณ"
MIA

2
ฉันไม่เห็นว่าสิ่งนี้สามารถพิจารณานอกหัวข้อได้อย่างไร ถ้าฉันถามสิ่งนี้ใน Stack Overflow มันอาจจะถูกปิดเป็นอัตนัย ดังนั้นหากสิ่งนี้ไม่เหมาะกับทั้งสองเว็บไซต์ฉันควรถามคำถามแบบนี้ที่ไหน?
GSto

โปรแกรมเมอร์ผู้ผลิตเอ๊ะ ..
แดเนียลลิตเติ้ล

2
ฉันโหวตให้ปิดคำถามนี้เป็นนอกหัวข้อเพราะมีการถามเกี่ยวกับเครื่องมือซอฟต์แวร์ อย่างไรก็ตามมันกว้างเกินไปและแก่เกินไปที่จะโยกย้ายไปที่ Stack Overflow

คำตอบ:


17

เรียนรู้ elisp

  1. อนุญาตให้คุณตั้งโปรแกรมทางลัดใด ๆ ที่คุณนึกออก เมื่อใดก็ตามที่คุณพบว่าตัวเองกำลังดำเนินการหลายขั้นตอนสำหรับสิ่งที่มีประโยชน์คุณสามารถสร้างฟังก์ชั่นได้จากมัน

  2. ช่วยให้คุณสามารถทดสอบด้วยการเขียนโปรแกรมใช้งานได้ - การเรียนรู้กระบวนทัศน์ใหม่เป็นวิธีที่ดีในการขยายขอบเขตของคุณ


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

9

ลองดูหน้า SO นี้มันมีเคล็ดลับเพียงพอที่จะเพิ่มประสิทธิภาพการทำงานของ Emacs ของคุณอย่างน้อย 2x:

http://stackoverflow.com/questions/60367?tab=votes&page=1

นอกจากนี้คุณต้องใช้ Org-mode อย่างแน่นอนหากคุณเป็นผู้ใช้ Emacs:

องค์กร: ชีวิตของคุณในข้อความล้วน

แก้ไข: น่าเสียดายที่ดูเหมือนว่าผู้ดูแล SO ไม่เพียง แต่ปิดคำถาม / ลิงค์แรกเท่านั้น แต่ยังลบมันออกได้เช่นกันทำลายความรู้และภูมิปัญญาในกระบวนการ (มาเขียนหนังสือเล่มนี้กันเถอะเราไม่รู้ว่ามันอยู่ตรงไหน!) ในตอนนี้ลิงค์ทางเลือกเดียวที่มีประโยชน์ที่ฉันได้พบคือเธรด HN ที่พูดถึงเธรด SO:

คุณลักษณะของ Emacs ที่มีประโยชน์ที่สุด - Hacker News


ลิงก์ไม่ทำงานอีกต่อไป
funkybro

ขอบคุณสำหรับการติดหัวติดทางเลือกมันไม่ดี แต่มีเคล็ดลับ
Limist

1
คุณยังสามารถค้นหาโพสต์ที่ถูกลบในwww.stackprinter.com
barracel

@barracel ขอบคุณ! โปรแกรม / บริการช่วยให้เรารอดพ้นจากความโง่เขลาของผู้ดูแล
limist

4

ปิดส่วนหัวของฉัน:

M-x compile     (now do C-x ` to cycle through errors)
M-x gdb
M-x grep-find
M-x find-tag    (aka M-.  and C-u M-. is "next" tag)
inferior-processes (if you use an interpreted language, 
                    you can eval directly from Emacs)
C-x v v         ([version control][1])

โดยทั่วไปแล้วบทรวบรวมและการทดสอบโปรแกรมของหน้าข้อมูลเป็นการอ่านที่ดี


4

ดีสตีฟ Yegge ได้เขียนบล็อกโพสต์ดีมาก10 วิธีเฉพาะเพื่อเพิ่มผลผลิตของคุณด้วย Emacs มันมีเทคนิคและนิสัยชอบ

  • การกำหนดค่าแป้นพิมพ์ (สลับCaps-LockและControlการผูกใหม่M-X)
  • การลบคำด้วยbackspace(ถ้าคุณพิมพ์ดีดเร็วพอกำจัดคำทั้งหมดแล้วพิมพ์ใหม่มันจะสะดวกกว่าการกดปุ่มอย่างต่อเนื่องbackspaceจนกว่าการพิมพ์ผิดของคุณจะถูกลบ)
  • การนำทางโดยการค้นหาที่เพิ่มขึ้น
  • การใช้บัฟเฟอร์ชั่วคราวและเรียนรู้วิธีนำทางบัฟเฟอร์อย่างมีประสิทธิภาพ
  • กำจัดการนำทางด้วยเมาส์เมนูและสิ่งอื่น ๆ ใน GUI
  • เรียนรู้การใช้ระบบช่วยเหลือ
  • เรียนรู้พลังของการแสดงออกปกติ

นอกจากนี้เขายังแสดงโหมด emacs ที่มีประโยชน์และกล่าวถึงเทคนิคอื่น ๆ อีกมากมายที่ทำให้ผู้คนรอคอยการคาดการณ์สำหรับการปรับปรุงในอนาคตในการโพสต์บล็อก


2

ฉันรู้ว่าคุณถูกถามโดยเฉพาะเกี่ยวกับวิธีการและคำสั่ง แต่ฉันขอแนะนำวิธีการทั้งหมดต่อไปนี้:

  1. อ่านหนังสือเกี่ยวกับ Emacs: มีหลายอย่างรวมถึงคู่มือการใช้งาน Emacsและการเรียนรู้ Gnu Emacsโดย Cameron Et al ฉันรู้ว่า "อ่านคู่มือ" เสียงซ้ำซากและวางตัว แต่สิ่งที่ฉันจริงๆพูดคือว่าทุกครั้งที่ผมอ่านคู่มือที่ผมหาข้อมูลเกี่ยวกับสิ่งที่เย็นจริงๆที่ผมไม่ได้คิดว่าการ ฉันมักจะรู้สึกว่าฉันไม่ได้ใช้เวลาพออ่านคู่มือ
  2. เข้าสู่ชุมชน Emacs: Emacswikiเป็นสถานที่ที่ยอดเยี่ยมในการสื่อสารกับผู้ใช้ Emacs คนอื่น ๆ และค้นหาข้อมูลเกี่ยวกับแพ็คเกจสุดเจ๋ง นอกจากนี้การเข้าร่วมhelp-gnu-emacsก็ดีเพราะผู้คนจะขอความช่วยเหลือเกี่ยวกับคุณสมบัติที่พวกเขาใช้งานและโดยพร็อกซีคุณสามารถค้นหาข้อมูลเกี่ยวกับคุณลักษณะเหล่านั้นได้ ฉันพบคุณสมบัติที่น่าสนใจมากมายโดยเห็นคนที่ขอความช่วยเหลือจากนั้นอ่านเกี่ยวกับมันในคู่มือ
  3. เรียนรู้ Lisp บางอย่าง : เมื่ออย่างน้อยคุณสามารถพูดคุยเกี่ยวกับ Emacs Lisp คุณจะอยู่ในสถานที่ที่ดีกว่ามากในการเรียนรู้เกี่ยวกับคุณสมบัติใหม่
  4. ใช้ Emacs ตลอดเวลา ฉันใช้ Emacs สำหรับทุกอย่างยกเว้นการท่องเว็บ (ซึ่งคุณสามารถทำได้) และดังนั้นฉันจึงมีโอกาสเสมอที่จะเรียนรู้วิธีการทำสิ่งใหม่ ๆ ได้ดีขึ้นด้วยคุณสมบัติบางอย่างที่ Emacs จัดหาให้ ผมใช้ Emacs สำหรับอีเมล , การตั้งเวลาและการวางแผน , การควบคุมเวอร์ชัน , น้ำยางเอกสารและการเขียนโปรแกรม เกี่ยวกับเวลาทั้งหมดของฉันใช้ใน Emacs หรือ Firefox

2

การปรับแต่งเฉพาะเวิร์กโฟลว์ที่กำหนดเอง

เมื่อฉันเริ่มทำการพัฒนาทดสอบการขับเคลื่อนฉันทำฟังก์ชั่น elisp ที่จะให้ฉันข้ามไปมาระหว่างไฟล์ด้วยการทดสอบหน่วยและไฟล์ที่มีรหัสการผลิตในแบบง่าย ๆ

ฉันเริ่มใช้ yasnippets เพื่อสร้างภาษาที่สำคัญสองสามฉบับลดเวลาที่ฉันต้องเขียนสิ่งที่ฉันเขียนหลายร้อยครั้งทุกวัน

สุดท้าย แต่ไม่ท้ายสุด; ฉันสร้างโหมด ludditeเพียงแค่ปิดแถบเมนู / แถบเครื่องมือขอบและแถบเลื่อนบังคับให้ฉันต้องใช้แป้นพิมพ์ลัดให้มากที่สุด


0

สองคำสั่งฉันมักจะใช้ทุกขณะนี้แล้วมีและstring-rectangle kill-rectangleอดีตจะอนุญาตให้คุณแทรกข้อความซ้ำในคอลัมน์ใดคอลัมน์หนึ่งข้ามหลายแถว หลังทำในสิ่งที่ตรงกันข้าม


-1

ฉันเดาว่านี่ไม่ใช่คุณสมบัติ "รู้จักน้อย" แต่ฉันมักจะใช้ Emacs สำหรับการแก้ไขข้อความซ้ำ ๆ กฎของคีย์บอร์ด - มาโคร! http://jamesthornton.com/emacs/node/emacs_487.html

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