Technically Impossible

Lets look at the weak link in your statement. Anything "Technically Impossible" basically means we haven't figured out how yet.

OneNoteの基礎

ゼロ年代Web 2.0の代表企業として名を馳せた企業の一つがEvernoteだった。記憶が確かならSony Tabletや、SIMフリーXperiaには有料ライセンスがバンドルされており、それがきっかけとなって以来、私はEvernoteユーザーだ。

その創業者であるフィル・リービンは知日派で、「お~いお茶」を社内飲料にしたり、伊藤園とコラボレーションしたり*1Web 2.0当時は景気が良く、賑やかなものだった。しかし、CEOが変わり商業主義的になると、改悪が続くようになった。そして、私を含めた多くのユーザーにとって、訣別のきっかけとなったのが、2020年10月のアップデート*2だった。

これをきっかけに、私も移行の検討を始めた。当時運用していたWiki裏紙ノート」の一部投稿と合わせて、移行先に選んだのがOneNoteだった。率直に言って、タグの活用はEvernoteに劣るのだが、Office譲りの数式入力が、私にとっての決め手となった。

使い始めて半年が経過しようとしているOneNoteについて、まとめておく。

OneNoteの体系、構造

ノートの構造

Evernoteはタグを中心に構造化するメモだ。人によっては、タグによってグループ化するメモ、と呼ぶのが馴染みやすいかもしれない。「ノート」という大分類は存在するのだが、そこに含まれるメモは、タグを割り当てることで、ノートの枠を超えて分類することができる。
タグをフィルタとして見立てる人もいれば、仮想的なフォルダと見立てる人もいるだろう。そのように自由度が高いのが、Evernoteの魅力の一つだ。

一方、OneNoteはノート一つに対して、一つの木構造(ツリー構造)を保持している。Evernoteの様に自由ではない。具体的には、次のように構造化される。

OneNoteの要素 実態
ノートブック セクションを束ねる概念 フォルダ
インターネット・ショートカット
セクション ページを束ねる概念 単一セクション=単一ファイル
ページ テキスト、画像を入力するところ ファイル内のデータ
サブページ 補足データ
ページに追加する
ファイル内のデータ
  • ノートブック

まずノートブックがファイルではなく、フォルダなのが目を引く特徴だ。OneNoteクラウド対応しているため、ノートブックがオンライン上に保存されている場合は、オブジェクト・ストレージ(OneDrive)へのショートカットとして定義される。

  • セクション

ルーズリーフにカラー見出し(インデックス)を挿入するように、OneNoteのノートブックにもインデックスを指定できる。それがセクションだ。一つのセクションが一つのoneファイルとして、所属するノートブックのフォルダに保存される。

  • ページ、サブページ

ユーザーが情報を記録するのがページだ。ページは、所属するセクションのoneファイル内に記録される。

ファイルの構造

ノートがフォルダ、ファイルで構造化されているのに対して、OneNote自体のファイル構造は特殊だ。あるoneファイルは、特定のセクションの情報だけを有しており、OneNote全体を横断する情報は、別のファイルに格納されている。それは次のような具合だ。

oneファイル セクションの情報
onetoc2ファイル OneNoteのインデックス情報
onepkgファイル OneNoteからエクスポートしたファイル
テキスト、画像がまとめて単一ファイルに保存される。

バックアップ、あるいはエクスポート

もし特定のノートをバックアップしようと思えば、2つの方法がある。

  1. ノートブックのフォルダを保存する。
  2. ノートブック全体をエクスポートする。

OneNoteとしてのバックアップであれば前者だが、ただ情報を保存するだけでなく、共有も考慮するときは「エクスポート」を活用することになるだろう。
任意の単位(ノート、セクション、ページ)を選択し、それを単一のoneファイル、あるいは他の形式のファイル(例えばPDF)として出力する。

どれだけ文章、画像を連ねようが、どれだけスクロールしようが、OneNoteの1ページは単一ページとして処理される。これを文書として複数ページに出力するには、エクスポートで出力する必要がある。

PowerShellを用いたエクスポート、未サポートのファイル形式への変換

OneNoteがサポートしているファイル形式は限られているため、Markdownのように未サポートの形式で出力するには、エクスポートしたファイルを変換するしかない。

また単一のoneファイルをエクスポートするにしても、ページごとに個別のファイルでエクスポートしたいこともあるだろう。特に多数のページをエクスポートする必要があれば、プログラムで対応を自動化したくなるはずだ。

これらに関連する話題を、次の投稿で紹介している。必要があれば、一緒に参照してほしい。
impsbl.hatenablog.jp

OneNote Web Clipboard


ChromeやEdgeなど、webブラウザで参照しているページをOneNoteに保存し、スクラップブックを作ることができる。秀逸なのは、スクロールで隠れている部分も含めて、ページ全体を取得してくれることだ。加えて、ユーザーが指定した任意の領域を取得することもできるし、OneNoteが自動認識した本文だけを取得することもできる。次の「Full Pageで取得」がそのサンプルだ。

🔎Full Pageで取得


ただし”Full Page”での取得には注意が必要だ。一見、ページ全体が綺麗に取得されているように見えるのだが、それは当然なのだ。なぜならば、そのすべては1枚の画像としてキャプチャされているからだ。OneNoteには画像から文字情報を読み取るOCR機能が内蔵されているとはいえ、実際のところ、あまり役に立たない。
🔎Articleで取得


”Article”での取得は、文字情報として取得されているので、OneNote内の検索を活用して参照する前提では、見た目は劣るかもしれないが、こちらの方が都合が良い。

数式の入力

Surfaceのような手書き入力デバイスで、講義のノートを取ることが、Use caseの一つとして意識されている。それは、特に数式入力に表れている。手書き入力した数式を清書してくれるだけでなく、数式アシスタントでのキーボード入力でも、清書された数式を記述することができる。例えば、「数式の挿入」ような具合だ。

🔎数式の挿入