org-babel shell 总是绑定到 "fish"
org-babel shell always binds to "fish"
我在主笔记本电脑上将出色的 fish
shell 设置为默认值 shell。出于可移植性原因(以及可编辑性原因,因为编辑 fish shell 源代码块存在错误且速度缓慢)我有时仍然希望在我的 org-mode
源代码中使用 sh
或 bash
块。似乎 org 总是解析为 fish
,无论我尝试什么:
#+BEGIN_SRC sh
echo $SHELL
#+END_SRC
#+RESULTS:
: /usr/bin/fish
#+BEGIN_SRC bash
echo $SHELL
#+END_SRC
#+RESULTS:
: /usr/bin/fish
#+BEGIN_SRC fish
echo $SHELL
#+END_SRC
#+RESULTS:
: /usr/bin/fish
#+BEGIN_SRC shell
echo $SHELL
#+END_SRC
#+RESULTS:
: /usr/bin/fish
org-babel-shell-names
设置为 ("sh" "bash" "zsh" "fish" "csh" "ash" "dash" "ksh" "mksh" "posh")
。我该如何调试?或者有什么方法可以将 shell 全局设置为 bash org-babel
?我在提交 5fcd84d84
和最新的 org-mode.
时使用带有 spacemacs 配置的 emacs 26.3
我想你会发现 SHELL
环境变量不是你想的那样。
尝试回显 [=11=]
或 运行 任何内置的 shell 命令,它将给出 shell 特定的输出(bash 有一个help
命令,例如)。
我在主笔记本电脑上将出色的 fish
shell 设置为默认值 shell。出于可移植性原因(以及可编辑性原因,因为编辑 fish shell 源代码块存在错误且速度缓慢)我有时仍然希望在我的 org-mode
源代码中使用 sh
或 bash
块。似乎 org 总是解析为 fish
,无论我尝试什么:
#+BEGIN_SRC sh
echo $SHELL
#+END_SRC
#+RESULTS:
: /usr/bin/fish
#+BEGIN_SRC bash
echo $SHELL
#+END_SRC
#+RESULTS:
: /usr/bin/fish
#+BEGIN_SRC fish
echo $SHELL
#+END_SRC
#+RESULTS:
: /usr/bin/fish
#+BEGIN_SRC shell
echo $SHELL
#+END_SRC
#+RESULTS:
: /usr/bin/fish
org-babel-shell-names
设置为 ("sh" "bash" "zsh" "fish" "csh" "ash" "dash" "ksh" "mksh" "posh")
。我该如何调试?或者有什么方法可以将 shell 全局设置为 bash org-babel
?我在提交 5fcd84d84
和最新的 org-mode.
我想你会发现 SHELL
环境变量不是你想的那样。
尝试回显 [=11=]
或 运行 任何内置的 shell 命令,它将给出 shell 特定的输出(bash 有一个help
命令,例如)。