Notizomat #
Der Notizomat ist eine Java Swing Anwendung, die es erlaubt, mit mehreren Benutzern gemeinsam Notizen zu verwalten. Er hat folgende Eigenschaften:
- Die Notizen werden in einem hierarchischen Baum abgelegt (ähnlich einem Dateibaum).
- Jeder Benutzer hat ein Home-Verzeichnis.
- Falls ein Wort benutzt wird, zu dem es bereits eine Notiz gibt, wird daraus automatisch ein Link erstellt.
- Wer den Text formatieren möchte (Überschriften, Fettdruck, etc.), dem steht die recht einfache und bekannte Mediawiki-Syntax zur Verfügung.
- Notizen können ausgedruckt werden
- Es gibt Möglichkeiten, den Zugriff bzgl. Verlinkung, Schreiben und Lesen von Dokumenten einzuschränken, so das man unterschiedliche Teilprojekte und Benutzerverantwortlichkeiten voneinander trennen kann.
- Man kann seinen Benutzernamen und damit seine Sicht auf den Baum ändern, z.B. um an einem bestimmten Projekt zu arbeiten.
![]() |
technische Informationen #
Der Zugriff auf die eigentlichen Daten geht über ein abstraktes Interface FileProvider, für das es verschiedene Implementierungen gibt. Bisher habe ich den Zugriff auf "*.notiz"-Dateien im Filesystem sowie den Zugriff auf eine PostgreSQL-Datenbank realisiert. Später kann hier eine Implementierung auch direkt auf ein Dokumentenmanagement-System zugreifen.
Die Wikisyntax ist ebenfalls über ein Interface geregelt. Neben einer (nicht empfehlenswerten) SimpleWiki-Implementierung (mit regulären Ausdrücken) benutzt die Mediawiki-Implementierung die Wikitext
-Bibliothek des Eclipse-Projektes. Die erlaubt ganz einfach auch andere Merkup-Sprachen (Textile, Confluence, TWiki, etc.), wenn das jemand möchte.
Der Quellcode ist in zwei Projekte aufgeteilt. Dadurch ist die Datenverwaltungs-Basis von der Swing-Oberfläche getrennt. Der Sinn ist, das man später einfacher z.B. eine Android-Version erstellen kann, die dann auf der selben Basis aufbaut.
Konfiguration #
Ich gebe zu, das ich das Programm erst einmal für mich selber geschrieben habe. Wer damit herumspielen möchte, kann mich aber gerne ansprechen. Nach der ersten gemeinsamen Fremdinstallation haben wir dann bestimmt auch eine gute Installationsanleitung. ;-)
Grundsätzlich ist der Zugriff auf das Filesystem sowie auf die Datenbank in einer Config-Datei zu konfigurieren. Im Postgres-Server muss eine Datenbank voreingerichtet sein.
Für die Benutzerverwaltung gibt es bisher keine Oberfläche. Das Programm legt beim ersten Start einen Benutzer für den aktuellen Linux-Benutzer sowie einen Superuser an. Alles weitere mache ich dann mit PGAdminII. Ehrlich gesagt reicht mir als Admin das für den Moment auch.
Download #
Den Quellcode gibt es im Notizomat Bitbucket Repository
. Wer kein Mercurial mag, kann dort auch ein tgz-Archiv
herunterladen.
Wer keine Lust auf Quelltext und Interesse an Binaries hat, kann mich gerne fragen, ich kann dann eine aktuelle Version bereitstellen.
