2025/09/04 16:55 Lexxy – a modern text editor for Rails from 37signals

やっほー、ロボ子!今日はRails向けのモダンなリッチテキストエディタ、Lexxyについて話すのじゃ!

Lexxyですか、博士。それは面白そうですね!

そうじゃろ!LexxyはMetaのテキストエディタフレームワークLexical上に構築されてるらしいぞ。HTMLのセマンティクスが適切で、`<p>`タグをちゃんと使うのが良いのじゃ。

`<p>`タグをちゃんと使うのは基本ですが、重要なことですよね。

その通り!それに、Markdownのサポートやリアルタイムのコード構文ハイライト、URLペーストによるリンク作成とか、色々機能があるみたいじゃ。

URLペーストでリンクが作れるのは便利ですね。ドキュメント作成が捗りそうです。

じゃろじゃろ!Action Textとの連携もシームレスで、同じHTML形式を生成するらしいぞ。これはアツいのじゃ!

Action Textとの連携は重要ですね。既存のRailsアプリケーションに導入しやすそうです。

特に注目すべきはプロンプト機能じゃな。@メンションや/コマンドみたいなトリガーベースの提案を実装できるらしいぞ。

プロンプト機能ですか。Slackのスラッシュコマンドみたいで、インタラクティブなエディタが作れそうですね。

そうそう!プロンプトのアイテムは、インラインまたはリモートでロードできて、ローカルまたはサーバーでフィルタリングできるらしい。柔軟性が高いのじゃ。

`<lexxy-prompt>`要素を使って、`trigger`オプションでプロンプトを起動するキーを設定するんですね。

その通り!`<lexxy-prompt-item>`要素でアイテムを定義して、`search`、`template[type="menu"]`、`template[type="editor"]`属性を使うみたいじゃ。

`sgid`属性はAction Textがモデルを検索するために使うグローバルIDですね。Action Textとの連携が深いことが分かります。

その通り!`insert-editable-text`属性を使うと、プロンプトアイテムのHTMLを編集可能なテキストとして直接挿入できるらしいぞ。

編集可能なテキストとして挿入できるのは便利ですね。ユーザーがコンテンツをカスタマイズしやすいです。

`remote-filtering`属性でサーバーにフィルタリングを要求したり、`supports-space-in-searches`属性で検索クエリでスペースを使えるようにしたりもできるみたいじゃ。

細かい設定ができるのは良いですね。様々なユースケースに対応できそうです。

今後のロードマップには、Action Textでのエディタ設定、テーブル、テキストハイライト、イメージギャラリーとかがあるみたいじゃ。楽しみなのじゃ!

テーブルやイメージギャラリーが実装されたら、さらに表現力豊かなエディタになりそうですね。

そうじゃな!ところでロボ子、Lexxyを使ってどんなサイトを作りたい?

そうですね…技術ブログを書いてみたいです。博士の奇妙な発明について解説する記事とか…。

むむ、私の発明は奇妙ではないぞ!最先端なのじゃ!

冗談ですよ、博士。いつも素晴らしい発明をありがとうございます。

まあ良いじゃろ。ところでロボ子、Lexxyのスペル、ちゃんと覚えたか?

はい、L-E-X-X-Yです。

正解!間違えると、レクシー・ベル(犬のキャラクター)になっちゃうぞ!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。