ov v0.9.0

Posted on:

ov v0.9.0をリリースしました。

Terminal PAGER releases ov v0.9.0

v0.8.9をプレリリースバージョンとしてリリースしていましたが、正式にfollowモードを追加したバージョンとして v0.9.0をリリースしました。

followモード、follow-allモード

followモードはtail -fのようにファイルが追記されたら自動で読み取って表示します。lessではless +Fで実現されています。 ログの監視に使われることが多いです。

ov --follow-mode /var/log/syslog

followモードで複数のファイルを指定することも出来ますが、ovでは複数のファイルを別々のドキュメントとして管理して、 ‘]‘と’[‘で切り替えるようになっています。表示しているファイル以外が更新されていても裏側で読み取られているので気づくことが出来ません。

そこで、動作はfollowモードに似ていますが、最後に更新があったファイルに切り替えるfollow-allモードも追加しました。

ov --follow-all /var/log/syslog /var/log/auth.log

のようにすると最後に更新されたファイルに自動で切り替わります。

followモードとfollow-allモードは起動後でもctrl+fctrl+aによりモード切り替えが可能です。

execモード

execモードはovの--exec に渡されたコマンドを実行して、stdout/stderrを表示します。 コマンドを実行した結果をパイプによりページャーで表示させるのが一般的ですが、stdin(標準入力)は一つしか無いので、stdout/stderrどちらかを表示か両方を一つにリダイレクトして(混ぜて)表示する必要があります。

例えばmakeコマンドでは、そこから更に複数のコマンドが呼ばれるためstdoutとstderr両方に多く出力されるため見づらい場合があります。

そのような場合にexecモードで実行すると簡単にエラーと通常出力を分けて見ることができます。その際にfollow-allモードも一緒に指定するとエラー時に気づきやすくなります。

ov --follow-all --exec -- make -j2

execオプションの後に(--)を付けるとそれ以降はovのオプションとは解釈されません(この例ではmakeのオプションと解釈されます)。

スタイルカスタマイズの追加

検索のハイライトとカラムモードのハイライトをカスタマイズ出来るようにしました。 ~/.ov.yamlに以下のように指定できます。

StyleSearchHighlight:
  Foreground: "gold"
  Reverse: true

いくつかのモードを束ねて切り替えるview-modeの選択の追加

ページャーとして汎用的に使えるようになってきたのでファイル形式によっていくつものモードを変更したい場合が出てきます。あらかじめ ~/.ov.yamlに以下のようなModeを登録しておくと起動後にpを押してpsqlMySQLと打つことでこれらのモードを束ねて切り替えることを出来るようにしました。

Mode:
  psql:
    Header: 2
    AlternateRows: true
    ColumnMode: true
    LineNumMode: false
    WrapMode: true
    ColumnDelimiter: "|"
  MySQL:
    Header: 3
    AlternateRows: true
    ColumnMode: true
    LineNumMode: false
    WrapMode: true
    ColumnDelimiter: "|"

過去のバージョン

  • v0.9.0 follow,follow-all,execの各モードを追加、改善。検索とカラム選択のスタイルカスタマイズを可能にしました。
  • v0.8.9 (pre)follow-mode,follow-all-modeの追加
  • v0.8.1 文字の単位をCode point から Grapheme clusterに変更しました。
  • v0.8.0 tcell v2にアップグレードしました。
  • v0.7.1 交互に行スタイル効果適用の行がズレていたので修正
  • v0.7.0 スタイルカスタマイズの改善
  • v0.6.2 検索の高速化とキャンセル処理の追加
  • v0.6.1 細かな修正バージョン
  • v0.6.0 マウスサポート
  • v0.5.0 複数のドキュメントを開く方法を変更
  • v0.4.0 ヘルプ画面を追加
  • v0.3.1 位置をマークする機能を追加
  • v0.3.0 入力の改善
  • v0.2.1 色をカスタマイズ可能にする
  • v0.2.0 検索の改善
  • v0.1.3 行番号モードを追加
  • v0.1.2 Homebrewパッケージの追加
  • v0.1.1 パッケージ自動更新の調整
  • v0.1.0 ovにレポジトリ名と構成を変更。deb/rpmパッケージの追加
  • v0.0.5 現在の基本機能を備えた最初のバージョン

参考

ovの紹介