Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 23/02/2009, à 15:53

selaht

[RÉSOLU - HOW TO]prévisualisation odf dans nautilus

En testant fedora 10, j'ai découvert que nautilus pouvait pré-visualiser les documents open office (odt, ...) comme pour les images et les pdf, et c'est très pratique !
Par contre, je n'arrive pas à obtenir ce résultat sur ubuntu 8.10 ...
Quelqu'un aurait-il une idée ?

une p'tite capture :
Capture.png

Dernière modification par selaht (Le 28/02/2009, à 12:03)


selaht

Hors ligne

#2 Le 24/02/2009, à 23:29

selaht

Re : [RÉSOLU - HOW TO]prévisualisation odf dans nautilus

Méthode n°1 : installer le gestionnaire de fichier thunar avec le paquet thunar-thumbnailers.
inconvénient : marche avec thunar, ne marche avec nautilus que si thunar est passé par là, c'est à dire que nautilus n'affiche les vignettes des documents openoffice dans un dossier que si thunar les a générées au préalable (je suppose).

Méthode n°2 : un script disponible ici http://ubuntuforums.org/showthread.php?t=76566&page=3
l'installation est décrite sur la première page de la discussion.
à tester ...

autre méthode : ?

Dernière modification par selaht (Le 25/02/2009, à 14:41)


selaht

Hors ligne

#3 Le 24/02/2009, à 23:43

_Enchained

Re : [RÉSOLU - HOW TO]prévisualisation odf dans nautilus

le mieux serait de se renseigner auprès de la communauté fedora non ?
en tout cas c'est intéressant comme feature

Hors ligne

#4 Le 24/02/2009, à 23:52

kevlar en mission

Re : [RÉSOLU - HOW TO]prévisualisation odf dans nautilus

Même pas ! Installé sans souci sous Ubuntu. Une petite recherche sur Google t'aménera à un site bien fait (ce n'est pas l mien) qui explique la manip, qui consiste à reconfigurer gconf
le lien : http://www.ordilem.net/spip.php?article27
Bien sûr, on peut également utiliser l'excellent Thunar ! Lire dans ce cas les fils sur ubuntu.fr qui expliquent comment remplacer Nautilus par Thunar wink

#5 Le 25/02/2009, à 14:39

selaht

Re : [RÉSOLU - HOW TO]prévisualisation odf dans nautilus

merci pour les réponses
le lien http://www.ordilem.net/spip.php?article27 correspond à l'installation du script dont je parle plus haut.


selaht

Hors ligne

#6 Le 28/02/2009, à 11:46

selaht

Re : [RÉSOLU - HOW TO]prévisualisation odf dans nautilus

Voici comment installer cette fonctionnalité "à la main" :

D'abord on installe le paquet python-imaging en collant le code ci-dessous dans un terminal.

sudo apt-get install python-imaging

On créé un fichier appelé ooo2-thumbnailer dans /usr/bin
code :

sudo gedit /usr/bin/ooo2-thumbnailer

et on y colle le code suivant :

#!/usr/bin/env python

import gnomevfs
import gtk
import os
import sys
import zipfile
from PIL import Image, ImageEnhance

# Alter these varibles to change thumbnail look
ICON_USE_CURRENT_THEME = True
# If not using current theme then use this path
ICON_PATH_BASE = "/usr/share/icons/hicolor/48x48/apps/" # Change this path to alter icons
ICON_PREFIX = "ooo-" #Ubuntu icons
#ICON_PREFIX="openofficeorg-20-" #OOo2 stock icons

ICON_OPACITY = 0.6 #Opacity of the icon (between 0.0 and 1.0)
THUMBNAIL_BACKGROUND_COLOR = "white" # Color of the background
# Prefix for using mime types
ICON_MIME_PREFIX = "gnome-mime-application-"

in_file_path = gnomevfs.get_local_path_from_uri(sys.argv[1])
out_file_path = sys.argv[2]
path_without_thumbs = os.getenv("HOME")+"/Templates" 
	
def get_icon(thumbnail_size):
	icon_names={"formula":"math","graphics":"draw","presentation":"impress","spreadsheet":"calc","text":"writer"}
	#Get file mimetype
	file_mime_type=gnomevfs.get_mime_type(in_file_path)
	#print file_mime_type
	#Get last part of mimetype name.
	application_name=file_mime_type.split(".")[-1]	
	try:
		#For OOo2 files we have to find icon name in icon_names
		icon_name=icon_names[application_name]
	except:
		#But for OOo1 files it is equal to icon name (without prefix).
		icon_name=application_name
	#Load icon
	if ICON_USE_CURRENT_THEME:
		icon_name = ICON_MIME_PREFIX+ file_mime_type.split("/")[1]
		icon = get_current_theme_icon( icon_name )
	else:
		icon = Image.open(ICON_PATH_BASE+ICON_PREFIX+icon_name +".png").convert("RGBA")
	#Set it's opacity
	icon = set_icon_opacity(icon,ICON_OPACITY)
	#And set it's position in thumbnail
	icon_posx=thumbnail_size[0]-icon.size[0]
	icon_posy=thumbnail_size[1]-icon.size[1]
	icon_width=thumbnail_size[0]
	icon_height=thumbnail_size[1]
	return {"image":icon,"position":(icon_posx,icon_posy,icon_width,icon_height)}	

def get_basic_thumbnail():
	#Find out if the file is not in Templates directory
	if in_file_path.find(path_without_thumbs)!=0:
		try:
			#Extract thumbnail from OOo file and save it
			zip=zipfile.ZipFile(in_file_path,mode="r")
			picture=zip.read("Thumbnails/thumbnail.png")
			zip.close()
			thumbnail=open(out_file_path,"w")
			thumbnail.write(picture)
			thumbnail.write("/n")
			thumbnail.close()
			#Open saved thumbnail
			image=Image.open(out_file_path).convert("RGBA")
			return {"suceeded":True,"image":image,"size":(image.size[0],image.size[1])}
		
		except:
			return {"suceeded":False}
	else:
		return {"suceeded":False}

# Nicked from http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/362879
def set_icon_opacity(icon,opacity):
	#Returns an image with reduced opacity.
	assert opacity >= 0 and opacity <= 1
	if icon.mode != 'RGBA':
		icon = icon.convert('RGBA')
	else:
		icon = icon.copy()
	alpha = icon.split()[3]
	alpha = ImageEnhance.Brightness(alpha).enhance(opacity)
	icon.putalpha(alpha)
	return icon

# Convert GTK pixbuf to PIL Image
def convert_pixbuf_to_image(pb):
	assert(pb.get_colorspace() == gtk.gdk.COLORSPACE_RGB)
	dimensions = pb.get_width(), pb.get_height()
	stride = pb.get_rowstride()
	pixels = pb.get_pixels()
	mode = pb.get_has_alpha() and "RGBA" or "RGB"
	return Image.frombuffer(mode, dimensions, pixels,"raw", mode, stride, 1)

# Get the icon from the current GTK theme
def get_current_theme_icon( icon ):
	theme = gtk.icon_theme_get_default()
	#print theme.list_icons()
	pixbuf_icon = theme.load_icon(icon, 46, 0)
	return convert_pixbuf_to_image(pixbuf_icon)

thumbnail=get_basic_thumbnail()
if thumbnail["suceeded"]:
	background=Image.new("RGB", thumbnail["size"], THUMBNAIL_BACKGROUND_COLOR)
	icon=get_icon(thumbnail["size"])
	thumbnail=thumbnail["image"]
	# Add thumbnail
	background.paste(thumbnail, None, thumbnail)
	# Add icon
	background.paste(icon["image"],icon["position"],icon["image"])
	# Save thumbnail
	background.save(out_file_path,"PNG")

et on enregistre.
On rend le fichier executable :

sudo chmod +x /usr/bin/ooo2-thumbnailer

L'étape suivante consiste à créer le fichier ooo2.schemas dans /usr/share/gconf/schemas pour dire à Gnome comment utiliser ce code :

sudo gedit /usr/share/gconf/schemas/ooo2.schemas

on colle dedans le code suivant :

<gconfschemafile>
    <schemalist>

        <schema>
            <key>/schemas/desktop/gnome/thumbnailers/application@vnd.oasis.opendocument.text/enable</key>
            <applyto>/desktop/gnome/thumbnailers/application@vnd.oasis.opendocument.text/enable</applyto>
            <owner>ooo2-thumb</owner>
            <type>bool</type>
            <default>true</default>
            <locale name="C">
                <short></short>
                <long></long>
            </locale>
        </schema>


        <schema>
            <key>/schemas/desktop/gnome/thumbnailers/application@vnd.oasis.opendocument.text/command</key>
            <applyto>/desktop/gnome/thumbnailers/application@vnd.oasis.opendocument.text/command</applyto>
            <owner>ooo2-thumb</owner>
            <type>string</type>
            <default>/usr/bin/ooo2-thumbnailer %u %o</default>
            <locale name="C">
                <short></short>
                <long></long>
            </locale>
        </schema>
     

        <schema>
            <key>/schemas/desktop/gnome/thumbnailers/application@vnd.oasis.opendocument.spreadsheet/enable</key>
            <applyto>/desktop/gnome/thumbnailers/application@vnd.oasis.opendocument.spreadsheet/enable</applyto>
            <owner>ooo2-thumb</owner>
            <type>bool</type>
            <default>true</default>
            <locale name="C">
                <short></short>
                <long></long>
            </locale>
        </schema>


        <schema>
            <key>/schemas/desktop/gnome/thumbnailers/application@vnd.oasis.opendocument.spreadsheet/command</key>
            <applyto>/desktop/gnome/thumbnailers/application@vnd.oasis.opendocument.spreadsheet/command</applyto>
            <owner>ooo2-thumb</owner>
            <type>string</type>
            <default>/usr/bin/ooo2-thumbnailer %u %o</default>
            <locale name="C">
                <short></short>
                <long></long>
            </locale>
        </schema>
	<schema>
            <key>/schemas/desktop/gnome/thumbnailers/application@vnd.oasis.opendocument.graphics/enable</key>
            <applyto>/desktop/gnome/thumbnailers/application@vnd.oasis.opendocument.graphics/enable</applyto>
            <owner>ooo2-thumb</owner>
            <type>bool</type>
            <default>true</default>
            <locale name="C">
                <short></short>
                <long></long>
            </locale>
        </schema>


        <schema>
            <key>/schemas/desktop/gnome/thumbnailers/application@vnd.oasis.opendocument.graphics/command</key>
            <applyto>/desktop/gnome/thumbnailers/application@vnd.oasis.opendocument.graphics/command</applyto>
            <owner>ooo2-thumb</owner>
            <type>string</type>
            <default>/usr/bin/ooo2-thumbnailer %u %o</default>
            <locale name="C">
                <short></short>
                <long></long>
            </locale>
        </schema>
	<schema>
            <key>/schemas/desktop/gnome/thumbnailers/application@vnd.oasis.opendocument.formula/enable</key>
            <applyto>/desktop/gnome/thumbnailers/application@vnd.oasis.opendocument.formula/enable</applyto>
            <owner>ooo2-thumb</owner>
            <type>bool</type>
            <default>true</default>
            <locale name="C">
                <short></short>
                <long></long>
            </locale>
        </schema>


        <schema>
            <key>/schemas/desktop/gnome/thumbnailers/application@vnd.oasis.opendocument.formula/command</key>
            <applyto>/desktop/gnome/thumbnailers/application@vnd.oasis.opendocument.formula/command</applyto>
            <owner>ooo2-thumb</owner>
            <type>string</type>
            <default>/usr/bin/ooo2-thumbnailer %u %o</default>
            <locale name="C">
                <short></short>
                <long></long>
            </locale>
        </schema>
        <schema>
            <key>/schemas/desktop/gnome/thumbnailers/application@vnd.oasis.opendocument.presentation/enable</key>
            <applyto>/desktop/gnome/thumbnailers/application@vnd.oasis.opendocument.presentation/enable</applyto>
            <owner>ooo2-thumb</owner>
            <type>bool</type>
            <default>true</default>
            <locale name="C">
                <short></short>
                <long></long>
            </locale>
        </schema>


        <schema>
            <key>/schemas/desktop/gnome/thumbnailers/application@vnd.oasis.opendocument.presentation/command</key>
            <applyto>/desktop/gnome/thumbnailers/application@vnd.oasis.opendocument.presentation/command</applyto>
            <owner>ooo2-thumb</owner>
            <type>string</type>
            <default>/usr/bin/ooo2-thumbnailer %u %o</default>
            <locale name="C">
                <short></short>
                <long></long>
            </locale>
        </schema>


<schema>
            <key>/schemas/desktop/gnome/thumbnailers/application@vnd.sun.xml.writer/enable</key>
            <applyto>/desktop/gnome/thumbnailers/application@vnd.sun.xml.writer/enable</applyto>
            <owner>ooo2-thumb</owner>
            <type>bool</type>
            <default>true</default>
            <locale name="C">
                <short></short>
                <long></long>
            </locale>
        </schema>


        <schema>
            <key>/schemas/desktop/gnome/thumbnailers/application@vnd.sun.xml.writer/command</key>
            <applyto>/desktop/gnome/thumbnailers/application@vnd.sun.xml.writer/command</applyto>
            <owner>ooo2-thumb</owner>
            <type>string</type>
            <default>/usr/bin/ooo2-thumbnailer %u %o</default>
            <locale name="C">
                <short></short>
                <long></long>
            </locale>
        </schema>
     

        <schema>
            <key>/schemas/desktop/gnome/thumbnailers/application@vnd.sun.xml.calc/enable</key>
            <applyto>/desktop/gnome/thumbnailers/application@vnd.sun.xml.calc/enable</applyto>
            <owner>ooo2-thumb</owner>
            <type>bool</type>
            <default>true</default>
            <locale name="C">
                <short></short>
                <long></long>
            </locale>
        </schema>


        <schema>
            <key>/schemas/desktop/gnome/thumbnailers/application@vnd.sun.xml.calc/command</key>
            <applyto>/desktop/gnome/thumbnailers/application@vnd.sun.xml.calc/command</applyto>
            <owner>ooo2-thumb</owner>
            <type>string</type>
            <default>/usr/bin/ooo2-thumbnailer %u %o</default>
            <locale name="C">
                <short></short>
                <long></long>
            </locale>
        </schema>


        <schema>
            <key>/schemas/desktop/gnome/thumbnailers/application@vnd.sun.xml.draw/enable</key>
            <applyto>/desktop/gnome/thumbnailers/application@vnd.sun.xml.draw/enable</applyto>
            <owner>ooo2-thumb</owner>
            <type>bool</type>
            <default>true</default>
            <locale name="C">
                <short></short>
                <long></long>
            </locale>
        </schema>


        <schema>
            <key>/schemas/desktop/gnome/thumbnailers/application@vnd.sun.xml.draw/command</key>
            <applyto>/desktop/gnome/thumbnailers/application@vnd.sun.xml.draw/command</applyto>
            <owner>ooo2-thumb</owner>
            <type>string</type>
            <default>/usr/bin/ooo2-thumbnailer %u %o</default>
            <locale name="C">
                <short></short>
                <long></long>
            </locale>
        </schema>
	
	<schema>
            <key>/schemas/desktop/gnome/thumbnailers/application@vnd.sun.xml.math/enable</key>
            <applyto>/desktop/gnome/thumbnailers/application@vnd.sun.xml.math/enable</applyto>
            <owner>ooo2-thumb</owner>
            <type>bool</type>
            <default>true</default>
            <locale name="C">
                <short></short>
                <long></long>
            </locale>
        </schema>


        <schema>
            <key>/schemas/desktop/gnome/thumbnailers/application@vnd.sun.xml.math/command</key>
            <applyto>/desktop/gnome/thumbnailers/application@vnd.sun.xml.math/command</applyto>
            <owner>ooo2-thumb</owner>
            <type>string</type>
            <default>/usr/bin/ooo2-thumbnailer %u %o</default>
            <locale name="C">
                <short></short>
                <long></long>
            </locale>
        </schema>
	<schema>
            <key>/schemas/desktop/gnome/thumbnailers/application@vnd.sun.xml.impress/enable</key>
            <applyto>/desktop/gnome/thumbnailers/application@vnd.sun.xml.impress/enable</applyto>
            <owner>ooo2-thumb</owner>
            <type>bool</type>
            <default>true</default>
            <locale name="C">
                <short></short>
                <long></long>
            </locale>
        </schema>


        <schema>
            <key>/schemas/desktop/gnome/thumbnailers/application@vnd.sun.xml.impress/command</key>
            <applyto>/desktop/gnome/thumbnailers/application@vnd.sun.xml.impress/command</applyto>
            <owner>ooo2-thumb</owner>
            <type>string</type>
            <default>/usr/bin/ooo2-thumbnailer %u %o</default>
            <locale name="C">
                <short></short>
                <long></long>
            </locale>
        </schema>

    </schemalist>
</gconfschemafile>

puis on sauvegarde.

Pour rendre cette fonctionnalité active, deux solutions :
1) Redémarrer l'ordinateur
ou
2) dire à Gnome de lire le fichier :

gconftool-2 --install-schema-file /usr/share/gconf/schemas/ooo2.schemas

puis redémarrer nautilus :

killall -9 nautilus

traduit de http://ubuntuforums.org/showthread.php?t=76566

Dernière modification par selaht (Le 28/02/2009, à 12:04)


selaht

Hors ligne