掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 3721|回复: 5

[插件] 适合双屏幕的双击取词 Win+AHK+GD

[复制链接]
  • TA的每日心情
    慵懒
    2025-1-28 16:22
  • 签到天数: 216 天

    [LV.7]常住居民III

    发表于 2016-11-4 23:11:29 | 显示全部楼层 |阅读模式
    本帖最后由 deeke 于 2017-10-7 16:43 编辑
      w; c7 E0 ?4 i; b! A& p- t# f/ j  s9 K' K, g# ^
    特点:% T/ s6 j) Q, N9 R. ]1 R! g9 L
    1.适合配置双屏幕的电脑使用。8 Z! I2 [/ X+ O- x
    2.在指定软件窗口中双击取词,如 SumatraPDF、Firefox、EditPlus 等等。( b8 }" Z$ [0 n* Q) U7 P/ i6 g) Y
    3.在任意软件窗口中选中单词或词组,然后后按右边 Ctrl 键取词。
    , {) \/ S! ~- w2 `) x, F8 F4.取词后还原剪切板内容、焦点回到原窗口。2 k% U7 _6 r# Y( [
    5.按 Pause 键暂停或继续。: a, z& ~$ `3 F" K) C
    8 H+ \" X# ~- I5 ^6 P  N8 w
    参考:
    . P* ~5 O6 C. F. N! B5 K0 LGoldenDict+Autohotkey-> 高亮即取词[Windows]  F' b6 F7 {7 U: R
    超级实用!自制MDict取词小助手!
    1 Z* Y; q. i9 b8 [) g" I
    & s) U- r% b. s# e# q4 z# o东拼西凑的 AutoHotkey 脚本,错漏不足之处请不吝指正。& @. d( H7 l9 I  j, \
    1. ~Pause::Suspend
      + ~- g+ w% n" _
    2. 9 U5 K6 E) e" N, \/ ]% V
    3. ~RControl::( n. a% ~# q. L" q/ D
    4. LookUp(). Z0 _0 d# Y$ {- W, b: V2 P( M
    5. return
      7 m+ N- S. O  W$ |5 m: Z

    6. 6 |& Z7 j/ F3 A
    7. ~LButton Up::
      " D/ M) |+ P1 |7 y7 j6 w& e) e
    8. if (A_TickCount - t) < 350 - x0 I! x) u% _  h6 m
    9. {' l. m* k% h5 D5 i
    10.         if(IsMySoft())
      1 V8 {7 V( N4 @  ^& s8 {7 U  A
    11.                 LookUp()" M- O; e+ l8 W% S, u
    12. }
      , K% o( F( n! n( W
    13. t := A_TickCount
      4 Q% ?- S0 C6 |+ n
    14. return4 X4 s' ~0 Q3 I$ [/ b

    15. ! t- T7 t( X( ]& ?8 n# @
    16. IsMySoft()9 E  N0 f( p  p% q
    17. {
      & \- |! p" k$ U
    18.         MouseGetPos, ,,win" |4 C. r1 k5 L! B
    19.         SetTitleMatchMode, 2
      , K, f. F: _# W/ Y# g
    20.         if WinActive("SumatraPDF") = win
      : F, x) `7 h! a% r2 ?$ R
    21.                 return true
      1 {9 R1 N9 ~! p! h
    22.         if WinActive("Firefox") = win
      7 |/ |) b4 D9 c8 y
    23.                 return true
      1 N  r. N/ f' ?( b$ F% p/ g) `
    24.         if WinActive("EditPlus") = win7 n. z& G. I1 X* q) B
    25.                 return true
      $ _- n, E# x7 w: V2 ^% J
    26.         return false1 S' T; s8 S) ]" r, R: g( X
    27. }
      , L% q! ^% l; [, p( f" p
    28. 6 r% n0 D/ r, s. K0 \
    29. LookUp()4 Y- b' K4 z9 z" U( T* P
    30. {
      . g7 j5 |! O% v, n5 b1 l+ E
    31.         Sleep, 300
      + t, c5 B! |4 ^  z$ C- e) }
    32.         a = %Clipboard%: E' H4 T+ q( h% @
    33.         Clipboard =) |% z6 N9 o2 t$ f
    34.         Send ^c/ J/ e( M$ d" ^" a
    35.         Sleep, 300
      * w# ]+ v; p: `  V0 ^( q4 r
    36.         b = %Clipboard%
      4 Z  Z* }, Z6 W7 k# m" A! }# v2 ]
    37.         if StrLen(b) > 0 and StrLen(b) < 20
      " G& ^/ f8 H! x" c2 v; ]) N: B
    38.         {8 n6 G: `8 g2 c2 U7 |4 E! _4 }! y
    39.                 WinGetActiveTitle, Title
      ; J5 r# h! t/ G7 X1 q" Q
    40.                 run "c:\Portable Program\GoldenDict\GoldenDict.exe" "%b%") A4 M, G1 ?5 W$ q. Z" z) _: V  q
    41.                 Sleep, 800
      7 M- }- p/ x5 ]% y
    42.                 IfWinExist, %Title%
      ' j7 Q2 o* i1 _/ H4 Z* o3 l
    43.                         WinActivate
      ( P) N4 P- t( Z' M
    44.         }
      . I2 ^  ], f3 N0 d& d  ~
    45.         Clipboard =4 t+ B! u5 [! T  ~4 c
    46.         if StrLen(a) > 07 m% ^) k( x1 o6 c; j: S* k8 @" B' s
    47.         {! u6 [) @: S9 v9 @" L2 F  J: R
    48.                 Clipboard = %a%
      0 b, |- X1 E" P/ [% F2 V
    49.         }
      + t% h; _# m, o1 b3 O5 d. N
    50.         VarSetCapacity(a, 0)
      ( z5 i/ ~- R: {% j8 w
    51.         VarSetCapacity(b, 0)0 D7 [: D# m& i* I* e1 v0 ~
    52.         return
      / C) a8 P3 u% ~! e
    53. }
    复制代码
    7 O# L% v$ x9 x
    注意:修改成你电脑上的 GoldenDict.exe 路径。

    评分

    1

    查看全部评分

  • TA的每日心情
    慵懒
    2025-1-28 16:22
  • 签到天数: 216 天

    [LV.7]常住居民III

     楼主| 发表于 2017-10-7 16:10:59 | 显示全部楼层
    本帖最后由 deeke 于 2017-10-7 16:46 编辑 1 [8 X6 X" j0 ^& e; U

    8 ]! T5 l9 r" ~2 {: F1. 删除 移动窗口 的快捷键。8 b+ u/ U' ]; m* O' T& Q% w1 m
    2. 增加 按右边 Ctrl键去查询被选中的词组、短语。
    8 k  y) |0 O( b; K$ _  |+ S0 V
    , I& @' O# R9 \  _) v6 r  L如果是单屏幕计算机使用,去掉代码区的 39、42、43 那三行即可。

    该用户从未签到

    发表于 2016-11-5 22:45:19 | 显示全部楼层
    想法挺棒:
    9 T- V; K9 n$ j  b  I# |* o- 可以限制使用GD的应用,并不是想在所有的应用上都使用GD3 G5 n: J* R+ a  D" n, x
  • TA的每日心情
    慵懒
    2025-1-28 16:22
  • 签到天数: 216 天

    [LV.7]常住居民III

     楼主| 发表于 2017-1-21 13:46:00 | 显示全部楼层
    本帖最后由 deeke 于 2017-2-5 11:02 编辑
    . A- w6 V2 H. h' ?  ]; A
    0 p6 V' M' R0 p. u7 B1 q增加三行内容/ Z0 ~; s# [% j- k5 ?  X! c
    1. #SingleInstance ignore+ r# u2 {; G  z) n8 ^
    2. ;此脚本的实例一次只能运行一个。+ C" m. ~6 w" D/ M4 C. i6 K

    3. . R4 }7 F1 ^2 r/ S1 t! d1 X
    4. ~Pause::Suspend
      , Q. o* Y  \5 ~2 m6 D
    5. ;按下Pause键会挂起脚本,关闭功能。
      - V+ ~) ?* K# |" A8 S  w! }. X

    6. , _5 y, h6 s7 e! p# t: y
    7. #z::Send #+{Left}
      4 ~. P" P  R/ S! K/ H0 w4 Z
    8. ;按下 Win + z 键会把当前窗口移动到另一屏幕上,需Win7以上。
    复制代码
    + w. b9 j- S: y4 h3 m, M8 a! z% |
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

    小黑屋|手机版|Archiver|PDAWIKI |网站地图

    GMT+8, 2025-5-5 04:17 , Processed in 0.021684 second(s), 23 queries .

    Powered by Discuz! X3.4

    © 2001-2023 Discuz! Team.

    快速回复 返回顶部 返回列表