Neues Layout für einen gar nicht so alten Blog

Neues Layout

Ich muss immer mal ein wenig experimentieren, damit man nicht einrostet. Da ich beim HIERO-Theme immer wieder an Grenzen stoße und die Dokumentation auch nicht so besonders ist, stelle ich hier auf ein neues Theme um.

Mehr lesen
Heimat-Lahntal
An der Lahn ist auch ganz schön

An der Lahn ist auch ganz schön

Bilder

Lahntal

Ein Bisschen Heimatliebe muss ja auch mal sein. Hier an der Lahn ist es durchaus schön.

Mehr lesen

autohotkey Alternative espanso auf macOS Monterey

Ich musste beruflich mal wieder umsteigen, nach 6 Jahren auf Windows bin ich jetzt wieder auf macOS unterwegs. Da es auf dem Mac autohotkey einfach nicht gibt und ich in den letzten 17 Jahren hunderte von shortcuts memorisiert habe, musste ein Ersatz her. Hier war reddit mal wieder mein Freund. In einem Sub wurde sich da mal über Alternativen unterhalten. Da konnte man ja einfach mal schauen welche am häufigsten auftauchte und das war espanso. Ein open source Projekt, was schon mal dafür spricht und außerdem werden YAML-Dateien verwendet. Die verwenden wir im Job auch und dann war der Umstieg nicht schwer. Was machst Du jetzt mit 800 Shortcuts im .ahk Format? VIM anwerfen, umformatieren mit einem Macro und nach ein paar Stunden fummelei, wegen des neuen YML-Syntax lief dann alles wieder. Und weil das so gut geklappt hat, habe ich direkt auf meiner Parallels Windows 11 arm64 Installation auch espanso installiert, da hier meine autohotkey nicht sauber funktionieren wollte.

#
#
#  ███████╗██╗███╗   ██╗███████╗███████╗██╗██╗     ███████╗██████╗
#  ██╔════╝██║████╗  ██║╚══███╔╝██╔════╝██║██║     ██╔════╝██╔══██╗
#  █████╗  ██║██╔██╗ ██║  ███╔╝ █████╗  ██║██║     █████╗  ██████╔╝
#  ██╔══╝  ██║██║╚██╗██║ ███╔╝  ██╔══╝  ██║██║     ██╔══╝  ██╔══██╗
#  ███████╗██║██║ ╚████║███████╗███████╗██║███████╗███████╗██║  ██║
#  ╚══════╝╚═╝╚═╝  ╚═══╝╚══════╝╚══════╝╚═╝╚══════╝╚═════╝╚═╝  ╚═╝
#
#   Hilfen:
#   vars: [{ name: "clipboard", type: "clipboard" }]
#   label: "" unterhalb von trigger
#   Multiple triggers - triggers: ["" , ""]
#   Enter = \n
#
matches:
 - trigger: "--#"
   replace: "-preisvergleich -yatego -amazon -ebay -preisroboter -idealo -ladenzeile -kaufen

Man sieht schon, alles kein Hexenwerk. Mit trigger: wird der Shortcut definiert, hier --# und replace: definiert die Ersetzung, hier also "-preisvergleich -yatego -amazon -ebay -preisroboter -idealo -ladenzeile -kaufen" das brauche ich dann schon mal in der Goolge Suche, wenn ich das Produkt nicht kaufen will.

Die Syntax ist wirklich schnell gelernt. Mit "vars: [{ name: "clipboard", type: "clipboard" }]" wird auf die Zwischenablage zugegriffen.

triggers: ["sgf#", "sf#" ]
replace: "Sehr geehrte Frau ,\n"
vars: [{ name: "clipboard", type: "clipboard" }]

Hier löst sgf# oder sf# sie Ersetzung "Sehr geehrte Frau Meier, ENTER" aus, wenn Meier in der Zwischenablage war. Man kann also mehrere Trigger für die selbe Ersetzung definieren.

Super praktisch sind auch die automatisch generierten Pop-Ups. In autohotkey hatte ich dafür ein Array das per zufallszahl eine EAN/GTIN ausgewählt hat. Das ist zwar viel praktischer als das folgende, aber soweit bin ich mit espanso leider noch nicht.

#
#
# ███████╗ █████╗ ███╗   ██╗    ██╗ ██████╗████████╗██╗███╗   ██╗
# ██╔════╝██╔══██╗████╗  ██║   ██╔╝██╔════╝╚══██╔══╝██║████╗  ██║
# █████╗  ███████║██╔██╗ ██║  ██╔╝ ██║  ███╗  ██║   ██║██╔██╗ ██║
# ██╔══╝  ██╔══██║██║╚██╗██║ ██╔╝  ██║   ██║  ██║   ██║██║╚██╗██║
# ███████╗██║  ██║██║ ╚████║██╔╝   ╚██████╔╝  ██║   ██║██║ ╚████║
# ╚══════╝╚═╝  ╚═╝╚═╝  ╚═══╝╚═╝     ╚═════╝   ╚═╝   ╚═╝╚═╝  ╚═══╝
#
#
# internaltest EAN/GTIN
  - trigger: "sdd"
    replace: "2000001811153"
  - trigger: "sdd"
    replace: "2000002615743"
  - trigger: "sdd"
    replace: "2000002615767"
  - trigger: "sdd"
    replace: "2000001811139"

Wenn ich sdd eintippe poppt gleich ein Fenster auf und ich kann per Pfeiltaste oder mit Alt+1, Alt+2 usw. einen Eintrag absenden.

espanso popup

Lintalist

Noch so ein Programm das auf autohotkey basiert und das ich intensiv auf der Windows Maschine benutzt habe. Auch hier konnte ich mit espanso bisher ganz gute Ergebnisse erzielen. Man braucht noch Keyboard Maestro, das leider kein Open Source Projekt ist, aber die Investition hat sich gelohnt.

Lintalist habe ich hauptsächlich verwendet um HTML Code inkl. Zwischenablage zu ersetzen, oder HTML-Tabellen zu erzeugen und gleich die Anzahl der Spalten mitzugeben. Auch das klappt gut mit espanso, wenn man einmal verstanden hat, wie man Sonderzeichen escapen muss.

Hier wird eine Kapitel-Navigation eingefügt:

label: "Kapitel Navigation unten Clickhelp"
replace: "<p></p><hr/><p><ch:nav type=\"previous\" text=\"vorheriges Kapitel\" class=\"CHNavLinkPrevious\"/> | <ch:nav type=\"top\"  text=\"Übergeordnetes Kapitel\" class=\"CHNavLinkTop\"/> | <ch:nav type=\"next\" text=\"nächstes Kapitel\" class=\"CHNavLinkNext\"/></p><p><br/></p><p></p>"

Sieht immer etwas wilder aus, als es am Ende dann ist. Man gewöhnt sich schnell dran.

tmux ist mein Tiling Window Manager

TMUX

Ich hatte da mal einen Post auf reddit geesehen und mir gedacht, das klingt soch irgendwie nach einem Plan. Mit dem neuen Rechner den ich bekommen habe war das eine gute Gelegenheit. Hier kann ich in einem Terminal Fenster alle Prozesse offen halten, die ich so brauche, oder an denen ich schon mal Spass habe.

Timewarrior / Taskwarrior

Die beiden Programme verwende ich um per CLI mal eben schnell einen Task zu erstellen, zu starten oder zu beenden. In der Kombination mit Timewarrior habe ich dann auch noch ein Tool, dass die Zeiten speichert, die ich für einzelne Tasks oder die verschiedenen Projekte aufgewndet habe.

wttr.in

Man muss doch immer das Wetter ein bisschen im Blick habe.

wttr.in

NCSPOT

Spotify in der CLI? Ja klar, hast Du schon mal geschaut wie viel Speicher Spotify sich reserviert? Ich habe aktuell nur 32 Gig, da muss ich ein wenig haushalten.

Spotify in der CLI mit NCSPOT

Spotify Speicherfresser

Ich hatte hier gestern erst 70 MB Speicherverbrauch, die 106 heute erscheinen mir ein bisschen viel.

Nachtrag

Wusste ich doch, das der Speicherverbrauch eigentlich total niedrig ausfällt:

ncspot mit 28MB Speicherverbrauch

ncspot Meeresrauschen

Newsboat RSS Reader

Noch bin ich nicht dazu gekommen mir emacs einmal genauer anzuschauen, außerdem will ich nicht schon wieder ein Fass ohne Boden aufmachen.

Newsboat RSS Reader

Was ich an newsboat so mag ist, dass ich hier mit tmux, in 3 Fenstern ein wenig sortiert meine wichtigsten RSS-Feeds im Blick halten kann. Ich habe 3 verschiedene Config-Dateien hinterlegt und kann so meine RSS-Feeds, meine youtube-Feeds und meine wichtigsten Podcasts im Blickbehalten. Mit mpv kann ich Mediendateien abspielen, also Podcasts oder Videos und überall wo das nicht funktioniert, wird per URL-View einfach der Standard Browser vom System aufgerufen.

Nur falls jemand ein bisschen was abschauen will:

#  _   _ ________          _______ ____   ____       _______
# | \ | |  ____\ \        / / ____|  _ \ / __ \   /\|__   __|
# |  \| | |__   \ \  /\  / / (___ | |_) | |  | | /  \  | |
# | . ` |  __|   \ \/  \/ / \___ \|  _ <| |  | |/ /\ \ | |
# | |\  | |____   \  /\  /  ____) | |_) | |__| / ____ \| |
# |_| \_|______|   \/  \/  |_____/|____/ \____/_/    \_\_|
#
#
browser $BROWSER
save-path "~/Dokumente/rss-feeds-worth-saving/"
download-path ~/Musik
player "mpv"
#
# add video or audio to play queue using mpv (requires: task-spooler, mpv, youtube-dl)
# task-spooler: https://www.youtube.com/watch?v=wv8D8wT20ZY
# youtube-dl: https://www.youtube.com/watch?v=MFxlwVhwayg
 macro p set browser "mpv --ontop --no-border --force-window --autofit=500x280 --geometry=-15-10 %u"; open-in-browser ; set browser "$BROWSER %u"
 refresh-on-startup yes
 auto-reload yes
 reload-time 30
 reload-threads 100
 external-url-viewer "urlview"
 # external-url-viewer "urlscan"
 bind-key U show-urls
 # max-items        100
 confirm-delete-all-articles yes
 scrolloff 25
 # notify-xterm yes
 suppress-first-reload yes
 display-article-progress yes
 confirm-mark-all-feeds-read yes
 confirm-mark-feed-read no
 # error-log ~/.local/share/newsboat/error.log
 #https://gitlab.com/dj-bauer/newsboat-rice/-/blob/master/config
 highlight feedlist "[╒╘╞]═.*═[╛╕╡]" color175 color237  #yellow default bold
 highlight feedlist "[║│]" color175 color237 bold #yellow default bold
 highlight feedlist "╠═.*" color175 color237 bold  #yellow default bold
 # highlight feedlist "\\(youtube\\) .*" red
 # highlight feedlist "\\(Reddit\\) .*" green
 # highlight feedlist "\\(Podcast\\) .*" magenta
 # highlight feedlist "\\(Blogs\\) .*" cyan
 # highlight feedlist "\\(Reddit\\) .*" color166
 feedlist-format "%?T?║%4i %n %14u (%T) %S &╠════════════════════════════════════════════════════%t?"
 feedlist-title-format "%N %V - Deine Feeds ║ (%u ungelesen, %t Gesamt)%?T? - tag ’%T'&? "
 # keybindings because of muscle memory.
 bind-key SPACE next-unread
 bind-key j down
 bind-key k up
 bind-key g home
 bind-key G end
 bind-key RIGHT open
 bind-key U show-urls