
    %
i1                         d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlZd dl	Z	d dl
Z
ddlmZ d Zerd dlZd Znd ZdZd Zd Zd	 Zd
 Z G d d          Zd Zedk    r e             dS dS )    N   )keycodesc                      t           j                            d                    t	          t
          |                     dz              d S )N 
)sysstderrwritejoinmapstrargss    C:\Users\Dell Inspiron 16\Desktop\tws\AgrotaPowerBi\back-agrota-powerbi\mcp-client-agrota\venv\Lib\site-packages\pythonwin/pywin/scintilla/config.pytracer      s7    
#c4..11D899999    c                      d S N r   s    r   <lambda>r   !   s    $ r      c                 T   |                      d          }|dk    r
| d |         } |                     d          }|dk    r.|                                 rt          d| d| d           dS d	S | d |                                         | |d
z   d                                          fS )N#r   =zWarning: Line : z is an invalid entryNN) r   r   )findrfindstripprint)linelinenocomment_possep_poss       r   
split_liner'   &   s    ))C..KaL[L!jjooG"}}::<< 	I6IITIIIJJJ:v>!!4!#6#<#<#>#>>>r   c                 ,   | d         dk    r|                      d          }|dk    rt          |           }| d|                                         }	 |                    d          }|d |         ||dz   d          fS # t          $ r |dfcY S w xY wdS )	Nr   []r   r   :r   r   )r   lenlowerindex
ValueError)r#   endrcis       r   get_section_headerr3   3   s    Aw#~~iinn"99d))C!C%[  	Abqb62a!egg;&& 	 	 	r6MMM	:s   +B   BBc                     t           j                            t          t	          t
          j                            | dz             S )Nz.cfg)ospathr   nextiterpywin__path__)fs    r   find_config_filer<   B   s.    7<<T%.1122AJ???r   c                      d d t          j         t          j                            t	          t          t          j                            d                    D             D             S )Nc                 X    g | ]'}t           j                            |          d          (S r   )r5   r6   split.0xs     r   
<listcomp>z%find_config_files.<locals>.<listcomp>G   s;        	a  r   c                 X    g | ]'}t           j                            |          d          (S )r   )r5   r6   splitextrA   s     r   rD   z%find_config_files.<locals>.<listcomp>I   s=     
 
 
 GQ"
 
 
r   z*.cfg)globr5   r6   r   r7   r8   r9   r:   r   r   r   find_config_filesrH   F   sh     
 
Yrw||Den1E1E,F,FPPQQ
 
 
   r   c                   ^    e Zd Zd ZddZddZd Zd ZddZdd	Z	d
 Z
d Zd Zd Zd ZdS )ConfigManagerc                 	   d| _         d | _        i | _        d}t          |d          r|}d| _         d }n(	 t	          |          }t          j        |          }n)# t          $ r |                     d|z             Y d S w xY w|| _         t
          j	        
                    |          | _
        t          d| j
                   t
          j	                            |          d         dz   }	 t          |d	          }	 t          j        |          }t           |k    }|rt          j        |          }	t          j        |          }
t          j        |          }t          j        |          }|
t"          j        j        k    rt)          j                    |	k    rl|t          j                 |k    rV|t          j                 |k    r@t          j        |          | _        t          d
|           	 |                                 d S |                                 n# |                                 w xY wn# t          t4          f$ r Y nw xY wt          |          }d}i | _        d}|                                }|rt9          |          \  }}|r4|2|                                }|sn|dz  }t9          |          \  }}|r|2|sn|dk    r|                     |||          \  }}n|dk    r|                     |||          \  }}nw|dk    r|                     |||          \  }}nV|dk    r|                      |||          \  }}n5|                     d| d| d           |                                }|dz  }||r|                                 | j        !                    d          s|                     d           | j        s
|r		 t          |d          }t          j"        t           |           t          j"        t)          j                    |           t          j"        t"          j        j        |           t          j"        |t          j                 |           t          j"        |t          j                 |           t          j"        | j        |           |                                 d S # t          t4          f$ r Y d S w xY wd S d S )NunknownFreadlinez<config string>zConfig file '%s' not foundzLoading configurationr   z.cfcrbzConfiguration loaded cachedTr   keys
extensionsidle extensionsgeneralzUnrecognised section header 'r+   'z#No keyboard definitions were loadedwb)#filename
last_errorkey_to_eventshasattrr<   r5   statOSErrorreport_errorr6   basenamer   rF   openmarshalloadcompiled_config_version	importlibutilMAGIC_NUMBERwin32apiGetKeyboardLayoutNameST_MTIMEST_SIZEcachecloseEOFErrorrM   r3   
_load_keys_load_extensions_load_idle_extensions_load_generalgetdump)selfr;   b_closefpcompiled_namesrc_statcfverokkblayoutnamemagicsizemtimer$   r#   section
subsections                    r   __init__zConfigManager.__init__Q   s   !1j!! '	B-DM MM$Q''71::   !!">"BCCC DMG,,Q//DM)4=999G,,Q//2V;M-..!,r**C0C7B #'.|B'7'7 'R 0 0&|B// 'R 0 0!Y^%@@@ ( > @ @L P P ( 75 @ @ ( 6$ > >)0b)9)9DJ!"?OOO"HHJJJJJBHHJJJJBHHJJJJJX&   aBG
{{}} 	"4T":":GZ ?7?{{}} !&8&>&>#  ?7?  &  #z2vFFffL((#44ZVLLff---#99*b&QQffI%%#11*b&IIff!!KGKKjKKK   {{}}!3  	4  	HHJJJz~~f%% 	ECDDD 	= 	
-..4b999X;==rBBBY^8"===Xdl3R888Xdm4b999TZ,,,




X&   	 	 	 	sU   #A "B ?B ,H5 =C2H 0H5 H5 H11H5 5I	I	C,S SSNc                    |g }dg|z   }|                      d          }|rx|                    dg           }|D ]_}t          d|d           |                     |          }|                    ||           |j        r|                     |j                   `|j        }|                      d          }|i }	 t          ||           n1#  t          j
                     |                     d           d }Y nxY w|rpd}	|                                D ]H\  }
}t          |t          j                  r)|
d d	         d
k    r|                    |
|           |	d	z  }	It          d|	d           |D ]y}|                      di                               |g           D ]L}	 |j                            |           t          d|           .#  |                     d|z             Y JxY wz|                      d          }d}|D ]?}|                    |i           }|                    |           |t'          |          z  }@t          d|d           d S )Nr   rR   zbased onzConfiguration based onz
- loading.extension codezExecuting extension code failedr   r   _z#Configuration Extension code loadedeventsrQ   zLoaded IDLE extensionz$Can not load the IDLE extension '%s'rO   zConfiguration bound)get_dataro   r   	__class__	configurerV   r[   bindingsexec	traceback	print_excitems
isinstancetypesFunctionTypebindidleIDLEExtensionupdate_keymapr,   )rq   editorsubsectionsrR   parentsparentr   codeobnsnumnamefuncr~   extsubsection_keymap	num_boundkeymaps                    r   r   zConfigManager.configure   s    Kd[(--	** 	9kk*b11G! 9 9.EEE//  555$ 9%%f&7888?/00BVR    #%%%!!"CDDD L"$((** ! !JD$!$(:;; !RaRC dD111q;S(KKK% 	T 	TJ}}%6;;??
BOO T TTK--c222137777T%%&Ls&RSSSSST !MM&11	% 	% 	%J&**:r::F""6***V$II#Y77777s   ;C ,C: *GG'c                 v   |g }dg|z   }|                      d          }|D ]}| j                            |          }|>|                    |i           }d |                                D             }|| j        |<   |                    |          }|#t	          j        |d         |d                   c S d S )Nr   rO   c                     i | ]\  }}||	S r   r   )rB   key_info	map_events      r   
<dictcomp>z1ConfigManager.get_key_binding.<locals>.<dictcomp>   s    UUU/Bxy(UUUr   r   r   )r   rW   ro   r   r   make_key_name)rq   eventr   r   r~   r   r   infos           r   get_key_bindingzConfigManager.get_key_binding   s    Kd[( MM&11% 		@ 		@J$((44C{*..z2>>UUfllnnUUU14":.775>>D-d1gtAw?????  tr   c                 H    || _         t          d| j         d|            d S )Nz	Error in r   )rV   r"   rU   rq   msgs     r   r[   zConfigManager.report_error   s0    0$-0030011111r   c                 :    t          d| j         d|            d S )NzWarning in r   )r"   rU   r   s     r   report_warningzConfigManager.report_warning   s)    2DM22S2233333r   r   c                     |                                 }|dz  }|rDt          |          d         d u}|r*|s(|                    d          }|dk    r|d |         dz   }nd}|||fS )Nr   r   r   r   )rM   r3   r   )rq   rs   r$   bStripCommentsr#   bBreakposs          r   	_readlinezConfigManager._readline   s    {{}}! 		"4((+47   -f -iinn!88:,DFVV##r   c                 8    | j                             ||          S r   )rh   ro   )rq   r   defaults      r   r   zConfigManager.get_data  s    z~~dG,,,r   c                     || j         |<   |S r   )rh   )rq   r   datas      r   
_save_datazConfigManager._save_data  s    
4r   c                 ,   i }	 |                      ||          \  }}}|rn[t          ||          \  }}|s4|                                }|                    |g           }	|	                    |           |	||<   x|                     d|           ||fS )Nr   rR   )r   r'   r-   ro   appendr   )
rq   sub_sectionrs   r$   r   r#   r   keyvalls
             r   rn   zConfigManager._load_general  s    	#'>>"f#=#= D&& !$//HC ))++CR  AHHSMMMCH	 		3'''V|r   c                 x   |                      di           }|                    |i           }	 |                     ||          \  }}}|rnRt          ||          \  }}	|	s4t	          j        |          \  }
}|
|                     d||fz             n|	||
|f<   o|||<   |                     d|           ||fS )NrO   r   zLine %d: Invalid key name '%s')r   ro   r   r'   r   parse_key_namer   r   )rq   r   rs   r$   main_mapr   r#   r   r   r   scflags               r   rk   zConfigManager._load_keys   s     ==,,ll;++	&#'>>"f#=#= D&& #D&11JC .s33HBz##$DPS}$TUUUU %BH	& !$)))V|r   c                    |}g }	 |                      ||d          \  }}}|rn|                    |           4	 t          d|z  d                    |          z   | j        d          }|                     d|           nF# t          $ r9}	|	j        |z   }
|                     d|	j        |
|	j	        fz             Y d }	~	nd }	~	ww xY w||fS )Nr   r   r   r   r   r   z7Compiling extension code failed:
File: %s
Line %d
%s)
r   r   compiler   rU   r   SyntaxErrorr$   r[   r   )rq   r   rs   r$   start_linenolinesr#   r   cdetails	errlinenos              r   rl   zConfigManager._load_extensions6  s   	#'>>"fa#@#@ D&& LL		
	|#bggenn4 A
 OO,a0000 	 	 	5IO#Y<=       	 V|s   AB 
C/B??Cc                 
   |                      d          }|i }g }	 |                     ||          \  }}}|rn,|                                }|r|                    |           I|||<   |                     d|           ||fS )NrQ   )r   r   r!   r   r   )rq   r   rs   r$   extension_maprP   r#   r   s           r   rm   z#ConfigManager._load_idle_extensionsN  s    &788 M
	(#'>>"f#=#= D&& ::<<D (!!$'''	( &0k")=999V|r   r   r?   )__name__
__module____qualname__r   r   r   r[   r   r   r   r   rn   rk   rl   rm   r   r   r   rJ   rJ   P   s        Z Z Zx18 18 18 18f   $2 2 24 4 4$ $ $ $- - - -    "  ,  0    r   rJ   c                      dd l } |                                 }d}t          |          }|                    d          }|                                 |z
  }t	          dt          |           d|dd           d S )Nr   r   rO   zLoaded z
 items in z.4fz secs)timeclockrJ   r   r"   r,   )r   startr;   cmr   tooks         r   testr   _  s~    KKKJJLLEA	q		B
++f

C::<<%D	
7CHH
7
7
7
7
7
788888r   __main__)rG   importlib.utilra   r^   r5   rY   r   r   r   r9   rd   r   r   	debuggingwin32traceutilr   r`   r'   r3   r<   rH   rJ   r   r   r   r   r   <module>r      sY         				  



             	 : : : : E 
? 
? 
?  @ @ @  L L L L L L L L^9 9 9 zDFFFFF r   