Änderungen

Zur Navigation springen Zur Suche springen
Zeile 13: Zeile 13:     
== PDF ==
 
== PDF ==
 +
 +
=== Mini-Dokumentenmanagementsystem ===
 +
 +
* Status: Idee
 +
* Ziel: Einfache Volltextsuche auch gescannter Dokumente
 +
* Unterziele:
 +
** Keine Bindung an das Projekt, leichter Umstieg auf ein anderes (richtiges) [[DMS]]
 +
** Nutzung bisheriger Ordnerstruktur
 +
* Umsetzung
 +
** Es wird ein Erfassungs-Workflow geschaffen
 +
*** Schritt 1: Sofern das Dokument in Papier vorliegt, muss es
 +
**** gescannt
 +
***** z.B. mit Scanimage ([https://jvns.ca/blog/2020/07/11/scanimage--scan-from-the-command-line/ kann über Umweg auch PDF erzeugen])
 +
**** und per OCR erfasst werden
 +
**** Es wird ein PDF in der bestehenden Ordnerstruktur erzeugt, das einen Textlayer hat.
 +
*** Im Schritt 2 wird eine Text-Datei erzeugt,
 +
**** die den kompletten Textinhalt der Datei enthält und
 +
**** die im selben Ordner wie die Originaldatei liegt und
 +
**** die als Dateinamen den Namen der ursprünglichen Datei einschließlich Endung mit der zusätzlichen Endung ".mdms.txt" erhält
 +
** Es gibt ein Suchskript über die .mdms.txt-Dateien
 +
*** Basis wahrscheinlich [https://svij.org/blog/2017/03/08/suchen-und-finden-mit-ag-statt-ack-statt-grep/ ag] statt ack oder grep (in Kombination mit find)
 +
*** dies kann optional die gefundenen Dateien öffnen
 +
**** xdg-open in Verbindung mit dem Dateinamen der mdms.txt-Datei, jedoch ohne .mdms.txt
 +
* Erweiterungen
 +
** Es werden nicht nur Scanns erfasst, sondern auch bestehende Dokumente, z.B.
 +
*** mittels pdftotext bei PDFs, die aus einer Textverarbeitung stammen (also kein OCR benötigen)
 +
*** DOC, DOCX, ODS, ODT-Dateien
 +
** Es braucht ein Erfassungsskript, das die mdms.txt-Dateien anlegt.
 +
** Bei in Textform bereits vorliegenden Formaten, braucht es keine mdms.txt-Dateien. Insoweit muss das Suchskript lediglich erweitert werden. Beispiele
 +
*** Programmcode wie .js, .ts, .c , .cpp, .rs, .html
 +
*** Markup wie Markdown .md, .markdown und Asciidoc .adoc
 +
* Alternativen
 +
** openpaper PaperWorks
 +
*** unterstützt leider die bisherige Ordnerstruktur nicht.
 +
** https://github.com/darrenldl/docfd
 +
*** docfd arbeitet in einem Terminalfenster und stellt eine Art halbgrafisches [[grep]] für unterschiedliche Dokumentenformate (u.a. PDF, DOCX) dar.
    
=== Füge PDF in Word-Dokument ein ===
 
=== Füge PDF in Word-Dokument ein ===
Zeile 19: Zeile 55:  
* Umsetzung
 
* Umsetzung
 
** Extrahieren der PDF-Seiten in PNG/JPEG-Bilder
 
** Extrahieren der PDF-Seiten in PNG/JPEG-Bilder
 +
*** https://www.npmjs.com/package/pdf-img-convert
 
** Einfügen der Bilder in Word an einem Platzhalter
 
** Einfügen der Bilder in Word an einem Platzhalter
 
** [[Nodejs]]-Packages
 
** [[Nodejs]]-Packages
 +
*** [https://github.com/dolanmiu/docx DOCX]-package zum Erzeugen von Word-Dateien.
 +
**** [https://dev.to/iainfreestone/how-to-create-a-word-document-with-javascript-24oi Einführung in DOCX und file-saver]
 
*** https://www.npmjs.com/package/docx-templates
 
*** https://www.npmjs.com/package/docx-templates
 
*** https://github.com/alonrbar/easy-template-x
 
*** https://github.com/alonrbar/easy-template-x
 
*** Dagegen hat [https://www.npmjs.com/package/docxtemplater docxtemplater] nur ein kommerzielles [https://docxtemplater.com/modules/image/ Bilder-Modul].
 
*** Dagegen hat [https://www.npmjs.com/package/docxtemplater docxtemplater] nur ein kommerzielles [https://docxtemplater.com/modules/image/ Bilder-Modul].
 
*** Bei https://www.npmjs.com/package/docx-template fehlt Dokumentation.
 
*** Bei https://www.npmjs.com/package/docx-template fehlt Dokumentation.
 +
*** [https://www.npmjs.com/package/nodeoffice NodeOffice] kann Docx-Dateien parsen, aber nicht schreiben (scheint nicht weiterentwickelt zu werden)
 +
*** https://www.npmjs.com/package/@microsoft/office-js
 +
** Weitere mögliche Hilfen
 +
*** [https://pandoc.org/demos.html pandoc] kann auch docx-Dokumente nach [[HTML]] und [[CSS]] konvertieren
    
=== Erzeuge PDF im Browser ===
 
=== Erzeuge PDF im Browser ===
Zeile 96: Zeile 139:  
* Umsetzung: Zu verwenden wäre wohl die [[IFRAME]]-Technik. Als Alternative kann der Portalserver die entsprechenden Elemente laden und weitergeben.
 
* Umsetzung: Zu verwenden wäre wohl die [[IFRAME]]-Technik. Als Alternative kann der Portalserver die entsprechenden Elemente laden und weitergeben.
 
** Zur Auswahl des abzubildenden Elements kann man evtl. die Technik, die bei [[Zoho]] für die Einbindung fremder Inhalte in Tabellen verwendet wird, nutzen.
 
** Zur Auswahl des abzubildenden Elements kann man evtl. die Technik, die bei [[Zoho]] für die Einbindung fremder Inhalte in Tabellen verwendet wird, nutzen.
 +
 +
 +
=== Verkehr ===
 +
 +
Sinnvoll wären auch Abfahrtstafeln nahe gelegener Bahnhöfe / Stationen.
 +
 +
Siehe auch
 +
 +
* https://github.com/derhuerst/db-stations - Liste mit allen DB-Stationen
 +
* https://dbf.finalrewind.org/ - Abfahrtstafeln, über [[iframe]] integrierbar
 +
**  https://github.com/derf/db-fakedisplay/blob/main/README.md
 +
 +
* DB API Marketplace - meist kostenpflichtig
 +
** DB Timetables API - [https://developers.deutschebahn.com/db-api-marketplace/apis/node/26497 kostenfrei]
 +
*** https://pypi.org/project/deutsche-bahn-api/
 +
**** https://github.com/Tutorialwork/deutsche_bahn_api
 +
** https://github.com/ArduinoHannover/DBAPI
 +
** Railway Station Pictures - [https://developers.deutschebahn.com/db-api-marketplace/apis/product/118510 kostenfrei]
 +
*** Benutzt auf https://map.railway-stations.org/
 +
** [https://forums.livecode.com/viewtopic.php?t=35235 ältere Diskussion zu einem DB Departure Board]
 +
 +
 +
=== Bibliothek ===
 +
 +
* https://info.opacapp.net/androidconfigs/
 +
* https://github.com/opacapp/opacclient/blob/master/opacclient/libopac/README.md
    
== MediaWiki-Sync ==
 
== MediaWiki-Sync ==
Zeile 159: Zeile 228:  
* Ziel: Große Dateien sollten direkt von Smartphone zu Smartphone übertragen werden können.
 
* Ziel: Große Dateien sollten direkt von Smartphone zu Smartphone übertragen werden können.
 
* Lösungsansätze:
 
* Lösungsansätze:
** Mittels Teilen eines QR-Codes von Smartphone A kann das Smartphone B eine WLAN-Verbindung herstellen und die Dateien von Smartphone B herunterladen oder zu ihm hochladen.
+
** Mittels Teilen eines [[QR-Code]]s von Smartphone A kann das Smartphone B eine WLAN-Verbindung herstellen und die Dateien von Smartphone B herunterladen oder zu ihm hochladen.
 
** Mittels WiFi-Direct müsste nur Smartphone A eine Android-App haben, auf Smartphone B reicht ein Browser.
 
** Mittels WiFi-Direct müsste nur Smartphone A eine Android-App haben, auf Smartphone B reicht ein Browser.
 
** Smartphone A - App müsste
 
** Smartphone A - App müsste
Zeile 169: Zeile 238:  
**** Ein Websocket-Server dient als Datenaustauchbriefkasten
 
**** Ein Websocket-Server dient als Datenaustauchbriefkasten
 
**** Es wird eine direkte Verbindung mittels WebRTC hergestellt, nur hilfsweise auf den Websocket-Austausch zurückgefallen .
 
**** Es wird eine direkte Verbindung mittels WebRTC hergestellt, nur hilfsweise auf den Websocket-Austausch zurückgefallen .
 +
***** https://stackoverflow.com/questions/29032884/why-is-a-signaling-server-needed-for-webrtc/29056385#29056385
 +
***** https://mac-blog.org.ua/webrtc-one-to-one-without-signaling-server/
 +
***** https://peerjs.com/docs/#start
 +
****** https://github.com/peers/peerjs/issues/103
 +
***** https://www.npmjs.com/package/node-datachannel
 +
***** https://shinyoshiaki.github.io/werift-webrtc/website/build/
 +
 
*** Auslösen der Dateiübertragung entweder durch  
 
*** Auslösen der Dateiübertragung entweder durch  
 
**** FilePicker im Browser oder
 
**** FilePicker im Browser oder
Zeile 174: Zeile 250:  
***** https://mconverter.eu/blog/web_share_target_api/ zeigt die Web Share Target API mit ein oder mehreren Dateien.
 
***** https://mconverter.eu/blog/web_share_target_api/ zeigt die Web Share Target API mit ein oder mehreren Dateien.
 
**** [https://github.com/WICG/file-handling/blob/main/explainer.md File Handling API] - "Öffnen mit..."-Menü auf dem Desktop
 
**** [https://github.com/WICG/file-handling/blob/main/explainer.md File Handling API] - "Öffnen mit..."-Menü auf dem Desktop
 +
 +
** Cli app auf Basis von nodejs
 +
*** https://www.npmjs.com/package/qrcode
 +
    
Siehe auch  
 
Siehe auch  
* [https://transfer.sh/ transfer.sh]
   
** https://ostechnix.com/easy-fast-way-share-files-internet-command-line/
 
** https://ostechnix.com/easy-fast-way-share-files-internet-command-line/
 
* [https://ostechnix.com/transfer-files-between-computers-and-mobile-devices-by-scanning-qr-codes/ Qrcp]
 
* [https://ostechnix.com/transfer-files-between-computers-and-mobile-devices-by-scanning-qr-codes/ Qrcp]
Zeile 184: Zeile 263:  
* https://wiki.gnome.org/NetworkManager/WifiDirect
 
* https://wiki.gnome.org/NetworkManager/WifiDirect
 
* https://unix.stackexchange.com/questions/370123/wifi-direct-between-linux-android
 
* https://unix.stackexchange.com/questions/370123/wifi-direct-between-linux-android
 +
* [https://www.qrdrop.de qrdrop.de] -
 +
** positiv: einfaches User Interface, Passwortschutz, guter Name
 +
** negativ: Beschränkung auf 10 MB, Hochladen auf einen Server statt P2P-Austausch, bisher wohl keine Nutzung der [[Web Share Target API]]
 +
 +
=== Vorhandene Alternativen ===
 +
 +
* https://webdrop.space/#/
 +
** wohl nur Weboberfläche, keine CLI
 +
* [https://transfer.sh/ transfer.sh]
 
* [https://www.qrdrop.de qrdrop.de] -  
 
* [https://www.qrdrop.de qrdrop.de] -  
 
** positiv: einfaches User Interface, Passwortschutz, guter Name
 
** positiv: einfaches User Interface, Passwortschutz, guter Name
Zeile 350: Zeile 438:     
Luigi möchte die Heizung seines Appartements selbst steuern und vielleicht irgendwann weitere [[Smart Home]]-Funktionen nutzen. Siehe [[Luigis Smart Home]].
 
Luigi möchte die Heizung seines Appartements selbst steuern und vielleicht irgendwann weitere [[Smart Home]]-Funktionen nutzen. Siehe [[Luigis Smart Home]].
 +
 +
== Halbautomatische Buchhaltung ==
 +
 +
* Idee: Kontoauszüge werden automatisch - aufgrund bestimmter Regeln oder Muster - bestimmten Kategorien und Unterkategorien zugeordnet.
 +
** Eine Zahlung (bzw. Teilzahlung) kann auch mehreren Kategorien zugeordnet sein.
 +
** Manche Kategorienarten (Sammlung von Kategorien) müssen der Zahlung zugeordnet sein (d.h. die Zahlung muss mindestens/genau einer der Kategorien der Kategorienart zugeordnet sein).
 +
* Umsetzung
 +
** Für die Konvertierung in ein gemeinsames Datenformat kann [https://daffodil.apache.org/ Apache Daffodil] eingesetzt werden.
    
--------
 
--------

Navigationsmenü