snakemake는 컴파일보다는 워크 플로우에 초점을 맞춘 파이썬과 같은 대체품입니다. 그것은 꽤 좋지만 또한 꽤 새로운데, Emacs에서이 모드를 찾지 못하는 것 같습니다. 난 그냥 아주 간단한 무언가 원하는 : 이맥스 설명서를 숙독에서 기본 모드에서 아주 약간의 수정, 그래서를, 나는 init.el에 다음과 같은 시작 : 메이크업과 같은snakemake 용 emacs 모드?
(define-derived-mode snake-mode fundamental-mode
...
)
, snakemake 실제 (들여 쓰기에 대한 엄격한 탭 "\ t"문자가 아니라, 이맥스가 TAB 입력시 기본적으로 어떻게 작동하는지). 대신 "C-q TAB"을 입력하면 버퍼에 실제 탭 문자가 저장됩니다.이 방법은 기본 모드에서 Snakefile을 사용하여 시도했지만 완벽하게 실행됩니다. 따라서이 모드에서 TAB을 원할 때마다 "C-q TAB"을 입력하지 않으려면 뱀 모드를 만들기 위해 Tab 키를 "C-q TAB"(또는 이와 비슷한 것)로 리바 인딩해야합니다. 그래서 이맥스 설명서를 숙독하고 시도 :
(define-derived-mode snake-mode fundamental-mode
(global-set-key (kbd "\t") (kbd "C-q \t"))
...
)
하지만 다른 대안이 작동하지 않습니다 ... 어쩌면 권장 연습 Tab 키와 같은 표준 키를하지 않는 리 바인딩?
싶습니다 뱀 모드로 다른 추가는 파이썬에 따라 구문 강조 (그러나 하지 어떤 파이썬 행동, 예를 들어, 파이썬 들여 쓰기 행동이) 단지, 이러한 2
는 결론을위한 "뱀 모드 (snake-mode)"를 만드는 기본 모드와 파일 이름이 "Snakefile"인 경우 뱀 모드를 호출하는 간단한 수정 방법을 찾고 있었지만 이미 이맥스 매뉴얼을 숙독하는 데 몇 시간을 소비했습니다. 인터넷 검색을하고있어, 내가 가까이 있지 않은 것 같아. 이것은 매우 간단하며 가능하다고 확신합니다. 어떤 충고?
감사
머레이는
이 "솔루션"에 대한 약간의 추가 정보 : "삽입 탭"기능은 이미 emacs에 정의되어 있으므로 (defun snake-tab() ... 또는 이미없는 다른 이름 네임 스페이스 – user2489449