Ich war sehr beeindruckt von der Kraft von vi von der ersten halben Stunde an, als ich es benutzte. Ich habe dann herausgefunden, dass es in einigen Arbeitsumgebungen viele Leute gibt (Techniker und sogar Systemadministratoren!), Die es als "zu kompliziert" vermeiden, ohne jemals den vimtutor ausgeführt zu haben, und noch andere Leute, die vi nur im Einfügemodus und verwenden verpasse den ganzen Punkt der Modalbearbeitung.
Wie kann ich anderen die Kraft von vi / Vim so demonstrieren, dass sie inspiriert werden, es zu lernen und es zu nutzen?
Ich interessiere mich besonders für aktuelle Geschichten darüber, was es gelungen ist, andere (oder sich selbst) zum Lernen und Verwenden von Vim zu bewegen.
Antworten:
Obwohl ich einige Anstrengungen in Vim und sein Ökosystem investiert habe, versuche ich nicht aktiv, andere zu konvertieren. Die meisten Leute, mit denen ich zusammengearbeitet habe, investieren überhaupt nicht viel Zeit in die Verbesserung ihrer Arbeitsabläufe und Tools, weil sie mit dem zufrieden sind, was sie haben. Ich finde das vollkommen in Ordnung… und ich würde es hassen , das Ziel ständiger redaktioneller Proselytisierung zu sein, damit ich das anderen nicht aufzwinge.
Manchmal ist ein Mitarbeiter jedoch von meinem Vimming fasziniert und stellt mir ein paar Fragen. Wenn dieses seltene Ereignis eintritt, bin ich mehr als glücklich, das Thema zu diskutieren, coole Tricks zu demonstrieren und ihn / sie auf nützliche Ressourcen hinzuweisen.
Bei meinem letzten Job war ein Mitarbeiter sehr an Vim interessiert und kannte die Grundlagen recht gut (
vimtutor
). Es war genug für ihn, um schnelle Bearbeitungen durchführen zu können, aber ihm fehlte das Selbstvertrauen und das Know-how, um tatsächlich zu Vim zu wechseln (etwas, das er eigentlich wollte). Zu einem bestimmten Zeitpunkt musste er eine Reihe sich wiederholender Änderungen an einer großen JSON-Datei manuell vornehmen. Er war beunruhigt über die Idee, eine Stunde damit zu verschwenden, und kam auf die Suche nach einer schnelleren / intelligenteren Lösung. Natürlich erledigte ein einfaches Makro die Aufgabe in weniger als einer Minute (einschließlich Aufnahme), wodurch ich einige Schlüsselbegriffe erläutern konnte…Ein Problem für Neuankömmlinge ist: "Was nun?" Moment, der kurz danach kommt
vimtutor
. Vim verbirgt seine Schönheit sehr gut und nicht viele Menschen haben den Willen, diese Muschel ohne Hilfe zu knacken. Ich kann diese Hilfe bei Bedarf bereitstellen ... aber ich werde Vim niemals anderen aufzwingen.quelle
Ich benutze Vim für alles. Ich meine alles Programmieren, Textverarbeiten, Romane schreiben usw. Alles. Ich habe in einem Autohaus mit einem Surface Pro 3 gesessen, auf dem eine virtuelle Linux- Box mit Vim ausgeführt wurde, und die Leute haben mit mir Gespräche darüber geführt, was ich tue.
Benutze einfach Vim. Die Leute werden zu Ihnen strömen, um herauszufinden, was Sie tun und warum. Ich erkläre es normalerweise so -
Ich benutze Vim, weil es einen sehr geringen Platzbedarf hat. Microsoft Word ist mehrere Gigabyte groß und mein Surface hat nur 128 GB Speicherplatz. Ich muss meinen Platz maximieren und Vim hilft mir dabei. Es ist auch erweiterbar und hilft mir, konzentriert zu bleiben. Hier, schau. Demonstriere einige meiner Plugins und zeige, wie Vim im Vollbildmodus im Wesentlichen alles abdeckt, damit ich nachdenken kann .
Ich demonstriere oft LaTeX in Kombination mit Vim. Ich werde eine LaTeX-Datei erstellen und sie dann mithilfe einer Vorlage, die ich habe, in eine schöne PDF-Datei kompilieren. Ich demonstriere auch meine Brief- und Lebenslaufvorlagen. Ich betone, wie wichtig es ist, Stil von Inhalten zu trennen. Ab diesem Zeitpunkt interessieren sich die Leute nicht mehr für das, was ich zu sagen habe, und bereuen es, mit mir gesprochen zu haben.
Sie suchen nach einem Ausweg aus dem Gespräch, und ich schreibe weiter. Vim ist mehr eine religiöse Erfahrung als ein Textverarbeitungsprogramm.
quelle
Demonstrieren Sie die Punktstärke ('.') Im Befehlsmodus. Das Wiederholen eines komplizierten Schnitts mit einem Tastendruck sieht im Allgemeinen wie Magie aus.
quelle
Als jemand, der Vim bei meinem letzten Job lernen musste, würde ich sagen, dass die größte Hürde vor einer "Standard" -Installation lag, für die keine Optionen festgelegt waren. Ich habe die meiste Zeit damit verbracht, zu sagen: "Warum verhält es sich so, wenn alle das Gegenteil erwarten würden?"
Es stellt sich heraus, dass jeder andere bereits einige "Vernunft" -Standards festgelegt hat. Sobald ich das herausgefunden hatte, war ich viel glücklicher und "gab es eine Chance" , mehr zu lernen. Nach ein paar Tagen, in denen der Nummernblock nicht funktionierte, die Tabs falsch waren, die Suche nicht gut funktionierte usw., war ich bereit, das Handtuch zu werfen und nie zurückzublicken.
Wenn Sie wirklich wollen , dass jemand zu , wie es genug , um zu versuchen und erweiterte Funktionen zu lernen, beginnt sie mit einer Einstellungsdatei auf den rechten Fuß , die für die Art der Arbeit , optimiert sie tun müssen.
quelle
.vimrc
Datei mit einer Reihe hilfreicher Standardeinstellungen ist sehr nützlich. Ich habe viel über Vim gelernt, indem ich mir die Optionen angesehen habe, die in github.com/amix/vimrcvim
liefert die Grundbausteine , aus denen man muss configure / Programm der Texteditor man immer davon geträumt.Der beste Weg, einen alten Hund dazu zu inspirieren, einen neuen Trick anzuwenden, besteht darin, etwas zu nehmen, was er tut, und zu zeigen, wie es auf andere Weise einfach schneller / einfacher / besser gemacht werden kann.
Es gibt jedoch definitiv eine Lernkurve, die nur einige Leute abschreckt. Ein Witz geht
quelle
vi
/m
in vielen Situationen einen Geschwindigkeitsschub und / oder vermeidet das Umschalten zwischen Eingabegeräten. Außerdem mache ich ziemlich viel mit Eingabeaufforderungen (Linux, Cygwin) und binvi
immer nur da .Der beste Weg ist, Vim selbst zu lernen und anderen die Kraft davon zu demonstrieren. Auch Sie müssen es nicht (demonstrieren) - es ist selbstfördernd. Sobald Sie es mit einigen ausgefallenen Syntaxfarben auf einem hackisch anmutenden Terminalhintergrund verwenden, werden die Leute neugierig und fragen sich oft, was zum Teufel Sie tun . Dann zeig es ihnen.
Wenn Sie Pair-Programmierung durchführen und feststellen, dass ein anderer Entwickler damit begonnen hat, wiederholbare Arbeiten auszuführen, die sich wie eine Sisyphean-Aufgabe anfühlen (z. B. hundertmaliges Drücken der Rücktaste oder der Pfeile), sagen Sie ihm, wie sehr Sie dies stört, da in Vim nur wenige Tastatureingaben erforderlich sind weniger als eine Sekunde.
Überprüfen Sie auch die folgenden Seiten für einige nützliche Vim-Tricks:
quelle
Am wichtigsten ist: nicht schieben, nicht evangelisieren. Seien Sie absolut sicher über Ihre Motivation. Wenn es überhaupt einen Hinweis auf Missionsarbeit gibt, fangen Sie nicht an. Die überwiegende Mehrheit der Menschen reagiert entweder genervt oder aggressiv, denn der bloße Vorschlag, einen anderen Workflow zu prüfen, stößt auf Kritik. Dass Ihr Workflow besser ist als der Ihre. Was viele Leute abschließt. Tatsächlich ist dies ein allgemeines Prinzip, das unabhängig von der Einstellung funktioniert (denken Sie an Vegetarier / Fleischesser, Demokraten / Republikaner, Automarken, Rezepte usw.).
Es kann durchaus sein, dass keine Kritik von Ihrer Seite beabsichtigt ist, aber dies geschieht auf der anderen Seite und Sie können nichts dagegen tun. Das sind Menschen für dich.
Ich schlage vor, das Thema in einer entspannten Atmosphäre zur Sprache zu bringen, wenn es keine Frist gibt. Sprechen Sie aus Ihrer Erfahrung, wie beeindruckt Sie waren und wie viel effizienter Sie sich jetzt fühlen. Niemals vergleichen. Sagen Sie niemals "es ist besser", da dies eine absolute Aussage wäre und Sie nur darum bitten, herausgefordert zu werden. Gehen Sie immer mit "Ich bin auf diese Weise produktiver". Auf diese Weise kann die andere Person nicht abweisen, dass Sie tatsächlich produktiver sind und keinen Druck ausüben. Wenn der andere das Thema aufgreift, vorsichtig ist und vielleicht anbietet, einen oder zwei Links zu teilen, ist Vimcasts beispielsweise eine großartige Ressource.
Das Erlernen von Vim ist eine verdammt große Aufgabe, vor allem angesichts der verrückten Zeit, die Sie investieren, um Ihr erstes Setup richtig zu machen. Ich hatte in dieser Zeit so viele Fragezeichen im Kopf und fast jede zweite Einstellung schien unsinnig oder sogar feindselig. Es ist das Gegenteil von intuitiv. Entweder bleibt jemand dabei und bekommt nach und nach mehr "Aha!" Momente oder wird es einfach für einen wortähnlicheren Editor fallen lassen. Was auch immer funktioniert.
Am Ende ist es wirklich keine Debatte wert: Jeder nutzt nur, was die Arbeit erledigt. Das ist das Schöne am Quellcode: Er ist universell.
quelle
Das erste Mal, dass ich vi verwendete, war in einer "Einführung in Unix" -Klasse. Der Lehrer wusste es nicht sehr gut, und er führte es auf sehr klobige Weise ein. Wir mussten uns genug merken, um herumzukommen, wenn wir jemals in einem System stecken blieben, auf dem nichts anderes installiert war. Ich habe mich nach diesem Semester nicht mehr umgesehen. Das ist , wie Sie tun nicht evangelisieren vi, und ich denke, wie viele Leute ihre ersten Erfahrungen hatte.
Einige Jahre später besuchte ich eine Weiterbildungsklasse für Unternehmen über Perl. Der Ausbilder setzte Vim bei seinen Demonstrationen ein und bot an, den Leuten nebenbei zu helfen, obwohl dies nicht der Hauptzweck des Unterrichts war.
Ein inoffizielles Motto von Perl ist TMTOWTDI (es gibt mehr als eine Möglichkeit, dies zu tun). Wenn die Klasse Fragen stellte, nahm der Kursleiter Änderungen vor, um Alternativen anzuzeigen, schneller als er die Änderungen in Worten beschreiben konnte . Ich war es gewohnt, Code während der Bearbeitung lesen zu können, aber für ihn geschah die Bearbeitung in einer Flut von Schlüsseln, dann folgte die Erklärung im Vergleich dazu mit eisiger Geschwindigkeit. Wenn er nicht aufhören müsste, uns die Bearbeitung zu erklären, wäre er bereits zur nächsten Aufgabe übergegangen.
Ich habe ein paar ähnliche Möglichkeiten, um vim zu demonstrieren:
Ich denke, nur wenn Sie den Menschen sein Potenzial zeigen, nachdem Sie gelernt haben, dass es sie dazu inspiriert, die anfängliche Klobigkeit zu überwinden.
quelle
Es waren die inneren Bewegungen, die meine Augen zu schwebenden Herzen für Vim werden ließen. Neben dem
.
Wiederholen und Präfixieren von Zählungen ist das Zeigen innerer Bewegungen normalerweise eines der ersten Dinge, die ich zeige / teile, wenn mich jemand nach vim fragt.ci(
odergUi>
oderdiw
.g;
undg,
zu den Stellen zu springen, die Sie bearbeitet haben, ist normalerweise gut, um ein oder zwei Augen zu vergrößern.quelle
Obwohl
vi
es einen angesehenen Stammbaum in der Computergeschichte gibt, würde ich empfehlen, sich auf Folgendes zu konzentrierenvim
. Es ist ein voll ausgestatteter Editor mit unglaublichen Fähigkeiten, der mit jedem seiner Konkurrenten mithalten kann. Der einzige Nachteil ist die Lernkurve; Es braucht Zeit, um die "Vim-Einstellung" und das Muskelgedächtnis zu erlangen. Ich denke, es ist die Mühe wert. Es steht Ihnen viel Kraft zur Verfügung, wenn Sie sich darin auskennenvim
.vim-airline
, denn jeder mag eine gute Benutzeroberfläche.vi
/vim
ist auf allen Unix-basierten Systemen installiert; Daher sollte jeder professionelle Sysdamin ein funktionierendes Wissen darüber haben.quelle
Ich liebe VIM, aber die Lernkurve ist steil.
Es ist unwahrscheinlich, dass ein Fachmann, der VIM noch nicht übernommen hat, durch Argumente überzeugt wird . Nur aus Notwendigkeit.
Der häufigste Anwendungsfall besteht darin, dass Administratoren mehrere * NIX-Computer mit CLI über SSH remote verwalten.
VIM ist buchstäblich auf fast allen * NIX-Computern der Welt installiert.
VIM ist 25+ Jahre alt und unverändert, seitdem ich 1998 damit angefangen habe.
quelle
Bitten Sie den Schüler einfach, zwei Wörter mit seinem Word ™ -Prozessor zu tauschen.
… Dann zeige, wie der Meister das macht
vim
. (Hier ist das Mapping dazu; mehr hier .)Schließlich lassen die Schüler überlegen , ob er / sie wirklich mit einem gearbeitet hat Wort bisher Prozessor.
quelle
gvim
. Jetzt erinnere ich mich gut. Beim Schreiben eines englischen Textes als Muttersprachler wurden Wörter in einem Satz getauscht / bewegt. Dafür habe ich meine eigenen Vimscript-Mappings geschrieben .In Vim geht es auch um die Aufwertung von Nur-Text-Dateien
Im Kontext der Dokumenterstellung liegt der Wert von
vim
nicht nur in den hervorragenden Fähigkeiten der Wortbearbeitung. Vim ist auch ein Weg, um den Wert der allgegenwärtigen Nur-Text-Datei wiederherzustellen und die zeitlose Abwärtskompatibilität zu gewährleisten.Bei Vim geht es auch darum, sich ausschließlich auf Inhalte zu konzentrieren. nicht formatieren
Wenn man nicht in Web - Seite bearbeiten ist, die Trennung von Inhalt und Format könnte ein Paradigma erschütternd Konzept zu jedem normalen Büroangestellte sein. Aus diesem Grund zeige ich mich gerne
gvim
als Markdown- Editor in Kombination mit Pandoc und vielleicht einemmakefile
.Dies ist auch eine gute Demonstration der Unix- oder GNU / Linux-Philosophie, Programme zu kombinieren und weiterzuleiten , die in nur einer Sache extrem gut sind.
Als Bonus werden Sie sehen, dass die grundlegenden
vim
Tastenkombinationen in vielen anderen GNU / Linux-Programmen verwendet werden.quelle
Ergonomie
Mit der richtigen Einstellung kann ich stundenlang arbeiten, ohne Schulter- oder Rückenschmerzen zu bekommen.
Die richtige Einstellung ist natürlich für jeden anders, aber unter Verwendung von Vim in einem Terminal - Mapping Escauf Capslockund deaktivieren Sie die Maus und die Cursor - Taste ist ein guter Anfang.
quelle