TA的每日心情 | 奋斗 2021-7-31 06:44 |
---|
签到天数: 5 天 [LV.2]偶尔看看I
|
本帖最后由 emptls 于 2022-8-7 16:53 编辑
; v6 t- c3 c; G1 L% T( v+ F2 x X& z
& v/ [. I$ K& a3 Q* |: H% L0 S我就想要个双击取词的功能,常用软件是 firefox、SumatraPDF、notepad++) I# Z$ e7 H I/ Y5 o, k* s8 c3 P" c
+ \5 i& R6 D; \. [- S
说说已经有的三种取词吧3 j/ f5 I* ]6 m5 a i3 k8 N% W' p
1. 鼠标取词设置成双击取词,firefox、chrome 都取不准! W" H- ?2 Y6 }( e; P
2. 划词,你必须要划才行,双击选中在有的软件上,不生效8 X" p- V* s4 y
3. 剪贴板取词或两次 Ctrl + C 取词,经常让正常的复制、粘贴功能失效7 s- a8 K& E q. M( y
看起来选择多,没一个好用的。
# z1 n- j/ L" z6 t
b% a1 s0 q+ _1 _& u4 x4 lfirefox 之前还无法取词,我把 Golden Dict 的双击取词脚本都反馈给客服了,态度倒是挺好。
G ~( O. K$ ^, J* L/ B& _但研发没动静。AHK 脚本都能实现的功能,你们怎么就搞不了。9 g C/ c" z+ A2 H- p% w# M# U$ \
+ B* _9 L2 P! O
这是我一直用的取词脚本,一个商业软件,这么多年了,居然还要依赖外部的脚本才能用,让人失望。) i. V6 I6 Q/ W
- ; 弹出窗口还是欧路查词窗口显示结果,CtrlBreak 切换
2 ]4 v m6 a- F+ b E - popup := true
1 N, t# |9 \: O* s3 @5 z - ; suspend% s/ C. k# ?2 [1 J/ q& m$ W% R
- Pause::suspend; F( B! I( n/ w) J' n% [
- ^CtrlBreak::( D8 h( Q) p* }
- popup := !popup$ o- ]8 \4 x% l O v
- if (popup)
7 |; t- J. R* c5 _5 @ D! e; U, G - ToolTip, Popup mode
; X8 W, m# I7 N, J - else: ]/ g* j; t; D6 c/ u4 y
- ToolTip, Window mode1 [/ m. q2 n8 z; L/ i; `
- SetTimer, RemoveToolTip, -20009 c2 @0 T8 E: C) P
- return
7 @. e8 o$ [( k. y' F - , d* U" Y6 P; l8 j0 L
- ~LButton::
. q+ k" q& v( [- L/ F! {8 k+ q
- C/ n" ~3 X; ?6 n9 A F3 M- Loop {
" q% d& A; m% N: n1 g/ a5 ] - LButtonDown := GetKeyState("LButton","P")
/ |3 M, p" I. ?8 s - If (!LButtonDown)
# u5 Y1 v, x$ C5 u) a - Break$ C& A; [. d! _. F, ], I
- }
1 q- L! s l) o
Z3 c1 y' |3 Q8 y' C- WaitTime:=DllCall("GetDoubleClickTime")/400" ]" D3 U8 }) A l* E
- KeyWait, LButton, D T%WaitTime%, T! O! O3 `$ F( l
- If errorlevel=0
" W: D8 N1 I# M' d - GoSub, Routine
3 g3 P `5 m' G+ \2 V: m6 ]" i7 W! s - Return1 n# t Q2 H$ Y0 H" f
. l7 B" @ |6 ^6 y) g- $ d. c& L0 ?6 K6 ?
- Routine:. `6 H7 r8 f8 i @0 \- ^; ~% m
- {
' R! }9 I% W& ?6 B' I+ M U) e/ x4 z - ; 暂时关闭,只对这些软件取词
+ ]/ d9 r2 a# v - ; if (!WinActive("ahk_class SUMATRA_PDF_FRAME") && !WinActive("ahk_class MozillaWindowClass") && !WinActive("ahk_exe msedge.exe"))
& ^: m1 S, ~3 ]) ?7 B( J - ; return& v4 P% Z' }6 h8 T+ f
- if (popup) {# U. u( |3 X2 }* o
- ; 设置欧路词典划词快捷键 Ctrl + F100 W- O3 a4 ]0 h- ~& J$ N; y- a
- send ,^{F10}
' b1 X( I6 ^8 m - return
& c5 D: O0 M9 }6 W - }
& [+ g1 h2 `% q
( K$ \: F1 I1 V x5 C- ClipSaved := ClipboardAll+ z* Z, l5 ^5 J9 ?; \/ u7 Z' e2 P0 O
9 `0 B% c5 J% s S0 ~- clipboard =
& h. C9 p2 s5 @ - send ,^c6 I: y- B! b7 V- N: `) L
- ClipWait,17 A; f# o$ v9 |3 a" q
- 1 a8 P% C% q0 r* Z7 d; T4 H
- cliplen := StrLen(clipboard)' s3 ?; c9 e0 [. ~6 }" M, d& H# b4 M7 L
- if (cliplen > 2 and cliplen < 20) {
9 z$ I: s8 f- F7 q9 y; C( R- ^ - run D:\soft\eudic\eudic.exe -w %clipboard%
7 l& C. q+ A/ Q* b; s k, @# ? - }& T) [& V' B6 P" _4 |( a
- 8 q6 `$ P* P3 o
- clipboard =
; W; {& n8 i) l$ ^( b - Clipboard := ClipSaved
. l7 h5 \! U. q( c* l - ClipWait,1
1 u/ b# [5 b# p0 W A+ n - ClipSaved =
1 d* G j( G( `% C" Q - }3 p# g& I: z& g4 T6 P( x/ K
- 2 Q2 h. H: X0 D" `! O
- return0 l. R4 h/ B. n: @ P% R" T8 E
# ?. l* e/ |8 @" ]+ O7 G- RemoveToolTip:! b! D/ W, g! |
- ToolTip d$ ?! P8 c+ V% @( e
- return
复制代码 |
|