办公技巧:使用AutoHotKey实现重复行功能

1 办公技巧:使用AutoHotKey实现重复行功能

1.1 背景

  很多流行的文本编辑器或IDE,比如:VSCodeEmEditorEverEditNotepad--等都具有重复行的菜单或快捷键,特别是支持快捷键时,用户可以快速的复制当前编辑的行内容,提高内容书写速度。
  重复行功能在运维工程师编写设备维护脚本、或编写html的表格内容、或其他行内容重复度很高,只需要修改少量内容的场景时非常有帮助。
  但不幸的是, 并不是所有的编辑器编辑都支持重复行功能,或不一定提供快捷键,本文将讨论如何解决这一问题。

1.2 实现原理

  重复行,拆解为手工操作(按键序列),可以分为以下几步

  • 选中当前行:End -> Shift + Home
  • 复制当前行:Ctrl + C
  • 在当前行末尾回车:End -> Enter
  • 粘贴文本:Ctrl + V

  AutoHotKey做为一个快捷键键工具,通过快捷键实现一些逻辑功能,用户可以写代码完成发送快捷键组合,提取剪贴板等。

🕮说明
  AutoHotKey的安装方法用户可以在互联网搜索。[AutoHotKey官网](https://www.autohotkey.com/)

1.3 实现过程

#Requires AutoHotkey v2.0
#^Y::
{
    Send "{Home}"
    Send "+{End}"
    A_Clipboard := ""
    Send "^c"
    ClipWait(0.3)
    Send "{End}"
    Send "{Enter}"
    Send "^v"
    Send "{Home}"
}

将上述代码拷贝并另存为复制行.ahk,或用户命名的其他名称,双击该文件即可启动快捷键监听,上述代码中重复行的调用快捷键为:Win + Ctrl + Y。用户可以根据需要修改为自己喜欢的快捷键,但注意不要和已知快捷键冲突

1.3.1 代码解读

  第1行#Requires AutoHotkey v2.0 文件头注释,声明这是一个AutoHotkey 2.0版本文件
  第2行#^Y::是快捷键定义,其中“#”表示Win键,“^”表示Ctrl,“Y”表示字母Y键, “::”是固定用法,表示快捷键定义结束。
  第3行~13行:代码主体,发送快捷键序列,A_Clipboard是AutoHotkey内置变量,代表剪贴板内容,这里给该变量赋值空是为了清空剪贴板,为拷贝当前行做准备。


文档作者声明:本文档仅用于学习交流,未经作者许可,不得将本文档用于其他目的。
Copyright © 2022~2024 All rights reserved.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值