2014-02-12 61 views
1

我正在使用Emacs Live。我如何配置emacs ansi-term來允許登錄shell?當我嘗試切換rvm gemsets時,我收到以下消息:Emacs ansi-term作爲登錄shell

RVM is not a function, selecting rubies with 'rvm use ...' will not work. 
    You need to change your terminal emulator preferences to allow login shell. 
    Sometimes it is required to use `/bin/bash --login` as the command. 
    Please visit https://rvm.io/integration/gnome-terminal/ for a example. 

謝謝!

+0

我想我在前段時間嘗試Ruby時遇到了同樣的問題。 將此行添加到您的'〜/ .bashrc'中:'PATH = $ PATH:$ HOME/.rvm/bin' –

+0

投票開放,因爲Emacs和RVM肯定是「程序員常用的軟件工具」 [help/on-topic]。 – legoscia

回答

-3

的Mxansi-term問你要運行的程序,你應該替換默認提供的值:

/bin/bash --login 

RET

+0

當我這樣做ansi-term不運行時,它只停留在我運行該命令的緩衝區中。 –

+0

如果您使用標準emacs版本,但沒有Emacs Live配置('emacs -q'或'emacs -Q'),該怎麼辦? – Francesco

+2

'ansi-term'不會解析shell的參數。 – DGrady

2

我發現之前,如果我添加以下行,Emacs會發現RVM作爲一項功能並停止抱怨。

# Load RVM into a shell session *as a function* 
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"