;9:03 2022/8/20  自用
#NoEnv
#Warn
#SingleInstance Force
;设工作目录为桌面
SetWorkingDir %A_Desktop%
;托盘提示必须放在热键前面,巨坑
Menu, Tray, Tip , 出品`n版本:0.23`n2022/8/20
;
;由于Sublime Text的使用,以及谷歌拼音输入法的扩展功能
;所以精简了一些功能,并且调整了一些按键 Var =
(
Alt+1 窗口置顶,再按取消
Alt+Ctrl+u 打开用户、系统启动文件夹
Alt+Ctrl+S 选词搜索
Alt+Ctrl+p 获取文件全路径
Winodws+q 常看网站
Shift+F1 当前网址生成快捷方式到桌面
鼠标左 Ctrl+z 恢复
鼠标上 最大化窗口 win+up
鼠标下 显示桌面 win+d
鼠标左下 撤销关闭的浏览器标签页Ctrl+Shift+T
鼠标右下 关闭标签页Ctrl+w
鼠标右上 关闭窗口Alt+F4
鼠标左上 弹出信息框提示用法
鼠标在任务栏时滚轮可调音量 by 2022/8/20
)
;
Menu, Tray, Add ; 创建分隔线.
Menu, Tray, Add, 操作说明, MenuHandler ; 创建新菜单项.
return
;
MenuHandler:
MsgBox %Var%
return ;功能:打开用户、系统启动文件夹
;按CTRL+ALT+u 启用
;
^!u::
run,shell:Common Startup
run,shell:startup
return
; ;
;功能:活动窗口按Alt+1置顶,再按一次可以取消置顶
;
!1::
WinSet,AlwaysOnTop, , A
return
; ;
; Alt+Ctrl+S 选词搜索
; 百度链接可能需要经常修改
!^s::
Send,^c
Sleep 100
Run,https://www.baidu.com/s?ie=UTF-8&wd=%clipboard%
return
; ;
;Alt+Ctrl+p 获取全路径
;
!^p::
; null=
send ^c
sleep,200
clipboard=%clipboard% ;%null%
tooltip,%clipboard%
sleep,500
tooltip,
msgbox,%clipboard%
return
; ;
;Winodws+q,打开 常用网址
;
#q::
run,http://www.baidu.com
return
; ;
;将当前网址生成快捷方式到桌面
;Shift+F1触发
+F1::
;复制链接
Send,^c
;延时0.1秒
Sleep 100
;获得当前活动窗口的标题放入变量%Title%"
WinGetTitle, Title, A
;=======原来的代码供参考=========
;MsgBox, The active window is "%Title%".
;IniWrite, %clipboard%, %A_Desktop%\Web请重命名.url, InternetShortcut, URL
;=======原来的代码结束段=========
; 移除%Title%变量中不能作为文件名的字符:
;主要包括 \ / : * ? " < > |
Loop
{
StringReplace, Title, Title, \, , UseErrorLevel
StringReplace, Title, Title, /, , UseErrorLevel
StringReplace, Title, Title, :, , UseErrorLevel
StringReplace, Title, Title, *, , UseErrorLevel
StringReplace, Title, Title, ?, , UseErrorLevel
StringReplace, Title, Title, "", , UseErrorLevel
StringReplace, Title, Title, <, , UseErrorLevel
StringReplace, Title, Title, >, , UseErrorLevel
StringReplace, Title, Title, |, , UseErrorLevel
if (ErrorLevel = 0) ; 不需要再进行替换.
break
}
;写快捷方式到桌面
IniWrite, %clipboard%, %A_Desktop%\%Title%.url, InternetShortcut, URL
msgbox, 快捷方式已生成
return
; ;全局鼠标手势
;转载自 https://blog.csdn.net/formyself/article/details/43487409
;实现原理:识别右键按下时的鼠标位置,以及抬起鼠标右键时的位置。
;当X(水平)、Y(垂直)方向大于一定像素阈值(这里设定为30)时,判断在此方向上有移动。
;当X、Y方向都小于此阈值时,判断没有移动,发出默认的『鼠标右键』。
;
rbutton::
minGap = 30 ; 设定的识别阈值,大于此阈值,说明在某方向上有移动
mousegetpos xpos1,ypos1
Keywait, RButton, U
mousegetpos xpos2, ypos2
if (abs(xpos1-xpos2) < minGap and abs(ypos1-ypos2)<minGap) ; nothing 没有运动,直接输出rbutton
send, {rbutton}
else if (xpos1-xpos2 > minGap and abs(ypos1-ypos2)<minGap) ;  左 Ctrl+z 恢复
send, ^z
else if (xpos2-xpos1 > minGap and abs(ypos1-ypos2)<minGap) ; 右 无
send, {rbutton} ; 如果是"send, {F5}"表示发送F5刷新
else if (abs(xpos1-xpos2)< minGap and (ypos1-ypos2)>minGap) ; 上 最大化窗口, win+up
send, #{up}
else if (abs(xpos1-xpos2)< minGap and (ypos2-ypos1)>minGap) ; 下 显示桌面, win+d
send, #d
else if (ypos2-ypos1 > minGap and (xpos1-xpos2) > minGap) ; 左下 Ctrl+Shift+T 撤销关闭的标签页
send, ^+t
else if (ypos2-ypos1 > minGap and (xpos2-xpos1) > minGap) ; 右下 Ctrl+w 关闭标签页
send, ^w
else if (ypos1-ypos2 > minGap and (xpos2-xpos1) > minGap) ; 右上 Alt+F4 关闭窗口
send, !{F4}
else if (ypos1-ypos2 > minGap and (xpos1-xpos2) > minGap) ; 左上 弹出帮助说明信息框
;send, {rbutton} ;左上 nothing
MsgBox %Var%
else
send, {rbutton}
return
; ;任务栏调节音量
#If MouseIsOver("ahk_class Shell_TrayWnd")
WheelUp::Send {Volume_Up}
WheelDown::Send {Volume_Down} MouseIsOver(WinTitle) {
MouseGetPos,,, Win
return WinExist(WinTitle . " ahk_id " . Win)
}

ahk精简自用的更多相关文章

  1. 努比亚 Z5 mini刷机包 omni4.4.2改动V4.0 自用版 精简 MIUI特效

    ROM介绍: 第一版: 1.基于lwang适配的omni4.4.2第二版改动,少量精简改动 2.设置加入"自启项管理",体验更快.更顺滑 3.替换特效为XUI特效 4.改动host ...

  2. VMware精简系统Win系列|体积更小更稳定

    此Win系列基于VMware10 给个我自用的超精简VM10.0.3 XP重新制作体积大了一点但更稳定,压缩包166M 制作了Win 2003,压缩包171.4M Win7重新制作体积更小更稳定,压缩 ...

  3. Assassin暗杀者-自用短小精悍的webshell管理工具分享

    Assassin Assassin是一款精简的基于命令行的webshell管理工具,它有着多种payload发送方式和编码方式,以及精简的payload代码,使得它成为隐蔽的暗杀者,难以被很好的防御. ...

  4. 【分享】标准springMVC+mybatis项目maven搭建最精简教程

    文章由来:公司有个实习同学需要做毕业设计,不会搭建环境,我就代劳了,顺便分享给刚入门的小伙伴,我是自学的JAVA,所以我懂的.... (大图直接观看显示很模糊,请在图片上点击右键然后在新窗口打开看) ...

  5. Linux上oracle精简版客户端快速部署

    RHEL6 + Oracle 11g客户端快速部署 需求:只是用到客户端的sqlplus, sqlldr功能. 方案:用精简版实现客户端的快速部署 1.上传oracle精简版客户端到服务器/tmp目录 ...

  6. 如约而至:微信自用的移动端IM网络层跨平台组件库Mars已正式开源

    1.前言 关于微信内部正在使用的网络层封装库Mars开源的消息,1个多月前就已满天飞(参见<微信Mars:微信内部正在使用的网络层封装库,即将开源>),不过微信团队没有失约,微信Mars ...

  7. 成吨提高开发效率:Intellij Shortcuts精简子集与思维模式

    在线精简cheatsheet备查表:intellij.linesh.twGithub项目:intellij-mac-frequent-keymap Intellij的快捷键多而繁杂,从官方推荐的key ...

  8. 三维网格精简算法(Quadric Error Metrics)附源码

    在计算机图形应用中,为了尽可能真实呈现虚拟物体,往往需要高精度的三维模型.然而,模型的复杂性直接关系到它的计算成本,因此高精度的模型在几何运算时并不是必须的,取而代之的是一个相对简化的三维模型,那么如 ...

  9. 【转载】制作一个超精简的WIN7.gho

    首先说明一点,这个Resource不是我制作的,Google搜了下GHO镜像文件制作,挺复杂的.如果要从头到尾自己制作GHO文件可以参考: http://baike.so.com/doc/674790 ...

随机推荐

  1. HCIA-Datacom 2.1 实验一:IPv4编址及IPv4路由基础实验

    实验目的 掌握接口IPv4地址的配置方法 理解LoopBack接口的作用与含义 理解直连路由的产生原则 掌握静态路由的配置方法并理解其生效的条件 掌握通过PING工具测试网络层联通性 掌握 ...

  2. 乘风破浪,遇见最佳跨平台跨终端框架.Net Core/.Net生态 - 官方扩展集锦(Microsoft.Extensions on Nuget)

    什么是Microsoft.Extensions .NET Platform Extensions是一套.Net官方的API集合,提供了一些常用的编程模式和实用工具,例如依赖项注入.日志记录.缓存.Ho ...

  3. Python自学教程2:大牛们怎么写注释

    在还没开始学代码前,就要先学会写注释.不会写注释的程序员会遭到鄙视和唾弃,甚至在工作中会被人穿小鞋.注释也不是随便写一下就行,用好注释还是有点讲究的. 注释有什么用? 注释(Comments)主要是向 ...

  4. 教程 - 深度探讨在 Vue3 中引入 CesiumJS 的最佳方式

    目录 1. 你应该先知道的基础知识 1.1. CesiumJS 的库构成 1.2. 选择 Vite3 和 pnpm 的理由 1.3. 使用 External 模式引入静态库 - 不打包静态库 1.4. ...

  5. 后缀自动机(SAM)+广义后缀自动机(GSA)

    经过一顿操作之后竟然疑似没退役0 0 你是XCPC选手吗?我觉得我是! 稍微补一点之前丢给队友的知识吧,除了数论以外都可以看看,为Dhaka和新队伍做点准备... 不错的零基础教程见 IO WIKI ...

  6. LFS(Linux From Scratch)构建过程全记录(一):准备工作

    写在前面 本人修学了一门课,名曰<操作系统课程设计>,其任务为基于LFS以编译源代码的方式制作一个基本的Linux操作系统,并且编写在linux下的GUI软件. 本操作系统构建的全过程将分 ...

  7. HCIA-STP原理与配置

    STP协议生成树协议: 为了保证网络可靠,所以在组网时需要设置冗余链路和设备,从而在物理结构上形成结构,又因为交换机的工作特点导致二层网络中产生广播风暴和MAC地址表震荡现象,影响用户体验. 广播风暴 ...

  8. MinIO分布式集群部署方式

    文章转载自:https://blog.51cto.com/u_10950710/4843738 关于分布式集群MinIo 单机Minio服务存在单点故障,如果是一个有N块硬盘的分布式Minio,只要有 ...

  9. 100个Linux Shell脚本经典案例(附PDF)

    转载自:https://mp.weixin.qq.com/s/tCKAM67_7K7q2vJthaIsDQ 原文链接:https://wenku.baidu.com/view/4f089430a116 ...

  10. CentOS6 配置阿里云 NTP 服务

    本文以Centos 6.5为例介绍如何修改Linux实例时区,以及开启和配置Linux NTP服务,保证实例本地时间精确同步. 前提条件 NTP服务的通信端口为UDP 123,设置NTP服务之前请确保 ...