web-dev-qa-db-ja.com

Rおよびpythonでのコマンド補完

Bashターミナルでは、これらの行を/etc/inputrcファイル:

$if Bash
    # Search history back and forward using page-up and page-down
    "\e[5~": history-search-backward
    "\e[6~": history-search-forward

    "\e[A": history-search-backward    # arrow up
    "\e[B": history-search-forward     # arrow down

    # Completion
    set match-hidden-files off
    set page-completions off
    set completion-query-items 350
    set show-all-if-ambiguous on

$endif

Rやpythonインタラクティブ環境などのプログラムでこの機能を使用する方法があるのだろうか?

Rのワークステーションでは、どういうわけかこの機能を持っているので、ラップトップ用にどのように構成できるのでしょうか。 Rバージョンは次のとおりです。

R version 3.0.1 (2013-05-16) -- "Good Sport"
Copyright (C) 2013 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

だから、私はそれが可能であると確信していますが、誰もそれを設定する方法を知っていますか?

4
Vahid Mirjalili

別のインタラクティブセッションでbash補完を使用することはできません-その時点ではbashと対話していません。

デフォルトのpythonインタープリターはオートコンプリート機能を提供しませんが、 IPythonSudo apt-get install ipython)履歴とオートコンプリート機能の範囲を提供します。

デフォルトのRインタープリターは自動補完を提供します。より良いコマンドラインインタープリターを取得できるかどうかはわかりませんが、 RStudio (リポジトリではなく、debパッケージをサイトからダウンロードする)のようなGUIが優れた対話性を提供します。

3
chronitis

簡単な方法は、.pythonstartup.pyというスクリプトに次の行を追加し、ホームディレクトリに配置することです。

import rlcompleter, readline
readline.parse_and_bind('tab:complete')

次に、.bashrcに次の行を追加します。

export PYTHONSTARTUP="/home/YOUR_USERNAME/.pythonstartup.py"
  • 注1:.bashrcファイルは通常、ホームディレクトリ(~)にあります。
  • 注2:YOUR_USERNAMEを実際のユーザー名に置き換えます。

そして、あなたがしなければならないのはsourceそれだけなので、変更はすぐに有効になります:

source ~/.bashrc

または、新しいターミナルを開きます。

2
Vinicius Silva