[[Vorlage(Getestet, )]] {{{#!vorlage Wissen [:Pakete installieren: Installation von Programmen] [:Programme_starten: Starten von Programmen] [:Terminal: Ein Terminal öffnen] [:sudo: Root-Rechte] }}} [[Inhaltsverzeichnis()]] [[Bild(spacefm_cube_blue.png, 48, align=left)]] [http://ignorantguru.github.io/spacefm/ SpaceFM] {en} ist ein leichter, vielseitig anpassbarer und erweiterungsfähiger [:Dateimanager:]. Er ist in [wikipedia:C_(Programmiersprache): C] geschrieben und unterstützt [:GTK: GTK+], [:udev:] sowie [:inotify:]. Er ist intuitiv zu bedienen und kann für komplexe Aufgaben genutzt werden, da Funktionen der [:Bash:] integriert werden können. Neben der Darstellung von [:Firefox/TabbedBrowsing: Tabs] stellt SpaceFM bis zu vier sogenannte Panels zur Verfügung. So werden Felder genannt, die jeweils wie ein eigenes Fenster des Dateimanagers nutzbar sind (inklusive Seiten- und Werkzeugleiste). Sowohl die Darstellung der einzelnen Panels als auch die Einstellungen bei unterschiedlichen Kombinationen können wieder hergestellt werden. Mit Hilfe eines Panelmenüs kann schnell zwischen verschiedenen Darstellungsweisen gewechselt werden (einspaltig – zweispaltig; horizontal – vertikal; Symbolansicht – Detailansicht usw.). Die meisten Elemente von Menüs oder Werkzeugleisten können konfiguriert oder erweitert werden (Designmodus). SpaceFM ist ein [wikipedia:Abspaltung (Softwareentwicklung):Fork] von [wikipedia:PCMan_File_Manager:PCManFM] 0.5.2, nachdem dieser von Grund auf neu entwickelt worden ist (veröffentlicht ab Versionsnummer 0.9.x). Die beiden Projekte werden unabhängig voneinander weiterentwickelt. Während PCManFM auf Effizienz und Geschwindigkeit setzt, bietet SpaceFM ein Maximum an Flexibilität und Erweiterungsfähigkeit. {{{#!vorlage Hinweis Seit Veröffentlichung von Version 1.0.6 im März 2018 wurde keine Veränderung am Code mehr vorgenommen. }}} = Installation = Das Programm ist in den offiziellen Paketquellen enthalten. Folgendes Paket muss installiert [1] werden: {{{#!vorlage Paketinstallation spacefm, universe }}} = Bedienung = Bei Ubuntu-Varianten mit einem Anwendungsmenü kann man das Programm über den Eintrag ''"System -> SpaceFM"'' bzw. ''"Zubehör -> SpaceFM Dateisuche"'' starten [2]. Anderenfalls benutzt man den Befehl `spacefm` bzw. `spacefm --find-files`. Standardoperationen mit der Maus („Drag & Drop“) und gewohnte Tastaturkürzel (z.B. [[Vorlage(Tasten, ctrl+c)]] = kopieren) werden wie in anderen grafischen Dateimanagern unterstützt. Auch Drag & Drop in die Seitenleiste hinein funktioniert. Drag & Drop bei gedrückter [[Vorlage(Tasten, ctrl)]]-Taste kopiert eine Datei. Ein Ziehen mit der Maus bei gedrückten [[Vorlage(Tasten, ctrl+shift)]]-Tasten legt im Zielverzeichnis einen Link an. Im ''"Umbenennen"''-Dialog (Rechtsklick oder [[Vorlage(Tasten, F2)]]) kann (gleichzeitig) auch kopiert, verschoben oder verlinkt werden. Wenn im Verzeichnis '''~/Templates/''' oder '''~/.templates/''' Vorlagedateien hinterlegt sind, kann auf ''"Rechtsklick -> Neu -> Datei -> Vorlage"'' eine Vorlage ausgewählt werden, auf deren Grundlage eine neue Datei erstellt wird. == Einstellungen für Root anpassen == Um den vollen Funktionsumfang nutzen zu können, müssen unter ''"Ansicht -> Einstellungen -> Erweitert"'' die Einstellungen für den Terminalemulator, Kommandozeileneditor, grafischen Editor und die passenden Befehle für die Arbeit im Terminal ('''/usr/bin/sudo''') bzw. auf der grafischen Oberfläche eingetragen sein ('''/usr/bin/gksu'''). Erst danach können Root-Fenster und Root-Terminal aufgerufen werden. Dies ist auch Voraussetzung für die systemweite [#Installation-von-Plugins Installation von Plugins]. {{{#!vorlage Warnung '''Gksu''' steht seit Ubuntu 18.04 nicht mehr zur Verfügung und SpaceFM stammt aus einer Zeit davor. Damit auch grafische Aufgaben mit SpaceFM als root funktionieren würden, könnte man stattdessen '''/usr/bin/sudo''' eintragen. Die Abfrage des Passwortes würde dann im Terminal erfolgen. Man sollte jedoch aus Sicherheitsgründen keine grafischen Anwendungen als root aufrufen. Warum ist im nachfolgend verlinkten Artikel beschrieben. Es wird dringend empfohlen die benannte Änderung zu unterlassen, das voreingestellte gksu zu belassen und für administrative Aufgaben sich ein zeitgemässes Konzept aus dem Artikel [:mit Root-Rechten arbeiten:] aus zu suchen. }}} == Darstellung ändern == Über das Menü ''"Ansicht"'', mittels der (in der Menüzeile einblendbaren) Panelleiste oder über die Tastaturkürzel [[Vorlage(Tasten, strg+1)]] bis [[Vorlage(Tasten, strg+4)]] lassen sich vier verschiedene Ansichten aufrufen. Änderungen, die innerhalb eines Panels oder bei einer bestimmten Kombination von Panels vorgenommen werden, werden für den nächsten Aufruf gespeichert. Innerhalb jedes Panels können neue Tabs geöffnet werden. Die folgenden Ansichten stellen Beispiele dar: {{{#!vorlage Tabelle <:>[[Bild(spacefm_1panel_seitenleiste.png, x150)]] <:>[[Bild(spacefm_2panel_medien_bookm.png, x150)]] <:>[[Bild(spacefm_2panel_horizontal.png, x150)]] +++ <:>Panel, Seitenleiste (Pane): Tree <:>Seitenleiste: Devices, Bookmarks, Tree <:>Zwei Panels übereinander +++ <:>[[Bild(spacefm_4panel_menu_coloms.png, x150)]] <:>[[Bild(spacefm_1panel_seitenleiste_lubu.png, x150)]] <:>[[Bild(spacefm_2panel_detailansicht_lubu.png, x150)]] +++ <:>Vier Panels <:>Ein Panel, Theme Lubuntu <:>Zwei Panels, Lubuntu }}} [http://ignorantguru.github.io/spacefm/screenshots.html Weitere Ansichten] {en} finden sich auf der Seite des Entwicklers. === Menüs und Leisten bearbeiten === Über einen sogenannten Designmodus können die meisten Elemente in ihrem Aussehen und in ihrer Funktion angepasst werden. Der Designmodus ermöglicht das Ändern von Name, Tastaturkürzel und Symbol einzelner Menüpunkte, das Anzeigen von Hilfetexten für einen Menüpunkt und das Hinzufügen von selbst erstellten Befehlen zu den meisten Menüs. [[Vorlage(Bildunterschrift, spacefm_design_mode.png, 250, "Menüs im Designmodus", right)]] Der Designmodus öffnet sich automatisch bei Rechtsklick auf einen beliebigen Menüpunkt. Falls ein Untermenü ausgeklappt ist, muss es vorher durch Linksklick geschlossen werden. Neu eingefügte Menüpunkte werden oberhalb des ausgewählten vorhandenen Menüpunktes eingefügt. Im Lesezeichenmenü funktioniert der Designmodus nicht. Zum Bearbeiten einer Werkzeugleiste ist das Werkzeugsymbol ganz links in der Leiste anzuklicken, danach können die einzelnen Einträge wieder per Rechtsklick [[Vorlage(Tasten, rmt)]] bearbeitet werden. Die Bezeichnung "Werkzeugleiste links/rechts" beziehen sich auf die linke und rechte Seite derselben (Haupt-)Symbolleiste. == Eingaben in die Pfadleiste == Die Navigation kann per Maus über Klicken auf Ordnersymbole und Schaltflächen erfolgen, aber auch über eine Tastatureingabe in der Pfadleiste. Dabei kann die Eingabe durch [[Vorlage(Tasten, Tab)]] wie im Terminal vervollständigt werden. Solange die eingegebene Buchstabenfolge verschieden ergänzt werden kann, erscheint unter der Pfadleiste ein Auswahlmenü. Die Pfadleiste kann aber auch genutzt werden, um Terminalbefehle auszuführen. Für unterschiedliche Optionen werden verschiedene Zeichen vorangestellt: {{{#!vorlage Tabelle Präfix +++ $ Resultat des Befehls wird ausgegeben +++ Es folgt Zeile 2 & Befehl wird ausgeführt (ohne weitere Ausgabe) +++ Es folgt Zeile 3 + Befehl in Terminalfenster ausführen +++ Es folgt Zeile 4 ! Als root ausführen }}} Die Option `!` (= `root`) ist mit den anderen kombinierbar. So wird z.B. durch folgenden Befehl ein Terminal gestartet, um ein markiertes Laufwerk (als `root`) auszuhängen. {{{ +! umount %v }}} Auch Netzwerkeinbindungen können über die Eingabe in die Pfadleiste aufgerufen werden, siehe dazu den Abschnitt [#Netzwerkeinbindung-udevil udevil]. [[Vorlage(Bildunterschrift, spacefm_dateisuche.png , 250, "Dateisuche", right)]] == Dateisuche == SpaceFM bringt eine grafische Oberfläche zur Dateisuche mit, die sich über das Menü ''"Datei -> Dateisuche"'' aufrufen lässt. Die Suche startet im aktuellen Verzeichnis und kann rekursiv oder auf einen Ordner beschränkt durchgeführt werden. Daneben kann nach Dateiinhalten gesucht oder nach Dateigröße oder -zeitstempel gefiltert werden. == Netzwerkeinbindung (udevil) == Um Netzwerke einzubinden, kann das für SpaceFM entwickelte Programm [http://ignorantguru.github.io/udevil/ udevil] {en} installiert werden. {{{#!vorlage Paketinstallation udevil, universe }}} '''udevil''' ist ein Kommandozeilenprogramm, das Geräte ohne Passwort ein- und aushängen kann und die Geräteinformationen anzeigt. Außerdem können damit ISO-Dateien und Netzwerkverbindungen eingehängt werden (`nfs://`, `smb://`, `ftp://`, `ssh://`, `dav://` und `tmpfs/ramfs`-Dateisysteme). In der Voreinstellung dürfen nur lokale Ordner und Dateien sowie ISOs eingehängt werden. Um das Einhängen von Netzwerken zu erlauben, muss in der Datei '''/etc/udevil/udevil.conf''' die Freigabe eingetragen werden: {{{ allowed_types = $KNOWN_FILESYSTEMS, file, cifs, nfs, curlftpfs, sshfs, davfs }}} Je nach Nutzung müssen '''curlftpfs''' oder '''ftpfs''' (für `ftp://`), '''cifs-utils''' oder '''smbfs''' (für `smb://`), '''sshfs''' (für `ssh://`), und/oder '''davfs2''' (für `http://`) nachinstalliert werden. Die Befehlssyntax entspricht mount oder udisks mit einem vorangestellten `udevil`. Beispiele: {{{ udevil mount ssh://user@sys.domain udevil mount ftp://user:pass@sys.domain/share }}} Nähere Angaben und weitere Beispiele sind der [http://ignorantguru.github.io/udevil/udevil--help.html Hilfe von udevil] {en} zu entnehmen. == Plugins == === Installation von Plugins === Auf der Projektseite werden [github:IgnorantGuru/spacefm/wiki/plugins:Plugins für unterschiedliche Funktionen] {en} bereitgestellt. Diese können entweder (mit Root-Rechten) systemweit installiert werden (''"Plugins -> Installieren"'') oder sie werden (ohne Root-Rechte) nur importiert und eingefügt (''"Plugins -> Importieren"''). Plugins können lokal (''"Datei"'') oder direkt aus dem Netz installiert werden (''"URL"''). Beim Importieren wird das Plugin zunächst in einen Zwischenspeicher geladen und kann dann über den Designmodus ([[Vorlage(Tasten, rmt)]] Rechtsklick auf das Menü/Zahnradsymbol bei Leisten) an der gewünschten Stelle eingefügt werden. Selbst angelegte Menüpunkte oder in [:Perl:] geschriebene Skripte können im Designmodus exportiert und als Plugin an anderer Stelle im Menü oder in anderen Installationen als Plugins installiert/genutzt werden. Über die Syntax für Abfrage-Dialoge gibt das [http://ignorantguru.github.io/spacefm/spacefm-manual-next-en.html#dialog Benutzerhandbuch] {en} Auskunft. === Nützliche Plugins (Papierkorb/Netzwerkeinbindung)=== Andere grafische Dateimanager verfügen über eine Papierkorbfunktion nach den [http://standards.freedesktop.org/trash-spec/trashspec-latest.html Spezifikationen von freedesktop.org] {en}. Ein entsprechendes Plugin ist das [https://github.com/jpfleury/corbeille-spacefm Corbeille-SpaceFM trash plugin] {en}. Zum Mounten von Laufwerken bietet das Plugin [github:IgnorantGuru/spacefm/wiki/plugins Keith's Mount SMB/FTP/SSHFS/WebDAV Share: GUI] {en} ein grafisches Frontend für die Funktionen von [#Geraete-mounten-Netzwerkeinbindung-udevil udevil]. == Desktopverwaltung durch SpaceFM (Beispiel LXDE) == In einer {l} [:LXDE:]-Sitzung kann SpaceFM die Desktopverwaltung von PCManFM auf folgende Weise übernehmen: {{{#!vorlage Befehl cp /etc/xdg/lxsession/Lubuntu/autostart ~/.config/lxsession/Lubuntu/autostart }}} In der Kopie im Homeverzeichnis müssen nun folgende Zeilen auskommentiert/hinzugefügt werden: {{{ ... #@pcmanfm --desktop --profile lubuntu ## pcmanfm deaktivieren @spacefm --desktop ## spacefm in den Autostart aufnehmen ... }}} Danach ab- und wieder anmelden. =Links= * [http://ignorantguru.github.io/spacefm/ Projektseite] {en} * [http://ignorantguru.github.io/spacefm/spacefm-manual-next-en.html Users Manual] {en} - Benutzerhandbuch * [http://ignorantguru.github.io/udevil/ udevil] {en} - Dokumentation von udevil * [github:IgnorantGuru/spacefm/wiki:Wiki] {en} - weitere Dokumentation * [github:IgnorantGuru/spacefm:Quellcode] {en} * [:Dateimanager:] {Übersicht} Übersichtsartikel #tag: LXDE, Xfce, Dateimanager