บางครั้งฉันก็เกิดความคิดเกี่ยวกับการกระทำที่ฉันต้องการให้มีในเมนูบริบทของ Nautilus ฉันจะเพิ่มพวกเขาที่นั่นได้อย่างไร มีบางอย่างที่เหมือนกับ Thunar UCA plugin สำหรับ Nautilus หรือไม่?
บางครั้งฉันก็เกิดความคิดเกี่ยวกับการกระทำที่ฉันต้องการให้มีในเมนูบริบทของ Nautilus ฉันจะเพิ่มพวกเขาที่นั่นได้อย่างไร มีบางอย่างที่เหมือนกับ Thunar UCA plugin สำหรับ Nautilus หรือไม่?
คำตอบ:
คำตอบด้านล่างล้าสมัย: คำตอบที่อัปเดตเมื่อเร็ว ๆ นี้เป็นคนนี้
เมนูบริบทของ Nautilus ใช้ในการปรับแต่งโดยส่วนขยาย Nautilus ถูกเตือนว่าลิงค์นี้นำไปสู่เอกสารที่เก็บถาวร; Gnome devs นำเอกสารนั้นออกและไม่สนับสนุนการปรับแต่งนั้นอีกต่อไป มันอาจยังทำงานได้
คุณยังสามารถวางสคริปต์เชลล์ธรรมดาภายใต้ไดเรกทอรี~/.local/share/nautilus/scripts
( ~/.gnome2/nautilus-scripts
ในรุ่นก่อนหน้า) และพวกเขาจะปรากฏในเมนูบริบทไฟล์ภายใต้เมนูย่อยของสคริปต์
~/.local/share/nautilus/scripts
โฟลเดอร์เพื่อใส่สคริปต์ของคุณและถึงแม้มันจะแสดงสคริปต์เท่านั้น เมื่อคุณคลิกขวาที่ไฟล์หรือโฟลเดอร์และไม่ใช่พื้นที่ว่าง
ณ วันที่ Ubuntu 18.04 เปิดตัว Nautilus-Actions เดิม / ไม่สามารถใช้ได้อีกต่อไป ดูเหมือนว่าจะถูกแทนที่โดยโปรแกรมใหม่ที่เรียกว่า Filemanager-Actions ซึ่งมีลักษณะเหมือนกัน
เพื่อติดตั้งโปรแกรมนี้เห็นนี้การแก้ปัญหา
เราอาจกำหนดคลิกขวารายการเมนูบริบทของเราเองด้วยหอยโข่งกระทำ
เรียกใช้เครื่องมือกำหนดค่า Nautilus-Actionsจาก Dash หรือจากเทอร์มินัลด้วย
nautilus-actions-config-tool
ในการดำเนินการแท็บให้การกระทำของคุณฉลากที่เหมาะสมเช่น"เปิดใน Terminator"และเลือกที่จะแสดงนี้ในการเลือกหรือเมนูบริบท
ถัดไปเปิดแท็บคำสั่งเพื่อป้อนคำสั่งที่จะเรียกใช้
กำหนดเส้นทางแบบเต็มไปยังคำสั่งของคุณ ( /usr/bin/command_to_run
) และตัวเลือกโปรแกรม
หลังจากออกจากระบบแล้วคลิกขวาที่เมนูบริบทด้านล่างจะปรากฏขึ้น:
nautilus-actions-config-tool
และเพิ่ม 'สร้างตัวเรียกใช้งาน' ลงในเมนูบริบทของ Nautilus (โดยไม่มีgnome-desktop-item-edit
)
หนึ่งสามารถใช้หลามหอยโข่งnautilus-actions
ขยายเป็นทางเลือกให้กับ
ติดตั้ง:
sudo apt-get install python-nautilus
ตัวอย่างง่ายๆ:
import os
from gi.repository import Nautilus, GObject
class ColumnExtension(GObject.GObject, Nautilus.MenuProvider):
def __init__(self):
pass
def menu_activate_cb(self, menu, file):
os.system("write here your simple bash command & pid=$!")
def get_background_items(self, window, file):
item = Nautilus.MenuItem(name='ExampleMenuProvider::Foo2',
label='Name of your item',
tip='',
icon='')
item.connect('activate', self.menu_activate_cb, file)
return item,
คัดลอกสคริปต์ไพ ธ อนนี้ใต้~/.local/share/nautilus-python/extensions
และรีสตาร์ทหอยโข่ง เมื่อคุณคลิกขวาที่เดสก์ท็อปและเลือกรายการของคุณคำสั่ง bash อย่างง่ายของคุณจะถูกดำเนินการ :)
nautilus-python
และextensions
โฟลเดอร์หากไม่มี
หากคุณต้องการที่จะสามารถที่จะทำบางสิ่งบางอย่างในเวลาใด ๆ ทำเช่นเดียวกับ ulidtko ~/.gnome2/nautilus-scripts
กล่าวและการใช้งาน
หากคุณต้องการที่จะสามารถปรับแต่งเมื่อคุณเห็นมันให้ติดตั้งแพคเกจ nautilus-actions จากนั้นไปที่ System-> Preferences-> Nautilus Actions Configuration
พฤศจิกายน 29, 2016 ยุค Ubuntu 14.04, 16.04 และ 16.10 บวกรุ่นก่อนหน้า
ดูคำแนะนำของ Nautilus สำหรับการสร้างสคริปต์ของคุณเองที่นี่ ( ช่วยเหลือ Ubuntu - วิธีใช้ Nautilus ) โดยทั่วไปคุณ:
~/.local/share/nautilus/scripts/
chmod +x script_name
มีสคริปต์ตัวอย่างอยู่ที่ ( ช่วยเหลือ Ubuntu - สคริปต์ตัวอย่าง Nautilus ) สำหรับไฟล์อีเมลการติดตั้งไฟล์ ISO การตั้งค่าไฟล์เพื่ออ่านอย่างเดียวแก้ไขไฟล์ด้วยสิทธิ์ ROOT ของ gedit ช่องเปิดที่ตำแหน่งปัจจุบัน ฯลฯ
ดูสคริปต์และใช้เป็นแม่แบบสำหรับเข้ารหัสไฟล์อัพโหลดไปยังคลาวด์บีบอัดเพื่อสำรองข้อมูลหรือสิ่งที่คุณต้องทำ
ทางออกที่ดีที่สุดสำหรับนักพัฒนาแอพพลิเคคือการใช้หลามหอยโข่ง
สร้างสคริปต์ไพ ธ อนของคุณ ( ตัวอย่างต่อไปนี้ และเอกสารประกอบไม่ดี) และคัดลอกไปยังโฟลเดอร์ที่ถูกต้อง:
mkdir -p ~/.local/share/nautilus-python/extensions && cp script.py ~/.local/share/nautilus-python/extensions
สมมติว่าคุณต้องการที่จะสร้างโปรแกรมที่ผู้ใช้ติดตั้งกับสคริปต์หรือ.deb
ไฟล์ด้วยที่ในใจฉันจะอธิบายว่าทำไมผมคิดว่าpython-nautilus
เป็นทางออกที่ดีกว่าเมื่อเทียบกับกระทำหอยโข่งและสคริปต์หอยโข่ง
นี้เป็นเพียงการแก้ปัญหาที่จะนำเสนอ GUI text/plain
และดังนั้นจึงทำให้ง่ายต่อการสร้างพฤติกรรมที่ซับซ้อนเช่นตัดสินใจเมนูรายการสิ่งที่จะแสดงว่าละครใบ้ชนิดไฟล์ที่เลือกคือ
ปัญหาหลักของการแก้ปัญหานี้คือมันไม่ใช่เรื่องง่าย (ถ้าเป็นไปได้) ในการนำเข้ารายการไปยังคอมพิวเตอร์เครื่องอื่นที่ไม่มีเครื่องมือการกำหนดค่าและผู้ใช้นำเข้ามาสมมติว่ามันเป็นไปไม่ได้ที่จะทำกับสคริปต์
นี่เป็นทางออกที่ตรงไปตรงมาหยิบสคริปต์วางไว้ในโฟลเดอร์และทำ สิ่งนี้จะทำให้สคริปต์ติดตั้งหรือ.deb
ไฟล์สร้างรายการใหม่ในเมนูบริบท ปัญหาคืออะไร ฉันจะเริ่มที่ไหน ...
แอพที่ดีไม่ได้ใช้ทางลัดเช่นนี้เพราะมันทำให้ประสบการณ์การใช้งานของคุณเสียหาย
ไม่ใช่เรื่องง่ายที่จะสร้างเป็นโซลูชั่นก่อนหน้านี้ แต่เสนอที่ดีที่สุดของโลกทั้งสอง การเขียนสคริปต์และการปรับแต่ง
วิธีนี้ช่วยให้คุณสร้างสคริปต์ python ที่รับไฟล์ที่เลือกใน nautilus และให้คุณตัดสินใจว่าคุณต้องการแสดงรายการหรือไม่และจะทำอย่างไรกับรายการนั้น นอกจากนี้ยังช่วยให้คุณสร้างเมนูย่อยและหรือสิ่งที่น่าสนใจ
ข้อเสียเปรียบคือการขาดเอกสารขนาดใหญ่และนักพัฒนาที่ต้องการเพิ่มรายการอาจพบว่าตัวเองเสียเวลาสองสามชั่วโมงในการสร้างต้นแบบการทำงาน (ในงานวิจัยของฉันฉันพบวิธีแก้ปัญหาบน C ที่ซับซ้อนกว่านี้)
ปกติฉันใช้ Visual Studio Code ในขณะที่บน Windows มันมีรายการเมนูบริบทOpen with Visual Studio Code
มันขาดฟังก์ชั่นเดียวกันบน Linux ด้วย Python solution มันจะง่ายต่อการแก้ไขปัญหา ฉันคิดว่าแอพใน Linux อาจได้ประโยชน์จากการรวม nautilus
หวังว่าคำอธิบายนี้จะช่วยให้คุณตัดสินใจได้ว่าจะเลือกอะไร