Como bloquear citações de texto de uma só vez

7

Com este texto:

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

$ echo hello

Como faço para transformá-lo em:

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

Sem usar a expressão regular complicada: M-x replace-regexp RET ^ RET > RET

Observe que eu não poderia usar a C-M-%tecla de atalho para conjurar, query-replace-regexppois não é possível produzir essa combinação de teclas em um terminal.

Tankman 六四
fonte

Respostas:

5

Você pode usar string-rectangle( C-x r t).

Defina uma marca ( C-SPC) antes do primeiro caractere da primeira linha, mova o cursor até o primeiro caractere da última linha, use C-x r t, digite >e a tecla ENTER.

adl
fonte
3

Se você fizer muito isso, poderá utilizar comment-region. Essencialmente, adicione um gancho ao seu modo que esteja definido comment-startcomo >e adicione uma ligação de chave para comment-region(em c-mode, por exemplo, é C-c C-c). Isso tem o benefício de ser reversível com 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
fonte
BTW, @ peer-gynt obrigado pela idéia, eu coloquei isso sozinho .emacs! :)
cyberbisson 15/04/19
1

Você pode marcar a região a ser citada usando C-SPCif no modo Texto e usar o M-;que está vinculado comment-dwime que solicitará uma "Sintaxe de comentário" que você poderá inserir >no prompt.

Depois de usar comment-dwimpara prefixar as linhas, você também poderá descobrir M-qqual é fill-paragraphútil para agrupar as linhas da cotação em bloco, se não estiver interessado em preservar o comprimento da linha original.

Como alternativa, se você tiver markdown-modeinstalado, poderá M-x markdown-modealternar para ele e marcar a região que deseja citar e usar à C-c C-s qqual está vinculada markdown-insert-blockquote.

Por fim, se você realmente deseja usar query-replace-regexpum terminal que, às vezes, não funciona devido à combinação das teclas Ctrl, Meta e Shift, que precisam ser pressionadas ao mesmo tempo, você pode achar que funciona usando o seguinte sequência Escentão C-%. A Escchave é essencialmente uma tecla "meta lock" que mantém a meta pressionada durante a próxima sequência de teclas.

b4hand
fonte