TA的每日心情 | 奋斗 2021-7-31 06:44 |
---|
签到天数: 5 天 [LV.2]偶尔看看I
|
本帖最后由 emptls 于 2022-8-7 16:53 编辑
/ a( M- `6 n* u# ?8 R& t2 b
5 n5 G0 o# w9 e8 ^# D, u我就想要个双击取词的功能,常用软件是 firefox、SumatraPDF、notepad++2 K8 w1 H) J b6 P2 C1 p
) v/ s( r2 [3 T2 z' u Y5 E
说说已经有的三种取词吧. g! W% g- O3 B, F
1. 鼠标取词设置成双击取词,firefox、chrome 都取不准2 p3 r' u9 |& U9 h/ A
2. 划词,你必须要划才行,双击选中在有的软件上,不生效# Q! ]# \4 q u' \& I. S, J
3. 剪贴板取词或两次 Ctrl + C 取词,经常让正常的复制、粘贴功能失效
8 A: H$ `7 U) P* G# e看起来选择多,没一个好用的。
# b; V4 I# U( z( J" N3 Z; ?% ?4 `9 r( x# K' G2 |
firefox 之前还无法取词,我把 Golden Dict 的双击取词脚本都反馈给客服了,态度倒是挺好。' u) z+ e9 Y, m& k
但研发没动静。AHK 脚本都能实现的功能,你们怎么就搞不了。, T7 ^5 V% e& S$ s s
5 s% z7 o8 O6 O# i( b7 d0 u+ A# m这是我一直用的取词脚本,一个商业软件,这么多年了,居然还要依赖外部的脚本才能用,让人失望。! v$ C: t7 U5 J5 T* c' f8 w q5 O
- ; 弹出窗口还是欧路查词窗口显示结果,CtrlBreak 切换
# q6 D6 `$ b+ O( n r - popup := true" N; l1 l3 D; A! r/ u4 ^: c8 ?
- ; suspend6 w: ]5 |4 M* X* A) k; h* a
- Pause::suspend
$ o: o% T7 B5 F. s& j - ^CtrlBreak::
0 N* g% D! J7 h* A - popup := !popup' M0 r6 z/ u6 j" Q8 o1 P
- if (popup)
5 {, @( p- @0 h* C6 V - ToolTip, Popup mode
: b7 `, X5 J2 ?# y3 X$ I/ m - else
$ x! n% T7 x5 w8 q - ToolTip, Window mode
' S& O' c i+ V( e - SetTimer, RemoveToolTip, -2000
. B) ?) N" I* H8 L, ^, w/ q- C) F/ c - return
* M. ]( b& {6 O5 K) U; h4 U% b) Z
; T9 t$ @1 H2 g- ~LButton::
& R: P, t/ O- X; a* S$ f - ! L6 Z+ \9 z& f M
- Loop {/ R3 `8 {+ l- w4 Y* k: @; Q0 l0 R
- LButtonDown := GetKeyState("LButton","P") ' E: g1 u1 j& a* v+ u6 P
- If (!LButtonDown)( X- R% N6 P( }8 S: \) l* Z
- Break
0 [7 i# p4 v6 y0 H* U. b" @ - }9 ~6 c7 M# d/ q
- : ]1 J* K0 y" o1 g1 M8 `
- WaitTime:=DllCall("GetDoubleClickTime")/4007 y# ~2 r$ _9 g, X( e( O- v% | U* m
- KeyWait, LButton, D T%WaitTime%
0 F- b" g$ r0 Z! c) r* Q - If errorlevel=0
4 [* t9 u% n6 m9 F( y8 n5 l - GoSub, Routine/ {( L" P# b5 G
- Return$ F" q3 K0 G4 D( g
7 Q5 k' Q' F1 x( N! ]& |- & w/ t9 B; p1 ^7 A0 @8 |: \$ Z
- Routine:5 i3 J7 y9 E& V
- {) g$ h4 {- W# a7 z) ?
- ; 暂时关闭,只对这些软件取词# ~8 w. R i9 ^' O
- ; if (!WinActive("ahk_class SUMATRA_PDF_FRAME") && !WinActive("ahk_class MozillaWindowClass") && !WinActive("ahk_exe msedge.exe")), Q I; l+ n( z. D1 j' O
- ; return* S7 U4 b! R5 y0 s7 m' C2 @
- if (popup) {6 S7 C) e. o2 d
- ; 设置欧路词典划词快捷键 Ctrl + F10' J# `- E4 Q/ x, x5 ]" q \
- send ,^{F10} a% a2 j: y1 K7 g# s
- return5 n9 x& j. w( I
- }& @; a) n" a8 {/ g' b! h
0 |) }1 {) p5 D5 [1 r- ClipSaved := ClipboardAll
1 A7 h* ]; Z0 L. @3 x3 z - , N5 E& c$ W: W2 J: |" q8 @" r
- clipboard =- w4 [% l0 P$ `
- send ,^c
4 k4 ?0 P6 [' o8 r0 s - ClipWait,1
4 Q* ?9 T$ z7 \" }$ F; k) B - % s" ?8 r3 \- |9 B* S1 @3 S( H
- cliplen := StrLen(clipboard)! g9 q* {( d* X* C8 I
- if (cliplen > 2 and cliplen < 20) {( }; g! q6 P& A2 ]7 _# z; G
- run D:\soft\eudic\eudic.exe -w %clipboard%, C3 ~5 B/ _* s4 \
- }) V) K A' P) `* R4 v
- - n7 n' b$ ]" n6 P' d9 h
- clipboard =
9 Q2 C# N& _1 Y! C; J7 e/ |* C# W - Clipboard := ClipSaved
7 Z6 r& P8 _9 ~: [ - ClipWait,1
6 q8 _; C% M X4 y - ClipSaved =
7 l, G9 | @, @ - }
% N3 |6 ]- {' j- y( | - : j2 x5 V3 }" p$ o$ G% C
- return. h; m# c; m8 b- k9 |
# ?8 ^( e0 B) t' c5 M- RemoveToolTip:& \+ ]- `) w/ f+ G* C) ~2 B
- ToolTip
( N5 c: t& U% V0 n4 O/ g" D: @ - return
复制代码 |
|