6

重複の可能性:
\n 改行文字が c() に導入されるのはなぜですか?

GNOME ターミナル (バージョン 3.4.1.1)Rのシェル (バージョン 4.2.36(1)) で (バージョン 2.15.1) を実行しています。bashコードをテキスト ファイルに書き込んで、コンソールに直接貼り付けることもあります (実行中R)。貼り付けるスクリプトが長くなるまで、問題はありませんでした。現在、4206 文字を超えるコード ( を含む\n) は拒否されているようです (つまり、最初の 4206 文字が受け入れられ、残りのコードは切り捨てられます。切り捨てには端末の「ベル」音が伴います)。bashこの文字制限はや GNOME 端末に固有のものではありませんvi。したがって、文字制限が課されているのではないかと思いますR、しかし、それがユーザー構成可能なパラメーターであると仮定すると、それを変更する方法がわかりません。貼り付け制限を変更できますか?変更できる場合、それを制御するパラメーターは何ですか?

4

1 に答える 1

9

コンソールの既知の制限に達しているようです。An Introduction to R のセクション 1.8 - R コマンド、大文字と小文字の区別などで説明されているように:

コンソールで入力するコマンド ラインは、[3] 約 4095 バイト (文字ではない) に制限されています。

[3] コンソールの中にはそれ以上の入力を許可しないものもあれば、それ以上入力できないものもあれば、余分なものを黙って破棄するものもあれば、それを次の行の開始として使用するものもあります。

コマンドをファイルに入れるかsource、適切なポイント (コンマの間) に独自の改行を挿入して、コードを複数の行に分割します。

src/include/Defn.h値は:にハードコーディングされて#define CONSOLE_BUFFER_SIZE 4096いるため、R を再コンパイルして変更する必要があります。

于 2012-11-04T06:39:15.813 に答える