使用 Shift+ 鼠标左键选择文本时,会切换中英文输入状态

思源版本:Windows 版 v3.0.16

使用的输入法:搜狗拼音输入法 v14.1.0

系统版本:Windows 11 23H2

打开一个文档,确认当前选择的输入法是搜狗拼音输入法,并且输入法设置为点击 Shift 键切换中英文(默认设置就是使用 Shift 键切换中英文)。

使用鼠标点击要选择的文本的开始位置,然后按住 Shift 不放,移动鼠标到要选择的文本的结束位置,再次点击鼠标左键,此时文本被选中。

接着松开 Shift 键,会发现输入法切换了中英文输入状态。

期望的行为: 在这种使用场景下,松开 Shift 键不应该切换中英文输入状态。

试了在 WPS 里、Edge 浏览器里,使用 Shift+ 鼠标左键选择文本时,都没有发生中英文切换的问题。

使用 Shift+ 鼠标左键选择文本,选择之后执行复制、剪切、加粗等操作在平时用得比较多。由于这个问题的存在,导致在录入的过程中经常会在录入了几个字符之后,发现中英文状态不对,只好把已录入的内容删掉,按 Shift 切换中英文输入状态,然后重新录入,这对录入体验的影响比较大,希望能够修复。

  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    19772 引用 • 75629 回帖 • 1 关注
2 操作
rwaysov 在 2024-06-01 19:47:08 更新了该帖
rwaysov 在 2024-06-01 17:52:01 更新了该帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • 哦哦,我没怎么用过 windows 和搜狗,你要么试试【鼠须管】~

    这种问题可能会不太好解决,我第一个念头有可能是基于 electron+webview 方式软件的通病,你可以在 vscode 里面试试会不会有这种情况~

    1 回复
  • 其他回帖
  • rwaysov

    写了个 AutoHotkey 脚本来解决这个问题。在启动了这个脚本后,在多个软件里试了,Shift+ 鼠标左键点击后抬起 Shift 键都不会再触发中英文切换,换成其他输入法也没问题,也不会触发不必要的中英文切换。

    脚本内容如下:

    ; 这个脚本用来解决「使用 Shift+鼠标左键选择文本时,
    ; 会切换中英文输入状态」的问题,阻止不必要的输入语言切换
    
    ; 自动执行段 START -------------------
    SendMode Input
    
    ; 在Shift被按下之后,鼠标按键被点击的次数
    mouseClickCountWhenShiftPressedDown := 0
    
    return
    ; 自动执行段 END -------------------
    
    
    *Shift::Send {Shift down}
    
    
    *Shift Up::
    global mouseClickCountWhenShiftPressedDown
    
    if (mouseClickCountWhenShiftPressedDown > 0) {
        ; 在按住Shift之后点击了鼠标左键时,
        ; 采用下面的方式释放Shift键,避免切换中英文输入状态
      
        ; 把Ctrl键按下后再释放Shift键
        Send {Ctrl down}
        Send {Shift up}{Ctrl up}
      
        mouseClickCountWhenShiftPressedDown := 0
    }
    else {
        ; 在按住Shift之后没有点击鼠标左键时,正常释放Shift键
        Send {Shift up}
    }
    
    return
    
    
    ~*LButton::
    global mouseClickCountWhenShiftPressedDown
    
    if (GetKeyState("Shift", "P")) {
        mouseClickCountWhenShiftPressedDown++
    }
    
    return
    

    .ahk 文件我放到了 prevent-unnecessary-lang-switching.zip
    这个压缩包中,有需要的同学可以下载下来双击运行使用(需要先安装好 AutoHotkey)。

  • rwaysov

    换成系统自带的微软拼音输入法后问题更多了,之前在使用搜狗拼音输入法时没问题的 WPS 和 Edge 浏览器,也都出现 Shift+ 鼠标点击选择文本时切换中英文的问题了。还是继续使用搜狗拼音输入法问题少一些。

    1 回复
  • 确实哦,我也是

  • 查看全部回帖

推荐标签 标签

  • 工具

    子曰:“工欲善其事,必先利其器。”

    279 引用 • 712 回帖
  • JavaScript

    JavaScript 一种动态类型、弱类型、基于原型的直译式脚本语言,内置支持类型。它的解释器被称为 JavaScript 引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在 HTML 网页上使用,用来给 HTML 网页增加动态功能。

    713 引用 • 1174 回帖 • 121 关注
  • 人工智能

    人工智能(Artificial Intelligence)是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门技术科学。

    74 引用 • 157 回帖
  • OAuth

    OAuth 协议为用户资源的授权提供了一个安全的、开放而又简易的标准。与以往的授权方式不同之处是 oAuth 的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第三方无需使用用户的用户名与密码就可以申请获得该用户资源的授权,因此 oAuth 是安全的。oAuth 是 Open Authorization 的简写。

    36 引用 • 103 回帖 • 8 关注
  • Mobi.css

    Mobi.css is a lightweight, flexible CSS framework that focus on mobile.

    1 引用 • 6 回帖 • 707 关注
  • 创业

    你比 99% 的人都优秀么?

    83 引用 • 1398 回帖
  • Jenkins

    Jenkins 是一套开源的持续集成工具。它提供了非常丰富的插件,让构建、部署、自动化集成项目变得简单易用。

    51 引用 • 37 回帖 • 5 关注
  • GitBook

    GitBook 使您的团队可以轻松编写和维护高质量的文档。 分享知识,提高团队的工作效率,让用户满意。

    3 引用 • 8 回帖
  • RYMCU

    RYMCU 致力于打造一个即严谨又活泼、专业又不失有趣,为数百万人服务的开源嵌入式知识学习交流平台。

    4 引用 • 6 回帖 • 49 关注
  • SMTP

    SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。SMTP 协议属于 TCP/IP 协议簇,它帮助每台计算机在发送或中转信件时找到下一个目的地。

    4 引用 • 18 回帖 • 607 关注
  • WebSocket

    WebSocket 是 HTML5 中定义的一种新协议,它实现了浏览器与服务器之间的全双工通信(full-duplex)。

    48 引用 • 206 回帖 • 382 关注
  • PostgreSQL

    PostgreSQL 是一款功能强大的企业级数据库系统,在 BSD 开源许可证下发布。

    22 引用 • 22 回帖
  • ActiveMQ

    ActiveMQ 是 Apache 旗下的一款开源消息总线系统,它完整实现了 JMS 规范,是一个企业级的消息中间件。

    19 引用 • 13 回帖 • 643 关注
  • Typecho

    Typecho 是一款博客程序,它在 GPLv2 许可证下发行,基于 PHP 构建,可以运行在各种平台上,支持多种数据库(MySQL、PostgreSQL、SQLite)。

    12 引用 • 60 回帖 • 454 关注
  • CentOS

    CentOS(Community Enterprise Operating System)是 Linux 发行版之一,它是来自于 Red Hat Enterprise Linux 依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定的服务器以 CentOS 替代商业版的 Red Hat Enterprise Linux 使用。两者的不同在于 CentOS 并不包含封闭源代码软件。

    238 引用 • 224 回帖
  • Sillot

    Insights(注意当前设置 master 为默认分支)

    汐洛彖夲肜矩阵(Sillot T☳Converbenk Matrix),致力于服务智慧新彖乄,具有彖乄驱动、极致优雅、开发者友好的特点。其中汐洛绞架(Sillot-Gibbet)基于自思源笔记(siyuan-note),前身是思源笔记汐洛版(更早是思源笔记汐洛分支),是智慧新录乄终端(多端融合,移动端优先)。

    主仓库地址:Hi-Windom/Sillot

    安卓端仓库:Hi-Windom/Sillot-android

    注意事项:

    1. ⚠️ 汐洛仍在早期开发阶段,尚不稳定
    2. ⚠️ 汐洛并非面向普通用户设计,使用前请了解风险
    28 引用 • 25 回帖 • 54 关注
  • Bootstrap

    Bootstrap 是 Twitter 推出的一个用于前端开发的开源工具包。它由 Twitter 的设计师 Mark Otto 和 Jacob Thornton 合作开发,是一个 CSS / HTML 框架。

    18 引用 • 33 回帖 • 682 关注
  • Sandbox

    如果帖子标签含有 Sandbox ,则该帖子会被视为“测试帖”,主要用于测试社区功能,排查 bug 等,该标签下内容不定期进行清理。

    379 引用 • 1221 回帖 • 588 关注
  • 一些有用的避坑指南。

    69 引用 • 93 回帖
  • TextBundle

    TextBundle 文件格式旨在应用程序之间交换 Markdown 或 Fountain 之类的纯文本文件时,提供更无缝的用户体验。

    1 引用 • 2 回帖 • 45 关注
  • Log4j

    Log4j 是 Apache 开源的一款使用广泛的 Java 日志组件。

    20 引用 • 18 回帖 • 30 关注
  • Swift

    Swift 是苹果于 2014 年 WWDC(苹果开发者大会)发布的开发语言,可与 Objective-C 共同运行于 Mac OS 和 iOS 平台,用于搭建基于苹果平台的应用程序。

    34 引用 • 37 回帖 • 507 关注
  • 导航

    各种网址链接、内容导航。

    37 引用 • 168 回帖
  • 博客

    记录并分享人生的经历。

    272 引用 • 2386 回帖
  • 尊园地产

    昆明尊园房地产经纪有限公司,即:Kunming Zunyuan Property Agency Company Limited(简称“尊园地产”)于 2007 年 6 月开始筹备,2007 年 8 月 18 日正式成立,注册资本 200 万元,公司性质为股份经纪有限公司,主营业务为:代租、代售、代办产权过户、办理银行按揭、担保、抵押、评估等。

    1 引用 • 22 回帖 • 703 关注
  • 以太坊

    以太坊(Ethereum)并不是一个机构,而是一款能够在区块链上实现智能合约、开源的底层系统。以太坊是一个平台和一种编程语言 Solidity,使开发人员能够建立和发布下一代去中心化应用。 以太坊可以用来编程、分散、担保和交易任何事物:投票、域名、金融交易所、众筹、公司管理、合同和知识产权等等。

    34 引用 • 367 回帖 • 1 关注
  • SVN

    SVN 是 Subversion 的简称,是一个开放源代码的版本控制系统,相较于 RCS、CVS,它采用了分支管理系统,它的设计目标就是取代 CVS。

    29 引用 • 98 回帖 • 692 关注