Irssi Notification Plugin

Trotz Belegarbeitenstress musste ich mal wieder anderweitig was coden. Das Ergebnis ist unter Zeugs (in der Navigation) zu finden.

Und außerdem nehme ich mir ein bisschen Zeit mich mit indischer Mystik zu beschäftgien.

Vielen Dank an Rosecompclass.

.

Advertisements

Lautstärkeregelung bei meinem Thinkpad R60

EDIT am 20.06.09 um 18:22: Ein Forenmitglied (heißt: jiiieeehaaa) hat eine viel bessere Lösung gefunden. Zu finden ist sie in bereits erwähntem Thread. Manchmal glaube ich einfach, dass Ding hat Dämonen oder Visionen.

Seit Version 9.04 scheint Ubuntu nichts mehr von der Lautstärkeregelung via Sondertasten mitzubekommen, obwohl es funktioniert und sich die Lautstärke wie gewünscht ändert. Das fand ich nicht so toll und Lösungen, die mir zusagen würden, habe ich auch keine gefunden. Gefunden habe ich nur so zwielichtiges Zeug, das ich an meinem geliebten Notebook nicht testen wollte.
Deswegen habe ich mich mal hingesetzt und ein kleines Skript zusammengebastelt. Dadurch bekommt Ubuntu zwar immernoch nicht mit, dass sich was an der Lautstärke geändert hat, dafür bekommt man Veränderungen über das Notify-System angezeigt. Danach habe ich nur noch die Lautstärke unter Ubuntu mittels gnome-volume-control voll aufgedreht und alles läuft wie ich es brauche, denn die Lautstärke habe ich noch nie softwaremäßig geregelt.

Damit das Skript läuft, müssen die Pakete python und python-notify installiert sein.

Finden kann man das Skript im Ubuntuusers-Forum, wo vielleicht auch noch Verbesserungen veröffentlicht werden.

GEDULD ist eine Tugend

Das ist ein Aufruf an alle hibbeligen, es-nicht-abwarten-könnenden, ungeduldigen und versionsgeilen Nutzer unseres alleseits geliebten Betriebssystems (Ubuntu; für alle, die es noch nicht gecheckt haben)!

Dieses steht ja jetzt unmittelbar vor dem Final Release und ein nichtendenwollender Ansturm wird mit hoher Wahrscheinlichkeit einige Mirror in die Knie zwingen.

Ich rufe dazu auf, Geduld zu bewahren und erst im Laufe des Restes der Woche sein Image zu ziehen oder, und diese Möglichkeit finde ich am allerbesten, leecht und seedet per Torrent und tut damit etwas für die Gemeinschaft. Ich selbst werde hier mindestens eine Woche lang die Uni-Bandbreite mit Seeds aller Jaunty-Varianten belegen (meine Leitung zu Hause ist leider nicht so dolle).

Gleichzeitig möchte ich dazu aufrufen, nicht jede verdammte Minute in den offiziellen IRC-Channels danach zu fragen, ob die heiß ersehnte neue Ubuntu-Version jetzt endlich verfügbar ist. Das sind Support-Channel! Also, bitte, reißt euch zusammen.

Diesen Beitrag schrieb ich rein vorsorglich und aus Erfahrung durch frühere Releases.

Ich danke allen, die meinem Aufruf folgen. Ergänzungen und Kommentare sind erwünscht.

Code in wordpress.com-Blogs veröffentlichen

Da ich gelegentlich kleine Code-Schnipsel veröffentlichen will, habe ich nach einer Möglichkeit gesucht, wie man das möglichst schön, also mit Syntaxhighlighting (W), in einem wordpress.com-Blog wie diesem hier realisieren kann.

Ich habe inzwischen zwei Methoden gefunden.

Die erste ist relativ unspektakulär und nicht so schön, wie ich das gern hätte. Diese Methode wird von wordpress.com selbst implementiert und in der Dokumentation erläutert. Die Anwendung ist schnell, einfach und sieht etwa so aus:

</code>
<code>print "Hier muss der Code stehen"</code>
<code>

… ergibt …

1 print "Hier muss der Code stehen"

Das Ergebnis ist zwar zweckerfüllend, sieht aber, wie ich finde, nicht besonders gut aus und passt auch nicht zu meinem Theme.

Die zweite Idee kam mir auf sofort danach. Da ja nahezu jeder Pastebin (W) Syntaxhighlighting anbietet, dachte ich mir, warum nimmst du nicht einfach den HTML-Code, den diese erstellen, denn gegen ein paar HTML- und CSS-Tags hat wordpress.com nichts.
Gesagt, getan.
Lodg It, der Pastebin meines Vertrauens, war erste Anlaufstelle. Allerdings kann man den Code dort nicht einfach herausparsen, denn das CSS ist in einem Stylesheet, welches im head-Bereich definiert wurde. So kann man das in wordpress.com nicht verwenden. Das CSS muss im style-Attribut eines HTML-Tags definiert werden.
Ich wusste aber, dass das Team von Pocoo für das Highlighting extra eine Engine (Pygments) programmiert hatte. Ich wühlte also ein bisschen in dessen Dokumentation und wurde fündig.

Folgendermaßen muss man also vorgehen um gehighlighteten Code zu bekommen, den man in wordpress.com verwenden kann:

  1. Man muss sich Pygments installieren:
    $ easy_install Pygments

    Unter Ubuntu muss man diesen Befehl mit root-Rechten ausführen. easy_install ist im Paket python-setuptools enthalten.
    Anleitungen für Windows, Mac und andere Linux finden sich hier.

  2. Der folgende Befehl muss auf den Code angewandt werden:
    $ pygmentize -l <zu highlightende Syntax> -f html -O noclasses <Datei oder stdin mit Code>

    Den Bezeichner für die zu highlightende Syntax kann man über folgenden Befehl herausfinden:

    $ pygmentize -L lexers

Den Befehl kann man natürlich noch ausbauen. Ich werde das an einem Beispiel demonstrieren. Dazu nehme ich ein in Python geschriebenes Programsegment:

def knk():
print "Kurz und knackig!"

Die zu highlightende Syntax ist laut der Liste also python. Jetzt poliere ich noch die Ausgabe ein wenig auf. Das Argument -O erwartet eine durch Kommata getrennte Liste an Parametern. Diese kann man an entsprechender Stelle in der Dokumentation in Erfahrung bringen. Ich gehe hier nur kurz auf einige ein.
Der wichtigste Parameter für meine Zwecke ist noclasses. Er lässt die Stylesheet-Attribute in das style-Attribut der jeweiligen HTML-Tags schreiben. Das ist notwendig, da, wie anfangs schon gesagt, wordpress.com keine Einbindung eigener Stylesheets zulässt.
Ein weiterer Parameter ist style (Nutzung: style=<Style>). Damit legt man ein gewünschtes Syntaxhighlighting-Style fest. Eine komplette Liste zur Verfügung stehender Styles erhält man mit:

$ pygmentize -L styles

Zuletzt will ich den Parameter prestyles (Nutzung: prestyles=<Stylesheet-Attribute>) erwähnen. Diesem Parameter kann man Stylesheet-Attribute zur Gestaltung des pre-Tags zuweisen. Dieser pre-Tag umgibt den ganzen zu highlightenden Code. Somit kann man beispielsweise die Schriftgröße ändern oder einen Rahmen um den Code setzen.
In Anwendung sieht das Ganze dann wie folgt aus. Mit diesem Befehl:

$ echo -e 'def knk():\n    print "Kurz und knackig!"' | pygmentize -l python -f html -O "noclasses,style=native,prestyles=border: 1px solid grey;font-size: 12px;padding:5px;"

… erhält man schön gehighlighteten Code:

def knk():
    print "Kurz und knackig!"

Leitet man den obigen Befehl dann noch in die Zwischenablage um, steht dem bequemen Einfügen in seinen Blogeintrag nichts mehr im Wege. (folgender Befehl ist nur für Ubuntu getestet)

$ <Befehl> | xclip -selection clipboard # und schwups in der Zwischenablage

Zum Abschluss möchte ich sagen, dass ich beide Methoden ausdrücklich nur für Codesegmente empfehle. Für lange Quelltexte sollten nach wie vor Verlinkungen zu Pastebins verwendet werden.

Umzug u.a.

Nach langer Zeit folgt hier nun mal wieder ein Eintrag (ich habe ja gleich gesagt, das ich sowas nicht durchhalte … naja). Jedenfalls habe ich in letzter Zeit irgendwie manchmal Lust verspürt etwas informatischen Krümelkack loszuwerden. Und damit das nicht zu anstrengend wird, bin ich eben mit meiner kompletten Homepage hierhin umgezogen. Das schränkt einen zwar ein – ganz besonders als Informatiker -, ist aber auch ungemein viel einfacher.
Jedenfalls kommt hier bestimmt in nächster Zeit öfter was Neues rein. Das wollte ich nur ankündigen. 😛

Außerdem fängt bald das vierte Semester (der Angewandten Informatik) an und es verspricht spannend zu werden. Die Spezialisierung in Richtung “Mobile Applikationen” ist so gut wie sicher. Mal sehen wie es wird.