Supponiamo che io ho questo codicecome avvolgere le forme con una forma esterna già scritto in paredit
(hello world)
(hi world)
Poi mi viene in mente che avrei dovuto avvolgere che con la seguente forma:
(let (acc)
<>
(nreverse acc))
risultando in questo codice:
(let (acc)
(hello world)
(hi world)
(nreverse acc))
Ecco come di solito faccio la confezione. Prima scrivo una forma esterna incompleta prima che si formi essere-avvolto come questo:
(let (acc))
(hello world)
(hi world)
Poi premere C-)
(paredit-forward-slurp-sexp
) due volte per slurp cose:
(let (acc)
(hello world)
(hi world))
Poi ho finito con l'aggiunta (nreverse acc)
alla fine.
Ora quello che mi chiedo è che cosa succede se ho iniziato scrivendo per prima cosa il modello di modulo esterno completo come questo?
(let (acc)
(nreverse acc))
(hello world)
(hi world)
o come questo
(hello world)
(hi world)
(let (acc)
(nreverse acc))
C'è una breve sequenza di paredit o non paredit comandi che posso premere per finire il lavoro da che iniziano?
Potrei spostare il punto, tagliare le due forme da avvolgere, spostare il punto, incollare i moduli. Ma mi chiedo se c'è un modo più conveniente.
Sono soddisfatto del modo in cui eseguo il wrapping, ma mi sembra che potrei mancare qualche altro trucchetto di editing che deve essere trovato da un inizio diverso.
Se tutto fallisce, utilizzare una macro della tastiera. Puoi anche estendere il paredit per fare quello che vuoi. GNU Emacs è estensibile. –