การตั้งค่า nautilus-open-terminal เพื่อเรียกใช้ Terminator แทนที่จะเป็น gnome-terminal


52

nautilus-open-terminalแพคเกจเพิ่มตัวเลือกเมนู / คลิกขวาเพื่อเปิด terminal ในไดเรกทอรีปัจจุบัน

ฉันต้องการที่จะเปลี่ยนแปลงนี้จากการเปิดการเปิดgnome-terminal มีคำแนะนำเกี่ยวกับการเปลี่ยนเทอร์มินัลอีมูเลเตอร์เริ่มต้นที่นี่อย่างไรก็ตามคำแนะนำเหล่านี้ดูเหมือนจะไม่ถูกต้องอีกต่อไปและฉันไม่สามารถหาสถานที่ใด ๆ ในการตั้งค่าระบบที่สามารถเปลี่ยนอีมูเลเตอร์เริ่มต้นได้terminator

ฉันก็ลอง:

$ sudo update-alternatives --config x-terminal-emulator

เลือก

* 0            /usr/bin/terminator               50        auto mode

แต่สิ่งนี้ดูเหมือนจะไม่มีผลใด ๆ มีความคิดใดที่ฉันจะทำให้เรื่องนี้ทำงานได้?


นี่คือคำถามเกี่ยวกับการตั้งค่าเทอร์มินัลอีมูเลเตอร์เริ่มต้น
user32085

โอเคฉันลองแล้วมันใช้ไม่ได้ อันที่จริงคำสั่ง "Open in Terminal" ไม่ได้ทำอะไรเลยตอนนี้
YXD

ทดสอบตอนนี้เพื่อดูว่ามันทำงานอย่างไรสำหรับ terminator ด้วย terminator คุณต้องตั้งค่าพา ธ เต็มไปยังโปรแกรมหลังจากนั้นมันจะทำงานเหมือนมีเสน่ห์โดยกด ctrl + alt + t หรือเมื่อคุณมีโปรแกรมที่เรียก สถานีปลายทาง
Bruno Pereira

1
ขอบคุณสำหรับคำแนะนำ. ทุกสิ่งที่คุณอธิบายใช้งานได้ดี แต่ฉันไม่สามารถnautilus-open-terminalทำงานกับ Terminator ได้ซึ่งเป็นคำถามเดิมของฉัน หากคุณหรือใครมีข้อมูลเชิงลึกเกี่ยวกับวิธีที่ฉันสามารถทำงานนี้ฉันจะขอบคุณมาก
YXD

คำตอบ:


34

Ubuntu 13.04: (ในกรณีที่คุณมาที่นี่ผ่าน Google)

คุณไม่สามารถเปลี่ยนแอปเทอร์มินัลที่ใช้อีกต่อไป

รายละเอียด : nautilus-open-terminalใช้GAppInfoเพื่อเรียกใช้กระบวนการเทอร์มินัลซึ่งใช้รายการรหัสจำลองอย่างหนักของเทอร์มินัลอีมูเลเตอร์: https://git.gnome.org/browse/glib/tree/gio/gdesktopappinfo.c#n1106

วิธีการแก้:

  1. ลบ gnome-terminal: sudo apt-get remove gnome-terminal
  2. ตัวยุติ Symlink ไปยัง gnome-terminal: sudo ln -s /usr/bin/terminator /usr/bin/gnome-terminal

ดูbugzilla.gnome.org/show_bug.cgi?id=743626 --- ฉันคิดว่านี่เป็นข้อผิดพลาด
Rmano

จริงๆแล้วมันคือbugzilla.gnome.org/show_bug.cgi?id=627943 --- ที่นี่ตั้งแต่ปี 2010 ตกลง
Rmano

สำหรับ Ubuntu Mate, ทำตามด้วยsudo apt-get remove mate-terminal sudo ln -s /usr/bin/terminator /usr/bin/mate-terminal
user_1_1_1

9
สิ่งนี้ไม่ทำงานใน 16.04 ฉันสามารถเรียกใช้gnome-terminalจากบรรทัดคำสั่งได้ แต่ตัวเลือก "Open in Terminal" ของ Nautilus ไม่ทำอะไรเลย
Cerin

เมื่อวันที่ 16.04 ผมใช้gist.github.com/randy3k/c7f69adc2754f4b2bff361fbfd0fdc5dจะเปิดio.elementary.terminalผมคิดว่าคุณก็ต้องคัดลอกไปและแก้ไขมัน/usr/share/nautilus-python/extensions terminator
Randy Lai

38

Nautilus-การดำเนินการ ติดตั้ง nautilus-actions

เราอาจกำหนดรายการเมนูบริบทคลิกขวาของเราเองด้วยหอยโข่งกระทำ

  • เรียกใช้เครื่องมือกำหนดค่า Nautilus-Actionsจาก Dash หรือจากเทอร์มินัลด้วย

    nautilus-actions-config-tool
    

ป้อนคำอธิบายรูปภาพที่นี่

  • ในการดำเนินการแท็บให้การกระทำของคุณฉลากที่เหมาะสมเช่น"เปิดใน Terminator"และเลือกที่จะแสดงนี้ในการเลือกหรือเมนูบริบท

  • ถัดไปเปิดแท็บคำสั่งเพื่อป้อนคำสั่งที่จะเรียกใช้

ป้อนคำอธิบายรูปภาพที่นี่

  • ให้ในพา ธ แบบเต็มไปยังคำสั่งของคุณ ( /usr/bin/terminator) และตัวเลือกโปรแกรม ( --working-directory=%d/%b) เพื่อเปิดพา ธ ปัจจุบันใน Terminator

  • หลังจากออกจากระบบและอีกครั้ง (หรือเพียงแค่รีสตาร์ทหอยโข่งด้วยnautilus -q) เมนูบริบทคลิกขวาด้านล่างจะปรากฏขึ้น:

ป้อนคำอธิบายรูปภาพที่นี่


ว้าวขอบคุณมากสำหรับรายละเอียดการเขียน! ฉันจะลองวันพรุ่งนี้เมื่อฉันไปถึงสำนักงานและรายงานกลับ
YXD

1
ทางออกที่ดี สิ่งหนึ่งที่: ไม่จำเป็นจริงๆที่จะต้องออกจากระบบ / เข้าสู่ระบบ, การเริ่มต้นหอยโข่งด้วยnautilus -qก็เพียงพอแล้ว ฉันเพิ่งเสนอการแก้ไขสำหรับสิ่งนั้น
Christoph

1
Nautilus-Actions ไม่สามารถไปที่เส้นทาง symlink แบบสัมพัทธ์ได้ แต่ใช้โปรแกรมเลือกจ่ายงานแบบสัมบูรณ์ แต่ปลั๊กอิน open-in-terminal เปิดเส้นทางแบบสัมพัทธ์
ลุงจู

ว้าวขอบคุณมากผมไม่ทราบว่าแอพลิเคชันที่มีอยู่ :)
Iman Akbari

5
หากคุณไม่ต้องการOpen in Terminatorอยู่ในเมนูย่อยใน Nautilus-Actions ให้ไปที่แก้ไข> การตั้งค่า> ปิดการใช้งาน "สร้างเมนู 'Nautilus-Actions' รูต"
Hải Phong

23

ในการกำหนดค่าเทอร์มินัลเริ่มต้นใน gnome คุณต้องติดตั้ง dconf-tools (sudo apt-get install dconf-tools)

หลังจากนั้นคุณสามารถใช้ dconf-editor หรือ gsettings เพื่อตั้งเทอร์มินัลอีมูเลเตอร์ที่คุณชื่นชอบ gsettingsคู่มือนี้จะใช้

หลังจากติดตั้งให้terminatorพิมพ์คำสั่งนี้

gsettings set org.gnome.desktop.default-applications.terminal exec /usr/bin/terminator

การตั้งค่าexec-argsสำหรับสถานีที่คุณต้องการในกรณีของคุณที่จะดำเนินการส่วนที่เหลือของการขัดแย้งที่จำเป็นของ-xnautilus-open-terminal

gsettings set org.gnome.desktop.default-applications.terminal exec-arg "-x"

หลังจากที่เทอร์มินี้จะจำลอง terminal เริ่มต้นของคุณเมื่อnautilus-open-terminalเรียกขั้วเริ่มต้นก็ควรเปิดแทนterminatorgnome-terminal


จำเป็นต้องมีอาร์กิวเมนต์ มีการแก้ไขและยอมรับ
YXD

คุณกำลังใช้ข้อโต้แย้งอะไรterminatorหากมีประโยชน์ฉันจะแก้ไขคำตอบและเพิ่มข้อมูลนั้น
Bruno Pereira

มันorg.gnome.desktop.default-applications.terminal exec-arg '-x'เป็นในการแก้ไขของฉัน
YXD

แต่จุดสำคัญคือมันตั้งอย่างถูกต้องแล้วโดยเริ่มต้น - สิ่งที่เหมาะกับการทำงานสำหรับgnome-terminal terminator
YXD

6
สิ่งนี้ใช้ไม่ได้กับ Ubuntu 16.04 ...
Cerin

0

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

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

สร้างไฟล์ change_terminal.sh

# Open a new terminator window in a detached tmux session so it remains open
cmd="terminator --working-directory=$PWD"
tmux new-session -d
tmux send-keys "$cmd" C-m
tmux dettach
# Close active window (gnome-terminal since the new one hasn't loaded yet)
xdotool key --clearmodifiers Ctrl+Shift+Q key --clearmodifiers KP_Enter

และให้สิทธิ์ดำเนินการ:

chmod +x change_terminal.sh

สร้างนามแฝงต่อไปนี้:

alias ct="path/to/change_terminal.sh"

ตอนนี้คุณเพียงแค่เปิดเทอร์มินัลเริ่มต้นจาก nautilus ในตำแหน่งที่ต้องการและพิมพ์ 'ct' เพื่อปิดและเปิดเทอร์มินัลเทอร์มินัลในตำแหน่งเดียวกัน


0

ฉันใช้ Ubuntu 18.04 และฉันไม่สามารถแก้ไขปัญหาได้ แต่ฉันติดตั้งnautilus-terminalซึ่งฝัง terminal ของคุณเป็นหอยโข่ง! ซึ่งยอดเยี่ยมอย่างแน่นอน

ติดตั้งเทอร์มินัล nautilus

sudo add-apt-repository ppa:flozz/nautilus-terminal
sudo apt update
sudo apt install nautilus-terminal
nautilus -q

ป้อนคำอธิบายรูปภาพที่นี่

นอกจากนี้คุณยังสามารถกำหนดค่าผ่านทางเครื่องมือแก้ไข dconf ข้อมูลเพิ่มเติมในลิงค์นี้

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