Schlüsseltechnologie

STP046: Bram Moolenaar und vim


Listen Later

Obwohl dies ein Technikpodcast ist, kommen wir um politische Themen oft nicht ganz herum. In dieser Folge jedoch stellen wir uns nun direkt ins Feuer. Und all das nur, weil Xyrill unbedingt seinen Lieblingseditor unters Volk bringen will.

ShownotesAus aktuellem Anlass: Anfang August 2023 ist Bram Moolenaar gestorben.

  • Bram Moolenaar

    • Jahrgang 1961, bis 1985 Studium der Elektrotechnik in Delft mit Abschlussarbeit zu Multiprozessor-Unix-Architektur
    • seit 1988 Entwicklung eines Klons des Texteditors vi mit dem Namen vim (erst "vi imitation", später "vi improved"; "vim" kann aber auch "Elan" bedeuten)
    • bis kurz vor seinem Tod (d.h. 35 Jahre) Leitung des vim-Projektes in seiner Freizeit (neben der Arbeit u.a. bei Google)
    • außerdem Engagement für die NGO ICCF Holland, die Waisenkinder in Uganda unterstützt
    • in diesem Zusammenhang: Was ist eigentlich vim? Und warum verbringt Xyrill sein halbes Leben darin? (Spoiler: man kann alle intellektuelle Arbeit als Texteditieren darstellen; siehe auch STP006)

      • frühe 1970er-Jahre: ed – der erste Unix-Texteditor; damals hatten Unix-Computer noch keinen Bildschirm, sondern nur Tastatur und Drucker
      • 1976: ex – eine von vielen Weiterentwicklungen von ed mit zusätzlichen Funktionen
      • darin enthalten: ein neuartiger "visual mode", der 1979 der Standard wurde – vi ist geboren
      • 1989 dann vim als Weiterentwicklung von Brams Portierung von vi auf Atari-Computer
      • sprich: im Großen und Ganzen eine 50 Jahre lang ungebrochene Evolutionslinie von Texteditoren, analog und parallel zu Unix
      • Kernidee von vi-artigen Texteditoren: modales Editieren

        • in herkömmlichen Texteditoren: jeder Tastendruck hat immer die gleiche Bedeutung (z.B. "u" fügt ein kleines U ein; z.B. "Strg+Z" macht die letzte Operation rückgängig)
        • Nachteil: komplexe Operationen sind begrenzt darin, wieviele Tastenkombinationen man sich merken kann
        • in vi-artigen Editoren: Bedeutung eines Tastendrucks hängt vom aktuellen Modus ab (z.B. "u" im Eingabemodus fügt ein kleines U ein, jedoch "u" im Befehlsmodus macht die letzte Operation rückgängig)
        • erster Vorteil: mehr Befehle sind durch einfache Tastendrücke erreichbar, die sich einfacher tippen lassen als Akkorde wie "Strg+Umschalt+R"
        • zweite Besonderheit: Aktionsgrammatik

          • in herkömmlichen Texteditoren: viele Aktionen, die alle ziemlich ähnlich sind (z.B. ein Zeichen nach links löschen, ein Wort nach links löschen, ein Zeichen nach links auswählen, ein Wort nach links auswählen, etc.)
          • Befehlsmodus in vi: Befehle werden wie mit einer Grammatik zusammengesetzt
            • Substantive = Bewegungen (z.B. "w" = ein Wort nach rechts, "b" = ein Wort nach links, "j" = eine Zeile nach unten)
            • Zahlen = Vervielfältigungen (z.b. "3w" = drei Worte nach rechts, "5j" = fünf Zeilen nach unten)
            • Verben = Aktionen (z.B. "d" = löschen, "c" = ändern)
            • ganzer Befehl: nur eine Bewegung (bewegt den Cursor, z.B. "3w") oder eine Aktion und eine Bewegung (z.B. "d5j")
            • damit zweiter Vorteil: eine große Menge an komplexen Aktionen ist mit sehr kompakten Befehlen auszudrücken (z.B. "Ich möchte den Inhalt des Klammerpaars löschen, in dem mein Cursor steht" = "di(", "ich möchte diesen Absatz und die nächsten drei Absätze automatisch formattieren" = "ga4p")
            • weitere coole Funktionen in vim

              • Makrofunktion: Folgen von Tastendrücken können aufgezeichnet und dann automatisiert abgespielt werden (gibt's auch in anderen Editoren, aber paart sich mit vi's Befehlssprache besser als mit denen der meisten anderen Texteditoren)
              • man kann damit Hacker Jeopardy gewinnen :3
              • Kann man das lernen?

                • Ja, auf jeden Fall. Was man da an Zeit aufwendet, zahlt sich dann über Jahrzehnte aus.
                • Xyrill empfiehlt: Erstmal nur mit den Basics anfangen (Dateien öffnen und schließen, zwischen Modi wechseln). Dann schrittweise Befehle lernen, wann immer man das Gefühl hat, dass man was von Hand macht, was auch einfacher gehen sollte.
                • vim hat ein eingebautes Tutorial: vimtutor auf der Kommandozeile ausführen
                • vim-Cheatsheet auf dem Schreibtisch bereitlegen (Beispiel (deutsch), Beispiel (englisch))
                • im Gespräch erwähnt

                  • Perl-Programm mit Spracherkennung schreiben
                  • Pentaradio zu Git (Versionsverwaltungssystem)
                  • ...more
                    View all episodesView all episodes
                    Download on the App Store

                    SchlüsseltechnologieBy Xyrillian Noises


                    More shows like Schlüsseltechnologie

                    View all
                    Freak Show by Metaebene Personal Media - Tim Pritlove

                    Freak Show

                    11 Listeners

                    Methodisch inkorrekt! by Methodisch inkorrekt!

                    Methodisch inkorrekt!

                    16 Listeners

                    Lage der Nation - der Politik-Podcast aus Berlin by Philip Banse & Ulf Buermeyer

                    Lage der Nation - der Politik-Podcast aus Berlin

                    228 Listeners

                    c’t uplink - der IT-Podcast aus Nerdistan by c’t Magazin

                    c’t uplink - der IT-Podcast aus Nerdistan

                    9 Listeners

                    Chaosradio by Chaos Computer Club Berlin

                    Chaosradio

                    7 Listeners

                    heiseshow by heise online

                    heiseshow

                    3 Listeners

                    Logbuch:Netzpolitik by Metaebene Personal Media - Tim Pritlove

                    Logbuch:Netzpolitik

                    6 Listeners

                    Jung & Naiv by Tilo Jung

                    Jung & Naiv

                    45 Listeners

                    Holger ruft an by Übermedien

                    Holger ruft an

                    2 Listeners

                    Die Wochendämmerung - Der stabile Wochenrückblick by Katrin Rönicke und Holger Klein (hauseins)

                    Die Wochendämmerung - Der stabile Wochenrückblick

                    14 Listeners

                    Sicherheitshalber by Der Podcast zur sicherheitspolitischen Lage in Deutschland, Europa und der Welt.

                    Sicherheitshalber

                    46 Listeners

                    Bit-Rauschen: Der Prozessor-Podcast von c’t by c't Magazin

                    Bit-Rauschen: Der Prozessor-Podcast von c’t

                    0 Listeners

                    Legion by rbb | NDR | Undone

                    Legion

                    7 Listeners

                    Haken dran – das Social-Media-Update der c't by Gavin Karlmeier

                    Haken dran – das Social-Media-Update der c't

                    2 Listeners

                    Passwort - der Podcast von heise security by Dr. Christopher Kunz, Sylvester Tremmel

                    Passwort - der Podcast von heise security

                    3 Listeners