R for Macintosh FAQ/DOC
 Version for R 1.6.0
 S. M. Iacus
 http://cran.r-project.org/bin/macos/rmac-FAQ.html
の日本語訳です (制作中).
の日本語訳です.

----
このヴァージョンに固有の変更点およびバグ・フィクス:

- パッケージを構築するための新しいスクリプト: makeAdd, makeRcmd, makeBio の makefile ファイルはすべて src/macintosh/makefiles フォルダーに移動しました
- Quartz デバイスを実装しました (OSX のみで動作しているとき)
- 新型のワークスペース・ブラウザー, Tools メニュー参照
- mkdir および rmdir を内部的に追加および (あるいは) 修正しました. いまでは, unlink(), dir.create() 等が正しく機能します
- html ヘルプは applescript を介して操作されます. より安定になり, (ほとんど) ブラウザー非依存になりました
- applescript サポートを改良しました
- browseURL を実装しました
- Unix/Windows の振舞いにしたがって tempdir および tempfile を実装しました
- 日付の計算に失敗する (PR#1819). このバグが部分的に修正されました. いまでは, 日付の計算はうまくいきますが, まだ TZ (タイム・ゾーン) に問題があります.
- Macintosh デバイスのロケーターにおけるバグを修正しました. いまでは, それを中断することができます
- このヴァージョンから WasteLib 2.1x が必要です

----

これは Macintosh Application 版 R の ReadMe ファイルです. 下記のトピックスについて議論します.

- NEWS
- THE GUI
- APPLE SCRIPT SUPPORT
- EXTERNAL EDITOR INTERACTION
- MEMORY
- SPECIFYING OPTIONS: the Preferences pane
- SPECIFYING ENVIRONMENT VARIABLES: the .Renviron file
- THE USER MENU
- R HELPERS
- SYSTEM REQUIREMENTS
- KNOWN BUGS
- SHORT FAQ (in the MAC-FAQ)
- REMERCIEMENTES 

----

* ニュース (NEWS)

このリリースにはいくつかの性能強化があります. そのほとんどは R アプリケーションのユーザー・インターフェイスに関するものですが, 最も重要な新機能には, Carbon テクノロジーを用いて R が MacOS および MacOS X の両方で動作するようになったことがあげられます. これは, MacOS X から R を起動するとき, MacOS 互換モジュール (Classic Compatibility Module) を呼ぶことなしにその新しい System (MaxOS X) の下でネイティヴに動作することを意味します. MacOS X の下で R を使用することは新しい Aqua ルック (GUI) を始めとする多数の利点を活用することができます.

このヴァージョンは新しい Carbon テクノロジーをベースにしているため, R をオフィシャルにリリースするまでに発見することができなかったいくつかの新しいバグが現れる可能性があります.

ですから, stefano.iacus@unimi.it 宛にどんなフィードバックでも歓迎します.

----
* 新しい GUI (THE NEW GUI)

このリリースから, いくつかのメニューが存在します. メニューの構造と簡単な説明を下記に示します.

|>|>|>|メニュー|h
|└|項目|ショートカット|簡単な説明|h
|>|>|>|Apple (あるいは, MacOS X の下での Application Menu)|
|├|About R| |R の情報ダイアログを開きます. リリース情報を報告します.|
|└|Preferences|(*1)|R Preferences ウィンドウ (pane) を開きます.|
|>|>|>|File|
|├|New Edit Window|N|空の編集可能なウィンドウを開きます. これは R 用の内部エディターとして用いることができます. 現在のアクティヴ・ウィンドウがグラフィック・ディヴァイスの場合, 新しい macintosh() ディヴァイスを開きます.|
|├|Edit Object|E|"edit(object)" と等価です.|
|├|Source File|O|ファイルを開き, 読み込み (source) ます. "source(file)" と等価です.|
|├|Open File For Editing| |編集可能なウィンドウ上にファイルを開きます. 既存のスクリプトを編集し, テストしたいときに便利です.|
|├|File Show|F|編集不可のウィンドウ上にファイルを開きます. "show.file(file)" と等価です.|
|├|Load Workspace File|L|".RData" 以外のワークスペース・イメージをロードしたいときに用います.|
|├|Save Workspace As| |ワークスペースを ".RData" 以外のイメージ・ファイルに保存したいときに用います.|
|├|Page Setup| |プリンター・ドライヴァーのページ設定を呼び出します.|
|├|Print|P|テキスト・ウィンドウ (R コンソールなど) あるいはグラフィック・ディヴァイス・ウィンドウ上のイメージをプリントします. イメージは, 使用するプリンターのページ・サイズに合わせてサイズ変更されます.|
|├|Save|S|ウィンドウを保存します. これは, R コンソール (つまり, 現在の R のセッション) の内容, 任意のテキスト・ウィンドウ, あるいはグラフィック・ディヴァイス・ウィンドウが対象となりえます.|
|├|Save As...| |ウィンドウを {指定のファイルに} 保存します. これは, R コンソール (つまり, 現在の R のセッション) の内容, 任意のテキスト・ウィンドウ, あるいはグラフィック・ディヴァイス・ウィンドウが対象となりえます.|
|├|Close|W|現在のウィンドウを閉じます. それが R コンソール・ウィンドウの場合は, R を終了するものとして解釈されます.|
|└|Quit|Q|このメニュー項目は, MacOS X では Application Menu 上にあります.|
|>|>|>|Edit|
|├|Undo|Z||
|├|Cut|X||
|├|Copy|C|これをグラフィック・ディヴァイス上で用いる場合, イメージはクリップボードにコピーされます (KNOWN BUGS もご参照ください)|
|├|Paste|V||
|├|Copy & Paste| |テキストをコピーし, R コンソール・ウィンドウにペーストします. テキスト・ウィンドウ上の R のコードを選択して, それを R に実行させたい場合に, この機能を用いることができます. ヘルプ・ウィンドウにある実行例のスクリプトの一部をテストしたいときに, この機能は非常に便利です.|
|├|Clear| ||
|├|Select All|A||
|└|Goto line| |編集可能なウィンドウ上でのみアクティヴ (有効) です. カーソルを所定の行に移動させます.|
|>|>|>|Tools|
|├|Show Workspace| |"ls()" と等価です.|
|├|Clear Workspace| |"rm(list=ls())" と等価です.|
|├|Browse Workspace| |"browseEnv(html=FALSE)" と等価です.|
|├|Load Workspace| |".RData" ファイルをロードします. load(".RData") と等価です.|
|├|Save Workspace| |ワークスペースを ".RData" に保存します. "save.image()" と等価です.|
|├|Load History| |"loadhistory()" と等価です.|
|├|Save History| |"savehistory()" と等価です.|
|├|Show History| |"history()" と等価です.|
|├|Change Working Directory|D|ユーザーが標準のダイアログを用いて作業ディレクトリーを変更できるようにします.|
|├|Show Working Directory| |"getwd()" と等価です.|
|├|Reset Working Directory| |"setwd(R.home())" と等価です.|
|├|Show Libraries| |"library()" と等価です.|
|└|Show DataSets| |"data()" と等価です.|
|>|>|>|Windows|
|└|R Console| |このメニューは, ディフォールトでは "R Console" 項目のみを含みますが, 新しいウィンドウの名前を追加する/閉じたウィンドウの名前を削除することによって動的に変更されます.|
|>|>|>|Config|
|├|Allow Interrupt| |構成 (config) ファイル .Renvironment においてオプション "Interrupt=TRUE" を設定するのと等価ですが, こちらはランタイムで変更することができます. このメニューは, Preference ウィンドウ (pane) 上でユーザーが選択するオプションと同期されます.|
|├|On Open Source| |構成 (config) ファイル .Renvironment においてオプション "OnOpenSource=TRUE" を設定するのと等価ですが, こちらはランタイムで変更することができます. このメニューは, Preference ウィンドウ (pane) 上でユーザーが選択するオプションと同期されます.|
|└|Preferences|(*2)|R Preferences ウィンドウ (pane) を開きます.|
|>|>|>|Help|
|├|R Help|?|"help.start()" と等価です.|
|├|Help On Topic| |ユーザーがヘルプを見たい項目を指定することのできるダイアログを開きます. "help(topic)" あるいは "?topic" と等価です.|
|├|Search Help On| |ユーザーがヘルプを検索したい議題 (argument) を指定することのできるダイアログを開きます. "help.search("topic")" と等価です.|
|├|Run An Example| |ユーザーが用例を実行したい項目を指定することのできるダイアログを開きます. "example(topic)" と等価です.|
|└|Link Packages Help| |パッケージのヘルプ・ファイルをデータベースとリンクします (新しいパッケージをインストールした後に用います).|

(*1 OS X のみ. プレ X システム用の Config メニュー参照)
(*2 Mac OS のみ.)

** R のウィンドウについて (About R windows.)

通常, R は表示用にウィンドウを 1行 80文字で開きます. ウィンドウのサイズは, 使用されるフォントのサイズに基づいて計算されます.

等幅フォントでない場合は, このアルゴリズムがうまく機能しなくなり, ウィンドウが必要なサイズよりもいくぶん大きくなったり小さくなったりするかもしれません.

R のウィンドウは, クラス (編集ウィンドウ, ファイルの表示ウィンドウ, およびグラフィック・ウィンドウ) 毎にカスケード表示されます. この機能は MacOS X ではまだ働きません.

* AppleScript のサポート (APPLE SCRIPT SUPPORT)

リリース 1.3.1 から R は AppleScript を一部サポートしています. これはつぎの 2つのことを意味しています: R の内部から コマンド applescript() を用いて AppleScript を実行できること (当該ヘルプをご参照ください); あるいは, AppleScript から R にコマンドを実行させることができるということです. 

メインの R のフォルダー内のディレクトリー  "scripts" には, AppleScript の 2つの例が入っています. 下記は, R と対話する AppleScript の例です:

 set CommandLine to "R.Version()"
 try
 tell application "R"
   activate
    with timeout of 90000 seconds
     cmd CommandLine
     cmd "Sys.getenv()"
    end timeout
   end tell
 end try

ここで, cmd は R の辞書内の AppleScript コマンドで, R コンソール上で R のコマンドを実行するように R に命令するために用いられます. そのシンタクスは cmd <command string> です. ここで, command string (コマンドの文字列) はクォートする必要があります. コマンドの出力は, R を呼び出しているアプリケーションにではなく, R コンソールに返されます.

* 外部エディターとの対話 (EXTERNAL EDITOR INTERACTION)

有名な Alpha エディターのリリース 7.4.1 から, S+/R という名前の (tcl) モードがあります. Alpha 上で拡張子 ".s" あるいは ".r" を持つファイルを開くと, この新しいモードがインストールされ, Alpha のメニュー・バーに "S+/R" メニューが表示されるでしょう. このメニューから, "Process File" あるいは "Process Selection" を用いて R と対話することができます. ディフォールトでは Alpha は R に `open' コマンドを送ります. また, ディフォールトでは R は編集不可のウィンドウ上にファイルを開きます (`File Show' メニューと等価です).

もしも R にファイルを読み込ませたい (source させたい) のならば, オプション "OnOpenSource" (ディフォールトでは "FALSE" になっている) をアクティヴにするように変更しなければいけません. この設定は, Config/OnOpenSource メニューあるいは Preferences ウィンドウ (pane) にアクセスすることによって, ランタイム実行時に変更することができます. Alpha の最新版は ftp://ftp.ucsd.edu/pub/alpha/ で見つけることができます.

* メモリー (MEMORY)

MacOS の下では, 各アプリケーションに対して固定サイズのメモリーを確保しておく必要があります. R は 1つのアプリケーションにすぎないので, もしも何らかの理由で R がメモリーを消費しつくしてしまった場合は, R にもっと大きいサイズのメモリーを割り当てるように設定する必要があります. そのためには, ファインダー (Finder) で R アプリケーションのアイコンを選択してください. それから, CMD+I キーで R の情報 (Information) を表示させます. "メモリー (Memory)" を選択し, 必要なメモリー・サイズを設定してください.

MacOS X の下では, R にメモリーを確保しておく必要はありません. R は, メモリーを必要なだけ使用するでしょう.

* オプションを指定する: Preferences ウィンドウ (SPECIFYING OPTIONS: the Preferences pane)

Preferences ウィンドウ (pane) によって R の GUI と挙動を多少は設定する (configure) ことができます. 編集ウィンドウ上のタブ・サイズや, テキスト・ウィンドウおよび R コンソールのフォントのタイプおよびサイズ, そして R コンソールの上のテキストの色を設定することができます. また, グラフィック・ディヴァイス用に特定のフォントを指定したり, グラフィック・ディヴァイスの解像度を指定することができます.
そして, R がユーザー (User) からの中断要求 (CMD+. あるいは Esc) を受け付けるべきどうか指定することができます. このオプション (ユーザーからの中断要求) を有効にした場合, R は若干遅くなります. ファイルのオープン時に R に何を実行させるか (そのファイルを読み込ませる (source) か, あるいは単に内部ヴュアー上に表示させるか) 指定することができます.

MacOS の下では, R はシステムフォルダー (System Folder) 内の初期設定 (Preferences) フォルダー内にファイルを生成することにご注意ください. もしも MacOS から MacOS X に切り替えると, このフォルダーはもはやディフォールトの初期設定 (Preferences) フォルダーではなくなるので, "R preferences" ファイルを "~user/Library/Preferences/" ディレクトリーに移動させるか, あるいはその初期設定 (preferences) をリセットする必要があります.

OS X の下で異なるログイン・ユーザーがいる場合, ユーザー毎に自分専用の初期設定を設定する必要があります.

* 環境変数を指定する: .Renviron ファイル (SPECIFYING ENVIRONMENT VARIABLES: the .Renviron file)

このファイルでいくつかのオプションあるいは環境変数を指定することができます. これは, 一般的な MacOS/X アプリケーションでは標準的ではありませんが, 互換性の理由で実装されています. もしもあなたが環境変数を設定する必要がなければ, このファイル内で設定されていることを無視してかまいません. 

この環境ファイルは, 標準的な Unix および Windows システムの両方の環境をシミュレートするために R アプリケーションによって用いられています. "Sys.getenv()" を用いれば, どの変数に何らかの値が設定されているか見ることができます. 

.Renviron ファイルの書式について: (たとえば) "Rkey" といった名前のオプションあるいは環境変数に (たとえば) "keyvalue" のような値を設定するには, 1行に RKey=keyvalue のように記述します. `RKey=keyvalue' と `RKey = keyvalue' は異なるということにご注意ください. つまり, 空白/スペースは無視されません. "RKey" (変数名) および "keyvalue" (変数の値) は大文字と小文字が区別されます. 行頭にシンボル "#" がある場合, その行はコメントとみなされます.

.Renviron ファイル自体の中に, より詳しい情報が記載されています.

* 新しい User メニュー (THE NEW USER MENU)

ユーザーは, いくつかのメニュー項目 (最大 99個まで) を含むメニューを作り, そこに好みの R コマンドを保存しておくことができるようになりました. コマンド add.menu.cmd("label","R_command") によって, User メニューに "label" という名前のメニュー項目が追加されます. このメニューからメニュー項目が選択されると, そのメニュー項目に関連付けられているコマンド "R_command" が実行されます. User メニューは動的に生成されるので, ユーザーがまだメニュー項目を何も追加していないうちは User メニューは表示されません.

下記は, User メニューを操作するためのいくつかの機能です:

:get.menu.cmd("label")|メニュー項目 "label" に関連付けられている R コマンドと該当するメニュー番号を返します
:get.num.cmd(menunum)|メニュー項目番号 "menunum" と関連付けられている R コマンドと該当するメニューのラベルを返します
:del.menu.cmd("label")|User メニューからメニュー項目 "label" を削除します
:del.num.cmd(menunum)|User メニューからメニュー番号 "menunum" のメニュー項目を削除します
:del.usr.cmd("label")|User メニュー全体を削除します
:add.menu.cmd("label","RCommand")|User メニューに, (もしあれば) R コマンド "RCommand" と関連付けたメニュー項目を追加します

* R のヘルパー (R HELPERS)

- 外部エディターを使いたい場合は, S+/R モードを含む Alpha ヴァージョン 7.4.1 以降をお勧めします. Alpha のホームページは http://www.kelehers.org/alpha/ にあります.

* システム要件 (SYSTEM REQUIREMENTS)

R アプリケーションを実行するには, MacOS の下ではアプリケーションそれ自体に最低 42MB の空きメモリーが必要です. MacOS X の下では, 仮想メモリーがつねにオンになっているので, このような制限はありません.

Apple 提供の CarbonLib ライブラリーの最新版が必要です. この FAQ のリリース時には, ヴァージョン 1.4 が開発者ヴァージョンでない最新版です. 通常, これは System 9.2 および X に含まれています.

R を実行するには f2cLib 共有ライブラリーが必要になりました. このライブラリーは R と共に配布されていますが, なくしたときはここで {どこ?} 見つけることができます.

R が実行可能な最低限度の System のヴァージョンは 8.6 (+ CarbonLib ライブラリー) です. WasteLib ライブラリーおよび zlibLib ライブラリーが必要です. これらは R バイナリーと共に配布されています.

* 既知のバグ (KNOWN BUGS)

- このヴァージョンの R は Adobe ATM と非互換です. 私たちはこの問題を調査しています. 解決方法は, R を起動する前に ATM をオフにすることです. (このバグについてフィードバックしてくれた R. Gill に感謝します)
- Internet 機能はまだ利用可能ではありません. 私たちはこれに取り組んでいるところです.
- 数学表現はまだうまくスペースを取ることができません. さらに, 数学記号を回転させることができません.

* ショート FAQ (SHORT FAQ (in the MAC-FAQ))

:Q. |MacOS X で不可視ファイル (invisible files) を扱うことはできますか?
:A. |Unix では, 典型的な不可視ファイルは, "." (ドット) で始まる名前のファイルです.
MacOS X はこの規約に従っています. そのため, エディターによっては MacOS X の下で .Rprofile あるいは .Renviron といったファイルを開くことができないことがありえます (BBedit でそうなることが 1ユーザーにより報告されています). これにはいくつかの対処方法があります: そのひとつは, エディターで "some_file" といった名前のファイルを編集したら, system() コマンドを用いて system("mv some_file .some_file") のようにしてファイル名を変更することです. すべてうまくいったかどうか確認するには system("ls -al") を用いてください.
:Q. |終了時に: MaxOS X の下で, ファイル・ダイアログを使ってワークスペース・イメージを保存できないのはなぜでしょうか?
:A. |以前のように, ドットで始まる名前のファイル (".RData" のような) は標準のダイアログを使って直接操作することはできません. (不可視ファイルは表示させることはできますが, ファイル名として指定することはできません!) ワークスペース・イメージを保存する方法の 1つはそれを別の名前で保存することです. (たとえば "RData" という名前で保存します. ただし, これではつぎに R を起動するときにワークスペース・イメージがリロードされないでしょう.) あるいは, R を終了させる前に R コンソールから "save.image()" とタイプしてワークスペース・イメージを保存し, その後 "q()" とタイプし, "Save workspace image? [y/n/c]:" という問いに "n" と答えることです.
:Q. |私のプロジェクト群のそれぞれに対して別々のディレクトリーで作業することはできますか?
:A. |Unix の場合, ディレクトリーを作成し, そのディレクトリーに移動して R を起動してください. MaxOS の場合, ディレクトリーを作成し, 必要なファイルをすべてそこに入れてください. それから (あるいはその前に), R をそれ自身のディレクトリーで (in its own directory) 実行し, メニュー項目 "Tools->Change Working Directory" を用いて現在の作業ディレクトリーをあなたが選択したディレクトリーに変更してください. これで, Unix 上で機能するのと同様に, MacOS 上で機能するようになります. このディレクトリーにワークスペース・イメージを保存したり, ロードすることができます. また, ヒストリーについても保存・ロードすることができます. つぎに R を起動するときにこれらをリロードすることができます. 
:Q. |非常に長い (長時間かかる) 操作あるいは出力を中断することができますか?
:A. |標準の Macintosh 制御中断シーケンス を使うことができるようになりました ("Cmd option" キーと "." (ドット) を押してください). これで任意の R のループを中断するでしょう. "Esc" キーでも同じ効果が得られます.
:Q. |R 用のメモリー設定を変更することはできますか? (MacOS プレ X のみ) 
:A. |R の他のプラットフォームのような標準の設定を用いることはできません. R アプリケーションのファインダー/情報 (Finder/Information) ダイアログから, R にメモリーを割り当てる必要があります. 上記のセクション「メモリー (Memory)」をご参照ください.
:Q. |R の出力を "my_file" のようなファイルに送るとき, R はこのファイル上で機能しているように見えるのですが, そのファイルを見つけることができません. 何が起こったのでしょうか? (MacOS X のみ)
:A. |MacOS X ではファイル名を正確に指定することが重要です. もしもそのファイルを現在の作業ディレクトリー上に生成したいのならば, ファイル名の前に ":" (コロン) を付ける必要があります (":myfile" のように). そうしないと, このファイルは "/my_file" として, つまりルート "/" ディレクトリー上に生成されるでしょう. 現在の作業ディレクトリーからの相対パスでディレクトリーを指定するときは, これはとくに重要です.

* 謝辞 (REMERCIEMENTS)
この Macintosh版 R について, 絶えずフィードバックを送ってくださる方々, あるいは単に可能な方向性について示唆してくださる方々のうちの何人かに感謝したいと思います (私の脳みそが不安定な所為で, ほんの数人しか思い出せませんが). ありがとう (順不同で), P. Macdonald, P. Flint, R. Gill, K. Pflugshaupt, J. DeLeeuw, G. Sawitzki, そして R コアの半数の人々に.

----

{つづく}


トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS