Lorsque j'utilise le mode organisationnel pour prendre des notes sur un livre, je vais parfois copier / coller des extraits de code dans le fichier de notes. Après l'avoir collé, je vais
1. `C-c '` to call `org-edit-special`
2. `C-x h` to mark all the source code
3. `TAB` to format it
Existe-t-il une solution en mode org pour moi qui, après avoir collé du code #+BEGIN_SRC...#+END_SRC
, formatera automatiquement le bloc de code ou je peux utiliser une seule clé TAB
pour formater (mettre en retrait) tout le bloc de code source?
La valeur par défaut TAB
(tapée dans le bloc, sans utiliser C-c '
) est simplement d'aligner toutes les lignes 2 colonnes après l'en- #+BEGIN_SRC
tête, s'il y a des espaces au début de la deuxième ligne, cela ajoutera simplement plus d'espaces, il n'indentera pas toutes les lignes comme les 3 étapes.
la source
run-at-time
fait, comment puis-je lier laTAB
clé pour faire cela pour remplacer la valeur par défautTAB
quandorg-in-src-block-p
. La valeur par défautTAB
est liée àyas-expand
mais elle fera les choses comme je l'ai dit dans mon post.Commencez avec https://github.com/Bruce-Connor/aggressive-indent-mode pour obtenir le comportement de collage que vous décrivez.
Tu sais faire le reste.
la source
Voici le code que j'ai écrit pour résoudre ce problème:
la source