vim-easymotion/TODO.md

51 lines
4.5 KiB
Markdown
Raw Normal View History

2013-11-03 13:31:38 -05:00
- [ ] Fix: "vimの"など、ターゲットキーが"m"でmの次に同様に"m"でマッチするマルチバイト文字("の")が連続していた場合、表示がずれてしまう
- Hint: todeskingさんがForkしてるvim-easymotionのコードが参考になるかも
- Attention: todeskingさんの実装はターゲットを押し出してずれてしまうバグがあるっぽいので注意
- [ ] Refactoring: 関連して置換・ハイライトする部分のロジックはもうちょっと綺麗に出来るかも
- [ ] Fix: migemoなどで日本語をターゲットにした場合、右画面端の文字がうまく置換・ハイライトされてない
- [ ] Fix: nostartofline=1かつJK motionをした時に、マルチバイト文字がLineに含まれていると直感的にcolumnがずれているように見える
2014-01-07 08:48:26 -05:00
- というかずれてるっぽい
2013-11-03 13:31:38 -05:00
- Hint: strdisplaywidth()などでcol_numを変換
2014-01-16 08:09:36 -05:00
- [x] Feature: テストをかいてみる
- vim-specだとmode(1)の値が変わるせいでoperator-pendingやrepeatをうまくテストできない
2013-11-03 13:31:38 -05:00
- [ ] Fix: migemoを使っていると大文字小文字を無視したり、ターゲットが'i'なのに'y'にもマッチしたりしてしまう
- Hint: migemo辞書改変?
2014-01-10 10:55:17 -05:00
- [x] Feature & Fix: 折りたたみをスキップさせない時の挙動を安定させる
2014-01-16 08:09:36 -05:00
- 改善した。が、highlightなどまだ改善の余地はある?
2013-11-03 13:31:38 -05:00
- [ ] ドキュメントをもっとしっかり書く(英語含む)
2014-01-10 10:55:17 -05:00
- むしろ壊して再構築する勢いでやる
2013-11-03 14:24:28 -05:00
- [ ] ユーザー側から簡単にEasyMotionコマンドを定義できるようにする。
2014-01-10 10:55:17 -05:00
- EasyMotion#User()
2014-01-16 08:09:36 -05:00
- is\_cancelledを返す。座標を返すかどうか。Enterキーでのキャンセルなどの使い分けが欲しい
2014-01-05 19:45:25 -05:00
- [x] Fix?: concealを使用する
2014-01-05 10:10:54 -05:00
- 現状、バッファ書き換えでundotreeが壊れてしまうのを直せるかも
- Hint: vim-sneakで実装されている
2014-01-05 19:45:25 -05:00
- :wundo, :rundoで解決したほうが良さそう
- (パフォーマンスなど場合によってはconcealのほうがいいという可能性も)
2014-01-07 08:48:26 -05:00
- wundo & rundo で解決。初回時だけundolistがないせいでundoの通し番号が進んでしまう。
2014-01-16 08:09:36 -05:00
- おそらくマルチバイト文字の幅の分をスペースなどで埋め合わせできないのでconcealはつらそう
2014-01-07 08:48:26 -05:00
- [] Feature: 1行だけのwithin line モーションを拡張して、指定の行数分を範囲に取れるようにする。
- ユーザーがvimrcによって何行分指定するかを前後別々に決めれるようにする。
- ラベルが少なくなるので打ちやすい。上下移動してから使う人などに便利そう。
- もし、モーションのタイプによって決めたいとなると面倒くさい感じ
- [] Feature: sticky table,migemoの機能のような、キーによって複数マッチさせれる仕組みをユーザーが作れるようにすると便利そう
- アルファベット以外の文字やリガチャなどへの対応もできるかも。それぞれもれなくアルファベットと対応していればよさげ
2014-01-16 08:09:36 -05:00
- [x] Feature: operator-pending motionとして使った際、dot repeatを対応させる。
- tpope/vim-repeat依存
- 依存なしでやるには、exprを使わなければならないが、exprだとバッファを書き換えることができない
2014-01-09 23:22:31 -05:00
- [] Fix: highlightのバグ https://github.com/Lokaltog/vim-easymotion/issues/78
2014-01-20 16:39:12 -05:00
- syntaxのハイライトとの優先度の関係かもしれない
- [] Feature: 複数文字でfuzzy matchingができればやってみたい。
2014-01-22 02:42:19 -05:00
- いらない力
2014-01-16 09:47:39 -05:00
- [x] Feature: `<Plug>(easymotion-next)`,`<Plug>(easymotion-prev)`
2014-01-20 16:39:12 -05:00
- [x] highlightを実装?
- [x] オプションで欲しい
2014-01-17 11:04:23 -05:00
- [x] Feature: multi input motionで正規表現を実装する
2014-01-20 16:39:12 -05:00
- [x] Fix: dot repeatが他のモーション時にリセットされる
- Problem: b:changedtickがバッファ書き換えで変更されtpope/vim-repeatのg:repeat_tickと値が変わってしまう
- Solution: g:repeat_tickの値を変える workaround
2014-01-22 02:42:19 -05:00
- [] 擬似clever-f的モーションが実装できたので、ラベル出さずに最初のマッチに飛ぶモーションがあってもいいのではないか?
- clever-fやsneakとかぶるけどEasyMotionのrepeat motionと連携ができて便利な気もする
- 複数文字でrepeatかつハイライトできるモーションプラグインは現状ない
- 追加プラグインで対応するという手