Proste rozszerzenie typu nautilus-python, które pozwala na edycję plików *.desktop (ikonki na pulpicie do uruchamiania programów). Wprawdzie miałem to jako nautilus-script, ale chciałem to mieć na wierzchu i tylko wówczas, gdy jest potrzebne.
Tak się prezentuje przy zaznaczeniu jednego lub kilku (kosmetyczne różnice) plików typu desktop. Opcja pojawi się nawet, gdy wśród zaznaczonych będą inne typy plików. To jest celowo tak zrobione. Zawsze mnie wkurzało, że jak zaznaczę kilka archiwów z "czymkolwiek" to już nie pojawia się opcja ich rozpakowania.
~/.local/share/nautilus-python/extensions/edit-desktop-files.py
#!/usr/bin/env python #-*- coding:utf-8 -*- import gtk import nautilus class EditDesktopFiles(nautilus.MenuProvider): def __init__(self): pass def edit_desktop_files(self, menu, files): for file in files: # http://www.pygtk.org/docs/pygtk/class-gtkmountoperation.html gtk.show_uri(None,file.get_uri(), gtk.gdk.CURRENT_TIME) def get_file_items(self, window, files): # test: czy w ogóle cokolwiek jest zaznaczone if len(files) == 0: return # filtr: tylko pliki *.desktop files = [ file for file in files if file.get_mime_type() == 'application/x-desktop' ] if len(files) == 0: return elif len(files) == 1: LABEL='Edit %s file' % files[0].get_name() TOOLTIP='Edit this desktop file in default editor' else: LABEL='Edit all desktop files' TOOLTIP='Edit all desktop files in default editor' NAME='NautilusPython::edit_desktop_files_item' ICON='/usr/share/pixmaps/nautilus/colors.png' item = nautilus.MenuItem(NAME,LABEL,TOOLTIP,ICON) item.connect('activate', self.edit_desktop_files, files) return item,
Oczywiście należy pamiętać, o wcześniejszym zainstalowaniu paczki nautilus-python, a po załadowaniu skryptu do katalogu należy zrestartować nautilusa
nautilus -q && sleep 1 && nautilus --no-desktop
Brak komentarzy:
Prześlij komentarz