Das schöne am JavaScripting ist ja, dass man eigentlich ganz ohne große IDE auskommt. Eigentlich reicht ein Notepad und ein Browser (zum testen). Damit kann man schon so einiges machen.
Wenn man für SharePoint JavaScripted, dann liegen die JavaScript-Dateien typischerweise in einer Dokumentbibliothek im SharePoint. Nun ist das mit dem Editieren auf einmal doch nicht mehr so ganz einfach. Denn wie kann man am besten JavaScript Dateien in einer Dokumentbibliothek bearbeiten?
Folgende Möglichkeiten stehen dort zur Verfügung:
- Bearbeiten des JavaScript mit dem SharePoint-Designer. Der SharePoint-Designer hat den Vorteil, dass man halt direkt in der Dokumentbibliothek arbeiten kann. So kann man das JavaScript bearbeiten und direkt speichern und ausprobieren.
- Öffnen der Dokumentbibliothek im Windows-Explorer. Entweder direkt oder durch mappen des UNC-Pfades auf einen Laufwerksbuchstaben. Leider ist der WebDAV-Zugriff nicht immer ganz schnell, so dass z.B. Notepad++ schon mal pausen einlegt, wenn man zwischen dem Browser und dem Editor wechselt (weil Notepad++ regelmäßig prüft ob sich die Datei im Dateisystem geändert hat).
- Bearbeiten auf dem lokalen Rechner und anschließendes Hochladen in die Dokumentbibliothek.
Die letzte Möglich ist die naiveste – und auch die nervigste. Denn nach dem Bearbeiten und Speichern muss man immer wieder in die Dokumentbibliothek gehen und die Datei explizit hochladen. Das ist einfach unnötig. Wenn man das doch automatisieren könnte …
Zumindest das manuelle Hochladen von Dateien kann man sich ganz einfach sparen. Mit dem guten alten curl
kann man von der Kommandozeile aus HTTP-Zugriffe machen. Das schöne ist – damit kann man z.B. auch HTTP-POSTs durchführen.
curl.exe -T c:\temp\foo.txt --url "http://sp2010.acme.local/Documents/" -u ":" --ntlm
Kann man eine Datei unter den aktuelle Windows-Credentials nach in die Dokumentbibliothek “Documents” SharePoint laden.
Wenn man das nun noch mit dem NppExec-Plugin von Notepad++ kombiniert, dann kann man sich ein folgendes Kommando anlegen:
NPP_SAVE c:\tools\curl.exe -T "$(FULL_CURRENT_PATH)" --url "http://sp2010.acme.local/Documents/" -u ":" --ntlm
In Notepad++ kann man dann mit F6 den Execute-Dialog aufrufen und das zuletzt verwendete Kommando wird angezeigt und kann direkt ausgeführt werden. Somit wird die aktuelle Datei zuerst gespeichert und dann nach SharePoint geladen.