Je t'ai fait qqchose ... vite fait, c pas très beau, mais c une base
(je le poste ici, ça peut peut être donner des idée à d'autres ;-)
Faut le mettre dans ton dossier d'extension nautilus python
normalement ça : /usr/lib/nautilus/extensions-1.0/python
# -*- coding: utf-8 -*-
import os
import urllib
import gtk
import nautilus
import gconf
class OpenMediaExtension(nautilus.MenuProvider):
def __init__(self):
self.client = gconf.client_get_default()
def _run(self, file):
""" action a faire """
filename = urllib.unquote(file.get_uri()[7:])
prg = "/usr/local/bin/geany"
os.system('%(prg)s "%(filename)s"' % locals())
def menu_activate_cb(self, menu, file):
""" callback de l'entree du menu"""
self._run(file)
def get_file_items(self, window, files):
""" methode appelee juste avant d'afficher le menu contextuel """
if len(files) != 1:
# si plus d'un fichier on se casse
return
file = files[0]
if file.is_directory() or file.get_uri_scheme() != 'file':
# si c pas un fichier on se casse
return
# all is gut, on renvoi le menu entry
item = nautilus.MenuItem('NautilusPython::openmediainfo_file_item',
'Open MediaInfo' ,
'Open MediaInfo with %s' % file.get_name())
item.connect('activate', self.menu_activate_cb, file)
return item,
dans le cas précis, t'aura une entrée "open mediainfo" dans ton menu quand t'as selectionné qu'un fichier
ça ouvre le fichier dans geany (excellent editeur de texte ;-)
Pour l'améliorer :
tester le mime type (video/*), y a une méthode de "file" pour ça je crois ...
lancer l'appli d'une plus belle façon
et qques tests suplémentaires ...
voilà t'as tout
mais si tu veux que je m'en occupe, no prob ...
[^] # Re: C'est un clic-droit->propriétés amélioré, quoi...
Posté par manatlan (site web personnel) . En réponse au journal MediaInfo 0.7.4.0 sous Linux. Évalué à 2.
# -*- coding: utf-8 -*- import os import urllib import gtk import nautilus import gconf class OpenMediaExtension(nautilus.MenuProvider): def __init__(self): self.client = gconf.client_get_default() def _run(self, file): """ action a faire """ filename = urllib.unquote(file.get_uri()[7:]) prg = "/usr/local/bin/geany" os.system('%(prg)s "%(filename)s"' % locals()) def menu_activate_cb(self, menu, file): """ callback de l'entree du menu""" self._run(file) def get_file_items(self, window, files): """ methode appelee juste avant d'afficher le menu contextuel """ if len(files) != 1: # si plus d'un fichier on se casse return file = files[0] if file.is_directory() or file.get_uri_scheme() != 'file': # si c pas un fichier on se casse return # all is gut, on renvoi le menu entry item = nautilus.MenuItem('NautilusPython::openmediainfo_file_item', 'Open MediaInfo' , 'Open MediaInfo with %s' % file.get_name()) item.connect('activate', self.menu_activate_cb, file) return item,dans le cas précis, t'aura une entrée "open mediainfo" dans ton menu quand t'as selectionné qu'un fichier ça ouvre le fichier dans geany (excellent editeur de texte ;-) Pour l'améliorer :