コンソールへのメッセージ出力はprintコマンドで可能ですが、ちょっと複雑なことをやるとコードの視認性が失われがちです。そんな問題を解決する、「rprintf」パッケージを紹介します。
グッと来る人にはたまらないかと思います。実行コマンドでも遊んでいます。かなり楽しいです。
「硬いコンソールにちょっと洒落たメッセージ」
遊び心を失いたくない、硬派なオトナ向けのパッケージです。
パッケージのバージョンは0.2.1。実行コマンドはR version 4.2.2で確認しています。
パッケージのインストール
下記コマンドを実行してください。
#パッケージのインストール
install.packages("rprintf")
実行コマンド
詳細はコマンド、パッケージヘルプを確認してください。なお、出力メッセージを視認しやすいように改行しています、
#パッケージの読み込み
library("rprintf")
#パッケージにはrprintn,rprintvコマンドが収録されていますが
#rprintfコマンドに機能が集約されています
#メッセージをコンソールに出力:rprintfコマンド
#引数を文字列で指定する,rprintvコマンドと同じです
#引数:%s;文字列, %d;数字, %.xf;小数点表示xに桁数を指定
#はじめに表示するメッセージを指定し、引数に合わせて内容を指定していきます
#メッッセージ途中で開業すると\nが自動で挿入されます
#アンサーソング?統合思念体かは禁則事項です。
rprintf("%s? %sが流行った。約%d年前… %sか… 何もかも、みな懐かしい… 「%s」",
"統合思念体", "スモチ", 10, "ハルヒ","からだにいいもの")
[1] "統合思念体? スモチが流行った。約10年前… ハルヒか…
何もかも、みな懐かしい… 「からだにいいもの」"
#リストで内容を指定することもできます
#引数を数字で指定する,rprintnコマンドと同じです
#数字で指定すると、入力回数を減らせます
CharlList <- list("自分", "他人", "我", "これからの記録", 13)
rprintf("なぜ{1}は{1}でしかなく、{2}ではないのだろう。{3}{2}を思う。そして、シャーロット{5}話… 「{4}」", CharlList)
[1] "なぜ自分は自分でしかなく、他人ではないのだろう。我他人を思う。
そして、シャーロット13話… 「これからの記録」"
少しでも、洒落たオトナに。遊び心が失われませんように!!