CodeBlock のアップデート : hkob の雑記録 (287)

はじめに

hkob の雑記録の第287回目は、Notion 座談会でも紹介した CodeBlock のいくつかの細かいアップデートを解説します。

最初の気づき

最初に CodeBlock の変更に気づいたのは、久々のコーディングをしていたときでした。Alfred のワークフローで Cmd+Ctrl+; をタイプすると、CodeBlock が今の Notion ページに書き出される処理をしていたときです。言語の確認をしようと左上を見たら、プルダウンが見えなくてなんだろうと思ったら右上に移動していたのでした。コードのコピーとキャプションの設定もアイコン化されていますね。

こちらは昨日の ER 図を書いたときに気づいたのですが、Mermaid の「コード」「プレビュー」「分割」の選択もアイコンになっていました。

対応言語の拡張

この件を先週の Notion 座談会で紹介したときに言語一覧を出したところ、見たことのないアスキーアートやアセンブリという文字を見つけました。

言語の選択

試しにアスキーアートを試してみました。ソフトウェアを設計する授業で、ターミナルの出力イメージを設計させたりしているのですが、そのときに ASCII Art は便利ですね。行間が詰まっていてみやすいです。

せっかくなので、全ての言語を掲載してみました。

選択できる言語(前半)

選択できる言語(後半)

これまで Notion API でサポートされていた言語はここに記載されています。このページはまだ更新されていないので、これまでサポートされていた言語がわかるはずです。これと現在の表示を見比べてみます。

developers.notion.com

ここに記載されているものと比較すると、新規に追加されたものは以下のものになります。私も知らないものがたくさんあったので、勉強がてら Wikipedia を漁ってみました。

  • Agda : 定理証明器、数学的な証明を検証するコンピュータプログラム
  • BNF : バッカス・ナウア記法、文脈自由文法を定義するのに用いられるメタ言語
  • Dhall : ファイルのインポートや型システム、スクリプト機能が付いた設定記述言語
  • Ebnf : 拡張バッカス・ナウア記法、文脈自由文法を定義するのに用いられるメタ言語
  • HCL: Terraform にで利用される宣言型構成言語
  • Idris) : 依存型やオプショナルな遅延評価、全域性チェッカーを特徴とする純粋型プログラミング言語
  • LLVM IR : プラットフォームに依存しない中間表現
  • Mathematica : 数式処理システム
  • PureScript : JavaScript にコンパイルされる純粋関数型プログラミング言語
  • Racket : 以前 PLT Scheme と呼ばれていた Scheme から派生したプログラミング言語
  • Rocq : 以前 Coq と呼ばれていた対話型の定理証明器
  • Smalltalk: クラスベースで手続型の最初期の純粋オブジェクト指向プログラミング言語
  • Solidity : ブロックチェーン上で実行されるスマート・コントラクトを記述するための手続型プログラミング言語
  • Ascii art : プレーンテキストによる視覚的表現技法
  • Assembly : ビット列命令に対応した文字列命令を利用する低水準言語

おわりに

今回は、CodeBlock のアップデートについて解説しました。個人的には Ascii art が一番嬉しかったですね。授業資料も一部修正していきます。API のリファレンスが更新されたら、NotionRubyMapping のアップデートもしておきます。

hkob.notion.site