はじめに
NotionRubyMapping 解説の第8回目です。昨日の Mention Object に続き、同じ Rich Text Object のサブクラスである Equation Object を解説します。今日の作業ページはこちらです。
段落ブロックの取得 (復習)
上のページにこんな感じで段落ブロックを置いてみました。
このブロックでブロックのリンクを取得とすると以下のような URL になります。
https://www.notion.so/hkob/Equation-Object-8-a00c89ba2daf4b6bb08e5634c0e40985?pvs=4#86562cb6621f43e68132c7259915d65d
昨日の復習としてこのブロックを取得してみます。
irb(main):002> block = Block.find "https://www.notion.so/hkob/Equation-Object-8- a00c89ba2daf4b6bb08e5634c0e40985?pvs=4#86562cb6621f43e68132c7259915d65d" => NotionRubyMapping::ParagraphBlock-86562cb6621f43e68132c7259915d65d
NotionRubyMapping::ParagraphBlock のオブジェクトが取得できていることがわかります。
Equation object の作成
これまでは既存のものを読むばかりでしたが、せっかくなら作ってみましょう。
irb(main):003> eo = EquationObject.new "y = x^2 + 2x + 3" => #<NotionRubyMapping::EquationObject:0x000000012acdd090 ...
eo を表示するとこんな感じになります。
irb(main):004> eo => #<NotionRubyMapping::EquationObject:0x000000012acdd090 @expression="y = x^2 + 2x + 3", @options={"plain_text"=>"y = x^2 + 2x + 3"}, @type="equation", @will_update=false>
block の rich_text_array に追加してみましょう。
irb(main):005> block.rich_text_array << eo => #<NotionRubyMapping::EquationObject:0x000000012acdd090 @expression="y = x^2 + 2x + 3", @options={"plain_text"=>"y = x^2 + 2x + 3"}, @type="equation", @will_update=false>
保存してみます。
irb(main):007> block.save => NotionRubyMapping::ParagraphBlock-86562cb6621f43e68132c7259915d65d
expression=
を使うと数式を書き換えられます。
irb(main):009> eo.expression = "y = \\sqrt{x}" => "y = \\sqrt{x}" irb(main):010> block.save => NotionRubyMapping::ParagraphBlock-86562cb6621f43e68132c7259915d65d
おわりに
昨日の Mention object に引き続き Equation object の使い方を解説しました。今日は Notion 座談会の後で時間がなかったので、内容の少ない Equation object にしました。機能もほとんどないのでちょうどよかったです。
EquationObject のマニュアルはこちら。