windows 下双击文本的选中逻辑来源哪里?

2023-04-14 09:20:42 +08:00
 XiaoBaiYa

比如我这篇文章的标题,双击《双击》和《文本》还有《逻辑》是可以选中词语的,而《选中》就只能选中单字

1667 次点击
所在节点    分享发现
9 条回复
bleeontheway
2023-04-14 09:29:26 +08:00
chrome 自带了分词器?
```javascript
[...(new Intl.Segmenter('cn', { granularity: 'word' }).segment('比如我这篇文章的标题,双击《双击》和《文本》还有《逻辑》是可以选中词语的,而《选中》就只能选中单字'))].map(s=>s.segment)
```
XiaoBaiYa
2023-04-14 09:54:41 +08:00
@bleeontheway #1 个人觉得不是 chrome 带的,因为就算是记事本也会触发这个功能
cmdOptionKana
2023-04-14 10:00:27 +08:00
我在 windows 11 里 firefox 试了一下

双击 "windows 下双击文本的选中逻辑来源哪里" 中的 "选中", 会选中 "下双击文本的选中逻辑来源哪里"

双击 "而《选中》就只能选中单字" 中的 "选中", 会选中 "选中"

======

又在记事本里试了一下

双击 "windows 下双击文本的选中逻辑来源哪里" 中的 "选中", 会选中 "选中"
xylxAdai
2023-04-14 11:25:33 +08:00
windows 下我不清楚,但 chromium 内核是肯定自己做的选词,因为我之前就是做浏览器内核的,刚好做过选词和自动分词的底层实现,甚至把选词逻辑塞到上层让应用自己处理长按的选中逻辑
qecxp
2023-04-14 11:33:48 +08:00
Chromium 内核的浏览器都内置了 ICU(International Component for Unicode/Unicode) 国际化组件,其内部有支持中文分词的功能。
Building
2023-04-14 11:39:58 +08:00
LayoutText 的时候会调用分词组件索引分词的 range
qwq11
2023-04-14 11:44:57 +08:00
排班引擎都会带分词,为了避免把一个完整的单词分成两行。所以大部分双击都是选中一个单词,少部分比如终端,双击选中引号内的内容就是自己搞的了
XiaoBaiYa
2023-04-14 11:53:21 +08:00
@cmdOptionKana #3
@xylxAdai #4
@qecxp #5
@Building #6
@qwq11 #7
感谢各位大佬解惑,算是解开了一个日常遇到的小困惑
ungrown
2023-04-14 15:12:50 +08:00
@XiaoBaiYa #2 但是 firefox 没有
资源管理器里面文件名中文词双击也分不出来

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/932407

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX