Welche Emacs-Befehle müssen Sie kennen? [geschlossen]
22
Ich bin ein ziemlich neuer Konverter zu Emacs und ich liebe es wirklich als Editor, vor allem, weil ich immer wieder neue und super nützliche Befehle finde. Fehlen in meiner Liste weitere Programmierbefehle, die bekannt sein müssen?
M-x replace-string - Find and replace a given string.
M-x goto-line - Goto a specific line
M-x column-number-mode - Show the current column number in text bar
Der Org-Modus eignet sich hervorragend für Notizen. Kein Befehl.
Kasterma
noch ein nicht befehl, aber schön im ido-modus zu schauen.
Kasterma
5
Mg Mg ist eine kürzere Aufforderung von goto-line
Frank Shearar 18.11.10
Antworten:
20
Ch a - Apropos Suchfunktionen
Ch b - Läufe beschreiben-bindend
Ch k - startet den describe-key
Ch f - Läuft eine Beschreibungsfunktion
Ch v - führt describe-variable aus
Wenn Sie diese kennen, können Sie Emacs erkunden und Dinge finden, die Sie noch nicht kennen. Lernen lernen, das ist wichtig. Alles andere kann später herausgefunden werden.
Apropos sollten ganz oben auf der Liste stehen. Zuerst müssen Sie Dinge entdecken, bevor Sie die Dokumentation lesen können.
Starblue
23
Nun, zuerst müssen Sie einige Grundlagen der Textbearbeitung kennen:
C-w : Cut
M-w : Copy
C-y : Paste
C-x s : save
C-x c : save all and close
Dann ist es praktisch zu lernen, wie man sich in der Datei bewegt:
M-b : back one word
M-f : foward one word
C-a : beginning of line
C-e : end of line
C-n : next line
C-p : previous line
M-< : beginning of buffer
M-> : end of buffer
Dann ist es gut zu lernen, wie man mit mehreren Dateien / Puffern und Fenstern navigiert
C-x C-f : find file
C-x b : switch buffer
C-x k : kill buffer
C-x 2 : split-window-vertically
C-x 3 : split-window-horizontally
C-x o : switch window
C-x 0 : kill this window
C-x 1 : kill all other windows
Danach hier noch ein paar andere. Befehle, die nützlich sein können:
C-s : search
C-r : search backward
M-/ : autocomplete word (based on previous words in the file)
M-x : align-regexp
M-( : start keyboard macro
M-) : end keyboard macro
C-x e: execute keyboard macro.
Ich denke, ich muss das ausdrucken und dich millionenfach unterstützen.
CodexArcanum
In der Tat sind es die letzten drei Makros, die Emacs zu einem großen Gewinn machen. Sie können es subtil verwenden und die Leute werden denken, dass Emacs psychisch ist.
Macneil
2
ist das nicht eher M-/ : autocomplete word (based on previous words in the file)? (Schrägstrich statt Back-Slash? Oder verwechsle ich das mit etwas anderem?)
Haylem
@ Haylem, du hast recht. behebt es in der Antwort.
GSTO
In der Tat M-xist für execute-extended-command. Sie verwenden es für ungebundene Befehle (und align-regexpist nur einer von ihnen).
Rsenna
11
Unglaublich praktisch beim Codieren:
M-; : comment-dwim
comment-dwim schaltet das Kommentieren der aktuellen Region um. Kommentieren, wenn es nicht kommentiert ist, und umgekehrt. In Ihrem aktuellen Sprachmodus weiß der Emacs, wie er kommentiert.
Wenn kein aktiver Bereich vorhanden ist und sich Text in der Zeile befindet, wird standardmäßig ein Kommentar am Ende der Zeile eingefügt. Ich persönlich bevorzuge es, die gesamte aktuelle Zeile zu kommentieren.
;; Original idea from
;; http://www.opensubscriber.com/message/[email protected]/10971693.html
(defun comment-dwim-line (&optional arg)
"Replacement for the comment-dwim command.
If no region is selected and current line is not blank and we are not at the end of the line,
then comment current line.
Replaces default behaviour of comment-dwim, when it inserts comment at the end of the line."
(interactive "*P")
(comment-normalize-vars)
(if (and (not (region-active-p)) (not (looking-at "[ \t]*$")))
(comment-or-uncomment-region (line-beginning-position) (line-end-position))
(comment-dwim arg)))
(global-set-key "\M-;" 'comment-dwim-line)
nett! Ich wusste nichts über diese und wünschte mir, dass sie existiert.
GSto
Ich bevorzuge comment-or-uncomment-regionfür meine Zwecke zu kommentieren. Hiermit kann ich einen Codeblock vorübergehend auskommentieren, wenn dies erforderlich ist.
Inaimathi
Ich binde C-; to toggle-comment-on-line um den Zeilenumbruch zu behandeln und comment-dwim mit seiner ursprünglichen Funktionalität zu erhalten.
Chris Clark
Err, und sollte die Toggle-Kommentar-Online-Funktion enthalten haben :) (defun toggle-comment-on-line () (interactive) (comment-or-uncomment-region (line-beginning-position) (line-end-position)))
Chris Clark
6
Versuchen Sie das Tutorial (Ch t). Es bringt Ihnen viele grundlegende Tastenkombinationen bei, und DANN können Sie nach noch mehr lustigen suchen.
Ich schäme mich zu sagen, dass ich noch nie davon gehört habe!
Haylem
3
M-x apropos
M-x describe-key
M-x describe-bindings
C-x C-f ~/.emacs (Es hilft, wenn du Elisp kennst, bevor du diesen ausführst.)
So ziemlich alles andere ist persönliche Präferenz. Die Leute reden manchmal über Emacs, als wäre es ein Editor.
Das ist nicht wahr.
Emacs ist eine Sprache, die entwickelt wurde, um Redakteure kurz und bündig auszudrücken (das heißt, Elisp ist das beste "Feature"). Wie viel Kilometer Sie davon haben, hängt davon ab, wie gut Sie dieses Prinzip verstehen.
Gute Symmetrie, da lisp eine programmierbare Programmiersprache ist. (Oder eine Programmiersprache, mit der Sie eine Programmiersprache genau beschreiben können.)
Frank Shearar
1
Nicht ganz richtig. Emacs ist eine interaktive LISP-Umgebung, in der bestimmte LISP-Entwurfsentscheidungen auf eine Weise gelöst wurden, die das Schreiben von Editoren und Editorerweiterungen erleichtert, sowie eine ganze Reihe von in die Infrastruktur kompiliertem Dosencode, mit dessen Hilfe Editoren geschrieben werden können.
John R. Strohm
1
M-:
Auf diese Weise können Sie ein beliebiges Elisp im Minibuffer auswerten
M-. (Mx find-tag) erfordert das Ausführen von etags in Ihrem Code
M- / (Mx dabbrev-expand)
Mx kompilieren
Cx vv (Mx vc-next-action)
Mx Font-Lock-Modus
und lesen Sie die Dokumentation für den von Ihnen verwendeten Sprachmodus (Ch m (Mx describe-mode))
Ich bin auch ein großer Fan von (Mx Shell), M-! (Mx Shell-Befehl) und M- | (Mx shell-command-on-region), weil ich es sehr praktisch finde, in Emacs Befehle auszuführen und die Ausgabe auszuschneiden und einzufügen.
Außerdem sind Mx-Sortierzeilen, Mx-Sortierfelder und Mx-Sortiernummernfelder nützlich, um lange Listen von Dingen (wie Variablennamen) in alphabetischer oder numerischer Reihenfolge zu führen.
Antworten:
Wenn Sie diese kennen, können Sie Emacs erkunden und Dinge finden, die Sie noch nicht kennen. Lernen lernen, das ist wichtig. Alles andere kann später herausgefunden werden.
quelle
Nun, zuerst müssen Sie einige Grundlagen der Textbearbeitung kennen:
Dann ist es praktisch zu lernen, wie man sich in der Datei bewegt:
Dann ist es gut zu lernen, wie man mit mehreren Dateien / Puffern und Fenstern navigiert
Danach hier noch ein paar andere. Befehle, die nützlich sein können:
Für eine vollständige Referenz: Link
quelle
M-/ : autocomplete word (based on previous words in the file)
? (Schrägstrich statt Back-Slash? Oder verwechsle ich das mit etwas anderem?)M-x
ist fürexecute-extended-command
. Sie verwenden es für ungebundene Befehle (undalign-regexp
ist nur einer von ihnen).Unglaublich praktisch beim Codieren:
comment-dwim schaltet das Kommentieren der aktuellen Region um. Kommentieren, wenn es nicht kommentiert ist, und umgekehrt. In Ihrem aktuellen Sprachmodus weiß der Emacs, wie er kommentiert.
Wenn kein aktiver Bereich vorhanden ist und sich Text in der Zeile befindet, wird standardmäßig ein Kommentar am Ende der Zeile eingefügt. Ich persönlich bevorzuge es, die gesamte aktuelle Zeile zu kommentieren.
Habe es mir von http://www.emacswiki.org/emacs/CommentingCode gestohlen
quelle
comment-or-uncomment-region
für meine Zwecke zu kommentieren. Hiermit kann ich einen Codeblock vorübergehend auskommentieren, wenn dies erforderlich ist.(defun toggle-comment-on-line () (interactive) (comment-or-uncomment-region (line-beginning-position) (line-end-position)))
Versuchen Sie das Tutorial (Ch t). Es bringt Ihnen viele grundlegende Tastenkombinationen bei, und DANN können Sie nach noch mehr lustigen suchen.
quelle
M-x apropos
M-x describe-key
M-x describe-bindings
C-x C-f ~/.emacs
(Es hilft, wenn du Elisp kennst, bevor du diesen ausführst.)So ziemlich alles andere ist persönliche Präferenz. Die Leute reden manchmal über Emacs, als wäre es ein Editor.
Das ist nicht wahr.
Emacs ist eine Sprache, die entwickelt wurde, um Redakteure kurz und bündig auszudrücken (das heißt, Elisp ist das beste "Feature"). Wie viel Kilometer Sie davon haben, hängt davon ab, wie gut Sie dieses Prinzip verstehen.
quelle
Auf diese Weise können Sie ein beliebiges Elisp im Minibuffer auswerten
schreibgeschütztes Anzeigen einer Datei
Kommentarbereich
unter anderen!
quelle
und lesen Sie die Dokumentation für den von Ihnen verwendeten Sprachmodus (Ch m (Mx describe-mode))
Ich bin auch ein großer Fan von (Mx Shell), M-! (Mx Shell-Befehl) und M- | (Mx shell-command-on-region), weil ich es sehr praktisch finde, in Emacs Befehle auszuführen und die Ausgabe auszuschneiden und einzufügen.
Außerdem sind Mx-Sortierzeilen, Mx-Sortierfelder und Mx-Sortiernummernfelder nützlich, um lange Listen von Dingen (wie Variablennamen) in alphabetischer oder numerischer Reihenfolge zu führen.
quelle
Mx Revert-Buffer ist einer, den ich oft benutze.
quelle
Mx Hilfe-mit-Tutorial
quelle