ฉันเคยใช้ Emacs มาบ้างแล้วและฉันก็รู้สึกสบายใจกับคำสั่ง / ทางลัดขั้นพื้นฐานที่สุด แต่ฉันรู้ว่า Emacs มีข้อเสนอมากมายกว่าที่ฉันใช้ อะไรคือคุณสมบัติที่รู้จักน้อยของ emacs ที่สามารถช่วยให้ฉันเป็นโปรแกรมเมอร์ที่มีประสิทธิผลมากขึ้น?
ฉันเคยใช้ Emacs มาบ้างแล้วและฉันก็รู้สึกสบายใจกับคำสั่ง / ทางลัดขั้นพื้นฐานที่สุด แต่ฉันรู้ว่า Emacs มีข้อเสนอมากมายกว่าที่ฉันใช้ อะไรคือคุณสมบัติที่รู้จักน้อยของ emacs ที่สามารถช่วยให้ฉันเป็นโปรแกรมเมอร์ที่มีประสิทธิผลมากขึ้น?
คำตอบ:
เรียนรู้ elisp
อนุญาตให้คุณตั้งโปรแกรมทางลัดใด ๆ ที่คุณนึกออก เมื่อใดก็ตามที่คุณพบว่าตัวเองกำลังดำเนินการหลายขั้นตอนสำหรับสิ่งที่มีประโยชน์คุณสามารถสร้างฟังก์ชั่นได้จากมัน
ช่วยให้คุณสามารถทดสอบด้วยการเขียนโปรแกรมใช้งานได้ - การเรียนรู้กระบวนทัศน์ใหม่เป็นวิธีที่ดีในการขยายขอบเขตของคุณ
ลองดูหน้า SO นี้มันมีเคล็ดลับเพียงพอที่จะเพิ่มประสิทธิภาพการทำงานของ Emacs ของคุณอย่างน้อย 2x:
http://stackoverflow.com/questions/60367?tab=votes&page=1
นอกจากนี้คุณต้องใช้ Org-mode อย่างแน่นอนหากคุณเป็นผู้ใช้ Emacs:
องค์กร: ชีวิตของคุณในข้อความล้วน
แก้ไข: น่าเสียดายที่ดูเหมือนว่าผู้ดูแล SO ไม่เพียง แต่ปิดคำถาม / ลิงค์แรกเท่านั้น แต่ยังลบมันออกได้เช่นกันทำลายความรู้และภูมิปัญญาในกระบวนการ (มาเขียนหนังสือเล่มนี้กันเถอะเราไม่รู้ว่ามันอยู่ตรงไหน!) ในตอนนี้ลิงค์ทางเลือกเดียวที่มีประโยชน์ที่ฉันได้พบคือเธรด HN ที่พูดถึงเธรด SO:
ปิดส่วนหัวของฉัน:
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])
โดยทั่วไปแล้วบทรวบรวมและการทดสอบโปรแกรมของหน้าข้อมูลเป็นการอ่านที่ดี
ดีสตีฟ Yegge ได้เขียนบล็อกโพสต์ดีมาก10 วิธีเฉพาะเพื่อเพิ่มผลผลิตของคุณด้วย Emacs มันมีเทคนิคและนิสัยชอบ
นอกจากนี้เขายังแสดงโหมด emacs ที่มีประโยชน์และกล่าวถึงเทคนิคอื่น ๆ อีกมากมายที่ทำให้ผู้คนรอคอยการคาดการณ์สำหรับการปรับปรุงในอนาคตในการโพสต์บล็อก
ฉันรู้ว่าคุณถูกถามโดยเฉพาะเกี่ยวกับวิธีการและคำสั่ง แต่ฉันขอแนะนำวิธีการทั้งหมดต่อไปนี้:
การปรับแต่งเฉพาะเวิร์กโฟลว์ที่กำหนดเอง
เมื่อฉันเริ่มทำการพัฒนาทดสอบการขับเคลื่อนฉันทำฟังก์ชั่น elisp ที่จะให้ฉันข้ามไปมาระหว่างไฟล์ด้วยการทดสอบหน่วยและไฟล์ที่มีรหัสการผลิตในแบบง่าย ๆ
ฉันเริ่มใช้ yasnippets เพื่อสร้างภาษาที่สำคัญสองสามฉบับลดเวลาที่ฉันต้องเขียนสิ่งที่ฉันเขียนหลายร้อยครั้งทุกวัน
สุดท้าย แต่ไม่ท้ายสุด; ฉันสร้างโหมด ludditeเพียงแค่ปิดแถบเมนู / แถบเครื่องมือขอบและแถบเลื่อนบังคับให้ฉันต้องใช้แป้นพิมพ์ลัดให้มากที่สุด
สองคำสั่งฉันมักจะใช้ทุกขณะนี้แล้วมีและstring-rectangle
kill-rectangle
อดีตจะอนุญาตให้คุณแทรกข้อความซ้ำในคอลัมน์ใดคอลัมน์หนึ่งข้ามหลายแถว หลังทำในสิ่งที่ตรงกันข้าม
ฉันเดาว่านี่ไม่ใช่คุณสมบัติ "รู้จักน้อย" แต่ฉันมักจะใช้ Emacs สำหรับการแก้ไขข้อความซ้ำ ๆ กฎของคีย์บอร์ด - มาโคร! http://jamesthornton.com/emacs/node/emacs_487.html