在emacs中以sh模式打开zsh脚本

前端之家收集整理的这篇文章主要介绍了在emacs中以sh模式打开zsh脚本前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
* .zsh文件以默认模式打开(对我来说是文本模式).但是,sh-mode实际上是多种模式,包括zsh,bash等的行为.如何告诉emacs在sh-mode的zsh风格中专门打开* .zsh文件

解决方法

sh-mode的味道是从shebang行(脚本的第一行)中自动检测的.如果您有“#!/ bin / zsh”,则会假设zsh并且(例如)autoload将被识别为关键字.如果第一行是“#!/ bin / bash”,则无法识别自动加载

要使emacs将* .zsh文件识别为shell脚本,只需将其添加到init文件中:

(add-to-list 'auto-mode-alist '("\\.zsh\\'" . sh-mode))

当你不想使用shebang时选择一种风味的程序化方法是在sh模式缓冲区中这样做:

(sh-set-shell "zsh")

所以在你的情况下你需要的东西(除非你使用shebang)是更新auto-mode-alist,如上所述

(add-hook 'sh-mode-hook
          (lambda ()
            (if (string-match "\\.zsh$" buffer-file-name)
                (sh-set-shell "zsh"))))
原文链接:https://www.f2er.com/linux/394555.html

猜你在找的Linux相关文章