Rのヘルプを便利にするfelp v0.6.0をリリース

by
カテゴリ:

Rのヘルプを便利にするfelpパッケージのv0.6.0をリリースしました。

felpはfunctional helpの略称です。数年前のTokyo.Rでの雑談がきっかけで生まれたパッケージで主に以下の機能があります。

最近のリリースはもっぱらfuzzyhelp()の改善です。

v0.6.0の主な変更点

fuzzyhelp()の改善

パフォーマンス改善

あいまい検索は、それなりに重たい処理です。 fuzzyhelp()では、fzf由来の、それなりに軽量で高品質なアルゴリズムを移植&チューニングしていますが、それでもやや時間がかかります。

そこで、memoiseパッケージを導入して、一度検索した結果をキャッシュし、再検索のパフォーマンスを改善しました。

UI改善

  • ヘルプのトピック一覧の背景白を項目ごとに灰色と白色で塗り分けた
  • ヘルプのトピック一覧のフォントサイズを小さくし、代わりにプレビュー画面の高さを上げた

RStudio Serverでプレビューが表示されない問題の修正

RのHTML版ヘルプは、tools::startDynamiHelp()を使って内部的にサーバーを立てています。一方RStudio Serverは自身がヘルプサーバーを兼ねているらしく、URLが異なっていました。このためプレビューが表示できない問題がありました。

  • 通常: http://localhost:{port}/library/{package}/html/{topic}.html
  • RStudio Server: http://{RStudio ServerのURL}/help/library/{package}/html/{topic}.html

v0.7.0の予定

あいまい検索をもっと高速にしたい思いがあります。これはRで実装したアルゴリズムの改善でも多少見込みがありますが、個人的な興味から、extendrパッケージでRustと連携してみたいと考えています。 Rustにはskimというあいまい検索CLIツールがあり、これを流用できないかと目論んでいます。

すぐとりかかれるかはわかりませんが、ぼちぼちやってきます。

ENJOY