ユーザーとして絵文字の自動補完を無効にする

こんにちは :slight_smile:

ユーザーとして絵文字の自動補完を無効にできるようにしたいです。:slight_smile:

絵文字の自動補完を無効にする および スマイリーを無効にする (discourse.gnome.org) を参照してください。

OPにも、現在直面している問題の簡単な概要や、なぜこのユーザー設定がここで有益なのかを記載していただけると助かります。そうすることで、#contribute:機能リクエストがより充実したものになり、また、リンク先で情報を検索する手間も省けますよ😄

(OPって何?)

了解、試してみます。

  • フランス語を話す者として、私は時々 <space>: <return> と入力してしまいます(<return> は改行ではなく、提案された絵文字を検証しようとしてしまいます)。
  • 私はまた、顔文字(特に「:-)」)をよくタイプします。それも行末でです。それは「:slight_smile: 」に変換されます。私はそれが好きではありません。結果は同じでも、投稿前にメッセージを確認しにくくなるからです。
  • 私は discourse.gnome.org のユーザーですが、彼らはそれがサイト全体の設定であるため私にはお手伝いできないと言っています。だからこそ、これをユーザー全体の設定にしていただきたいと思います。 :slight_smile:

代替案:自動補完機能で提案された絵文字を検証する別の方法を見つけることもできます(例えば <tab> を使うなど)。そうすれば、<return><space> のように、提案を無視して入力を継続するものとして扱われます。

「いいね!」 1

Original Post = トピックの最初の投稿、つまり、このトピックを開始したあなたのもののようなトピックタイトルを設定した投稿です。

では、なぜ単に「:スペース改行」を押さないのですか?

コロンの後にスペースを入れると、絵文字の自動補完ポップアップがすぐに閉じます。

「いいね!」 4

最初の投稿を編集すべきで、その下に追記すべきではないということですか?

開発者として、無駄なスペースをそのままにしておくのは嫌いです。汚い仕事だと感じます。
そのため、私は スペース:リターン と入力する習慣があり、スペース:スペース:リターン という反射神経を身につけたいとはあまり思いません。

スペース:スペース:バックスペース:リターン も、自動補完ボックスが再び開いてしまうため、機能しません。


要点は、私はどのプレーンテキストエディタでも スペース:リターン と入力する習慣があり、Discourseでも同じ結果が得られることを強く望んでいます。つまり、これらのキーはすべてテキストの流れとして考慮され(スペース だけではなく)、自動補完の提案は無視されるべきです。

リターン(キーボードのテンキーにあるもの)の代わりに エンター を使用するのはどうでしょうか?
絵文字を選択するために 上矢印 / 下矢印 を使用する場合、左矢印 右矢印 が自動補完ボックスを再び開かないことを考えると、それを検証するために 右矢印 を使用することもできます。

うーん、すみません、あなたの議論についていけていません。明確にするために、簡単な解決策を提示しましたが、あなたはそれを十分ではないと言っています。なぜなら、あなたは「:return:」を使用する習慣があるため、ユーザー設定に新しい機能を追加すべきだと感じているのですか?参考までに、この特定の機能リクエストはまだ見たことがありません。:thinking:

回避策をありがとうございます。 :slight_smile:

  • そして、:space::backspace::return: は回避策ではありません。
  • そして、私は:space::return: という反射神経を身につけたくありませんし、コードや公式文書では特に汚い仕事になるので、どんなプレーンテキストエディタでもそれを入力したくありません。

新しい機能とは何ですか?

私が理解したのは、サイト全体の設定はすでにあり、この設定をユーザー全体のものにすることを提案しているということです。


GitLabにもDiscourseのものと似たオートコンプリート機能があることを発見しました。ただし、オートコンプリートボックスが開いたときに選択されている絵文字がないため、ユーザーは最初の提案された絵文字を選択するために:return: を入力する必要があります。

その後、:return: はタイピングフロー/テキストフローと見なされ、オートコンプリートの提案は無視されます。
文字の後に: が入力されてもオートコンプリートボックスが開きますが、誰も気にしないと思います。 :slight_smile:

ユーザーは最初の提案された絵文字を取得するために、:return: の代わりに:return: を入力する必要があります。

この変更は受け入れられますか?

スペース:エスケープリターン を回避策として使用するのはどうでしょうか? テストでは機能するようですが、誤ってコンポーザーを最小化してしまう可能性があります。

「いいね!」 1

ありがとうございます。素晴らしい回避策のようです。 :slight_smile:

GitLab ソリューションまたはユーザー全体の無効化のいずれかを念頭に置いておいていただければ、タイピングフローに \u003cescape\u003e を挿入する必要がなくなります。 :slight_smile:

「いいね!」 1

このリクエストに賛成します。ユーザーから、代わりに昔ながらの「: )」のような絵文字を入力したいので、スマイリーを無効にしてほしいという要望がありました。

ユーザーはDiscourseに :-) の代わりに :) を表示させたいですか?

もしそうであれば、管理者であれば既にサーバー全体(サイト全体)でスマイリーを無効にすることができます。

ユーザーごとに無効にしたい場合、特定のユーザーが読むすべての投稿でスマイリーを無効にしたいのか、それともそのユーザー自身の投稿のみで無効にしたいのか、具体的に教えていただけますか?

最初のケースでは、スマイリーを無効にしていないユーザーが書いた :slight_smile: をDiscourseが :) に翻訳するとは思えないので注意してください。


私の場合、絵文字の自動補完のみを無効にしました。なぜなら、投稿を書いているときに :slight_smile::) の代わりに表示されるのが邪魔だからです。しかし、プレビューペインや投稿を読んでいるときに :) が表示されても気になりません。

絵文字が表示されても構わないが、自分自身は絵文字を :-) として表示したいユーザーがいます。

そのため、他の人には自分の投稿の絵文字を見られたくないと考えています。

少し変わったリクエストですね。このバッククォートについて伝えておきます。これでうまくいくかもしれません!

また、このプラグインに関するユーザーからのリクエストもいくつか受けています。特にチャットプラグインについては、その設定を両方のプラグインで共有することも可能です。

テーマコンポーネントで絵文字レコメンダーを無効にしたい場合、以下のようなものが機能します。(概念実証を開始しましたが、これは絵文字のレンダリングを許可しますが、コンポーザーでの推奨はしません)。

推奨事項をバイパスする条件をコード化する必要があります。レコメンダーのみをオフにします。ただし、:persevering_face: のようなものを入力すると、絵文字は引き続きレンダリングされます。

import { withPluginApi } from "discourse/lib/plugin-api";

export default {
  name: "disable-emoji-autocomplete-non-staff",

  initialize() {
    withPluginApi("0.8.12", (api) => {
      api.modifyClass("component:d-editor", {
        _applyEmojiAutocomplete() {
          let isGroupMember = ...メンバーを取得するロジック...
            });
          // スタッフのみに絵文字の自動補完を適用する
          if (!isGroupMember) {
            // または、hate_emoji グループのメンバーに絵文字を提案しないようにしたいかもしれません
            return; // スタッフ以外の自動補完を無効にします
          }
          // それ以外の場合は、元の動作にフォールバックします
          this._super(...arguments);
        },
      });
    });
  },
};

グループ(または他の何か?)によって絵文字レコメンダーを無効/許可する、適切に機能するテーマコンポーネントが必要で、予算がある場合は、お気軽にご連絡ください。