cygwinのemacsのshellモードのシェルをzshからbashにしてみた

Pocket

cygwinのemacsのshellモードのシェルをzshからbashにしてみた
bashncygwinのemacsのshellモードのシェルをzshからbashにしてみた

なぜか、cygwinのshellモードのデフォルトのシェルはzshだったので、bashにしてみました。

zshの使い方がよく分からない、cygwin初心者の自分も助かります。

zshはなんでも高機能シェルだそうで、かなりイケてるシェルだそうです。

あ、でも、自分、「Bash The Black Knight」のファンなので。(エルガイムは見た記憶はないのですが、F.S.S.ということで)

bashにするには、以下のEmacsLISPを、~/emacs.d/init.elに入れます。

;; shell の存在を確認
(defun skt:shell ()
  (or
;;      (executable-find "zsh")
      (executable-find "bash")
      ;; (executable-find "f_zsh") ;; Emacs + Cygwin を利用する人は Zsh の代りにこれにしてください
      ;; (executable-find "f_bash") ;; Emacs + Cygwin を利用する人は Bash の代りにこれにしてください
      (executable-find "cmdproxy")
      (error "can't find 'shell' command in PATH!!")))

;; Shell 名の設定
(setq shell-file-name (skt:shell))
(setenv "SHELL" shell-file-name)
(setq explicit-shell-file-name shell-file-name)

コメントアウトを解除すれば、zshにすることもできます。

以下、参考にしたサイトのURL:(ありがとうございます OSZ)

20170913

Emacs 上で快適に Bash や Zsh を利用する設定 : 紹介マニア