Extension: Organon, ein Navigationstool für Writer

Diskussionen zu Projekten

Moderator: Moderatoren

Forumsregeln
Dieses Unterforum versteht sich als Plattform zur Diskussion/Bearbeitung komplexerer Anfragen bzw. konkret verabredeter Projekte. Das können Dinge sein wie eine komplexere Calc-Datei oder auch die gemeinsame Programmierung eines größeren Makros, wichtig ist immer die Absicht ein Thema über längere Zeit (z.B. 3 Monate) fortlaufend zu besprechen.
Xaver
*
Beiträge: 15
Registriert: So, 09.03.2014 00:26

Extension: Organon, ein Navigationstool für Writer

Beitrag von Xaver »

Hallo,

ich möchte hier meine Extension 'Organon' vorstellen und lade alle ein, sie zu testen und zu diskutieren.

Organon ist eine Erweiterung zur komfortableren Navigation und Organisation von längeren oder verschachtelten Texten in Writer.
Eine genauere Beschreibung, ein Screenshot sowie die oxt Datei zum herunterladen findet man hier: https://github.com/XRoemer/Organon

einige Features:
- frei dockbares Fenster
- Baumnavigation mit Drag und Drop
- Texte und Ordner können getaggt werden
- aus dem Internet kopierte Inhalte werden automatisch in die Datei übernommen


EDIT (2.4.2014)
aktuelle Versionen können hier gefunden werden:
https://github.com/XRoemer/Organon/releases




EDIT:
(23.03.2014)
Update auf 0.3b
hinzugefügt:
- englische Übersetzung
- Export Funktion




Die Version ist 0.1.a und wurde von mir getestet in und auf:
Win7: OO 4.0.1/ LO 4.2.0.4
Ubuntu 13.10: LO 4.2.0.4

beste Grüße,
Xaver
Zuletzt geändert von Xaver am Mi, 02.04.2014 18:27, insgesamt 4-mal geändert.
Karolus
********
Beiträge: 7431
Registriert: Mo, 02.01.2006 19:48

Re: Extension: Organon, ein Navigationstool für Writer

Beitrag von Karolus »

Hallo

LO4.1-ubuntu-version und LO4.2 stürzen kommentarlos ab nach →→Organon→auf/zu

Was mir beim ersten Blick in die Datei menu_bar.py aufgefallen ist:

Code: Alles auswählen

pyPath = 'C:\\Users\\Homer\\Desktop\\oxt\\organon\\py'
platform = sys.platform
if platform == 'linux':
    pyPath = '/home/xgr/Arbeitsordner/organon/py'
    sys.path.append(pyPath) 
Das geht so gar nicht, du kannst nicht in einer Extension irgendwelche hardkodierten Pfade verwenden die auf dem Zielsystem:
  • a - Nicht vorhanden
    b - mit normalen Benutzerrechten auch nicht schreibbar sind
LO7.4.7.2 debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO7.6.2.1 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
Xaver
*
Beiträge: 15
Registriert: So, 09.03.2014 00:26

Re: Extension: Organon, ein Navigationstool für Writer

Beitrag von Xaver »

Fehler meinerseits. Das war fürs debuggen und muss natürlich raus.
Ich habe eine neue Version hochgeladen.

Xaver
Karolus
********
Beiträge: 7431
Registriert: Mo, 02.01.2006 19:48

Re: Extension: Organon, ein Navigationstool für Writer

Beitrag von Karolus »

Hallo
Karolus hat geschrieben: LO4.1-ubuntu-version und LO4.2 stürzen kommentarlos ab nach →→Organon→auf/zu
Keine Verbesserung in der Hinsicht!

Karolus
LO7.4.7.2 debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO7.6.2.1 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
Xaver
*
Beiträge: 15
Registriert: So, 09.03.2014 00:26

Re: Extension: Organon, ein Navigationstool für Writer

Beitrag von Xaver »

Bei mir stürzt es unter ubuntu jetzt auch direkt ab.
Ich kann mich leider erst morgen wieder drum kümmern. Ich poste ein Update, wenn ich den Fehler gefunden habe.

Xaver
Xaver
*
Beiträge: 15
Registriert: So, 09.03.2014 00:26

Re: Extension: Organon, ein Navigationstool für Writer

Beitrag von Xaver »

Für Ubuntu habe ich eine eigene Version hinzugefügt. Die Ubuntu Version läuft bei mir sowohl unter Ubuntu als auch Windows.
-https://github.com/XRoemer/Organon/tree ... t%20Ubuntu

Zu meinem Problem habe ich ein neues Thema eröffnet.
viewtopic.php?f=18&t=63568

Xaver



EDIT:
Es gibt jetzt nur noch eine UTF-8 Version, die unter Win und Ubuntu laufen sollte:
https://github.com/XRoemer/Organon/tree/master/OXT
Xaver
*
Beiträge: 15
Registriert: So, 09.03.2014 00:26

Re: Extension: Organon, ein Navigationstool für Writer

Beitrag von Xaver »

Ich habe dieses Thema nochmals im englischen Forum geposted:
https://forum.openoffice.org/en/forum/v ... 20&t=68264
Xaver
*
Beiträge: 15
Registriert: So, 09.03.2014 00:26

Re: Extension: Organon, ein Navigationstool für Writer

Beitrag von Xaver »

Die Kodierung war wohl doch nicht das Problem. Leider hat sich das Problem ohne größeres TamTam verabschiedet, so dass es jetzt nicht mehr auszumachen ist.
Meine zweite Version sollte sowohl auf Ubuntu als auch Win7 lauffähig sein.

Xaver
Xaver
*
Beiträge: 15
Registriert: So, 09.03.2014 00:26

Re: Extension: Organon, ein Navigationstool für Writer

Beitrag von Xaver »

Organon ist jetzt auf die Version 0.6b geupdated und enthält alle Funktionen, die ich mir für die erste Version vorgenommen hatte.
Dies soll die letzte Beta Version sein, bevor ich Organon als offizielle Extension hochlade.

Ich habe alle Bugs, die ich finden konnte, beseitigt. 2 Issues sind noch offen:
https://github.com/XRoemer/Organon/issu ... state=open

Sollte jemand Interesse haben, Organon zu testen, kann hier die neueste Version heruntergeladen werden:
https://github.com/XRoemer/Organon/releases

Xaver
Xaver
*
Beiträge: 15
Registriert: So, 09.03.2014 00:26

Re: Extension: Organon, ein Navigationstool für Writer

Beitrag von Xaver »

Ich habe auf dem Weg zur Version 1.0 doch noch ein größeres Feature implementiert: Tabs.
In den Tabs können getaggte oder vom Nutzer selbst bestimmte Dateien geöffnet werden. (Demnächst auch Textsuche und Sortierung nach Datum/Zeit)

Außerdem habe ich eine zentrale Webseite eingerichtet, auf der Kommentare und Feedback hinterlassen werden können:
http://organon4office.wordpress.com/

Es gibt eine Reihe von Screenshots, auf denen alle Features gezeigt werden:
https://github.com/XRoemer/Organon/tree ... creenshots
Karolus
********
Beiträge: 7431
Registriert: Mo, 02.01.2006 19:48

Re: Extension: Organon, ein Navigationstool für Writer

Beitrag von Karolus »

Hallo

Ich habs jetzt nicht selbst installiert und ausprobiert weil ich für ein paar Dutzend Writerdokumente kein spezielles Organisationswerkzeug brauche, daher kann ich nicht beurteilen was das Teil leistet.

Ich hab aber mal den Sourcecode quergelesen und erlaube mir ein paar Anmerkungen aus "Programmierersicht".

-- das sind grob überschlagen über 10000 Zeilen Soucecode praktisch ohne jede Dokumentation ( DocStrings ), wie soll da einer der nicht Xaver Roemer heisst überhaupt durchblicken ?

-- Du überschreibst da einigemale relativ gebräuchliche builtins so z.B. ( set , filter , all, ord ) mit solchen Spässen handelt man sich irgndwann mal ziemlich komische Seiteneffekte ein.

-- Es taucht relativ häufig `log(eval( insp ))` auf, einerseits sollte man sich gut überlegen eval überhaupt zu verwenden, weil es wirklich alles tut, was der übergebene Text evtl. so hergibt, und deine Benutzerrechte zulassen - anderseits hab ich absolut nicht herausfinden können woher die Variable `insp` kommt -- merkwürdig.

Karolus
LO7.4.7.2 debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO7.6.2.1 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
Xaver
*
Beiträge: 15
Registriert: So, 09.03.2014 00:26

Re: Extension: Organon, ein Navigationstool für Writer

Beitrag von Xaver »

Hallo Karolus,

mit den builtins hast du Recht. Das werde ich auch bei dem Überarbeiten des Codes ändern.
Die builtins habe ich anfangs übersehen, aber das muss natürlich geändert werden.

Ich weiß, dass man mit eval vorsichtig sein sollte, aber insp wird in Zeile 18 in menu_bar.py festgelegt und an alle module übergeben. (insp = 'inspect.stack')
Ich benutze an zwei weiteren Stellen eval und exec, die aber nie von einer Nutzereingabe abhängig sind.

log(eval( insp )) ist meine bisherige Art, die Aufrufe der Methoden zu loggen. (log = Log(self).log Zeile 38 in menu_bar.py)
Dass ich mein Programm irgendwie loggen muss, ist mir erst bewußt geworden, als es schon weit größer war, als ich es erwartet hatte. Eventuell stelle ich es noch auf das eingebaute modul logging um.

"ohne jede Dokumentation ":
da hast du auch Recht. Auch da muss ich noch nacharbeiten.

Vielleicht kurz zum grundsätzlichen Ablauf:
Mit Klick auf den Organon Schalter im Menü (schalter.py) werden Module in folgenden Dateien aufgerufen:
factory.py -> menu_start.py -> menu_bar.py
factory.py -> sidebar.py

menu_bar.py enthält Menu_Bar, was die zentrale Klasse ist, von der aus alle anderen angesprochen werden.

Aber das sollte wohl aus der Dokumentation des Codes hervorgehen und nicht von mir hier erklärt werden. Tja, ist noch was an Arbeit ...

Herzlichen Dank für deine Anmerkungen,
Xaver
Karolus
********
Beiträge: 7431
Registriert: Mo, 02.01.2006 19:48

Re: Extension: Organon, ein Navigationstool für Writer

Beitrag von Karolus »

Hallo

Aua - lass diese ominöse Zeile 18 einfach weg, und ersetze eval(insp) schlicht durch inspect.stack dann weiss jeder worums geht.
LO7.4.7.2 debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO7.6.2.1 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
Xaver
*
Beiträge: 15
Registriert: So, 09.03.2014 00:26

Re: Extension: Organon, ein Navigationstool für Writer

Beitrag von Xaver »

Das ist aus dem gleichen Grund entstanden wie pd() ( = pydevBrk() ) und tb() ( = traceback.print_exc() ), die ich auch ständig benutze. Wenn ich etwas ständig schreiben muss, verkürze ich es irgendwann. Im endgültigen Code ersetze ich es dann wieder per Suchen und Ersetzen.
Aber du hast natürlich Recht, zumal es eigentlich gar keine Verkürzung mehr ist. (Ist ursprünglich aus einer längeren Anweisung hervorgegangen, wo noch weitere Argumente außer inspect.stack übergeben wurden.)
Antworten