Par exemple, j'ai un mode org qui a ce qui suit
#+BEGIN_SRC emacs-lisp
#+END_SRC
Est-il possible de configurer les yasnippets de telle manière que tous les extraits de mode emacs-lisp puissent être développés à l'intérieur de ce bloc mais pas à l'extérieur?
C-c '
toute façon - dans ce cas, le mode majeur emacs-lisp aurait les extraits de yasnippet appropriés chargés lors de l'édition du bloc dans sa fenêtre séparée (qui prend également en charge la bonne indentation etc.)Réponses:
À partir du 22 janvier 2017, si vous définissez
org-src-tab-acts-natively
etorg-src-fontify-natively
, TAB dans les blocs source étendra les extraits de la langue du bloc. Vous souhaiterez peut-être définiryas-buffer-local-condition
pour empêcher les extraits de mode en mode organisationnel de suivre les extraits de mode en mode bloc:Voir aussi https://github.com/joaotavora/yasnippet/issues/761 , https://github.com/joaotavora/yasnippet/pull/760
la source
J'utilise deux méthodes pour cela. J'ai quelques extraits d'organisation pour m'aider à créer les en-têtes babel. Par exemple, celui-ci crée des en-têtes C ++ - 14 pour Babel. Je tape
<s C++_
et développe:Ensuite, j'utilise Cc 'qui bascule vers le mode de langue spécifique et utilise les extraits de code pour cette langue. Ensuite, utilisez Cc 'pour revenir au fichier org. Ça marche bien.
la source
Comme npostavs a déjà répondu, les extraits sont développés différemment selon les langues dans un fichier en mode organisation.
Tapez simplement "co" et [tab] dans le bloc de code Python ou Emacs Lisp.
la source