前から気になっていて定期的に amazon を見てみるのだけど売り切れ状態。最初に見た時は買えたけど 、6 個も要らないと思って保留にしたのがよくなかった。買ってたとしてもよくなかった可能性は高いが。
ストレス発散も兼ねてガムを噛みたいとは思うのだけどキシリトールが明らかにお腹を直撃してくるので困る。どの製品もキシリトールばかり。キシリトールでない場合は砂糖だったりするのでそれも困る。お腹に優しい製品が出ないものだろうか。
そんなことより早く寝よう。
前から気になっていて定期的に amazon を見てみるのだけど売り切れ状態。最初に見た時は買えたけど 、6 個も要らないと思って保留にしたのがよくなかった。買ってたとしてもよくなかった可能性は高いが。
ストレス発散も兼ねてガムを噛みたいとは思うのだけどキシリトールが明らかにお腹を直撃してくるので困る。どの製品もキシリトールばかり。キシリトールでない場合は砂糖だったりするのでそれも困る。お腹に優しい製品が出ないものだろうか。
そんなことより早く寝よう。
会議の録音を聞き直すと喋り始めの破裂音がかなり気になる。"あー" とか "んー" とか主に相槌や考え事のために発する小さい音を出す時に破裂しやすい。MV7 に SM7B のウインドウスクリーンを使うと破裂音が緩和する(らしい)というので購入してみけど効果無し。AgController やゲインの設定を色々変えてみたけど効果なし。
結局、Teams のノイズキャンセル設定が原因だった。
低にすると改善されるけどキーボード音を結構拾ってしまう。自動にしているけど、常時高になっているっぽい。
常時静かな部屋にしてキーボードも叩かないようにすればいいのかもしれない。それは実質無理なので諦めるしかない。僕だけの問題かと思っていたけどよく聞いてみると他の人も破裂音が結構な頻度で出ているので Teams の改善を待つしかなさそう。
手順に沿ってやればすぐにブラウザでノートの内容を見ることができるようになる。楽ちん。 気になったところ。
ノートの内容をブラウザで手軽に見たいなと日頃から思っているので、もうちょっと挙動を変えて自分好みにしたい。
試行錯誤した結果、live-export の index.js にある start と watchChanges でノートの先頭にヘッダ情報を差し込んだらいけた。
async watchChanges(params) { logger.info('Watching changes..') let since = params.since ?? (await this.getLatestSeq()) const timer = setInterval(async () => { try { const { results, last_seq } = await this.getChanges(since) for (const change of results) { if ( change.id.startsWith('note:') && change.doc.bookId === params.bookId && change.seq > since ) { - const note = change.doc + const note = this.rebuildNote(change.doc) // 略 async start(params) { const tags = await this.getTags() this.tagMap = tags.reduce((map, t) => ({ ...map, [t._id]: t }), {}) const notes = await this.getNotes(params.bookId) - for (let n of notes) { + for (let n of notes) { + n = this.rebuildNote(n) await this.exportNote({ ...n }, params) // 略 + rebuildNote(note) { + const header = `--- + public: true + slug: ${note._id.replace('note:', '')} + ---\n` + + note.body = header + note.body + return note + }
Inkdrop と同じようにサイドバーとノートリストもある構成にできるといいなぁと思いつつ、今日はここまで。 レイアウトを Inkdrop と同じようにサイドバーとノートリストの 3 カラムにするとか、live-export を別実装 (go とか) で作ってみたいなと思ってみたり。
Inkdrop をキーボード主体で使えるように hitahint を作っていて、プレビューモードのノートに加えて編集字のノート(エディタ)、サイドバーとノートリストにも対応したのでほぼブラウザ操作と近い挙動に既になってたりする (ブラウザの操作は cVim を使っているのでキーボードがメイン)。
なぐり書きや一時的なメモを取るときは起動しっぱなしの Vim を表示して、:enew
で新規バッファに書き始める。これを Inkdrop でやればバックアップ(歴)も取れて便利じゃない?と思ってやってみたら便利だった。ついでに書き溜め用のアイデアノートを開くコマンドも追加。
keymap
'ctrl-s ctrl-s' : 'mycmd:open-scratch-note' 'ctrl-s ctrl-i' : 'mycmd:open-idea-note'
init.js
inkdrop.commands.add(document.body, "mycmd:open-scratch-note", () => { invoke("core:open-note", { noteId: "note:ノートのID" }); setTimeout(() => inkdrop.commands.dispatch(document.body, "editor:focus", param), 700); }); inkdrop.commands.add(document.body, "mycmd:open-idea-note", () => { invoke("core:open-note", { noteId: "note:ノートのID" }); setTimeout(() => inkdrop.commands.dispatch(document.body, "editor:focus", param), 700); });
マウスを使わずになるべくキーボードだけで操作したい勢なので、ブラウザの操作は基本的に hitahint を使っている。同様に inkdrop もキーボードで済ませたい。編集モードでは Vim plugin があるのでいいのだけど、プレビューモードでもキーボードで済ませたい。Vim plugin を入れておくとプレビューモードでもページスクロールできるようになったのは最高だったけどリンクを開くのもキーボードで済ませたい。 ノート部分だけを対応していたのだけど、ノートの一覧やサイドバー(左端)のノートやタグ、ステータスも対応してみた。画面イメージは個人情報が多いので載せれないのだけど便利になった。 プレビューモードのときだけ想定で作ったけど編集モードでも動くように手を入れた。Vim Plugin を入れてる前提での確認なので、入ってない場合に期待通りに動くのかはよく分からない
↑ に従って変換された TextMarker から元の要素を取得する方法も分かったので short-link の対応も入れた。short-link Plugin は自分用にカスタマイズして使っている(ノート読み込み時に全部表示を変える) のでスッキリしてよい。
また一つ inkdrop が便利になった。