mikelirjc
V2EX  ›  Apple

一个暂时缓解 Apple 中文输入发卡顿的办法(权宜之计)

  •  
  •   mikelirjc · Nov 3, 2023 · 4262 views
    This topic created in 1098 days ago, the information mentioned may be changed or developed.
    忘记了从哪个版本系统开始 Apple 中文输入法开始卡顿了
    从原生卡顿换成 Rime 愉快用了很长一段时间
    又是不知从哪个版本开始卡顿了
    一直从输入法和系统方面找原因
    什么系统重启
    什么 Rime 重启
    都试过但是过一段时间又开始卡顿

    前段时间偶然发现输入法卡顿严重的程序退出重启后就不卡顿了
    各位无法彻底解决中文输入法卡顿的小伙伴可以试试
    重启卡顿的应用软件
    这个方法本质跟系统重启差不多
    只是比系统重启简单快速便捷
    Supplement 1  ·  Nov 3, 2023
    我用的的是 Rime
    回复里面的脚本都试了
    还是不能解决 Rime 卡顿问题
    最后还是重启使用 Rime 卡顿的 App 解决问题
    29 replies  •  2023-11-04 15:40:36 +08:00
    Mikawa
    Mikawa
    Nov 3, 2023
    1
    #!/bin/zsh

    # 获取所有带有"Simplified Chinese Input Method"的进程,并过滤掉脚本本身
    processes=$(ps aux | grep "[S]CIM.app" | grep -v "$0")

    # 从进程信息中提取 PID
    pids=$(echo "$processes" | awk '{print $2}')

    # 循环处理每个 PID
    while IFS= read -r pid; do
    if [[ $pid =~ ^[0-9]+$ ]]; then
    echo "Terminating process with PID: $pid"
    kill -9 "$pid" # 强制结束进程
    else
    echo "Invalid PID: $pid"
    fi
    done <<<"$pids"
    mikelirjc
    mikelirjc
    OP
    Nov 3, 2023
    2
    @Mikawa 这是一键处理所有程序,简单粗暴!但是有个问题,中文输入法卡顿不是所有软件都卡顿,基本是再后台运行时间过长的软件会卡顿...... 这可能跟我喜欢把程序丢后台有关把!尤其是用 macOS 系统,下次一定要搞个 96G 以上内存的直接丢后台
    Mikawa
    Mikawa
    Nov 3, 2023
    3
    @Mikawa 用 Apple Script 包裹这个脚本,变成一个 App ,在卡的时候点一下
    mikelirjc
    mikelirjc
    OP
    Nov 3, 2023
    4
    @Mikawa 你这个脚本是把所有调用中文输入法的程序都杀了,那还的一个个地打开啊😭
    LabJo
    LabJo
    Nov 3, 2023
    5
    快捷指令->shell 脚本->kill -9 $(pgrep SCIM),生成个快捷图标放程序坞,点一下就执行
    Mikawa
    Mikawa
    Nov 3, 2023
    6
    @mikelirjc #4 你跑一下试试...只是 Kill SCIM
    vacuitym
    vacuitym
    Nov 3, 2023
    7
    不用这么麻烦吧,直接杀掉输入法进程就可以,他会自动启动的:
    ps -ef|grep SCIM_Extension |grep -v "grep"|awk '{print $2}'|xargs sudo kill -9
    DOMO
    DOMO
    Nov 3, 2023
    8
    好像是从 Ventura 开始的,Sonoma 现在最新版还没解决么
    zero3412
    zero3412
    Nov 3, 2023
    9
    我的输入法卡顿主要是在 Chrome 中,它有个啥预加载,关掉就好了,非常难得会有那么一两次卡顿。
    cwbsw
    cwbsw
    Nov 3, 2023
    10
    不用 Chrome 相关应用就解决了,当然这在如今这年头也是挺难的。
    p2007
    p2007
    Nov 3, 2023
    11
    苹果用户是真的难。
    Ga2en
    Ga2en
    Nov 3, 2023
    12
    你们到底为什么会卡

    我就在 ventura beta 的时候卡过两个版本,之后从来没卡过
    wclebb
    wclebb
    Nov 3, 2023
    13
    不太现实(正在生产几天的软件你说重启就重启?),直接杀输入法就好了。
    Accelerator03
    Accelerator03
    Nov 3, 2023
    14
    之前使用 Intel 芯片的 mac 会有这种问题, 自从换成了 Apple Silicon 之后就没再出现过了, 不知道是不是 Apple 对 macOS 做了负优化...😂
    Lenic
    Lenic
    Nov 3, 2023
    15
    不知道高内存的 M 芯片有没有卡的,比如 32G 或者 64G 。

    我在 V 站看了好多了,从各种描述上来讲,可能大多数是 16G 的用户才出现问题。

    我自己出现卡顿大多数情况是是在内存变黄了的时候,那个时候会有硬盘交互,相比起内存来会慢很多,我在想会不会是这个原因导致的?你们再次出现卡顿的时候,看看内存占用是不是变黄了,极大概率是这种时候发生的。

    再进一步,内存变黄了,后面再次变绿,有可能卡顿还会发生,因为输入法的内存存放在硬盘后,不会轻易取出来,所以后面变绿后可能还会卡顿;

    此时调用上面的命令杀掉输入法进程,那块放在硬盘的内存就废弃了,新打开的程序,肯定是放在真正地内存中的,所以速度又恢复了。

    当然,这只是我对这个 Bug 思考的过程,不一定对,大家可以把自己的情况说出来,这样或许,我说的是或许,或许能真正定位这个 Bug 的问题来源。
    pc10300
    pc10300
    Nov 3, 2023
    16
    @Accelerator03 现在有点搞不清楚,公司的 M2 16G 也会卡,但是家里的 M2 Max 32G 不会卡
    F281M6Dh8DXpD1g2
    F281M6Dh8DXpD1g2
    Nov 3, 2023
    17
    我的三台 m 系列都没卡过,遇到卡的试试看打完字就切换回英文试试
    Leonard
    Leonard
    Nov 3, 2023 via iPhone
    18
    @Accelerator03 Apple Silicon 一样有,可能只是你还没遇到而已
    YaD2x
    YaD2x
    Nov 3, 2023 via iPhone
    19
    用了 2 年 m1 不知道你们说的卡顿是啥,自带输入法挺流畅的
    GabrielleBellamy
    GabrielleBellamy
    Nov 3, 2023
    20
    @Lenic 我觉得有道理,我就是 16GB 的,然后我在不使用自带中文输入法的情况下也遇到过,而往往是伴随高强度工作,尤其是窗口不停切换,特别是开了台前调度的时候,显示桌面的动画非常容易卡住所有进程。所以我觉得也有可能是任何一个系统进程被卡住导致的,不一定是输入法,台前调度或者动画 UI 都可能。
    ybz
    ybz
    PRO
    Nov 3, 2023
    21
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
    <key>Label</key>
    <string>com.xxx.killKeyboardCN</string>
    <key>ProgramArguments</key>
    <array>
    <string>/bin/bash</string>
    <string>/xxx/kill_zh-hans-cn.sh</string>
    </array>
    <key>StartCalendarInterval</key>
    <array>
    <dict>
    <key>Hour</key>
    <integer>9</integer>
    </dict>
    <dict>
    <key>Hour</key>
    <integer>13</integer>
    </dict>
    </array>
    <key>StandardErrorPath</key>
    <string>/dev/null</string>
    <key>StandardOutPath</key>
    <string>/dev/null</string>
    </dict>
    </plist>
    放到/Users/xxx/Library/LaunchAgents/ 文件夹下,launchctl bootstrap /Users/xxx/Library/LaunchAgents/xx.plist 。每天早上和中午上班前会自动执行一次 kill_zh-hans-cn.sh
    kill_zh-hans-cn.sh 内容:
    #!/bin/bash

    process_ids=$(ps aux | grep -i 'zh-Hans-CN' | grep -v 'grep' | awk '{print $2}')

    for pid in $process_ids; do
    echo "Killing process ID: $pid"
    kill -9 $pid
    done
    就再也没卡死过了
    Natsuno
    Natsuno
    Nov 3, 2023
    22
    我用的搜狗输入法也没遇到过卡顿的问题,M1 air 一直用到今天
    buludu
    buludu
    Nov 3, 2023
    23
    我 32G 的 M1Pro 也卡的,任务栏常驻啥 SCIM 的快捷指令
    @Lenic
    @GabrielleBellamy
    iamdlsdls
    iamdlsdls
    Nov 3, 2023
    24
    有 touchbar 吗?把触控栏输入建议关掉看看
    daveh
    daveh
    Nov 3, 2023 via iPhone
    25
    @parthenon2007 #11 我有 Windows 10 和 Windows 11 机器,其中有机器用微软拼音输入法,在 Word 中输入中文时,直接蹦字母进去,中文反而卡得不见了。
    你是不也要说 Windows 用户很难?
    holmesx
    holmesx
    Nov 3, 2023
    26
    用原生的输入法一直没有遇到卡顿。。。。
    justaname
    justaname
    Nov 3, 2023
    27
    @Lenic 一样卡,64G 内存,内存压力是绿的也会卡的
    spirodelazz
    spirodelazz
    Nov 3, 2023
    28
    0 */3 * * * kill -9 `pgrep SCIM`
    p2007
    p2007
    Nov 4, 2023
    29
    @daveh #24 哈哈,Windows 用户也难,我现在升级 Windows 也比较谨慎。但有一说一,个人觉得 Windows 自带的输入法比 macOS 输入法好用啊。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2580 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 60ms · UTC 14:10 · PVG 22:10 · LAX 06:10 · JFK 09:10
    ♥ Do have faith in what you're doing.