ตั้ง emacs -nw เป็นตัวแก้ไขเริ่มต้น


13

เมื่อต้องการแก้ไขไฟล์sudoersฉันต้องการใช้ emacs แทน nano ดังนั้นฉันจึงใช้คำสั่งนี้

sudo update-alternatives --config editor

และฉันเลือก emacs ปัญหาเดียวคือฉันชอบ emacs ในโหมดไม่มีหน้าต่าง (แฟล็ก -nw) และฉันใช้นามแฝง emacs emacs='emacs -nw'เพื่อที่ฉันจะได้ใช้โหมดไม่มีหน้าต่างในการใช้งานปกติ แต่ฉันไม่รู้วิธีทำให้ตัวแก้ไขเริ่มต้นของฉันเป็น ในโหมดไม่มีหน้าต่าง

ในคำอื่น ๆ ที่ฉันต้องการที่จะได้รับคำสั่งและคำสั่งที่คล้ายบรรณาธิการขึ้นเปิดให้เปิดไฟล์ที่มีsudo visudo emacs -nwฉันจะทำสิ่งนี้ได้อย่างไร ฉันใช้ Ubuntu 12.04


สิ่งนี้ไม่เกี่ยวข้อง แต่ถ้าคุณตั้งใจจะใช้ `emacs -nw 'เป็นเทอร์มินัลเอดิเตอร์เริ่มต้นของคุณคุณอาจต้องการดู emacsclient และใช้ emacs เป็น daemon มิฉะนั้นฉันคิดว่ามันจะช้าเกินไปที่จะเริ่มต้น ด้วยเซิร์ฟเวอร์ emacs การเริ่มต้นใช้งานจริงทันทีและไม่ยากในการตั้งค่า
Dodgie

คำตอบ:


8

สร้างสคริปต์ที่เริ่ม emac ด้วยแฟล็ก -nw เช่น / usr / local / bin / emacs-nw

#!/bin/sh

emacs -nw "$@"

ติดตั้งด้วยทางเลือกอัพเดท - ติดตั้ง

sudo update-alternatives --install /usr/bin/editor editor /usr/local/bin/emacs-nw 2

กำหนดค่าเครื่องมือแก้ไขให้เป็นสคริปต์ใหม่ของคุณ

sudo update-alternatives --set editor /usr/local/bin/emacs-nw

2
สำหรับผู้ที่ไม่ได้ใช้การอัปเดตทางเลือกที่เข้าร่วมระบบchmod +x /usr/local/bin/emacs-nwและexport EDITOR='emacs-nw'ใน.bashrcทำเคล็ดลับ
smonff

1
เพียงแค่อัปเดตตัวแปรเชลล์ EDITOR เพื่อโทรemacs -nwเป็นแบบดั้งเดิมมากขึ้นและไม่เกี่ยวข้องกับการสร้างไฟล์แปลก ๆ สำหรับงานง่ายๆ ทำไมสิ่งนี้ถึงดีกว่า
vaer-k

6

เพิ่มสิ่งต่อไปนี้ใน~/.bashrcไฟล์ของคุณ(หรือไฟล์กำหนดค่าสำหรับเชลล์ของคุณหากไม่ใช่ Bash)

export EDITOR="emacs -nw"

สิ่งนี้ควรตั้งค่า (และส่งออก) ตัวแปร env การตั้งค่าตัวแก้ไขเริ่มต้นของคุณเป็น Emacs ในโหมดที่ไม่ใช่แบบกราฟิก


หลังจากตั้งค่าEDITORคุณจะเปิด Emacs ในโหมดกราฟิกได้อย่างไร
Manolete

2
@Manolete คุณสามารถใช้งานcommand emacsได้สิ่งนี้จะเรียกใช้ Emacs โดยไม่ต้องใช้นามแฝงและเช่นนั้น แน่นอนคุณยังสามารถunalias emacsสำหรับเซสชั่น
Kyrremann

@Manolete การเปิดตัว emacs จริงemacsที่บรรทัดคำสั่งหรือคลิกที่ไอคอนจะยังคงเปิดใช้งานรูปแบบกราฟิก คำสั่งด้านบนในโพสต์ของฉันเพียงแค่ตั้งค่าตัวแปรสภาพแวดล้อมของ EDITOR เป็น "emacs -nw" แต่จริงๆแล้วมันไม่ได้สร้างนามแฝง มันแค่บอกเชลล์ว่าตัวแก้ไขที่คุณต้องการคือ emacs -nw emacsจะยังคงเปิดตัวแบบกราฟิก
haziz

1

ฉันมีการตั้งค่าต่อไปนี้ในของฉัน ~/.bashrc

export EDITOR="emacsclient -t -a=\"\""

สิ่งนี้จะพยายามเชื่อมต่อเซิร์ฟเวอร์ emacs daemon ก่อนหากเริ่มต้นแล้วไม่เช่นนั้นจะเริ่มเซิร์ฟเวอร์ daemon ก่อนจากนั้นจึงเชื่อมต่ออีกครั้ง

ในทำนองเดียวกันฉันมีการตั้งค่าต่อไปนี้ในของฉัน ~/.gitconfig

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