Diese Notiz löschen
Hinweis zur Löschung inaktiver Anmeldungen: *klick*

Diese Notiz löschen
Keine Bestätigungsmail für die Registrierung erhalten? *klick*


Frage:  Einzelne Notiz exportieren, HTML editieren und wieder importieren
#4

Ich komme noch einmal zurück auf diesen Thread.

Nachdem Herbert auf seiner Seite Digital-Cleaning den Artikel "Entspannte Texte mit Fastkeys" unter https://digital-cleaning.de/index.php/en...-fastkeys/ veröffentlicht hat, habe ich mich nicht nur interessehalber mit FastKeys als kommerzielle Autohotkey-Umsetzung, sondern auch mit Autohotkey selbst noch einmal intensiver befasst.

Dabei habe ich mir auch noch einmal mein hier bereits als txt-Datei hochgeladenes Autohotkey-Skript zur Formatierung von Evernote-Notizen unter Windows vorgenommen und dieses überarbeitet und fortgeschrieben.

Auch wenn Evernote, wie man auch an dem in der Webversion allgemein zum Test zur Verfügung stehenden neuen Editor sehen kann, künftig mehr Möglichkeiten zur (HTML-) Formatierung bieten dürfte, kann es trotzdem (schon jetzt...) sinnvoll und hilfreich sein, stimmige HTML-Formatierung "auf einen Tastenzugriff" verfügbar zu machen.

Dies lässt sich - nur unter Windows - mit einem schnell implementierten Autohotkey-Skript und bedarfsweise angepassten Shortcuts (im Autohotkey-Sprech "HotKeys") mit einer weiterentwickelten und angepassten Version des Scriptes, das ebenfalls Herbert im Artikel "Strukturierte Texte mit AutoHotkey" schon im Februar 2014 unter http://www.notieren.de/strukturierte-tex...utohotkey/ vorgestellt und beschrieben hatte.

Doch was braucht man, wie funktioniert das und was habe ich ggü. der von Herbert beschriebenen Version von 2014 geändert?

Was man braucht ist überschaubar:

  1. Eine Installation oder auch als USB-Variante - ohne Installation und dafür notwendige Admin-Rechte - lauffähige Version der (kostenlosen) Autohotkey-Software (siehe dazu: Download bei github unter https://ahkde.github.io/download/)
  2. die im Anwenderkreis entwickelten Dateien und Klassen WinClipAPI.ahk und WindClip.ahk (die ermöglichen insbesondere den benötigten schreibenden Zugriff mit formatierten HTML-Inhalte in die Zwischenablage, also das Clipboard; Download über https://autohotkey.com/board/topic/74670...pulations/)
    und - last but not least - 
  3. das hier unten abgebildete AHK-Script (nach Bedarf angepasst und mit der Dateiendung".ahk" gespeichert)

Funktionsfähig wird das Skript, wenn es mit Autohotkey gestartet wird und ist ab da mit einen Autohotkey-Symbol (weißes H auf grünem Grund) unten rechts in der Taskleiste sichtbar. Das Skript überwacht - wie z.B. fastkeys - die Tastatureingaben und wird - ohne Änderungen - nur bei bestimmten Tastatureingaben (derzeit [AltGr] + ZIffer von 1-6) nur innerhalb der Evernote-Installation unter Windows- aktiv.

Die Tastenbelegung entspricht im Kern der von Herbert aus dem o.a. Artikel aus 2014
  • "[Strg]+[Alt]+[Ziffern 1-3]" formatieren die aktuelle Zeile als (HTML-) Überschrift der Ebenen H1 - H3
  • "[Strg]+[Alt]+[Ziffern 4-6]" formatieren einen markierten Bereich "gehighlighted" mit verschiedenen Farben (hier: gelb, grün, rot - jeweils blass, mit fetter Schrift)
Was ich ggü. der Version aus 2014 geändert habe ist u.a. folgendes:
  • Vermutlich wegen Aktualisierung und Umprogrammierung der Evernote-Installation musste das Script geringfügig im Aufruf auf die aktuelle Version angepasst werden um weiter tatsächlich (nur) unter Evernote zu laufen.
  • Die Formatierung als Überschrift habe ich so umgestellt, dass der Text tatsächlich als HTML-Überschrift (im jeweils hinterlegten CSS-Format für H1 bis H3) formatiert wird.
  • Die bunte Formatierung zum Hervorheben vom Text habe ich (ganz frisch) so angepasst, dass drei der aktuell scheinbar für die kommende Evernote-Version vorgesehenen Highlight-Farben mit blassgelb, blassgrün und blassrot eingesetzt werden können. (Man könnte leicht auch die Ziffern 6-9 für die drei weiteren verbleibenden Evernote-Highlight-Farben aktivieren...)
  • Das Script funktioniert nun nicht nur im Hauptfenster von Evernote (ober Hälfte, eingeschränkt mit "#IfWinActive ahk_class ENMainFrame") sondern auch im Detail-Notiz-Fenster (in der MItte , eingeschränkt mit  "#IfWinActive ahk_class ENSingleNoteView")
  • Damit man besser durchblickt und leichter Anpassungen vornehmen kann, habe ich das Script ergänzend in einem Mischmasch aus Deutsch und Englisch durchkommentiert.
  • Und: Wie ich heute in der Test-Vorschau des Evernote-Web-Clients ausprobiert habe, funktioniert das Skript inzwischen sogar da (wenn man die eben erwähnten Einschränkungen mit "#IfWinActive ahk_class ENMainFrame or #IfWinActive ahk_class ENSingleNoteView" auskommentiert...)
Einer der Originalartikel aus 03/2013 aus dem Evernote-Anwenderforum finden sich zum Nachlesen unter https://discussion.evernote.com/topic/36...h3-styles/.

Nun zum Skript, das hoffentlich weitestgehend selbsterklärend ist. (- wie oben ausgeführt einfach in einen Text-Editor wie notepad++ kopieren und mit gewünschtem Namen und der Endung ahk speichern. Die Verlinkungen auf die WinClip.ahk-Dateien müssen dabei noch auf die eigene Umgebung angepasst werden.)

Viel Spaß damit.
Ich bin gespannt auf Eure Kommentare.
VIELE GRÜßE, H.

Code:
; ==================================================================================================
; PURPOSE        :     FORMATIEREUNGEN IN EVERNOTE PER HOTKEYS
; REQUIRES        :     benötigt wegen Clipboard-Zugriffs auf formatierte HTML-Inhalte die Dateien/Klassen
;                    WinClipAPI.ahk und WindClip.ahk
;                    (Download über https://autohotkey.com/board/topic/74670-class-winclip-direct-clipboard-manipulations/)
;                    Einbindung mit
;                        #Include WinClipAPI.ahk    ; ggf. mit Dateipfad
;                        #Include WindClip.ahk    ; ggf. mit Dateipfad
;                     hier beides wg. Aufruf über #Include in MyAHKScripts_home.ahk bereits anderweitig inkludiert
; Refactured    :    11.06.2020
; ==================================================================================================

; ================================================================
; HOTKEYS AUF EVERNOTE-DESKTOP-APP UNTER WINDOWS BESCHRÄNKEN...
#IfWinActive ahk_class ENMainFrame         ; Aufrufe im Hauptfenster

; ----------------------------------------------------------------
; ÜBERSCHRIFTEN IN EVERNOTE
; PURPOSE    :    Text kopieren und ähnlich HTML-Überschrift H1 formatiert einfügen
; KEY        :    [SHIFT] + [ALT] + 1-3 bzw. [ALTGR] + 1-3
;
^!1::SetHeadingFormat("H1")
^!2::SetHeadingFormat("H2")
^!3::SetHeadingFormat("H3")


; ----------------------------------------------------------------
; HIGLIGHT 3 Varianten
; PURPOSE    :    Text kopieren und mit angegebener Hintergrundfarbe
;                ge-highlighted formatiert einfügen
; KEY        :    [SHIFT] + [ALT] + 4-6 bzw. [ALTGR] + 4-6
;
^!4::SetHiglightColor("#FFEF9E")                            ; Evernote-Highlight-FARBE Gelb: #FFEF9E
^!5::SetHiglightColor("#FEC1D0")                            ; Evernote-Highlight-FARBE Rot: #FEC1D0
^!6::SetHiglightColor("#B7F7D1")                            ; Evernote-Highlight-FARBE Grün: #B7F7D1


; ================================================================
; HOTKEYS AUF EVERNOTE-DESKTOP-APP UNTER WINDOWS BESCHRÄNKEN...
#IfWinActive ahk_class ENSingleNoteView        ; Aufrufe im Notiz-Einzelfenster

; ----------------------------------------------------------------
; ÜBERSCHRIFTEN IN EVERNOTE
; PURPOSE    :    Text kopieren und ähnlich HTML-Überschrift H1 formatiert einfügen
; KEY        :    [SHIFT] + [ALT] + 1-3 bzw. [ALTGR] + 1-3
;
^!1::SetHeadingFormat("H1")
^!2::SetHeadingFormat("H2")
^!3::SetHeadingFormat("H3")

; ----------------------------------------------------------------
; HIGLIGHT 3 Varianten
; PURPOSE    :    Text kopieren und mit angegebener Hintergrundfarbe
;                ge-highlighted formatiert einfügen
; KEY        :    [SHIFT] + [ALT] + 4-6 bzw. [ALTGR] + 4-6
;
^!4::SetHiglightColor("#FFEF9E")                            ; Evernote-Highlight-FARBE Gelb: #FFEF9E
^!5::SetHiglightColor("#FEC1D0")                            ; Evernote-Highlight-FARBE Rot: #FEC1D0
^!6::SetHiglightColor("#B7F7D1")                            ; Evernote-Highlight-FARBE Grün: #B7F7D1



; ================================================================

;----------------------------------------------------------------
; FUNCTION    :     SetHeadingFormat()
; PURPOSE    :     Zeile markieren und als HTML-Heading (H1 - H3) formatiert einfügen
; geändert am 26.02.2020
;----------------------------------------------------------------
SetHeadingFormat(HeadingNumber) {
Send {Home}+{End}                                         ; Select the current line
SavedClipboard := ClipboardAll                            ; Save clipboard data
WinClip.Clear()                                        ; Clear the clipboard
Send ^c                                                ; Put selected text in clipboard
ClipWait 0                                                ; Pause for clipboard data
ClipText := WinClip.GetText()                            ; Get Plain Text from clipboard with WinClip-object (-class)
html = <%HeadingNumber%>%ClipText%</%HeadingNumber%>    ; Format clipped text as HTML-Heading
WinClip.Clear()                                        ; Clear the clipboard again
WinClip.SetHTML( html )                                ; SetHTML() is a function of the WinClip-object (-class)
sleep, 100                                                ; Pause for clipboard action;
Send, ^v                                                ; Insert HTML-formatted text from clipboard
sleep, 100                                                ; Pause for clipboard action
Clipboard := SavedClipboard                            ; Restore old clipboard
}

;----------------------------------------------------------------
; FUNCTION    :     SetHiglightColor()
; PURPOSE    :     Text kopieren und mit Hintergrund formatiert einfügen
;                 for HTML color codes and names see:
;               - http://www.computerhope.com/htmcolor.htm
; - Highlight in Evernote-FARBE - Gelb        : #FFEF9E
; - Highlight in Evernote-FARBE - Rot        : #FEC1D0
; - Highlight in Evernote-FARBE - Grün        : #B7F7D1
; - Highlight in Evernote-FARBE - Blau        : #ADECF4
; - Highlight in Evernote-FARBE - Violett    : #CBCAFF
; - Highlight in Evernote-FARBE - Orange    : #FFD1B0
;----------------------------------------------------------------
SetHiglightColor(Color) {
SavedClipboard := ClipboardAll                                        ; Save clipboard data
WinClip.Clear()                                                    ; Clear the clipboard
Send ^c
ClipWait 0                                                            ; Pause for clipboard data
ClipText := WinClip.GetText()                                        ; Get Plain Text from clipboard with WinClip-object (-class)
html = <span style="background-color: %color%; font-weight:bold;">%ClipText%</span>&nbsp ; Format clipped text with HTML-background-color
WinClip.Clear()                                                    ; Clear the clipboard again
WinClip.SetHTML( html )                                            ; SetHTML() is a function of the WinClip-Class
sleep, 100                                                            ; Pause for clipboard action
Send, ^v                                                             ; Insert HTML-formatted text from clipboard
sleep, 100                                                            ; Pause for clipboard action
Clipboard := SavedClipboard                                        ; Restore old clipboard
}

:
Zitieren


Nachrichten in diesem Thema
Einzelne Notiz exportieren, HTML editieren und wieder importieren - von Birgit - 22.12.2019, 14:57
RE: Einzelne Notiz exportieren, HTML editieren und wieder importieren - von Norbert - 22.12.2019, 23:19
RE: Einzelne Notiz exportieren, HTML editieren und wieder importieren - von Henning - 26.02.2020, 14:02
Evernote-Notizen unter Windows mit Autohotkey formatieren - von Henning - 10.06.2020, 22:21

Möglicherweise verwandte Themen...
Thema / Verfasser Antworten Ansichten Letzter Beitrag

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste