Je regarde le code responsable du repliement du code spacemacs lorsque l'origami est activé. Tout ce que je vois est hs-mode
activé et les touches liées aux fonctions de pliage de l'origami.Comment fonctionne le pliage spacemacs?
Lorsque je le mets dans ma configuration emacs (pas spacemacs), le pliage ne fonctionne pas comme dans les spacemacs. Ce qui suit est ce que j'ai trouvé de .emacs.d/layers/+spacemacs/spacemacs-editing/packages.el
.
(use-package origami
:defer t
:init
(progn
(origami-global-mode 1)
(define-key evil-normal-state-map "za" 'origami-forward-toggle-node)
(define-key evil-normal-state-map "zc" 'origami-close-node)
(define-key evil-normal-state-map "zC" 'origami-close-node-recursively)
...)
...)
Lorsque vous ajoutez cela à ma config emacs:
1) pliage ne fonctionne pas lorsqu'un sexp est en ligne 1
2) pliage fonctionne avec defun mais pas utiliser paquet ou autre fonctions
Je veux trouver l'espace spécifique de l'analyseur spacemacs pour définir les plis afin que je puisse le répliquer dans mes propres emacs. Mais je ne comprends pas comment le pliage fonctionne.
Par exemple, il est de me confondre que lorsque je vérifie la liaison de za
par exemple avec describe-key
, je vois la clé est liée à evil-toggle-fold
plutôt que origami-toggle-fold
qui est ce que j'attendais.
Vous avez raison le calque n'a pas été activé. Je ne suis toujours pas sûr de la façon dont spacemacs obtient réellement le pliage de travailler. Habituellement, avec le mal, il va dire "Pliage n'est pas pris en charge dans l'un de ces modes majeurs/mineurs", mais dans pliage spacemacs fonctionne simplement. Avez-vous une idée de l'endroit où je peux chercher pour savoir pourquoi? – Piglet
Evil pliant simplement déléguer à l'un des modes de repli disponibles, l'action est mappée dans la variable 'evil-fold-list'. Quand il est dit "Pliage non supporté ...", il suffit d'activer soit "mode mineur-mineur", "mode mineur-mode" ou "mode-origami" puis il suffit de travailler. – tungd