PNG  IHDRX cHRMz&u0`:pQ<bKGD pHYsodtIME MeqIDATxw]Wug^Qd˶ 6`!N:!@xI~)%7%@Bh&`lnjVF29gΨ4E$|>cɚ{gk= %,a KX%,a KX%,a KX%,a KX%,a KX%,a KX%, b` ǟzeאfp]<!SJmɤY޲ڿ,%c ~ع9VH.!Ͳz&QynֺTkRR.BLHi٪:l;@(!MԴ=žI,:o&N'Kù\vRmJ雵֫AWic H@" !: Cé||]k-Ha oݜ:y F())u]aG7*JV@J415p=sZH!=!DRʯvɱh~V\}v/GKY$n]"X"}t@ xS76^[bw4dsce)2dU0 CkMa-U5tvLƀ~mlMwfGE/-]7XAƟ`׮g ewxwC4\[~7@O-Q( a*XGƒ{ ՟}$_y3tĐƤatgvێi|K=uVyrŲlLӪuܿzwk$m87k( `múcE)"@rK( z4$D; 2kW=Xb$V[Ru819קR~qloѱDyįݎ*mxw]y5e4K@ЃI0A D@"BDk_)N\8͜9dz"fK0zɿvM /.:2O{ Nb=M=7>??Zuo32 DLD@D| &+֎C #B8ַ`bOb $D#ͮҪtx]%`ES`Ru[=¾!@Od37LJ0!OIR4m]GZRJu$‡c=%~s@6SKy?CeIh:[vR@Lh | (BhAMy=݃  G"'wzn޺~8ԽSh ~T*A:xR[ܹ?X[uKL_=fDȊ؂p0}7=D$Ekq!/t.*2ʼnDbŞ}DijYaȲ(""6HA;:LzxQ‘(SQQ}*PL*fc\s `/d'QXW, e`#kPGZuŞuO{{wm[&NBTiiI0bukcA9<4@SӊH*؎4U/'2U5.(9JuDfrޱtycU%j(:RUbArLֺN)udA':uGQN"-"Is.*+k@ `Ojs@yU/ H:l;@yyTn}_yw!VkRJ4P)~y#)r,D =ě"Q]ci'%HI4ZL0"MJy 8A{ aN<8D"1#IJi >XjX֔#@>-{vN!8tRݻ^)N_╗FJEk]CT՟ YP:_|H1@ CBk]yKYp|og?*dGvzنzӴzjֺNkC~AbZƷ`.H)=!QͷVTT(| u78y֮}|[8-Vjp%2JPk[}ԉaH8Wpqhwr:vWª<}l77_~{s۴V+RCģ%WRZ\AqHifɤL36: #F:p]Bq/z{0CU6ݳEv_^k7'>sq*+kH%a`0ԣisqにtү04gVgW΂iJiS'3w.w}l6MC2uԯ|>JF5`fV5m`Y**Db1FKNttu]4ccsQNnex/87+}xaUW9y>ͯ骵G{䩓Գ3+vU}~jJ.NFRD7<aJDB1#ҳgSb,+CS?/ VG J?|?,2#M9}B)MiE+G`-wo߫V`fio(}S^4e~V4bHOYb"b#E)dda:'?}׮4繏`{7Z"uny-?ǹ;0MKx{:_pÚmFמ:F " .LFQLG)Q8qN q¯¯3wOvxDb\. BKD9_NN &L:4D{mm o^tֽ:q!ƥ}K+<"m78N< ywsard5+вz~mnG)=}lYݧNj'QJS{S :UYS-952?&O-:W}(!6Mk4+>A>j+i|<<|;ر^߉=HE|V#F)Emm#}/"y GII웻Jі94+v뾧xu~5C95~ūH>c@덉pʃ1/4-A2G%7>m;–Y,cyyaln" ?ƻ!ʪ<{~h~i y.zZB̃/,雋SiC/JFMmBH&&FAbϓO^tubbb_hZ{_QZ-sύodFgO(6]TJA˯#`۶ɟ( %$&+V'~hiYy>922 Wp74Zkq+Ovn錄c>8~GqܲcWꂎz@"1A.}T)uiW4="jJ2W7mU/N0gcqܗOO}?9/wìXžΏ0 >֩(V^Rh32!Hj5`;O28؇2#ݕf3 ?sJd8NJ@7O0 b־?lldщ̡&|9C.8RTWwxWy46ah嘦mh٤&l zCy!PY?: CJyв]dm4ǜҐR޻RլhX{FƯanшQI@x' ao(kUUuxW_Ñ줮[w8 FRJ(8˼)_mQ _!RJhm=!cVmm ?sFOnll6Qk}alY}; "baӌ~M0w,Ggw2W:G/k2%R,_=u`WU R.9T"v,<\Ik޽/2110Ӿxc0gyC&Ny޽JҢrV6N ``یeA16"J³+Rj*;BϜkZPJaÍ<Jyw:NP8/D$ 011z֊Ⱳ3ι֘k1V_"h!JPIΣ'ɜ* aEAd:ݺ>y<}Lp&PlRfTb1]o .2EW\ͮ]38؋rTJsǏP@芎sF\> P^+dYJLbJ C-xϐn> ι$nj,;Ǖa FU *择|h ~izť3ᤓ`K'-f tL7JK+vf2)V'-sFuB4i+m+@My=O҈0"|Yxoj,3]:cо3 $#uŘ%Y"y죯LebqtҢVzq¼X)~>4L׶m~[1_k?kxֺQ`\ |ٛY4Ѯr!)N9{56(iNq}O()Em]=F&u?$HypWUeB\k]JɩSع9 Zqg4ZĊo oMcjZBU]B\TUd34ݝ~:7ڶSUsB0Z3srx 7`:5xcx !qZA!;%͚7&P H<WL!džOb5kF)xor^aujƍ7 Ǡ8/p^(L>ὴ-B,{ۇWzֺ^k]3\EE@7>lYBȝR.oHnXO/}sB|.i@ɥDB4tcm,@ӣgdtJ!lH$_vN166L__'Z)y&kH;:,Y7=J 9cG) V\hjiE;gya~%ks_nC~Er er)muuMg2;֫R)Md) ,¶ 2-wr#F7<-BBn~_(o=KO㭇[Xv eN_SMgSҐ BS헃D%g_N:/pe -wkG*9yYSZS.9cREL !k}<4_Xs#FmҶ:7R$i,fi!~' # !6/S6y@kZkZcX)%5V4P]VGYq%H1!;e1MV<!ϐHO021Dp= HMs~~a)ަu7G^];git!Frl]H/L$=AeUvZE4P\.,xi {-~p?2b#amXAHq)MWǾI_r`S Hz&|{ +ʖ_= (YS(_g0a03M`I&'9vl?MM+m~}*xT۲(fY*V4x@29s{DaY"toGNTO+xCAO~4Ϳ;p`Ѫ:>Ҵ7K 3}+0 387x\)a"/E>qpWB=1 ¨"MP(\xp߫́A3+J] n[ʼnӼaTbZUWb={~2ooKױӰp(CS\S筐R*JغV&&"FA}J>G֐p1ٸbk7 ŘH$JoN <8s^yk_[;gy-;߉DV{c B yce% aJhDȶ 2IdйIB/^n0tNtџdcKj4϶v~- CBcgqx9= PJ) dMsjpYB] GD4RDWX +h{y`,3ꊕ$`zj*N^TP4L:Iz9~6s) Ga:?y*J~?OrMwP\](21sZUD ?ܟQ5Q%ggW6QdO+\@ ̪X'GxN @'4=ˋ+*VwN ne_|(/BDfj5(Dq<*tNt1х!MV.C0 32b#?n0pzj#!38}޴o1KovCJ`8ŗ_"]] rDUy޲@ Ȗ-;xџ'^Y`zEd?0„ DAL18IS]VGq\4o !swV7ˣι%4FѮ~}6)OgS[~Q vcYbL!wG3 7띸*E Pql8=jT\꘿I(z<[6OrR8ºC~ډ]=rNl[g|v TMTղb-o}OrP^Q]<98S¤!k)G(Vkwyqyr޽Nv`N/e p/~NAOk \I:G6]4+K;j$R:Mi #*[AȚT,ʰ,;N{HZTGMoּy) ]%dHء9Պ䠬|<45,\=[bƟ8QXeB3- &dҩ^{>/86bXmZ]]yޚN[(WAHL$YAgDKp=5GHjU&99v簪C0vygln*P)9^͞}lMuiH!̍#DoRBn9l@ xA/_v=ȺT{7Yt2N"4!YN`ae >Q<XMydEB`VU}u]嫇.%e^ánE87Mu\t`cP=AD/G)sI"@MP;)]%fH9'FNsj1pVhY&9=0pfuJ&gޤx+k:!r˭wkl03׼Ku C &ѓYt{.O.zҏ z}/tf_wEp2gvX)GN#I ݭ߽v/ .& и(ZF{e"=V!{zW`, ]+LGz"(UJp|j( #V4, 8B 0 9OkRrlɱl94)'VH9=9W|>PS['G(*I1==C<5"Pg+x'K5EMd؞Af8lG ?D FtoB[je?{k3zQ vZ;%Ɠ,]E>KZ+T/ EJxOZ1i #T<@ I}q9/t'zi(EMqw`mYkU6;[t4DPeckeM;H}_g pMww}k6#H㶏+b8雡Sxp)&C $@'b,fPߑt$RbJ'vznuS ~8='72_`{q纶|Q)Xk}cPz9p7O:'|G~8wx(a 0QCko|0ASD>Ip=4Q, d|F8RcU"/KM opKle M3#i0c%<7׿p&pZq[TR"BpqauIp$ 8~Ĩ!8Սx\ւdT>>Z40ks7 z2IQ}ItԀ<-%S⍤};zIb$I 5K}Q͙D8UguWE$Jh )cu4N tZl+[]M4k8֦Zeq֮M7uIqG 1==tLtR,ƜSrHYt&QP윯Lg' I,3@P'}'R˪e/%-Auv·ñ\> vDJzlӾNv5:|K/Jb6KI9)Zh*ZAi`?S {aiVDԲuy5W7pWeQJk֤#5&V<̺@/GH?^τZL|IJNvI:'P=Ϛt"¨=cud S Q.Ki0 !cJy;LJR;G{BJy޺[^8fK6)=yʊ+(k|&xQ2`L?Ȓ2@Mf 0C`6-%pKpm')c$׻K5[J*U[/#hH!6acB JA _|uMvDyk y)6OPYjœ50VT K}cǻP[ $:]4MEA.y)|B)cf-A?(e|lɉ#P9V)[9t.EiQPDѠ3ϴ;E:+Օ t ȥ~|_N2,ZJLt4! %ա]u {+=p.GhNcŞQI?Nd'yeh n7zi1DB)1S | S#ًZs2|Ɛy$F SxeX{7Vl.Src3E℃Q>b6G ўYCmtկ~=K0f(=LrAS GN'ɹ9<\!a`)֕y[uՍ[09` 9 +57ts6}b4{oqd+J5fa/,97J#6yν99mRWxJyѡyu_TJc`~W>l^q#Ts#2"nD1%fS)FU w{ܯ R{ ˎ󅃏џDsZSQS;LV;7 Od1&1n$ N /.q3~eNɪ]E#oM~}v֯FڦwyZ=<<>Xo稯lfMFV6p02|*=tV!c~]fa5Y^Q_WN|Vs 0ҘދU97OI'N2'8N֭fgg-}V%y]U4 峧p*91#9U kCac_AFңĪy뚇Y_AiuYyTTYЗ-(!JFLt›17uTozc. S;7A&&<ԋ5y;Ro+:' *eYJkWR[@F %SHWP 72k4 qLd'J "zB6{AC0ƁA6U.'F3:Ȅ(9ΜL;D]m8ڥ9}dU "v!;*13Rg^fJyShyy5auA?ɩGHRjo^]׽S)Fm\toy 4WQS@mE#%5ʈfFYDX ~D5Ϡ9tE9So_aU4?Ѽm%&c{n>.KW1Tlb}:j uGi(JgcYj0qn+>) %\!4{LaJso d||u//P_y7iRJ߬nHOy) l+@$($VFIQ9%EeKʈU. ia&FY̒mZ=)+qqoQn >L!qCiDB;Y<%} OgBxB!ØuG)WG9y(Ą{_yesuZmZZey'Wg#C~1Cev@0D $a@˲(.._GimA:uyw֬%;@!JkQVM_Ow:P.s\)ot- ˹"`B,e CRtaEUP<0'}r3[>?G8xU~Nqu;Wm8\RIkբ^5@k+5(By'L&'gBJ3ݶ!/㮻w҅ yqPWUg<e"Qy*167΃sJ\oz]T*UQ<\FԎ`HaNmڜ6DysCask8wP8y9``GJ9lF\G g's Nn͵MLN֪u$| /|7=]O)6s !ĴAKh]q_ap $HH'\1jB^s\|- W1:=6lJBqjY^LsPk""`]w)󭃈,(HC ?䔨Y$Sʣ{4Z+0NvQkhol6C.婧/u]FwiVjZka&%6\F*Ny#8O,22+|Db~d ~Çwc N:FuuCe&oZ(l;@ee-+Wn`44AMK➝2BRՈt7g*1gph9N) *"TF*R(#'88pm=}X]u[i7bEc|\~EMn}P瘊J)K.0i1M6=7'_\kaZ(Th{K*GJyytw"IO-PWJk)..axӝ47"89Cc7ĐBiZx 7m!fy|ϿF9CbȩV 9V-՛^pV̌ɄS#Bv4-@]Vxt-Z, &ֺ*diؠ2^VXbs֔Ìl.jQ]Y[47gj=幽ex)A0ip׳ W2[ᎇhuE^~q흙L} #-b۸oFJ_QP3r6jr+"nfzRJTUqoaۍ /$d8Mx'ݓ= OՃ| )$2mcM*cЙj}f };n YG w0Ia!1Q.oYfr]DyISaP}"dIӗթO67jqR ҊƐƈaɤGG|h;t]䗖oSv|iZqX)oalv;۩meEJ\!8=$4QU4Xo&VEĊ YS^E#d,yX_> ۘ-e\ "Wa6uLĜZi`aD9.% w~mB(02G[6y.773a7 /=o7D)$Z 66 $bY^\CuP. (x'"J60׿Y:Oi;F{w佩b+\Yi`TDWa~|VH)8q/=9!g߆2Y)?ND)%?Ǐ`k/sn:;O299yB=a[Ng 3˲N}vLNy;*?x?~L&=xyӴ~}q{qE*IQ^^ͧvü{Huu=R|>JyUlZV, B~/YF!Y\u_ݼF{_C)LD]m {H 0ihhadd nUkf3oٺCvE\)QJi+֥@tDJkB$1!Đr0XQ|q?d2) Ӣ_}qv-< FŊ߫%roppVBwü~JidY4:}L6M7f٬F "?71<2#?Jyy4뷢<_a7_=Q E=S1И/9{+93֮E{ǂw{))?maÆm(uLE#lïZ  ~d];+]h j?!|$F}*"4(v'8s<ŏUkm7^7no1w2ؗ}TrͿEk>p'8OB7d7R(A 9.*Mi^ͳ; eeUwS+C)uO@ =Sy]` }l8^ZzRXj[^iUɺ$tj))<sbDJfg=Pk_{xaKo1:-uyG0M ԃ\0Lvuy'ȱc2Ji AdyVgVh!{]/&}}ċJ#%d !+87<;qN޼Nفl|1N:8ya  8}k¾+-$4FiZYÔXk*I&'@iI99)HSh4+2G:tGhS^繿 Kتm0 вDk}֚+QT4;sC}rՅE,8CX-e~>G&'9xpW,%Fh,Ry56Y–hW-(v_,? ; qrBk4-V7HQ;ˇ^Gv1JVV%,ik;D_W!))+BoS4QsTM;gt+ndS-~:11Sgv!0qRVh!"Ȋ(̦Yl.]PQWgٳE'`%W1{ndΗBk|Ž7ʒR~,lnoa&:ü$ 3<a[CBݮwt"o\ePJ=Hz"_c^Z.#ˆ*x z̝grY]tdkP*:97YľXyBkD4N.C_[;F9`8& !AMO c `@BA& Ost\-\NX+Xp < !bj3C&QL+*&kAQ=04}cC!9~820G'PC9xa!w&bo_1 Sw"ܱ V )Yl3+ס2KoXOx]"`^WOy :3GO0g;%Yv㐫(R/r (s } u B &FeYZh0y> =2<Ϟc/ -u= c&׭,.0"g"7 6T!vl#sc>{u/Oh Bᾈ)۴74]x7 gMӒ"d]U)}" v4co[ ɡs 5Gg=XR14?5A}D "b{0$L .\4y{_fe:kVS\\O]c^W52LSBDM! C3Dhr̦RtArx4&agaN3Cf<Ԉp4~ B'"1@.b_/xQ} _߃҉/gٓ2Qkqp0շpZ2fԫYz< 4L.Cyυι1t@鎫Fe sYfsF}^ V}N<_`p)alٶ "(XEAVZ<)2},:Ir*#m_YӼ R%a||EƼIJ,,+f"96r/}0jE/)s)cjW#w'Sʯ5<66lj$a~3Kʛy 2:cZ:Yh))+a߭K::N,Q F'qB]={.]h85C9cr=}*rk?vwV렵ٸW Rs%}rNAkDv|uFLBkWY YkX מ|)1!$#3%y?pF<@<Rr0}: }\J [5FRxY<9"SQdE(Q*Qʻ)q1E0B_O24[U'],lOb ]~WjHޏTQ5Syu wq)xnw8~)c 쫬gٲߠ H% k5dƝk> kEj,0% b"vi2Wس_CuK)K{n|>t{P1򨾜j>'kEkƗBg*H%'_aY6Bn!TL&ɌOb{c`'d^{t\i^[uɐ[}q0lM˕G:‚4kb祔c^:?bpg… +37stH:0}en6x˟%/<]BL&* 5&fK9Mq)/iyqtA%kUe[ڛKN]Ě^,"`/ s[EQQm?|XJ߅92m]G.E΃ח U*Cn.j_)Tѧj̿30ڇ!A0=͜ar I3$C^-9#|pk!)?7.x9 @OO;WƝZBFU keZ75F6Tc6"ZȚs2y/1 ʵ:u4xa`C>6Rb/Yм)^=+~uRd`/|_8xbB0?Ft||Z\##|K 0>>zxv8۴吅q 8ĥ)"6>~\8:qM}#͚'ĉ#p\׶ l#bA?)|g g9|8jP(cr,BwV (WliVxxᡁ@0Okn;ɥh$_ckCgriv}>=wGzβ KkBɛ[˪ !J)h&k2%07δt}!d<9;I&0wV/ v 0<H}L&8ob%Hi|޶o&h1L|u֦y~󛱢8fٲUsւ)0oiFx2}X[zVYr_;N(w]_4B@OanC?gĦx>мgx>ΛToZoOMp>40>V Oy V9iq!4 LN,ˢu{jsz]|"R޻&'ƚ{53ўFu(<٪9:΋]B;)B>1::8;~)Yt|0(pw2N%&X,URBK)3\zz&}ax4;ǟ(tLNg{N|Ǽ\G#C9g$^\}p?556]/RP.90 k,U8/u776s ʪ_01چ|\N 0VV*3H鴃J7iI!wG_^ypl}r*jɤSR 5QN@ iZ#1ٰy;_\3\BQQ x:WJv츟ٯ$"@6 S#qe딇(/P( Dy~TOϻ<4:-+F`0||;Xl-"uw$Цi󼕝mKʩorz"mϺ$F:~E'ҐvD\y?Rr8_He@ e~O,T.(ފR*cY^m|cVR[8 JҡSm!ΆԨb)RHG{?MpqrmN>߶Y)\p,d#xۆWY*,l6]v0h15M˙MS8+EdI='LBJIH7_9{Caз*Lq,dt >+~ّeʏ?xԕ4bBAŚjﵫ!'\Ը$WNvKO}ӽmSşذqsOy?\[,d@'73'j%kOe`1.g2"e =YIzS2|zŐƄa\U,dP;jhhhaxǶ?КZ՚.q SE+XrbOu%\GتX(H,N^~]JyEZQKceTQ]VGYqnah;y$cQahT&QPZ*iZ8UQQM.qo/T\7X"u?Mttl2Xq(IoW{R^ ux*SYJ! 4S.Jy~ BROS[V|žKNɛP(L6V^|cR7i7nZW1Fd@ Ara{詑|(T*dN]Ko?s=@ |_EvF]׍kR)eBJc" MUUbY6`~V޴dJKß&~'d3i WWWWWW
Current Directory: /usr/share/emacs/24.3/lisp
Viewing File: /usr/share/emacs/24.3/lisp/ielm.elc
;ELC ;;; Compiled by mockbuild@buildfarm01-new.corp.cloudlinux.com on Tue Nov 11 12:48:22 2025 ;;; from file /builddir/build/BUILD/emacs-24.3/lisp/ielm.el ;;; in Emacs version 24.3.1 ;;; with all optimizations. ;;; This file uses dynamic docstrings, first added in Emacs 19.29. ;;; This file does not contain utf-8 non-ASCII characters, ;;; and so can be loaded in Emacs versions earlier than 23. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\300\301!\210\300\302!\210\303\304\305\306\307\310%\210\311\312\313\314\315\316\307\304&\210\311\317\313\320\315\316\307\304\321\322& \210\311\323\324\325\315\326\307\304&\207" [require comint pp custom-declare-group ielm nil "Interaction mode for Emacs Lisp." :group lisp custom-declare-variable ielm-noisy t "If non-nil, IELM will beep on error." :type boolean ielm-prompt-read-only "If non-nil, the IELM prompt is read only.\nThe read only region includes the newline before the prompt.\nSetting this variable does not affect existing IELM runs.\nThis works by setting the buffer-local value of `comint-prompt-read-only'.\nSetting that value directly affects new prompts in the current buffer.\n\nIf this option is enabled, then the safe way to temporarily\noverride the read-only-ness of IELM prompts is to call\n`comint-kill-whole-line' or `comint-kill-region' with no\nnarrowing in effect. This way you will be certain that none of\nthe remaining prompts will be accidentally messed up. You may\nwish to put something like the following in your init file:\n\n(add-hook 'ielm-mode-hook\n (lambda ()\n (define-key ielm-map \"\\C-w\" 'comint-kill-region)\n (define-key ielm-map [C-S-backspace]\n 'comint-kill-whole-line)))\n\nIf you set `comint-prompt-read-only' to t, you might wish to use\n`comint-mode-hook' and `comint-mode-map' instead of\n`ielm-mode-hook' and `ielm-map'. That will affect all comint\nbuffers, including IELM buffers. If you sometimes use IELM on\ntext-only terminals or with `emacs -nw', you might wish to use\nanother binding for `comint-kill-whole-line'." :version "22.1" ielm-prompt "ELISP> " "Prompt used in IELM.\nSetting this variable does not affect existing IELM runs.\n\nInterrupting the IELM process with \\<ielm-map>\\[comint-interrupt-subjob],\nand then restarting it using \\[ielm], makes the then current\ndefault value affect _new_ prompts. Unless the new prompt\ndiffers only in text properties from the old one, IELM will no\nlonger recognize the old prompts. However, executing \\[ielm]\ndoes not update the prompt of an *ielm* buffer with a running process.\nFor IELM buffers that are not called `*ielm*', you can execute\n\\[inferior-emacs-lisp-mode] in that IELM buffer to update the value,\nfor new prompts. This works even if the buffer has a running process." string] 10) #@213 Stored value of `ielm-prompt' in the current IELM buffer. This is an internal variable used by IELM. Its purpose is to prevent a running IELM process from being messed up when the user customizes `ielm-prompt'. (defvar ielm-prompt-internal "ELISP> " (#$ . 2910)) (byte-code "\300\301\302\303\304\305\306\307&\210\300\310\302\311\304\305\306\307&\210\300\312\313\314\315\316\304\317\306\307& \210\320\321\312\"\207" [custom-declare-variable ielm-dynamic-return t "Controls whether \\<ielm-map>\\[ielm-return] has intelligent behavior in IELM.\nIf non-nil, \\[ielm-return] evaluates input for complete sexps, or inserts a newline\nand indents for incomplete sexps. If nil, always inserts newlines." :type boolean :group ielm ielm-dynamic-multiline-inputs "Force multiline inputs to start from column zero?\nIf non-nil, after entering the first line of an incomplete sexp, a newline\nwill be inserted after the prompt, moving the input to the next line.\nThis gives more frame width for large indented sexps, and allows functions\nsuch as `edebug-defun' to work with such inputs." ielm-mode-hook nil "Hooks to be run when IELM (`inferior-emacs-lisp-mode') is started." :options (turn-on-eldoc-mode) hook defvaralias inferior-emacs-lisp-mode-hook] 10) #@38 Most recent value evaluated in IELM. (defvar * nil (#$ . 4168)) #@45 Second-most-recent value evaluated in IELM. (defvar ** nil (#$ . 4238)) #@44 Third-most-recent value evaluated in IELM. (defvar *** nil (#$ . 4316)) #@46 Match data saved at the end of last command. (defvar ielm-match-data nil (#$ . 4394)) #@322 During IELM evaluation, most recent value evaluated in IELM. Normally identical to `*'. However, if the working buffer is an IELM buffer, distinct from the process buffer, then `*' gives the value in the working buffer, `*1' the value in the process buffer. The intended value is only accessible during IELM evaluation. (defvar *1 nil (#$ . 4487)) #@331 During IELM evaluation, second-most-recent value evaluated in IELM. Normally identical to `**'. However, if the working buffer is an IELM buffer, distinct from the process buffer, then `**' gives the value in the working buffer, `*2' the value in the process buffer. The intended value is only accessible during IELM evaluation. (defvar *2 nil (#$ . 4843)) #@332 During IELM evaluation, third-most-recent value evaluated in IELM. Normally identical to `***'. However, if the working buffer is an IELM buffer, distinct from the process buffer, then `***' gives the value in the working buffer, `*3' the value in the process buffer. The intended value is only accessible during IELM evaluation. (defvar *3 nil (#$ . 5208)) #@78 Buffer in which IELM sexps will be evaluated. This variable is buffer-local. (defvar ielm-working-buffer nil (#$ . 5573)) #@42 Message to display when IELM is started. (defvar ielm-header "*** Welcome to IELM *** Type (describe-mode) for help.\n" (#$ . 5701)) #@23 Keymap for IELM mode. (defvar ielm-map (byte-code "\301 \302\303\304#\210\302\305\306#\210\302\307\310#\210\302\311\312#\210\302\313\314#\210\302\315\316#\210\302\317\320#\210\302\321\322#\210\302\323\324#\210\302\325\326#\210)\207" [map make-sparse-keymap define-key " " comint-dynamic-complete " " ielm-return "\n" ielm-send-input "" eval-defun " " completion-at-point "" indent-sexp "" backward-delete-char-untabify "" ielm-change-working-buffer "" ielm-display-working-buffer "" ielm-print-working-buffer] 4) (#$ . 5841)) (defvaralias 'inferior-emacs-lisp-mode-map 'ielm-map) #@54 Additional expressions to highlight in IELM buffers. (defvar ielm-font-lock-keywords '(("\\(^\\*\\*\\*[^*]+\\*\\*\\*\\)\\(.*$\\)" (1 font-lock-comment-face) (2 font-lock-constant-face))) (#$ . 6451)) #@48 Possibly indent the current line as Lisp code. (defalias 'ielm-tab #[nil "h\300=\204 hz\301=\205\302 \210\303\207" [10 32 ielm-indent-line t] 2 (#$ . 6657) nil]) #@40 Complete the Lisp symbol before point. (defalias 'ielm-complete-symbol #[nil "\303 \304\305!\211\205\303 !\306 \210\303 U?\206* \203'\n\303 !U?\202*\304\305!+\207" [btick cbuffer ctick buffer-modified-tick get-buffer "*Completions*" lisp-complete-symbol] 4 (#$ . 6828)]) #@61 Dynamically complete filename before point, if in a string. (defalias 'ielm-complete-filename #[nil "\301\302`\"8\205 \303 \207" [comint-last-input-start 3 parse-partial-sexp comint-dynamic-complete-filename] 4 (#$ . 7114)]) #@66 Indent the current line as Lisp code if it is not a prompt line. (defalias 'ielm-indent-line #[nil "\212\300 \210n)\205 \301 \207" [comint-bol lisp-indent-line] 1 (#$ . 7347)]) #@64 Print the current IELM working buffer's name in the echo area. (defalias 'ielm-print-working-buffer #[nil "\301\302\303!\"\207" [ielm-working-buffer message "The current working buffer is: %s" buffer-name] 4 (#$ . 7531) nil]) #@147 Display the current IELM working buffer. Don't forget that selecting that buffer will change its value of `point' to its value of `window-point'! (defalias 'ielm-display-working-buffer #[nil "\301!\210\302 \207" [ielm-working-buffer display-buffer ielm-print-working-buffer] 2 (#$ . 7765) nil]) #@209 Change the current IELM working buffer to BUF. This is the buffer in which all sexps entered at the IELM prompt are evaluated. You can achieve the same effect with a call to `set-buffer' at the IELM prompt. (defalias 'ielm-change-working-buffer #[(buf) "\303!\211\203\304 !\203 \202\305\306\"\210)\307 \207" [buf buffer ielm-working-buffer get-buffer buffer-live-p error "No such buffer: %S" ielm-print-working-buffer] 4 (#$ . 8068) "bSet working buffer to: "]) #@223 Newline and indent, or evaluate the sexp before the prompt. Complete sexps are evaluated; for incomplete sexps inserts a newline and indents. If however `ielm-dynamic-return' is nil, this always simply inserts a newline. (defalias 'ielm-return #[nil "\203B\212\306\210\307\310 `\")\211@\311W\203!\312 8\204!\313 \202@\n\203>\212\314 \210 \315\316\f!+\203>\212\310 b\210\317\311!\210)\320 )\207\317 \207" [ielm-dynamic-return state ielm-dynamic-multiline-inputs comint-prompt-regexp regexp inhibit-changing-match-data nil parse-partial-sexp ielm-pm 1 3 ielm-send-input beginning-of-line t looking-at newline newline-and-indent] 4 (#$ . 8548) nil]) (defalias 'ielm-input-sender #[(_proc input) "\211\207" [input ielm-input] 2]) #@54 Evaluate the Emacs Lisp expression after the prompt. (defalias 'ielm-send-input #[nil "\301\302 \210\303!)\207" [ielm-input nil comint-send-input ielm-eval-input] 2 (#$ . 9294) nil]) #@58 Return non-nil if STRING is all whitespace or a comment. (defalias 'ielm-is-whitespace-or-comment #[(string) "\304\230\206\305\306\307\310\n #,\207" [string start regexp inhibit-changing-match-data "" "\\`[ \n]*\\(?:;.*\\)*\\'" nil t string-match] 4 (#$ . 9485)]) #@73 Evaluate the Lisp expression INPUT-STRING, and pretty-print the result. (defalias 'ielm-eval-input #[(input-string) "\306\211\211\211\307 \310 #$%&\311&!\204\267\312\313\314\217\210 \204t\315 !\2045\316#\317p\202t\311&$\306O!\203o'()\306*+,-\320.!\210\212\321\322!/r/q\210\323\216\312\324\325\217\210,\326 .,\202t\327\330# =\204\201\331\332 \"\210 \nb\210 \204\215\306\333\334\217\210 \203\2470\203\231\335 \210\f\336 \337R\211#P\202\263()'(#'\f\340P\f1P\341\342 \f\".\207" [input-string ielm-working-buffer ielm-pmark ielm-wbuf ielm-output ielm-error-type nil "" ielm-pm ielm-is-whitespace-or-comment err (byte-code "\304!\211@ A)\304\207" [ielm-string rout ielm-form ielm-pos read-from-string] 3) ((error (byte-code "\303!\304\303\207" [err ielm-result ielm-error-type error-message-string "Read error"] 2))) buffer-name "Working buffer has been killed" "IELM Error" set-match-data generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1=#:temp-buffer buffer-name kill-buffer] 2)) (byte-code "\306\216 \n\307p!\210 q\210\310\f \"p \311\312!\211q\210,\307\207" [*1 *2 *3 *** ** * ((byte-code "\203\301!\210\301\207" [ielm-temp-buffer kill-buffer] 2)) kill-buffer eval generate-new-buffer " *ielm-temp*" ielm-wbuf ielm-form lexical-binding ielm-result ielm-temp-buffer] 4) ((error (byte-code "\303!\304\303\207" [err ielm-result ielm-error-type error-message-string "Eval error"] 2)) (quit (byte-code "\302\303\304\207" [ielm-result ielm-error-type "Quit during evaluation" "Eval error" nil] 1))) match-data "IELM error" "More than one sexp in input" message "current buffer is now: %s" (byte-code "\302 !P\302\207" [ielm-output ielm-result pp-to-string] 3) ((error (byte-code "\302\303\304\207" [ielm-error-type ielm-result "IELM Error" "Error during pretty-printing (bug in pp)" nil] 1)) (quit (byte-code "\302\303\304\207" [ielm-error-type ielm-result "IELM Error" "Quit during pretty-printing" nil] 1))) ding "*** " " *** " "\n" comint-output-filter ielm-process ielm-result ielm-pos ielm-form ielm-string * ** *** ielm-temp-buffer *3 *2 *1 ielm-match-data #1# ielm-noisy ielm-prompt-internal] 9 (#$ . 9765)]) (defalias 'ielm-process #[nil "\300p!\207" [get-buffer-process] 2]) (defalias 'ielm-pm #[nil "\300\301p!!\207" [process-mark get-buffer-process] 3]) (defalias 'ielm-set-pm #[(pos) "\301\302p!!\303\223\207" [pos process-mark get-buffer-process nil] 3]) (byte-code "\300\301N\204\302\300\301\303\304!#\210\305\306!\204\302\306\307\310#\210\300\207" [inferior-emacs-lisp-mode-hook variable-documentation put purecopy "Hook run when entering IELM mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it. (This is true for all hook variables.)" boundp inferior-emacs-lisp-mode-map definition-name inferior-emacs-lisp-mode] 5) (defvar inferior-emacs-lisp-mode-map (make-sparse-keymap)) (byte-code "\300\301N\204\302\300\301\303\304!#\210\302\305\306\307#\207" [inferior-emacs-lisp-mode-map variable-documentation put purecopy "Keymap for `inferior-emacs-lisp-mode'." inferior-emacs-lisp-mode-abbrev-table definition-name inferior-emacs-lisp-mode] 5) (defvar inferior-emacs-lisp-mode-abbrev-table (progn (define-abbrev-table 'inferior-emacs-lisp-mode-abbrev-table nil) inferior-emacs-lisp-mode-abbrev-table)) (byte-code "\300\301N\204\302\300\301\303\304!#\210\302\305\306\307#\207" [inferior-emacs-lisp-mode-abbrev-table variable-documentation put purecopy "Abbrev table for `inferior-emacs-lisp-mode'." inferior-emacs-lisp-mode derived-mode-parent comint-mode] 5) #@2200 Major mode for interactively evaluating Emacs Lisp expressions. Uses the interface provided by `comint-mode' (which see). * \<ielm-map>\[ielm-send-input] evaluates the sexp following the prompt. There must be at most one top level sexp per prompt. * \[ielm-return] inserts a newline and indents, or evaluates a complete expression (but see variable `ielm-dynamic-return'). Inputs longer than one line are moved to the line following the prompt (but see variable `ielm-dynamic-multiline-inputs'). * \[comint-dynamic-complete] completes Lisp symbols (or filenames, within strings), or indents the line if there is nothing to complete. The current working buffer may be changed (with a call to `set-buffer', or with \[ielm-change-working-buffer]), and its value is preserved between successive evaluations. In this way, expressions may be evaluated in a different buffer than the *ielm* buffer. By default, its name is shown on the mode line; you can always display it with \[ielm-print-working-buffer], or the buffer itself with \[ielm-display-working-buffer]. During evaluations, the values of the variables `*', `**', and `***' are the results of the previous, second previous and third previous evaluations respectively. If the working buffer is another IELM buffer, then the values in the working buffer are used. The variables `*1', `*2' and `*3', yield the process buffer values. Expressions evaluated by IELM are not subject to `debug-on-quit' or `debug-on-error'. The behavior of IELM may be customized with the following variables: * To stop beeping on error, set `ielm-noisy' to nil. * If you don't like the prompt, you can change it by setting `ielm-prompt'. * If you do not like that the prompt is (by default) read-only, set `ielm-prompt-read-only' to nil. * Set `ielm-dynamic-return' to nil for bindings like `lisp-interaction-mode'. * Entry to this mode runs `comint-mode-hook' and `ielm-mode-hook' (in that order). Customized bindings may be defined in `ielm-map', which currently contains: \{ielm-map} In addition to any hooks its parent mode might have run, this mode runs the hook `inferior-emacs-lisp-mode-hook', as the final step during initialization. (defalias 'inferior-emacs-lisp-mode #[nil "\306\300!\210\307\310 \210\311\312\310\313N\203\314\311\313\310\313N#\210\315 !\204'\316 \317 \"\210\320\f\321\"\204;\f =\204;\322\f\321 C#\210\323 !\210\324@!\210\f\325\326A!PB\306\327!\210\330\306\331!\210B\332C\333D\306\334!\210\335\306\336!\210A\306\337!\210E\340F\306\341!\210\342!\343G\306\344!\210\345$\306\346!\210p&\306\347!\210\350'\351\352\353\333\354$\210\306\355!\210\333-\306\356!\210\333.\306\357!\210\333/\306\360!\210\3330\306\361!\210\3621\363p!\204 \333\364\365\217\210\366\367 \333\"\210db\210\306\370!\210\3078Hc\210\371d!\210I\204\370\307J\372ed\373#\210)\374\367 \"\210K\375 \333\223\210\376\377p!\374\"\210)\201L\201M!\207" [delay-mode-hooks major-mode mode-name inferior-emacs-lisp-mode-map inferior-emacs-lisp-mode-abbrev-table local-abbrev-table make-local-variable t comint-mode inferior-emacs-lisp-mode "IELM" mode-class put keymap-parent set-keymap-parent current-local-map abbrev-table-get :parents abbrev-table-put use-local-map set-syntax-table "^" regexp-quote paragraph-separate "\\'" paragraph-start ielm-input-sender nil comint-dynamic-complete-functions (ielm-tab comint-replace-by-expanded-history ielm-complete-filename ielm-complete-symbol) ielm-prompt-internal comint-prompt-read-only ielm-get-old-input comint-completion-addsuffix ("/" . "") (":%s on " (:eval (buffer-name ielm-working-buffer))) indent-line-function ielm-indent-line ielm-working-buffer fill-paragraph-function lisp-fill-paragraph add-hook completion-at-point-functions lisp-completion-at-point local * ** *** ielm-match-data font-lock-defaults (ielm-font-lock-keywords nil nil ((58 . "w") (45 . "w") (42 . "w"))) comint-check-proc (byte-code "\300\301p\302#\207" [start-process "ielm" "hexl"] 4) ((file-error (byte-code "\300\301p\302#\207" [start-process "ielm" "cat"] 4))) set-process-query-on-exit-flag ielm-process comint-inhibit-carriage-motion ielm-set-pm add-text-properties (rear-nonsticky t field output inhibit-line-move-field-capture t) comint-output-filter ielm-pm set-process-filter get-buffer-process emacs-lisp-mode-syntax-table ielm-prompt comint-prompt-regexp comint-input-sender comint-process-echoes ielm-prompt-read-only comint-get-old-input mode-line-process ielm-header comint-use-prompt-regexp inhibit-read-only comint-last-input-start run-mode-hooks inferior-emacs-lisp-mode-hook] 5 (#$ . 13406) nil]) (defalias 'ielm-get-old-input #[nil "\212\303 \210\304\305 !*\204\306!\210\307 \210`\310\311!\210`{)\207" [comint-prompt-regexp regexp inhibit-changing-match-data beginning-of-line t looking-at re-search-backward comint-skip-prompt forward-sexp 1] 3]) #@117 Interactively evaluate Emacs Lisp expressions. Switches to the buffer `*ielm*', or creates it if it does not exist. (defalias 'ielm #[nil "\301\302\303!\204r\304\303!q\210\305\306 !\204`\307 \210)\310\303!\210\205&\311!)\207" [old-point nil comint-check-proc "*ielm*" get-buffer-create zerop buffer-size inferior-emacs-lisp-mode switch-to-buffer push-mark] 2 (#$ . 18299) nil]) (provide 'ielm)