menuLinkAll menuLinkImpressum

SFTP für Sublime Text 2

Setup für kleine Webprojekte
28.10.2013 um 21:46 Uhr
blogpostBanner_16
Des Programmierers wichtigstes und liebstes Gadget ist der Texteditor. Die Vielzahl an Software zur Texteingabe, die im Internet oftmals kostenfrei bereitsteht, ist nahezu unüberschaubar. Viele davon sind beeindruckend gut und denen, die das Betriebssystem heutzutage mitliefert, unbedingt vorzuziehen. Wer diese Dinger regelmäßig braucht, testet nach meiner Erfahrung oft (manchmal auch hobbymäßig) mit diversen Tools und Setups herum – von uns Programmier-Äffchen kann ich das allemal mit Sicherheit sagen. Letztlich hängt es an kleinen Details oder Features, die ausschlaggebend für die Präferenzierung einer bestimmten Anwendung sind – jeder Programmierer hat da so seine eigenen Vorlieben. Hier also ein einfaches Setup, das ich gerne verwende, unter anderem für dieses Blog.
Ich entwickle mit Sublime Text 2 unter Windows. Die nachfolgende Anleitung bezieht sich also zuvorderst auf das Einrichten von Sublime SFTP unter dem Microsoft-OS. Ich denke aber, dass sich diese Vorgehensweise auch eins-zu-eins unter Linux oder Mac OS anwenden lässt.

Das wichtigste Feature bei der Webentwicklung ist die Anbindung an einen Test-Webserver. Es gibt haufenweise Lösungen, die genau dies tun. Am meisten sagt mir eine direkte Integration in Sublime Text mit Hilfe des Sublime SFTP Paketes zu. Das ist ein kostenpflichtiges Plugin, das freilich auch ohne den Erwerb einer Lizenz uneingeschränkt genutzt werden kann – es erscheint lediglich ab und zu ein kleines Fenster beim Speichervorgang, das den Kauf der Anwendung nahelegt. Das gilt im übrigen gleichermaßen für den Editor selbst.
Sublime SFTP ermöglicht die Synchronisation von Dateien mit einen Webserver per FTP respektive SFTP, und zwar direkt aus Sublime Text heraus. Das kann natürlich der Webserver eines entfernten Hosters, der einer virtuellen Maschine oder der lokal installierte Test-Apache (e.g.) sein.
Und so installiert man Sublime SFTP:

Es muss Package Control vorhanden sein. Das ist ein Pakete-Verwaltungs-Plugin, mit dem diverse Erweiterungen für Sublime Text 2 gemanagt werden. Um Package Control zu installieren, gibt man einfach ein paar Zeilen Python in die Konsole des Editors ein. Die Konsole lässt sich auf einer deutschen Tastatur standardmäßig mit Strg + ö oder über das Menü aktivieren. sublime text menu: view - show console
Konsole in Sublime Text 2 anzeigen
Nachstehender Python Code muss in die Konsolenzeile eingefügt (copy-paste) und ausgeführt werden (enter).
import urllib2,os; pf='Package Control.sublime-package'; ipp = sublime.installed_packages_path(); os.makedirs( ipp ) if not os.path.exists(ipp) else None; urllib2.install_opener( urllib2.build_opener( urllib2.ProxyHandler( ))); open( os.path.join( ipp, pf), 'wb' ).write( urllib2.urlopen( 'http://sublime.wbond.net/' +pf.replace( ' ','%20' )).read()); print( 'Please restart Sublime Text to finish installation')
Die notwendigen Bibliotheken werden daraufhin heruntergeladen und Package Control wird installiert. Danach ist ein Neustart von Sublime Text notwendig. Anschließend kann Package Control über den Preferences-Menüpunkt ausgewählt werden. sublime text menu: preferences - package control
Package Control auswählen
Als nächstes gilt es Sublime SFTP im Package-Control-Fenster zu finden und auszuwählen. Dazu selektiert man Package Control: Install Package und navigiert zu dem entsprechenden Paket vorzugsweise über die Suche.
sublime text, package control: install package, input sftp
Sublime SFTP im Package Control Fenster
Damit ist das Plugin erfolgreich hinzugefügt und kann für einen FTP-Server konfiguriert werden. sublime text, file, sftp/ftp, setup server
Setup Server... im File-Menü
In dem sich öffnenden JSON-Skript sind einige Parameter für die FTP-Verbindung zu setzen. Die wichtigsten sind natürlich die Zugangsdaten. Daneben kann allerhand konfigurieren werden – viele der Punkte erklären sich von selbst. Eine Beispielkonfiguration ist angefügt. Die in [eckigen Klammern] stehenden Angaben (Servername, FTP-Benutzer, Passwort und das Remote-Verzeichnis des Servers) müssen auf jeden Fall angepasst werden. Die Zeile mit "password" kann auch auskommentiert bleiben, dann wird die Passwortphrase bei jedem Verbindungsaufbau erfragt. Eine ausführliche Erläuterung aller Parameter findet sich auf der Seite zu den Settings von Sublime SFTP.
{
// The tab key will cycle through the settings when first created
// Visit http://wbond.net/sublime_packages/sftp/settings for help

// sftp, ftp or ftps

"type": "sftp",

"save_before_upload": true,
"upload_on_save": true,
"sync_down_on_open": false,
"sync_skip_deletes": false,
"sync_same_age": true,
"confirm_downloads": false,
"confirm_sync": true,
"confirm_overwrite_newer": false,

"host": "[colorsofgrey.de]",
"user": "[ftp-user]",
"password": "[password]",
//"port": "22",

"remote_path": "[/example/path/]",
"ignore_regexes": [
"\\.sublime-(project|workspace)", "sftp-config(-alt\\d?)?\\.json",
"sftp-settings\\.json", "/venv/", "\\.svn", "\\.hg", "\\.git",
"\\.bzr", "_darcs", "CVS", "\\.DS_Store", "Thumbs\\.db", "desktop\\.ini"
],
//"file_permissions": "664",
//"dir_permissions": "775",


"extra_list_connections": 4,

"connect_timeout": 60,
//"keepalive": 120,
//"ftp_passive_mode": true,
//"ssh_key_file": "~/.ssh/id_rsa",
//"sftp_flags": ["-F", "/path/to/ssh_config"],


"preserve_modification_times": true,
//"remote_time_offset_in_hours": 0,
//"remote_encoding": "utf-8",
//"remote_locale": "C",

}
Wenn alles fertig konfiguriert ist speichet man das Skript ganz normal über den Menüpunkt Save As... (unter Windows 7 standardmäßig: C:\Users\[username]\AppData\Roaming\Sublime Text 2\Packages\User\sftp_servers) ab. Der vergebene Name dient der Identifikation der FTP-Verbindung, denn natürlich können mehrere seperate Serverkonfigurationen erstellt werden.
Über das Menü kann nun eine SFTP- bzw. FTP-Verbindung hergestellt werden. sublime text, file, sftp/ftp, browse server
Browse Server... im File-Menü
Im erscheinenden Fenster ist der FTP-Server zu selektieren, entsprechend der zuvor erfolgten Namensgebung.
sublime text, browse sftp
Browse Server Fenster
Bei erfolgreicher Verbindungsaufnahme (eventuell muss das Passwort angegeben werden) sollte sich ein ähnliches Fenster öffnen, das die Ordner und Dateien des Remote-Ordners auflistet, in dem sich navigieren lässt und die zu editierenden Dateien gewählt werden können.
sublime text, browse files
Navigation im Remote-Ordner (Beispiel)
Weitere Einstellungsmöglichkeiten finden sich auf der Seite des Tools. Insbesondere die Punkte zum Workflow und zur zweckmäßigen Verwendung der Sidebar sind lesenswert. Vielleicht schreibe ich auch dazu eine Anleitung – schauen wir mal.
BTC
15hc96GohYVq7vFcMHgE7BX4X6BxbPufe5