AppleScriptでEvernoteを操作する 第十七回

前回は、リストから、ユーザーにノートブックを選択してもらう処理を紹介しました。

今回は少し切り口を変えて、ノートの中身を操作する方法を紹介します。

狙いとコード

今回やることは、どれか一つのノートの中身を表示させることです。

まず一番シンプルな例でやってみましょう。自分でノートを作成し、そのノートの中身を表示させてみます。コードは以下のように書けます。

tell application "Evernote"
	set anote to create note title "sample" with text "this is sample note"
	set anoteText to HTML content of anote
	display dialog anoteText
end tell

コードを実行すると、以下のようなノートが作成されると共に、

以下のようなダイアログが表示されるでしょう。

やっていることはごくシンプルです。2行目で新規ノートを作成し、3行目でそのノートの中身を表示させています。ポイントは、 HTML content of anote の部分。対象のノートの中身をHTMLで取り出せ、というようなコマンドです。

作成されたノートと見比べてみるとわかりますが、たしかにダイアログで表示されているのはHTML要素です。ようするにEvernoteは、裏側でHTML的なものを使ってノートを処理している、ということですね。

で、実際それは、ENMLという拡張されたHTML(XHTML)なわけですが、そちらの方を取り出すこともできます。

先ほどのコードを、ごく微妙に書き換えてみましょう。

tell application "Evernote"
	set anote to create note title "sample" with text "this is sample note"
	set anoteText to ENML content of anote
	display dialog anoteText
end tell

3行目の記述が多少変わっただけです。コードを実行すると、以下のようなダイアログが表示されるかと思います。

明らかに記述量が増えていますね。そうです。どちらかと言えば、こちらが本体です。en-noteという独自のタグが出ていますが、これがHTMLおけるBodyタグのようなものと考えればよいでしょう(実際はmainタグが近い)。

ようするに、 HTML content of で取り出されるものは、en-noteタグの中身だけであり、しかもその中で使われているENML独自のタグなどもHTMLに変換されています。

よって扱いやすいのは明らかにHTML of content なのですが、ENML独自の要素を扱いたい場合は、 ENML content of を使うことになります。でもって、 ENML独自の要素の代表例がチェックボックスなのですが、その話はまた次回にしましょう。

Next Step

今回は、対象のノートの「中身」を取得する方法を紹介しました。

となると、次はそれを変更する方法となります。次回は、その方法を見ていきましょう。

▼こんな一冊も:

Evernote豆技50選 (Espresso Books)
倉下忠憲 (2015-03-29)
売り上げランキング: 90
ズボラな僕がEvernoteで情報の片付け達人になった理由
倉下 忠憲
シーアンドアール研究所 (2016-02-26)
売り上げランキング: 112,964
Related Posts with Thumbnails
Send to Kindle
Rashita
物書きをやっております。実用書から小説までなんでもござれのハイブリッド物書きです。 ライフハックや仕事術、知的生産などに興味があります。

コメントする

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です