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/org
Viewing File: /usr/share/emacs/24.3/lisp/org/ob-tangle.elc
;ELC ;;; Compiled by mockbuild@buildfarm01-new.corp.cloudlinux.com on Tue Nov 11 12:49:13 2025 ;;; from file /builddir/build/BUILD/emacs-24.3/lisp/org/ob-tangle.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\311\312\313\314& \210\303\315\316\317\307\320\311\312\313\321& \210\303\322\323\324\307\320\311\312\313\321& \210\303\325\316\326\307\320\311\312\313\321& \210\303\327\330\331\307\320\311\312\313\332& \210\303\333\334\331\307\320\311\312\313\332& \210\303\335\336\337\307\320\311\312\313\340& \207" [require ob org-src custom-declare-variable org-babel-tangle-lang-exts '(("emacs-lisp" . "el")) "Alist mapping languages to their file extensions.\nThe key is the language name, the value is the string that should\nbe inserted as the extension commonly used to identify files\nwritten in this language. If no entry is found in this list,\nthen the name of the language is used." :group org-babel-tangle :version "24.1" :type (repeat (cons (string "Language name") (string "File Extension"))) org-babel-post-tangle-hook nil "Hook run in code files tangled by `org-babel-tangle'." org-babel hook org-babel-pre-tangle-hook '(save-buffer) "Hook run at the beginning of `org-babel-tangle'." org-babel-tangle-body-hook "Hook run over the contents of each code block body." org-babel-tangle-comment-format-beg "[[%link][%source-name]]" "Format of inserted comments in tangled code files.\nThe following format strings can be used to insert special\ninformation into the output using `org-fill-template'.\n%start-line --- the line number at the start of the code block\n%file --------- the file from which the code block was tangled\n%link --------- Org-mode style link to the code block\n%source-name -- name of the code block\n\nWhether or not comments are inserted during tangling is\ncontrolled by the :comments header argument." string org-babel-tangle-comment-format-end "%source-name ends here" org-babel-process-comment-text #'org-babel-trim "Function called to process raw Org-mode text collected to be\ninserted as comments in tangled source-code files. The function\nshould take a single string argument and return a string\nresult. The default value is `org-babel-trim'." function] 10) #@81 Find file ensuring that the latest changes on disk are represented in the file. (defalias 'org-babel-find-file-noselect-refresh #[(file) "\301!\210r\302!q\210\303\304\211\211#)\207" [file find-file-noselect get-file-buffer revert-buffer t] 4 (#$ . 2611)]) #@135 Open FILE into a temporary buffer execute BODY there like `progn', then kill the FILE buffer returning the result of evaluating BODY. (defalias 'org-babel-with-temp-filebuffer '(macro . #[(file &rest body) "\306\307!\306\310!\306\311!\306\312!\313 \fD\314 DD\n F\315 D\316 \314 DE\317 \316\n\320 BEE\321\322 DE\n\257,\207" [visited-p temp-file temp-result temp-path file body make-symbol "temp-path" "temp-result" "temp-file" "visited-p" let* get-file-buffer org-babel-find-file-noselect-refresh setf with-current-buffer progn unless kill-buffer] 10 (#$ . 2876)])) (byte-code "\300\301\302\303#\210\300\301\304\305#\207" [put org-babel-with-temp-filebuffer lisp-indent-function 1 edebug-form-spec (form body)] 4) #@174 Load Emacs Lisp source code blocks in the Org-mode FILE. This function exports the source code using `org-babel-tangle' and then loads the resulting file using `load-file'. (defalias 'org-babel-load-file #[(file) "\304\305 !\211\306P\307 !\203 ! !V\204 \310 \311#\210\312 !\210\313\314 \"+\207" [age file base-name exported-file #[(file) "\301\302\303 \304\305\306!!\206\305!8\"!\207" [file float-time time-subtract current-time 5 file-attributes file-truename] 7] file-name-sans-extension ".el" file-exists-p org-babel-tangle-file "emacs-lisp" load-file message "Loaded %s"] 5 (#$ . 3603) "fFile to load: "]) #@297 Extract the bodies of source code blocks in FILE. Source code blocks are extracted with `org-babel-tangle'. Optional argument TARGET-FILE can be used to specify a default export file for all source blocks. Optional argument LANG can be used to limit the exported source code blocks by language. (defalias 'org-babel-tangle-file #[(file &optional target-file lang) "\306\307!!\310\311 \312\216\313!\210p\314\310\f #\210*\n?\205\"\315 !*\207" [file to-be-removed visited-p #1=#:wconfig target-file lang get-file-buffer expand-file-name nil current-window-configuration ((set-window-configuration #1#)) find-file org-babel-tangle kill-buffer] 4 (#$ . 4233) "fFile to tangle: \nP"]) #@51 Tangle FILENAME and place the results in PUB-DIR. (defalias 'org-babel-tangle-publish #[(_ filename pub-dir) "\301\302\303!\"\207" [filename mapc #[(el) "\302 \303#\207" [el pub-dir copy-file t] 4] org-babel-tangle-file] 4 (#$ . 4926)]) #@339 Write code blocks to source-specific files. Extract the bodies of all source code blocks from the current file into their own source-specific files. Optional argument TARGET-FILE can be used to specify a default export file for all source blocks. Optional argument LANG can be used to limit the exported source code blocks by language. (defalias 'org-babel-tangle #[(&optional only-this-block target-file lang) "\306\307!\210\214\2033\310 \204\311\312!\210\313 \314\216\315\316\317\320 8\"A\204,\n\204,\321\322\323 \"*\324\224\324\225}\210\212\324\n\203C\325 \316\nBC\"\202D \326\327\330\331\"!\"\210\332\333 \211\334U\203]\335\202^\336\337\323\340 \206fp!!$\210#\203t\327\341\f\"\210\f-\207" [only-this-block save-match-data-internal target-file org-babel-default-header-args path-collector block-counter run-hooks org-babel-pre-tangle-hook org-babel-where-is-src-block-head error "Point is not currently inside of a code block" match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) assoc :tangle 2 org-babel-get-src-block-info read-from-minibuffer "Tangle to: " buffer-file-name 0 org-babel-merge-params nil mapc #[(by-lang) "@A\306 \"A\206 \307\306 \"A\203#\310\306 \"A!\206$ \311P! \312\313\314\n\"-\207" [by-lang lang specs org-babel-tangle-lang-exts ext org-src-lang-modes assoc intern symbol-name "-mode" nil mapc #[(spec) "\306\211\307!\310!\211G\311V\205\n) \312\230\203!\313\314 !\2023 \315\230\203+\316\2023 G\311V\2053 \211\205J \203I \312\230\203I\f\317 Q\202J\f\211&\205\363\320!\211'\205^'\315\230?)\203j\321\322&!\323\"\210\324&!\203~&%\235\204~\325&!\210\326\327!(r(q\210\330\216\331)!\203\226\316\332\333\217\210 \203\256&*\235\204\256 \334Pc\210&*B*\335+!\210\336 ,\326\327!-r-q\210\337\216\324&!\203\317\340&!\210db\210,c\210\341\316\211&#\210. \203\351\342&\343\"\210.T.\344\345&\"-\207" [get-spec tangle sheb she-bang base-name ext #[(name) "\302\303 8\"A\207" [name spec assoc 4] 4] :tangle :shebang 0 "yes" file-name-sans-extension buffer-file-name "no" nil "." :mkdirp make-directory file-name-directory parents file-exists-p delete-file generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1=#:temp-buffer buffer-name kill-buffer] 2)) fboundp (funcall lang-f) ((error)) "\n" org-babel-spec-to-string buffer-string ((byte-code "\301!\203\n\302!\210\301\207" [#2=#:temp-buffer buffer-name kill-buffer] 2)) insert-file-contents write-region set-file-modes 493 add-to-list path-collector file-name m #1# lang-f she-banged spec content #2# block-counter] 5] lang-f she-banged] 5] org-babel-tangle-collect-blocks message "Tangled %d code block%s from %s" 1 "" "s" file-name-nondirectory buffer-base-buffer #[(file) "\305 !\306\211\307 !\210\305 !r\fq\210\310\311!)\n\204#\312\f!\210 ,\207" [file #3=#:temp-path #4=#:visited-p #5=#:temp-result #6=#:temp-file get-file-buffer nil org-babel-find-file-noselect-refresh run-hooks org-babel-post-tangle-hook kill-buffer] 3] lang org-babel-post-tangle-hook] 7 (#$ . 5172) "P"]) #@317 Remove comments inserted by `org-babel-tangle'. Call this function inside of a source-code file generated by `org-babel-tangle' to remove all comments inserted automatically by `org-babel-tangle'. Warning, this comment removes any lines containing constructs which resemble org-mode file links or noweb references. (defalias 'org-babel-tangle-clean #[nil "eb\210\300\301\302\303#\204\300\304 \302\303#\205)\212\305\306!\210`)\212\306\210\306u\210`)|\210\202\207" [re-search-forward "\\[\\[file:.*\\]\\[.*\\]\\]" nil t org-babel-noweb-wrap beginning-of-line 1] 4 (#$ . 8293) nil]) #@280 Insert SPEC into the current file. Insert the source-code specified by SPEC into the current source code file. This function uses `comment-region' which assumes that the appropriate major-mode is set. SPEC has the form (start-line file link source-name params body comment) (defalias 'org-babel-spec-to-string #[(spec) "@A@\3068\3078\3108\3118 \312\313\3148\"A!\312\315\3148\"A\316\230?\"!\317\230\206F!\320\230\206F!\321\230\206F!\322\230#\323\324\325\"$\326% \203\\% !\210#\203k%\327&$\"!\210\"\203s\330c\210\331\332\333\334\335\336 '\205\200\337\"#\"c\210#\205\223%\327($\"!. \207" [spec start-line file link source-name body 2 3 5 6 assoc :comments 4 :padline "no" "both" "link" "yes" "noweb" mapcar #[(el) "\302!\303!\211;\203 \202\304\305 \")B\207" [el le symbol-name eval format "%S"] 5] (start-line file link source-name) #[(text) "\205&\303\230?\205& G\304V\205&\n\203\305c\210\306` c\210`\"\210\307\210\305c\207" [comments text padline "no" 0 "\n" comment-region nil] 3] org-fill-template "\n" format "%s\n" replace-regexp-in-string "^," "" org-babel-trim "[\f\n ]" comment comments padline link-p link-data insert-comment org-babel-tangle-comment-format-beg org-src-preserve-indentation org-babel-tangle-comment-format-end] 8 (#$ . 8887)]) #@274 Collect source blocks in the current Org-mode file. Return an association list of source-code block specifications of the form used by `org-babel-spec-to-string' grouped by language. Optional argument LANG can be used to limit the collected source code blocks by language. (defalias 'org-babel-tangle-collect-blocks #[(&optional language) "\306\307\310\311 \211?\206\312\313 !!`\310@\314 A\315\216 \203'\316 !\210p@eb\210\317B\310\320#\203J\321\224b\210\322\321!\321\224\321\225\322\323!\323\224\323\225\322\324!\324\224\324\225\322\325!\325\224\325\225\322\326!\326\224\326\225CDEFGHIJKLMNOPQ\327\330\331\310\332\333\217#\211R \230\204\223\306R\202\226\nT)\214~\210\334`!T)S\311 T\335\336!\211U@V\337\340\323U8\"A\341\230\204@W\203\310WV\230\203@\335 U\323U8X\324U8Y\342\343Y\"\203\350\322\306Y\"\206\352Z[\344\310!\310\\]\345\346!\203\346\321]G\310]$\210\202$\\\203\347\321]G^]$\210\202$\346\321]G\310]$\210]*_\342`_\"\2057\322\306_\")_\350\325U8\206G\351\352 \n#!a\350\353VP!b\350\354VP!c\355X\340\"\203i\356U!\202mUA@E\337\357X\"\203|E\202\237\345b!\203\215bEX\"\202\237\360EX\345c!\205\236cX!#)E\361\362!drdq\210\363\216Ec\210\342\364Y\"\203\321eb\210\317\327\365\366[#\310\320#\203\321\367\307!\210\202\275\370\371!\210\372 ,E\337\373X\"A\374\230\204\360\337\373X\"A\375\230\205 e\310\376\377\217\212\201hB\310\320#\203\321\225\202e)]`{!f\310g\337V\"Ag\201i\337V\"\"VST_aXEf\257gBBB. ,Ob\210.\202-*\f\204V\201j@!\210 b\210,\201k\201l\"\211+\207" [blocks current-heading block-counter #1=#:file visited-p point 1 "" nil buffer-file-name get-file-buffer expand-file-name current-window-configuration ((set-window-configuration #2=#:wconfig)) find-file re-search-forward t 0 match-string 2 3 4 5 replace-regexp-in-string "[ ]" "-" (byte-code "\300\301 8\206\302\207" [4 org-heading-components "(dummy for heading without text)"] 2) ((error (buffer-file-name))) line-number-at-pos org-babel-get-src-block-info light assoc :tangle "no" string-match "-l \"\\(.+\\)\"" org-store-link fboundp set-text-properties remove-text-properties intern format "%s:%d" "org-babel-expand-body:" "org-babel-variable-assignments:" org-babel-noweb-p org-babel-expand-noweb-references :no-expand org-babel-expand-body:generic generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#3=#:temp-buffer buffer-name kill-buffer] 2)) "-r" "%s" ".+" replace-match run-hooks org-babel-tangle-body-hook buffer-string :comments "both" "org" (byte-code "\212\300\301!\210\302\225)\207" [org-back-to-heading t 0] 2) ((error (point-min))) to-be-removed #2# org-babel-src-block-regexp end-body beg-body body end-header-args beg-header-args header-args end-switches beg-switches switches end-lang beg-lang lang end-block beg-block full-block new-heading start-line file info src-lang language params extra org-coderef-label-format cref-fmt restricted s org-rm-props link org-bracket-link-regexp source-name expand-cmd assignments-cmd #3# org-babel-process-comment-text comment by-lang re-search-backward delq kill-buffer mapcar #[(by-lang) "@\301A!B\207" [by-lang reverse] 3]] 16 (#$ . 10210)]) #@75 Return a list of begin and end link comments for the code block at point. (defalias 'org-babel-tangle-comment-links #[(&optional info) "\306 \307 \310\311\312!\210\n\211A@@\313\314\315!\203%\315\316\fG\313\f$\210\202< \2034\317\316\fG \f$\210\202<\315\316\fG\313\f$\210\f*!\320\206J\321\322!8\323\324\325\"\326\"\326\"-D\207" [start-line file org-stored-links restricted s org-rm-props org-babel-where-is-src-block-head buffer-file-name org-link-escape call-interactively org-store-link nil fboundp set-text-properties 0 remove-text-properties 4 org-babel-get-src-block-info light mapcar #[(el) "\302!\303!\211;\203 \202\304\305 \")B\207" [el le symbol-name eval format "%S"] 5] (start-line file link source-name) org-fill-template link info source-name link-data org-babel-tangle-comment-format-beg org-babel-tangle-comment-format-end] 6 (#$ . 13467)]) #@180 Propagate changes in source file back original to Org-mode file. This requires that code blocks were tangled with link comments which enable the original code blocks to be found. (defalias 'org-babel-detangle #[(&optional source-code-file) "\212\203 \305!\210eb\210\306\307\211\310\f\307\311#\203C\310\312\313\314\315!!\316Q!\203=\306\225\317y\210\212\320 \211\2039\321\n!\210) T b\210\202 \322\323 \"\210,\207" [source-code-file end new-body counter org-bracket-link-analytic-regexp find-file 0 nil re-search-forward t " " regexp-quote match-string 5 " ends here" -1 org-babel-tangle-jump-to-org org-babel-update-block-body message "Detangled %d code blocks"] 5 (#$ . 14361) nil]) #@61 Jump from a tangled code file to the related Org-mode file. (defalias 'org-babel-tangle-jump-to-org #[nil "`\306\211\211\211\211\211\211\211\211$%&'\307 (\310\216\212\311)\306\312#\203c\313 \211&\203\314\315!\211\203\314\316!\211\203\314\317!\211\203\212\320 *\321\216\322\323\324 !\325Q\306\312#\210\326 \211%+\203&\203x&'W\203x'%W\204|\327\330!\210\331&%{!)\332\333\n\"\203\222\n\315\211\224O\334\n!\210p&b\210\335 !\210\332\336 \"\203\263\337\340\314\341 \"!!\210\202\267\342 !\210`*\343 !\210\fb\210.\n\207" [body block-name path link target-char target-buffer nil current-window-configuration ((set-window-configuration #1=#:wconfig)) re-search-backward t point-at-eol match-string 0 3 5 match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) re-search-forward " " regexp-quote " ends here" point-at-bol error "Not in tangled code" org-babel-trim string-match "::" find-file org-open-link-from-string "[^ \n ]:\\([[:digit:]]+\\)" org-babel-next-src-block string-to-number 1 org-babel-goto-named-src-block pop-to-buffer done end start mid #1# org-bracket-link-analytic-regexp save-match-data-internal] 10 (#$ . 15063) nil]) (provide 'ob-tangle)