คุณสมบัติ ของ Emacs

แพลตฟอร์ม

อีแม็คส์สามารถทำงานได้บนระบบปฏิบัติการยูนิกซ์เกือบทุกระบบ (GNU, Linux, BSD, Solaris, AIX, IRIX, Max OS X), MS-DOS, Microsoft Windows, และ OpenVMS นอกจากนี้อีแม็คส์ยังสามารถทำงานได้ทั้งบน terminal และ graphical user interface (GUI)

โหมดในการแก้ไขข้อมูล

อีแม็คส์จะเปลี่ยนพฤติกรรมการทำงานไปตามชนิดของข้อมูลที่กำลังถูกแก้ไข เรียกว่าโหมดการทำงานหลัก (major mode) ตัวอย่างของโหมดการทำงานหลักได้แก่ โหมดปกติสำหรับตัวหนังสือ, โหมดสำหรับภาษาโปรแกรมแบบต่างๆ, โหมดสำหรับเอกสาร HTML พฤติกรรมที่ต่างๆ กันเช่น syntax highlighting รวมทั้งคำสั่งพิเศษที่จะช่วยในการแก้ไขเฉพาะสำหรับโหมดนั้นๆ

นอกจากนี้ ในขณะใดขณะหนึ่งไฟล์ที่ถูกแก้ไขจะใช้โหมดการทำงานหลักได้เพียงโหมดเดียว แต่พฤติกรรมการทำงานยังสามารถถูกปรับแต่งเพิ่มเติมโดยใช้โหมดย่อย (minor mode) ได้หลายๆ โหมดพร้อมกัน ยกตัวอย่างเช่น โหมดหลักสำหรับภาษาซีสามารถเลือกใช้โหมดย่อยที่จัดย่อหน้าแบบต่างๆ กันไป

การปรับแต่ง

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

วิธีการที่สอง โดยการบันทึกแมโครและรันแมโครสำหรับงานที่ซับซ้อนและต้องทำซ้ำๆ กัน โดยส่วนใหญ่แมโครที่บันทึกไว้จะถูกใช้ทันนีและทิ้งไปเมื่อออกจากโปรแกรมแม้ว่าจะสามารถบันทึกไว้เพื่อเรียกใช้งานทีหลังได้เช่นกัน

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

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

ใกล้เคียง

Emacs