表情符号更新

然后还有各种要处理的事项,例如别名

3 个赞

啊哈!

我错过了那个仓库,谢谢 @j.jaffeux,我们现在又可以工作了 :partying_face:

Apple,回退到 unicode :slight_smile:

5 个赞

这种做法似乎很奇怪。在文本流中将表情符号渲染为图像似乎违背了常规。绝大多数用户都非常习惯使用其设备/操作系统原生的表情符号,因此看到一些不太好或不同的版本会感觉很奇怪。

绝大多数网站都使用用户原生的表情符号,这真的算是个问题吗?难道不应该默认使用用户的原生表情符号,并将自定义表情符号集作为插件或用户可自定义的选项吗?

当前的方法感觉和看起来都不够优雅。

5 个赞

有人在帖子中看到巨大的表情符号吗?

1 个赞

测试 :clap: 测试


一定是你的主题有问题?

3 个赞
  • Twitter 采用同样的策略
  • Slack 采用同样的策略
  • Discord 采用同样的策略

也许有原因?

7 个赞

不,抱歉,我漏掉了一张截图,看起来像是上传的。

如果我编辑帖子,我会看到:

很奇怪吧 :man_shrugging:t2::blush:

1 个赞

问题:Unicode 集合是指“示例”列中的那些(https://unicode.org/emoji/charts/full-emoji-list.html)吗?如果是的话,这些和 Noto 的是完全一样的,不是吗?我只是有点困惑,为什么两者都提供,如果它们是同一集合的话。

Screenshot 2025-08-08 at 12.00.11 PM

1 个赞

是的,你说得对,我们应该让它们收敛,不过没什么大碍。

1 个赞

我刚刚偶然发现了这个问题,因为我们的论坛默认设置(即使将选项重置回默认值)是“Twitter”,而它却显示“已弃用为 Twemoji”。

“Twitter”表情符号被弃用是有道理的,因为“Twitter”这个名字已被弃用(而且新的平台大部分变成了被滥用的粪坑)::sweat_smile:。但未经管理员同意就更改设置可能也是不合适的。

关于这个默认设置:这是 Discourse 实例最初自带的默认设置,还是适用于所有实例的全局设置,因此可以更改?新实例是否默认启用了 Twemoji 表情符号?

1 个赞

如果仍然是这样,将来可能会改变,请参阅:

1 个赞

你的意思是“尚未”如此吗?

我的观点是:

  • “Twitter”表情符号在列表中被明确标为已弃用,但它们仍然是默认的,这一点看起来很奇怪,也就是说,在我们的例子中,“重置”按钮仍然应用这些已弃用的 Twitter 表情符号。
  • 因此,我想知道默认设置是否真的没有在主干代码中更改,同时将“Twitter”重命名为“Twitter(已弃用至 Twemoji)”,或者默认设置更改是否不追溯应用于现有的 Discourse 实例。在这种特定情况下,我认为不更改现有实例的默认设置是有道理的,这样管理员始终可以恢复到他们的论坛最初的版本,并且他们从未触及过的设置不会在他们明确更改它们之前发生变化。
  • 其他措辞:是“重置”按钮应用 Discourse 默认设置(可能会更改),还是应用 Discourse 实例最初的版本?

嗯,我猜默认设置确实还没有改变,另一种理论似乎是相当复杂的行为 :sweat_smile:

1 个赞

Twitter 仍然是默认设置,即使是在新安装时

我认为“重置”总是会重置为当前版本的默认值。例如,“标准化电子邮件”大约在一年前被默认启用 https://github.com/discourse/discourse/pull/29952,所以重置现在会将该设置更改为启用。

2 个赞

有人创建了带回 Apple 表情符号的插件吗?我真的很想念它们 :sob:

或者有没有可能让我们的自定义表情符号显示在最前面,并覆盖像 :-) 这样的基本文本?

1 个赞

我没有制作插件,但我已将“twemoji”集转发到另一个文件夹,我在其中上传了所有 Apple 图标,因此这些图标会显示在网站上。

很简单,尽管您必须进行一些复制和重命名,以确保没有损坏的图标,当然,您还需要负责获取新发布的图像。

1 个赞

管理员是否有简单的方法来添加一些表情符号别名?

提出这个问题是因为我们已升级到 2.5 版本,并随之将表情符号从 Apple 切换到了 Noto,但现在我们遇到了相当多的此类问题:

Screenshot 2025-11-29 at 16.17.26

可以正常使用的是 :netherlands:,而所有其他使用的是两字母国家代码,这些代码以前可以工作,但我假设它们是现在不再起作用的别名。

有没有更简洁的方法来解决这个问题,因为我们有大量的帖子受到此影响?我对尝试使用 posts:remap 感到有点担心。

顺便说一句,在元(meta)论坛中,:de::germany: 仍然可以正常工作,所以我想 twemoji 也带有该别名——只是 Noto 没有。

就我个人而言,要解决这个问题,我只是用许多不同的名称复制了该图像。这很乱,但有效。

1 个赞

我把我的网站上的表情符号集改成了 Noto,而且 :de: 似乎工作得很好:
Screenshot_20251130_111124_Firefox

你的帖子源码中有什么特别之处吗?“重建 HTML”有帮助吗?

我再三检查,:de: 在我的安装中不起作用。我能想到的唯一区别是我们在 2.5.2 版本,而您可能正在针对 tests-passed 进行测试。

我查看了 discourse/discourse-emojis,确实有一个 noto/de.png 符号链接,它似乎是在 三月份 添加的,尽管 2.5 版是在六月发布的,但它可能没有包含进来?

以下是我的情况(拥有/未拥有):

# ls -l /var/www/discourse/public/images/emoji/{twemoji,fluentui,noto,unicode}/{de,flag_de,germany}.png
ls: cannot access '/var/www/discourse/public/images/emoji/fluentui/de.png': No such file or directory
ls: cannot access '/var/www/discourse/public/images/emoji/fluentui/flag_de.png': No such file or directory
ls: cannot access '/var/www/discourse/public/images/emoji/noto/de.png': No such file or directory
ls: cannot access '/var/www/discourse/public/images/emoji/noto/flag_de.png': No such file or directory
lrwxrwxrwx 1 discourse discourse  22 Oct  3 14:40 /var/www/discourse/public/images/emoji/fluentui/germany.png -> ../unicode/germany.png
lrwxrwxrwx 1 discourse discourse  22 Oct  3 14:40 /var/www/discourse/public/images/emoji/noto/germany.png -> ../unicode/germany.png
lrwxrwxrwx 1 discourse discourse  11 Oct  3 14:40 /var/www/discourse/public/images/emoji/twemoji/de.png -> germany.png
lrwxrwxrwx 1 discourse discourse  11 Oct  3 14:40 /var/www/discourse/public/images/emoji/twemoji/flag_de.png -> germany.png
-rw-r--r-- 1 discourse discourse 246 Oct  3 14:40 /var/www/discourse/public/images/emoji/twemoji/germany.png
lrwxrwxrwx 1 discourse discourse  11 Oct  3 14:40 /var/www/discourse/public/images/emoji/unicode/de.png -> germany.png
lrwxrwxrwx 1 discourse discourse  11 Oct  3 14:40 /var/www/discourse/public/images/emoji/unicode/flag_de.png -> germany.png
-rw-r--r-- 1 discourse discourse 854 Oct  3 14:40 /var/www/discourse/public/images/emoji/unicode/germany.png

别名 flag_dede 在那里,但仅适用于某些集。看起来 noto 和 fluentui 都没有自己的 germany.png,而是依赖于 unicode 集中的那个。也许正因如此,别名没有(或曾经没有)被创建。

除非有人看到更简洁的解决方法,否则我可能会尝试在构建过程的 after_code 钩子上创建缺失的符号链接。