So blockieren Sie Text auf einmal

7

Mit diesem Text:

Play with it a few times you will see my point. The 
command you need is:

$ echo hello

Wie mache ich es zu:

> Play with it a few times you will see my point. The
> command you need is:
>
> $ echo hello

Ohne den komplizierten regulären Ausdruck zu verwenden: M-x replace-regexp RET ^ RET > RET

Beachten Sie, dass ich keine C-M-%Tastenkombination zum Beschwören verwenden konnte, query-replace-regexpda es nicht möglich ist, diese Tastenkombination in einem Terminal zu erstellen.

Tankman 六四
quelle

Antworten:

5

Sie können string-rectangle( C-x r t) verwenden.

Setzen Sie eine Markierung ( C-SPC) vor das erste Zeichen der ersten Zeile, bewegen Sie den Cursor bis zum ersten Zeichen der letzten Zeile, verwenden Sie C-x r t, geben Sie die >EINGABETASTE ein.

adl
quelle
3

Wenn Sie dies häufig tun, können Sie es nutzen comment-region. Fügen Sie Ihrem Modus im Wesentlichen einen Hook hinzu, der comment-startauf eingestellt ist >, und fügen Sie dann eine Schlüsselbindung für hinzu comment-region( c-modez. B. in C-c C-c). Dies hat den Vorteil, dass es auch reversibel ist mit uncomment-region:

(add-hook 'text-mode-hook
          #'(lambda ()
              (require 'newcomment)
              (make-local-variable 'comment-start) ;; Always make buffer-local
              (setq comment-start "> ")
              (local-set-key "\C-c\C-c" #'comment-region)))
Cyberbisson
quelle
Übrigens, @ peer-gynt, danke für die Idee, ich habe das einfach selbst gemacht .emacs! :)
Cyberbisson
1

Sie können den zu zitierenden Bereich C-SPCim Textmodus markieren und verwenden, M-;der an diesen gebunden comment-dwimist. Dadurch werden Sie zur Eingabe einer "Kommentarsyntax" aufgefordert, die Sie dann >in die Eingabeaufforderung eingeben können .

Nach comment-dwimdem Präfixieren der Zeilen können Sie auch feststellen, M-qwelche fill-paragraphZeilen zum Umbrechen der Zeilen des Blockzitats nützlich sind, wenn Sie nicht daran interessiert sind, die ursprüngliche Zeilenlänge beizubehalten.

Wenn Sie markdown-modeinstalliert haben, können Sie alternativ M-x markdown-modedazu wechseln und dann die Region markieren, die Sie zitieren und verwenden C-c C-s qmöchten markdown-insert-blockquote.

Wenn Sie wirklich query-replace-regexpvon einem Terminal aus arbeiten möchten, von dem ich festgestellt habe, dass es manchmal aufgrund der Kombination von Strg-, Meta- und Umschalttasten, die alle gleichzeitig gedrückt werden müssen, nicht funktioniert, funktioniert es möglicherweise wie folgt Sequenz Escdann C-%. Der EscSchlüssel ist im Wesentlichen ein "Meta-Lock" -Schlüssel, der das Meta für die Dauer der nächsten Schlüsselsequenz gedrückt hält.

b4hand
quelle