web-dev-qa-db-ja.com

HTML(contenteditableまたはdesignMode)、la(新しい)Googleドキュメントを使用しないWYSIWYGリッチテキストエディターはありますか?

新しいGoogleドキュメントに加えて、私が見た他のすべてのWYSIWYG Webベースのリッチテキストエディター(ckeditor、tinymce、古いGoogleドキュメント)は、contenteditableまたはdesignModeに基づいています。私は個人的にこれらのエディターを使用するのが嫌いです。経験全体が欲求不満の練習に変わる前に、それは多くのフォーマットまたはコピー/貼り付けを必要としません。リターンが突然ダブルスペースになり始め、他のHTMLソースからの貼り付けによって意図しないフォーマットが導入されたり、元に戻す/やり直しが完全に壊れたり、フォーマットの制御が非常に困難になったりします。

これが、Googleドキュメントが独自のはるかに制限された非HTMLフォーマットエンジンを導入した理由の1つだと思います。同様の機能を提供するオープンソースライブラリはありますか?前もって感謝します。

49
Yang

Aceエディター (以前はBespinとSkywriter)から始めることができます。これはコード編集を目的としているため、フォーマットやその他の機能が欠けていますが、リッチテキストエディターのベースとなる便利な機能のコアが見つかるかもしれません。

動作中: http://ajaxorg.github.com/ace/build/editor.html

コード: https://github.com/ajaxorg/ace

更新:@ theazureshadowが指摘しているように、現在のエディターは最初に報告したようにcanvasを使用していません。 Bespinは、DOMを使用するAceとマージする前にcanvasを使用していました。しかし、内部を少し覗くと、contentEditableまたはdesignModeを使用しているようには見えません。 (カーソルの後に<textarea />があり、テキストを表示するためにスパンとdivがあります。これは、すべてをまとめるためのカスタムJSの束です。)

Ace.ajax.orgから>歴史:

BespinはMozillaLabsの一部として開始され、<canvas>タグに基づいていましたが、AceはCloud9 IDEのエディターコンポーネントであり、レンダリングにDOMを使用しています。

17
peteorpeter

あなたが正しいです:それははるかに良いです。

[ブラウザを使用せずに編集可能なテキストを処理する代わりに、カスタム編集サーフェスとレイアウトエンジンを完全にJavaScriptで使用するドキュメントエディタ]を提供するオープンソースライブラリはありますか。

疑わしい。

まず、エディターは「Kix」と呼ばれます。それは非HTMLではありませんが、あなたが言っているように、彼らがしていることを吸うので、それはcontentEditableを使用しません。それが行うことは、正しく行うのがトリッキーでかさばるということであり、それを作成するのにかなりの努力が必要だったと確信しています。

そうは言っても、なぜGoogleはKixをオープンソースにするのでしょうか。それはあなたのドキュメントハブになる彼らの努力を弱体化させます、そしてそれは彼らが統合を難しくしない方法でKixを他のGoogleドキュメントから分離するためにたくさんの追加の仕事をしなければならないことを意味します。利益?グーグルが後援するオープンソースプロジェクトがそれを改善するための開発者参加の形でサポートを見る可能性は低いように見えるので、それほど多くはありません。

それを行うためのライブラリを作成している人については、オープンソースで行われるのではないかと思います。通常、重要な事業であるオープンソースプロジェクトは大学または企業が後援しているものであり、上記の理由から、この場合はそうは思われません。繰り返しになりますが、開発者が悩みを抱えている場合、どこに行くのかわからない…

2
coreyward

[〜#〜] hte [〜#〜] がありますが、残念ながら遅く、基本的な選択機能の多くが欠けています。

0
Arne de Bruijn