Audiospuren in MP4 Dateien managen mit LossLessCut

Ich habe zu diesem Thema schon einmal einen Artikel mit dem Kommandozeilen Tool ffmpeg geschrieben “Audiospuren aus Videodateien entfernen und hinzufügen – ffmpeg” , aber für mal eben schnell gibt es schon lange eine schöne GUI basierte Variante mit dem super Tool LossLessCut, das für Linux, Windows und Mac verfügbar ist.

Am Ende des Artikels gibt es noch mehr Verweise auf ffmpeg und Audio/ Videomanipulation hier auf diesem Blog.

In aller Kürze: LossLessCut ist ein Tool mit dem Videodateien bearbeitet werden können, ohne dass Video oder Audio neu berechnet werden müssen. Es werden also lediglich vorhandene Spuren bearbeitet bzw geschnitten und dann wird das Ergebnis innerhalb von Sekunden gespeichert.

Zusätzlich kann mit LossLessCut auch der Video Container wie z.B. MP4 oder MKV bearbeitet werden, so dass Audio oder Videospuren herausgenommen oder hinzugefügt werden können.

Praktische Beispiele:

  • Du hast zweimal das selbe Video, nur einmal in deutsch und einmal in englisch. Aber du hättest gerne nur EIN Video, das beide Sprachen beinhaltet. Also zweisprachig, die du dann z.B. in VLC mit dem Shortcut “b” umschalten kannst.
  • Du hast ein Video, dessen Audioqualität komplett unterirdisch ist (viel viel viiiiiieel zu leise, Störungen, Rauschen) und würdest gerne das Audio mit deinen tollen Tools bearbeiten und es danach wieder mit dem Video zusammen führen.

Einfacher als mit LossLessCut geht es nun wirklich nicht mehr.

Und so geht es am Beispiel des zweisprachigen Videos (Screenshots weiter unten) :

  1. Screenshot 1: Video in LossLessCut reinladen
  2. oben links auf Tracks z.B. Tracks (2/2) klicken.
  3. Dann öffnet sich eine Übersicht mit allen Audio und Videospuren, die in diesem Container enthalten sind.
  4. Screenshot 2: Indem du auf die Symbole (1) klickst, bestimmst du, ob sie mit exportiert werden sollen (grün) oder nicht mit in den neuen Container kopiert werden sollen (rot)
  5. Wenn du darunter auf “Include more tracks from other file” (2) klickst, dann kannst du eine weitere Videodatei auswählen, die dann mit in diese Übersicht kommt.
  6. Screenshot 3: Die Spuren des neuen Videos (1) werden dann aufgelistet. Mit einem Klick auf das Videosymbol links (2) deaktivierst du die reine Videospur
  7. Und mit Klick auf das X Symbol (3) rechts oben schließt du diese Übersicht und die Einstellungen werden übernommen.
  8. Screenshot 4: Kurz oben links (1) prüfen, ob jetzt auch 3 Tracks im Container und dann unten rechts (2) auf “Export” klicken.
  9. Screenshot 5: Es öffnet sich dann das Export Fenster mit diversen Exporteinstellungen (1) und wohin die zu exportierende Datei gespeichert werden soll und dann kannst du Export (2) klicken.
  10. Je nach Größe der Datei und Schnelligkeit deines Datenträgers dauert der Export zwischen ein paar Sekunden und ein paar Sekunden mehr.

So können aus 2 Videos mit der Länge von 1.3GB , als insgesamt 2.6GB ein Video mit 1.5GB gemacht werden. Also eine Ersparnis von 1.1GB.

Und beim Anschauen kann dann einfach mal schnell (bei VLC mit b) zwischen den Sprachen hin und her geschaltet werden.

Viel Spaß !

Screenshot 1

Screenshot 2

Screenshot 3

Screenshot 4

Screenshot 5

Mehr zu diesen Themen

ffmpeg

Views: 64

Bash mit vi (vim) Befehlen – vi Mode

Konfiguration

Bash kann mit vi Befehlen gesteuert werden. dazu muss lediglich entweder im Benutzerverzeichnis in die Datei .bashrc oder systemweit in die /etc/bash.basrc eine Zeile eingetragen werden

# Aktivieren des VI Modus -> Energie !
set -o vi

Konfiguration akvtieren

In der nächsten Session (z.B. neuer Login) oder durch das Ausführen des Befehls source ~/.bashrc oder source /etc/bash.basrc wird diese neue Einstellung aktiv. Alternativ kann statt dem Befehl source auch der Befehl exec benutzt werden. Dieser ersetzt die aktuelle Shell mit einer komplett neuen Shell. Die “alte” Shell bleibt dann solange im Hintergrund, bis die neue Shell beendet wurde. Wie so eine Matrjoschka Puppe.

vi Modus Aktivieren

Der vi Modus wird aktiv, indem die ESC Taste gedrückt wird. Und “raus” geht es wieder, indem i für Insert (Einfügen) gedrückt wird. Oder passiert automatisch, je nachdem welcher Befehl benutzt wurde, der dann automatisch in den INSERT oder den APPEND Modus wechselt. Also zurück in die alte Bash.

Das war schon alles. Aber hier noch zusätzlich ein paar nützliche Tastenkombination bei aktiviertem vi Modus ESC als Bonus:

Navigation

  • 0 oder ^^ springe an den Anfang der Zeile
  • $ springe an das Ende der Zeile
  • w springe zum nächsten Wort
  • b springe ein Wort zurück (back)
  • k gehe einen Eintrag zurück in der Bash History (analog die Pfeil runter Taste in der Bash)
  • l gehe einen Eintrag vorwärts in der Bash History (analog die Pfeil hoch Taste in der Bash)

Suche

  • f ZEICHEN sucht das nächste Vorkommen von ZEICHEN (ohne Eingabe des Leerzeichens!)
  • F ZEICHEN sucht das vorherige Vorkommen von ZEICHEN (ohne Eingabe des Leerzeichens!)
  • ; wiederholt die vorherige Suche. Vorwärts oder eben auch Rückwärts.

Editieren

  • x löscht das Zeichen unter dem Cursor
  • X löscht das Zeichen links vom Cursor
  • I springt an den Anfang der Zeile und wechselt zum INSERT Modus (und beendet den vi Modus)
  • A springt an das Ende der Zeile und wechselt in den APPEND Modus (und beendet den vi Modus)
  • cc löscht die komplette Zeile und wechselt in den INSERT Modus
  • C löscht den Rest der Zeile nach rechts und wechselt in den INSERT Modus
  • cw löscht ab der aktuellen Cursorposition bis zum Wortende und wechselt in den INSERT Modus
  • ciw löscht das Wort unter der aktuellen Cursorposition und wechselt in den INSERT Modus
  • ci3w löscht ab dem aktuellen Wort (inklusive) drei Wörter ab der aktuellen Cursorposition und wechselt in den INSERT Modus
  • ea springt zum Ende des aktuellen Wortes und wechselt in den APPEND Modus
  • r ersetzt exakt nur das Zeichen über dem Cursor (bleibt im vi Modus)
  • R wechselt in den Überschreibe Modus
  • ~ schaltet die Groß/Kleinschreibung des Zeichens über dem Cursor um
  • xp löscht das aktuelle Zeichen, rückt alle nachfolgenden Zeichen eines nach links und fügt das gelöschte Zeichen nach dem einen nachgerückten Zeichen wieder ein. Beispiel mit dem Cursor auf dem e wird aus heir wird hier

Löschen

  • dd oder D löscht die komplette Zeile
  • dw löscht ab der aktuellen Cursorpostion bis zum Wortende
  • bdw springt an den Anfang des Wortes und löscht dann das ganze Wort
  • bd4w springt an den Anfang des Wortes und löscht dann 4 ganze Wörter (Leerzeichen zählen als Wörter)
  • x löscht das Zeichen unter dem Cursor
  • X löscht das Zeichen links vom Cursor
  • cc löscht die komplette Zeile und wechselt in den INSERT Modus
  • C löscht den Rest der Zeile nach rechts und wechselt in den INSERT Modus
  • cw löscht ab der aktuellen Cursorposition bis zum Wortende und wechselt in den INSERT Modus
  • ciw löscht das Wort unter der aktuellen Cursorposition und wechselt in den INSERT Modus
  • ci3w löscht ab dem aktuellen Wort (inklusive) drei Wörter ab der aktuellen Cursorposition und wechselt in den INSERT Modus

Copy N Paste

  • y kopiert das aktuelle Wort unter dem Cursor
  • y3w kopiert ab der aktuellen Cursorposition 3 Wörter (Leerzeichen werden als Wörter gezählt)
  • by3w springt an den Wortanfang und kopiert ab der aktuellen Cursorposition 3 Wörter (Leerzeichen werden als Wörter gezählt)
  • Y kopiert alles von der aktuellen Position bis zum Zeilenende
  • p fügt das zuvor Kopierte ab der aktuellen Cursorposition ein
  • P fügt das zuvor Kopierte vor der aktuellen Cursorposition ein

Weitere hyperblog Artikel zum Thema

vim

bash

Views: 58

Bash history von allen Terminal Sessions speichern – Zum Beispiel tmux

Damit die Befehle verschiedener Terminal Sessions in der .bash_history gespeichert werden, muss Folgendes entweder in der user .bashrc (benutzerspezifisch) oder in der /etc/bash.bashrc(systemweit) eingetragen werden.

# avoid duplicates..
export HISTCONTROL=ignoredups:erasedups

# big big history
export HISTSIZE=100000
export HISTFILESIZE=100000

# append history entries..
shopt -s histappend

# After each command, save and reload history
export PROMPT_COMMAND="history -a; history -c; history -r; $PROMPT_COMMAND"

Weitere hyperblog Artikel zum Thema

bash

tmux

Views: 79

Warum wieder ein URL Shortener?

Es gab mal eine Zeit, da waren URL shortener wie bit.ly und Ähnliche eine technische Notwendigkeit, weil Netzwerke wie Twitter eine sehr begrenzte Zeichenbegrenzung hatten.

Da ich hauptsächlich im Fediverse mit Friendica unterwegs bin, war eine Zeichenbegrenzung nie ein Thema. Auch wenn ich Lust hätte in einem Post die Bibel mehrfach abzutippen und zu kommentieren (Jesus likes this).

Also: warum nutze ich seit einiger Zeit wieder einen URL Shortener wie yourls ?

Drei Gründe:

  1. Im Internet gibt es das Recht auf Vergessen. Das wird dann aber nicht wirklich von vielen respektiert.
  2. Ich teile oft tolle Podcast und Videobeiträge der Öffentlich Rechtlichen, die leider nur eine sehr begrenzte Zeit online sein dürfen, bevor sie dann wieder gelöscht werden müssen. Depublizierungspflicht
  3. Ich lösche die meisten meiner Beiträge nach 90 Tagen. Danach liest das sowieso kein Mensch mehr, sondern nur noch irgendwelche Bots und andere Crawler.

Durch die Nutzung eines selbst gehosteten URL Shorteners habe ich selbst das Recht auf Vergessen in der Hand, denn die URLs verfallen auch nach einer von mir gewählten Zeit, also sind dann nicht mehr gültig und laufen ins Leere, bzw auf eine 404 Meldung.

PS: Das Plugin “expiry” sorgt dafür, dass Einträge wieder entfernt werden. Hier ist die maximal Dauer auf 100 Tage gedeckelt. Wer eine längere Zeitdauer haben möchte, muss die Dauer in der Datei plugin.php direkt ändern.

Views: 64

Addon Shortcuts bei Firefox

Bei Firefox benutze ich sehr viel diese Tabs UND arbeite viel von der Tastatur aus. Weil ich auch viel schreibe. Daher war es auch nur eine Frage der Zeit, bis ich mich auf die Suche nach einem Addon mache, mit dem ich ein paar für mich wesentlich sinnvollere Tastenkombinationen für

  • Tab neu laden
  • Tab schliessen
  • geschlossenes Tab wieder öffnen
  • Neues Tab öffnen

Die Shortcuts für das Addon Shortcuts werden erst dann richtig sinnvoll, wenn bekannt ist, dass ich mit Strg+Bild hoch und Strg+ Bild runter, durch die Tabs rechts <>links durch „scrolle“.

Der Einstellungsdialog ist recht einfach gehalten. Aber dennoch solltest du nicht das > (größer als) Zeichen ganz links bei der Definition übersehen! Dort gibt es noch ein paar mehr Einstellungen, nämlich ob der Shortcut auch in Eingabefeldern gelten soll, auf allen Seiten oder nur auf bestimmten Seiten.

Im Prinzip lassen sich alle wichtigen Kombinationen definieren und in der knappen aber guten Shortcuts Dokumentation kann das nochmal nachgelesen werden.

Einstellungsdialog

So kann ich jetzt ganz bequem mit der rechten Hand Folgendes machen

  • Strg+Bild Hoch – ein Tab nach links scrollen
  • Strg+Bild runter – ein Tab nach rechts scrollen
  • Strg+Pos1 – Das Tab neu laden
  • Strg+Ende – Das Tab schliessen
  • Strg+Backspace – das zusletzt geschlossene Tab wieder neu öffnen
  • Strg+Enter – ein neues leeres Tab öffnen

Zwei Dinge sind noch wichtig zu wissen:

  1. Die Tasten funktionieren nur bei neu geladenen Tabs! Also Tabs die NACH der Definition der Shortcuts geladen wurden.
  2. Die Tasten funktionieren nur auf Webseiten. Zum Beispiel nicht auf leeren Seiten oder Einstellungsseiten.

Damit kann ich leben. Wieder mal jemand der ein kleines aber extrem tolles Tool entwickelt hat, womit ich mir das Leben an der Console einfacher machen kann. TKFTW (Tastenkommandos for the world!)

Macht’s gut und die Welt ein bisschen besser 🌻

PS: Kleiner Nachsatz. Natürlich geht es bei dieser “Alles mit Tasten zu benutzen” im Eigentlichen darum, dass ich so wenig wie möglich zwischen verschiedenen Eingabegeräten wechseln muss. In den meisten Fällen zwischen Maus und Tastatur. Daher habe ich für die Maus natürlich auch nochmal ein Addon Gesturefy

Weitere hyperblog Artikel zum Thema

Firefox

Views: 17

Nerviges Google Login Pop-up eliminieren

Es gibt dieses nervige Google Popup mit der Loginaufforderung, das gefühlt auf jeder etwas größeren Plattform aufpoppt und massiv stört. Ungefähr so, als würde ein Rassist mit massiv mangelnder Körperhygiene und extremem Mundgeruch hinter dir stehen und andauernd mit schriller Stimme sagen “Log dich ein .. log dich doch ein und sei auch ein reiner gläserner Übermensch”.

Zum Glück gibt es Firefox und andere Browser das Addon uBlock Origin Dort lässt sich in den Einstellungen (Dashboard) unter “Meine Filter” folgende Zeile einfügen

||accounts.google.com/gsi/*$xhr,script,3p

Und in Zukunft wird nie wieder einer dieser widerlichen Aufforderungen erscheinen.

Vollidioten “Vorschlag”

Es gibt Vorschläge im Netz, wie dieses Google Nerv Pop-up auch beseitigt werden kann, indem man sich bei Google einloggt, in den Einstellungen von Google das Pop-up ausstellt und sich dann nie wieder aus Google ausloggt und damit immer unter der Überwachung von Google durchs Internet surft.

Analogie

Das ist so, als würde man einen Holz Häcksler ausstellen wollen, damit man sich nicht das Bein amputiert. Dafür muss man aber erst mit dem Bein IN den Häcksler steigen, der das Bein dann natürlich sofort zerschreddert und dann erst kann man den Knopf drücken, dass der Häcksler ausgestellt wird. Dafür wird man dann aber nie wieder das bereits verlorene Bein verlieren. Wer den Denkfehler findet, darf ihn behalten.

Weitere hyperblog Artikel zum Thema

Firefox

Views: 41

Firefox Einstellungen permanent machen

Eigentlich hieß der Titel Firefox Tab ImagePreview und Tab Info ausstellen. Aber das entwickelte sich wieder zu einer Odyssee. Legen wir das mal wieder ab in die Kategorie toxisch passiv-aggressiver Programmierer Bullshit.

Oder eventuell einfach nur nach Hanlons Rasiermesser

„Geh nicht von Böswilligkeit aus, wenn Dummheit genügt“

Was ist der Stein des Anstoßes?

Bei Firefox gab es ein neues Feature Tab Preview als Bild und Texttafel … gleichzeitig. Und das wurde natürlich gleich mal standardmäßig bei der Aktualisierung aktiviert. Da ich aber überhaupt kein Freund von ALLE FEATURES DEFAULT AN bin … wer denkt sich eigentlich so einen kontraproduktiven Quatsch aus?! …. wollte ich das gleich wieder ausschalten.

RANT: So ein unnötiges Blingbling, das für 20 Sekunden nett ist, aber dann nur noch Strom und CPU frisst und dann auch noch meistens im Weg ist, will ich einfach nicht haben. Skaliert man das mal auf alle Firefox Installationen weltweit hoch, könnte mal jemand ausrechnen wieviel Strom das verbraucht. Ja, auch Kleinvieh macht Mist. Zurück zum Thema.

Also Im Netz gesucht und gefunden, dass ich per about:config die beiden folgenden Schlüssel auf false setzen muss.

browser.tabs.hoverPreview.enabled      false 
browser.tabs.hoverPreview.showThumbnails    false

Klickklicklick, Gesagt getan, nach einem Firefox Neustart war zwar das Vorschaubild weg, aber diese zusätzliche Texttafel war immer noch da. Nochmal per about:config die beiden Schlüssel angeschaut und gesehen, dass browser.tabs.hoverPreview.enabled wieder auf truestand.

Long sorry sport” oder auf norddeutsch “kurz gesagt” :

Firefox muss es explizit verboten werden eine manuelle Änderung automatisch wieder zu ändern. Aber nur Bestimmte. Die nicht extra ausgewiesen sind. #ohrfeigendienstag

Das Ganze geht dann so

Die Datei /etc/firefox/syspref.js muss mit root Rechten mit einem Editor bearbeitet werden.

Und dann trägt man dort zusätzlich folgende zwei Zeilen, am besten ganz unten, wenn da schon was stehen sollte ein, speichert das und startet Firefox neu.

pref("browser.tabs.hoverPreview.enabled",false, locked);
pref("browser.tabs.hoverPreview.showThumbnails",false, locked);

Der Charme dieser Lösung ist, dass ich diese Datei einfach nur auf jeden Computer rüber kopieren muss, ohne nochmal Hand an Firefox selbst anzulegen.

Die Info bekam ich mit freundlicher Hilfe aus dem Fediverse und die Quelle ist askubuntu.com und funktionierte auf jeden Fall mit Firefox 129.

Weitere hyperblog Artikel zum Thema

Firefox

Views: 7

jPDFbookmarks für Inhaltsverzeichnisse in PDF Dateien

jPDFBookmarks ist ein schon etwas älteres Java Programm für Linux und die anderen etwas rückständigen Betriebssysteme, mit dem sich hervorragend Inhaltsverzeichnisse erstellen lassen. Das Ganze funktioniert zwar nur manuell, aber dafür mit einem hervorragenden Workflow.

Der Grund, warum ich mich auf die Suche nach so einem Programm gemacht hatte, war, weil es im Jahr 2024 immer noch Menschen gibt, die saumäßig schlechte bis gar keine Inhaltsverzeichnisse in PDF Dateien mitliefern. Als hätten sie gerade erst von der Erfindung des Fernschreibers gehört.

In jede PDF Datei gehört ein ausführliches Inhaltsverzeichnis! Wer nicht weiß, wie das geht, soll das Menschen machen lassen, die sich mit sowas auskennen. Und auf gar keinen Fall eine PDF Datei ohne ausführliches Inhaltsverzeichnis veröffentlichen! Das gehört übrigens seit 1990 gesetzlich verboten und die stümperhaften Ersteller werden öffentlich an den Pranger gestellt und jeden Monat auf Tiktok öffentlich ausgelacht!

So, nun zum eigentlichen Programm.

Wie gesagt ist es ein Java Programm für Linux und die anderen Behelfssysteme. Die PDF Datei kann ganz einfach reingeladen werden und auch darin gelesen werden. Was ich empfehlen würde, wenn man sowieso ein Inhaltsverzeichnis erstellen möchte (muss).

Folgende Tastenkombinationen, die auch über das Menü aufrufbar sind, sind sehr hilfreich

  • Strg + Alt + t Select Text (Tools Menü)
  • Strg + Alt + s Ein Bookmark auf gleicher Hierarchie wie die letzte erstellen (Add Sibbling Bookmark …)
  • Strg + Alt + f ein Bookmark eine Hiearchie tiefer anlegen.
  • F2 ein Bookmark umbennen
  • ENTF ein Bookmark löschen

Sollte ein Bookmark in der falschen Hierarchie erstellt worden sein, kann der Fehler einfach mit der Maus behoben werden. Einfach an die richtige Stelle schieben und alles ist wieder richtig. Wenn sich unter dem Bookmark noch eine weitere Hierarchie befand, dann wird die natürlich auch mit verschoben.

Der Knaller ist, dass mit aktiviertem “Select Text” Strg + Alt + t mit der Maus einfach Text markiert werden kann, dann sofort Strg + Alt + s (gleiche Hierarchie) oder Strg + Alt + f (Hierarchie darunter) ein Bookmark angelegt werden kann.

Ich speichere (Save as …) meine so meine PDFs aus der Vergangenheit mit dem Namenszusatz TOC für Table Of Contents ab. So wird die Datei auch nicht bei einem versehentlichem Kopieren der alten Datei über die neue Datei, die Arbeit zunichte gemacht.

Der Vorteil auch hervorragende PDFs damit zu bearbeiten ist, dass man zusätzliche “Marker” ins Inhaltsverzeichnis setzen kann, die es da nicht rein geschafft haben, die man aber für wichtig hält, um bei der Benutzung der PDF schnell an die Informationen zu kommen.

Und um die Ja-Aber-Es-Gibt-Doch-Strg+F-Volltext-Suche Trolle eines Besseren zu belehren: Such mal mit Strg+F in einem 1600 Seiten PDF einen Begriff, der in vielen verschiedenen Kategorien aka Kapiteln vorkommt. Solcher Whataboutism ist einfach nur Ausdruck absoluter Faulheit.

Und sobald mir Vodafone hier in Berlin mal wieder Internet zukommen läßt, wozu sie sich vertraglich verpflichtet haben, aber gerade wieder vertragsbrüchig sind, stelle ich diesen Artikel auch online.

Webseite: JPDFBookmarks https://sourceforge.net/projects/jpdfbookmarks/

Views: 5

Entwickler mit Brett vorm Kopf – Edge Barrier bei KDE oder Maus mit extremem Agressionspotential

Auch in der Opensource Welt nimmt die diktatorische Bevormundung der User langsam Einzug. Ich habe das Gefühl, dass die Leute mittlerweile schon so verstrahlt von Google, Apple, Facebook und Konsorten sind, dass die schon anfangen den selben Shice zu machen!

Ein Beispiel, was mich die Tage fast in den Wahnsinn getrieben hat. Mit einem KDE Update wurde bei mir plötzlich eine neue Option als Standard gesetzt. Ich wurde weder von einem Infofenster oder sonst wie informiert, oder gefragt, ob ich so etwas haben will.

Im Prinzip eine Kleinigkeit. Aber mit großen Aggressionspotential. Und zwar nutze ich zwei Bildschirme und ein völlig verstrahlter Entwickler oder Entscheider hat beschlossen, dass ein neues Feature, das vielleicht in seltenen Situationen sinnvoll ist, als Standard gesetzt wird.

Und zwar geht das Feature wie folgt: Wenn du mit der Maus von einem Bildschirm auf den anderen Bildschirm fahren willst, dann bleibt die Maus hängen, als wäre der Laser unter der Maus kaputt. Du musst dann erst etliche heftige Ruckbewegungen durchführen, bis du die Maus wieder befreit hast. Und auf dem Weg zurück genau das Selbe Fliegenklebeband.

Stell dir mal vor, du gehst innerhalb von 1 Minute 10x hin und her, weil du eben arbeitest. Und jedes Mal musst du an der Maus rütteln, als wäre es eine schwere Tür eines Verlieses. nach 5 Minuten schreist du die Maus an. Dann den einen Bildschirm und danach den anderen Bildschirm. Und wenn du es schaffst mit der Maus den Browser zu erreichen, dann suchst du im Internet nach Voodoo Puppen Howtos, damit dieser Entwickler oder Entscheider nie wieder irgendwas sagen kann.

Ein solches Verhalten fällt mir im letzten Jahr immer mehr auf. Bei diversen Opensource Projekten. Irgendjemand hat eine Idee, findet die gut und denkt “Do it like Putin” und das kriegen jetzt alle als Standard, weil ich das gut finde.

Sorry, aber das ist arschreines passiv-aggressives Arschlochverhalten. Oder einfach nur bodenlose Dummheit. Die klaren Worte mussten mal sein, weil die Anzahl der verfacebookten, vergoogelten, verinstagrammten, verwhatsappten Vollidioten zunimmt. Auf der einen Seite halten sie die Fahne ANTI TECH KONZERN hoch und auf der anderen Seite verhalten sie sich aber exakt gleich wie ihre Vorbilder .. äh … angeblichen Gegner.

So. Diese absolut dämliche Einstellung macht man übrigens rückgängig mit SYSTEMEINSTELLUNGEN → Maus & Touchpad → Bildschirmränder → Edge barrier” von 100px auf 0 setzen

Danke Elias aus dem Fediverse !

Views: 3

Git Leitfaden für Beginner

Wer Projekte per git auf dem aktuellen Stand halten will, aber sonst nicht viel mit git macht, braucht immer mal wieder dieselben Befehle, um die notwendigen Aktualisierungen durchzuführen. Da sind dann immer wieder diese Leute, die dann ein paar Befehle rüber werfen, aber nicht wirklich zwei klärende Worte zum Zusammenhang hinzufügen. Das Problem ist zwar damit vielleicht aus der Welt, aber es ist nichts damit gewonnen. Konfuzius rotierte im Grabe!

Gib einem Mensch einen Fisch und du ernährst ihn für einen Tag. Lehre einen Menschen zu fischen und du ernährst ihn für sein Leben.

Konfuzius

Wenn die Mehrzahl der EmpfehlerInnen nach dieser Maxime handeln würden, wäre das Frustrationspotential auf Myriaden von Webseiten und Foren nicht so hoch. Das musste ich mal los werden.

Ich gehe am praktischen Beispiel des Fediverse Servers Friendica vor. Den geübten Umgang mit z.B. Linux und der Konsole bzw der Shell Bash setze ich voraus. Ebenso ein installiertes git .

Git und das Repo

Das Software Repository, oft auch nur Repository oder Repo genannt, von Friendica liegt z.B. auf https://github.com/friendica/friendica . Das ist der Speicherort, auf dem die Software liegt und von Entwicklern gepflegt, programmiert und aktualisiert wird. Git ist eine Software, die gleichzeitig verschiedene Versionen von Dateien verwalten kann und für die Softwareentwicklung entwickelt wurde. Kurz gesagt ermöglicht sie es sehr einfach recht komplexe Version- Upgrades oder Downgrades absolut korrekt durchzuführen, so dass als Ergebnis immer eine saubere und lauffähige Version der Software bzw des Quellcodes herauskommt.
Mehr zum Thema git

Schritt 1: Die Software installieren – Das Repo clonen

Ich nehme mal an, du willst Friendica auf deinem Server installieren und hast das Webverzeichnis für deine Domain www.MeineDomain.de eingerichtet, das sich z.B. unter /var/web/MeineDomain/htdocs befindet. Und genau hier willst du Friendica installieren, daher wechselst du in dieses Verzeichnis. Das Verzeichnis muss komplett leer sein, sonst weigert sich git die Dateien hier abzulegen.

Der Befehl der dafür vorgeschlagen wird, ist oft

git clone https://github.com/friendica/friendica

ABER! Dieser würde dir in deinem /var/web/MeineDomain/htdocs/ Verzeichnis ein Unterverzeichnis friendica /var/web/MeineDomain/htdocs/friendica/anlegen und dort alle Dateien und Verzeichnisse ablegen. Und dein Server wäre dann nur unter www.MeineDomain.de/friendica/ erreichbar. Aber du möchtest, dass der Friendica Server unter www.MeineDomain.de erreichbar ist.

Daher musst du dem vorgeschlagenen Befehl noch ein Leerzeichen (Trenner) und einen Punkt (repräsentiert immer das aktuelle Verzeichnis) mitgeben, mit dem du angibst, dass die Dateien im aktuellen Verzeichnis abgelegt werden. Und dann sieht das so aus:

git clone https://github.com/friendica/friendica .

Damit liegt nun die Software, genauer gesagt die stable (früher master) Version, auf deinem Server und du kannst mit der Konfiguration und Einrichtung beginnen. Die Dokumentation dazu findest du unter https://wiki.friendi.ca/ .

Da die Addons für Friendica ein einem extra Repo https://github.com/friendica/friendica-addons liegen, müssen diese natürlich mit den gleichen Schritten eingerichtet und später dann auch aktualisiert werden.

Schritt 2: Aktualisierungen

In so einem Software Repo wird in den meisten Fällen nicht nur eine Software Version gepflegt, sondern meist mehrere. Eigentlich sind immer stable und develop bzw origin/stable und origin/develop verfügbar. Wie oben schon erwähnt hieß stable früher standardmäßig master, aber in modernen Repos gibt es nur noch den Namen stable oder öfter main. Hintergründe Bei Friendica heisst die aktuelle stabile Version stable.

Info: Für Friendica ist ein wenig mehr erforderlich. Die kompletten Befehle führe ich weiter unten auf. Aus Gründen der Verständlichkeit vereinfache ich die Vorgehensweise hier.

Ganz allgemein: Um deine Software zu aktualisieren wechselst du zukünftig in dein Verzeichnis /var/web/MeineDomain/htdocs/ und gibst den Befehl ein

git pull

und dein Friendica wird auf den neusten Stand gebracht. (Addons nicht vergessen)

Schritt 3: Versionen und branches

Nun gibt es wie oben schon geschrieben meist mindestens 2 Versionen. Die stable und die development Version. Die Versionen in git werden branches genannt. Welche branches du hast, kannst du ganz einfach herausfinden mit den Befehlen

Welche Branches liegen (remote) auf dem Software Repo
git branch -r

ergibt z.B. so eine Ausgabe

 origin/2022.09-rc
 origin/2022.12-rc
 origin/2023.03-rc
 origin/2023.05-rc
 origin/2023.09-rc
 origin/2024.03-rc
 origin/HEAD -> origin/develop
 origin/develop
 origin/stable

Welche Branches liegen (lokal) deinem Server
git branch -a

Um zu einem anderen branch bzw Version zu wechseln, gibst du einfach z.B. ein

git checkout develop um auf die Entwicklerversion zu wechseln
git checkout stable um auf die stabile Hauptversion zu wechseln.

Allerdings sollte so ein Wechsel immer gut durchdacht sein, denn oftmals kann das weitere Abhängigkeiten haben, wie zum Beispiel bei Friendica irgendwelche Updates von Datenstrukturen in der Datenbank. Älter Versionen kennen neuere Datenbankstrukturen nicht und das wird dann vermutlich zu Fehlern führen. Prüfe stehts!

Schritt 4: Updates und Versionen – development, stable & RC

Es gibt also die development Version, die immer die neusten Funktionen und Features hat, die aktiv entwickelt werden und daher mit einer hohen Wahrscheinlichkeit Fehler enthalten, die noch korrigiert (gefixt) werden müssen. Und die stabile stable Version, die zum produktiven Einsatz freigegeben wurde.

Dann gibt es oft noch RC (Release Candiates) Versionen. Zum Beispiel eine 2024.04-RC . Das ist eine aktuelle development Version, zu der keine neuen Features dazu kommen (Feature Freeze) und die zur nächsten stabilen Version werden soll. Diese Version ist mit einer öffentlichen Beta Version vergleichbar, die zur Verfügung gestellt wird, damit sie von vielen getestet und eventuelle Fehler behoben werden können. Wenn dann alle Fehler behoben sind, dann wird diese 2024.04-RC Version in die stable Version überführt.

Das heißt, wenn die Aktualisierung des eigenen Friendica Servers immer auf das branch stable eingestellt ist, dann wird beim nächsten git pull der Server automatisch auf die neuste Version aktualisiert. Wurde zuvor auf z.B. auf das RC 2024.04-RC branch gewechselt, muss natürlich dann aktiv auf das stable branch wieder zurück gewechselt werden. git checkout stable & git pull

Friendica per Git aktualisieren

Bei Friendica gibt es wie beschrieben noch das addon Verzeichnis und zusätzlich noch den Composer, der Abhängigkeiten von bestimmten Softwarebibliotheken verwaltet und sicherstellt, dass die richtigen Versionen auf deinem Server liegen. Daher müssen bei einer Aktualisierung mindestens folgende Befehle eingegeben werden.

Ausgehend dass du dich in deinem deinem Verzeichnis /var/web/MeineDomain/htdocs befindest:

git pull https://github.com/friendica/friendica.git
bin/composer.phar install --no-dev 
cd addon 
git pull https://github.com/friendica/friendica-addons.git 

weitere nützliche Git Befehle

git fetch – Die Liste der Branches vom Repo holen
git checkout <branch name> – Den Branch wechseln
git stash – Local commits “verwerfen”
git checkout -b <NAME> – Lokal einen neuen Branch <NAME> erstellen
git branch -D <NAME> – Lokalen Branch <NAME> löschen
git push origin --delete <NAME> – Den remote Branch <NAME> löschen
git branch -r – Remote Branches anzeigen lassen
git branch -a – Lokale Branches anzeigen lassen
git remote prune origin – Löscht alle lokalen Branches, die auch nicht mehr auf dem remote Repo sind
git gc --auto – Garbage Collection. führt Aufräumarbeiten durch (komprimiert Revisionen, entfernt lose/unzugängliche Objekte). Mit der Option –auto wird zunächst festgestellt, ob Maßnahmen erforderlich sind, und wenn dies nicht der Fall ist, wird das Programm beendet, ohne etwas zu tun.

Falls es zu Fehlermeldungen und größeren Problemen kommt, dann sind folgende Befehle hilfreich. ABER bitte vorher das Handbuch dazu lesen !!! Nicht einfach per Copy n Paste von hier benutzen! Sonst selber schuld!
git reset --hard
git clean -df -x

Views: 6

Vim – Bereiche mit Klammern umschließen


Manchmal ist die Denke einfach zu kompliziert. Da wollte ich in vim einen Bereich möglichst effizient mit runden Klammern versehen und habe eine Weile rum gemurgst, bis ich dann die einfache Lösung gefunden habe:

  1. Bereich auswählen mit v und z.B. $ bis zum Zeilenende
  2. dann c drücken
  3. () schreiben
  4. ESC drücken und
  5. ein großes (shift) P drücken

also v$c()<ESC>P

Und alles ist schön umklammert.

Wenn es egal ist den Bereich visuell zu markieren, dann geht es auch ohne das v und das $ (bis Zeilenende) muss nach dem c eingegeben werden. (Danke Rebeka!)

c$()<ESC>P oder gleich C()<ESC>P

Weitere Varianten wären:

  1. Bis zum nächsten Vorkommen z.B. des Buchstabens “m” cfm()<ESC>P
  2. Vom vorherigem Vorkommen eines “t” bis zum nächsten Vorkommen eines “m” Ftcfm()<ESC>P
  3. Wenn mitten im Wort gestartet wird, das natürlich auch umklammert werden soll, als erstes ein b tippen z.B. bC()<ESC>P
  4. Die nächsten 3 Worte c3w()<ESC>P oder eben bc3w()<ESC>P

Weitere hyperblog Artikel zum Thema

vim

Views: 25

Vim Zeitgeschichte – Time Table

Ich bin letztens über einen Artikel auf pikuma.com über die Vor- und Geschichte von Vim gestolpert, den ich auch weiter unten in den Quellen verlinkt habe. Ich fand die Geschichte über die Entstehung des Editors Vim und seiner Vorgänger so beeindruckend, dass ich für mich eine Zeittafel zusammengestellt habe, wann wer was gemacht hat.

Das ist schon sehr krass, dass Vim 1988 auf dem Amiga begonnen und am 02.11.1991 in der Version 1.14 über die Disketten Distribution Fred Fish Disk #591 verteilt wurde. Und dass der Ursprung dieses Editors jetzt über 55 Jahre zurück liegt.

Am Beeindruckendsten ist eigentlich die hohe Qualität, der riesig große Funktionsumfang, die Verfügbarkeit auf so vielen Plattformen, die unglaubliche Geschwindigkeit und die extrem resourcenschonenden Eigenschaften, alles vereint in einem unscheinbar wirkenden Editor.

Wenn ihr die Details zur Geschichte wissen wollt, dann lest den englischen Artikel auf pikuma.com (in den Quellen unten). Dort sind auch alle wichtigen Informationen nochmal verlinkt.

  • 1968 – ed von Ken Thompson
  • 1973 – em von George Coulouris
  • 1973 – en & ex von Bill Joy und Chuck Haley
  • 1977 – Bill Joy entwickelte den Visual Mode VI in ex . Viele der vi shortcuts und Navigationstasten, die bis heute benutzt werden, basieren auf dem DM-3A keyboard Layout.
  • 1979 – In BSD Unix wird ein vi hard link auf den ex Visual Mode gesetzt (Mai 1979 )
  • 1987 – Steve für Atari von Tim Thompson
  • 1988 – Start an den Arbeiten von Vi IMitation 1.0 von Bram Moolenaar on Amiga
  • 1990 – Elvis von Steve Kirkendall
  • 1991 – Vim “Vi IMitation” v1.14 von Bram Moolenaar erscheint 02.11.1991 auf dem Amiga auf Fred Fish disk #591
  • 1993 – Der Name wurde auf "Vi iMproved" mit dem Erscheinen der Version v1.22 von Bram Moolenaar geändert. Außerdem erscheint ein Port für Unix
  • 1994 – Vim 3.0 Feature: Multiple windows
  • 1996 – Vim 4.0 Feature: Graphical User Interface
  • 1998 – Vim 5.0 Feature: Syntax highlighting
  • 2001 – Vim 6.0 Feature: Folding and multi-language
  • 2006 – Vim 7.0 Feature: Spell checking support – Intelligent completion – Tab pages – Undo branches – Browsing remote directories, zip and tar archives
  • 2007 – Vim 7.1 Feature: Bug Fix Release
  • 2008 – Vim 7.2 Feature: floating point support
  • 2010 – Vim 7.3 Feature: Persistent undo and undo for reload – Blowfish encryption, encryption of the swap file – Conceal text – Lua interface – Python 3 interface
  • 2013 – Vim 7.4 Feature: A new, faster regular expression engine. – More than a thousand fixes and small improvements.
  • 2016 – Vim 8.0 Feature: Asynchronous I/O support, channels, JSON – Jobs – Timers – Partials, Lambdas and Closures – Packages – New style testing – Viminfo merged by timestamp – GTK+ 3 support – MS-Windows DirectX support
  • 2018 – Vim 8.1 Feature: Bug Fix Release
  • 2019 – Vim 8.2 Feature: Popup Windows
  • 2022 – Vim 9.0 Feature: Vim9 Script
  • 20. Februar 2022 – Todestag von Sven Guckes, längster Projektbegleiter und Registrierer der Domain vim.org
  • 03. August 2023 – Todestag von Bram Moolenaar, der Vim ins Leben gerufen hat
  • 2024 – Vim 9.1 Feature: Classes and objects for the Vim9 scripting language & Smooth scrolling

Abfrage in Vim für die Features einer bestimmten Version
z.B. :help version-7.2

Quellen

  1. https://de.wikipedia.org/wiki/Vim
  2. https://en.wikipedia.org/wiki/Vim_(text_editor)
  3. https://github.com/vim/vim-history
  4. https://en.wikipedia.org/wiki/Elvis_(text_editor)
  5. https://en.wikipedia.org/wiki/ADM-3A
  6. https://en.wikipedia.org/wiki/Ex_(text_editor)
  7. https://en.wikipedia.org/wiki/Ed_(text_editor)
  8. http://www.eecs.qmul.ac.uk/~gc/history/
  9. https://pikuma.com/blog/origins-of-vim-text-editor
  10. https://de.wikipedia.org/wiki/Bram_Moolenaar
  11. https://www.heise.de/news/Vim-Versteher-und-Kommandozeilenerklaerer-Sven-Guckes-ist-tot-6511004.html
  12. https://www.heise.de/news/Zum-Tode-Bram-Moolenaars-Vim-Koryphaee-Weltenbummler-und-Spendensammler-9235897.html

Weitere hyperblog Artikel zum Thema

vim

Views: 6

Vim – mit Tabs fensterln

Ein Buffer (Puffer) ist der im Arbeitsspeicher befindliche Text einer Datei.
└- Ein Fenster (Window) ist ein Ausschnitt (Viewport) aus einem Buffer.
└— Eine Tab-Seite (Tab) ist eine Sammlung von Fenstern.

Hilfe :help tab-page
Kommando: <none>

Öffnen

  • tabnew <NAME> Neues Tab (Buffer)
  • tabf <NAME> Find – sucht im aktuellen Verzeichnis nach einer Datei. Tabulator Completion funktioniert
  • tab <VIM BEFEHL> öffnet ein neues Tab und führt einen Vim Befehl aus z.B. :tab help tab-pages

Mit einem neuen Tab kann auch gleich eine bestehende Datei geladen werden, indem mit dem Befehl der Dateiname mitgegeben wird.

Mehrere Dateien können als Tabs direkt bei Aufruf von vim mit dem Parameter -p geladen werden

vim -p Datei1 Datei2 Datei3 Datei4

Standardmäßig können 10 Dateien gleichzeitig geladen werden. Dieses Maximum kann verkleinert oder erweitert werden mit der Direktive :set tabpagemax=<NUMMER> oder in der vimrc mit set tabpagemax=<NUMMER>

Schließen

  • tabclose Schliesst das Tab. Mit einem ! Ausrufezeichen, wenn Änderungen nicht gespeichert werden sollen
  • :q
  • Strg+w q funktioniert nur, wenn nichts geändert wurde
  • tabonly Schliesse alle anderen Tabs außer dem aktuellen Tab

Navigation

  • Strg+BildRunter / Strg+BildHoch Tab wechseln rechts/links. Tipp: 2+Strg+BildRunter
  • gt / :tabn zum nächsten Tab rechts wechseln (next). Tipp: 5gt springt 5 Tabs nach rechts
  • gT / :tabp zum vorherigen Tag links wechseln (previous)
  • :tabs zeigt eine Übersicht aller Tabs

Reihenfolge

  • :tabm / :tabmove verschiebt das aktuelle Tab ganz nach rechts
  • :tabm <NUMMER> verschiebt das aktuelle Tab aun die Postion von NUMMER. Fängt bei 0 an !

Weitere Infos

  • :set showtabline=<NUMMER> 0 = Tabline ausblenden, 1 = automatisch, 2 = immer einblenden
  • :tabdo Einen Befehl für alle offenen Tabs ausführen. Zum Beispiel :tabdo %s/foo/bar/g

Weitere hyperblog Artikel zum Thema

vim

Views: 8

Vim – Windows

Ein Buffer (Puffer) ist der im Arbeitsspeicher befindliche Text einer Datei.
└- Ein Fenster (Window) ist ein Ausschnitt (Viewport) aus einem Buffer.
└— Eine Tab-Seite (Tab) ist eine Sammlung von Fenstern.

Hilfe :help windows
Kommando :wincmd Strg+w

Die aktuelle Ansicht in mehrere Fenster aufteilen.

Detailliertere Informationen und weitere alternative Befehle sind in der Hilfe zu finden

Teilen & Neu

  • Strg+w s / :sp / :split Fenster horizontal teilen (gleicher Inhalt/Buffer)
  • Strg+w v / :vs / :vsplit Fenster vertikal teilen (gleicher Inhalt/Buffer)
  • Strg+w n / :new Fenster horizontal teilen und neues Dokument (leerer Buffer) erstellen
  • :vne / :vnew Fenster vertikal teilen und neues Dokument (leerer Buffer) erstellen

Schliessen

  • Strg+w q / :q Fenster schließen.
  • Strg+w o / :on / :only schließt alle anderen Fenster, ausser das aktuelle Fenster
  • Es gibt noch viele weitere Parameter zum Fenster schließen

Navigation

  • Strg+w Pfeiltasten Zwischen den Fenstern wechseln. Es gehen auch die Vim Cursor
  • Strg+w p Zum letzten Fenster zurück wechseln
  • Strg+w r / Strg+w R Fenster durchrotieren runter/rechts und hoch/links

Größe

  • Strg+w = Alle Fenster gleich groß machen
  • Strg+w - Das aktuelle Fenster um 1 vertikal kleiner machen. Strg+w 5 - um 5 kleiner machen
  • Strg+w + Das aktuelle Fenster um 1 vertikal größer machen
  • Strg+w _ Das aktuelle Fenster vertikal maximieren. Alle anderen Fenster so klein wie möglich machen
  • Strg+w < Das aktuelle Fenster um 1 horizontal kleiner machen. Strg+w 7 < um 7 kleiner machen
  • Strg+w > Das aktuelle Fenster um 1 horizontal größer machen
  • Strg+w | Das aktuelle Fenster horizontal maximieren
  • In einer grafischen Oberfläche lassen sich die Fenster am Rahmen mit der Maus kleiner und größer machen

Weitere hyperblog Artikel zum Thema

vim

Views: 5

Android Apps 2024, App Store F-Droid & IzzyOnDroid

Für Android gibt es nicht nur den Play Store um Apps zu installieren, es gibt schon seit vielen Jahren den alternativen App Store F-Droid , der als Schwerpunkt trackerfreie und Opensource Software hat, die es teilweise auch gar nicht im Google Playstore gibt.

F-Droid kann nicht über den Google Play Store installiert werden (Grund). Damit F-Droid installiert werden kann, muss im Telefon die Installation aus “unsicheren Quellen” zugelassen werden. Das ist nicht weiter schlimm, solange man nicht anfängt von irgendwelchen ominösen Webseiten Android APKs runter zuladen und zu installieren.

Wenn das soweit erledigt ist, kann mit einem QR Code Scanner F-Droid direkt von der Webseite installiert werden oder wenn kein QR Code Scanner zur Hand ist auch per Internetbrowser über den Download Link auf dieser F-Droid Seite installiert werden.

Die F-Droid funktioniert als Management App für verschiedene Repositories. Repositories sind Download Quellen für App Sammlungen. Standardmäßig ist das Repository von F-Droid integriert, womit der Zugriff eine große Sammlung von weiteren Apps zur Verfügung steht. Aber wie schon erwähnt gibt es weitere Repositories, die hinzugefügt werden können. Im Normalfall ist das nicht notwendig.

In meinem Falle war ich interessiert an der Android App “PDF Doc Scan” mit der das Smartphone zu einem einfachen PDF Scanner erweitert wird. Den Tipp für diese App habe ich bei onli blogging im Artikel “Meine Appliste für Android (2023, F-Droid)” gefunden.

Android App Liste 2024

Hier meine Liste für 2024 von Android Apps, die ich gerne benutze.
F-Droid und IzzyOnDroid F-Droid Repository sind vorausgesetzt und auch wenn die App im Google Playstore verfügbar ist, so würde ich empfehlen die Versionen aus dem F-Droid Store zu bevorzugen. Da diese meist besser die Privatsphäre schützen.

AntennaPod – Podcast

Die beste Podcast App für Android die es gibt! Ich mag an dieser App, dass sie so unglaublich effizient aufgebaut ist und viele der Funktionen sehr an das Benutzerverhalten angepasst sind und dabei noch super aussieht. Wer auf ein bisschen Schickimicki steht, findet auch hier ein paar Statistiken, die hübsch aufgemacht sind. AntennaPod

Audile – Musik Erkennungs-App

Als Alternative zu Shazam benutze ich die Audile App Audile

Audio Recorder

Für Audioaufnahmen (Sprach Memos, einfaches Field Recording) benutze ich den Audio Recorder. Er hat eine schöne funktionale Übersicht, ohne viel Klimbim. Für die Aufnahmen können verschiedene Formate (Flac, wav, mp3, Opus, m4a), Mono/Stereo, alle möglichen Sampleraten und Samplefrequenzen ausgewählt werden. Ich würde mir noch wünschen, dass ich auch in 32Bit float aufnehmen könnte, aber vielleicht kommt das ja noch, oder ich finde eine zusätzliche oder andere App. Audio Recorder

Element – Messenger

Element ist ein dezentraler Messenger für alle Plattformen für Nachrichten aller Art, Sprachnachrichten, Sprach & Video Calls und etliche mehr Features wie zusätzliche Widgets und Bots. Element.io

Etar – Kalender

Ich habe lange diverse Kalender ausprobiert und bin schließlich bei Etar gelandet. Das Killerfeature, das mich überzeugt hat und das ich bei keiner anderen Kalender App gefunden habe ist, dass ich Benachrichtigungen oder Notifications NACH Beginn eines Termins knüpfen kann. So kann ich z.B. bei einem Einstündigen Termin nach einer halben Stunde oder 45 Minuten einen Alarm ausgeben lassen. Ein kleines Feature, aber unglaublich hilfreich für mich. Etar

Firefox – Internet Browser

Versteht sich von selbst! Zusätzlich benutze ich noch die Addons Privacy Badger, uBlock Origin und Canvasblocker um mir die Tech Stalker ein wenig vom Hals zu halten. Mir ist es auch ehrlich gesagt ein Rätsel, wie Menschen es schaffen, ohne kontinuierlich schreien zu müssen, ohne solche Blocker im Internet surfen zu können. Mozilla Firefox

Fossify Gallery – Bilder Galerie

Eine einfache und schnelle Foto Galerie, ohne zusätzlichen Hipsterkram, Cloud, Online, Anmeldung, Pseudo-KI Quatsch . Fossify Galery

KDEConnect

KDEConnect ist das Beste seit geschnitten Brot! Damit lassen sich Smartphones untereinander und Smartphones mit dem Computer per WLAN verbinden. So können Daten, Dateien, die Zwischenablage ausgetauscht werden. Das Smartphone stoppt die Medienwiedergabe, wenn ein Anruf rein kommt oder getätigt wird. Ferneingabe und Präsentationssteuerung und einiges mehr. Wie gesagt: Das Beste seit geschnitten Brot! KDEConnect

Librera Reader – PDF

Für mich der beste freie PDF Viewer, der noch viele weitere Formate unterstützt: PDF, EPUB, MOBI, DjVu, FB2, TXT, RTF, AZW, AZW3, HTML, CBZ, CBR, DOC, DOCX, etc. Librera Reader

Newpipe – YouTube

Stressfrei YouTube Videos anschauen, runterladen, konvertieren. YouTube

Nextcloud – Cloud

Nextcloud ist ein umfassendes Cloud System mit vielen weiteren Apps, das auch selbst gehostet werden kann. Auf dem Smartphone nutze ich hauptsächlich die Nextcloud App recht intensiv. Nextcloud

Open Camera – Foto & Video

Eine sehr umfangreiche Foto & Video App Open Camera

Organic Maps – Karten & Navigation offline

Ich kopiere mal einen Teil der Beschreibung von der Webseite, weil ich es nicht besser beschreiben könnte: Organic Maps ist eine freie und kostenlose Offline-Karten-App für Android und iOS für Reisende, Touristen, Wanderer und Radfahrer, die auf den Daten von OpenStreetMap basiert. Es handelt sich um eine datenschutzfreundliche, quelloffene Abspaltung der Maps.me-App (früher bekannt als MapsWithMe), die von denselben Leuten gepflegt wird, die MapsWithMe im Jahr 2011 erstellt haben. Organic Maps ist heutzutage eine der wenigen Apps, die 100% ihrer Funktionen ohne aktive Internetverbindung unterstützt. Installiere Organic Maps, lade Karten herunter. Organic Maps

OSS Document Scanner

Ganz frisch im IzzyOnDroid Repository aufgetaucht und bietet noch mehr Funktionen als PDF Doc Scan. Zusätzlich noch Filter, um das Scan Ergebnis zu verbessern und eine offline OCR Funktion (entsprechende Sprachen werden automatisch runtergeladen) und kann ein PDF mit überlagertem Text für die Volltextsuche speichern. OSS Document Scanner

PDF Doc Scan – Scanner

Eine App mit der die Kamera eines Smartphones in einen Scanner umgewandelt werden kann und damit sehr einfach Dokumente durch fotografieren eingescannt und als PDF umgewandelt werden kann. PDF Doc Scan

SecScanQR – QR Code Scanner & Creator

QR Codes sind schon recht alt und erst so langsam kommen sie bei vielen Menschen erst an. Sie ermöglichen es extrem einfach Informationen visuell zu übertragen. Ob als Info auf einem Plakat oder Einblendung in einem Video, von dem ein Screenshot gemacht weden kann oder beim direkten Adressenaustausch von Smartphone zu Smartphone, wenn man sich gegenübersteht. SecScanQR

Transistor – Simple Radio-App

Transistor ist eine App zum Hören von Radiosendern über das Internet. Transistor

Tuner

Stimmgerät App zum Beispiel zum Stimmen einer Gitarre Tuner

VLC – Player

VLC kennt vermutlich jeder, weil er auf jeder Plattform verfügbar ist und alles was es so an Formaten gibt klaglos abspielt. Prädikat: Bester Player wo gibt VLC

Viel Spaß damit!

Weitere hyperblog Artikel zum Thema

Firefox

Views: 10

LibreOffice: Suchen&Ersetzen – Mit RegEx Hashtags markieren

Da ich meine Notizen nicht direkt in LibreOffice schreibe und ich gerne Hashtags nutze und ich diese etwas anders formatieren muss, habe ich nach einer Möglichkeit gesucht, wie ich in LibreOffice diese suchen und markieren kann, so dass ich sie mit einer Formatvorlage versehen kann. Aber alles der Reihe nach.

Ich schreibe meine Texte normalerweise in Markdown. Weil das extrem schnell, mit jedem Editor und auf jedem Gerät dieser Erde, auf dem Texte eingeben werden können funktioniert. Markdown ist im Prinzip nur Text. Wer mehr darüber wissen will, findet hier in der Wikipedia schon mal einen guten Einstieg.

Kurzer Ablauf in einzelnen Schritten

  1. Ich schreibe meinen Text in Obsidian (Markdown Suite) und versehe ihn mit Hashtags wie z.B. #english #deutsch #himmel und #hölle
  2. Dann exportiere ich den Text mit “Export to” nach OpenOffice. Wobei OpenOffice hier für das Dateiformat ODT (Open Document Text) steht. Ich benutze aber kein OpenOffice, sondern das modernere LibreOffice
  3. In LibreOffice definiere ich eine neue Zeichenvorlage für meine Hashtags, damit alle Hashtags das gleiche Aussehen haben
  4. Dann öffne ich im LibreOffice Menü “Bearbeiten” den Dialog “Suchen und Ersetzen” (Strg+Alt+F)
  5. Dort gebe ich im Suchen Feld \#[:alpha:]+ ein (siehe Screenshot unten)
  6. klicke auf “Reguläre Ausdrücke”
  7. klicke dann auf “Alle suchen”
  8. Jetzt werden alle Hashtags markiert, ohne dass Leerzeichen oder andere Wörter dazwischen mitmarkiert werden.
  9. Ich schließe den Suchen und Ersetzen Dialog und doppelklicke auf die Hashtag Zeichenvorlage
Suchen und Ersetzen Dialog von LibreOffice

RegEx erklärt

Eine kurze Erklärung was der Reguläre Ausdruck genau macht. Dafür zerlege ich ihn in die Einzelteile

\#[:alpha:]+
  • \# definiert das Zeichen # . Das Kreuz ist bei den RegEx normalerweise ein Befehl, so dass ich dem Programm sagen muss, dass es nicht der Befehl ist, den ich hier angebe, sondern nur das Zeichen. Dafür muss ich einen Backslash \ , ein sogenanntes ESCAPE Zeichen vorweg stellen. Mehr weiter unten in den Quellen.
  • [:alpha:] heißt, dass nur alphanumerische Zeichen a-Z und 0-9 vorkommen dürfen
  • + so oft wie sie vorkommen

Ausgeschrieben heißt das

Suche nach einem Wort, das mit einem # anfängt und dann nur noch alphanumerische Zeichen hat und zwar egal wie viele. Und nichts anderes! Folgt danach ein Komma oder ein Leerzeichen oder ein Zeilenumbruch oder ein Tab oder irgendein anderes Zeichen, das nicht in [:alpha:] vor kommt, ist die Suche beendet. Dadurch dass ich im Dialog “Alle suchen” angeklickt habe, wird diese Suche auf den gesamten Text angewandt.

Quellen

Views: 1

PDF Inhaltsverzeichnisse (TOC) erstellen

Ein Plädoyer gegen die Hyperlink Ignoranz

Das Wunderbare an digitalen Medien wie PDF Dateien ist, dass sie mit Strg+f durchsuchbar sind und dass sie ein klickbares Inhaltsverzeichnis und Index haben. Aber leider viel zu oft haben sie das nicht. Manchmal werden Dokumente ausgedruckt und als Bild wieder eingescannt und somit ist der Text nicht mehr verfügbar. Der entsprechende Haken Beim Export nach PDF für ein klickbares Inhaltsverzeichnis wird einfach nicht gesetzt und der Index wird oft auch nur “ausgedruckt”. Seit der großen Verbreitung des World Wide Webs haben wir die Hyperlinks schätzen gelernt und dass ein Klick so viel effizienter sein kann, als das mühsame Blättern durch Dokumente an die richtige Stelle.

Es ist einfach extrem ärgerlich, wenn Handbücher nichts davon enthalten. Mit Handbüchern arbeite ich. Heißt: ich springe von Stelle zu Stelle, muss die Suche benutzen, damit ich mir nicht ein ganzes Buch im Kopf merken muss. Leider gibt es immer noch neu erscheinende Dokumente, die aus einem Prä-Internet Zeitalter zu kommen scheinen. Und wenn einem nichts anderes übrig bleibt, als diese Dokumente zu nutzen, kann man sich beim Durcharbeiten eines kleinen kostenlosen Opensource Tools von 2011 bedienen und das Inhaltsverzeichnis (PDF Bookmarks) selbst setzen.

Am liebsten hätte ich gleich noch eine Webresource, auf der ich meine Arbeit mit anderen teilen könnte. Gar nicht mal das Dokument selbst, denn die unterliegen oft gewissen Copyright Rechten. Aber die Meta Info. Die Arbeit, die ich mir machen musste, weil jemand den Haken beim Export nicht gefunden hat.

Der Tool – JPDFBookmarks

Das kostenlose Opensource Programm von 2011 ist in Java geschrieben und läuft unter Linux und Windows. Für Mac weiß ich das leider nicht.
Die Nutzung ist sehr einfach. Die PDF Datei wird einfach rein geladen und wenn ein Eintrag im Inhaltsverzeichnis erstellt werden soll, dann muss nur ein Bookmark Strg+Alt+s erzeugt werden. Soll ein Unterpunkt erzeugt werden, dann Strg+Alt+f . Dabei speichert das Bookmark nicht nur die Seite, sondern auch auf welcher Höhe der Seite das Bookmark ist. So macht es Sinn z.B. die Kapitel Überschrift auf dem Bildschirm auszurichten und dann erst das entsprechende Bookmark zu setzen.

JPDFBookmarks Ein absolut einfach zu bedienendes Programm, das du hier finden und runterladen kannst http://flavianopetrocchi.blogspot.com/2008/07/jpsdbookmarks-download-page.html

Falls das Programm unter Linux nicht starten sollte, musst du nur (unter Ubuntu) das Paket “default-jre” installieren.

Und Bitte!

Erstellt in euren PDFs immer ein klickbares Inhaltsverzeichnis und einen Index. Wir haben schließlich das Jahr 2023. Die überleben wollen …

Danke.

Views: 1

Vim-Zeilenspielereien – Join

Zeilen zusammenfügen oder teilen in allen Variationen.
Der Befehl dafür heißt JOIN

Anmerkung: Groß-/Kleinschreibung ist wichtig. Großbuchstaben werden nicht extra mit einem SHIFT hervorgehoben

Join zwei Zeilen zusammenführen J mit Leerzeichen

J – Sollen zwei Zeilen, die durch einen Zeilenumbruch getrennt wurden zusammengeführt werden, so kann in der oberen Zeile einfach ein großes J gedrückt werden. Das führt dazu, dass die untere Zeile nach oben geholt UND mit einem Leerzeichen Abstand an die aktuellen Zeile angehängt wird.

Im Befehlsmodus – :join!
Suchmuster – :g/pattern/join

Join ohne Leerzeichen gJ

gJ – Soll die untere Zeile ohne Leerzeichen an die aktuelle Zeile angehängt werden, so lässt der Befehl gJ das Leerzeichen weg.

Visual Join – Mehrere Zeilen verbinden v+Motion+J

Join kann auch mit der Visual Markierung v und Motion Befehle benutzt werden.

v + Motion + J oder gJ für mit oder ohne Leerzeichen

Beispiele

  • Befehl v4kJ
    • v startet den visuellen Modus in der aktuellen Zeile
    • 4 wird das nächste Kommando 4x wiederholen
    • k eine Zeile hoch (und das dann 4x)
    • J und verbinde diese 4 Zeilen miteinander

  • Befehl v5jgJ
    • v startet den visuellen Modus in der aktuellen Zeile
    • 5 wird das nächste Kommando 5x wiederholen
    • j eine Zeile runter (und das dann 5x)
    • g der Befehl JOIN soll keine Leerzeichen hinzufügen
    • J und verbinde diese 5 Zeilen miteinander ohne zusätzliche Leerzeichen

Hilfe

Eine ausführlichere Hilfe findet sich in Vim unter :help J

Weitere hyperblog Artikel zum Thema

vim

Views: 8

Touchpad effizient nutzen – Touchegg & Touché

Funktioniert nicht unter Wayland.

Ein Werkzeug effizient nutzen zu können, ist die Grundlage sich ganz auf den Inhalt konzentrieren zu können. Ein Grund warum ich z.B. den Editor Vim gerne mag, weil mit ihm Test hocheffizient bearbeitet werden können. Aber das ist eine andere Geschichte.

Effizienz heisst auch, bei einer Eingabemethode bleiben zu können und nicht ständig die Eingabegeräte zu wechseln. So ist der Wechsel von Tastatur zu Maus oder Touchpad immer eine Unterbrechung. Nicht nur im motorischen Ablauf, sondern eben auch in der Konzentration.
Also bei der Eingabe ausschliesslich auf der Tastatur bleiben zu können, oder bei der Nutzung der Maus oder des Touchpads nur auf diesen Geräten bleiben zu können, hat viele Vorteile.

Für das Touchpad gibt es die Programme Touchegg, das die Erkennung von Gesten mit mehreren Fingern und Steuerung von Befehlen verwaltet, und Touché mit dem die Einstellungen komfortabel eingerichtet werden können.

Beides ist für viele Linuxsysteme verfüg- und installierbar. Für Ubuntu ist die Installation extrem einfach.

Touchegg (der Dienst) gibt es hier https://github.com/JoseExposito/touchegg und die Installation wird sehr gut beschrieben. Im wesentlichen läuft sie so ab

sudo add-apt-repository ppa:touchegg/stable
sudo apt update
sudo apt install touchegg

Damit ist der Dienst installiert und gestartet.

Jetzt nur noch Touché installieren. Bei Touchegg wird auf die Seite hingewiesen https://github.com/JoseExposito/touche . Touché wird als Flatpak über Flathub installiert. Wer nicht weiß, wie das geht sucht auf dieser Seite https://flathub.org/setup seine Distribution raus. Achtung! Es wird zwischen Ubuntu und z.B. Kubuntu unterschieden. Also ruhig lieber genauer suchen und dann der Installationsanleitung folgen.

Also wenn Flathub integriert ist, kann Touché ganz einfach installiert werden. Bei meinem KDE öffne ich dazu einfach das Programm Discover und gebe in der Suche Touché ein und drücke auf installieren. Warten. Fertig. Das Programm starten.

Jetzt können Touchgesten konfiguriert werden. Und zwar

  • 2 Finger Kneifgesten
  • 3 Finger Wischgesten
  • 4 Finger Kneifgesten
  • 4 Finger Wischgesten
  • Nur auf Touchscreens: Tippgesten für 2 und 4 Finger

Verfügbar sind folgende Optionen für eine ausgewählte Geste, die wohl so ziemlich fast alles abdecken, was so gebraucht werden könnte.

Meine Konfiguration sieht aktuell folgendermaßen aus. Eine Kombination aus “Es ist praktisch, aber nicht zu viel, was ich mir merken muss”

2 Finger kneifen Rein = Vollbildmodus an/aus
2 Finger kneifen Raus = Maximieren und zurück

3 Finger wischen hoch = Alle Fenster auf dem Desktop anzeigen / Fensterwechsler
3 Finger wischen runter = Minimieren
3 Finger wischen rechts = Programm beenden
3 Finger wischen links = Strg+w … in den meisten Programmen das Tab schliessen.

4 Finger wischen Hoch = Neues Dokument Strg+n
4 Finger wischen Runter = Speichern Strg+s

Views: 4

Tuxedo OS und Nextcloud Desktop Client

Praktischerweise ist der Nextcloud Desktop Client in den Quellen enthalten. Tuxedo OS hat als grafischen Desktop KDE als Grundlage. Der Nextcloud Client greift aber auf eine Technologie zur Speicherung von Authentifikationen zurück, die in einem Paket von GNOME, der andere große grafische Desktop. Das ist standardmäßig nicht installiert.

Das hat zur Folge, dass jedes Mal, wenn der Rechner neu gestartet wird, hat der Nextcloud Client vergessen, dass er schon authentifizier ist und fordert erneut eine Authentifikation an. Kann man mögen, muss man aber nicht.

Damit der Nextcloud Desktopclient nur einmal für immer authentifiziert werden kann, muss noch zusätzlich das Paket gnome-keyring installiert werden.

Das kann ganz fix in der Konsole oder einem Terminal gemacht werden mit dem Befehl

sudo apt install gnome-keyring

Dann nur noch einmal authentifizieren. Den Dialog mit dem gnome-keyring durchspielen. Und das war es schon.

Kleine Anmerkung, aber keine Empfehlung: Wer beim Gnome-Keyring, ein Passwort eingibt, muss auch nicht jedes Mal beim Start des Systems ein Passwort eingeben. Allerdings die Authentifizierung dann auch nicht mehr geschützt. Bequemlichkeit gegen Sicherheit. Beides ist legitim. Es sollte nur gewusst werden.

Views: 2

Obsidian – PDF Export mit TOC

Für meine digitalen Notizen und Handbücher verwende ich seit längerer Zeit nur noch Markdown Textdateien. Aus Resilienz Gründen, um mit allen möglichen Programmen an meinen Daten arbeiten zu können und auch noch nach Jahren darauf zugreifen zu können, wenn es diverse Programme nicht mehr gibt.

Dazu benutze ich aktuell die Suite Obsidian unter Linux, weil sie mir eine sehr gute Oberfläche und Suche bietet. Ab und zu exportiere ich dann auch die eine oder andere Datei, oder eine Zusammenstellung als PDF Datei.

Der Export nach PDF ist zwar super, aber leider integriert sie kein Inhaltsverzeichnis (TOC: Table of Content). Gerade bei längeren Texten, die bei mir häufiger vorkommen, empfinde ich das als absolut notwendig.

In den Community Plugins, über das Einstellungsmenü von Obsidian, bin ich auch nicht fündig geworden. Aber glücklicherweise hat jemand dann noch ein Plugin geschrieben, das sich Obsidian Better Export PDF nennt und mit einer kleinen Installationsanleitung beschrieben wird.

Nun kann ich direkt PDFs mit wunderbaren Inhaltsverzeichnissen exportieren, ohne den Umweg über Copy n Paste über LibreOffice zu gehen.

Views: 47

Passkey : alter Schuh in neuen zerlöcherten Schläuchen

Seit einiger Zeit wird ein neues “Passwortkonzept” beworben, womit die alten Passwörter nicht mehr notwendig sind. Über dieses “neue” Konzept wird viel gesprochen und viel Unsinn verzapft. Daher kurz zusammengefasst, ohne Bullshit und Buzzword Bingo

Passkey nutzt die Kombination aus

  1. Asymmetrischer Verschlüsselung wie GPG
  2. Biometrie, wie Gesicht, Fingerabdruck
  3. Synchronisation über mehrere Geräte

So gut, wie das jetzt werbetechnisch hier aussieht ist es gar nicht. So ganz gar nicht! Oder noch deutlicher

Das Konzept von Passkey ist sehr schlecht!

Ich erkläre und kommentiere diese drei Punkte in dieser Kritik, damit die massiven Probleme einfacher verstehbar werden.

Asymmetrische Verschlüsselung – GPG

Vorneweg: asymmetrische Verschlüsselung ist sehr gut!
Diese Verschlüsselung gibt es für Endverbraucher schon seit 25/30 Jahren z.B. für Email. GPG/GnuPG (GNU Privacy Guard) oder früher auch die kommerzielle Variante PGP eines Anbieters.

  1. Diese Verschlüsselung funktioniert so, dass mit Hilfe der Software ein Schlüsselpaar generiert wird (z.B. 2 Text-Dateien).
  2. Eine Datei enthält den Privaten/Geheimen Schlüssel und eine Datei enthält den Öffentlichen/Public Schlüssel. Zwei unterschiedliche Schlüssel, daher heißt diese Verschlüsselung asymmetrisch.
  3. Den geheimen Schlüssel muss ich beschützen und sicherstellen, dass niemand diesen Schlüssel in die Hände bekommt. Diesen Schlüssel brauche ich, um Daten, die mit dem öffentlichen Schlüssel verschlüsselt wurden, wieder zu entschlüsseln. Dieser geheime Schlüssel darf also niemals meine “Hände” verlassen.
  4. Ganz im Gegenteil dazu der öffentliche/public Schlüssel. Mit diesem Schlüssel können Daten nur verschlüsselt werden. Nicht entschlüsselt, sondern nur VERschlüsselt werden. Daher kann dieser öffentlich Schlüssel offen verteilt werden, überall gepostet oder irgendwelchen wildfremden Menschen in die Hand gedrückt werden. Das Einzige, was diese machen können ist dann Daten zu verschlüsseln, die nur noch ich mit meinem privaten/geheimen Schlüssel wieder entschlüsseln kann.

Das ist das grundlegende Prinzip von GPG oder asymmetrischer Verschlüsselung.

Biometrie

Auch wenn Biometrie immer wieder in Zusammenhang mit Sicherheit gebracht wird, bleibt es weiterhin absolut falsch.
Folgende Definition ist richtig:

Biometrie = Bequemlichkeit = unsicher

Und auch wenn immer noch auf die Einzigartigkeit von Fingerabdrücken, Augen bzw Iris oder anderen Körpermerkmalen hingewiesen wird, so wird auch immer wieder vergessen, dass wir unsere Fingerabdrücke bei jeder Gelegenheit unzählige Male jeden Tag hinterlassen. Dass unsere Augen, alleine durch die Smartphones zigtausend Mal fotografiert wurden und alle anderen Merkmale, wie Stimme usw überall verfügbar und aufgezeichnet sind.
Biometrie ist Bequemlichkeit und damit das absolute Gegenteil von Sicherheit.

Synchronisation

Synchronisation ist mittlerweile ein allgegenwärtiger Begriff, weil wir viele Geräte besitzen und auf jedem Gerät immer alles auf dem selben Stand halten wollen. Und das möglichst automatisch. Also synchronisieren wir unsere Dokumente, Bookmarks, Bilder, Musik usw über irgendeinen Service. Meist ist es eine Cloud eines externen Anbieters (außerhalb unserer Wohnung, auf der anderen Seite des häuslichen Internetrouters). Das ist bequem. Und wie schon weiter oben geschrieben, ist Bequemlichkeit das Gegenteil von Sicherheit.

Wenn alles zusammen kommt

So, wie passt das jetzt alles zusammen?

GPG oder die asymmetrische Verschlüsselung ist eine super Sache. Sie funktioniert hervorragend und wird auch von vielen Geheimdiensten, Botschaften, JournalistInnen benutzt, um Geheimes erfolgreich geheim zu halten. Bei “geheim halten” muss es sich dabei nicht um Staatsgeheimnisse handeln, es können auch einfach Dinge sein, die einfach Dritte nichts angehen.

Der geheime Schlüssel soll nun also z.B. auf dem Smartphone, auf einem extra Chip (Hardware) als eine Art Safe gespeichert werden, der mit Hilfe von Biometrie (Gesichtserkennung, Fingerabdruck, usw) aufgeschlossen werden kann. Das an sich ist nochmal eine Abhandlung über vorgetäuschte Sicherheit wert, die aber dieses Thema hier absolut sprengen würde.

Dieser “super extra” Hardware Safe soll mit dieser Biometrie Technologie aufgeschlossen werden, die jegliche Sicherheit zugunsten von Bequemlichkeit eliminiert.

Das ist ungefähr so, als würden wir die weltbeste Tür gegen Einbrecher einbauen, sie aber dann aus Bequemlichkeit offen lassen, weil uns der Schlüssel zu schwer ist.

Aber es kommt noch schlimmer. Damit es für uns noch bequemer wird und wir auf allen unseren Geräten (Smartphone, Tablet, Computer, Kaffeeautomat) unsere z.B. Bankgeschäfte machen können, soll nun dieser private Schlüssel auf alle diese Geräte synchronisiert werden. Also auf verschiedene Geräte, die alle unterschiedliche Schwachstellen haben können.

UND: die Synchronisation wird über einen externen Anbieter und deren Cloud durchgeführt. Zwar verschlüsselt, aber der Geheime Schlüssel wird unter Umständen mehrfach quer durch die Welt verschickt, in der Cloud eines Anbieters “zwischengespeichert” oder geBackupt, um dann auf eines unserer Geräte zu speichern. Das unter Umständen vielleicht auch gar nicht über diesen super extra Chip (Safe) verfügt. Der sowieso durch die Biometrie ausgehebelt wird.

Um in dem Bild der weltbesten Tür gegen Einbrecher zu bleiben: Zu unserer nicht mehr sicheren Tür, weil für uns und die Einbrecher bequem, bauen wir jetzt noch mehr solcher Türen in unsere Wohnung ein, die wir offen lassen, damit wir und die Einbrecher von noch mehr Seiten einfacher in die Wohnung kommen.

FAZIT

  1. GPG oder GnuPG bzw asymmetrischer Verschlüsselung ist eine super Sache und wirklich das Sicherste, was schon seit Jahrzehnten genutzt werden kann
  2. Biometrie ist nur Bequemlichkeit und absolut Unsicher
  3. Synchronisation auf mehrere Geräte verringert die Sicherheit zusätzlich und unter Umständen massiv
  4. Synchronisation über einen externen Anbieter oder gar über einen Cloud Anbieter ist das absolute Worst Case Szenario, da der Anbieter den geheimen Schlüssel dann besitzt.
  5. Externe Anbieter haben oft Abkommen mit Diensten, die Zugriff auf diese Daten haben.

So, was aber nun tun um die Passwörter sicher zu halten?
Da hilft leider nur die alte aber immer noch erste Regel der Sicherheit:

Der Grad an Sicherheit ist ausschließlich eine Frage der Höhe des Aufwandes.

Bequemlichkeit ist immer das Gegenteil von Sicherheit und daher ist es gut, sich Gedanken zu machen, wie mit solchen sensiblen Dingen wie z.B. Passwörtern umgegangen wird. Und wem Zugriff darauf gegeben wird.

Ein Anfang ist es sicherlich schon mal GPG zu nutzen und den geheimen Schlüssel selbst zu verwalten und zu sichern. Zum Beispiel in einer einfachen Textdatei. Die natürlich mit GPG verschlüsselt ist und ein komplexes Passwort hat, das wir uns merken und ab und an ändern.

Nützliches & informative Links
  1. Passkey https://de.wikipedia.org/wiki/FIDO2#Passkey
  2. GnuPG https://gnupg.org/
  3. Asymmetrische Verschlüsselung einfach erklärt https://youtu.be/yWrtCtQ7Wno
  4. Gpg4win – Sichere E-Mail- und Datei-Verschlüsselung https://www.bsi.bund.de/DE/Themen/Unternehmen-und-Organisationen/Informationen-und-Empfehlungen/Freie-Software/E-Mail-Verschluesselung/GPG4Win/gpg4win_node.html
  5. Das GNU-Handbuch zum Schutze der Privatsphäre https://www.gnupg.org/gph/de/manual/book1.html
  6. Biometrie wurde vom früheren SPD-Bundesinnenminister Otto Schily forciert und als “sicher verkauft”. Nach seinem Ausscheiden wurde er Aufsichtsratsmitglied in zwei Biometrie-Unternehmen. 1 2 3 4
  7. Synchronisation, Cloud und Serviceanbieter wie Google, Microsoft, Apple, Amazon usw haben regelmäßig (spätestens im Monatsrhytmus) Einbrüche bzw wurden gehackt, oder Totalausfälle bzw Absprachen mit irgendwelchen Diensten, die ihrerseits wieder gehackt werden. 1 2 3 4

Views: 8

Vim-Cheat Sheet

Weitere Vim Artikel hier im Blog.

Vim Modi

Erklärung

Vim ist ein modaler Editor. Dies bedeutet, dass man in unterschiedlichen Modi arbeitet, was Einsteigern oft Probleme bereitet, andererseits aber eine sehr große Zahl von Tastenkürzeln erlaubt, da sich diese an einzelne Modi binden und daher auch mehrfach belegen lassen.
Es gibt sechs Grundmodi. Zusätzlich gibt es noch fünf weitere Grundvarianten der Grundmodi.

Normalmodus ESC

Vim startet im Normalmodus, oft auch als Kommando- oder Befehlsmodus bezeichnet. Hier kann man über Tastenkürzel zum Beispiel Zeilen kopieren und verschieben oder Text formatieren. Dies ist der zentrale Modus, von dem in alle anderen Modi gewechselt wird. Durch das zweifache Drücken der Esc-Taste gelangt man immer in den Normalmodus zurück.

Der Punkt . wiederholt immer den letzten eingegebenen Befehl.

Einfügemodus / Insert

Im Einfügemodus verändern Tastatureingaben den editierten Text, so wie man es von anderen Editoren kennt. Man erreicht diesen Modus vom Normalmodus aus zum Beispiel über i (für engl. insert = einfügen).

Kommandomodus / Command

Vom Normalmodus ausgehend! Dieser Modus wird durch den einleitenden Doppelpunkt : erreicht. Hinter dem Doppelpunkt können dann komplexe Kommandos wie beispielsweise zum Suchen und Ersetzen eingegeben werden. Nach dem abschließenden Enter “Eingabetaste” wird der Befehl ausgeführt und man befindet sich wieder im Normalmodus. Zu diesem Modus zählen des Weiteren die Kommandos / (Textmuster vorwärts suchen), ? (Textmuster rückwärts suchen) und das Filter-Kommando !, mit dem die UNIX-Kommandos “UNIX-Kommandos” (zum Beispiel sort) aufgerufen und auf den Text angewandt werden können.

Vim Normalmodus ESC ESC

Vim beenden & speichern (Kommandomodus)

  • :q beenden (quit)
  • :q! , :cq, SHIFT + ZQ beenden ohne zu speichern trotz Änderungen (cancel)
  • :wq , SHIFT + zz speichern (write) und beenden
  • :w aktueller Inhalt in Datei speichern
  • :w FILE.TXT speichert den Inhalt des Editors in die Datei FILE.TXT
  • :w !sudo tee FILE.TXT speichert die Datei mit dem vorangehenden sudo Aufruf

Multiplikator

:help motion-count-multiplied

Zu einem Befehl kann noch eine Zahl eingegeben werden, dann wird der Befehl entsprechend oft wiederholt.
Beispiele

  1. Wurde eine Zeile mit yy (yank) in den Zwischenspeicher kopiert, dann wird sie mit 5p 5x darunter eingefügt.
  2. Sollen die nächsten 7 Zeichen rechts gelöscht werden : 7x
  3. Sollen ab der aktuellen Position die nächsten 3 Wörter gelöscht werden: 3dw
  4. Soll ab der aktuellen Position mitten in einem Wort, insgesamt 3 Wörter gelöscht werden: 3diw (3x Delete Include Word)
  5. Soll ab der aktuellen Position mitten in einem Wort, insgesamt 3 Wörter gelöscht werden und gleich in den Eingabemodus gewechselt werden: 3ciw (3x Change Include Word)
  6. Die nächsten 10 Zeilen löschen: 10dd
:help motion
:help scroll-cursor
  • Pfeiltasten , hjkl links, runter, hoch, rechts . Die Pfeiltasten hjkl sind sehr wichtig bei der Nutzung von Multiplikatoren.
  • j und k bei diesen runter und hoch “Movement” Bewegungs-Tasten ist noch wichtig zu wissen, dass sie immer Zeilenweise interpretiert werden. Wenn also eine Multiline, also eine Zeile, die wegen ihrer Länge mehrfach umgebrochen wird, vorhanden ist, dann springt der Cursor visuell mehrere Zeilen runter oder hoch! Aber soll der Cursor visuell zwischen den Zeilen bewegt werden und damit im Prinzip innerhalb EINER Zeile, so geht das mit der zusätzlichen Taste g und damit mit gj und gk . Hier ist visuell nicht mit dem VISUAL Mode von vim zu verwechseln.
  • gj / gk Zeilenweise runter oder Zeilenweise hoch bei umgebrochenen Zeilen. Beispiel: g4j springt 4 visuelle Zeilen runter und g7k springt 7 visuelle Zeilen hoch
  • g0 / g$ analog zum an den Anfang / Ende der visuellen Zeile zu springen
  • Bild hoch , Bild runter Eine Seite hoch / runter
  • Pos1 , 0 an den Zeilenanfang springen
  • ^ springt an den Zeilenanfang auf das erste Zeichen, das kein Leerzeichen oder Tab ist
  • Ende , $ an das Zeilenende springen
  • w ein Wort nach rechts springen (Wortanfang)
  • e an das Ende eines Wortes, auf den letzten Buchstaben springen (Wortende)
  • b ein Wort nach links springen (Wortanfang)
  • ) einen Satz vorwärts springen
  • ( einen Satz rückwärts springen
  • SHIFT + h zur ersten Zeile des aktuellen Fensters springen
  • SHIFT + m in die Mitte des aktuellen Fensters springen
  • SHIFT + l in die letzte Zeile des aktuellen Fensters springen
  • STRG + d einen halben Bildschirm runter blättern (down)
  • STRG + u einen halben Bildschirm hoch blättern (up)
  • gg an den Datei Anfang springen
  • SHIFT + g an das Datei Ende springen
  • : + ZAHL springt in die Zeile ZAHL
  • f + ZEICHEN springt zum nächsten Vorkommen des Zeichens
  • SHIFT+ f + ZEICHEN springt zum vorherigen Vorkommen des Zeichens
  • z + ENTER oder zt aktuelle Zeile in die erste Zeile des Displays scrollen (top)
  • zz oder z. aktuelle Zeile in die Mitte des Bildschirms scrollen
  • z- oder zb aktuelle Zeile an den unteren Rand scrollen (bottom)

Marks (Bookmarks)

:help bookmark

Bookmarks sind einzelne Zeichen von a-z und A-Z die im Text gesetzt werden können, um schnell hin und her zu springen.

  • m + ZEICHEN einen Marker setzen. z.B. mb setzt den Marker b
  • ' + ZEICHEN zu einem Marker springen . z.B. 'b springt zum Marker b
    • Das ' ist das Zeichen auf einer deutschen Tastatur auf dem #

Undo & Redo

:help undo
  • u Undo (Rückgängig machen)
  • SHIFT + u Undo alle Änderungen, die zuletzt in der aktuellen Zeile gemacht wurden
  • STRG + R Redo
  • :undolist zeigt den Verlauf der letzten Änderungen, die rückgängig gemacht werden können. Dabei zeigt die Nummer den Index der Veränderung, die direkt ausgewählt werden kann. Changes zeigt an, wieviele Veränderungen gemacht wurden und die Uhrzeit, wann die Veränderungen gemacht wurden.
  • NUMMER + STRG + r macht die Veränderung mit der Index NUMMER wieder rückgängig
  • Plugins wie undotree oder mundo machen das Undo & Redo sehr übersichtlich und einfacher

Copy & Paste

  • y Kopieren (yank)
  • yy Ganze Zeile kopieren
  • p vor dem aktuellen Cursor einfügen, oder Zeile
  • Shift + p nach dem aktuellen Cursor einfügen, oder Zeile
  • Zwischenablage / Clipboard (FAQ System Clipboard !)
  • "*y , "+y in den System Zwischenspeicher kopieren
  • "*p , "+p aus den System Zwischenspeicher einfügen. Analog "* oder "+ + SHIFT + p
  • Register / Vim interne Zwischenablage
    • Vim unterstützt von a-z 48 verschiedene Register (Zwischenablagen). So können unterschiedliche Dinge in verschiedene Register kopiert und an anderer Stelle in gleicher oder neuer Reihenfolge eingefügt werden.
    • Das Register wird mit " eingeleitet und der folgende Buchstabe a-z definiert in welchem Register der Inhalt gespeichert werden soll
  • "gyy kopiert die aktuelle Zeile ins Register g
  • "gp fügt den Inhalt aus dem Register ab dem aktuellen Cursor ein

Register / Zwischenspeicher 48 :registers

:help registers

  • Auszüge aus dem Hilfedokument
  • :registers zeigt alle Register an. :registers ZEICHEN zeigt das Register ZEICHEN an
  • STRG + r + REGISTER fügt im Insertmodus den Inhalt von REGISTER direkt ein.
  • "" (unnamed) Standardregister in das alles rein kopiert wird, was mit dcsx gelöscht oder mit y kopiert wurde
  • "a-z (named) mit einem großen A-Z wird das Kopierte an das a-z Register angehängt. Zusammen mit einem > wird vor dem Anhängen ein Zeilenumbruch eingefügt.
  • "0-9 (numbered) In Register 0 wird immer der zuletzt kopierte (yank) Inhalt. In Register 1 steht immer der zuletzt gelöschte Inhalt dc
  • "- Im Small Delete Register steht immer der zuletzt gelöschte Inhalt, wenn es weniger als eine Zeile war
  • Read-Only
    • ". enthält immer den zuletzt eingefügten Text
    • "% enthält den Dateinamen
    • ": enthält den zuletzt eingegeben Befehl
  • "* , "+ , "~ Zwischenspeicher / Clipboard . "~ ist der Inhalt des letzten Drag’n’Drop auf das Vim Fenster
  • "_ (black hole) bei einem Löschvorgang wird nichts in Register gespeichert
  • "/ (last search) enthält den Text der letzten Suche

Makros / Recording q

:help recording
  • MAKRO AUFZEICHNEN
    • q + a-z mit q wird das Recording gestartet und das nächste Zeichen z.b. a ist der Name des Makros. Also qa startet die Aufnahmen von Makro a
    • Mit dem erneuten Drücken der Taste q wird die Aufzeichnung des Makros beendet
  • MAKRO ABSPIELEN / AUFRUFEN
    • @q + a-z mit z.B. @qa wird das Makro a abgespielt bzw ausgeführt
    • Mit @@ wird das Makro wiederholt
    • mit 10@qa wird das Makro 10x hintereinander ausgeführt
  • MAKROS EDITIEREN
    • Makros werden als normaler Text in Registern gespeichert
    • Das REGISTER am besten in eine leere Zeile einfügen, weil nach dem Editieren einfach direkt die gesamte Zeile wieder im Register gespeichert werden kann " + REGISTERNUMMER + p z.B. "4p
    • Die Zeile editieren und (die gesamte Zeile) wieder zurück in das Register schreiben " + 4 + yy
    • Zur Kontrolle kann :registers oder :registers 4 eingegeben werden
    • Ein Makro kann einfach gelöscht werden, indem nichts aufgezeichnet wird. Z.b. Makro a = q4q
  • STEUERUNGZEICHEN EINGEBEN
    • Im Eingabemodus STRG + v + TASTE z.B. Enter/Return, ESC, F2, Backspace ….
  • REKURSIVE MAKROS
    • Im Makro selbst das Makro aufrufen
    • Läuft solange, bis es auf einen Fehler aufläuft

Autovervollständigung :abbr

  • :abbr + abkrz + AUSGESCHRIEBENER BEGRIFF wenn im Einfügemodus der Begriff abkrz und Leertaste (oder Enter, dann mit Zeilenumbruch) eingegeben wird, erscheint der AUSGESCHRIEBENER BEGRIFF
  • Beispiel: :abbr zb Zum Beispiel

Groß-/Kleinschreibung

  • ZEICHEN
    • ~ ändert das aktuelle Zeichen auf Groß oder Klein
  • WORT
    • g~w Invertiert die Groß-/Kleinschreibung des aktuellen Wortes
    • guw Ändert von der aktuellen Position bis zum Ende des Worts von Groß- auf Kleinschreibung
    • guaw Ändert das gesamte Wort auf Kleinschreibung. Egal auf welcher Position der Cursor ist
    • gUw Ändert von der aktuellen Position bis zum Ende des Worts von Klein- auf Großschreibung
    • gUaw Ändert das gesamte Wort auf Großschreibung. Egal auf welcher Position der Cursor ist
  • ZEILE
    • guu Ändert die aktuelle Zeile von Groß- auf Kleinschreibung
    • gUU Ändert die aktuelle Zeile von Klein- auf Großschreibung
    • g~~ Invertiert die Groß-/Kleinschreibung der gesamten Zeile
    • gU5jÄndert die darunter liegenden Zeilen zu Großschreibung
    • gu3k Ändert die darüber liegenden Zeilen zu Großschreibung
  • SATZ
    • gU)Ändert alles zu Großschreibung bis zum Ende des Satzes
  • ABSATZ
    • gu} Ändert alles bis zum Ende des Absatzes zu Kleinschreibung
  • DOKUMENT
    • guG Ändert alles zu Kleinschreibung bis zum Ende des Dokumentes

Auswählen/Markieren

  • v Zeichenweise
  • SHIFT + v + Pfeiltasten Zeilenweise
  • STRG + v + Pfeiltasten Vertikal
  • Beispiele: 10v markiert 10 Zeichen, 3wv markiert 3 Wörter, )vy markiert bis zum Ende des Satzes und kopiert ihn in den Zwischenspeicher/Register.

Löschen & entfernen

  • x Zeichen unter dem Cursor löschen
  • SHIFT + x Zeichen links vom Cursor löschen
  • DELETE & CHANGE
    • Gelöscht werden kann mit d (delete) oder c (change). Bei d bleibt Vim im Normalmodus und bei c wird nach dem Löschen in den Eingabemodus gewechselt und es kann direkt mit der Eingabe begonnen werden.
  • dd löscht die komplette Zeile
  • dw , cw löscht das Wort rechts
  • dip , cip Lösche nur den Absatz
  • dap , cap Lösche den Absatz und die nachfolgenden Leerzeilen

Suchen

  • /Suchbegriff<ENTER> vorwärts suchen. Vim zeigt den ersten Fundort an. Soll der nächste Fundort angesprungen werden muss die Taste n (Next) oder * gedrückt werden mit Shift + n oder # wird die Suche rückwärts ausgeführt.
  • ?Suchbegriff<ENTER> rückwärts suchen

Vim Command Modus

Datei laden

  • :e Öffnet den Dateibrowser. Bei Auswahl mit der Entertaste wird die Datei in das aktuelle Fenster geladen.
  • :e FILE.TXT öffnet direkt die Datei in das aktuelle Fenster
  • :Sex Teilt das Fenster horizontal in ein weiteres Fenster mit einem Dateibrowser
  • :Vex Teilt das Fenster vertikal in ein weiteres Fenster mit einem Dateibrowser

Fenstermanagement

  • :tabnew Neues Fenster in neuem Tab
    • :tabprev , gt gehe zum nächsten Tab
    • :tabnext , gT gehe zum vorherigen Tab
      • Bessere Lesbarkeit der Tabs
      • :hi tablinesel ctermbg=darkblue ctermfg=white
      • :hi tabline ctermbg=black ctermfg=green
    • Hilfe :help tabpage
  • :new Neues Fenster horizontal
  • :split Aktuelles Fenster horizontal teilen
  • :vsplit Aktuelles Fenster vertikal teilen
  • STRG + ww wechselt zum nächsten Fenster und rotiert bei Wiederholung durch alle Fenster
  • STRG + w<N> mit <N> sind die Pfeiltasten gemeint, oder auch hjkl mit denen direkt in das entsprechende Fenster gewechselt werden kann.
    Zum Beispiel
    • STRG + wl wechselt in das linke Fenster
    • STRG + wj in das untere Fenster
    • STRG + w<Pfeiltaste links> in das linke Fenster.
    • :ls die offenen Buffer (Fenster/Tabs) anzeigen lassen

Session Management

  • vim -S startet Vim wieder mit der zuletzt gespeicherten Session (aus der Session.vim Datei)
  • :mks! speichert die aktuelle Session in der Session.vim Datei

FAQ

  1. Paste Modes (Einfüge Modi)
    :set paste deaktiviert einige Automatismen, so dass eingefügte Daten z.B. ihre Struktur erhalten und nicht umformatiert werden. :set nopaste deaktiviert dieses Verhalten wieder.
    Hilfen :help paste , :help pastetoggle
  2. System Clipboard (Zwischenablage) Copy&Paste – Interaktion
    Damit "* und "+ funktioniert, muss ein Vim Paket mit grafischer Unterstützung installiert sein, in das die Option +clipboard mit eincompiliert wurde.
    Unter Linux mit einem X11 System repräsentiert "* die Option, womit der Inhalt mit der mittleren Maustaste an die aktuelle Stelle eingefügt werden kann.
    Um zu prüfen, ob die aktuelle Vim Installation den Austausch mit dem System Clipboard unterstützt: Im Normalmodus :echo has('clipboard') und ENTER eingeben. Wenn als Ergebnis eine 0 heraus kommt, wird es nicht unterstützt.
    Durch die Installation des Paketes vim-gtk3 (Ubuntu) wird Copy&Paste unterstützt.
    Hilfen :help clipboard , :help registers , :help cb (Current Buffer)

Weitere Vim Artikel hier im Blog.

Quellen

  1. https://de.wikipedia.org/wiki/Vim
  2. https://wiki.ubuntuusers.de/VIM/
  3. Einführung zu Vim – Tutorials Deutsch https://www.youtube.com/playlist?list=PLZ0CUq-i3Io9dAIKsHNwNAnTeKXamcQ5N
  4. Vim Tricks Live Coding auf Deutsch mit Daniel Siepmann https://youtu.be/P5tAKRVYj4E
  5. Register und Makros in Vim (clt23) Info Seite / Video

Weitere hyperblog Artikel zum Thema

vim

Views: 55

Audio in Video normalisieren mit ffmpeg

Manchmal ist das Audio in einem Video relativ leise und eigentlich ist da noch richtig Luft nach oben es lauter zu machen. Ein schöner und sehr eleganter Weg ist es mit ffmpeg die Normalisierungsfunktion zu nutzen, ohne das Video selbst erneut zu encoden. Das Audio muss natürlich neu encoded werden.

Zuerst muss ermittelt werden welches der lauteste Peak (lauteste Stelle) im gesamten Audio ist

Lautstärkenermittlung – Highest Peak

ffmpeg -i Videodatei.mp4 -af "volumedetect" -vn -sn -dn -f null /dev/null

Dann steht in der Ausgabe irgendwo relativ weit oben so etwas:

[Parsed_volumedetect_0 @ 0x00000000000] mean_volume: -29.1 dB
[Parsed_volumedetect_0 @ 0x00000000000] max_volume: -3.6 dB

Das “max_volume mit -3.6 dB” ist das Interessante für uns. Das maximale Level in der digitalen Welt ist 0dB . Alles was darüber “gedrückt” wird, wird sehr hässlich verzerrt. Das sollte unbedingt vermieden werden!!

Lautstärkenlimit beachten!

Und vielleicht ein kleiner Sicherheitsabstand wäre auch noch ganz gut, denn beim Umwandeln über D/A (Digital/Analog) Wandler passieren auch je nach Qualität manchmal merkwürdige Dinge. Stichwort Truepeak bzw True Inter-Sample Peak Level.
Also als Empfehlung wäre hier einen Puffer von 0,5 dB bis 1 dB einzuhalten.

In unserem Beispiel von “max_volume mit -3.6 dB” nehmen wir mal einen Puffer von 1 dB, das würde dann heissen, dass wir das max_volume um 2.6dB erhöhen: -3.6+2.6= -1dB Ziellautstärke

Lautstärkenanhebung

Der Befehl dazu lautet (Ziel Audioformat: AAC)
ffmpeg -i Videodatei.mp4 -af "volume=2.6dB" -c:v copy -c:a aac -b:a 192k VideodateiErgebnis.mp4

Alias und Function

Und in der Shell Bash ist das natürlich schöner mit einem kurzen Alias aufzurufen. Aber ein Alias ist nur ein anderer Name für ein bestehender Name. Also könnte ich dem Programm Ulrike den Namen Peter geben und egal, welchen Namen ich jetzt eingebe Ulrike oder Peter, das selbe Programm wird ausgeführt.

Da sich hier aber Aufrufparameter, wie Videodatei und die 2.6dB handelt, reicht ein Alias nicht. Dafür gibt es in der Bash die Function. Hier können dann auch die Aufrufparameter abgefragt werden.

Diese Functions weiter unten gelten immer nur für die aktuelle Session. Sobald das Fenster geschlossen oder die Bash beendet wird, ist auch die Function gelöscht. Soll die Function für immer bleiben, muss sie in der Datei .~bashrc im eigenen Homeverzeichnis definiert werden.

Lautstärke herausfinden

Der Aufruf sieht so aus myMaxvol Videodatei.mp4

myMaxvol() { ffmpeg -i "$1" -af "volumedetect" -vn -sn -dn -f null /dev/null; }

Lautstärke anheben

Der Aufruf sieht so aus: myGainvol Videodatei.mp4 2.6

myGainvol() { ffmpeg -i "$1" -af "volume=""$2""dB" -c:v copy -c:a aac -b:a 192k output.mp4 && mv output.mp4 "$1" ; }

Erklärung was hier passiert: Es wird als Parameter Videodatei.mp4 und 2.6 als Lautstärkenanhebung mitgegeben. Das Ergebnis wird in eine Datei namens output.mp4 geschrieben. Wenn die Lautstärkenanhebung erfolgreich war, dann wird die Datei output.mp4 umbenannt in die Videodatei.mp4, die damit natürlich überschrieben wird.

Wenn die Aktion schief läuft, dann liegt da eine Datei output.mp4 herum und noch die originale Datei Videodatei.mp4.

Bash Script

Vielleicht bastle ich noch ein kleine Bash Script, das automatisch die Lautstärke ermittelt, dann auch automatisch die Anhebung ermittelt und danach gleich die Lautstärkenanhebung durchführt. Und dann das ganze noch auf ein ganzes Verzeichnis anwendet.

Schaumermal.

Weitere hyperblog Artikel zum Thema

bash

Views: 102

11 Podcasts die du kennen solltest

Podcasts höre ich seit ungefähr, ich glaube 20 Jahren. Davor waren es spezielle Radiosendungen. Teilweise waren es Unterhaltungssendungen und zum größeren Teil Informations- bzw Wissenssendungen. Das habe ich beim Übergang zu den Podcasts beibehalten, wobei der Teil der Unterhaltungssendungen immer weniger geworden ist.

Der Grund dafür ist, dass mittlerweile jeder Hänsel und Gretel, ComedyOnkel und StandupTante, Computerant und Notebookteusse unglaublich belangloses und teilweise wirklich gefährliches Halbwissen verbreiten. Oder FeuiletonFrida oder KulturKurt, die sich im eigenen Spiegelbild bei Weihrauch suhlen. Für mich ist das entweder Belästigung oder einfach reine Zeitverschwendung. Aber glücklicherweise haben wir alle unterschiedliche Geschmäcker

Daher will ich mal meine absoluten Lieblingspodcasts allen ans Herz legen, die gerne ausgewogen und gut informiert sein wollen.

PS: Die meisten Podcasts können mit ganz normalen Podcast Catcher Programmen abonniert werden. Auf jeden Fall diese, die wirklich gut präsentiertes Wissen vermitteln. Die anderen Special Apps, bei denen eine Mitgliedschaft notwendig ist, bieten meist nur Unterhaltung und Zeitvertreib.

hr2 – Der Tag – Ein Thema, viele Perspektiven

Seit sehr vielen Jahren bietet dieser Podcast eine unglaublich hohe Qualität. Jeden Tag in der Woche wird ein Thema unter die Lupe genommen und von vielen verschiedenen Seiten besprochen. Mit FürsprecherInnen und GegnerInnen. Es handelt sich dabei meist um relativ aktuelle Themen. Nie um tagesaktuelle Themen, da hier Journalismus ernst genommen und sehr gut die Perspektiven und GesprächspartnerInnen recherchiert wird.

Per RSS abonnieren https://podcast.hr.de/derTag/podcast.xml
Webseite https://www.hr-inforadio.de/podcast/der-tag/index.html

WDR5 – Das philosophische Radio – Denn Denken hat was

Ein wunderbar moderierter Podcast mit Jürgen Wiebicke! Viele interessante Themen mit interessanten Gästen und wichtigen Perspektivwechseln. Auch wenn selbst das Wissen über Philosophie recht gering ist, wird sehr darauf geachtet alle ZuhörerInnen thematisch mit zu nehmen. Ein sehr guter Podcast, der einlädt innezuhalten und bei dieser Entschleunigung mit den SprecherInnen zusammen die Gedanken schweifen zu lassen, über alles was die Menschheit bewegt, zerteilt und zusammenhält.

Per RSS abonnieren https://www1.wdr.de/radio/wdr5/sendungen/philosophisches-radio/uebersicht-das-philosophische-radio100.feed
Webseite https://www1.wdr.de/radio/wdr5/sendungen/philosophisches-radio/index.html

Deutschlandfunk Nova – Hörsaal

Mal hören, wohin uns die Wissenschaft bringt. Was Forscher*innen über unser Leben herausfinden. Welche Antworten sie für unsere Zukunft haben.

Ein wunderbarer Service von DLF, mit dem sie Vorträge von WissenschaftlerInnen aus allen Disziplinen senden, die in diversen Hörsälen aufgenommen wurden. Ein wahrer Schatz an Erkenntnissen und Fakten.

Per RSS abonnieren https://www.deutschlandfunknova.de/podcast/hoersaal-der-podcast
Webseite https://www.deutschlandfunknova.de/podcasts/download/hoersaal-der-podcast

SWR Wissen

Täglich Neues aus Gesundheit und Ökologie, Wissenschaft und Weltgeschehen im Podcast von SWR2 Wissen. Wichtige Zusammenhänge, gründliche Recherchen, überraschende Hintergründe.

Per RSS abonnieren https://www.swr.de/~podcast/swr2/programm/podcast-swr2-wissen-100.xml
Webseite https://www.swr.de/swr2/programm/podcast-swr2-wissen-100.html

Welt der Physik

„Welt der Physik“ ist ein Onlinemagazin, das vom Bundesministerium für Bildung und Forschung und der Deutschen Physikalischen Gesellschaft herausgegeben wird. Seit 2003 berichtet die Redaktion auf der Website leicht verständlich über Themen rund um die Physik und möchte so für diesen und angrenzende Fachbereiche begeistern.

Die Redaktion veröffentlicht regelmäßig Nachrichten über aktuelle Forschungsergebnisse sowie Interviews, in denen Physikerinnen und Physiker einen Einblick in ihre Arbeit geben. Die Rubrik „Physik hinter den Dingen“ widmet sich Fragen des Alltags – etwa wie eine Klimaanlage funktioniert oder wie weit man mit einem Teleskop schauen kann.

Per RSS abonnieren https://www.weltderphysik.de/podcast.xml
Webseite https://wissenschaftspodcasts.de/podcasts/welt-der-physik/

Deutschlandfunk – Forschung aktuell

Was der Titel schon verspricht: Alle aktuellen Themen aus der Forschung. Kurz und präzise behandelt und erklärt.
Hilft hervorragend gegen Blödheit, Glaubens- und Meinungsgesellschaften, bei gleichzeitiger Stärkung des gesunden Menschenverstandes.

Per RSS abonnieren https://www.deutschlandfunk.de/forschung-aktuell-100.rss
Webseite https://www.deutschlandfunk.de/forschung-aktuell-100.html

WRINT – Geschichtsunterricht

Wer redet ist nicht tot und wer deutsche Podcasts hört, aber Holgi (Holger Klein) nicht kennt, sollte jetzt etwas peinlich berührt sein. Info übernächster Absatz.

Holgi fragt und Matthias von Hellfeld erzählt sehr unterhaltsam und ohne nerviges Datumaufgezähle ein Thema aus der Geschichte.

Beide (Holgi & Matthias von Hellfeld) produzieren noch wesentlich mehr Podcasts, Blogs und andere Veröffentlichungen.

Hintergrund: Zu Zeiten als Podcasts noch als perverses Hobby von pickeligen Computers Nerds (nicht diese “Hipster” mit zwei verschiedenen Socken und dem Frl. Rottenmeyer Gedächtnisdutt) verstanden wurde, wurde Holgi von Tim Pritlove, dem Urvater des deutschen Podcastes und Blinkenlights angestiftet ebenfalls Podcasts zu machen. Das muss wohl gut 20 Jahre her sein? Und diesen beiden dürfte es wohl auch zu verdanken sein, dass sich dieses Format über sehr lange Jahre in Deutschland gehalten hat und auch groß geworden ist.

Per RSS abonnieren https://wrint.de/category/geschichtsunterricht/feed/
Webseite https://wrint.de/category/geschichtsunterricht/

Geschichten aus der Geschichte

Seit über sieben Jahren erzählen sich die Historiker Daniel Meßner und Richard Hemmer Woche für Woche gegenseitig eine interessante Geschichte aus der Geschichte. Dabei geht es um vergessene Ereignisse, außergewöhnliche Persönlichkeiten und überraschende Zusammenhänge der Geschichte aus allen Epochen.

Per RSS abonnieren https://www.geschichte.fm/feed/mp3/
Webseite https://www.geschichte.fm/

WRINT – Politikunterricht

Holgi (Holger Klein) fragt Thomas Brandt (Lehrer für Sozialkunde und Englisch an einer beruflichen Oberschule in Bayern) zu Themen aus Politik und Gesellschaftskunde. Und dieser erzählt auf gut verständliche und auch unterhaltsame Art, was dieses und jenes ist und sowieso wie es funktioniert.

Per RSS abonnieren https://wrint.de/category/politikunterricht/feed/
Webseite https://wrint.de/category/politikunterricht/

Peter und der Wald

Weil der Wald einer unserer wichtigsten Verbündeten im Kampf gegen die Klimakatastrophe ist, bringt dieser Podcast Wissen und Hoffnung.

Was macht den Zauber der Wildnis aus? Haben Bäume Gefühle? Wie funktioniert ökologische Forstwirtschaft? Deutschlands bekanntester Förster Peter Wohlleben spricht mit Experten, Wissenschaftlern, Aktivisten und Prominenten über Wege, wie wir das Klima und den Wald besser schützen können, warum Artenvielfalt so wichtig ist – und was jeder von uns tun kann, damit die grüne Wende in Deutschland gelingt.

Per RSS abonnieren https://rss.art19.com/peter-und-der-wald
Webseite https://www.peter-wohlleben.de/podcast

WDR5 – Grüße aus der Zukunft

Und wie versprochen noch ein Podcast aus Absurdistan mit schönen kurzen und völlig abstrusen … oder vielleicht doch wahren Folgen?

Per RSS abonnieren https://www1.wdr.de/mediathek/audio/wdr5/wdr5-neugier-genuegt-gruesse-aus-der-zukunft/gruesse-aus-der-zukunft-106.podcast
Webseite https://www1.wdr.de/mediathek/audio/wdr5/wdr5-neugier-genuegt-gruesse-aus-der-zukunft/index.html

Natürlich …

Höre ich noch mehr Podcasts, aber das hier waren jetzt die Podcasts, die ich uneingeschränkt empfehlen kann. Bei den anderen, die ich sonst noch so höre, würde ich nur die einzelnen Folgen empfehlen, die mir persönlich gut gefallen.

Podcast Catcher – AntennaPod

Wer eine gute PodcastCatcher App sucht, sollte sich die App AntennaPod anschauen. Zu bekommen im App Store (F-Droid/Gogle Ple Store) deines Vertrauens. Eine absolute Empfehlung. Die App kann richtig viel!

Leider …

Es gäbe noch weitere tolle Wissenspodcasts von der ARD, aber die werden leider nur eingezäunt und ohne öffentlich zugängliche RSS Adresse von der ARD App angeboten und ohne Selbstvertrauen als Oridschinäl bezeichnet. In der Fachwelt nennt sich das Pen … Facebook/Netflix-Neid. Daher keine Empfehlung.

Viel Spaß damit.

Views: 1

Lernvideos sinnvoll organisieren

Es gibt, oder es gab, ich weiss es ehrlich nicht genau, daher schreib ich mal in der Gegenwartsform, das Kommandozeilenprogramm youtube-dl oder andere Varianten wie yt-dlp oder ähnliche, mit denen es einfach möglich ist Videos herunter zu laden, um nicht von einer funktionierenden Internetleitung abhängig zu sein. Wer in Deutschland lebt, weiss, was ich meine.

Vor allem bei Lernmaterial ist das super, wenn es offline verfügbar ist und immer wieder angeschaut werden kann, ohne wieder und wieder durch das Streaming CO2 zu erzeugen.

Viele dieser Lernvideos haben Kapitelmarken und auch Untertitel in verschiedenen Sprachen, die natürlich auch im offline Modus sehr hilfreich sind. Und nicht nur als Kapitel, sondern eventuell auch zur Zerteilung in einzelne Videoclips, so dass bei einer Suche direkt auf den entsprechenden Clip zugegriffen werden kann.

Wenn also ein Video legal runtergeladen werden darf, dann helfen folgende Parameter und folgender Workflow bei den entsprechenden Programmen, die ich jetzt einfach mal unter dem Programmnamen DLPGRM zusammenfasse

Verfügbare Formate auslesen

Um erst mal zu sehen, in welchen VIDEO und AUDIO Formaten die Quelle vorliegt, gibt es folgenden Befehl, mit dem eine Tabelle ausgegeben wird.

DLPGRM -F URL-Link

Am Anfang der Tabelle steht in jeder Zeile eine ID und rechts daneben jede Menge weiterer Parameter. Wichtig ist, sich hier die IDs für das gewünschte VIDEO und AUDIO Format zu notieren, denn das wird für den nächsten Schritt gebraucht.

Hinweis: Wenn es einfach nur ein Redebeitrag ist, ohne dass Dinge gezeigt werden, die wichtig sind, wäre es unter Umständen sogar sinnvoll, das als Audiodatei (weiter unten) zu speichern, oder wenigstens als Video mit einer sehr geringen Auflösung. Wenn die Lernvideos nur auf dem Smartphone gespeichert werden sollen, dann sind hohe Auflösungen eh meist sinnlos. Da kann dann schon mal 256×144, 426×240 oder 640×360 genommen werden. Das spart CO2 und zuletzt auch eine Menge Festplattenplatz.

Lernvideo mit Kapitelinformationen speichern

Ist also die ID Nummer für VIDEO und AUDIO ausgesucht, dann kann mit folgendem Befehl das Lernvideo gespeichert werden. Gleichzeitig werden die Kapitel und deutsche & englische Untertitel mit rein gepackt und als Datei kommt eine MP4 Datei heraus, die auf allen Endgeräten abspielbar ist.

DLPGRM -f VIDEO+AUDIO --merge-output mp4 --embed-chapters --sub-langs "de,en" --embed-subs --write-auto-subs --embed-metadata URL-LINK

Soll das Lernvideo als reine Audio Datei, z.B. mp3 gespeichert werden, dann geht das auch mit

DLPGRM -x --audio-format mp3 URL-LINK

Kapitel nachträglich auslesen

Die Kapitel können nachträglich aus der Videodatei mit ffmpeg ausgelesen werden. Genauer gesagt mit dem Tool ffprobe. Dazu muss einfach nur der Befehl

ffprobe -show_chapters VIDEODATEI

eingegeben werden und als Ergebnis kommt eine Textausgabe der Kapitel heraus. Allerdings im sehr ausführlichen ffmpeg Format, aus dem dann die entsprechenden Informationen entnommen werden können. Dieses Format sieht z.B. so aus

[CHAPTER] 
id=0
time_base=1/1000
start=0
start_time=0.000000
end=60000
end_time=60.000000
TAG:title=Einleitung
[/CHAPTER]
[CHAPTER]
id=1
time_base=1/1000
start=60000
start_time=60.000000
end=95000
end_time=95.000000
TAG:title=Kanäle / Tracks umschalten
[/CHAPTER]
[CHAPTER]
id=2
time_base=1/1000
start=95000
start_time=95.000000
end=177000
end_time=177.000000
TAG:title=Parameter ändern (Volume, Pan, Send Effekte/Kanäle) und resetten
[/CHAPTER]
[CHAPTER]
id=3
time_base=1/1000

Kapitel als einzelne Videos speichern

Soll das Lernvideo nun aber in einzelne kleinere und leichter auffindbare Dateien aufgeteilt werden, so würde das auch mit dem Programm gehen, allerdings gibt es da den einen oder anderen unschönen Seiteneffekt, der durch sogenannte fehlende Keyframes (ein komplettes Vollbild) an der richtigen Stelle entsteht, so dass es manchmal beim Beginn der Kapitel aussieht, als würde jemand mit Wasserfarben durchs Bild wischen, oder aber das Lernvideo muss komplett neu codiert werden. Und das kann ganz schön lange dauern.

Es gibt da einen kleinen Trick, der nicht nur schneller, sondern auch Resourcen schonender ist. Das Programm LossLessCut kann diverse Videoformate einfach zerteilen, ohne dass irgendwas neu berechnet werden muss. Und es bietet eine einfache und praktische Lösung zu dem Keyframe Problem an. Nämlich schaut es, wo das Kapitel beginnt und dann “spult” es so lange zurück, bis es das letzte Keyframe findet und legt den Anfang des Kapitels dorthin.

Dabei handelt es sich dann meist um eine Wiederholung maximal 1-3 Sekunden zum vorherigen Kapitel aber dafür mit einem klaren Bild.

Also wird das Lernvideo in LossLessCut reingeladen und dann wird zuerst gefragt, ob die Segmente oder Chapters auch importiert werden sollen. Auf diese Frage mit Ja antworten. Danach kann gleich rechts unten auf den Export Knopf gedrückt werden und diese Einstellungen sollten übernommen werden.
Wichtig sind: Separate files, mp4, Cut mode=Keyframe cut, preserve all MP4/MOV metadata

Und nach 3 Sekunden liegen alle Kapitel als einzelne Videoclips vor.

Viel Spaß bei der Organisation eurer Lernvideos, die ihr jetzt noch viel effizienter ablegen könnt.

Views: 4

Vim – Suchen & Ersetzen – RegEx

Reguläre Ausdrücke (RegEx) sind DER Shit, wenn es darum geht extrem schnelle und auch sehr komplexe Dinge mit Texten bzw Strings oder einfach generell bei Suchen zu veranstalten.

Ein Anwendungsfall kommt immer wieder vor, nämlich das Suchen&Ersetzen.

Das Muster sieht so aus

:[range] s / [pattern] / [string] / [flags] [count]

[range]

  • bei range steht meist ein Prozentzeichen % das für den gesamten Text aka alles steht
  • hier können auch 1,$ = erste Zeile, erstes Zeichen bis letzte Zeile, letztes Zeichen
  • .,$ heisst von der aktuellen Zeile bis zum Ende
  • {Nummer} – in Zeile Nummer sowieso z.B. Zeile 14
  • Die Übersicht der schier unendlichen Bereichsangaben bekommst du, wenn du vim aufrufst und dann :h range eingibst

s (substitute)

  • Substitute ist die Suchen&Ersetzen Funktion. Wichtig zu wissen ist, dass alle Zeichen, die nicht in a-z und A-Z sind, müssen mit einem vorangestelltem Backslash \ “escaped” werden.
  • Also Zahlen, Punkte, Klammern und Sonderzeichen mit einem Backslash \ escaped werden.
  • Ein Backslash wird dann natürlich auch mit einem Backslash escaped \\. Und ein Slash im Suchstring wird natürlich auch mit einem Backslash escaped \/ . Auch ein Leerzeichen bzw Blank wird mit einem Backslash escaped.
  • Der Grund dafür ist, dass viele dieser Zeichen selbst eine Funktion für die Suche darstellen. Und damit da keine Verwechselung entsteht muss extra “escaped” werden.

[pattern]

  • Pattern ist der zu suchende Text
  • In einem Pattern können auch wiederum Pattern-Funktionen eingefügt werden, wie z.B. ab dem 5. Zeichen (spalte/column) %5c oder bis zum 5. Zeichen %>5c und viele weitere.
  • in vim :help pattern

[string]

  • String ist der Text, der das gesuchte Pattern ersetzt werden soll.

[flags]

  • g (global) wiederholt das Suchen&Ersetzen, bis zum Ende des Textes. Wird g nicht angegeben, wird nach dem ersten Suchtreffer aufgehört.
  • c (confirm) zum Bestätigen des Ersetzens
  • i (ignore) um Groß/Kleinschreibung zu ignorieren

[count]

  • der Parameter count wird bei Bedarf in einer positiven ganzen Zahl wie z.B. 5 angegeben. Er wirkt sich auf das Suchen&Ersetzen so aus, dass z.B.
  • %s/blah/blubb/g 5 – vom Textanfang die ersten 5 Zeilen bearbeitet werden
  • 10,$ s/blah/blubb/g 5 – ab Zeile 10, die Zeilen 10, 11, 12, 13, 14, also insgesamt 5 Zeilen bearbeitet werden.

Slash / – das Slash “/” trennt die verschiedenen Parameter voneinander.

Will ich also den merkwürdigen String “Maier/(Schmidt)-Hans\Jens.Familie?” in meinem gesamten Text mit “Bullshit!“ersetzen, sähe der Aufruf so aus

:%s/Maier\/\(Schmidt\)\-Hans\\Jens\.Familie\?/Bullshit\\!/g

Einfach vor jedes nicht a-zA-Z Zeichen ein Backslash

Weitere hyperblog Artikel zum Thema

vim

Views: 104

Nützliche Bash Shortcuts

Wenn du in Linux die Konsole öffnest, dann öffnest du in den meisten Fällen eine Bash Shell. Eine Shell ist einfach nur ein Programm, mit dem du Befehle an deinen Computer senden kannst wie : Zeige mir alle Dateien und Verzeichnisse an, oder starte Programm XY. Eine Shell ist also eine Kommunikationsschnittstelle zu deinem Betriebssystem. Es gibt viele verschiedene Shells und eine davon ist eben Bash. Siehe auch Wikipedia https://de.wikipedia.org/wiki/Bash_(Shell)

So eine Shell (Mensch-Maschine-Schnittstelle) bietet sehr sehr sehr viele verschiedene Möglichkeiten. Darunter auch viele Shortcuts (Tastenkombinationen), die das Eingeben, Suchen, Editieren usw viel einfacher machen.

Hier habe ich einige und für mich sehr nützliche Shortcuts zusammengestellt

Die Buchstaben hier sind zwar alle groß geschrieben, aber das einfach nur wegen der besseren Lesbarkeit und Einheitlichkeit. Alle Buchstaben können ohne die Shift Taste eingegeben werden. Also ein L ist eigentlich ein l, das sonst schnell mit einem großen i verwechselt werden könnte. Ich schreibe extra Kommandozeile, weil die sich über mehrere Zeilen erstrecken kann und damit klar wird, dass nicht die Bildschirmränder gemeint sind.

Nützliches

  • TAB Tabulator Taste bei der Eingabe drücken, um die Autovervollständigung zu nutzen. Am Anfang der Zeile wird nach Befehlen aus dem System gesucht, wenn bereits ein Wort am Anfang steht, dann werden Datei- und Verzeichnisnamen vervollständigt
  • Strg + L Löscht den Bildschirm. Wie auch der Befehl clear
  • !! Den letzten Befehl nochmal wiederholen (NOCHMAL !! !! !! !!)

Suchen

  • Pfeil hoch / runter – Befehlshistorie hoch und runter (vor und zurück) blättern, um bereits ausgeführte Befehle nochmal zu wiederholen. Bash speichert eingegebene Befehle in einer Datei namens .bash_history in deinem Homeverzeichnis und diese wird dann durchsucht.
  • Strg + R Inkrementelle Rückwärtssuche der Bash Historie. Erneut Strg + R drücken, um das nächste Suchergebnis anzeigen zu lassen.
  • Strg + J die aktuelle Suche in der Bash Historie mit der Übernahme des aktuellen Befehls beenden (Jaaaaa)
  • Strg + G die aktuelle Suche in der History mit leerer Eingabe beenden (Geh weg!)

Cursor Navigation

  • Strg + A Springe ganz an den ANFANG der Kommandozeile
  • Strg + E Springe ganz an das ENDE der Kommandozeile
  • Alt + F schiebt den Cursor vorwärts (FORWARD) vor das nächste Wort
  • Alt + B schiebt Cursor zurück (BACK) auf den ersten Buchstaben des vorangegangen Wortes

Löschen & Tauschen

  • Strg + U Löscht alles links des Cursors bis zum Anfang der Kommandozeile (Uuuuund zurück)
  • Strg + K Löscht alles rechts des Cursors bis zum Ende der Kommandozeile (Kawumm)

  • Strg + W Löscht ab dem aktuellen Zeichen links den “Rest” bis zum WORTanfang
  • Alt + D Löscht ab dem aktuellen Zeichen den “Rest” DES Wortes rechts

  • Alt + T Das Wort an der aktuellen Cursorposition wird mit dem vorangehenden Wort vertauscht (Tausch)

Ausgabe Display

  • Strg + S Stoppt die Ausgabe von Meldungen auf dem Bildschirm – einfrieren/screenshot (das aktuell laufende Programm wird nicht gestoppt. Im “Hintergrund” laufen die Meldungen weiter)
  • Strg + Q Beendet das Strg + S (screenshot/einfrieren)

Beenden

  • Strg + C Abbruch eines Programms
  • Strg + D Schliesst die Bash Shell und damit auch meist das Konsolen Terminal

Weitere hyperblog Artikel zum Thema

bash

Views: 13

Markdown Suite – Logseq, nicht nutzbar

Ich benutze sehr gerne Markdown Editoren, weil diese leichtgewichtig sind und einen super Kompromiss zwischen einem formatiertem Text, also mit Überschriften, Absätzen, fett und kursiv, Tabellen und so weiter und der Archivierung, weil einfacher Text noch in 50 Jahren mit jedem x-beliebigen Editor auf jedem denkbar möglichen Betriebssystem und Plattform gelesen und bearbeitet werden kann.

Aktuell nutze ich Obsidian und bin damit eigentlich super zufrieden. Obsidian ist eine Markdown Suite. Das heisst, dass rund um den Editor eine Menge Helfer mit dabei ist. Also sowas wie ein Dateimanager, automatische Inhaltsverzeichnisse, eine gute Suche, eine Hashtag Verwaltung und jede Menge weiterer kleine Helfer, die das Leben einfacher machen.

Das Ganze synchronisiere ich dann noch mit meiner Nextcloud und habe so immer den aktuellen Stand auf den Geräten, auf denen ich das will. Da es sich dabei nur um kleine Textdateien handelt, sind meine rund 1000 Dateien mit Dokumentation, Ideen, Anleitungen, Entwürfen und Planungen um die 8MB groß. Jede Änderung ist blitzschnell übertragen, weil Änderungen und Erweiterungen an Textdateien immer nur ein paar Byte sind. Das wäre sogar mit uralten Modems aus den 1990er Jahren blitzschnell möglich.

Und dennoch schaue ich immer mal wieder über den Tellerrand und schaue mir andere Markdown Suites an.

Diesmal hatte ich mir Logseq angeschaut. Dafür gibt es Desktopversionen für alle Betriebssysteme und für Smartphones. Installiert habe ich eine 0.9.9 Flathub Version vom 13.06.2023 unter Kubuntu Linux.

Eine dreispaltige Aufteilung, was mir persönlich schon mal sehr gut gefällt. Aber dann ärgerte mich ein bisschen die Umschaltung auf das DarkTheme. Es dauerte mehrere Neustarts des Programms und neu einstellen, bis es übernommen wurde. Ich habe keine Ahnung woran es lag.

Und dann scheiterte ich daran einen ganz einfachen Dateimanager zu finden. Es gibt zwar eine Suche über alle Dateien, aber diese kann nur genaue Dateienamen verarbeiten und nicht mehrere Wörter, die in einer Datei vorkommen könnten. So fand ich dann auch meine Dateien nicht.

Ich fand dann ein Plugin “File Manager”, das zu finden irgendwie wohl nicht so richtig möglich ist. Damit war für mich dann der Test zu Ende.

Fazit
Eine Suche mit der ich meine Dateien nicht finden kann und ein Filemanager, der nicht aufzufinden ist, sind das absolute KO Kriterium für so eine Suite. Schade. Ich werde es einfach irgendwann in der Zukunft nochmal probieren. Vielleicht wurde dann an der Usability ein wenig gearbeitet.

Views: 5

Kommando zurück – Bash History Tipps

Die Standard-Kommandozeile Bash bei Kubuntu (wie auch bei vielen anderen Linux Distributionen) hat eine sehr praktische History bzw ein Verlauf, welche Befehle man so eingegeben hat.
 
Die entsprechende Datei heisst .bash_history (mit einem vorangehenen Punkt – weil es sich um eine versteckte Datei handelt) liegt im Benutzerverzeichnis z.B. /home/hoergen/.bash_history
 
Die gesamte History (Verlauf) auflisten mit dem Befehl: history, dann wird ein Liste der Eingaben mit vorangestellter Zeilennummer ausgegeben.
 
Das können unter Umständen sehr viele Zeilen sein. Wenn man nach dem Befehl eine Zahl angibt, so werden die letzten Zeilen der History (Verlaufs) angezeigt wie z.B. history 8 zeigt die letzten 8 Zeilen der History an.
Damit man z.B. den Befehl aus der gefundenen Zeile nicht noch einmal eingeben muss, kann man zur Abkürzung die Zeilennummer mit einem vorangestellten Ausrufezeichen verwenden z.B. !1500
 
In der History kann auch gesucht werden

  • SuchenStrg+r – und anfangen zu tippen
  • Weitersuchennochmal Strg+r drücken
  • Zeile aus der Suche übernehmen und startenEingabe Taste drücken
  • Zeile aus der Suche übernehmen und etwas ändernEnde- oder Pfeil nach rechts Taste

 
Und zum Korrigieren sind diese Tastenkürzel hilfreich

  • Will man die Zeile löschen und ist am Anfang der Zeile: Strg+k
  • Will man die Zeile löschen und ist am Ende der Zeile: Strk+u
  • Will man die zuvor gelöschte Zeile wieder herstellen: Strg+y
  • Das nächste Wort löschen Alt+d
  • Das vorherige Wort löschen Strg+w

 
In der Zeile bewegen

  • Pos 1 oder Strg+a springt an den Zeilenanfang
  • Ende oder Strg+e springt an das Zeilenende
  • Alt+f springt ein Wort vorwärts (Forward)
  • Alt+b springt ein Wort zurück (Back)

 
Es gibt noch wesentlich mehr Kürzel und Befehle, die sich mit der History der Bash beschäftigen.

Weitere hyperblog Artikel zum Thema

tmux

bash


 
 

Views: 17