添加提及/表情符号/标签会添加尾随空格但不会移动光标

当您输入 @: 后接所需内容并按下 Enter 键时,系统会自动补全用户名或表情名称,并在其后添加一个空格。我推测添加这个空格是为了方便您继续输入,但光标并未随之移动以适配新增的空格。因此,目前您仍然需要手动按下空格键,导致末尾出现多余的空格。

考虑到您在提及某人或插入表情后可能希望结束句子(或完成帖子撰写),我倾向于直接移除这个自动添加的尾部空格,让用户在需要空格时自行按下空格键。另一种方案是将光标向前移动一个字符,使其位于空格之后(这是否是原本预期的行为?),但我不认为这样做有多大价值。我更倾向于在需要空格时手动按下空格键,而不是在不需要时删除自动添加的空格。

(我知道这处于 bug 的边缘,如果这更适合归类为 ux#feature,请随意移动。另外,在写上一句话时我刚刚意识到,标签(#)也会出现同样的情况。)

4 个赞

它确实有些古怪,也 mildly 令人烦恼,比如 GitHub 会移动光标,这更有道理。

我支持移动光标。

3 个赞

最近两周左右,这方面有什么变化吗?:thinking:

我在所有表情符号的末尾添加了很多 :t2 值,并且一直使用键盘输入。

例如,要获取白色版本的竖起大拇指表情,我会输入:

:+

然后按 Tab 键完成黄色的竖起大拇指表情,接着继续输入 :t,此时会弹出一个简短的颜色列表:

这时我只需再次按 Tab 键,即可自动补全我想要的 :t2 变体。

然而,在看似最近的更新之后,每当我按 Tab 键完成第一个 :+1: 时,末尾会自动添加一个空格。这意味着我现在需要先按退格键,然后才能继续输入我的 :t 变体?

1 个赞

几乎可以肯定是一个新的回归问题,也许 @sam 回来后可以查看一下。

2 个赞

我完全理解这里的不便,但之前我们是在插入空格并将光标向后移动,这造成了混淆,并引发了许多细微的问题。

我们当然喜欢插入空格,但我很犹豫让 :heart: 插入空格而 :+1: 却不插入。

我认为最好的方案是在浏览器的本地设置中引入一个“后台设置”。只需让客户端“记住”您上次选择的肤色,然后默认添加它即可。

那么这里的修复就很简单了,您只需在此处进行一次更改:

之后您插入的后续表情符号将自动附加肤色,例如 :+1:t3:。我更喜欢这个方案,因为我们更加尊重用户。您很可能希望保持使用刚刚选择的肤色。

@codinghorror 您觉得这个方案如何?

3 个赞

我觉得不错!:+1:t6:

3 个赞

这个 PR 应该能解决问题:

客户端应用已经会记住用户选择的肤色(表情选择器也已尊重所选肤色),但目前我们的表情自动补全功能并未尊重所选肤色,始终建议黄色肤色。该 PR 将使表情自动补全默认使用用户选择的肤色。

修改前 / 修改后:

4 个赞

太棒了!

非常感谢大家,正是这些小事让这里成为一个如此出色的平台 :bowing_man:t2:

4 个赞

@seanblue 你对新功能满意吗?明天将自动关闭此议题。

2 个赞

关于我最初的投诉/建议,是的,我对这次更改感到满意。现在光标已移至插入空格之后,我认为这样很好。感谢处理此事。

4 个赞