วิธีเปิด emacs ภายใน bash


124

ฉันใช้ Ubuntu 11.10 เมื่อฉันพิมพ์คำสั่ง "emacs" ในเทอร์มินัลมันจะเปิด emacs เป็นหน้าต่างแยกต่างหาก ฉันจะเปิดภายในเทอร์มินัลเช่นโปรแกรมแก้ไขนาโนได้อย่างไร


เช่นเคยเมื่อฉันเห็นคำถามเช่นนี้ฉันสงสัยว่าทำไมคุณถึงต้องการทำเช่นนั้น ด้วย emac แบบกราฟิกคุณสามารถใช้ฟอนต์ทุกแบบที่คุณต้องการชุดสีที่สวยงามใช้การรองรับรูปภาพ ฯลฯ ...
Daimrod

29
@Daimrod: บางครั้งหน้าต่างใหม่ก็ผุดขึ้นมารบกวนจิตใจที่เข้มข้น บางครั้งคุณต้องการทำอย่างรวดเร็วในหน้าต่างที่มีอยู่และบางครั้งคุณต้องการจองทั้งห้องสำหรับสิ่งของของคุณ
nperson325681

7
@Daimrod เพราะบางครั้งคุณกำลังแก้ไขไฟล์ในสอง ssh hops บนลิงค์ที่ช้าและ emac รุ่น X มากเกินไปสำหรับการเชื่อมต่อของคุณ
Trebor Rude

1
นอกจากนี้อาจต้องการฝึกใช้ Emac ในโหมดเทอร์มินัล
cammil

@Daimrod นอกจากนี้ยังมีประโยชน์สำหรับการจับคู่ข้ามบริการเช่น tmate
Paul Byrne

คำตอบ:


207

Emacs มีตัวเลือกการเปิดตัวมากมาย สิ่งที่คุณกำลังมองหาคือ emacs -nwสิ่งนี้จะเปิด emacs ภายในเทอร์มินัลโดยไม่คำนึงถึงตัวแปรสภาพแวดล้อม DISPLAY แม้ว่าจะตั้งค่าไว้ก็ตาม emacs --no-window-systemรูปแบบที่ยาวของธงนี้เป็น

ข้อมูลเพิ่มเติมเกี่ยวกับตัวเลือกเปิดตัว emacs สามารถพบได้ในคู่มือ



28

ด้วยจิตวิญญาณของการให้ฟังก์ชันการทำงานไปที่.profileหรือ.bashrcไฟล์ของคุณที่อยู่ที่/home/usr/ด้านล่างและเพิ่มบรรทัด:

alias enw='emacs -nw'

ตอนนี้ทุกครั้งที่คุณเปิดเซสชันเทอร์มินัลคุณเพียงแค่พิมพ์enwและคุณมีตัวเลือก emacs no-window ด้วยตัวอักษรสามตัว :)


12

หากคุณต้องการเปิด EMACS โดยไม่มี X:

emacs -nw

1
ในอนาคตโปรดทราบว่าคุณต้องขึ้นบรรทัดใหม่เพื่อให้การจัดรูปแบบโค้ดทำงานได้อย่างถูกต้อง ทำให้ฉันมีสองสามครั้งแรกที่ฉันใช้ด้วย :)
Tikhon Jelvis

1
ขอบคุณ Tikhon! นั่นทำให้ฉันโกรธตลอดทั้งวัน: P
speeves

4

ฉันไม่ชอบโซลูชันนามแฝงสำหรับวัตถุประสงค์ของฉัน export EDITOR="emacs -nw"สำหรับหนึ่งก็ไม่ได้ทำงานสำหรับการตั้งค่า

แต่คุณสามารถผ่าน--without-xเพื่อกำหนดค่าจากนั้น ol ปกติemacsจะเปิดในเทอร์มินัลเสมอ

curl http://gnu.mirrors.hoobly.com/emacs/emacs-25.3.tar.xz
tar -xvzf emacs-25.3.tar.xz && cd emacs-25.3
./configure --without-x
make && sudo make install

1
emacs hello.c -nw 

นี่คือการเปิดไฟล์ hello.c โดยใช้ emacs ภายในเทอร์มินัล


1

พยายามemacs —daemonให้ emac ทำงานอยู่เบื้องหลังและemacsclientเชื่อมต่อกับเซิร์ฟเวอร์ emacs

ประหยัดเวลาในระบบสมัยใหม่ได้ไม่มากนัก แต่ก็ดีกว่าการใช้ emac หลาย ๆ อินสแตนซ์


0

นอกจากนี้ยังมีประโยชน์ในการเพิ่มตัวเลือก--no-desktopเพื่อหลีกเลี่ยงการเปิดใช้บัฟเฟอร์หลายรายการที่บันทึกไว้

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