Frage :
Ubuntus Dateimanager, Nautilus
, bietet eine breite Unterstützung für Dateivorschauen. Diese Thumbnails werden von Hilfsprogrammen namens Thumbnailers verarbeitet.
Die Anzahl der mit Ubuntu vorinstallierten Thumbnails ist begrenzt und daher werden einige exotischere Dateitypen nicht standardmäßig gerendert.
Welche zusätzlichen Thumbnailer kann ich in diesen Fällen installieren, um Vorschauen zu aktivieren?
Verwandte Fragen und Antworten :
Wie kann ich Nautilus anweisen, Thumbnails vorab zu generieren?
Hinweis :
Fühlen Sie sich frei, zu dieser Liste beizutragen, indem Sie die Community-Wiki-Antwort bearbeiten. Wenn Sie dies tun, befolgen Sie bitte die Richtlinien in dieser Meta-Diskussion und verwenden Sie das bereits vorhandene Muster, um die Antwort konsistent zu halten.
Akzeptierte Antwort:
Allgemeine Installationshinweise
Thumbnailer in Repositories und PPAs
Eine Reihe von Thumbnailern sind vorkonfiguriert und können einfach über das Software-Center oder die Befehlszeile installiert werden. Diese Thumbnails erfordern keine zusätzliche Konfiguration und sollten direkt nach dem Neustart von Nautilus funktionieren. Sie können dies tun mit:
nautilus -q
Bitte lesen Sie diese Fragen und Antworten, bevor Sie etwas von einem PPA installieren:
Was sind PPAs und wie verwende ich sie?
Kann ich PPAs sicher zu meinem System hinzufügen und auf welche „roten Flaggen“ sollte ich achten?
Benutzerdefinierte Thumbnail-Skripte auf Ubuntu 11.04 und höher
Benutzerdefinierte Miniaturansichten, die nicht in Repositories verfügbar sind, müssen manuell installiert werden. Dies sind die Schritte, die Sie ausführen müssen, um sie zu installieren:
Überprüfen Sie, ob für das Skript Abhängigkeiten aufgeführt sind. Wenn ja, installieren Sie sie zuerst.
Laden Sie das Skript herunter und machen Sie es mit chmod a+x filethumbnailer
ausführbar oder über Nautilus
Legen Sie einen Ordner in Ihrem Dateisystem für alle zukünftigen Thumbnailer fest und verschieben Sie das Skript dorthin, z. B.
mkdir $HOME/.scripts/thumbnailers && mv filethumbnailer $HOME/.scripts/thumbnailers
Als nächstes müssen Sie Ihr Skript bei Nautilus registrieren . Erstellen Sie dazu einen Thumbnailer-Eintrag in /usr/share/thumbnailers
. Der Eintrag sollte dem Namensschema foo.thumbnailer
folgen wobei foo
ist ein Ausdruck Ihrer Wahl (hier file
):
gksudo gedit /usr/share/thumbnailers/file.thumbnailer
Die Thumbnailer-Spezifikationen folgen diesem Schema:
[Thumbnailer Entry]
Exec=$HOME/.scripts/thumbnailers/file.thumbnailer %i %o %s
MimeType=application/file;
Die Exec
entry verweist auf Ihr Thumbnailer-Skript, während MimeType
Feld bezeichnet die zugehörigen MimeTypes. Mögliche Variablen sind:
%i Input file path
%u Input file URI
%o Output file path
%s Thumbnail size (vertical)
Die Spezifikationen und Variablen variieren mit jedem Skript. Einfach den Inhalt des jeweiligen Textfeldes kopieren und in die Datei einfügen und speichern.
Die Thumbnails sollten nach dem Neustart von Nautilus (nautilus -q
) betriebsbereit sein ).
Benutzerdefinierte Thumbnailing-Skripte unter Ubuntu 11.04 und darunter
Frühere Versionen von Ubuntu verlassen sich auf GConf für Thumbnailer-Zuordnungen. Weitere Informationen finden Sie hier.
Quellen :
https://live.gnome.org/ThumbnailerSpec
https://bugzilla.redhat.com/show_bug.cgi?id=636819#c29
https://bugs.launchpad.net/ubuntu/+source/gnome-exe-thumbnailer/+bug/752578
http://ubuntuforums.org/showthread.php?t=1881360
Miniaturansichten nach Dateityp
CHM-Dateien
Überblick
Beschreibung :Mit diesem Skript erhalten Sie Miniaturansichten Ihrer chm-Dateien
im Nautilus-Dateimanager. Das Skript verwendet das größte Bild von
der Homepage der chm-Datei, um das Miniaturbild zu generieren, normalerweise
ist dies ein Bild der Titelseite.
Ersteller :monraaf
(http://ubuntuforums.org/showthread.php?t=1159569)
Abhängigkeiten :sudo apt-get install python-beautifulsoup python-chm imagemagick
Thumbnailer-Eintrag
[Thumbnailer Entry]
Exec=$HOME/.scripts/thumbnailers/chmthumbnailer %i %o %s
MimeType=application/vnd.ms-htmlhelp;application/x-chm;
Skript
#!/usr/bin/env python
import sys, os
from chm import chm
from BeautifulSoup import BeautifulSoup
class ChmThumbNailer(object):
def __init__(self):
self.chm = chm.CHMFile()
def thumbnail(self, ifile, ofile, sz):
if self.chm.LoadCHM(ifile) == 0:
return 1
bestname = None
bestsize = 0
base = self.chm.home.rpartition('/')[0] + '/'
size, data = self.getfile(self.chm.home)
if size > 0:
if self.chm.home.endswith(('jpg','gif','bmp')):
self.write(ofile, sz, data)
else:
soup = BeautifulSoup(data)
imgs = soup.findAll('img')
for img in imgs:
name = base + img.get("src","")
size, data = self.getfile(name)
if size > bestsize:
bestsize = size
bestname = name
if bestname != None:
size, data = self.getfile(bestname)
if size > 0:
self.write(ofile, sz, data)
self.chm.CloseCHM()
def write(self, ofile, sz, data):
fd = os.popen('convert - -resize %sx%s "%s"' % (sz, sz, ofile), "w")
fd.write(data)
fd.close()
def getfile(self,name):
(ret, ui) = self.chm.ResolveObject(name)
if ret == 1:
return (0, '')
return self.chm.RetrieveObject(ui)
if len(sys.argv) > 3:
chm = ChmThumbNailer()
chm.thumbnail(sys.argv[1], sys.argv[2], sys.argv[3])
EPUB-Dateien
Verwandte:Das Uefi-Motherboard auf einem Dell-Laptop geändert, jetzt heißt es, kein Betriebssystem in Ubuntu erkannt?Überblick
Beschreibung :epub-thumbnailer ist ein einfaches Skript, das versucht, ein Cover in einer epub-Datei zu finden und ein Thumbnail dafür erstellt.
Ersteller :Mariano Simone
(https://github.com/marianosimone/epub-thumbnailer)
Abhängigkeiten :keine aufgeführt, hat auf Anhieb funktioniert
Thumbnailer-Eintrag
[Thumbnailer Entry]
Exec=$HOME/.scripts/thumbnailers/epubthumbnailer %i %o %s
MimeType=application/epub+zip;
Skript
#!/usr/bin/python
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Author: Mariano Simone ([email protected])
# Version: 1.0
# Name: epub-thumbnailer
# Description: An implementation of a cover thumbnailer for epub files
# Installation: see README
import zipfile
import sys
import Image
import os
import re
from xml.dom import minidom
from StringIO import StringIO
def get_cover_from_manifest(epub):
img_ext_regex = re.compile("^.*.(jpg|jpeg|png)$")
# open the main container
container = epub.open("META-INF/container.xml")
container_root = minidom.parseString(container.read())
# locate the rootfile
elem = container_root.getElementsByTagName("rootfile")[0]
rootfile_path = elem.getAttribute("full-path")
# open the rootfile
rootfile = epub.open(rootfile_path)
rootfile_root = minidom.parseString(rootfile.read())
# find the manifest element
manifest = rootfile_root.getElementsByTagName("manifest")[0]
for item in manifest.getElementsByTagName("item"):
item_id = item.getAttribute("id")
item_href = item.getAttribute("href")
if "cover" in item_id and img_ext_regex.match(item_href.lower()):
cover_path = os.path.join(os.path.dirname(rootfile_path),
item_href)
return cover_path
return None
def get_cover_by_filename(epub):
cover_regex = re.compile(".*cover.*.(jpg|jpeg|png)")
for fileinfo in epub.filelist:
if cover_regex.match(os.path.basename(fileinfo.filename).lower()):
return fileinfo.filename
return None
def extract_cover(cover_path):
if cover_path:
cover = epub.open(cover_path)
im = Image.open(StringIO(cover.read()))
im.thumbnail((size, size), Image.ANTIALIAS)
im.save(output_file, "PNG")
return True
return False
# Which file are we working with?
input_file = sys.argv[1]
# Where do does the file have to be saved?
output_file = sys.argv[2]
# Required size?
size = int(sys.argv[3])
# An epub is just a zip
epub = zipfile.ZipFile(input_file, "r")
extraction_strategies = [get_cover_from_manifest, get_cover_by_filename]
for strategy in extraction_strategies:
try:
cover_path = strategy(epub)
if extract_cover(cover_path):
exit(0)
except Exception as ex:
print "Error getting cover using %s: " % strategy.__name__, ex
exit(1)
EXE-Dateien
Überblick
Beschreibung :gnome-exe-thumbnailer ist ein Thumbnailer für Gnome, der Windows .exe-Dateien ein Symbol basierend auf ihrem eingebetteten Symbol und
ein generisches „Wine-Programm“-Symbol gibt. Wenn das Programm über normale Ausführungsberechtigungen
verfügt, wird das eingebettete Standardsymbol angezeigt. Dieser
Thumbnailer gibt auch ein Thumbnail-Icon für .jar, .py und ähnliche
ausführbare Programme aus.
Verfügbarkeit :offizielle Repositories
Installation
sudo apt-get install gnome-exe-thumbnailer
ODP/ODS/ODT und andere LibreOffice- und Open Office-Dateien
Verwandte:Ubuntu 18.04 Anmeldeschleife?Überblick
Beschreibung: ooo-thumbnailer ist ein Dokument-Thumbnailer für LibreOffice, OpenOffice.org und Microsoft Office, der von Nautilus verwendet werden kann, um
Thumbnails für Ihre Dokumente, Tabellenkalkulationen, Präsentationen und
Zeichnungen zu erstellen.
Verfügbarkeit :Entwickler-PPA (neueste Version, die mit LibreOffice in Ubuntu 12.04 und höher kompatibel ist)
Installation
sudo add-apt-repository ppa:flimm/ooo-thumbnailer && apt-get update && apt-get install ooo-thumbnailer