-
Notifications
You must be signed in to change notification settings - Fork 165
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
アウトライン解析の選択行追従 #1398
アウトライン解析の選択行追従 #1398
Conversation
✅ Build sakura 1.0.3078 completed (commit 9f94346593 by @suconbu) |
かなり面白いと思います。 一点だけ気になるところがありまして、C言語だとリストビューなので気にならないのですが、ツリービューだと縮小しているツリーを上下キーなどで移動しているとどんどん展開されていって、縮小しておいた見通しのいいツリーが大変なことになります。 |
興味を持っていただきありがとうございます!
懸念されている状況を理解できました。 |
27829eb
to
61df29a
Compare
✅ Build sakura 1.0.3080 completed (commit 37f1a89efc by @suconbu) |
✅ Build sakura 1.0.3081 completed (commit a220f8b7c4 by @suconbu) |
✅ Build sakura 1.0.3082 completed (commit 788d9ca9ec by @suconbu) |
6377261
to
cb91dbf
Compare
✅ Build sakura 1.0.3084 completed (commit c9325a180f by @suconbu) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
デフォルトでは行が昇順で並び替えられていて、その際の挙動は問題無いように思えます。
ListViewの列ヘッダーをクリックして行を降順に並び替えたり、関数名で並び替えると挙動が変になります。
確認頂きありがとうございます。私の方でも現象を確認できました。 |
こちら解消することができました。ご確認お願いします。 |
✅ Build sakura 1.0.3092 completed (commit 70e8a44b33 by @suconbu) |
動作仕様を決める中で少し迷った点があったため記載いたします。 PR 説明の「テスト3」に書きましたように、テキストが編集された時には選択位置の追従を解除しますが、
「2」は追従が解除されたことが視覚的にわかりやすい反面、今編集中の段落・関数を見失ってしまう懸念がありました。 追従解除中には項目の選択色を淡色に変更する、などの改善案を思いつきはしましたが、変更箇所が多くなりすぎてしまいそうでしたので今回は現動作で PR 出させて頂きました。 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
アウトライン解析が「C 関数一覧」の時の挙動は問題無いと思います。
「テキスト トピックツリー」の時に以下の点が気になります。
- 入力内容に応じてリアルタイムにトピックツリーの表示が更新されない
- F11キーを2回連続で押すとトピックツリーの開閉状態が変わる(一番最後のノードまで開くがそれ以外は開かない)
ただこれに関しては元からそうなのでこのPRで挙動を変える必要も無いと思います。
という事でこのPRの目的は達成されていると思うので問題無いと思います。
仮に、ソースコードのカーソル移動時にアウトライン解析の選択状態を変えてほしく無いんだよ!という要望が後で出たら、それはまた後で考えれば良いかなと思います。
こちら自分はコードレビューはちゃんとしてなくて軽い動作確認しかしてませんが Merge します。 後で問題が見つかったら直せば良いと思います。 |
レビュー・マージありがとうございました。 |
PR の目的
エディタ上でのキャレット移動にあわせてアウトライン解析の選択行の位置が自動的に更新されるようにします。
動作イメージ:
カテゴリ
PR の背景
コードリーディング時、今いる関数を確認するために F11 キーを二連打 (フォーカス→更新) していましたが、これが煩わしいと感じていたため。
PR のメリット
キャレット移動した時、追加の操作なく選択行の位置が更新されるため便利になります。
PR のデメリット (トレードオフとかあれば)
アウトライン解析表示時におけるキャレット移動時の負荷が増加します。
が、通常使用時 (数万行程度までのソースコード閲覧等) においてはほぼ無視できる程度かなと考えています。
仕様・動作説明
テスト内容
テスト用ファイル:test.zip
テスト1 - 追従の確認 (アウトライン解析)
同様のテストを test.cpp, test.vb, test.txt で実施する。
テスト2 - 追従の確認 (ブックマーク一覧)
テスト3 - 追従解除・復帰の確認
テスト4 - 性能劣化の確認
備考
ファイルツリーについては、今回の変更の前から常に先頭行が選択状態になってしまう?ためテスト対象から除外しました。
PR の影響範囲
アウトライン解析・ブックマーク一覧・ファイルツリー
関連 issue, PR
参考資料