やること: チケット
https://dev.mikutter.hachune.net/
https://dev.mikutter.hachune.net/favicon.ico?1619448608
2024-03-13T14:16:48Z
やること
Redmine
mikutter - 機能 #1596 (新規): Ruby 3.3
https://dev.mikutter.hachune.net/issues/1596
2024-03-13T14:16:48Z
toshi_a 初音
toshi.alternative@gmail.com
<ul>
<li>Ruby 3.3をサポートする</li>
<li>mikutter 5.1では、Rubyのバージョン下限を3.2.0にする(過去1バージョンのみ対応)</li>
<li>Ruby 3.0, 3.1, 3.2で追加された要素を使ってリファクタリング</li>
</ul>
mikutter - 機能 #1248 (新規): Flatpakレポジトリで配布する
https://dev.mikutter.hachune.net/issues/1248
2018-05-17T16:28:07Z
Yuto Tokunaga
yuntan.sub1@gmail.com
<p>mikutterを<a href="https://flatpak.org/" class="external">Flatpak</a> 形式にビルドし,flatpakレポジトリで配布できるようにする.</p>
mikutter - 機能 #1210 (新規): クラッシュ時、クラッシュレポートを保存する時に例外が発生すると、クラッシュの原因となった例外が確認できない
https://dev.mikutter.hachune.net/issues/1210
2018-04-23T11:45:39Z
toshi_a 初音
toshi.alternative@gmail.com
<p>marshal_dumpメソッドが例外をraiseするような例外オブジェクトを作ってraiseすると、クラッシュレポートのために例外オブジェクトを保存するところで例外が発生し、例外オブジェクトを保存できないうえにSTDERRに出力されるバックトレースもそちらになってしまうため、何故クラッシュしたかがわからない。</p>
<p>保存できない場合は仕方がないにしても、ちゃんと原因となった例外が出力されるように変更する。</p>
mikutter - 機能 #1143 (新規): PhotoMixinを廃止し、代替としてSpellを提供する
https://dev.mikutter.hachune.net/issues/1143
2017-12-26T22:58:28Z
toshi_a 初音
toshi.alternative@gmail.com
<p>Photo Modelは現在、以下のメソッドが正しく実装されている必要がある(<a href="https://reference.mikutter.hachune.net/model/2016/11/30/photo-model.html" class="external">Photo Model</a>)。</p>
<ul>
<li>download</li>
<li>completed?</li>
<li>downloading?</li>
<li>ready?</li>
</ul>
<p>以上の定義は、フィールドさえあればどのModelでも同じように行えるため、PhotoMixinをプラグイン外に設置し、includeしている。<br />Spellを用いれば、呼び出し方が次のように変わる代わりに、実装をModelから切り離せるので、mikutter本体にPhotoMixinのようなmoduleを置かなくて良い。</p>
<pre><code class="ruby syntaxhl"><span class="n">media_download</span><span class="p">(</span><span class="n">photo</span><span class="p">,</span> <span class="ss">partial_callback: </span><span class="o">-></span><span class="n">chunk</span><span class="p">{</span>
<span class="c1"># downloading...</span>
<span class="p">}).</span><span class="nf">next</span><span class="p">{</span><span class="o">|</span><span class="n">blob</span><span class="o">|</span>
<span class="c1"># downloaded</span>
<span class="p">}</span>
<span class="n">media_completed?</span><span class="p">(</span><span class="n">photo</span><span class="p">)</span> <span class="c1"># => true or false</span>
<span class="n">media_downloading?</span><span class="p">(</span><span class="n">photo</span><span class="p">)</span> <span class="c1"># => true or false</span>
<span class="n">media_ready?</span><span class="p">(</span><span class="n">photo</span><span class="p">)</span> <span class="c1"># => true or false</span>
<span class="c1"># pixbuf</span>
<span class="n">pixbuf_download</span><span class="p">(</span><span class="n">photo</span><span class="p">,</span> <span class="ss">width: </span><span class="n">x</span><span class="p">,</span> <span class="ss">height: </span><span class="n">y</span><span class="p">).</span><span class="nf">next</span><span class="p">{</span><span class="o">|</span><span class="n">pixbuf</span><span class="o">|</span>
<span class="c1"># loaded</span>
<span class="p">}</span>
</code></pre>
<a name="課題"></a>
<h1 >課題<a href="#課題" class="wiki-anchor">¶</a></h1>
<a name="Photoに互換性があるModelが毎回上記のようなspellを定義してやる必要がある"></a>
<h2 >Photoに互換性があるModelが、毎回上記のようなspellを定義してやる必要がある<a href="#Photoに互換性があるModelが毎回上記のようなspellを定義してやる必要がある" class="wiki-anchor">¶</a></h2>
<p>SpellにはMix-inのような機能がないため、標準プラグインでもphotoとopenimg_photoを実装する必要がある。<br />画像をダウンロードしてくるURLさえ決まれば取り扱えるので、spellがModel slugを明確に定義する以外に、抽象的な手段を用意するのも手かもしれない。</p>
<a name="Pixbuf系は即座にPixbufを返すものがある"></a>
<h2 >Pixbuf系は、即座にPixbufを返すものがある<a href="#Pixbuf系は即座にPixbufを返すものがある" class="wiki-anchor">¶</a></h2>
<p>Spellは必ずDeferredを返すため、即座に値を返す必要がある場合には使えない。キャッシュから即座に値を返し、なければロード中の画像を返すようなメソッドを定義する場合は、filterなどを使えば実現できるが、呼び出しの手順が大きく変わる。<br />尤も、Pixbufを利用したいプラグインはgtkプラグインだけのはずなので、多少特定のプラグインに依存してしまうことがあっても良い。</p>
mikutter - 機能 #1063 (新規): プラグイン着脱時にイベントが発生する機能
https://dev.mikutter.hachune.net/issues/1063
2017-08-12T05:01:21Z
あひる 家鴨
<p>プラグイン着脱時に何も起きないので、イベントを発生させる機能がほしい。<br />ので、作ります。</p>
mikutter - 機能 #1009 (新規): Wikipediaの画像を開く
https://dev.mikutter.hachune.net/issues/1009
2017-03-27T02:20:53Z
toshi_a 初音
toshi.alternative@gmail.com
<p>Wikimedia Commonsの画像を開くやつを <a class="issue tracker-2 status-5 priority-4 priority-default closed" title="機能: .jpgまたは.pngで終わるファイル名の画像は、サードパーティプラグインが開くルールを設定しても、標準のルールに上書きされてしまう (終了)" href="https://dev.mikutter.hachune.net/issues/977">#977</a> のテストのために書いていたらわりと便利そうな気がしてきたので、新機能として追加したい。</p>
<p>具体的には、以下のようなURL。アカウントを持っていないのでどういう形式があるかわからないが、GdkPixbufが開けそうなやつでWikimedia Commonsにアップロードできそうなやつは一通り対応したい。</p>
<p>JPEG<br /><a class="external" href="https://commons.wikimedia.org/wiki/File:Flowers_Botanics_at_Easter_2010_(4499810982).jpg?uselang=ja">https://commons.wikimedia.org/wiki/File:Flowers_Botanics_at_Easter_2010_(4499810982).jpg?uselang=ja</a></p>
<p>SVG<br /><a class="external" href="https://commons.wikimedia.org/wiki/File:Openlogo-debianV2.svg">https://commons.wikimedia.org/wiki/File:Openlogo-debianV2.svg</a></p>
<p>PNG<br /><a class="external" href="https://commons.wikimedia.org/wiki/File:Masstel_A116_Blue.png">https://commons.wikimedia.org/wiki/File:Masstel_A116_Blue.png</a></p>
<p>TIFF<br /><a class="external" href="https://commons.wikimedia.org/wiki/File:Insurance_Plan_of_London_Vol._IX;_sheet_230_(BL_150547).tiff">https://commons.wikimedia.org/wiki/File:Insurance_Plan_of_London_Vol._IX;_sheet_230_(BL_150547).tiff</a></p>
<p>Wikimedia Commonsは画像の様々なvariantをアップロードできるようになっているが、メインの画像だけ見ることができれば、その後Webを開いたり出来るのでひとまず良しとする。<br />JPEGの例のように、何らかのクエリパラメータが末尾に付くパターンもあるようなので気をつける。</p>
mikutter - 機能 #946 (新規): user_detail_view のタブとして smartthreadを提供する
https://dev.mikutter.hachune.net/issues/946
2016-12-10T08:32:53Z
toshi_a 初音
toshi.alternative@gmail.com
<p>今ReplyViewer等は、クリックされた時にuser_detail_viewかsmart_threadを開くようになっているが、Intent以外でこういうのを設定させるのは今となってはナンセンスなので、いっそuser_detail_viewに対してsmart_threadが会話スレッドタブを提供する。</p>
<p>ただし、smart_threadは複数の会話スレッドをマージして表示する機能があるので、引き続きmikutterコマンドは残す。</p>
mikutter - 機能 #836 (新規): minitestへの移行を検討
https://dev.mikutter.hachune.net/issues/836
2016-05-17T20:12:17Z
toshi_a 初音
toshi.alternative@gmail.com
<ul>
<li>mikutterのテストはコードの量に対して少ないため移行が楽なのではないか</li>
<li>誰もmikutterのテストを実行しないため、摩擦が少ない</li>
<li>最近minitestばっかり書いているのでtest::unitがきつい
<ul>
<li>Pluggaloid等の派生プロジェクトもminitestを使っている</li>
</ul></li>
</ul>
<p>実際やりかかってみてどの程度のコストがかかりそうかを見積もってみる</p>
mikutter - 機能 #827 (新規): 設定の階層化
https://dev.mikutter.hachune.net/issues/827
2016-04-29T18:42:18Z
toshi_a 初音
toshi.alternative@gmail.com
<p>設定画面の左側のインデックスを階層化する。</p>
<p>適切にカテゴライズしていくと設定項目が多すぎる、または settings do...end のネストが深すぎるセクションができてしまう。こういうのを普通に表示していると特定の項目にたどり着くのがとても大変なので、インデックスをツリー表示にし、サブ項目を表示する。</p>
<p>階層をどこまでインデックスに表示するかとか、インデックスでサブ階層が選ばれた場合にどういう表示にするかとかは、考える必要があるなあ</p>
mikutter - 機能 #810 (新規): 投稿詳細タブ(仮称)
https://dev.mikutter.hachune.net/issues/810
2016-01-13T02:05:34Z
toshi_a 初音
toshi.alternative@gmail.com
<p>投稿の情報のうち、タイムライン上では確認できない詳細情報も表示するための画面を作成する。Twitterの投稿可能字数の増加や、別サービスへの対応を見越しての機能追加。<br />プロフィールタブみたいに、プラグインでこのタブを拡張できるようにする</p>
mikutter - 機能 #772 (新規): 設定画面で、画像ビューアのウィンドウを通常ウィンドウにするかダイアログウィンドウにするかを選択
https://dev.mikutter.hachune.net/issues/772
2015-09-12T07:17:20Z
toshi_a 初音
toshi.alternative@gmail.com
<p>画像ウィンドウをダイアログにしたけど、これだといろんな問題が起こった。カスケード型よくわからないけど、WM固有の事情もあって両方の問題を同時に解決できないように思うので、設定画面で変更できるようにしようかな</p>
<a name="ダイアログウィンドウ"></a>
<h1 >ダイアログウィンドウ<a href="#ダイアログウィンドウ" class="wiki-anchor">¶</a></h1>
<a name="メリット"></a>
<h2 >メリット<a href="#メリット" class="wiki-anchor">¶</a></h2>
<ul>
<li>awesomeで開いた時、mikutterのウィンドウに重ねて表示することができる</li>
</ul>
<a name="デメリット"></a>
<h2 >デメリット<a href="#デメリット" class="wiki-anchor">¶</a></h2>
<ul>
<li>Unityで、常にmikutterより前に画像ウィンドウが被ってくる</li>
<li>なんかのWMで×ボタンが表示されてないらしい(これはダイアログでも表示させられるはず)</li>
</ul>
<a name="通常のウィンドウ"></a>
<h1 >通常のウィンドウ<a href="#通常のウィンドウ" class="wiki-anchor">¶</a></h1>
<a name="メリット-2"></a>
<h2 >メリット<a href="#メリット-2" class="wiki-anchor">¶</a></h2>
<p>よくわからない</p>
<a name="デメリット-2"></a>
<h2 >デメリット<a href="#デメリット-2" class="wiki-anchor">¶</a></h2>
<ul>
<li>タイル型WMでやばい感じになるらしい</li>
</ul>
mikutter - 機能 #764 (新規): rake testでテストが実行できるようにする
https://dev.mikutter.hachune.net/issues/764
2015-08-09T08:45:56Z
コスモ 虹川
<p>他のRubyプロジェクトだと[bundle exec] rake testで大抵テストが実行できるようになっています。</p>
<p>mikutterでもRakefileを使ってテストを実行できるようにしてみるとどうでしょう?</p>
mikutter - 機能 #700 (新規): コナミコマンドを拡張するインターフェイス
https://dev.mikutter.hachune.net/issues/700
2014-06-24T15:27:26Z
toshi_a 初音
toshi.alternative@gmail.com
<p><a class="issue tracker-7 status-5 priority-7 priority-highest closed" title="環境対応: Twitter Webのコナミコマンドを受けての対応 (終了)" href="https://dev.mikutter.hachune.net/issues/699">#699</a> で実装したコナミコマンドの振る舞いに拡張性がないため、イベントフィルタ等を用いて動作をカスタマイズできるようにする。<br />具体的には、画像の差し替え機能を作ることと、機能の抑制方法を検討する。</p>
mikutter - 機能 #650 (新規): プロフィールタブのピン止め
https://dev.mikutter.hachune.net/issues/650
2014-04-10T00:54:08Z
toshi_a 初音
toshi.alternative@gmail.com
<p>現在の仕様ではプロフィールタブが溜まりすぎてしまうことがある。</p>
<p>プロフィールタブの tab ロールコマンドとしてピン止め機能をつける。<br />ピン止めされたプロフィールタブはテンポラリタブではなくなり、再起動後も維持される。されてないやつは再起動で消える。</p>
<p>現在はプロフィールタブは確実に残るが、デフォルトでは従来の挙動、特定のユーザだけ残しておけるようにしたら改善すると思う</p>
mikutter - 機能 #625 (新規): ショートカットキーインポート・エクスポート機能
https://dev.mikutter.hachune.net/issues/625
2013-11-10T07:56:35Z
toshi_a 初音
toshi.alternative@gmail.com
<p>ショートカットキーの設定をYAMLファイルに書き出したり、逆に読み出したりする機能をつける。<br />また、いくつかの著名なTwitterクライアントのために、最初から幾つかのキーコンフィグを提供する。</p>