V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
favtube
V2EX  ›  分享创造

怎么调教鼠标中键?

  •  
  •   favtube · 2015-01-25 20:34:50 +08:00 · 5182 次点击
    这是一个创建于 3623 天前的主题,其中的信息可能已经有所发展或是发生改变。
    由于某个契机,favtube君去翻了很久前的一个 AutoHotKey 的代码,如不嫌弃,请拿走,能暖被 :)

    背景:
    或许你已经知道鼠标中键的一些妙用了,比如,中键点击一个网页链接,会在一个新tab里打开这个网页。另,在大多数浏览器里,中键点击一个tab,会关闭这个tab。

    但是它的功效不应该止于此。
    你可以用它来复制和粘贴!具体的功能描述是:

    如果你选取了一段文本,按中键会复制到剪贴板。
    如果在没选取的状态下,按中键会把剪贴板的内容粘贴到光标所在位置。
    如果在选取文本的情况下你想实施粘贴,那么可以按住win键的同时按鼠标中键。
    或者说你想要剪切?没问题,按住CTRL的同时按中键。

    如何安装?(目前测试的windows版本是win7)
    1 你需要安装 AutoHotKey, http://www.autohotkey.com/
    2 安装完毕后,你应该可以看到右下角的运行程序里有个新的图标,在鼠标菜单里选择 "Edit Script" (编辑脚本?)
    3 然后把以下的文本粘贴,并保存

    ~mbutton::
    clip := clipboard
    clipboard := ""
    send ^c
    if (clipboard == "") {
    clipboard := clip
    send ^v
    }
    return

    #mbutton::
    send ^v
    return

    ^mbutton::
    clip := clipboard
    clipboard := ""
    send ^x
    return

    4 在刚才那个图标的鼠标菜单里选择 "Reload Script" (重载脚本?)

    gooooood
    请慢慢享受。改脚本不会跟现有的功能冲突。
    31 条回复    2015-01-30 06:51:23 +08:00
    msg7086
        1
    msg7086  
       2015-01-26 16:03:14 +08:00
    中键的正常使用方法是自由滚动页面……
    favtube
        2
    favtube  
    OP
       2015-01-26 20:45:43 +08:00
    @msg7086 你使用的频率高么?因为我个人几乎不会去用,不知道其他人怎么样。
    还有,我记得windows下是有,但是mac下chrome,firefox,safari目测都是没这个功能。
    msg7086
        3
    msg7086  
       2015-01-26 21:28:00 +08:00
    @favtube 很高。我是用Windows的。

    另外用来切换当前窗口也会用到中键。
    中键一般没有左键或者右键带来的副作用,是避免当前光标逃走的好办法。
    favtube
        4
    favtube  
    OP
       2015-01-27 08:30:24 +08:00
    @msg7086 我突然醒悟过来,你是指中键的滚动动作还是点击动作?这帖子讲的是点击动作。
    另,我一开始以为你是在讲中键点击之后的自动滚动功能。如果是滚动动作那跟这个复制粘贴的脚本是没有冲突的。理论上,这个脚本跟点击也应该没有太大的冲突的。(当然,副作用肯定还是会有)

    还有,切换当前窗口是什么意思?是切换什么窗口?在什么情景下切换?如何使用中键切换?
    同时,favtube君不太清楚你说的“避免当前光标逃走”是指什么意思。
    msg7086
        5
    msg7086  
       2015-01-27 10:51:49 +08:00   ❤️ 1
    @favtube 点击。
    中键点击就是为了避免副作用的。

    比如说你开着一个sublime,然后在其他窗口操作,完了要切换回sublime。
    如果你左键点击sublime的主窗口,就会导致激活窗口时光标移动到点击的位置。
    如果你右键点击sublime的主窗口,就会导致激活窗口时弹出右键菜单。
    中键点击不会产生这些副作用,就如同用Alt-Tab切换窗口一样。
    但是Alt-Tab切换窗口还会导致窗口Peak效果,对于有显卡渲染功能的程序会加重显卡负担 (比如切换视频播放器的时候)。所以一般用中键来切换。
    julijulilijuliju
        6
    julijulilijuliju  
       2015-01-27 18:20:58 +08:00
    亲测,不适用于tor打开的twitter页面
    favtube
        7
    favtube  
    OP
       2015-01-27 19:10:29 +08:00
    @msg7086 明白了,那这个脚本还真不适合你,因为你在切换的过程中,会意外的复制或粘贴内容。

    不过,favtube君很好奇你说的这个alt+tab切换产生的副作用不至于导致放弃这个令人愉快的快捷键吧…?像平时切换时,favtube君都是用它配合鼠标滚轮来切换窗口,那酸爽~。
    题外话,这点mac做的比较好,mac里窗口都是摊着一堆,然后直接点击,好在它也不用中键,因为首次点击会被mute掉。
    favtube
        8
    favtube  
    OP
       2015-01-27 19:11:26 +08:00
    @julijulilijuliju 朋友,你说的是哪个功能失败了?如何再现,能否表述清楚些?
    julijulilijuliju
        9
    julijulilijuliju  
       2015-01-27 20:07:51 +08:00
    @favtube 用tor打开twitter,进入主页,选中文字,中键不能复制
    favtube
        10
    favtube  
    OP
       2015-01-27 20:44:00 +08:00
    @julijulilijuliju 只有twitter页面么?还是所有其他页面在tor里面都不能中键复制?另外,鼠标中键是否有自动滚动的功能?可以考虑去设置里面取消掉再试试看。
    msg7086
        11
    msg7086  
       2015-01-27 23:08:02 +08:00 via iPhone
    @favtube 打开超过50个窗口以后这货会变得不稳定,所以还是少用为好。特别是两个显示器上的窗口间切换,一般都会选择鼠标移过去点一下…
    favtube
        12
    favtube  
    OP
       2015-01-28 07:56:14 +08:00
    @msg7086 50个窗口… 来分享一下你平时都开着什么 XD favtube君看了一下,现在有20个窗口开着,上次重启是4个月前。
    julijulilijuliju
        13
    julijulilijuliju  
       2015-01-28 10:20:16 +08:00
    @favtube 尝试着写ahk,提示语法错了,没鸟他,结果重启AutoHotkey.exe提示:
    ---------------------------
    AutoHotkey.ahk
    ---------------------------
    Error at line 32.

    Line Text: hello开始
    Error: This line does not contain a recognized action.

    The program will exit.
    ---------------------------
    确定
    ---------------------------

    怎么破?
    msg7086
        14
    msg7086  
       2015-01-28 13:06:04 +08:00
    @favtube TM2009的聊天窗口就有不少,多的时候十多个肯定有。
    资源管理器,平时要写代码要压片,十几个少不了。
    剩下的,压片打轴软件,编辑器,虚拟机,各种命令行窗口,十几个少不了。
    最近用ConEmu把命令行都集中起来了,少了不少,但是二三十个窗口肯定不止。
    favtube
        15
    favtube  
    OP
       2015-01-28 14:13:34 +08:00
    @julijulilijuliju 能否把源代码贴出来?根据这个错误提示,只能大概知道第32行的hello是一个无效的ahk操作。
    favtube
        16
    favtube  
    OP
       2015-01-28 14:20:41 +08:00
    @msg7086 唉确实是无解。纠正一下favtube君的错误,本人开的窗口确实也不止20多个,因为每个app也有N个窗口。如果atl+tab会卡的明显的话,同时不是增强硬件能够破的话,那基本就是破不了了。说实话不能用快速切换的快捷键的话,挺遗憾的,favtube君已经习惯了有时码程序时,terminal,IDE,Texteditor之间来回切换可以脱离鼠标。
    julijulilijuliju
        17
    julijulilijuliju  
       2015-01-28 14:22:00 +08:00
    ;hello开始
    #n::run notepad
    代码如上,手贱加了个注释(一个空格和一个“;”,然后就是”hello开始“),是按你介绍的"Edit Script"去编辑的,现在AHK是用不了了,求助啊
    favtube
        18
    favtube  
    OP
       2015-01-28 14:29:19 +08:00
    @julijulilijuliju 我试了你这个代码,没有错误。你可能得贴多些上下文出来。还有,可以考虑把一些你怀疑有问题的代码剪切出来放在其他文件里,然后保存再加载,看看是否还有错误。如果没错误,再把剪切出来的东西一点点加回去。
    lavande
        19
    lavande  
       2015-01-28 15:05:53 +08:00
    linux下,选中文字是复制,中键是粘贴,这个比较方便
    favtube
        20
    favtube  
    OP
       2015-01-28 15:16:33 +08:00
    @lavande true~ 不过这种模式只适用于终端。这个方法只是折中的调教鼠标中键。
    julijulilijuliju
        21
    julijulilijuliju  
       2015-01-28 15:33:37 +08:00
    现在AHK都打不开,上面的代码是之前保存的,全部代码也就运行AutoHotkey.exe主程序,然后托盘处右击并"Edit Script",也就AHK自带的代码和;hello开始
    #n::run notepad
    如果你觉得有必要,我再把AHK自带的代码贴出来。
    现在AHK都打不开,更别说保存再加载。

    @lavande 选中即复制,还怎么替换?
    lavande
        22
    lavande  
       2015-01-28 16:23:14 +08:00
    @julijulilijuliju 这个我也比较困惑,好在选中自动复制和ctrl+v的复制是储存在不同地方的,选中自动复制的通过中键粘贴,^c的通过^v粘贴,互不干扰,使用是就自己看拿个方便了……
    julijulilijuliju
        23
    julijulilijuliju  
       2015-01-28 16:33:14 +08:00
    @lavande 都分别存储在哪呢?
    favtube
        24
    favtube  
    OP
       2015-01-28 16:42:55 +08:00
    @lavande
    @julijulilijuliju
    终端模式下好像是没替换的操作的。
    lavande
        25
    lavande  
       2015-01-28 16:52:05 +08:00
    @julijulilijuliju
    这边有些信息,不过我觉得两个剪贴板同步了也未必好……
    http://askubuntu.com/questions/167570/how-does-middle-click-paste-work
    julijulilijuliju
        26
    julijulilijuliju  
       2015-01-28 16:55:14 +08:00
    @favtube 你有一条回复未查看(哈哈,看一下我给你的回复啊)
    favtube
        27
    favtube  
    OP
       2015-01-28 17:01:03 +08:00   ❤️ 1
    @julijulilijuliju
    现在ahk一打开就出那个错误么?你可以在My Document下面找到AutoHotkey.ahk 这个就是默认的脚本
    KentY
        28
    KentY  
       2015-01-28 19:56:30 +08:00
    俺中键使用频率可能比右键高
    favtube
        29
    favtube  
    OP
       2015-01-29 06:51:48 +08:00
    @KentY 你的使用的场景是什么?也是窗口切换么?
    KentY
        30
    KentY  
       2015-01-29 16:33:41 +08:00 via Android
    @favtube 粘贴左键选中的文字
    favtube
        31
    favtube  
    OP
       2015-01-30 06:51:23 +08:00
    @KentY I see. Me 2 :p
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3085 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 13:23 · PVG 21:23 · LAX 05:23 · JFK 08:23
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.