Modifica le mie risposte StackOverflow e domande con ViewSourceWith ed Emacs. Spesso, includo il codice e StackOverflow formatting rules affermano che deve essere rientrato da quattro spazi per essere riconosciuto come tale. Farlo a mano o anche con i macro è doloroso.Utilizzo di Emacs per il rientro (passaggio 4) codice
Ho cercato nei post precedenti di SO ma non ho trovato nulla.
A partire dalla modalità di Python, ho scritto:
(defun text-shift-region (start end count)
"Indent lines from START to END by COUNT spaces."
(save-excursion
(goto-char end)
(beginning-of-line)
(setq end (point))
(goto-char start)
(beginning-of-line)
(setq start (point))
(indent-rigidly start end count)))
(defun text-shift-region-right (start end &optional count)
"Shift region of code to the right
Stolen from python-mode.
The lines from the line containing the start of the current region up
to (but not including) the line containing the end of the region are
shifted to the right, by `text-indent-offset' columns.
If a prefix argument is given, the region is instead shifted by that
many columns. With no active region, indent only the current line."
(interactive
(let ((p (point))
(m (mark))
(arg current-prefix-arg))
(if m
(list (min p m) (max p m) arg)
(list p (save-excursion (forward-line 1) (point)) arg))))
(text-shift-region start end (prefix-numeric-value
(or count text-indent-offset)))
)
;; Code in StackOverflow must be marked by four spaces at the
;; beginning of the line
(setq text-indent-offset 4)
(global-set-key "\C-c>" 'text-shift-region-right)
Sembra funzionare, ma sono lieto consigli, alternative, segnalazioni di bug, ecc
Questa non è una domanda ... –
Spero di ottenere alternative alla mia soluzione rapida o di ricevere patch interessanti. – bortzmeyer
Inoltre, sembra che possa aiutare alcune persone quindi lo uso come un modo per vedere se c'è abbastanza interesse da chiedere una documentazione da qualche parte. – bortzmeyer