X11 Starthilfe für OSX
Geschrieben von Harald Lapp in Mac OS X um 22:36
Im Forum des Programmes xnview, meinem bevorzugten Bildbetracher, bin ich heute auf ein Tool gestossen, mit dem es endlich möglich ist Dokumente per Doppelklick in einer X11 Anwendung zu öffen, was ja von Haus aus unter Mac OS X leider nicht geht.
In XLaunch-O-Matic kann man beliebigen Dateitypen beliebige X11 Anwendungen zuordnen. Nach der Installation wurden dort bereits meine über Fink installierten Anwendungen wie Gimp und OpenOffice konfiguriert, es gestaltet sich jedoch äusserst leicht die Konfiguration auf andere Anwendungen anzupassen.
Nun muss man nur noch die gewünschten Dateien bzw. Dateitypen unter Mac OS X so konfigurieren, dass beim Doppelklick die Anwendung XLaunch-O-Matic gestartet wird, die dann wiederum die entsprechende X11 Anwendung startet. XLaunch-O-Matic prüft dabei ob X11 schon läuft und startet es ggf.
XLaunch-O-Matic ist Open Source, neben dem Binary kann auch der Quellcode der Anwendung heruntergeladen werden.
SAPRFC Extension für PHP
Geschrieben von Harald Lapp in PHP um 23:33
Unix Tools für Windows
Geschrieben von Harald Lapp in Windows um 01:21
Seit einigen Tagen habe ich einen neuen Arbeitgeber. Auf meiner Workstation dort läuft leider kein Linux sondern Windows XP. Deshalb werde ich zukünftig wohl auch verstärkt die Windows Welt beim Suchen von nützlichen Tools berücksichtigen.
Welche Tools benötigt ein Linux-verwöhnter Anwender unter Windows?
Über TweakUI von Microsoft kann man sich ein Tool installieren, dass das Verhalten 'focus follows mouse', wie man es unter X gewohnt ist, emuliert. Dies funktioniert jedoch nicht 100%, denn ein Klick in das Fenster genügt, um es in den Vordergrund zu holen - eben das möchte man aber in vielen Fällen vermeiden. Ich habe ein wenig gesucht und habe eine bessere Lösung gefunden:
'True X-Mouse Gizmo' - oder kurz: TXMouse. Nach der Installation fühlt es sich schon annähernd an, wie unter Linux. 'Focus follows mouse', jedoch wird das Fenster nicht mehr beim Klick in den Vordergrund geholt, es sei denn, man klickt auf die Titelleiste des Fenster. So kann man also endlich in das Eingabefeld eines Fenster im Hintergrund klicken und Eingaben machen, ohne dass das jeweilige Fenster in den Vordergrund kommt.
Aber das ist noch nicht alles: Das Markieren eines Textes über die Mouse kopiert diesen endlich wieder automatisch in die Zwischenablage - wie man es unter einer vernünftigen Arbeitsumgebung eben gewohnt ist. So weit ich es verstanden habe, sollte eigentlich auch 'Paste' über die mittlere Mouse-Taste funktionieren - bei mir jedoch - warum auch immer - nicht!? Das muss ich mir in den nächsten Tagen, sofern es die Zeit erlaubt, nochmal näher ansehen.
Als nächstes habe ich mir dann noch die GNU Utilities für Win32 (unxutils) installiert. Dabei handelt es sich allerlei Unix Tools, die - im Gegsatz zu Cygwin - 'nativ' nach Windows portiert wurden. Bei Cygwin wird ja eine Art Emulations-Layer geschaffen, der allerlei Abhängigkeiten mit sich bringt. Die unxutils benötigen lediglich eine Microsoft C-runtime Bibliothek, die ohnehin unter jedem Windows vorhanden sein sollte.
Nach dem Entpacken der Tools sollte man in der Systemsteuerung noch die PATH Umgebungsvariable ändern, damit die Tools auch von überall im Dateisystem gefunden werden können. Nun stehen wieder die gewohnten Befehle wie ls, grep und find zur Verfügung und zahlreiche Tools mehr - vollständige Liste finden man auf der Projekt-Webseite. Ausserdem wird noch eine Shell mitgeliefert, die jedoch bei weitem nicht an die bash von Cygwin heranreicht - dennoch: besser als der Command-Prompt von Windows ist sie alle mal.
PHP 6.0 kommt!
Geschrieben von Harald Lapp in PHP um 15:15
Ganz so ist es natürlich nicht - aber die Arbeiten daran haben scheinbar begonnen. Der Grund für einen derartigen Versionssprung wird sein, dass PHP 6 endlich Unicode fähig sein wird. Hierfür wird wohl die ICU Bibliothek von IBM verwendung finden. Dabei soll die Unicode Unterstützung völlig transparent im Hintergrund ablaufen. D.h. das ab PHP 6 alle Stringfunktionen wie substr, str_replace usw. unicode-fähig sein werden.
Angedacht ist wohl auch das Loswerden einiger Funktionen, die bereits seit PHP3 und 4 als veraltet markiert sind oder auch das entgültige Entfernen der Option 'register_globals'.
Ich persönlich würde mir wünschen, dass dann vielleicht auch wieder Namespaces ein Thema werden - ist das völlig vom Tisch? Über die Unterstützung von Namespaces in PHP hört und liest man leider gar nichts mehr, nachdem diese ja in Version 5 dann leider doch rausgeflogen sind.
Datenbankdesign mit DbWrench
Geschrieben von Harald Lapp in Datenbanken, Shareware Tools um 02:27
Ich war längere Zeit auf der Suche nach einer Software, mit der man komfortabel Datenbankmodelle entwickeln kann. Meine Hauptanforderungen waren hier wieder: Schnelle und intuitive Arbeitsweise, keine Oberfläche, die mit viel Schnick-schnack überladen ist und natürlich plattformübergreifende Verfügbarkeit.
Mit DbWrench bin ich jetzt fündig geworden. Hierbei handelt es sich um eine in Java geschriebene Applikation, die problemlos unter Mac OS X, Linux und Windows - mit diesen drei Betriebssystemen habe ich es ausprobiert - verwendet werden kann.
Man kann ein Datenbankmodell komplett mit DbWrench entwickeln oder aber eine bestehende Datenbank einlesen. Das reverse Engineering funktioniert dabei normalerweise recht zuverlässig. Leider unterstützt DbWrench noch keine MySQL Spezialdatentypen wie ENUM - diese wandelt es in einen BLOB um. Auch das Anlegen der Datenbank aus einem Modell heraus ist für DbWrench kein Problem. Für MySQL wird z.b. der Tabellentyp InnoDB unterstützt. DbWrench erzeugt zunächst einen SQL Dump, der entweder gespeicher oder direkt an den Datenbankserver übermittelt werden kann.
Ausserdem kann die Anwendung auch eine HTML Dokumentation eines Datenbankmodells generieren. Es werden alle Informationen der Datenbank übersichtlich erfasst und sogar eine Bilddatei im Format JPEG oder PNG aus der grafischen Darstellung des Modells generiert.
Sehr sympathisch ist mir, dass DbWrench ein Datenbankmodell im XML Format speichert und nicht in einem eigenen binären Format, für das keine öffentlichen Spezifikationen erhältlich sind.
DbWrench ist Shareware - von der Webseite kann man eine vollfunktionsfähige 30 Tage lauffähige Version herunterladen. Es gibt keine preislichen Abstufungen, die Standard Edition kostet 150$ - das ist meines Erachtens nach nicht wenig oder doch zumindest so viel, dass ich mir den Kauf - für privat - zumindest doch zweimal überlegen werde.
ext2 / ext3 unter Mac OS X
Geschrieben von Harald Lapp in Mac OS X um 02:24
ext2fsx ist ein Tool, mit dem sich Datenträger und Partitionen mounten lassen, die im unter Linux weit verbreitetem ext2 oder ext3 Dateisystem formatiert sind. Von Haus aus ist dies unter Mac OS X nämlich nicht möglich.
Das Tool nistet sich in die Systemeinstellungen ein, worüber es konfiguriert werden kann. Dort kann z.b. das per default aktivierte Auto-mount deaktiviert werden oder das mounten im Nur-lese-Modus aktiviert werden. Ausserdem kann man noch zahlreiche Informationen über die jeweilige Partition erfahren. ext2fsx arbeitet für meine Anforderungen wunderbar. Es gibt jedoch auch einige Einschränkungen, so unterstützt es beispielsweise derzeit noch kein nfs-mount.
Javascript Komponenten
Geschrieben von Harald Lapp in Javascript um 03:04
Im Weblog von Ryan Campbell habe ich eben neben dem interessanten Artikel zum Dokumentieren von Quellcode (s.u.) auch zwei Javascript Komponten gefunden, die mir gefallen und die ich mir merken muss:
Bei 'Preview your links' handelt es sich um eine nette Komponente, die Symbole an Textlinks hängt, sobald eine Seite geladen wurde. So können z.b. Links automatisch markiert werden, die nicht zu einer HTML Seite sondern auf ein Dokument z.b. im .doc oder .pdf Format verweisen. Die Funktion kann über das onload event aufgerufen werden und prüft selbständig alle Textlinks einer Seite.Desweiteren gibt es ein 'Combo-Box' Element (Kombination aus Pulldown- und Eingabefeld), das mir sehr taugt, da es auf Standard-Formularelemente zurückgreift. So erscheint die Combo-Box wie es sich gehört im Safari auch im Aqua-Look. Ich habe mir die Demo im Safari sowie im Firefox angesehen - schaut recht gut aus und funktioniert wunderbar.
Strategien zum Dokumentieren von Quellcode
Geschrieben von Harald Lapp in Programmierung um 02:51
Commenting your code is like cleaning your bathroom—you never want to do it, but it really does create a more pleasant experience for you and your guests.
Treffender könnte die Einleitung zum Artikel 'Successful Strategies for Commenting Code' von Ryan Campbell im particletree Weblog kaum sein. Der Artikel beschreibt Strategien zum Kommentieren von Quellcode z.b. wo Kommentare notwendig sind und wo sie überflüssig sind. Wie Kommentare gestaltet werden können, sodass sie das Lesen des Quellcodes unterstützen und nicht behindern. Der Artikel bietet einige interessante Beispiele und Verweise zu anderen Artikeln. Eine interessante Lektüre - auch (oder gerade) für erfahrene Programmierer ![]()
codezoo - Komponenten für Programmierer
Geschrieben von Harald Lapp in Programmierung um 02:18
Ich habe in meinem Blog tatsächlich noch nicht auf den codeZoo hingewiesen - wenn ich der Suche glauben darf. Das muss ich nun unbedingt nachholen.
Bei codeZoo handelt es sich um ein Verzeichnis von wiederverwendbaren Komponenten für Programmierer. Gegründet wurde codeZoo im April dieses Jahres durch den O'Reilly Verlag - anfangs noch ausschliesslich für in Java entwickelte Komponenten.
Offensichtlich wurde kurz nach der Gründung von codeZoo eine Umfrage durchgeführt, in welcher RIchtung sich codeZoo weiterentwickeln soll, bzw. um welche Programmiersprachen es zukünftig erweitert werden soll. Dabei wurde PHP auf den dritten Platz hinter Python (1. Platz) und C++ (2. Platz) gewählt.
Vor ein paar Tagen nun wurde codeZoo um die Programmiersprachen Python und Ruby erweitert - aufgrund der hohen Nachfrage nach PHP bleibt jedoch zu hoffen, dass das Portal in naher Zukunft auch in diese Richtung erweitert wird.




