開発しているBlueskyクライアントアプリbsky-sh-cli (Bluesky in the shell)の新バージョンv0.8.0をリリースしました。この記事では本リリースに関して補足情報を記載します。
投稿系機能でのプレビュー機能対応
投稿後の内容をプレビューする機能を追加しました。これにより以下のような内容を事前に確認することができます。
- リンクカード
- URL短縮
- スレッド投稿(
posts
コマンド)でのポスト内容の複数指定・分割指定 - langs(言語)指定
- 画像指定
- ハッシュタグ
- メンション
post
posts
reply
quote
コマンドで--preview
オプションを指定することにより利用できます。
ポストテキスト内のメンション対応
投稿内容に文字列「@<Blueskyハンドル>
」(前後要空白)を含む場合、メンションとして扱うようになりました。
これは以下のGitHub issueへの対応です。自身のリポジトリとしては初の他者からのissueで、開発の醍醐味を味わうことができました。
メンションを含むポストの表示時の課題として、現時点ではメンションの抽出表示(リンクでは省略URLを展開したフルURLを表示するなどしており、それと同様)において、ハンドルが表示されずDIDの表示のみとなっています。これはメンション文字列(ハンドル)を表示するために利用するポストデータ中のテキスト位置インデックス(バイト単位)と、ポスト内容表示に用いているjq
コマンドのテキスト位置インデックス(文字単位)の相違により、マルチバイト文字(日本語など)を含むポストで不整合が生じるためになります。現在の実装都合上すぐに対応できそうにないので今後の課題とします。
ポスト表示時の投稿時指定言語出力オプションを追加
タイムライン表示(timeline
)等のコマンドでフィード(ポスト)を表示する際、--output-langs
オプションを指定することで各ポストの投稿時の言語指定(langs
)を表示できるようになりました。
ポスト表示時のハッシュタグ抽出表示対応
前リリースで投稿時のハッシュタグ(#<タグ名>
)に対応しましたが、表示時の抽出表示を忘れていたため今回の対応となりました。
ハッシュタグは抽出表示しても同じ文字列が表示されるだけなのであまり意味はないのですが、将来的にポスト中のハッシュタグ(や画像、リンク、メンション等の抽出表示)を指定して何らかのアクションを行う機能のための布石ということで…
投稿結果表示の改善
リプライ投稿時にリプライ先のポストも併せて表示するなど、投稿結果の表示を少し改善しました。