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/hexl.elc
;ELC ;;; Compiled by mockbuild@buildfarm01-new.corp.cloudlinux.com on Tue Nov 11 12:48:18 2025 ;;; from file /builddir/build/BUILD/emacs-24.3/lisp/hexl.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\302\303\304\305\306\307%\210\310\311\312\313\314DD\315\316\317\306\303\320\321& \210\310\322\312\313\323DD\324\316\325\306\303&\210\310\326\312\313\327DD\330\316\325\306\303&\210\310\331\312\313\332DD\333\316\325\306\303&\210\310\334\312\313\335DD\336\316\337\306\303\320\340& \210\310\341\312\313\342DD\343\316\344\345\346\306\303& \210\347\350\351\352\306\303%\210\347\353\354\355\306\303%\207" [require eldoc custom-declare-group hexl nil "Edit a file in a hex dump format using the hexl filter." :group data custom-declare-variable hexl-bits funcall function #[0 "\300\207" [16] 1 "\n\n(fn)"] "The bit grouping that hexl will use." :type (choice (const 8) (const 16) (const 32) (const 64)) :version "24.3" hexl-program #[0 "\300\207" ["hexl"] 1 "hexl\n\n(fn)"] "The program that will hexlify and dehexlify its stdin.\n`hexl-program' will always be concatenated with `hexl-options'\nand \"-de\" when dehexlifying a buffer." string hexl-iso #[0 "\300\207" [""] 1 "\n\n(fn)"] "If your Emacs can handle ISO characters, this should be set to\n\"-iso\" otherwise it should be \"\"." hexl-options #[0 "\301\302\"\207" [hexl-iso format "-hex %s"] 3 "\n\n(fn)"] "Space separated options to `hexl-program' that suit your needs.\nQuoting cannot be used, so the arguments cannot themselves contain spaces.\nIf you wish to set the `-group-by-X-bits' options, set `hexl-bits' instead,\nas that will override any bit grouping options set here." hexl-follow-ascii #[0 "\300\207" [t] 1 "\n\n(fn)"] "If non-nil then highlight the ASCII character corresponding to point." boolean "20.3" hexl-mode-hook #[0 "\300\207" [(hexl-follow-line hexl-activate-ruler)] 1 "\n\n(fn)"] "Normal hook run when entering Hexl mode." hook :options (hexl-follow-line hexl-activate-ruler turn-on-eldoc-mode) custom-declare-face hexl-address-region ((t (:inherit header-line))) "Face used in address area of hexl-mode buffer." hexl-ascii-region ((t (:inherit header-line))) "Face used in ascii area of hexl-mode buffer."] 10) #@34 Maximum offset into hexl buffer. (defvar hexl-max-address 0 (#$ . 2566)) (defvar hexl-mode-map (byte-code "\302 \303\304\305#\210\303\306\305#\210\303\307\310#\210\303\311\312#\210\303\313\314#\210\303\315\316#\210\303\317\320#\210\303\321\320#\210\303\322\323#\210\303\324\323#\210\303\325\326#\210\303\327\330#\210\303\331\332#\210\303\333\334#\210\303\335\336#\210\303\337\340#\210\303\341\342#\210\303\343\342#\210\303\344\342#\210\303\345\342#\210\303\346\342#\210\303\347\332#\210\303\350\310#\210\303\351\342#\210\303\352\334#\210\303\353\312#\210\354\355!!\356>\204\260\303\355!\342#\210\303\357\342#\210\303\360\316#\210\303\361\342#\210\303\362\314#\210\303\363\364#\210\303\365\342#\210\303\366\326#\210\303\367\342#\210\303\370\342#\210\371\372\373!M\210\303\374\371#\210\303\375\376#\210\303\377\320#\210\303\201@\201A#\210\303\201B\201C#\210\303\201D\323#\210\303\201E\342#\210\303\201F\342#\210\303\201G\342#\210\303\201H\201I#\210\303\201J\342#\210\303\201K\342#\210\303\201L\201M#\210\303\201N\201O#\210\303\201P\342#\210\303\201Q\342#\210\303\201R\201S#\210\303\201T\201U#\210\303\201V\342#\210\303\201W\201X#\210\303\201Y\342#\210\303\201Z\342#\210\303\201[\342#\210\303\201\\\342#\210\303\201]\342#\210\303\201^\342#\210\303\201_\330#\210\303\201`\342#\210\303\201a\342#\210\303\201b\336#\210\303\201c\340#\210\201d\372 !M\210\303\201e\201d#\210\303\201f\201g#\210\201h\372\201i!M\210\303\201j\201h#\210\303\201k\201l#\210\303\201m\201n#\210\303\201o\342#\210\303\201p\201q#\210\303\201r\342#\210\211\207" [help-char mode-specific-map make-keymap define-key [remap self-insert-command] hexl-self-insert-command " " [left] hexl-backward-char [right] hexl-forward-char [up] hexl-previous-line [down] hexl-next-line [M-left] hexl-backward-short [27 left] [M-right] hexl-forward-short [27 right] [next] hexl-scroll-up [prior] hexl-scroll-down [home] hexl-beginning-of-line [end] hexl-end-of-line [C-home] hexl-beginning-of-buffer [C-end] hexl-end-of-buffer [deletechar] undefined [deleteline] [insertline] [S-delete] "" "" "" "" "" "" key-binding char-to-string (help-command ehelp-command) " " "" "" "" "" hexl-quoted-insert "" "" "" "" hexl-ESC-prefix copy-keymap ESC-prefix "" "" hexl-beginning-of-512b-page "" "" hexl-insert-decimal-char "" hexl-end-of-512b-page "" " " "\n" " " "" hexl-insert-octal-char "" "" "" hexl-insert-hex-char "b" hexl-backward-word "c" "d" "f" hexl-forward-word "g" hexl-goto-hex-address "i" "j" hexl-goto-address "k" "l" "q" "s" "t" "u" "v" "y" "z" "<" ">" hexl-C-c-prefix "" "" hexl-mode-exit hexl-C-x-prefix Control-X-prefix "" "[" hexl-beginning-of-1k-page "]" hexl-end-of-1k-page "" "" hexl-save-buffer ""] 5)) (defvar hexl-mode--old-var-vals nil) (make-variable-buffer-local 'hexl-mode--old-var-vals) #@73 Overlay used to highlight ASCII element corresponding to current point. (defvar hexl-ascii-overlay nil (#$ . 5522)) (make-variable-buffer-local 'hexl-ascii-overlay) #@41 Font lock keywords used in `hexl-mode'. (defvar hexl-font-lock-keywords '(("^\\([0-9a-f]+:\\).\\{40\\} \\(.+$\\)" (1 'hexl-address-region t t) (2 'hexl-ascii-region t t))) (#$ . 5693)) (defalias 'hexl-rulerize #[514 "\211\300\245G\301\302W\203\"\211\303\211\\OQ\262\\\262\202\211\304\305O\207" [4 0 "" " " 1 nil] 12 "\n\n(fn STRING BITS)"]) (defvar hexl-rulers (mapcar #[257 "\211\300\301\302\"\303QB\207" [" 87654321 " hexl-rulerize "00112233445566778899aabbccddeeff" " 0123456789abcdef"] 6 "\n\n(fn BITS)"] '(8 16 32 64))) (put 'hexl-mode 'mode-class 'special) #@68 The length of a hexl display line (varies with `hexl-bits'). (fn) (defalias 'hexl-line-displen #[0 "\301\302\206\303\245\\\207" [hexl-bits 60 128 16] 3 (#$ . 6281)]) (defalias 'hexl-mode--minor-mode-p #[257 "\211\300>\207" [(ruler-mode hl-line-mode)] 3 "\n\n(fn VAR)"]) (defalias 'hexl-mode--setq-local #[514 "\235\204.\301\"\204.:\204\302!\203*\211:\203$@ \202&JB\202+B:\2038A!\207\303!\203J\203G\304\202H\305!\207\306!L\207" [hexl-mode--old-var-vals assoc boundp hexl-mode--minor-mode-p 1 -1 make-local-variable] 5 "\n\n(fn VAR VAL)"]) #@3482 \<hexl-mode-map>A mode for editing binary files in hex dump format. This is not an ordinary major mode; it alters some aspects of the current mode's behavior, but not all; also, you can exit Hexl mode and return to the previous mode using `hexl-mode-exit'. This function automatically converts a buffer into the hexl format using the function `hexlify-buffer'. Each line in the buffer has an "address" (displayed in hexadecimal) representing the offset into the file that the characters on this line are at and 16 characters from the file (displayed as hexadecimal values grouped every `hexl-bits' bits) and as their ASCII values. If any of the characters (displayed as ASCII characters) are unprintable (control or meta characters) they will be replaced as periods. If `hexl-mode' is invoked with an argument the buffer is assumed to be in hexl format. A sample format: HEX ADDR: 0001 0203 0405 0607 0809 0a0b 0c0d 0e0f ASCII-TEXT -------- ---- ---- ---- ---- ---- ---- ---- ---- ---------------- 00000000: 5468 6973 2069 7320 6865 786c 2d6d 6f64 This is hexl-mod 00000010: 652e 2020 4561 6368 206c 696e 6520 7265 e. Each line re 00000020: 7072 6573 656e 7473 2031 3620 6279 7465 presents 16 byte 00000030: 7320 6173 2068 6578 6164 6563 696d 616c s as hexadecimal 00000040: 2041 5343 4949 0a61 6e64 2070 7269 6e74 ASCII.and print 00000050: 6162 6c65 2041 5343 4949 2063 6861 7261 able ASCII chara 00000060: 6374 6572 732e 2020 416e 7920 636f 6e74 cters. Any cont 00000070: 726f 6c20 6f72 206e 6f6e 2d41 5343 4949 rol or non-ASCII 00000080: 2063 6861 7261 6374 6572 730a 6172 6520 characters.are 00000090: 6469 7370 6c61 7965 6420 6173 2070 6572 displayed as per 000000a0: 696f 6473 2069 6e20 7468 6520 7072 696e iods in the prin 000000b0: 7461 626c 6520 6368 6172 6163 7465 7220 table character 000000c0: 7265 6769 6f6e 2e0a region.. Movement is as simple as movement in a normal Emacs text buffer. Most cursor movement bindings are the same: use \[hexl-backward-char], \[hexl-forward-char], \[hexl-next-line], and \[hexl-previous-line] to move the cursor left, right, down, and up. Advanced cursor movement commands (ala \[hexl-beginning-of-line], \[hexl-end-of-line], \[hexl-beginning-of-buffer], and \[hexl-end-of-buffer]) are also supported. There are several ways to change text in hexl mode: ASCII characters (character between space (0x20) and tilde (0x7E)) are bound to self-insert so you can simply type the character and it will insert itself (actually overstrike) into the buffer. \[hexl-quoted-insert] followed by another keystroke allows you to insert the key even if it isn't bound to self-insert. An octal number can be supplied in place of another key to insert the octal number's ASCII representation. \[hexl-insert-hex-char] will insert a given hexadecimal value (if it is between 0 and 0xFF) into the buffer at the current point. \[hexl-insert-octal-char] will insert a given octal value (if it is between 0 and 0377) into the buffer at the current point. \[hexl-insert-decimal-char] will insert a given decimal value (if it is between 0 and 255) into the buffer at the current point. \[hexl-mode-exit] will exit hexl-mode. Note: saving the file with any of the usual Emacs commands will actually convert it back to binary format while saving. You can use \[hexl-find-file] to visit a file in Hexl mode. \[describe-bindings] for advanced commands. (fn &optional ARG) (defalias 'hexl-mode #[256 "\306=\204\301\307 \310`eZC\311\262m\203 o\204 \211@S\240\210\312>\203I\313\n!\314=\203B\211\315e`\"@\\\240\210n\204B\211@S\240\210\316 \210\317!\210\320\303!\210\321 S\322 \245\323_\324\\\325\326\327\330\331\332\333!\334\"\335\336%D\337\326\340\325EDC\217\210)\266\341\342\f\"\210\341\343\344\"\210\341\345\346\"\210\341\300\306\"\210\341\347\350 \"\210\351\352\353\311\310$\210\341\354\311\"\210\341\355\356\"\210\341\357\360\"\210\351\361\362\311\310$\210\341\363\364\"\210\365\366!\210\367\370\371\"\210 \203\301\305\314!\210\372\373!\207" [major-mode inhibit-read-only buffer-file-coding-system hexl-max-address hexl-mode-map hexl-follow-ascii hexl-mode buffer-modified-p t nil (1 nil) coding-system-eol-type 1 count-lines hexlify-buffer restore-buffer-modified-p make-local-variable buffer-size hexl-line-displen 16 15 #1=#:err funcall make-byte-code 0 "\301\300@!\207" vconcat vector [hexl-goto-address] 2 "\n\n(fn)" error #[257 "\300\207" [nil] 2 "\n\n(fn IGNORED)"] hexl-mode--setq-local (current-local-map . use-local-map) mode-name "Hexl" isearch-search-fun-function hexl-isearch-search-function (syntax-table . set-syntax-table) standard-syntax-table add-hook write-contents-functions hexl-save-buffer require-final-newline font-lock-defaults (hexl-font-lock-keywords t) revert-buffer-function hexl-revert-buffer-function change-major-mode-hook hexl-maybe-dehexlify-buffer eldoc-documentation-function hexl-print-current-point-info eldoc-add-command-completions "hexl-" eldoc-remove-command "hexl-save-buffer" "hexl-current-address" run-mode-hooks hexl-mode-hook] 12 (#$ . 6863) "p"]) (defalias 'hexl-isearch-search-function #[0 "\204\n \204\n\302\207\303 \207" [isearch-regexp isearch-word #[1025 "\203\301\202 \302G\303V\203\304!\202\305\306\307#\310\311\"\2033\211\312\305\304\313\n\314\"\315#Q\2024\211\262$\207" [isearch-forward re-search-forward re-search-backward 80 regexp-quote mapconcat #[257 "\300\301!!\207" [regexp-quote string] 4 "\n\n(fn C)"] "\\(?:\n\\(?:[:a-f0-9]+ \\)+ \\)?" string-match "\\` ?\\([a-f0-9]+ \\)*[a-f0-9]+ ?\\'" "\\|" split-string " " " \\(?: .+\n[a-f0-9]+: \\)?"] 13 "\n\n(fn STRING &optional BOUND NOERROR COUNT)"] isearch-search-fun-default] 1 "\n\n(fn)"]) (defvar hexl-in-save-buffer nil) #@72 Save a hexl format buffer as binary in visited file if modified. (fn) (defalias 'hexl-save-buffer #[0 "?\205I\301\302 \203A\303\304!\305 ed\306rq\210\307#\210q\210\310 \210\311\312 \210)\302 \262ed|\210\307#\210\313!\210)\266\204\202F\314\315!\210\306!\210\311\207" [hexl-in-save-buffer restore-buffer-modified-p buffer-modified-p generate-new-buffer " hexl" buffer-name nil insert-buffer-substring dehexlify-buffer t save-buffer kill-buffer message "(No changes need to be saved)"] 10 (#$ . 12660) nil]) #@178 Edit file FILENAME as a binary file in hex dump format. Switch to a buffer visiting file FILENAME, creating one if none exists, and edit the file in `hexl-mode'. (fn FILENAME) (defalias 'hexl-find-file #[257 "\301\300!\302\303\304\305\306\307!\310\"\311\312%DC\216\313\300\314\"\210\315!\210)\210\316=?\205(\316 \207" [major-mode default-value funcall make-byte-code 0 "\301\302\300\"\207" vconcat vector [set-default major-mode] 3 "\n\n(fn)" set-default fundamental-mode find-file-literally hexl-mode] 9 (#$ . 13188) (byte-code "\301\302\303\301\211\304$)C\207" [completion-ignored-extensions nil read-file-name "Filename: " ret-must-match] 5)]) (defalias 'hexl-revert-buffer-function #[514 "\303\304\305\304\211\306#\210\307\310\311\306#\210\312\313 *\207" [revert-buffer-function coding-system-for-read major-mode no-conversion nil revert-buffer t remove-hook change-major-mode-hook hexl-maybe-dehexlify-buffer fundamental-mode hexl-mode] 6 "\n\n(fn IGNORE-AUTO NOCONFIRM)"]) #@99 Exit Hexl mode, returning to previous mode. With arg, don't unhexlify buffer. (fn &optional ARG) (defalias 'hexl-mode-exit #[256 "\211\304=\204\n\211\204C\305 \306\307 T\310\262\311 \210\312\313\314\306#\210\315!\210\211b\210\316 !\304=\203=\211\317e`\"Z\262o\204=\211T\262\211b\210)\266\312\320\321\306#\210\312\322\323\306#\210\310\211 \211\203\237\211@\211:\211\203d@\202e\243:\203tA!\210\202\226\324!\203\205BB\262\202\226\203\222\325!L\210\202\226\326!\210\266A\266\202\202S\210\326\303!\210\211\211\203\300\211@\211@A\203\266\304\202\267\327!\210A\266\202\202\245\266\330 \207" [inhibit-read-only buffer-file-coding-system hexl-ascii-overlay hexl-mode--old-var-vals 1 buffer-modified-p t hexl-current-address nil dehexlify-buffer remove-hook write-contents-functions hexl-save-buffer restore-buffer-modified-p coding-system-eol-type count-lines change-major-mode-hook hexl-maybe-dehexlify-buffer post-command-hook hexl-follow-ascii-find hexl-mode--minor-mode-p make-local-variable kill-local-variable -1 force-mode-line-update] 10 (#$ . 14183) "p"]) #@78 Convert a hexl format buffer to binary. Ask the user for confirmation. (fn) (defalias 'hexl-maybe-dehexlify-buffer #[0 "\301\302!\205#\303 \304\305 T\306\262\307 \210\310\311\312\304#\210\313!\210\211b)\266\203\207" [inhibit-read-only y-or-n-p "Convert contents back to binary format? " buffer-modified-p t hexl-current-address nil dehexlify-buffer remove-hook write-contents-functions hexl-save-buffer restore-buffer-modified-p] 7 (#$ . 15293)]) #@55 Return current hexl-address. (fn &optional VALIDATE) (defalias 'hexl-current-address #[256 "\301`e\302#\303 \246\304Z\305\305W\203\203\306\307!\210\202\305\262\301`e\302#\303 \245\310_\311 \312ZY\203;\311 \312ZZ\202E\211\313\245T\245Z\314\245\\\262\315\316!\203T\317\320\211#\210\207" [hexl-bits - -1 hexl-line-displen 11 0 error "Point is not on a character in the file" 16 hexl-ascii-start-column 10 4 2 called-interactively-p interactive message "Current address is %d/0x%08x"] 8 (#$ . 15752) nil]) #@102 Return current hexl-address in string. This function is intended to be used as eldoc callback. (fn) (defalias 'hexl-print-current-point-info #[0 "\300 \301\302\211#\207" [hexl-current-address format "Current address is %d/0x%08x"] 5 (#$ . 16280)]) #@69 Column at which the ascii portion of the hexl display starts. (fn) (defalias 'hexl-ascii-start-column #[0 "\301\302\245\\\207" [hexl-bits 43 128] 3 (#$ . 16536)]) #@51 Return buffer position for ADDRESS. (fn ADDRESS) (defalias 'hexl-address-to-marker #[257 "\211\301\246\302_\303\301\245\304 _\305e\211\306\245\245\\$\207" [hexl-bits 16 2 + hexl-line-displen 10 4] 10 (#$ . 16707) "nAddress: "]) #@99 Go to hexl-mode (decimal) address ADDRESS. Signal error if ADDRESS is out of range. (fn ADDRESS) (defalias 'hexl-goto-address #[257 "\211\301W\204\f\211V\203\302\303!\210\304!b\207" [hexl-max-address 0 error "Out of hexl region" hexl-address-to-marker] 3 (#$ . 16945) "nAddress: "]) #@114 Go to hexl-mode address (hex string) HEX-ADDRESS. Signal error if HEX-ADDRESS is out of range. (fn HEX-ADDRESS) (defalias 'hexl-goto-hex-address #[257 "\300\301!!\207" [hexl-goto-address hexl-hex-string-to-integer] 4 (#$ . 17241) "sHex Address: "]) #@57 Return decimal integer for HEX-STRING. (fn HEX-STRING) (defalias 'hexl-hex-string-to-integer #[257 "\300\301\232\204\211\302_\303\304!!\\\262\305\306O\262\202\211\207" [0 "" 16 hexl-hex-char-to-integer string-to-char 1 nil] 6 (#$ . 17498) "sHex number: "]) #@61 Return decimal integer for OCTAL-STRING. (fn OCTAL-STRING) (defalias 'hexl-octal-string-to-integer #[257 "\300\301\232\204\211\302_\303\304!!\\\262\305\306O\262\202\211\207" [0 "" 8 hexl-oct-char-to-integer string-to-char 1 nil] 6 (#$ . 17771) "sOctal number: "]) #@72 Move to left ARG bytes (right if ARG negative) in hexl-mode. (fn ARG) (defalias 'hexl-backward-char #[257 "\300\301 Z!\207" [hexl-goto-address hexl-current-address] 4 (#$ . 18051) "p"]) #@72 Move to right ARG bytes (left if ARG negative) in hexl-mode. (fn ARG) (defalias 'hexl-forward-char #[257 "\300\301 \\!\207" [hexl-goto-address hexl-current-address] 4 (#$ . 18245) "p"]) #@73 Move to left ARG shorts (right if ARG negative) in hexl-mode. (fn ARG) (defalias 'hexl-backward-short #[257 "\301\302 \303W\203T[\262\303V\203=\211V\203!\304\305!\210\2024\211\306\307\"\232\2030\211\310\\\2024\306\307\"\262S\262\202 \211V\203K\304\305!\210\202O\306\307\"\262\202\205\303V\203\205\211\311\312\"\232\204l\311\312\"\262\202~\211\303\232\204z\211\310Z\262\202~\304\313!\210S\262\202T\211\262!\207" [hexl-max-address hexl-goto-address hexl-current-address 0 message "End of buffer." logior 3 4 logand -4 "Beginning of buffer."] 7 (#$ . 18439) "p"]) #@73 Move to right ARG shorts (left if ARG negative) in hexl-mode. (fn ARG) (defalias 'hexl-forward-short #[257 "\300[!\207" [hexl-backward-short] 3 (#$ . 19046) "p"]) #@72 Move to left ARG words (right if ARG negative) in hexl-mode. (fn ARG) (defalias 'hexl-backward-word #[257 "\301\302 \303W\203T[\262\303V\203=\211V\203!\304\305!\210\2024\211\306\307\"\232\2030\211\310\\\2024\306\307\"\262S\262\202 \211V\203K\304\305!\210\202O\306\307\"\262\202\205\303V\203\205\211\311\312\"\232\204l\311\312\"\262\202~\211\303\232\204z\211\310Z\262\202~\304\313!\210S\262\202T\211\262!\207" [hexl-max-address hexl-goto-address hexl-current-address 0 message "End of buffer." logior 7 8 logand -8 "Beginning of buffer."] 7 (#$ . 19217) "p"]) #@72 Move to right ARG words (left if ARG negative) in hexl-mode. (fn ARG) (defalias 'hexl-forward-word #[257 "\300[!\207" [hexl-backward-word] 3 (#$ . 19822) "p"]) #@166 Move vertically up ARG lines [16 bytes] (down if ARG negative) in hexl-mode. If there is no byte at the target address move to the last byte in that line. (fn ARG) (defalias 'hexl-previous-line #[257 "\300[!\207" [hexl-next-line] 3 (#$ . 19991) "p"]) #@166 Move vertically down ARG lines [16 bytes] (up if ARG negative) in hexl-mode. If there is no byte at the target address move to the last byte in that line. (fn ARG) (defalias 'hexl-next-line #[257 "\301\302 \303_\\\304W\203 \211\304W\203 \305\306!\210\302 \303\246\262\202K\211V\2036\303\246\303\246W\2036\262\202K\211V\203K\305\306!\210\307\310\"\302 \303\246\\\262\211\262!\207" [hexl-max-address hexl-goto-address hexl-current-address 16 0 message "Out of hexl region." logand -16] 6 (#$ . 20251) "p"]) #@168 Move to the beginning of the hexl buffer. Leaves `hexl-mark' at previous position. With prefix arg N, puts point N bytes of the way from the true beginning. (fn ARG) (defalias 'hexl-beginning-of-buffer #[257 "\300`!\210\301S\302\\!\207" [push-mark hexl-goto-address 0] 4 (#$ . 20783) "p"]) #@47 Go to `hexl-max-address' minus ARG. (fn ARG) (defalias 'hexl-end-of-buffer #[257 "\301`!\210\302SZ!\207" [hexl-max-address push-mark hexl-goto-address] 4 (#$ . 21081) "p"]) #@44 Goto beginning of line in hexl mode. (fn) (defalias 'hexl-beginning-of-line #[0 "`\300 \245\300 _\301\\b\207" [hexl-line-displen 11] 2 (#$ . 21263) nil]) #@38 Goto end of line in hexl mode. (fn) (defalias 'hexl-end-of-line #[0 "\301\302\303 \304\"\211V\203\262\211\262!\207" [hexl-max-address hexl-goto-address logior hexl-current-address 15] 4 (#$ . 21424) nil]) #@86 Scroll hexl buffer window upward ARG lines; or near full window if no ARG. (fn ARG) (defalias 'hexl-scroll-down #[257 "\211\204\n\300 S\202 \301!\262\302[!\207" [window-height prefix-numeric-value hexl-scroll-up] 3 (#$ . 21642) "P"]) #@160 Scroll hexl buffer window upward ARG lines; or near full window if no ARG. If there's no byte at the target address, move to the first or last line. (fn ARG) (defalias 'hexl-scroll-up #[257 "\211\204\n\301 S\202 \302!\262\211\303_\304 \211\\\211V\2034\303\246\303\246Y\2034\305\306\"\303\246\\\262\202K\211V\203@\262\202K\211\307W\203K\303\246\262\211\\U\204W\310\311!\210\312!\210\313\307!\207" [hexl-max-address window-height prefix-numeric-value 16 hexl-current-address logand -16 0 message "Out of hexl region." hexl-goto-address recenter] 7 (#$ . 21889) "P"]) #@40 Go to beginning of 1KB boundary. (fn) (defalias 'hexl-beginning-of-1k-page #[0 "\300\301\302 \303\"!\207" [hexl-goto-address logand hexl-current-address -1024] 4 (#$ . 22487) nil]) #@34 Go to end of 1KB boundary. (fn) (defalias 'hexl-end-of-1k-page #[0 "\301\302\303 \304\"]!\207" [hexl-max-address hexl-goto-address logior hexl-current-address 1023] 5 (#$ . 22675) nil]) #@45 Go to beginning of 512 byte boundary. (fn) (defalias 'hexl-beginning-of-512b-page #[0 "\300\301\302 \303\"!\207" [hexl-goto-address logand hexl-current-address -512] 4 (#$ . 22869) nil]) #@39 Go to end of 512 byte boundary. (fn) (defalias 'hexl-end-of-512b-page #[0 "\301\302\303 \304\"]!\207" [hexl-max-address hexl-goto-address logior hexl-current-address 511] 5 (#$ . 23063) nil]) #@215 Read next input character and insert it. Useful for inserting control characters and non-ASCII characters given their numerical code. You may also type octal digits, to insert a character with that code. (fn ARG) (defalias 'hexl-quoted-insert #[257 "\300\301 \"\207" [hexl-insert-multibyte-char read-quoted-char] 4 (#$ . 23264) "p"]) #@162 Combine `hexl-bits' with `hexl-options', altering `hexl-options' as needed to produce the command line options to pass to the hexl command. (fn &optional TEST) (defalias 'hexl-options #[256 "\211\206 \302>\203$\303\304\"\203\305\306\"\305\307\"P\262\310\311 #\262\211\207" [hexl-options hexl-bits (8 16 32 64) string-match "\\(.*\\)-group-by-[0-9]+-bits\\(.*\\)" match-string 1 2 format "%s -group-by-%d-bits "] 6 (#$ . 23607)]) #@92 Convert a binary buffer to hexl format. This discards the buffer's undo information. (fn) (defalias 'hexlify-buffer #[0 ":\203\306\307!\204\310\311!\203\312\313 \314\315\316ed\317\f \"\314\211\312\320\321\322\323 !\"&\210`\324!V\205;\325!+\207" [buffer-undo-list buffer-file-coding-system coding-system-for-write coding-system-for-read hexl-program exec-directory y-or-n-p "Converting to hexl format discards undo info; ok? " error "Aborted" nil raw-text t apply call-process-region expand-file-name mapcar #[257 "\301!\204\207\302\"\207" [locale-coding-system multibyte-string-p encode-coding-string] 4 "\n\n(fn S)"] split-string hexl-options hexl-address-to-marker hexl-goto-address hexl-max-address] 12 (#$ . 24055) nil]) #@92 Convert a hexl format buffer to binary. This discards the buffer's undo information. (fn) (defalias 'dehexlify-buffer #[0 ":\203\306\307!\204\310\311!\203\312\313 \314\315\316ed\317\f \"\314\211\312\320\321\322 !& +\207" [buffer-undo-list buffer-file-coding-system coding-system-for-read coding-system-for-write hexl-program exec-directory y-or-n-p "Converting from hexl format discards undo info; ok? " error "Aborted" nil raw-text t apply call-process-region expand-file-name "-de" split-string hexl-options] 11 (#$ . 24809) nil]) #@50 Return char for ASCII hex digits at point. (fn) (defalias 'hexl-char-after-point #[0 "\300`f`Tf\"\207" [hexl-htoi] 3 (#$ . 25360)]) #@49 Hex (char) LH (char) RH to integer. (fn LH RH) (defalias 'hexl-htoi #[514 "\300!\301_\300!\\\207" [hexl-hex-char-to-integer 16] 5 (#$ . 25499)]) #@76 Take a char and return its value as if it was a hex digit. (fn CHARACTER) (defalias 'hexl-hex-char-to-integer #[257 "\211\300Y\203\211\301X\203\211\300Z\207\302\303\"\211\304Y\203&\211\305X\203&\211\306Z\202*\307\310\"\207" [48 57 logior 32 97 102 87 error "Invalid hex digit `%c'"] 5 (#$ . 25653)]) #@78 Take a char and return its value as if it was a octal digit. (fn CHARACTER) (defalias 'hexl-oct-char-to-integer #[257 "\211\300Y\203\211\301X\203\211\300Z\207\302\303\"\207" [48 55 error "Invalid octal digit `%c'"] 4 (#$ . 25969)]) #@56 Return a displayable string for character CH. (fn CH) (defalias 'hexl-printable-character #[257 "\301\302\303\232\203\304W\204\305Y\203\306\2023\2023\304W\204.\305Y\2032\307W\2032\306\2023\"\207" [hexl-iso format "%c" "" 32 127 46 160] 5 (#$ . 26213)]) #@189 Insert a possibly multibyte character CH NUM times. Non-ASCII characters are first encoded with `buffer-file-coding-system', and their encoded form is inserted byte by byte. (fn CH NUM) (defalias 'hexl-insert-multibyte-char #[514 "\301!\203\302!\303=\203\304\300!\202\305V\203)\306W\203)\307\"\202w\310=\2036\311\312\"\202w\313\"\314\315!!\316\204c\317\320\321#\262\322\323\324 #!\203]\262\202c\311\325\"\210\305V\205u\326\327\"\210S\262\202c\266\203\207" [buffer-file-coding-system char-charset coding-system-type t default-value 0 256 hexl-insert-char unknown error "0x%x -- invalid character code; use \\[hexl-insert-hex-string]" encode-coding-char string-as-unibyte char-to-string nil mapconcat #[257 "\300\301\"\207" [format "%x"] 4 "\n\n(fn C)"] " " yes-or-no-p format "Insert char 0x%x's internal representation \"%s\"? " "Can't encode `0x%x' with this buffer's coding system; try \\[hexl-insert-hex-string]" mapc #[257 "\300\301\"\207" [hexl-insert-char 1] 4 "\n\n(fn C)"]] 12 (#$ . 26494)]) #@236 Insert this character. Interactively, with a numeric argument, insert this character that many times. Non-ASCII characters are first encoded with `buffer-file-coding-system', and their encoded form is inserted byte by byte. (fn ARG) (defalias 'hexl-self-insert-command #[257 "\301\"\207" [last-command-event hexl-insert-multibyte-char] 4 (#$ . 27548) "p"]) #@132 Insert the character CH NUM times in a hexl buffer. CH must be a unibyte character whose value is between 0 and 255. (fn CH NUM) (defalias 'hexl-insert-char #[514 "\301W\204\f\302V\203\303\304\"\210\305\306!\301V\205w\307!\310\311\245\312 _\313 e\311\246$\314`U\2035\306\262b\210\315\316!\210\317\320\"c\210b\210\315\321!\210\322!c\210=\204ZT\262\323!\210\211\203n\324 \210\313 u\210\311\246u\210\266S\262\202\207" [hexl-max-address 0 255 error "Invalid character 0x%x -- must be in the range [0..255]" hexl-current-address t hexl-address-to-marker + 16 hexl-line-displen hexl-ascii-start-column nil delete-char 2 format "%02x" 1 hexl-printable-character hexl-goto-address beginning-of-line] 10 (#$ . 27916)]) #@80 Insert a character given by its hexadecimal code ARG times at point. (fn ARG) (defalias 'hexl-insert-hex-char #[257 "\300\301\302!!\211\303W\203\304\305!\202\306\"\207" [hexl-hex-string-to-integer read-string "Hex number: " 0 error "Hex number out of range" hexl-insert-multibyte-char] 5 (#$ . 28667) "p"]) #@133 Insert hexadecimal string STR at point ARG times. Embedded whitespace, dashes, and periods in the string are ignored. (fn STR ARG) (defalias 'hexl-insert-hex-string #[514 "\300\301\302#\262\303G\304\305\306\"\306=\203\"\307\304\306O!\211B\262\306\266\202\211W\203=\211\310\\\307O!\211B\262\266\203\202\"\266\211\237\262\304V\205c\211\211\203[\311@\306\"\210\211A\262\202J\210S\262\202C\207" [replace-regexp-in-string "[- .]" "" nil 0 logand 1 hexl-hex-string-to-integer 2 hexl-insert-char] 10 (#$ . 28988) "sHex string: \np"]) #@76 Insert a character given by its decimal code ARG times at point. (fn ARG) (defalias 'hexl-insert-decimal-char #[257 "\300\301\302!!\211\303W\203\304\305!\202\306\"\207" [string-to-number read-string "Decimal Number: " 0 error "Decimal number out of range" hexl-insert-multibyte-char] 5 (#$ . 29552) "p"]) #@74 Insert a character given by its octal code ARG times at point. (fn ARG) (defalias 'hexl-insert-octal-char #[257 "\300\301\302!!\211\303W\203\304\305!\202\306\"\207" [hexl-octal-string-to-integer read-string "Octal Number: " 0 error "Decimal number out of range" hexl-insert-multibyte-char] 5 (#$ . 29870) "p"]) #@304 Toggle following ASCII in Hexl buffers. With prefix ARG, turn on following if and only if ARG is positive. When following is enabled, the ASCII character corresponding to the element under the point is highlighted. Customize the variable `hexl-follow-ascii' to disable this feature. (fn &optional ARG) (defalias 'hexl-follow-ascii #[256 "\211\203\f\302!\303V\202?\211\203-?\205>\304\305\211\"\306\307\310\311#\210\312\313\314\315\306$\202>\205>\316!\210\315\211\317\313\314\306#\207" [hexl-ascii-overlay hexl-follow-ascii prefix-numeric-value 0 make-overlay 1 t overlay-put face highlight add-hook post-command-hook hexl-follow-ascii-find nil delete-overlay remove-hook] 8 (#$ . 30195) "P"]) #@30 Activate `ruler-mode'. (fn) (defalias 'hexl-activate-ruler #[0 "\300\301!\210\302\303\304\"\210\302\301\305\"\207" [require ruler-mode hexl-mode--setq-local ruler-mode-ruler-function hexl-mode-ruler t] 3 (#$ . 30911)]) #@32 Activate `hl-line-mode'. (fn) (defalias 'hexl-follow-line #[0 "\300\301!\210\302\303\304\"\210\302\305\306\"\210\302\307\310\"\207" [require hl-line hexl-mode--setq-local hl-line-range-function hexl-highlight-line-range hl-line-face highlight hl-line-mode t] 3 (#$ . 31137)]) #@134 Return the range of address region for the point. This function is assumed to be used as callback function for `hl-line-mode'. (fn) (defalias 'hexl-highlight-line-range #[0 "\300 \300 \301\\B\207" [line-beginning-position 9] 3 (#$ . 31421)]) #@76 Find and highlight the ASCII element corresponding to current point. (fn) (defalias 'hexl-follow-ascii-find #[0 "\301\302 `iZ\303\304 \305\"#\306\211T#\207" [hexl-ascii-overlay + hexl-ascii-start-column mod hexl-current-address 16 move-overlay] 6 (#$ . 31670)]) #@44 Return a string ruler for hexl mode. (fn) (defalias 'hexl-mode-ruler #[0 "\302\303 \304\" \236A\305\306\305G\307$\210\310\311#\2030\305\225\262\312\305\224\313\314\315SE%\210\202\316_\317_\245\\\312\320\\\321\\\322\323%\266\312\324\325 \326#\324\325 \316#\322\323%\210\207" [hexl-bits hexl-rulers mod hexl-current-address 16 0 set-text-properties nil string-match "[ ]+" put-text-property display space :align-to 2 8 11 13 face highlight + hexl-ascii-start-column 1] 10 (#$ . 31941)]) #@16 Hexl Mode menu (defvar hexl-menu nil (#$ . 32462)) (byte-code "\301\302\303\304$\210\305\306!\207" [hexl-mode-map easy-menu-do-define hexl-menu "Hexl Mode menu" ("Hexl" :help "Hexl-specific Features" ["Backward short" hexl-backward-short :help "Move to left a short"] ["Forward short" hexl-forward-short :help "Move to right a short"] ["Backward word" hexl-backward-short :help "Move to left a word"] ["Forward word" hexl-forward-short :help "Move to right a word"] "-" ["Beginning of 512b page" hexl-beginning-of-512b-page :help "Go to beginning of 512 byte boundary"] ["End of 512b page" hexl-end-of-512b-page :help "Go to end of 512 byte boundary"] ["Beginning of 1K page" hexl-beginning-of-1k-page :help "Go to beginning of 1KB boundary"] ["End of 1K page" hexl-end-of-1k-page :help "Go to end of 1KB boundary"] "-" ["Go to address" hexl-goto-address :help "Go to hexl-mode (decimal) address"] ["Go to address" hexl-goto-hex-address :help "Go to hexl-mode (hex string) address"] "-" ["Insert decimal char" hexl-insert-decimal-char :help "Insert a character given by its decimal code"] ["Insert hex char" hexl-insert-hex-char :help "Insert a character given by its hexadecimal code"] ["Insert octal char" hexl-insert-octal-char :help "Insert a character given by its octal code"] "-" ["Exit hexl mode" hexl-mode-exit :help "Exit hexl mode returning to previous mode"]) provide hexl] 5)