Sindbad~EG File Manager

Current Path : /usr/local/lib/python3.9/idlelib/__pycache__/
Upload File :
Current File : //usr/local/lib/python3.9/idlelib/__pycache__/config.cpython-39.opt-2.pyc

a

��g��@s�ddlmZddlZddlZddlmZddlZGdd�de�ZGdd�de�Z	Gdd	�d	e�Z
Gd
d�de�ZGdd
�d
e�ZGdd�d�Z
e
�Ze�Zdd�ZGdd�de�Zdd�Zedkr�ddlmZedddd�dS)�)�ConfigParserN)�Fontc@seZdZdS)�InvalidConfigTypeN��__name__�
__module__�__qualname__�r	r	�*/usr/local/lib/python3.9/idlelib/config.pyr#�rc@seZdZdS)�InvalidConfigSetNrr	r	r	r
r$rrc@seZdZdS)�InvalidThemeNrr	r	r	r
r
%rr
c@s0eZdZddd�Zddd�Zdd�Zd	d
�ZdS)
�IdleConfParserNcCs||_tj||dd�dS)NF)�defaults�strict)�filer�__init__)�self�cfgFileZcfgDefaultsr	r	r
r+szIdleConfParser.__init__FcCsL|�||�s|S|dkr$|�||�S|dkr8|�||�S|j|||d�SdS)N�bool�int��raw)�
has_optionZ
getbooleanZgetint�get)r�section�option�type�defaultrr	r	r
�Get2szIdleConfParser.GetcCs|�|�r|�|�SgSdS�N)�has_section�options�rrr	r	r
�
GetOptionListCs

zIdleConfParser.GetOptionListcCs|jr|�|j�dSr )r�read�rr	r	r
�LoadJszIdleConfParser.Load)N)NNF)rrrrrr$r'r	r	r	r
r's

rc@s<eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
S)�IdleUserConfParsercCs^|�||�r4|�||�|kr dS|�|||�dSn&|�|�sH|�|�|�|||�dSdS)NFT)rr�setr!�add_section)rrr�valuer	r	r
�	SetOptionTs

zIdleUserConfParser.SetOptioncCs|�|�r|�||�SdS)NF)r!Z
remove_option)rrrr	r	r
�RemoveOptiones
zIdleUserConfParser.RemoveOptioncCs|�|�s|�|�dSr )r!r*r#r	r	r
�
AddSectionns
zIdleUserConfParser.AddSectioncCs&|��D]}|�|�s|�|�qdSr )�sectionsr$�remove_sectionr#r	r	r
�RemoveEmptySectionsss
z&IdleUserConfParser.RemoveEmptySectionscCs|��|��Sr )r1r/r&r	r	r
�IsEmptyyszIdleUserConfParser.IsEmptycCs�|j}|r�|ddkr�|��s�zt|d�}Wn&tyRt�|�t|d�}Yn0|�|�|�Wd�q�1sx0Yntj�|j�r�t�	|j�dS)Nr�#�w)
rr2�open�OSError�os�unlink�write�path�exists�remove)rZfnamerr	r	r
�Save~s
*zIdleUserConfParser.SaveN)	rrrr,r-r.r1r2r=r	r	r	r
r(Os	r(c@seZdZd=dd�Zdd�Zdd�Zd>d
d�Zdd
�Zdd�Zdd�Z	dd�Z
dd�Zdd�Zdd�Z
edd��Zd?dd�Zdd�Zd d!�Zd"d#�Zd$d%�Zd&d'�Zd(d)�Zd*d+�Zd,d-�Zd.d/�Zhd0�Zd@d1d2�Zd3d4�Zd5d6�Zd7d8�Zd9d:�Zd;d<�Z dS)A�IdleConfFcCs0d|_i|_i|_i|_|s,|��|��dS)N)�main�	highlight�keys�
extensions)�config_types�
defaultCfg�userCfg�cfg�CreateConfigHandlers�LoadCfgFiles)rZ_utestr	r	r
r�szIdleConf.__init__cCsxtj�t�}tjrdn|��|_}|jD]H}t	tj�
|d|�d���|j|<ttj�
|p\dd|�d���|j
|<q*dS)N�zconfig-z.defr3z.cfg)r7r:�dirname�__file__�idlelib�testing�
GetUserCfgDir�userdirrCr�joinrDr(rE)rZidledirrOZcfg_typer	r	r
rG�s
�
�zIdleConf.CreateConfigHandlerscCs�d}tj�d�}|dkr`tj�|�s`tjs\d|d}zt|tjd�Wnt	yZYn0d}|dkrpt�
�}tj�||�}tj�|�s�zt�|�WnNt	y�tjs�d|d}zt|tjd�Wnt	y�Yn0t
�Yn0|S)Nz.idlerc�~z.
 Warning: os.path.expanduser("~") points to
 z,
 but the path does not exist.�rz2
 Warning: unable to create user config directory
z(
 Check path and permissions.
 Exiting!
)r7r:�
expanduserr;rLrM�print�sys�stderrr6�getcwdrP�mkdir�
SystemExit)rZcfgDirZuserDir�warnr	r	r
rN�sD����
zIdleConf.GetUserCfgDirNTc	Cs�z0|j|�||�r.|j|j||||d�WSWnBtyrd||||j|j|||d�f}t||||�Yn0z0|j|�||�r�|j|j||||d�WSWnty�Yn0|r�d|||f}t||||�|S)N)rrzn
 Warning: config.py - IdleConf.GetOption -
 invalid %r value for configuration option %r
 from section %r: %rrz�
 Warning: config.py - IdleConf.GetOption -
 problem retrieving configuration option %r
 from section %r.
 returning default value: %r)rErr�
ValueError�_warnrD)	r�
configTyperrrr�warn_on_defaultr�warningr	r	r
�	GetOption�s2
���
��zIdleConf.GetOptioncCs|j|�|||�dSr )rEr,)rr]rrr+r	r	r
r,�szIdleConf.SetOptioncCsJ||jvrtd��|dkr&|j|}n|dkr:|j|}ntd��|��S)NzInvalid configType specified�userr�Invalid configSet specified)rCrrErDrr/)r�	configSetr]�	cfgParserr	r	r
�GetSectionLists
zIdleConf.GetSectionListcCsR|jd�|�rdnd}|�||�}||d}|dkr<d}||d}||d�S)	Nr@rraz-foregroundZcursor�normalz-background)Z
foregroundZ
background)rDr!�GetThemeDict)r�theme�elementrFZ
theme_dictZforeZbackr	r	r
�GetHighlights�zIdleConf.GetHighlightc Cs�|dkr|jd}n|dkr(|jd}ntd��dddddddddddddddddddddddddddddddd�}|D]R}|�||�s�|�d	�s�d
||||f}t|d||�|j||||d�||<qx|S)Nrar@rzInvalid theme type specifiedz#000000z#ffffffZgray)znormal-foregroundznormal-backgroundzkeyword-foregroundzkeyword-backgroundzbuiltin-foregroundzbuiltin-backgroundzcomment-foregroundzcomment-backgroundzstring-foregroundzstring-backgroundzdefinition-foregroundzdefinition-backgroundzhilite-foregroundzhilite-backgroundzbreak-foregroundzbreak-backgroundzhit-foregroundzhit-backgroundzerror-foregroundzerror-backgroundzcontext-foregroundzcontext-backgroundzlinenumber-foregroundzlinenumber-backgroundzcursor-foregroundzstdout-foregroundzstdout-backgroundzstderr-foregroundzstderr-backgroundzconsole-foregroundzconsole-background)zcontext-zlinenumber-z{
 Warning: config.IdleConf.GetThemeDict -
 problem retrieving theme element %r
 from theme %r.
 returning default color: %r�r)rErDr
r�
startswithr\r)rrZ	themeNamerdrhrir_r	r	r
rg!sb�"��
�zIdleConf.GetThemeDictcCs
|�d�S)N�Theme��current_colors_and_keysr&r	r	r
�CurrentThemeeszIdleConf.CurrentThemecCs
|�d�S)NZKeysrnr&r	r	r
�CurrentKeysiszIdleConf.CurrentKeyscCs�|dkrdnd}|jd|dddd�}d	}|r>|jd|d
d	d�}|sT|jd|dd	d�}|rz|rb|jn|j}||�|�rz|S|dkr�d
S|��S)Nrmr@rAr?rrT�rrrIZname2rk�namezIDLE Classic)r`rDrEr!�default_keys)rrZcfgnamerrs�sourcer	r	r
roms
�z IdleConf.current_colors_and_keyscCs,tjdd�dkrdStjdkr$dSdSdS)N��winzIDLE Classic Windows�darwinzIDLE Classic OSXzIDLE Modern Unix)rU�platformr	r	r	r
rt�s

zIdleConf.default_keysc		Cs�|�|�dd��}|�|�dd��}|D]}||vr(|�|�q(dD]}|�|�qD|r�g}|D]Z}|jd|dddd�r`|s�|r�|r�d	}nd
}|jd||dddd�r�|�|�q`|�|�q`|S|SdS)
NrrBra)ZAutoCompleteZCodeContextZFormatParagraphZ
ParenMatch�enableTr�rrZ
enable_editorZenable_shellF)rrr^)�RemoveKeyBindNamesre�appendr<r`)	r�active_onlyZeditor_onlyZ
shell_onlyZextnsZ	userExtns�extn�activeExtnsrr	r	r
�
GetExtensions�s:
�
��
�zIdleConf.GetExtensionscCsdd�|D�S)NcSsg|]}|�d�s|�qS))�	_bindings�_cfgBindings)�endswith)�.0�nr	r	r
�
<listcomp>�rz/IdleConf.RemoveKeyBindNames.<locals>.<listcomp>r	)rZextnNameListr	r	r
r|�szIdleConf.RemoveKeyBindNamescCsBd}d|d}|jdd�D] }|�|�D]}||kr*|}q*q|S)N�<<�>>r�r~)r��GetExtensionKeys)r�virtualEventZextNameZvEventr�eventr	r	r
�GetExtnNameForEvent�szIdleConf.GetExtnNameForEventc	Cs^|d}|��}i}|jd�|�rZ|jd�|�}|D] }d|d}||}|||<q8|S)Nr�rBr�r�)�GetCurrentKeySetrDr!r$)	r�
extensionName�keysNameZ
activeKeys�extKeys�
eventNames�	eventNamer��bindingr	r	r
r��s
zIdleConf.GetExtensionKeyscCsd|d}i}|jd�|�r`|jd�|�}|D].}|jd||dd���}d|d}|||<q0|S)Nr�rBrIrkr�r�)rDr!r$r`�split)rr�r�r�r�r�r�r�r	r	r
Z__GetRawExtensionKeys�s�

zIdleConf.__GetRawExtensionKeyscCsj|d}|�|�}|jd�|�rf|jd�|�}|D].}|jd||dd���}d|d}|||<q6|S)Nr�rBrIrkr�r�)r�rDr!r$r`r�)rr�Z	bindsNameZextBindsr�r�r�r�r	r	r
�GetExtensionBindings�s
�

zIdleConf.GetExtensionBindingscCs(|dd�}|jd||ddd���}|S)N����rArIF)rr^)r`r�)r�
keySetNameZeventStrr�r�r	r	r
�
GetKeyBindings
�
zIdleConf.GetKeyBindingcCsL|�|���}tjdkrH|��D]&\}}dd�|D�}||kr |||<q |S)NrxcSsg|]}|�dd��qS)z<Alt-z<Option-)�replace)r��xr	r	r
r�%rz-IdleConf.GetCurrentKeySet.<locals>.<listcomp>)�	GetKeySetrqrUry�items)r�result�k�vZv2r	r	r
r�s

zIdleConf.GetCurrentKeySetcCs`|�|�}|jdd�}|D]@}|�|�}|r|D](}|||��vrLd||<||||<q0q|S)N�r�rI)�GetCoreKeysr��_IdleConf__GetRawExtensionKeys�values)rr�ZkeySetr�rr�r�r	r	r
r�+s

zIdleConf.GetKeySetcCsd|d|��vS)Nr�r�)r�)rr�r	r	r
�
IsCoreBinding=szIdleConf.IsCoreBinding>	�<<check-module>>�<<expand-word>>�<<force-open-calltip>>�<<run-custom>>�<<flash-paren>>�<<format-paragraph>>�<<run-module>>�<<zoom-height>>�<<force-open-completions>>c;Cs�ddgddgddgddgd	gd
gdgdgdgd
gdgdgdgdgdgdgdgdgdgdgdgdgdgdgdgdgdgdgdgd gd!d"gd#gd$gd%gd&gd'gd(gd)d*gd+gd,gd-gd.gd/gd0gd1gd2gd3gd4gd5gd6gd7gd8gd9gd:gd;gd<gd=gd>gd?�:}|�r�|jd@�|��s<|jd@�|��s<dA|f}t|d@|�nT|D]N}|�||�}|�r`|||<n,||jv�r@dB||||f}t|d@||��q@|S)CNz<Control-c>z<Control-C>z<Control-x>z<Control-X>z<Control-v>z<Control-V>z<Control-a>z<Home>z<Control-l>z<Control-q>z<Alt-F4>z<Control-d>z<F1>z
<Shift-F1>z<Alt-n>z<Alt-p>z<F6>z<Control-F6>z<Alt-c>z<Alt-m>z<Control-n>z<Control-o>z<Control-j>z<Control-p>z<Control-y>z<Escape>z
<Alt-Shift-S>z<Alt-s>z<Control-s>z<Alt-a>z<Control-slash>z<Control-z>z<Control-g>z<F3>z<Alt-F3>z<Control-F3>z<Control-f>z<Control-h>z<Alt-g>z<Key-BackSpace>z<Key-Return>z<Key-KP_Enter>z	<Key-Tab>z<Control-Key-bracketright>z<Control-Key-bracketleft>z<Alt-Key-3>z<Alt-Key-4>z<Alt-Key-5>z<Alt-Key-6>z<Alt-Key-t>z<Alt-Key-u>z<Control-Key-BackSpace>z<Control-Key-Delete>z<Control-Key-space>z<Alt-Key-slash>z<Control-Key-backslash>z<Control-Key-0>z<Alt-Key-q>z<Key-F5>z<Shift-Key-F5>z<Alt-Key-x>z<Alt-Key-2>):z<<copy>>z<<cut>>z	<<paste>>z<<beginning-of-line>>z<<center-insert>>z<<close-all-windows>>z<<close-window>>z<<do-nothing>>z<<end-of-file>>z<<python-docs>>z<<python-context-help>>z<<history-next>>z<<history-previous>>z<<interrupt-execution>>z<<view-restart>>z<<restart-shell>>z<<open-class-browser>>z<<open-module>>z<<open-new-window>>z<<open-window-from-file>>z<<plain-newline-and-indent>>z<<print-window>>z<<redo>>z<<remove-selection>>z<<save-copy-of-window-as-file>>z<<save-window-as-file>>z<<save-window>>z<<select-all>>z<<toggle-auto-coloring>>z<<undo>>z<<find-again>>z<<find-in-files>>z<<find-selection>>z<<find>>z<<replace>>z
<<goto-line>>z<<smart-backspace>>z<<newline-and-indent>>z<<smart-indent>>z<<indent-region>>z<<dedent-region>>z<<comment-region>>z<<uncomment-region>>z<<tabify-region>>z<<untabify-region>>z<<toggle-tabs>>z<<change-indentwidth>>z<<del-word-left>>z<<del-word-right>>r�r�r�r�r�r�r�r�r�rAza
 Warning: config.py - IdleConf.GetCoreKeys -
 key set %r is not defined, using default bindings.z�
 Warning: config.py - IdleConf.GetCoreKeys -
 problem retrieving key binding for event %r
 from key set %r.
 returning default value: %r)rEr!rDr\r��former_extension_events)rr�ZkeyBindingsr_r�r�r	r	r
r�Os�
�=���
��zIdleConf.GetCoreKeysc	Cs�g}|dkr|jd}n|dkr,|jd}ntd��|�d�}|D]f}|jd|dd�}|�d�dkrnd	}d	}n"|�d�}|d
��}|d��}|rB|rB|�|||f�qB|j	dd
�d�|S)Nrar?rrb�	HelpFiles�;rk���rIrr�cSs|dS)Nr�r	)r�r	r	r
�<lambda>�rz1IdleConf.GetExtraHelpSourceList.<locals>.<lambda>)�key)
rErDrr$r�findr��stripr}�sort)	rrcZhelpSourcesrdr"rr+ZmenuItemZhelpPathr	r	r
�GetExtraHelpSourceList�s&


zIdleConf.GetExtraHelpSourceListcCs|�d�|�d�}|S)Nrra)r�)rZallHelpSourcesr	r	r
�GetAllExtraHelpSourcesList�s�z#IdleConf.GetAllExtraHelpSourcesListc	Cs�|j||ddd�}|j||dddd�}|j||dd	d
d�}|dkr�tdd
|d�}t�|�}|d}|d}|d	krvd}|ddk}|||r�dndfS)NZfontZcourierrkz	font-sizerZ10rrz	font-boldrrr{ZTkFixedFontT)rsr;�root�family�size�
Zweight�boldrf)r`r�actual)	rr�r]rr�r�r��fZ
actualFontr	r	r
�GetFont�s ��
zIdleConf.GetFontcCs,|jD] }|j|��|j|��qdSr )rDr'rE�rr�r	r	r
rH�s
zIdleConf.LoadCfgFilescCs|jD]}|j|��qdSr )rEr=r�r	r	r
�SaveUserCfgFiles�s
zIdleConf.SaveUserCfgFiles)F)NNTF)TFF)N)!rrrrrGrNr`r,rerjrgrprqro�staticmethodrtr�r|r�r�r�r�r�r�r�r�r�r�r�r�r�rHr�r	r	r	r
r>�sD

$�
(D&
�
)
` 	r>cGsF|f|}|tvrBzt|tjd�Wnty6Yn0t�|�dS)NrR)�_warnedrTrUrVr6�add)�msgr�r	r	r
r\s
r\c@s@eZdZdd�Zdd�Zedd��Zdd�Zd	d
�Zdd�Z	d
S)�
ConfigChangescCs.g|_tjD]}i||<|j�||�qdSr )�pages�idleConfrCr})r�config_typer	r	r
rs
zConfigChanges.__init__cCs0||}t|�}||vr i||<||||<dSr )�str)rr�r�itemr+�pager	r	r
�
add_option%s
zConfigChanges.add_optioncCsNtj|�||�r:tj|�||�|kr:tj|�||�Stj|�|||�Sr )r�rDrrrEr-r,)r�rr�r+r	r	r
�save_option-szConfigChanges.save_optionc	Cs�tjd��d}|D]v}d}||}|D]J}|dkrJtjd�d�d}||��D]\}}|�||||�rVd}qVq*|rtj|��d}qdD]}tj|��q�|��|S)Nr?Fr�T)rAr@)r�rEr=r0r�r��clear)r�changedr�Zcfg_type_changedr�rr�r+r	r	r
�save_all:s&zConfigChanges.save_allcCs6|||vr|||=tj|}|�|�|��dSr )r�rEr0r=)rr�rZ
configpager	r	r
�delete_sectionXs



zConfigChanges.delete_sectioncCs|jD]}|��qdSr )r�r�)rr�r	r	r
r�cs
zConfigChanges.clearN)
rrrrr�r�r�r�r�r�r	r	r	r
r�s
r�csVddlm�d\}}�fdd���fdd�}|tj�|tj�td|d	|d
d�dS)Nr��crc32)rrcs.t|�}td7a�|jdd�t�at|�dS)Nr�zutf-8)�encoding)r��line�encode�crcrT)�objZtxtr�r	r
�sprintrsz_dump.<locals>.sprintc	s�td|d�t|���D]n}||��}�|��|�|D]H}||�|�}�|��|�|D] }�|d||�||��qbq<qdS)N�
z = )rT�sortedrAr/r"r)rFr�r/rr"r)r�r	r
�dumpCfgzsz_dump.<locals>.dumpCfgz	
lines = z, crc = rI)�sep)�zlibr�r�rDrErT)r�r�r�r	)r�r�r
�_dumpns

r��__main__)r?zidlelib.idle_test.test_configr�F)�	verbosity�exit)�configparserrr7rUZtkinter.fontrrL�	Exceptionrrr
rr(r>r�r)r�r\�dictr�r�rZunittestr?r	r	r	r
�<module>s,(Bq
c

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists