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.

Dell, Ubuntu und Skype.

Skype und Linux ist so eine Sache: Nachdem seit einigen Releases nun auch Video verfügbar ist, gibt es immer wieder Probleme mit dem Pulseaudio Sound Server. Zumindest auf meinem Dell Studio 1537 Notebook. Bald gibts nen Mac. Baaald….

Bis dahin: Mein Kampf mit Pulse ging heute in eine zweite Runde. Ubuntu 9.10 wollte nach einem Upgrade von 9.04 mein Mikrophon nicht mehr. Dass mein internes Mikrophon nicht geht mit Pulse, hab ich fast schon geschluckt. Aber mein externes hätte ich schon gerne. Diesmal habe ich mit (technischem) K.O. gewonnen. Technisch deshalb, weil immerhin mein externes Mikrophon nun wieder funktioniert, das interne aber immernoch nicht. Nun ja, sei es drum. Vielleicht hat einer von Euch ja die Lösung.

Hier nun die minimale Einstellung, die man treffen muss, um das Mikrophone zum Laufen zu bringen.

In einer Konsole den alsamixer starten.

alsamixer

Kurz noch “F4” gedrückt, um in die Capture Einstellungen zu gelangen. Was bei mir gefehlt hat, war die Einstellung “Capture” im Mic Mixer. Diese lässt sich mit Space toggeln. Selbiges muss für eine (oder beide) der Capture Items gemacht werden und schon klappts auch mit Skype.

alsamixer

Skype selbst muss sowohl für die Einstellungen des Microphone als auch Speakers auf PulseAudio gestellt sein. Schnell noch ein Testanruf zur netten Dame von Skype und, juhu, es geht.

screenshot-options

Creating PDFs under Wine.

This morning I needed to create a PDF file under wine on my Ubuntu machine. Nothing easier than that: You will need to install cups-pdf.

sudo apt-get install cups-pdf

This will automatically install a “virtual” printer which is selectable in the print dialog of all windows applications installed under wine. After printing, the PDF may be found in a folder PDF directly under your home directory.