[26312] 2020-11-20_我手撸了一个划线翻译工具!

文档创建者:s7ckTeam
浏览次数:14
最后更新:2025-01-19
2020-11-20_我手撸了一个划线翻译工具! 线 S i n c o s t a n   L i n u x   2 0 2 0 - 1 1 - 2 0 J a v a h t t p s : / / y u a n l e h o m e . g i t h u b . i o / 2 0 2 0 0 6 1 2 /       L i n u x     p d f T r a n s l a t o r p o p u p - d i c t 使 便 便 便   L i n u x   使   L i n u x V M w a r e
    L i n u x     U b u n t u   1 8 . 0 4 . 3   L T S   L i n u x   .   1 .   x c l i p   使     X   w i n d o w   使   c t r l + c   c t r l + v   2 .   t r a n s l a t e - s h e l l     访 t r a n s l a t e - s h e l l   L i n u x   使 使 访 访   t r a n s l a t e - s h e l l   .     C   使   s h e l l   $   s u d o   a p t   i n s t a l l   x c l i p x c l i p m a n   x c l i p $   x c l i p   f i l e _ n a m e   #   X   w i n d o w $   x c l i p   - s e l e c t i o n   c   f i l e _ n a m e   # $   x c l i p   - o   #   X   w i n d o w $   x c l i p   - s e l e c t i o n   c   - o   #   $   s u d o   a p t   i n s t a l l   t r a n s l a t e - s h e l l G o o g l e   T r a n s l a t e   C L I $   t r a n s   e n : z h   [ w o r d ]   #   $   t r a n s   e n : z h   - b   [ t e x t ]   #  
X   w i n d o w   1 .     / p r o c / b u s / i n p u t / d e v i c e s   使   H a n d l e r s     e v e n t 2     / d e v / i n p u t / e v e n t 2     / d e v / i n p u t / e v e n t 3   使 e v e n t / /   e v e n t 2     e v e n t   2 .   L i n u x     L i n u x   i n p u t       使   i n p u t   e v e n t   i n p u t _ e v e n t     i n p u t   L i n u x / i n p u t . h     e v e n t   A P I   $   s u d o   c a t   / p r o c / b u s / i n p u t / d e v i c e s I :   B u s = 0 0 1 1   V e n d o r = 0 0 0 2   P r o d u c t = 0 0 1 3   V e r s i o n = 0 0 0 6 N :   N a m e = " V i r t u a l P S / 2   V M w a r e   V M M o u s e " P :   P h y s = i s a 0 0 6 0 / s e r i o 1 / i n p u t 1 S :   S y s f s = / d e v i c e s / p l a t f o r m / i 8 0 4 2 / s e r i o 1 / i n p u t / i n p u t 4 U :   U n i q = H :   H a n d l e r s = m o u s e 0   e v e n t 2   B :   P R O P = 0 B :   E V = b B :   K E Y = 7 0 0 0 0   0   0   0   0 B :   A B S = 3 $   s u d o   c a t   / d e v / i n p u t / e v e n t 2   |   h e x d u m p   #   i n p u t _ d e v
  t y p e     3 .     C   ~   T r a n s l a t o r   T r a n s l a t o r     c t . c   / /     i n p u t . h s t r u c t   i n p u t _ e v e n t {         s t r u c t   t i m e v a l   t i m e ;   / /           _ _ u 1 6   t y p e ;                     / /           _ _ u 1 6   c o d e ;                     / /           _ _ s 3 2   v a l u e ;                   / /   } ; / /     i n p u t - e v e n t - c o s e s . h / /   t y p e # d e f i n e   E V _ K E Y   0 x 0 1 # d e f i n e   E V _ R E L   0 x 0 2 # d e f i n e   E V _ A B S   0 x 0 3 / /   . . . / /   c o d e # d e f i n e   B T N _ L E F T   0 x 1 1 0 # d e f i n e   B T N _ R I G H T   0 x 1 1 1 # d e f i n e   B T N _ M I D D L E   0 x 1 1 2 / /   . . . / /   v a l u e # d e f i n e   M S C _ S E R I A L   0 x 0 0 # d e f i n e   M S C _ P U L S E L E D   0 x 0 1 / /   . . . E V _ K E Y E V _ R E L E V _ A B S
      c t   4 .     s h e l l     T r a n s l a t o r     g o T r a n s l a t e . s h   # i n c l u d e   < s t d i o . h > # i n c l u d e   < s t d l i b . h > # i n c l u d e   < u n i s t d . h > # i n c l u d e   < l i n u x / i n p u t . h > # i n c l u d e   < f c n t l . h > i n t   m a i n ( v o i d ) {         i n t   k e y s _ f d ;         s t r u c t   i n p u t _ e v e n t   t ;         / /           k e y s _ f d   =   o p e n ( " / d e v / i n p u t / e v e n t 2 " ,   O _ R D O N L Y ) ;         i f   ( k e y s _ f d   < =   0 )         {                 p r i n t f ( " o p e n   / d e v / i n p u t / e v e n t 2   e r r o r ! n " ) ;                 r e t u r n   - 1 ;         }         w h i l e   ( 1 )         {                 r e a d ( k e y s _ f d ,   & t ,   s i z e o f ( t ) ) ;                 i f   ( t . t y p e   = =   E V _ K E Y )                             / /                           i f   ( t . c o d e   = =   B T N _ L E F T )                 / /                                   i f   ( t . v a l u e   = =   M S C _ S E R I A L )   / /                                           / /   s h e l l                                         s y s t e m ( " ~ / T r a n s l a t o r / g o T r a n s l a t e . s h " ) ;         }         c l o s e ( k e y s _ f d ) ;         r e t u r n   0 ; } g c c $   g c c   c t . c   - o   c t
  T r a n s l a t o r     l a s t C o n t e n t . t x t   5 .     c t       .   # ! / b i n / b a s h s t r _ o l d = $ ( c a t   ~ / T r a n s l a t o r / l a s t C o n t e n t ) s t r _ n e w = $ ( x c l i p   - o   2 > / d e v / n u l l   |   x a r g s ) i f   [ [   " $ s t r _ n e w "   ! =   " $ s t r _ o l d "   & &   $ s t r _ n e w   ] ] ;   t h e n         e c h o   - e   " n "         c o u n t = $ ( e c h o   " $ s t r _ n e w "   |   w c   - w )         i f   [   " $ c o u n t "   = =   " 1 "   ] ;   t h e n                 e c h o   - n   - e   " $ s t r _ n e w   "   > > ~ / T r a n s l a t o r / w o r d s                 e c h o   " $ s t r _ n e w "   |   t r a n s   : z h - C N   |   t a i l   - 1   |   c u t   - c   5 -   |   s e d   " s , x 1 b [ [ 0 - 9 ; ] * [ a - z A - Z ] , , g "   |   t e e   - a   ~ / T r a n s l a t o r / w o r d s         e l s e                 e c h o   " $ s t r _ n e w "   |   t r a n s   : z h - C N   - b         f i         e c h o   " $ s t r _ n e w "   > ~ / T r a n s l a t o r / l a s t C o n t e n t f i $   s u d o   ~ / T r a n s l a t o r / c t ~ / . b a s h r c a l i a s   c t = ' s u d o   ~ / T r a n s l a t o r / c t ' $   c t
便 使 线 便 使   L i n u x   使 便
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则