python (3.11.7)

(root)/
lib/
python3.11/
idlelib/
__pycache__/
config.cpython-311.opt-2.pyc

ez	ddlmZddlZddlZddlmZddlZGddeZGddeZ	Gdd	eZ
Gd
deZGdd
eZGddZ
e
ZeZdZGddeZdZedkr ddlmZedddedSdS))ConfigParserN)FontceZdZdS)InvalidConfigTypeN__name__
__module____qualname__B/BuggyBox/python/3.11.7/bootstrap/lib/python3.11/idlelib/config.pyrr#rrceZdZdS)InvalidConfigSetNrrrr
rr$rrrceZdZdS)InvalidThemeNrrrr
rr%rrrc,eZdZ	ddZddZdZdZdS)	IdleConfParserNcD	||_tj||ddS)NF)defaultsstrict)filer__init__)selfcfgFilecfgDefaultss   r
rzIdleConfParser.__init__+s.		d[GGGGGGrFc	|||s|S|dkr|||S|dkr|||S||||S)Nboolintraw)
has_option
getbooleangetintget)rsectionoptiontypedefaultr!s      r
GetzIdleConfParser.Get2sv	w//	N6>>??7F333
U]];;w///88GV8555rc\	||r||SgSN)has_sectionoptionsrr&s  r

GetOptionListzIdleConfParser.GetOptionListCs2>G$$	<<(((IrcN	|jr||jdSdSr,)rreadrs r
LoadzIdleConfParser.LoadJs309	!IIdi     	!	!rr,)NNF)rr	r
rr*r0r4rrr
rr'scHHHH6666"!!!!!rrc4eZdZ	dZdZdZdZdZdZdS)IdleUserConfParserc 	|||r5||||krdS||||dS||s||||||dS)NFT)r"r%setr-add_section)rr&r'values    r
	SetOptionzIdleUserConfParser.SetOptionTs	??7F++
	xx((E11u&%000t##G,,
*  )))HHWfe,,,4rc^	||r|||SdS)NF)r-
remove_option)rr&r's   r
RemoveOptionzIdleUserConfParser.RemoveOptiones:	G$$	7%%gv666urc`	||s||dSdSr,)r-r9r/s  r

AddSectionzIdleUserConfParser.AddSectionns?+((	&W%%%%%	&	&rc	|D],}||s||-dSr,)sectionsr0remove_sectionr/s  r
RemoveEmptySectionsz&IdleUserConfParser.RemoveEmptySectionsssQ3}}	-	-G%%g..
-##G,,,	-	-rcV	||Sr,)rDrBr3s r
IsEmptyzIdleUserConfParser.IsEmptyys(C  """==??""rc	|j}|r|ddkr|sx	t|d}n4#t$r't	j|t|d}YnwxYw|5||ddddS#1swxYwYdStj|jrt	j	|jdSdSdSdS)Nr#w)
rrFopenOSErrorosunlinkwritepathexistsremove)rfnamers   r
SavezIdleUserConfParser.Save~sN	
	
	%U1X__<<>>	
%/"5#..GG///Ie$$$"5#..GGG/((JJw'''((((((((((((((((((	**
%	$)$$$$$
	%
	%__
%
%s!=.A.-A.3BBBN)	rr	r
r;r>r@rDrFrSrrr
r6r6Oss"&&&
---###
%%%%%rr6ceZdZ	d!dZdZdZ		d"dZdZd	Zd
Z	dZ
dZd
ZdZ
edZ		d#dZdZdZdZdZdZdZdZdZdZhdZd$dZdZdZdZdZd Z dS)%IdleConfFcd|_i|_i|_i|_|s*||dSdS)N)main	highlightkeys
extensions)config_types
defaultCfguserCfgcfgCreateConfigHandlersLoadCfgFiles)r_utests  r
rzIdleConf.__init__s]G	 %%'''	 	 rc		tjt}tjrdn|x|_}|jD]v}ttj
|d|d|j|<ttj
|pdd|d|j
|<wdS)Nzconfig-z.defrHz.cfg)rLrOdirname__file__idlelibtesting
GetUserCfgDiruserdirr[rjoinr\r6r])ridledirricfg_types    r
r_zIdleConf.CreateConfigHandlerss?'//(++'.!PD<N<N<P<PPw)	H	HH(6W&>&>&>&>??)A)ADOH%%7W^-Ex-E-E-EFF&H&HDL""	H	Hrc	d}tjd}|dkrbtj|sCtjs5d|zdz}	t
|tjn#t$rYnwxYwd}|dkrtj
}tj||}tj|sl	tj|nV#t$rItjs5d|zdz}	t
|tjn#t$rYnwxYwtwxYw|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!
)rLrO
expanduserrPrfrgprintsysstderrrKgetcwdrjmkdir
SystemExit)rcfgDiruserDirwarns    r
rhzIdleConf.GetUserCfgDirs	'$$S))c>>7>>'**
N#$&HIDd44444"c>>ikkG',,w//w~~g&&	!

!!!!!
!
!
!R#$&STDd44444"  
!sBA99
BB$C99ED43E4
E>EEENTc
$		|j|||r$|j|||||SnQ#t$rDd|d|d|d|j||||}t	||||YnwxYw	|j|||r$|j|||||Sn#t$rYnwxYw|rd|d|d|}t	|||||S)	N)r(r!z5
 Warning: config.py - IdleConf.GetOption -
 invalid z  value for configuration option z
 from section z: r zU
 Warning: config.py - IdleConf.GetOption -
 problem retrieving configuration option .
 returning default value: )r]r"r*
ValueError_warnr\)	r
configTyper&r'r)r(warn_on_defaultr!warnings	         r
	GetOptionzIdleConf.GetOptions
	
	8|J'227FCC
H|J/33GV9=34HHH
H	8	8	8	8fffggg|J/33GV3MMM	OG

':w77777
	8	z*55gfEE
=z266d7===
=			D		8	8
	2G

':w777s&AA		ABBAC!!
C.-C.cL	|j||||dSr,)r]r;)rr~r&r'r:s     r
r;zIdleConf.SetOptions*>Z **7FEBBBBBrc	||jvrtd|dkr|j|}n#|dkr|j|}nt	d|S)NzInvalid configType specifieduserr)Invalid configSet specified)r[rr]r\rrB)r	configSetr~	cfgParsers    r
GetSectionListzIdleConf.GetSectionListsy	
d///#$BCCCZ0II
)
#
#oj1II"#@AAA!!###rc	|jd|rdnd}|||}||dz}|dkrd}||dz}||dS)	NrXr)rz-foregroundcursornormalz-background)
foreground
background)r\r-GetThemeDict)rthemeelementr^
theme_dictforebacks       r
GetHighlightzIdleConf.GetHighlights	
!OK8DDUKKyy	&&sE22
'M12hG'M12"$777rc	|dkr|jd}n#|dkr|jd}ntdiddddd	dd
dddddd
dddddddddddddddddddddddddddddddddddd}|D]q}|||s8|ds#d|d|d||}t|d|||||||||<r|S)NrrXr)zInvalid theme type specifiedznormal-foregroundz#000000znormal-backgroundz#ffffffzkeyword-foregroundzkeyword-backgroundzbuiltin-foregroundzbuiltin-backgroundzcomment-foregroundzcomment-backgroundzstring-foregroundzstring-backgroundzdefinition-foregroundzdefinition-backgroundzhilite-foregroundzhilite-backgroundgrayzbreak-foregroundzbreak-backgroundzhit-foreground)zhit-backgroundzerror-foregroundzerror-backgroundzcontext-foregroundzcontext-backgroundzlinenumber-foregroundzlinenumber-backgroundzcursor-foregroundzstdout-foregroundzstdout-backgroundzstderr-foregroundzstderr-backgroundzconsole-foregroundzconsole-background)zcontext-zlinenumber-zL
 Warning: config.IdleConf.GetThemeDict -
 problem retrieving theme element z
 from theme z.
 returning default color: r))r]r\rr"
startswithr}r*)rr(	themeNamerrrrs       r
rzIdleConf.GetThemeDict!s	6>>[1II
Y

4II=>>>!#I!#I!$Y!%Y!%Y	!
%Y!%Y
!%Y!$I!$I!(	!(	!$I!$F!#9!#9! !!!""+#,#,%.%.(1(1$-$-$-$-$-%.%.A!!!D	@	@G((G<<	
@&&'BCC	
@	
@$GGYYYg	@
g{Iw???&]]wg+@@E'NNrc.	|dS)NThemecurrent_colors_and_keysr3s r
CurrentThemezIdleConf.CurrentThemeesC++G444rc.	|dS)NKeysrr3s r
CurrentKeyszIdleConf.CurrentKeysis>++F333rcR	|dkrdnd}|d|ddd}d	}|r|d|d
d	}|s|d|dd	}|r-|r|jn|j}|||r|S|dkrd
n|S)NrrXrYrWr)rTr(r)rcname2rnamezIDLE Classic)rr\r]r-default_keys)rr&cfgnamer)rsources      r
rz IdleConf.current_colors_and_keysms	.")G!3!3++..)&,d!<<	H>>&'7B>GGD	G>>&'62>FFD	(/AT__T\Fg**400
!(G!3!3~~9J9J9L9LLrc^tjdddkrdStjdkrdSdS)NwinzIDLE Classic WindowsdarwinzIDLE Classic OSXzIDLE Modern Unix)rrplatformrrr
rzIdleConf.default_keyss7<u$$))
\X
%
%%%%%rc		||dd}||dd}|D]}||vr||dD]}|||rtg}|D]m}|d|dddrQ|s|r8|rd	}nd
}|d||dddr||X||n|S|S)
Nr)rZr)AutoCompleteCodeContextFormatParagraph
ParenMatchenableTrr)r(
enable_editorenable_shellF)r)r(r)RemoveKeyBindNamesrappendrQr)	ractive_onlyeditor_only
shell_onlyextns	userExtnsextnactiveExtnsr's	         r

GetExtensionszIdleConf.GetExtensionssw	''##I|<<>>++##FL99;;		#	#D5  T"""5		DLL	K
1
1>>,h'-"//
1#
1j
1&4%4FF%3F>>,V26V:?*AA5(..t444#**4000Lrc	d|DS)Nc<g|]}|d|S))	_bindings_cfgBindings)endswith).0ns  r

<listcomp>z/IdleConf.RemoveKeyBindNames.<locals>.<listcomp>s*YYYaqzz:W/X/XYYYYrr)rextnNameLists  r
rzIdleConf.RemoveKeyBindNamessDYY<YYYYrc	d}d|zdz}|dD]"}||D]
}||kr|}#|S)N<<>>rr)rGetExtensionKeys)rvirtualEventextNamevEventrevents      r
GetExtnNameForEventzIdleConf.GetExtnNameForEventsu	
$t+&&1&55	#	#D..t44
#
#F??"G
#rc	|dz}|}i}|jd|r:|jd|}|D]}d|zdz}||}|||<|S)NrrZrr)GetCurrentKeySetr\r-r0)	r
extensionNamekeysName
activeKeysextKeys
eventNames	eventNamerbindings	         r
rzIdleConf.GetExtensionKeyss	!>1**,,
?<(44X>>	)6DDXNNJ'
)
)	y(4/$U+!(rc	|dz}i}|jd|r]|jd|}|D]:}|d||d}d|zdz}|||<;|S)NrrZrcrrr)r\r-r0rsplit)rrrrrrrrs        r
__GetRawExtensionKeyszIdleConf.__GetRawExtensionKeyss	!/?<(44X>>	)6DDXNNJ'
)
)	..$h	2)GGGLuwwy(4/!(rc6	|dz}||}|jd|r]|jd|}|D]:}|d||d}d|zdz}|||<;|S)NrrZrcrrr)rr\r-r0rr)rr	bindsNameextBindsrrrrs        r
GetExtensionBindingszIdleConf.GetExtensionBindingss	"K/	((77?<(44Y??	*6DDYOOJ'
*
*	..$iB)HHHMy(4/")rct	|dd}|d||dd}|S)NrYrcF)r)r)rr)r
keySetNameeventStrrrs     r

GetKeyBindingzIdleConf.GetKeyBindingsJ	
QrTN	..Y16!888=	rc	||}tjdkr1|D]\}}d|D}||kr|||<|S)Nrc:g|]}|ddS)z<Alt-z<Option-)replace)rxs  r
rz-IdleConf.GetCurrentKeySet.<locals>.<listcomp>%s&BBB!qyy*55BBBr)	GetKeySetrrrritems)rresultkvv2s     r
rzIdleConf.GetCurrentKeySetsw9 0 0 2 233<8##
#
#1BBqBBB77 "F1I
rc	||}|d}|D]J}||}|r1|D].}|||vrd||<||||</K|S)Nrrc)GetCoreKeysr_IdleConf__GetRawExtensionKeysvalues)rrkeySetrrrrs       r
rzIdleConf.GetKeySet+s	
!!*--((Q(77	3	3D0066G
3$33Eu~88)+$+ENF5MM
rc<	d|zdz|vS)Nrr)r)rrs  r

IsCoreBindingzIdleConf.IsCoreBinding=s*	
\!$&4+;+;+=+===r>	<<run-custom>><<run-module>><<expand-word>><<flash-paren>><<zoom-height>><<check-module>><<format-paragraph>><<force-open-calltip>><<force-open-completions>>c	,	idddgdddgddd	gd
ddgd
dgddgddgddgddgddgddgddgddgddgdd gd!d"gd#d$gid%d&gd'd(gd)d*gd+d,gd-d.gd/d0gd1d2gd3d4gd5d6gd7d8gd9d:gd;d<gd=d>gd?d@dAgdBdCgdDdEgdFdGgidHdIgdJdKgdLdMgdNdOdPgdQdRgdSdTgdUdVgdWdXgdYdZgd[d\gd]d^gd_d`gdadbgdcddgdedfgdgdhgdidjgdkgdlgdmgdngdogdpgdqgdr}|r|jds|s8|jds|sdt|du}t|ds|nO|D]L}|||}|r|||< ||jvr#dv|dw|dx||}t|ds||M|S)yNz<<copy>>z<Control-c>z<Control-C>z<<cut>>z<Control-x>z<Control-X>z	<<paste>>z<Control-v>z<Control-V>z<<beginning-of-line>>z<Control-a>z<Home>z<<center-insert>>z<Control-l>z<<close-all-windows>>z<Control-q>z<<close-window>>z<Alt-F4>z<<do-nothing>>z<<end-of-file>>z<Control-d>z<<python-docs>>z<F1>z<<python-context-help>>z
<Shift-F1>z<<history-next>>z<Alt-n>z<<history-previous>>z<Alt-p>z<<interrupt-execution>>z<<view-restart>>z<F6>z<<restart-shell>>z<Control-F6>z<<open-class-browser>>z<Alt-c>z<<open-module>>z<Alt-m>z<<open-new-window>>z<Control-n>z<<open-window-from-file>>z<Control-o>z<<plain-newline-and-indent>>z<Control-j>z<<print-window>>z<Control-p>z<<redo>>z<Control-y>z<<remove-selection>>z<Escape>z<<save-copy-of-window-as-file>>z
<Alt-Shift-S>z<<save-window-as-file>>z<Alt-s>z<<save-window>>z<Control-s>z<<select-all>>z<Alt-a>z<<toggle-auto-coloring>>z<Control-slash>z<<undo>>z<Control-z>z<<find-again>>z<Control-g>z<F3>z<<find-in-files>>z<Alt-F3>z<<find-selection>>z<Control-F3>z<<find>>z<Control-f>z<<replace>>z<Control-h>z
<<goto-line>>z<Alt-g>z<<smart-backspace>>z<Key-BackSpace>z<<newline-and-indent>>z<Key-Return>z<Key-KP_Enter>z<<smart-indent>>z	<Key-Tab>z<<indent-region>>z<Control-Key-bracketright>z<<dedent-region>>z<Control-Key-bracketleft>z<<comment-region>>z<Alt-Key-3>z<<uncomment-region>>z<Alt-Key-4>z<<tabify-region>>z<Alt-Key-5>z<<untabify-region>>z<Alt-Key-6>z<<toggle-tabs>>z<Alt-Key-t>z<<change-indentwidth>>z<Alt-Key-u>z<<del-word-left>>z<Control-Key-BackSpace>z<<del-word-right>>z<Control-Key-Delete>rz<Control-Key-space>rz<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>)rrrrrrrrYz7
 Warning: config.py - IdleConf.GetCoreKeys -
 key set z( is not defined, using default bindings.zX
 Warning: config.py - IdleConf.GetCoreKeys -
 problem retrieving key binding for event z
 from key set r{)r]r-r\r}rformer_extension_events)rrkeyBindingsrrrs      r
rzIdleConf.GetCoreKeysOsz	<
6<

}5<
-7	<

$mX%><
 -
<
$m_<
<
}o<

<
x<
&~<
<
#YK<
&
< 
!<"
 .!1#<$
%yk%<<&
	{'<(
"M?)<*
(-+<,
+]O-<.
/<0
1<2
#ZL3<4
./@5<6
&	{7<8

9<:
yk;<<
'):(;=<>
?<@
}f5A<B
 *C<D
!>"2E<F
G<<<H
M?I<J
i[K<L
"$5#6M<N
%~7G&HO<P

Q<R
 ">!?S<T
 "=!>U<V
!=/W<X
#]OY<Z
 -[<\
"M?]<^

_<`
%}oa<b
 ";!<c<d
!#9":e<f
)+@*Ag<h
 12i<<j(A&A 12%2O)l/0!. -w<<<|	BL(44Z@@
BOF+77
CC
B
B
 ZZ"
gvz2222(
B
BE"00UCCGB-4E**d&BBBB#UUJJJE0B0B	D gvz5AAArc	g}|dkr|jd}n#|dkr|jd}ntd|d}|D]}|d|d}|ddkrd	}d	}nI|d}|d
}|d}|r|r||||f|	d
|S)NrrWr)r	HelpFiles;rrcrrc|dS)Nrr)rs r
<lambda>z1IdleConf.GetExtraHelpSourceList.<locals>.<lambda>s
qtr)key)
r]r\rr0r*findrstriprsort)	rrhelpSourcesrr.r'r:menuItemhelpPaths	         r
GetExtraHelpSourceListzIdleConf.GetExtraHelpSourceLists.	V,II
)
#
#/II"#@AAA''44
	A
	AF--VS-AAEzz#"$$kk#&&q))q))
AH
A""Xhv$>@@@^^,,,rc^	|d|dz}|S)Nr)r)r)rallHelpSourcess  r
GetAllExtraHelpSourcesListz#IdleConf.GetAllExtraHelpSourcesLists8	55i@@++F334rcP	|||dd}|||ddd}|||dd	d
}|dkrJtdd
|}tj|}|d}|d}|d	krd}|ddk}|||rdndfS)Nfontcourierrz	font-sizer10rz	font-boldrrrTkFixedFontT)rrProotfamilysize
weightboldr)rractual)	rrr~r&rr r#f
actualFonts	         r
GetFontzIdleConf.GetFonts		
GVYOO~~j';U&*,,~~j';#)++m##-4@@@AQJ)Ff%Dqyyh'61D:ff(;;rc	|jD]@}|j||j|AdSr,)r\r4r]rrs  r
r`zIdleConf.LoadCfgFilessU'?	%	%COC %%'''L""$$$$	%	%rcZ	|jD]!}|j|"dSr,)r]rSr)s  r
SaveUserCfgFileszIdleConf.SaveUserCfgFiless<<<	%	%CL""$$$$	%	%r)F)NNTF)TFFr,)!rr	r
rr_rhrr;rrrrrrstaticmethodrrrrrrrrrrrrrrrr'r`r+rrr
rUrUs	
 
 
 
 HHH"""HIM,1&&&&PCCC$$$ 
8
8
8BBBH555444$M$M$ML&&\&)-49''''RZZZ$$(			"$>>>````D@<<<4%%%%%%%%rrUc|f|z}|tvrI	t|tjn#t$rYnwxYwt|dSdS)Nro)_warnedrqrrrsrKadd)msgrs  r
r}r}su&3,C
'	#CJ'''''			D	Cs-
::cDeZdZ	dZdZedZdZdZdZ	dS)
ConfigChangesc~	g|_tjD]'}i||<|j||(dSr,)pagesidleConfr[r)rconfig_types  r
rzConfigChanges.__init__ sP3
#0	1	1K "DJd;/0000	1	1rc^	||}t|}||vri||<||||<dSr,)str)rr6r&itemr:pages      r

add_optionzConfigChanges.add_option'sB:K E

$DM#W
drc>	tj|||rPtj||||kr&tj|||Stj||||Sr,)r5r\r"r*r]r>r;)r6r&r9r:s    r
save_optionzConfigChanges.save_option/s	{+66wEE	Q";/33GTBBeKK'4AA'4PPP,66weLLLrc		tjdd}|D]}d}||}|D]i}|dkr'tjddd}||D]\}}|||||rd} j|r&tj|d}dD]&}tj|'||S)NrWFr	T)rYrX)r5r]rSrCrr=clear)rchangedr6cfg_type_changedr:r&r9r:s        r
save_allzConfigChanges.save_all<s8	
	 %%'''		K$$D
0
0k))$V,;;KHHH'+$#'=#6#6#8#800KD%''WdEJJ0+/(0 
 -224440	1	1K[)..0000

rc	|||vr	|||=tj|}|||dSr,)r5r]rCrS)rr6r&
configpages    r
delete_sectionzConfigChanges.delete_sectionZs]	d;'''[!'*%k2
!!'***rcD	|jD]}|dSr,)r4r?)rr:s  r
r?zConfigChanges.cleares3	
J		DJJLLLL		rN)
rr	r
rr;r,r=rBrEr?rrr
r2r2
s$111$$$
M
M\
M<			rr2cddlmd\fdfd}|tj|tjtddd	dS)
Nr)crc32)rrct|}dz
|dt|dS)Nrzutf-8)encoding)r8encoderq)objtxtcrcrHlines  r
sprintz_dump.<locals>.sprinttsE#hh	eCJJJ00#66
c




rc
ztd|dt|D]}||}|||D]c}|||}|||D]-}|dz||||z.ddS)N
z = )rqsortedrBr.r*)r^rrBr&r.r'rPs      r
dumpCfgz_dump.<locals>.dumpCfg|s
dC#;;		K		KC3x((**HF3KKKF8#
K
Kc(**733ww%KKFF6E>CHLL&,I,IIJJJJK	
K			K		Krz	
lines = z, crc = rc)sep)zlibrHr5r\r]rq)rTrNrHrOrPs @@@@r
_dumprWpsID#KKKKKGH   GH	,j#2666666r__main__)rWzidlelib.idle_test.test_configrF)	verbosityexit)configparserrrLrrtkinter.fontrrf	Exceptionrrrrr6rUr5r8r.r}dictr2rWrunittestrWrrr
<module>r`s6&%%%%%				



(((((	((('''''y'''#####9###&!&!&!&!&!\&!&!&!P@%@%@%@%@%@%@%@%Dl	%l	%l	%l	%l	%l	%l	%l	%^8::

#%%_____D___F777<zD	(AEBBBB	EGGGGG	r