gpt4 book ai didi

emacs - 在emacs的sh模式下打开zsh脚本

转载 作者:行者123 更新时间:2023-12-03 15:59:33 24 4
gpt4 key购买 nike

*.zsh文件以默认模式(对我而言是文本模式)打开。但是,sh-mode实际上是多种模式,包括zsh,bash等的行为。我如何告诉emacs以sh-mode的zsh风格专门打开*.zsh文件?

最佳答案

从shebang行(脚本的第一行)自动检测到sh模式的味道。如果您使用“#!/bin/zsh”,则将假定为zsh,并且autoload(例如)将被识别为关键字。如果第一行是“#!/bin/bash”,那么autoload将不会被识别。

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

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

当您不想使用shebang时,一种选择口味的编程方式是在sh-mode缓冲区中进行此操作:
(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"))))

关于emacs - 在emacs的sh模式下打开zsh脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20558402/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com