1

背景: RVM を最新バージョンと .rvmrc に更新して、rVM にプロジェクト固有の gemset を使用するように指示できるようにしました。ただし、現在は bash シェルがログイン シェルである必要があります。それで、ubuntuのターミナルの編集|設定を介してそれを行いました。それは完全にうまくいきます。

ただし、gedit の組み込み端末は、まだ「ログイン シェルとしてコマンドを実行」していません。しかし、起動後に gedit の組み込み端末に「/bin/bash --login」と入力することで、この問題を解決できます。

これは問題ない回避策ですが、これを自動的に行う方法が必要だと感じました。

~/.bashrc ファイルの最後に次のバリエーションを追加しようとしましたが、うまくいきましたが、プロンプトモードに戻るには ctrl-c を押す必要がありました。別の副作用として、通常の端末でもプロンプト モードに戻るには ctrl-C を押す必要があります。

/bin/bash -l -i

~/.bashrc ファイルにそのコマンドを実行し、毎回 ctrl-C を押さずにプロンプ​​ト モードに戻るように指示するにはどうすればよいですか? または、この目標を達成するための他の方法。

前もって感謝します。

ps askubuntuにも投稿しました

https://askubuntu.com/questions/226694/how-to-change-gedit-embedded-terminal-to-be-run-command-as-login-shell

4

2 に答える 2

5

これをbashrcスクリプトに追加します:

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"

私のために働いた。

(まだ必要です:PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting

それが役に立てば幸い

于 2013-03-08T16:25:06.717 に答える
1

ターミナル プラグインは Python で記述されているため、カスタマイズを試みることができます。インストールしたファイルを直接編集すると、パッケージの更新時に変更が上書きされることに注意してください。

「/usr/lib/gedit/plugins/terminal.py」ファイルの 90 行付近に、次のような行があります。 self._vte.fork_command_full(Vte.PtyFlags.DEFAULT, None, [Vte.get_user_shell()], None, GLib.SpawnFlags.SEARCH_PATH, None, None)

リスト内のシェルに引数を追加します。 self._vte.fork_command_full(Vte.PtyFlags.DEFAULT, None, [Vte.get_user_shell(), "-l", "-i"], None, GLib.SpawnFlags.SEARCH_PATH, None, None)

于 2012-12-10T22:16:30.103 に答える