snakemake 是一个类似于 python 的 make 替代品,它更适合于工作流而不是编译。它非常好,但也很新,我似乎无法在 Emacs 中找到它的模式。我只想要一些非常简单的东西:对基本模式进行非常轻微的修改,所以我在阅读 emacs 手册时,我在 init.el 中开始了以下内容:
(define-derived-mode snake-mode fundamental-mode
...
)
像 make 一样,snakemake 对缩进很严格(实际的制表符“\t”字符,而不是当键入 TAB 时 emacs 的默认行为方式)。当我键入“Cq TAB”时,它会在缓冲区中放置一个真正的制表符:这可行,我在基本模式下使用 Snakefile 进行了尝试,它运行完美。因此,为了避免每次在此模式下需要 TAB 时都键入“Cq TAB”,我想对蛇模式进行的第一个添加是将 TAB 键重新绑定到“Cq TAB”(或类似的东西)。所以我仔细阅读了emacs手册并尝试了:
(define-derived-mode snake-mode fundamental-mode
(global-set-key (kbd "\t") (kbd "C-q \t"))
...
)
但是这个和其他替代方法都不起作用......也许像 TAB 键这样的重新绑定标准键不是推荐的做法?
我想要的蛇模式的另一个补充是它根据python突出显示语法(但没有任何python行为,例如python缩进行为)
总而言之,在创建“蛇模式”时对基本模式的这两个简单修改以及在文件名是“蛇文件”时调用蛇模式的方法就是我所寻找的,但我已经花了几个几个小时阅读 emacs 手册并进行一些谷歌搜索,似乎我还没有接近。这很简单,我很确定这是可能的;有什么建议吗?
谢谢
默里