Plug-ins for gedit: count results or compare files.

Well, after I could count words in a gedit document based on a selection I made, I decided to add another missing feature:

I needed a diff tool to compare two files that are currently opened in gedit. Unfortunately, gedit doesn’t come along with these kind of features. So, another plug-in was needed.

Meldlauncher

What it does? It simply starts the open source diff & merge tool Meld using two documents opened in gedit. That’s why I called it meldlauncher. Therefore, if you want to use meldlauncher, you will need to have Meld installed. On Ubuntu do something like this:

sudo apt-get install meld

If there are only two documents opened in gedit, meldlauncher will launch Meld and pass those two files to it. If there are more than two documents opened, meldlauncher will open a selection dialog from which you can easily choose the document to compare the current document with.

I moved both the counter plug-in and the meldlauncher plug-in to Github. Feel free to grab it from there:

http://github.com/mmuell23/mmuell23

Count search results in gedit.

Update September 21:
After all, I found some time to reimplement the algorithm for highlighting XML. It is now triggered by a new button in the toolbar. As it now does not run automatically, this will be another improvement to overall speed. Feel free to download the new version at the provided download link below or at github!

Update May 5:
Count results are now being displayed in the Status Bar instead of an alert window. Also, there were a couple of bug fixes. Feel free to download the new version at the provided download link below or at github!

Lately I was looking for a small but missing feature in gedit: I needed to be able to count all occurrances of a selected word. This is a standard feature in many other editors such as Notepad++ in the Windows world, for example. However, I didn’t come across a solution on the net, so I decided to write a little plug-in myself.

What it does: After marking a word the plug-in counts all occurrances of the selection in the current document. It adds a new button to the toolbar and an entry to the menu right in the “Search” section. On top of that you may trigger counting the selection by hitting “CTRL+SHIFT+F”. A small pop-up window will appear and show the results of the search. The results will be displayed in the status bar of the window.

How to use it: Simply mark a word, and have a look at the statusbar: The number of search results will be displayed there.

If you find it useful, feel free to download the plug-in here:

Donwload at github:
http://github.com/mmuell23/mmuell23

git clone http://github.com/mmuell23/mmuell23.git
cp -r mmuell23/gedittools/* ~/.gnome2/gedit/plugins

Ubuntu und Abhängigkeiten

Heute Morgen installierte ich das neue Ubuntu 10.04 Beta in einer Virtuellen Maschine.

Funktionierte wunderbar, bis auf die Tatsache, dass sich die Maschine bei der Installation der MySQL Gui Tools wohl ein wenig verschluckte. Jedenfalls installierte sich das Paket mit seinen “Kindern” mysql-query-browser und mysql-admin nicht korrekt.

Deinstallieren und neu installieren ließ es sich auch nicht. Es brach mit folgendem Fehler ab:

Entferne mysql-admin ...
dpkg (Unterprozess): kann installiertes post-removal-Skript nicht ausführen: Exec format error
dkpg: Fehler beim Bearbeiten von mysql-admin (--remove):
Unterprozess installiertes post-removal-Skript gab den Fehlerwert 2 zurück

Was tun? Viele Forenbeiträge liefen ins Leere und ich fand keinen Weg, die korrupten Pakte manuell zu löschen.

Die Lösung für dieses Problem war aber sehr leicht:

Es existieren im Verzeichnis /var/lib/dpkg/info Dateien mit Informationen zu allen installierten Pakten. Hier habe ich einfach alle Dateien rausgesucht, die für meine gesuchten MySQL Pakete relevant waren und sie aus dem Verzeichnis verschoben. Mit

apt-get remove mysql-admin mysql-query-browser

verschwanden dann auch alle Fehlermeldungen und Abhängigkeiten und ich konnte über

apt-get install mysql-query-browser mysql-admin

die Pakte sauber neu installieren.

Evolution und Exchange

Da nun endlich meine Entwicklermaschine eine Linux-Maschine wird (einen Mac gabs leider nicht…), musste ich Evolution dazu bringen, mit dem Firmeneigenen Exchange Server zu kommunizieren. Nach ein wenig Frickelei und Überraschungsmomenten, klappt es nun.

Und so gehts:

1. Ein Exchange Konto erstellen in Evolution

Zu allererst muss ein Exchange Account in Evolution (in meinem Fall in Version 2.2.8) erstellt werden. Für diesen sind folgende Einstellungen wichtig:

Domain und Username müssen, genau wie Server, durch die jeweiligen persönlichen Daten ersetzt werden und schon klappt der Zugriff auf die Emails. Wenn man den Server- oder Username nicht kennt, wird man in den Kontoeinstellungen von Outlook schnell fündig und kann die Einstellungen übernehmen.

2. Zugriff auf das Adressbuch im Active Directory

Für den Zugriff auf das globale Adressbuch im Active Directory muss eine weitere Einstellung getätigt werden. Dazu trägt man den Server, an welchem man sich angemeldet hat, im folgenden Screen als Setting ein. Herausfinden kann man diesen unter Windows in einer Eingabeaufforderung mit

echo %LOGONSERVER%

3. Zugriff auf Kalender anderer Nutzer

Um auf freigegebene Kalender anderer Nutzer zugreifen zu können, wechselt man in die Kalenderansicht und wählt Datei -> Kalender eines anderen Nutzers abonnieren

Es öffnet sich ein Screen, in welchem man aus dem globalen Adressbuch einen User suchen kann. Als default Ordnername steht “Calendar” in der Auswahlbox des zu abonnierenden Ordners. Das hat mir etwas Kopfzerbrechen bereitet, weil es schlicht nicht funktionieren wollte: Immer brach der Vorgang mit einer “Zugriff ist nicht erlaubt” Meldung ab. Je nach lokaler Installation des Exchange Servers scheint dieses Setting also nicht immer zu stimmen. In meinem Fall hat das Ersetzen durch das deutsche Wort “Kalender” den Effekt gebracht, dass ich auf freigegebene Kalender zugreifen konnte. Das englische “Calendar” blieb leider erfolglos.

4. Zugriff auf öffentliche Ordner

Einfacher verhält es sich mit den öffentlichen Ordnern. Diese können sehr einfach in der Email-Ansicht unter Ordner -> Abonnements verwaltet werden und erscheinen dann in der Liste der verfügbaren Email-Ordner. Hier können auch öffentliche Kalender abonniert werden, welche dann automatisch im Kalender erscheinen.

Nach diesen vier einfachen Schritten steht mir Evolution nun als nahezu vollwertiger Outlookersatz zur Verfügung.