TypeScript
テキストエディタ

テキストエディタAceをTypescriptでリメイク中


はじめに

JavaScriptの欠点を解決するためにMicrosoft社がTypescriptを開発した。Typescriptは、モジュールや型が追加され、容易に大規模なアプリケーションが開発可能である。そこで、ブラウザ上で使えるテキストエディタであるAceをTypescriptで書き直すことで、ソースコードを簡潔にし、これから、テキストエディタを利用する人にも、開発する人にも便利なテキストエディタMonakaを開発した。


Monakaを開発した動機

JavaScriptで開発するにあたって、依存関係の解消は重大な問題である。しかし、Ty


テキストエディタMonakaについて

MonakaはTypescript以外の外部ライブラリの使用せずに開発した。そのためコンパイルはコマンドラインでtscと入力するだけである。Monakaはモジュールの分割にnamespaceを用い、Typescriptのオプションですべてのファイルを一つにまとめているので、非常にシンプルかつ簡単にコンパイルすることできる。また、暗黙のany型を禁止して、型を厳密にして書き直した。そのため、Microsoft社がTypescriptで開発したMonacoエディタよりもソースコードは簡単で可読性が高くなった。ただ、一部の機能はまだ未実装である。


Aceエディタの日本語入力

Aceエディタは優れたエディタであるが、日本語入力の際、不具合があったのでTypescriptで書き直す際に修正した。ただし、まだ不具合が残っているので、今後引き続き修正していく。


まとめ

Aceエディタは優れたプログラムである。ただ、当然ながら、Javascriptで書かれているので、Javascriptが抱えている問題を抱え込んでしまい、そのプログラムの可読性は低い。そこでTypescriptで書きなおすことにより、可読性が優れ、保守が容易なテキストエディタになった。


リンク

https://github.com/IshikawaMasashi/Monaka