2017-09-24 15 views
0

종이 접기가 가능할 때 spacemacs 코드 폴딩을 담당하는 코드를보고 있습니다. 내가 볼 수있는 것은 hs-mode이며 종이 접기의 접기 기능에 연결된 키입니다.spacemacs 폴딩은 어떻게 작동합니까?

내가 이맥스 (spacemacs가 아님)에 넣었을 때 접이식이 우주선에서와 같이 작동하지 않습니다. 다음은 내가 찾은 것입니다 .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) 
    ...) 
    ...) 

내 이맥스 설정이를 추가 할 때 :

sexp 사용하는 패키지 또는 다른 1

2) 접는는 defun는 작동 줄에 아닌 경우 작동하지 않습니다 1) 접는 함수

나는 자신의 이맥스에서 그것을 복제 할 수 있도록 접이식을 정의하기 위해 spacemacs가 사용하는 특정 파서를 찾고 싶다. 하지만 접이식이 어떻게 작동하는지 이해할 수 없습니다.

는 예를 들어, 내가 키가 오히려 내가 기대하는 것입니다 origami-toggle-fold보다 evil-toggle-fold에 바인딩을 참조 describe-key으로 예를 들어 za의 바인딩을 검사 할 때 나에게 혼란. describe-key 이후

답변

0

내가 레이어가 실제로 사용할 수 없습니다 생각, zaevil-toggle-fold에 바인딩되어 있음을 보여 주며, 접는 동작은 hs-minor-mode 그냥 일반입니다. hs-minor-mode을 켜고 C-c @ C-c으로 섹스를 전환 해 볼 수 있습니다.

+0

당신이 맞다면 레이어가 활성화되지 않았을 것입니다. 나는 spacemacs가 실제로 작동하도록 접이식을 실제로 얻는 방법에 관해 아직도 확신하지 않고있다. 일반적으로 악의와 함께, 그것은 "접기가 이러한 주요/부전공 모드들 중 어느 것도 지원되지 않는다"라고 말할 것이지만 접이식 우주선에서는 단지 작동합니다. 왜 내가 그걸 찾을 수 있는지 생각해? – Piglet

+0

이블 폴딩은 사용 가능한 폴딩 모드로 위임합니다. 액션은'evil-fold-list' 변수에 매핑됩니다. "Folding not supported ..."라고 말하면'hs-minor-mode','outline-minor-mode' 또는'origami-mode'를 활성화하면됩니다. – tungd