Dieses Keyboard-Tool ist BESSER als Karabiner (Hier ist der Grund)

BBetter Stack
컴퓨터/소프트웨어게임/e스포츠가전제품/카메라

Transcript

00:00:00Das ist Kanata, ein Open-Source-Tool, das das volle Potenzial eurer Tastatur ausschöpft,
00:00:03indem es etwa beim kurzen Tippen eine andere Taste registriert als beim Gedrückthalten,
00:00:08mit einer Taste mehrere Tastendrücke auslöst
00:00:10oder verschiedene Ebenen für individuelle Tastenbelegungen nutzt.
00:00:12Das ist ideal für jemanden wie mich, der versucht, fast alles über die Tastatur zu erledigen.
00:00:16Aber was hat es mit dieser seltsamen Konfigurations-Syntax auf sich?
00:00:19Und warum sollte ich das anstelle von Karabiner oder anderen Tools mit K verwenden?
00:00:24Abonniert den Kanal und lasst uns direkt loslegen.
00:00:27Kanata ist der indigene Name der Irokesen für "Dorf",
00:00:30was eigentlich rein gar nichts mit Tastaturen zu tun hat.
00:00:33Aber wenn ihr euch wie ich für mechanische Tastaturen interessiert, kennt ihr vielleicht QMK,
00:00:37eine beliebte Open-Source-Firmware,
00:00:39mit der man Tasten direkt auf der Hardware umbelegen kann, bevor das Signal den PC erreicht.
00:00:42Kanata ist wie QMK, arbeitet aber auf Software-Ebene
00:00:46und unterstützt daher alle Tastaturen – sogar die eures Laptops.
00:00:49Da es in Rust geschrieben ist, arbeitet es extrem schnell
00:00:52und es gibt praktisch keine spürbare Verzögerung beim Tippen.
00:00:55Die Einrichtung ist allerdings nicht ganz ohne,
00:00:57denn nach der Installation von Kanata mit Karabiner für Mac –
00:01:00dazu später mehr –
00:01:02muss man eine Konfigurationsdatei in der von Lisp inspirierten S-Expression-Syntax schreiben,
00:01:07was wohl die eigenartigste Syntax ist, die mir je untergekommen ist.
00:01:11Anstatt den Funktionsnamen wie gewohnt außerhalb der Klammern zu schreiben,
00:01:16schreibt man ihn hier direkt neben die Argumente in die Klammern hinein.
00:01:21Noch wilder wird es, wenn man Funktionen verschachtelt,
00:01:24was in der Konfiguration ziemlich oft vorkommt.
00:01:26Weil die Funktionsnamen nie vor den Klammern stehen,
00:01:30befindet sich alles im Inneren, was anfangs echt unübersichtlich wirkt.
00:01:35Aber man gewöhnt sich nach einer Weile daran.
00:01:36Nehmen wir als einfaches Beispiel an, ich möchte die A-Taste auf X mappen.
00:01:41Das mache ich mit einer "defsource"-Funktion, um die Quelltasten mit dem Argument A festzulegen,
00:01:46und mindestens einer "deflayer"-Funktion für die Ausgabetasten.
00:01:50Ich nenne diese Ebene "base" und gebe ihr das Argument X.
00:01:53Jede Taste, die nicht in der Datei steht, verhält sich ganz normal.
00:01:57Füge ich Tasten wie B und C hinzu und mappe sie auf Y und Z, sieht das so aus.
00:02:02Glücklicherweise spielen Leerzeichen und Tabs keine Rolle,
00:02:04man kann die Tasten also für bessere Lesbarkeit beliebig anordnen.
00:02:08Hier sind noch ein paar coole Dinge, die man konfigurieren kann.
00:02:10Ich kann "Tap-Hold" einrichten: Kurzes Tippen führt Aktion A aus, Halten Aktion B.
00:02:15Dazu definiere ich ein Zeitlimit und lege die entsprechenden Tasten fest.
00:02:19In diesem Fall schreibt ein Tippen auf A ein X, während langes Halten die linke Umschalttaste aktiviert.
00:02:24Um es einfacher zu machen, kann ich mit "defvar" Variablen registrieren,
00:02:28die ich mehrfach verwende und dann mit einem Dollarzeichen referenziere.
00:02:32Das ist perfekt für "Home Row Mods", bei denen die mittlere Tastenreihe als Modifikatoren dient.
00:02:36Ehrlich gesagt wirkt das anfangs total schräg,
00:02:39aber ich habe mich so daran gewöhnt, dass ich es mir nicht mehr anders vorstellen kann.
00:02:42Ich könnte auch eine neue Ebene mit dem Namen "Editor" erstellen,
00:02:46die ich speziell für den Videoschnitt nutze, mit völlig neuen Tastenzuweisungen,
00:02:51und per Tastendruck zu dieser Ebene wechseln.
00:02:54Und für richtig fortgeschrittene Setups beim Ebenenwechsel oder anderen Aktionen
00:02:58kann man den TCP-Server von Kanata aktivieren, damit andere Apps darauf lauschen können.
00:03:03In meinem Fall hört SketchyBar auf Kanata,
00:03:06sodass mir oben auf dem Desktop angezeigt wird, wenn ich die Ebene wechsle.
00:03:10Ja, es war ein langer Weg durch die Konfiguration,
00:03:13aber nichts, wobei einem KI nicht helfen könnte.
00:03:16Aber mal im Ernst: Warum sollte man Kanata statt Karabiner-Elements nutzen?
00:03:21Immerhin kann Karabiner alles, was Kanata kann, und noch viel mehr –
00:03:24wie app- und tastaturspezifische Belegungen,
00:03:28einen intuitiven Event-Viewer zum Testen von Tasten
00:03:30und eine grafische Benutzeroberfläche für alle, die das Terminal meiden.
00:03:35Aber für mich war das Tap-Hold-Feature bei Karabiner, gerade für Home Row Mods, unzureichend.
00:03:40Es brauchte viel Recherche und Konfigurationsaufwand, bis es überhaupt lief.
00:03:45Und selbst dann war es nicht so präzise wie bei Kanata.
00:03:49Oft wurden Halte-Vorgänge fälschlicherweise als einfaches Tippen registriert.
00:03:51Kanata hingegen beherrschte dieses Feature sofort perfekt, ohne mühsames Feintuning.
00:03:56Seitdem hatte ich nie das Bedürfnis, zu Karabiner-Elements zurückzukehren.
00:03:59Wenn ihr also Home Row Mods wollt, empfehle ich Kanata.
00:04:03Perfekt ist es allerdings auch nicht.
00:04:05Man braucht für verschiedene Tastaturen eigene Konfigurationsdateien,
00:04:09was nervig ist, wenn man eine Tastatur abzieht,
00:04:12da man das neue Mapping manuell per Befehl aktivieren muss.
00:04:15Ich konnte die Play/Pause-Taste meiner Tastatur nicht auf F8 umbelegen,
00:04:20was mit Karabiner problemlos möglich war.
00:04:22Und für die MX Master Maus waren einige Anpassungen nötig, damit alles funktionierte.
00:04:26Zum Glück konnte ich für die meisten Probleme Lösungen zusammenbasteln,
00:04:30die ich vielleicht bald als Open Source veröffentliche.
00:04:31Ich wünschte nur, Kanata hätte eine größere Community –
00:04:34was dieses Video hoffentlich ändert, wenn ihr es fleißig teilt, oder?

Key Takeaway

Kanata bietet gegenüber Karabiner-Elements eine überlegene Präzision bei Tap-Hold-Funktionen und Home Row Mods, erfordert jedoch eine Einarbeitung in eine ungewöhnliche Konfigurationssyntax.

Highlights

Kanata ist ein Open-Source-Tool

Timeline

Einführung in Kanata und seine Kernfunktionen

Der Sprecher stellt Kanata als leistungsstarkes Open-Source-Tool vor, das das volle Potenzial jeder Tastatur ausschöpft. Zu den Kernfunktionen gehören die Unterscheidung zwischen kurzem Tippen und langem Halten sowie die Erstellung individueller Ebenen für Tastenzuweisungen. Das Tool richtet sich vor allem an Nutzer, die ihre Arbeitsabläufe fast ausschließlich über die Tastatur steuern möchten. Der Abschnitt wirft zudem die Frage auf, warum man dieses Tool gegenüber etablierten Alternativen wie Karabiner bevorzugen sollte. Es wird deutlich, dass Kanata für Power-User entwickelt wurde, die maximale Flexibilität suchen.

Technische Basis und Vergleich mit QMK

In diesem Teil wird der Name Kanata erklärt, der ursprünglich aus einer indigenen Sprache stammt und "Dorf" bedeutet. Technisch wird Kanata mit der bekannten QMK-Firmware verglichen, arbeitet jedoch im Gegensatz dazu auf Software-Ebene und ist somit mit allen Tastaturmodellen kompatibel. Da die Anwendung in der Programmiersprache Rust geschrieben ist, bietet sie eine extrem performante Ausführung ohne spürbare Verzögerungen. Dies ist ein entscheidender Vorteil für Nutzer, die auf sofortiges Feedback beim Tippen angewiesen sind. Die Hardware-Unabhängigkeit macht es besonders attraktiv für Laptop-Nutzer.

Die Herausforderung der S-Expression-Syntax

Die Einrichtung von Kanata wird als anspruchsvoll beschrieben, da sie eine Konfigurationsdatei in der S-Expression-Syntax erfordert. Diese von Lisp inspirierte Schreibweise platziert Funktionsnamen innerhalb der Klammern direkt neben den Argumenten, was für viele Programmierer ungewohnt ist. Besonders bei verschachtelten Funktionen kann die Übersichtlichkeit anfangs leiden, da die Struktur stark von herkömmlichen Syntax-Regeln abweicht. Der Sprecher betont jedoch, dass man sich nach einer gewissen Eingewöhnungszeit an diese Logik gewöhnt. Trotz der optischen Komplexität erlaubt diese Struktur eine sehr tiefe und detaillierte Kontrolle über die Tastaturbefehle.

Praktische Konfigurationsbeispiele und Ebenen

Anhand konkreter Beispiele wie dem Mapping der A-Taste auf X wird die Funktionsweise von "defsource" und "deflayer" erläutert. Der Sprecher zeigt auf, wie durch die Anordnung von Leerzeichen und Tabs die Lesbarkeit der Konfigurationsdatei verbessert werden kann. Ein zentrales Feature ist die "Tap-Hold"-Funktion, bei der eine Taste je nach Dauer des Drückens unterschiedliche Aktionen auslöst. Zudem wird die Nutzung von Variablen mit "defvar" erklärt, was die Verwaltung von komplexen Setups wie Home Row Mods erheblich vereinfacht. Diese Funktionen erlauben es, die Effizienz beim Tippen durch die Reduzierung von Handbewegungen massiv zu steigern.

Fortgeschrittene Features und TCP-Integration

Für professionelle Setups bietet Kanata die Möglichkeit, spezielle Ebenen für Anwendungen wie den Videoschnitt zu erstellen. Ein Highlight ist der integrierte TCP-Server, der es anderen Programmen ermöglicht, auf Ereignisse in Kanata zu reagieren. Der Sprecher nutzt dies beispielsweise, um den aktuellen Ebenen-Status visuell in der macOS-Statusleiste via SketchyBar anzuzeigen. Obwohl der Weg durch die Konfiguration steinig sein kann, wird angemerkt, dass moderne KI-Tools bei der Erstellung der Dateien helfen können. Diese Vernetzbarkeit macht Kanata zu einem integralen Bestandteil eines automatisierten Desktop-Workflows.

Kanata vs. Karabiner-Elements: Ein Fazit

Abschließend erfolgt ein direkter Vergleich mit Karabiner-Elements, wobei Kanata trotz fehlender grafischer Oberfläche und einiger technischer Hürden als Sieger hervorgeht. Der Hauptgrund liegt in der Präzision der Tap-Hold-Erkennung, die bei Karabiner oft zu Fehlregistrierungen führte. Dennoch gibt es Nachteile, wie die manuelle Aktivierung von Mappings beim Wechsel von Tastaturen und Schwierigkeiten bei speziellen Medientasten. Der Sprecher erwähnt zudem notwendige Workarounds für die MX Master Maus und plant, eigene Lösungen als Open Source zu veröffentlichen. Der Aufruf zur Stärkung der Community bildet den emotionalen Abschluss des Berichts.

Community Posts

No posts yet. Be the first to write about this video!

Write about this video