掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 3323|回复: 5

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

[复制链接]
  • TA的每日心情
    慵懒
    3 天前
  • 签到天数: 212 天

    [LV.7]常住居民III

    发表于 2016-11-4 23:11:29 | 显示全部楼层 |阅读模式
    本帖最后由 deeke 于 2017-10-7 16:43 编辑 0 h# K9 ?; s: T2 q& n; _4 O
    2 e( |" h: P/ q% Q) {
    特点:: b# j9 W' n8 I% I
    1.适合配置双屏幕的电脑使用。# g0 `) C/ f. K
    2.在指定软件窗口中双击取词,如 SumatraPDF、Firefox、EditPlus 等等。0 a/ A2 @  o6 U* P0 X
    3.在任意软件窗口中选中单词或词组,然后后按右边 Ctrl 键取词。! Z, q- }0 I; N- B& P. V% T
    4.取词后还原剪切板内容、焦点回到原窗口。& o5 w$ R5 P/ J! x+ |4 g$ n
    5.按 Pause 键暂停或继续。
    * C5 i1 S8 N2 b' @( q
    ' ]# b$ `8 O4 e9 j参考:" [4 J( ~6 T% Q% u8 R0 w" l3 p
    GoldenDict+Autohotkey-> 高亮即取词[Windows]- j$ t7 M" t. A" M
    超级实用!自制MDict取词小助手!
    / I# p& |& p. O9 ?! a1 q' R1 b0 \8 C
    东拼西凑的 AutoHotkey 脚本,错漏不足之处请不吝指正。0 e2 b9 P/ g, e/ ]! b# m& W
    1. ~Pause::Suspend% S& H& U. b3 D) l9 u" J$ q0 y
    2. 4 K! s" a, N$ K2 e6 m
    3. ~RControl::
      ; A8 [0 S% V. e! |
    4. LookUp()+ L$ u( H  b' a6 z
    5. return0 `: {$ V0 d6 y4 X: y" S! P

    6. : p2 D# \9 U6 a5 F* T
    7. ~LButton Up::
      + t/ M& q% I" b! f
    8. if (A_TickCount - t) < 350   F$ c! K9 v9 ~$ m, K( {/ B, ?/ {" J
    9. {) g. x  l3 U4 \3 m; A" @
    10.         if(IsMySoft())2 O* o  {2 `4 H1 r! |( U
    11.                 LookUp()0 w# j; c' h7 _4 A( b
    12. }
      % ^% Z# y' r- P5 |! r/ o
    13. t := A_TickCount2 p5 P5 X+ z- |( q0 C2 H
    14. return
      3 }) d: M( @- M8 G4 E) O2 [

    15.   v, L. c1 J8 f6 S8 t, s# D% ?: W
    16. IsMySoft()/ X+ Y! @0 _/ U; T4 n3 }
    17. {
      ' c! ]) E3 u& K" v
    18.         MouseGetPos, ,,win
      & X  J/ ]$ {6 j, j) A( y8 o
    19.         SetTitleMatchMode, 2
      ) a  b( s+ ~7 _
    20.         if WinActive("SumatraPDF") = win  |4 ?( _! C0 k5 N" w' g; J5 q
    21.                 return true6 k+ m# e" b1 m  L
    22.         if WinActive("Firefox") = win
      4 Q+ a& B( W3 z* @5 M7 f
    23.                 return true
      " H" n  M7 ?, i# X
    24.         if WinActive("EditPlus") = win
      0 w) P3 s- Z4 M0 w
    25.                 return true
      ; E9 T- X2 ]8 g0 h5 Z$ y! M
    26.         return false
      4 z: |- j9 U" n. p& {" ?  H
    27. }% c- v( w& @- q: Y( H. F3 s) O

    28. % ?; t9 c- ~5 i) P" Y
    29. LookUp()
      . p' S8 B( D! {7 T
    30. {
      9 L2 x0 m) j$ ^! f
    31.         Sleep, 300
        L- `3 @  `/ O
    32.         a = %Clipboard%
      1 w! F6 j: v# Y
    33.         Clipboard =8 j4 k; x+ R0 L( F
    34.         Send ^c$ D! t' K/ H$ u( R/ l3 r- T; ]
    35.         Sleep, 300
      5 W3 F' a2 k5 \- ~6 [
    36.         b = %Clipboard%
      % m% i' I) t0 z6 I4 I
    37.         if StrLen(b) > 0 and StrLen(b) < 209 X# a3 a* {/ f
    38.         {
      2 l. e+ O% W! b* e/ m4 [
    39.                 WinGetActiveTitle, Title5 ~- B2 }+ b% f
    40.                 run "c:\Portable Program\GoldenDict\GoldenDict.exe" "%b%"
      + F4 u2 u/ R9 S( E5 Q$ v
    41.                 Sleep, 800
      6 }0 d7 @  b( t( u. b$ Q
    42.                 IfWinExist, %Title%
      : [1 O3 T2 }& I/ p" P# d
    43.                         WinActivate
      ! x2 L" v; _8 k9 W
    44.         }
      $ Q% y* g9 }4 b6 C3 _' s, Q2 y
    45.         Clipboard =
      ; D6 p4 p& n) W2 M2 _
    46.         if StrLen(a) > 09 m2 Y1 o) Y$ l, b8 g+ w
    47.         {
      3 o* |( M3 P$ q1 y7 n
    48.                 Clipboard = %a%
        D/ P' O7 o; H5 c/ [
    49.         }; |* m) I' O& l& B) w2 ~, o% r; B
    50.         VarSetCapacity(a, 0)4 m2 Q7 ?8 g+ v
    51.         VarSetCapacity(b, 0)
      , n) L: w( D+ F% E6 b! d
    52.         return
      3 C8 \1 c# Y  u" C$ e7 Y
    53. }
    复制代码
    " f3 q7 G# L. @' `4 Z
    注意:修改成你电脑上的 GoldenDict.exe 路径。

    评分

    1

    查看全部评分

  • TA的每日心情
    慵懒
    3 天前
  • 签到天数: 212 天

    [LV.7]常住居民III

     楼主| 发表于 2017-10-7 16:10:59 | 显示全部楼层
    本帖最后由 deeke 于 2017-10-7 16:46 编辑
    % M* R( N" N2 F, d( h+ w( h
    & ?6 Q, Y  e, w/ ]* w1. 删除 移动窗口 的快捷键。& b( Y/ ?4 C( b, Z) c& |
    2. 增加 按右边 Ctrl键去查询被选中的词组、短语。
    5 y2 g; b" r+ U. Y, y  E6 B$ g1 B- @2 w  j
    如果是单屏幕计算机使用,去掉代码区的 39、42、43 那三行即可。

    该用户从未签到

    发表于 2016-11-5 22:45:19 | 显示全部楼层
    想法挺棒:
    3 s3 }5 u+ Q/ g5 P- 可以限制使用GD的应用,并不是想在所有的应用上都使用GD0 W  k8 H! @- F" Z  q
  • TA的每日心情
    慵懒
    3 天前
  • 签到天数: 212 天

    [LV.7]常住居民III

     楼主| 发表于 2017-1-21 13:46:00 | 显示全部楼层
    本帖最后由 deeke 于 2017-2-5 11:02 编辑 4 }1 M8 J+ L; x# n/ ^0 k3 W: y, ^

      X' Q' I  t& g2 L+ W" b* p' z" M增加三行内容6 {/ e% _+ T) Q& d! {/ i6 K3 ~
    1. #SingleInstance ignore' o- m: {. z# t5 `
    2. ;此脚本的实例一次只能运行一个。& i& H* y+ n  m! B

    3. ) k& y' _# Z4 P1 t& V$ V  M. o
    4. ~Pause::Suspend
      3 o: y; m9 @5 a" g
    5. ;按下Pause键会挂起脚本,关闭功能。1 C! n$ z1 h( ^4 p
    6. / F0 e; E7 R4 s( J! V
    7. #z::Send #+{Left}
      & {: u! ^/ _( l( t6 b
    8. ;按下 Win + z 键会把当前窗口移动到另一屏幕上,需Win7以上。
    复制代码
    , |# J) ]9 C2 z5 r
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

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

    GMT+8, 2024-5-8 22:51 , Processed in 0.042377 second(s), 10 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2023, Tencent Cloud.

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