太字等のショートカット
Ctrl + Bで太字等、文章入力で一般的なショートカットを利用したい。 それなtkgshn.icon*3
*の入力が煩わしいということであれば、ATOKだとテンキーを常にIMEオフで入力するみたいな機能があるので、45Nuyagawa.iconはそれを活用しています
「ブラウザ側のショートカットキーを奪わない」というポリシーがある?
Firefoxだと、Ctrl + Bは「ブックマークの表示」に割り当てられています45Nuyagawa.icon
これって奪えるんですかね……?
奪えましたtakker.icon
オプションで選べるようになるととても助かります。
以下のUserScriptでCtrl + Bに太字を割り当てることが出来ますtakker.icon
code:js
document.addEventListener('keydown', e => {
const {key, ctrlKey} = e;
if (key !== 'b' || !ctrlKey) return;
e.preventDefault();
e.stopPropagation();
document.querySelector('.popup-menu .strong-button')?.click?.();
});
文章入力で一般的なやり方とのことなので、入力した文字を太くするのではなく、太字を入力したいのかもと思いましたyosider.icon
もしそうならScrapboxでは難しそう?
それならCtrl + Bを入力したら[* |]となるようにすればいいのでは?と思いました45Nuyagawa.icon
行末で[を入力したら[|]になるような感じです
間の|はキャレットです
なるほど!よさそうですyosider.icon
こういうことですねtakker.icon
code:js
import('/api/code/forum-jp/太字等のショートカット/test1.js');
code:test1.js
import {press} from '/api/code/takker/scrapbox-keyboard-emulation-2/script.js';
import {insertText} from '/api/code/takker/scrapbox-insert-text-2/script.js';
document.addEventListener('keydown', async e => {
const {key, ctrlKey} = e;
if (key !== 'b' || !ctrlKey) return;
e.preventDefault();
e.stopPropagation();
press('ArrowLeft');
});
他のshortcut keyも簡単に入れるようにするとこうなります
code:js
import('/api/code/forum-jp/太字等のショートカット/test2.js');
code:test2.js
import {press} from '/api/code/takker/scrapbox-keyboard-emulation-2/script.js';
import {insertText} from '/api/code/takker/scrapbox-insert-text-2/script.js';
import {scrapBindings} from '/api/code/takker/ScrapBindings/script.js';
(async () => {
await scrapBindings.install();
scrapBindings.push(
{key: 'ctrl+b', command: () => {insert('*');return false;},},
{key: 'ctrl+u', command: () => {insert('_');return false;},},
{key: 'ctrl+i', command: () => {insert('/');return false;},},
{key: 'ctrl+shift+x', command: () => {insert('-');return false;},},
);
})();
async function insert(deco) {
await insertText([${deco} ]);
press('ArrowLeft');
}
おおお45Nuyagawa.iconyosider.icon
自分でもJavaScriptが書けるようになりたい……