2012-11-17 10 views
9

私がオーサリングしているSlidifyというRパッケージにコマンドラインインターフェイスを提供することに興味があります。それはRscriptを使用し、私はそれがクロスプラットフォームになると思います。スクリプトはサブディレクトリinst/slidifyに保存されています。どのディレクトリからでもスクリプトを使用するために、私はMac上にあるので、自分のパスを.bash_profileに追加しました。Rパッケージにコマンドラインスクリプトを含める

私の質問はどのように自動化された、クロスプラットフォームな方法でスクリプトのインストールを処理する必要があり

  1. のですか?
  2. このプロセスでファイルのアクセス許可が保持されるようにするにはどうすればよいですか?
  3. スクリプトのシバンラインはどうすればよいですか?私は現在、私はこれを処理する方法についてのポインタと、すでにそれを行うRパッケージのいずれかの例をいただければ幸いです

    #!/usr/bin/Rscript --vanilla --slave

を使用しています。確かに、私はこれがどのように機能するかについてはっきりしています。コマンドラインからslidify generate slides.Rmdを実行するだけで、ユーザはslides.Rmdからスライドデッキを生成できます。

UPDATE:

ここ

私は、コマンドラインからMac上でそれをインストールする方法です。私は優れたsubライブラリを使用して、37個の信号でスクリプトを作成します。

echo "$(path/to/clidir/slidify init -)" >> ~/.bash_profile exec bash

二私はRの機能install_slidify_cliにこれらのコマンドをパッケージ化することができます質問

  1. をフォローアップ?
  2. これらのコマンドをWindowsユーザーにミラーリングするにはどうすればよいですか?

答えて

7

Lovin 'slidifyですから、喜んで助けてください。

しかし、要するに、あなたはできません。

Rパッケージは、$R_HOMEまたは選択したライブラリフォルダの外部にインストールすることはできません。パッケージ内のスクリプトを発送し、ユーザーにコピーを指示します。良い方法があれば、先にRscriptlittlerパッケージを出していたのですが、それは以前から使用されていましたが、roxygen/roxygen2も出荷されました。

+0

私は彼らが後でそれが自動的にそれをインストールするためにルール違反と判断しました 'pgfSweave'は、このようなスクリプトを提供するために使用されるが、[明らか](https://github.com/cameronbracken/pgfSweave/commit/cea3c877827bc1a7b7b4e47548ee43fc4b75c814)と考えています。 – baptiste

+2

彼らがして、恐ろしい*だった。当時私はまだ 'cran2deb'オートビルダーを実行していました。総カウボーイスタイル、完全に狂った。幸いにも他の誰かがそれらをオフにしました:) –

+0

ありがとう@DirkEddelbuettel私はコマンドラインからcliをインストールする方法に関する詳細を私の質問に更新しました。私はあなたの2つのフォローアップの質問に対するあなたの考えを高く評価します。 – Ramnath

関連する問題