generated at
scrapbox-editor-indent-line

機能
Scrapboxでtabによるインデント・アンインデントがアウトライナーライクな動きになる。
カーソルが行頭にない状態でも、tabで現在行をインデントする。
tab を押すとインデント。
shift+tab を押すとアンインデント。

前提
User Settings → Extensions Prioritize Outline-edit key bindings が有効であること。

補足
以下の場合はタブキーはScrapbox標準の動作となる。
コードブロックの中
テーブルの中
ページ名サジェスト表示中

script.js
(() => { $('#text-input').on('keydown', e => { if (e.keyCode != 0x09) return true; if ($('.cursor-line .code-block').length != 0) return true; if ($('.cursor-line .table-block').length != 0) return true; if ($('.popup-menu').length != 0) return true; let keydown = document.createEvent('Events'); keydown.initEvent('keydown', true, true); keydown.keyCode = e.which = (e.shiftKey ? 37 : 39); keydown.ctrlKey = true; $('#text-input')[0].dispatchEvent(keydown); return false; }); })();

2018/03/25(月)
カーソルがテーブルにある時にtabでセル移動ができず、インデントしてしまうのに気がついた。
テスト
a1b1c1
a2b2c2
a3b3c3

2019/03/28(木)
Scrapboxのテーブル内でリンクが使えるようになった!!
カーソルがテーブルにある時に以前と同じようにtabでセル移動できるようにした。
diff
- if ($('tr.cursor-line').length != 0) return; + if ($('.cursor-line .code-block').length != 0) return;