win键盘设置改为类似mac 配置

该Ctrl和Alt以及输入法Caps和shift: 微软PowerToy软件修改如下图

改鼠标:X-Mouse Button Control 左边scrolling直接选就行

改输入法切换:使用AutoHotKey,添加new script 放入如下代码然后双击启动

复制代码
#Requires AutoHotkey v2.0

; ==========================================================
; 自动将自己添加到【开机启动】文件夹
; ==========================================================
SplitPath A_ScriptFullPath, &ScriptName
ShortcutPath := A_Startup "\" SubStr(ScriptName, 1, -4) ".lnk"

if !FileExist(ShortcutPath)
{
    ; 如果启动文件夹里没有快捷方式,就创建一个
    FileCreateShortcut A_ScriptFullPath, ShortcutPath
    MsgBox "已自动设置开机自启!`n下次重启电脑就会自动运行啦。", "设置成功", 64
}

; ==========================================================
; 下面是你原本的 Mac 键盘逻辑
; ==========================================================

SetCapsLockState "AlwaysOff"

*CapsLock::
{
    if GetKeyState("Shift", "P")
    {
        Send "{Blind}{CapsLock}"
        return
    }

    KeyWait "CapsLock"
    
    if (A_TimeSinceThisHotkey < 300)
    {
        Send "^ {Space}"
    }
}

快捷键:

shift+caps 锁定大写或者小写,切换

CAPS切换语言

shift切换大小写

Alt+shift切换输入法(微软,微信,搜狗等)

update:没有用PowerToys了

这是新的脚本:

复制代码
#Requires AutoHotkey v2.0
#SingleInstance Force

; ==========================================================
; 模块 1:开机自启设置
; ==========================================================
SplitPath A_ScriptFullPath, &ScriptName
ShortcutPath := A_Startup "\" SubStr(ScriptName, 1, -4) ".lnk"

if !FileExist(ShortcutPath)
{
    try {
        FileCreateShortcut A_ScriptFullPath, ShortcutPath
        MsgBox "已自动设置开机自启!`n下次重启电脑就会自动运行啦。", "设置成功", 64
    } catch as err {
        MsgBox "设置开机自启失败,可能是权限不足。`n错误: " err.Message, "错误", 16
    }
}

; ==========================================================
; 模块 2:CapsLock 增强 (Mac 风格)
; ==========================================================
SetCapsLockState "AlwaysOff"

*CapsLock::
{
    ; 如果按下了 Shift + CapsLock,则切换大小写锁定
    if GetKeyState("Shift", "P")
    {
        Send "{Blind}{CapsLock}"
        return
    }

    ; 等待 CapsLock 释放
    KeyWait "CapsLock"
    
    ; 如果按键时间小于 300ms,发送 Ctrl+Space (通常用于切换输入法或启动器)
    if (A_TimeSinceThisHotkey < 300)
    {
        Send "^ {Space}"
    }
}

; ==========================================================
; 模块 3:智能键位映射 (完美支持 Shift 组合键)
; ==========================================================

; 1. 保留 Alt+Tab (不做处理,保持系统原生)
;    (无需代码,只要不映射 !Tab 即可)

; 2. 动态将所有 "Alt + 键" 映射为 "Ctrl + 键"
for key in StrSplit("abcdefghijklmnopqrstuvwxyz1234567890-=[]\;',./") 
{
    Hotkey "*" "!" key, Mac_AltToCtrl
}

Mac_AltToCtrl(ThisHotkey)
{
    ; 从热键名中提取按键 (例如 "*!t" -> "t")
    key := SubStr(ThisHotkey, 3) 
    
    ; 【核心修复】检测是否按住了 Shift
    if GetKeyState("Shift", "P")
    {
        ; 如果按住了 Shift,发送 Ctrl + Shift + 键
        ; (比如 Alt+Shift+T -> Ctrl+Shift+T 恢复标签页)
        Send "^+" key
    }
    else
    {
        ; 如果没按 Shift,只发送 Ctrl + 键
        ; (比如 Alt+T -> Ctrl+T 新标签页)
        Send "^" key
    }
}

; 3. (可选) 将 "Ctrl + 字母" 映射为 "Alt + 字母"
for key in StrSplit("abcdefghijklmnopqrstuvwxyz") 
{
    Hotkey "*" "^" key, Mac_CtrlToAlt
}

Mac_CtrlToAlt(ThisHotkey)
{
    key := SubStr(ThisHotkey, 3)
    if GetKeyState("Shift", "P")
        Send "!+" key
    else
        Send "!" key
}

; 4. 常用功能键修正
!Left::Send "^{Left}"
!Right::Send "^{Right}"
!BS::Send "^{BS}"

记事本中还是要Ctrl c v

相关推荐
東隅已逝,桑榆非晚12 小时前
字符函数和字符串函数
c语言·笔记
Upsy-Daisy13 小时前
AI Agent 项目学习笔记(七):RAG 高级扩展——过滤检索、PgVector 与云知识库
人工智能·笔记·学习
feifeigo12313 小时前
STM32矩阵键盘驱动(库函数版)实现
stm32·矩阵·计算机外设
love530love14 小时前
MingLi-Bench 项目部署实录:基于 EPGF 架构的工程化实践
人工智能·windows·python·架构·aigc·epgf·mingli-bench
智者知已应修善业14 小时前
【51单片机LED闪烁10次数码管显示0-9】2023-12-14
c++·经验分享·笔记·算法·51单片机
智者知已应修善业14 小时前
【51单片机2按键控制1个敞亮LED灯闪烁和熄灭】2023-11-3
c++·经验分享·笔记·算法·51单片机
w20180016 小时前
二年级下册语文看图写话作文:蛋壳的奇妙之旅
笔记
daanpdf16 小时前
初三中考英语作文模板万能句型及范文大全电子版
笔记
nnsix16 小时前
设计模式 - 建造者模式 笔记
笔记·设计模式·建造者模式
leazer16 小时前
Flutter Windows 构建失败:.plugin_symlinks 符号链接异常的排查与修复
windows·flutter