Twitterがテキストエディタのコードをオープンソースで公開、iOS用。「Twitter Text Editor」

2021年2月1日

Twitterは、iOS用のテキストエディタを実装するコード「Twitter Text Editor」をオープンソースで公開しました

Twitter Text Editorは、実際にTwitterでツイートするときに使われているテキストエディタのコードをオープンソース化したものと説明されています。

Swift Packageとして実装されており、ほかに依存するものはありません。Xcodeのプロジェクトに追加することで簡単に利用可能。iOSライブラリ管理ツール「CocoaPods」経由でも利用できます。

Appleはテキストエディタに使えるAPIをハイレベルのものとローレベルのものを提供していますが、ハイレベルのものはより優れたユーザー体験のために細かな制御をするには十分な機能がなく、ローレベルのものはさまざまな言語(英語や日本語などの自然言語)に対応しようとすると多様な知識が必要になるなど、どちらを使うにせよ開発者はAPIと必要な機能のギャップを埋める作業が求められます。

テキストエディタを実装するのは見かけ以上に実は難しいことで、Twitter Text Editorはそうした課題を解決するものだとのこと。

おもに次のような機能を備えています。

Easy delegate-based APIs
一般的なUIKit APIなどと同様のデレゲートベースのAPI

Robust text-attribute update logic
シンタックスハイライトなどを実装するうえで必要なテキストコンテントのパースやバックグラウンドでテキストのアトリビュートをアップデートするための、シンプルなコールバックAPIを提供

Additional text editing events
アプリケーションのUIの変更が発生するような「Primary Language Change」「Base Writing Direction Change」などエキストライベントの提供

Safe event handling for text input
実は実装が難しい、ユーザーインターフェイスのアップデートやテキストのフィルタリングを行える安全なタイミングでのイベントコールバックの提供

Support for recent versions of iOS
iOS 11.0以後すべてのiOSで利用可能

Twitter Text Editorは、SwiftとObjective-Cによるサンプルアプリケーションもバンドルされています。

このエントリーをはてなブックマークに追加
follow us in feedly


関連タグ プログラミング言語 / iOS / Twitter



タグクラウド(β版)

クラウド / AWS / Azure / Google Cloud
コンテナ / Docker / Kubernetes
クラウドネイティブ / サーバレス
クラウド障害 / 運用・監視

プログラミング言語 / 開発ツール
JavaScript / Java / .NET / WebAssembly
HTML/CSS / Web標準

アジャイル開発 / スクラム / DevOps / CI/CD
ソフトウェアテスト・品質
ローコード/ノーコード開発

データベース / RDB / NoSQL / 機械学習・AI
Oracle Database / MySQL / PostgreSQL
Office / 業務アプリケーション

ネットワーク / HTTP / QUIC / セキュリティ
OS / Windows / Linux / VMware
ハードウェア / サーバ / ストレージ

業界動向 / 働き方 / 給与・年収
編集後記 / 殿堂入り / おもしろ

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed


最新記事10本