〈ご注意〉
Logseqのバージョン0.9.0以降においては、この記事で紹介している対処法のうちの幾つかが通用しない可能性があります。*1
Logseq(デスクトップ版)のバージョン0.7.1以降では、Dynalistのエクスポート画面からエクスポートした内容をLogseqのページ上に直接貼り付けると、"Block Render Error"というエラーが出たり、元の階層構造が正しく再現されなかったり、ソースコード用の書式が勝手に適用されたりしてしまいます。*2
この問題を回避し、元の階層構造を再現した形で・余分な書式も付けずにLogseqに貼り付ける方法を紹介します。
〈目次〉
すべての方法に共通の注意点
Dynalistからエクスポート(=コピー)した内容をLogseqに貼り付けようとする際は、Dynalistにおけるエクスポート画面において、フォーマットとして「Plain text」かつ「Dashes」を選択してからコピーする必要があります。
(中央上部で「Plain text」を、右下で「Dashes」を選択する)
4つの対処法
対処法1(Windows PCのみで可能)
この方法はLogseqのバージョン0.9.1で使用できることを確認済みです(2023/03/31現在)。
Windows PCの場合、SnipDoというアプリをWindowsにインストールし、このアプリの“Insertion Extension”として用意されている“Paste Plain Text”をインストールして、このExtension経由でLogseqに貼り付けることで、元通りの階層構造が再現できます。インストールと使い方の詳細は下記のツイート(2個)をお読み下さい。
DynalistなどからLogseqへペーストすると、元の階層構造が再現されなくなったこの問題、Windowsの場合はSnipDoというソフトを併用することで対処できることがわかりました。
— Kimura Goro (@ksphagnum) 2023年3月31日
SnipDoの設定画面のExtension Storeから「Paste Plain Text」をインストールしたうえで、貼り付けたい位置でマウスを https://t.co/79G2iaXMON pic.twitter.com/PGJIPo6P8N
長押しすると、「T」に斜線が重なったアイコンが現れるので、それをクリックするとペーストされます。
— Kimura Goro (@ksphagnum) 2023年3月31日
SnipDoはMicrosoft Storeにあります。無料のようです。https://t.co/NXGO1jfVAD
なお、mac OSにおいては、SnipDoに相当するアプリとしてPopClipというものがあるそうですが、この対処法と同様の使い方ができるかどうかは不明です。
対処法2:Markdownファイルに貼り付ける
この方法はLogseqのバージョンにかかわらず使用できます。
Logseqアプリにおいて貼り付けたいページを開き(=貼り付けたいページのタイトルをマウスでクリックして、そのページだけが開いている状態にして)、Logseqアプリの右上の…
のアイコンをクリックして現れるメニューの中から「デフォルトのアプリで開く」をクリック。すると、そのページがMarkdown形式で開かれます。
(Markdown形式のファイルは通常はテキストエディタで開かれます)
開かれたMarkdownファイルにおいて、任意の貼り付けたい位置に貼り付けます。すると、貼り付けた内容はLogseqに反映されます。
すぐに反映されていない場合は、LogseqアプリでCtrl + R
のショートカットキーを押せば(=再読み込みをすれば)反映されるはずです。
対処法3:"CTRL + SHIFT + V"で貼り付ける
必要なもの
デスクトップ版のLogseqアプリの、バージョン0.8.1.7以上が必要です。*3
CTRL + SHIFT + V
(Windowsの場合)というショートカットキーを押す必要があるので、それができるキーボードを使える必要があります。*4
※MacやLinuxでのショートカットキーは未確認ですが、Cmd + SHIFT +V
(Macの場合)などではないかと思われます。
コピー&ペーストの手順
DynalistからLogseqへコピー&ペーストしたい内容を、DynalistのExport機能でエクスポートするとき、フォーマットとして“Plain text”かつ“Dashes”を選びます。
Logseqアプリにおいて貼り付けたい位置にカーソル(キャレット)を置き、CTRL + SHIFT + V
(Windowsの場合)というショートカットキーを押せば、元の階層構造が再現された状態で貼り付けられます。
対処法4:Logseqのプラグイン“Paste More”を使う
必要なもの
- ショートカットキーを押すことができるキーボードを使える必要があります。
プラグインのインストールとショートカットキーの設定
デスクトップ版のLogseqの右上にある…
のアイコンをクリックして開くメニューの中の「プラグイン」をクリックすると、このような画面が開きます。
中央上部の「マーケットプレース」をクリックし、かつ左上のところで「プラグイン」を選択したうえで、検索フォームにpaste more
と入力すると、プラグイン"Paste More”がヒットするので、灰色の四角形の右下にある「インストール」の文字をクリックして、これをインストールします。
インストールされたら、同じ画面で中央上部の「インストール済」を選択すると、そこに“Paste More”が表示されているので、左下の歯車アイコンをクリックして「設定を開く」をクリック。
“Paste More”の設定画面が開きます。
とりあえずは、外部からコピーした内容をLogseqにペーストするときに使用する専用のショートカットキーを指定するだけでよいと思います。
上から3番目の入力欄がそれで、デフォルトではmod+ctrl+shift+v
と記入されていると思います。
Windowsの場合、そのままでもCtrl+Shift+V
として機能するようです。
私はmod+
の部分は消しておきました。
設定できたら、右上の×
を押します。
コピー&ペーストの手順
DynalistからLogseqへコピー&ペーストしたい内容を、DynalistのExport機能でエクスポートするとき、フォーマットとして“Plain text”かつ“Dashes”を選びます。*5
Logseqアプリにおいて貼り付けたい位置にカーソル(キャレット)を置き、上掲の設定画面で設定したショートカットキーを押すと貼り付けられます。
以上です。
補遺(1)
本記事には含めませんでしたが、同様の用途で使えるLogseqプラグインがもう1つあります。
こちらは全体の手順が煩雑になりそうなので、あまりお奨めしません。
ブログには含めていませんがSplit Blockというプラグインも同様の用途で使えます。
— Kimura Goro (@ksphagnum) 2022年8月16日
これだとDynalistからのエクスポートのフォーマットは行頭にハイフンが付かない「Spaces」でよい。ただし整形後に```という残骸が上下に残ってしまう。
hyrijk/logseq-plugin-split-block https://t.co/Taa4dZI3MX
*1:その直前のバージョン(0.8.18)には通用することを確認済みです(2023/03/29現在)。
*2:エクスポート元(コピー元)がDynalistである場合に限らず、一般的に、階層構造をもつ複数行のテキストをLogseqに貼り付けるとこのような問題が起きるのだろうと思われます。
*3:厳密には、もう少し旧いバージョンでもよいかもしれませんが、筆者が動作確認をできているのはバージョン0.8.1.7からです。
*4:通常の"CTRL + V"というショートカットキーで貼り付けると、正しい結果になりません。
*5:エクスポート元がDynalist以外であっても、基本的にはこのフォーマットに従っていれば大丈夫なのだろうと思います。