helm-perldocを書きました

あけましておめでとうございます。今年もよろしくお願いします。


helm-perldocは perldocを Emacsから使うための helm拡張です。
perl-completionに同様の機能があるのですが、それの helm版です。
機能を分割してメンテナンスをしやすくというような意図も個人的に
ですが、あります。

Screenshot

M-x helm-perldocを実行した際の screenshotです。
現在のファイルで importしているモジュールとそうでないものの
helm source分けています。

設定

helm-perldoc:setup関数を事前に呼び出しておく必要があります。

(add-hook 'cperl-mode-hook 'helm-perldoc:setup)

現状インストール済みのモジュールをすべて収集するという操作を
行なっているのですが、実行には時間がかかります(2回目以降は
prefixをつけない限りすぐに抜けます)。非同期に実行すればいい
のですが、そのあたりのベストプラクティスが現状わかっていない
ので検討中です。run-with-idle-timer等を使えばいいと思うのですが、
いろいろ試して検討しようと思います。

アクション

現在実装しているアクションは以下の通りです

  • ドキュメントの閲覧(perldoc Module)
  • ソースコードの閲覧(perldoc -m Module)
  • import文の挿入(適切な位置に use Module;を挿入)
  • 標準モジュールかの確認(corelistコマンドを使用)

です。import文の挿入はまだシンプルなケースでのみの
テストしか行えていないです。

イメージ

おわりに

実用的なものを目指したいと考えていますので、
意見がございましたらぜひ頂きたいと思います。
その際は githubissuesの方までお願いします。