問題タブ [etherpad]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1290 参照

node.js - OpenSuse 12.3 に NodeJS をインストールする際の Python エラー

ソースから OpenSuse 12.3 に NodeJS をインストールしようとしています。Etherpad-Lite を動作させるために必要です。Node.JS バージョン 0.8.0 ./configure、make、make install でインストールしようとすると、次のエラー コードが表示されます。

NodeJS の最新バージョンを使用している場合、別のエラーが発生します。

あなたが私を助けてくれることを願っています。前もって感謝します ;)

0 投票する
1 に答える
976 参照

node.js - Etherpad Lite で巨大な sqlite データベースを移行する最良の方法

私は 2 年間 sqlite で Etherpad Lite を使用しています。次に、データベースを MySQL または Redis に移行します。bin/migrateDirtyDBtoMySQL.js私は自分の小さな移行スクリプトを書くためのインスピレーションとして使用しました。ここにあります:

sqlite3 依存関係がインストールされた後、それは機能します、私の sqlite.db ファイルは 700 MB を超えており、呼び出し:

kill シグナルで終了します。nodejs と etherpad-lite を使用して、このような巨大なデータベースを処理するにはどうすればよいですか?

0 投票する
1 に答える
866 参照

node.js - Etherpad: 認証にフックする最良の方法

ユーザーが認証されているかどうかを確認する etherpad のプラグインを作成しています。そうでない場合は、読み取り専用で表示されます。私はこれまでに得ました:

しかし、投稿ルートを使用して自分のユーザーをログインさせることはできません。/login にアクセスしたときなど、リクエストに応じて一般認証のようなものを取得するにはどうすればよいですか?

0 投票する
1 に答える
129 参照

javascript - 入力時にユーザー入力テキストを指定された色にペイントします

各ユーザーが異なる色で入力したときに、etherpad UI 効果を実現したいと考えています。リッチ テキスト エディターとして contenteditable div を使用します。

私がこれまでに試したこと:

1) 入力の変更時に、元のテキストと変更されたテキストの差分を作成します (たとえば、diff-match-patch を使用)。

2) 差分部分文字列の境界を見て、それがユーザーのテキスト内にあるかどうかを確認します (いくつかのタグで定義されています)。

3) true の場合、何もしません。false の場合、その部分文字列の横に 2 つのカラー タグを挿入し、変更呼び出しを適用します。$(element).html(new_text)

大きな問題があります - を呼び出すとhtml()、キャレットの位置がゼロにリセットされます。これは、テキスト エディターで作業しているときにちょっと悪いことです。contenteditable div からキャレット位置を抽出し、オフセットで再度設定しようとしdiff.lengthましたが、div 内に多くの子ノードがあり、キャレット オフセットが親に対して相対的であるため、これもうまくいきません。

アップデート:

したがって、問題を少し絞り込むことができます。

1) TextNode 要素内でキャレットの位置を取得する方法を知っています

2)TextNode要素内で設定する方法を知っています(Rangyの有無にかかわらず)

3) 唯一の問題は、現在キャレットがどの要素にあるのかを調べる方法です。