%!PS-Adobe-2.0
%%Creator: dvips(k) 5.991 Copyright 2011 Radical Eye Software
%%Title: bashref.dvi
-%%CreationDate: Tue Oct 22 11:07:57 2013
-%%Pages: 173
+%%CreationDate: Fri Dec 27 14:46:25 2013
+%%Pages: 172
%%PageOrder: Ascend
%%BoundingBox: 0 0 612 792
%%DocumentFonts: CMBX12 CMR10 CMTT10 CMSL10 CMSY10 CMMI12 CMMI10 CMCSC10
-%%+ CMTI10 CMSLTT10 CMTT12 CMTT9 CMMI9 CMR9
+%%+ CMTI10 CMSLTT10 SFRM1095 CMTT12 CMTT9 CMMI9 CMR9
%%DocumentPaperSizes: Letter
%%EndComments
%DVIPSWebPage: (www.radicaleye.com)
%DVIPSCommandLine: dvips -D 600 -t letter -o bashref.ps bashref.dvi
%DVIPSParameters: dpi=600
-%DVIPSSource: TeX output 2013.10.22:1107
+%DVIPSSource: TeX output 2013.12.27:1446
%%BeginProcSet: tex.pro 0 0
%!
/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
-3 w}B/n{p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{
0 S rmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end
+%%EndProcSet
+%%BeginProcSet: cm-super-t1.enc 0 0
+% This file is generated from `T1uni.map' and `glyphlist.txt', `gl-other.txt'
+%
+% LIGKERN hyphen hyphen =: endash ; endash hyphen =: emdash ;
+% LIGKERN quoteleft quoteleft =: quotedblleft ;
+% LIGKERN quoteright quoteright =: quotedblright ;
+% LIGKERN comma comma =: quotedblbase ; less less =: guillemotleft ;
+% LIGKERN greater greater =: guillemotright ;
+% LIGKERN f f =: ff ; f i =: fi ; f l =: fl ; ff i =: ffi ; ff l =: ffl ;
+%
+% LIGKERN space {} * ; * {} space ; zero {} * ; * {} zero ;
+% LIGKERN one {} * ; * {} one ; two {} * ; * {} two ;
+% LIGKERN three {} * ; * {} three ; four {} * ; * {} four ;
+% LIGKERN five {} * ; * {} five ; six {} * ; * {} six ;
+% LIGKERN seven {} * ; * {} seven ; eight {} * ; * {} eight ;
+% LIGKERN nine {} * ; * {} nine ;
+%
+/T1Encoding [
+% 0x00
+/grave
+/acute
+/circumflex
+/tilde
+/dieresis
+/hungarumlaut
+/ring
+/caron
+/breve
+/macron
+/dotaccent
+/cedilla
+/ogonek
+/quotesinglbase
+/guilsinglleft
+/guilsinglright
+% 0x10
+/quotedblleft
+/quotedblright
+/quotedblbase
+/guillemotleft
+/guillemotright
+/endash
+/emdash
+/afii61664
+/perthousandzero % PERTHOUSAND ZERO
+/dotlessi
+/dotlessj
+/ff
+/fi
+/fl
+/ffi
+/ffl
+% 0x20
+/uni2423
+/exclam
+/quotedbl
+/numbersign
+/dollar
+/percent
+/ampersand
+/quoteright
+/parenleft
+/parenright
+/asterisk
+/plus
+/comma
+/hyphen
+/period
+/slash
+% 0x30
+/zero
+/one
+/two
+/three
+/four
+/five
+/six
+/seven
+/eight
+/nine
+/colon
+/semicolon
+/less
+/equal
+/greater
+/question
+% 0x40
+/at
+/A
+/B
+/C
+/D
+/E
+/F
+/G
+/H
+/I
+/J
+/K
+/L
+/M
+/N
+/O
+% 0x50
+/P
+/Q
+/R
+/S
+/T
+/U
+/V
+/W
+/X
+/Y
+/Z
+/bracketleft
+/backslash
+/bracketright
+/asciicircum
+/underscore
+% 0x60
+/quoteleft
+/a
+/b
+/c
+/d
+/e
+/f
+/g
+/h
+/i
+/j
+/k
+/l
+/m
+/n
+/o
+% 0x70
+/p
+/q
+/r
+/s
+/t
+/u
+/v
+/w
+/x
+/y
+/z
+/braceleft
+/bar
+/braceright
+/asciitilde
+/hyphen.alt % HANGING HYPHEN
+% 0x80
+/Abreve
+/Aogonek
+/Cacute
+/Ccaron
+/Dcaron
+/Ecaron
+/Eogonek
+/Gbreve
+/Lacute
+/Lcaron
+/Lslash
+/Nacute
+/Ncaron
+/Eng
+/Ohungarumlaut
+/Racute
+% 0x90
+/Rcaron
+/Sacute
+/Scaron
+/Scedilla
+/Tcaron
+/Tcommaaccent
+/Uhungarumlaut
+/Uring
+/Ydieresis
+/Zacute
+/Zcaron
+/Zdotaccent
+/IJ
+/Idotaccent
+/dcroat
+/section
+% 0xA0
+/abreve
+/aogonek
+/cacute
+/ccaron
+/dcaron
+/ecaron
+/eogonek
+/gbreve
+/lacute
+/lcaron
+/lslash
+/nacute
+/ncaron
+/eng
+/ohungarumlaut
+/racute
+% 0xB0
+/rcaron
+/sacute
+/scaron
+/scedilla
+/tcaron
+/tcommaaccent
+/uhungarumlaut
+/uring
+/ydieresis
+/zacute
+/zcaron
+/zdotaccent
+/ij
+/exclamdown
+/questiondown
+/sterling
+% 0xC0
+/Agrave
+/Aacute
+/Acircumflex
+/Atilde
+/Adieresis
+/Aring
+/AE
+/Ccedilla
+/Egrave
+/Eacute
+/Ecircumflex
+/Edieresis
+/Igrave
+/Iacute
+/Icircumflex
+/Idieresis
+% 0xD0
+/Eth
+/Ntilde
+/Ograve
+/Oacute
+/Ocircumflex
+/Otilde
+/Odieresis
+/OE
+/Oslash
+/Ugrave
+/Uacute
+/Ucircumflex
+/Udieresis
+/Yacute
+/Thorn
+/SS % Germandbls
+% 0xE0
+/agrave
+/aacute
+/acircumflex
+/atilde
+/adieresis
+/aring
+/ae
+/ccedilla
+/egrave
+/eacute
+/ecircumflex
+/edieresis
+/igrave
+/iacute
+/icircumflex
+/idieresis
+% 0xF0
+/eth
+/ntilde
+/ograve
+/oacute
+/ocircumflex
+/otilde
+/odieresis
+/oe
+/oslash
+/ugrave
+/uacute
+/ucircumflex
+/udieresis
+/yacute
+/thorn
+/germandbls % or /germandbls.alt
+] def
+
%%EndProcSet
%%BeginProcSet: texps.pro 0 0
%!
dup 110 /n put
dup 111 /o put
dup 115 /s put
-dup 123 /braceleft put
-dup 125 /braceright put
+dup 124 /bar put
readonly def
currentdict end
currentfile eexec
12A20A3068D843B5FA016B8C6B9BBD36356BF85A128F96F0CE861FB9C998BB21
E8624E3DE453C686D41DA7B72ABD919C5BE2F24440D11962C77742A8C0115A72
9E974E71247FCD58318A4347813D4D5A73CF882A7513E2EFE05CE8C7195BDDC7
-DF250B59AD14D02D2991E2D0CF2D0022EF52D78781711697FB784B832DB7FD5D
-A70B5A3A2F51985422B685644B23FB4BD39E743817606055EA9E919202151B7C
-3374BD7F327FAA9E033893D3B05E305FB06C4098FBC0E96C9746CEECB1A71DFF
-174DE4BFC20805F23170D4E9CC591CB605E243C953608656053E47D42692A516
-54CDD59EC3DBEFD075E63B234272548CBDF06E539A62441AAFC6F19FF9EF4C9E
-59B4E5B46EE95B68678F1CA9507342AE1BB5B64C4F0C0DA6110ECB0DFA7120BC
-EEAADE70224CA0AA0DE936474CD031B5333FEC81039B73F62F9AEB9EFC2ABFCD
-91BC8221B86E5FA9E077300E2240FFD8ED945485EDC31E1628908EE3CC15356F
-AE422BAEF4CF53716A5DA300B0EA0864C09EFA4B80355337349FD222079081BA
-2F3D4C652BA1BB7ADB825A7DA1F7FE91B22E974AD9DB1777CA2B9568D52FF869
-7109343257EF3197B571790146662A4228A807D5C03EEF3649498C8A74A1A57E
-D808D1557B8F6CA4E8EF4AB0D35AF5F1292EB70577C5FBB8C36F63BB1F3B2CD0
-FEDAEF4BC620290B59C745B367ECDF5CE962EBF66A22B2D80F275F1EA4C0E20B
-76259BFC054BB4BF0A9A7869ADCBB18B21067CE4548982D43DF7C20B5F1573F4
-9A82B4746FC28220FBD402EF6F64C182472E732CB71C4382637DF498B5181B09
-331ACD2628B0D7320F180FF56E10E4C00A54C92D98578BCD5050EB477F8B5587
-5D19A43AEEF01B1898D9B33DB4001364DE863BB463095F4A880A288594E9C29B
-92C038B2AC0519AA4E0E2796EB9D8BCF2344207F57C1AE7EE6538DF1F13DCA70
-9D04886CAB82BB020C7425B9206BC84DDB28735A0E0FAD39E2DABE78DC83C438
-E6DAFA3BC97F19F250300A0629C4F7D7DD2D3A44BC64AB9E5CC4E6CB42D78AB7
-2FD0EAC23458847740997AEF151BF758E50D06839BF6A6E46824044574A18F21
-D595F2C9E958FAD04B6F31375D24E1BDEEE484E46D4128E44D62711212867ED1
-12C3E7FE9FE9AE0BA73D7F39B4A4F4918D22384B30BD70AAE305F27905C64082
-6603F819836432CF488668C1102817334B8A6DA8715EB2486656BA048BDB7388
-6962CC2FDD4E659F92C2E651DE36654F986AA54EA16ECBAD44E18323AFD392EC
-949B628C2154A2F84831A0369C2EF715EC943E11DF179DF507FBCA729A367BAF
-D9CD115F5CCE44A2745F62F0715C8654EC1502BAA0CAD3CD9A4B1FA3025BFD8F
-C4DE0F32E82B8E2EB3D2594C9FF5FAFB60ADAA1EE1E83C181FDB49F677082E29
-0D3798E85DEF6B535E46D455E94B0FA07D55C774BAC2BA6EF6B11DF3019DD48C
-3C52E1F3B0891094F7C92D83695EDE6C08FA10FE826C08429407824C45B4266F
-E51889E5C7CD98DB6F32C5C96D4C87A220A6DA621F7971DD723C68B847679AFF
-509F5882E39A1BEB248790DC8B1CCC48951B1A40747A7F63E602D5E45F2BB16B
-72F5D48DE4D1DEF6B7EA7EA9CE63170925D5957D64E13ECF00966DE010490B47
-C85B7A98AC16F4291ACB7D81D1ACEA572FEDC8337C7DC9B734C2EFA2EA52E590
-6969682039B6B991719245C94586F52C4DD92BF33457DF69B42BAEA4F1222D4F
-EB972C57A0BAA11AEE39E4F94D9F4F098416F1497F0DD231B1DE520F12F24BD6
-47C7B3FB15E963D52C8137BC1243D5731F76559333DFFFF2F34F47FA31EC28D0
-C78C54A599A97EB7C5F07F26A266024CA314BD198D06E30B775BA30AEAAFE10A
-10D52067EEBA50EB67F01426426CCD079A6C016C86EE5FCF229946EC02F9BD52
-98C1C40D7C4797ADE8ED7FB1CDCF39A1AD5C0DE46B543C3738C305B57C152FE9
-2575ADE0A3CCE1BFDE234E5DAA477BE479D76BD69FAC6CEAD570C97802A34A55
-35CA2D6C2006C4D422EAE12F72C39FF0562FC497D0B9AD301047CF1D42543295
-A16A8C06B1DCFCB0CA5FB7A29541BFE828E2D1B6B0034C2F0D48346AD98BCB42
-B3CC9E57F5CC0EA63D5FFAE3ED4DD44605E27E5913388F9661CF4A7B6C2BC76A
-A4D944B170DC4BFD0411A8DF2D36D514E12F77231D5AB3DE6112BFB5C6309F92
-31C0A932846E7C2BAF2306640B9E54C583F6486317BB4E6308C232E26FD86698
-636F814E6D55C8E1C52B184F5EE6518A86F11B6CB55EE663DD8D71F5FDBBFA71
-394638EE1450E851205AB4CBF9ADDF
+DF250B59AD14D02D2991E2D0CF2D0022EF52D78780A34D2A5EBDB458198535BE
+8B67CE5E1C9152A21FBB14C4E72828182A77418DF5E3439ED90AC7529AF0E761
+A8FF0676364C61692CCAD317817EDCC17260FF7E2BD3FBD5B6BB078C8D5E78E2
+E2344C0FC14382F41601EE374DBBB0C2465AED57BC4ADF0622B22B2B9DEE8A65
+41F49237821D3C04AC267AE38B4847CA255747D41718122F35239FD328634281
+701854F90CF39734734FD82C4A893B68CA3DD5F353A5416BC710F8B627AB30E2
+CBE1887C4F4A8892FEE7FEC1FC2FD27005C3B416E3146D5C0F157710504DD523
+DD7196888D0DAD10D8BA80034973346DA10C42C39F13C7A1CC3A206874DAC8F4
+FF91066FE31954D26803547C6D73CF884ABA4E9919F94C61BE31389F338670CD
+EDD348C3147161C8A013BD73075E9D5453BB63F0D1C1FAF2D3508999293EFE73
+1938DEAAF8E9912B570CFA85337C0097B65F0BD87BC2985088EBC9C82C603762
+36C212F08216BCF7409C3C0C45EA3B3A70F355C88B00991913B8B37B394A51B0
+F31480B8864B519B46A664D84DA0DFAA5EF761088C8D753BB68DEDAB413082EF
+A3D13D88404B22353D13CADE3FE1A4C4C84B22D6E01883DB55B1070FF8DF4AED
+629BB76EDE1DCE72DD5E67DC7A65A823BD897435159D2A19EF6C1B8140DF6FA3
+B134DF24C97EBE566E371DAE070410144971C9591FC918AF87D5282DDB0B5646
+4FEDE6C79EB2442F59D3C9078750AD6BC35A5ECADC438496B1AD5DAC09445A54
+7DED15E0B678EB9310B3576A4962D846B405B019F7D9601A0435B34CEDB468F2
+249228EFB45311A50211148FBDCA8141406B7AF8A7F1712E15149114134BFB10
+D10CF434EC53D2E1482B3CAA38A50F3712C0FB9AA1452F468595BAA7C16BEB59
+B2F3C6771FECA7C8B2608C37FBB7142D61F31E86F5B712FE3B7DFB52153C6CC9
+95AC0DC8764DB20787FC4366FB90441976CECD1FF9D4ECB82FBED648C292401D
+DC2B6A71FAFF6D22C8FAEF0928C7280E8B0DB146EC742F8A479138642430AC85
+F6933F11D5171C0BDCA8DD5155489C4E9066882EDC00B078108B4A3C605C165F
+184C4198F9FCBBD65FDF7B7AFED6768C847E3C5E9788402902976DBCD5FB3CE3
+3D592281A1B5A17F0E648ED88529D43D525DF5FD966F9707C264A5AA7F703546
+F103259FC2F77CD379FF00A34BE6385EAA9DA5A06C7801F000EC795747997CC9
+C31D4EDA25CD2037DBD53DA48F51FBB2A757971D33F0C3EBF1F6B051F6D995F0
+082CA7139AA8C990D10197A25C613C199A634B63C5E8B8EBB91272F510D13162
+47A2ABB34D5741CD9E45022A81934C3CC7A8042BBF28A3E9BA7718E08AC91E35
+9C1864328AB297AFBF2DD62A13EE850B12DA21E621AECFD642FD70A42520E854
+9BC128C75DAB4B316F3FC8A944E6102B2F6700FAE355319F079027274E610266
+83C4F35A4FE9689BE48536E93D0C6C5F6011707F95E5DAE8DA8256B7CC81F688
+4184B8E96CBCF86E99E515AF5F90B209228DB44EC8618D12F602591F010A2669
+2BA8E81C1E18161D532D0C61DC696860227170A05406A52A6D89BF19FC952FF8
+D47D8E6333C1828A7E7E3B8BB1C7A85C35AA50AC0CC070E540D8F0BF951C6F87
+4B8A4E41D65350806F04B06F3F98E881649F3895D83A27B5A4F2D4DBC8EC483E
+5E43E196A6448A82B881F7EFF91D6C99C287E3439C5E6ACA6A53070CD1FA6384
+068F78E11E6F596E080C84EB0CD85422B46339CC8B5598D0D699C506ED02884E
+3C9B9EE27357AB5D42096F
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
dup 14 /ffi put
dup 33 /exclam put
dup 34 /quotedblright put
+dup 35 /numbersign put
dup 36 /dollar put
dup 37 /percent put
dup 38 /ampersand put
dup 59 /semicolon put
dup 61 /equal put
dup 63 /question put
+dup 64 /at put
dup 65 /A put
dup 66 /B put
dup 67 /C put
2A7BC536F373C0EBAB41C780E56F5BD1CA645DCED5090CF32D4F0E5A780651A0
477CB27558B2D0E2AE3D0A02565EE38D5F437D01308A6BEF55E80422F5B5B56F
6DD11ED717B034083F9BB1536D76E321255A137E618B398875B5BB8F5AF02B6E
-B4DFFB173C424B2619F448F7CC3A206BBE5A6246CC152C59C909C600F63AE940
-60ACB023DEE119BF9575D15049B5DF6441715F68B7082B9444408864120F5EAC
-9AA03C7C0DC1FFE2C4F80F12B93F6735B9F0BFB8FD5009D8ECE097B08A198D7F
-0DD0D8F3F32E23EEBE92D456E6C19F095F70FB5A0A4EC5A0A28E2A1B48E97728
-18BB643C3174C5B882454561D9FB758B35D8D1AEB3C6323693353496BBBB7A21
-5DEDEBA1AEAC77D8189B2F2E67A9534E197055EDA86604E54A0692BDCD66B790
-068C176C2DC9F8C808E941210A9701E7036C6090536CC8E57D7930DAAB3810F8
-CA78AC8BA0583A692B3707D8EFF67852F1D10C2316CE94B0A86565F33AA21D95
-F10EB3AC20610AD3E994906B46C6341AEFFC14D68FA18DCD7F47031862B77761
-33AA4697C83E422B68E3088C75454BEED7F2B2683DEA162D64A2C13A6FB9AEA4
-805376FC30C38D71FEAB0270ADBCBAD2783F4EB5CBFE07B3C8092CFB44CAC100
-596981C49C201729363F55CB5BD83002BD6C48EB90BD0025D0DE37FA60BD65E2
-0471A4D7603AB24B35F54D8CBFB69C66F8B7479DC373EAF98E179445C3C75D83
-A4E3F5FAD36BDF55E1277757AEDF5C5E653CD8D20E88A4E2A35C3DD1B28EF3A6
-AE0BAF0B4EE0183528D3D4D477A37B1F1C8FA2ADC6AD45436B44E7DB3CDA336C
-21984BD90389BB4DDC946C5BB90DD36F3F2B717EE91AAE5DEDFCC61346445AAA
-20C69B691AE897BF37C4CD53E7EBBD2A688329980006FB57DDC23A76CC50319B
-664277FA194B7B3E6B367A64DA7EBE5C2F49BB2654E9F9E2F90DDAD323134ACD
-7E791DD8D54952927ABDF05859F1E7A261142BC8E3FEE76D68DE3D934A6CDEA9
-EE0EE9B475A5E0A8EDD62B373557B19FB378E20CAFF7E6D7B8971397651754F2
-0C1AA7352058FFFEDF2678D577786B0A1A8D0808B3E8730B61181173E1D303F1
-F7E76AD64859FF5174978587BD32367BE92A0BF88EAC6C6CD1F4C961C2042C3D
-2F30FB270135154DB5AA09BF613BB9E481B003006E230362A670175F08FC95A0
-9A04E761D19EBB5B5E35B178FA281E1F9D542012BE66BD263D5E0D33F5D9AA55
-65AA4E7455DC8DAA3B1282847D24867F1E2FFC0BD6FEB64EB3E24456C8D7BF03
-2E63825C24B8D6EB7CCE2D711A218FC3388321F35029B10C914A76A86A2979DF
-065AAE38A3F880BA047D4D1DC7FF83B27D5E0364CE9BF40618E9AF2079365F3D
-F3C3D03B6140A53DE5FDB0D85D448ED3EC184EBA2B807FB3013B3C1CA1A586FD
-ACDB00F8DB768ADA36F90005EAAE1A89E8E40DB045F2C1095F8958D9193CAB72
-ECFFB9AF10717656BA3B2E3D09B0E7911768AA2B661A2C87D66FBE26CA23F6FF
-EDEDBA40CD167F1442F4560EC101A605EF5A76972190424F0950923396C7E375
-D3B55F06B378166B6A2472B83F8E77810BA74FC39102DCA7DF768449EEDC53DF
-25FF749A0212C8E77E78B7C6E53F306FC870F71F07F7202CE18ED5A1D68B8B61
-E653DA69E05E6B2C0731B3D298AC63257B63B773CB51D9C9651C5D7DD655F503
-AEBC24932ABE55B9B2FAED40FF745685F0F7DAB850521F1F28934F151CE0E760
-3C95C6FC654D51E5F280BE0301EEABDC20A53CCD02D6EBB7C743DAE40684B157
-8E69DE455563628C63938D6E77E76FC488E905753D58A74E6059F3834EE88B5B
-E11BD205B63E7F44AED092763076166B8AE25CD12A3F2294B94C19724F97ADD8
-2E8FEAF5841F52D654A5E366454C625413D5D14069BDB1C02D34F8C1E04669FA
-50BAF7DF9FEDB9745D3C220886B78DE4B272C043F37D8A9B97C584B63FEDAF5B
-EA8FDE3A373DAE7C2C029C892C4501E140EF3ED7A1710ABD761BE6E39CB18F55
-21529A69844CD87C3E55284348E9297B5969A37FACE43C4E10870B61801CCEA4
-A236288DB3F6537F7E6EDB5A39B0BDDFB74523F3B78026A98C6C7F7647AE4005
-51F0B7333CF9DBEFAD223CF07D577F09D9E40E4DA34A7A91A6827D628FBEC964
-7BD672722BE1647A4A51ED1E53536958A13DF69165C10471CC39B939813DA837
-26506BD312569097CE4C542330127D8316574BC6B13F234B514B13B151F49F38
-5FCC1511A11B3E488E31E7EB29ED38D4D9A04D1606263ADCE796364A0E1EE611
-73145BA0ED50B329ED72DF373701AB8F83DDC0BE85D296C396C94471E617993F
-34C7F27E96963A3EFEDDE4E89BDBA7C606BC6FE2AB63CE2C8C52724C004924CD
-B284DBEE7559427559FC1A5C5EE739B150E03FAA4573E4FA0D16090679BEB417
-78621339D334002D01BBEFA8D4D8E02425105261E9B093CBB0337301155CC554
-7B4AFDBA72FF0D111D26AA6C89AE3D8BF0ED28CBA683301DE49049527C0F8618
-A1B48D9906D88475DF2F3A9657BEFCE34FAD0A4801B959221A49C6C7425F20E8
-889401BA118221E6196957A790C159360437D7852A27E752C05C01180F80F2E4
-5FB6D1A0B2B781546585A448E7D528769B554936849DB7AF7CDEB393B86CFE30
-0C4430F7859146D7A5E371F0C443AC6B5A6876245643A2E147806EF7E65470DC
-5BA1574A7849C14F51951453FB88BCA11C8B6D5B3BDA0DFE79B68B9C3AF7CAA6
-DB4412E0AE6D40004418B10DC55DCBEF8411D6A2B4238EA63B9C4B7B7210757E
-4B1148742AD2ECDD1F39E47826EB95E38F304BF507AEE75EA8F814C537FA1494
-FBF1E1177B98262B9C7B3E06028936A2BA5741F135FD20B32BC987CDAC91C6F2
-A528DE9C430ABE7B8A3DFE96B2C4B7453BD94595DDF7F726810143A8BD7F121D
-4E2745AA2A2CBAF48576476D8346D0637BD329FCD2D15D164A78B4A845421D98
-2E9B65C14E8810A2E4ECF05966B2DAFD9FFC2E23A27E74AD8A8F41964B206CF5
-46CAA9F0CB4F9302113C4B84EABE1C34EA1DA560286FB89D069E933AAA6CCC8F
-8AFC1A6D5CD46B2D3FC079C42A3CD448B724F859C71755DE746791E6D2663C62
-C801F5A3851EE07EC782DCB89CA9284302F1B238962F02A970221E248BA87485
-3352872C96DF0AE2A25125880852F9BC3FF3EC521E5377907E1A4823F6F71D8F
-4A00F6B64393895826FA8A795A22FF0ACDD7B434BC0B6B8CF644F277B5AFC638
-CD6110E69851E986261C4FEC776D9FF446F974F01DA8B66C29AE35FDD26287CC
-AFFEC304EF0F4B4D0207A48822373DB031BA5B0207A27C202B8E6A9225569269
-FF224E7A5C7952A2C9CA7C574877654F5A885AEB53157CD9E1F86FB8CE6BDEE6
-3B4B18BD0DF048CACAEB8B1653521B1CAC70674C8E0E0F52D1D20FDABF255735
-AE84F2460B88FAB55BDEBB0E92319BA90A6860DC939EAAF454D3A1E7CBB60ED9
-F94363F069F6A7209BC408E29C2769BCC287A634BCB8DA80836DCDFDDD265D6A
-BFA28CA76A1ADE69A8EAF62540903706ABE09BC0E91DD87EB38D1482BF79862F
-85E4131AD1B172EE0F47B627EA39F14BF808E2E7399E7A59886A48B57F06BF74
-2A81D5A429F8D96153B68EC82AFE4E3046B20CE5B56A6197196EB1BF5063E415
-F75969C72918F0FDBD0B6301A3582DF9089151515B021904659D1BE4B43B29D8
-A485C48F803C9F74186C527DCFC6322A48E4DA39A29A7DA79EC395AE61FF11BC
-9860E8036B67A06CE3ACAC15BD6F5E0BEA287EEE4F16EB3C905AD31BEB76E434
-028449F1FF147AF28F382929EC5AAC6F0528D4A5600895EF0852908D4BB6986A
-34BE0B0F5BFA99443441E4396ADF11820A37FD7EB079601CA692CB3C950447BA
-46AEC7F4BF6EA0787F9522A015D41C58DC0A9ED32103892D3071110EA6189FCC
-940C1F39290BBF3253CB42E015108018D91CA8EF5D52BAEF026FD1D20C395B55
-E0C6A8C0E199E9678594AEBADB4C7CA15CD16B1D97B9E9414077E4B9D7D37482
-A2153944B22860F6E736F0E3B88AE3B66C7FBAD2545E2867F7728A4E317360AA
-51EBA228CD7BD89C5CF33F50F00382E2F38A75837487AD9D5058423A5B0D4FC6
-C40ACF7D697AA00F8C0DE7B99855022B457C2268E5316F7F496326F3C86E7EE2
-83FFC6DC42BEB91978670559466F2918BA13C5E7BCD36D589100C292D0FC124B
-567BC886C60C646A20A0DA1E59620BC57F2CC3C7042C08FB6D992C2CEBAA45FC
-B81B5D09D8FF740CB6DD5E908D6821B32E0EDEF8660AAAFA262844D5213914D2
-828D12AB9EEEF9EA65078B05975B4625D5505518C08CE8C150F5CF933B17C7EC
-879D9839BD08BC38F84A0AC362C260CD0B56A504351AD2DEFDE3EF044F9312F5
-B9973552C834A293EE64C2BBA4D47B2A95DA434BECBF22D26624CEA215B6F364
-1902EB2150210540FF8B9678AA483FB1C3F103DD6DD86B0E3016A4DD00EB7B5A
-BA836EF9E9F26307F4648603AF92FD8B9EEA19125091C3F33F50D9EFA965B7AA
-E6D8F5EEA76A1874DB12C874162074F615A0C141647EBBD184AF5D53418BA286
-AA3A10106EF65F09511B26EA124725C81583B79351B96322257EA15583C600C6
-0E8307CAE7853FA002CADB2A90CDF98C8FEEA629A25037E718017B87B806145F
-F20E0057F9CD60F0133CB01BDC8E502D2C4B9100DBEDF93F955A35B70900EAD5
-C045B891E0CFA1F75031BA2B346D0CF632BD629A9C5D3258C1D7E0C9D1D1593A
-110BDEF6FB4B638AFC2F78DA1B4CB524A2B3502A4D62E7B13A3D55A68B00199F
-5687A3D259126CEAFADF2499D0133959B0BA9629D95668D7AF12D82A906236A4
-837635EE78F931B00EC1BEFCEBD8B97D468A0D38B449841947B4A772BBD5FD5F
-7B1B657B2520AAA600A439E395584E339DCBFD6D0256006F7C9D39904B55416D
-507548A98EACF534C4587595D6A9E276699BBF2BF016D4CEF438CA37052FDAF3
-DA3D2D3441E31A623D3CB143119FF95A1F04BA7D3A9B5E561C492658B3F5444A
-7DE7BDF42A7E211A6F624BAFFE91D61EE884FD84F06124ED9677A15B6131FF49
-205BF0B9F7CBA8D2A6BAF952F5022EBC8AC56567FBE269472A08FEA231219970
-B7A9D9842EAB692AEBDC37C749562680FB7953D8359D8307558B8624E048BDCF
-C45CCE9134E120F8EA1A4186E57821CD91DFDA1512200D0F1ED8844A13554EFA
-077E848618A426A480B82B4556079C11393F07F355AB53494B965A3B304DFE8B
-020CFCB4782C58065F0ABA591F4B807003ECFD955C73E38F37CFCE482B2A5A30
-D32D608A142EB964B6B66C3B6F0FDCF83BB5E36E45E43EB045A7BDAF0C75953F
-D382040EA2B54AD9AF2F7E9B582B19318D7987DDEA32280EAF70407FC80F3459
-F92A5F4627E229EF4ABAE598BD9C3324B07276B9E945CE4B74163B9DE723933F
-6BED2E0BE0B8E95ABDE2C4FD331CEB50944C8EA073AB32C0B7BCA5AD33455872
-08A32D4C25F67FFE0ABC8DA05DAF65F6886BDDA191B493BA7A1211CC98C7FCDC
-25F0A251CE379F378F73F9C3FED8DE5AEB3D4C8E2CCA39687138DFF0D1E26E96
-E9D3A4F6FBF5CB961911C0018F762BAF53CEFB2AF145C55E7AF367790D2BACB6
-411D6F5DCE3F27C4C490A9852ECF4C6A2659407FFD1FA16B5C8EA47A5BB00E34
-4BFA4446A6925E5D5752245AEDC5D4E5B2BF51908ACA64418DE64E3C1DD1A052
-BAD0CD6A1176091CF1A595BA13CF260ECE6375BA1A5ED68C0F21BF01A7EABC4C
-189E2FBA359BC17FFBE565628CD01662CD4EAEF2AE0836A742381B59E4770907
-0252C2B21CA6471173CCA084F38E1A10B5D38E4D609BF30BCA7FA4223A4B44CD
-8564002503E8C1FE7596CF9F3F6ED4497223A1AA2844ACD08BF7E7804BBF232A
-FC2B030F1126608707757B37F2BF295B3EEB61ACA417C12C877600DF9E412EC4
-22313D45B0A92903DBC36F336B9CDEADD122024E4E9EC1719A05AF161314CF59
-550518D598C1F432F6F619D68C47250AE9631837EEB52180E307237DBC0FCA5C
-D6445C5EA4284C0834AC268955B7084BA7D1384E8D4FBEFCAB3A1C8735FF57DF
-CC8FFE2BBF52AB9AC097C1AF30C46548BF5CD32D71502CBDEB3982F85793C229
-F72039A25336266E5BBEB3005FE48F771ED9AA3161E88121B62F8D03976FFE66
-4D40E1DB342A9DC540225796DB48828FC2FF676382AF3D3E70E75DE05D7AFD43
-DDD0A21B5F28209FBE9C0D1713595D17EC31F94D3AE98131E25663BEEEDD8D77
-ACE63ADA18690128517D2A9C1EF0EFD2F8BC2C68F4DB891B4B5BE0A0A647FC5C
-7248EC6256375DB235F48FE85AB575EB69EE092289102409A26E924F816408E9
-6A148480E3E0A426607D185993F36CCFB81468D01F25343F91969EB0C65C73AA
-2407EE10DD59CFF0DF9BE2FB4069D03CC036E4EFC709B039F529F6159A3FAADC
-95FA4993E57EC1DEEFC39131156A75BDC06A2659DCDC0A9FE78C4F6DF5ECFC77
-8D555E10336C4B9A873CE4F58A9607EAF7AD34C45A8C788864C39B9750E4CD30
-5BB52329B609780125FA6960DDB2CC21E368571785C1E61D4BA2CF57E996312D
-8785290A893183DB2B8590E4C65F25E6B67CF08DF9713FE785DE8956BF9F6E95
-C8D0BE11BB23DB038BEF4FFD7A5C3C41F88A72A64E3C0358228DDFAE06E428B5
-2ABF80AE2D3C194A4C31DA6F294E7B988AA655D3105C5E0A01CA3D2F073F1C09
-903CAB398F3E78BBEAEE9AA555B5867D1A577BE0B7CE7B92A9C2E418C156DD6D
-1C286A527A8345B852E6E364FD6DDAF9A350446AE32D8C195FB34D177BB12278
-03B0A4C993C2CC198476C3EB7E910FAA8441062670E619F06F543B4F0DBD92E8
-DDD0F9EAED33CC1717996FF3C961F1A31BC34351FE75CB3AE344D97D164C9C47
-EBC30F73E3782842FCCD01C64627602BD39C36EB76DE02AE3D71472C78112819
-A7B109DEE09357627A3AFC0D48BD43D322E9B8BF2C05EAAB45D3495B86A1E639
-5E43817B1ADCFD85BE0AE455EF4EFEF75A6C52CB8210AF749222124594646BB4
-5C6E89246CD90B89D60C2E141CD5093AAD78C31F724EB7C14F69AC451C68C700
-A520FEF0ACFFD8B4B2092A3D6534E2495D58B8AB3D76199A62EFDC2F12C39606
-EF7B0F73FB37BACDD3A3813220B4CBC66978AB207DF7164F05DEB3F9F7916F21
-647A6482D143482480CC14C7676CD04094C740EF0CCFC2AEA3B4E4DBE57DE61B
-B67188036B013E93EB47CB55BC96C4DFFD6D671602E53C7807D04597708FC7C9
-F56819B28BD7E2731F3A0C71F08CEED40C354946F5CA237467DCA92069CFD851
-7BA1C0E398C721E597D47024670F64EF00BCC74036C9FF94BA8DDA00E2B5F152
-8F6D8FD9C58CE4B32D1F9E17490B76FB107AE92E4BE09378E00ADE4C7E737D4B
-9B26672994CAFFA7B04EFDA7332AC5FDD175E996B4DF867A5A5B95CD40AEAF51
-5B91313A4ED9D4EE86EC9B5CAA594AB82F85D89B42AF50AACED0CA3046292E9A
-D8EA95CFD0F67259D21E1C6D9E3CA990C2B159205F34F270EDD783277FA33993
-5F8EB1163FEC6C2A627218BED8BA4C38120E46BF161E75B623811C1B2E1FE99A
-CF93CDF69995D628C6965CC12D5216C1A829CCC390DBB87D6FC5DCD0CBD188C7
-DFFFF86E17D5AA1162084DF13F51D139A3932B8107091A507E613F8FF9AAFC8E
-EC4FB236994E73D8277EE91FAB4DE51D88E0CBEBA66BF190372DC182C643228A
-9B6E7E0B61904496EF1646D7BE9BD12A49D78364706F4A2C494EE8B768230113
-80E61EC3F9A33A2BE64F7F82FBEC5A4537C4A10D7D4A902F7208572B6ED7E8EF
-0A70D05D876B5D1163AC5E8E179BD0015DCC0614DEA8185FE58C207B5B559291
-A44B5D6B43208F3BBCB61185498F9C2DD395A1E27180704BECFBDB2D2E7F3350
-3E41D557D930D0BB781057C9322F2A23AD4D362D316EA4E46FF98336C761E9B8
-C638AA52F5DE03FDC7FBA76FA91DFA604B811B60227CDAB0AFD7EBA04C7F5500
-E71F6B96E79EB210BFDB3C4E17F8DE361C46A55BAE38F520504B4049F4D3C0F7
-0552AC71AE9ECD8C35F49EFE8F446088AA12607F77A0A132B78E7CF4776532AF
-1B2218EA9138E76106341AD429D8609D77EB18796AF95E857EE12AE941DFD293
-2318DDB0112E3FC3916C38491E14D620033DCD1D2F568A06C120EB7694390AEE
-21F3CA365EE38DCC3D67790684697DC838DFEE3BF615B7CC620928366B8A2ACD
-CA3DA7A679F863BE6DA27245224DBD069AF51D28E7FC3925724903704F362772
-67A2D8C3B1E4C0F343BD5EAB5C821E9DD828A465A80A7DF48F5F1153DC56228A
-15F81915064028C561A7D9DC00504A12B5212A658A992388250771ED09B25619
-08473133667466EDE64986FF166FC705DF06F970716602DDB38AE398AB0EA5D3
-FE88D039FD3CEBEE13D999870890EFE9521E30A4C78C154B9F59D2C0DB526950
-F4C803889FF887377848979FD5A5C135E541EECB1D296B053CFF2BA6BA2CB48E
-137B678F06B1091389ED9E69CBE13A653E37A14A09B754B1430C265F503622EE
-F87B1C22C747C6622ABBD1C3C75A8A0D980651BFCA3712291C119DE5FCE60E02
-CCC0463AAB39B8EE681FF905B4FB35D7501F95D0A87B2587FA0E16ED8B773586
-CA262BEACA20E1D3F33E07B38C9609C780472B665D577A1F868D629D84B3C8B1
-CAA7861633380407324D4FB9F3047CC3E8642B4CD1A035E3C0A10B0F43FC24C4
-92273CBAA7144D6530A256B2DE5D15AD3341E28A6561C1DA1BA572EF8AC0DC84
-274111F1CDF068595A77DD907A8381204026EBEB0C230EB3C563FD62DC5DF9B5
-4B7FB4A788BE81CCF9B912A186AD5DD1B402A5E4668DA0A28AE3C3EDE128B4BE
-80DFC9DF0C000D812D932F80C2822B1640C8E3F46CEC9255FB2991EE1D3FC7C9
-F42669091B433190A5773AB2DE3B6A808EF33CE857D93D8B5DE09E2B864C1BBA
-0AF8E9411252D76FF921CB6E705539D2B773F752269BD3158A25999552415708
-BFDE7B4FAB16E3E511C90EB134511BD8B13FFA2C3D92AC07962A201EFA8A9BD0
-EB9B25A7512478C70BB4985620C8C92DA55060E18C70C03C5B54A1E48B39FFA2
-C06EF56825E934988061EC893E6163D4D4663D51835DC13F98C27C5E5A186AE8
-5C63668210386C7F90B5B227A1BA65988D5E7B74B2F18CA8B30C08F1148A8A5C
-7FA3F8C1047602BD4706725689C367B5024AAAB48E604AF5A54877571913672F
-7266C5ABAE9E1F15581D195A8BF6913E875AD4C58999B19367801BA52193025A
-B0AFFB630245F26A283A94170F1598CBDEE99DC2A1C07507BAABD4FA60039A7E
-8CB91728F69F2046680A8AF6679F902F71563A0657FD94BD029DA971BD4EE571
-7BBCF3C1527987CAF4C3CACCD502BC7653632532E139F0BD2BEE36E8D37E314B
-372B2F3752D3343581CCD5DEBFAE11A09BF4334F73D1FC50EEC98A00DC81E160
-E7DB6EC3916038DCB96700A607ACDDD929323DFD961CD5057F4472AB3BD98108
-6BA0C2708152EF29C77DE49615E1CD52153DC95D130758238977CCCAC94D3A16
-EF90CBACEA3BA3C4E3BB9AF83854AFEA1301F8EDEB4C448354F30F1CC469FB14
-2C85A552465AFFACE55115AA7AF3A7D7FA9F2B3186B9D0E2655F73F5FEDF7F80
-50A83D40D050E358F6904BD8FE102F19D707DB078A843AF32DF381E341FD3D4F
-3B75F547CB126F70EE4C36D8B8787F0ABCB2A190B0490F22FD304041B0E4DF8B
-35A64217EE77C40802292F7A4A0A92D249D789532F02A33B8CBF938381801FFB
-051D924F5A52A5C539C57C13683B1D335197F069F5D5D7A43CAB5FC1B6BCB27A
-FF820CB8FFAFE4425A11A3D1484B296CBD7BFD68596DAD18BFF8631B872C89E4
-E82BC21D71961677146744ECDBFFDA389AC3C1B4CEF371D02C3069788997B959
-7F56FC475657CEE7E1526829FC8EC8FEC33F5DD316A19F8F91E425A51606F987
-99495DBB3AA2EA3116BDDF6464ECE47EC9792F7A2CC58ED980DA3583C9EAF207
-FBA9912578E18A9461A42A0A7E192F83429F653E1C54CBDA83EFCE597259BD10
-EC8C15406E64E3FD1E62734462F66A1A8AA59F03C7E8D671BB2F71EF7CC9A235
-D0ACEEC8EA98B35DB4025AAF6627811B437A8E52F10AEA99FFB30C4A780450F3
-D6352D7DFDD0DC031675813F476BA4522EE91BE71BC655F2C390B56D36652058
-A203457679CFC54F75B515ECC64955A9B6F0818D835E33E8E3EC65040FF4DF88
-DB5DCC5D848557D88188161686F4195F26035B5C7E0B172A20EFABC8CBDD2E4C
-11A03C4FC4D73D7D5008D67F4118F3364D1144AC4042812FF53AE2421C9794C5
-4A8C2E21B1D674C1B842AE430854AA1EF951521BC95DB6A7811A6385AC19A61A
-86DFDEEBA2C8F9ABB91F6699F97A1DB7F943B49991650301C3FFBD7670E013F2
-54094C629A6819655A4C00B2A35E62D68DFDE02F682FA0341B1CA83C3CE9AC1A
-C10D170B957C239F911CE1126A92F84E7C79F37F9EAB542457D8CF1C90674ECC
-4F1CEAA8897E73746B4845C1AD7E7ABBEBD755AD1CEB3BF2E39B2C87A2CF45D5
-167D24FD7656A9AE53C0EB5B5F5493B9CB809DAF833CC6EF29F47AF82EF1759B
-36D0C527CB5B6BA3C80DF3D409A8BBAA6E837A14D959888467C7163C6296D920
-40629C57255C4C2F93380C1C4D894E9960D980FB07D85AF29956FB705195963E
-8C3B456CBE21B099EE0415EEA67C7F437CE777F1C94579890DE6639E39CADD67
-06D76B937312612E41B38016F3F4CE03D1E73064DDC7C6C9E970892A55DB007D
-30BC2C5CDA0580E2DF13A4EE79A298B5BE53F30100CFAFC23E578B8ADDBE3515
-485728E382359D114C1015DE055A6BA02462C8224D8D0DED58A54E06153E42A2
-EF0977CE9129C70776A6908A6E8B7E58A4358778DBAFD944277A92D12E6E27FA
-E6DAC6958F8507475AA3DA3883C5A6F3FA83324E37079E6B44A52313B3991940
-7CCD7FAFB690B86AA40A237347955E567F2370FB63CADB84FF1B9AC99FDC2355
-30A3B2C74B3F28F8F28FF30B9EC8112800AAD2419A982C3FD4480C45D91A3095
-B55FAB80ABCEFA4E1DEE7F7934D3D987BB9F2C842E8B54BF8C53615EAB170102
-4102F969A27A85B2D9059DD56B737E7A5FD13318C174ABBD72A4001093FE66C6
-4654BCD1C94C3EB35D3FE7ECE712DC781C2269530E395DA15402516F8689777B
-D80A5607EB8F1710896230C61F227B96B30D90F34F95F945578C6F57EBAB5754
-AF5B56938118D79E98C816C901CB7E489689E5C3D6DFE80234237EA96BF17F19
-E3595E614C3675EE55262BF288064A9599E7AB5E22718A5B3EC97BB7ADFC352C
-E3028FE22E3FCABB7717D4643AE4E291FDD07DB0015EAD90938D970ADF56660B
-07B35F3D5CA96200DD491826249E7244C30FEED75325D0DEA44D42584E3979FA
-BBCBA15A68B2BDB658D748D5A54FFC69E2F4777E2BC8FFD9B8222EE4AD0C7634
-E1E514FDE2A91445EF7A57F1DD74B041002A5679A0900617D776B704B82AF17D
-4A4F1F9D8C655EB6E7DF245AD4A21CA0709D78CC50D3BD8605BBA89B8326C87D
-08CEFFFAE3F4747E65D6166C2B77A8FF6CFF312D4997538390FF97E1F1324CB2
-D62575DDF37DAC2A5941B252AC6C53A1E4AFF31A478BDF1FA36E55DB8AF6EBBB
-4CDEE70E5CB4DD2A91E9B85F5E9A1FB125E91ACC965A0A1981646396D63B510C
-AB27EC3730CE29CB8B44A07696C026EF713B16A1976F981E9431D115B2FB9049
-C71DE7DBF37C93D92938518614C2F4E9027A5825812A8F8D89B44324A7072992
-9B2B3F9C5CACBA7E93C207BD6598349EBFD88ECE219BA69805109FF4A4F180DA
-725B221623F04D88C18540334A0F94160878089735A78DF3A9841157EC183725
-5ECCF645CC2CE98A372AE54EF603EBD99F7F8B4AD7885D2A139E0D777A098696
-58BBBFD322CC5C4BBB41A76B4939BEAD8E0FF9FF056FFE301D5CA626D5057988
-EFBD86845BF377C99A5B8C4F305448AE05E657DCC59C69AB96E73BDD82DDCD20
-75D6BF26FB34A4E304D164ED532FBB642D418F4031D77140EEC9D2EEA628E67F
-2A41A546105858D93779E8EAEAFC3C5E30B564993A65A6681A7B8F08F9A81F95
-3F1BEF143AEF54D16B69763E8699343C2DBA3B7B18F24516CC27DF4E6CFBFC51
-3D0ABFEA8661D21A8C6901AE8FAAE1C69DE48F797A4EF9E74E5D3AB4DDAB9A13
-6DA9597CAFDA19735E373C0CCB9AC00CBA8612ECE2FADB52402B5551C918ED17
-D6EE1A3271CC1BA38820A8B2277FC9082742F001FD3EB7580C12E4896F0E1FFB
-2662B7838342B9C59D6871CDF40DDF37C5CF9E9DABB50EDFBA071108A505DF75
-B7F80350BF7FC5952AADED7CDBE037763C946C41229697B99F8410EEF31561B6
-AAFA8ADFA46C1A323AF857116054C3C610A7C68DD9207CA1EEC49C65D61B45A3
-BFF5A1D9D8E550D21014C230E6FE8CCB8827D4C1E9275C24EA409B9DA6982A45
-87479ACBFF83EAB2407525CC9F7171F444350724F42BD668110559BE4A0FE069
-11CF8BE111D312377F9E7A299278F2BEF5D756E0716C47DB80230FAA44E80D19
-E33FCA90BAF261127367BFA5FCB439EF490B0BADDD6FEF9B7C662CFA4568C524
-04FED1E8E476C8F4D453B5CA08CB4C93F5C845E2D55D10C4AAE4F5341C57911C
-2B3AC4E44F8236F55938C35BF2209D0B0620D59E0D0959EEAE2336DCAF39E75B
-6D908FD1CD7AFE1351DD3608B00D30CC5C349ED51EC5844028A2E997FFDE6DD4
-140CB0BCFA6EF678E063B8E43F2FF63D0E5C0A2B6B102EBAD19F1E7465791063
-0A87230C289B36BA2AB6C45BFC4ECADF46D2D2A9AD636A3E1C441757B5435EAD
-0039B4BDD2FE49C8B274A9BC20C8C9279F66640B4CFC79B594262D8484C4DC15
-10B9C4CB8EDD33E4E4B2CA82E1EFE51F8F6474769204F442977DBF7FA93662B5
-7FB88B0FE3D01B0418C30E8CDB3A345586A77889F32C7D3B32D6CFD99D33FFBC
-87A496B3ADCCB0CFFBD6F0F8503BB431AC53CFBC9CD74CA839534B0904146B6F
-DA37C37E38BFD3018754C12F23CCAD2E8B9D785D0D991B6CCE7573D1A3CD11DE
-5C13279763F7C01CFC080ACC80DCD121BDDE7D753F9E7EA5B081A880A3ABF6D0
-2A9E99436DF4E0D1BF51DB50836885D2BDF679547C03D32CC24EC7AE525AFA60
-2F01519855F2710166ABB6524780517CBE6CA03613BCEC4F815A3F26A325A919
-E88298FAB2029FE4809801B9F34BA5DE4913FC8AD53C2C69DB0823D341EDF7A8
-0BDD5820C5320F83136F120C62E533616962B0AC1113F7C5FEA153E53DF8DD93
-6B1275A9EB69A1AAF094FB239EB39B0FCA7DEB28FDEA4F28DEEB8D036DCED361
-A73FF212ACF355846A1ADECEBCC3130259B23D01F51EAF1D98B7C5EF0E72000C
-0885CCB2229D7196EE55648E64212CB18BEF3292F638BDD0B05EF3787CC8A6E6
-B34FDDBF722CA2A4892DB03C1FEA5AFBC2BF9DE80533FCB41291E2B6B160827A
-326D5A32CF971BAC82760AD86C8AC025DC943E5BD2B02B012996A58A2D7371FB
-AA61478DF11B081A869AB6EB67694FDF49A60613ABD7C12AC62F19D3B7CB7F94
-9D8C61817B29DC2AE96F6A8715BAECAD56FFFFCF5D03905FDAFF3F8B9B319CB3
-25252AB3EBEB0C85C6817243E775859099B8B9CDA71851E35525DE464F6BC259
-459F6B4DDBDEBC31A1EEE64AFDA5B0D90B8E55872EE65CC571A513FD0CAE86FC
-5D690AD99B291F6D4FFFEDB3BAF7214F50CE37511566D7CA2766AA5704382270
-A41379495A953F247BF4C7A4DBBA37691ED9C7E2BF2462802C3522DD6364E59C
-90327ED2D7C89322361465B73A022FE3D27F35746F6E88C9B8A4F0311EE686D2
-F31D307C5F5A8F1E4723CCD8FC47E39D9FB4CD4BDC300084E2348D00E71A516D
-1C65DE9428E18A31BD9F71D99552BE2C55747D7A6E499B985101FD19CF584ED1
-B30DDB63008915336EC5375503C6B126575A1251B503473E4A0D4CDF23014DC7
-BD807BD934C74EF0CADA54A1E1D0705F3C1D8AFAAD5F4CFEF35DABD67B80BDD7
-5DF273B7B6BC19E131B1BB05DB694D121199416E9DBCA7A7DEB13E64FEC3BE53
-491DA79BFE22B4D76200C73935A4D588E0F48F1C991759E2451D04E2C30942D2
-B710FAA2C7E16471ED375D1369F606C591096086AA37E9BAD2B4DE2344199EAB
-1A9435041E4BEB8CE0FC53E78864E55EEE1A6E6CCE4E92B1C67D13D6D0FB1F93
-F628153EB9857ECEBF77415AE693593C57F3D4E76C56CA055799E6495E406A51
-073AA03085E104709B4DF3066ABCB45E7C3784480596E2853A512A772C576DE7
-1DB7056028D6874DA38CB6B4D00688D168D80F5E89D572921BEDCCE7FA4FC142
-1226F1F900872E91EAC1DC4427DF7F99C50BCF92B81638B2023927F92FC3A715
-A409298085299BC4BFD6EA8A97EE7F1E67DF740C08DE389FBD4AC1817C14F0F2
-919E73D99B5CF6209764D239955795B8B5F0761C092483FF96FD61E6530372D9
-222A0405937493CFE22D52B4526A45AFF7C3AB57153F802542E4AEE9E68A6FBE
-5149B20449EE4F4AA47FBC0CCA17A489B48CEFB85094854B5F4EEEF84C7E5E60
-D92CF9C46D5095B8AC73C8D97C8B0507B3573756379A457CDE744B7385EFCC21
-68CFAE2165378F8EC2516E71DD89A62B0075937BA1B4F84A0F010DF2E5E964A2
-6903EA13D2D17B7B35D19150AD66F8623DCB96D043C0277C80989E59CAF6ECFA
-D8BBF338EFAC34668D15B301110F7406ED65DB43B41DD438083F54897AB7B98F
-838D2279C49A48C6301E9C8B616D1426BABF1DD99598B233AD30A13B5BEB8DE4
-EF136163FCC5C3BBAE35FAB402C3036C54F46EC8F5266C02A96D885660EB7FFC
-E6A85A28F59F4473E1A3FB6B81664ECC7A35A73AC79D5089D5074C2D3A66026A
-307D9C73187D29CB652C4800C6413B4EA752A275ADCB432021620C4DFA082707
-352ADC437DF089DCB79C7AEB371D864DC0D16287A71CDA2A958E56D37B080002
-B532E5DCF010D3B1A26B855FD25359A10F84AD3644E5D600DBB78630FE4E39B6
-4868130A1FFD534B9A4D2BDED8B0795463DF705EEF22171BA3DC6DDD0B07153D
-2AAD6271E9EF6D80690E3CC1D958BC8BD09769805E7DCEDD1CC0A16CB4D824C7
-5D1EF88F46A08E53D67BC1D27204A185705972E9D9D23462A72CF60D2EBDC5CB
-33BB54AB90AD5ED13C4138E2E89AE8CB5BC9528D90780C1E235305DE7713ABB7
-A3EE834577C8A81F05BFCB0D4DC15FEE6F353E891E7C1BD7E605F40ECA4DDE1D
-A9DF8403483DD999FC11B68652830AC0BB8BF1346D056D52548D9F8180E01949
-3C4C5848CD5E5BEF564114D5429BACFD8035B80E19AD07D1460850618F18820F
-CEE2992EC77BC22EDCC6B5B78C8F37E3E722CB691F66F1E71F004B6CB3F8558E
-EE5E17E13A12FE5D59DAD2752A626A29B4AE021F9B6DB4B184EE9CA3F2BF7DA4
-0887D528AE93D547C4E7D8B1A3617F5A5DD8E067B29E88BCC5B646BE478835AD
-E40538658779B671AF3A2E2BBEED302F6D5F42CDB3E0669406B48E1D46C1BB79
-502981331DEF8E4B51AFEE0FF9491FF082375562F5292104691887219C209484
-7CB6DC824CF415CA3C9D96EDB34A01904F6880AA12BCF1E1F56DE7A10DD12D69
-83FA9D950A425175F69324D1352AC3CCB76B09BDFB2950E4462CC99820C53B1A
-CA33985BD0999C02DE84D9A348D25F9E361E57BA4CECDE862F7448DBA8213700
-F2C44015C4FE822F6CDFADB0B82D04F47AD18467195B3CDCB0959D60C00CEACF
-8A1D1950EDD1767B818A3F57B0FA17C0101A2DBC0500929A29FC28C50800F47A
-38043CCDB3F949C0D0C082929692858D08CFFD6E20652465A3CDE5E24D50DF4E
-C7212B2E9AEE131B0EDD0F2E09457867F196EC7BACFB68EC476FB91AFC3CB309
-FA19C4E79430F9C343FB4DF5F8E6BDCD8DB0A2BE0A753E2265FFCC3B08D345FE
-6AA038EF222E300A4707CA6F8F21DF2A9913E44C675712D5FBD6581A7718B67B
-A83C19EB4044E9E131C764C7B364BC095EDE2D9DCA582C7C710D7AFD70B845A6
-E5A8605D5D86CC06E8023188501B08CB9AAED731F6EECB38A3A1D7586E26AD39
-283120121054740C3F25FE464DC2D5D00D4ABBBE26CDAC7B510588810D20E2C4
-8F0F3DA2919532DFDBFEE036D750ED0289FF00D7E6C0AA09F052C4874309EADA
-EDCCA510BC3EFDD894EE7BC7E9F3539C6CCCAA3EA1D3DD6F305427B561C7552B
-A02C193E21D95E0B928CA4861278156D2B03DD5F61BFDA4C57F3F9FE2CF39304
-2BEB3ADCB2A0B07210FA8D4477DC4508D446D9B2056B87702A517D083E2686C3
-279406D4E723558E527A9BAB3201E3A6408DE34A608C004C34EFC6136EE01E7A
-7C52C5B48ED86BDC246979CC28A7D442C04530C9174EA9C125F0EF822C4D4A05
-A571C01B056D55AD5797D426D0813D8803E9E46630978B7712996C7F7E96CBE2
-A160E6F628CC27607B1BB5C5A76D61D0D0F8E93869B4479D63FE65CBC9F32F82
-E01C7DA4DFFA643305DF43544CEF4339F2248DEB0E1DD00728BAB0AE5251D05B
-3B856A5E333A462E91480F9ED5E6431F56043779BD85A94C0FBC674CEAE4BDAC
-006ADA1B24A3DA3FFFEE2DB573C43B3908707EA1F0F7DEF59E06C397F18FC328
-799423BC3508FAA5AABDC230039CDE2995B5B850228BD5EC32F5C5248F921C95
-0104E1FC2D1E59CE35F55884B6B60518AEC8FD81DA3878363C28C9FAF96019FB
-2822AE4DD80318F8701DD49CD5CCB07A8740E8496251D1D6D30496F2C568EAC4
-0AC3DB6CA871F289B824E82D42A8E95AF072A304D9896F570395F5A21DBE11C8
-F483783912992D5336734B95FDE53DA67AE91CB9D9AF29BB8A52CD54A39D2070
-B996AB101C8EBFE4A04D66F407F1A5A8D0330E3954114E41D71BC8D2FE85D805
-D12A4AD9700F64A0A42E308E0F41E943ED427830E6D1ECE5A2A4F4027FCA6BF7
-F2979E60AFF9F4E6F1CFFA81451D2B508431505096D29C1002F10CD0A2434691
-D643F9C54926F866DE4EA2932E9345272734001A60330B2313D73643589309C9
-FAFA0643A869033E1B79E532C439E6FECA577EFFC89A78CDB672ED7EDCA17101
-7EDC42CF01F2B0D483690566A2836A0B96A1E9F25732284D53DCC9E54136D164
-6EB7F0A246319431B33C510118B5E93BF96AA2EA91F8EA047254F9E67CE8F7DA
-7C5088149954EA430DE2BB41F40000C36913C521E6B9861D645981292CBF2558
-D14335C07BD02725418EFCE21927D10148F5ADA862A21938185F1DEE52D550ED
-120DE6644FB7E51C5AC063E3848E43117B522D95AD7BDEA29729A9E85709CFAD
-05A2A69CFA1544447D4B3F4A859C0FF96DC0DEFE78044A0FC85EE91D371D3204
-7937A2B9CAFC97219848E1A102A18682DCEF3D6FBA50C83D3D1F5CA6A06F1D05
-D965DD0BF0942C261D738A72D94D4ABE288E5AD81451B62456C01F1B568448A7
-533E20C38646A7B53119DF45A2E82AC51A5DDDE588DF23CDFFCD1E7DF01E6C80
-0E1DBD537D48269346A9FABEFB387845ABE11F5B951A3C9539DE4778946185F8
-86F3978D2A0FAB1CB1172BE2DE1CC2908872B03FEA2E71B6D0CCB8462E4FE5BE
-2954CEFEB2A7522CBCF7973B9BB5416CD051B289984D0CD60C8A8BC59F245349
-8365315EE000B8A7F1460B15130648E7BDEEB73C983A1F9000E8735589CBA965
-1B3B3216DC4594A6C99156DC64CBBC906E9D9B8A46802CF9589546A00717F4FE
-4DAEF735A0F6266FE8200B4B862FECE518B5A300BD9FFD01FD71272E3736B78D
-91842B53C27AFC216C014AD8F211D924E9D41427EEC27E24B5C7B947BFAA66C4
-1CD785D1012ED2A787A3612CA3111694728D85756D003E2C18B69B58901785A6
-FECCC6DD966336AFD8D6F2A524E46567AA13A00F27C2CC69208500C8BFE21716
-27188E8D93F36DF766A29811120BA00E413269E47F057C5EDF7B750785409CF2
-9F4ED976F82CA0411DD44F11B849626D12D320DA6F95B68504FEE499B64C0A4D
-14076179B9EA36B7EDCA5BD6442974C7B197F78B859E4F9F09095869AF7B44F0
-DF16566A0DF4142A2714C5F02B5A431D5B2ADAD0E0A5CCB7F425A19B15AB0CCB
-8A93C64739655E59E16A1D97B3E5B6056428048B4B01DC0C8CCAC8BFACFCF045
-140241AEDBEC878FAF85D7DDC3C99642A0F330B484E00927129B6AA97121639C
-6190F0EBD3BA37CEE372DD77A9F1FCBA93F45FA21E9AD8ACD837C780946AC54D
-A68E986BCEB6BD70E4DA8CA42F90994C3DECE3B35875C37C806B0CADF2C76EAD
-F594DFA26AB52008852E67C0BEE6AE5DA64859234BA355355DFC78065A83CB86
-194698E1CF8E13882A60A0D4B0D08D20BD80E310032843E5B441EF80BC4FEE11
-0ECC4B99F51116B65ED83F928881B0D1E0530FFAF622E99AA45D974FA7874CF4
-AF5FA16311486F0EE103BE0D70D28A76A9E4E1930F12CB9B0E43171EFFAFC4F5
-140F958EE7459E49456D3ABA60DC34AD716461A1468D9DD58D10DD5E5F915A9F
-90E4F73CEADDC166B3645B0039B2CF24E8DFCA2D4A9261C7B13406E12BED3959
-6AE277F9FA06D8C70E1EFA74906D15845B3FE13EAD56F26E7EA97E2041E5D05E
-283215EB8E5BAFAB596D43DCE4E7C9BA1BB5A4708CCFD769194390F104B1F209
-A1916A440E9500A4089566F29BEE23F9F93C0F3259A4B66141822394EAC11858
-A735368ADCABCB4896111445E253C49E3682641EE3470EBBA8FC08C55B8D540B
-7D8A9FCC205FE1ABD98934CD76E0F2E3C041EA680BA7869547A1F337B3AF2E7D
-1F293A6604B53760053B88DCAE2EE141946CEAE5D3B38554FBF17A6DA9B3FA0D
-CC9AF77867AFB98FBDDDEC71DA2B392C9685D98AE10162A0C5F74EB774CF8485
-DE1ECA689996FDA1F4BEBC93914BBA88C68CA9BC146A8FE198B73C77F2393B8C
-4B0718CC95051FAF56755A2EEB1D361151C1B861C8B5259713A8BE80159AAD1A
-80D342F1D9B1378C15DE0E3CECAB0003B8F35454BD40FD3BC629CD89AE4C3F47
-F03F084775A6908AC1E086F17B2803FF5CA178A43F21D0848CCBA17011CB1F23
-3969BE5517762825775A8092E3ACBE1DBE58804F67F689EF82D9351E2A2E70AE
-2E5B14041857F69C59CCB86C7A8C72DC54EF4485D6CB6D69B959D652BB5B7C32
-96F25817B29055302404CBDBB20C054B733C78D01A181D85F074FF168F837491
-C30F9857F4978A316771B26874946249144E9B897E097C7D54301F00E49FE807
-DE4AE0D39F5CF337DB4CF6A0B486D430864B8559CCEF874B2275D8C507C37F5B
-213BBEDA0A601D422537CAB32015D5B53188E27B30259B9CA3BBBE4D77EE56BF
-7AA6C092C5ACF3D3EE5564BD91E07D49C8B7C6E5A91B5E7AFD2CA6169CA23C55
-8FD406A70A7DADB1E8AF288AAB6C82790E797068552C8943D90EB9D40F5348CF
-29A6BF5C19487311B3C7AD762C7A834EBB3E40A0CABC55DA1BB28E1B6E22C9CB
-F8D2F1BBC00AA263894111A5C617D38A053903CBED807628BE9299848D5ADFB0
-630010AC64B48E362C9D69CD26BBD2FA5A9D6179C365195DA1815C9C8EA4E8AE
-72FFD695DB419F1CEA4FBC04086F686F71A19B51AB9782C05C8572DE63B06B86
-0CB8697C2050D629CDB2BBD50F53462EEA873D9BBD8453FEB75E791433E59446
-1685A92DA218EB49A2EFC7B7E44285FB960B52D13529FFB245224CAEAD531915
-74B583979FDEFBF9166F4D2B570F14E752244A892BB0EA06597A0A737728683C
-821EB7E4755AD7A59DB6983B8F721F7B1FE79316B3EB18ECCEE73D4883E69FE1
-48A58C9C2CFFE6545AA0186C1F75DD99AB87147B5FB7DED13A9E856585B1C221
-CDEB59AE15C737105FED64CF32F360C7685947703D5C727FB71AB789B4DC39B8
-F48DDD537D200589010DC21172878332B92096B9B9008028D52DC32D533D4570
-0BC551851ACAA9DEA8EE1FBD1281D2597C48386EF526D4AA194F6399C50E52A2
-447C82F5E9A963B8002126382ADE1D89143D7A210B8161D55180DC7257345554
-C951A4DDD81A586F2529EC7A34BC12434DD673B9BD775ECE74389BDF79CE3D50
-54FB70012B5C961497D01A8584E18AC73BAB2E3E958E765B5C0270D9DC6D80C7
-1E879E993825200221A13A818565248E0A6C7C192419E77DED057B081EBE725A
-A696E39B2B87B75A7DC6B5F0E83F343AB190F45782054A7F2EE822AC2704A641
-563EE2A5E8E04D13BA7FAD2EB13CF5361EAAA6973051FAA8A5DE4BFE9116EBE2
-3BBD30D0A39872E8A1D34A9AE37273D91E4453C098815A6178376C5CADEEAAC3
-7A492DF7823FA2198871ABD0E2FF87F55E475D51899E915EBD0A2451815154F1
-4A6C024D214F67762BD9DD483FA26B6BC81ADF3AF215939019313B8547D3A8E8
-69BEAA3B27D317A2446AB607CE40E067273E8456EA4B07FB2BB07FDAD36B463D
-F9398066AC18D59835B8585622414331EBC3925F6CF4421614D9ABD92E5FD3B9
-ACEEE36DFBA857EC8902D109B78BD6832EA9B3AFE43229EECBA30AEE9A9EED9A
-46F4898797A8DAE70923FBEE4F9D936B4AB30515CEA4346AE6F351F7C48897C9
-2234FC06DD4C9F57585B7355B817006ADC0482D5FEC8DD665192FEE0C3B7B126
-F08C6FD3881ADF43EC2642B202D59A9A98FF082753EBF391C690CCD5A0409F27
-10DEE1EBA0635A057011325266A9AB924E33F17538234E2BA96D98DBF049871C
-EE77458D506F6A354767EEA33D2412B16F0A3412D53FBB3AB420C1E6460AD70E
-6B85912FA9A4FC1A729119EC9609D038E8948E8846F118C9A12C8A03CD691680
-49D5C12C9AA4AA35E48E658C8B3262F4C56849DD84CF8744FB5734A39375533E
-390BE9CB7CDE8E04A212EAB8E58F9FCFE2C2D547F1B7964016971AC30BA2B8BC
-89E8898809DBEEC910F912D1EF195819931647021AD7DCD57B17D8850FAB41D7
-9E8F1142B4D067EE0B8C0D7C90476CE63076C832DC2972CDB3B9C22DE6AF8C59
-306FF6DD83A005AE5236B1BD42CD0E32FC44B156C47B0713B94D0E8D8D04C7D1
-C4E6CB68EFE67526B017A81A399C4A0A87F6CA0139D0BC414671B90B29C51601
-8CF69066AECB360D7A1513D56E5A673559EDF06B66E17256C0E5CD09F2386E7D
-937619EB018A4070F222959D217F89746478AB1568F60900367FC0BA3EA68919
-956D6990CB0114119F5015FFB3E788BFA9791AC03A2A954F8B026128BD2250EE
-7E47CE5236EB13B7F144927251B207B502AB7C0B7AD2530997F4B6CD0D10765E
-046CDA527F32B123BD3FF3B57FB5DD25D5FECB7D4030EDAA610B2975E7D1D539
-908E0A44A3CC6C5A35F5DC94A78158B1640C2BBB2590D2971728303E59FA956B
-7028C5025DD0666A66DCFA45959743504598092EAF64F346CAD55B0BEF469C42
-98340240AEF816317A05F5822FC52376CDDA0FD6A5D3ECDDDCF04AAB183BFDAC
-36774666B0E5E44B4EEDAB9B29B3CDB31A4FCE80F650018E17814E29BF6B5F08
-9332233436138D385E622EE570AEA29E4ADF8720CA0496DD517AF5F42E8C8A9B
-E2663BA6BED875914553E7830D1C176CB77224ACAF50CB81AB31B775B49358CD
-958A3A65618E26A660AFC91E79F3D670A6E3EBC0423A6B4C140F9A6247401C8E
-0F80E40B57
+B4DFFB173C424B24BCAF3C9271A54166A65927519C9770B0DC44CE276ED0C20C
+8EF41AC3AEBEB0996DEE664E8F872023710D0BA81DD3A3EBF79BC24717BA1280
+9E9CEE362F5BBADAF6D8200835311B1063FAE4D6EC8325A694EC516AFD24FF99
+EEE758AC14E76FA1573462BCAA75D246AC363C412185D20CDF1539011C35D1C9
+B3B3717F6A37DE522943CF9B3D8CF284B4C0068A1ABD9B58FDFC20CFDC45BCA3
+DD054AF00C18CD7EAF8DFFD45C28A82C7B417AB7188BDB49A5871320B2EFE0B0
+25CE25F3BEFB53856689A44D365C55218190B407B7BF9855ADCBEC5C0094CA63
+11E014EAFA0D1BB324D3B1D94DA4A7AAE9D29C71E2D5F122F1C79726731FD066
+6545816A5E05DE1F8DEF865DDAE0D80E9AD0120A0C81384AFA5BCAED3F8FF80B
+B9F8C8A7517A3863034C312BE64AEABAD77A5269253883D460DCB2F0A3B28700
+255BB96397D1D613A14C3368C9F27F3E42B887108793F4B12E2233E5A3620BC4
+F886F124503FE64421C1A40C37B25127094476713D39EB73004CB56E877935BF
+BA0C7B095414A1FD59CA11573B86EA32E297BA38B907938B3A25992F0563022D
+CF54FD863B8792EFB58A27DC2CA6C4DF48B9388F5676CD462C1AC745488F6BA4
+2B923427A7D29935417E010099FEB69B16BE5A2AF7B4883BBA80815A09693AD3
+2B78D3A939FF18798043F7C88A76BDD527B554BEBAEF922FDC9B381D72C7CD3C
+49698A1444FC33E276D3B9263CAFA375F1E64C8B39C89D4A65FC42A7183E41F4
+1C3F0CF7EBBE5260F862EBBA059765497817B8597DECFCDDDA5C1D15AFD3C3D1
+6F1A8E43709540948B1E3B41E32AC13B469222867483B0E765FB427300AE9BB5
+4CED17DE5C45EC8391687036EF43D57835CFE689B99FA0B860E3FAA6471417AB
+BD505F23013DBD726BB5645F3006BDAFFD5ED0CAA7428EAFB448E0A30F8B7858
+311E3FC16FAF9FAC5E86998E4954AC4C9E32FBE6E9DF280B457BE80DDA2959A4
+0A874282A7F9AE5236843298C26D5D4160A4554ADBD3EF0254C4F2D108D49DAD
+E1D1B996D5147560D574FC238DD005D18CB32A6CD73C265F05E0AEA17C73E3F7
+2FAA00290D1A6361CF67EEAA68800D9212BB5B8F0259FC8D133A21E6BD375FF0
+4BB0FB1E78F065E51298E97164C1FF241336428932D1AB97E1D0ADEE93BA8903
+A8124A3169AE0B905465D7E8DF132D903C9B4C64074147F2BDB1F722BC261E10
+D366C246E8D664CB57A92883CD7174218655BA68D9919D0C8678DC4E7A7E66B5
+DD7DA4E011769991DA9D93311A06A623B680DDCA32B287104A1D7BBD05AA061E
+019BE06684F9BF987FA635B9764DCEC3A3286340A7D50355663D5556103267CF
+8CD9DDB4DAF109C47176A1E9443F3E2703788B85B6FDC8951783D08F02DF72AB
+DB5F8739B2B9B38CC813796F48FCC21B0CFEBC8F074E464989AE5EDDEE5CC3EA
+69C281CC4CC295360FC11F67AF3746CE3598A215FA109709A4B193BFEA270261
+8ACB9B7081A9D60CC49AB3F25B0B6F922672E58708BD707AF7DF35E32E7CB939
+CC25BE8392B3DF687FB67F25342671FA831264230CA39D189AB6267095B7CBE5
+09DDBFD5512A8831DFDCF53CDA45E3F0C097C0C4DA1F12589F7AB3D83178E9FB
+2E9B5236ABD35A872EB9A37ED9545C6ADAF8FF2000E67AA8C8A8E61C9829F29C
+5555FA19BF6949AE81487EBA68E8ACB6244ED2EE8CD537155B68BD1305FCE20D
+710147B9AB3CCF6BBC0F2C3D8D77D783ADFA68B208829F05522211E28432729E
+AE8A8C09C04174BAEF8D560D62733BBAF506D2EBA030AA77F18A38EA8E98B38B
+C03B5A3C33A7B36EBFD1D55D503FC06F19056EEF9D1D01CE279D2BF23B04E880
+D6873E16AAA583ABBEF1EA8E5D6C3D038738573081E264C01DFBEEEF02B8844B
+19BB8D27BAD7354AD310ED720DE2D4240F3106275AEF6F7ED61735D799306DB6
+4A3BECE20525769A0D99EB90D957297D5913CC48A98EEE84FEE5D02B30651CA3
+B7573DE50F1B9D8D50E5746394DA8C5BA5D71CF1647F80BC9337F00EC31476E3
+1019B41BD01DE7FD55886402565F688D1E09810DD8AF982032B048548D87AEBF
+B20C6B938C6D8F96C2D7B42A1E69DBFE6AC28D166804E03AC698B180A48503D0
+0549D2DD2EBA5C601841A711DBE9D7019E5DE56CF78457F412E42CEEC248DC5A
+C0F349903F745E40897D0331124749D0F9F9C71B704E4CB0898AC7120A880215
+236800020AC60B1E5682656534F3332C2DB06A7510AEA061D9206B4C033A80F8
+77DC8EAF7D32A7B791FA3930647CB1A29228DE62A9733C6AE072144BEFF15651
+791C8F99508DA1E3F8B451985DC68251044FEF9F91C7578A2F3956D97D544D3D
+0E6A3F7719F9561B47D76612D833BDB64780728A6456E8CF273BB708FFFEF743
+CF069E55B1A871718E02778CA80A5D21597D597246C260AD390E5F4A285A5CCD
+E55AE1C37589EE307C6D2E1DEFC605C9BC33511968CC8AA7E61F5390951087AC
+F4376C5BC48DCB22D8F0CA6CABF25383616DADD012FAD655FF4198245209E305
+274D18A98D760203C8AB09F7204A967D07B75E7650BE0A0595742F821F74193D
+CA0AF1A4875F50D1F3F2786C5532EA3913B3589215386E78157D6F38C4860698
+7DC51E51908A7AA304DF1233ABAE2B3C9B03F2496B320DCA5B7DE98FFBFD6FF6
+EFD2FFECDCEA32D0A7F799382366C6325B89C94B37CED9A1A1BC88602AC5D9BD
+1BEDB8D5CD2D38FD1FA33703C41F979BC24F1609B3B35295CF756551F9F2D770
+ADC3D23C5B7C6A777CB33A06791EE8481BF577A94016A061D8AF8882466F7499
+E66E7E93F104E599C79CB6F76D42608B9BC1171A9AFAAD93E846008330DC3C0B
+6E8BC7623E8693C1E7E8B5B8BC426B1EF8EE705D2E806486775BAC15660BDB75
+66BD708939D23762BFB8628A863C4F9978F83733049F63709066CD4203476CF4
+575DB5CA5B5F01D8E4DF345D78C2A938B5EEEE618507B2AC9EB9C4BC9B64CFBD
+AECF052FA5D93B306C075AA8A645E5B93D1005C252F0DAB540243C7E3C3EE52C
+0886A5D89A30DAAB4ED8F38ECE11217F0198347E62BDA7A1BEB6D46482BE3726
+33CFBB23A78756BA63741693D764467273078167DA48362985CCEA2889133C7F
+A5B0BA827E92333BB02221F6757E4ACB8C2198BD7A976A29387CFB9B7F51C65C
+2E151D1D1F73470B14587A6F11AAD77465975961CB77306E7793EDAC65EA7AD5
+E562F2673FBE78794C9D38659647EF5189F6ADD9B4250085A59F84C0448EE47A
+A073B712B6B1CE984DDE3125960C16AC77098424004666BA6116A042551B48E7
+507FA464B21209D31C506D1DAFB628FC2AB30279E6148F3A2DFDD183FD770551
+0CD3FE854FD619E7D2B62A8888C300838E41744BA759EA4E4F19AD5CD249E8DF
+74E81BFBFBEE42B2F67370B748B1B3FD5C6201866D8CFFF8D9ED127F43F4009A
+CB5D9651587B54ACB8C6D410128362A74EB358437D0CEBB9E0FEA7FFC27A5509
+E799762B27F30B5FAA4ED3B492752B04702E48B1D0C55155157FD7B4E578A560
+5C0343A472546826E9B9B80E91867D2D4C3EEC02133BC338954AC6B58499AA9D
+24CC3CBD2023E962D147618C08BBDDCDF36E91EC2D51D6DEB97A1477D8156707
+9C1B858385FBA45CF0FE74563A5D5A51ACCC3EFE991429A8CE57131AD56F352C
+E95401BEE11B310C96E9C3CFACACA00114625BA7B4400FFBC5947574317E8699
+90BD8678107AAFFE1516A59027E9907359B61C6B8A97B4F99A338BEFDA2C25DC
+D6413A0CAC46051E76BF732CFFCCD0FF1408DD26C76DFFB54F7745C79F3A7ED3
+1D9F8BED7C6977067E6C8E46EFEC63AE0D3953175A6E51DA38EFA2DEF475DD93
+1C34376F5C6C6218DF78EB84773361B9339FA58A88E96C646F291CEEF398D281
+E0DEB2EE21C3EDE0996427EDA0CA0A44247B1A0E03BD9366E75F763C9B1D2BD8
+00D2066BEF933DC6AB3586EEBD04E6D750A22978ABE902200200B468135B690F
+B840BEAD5EF80E068F6F87442D93848684A127EA79F4A8A24DE737A373ECCA3B
+B405847430C138E51DC18C367702E868CBAAEF6890FEE68A75C5781F32B96D86
+BF5A0C99F04DF2B7FE968B6566BD816C96D7EE35A863C0D4635047FF09F68302
+EF62B9293BBB8BADCFA64C6CD9024C4F739C8C730BD62F2B613C6E1923F04BD5
+62C556E3927411C2655045B9744C9DCB7F1DA9C1B5C70A145E9A35DACF1B68A8
+B5DAE1C62DF9220483F1DC721D559B87D7CD802AB539AF1BF3E434EBCB796A8E
+378B1139CB3DD3134DE8F40C716BA87185D3E406E3C941D336A1436D891803E3
+D2C8E627204A343811FA82FD1A232FFD6915501C1B158E890C534CB94FCD9ABA
+F64EAF649056C1198F0F58F56D3E1C91C167D4D9B4481D48A12CE297D5DCD0BB
+8BE16BF18DE1D58F7D2587B70FF5734EF8391DC5F709BC39E729713CDCFC2EC4
+5E7AA863CBEE1CE8185E657E7FA6565EBD6868F478554E96FA808A708B48E463
+AACC817DF43EB9A5233606A402F3A83FCE99F73B8DD819A4D014FB435BA7F23D
+F2AC40C473A34FEAF0A5DE457AB5A18A6CEEE95A55FF604AB5225C5C1DB6C6C7
+0C7647F075E5FD3CBA9F3B316887B4A01F1C2FE09719B4BD09A84C5A3DCB82BF
+F5EE9FD0133F987FCF77098E0CB919CA7FB8468059FD35088B97705F180D5A19
+CDEFA29A02C5D3EC4893985A2478B0BE83B18FABD32654040A2F2A9BF7BB4F7B
+5781D2A6B5E416BA14BDBB481B3D619B0C885CB392111E32B2AD6C8BA13E9F93
+49CC4B5A35B1F93B68A5ACCA4823DE44BA8979181E50A3804E43D6245488A15A
+BD51999A729A20B9DE927F728E59312ABCF89176C35BDED4BEBEC14636B19989
+CB8BF2927C1BDF5460BBB09BA81FB83020BE4D4B69179C8E3B838D6763946166
+B328ED82B448CAB5EC2331CE7601EE8B39B334BCE11038B0EBD8437E5463C640
+73C5FACEA06A219AE83515674CEF03AA2F5FEACF656ADBAB944CBB237813CDC5
+06C303EA518CC59486410D65F5E5395DE84D0EBF8EA37633BECF5A08851B4758
+1BAE6460B2B67D29A8F88FBE52A26DE7A6E6D859CA00BF437837DC123C459B9E
+43FB6DA6B79DC16C60F9035EE3B10E2CCEA9F7ED4FE29667E0559A3A34F6B550
+E4184ED8E953247B104DE7D912C5BF66F3259214FF091096DAD710C9F4EF531B
+B4C6B3BFBB4715F3654587A5EAC63C917E100F37862B03EC240E762F2DF72CCC
+9CBF233ED204EB966F6A34519C0A169EA6130D18CB8E53EE96B7A63C828CFB28
+45CDBBF7FD775137119B7C7BB2A665074691199B387ECF452A3DC5F859D4248F
+3A02D4D65167A9E6C92E0A16D293ACE234C049D98E961D14D070DF2A7F55C232
+B2CBF0378ED83686DF80E05DD417153A3FB34A7B2F0DEFA69A34E19CBFF56D1F
+14EB4CEFE99DE9CABC5F0FDDEDED79A50F29151294E2576CE97CA00F734702C7
+B94243299D8080957B7102AB370D5448226870CBB5DEA5A295D3D5C8F7D1B5C9
+44E6F16F703E4CD3F74B37AD19BB53635CC4801A317C953F2A131F82DBF39694
+FE552FC18B94EEFC490A579F263DCF470D2AF1336C166F0FC69D84800CB1765D
+85937598431461E7B5DB95839BFA81D51ADE49E4242E2DEA4560DF41D27C7733
+2D1F036614FA1AB505537197F419E6722D4EBAF5DB087FCFF838E782D239BE68
+43AB130B26003747C36CFFE7A96CF8522F3F369E1E6443C923C4EF6616241DC2
+5366259FA9FB2559B5B797ECFA474D491E96F2CF07DFCB0765A1A7B0FA8EB181
+0A82708A93C8C8C2EC711CEB46D4A4D51ED42E6D023932F6C29F7E4D9735A5D5
+269481F9A92673E88970CD15DD2F532A2D96C48150C10854F3A98B200612EED5
+C2074848780E53C5E086AB78EBD0444A064C5377945680900997D1739E93EABB
+520519269E2516C7757FFACF312E6725805BB2261552C760CB68A7BCDDA0438E
+0BD4E6DD87C204039396684FDFC4398421E1D94B110F2831AC0DA589822357AD
+A78CEF72FAB2EFCC848DE7C5486AC56D56DBD0BCB39D608F40E0981572B9FB0E
+51F11778CDE7A9DCE029ACD63D61C22135CA5AC9DA490C29FF12165AE20F3127
+9D57AF7441F31659BDA2872A720100F3F63D9CBEB596FCC23FE1BDC7DAB26FD8
+00182A4EB8C9ED92B3BB9971AD01063CA67ABE06F51F66232545EA42AC145113
+1BB165ED65DCC3A1C0E288FED14706BD7FA08D3D4F143B8B3BA68BEABE09225D
+2D0524B51E2D7ECDFAC0F8D66C7D96D885D0D87B7657F6134B3E7D0493E4BA5A
+6DD7591027A957EF7E04AD08B10D93205A5F268E65B30242AD7D07C2EF59238F
+F5B6FB46BAFB04D0E354072DD934FC5C63A4FD47541A4BA4B68E531E4614BEF5
+15AC43BEB87A1204B9BC873E9E79BAE958F4622077B7F7C2EBC0FFB7F7B6EA39
+C9D47152C26BC4A41188B367569A22762B8800E715416B7B396BB3B5ABC11A19
+C427DA9CC6EFAB2450C54030DC95A775422AF14156388FC0DB8901D3D13CB248
+B774DC8E8E36C7FEB216ECD93288F0520FDA6FCAC443C62347D680CFE38039F4
+1D15F56B06632BB1E91AA8E098EF73D8A054AF1A8E327BC6E7D37EF19166633D
+1714371B2E916869E420A69BFC9AF4CCD3F1DA4569D3542AA43722748E5079E6
+EBDAD7306314586BB17C9C7FF0825D865AF14F0FB03EA08F5E2D22A97B9702A4
+8A169602A94B3F08ED7A0CF6B9288E35FD989F2D0020411EE777702C408920E2
+7A7F37E36734BA4937FEC3B14FB1FCC92BE0944C9D893929A63DEA8030DFD9BF
+86C40A4E5421C663BEE7F2C29248B4839E441AD9D04F051AA0991A6D6EC47280
+10CEF96A41D329CB263A566A2D0C993FB918C6356C1249BC14BBE3B39596F7FE
+DF719A7A9175B271E37F0C3B46B6F1A53ED40E6C3EA4313A7C90B65997EBD308
+E2F08EA3B7038E0694294BE05E9583BC74306255DE19846A692C0D0D64506C30
+F1E7B83EE2090F0B0C9A1DE01474DF9DC7D618193149E95DB2F6BD8C0DDE48C9
+625313BC0C265A6A4BF5FC9598EF8E16477DD19068CD1AB4C52777E9CBD2EF5F
+99E28F5A2CE31E2924C196492A8E3319B1024C84CBD4FC175BE286F1F0829E3C
+7628AA9FFFB1810C93336E3749A818E46206A3E415139064C9C7D004D0CEC1F1
+FAB611B672C0EB951AB9CEFE67BEB2817BE9248F887836DB614BD26A59CCA79F
+04CA82700DDD8D792E89EA14D0B90FB3F8D6648090A39C99894C8CB638EADAEB
+D9BC62555D36EBED36A39AD7601BCE938D26C84EB1A6302CA1111B0C362C7718
+3791067E2B506460D1BE71A13D02451036C4FAD7B917CC9CB347E8FC30EDE59E
+8BF9874561A4B0E4235BBA799471EFBAAA64DC644958D1695526A86D56DAA3B6
+8AFA3A1AA7B66C840DDA7860072BF4C937B37FDA41922388FF8B4E3C305335BB
+ED114714115CFE1385261C6EF0EC27CE200A0B2434BE519CF064FD5860CB7395
+C934A9D7B06DAA01F039DCF3318F393E22AA8CCEA80F58094F5129B06A5856C6
+9DB2EEB9B377135ACDD04876012CFCE0CAEFA831CDDE6B3ABF574573EB6D72D6
+F03D294CE59A42D5348781C90D1F0D8BDCF770E6989A939E3FD42A68D34E6B0E
+A0AE88E2B52577B1BAA36EEA23071FCFB8FC4C41A8FCB9F8871F265D78B274B2
+D0D8F92D55011A124E037B5254162E7956465E96DC76D0CD96643AF172BD33A9
+DD48C30161EF717BA3AE6C7231F05DC4E330964C01F6BE6EE652AEE0AA41086A
+B2FB3DEE6697965BF24EFDEB87D49BB4D617A10480CC29C978C953A0B826E470
+BC73AB39F4A8A94306CAC840DE844C60F650537E695C6323991AB9038DB838DC
+0264EDB30E27E3F38B9073C8F7FAEEEF4B8285FDFEFF1C7CB16E43C712D78345
+813848FC335ACBA0768BCA0A9D57E99026CF04808F002FD842AF9DDD4E72BC61
+4997B2B39E28E971F60F8D96B66D8EB5911B8856287E3CC2D24D662312C238F3
+777745B73A30CF91BCAF4C6205808A2286285462580052DE31EC1EDB0BBDE46E
+5DBA461A815EEDCA60F8D64F7A2A84613DEB4C4745EBD6C04DAE969BF4681B5A
+F95ABFAFD2E9FB49A8504348551E67EB6EED4F87362FF9A5CC9BF06478E815E9
+EB946FBAC21430CF51569E331E0060BABFC7B21535D987B480FE1264A3738EB9
+F67197E54D9C2B032A06AAACD80FEEE298763DF5CFD00E2814F58A69A8643AB3
+3902057079A36C46D8ABE38C48ECCC6F7491D4D4A581A452C48CFC961DD8E85A
+5929131DD9543262E81C96631C7FD7B94C724102DE9C365AD97D6ABAF44AEFEC
+BFFCB5DB96D395117A665FD30A70E8090C3883FCF7ABE76954BFC07E4467E5D6
+262D9C949ADA532E94F9676D15DE90911D34BA384081A789D304584C688025BA
+4F6EABB4ABBD427CD00FF823773B11F283241BAA9B9719808D7FC5E77FCFFFA4
+F95DAA339D4843AD99133A1DE37103F386B4092343814923FCC22A87D8A91F98
+3E72139EA419D61789C36D99A207600C188477278887467F15D6A6635BC18D38
+53FC280A6AF75015E003E2C80F312FC1D967203234583FF829FF13890D62FDAD
+69DBF4D1AA69AB22A11A64662AFA11952042294C55F890EC1805936402B7C229
+F0A33C29453754544D92CB1E338AB7F3337BAFDC535CC93DCA0A049368B91FB7
+07670DEC8F84592CA1B4B8CF94E0D6A64A0DF9C0C239382D283AB166206B1893
+510E6320866A16450FBC2B0F82A38E460689EB07AD663A0785971D53E42EDD4A
+4BA81BAECF10B93B346B20FBAA70E4D15AFEFBE7CCA040D982A92E7853D055E2
+065A09DEBCFA1B2ECAE26C38F8DBD378E976FF597397C27828EE0E6791B8641A
+95CEAAEE1849027B06DA878994B70F94C835444F6B69A2DFBD6E4FECA5160C53
+7F12F395CBB410A6C92DFF74F8CDDAF64EFCF4F8ED9B832AD75E48B3F01DBFA8
+86D7ABCC22CA3C13603580C64B639948E2B74654FC8AF03B4F56BC8302645BB3
+B682950933DF6086F8641FEA62CC01F451312D22F4CC5804EDCDF981F6DEE997
+BB777110A8E8ACADFAF6428096108F535472D856AF4165C255A1B43342202F3B
+A72C931CD8A966D1898B78B12B14DBC0D3663983A9E2153CBC23184A4FDA6A0F
+779AF83DB6FA36FF6258473B17FB452EA4AB02F0D34C0B8C8E1FBBB35B680D94
+0201AB0D0F0637DDE7031FDD239BCD083FF5A28AC9AAB7271D9179A8AE589B26
+A897659AA8E9CA50ADCECF5D5F4D21C7142D4A85678466CBF033D883ADF819FD
+CD27E3A6046F3EAEF987DD9171440DE702ECFD3AA51C12AEAB971FB8E3128291
+592A3619A00A4DDE933F960CF460C31AB712D12AE4A37357E42CAA235672926B
+00FF510B7686F013ED7841FD01805D2496293CC262F80E730D2FB94EF320314B
+2E9BFC65A17A0BCC2233F53ACCC3ADFFAE00F19277AFABBBE4D2E377BE54EC2D
+82038A9D3A35D7B13744E468A1AB3D0231D394EBEFF06BC1D52F18430F7F77E8
+DB47FE2A958D86452CB7FB6FAB65198AC7507BAC92FF4F46B97A265BB80E99EE
+B2211B9989BBF73B1753B4BD6730271DB7679FAF4D3B223839094C1C980C15D3
+2C9E74DC9DCE7CE0D48B1E2A8E2E3DEBE2DCF6FF7B8407FA88F59A8D572E818F
+0C6AEF5B4A99F83398F97B162429D82A62E2377361853F630E7D0A7D728DFEC6
+EE39A9DAD89967BF1579C57AB99CD78DE820C407CAE52C2D7E65C97A594FCE3D
+378AC8FF6F8867E8953FBE91D2D8131AF97821F28D6EAA5A9F025DF790FA0967
+2C0A1339E953EEE5FC75F76FEEEE780F332A1C0C08DD80EEF52F1CB7E02DFE52
+86F148A998753B27CB823FA9B4907B37007A5FDB8395AB3FEE7CCD947D1F6CFE
+E81CD88BC9690E2F89F7CB130C9A2834F938B3D562A42CEFDC45A38E6BF62ADA
+1517974E61F6D35267795C7A9E945856824329B14E70EB350C997756A8FC0A8F
+7CBABC48C4AAF0A5D6A8F58AC190AC3F980C00D93FEFF1539D417AF2DFBE1021
+2882782C625D2BD323B9E0D53F1494F8CEF84ABEE30CA90C251887075A697386
+89F38001C3B2FDA9991D9A5EDA186C37DFBD0A77D47E24204981DC0A45B3AC66
+DD14D43A8A9826A0BBD96FE2279638F5AF12F010474075C381BE0243E3217199
+ABF00214D7D13F66411A6AB4FDBFDDF295163DEF72E788302F63FA8225F08ECE
+1F32D71BDBCC1ECBBC067187C9713C686E3EDF304BD3C58981C76B6943E66F34
+2BE57CB3145FE9A286F570074DC259CDAB2A415DCFDCAF46FA3E195FD43C38F5
+A612D653E3F178E16D9FCCB637CAC9AFEA648AF52B945B9BFE37F241DF9DDD61
+5425B37F903B079F337E8E15B70CCDB8920F15AF89538608A573E7C9008BE814
+FFAD305F0B94C7AE5F3DB35D34C04C1A250E89C252759581AD933896B468547F
+BF0AFC136FEC40C7436120A944979C9DB4D492A52B0FD658E8083E0EACBC60DE
+67DCC01E3F87F04754223A34732D211B43248A5A5BDB19992CAF481A564DC9DE
+B16CABD3BBF40BB4F84D67015773F7261FB175806DBA97597A0A8AF8920596A1
+3C77C728F23CDA310161CC8573ADE490419AE08CEB622DB6883CF0B75D43F0B8
+B37715EB9AFD9CBA33DEC10BD2D78E541499738D77A6450B93B795EBAD5F44C7
+311134D264B1881069ED3422281C15D1822DE565FF7768B80B58096D5B03D168
+0158B52A52B7B5B94609793DB02F8EA785A2E0A039FE4F8CBA3CD0C2A934F2D0
+A2F862F75093FFB2743748EAE9947B5D9F56CA0D67ABCC01E4432BE67E22DE05
+39664D8D7E9D732A897F03DF889A0D3C09E60C4F3A3996AED7293B8743353739
+DE1D41C5FEDC2BBF6662BFC35660CF8EA4F2C0DA06AE90AE91A9E0A8BC94D43A
+B79F3778BB68BB937032EE09062E1C4611EF8E86CB7007F2AA7DD3E46A31AC00
+8CC36771023DE9E9BB5483C051FFEF412A14A65F30DF95C91990408BBB8A1E6E
+FE801BA15666D3C270F045A8178BE9E424998653471706D0D86D49967771961C
+3F62F1B6F36652DE97526AD89E748221893C9B6E5915C1504FF46B6CD09D85F5
+57F881284D70C35BEA64731C99C0D865E2E9C9FFBD50806164157CE198DF009F
+B560FA76FD75CF742308B01F8ABF13E7F9DF82298FE454C1F709387B6F23C306
+61FD8651CA2F51C5F28786D6766B4339928115601BB265F6895712C39D4EB75E
+1E1EBE9BD2E808299CAD5092397B7AFC8B386E992AF8A47FB618101925514570
+2CF7F3D9418ECDF120DE0D9B14BA35A19312BB4C87C9A1862E7AC946AAF7E0DB
+9126282D6813095178325D6F7510550788D387CC3F7936E5BDFC55543FC2AD73
+0A47BF75CB6B625FE8F087C3E53330DA3EDA69BEB3601FE3223BF111C6235FC6
+8ACA71E69693779A68F93DB849000C3915225B007E9F1A64211A66634F67247D
+CB39A389107705AD40B0EE4D1E1AFB6B6F6E7F1D59D12847F748BAA026367172
+61FB9E0FF8EAD4609047340623E92C4954683F777B761B09A1B6E06E13977B66
+B7D5B557C9E0682A0E4EB4B04EC5191E68ED14DB179A9E167389023CEBD2F046
+05B7B10F352B91FBC1D499BC63A8B63A782692732DD2C49C0532E0D98BF9B5B9
+F1EDF5A5E00EA42DF50F9FF5700FA06DE26B5EFDBD15375BFB87068ABFD6101E
+4DCFB11A4F6CE0A126B1AF08A0DD21B487FCE447DB919FB215BF614D5027E67C
+CBDD8B631B0755EF9B2F6E261D4EE7D892285D1579F3027F9B04BCB1DB28A8E3
+BB0E83592AB3BF25CB92A3BA038A91C5854402DD5C47E1F535750D1090DEE1BB
+A5AB0785C67806FE7A4D1C7DA3A8D40E5F8EECD2DB7F5221ECC3AAE50BC607A5
+6B91C718E2092102B2958EEE11B3FAA96868D425513142D1C374886E63A705EE
+6D996AE31AC5F89456AD296DD490CA6E63BA98B78E4E9FC2AB540F27D47BAA6D
+C8BA9D2F10FB380F3C37575FDCAFC69F42E83301FCFA1DC31DEE29087614B306
+F158970D92374D7435EF08EFB3B32BECBC3C6C9FBD42951801B86C715A7FB306
+65B90CFF9FDE5AA20F20BC8DA696E5FE7214E98F39D2EE60185F926027A6CD5B
+960579744D143C1A7BC8BDF10C70003858B2A6EE72F854CD35ECCEC8E92BD664
+F9734FEBD981C41DAA2A42AE83697E3B030C9E2C6C3969293D324A7D68274044
+487004C3F6FAC5B64BA149DF711EDF2F17881864AEDE3E1E4C3147BB3DDB4ED0
+2F79305B402E76F974CD56CB04A4B562DFF36B40DBED2F35D38DBCA5CE8DDD12
+70C28A19C891D126927DAAECF16B2DF41802882956716BDBB442E9F062DAF65F
+6E3808CF58F9A4912209644195F04B4A5B209314017E96A700903AF6F4A8E8EA
+6CE36F67EA9139F816CC75A806C3585BBFD882F14028770670FEA22F34358E0D
+CD9626705BEDEB3A0965697647220C1962FCE67D0D3E2B9FC5DA3C3861F84209
+C56B90CC792B95076CD73D35974433DF6567FCE72A24162B434208A79117055E
+53BE3CDCA527E33638F940BED805EE57A3526186F80ADC5B6ACAEE25E2081A63
+3E6D985A8A6256F923B971E34BDA04D21EA99D34095AB201BF44B62258B19ECC
+45149754F896F64FBBBA939E41A11082C307165C5EA32F7C8CDEB80851B5219B
+7A680F7A8D02C9BAB72FE3B941E324F554E34F5DD5E4936250A82DB846F5966B
+779F29A9A4E53BCEA49CB4C6CC7D0034515E9F7B357B6AFC0FCC6FCDA1A34B5B
+103062647367EB77762F6B47773264536E40536C5DB2985C3048969F9D6C698A
+EEB959112EC964BDB8DC3C6F307477C2615BB536C03E9C9B346A7916D1C69C0E
+116DD955FEE0B8F6A0B476DDF245B7C901473A96C2C53DFB5BF4833F984F4D42
+C06B6751BFA6D96E9493139AEE7BE7839B8CB2290735C80542C40D266283CF68
+4DE60FABB54F29A930357CD2AAA60F5E85D1E674610F2E7C280401061AD47B55
+5A1EA0B0196423DD4DC994CD41094818332B99FC9218B2D628E86983DBC5B842
+AEDB7362D479C940452A947973C8BCCD46588808F0F9FFC55EF2D75C1C075BF7
+FE6C21DF51E5F6B00D807B033ACD1C7C6A8B3CCB7332E5ADC93433422095C0C3
+8CBDC619DC8EAC0382428C88443B16ED0DF49CD042D38082CDA4DFB035CE50C3
+9271344F46D3765ACA3E1B2942215F559EF1E308DBC2AF0659DC980F5DCEC6DA
+B33D596CB3F26EDD5A11D6647DB7AC5AC4FD41B62BC353356CD12DA5FC6EC2ED
+86DB312ED5C8323E1C766A0108ECE43C11D2BA0A63F1BE2B0A9D40EB995647C1
+82D5C9FC55169F50121ECA94D1953CFBF9F38B1FE0C7DD8B786902A841F24A23
+B8762B929FB5AF021414A5321C7288BCA19A240EE15D106043DA19354C4EE1B2
+434A967968C29B9125BE84A907D22B0BC2A2CD09AED00F3CC3C5C7C9AE7C906A
+7050756D4E67E11F2F2C14DE59A92C013849CAD0A1B6CD32C0CEAD2A4B20AD3E
+ACF8CE2AA125F1EE154B79690659E1B90563E3884B47699AE1F7A71579C3C4CD
+B66E6FA9BF98769452C5A2BD8B54112351F05BB77D3D3E3EE9250953BBA94EC9
+C0DAF20B0606C3CFCE4815A876F9CAB8A9A2E5662F7764050A0F5A7852B9AE4B
+5799C95B8718D481452AB4262A843E01CCE943DBB8377B7052FB397600962A01
+25E5FA112149DF197FD9C8F16BE5819096B87CB3555969026B8A5F4FCDBF3171
+BB1D5F36E7CF89D94457F4CFFFECFD8BB3E009655D799C4F262FBEF937E5107A
+511677585FE4D4560C34F03183E6293EC2BDECF5DB400CD1A29BA1678083CBDF
+EAFE8D078B72B42BC1CEF9FB5FAB5B2EAA044F5E98D99D9B907A3FE4E1BD4E0A
+2B845C58D7D0119C323AAC85463968D97A651A087DF3B6866EE0D09BA5583D8A
+8DB9837B487DF5FA27624BE3C7F17E6C734D294A1D200D971EAECF983A0A2378
+BC2FF6B206A5121EC01229C14E0C22CFE7371AE1007ED8F556B54347ED545D05
+EB488D7DBD5F668F45986703122FFF97A19523731B7D3CDFF8FE45ECCF2B91A2
+0907AB03E8698E0E3F6D846A4417B9F66703DEC16AB8DE158431D3424BF6462A
+70085CD88F8BD3DF2023F0738FA6E3F36E752DBE7590F6BBFE1BA8092CB69B54
+BA30D871F6200BB9CEAAD3D6A5AD721FD4A48D002BDFD8E339483D6E32ABE379
+914BE6B673F6FF3CC20BB2A971184433A714E802CBAFE2C85DD5F0E29B5F9459
+16AFA7D594B373139006786FB5B8594D50C91217D49ECE8E684C292946D79658
+A9BC010ACED5F757796BB9C32F98409ECA6511351E340C2C9E3CE2AC1007A52E
+95E6DA9F56E11D4B0586F88A149FA8A2BE78DD25F89BF504A99140A7453E4C3B
+EC9F94B300E4F6AB24C4528E029DBC0C61E116BDA8F0AE3108E3269A76927509
+95B41AAF17DB3759D04E9F0E7CA4863A9A771A49293B1EE6CB38E33A125342D0
+6C63AB27F308D08F60F4DEB8C0A335B115D25683F8AFF549598A3B1E88BBCBFB
+7C418723054B346E748DB987ADF0EB40FD0B8FAAFE5871EDDF9D68821C8C9643
+7A3EF4FD3BDE591022C83EECE829BE8189C6D819708103BB96A29CD107F416FE
+3230C3E7E358722AFD9469FFF2C7FD9DEC35BE527B99BAFF00C799B99080BE0E
+C88272197BFDEE472E29D1A197083F1BF10324E834C9D76190223E095487AB37
+50BB4FC92179754DD1138F9A55269137543FDE3173BB57BF3E5A2C42F5C58536
+BF4FE748D9033B0E319E3061A7044883A795BFF107E9C12F2449197FD29A2BD4
+C5B7DBC42C28596D43CA57E4184250213D3EE5D447A0D8023E2BDCA6B095DAB2
+3094B07797FA4AD49A4BC874F462D46F9DB4A21773BA0181B3482CF9235D9C78
+B967B280FF82EF3938F51211D5822F527127A5B4D7D643A443581EC8599C62A9
+A91D57B358D8787A39DFC4AD363869F6002E1EE878EC3573521ABBA11B6FAA80
+2F73E889DE675B42463A8488C72AF383482D6509F49786ADA521F76D93C4A91B
+7A5B23417305F5F89FB34261C2FF16B3BF983B19DBAB9BB6B1A2EBA3C2AF80C7
+450248EFADA22E1F8D18CBEE599C8D210498432C47CA067449143710A73DA7C1
+38C859665D0D88FF0E4ACB573E954655B5DD4B8C7DBE9B8A3B2C4526872CEB80
+45CB40C3D53F89ACEF33BF54BA05439AB4137D9F6A5F7CC983CC0344216AEE0E
+2BCED1790BF4506A8908E1D7AC441366E9938551A962C6AF4BF5E2E6B706CB0D
+8572EC4AC8CA0714A5EF6D4861932F42509F217477AC1547A3F96CCD15787A6B
+B7DFFA17B0F44E83A08486E779A1E36B7748B17F2D09FE6D7717E1CD3E306004
+F69F2EE47DD0A9FEDA1D43558C8217FC810C109B8E55446B6F151D44C08FC996
+63530C24C7F0B8A59AE9FB7ECD212902BD8E4115A6F6411266A57CA3F7532E2F
+C631F18FAAEE1F1B7224B598AC585A4279155501B1BE29E06893A8C56DE80D66
+4D5586C74C54B88D1B61602D44CAC618E21F447A3A17123F9032AE7B7854C08E
+E63B5335540A7F4B36DCD11A47FC8E672E8EDBD9BE813702927FA8B0E0715943
+E1AD81AFDA2350A8D9C05295A208EAB36592672ED05E16C4D9392B3CDC1EAC2C
+526F600BACC7C2F6E0AD1283259B1388E83880DF85DC9790DCED3EE2CB06245C
+3FA795567CF8F6E63059D974D5E2DA8B5262CBEAE15984ED2D6FBE0C5580CD20
+05640AC7C4D28C5692D3F814A1A90A7BA2633A68A7A9752AE74761AD428B19DB
+79133438C8E0CACA1624A5780A14DF07A74003E6EF75F75662EF6E817223BACB
+0B0B47C05B22016F6EC2E518EA8AF4DA0BDC4B02EBBA5D746CCD8F698E5F25CC
+47184CA13E1670BC214C44C27A70CE6DFBFA31B6C82B015C1A4F64F2C767960D
+E2E40BC61F84B19C6F874381488053602966F43AE5058C0FAD7FCD563D01DC11
+09C7252BD1FC94D7975F72047395F685A7FABA083130F64B8DEA9029F14C6AC6
+874B97B05248E3D6A435711263526F395BA49D30A21D4AE548141E399FBAB5B1
+6EE081015FE3C5663CCC484B8B4183EFB92E69EFFDD7F01F518569E03A72C4FB
+6772A0644FA922FC56B0B99B1F35832A11D929CAEC8280793D062109E3BC57B9
+43E01331FCA8548A573FEB914F916BE1D06D2561296972C28F6AB92BD7C739FB
+B1D5251FC46E2ACA742585DA6C13ABF373F66B51B45B44DB1471220A3C5AC33D
+B1CBEA5B541B8C1AAEE38ED30735CB1C12D02DF0F6770979AE08BA566887CFF7
+54C4AF9ACC382793D4BF251D09A088691EDF51E72BD9BF9F2455A8380D40723B
+1D90B78C210ED9972BA6BEAD25A7B240219C012E3757353802DA6183C365F51D
+D94C2C57373A44EC5C422D3959C140BD87F1271405B33BB9747A78E5460A96DE
+2C1E98D4B4FD3A15E10989FAFBBA5C57644D6206CDB81493667B3E4FD684F3F5
+8FAEC6F36B47625DAC46AF37D9A04536EB5D64B84D17FA194BA862BADF76E107
+548B078BD5DEAFEC764E789E6CC8E78039801CC4716FFF5E7857B0FA3BC31CA7
+E1AB37C519A9EFC58DD1D3926226A3AB147EEDF10D63CBCDAF2DE66E4356711D
+EFB9601764562A81D21D943A01AAA3D814DA167531C164BDE763F6E3D619FE40
+4705A2A03672929945500B4D11F01ECB2B09CED1927029D49A9ABC19B23463EB
+0FAB85297CE11F97C1D560C5CFD27691E39FAAA95B468A502988BA484664EF88
+2630187E829EAFC67146942DAFE5DD566A72FD6BF32B33F27B383ABF99F9E438
+C30F7CF8513F209A6B4E76F16BEA603005E8F71C817BA98D25B415B930988A1D
+4EFC4CC7BA7801869D53863261CCAF234BBC398FFC8D7F736F231E77DC9C0EA3
+1AA359D0A1962649825F59DBBA3B5975D70B2D6FBEE024FEBB2908E47858568D
+4BF000D59D21F549FBC46726878B0123BC5F2450F60B092AB46065DDC9BB7D41
+8E3CDB9982369E2CED9B88B58D47A94A108324E6BC009395CB656230FD9C5EC3
+8631D1F70F5B29CBABA91706687A4EC238AADFD7BC3B43166134AC044E72007B
+8BB28A578560F256B2C9F818D948CD3CB57E351BA8F34834C164F3AF6F544B64
+0DA5FF8D23E70669BE37DDD66EDD81132EE4AC92607D6309C5CDFC6D800FA012
+BEDEF9E53F5F3DE3B0955FF6D7F6AFAF7C5026F2B989F8103E4FD2E39176E5C7
+A50333B89EC266B1C39E2534EA4AB75B62B90962065D26D8958DE43A879FB0A6
+316D86559080C6048BF798AAB878E578673FF67A92741F60CADD40265C658184
+A42E9B85997CC8BB4696F50CB08AA5F0F1A658041F6C32A0859B99E9B41A0141
+E9EC90FDA5A358995A7FE0F8E7D5B74F1CEE7C6EE8272B35BD242B5219AC103B
+CDD20FB4F83F7BC30E2D0DC150B036CEB93C92908D53C6FD6D2D5BE1A1EB1596
+CD9374A4F388507EB1624048C79366F13C1319E410B9EEF4F33C5BC5BA7392CE
+852B8F2F649AF0781AD969BA91CE623BAAE3A45626D4A6D98F210C30C60DFB30
+72C19559C54ECD9FBE406551B0B3C8B1833A8834E1BFECD87A20D90B25F4859A
+3A7A21054BD82BD20A3E2112F447ADAD7BDE83EE87ED04683DAB283627AEC13E
+450DA15C25855BC4ADA345C1D92CB5880AD4466DDA84568FF703A824A8EE8E29
+F0E221661D6BCF20BF046F80C044A860A2925E96063CCE02D044DAA35923E5FF
+6DAEFA7845ECDA7EB4D3145F0436EB4850AB3A65120C32BD2AFAFF65518A7529
+AF8B2E8F5DB78B7F789ED6144D3EE5588A64DC1709E64C69B3907A8B4872AAC2
+896172C0119889060CFC265751C8A781208282157BA8F925BFDFE72E4AE0BB4C
+D472F838F9FD40E229A3B36F18D96C99FE8D88CA44BD2702C5723D7BD75CA5E7
+E606909DC6EF9550DC7866C54E6F08F6993E6AC0E78CA0FDB60DB16AFE9149D9
+CE9E29E6461C1FDCAC59B0CA7814F7CB663BD335998F2B946407D92791AB32CA
+BC3FAF02A19178205981B654FBC761D3316337936BB9C02F4435E9FF33A93228
+CDCB3DBD347E15779CEB58473E78A5AF2F234F2FF350FF5F2589FD2A3F38EA2A
+0411507AE1ED51B550AD45D561344D3A6470C9449E25522F261E9F861A87F272
+250144D4A7FF42EFE2F53F262B4D50A9296958A5FCCAB2A72192C87AA4D7163E
+F5C23005FB2BFDDBB7696A39A987822C4D71A1BCFFF58FCE32435CE6580DC9FF
+F02B40A04772837D1C090B31D98E73E79D6E63D973AF32C762643D50575E99B2
+D2944583F89A5C23DB7BC78F34E2A23079DFE9CE9E9AD70C5EA9AC910B721861
+9CD2CF56C2E9F92311D2F4319C4E55411BCE3D593188E4324A653B730C2435DA
+3D2839B68C3919AF4DFE343C1F1BE951985F50F264253552CC514B6962EA363D
+CA92F7AFF2A2F64B14194F69137D3EE3E4854B0BE9E9D9400EF10A9F1B40A01F
+0AB88A7542A3F40A29B012ACD52C644EBE181CD24FBAA9A2687A182BDC142695
+6013E51C2A8E561A067760B4696EC55E2DF1D6A04CEE65E74A11F712BCB2F8A6
+9994358EC86660EC04F7DA6C7A133CAB415B034B567F36DC71EDD3DEF8F0802D
+437DC1488532EDEC290E147FC9279F4821F0EA2F5BA6E2A43B64CAF0B1942F33
+215C18ED620C928F1EA7D0452613927FE3A78377C01542FBA8A397D0C6D6D26B
+AEE8F0A3C15AE5CC927CA38E4C0CD2AB9C71B6780E5EE878523177130C291C70
+75D865FD73B3A875F450331C332ED0205F74355A07C528AA047568789CE16005
+A3CDB32578707DFABCA888B476BDB2FBC69425F9157AE29C0E807B4D996DA7E0
+75C8F714F2EF2803C456E2EE318F6111C286CC7305D2C1E270643BAD7587DC7D
+4030E32069D4CB84C8F07D0DF1E492E4F4C9AC6C71ADC174925CECA25FE6878C
+4C2BD2D4E3A3CFF16E0FCD8C308B759C2A4FEEDF484BEB0F5BB9B7895DC641D2
+922631FD2E23257128523B31B369AEC4D3A63E3AB3DBE2F649BA1C2E4BB4F8FA
+7CC579D3C6FBF2B045EAEC3E5522802DF1E107179B98CDB9F0A9D400CC5DC89C
+561A93455644ECF841E34C28FD690062504AEF2D5E09E9E84230E93B56B741D1
+1AC88BDB4E77B90D49DAFF1333758F9E72CC153F4F1823407E9EA929067E180B
+989D5B459D867D3B242CECABDA3439BA08BE3F96155B62E3323FFD874DB7897B
+CC139739546D83739C5C1665F6CCD89F74CB7C07138891E23DACABD4B67AD04A
+1DA2D547378B8E77D1D6CF3A89295BC499F383FEE55EA8359544EF60ACF1F750
+1C607FFAA1AA10A361DDDE23B2858E77C71F0FD2D47ECDE5E77CEE1DA878A8B1
+40211679D7691011B81246ACFF2B487F106FEFF52E79B7B7B05442D846FA7381
+98E1EE04940FD3446A516B47C815943870C9CA9C1B1BDA2894AD89DEA6E1B96E
+60C94BE49C89A0FC4B009AEAA8B9E658798B79AB404EB06515D23D0C83465473
+4833AFB6B56761858EDBC5E125891D58DE477CD512943AEFCFCCA741D39CFA02
+E0CBD9045ED5FAF2580C39A1102196A85E1CBC67A1C56A7CDFA12BE2AD351D9F
+37D4783CD6A8B0EA717B5FE28D7B39000712E37E622A821D040AC927726402E3
+63345131FE928E3147B83D619DA8F212E144B19EDA829C7F6CBDE636F76ABEB7
+82658AE7276C2F8BEFD02188598DC592E05666984DA2BC8C9F3549E96DF45D44
+9FC713AF972127020E99F95AF3904EAA898F4B67D19BA296AA36FBC14C4DC5AB
+C88DCCE567002214C7518098D015FA37AF02BEA5D9F5845FE3FF9037C15EBC79
+4CDCB7D79129ACBFD2573A884EDEAF3939E2D3D6967F1A0117A0DC6C8597FD47
+01813A0B01D60D7709BC55D5DDFCB08F53B441D7EEC6544FF96638CF1ED431EC
+794A0E716F63233C0D80E8B4123F30E632AD427857EF57A6CF6A106F5382EF74
+F9088615AF05E3362609E86DC9CB58CD2F709F8196FB61FB4F82F9B1F0792B09
+D6AD2F194A9353F60EDE331B84B7704F0C797415FAC6F5DBD56D39B44A45D1DE
+B6A2319784AF1B2A9573DB75B573926AFC074627FAA9E8B4BF773A802896CC96
+65B535DDA172851A2F052934E7D7D593D3E2644444F7C635179D00536099420E
+CC56526A9FBCA1B2DDFC48D479DD9A928197AE138735926D72737FE8EF7D1B21
+6425B94AF20B5EE8BC00FD87705DB8DF11ADF16715177FE917C2AAE6DC1CE5EC
+EBFA2BBC044398B8F85DF05D50BA8A53E97F44D6CCE9690F901A50B844416408
+91F0DA30C55BC25008122D9A08EE92A8C84F6CEACF40591E4320A114E2B62F15
+92971E5DD0613D6D323245F1DE0C5397802E88C79D9C8C7719F4A13902828BDB
+34D6E8D8B68BEEF5A4AB6A4DFCD93AF6ACE8C60A16A593474CB17982F611D6B1
+3294A28699B8E8E73C27C68910AB90B2CC147944323A5F339A5844B674AD75EE
+7BA8094D3BFA4FBE6D1EFBBF7603607E38B920BF9CE43E418452E4D61A6D28C1
+F91CC04699210332A1555931106ECB43AC1FE2D08882F0E9180E5924C0335693
+AA13697E9F7F1091D71360D373661CBAA631992B3B2627DA5340DC655F712572
+FD675340127A1CBEFE3656AB4009BCD1BAE64048275146C32E79F031EEC428A2
+0B786601B1B44D5BF9E464CAF224E5636B0D2D83EF07E81A545EE9A5F9A531D2
+064EC94A90714E13760440450A6ACF3DD244C32A9ED0A65C546BA46C27FD7801
+C94F5C0735A1E9E6934D30AD680799FB3A761896C9E1F1BC0422CEEDDE021770
+1837B9A79B0F8775340CE0C2A18E260F6C471E98A3C6E4AC73A148CAB6EFAB3C
+E50F14240785645FEE335349C9B8D59B99FD884EA4A1C878A5AB6934511DA544
+7D009675FD5B62F999ED528C3B70D337A7D93D4D14522D1270B5C345B5ADE5ED
+518AB80590221630B0E66A85B1DC67A6CDC6B3694F8EE53BF90223FD68ACF7D9
+A4106D543E16EA756EC3CF9C96FAD7E45A8966B8BBBD5B1E5E9509F2DDA57EC1
+AB2B457D495F9C8452376C11C649FE4015844D876967666AF9824AE5E3ED033C
+D3DE8808897B223FB36CC42BF7867775B8B97610CAD61760B48C7F3F2DE23908
+035EA9A89551B4AC734DEFF55D121AA9D365BFE4C621AC78344A11360E042213
+EE8F7EB0EEC8BEC6C9294D22467B5D6DB1A0B0E03F371E1AE162C5DD46DD127F
+F8F75142EA07F5F5E3B4848E9F4B884F0257D4FCBA87797839A716CAAF03EE52
+FF4479EB9FA912146C609AD0784C7EBC41CD480FB7B3CBA7D5BB91BEBA43B5BC
+AA5E4A9CEDB68B34B4EF7A15AE58EEBD677D7D2ACB6570A569F79AA9F8C08334
+2575F0AD37AD980DECA14BD61D6D0F38DA4C8F5E4350778BE866AB63AA8260F0
+3D9105FD3738B1C5417EBC9BE27027718016DAB611E3D06529A5F9C2C0A05371
+3A7B87144805AE4E317F26B518FAC096F5A9BAA8EA45D77BE19CDD1E352FC955
+1ADDD93B080C6E95DE94CE3CC6AE60E797B09EB9FF1EA0B5C60822953F8612A5
+93923E7D7FA07A86AD52B23D3D0B88630B88D6E8C62D009DEF41CC7D95EAC8EB
+B26AC8E3DCF0929016378EC4841E1C4F951059105BB7F4D9D827ABA155102A09
+0242EDC57D050CBB9A0B6C5302B1534EC041093CF0C05C0E30F0B3513F3F5356
+75E913640AE066B795197E009D880CF19ED6C92FBE4D9CD3C96C88A59F2097E3
+D9F0F923CF7537FC69D5C714DA5E53CBEF307D8BA7FEB8CAF2DC63B9B07D4556
+CF751C7AA7CB1268BEE3591838C5DA625BDD22B4748A2118B7073C7AC7A885A1
+4996A7900CE4F42B19383E12F0BFBF0862E3A539F952038E1149B57D3B92DD18
+FC33B2AEFF202D53D5212300869B57A104AD5640DDE1A5E3F1240482EA9CC7DD
+A63BE8B6DB82A2FBB5DFD31E72A6CED413ABA65C6DD3674A76E547A4CC9C1C5A
+504992A649C7F2AC469A9BCA5E9C84333AA74C686A863A05FB73110E466A34C1
+3E3AE5E21B912282BEDAE14864E420B05F9E2EE8B1C523B362A4237929BF2D06
+A0D398D91ADCFD021113D4489736B4D8E703D77F2BB92973874EE461E76ECFE3
+D114EEB3F611531FF20CE6310C338C6C426F2CDE535C69E3F14CBFE16F48C7E7
+7420777D9A175710174DD5E23B2BA6FFEC521907939AD66488857BE8021B385B
+D6E1162BFD8BB36174E0D5C238BFD778BA5817BF31B2624429080A5B93AC98E3
+B6C5E9C792F9B1CBA7BBDF63277A28B6891DDCD36D0CF656C4F510C77AA08991
+0545717C76D2289D77C79DB34F2FF22E29AFB3F5E9B6313A2F582E4DDD2373CE
+6064843D24FBC35B1A08AAD4A9B408541301166DBE585317FF2A8E15C25DA94F
+5A5B9D11F5F0B1A658648C529717151A96623F590FD41908A5CA20CDC0D75D84
+6DBFD25E5D4739177AF9
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
cleartomark
{restore}if
%%EndFont
+%%BeginFont: SFRM1095
+%!FontType1-1.0: SFRM1095 0.3
+%%CreationDate: Wed Sep 12 2001
+% Copyright (c) 2001 Vladimir Volovich <vvv@vsu.ru>.
+% See the file COPYING (GNU General Public License) for license conditions.
+% Converted from METAFONT EC/TC and LH fonts:
+% ecrm1095, tcrm1095, larm1095, lbrm1095, lcrm1095, rxrm1095.
+11 dict begin
+/FontInfo 6 dict dup begin
+/version (0.3) def
+/FullName (Computer Modern Roman) def
+/FamilyName (Computer Modern) def
+/ItalicAngle 0 def
+/isFixedPitch false def
+/Weight (Medium) def
+end readonly def
+/FontName /SFRM1095 def
+/Encoding StandardEncoding def
+/PaintType 0 def
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0] def
+/FontBBox{-188 -320 1445 942}readonly def
+currentdict end
+currentfile eexec
+D9D66F633B846A97B686A97E45A3D0AA052BD0CE60552BD63101D7CDBEEF5B11
+69C468645FE4ED1AF2541AA0770C1DCF81623DE0ECDF49F2B522618F650CE6CB
+CC8C21885DD61AF8A523AA677EAEDDFA51A1F9B1885EEE0456196D634E04EF89
+F17499DAD982502ACC349B9EEAAE4A71A73D1147318C60A8BAC10510DE90D8D3
+F46E47295D27129A5AFE0C65E22BAD10D06885A2EE623FF8E1D90287A083E00C
+EF25195F68A2A98170E48759F33528B839DFD4B92DF0482493852D12053A7904
+BF6E144B9488970F220C299E80886366662C1276120E72472BF84082B9EEC729
+F7007ECDC5A850C88810EA679DABE81714004E65D938DA9ABDF29C949A52EF02
+EDA8451563235D51286E9133FFC7A27067DF0332ED614AC2D4FAB88EC84E6CB9
+FAB41C933E84B88097BA8742BC30A81416D1CAA3545F08E2554B28362B99B79E
+FC42281922B94604AABAF5F7A9B8E2D9A4358F38F2382EF9544B859D098DF243
+034CC475CEDEBF0EDD0A60C907127BB32F7D85A62A44E90B4056D9B4B2FF3A49
+786032C6B25794E2C0003C7852C6B0688351FBFC43300FB0B72880BB7B58BB61
+3D1064E7D4DDB128A9B38EF7510B7E5F82BDE39489E2D1DF08816781B13836E4
+89390F84577F31776FE43A5F94F817A4AA4A698AA4AE84B178FCB65F1B5A5CE1
+334417595F6E40849041565BAA497F6E4B8F4305D849128C9A26A98B909EABE9
+8F2659189ED27C588ADC7C744712B4D9AD0C5DD25D1233E979DE7F53C5F1C47C
+E9DF254086E5EC70EBC6B7E080060BA72F15E6BB75C75011B15B7ABB6BF761DD
+428FF1BD688938C75BEABA7DEE2AF49364D2E198FDC7F8FA2313BBE598ED3703
+7ECAAA4670BE3A85C693ACA829A5936778BCDCDB38A5981D4CAC8994E2B2F086
+26D8793AC1393D49A8F2FE391F0EF8899F63CFA5A77BC739C867C6CFB9A226B4
+620AED34573F068052604331B7E8E1F0C3BC0BD7DF733F056DB8C3F57E3035BB
+EC82DF5B511453A952D429AC721A4F94D5C9BA5B83545948643D0596F4C6C9C5
+796BEC7B26EB9D729F337E0FDFA91E5955585C330D0C4F193FAC870A28CE054C
+8942BDA170717B7AE9927C936DF0076507F55CA2979BADD3EFACC0A599933EB6
+F148BB7C3D61066CCC93A5856D253D759F30E37534743210743F0D53F58D0B45
+463F053E19A16E5A1B111915D1E664802F8C6C3ACA0F1BFCF3E209D1FD6C79D1
+5D867E142AD6E69933768274F4E2AB57CC518AD5A1C120887EEDDDF18C291BE7
+B3DB17E8FDB124B11B6142DC60F560DDD668D700614732F3FBAC4637B9F41361
+54CD2D8757A9D9BEDD1EC72FDAAED3CE4A1144F1E919FDB952BA7CA1E3D31C3E
+9E434E2E44E7A83AE3480EBE89E0881584045E4AA5814897382EEE5FB5C9410C
+2DC7A2136551DE2AA713487A77B911A7E7AEE41F0BEA1FDAC1950473B1394479
+513741DE60091BFB9751C780D99F2DADD5AD8283DC9CD1C81B902C9F3C9C3EB9
+55608E09D6DD423540BCF72394A24F81135C9D9063C0F4441BFE0120E03558D3
+4A16744457EC281AB2A60432C97DEDD16B2F1FF4C1A90D72D46C9F9BE984C6E3
+E239F98B59A938C2A6490889B437CFC21D923572530E41B7567A9C7E2464DB2B
+18FAF3EB7CBFE7BED6E77219C0366A7D54D469CE3FF62E75FCA2ED6A46F3E5C4
+489992EE1A42C19DA52F0CB2B1A6956BB3F1767B97FDF225685FF7C9E9243497
+144D31ECF634CABABB79E323CFD483BD7A7B0C2679A9C3DFF0D44F09F084CF3E
+886CBC91C5386A266730CE2AF3863534E2450583F6ABB520C27C4EFEA01EBC8A
+F019D25B7BDB40CD6712D7DF2DEBF0BC70A92D3B64D1FDF723DBF3D4AE939E96
+D93646BAAE0BC57BB244AAF47ADE59A5228F057192D917E2BBBF588335E09095
+1CD4AA406C1D10C8EE6812DA676A8FD166461064BE4150CB95C41FC055FF8FA1
+89A4BAACB0B978A58EDDDB0CBEBF6566D47CC0AFC93110751B59EA33AB5D6EAB
+0DB9A65CB16A053495F06B0D49A70BA8A7826EB571B8428AFE5EBB99AB9B56C6
+F69DCC77C25BBBB53FF25C5DB5CB8E742E3C0BFC25098B4CAEF12D299C886881
+0D4EB71D637BC0CD4D63BD6B4F5FEF9B083D95C34FB9E7BC9FCCAC0B9C7D8AB1
+1816B17AFBFE1DA146662723887E435E17AD2E2315AD800EBEE700B3C12B50EF
+4A48C2839AB4BB367E908F59BB5AB88635C3E1B89948BE9F32EFEDC2E439CC79
+BD9754280477F7C982850438092D309C213D70F8D476728119E8FA03762C22B8
+89AC2A2A7C0BEBB0C91CAA95BCCDF91AA918766C82A978B7313870327F89107E
+11A44FF02F597C8D4B085F6D7A098233ADADA521CDF34A78081F8965DCA615FB
+55DB12C1E3459E49C273ABD2663B13447365C9C1C52E192282E96049FD58506F
+FBC9507DDD77014C29275D1352CD5FC765853E858A5781F2DA41360D32FB5A54
+D04E088FD99F8C01DF740E587AACB0E431E03E170CBDA9FF1FCDE8D9FF5E43A5
+73166AF5990B238122AB322F709FEF2F0E2FA7C04FBB62C5383997BC9CFAC8EE
+3FAD26E788DB37ECB388CD80A7D861AA9E9199E7BD065BD7A4D21A0D56DA9323
+2AFAE158CBB662283EA7310D32FB5A54D04E088FD99F8C01DF7535A5156B8344
+F1CCDE84A46AB2CC7F0CFD113074A1C4D90758EE58F61589051A0150121A7BAB
+A636171E6814A1398DCB9F13FE9B11ED5A5F2EEAC14E0C831B2540D10BC0EDAE
+833A83965A33180B0AEA361848DF8FE8E50DF6856F1D10C8EE6BB5198CFB7607
+B6B044160CBE8D4CFF067DF3579918B19B9128C2A83512FC0567CF47B38961BD
+CC60FB8C6330A30AFEA9B276DA89313D6A83343298F34461B13C382575BE392E
+F94E3EA3004D6D37C025DA3F1846E41606DD510D2C7D0BE9DD194E46BE7CAAF7
+A60D496CE85D2393457C50B2D586E010C7C4C7272F496F0CED0084EA956455F6
+2EE57D13B6485B968190360A3E30210D2664BF91C73AD1A811651CAC09A9DC0E
+3A328E1DCA16082699B41A3D533703E58E366E871C982F262478E41DA3483028
+6BDBF03E444C6F0F4DA2CE9AB049F324F887732D21C4BF9C5365C603C9971CFA
+7E45249203329FB9B4054B163C166E1322DED12CAAE39E289C126301D25076D0
+2FD409FABA5247D7A25945AD5881E18C2DAEC09606228CF925557DDFA155400F
+8D446CFB8AD19704B6C544CFCE47ACCB854A74DEB5C646318679DD738987F800
+96844722729076811B5054DA998F9AEBE37DE5068418F41A007E645599C0BC21
+8363573C695B3F68111CE4A6199C8BD40D61E46A153C3C25D0C7DC125415D125
+D0C6130BB6B603ED78153E0CFE7384F7481FD4EDA141C27898B3636398EFBBC1
+9E81060816655B2F7052016A4C72A6A1CDB83BCCB2EB475A9BE17EB08A5ADA04
+CA8AACF6FE68BBDE580243B111BE76EC06E70CB7751A8B206143D0134BF52670
+BB3F44DD8AA7D26283A483CB46286EE0A9BB4FDB0337342BBF362C236C30A120
+D85812760265E3B283F48C05E78F47CF5C678F54658A30EBD7AAD5840F3C7B9E
+21D8CA390CFD164792FF2040E07FA087FDA110A93430C7FAD65C951AEEF79D91
+FC25EC950E250511BB22156C2886A249CD442575934D385554B2B4534AC28C31
+43A657DC937CFAF3F6C87EF4F2826BB02C41DB634D91B70BCCC4F83F4C32796F
+C5664490597DA5F2CAC7C0013B18373EF51520DFE081F95E0C1693D02E39AA2B
+E356FD312C233285B2A8C8C337504C1EA7E9E1F6BD250B5874842F68C92DA11D
+F74E6068495709EDCC6E4BB3A96AA3A4C89411FF06B66DA03FCBB052CF5DE837
+4834FDB84E2248DBC10CD7454636E97E399A7AC5A16A2191D763AFC09588F5EE
+57E80130CBDAF18FE2F530BDBD2CFC21D684AF84A8CA37BF2258C80CA61485BB
+27EFEBB52E5FDDA77E57AC8EEB3811BE2BC948A926FBBBAE974D9CE89333C945
+A9DFE37E5F34BA68EE97019BDBDAC7482826B8F71EC51A777B64C52B1C37326D
+1172F83F6E4DF93B37E66CDD6344810758B10B2EA8C68918DBDBC72F8821F1E1
+96AB78288A2E00C2E03FA05640009DD0EB0D0D318C6A726DE5D8F2B1B035C658
+D09053A4B27B18F18BE4396C900A730908D832F3E8A21C36E32F2D603D0263C0
+8EADB43290CC59C43AD57D357057B13C9ABE55F11DAAA8D78574C430939CEF9E
+FB36B462DA71CFB6E86C72ACAA04D5FE4732AC386F52D4AC92C47F9B11FC32E5
+B188AF2890EE3786AE2772D2FBC5D75A7FC59B0519F32D930B71AAEC8B88F1F5
+DCBACC2CBB9951DCC8F21A26F197A309C26ABBC4C25E3FF22B2A511A96F0BFF1
+2BD9AA37DA5DDDF261EAB0E48C62DE0885B8D074A7642D59C8E216B5F0A8B327
+1794E0BA5B672E41832562DE119AC5DA1AFB74AA66885ADB605AF60B44C1D904
+EF85F00E1F143A19DAC00F751E77EE62D394ACD26B463F7C7EBE4EFD40DD93F8
+81C2956C4250F5F28207671D7AFB3AC09FDD0126533384CF1B2004F31E053135
+44EDCAD0114140E52B7E153C354CF3F2BF37A15E2D19A2ED688710B6F9F83C5B
+BA14795934112F7963FFD217F016DE82353B915549CECBDF7BDFC6FA4F7B74BE
+E202170C9F25C7448970684BC555C8390E34A5098F55E0B003B841CAE775D48C
+1603730AF8C091C0622640AC5A0B46757165B44F0AE1EC1072DA26A8EE0DA335
+A6BC8AF994F5508921F3D9E4E09B375A58ACBB9E6B0448903E19A5CF2A51F619
+81D2A539A4556B9C25722D4DFAAB480586C90874DCDFC2D70716B18572557BE9
+E9CAB7F5A3959D5419DD9FEC22D015EBB5D4BB5CABE110D76E8A76D6EF3513DB
+5C23D3AE05BEFA77BF6B4ED5C413E8DB87B5ABD1B2FA9B3BF37A81C784ABC42B
+1FEFDE6DF012974241B33B67AA67FA38798336F7354F0984D612DBB455D0662B
+C8F15F12DA07E391480C1A150213ABBBB0F2927D223D5752B69C930053655C34
+FC487DD271A8AF594F457F6A083C4150686FBCBD60832E4E7D0D4987CAE5484B
+CA81A230A21F9C49DFBEB24C94C93ADC954B9B3B3EC484C502BD0DFD605F6D5E
+13158237535FA2EADA044ADCC1E1AD42918C8C67320F6621369C250D5335FC05
+AFEA1B294EA5D2A6F335FADB80CB26FCE9EBC0A4EBF72DD47806EBA23C3BCD77
+7F175E2041EA03E2F0B2BD2B81E9A6DD43BA3486375883C30B8606D917C678B6
+6E567A92A0E0DE89BEE5E5AC45C9202D46EED5E045302B71EABAC5FD997A9A7D
+8F522B2CA316B7FDF16CE4981DBC25E4E2FCE3981324B16A18236476FE242584
+AE70C683199B7647325D295528EB7CB15A7E3940FE2D248945015E9DEEB9EB26
+7012041740F5A2A6C7DB7B2358EBC0358E9385E734D208957ADFC7DEF83F5E5F
+4EDE55E2F078E994312214EEAF63F8D0B481C3D523E712901AD838AF2D840055
+E57D34F8FDD4C842D64D3D94B1CA46CEADF497A2FC75A45AC59F8696DE49672E
+E33773AEB31A204F01793262E820E813949115DB90A7C798BDDEA0D5D1E699ED
+753593F2B6373BD24D4647CF35A448037ED5E72DF3175DD6744ABAA0E2E0864A
+2F4EFF3B07B035520A598CDF1AA97D7DC3057414513DDDDE40C2A9DEFB23631C
+B2291ECEEF4D18652CEA451BB1559C0743FE3205BFB6711F1026A613D244BB07
+DB3830F07F32EA637775BCC1B2CEF0C6B0D119AF6CCA17DB1B03AB1E9281C568
+33502239B067013D261BBF33358AAB8803C451B2F570EC34BBA052170AB42F95
+F9386DA11A2C7BB9C05E8C9FDC96111549EAC90DFD8DC906C03F0281C40EC1BF
+EB6B15455CF32FCE5C7DF6F55C91132223FD13FBD62A787EB15CF3E4E6E59AB7
+A529DA186B178CC6E8A4D876794527F3AD72FA86B7C2BAE14D3E5A41D8F90754
+AA28185D92C9ECBBDE4EE53E2BBDF05AB4C9700C1367B3D81FFC1AA34A79CEC1
+1CA7D422CB58C8E21870F680E48EB1B2D5A30D974A7E9B24DE13958976C76225
+45415635E32FF316DC4A69B3CD5EFC6EF5F845C8E24C92166C9076691817FA6E
+AA5D1F1CE12235DEA3902F3C355CBDA5CC344376A5394AAA7C2CB50BCF32DB50
+4B6D9BED63F0A8928C0C06829558B714FD54F355501EEBE29882185A6CA1703F
+6AE65F03CB07406324CCDF00093EBC76627A11A84B5EDB688D20DF49616D8D3F
+7491719761E7627CF8FDCFC0DD2265160BEB33ADBE3AD01E7464370E3E0F9D45
+51FC9A87C678EAE5B16A564333DB11687FCB4D1D82C75A2F551FB4F940E0C71D
+74CFDDA0974D787BE959B2B87FE13DC290C53819DBDC2081CCD16F34F0A61AF4
+3CF53914B713820BF8F2243C0679345EFD56307165AEDF16E3BC771EFBFF595E
+C6B1DB8B028342D5DA1E8CF3FF4269126B48BDDE9BEEF7896CBA70EC77063CFB
+0EB3C6FF697509736BCACAA7F03C4C326875396F0499B198DAF7842384C36C2F
+36B17A65A1D9FB77649DD78499592C817679F344E0B88D80B8D78EEF9EC6A9FF
+41F4D635520B2269035CEDDCB3B5518D63DEBAD4F365A70533AE119F11323AB2
+EF07047536DA6370C07B2215C3A82BFDB44DA593C6B3A33BACC38A105BEA2109
+06DC63737E3EB362A122FE90CE8EF37B9C73FA6933BF27C39EBDE137F15AC495
+7F58F6549759FFD86C2BD3A09490AB47B60E204B16910AFB0C18E4F2361AA033
+9BE5EF972F4B52F18548E3CB947F083768C7254FC019CBD8C4DE7E01DFA456A1
+065EF834C7B146FD395ADBB9FB72B8EABF58EE9E2B2276C87FB83CEAD49BBA55
+7DA56ECA50BE1AE4819EA3C72DBE30F363D43C75287945B0DE47D1FF0283C494
+EA65527E8708279B3B2437BF1CA2456E260020E4FC0A85BA18562CDB8261FDBE
+0B928EF40F0DD40E215B8BBD40BB5B5DCF2FD9AB4D5AF64F82EC77BFF8C37BE3
+74BB9B2E44C819E84CE2C634D55A9EEB4F6DA28025C3831B601AD254108178F3
+3EC068E78ED8C72AFC5C3BE0BFE17F31A23B55E7158FFC40381F36DFEB6612EF
+33A54D2004D92F0A44B3468DBAC0ED5E34F70561F5E77DA369754685B7F6B04F
+233454A59AFDF45F28383B05B6120717744B58D2A96BA706CC9317B5E7FD0848
+56665EB38E31C7F8C87B0C65041A5D2E349CB4264523AABF9C10CA95CDD3BE1D
+9923C1A11D046FFC2E82A09E36ED0146978DC383AC6D70EABB20327360CF7EE1
+DC4DE736760F5CF3B47F7BA082DCBF881ED8DEBC1A4580C287418295CFEBFB01
+51B09DFC98C8A8C9C5F9AAA6971CA95D96A23166E5931F7E464B288F4E357112
+4111BB33FB7F0E042448478D3ED7AAEA57D1B0B4E237F919152F8D9E86229BFC
+B8D59BF9FB9E0062A3ED67A367669D0F2F8EFEB2219E5FFE7400A9DC725ADA62
+706D4D1860BC04D4432F49D7F4271376678D381B148D72DAD9012173FF3779A1
+7C4D92B28D3117888C864440902499FF0F9BEAB0C83FBD788E26B0BA47484188
+FC01B0349E045421E7D912E1BD329A536F61169344F16D65F6B90DB87E22F72D
+8E6F486F8D21E6DAE282C35A2723464F560CAD8B31A931CCA7A2FDB9530769FC
+BE0A5F66F1D4DBC0EAF834D078CFAFA415F43DC87AC62A1D8913334016B3FF37
+20902A7E5644848A57346228A13D7B1C757DFA9B5FC4E9E1DCB2C2AA2FD37386
+87E6B350662256D158D8C7DCD2F7AB1E02D6C5C8E3ECB1C6055A6C0B807B8FF7
+997E562EDBEDF7646B64165A55DED91178BF13FD30ADC1A6B6D621B1A7AEE1F4
+2E30D49CF3BD0656F584CECE76A17151913D7ADB223727B47EB3D7F491385112
+D36848973526DDAD7C1C1C0FB672EC627172D10DD33ADF2445483470F28AF65F
+29CB086189B3FFA31E0CDA710B6DE2B0EE515A46A3FCFC354AF01AF5C5D0B301
+C8FDEADC6DB9D492554777965E2751A715F8FFB6E0248AC51928DD65CA4F6574
+BB1E01B3ED95D736691EBEA8ADFCD8265F128A67C372720840A206056F66A7A4
+10E1722E4C1BDEA8C980250F9E034C29FE0F7D2F5DAACAE3173C865CA9C4C240
+49B6D4D0CD90B75D3BC68B8C84605923075A9A2D5D6F7008365E52796975CCA5
+02770D168EAF28C337D45762A08817666907C68142CFAB9D75C4F6D6A73FB4C0
+748F038F140CB009A24A80270037C9B5E514E04AEAD7CA8468C4D22E1059F2D2
+EA0E7CA2979C7066F1629B49FDB893DBECF6620FF9C48132297E81F717820A90
+BDB45E16CA1D0D9C152B12D50AF4E1B2519FBB2B779218C5E42E31FDF82448E3
+5AFC5F90AA018902EFFC4D5A14D4326911F7055F9B7AC5B592E2E2D3A198E2C7
+F476CB49DBA0FFB2CAAF494DAD087639203084CEA25DED422E0F8A30634FF1DF
+EE5C61FEEC33D547A17961534B3535AA673AE15F560DDFF08EA7AC126882B57F
+A1AE8A5313E6D21F67FB6D16AD32690FCE021616D0DB89C51001090A4A7FB515
+139B751F6137DFEA833004F4689474DE3A8FF64D98EF09D25802C3B35DD2DED9
+FB5300E4F50E5CC70FAD3A21917D15D5DAAFE30DC1CCF79A359B81AA3F21359D
+297B9795636C03E483A80D47A4826930854329FAC093193AEE3A19BA91063421
+988EA0ACD987862A716C42F071140254B72AC91B91911CD6A9D275FD7F6636B7
+4B1B0A47FD39120411E1D5442E711A6C1EB0741C67B0A44C1A2F98C9FF245A9D
+5AE4A04B529CC5FDBABB1C6E8C1590B3CE658EB77B58F4D04803DC351C5645D0
+4DB49D76906E068C3FB553AE91FDFF5F22F734DC4BF8E9D019B06D3A1BB7CDCE
+9101E9D2276CCACFB36B9EC74AD213BCE896FAC45D08EBE43E676816DDA135EA
+8B78003042DA8581975D4C14CBDECE0B027AE87DF28611F387E64B951812C848
+B661FCC0DF91B39DEF14976D7D00609DE2DB8195C186E376F4029CBACE3AF24D
+AABB788FB1AC87D58BF341F95EC2DBD14BFF27D3DAD9A06569FD4EEE40C516AC
+D809E761BFCA049DCD6F8E43E60A0BFE64BCB922D1989CC14EAC1987147A5559
+4F1CA14635DF029AC387BE36036BAEA8AE7DD09D090EBE271FE59FD806894A72
+61C714D6D08322726CAAF168C08CE31F26CDF6613C06CC50DBD59B70DA211B44
+1BFA22AD62D56AD098FFB998E25FABBD89A2C17EB7A3AE81F79C05AA4677D744
+7F412484C16CFB322FABEACF98AF9F152E3217D0F2593D6863E7872C5B6F82BB
+FDFD09B13FA639680E972DC7B086D7DAAB076CF346814556119BDFBDC3A16374
+E7B92CE50B3BEE8B7C26856BDD3C2ED98337C2B877ED5EE4878C50F06A64F750
+E9C8CA83B7FE6C91E10FA717CCEC0D2F8E21CB5A2367B5C90A81897B6973FAD7
+D4D95F6BEDE4E1EBE6D852A937D5D814AA6BA62324C08AC12FC09C5037588F7B
+1B043BC503D725EC657F47DE02CBA939ECD8418F4B7C705EDA3E9AF1E623A989
+074165DB0DDD59B7ECF513C714B7D0A1013E4E3F2B071F6A6DB89B7BBC2774B8
+87ADA7C572B0AA702156B715159829BA38A9EC28E1CF3494B0CEC876A97B4617
+2CC9162F204C36850CA9188B0B97300CDB1AB4F57B55D39BC539BFA5047B032F
+02A88CDF11D098FD30F6A6B82B98AB9D288570FE18E4E6A707179D96287D438F
+2D5D3C2305C5FAF075E0979EAB1DB645AD9DC87A621219C260FF67C2DB8D541F
+8BE9E20ACDCF64C4C721AEF5B2B65761D0310CEF36B1A3E57092DEFB978A43F8
+B553169F523517518CA0618E31F9A5940EDA42D8B9D851AD1E77BC1C0C8EED23
+F469B0568B5A556A5FD5A20F5F4E00FA6F030ECC5E711865F1549E409792F7DA
+D1FFD1BE1E6DD22619163B98EB0425319E738254ADA0AE57FE29E121B0D8F172
+DD717E0B59842BE9F6B37FEC3F1BBECE15664851EDA3DA3A1848191C38F2CF60
+7A262D4440322C26150C605AADAD4EC3EF0CA22D6A2F63BE63C9C08EA643B68B
+9C88ED95D2F2F0868CC40278DC2752A1E61C793FB87EE69A6D348F98A0174B09
+5AE09E214EDA066174A6823347B831ADF2619281E43A71D549FE194D5AD4ED5B
+1DE112CA90BB9D92C57FC3D89F1A57F7CEF2ACE8E944B8B725557F567D9DFC72
+3D28B0E11DA3F81633C042B5FD05513542A2B431B3744E2E9581ED828F5F8A8A
+C600F526EA874274FEB94E64F0AD787F47C98899DAA4552E447D4B97B3774334
+8DF26A38D7CD36EA79B64CB31DB0302BFD0DD2280E10FFDEF59E2D1F6452FB09
+E2A7015523BC1A46AC2F816135FD4EC198D30E95203ECD2623E83FFC1436FF74
+068CFF87C1ABDE2D31AD1FEEE6031D889A25B9F2C05036F16BBDC143705545D8
+4D14A2467639644AFF1D239BB08AA769BB5476DD4FE9974DC01E85C02F82958C
+12C3AAE071BF1E57C358F72290F15A2655C1C79DB5E5264133AD0139F9F9B540
+972A3FD82BF0377FDB8711A746B9F4C6016172C30CB33CEC0B327DA0DE2668BB
+CD41
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+%%EndFont
%%BeginFont: CMBX12
%!PS-AdobeFont-1.0: CMBX12 003.002
%%Title: CMBX12
dup 33 /exclam put
dup 35 /numbersign put
dup 36 /dollar put
-dup 39 /quoteright put
dup 42 /asterisk put
dup 44 /comma put
dup 45 /hyphen put
dup 89 /Y put
dup 91 /bracketleft put
dup 93 /bracketright put
-dup 96 /quoteleft put
dup 97 /a put
dup 98 /b put
dup 99 /c put
C7564499BC1319121CE0D93218210C68080AFF33420E3CB3A48BF9EB66BC07C8
A79D8CD8E78C200FF7CFA3DAED0B9E87E6141C88B436D8FCBA50AC195FCBB9BC
9512B95FE3A37FFAAB39850FCEBD4D50A243EA416E73F53B4B00F3B6EAE0CA06
-0693AFFF8191C1AD2A5129C8A8DDDD492F8EC8B7B93CCD6D4F240785E515C128
-D7AC38F14C1FF204DB89A8805F8D737644DED6E8EC6A58365DFAC56200AA22A9
-8F20DE1C232DE4E818CB9D2D3330ADFD72C1B5146849142B447900FDB1DA01E5
-C1BD63FB69472D782C659F7862671FEDEEAED3617266DBD34AC593EF6F483D5D
-AE56A502F9E66041D58C14FD6E83DEDA7DBA041726D78EFCF51152DE72B51F2B
-B65060004FC8F67755EBA2F10A2D3E496FA3BC3B664ED03F496AC074B7425C21
-18FE971025F8553EDFEFBDA53A475B36DBAB73D08985749FD3B0F0C32108EF87
-BE0C8DA94598691F774407E4D36D336BC9883D0FBB46C8D8F786780BC5EACB9A
-0875E368521C0D91FEFF40A3E10837B4D590E004A9E766ED62BB3DD2E2AF78CC
-29F6C250577DF1B0AD91FFC3E1EA731CF4249F91143B7224DC344849D03139B1
-D53B4AD7FF13D2A79C2C38E0D09590B499936C87E9D0D71B2B06D74B7A1D388B
-5A56C9FF8C4D4EC2F469549C5E2F62303BFFAC463C9C30FF7F2B77E7671C5CDF
-EE067A2E64F5A763104D3EA3320E15C45999E0A4D002EE072875ADAC6F228DFE
-893664E7C2CCD757F6DFB1ACAA9F5922492B573B6536B34F3B931B8C1C761E00
-BDEF6A0D88FB24D30FF643DE610795E1730133715D14FDCA813C62188C66D7D1
-2CE172CFC1203106790E648D9A19213A88589F54603BE7A45DD5AFD1BECB8C59
-A9F476D3D6856884E41B17FB36AA81CB3DE0F664F06B5C8BC3FD00F170165DF4
-889A551DAF6B144FCB5EC9D9A64C261A7BFFB3FF437B2C44E06EC1D1D83451AB
-97BBD3AD1A2D1032BD4E945842F0C8A23866E08FF7DEC3675C07595EC2307447
-3CE67B718147E3D776CDFF0685A731C4F0BCA79545E43068CFCC09A82A5DCC8C
-606574A06D7DF8359C48409FE7BE5CDE96693BF7C2E3D4639862BEC53B7F923E
-2836D719FF300DB7BEDB63B8149568A399DF4275649C7AB9BCD283495FFC6780
-3CC50EC4E1151DA66D84C9F307610E4F730DAF2F2DF8F8E439972ED85601FDB6
-2782E8BD391CC137B1D312EC502600FC4AEBEB3E438FFAA650E3F1F6C25588D5
-36450EFEFE7F3E6CC4CD5FFAE2F3CEDD1559688B4DCCAE69CD2A847B1CC974F7
-6C568DF48D75D0D11864E5ADE1D20B7E4585C4321128B78F7BE81CC38F950CA1
-162F144299376A02E01B4E04080EDF9711500FB1A1CBE15332A077D520F2DB73
-5B47B5E59B33994208A8B682B0C3A48A8D1E9CA8676EDE942E6130A33DDD190A
-BCB3204E45FBD8481CC715AF34A75DE6BA280CFE20A0EE7E1A01F06D7C77CE6B
-895327E48DCC3268E195050B3E81E4410A4A62FA96E8C92A9190B64464B7D104
-2AFB0E928C533C47F423C6E41B2B6CA3F0F6BD56955DC422CCA330A232066BF7
-1C09643DC9D0A688023BF4933D7BE3266539A2A7E1E51F96A583D8E7CAD7C192
-36CC8514A6B341DBFA654CD1E3866BAAED9024B8D4C9AFC0805138DD44D68D62
-27D0CCC6D97413117CEEF0499C9E1D820D93A614D5A158FFEF907AF77FB23E1B
-9881AB2CE9037AAB8558683DDE74FD02593BD0A59E1D9F11ED12B34C0E15836A
-6F063CB303679A49D028C52CE197F69A620E4054441ADCCE4C1B2D4ACD25F8BC
-B8D20F29E18C74F789750764CB16C741D4239CDAAA659F69B3219AB6A537BD2B
-C0EC072CD7070960633C7EA0214098B92C469ED2E6E2D0467F292A7576279E04
-9ADD778FE4D73CB746DDDFD809DD4C2A40653FD3B7643C87DD94CA2BB16003D1
-5ADCF434E15BD8F9506F64F68F17EDF5F24C719A8B84B3CDCEF3ED3F8E25C75B
-2D9D56BC22C5FF4C2A6FC16A1DF3228E32F2B62FA250CCA81C4513E8968B1C2D
-242415A38B1BE1BD30904A5DCFFFFF3577501AE02EA02DA6CE507732008080C7
-8C427E4C252CF2D7CFC476A734654458B182E44DE3DD178761B278E4662A2D7D
-7D287DE451DE57F219B3B872C7C07948C25FEDD32A3813D1C8C47AEA450E0DC6
-3A179A44C384AD922AD1E8DA4DF9AEE5FB1C3E7D88248702670687F7E9CFB36F
-A8F6A6F66B7FCAA56F52E47B7DD596A86CDE4F302ED174F13FDBCF81EF5DD164
-91C9F2E77B1FE04F904A98F7BC72CF4DF640D57B1E20460301D0B62575692453
-27038F9EFD54BF477CECCC8DA952826C7858E8DDC9AB99D68D39F7EF3FFAAFE6
-EDCA0C5AD947C49D081B86A9E8D599E4AA1F29F9A5E12729EA9C8B30D168C8DC
-770959A26A93B77BFE36E7B97F37B0F1DA44A560B0A8DD2815D792F53349D73B
-B0436F5C2C1E9DCE30516D78945CF14AD2E006C6F5143C4A290EAC550F0A356B
-E6C348DEA586569912BF890CF73E5E2E3B6F31244CCAE55EA1169676A9AFA1B3
-D28FEB69F21D1FB36276552FF8F5119A7D7DDE2BB0F050F9AD7730713674E97C
-072B31C82D87E636C2819271DF0192C54CA34AEFEC6E3D7F59044869C7C27475
-90CA1490EFFD86A04781A5197DEBBE90BA3E4D9650E9ED3DA8B3D61371141BF4
-AE162139FE195FAB276299FC72496CA55F56323E47C00623021CE7EBB72F5BF0
-9CFCF5AB81B6873996D75DAF2BE4FDAE42A6C289E03D1D64CD8376433E9D2582
-7CB2CCCF4A6D1FAE25EEEEB25C568AEDFE24C3A6A57B1D6556C832DF6CCEED62
-9E913D086F01E175A76A0CF1DBB354826553B27C8433BA50FD295B8B7CB93B13
-91E0E8F33CB9D72DBEE55542C62E32E2EA89BBC3605B91AC2A7BBCADD0AC2F00
-2C623690C4915364E7BC42C98C1EE89DFA5DB1E9A335BE485F96D92A848E9F10
-89BBAF93A8E72D348FFA253BD462B72B758BDB662F4E15812A4C483B640BAD7A
-8CD2629F86FD17FF5747F0CE48858AB5CB6C58EF16229D5C89D5E90517CCF7FB
-B57BE70961108A92685EF820D772BCCE4080F4A4DAB3F3764D74004F20049CB2
-17C72F41938E9013DA041A36FC5D81ABC8C471ED2E99A1A1D6BC6E81E7576F4E
-E17E9A7972C98F04DECC1E06852A0BD94A47915FA2568956B452F41062D65FBE
-27E5F48DB02DED360369D8DDA6BB5D84467F95CD27D3042905A06644A9271C6B
-6069539FB9E381CF5CF253186228D4F534D3BA1B51994762630F09BFC03B3C3E
-26FB2B18E271BB7E446A1C6F1AE51E589BD103B43617B6098829DD7E5797CF19
-8E3B0F301B2962F17E6C9847F9DF9A3C6ACE96AED712A4A1BFECC614C008E495
-3DD983BBEFB2AC681B61AE3D35108D69FE45A058CA246CD4C278AC6ADAF97AF1
-E71673F9CD8792155124F3E0886811B8FFBB9521AAB27436783643CD3445599E
-4E05811C063E64A0319693AD31194A72AA14DE7887AACE76B5B79639FFA6B2BA
-3EE708EF87537D04522C2508E457478DF29A5FA639906F6712869F8A7F2FB909
-A6F86722E5C2A53932B8494F88B4AA346E5319667AC6B70F3C41E6275BAB9A8A
-F7197FFC71B8E00DAF27B784F6958DF7346D49A1CFC43BC041B3834E6377D3D0
-F4A5CA68EEA2769626A006C47B869D2B92C4137265C07BE5C6D9E8CB8A489609
-52482A139C5D1C72D5BB08345799F1D13A232623C9834901B95FCABD7677E198
-13D8AA82574FF22B68C1E47D22A8F6ED06E3C372A108DB2BD20A3E2112F447C9
-C948E0E053BD36116F0C79989B27D82D5117BF48412C2305124AD94CBDDDA5DE
-8BC10CA15DEB62E0E8799B16C8C7E3194681D462D591847BC15A4A2CFF981950
-3C97C031DEE6104907479B3B4C8CB3037376D6D00786E54F63D19E02AB3A6331
-3EECF0FBA366A61A7B68DD53D24E331A9590206D9E23B64C1645A3A7A5792D40
-70000B430C1E25C85F05DBDD502D0293BA3AE9AC0EDD494087DB5CBD3E0B2C48
-3BF4FD5E8D95CD6A1E707574AB3BACA6AFBD8DAE27ACA904FDB334A9573CF3D9
-1ED5F66F4B96E8FA8551BA6509B3E52DD718CBE7C190DE5EDE513D685D4BFE0C
-85E18A5699FB9B359E7ADF5F65B28ABF8D4BB095B9A2549409CF607CB2B9BE56
-CD37BC0B909F493DBE1BB95ECA87BA37154CF67405F6E25C28A183545F26AEF7
-96D75AC79E4694D4F67A22EDEDA7B8A24E0D6BDD2DF4BD5E2BA3602308503AEA
-28115B77E3025710FE88C441BBB0F09D8F6808F59B13B4EFF54C4625875B7292
-A8C7E43407D31C15471DD41AEA02C0D39F73C7142858342720F40D18CE901B24
-CA0A530B7E9A488BCA947CE70040FDCB3EADDBE2A8039927613927249287216D
-2E5B1CB2BB6E6A917A9C5DB5186B6AC77383B360C349DD1797A070FA5022E18D
-EC6099E2C76FC6C14518AA866E37D6A05F6B164DB5289973A4AB9FFE11FD48F6
-531E5D841B0F43D110BFE88D06D9774D944B8F07B3DDE66FD9AFEC8405889FC1
-B0D18BE78E554227EF73BD53E20353221E75D035CD1642E497932F736AF7CBB6
-71C094AA316C1488008B3A459B56E466C2C6B9E7A05B9E0BC438605D7CD8D883
-28C6D87F000E0ACA3D7484848584D55D60377BF3D6C02485B08B6D0F8998DA5B
-EB9AFF49D304731CFE336B17C268DF694B5FC6B99D03CCA8C7915C78E6BE01C7
-324F5E4CEF5CC6F279E846666D2EBB052FBDD15F0849EC9E35D3F32A58AF87EF
-7C6FCC7CE42C2F4E1654278AA7893FB455FD727EF6EA9A7B37F7F9BDA17906A8
-C6BD0588D0AB6932531980DEFD016725AA5C65F0CF127B1B965B3E1E6C5FFB86
-D8B5639369EFDF32CD7E547AB383F9AAFE30935CD4635671450F538ABBC457F3
-2390D28E8208A66CC46F04AC44BF3DB7CBD94638119E5B68AAD689A51B454240
-A85EDAA394DDCC4B0984104CF71ED8432BEF69CD862893BC4BB9451D145ACB59
-6DEFFB3551F8D067760EAB1505D443685B10B4A956ED200770E1E1D4ECE6743E
-8C26B70C9DA49836C35F469F9C7D8D84BAF741B671CE6F0E5A3EB017FEE30E4D
-B5524CAEBF2BAD987F4B290901D18F2F161BA5B3618371A6C868C959B2BD579A
-22650599481CE05481F6BE5D44D88F8BF0930352194D4750F33D78CE18E25E23
-FF68409C8490F178872BFB6EB3E3DB658CE5CBC41841BD57806BC959A06192C0
-D722C50E5BC87A595BD38404E5454CF9063FC6C757576EA0E47949F7C160C9FF
-8E89C687E711204BA3855B7056616E31EAA6414205853F7EEB9171C0D57BF449
-6EB9A52AE09088C5AD3BCAFDC49B4C922625599E97A88CB1FD6C5D3EE390D872
-EF6F0852A19BEFDFE8699DAE598CBA83ED71BDF8ACDB7DCE67A2F512B8A2F891
-80E5962373CC39A50AC13A99E765FD6F5C7BF7ECAA4AB8A0A2837E4EEA7F6781
-FEAB66191F472F0552782C1CE5D058F8AC80E242E443E084E7BFB0E3063A391B
-D4F256883DD600AFD75210D6AB126857D2794B4B20A303571E8FBA672BF78617
-F598256A9A74C06E420CF03AB9F93BC569F6B53736A32D712692396E3D05B7CB
-D604C5E77F1D996AD7E5FD58831FB56CF74904D2C502AB61888D497A67871043
-E67680FFA11CA19668280E8318969BC0D79C9D4BA43BE7B2523B22938E33247F
-23B0C9A7D3B14DCADC575DFEB95EB33B95E9801A236E82A8AA7EED0A2C9DC58C
-DAA4A7A40A1967713983AC17055B310E4720B34DA6D4097264CB4A6E65DA5F72
-1DF86D980BEDE79B702DDC3E600E966210F711E747B22C9C9BDA17F6EC4E9C24
-7982AEB524484C9A2D33E4DD8D7CEAA4CBDE41445FA9968C78343A6D85627359
-94BD1CEEA272964682FE4783A590D8BF311925F76FF21D6C4F181E254D46FDB9
-586F664560D3474A39BE0044ECD5E069B97CC19EC81118B6845EC92D167A0117
-84E5213875025198BD7065B0160239A20735A2D993684ADAFE681C096B28DE5F
-6915B01D680C091A7A2F6B6EACB8B1930385DAB37E7B10E10030D8C1037827BA
-99215103EFB40DF5748762823D7A006A10FC7E3247A9C80C5AF60387DD6E78A6
-288FEFFFCC7FE7E0E164B7E83D10292CCC22DA046600E9D64624D7825D9317B2
-E53FF8D6A23177DCE71242540D4A3B2D522A402E464B78B856EB040D0AAC5E5C
-5253777D4FBDCB87B70DC83E7C6D03D9374A19B5A234BB225CCC905DE3DFBB96
-48A8A0CBBF6381026897C53837A79B3BD921FFF51FCC20F6FDB005BF4F9B707A
-D0F4D97311EBF32F746AF9641AC06F8A858209EC9294AB9EDFF667FF9341F3E0
-E70B6BF2A7326DB1D78527D30C040C8F8FD582183A937021BAAFAFB493829E49
-A381C62843B4E058EAD501971684555C8D0266CF5271A919238CED1B967D7FEC
-BF62D634F01960DA58503433F0264EA735D9BB9B5236A0E2AC257B0B9F87D424
-17C8E51AD1D0F180CBCCE2D25FB2DB840F13E95B589E2ACE8D28DEE5FBF906D3
-A91357986244140CC4C01D0FC5BB7D74D01E28C1C230927194257DD387AAB4B2
-F4AD3443F07E9AC489FBA01A4B71EA0AE60D578FF7E5D6DFFC11F704A5B24ED0
-8415507E53F4ABA42EDF5A75E74976115F48D42DC59FDB47B7E5C3C84D07C221
-9B3D804A3B987B85B88AD29C86B3AA6DE4137F8B0E403FE0E0483A873071EBD0
-A9951B3DE925AC92E57939FE4CE0BE11DA975A8DF214E53CDDCBA5E9E8911EBB
-B11CA565493EC47B74B2EB88396CCA83433CEBFE8683A72ADC56EE3F0434B948
-86D8C9D149DF468FB602C3C61210B20F904C2016F7E9224536468B34E00A9C7C
-0EC3FC06075E5D8472761E935F83A5E0D35D7BC8748ECCA928A9F10AAD8B4BAC
-AE006BA206462352C6E1C3EC96D7FFF2425A73976E3954BFD43018F97C58F013
-1199DAD9E97021E026955E8E1C6CFDCC641007032631113BD07996623EB31685
-4963BDCF8C324D7A5FDC85E54B4CBCAE58D82F08B6ABF76AD6D3A85917118099
-E0FEE836292EB04F89259B12F92881A9E2664609BAC293E43FD0554E0D0C1959
-C53120573628D96FDDDFC7164CC014BD753C8318D20550A14C8D7B0DAFA9E24E
-94DAFDD818407AB99EEF38F1AA32323404FB6EE025C4C1DA4E6441BFDA568A2C
-96FA853B52F0A0F42BB5047D9AEB4221EFF4D016C17C52ADFF34495DC648770B
-F929820673FD4AFA144B077D0E6FDD5FBE3CED5E873474244988A065B66745E6
-ADD5AE225FA11766E0FC6650F0643DB7788A9FB8DEE0DC9E1636046B5DD23AF1
-3B9A9C0FC4A956DFAD610EC24ADA15E5D8A27FC0F2B6B3CA37962EACBCFF5488
-6F89E9AA065F71EFB0F8F445B777F10CAD08EBE6CF3AEEDA0A9C434BC4D66C6D
-FBF410B1522C7F40E6F44B5F4CD5C4E3A391C7947C9E2CE6B79EE0A640FD9826
-484EA383A96339A15AFA274700425559A2A185CB0FB31CEA643513D898FF681B
-85BF1910887B4EBE8BC4B8B0C1E298FADCD5C79E19F1607DBD8DDC10C2147533
-425093D1CF3858DEA8C29F3B551AA10E86F5CA78C24D9DC2FEAF0CEF9A6B52CE
-A4031CE32323765A01755D375CC665FFC65D6327A7147417B8DB659D76C3D1F4
-A6084EE40D9A0BA85A7CF164AF3DCFF32AADFC1D7F4962484B0CB57431B5DC14
-0F907A5F582D325023B65EDA9AD1C5FEE939D24196218BAE0B2FC16830282E19
-2BE9B8B64DA766E087DE77010BDA7D31EDE219C0E252A5E2724FE786C3BE4AB8
-E48EFC6047C2B133ADBE43E82B57F0640FF5DAAADC39A30FC98D3CB62020BFAD
-05545B25851322FBEFB027B1FA4C4CAB2BB4B52E001724460CC0C359F9737A31
-1C9253EAFC50DF77B6F3C9C251ED271AE30CC51CC479BE5DE2D6290F8DB508D1
-E92E80DE84FA2BD7B21D3504502F9F64B63388D5120C8851AAEE7FE878482D57
-461E0CA6D2E694948CFDDBCCA5C1451C0E5DDBDCBF5DAADE4101561A983BEDCF
-6BF9E92F8941C5890CB026850C1588AD1938185F1DEE52D54D5BE98BA4C62782
-FA273E9FBE8B6B15B99C0C9824C4A4F82A24DB38BCDD2F09288D68D6A6588BAE
-D66378287202D4B40CEB5C230765C6A3F5BF0979801937F7C85766A0AB8B4F08
-3CEDE7401BD3F4C041C5A5F23B755F68C67EAD6A8401F96AE9D0D4CC5164F59D
-EAF9044AE89B1864AD6792A34BF3F791E06549FABCBE386A158F5A2BB5B808D1
-E0DE5172FE5E8AC13195D474E67818FDC9E7257DF85702616C0AE0E4E60590A4
-A75DF1ACF5F07C298BD3A676A15FF2A64742568A9CCFF589ED8CC2121633B0B2
-9067BAC92D6F69D94904F00A413F524B9DFD59F05711B396BABA68178A3E8D01
-7368F3D3C8A694B5B30B67DDEDEDC62F92C0D53C04516AAD0B51EBE3AF5BF2CA
-11C4DEDBD1E9FE0E65E11B73863967A4FF7FCC6C805A5AB76F3B8C0D7687EE34
-8E0573514D99E5E5FD2FE200E99AFA016421485BC2835BE20121EA9426BDFE04
-DC57E62AC2FFED33C6A6D75A6A5CDFD69BFA0185D2F45E0A5BBC3EDE2C6ACB80
-4C9536DE1D4297B5D18C965EB2E513AAADAC9F56BA5D7456C9C557E21201FE55
-60DAB1D95F9AF5D7D123A50706761F6F4E0FA550CE6C67FC6DB317D037A508B8
-23648D896B485F3B1D0C21299E99AC2D54A279A959270024BCCF547455750888
-CFE3F656AFCA7817A2A86115C807D7AD8455772D62C8975D09663901691A5EF7
-CBC370191EB4945FE3BCFAD6F6E5094ED6C544F720406E7E30892656BCA1F589
-B7BFB3402A10CD20671DF4824222E405FA06F72DA04A475C869F2907B7497C4E
-1C0879145DC7E0AC8413B23CA86BCE45C225748465F03D4628708ACC998C1BB5
-ED5962F199A94FDB5768A8DDDAC5BC5DBCED6A7849D9097E6602EDC167812A98
-BADB3063B34C7A1D8202EC31DBF15477C73283958F3A0C5E947D84BA220A54CC
-7E3600EA6C15D9ACA14F1C4CAE13FB4A126C67801AC73AD4958A3CBBA7030C01
-2DBC955150F4247A6F82D061D8D3D7A77F3645BC597B16D0C08AAB3AAA12BBFB
-CADA03B79492676550934B0A5F491D407EF0D3DFDD12327A35BE575B12763352
-4E5C3171406350CB2E77F72C1BF871F1E65954A19A5BD59757942DB2C1014E12
-FB86F381FB40978404A2E05896093B000800C0FF8436C84F3AA47E80322E9E46
-89300072A5EC1FF1FBB85A9CC559A58F0219D7D7A40F9F93B0A0F62B31299F7F
-6C1EF2CDA9DBAB5F82E14EB2E4C286A8B15DEFC4CBB85926CF5EE3A7655B9CA4
-744FBB0EB5EC121722886F942DCCDBA5432CFA52BF760352A9DC228E6EEEB359
-E32A03072BDE96D8504EE3A1E74E2623CC0E8F930CE82A6A17ED091B4E9F3966
-F9082F6010B20E22E9016B0659EAE874B03E0521BD0B22810B2F447B8868AF10
-F4352DA9A3CBDAA1D36350E172B774720BA0C018801309AED630564CEF742E80
-F8475A0CC1DDC16FD131C7F3021D70F47B5AD9060625B29E4FB610C3BEAB90A2
-290016C6D048114093613F9BEA595DF4BDAA2B8ADCB510A72F0E92CEC708A79F
-093BD179C6478BA462B62A31BF9E8D0991ACDCC144FDFFD440C62168707C6E69
-1A4D410BD213D45532ED4E3AF0359A49AD90DFA148C8AAAE58935EF481769D1D
-2773E93E4333DFF0672105E768D0870A027C129212CF9D780024C75F237CFB5E
-C765E6AC6279BB5FC9D436F7F328F85D6925F825A96F601259AEC22BF5EF10BE
-D524C90F3D5B3C74396CECEE20FA22F4D5AAE8ED4624DD1678A05DC8B21C0FF3
-9BACDB7CF12A45D7D2FA8A13EDE7FBA91DC7DC770E56C7CB864D43CF01543F45
-F586BFB542B22944AB25D731CB4C56BA9ADFF295F50A18717CB682E547ED8FA2
-3D533B5B371F089189572755F5A01AAAE6D3FEAA723195ECC0C069FCEBC750FF
-AD34DCB8DA37C92BE80252D8B8A506C1B5ABF3C47E75A8E58A672E398718076C
-FDB2F75F6723A762FD3DA0D1BBE6ED287FB5B0C6CF877C6DA06759B0718045EC
-6080920A2030ED955A71DA3BB874EE58B69AD9919F7885FDB4CAB1DC001DD665
-F01A562B146E56E0A0270D634D9E3CAA9A11B19163A99D286095A6AD809F25CB
-64913FB20266BAD050EF759CDEFFEFAC30A8FD0D4A3E9CB280F6AD012CB348B4
-09AA0CD23750C2C9F7AD23D5DDD514DA96D63ABC3F2E073B64561BA02B8DFD46
-6CB1A691B18370A6ED126233DBC4DCA6C81B455543BD707EF9D6B960765E3ED3
-A8912C207B1F4B76B22CECF203FE5756F8E613316776687A1B2C9AE9BDBFDF7A
-8A6AE77368F6E1C1591D07307ADBFD680165B2016C180D063F9A0612B5D1A914
-6D44D00620F06CBFADFF7FEE004AD00DDA1BB5C299BE9A6016B87D7324077A72
-5D176F4D024FE46308F0A45FE917E2E387635A8A1AD20041745E7DCD7E2F7314
-EF96142758CD4486AC3CD516917B7A6D53050650FE39D0EB0BB07493A4C1773A
-7AAA2FFB92EF05411F7989071E752ABA3806D8C89FF04CE537DAEC5D156B619C
-F01278070941EA7B4DDB11367BB5658FB8DA26B02BB41644FC3204F286987256
-83013544C5ABA11A0C0D6CC2BF268B4A606C321BF1A16C2D125EDB73F00F9E29
-8B3BB482BB62DCC0127B7D3B1F978FB1D172DA3EF0453243B0E67EF48AD4DB84
-BDB1BDB9CD752B76B601BFBA81C8F868BF2F7EF4FAF1C9CB5F410F5031CA8A72
-53B5654189EC484C69624D013B0873F4DE118088581BD133DA02CAACB6634959
-6FA9B9D491BCA7AD51003523945170B2E64CF903DA6F10E8A85DE4E9E2478B9D
-E473A5E9CB0AAC3754A3972C52A3833DA7EB7ED200C9F02AA109D20419534B31
-9C929D78239285C590029052BEE1CA289893CB3DC1F49DC0101316188C1DB0C7
-1BBFC04FAE0BB6829E67E8E1DBCDD71AB69E4B9A16BD8A76B696B5CA6772133C
-00F32E0CFC02553AEB9AB020822602693C0712256A1A1A77BDBA2C4D27819034
-5770C08C182BC28BB50F177A14CA722EDEEA74CA7AB052E05B1743EFDDC0412B
-E5B114D19A9BB159D65452AF62A986E2EC6C02AAAAFC22C7CB8322A597E967B3
-4F9F25791BBF622D81FC25F7ACA0C21B882E857520EC45408020F8B7CC84B383
-2E7E8252C4A2E605D3279854F4B234473F86E859B59885219182B165B4BE71F1
-62B8FE89EE84D0C67E5608FF13D1DF4A1C7E4932463EB52AB14B0F791CC5E9F5
-E7566B48AF01177AE5A97F43E1D9CAEBB84D15F40618BC14CBE056225060A42D
-9BCB36A6E4AB567E41FE6D99245BDF931E9AA819CABC224E8B94D9F24DA95973
-3702A9D78B00AB41E5E2EBE2765AE1A2233A08EA6B795DC6DDBF0E5BCC0BC0F0
-EEF78760C3BB3B66936D74BA33BFE63F72DC5B14BBB0F899EBBE4F8614FADA4E
-26A12088CA3A7B0E6EFD496CA7B5395A59E27594EACD67A74339C39F2E7D3524
-B0B4907AE836B1A62831EA329DFD8FB498FB960E23C7735165D75C50D499C4D9
-F1460B2E3078A257827BE42E99F1BF3DB9696906E36BECBC21CA9403118BBC25
-E1E41431E92BD7F40D3EA271BFB74D25909155C60AD3A7C5AFF5DB16AB60C907
-7FF407EE593FB3ED2D7C82791934893A0A382C943995C10941A4F57818B0FA37
-94F1D12BC888B668ABD18640DA55CE3AE0C07B11C545B02C79938CD01CE6685E
-A1D82862F6973E1AA906E0EBEA21BC5784716F79CD807A0AB4375DB46CBC22FF
-03CEF91E01F794B548A817C626B0B7F5A510700931FDAF466136460A8ABD7E35
-58D5113BDE7030BA6FABD3CEFC98C07E4E56214170B6B58C2B92D410EB7A049F
-A0027095A87C13F84F9D1B789628ECC22611535A23787B3118BC413AA46FF8BC
-2378CF05B2886237F22409C4FD5FC3BC8FC0D247FAFD3F73DD37F62A92EBC32E
-CD6C3F9D09CDCB3B455DD9905962A808B2ACBF86EFC1B77BD668B6562266607F
-F84C42D7C3BB8224E20618D4FC975CFBC61230B85865CCC59C7F7A7A46DDD97D
-A4D76FAA3F4EEAA36FD20430C153A633AF5ECEE95CAE75D3C4A0AE7AA2E91DAE
-6FAE64A1585B6906E0F51D8FB108F425882A033464895E879631D70694D4080E
-EF0AC2337DE4DB985D1A66A9716387EE1605F1848A2E2C71F09159C13CD2D9E7
-56C43A3DA0BFEFB8ED79E897F297B11920DBC344941749293958C56278E16754
-A45F267B2421183F7499C8983A6C5A8075EE9B820C2410E29BD160F6C00078D5
-C57D0198325AAF84EA41FD60BE2CF64566DC31B50420669DB80F9EB84D9FA360
-045509F2726CA70F8F8A18BF2F02AF5D4B2E27180FFC326909F3596E5C5271AD
-22BA29D31D37175E3A8983E560AE31E3210B0A87B6B8432152F396825A2ECDDB
-969544A94C3EAEB537EA22F8D02BC113133C561CD552946C398E4C37B12A33CA
-803AB7A78F848B11BEC667E28E72963011287E34A58A963CB4E73054BB88032A
-65265C86BDA8E879CCE3D48BDDBDBC7098DE7756EBF98F2363DAD31A4DA2A12D
-A81C0CC381A6FB4CF4B46CD904DD543689B6AAC6720AF3A851AF9AA4E7C0F166
-8A3864F51DD2F5670C45023B5D330757A71C90E22BCB8651EC73A7FAA2721A8B
-92D26022B2C0297F04E90EB871D7AB7BD236CD1FCD25D48FCA2F8073CBB233ED
-EB6244F2C7E4EB68590795EC2F8E5D8D02FD827460718EAE728E773D9F3EDF14
-7EE7BE7ED28BBF203568F778F70888E6805044EA720F47A7B4E963C62F4F465C
-76EEB76BC36D165A70DA25A9AB083F9446D8BC197E400706016A12EF34CEA55F
-9D63D9620F6FC71CEED862683B2F01F9E0CD353CE5D95A6B4E07469433717DA0
-F179C3A6B4DA0A7A9CFD05BFB6C7814A9B66D4376DA678D4A391DE59690C0215
-19DD54B38A7B7F046EDC03A7092C6B9913FDC1C3E23C785F6A755DC9476E9125
-DB971B22C4D4CCF0C23A93ED8798A3D5260A5C206B5CF4F4A9471FCB6C925A65
-1A610E5F6CE6A8ABFA5497E76BB5B2FD852627C64A12FA088045039C37946EE7
-494CFBE9613A15827FDDD365DB6E0CB24B528DE8BFE5D804FDC47A9BEAA07421
-8E48EB0119A67946992405F2F7834B19EB802A7FFD94612C9E66F56F9455DF6F
-06D1108DEBC8EC112D608EC57D3F7023781A70A34E826C349B934665E6B3A77F
-3D610B3E9876392A43F5CFF2FD3CB5B9C1BBA338C764512418B9B0738B55990B
-0F633141C2E4E79D4F3AAE449AED503D376EA16343F55419D48E812F7E4F1F52
-519F4B923C1382E5084D0B185D1249EC6206D1648A35B17F8EF45A3328BFC6DD
-2D8EC3994EFAC71D8C5413543A3CDD3656EEC958799AC24DF9C3DCD59409D215
-39786030FADBCE8B9D90AE1B9A9B9674F50384052998E9A5258C382E3A4F29D6
-A1A251890CF5BFD1C7438525CB38C600AB59D6E2C27203A25238F741C61E954A
-B25A33D747CA6C00CBF5AED2D8FFF33DFEDC3CD717FCCE69865252EFD6B17ED1
-344533B87F933F3AEBD58364047CAF7DBF95DDEE6133D009D10D6E402AAC8494
-3DA2C3BD728272EC1CFF3397A20B217141DEDEEEC34F178AEE64D457FFCBE41C
-AEFD8FD08A3B1E9F7CEFB2D60717407BC472ABAED13B8FC42A702A14C4042E0D
-FEA2E3343169845E02356B6286BCC4772275B033D105B4FDE6651D7B2CDA05D6
-62F7C17BCB390205A0EE730A146DE3FBDED3C1ED9A01CACF9341582BA552F758
-4E38CC004A94AF909859E4E40B81067E3622034248D1477267D19350E5E56243
-E31E69A878D41845DF38B9B9429F58E13EBA1215D2AAC277A801667300140156
-0F1AE36E437E4AFD755518688DB56F51A998749B5F50FE5A5265D659B164766B
-CE9AD79E5BC01C8DDA3562E988648CEDC78F95BEE4CC95F5E387F1D41B1EE495
-8C477265138359138022BE90D007E03261524F741FC1D53C224CFB4EB090BBA2
-AB1E1F22B39BB4F3088CEC582DF10F267CCBE6B2C0FA16453965BF9A04DC454F
-548F744F5C2E7328CA2A005561DFC19F2ABE6141C96A74F99820DE87B06F6135
-F16BF169C41F1E1496E10B4AC47B7A045C8D4FA164C5FD8FE86821785372D177
-427D628FF391F13125C2C714274E595B4EE6CBD53278E0DC5E6E0073BB2211D6
-671240041CD12443B683098F666EBE4C61D648F8B6AD2BC361136AC9FA7B1868
-CF3F5A24C6A5AA1FB2CDD2E3F7A0F2D50C235ABAA9E6F4E1A7084AE328CEEE01
-B698AB0DE731A8E7CB1F9AD9B2BEA94F79A5C2DE587C394A8F5CBB5ED7B20653
-02F978EB0A5F6BAF1683EED4CD35036DC43BCF4F124DD07DCE3D76C75C95D758
-5634E03C6C367549CF51ACA9DF68966B38EC2B19ACDD381B1D66BAD5FE899A85
-594081D43574F92D2FA71B96F59E69018B02FAC6511BA8F0F8C727FF023D3803
-474EC2023D0F9DAEAFF4BF17483CDCD2C48FBE9FAD0F48789846911C6779A481
-FFBD8074568DD1B1084365F88695B9956639F38BDDBDC3103EF19C3FC0053F18
-EB179042215E7B09FF4773D5C56AA8CE4B46860DFFC7BEDAB48C001FB9F20749
-6BE32B9C4A83E6838F32475034C09D7351F08E97760494B4C39B9BBE31859E8C
-77FB4E70BFE87E14C5D471DA9D3F5D4134615B1620EDC80A5494191237801B14
-0F866977D48B5C8AB9E71EA6161CE4DCBE65FE7078137568EB63164A0141CD3E
-7432852F0CBF1B4A2A9D3FFC03E9D310BC2DA4AD6C8A957254B76F1A32C3DE5F
-C9F297C301297304284F9D5E0B1C42AE850660D86A3A808845F6FD3DA6A7EB68
-54B571F078B7A63AE4A3695F9CB247D4DDF7921A48573D0977F17AE74DDF4214
-6EF545E53B5D9E04FD92F0B0F816CC85F9C9A987E2812B8CA402BBA64B259AA9
-A66C05382D696C42432B591B54E94128513E39F1758F4215CDED5C7F5DC100AB
-16C35A213C7F1C83E429BD0143178516D5A77E3CFD0400CDBCA7CAF1854C2CFE
-495A2D12E7BAD84D7D5088AC5B8E9D830A7D6129DFF9B1B6D82064C122B613CE
-4BAEE07A2A119AA496625517002C82391B38DD6E2B494E9381FD69FD90516D26
-512589EA62F1EDE7329705BA58C67A882D8788D481A5CFE3F56DDC27094E1DEA
-F65EBCEF92D4A24002D8BEBB38B258D2B483DDB994D7AFEC0A79160B27A887D3
-50FD6DDE0AAFE2CDC07E95FA975656AF0C1771AB7204CCD49C97A142C3303317
-A7915465EB8E52E3158120D9E62E7CB5F0C73D6DE8CB8348CB132DFDCF45FF08
-2D5DC1FBE95C988C90DB8497C3737D1E4680AFD5CA2CC98139583F6A07836DD6
-382B84D038C33124CFBDF80DC1CBD1BFF5BEC8F82F027F4F41E19A0B222B4DF7
-2DB96842A001074E5703AE78792BE8CF1759F3AD4785D68D884460EAD63886C8
-CBB32CE7417DC6482B7694874140728E9211FE130ED7AD5C1FFE481E76A7BEC8
-6D8F82C0A13B89EDDC15D719BBC481ADF1AA24A4052018799BC08D26B62B21F8
-3F4D37CBE73AAF9112895317E4E3D39865F683997ACED55E866729066D351C4D
-6306D05333785D2C737FFB560BA4146B13D03F01B1EA45059B8891624EBF7F66
-BE574A7712C9E9CCF3CDCA645F07D74E194D3209E7F4ED938BB378E5FDEC9FE7
-05398DBD8EE62434A4E57266D554395F8749A1A12AC33D0E70B8F93F56A41630
-D5F0C387207D16B5FB04AE79578959416D53736319008C76BF6BC13EFDF0DF0B
-D088706A73843497EFD4DA15059814F5AA43EBEE5D0646A28654E1695F8958AE
-F13209ED4EFF6F14F51DF927BB713774E61CF74E638D6442FD59F6BCFB7062D0
-5986C27671428E45ACDDB6C1A06E8C90F4CDFFBE60A7115351356C5B4772ED0A
-8427F065D3E86BBD9DF604190F15325632FB03D1369DF2442C3F60E80CAAC7F7
-76ED39BDC600791D956694419242018831F607239610CFA7EDD2669BCC66DBD0
-7968732B94C613230264C67D42D18B4F1F33608DC9CCB3D3E22620FADEEDCBA3
-49E6898235E7E6C0FE05910834C2A9C48E181F73EC7B016DB43FEDB7C81DC72B
-E73F7F6C07518D9C5CE6ED62D94CDDDB6B49EE05860480625E63E1B212F60BE2
-8D9D5A371BD0D3DA1F23BB59674510D0D1252F70330F964345F63683615CB959
-6AF85AB38B389E75A402B41AC02397DB6563E5789F07B1A1D6834C796A9884E7
-4A23CF00041C4A307CBED62CC5B56187A237007DB3C9A4E84E4BBD097B776EAF
-854B977DB99888F2AA7ACA75291FDF4D36DFEFB4E3D8395CD7E15FA4F2F0D949
-498352685B5B744D667CFAE48D2F865C67354A8BD4D808D72B07C0771E95E000
-3D648274AB79350D70A4D046AA5DC76686C82719F3688667B57C1912F6CC6066
-88FA20D211F3BCD27653626F3C3FADFC10DE826CC1812F61020E3E85C284FAA5
-142369B6D225D322A075DE50BE48C3686CF72E9839B0105815196E197D9FD183
-B3BCD30D53C8D8B8A5002E56B7B5B768CEF6DAC28ABDDBA13B2415E4C3619F39
-A841B058700CD22F4F058EE7DA3681D16C129BB3D4B876E702C0FB1DBC053E33
-564183AEDAC340519E7983D2C074C12448AE5C9D50C2FB1F6353EBDDC099C567
-B2902DB6B7C05D5529A7B7B8F89AB0B83B7BF1D8A9139D6F191100FF23C86373
-F9E06C0CD0AED60A2CADB1BECAC35C0E37F938394E3C83DB71023EF8301965CD
-327D4C9A236703C05F7496DDAAA01B0745D5368FF6137F1C51F5AE0579715E0F
-56AFD7BAF3887D05769E6C0E5E5B962354D939802E7CB3129B2A1B9F86EADE5B
-216A148911C4BE95FD0F5BA036748FFE9F810116BACAF70E9B571E061165F49B
-74E068D5329E920B325D42552FED5126EC257A964130E56C9503A7EACC531482
-B532E015CA121D94941865163689D05AB0AE79687F4C6A4D213728433FF95965
-69CD7244212530C7A163305709371CB3821CF527A83DD1594D51332E8942ADBB
-8B22D55C9F63B59B66F944A4264CB480236C83FBAACF3E77484362CF09DD12B5
-E55A29C4A1CE24D9145DF8682818B1C5DB1F3D70A99664FD7F33A275E322FD10
-59D4CEFABAB45387B2CDC780EB726F45FD16DAE62132D4319CA9078436B45189
-D9BF390C72215E3D1A9B57D0BEBF0FB25838159286AF53F4A0FF1BB61653B4B5
-CF8251590DFCC8BFFC6D79746F475DC891530E75F3B3999C8278A829D80770B2
-77D55F5C0C060BA1C3A8B20D299BF1DD89EB5C92A526B388C153DAC5C109BFEC
-FF54697ED1AEA20335E9D5C2352287212817068B0B2404E5E6BE6909BA17189D
-58B1E3AB0CA4AF9629DCFA97E5F279CEE27629FB59CF681A2440713EB50276EF
-FE30CDB9F23A1ED2C6DE399D1A86C21DB7ABE963745A5CFBB8832511CD1580C3
-D4434A14A16C862CEA36005A4104D40EFCCF25F9DE081B9709B3B101604BC0AC
-AAD9AD8C88298D4B8CFE6C8FBBDF876BE5AF40F73F7C7BAED2774547F030AAE5
-E84C09B6D8231066F7B1E8E306E3803852CE65B67F611076BB8DB49A5AB12FB2
-9B2BAD84E95B8D9074C8E7CCD4C2FD95B8EA6A3511CCC529A6DABFC12F4F4892
-597A7D6D1348A3855E3ED2404DA0A105D137F3BA9F2BDA1DE79018969EAC833E
-7035C6FF4046077874DB2D158888E051BFFC2EB60EB35DC494FDB1E5A4F825BD
-4B695F05A1BDF37AFAFED3AE93B40B242C5532869CF7A75CEFB11F0B22140D71
-5568AC13715DDF6F7034D0501F92290FC246DA690EA1E403CD33099A76D7069F
-040E63A630A7EE329167A44965F6FC50EA11A7590CDAD389A0BB807C96236441
-D599B6C264069276F20CEF00A35C43C238B0080D59CBC6779491734701544DF6
-D2D68850784A887E362B3564E1F777361E9E40D80A9EE7248EB692401F485D62
-BA41DDF265E185A35B6A36808A6495F7314BE12B4C07860A86AA784D8C46779B
-61A43D0307283298AA7312C6D45939C9425CB48DCAB45BBB8224F78B3BB58B1A
-13B7C333AC9BA3EC1F4614C4BBD08093FECBBDFB7A88BB37EA47551D87E0BDBD
-80652ECCF25174F6D07D849B45EB1AB793D68FF878A470F393F2CC61D0A5C60A
-D3F78CDF9A6B7CE32A5ECEF01C7C9CE19FB8CCBC908E9240D752DED90D2F3B3D
-6C542EB12D5ABB5470ECA1C0EF709CFA6D1361FD237B0A4F39FA9C32221F7198
-6C40B4A6BEE3B6989CFD72702E263411B7ACF3541CDA7A2B5A9E03D83E2596E0
-C20470481A590A6C8078D60E5343D8692B404B60663A2368416516FCEE2F7E49
-50E80359B85C250A343B88387F32EF38D6C2DB2B3F3BF16B3A848CF5AC13F992
-8E24B3EDA7C7BAEC90FE62B118A170AC576C451A143257215666A3F3FD2A2F3E
-AA0EE89068F3074423D07C14FA407DB6259CE9677D4607127B49E486130913E6
-90F71078F052BF0F1D08768693BDD7F34EFED92FCEF87FBFC9F4BDADD8118ED9
-F13DAD900F57A2391895F8F93562848005A0FE8D9F7C90F959D80614B5C56169
-C5AC0EDB28B9019D9695E0A4FA21538C014D0CE7A2F0A98FE71133F4F09213F7
-858AB9FB2C26698BDFC8009A30CEA60F8C640251ABC3451A3F2D873027288C91
-D493BBE6D66E8ED0405708C11B5C0A74B4764303E8818AC807CA1A3170A68336
-1DC31D6E08284C49EEDB866A0AB7EDFEE1F09B2B85B67F2A35B0F13C36488B22
-08A68D1726F6CBE076BA95EE4D286E4DF8B5DC70C67B894694AF20FB5C1A45D8
-E5BE1F026B17022D2684820F2BF0084F23D4F48DE1264281550FF7376ADF1CBD
-423F1F8D80EC764C6FE3BBBCCFD97EBEFC4FF8C09D1B7BD07DB426BA3F09FBEF
-2F3F3E3C8323953868625B0E5FC562ECC736D6DFB5C2AE5B2AA8EFA304DD5A0E
-DAD0FFD27FC061A6A5BF0D3305216799F438AD1BFD5A0B971D21F6C0052607BF
-0244F5E90CB800FFDAE0582D2B8F49C5E8DCDCB7607B094545157E42171DD390
-087DC5FC53A5A1D4A42BF444A796B76693E499C550729123BEE8A0CD5C1E4F85
-FE01AE5671E324A15B384AA5015358C4F22E0E54722B12C8E070FEEA8FCA1CF4
-5333EC677B24AB1F4049C2F7D8A629DFF3479FB7C024E2E6333D06E7A27DDC6F
-476CFD6B7BC429783D9759C5D49EBBCE336023835673FF54C920806C58AE6D8D
-4C9414DFD0733F9DE8209A4E8E17191FD3E9C059959458A0498BBA6DF9E338AD
-AD9038A6BD01B3429C9487A2F2ABC7124CB390338396702DA0671FE52416505E
-E84D8792E101F35FC124E95B0FCE7C21E7F93CD9D5970CD526ED575570A1846D
-D257AF9E8AA4C46A9EBAEABE45F872144185BD2F8B3365533B7618950F3C8AF5
-5B8824421D3ECE207F62A006ECCBFD233B4D40A97C58C48193A663A309477E0F
-88536891252680A07CA46706F9504F263D6D9AA1A207A0E2867C88632D833052
-0E8D1105F75CFAE57A32601D97EF8B95965B490F303950EF8E8D07ADE6756DCC
-CC8F246FDBBCDF16322301435235984E762EDF9FDD17B0A69A6A09125DEF7107
-BA0E6569B40B61174A161D420BD200639FE9627B4D4D910F264690B0B2B50A78
-A60863D47AB4B245DCEB5992396C11DE333AEAFCDFB7DE5695F4A06E800C6414
-43EE404F68E6655190B9484EAB0FFE8A2B6CBADCA45A947AFFC66D5510184A40
-2A0CDD5E00B2E91D338E33F3C732E674F52A996C1970D05437E051981120AAB5
-1898395502D6A47076DF3EA7E9871AB0F24167E2A6D602C832BAB91A62486C99
-8178A5C102066585374632FDD192991E310877CAA8DFB4579CC515BED8023300
-AC1547A49DFA38CEF13A21A0FB373CA97810A4362B1827265E4F8FFD8CA96382
-D1604610DDB80598FCD5BDD78E0EF43F1801ECBFB1C6605A4C16DED8A81B2C87
-C6C544B8E538A41E490633E3C7F469B6E46480255ABB9B58969A9E3F3DF31BCC
-08B5FB55484CA43C8678C67D8C4B471351E59C1F18C81344FE527C59AAE7B342
-1AAF33C3EB428B9674C352131778FFDFCF2E7B1B830AAA153F952CA65BD64387
-3659AB4B7983D36503140115D81DF0C1372BF518597A8A32E62FF986C32433D5
-7BA33BC468C9AF03C47E6614E137EDA88014D8298E0202BE747D31FEC89E240D
-6921685A5955C7EB87CDAF6AF80FFBB4AFBBA869D5DD9DA5FD8831A5AF75E1A1
-CF521601C5B480445D91AAA779EFB79A3D2A204B2668E60A6EA6AF2ABE5E0082
-747F8433F61E9A88675BD8BABBC02AEF296B52FC4BB0ECE30A8B4B5D72982C5B
-70EF4305D2FE7C0C6B16E52F7A2EE235725B0E81BDADBA4C8943EB2CAC86D4BD
-425CC9F3965D0C8666AB59AC55FC90BB9191DDFF43BB6E76
+0693AFFEF215D00BFCAD02E45496D7C8F5E99EB9096FC4300D038C1AFD31EC4C
+5ACA6B72C1BE7204E37A4CBBCB1EC26AB87F2FF82DE20601025169A5FBD2D060
+62B5B2DBC288C79C33B596832AA18D730AD572C6EDFABCBD36DEA87C0F323C3D
+6E537AD3B43C6F3A905597570A8C6B0B4A5E08C08EAFF9731E745F2BA8ED0C0E
+1ADF7821CFCD4E38F3F4C243CAD31D9F8FC68B9043740852B4CCBDD37BF728E5
+648215961FA82A0C847ADCC5187331D0863A4573BE520C02CAE14AED4F06B3F1
+FB4A318AB54CD86DEC824707B29F858FD726A167F2333855C0575EAF4EBEA0B6
+754B1775F967140641FC06F82B191244186FF347A351FBD8FA62E8C978B21F6A
+E124929876488AFA97FAD262BE3D172E2F03F564F1325C9F1E050C83C12E0CE3
+C7F58270B5C40B46B3F592FB41FFB7F59EBD69B2F489441E398FEF7F84C85055
+531D95FD21629B0E509C2FCEE995D025BAD5D3F28CDBA5CD414405ACBD936C3F
+AA4CB2620D7426002161F983AE95E542EB8553AFF7E57B82E05FDD5FC433E1DB
+BBCFFB1ED92299DB0291CAB10A84529B7FE279C62628A24A2FC36B01976E13A9
+C528A198B8EC8654AD69CCB5C209964A2B25D6DA9BA0FFB366D19D8C69701D7E
+8ECBEA88569601C80ACCC2D5487DDBDC27DC463A53A8E59F9EC17D0ECB7D2188
+B6CEC6BBCEE631DBB9959A9855B997481B5D88B8BA29995053CF42C5518A3E8C
+AD21553A0F6BC3483624B013D3537F7C85D7C558A9C772554CFC1C3FE7A70633
+318A99533A1AD864430BEAB8A5D4290194F13FC1EEB80C2005998C0126EA9C07
+9DF7B66876309A37685C8555A6CE41C0EE4BF759159FB90FD85AB248BDAA0417
+4245331D416A4ECD2C10905CDCD95169CBBCEAA3E45A70778A746B11D7974C6C
+616C217475E1632707B465B622DC2BE08B366A43F3B1F55E1384532F37F5CBC1
+8B2840EB834739DC02C8A477A0E0B5B1DE8F7944DDFFE6B4BA18D9DFFC2A9A7A
+78E3BC3A0CBA942C110DD323775ACBAB430724E21575298C6D19663A9F4DFAE8
+AB299158B24294CACB53584FA5931C45205AF58AC7D6075890B8377997E18CC0
+C65436BB7790279B58D2E3C7BCF91EE077B0EEFFB07A403D702B9DA567AC51CE
+FE7054FCC281CC34CD04E539FB17299816486830EBBB9DB3AA76247D50FAE981
+65CF044E39923C4E2173A9FE6E38A21CA36F70FB9FA6D2E2246B402D4BB5F150
+48434F9B4F2C2FC1E7C19C30374AC31C2EA87732DA14B6E925DD0F34E48941DE
+796C44890144DD9691AE6F0381F174714B9E17A44CED61B9FFE40DA5986D29A6
+587781B9D3AC5CB19BC448E3CE9661EDA021755BC8DF86B3F766B0FFCC6504ED
+82B4B8B53B62B399406D1658A37579EE7CAD4ED2554EA16F53122BDB72C89E96
+390332C0EDAE62DC139A6091E640D555E6D7C5AD81CEA20CB8B1272ADA2105FF
+FD816EA361C24DCF0BB660E2228DAD143C5E0C101D34F9E1FD23466F672DBBA2
+586DC5BEDEBB112CC621B8778580EEF6B8EFF9BD99F335F43523E09E2062AD1F
+DCEA3169348EB141776FA49800CF1173899E5D331768C864E998CE2078C1868B
+5F3D166C13AD2C17639BE80856AFBD3B2C8EB89FD41E998A0AEB832AD421FB40
+1AE013CBB43D3D13647A2E27C41470ECC344534289FFF79162D7322C3EF5AD08
+345ECB050186836AA02A47D934D3FEF1BCBA503B9214949974A9C206055BE582
+42632173653D9A62EF76D442ECF4DEBE87030B9C366C7280BE342FF8D0A2DCC8
+A5C6993F0338A71D54F3AAB1CDFFB6AE9ACA6DB5E29024CD357054EC0A149893
+31AF86ABF24E2F7492E461DC9E399E815264D4A06F6DA4364432A12A8492A88F
+DC7C433D4D884FF56DC2FC982F8FA87D69D59C4281C8B9529B3D41B854B00032
+8258AFF0063BB4DE1F824D6A526F7F196F21A01E503DB7FB20614F6AD61C84AF
+13C23624346FF7A14EE8C073F7FDC888D43F917B353E56BD9C6E69D82ADCDBA6
+AC5EC3523627CF71FD5302B0BEA306EAA6FDBFB2168252D4C4D345775F5AB141
+9233B18ED9373D56FA74DA7A39CB7A90FC6DF98AC03BECD64FCDC2A85041C4B3
+48E999BCE6425C6A0B26574D99AFB5F61B500F600C0E9D5835B0296420FB81DE
+14310596E2C64313849B8CE782437D712F8987B3033FD2FEF0A7AA0E26D33D28
+AC6E45A65F03530ACD022F2496B9F500FB274669061791AD5862D1AC84ED0012
+FCBBEC5BDE13D2907F1593011E0F92E558DA86BCE9C464C3037E3B63A3A67B54
+A3CA185B9E87AF9D76D67D100C59BBA1B530CF0E191D013D0DE94B0F9C50ED21
+D7930F0EE3A56EBAC215B0E1C9F85BE211E9164C990E7D4B1072DF49AA02D927
+53A129CD1144A6E4F8C1D23CB2D6FC87A2240B16C9E54BA04E33201A8BEE54C2
+F8798C93FA35EB287004DF64FA5C6AC4F7274F312F6264E94F2215A39CB8F6C3
+563AF9DE8F41D67AE31B326AB9C6607FCB47652F642118977AF4BE0A5E48ED98
+68F717085F0602B309777AD2E4044E1FCAF55EDF8327AE7FBB78AA15A4AF7C51
+5D521D1C6155DF31E7C7CDEC35B5AB7956F7FD06A8FC259A4845C5BA0A293028
+BF5FEC5984BB3702AAD0096C832BB1812A49FDB0D8B4ED1A02D24E82FFD80696
+79B1D2EDEA6D1F10CBF1649320FC04CDA340CB047A276DC388BCA1E39FD11980
+B0676294E4B690D371E3B8DE6F2A6C65861A161BAFBF18900D50D8F5B802D241
+F119E63504AACF61722EC2A9199A7F3C4DB29593C4C3321C1AADB9CF077B7BDB
+17E5C1842B9D58DCF916C7DD7B848CDAED357E874D9788C648775A9725973A8B
+046CE0FC513437C9436D5278915F74956D7C9B33DFFFEFEEA13176D5E9C7EED8
+E9350EEE1451FFB840E5B8B23A0B065CC861A91ACC2268D2CEDE02799D369AD5
+B9BF63A092F045D25B39FE41758D342B87EFB59F6EFF26F009A5D5411424E027
+EEC7FB8DCB92B707FD2DC7A41FE17E6722BE107873749FBC39B1B02E0E926FC9
+9ABF2343B114AE78DC9987FF435B351002570D9D5A831B96A6FDECAD60B523CB
+7BCC09642E31877EF538B6DA969BC71A152139CFF5C656197B0051485A3E621C
+B1E9357CD5D9D067C2B0F6E1DE201534EBA84182840CBCA07564BE64BDB09A88
+5C7B39B6FC6E32A2B4F5F22A250609FD5AB034E79FB9B8CDFCF306D878975696
+79D0403D07D02D94C7836B542AA0A163406A81B4B2286A7A3342787C56A13AA5
+B9376622404830BC533CAFC715EFB19518B239ACB7E94637829E3BC6EE7B455F
+16DAD8DC390637F1781CA7A11A3FDD7BD3FC9F66656E90596401B633612BEC56
+F5C727D7BD9A3C6303F409C302EFF0280DC344D432C96548A7165F3463D9EB42
+F0BBA79E2AD7C748571732FB1437454179A5F62A790FA31B49492AD4D3A30EE8
+CC221C9F501A58E97E028A15B2598D0CDDB2BBD43D80C69B69637B0CBF24A2F2
+E5841B0FAF27D855A4C22D8FD6F07821B3DD76DBCBC76CB0647E862497F022A0
+367CD77D2BDC6DC109BA966540D94F15F55BAD3C0C2D3114748540E6BE9CF5F1
+31591307B1FA1BC1608635A76845967C4AB1F3190F07C5CC085EB16291C6B8C5
+0046511F7B428757B62FA04C038DF7F2AB09173ECE9BB93293A8BA18B25087CF
+20600A85099BF39E6D4E2ED40350BCC6743036D7E5AD9AC8C81C53AD3C5F9D94
+2EACAF71E3256BB90BD1D956BFEE1F7655EEE5728A90BD5C90CEF59FA7CE811A
+A708FBD232A38267A6D8A3166CC04E073414B729A70BA253BEA7BC97D77B40FF
+4FB239DDB790DF1CC9658004202391FC6E394875C577C1FDC0CFA3E305E5C003
+36D0DC031675AA408BF3FAB297485F413002A79249F6D5DA9825879F2467933C
+91B127E329E8E6A02993E92B9DDB3BB4F93E4DB927449A29DE84474086C994E5
+4D15E4A486197F4394920F810396C9F906E8FC0AFFB54B032F3D047156B49030
+3119CC2D5504B057D86D957BA326E961501846829EEA8B847F1FFE4DB8C547D6
+396A1516CF68E589861B56C3F5B6377E22195E3FA866ECE9AA8373A84BFA3554
+553446468572F84A6C7D35059DA21546EA5D0A60A747CC0C2E6E29F1DD7ADD2C
+6F756959A5DB3CA09F4134FEF64C2DE432AEBAD846EF2E84920FB3D085BAF23A
+7E91F3C016F560EFA44FC34D79B0FAAE2658626F830A59DD723A391329B0134F
+F6DC21AAB7FD9CBBA5BC1C625AA6C2BC7D9C12894874A24EC5A90111EEE65E02
+3892B8B22BCF79D983CC56FBF48B7D8DBB0EA0471461A14541F2830160E96B29
+6545EBB30DD19646AB2898FBE1D5962735A99046BED138D650620A35F39FDC72
+42EC7A5CCFE733DA53A6E23373FB2B49D52EC20277393128BE44EBCBB4D7C37D
+E924B1F166A0C7ED01E33994FBD2004928082EF54BE02A8357C218637CBC59B3
+476265DFEA687DEFBD0E4BE9264F25F7EE02347A164E9A36B62D5E1EDCEE907F
+392A1F2969F52446DA4CCEE43FA9E9BF4310B7A764B90B6FE1350D60F6F21D0D
+185DCAC079FF7A45C2A60E65561514CF4928B8523C8368BB4E368AC2F7203A1C
+49150748497BBA696E9DFB2FD0617EADFEC5706B4FBAB17E13CCBC9CC1FD283F
+F99734D174E503AC25247D76FC76B1AD3A78DAA8AD3A0CE6A3ED326C96043B17
+BAADF2985D521A26ED378841F41FAE21C29339143F904EDC5CA27CA82B0BBC8C
+647D31968E47A57322926336F7D5F69CF8CE237FA1E69108E29123A80E65C769
+90156286FE39B33353E85F540649DF392A458ECED452A6973C6D994CD728522A
+FE47E7C1617B4F3233150E265FBDF30DBD9DE574D7B938BE61CCA3D275C5D76B
+89B3CEFCCD927F9781320882BD26627CA7BFB69B3B76ABD9533F085254F21637
+FBAAE05DB5A50BAA63395D70821126327011E2DFD713323378F55A24DFCB2C2E
+129BA5CFAB9315ED4DCE755F1A79013FE4D490F955609FBFB7DB8EC0AC6EBEF5
+DB76FC9DF8F4957F275621DEEDE9125C5B3FBD32174F4FE78C2563C0E00209CB
+393B3ACEB8DE30AA20DD26B6894E316872689D5954CF95FD0E5D292F29DF1ED4
+0B0746E862F7F4D9916D82E82CFF6BFC8E2277A2E43F57D152D54C56123EC368
+B9BE0CC8BEA71A1AB5CF35C2CF7AA39AA539B56781DEAF53E245415454B530A3
+08B5C59950A279AE37A48C95EA86FF8339ABF4720AA68FD68B078B246373AF6F
+E409295C5E1B6E7B733B1C1FADD4863FCE5E373B3E8439FBBF3AA45F30FBC656
+15BFFE5748E6C3B5FA9F3FAEE38263E5A5504D88A31CFA5B00E253062B681D0D
+7CEFAD5B0FF85B58BD4A0509CA4B342DE63D25B935F9AB6DE5A30463DC59EFA0
+DABFCAD726EE8342A3FD62997C3A7ABC8AEBCF22DE843BB456E3987904A421DF
+76D9D3337F9396D94A6A9496A4B5011C97F6D7262927238A579B29B08CEF0E72
+09C760D2B8D26D32CD36409C8866DCE819E59989530A3BCF2E374D7D0DABF73C
+D365C0EB1EB94F356F72CA27BBFBB45FE5FCD2DE0B79D4E17398593B4515FF21
+618FAEBF277D59E5C5B72D6A1F6739AF3E223BA4CCB15D619C322E36AB334DFE
+50F72B9217965D2DF82C4274E98CDC2753F48D1901765709ACD6E270E3F78956
+1528FD58DFDDD0D859F9DCA28306B67014263719016BC9298C4EFDBB7F4CCEC4
+E56C2D9B407F0AEA035DEDC80B4EB576AD60C5368295F6D249E74F686B8D0281
+32B91C1BD7DB446408EDAA43DA867703C9956056C700347557BF693335289143
+F70FBBBEE55DDC1571435DBE799B45B689FEDFADB3C756D67FC290A71AE1BD0F
+44D918CAA1B3622247E4798F4A6D6F89F6A36B467322CA2D3B9BD3483DF80A0F
+7E09D321708BAF010640A28F916E44396C0140FB96E6121FCE625F81566B06B2
+8F9516262397C4C0DD8FD22D072C28D257AE2132B7658EDC786857B9057E3759
+A27EE1E770BC0745D9BF5F0F9A2C2F457BCD31036EFAF67219B9C79981A68074
+D3EB41251AA58ADB9392B56DBF091AD17A51A291ED8FFFAB28BA0627D4A0E90B
+B489573EDB53E6F150348285460928A848DB92143FCCC84F525D51F2A36D4274
+F9A543E5FA4CF3EA68A49FDC679F5961212FAEAD82BEBD924A926E9DC6BB450A
+09E969D4C2DFC5723473B70C023613DA4CEA344B7233CEB3D00C6F0945EE11D7
+E0F701E2C8427FCBB0D57C4ED46424E4CFAB43A4E5AA36D1A38D3B045DD1DF64
+8B9BC4A96333CD95206F436486180F113767AE8ABBFC3D400C80ED653D7BC095
+CCE6DD2ECC53106F65E7736335AB2685D6A51A94061C4CDF3DFF06E6D879A91C
+949D2C2CA8666151836E124F686FAEF0FB42859A172E2D0F8D081E1A73A5F6C6
+E61C586B43B28EB7D08ECD915CDBB1CE735C0FC08A850176DF9704DB9BF71AC6
+29D21D3374BEAE9D51C81DEB509918A6637E0E00794B05540EDA577F379B09B4
+19E10C6629A33E029ADB3A4934F05454745C6A17CC6F1359FABFB5AB53B2F910
+B5F397291E6A463A5AC971965FDA9FC053EAA894E1FE04A24F47EB19FFE67A3B
+2A5DFE539C57004C2B1AC8C0A59764F91CC6E9FAD6158427F82B9E1C77F715ED
+B7EC1202D698A6913D3EBCD6CEFD098076A6827DCBED5812B5F969AE9D4BA95A
+F12C40519E33EF065C9C69496C2042267E20ADC4BF0C8DCCF5FFF524E5ECDF22
+B31A066015FD4A5E8DCF4C484A11E39A53C813C87CCBC147912B9EA28C535602
+B7C5D5882F4FB764EE060C3D363D5563865F67CC8EC87165A37D00DB05287364
+84EFE9A54C36D8EF6F4B86A79D79903B77469F48288261F83970F7B56CC0E6AC
+60B1F2AD9BDFEE0372C4E5DA1EC2DED6D8FC0230D2875A58D127D2599954ECF6
+962CFEE9C966FD747F60F3A9E02D219BD3031B041669CED09F9DECB766806A69
+19EAD473044DD90156E552925DE0844F7B8913F83CEED2B03E27DBD811B6497F
+CEFF454F02330D3F0DBB6F742FD650D8FC64BB8ECD63421002E486CCE5AD262C
+E26BCA5323B70AAD8699467A1A720F87F86BA0E289E463F772CDB7894E6D7808
+BEAFE9E0A69CA4A4BCA8DF61C7260BA3658C8678CA2A3CEEDAB05599E1BEDBDE
+B213CC753C946A22BD0A545590F53642F89299BACFC5F1936F9EE63388670F8D
+7AFF3E514BC93BC357F1A037D0DF7A511AF561366C1BD53C203606F06ACC61A7
+9565308A39A1EAE5E9809EE7D948795EAA763B05B6027D2F597607DB8EB5B545
+EA8F935A00086D86EF34DD686E7FA152FF18766F9F680070A0FD20995B09753B
+3EE773684F79D01C7F40DC742FAB74716753DE9848C0AE8E96203692C2137D2F
+6889EB67827ED0FA63709951A68D9C426D3598EB0CF3F8B8AADE80C2EE0FC92F
+96005CEF73FAD0BD11F23B003E7094C72C702727C315BBACA116E29F61C37B32
+D39A19D53DEAE15279C9A2FB1DF92E989B4EE2974D78738B0E39C57E44131EB7
+42F7C271EEA410273698F4C02FA17EF7A33C216FE37849737D62A9A339595F5A
+1A330346B6500F33C4C37A9E1CD824B3D34947BC5FD36DBDA232559005C2B14F
+C4D9B2CA6467E4BF0E835D9A29053127EC8F19B0935DC4AF2F3997C59B1BE5AD
+6B4E8F50B75A501F60715783CD39DDA3616165AAF4F904680E2C01B66AE2EEDD
+6DC49B5D4378F381A086E3DBDB8E6790FE69AAA2385E653928DDF995656AEC06
+61E73AE147CA437524B559D6EE05D68C1F8ECE741DD6E99C1C3F8946F9B9A002
+C534775EEA9D77A594326AA4B50C234C965BD32EC7F7E9CE813E24EA47C452D2
+E8A6F2A20B0ECFCA3209011E3328B5E458056782BB79EF56485D7E6F796E50B5
+B0E5375F09C46590A9912913F9C702E294633F5AEF12AE2AE0E279794ABE5F23
+25F777B4DAD76416CBA671CF7C295E1B539FA057681F86E6882BFCFAAE205BC5
+7C0A6D0DA33A4EDE00EB08BB3B863664BCE2E70BE0AECC9E9F7B9CD9C921324D
+C88D67922DEB40A3DDC0096CE0261C3366BF374717D6761942460D115C9C3F31
+053A1D5105D6D1F8938222720E8FECCD989F95A33290CF0B48A41FE6AA8A135A
+F52E439552DF6334711E9E47603D471F6F6E13C1B16BBDFF6BE2BF2EDAAB15A4
+CDE92BE381E945F8C9D3454D4B5789D1C70851934961FC16682021BB8711F61C
+0A5C1E236D891EC50BC4B2BA6D8A2C6983057A10F36E52AB407E852822EE91CA
+5F54DB15A878DCB322ADE1142636D912678D42A68C07719CE59360BC08ACE64D
+31196B5CBA3C03F62930F8E23FCAFE7CB64E8451CAE1F29C093CC4249699654E
+B64649C3AB8ECA5ECDF9B2206AE64953F20ADE3D43EDAEA9A4D041A05C5FF7D6
+C02A8BB1FB32280BFDC1794647F11C7CF83FB1E9D7C3283AB3DB8A2B8E50FA58
+59AF00AE5134AE93BB3689A9446E55D42DAF400AA41C5532BB9490C00720D309
+E279614BABCCD807F0649982B356228F2B5A7FCA0CAB90969C23B71DD27A9796
+D096B860743AF9F9734233180983C4218D5234AD1E28BB2489DE60D8CBD23D2D
+A2990C3A2310091FA37B80BD6C5B963DC989042D254953EB7AE64D1C965F1ADE
+3EEC885838F428458EEE082EED5DA4F267792F890BC757447327BFE0A7BD11A8
+CA512B4A118E191E4F0E9AF7CF3B2184D49A3CC5751E59CFADC9A955DAC0C0EB
+2C6F9CD152E90D780EF52B1D7DE430C66CE9DD188EFEB2EB3249B6B59467AF14
+6809310C1157E226FD7C94BCF528F741F745E3940C1F1B9CEB731DE7C5BEE08E
+83A157EDD5380C618336CED69A064B2B8091B5F76CF63536F17CF81AFB04A225
+DA54D3EE177EBA1B804B7949BC4B8758C584D67C821633B563D72BD9F834017A
+26E32DFC18BBDB6FD96DE9BE41254E676EA376EEBA85C15AB5AB88B773978F79
+BD31844F188F4D372B1810F9DD89961A2EDB3E129C80121FD1035E619F36081E
+CC276BDE9146156681A7482B0CD3A7E963BCCE935C3E69F77035C2320736930D
+C935A27D293348A28937BFD30395075BE40F1C5474CBC7D65BEE830271FBCCD9
+DFAAB5567DC25D131547E4ECBE55B03EFED0E44277559DB19FAA37C164B85DE9
+432D7364145D7E5DC443E920AACB0CF6931719E08EE784B25D848AA9CFBE5539
+761F88B94C9886394A7C1D9B0AAEB8612E11FC84CD3EDC25E8485BA5690086D3
+E39C038A53184DF677721C03276C629D414067B4AB0F6E5B1AE6FBC292FF71B0
+BCAA67C86E452CED1749AC2AA1D02CBC7B5BB9C564EE1FB3B45B2DCF9E1F9B2C
+D5DF634277817342C527618AC1B86BF15D4E248CE50D5EA773A118EA6A37D658
+57954885B158B4A434CAC9457756BAC356EFBA3B00E9268CBADB61DD1AF33CDF
+A1DCA6B8D96757925E509DD7B0D33BE0C21045CDE0DEA92FD943B1D0E2811F62
+3F061B367DE01BDFABDF2EF3FCF0491819D25619AABADEC9965FBFAD1D58A802
+F8F253F46AB4756ADFC1B3DD64326FBE340A71021DCADEFC44743C99A9CC8575
+3B0C7F25CA9FEA918F82AA648FEC525EBB75B1AA47216050C74088FA42091BAF
+3D95286800E400535A83D504A353CC016A269D13E4C74E79FDCEDC4B56905217
+9018D85ACE1B989D55731515706CF39AFF2ABBFA8489F42447E7560C3294FF60
+F58785664096508D35EB80F81A39493426F3C1C070D946C77362C925897E5D05
+21EE4B210B79B3431300CCE5EA39355FEA878857CB789D16B957E39F995CF488
+892FF7FD7CFF4AE95B5B32583AD35710EFCF4C5CAE1F96AE7BA8DEC42CD57C31
+BCD3318F0F7117FCEC41E4BFE543CCFC69D57C0149EFE6075EBC81592E534564
+C7480C20EFFCB57D3F7EFBD3952F5599A8AC376CD2BBD4EBB12B44D9D9863569
+560D2D59520DBB6A2613D3174BC810C89514E0828323A9164D20832D2C75153B
+BF388B98239B4AC9751AD57C2A25C5631EE7BCE893995F10306766D483FD867B
+C29386B3BFAB3C5F9A07E56C8D6D45336265078428FFEF66E957602C0A4040FC
+291B8648491AF5CAEDC6D40758E436432C0BF40A93F96CF1B4E9492DE1D142C7
+47C422EAFB4AD732A345B3BFC2C615A10B59F29FD8C58B6A0CBAFE329D9178C1
+744D14FAE70E94754EC67E41B837C14AC865630F8C9CD1E9BB8E97EC953BACC5
+0B4B5B4F04C75635E2830876E2AE7D0EB0B2CFBADF5B6E41231960F37553C42F
+5F5E83B41AD4A75C8296C3ED321333ACADA874EA607FC84615E06EDDBB31B456
+8593F57DBC39EB41A1C0DD4539B7933829AC1B116B8661DFE674EBE05B068D1D
+C4209B86051F6B585D66AFE23A5501DEFF3EA0C229F218D861FAAE80403606ED
+1310B5F1EEBA5B1B83A6A959ACDBFE22D46BE01B07B8B7FB5B0CDF1E66E2FD90
+118A192A9B1E97B5D1D9165A948744A1B960DA72AF308E496E9D5FB2EECA8119
+808ADF470941702DB7235CE46FD7CF378A3CAA8D6970B15578A12F894297E27B
+7E203AF7F93D6D2B194523B2D51064A3272582712ED56A12987BE676E20BCF79
+D9A507162F330F648A4236A1283DFA6C602F87A4C1A1AF205DC57128FF70BEF2
+50039CACA401D3A9002EDAA9DC6F72CEA7B30E032AD42EAE66789C13680682DD
+C3CE5D10483745E6B12E963683CD1C5B2F86884A0E59F2D04AF9DED9E822DB1F
+E5F14CD13AD39ECC1E8745B05B879834A8BBAF4578686557958B2257D0B34356
+D89D751E2BBA14F3755273479DC653ED01F6052639DDA9F6CBD9A4A319357F91
+B2D2BF5292B32BE971F2EAB21C651CA38FB9BF1B7C3F3BB46536F63F61BE88B9
+F8E20A197C1B94FF572D53B4BA8EBC6898AEE82464570EEEAC49D2ED9C653877
+773B3ED7E9C597952A6379F83F4177C133A6E770435FA67EC39AF6F9BDBC5849
+A1D27E68F5540EF421A081BE87F4C3C0178A3BA6BE166BB18B669E2FBE8AD2F2
+80A1979B7356E82388B51A98243BB9D6C29B2653E104B916E6B1A90F96885ABC
+5A48B448448946E274150F1AD1816CE4D56D59CF148AF178947E52FA1EBFC874
+0931E0315C5037F24F139CC9E039A184EBB036ECA2033A70D9D14DEC4EEA2B9F
+A0F132F6E63CBAEB544683469D3A5866F65E13CDD80623E5499584CCE7DE8AED
+A85B1F7F53567BF58497ECE9A32E7B1EFBD9FDC256D724CBB7EBFDE3924EF67B
+E944CB5396696625CE74F971CA520204D8D9EDE5A440CAE121A208DD3BBB0AAC
+EF332B272870F26C605DD0974DA9BA728BB155303F5C5751B9B7B1FBE515EF05
+D481B9FCD96E6F3DFBFAFE846828ACB2AE66C90C6689E66790F1D142B3D4331F
+59896FA02F4588D2C4A1666D6B3E6330059159C133B5F80C1FEA6983B3A7D65E
+ECB180A121C6117D53C1DAEA9E4FAD13B0B3804208F11F175593673477427338
+FE402CC01CD6D8B46908E190BF08A477D7C65B58241EA83F584490FE1D18CC18
+18503402228FF42B65ED61368C7CC198CA98A3E269EDCF1742F59528EB81FB5B
+017D5F3158B2224EEC7A2C21CD2A701D834F602760229B9CF2FFC290405D7D21
+394F7CFD9D7B5413DC52B36E2AA18BC769B4DA6912B2452CDE7CF15746864CE1
+A45E9E9268822265D1380A3CA82F651F9F8584F3C75D366C6BB96A732E23E0A2
+E1E1F0E4FA87B119E547047F4341638B7D9386C0F8F2810E03A461512EDD9C61
+2EA6E18D0BB04A3CEBB75498A4D826043CA86CB57FE14A00A4FA5517850E1511
+6D7E0664F97CA7C495D01D02908BAAE8160B0B0325E73B3C85A34838979B1F42
+70EB7B0FBAA076DCCE4D1ADDDCD332F42E4FD943515FFCDF34735034F13B5803
+42F0605590B3A8A23C0D6308A621EE8837C79290F3341ED3958355F0B4927AF6
+85BCA5A62FAD45E72442F541EC9A89A9937ACD7904C9D3066E059CA6E20CCFC5
+7983FAFC88F6844C274A8F42D34F052CF6C4930E6871A4F76B573CDC48B10DD2
+5980DF5663CDD00B7701C7DC0D72A535713E6CF18EF5BE8F7D315F7393890BC2
+5A641672A904E7CB8B407E0766E104E5C4DC3DD88F6A8EB255423F0F0E73247F
+C4AAA97C03F2FE4AD4D10EFF0721308C6EE85F53E0EAD35F0F64567C84D5D202
+872A60C87EEBB3B6E85AC3D20E9DB260F37BD182AB50DA996406BE0B0F579EFA
+7D81AB4B77CE39120C3573941386275027D72288CC873817D6E94C7BC657EAD4
+D76DA726352C2BC7B20E357DD64B3443BC80D978B2630A2AFB2293801662BE9D
+D8DF886C0A4567F351400785B66D70412EDE4B53696F345F7E62738762121BD5
+0121BF06267D8534D9D02261944143F7470A2D7D70B6C30B55A9A103406D8CCC
+5813E8C3CE294AFAA420C35935BEC915ECF17C495D79A9CB8DDB75E8A1C6A525
+1B1B420AE8E0159DF7AF26D635C93953ADA11C2228E0443907EB72B805644363
+65EF866ABAFD03CFDC540D3B00CC0AF1AC1BAD7D6B16E99216B3F20A4F09C559
+055D34CC6E88532735409162A53B077C37B06CA194AFE26656F180118B1A48AD
+737B56AAA87A494E9B2F34D3ACBFC61C0C9620A76C0A0AA8CDB2B2B0E28D4739
+7432829128E83DEA68D6D4DBCA1648897882C8EF4C2FC6895FBBB6A230563CB7
+AC766E4C7BCEFEB342F9A5FDE6B6846FB50DBB5EEF8C6AB4F839618106250CB8
+C0EDAF9BCEEF07FC68D3E13135DDCF20EC52D6A25E533FB9E29F84CFDE8A78D0
+B5C63AFDBA8B1C4F74FF7127C7B49241B69EB9B7B126F5C575ADFFA29B27B4E1
+716BE3FA246B6500F278919D571C81EE27AC3CF8696871796A560761D477BF2E
+71690CBEF553D4AF7AF6CBA53635C89A0BA6844C308478A476A42B13DCD01DD7
+73C4B2D0DFF0C0E1FE6B36B7F091307DDE52E330DC8BFEADFAA60B9193CFD6D8
+C3C1172922D6E46FC2CDE41CD0FCD1B88D485E0FE87B9458B9247C82060D33C9
+B19A7DAE9AD65579A99EFCAD02BE6390860FFC7C4E3F96235327397361B0BE9D
+7B2F2EE5D47731E86DB99ACFE39AC140AEA0EB6FED70362FAE64391914233E8B
+19E23092C71ED360FBF6E445E34D8972352E5D34E11B00F027B068E431C2E8EA
+68A511EDCD103577D38CD594BC86789644F3DBAF2FA1FE1E4073C29BF4E39E62
+0020FD146794CB5B6090E5BF13B02355A7689A824B564B95845E51C03048B476
+32CFFB922E878699CE93E25394EB242BD21D77CA71D28EA7B6939A37DE1DD8D6
+C1BFA07F113631DFEF0CD8ADF418EDDF1D1BC0718F554CA3351AC97DF5F6C40A
+B4073F62C3E604F76770D9563F149B50DE4819D8C03077FA1E2DE8AFC505EF4B
+591B5A8D761B3018D5C5DD3D26329C3AEB150A34AAF84E5E1D0590BA2A17BF5B
+E36A4193D13FD446339D3C9A1D4C336846C1CA17337F014BC0F52747878BDFBE
+4DC8D2B871BAA9DA59718E9FABDE91AF2467BF2A322C5D9FDCD4D90AEAF2DF56
+A4446FD1C71E9FEFDDDB6940C33EFF3D60177C9681A94EFB154B1AE000292D6D
+3B6B9CDDC1982FBEFF024B195AB1066645F80DD1418A70F8CA518A219EE35AE4
+D046C9560B162713FF31F2A5619E834957CB1CE9B561215711FE48927A370F53
+06FF00FA14506E42912FCE82DF59B8E1697014E9708A2EEFD0ADA95ABC545596
+FF2DA33F77D87E10B990872423FED32E3B5623166DD0A579664A46CFD8F95E20
+E35B03760E964331ED2F7FA937F9BB078F71F31ACDE4EB5050C9F8EFF4223FE2
+5E9670292E319C371791B51C7CB90681D8302BAFB9A1DA864C0C87F694ED93CD
+D46A5BAFCC9579A5019A9249CF72771FD412E735D8199A48E04103CF78468E5A
+AA222D2F1C9280EF55DFA685959400282E286BB56538807F5C87B193224A889C
+680E05F93BB9210653613BCE43CB292AA4BEAC36C5591B5026EDE95BA780BCD4
+62422499D61B7F2A888712264BCC0B4B8B4DD28036F4950FC9DBC7FC525F5B89
+3924EFA75F7F50423B506A5F8D46E8BD5D0C5147F2AD7C9BCF57A93F8B188D6E
+0BC266CDF09C0B78D7DD79B659B4F9336B98D2CFE2A0DD15CB79D87FA528EE52
+7C5CF1E83FD5403E42DA8E753051CF34C72CF5901CFA96E2F4021EF63622CA73
+F416404FEDD730D7DD28075299514670AB74CDF77609B432E3A8ABF6CDF34BE8
+82C866F9EEA56C7D36758D27E7DA6D26A37041D7DC19A8D6FE1CDCDE1A2FE3DE
+51D29AC8CE19F6885A6A8906C9F3D54224028FCBD2D34C225D7165ACE46B797C
+3C8B6840895554D460F6C7CB4A4AC0B0B1A8CE7016E2CFDF56072C7CC6E0913E
+E924D4CF20226948F2BB641023E9C77824CC393163794A7C34E9925AF03F9E5F
+E0AE47FBBF6086BEE6ABFBB0702788A63F8C5174ABDDAE23C0FB989D53EB4AE3
+9699A447724DFE258636E6DCA1B6D7A2D434C0415967C672B1F843856F87BBB9
+666328FC7FBCD4F6D120565BBE9F15203DBDA16D0B9F44E4DC1E1FB4BE45BA00
+63891961DB1EA0E711B6A13AF3BDCE301BDD9CA172E2CAF4F5BB67A1E28BA76E
+8F574B86B036D79F24CDDC1FED51604C497C55479B16319471606F74CA153356
+09060F16951F28921F61C65097DC59A8A3BEB9E47C036FEB2ADB906C4339D227
+28463D527C20044AA1251DE1563CD4C897A62693E4F1FB78888C7159A8EAD8D1
+B06779571B340F6A131E1D4911BED7BC25D6DAE32928119C9C76664E53413BFE
+62711326E3A3EF13E1B62F8E84E5744807BEF8F5C7035CCC2D693585ADC56A78
+D4FE6B027F4ACB9E098B0E6418045226B5F6F2349BD0450CD1A567C7E8ABC433
+8C4C850D60FC770C33910356567198F239CEC1D061A5C0D31980C379C93768F0
+728E92AD4DFE86E9F23EF4B7435939734EC22F02B029C1D4330DB135E3B8B092
+D2616EB4AB01BB854A5281F9F2CD67F6FBA75C3E5E7F70999DDE833979C7B3B4
+BF16433EFF4E9B234A85EFAA4BAEC9C47CA9C7BEAAA6D87458CCF2E12A38CDE5
+4D4CB4F60F851689C0DED75CC8701881BE66ECE19CA9791E9959215631B19C75
+5A35F948833D1228FF297D7800FEBD3F7A2B5F039D9CC39092101603F0CE8B76
+F1EF3FB06907054ED6A67D1C9E34769D36B19A12320B1C16B30DF6CF1B17CEDF
+834FD6902344BA4145D7120C94882C75E30F02D96D8D7313BAB167A8A1CD4E70
+D022F26AC307F1FF2D098C1E6D89B9228B960054248374A313AD567C902B6814
+263B20792737EA1B42A228795AEFE63EC95BD7F06EE15AC1D0355D57AAE276B5
+FF364A28929E7621BC14719A265064CF6625976210806979280850CE81F1D1B0
+363B275C7A6D6BD8D56A5DF05A4CA41184BEE1D18496C3BB96DC3386FDB41E06
+F8409B79B1971B6FD73977C36A8C0A7742E7429E389CD6EF5FE87CBC16549B93
+5D31B5DE762D3BA5DDB12664314E094CD3D1E3B854B223038B3AB373C41EFA8C
+3BF4D37160927CFF10954D279B2C5AD85E6E6DD56BABB683FC01D824C546E2E7
+A7FF73A1CC6330E05D3465A34440FF5581CF574F9F335CBB0F836628117819D9
+A8E4A579141A7E47EA1001A63FCA77DA6E55219BD89C64A75BE45FACB2F2E48C
+A7375404E79BC059AE2839C0FFBCC8F945678D95055046696F3F2B6D8B2D7539
+BBF07A064EFA2B75EBF04A6D780A6A496A6F25593220D413AE1E37D0A08A8713
+19D6A2500B3C6467FEE0940586E4B2C524F7C8C92924EEF47EC0ABC373DC1F43
+D3AE4879D6D4495DFEDCA0EAA8134F41D5329EAA414956F1398615D779F13AF6
+338D3255646B5BA8D9C75D24A5FA1F9B0B91EFD97236F9EA50286D83C6F1EE43
+B040FD84E62469D9CA5A946A9567D2706D33CB19BCCBFB19A9CE3CCBEFC058FD
+CFE63199D28E2841B458BA5E2CC0330094594FD4BAAA432B62E6F03C114E9D89
+7929597C7A8B16EE964614972FD47CD357E32D9E7581D407EB5FA16CB0D06517
+A3C9C88B756AF52975D8F419E5FFCF778499597748EA8EB85234BCAEB1AE8D2B
+BB70E887569E9FC08D981B3C76E5CEF81B0B32953B92AA61DE5EFAA5310C2F20
+5E2ABE8D48AE0230986FDBA94C8D0006C0DCA86B3CD91B979B5D68277FFB26A6
+046D331FEADDD50592D143CE3628AD080B314ABC5EFA22B58B65B629E173AEE0
+55890CEC63AE5C4ACA0594F055ED0F8400A367212541A3E6164B00AE6070499F
+1538603A87CBF4606E305005EE95335C411F2B396231F1B3756CE8B6EC95595F
+8C66A933F2EB729A381FD502B02470741F5F7D2909C6881697772023480FE87A
+E06E7FF3C7B165B53DE3531A35AC1C8C3EEAE32F44471249DA431B381F3042C1
+3D2E9750A33CB1416738B014EEFE93664B6856ABDD56FA5757EDD96949DC870A
+FDA5561452DA2B61C0126916D5B8DC5D776B6495920F8A56F9754A74A47F171A
+3697C75E6DE088AC7B7D7B3E8823DBBE4B66FBC2ECD8B907B428C0A5ADD93930
+45B92D9EEF1F64D9B364B4CDAF486C96B38304CAB171686B3F07019B87120B19
+64ADBC525F2261601C7BC5B17E0A1ABD4066EE6705697AE8C0992807CA3C8489
+70A76918BBBDFC662726E201C3EFF3A4626CDA05745446493CDFDC5D6C812DD5
+8CB7D705649C363FC0B111F3A6C7C0F233F79BBAEE2793C1A55561CA16B85B93
+69F84D39B401F72A8E4FE159DA89A217CA0B413F44B7592F16EBD523353E45D9
+F6DD625A39848DC224CB982A6B9F535D4A27E0BC3B2BF8EF45657E1EFBD0EBB8
+9BFBCD6E0FF339913592F43F0841F7FF864C296DD12580F0803FEDB1DA850D00
+9A8B3868F409581D04D73D356561D2E2E8020B5F62872C45381AE760D00DE6AC
+C62396DAE0585B6F0ECF75A1012A63A4D54073E2D80D3CC5743B3BD03D2B1D52
+933CD3E003F28333A88AB2F091D16424C4C9EE3BCCB901E40349C6E33858B246
+BC8788B03E7B983374A37E8618B8377E0556FC76C6C87B6B8F4763D21E00F892
+4B37190E27C266CF556A12338EE1335BC5890E9D86D1B248FB67A10C358D2DB9
+AB3FCD5288973C84880DE54D5512CE587A61933AFAB1669A0D2BDBBA85E0F8C5
+2C6D6E58871999D177C9B30AAB9CEC401EFC7BC457B8A00196D228CA0E12C709
+228419492684F9CFA0B7F764D2675B672E83A7E0F39AFC997B56C6E70A447795
+ACE4D67B2832C0689189CB6A9FDE481CD3A2CAB2BFE336B929AB0954251583C1
+72402167F089E58610DF14536C155092B6998BE9CD99736E122FD3A3FBCE1953
+EBA1ABE66038DFE8C440C98B77CF80E9CB60E3144C0D80AC23DBF8537D690162
+576A2120C201D3F2E4C38D466F7A9FF33C7A8DD9E39AB1E2DD0C044897655FC7
+6B996EEFB09D6E0536C59320F8971BB5E500970356A296220233B11E19BAB3A8
+03F82CE41B3751753C320025C53F1E6304EE6D9727FB9E61AE7D125D4F656F90
+35F8AB032DD3FDB56B3F99F7828E95DF01C1F094DECCDD3AC4CE2FECF037B4A8
+6DF94FD6738E8D487A4C76A82C223ECE7A50519E6C9CF02CB92EBE0FA1BF6BDF
+8CC79E6197F8E5EDC387660068C235010232B0ABEA843D722E265DA77D67FDAF
+2C0277C9BF9914C322A06EB63CF8D33CBC17C7C619A16D2A0553A2DE83192009
+E9228B7A1D17837E5F99772D0A684E50896859C1DD87B51D090AD6FC0D661F14
+9EA1EDCD97EB9200E4DDC04356EC05453DA0DB84C558C55C3B7CD0C8DE5F511F
+733E0AD84D1FD19474D58338D2FC530F11FB36FC72D529B4992606CE8D623850
+20B07D3B2AC91C7538A52BBE3DF079B0AB4DCC1EA2D51E3CB6321D2F92769893
+3A7D0AAAFD015AB189C1BDC9F8AF96185865E66F633A6BD74DD553B1D1B0FB66
+89CAAE8C7D0DD7A7EDC1F49E143B5AC0851330E64239DB148910C96834F9570A
+65736B1E973E0DC7B65531B9A36DC5725058C466CAA1A4EF667FC9AA5A3707C8
+4D5543F8933E3DD5E0B1B8C242CA7E8892BBF6CCD481AAA99B96522FA77C1227
+A7534D02E08FCE557A93BE74E8084CFDC916566C47CDE46989517FCCA718AF98
+7FF243F5D75FAFA39D49DD87150D8F62F91A869F12F53790D0F5818DC6842E51
+26D98AD2B3A25B04D7E19D4198B02E57444DCC86D3C62FE9E0D7129DAD344D1B
+F4C1EC4C8B096311109F5EB48A5EC3F4931EA134388F2B46B99F58410BACB788
+F4470FB91C8118C2A0212D5F8A4024B3B6DCB37BD1D216056B1E8763A0669EE9
+76835BB2234E86EFE2D6E4D7D882BFCFFCF29D4C553195A130C956CBA0B0ECFD
+699D14A277369E5A7A5F4C482681A23FC8C7523E4BA4BA8383994007125A06B7
+C21068BB8946DC829473503EC92C873E63B9CB8631D76365C619F110AD5EBB28
+1D690D791B69BF643559E753FEE9A611815846A2F45699BA4F1768F162ABE615
+AD05C737E64E3E0E5E2A92A030D29051F74C8D6B2BC5308820EFA5FE40279C41
+1D21332BDFEA24AF7143192D6146D9AF64BF827FB2A23F7FC66D0656A986D477
+D98F41AFDB453C3C762E1D729DB377A01E9D22EFFE6E5F39ECF66FBAE371392D
+D04C813F16764D194F60629538745909675CC6B087275FEC0C6DA3970135F43B
+54B3DEAACE34F3F5DE1813D6E445D15E230277B91F47DA19539DD198A9349340
+5888F8D44F26AC106E9D7D7BDD133DD32CDD56736126A4CF401252BDA1C2240A
+AD1653664A317A99B117BE4840A7F8A03A329846A0B927ABD28ACBAFBAACC426
+6E78328BFC11F47BE45195B5692A4EDE6FFB01FE2AB1B2678C39EEA39C74C576
+BE5D26667013087FECF4D6E397B54EFD44FEFFCA1ED10D1CEB2093C8FF01718F
+6E420C769B60BC91D4A28EAA6DF03C61869E96146CA42FEF5EC2ECAC9C2B3DE2
+E43F86CEDFB029B5455503B63766C4EF624D9A04508DDBB5C38C0DE662AB1FD3
+31EF92E1C39C8B1DF11D00A4A0908A3F6000A3A7FCF6F73C5738AB3271A5B75E
+CE01D536CAE4D86FEA334727961F1AF27A454947C737B44A3F528520B60B6200
+E81554075F94FD00C4A0852F44068CD096BCA5D6D3703BB886B8B5EC9B9E3B0C
+D5CEB91337B3B3A9E5173C2ACD3A3E3AB4A1B9BFAE1054640DFABD1F6B0C22BF
+363CB43B26262AF3BF8DE092B180FDC6C9BF4ACDED6C3BD0F7BA3D3684EACD5B
+235E557FF4CF03FB3335E7EAD0846C5753C68E510670D6DAE77E0BA5101E5C89
+A68847444E4B6CBD8A1ED036AABD5C76D7902F1CC3AAB4B7F65AF3097F9BBFCC
+3D79313CDF148613C31E5DD7B1DD974EF7EA50EA012F77DC1067323AA92553C5
+DDD670D1C5CA695290DF0579EA6335F7E34EE8EEBB219B75706106A0F2554F5A
+7D26D6E4A642CD3CE3580C69784E95235F5356C99909494ADF969A3DB253DE9D
+EA60768AE4AEDA02B9AEC2033D7784083105148ABD3CFBC816EB988B01F652C5
+A8C74C5FDDBFA5A13FFAEC90C77D932A9C41578D7DC49B11AD98DF75E7B7304E
+30BC2E8E0281B6D2FD57D00DB836384BEFBA8F517F6DDD7F9E030019F27F237D
+E5DBD0DB7D3A0A8DD34842FCF33770454A12DF553220F15F8916F064CDFBF9EB
+67FC0BF6BEA776851431277A23D6228F6D4A51857B72E165FAEDA87B1631CE28
+E6B0827F64FDB35CF48AEE923C80B53AFB84169EF6F1574A5643BB76B7331024
+55A7F52F64A41052134BC5AD2DC092B21B033C1C4024B03B360799368594AECD
+C42D45591F9875D46D5EE20EE703F1AD1C205E45D9845AD224C7D3F0EBB66F78
+ED96C162CD2CE58B5C18BB5D7938E06A860F7211B8B38FE9B849F58F8E809489
+7C6579EFB9632A0911E28DBFA491BB655A7C2AA6A833CBE87E740D3D2C
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
{restore}if
%%EndFont
TeXDict begin 40258431 52099146 1000 600 600 (bashref.dvi)
-@start /Fa 130[62 1[62 123[{}2 119.552 /CMTT12 rf /Fb
-133[34 41 41 55 41 43 30 30 30 41 43 38 43 64 21 41 23
-21 43 38 23 34 43 34 43 38 8[58 4[43 57 1[52 60 58 70
-3[28 58 3[59 1[54 58 7[38 38 38 38 38 38 38 38 38 38
-3[21 31[43 12[{}50 74.7198 /CMR9 rf /Fc 197[21 58[{}1
-74.7198 /CMMI9 rf /Fd 134[39 39 2[39 39 39 39 2[39 39
-39 39 2[39 39 2[39 3[39 19[39 27[39 39 2[39 45[{}18 74.7198
-/CMSLTT10 rf /Fe 129[39 39 1[39 39 39 39 39 39 39 39
+@start /Fa 131[62 124[{}1 119.552 /CMTT12 rf /Fb 133[34
+41 41 55 41 43 30 30 30 41 43 38 43 64 21 41 23 21 43
+38 23 34 43 34 43 38 8[58 4[43 57 1[52 60 58 70 3[28
+58 3[59 1[54 58 7[38 38 38 38 38 38 38 38 38 38 3[21
+31[43 12[{}50 74.7198 /CMR9 rf /Fc 197[21 58[{}1 74.7198
+/CMMI9 rf /Fd 134[39 39 2[39 39 39 39 2[39 39 39 39 2[39
+39 2[39 3[39 19[39 27[39 39 2[39 45[{}18 74.7198 /CMSLTT10
+rf /Fe 129[39 39 1[39 39 39 39 39 39 39 39 39 39 39 39
39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39 39
-39 39 39 39 39 1[39 39 39 39 39 39 39 39 39 39 1[39 39
-39 39 39 39 1[39 39 39 39 39 39 39 39 39 39 39 39 1[39
-39 39 5[39 39 39 39 39 39 39 39 39 1[39 39 39 39 39 1[39
-39 1[39 33[{}81 74.7198 /CMTT9 rf /Ff 167[62 3[60 46
-2[57 1[62 76 52 1[43 1[62 65 54 1[63 60 67[{}13 83.022
-/CMR10 rf /Fg 135[67 2[67 1[50 2[61 69 5[33 1[70 2[68
-52[60 47[{}9 109.174 /CMCSC10 rf /Fh 140[56 3[56 56 1[56
-2[56 56 56 57[56 45[{}8 109.091 /CMTT12 rf /Fi 134[48
-48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
-48 48 48 48 48 48 1[48 2[48 3[48 3[48 1[48 1[48 1[48
-48 48 1[48 48 48 1[48 48 48 48 1[48 6[48 6[48 48 48 48
-2[48 5[48 39[{}49 90.9091 /CMSLTT10 rf /Fj 134[65 65
-89 65 68 48 48 50 65 68 61 68 102 34 65 1[34 68 61 37
-56 68 55 68 60 34 6[93 1[127 1[94 85 68 92 92 84 92 96
+39 1[39 39 39 39 39 39 39 39 39 39 1[39 39 39 39 39 39
+1[39 39 39 39 39 39 39 39 39 39 39 39 1[39 39 39 5[39
+39 39 39 39 39 39 39 39 1[39 39 39 39 39 1[39 39 1[39
+33[{}81 74.7198 /CMTT9 rf /Ff 167[62 3[60 46 2[57 1[62
+76 52 1[43 1[62 65 54 1[63 60 67[{}13 83.022 /CMR10 rf
+/Fg 135[67 2[67 1[50 2[61 69 5[33 1[70 2[68 52[60 47[{}9
+109.174 /CMCSC10 rf /Fh 140[56 3[56 56 1[56 2[56 56 56
+57[56 45[{}8 109.091 /CMTT12 rf /Fi 130[45 1[45 123[{
+ T1Encoding ReEncodeFont }2 91.3242 /SFRM1095 rf /Fj
+134[48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
+48 48 48 48 48 48 48 48 1[48 2[48 3[48 3[48 1[48 1[48
+1[48 48 48 1[48 48 48 1[48 48 48 48 1[48 6[48 6[48 48
+48 48 2[48 5[48 39[{}49 90.9091 /CMSLTT10 rf /Fk 134[65
+65 89 65 68 48 48 50 65 68 61 68 102 34 65 1[34 68 61
+37 56 68 55 68 60 7[93 1[127 1[94 85 68 92 92 84 92 96
116 74 96 1[46 96 96 77 81 94 89 87 93 1[58 5[61 61 61
-61 61 61 61 61 61 61 1[34 41 34 4[34 26[68 72 11[{}64
-109.091 /CMBX12 rf /Fk 135[42 1[42 1[30 37 38 1[46 46
-51 74 23 2[28 1[42 1[42 46 42 1[46 51[33 32[51 12[{}18
-90.9091 /CMTI10 rf /Fl 135[56 2[56 1[42 55 1[51 58 56
-68 47 2[27 1[58 49 51 57 54 53 56 46[50 2[50 1[34 45[{}20
-90.9091 /CMCSC10 rf /Fm 197[25 58[{}1 90.9091 /CMMI10
-rf /Fn 197[33 58[{}1 119.552 /CMMI12 rf /Fo 134[85 85
-1[85 90 63 64 66 1[90 81 90 134 45 1[49 45 90 81 49 74
-90 72 90 78 10[122 124 112 90 120 3[126 153 97 1[83 60
-126 127 101 106 124 117 115 122 7[81 81 81 81 81 81 81
-81 81 81 35[90 94 11[{}52 143.462 /CMBX12 rf /Fp 200[0
-21[91 17[45 1[91 12[71{}5 90.9091 /CMSY10 rf /Fq 134[48
-48 66 48 51 35 36 36 48 51 45 51 76 25 48 28 25 51 45
-28 40 51 40 51 45 7[68 68 93 1[68 66 51 67 1[62 71 68
-83 57 71 1[33 68 71 59 62 69 66 64 68 12[45 45 45 45
-3[30 8[45 21[76 1[51 53 11[{}56 90.9091 /CMSL10 rf /Fr
-134[71 71 97 71 75 52 53 55 1[75 67 75 112 37 71 41 37
-75 67 41 61 75 60 75 65 3[37 1[37 1[102 102 139 102 103
-94 75 100 101 92 101 105 128 81 105 69 50 105 106 85
-88 103 97 96 102 105 64 4[37 67 67 67 67 67 67 67 67
-67 67 1[37 45 37 1[67 5[67 112 1[41 20[75 78 11[{}73
-119.552 /CMBX12 rf /Fs 129[48 48 48 48 48 48 48 48 48
+61 61 61 61 61 61 61 1[34 41 34 31[68 72 11[{}62 109.091
+/CMBX12 rf /Fl 135[42 1[42 1[30 37 38 1[46 46 51 74 23
+2[28 1[42 1[42 46 42 1[46 51[33 32[51 12[{}18 90.9091
+/CMTI10 rf /Fm 135[56 2[56 1[42 55 1[51 58 56 68 47 2[27
+1[58 49 51 57 54 53 56 46[50 2[50 1[34 45[{}20 90.9091
+/CMCSC10 rf /Fn 197[25 58[{}1 90.9091 /CMMI10 rf /Fo
+197[33 58[{}1 119.552 /CMMI12 rf /Fp 134[85 85 1[85 90
+63 64 66 1[90 81 90 134 45 1[49 45 90 81 49 74 90 72
+90 78 10[122 124 112 90 120 3[126 153 97 1[83 60 126
+127 101 106 124 117 115 122 7[81 81 81 81 81 81 81 81
+81 81 35[90 94 11[{}52 143.462 /CMBX12 rf /Fq 200[0 21[91
+17[45 1[91 12[71{}5 90.9091 /CMSY10 rf /Fr 134[48 48
+66 48 51 35 36 36 48 51 45 51 76 25 48 28 25 51 45 28
+40 51 40 51 45 7[68 68 93 1[68 66 51 67 1[62 71 68 83
+57 71 1[33 68 71 59 62 69 66 64 68 12[45 45 45 45 3[30
+8[45 21[76 1[51 53 11[{}56 90.9091 /CMSL10 rf /Fs 134[71
+71 97 71 75 52 53 55 1[75 67 75 112 37 71 41 37 75 67
+41 61 75 60 75 65 3[37 1[37 1[102 102 139 102 103 94
+75 100 101 92 101 105 128 81 105 69 50 105 106 85 88
+103 97 96 102 105 64 4[37 67 67 67 67 67 67 67 67 67
+67 1[37 45 37 1[67 5[67 112 1[41 20[75 78 11[{}73 119.552
+/CMBX12 rf /Ft 129[48 48 48 48 48 48 48 48 48 48 48 48
48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
-48 48 48 48 48 48 48 1[48 48 48 48 48 48 48 48 48 48
+48 48 48 48 1[48 48 48 48 48 48 48 48 48 48 48 48 48
48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48
-48 48 48 48 48 48 48 48 48 48 48 48 48 33[{}93 90.9091
-/CMTT10 rf /Ft 131[91 45 40 48 48 66 48 51 35 36 36 48
-51 45 51 76 25 48 28 25 51 45 28 40 51 40 51 45 25 2[25
-45 25 56 68 68 93 68 68 66 51 67 71 62 71 68 83 57 71
-47 33 68 71 59 62 69 66 64 68 1[43 1[71 1[25 25 45 45
-45 45 45 45 45 45 45 45 45 25 30 25 1[45 35 35 25 71
-76 45 1[45 25 18[76 51 51 53 11[{}89 90.9091 /CMR10 rf
-/Fu 138[108 1[76 79 3[108 1[54 3[108 1[59 88 1[86 1[94
+48 48 48 48 48 48 48 48 48 48 33[{}93 90.9091 /CMTT10
+rf /Fu 131[91 45 40 48 48 66 48 51 35 36 36 48 51 45
+51 76 25 48 28 25 51 45 28 40 51 40 51 45 25 2[25 45
+25 56 68 68 93 68 68 66 51 67 71 62 71 68 83 57 71 47
+33 68 71 59 62 69 66 64 68 71 43 1[71 1[25 25 45 45 45
+45 45 45 45 45 45 45 45 25 30 25 1[45 35 35 25 71 76
+45 76 45 25 18[76 51 51 53 11[{}91 90.9091 /CMR10 rf
+/Fv 138[108 1[76 79 3[108 1[54 3[108 1[59 88 1[86 1[94
14[144 4[184 10[138 66[{}13 172.154 /CMBX12 rf end
%%EndProlog
%%BeginSetup
end
%%EndSetup
%%Page: 1 1
-TeXDict begin 1 0 bop 150 1318 a Fu(Bash)64 b(Reference)j(Man)-5
-b(ual)p 150 1385 3600 34 v 2361 1481 a Ft(Reference)31
+TeXDict begin 1 0 bop 150 1318 a Fv(Bash)64 b(Reference)j(Man)-5
+b(ual)p 150 1385 3600 34 v 2361 1481 a Fu(Reference)31
b(Do)s(cumen)m(tation)i(for)d(Bash)2428 1589 y(Edition)h(4.3,)g(for)f
-Fs(Bash)g Ft(V)-8 b(ersion)31 b(4.3.)3217 1697 y(Octob)s(er)f(2013)150
-4935 y Fr(Chet)45 b(Ramey)-11 b(,)46 b(Case)g(W)-11 b(estern)46
+Ft(Bash)g Fu(V)-8 b(ersion)31 b(4.3.)3217 1697 y(Octob)s(er)f(2013)150
+4935 y Fs(Chet)45 b(Ramey)-11 b(,)46 b(Case)g(W)-11 b(estern)46
b(Reserv)l(e)g(Univ)l(ersit)l(y)150 5068 y(Brian)f(F)-11
b(o)l(x,)45 b(F)-11 b(ree)45 b(Soft)l(w)l(are)h(F)-11
b(oundation)p 150 5141 3600 17 v eop end
%%Page: 2 2
-TeXDict begin 2 1 bop 150 4279 a Ft(This)35 b(text)h(is)g(a)g(brief)f
+TeXDict begin 2 1 bop 150 4279 a Fu(This)35 b(text)h(is)g(a)g(brief)f
(description)h(of)f(the)h(features)g(that)g(are)g(presen)m(t)g(in)f
(the)h(Bash)f(shell)h(\(v)m(ersion)150 4389 y(4.3,)c(20)f(Octob)s(er)f
(2013\).)150 4523 y(This)35 b(is)g(Edition)h(4.3,)i(last)f(up)s(dated)d
-(20)i(Octob)s(er)g(2013,)j(of)c Fq(The)h(GNU)g(Bash)f(Reference)i(Man)m
-(ual)p Ft(,)150 4633 y(for)30 b Fs(Bash)p Ft(,)g(V)-8
+(20)i(Octob)s(er)g(2013,)j(of)c Fr(The)h(GNU)g(Bash)f(Reference)i(Man)m
+(ual)p Fu(,)150 4633 y(for)30 b Ft(Bash)p Fu(,)g(V)-8
b(ersion)31 b(4.3.)150 4767 y(Cop)m(yrigh)m(t)602 4764
-y(c)577 4767 y Fp(\015)f Ft(1988{2013)35 b(F)-8 b(ree)31
+y(c)577 4767 y Fq(\015)f Fu(1988{2013)35 b(F)-8 b(ree)31
b(Soft)m(w)m(are)h(F)-8 b(oundation,)31 b(Inc.)390 4902
y(P)m(ermission)21 b(is)f(gran)m(ted)h(to)g(cop)m(y)-8
b(,)24 b(distribute)c(and/or)h(mo)s(dify)e(this)i(do)s(cumen)m(t)f
5340 y(in)h(the)h(section)g(en)m(titled)h(\\GNU)f(F)-8
b(ree)32 b(Do)s(cumen)m(tation)g(License".)p eop end
%%Page: -1 3
-TeXDict begin -1 2 bop 3725 -116 a Ft(i)150 299 y Fo(T)-13
-b(able)53 b(of)h(Con)l(ten)l(ts)150 641 y Fr(1)135 b(In)l(tro)t
-(duction)13 b Fn(:)19 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g
+TeXDict begin -1 2 bop 3725 -116 a Fu(i)150 299 y Fp(T)-13
+b(able)53 b(of)h(Con)l(ten)l(ts)150 641 y Fs(1)135 b(In)l(tro)t
+(duction)13 b Fo(:)19 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)f(:)h(:)57 b Fr(1)275 778 y Ft(1.1)92
-b(What)31 b(is)f(Bash?)22 b Fm(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+g(:)h(:)f(:)h(:)f(:)h(:)57 b Fs(1)275 778 y Fu(1.1)92
+b(What)31 b(is)f(Bash?)22 b Fn(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
-(:)f(:)g(:)h(:)f(:)52 b Ft(1)275 888 y(1.2)92 b(What)31
-b(is)f(a)h(shell?)13 b Fm(:)j(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)g(:)h(:)f(:)52 b Fu(1)275 888 y(1.2)92 b(What)31
+b(is)f(a)h(shell?)13 b Fn(:)j(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
-(:)g(:)44 b Ft(1)150 1130 y Fr(2)135 b(De\014nitions)13
-b Fn(:)20 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)g(:)44 b Fu(1)150 1130 y Fs(2)135 b(De\014nitions)13
+b Fo(:)20 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)h(:)f(:)h(:)f(:)57 b Fr(3)150 1400 y(3)135 b(Basic)45
-b(Shell)g(F)-11 b(eatures)27 b Fn(:)21 b(:)e(:)g(:)h(:)f(:)h(:)f(:)h(:)
+f(:)h(:)f(:)h(:)f(:)57 b Fs(3)150 1400 y(3)135 b(Basic)45
+b(Shell)g(F)-11 b(eatures)27 b Fo(:)21 b(:)e(:)g(:)h(:)f(:)h(:)f(:)h(:)
f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h
-(:)f(:)72 b Fr(5)275 1537 y Ft(3.1)92 b(Shell)30 b(Syn)m(tax)25
-b Fm(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)72 b Fs(5)275 1537 y Fu(3.1)92 b(Shell)30 b(Syn)m(tax)25
+b Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)55
-b Ft(5)399 1646 y(3.1.1)93 b(Shell)30 b(Op)s(eration)c
-Fm(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g
+b Fu(5)399 1646 y(3.1.1)93 b(Shell)30 b(Op)s(eration)c
+Fn(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)56 b Ft(5)399 1756
-y(3.1.2)93 b(Quoting)15 b Fm(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)56 b Fu(5)399 1756
+y(3.1.2)93 b(Quoting)15 b Fn(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)f(:)45 b Ft(6)524 1866 y(3.1.2.1)93 b(Escap)s(e)30
-b(Character)11 b Fm(:)16 b(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+g(:)h(:)f(:)h(:)f(:)45 b Fu(6)524 1866 y(3.1.2.1)93 b(Escap)s(e)30
+b(Character)11 b Fn(:)16 b(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)h(:)f(:)h(:)f(:)41 b Ft(6)524 1975 y(3.1.2.2)93
-b(Single)31 b(Quotes)d Fm(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)41 b Fu(6)524 1975 y(3.1.2.2)93
+b(Single)31 b(Quotes)d Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)58 b Ft(6)524
-2085 y(3.1.2.3)93 b(Double)31 b(Quotes)26 b Fm(:)16 b(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)58 b Fu(6)524
+2085 y(3.1.2.3)93 b(Double)31 b(Quotes)26 b Fn(:)16 b(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)56
-b Ft(6)524 2194 y(3.1.2.4)93 b(ANSI-C)30 b(Quoting)d
-Fm(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+b Fu(6)524 2194 y(3.1.2.4)93 b(ANSI-C)30 b(Quoting)d
+Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)g(:)h(:)57 b Ft(6)524 2304 y(3.1.2.5)93 b(Lo)s(cale-Sp)s(eci\014c)
-32 b(T)-8 b(ranslation)8 b Fm(:)16 b(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+f(:)g(:)h(:)57 b Fu(6)524 2304 y(3.1.2.5)93 b(Lo)s(cale-Sp)s(eci\014c)
+32 b(T)-8 b(ranslation)8 b Fn(:)16 b(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h
-(:)38 b Ft(7)399 2413 y(3.1.3)93 b(Commen)m(ts)26 b Fm(:)15
+(:)38 b Fu(7)399 2413 y(3.1.3)93 b(Commen)m(ts)26 b Fn(:)15
b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)56 b
-Ft(7)275 2523 y(3.2)92 b(Shell)30 b(Commands)21 b Fm(:)14
+Fu(7)275 2523 y(3.2)92 b(Shell)30 b(Commands)21 b Fn(:)14
b(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)51 b Ft(8)399
-2633 y(3.2.1)93 b(Simple)30 b(Commands)c Fm(:)15 b(:)h(:)f(:)h(:)f(:)g
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)51 b Fu(8)399
+2633 y(3.2.1)93 b(Simple)30 b(Commands)c Fn(:)15 b(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)57
-b Ft(8)399 2742 y(3.2.2)93 b(Pip)s(elines)18 b Fm(:)d(:)g(:)h(:)f(:)g
+b Fu(8)399 2742 y(3.2.2)93 b(Pip)s(elines)18 b Fn(:)d(:)g(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h
-(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)48 b Ft(8)399
-2852 y(3.2.3)93 b(Lists)30 b(of)h(Commands)15 b Fm(:)f(:)h(:)h(:)f(:)g
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)48 b Fu(8)399
+2852 y(3.2.3)93 b(Lists)30 b(of)h(Commands)15 b Fn(:)f(:)h(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)
h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)45
-b Ft(9)399 2961 y(3.2.4)93 b(Comp)s(ound)28 b(Commands)22
-b Fm(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+b Fu(9)399 2961 y(3.2.4)93 b(Comp)s(ound)28 b(Commands)22
+b Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)g(:)54 b Ft(9)524 3071 y(3.2.4.1)93 b(Lo)s(oping)30
-b(Constructs)8 b Fm(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+f(:)g(:)54 b Fu(9)524 3071 y(3.2.4.1)93 b(Lo)s(oping)30
+b(Constructs)8 b Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)h(:)f(:)g(:)38 b Ft(10)524 3181 y(3.2.4.2)93 b(Conditional)31
-b(Constructs)18 b Fm(:)d(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+f(:)h(:)f(:)g(:)38 b Fu(10)524 3181 y(3.2.4.2)93 b(Conditional)31
+b(Constructs)18 b Fn(:)d(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)47
-b Ft(10)524 3290 y(3.2.4.3)93 b(Grouping)30 b(Commands)15
-b Fm(:)f(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+b Fu(10)524 3290 y(3.2.4.3)93 b(Grouping)30 b(Commands)15
+b Fn(:)f(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)45
-b Ft(14)399 3400 y(3.2.5)93 b(Copro)s(cesses)18 b Fm(:)d(:)g(:)h(:)f(:)
+b Fu(14)399 3400 y(3.2.5)93 b(Copro)s(cesses)18 b Fn(:)d(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)h(:)f(:)h(:)47 b Ft(15)399 3509 y(3.2.6)93
-b(GNU)31 b(P)m(arallel)c Fm(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+h(:)f(:)g(:)h(:)f(:)h(:)47 b Fu(15)399 3509 y(3.2.6)93
+b(GNU)31 b(P)m(arallel)c Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)55
-b Ft(15)275 3619 y(3.3)92 b(Shell)30 b(F)-8 b(unctions)29
-b Fm(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+b Fu(15)275 3619 y(3.3)92 b(Shell)30 b(F)-8 b(unctions)29
+b Fn(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)58
-b Ft(17)275 3729 y(3.4)92 b(Shell)30 b(P)m(arameters)17
-b Fm(:)f(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+b Fu(17)275 3729 y(3.4)92 b(Shell)30 b(P)m(arameters)17
+b Fn(:)f(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)46 b Ft(18)399
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)46 b Fu(18)399
3838 y(3.4.1)93 b(P)m(ositional)32 b(P)m(arameters)20
-b Fm(:)d(:)f(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+b Fn(:)d(:)f(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
-(:)f(:)50 b Ft(19)399 3948 y(3.4.2)93 b(Sp)s(ecial)30
-b(P)m(arameters)16 b Fm(:)h(:)f(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h
+(:)f(:)50 b Fu(19)399 3948 y(3.4.2)93 b(Sp)s(ecial)30
+b(P)m(arameters)16 b Fn(:)h(:)f(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h
(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)46 b Ft(20)275 4057
-y(3.5)92 b(Shell)30 b(Expansions)17 b Fm(:)d(:)h(:)h(:)f(:)h(:)f(:)g(:)
+f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)46 b Fu(20)275 4057
+y(3.5)92 b(Shell)30 b(Expansions)17 b Fn(:)d(:)h(:)h(:)f(:)h(:)f(:)g(:)
h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)g(:)h(:)46 b Ft(21)399 4167 y(3.5.1)93 b(Brace)31
-b(Expansion)21 b Fm(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+f(:)g(:)h(:)46 b Fu(21)399 4167 y(3.5.1)93 b(Brace)31
+b(Expansion)21 b Fn(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)50 b Ft(21)399
-4276 y(3.5.2)93 b(Tilde)30 b(Expansion)10 b Fm(:)15 b(:)h(:)f(:)g(:)h
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)50 b Fu(21)399
+4276 y(3.5.2)93 b(Tilde)30 b(Expansion)10 b Fn(:)15 b(:)h(:)f(:)g(:)h
(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
-(:)f(:)40 b Ft(22)399 4386 y(3.5.3)93 b(Shell)30 b(P)m(arameter)i
-(Expansion)18 b Fm(:)d(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+(:)f(:)40 b Fu(22)399 4386 y(3.5.3)93 b(Shell)30 b(P)m(arameter)i
+(Expansion)18 b Fn(:)d(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)
-48 b Ft(23)399 4496 y(3.5.4)93 b(Command)29 b(Substitution)12
-b Fm(:)j(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+48 b Fu(23)399 4496 y(3.5.4)93 b(Command)29 b(Substitution)12
+b Fn(:)j(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)42 b Ft(28)399 4605 y(3.5.5)93 b(Arithmetic)31 b(Expansion)19
-b Fm(:)c(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+(:)42 b Fu(28)399 4605 y(3.5.5)93 b(Arithmetic)31 b(Expansion)19
+b Fn(:)c(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)h(:)48 b Ft(28)399 4715 y(3.5.6)93 b(Pro)s(cess)30
-b(Substitution)d Fm(:)15 b(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)h(:)48 b Fu(28)399 4715 y(3.5.6)93 b(Pro)s(cess)30
+b(Substitution)d Fn(:)15 b(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)g(:)h(:)f(:)57 b Ft(29)399 4824 y(3.5.7)93
-b(W)-8 b(ord)31 b(Splitting)20 b Fm(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)57 b Fu(29)399 4824 y(3.5.7)93
+b(W)-8 b(ord)31 b(Splitting)20 b Fn(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)49
-b Ft(29)399 4934 y(3.5.8)93 b(Filename)32 b(Expansion)13
-b Fm(:)i(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+b Fu(29)399 4934 y(3.5.8)93 b(Filename)32 b(Expansion)13
+b Fn(:)i(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
-(:)f(:)h(:)f(:)43 b Ft(29)524 5044 y(3.5.8.1)93 b(P)m(attern)31
-b(Matc)m(hing)d Fm(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)f(:)h(:)f(:)43 b Fu(29)524 5044 y(3.5.8.1)93 b(P)m(attern)31
+b(Matc)m(hing)d Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-h(:)f(:)g(:)h(:)f(:)56 b Ft(30)399 5153 y(3.5.9)93 b(Quote)31
-b(Remo)m(v)-5 b(al)9 b Fm(:)17 b(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)g(:)h(:)f(:)56 b Fu(30)399 5153 y(3.5.9)93 b(Quote)31
+b(Remo)m(v)-5 b(al)9 b Fn(:)17 b(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)39
-b Ft(31)275 5263 y(3.6)92 b(Redirections)26 b Fm(:)15
+b Fu(31)275 5263 y(3.6)92 b(Redirections)26 b Fn(:)15
b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)55
-b Ft(31)p eop end
+b Fu(31)p eop end
%%Page: -2 4
-TeXDict begin -2 3 bop 3699 -116 a Ft(ii)399 83 y(3.6.1)93
-b(Redirecting)31 b(Input)23 b Fm(:)14 b(:)i(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+TeXDict begin -2 3 bop 3699 -116 a Fu(ii)399 83 y(3.6.1)93
+b(Redirecting)31 b(Input)23 b Fn(:)14 b(:)i(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)52
-b Ft(33)399 193 y(3.6.2)93 b(Redirecting)31 b(Output)26
-b Fm(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+b Fu(33)399 193 y(3.6.2)93 b(Redirecting)31 b(Output)26
+b Fn(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)h(:)56 b Ft(33)399 302 y(3.6.3)93 b(App)s(ending)28
-b(Redirected)k(Output)12 b Fm(:)h(:)j(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+h(:)f(:)g(:)h(:)56 b Fu(33)399 302 y(3.6.3)93 b(App)s(ending)28
+b(Redirected)k(Output)12 b Fn(:)h(:)j(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
-41 b Ft(33)399 412 y(3.6.4)93 b(Redirecting)31 b(Standard)e(Output)h
-(and)f(Standard)h(Error)d Fm(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)58
-b Ft(33)399 521 y(3.6.5)93 b(App)s(ending)28 b(Standard)i(Output)f(and)
-h(Standard)f(Error)19 b Fm(:)14 b(:)h(:)h(:)f(:)h(:)f(:)g(:)h(:)48
-b Ft(33)399 631 y(3.6.6)93 b(Here)31 b(Do)s(cumen)m(ts)c
-Fm(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+41 b Fu(33)399 412 y(3.6.4)93 b(Redirecting)31 b(Standard)e(Output)h
+(and)f(Standard)h(Error)d Fn(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)58
+b Fu(33)399 521 y(3.6.5)93 b(App)s(ending)28 b(Standard)i(Output)f(and)
+h(Standard)f(Error)19 b Fn(:)14 b(:)h(:)h(:)f(:)h(:)f(:)g(:)h(:)48
+b Fu(33)399 631 y(3.6.6)93 b(Here)31 b(Do)s(cumen)m(ts)c
+Fn(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)h(:)f(:)h(:)f(:)56 b Ft(34)399 741 y(3.6.7)93
-b(Here)31 b(Strings)c Fm(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)56 b Fu(34)399 741 y(3.6.7)93
+b(Here)31 b(Strings)c Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)58
-b Ft(34)399 850 y(3.6.8)93 b(Duplicating)32 b(File)f(Descriptors)16
-b Fm(:)g(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+b Fu(34)399 850 y(3.6.8)93 b(Duplicating)32 b(File)f(Descriptors)16
+b Fn(:)g(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)46
-b Ft(34)399 960 y(3.6.9)93 b(Mo)m(ving)32 b(File)f(Descriptors)19
-b Fm(:)d(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+b Fu(34)399 960 y(3.6.9)93 b(Mo)m(ving)32 b(File)f(Descriptors)19
+b Fn(:)d(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)49
-b Ft(35)399 1069 y(3.6.10)93 b(Op)s(ening)29 b(File)j(Descriptors)f
-(for)f(Reading)h(and)f(W)-8 b(riting)19 b Fm(:)e(:)e(:)h(:)f(:)h(:)f(:)
-49 b Ft(35)275 1179 y(3.7)92 b(Executing)31 b(Commands)17
-b Fm(:)d(:)h(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+b Fu(35)399 1069 y(3.6.10)93 b(Op)s(ening)29 b(File)j(Descriptors)f
+(for)f(Reading)h(and)f(W)-8 b(riting)19 b Fn(:)e(:)e(:)h(:)f(:)h(:)f(:)
+49 b Fu(35)275 1179 y(3.7)92 b(Executing)31 b(Commands)17
+b Fn(:)d(:)h(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)h(:)f(:)g(:)h(:)f(:)h(:)46 b Ft(35)399 1289 y(3.7.1)93
-b(Simple)30 b(Command)f(Expansion)23 b Fm(:)15 b(:)g(:)h(:)f(:)g(:)h(:)
+(:)h(:)f(:)g(:)h(:)f(:)h(:)46 b Fu(35)399 1289 y(3.7.1)93
+b(Simple)30 b(Command)f(Expansion)23 b Fn(:)15 b(:)g(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
-(:)g(:)h(:)f(:)h(:)52 b Ft(35)399 1398 y(3.7.2)93 b(Command)29
-b(Searc)m(h)i(and)f(Execution)d Fm(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)g(:)h(:)f(:)h(:)52 b Fu(35)399 1398 y(3.7.2)93 b(Command)29
+b(Searc)m(h)i(and)f(Execution)d Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)56
-b Ft(36)399 1508 y(3.7.3)93 b(Command)29 b(Execution)i(En)m(vironmen)m
-(t)8 b Fm(:)16 b(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)38 b Ft(36)399 1617
-y(3.7.4)93 b(En)m(vironmen)m(t)18 b Fm(:)d(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+b Fu(36)399 1508 y(3.7.3)93 b(Command)29 b(Execution)i(En)m(vironmen)m
+(t)8 b Fn(:)16 b(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)38 b Fu(36)399 1617
+y(3.7.4)93 b(En)m(vironmen)m(t)18 b Fn(:)d(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)h(:)47 b Ft(37)399 1727 y(3.7.5)93 b(Exit)31 b(Status)c
-Fm(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)h(:)47 b Fu(37)399 1727 y(3.7.5)93 b(Exit)31 b(Status)c
+Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)57 b
-Ft(38)399 1836 y(3.7.6)93 b(Signals)15 b Fm(:)g(:)g(:)h(:)f(:)h(:)f(:)g
+Fu(38)399 1836 y(3.7.6)93 b(Signals)15 b Fn(:)g(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
-(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)44 b Ft(38)275 1946
-y(3.8)92 b(Shell)30 b(Scripts)23 b Fm(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)44 b Fu(38)275 1946
+y(3.8)92 b(Shell)30 b(Scripts)23 b Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)f(:)g(:)h(:)53 b Ft(39)150 2188 y Fr(4)135
-b(Shell)45 b(Builtin)g(Commands)22 b Fn(:)e(:)g(:)f(:)h(:)f(:)h(:)f(:)g
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)53 b Fu(39)150 2188 y Fs(4)135
+b(Shell)45 b(Builtin)g(Commands)22 b Fo(:)e(:)g(:)f(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)67
-b Fr(41)275 2325 y Ft(4.1)92 b(Bourne)30 b(Shell)g(Builtins)e
-Fm(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+b Fs(41)275 2325 y Fu(4.1)92 b(Bourne)30 b(Shell)g(Builtins)e
+Fn(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)h(:)f(:)h(:)f(:)57 b Ft(41)275 2435 y(4.2)92
-b(Bash)30 b(Builtin)h(Commands)24 b Fm(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)57 b Fu(41)275 2435 y(4.2)92
+b(Bash)30 b(Builtin)h(Commands)24 b Fn(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)54
-b Ft(48)275 2545 y(4.3)92 b(Mo)s(difying)30 b(Shell)g(Beha)m(vior)9
-b Fm(:)17 b(:)f(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+b Fu(48)275 2545 y(4.3)92 b(Mo)s(difying)30 b(Shell)g(Beha)m(vior)9
+b Fn(:)17 b(:)f(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)39 b Ft(59)399 2654 y(4.3.1)93 b(The)30
-b(Set)g(Builtin)c Fm(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+h(:)f(:)h(:)f(:)39 b Fu(58)399 2654 y(4.3.1)93 b(The)30
+b(Set)g(Builtin)c Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)55 b
-Ft(59)399 2764 y(4.3.2)93 b(The)30 b(Shopt)f(Builtin)13
-b Fm(:)j(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+Fu(58)399 2764 y(4.3.2)93 b(The)30 b(Shopt)f(Builtin)13
+b Fn(:)j(:)g(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)h(:)f(:)h(:)f(:)g(:)43 b Ft(63)275 2873 y(4.4)92 b(Sp)s(ecial)30
-b(Builtins)21 b Fm(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+(:)h(:)f(:)h(:)f(:)g(:)43 b Fu(62)275 2873 y(4.4)92 b(Sp)s(ecial)30
+b(Builtins)21 b Fn(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)
g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)50
-b Ft(68)150 3116 y Fr(5)135 b(Shell)45 b(V)-11 b(ariables)19
-b Fn(:)h(:)g(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)
+b Fu(68)150 3116 y Fs(5)135 b(Shell)45 b(V)-11 b(ariables)19
+b Fo(:)h(:)g(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)64
-b Fr(69)275 3253 y Ft(5.1)92 b(Bourne)30 b(Shell)g(V)-8
-b(ariables)22 b Fm(:)16 b(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+b Fs(69)275 3253 y Fu(5.1)92 b(Bourne)30 b(Shell)g(V)-8
+b(ariables)22 b Fn(:)16 b(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)51 b Ft(69)275
-3362 y(5.2)92 b(Bash)30 b(V)-8 b(ariables)16 b Fm(:)h(:)f(:)f(:)h(:)f
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)51 b Fu(69)275
+3362 y(5.2)92 b(Bash)30 b(V)-8 b(ariables)16 b Fn(:)h(:)f(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
-(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)46 b Ft(69)150 3605 y
-Fr(6)135 b(Bash)44 b(F)-11 b(eatures)13 b Fn(:)20 b(:)g(:)f(:)g(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)46 b Fu(69)150 3605 y
+Fs(6)135 b(Bash)44 b(F)-11 b(eatures)13 b Fo(:)20 b(:)g(:)f(:)g(:)h(:)f
(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)58 b Fr(80)275
-3742 y Ft(6.1)92 b(In)m(v)m(oking)31 b(Bash)d Fm(:)16
+f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)58 b Fs(80)275
+3742 y Fu(6.1)92 b(In)m(v)m(oking)31 b(Bash)d Fn(:)16
b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)58 b
-Ft(80)275 3851 y(6.2)92 b(Bash)30 b(Startup)g(Files)20
-b Fm(:)c(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+Fu(80)275 3851 y(6.2)92 b(Bash)30 b(Startup)g(Files)20
+b Fn(:)c(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)49 b Ft(82)275
-3961 y(6.3)92 b(In)m(teractiv)m(e)32 b(Shells)11 b Fm(:)16
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)49 b Fu(82)275
+3961 y(6.3)92 b(In)m(teractiv)m(e)32 b(Shells)11 b Fn(:)16
b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)41 b Ft(83)399
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)41 b Fu(83)399
4071 y(6.3.1)93 b(What)31 b(is)f(an)h(In)m(teractiv)m(e)h(Shell?)17
-b Fm(:)f(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+b Fn(:)f(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)47 b
-Ft(84)399 4180 y(6.3.2)93 b(Is)30 b(this)g(Shell)g(In)m(teractiv)m(e?)
-14 b Fm(:)k(:)e(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+Fu(83)399 4180 y(6.3.2)93 b(Is)30 b(this)g(Shell)g(In)m(teractiv)m(e?)
+14 b Fn(:)k(:)e(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-44 b Ft(84)399 4290 y(6.3.3)93 b(In)m(teractiv)m(e)33
-b(Shell)d(Beha)m(vior)23 b Fm(:)17 b(:)e(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+44 b Fu(84)399 4290 y(6.3.3)93 b(In)m(teractiv)m(e)33
+b(Shell)d(Beha)m(vior)23 b Fn(:)17 b(:)e(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
-(:)g(:)h(:)f(:)h(:)52 b Ft(84)275 4399 y(6.4)92 b(Bash)30
-b(Conditional)h(Expressions)22 b Fm(:)14 b(:)i(:)f(:)g(:)h(:)f(:)h(:)f
+(:)g(:)h(:)f(:)h(:)52 b Fu(84)275 4399 y(6.4)92 b(Bash)30
+b(Conditional)h(Expressions)22 b Fn(:)14 b(:)i(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)f(:)g(:)h(:)51 b Ft(85)275 4509 y(6.5)92
-b(Shell)30 b(Arithmetic)c Fm(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)51 b Fu(85)275 4509 y(6.5)92
+b(Shell)30 b(Arithmetic)c Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)55 b Ft(87)275 4619 y(6.6)92 b(Aliases)12 b Fm(:)k(:)g(:)f(:)h(:)f
+(:)55 b Fu(87)275 4619 y(6.6)92 b(Aliases)12 b Fn(:)k(:)g(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)
g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)42
-b Ft(88)275 4728 y(6.7)92 b(Arra)m(ys)17 b Fm(:)e(:)h(:)f(:)h(:)f(:)g
+b Fu(88)275 4728 y(6.7)92 b(Arra)m(ys)17 b Fn(:)e(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)47
-b Ft(89)275 4838 y(6.8)92 b(The)29 b(Directory)j(Stac)m(k)e
-Fm(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+b Fu(89)275 4838 y(6.8)92 b(The)29 b(Directory)j(Stac)m(k)e
+Fn(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)58 b Ft(91)399 4947 y(6.8.1)93
-b(Directory)32 b(Stac)m(k)f(Builtins)14 b Fm(:)i(:)g(:)f(:)g(:)h(:)f(:)
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)58 b Fu(90)399 4947 y(6.8.1)93
+b(Directory)32 b(Stac)m(k)f(Builtins)14 b Fn(:)i(:)g(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)44 b Ft(91)275
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)44 b Fu(90)275
5057 y(6.9)92 b(Con)m(trolling)31 b(the)g(Prompt)24 b
-Fm(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+Fn(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)f(:)54 b Ft(92)275 5166 y(6.10)92 b(The)30
-b(Restricted)h(Shell)23 b Fm(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+g(:)h(:)f(:)h(:)f(:)54 b Fu(92)275 5166 y(6.10)92 b(The)30
+b(Restricted)h(Shell)23 b Fn(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)53
-b Ft(93)275 5276 y(6.11)92 b(Bash)31 b(POSIX)e(Mo)s(de)9
-b Fm(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+b Fu(93)275 5276 y(6.11)92 b(Bash)31 b(POSIX)e(Mo)s(de)9
+b Fn(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)38 b Ft(94)p eop
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)38 b Fu(94)p eop
end
%%Page: -3 5
-TeXDict begin -3 4 bop 3674 -116 a Ft(iii)150 83 y Fr(7)135
-b(Job)45 b(Con)l(trol)24 b Fn(:)c(:)g(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g
+TeXDict begin -3 4 bop 3674 -116 a Fu(iii)150 83 y Fs(7)135
+b(Job)45 b(Con)l(trol)24 b Fo(:)c(:)g(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)69 b Fr(98)275 220 y
-Ft(7.1)92 b(Job)30 b(Con)m(trol)h(Basics)17 b Fm(:)f(:)g(:)f(:)h(:)f(:)
+f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)69 b Fs(97)275 220 y
+Fu(7.1)92 b(Job)30 b(Con)m(trol)h(Basics)17 b Fn(:)f(:)g(:)f(:)h(:)f(:)
g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)47 b Ft(98)275 330 y(7.2)92 b(Job)30 b(Con)m(trol)h
-(Builtins)25 b Fm(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+g(:)h(:)f(:)47 b Fu(97)275 330 y(7.2)92 b(Job)30 b(Con)m(trol)h
+(Builtins)25 b Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
-(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)55 b Ft(99)275
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)55 b Fu(98)275
439 y(7.3)92 b(Job)30 b(Con)m(trol)h(V)-8 b(ariables)17
-b Fm(:)f(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+b Fn(:)f(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)h(:)f(:)h(:)f(:)g(:)47 b Ft(101)150 657 y Fr(8)135
-b(Command)45 b(Line)g(Editing)19 b Fn(:)i(:)e(:)h(:)f(:)h(:)f(:)g(:)h
+(:)h(:)f(:)h(:)f(:)g(:)47 b Fu(100)150 657 y Fs(8)135
+b(Command)45 b(Line)g(Editing)19 b Fo(:)i(:)e(:)h(:)f(:)h(:)f(:)g(:)h
(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)63
-b Fr(102)275 794 y Ft(8.1)92 b(In)m(tro)s(duction)30
-b(to)h(Line)f(Editing)24 b Fm(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+b Fs(101)275 794 y Fu(8.1)92 b(In)m(tro)s(duction)30
+b(to)h(Line)f(Editing)24 b Fn(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
-(:)g(:)h(:)f(:)h(:)f(:)54 b Ft(102)275 904 y(8.2)92 b(Readline)31
-b(In)m(teraction)c Fm(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+(:)g(:)h(:)f(:)h(:)f(:)54 b Fu(101)275 904 y(8.2)92 b(Readline)31
+b(In)m(teraction)c Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
-(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)56 b Ft(102)399
+(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)56 b Fu(101)399
1013 y(8.2.1)93 b(Readline)31 b(Bare)g(Essen)m(tials)26
-b Fm(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+b Fn(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)55
-b Ft(103)399 1123 y(8.2.2)93 b(Readline)31 b(Mo)m(v)m(emen)m(t)i
-(Commands)24 b Fm(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
+b Fu(102)399 1123 y(8.2.2)93 b(Readline)31 b(Mo)m(v)m(emen)m(t)i
+(Commands)24 b Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)55 b
-Ft(103)399 1233 y(8.2.3)93 b(Readline)31 b(Killing)g(Commands)16
-b Fm(:)f(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+Fu(102)399 1233 y(8.2.3)93 b(Readline)31 b(Killing)g(Commands)16
+b Fn(:)f(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)46 b
-Ft(104)399 1342 y(8.2.4)93 b(Readline)31 b(Argumen)m(ts)9
-b Fm(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+Fu(103)399 1342 y(8.2.4)93 b(Readline)31 b(Argumen)m(ts)9
+b Fn(:)15 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)39 b Ft(104)399 1452 y(8.2.5)93 b(Searc)m(hing)31
-b(for)f(Commands)f(in)h(the)h(History)c Fm(:)15 b(:)h(:)f(:)h(:)f(:)g
-(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)57 b Ft(104)275
-1561 y(8.3)92 b(Readline)31 b(Init)f(File)20 b Fm(:)d(:)e(:)h(:)f(:)g
+g(:)h(:)f(:)39 b Fu(103)399 1452 y(8.2.5)93 b(Searc)m(hing)31
+b(for)f(Commands)f(in)h(the)h(History)c Fn(:)15 b(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)57 b Fu(103)275
+1561 y(8.3)92 b(Readline)31 b(Init)f(File)20 b Fn(:)d(:)e(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)h(:)f(:)h(:)50 b Ft(105)399 1671 y(8.3.1)93 b(Readline)31
-b(Init)f(File)i(Syn)m(tax)12 b Fm(:)k(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
+(:)h(:)f(:)h(:)50 b Fu(104)399 1671 y(8.3.1)93 b(Readline)31
+b(Init)f(File)i(Syn)m(tax)12 b Fn(:)k(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)g(:)h(:)f(:)h(:)42 b Ft(105)399 1781 y(8.3.2)93 b(Conditional)31
-b(Init)f(Constructs)25 b Fm(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+f(:)g(:)h(:)f(:)h(:)42 b Fu(104)399 1781 y(8.3.2)93 b(Conditional)31
+b(Init)f(Constructs)25 b Fn(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)56 b Ft(112)399 1890 y(8.3.3)93 b(Sample)30 b(Init)g(File)12
-b Fm(:)17 b(:)e(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+g(:)56 b Fu(111)399 1890 y(8.3.3)93 b(Sample)30 b(Init)g(File)12
+b Fn(:)17 b(:)e(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)g(:)h(:)f(:)42 b Ft(113)275 2000 y(8.4)92
-b(Bindable)30 b(Readline)h(Commands)11 b Fm(:)k(:)g(:)g(:)h(:)f(:)h(:)f
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)42 b Fu(112)275 2000 y(8.4)92
+b(Bindable)30 b(Readline)h(Commands)11 b Fn(:)k(:)g(:)g(:)h(:)f(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)f(:)g(:)h(:)41 b Ft(116)399 2109 y(8.4.1)93
-b(Commands)29 b(F)-8 b(or)31 b(Mo)m(ving)e Fm(:)16 b(:)f(:)h(:)f(:)g(:)
+g(:)h(:)f(:)h(:)f(:)g(:)h(:)41 b Fu(115)399 2109 y(8.4.1)93
+b(Commands)29 b(F)-8 b(or)31 b(Mo)m(ving)e Fn(:)16 b(:)f(:)h(:)f(:)g(:)
h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
-(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)58 b Ft(116)399
+(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)58 b Fu(115)399
2219 y(8.4.2)93 b(Commands)29 b(F)-8 b(or)31 b(Manipulating)g(The)f
-(History)17 b Fm(:)g(:)e(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)47 b Ft(117)399 2328 y(8.4.3)93 b(Commands)29 b(F)-8
-b(or)31 b(Changing)f(T)-8 b(ext)21 b Fm(:)c(:)e(:)h(:)f(:)h(:)f(:)g(:)h
+(History)17 b Fn(:)g(:)e(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+h(:)47 b Fu(116)399 2328 y(8.4.3)93 b(Commands)29 b(F)-8
+b(or)31 b(Changing)f(T)-8 b(ext)21 b Fn(:)c(:)e(:)h(:)f(:)h(:)f(:)g(:)h
(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-51 b Ft(118)399 2438 y(8.4.4)93 b(Killing)31 b(And)e(Y)-8
-b(anking)22 b Fm(:)17 b(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+51 b Fu(117)399 2438 y(8.4.4)93 b(Killing)31 b(And)e(Y)-8
+b(anking)22 b Fn(:)17 b(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
-f(:)g(:)h(:)f(:)h(:)52 b Ft(119)399 2548 y(8.4.5)93 b(Sp)s(ecifying)30
-b(Numeric)g(Argumen)m(ts)17 b Fm(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+f(:)g(:)h(:)f(:)h(:)52 b Fu(118)399 2548 y(8.4.5)93 b(Sp)s(ecifying)30
+b(Numeric)g(Argumen)m(ts)17 b Fn(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)47
-b Ft(120)399 2657 y(8.4.6)93 b(Letting)31 b(Readline)g(T)m(yp)s(e)f(F)
--8 b(or)31 b(Y)-8 b(ou)12 b Fm(:)k(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+b Fu(119)399 2657 y(8.4.6)93 b(Letting)31 b(Readline)g(T)m(yp)s(e)f(F)
+-8 b(or)31 b(Y)-8 b(ou)12 b Fn(:)k(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)42
-b Ft(121)399 2767 y(8.4.7)93 b(Keyb)s(oard)29 b(Macros)21
-b Fm(:)16 b(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+b Fu(120)399 2767 y(8.4.7)93 b(Keyb)s(oard)29 b(Macros)21
+b Fn(:)16 b(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)f(:)g(:)51 b Ft(122)399 2876 y(8.4.8)93 b(Some)30
-b(Miscellaneous)j(Commands)24 b Fm(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+h(:)f(:)h(:)f(:)g(:)51 b Fu(121)399 2876 y(8.4.8)93 b(Some)30
+b(Miscellaneous)j(Commands)24 b Fn(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)55
-b Ft(123)275 2986 y(8.5)92 b(Readline)31 b(vi)f(Mo)s(de)20
-b Fm(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
+b Fu(122)275 2986 y(8.5)92 b(Readline)31 b(vi)f(Mo)s(de)20
+b Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)50 b Ft(125)275
-3096 y(8.6)92 b(Programmable)30 b(Completion)16 b Fm(:)g(:)f(:)h(:)f(:)
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)50 b Fu(124)275
+3096 y(8.6)92 b(Programmable)30 b(Completion)16 b Fn(:)g(:)f(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)46
-b Ft(125)275 3205 y(8.7)92 b(Programmable)30 b(Completion)h(Builtins)c
-Fm(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)56 b Ft(127)275
+b Fu(124)275 3205 y(8.7)92 b(Programmable)30 b(Completion)h(Builtins)c
+Fn(:)15 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)56 b Fu(126)275
3315 y(8.8)92 b(A)30 b(Programmable)h(Completion)g(Example)20
-b Fm(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
-(:)f(:)g(:)h(:)f(:)h(:)f(:)50 b Ft(131)150 3533 y Fr(9)135
-b(Using)45 b(History)h(In)l(teractiv)l(ely)39 b Fn(:)19
+b Fn(:)15 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+(:)f(:)g(:)h(:)f(:)h(:)f(:)50 b Fu(130)150 3533 y Fs(9)135
+b(Using)45 b(History)h(In)l(teractiv)l(ely)39 b Fo(:)19
b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)80
-b Fr(134)275 3670 y Ft(9.1)92 b(Bash)30 b(History)h(F)-8
-b(acilities)21 b Fm(:)d(:)e(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+b Fs(133)275 3670 y Fu(9.1)92 b(Bash)30 b(History)h(F)-8
+b(acilities)21 b Fn(:)d(:)e(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)51 b Ft(134)275 3779
-y(9.2)92 b(Bash)30 b(History)h(Builtins)19 b Fm(:)d(:)g(:)f(:)g(:)h(:)f
+g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)51 b Fu(133)275 3779
+y(9.2)92 b(Bash)30 b(History)h(Builtins)19 b Fn(:)d(:)g(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)49
-b Ft(134)275 3889 y(9.3)92 b(History)31 b(Expansion)21
-b Fm(:)15 b(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+b Fu(133)275 3889 y(9.3)92 b(History)31 b(Expansion)21
+b Fn(:)15 b(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)52 b Ft(136)399 3999
-y(9.3.1)93 b(Ev)m(en)m(t)31 b(Designators)10 b Fm(:)18
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)52 b Fu(135)399 3999
+y(9.3.1)93 b(Ev)m(en)m(t)31 b(Designators)10 b Fn(:)18
b(:)d(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
-h(:)f(:)h(:)40 b Ft(137)399 4108 y(9.3.2)93 b(W)-8 b(ord)31
-b(Designators)17 b Fm(:)g(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+h(:)f(:)h(:)40 b Fu(135)399 4108 y(9.3.2)93 b(W)-8 b(ord)31
+b(Designators)17 b Fn(:)g(:)e(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)47 b Ft(137)399 4218
-y(9.3.3)93 b(Mo)s(di\014ers)26 b Fm(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)47 b Fu(136)399 4218
+y(9.3.3)93 b(Mo)s(di\014ers)26 b Fn(:)16 b(:)f(:)h(:)f(:)g(:)h(:)f(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
-(:)f(:)g(:)h(:)57 b Ft(138)150 4436 y Fr(10)135 b(Installing)46
-b(Bash)24 b Fn(:)c(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)f(:)g(:)h(:)57 b Fu(137)150 4436 y Fs(10)135 b(Installing)46
+b(Bash)24 b Fo(:)c(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)68
-b Fr(139)275 4573 y Ft(10.1)92 b(Basic)32 b(Installation)20
-b Fm(:)d(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
+b Fs(138)275 4573 y Fu(10.1)92 b(Basic)32 b(Installation)20
+b Fn(:)d(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)50 b Ft(139)275 4682
-y(10.2)92 b(Compilers)30 b(and)g(Options)8 b Fm(:)15
+(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)50 b Fu(138)275 4682
+y(10.2)92 b(Compilers)30 b(and)g(Options)8 b Fn(:)15
b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)38 b Ft(140)275 4792 y(10.3)92 b(Compiling)30
-b(F)-8 b(or)32 b(Multiple)f(Arc)m(hitectures)21 b Fm(:)c(:)e(:)h(:)f(:)
+f(:)h(:)38 b Fu(139)275 4792 y(10.3)92 b(Compiling)30
+b(F)-8 b(or)32 b(Multiple)f(Arc)m(hitectures)21 b Fn(:)c(:)e(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
-(:)52 b Ft(140)275 4902 y(10.4)92 b(Installation)32 b(Names)13
-b Fm(:)j(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
+(:)52 b Fu(139)275 4902 y(10.4)92 b(Installation)32 b(Names)13
+b Fn(:)j(:)g(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
-(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)43 b Ft(140)275 5011 y(10.5)92
-b(Sp)s(ecifying)30 b(the)g(System)h(T)m(yp)s(e)12 b Fm(:)j(:)g(:)h(:)f
+(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)43 b Fu(139)275 5011 y(10.5)92
+b(Sp)s(ecifying)30 b(the)g(System)h(T)m(yp)s(e)12 b Fn(:)j(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)
-g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)42 b Ft(140)275
-5121 y(10.6)92 b(Sharing)30 b(Defaults)15 b Fm(:)i(:)e(:)g(:)h(:)f(:)h
+g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)42 b Fu(139)275
+5121 y(10.6)92 b(Sharing)30 b(Defaults)15 b Fn(:)i(:)e(:)g(:)h(:)f(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)
h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
-(:)f(:)g(:)46 b Ft(141)275 5230 y(10.7)92 b(Op)s(eration)30
-b(Con)m(trols)24 b Fm(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
+(:)f(:)g(:)46 b Fu(140)275 5230 y(10.7)92 b(Op)s(eration)30
+b(Con)m(trols)24 b Fn(:)16 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
-(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)54 b Ft(141)275
-5340 y(10.8)92 b(Optional)31 b(F)-8 b(eatures)10 b Fm(:)17
+(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)54 b Fu(140)275
+5340 y(10.8)92 b(Optional)31 b(F)-8 b(eatures)10 b Fn(:)17
b(:)e(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)g(:)h(:)f(:)h(:)40 b Ft(141)p eop end
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)40 b Fu(140)p eop end
%%Page: -4 6
-TeXDict begin -4 5 bop 3677 -116 a Ft(iv)150 83 y Fr(App)t(endix)44
-b(A)160 b(Rep)t(orting)46 b(Bugs)35 b Fn(:)20 b(:)f(:)g(:)h(:)f(:)h(:)f
-(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)80 b Fr(146)150
+TeXDict begin -4 5 bop 3677 -116 a Fu(iv)150 83 y Fs(App)t(endix)44
+b(A)160 b(Rep)t(orting)46 b(Bugs)35 b Fo(:)20 b(:)f(:)g(:)h(:)f(:)h(:)f
+(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)80 b Fs(145)150
353 y(App)t(endix)44 b(B)166 b(Ma)7 b(jor)45 b(Di\013erences)i(F)-11
-b(rom)44 b(The)419 486 y(Bourne)g(Shell)35 b Fn(:)19
+b(rom)44 b(The)419 486 y(Bourne)g(Shell)35 b Fo(:)19
b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)78
-b Fr(147)275 623 y Ft(B.1)92 b(Implemen)m(tation)31 b(Di\013erences)h
-(F)-8 b(rom)31 b(The)e(SVR4.2)j(Shell)13 b Fm(:)i(:)h(:)f(:)h(:)f(:)g
-(:)h(:)f(:)h(:)43 b Ft(151)150 865 y Fr(App)t(endix)h(C)165
+b Fs(146)275 623 y Fu(B.1)92 b(Implemen)m(tation)31 b(Di\013erences)h
+(F)-8 b(rom)31 b(The)e(SVR4.2)j(Shell)13 b Fn(:)i(:)h(:)f(:)h(:)f(:)g
+(:)h(:)f(:)h(:)43 b Fu(150)150 865 y Fs(App)t(endix)h(C)165
b(GNU)45 b(F)-11 b(ree)45 b(Do)t(cumen)l(tation)h(License)439
-998 y Fn(:)19 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g
+998 y Fo(:)19 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)h(:)f(:)
g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)64
-b Fr(153)150 1268 y(App)t(endix)44 b(D)159 b(Indexes)15
-b Fn(:)20 b(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f
-(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)59 b Fr(161)275
-1405 y Ft(D.1)92 b(Index)29 b(of)i(Shell)f(Builtin)h(Commands)16
-b Fm(:)e(:)i(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
-h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)46 b Ft(161)275
+b Fs(152)150 1268 y(App)t(endix)44 b(D)159 b(Indexes)15
+b Fo(:)20 b(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f
+(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)59 b Fs(160)275
+1405 y Fu(D.1)92 b(Index)29 b(of)i(Shell)f(Builtin)h(Commands)16
+b Fn(:)e(:)i(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)
+h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)46 b Fu(160)275
1514 y(D.2)92 b(Index)29 b(of)i(Shell)f(Reserv)m(ed)h(W)-8
-b(ords)12 b Fm(:)j(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
+b(ords)12 b Fn(:)j(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)42
-b Ft(162)275 1624 y(D.3)92 b(P)m(arameter)31 b(and)f(V)-8
-b(ariable)32 b(Index)20 b Fm(:)14 b(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+b Fu(161)275 1624 y(D.3)92 b(P)m(arameter)31 b(and)f(V)-8
+b(ariable)32 b(Index)20 b Fn(:)14 b(:)i(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)50 b Ft(162)275 1733 y(D.4)92 b(F)-8 b(unction)31
-b(Index)16 b Fm(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
+f(:)h(:)f(:)50 b Fu(161)275 1733 y(D.4)92 b(F)-8 b(unction)31
+b(Index)16 b Fn(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)
f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)47
-b Ft(164)275 1843 y(D.5)92 b(Concept)30 b(Index)d Fm(:)15
+b Fu(163)275 1843 y(D.5)92 b(Concept)30 b(Index)d Fn(:)15
b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)h(:)f(:)g(:)h(:)
-f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)57 b Ft(166)p
+f(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)57 b Fu(165)p
eop end
%%Page: 1 7
-TeXDict begin 1 6 bop 150 -116 a Ft(Chapter)30 b(1:)41
-b(In)m(tro)s(duction)2592 b(1)150 299 y Fo(1)80 b(In)l(tro)t(duction)
-150 602 y Fr(1.1)68 b(What)45 b(is)g(Bash?)150 762 y
-Ft(Bash)38 b(is)g(the)g(shell,)i(or)d(command)h(language)h(in)m
-(terpreter,)h(for)e(the)g Fl(gnu)f Ft(op)s(erating)h(system.)63
+TeXDict begin 1 6 bop 150 -116 a Fu(Chapter)30 b(1:)41
+b(In)m(tro)s(duction)2592 b(1)150 299 y Fp(1)80 b(In)l(tro)t(duction)
+150 602 y Fs(1.1)68 b(What)45 b(is)g(Bash?)150 762 y
+Fu(Bash)38 b(is)g(the)g(shell,)i(or)d(command)h(language)h(in)m
+(terpreter,)h(for)e(the)g Fm(gnu)f Fu(op)s(erating)h(system.)63
b(The)150 871 y(name)33 b(is)g(an)g(acron)m(ym)g(for)g(the)g(`)p
-Fs(Bourne-Again)27 b(SHell)p Ft(',)32 b(a)i(pun)d(on)i(Stephen)f
+Ft(Bourne-Again)27 b(SHell)p Fu(',)32 b(a)i(pun)d(on)i(Stephen)f
(Bourne,)h(the)g(author)150 981 y(of)f(the)f(direct)h(ancestor)h(of)e
-(the)h(curren)m(t)f(Unix)g(shell)h Fs(sh)p Ft(,)f(whic)m(h)g(app)s
+(the)h(curren)m(t)f(Unix)g(shell)h Ft(sh)p Fu(,)f(whic)m(h)g(app)s
(eared)g(in)g(the)h(Sev)m(en)m(th)g(Edition)150 1091
y(Bell)g(Labs)e(Researc)m(h)h(v)m(ersion)g(of)f(Unix.)275
-1220 y(Bash)f(is)g(largely)i(compatible)f(with)f Fs(sh)g
-Ft(and)g(incorp)s(orates)g(useful)g(features)g(from)g(the)g(Korn)g
-(shell)150 1330 y Fs(ksh)37 b Ft(and)h(the)g(C)g(shell)g
-Fs(csh)p Ft(.)64 b(It)38 b(is)g(in)m(tended)g(to)h(b)s(e)f(a)g
-(conforman)m(t)h(implemen)m(tation)h(of)e(the)g Fl(ieee)150
-1439 y(posix)c Ft(Shell)g(and)g(T)-8 b(o)s(ols)35 b(p)s(ortion)f(of)g
-(the)h Fl(ieee)f(posix)f Ft(sp)s(eci\014cation)j(\()p
-Fl(ieee)e Ft(Standard)f(1003.1\).)56 b(It)150 1549 y(o\013ers)31
-b(functional)f(impro)m(v)m(emen)m(ts)i(o)m(v)m(er)g Fs(sh)d
-Ft(for)i(b)s(oth)e(in)m(teractiv)m(e)k(and)d(programming)g(use.)275
-1679 y(While)h(the)g Fl(gnu)f Ft(op)s(erating)h(system)g(pro)m(vides)f
+1220 y(Bash)f(is)g(largely)i(compatible)f(with)f Ft(sh)g
+Fu(and)g(incorp)s(orates)g(useful)g(features)g(from)g(the)g(Korn)g
+(shell)150 1330 y Ft(ksh)37 b Fu(and)h(the)g(C)g(shell)g
+Ft(csh)p Fu(.)64 b(It)38 b(is)g(in)m(tended)g(to)h(b)s(e)f(a)g
+(conforman)m(t)h(implemen)m(tation)h(of)e(the)g Fm(ieee)150
+1439 y(posix)c Fu(Shell)g(and)g(T)-8 b(o)s(ols)35 b(p)s(ortion)f(of)g
+(the)h Fm(ieee)f(posix)f Fu(sp)s(eci\014cation)j(\()p
+Fm(ieee)e Fu(Standard)f(1003.1\).)56 b(It)150 1549 y(o\013ers)31
+b(functional)f(impro)m(v)m(emen)m(ts)i(o)m(v)m(er)g Ft(sh)d
+Fu(for)i(b)s(oth)e(in)m(teractiv)m(e)k(and)d(programming)g(use.)275
+1679 y(While)h(the)g Fm(gnu)f Fu(op)s(erating)h(system)g(pro)m(vides)f
(other)h(shells,)g(including)f(a)h(v)m(ersion)g(of)g
-Fs(csh)p Ft(,)f(Bash)150 1788 y(is)j(the)h(default)f(shell.)49
-b(Lik)m(e)34 b(other)g Fl(gnu)f Ft(soft)m(w)m(are,)i(Bash)f(is)f(quite)
+Ft(csh)p Fu(,)f(Bash)150 1788 y(is)j(the)h(default)f(shell.)49
+b(Lik)m(e)34 b(other)g Fm(gnu)f Fu(soft)m(w)m(are,)i(Bash)f(is)f(quite)
h(p)s(ortable.)49 b(It)33 b(curren)m(tly)g(runs)f(on)150
1898 y(nearly)c(ev)m(ery)g(v)m(ersion)g(of)f(Unix)h(and)e(a)i(few)f
-(other)h(op)s(erating)g(systems)f Fp(\000)g Ft(indep)s(enden)m
+(other)h(op)s(erating)g(systems)f Fq(\000)g Fu(indep)s(enden)m
(tly-supp)s(orted)150 2008 y(p)s(orts)j(exist)h(for)f
-Fl(ms-dos)p Ft(,)f Fl(os/2)p Ft(,)i(and)f(Windo)m(ws)g(platforms.)150
-2231 y Fr(1.2)68 b(What)45 b(is)g(a)h(shell?)150 2390
-y Ft(A)m(t)32 b(its)f(base,)h(a)f(shell)g(is)h(simply)e(a)h(macro)h
+Fm(ms-dos)p Fu(,)f Fm(os/2)p Fu(,)i(and)f(Windo)m(ws)g(platforms.)150
+2231 y Fs(1.2)68 b(What)45 b(is)g(a)h(shell?)150 2390
+y Fu(A)m(t)32 b(its)f(base,)h(a)f(shell)g(is)h(simply)e(a)h(macro)h
(pro)s(cessor)f(that)g(executes)i(commands.)42 b(The)30
b(term)h(macro)150 2500 y(pro)s(cessor)25 b(means)g(functionalit)m(y)i
(where)d(text)j(and)d(sym)m(b)s(ols)h(are)h(expanded)e(to)i(create)h
(is)f(b)s(oth)g(a)h(command)g(in)m(terpreter)g(and)f(a)h(programming)f
(language.)55 b(As)35 b(a)g(com-)150 2848 y(mand)30 b(in)m(terpreter,)i
(the)g(shell)f(pro)m(vides)g(the)h(user)e(in)m(terface)j(to)f(the)f
-(ric)m(h)h(set)g(of)f Fl(gnu)g Ft(utilities.)44 b(The)150
+(ric)m(h)h(set)g(of)f Fm(gnu)g Fu(utilities.)44 b(The)150
2958 y(programming)30 b(language)h(features)f(allo)m(w)h(these)g
(utilities)g(to)g(b)s(e)e(com)m(bined.)41 b(Files)31
b(con)m(taining)g(com-)150 3068 y(mands)e(can)i(b)s(e)e(created,)j(and)
d(b)s(ecome)i(commands)f(themselv)m(es.)42 b(These)30
-b(new)f(commands)h(ha)m(v)m(e)i(the)150 3177 y(same)f(status)h(as)f
-(system)g(commands)g(in)g(directories)h(suc)m(h)f(as)g(`)p
-Fs(/bin)p Ft(',)g(allo)m(wing)i(users)d(or)h(groups)f(to)150
-3287 y(establish)h(custom)f(en)m(vironmen)m(ts)h(to)g(automate)h(their)
+b(new)f(commands)h(ha)m(v)m(e)i(the)150 3177 y(same)j(status)g(as)g
+(system)g(commands)f(in)g(directories)i(suc)m(h)e(as)h
+Ft(/bin)p Fu(,)g(allo)m(wing)h(users)e(or)g(groups)g(to)150
+3287 y(establish)d(custom)f(en)m(vironmen)m(ts)h(to)g(automate)h(their)
f(common)f(tasks.)275 3417 y(Shells)j(ma)m(y)h(b)s(e)f(used)g(in)m
(teractiv)m(ely)k(or)d(non-in)m(teractiv)m(ely)-8 b(.)54
b(In)33 b(in)m(teractiv)m(e)j(mo)s(de,)f(they)e(accept)150
b(When)22 b(executing)i(non-in)m(teractiv)m(ely)-8 b(,)27
b(shells)c(execute)g(commands)150 3636 y(read)30 b(from)g(a)h(\014le.)
275 3765 y(A)41 b(shell)g(allo)m(ws)h(execution)h(of)e
-Fl(gnu)g Ft(commands,)i(b)s(oth)e(sync)m(hronously)f(and)h(async)m
+Fm(gnu)g Fu(commands,)i(b)s(oth)e(sync)m(hronously)f(and)h(async)m
(hronously)-8 b(.)150 3875 y(The)29 b(shell)g(w)m(aits)i(for)e(sync)m
(hronous)f(commands)h(to)h(complete)h(b)s(efore)e(accepting)i(more)e
(input;)g(asyn-)150 3985 y(c)m(hronous)22 b(commands)h(con)m(tin)m(ue)h
(to)f(execute)h(in)e(parallel)i(with)f(the)f(shell)h(while)g(it)g
(reads)g(and)f(executes)150 4094 y(additional)35 b(commands.)50
-b(The)33 b Fq(redirection)h Ft(constructs)g(p)s(ermit)f(\014ne-grained)
+b(The)33 b Fr(redirection)h Fu(constructs)g(p)s(ermit)f(\014ne-grained)
g(con)m(trol)i(of)f(the)g(input)150 4204 y(and)40 b(output)f(of)i
(those)f(commands.)70 b(Moreo)m(v)m(er,)45 b(the)c(shell)f(allo)m(ws)h
(con)m(trol)h(o)m(v)m(er)g(the)e(con)m(ten)m(ts)i(of)150
4313 y(commands')30 b(en)m(vironmen)m(ts.)275 4443 y(Shells)k(also)i
(pro)m(vide)g(a)f(small)h(set)f(of)g(built-in)g(commands)g(\()p
-Fq(builtins)t Ft(\))g(implemen)m(ting)h(function-)150
+Fr(builtins)t Fu(\))g(implemen)m(ting)h(function-)150
4553 y(alit)m(y)i(imp)s(ossible)e(or)g(incon)m(v)m(enien)m(t)j(to)e
(obtain)g(via)g(separate)g(utilities.)61 b(F)-8 b(or)37
-b(example,)i Fs(cd)p Ft(,)e Fs(break)p Ft(,)150 4662
-y Fs(continue)p Ft(,)28 b(and)i Fs(exec)f Ft(cannot)i(b)s(e)f(implemen)
+b(example,)i Ft(cd)p Fu(,)e Ft(break)p Fu(,)150 4662
+y Ft(continue)p Fu(,)28 b(and)i Ft(exec)f Fu(cannot)i(b)s(e)f(implemen)
m(ted)h(outside)g(of)f(the)h(shell)f(b)s(ecause)h(they)f(directly)h
(ma-)150 4772 y(nipulate)d(the)g(shell)g(itself.)41 b(The)27
-b Fs(history)p Ft(,)g Fs(getopts)p Ft(,)f Fs(kill)p Ft(,)i(or)g
-Fs(pwd)f Ft(builtins,)h(among)g(others,)h(could)150 4881
+b Ft(history)p Fu(,)g Ft(getopts)p Fu(,)f Ft(kill)p Fu(,)i(or)g
+Ft(pwd)f Fu(builtins,)h(among)g(others,)h(could)150 4881
y(b)s(e)34 b(implemen)m(ted)g(in)g(separate)h(utilities,)i(but)d(they)g
(are)g(more)h(con)m(v)m(enien)m(t)h(to)f(use)f(as)g(builtin)g(com-)150
4991 y(mands.)40 b(All)31 b(of)f(the)h(shell)f(builtins)g(are)h
b(ariables,)32 b(\015o)m(w)e(con)m(trol)i(constructs,)f(quoting,)g(and)
f(functions.)p eop end
%%Page: 2 8
-TeXDict begin 2 7 bop 150 -116 a Ft(Chapter)30 b(1:)41
+TeXDict begin 2 7 bop 150 -116 a Fu(Chapter)30 b(1:)41
b(In)m(tro)s(duction)2592 b(2)275 299 y(Shells)21 b(o\013er)i(features)
f(geared)h(sp)s(eci\014cally)g(for)f(in)m(teractiv)m(e)j(use)d(rather)g
(than)g(to)h(augmen)m(t)g(the)f(pro-)150 408 y(gramming)32
b(of)g(these)g(features)f(is)h(describ)s(ed)e(in)h(this)g(man)m(ual.)p
eop end
%%Page: 3 9
-TeXDict begin 3 8 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(De\014nitions)2662 b(3)150 299 y Fo(2)80 b(De\014nitions)150
-552 y Ft(These)30 b(de\014nitions)g(are)h(used)e(throughout)h(the)h
-(remainder)f(of)g(this)h(man)m(ual.)150 720 y Fs(POSIX)240
-b Ft(A)27 b(family)g(of)g(op)s(en)f(system)g(standards)g(based)g(on)h
+TeXDict begin 3 8 bop 150 -116 a Fu(Chapter)30 b(2:)41
+b(De\014nitions)2662 b(3)150 299 y Fp(2)80 b(De\014nitions)150
+552 y Fu(These)30 b(de\014nitions)g(are)h(used)e(throughout)h(the)h
+(remainder)f(of)g(this)h(man)m(ual.)150 720 y Ft(POSIX)240
+b Fu(A)27 b(family)g(of)g(op)s(en)f(system)g(standards)g(based)g(on)h
(Unix.)39 b(Bash)27 b(is)g(primarily)f(concerned)630
830 y(with)k(the)h(Shell)f(and)g(Utilities)i(p)s(ortion)e(of)h(the)f
-Fl(posix)g Ft(1003.1)j(standard.)150 995 y Fs(blank)240
-b Ft(A)30 b(space)h(or)g(tab)f(c)m(haracter.)150 1161
-y Fs(builtin)144 b Ft(A)35 b(command)g(that)g(is)g(implemen)m(ted)g(in)
+Fm(posix)g Fu(1003.1)j(standard.)150 995 y Ft(blank)240
+b Fu(A)30 b(space)h(or)g(tab)f(c)m(haracter.)150 1161
+y Ft(builtin)144 b Fu(A)35 b(command)g(that)g(is)g(implemen)m(ted)g(in)
m(ternally)h(b)m(y)f(the)g(shell)g(itself,)i(rather)d(than)h(b)m(y)630
1271 y(an)30 b(executable)i(program)e(somewhere)h(in)f(the)g(\014le)h
-(system.)150 1436 y Fs(control)d(operator)630 1546 y
-Ft(A)20 b Fs(token)f Ft(that)i(p)s(erforms)e(a)i(con)m(trol)g
-(function.)37 b(It)21 b(is)f(a)h Fs(newline)d Ft(or)j(one)f(of)h(the)f
-(follo)m(wing:)630 1655 y(`)p Fs(||)p Ft(',)31 b(`)p
-Fs(&&)p Ft(',)f(`)p Fs(&)p Ft(',)h(`)p Fs(;)p Ft(',)g(`)p
-Fs(;;)p Ft(',)f(`)p Fs(|)p Ft(',)h(`)p Fs(|&)p Ft(',)f(`)p
-Fs(\()p Ft(',)h(or)g(`)p Fs(\))p Ft('.)150 1821 y Fs(exit)e(status)630
-1931 y Ft(The)f(v)-5 b(alue)29 b(returned)e(b)m(y)h(a)h(command)f(to)h
+(system.)150 1436 y Ft(control)d(operator)630 1546 y
+Fu(A)20 b Ft(token)f Fu(that)i(p)s(erforms)e(a)i(con)m(trol)g
+(function.)37 b(It)21 b(is)f(a)h Ft(newline)d Fu(or)j(one)f(of)h(the)f
+(follo)m(wing:)630 1655 y(`)p Ft(||)p Fu(',)31 b(`)p
+Ft(&&)p Fu(',)f(`)p Ft(&)p Fu(',)h(`)p Ft(;)p Fu(',)g(`)p
+Ft(;;)p Fu(',)f(`)p Ft(|)p Fu(',)h(`)p Ft(|&)p Fu(',)f(`)p
+Ft(\()p Fu(',)h(or)g(`)p Ft(\))p Fu('.)150 1821 y Ft(exit)e(status)630
+1931 y Fu(The)f(v)-5 b(alue)29 b(returned)e(b)m(y)h(a)h(command)f(to)h
(its)g(caller.)41 b(The)28 b(v)-5 b(alue)29 b(is)f(restricted)h(to)h
(eigh)m(t)630 2040 y(bits,)h(so)f(the)h(maxim)m(um)f(v)-5
-b(alue)31 b(is)f(255.)150 2206 y Fs(field)240 b Ft(A)27
+b(alue)31 b(is)f(255.)150 2206 y Ft(field)240 b Fu(A)27
b(unit)g(of)g(text)h(that)g(is)f(the)g(result)g(of)g(one)h(of)f(the)g
(shell)g(expansions.)40 b(After)27 b(expansion,)630 2315
y(when)e(executing)h(a)g(command,)h(the)f(resulting)f(\014elds)g(are)h
(used)f(as)h(the)g(command)f(name)630 2425 y(and)30 b(argumen)m(ts.)150
-2591 y Fs(filename)96 b Ft(A)30 b(string)h(of)f(c)m(haracters)i(used)e
-(to)h(iden)m(tify)g(a)f(\014le.)150 2756 y Fs(job)336
-b Ft(A)31 b(set)h(of)f(pro)s(cesses)g(comprising)g(a)g(pip)s(eline,)g
+2591 y Ft(filename)96 b Fu(A)30 b(string)h(of)f(c)m(haracters)i(used)e
+(to)h(iden)m(tify)g(a)f(\014le.)150 2756 y Ft(job)336
+b Fu(A)31 b(set)h(of)f(pro)s(cesses)g(comprising)g(a)g(pip)s(eline,)g
(and)g(an)m(y)g(pro)s(cesses)g(descended)g(from)f(it,)630
2866 y(that)h(are)g(all)g(in)f(the)h(same)f(pro)s(cess)g(group.)150
-3031 y Fs(job)f(control)630 3141 y Ft(A)22 b(mec)m(hanism)g(b)m(y)f
+3031 y Ft(job)f(control)630 3141 y Fu(A)22 b(mec)m(hanism)g(b)m(y)f
(whic)m(h)h(users)f(can)h(selectiv)m(ely)i(stop)e(\(susp)s(end\))e(and)
h(restart)i(\(resume\))630 3251 y(execution)32 b(of)e(pro)s(cesses.)150
-3416 y Fs(metacharacter)630 3526 y Ft(A)25 b(c)m(haracter)i(that,)g
+3416 y Ft(metacharacter)630 3526 y Fu(A)25 b(c)m(haracter)i(that,)g
(when)d(unquoted,)i(separates)g(w)m(ords.)38 b(A)26 b(metac)m(haracter)
-i(is)d(a)g Fs(blank)630 3635 y Ft(or)30 b(one)h(of)g(the)f(follo)m
-(wing)i(c)m(haracters:)42 b(`)p Fs(|)p Ft(',)31 b(`)p
-Fs(&)p Ft(',)g(`)p Fs(;)p Ft(',)g(`)p Fs(\()p Ft(',)f(`)p
-Fs(\))p Ft(',)h(`)p Fs(<)p Ft(',)g(or)f(`)p Fs(>)p Ft('.)150
-3801 y Fs(name)288 b Ft(A)37 b Fs(word)f Ft(consisting)i(solely)h(of)e
+i(is)d(a)g Ft(blank)630 3635 y Fu(or)30 b(one)h(of)g(the)f(follo)m
+(wing)i(c)m(haracters:)42 b(`)p Ft(|)p Fu(',)31 b(`)p
+Ft(&)p Fu(',)g(`)p Ft(;)p Fu(',)g(`)p Ft(\()p Fu(',)f(`)p
+Ft(\))p Fu(',)h(`)p Ft(<)p Fu(',)g(or)f(`)p Ft(>)p Fu('.)150
+3801 y Ft(name)288 b Fu(A)37 b Ft(word)f Fu(consisting)i(solely)h(of)e
(letters,)j(n)m(um)m(b)s(ers,)e(and)f(underscores,)h(and)f(b)s
(eginning)630 3910 y(with)23 b(a)g(letter)h(or)f(underscore.)38
-b Fs(Name)p Ft(s)22 b(are)h(used)f(as)i(shell)f(v)-5
+b Ft(Name)p Fu(s)22 b(are)h(used)f(as)i(shell)f(v)-5
b(ariable)24 b(and)e(function)h(names.)630 4020 y(Also)31
-b(referred)f(to)h(as)f(an)h Fs(identifier)p Ft(.)150
-4186 y Fs(operator)96 b Ft(A)38 b Fs(control)28 b(operator)36
-b Ft(or)h(a)i Fs(redirection)27 b(operator)p Ft(.)61
+b(referred)f(to)h(as)f(an)h Ft(identifier)p Fu(.)150
+4186 y Ft(operator)96 b Fu(A)38 b Ft(control)28 b(operator)36
+b Fu(or)h(a)i Ft(redirection)27 b(operator)p Fu(.)61
b(See)38 b(Section)g(3.6)h([Redirec-)630 4295 y(tions],)f(page)f(31,)i
(for)d(a)g(list)h(of)f(redirection)h(op)s(erators.)58
b(Op)s(erators)35 b(con)m(tain)j(at)f(least)630 4405
-y(one)31 b(unquoted)e Fs(metacharacter)p Ft(.)150 4570
-y Fs(process)f(group)630 4680 y Ft(A)i(collection)k(of)c(related)h(pro)
+y(one)31 b(unquoted)e Ft(metacharacter)p Fu(.)150 4570
+y Ft(process)f(group)630 4680 y Fu(A)i(collection)k(of)c(related)h(pro)
s(cesses)g(eac)m(h)g(ha)m(ving)g(the)g(same)f(pro)s(cess)g(group)g
-Fl(id)p Ft(.)150 4846 y Fs(process)e(group)h(ID)630 4955
-y Ft(A)h(unique)g(iden)m(ti\014er)h(that)f(represen)m(ts)h(a)g
-Fs(process)d(group)h Ft(during)g(its)i(lifetime.)150
-5121 y Fs(reserved)d(word)630 5230 y Ft(A)h Fs(word)e
-Ft(that)i(has)f(a)h(sp)s(ecial)g(meaning)f(to)h(the)g(shell.)40
+Fm(id)p Fu(.)150 4846 y Ft(process)e(group)h(ID)630 4955
+y Fu(A)h(unique)g(iden)m(ti\014er)h(that)f(represen)m(ts)h(a)g
+Ft(process)d(group)h Fu(during)g(its)i(lifetime.)150
+5121 y Ft(reserved)d(word)630 5230 y Fu(A)h Ft(word)e
+Fu(that)i(has)f(a)h(sp)s(ecial)g(meaning)f(to)h(the)g(shell.)40
b(Most)30 b(reserv)m(ed)e(w)m(ords)g(in)m(tro)s(duce)630
5340 y(shell)j(\015o)m(w)f(con)m(trol)i(constructs,)f(suc)m(h)f(as)g
-Fs(for)g Ft(and)g Fs(while)p Ft(.)p eop end
+Ft(for)g Fu(and)g Ft(while)p Fu(.)p eop end
%%Page: 4 10
-TeXDict begin 4 9 bop 150 -116 a Ft(Chapter)30 b(2:)41
-b(De\014nitions)2662 b(4)150 299 y Fs(return)29 b(status)630
-408 y Ft(A)h(synon)m(ym)g(for)g Fs(exit)g(status)p Ft(.)150
-568 y Fs(signal)192 b Ft(A)40 b(mec)m(hanism)h(b)m(y)e(whic)m(h)h(a)h
+TeXDict begin 4 9 bop 150 -116 a Fu(Chapter)30 b(2:)41
+b(De\014nitions)2662 b(4)150 299 y Ft(return)29 b(status)630
+408 y Fu(A)h(synon)m(ym)g(for)g Ft(exit)g(status)p Fu(.)150
+568 y Ft(signal)192 b Fu(A)40 b(mec)m(hanism)h(b)m(y)e(whic)m(h)h(a)h
(pro)s(cess)e(ma)m(y)i(b)s(e)e(noti\014ed)h(b)m(y)g(the)h(k)m(ernel)f
(of)g(an)g(ev)m(en)m(t)630 677 y(o)s(ccurring)30 b(in)g(the)h(system.)
-150 837 y Fs(special)d(builtin)630 946 y Ft(A)j(shell)f(builtin)g
+150 837 y Ft(special)d(builtin)630 946 y Fu(A)j(shell)f(builtin)g
(command)h(that)g(has)f(b)s(een)g(classi\014ed)h(as)g(sp)s(ecial)g(b)m
-(y)f(the)h Fl(posix)f Ft(stan-)630 1056 y(dard.)150 1215
-y Fs(token)240 b Ft(A)38 b(sequence)h(of)f(c)m(haracters)h(considered)f
+(y)f(the)h Fm(posix)f Fu(stan-)630 1056 y(dard.)150 1215
+y Ft(token)240 b Fu(A)38 b(sequence)h(of)f(c)m(haracters)h(considered)f
(a)h(single)g(unit)e(b)m(y)h(the)h(shell.)64 b(It)38
-b(is)g(either)h(a)630 1325 y Fs(word)29 b Ft(or)i(an)f
-Fs(operator)p Ft(.)150 1484 y Fs(word)288 b Ft(A)28 b(sequence)g(of)g
+b(is)g(either)h(a)630 1325 y Ft(word)29 b Fu(or)i(an)f
+Ft(operator)p Fu(.)150 1484 y Ft(word)288 b Fu(A)28 b(sequence)g(of)g
(c)m(haracters)h(treated)g(as)f(a)g(unit)f(b)m(y)h(the)g(shell.)40
b(W)-8 b(ords)28 b(ma)m(y)g(not)g(include)630 1594 y(unquoted)i
-Fs(metacharacters)p Ft(.)p eop end
+Ft(metacharacters)p Fu(.)p eop end
%%Page: 5 11
-TeXDict begin 5 10 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 5 10 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2292 b(5)150 299
-y Fo(3)80 b(Basic)54 b(Shell)e(F)-13 b(eatures)150 603
-y Ft(Bash)21 b(is)g(an)f(acron)m(ym)i(for)e(`)p Fs(Bourne-Again)27
-b(SHell)p Ft('.)37 b(The)20 b(Bourne)g(shell)h(is)g(the)g(traditional)h
+y Fp(3)80 b(Basic)54 b(Shell)e(F)-13 b(eatures)150 603
+y Fu(Bash)21 b(is)g(an)f(acron)m(ym)i(for)e(`)p Ft(Bourne-Again)27
+b(SHell)p Fu('.)37 b(The)20 b(Bourne)g(shell)h(is)g(the)g(traditional)h
(Unix)f(shell)150 712 y(originally)h(written)f(b)m(y)f(Stephen)g
(Bourne.)38 b(All)21 b(of)g(the)g(Bourne)f(shell)h(builtin)f(commands)g
(are)i(a)m(v)-5 b(ailable)150 822 y(in)26 b(Bash,)h(The)f(rules)f(for)h
(ev)-5 b(aluation)28 b(and)d(quoting)h(are)h(tak)m(en)g(from)f(the)g
-Fl(posix)f Ft(sp)s(eci\014cation)i(for)f(the)150 931
+Fm(posix)f Fu(sp)s(eci\014cation)i(for)f(the)150 931
y(`standard')k(Unix)g(shell.)275 1089 y(This)h(c)m(hapter)i(brie\015y)e
(summarizes)h(the)h(shell's)f(`building)g(blo)s(c)m(ks':)45
b(commands,)32 b(con)m(trol)i(struc-)150 1199 y(tures,)k(shell)e
-(functions,)h(shell)g Fk(p)-5 b(ar)g(ameters)p Ft(,)41
-b(shell)36 b(expansions,)i Fk(r)-5 b(e)g(dir)g(e)g(ctions)p
-Ft(,)40 b(whic)m(h)c(are)h(a)f(w)m(a)m(y)h(to)150 1308
+(functions,)h(shell)g Fl(p)-5 b(ar)g(ameters)p Fu(,)41
+b(shell)36 b(expansions,)i Fl(r)-5 b(e)g(dir)g(e)g(ctions)p
+Fu(,)40 b(whic)m(h)c(are)h(a)f(w)m(a)m(y)h(to)150 1308
y(direct)31 b(input)e(and)h(output)g(from)g(and)g(to)h(named)f
(\014les,)g(and)g(ho)m(w)g(the)h(shell)g(executes)g(commands.)150
-1576 y Fr(3.1)68 b(Shell)45 b(Syn)l(tax)150 1735 y Ft(When)40
+1576 y Fs(3.1)68 b(Shell)45 b(Syn)l(tax)150 1735 y Fu(When)40
b(the)h(shell)g(reads)f(input,)i(it)f(pro)s(ceeds)f(through)g(a)h
(sequence)g(of)g(op)s(erations.)71 b(If)40 b(the)h(input)150
1845 y(indicates)31 b(the)f(b)s(eginning)f(of)h(a)g(commen)m(t,)h(the)f
(shell)g(ignores)g(the)g(commen)m(t)h(sym)m(b)s(ol)f(\(`)p
-Fs(#)p Ft('\),)h(and)e(the)150 1954 y(rest)i(of)f(that)h(line.)275
+Ft(#)p Fu('\),)h(and)e(the)150 1954 y(rest)i(of)f(that)h(line.)275
2112 y(Otherwise,)h(roughly)f(sp)s(eaking,)i(the)f(shell)g(reads)g(its)
g(input)f(and)h(divides)f(the)i(input)e(in)m(to)h(w)m(ords)150
2222 y(and)23 b(op)s(erators,)j(emplo)m(ying)e(the)g(quoting)h(rules)e
(aits)f(for)f(the)g(command's)g(exit)i(status,)f(and)f(mak)m(es)150
2818 y(that)31 b(exit)g(status)g(a)m(v)-5 b(ailable)33
b(for)d(further)f(insp)s(ection)h(or)h(pro)s(cessing.)150
-3040 y Fj(3.1.1)63 b(Shell)41 b(Op)s(eration)150 3187
-y Ft(The)c(follo)m(wing)h(is)f(a)h(brief)e(description)i(of)f(the)g
+3040 y Fk(3.1.1)63 b(Shell)41 b(Op)s(eration)150 3187
+y Fu(The)c(follo)m(wing)h(is)f(a)h(brief)e(description)i(of)f(the)g
(shell's)h(op)s(eration)f(when)f(it)i(reads)f(and)f(executes)j(a)150
3297 y(command.)h(Basically)-8 b(,)34 b(the)c(shell)h(do)s(es)f(the)h
(follo)m(wing:)199 3454 y(1.)61 b(Reads)42 b(its)h(input)e(from)h(a)g
(\014le)h(\(see)g(Section)g(3.8)g([Shell)f(Scripts],)j(page)e(39\),)k
-(from)41 b(a)i(string)330 3564 y(supplied)26 b(as)i(an)f(argumen)m(t)g
-(to)h(the)g(`)p Fs(-c)p Ft(')f(in)m(v)m(o)s(cation)i(option)f(\(see)g
-(Section)h(6.1)f([In)m(v)m(oking)g(Bash],)330 3673 y(page)j(80\),)h(or)
-e(from)g(the)h(user's)f(terminal.)199 3820 y(2.)61 b(Breaks)43
+(from)41 b(a)i(string)330 3564 y(supplied)30 b(as)h(an)g(argumen)m(t)h
+(to)g(the)f Ft(-c)g Fu(in)m(v)m(o)s(cation)i(option)f(\(see)g(Section)g
+(6.1)g([In)m(v)m(oking)g(Bash],)330 3673 y(page)f(80\),)h(or)e(from)g
+(the)h(user's)f(terminal.)199 3820 y(2.)61 b(Breaks)43
b(the)g(input)f(in)m(to)h(w)m(ords)f(and)g(op)s(erators,)k(ob)s(eying)d
(the)g(quoting)g(rules)f(describ)s(ed)f(in)330 3929 y(Section)27
b(3.1.2)i([Quoting],)f(page)f(6.)40 b(These)26 b(tok)m(ens)i(are)f
-(separated)g(b)m(y)f Fs(metacharacters)p Ft(.)36 b(Alias)330
+(separated)g(b)m(y)f Ft(metacharacters)p Fu(.)36 b(Alias)330
4039 y(expansion)30 b(is)h(p)s(erformed)d(b)m(y)j(this)f(step)g(\(see)i
(Section)f(6.6)g([Aliases],)i(page)e(88\).)199 4185 y(3.)61
b(P)m(arses)35 b(the)g(tok)m(ens)g(in)m(to)h(simple)e(and)g(comp)s
y(tion)31 b(3.7.5)h([Exit)f(Status],)g(page)g(38\).)p
eop end
%%Page: 6 12
-TeXDict begin 6 11 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 6 11 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2292 b(6)150 299
-y Fj(3.1.2)63 b(Quoting)150 446 y Ft(Quoting)32 b(is)h(used)e(to)i
+y Fk(3.1.2)63 b(Quoting)150 446 y Fu(Quoting)32 b(is)h(used)e(to)i
(remo)m(v)m(e)h(the)e(sp)s(ecial)h(meaning)f(of)h(certain)g(c)m
(haracters)g(or)f(w)m(ords)g(to)h(the)f(shell.)150 555
y(Quoting)c(can)f(b)s(e)g(used)f(to)j(disable)e(sp)s(ecial)h(treatmen)m
(quoted)g(if)h(it)g(is)f(to)h(represen)m(t)g(itself.)68
b(When)39 b(the)h(command)f(history)150 1012 y(expansion)i(facilities)j
(are)e(b)s(eing)f(used)g(\(see)h(Section)h(9.3)f([History)h(In)m
-(teraction],)j(page)c(136\),)47 b(the)150 1122 y Fq(history)30
-b(expansion)h Ft(c)m(haracter,)h(usually)f(`)p Fs(!)p
-Ft(',)g(m)m(ust)f(b)s(e)g(quoted)h(to)g(prev)m(en)m(t)g(history)g
+(teraction],)j(page)c(135\),)47 b(the)150 1122 y Fr(history)30
+b(expansion)h Fu(c)m(haracter,)h(usually)f(`)p Ft(!)p
+Fu(',)g(m)m(ust)f(b)s(e)g(quoted)h(to)g(prev)m(en)m(t)g(history)g
(expansion.)41 b(See)150 1231 y(Section)22 b(9.1)g([Bash)f(History)h(F)
--8 b(acilities],)26 b(page)c(134,)j(for)20 b(more)h(details)h
-(concerning)g(history)f(expansion.)275 1359 y(There)36
-b(are)i(three)f(quoting)g(mec)m(hanisms:)55 b(the)37
-b Fq(escap)s(e)h(c)m(haracter)7 b Ft(,)40 b(single)d(quotes,)j(and)c
-(double)150 1469 y(quotes.)150 1655 y Fj(3.1.2.1)63 b(Escap)s(e)41
-b(Character)150 1802 y Ft(A)36 b(non-quoted)f(bac)m(kslash)h(`)p
-Fs(\\)p Ft(')g(is)f(the)h(Bash)g(escap)s(e)f(c)m(haracter.)58
+-8 b(acilities],)26 b(page)c(133,)j(for)20 b(more)h(details)h
+(concerning)g(history)f(expansion.)275 1359 y(There)37
+b(are)h(three)f(quoting)h(mec)m(hanisms:)56 b(the)38
+b Fr(escap)s(e)g(c)m(haracter)p Fu(,)j(single)d(quotes,)i(and)d(double)
+150 1469 y(quotes.)150 1655 y Fk(3.1.2.1)63 b(Escap)s(e)41
+b(Character)150 1802 y Fu(A)36 b(non-quoted)f(bac)m(kslash)h(`)p
+Ft(\\)p Fu(')g(is)f(the)h(Bash)g(escap)s(e)f(c)m(haracter.)58
b(It)36 b(preserv)m(es)f(the)h(literal)h(v)-5 b(alue)36
b(of)150 1911 y(the)27 b(next)g(c)m(haracter)h(that)f(follo)m(ws,)i
-(with)d(the)h(exception)g(of)g Fs(newline)p Ft(.)38 b(If)26
-b(a)h Fs(\\newline)d Ft(pair)i(app)s(ears,)150 2021 y(and)k(the)h(bac)m
-(kslash)g(itself)g(is)g(not)g(quoted,)g(the)f Fs(\\newline)f
-Ft(is)h(treated)i(as)f(a)g(line)g(con)m(tin)m(uation)h(\(that)150
+(with)d(the)h(exception)g(of)g Ft(newline)p Fu(.)38 b(If)26
+b(a)h Ft(\\newline)d Fu(pair)i(app)s(ears,)150 2021 y(and)k(the)h(bac)m
+(kslash)g(itself)g(is)g(not)g(quoted,)g(the)f Ft(\\newline)f
+Fu(is)h(treated)i(as)f(a)g(line)g(con)m(tin)m(uation)h(\(that)150
2131 y(is,)f(it)g(is)f(remo)m(v)m(ed)h(from)f(the)h(input)e(stream)i
-(and)f(e\013ectiv)m(ely)j(ignored\).)150 2317 y Fj(3.1.2.2)63
-b(Single)42 b(Quotes)150 2464 y Ft(Enclosing)24 b(c)m(haracters)h(in)e
-(single)h(quotes)g(\(`)p Fs(')p Ft('\))g(preserv)m(es)g(the)f(literal)i
+(and)f(e\013ectiv)m(ely)j(ignored\).)150 2317 y Fk(3.1.2.2)63
+b(Single)42 b(Quotes)150 2464 y Fu(Enclosing)24 b(c)m(haracters)h(in)e
+(single)h(quotes)g(\(`)p Ft(')p Fu('\))g(preserv)m(es)g(the)f(literal)i
(v)-5 b(alue)24 b(of)g(eac)m(h)g(c)m(haracter)h(within)150
2573 y(the)31 b(quotes.)42 b(A)31 b(single)h(quote)f(ma)m(y)g(not)g(o)s
(ccur)g(b)s(et)m(w)m(een)g(single)h(quotes,)f(ev)m(en)h(when)d
(preceded)i(b)m(y)g(a)150 2683 y(bac)m(kslash.)150 2869
-y Fj(3.1.2.3)63 b(Double)42 b(Quotes)150 3016 y Ft(Enclosing)24
-b(c)m(haracters)h(in)f(double)f(quotes)h(\(`)p Fs(")p
-Ft('\))g(preserv)m(es)g(the)g(literal)h(v)-5 b(alue)24
+y Fk(3.1.2.3)63 b(Double)42 b(Quotes)150 3016 y Fu(Enclosing)24
+b(c)m(haracters)h(in)f(double)f(quotes)h(\(`)p Ft(")p
+Fu('\))g(preserv)m(es)g(the)g(literal)h(v)-5 b(alue)24
b(of)g(all)g(c)m(haracters)h(within)150 3125 y(the)34
-b(quotes,)h(with)f(the)g(exception)h(of)f(`)p Fs($)p
-Ft(',)h(`)p Fs(`)p Ft(',)g(`)p Fs(\\)p Ft(',)g(and,)f(when)f(history)g
-(expansion)h(is)g(enabled,)h(`)p Fs(!)p Ft('.)150 3235
-y(The)25 b(c)m(haracters)h(`)p Fs($)p Ft(')g(and)f(`)p
-Fs(`)p Ft(')g(retain)h(their)f(sp)s(ecial)h(meaning)f(within)g(double)g
+b(quotes,)h(with)f(the)g(exception)h(of)f(`)p Ft($)p
+Fu(',)h(`)p Ft(`)p Fu(',)g(`)p Ft(\\)p Fu(',)g(and,)f(when)f(history)g
+(expansion)h(is)g(enabled,)h(`)p Ft(!)p Fu('.)150 3235
+y(The)25 b(c)m(haracters)h(`)p Ft($)p Fu(')g(and)f(`)p
+Ft(`)p Fu(')g(retain)h(their)f(sp)s(ecial)h(meaning)f(within)g(double)g
(quotes)h(\(see)g(Section)g(3.5)150 3345 y([Shell)j(Expansions],)g
(page)h(21\).)41 b(The)28 b(bac)m(kslash)i(retains)f(its)h(sp)s(ecial)f
(meaning)g(only)g(when)f(follo)m(w)m(ed)150 3454 y(b)m(y)41
b(one)f(of)h(the)g(follo)m(wing)h(c)m(haracters:)63 b(`)p
-Fs($)p Ft(',)43 b(`)p Fs(`)p Ft(',)h(`)p Fs(")p Ft(',)g(`)p
-Fs(\\)p Ft(',)f(or)e Fs(newline)p Ft(.)69 b(Within)41
+Ft($)p Fu(',)43 b(`)p Ft(`)p Fu(',)h(`)p Ft(")p Fu(',)g(`)p
+Ft(\\)p Fu(',)f(or)e Ft(newline)p Fu(.)69 b(Within)41
b(double)f(quotes,)150 3564 y(bac)m(kslashes)25 b(that)h(are)f(follo)m
(w)m(ed)h(b)m(y)e(one)h(of)g(these)g(c)m(haracters)h(are)f(remo)m(v)m
(ed.)40 b(Bac)m(kslashes)26 b(preceding)150 3673 y(c)m(haracters)35
b(A)34 b(double)f(quote)g(ma)m(y)h(b)s(e)f(quoted)150
3783 y(within)h(double)h(quotes)g(b)m(y)g(preceding)g(it)g(with)g(a)g
(bac)m(kslash.)55 b(If)35 b(enabled,)h(history)f(expansion)g(will)150
-3892 y(b)s(e)f(p)s(erformed)g(unless)g(an)h(`)p Fs(!)p
-Ft(')g(app)s(earing)f(in)h(double)f(quotes)i(is)f(escap)s(ed)g(using)f
+3892 y(b)s(e)f(p)s(erformed)g(unless)g(an)h(`)p Ft(!)p
+Fu(')g(app)s(earing)f(in)h(double)f(quotes)i(is)f(escap)s(ed)g(using)f
(a)h(bac)m(kslash.)55 b(The)150 4002 y(bac)m(kslash)31
-b(preceding)f(the)h(`)p Fs(!)p Ft(')f(is)h(not)g(remo)m(v)m(ed.)275
-4130 y(The)41 b(sp)s(ecial)h(parameters)f(`)p Fs(*)p
-Ft(')h(and)f(`)p Fs(@)p Ft(')h(ha)m(v)m(e)g(sp)s(ecial)g(meaning)g
+b(preceding)f(the)h(`)p Ft(!)p Fu(')f(is)h(not)g(remo)m(v)m(ed.)275
+4130 y(The)41 b(sp)s(ecial)h(parameters)f(`)p Ft(*)p
+Fu(')h(and)f(`)p Ft(@)p Fu(')h(ha)m(v)m(e)g(sp)s(ecial)g(meaning)g
(when)f(in)g(double)g(quotes)h(\(see)150 4240 y(Section)31
b(3.5.3)h([Shell)f(P)m(arameter)h(Expansion],)e(page)h(23\).)150
-4426 y Fj(3.1.2.4)63 b(ANSI-C)40 b(Quoting)150 4573 y
-Ft(W)-8 b(ords)41 b(of)h(the)f(form)g Fs($')p Fi(string)11
-b Fs(')38 b Ft(are)k(treated)g(sp)s(ecially)-8 b(.)75
-b(The)41 b(w)m(ord)g(expands)f(to)i Fq(string)8 b Ft(,)44
-b(with)150 4682 y(bac)m(kslash-escap)s(ed)g(c)m(haracters)h(replaced)f
-(as)g(sp)s(eci\014ed)f(b)m(y)g(the)g(ANSI)g(C)g(standard.)79
-b(Bac)m(kslash)150 4792 y(escap)s(e)31 b(sequences,)g(if)f(presen)m(t,)
-h(are)g(deco)s(ded)f(as)g(follo)m(ws:)150 4938 y Fs(\\a)384
-b Ft(alert)31 b(\(b)s(ell\))150 5084 y Fs(\\b)384 b Ft(bac)m(kspace)150
-5230 y Fs(\\e)150 5340 y(\\E)g Ft(an)30 b(escap)s(e)h(c)m(haracter)h
+4426 y Fk(3.1.2.4)63 b(ANSI-C)40 b(Quoting)150 4573 y
+Fu(W)-8 b(ords)43 b(of)f(the)h(form)f Ft($')p Fj(string)p
+Ft(')e Fu(are)j(treated)g(sp)s(ecially)-8 b(.)79 b(The)42
+b(w)m(ord)g(expands)f(to)j Fr(string)p Fu(,)h(with)150
+4682 y(bac)m(kslash-escap)s(ed)f(c)m(haracters)h(replaced)f(as)g(sp)s
+(eci\014ed)f(b)m(y)g(the)g(ANSI)g(C)g(standard.)79 b(Bac)m(kslash)150
+4792 y(escap)s(e)31 b(sequences,)g(if)f(presen)m(t,)h(are)g(deco)s(ded)
+f(as)g(follo)m(ws:)150 4938 y Ft(\\a)384 b Fu(alert)31
+b(\(b)s(ell\))150 5084 y Ft(\\b)384 b Fu(bac)m(kspace)150
+5230 y Ft(\\e)150 5340 y(\\E)g Fu(an)30 b(escap)s(e)h(c)m(haracter)h
(\(not)f(ANSI)f(C\))p eop end
%%Page: 7 13
-TeXDict begin 7 12 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 7 12 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2292 b(7)150 299
-y Fs(\\f)384 b Ft(form)30 b(feed)150 488 y Fs(\\n)384
-b Ft(newline)150 678 y Fs(\\r)g Ft(carriage)32 b(return)150
-868 y Fs(\\t)384 b Ft(horizon)m(tal)32 b(tab)150 1057
-y Fs(\\v)384 b Ft(v)m(ertical)32 b(tab)150 1247 y Fs(\\\\)384
-b Ft(bac)m(kslash)150 1436 y Fs(\\')g Ft(single)31 b(quote)150
-1626 y Fs(\\")384 b Ft(double)30 b(quote)150 1816 y Fs(\\)p
-Fi(nnn)288 b Ft(the)31 b(eigh)m(t-bit)h(c)m(haracter)g(whose)e(v)-5
-b(alue)31 b(is)f(the)h(o)s(ctal)g(v)-5 b(alue)31 b Fq(nnn)e
-Ft(\(one)i(to)g(three)g(digits\))150 2005 y Fs(\\x)p
-Fi(HH)288 b Ft(the)36 b(eigh)m(t-bit)i(c)m(haracter)f(whose)f(v)-5
+y Ft(\\f)384 b Fu(form)30 b(feed)150 488 y Ft(\\n)384
+b Fu(newline)150 678 y Ft(\\r)g Fu(carriage)32 b(return)150
+868 y Ft(\\t)384 b Fu(horizon)m(tal)32 b(tab)150 1057
+y Ft(\\v)384 b Fu(v)m(ertical)32 b(tab)150 1247 y Ft(\\\\)384
+b Fu(bac)m(kslash)150 1436 y Ft(\\')g Fu(single)31 b(quote)150
+1626 y Ft(\\")384 b Fu(double)30 b(quote)150 1816 y Ft(\\)p
+Fj(nnn)288 b Fu(the)31 b(eigh)m(t-bit)h(c)m(haracter)g(whose)e(v)-5
+b(alue)31 b(is)f(the)h(o)s(ctal)g(v)-5 b(alue)31 b Fr(nnn)e
+Fu(\(one)i(to)g(three)g(digits\))150 2005 y Ft(\\x)p
+Fj(HH)288 b Fu(the)36 b(eigh)m(t-bit)i(c)m(haracter)f(whose)f(v)-5
b(alue)36 b(is)g(the)g(hexadecimal)h(v)-5 b(alue)36 b
-Fq(HH)46 b Ft(\(one)37 b(or)f(t)m(w)m(o)630 2115 y(hex)30
-b(digits\))150 2304 y Fs(\\u)p Fi(HHHH)192 b Ft(the)33
+Fr(HH)46 b Fu(\(one)37 b(or)f(t)m(w)m(o)630 2115 y(hex)30
+b(digits\))150 2304 y Ft(\\u)p Fj(HHHH)192 b Fu(the)33
b(Unico)s(de)f(\(ISO/IEC)g(10646\))j(c)m(haracter)f(whose)e(v)-5
b(alue)33 b(is)g(the)g(hexadecimal)g(v)-5 b(alue)630
-2414 y Fq(HHHH)41 b Ft(\(one)31 b(to)g(four)f(hex)g(digits\))150
-2604 y Fs(\\U)p Fi(HHHHHHHH)630 2713 y Ft(the)j(Unico)s(de)f(\(ISO/IEC)
+2414 y Fr(HHHH)41 b Fu(\(one)31 b(to)g(four)f(hex)g(digits\))150
+2604 y Ft(\\U)p Fj(HHHHHHHH)630 2713 y Fu(the)j(Unico)s(de)f(\(ISO/IEC)
g(10646\))j(c)m(haracter)f(whose)e(v)-5 b(alue)33 b(is)g(the)g
-(hexadecimal)g(v)-5 b(alue)630 2823 y Fq(HHHHHHHH)42
-b Ft(\(one)31 b(to)g(eigh)m(t)g(hex)g(digits\))150 3012
-y Fs(\\c)p Fi(x)336 b Ft(a)31 b(con)m(trol-)p Fq(x)38
-b Ft(c)m(haracter)150 3217 y(The)30 b(expanded)f(result)i(is)f
+(hexadecimal)g(v)-5 b(alue)630 2823 y Fr(HHHHHHHH)42
+b Fu(\(one)31 b(to)g(eigh)m(t)g(hex)g(digits\))150 3012
+y Ft(\\c)p Fj(x)336 b Fu(a)31 b(con)m(trol-)p Fr(x)38
+b Fu(c)m(haracter)150 3217 y(The)30 b(expanded)f(result)i(is)f
(single-quoted,)i(as)f(if)f(the)g(dollar)h(sign)g(had)e(not)i(b)s(een)f
-(presen)m(t.)150 3446 y Fj(3.1.2.5)63 b(Lo)s(cale-Sp)s(eci\014c)41
-b(T)-10 b(ranslation)150 3593 y Ft(A)28 b(double-quoted)g(string)f
-(preceded)h(b)m(y)f(a)h(dollar)h(sign)e(\(`)p Fs($)p
-Ft('\))i(will)f(cause)g(the)g(string)g(to)g(b)s(e)f(translated)150
+(presen)m(t.)150 3446 y Fk(3.1.2.5)63 b(Lo)s(cale-Sp)s(eci\014c)41
+b(T)-10 b(ranslation)150 3593 y Fu(A)28 b(double-quoted)g(string)f
+(preceded)h(b)m(y)f(a)h(dollar)h(sign)e(\(`)p Ft($)p
+Fu('\))i(will)f(cause)g(the)g(string)g(to)g(b)s(e)f(translated)150
3703 y(according)f(to)f(the)g(curren)m(t)g(lo)s(cale.)41
-b(If)24 b(the)h(curren)m(t)g(lo)s(cale)h(is)f Fs(C)g
-Ft(or)g Fs(POSIX)p Ft(,)f(the)h(dollar)h(sign)f(is)g(ignored.)150
+b(If)24 b(the)h(curren)m(t)g(lo)s(cale)h(is)f Ft(C)g
+Fu(or)g Ft(POSIX)p Fu(,)f(the)h(dollar)h(sign)f(is)g(ignored.)150
3813 y(If)30 b(the)g(string)h(is)f(translated)h(and)f(replaced,)h(the)g
(replacemen)m(t)h(is)e(double-quoted.)275 3977 y(Some)20
b(systems)h(use)f(the)h(message)h(catalog)h(selected)f(b)m(y)f(the)g
-Fs(LC_MESSAGES)c Ft(shell)k(v)-5 b(ariable.)39 b(Others)150
+Ft(LC_MESSAGES)c Fu(shell)k(v)-5 b(ariable.)39 b(Others)150
4087 y(create)g(the)e(name)g(of)g(the)g(message)h(catalog)i(from)d(the)
-g(v)-5 b(alue)37 b(of)g(the)h Fs(TEXTDOMAIN)c Ft(shell)j(v)-5
+g(v)-5 b(alue)37 b(of)g(the)h Ft(TEXTDOMAIN)c Fu(shell)j(v)-5
b(ariable,)150 4196 y(p)s(ossibly)31 b(adding)g(a)g(su\016x)g(of)h(`)p
-Fs(.mo)p Ft('.)43 b(If)31 b(y)m(ou)h(use)f(the)h Fs(TEXTDOMAIN)c
-Ft(v)-5 b(ariable,)33 b(y)m(ou)f(ma)m(y)g(need)f(to)h(set)150
-4306 y(the)22 b Fs(TEXTDOMAINDIR)d Ft(v)-5 b(ariable)23
+Ft(.mo)p Fu('.)43 b(If)31 b(y)m(ou)h(use)f(the)h Ft(TEXTDOMAIN)c
+Fu(v)-5 b(ariable,)33 b(y)m(ou)f(ma)m(y)g(need)f(to)h(set)150
+4306 y(the)22 b Ft(TEXTDOMAINDIR)d Fu(v)-5 b(ariable)23
b(to)g(the)f(lo)s(cation)i(of)e(the)h(message)g(catalog)i(\014les.)38
b(Still)23 b(others)f(use)g(b)s(oth)150 4416 y(v)-5 b(ariables)31
-b(in)f(this)g(fashion:)41 b Fs(TEXTDOMAINDIR)p Ft(/)p
-Fs(LC_MESSAGES)p Ft(/LC)p 2528 4416 28 4 v 34 w(MESSA)m(GES/)p
-Fs(TEXTDOMAIN)p Ft(.mo.)150 4645 y Fj(3.1.3)63 b(Commen)m(ts)150
-4792 y Ft(In)21 b(a)i(non-in)m(teractiv)m(e)h(shell,)g(or)e(an)g(in)m
-(teractiv)m(e)j(shell)d(in)g(whic)m(h)g(the)g Fs(interactive_comments)
-16 b Ft(option)150 4902 y(to)40 b(the)f Fs(shopt)e Ft(builtin)h(is)h
+b(in)f(this)g(fashion:)41 b Ft(TEXTDOMAINDIR)p Fu(/)p
+Ft(LC_MESSAGES)p Fu(/LC)p 2528 4416 28 4 v 34 w(MESSA)m(GES/)p
+Ft(TEXTDOMAIN)p Fu(.mo.)150 4645 y Fk(3.1.3)63 b(Commen)m(ts)150
+4792 y Fu(In)21 b(a)i(non-in)m(teractiv)m(e)h(shell,)g(or)e(an)g(in)m
+(teractiv)m(e)j(shell)d(in)g(whic)m(h)g(the)g Ft(interactive_comments)
+16 b Fu(option)150 4902 y(to)40 b(the)f Ft(shopt)e Fu(builtin)h(is)h
(enabled)g(\(see)h(Section)g(4.3.2)g([The)f(Shopt)f(Builtin],)k(page)e
-(63\),)i(a)d(w)m(ord)150 5011 y(b)s(eginning)26 b(with)g(`)p
-Fs(#)p Ft(')g(causes)h(that)f(w)m(ord)g(and)g(all)h(remaining)g(c)m
+(62\),)i(a)d(w)m(ord)150 5011 y(b)s(eginning)26 b(with)g(`)p
+Ft(#)p Fu(')g(causes)h(that)f(w)m(ord)g(and)g(all)h(remaining)g(c)m
(haracters)g(on)f(that)h(line)g(to)g(b)s(e)f(ignored.)150
5121 y(An)43 b(in)m(teractiv)m(e)j(shell)e(without)f(the)g
-Fs(interactive_comments)38 b Ft(option)44 b(enabled)f(do)s(es)g(not)g
-(allo)m(w)150 5230 y(commen)m(ts.)56 b(The)34 b Fs
-(interactive_comments)c Ft(option)35 b(is)g(on)g(b)m(y)g(default)g(in)g
+Ft(interactive_comments)38 b Fu(option)44 b(enabled)f(do)s(es)g(not)g
+(allo)m(w)150 5230 y(commen)m(ts.)56 b(The)34 b Ft
+(interactive_comments)c Fu(option)35 b(is)g(on)g(b)m(y)g(default)g(in)g
(in)m(teractiv)m(e)j(shells.)55 b(See)150 5340 y(Section)30
b(6.3)f([In)m(teractiv)m(e)j(Shells],)d(page)h(83,)g(for)e(a)i
(description)e(of)h(what)g(mak)m(es)h(a)f(shell)g(in)m(teractiv)m(e.)p
eop end
%%Page: 8 14
-TeXDict begin 8 13 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 8 13 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2292 b(8)150 299
-y Fr(3.2)68 b(Shell)45 b(Commands)150 458 y Ft(A)d(simple)g(shell)g
-(command)f(suc)m(h)h(as)g Fs(echo)29 b(a)h(b)g(c)41 b
-Ft(consists)i(of)f(the)f(command)h(itself)h(follo)m(w)m(ed)g(b)m(y)150
+y Fs(3.2)68 b(Shell)45 b(Commands)150 458 y Fu(A)d(simple)g(shell)g
+(command)f(suc)m(h)h(as)g Ft(echo)29 b(a)h(b)g(c)41 b
+Fu(consists)i(of)f(the)f(command)h(itself)h(follo)m(w)m(ed)g(b)m(y)150
568 y(argumen)m(ts,)31 b(separated)g(b)m(y)f(spaces.)275
704 y(More)h(complex)h(shell)f(commands)g(are)g(comp)s(osed)g(of)g
(simple)g(commands)g(arranged)g(together)h(in)150 814
b(a)g(pip)s(eline)f(in)g(whic)m(h)g(the)h(output)f(of)h(one)f(command)h
(b)s(ecomes)f(the)h(input)f(of)150 923 y(a)h(second,)f(in)h(a)f(lo)s
(op)h(or)f(conditional)i(construct,)f(or)f(in)g(some)h(other)g
-(grouping.)150 1124 y Fj(3.2.1)63 b(Simple)41 b(Commands)150
-1271 y Ft(A)29 b(simple)f(command)g(is)h(the)g(kind)e(of)i(command)f
+(grouping.)150 1124 y Fk(3.2.1)63 b(Simple)41 b(Commands)150
+1271 y Fu(A)29 b(simple)f(command)g(is)h(the)g(kind)e(of)i(command)f
(encoun)m(tered)h(most)g(often.)40 b(It's)29 b(just)f(a)h(sequence)g
-(of)150 1381 y(w)m(ords)22 b(separated)i(b)m(y)e Fs(blank)p
-Ft(s,)i(terminated)f(b)m(y)g(one)g(of)g(the)g(shell's)g(con)m(trol)h
+(of)150 1381 y(w)m(ords)22 b(separated)i(b)m(y)e Ft(blank)p
+Fu(s,)i(terminated)f(b)m(y)g(one)g(of)g(the)g(shell's)g(con)m(trol)h
(op)s(erators)f(\(see)h(Chapter)f(2)150 1491 y([De\014nitions],)37
b(page)e(3\).)54 b(The)35 b(\014rst)e(w)m(ord)i(generally)g(sp)s
(eci\014es)g(a)g(command)f(to)h(b)s(e)f(executed,)j(with)150
(command's)f(argumen)m(ts.)275 1736 y(The)h(return)h(status)g(\(see)i
(Section)f(3.7.5)h([Exit)f(Status],)h(page)f(38\))g(of)g(a)g(simple)f
(command)g(is)h(its)150 1846 y(exit)38 b(status)f(as)g(pro)m(vided)f(b)
-m(y)h(the)g Fl(posix)f Ft(1003.1)j Fs(waitpid)c Ft(function,)j(or)f
-(128)p Fs(+)p Fq(n)g Ft(if)g(the)g(command)150 1956 y(w)m(as)31
-b(terminated)g(b)m(y)f(signal)h Fq(n)p Ft(.)150 2157
-y Fj(3.2.2)63 b(Pip)s(elines)150 2304 y Ft(A)35 b Fs(pipeline)e
-Ft(is)j(a)f(sequence)h(of)f(simple)g(commands)g(separated)h(b)m(y)f
+m(y)h(the)g Fm(posix)f Fu(1003.1)j Ft(waitpid)c Fu(function,)j(or)f
+(128)p Ft(+)p Fr(n)g Fu(if)g(the)g(command)150 1956 y(w)m(as)31
+b(terminated)g(b)m(y)f(signal)h Fr(n)p Fu(.)150 2157
+y Fk(3.2.2)63 b(Pip)s(elines)150 2304 y Fu(A)35 b Ft(pipeline)e
+Fu(is)j(a)f(sequence)h(of)f(simple)g(commands)g(separated)h(b)m(y)f
(one)g(of)h(the)f(con)m(trol)i(op)s(erators)150 2413
-y(`)p Fs(|)p Ft(')31 b(or)f(`)p Fs(|&)p Ft('.)275 2550
+y(`)p Ft(|)p Fu(')31 b(or)f(`)p Ft(|&)p Fu('.)275 2550
y(The)f(format)i(for)f(a)h(pip)s(eline)f(is)390 2686
-y Fs([time)46 b([-p]])h([!])g Fi(command1)56 b Fs([)47
-b(|)h(or)f(|&)g Fi(command2)56 b Fs(])47 b(...)150 2822
-y Ft(The)25 b(output)f(of)i(eac)m(h)g(command)f(in)f(the)i(pip)s(eline)
-e(is)i(connected)g(via)f(a)h(pip)s(e)e(to)i(the)f(input)f(of)h(the)h
-(next)150 2932 y(command.)40 b(That)29 b(is,)h(eac)m(h)h(command)e
-(reads)g(the)h(previous)f(command's)g(output.)40 b(This)29
-b(connection)150 3041 y(is)h(p)s(erformed)f(b)s(efore)h(an)m(y)h
-(redirections)g(sp)s(eci\014ed)f(b)m(y)g(the)g(command.)275
-3178 y(If)k(`)p Fs(|&)p Ft(')h(is)f(used,)i Fq(command1)7
-b Ft('s)35 b(standard)f(error,)i(in)e(addition)h(to)h(its)f(standard)f
-(output,)i(is)e(con-)150 3287 y(nected)h(to)g Fq(command2)7
-b Ft('s)35 b(standard)f(input)f(through)h(the)g(pip)s(e;)i(it)f(is)g
-(shorthand)e(for)h Fs(2>&1)29 b(|)p Ft(.)53 b(This)150
-3397 y(implicit)41 b(redirection)f(of)g(the)g(standard)f(error)g(to)h
-(the)g(standard)f(output)g(is)h(p)s(erformed)e(after)j(an)m(y)150
-3506 y(redirections)31 b(sp)s(eci\014ed)f(b)m(y)g(the)g(command.)275
-3643 y(The)36 b(reserv)m(ed)g(w)m(ord)g Fs(time)g Ft(causes)h(timing)g
+y Ft([time)46 b([-p]])h([!])g Fj(command1)e Ft([)j(|)f(or)g(|&)g
+Fj(command2)f Ft(])h(...)150 2822 y Fu(The)25 b(output)f(of)i(eac)m(h)g
+(command)f(in)f(the)i(pip)s(eline)e(is)i(connected)g(via)f(a)h(pip)s(e)
+e(to)i(the)f(input)f(of)h(the)h(next)150 2932 y(command.)40
+b(That)29 b(is,)h(eac)m(h)h(command)e(reads)g(the)h(previous)f
+(command's)g(output.)40 b(This)29 b(connection)150 3041
+y(is)h(p)s(erformed)f(b)s(efore)h(an)m(y)h(redirections)g(sp)s
+(eci\014ed)f(b)m(y)g(the)g(command.)275 3178 y(If)k(`)p
+Ft(|&)p Fu(')h(is)f(used,)i Fr(command1)7 b Fu('s)35
+b(standard)f(error,)i(in)e(addition)h(to)h(its)f(standard)f(output,)i
+(is)e(con-)150 3287 y(nected)h(to)g Fr(command2)7 b Fu('s)35
+b(standard)f(input)f(through)h(the)g(pip)s(e;)i(it)f(is)g(shorthand)e
+(for)h Ft(2>&1)29 b(|)p Fu(.)53 b(This)150 3397 y(implicit)41
+b(redirection)f(of)g(the)g(standard)f(error)g(to)h(the)g(standard)f
+(output)g(is)h(p)s(erformed)e(after)j(an)m(y)150 3506
+y(redirections)31 b(sp)s(eci\014ed)f(b)m(y)g(the)g(command.)275
+3643 y(The)36 b(reserv)m(ed)g(w)m(ord)g Ft(time)g Fu(causes)h(timing)g
(statistics)h(to)f(b)s(e)f(prin)m(ted)g(for)g(the)h(pip)s(eline)f(once)
h(it)150 3752 y(\014nishes.)51 b(The)34 b(statistics)i(curren)m(tly)e
(consist)h(of)f(elapsed)h(\(w)m(all-clo)s(c)m(k\))i(time)e(and)f(user)f
-(and)h(system)150 3862 y(time)28 b(consumed)e(b)m(y)h(the)h(command's)f
-(execution.)40 b(The)27 b(`)p Fs(-p)p Ft(')g(option)h(c)m(hanges)g(the)
-f(output)g(format)g(to)150 3971 y(that)34 b(sp)s(eci\014ed)e(b)m(y)h
-Fl(posix)p Ft(.)49 b(When)33 b(the)g(shell)g(is)h(in)e
-Fl(posix)h Ft(mo)s(de)g(\(see)h(Section)g(6.11)g([Bash)g(POSIX)150
+(and)h(system)150 3862 y(time)e(consumed)e(b)m(y)h(the)g(command's)g
+(execution.)44 b(The)31 b Ft(-p)f Fu(option)i(c)m(hanges)g(the)f
+(output)g(format)g(to)150 3971 y(that)j(sp)s(eci\014ed)e(b)m(y)h
+Fm(posix)p Fu(.)49 b(When)33 b(the)g(shell)g(is)h(in)e
+Fm(posix)h Fu(mo)s(de)g(\(see)h(Section)g(6.11)g([Bash)g(POSIX)150
4081 y(Mo)s(de],)40 b(page)f(94\),)i(it)d(do)s(es)f(not)h(recognize)i
-Fs(time)c Ft(as)i(a)g(reserv)m(ed)g(w)m(ord)f(if)h(the)g(next)g(tok)m
-(en)g(b)s(egins)150 4191 y(with)33 b(a)g(`)p Fs(-)p Ft('.)49
-b(The)33 b Fs(TIMEFORMAT)d Ft(v)-5 b(ariable)34 b(ma)m(y)g(b)s(e)f(set)
+Ft(time)c Fu(as)i(a)g(reserv)m(ed)g(w)m(ord)f(if)h(the)g(next)g(tok)m
+(en)g(b)s(egins)150 4191 y(with)33 b(a)g(`)p Ft(-)p Fu('.)49
+b(The)33 b Ft(TIMEFORMAT)d Fu(v)-5 b(ariable)34 b(ma)m(y)g(b)s(e)f(set)
g(to)h(a)g(format)f(string)g(that)h(sp)s(eci\014es)f(ho)m(w)g(the)150
4300 y(timing)38 b(information)g(should)e(b)s(e)h(displa)m(y)m(ed.)62
b(See)38 b(Section)g(5.2)g([Bash)g(V)-8 b(ariables],)41
b(page)d(69,)i(for)e(a)150 4410 y(description)27 b(of)g(the)h(a)m(v)-5
-b(ailable)29 b(formats.)40 b(The)26 b(use)h(of)g Fs(time)f
-Ft(as)i(a)f(reserv)m(ed)g(w)m(ord)g(p)s(ermits)f(the)h(timing)150
+b(ailable)29 b(formats.)40 b(The)26 b(use)h(of)g Ft(time)f
+Fu(as)i(a)f(reserv)m(ed)g(w)m(ord)g(p)s(ermits)f(the)h(timing)150
4519 y(of)38 b(shell)g(builtins,)i(shell)e(functions,)i(and)d(pip)s
-(elines.)63 b(An)38 b(external)h Fs(time)e Ft(command)h(cannot)g(time)
+(elines.)63 b(An)38 b(external)h Ft(time)e Fu(command)h(cannot)g(time)
150 4629 y(these)31 b(easily)-8 b(.)275 4765 y(When)29
-b(the)h(shell)h(is)f(in)f Fl(posix)g Ft(mo)s(de)h(\(see)h(Section)f
-(6.11)i([Bash)e(POSIX)f(Mo)s(de],)i(page)g(94\),)g Fs(time)150
-4875 y Ft(ma)m(y)26 b(b)s(e)f(follo)m(w)m(ed)j(b)m(y)d(a)h(newline.)39
+b(the)h(shell)h(is)f(in)f Fm(posix)g Fu(mo)s(de)h(\(see)h(Section)f
+(6.11)i([Bash)e(POSIX)f(Mo)s(de],)i(page)g(94\),)g Ft(time)150
+4875 y Fu(ma)m(y)26 b(b)s(e)f(follo)m(w)m(ed)j(b)m(y)d(a)h(newline.)39
b(In)25 b(this)h(case,)i(the)d(shell)h(displa)m(ys)g(the)g(total)h
(user)e(and)g(system)h(time)150 4984 y(consumed)33 b(b)m(y)h(the)h
-(shell)f(and)f(its)i(c)m(hildren.)51 b(The)34 b Fs(TIMEFORMAT)d
-Ft(v)-5 b(ariable)35 b(ma)m(y)g(b)s(e)e(used)g(to)i(sp)s(ecify)150
+(shell)f(and)f(its)i(c)m(hildren.)51 b(The)34 b Ft(TIMEFORMAT)d
+Fu(v)-5 b(ariable)35 b(ma)m(y)g(b)s(e)e(used)g(to)i(sp)s(ecify)150
5094 y(the)c(format)f(of)h(the)f(time)h(information.)275
5230 y(If)24 b(the)h(pip)s(eline)g(is)g(not)g(executed)h(async)m
(hronously)f(\(see)h(Section)g(3.2.3)h([Lists],)g(page)e(9\),)i(the)f
(shell)150 5340 y(w)m(aits)31 b(for)f(all)i(commands)e(in)g(the)g(pip)s
(eline)g(to)h(complete.)p eop end
%%Page: 9 15
-TeXDict begin 9 14 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 9 14 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2292 b(9)275 299
y(Eac)m(h)25 b(command)g(in)g(a)g(pip)s(eline)g(is)g(executed)h(in)f
(its)g(o)m(wn)h(subshell)e(\(see)i(Section)g(3.7.3)h([Command)150
408 y(Execution)36 b(En)m(vironmen)m(t],)i(page)e(36\).)58
b(The)36 b(exit)g(status)g(of)g(a)g(pip)s(eline)g(is)f(the)h(exit)h
(status)f(of)g(the)150 518 y(last)27 b(command)f(in)f(the)i(pip)s
-(eline,)f(unless)g(the)g Fs(pipefail)e Ft(option)i(is)g(enabled)g
+(eline,)f(unless)g(the)g Ft(pipefail)e Fu(option)i(is)g(enabled)g
(\(see)h(Section)g(4.3.1)h([The)150 628 y(Set)34 b(Builtin],)j(page)e
-(59\).)53 b(If)34 b Fs(pipefail)e Ft(is)i(enabled,)h(the)g(pip)s
+(58\).)53 b(If)34 b Ft(pipefail)e Fu(is)i(enabled,)h(the)g(pip)s
(eline's)f(return)f(status)h(is)h(the)f(v)-5 b(alue)35
b(of)150 737 y(the)d(last)h(\(righ)m(tmost\))h(command)e(to)h(exit)g
(with)e(a)i(non-zero)f(status,)h(or)f(zero)h(if)f(all)h(commands)f
(exit)150 847 y(successfully)-8 b(.)67 b(If)38 b(the)h(reserv)m(ed)g(w)
-m(ord)g(`)p Fs(!)p Ft(')g(precedes)g(the)g(pip)s(eline,)h(the)g(exit)f
+m(ord)g(`)p Ft(!)p Fu(')g(precedes)g(the)g(pip)s(eline,)h(the)g(exit)f
(status)g(is)g(the)g(logical)150 956 y(negation)h(of)f(the)f(exit)i
(status)f(as)f(describ)s(ed)g(ab)s(o)m(v)m(e.)66 b(The)38
b(shell)h(w)m(aits)h(for)e(all)h(commands)g(in)f(the)150
1066 y(pip)s(eline)30 b(to)h(terminate)g(b)s(efore)f(returning)g(a)h(v)
--5 b(alue.)150 1262 y Fj(3.2.3)63 b(Lists)41 b(of)h(Commands)150
-1409 y Ft(A)37 b Fs(list)e Ft(is)i(a)g(sequence)g(of)g(one)g(or)f(more)
+-5 b(alue.)150 1262 y Fk(3.2.3)63 b(Lists)41 b(of)h(Commands)150
+1409 y Fu(A)37 b Ft(list)e Fu(is)i(a)g(sequence)g(of)g(one)g(or)f(more)
h(pip)s(elines)f(separated)h(b)m(y)g(one)g(of)f(the)h(op)s(erators)g(`)
-p Fs(;)p Ft(',)i(`)p Fs(&)p Ft(',)150 1518 y(`)p Fs(&&)p
-Ft(',)31 b(or)f(`)p Fs(||)p Ft(',)g(and)g(optionally)i(terminated)f(b)m
-(y)f(one)h(of)f(`)p Fs(;)p Ft(',)h(`)p Fs(&)p Ft(',)g(or)f(a)h
-Fs(newline)p Ft(.)275 1651 y(Of)23 b(these)h(list)g(op)s(erators,)i(`)p
-Fs(&&)p Ft(')d(and)g(`)p Fs(||)p Ft(')h(ha)m(v)m(e)h(equal)f
-(precedence,)i(follo)m(w)m(ed)f(b)m(y)f(`)p Fs(;)p Ft(')g(and)f(`)p
-Fs(&)p Ft(',)i(whic)m(h)150 1761 y(ha)m(v)m(e)32 b(equal)e(precedence.)
+p Ft(;)p Fu(',)i(`)p Ft(&)p Fu(',)150 1518 y(`)p Ft(&&)p
+Fu(',)31 b(or)f(`)p Ft(||)p Fu(',)g(and)g(optionally)i(terminated)f(b)m
+(y)f(one)h(of)f(`)p Ft(;)p Fu(',)h(`)p Ft(&)p Fu(',)g(or)f(a)h
+Ft(newline)p Fu(.)275 1651 y(Of)23 b(these)h(list)g(op)s(erators,)i(`)p
+Ft(&&)p Fu(')d(and)g(`)p Ft(||)p Fu(')h(ha)m(v)m(e)h(equal)f
+(precedence,)i(follo)m(w)m(ed)f(b)m(y)f(`)p Ft(;)p Fu(')g(and)f(`)p
+Ft(&)p Fu(',)i(whic)m(h)150 1761 y(ha)m(v)m(e)32 b(equal)e(precedence.)
275 1893 y(A)f(sequence)h(of)g(one)g(or)g(more)g(newlines)f(ma)m(y)h
-(app)s(ear)f(in)h(a)g Fs(list)e Ft(to)j(delimit)f(commands,)g(equiv-)
+(app)s(ear)f(in)h(a)g Ft(list)e Fu(to)j(delimit)f(commands,)g(equiv-)
150 2003 y(alen)m(t)i(to)f(a)g(semicolon.)275 2136 y(If)c(a)h(command)f
(is)h(terminated)g(b)m(y)g(the)g(con)m(trol)h(op)s(erator)f(`)p
-Fs(&)p Ft(',)h(the)e(shell)h(executes)h(the)f(command)150
-2245 y(async)m(hronously)g(in)g(a)h(subshell.)39 b(This)28
-b(is)g(kno)m(wn)g(as)h(executing)h(the)e(command)h(in)f(the)g
-Fq(bac)m(kground)t Ft(.)150 2355 y(The)g(shell)h(do)s(es)f(not)h(w)m
+Ft(&)p Fu(',)h(the)e(shell)h(executes)h(the)f(command)150
+2245 y(async)m(hronously)g(in)h(a)g(subshell.)39 b(This)28
+b(is)h(kno)m(wn)f(as)h(executing)h(the)f(command)g(in)f(the)h
+Fr(bac)m(kground)p Fu(.)150 2355 y(The)f(shell)h(do)s(es)f(not)h(w)m
(ait)g(for)f(the)h(command)f(to)i(\014nish,)d(and)h(the)h(return)e
(status)i(is)g(0)g(\(true\).)40 b(When)150 2464 y(job)g(con)m(trol)h
(is)g(not)f(activ)m(e)i(\(see)f(Chapter)f(7)h([Job)f(Con)m(trol],)j
-(page)e(98\),)j(the)d(standard)e(input)g(for)150 2574
+(page)e(97\),)j(the)d(standard)e(input)g(for)150 2574
y(async)m(hronous)k(commands,)k(in)d(the)f(absence)i(of)f(an)m(y)g
(explicit)h(redirections,)j(is)43 b(redirected)h(from)150
-2684 y Fs(/dev/null)p Ft(.)275 2816 y(Commands)19 b(separated)j(b)m(y)f
-(a)g(`)p Fs(;)p Ft(')g(are)h(executed)g(sequen)m(tially;)k(the)21
+2684 y Ft(/dev/null)p Fu(.)275 2816 y(Commands)19 b(separated)j(b)m(y)f
+(a)g(`)p Ft(;)p Fu(')g(are)h(executed)g(sequen)m(tially;)k(the)21
b(shell)g(w)m(aits)h(for)f(eac)m(h)h(command)150 2926
y(to)31 b(terminate)h(in)e(turn.)39 b(The)30 b(return)f(status)i(is)f
(the)h(exit)g(status)g(of)g(the)f(last)h(command)f(executed.)275
-3059 y Fl(and)g Ft(and)h Fl(or)g Ft(lists)h(are)g(sequences)f(of)h(one)
+3059 y Fm(and)g Fu(and)h Fm(or)g Fu(lists)h(are)g(sequences)f(of)h(one)
g(or)f(more)h(pip)s(elines)e(separated)i(b)m(y)g(the)f(con)m(trol)i(op)
-s(er-)150 3168 y(ators)e(`)p Fs(&&)p Ft(')f(and)g(`)p
-Fs(||)p Ft(',)h(resp)s(ectiv)m(ely)-8 b(.)42 b Fl(and)30
-b Ft(and)f Fl(or)h Ft(lists)h(are)g(executed)g(with)f(left)h(asso)s
-(ciativit)m(y)-8 b(.)275 3301 y(An)30 b Fl(and)f Ft(list)i(has)f(the)h
-(form)390 3434 y Fi(command1)56 b Fs(&&)47 b Fi(command2)150
-3566 y Fq(command2)38 b Ft(is)30 b(executed)i(if,)e(and)g(only)g(if,)h
-Fq(command1)38 b Ft(returns)29 b(an)h(exit)h(status)g(of)g(zero.)275
-3699 y(An)f Fl(or)f Ft(list)i(has)f(the)h(form)390 3832
-y Fi(command1)56 b Fs(||)47 b Fi(command2)150 3965 y
-Fq(command2)38 b Ft(is)30 b(executed)i(if,)e(and)g(only)g(if,)h
-Fq(command1)38 b Ft(returns)29 b(a)i(non-zero)g(exit)g(status.)275
-4097 y(The)h(return)g(status)i(of)f Fl(and)f Ft(and)h
-Fl(or)f Ft(lists)i(is)f(the)g(exit)h(status)g(of)f(the)g(last)h
-(command)f(executed)150 4207 y(in)d(the)h(list.)150 4403
-y Fj(3.2.4)63 b(Comp)s(ound)42 b(Commands)150 4550 y
-Ft(Comp)s(ound)32 b(commands)j(are)g(the)g(shell)g(programming)f
-(constructs.)54 b(Eac)m(h)35 b(construct)g(b)s(egins)f(with)150
-4659 y(a)k(reserv)m(ed)f(w)m(ord)h(or)f(con)m(trol)i(op)s(erator)f(and)
-f(is)g(terminated)h(b)m(y)f(a)h(corresp)s(onding)f(reserv)m(ed)g(w)m
-(ord)150 4769 y(or)44 b(op)s(erator.)81 b(An)m(y)44 b(redirections)g
-(\(see)h(Section)g(3.6)g([Redirections],)j(page)d(31\))g(asso)s(ciated)
-g(with)150 4878 y(a)g(comp)s(ound)e(command)i(apply)f(to)h(all)h
-(commands)e(within)g(that)h(comp)s(ound)e(command)i(unless)150
-4988 y(explicitly)32 b(o)m(v)m(erridden.)275 5121 y(In)20
+s(er-)150 3168 y(ators)e(`)p Ft(&&)p Fu(')f(and)g(`)p
+Ft(||)p Fu(',)h(resp)s(ectiv)m(ely)-8 b(.)42 b Fm(and)30
+b Fu(and)f Fm(or)h Fu(lists)h(are)g(executed)g(with)f(left)h(asso)s
+(ciativit)m(y)-8 b(.)275 3301 y(An)30 b Fm(and)f Fu(list)i(has)f(the)h
+(form)390 3434 y Fj(command1)46 b Ft(&&)h Fj(command2)150
+3566 y Fr(command2)38 b Fu(is)30 b(executed)i(if,)e(and)g(only)g(if,)h
+Fr(command1)38 b Fu(returns)29 b(an)h(exit)h(status)g(of)g(zero.)275
+3699 y(An)f Fm(or)f Fu(list)i(has)f(the)h(form)390 3832
+y Fj(command1)46 b Ft(||)h Fj(command2)150 3965 y Fr(command2)38
+b Fu(is)30 b(executed)i(if,)e(and)g(only)g(if,)h Fr(command1)38
+b Fu(returns)29 b(a)i(non-zero)g(exit)g(status.)275 4097
+y(The)h(return)g(status)i(of)f Fm(and)f Fu(and)h Fm(or)f
+Fu(lists)i(is)f(the)g(exit)h(status)g(of)f(the)g(last)h(command)f
+(executed)150 4207 y(in)d(the)h(list.)150 4403 y Fk(3.2.4)63
+b(Comp)s(ound)42 b(Commands)150 4550 y Fu(Comp)s(ound)32
+b(commands)j(are)g(the)g(shell)g(programming)f(constructs.)54
+b(Eac)m(h)35 b(construct)g(b)s(egins)f(with)150 4659
+y(a)k(reserv)m(ed)f(w)m(ord)h(or)f(con)m(trol)i(op)s(erator)f(and)f(is)
+g(terminated)h(b)m(y)f(a)h(corresp)s(onding)f(reserv)m(ed)g(w)m(ord)150
+4769 y(or)44 b(op)s(erator.)81 b(An)m(y)44 b(redirections)g(\(see)h
+(Section)g(3.6)g([Redirections],)j(page)d(31\))g(asso)s(ciated)g(with)
+150 4878 y(a)g(comp)s(ound)e(command)i(apply)f(to)h(all)h(commands)e
+(within)g(that)h(comp)s(ound)e(command)i(unless)150 4988
+y(explicitly)32 b(o)m(v)m(erridden.)275 5121 y(In)20
b(most)h(cases)g(a)g(list)h(of)f(commands)f(in)g(a)h(comp)s(ound)f
(command's)g(description)h(ma)m(y)g(b)s(e)f(separated)150
5230 y(from)30 b(the)h(rest)g(of)g(the)g(command)g(b)m(y)f(one)h(or)g
(newline)150 5340 y(in)f(place)h(of)g(a)g(semicolon.)p
eop end
%%Page: 10 16
-TeXDict begin 10 15 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 10 15 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(10)275 299
y(Bash)45 b(pro)m(vides)h(lo)s(oping)g(constructs,)j(conditional)e
(commands,)j(and)44 b(mec)m(hanisms)i(to)g(group)150
408 y(commands)30 b(and)g(execute)i(them)e(as)g(a)h(unit.)150
-609 y Fj(3.2.4.1)63 b(Lo)s(oping)43 b(Constructs)150
-756 y Ft(Bash)31 b(supp)s(orts)d(the)j(follo)m(wing)g(lo)s(oping)g
+609 y Fk(3.2.4.1)63 b(Lo)s(oping)43 b(Constructs)150
+756 y Fu(Bash)31 b(supp)s(orts)d(the)j(follo)m(wing)g(lo)s(oping)g
(constructs.)275 891 y(Note)k(that)f(wherev)m(er)g(a)g(`)p
-Fs(;)p Ft(')g(app)s(ears)f(in)h(the)g(description)g(of)g(a)g(command's)
+Ft(;)p Fu(')g(app)s(ears)f(in)h(the)g(description)g(of)g(a)g(command's)
g(syn)m(tax,)i(it)e(ma)m(y)h(b)s(e)150 1001 y(replaced)c(with)f(one)h
-(or)f(more)g(newlines.)150 1162 y Fs(until)240 b Ft(The)30
-b(syn)m(tax)h(of)f(the)h Fs(until)e Ft(command)h(is:)870
-1297 y Fs(until)46 b Fi(test-commands)11 b Fs(;)44 b(do)j
-Fi(consequent-commands)11 b Fs(;)42 b(done)630 1432 y
-Ft(Execute)g Fq(consequen)m(t-commands)k Ft(as)41 b(long)h(as)f
-Fq(test-commands)46 b Ft(has)41 b(an)g(exit)h(status)630
-1542 y(whic)m(h)c(is)h(not)g(zero.)67 b(The)38 b(return)g(status)h(is)f
-(the)h(exit)h(status)f(of)g(the)g(last)g(command)630
-1651 y(executed)31 b(in)f Fq(consequen)m(t-commands)t
-Ft(,)h(or)g(zero)g(if)f(none)h(w)m(as)f(executed.)150
-1812 y Fs(while)240 b Ft(The)30 b(syn)m(tax)h(of)f(the)h
-Fs(while)e Ft(command)h(is:)870 1947 y Fs(while)46 b
-Fi(test-commands)11 b Fs(;)44 b(do)j Fi(consequent-commands)11
-b Fs(;)42 b(done)630 2082 y Ft(Execute)g Fq(consequen)m(t-commands)k
-Ft(as)41 b(long)h(as)f Fq(test-commands)46 b Ft(has)41
+(or)f(more)g(newlines.)150 1162 y Ft(until)240 b Fu(The)30
+b(syn)m(tax)h(of)f(the)h Ft(until)e Fu(command)h(is:)870
+1297 y Ft(until)46 b Fj(test-commands)p Ft(;)e(do)j Fj
+(consequent-commands)p Ft(;)c(done)630 1432 y Fu(Execute)f
+Fr(consequen)m(t-commands)k Fu(as)41 b(long)h(as)f Fr(test-commands)46
+b Fu(has)41 b(an)g(exit)h(status)630 1542 y(whic)m(h)c(is)h(not)g
+(zero.)67 b(The)38 b(return)g(status)h(is)f(the)h(exit)h(status)f(of)g
+(the)g(last)g(command)630 1651 y(executed)31 b(in)f Fr(consequen)m
+(t-commands)p Fu(,)i(or)e(zero)h(if)g(none)f(w)m(as)h(executed.)150
+1812 y Ft(while)240 b Fu(The)30 b(syn)m(tax)h(of)f(the)h
+Ft(while)e Fu(command)h(is:)870 1947 y Ft(while)46 b
+Fj(test-commands)p Ft(;)e(do)j Fj(consequent-commands)p
+Ft(;)c(done)630 2082 y Fu(Execute)f Fr(consequen)m(t-commands)k
+Fu(as)41 b(long)h(as)f Fr(test-commands)46 b Fu(has)41
b(an)g(exit)h(status)630 2192 y(of)34 b(zero.)53 b(The)34
b(return)f(status)h(is)h(the)f(exit)h(status)g(of)f(the)g(last)h
-(command)f(executed)h(in)630 2301 y Fq(consequen)m(t-commands)t
-Ft(,)c(or)g(zero)g(if)f(none)g(w)m(as)h(executed.)150
-2462 y Fs(for)336 b Ft(The)30 b(syn)m(tax)h(of)f(the)h
-Fs(for)e Ft(command)i(is:)870 2597 y Fs(for)47 b Fi(name)57
-b Fs([)48 b([in)e([)p Fi(words)57 b Fs(...)o(])48 b(])f(;)h(])f(do)g
-Fi(commands)11 b Fs(;)45 b(done)630 2732 y Ft(Expand)31
-b Fq(w)m(ords)t Ft(,)i(and)e(execute)j Fq(commands)i
-Ft(once)d(for)f(eac)m(h)i(mem)m(b)s(er)e(in)g(the)g(resultan)m(t)630
-2841 y(list,)d(with)f Fq(name)33 b Ft(b)s(ound)26 b(to)j(the)f(curren)m
-(t)g(mem)m(b)s(er.)40 b(If)27 b(`)p Fs(in)j Fi(words)11
-b Ft(')27 b(is)h(not)g(presen)m(t,)h(the)630 2951 y Fs(for)g
-Ft(command)g(executes)i(the)e Fq(commands)k Ft(once)d(for)f(eac)m(h)i
-(p)s(ositional)f(parameter)g(that)630 3060 y(is)d(set,)h(as)f(if)g(`)p
-Fs(in)j("$@")p Ft(')c(had)g(b)s(een)g(sp)s(eci\014ed)g(\(see)i(Section)
-f(3.4.2)i([Sp)s(ecial)e(P)m(arameters],)630 3170 y(page)c(20\).)39
-b(The)21 b(return)g(status)h(is)g(the)g(exit)h(status)f(of)g(the)g
-(last)g(command)g(that)g(executes.)630 3280 y(If)37 b(there)h(are)g(no)
-g(items)g(in)g(the)g(expansion)g(of)f Fq(w)m(ords)t Ft(,)j(no)d
-(commands)h(are)g(executed,)630 3389 y(and)30 b(the)g(return)g(status)g
-(is)h(zero.)630 3524 y(An)f(alternate)i(form)e(of)h(the)f
-Fs(for)g Ft(command)g(is)g(also)h(supp)s(orted:)870 3659
-y Fs(for)47 b(\(\()g Fi(expr1)57 b Fs(;)47 b Fi(expr2)57
-b Fs(;)48 b Fi(expr3)57 b Fs(\)\))47 b(;)g(do)g Fi(commands)57
-b Fs(;)47 b(done)630 3794 y Ft(First,)38 b(the)f(arithmetic)h
-(expression)e Fq(expr1)43 b Ft(is)36 b(ev)-5 b(aluated)38
+(command)f(executed)h(in)630 2301 y Fr(consequen)m(t-commands)p
+Fu(,)c(or)g(zero)g(if)f(none)g(w)m(as)h(executed.)150
+2462 y Ft(for)336 b Fu(The)30 b(syn)m(tax)h(of)f(the)h
+Ft(for)e Fu(command)i(is:)870 2597 y Ft(for)47 b Fj(name)g
+Ft([)g([in)g([)p Fj(words)f Ft(...)o(])i(])f(;)h(])f(do)g
+Fj(commands)p Ft(;)e(done)630 2732 y Fu(Expand)31 b Fr(w)m(ords)p
+Fu(,)j(and)e(execute)i Fr(commands)i Fu(once)d(for)g(eac)m(h)h(mem)m(b)
+s(er)e(in)g(the)h(resultan)m(t)630 2841 y(list,)d(with)f
+Fr(name)34 b Fu(b)s(ound)27 b(to)i(the)h(curren)m(t)e(mem)m(b)s(er.)40
+b(If)28 b(`)p Ft(in)i Fj(words)p Fu(')e(is)h(not)g(presen)m(t,)h(the)
+630 2951 y Ft(for)f Fu(command)g(executes)i(the)e Fr(commands)k
+Fu(once)d(for)f(eac)m(h)i(p)s(ositional)f(parameter)g(that)630
+3060 y(is)d(set,)h(as)f(if)g(`)p Ft(in)j("$@")p Fu(')c(had)g(b)s(een)g
+(sp)s(eci\014ed)g(\(see)i(Section)f(3.4.2)i([Sp)s(ecial)e(P)m
+(arameters],)630 3170 y(page)c(20\).)39 b(The)21 b(return)g(status)h
+(is)g(the)g(exit)h(status)f(of)g(the)g(last)g(command)g(that)g
+(executes.)630 3280 y(If)i(there)h(are)h(no)e(items)i(in)e(the)h
+(expansion)g(of)g Fr(w)m(ords)p Fu(,)h(no)f(commands)f(are)h(executed,)
+j(and)630 3389 y(the)j(return)e(status)i(is)f(zero.)630
+3524 y(An)g(alternate)i(form)e(of)h(the)f Ft(for)g Fu(command)g(is)g
+(also)h(supp)s(orted:)870 3659 y Ft(for)47 b(\(\()g Fj(expr1)f
+Ft(;)i Fj(expr2)e Ft(;)i Fj(expr3)e Ft(\)\))h(;)h(do)f
+Fj(commands)e Ft(;)j(done)630 3794 y Fu(First,)38 b(the)f(arithmetic)h
+(expression)e Fr(expr1)43 b Fu(is)36 b(ev)-5 b(aluated)38
b(according)f(to)g(the)g(rules)f(de-)630 3904 y(scrib)s(ed)41
b(b)s(elo)m(w)h(\(see)h(Section)g(6.5)g([Shell)g(Arithmetic],)j(page)d
(87\).)77 b(The)42 b(arithmetic)630 4014 y(expression)33
-b Fq(expr2)41 b Ft(is)34 b(then)f(ev)-5 b(aluated)35
+b Fr(expr2)41 b Fu(is)34 b(then)f(ev)-5 b(aluated)35
b(rep)s(eatedly)f(un)m(til)g(it)g(ev)-5 b(aluates)35
-b(to)g(zero.)51 b(Eac)m(h)630 4123 y(time)23 b Fq(expr2)30
-b Ft(ev)-5 b(aluates)25 b(to)e(a)g(non-zero)h(v)-5 b(alue,)25
-b Fq(commands)h Ft(are)d(executed)g(and)g(the)g(arith-)630
-4233 y(metic)29 b(expression)f Fq(expr3)36 b Ft(is)28
+b(to)g(zero.)51 b(Eac)m(h)630 4123 y(time)23 b Fr(expr2)30
+b Fu(ev)-5 b(aluates)25 b(to)e(a)g(non-zero)h(v)-5 b(alue,)25
+b Fr(commands)h Fu(are)d(executed)g(and)g(the)g(arith-)630
+4233 y(metic)29 b(expression)f Fr(expr3)36 b Fu(is)28
b(ev)-5 b(aluated.)41 b(If)28 b(an)m(y)h(expression)f(is)g(omitted,)i
(it)f(b)s(eha)m(v)m(es)g(as)630 4342 y(if)i(it)h(ev)-5
b(aluates)32 b(to)g(1.)44 b(The)30 b(return)g(v)-5 b(alue)32
b(is)f(the)g(exit)h(status)g(of)f(the)g(last)h(command)f(in)630
-4452 y Fq(commands)j Ft(that)d(is)f(executed,)i(or)e(false)h(if)f(an)m
+4452 y Fr(commands)j Fu(that)d(is)f(executed,)i(or)e(false)h(if)f(an)m
(y)h(of)g(the)f(expressions)g(is)h(in)m(v)-5 b(alid.)275
-4613 y(The)26 b Fs(break)g Ft(and)h Fs(continue)e Ft(builtins)i(\(see)h
+4613 y(The)26 b Ft(break)g Fu(and)h Ft(continue)e Fu(builtins)i(\(see)h
(Section)h(4.1)f([Bourne)g(Shell)f(Builtins],)i(page)f(41\))g(ma)m(y)
150 4723 y(b)s(e)i(used)f(to)i(con)m(trol)h(lo)s(op)f(execution.)150
-4923 y Fj(3.2.4.2)63 b(Conditional)42 b(Constructs)150
-5095 y Fs(if)384 b Ft(The)30 b(syn)m(tax)h(of)f(the)h
-Fs(if)f Ft(command)g(is:)870 5230 y Fs(if)47 b Fi(test-commands)11
-b Fs(;)44 b(then)965 5340 y Fi(consequent-commands)11
-b Fs(;)p eop end
+4923 y Fk(3.2.4.2)63 b(Conditional)42 b(Constructs)150
+5095 y Ft(if)384 b Fu(The)30 b(syn)m(tax)h(of)f(the)h
+Ft(if)f Fu(command)g(is:)870 5230 y Ft(if)47 b Fj(test-commands)p
+Ft(;)d(then)965 5340 y Fj(consequent-commands)p Ft(;)p
+eop end
%%Page: 11 17
-TeXDict begin 11 16 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 11 16 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(11)870 299
-y Fs([elif)46 b Fi(more-test-commands)11 b Fs(;)42 b(then)965
-408 y Fi(more-consequents)11 b Fs(;])870 518 y([else)46
-b Fi(alternate-consequents)11 b Fs(;])870 628 y(fi)630
-757 y Ft(The)53 b Fq(test-commands)58 b Ft(list)c(is)g(executed,)60
+y Ft([elif)46 b Fj(more-test-commands)p Ft(;)d(then)965
+408 y Fj(more-consequents)p Ft(;])870 518 y([else)j Fj
+(alternate-consequents)p Ft(;])870 628 y(fi)630 757 y
+Fu(The)53 b Fr(test-commands)58 b Fu(list)c(is)g(executed,)60
b(and)53 b(if)g(its)h(return)e(status)i(is)f(zero,)61
-b(the)630 867 y Fq(consequen)m(t-commands)44 b Ft(list)d(is)f
-(executed.)70 b(If)40 b Fq(test-commands)k Ft(returns)39
-b(a)h(non-zero)630 976 y(status,)45 b(eac)m(h)e Fs(elif)d
-Ft(list)i(is)g(executed)h(in)e(turn,)j(and)d(if)g(its)h(exit)h(status)f
+b(the)630 867 y Fr(consequen)m(t-commands)44 b Fu(list)d(is)f
+(executed.)70 b(If)40 b Fr(test-commands)k Fu(returns)39
+b(a)h(non-zero)630 976 y(status,)45 b(eac)m(h)e Ft(elif)d
+Fu(list)i(is)g(executed)h(in)e(turn,)j(and)d(if)g(its)h(exit)h(status)f
(is)f(zero,)46 b(the)630 1086 y(corresp)s(onding)37 b
-Fq(more-consequen)m(ts)42 b Ft(is)c(executed)g(and)f(the)h(command)g
-(completes.)63 b(If)630 1196 y(`)p Fs(else)29 b Fi
-(alternate-consequents)11 b Ft(')23 b(is)30 b(presen)m(t,)f(and)g(the)g
-(\014nal)g(command)f(in)h(the)g(\014nal)630 1305 y Fs(if)44
-b Ft(or)g Fs(elif)f Ft(clause)i(has)f(a)h(non-zero)g(exit)g(status,)j
-(then)c Fq(alternate-consequen)m(ts)51 b Ft(is)630 1415
+Fr(more-consequen)m(ts)42 b Fu(is)c(executed)g(and)f(the)h(command)g
+(completes.)63 b(If)630 1196 y(`)p Ft(else)29 b Fj
+(alternate-consequents)p Fu(')c(is)30 b(presen)m(t,)h(and)f(the)g
+(\014nal)g(command)g(in)g(the)g(\014nal)630 1305 y Ft(if)44
+b Fu(or)g Ft(elif)f Fu(clause)i(has)f(a)h(non-zero)g(exit)g(status,)j
+(then)c Fr(alternate-consequen)m(ts)51 b Fu(is)630 1415
y(executed.)k(The)34 b(return)g(status)h(is)f(the)h(exit)h(status)f(of)
g(the)g(last)g(command)g(executed,)630 1524 y(or)30 b(zero)i(if)e(no)g
-(condition)h(tested)g(true.)150 1674 y Fs(case)288 b
-Ft(The)30 b(syn)m(tax)h(of)f(the)h Fs(case)e Ft(command)h(is:)870
-1803 y Fs(case)47 b Fi(word)57 b Fs(in)47 b([)g([\(])g
-Fi(pattern)57 b Fs([|)47 b Fi(pattern)11 b Fs(]...)l(\))48
-b Fi(command-list)55 b Fs(;;]...)46 b(esac)630 1933 y(case)20
-b Ft(will)i(selectiv)m(ely)j(execute)e(the)e Fq(command-list)k
-Ft(corresp)s(onding)20 b(to)i(the)g(\014rst)f Fq(pattern)630
-2042 y Ft(that)42 b(matc)m(hes)g Fq(w)m(ord)t Ft(.)71
-b(If)41 b(the)g(shell)g(option)g Fs(nocasematch)d Ft(\(see)k(the)f
-(description)g(of)630 2152 y Fs(shopt)34 b Ft(in)h(Section)h(4.3.2)h
-([The)e(Shopt)f(Builtin],)k(page)e(63\))g(is)g(enabled,)g(the)g(matc)m
-(h)g(is)630 2262 y(p)s(erformed)29 b(without)i(regard)g(to)g(the)g
-(case)h(of)f(alphab)s(etic)g(c)m(haracters.)44 b(The)30
-b(`)p Fs(|)p Ft(')h(is)g(used)630 2371 y(to)e(separate)g(m)m(ultiple)g
-(patterns,)g(and)e(the)i(`)p Fs(\))p Ft(')f(op)s(erator)g(terminates)h
-(a)g(pattern)f(list.)41 b(A)630 2481 y(list)31 b(of)g(patterns)f(and)g
-(an)g(asso)s(ciated)i(command-list)f(is)f(kno)m(wn)g(as)h(a)g
-Fq(clause)5 b Ft(.)630 2610 y(Eac)m(h)42 b(clause)g(m)m(ust)f(b)s(e)g
-(terminated)h(with)e(`)p Fs(;;)p Ft(',)45 b(`)p Fs(;&)p
-Ft(',)f(or)d(`)p Fs(;;&)p Ft('.)73 b(The)41 b Fq(w)m(ord)j
-Ft(under-)630 2720 y(go)s(es)35 b(tilde)f(expansion,)h(parameter)g
-(expansion,)g(command)f(substitution,)h(arithmetic)630
-2829 y(expansion,)47 b(and)d(quote)g(remo)m(v)-5 b(al)45
-b(b)s(efore)f(matc)m(hing)h(is)f(attempted.)82 b(Eac)m(h)45
-b Fq(pattern)630 2939 y Ft(undergo)s(es)38 b(tilde)h(expansion,)i
-(parameter)e(expansion,)i(command)d(substitution,)j(and)630
-3049 y(arithmetic)32 b(expansion.)630 3178 y(There)e(ma)m(y)g(b)s(e)f
-(an)h(arbitrary)g(n)m(um)m(b)s(er)f(of)h Fs(case)f Ft(clauses,)i(eac)m
-(h)g(terminated)g(b)m(y)e(a)i(`)p Fs(;;)p Ft(',)630 3288
-y(`)p Fs(;&)p Ft(',)c(or)e(`)p Fs(;;&)p Ft('.)39 b(The)25
-b(\014rst)g(pattern)h(that)g(matc)m(hes)h(determines)e(the)h
-(command-list)g(that)630 3397 y(is)35 b(executed.)55
-b(It's)35 b(a)g(common)g(idiom)g(to)g(use)g(`)p Fs(*)p
-Ft(')g(as)g(the)g(\014nal)f(pattern)h(to)h(de\014ne)e(the)630
+(condition)h(tested)g(true.)150 1674 y Ft(case)288 b
+Fu(The)30 b(syn)m(tax)h(of)f(the)h Ft(case)e Fu(command)h(is:)870
+1803 y Ft(case)47 b Fj(word)f Ft(in)h([)h([\(])f Fj(pattern)f
+Ft([|)h Fj(pattern)p Ft(]...)m(\))g Fj(command-list)e
+Ft(;;]...)h(esac)630 1933 y(case)20 b Fu(will)i(selectiv)m(ely)j
+(execute)e(the)e Fr(command-list)k Fu(corresp)s(onding)20
+b(to)i(the)g(\014rst)f Fr(pattern)630 2042 y Fu(that)42
+b(matc)m(hes)g Fr(w)m(ord)p Fu(.)73 b(If)41 b(the)g(shell)g(option)h
+Ft(nocasematch)c Fu(\(see)k(the)g(description)f(of)630
+2152 y Ft(shopt)34 b Fu(in)h(Section)h(4.3.2)h([The)e(Shopt)f
+(Builtin],)k(page)e(62\))g(is)g(enabled,)g(the)g(matc)m(h)g(is)630
+2262 y(p)s(erformed)29 b(without)i(regard)g(to)g(the)g(case)h(of)f
+(alphab)s(etic)g(c)m(haracters.)44 b(The)30 b(`)p Ft(|)p
+Fu(')h(is)g(used)630 2371 y(to)e(separate)g(m)m(ultiple)g(patterns,)g
+(and)e(the)i(`)p Ft(\))p Fu(')f(op)s(erator)g(terminates)h(a)g(pattern)
+f(list.)41 b(A)630 2481 y(list)31 b(of)g(patterns)f(and)g(an)g(asso)s
+(ciated)i(command-list)f(is)f(kno)m(wn)g(as)h(a)g Fr(clause)p
+Fu(.)630 2610 y(Eac)m(h)42 b(clause)g(m)m(ust)f(b)s(e)g(terminated)h
+(with)e(`)p Ft(;;)p Fu(',)45 b(`)p Ft(;&)p Fu(',)f(or)d(`)p
+Ft(;;&)p Fu('.)73 b(The)41 b Fr(w)m(ord)j Fu(under-)630
+2720 y(go)s(es)35 b(tilde)f(expansion,)h(parameter)g(expansion,)g
+(command)f(substitution,)h(arithmetic)630 2829 y(expansion,)47
+b(and)d(quote)g(remo)m(v)-5 b(al)45 b(b)s(efore)f(matc)m(hing)h(is)f
+(attempted.)82 b(Eac)m(h)45 b Fr(pattern)630 2939 y Fu(undergo)s(es)38
+b(tilde)h(expansion,)i(parameter)e(expansion,)i(command)d
+(substitution,)j(and)630 3049 y(arithmetic)32 b(expansion.)630
+3178 y(There)e(ma)m(y)g(b)s(e)f(an)h(arbitrary)g(n)m(um)m(b)s(er)f(of)h
+Ft(case)f Fu(clauses,)i(eac)m(h)g(terminated)g(b)m(y)e(a)i(`)p
+Ft(;;)p Fu(',)630 3288 y(`)p Ft(;&)p Fu(',)c(or)e(`)p
+Ft(;;&)p Fu('.)39 b(The)25 b(\014rst)g(pattern)h(that)g(matc)m(hes)h
+(determines)e(the)h(command-list)g(that)630 3397 y(is)35
+b(executed.)55 b(It's)35 b(a)g(common)g(idiom)g(to)g(use)g(`)p
+Ft(*)p Fu(')g(as)g(the)g(\014nal)f(pattern)h(to)h(de\014ne)e(the)630
3507 y(default)d(case,)g(since)g(that)g(pattern)f(will)h(alw)m(a)m(ys)h
(matc)m(h.)630 3636 y(Here)j(is)g(an)g(example)h(using)e
-Fs(case)g Ft(in)g(a)h(script)g(that)h(could)f(b)s(e)f(used)g(to)h
+Ft(case)g Fu(in)g(a)h(script)g(that)h(could)f(b)s(e)f(used)g(to)h
(describ)s(e)g(one)630 3746 y(in)m(teresting)d(feature)f(of)f(an)g
-(animal:)870 3875 y Fs(echo)47 b(-n)g("Enter)f(the)h(name)f(of)i(an)f
+(animal:)870 3875 y Ft(echo)47 b(-n)g("Enter)f(the)h(name)f(of)i(an)f
(animal:)f(")870 3985 y(read)h(ANIMAL)870 4095 y(echo)g(-n)g("The)f
($ANIMAL)g(has)h(")870 4204 y(case)g($ANIMAL)e(in)965
4314 y(horse)i(|)g(dog)g(|)h(cat\))e(echo)h(-n)g("four";;)965
4423 y(man)g(|)h(kangaroo)d(\))j(echo)e(-n)i("two";;)965
4533 y(*\))g(echo)e(-n)h("an)g(unknown)f(number)g(of";;)870
-4643 y(esac)870 4752 y(echo)h(")g(legs.")630 4902 y Ft(If)25
-b(the)h(`)p Fs(;;)p Ft(')g(op)s(erator)g(is)g(used,)g(no)g(subsequen)m
+4643 y(esac)870 4752 y(echo)h(")g(legs.")630 4902 y Fu(If)25
+b(the)h(`)p Ft(;;)p Fu(')g(op)s(erator)g(is)g(used,)g(no)g(subsequen)m
(t)f(matc)m(hes)i(are)f(attempted)h(after)g(the)f(\014rst)630
-5011 y(pattern)g(matc)m(h.)40 b(Using)26 b(`)p Fs(;&)p
-Ft(')f(in)h(place)g(of)g(`)p Fs(;;)p Ft(')g(causes)g(execution)h(to)f
-(con)m(tin)m(ue)h(with)f(the)630 5121 y Fq(command-list)39
-b Ft(asso)s(ciated)f(with)e(the)g(next)g(clause,)j(if)d(an)m(y)-8
-b(.)59 b(Using)37 b(`)p Fs(;;&)p Ft(')f(in)g(place)h(of)630
-5230 y(`)p Fs(;;)p Ft(')30 b(causes)g(the)g(shell)g(to)g(test)h(the)f
+5011 y(pattern)g(matc)m(h.)40 b(Using)26 b(`)p Ft(;&)p
+Fu(')f(in)h(place)g(of)g(`)p Ft(;;)p Fu(')g(causes)g(execution)h(to)f
+(con)m(tin)m(ue)h(with)f(the)630 5121 y Fr(command-list)39
+b Fu(asso)s(ciated)f(with)e(the)g(next)g(clause,)j(if)d(an)m(y)-8
+b(.)59 b(Using)37 b(`)p Ft(;;&)p Fu(')f(in)g(place)h(of)630
+5230 y(`)p Ft(;;)p Fu(')30 b(causes)g(the)g(shell)g(to)g(test)h(the)f
(patterns)g(in)f(the)h(next)g(clause,)h(if)e(an)m(y)-8
b(,)31 b(and)f(execute)630 5340 y(an)m(y)h(asso)s(ciated)h
-Fq(command-list)h Ft(on)d(a)h(successful)f(matc)m(h.)p
+Fr(command-list)h Fu(on)d(a)h(successful)f(matc)m(h.)p
eop end
%%Page: 12 18
-TeXDict begin 12 17 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 12 17 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(12)630 299
-y(The)26 b(return)f(status)h(is)g(zero)h(if)f(no)g Fq(pattern)g
-Ft(is)g(matc)m(hed.)40 b(Otherwise,)27 b(the)g(return)e(status)630
-408 y(is)30 b(the)h(exit)g(status)g(of)f(the)h Fq(command-list)i
-Ft(executed.)150 564 y Fs(select)630 697 y Ft(The)g Fs(select)f
-Ft(construct)i(allo)m(ws)h(the)f(easy)g(generation)h(of)e(men)m(us.)50
+y(The)26 b(return)f(status)h(is)g(zero)h(if)f(no)g Fr(pattern)g
+Fu(is)g(matc)m(hed.)40 b(Otherwise,)27 b(the)g(return)e(status)630
+408 y(is)30 b(the)h(exit)g(status)g(of)f(the)h Fr(command-list)i
+Fu(executed.)150 564 y Ft(select)630 697 y Fu(The)g Ft(select)f
+Fu(construct)i(allo)m(ws)h(the)f(easy)g(generation)h(of)e(men)m(us.)50
b(It)34 b(has)f(almost)i(the)630 806 y(same)c(syn)m(tax)g(as)f(the)h
-Fs(for)e Ft(command:)870 939 y Fs(select)46 b Fi(name)57
-b Fs([in)47 b Fi(words)57 b Fs(...)o(];)47 b(do)h Fi(commands)11
-b Fs(;)44 b(done)630 1072 y Ft(The)d(list)i(of)e(w)m(ords)h(follo)m
-(wing)h Fs(in)e Ft(is)h(expanded,)i(generating)f(a)f(list)g(of)g
-(items.)75 b(The)630 1181 y(set)41 b(of)f(expanded)f(w)m(ords)g(is)i
-(prin)m(ted)e(on)h(the)g(standard)f(error)h(output)g(stream,)j(eac)m(h)
-630 1291 y(preceded)30 b(b)m(y)g(a)h(n)m(um)m(b)s(er.)40
-b(If)29 b(the)i(`)p Fs(in)f Fi(words)11 b Ft(')29 b(is)h(omitted,)i
-(the)e(p)s(ositional)i(parameters)630 1401 y(are)22 b(prin)m(ted,)h(as)
-f(if)f(`)p Fs(in)30 b("$@")p Ft(')21 b(had)g(b)s(een)f(sp)s(eci\014ed.)
-37 b(The)21 b Fs(PS3)g Ft(prompt)g(is)g(then)g(displa)m(y)m(ed)630
-1510 y(and)38 b(a)h(line)g(is)f(read)h(from)f(the)h(standard)e(input.)
-65 b(If)38 b(the)h(line)g(consists)g(of)f(a)h(n)m(um)m(b)s(er)630
-1620 y(corresp)s(onding)33 b(to)i(one)f(of)g(the)g(displa)m(y)m(ed)h(w)
-m(ords,)f(then)g(the)g(v)-5 b(alue)34 b(of)h Fq(name)k
-Ft(is)34 b(set)g(to)630 1729 y(that)g(w)m(ord.)49 b(If)32
-b(the)i(line)f(is)h(empt)m(y)-8 b(,)35 b(the)e(w)m(ords)g(and)f(prompt)
-h(are)g(displa)m(y)m(ed)h(again.)50 b(If)630 1839 y Fs(EOF)23
-b Ft(is)g(read,)j(the)d Fs(select)f Ft(command)i(completes.)40
-b(An)m(y)23 b(other)h(v)-5 b(alue)24 b(read)g(causes)g
-Fq(name)630 1948 y Ft(to)31 b(b)s(e)f(set)h(to)g(n)m(ull.)41
-b(The)29 b(line)i(read)f(is)h(sa)m(v)m(ed)g(in)f(the)h(v)-5
-b(ariable)31 b Fs(REPLY)p Ft(.)630 2081 y(The)42 b Fq(commands)j
-Ft(are)d(executed)h(after)g(eac)m(h)g(selection)h(un)m(til)e(a)h
-Fs(break)d Ft(command)i(is)630 2191 y(executed,)32 b(at)f(whic)m(h)f(p)
-s(oin)m(t)g(the)h Fs(select)d Ft(command)i(completes.)630
+Ft(for)e Fu(command:)870 939 y Ft(select)46 b Fj(name)h
+Ft([in)g Fj(words)f Ft(...)o(];)h(do)h Fj(commands)p
+Ft(;)d(done)630 1072 y Fu(The)25 b(list)h(of)f(w)m(ords)g(follo)m(wing)
+i Ft(in)d Fu(is)h(expanded,)h(generating)h(a)e(list)h(of)g(items.)39
+b(The)25 b(set)h(of)630 1181 y(expanded)i(w)m(ords)h(is)g(prin)m(ted)f
+(on)h(the)g(standard)f(error)h(output)f(stream,)i(eac)m(h)g(preceded)
+630 1291 y(b)m(y)21 b(a)g(n)m(um)m(b)s(er.)37 b(If)20
+b(the)i(`)p Ft(in)30 b Fj(words)p Fu(')20 b(is)h(omitted,)j(the)d(p)s
+(ositional)h(parameters)g(are)f(prin)m(ted,)630 1401
+y(as)28 b(if)f(`)p Ft(in)j("$@")p Fu(')d(had)f(b)s(een)h(sp)s
+(eci\014ed.)39 b(The)27 b Ft(PS3)g Fu(prompt)f(is)i(then)f(displa)m(y)m
+(ed)h(and)f(a)h(line)630 1510 y(is)h(read)f(from)h(the)f(standard)g
+(input.)39 b(If)29 b(the)g(line)g(consists)g(of)g(a)g(n)m(um)m(b)s(er)e
+(corresp)s(onding)630 1620 y(to)36 b(one)f(of)h(the)f(displa)m(y)m(ed)h
+(w)m(ords,)g(then)f(the)g(v)-5 b(alue)36 b(of)f Fr(name)40
+b Fu(is)35 b(set)h(to)g(that)g(w)m(ord.)54 b(If)630 1729
+y(the)37 b(line)h(is)f(empt)m(y)-8 b(,)39 b(the)e(w)m(ords)g(and)f
+(prompt)g(are)i(displa)m(y)m(ed)f(again.)62 b(If)37 b
+Ft(EOF)f Fu(is)h(read,)630 1839 y(the)c Ft(select)e Fu(command)i
+(completes.)50 b(An)m(y)33 b(other)g(v)-5 b(alue)33 b(read)g(causes)g
+Fr(name)38 b Fu(to)c(b)s(e)e(set)630 1948 y(to)f(n)m(ull.)41
+b(The)30 b(line)g(read)h(is)f(sa)m(v)m(ed)h(in)g(the)f(v)-5
+b(ariable)31 b Ft(REPLY)p Fu(.)630 2081 y(The)42 b Fr(commands)j
+Fu(are)d(executed)h(after)g(eac)m(h)g(selection)h(un)m(til)e(a)h
+Ft(break)d Fu(command)i(is)630 2191 y(executed,)32 b(at)f(whic)m(h)f(p)
+s(oin)m(t)g(the)h Ft(select)d Fu(command)i(completes.)630
2323 y(Here)39 b(is)g(an)g(example)h(that)f(allo)m(ws)i(the)e(user)f
(to)i(pic)m(k)f(a)g(\014lename)h(from)e(the)h(curren)m(t)630
2433 y(directory)-8 b(,)32 b(and)d(displa)m(ys)i(the)f(name)h(and)f
-(index)f(of)i(the)g(\014le)f(selected.)870 2566 y Fs(select)46
+(index)f(of)i(the)g(\014le)f(selected.)870 2566 y Ft(select)46
b(fname)g(in)i(*;)870 2675 y(do)870 2785 y(echo)f(you)g(picked)f
($fname)g(\\\($REPLY\\\))870 2894 y(break;)870 3004 y(done)150
-3160 y(\(\(...)o(\)\))870 3292 y(\(\()h Fi(expression)56
-b Fs(\)\))630 3425 y Ft(The)33 b(arithmetic)i Fq(expression)f
-Ft(is)f(ev)-5 b(aluated)35 b(according)g(to)f(the)g(rules)f(describ)s
+3160 y(\(\(...)o(\)\))870 3292 y(\(\()h Fj(expression)e
+Ft(\)\))630 3425 y Fu(The)33 b(arithmetic)i Fr(expression)f
+Fu(is)f(ev)-5 b(aluated)35 b(according)g(to)f(the)g(rules)f(describ)s
(ed)g(b)s(elo)m(w)630 3535 y(\(see)j(Section)f(6.5)h([Shell)f
(Arithmetic],)i(page)f(87\).)55 b(If)34 b(the)h(v)-5
b(alue)35 b(of)g(the)g(expression)g(is)630 3644 y(non-zero,)27
b(the)f(return)e(status)i(is)g(0;)h(otherwise)f(the)g(return)e(status)i
(is)g(1.)39 b(This)25 b(is)g(exactly)630 3754 y(equiv)-5
-b(alen)m(t)32 b(to)870 3886 y Fs(let)47 b(")p Fi(expression)11
-b Fs(")630 4019 y Ft(See)25 b(Section)h(4.2)h([Bash)e(Builtins],)i
-(page)f(48,)i(for)c(a)i(full)f(description)g(of)g(the)h
-Fs(let)e Ft(builtin.)150 4175 y Fs([[...)o(]])870 4308
-y([[)47 b Fi(expression)56 b Fs(]])630 4440 y Ft(Return)25
-b(a)h(status)f(of)h(0)g(or)g(1)g(dep)s(ending)e(on)h(the)h(ev)-5
-b(aluation)27 b(of)e(the)h(conditional)h(expres-)630
-4550 y(sion)j Fq(expression)p Ft(.)41 b(Expressions)29
-b(are)i(comp)s(osed)f(of)g(the)h(primaries)f(describ)s(ed)f(b)s(elo)m
-(w)h(in)630 4659 y(Section)36 b(6.4)h([Bash)f(Conditional)g
-(Expressions],)h(page)f(85.)57 b(W)-8 b(ord)36 b(splitting)h(and)e
-(\014le-)630 4769 y(name)d(expansion)g(are)h(not)g(p)s(erformed)d(on)j
-(the)f(w)m(ords)g(b)s(et)m(w)m(een)h(the)f Fs([[)g Ft(and)f
-Fs(]])p Ft(;)i(tilde)630 4879 y(expansion,)e(parameter)g(and)f(v)-5
+b(alen)m(t)32 b(to)870 3886 y Ft(let)47 b(")p Fj(expression)p
+Ft(")630 4019 y Fu(See)25 b(Section)h(4.2)h([Bash)e(Builtins],)i(page)f
+(48,)i(for)c(a)i(full)f(description)g(of)g(the)h Ft(let)e
+Fu(builtin.)150 4175 y Ft([[...)o(]])870 4308 y([[)47
+b Fj(expression)e Ft(]])630 4440 y Fu(Return)25 b(a)h(status)f(of)h(0)g
+(or)g(1)g(dep)s(ending)e(on)h(the)h(ev)-5 b(aluation)27
+b(of)e(the)h(conditional)h(expres-)630 4550 y(sion)j
+Fr(expression)p Fu(.)41 b(Expressions)29 b(are)i(comp)s(osed)f(of)g
+(the)h(primaries)f(describ)s(ed)f(b)s(elo)m(w)h(in)630
+4659 y(Section)36 b(6.4)h([Bash)f(Conditional)g(Expressions],)h(page)f
+(85.)57 b(W)-8 b(ord)36 b(splitting)h(and)e(\014le-)630
+4769 y(name)d(expansion)g(are)h(not)g(p)s(erformed)d(on)j(the)f(w)m
+(ords)g(b)s(et)m(w)m(een)h(the)f Ft([[)g Fu(and)f Ft(]])p
+Fu(;)i(tilde)630 4879 y(expansion,)e(parameter)g(and)f(v)-5
b(ariable)31 b(expansion,)g(arithmetic)g(expansion,)g(command)630
4988 y(substitution,)40 b(pro)s(cess)f(substitution,)h(and)e(quote)h
(remo)m(v)-5 b(al)40 b(are)f(p)s(erformed.)63 b(Condi-)630
5098 y(tional)32 b(op)s(erators)e(suc)m(h)g(as)h(`)p
-Fs(-f)p Ft(')f(m)m(ust)g(b)s(e)g(unquoted)g(to)h(b)s(e)e(recognized)j
-(as)f(primaries.)630 5230 y(When)k(used)f(with)h Fs([[)p
-Ft(,)h(the)f(`)p Fs(<)p Ft(')g(and)g(`)p Fs(>)p Ft(')g(op)s(erators)g
+Ft(-f)p Fu(')f(m)m(ust)g(b)s(e)g(unquoted)g(to)h(b)s(e)e(recognized)j
+(as)f(primaries.)630 5230 y(When)k(used)f(with)h Ft([[)p
+Fu(,)h(the)f(`)p Ft(<)p Fu(')g(and)g(`)p Ft(>)p Fu(')g(op)s(erators)g
(sort)g(lexicographically)j(using)d(the)630 5340 y(curren)m(t)30
b(lo)s(cale.)p eop end
%%Page: 13 19
-TeXDict begin 13 18 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 13 18 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(13)630 299
-y(When)22 b(the)h(`)p Fs(==)p Ft(')f(and)g(`)p Fs(!=)p
-Ft(')g(op)s(erators)h(are)g(used,)g(the)g(string)f(to)i(the)e(righ)m(t)
+y(When)22 b(the)h(`)p Ft(==)p Fu(')f(and)g(`)p Ft(!=)p
+Fu(')g(op)s(erators)h(are)g(used,)g(the)g(string)f(to)i(the)e(righ)m(t)
h(of)g(the)g(op)s(erator)630 408 y(is)31 b(considered)g(a)h(pattern)f
(and)g(matc)m(hed)h(according)g(to)g(the)g(rules)f(describ)s(ed)f(b)s
(elo)m(w)h(in)630 518 y(Section)d(3.5.8.1)h([P)m(attern)f(Matc)m
-(hing],)h(page)f(30,)g(as)f(if)g(the)g Fs(extglob)d Ft(shell)j(option)g
-(w)m(ere)630 628 y(enabled.)46 b(The)31 b(`)p Fs(=)p
-Ft(')h(op)s(erator)h(is)f(iden)m(tical)h(to)g(`)p Fs(==)p
-Ft('.)46 b(If)31 b(the)h(shell)h(option)f Fs(nocasematch)630
-737 y Ft(\(see)42 b(the)f(description)g(of)h Fs(shopt)d
-Ft(in)i(Section)h(4.3.2)h([The)e(Shopt)f(Builtin],)45
-b(page)d(63\))630 847 y(is)e(enabled,)i(the)e(matc)m(h)h(is)e(p)s
+(hing],)h(page)f(30,)g(as)f(if)g(the)g Ft(extglob)d Fu(shell)j(option)g
+(w)m(ere)630 628 y(enabled.)46 b(The)31 b(`)p Ft(=)p
+Fu(')h(op)s(erator)h(is)f(iden)m(tical)h(to)g(`)p Ft(==)p
+Fu('.)46 b(If)31 b(the)h(shell)h(option)f Ft(nocasematch)630
+737 y Fu(\(see)42 b(the)f(description)g(of)h Ft(shopt)d
+Fu(in)i(Section)h(4.3.2)h([The)e(Shopt)f(Builtin],)45
+b(page)d(62\))630 847 y(is)e(enabled,)i(the)e(matc)m(h)h(is)e(p)s
(erformed)g(without)g(regard)h(to)h(the)f(case)g(of)g(alphab)s(etic)630
956 y(c)m(haracters.)h(The)28 b(return)e(v)-5 b(alue)28
-b(is)g(0)g(if)g(the)g(string)g(matc)m(hes)h(\(`)p Fs(==)p
-Ft('\))f(or)g(do)s(es)f(not)h(matc)m(h)630 1066 y(\(`)p
-Fs(!=)p Ft('\)the)33 b(pattern,)g(and)f(1)g(otherwise.)47
+b(is)g(0)g(if)g(the)g(string)g(matc)m(hes)h(\(`)p Ft(==)p
+Fu('\))f(or)g(do)s(es)f(not)h(matc)m(h)630 1066 y(\(`)p
+Ft(!=)p Fu('\)the)33 b(pattern,)g(and)f(1)g(otherwise.)47
b(An)m(y)32 b(part)g(of)h(the)f(pattern)g(ma)m(y)h(b)s(e)f(quoted)g(to)
630 1176 y(force)f(the)g(quoted)f(p)s(ortion)g(to)h(b)s(e)f(matc)m(hed)
h(as)g(a)f(string.)630 1316 y(An)j(additional)i(binary)e(op)s(erator,)i
-(`)p Fs(=~)p Ft(',)g(is)f(a)m(v)-5 b(ailable,)37 b(with)c(the)h(same)g
-(precedence)h(as)630 1426 y(`)p Fs(==)p Ft(')29 b(and)f(`)p
-Fs(!=)p Ft('.)40 b(When)29 b(it)g(is)g(used,)f(the)h(string)g(to)h(the)
+(`)p Ft(=~)p Fu(',)g(is)f(a)m(v)-5 b(ailable,)37 b(with)c(the)h(same)g
+(precedence)h(as)630 1426 y(`)p Ft(==)p Fu(')29 b(and)f(`)p
+Ft(!=)p Fu('.)40 b(When)29 b(it)g(is)g(used,)f(the)h(string)g(to)h(the)
e(righ)m(t)i(of)f(the)g(op)s(erator)g(is)g(consid-)630
1536 y(ered)34 b(an)g(extended)g(regular)g(expression)g(and)f(matc)m
-(hed)i(accordingly)g(\(as)f(in)g Fk(r)-5 b(e)g(gex)11
-b Ft(3\)\).)630 1645 y(The)29 b(return)f(v)-5 b(alue)30
+(hed)i(accordingly)g(\(as)f(in)g Fl(r)-5 b(e)g(gex)11
+b Fu(3\)\).)630 1645 y(The)29 b(return)f(v)-5 b(alue)30
b(is)g(0)g(if)f(the)h(string)g(matc)m(hes)g(the)g(pattern,)g(and)f(1)h
(otherwise.)41 b(If)29 b(the)630 1755 y(regular)e(expression)g(is)h
(syn)m(tactically)i(incorrect,)f(the)e(conditional)i(expression's)e
(return)630 1864 y(v)-5 b(alue)40 b(is)g(2.)68 b(If)39
-b(the)h(shell)f(option)h Fs(nocasematch)d Ft(\(see)j(the)g(description)
-g(of)f Fs(shopt)f Ft(in)630 1974 y(Section)32 b(4.3.2)g([The)f(Shopt)f
-(Builtin],)i(page)g(63\))g(is)f(enabled,)g(the)g(matc)m(h)h(is)e(p)s
+b(the)h(shell)f(option)h Ft(nocasematch)d Fu(\(see)j(the)g(description)
+g(of)f Ft(shopt)f Fu(in)630 1974 y(Section)32 b(4.3.2)g([The)f(Shopt)f
+(Builtin],)i(page)g(62\))g(is)f(enabled,)g(the)g(matc)m(h)h(is)e(p)s
(erformed)630 2084 y(without)36 b(regard)g(to)h(the)f(case)h(of)f
(alphab)s(etic)h(c)m(haracters.)59 b(An)m(y)36 b(part)g(of)h(the)f
(pattern)630 2193 y(ma)m(y)31 b(b)s(e)f(quoted)h(to)g(force)g(the)g
56 b(Substrings)34 b(matc)m(hed)j(b)m(y)f(paren)m(thesized)g(sub)s
(expressions)630 2741 y(within)k(the)g(regular)g(expression)g(are)g(sa)
m(v)m(ed)i(in)d(the)i(arra)m(y)f(v)-5 b(ariable)41 b
-Fs(BASH_REMATCH)p Ft(.)630 2851 y(The)30 b(elemen)m(t)i(of)e
-Fs(BASH_REMATCH)d Ft(with)j(index)g(0)h(is)g(the)f(p)s(ortion)g(of)h
+Ft(BASH_REMATCH)p Fu(.)630 2851 y(The)30 b(elemen)m(t)i(of)e
+Ft(BASH_REMATCH)d Fu(with)j(index)g(0)h(is)g(the)f(p)s(ortion)g(of)h
(the)f(string)h(matc)m(h-)630 2960 y(ing)j(the)g(en)m(tire)g(regular)g
-(expression.)50 b(The)34 b(elemen)m(t)h(of)f Fs(BASH_REMATCH)c
-Ft(with)j(index)g Fq(n)630 3070 y Ft(is)d(the)h(p)s(ortion)f(of)g(the)h
-(string)f(matc)m(hing)i(the)e Fq(n)p Ft(th)g(paren)m(thesized)h(sub)s
+(expression.)50 b(The)34 b(elemen)m(t)h(of)f Ft(BASH_REMATCH)c
+Fu(with)j(index)g Fr(n)630 3070 y Fu(is)d(the)h(p)s(ortion)f(of)g(the)h
+(string)f(matc)m(hing)i(the)e Fr(n)p Fu(th)g(paren)m(thesized)h(sub)s
(expression.)630 3211 y(F)-8 b(or)28 b(example,)h(the)e(follo)m(wing)i
(will)e(matc)m(h)h(a)g(line)f(\(stored)h(in)e(the)i(shell)f(v)-5
-b(ariable)28 b Fq(line)5 b Ft(\))28 b(if)630 3320 y(there)22
+b(ariable)28 b Fr(line)5 b Fu(\))28 b(if)630 3320 y(there)22
b(is)g(a)h(sequence)f(of)h(c)m(haracters)g(in)f(the)g(v)-5
b(alue)23 b(consisting)g(of)f(an)m(y)h(n)m(um)m(b)s(er,)f(including)630
3430 y(zero,)31 b(of)g(space)g(c)m(haracters,)h(zero)f(or)g(one)f
-(instances)h(of)g(`)p Fs(a)p Ft(',)f(then)g(a)h(`)p Fs(b)p
-Ft(':)870 3571 y Fs([[)47 b($line)g(=~)g([[:space:]]*\(a\)?b)c(]])630
-3712 y Ft(That)24 b(means)g(v)-5 b(alues)24 b(lik)m(e)h(`)p
-Fs(aab)p Ft(')e(and)h(`)30 b Fs(aaaaaab)p Ft(')22 b(will)i(matc)m(h,)j
+(instances)h(of)g(`)p Ft(a)p Fu(',)f(then)g(a)h(`)p Ft(b)p
+Fu(':)870 3571 y Ft([[)47 b($line)g(=~)g([[:space:]]*\(a\)?b)c(]])630
+3712 y Fu(That)24 b(means)g(v)-5 b(alues)24 b(lik)m(e)h(`)p
+Ft(aab)p Fu(')e(and)h(`)30 b Ft(aaaaaab)p Fu(')22 b(will)i(matc)m(h,)j
(as)d(will)g(a)g(line)g(con)m(taining)630 3821 y(a)31
-b(`)p Fs(b)p Ft(')f(an)m(ywhere)h(in)f(its)g(v)-5 b(alue.)630
+b(`)p Ft(b)p Fu(')f(an)m(ywhere)h(in)f(its)g(v)-5 b(alue.)630
3962 y(Storing)31 b(the)g(regular)g(expression)f(in)h(a)g(shell)g(v)-5
b(ariable)31 b(is)g(often)g(a)g(useful)f(w)m(a)m(y)i(to)f(a)m(v)m(oid)
630 4072 y(problems)f(with)g(quoting)h(c)m(haracters)i(that)e(are)g(sp)
b(a)g(shell)g(v)-5 b(ariable)26 b(to)f(store)g(the)g(pattern)g
(decreases)g(these)630 4510 y(problems.)40 b(F)-8 b(or)31
b(example,)g(the)g(follo)m(wing)h(is)e(equiv)-5 b(alen)m(t)32
-b(to)f(the)g(ab)s(o)m(v)m(e:)870 4651 y Fs(pattern='[[:space:]]*\(a\))o
+b(to)f(the)g(ab)s(o)m(v)m(e:)870 4651 y Ft(pattern='[[:space:]]*\(a\))o
(?b')870 4761 y([[)47 b($line)g(=~)g($pattern)e(]])630
-4902 y Ft(If)28 b(y)m(ou)h(w)m(an)m(t)g(to)g(matc)m(h)h(a)e(c)m
+4902 y Fu(If)28 b(y)m(ou)h(w)m(an)m(t)g(to)g(matc)m(h)h(a)e(c)m
(haracter)j(that's)e(sp)s(ecial)g(to)g(the)g(regular)f(expression)g
(gram-)630 5011 y(mar,)g(it)g(has)g(to)g(b)s(e)f(quoted)h(to)g(remo)m
(v)m(e)h(its)f(sp)s(ecial)g(meaning.)40 b(This)27 b(means)g(that)h(in)g
-(the)630 5121 y(pattern)e(`)p Fs(xxx.txt)p Ft(',)g(the)h(`)p
-Fs(.)p Ft(')f(matc)m(hes)i(an)m(y)e(c)m(haracter)i(in)e(the)h(string)f
+(the)630 5121 y(pattern)e(`)p Ft(xxx.txt)p Fu(',)g(the)h(`)p
+Ft(.)p Fu(')f(matc)m(hes)i(an)m(y)e(c)m(haracter)i(in)e(the)h(string)f
(\(its)h(usual)f(regular)630 5230 y(expression)g(meaning\),)i(but)e(in)
-g(the)h(pattern)f(`)p Fs("xxx.txt")p Ft(')f(it)i(can)g(only)f(matc)m(h)
-i(a)e(literal)630 5340 y(`)p Fs(.)p Ft('.)56 b(Shell)35
+g(the)h(pattern)f(`)p Ft("xxx.txt")p Fu(')f(it)i(can)g(only)f(matc)m(h)
+i(a)e(literal)630 5340 y(`)p Ft(.)p Fu('.)56 b(Shell)35
b(programmers)f(should)h(tak)m(e)i(sp)s(ecial)e(care)i(with)e(bac)m
(kslashes,)i(since)f(bac)m(k-)p eop end
%%Page: 14 20
-TeXDict begin 14 19 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 14 19 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(14)630 299
y(slashes)27 b(are)g(used)f(b)s(oth)g(b)m(y)h(the)f(shell)h(and)f
(regular)h(expressions)g(to)g(remo)m(v)m(e)h(the)f(sp)s(ecial)630
408 y(meaning)h(from)f(the)h(follo)m(wing)i(c)m(haracter.)41
b(The)27 b(follo)m(wing)j(t)m(w)m(o)f(sets)f(of)g(commands)g(are)630
-518 y Fk(not)40 b Ft(equiv)-5 b(alen)m(t:)870 655 y Fs(pattern='\\.')
+518 y Fl(not)40 b Fu(equiv)-5 b(alen)m(t:)870 655 y Ft(pattern='\\.')
870 874 y([[)47 b(.)h(=~)f($pattern)e(]])870 984 y([[)i(.)h(=~)f(\\.)g
(]])870 1203 y([[)g(.)h(=~)f("$pattern")e(]])870 1313
-y([[)i(.)h(=~)f('\\.')f(]])630 1450 y Ft(The)28 b(\014rst)h(t)m(w)m(o)h
+y([[)i(.)h(=~)f('\\.')f(]])630 1450 y Fu(The)28 b(\014rst)h(t)m(w)m(o)h
(matc)m(hes)g(will)f(succeed,)h(but)f(the)g(second)g(t)m(w)m(o)h(will)f
(not,)h(b)s(ecause)f(in)g(the)630 1559 y(second)39 b(t)m(w)m(o)i(the)e
(bac)m(kslash)h(will)f(b)s(e)g(part)g(of)g(the)h(pattern)f(to)h(b)s(e)e
(matc)m(hed.)68 b(In)39 b(the)630 1669 y(\014rst)31 b(t)m(w)m(o)h
(examples,)h(the)e(bac)m(kslash)h(remo)m(v)m(es)h(the)f(sp)s(ecial)g
-(meaning)f(from)g(`)p Fs(.)p Ft(',)h(so)g(the)630 1779
-y(literal)f(`)p Fs(.)p Ft(')e(matc)m(hes.)42 b(If)28
+(meaning)f(from)g(`)p Ft(.)p Fu(',)h(so)g(the)630 1779
+y(literal)f(`)p Ft(.)p Fu(')e(matc)m(hes.)42 b(If)28
b(the)i(string)f(in)g(the)g(\014rst)g(examples)g(w)m(ere)h(an)m(ything)
-g(other)f(than)630 1888 y(`)p Fs(.)p Ft(',)g(sa)m(y)g(`)p
-Fs(a)p Ft(',)g(the)f(pattern)g(w)m(ould)g(not)h(matc)m(h,)h(b)s(ecause)
-e(the)g(quoted)g(`)p Fs(.)p Ft(')h(in)e(the)i(pattern)630
+g(other)f(than)630 1888 y(`)p Ft(.)p Fu(',)g(sa)m(y)g(`)p
+Ft(a)p Fu(',)g(the)f(pattern)g(w)m(ould)g(not)h(matc)m(h,)h(b)s(ecause)
+e(the)g(quoted)g(`)p Ft(.)p Fu(')h(in)e(the)i(pattern)630
1998 y(loses)i(its)g(sp)s(ecial)g(meaning)f(of)h(matc)m(hing)g(an)m(y)g
(single)g(c)m(haracter.)630 2135 y(Expressions)23 b(ma)m(y)h(b)s(e)e
(com)m(bined)i(using)f(the)h(follo)m(wing)h(op)s(erators,)g(listed)f
(in)f(decreasing)630 2244 y(order)30 b(of)g(precedence:)630
-2409 y Fs(\()g Fi(expression)38 b Fs(\))1110 2519 y Ft(Returns)30
-b(the)h(v)-5 b(alue)31 b(of)g Fq(expression)p Ft(.)42
-b(This)30 b(ma)m(y)i(b)s(e)e(used)g(to)i(o)m(v)m(erride)g(the)1110
+2409 y Ft(\()g Fj(expression)e Ft(\))1110 2519 y Fu(Returns)i(the)h(v)
+-5 b(alue)31 b(of)g Fr(expression)p Fu(.)42 b(This)30
+b(ma)m(y)i(b)s(e)e(used)g(to)i(o)m(v)m(erride)g(the)1110
2628 y(normal)e(precedence)h(of)g(op)s(erators.)630 2793
-y Fs(!)f Fi(expression)1110 2902 y Ft(T)-8 b(rue)30 b(if)g
-Fq(expression)g Ft(is)h(false.)630 3067 y Fi(expression1)38
-b Fs(&&)30 b Fi(expression2)1110 3177 y Ft(T)-8 b(rue)30
-b(if)g(b)s(oth)g Fq(expression1)38 b Ft(and)29 b Fq(expression2)38
-b Ft(are)31 b(true.)630 3341 y Fi(expression1)38 b Fs(||)30
-b Fi(expression2)1110 3451 y Ft(T)-8 b(rue)30 b(if)g(either)h
-Fq(expression1)38 b Ft(or)30 b Fq(expression2)38 b Ft(is)30
-b(true.)630 3615 y(The)25 b Fs(&&)g Ft(and)g Fs(||)f
-Ft(op)s(erators)i(do)f(not)h(ev)-5 b(aluate)27 b Fq(expression2)33
-b Ft(if)26 b(the)f(v)-5 b(alue)26 b(of)g Fq(expression1)630
-3725 y Ft(is)k(su\016cien)m(t)h(to)g(determine)g(the)f(return)g(v)-5
-b(alue)31 b(of)f(the)h(en)m(tire)g(conditional)h(expression.)150
-3929 y Fj(3.2.4.3)63 b(Grouping)43 b(Commands)150 4076
-y Ft(Bash)30 b(pro)m(vides)g(t)m(w)m(o)h(w)m(a)m(ys)f(to)h(group)e(a)h
-(list)g(of)g(commands)f(to)i(b)s(e)e(executed)h(as)g(a)h(unit.)40
-b(When)29 b(com-)150 4186 y(mands)h(are)i(group)s(ed,)f(redirections)h
-(ma)m(y)g(b)s(e)e(applied)i(to)g(the)f(en)m(tire)h(command)g(list.)44
-b(F)-8 b(or)32 b(example,)150 4296 y(the)f(output)f(of)g(all)h(the)g
-(commands)f(in)g(the)h(list)g(ma)m(y)g(b)s(e)e(redirected)i(to)g(a)g
-(single)g(stream.)150 4463 y Fs(\(\))870 4600 y(\()47
-b Fi(list)58 b Fs(\))630 4737 y Ft(Placing)30 b(a)f(list)g(of)g
-(commands)f(b)s(et)m(w)m(een)i(paren)m(theses)e(causes)i(a)f(subshell)e
-(en)m(vironmen)m(t)630 4847 y(to)k(b)s(e)e(created)j(\(see)f(Section)g
-(3.7.3)h([Command)d(Execution)i(En)m(vironmen)m(t],)g(page)f(36\),)630
-4956 y(and)d(eac)m(h)i(of)e(the)h(commands)f(in)g Fq(list)j
-Ft(to)f(b)s(e)e(executed)h(in)f(that)h(subshell.)39 b(Since)28
-b(the)f Fq(list)630 5066 y Ft(is)i(executed)g(in)f(a)h(subshell,)g(v)-5
+y Ft(!)f Fj(expression)1110 2902 y Fu(T)-8 b(rue)30 b(if)g
+Fr(expression)g Fu(is)h(false.)630 3067 y Fj(expression1)c
+Ft(&&)j Fj(expression2)1110 3177 y Fu(T)-8 b(rue)30 b(if)g(b)s(oth)g
+Fr(expression1)38 b Fu(and)29 b Fr(expression2)38 b Fu(are)31
+b(true.)630 3341 y Fj(expression1)c Ft(||)j Fj(expression2)1110
+3451 y Fu(T)-8 b(rue)30 b(if)g(either)h Fr(expression1)38
+b Fu(or)30 b Fr(expression2)38 b Fu(is)30 b(true.)630
+3615 y(The)24 b Ft(&&)h Fu(and)f Ft(||)g Fu(op)s(erators)h(do)g(not)g
+(ev)-5 b(aluate)27 b Fr(expression2)32 b Fu(if)25 b(the)g(v)-5
+b(alue)25 b(of)g Fr(expression1)630 3725 y Fu(is)30 b(su\016cien)m(t)h
+(to)g(determine)g(the)f(return)g(v)-5 b(alue)31 b(of)f(the)h(en)m(tire)
+g(conditional)h(expression.)150 3929 y Fk(3.2.4.3)63
+b(Grouping)43 b(Commands)150 4076 y Fu(Bash)30 b(pro)m(vides)g(t)m(w)m
+(o)h(w)m(a)m(ys)f(to)h(group)e(a)h(list)g(of)g(commands)f(to)i(b)s(e)e
+(executed)h(as)g(a)h(unit.)40 b(When)29 b(com-)150 4186
+y(mands)h(are)i(group)s(ed,)f(redirections)h(ma)m(y)g(b)s(e)e(applied)i
+(to)g(the)f(en)m(tire)h(command)g(list.)44 b(F)-8 b(or)32
+b(example,)150 4296 y(the)f(output)f(of)g(all)h(the)g(commands)f(in)g
+(the)h(list)g(ma)m(y)g(b)s(e)e(redirected)i(to)g(a)g(single)g(stream.)
+150 4463 y Ft(\(\))870 4600 y(\()47 b Fj(list)g Ft(\))630
+4737 y Fu(Placing)30 b(a)f(list)g(of)g(commands)f(b)s(et)m(w)m(een)i
+(paren)m(theses)e(causes)i(a)f(subshell)e(en)m(vironmen)m(t)630
+4847 y(to)k(b)s(e)e(created)j(\(see)f(Section)g(3.7.3)h([Command)d
+(Execution)i(En)m(vironmen)m(t],)g(page)f(36\),)630 4956
+y(and)d(eac)m(h)h(of)g(the)f(commands)g(in)g Fr(list)j
+Fu(to)f(b)s(e)d(executed)j(in)e(that)h(subshell.)38 b(Since)28
+b(the)f Fr(list)630 5066 y Fu(is)i(executed)g(in)f(a)h(subshell,)g(v)-5
b(ariable)29 b(assignmen)m(ts)g(do)g(not)g(remain)f(in)g(e\013ect)j
(after)e(the)630 5175 y(subshell)g(completes.)150 5340
-y Fs({})p eop end
+y Ft({})p eop end
%%Page: 15 21
-TeXDict begin 15 20 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 15 20 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(15)870 299
-y Fs({)47 b Fi(list)11 b Fs(;)46 b(})630 434 y Ft(Placing)30
+y Ft({)47 b Fj(list)p Ft(;)g(})630 434 y Fu(Placing)30
b(a)g(list)g(of)g(commands)f(b)s(et)m(w)m(een)h(curly)f(braces)g
(causes)h(the)f(list)h(to)g(b)s(e)f(executed)630 544
y(in)d(the)h(curren)m(t)g(shell)f(con)m(text.)42 b(No)27
b(subshell)f(is)g(created.)41 b(The)26 b(semicolon)i(\(or)f(newline\))
-630 653 y(follo)m(wing)32 b Fq(list)h Ft(is)d(required.)275
+630 653 y(follo)m(wing)32 b Fr(list)h Fu(is)d(required.)275
815 y(In)44 b(addition)h(to)h(the)f(creation)i(of)e(a)g(subshell,)j
(there)e(is)f(a)g(subtle)g(di\013erence)h(b)s(et)m(w)m(een)f(these)150
925 y(t)m(w)m(o)c(constructs)e(due)g(to)g(historical)i(reasons.)67
-b(The)39 b(braces)g(are)h Fs(reserved)28 b(words)p Ft(,)40
+b(The)39 b(braces)g(are)h Ft(reserved)28 b(words)p Fu(,)40
b(so)g(they)f(m)m(ust)150 1034 y(b)s(e)d(separated)h(from)f(the)g
-Fq(list)j Ft(b)m(y)e Fs(blank)p Ft(s)e(or)h(other)h(shell)f(metac)m
+Fr(list)j Fu(b)m(y)e Ft(blank)p Fu(s)e(or)h(other)h(shell)f(metac)m
(haracters.)62 b(The)36 b(paren)m(theses)h(are)150 1144
-y Fs(operators)p Ft(,)23 b(and)h(are)g(recognized)i(as)e(separate)i
+y Ft(operators)p Fu(,)23 b(and)h(are)g(recognized)i(as)e(separate)i
(tok)m(ens)f(b)m(y)f(the)g(shell)h(ev)m(en)g(if)f(they)g(are)h(not)f
-(separated)150 1254 y(from)30 b(the)g Fq(list)j Ft(b)m(y)e(whitespace.)
+(separated)150 1254 y(from)30 b(the)g Fr(list)j Fu(b)m(y)e(whitespace.)
275 1390 y(The)e(exit)j(status)e(of)h(b)s(oth)f(of)g(these)h
-(constructs)g(is)f(the)h(exit)g(status)f(of)h Fq(list)r
-Ft(.)150 1591 y Fj(3.2.5)63 b(Copro)s(cesses)150 1738
-y Ft(A)37 b Fs(coprocess)c Ft(is)k(a)g(shell)f(command)h(preceded)f(b)m
-(y)g(the)h Fs(coproc)d Ft(reserv)m(ed)j(w)m(ord.)59 b(A)36
+(constructs)g(is)f(the)h(exit)g(status)f(of)h Fr(list)p
+Fu(.)150 1591 y Fk(3.2.5)63 b(Copro)s(cesses)150 1738
+y Fu(A)37 b Ft(coprocess)c Fu(is)k(a)g(shell)f(command)h(preceded)f(b)m
+(y)g(the)h Ft(coproc)d Fu(reserv)m(ed)j(w)m(ord.)59 b(A)36
b(copro)s(cess)h(is)150 1847 y(executed)g(async)m(hronously)g(in)f(a)h
(subshell,)g(as)g(if)g(the)f(command)h(had)f(b)s(een)f(terminated)i
-(with)g(the)150 1957 y(`)p Fs(&)p Ft(')d(con)m(trol)h(op)s(erator,)g
+(with)g(the)150 1957 y(`)p Ft(&)p Fu(')d(con)m(trol)h(op)s(erator,)g
(with)f(a)g(t)m(w)m(o-w)m(a)m(y)i(pip)s(e)d(established)h(b)s(et)m(w)m
(een)h(the)f(executing)h(shell)f(and)f(the)150 2066 y(copro)s(cess.)275
2203 y(The)c(format)i(for)f(a)h(copro)s(cess)g(is:)390
-2339 y Fs(coproc)46 b([)p Fi(NAME)11 b Fs(])46 b Fi(command)56
-b Fs([)p Fi(redirections)11 b Fs(])150 2475 y Ft(This)41
-b(creates)i(a)g(copro)s(cess)f(named)f Fq(NAME)5 b Ft(.)43
-b(If)f Fq(NAME)47 b Ft(is)42 b(not)g(supplied,)i(the)e(default)g(name)g
-(is)150 2584 y Fq(COPR)m(OC)8 b Ft(.)22 b Fq(NAME)29
-b Ft(m)m(ust)23 b(not)g(b)s(e)g(supplied)e(if)i Fq(command)k
-Ft(is)c(a)g(simple)g(command)g(\(see)h(Section)g(3.2.1)150
-2694 y([Simple)39 b(Commands],)h(page)g(8\);)k(otherwise,)e(it)d(is)g
-(in)m(terpreted)h(as)f(the)g(\014rst)f(w)m(ord)h(of)g(the)g(simple)150
+2339 y Ft(coproc)46 b([)p Fj(NAME)p Ft(])g Fj(command)g
+Ft([)p Fj(redirections)p Ft(])150 2475 y Fu(This)39 b(creates)j(a)e
+(copro)s(cess)h(named)f Fr(NAME)p Fu(.)70 b(If)40 b Fr(NAME)46
+b Fu(is)40 b(not)g(supplied,)i(the)e(default)h(name)f(is)150
+2584 y Fr(COPR)m(OC)p Fu(.)d Fr(NAME)28 b Fu(m)m(ust)23
+b(not)g(b)s(e)e(supplied)h(if)g Fr(command)k Fu(is)d(a)g(simple)f
+(command)g(\(see)i(Section)f(3.2.1)150 2694 y([Simple)39
+b(Commands],)h(page)g(8\);)k(otherwise,)e(it)d(is)g(in)m(terpreted)h
+(as)f(the)g(\014rst)f(w)m(ord)h(of)g(the)g(simple)150
2804 y(command.)275 2940 y(When)j(the)i(copro)s(cess)f(is)g(executed,)
48 b(the)43 b(shell)g(creates)i(an)e(arra)m(y)g(v)-5
b(ariable)44 b(\(see)g(Section)g(6.7)150 3049 y([Arra)m(ys],)32
-b(page)g(89\))h(named)e Fs(NAME)f Ft(in)h(the)h(con)m(text)h(of)e(the)h
+b(page)g(89\))h(named)e Ft(NAME)f Fu(in)h(the)h(con)m(text)h(of)e(the)h
(executing)g(shell.)44 b(The)31 b(standard)f(output)150
-3159 y(of)g Fq(command)j Ft(is)d(connected)g(via)g(a)g(pip)s(e)f(to)i
+3159 y(of)g Fr(command)j Fu(is)d(connected)g(via)g(a)g(pip)s(e)f(to)i
(a)f(\014le)g(descriptor)f(in)g(the)h(executing)h(shell,)f(and)g(that)g
(\014le)150 3269 y(descriptor)i(is)f(assigned)h(to)g
-Fs(NAME)p Ft([0].)45 b(The)31 b(standard)g(input)f(of)i
-Fq(command)j Ft(is)d(connected)h(via)f(a)g(pip)s(e)150
+Ft(NAME)p Fu([0].)45 b(The)31 b(standard)g(input)f(of)i
+Fr(command)j Fu(is)d(connected)h(via)f(a)g(pip)s(e)150
3378 y(to)39 b(a)g(\014le)f(descriptor)g(in)g(the)g(executing)i(shell,)
g(and)e(that)h(\014le)f(descriptor)g(is)g(assigned)h(to)g
-Fs(NAME)p Ft([1].)150 3488 y(This)31 b(pip)s(e)g(is)h(established)g(b)s
+Ft(NAME)p Fu([1].)150 3488 y(This)31 b(pip)s(e)g(is)h(established)g(b)s
(efore)g(an)m(y)g(redirections)g(sp)s(eci\014ed)g(b)m(y)f(the)i
(command)e(\(see)i(Section)g(3.6)150 3597 y([Redirections],)25
b(page)e(31\).)39 b(The)21 b(\014le)h(descriptors)g(can)g(b)s(e)f
b(ailable)35 b(in)150 3817 y(subshells.)275 3953 y(The)27
b(pro)s(cess)h(ID)h(of)f(the)h(shell)f(spa)m(wned)g(to)h(execute)h(the)
e(copro)s(cess)h(is)f(a)m(v)-5 b(ailable)31 b(as)d(the)h(v)-5
-b(alue)29 b(of)150 4062 y(the)k(v)-5 b(ariable)33 b Fs(NAME)p
-850 4062 28 4 v 39 w Ft(PID.)g(The)f Fs(wait)f Ft(builtin)h(command)g
+b(alue)29 b(of)150 4062 y(the)k(v)-5 b(ariable)33 b Ft(NAME)p
+850 4062 28 4 v 39 w Fu(PID.)g(The)f Ft(wait)f Fu(builtin)h(command)g
(ma)m(y)h(b)s(e)f(used)g(to)h(w)m(ait)h(for)e(the)h(copro)s(cess)150
4172 y(to)e(terminate.)275 4308 y(Since)20 b(the)g(copro)s(cess)h(is)g
(created)g(as)g(an)f(async)m(hronous)g(command,)i(the)f
-Fs(coproc)d Ft(command)i(alw)m(a)m(ys)150 4418 y(returns)29
+Ft(coproc)d Fu(command)i(alw)m(a)m(ys)150 4418 y(returns)29
b(success.)41 b(The)30 b(return)f(status)i(of)f(a)h(copro)s(cess)g(is)f
-(the)h(exit)g(status)g(of)f Fq(command)t Ft(.)150 4619
-y Fj(3.2.6)63 b(GNU)41 b(P)m(arallel)150 4765 y Ft(There)30
+(the)h(exit)g(status)g(of)f Fr(command)p Fu(.)150 4619
+y Fk(3.2.6)63 b(GNU)41 b(P)m(arallel)150 4765 y Fu(There)30
b(are)h(w)m(a)m(ys)g(to)g(run)f(commands)g(in)g(parallel)h(that)h(are)e
(not)h(built)g(in)m(to)g(Bash.)41 b(GNU)31 b(P)m(arallel)i(is)150
4875 y(a)e(to)s(ol)g(to)g(do)f(just)g(that.)275 5011
(common)g(op)s(erations)g(\(input)f(lines,)j(v)-5 b(arious)38
b(p)s(ortions)f(of)h(the)g(input)e(line,)p eop end
%%Page: 16 22
-TeXDict begin 16 21 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 16 21 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(16)150 299
y(di\013eren)m(t)35 b(w)m(a)m(ys)h(to)f(sp)s(ecify)f(the)h(input)f
(source,)i(and)e(so)h(on\).)54 b(P)m(arallel)36 b(can)f(replace)h
-Fs(xargs)d Ft(or)i(feed)150 408 y(commands)30 b(from)g(its)h(input)e
+Ft(xargs)d Fu(or)i(feed)150 408 y(commands)30 b(from)g(its)h(input)e
(sources)h(to)i(sev)m(eral)f(di\013eren)m(t)g(instances)g(of)g(Bash.)
275 553 y(F)-8 b(or)33 b(a)g(complete)h(description,)g(refer)e(to)i
(the)f(GNU)g(P)m(arallel)i(do)s(cumen)m(tation.)48 b(A)33
b(few)f(examples)150 663 y(should)d(pro)m(vide)i(a)g(brief)e(in)m(tro)s
(duction)i(to)g(its)g(use.)275 807 y(F)-8 b(or)37 b(example,)i(it)e(is)
-f(easy)h(to)g(replace)h Fs(xargs)d Ft(to)i(gzip)g(all)g(h)m(tml)g
+f(easy)h(to)g(replace)h Ft(xargs)d Fu(to)i(gzip)g(all)g(h)m(tml)g
(\014les)f(in)h(the)f(curren)m(t)g(directory)150 917
-y(and)30 b(its)h(sub)s(directories:)390 1061 y Fs(find)47
+y(and)30 b(its)h(sub)s(directories:)390 1061 y Ft(find)47
b(.)g(-type)f(f)i(-name)e('*.html')g(-print)g(|)h(parallel)f(gzip)150
-1205 y Ft(If)27 b(y)m(ou)g(need)g(to)g(protect)i(sp)s(ecial)e(c)m
-(haracters)i(suc)m(h)d(as)i(newlines)e(in)h(\014le)g(names,)h(use)f
-(\014nd's)e(`)p Fs(-print0)p Ft(')150 1315 y(option)31
-b(and)f(parallel's)h(`)p Fs(-0)p Ft(')f(option.)275 1460
-y(Y)-8 b(ou)34 b(can)g(use)f(P)m(arallel)j(to)e(mo)m(v)m(e)h(\014les)f
-(from)f(the)h(curren)m(t)f(directory)h(when)f(the)h(n)m(um)m(b)s(er)e
-(of)i(\014les)150 1569 y(is)c(to)s(o)i(large)f(to)g(pro)s(cess)f(with)g
-(one)h Fs(mv)f Ft(in)m(v)m(o)s(cation:)390 1714 y Fs(ls)47
-b(|)h(parallel)d(mv)i({})h(destdir)275 1858 y Ft(As)28
-b(y)m(ou)g(can)h(see,)g(the)g Fs({})e Ft(is)i(replaced)f(with)g(eac)m
-(h)i(line)e(read)g(from)g(standard)f(input.)39 b(While)29
-b(using)150 1968 y Fs(ls)g Ft(will)h(w)m(ork)g(in)f(most)h(instances,)h
-(it)f(is)g(not)g(su\016cien)m(t)g(to)h(deal)f(with)f(all)i
-(\014lenames.)40 b(If)30 b(y)m(ou)g(need)f(to)150 2077
-y(accommo)s(date)j(sp)s(ecial)f(c)m(haracters)h(in)e(\014lenames,)h(y)m
-(ou)f(can)h(use)390 2222 y Fs(find)47 b(.)g(-depth)f(1)i(\\!)f(-name)f
-('.*')h(-print0)f(|)h(parallel)f(-0)h(mv)g({})g(destdir)150
-2366 y Ft(as)31 b(alluded)f(to)h(ab)s(o)m(v)m(e.)275
-2511 y(This)e(will)i(run)e(as)h(man)m(y)h Fs(mv)e Ft(commands)h(as)h
-(there)f(are)h(\014les)f(in)h(the)f(curren)m(t)g(directory)-8
-b(.)42 b(Y)-8 b(ou)31 b(can)150 2620 y(em)m(ulate)h(a)f(parallel)g
-Fs(xargs)e Ft(b)m(y)h(adding)g(the)h(`)p Fs(-X)p Ft(')f(option:)390
-2765 y Fs(find)47 b(.)g(-depth)f(1)i(\\!)f(-name)f('.*')h(-print0)f(|)h
-(parallel)f(-0)h(-X)g(mv)g({})g(destdir)275 2909 y Ft(GNU)31
-b(P)m(arallel)i(can)e(replace)h(certain)g(common)g(idioms)f(that)g(op)s
-(erate)h(on)f(lines)g(read)g(from)f(a)i(\014le)150 3019
-y(\(in)e(this)h(case,)g(\014lenames)g(listed)g(one)f(p)s(er)g(line\):)
-390 3163 y Fs(while)46 b(IFS=)h(read)g(-r)g(x;)g(do)390
+1205 y Fu(If)30 b(y)m(ou)h(need)f(to)h(protect)h(sp)s(ecial)f(c)m
+(haracters)g(suc)m(h)g(as)f(newlines)h(in)f(\014le)g(names,)h(use)f
+(\014nd's)f Ft(-print0)150 1315 y Fu(option)i(and)f(parallel's)h
+Ft(-0)f Fu(option.)275 1460 y(Y)-8 b(ou)34 b(can)g(use)f(P)m(arallel)j
+(to)e(mo)m(v)m(e)h(\014les)f(from)f(the)h(curren)m(t)f(directory)h
+(when)f(the)h(n)m(um)m(b)s(er)e(of)i(\014les)150 1569
+y(is)c(to)s(o)i(large)f(to)g(pro)s(cess)f(with)g(one)h
+Ft(mv)f Fu(in)m(v)m(o)s(cation:)390 1714 y Ft(ls)47 b(|)h(parallel)d
+(mv)i({})h(destdir)275 1858 y Fu(As)28 b(y)m(ou)h(can)g(see,)g(the)g
+Fi({})g Fu(is)g(replaced)g(with)f(eac)m(h)i(line)f(read)f(from)g
+(standard)g(input.)39 b(While)29 b(using)150 1968 y Ft(ls)g
+Fu(will)h(w)m(ork)g(in)f(most)h(instances,)h(it)f(is)g(not)g
+(su\016cien)m(t)g(to)h(deal)f(with)f(all)i(\014lenames.)40
+b(If)30 b(y)m(ou)g(need)f(to)150 2077 y(accommo)s(date)j(sp)s(ecial)f
+(c)m(haracters)h(in)e(\014lenames,)h(y)m(ou)f(can)h(use)390
+2222 y Ft(find)47 b(.)g(-depth)f(1)i(\\!)f(-name)f('.*')h(-print0)f(|)h
+(parallel)f(-0)h(mv)g({})g(destdir)150 2366 y Fu(as)31
+b(alluded)f(to)h(ab)s(o)m(v)m(e.)275 2511 y(This)e(will)i(run)e(as)h
+(man)m(y)h Ft(mv)e Fu(commands)h(as)h(there)f(are)h(\014les)f(in)h(the)
+f(curren)m(t)g(directory)-8 b(.)42 b(Y)-8 b(ou)31 b(can)150
+2620 y(em)m(ulate)h(a)f(parallel)g Ft(xargs)e Fu(b)m(y)h(adding)g(the)h
+Ft(-X)f Fu(option:)390 2765 y Ft(find)47 b(.)g(-depth)f(1)i(\\!)f
+(-name)f('.*')h(-print0)f(|)h(parallel)f(-0)h(-X)g(mv)g({})g(destdir)
+275 2909 y Fu(GNU)31 b(P)m(arallel)i(can)e(replace)h(certain)g(common)g
+(idioms)f(that)g(op)s(erate)h(on)f(lines)g(read)g(from)f(a)i(\014le)150
+3019 y(\(in)e(this)h(case,)g(\014lenames)g(listed)g(one)f(p)s(er)g
+(line\):)390 3163 y Ft(while)46 b(IFS=)h(read)g(-r)g(x;)g(do)390
3273 y(do-something1)d("$x")j("config-$x")390 3382 y(do-something2)d(<)
k("$x")390 3492 y(done)f(<)g(file)g(|)g(process-output)150
-3636 y Ft(with)30 b(a)h(more)f(compact)i(syn)m(tax)f(reminiscen)m(t)g
-(of)g(lam)m(b)s(das:)390 3781 y Fs(cat)47 b(list)g(|)g(parallel)f
+3636 y Fu(with)30 b(a)h(more)f(compact)i(syn)m(tax)f(reminiscen)m(t)g
+(of)g(lam)m(b)s(das:)390 3781 y Ft(cat)47 b(list)g(|)g(parallel)f
("do-something1)d({})48 b(config-{})d(;)i(do-something2)e(<)i({}")g(|)g
-(process-output)275 3925 y Ft(P)m(arallel)31 b(pro)m(vides)e(a)h
+(process-output)275 3925 y Fu(P)m(arallel)31 b(pro)m(vides)e(a)h
(built-in)g(mec)m(hanism)g(to)g(remo)m(v)m(e)h(\014lename)e
(extensions,)i(whic)m(h)e(lends)g(itself)150 4035 y(to)i(batc)m(h)g
(\014le)g(transformations)f(or)g(renaming:)390 4179 y
-Fs(ls)47 b(*.gz)g(|)g(parallel)f(-j+0)g("zcat)h({})g(|)g(bzip2)g
-(>{.}.bz2)e(&&)j(rm)f({}")150 4324 y Ft(This)28 b(will)i(recompress)e
+Ft(ls)47 b(*.gz)g(|)g(parallel)f(-j+0)g("zcat)h({})g(|)g(bzip2)g
+(>{.}.bz2)e(&&)j(rm)f({}")150 4324 y Fu(This)28 b(will)i(recompress)e
(all)i(\014les)f(in)g(the)g(curren)m(t)g(directory)g(with)g(names)g
(ending)f(in)h(.gz)h(using)f(bzip2,)150 4433 y(running)37
-b(one)i(job)f(p)s(er)f(CPU)h(\(-j)p Fs(+)p Ft(0\))i(in)e(parallel.)66
-b(\(W)-8 b(e)40 b(use)e Fs(ls)g Ft(for)h(brevit)m(y)g(here;)j(using)c
-Fs(find)g Ft(as)150 4543 y(ab)s(o)m(v)m(e)e(is)g(more)f(robust)f(in)h
+b(one)i(job)f(p)s(er)f(CPU)h(\(-j)p Ft(+)p Fu(0\))i(in)e(parallel.)66
+b(\(W)-8 b(e)40 b(use)e Ft(ls)g Fu(for)h(brevit)m(y)g(here;)j(using)c
+Ft(find)g Fu(as)150 4543 y(ab)s(o)m(v)m(e)e(is)g(more)f(robust)f(in)h
(the)h(face)g(of)f(\014lenames)h(con)m(taining)g(unexp)s(ected)f(c)m
(haracters.\))57 b(P)m(arallel)150 4653 y(can)31 b(tak)m(e)h(argumen)m
(ts)e(from)g(the)h(command)f(line;)h(the)f(ab)s(o)m(v)m(e)i(can)f(also)
-g(b)s(e)f(written)g(as)390 4797 y Fs(parallel)46 b("zcat)g({})h(|)h
+g(b)s(e)f(written)g(as)390 4797 y Ft(parallel)46 b("zcat)g({})h(|)h
(bzip2)e(>{.}.bz2)f(&&)j(rm)f({}")g(:::)g(*.gz)275 4941
-y Ft(If)24 b(a)i(command)f(generates)h(output,)g(y)m(ou)g(ma)m(y)f(w)m
+y Fu(If)24 b(a)i(command)f(generates)h(output,)g(y)m(ou)g(ma)m(y)f(w)m
(an)m(t)h(to)g(preserv)m(e)g(the)f(input)f(order)h(in)g(the)g(output.)
150 5051 y(F)-8 b(or)31 b(instance,)g(the)g(follo)m(wing)h(command)390
-5196 y Fs({)47 b(echo)g(foss.org.my)e(;)i(echo)g(debian.org;)e(echo)h
+5196 y Ft({)47 b(echo)g(foss.org.my)e(;)i(echo)g(debian.org;)e(echo)h
(freenetproject.org;)d(})k(|)h(parallel)d(traceroute)150
-5340 y Ft(will)31 b(displa)m(y)f(as)h(output)f(the)g(traceroute)i(in)m
+5340 y Fu(will)31 b(displa)m(y)f(as)h(output)f(the)g(traceroute)i(in)m
(v)m(o)s(cation)h(that)e(\014nishes)e(\014rst.)40 b(Adding)30
-b(the)g(`)p Fs(-k)p Ft(')g(option)p eop end
+b(the)g Ft(-k)g Fu(option)p eop end
%%Page: 17 23
-TeXDict begin 17 22 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 17 22 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(17)390 299
-y Fs({)47 b(echo)g(foss.org.my)e(;)i(echo)g(debian.org;)e(echo)h
+y Ft({)47 b(echo)g(foss.org.my)e(;)i(echo)g(debian.org;)e(echo)h
(freenetproject.org;)d(})k(|)h(parallel)d(-k)i(traceroute)150
-430 y Ft(will)31 b(ensure)e(that)i(the)g(output)f(of)g
-Fs(traceroute)e(foss.org.my)f Ft(is)k(displa)m(y)m(ed)g(\014rst.)275
+430 y Fu(will)31 b(ensure)e(that)i(the)g(output)f(of)g
+Ft(traceroute)e(foss.org.my)f Fu(is)k(displa)m(y)m(ed)g(\014rst.)275
560 y(Finally)-8 b(,)31 b(P)m(arallel)h(can)e(b)s(e)f(used)g(to)i(run)d
(a)i(sequence)h(of)f(shell)g(commands)f(in)h(parallel,)h(similar)f(to)
-150 670 y(`)p Fs(cat)g(file)f(|)h(bash)p Ft('.)53 b(It)35
+150 670 y(`)p Ft(cat)g(file)f(|)h(bash)p Fu('.)53 b(It)35
b(is)g(not)g(uncommon)f(to)i(tak)m(e)g(a)f(list)h(of)f(\014lenames,)h
(create)g(a)g(series)f(of)g(shell)150 779 y(commands)27
b(to)h(op)s(erate)h(on)e(them,)h(and)f(feed)h(that)g(list)g(of)g
(commnds)e(to)j(a)f(shell.)40 b(P)m(arallel)29 b(can)f(sp)s(eed)150
-889 y(this)i(up.)40 b(Assuming)30 b(that)h(`)p Fs(file)p
-Ft(')e(con)m(tains)j(a)f(list)g(of)f(shell)h(commands,)f(one)h(p)s(er)e
-(line,)390 1020 y Fs(parallel)46 b(-j)h(10)g(<)g(file)150
-1150 y Ft(will)37 b(ev)-5 b(aluate)38 b(the)f(commands)f(using)g(the)h
+889 y(this)i(up.)40 b(Assuming)30 b(that)h Ft(file)e
+Fu(con)m(tains)i(a)g(list)g(of)g(shell)f(commands,)h(one)f(p)s(er)g
+(line,)390 1020 y Ft(parallel)46 b(-j)h(10)g(<)g(file)150
+1150 y Fu(will)37 b(ev)-5 b(aluate)38 b(the)f(commands)f(using)g(the)h
(shell)g(\(since)g(no)f(explicit)i(command)e(is)h(supplied)e(as)i(an)
150 1260 y(argumen)m(t\),)31 b(in)f(blo)s(c)m(ks)h(of)g(ten)f(shell)h
-(jobs)f(at)h(a)g(time.)150 1484 y Fr(3.3)68 b(Shell)45
-b(F)-11 b(unctions)150 1644 y Ft(Shell)35 b(functions)h(are)g(a)g(w)m
+(jobs)f(at)h(a)g(time.)150 1484 y Fs(3.3)68 b(Shell)45
+b(F)-11 b(unctions)150 1644 y Fu(Shell)35 b(functions)h(are)g(a)g(w)m
(a)m(y)g(to)h(group)e(commands)g(for)h(later)g(execution)h(using)e(a)h
(single)g(name)g(for)150 1753 y(the)f(group.)55 b(They)35
-b(are)g(executed)h(just)f(lik)m(e)h(a)g Fs(")p Ft(regular)p
-Fs(")f Ft(command.)54 b(When)35 b(the)h(name)f(of)g(a)h(shell)150
+b(are)g(executed)h(just)f(lik)m(e)h(a)g Ft(")p Fu(regular)p
+Ft(")f Fu(command.)54 b(When)35 b(the)h(name)f(of)g(a)h(shell)150
1863 y(function)j(is)g(used)f(as)h(a)h(simple)f(command)g(name,)i(the)e
(list)h(of)f(commands)g(asso)s(ciated)i(with)d(that)150
1973 y(function)25 b(name)h(is)g(executed.)40 b(Shell)25
b(functions)g(are)i(executed)f(in)f(the)h(curren)m(t)g(shell)g(con)m
(text;)j(no)c(new)150 2082 y(pro)s(cess)30 b(is)g(created)i(to)f(in)m
(terpret)g(them.)275 2213 y(F)-8 b(unctions)30 b(are)h(declared)g
-(using)f(this)g(syn)m(tax:)390 2343 y Fi(name)57 b Fs(\(\))47
-b Fi(compound-command)54 b Fs([)48 b Fi(redirections)55
-b Fs(])275 2474 y Ft(or)390 2605 y Fs(function)46 b Fi(name)57
-b Fs([\(\)])46 b Fi(compound-command)54 b Fs([)48 b Fi(redirections)55
-b Fs(])275 2735 y Ft(This)31 b(de\014nes)h(a)g(shell)h(function)f
-(named)g Fq(name)5 b Ft(.)47 b(The)32 b(reserv)m(ed)h(w)m(ord)f
-Fs(function)e Ft(is)i(optional.)48 b(If)150 2845 y(the)39
-b Fs(function)f Ft(reserv)m(ed)h(w)m(ord)g(is)g(supplied,)i(the)e
-(paren)m(theses)h(are)f(optional.)69 b(The)39 b Fq(b)s(o)s(dy)45
-b Ft(of)40 b(the)150 2954 y(function)h(is)h(the)g(comp)s(ound)e
-(command)h Fq(comp)s(ound-command)j Ft(\(see)e(Section)h(3.2.4)g([Comp)
-s(ound)150 3064 y(Commands],)33 b(page)g(9\).)48 b(That)33
-b(command)g(is)f(usually)h(a)g Fq(list)i Ft(enclosed)e(b)s(et)m(w)m
-(een)h Fs({)e Ft(and)g Fs(})p Ft(,)h(but)f(ma)m(y)150
-3174 y(b)s(e)27 b(an)m(y)h(comp)s(ound)e(command)h(listed)h(ab)s(o)m(v)
-m(e.)41 b Fq(comp)s(ound-command)30 b Ft(is)e(executed)g(whenev)m(er)g
-Fq(name)150 3283 y Ft(is)j(sp)s(eci\014ed)f(as)g(the)h(name)g(of)g(a)g
-(command.)41 b(When)31 b(the)f(shell)h(is)g(in)f Fl(posix)g
-Ft(mo)s(de)g(\(see)i(Section)f(6.11)150 3393 y([Bash)36
-b(POSIX)f(Mo)s(de],)j(page)e(94\),)j Fq(name)i Ft(ma)m(y)36
+(using)f(this)g(syn)m(tax:)390 2343 y Fj(name)47 b Ft(\(\))g
+Fj(compound-command)c Ft([)48 b Fj(redirections)c Ft(])275
+2474 y Fu(or)390 2605 y Ft(function)i Fj(name)g Ft([\(\)])h
+Fj(compound-command)c Ft([)48 b Fj(redirections)c Ft(])275
+2735 y Fu(This)31 b(de\014nes)h(a)h(shell)g(function)g(named)f
+Fr(name)p Fu(.)48 b(The)32 b(reserv)m(ed)h(w)m(ord)f
+Ft(function)f Fu(is)h(optional.)49 b(If)150 2845 y(the)39
+b Ft(function)f Fu(reserv)m(ed)h(w)m(ord)g(is)g(supplied,)i(the)e
+(paren)m(theses)h(are)f(optional.)69 b(The)39 b Fr(b)s(o)s(dy)45
+b Fu(of)40 b(the)150 2954 y(function)h(is)h(the)g(comp)s(ound)e
+(command)h Fr(comp)s(ound-command)j Fu(\(see)e(Section)h(3.2.4)g([Comp)
+s(ound)150 3064 y(Commands],)33 b(page)h(9\).)49 b(That)33
+b(command)f(is)h(usually)g(a)g Fr(list)j Fu(enclosed)e(b)s(et)m(w)m
+(een)f Fi({)h Fu(and)e Fi(})p Fu(,)i(but)e(ma)m(y)150
+3174 y(b)s(e)26 b(an)m(y)i(comp)s(ound)d(command)i(listed)h(ab)s(o)m(v)
+m(e.)41 b Fr(comp)s(ound-command)29 b Fu(is)e(executed)h(whenev)m(er)f
+Fr(name)150 3283 y Fu(is)k(sp)s(eci\014ed)f(as)g(the)h(name)g(of)g(a)g
+(command.)41 b(When)31 b(the)f(shell)h(is)g(in)f Fm(posix)g
+Fu(mo)s(de)g(\(see)i(Section)f(6.11)150 3393 y([Bash)36
+b(POSIX)f(Mo)s(de],)j(page)e(94\),)j Fr(name)i Fu(ma)m(y)36
b(not)h(b)s(e)e(the)h(same)g(as)g(one)g(of)g(the)g(sp)s(ecial)h
(builtins)150 3502 y(\(see)24 b(Section)g(4.4)g([Sp)s(ecial)g
(Builtins],)h(page)f(68\).)40 b(An)m(y)23 b(redirections)h(\(see)g
(Section)g(3.6)g([Redirections],)150 3612 y(page)31 b(31\))h(asso)s
(ciated)g(with)e(the)g(shell)h(function)f(are)h(p)s(erformed)d(when)i
-(the)g(function)g(is)h(executed.)275 3743 y(A)41 b(function)f
-(de\014nition)h(ma)m(y)g(b)s(e)g(deleted)g(using)g(the)g(`)p
-Fs(-f)p Ft(')g(option)g(to)h(the)f Fs(unset)e Ft(builtin)i(\(see)150
+(the)g(function)g(is)h(executed.)275 3743 y(A)44 b(function)g
+(de\014nition)h(ma)m(y)g(b)s(e)f(deleted)h(using)f(the)h
+Ft(-f)f Fu(option)h(to)g(the)g Ft(unset)e Fu(builtin)h(\(see)150
3852 y(Section)31 b(4.1)h([Bourne)e(Shell)g(Builtins],)h(page)h(41\).)
275 3983 y(The)26 b(exit)i(status)g(of)f(a)h(function)f(de\014nition)g
(is)g(zero)h(unless)f(a)g(syn)m(tax)h(error)f(o)s(ccurs)g(or)g(a)h
4333 y(Note)22 b(that)f(for)f(historical)i(reasons,)h(in)e(the)g(most)g
(common)g(usage)g(the)g(curly)f(braces)h(that)g(surround)150
4442 y(the)38 b(b)s(o)s(dy)d(of)j(the)f(function)g(m)m(ust)g(b)s(e)g
-(separated)h(from)f(the)g(b)s(o)s(dy)f(b)m(y)h Fs(blank)p
-Ft(s)f(or)h(newlines.)62 b(This)150 4552 y(is)38 b(b)s(ecause)g(the)h
+(separated)h(from)f(the)g(b)s(o)s(dy)f(b)m(y)h Ft(blank)p
+Fu(s)f(or)h(newlines.)62 b(This)150 4552 y(is)38 b(b)s(ecause)g(the)h
(braces)f(are)h(reserv)m(ed)f(w)m(ords)g(and)f(are)i(only)f(recognized)
i(as)e(suc)m(h)g(when)f(they)i(are)150 4661 y(separated)26
b(from)f(the)h(command)f(list)i(b)m(y)e(whitespace)h(or)g(another)g
(shell)g(metac)m(haracter.)41 b(Also,)28 b(when)150 4771
-y(using)i(the)g(braces,)h(the)g Fq(list)i Ft(m)m(ust)d(b)s(e)g
-(terminated)h(b)m(y)f(a)h(semicolon,)h(a)e(`)p Fs(&)p
-Ft(',)h(or)g(a)f(newline.)275 4902 y(When)i(a)i(function)f(is)g
+y(using)i(the)g(braces,)h(the)g Fr(list)i Fu(m)m(ust)d(b)s(e)g
+(terminated)h(b)m(y)f(a)h(semicolon,)h(a)e(`)p Ft(&)p
+Fu(',)h(or)g(a)f(newline.)275 4902 y(When)i(a)i(function)f(is)g
(executed,)i(the)e(argumen)m(ts)h(to)g(the)f(function)g(b)s(ecome)g
(the)h(p)s(ositional)g(pa-)150 5011 y(rameters)42 b(during)e(its)i
(execution)h(\(see)f(Section)g(3.4.1)h([P)m(ositional)h(P)m
(arameters],)i(page)c(19\).)75 b(The)150 5121 y(sp)s(ecial)37
-b(parameter)f(`)p Fs(#)p Ft(')g(that)h(expands)e(to)i(the)f(n)m(um)m(b)
+b(parameter)f(`)p Ft(#)p Fu(')g(that)h(expands)e(to)i(the)f(n)m(um)m(b)
s(er)f(of)h(p)s(ositional)h(parameters)f(is)g(up)s(dated)f(to)150
5230 y(re\015ect)h(the)f(c)m(hange.)56 b(Sp)s(ecial)35
-b(parameter)h Fs(0)f Ft(is)g(unc)m(hanged.)54 b(The)35
-b(\014rst)f(elemen)m(t)j(of)e(the)g Fs(FUNCNAME)150 5340
-y Ft(v)-5 b(ariable)31 b(is)g(set)f(to)i(the)e(name)h(of)f(the)h
+b(parameter)h Ft(0)f Fu(is)g(unc)m(hanged.)54 b(The)35
+b(\014rst)f(elemen)m(t)j(of)e(the)g Ft(FUNCNAME)150 5340
+y Fu(v)-5 b(ariable)31 b(is)g(set)f(to)i(the)e(name)h(of)f(the)h
(function)f(while)g(the)h(function)f(is)g(executing.)p
eop end
%%Page: 18 24
-TeXDict begin 18 23 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 18 23 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(18)275 299
y(All)25 b(other)g(asp)s(ects)g(of)g(the)g(shell)g(execution)h(en)m
(vironmen)m(t)g(are)f(iden)m(tical)h(b)s(et)m(w)m(een)g(a)f(function)g
(and)150 408 y(its)35 b(caller)i(with)d(these)i(exceptions:)50
-b(the)36 b Fs(DEBUG)d Ft(and)h Fs(RETURN)g Ft(traps)g(are)i(not)f
+b(the)36 b Ft(DEBUG)d Fu(and)h Ft(RETURN)g Fu(traps)g(are)i(not)f
(inherited)f(unless)h(the)150 518 y(function)26 b(has)g(b)s(een)f(giv)m
-(en)i(the)g Fs(trace)d Ft(attribute)j(using)f(the)g Fs(declare)e
-Ft(builtin)i(or)g(the)h Fs(-o)i(functrace)150 628 y Ft(option)f(has)e
-(b)s(een)h(enabled)g(with)g(the)g Fs(set)f Ft(builtin,)i(\(in)f(whic)m
-(h)f(case)j(all)f(functions)e(inherit)h(the)g Fs(DEBUG)150
-737 y Ft(and)33 b Fs(RETURN)f Ft(traps\),)j(and)e(the)h
-Fs(ERR)f Ft(trap)h(is)g(not)g(inherited)f(unless)g(the)h
-Fs(-o)c(errtrace)h Ft(shell)j(option)150 847 y(has)h(b)s(een)f
+(en)i(the)g Ft(trace)d Fu(attribute)j(using)f(the)g Ft(declare)e
+Fu(builtin)i(or)g(the)h Ft(-o)i(functrace)150 628 y Fu(option)f(has)e
+(b)s(een)h(enabled)g(with)g(the)g Ft(set)f Fu(builtin,)i(\(in)f(whic)m
+(h)f(case)j(all)f(functions)e(inherit)h(the)g Ft(DEBUG)150
+737 y Fu(and)33 b Ft(RETURN)f Fu(traps\),)j(and)e(the)h
+Ft(ERR)f Fu(trap)h(is)g(not)g(inherited)f(unless)g(the)h
+Ft(-o)c(errtrace)h Fu(shell)j(option)150 847 y(has)h(b)s(een)f
(enabled.)55 b(See)35 b(Section)h(4.1)g([Bourne)f(Shell)g(Builtins],)i
(page)f(41,)i(for)c(the)i(description)f(of)150 956 y(the)c
-Fs(trap)e Ft(builtin.)275 1095 y(The)38 b Fs(FUNCNEST)f
-Ft(v)-5 b(ariable,)42 b(if)d(set)h(to)g(a)g(n)m(umeric)f(v)-5
+Ft(trap)e Fu(builtin.)275 1095 y(The)38 b Ft(FUNCNEST)f
+Fu(v)-5 b(ariable,)42 b(if)d(set)h(to)g(a)g(n)m(umeric)f(v)-5
b(alue)39 b(greater)h(than)f(0,)j(de\014nes)d(a)g(maxim)m(um)150
1204 y(function)24 b(nesting)h(lev)m(el.)40 b(F)-8 b(unction)25
b(in)m(v)m(o)s(cations)i(that)e(exceed)g(the)g(limit)g(cause)g(the)g
(en)m(tire)g(command)150 1314 y(to)31 b(ab)s(ort.)275
-1452 y(If)37 b(the)g(builtin)g(command)h Fs(return)d
-Ft(is)j(executed)g(in)g(a)g(function,)h(the)e(function)h(completes)h
+1452 y(If)37 b(the)g(builtin)g(command)h Ft(return)d
+Fu(is)j(executed)g(in)g(a)g(function,)h(the)e(function)h(completes)h
(and)150 1562 y(execution)25 b(resumes)e(with)h(the)g(next)g(command)f
(after)i(the)f(function)f(call.)40 b(An)m(y)24 b(command)f(asso)s
-(ciated)150 1672 y(with)36 b(the)h Fs(RETURN)d Ft(trap)i(is)h(executed)
+(ciated)150 1672 y(with)36 b(the)h Ft(RETURN)d Fu(trap)i(is)h(executed)
g(b)s(efore)f(execution)i(resumes.)57 b(When)37 b(a)f(function)g
(completes,)150 1781 y(the)h(v)-5 b(alues)38 b(of)f(the)g(p)s
(ositional)h(parameters)f(and)g(the)g(sp)s(ecial)h(parameter)f(`)p
-Fs(#)p Ft(')g(are)h(restored)f(to)h(the)150 1891 y(v)-5
+Ft(#)p Fu(')g(are)h(restored)f(to)h(the)150 1891 y(v)-5
b(alues)26 b(they)f(had)g(prior)f(to)i(the)g(function's)f(execution.)40
b(If)25 b(a)h(n)m(umeric)f(argumen)m(t)h(is)f(giv)m(en)h(to)g
-Fs(return)p Ft(,)150 2000 y(that)j(is)g(the)f(function's)h(return)e
+Ft(return)p Fu(,)150 2000 y(that)j(is)g(the)f(function's)h(return)e
(status;)j(otherwise)f(the)f(function's)h(return)e(status)i(is)f(the)h
(exit)h(status)150 2110 y(of)h(the)f(last)h(command)f(executed)i(b)s
-(efore)e(the)g Fs(return)p Ft(.)275 2248 y(V)-8 b(ariables)31
+(efore)e(the)g Ft(return)p Fu(.)275 2248 y(V)-8 b(ariables)31
b(lo)s(cal)g(to)f(the)g(function)f(ma)m(y)i(b)s(e)e(declared)h(with)f
-(the)h Fs(local)f Ft(builtin.)40 b(These)29 b(v)-5 b(ariables)150
+(the)h Ft(local)f Fu(builtin.)40 b(These)29 b(v)-5 b(ariables)150
2358 y(are)31 b(visible)g(only)f(to)h(the)g(function)f(and)g(the)g
-(commands)g(it)h(in)m(v)m(ok)m(es.)275 2497 y(F)-8 b(unction)47
-b(names)g(and)f(de\014nitions)g(ma)m(y)h(b)s(e)f(listed)i(with)e(the)h
-(`)p Fs(-f)p Ft(')f(option)i(to)f(the)g Fs(declare)150
-2606 y Ft(\()p Fs(typeset)p Ft(\))39 b(builtin)i(command)f(\(see)i
-(Section)f(4.2)h([Bash)f(Builtins],)j(page)d(48\).)73
-b(The)40 b(`)p Fs(-F)p Ft(')g(option)150 2716 y(to)29
-b Fs(declare)d Ft(or)i Fs(typeset)f Ft(will)h(list)h(the)f(function)g
-(names)h(only)f(\(and)g(optionally)h(the)g(source)f(\014le)h(and)150
-2825 y(line)k(n)m(um)m(b)s(er,)g(if)f(the)h Fs(extdebug)e
-Ft(shell)i(option)g(is)g(enabled\).)49 b(F)-8 b(unctions)33
-b(ma)m(y)h(b)s(e)e(exp)s(orted)g(so)h(that)150 2935 y(subshells)f
-(automatically)37 b(ha)m(v)m(e)d(them)g(de\014ned)e(with)h(the)g(`)p
-Fs(-f)p Ft(')h(option)g(to)g(the)f Fs(export)f Ft(builtin)h(\(see)150
-3044 y(Section)g(4.1)g([Bourne)f(Shell)g(Builtins],)i(page)f(41\).)47
-b(Note)33 b(that)g(shell)f(functions)g(and)f(v)-5 b(ariables)33
-b(with)150 3154 y(the)d(same)g(name)g(ma)m(y)g(result)g(in)g(m)m
-(ultiple)g(iden)m(tically-named)i(en)m(tries)f(in)e(the)h(en)m
-(vironmen)m(t)g(passed)150 3264 y(to)h(the)g(shell's)f(c)m(hildren.)41
-b(Care)30 b(should)g(b)s(e)f(tak)m(en)j(in)e(cases)h(where)f(this)g(ma)
-m(y)h(cause)g(a)g(problem.)275 3402 y(F)-8 b(unctions)33
-b(ma)m(y)g(b)s(e)g(recursiv)m(e.)48 b(The)32 b Fs(FUNCNEST)f
-Ft(v)-5 b(ariable)34 b(ma)m(y)f(b)s(e)f(used)g(to)i(limit)g(the)f
-(depth)f(of)150 3512 y(the)27 b(function)f(call)i(stac)m(k)h(and)d
-(restrict)h(the)g(n)m(um)m(b)s(er)f(of)h(function)f(in)m(v)m(o)s
-(cations.)42 b(By)27 b(default,)g(no)g(limit)150 3621
-y(is)j(placed)h(on)g(the)f(n)m(um)m(b)s(er)f(of)i(recursiv)m(e)f
-(calls.)150 3860 y Fr(3.4)68 b(Shell)45 b(P)l(arameters)150
-4019 y Ft(A)23 b Fq(parameter)31 b Ft(is)23 b(an)g(en)m(tit)m(y)i(that)
+(commands)g(it)h(in)m(v)m(ok)m(es.)275 2497 y(F)-8 b(unction)51
+b(names)f(and)g(de\014nitions)g(ma)m(y)i(b)s(e)e(listed)h(with)f(the)h
+Ft(-f)f Fu(option)h(to)g(the)g Ft(declare)150 2606 y
+Fu(\()p Ft(typeset)p Fu(\))35 b(builtin)g(command)h(\(see)h(Section)g
+(4.2)g([Bash)f(Builtins],)i(page)f(48\).)59 b(The)35
+b Ft(-F)h Fu(option)g(to)150 2716 y Ft(declare)e Fu(or)i
+Ft(typeset)e Fu(will)i(list)h(the)f(function)g(names)g(only)g(\(and)g
+(optionally)h(the)f(source)g(\014le)h(and)150 2825 y(line)c(n)m(um)m(b)
+s(er,)g(if)f(the)h Ft(extdebug)e Fu(shell)i(option)g(is)g(enabled\).)49
+b(F)-8 b(unctions)33 b(ma)m(y)h(b)s(e)e(exp)s(orted)g(so)h(that)150
+2935 y(subshells)j(automatically)k(ha)m(v)m(e)f(them)e(de\014ned)f
+(with)h(the)h Ft(-f)e Fu(option)i(to)g(the)g Ft(export)d
+Fu(builtin)i(\(see)150 3044 y(Section)c(4.1)g([Bourne)f(Shell)g
+(Builtins],)i(page)f(41\).)47 b(Note)33 b(that)g(shell)f(functions)g
+(and)f(v)-5 b(ariables)33 b(with)150 3154 y(the)d(same)g(name)g(ma)m(y)
+g(result)g(in)g(m)m(ultiple)g(iden)m(tically-named)i(en)m(tries)f(in)e
+(the)h(en)m(vironmen)m(t)g(passed)150 3264 y(to)h(the)g(shell's)f(c)m
+(hildren.)41 b(Care)30 b(should)g(b)s(e)f(tak)m(en)j(in)e(cases)h
+(where)f(this)g(ma)m(y)h(cause)g(a)g(problem.)275 3402
+y(F)-8 b(unctions)33 b(ma)m(y)g(b)s(e)g(recursiv)m(e.)48
+b(The)32 b Ft(FUNCNEST)f Fu(v)-5 b(ariable)34 b(ma)m(y)f(b)s(e)f(used)g
+(to)i(limit)g(the)f(depth)f(of)150 3512 y(the)27 b(function)f(call)i
+(stac)m(k)h(and)d(restrict)h(the)g(n)m(um)m(b)s(er)f(of)h(function)f
+(in)m(v)m(o)s(cations.)42 b(By)27 b(default,)g(no)g(limit)150
+3621 y(is)j(placed)h(on)g(the)f(n)m(um)m(b)s(er)f(of)i(recursiv)m(e)f
+(calls.)150 3860 y Fs(3.4)68 b(Shell)45 b(P)l(arameters)150
+4019 y Fu(A)23 b Fr(parameter)31 b Fu(is)23 b(an)g(en)m(tit)m(y)i(that)
f(stores)g(v)-5 b(alues.)39 b(It)23 b(can)h(b)s(e)f(a)g
-Fs(name)p Ft(,)h(a)g(n)m(um)m(b)s(er,)f(or)h(one)f(of)h(the)f(sp)s
-(ecial)150 4129 y(c)m(haracters)i(listed)f(b)s(elo)m(w.)39
-b(A)24 b Fq(v)-5 b(ariable)29 b Ft(is)24 b(a)g(parameter)g(denoted)f(b)
-m(y)h(a)g Fs(name)p Ft(.)37 b(A)24 b(v)-5 b(ariable)24
-b(has)f(a)h Fq(v)-5 b(alue)150 4238 y Ft(and)33 b(zero)i(or)e(more)h
-Fq(attributes)t Ft(.)51 b(A)m(ttributes)34 b(are)g(assigned)g(using)f
-(the)h Fs(declare)e Ft(builtin)h(command)150 4348 y(\(see)e(the)g
-(description)f(of)h(the)f Fs(declare)f Ft(builtin)h(in)g(Section)h(4.2)
+Ft(name)p Fu(,)h(a)g(n)m(um)m(b)s(er,)f(or)h(one)f(of)h(the)f(sp)s
+(ecial)150 4129 y(c)m(haracters)i(listed)e(b)s(elo)m(w.)39
+b(A)23 b Fr(v)-5 b(ariable)30 b Fu(is)23 b(a)g(parameter)h(denoted)f(b)
+m(y)h(a)f Ft(name)p Fu(.)37 b(A)24 b(v)-5 b(ariable)24
+b(has)f(a)g Fr(v)-5 b(alue)150 4238 y Fu(and)33 b(zero)i(or)f(more)g
+Fr(attributes)p Fu(.)52 b(A)m(ttributes)35 b(are)f(assigned)g(using)g
+(the)g Ft(declare)e Fu(builtin)h(command)150 4348 y(\(see)e(the)g
+(description)f(of)h(the)f Ft(declare)f Fu(builtin)h(in)g(Section)h(4.2)
g([Bash)g(Builtins],)g(page)g(48\).)275 4486 y(A)d(parameter)h(is)g
(set)g(if)f(it)h(has)f(b)s(een)g(assigned)h(a)g(v)-5
b(alue.)40 b(The)28 b(n)m(ull)h(string)f(is)h(a)g(v)-5
b(alid)28 b(v)-5 b(alue.)41 b(Once)150 4596 y(a)31 b(v)-5
b(ariable)31 b(is)f(set,)i(it)e(ma)m(y)h(b)s(e)f(unset)g(only)h(b)m(y)f
-(using)g(the)g Fs(unset)f Ft(builtin)h(command.)275 4734
+(using)g(the)g Ft(unset)f Fu(builtin)h(command.)275 4734
y(A)g(v)-5 b(ariable)31 b(ma)m(y)g(b)s(e)f(assigned)g(to)i(b)m(y)e(a)h
-(statemen)m(t)h(of)e(the)h(form)390 4873 y Fi(name)11
-b Fs(=[)p Fi(value)g Fs(])150 5011 y Ft(If)34 b Fq(v)-5
-b(alue)40 b Ft(is)35 b(not)g(giv)m(en,)h(the)f(v)-5 b(ariable)35
+(statemen)m(t)h(of)e(the)h(form)390 4873 y Fj(name)p
+Ft(=[)p Fj(value)p Ft(])150 5011 y Fu(If)j Fr(v)-5 b(alue)40
+b Fu(is)35 b(not)g(giv)m(en,)h(the)f(v)-5 b(ariable)35
b(is)g(assigned)g(the)f(n)m(ull)h(string.)53 b(All)35
-b Fq(v)-5 b(alue)5 b Ft(s)35 b(undergo)f(tilde)h(ex-)150
+b Fr(v)-5 b(alue)5 b Fu(s)35 b(undergo)f(tilde)h(ex-)150
5121 y(pansion,)h(parameter)f(and)f(v)-5 b(ariable)36
b(expansion,)f(command)g(substitution,)h(arithmetic)g(expansion,)150
5230 y(and)k(quote)h(remo)m(v)-5 b(al)42 b(\(detailed)h(b)s(elo)m(w\).)
-72 b(If)40 b(the)h(v)-5 b(ariable)41 b(has)g(its)g Fs(integer)e
-Ft(attribute)i(set,)j(then)150 5340 y Fq(v)-5 b(alue)38
-b Ft(is)33 b(ev)-5 b(aluated)34 b(as)f(an)g(arithmetic)h(expression)f
-(ev)m(en)h(if)e(the)h Fs($\(\(...)o(\)\))f Ft(expansion)h(is)g(not)g
+72 b(If)40 b(the)h(v)-5 b(ariable)41 b(has)g(its)g Ft(integer)e
+Fu(attribute)i(set,)j(then)150 5340 y Fr(v)-5 b(alue)38
+b Fu(is)33 b(ev)-5 b(aluated)34 b(as)f(an)g(arithmetic)h(expression)f
+(ev)m(en)h(if)e(the)h Ft($\(\(...)o(\)\))f Fu(expansion)h(is)g(not)g
(used)p eop end
%%Page: 19 25
-TeXDict begin 19 24 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 19 24 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(19)150 299
y(\(see)31 b(Section)g(3.5.5)i([Arithmetic)e(Expansion],)f(page)h
(28\).)42 b(W)-8 b(ord)31 b(splitting)g(is)g(not)f(p)s(erformed,)f
-(with)150 408 y(the)35 b(exception)h(of)f Fs("$@")f Ft(as)h(explained)g
+(with)150 408 y(the)35 b(exception)h(of)f Ft("$@")f Fu(as)h(explained)g
(b)s(elo)m(w.)54 b(Filename)36 b(expansion)f(is)g(not)g(p)s(erformed.)
53 b(Assign-)150 518 y(men)m(t)33 b(statemen)m(ts)h(ma)m(y)f(also)g
-(app)s(ear)f(as)g(argumen)m(ts)h(to)g(the)g Fs(alias)p
-Ft(,)e Fs(declare)p Ft(,)g Fs(typeset)p Ft(,)g Fs(export)p
-Ft(,)150 628 y Fs(readonly)p Ft(,)41 b(and)f Fs(local)f
-Ft(builtin)h(commands.)71 b(When)40 b(in)h Fl(posix)e
-Ft(mo)s(de)i(\(see)g(Section)g(6.11)i([Bash)150 737 y(POSIX)36
+(app)s(ear)f(as)g(argumen)m(ts)h(to)g(the)g Ft(alias)p
+Fu(,)e Ft(declare)p Fu(,)g Ft(typeset)p Fu(,)g Ft(export)p
+Fu(,)150 628 y Ft(readonly)p Fu(,)41 b(and)f Ft(local)f
+Fu(builtin)h(commands.)71 b(When)40 b(in)h Fm(posix)e
+Fu(mo)s(de)i(\(see)g(Section)g(6.11)i([Bash)150 737 y(POSIX)36
b(Mo)s(de],)k(page)e(94\),)i(these)e(builtins)f(ma)m(y)h(app)s(ear)e
(in)h(a)h(command)f(after)h(one)f(or)h(more)f(in-)150
-847 y(stances)31 b(of)g(the)f Fs(command)f Ft(builtin)h(and)f(retain)i
+847 y(stances)31 b(of)g(the)f Ft(command)f Fu(builtin)h(and)f(retain)i
(these)g(assignmen)m(t)g(statemen)m(t)h(prop)s(erties.)275
994 y(In)d(the)h(con)m(text)i(where)d(an)h(assignmen)m(t)h(statemen)m
(t)h(is)e(assigning)g(a)h(v)-5 b(alue)30 b(to)h(a)f(shell)g(v)-5
b(ariable)31 b(or)150 1104 y(arra)m(y)f(index)g(\(see)h(Section)g(6.7)g
-([Arra)m(ys],)g(page)g(89\),)g(the)f(`)p Fs(+=)p Ft(')g(op)s(erator)g
+([Arra)m(ys],)g(page)g(89\),)g(the)f(`)p Ft(+=)p Fu(')g(op)s(erator)g
(can)h(b)s(e)e(used)g(to)i(app)s(end)d(to)150 1213 y(or)36
b(add)g(to)h(the)f(v)-5 b(ariable's)37 b(previous)f(v)-5
-b(alue.)59 b(When)36 b(`)p Fs(+=)p Ft(')g(is)g(applied)g(to)h(a)g(v)-5
-b(ariable)37 b(for)f(whic)m(h)g(the)150 1323 y Fq(in)m(teger)46
-b Ft(attribute)38 b(has)f(b)s(een)g(set,)k Fq(v)-5 b(alue)43
-b Ft(is)38 b(ev)-5 b(aluated)39 b(as)f(an)f(arithmetic)i(expression)f
+b(alue.)59 b(When)36 b(`)p Ft(+=)p Fu(')g(is)g(applied)g(to)h(a)g(v)-5
+b(ariable)37 b(for)f(whic)m(h)g(the)150 1323 y Fr(in)m(teger)46
+b Fu(attribute)38 b(has)f(b)s(een)g(set,)k Fr(v)-5 b(alue)43
+b Fu(is)38 b(ev)-5 b(aluated)39 b(as)f(an)f(arithmetic)i(expression)f
(and)f(added)150 1433 y(to)f(the)f(v)-5 b(ariable's)36
b(curren)m(t)f(v)-5 b(alue,)37 b(whic)m(h)e(is)g(also)h(ev)-5
-b(aluated.)56 b(When)35 b(`)p Fs(+=)p Ft(')g(is)h(applied)f(to)g(an)g
+b(aluated.)56 b(When)35 b(`)p Ft(+=)p Fu(')g(is)h(applied)f(to)g(an)g
(arra)m(y)150 1542 y(v)-5 b(ariable)26 b(using)e(comp)s(ound)f
(assignmen)m(t)j(\(see)f(Section)h(6.7)f([Arra)m(ys],)i(page)f(89\),)h
(the)e(v)-5 b(ariable's)25 b(v)-5 b(alue)150 1652 y(is)32
-b(not)f(unset)h(\(as)g(it)g(is)f(when)g(using)g(`)p Fs(=)p
-Ft('\),)i(and)e(new)g(v)-5 b(alues)32 b(are)g(app)s(ended)d(to)k(the)f
+b(not)f(unset)h(\(as)g(it)g(is)f(when)g(using)g(`)p Ft(=)p
+Fu('\),)i(and)e(new)g(v)-5 b(alues)32 b(are)g(app)s(ended)d(to)k(the)f
(arra)m(y)g(b)s(eginning)150 1761 y(at)27 b(one)f(greater)i(than)e(the)
g(arra)m(y's)h(maxim)m(um)f(index)g(\(for)g(indexed)g(arra)m(ys\),)i
(or)e(added)g(as)g(additional)150 1871 y(k)m(ey-v)-5
b(alue)35 b(pairs)e(in)g(an)g(asso)s(ciativ)m(e)j(arra)m(y)-8
b(.)51 b(When)33 b(applied)g(to)h(a)g(string-v)-5 b(alued)34
-b(v)-5 b(ariable,)35 b Fq(v)-5 b(alue)39 b Ft(is)150
+b(v)-5 b(ariable,)35 b Fr(v)-5 b(alue)39 b Fu(is)150
1980 y(expanded)30 b(and)f(app)s(ended)g(to)i(the)g(v)-5
-b(ariable's)31 b(v)-5 b(alue.)275 2128 y(A)37 b(v)-5
-b(ariable)38 b(can)g(b)s(e)f(assigned)h(the)f Fq(nameref)55
-b Ft(attribute)38 b(using)f(the)h(`)p Fs(-n)p Ft(')f(option)h(to)g(the)
-g Fs(\\)p Ft(fBde-)150 2237 y(clare)p Fs(\\)p Ft(fP)44
-b(or)f Fs(\\)p Ft(fBlo)s(cal)p Fs(\\)p Ft(fP)h(builtin)e(commands)h
-(\(see)h(Section)h(4.2)f([Bash)g(Builtins],)j(page)d(48\))g(to)150
-2347 y(create)36 b(a)e Fq(nameref)17 b Ft(,)35 b(or)f(a)h(reference)f
-(to)h(another)f(v)-5 b(ariable.)53 b(This)33 b(allo)m(ws)i(v)-5
-b(ariables)35 b(to)f(b)s(e)g(manipu-)150 2457 y(lated)d(indirectly)-8
+b(ariable's)31 b(v)-5 b(alue.)275 2128 y(A)41 b(v)-5
+b(ariable)42 b(can)f(b)s(e)f(assigned)i(the)f Fr(nameref)58
+b Fu(attribute)42 b(using)f(the)g Ft(-n)f Fu(option)i(to)g(the)f
+Ft(\\)p Fu(fBde-)150 2237 y(clare)p Ft(\\)p Fu(fP)j(or)f
+Ft(\\)p Fu(fBlo)s(cal)p Ft(\\)p Fu(fP)h(builtin)e(commands)h(\(see)h
+(Section)h(4.2)f([Bash)g(Builtins],)j(page)d(48\))g(to)150
+2347 y(create)37 b(a)e Fr(nameref)p Fu(,)h(or)f(a)h(reference)f(to)h
+(another)g(v)-5 b(ariable.)55 b(This)34 b(allo)m(ws)j(v)-5
+b(ariables)35 b(to)h(b)s(e)f(manipu-)150 2457 y(lated)c(indirectly)-8
b(.)43 b(Whenev)m(er)31 b(the)g(nameref)f(v)-5 b(ariable)32
b(is)e(referenced)h(or)f(assigned)h(to,)h(the)e(op)s(eration)150
2566 y(is)i(actually)h(p)s(erformed)d(on)i(the)g(v)-5
2785 y(argumen)m(t)g(to)g(the)g(function.)46 b(F)-8 b(or)33
b(instance,)h(if)e(a)h(v)-5 b(ariable)33 b(name)g(is)f(passed)g(to)h(a)
g(shell)g(function)f(as)150 2895 y(its)f(\014rst)e(argumen)m(t,)i
-(running)390 3042 y Fs(declare)46 b(-n)h(ref=$1)150 3190
-y Ft(inside)31 b(the)h(function)f(creates)i(a)g(nameref)e(v)-5
-b(ariable)32 b Fq(ref)49 b Ft(whose)32 b(v)-5 b(alue)32
+(running)390 3042 y Ft(declare)46 b(-n)h(ref=$1)150 3190
+y Fu(inside)31 b(the)h(function)f(creates)i(a)g(nameref)e(v)-5
+b(ariable)32 b Fr(ref)49 b Fu(whose)32 b(v)-5 b(alue)32
b(is)g(the)f(v)-5 b(ariable)33 b(name)e(passed)150 3299
y(as)42 b(the)g(\014rst)f(argumen)m(t.)74 b(References)43
-b(and)e(assignmen)m(ts)h(to)g Fq(ref)59 b Ft(are)42 b(treated)h(as)f
+b(and)e(assignmen)m(ts)h(to)g Fr(ref)59 b Fu(are)42 b(treated)h(as)f
(references)g(and)150 3409 y(assignmen)m(ts)31 b(to)g(the)g(v)-5
b(ariable)31 b(whose)f(name)g(w)m(as)h(passed)f(as)h
-Fs($1)p Ft(.)275 3556 y(If)38 b(the)i(con)m(trol)g(v)-5
-b(ariable)40 b(in)f(a)g Fs(for)g Ft(lo)s(op)g(has)g(the)g(nameref)g
+Ft($1)p Fu(.)275 3556 y(If)38 b(the)i(con)m(trol)g(v)-5
+b(ariable)40 b(in)f(a)g Ft(for)g Fu(lo)s(op)g(has)g(the)g(nameref)g
(attribute,)k(the)c(list)h(of)f(w)m(ords)g(can)150 3666
y(b)s(e)c(a)i(list)f(of)g(shell)h(v)-5 b(ariables,)38
b(and)d(a)h(name)g(reference)h(will)f(b)s(e)f(established)i(for)e(eac)m
-(h)j(w)m(ord)d(in)h(the)150 3775 y(list,)30 b(in)f(turn,)g(when)f(the)i
-(lo)s(op)f(is)g(executed.)41 b(Arra)m(y)30 b(v)-5 b(ariables)30
-b(cannot)g(b)s(e)e(giv)m(en)i(the)g(`)p Fs(-n)p Ft(')f(attribute.)150
+(h)j(w)m(ord)d(in)h(the)150 3775 y(list,)e(in)e(turn,)g(when)f(the)i
+(lo)s(op)f(is)h(executed.)47 b(Arra)m(y)33 b(v)-5 b(ariables)33
+b(cannot)g(b)s(e)e(giv)m(en)j(the)e Ft(-n)g Fu(attribute.)150
3885 y(Ho)m(w)m(ev)m(er,)39 b(nameref)d(v)-5 b(ariables)36
b(can)g(reference)g(arra)m(y)g(v)-5 b(ariables)37 b(and)e(subscripted)f
-(arra)m(y)i(v)-5 b(ariables.)150 3995 y(Namerefs)32 b(can)h(b)s(e)e
-(unset)h(using)f(the)h(`)p Fs(-n)p Ft(')g(option)h(to)g(the)f
-Fs(unset)e Ft(builtin)i(\(see)h(Section)g(4.1)g([Bourne)150
+(arra)m(y)i(v)-5 b(ariables.)150 3995 y(Namerefs)36 b(can)f(b)s(e)g
+(unset)g(using)g(the)h Ft(-n)e Fu(option)i(to)g(the)g
+Ft(unset)e Fu(builtin)h(\(see)h(Section)g(4.1)h([Bourne)150
4104 y(Shell)43 b(Builtins],)j(page)e(41\).)79 b(Otherwise,)45
-b(if)e Fs(unset)e Ft(is)i(executed)h(with)e(the)h(name)g(of)g(a)g
+b(if)e Ft(unset)e Fu(is)i(executed)h(with)e(the)h(name)g(of)g(a)g
(nameref)150 4214 y(v)-5 b(ariable)31 b(as)g(an)f(argumen)m(t,)h(the)g
(v)-5 b(ariable)31 b(referenced)f(b)m(y)g(the)h(nameref)f(v)-5
-b(ariable)31 b(will)g(b)s(e)f(unset.)150 4426 y Fj(3.4.1)63
-b(P)m(ositional)41 b(P)m(arameters)150 4573 y Ft(A)28
-b Fq(p)s(ositional)h(parameter)35 b Ft(is)28 b(a)g(parameter)g(denoted)
+b(ariable)31 b(will)g(b)s(e)f(unset.)150 4426 y Fk(3.4.1)63
+b(P)m(ositional)41 b(P)m(arameters)150 4573 y Fu(A)28
+b Fr(p)s(ositional)h(parameter)35 b Fu(is)28 b(a)g(parameter)g(denoted)
g(b)m(y)g(one)g(or)g(more)g(digits,)h(other)g(than)e(the)h(single)150
-4682 y(digit)34 b Fs(0)p Ft(.)48 b(P)m(ositional)36 b(parameters)d(are)
+4682 y(digit)34 b Ft(0)p Fu(.)48 b(P)m(ositional)36 b(parameters)d(are)
g(assigned)h(from)e(the)i(shell's)f(argumen)m(ts)g(when)f(it)i(is)f(in)
m(v)m(ok)m(ed,)150 4792 y(and)38 b(ma)m(y)i(b)s(e)e(reassigned)i(using)
-e(the)h Fs(set)g Ft(builtin)f(command.)67 b(P)m(ositional)41
-b(parameter)e Fs(N)g Ft(ma)m(y)h(b)s(e)150 4902 y(referenced)34
-b(as)h Fs(${N})p Ft(,)g(or)f(as)h Fs($N)e Ft(when)h Fs(N)g
-Ft(consists)h(of)f(a)h(single)g(digit.)54 b(P)m(ositional)37
+e(the)h Ft(set)g Fu(builtin)f(command.)67 b(P)m(ositional)41
+b(parameter)e Ft(N)g Fu(ma)m(y)h(b)s(e)150 4902 y(referenced)34
+b(as)h Ft(${N})p Fu(,)g(or)f(as)h Ft($N)e Fu(when)h Ft(N)g
+Fu(consists)h(of)f(a)h(single)g(digit.)54 b(P)m(ositional)37
b(parameters)d(ma)m(y)150 5011 y(not)j(b)s(e)f(assigned)h(to)g(with)f
-(assignmen)m(t)i(statemen)m(ts.)61 b(The)36 b Fs(set)g
-Ft(and)g Fs(shift)f Ft(builtins)h(are)h(used)f(to)150
+(assignmen)m(t)i(statemen)m(ts.)61 b(The)36 b Ft(set)g
+Fu(and)g Ft(shift)f Fu(builtins)h(are)h(used)f(to)150
5121 y(set)k(and)f(unset)f(them)i(\(see)g(Chapter)f(4)g([Shell)h
(Builtin)g(Commands],)h(page)f(41\).)68 b(The)39 b(p)s(ositional)150
5230 y(parameters)44 b(are)g(temp)s(orarily)g(replaced)h(when)e(a)h
5340 y([Shell)30 b(F)-8 b(unctions],)32 b(page)f(17\).)p
eop end
%%Page: 20 26
-TeXDict begin 20 25 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 20 25 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(20)275 299
y(When)27 b(a)i(p)s(ositional)g(parameter)g(consisting)f(of)h(more)f
(than)g(a)g(single)h(digit)g(is)f(expanded,)g(it)h(m)m(ust)150
-408 y(b)s(e)h(enclosed)h(in)f(braces.)150 624 y Fj(3.4.2)63
-b(Sp)s(ecial)41 b(P)m(arameters)150 771 y Ft(The)d(shell)g(treats)h
+408 y(b)s(e)h(enclosed)h(in)f(braces.)150 614 y Fk(3.4.2)63
+b(Sp)s(ecial)41 b(P)m(arameters)150 761 y Fu(The)d(shell)g(treats)h
(sev)m(eral)g(parameters)f(sp)s(ecially)-8 b(.)65 b(These)38
b(parameters)h(ma)m(y)f(only)g(b)s(e)g(referenced;)150
-881 y(assignmen)m(t)31 b(to)g(them)g(is)f(not)h(allo)m(w)m(ed.)150
-1065 y Fs(*)432 b Ft(Expands)29 b(to)h(the)h(p)s(ositional)f
-(parameters,)h(starting)g(from)e(one.)41 b(When)30 b(the)g(expansion)
-630 1175 y(o)s(ccurs)e(within)f(double)h(quotes,)h(it)g(expands)e(to)i
-(a)f(single)h(w)m(ord)f(with)g(the)g(v)-5 b(alue)29 b(of)f(eac)m(h)630
-1284 y(parameter)i(separated)g(b)m(y)f(the)g(\014rst)g(c)m(haracter)i
-(of)e(the)h Fs(IFS)e Ft(sp)s(ecial)i(v)-5 b(ariable.)41
-b(That)30 b(is,)630 1394 y Fs("$*")h Ft(is)i(equiv)-5
-b(alen)m(t)33 b(to)h Fs("$1)p Fi(c)11 b Fs($2)p Fi(c)g
-Fs(...)l(")p Ft(,)33 b(where)f Fq(c)38 b Ft(is)32 b(the)h(\014rst)e(c)m
-(haracter)j(of)f(the)f(v)-5 b(alue)630 1503 y(of)30 b(the)g
-Fs(IFS)g Ft(v)-5 b(ariable.)41 b(If)30 b Fs(IFS)f Ft(is)h(unset,)g(the)
-g(parameters)g(are)h(separated)f(b)m(y)g(spaces.)41 b(If)630
-1613 y Fs(IFS)29 b Ft(is)i(n)m(ull,)f(the)h(parameters)g(are)f(joined)h
-(without)f(in)m(terv)m(ening)i(separators.)150 1789 y
-Fs(@)432 b Ft(Expands)29 b(to)h(the)h(p)s(ositional)f(parameters,)h
-(starting)g(from)e(one.)41 b(When)30 b(the)g(expansion)630
-1899 y(o)s(ccurs)c(within)g(double)f(quotes,)j(eac)m(h)f(parameter)g
-(expands)e(to)i(a)g(separate)g(w)m(ord.)39 b(That)630
-2008 y(is,)29 b Fs("$@")e Ft(is)i(equiv)-5 b(alen)m(t)30
-b(to)f Fs("$1")g("$2")h(...)o Ft(.)40 b(If)28 b(the)g(double-quoted)h
-(expansion)f(o)s(ccurs)630 2118 y(within)d(a)h(w)m(ord,)g(the)g
-(expansion)f(of)h(the)g(\014rst)f(parameter)h(is)f(joined)h(with)f(the)
-h(b)s(eginning)630 2227 y(part)f(of)g(the)g(original)g(w)m(ord,)h(and)e
-(the)h(expansion)g(of)g(the)g(last)h(parameter)f(is)g(joined)f(with)630
-2337 y(the)37 b(last)g(part)g(of)f(the)h(original)h(w)m(ord.)59
-b(When)36 b(there)h(are)g(no)f(p)s(ositional)h(parameters,)630
-2447 y Fs("$@")29 b Ft(and)h Fs($@)g Ft(expand)f(to)j(nothing)e
-(\(i.e.,)i(they)e(are)h(remo)m(v)m(ed\).)150 2623 y Fs(#)432
-b Ft(Expands)29 b(to)i(the)g(n)m(um)m(b)s(er)e(of)h(p)s(ositional)h
-(parameters)g(in)f(decimal.)150 2799 y Fs(?)432 b Ft(Expands)29
-b(to)i(the)g(exit)g(status)g(of)f(the)h(most)f(recen)m(tly)i(executed)f
-(foreground)f(pip)s(eline.)150 2975 y Fs(-)432 b Ft(\(A)31
-b(h)m(yphen.\))42 b(Expands)30 b(to)h(the)g(curren)m(t)g(option)h
-(\015ags)f(as)g(sp)s(eci\014ed)f(up)s(on)g(in)m(v)m(o)s(cation,)630
-3084 y(b)m(y)35 b(the)h Fs(set)e Ft(builtin)h(command,)h(or)g(those)g
-(set)f(b)m(y)h(the)f(shell)h(itself)g(\(suc)m(h)f(as)h(the)f(`)p
-Fs(-i)p Ft(')630 3194 y(option\).)150 3370 y Fs($)432
-b Ft(Expands)39 b(to)j(the)f(pro)s(cess)f Fl(id)h Ft(of)g(the)g(shell.)
-73 b(In)40 b(a)h Fs(\(\))f Ft(subshell,)j(it)e(expands)f(to)i(the)630
-3479 y(pro)s(cess)30 b Fl(id)g Ft(of)h(the)g(in)m(v)m(oking)g(shell,)g
-(not)g(the)f(subshell.)150 3655 y Fs(!)432 b Ft(Expands)26
-b(to)i(the)f(pro)s(cess)g Fl(id)g Ft(of)g(the)h(job)f(most)g(recen)m
-(tly)i(placed)e(in)m(to)i(the)e(bac)m(kground,)630 3765
-y(whether)39 b(executed)i(as)f(an)g(async)m(hronous)f(command)h(or)g
-(using)f(the)h Fs(bg)g Ft(builtin)f(\(see)630 3874 y(Section)31
-b(7.2)h([Job)e(Con)m(trol)h(Builtins],)g(page)g(99\).)150
-4050 y Fs(0)432 b Ft(Expands)20 b(to)j(the)f(name)g(of)g(the)g(shell)g
-(or)f(shell)h(script.)38 b(This)21 b(is)h(set)g(at)h(shell)f
-(initialization.)630 4160 y(If)44 b(Bash)g(is)g(in)m(v)m(ok)m(ed)i
-(with)e(a)g(\014le)g(of)h(commands)e(\(see)j(Section)f(3.8)g([Shell)f
-(Scripts],)630 4270 y(page)39 b(39\),)i Fs($0)d Ft(is)g(set)g(to)h(the)
-f(name)g(of)g(that)h(\014le.)64 b(If)37 b(Bash)i(is)f(started)g(with)g
-(the)g(`)p Fs(-c)p Ft(')630 4379 y(option)i(\(see)g(Section)h(6.1)f
-([In)m(v)m(oking)h(Bash],)h(page)e(80\),)j(then)d Fs($0)e
-Ft(is)i(set)g(to)g(the)g(\014rst)630 4489 y(argumen)m(t)31
-b(after)g(the)g(string)g(to)g(b)s(e)f(executed,)i(if)f(one)g(is)f
-(presen)m(t.)42 b(Otherwise,)31 b(it)g(is)f(set)630 4598
-y(to)h(the)g(\014lename)f(used)g(to)h(in)m(v)m(ok)m(e)h(Bash,)f(as)g
-(giv)m(en)g(b)m(y)f(argumen)m(t)h(zero.)150 4774 y Fs(_)432
-b Ft(\(An)27 b(underscore.\))39 b(A)m(t)29 b(shell)e(startup,)h(set)f
-(to)h(the)g(absolute)g(pathname)f(used)f(to)i(in)m(v)m(ok)m(e)630
-4884 y(the)22 b(shell)g(or)g(shell)g(script)f(b)s(eing)h(executed)h(as)
-f(passed)f(in)g(the)h(en)m(vironmen)m(t)h(or)e(argumen)m(t)630
-4994 y(list.)72 b(Subsequen)m(tly)-8 b(,)43 b(expands)c(to)j(the)e
-(last)i(argumen)m(t)f(to)g(the)g(previous)f(command,)630
-5103 y(after)35 b(expansion.)54 b(Also)36 b(set)f(to)h(the)f(full)f
-(pathname)h(used)f(to)h(in)m(v)m(ok)m(e)i(eac)m(h)f(command)630
-5213 y(executed)42 b(and)e(placed)i(in)e(the)h(en)m(vironmen)m(t)h(exp)
-s(orted)f(to)g(that)h(command.)72 b(When)630 5322 y(c)m(hec)m(king)32
-b(mail,)f(this)g(parameter)g(holds)e(the)i(name)f(of)h(the)g(mail)g
-(\014le.)p eop end
+870 y(assignmen)m(t)31 b(to)g(them)g(is)f(not)h(allo)m(w)m(ed.)150
+1039 y Ft(*)432 b Fu(\($*\))38 b(Expands)d(to)i(the)f(p)s(ositional)h
+(parameters,)h(starting)f(from)f(one.)59 b(When)36 b(the)g(ex-)630
+1149 y(pansion)25 b(o)s(ccurs)h(within)f(double)h(quotes,)h(it)g
+(expands)e(to)h(a)h(single)f(w)m(ord)g(with)f(the)h(v)-5
+b(alue)630 1258 y(of)33 b(eac)m(h)i(parameter)e(separated)h(b)m(y)f
+(the)h(\014rst)e(c)m(haracter)j(of)e(the)h Ft(IFS)e Fu(sp)s(ecial)i(v)
+-5 b(ariable.)630 1368 y(That)37 b(is,)j Ft("$*")c Fu(is)h(equiv)-5
+b(alen)m(t)39 b(to)f Ft("$1)p Fj(c)p Ft($2)p Fj(c)p Ft(...)n(")p
+Fu(,)h(where)e Fr(c)43 b Fu(is)37 b(the)h(\014rst)f(c)m(haracter)i(of)
+630 1477 y(the)31 b(v)-5 b(alue)32 b(of)f(the)g Ft(IFS)f
+Fu(v)-5 b(ariable.)43 b(If)31 b Ft(IFS)f Fu(is)h(unset,)g(the)g
+(parameters)g(are)h(separated)f(b)m(y)630 1587 y(spaces.)40
+b(If)25 b Ft(IFS)g Fu(is)h(n)m(ull,)h(the)f(parameters)g(are)h(joined)e
+(without)h(in)m(terv)m(ening)h(separators.)150 1753 y
+Ft(@)432 b Fu(\($@\))35 b(Expands)e(to)i(the)g(p)s(ositional)g
+(parameters,)h(starting)f(from)f(one.)53 b(When)34 b(the)g(ex-)630
+1862 y(pansion)41 b(o)s(ccurs)g(within)f(double)h(quotes,)k(eac)m(h)d
+(parameter)g(expands)e(to)i(a)g(separate)630 1972 y(w)m(ord.)50
+b(That)34 b(is,)g Ft("$@")f Fu(is)g(equiv)-5 b(alen)m(t)35
+b(to)g Ft("$1")29 b("$2")g(...)o Fu(.)51 b(If)33 b(the)h(double-quoted)
+f(ex-)630 2081 y(pansion)38 b(o)s(ccurs)h(within)f(a)h(w)m(ord,)i(the)e
+(expansion)g(of)g(the)g(\014rst)f(parameter)h(is)g(joined)630
+2191 y(with)i(the)h(b)s(eginning)e(part)i(of)f(the)h(original)g(w)m
+(ord,)i(and)d(the)h(expansion)f(of)g(the)h(last)630 2300
+y(parameter)31 b(is)f(joined)g(with)f(the)i(last)g(part)e(of)i(the)f
+(original)h(w)m(ord.)40 b(When)30 b(there)h(are)f(no)630
+2410 y(p)s(ositional)e(parameters,)h Ft("$@")d Fu(and)h
+Ft($@)f Fu(expand)h(to)h(nothing)f(\(i.e.,)j(they)e(are)f(remo)m(v)m
+(ed\).)150 2576 y Ft(#)432 b Fu(\($#\))31 b(Expands)e(to)i(the)g(n)m
+(um)m(b)s(er)e(of)h(p)s(ositional)i(parameters)e(in)g(decimal.)150
+2741 y Ft(?)432 b Fu(\($?\))88 b(Expands)45 b(to)h(the)g(exit)h(status)
+f(of)g(the)g(most)h(recen)m(tly)g(executed)g(foreground)630
+2851 y(pip)s(eline.)150 3016 y Ft(-)432 b Fu(\($-,)24
+b(a)e(h)m(yphen.\))37 b(Expands)20 b(to)i(the)f(curren)m(t)h(option)f
+(\015ags)h(as)f(sp)s(eci\014ed)g(up)s(on)f(in)m(v)m(o)s(cation,)630
+3126 y(b)m(y)38 b(the)h Ft(set)f Fu(builtin)g(command,)j(or)d(those)i
+(set)f(b)m(y)f(the)h(shell)g(itself)g(\(suc)m(h)g(as)g(the)g
+Ft(-i)630 3235 y Fu(option\).)150 3401 y Ft($)432 b Fu(\($$\))31
+b(Expands)d(to)j(the)e(pro)s(cess)h Fm(id)f Fu(of)h(the)g(shell.)41
+b(In)28 b(a)i Ft(\(\))f Fu(subshell,)h(it)g(expands)e(to)j(the)630
+3511 y(pro)s(cess)f Fm(id)g Fu(of)h(the)g(in)m(v)m(oking)g(shell,)g
+(not)g(the)f(subshell.)150 3676 y Ft(!)432 b Fu(\($!\))51
+b(Expands)32 b(to)i(the)g(pro)s(cess)f Fm(id)h Fu(of)f(the)h(job)f
+(most)h(recen)m(tly)h(placed)f(in)m(to)g(the)g(bac)m(k-)630
+3786 y(ground,)26 b(whether)g(executed)g(as)h(an)f(async)m(hronous)f
+(command)h(or)g(using)g(the)g Ft(bg)f Fu(builtin)630
+3895 y(\(see)31 b(Section)h(7.2)f([Job)f(Con)m(trol)h(Builtins],)g
+(page)h(98\).)150 4061 y Ft(0)432 b Fu(\($0\))46 b(Expands)d(to)i(the)g
+(name)g(of)f(the)h(shell)g(or)f(shell)h(script.)83 b(This)44
+b(is)g(set)h(at)h(shell)630 4170 y(initialization.)d(If)27
+b(Bash)h(is)g(in)m(v)m(ok)m(ed)h(with)e(a)i(\014le)e(of)h(commands)g
+(\(see)g(Section)h(3.8)g([Shell)630 4280 y(Scripts],)g(page)g(39\),)h
+Ft($0)e Fu(is)h(set)g(to)g(the)f(name)h(of)f(that)h(\014le.)41
+b(If)28 b(Bash)g(is)h(started)g(with)f(the)630 4390 y
+Ft(-c)i Fu(option)h(\(see)h(Section)g(6.1)f([In)m(v)m(oking)h(Bash],)g
+(page)f(80\),)i(then)d Ft($0)g Fu(is)h(set)g(to)h(the)f(\014rst)630
+4499 y(argumen)m(t)g(after)g(the)g(string)g(to)g(b)s(e)f(executed,)i
+(if)f(one)g(is)f(presen)m(t.)42 b(Otherwise,)31 b(it)g(is)f(set)630
+4609 y(to)h(the)g(\014lename)f(used)g(to)h(in)m(v)m(ok)m(e)h(Bash,)f
+(as)g(giv)m(en)g(b)m(y)f(argumen)m(t)h(zero.)150 4774
+y Ft(_)432 b Fu(\($)p 716 4774 28 4 v 41 w(,)41 b(an)e(underscore.\))67
+b(A)m(t)40 b(shell)f(startup,)i(set)f(to)g(the)f(absolute)h(pathname)f
+(used)f(to)630 4884 y(in)m(v)m(ok)m(e)43 b(the)e(shell)g(or)g(shell)g
+(script)g(b)s(eing)f(executed)i(as)f(passed)g(in)f(the)h(en)m(vironmen)
+m(t)630 4994 y(or)34 b(argumen)m(t)g(list.)52 b(Subsequen)m(tly)-8
+b(,)34 b(expands)f(to)i(the)f(last)h(argumen)m(t)f(to)g(the)g(previous)
+630 5103 y(command,)g(after)f(expansion.)48 b(Also)34
+b(set)g(to)f(the)g(full)g(pathname)g(used)f(to)i(in)m(v)m(ok)m(e)h(eac)
+m(h)630 5213 y(command)29 b(executed)h(and)f(placed)g(in)g(the)h(en)m
+(vironmen)m(t)f(exp)s(orted)g(to)h(that)g(command.)630
+5322 y(When)g(c)m(hec)m(king)i(mail,)g(this)e(parameter)h(holds)f(the)g
+(name)h(of)f(the)h(mail)g(\014le.)p eop end
%%Page: 21 27
-TeXDict begin 21 26 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 21 26 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(21)150 299
-y Fr(3.5)68 b(Shell)45 b(Expansions)150 458 y Ft(Expansion)27
+y Fs(3.5)68 b(Shell)45 b(Expansions)150 458 y Fu(Expansion)27
b(is)i(p)s(erformed)d(on)i(the)g(command)g(line)h(after)f(it)h(has)f(b)
-s(een)f(split)h(in)m(to)i Fs(token)p Ft(s.)38 b(There)28
+s(een)f(split)h(in)m(to)i Ft(token)p Fu(s.)38 b(There)28
b(are)150 568 y(sev)m(en)j(kinds)e(of)i(expansion)f(p)s(erformed:)225
-702 y Fp(\017)60 b Ft(brace)31 b(expansion)225 837 y
-Fp(\017)60 b Ft(tilde)31 b(expansion)225 971 y Fp(\017)60
-b Ft(parameter)31 b(and)f(v)-5 b(ariable)31 b(expansion)225
-1105 y Fp(\017)60 b Ft(command)30 b(substitution)225
-1240 y Fp(\017)60 b Ft(arithmetic)32 b(expansion)225
-1374 y Fp(\017)60 b Ft(w)m(ord)30 b(splitting)225 1508
-y Fp(\017)60 b Ft(\014lename)31 b(expansion)275 1667
+702 y Fq(\017)60 b Fu(brace)31 b(expansion)225 837 y
+Fq(\017)60 b Fu(tilde)31 b(expansion)225 971 y Fq(\017)60
+b Fu(parameter)31 b(and)f(v)-5 b(ariable)31 b(expansion)225
+1105 y Fq(\017)60 b Fu(command)30 b(substitution)225
+1240 y Fq(\017)60 b Fu(arithmetic)32 b(expansion)225
+1374 y Fq(\017)60 b Fu(w)m(ord)30 b(splitting)225 1508
+y Fq(\017)60 b Fu(\014lename)31 b(expansion)275 1667
y(The)24 b(order)h(of)h(expansions)f(is:)39 b(brace)25
b(expansion;)j(tilde)e(expansion,)g(parameter)g(and)f(v)-5
b(ariable)26 b(ex-)150 1777 y(pansion,)j(arithmetic)i(expansion,)f(and)
f(command)g(substitution)g(\(done)g(in)h(a)f(left-to-righ)m(t)k
(fashion\);)150 1887 y(w)m(ord)d(splitting;)h(and)f(\014lename)h
-(expansion.)275 2021 y(On)c(systems)h(that)h(can)g(supp)s(ort)e(it,)i
-(there)g(is)f(an)g(additional)i(expansion)e(a)m(v)-5
-b(ailable:)42 b Fq(pro)s(cess)28 b(sub-)150 2131 y(stitution)p
-Ft(.)42 b(This)30 b(is)g(p)s(erformed)f(at)j(the)e(same)h(time)h(as)e
-(tilde,)i(parameter,)f(v)-5 b(ariable,)32 b(and)e(arithmetic)150
-2240 y(expansion)g(and)g(command)g(substitution.)275
-2374 y(Only)35 b(brace)i(expansion,)h(w)m(ord)e(splitting,)j(and)d
+(expansion.)275 2021 y(On)42 b(systems)h(that)h(can)g(supp)s(ort)e(it,)
+47 b(there)d(is)f(an)h(additional)g(expansion)f(a)m(v)-5
+b(ailable:)69 b Fr(pro)s(cess)150 2131 y(substitution)p
+Fu(.)50 b(This)33 b(is)h(p)s(erformed)e(at)j(the)f(same)g(time)g(as)g
+(tilde,)i(parameter,)f(v)-5 b(ariable,)35 b(and)f(arith-)150
+2240 y(metic)d(expansion)g(and)e(command)i(substitution.)275
+2374 y(Only)k(brace)i(expansion,)h(w)m(ord)e(splitting,)j(and)d
(\014lename)g(expansion)g(can)h(c)m(hange)h(the)e(n)m(um)m(b)s(er)150
2484 y(of)h(w)m(ords)f(of)g(the)h(expansion;)i(other)e(expansions)f
(expand)g(a)h(single)g(w)m(ord)f(to)h(a)g(single)g(w)m(ord.)58
b(The)150 2594 y(only)32 b(exceptions)i(to)f(this)f(are)h(the)f
-(expansions)g(of)h Fs("$@")e Ft(\(see)i(Section)g(3.4.2)h([Sp)s(ecial)f
-(P)m(arameters],)150 2703 y(page)e(20\))h(and)d Fs("${)p
-Fi(name)11 b Fs([@]}")27 b Ft(\(see)k(Section)h(6.7)f([Arra)m(ys],)g
-(page)g(89\).)275 2838 y(After)41 b(all)i(expansions,)h
-Fs(quote)29 b(removal)40 b Ft(\(see)i(Section)h(3.5.9)g([Quote)f(Remo)m
-(v)-5 b(al],)47 b(page)42 b(31\))h(is)150 2947 y(p)s(erformed.)150
-3146 y Fj(3.5.1)63 b(Brace)40 b(Expansion)150 3293 y
-Ft(Brace)32 b(expansion)f(is)f(a)i(mec)m(hanism)f(b)m(y)f(whic)m(h)h
+(expansions)g(of)h Ft("$@")e Fu(\(see)i(Section)g(3.4.2)h([Sp)s(ecial)f
+(P)m(arameters],)150 2703 y(page)e(20\))h(and)d Ft("${)p
+Fj(name)p Ft([@]}")e Fu(\(see)32 b(Section)f(6.7)g([Arra)m(ys],)h(page)
+f(89\).)275 2838 y(After)41 b(all)i(expansions,)h Ft(quote)29
+b(removal)40 b Fu(\(see)i(Section)h(3.5.9)g([Quote)f(Remo)m(v)-5
+b(al],)47 b(page)42 b(31\))h(is)150 2947 y(p)s(erformed.)150
+3146 y Fk(3.5.1)63 b(Brace)40 b(Expansion)150 3293 y
+Fu(Brace)32 b(expansion)f(is)f(a)i(mec)m(hanism)f(b)m(y)f(whic)m(h)h
(arbitrary)f(strings)h(ma)m(y)g(b)s(e)f(generated.)43
b(This)30 b(mec)m(h-)150 3403 y(anism)35 b(is)h(similar)f(to)h
-Fq(\014lename)g(expansion)f Ft(\(see)i(Section)f(3.5.8)h([Filename)g
+Fr(\014lename)g(expansion)f Fu(\(see)i(Section)f(3.5.8)h([Filename)g
(Expansion],)f(page)g(29\),)150 3512 y(but)26 b(the)h(\014lenames)g
(generated)h(need)f(not)g(exist.)40 b(P)m(atterns)28
b(to)f(b)s(e)g(brace)g(expanded)f(tak)m(e)i(the)f(form)g(of)150
-3622 y(an)i(optional)i Fq(pream)m(ble)5 b Ft(,)30 b(follo)m(w)m(ed)i(b)
-m(y)d(either)h(a)g(series)g(of)g(comma-separated)h(strings)e(or)h(a)g
-(sequence)150 3731 y(expression)36 b(b)s(et)m(w)m(een)g(a)g(pair)g(of)g
-(braces,)i(follo)m(w)m(ed)f(b)m(y)f(an)g(optional)h Fq(p)s(ostscript)r
-Ft(.)56 b(The)36 b(pream)m(ble)g(is)150 3841 y(pre\014xed)28
+3622 y(an)j(optional)h Fr(pream)m(ble)p Fu(,)g(follo)m(w)m(ed)g(b)m(y)f
+(either)g(a)h(series)f(of)g(comma-separated)i(strings)d(or)h(a)h
+(sequence)150 3731 y(expression)36 b(b)s(et)m(w)m(een)g(a)h(pair)e(of)i
+(braces,)g(follo)m(w)m(ed)h(b)m(y)e(an)g(optional)h Fr(p)s(ostscript)p
+Fu(.)57 b(The)36 b(pream)m(ble)g(is)150 3841 y(pre\014xed)28
b(to)h(eac)m(h)h(string)f(con)m(tained)h(within)e(the)h(braces,)g(and)g
(the)g(p)s(ostscript)f(is)h(then)f(app)s(ended)f(to)150
3951 y(eac)m(h)32 b(resulting)e(string,)h(expanding)e(left)j(to)f(righ)
m(t.)275 4085 y(Brace)37 b(expansions)f(ma)m(y)h(b)s(e)f(nested.)59
b(The)36 b(results)g(of)h(eac)m(h)g(expanded)f(string)g(are)h(not)g
(sorted;)150 4195 y(left)31 b(to)g(righ)m(t)g(order)f(is)g(preserv)m
-(ed.)41 b(F)-8 b(or)31 b(example,)390 4329 y Fs(bash$)46
+(ed.)41 b(F)-8 b(or)31 b(example,)390 4329 y Ft(bash$)46
b(echo)h(a{d,c,b}e)390 4439 y(ade)g(ace)g(abe)275 4573
-y Ft(A)20 b(sequence)h(expression)g(tak)m(es)h(the)f(form)f
-Fs({)p Fi(x)11 b Fs(..)p Fi(y)g Fs([..)p Fi(incr)g Fs(]})p
-Ft(,)18 b(where)i Fq(x)27 b Ft(and)20 b Fq(y)28 b Ft(are)22
-b(either)f(in)m(tegers)150 4682 y(or)42 b(single)h(c)m(haracters,)j
-(and)c Fq(incr)7 b Ft(,)44 b(an)e(optional)h(incremen)m(t,)j(is)c(an)g
-(in)m(teger.)77 b(When)41 b(in)m(tegers)j(are)150 4792
-y(supplied,)e(the)f(expression)g(expands)f(to)h(eac)m(h)h(n)m(um)m(b)s
-(er)e(b)s(et)m(w)m(een)h Fq(x)47 b Ft(and)40 b Fq(y)8
-b Ft(,)44 b(inclusiv)m(e.)73 b(Supplied)150 4902 y(in)m(tegers)33
-b(ma)m(y)e(b)s(e)g(pre\014xed)f(with)h(`)p Fs(0)p Ft(')h(to)g(force)g
+y Fu(A)23 b(sequence)g(expression)g(tak)m(es)i(the)e(form)g
+Ft({)p Fj(x)p Ft(..)p Fj(y)p Ft([..)p Fj(incr)p Ft(]})p
+Fu(,)e(where)i Fr(x)29 b Fu(and)23 b Fr(y)30 b Fu(are)24
+b(either)g(in)m(tegers)150 4682 y(or)42 b(single)h(c)m(haracters,)48
+b(and)41 b Fr(incr)p Fu(,)46 b(an)c(optional)i(incremen)m(t,)i(is)c(an)
+h(in)m(teger.)78 b(When)42 b(in)m(tegers)i(are)150 4792
+y(supplied,)f(the)f(expression)f(expands)f(to)i(eac)m(h)h(n)m(um)m(b)s
+(er)d(b)s(et)m(w)m(een)i Fr(x)47 b Fu(and)41 b Fr(y)p
+Fu(,)j(inclusiv)m(e.)75 b(Supplied)150 4902 y(in)m(tegers)33
+b(ma)m(y)e(b)s(e)g(pre\014xed)f(with)h(`)p Ft(0)p Fu(')h(to)g(force)g
(eac)m(h)g(term)g(to)g(ha)m(v)m(e)g(the)g(same)g(width.)42
-b(When)31 b(either)150 5011 y Fq(x)43 b Ft(or)36 b Fq(y)44
-b Ft(b)s(egins)36 b(with)g(a)h(zero,)i(the)e(shell)g(attempts)g(to)g
+b(When)31 b(either)150 5011 y Fr(x)43 b Fu(or)36 b Fr(y)44
+b Fu(b)s(egins)36 b(with)g(a)h(zero,)i(the)e(shell)g(attempts)g(to)g
(force)g(all)h(generated)f(terms)g(to)g(con)m(tain)h(the)150
5121 y(same)e(n)m(um)m(b)s(er)e(of)i(digits,)i(zero-padding)d(where)h
(necessary)-8 b(.)57 b(When)35 b(c)m(haracters)i(are)f(supplied,)g(the)
-150 5230 y(expression)24 b(expands)e(to)j(eac)m(h)g(c)m(haracter)g
-(lexicographically)i(b)s(et)m(w)m(een)d Fq(x)30 b Ft(and)23
-b Fq(y)8 b Ft(,)25 b(inclusiv)m(e,)h(using)e(the)150
-5340 y(default)32 b(C)g(lo)s(cale.)48 b(Note)34 b(that)f(b)s(oth)e
-Fq(x)39 b Ft(and)31 b Fq(y)40 b Ft(m)m(ust)32 b(b)s(e)g(of)g(the)h
+150 5230 y(expression)24 b(expands)g(to)h(eac)m(h)h(c)m(haracter)g
+(lexicographically)h(b)s(et)m(w)m(een)e Fr(x)30 b Fu(and)24
+b Fr(y)p Fu(,)i(inclusiv)m(e,)h(using)d(the)150 5340
+y(default)32 b(C)g(lo)s(cale.)48 b(Note)34 b(that)f(b)s(oth)e
+Fr(x)39 b Fu(and)31 b Fr(y)40 b Fu(m)m(ust)32 b(b)s(e)g(of)g(the)h
(same)f(t)m(yp)s(e.)47 b(When)32 b(the)g(incremen)m(t)p
eop end
%%Page: 22 28
-TeXDict begin 22 27 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 22 27 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(22)150 299
y(is)29 b(supplied,)g(it)h(is)f(used)f(as)i(the)f(di\013erence)h(b)s
(et)m(w)m(een)g(eac)m(h)g(term.)41 b(The)29 b(default)g(incremen)m(t)h
(terpretation)g(to)f(the)f(con)m(text)i(of)e(the)g(expansion)g(or)g
(the)h(text)g(b)s(et)m(w)m(een)f(the)h(braces.)150 873
y(T)-8 b(o)37 b(a)m(v)m(oid)g(con\015icts)g(with)f(parameter)h
-(expansion,)g(the)g(string)f(`)p Fs(${)p Ft(')g(is)g(not)g(considered)g
+(expansion,)g(the)g(string)f(`)p Ft(${)p Fu(')g(is)g(not)g(considered)g
(eligible)i(for)150 983 y(brace)31 b(expansion.)275 1119
y(A)e(correctly-formed)i(brace)f(expansion)f(m)m(ust)h(con)m(tain)h
(unquoted)e(op)s(ening)g(and)g(closing)i(braces,)150
1228 y(and)h(at)i(least)g(one)f(unquoted)g(comma)g(or)g(a)h(v)-5
b(alid)33 b(sequence)g(expression.)48 b(An)m(y)33 b(incorrectly)h
(formed)150 1338 y(brace)d(expansion)f(is)g(left)h(unc)m(hanged.)275
-1474 y(A)25 b Fs({)g Ft(or)g(`)p Fs(,)p Ft(')g(ma)m(y)h(b)s(e)f(quoted)
-g(with)g(a)h(bac)m(kslash)f(to)h(prev)m(en)m(t)g(its)g(b)s(eing)f
-(considered)g(part)g(of)g(a)h(brace)150 1583 y(expression.)51
+1474 y(A)25 b Fi({)h Fu(or)f(`)p Ft(,)p Fu(')g(ma)m(y)h(b)s(e)f(quoted)
+h(with)f(a)g(bac)m(kslash)h(to)g(prev)m(en)m(t)g(its)g(b)s(eing)f
+(considered)g(part)g(of)h(a)g(brace)150 1583 y(expression.)51
b(T)-8 b(o)34 b(a)m(v)m(oid)i(con\015icts)e(with)g(parameter)g
-(expansion,)h(the)f(string)g(`)p Fs(${)p Ft(')g(is)g(not)g(considered)
+(expansion,)h(the)f(string)g(`)p Ft(${)p Fu(')g(is)g(not)g(considered)
150 1693 y(eligible)e(for)e(brace)h(expansion.)275 1829
y(This)f(construct)h(is)g(t)m(ypically)i(used)d(as)h(shorthand)f(when)g
(the)h(common)g(pre\014x)f(of)h(the)g(strings)g(to)150
1939 y(b)s(e)f(generated)h(is)g(longer)g(than)f(in)g(the)g(ab)s(o)m(v)m
-(e)i(example:)390 2074 y Fs(mkdir)46 b(/usr/local/src/bash/{old,n)o
-(ew,)o(dist)o(,bug)o(s})275 2210 y Ft(or)390 2346 y Fs(chown)g(root)h
+(e)i(example:)390 2074 y Ft(mkdir)46 b(/usr/local/src/bash/{old,n)o
+(ew,)o(dist)o(,bug)o(s})275 2210 y Fu(or)390 2346 y Ft(chown)g(root)h
(/usr/{ucb/{ex,edit},lib/)o({ex?)o(.?*,)o(how)o(_ex})o(})150
-2547 y Fj(3.5.2)63 b(Tilde)41 b(Expansion)150 2694 y
-Ft(If)29 b(a)h(w)m(ord)g(b)s(egins)f(with)g(an)h(unquoted)f(tilde)h(c)m
-(haracter)h(\(`)p Fs(~)p Ft('\),)g(all)g(of)f(the)g(c)m(haracters)h(up)
-d(to)j(the)f(\014rst)150 2804 y(unquoted)23 b(slash)h(\(or)h(all)g(c)m
-(haracters,)i(if)d(there)g(is)h(no)f(unquoted)f(slash\))h(are)h
-(considered)f(a)g Fq(tilde-pre\014x)6 b Ft(.)150 2913
-y(If)38 b(none)g(of)g(the)h(c)m(haracters)g(in)f(the)h(tilde-pre\014x)f
-(are)h(quoted,)h(the)f(c)m(haracters)h(in)d(the)i(tilde-pre\014x)150
-3023 y(follo)m(wing)28 b(the)f(tilde)g(are)g(treated)h(as)f(a)g(p)s
-(ossible)f Fq(login)i(name)5 b Ft(.)40 b(If)26 b(this)g(login)i(name)f
-(is)f(the)h(n)m(ull)g(string,)150 3132 y(the)35 b(tilde)g(is)g
+2547 y Fk(3.5.2)63 b(Tilde)41 b(Expansion)150 2694 y
+Fu(If)29 b(a)h(w)m(ord)g(b)s(egins)f(with)g(an)h(unquoted)f(tilde)h(c)m
+(haracter)h(\(`)p Ft(~)p Fu('\),)g(all)g(of)f(the)g(c)m(haracters)h(up)
+d(to)j(the)f(\014rst)150 2804 y(unquoted)24 b(slash)g(\(or)h(all)h(c)m
+(haracters,)h(if)e(there)g(is)f(no)h(unquoted)e(slash\))i(are)g
+(considered)g(a)g Fr(tilde-pre\014x)p Fu(.)150 2913 y(If)38
+b(none)g(of)g(the)h(c)m(haracters)g(in)f(the)h(tilde-pre\014x)f(are)h
+(quoted,)h(the)f(c)m(haracters)h(in)d(the)i(tilde-pre\014x)150
+3023 y(follo)m(wing)28 b(the)g(tilde)f(are)h(treated)g(as)f(a)g(p)s
+(ossible)g Fr(login)h(name)p Fu(.)39 b(If)27 b(this)g(login)h(name)f
+(is)g(the)g(n)m(ull)g(string,)150 3132 y(the)35 b(tilde)g(is)g
(replaced)g(with)f(the)h(v)-5 b(alue)35 b(of)g(the)g
-Fs(HOME)e Ft(shell)i(v)-5 b(ariable.)54 b(If)34 b Fs(HOME)g
-Ft(is)h(unset,)g(the)g(home)150 3242 y(directory)e(of)g(the)f(user)g
+Ft(HOME)e Fu(shell)i(v)-5 b(ariable.)54 b(If)34 b Ft(HOME)g
+Fu(is)h(unset,)g(the)g(home)150 3242 y(directory)e(of)g(the)f(user)g
(executing)i(the)e(shell)h(is)f(substituted)g(instead.)47
b(Otherwise,)33 b(the)g(tilde-pre\014x)150 3352 y(is)d(replaced)h(with)
f(the)h(home)f(directory)h(asso)s(ciated)h(with)e(the)h(sp)s(eci\014ed)
e(login)j(name.)275 3487 y(If)g(the)h(tilde-pre\014x)f(is)h(`)p
-Fs(~+)p Ft(',)g(the)g(v)-5 b(alue)33 b(of)g(the)g(shell)g(v)-5
-b(ariable)34 b Fs(PWD)d Ft(replaces)j(the)f(tilde-pre\014x.)47
-b(If)150 3597 y(the)31 b(tilde-pre\014x)f(is)g(`)p Fs(~-)p
-Ft(',)h(the)f(v)-5 b(alue)31 b(of)g(the)f(shell)h(v)-5
-b(ariable)31 b Fs(OLDPWD)p Ft(,)e(if)h(it)h(is)g(set,)g(is)f
-(substituted.)275 3733 y(If)e(the)i(c)m(haracters)g(follo)m(wing)h(the)
-e(tilde)h(in)f(the)g(tilde-pre\014x)h(consist)f(of)h(a)f(n)m(um)m(b)s
-(er)f Fq(N)10 b Ft(,)30 b(optionally)150 3843 y(pre\014xed)22
-b(b)m(y)h(a)h(`)p Fs(+)p Ft(')f(or)h(a)f(`)p Fs(-)p Ft(',)j(the)d
+Ft(~+)p Fu(',)g(the)g(v)-5 b(alue)33 b(of)g(the)g(shell)g(v)-5
+b(ariable)34 b Ft(PWD)d Fu(replaces)j(the)f(tilde-pre\014x.)47
+b(If)150 3597 y(the)31 b(tilde-pre\014x)f(is)g(`)p Ft(~-)p
+Fu(',)h(the)f(v)-5 b(alue)31 b(of)g(the)f(shell)h(v)-5
+b(ariable)31 b Ft(OLDPWD)p Fu(,)e(if)h(it)h(is)g(set,)g(is)f
+(substituted.)275 3733 y(If)f(the)h(c)m(haracters)h(follo)m(wing)h(the)
+e(tilde)g(in)g(the)g(tilde-pre\014x)g(consist)g(of)g(a)h(n)m(um)m(b)s
+(er)d Fr(N)p Fu(,)j(optionally)150 3843 y(pre\014xed)22
+b(b)m(y)h(a)h(`)p Ft(+)p Fu(')f(or)h(a)f(`)p Ft(-)p Fu(',)j(the)d
(tilde-pre\014x)g(is)h(replaced)f(with)g(the)h(corresp)s(onding)e
(elemen)m(t)j(from)e(the)150 3952 y(directory)36 b(stac)m(k,)i(as)e(it)
g(w)m(ould)f(b)s(e)g(displa)m(y)m(ed)h(b)m(y)g(the)f
-Fs(dirs)g Ft(builtin)g(in)m(v)m(ok)m(ed)i(with)e(the)g(c)m(haracters)
+Ft(dirs)g Fu(builtin)g(in)m(v)m(ok)m(ed)i(with)e(the)g(c)m(haracters)
150 4062 y(follo)m(wing)40 b(tilde)f(in)g(the)f(tilde-pre\014x)h(as)g
(an)f(argumen)m(t)h(\(see)h(Section)f(6.8)h([The)e(Directory)i(Stac)m
-(k],)150 4171 y(page)c(91\).)57 b(If)35 b(the)g(tilde-pre\014x,)i(sans)
+(k],)150 4171 y(page)c(90\).)57 b(If)35 b(the)g(tilde-pre\014x,)i(sans)
e(the)h(tilde,)h(consists)f(of)g(a)f(n)m(um)m(b)s(er)f(without)i(a)f
-(leading)h(`)p Fs(+)p Ft(')g(or)150 4281 y(`)p Fs(-)p
-Ft(',)31 b(`)p Fs(+)p Ft(')f(is)h(assumed.)275 4417 y(If)e(the)i(login)
+(leading)h(`)p Ft(+)p Fu(')g(or)150 4281 y(`)p Ft(-)p
+Fu(',)31 b(`)p Ft(+)p Fu(')f(is)h(assumed.)275 4417 y(If)e(the)i(login)
g(name)g(is)f(in)m(v)-5 b(alid,)31 b(or)g(the)f(tilde)h(expansion)f
(fails,)i(the)e(w)m(ord)g(is)h(left)g(unc)m(hanged.)275
4553 y(Eac)m(h)38 b(v)-5 b(ariable)38 b(assignmen)m(t)h(is)e(c)m(hec)m
(k)m(ed)j(for)d(unquoted)g(tilde-pre\014xes)h(immediately)g(follo)m
-(wing)150 4662 y(a)d(`)p Fs(:)p Ft(')g(or)g(the)g(\014rst)f(`)p
-Fs(=)p Ft('.)54 b(In)34 b(these)h(cases,)i(tilde)e(expansion)g(is)g
+(wing)150 4662 y(a)d(`)p Ft(:)p Fu(')g(or)g(the)g(\014rst)f(`)p
+Ft(=)p Fu('.)54 b(In)34 b(these)h(cases,)i(tilde)e(expansion)g(is)g
(also)h(p)s(erformed.)52 b(Consequen)m(tly)-8 b(,)37
b(one)150 4772 y(ma)m(y)29 b(use)e(\014lenames)h(with)g(tildes)g(in)g
-(assignmen)m(ts)g(to)h Fs(PATH)p Ft(,)f Fs(MAILPATH)p
-Ft(,)e(and)h Fs(CDPATH)p Ft(,)g(and)h(the)g(shell)150
+(assignmen)m(ts)g(to)h Ft(PATH)p Fu(,)f Ft(MAILPATH)p
+Fu(,)e(and)h Ft(CDPATH)p Fu(,)g(and)h(the)g(shell)150
4882 y(assigns)j(the)f(expanded)g(v)-5 b(alue.)275 5018
y(The)29 b(follo)m(wing)j(table)g(sho)m(ws)e(ho)m(w)g(Bash)h(treats)g
-(unquoted)e(tilde-pre\014xes:)150 5179 y Fs(~)432 b Ft(The)30
-b(v)-5 b(alue)31 b(of)f Fs($HOME)150 5340 y(~/foo)240
-b Ft(`)p Fs($HOME/foo)p Ft(')p eop end
+(unquoted)e(tilde-pre\014xes:)150 5179 y Ft(~)432 b Fu(The)30
+b(v)-5 b(alue)31 b(of)f Ft($HOME)150 5340 y(~/foo)240
+b($HOME/foo)p eop end
%%Page: 23 29
-TeXDict begin 23 28 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 23 28 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(23)150 299
-y Fs(~fred/foo)630 408 y Ft(The)30 b(sub)s(directory)f
-Fs(foo)h Ft(of)g(the)h(home)f(directory)h(of)g(the)f(user)g
-Fs(fred)150 572 y(~+/foo)192 b Ft(`)p Fs($PWD/foo)p Ft(')150
-736 y Fs(~-/foo)g Ft(`)p Fs(${OLDPWD-'~-'}/foo)p Ft(')150
-899 y Fs(~)p Fi(N)384 b Ft(The)30 b(string)g(that)h(w)m(ould)f(b)s(e)g
-(displa)m(y)m(ed)h(b)m(y)f(`)p Fs(dirs)g(+)p Fi(N)11
-b Ft(')150 1063 y Fs(~+)p Fi(N)336 b Ft(The)30 b(string)g(that)h(w)m
-(ould)f(b)s(e)g(displa)m(y)m(ed)h(b)m(y)f(`)p Fs(dirs)g(+)p
-Fi(N)11 b Ft(')150 1227 y Fs(~-)p Fi(N)336 b Ft(The)30
+y Ft(~fred/foo)630 408 y Fu(The)30 b(sub)s(directory)f
+Ft(foo)h Fu(of)g(the)h(home)f(directory)h(of)g(the)f(user)g
+Ft(fred)150 572 y(~+/foo)192 b($PWD/foo)150 736 y(~-/foo)g
+(${OLDPWD-'~-'}/foo)150 899 y(~)p Fj(N)384 b Fu(The)30
b(string)g(that)h(w)m(ould)f(b)s(e)g(displa)m(y)m(ed)h(b)m(y)f(`)p
-Fs(dirs)g(-)p Fi(N)11 b Ft(')150 1430 y Fj(3.5.3)63 b(Shell)41
-b(P)m(arameter)f(Expansion)150 1577 y Ft(The)g(`)p Fs($)p
-Ft(')h(c)m(haracter)i(in)m(tro)s(duces)d(parameter)h(expansion,)j
-(command)d(substitution,)i(or)e(arithmetic)150 1687 y(expansion.)d(The)
-22 b(parameter)h(name)f(or)g(sym)m(b)s(ol)h(to)g(b)s(e)e(expanded)h(ma)
-m(y)h(b)s(e)f(enclosed)h(in)f(braces,)i(whic)m(h)150
-1796 y(are)31 b(optional)g(but)f(serv)m(e)h(to)h(protect)f(the)g(v)-5
-b(ariable)31 b(to)g(b)s(e)f(expanded)g(from)g(c)m(haracters)i
+Ft(dirs)g(+)p Fj(N)p Fu(')150 1063 y Ft(~+)p Fj(N)336
+b Fu(The)30 b(string)g(that)h(w)m(ould)f(b)s(e)g(displa)m(y)m(ed)h(b)m
+(y)f(`)p Ft(dirs)g(+)p Fj(N)p Fu(')150 1227 y Ft(~-)p
+Fj(N)336 b Fu(The)30 b(string)g(that)h(w)m(ould)f(b)s(e)g(displa)m(y)m
+(ed)h(b)m(y)f(`)p Ft(dirs)g(-)p Fj(N)p Fu(')150 1430
+y Fk(3.5.3)63 b(Shell)41 b(P)m(arameter)f(Expansion)150
+1577 y Fu(The)g(`)p Ft($)p Fu(')h(c)m(haracter)i(in)m(tro)s(duces)d
+(parameter)h(expansion,)j(command)d(substitution,)i(or)e(arithmetic)150
+1687 y(expansion.)d(The)22 b(parameter)h(name)f(or)g(sym)m(b)s(ol)h(to)
+g(b)s(e)e(expanded)h(ma)m(y)h(b)s(e)f(enclosed)h(in)f(braces,)i(whic)m
+(h)150 1796 y(are)31 b(optional)g(but)f(serv)m(e)h(to)h(protect)f(the)g
+(v)-5 b(ariable)31 b(to)g(b)s(e)f(expanded)g(from)g(c)m(haracters)i
(immediately)150 1906 y(follo)m(wing)g(it)f(whic)m(h)f(could)g(b)s(e)g
(in)m(terpreted)h(as)f(part)h(of)f(the)h(name.)275 2045
y(When)44 b(braces)i(are)f(used,)j(the)e(matc)m(hing)g(ending)f(brace)g
-(is)g(the)g(\014rst)g(`)p Fs(})p Ft(')g(not)g(escap)s(ed)h(b)m(y)f(a)
+(is)g(the)g(\014rst)g(`)p Ft(})p Fu(')g(not)g(escap)s(ed)h(b)m(y)f(a)
150 2154 y(bac)m(kslash)40 b(or)f(within)g(a)g(quoted)g(string,)j(and)c
(not)i(within)e(an)h(em)m(b)s(edded)f(arithmetic)j(expansion,)150
2264 y(command)30 b(substitution,)g(or)h(parameter)g(expansion.)275
-2403 y(The)40 b(basic)h(form)g(of)g(parameter)h(expansion)e(is)h($)p
-Fs({)p Fq(parameter)7 b Fs(})p Ft(.)73 b(The)40 b(v)-5
-b(alue)42 b(of)f Fq(parameter)48 b Ft(is)150 2512 y(substituted.)43
-b(The)31 b Fq(parameter)39 b Ft(is)31 b(a)h(shell)f(parameter)h(as)g
+2403 y(The)40 b(basic)i(form)f(of)g(parameter)h(expansion)f(is)h($)p
+Fi({)p Fr(parameter)7 b Fi(})p Fu(.)74 b(The)41 b(v)-5
+b(alue)42 b(of)g Fr(parameter)48 b Fu(is)150 2512 y(substituted.)43
+b(The)31 b Fr(parameter)39 b Fu(is)31 b(a)h(shell)f(parameter)h(as)g
(describ)s(ed)e(ab)s(o)m(v)m(e)j(\(see)f(Section)g(3.4)h([Shell)150
2622 y(P)m(arameters],)e(page)f(18\))h(or)e(an)g(arra)m(y)h(reference)f
(\(see)i(Section)f(6.7)g([Arra)m(ys],)g(page)g(89\).)42
b(The)29 b(braces)150 2731 y(are)j(required)g(when)f
-Fq(parameter)39 b Ft(is)32 b(a)h(p)s(ositional)f(parameter)h(with)f
-(more)g(than)g(one)g(digit,)i(or)e(when)150 2841 y Fq(parameter)37
-b Ft(is)31 b(follo)m(w)m(ed)h(b)m(y)e(a)h(c)m(haracter)h(that)f(is)f
+Fr(parameter)39 b Fu(is)32 b(a)h(p)s(ositional)f(parameter)h(with)f
+(more)g(than)g(one)g(digit,)i(or)e(when)150 2841 y Fr(parameter)37
+b Fu(is)31 b(follo)m(w)m(ed)h(b)m(y)e(a)h(c)m(haracter)h(that)f(is)f
(not)h(to)g(b)s(e)f(in)m(terpreted)g(as)h(part)f(of)h(its)f(name.)275
-2980 y(If)36 b(the)h(\014rst)f(c)m(haracter)i(of)f Fq(parameter)44
-b Ft(is)37 b(an)f(exclamation)j(p)s(oin)m(t)e(\(!\),)i(it)f(in)m(tro)s
-(duces)e(a)h(lev)m(el)i(of)150 3089 y(v)-5 b(ariable)31
-b(indirection.)41 b(Bash)30 b(uses)f(the)h(v)-5 b(alue)31
-b(of)f(the)g(v)-5 b(ariable)30 b(formed)g(from)f(the)h(rest)g(of)g
-Fq(parameter)150 3199 y Ft(as)c(the)g(name)g(of)g(the)h(v)-5
+2980 y(If)36 b(the)h(\014rst)f(c)m(haracter)i(of)f Fr(parameter)44
+b Fu(is)37 b(an)f(exclamation)j(p)s(oin)m(t)e(\(!\),)i(it)f(in)m(tro)s
+(duces)e(a)h(lev)m(el)i(of)150 3089 y(v)-5 b(ariable)30
+b(indirection.)41 b(Bash)30 b(uses)f(the)g(v)-5 b(alue)30
+b(of)g(the)f(v)-5 b(ariable)30 b(formed)f(from)g(the)h(rest)f(of)h
+Fr(parameter)150 3199 y Fu(as)c(the)g(name)g(of)g(the)h(v)-5
b(ariable;)28 b(this)e(v)-5 b(ariable)27 b(is)f(then)f(expanded)g(and)h
(that)g(v)-5 b(alue)27 b(is)f(used)f(in)h(the)g(rest)150
3308 y(of)34 b(the)f(substitution,)i(rather)e(than)g(the)h(v)-5
-b(alue)34 b(of)g Fq(parameter)40 b Ft(itself.)51 b(This)33
-b(is)g(kno)m(wn)g(as)h Fs(indirect)150 3418 y(expansion)p
-Ft(.)81 b(The)44 b(exceptions)i(to)f(this)g(are)g(the)g(expansions)f
-(of)h($)p Fs({)p Ft(!)p Fq(pre\014x)6 b Ft(*)p Fs(})44
-b Ft(and)g($)p Fs({)p Ft(!)p Fq(name)5 b Ft([)p Fs(@)p
-Ft(])p Fs(})150 3528 y Ft(describ)s(ed)28 b(b)s(elo)m(w.)41
-b(The)28 b(exclamation)j(p)s(oin)m(t)f(m)m(ust)f(immediately)h(follo)m
-(w)g(the)g(left)f(brace)h(in)f(order)f(to)150 3637 y(in)m(tro)s(duce)i
+b(alue)34 b(of)g Fr(parameter)40 b Fu(itself.)51 b(This)33
+b(is)g(kno)m(wn)g(as)h Ft(indirect)150 3418 y(expansion)p
+Fu(.)78 b(The)43 b(exceptions)i(to)f(this)f(are)h(the)g(expansions)g
+(of)f($)p Fi({)p Fu(!)p Fr(pre\014x)6 b Fu(*)p Fi(})45
+b Fu(and)e($)p Fi({)p Fu(!)p Fr(name)5 b Fu([@])p Fi(})150
+3528 y Fu(describ)s(ed)28 b(b)s(elo)m(w.)41 b(The)28
+b(exclamation)j(p)s(oin)m(t)f(m)m(ust)f(immediately)h(follo)m(w)g(the)g
+(left)f(brace)h(in)f(order)f(to)150 3637 y(in)m(tro)s(duce)i
(indirection.)275 3776 y(In)39 b(eac)m(h)i(of)g(the)f(cases)h(b)s(elo)m
-(w,)i Fq(w)m(ord)h Ft(is)c(sub)5 b(ject)40 b(to)h(tilde)f(expansion,)j
+(w,)i Fr(w)m(ord)h Fu(is)c(sub)5 b(ject)40 b(to)h(tilde)f(expansion,)j
(parameter)e(expansion,)150 3886 y(command)30 b(substitution,)g(and)g
(arithmetic)i(expansion.)275 4024 y(When)h(not)h(p)s(erforming)e
(substring)h(expansion,)h(using)g(the)f(form)h(describ)s(ed)e(b)s(elo)m
-(w)i(\(e.g.,)i(`)p Fs(:-)p Ft('\),)150 4134 y(Bash)d(tests)h(for)e(a)i
+(w)i(\(e.g.,)i(`)p Ft(:-)p Fu('\),)150 4134 y(Bash)d(tests)h(for)e(a)i
(parameter)f(that)h(is)e(unset)h(or)g(n)m(ull.)48 b(Omitting)33
b(the)h(colon)f(results)g(in)g(a)g(test)h(only)150 4243
y(for)c(a)i(parameter)f(that)g(is)g(unset.)41 b(Put)31
b(another)f(w)m(a)m(y)-8 b(,)33 b(if)e(the)f(colon)i(is)f(included,)f
(the)h(op)s(erator)g(tests)150 4353 y(for)36 b(b)s(oth)g
-Fq(parameter)7 b Ft('s)37 b(existence)h(and)e(that)i(its)f(v)-5
+Fr(parameter)7 b Fu('s)37 b(existence)h(and)e(that)i(its)f(v)-5
b(alue)37 b(is)g(not)f(n)m(ull;)k(if)d(the)g(colon)h(is)e(omitted,)k
(the)150 4463 y(op)s(erator)31 b(tests)g(only)f(for)g(existence.)150
-4628 y Fs(${)p Fi(parameter)11 b Fs(:)p Fp(\000)p Fi(word)g
-Fs(})630 4738 y Ft(If)30 b Fq(parameter)37 b Ft(is)30
-b(unset)g(or)h(n)m(ull,)f(the)h(expansion)f(of)g Fq(w)m(ord)k
-Ft(is)c(substituted.)40 b(Otherwise,)630 4848 y(the)31
-b(v)-5 b(alue)30 b(of)h Fq(parameter)37 b Ft(is)31 b(substituted.)150
-5011 y Fs(${)p Fi(parameter)11 b Fs(:=)p Fi(word)g Fs(})630
-5121 y Ft(If)32 b Fq(parameter)40 b Ft(is)32 b(unset)g(or)h(n)m(ull,)g
-(the)f(expansion)h(of)f Fq(w)m(ord)k Ft(is)d(assigned)f(to)i
-Fq(parameter)7 b Ft(.)630 5230 y(The)30 b(v)-5 b(alue)32
-b(of)f Fq(parameter)38 b Ft(is)31 b(then)g(substituted.)42
-b(P)m(ositional)33 b(parameters)e(and)f(sp)s(ecial)630
-5340 y(parameters)h(ma)m(y)g(not)f(b)s(e)g(assigned)h(to)g(in)f(this)g
-(w)m(a)m(y)-8 b(.)p eop end
+4628 y Ft(${)p Fj(parameter)p Ft(:)p Fq(\000)p Fj(word)p
+Ft(})630 4738 y Fu(If)g Fr(parameter)37 b Fu(is)30 b(unset)g(or)h(n)m
+(ull,)f(the)h(expansion)f(of)g Fr(w)m(ord)k Fu(is)c(substituted.)40
+b(Otherwise,)630 4848 y(the)31 b(v)-5 b(alue)30 b(of)h
+Fr(parameter)37 b Fu(is)31 b(substituted.)150 5011 y
+Ft(${)p Fj(parameter)p Ft(:=)p Fj(word)p Ft(})630 5121
+y Fu(If)i Fr(parameter)40 b Fu(is)33 b(unset)f(or)h(n)m(ull,)h(the)f
+(expansion)g(of)g Fr(w)m(ord)j Fu(is)d(assigned)g(to)h
+Fr(parameter)p Fu(.)630 5230 y(The)c(v)-5 b(alue)32 b(of)f
+Fr(parameter)38 b Fu(is)31 b(then)g(substituted.)42 b(P)m(ositional)33
+b(parameters)e(and)f(sp)s(ecial)630 5340 y(parameters)h(ma)m(y)g(not)f
+(b)s(e)g(assigned)h(to)g(in)f(this)g(w)m(a)m(y)-8 b(.)p
+eop end
%%Page: 24 30
-TeXDict begin 24 29 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 24 29 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(24)150 299
-y Fs(${)p Fi(parameter)11 b Fs(:?)p Fi(word)g Fs(})630
-408 y Ft(If)26 b Fq(parameter)33 b Ft(is)26 b(n)m(ull)g(or)g(unset,)h
-(the)f(expansion)g(of)g Fq(w)m(ord)k Ft(\(or)c(a)h(message)g(to)g(that)
-f(e\013ect)630 518 y(if)i Fq(w)m(ord)j Ft(is)d(not)g(presen)m(t\))h(is)
-f(written)g(to)h(the)f(standard)f(error)h(and)f(the)h(shell,)h(if)f(it)
-h(is)f(not)630 628 y(in)m(teractiv)m(e,)33 b(exits.)42
-b(Otherwise,)30 b(the)h(v)-5 b(alue)31 b(of)f Fq(parameter)38
-b Ft(is)30 b(substituted.)150 800 y Fs(${)p Fi(parameter)11
-b Fs(:+)p Fi(word)g Fs(})630 909 y Ft(If)35 b Fq(parameter)42
-b Ft(is)36 b(n)m(ull)f(or)h(unset,)g(nothing)g(is)f(substituted,)i
-(otherwise)e(the)h(expansion)630 1019 y(of)31 b Fq(w)m(ord)i
-Ft(is)e(substituted.)150 1191 y Fs(${)p Fi(parameter)11
-b Fs(:)p Fi(offset)g Fs(})150 1301 y(${)p Fi(parameter)g
-Fs(:)p Fi(offset)g Fs(:)p Fi(le)o(ngt)o(h)g Fs(})630
-1410 y Ft(This)30 b(is)h(referred)f(to)h(as)g(Substring)f(Expansion.)41
-b(It)31 b(expands)f(to)h(up)f(to)h Fq(length)g Ft(c)m(harac-)630
-1520 y(ters)k(of)g(the)g(v)-5 b(alue)35 b(of)h Fq(parameter)41
-b Ft(starting)36 b(at)g(the)f(c)m(haracter)h(sp)s(eci\014ed)e(b)m(y)h
-Fq(o\013set)r Ft(.)55 b(If)630 1630 y Fq(parameter)32
-b Ft(is)26 b(`)p Fs(@)p Ft(',)g(an)f(indexed)g(arra)m(y)h(subscripted)e
-(b)m(y)h(`)p Fs(@)p Ft(')g(or)h(`)p Fs(*)p Ft(',)g(or)g(an)f(asso)s
+y Ft(${)p Fj(parameter)p Ft(:?)p Fj(word)p Ft(})630 408
+y Fu(If)26 b Fr(parameter)33 b Fu(is)26 b(n)m(ull)g(or)g(unset,)h(the)f
+(expansion)g(of)g Fr(w)m(ord)k Fu(\(or)c(a)h(message)g(to)g(that)f
+(e\013ect)630 518 y(if)i Fr(w)m(ord)j Fu(is)d(not)g(presen)m(t\))h(is)f
+(written)g(to)h(the)f(standard)f(error)h(and)f(the)h(shell,)h(if)f(it)h
+(is)f(not)630 628 y(in)m(teractiv)m(e,)33 b(exits.)42
+b(Otherwise,)30 b(the)h(v)-5 b(alue)31 b(of)f Fr(parameter)38
+b Fu(is)30 b(substituted.)150 800 y Ft(${)p Fj(parameter)p
+Ft(:+)p Fj(word)p Ft(})630 909 y Fu(If)35 b Fr(parameter)42
+b Fu(is)36 b(n)m(ull)f(or)h(unset,)g(nothing)g(is)f(substituted,)i
+(otherwise)e(the)h(expansion)630 1019 y(of)31 b Fr(w)m(ord)i
+Fu(is)e(substituted.)150 1191 y Ft(${)p Fj(parameter)p
+Ft(:)p Fj(offset)p Ft(})150 1301 y(${)p Fj(parameter)p
+Ft(:)p Fj(offset)p Ft(:)p Fj(lengt)o(h)p Ft(})630 1410
+y Fu(This)f(is)h(referred)f(to)h(as)g(Substring)f(Expansion.)41
+b(It)31 b(expands)f(to)h(up)f(to)h Fr(length)g Fu(c)m(harac-)630
+1520 y(ters)k(of)g(the)h(v)-5 b(alue)35 b(of)g Fr(parameter)42
+b Fu(starting)36 b(at)g(the)f(c)m(haracter)i(sp)s(eci\014ed)d(b)m(y)h
+Fr(o\013set)p Fu(.)55 b(If)630 1630 y Fr(parameter)32
+b Fu(is)26 b(`)p Ft(@)p Fu(',)g(an)f(indexed)g(arra)m(y)h(subscripted)e
+(b)m(y)h(`)p Ft(@)p Fu(')g(or)h(`)p Ft(*)p Fu(',)g(or)g(an)f(asso)s
(ciativ)m(e)j(ar-)630 1739 y(ra)m(y)g(name,)h(the)f(results)g(di\013er)
-g(as)g(describ)s(ed)f(b)s(elo)m(w.)40 b(If)28 b Fq(length)g
-Ft(is)g(omitted,)i(it)f(expands)630 1849 y(to)e(the)g(substring)f(of)g
-(the)h(v)-5 b(alue)27 b(of)g Fq(parameter)33 b Ft(starting)28
+g(as)g(describ)s(ed)f(b)s(elo)m(w.)40 b(If)28 b Fr(length)g
+Fu(is)g(omitted,)i(it)f(expands)630 1849 y(to)e(the)g(substring)f(of)g
+(the)h(v)-5 b(alue)27 b(of)g Fr(parameter)33 b Fu(starting)28
b(at)f(the)g(c)m(haracter)h(sp)s(eci\014ed)e(b)m(y)630
-1958 y Fq(o\013set)37 b Ft(and)d(extending)g(to)h(the)f(end)g(of)g(the)
-g(v)-5 b(alue.)53 b Fq(length)34 b Ft(and)g Fq(o\013set)j
-Ft(are)e(arithmetic)630 2068 y(expressions)30 b(\(see)h(Section)g(6.5)h
+1958 y Fr(o\013set)37 b Fu(and)d(extending)g(to)h(the)f(end)g(of)g(the)
+g(v)-5 b(alue.)53 b Fr(length)34 b Fu(and)g Fr(o\013set)j
+Fu(are)e(arithmetic)630 2068 y(expressions)30 b(\(see)h(Section)g(6.5)h
([Shell)e(Arithmetic],)i(page)f(87\).)630 2209 y(If)39
-b Fq(o\013set)k Ft(ev)-5 b(aluates)41 b(to)f(a)g(n)m(um)m(b)s(er)f
+b Fr(o\013set)k Fu(ev)-5 b(aluates)41 b(to)f(a)g(n)m(um)m(b)s(er)f
(less)h(than)f(zero,)k(the)d(v)-5 b(alue)40 b(is)g(used)e(as)i(an)g
-(o\013set)630 2318 y(in)33 b(c)m(haracters)i(from)d(the)i(end)e(of)i
-(the)f(v)-5 b(alue)34 b(of)f Fq(parameter)7 b Ft(.)49
-b(If)33 b Fq(length)h Ft(ev)-5 b(aluates)35 b(to)f(a)630
-2428 y(n)m(um)m(b)s(er)23 b(less)h(than)g(zero,)j(it)d(is)h(in)m
-(terpreted)f(as)g(an)h(o\013set)g(in)f(c)m(haracters)h(from)f(the)g
-(end)g(of)630 2538 y(the)31 b(v)-5 b(alue)31 b(of)g Fq(parameter)38
-b Ft(rather)30 b(than)h(a)g(n)m(um)m(b)s(er)f(of)g(c)m(haracters,)j
+(o\013set)630 2318 y(in)33 b(c)m(haracters)i(from)f(the)f(end)g(of)h
+(the)g(v)-5 b(alue)34 b(of)g Fr(parameter)p Fu(.)51 b(If)33
+b Fr(length)h Fu(ev)-5 b(aluates)35 b(to)g(a)630 2428
+y(n)m(um)m(b)s(er)23 b(less)h(than)g(zero,)j(it)d(is)h(in)m(terpreted)f
+(as)g(an)h(o\013set)g(in)f(c)m(haracters)h(from)f(the)g(end)g(of)630
+2538 y(the)31 b(v)-5 b(alue)31 b(of)g Fr(parameter)38
+b Fu(rather)30 b(than)h(a)g(n)m(um)m(b)s(er)f(of)g(c)m(haracters,)j
(and)d(the)h(expansion)630 2647 y(is)39 b(the)g(c)m(haracters)i(b)s(et)
-m(w)m(een)f Fq(o\013set)i Ft(and)c(that)i(result.)67
+m(w)m(een)f Fr(o\013set)i Fu(and)c(that)i(result.)67
b(Note)40 b(that)g(a)g(negativ)m(e)h(o\013set)630 2757
y(m)m(ust)27 b(b)s(e)g(separated)g(from)g(the)g(colon)i(b)m(y)e(at)h
(least)g(one)f(space)h(to)g(a)m(v)m(oid)h(b)s(eing)e(confused)630
-2866 y(with)j(the)h(`)p Fs(:-)p Ft(')f(expansion.)630
+2866 y(with)j(the)h(`)p Ft(:-)p Fu(')f(expansion.)630
3007 y(Here)43 b(are)g(some)f(examples)h(illustrating)g(substring)f
(expansion)g(on)g(parameters)h(and)630 3117 y(subscripted)29
-b(arra)m(ys:)630 3258 y Fs($)47 b(string=01234567890abcdefgh)630
+b(arra)m(ys:)630 3258 y Ft($)47 b(string=01234567890abcdefgh)630
3367 y($)g(echo)g(${string:7})630 3477 y(7890abcdefgh)630
3587 y($)g(echo)g(${string:7:0})630 3806 y($)g(echo)g(${string:7:2})630
3915 y(78)630 4025 y($)g(echo)g(${string:7:-2})630 4134
5121 y($)i(set)g(--)h(01234567890abcdefgh)630 5230 y($)f(echo)g(${1:7})
630 5340 y(7890abcdefgh)p eop end
%%Page: 25 31
-TeXDict begin 25 30 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 25 30 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(25)630 299
-y Fs($)47 b(echo)g(${1:7:0})630 518 y($)g(echo)g(${1:7:2})630
+y Ft($)47 b(echo)g(${1:7:0})630 518 y($)g(echo)g(${1:7:2})630
628 y(78)630 737 y($)g(echo)g(${1:7:-2})630 847 y(7890abcdef)630
956 y($)g(echo)g(${1:)g(-7})630 1066 y(bcdefgh)630 1176
y($)g(echo)g(${1:)g(-7:0})630 1395 y($)g(echo)g(${1:)g(-7:2})630
2929 y(bcdefgh)630 3039 y($)i(echo)g(${array[0]:)e(-7:0})630
3258 y($)i(echo)g(${array[0]:)e(-7:2})630 3367 y(bc)630
3477 y($)i(echo)g(${array[0]:)e(-7:-2})630 3587 y(bcdef)630
-3733 y Ft(If)22 b Fq(parameter)30 b Ft(is)23 b(`)p Fs(@)p
-Ft(',)i(the)e(result)f(is)h Fq(length)g Ft(p)s(ositional)h(parameters)f
-(b)s(eginning)f(at)i Fq(o\013set)r Ft(.)630 3842 y(A)36
-b(negativ)m(e)j Fq(o\013set)g Ft(is)e(tak)m(en)g(relativ)m(e)i(to)e
+3733 y Fu(If)22 b Fr(parameter)30 b Fu(is)23 b(`)p Ft(@)p
+Fu(',)i(the)e(result)g(is)g Fr(length)h Fu(p)s(ositional)f(parameters)h
+(b)s(eginning)e(at)i Fr(o\013set)p Fu(.)630 3842 y(A)36
+b(negativ)m(e)j Fr(o\013set)g Fu(is)e(tak)m(en)g(relativ)m(e)i(to)e
(one)g(greater)g(than)f(the)h(greatest)h(p)s(ositional)630
3952 y(parameter,)29 b(so)f(an)g(o\013set)h(of)f(-1)g(ev)-5
b(aluates)30 b(to)e(the)g(last)h(p)s(ositional)g(parameter.)40
b(It)28 b(is)g(an)630 4061 y(expansion)i(error)g(if)h
-Fq(length)f Ft(ev)-5 b(aluates)32 b(to)f(a)g(n)m(um)m(b)s(er)e(less)i
+Fr(length)f Fu(ev)-5 b(aluates)32 b(to)f(a)g(n)m(um)m(b)s(er)e(less)i
(than)f(zero.)630 4208 y(The)i(follo)m(wing)i(examples)f(illustrate)h
(substring)d(expansion)i(using)f(p)s(ositional)h(param-)630
-4317 y(eters:)630 4463 y Fs($)47 b(set)g(--)h(1)f(2)g(3)h(4)f(5)h(6)f
+4317 y(eters:)630 4463 y Ft($)47 b(set)g(--)h(1)f(2)g(3)h(4)f(5)h(6)f
(7)h(8)f(9)h(0)f(a)h(b)f(c)g(d)h(e)f(f)h(g)f(h)630 4573
y($)g(echo)g(${@:7})630 4682 y(7)g(8)h(9)f(0)h(a)f(b)h(c)f(d)h(e)f(f)h
(g)f(h)630 4792 y($)g(echo)g(${@:7:0})630 5011 y($)g(echo)g(${@:7:2})
5340 y(bash:)f(-2:)h(substring)f(expression)f(<)i(0)p
eop end
%%Page: 26 32
-TeXDict begin 26 31 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 26 31 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(26)630 299
-y Fs($)47 b(echo)g(${@:)g(-7:2})630 408 y(b)g(c)630 518
+y Ft($)47 b(echo)g(${@:)g(-7:2})630 408 y(b)g(c)630 518
y($)g(echo)g(${@:0})630 628 y(./bash)f(1)i(2)f(3)g(4)h(5)f(6)h(7)f(8)h
(9)f(0)h(a)f(b)h(c)f(d)g(e)h(f)f(g)h(h)630 737 y($)f(echo)g(${@:0:2})
630 847 y(./bash)f(1)630 956 y($)h(echo)g(${@:)g(-7:0})630
-1200 y Ft(If)36 b Fq(parameter)43 b Ft(is)36 b(an)g(indexed)g(arra)m(y)
-g(name)g(subscripted)f(b)m(y)h(`)p Fs(@)p Ft(')g(or)h(`)p
-Fs(*)p Ft(',)h(the)e(result)g(is)630 1310 y(the)h Fq(length)g
-Ft(mem)m(b)s(ers)f(of)h(the)g(arra)m(y)g(b)s(eginning)f(with)h
-Fs(${)p Fi(parameter)11 b Fs([)p Fi(offset)g Fs(])o(})p
-Ft(.)54 b(A)630 1419 y(negativ)m(e)33 b Fq(o\013set)g
-Ft(is)e(tak)m(en)h(relativ)m(e)g(to)g(one)f(greater)g(than)g(the)f
-(maxim)m(um)h(index)f(of)h(the)630 1529 y(sp)s(eci\014ed)38
-b(arra)m(y)-8 b(.)65 b(It)38 b(is)g(an)h(expansion)f(error)f(if)i
-Fq(length)f Ft(ev)-5 b(aluates)40 b(to)f(a)g(n)m(um)m(b)s(er)e(less)630
+1200 y Fu(If)36 b Fr(parameter)43 b Fu(is)36 b(an)g(indexed)g(arra)m(y)
+g(name)g(subscripted)f(b)m(y)h(`)p Ft(@)p Fu(')g(or)h(`)p
+Ft(*)p Fu(',)h(the)e(result)g(is)630 1310 y(the)j Fr(length)g
+Fu(mem)m(b)s(ers)f(of)h(the)f(arra)m(y)i(b)s(eginning)d(with)i
+Ft(${)p Fj(parameter)p Ft([)p Fj(offset)p Ft(]})p Fu(.)60
+b(A)630 1419 y(negativ)m(e)33 b Fr(o\013set)g Fu(is)e(tak)m(en)h
+(relativ)m(e)g(to)g(one)f(greater)g(than)g(the)f(maxim)m(um)h(index)f
+(of)h(the)630 1529 y(sp)s(eci\014ed)38 b(arra)m(y)-8
+b(.)65 b(It)38 b(is)g(an)h(expansion)f(error)f(if)i Fr(length)f
+Fu(ev)-5 b(aluates)40 b(to)f(a)g(n)m(um)m(b)s(er)e(less)630
1638 y(than)30 b(zero.)630 1772 y(These)23 b(examples)i(sho)m(w)e(ho)m
(w)h(y)m(ou)g(can)g(use)f(substring)f(expansion)i(with)f(indexed)g
-(arra)m(ys:)630 1906 y Fs($)47 b(array=\(0)f(1)h(2)h(3)f(4)h(5)f(6)h(7)
+(arra)m(ys:)630 1906 y Ft($)47 b(array=\(0)f(1)h(2)h(3)f(4)h(5)f(6)h(7)
f(8)h(9)f(0)h(a)f(b)g(c)h(d)f(e)h(f)f(g)h(h\))630 2016
y($)f(echo)g(${array[@]:7})630 2125 y(7)g(8)h(9)f(0)h(a)f(b)h(c)f(d)h
(e)f(f)h(g)f(h)630 2235 y($)g(echo)g(${array[@]:7:2})630
2892 y($)g(echo)g(${array[@]:0})630 3002 y(0)g(1)h(2)f(3)h(4)f(5)h(6)f
(7)h(8)f(9)h(0)f(a)g(b)h(c)f(d)h(e)f(f)h(g)f(h)630 3112
y($)g(echo)g(${array[@]:0:2})630 3221 y(0)g(1)630 3331
-y($)g(echo)g(${array[@]:)e(-7:0})630 3574 y Ft(Substring)25
+y($)g(echo)g(${array[@]:)e(-7:0})630 3574 y Fu(Substring)25
b(expansion)g(applied)h(to)h(an)f(asso)s(ciativ)m(e)j(arra)m(y)d(pro)s
(duces)f(unde\014ned)f(results.)630 3708 y(Substring)32
b(indexing)i(is)f(zero-based)i(unless)e(the)h(p)s(ositional)g
(parameters)g(are)g(used,)g(in)630 3818 y(whic)m(h)29
b(case)i(the)f(indexing)g(starts)g(at)g(1)g(b)m(y)g(default.)41
-b(If)29 b Fq(o\013set)k Ft(is)d(0,)g(and)f(the)h(p)s(ositional)630
-3927 y(parameters)h(are)f(used,)g Fs($@)g Ft(is)g(pre\014xed)g(to)h
-(the)f(list.)150 4086 y Fs(${!)p Fi(prefix)11 b Fs(*})150
-4195 y(${!)p Fi(prefix)g Fs(@})630 4305 y Ft(Expands)23
-b(to)i(the)g(names)f(of)h(v)-5 b(ariables)25 b(whose)f(names)g(b)s
-(egin)g(with)g Fq(pre\014x)6 b Ft(,)25 b(separated)g(b)m(y)630
-4415 y(the)k(\014rst)f(c)m(haracter)j(of)e(the)g Fs(IFS)f
-Ft(sp)s(ecial)i(v)-5 b(ariable.)41 b(When)29 b(`)p Fs(@)p
-Ft(')g(is)g(used)f(and)h(the)g(expan-)630 4524 y(sion)35
+b(If)29 b Fr(o\013set)k Fu(is)d(0,)g(and)f(the)h(p)s(ositional)630
+3927 y(parameters)h(are)f(used,)g Ft($@)g Fu(is)g(pre\014xed)g(to)h
+(the)f(list.)150 4086 y Ft(${!)p Fj(prefix)p Ft(*})150
+4195 y(${!)p Fj(prefix)p Ft(@})630 4305 y Fu(Expands)24
+b(to)h(the)g(names)g(of)g(v)-5 b(ariables)26 b(whose)f(names)f(b)s
+(egin)h(with)f Fr(pre\014x)p Fu(,)i(separated)f(b)m(y)630
+4415 y(the)k(\014rst)f(c)m(haracter)j(of)e(the)g Ft(IFS)f
+Fu(sp)s(ecial)i(v)-5 b(ariable.)41 b(When)29 b(`)p Ft(@)p
+Fu(')g(is)g(used)f(and)h(the)g(expan-)630 4524 y(sion)35
b(app)s(ears)g(within)f(double)h(quotes,)i(eac)m(h)f(v)-5
b(ariable)36 b(name)f(expands)g(to)g(a)h(separate)630
-4634 y(w)m(ord.)150 4792 y Fs(${!)p Fi(name)11 b Fs([@]})150
-4902 y(${!)p Fi(name)g Fs([*]})630 5011 y Ft(If)26 b
-Fq(name)32 b Ft(is)27 b(an)f(arra)m(y)h(v)-5 b(ariable,)29
+4634 y(w)m(ord.)150 4792 y Ft(${!)p Fj(name)p Ft([@]})150
+4902 y(${!)p Fj(name)p Ft([*]})630 5011 y Fu(If)26 b
+Fr(name)32 b Fu(is)27 b(an)f(arra)m(y)h(v)-5 b(ariable,)29
b(expands)d(to)h(the)g(list)g(of)g(arra)m(y)g(indices)g(\(k)m(eys\))h
-(assigned)630 5121 y(in)c Fq(name)5 b Ft(.)39 b(If)23
-b Fq(name)30 b Ft(is)24 b(not)g(an)g(arra)m(y)-8 b(,)27
-b(expands)c(to)i(0)f(if)h Fq(name)k Ft(is)24 b(set)h(and)e(n)m(ull)h
-(otherwise.)630 5230 y(When)39 b(`)p Fs(@)p Ft(')h(is)f(used)g(and)f
+(assigned)630 5121 y(in)c Fr(name)p Fu(.)39 b(If)24 b
+Fr(name)30 b Fu(is)24 b(not)h(an)f(arra)m(y)-8 b(,)27
+b(expands)c(to)j(0)f(if)f Fr(name)30 b Fu(is)24 b(set)h(and)f(n)m(ull)g
+(otherwise.)630 5230 y(When)39 b(`)p Ft(@)p Fu(')h(is)f(used)g(and)f
(the)i(expansion)f(app)s(ears)g(within)f(double)h(quotes,)k(eac)m(h)d
(k)m(ey)630 5340 y(expands)30 b(to)h(a)f(separate)i(w)m(ord.)p
eop end
%%Page: 27 33
-TeXDict begin 27 32 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 27 32 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(27)150 299
-y Fs(${#)p Fi(parameter)11 b Fs(})630 408 y Ft(The)40
-b(length)g(in)g(c)m(haracters)i(of)e(the)h(expanded)e(v)-5
-b(alue)41 b(of)f Fq(parameter)47 b Ft(is)40 b(substituted.)630
-518 y(If)i Fq(parameter)50 b Ft(is)43 b(`)p Fs(*)p Ft(')g(or)g(`)p
-Fs(@)p Ft(',)k(the)c(v)-5 b(alue)43 b(substituted)f(is)h(the)g(n)m(um)m
+y Ft(${#)p Fj(parameter)p Ft(})630 408 y Fu(The)40 b(length)g(in)g(c)m
+(haracters)i(of)e(the)h(expanded)e(v)-5 b(alue)41 b(of)f
+Fr(parameter)47 b Fu(is)40 b(substituted.)630 518 y(If)i
+Fr(parameter)50 b Fu(is)43 b(`)p Ft(*)p Fu(')g(or)g(`)p
+Ft(@)p Fu(',)k(the)c(v)-5 b(alue)43 b(substituted)f(is)h(the)g(n)m(um)m
(b)s(er)f(of)h(p)s(ositional)630 628 y(parameters.)i(If)32
-b Fq(parameter)38 b Ft(is)32 b(an)g(arra)m(y)g(name)g(subscripted)f(b)m
-(y)g(`)p Fs(*)p Ft(')h(or)g(`)p Fs(@)p Ft(',)g(the)g(v)-5
+b Fr(parameter)38 b Fu(is)32 b(an)g(arra)m(y)g(name)g(subscripted)f(b)m
+(y)g(`)p Ft(*)p Fu(')h(or)g(`)p Ft(@)p Fu(',)g(the)g(v)-5
b(alue)630 737 y(substituted)30 b(is)h(the)g(n)m(um)m(b)s(er)e(of)i
(elemen)m(ts)i(in)d(the)h(arra)m(y)-8 b(.)43 b(If)30
-b Fq(parameter)38 b Ft(is)31 b(an)f(indexed)630 847 y(arra)m(y)37
+b Fr(parameter)38 b Fu(is)31 b(an)f(indexed)630 847 y(arra)m(y)37
b(name)g(subscripted)f(b)m(y)h(a)g(negativ)m(e)i(n)m(um)m(b)s(er,)f
(that)f(n)m(um)m(b)s(er)f(is)g(in)m(terpreted)i(as)630
-956 y(relativ)m(e)47 b(to)e(one)h(greater)g(than)e(the)h(maxim)m(um)g
-(index)f(of)h Fq(parameter)7 b Ft(,)49 b(so)c(negativ)m(e)630
+956 y(relativ)m(e)47 b(to)g(one)e(greater)i(than)e(the)h(maxim)m(um)f
+(index)g(of)g Fr(parameter)p Fu(,)50 b(so)c(negativ)m(e)630
1066 y(indices)30 b(coun)m(t)h(bac)m(k)g(from)f(the)h(end)e(of)i(the)f
(arra)m(y)-8 b(,)32 b(and)e(an)g(index)g(of)g(-1)h(references)g(the)630
-1176 y(last)g(elemen)m(t.)150 1395 y Fs(${)p Fi(parameter)11
-b Fs(#)p Fi(word)g Fs(})150 1504 y(${)p Fi(parameter)g
-Fs(##)p Fi(word)g Fs(})630 1614 y Ft(The)31 b Fq(w)m(ord)k
-Ft(is)d(expanded)f(to)i(pro)s(duce)e(a)h(pattern)g(just)f(as)i(in)e
+1176 y(last)g(elemen)m(t.)150 1395 y Ft(${)p Fj(parameter)p
+Ft(#)p Fj(word)p Ft(})150 1504 y(${)p Fj(parameter)p
+Ft(##)p Fj(word)p Ft(})630 1614 y Fu(The)g Fr(w)m(ord)k
+Fu(is)d(expanded)f(to)i(pro)s(duce)e(a)h(pattern)g(just)f(as)i(in)e
(\014lename)h(expansion)g(\(see)630 1724 y(Section)k(3.5.8)h([Filename)
g(Expansion],)g(page)f(29\).)56 b(If)35 b(the)h(pattern)f(matc)m(hes)i
-(the)e(b)s(e-)630 1833 y(ginning)g(of)g(the)g(expanded)f(v)-5
-b(alue)36 b(of)f Fq(parameter)7 b Ft(,)36 b(then)f(the)g(result)g(of)g
-(the)g(expansion)630 1943 y(is)28 b(the)g(expanded)e(v)-5
-b(alue)28 b(of)g Fq(parameter)35 b Ft(with)27 b(the)h(shortest)g(matc)m
-(hing)h(pattern)f(\(the)g(`)p Fs(#)p Ft(')630 2052 y(case\))e(or)f(the)
-g(longest)g(matc)m(hing)h(pattern)f(\(the)g(`)p Fs(##)p
-Ft(')g(case\))h(deleted.)39 b(If)24 b Fq(parameter)32
-b Ft(is)25 b(`)p Fs(@)p Ft(')630 2162 y(or)j(`)p Fs(*)p
-Ft(',)i(the)e(pattern)h(remo)m(v)-5 b(al)29 b(op)s(eration)g(is)f
+(the)e(b)s(e-)630 1833 y(ginning)28 b(of)g(the)h(expanded)e(v)-5
+b(alue)29 b(of)f Fr(parameter)p Fu(,)h(then)f(the)g(result)g(of)h(the)f
+(expansion)g(is)630 1943 y(the)36 b(expanded)f(v)-5 b(alue)36
+b(of)g Fr(parameter)43 b Fu(with)35 b(the)h(shortest)g(matc)m(hing)h
+(pattern)f(\(the)g(`)p Ft(#)p Fu(')630 2052 y(case\))26
+b(or)f(the)g(longest)g(matc)m(hing)h(pattern)f(\(the)g(`)p
+Ft(##)p Fu(')g(case\))h(deleted.)39 b(If)24 b Fr(parameter)32
+b Fu(is)25 b(`)p Ft(@)p Fu(')630 2162 y(or)j(`)p Ft(*)p
+Fu(',)i(the)e(pattern)h(remo)m(v)-5 b(al)29 b(op)s(eration)g(is)f
(applied)h(to)g(eac)m(h)g(p)s(ositional)g(parameter)g(in)630
2271 y(turn,)i(and)g(the)h(expansion)g(is)g(the)g(resultan)m(t)g(list.)
-45 b(If)32 b Fq(parameter)38 b Ft(is)32 b(an)g(arra)m(y)g(v)-5
-b(ariable)630 2381 y(subscripted)39 b(with)g(`)p Fs(@)p
-Ft(')h(or)g(`)p Fs(*)p Ft(',)j(the)d(pattern)h(remo)m(v)-5
+45 b(If)32 b Fr(parameter)38 b Fu(is)32 b(an)g(arra)m(y)g(v)-5
+b(ariable)630 2381 y(subscripted)39 b(with)g(`)p Ft(@)p
+Fu(')h(or)g(`)p Ft(*)p Fu(',)j(the)d(pattern)h(remo)m(v)-5
b(al)41 b(op)s(eration)f(is)g(applied)g(to)h(eac)m(h)630
2491 y(mem)m(b)s(er)30 b(of)g(the)h(arra)m(y)g(in)f(turn,)f(and)h(the)h
(expansion)f(is)g(the)h(resultan)m(t)g(list.)150 2710
-y Fs(${)p Fi(parameter)11 b Fs(\045)p Fi(word)g Fs(})150
-2819 y(${)p Fi(parameter)g Fs(\045\045)p Fi(word)g Fs(})630
-2929 y Ft(The)35 b Fq(w)m(ord)k Ft(is)c(expanded)g(to)h(pro)s(duce)e(a)
-i(pattern)f(just)g(as)h(in)f(\014lename)h(expansion.)55
-b(If)630 3039 y(the)43 b(pattern)f(matc)m(hes)i(a)e(trailing)i(p)s
-(ortion)e(of)g(the)h(expanded)e(v)-5 b(alue)43 b(of)g
-Fq(parameter)7 b Ft(,)630 3148 y(then)39 b(the)g(result)g(of)h(the)f
-(expansion)g(is)h(the)f(v)-5 b(alue)40 b(of)f Fq(parameter)46
-b Ft(with)39 b(the)h(shortest)630 3258 y(matc)m(hing)31
-b(pattern)e(\(the)h(`)p Fs(\045)p Ft(')g(case\))h(or)e(the)h(longest)h
-(matc)m(hing)f(pattern)g(\(the)g(`)p Fs(\045\045)p Ft(')g(case\))630
-3367 y(deleted.)49 b(If)32 b Fq(parameter)40 b Ft(is)33
-b(`)p Fs(@)p Ft(')g(or)g(`)p Fs(*)p Ft(',)h(the)f(pattern)g(remo)m(v)-5
+y Ft(${)p Fj(parameter)p Ft(\045)p Fj(word)p Ft(})150
+2819 y(${)p Fj(parameter)p Ft(\045\045)p Fj(word)p Ft(})630
+2929 y Fu(The)k Fr(w)m(ord)k Fu(is)c(expanded)g(to)h(pro)s(duce)e(a)i
+(pattern)f(just)g(as)h(in)f(\014lename)h(expansion.)55
+b(If)630 3039 y(the)43 b(pattern)g(matc)m(hes)h(a)g(trailing)g(p)s
+(ortion)e(of)h(the)g(expanded)g(v)-5 b(alue)43 b(of)g
+Fr(parameter)p Fu(,)630 3148 y(then)c(the)g(result)g(of)h(the)f
+(expansion)g(is)h(the)f(v)-5 b(alue)40 b(of)f Fr(parameter)46
+b Fu(with)39 b(the)h(shortest)630 3258 y(matc)m(hing)31
+b(pattern)e(\(the)h(`)p Ft(\045)p Fu(')g(case\))h(or)e(the)h(longest)h
+(matc)m(hing)f(pattern)g(\(the)g(`)p Ft(\045\045)p Fu(')g(case\))630
+3367 y(deleted.)49 b(If)32 b Fr(parameter)40 b Fu(is)33
+b(`)p Ft(@)p Fu(')g(or)g(`)p Ft(*)p Fu(',)h(the)f(pattern)g(remo)m(v)-5
b(al)34 b(op)s(eration)g(is)f(applied)f(to)630 3477 y(eac)m(h)38
b(p)s(ositional)g(parameter)g(in)f(turn,)h(and)e(the)h(expansion)g(is)h
-(the)f(resultan)m(t)h(list.)61 b(If)630 3587 y Fq(parameter)38
-b Ft(is)32 b(an)f(arra)m(y)h(v)-5 b(ariable)32 b(subscripted)e(with)h
-(`)p Fs(@)p Ft(')g(or)h(`)p Fs(*)p Ft(',)g(the)f(pattern)h(remo)m(v)-5
+(the)f(resultan)m(t)h(list.)61 b(If)630 3587 y Fr(parameter)38
+b Fu(is)32 b(an)f(arra)m(y)h(v)-5 b(ariable)32 b(subscripted)e(with)h
+(`)p Ft(@)p Fu(')g(or)h(`)p Ft(*)p Fu(',)g(the)f(pattern)h(remo)m(v)-5
b(al)630 3696 y(op)s(eration)30 b(is)g(applied)f(to)i(eac)m(h)g(mem)m
(b)s(er)e(of)h(the)g(arra)m(y)g(in)f(turn,)g(and)g(the)h(expansion)g
(is)630 3806 y(the)h(resultan)m(t)g(list.)150 4025 y
-Fs(${)p Fi(parameter)11 b Fs(/)p Fi(pattern)g Fs(/)p
-Fi(s)o(tri)o(ng)f Fs(})630 4134 y Ft(The)37 b Fq(pattern)g
-Ft(is)g(expanded)g(to)h(pro)s(duce)e(a)h(pattern)g(just)g(as)h(in)e
-(\014lename)i(expansion.)630 4244 y Fq(P)m(arameter)46
-b Ft(is)38 b(expanded)f(and)g(the)i(longest)g(matc)m(h)g(of)f
-Fq(pattern)g Ft(against)h(its)f(v)-5 b(alue)39 b(is)630
-4354 y(replaced)33 b(with)f Fq(string)8 b Ft(.)47 b(If)33
-b Fq(pattern)f Ft(b)s(egins)g(with)h(`)p Fs(/)p Ft(',)g(all)h(matc)m
-(hes)f(of)g Fq(pattern)g Ft(are)g(re-)630 4463 y(placed)27
-b(with)f Fq(string)8 b Ft(.)40 b(Normally)27 b(only)g(the)g(\014rst)f
-(matc)m(h)h(is)g(replaced.)40 b(If)26 b Fq(pattern)g
-Ft(b)s(egins)630 4573 y(with)33 b(`)p Fs(#)p Ft(',)i(it)f(m)m(ust)f
-(matc)m(h)i(at)f(the)g(b)s(eginning)f(of)g(the)h(expanded)f(v)-5
-b(alue)34 b(of)g Fq(parameter)7 b Ft(.)630 4682 y(If)34
-b Fq(pattern)g Ft(b)s(egins)g(with)g(`)p Fs(\045)p Ft(',)h(it)g(m)m
-(ust)f(matc)m(h)h(at)g(the)f(end)g(of)g(the)h(expanded)e(v)-5
-b(alue)35 b(of)630 4792 y Fq(parameter)7 b Ft(.)40 b(If)29
-b Fq(string)36 b Ft(is)29 b(n)m(ull,)h(matc)m(hes)g(of)f
-Fq(pattern)g Ft(are)g(deleted)h(and)e(the)h Fs(/)f Ft(follo)m(wing)630
-4902 y Fq(pattern)34 b Ft(ma)m(y)g(b)s(e)f(omitted.)51
-b(If)33 b Fq(parameter)41 b Ft(is)33 b(`)p Fs(@)p Ft(')h(or)g(`)p
-Fs(*)p Ft(',)g(the)g(substitution)f(op)s(eration)630
-5011 y(is)38 b(applied)g(to)g(eac)m(h)h(p)s(ositional)g(parameter)f(in)
-g(turn,)h(and)e(the)h(expansion)g(is)g(the)g(re-)630
-5121 y(sultan)m(t)f(list.)59 b(If)36 b Fq(parameter)43
-b Ft(is)36 b(an)g(arra)m(y)h(v)-5 b(ariable)37 b(subscripted)e(with)h
-(`)p Fs(@)p Ft(')g(or)h(`)p Fs(*)p Ft(',)h(the)630 5230
+Ft(${)p Fj(parameter)p Ft(/)p Fj(pattern)p Ft(/)p Fj(stri)o(ng)p
+Ft(})630 4134 y Fu(The)37 b Fr(pattern)g Fu(is)g(expanded)g(to)h(pro)s
+(duce)e(a)h(pattern)g(just)g(as)h(in)e(\014lename)i(expansion.)630
+4244 y Fr(P)m(arameter)46 b Fu(is)38 b(expanded)f(and)g(the)i(longest)g
+(matc)m(h)g(of)f Fr(pattern)g Fu(against)h(its)f(v)-5
+b(alue)39 b(is)630 4354 y(replaced)34 b(with)e Fr(string)p
+Fu(.)49 b(If)33 b Fr(pattern)g Fu(b)s(egins)g(with)f(`)p
+Ft(/)p Fu(',)j(all)f(matc)m(hes)g(of)f Fr(pattern)g Fu(are)h(re-)630
+4463 y(placed)28 b(with)f Fr(string)p Fu(.)40 b(Normally)28
+b(only)f(the)h(\014rst)e(matc)m(h)j(is)e(replaced.)40
+b(If)27 b Fr(pattern)g Fu(b)s(egins)630 4573 y(with)34
+b(`)p Ft(#)p Fu(',)h(it)g(m)m(ust)f(matc)m(h)h(at)f(the)h(b)s(eginning)
+e(of)h(the)g(expanded)f(v)-5 b(alue)35 b(of)f Fr(parameter)p
+Fu(.)630 4682 y(If)g Fr(pattern)g Fu(b)s(egins)g(with)g(`)p
+Ft(\045)p Fu(',)h(it)g(m)m(ust)f(matc)m(h)h(at)g(the)f(end)g(of)g(the)h
+(expanded)e(v)-5 b(alue)35 b(of)630 4792 y Fr(parameter)p
+Fu(.)41 b(If)29 b Fr(string)37 b Fu(is)29 b(n)m(ull,)h(matc)m(hes)h(of)
+e Fr(pattern)h Fu(are)g(deleted)g(and)f(the)g Ft(/)g
+Fu(follo)m(wing)630 4902 y Fr(pattern)34 b Fu(ma)m(y)g(b)s(e)f
+(omitted.)51 b(If)33 b Fr(parameter)41 b Fu(is)33 b(`)p
+Ft(@)p Fu(')h(or)g(`)p Ft(*)p Fu(',)g(the)g(substitution)f(op)s
+(eration)630 5011 y(is)38 b(applied)g(to)g(eac)m(h)h(p)s(ositional)g
+(parameter)f(in)g(turn,)h(and)e(the)h(expansion)g(is)g(the)g(re-)630
+5121 y(sultan)m(t)f(list.)59 b(If)36 b Fr(parameter)43
+b Fu(is)36 b(an)g(arra)m(y)h(v)-5 b(ariable)37 b(subscripted)e(with)h
+(`)p Ft(@)p Fu(')g(or)h(`)p Ft(*)p Fu(',)h(the)630 5230
y(substitution)30 b(op)s(eration)h(is)f(applied)g(to)h(eac)m(h)g(mem)m
(b)s(er)f(of)g(the)h(arra)m(y)g(in)f(turn,)f(and)h(the)630
5340 y(expansion)g(is)h(the)f(resultan)m(t)h(list.)p
eop end
%%Page: 28 34
-TeXDict begin 28 33 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 28 33 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(28)150 299
-y Fs(${)p Fi(parameter)11 b Fs(^)p Fi(pattern)g Fs(})150
-408 y(${)p Fi(parameter)g Fs(^^)p Fi(pattern)g Fs(})150
-518 y(${)p Fi(parameter)g Fs(,)p Fi(pattern)g Fs(})150
-628 y(${)p Fi(parameter)g Fs(,,)p Fi(pattern)g Fs(})630
-737 y Ft(This)35 b(expansion)h(mo)s(di\014es)f(the)h(case)h(of)f
-(alphab)s(etic)h(c)m(haracters)g(in)f Fq(parameter)7
-b Ft(.)57 b(The)630 847 y Fq(pattern)33 b Ft(is)g(expanded)e(to)j(pro)s
+y Ft(${)p Fj(parameter)p Ft(^)p Fj(pattern)p Ft(})150
+408 y(${)p Fj(parameter)p Ft(^^)p Fj(pattern)p Ft(})150
+518 y(${)p Fj(parameter)p Ft(,)p Fj(pattern)p Ft(})150
+628 y(${)p Fj(parameter)p Ft(,,)p Fj(pattern)p Ft(})630
+737 y Fu(This)36 b(expansion)g(mo)s(di\014es)g(the)g(case)i(of)f
+(alphab)s(etic)g(c)m(haracters)h(in)e Fr(parameter)p
+Fu(.)59 b(The)630 847 y Fr(pattern)33 b Fu(is)g(expanded)e(to)j(pro)s
(duce)d(a)j(pattern)e(just)g(as)h(in)g(\014lename)g(expansion.)47
b(Eac)m(h)630 956 y(c)m(haracter)32 b(in)e(the)g(expanded)f(v)-5
-b(alue)31 b(of)f Fq(parameter)37 b Ft(is)30 b(tested)h(against)h
-Fq(pattern)p Ft(,)e(and,)g(if)630 1066 y(it)j(matc)m(hes)h(the)g
+b(alue)31 b(of)f Fr(parameter)37 b Fu(is)30 b(tested)h(against)h
+Fr(pattern)p Fu(,)e(and,)g(if)630 1066 y(it)j(matc)m(hes)h(the)g
(pattern,)f(its)h(case)g(is)f(con)m(v)m(erted.)49 b(The)33
b(pattern)g(should)f(not)h(attempt)630 1176 y(to)f(matc)m(h)g(more)f
-(than)g(one)g(c)m(haracter.)44 b(The)30 b(`)p Fs(^)p
-Ft(')i(op)s(erator)f(con)m(v)m(erts)h(lo)m(w)m(ercase)i(letters)630
-1285 y(matc)m(hing)i Fq(pattern)f Ft(to)h(upp)s(ercase;)h(the)e(`)p
-Fs(,)p Ft(')g(op)s(erator)g(con)m(v)m(erts)i(matc)m(hing)f(upp)s
+(than)g(one)g(c)m(haracter.)44 b(The)30 b(`)p Ft(^)p
+Fu(')i(op)s(erator)f(con)m(v)m(erts)h(lo)m(w)m(ercase)i(letters)630
+1285 y(matc)m(hing)i Fr(pattern)f Fu(to)h(upp)s(ercase;)h(the)e(`)p
+Ft(,)p Fu(')g(op)s(erator)g(con)m(v)m(erts)i(matc)m(hing)f(upp)s
(ercase)630 1395 y(letters)e(to)f(lo)m(w)m(ercase.)50
-b(The)32 b(`)p Fs(^^)p Ft(')h(and)f(`)p Fs(,,)p Ft(')g(expansions)h
+b(The)32 b(`)p Ft(^^)p Fu(')h(and)f(`)p Ft(,,)p Fu(')g(expansions)h
(con)m(v)m(ert)h(eac)m(h)g(matc)m(hed)f(c)m(har-)630
1504 y(acter)c(in)f(the)h(expanded)e(v)-5 b(alue;)30
-b(the)e(`)p Fs(^)p Ft(')g(and)g(`)p Fs(,)p Ft(')g(expansions)g(matc)m
+b(the)e(`)p Ft(^)p Fu(')g(and)g(`)p Ft(,)p Fu(')g(expansions)g(matc)m
(h)h(and)f(con)m(v)m(ert)i(only)630 1614 y(the)37 b(\014rst)g(c)m
(haracter)i(in)e(the)g(expanded)g(v)-5 b(alue.)61 b(If)37
-b Fq(pattern)g Ft(is)h(omitted,)i(it)e(is)f(treated)630
-1724 y(lik)m(e)h(a)f(`)p Fs(?)p Ft(',)i(whic)m(h)d(matc)m(hes)i(ev)m
-(ery)f(c)m(haracter.)61 b(If)37 b Fq(parameter)43 b Ft(is)37
-b(`)p Fs(@)p Ft(')g(or)f(`)p Fs(*)p Ft(',)j(the)e(case)630
+b Fr(pattern)g Fu(is)h(omitted,)i(it)e(is)f(treated)630
+1724 y(lik)m(e)h(a)f(`)p Ft(?)p Fu(',)i(whic)m(h)d(matc)m(hes)i(ev)m
+(ery)f(c)m(haracter.)61 b(If)37 b Fr(parameter)43 b Fu(is)37
+b(`)p Ft(@)p Fu(')g(or)f(`)p Ft(*)p Fu(',)j(the)e(case)630
1833 y(mo)s(di\014cation)29 b(op)s(eration)f(is)g(applied)g(to)h(eac)m
(h)h(p)s(ositional)f(parameter)f(in)g(turn,)g(and)g(the)630
1943 y(expansion)38 b(is)g(the)g(resultan)m(t)h(list.)65
-b(If)37 b Fq(parameter)46 b Ft(is)38 b(an)g(arra)m(y)g(v)-5
-b(ariable)39 b(subscripted)630 2052 y(with)26 b(`)p Fs(@)p
-Ft(')f(or)h(`)p Fs(*)p Ft(',)h(the)f(case)h(mo)s(di\014cation)f(op)s
+b(If)37 b Fr(parameter)46 b Fu(is)38 b(an)g(arra)m(y)g(v)-5
+b(ariable)39 b(subscripted)630 2052 y(with)26 b(`)p Ft(@)p
+Fu(')f(or)h(`)p Ft(*)p Fu(',)h(the)f(case)h(mo)s(di\014cation)f(op)s
(eration)h(is)e(applied)h(to)h(eac)m(h)g(mem)m(b)s(er)e(of)h(the)630
2162 y(arra)m(y)31 b(in)f(turn,)f(and)h(the)h(expansion)f(is)g(the)h
-(resultan)m(t)g(list.)150 2367 y Fj(3.5.4)63 b(Command)41
-b(Substitution)150 2514 y Ft(Command)f(substitution)h(allo)m(ws)i(the)e
+(resultan)m(t)g(list.)150 2367 y Fk(3.5.4)63 b(Command)41
+b(Substitution)150 2514 y Fu(Command)f(substitution)h(allo)m(ws)i(the)e
(output)g(of)h(a)f(command)g(to)h(replace)g(the)g(command)f(itself.)150
2624 y(Command)29 b(substitution)h(o)s(ccurs)h(when)e(a)i(command)f(is)
-g(enclosed)h(as)g(follo)m(ws:)390 2765 y Fs($\()p Fi(command)11
-b Fs(\))150 2906 y Ft(or)390 3047 y Fs(`)p Fi(command)g
-Fs(`)150 3187 y Ft(Bash)45 b(p)s(erforms)f(the)h(expansion)f(b)m(y)h
-(executing)i Fq(command)h Ft(and)c(replacing)i(the)f(command)g(sub-)150
+g(enclosed)h(as)g(follo)m(ws:)390 2765 y Ft($\()p Fj(command)p
+Ft(\))150 2906 y Fu(or)390 3047 y Ft(`)p Fj(command)p
+Ft(`)150 3187 y Fu(Bash)45 b(p)s(erforms)f(the)h(expansion)f(b)m(y)h
+(executing)i Fr(command)h Fu(and)c(replacing)i(the)f(command)g(sub-)150
3297 y(stitution)c(with)f(the)g(standard)g(output)g(of)g(the)g
(command,)j(with)d(an)m(y)h(trailing)g(newlines)f(deleted.)150
3407 y(Em)m(b)s(edded)30 b(newlines)h(are)h(not)f(deleted,)i(but)e
(they)g(ma)m(y)h(b)s(e)f(remo)m(v)m(ed)i(during)d(w)m(ord)h(splitting.)
-44 b(The)150 3516 y(command)21 b(substitution)g Fs($\(cat)29
-b Fi(file)11 b Fs(\))20 b Ft(can)i(b)s(e)f(replaced)g(b)m(y)h(the)g
-(equiv)-5 b(alen)m(t)22 b(but)f(faster)h Fs($\(<)30 b
-Fi(file)11 b Fs(\))p Ft(.)275 3657 y(When)33 b(the)i(old-st)m(yle)h
-(bac)m(kquote)f(form)f(of)g(substitution)g(is)g(used,)h(bac)m(kslash)f
-(retains)h(its)f(literal)150 3767 y(meaning)k(except)h(when)e(follo)m
-(w)m(ed)j(b)m(y)e(`)p Fs($)p Ft(',)j(`)p Fs(`)p Ft(',)f(or)e(`)p
-Fs(\\)p Ft('.)64 b(The)38 b(\014rst)f(bac)m(kquote)j(not)e(preceded)g
-(b)m(y)g(a)150 3876 y(bac)m(kslash)j(terminates)g(the)f(command)g
-(substitution.)69 b(When)40 b(using)g(the)g Fs($\()p
-Fi(command)11 b Fs(\))37 b Ft(form,)42 b(all)150 3986
-y(c)m(haracters)32 b(b)s(et)m(w)m(een)f(the)f(paren)m(theses)h(mak)m(e)
-g(up)f(the)g(command;)h(none)f(are)h(treated)g(sp)s(ecially)-8
-b(.)275 4127 y(Command)22 b(substitutions)g(ma)m(y)i(b)s(e)e(nested.)39
+44 b(The)150 3516 y(command)23 b(substitution)g Ft($\(cat)29
+b Fj(file)p Ft(\))22 b Fu(can)i(b)s(e)f(replaced)g(b)m(y)h(the)f(equiv)
+-5 b(alen)m(t)25 b(but)e(faster)h Ft($\(<)29 b Fj(file)p
+Ft(\))p Fu(.)275 3657 y(When)k(the)i(old-st)m(yle)h(bac)m(kquote)f
+(form)f(of)g(substitution)g(is)g(used,)h(bac)m(kslash)f(retains)h(its)f
+(literal)150 3767 y(meaning)k(except)h(when)e(follo)m(w)m(ed)j(b)m(y)e
+(`)p Ft($)p Fu(',)j(`)p Ft(`)p Fu(',)f(or)e(`)p Ft(\\)p
+Fu('.)64 b(The)38 b(\014rst)f(bac)m(kquote)j(not)e(preceded)g(b)m(y)g
+(a)150 3876 y(bac)m(kslash)k(terminates)f(the)h(command)e
+(substitution.)72 b(When)41 b(using)f(the)i Ft($\()p
+Fj(command)p Ft(\))c Fu(form,)43 b(all)150 3986 y(c)m(haracters)32
+b(b)s(et)m(w)m(een)f(the)f(paren)m(theses)h(mak)m(e)g(up)f(the)g
+(command;)h(none)f(are)h(treated)g(sp)s(ecially)-8 b(.)275
+4127 y(Command)22 b(substitutions)g(ma)m(y)i(b)s(e)e(nested.)39
b(T)-8 b(o)23 b(nest)g(when)f(using)h(the)g(bac)m(kquoted)h(form,)g
(escap)s(e)150 4236 y(the)31 b(inner)e(bac)m(kquotes)j(with)e(bac)m
(kslashes.)275 4377 y(If)e(the)i(substitution)e(app)s(ears)h(within)g
(double)f(quotes,)i(w)m(ord)f(splitting)h(and)f(\014lename)g(expansion)
150 4487 y(are)i(not)f(p)s(erformed)f(on)h(the)h(results.)150
-4692 y Fj(3.5.5)63 b(Arithmetic)40 b(Expansion)150 4839
-y Ft(Arithmetic)25 b(expansion)g(allo)m(ws)g(the)g(ev)-5
+4692 y Fk(3.5.5)63 b(Arithmetic)40 b(Expansion)150 4839
+y Fu(Arithmetic)25 b(expansion)g(allo)m(ws)g(the)g(ev)-5
b(aluation)26 b(of)f(an)f(arithmetic)i(expression)e(and)g(the)g
(substitution)150 4949 y(of)31 b(the)f(result.)41 b(The)30
b(format)g(for)g(arithmetic)i(expansion)e(is:)390 5090
-y Fs($\(\()47 b Fi(expression)55 b Fs(\)\))275 5230 y
-Ft(The)33 b(expression)g(is)h(treated)g(as)g(if)g(it)g(w)m(ere)g
-(within)f(double)h(quotes,)h(but)e(a)h(double)f(quote)h(inside)150
-5340 y(the)k(paren)m(theses)g(is)g(not)g(treated)h(sp)s(ecially)-8
+y Ft($\(\()47 b Fj(expression)e Ft(\)\))275 5230 y Fu(The)33
+b(expression)g(is)h(treated)g(as)g(if)g(it)g(w)m(ere)g(within)f(double)
+h(quotes,)h(but)e(a)h(double)f(quote)h(inside)150 5340
+y(the)k(paren)m(theses)g(is)g(not)g(treated)h(sp)s(ecially)-8
b(.)65 b(All)38 b(tok)m(ens)h(in)f(the)g(expression)f(undergo)g
(parameter)p eop end
%%Page: 29 35
-TeXDict begin 29 34 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 29 34 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(29)150 299
y(and)26 b(v)-5 b(ariable)28 b(expansion,)g(command)e(substitution,)i
(and)e(quote)i(remo)m(v)-5 b(al.)41 b(The)26 b(result)h(is)g(treated)h
([Shell)150 657 y(Arithmetic],)32 b(page)f(87\).)42 b(If)30
b(the)h(expression)f(is)g(in)m(v)-5 b(alid,)32 b(Bash)e(prin)m(ts)g(a)h
(message)g(indicating)h(failure)150 767 y(to)f(the)g(standard)e(error)h
-(and)g(no)g(substitution)g(o)s(ccurs.)150 970 y Fj(3.5.6)63
-b(Pro)s(cess)42 b(Substitution)150 1117 y Ft(Pro)s(cess)i(substitution)
+(and)g(no)g(substitution)g(o)s(ccurs.)150 970 y Fk(3.5.6)63
+b(Pro)s(cess)42 b(Substitution)150 1117 y Fu(Pro)s(cess)i(substitution)
g(is)g(supp)s(orted)f(on)h(systems)g(that)h(supp)s(ort)d(named)i(pip)s
-(es)f(\()p Fl(fif)n(o)p Ft(s\))i(or)f(the)150 1227 y(`)p
-Fs(/dev/fd)p Ft(')29 b(metho)s(d)h(of)g(naming)g(op)s(en)g(\014les.)41
-b(It)30 b(tak)m(es)i(the)f(form)f(of)390 1366 y Fs(<\()p
-Fi(list)11 b Fs(\))150 1504 y Ft(or)390 1643 y Fs(>\()p
-Fi(list)g Fs(\))150 1782 y Ft(The)23 b(pro)s(cess)g Fq(list)j
-Ft(is)d(run)f(with)h(its)h(input)f(or)g(output)g(connected)h(to)h(a)e
-Fl(fif)n(o)g Ft(or)h(some)g(\014le)f(in)g(`)p Fs(/dev/fd)p
-Ft('.)150 1892 y(The)28 b(name)h(of)g(this)f(\014le)h(is)g(passed)f(as)
-h(an)f(argumen)m(t)h(to)h(the)f(curren)m(t)f(command)h(as)f(the)h
-(result)g(of)g(the)150 2001 y(expansion.)40 b(If)28 b(the)h
-Fs(>\()p Fi(list)11 b Fs(\))26 b Ft(form)h(is)i(used,)f(writing)h(to)g
-(the)f(\014le)h(will)g(pro)m(vide)f(input)g(for)g Fq(list)r
-Ft(.)41 b(If)28 b(the)150 2111 y Fs(<\()p Fi(list)11
-b Fs(\))23 b Ft(form)h(is)i(used,)f(the)h(\014le)f(passed)g(as)g(an)g
-(argumen)m(t)h(should)e(b)s(e)h(read)g(to)h(obtain)g(the)f(output)g(of)
-150 2220 y Fq(list)r Ft(.)41 b(Note)31 b(that)f(no)f(space)h(ma)m(y)g
-(app)s(ear)f(b)s(et)m(w)m(een)h(the)g Fs(<)f Ft(or)h
-Fs(>)f Ft(and)g(the)g(left)h(paren)m(thesis,)h(otherwise)150
+(es)f(\()p Fm(fif)n(o)p Fu(s\))i(or)f(the)150 1227 y
+Ft(/dev/fd)28 b Fu(metho)s(d)i(of)h(naming)f(op)s(en)g(\014les.)40
+b(It)31 b(tak)m(es)h(the)e(form)g(of)390 1366 y Ft(<\()p
+Fj(list)p Ft(\))150 1504 y Fu(or)390 1643 y Ft(>\()p
+Fj(list)p Ft(\))150 1782 y Fu(The)c(pro)s(cess)f Fr(list)k
+Fu(is)e(run)d(with)i(its)h(input)e(or)h(output)g(connected)h(to)g(a)g
+Fm(fif)n(o)f Fu(or)g(some)g(\014le)h(in)f Ft(/dev/fd)p
+Fu(.)150 1892 y(The)i(name)h(of)g(this)f(\014le)h(is)g(passed)f(as)h
+(an)f(argumen)m(t)h(to)h(the)f(curren)m(t)f(command)h(as)f(the)h
+(result)g(of)g(the)150 2001 y(expansion.)40 b(If)29 b(the)g
+Ft(>\()p Fj(list)p Ft(\))f Fu(form)g(is)i(used,)f(writing)g(to)h(the)f
+(\014le)h(will)f(pro)m(vide)h(input)e(for)h Fr(list)p
+Fu(.)41 b(If)29 b(the)150 2111 y Ft(<\()p Fj(list)p Ft(\))24
+b Fu(form)h(is)h(used,)g(the)g(\014le)g(passed)g(as)g(an)f(argumen)m(t)
+i(should)e(b)s(e)g(read)g(to)i(obtain)f(the)g(output)g(of)150
+2220 y Fr(list)p Fu(.)41 b(Note)31 b(that)f(no)g(space)g(ma)m(y)g(app)s
+(ear)f(b)s(et)m(w)m(een)h(the)g Ft(<)f Fu(or)h Ft(>)f
+Fu(and)g(the)h(left)g(paren)m(thesis,)h(otherwise)150
2330 y(the)g(construct)f(w)m(ould)g(b)s(e)g(in)m(terpreted)h(as)f(a)h
(redirection.)275 2469 y(When)36 b(a)m(v)-5 b(ailable,)40
b(pro)s(cess)c(substitution)h(is)f(p)s(erformed)f(sim)m(ultaneously)i
(with)g(parameter)g(and)150 2578 y(v)-5 b(ariable)31
b(expansion,)g(command)f(substitution,)g(and)g(arithmetic)i(expansion.)
-150 2782 y Fj(3.5.7)63 b(W)-10 b(ord)41 b(Splitting)150
-2929 y Ft(The)30 b(shell)h(scans)g(the)g(results)f(of)h(parameter)g
+150 2782 y Fk(3.5.7)63 b(W)-10 b(ord)41 b(Splitting)150
+2929 y Fu(The)30 b(shell)h(scans)g(the)g(results)f(of)h(parameter)g
(expansion,)g(command)g(substitution,)g(and)f(arithmetic)150
3039 y(expansion)g(that)h(did)f(not)g(o)s(ccur)h(within)e(double)h
(quotes)h(for)f(w)m(ord)g(splitting.)275 3177 y(The)e(shell)g(treats)i
-(eac)m(h)g(c)m(haracter)g(of)f Fs($IFS)e Ft(as)i(a)g(delimiter,)h(and)e
+(eac)m(h)g(c)m(haracter)g(of)f Ft($IFS)e Fu(as)i(a)g(delimiter,)h(and)e
(splits)g(the)h(results)f(of)h(the)g(other)150 3287 y(expansions)22
b(in)m(to)i(w)m(ords)e(using)h(these)g(c)m(haracters)h(as)f(\014eld)f
-(terminators.)39 b(If)22 b Fs(IFS)g Ft(is)h(unset,)h(or)e(its)h(v)-5
-b(alue)150 3397 y(is)36 b(exactly)j Fs(<space><tab><newline>)p
-Ft(,)32 b(the)37 b(default,)h(then)e(sequences)h(of)67
-b Fs(<space>)p Ft(,)36 b Fs(<tab>)p Ft(,)h(and)150 3506
-y Fs(<newline>)28 b Ft(at)k(the)f(b)s(eginning)f(and)h(end)f(of)h(the)g
+(terminators.)39 b(If)22 b Ft(IFS)g Fu(is)h(unset,)h(or)e(its)h(v)-5
+b(alue)150 3397 y(is)36 b(exactly)j Ft(<space><tab><newline>)p
+Fu(,)32 b(the)37 b(default,)h(then)e(sequences)h(of)67
+b Ft(<space>)p Fu(,)36 b Ft(<tab>)p Fu(,)h(and)150 3506
+y Ft(<newline>)28 b Fu(at)k(the)f(b)s(eginning)f(and)h(end)f(of)h(the)g
(results)g(of)g(the)g(previous)g(expansions)f(are)i(ignored,)150
-3616 y(and)k(an)m(y)h(sequence)h(of)f Fs(IFS)f Ft(c)m(haracters)i(not)f
+3616 y(and)k(an)m(y)h(sequence)h(of)f Ft(IFS)f Fu(c)m(haracters)i(not)f
(at)h(the)f(b)s(eginning)f(or)h(end)f(serv)m(es)h(to)h(delimit)f(w)m
-(ords.)150 3725 y(If)43 b Fs(IFS)f Ft(has)h(a)h(v)-5
+(ords.)150 3725 y(If)43 b Ft(IFS)f Fu(has)h(a)h(v)-5
b(alue)43 b(other)h(than)f(the)g(default,)k(then)c(sequences)h(of)f
-(the)h(whitespace)f(c)m(haracters)150 3835 y Fs(space)26
-b Ft(and)h Fs(tab)g Ft(are)h(ignored)g(at)h(the)f(b)s(eginning)f(and)g
+(the)h(whitespace)f(c)m(haracters)150 3835 y Ft(space)26
+b Fu(and)h Ft(tab)g Fu(are)h(ignored)g(at)h(the)f(b)s(eginning)f(and)g
(end)g(of)h(the)g(w)m(ord,)g(as)g(long)g(as)g(the)g(whitespace)150
3945 y(c)m(haracter)34 b(is)f(in)f(the)h(v)-5 b(alue)33
-b(of)f Fs(IFS)g Ft(\(an)h Fs(IFS)e Ft(whitespace)j(c)m(haracter\).)49
-b(An)m(y)32 b(c)m(haracter)i(in)f Fs(IFS)e Ft(that)150
-4054 y(is)f(not)h Fs(IFS)f Ft(whitespace,)h(along)g(with)f(an)m(y)h
-(adjacen)m(t)h Fs(IFS)d Ft(whitespace)i(c)m(haracters,)h(delimits)f(a)g
-(\014eld.)150 4164 y(A)h(sequence)h(of)f Fs(IFS)f Ft(whitespace)i(c)m
+b(of)f Ft(IFS)g Fu(\(an)h Ft(IFS)e Fu(whitespace)j(c)m(haracter\).)49
+b(An)m(y)32 b(c)m(haracter)i(in)f Ft(IFS)e Fu(that)150
+4054 y(is)f(not)h Ft(IFS)f Fu(whitespace,)h(along)g(with)f(an)m(y)h
+(adjacen)m(t)h Ft(IFS)d Fu(whitespace)i(c)m(haracters,)h(delimits)f(a)g
+(\014eld.)150 4164 y(A)h(sequence)h(of)f Ft(IFS)f Fu(whitespace)i(c)m
(haracters)h(is)e(also)h(treated)g(as)g(a)f(delimiter.)47
-b(If)32 b(the)g(v)-5 b(alue)33 b(of)f Fs(IFS)150 4273
-y Ft(is)e(n)m(ull,)h(no)f(w)m(ord)g(splitting)h(o)s(ccurs.)275
-4412 y(Explicit)44 b(n)m(ull)f(argumen)m(ts)g(\()p Fs("")g
-Ft(or)h Fs('')p Ft(\))f(are)g(retained.)80 b(Unquoted)43
+b(If)32 b(the)g(v)-5 b(alue)33 b(of)f Ft(IFS)150 4273
+y Fu(is)e(n)m(ull,)h(no)f(w)m(ord)g(splitting)h(o)s(ccurs.)275
+4412 y(Explicit)44 b(n)m(ull)f(argumen)m(ts)g(\()p Ft("")g
+Fu(or)h Ft('')p Fu(\))f(are)g(retained.)80 b(Unquoted)43
b(implicit)h(n)m(ull)f(argumen)m(ts,)150 4522 y(resulting)24
b(from)f(the)g(expansion)g(of)h(parameters)g(that)g(ha)m(v)m(e)h(no)e
(v)-5 b(alues,)25 b(are)f(remo)m(v)m(ed.)40 b(If)23 b(a)g(parameter)150
4631 y(with)30 b(no)g(v)-5 b(alue)31 b(is)g(expanded)e(within)h(double)
g(quotes,)h(a)g(n)m(ull)f(argumen)m(t)h(results)f(and)g(is)g(retained.)
275 4770 y(Note)h(that)g(if)g(no)f(expansion)g(o)s(ccurs,)g(no)h
-(splitting)g(is)f(p)s(erformed.)150 4974 y Fj(3.5.8)63
-b(Filename)41 b(Expansion)150 5121 y Ft(After)26 b(w)m(ord)g
-(splitting,)i(unless)d(the)i(`)p Fs(-f)p Ft(')f(option)g(has)g(b)s(een)
-f(set)i(\(see)g(Section)g(4.3.1)h([The)e(Set)g(Builtin],)150
-5230 y(page)h(59\),)i(Bash)d(scans)h(eac)m(h)h(w)m(ord)e(for)g(the)h(c)
-m(haracters)g(`)p Fs(*)p Ft(',)h(`)p Fs(?)p Ft(',)g(and)e(`)p
-Fs([)p Ft('.)39 b(If)26 b(one)h(of)g(these)f(c)m(haracters)150
+(splitting)g(is)f(p)s(erformed.)150 4974 y Fk(3.5.8)63
+b(Filename)41 b(Expansion)150 5121 y Fu(After)30 b(w)m(ord)f
+(splitting,)i(unless)d(the)i Ft(-f)f Fu(option)h(has)f(b)s(een)g(set)h
+(\(see)g(Section)h(4.3.1)g([The)e(Set)h(Builtin],)150
+5230 y(page)d(58\),)i(Bash)d(scans)h(eac)m(h)h(w)m(ord)e(for)g(the)h(c)
+m(haracters)g(`)p Ft(*)p Fu(',)h(`)p Ft(?)p Fu(',)g(and)e(`)p
+Ft([)p Fu('.)39 b(If)26 b(one)h(of)g(these)f(c)m(haracters)150
5340 y(app)s(ears,)h(then)f(the)h(w)m(ord)f(is)h(regarded)g(as)g(a)g
-Fq(pattern)p Ft(,)g(and)g(replaced)g(with)f(an)h(alphab)s(etically)h
+Fr(pattern)p Fu(,)g(and)g(replaced)g(with)f(an)h(alphab)s(etically)h
(sorted)p eop end
%%Page: 30 36
-TeXDict begin 30 35 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 30 35 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(30)150 299
y(list)32 b(of)f(\014lenames)g(matc)m(hing)h(the)f(pattern)g(\(see)h
(Section)f(3.5.8.1)j([P)m(attern)e(Matc)m(hing],)h(page)f(30\).)43
b(If)150 408 y(no)26 b(matc)m(hing)i(\014lenames)e(are)h(found,)f(and)g
-(the)h(shell)f(option)h Fs(nullglob)d Ft(is)j(disabled,)g(the)g(w)m
+(the)h(shell)f(option)h Ft(nullglob)d Fu(is)j(disabled,)g(the)g(w)m
(ord)f(is)g(left)150 518 y(unc)m(hanged.)40 b(If)30 b(the)g
-Fs(nullglob)e Ft(option)i(is)h(set,)f(and)g(no)g(matc)m(hes)h(are)g
+Ft(nullglob)e Fu(option)i(is)h(set,)f(and)g(no)g(matc)m(hes)h(are)g
(found,)e(the)h(w)m(ord)g(is)g(remo)m(v)m(ed.)150 628
-y(If)i(the)g Fs(failglob)e Ft(shell)i(option)h(is)f(set,)h(and)f(no)g
+y(If)i(the)g Ft(failglob)e Fu(shell)i(option)h(is)f(set,)h(and)f(no)g
(matc)m(hes)h(are)g(found,)e(an)h(error)g(message)h(is)f(prin)m(ted)150
737 y(and)e(the)g(command)g(is)h(not)f(executed.)42 b(If)30
-b(the)g(shell)h(option)g Fs(nocaseglob)c Ft(is)k(enabled,)f(the)h(matc)
+b(the)g(shell)h(option)g Ft(nocaseglob)c Fu(is)k(enabled,)f(the)h(matc)
m(h)g(is)150 847 y(p)s(erformed)e(without)h(regard)h(to)g(the)f(case)i
(of)e(alphab)s(etic)h(c)m(haracters.)275 985 y(When)23
b(a)h(pattern)f(is)h(used)f(for)g(\014lename)h(expansion,)h(the)e(c)m
-(haracter)i(`)p Fs(.)p Ft(')f(at)g(the)g(start)g(of)g(a)g(\014lename)
+(haracter)i(`)p Ft(.)p Fu(')f(at)g(the)g(start)g(of)g(a)g(\014lename)
150 1095 y(or)f(immediately)i(follo)m(wing)g(a)f(slash)f(m)m(ust)h(b)s
(e)f(matc)m(hed)h(explicitly)-8 b(,)27 b(unless)c(the)g(shell)h(option)
-g Fs(dotglob)150 1205 y Ft(is)33 b(set.)51 b(When)33
+g Ft(dotglob)150 1205 y Fu(is)33 b(set.)51 b(When)33
b(matc)m(hing)h(a)g(\014lename,)h(the)e(slash)h(c)m(haracter)h(m)m(ust)
e(alw)m(a)m(ys)i(b)s(e)e(matc)m(hed)h(explicitly)-8 b(.)150
-1314 y(In)30 b(other)g(cases,)i(the)e(`)p Fs(.)p Ft(')h(c)m(haracter)h
+1314 y(In)30 b(other)g(cases,)i(the)e(`)p Ft(.)p Fu(')h(c)m(haracter)h
(is)e(not)h(treated)g(sp)s(ecially)-8 b(.)275 1453 y(See)28
-b(the)g(description)g(of)g Fs(shopt)e Ft(in)i(Section)g(4.3.2)i([The)e
-(Shopt)f(Builtin],)i(page)g(63,)g(for)f(a)g(descrip-)150
-1562 y(tion)j(of)f(the)h Fs(nocaseglob)p Ft(,)d Fs(nullglob)p
-Ft(,)g Fs(failglob)p Ft(,)h(and)g Fs(dotglob)g Ft(options.)275
-1701 y(The)j Fs(GLOBIGNORE)f Ft(shell)i(v)-5 b(ariable)34
+b(the)g(description)g(of)g Ft(shopt)e Fu(in)i(Section)g(4.3.2)i([The)e
+(Shopt)f(Builtin],)i(page)g(62,)g(for)f(a)g(descrip-)150
+1562 y(tion)j(of)f(the)h Ft(nocaseglob)p Fu(,)d Ft(nullglob)p
+Fu(,)g Ft(failglob)p Fu(,)h(and)g Ft(dotglob)g Fu(options.)275
+1701 y(The)j Ft(GLOBIGNORE)f Fu(shell)i(v)-5 b(ariable)34
b(ma)m(y)g(b)s(e)f(used)f(to)i(restrict)g(the)g(set)f(of)h(\014lenames)
-f(matc)m(hing)i(a)150 1811 y(pattern.)k(If)25 b Fs(GLOBIGNORE)e
-Ft(is)j(set,)h(eac)m(h)g(matc)m(hing)g(\014lename)f(that)g(also)h(matc)
-m(hes)f(one)g(of)g(the)g(patterns)150 1920 y(in)33 b
-Fs(GLOBIGNORE)d Ft(is)j(remo)m(v)m(ed)h(from)e(the)i(list)f(of)g(matc)m
-(hes.)50 b(The)33 b(\014lenames)g(`)p Fs(.)p Ft(')g(and)f(`)p
-Fs(..)p Ft(')h(are)g(alw)m(a)m(ys)150 2030 y(ignored)g(when)e
-Fs(GLOBIGNORE)f Ft(is)j(set)g(and)f(not)h(n)m(ull.)48
-b(Ho)m(w)m(ev)m(er,)35 b(setting)f Fs(GLOBIGNORE)c Ft(to)j(a)g(non-n)m
+f(matc)m(hing)i(a)150 1811 y(pattern.)k(If)25 b Ft(GLOBIGNORE)e
+Fu(is)j(set,)h(eac)m(h)g(matc)m(hing)g(\014lename)f(that)g(also)h(matc)
+m(hes)f(one)g(of)g(the)g(patterns)150 1920 y(in)39 b
+Ft(GLOBIGNORE)d Fu(is)j(remo)m(v)m(ed)h(from)e(the)h(list)h(of)f(matc)m
+(hes.)67 b(The)39 b(\014lenames)g Ft(.)f Fu(and)h Ft(..)f
+Fu(are)h(alw)m(a)m(ys)150 2030 y(ignored)33 b(when)e
+Ft(GLOBIGNORE)f Fu(is)j(set)g(and)f(not)h(n)m(ull.)48
+b(Ho)m(w)m(ev)m(er,)35 b(setting)f Ft(GLOBIGNORE)c Fu(to)j(a)g(non-n)m
(ull)150 2139 y(v)-5 b(alue)34 b(has)f(the)h(e\013ect)h(of)f(enabling)g
-(the)g Fs(dotglob)e Ft(shell)h(option,)j(so)e(all)g(other)g
+(the)g Ft(dotglob)e Fu(shell)h(option,)j(so)e(all)g(other)g
(\014lenames)g(b)s(eginning)150 2249 y(with)43 b(a)h(`)p
-Fs(.)p Ft(')f(will)h(matc)m(h.)80 b(T)-8 b(o)44 b(get)h(the)e(old)h(b)s
+Ft(.)p Fu(')f(will)h(matc)m(h.)80 b(T)-8 b(o)44 b(get)h(the)e(old)h(b)s
(eha)m(vior)f(of)h(ignoring)f(\014lenames)h(b)s(eginning)f(with)g(a)150
-2359 y(`)p Fs(.)p Ft(',)c(mak)m(e)g(`)p Fs(.*)p Ft(')e(one)g(of)g(the)h
-(patterns)f(in)g Fs(GLOBIGNORE)p Ft(.)58 b(The)37 b Fs(dotglob)e
-Ft(option)j(is)f(disabled)g(when)150 2468 y Fs(GLOBIGNORE)28
-b Ft(is)i(unset.)150 2672 y Fj(3.5.8.1)63 b(P)m(attern)40
-b(Matc)m(hing)150 2819 y Ft(An)m(y)24 b(c)m(haracter)h(that)f(app)s
+2359 y(`)p Ft(.)p Fu(',)c(mak)m(e)g(`)p Ft(.*)p Fu(')e(one)g(of)g(the)h
+(patterns)f(in)g Ft(GLOBIGNORE)p Fu(.)58 b(The)37 b Ft(dotglob)e
+Fu(option)j(is)f(disabled)g(when)150 2468 y Ft(GLOBIGNORE)28
+b Fu(is)i(unset.)150 2672 y Fk(3.5.8.1)63 b(P)m(attern)40
+b(Matc)m(hing)150 2819 y Fu(An)m(y)24 b(c)m(haracter)h(that)f(app)s
(ears)f(in)g(a)h(pattern,)i(other)e(than)f(the)h(sp)s(ecial)g(pattern)g
(c)m(haracters)h(describ)s(ed)150 2928 y(b)s(elo)m(w,)31
-b(matc)m(hes)g(itself.)42 b(The)29 b Fl(nul)h Ft(c)m(haracter)i(ma)m(y)
+b(matc)m(hes)g(itself.)42 b(The)29 b Fm(nul)h Fu(c)m(haracter)i(ma)m(y)
e(not)h(o)s(ccur)f(in)g(a)h(pattern.)40 b(A)31 b(bac)m(kslash)g(escap)s
(es)150 3038 y(the)38 b(follo)m(wing)g(c)m(haracter;)43
b(the)37 b(escaping)i(bac)m(kslash)e(is)h(discarded)f(when)f(matc)m
b(c)m(haracters)i(m)m(ust)f(b)s(e)e(quoted)i(if)f(they)h(are)f(to)i(b)s
(e)d(matc)m(hed)i(literally)-8 b(.)275 3286 y(The)29
b(sp)s(ecial)i(pattern)g(c)m(haracters)h(ha)m(v)m(e)f(the)g(follo)m
-(wing)h(meanings:)150 3452 y Fs(*)432 b Ft(Matc)m(hes)31
+(wing)h(meanings:)150 3452 y Ft(*)432 b Fu(Matc)m(hes)31
b(an)m(y)e(string,)h(including)f(the)g(n)m(ull)g(string.)41
-b(When)29 b(the)g Fs(globstar)e Ft(shell)i(option)630
-3561 y(is)37 b(enabled,)h(and)e(`)p Fs(*)p Ft(')h(is)g(used)f(in)g(a)h
+b(When)29 b(the)g Ft(globstar)e Fu(shell)i(option)630
+3561 y(is)37 b(enabled,)h(and)e(`)p Ft(*)p Fu(')h(is)g(used)f(in)g(a)h
(\014lename)g(expansion)g(con)m(text,)j(t)m(w)m(o)e(adjacen)m(t)g(`)p
-Fs(*)p Ft('s)630 3671 y(used)f(as)g(a)h(single)g(pattern)g(will)f(matc)
+Ft(*)p Fu('s)630 3671 y(used)f(as)g(a)h(single)g(pattern)g(will)f(matc)
m(h)i(all)f(\014les)f(and)g(zero)h(or)g(more)f(directories)i(and)630
3780 y(sub)s(directories.)g(If)25 b(follo)m(w)m(ed)j(b)m(y)e(a)g(`)p
-Fs(/)p Ft(',)h(t)m(w)m(o)g(adjacen)m(t)h(`)p Fs(*)p Ft('s)e(will)g
+Ft(/)p Fu(',)h(t)m(w)m(o)g(adjacen)m(t)h(`)p Ft(*)p Fu('s)e(will)g
(matc)m(h)h(only)f(directories)630 3890 y(and)k(sub)s(directories.)150
-4054 y Fs(?)432 b Ft(Matc)m(hes)32 b(an)m(y)f(single)g(c)m(haracter.)
-150 4217 y Fs([...)o(])241 b Ft(Matc)m(hes)27 b(an)m(y)e(one)g(of)g
+4054 y Ft(?)432 b Fu(Matc)m(hes)32 b(an)m(y)f(single)g(c)m(haracter.)
+150 4217 y Ft([...)o(])241 b Fu(Matc)m(hes)27 b(an)m(y)e(one)g(of)g
(the)g(enclosed)g(c)m(haracters.)41 b(A)25 b(pair)f(of)h(c)m(haracters)
i(separated)e(b)m(y)g(a)630 4327 y(h)m(yphen)k(denotes)i(a)g
-Fq(range)g(expression)p Ft(;)f(an)m(y)h(c)m(haracter)h(that)f(falls)g
+Fr(range)g(expression)p Fu(;)f(an)m(y)h(c)m(haracter)h(that)f(falls)g
(b)s(et)m(w)m(een)g(those)g(t)m(w)m(o)630 4436 y(c)m(haracters,)d
(inclusiv)m(e,)f(using)d(the)h(curren)m(t)f(lo)s(cale's)j(collating)g
(sequence)e(and)f(c)m(haracter)630 4546 y(set,)31 b(is)f(matc)m(hed.)42
b(If)30 b(the)g(\014rst)g(c)m(haracter)i(follo)m(wing)g(the)e(`)p
-Fs([)p Ft(')h(is)f(a)h(`)p Fs(!)p Ft(')f(or)g(a)h(`)p
-Fs(^)p Ft(')g(then)f(an)m(y)630 4655 y(c)m(haracter)c(not)f(enclosed)g
-(is)g(matc)m(hed.)40 b(A)25 b(`)p Fp(\000)p Ft(')f(ma)m(y)i(b)s(e)e
+Ft([)p Fu(')h(is)f(a)h(`)p Ft(!)p Fu(')f(or)g(a)h(`)p
+Ft(^)p Fu(')g(then)f(an)m(y)630 4655 y(c)m(haracter)c(not)f(enclosed)g
+(is)g(matc)m(hed.)40 b(A)25 b(`)p Fq(\000)p Fu(')f(ma)m(y)i(b)s(e)e
(matc)m(hed)h(b)m(y)f(including)h(it)g(as)g(the)630 4765
y(\014rst)32 b(or)h(last)h(c)m(haracter)h(in)e(the)g(set.)50
-b(A)33 b(`)p Fs(])p Ft(')g(ma)m(y)h(b)s(e)e(matc)m(hed)i(b)m(y)f
+b(A)33 b(`)p Ft(])p Fu(')g(ma)m(y)h(b)s(e)e(matc)m(hed)i(b)m(y)f
(including)g(it)g(as)h(the)630 4875 y(\014rst)25 b(c)m(haracter)i(in)e
(the)h(set.)40 b(The)25 b(sorting)h(order)f(of)h(c)m(haracters)h(in)f
(range)g(expressions)f(is)630 4984 y(determined)h(b)m(y)h(the)g(curren)
m(t)f(lo)s(cale)j(and)d(the)h(v)-5 b(alues)27 b(of)g(the)g
-Fs(LC_COLLATE)d Ft(and)i Fs(LC_ALL)630 5094 y Ft(shell)31
+Ft(LC_COLLATE)d Fu(and)i Ft(LC_ALL)630 5094 y Fu(shell)31
b(v)-5 b(ariables,)31 b(if)f(set.)630 5230 y(F)-8 b(or)34
b(example,)g(in)f(the)g(default)g(C)f(lo)s(cale,)k(`)p
-Fs([a-dx-z])p Ft(')31 b(is)i(equiv)-5 b(alen)m(t)34 b(to)g(`)p
-Fs([abcdxyz])p Ft('.)630 5340 y(Man)m(y)68 b(lo)s(cales)h(sort)f(c)m
+Ft([a-dx-z])p Fu(')31 b(is)i(equiv)-5 b(alen)m(t)34 b(to)g(`)p
+Ft([abcdxyz])p Fu('.)630 5340 y(Man)m(y)68 b(lo)s(cales)h(sort)f(c)m
(haracters)h(in)e(dictionary)i(order,)76 b(and)67 b(in)g(these)h(lo)s
(cales)p eop end
%%Page: 31 37
-TeXDict begin 31 36 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 31 36 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(31)630 299
-y(`)p Fs([a-dx-z])p Ft(')36 b(is)i(t)m(ypically)i(not)e(equiv)-5
-b(alen)m(t)39 b(to)g(`)p Fs([abcdxyz])p Ft(';)g(it)g(migh)m(t)f(b)s(e)f
-(equiv)-5 b(alen)m(t)630 408 y(to)34 b(`)p Fs([aBbCcDdxXyYz])p
-Ft(',)c(for)j(example.)49 b(T)-8 b(o)33 b(obtain)h(the)f(traditional)h
+y(`)p Ft([a-dx-z])p Fu(')36 b(is)i(t)m(ypically)i(not)e(equiv)-5
+b(alen)m(t)39 b(to)g(`)p Ft([abcdxyz])p Fu(';)g(it)g(migh)m(t)f(b)s(e)f
+(equiv)-5 b(alen)m(t)630 408 y(to)34 b(`)p Ft([aBbCcDdxXyYz])p
+Fu(',)c(for)j(example.)49 b(T)-8 b(o)33 b(obtain)h(the)f(traditional)h
(in)m(terpretation)h(of)630 518 y(ranges)e(in)f(brac)m(k)m(et)i
(expressions,)g(y)m(ou)f(can)g(force)g(the)g(use)f(of)h(the)g(C)f(lo)s
-(cale)i(b)m(y)f(setting)630 628 y(the)c Fs(LC_COLLATE)e
-Ft(or)i Fs(LC_ALL)f Ft(en)m(vironmen)m(t)i(v)-5 b(ariable)30
-b(to)g(the)f(v)-5 b(alue)30 b(`)p Fs(C)p Ft(',)g(or)f(enable)h(the)630
-737 y Fs(globasciiranges)c Ft(shell)31 b(option.)630
-874 y(Within)23 b(`)p Fs([)p Ft(')h(and)e(`)p Fs(])p
-Ft(',)j Fq(c)m(haracter)g(classes)j Ft(can)c(b)s(e)e(sp)s(eci\014ed)h
-(using)f(the)i(syn)m(tax)f Fs([:)p Fq(class)t Fs(:])p
-Ft(,)630 983 y(where)30 b Fq(class)35 b Ft(is)30 b(one)h(of)f(the)h
-(follo)m(wing)h(classes)f(de\014ned)e(in)h(the)h Fl(posix)f
-Ft(standard:)870 1119 y Fs(alnum)142 b(alpha)g(ascii)f(blank)h(cntrl)g
+(cale)i(b)m(y)f(setting)630 628 y(the)c Ft(LC_COLLATE)e
+Fu(or)i Ft(LC_ALL)f Fu(en)m(vironmen)m(t)i(v)-5 b(ariable)30
+b(to)g(the)f(v)-5 b(alue)30 b(`)p Ft(C)p Fu(',)g(or)f(enable)h(the)630
+737 y Ft(globasciiranges)c Fu(shell)31 b(option.)630
+874 y(Within)23 b(`)p Ft([)p Fu(')h(and)e(`)p Ft(])p
+Fu(',)j Fr(c)m(haracter)g(classes)j Fu(can)c(b)s(e)e(sp)s(eci\014ed)h
+(using)f(the)i(syn)m(tax)f Ft([:)p Fr(class)t Ft(:])p
+Fu(,)630 983 y(where)30 b Fr(class)35 b Fu(is)30 b(one)h(of)f(the)h
+(follo)m(wing)h(classes)f(de\014ned)e(in)h(the)h Fm(posix)f
+Fu(standard:)870 1119 y Ft(alnum)142 b(alpha)g(ascii)f(blank)h(cntrl)g
(digit)g(graph)g(lower)870 1229 y(print)g(punct)g(space)f(upper)h(word)
-190 b(xdigit)630 1365 y Ft(A)42 b(c)m(haracter)h(class)f(matc)m(hes)h
+190 b(xdigit)630 1365 y Fu(A)42 b(c)m(haracter)h(class)f(matc)m(hes)h
(an)m(y)f(c)m(haracter)h(b)s(elonging)f(to)g(that)g(class.)75
-b(The)41 b Fs(word)630 1475 y Ft(c)m(haracter)32 b(class)f(matc)m(hes)h
+b(The)41 b Ft(word)630 1475 y Fu(c)m(haracter)32 b(class)f(matc)m(hes)h
(letters,)f(digits,)h(and)d(the)i(c)m(haracter)h(`)p
-Fs(_)p Ft('.)630 1611 y(Within)25 b(`)p Fs([)p Ft(')f(and)g(`)p
-Fs(])p Ft(',)i(an)e Fq(equiv)-5 b(alence)26 b(class)j
-Ft(can)24 b(b)s(e)g(sp)s(eci\014ed)g(using)g(the)g(syn)m(tax)h
-Fs([=)p Fq(c)6 b Fs(=])p Ft(,)630 1721 y(whic)m(h)29
+Ft(_)p Fu('.)630 1611 y(Within)25 b(`)p Ft([)p Fu(')f(and)g(`)p
+Ft(])p Fu(',)i(an)e Fr(equiv)-5 b(alence)26 b(class)j
+Fu(can)24 b(b)s(e)g(sp)s(eci\014ed)g(using)g(the)g(syn)m(tax)h
+Ft([=)p Fr(c)6 b Ft(=])p Fu(,)630 1721 y(whic)m(h)29
b(matc)m(hes)i(all)f(c)m(haracters)h(with)e(the)h(same)g(collation)h(w)
m(eigh)m(t)g(\(as)f(de\014ned)e(b)m(y)i(the)630 1830
y(curren)m(t)g(lo)s(cale\))j(as)d(the)h(c)m(haracter)h
-Fq(c)6 b Ft(.)630 1967 y(Within)21 b(`)p Fs([)p Ft(')h(and)e(`)p
-Fs(])p Ft(',)j(the)f(syn)m(tax)f Fs([.)p Fq(sym)m(b)s(ol)t
-Fs(.])f Ft(matc)m(hes)i(the)f(collating)j(sym)m(b)s(ol)c
-Fq(sym)m(b)s(ol)t Ft(.)275 2132 y(If)29 b(the)g Fs(extglob)f
-Ft(shell)h(option)h(is)g(enabled)f(using)g(the)h Fs(shopt)e
-Ft(builtin,)h(sev)m(eral)i(extended)f(pattern)150 2241
+Fr(c)p Fu(.)630 1967 y(Within)22 b(`)p Ft([)p Fu(')f(and)g(`)p
+Ft(])p Fu(',)j(the)d(syn)m(tax)h Ft([.)p Fr(sym)m(b)s(ol)t
+Ft(.])e Fu(matc)m(hes)i(the)g(collating)i(sym)m(b)s(ol)d
+Fr(sym)m(b)s(ol)p Fu(.)275 2132 y(If)29 b(the)g Ft(extglob)f
+Fu(shell)h(option)h(is)g(enabled)f(using)g(the)h Ft(shopt)e
+Fu(builtin,)h(sev)m(eral)i(extended)f(pattern)150 2241
y(matc)m(hing)37 b(op)s(erators)e(are)h(recognized.)58
-b(In)35 b(the)g(follo)m(wing)i(description,)g(a)f Fq(pattern-list)j
-Ft(is)d(a)g(list)g(of)150 2351 y(one)d(or)f(more)h(patterns)f
-(separated)h(b)m(y)f(a)h(`)p Fs(|)p Ft('.)47 b(Comp)s(osite)33
+b(In)35 b(the)g(follo)m(wing)i(description,)g(a)f Fr(pattern-list)j
+Fu(is)d(a)g(list)g(of)150 2351 y(one)d(or)f(more)h(patterns)f
+(separated)h(b)m(y)f(a)h(`)p Ft(|)p Fu('.)47 b(Comp)s(osite)33
b(patterns)f(ma)m(y)i(b)s(e)d(formed)h(using)g(one)h(or)150
2460 y(more)e(of)f(the)h(follo)m(wing)g(sub-patterns:)150
-2625 y Fs(?\()p Fi(pattern-list)11 b Fs(\))630 2735 y
-Ft(Matc)m(hes)32 b(zero)f(or)g(one)f(o)s(ccurrence)h(of)f(the)h(giv)m
-(en)g(patterns.)150 2898 y Fs(*\()p Fi(pattern-list)11
-b Fs(\))630 3008 y Ft(Matc)m(hes)32 b(zero)f(or)g(more)f(o)s
-(ccurrences)h(of)f(the)h(giv)m(en)g(patterns.)150 3171
-y Fs(+\()p Fi(pattern-list)11 b Fs(\))630 3280 y Ft(Matc)m(hes)32
-b(one)f(or)f(more)h(o)s(ccurrences)f(of)h(the)f(giv)m(en)i(patterns.)
-150 3443 y Fs(@\()p Fi(pattern-list)11 b Fs(\))630 3553
-y Ft(Matc)m(hes)32 b(one)f(of)f(the)h(giv)m(en)g(patterns.)150
-3716 y Fs(!\()p Fi(pattern-list)11 b Fs(\))630 3826 y
-Ft(Matc)m(hes)32 b(an)m(ything)f(except)g(one)g(of)f(the)h(giv)m(en)g
-(patterns.)150 4029 y Fj(3.5.9)63 b(Quote)41 b(Remo)m(v)-7
-b(al)150 4175 y Ft(After)32 b(the)g(preceding)g(expansions,)h(all)f
+2625 y Ft(?\()p Fj(pattern-list)p Ft(\))630 2735 y Fu(Matc)m(hes)h
+(zero)f(or)g(one)f(o)s(ccurrence)h(of)f(the)h(giv)m(en)g(patterns.)150
+2898 y Ft(*\()p Fj(pattern-list)p Ft(\))630 3008 y Fu(Matc)m(hes)h
+(zero)f(or)g(more)f(o)s(ccurrences)h(of)f(the)h(giv)m(en)g(patterns.)
+150 3171 y Ft(+\()p Fj(pattern-list)p Ft(\))630 3280
+y Fu(Matc)m(hes)h(one)f(or)f(more)h(o)s(ccurrences)f(of)h(the)f(giv)m
+(en)i(patterns.)150 3443 y Ft(@\()p Fj(pattern-list)p
+Ft(\))630 3553 y Fu(Matc)m(hes)g(one)f(of)f(the)h(giv)m(en)g(patterns.)
+150 3716 y Ft(!\()p Fj(pattern-list)p Ft(\))630 3826
+y Fu(Matc)m(hes)h(an)m(ything)f(except)g(one)g(of)f(the)h(giv)m(en)g
+(patterns.)150 4029 y Fk(3.5.9)63 b(Quote)41 b(Remo)m(v)-7
+b(al)150 4175 y Fu(After)32 b(the)g(preceding)g(expansions,)h(all)f
(unquoted)f(o)s(ccurrences)h(of)g(the)h(c)m(haracters)g(`)p
-Fs(\\)p Ft(',)g(`)p Fs(')p Ft(',)f(and)g(`)p Fs(")p Ft(')150
+Ft(\\)p Fu(',)g(`)p Ft(')p Fu(',)f(and)g(`)p Ft(")p Fu(')150
4285 y(that)f(did)f(not)g(result)g(from)g(one)h(of)g(the)f(ab)s(o)m(v)m
-(e)i(expansions)e(are)h(remo)m(v)m(ed.)150 4523 y Fr(3.6)68
-b(Redirections)150 4682 y Ft(Before)32 b(a)f(command)f(is)h(executed,)h
-(its)f(input)e(and)h(output)h(ma)m(y)g(b)s(e)f Fq(redirected)k
-Ft(using)c(a)i(sp)s(ecial)f(no-)150 4792 y(tation)d(in)m(terpreted)f(b)
+(e)i(expansions)e(are)h(remo)m(v)m(ed.)150 4523 y Fs(3.6)68
+b(Redirections)150 4682 y Fu(Before)32 b(a)f(command)f(is)h(executed,)h
+(its)f(input)e(and)h(output)h(ma)m(y)g(b)s(e)f Fr(redirected)k
+Fu(using)c(a)i(sp)s(ecial)f(no-)150 4792 y(tation)d(in)m(terpreted)f(b)
m(y)f(the)h(shell.)40 b(Redirection)27 b(allo)m(ws)h(commands')f
(\014le)f(handles)g(to)i(b)s(e)e(duplicated,)150 4902
y(op)s(ened,)i(closed,)i(made)e(to)h(refer)f(to)h(di\013eren)m(t)f
(they)g(app)s(ear,)g(from)g(left)h(to)g(righ)m(t.)p eop
end
%%Page: 32 38
-TeXDict begin 32 37 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 32 37 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(32)275 299
y(Eac)m(h)45 b(redirection)h(that)f(ma)m(y)h(b)s(e)e(preceded)g(b)m(y)h
(a)h(\014le)f(descriptor)f(n)m(um)m(b)s(er)g(ma)m(y)h(instead)h(b)s(e)
-150 408 y(preceded)41 b(b)m(y)g(a)g(w)m(ord)g(of)g(the)g(form)g
-Fs({)p Fq(v)-5 b(arname)5 b Fs(})p Ft(.)72 b(In)40 b(this)h(case,)k
-(for)c(eac)m(h)h(redirection)g(op)s(erator)150 518 y(except)30
-b Fs(>)p Ft(&-)f(and)f Fs(<)p Ft(&-,)h(the)g(shell)g(will)h(allo)s
+150 408 y(preceded)41 b(b)m(y)g(a)h(w)m(ord)f(of)g(the)h(form)f
+Fi({)p Fr(v)-5 b(arname)5 b Fi(})p Fu(.)74 b(In)41 b(this)g(case,)k
+(for)c(eac)m(h)i(redirection)f(op)s(erator)150 518 y(except)30
+b Ft(>)p Fu(&-)f(and)f Ft(<)p Fu(&-,)h(the)g(shell)g(will)h(allo)s
(cate)h(a)e(\014le)h(descriptor)e(greater)j(than)d(10)i(and)e(assign)i
-(it)f(to)150 628 y Fs({)p Fq(v)-5 b(arname)5 b Fs(})p
-Ft(.)42 b(If)31 b Fs(>)p Ft(&-)f(or)h Fs(<)p Ft(&-)g(is)g(preceded)g(b)
-m(y)g Fs({)p Fq(v)-5 b(arname)5 b Fs(})p Ft(,)31 b(the)g(v)-5
-b(alue)31 b(of)g Fq(v)-5 b(arname)37 b Ft(de\014nes)30
-b(the)h(\014le)150 737 y(descriptor)f(to)h(close.)275
+(it)f(to)150 628 y Fi({)p Fr(v)-5 b(arname)5 b Fi(})p
+Fu(.)45 b(If)31 b Ft(>)p Fu(&-)g(or)h Ft(<)p Fu(&-)f(is)h(preceded)f(b)
+m(y)g Fi({)p Fr(v)-5 b(arname)5 b Fi(})p Fu(,)33 b(the)f(v)-5
+b(alue)32 b(of)g Fr(v)-5 b(arname)36 b Fu(de\014nes)31
+b(the)h(\014le)150 737 y(descriptor)e(to)h(close.)275
890 y(In)c(the)i(follo)m(wing)h(descriptions,)g(if)e(the)h(\014le)g
(descriptor)f(n)m(um)m(b)s(er)g(is)g(omitted,)i(and)f(the)f(\014rst)g
(c)m(har-)150 999 y(acter)42 b(of)f(the)g(redirection)g(op)s(erator)g
-(is)g(`)p Fs(<)p Ft(',)i(the)e(redirection)g(refers)g(to)g(the)g
+(is)g(`)p Ft(<)p Fu(',)i(the)e(redirection)g(refers)g(to)g(the)g
(standard)f(input)f(\(\014le)150 1109 y(descriptor)33
b(0\).)49 b(If)33 b(the)g(\014rst)f(c)m(haracter)i(of)g(the)f
-(redirection)g(op)s(erator)h(is)f(`)p Fs(>)p Ft(',)h(the)f(redirection)
+(redirection)g(op)s(erator)h(is)f(`)p Ft(>)p Fu(',)h(the)f(redirection)
g(refers)150 1218 y(to)e(the)g(standard)e(output)h(\(\014le)h
(descriptor)f(1\).)275 1371 y(The)h(w)m(ord)h(follo)m(wing)i(the)f
(redirection)g(op)s(erator)f(in)g(the)h(follo)m(wing)h(descriptions,)f
(than)f(one)h(w)m(ord,)f(Bash)h(rep)s(orts)e(an)h(error.)275
1852 y(Note)h(that)g(the)g(order)f(of)g(redirections)h(is)g
(signi\014can)m(t.)41 b(F)-8 b(or)31 b(example,)h(the)e(command)390
-2004 y Fs(ls)47 b(>)h Fi(dirlist)56 b Fs(2>&1)150 2157
-y Ft(directs)28 b(b)s(oth)f(standard)g(output)g(\(\014le)h(descriptor)f
+2004 y Ft(ls)47 b(>)h Fj(dirlist)d Ft(2>&1)150 2157 y
+Fu(directs)28 b(b)s(oth)f(standard)g(output)g(\(\014le)h(descriptor)f
(1\))i(and)e(standard)f(error)i(\(\014le)g(descriptor)f(2\))h(to)h(the)
-150 2266 y(\014le)h Fq(dirlist)r Ft(,)h(while)f(the)h(command)390
-2419 y Fs(ls)47 b(2>&1)g(>)g Fi(dirlist)150 2571 y Ft(directs)28
-b(only)f(the)g(standard)g(output)g(to)h(\014le)f Fq(dirlist)r
-Ft(,)h(b)s(ecause)g(the)f(standard)g(error)g(w)m(as)g(made)h(a)f(cop)m
-(y)150 2681 y(of)k(the)f(standard)g(output)g(b)s(efore)g(the)g
-(standard)g(output)g(w)m(as)g(redirected)h(to)g Fq(dirlist)r
-Ft(.)275 2833 y(Bash)26 b(handles)f(sev)m(eral)j(\014lenames)e(sp)s
+150 2266 y(\014le)h Fr(dirlist)p Fu(,)h(while)f(the)h(command)390
+2419 y Ft(ls)47 b(2>&1)g(>)g Fj(dirlist)150 2571 y Fu(directs)28
+b(only)f(the)h(standard)e(output)i(to)g(\014le)f Fr(dirlist)p
+Fu(,)h(b)s(ecause)g(the)f(standard)g(error)g(w)m(as)h(made)f(a)h(cop)m
+(y)150 2681 y(of)j(the)f(standard)g(output)g(b)s(efore)g(the)g
+(standard)g(output)g(w)m(as)g(redirected)h(to)g Fr(dirlist)p
+Fu(.)275 2833 y(Bash)26 b(handles)f(sev)m(eral)j(\014lenames)e(sp)s
(ecially)h(when)f(they)g(are)g(used)g(in)g(redirections,)i(as)e
(describ)s(ed)150 2942 y(in)k(the)h(follo)m(wing)g(table:)150
-3129 y Fs(/dev/fd/)p Fi(fd)630 3238 y Ft(If)f Fq(fd)j
-Ft(is)d(a)h(v)-5 b(alid)31 b(in)m(teger,)h(\014le)e(descriptor)h
-Fq(fd)i Ft(is)d(duplicated.)150 3416 y Fs(/dev/stdin)630
-3525 y Ft(File)i(descriptor)e(0)h(is)f(duplicated.)150
-3702 y Fs(/dev/stdout)630 3812 y Ft(File)i(descriptor)e(1)h(is)f
-(duplicated.)150 3989 y Fs(/dev/stderr)630 4099 y Ft(File)i(descriptor)
-e(2)h(is)f(duplicated.)150 4276 y Fs(/dev/tcp/)p Fi(host)11
-b Fs(/)p Fi(port)630 4386 y Ft(If)41 b Fq(host)i Ft(is)f(a)g(v)-5
+3129 y Ft(/dev/fd/)p Fj(fd)630 3238 y Fu(If)f Fr(fd)j
+Fu(is)d(a)h(v)-5 b(alid)31 b(in)m(teger,)h(\014le)e(descriptor)h
+Fr(fd)i Fu(is)d(duplicated.)150 3416 y Ft(/dev/stdin)630
+3525 y Fu(File)i(descriptor)e(0)h(is)f(duplicated.)150
+3702 y Ft(/dev/stdout)630 3812 y Fu(File)i(descriptor)e(1)h(is)f
+(duplicated.)150 3989 y Ft(/dev/stderr)630 4099 y Fu(File)i(descriptor)
+e(2)h(is)f(duplicated.)150 4276 y Ft(/dev/tcp/)p Fj(host)p
+Ft(/)p Fj(port)630 4386 y Fu(If)41 b Fr(host)i Fu(is)f(a)g(v)-5
b(alid)41 b(hostname)h(or)f(In)m(ternet)h(address,)i(and)c
-Fq(p)s(ort)j Ft(is)f(an)f(in)m(teger)i(p)s(ort)630 4495
+Fr(p)s(ort)j Fu(is)f(an)f(in)m(teger)i(p)s(ort)630 4495
y(n)m(um)m(b)s(er)23 b(or)i(service)h(name,)g(Bash)f(attempts)h(to)f
(op)s(en)f(the)h(corresp)s(onding)f(TCP)g(so)s(c)m(k)m(et.)150
-4673 y Fs(/dev/udp/)p Fi(host)11 b Fs(/)p Fi(port)630
-4782 y Ft(If)41 b Fq(host)i Ft(is)f(a)g(v)-5 b(alid)41
-b(hostname)h(or)f(In)m(ternet)h(address,)i(and)c Fq(p)s(ort)j
-Ft(is)f(an)f(in)m(teger)i(p)s(ort)630 4892 y(n)m(um)m(b)s(er)23
-b(or)h(service)h(name,)h(Bash)e(attempts)h(to)g(op)s(en)f(the)g
-(corresp)s(onding)f(UDP)i(so)s(c)m(k)m(et.)275 5078 y(A)30
-b(failure)h(to)g(op)s(en)e(or)i(create)h(a)e(\014le)h(causes)g(the)f
-(redirection)h(to)g(fail.)275 5230 y(Redirections)f(using)e(\014le)i
-(descriptors)f(greater)h(than)f(9)h(should)e(b)s(e)h(used)f(with)h
-(care,)h(as)g(they)f(ma)m(y)150 5340 y(con\015ict)i(with)f(\014le)h
-(descriptors)f(the)g(shell)h(uses)f(in)m(ternally)-8
-b(.)p eop end
+4673 y Ft(/dev/udp/)p Fj(host)p Ft(/)p Fj(port)630 4782
+y Fu(If)41 b Fr(host)i Fu(is)f(a)g(v)-5 b(alid)41 b(hostname)h(or)f(In)
+m(ternet)h(address,)i(and)c Fr(p)s(ort)j Fu(is)f(an)f(in)m(teger)i(p)s
+(ort)630 4892 y(n)m(um)m(b)s(er)23 b(or)h(service)h(name,)h(Bash)e
+(attempts)h(to)g(op)s(en)f(the)g(corresp)s(onding)f(UDP)i(so)s(c)m(k)m
+(et.)275 5078 y(A)30 b(failure)h(to)g(op)s(en)e(or)i(create)h(a)e
+(\014le)h(causes)g(the)f(redirection)h(to)g(fail.)275
+5230 y(Redirections)f(using)e(\014le)i(descriptors)f(greater)h(than)f
+(9)h(should)e(b)s(e)h(used)f(with)h(care,)h(as)g(they)f(ma)m(y)150
+5340 y(con\015ict)i(with)f(\014le)h(descriptors)f(the)g(shell)h(uses)f
+(in)m(ternally)-8 b(.)p eop end
%%Page: 33 39
-TeXDict begin 33 38 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 33 38 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(33)150 299
-y Fj(3.6.1)63 b(Redirecting)40 b(Input)150 446 y Ft(Redirection)35
+y Fk(3.6.1)63 b(Redirecting)40 b(Input)150 446 y Fu(Redirection)35
b(of)f(input)f(causes)i(the)f(\014le)g(whose)g(name)g(results)g(from)g
-(the)g(expansion)g(of)g Fq(w)m(ord)k Ft(to)d(b)s(e)150
+(the)g(expansion)g(of)g Fr(w)m(ord)k Fu(to)d(b)s(e)150
555 y(op)s(ened)d(for)g(reading)g(on)g(\014le)h(descriptor)f
-Fs(n)p Ft(,)h(or)f(the)g(standard)g(input)f(\(\014le)i(descriptor)f
-(0\))h(if)f Fs(n)g Ft(is)h(not)150 665 y(sp)s(eci\014ed.)275
+Ft(n)p Fu(,)h(or)f(the)g(standard)g(input)f(\(\014le)i(descriptor)f
+(0\))h(if)f Ft(n)g Fu(is)h(not)150 665 y(sp)s(eci\014ed.)275
798 y(The)c(general)j(format)e(for)h(redirecting)g(input)e(is:)390
-930 y Fs([)p Fi(n)11 b Fs(]<)p Fi(word)150 1126 y Fj(3.6.2)63
-b(Redirecting)40 b(Output)150 1273 y Ft(Redirection)31
+930 y Ft([)p Fj(n)p Ft(]<)p Fj(word)150 1126 y Fk(3.6.2)63
+b(Redirecting)40 b(Output)150 1273 y Fu(Redirection)31
b(of)g(output)f(causes)h(the)f(\014le)h(whose)f(name)g(results)h(from)e
-(the)i(expansion)f(of)h Fq(w)m(ord)i Ft(to)f(b)s(e)150
+(the)i(expansion)f(of)h Fr(w)m(ord)i Fu(to)f(b)s(e)150
1382 y(op)s(ened)d(for)g(writing)g(on)g(\014le)h(descriptor)f
-Fq(n)p Ft(,)g(or)g(the)h(standard)e(output)h(\(\014le)h(descriptor)f
-(1\))h(if)g Fq(n)e Ft(is)i(not)150 1492 y(sp)s(eci\014ed.)40
+Fr(n)p Fu(,)g(or)g(the)h(standard)e(output)h(\(\014le)h(descriptor)f
+(1\))h(if)g Fr(n)e Fu(is)i(not)150 1492 y(sp)s(eci\014ed.)40
b(If)30 b(the)g(\014le)h(do)s(es)f(not)h(exist)g(it)g(is)f(created;)i
(if)e(it)h(do)s(es)f(exist)h(it)g(is)g(truncated)f(to)h(zero)g(size.)
275 1625 y(The)e(general)j(format)e(for)h(redirecting)g(output)f(is:)
-390 1757 y Fs([)p Fi(n)11 b Fs(]>[|])p Fi(word)275 1890
-y Ft(If)30 b(the)h(redirection)g(op)s(erator)g(is)g(`)p
-Fs(>)p Ft(',)g(and)f(the)h Fs(noclobber)d Ft(option)j(to)g(the)g
-Fs(set)f Ft(builtin)g(has)h(b)s(een)150 2000 y(enabled,)i(the)f
-(redirection)h(will)f(fail)h(if)f(the)g(\014le)g(whose)g(name)g
-(results)g(from)g(the)g(expansion)g(of)g Fq(w)m(ord)150
-2109 y Ft(exists)f(and)f(is)g(a)h(regular)g(\014le.)41
+390 1757 y Ft([)p Fj(n)p Ft(]>[|])p Fj(word)275 1890
+y Fu(If)g(the)h(redirection)g(op)s(erator)g(is)g(`)p
+Ft(>)p Fu(',)g(and)f(the)h Ft(noclobber)d Fu(option)j(to)g(the)g
+Ft(set)f Fu(builtin)g(has)h(b)s(een)150 2000 y(enabled,)h(the)g
+(redirection)h(will)f(fail)h(if)e(the)i(\014le)e(whose)h(name)g
+(results)g(from)f(the)h(expansion)g(of)g Fr(w)m(ord)150
+2109 y Fu(exists)f(and)f(is)g(a)h(regular)g(\014le.)41
b(If)30 b(the)h(redirection)g(op)s(erator)g(is)f(`)p
-Fs(>|)p Ft(',)h(or)f(the)h(redirection)g(op)s(erator)g(is)150
-2219 y(`)p Fs(>)p Ft(')36 b(and)f(the)g Fs(noclobber)e
-Ft(option)j(is)g(not)g(enabled,)h(the)e(redirection)h(is)g(attempted)g
+Ft(>|)p Fu(',)h(or)f(the)h(redirection)g(op)s(erator)g(is)150
+2219 y(`)p Ft(>)p Fu(')36 b(and)f(the)g Ft(noclobber)e
+Fu(option)j(is)g(not)g(enabled,)h(the)e(redirection)h(is)g(attempted)g
(ev)m(en)h(if)e(the)h(\014le)150 2328 y(named)30 b(b)m(y)g
-Fq(w)m(ord)k Ft(exists.)150 2524 y Fj(3.6.3)63 b(App)s(ending)42
-b(Redirected)e(Output)150 2671 y Ft(Redirection)23 b(of)e(output)h(in)f
+Fr(w)m(ord)k Fu(exists.)150 2524 y Fk(3.6.3)63 b(App)s(ending)42
+b(Redirected)e(Output)150 2671 y Fu(Redirection)23 b(of)e(output)h(in)f
(this)h(fashion)f(causes)h(the)g(\014le)g(whose)f(name)h(results)f
-(from)g(the)h(expansion)g(of)150 2780 y Fq(w)m(ord)28
-b Ft(to)e(b)s(e)e(op)s(ened)g(for)h(app)s(ending)e(on)i(\014le)g
-(descriptor)g Fq(n)p Ft(,)g(or)g(the)g(standard)f(output)h(\(\014le)g
-(descriptor)150 2890 y(1\))31 b(if)f Fq(n)g Ft(is)h(not)f(sp)s
+(from)g(the)h(expansion)g(of)150 2780 y Fr(w)m(ord)28
+b Fu(to)e(b)s(e)e(op)s(ened)g(for)h(app)s(ending)e(on)i(\014le)g
+(descriptor)g Fr(n)p Fu(,)g(or)g(the)g(standard)f(output)h(\(\014le)g
+(descriptor)150 2890 y(1\))31 b(if)f Fr(n)g Fu(is)h(not)f(sp)s
(eci\014ed.)40 b(If)30 b(the)h(\014le)f(do)s(es)g(not)h(exist)g(it)g
(is)f(created.)275 3023 y(The)f(general)j(format)e(for)h(app)s(ending)e
-(output)h(is:)390 3155 y Fs([)p Fi(n)11 b Fs(]>>)p Fi(word)150
-3351 y Fj(3.6.4)63 b(Redirecting)40 b(Standard)h(Output)g(and)g
-(Standard)g(Error)150 3498 y Ft(This)33 b(construct)i(allo)m(ws)g(b)s
+(output)h(is:)390 3155 y Ft([)p Fj(n)p Ft(]>>)p Fj(word)150
+3351 y Fk(3.6.4)63 b(Redirecting)40 b(Standard)h(Output)g(and)g
+(Standard)g(Error)150 3498 y Fu(This)33 b(construct)i(allo)m(ws)g(b)s
(oth)f(the)g(standard)g(output)f(\(\014le)i(descriptor)f(1\))h(and)f
(the)g(standard)f(error)150 3607 y(output)d(\(\014le)h(descriptor)f
(2\))h(to)g(b)s(e)f(redirected)h(to)g(the)f(\014le)h(whose)f(name)h(is)
-f(the)g(expansion)h(of)f Fq(w)m(ord)t Ft(.)275 3740 y(There)f(are)i(t)m
+f(the)g(expansion)h(of)f Fr(w)m(ord)p Fu(.)275 3740 y(There)f(are)i(t)m
(w)m(o)h(formats)e(for)h(redirecting)g(standard)e(output)h(and)g
-(standard)f(error:)390 3873 y Fs(&>)p Fi(word)150 4005
-y Ft(and)390 4138 y Fs(>&)p Fi(word)150 4271 y Ft(Of)h(the)g(t)m(w)m(o)
+(standard)f(error:)390 3873 y Ft(&>)p Fj(word)150 4005
+y Fu(and)390 4138 y Ft(>&)p Fj(word)150 4271 y Fu(Of)h(the)g(t)m(w)m(o)
i(forms,)e(the)h(\014rst)e(is)i(preferred.)39 b(This)30
b(is)g(seman)m(tically)j(equiv)-5 b(alen)m(t)32 b(to)390
-4403 y Fs(>)p Fi(word)57 b Fs(2>&1)275 4536 y Ft(When)41
-b(using)g(the)h(second)f(form,)k Fq(w)m(ord)f Ft(ma)m(y)e(not)g(expand)
-f(to)h(a)g(n)m(um)m(b)s(er)f(or)g(`)p Fs(-)p Ft('.)75
+4403 y Ft(>)p Fj(word)46 b Ft(2>&1)275 4536 y Fu(When)41
+b(using)g(the)h(second)f(form,)k Fr(w)m(ord)f Fu(ma)m(y)e(not)g(expand)
+f(to)h(a)g(n)m(um)m(b)s(er)f(or)g(`)p Ft(-)p Fu('.)75
b(If)41 b(it)h(do)s(es,)150 4646 y(other)27 b(redirection)g(op)s
(erators)f(apply)h(\(see)g(Duplicating)h(File)f(Descriptors)h(b)s(elo)m
(w\))f(for)f(compatibilit)m(y)150 4755 y(reasons.)150
-4951 y Fj(3.6.5)63 b(App)s(ending)42 b(Standard)f(Output)g(and)g
-(Standard)g(Error)150 5098 y Ft(This)33 b(construct)i(allo)m(ws)g(b)s
+4951 y Fk(3.6.5)63 b(App)s(ending)42 b(Standard)f(Output)g(and)g
+(Standard)g(Error)150 5098 y Fu(This)33 b(construct)i(allo)m(ws)g(b)s
(oth)f(the)g(standard)g(output)f(\(\014le)i(descriptor)f(1\))h(and)f
(the)g(standard)f(error)150 5207 y(output)d(\(\014le)h(descriptor)f
(2\))h(to)g(b)s(e)f(app)s(ended)f(to)i(the)f(\014le)h(whose)f(name)g
-(is)h(the)f(expansion)h(of)f Fq(w)m(ord)t Ft(.)275 5340
+(is)h(the)f(expansion)h(of)f Fr(w)m(ord)p Fu(.)275 5340
y(The)f(format)i(for)f(app)s(ending)f(standard)h(output)g(and)f
(standard)h(error)g(is:)p eop end
%%Page: 34 40
-TeXDict begin 34 39 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 34 39 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(34)390 299
-y Fs(&>>)p Fi(word)150 436 y Ft(This)30 b(is)g(seman)m(tically)j(equiv)
--5 b(alen)m(t)32 b(to)390 572 y Fs(>>)p Fi(word)57 b
-Fs(2>&1)275 709 y Ft(\(see)31 b(Duplicating)h(File)f(Descriptors)g(b)s
-(elo)m(w\).)150 910 y Fj(3.6.6)63 b(Here)41 b(Do)s(cumen)m(ts)150
-1057 y Ft(This)c(t)m(yp)s(e)h(of)f(redirection)i(instructs)e(the)h
+y Ft(&>>)p Fj(word)150 436 y Fu(This)30 b(is)g(seman)m(tically)j(equiv)
+-5 b(alen)m(t)32 b(to)390 572 y Ft(>>)p Fj(word)46 b
+Ft(2>&1)275 709 y Fu(\(see)31 b(Duplicating)h(File)f(Descriptors)g(b)s
+(elo)m(w\).)150 910 y Fk(3.6.6)63 b(Here)41 b(Do)s(cumen)m(ts)150
+1057 y Fu(This)c(t)m(yp)s(e)h(of)f(redirection)i(instructs)e(the)h
(shell)f(to)i(read)e(input)g(from)g(the)h(curren)m(t)f(source)h(un)m
(til)g(a)150 1167 y(line)31 b(con)m(taining)g(only)g
-Fq(w)m(ord)i Ft(\(with)d(no)h(trailing)g(blanks\))f(is)g(seen.)41
+Fr(w)m(ord)i Fu(\(with)d(no)h(trailing)g(blanks\))f(is)g(seen.)41
b(All)31 b(of)f(the)h(lines)f(read)g(up)f(to)i(that)150
1277 y(p)s(oin)m(t)f(are)h(then)f(used)g(as)g(the)h(standard)f(input)f
(for)h(a)h(command.)275 1413 y(The)e(format)i(of)g(here-do)s(cumen)m
-(ts)f(is:)390 1550 y Fs(<<[)p Fp(\000)p Fs(])p Fi(word)772
+(ts)f(is:)390 1550 y Ft(<<[)p Fq(\000)p Ft(])p Fj(word)772
1660 y(here-document)390 1769 y(delimiter)275 1906 y
-Ft(No)i(parameter)h(and)f(v)-5 b(ariable)32 b(expansion,)h(command)f
+Fu(No)i(parameter)h(and)f(v)-5 b(ariable)32 b(expansion,)h(command)f
(substitution,)h(arithmetic)g(expansion,)g(or)150 2015
-y(\014lename)38 b(expansion)f(is)h(p)s(erformed)e(on)h
-Fq(w)m(ord)t Ft(.)62 b(If)37 b(an)m(y)h(c)m(haracters)h(in)e
-Fq(w)m(ord)k Ft(are)d(quoted,)i(the)e Fq(de-)150 2125
-y(limiter)h Ft(is)32 b(the)g(result)g(of)g(quote)g(remo)m(v)-5
-b(al)33 b(on)f Fq(w)m(ord)t Ft(,)g(and)f(the)h(lines)g(in)g(the)g
-(here-do)s(cumen)m(t)f(are)i(not)150 2235 y(expanded.)71
-b(If)40 b Fq(w)m(ord)k Ft(is)d(unquoted,)h(all)g(lines)f(of)g(the)f
+y(\014lename)38 b(expansion)g(is)g(p)s(erformed)e(on)i
+Fr(w)m(ord)p Fu(.)62 b(If)38 b(an)m(y)g(c)m(haracters)h(in)e
+Fr(w)m(ord)42 b Fu(are)c(quoted,)i(the)e Fr(de-)150 2125
+y(limiter)h Fu(is)32 b(the)h(result)f(of)g(quote)h(remo)m(v)-5
+b(al)33 b(on)f Fr(w)m(ord)p Fu(,)g(and)g(the)g(lines)g(in)g(the)g
+(here-do)s(cumen)m(t)g(are)h(not)150 2235 y(expanded.)71
+b(If)40 b Fr(w)m(ord)k Fu(is)d(unquoted,)h(all)g(lines)f(of)g(the)f
(here-do)s(cumen)m(t)h(are)g(sub)5 b(jected)41 b(to)g(param-)150
2344 y(eter)c(expansion,)i(command)d(substitution,)i(and)e(arithmetic)i
(expansion,)g(the)f(c)m(haracter)i(sequence)150 2454
-y Fs(\\newline)28 b Ft(is)j(ignored,)f(and)g(`)p Fs(\\)p
-Ft(')h(m)m(ust)f(b)s(e)g(used)f(to)i(quote)g(the)g(c)m(haracters)h(`)p
-Fs(\\)p Ft(',)e(`)p Fs($)p Ft(',)h(and)f(`)p Fs(`)p Ft('.)275
+y Ft(\\newline)28 b Fu(is)j(ignored,)f(and)g(`)p Ft(\\)p
+Fu(')h(m)m(ust)f(b)s(e)g(used)f(to)i(quote)g(the)g(c)m(haracters)h(`)p
+Ft(\\)p Fu(',)e(`)p Ft($)p Fu(',)h(and)f(`)p Ft(`)p Fu('.)275
2590 y(If)21 b(the)i(redirection)g(op)s(erator)g(is)f(`)p
-Fs(<<-)p Ft(',)i(then)e(all)h(leading)g(tab)g(c)m(haracters)h(are)e
-(stripp)s(ed)f(from)h(input)150 2700 y(lines)33 b(and)e(the)i(line)g
-(con)m(taining)h Fq(delimiter)7 b Ft(.)47 b(This)31 b(allo)m(ws)j
-(here-do)s(cumen)m(ts)f(within)e(shell)i(scripts)f(to)150
+Ft(<<-)p Fu(',)i(then)e(all)h(leading)g(tab)g(c)m(haracters)h(are)e
+(stripp)s(ed)f(from)h(input)150 2700 y(lines)33 b(and)f(the)h(line)h
+(con)m(taining)g Fr(delimiter)p Fu(.)49 b(This)32 b(allo)m(ws)i
+(here-do)s(cumen)m(ts)f(within)f(shell)i(scripts)e(to)150
2810 y(b)s(e)e(inden)m(ted)g(in)g(a)h(natural)f(fashion.)150
-3011 y Fj(3.6.7)63 b(Here)41 b(Strings)150 3158 y Ft(A)30
+3011 y Fk(3.6.7)63 b(Here)41 b(Strings)150 3158 y Fu(A)30
b(v)-5 b(arian)m(t)32 b(of)e(here)h(do)s(cumen)m(ts,)f(the)g(format)h
-(is:)390 3295 y Fs(<<<)47 b Fi(word)275 3431 y Ft(The)21
-b Fq(w)m(ord)k Ft(undergo)s(es)c(brace)h(expansion,)i(tilde)e
+(is:)390 3295 y Ft(<<<)47 b Fj(word)275 3431 y Fu(The)21
+b Fr(w)m(ord)k Fu(undergo)s(es)c(brace)h(expansion,)i(tilde)e
(expansion,)i(parameter)e(and)f(v)-5 b(ariable)23 b(expansion,)150
3541 y(command)j(substitution,)g(arithmetic)i(expansion,)f(and)e(quote)
i(remo)m(v)-5 b(al.)40 b(P)m(athname)27 b(expansion)f(and)150
3651 y(w)m(ord)j(splitting)i(are)f(not)g(p)s(erformed.)39
b(The)29 b(result)h(is)g(supplied)e(as)i(a)h(single)f(string)g(to)g
(the)g(command)150 3760 y(on)g(its)h(standard)f(input.)150
-3962 y Fj(3.6.8)63 b(Duplicating)41 b(File)g(Descriptors)150
-4109 y Ft(The)30 b(redirection)h(op)s(erator)390 4245
-y Fs([)p Fi(n)11 b Fs(]<&)p Fi(word)150 4382 y Ft(is)35
-b(used)e(to)j(duplicate)f(input)f(\014le)g(descriptors.)53
-b(If)34 b Fq(w)m(ord)k Ft(expands)c(to)h(one)g(or)g(more)g(digits,)h
-(the)f(\014le)150 4492 y(descriptor)e(denoted)h(b)m(y)g
-Fq(n)f Ft(is)g(made)h(to)g(b)s(e)f(a)h(cop)m(y)g(of)g(that)g(\014le)g
-(descriptor.)50 b(If)33 b(the)h(digits)g(in)f Fq(w)m(ord)150
-4601 y Ft(do)c(not)h(sp)s(ecify)f(a)h(\014le)f(descriptor)g(op)s(en)g
+3962 y Fk(3.6.8)63 b(Duplicating)41 b(File)g(Descriptors)150
+4109 y Fu(The)30 b(redirection)h(op)s(erator)390 4245
+y Ft([)p Fj(n)p Ft(]<&)p Fj(word)150 4382 y Fu(is)k(used)e(to)j
+(duplicate)f(input)f(\014le)g(descriptors.)53 b(If)34
+b Fr(w)m(ord)k Fu(expands)c(to)h(one)g(or)g(more)g(digits,)h(the)f
+(\014le)150 4492 y(descriptor)e(denoted)h(b)m(y)f Fr(n)g
+Fu(is)g(made)h(to)g(b)s(e)f(a)g(cop)m(y)h(of)g(that)g(\014le)f
+(descriptor.)50 b(If)33 b(the)h(digits)g(in)f Fr(w)m(ord)150
+4601 y Fu(do)c(not)h(sp)s(ecify)f(a)h(\014le)f(descriptor)g(op)s(en)g
(for)g(input,)g(a)h(redirection)g(error)f(o)s(ccurs.)40
-b(If)29 b Fq(w)m(ord)j Ft(ev)-5 b(aluates)150 4711 y(to)31
-b(`)p Fs(-)p Ft(',)g(\014le)g(descriptor)g Fq(n)f Ft(is)g(closed.)43
-b(If)30 b Fq(n)g Ft(is)g(not)h(sp)s(eci\014ed,)f(the)h(standard)f
+b(If)29 b Fr(w)m(ord)j Fu(ev)-5 b(aluates)150 4711 y(to)31
+b(`)p Ft(-)p Fu(',)g(\014le)g(descriptor)g Fr(n)f Fu(is)g(closed.)43
+b(If)30 b Fr(n)g Fu(is)g(not)h(sp)s(eci\014ed,)f(the)h(standard)f
(input)g(\(\014le)h(descriptor)f(0\))150 4820 y(is)g(used.)275
-4957 y(The)f(op)s(erator)390 5094 y Fs([)p Fi(n)11 b
-Fs(]>&)p Fi(word)150 5230 y Ft(is)40 b(used)g(similarly)h(to)g
-(duplicate)f(output)g(\014le)h(descriptors.)70 b(If)40
-b Fq(n)f Ft(is)i(not)f(sp)s(eci\014ed,)i(the)f(standard)150
-5340 y(output)30 b(\(\014le)g(descriptor)g(1\))h(is)f(used.)39
-b(If)30 b(the)g(digits)h(in)e Fq(w)m(ord)34 b Ft(do)29
-b(not)i(sp)s(ecify)e(a)i(\014le)f(descriptor)g(op)s(en)p
-eop end
+4957 y(The)f(op)s(erator)390 5094 y Ft([)p Fj(n)p Ft(]>&)p
+Fj(word)150 5230 y Fu(is)40 b(used)g(similarly)h(to)g(duplicate)f
+(output)g(\014le)h(descriptors.)70 b(If)40 b Fr(n)f Fu(is)i(not)f(sp)s
+(eci\014ed,)i(the)f(standard)150 5340 y(output)30 b(\(\014le)g
+(descriptor)g(1\))h(is)f(used.)39 b(If)30 b(the)g(digits)h(in)e
+Fr(w)m(ord)34 b Fu(do)29 b(not)i(sp)s(ecify)e(a)i(\014le)f(descriptor)g
+(op)s(en)p eop end
%%Page: 35 41
-TeXDict begin 35 40 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 35 40 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(35)150 299
y(for)35 b(output,)h(a)g(redirection)g(error)e(o)s(ccurs.)55
-b(If)35 b Fq(w)m(ord)j Ft(ev)-5 b(aluates)37 b(to)f(`)p
-Fs(-)p Ft(',)h(\014le)e(descriptor)g Fq(n)g Ft(is)g(closed.)150
-408 y(As)f(a)g(sp)s(ecial)h(case,)h(if)e Fq(n)f Ft(is)h(omitted,)i(and)
-e Fq(w)m(ord)j Ft(do)s(es)d(not)g(expand)f(to)i(one)f(or)g(more)g
-(digits)h(or)f(`)p Fs(-)p Ft(',)150 518 y(the)d(standard)e(output)h
+b(If)35 b Fr(w)m(ord)j Fu(ev)-5 b(aluates)37 b(to)f(`)p
+Ft(-)p Fu(',)h(\014le)e(descriptor)g Fr(n)g Fu(is)g(closed.)150
+408 y(As)f(a)g(sp)s(ecial)h(case,)h(if)e Fr(n)f Fu(is)h(omitted,)i(and)
+e Fr(w)m(ord)j Fu(do)s(es)d(not)g(expand)f(to)i(one)f(or)g(more)g
+(digits)h(or)f(`)p Ft(-)p Fu(',)150 518 y(the)d(standard)e(output)h
(and)g(standard)f(error)h(are)h(redirected)g(as)g(describ)s(ed)e
-(previously)-8 b(.)150 717 y Fj(3.6.9)63 b(Mo)m(ving)41
-b(File)h(Descriptors)150 864 y Ft(The)30 b(redirection)h(op)s(erator)
-390 999 y Fs([)p Fi(n)11 b Fs(]<&)p Fi(digit)g Fs(-)150
-1133 y Ft(mo)m(v)m(es)33 b(the)f(\014le)g(descriptor)f
-Fq(digit)k Ft(to)d(\014le)g(descriptor)g Fq(n)p Ft(,)f(or)h(the)g
-(standard)f(input)f(\(\014le)j(descriptor)e(0\))150 1243
-y(if)f Fq(n)g Ft(is)h(not)f(sp)s(eci\014ed.)40 b Fq(digit)33
-b Ft(is)e(closed)g(after)g(b)s(eing)f(duplicated)g(to)h
-Fq(n)p Ft(.)275 1377 y(Similarly)-8 b(,)31 b(the)f(redirection)h(op)s
-(erator)390 1512 y Fs([)p Fi(n)11 b Fs(]>&)p Fi(digit)g
-Fs(-)150 1646 y Ft(mo)m(v)m(es)29 b(the)g(\014le)f(descriptor)f
-Fq(digit)k Ft(to)e(\014le)f(descriptor)g Fq(n)p Ft(,)g(or)g(the)g
+(previously)-8 b(.)150 717 y Fk(3.6.9)63 b(Mo)m(ving)41
+b(File)h(Descriptors)150 864 y Fu(The)30 b(redirection)h(op)s(erator)
+390 999 y Ft([)p Fj(n)p Ft(]<&)p Fj(digit)p Ft(-)150
+1133 y Fu(mo)m(v)m(es)i(the)f(\014le)g(descriptor)f Fr(digit)k
+Fu(to)d(\014le)g(descriptor)g Fr(n)p Fu(,)f(or)h(the)g(standard)f
+(input)f(\(\014le)j(descriptor)e(0\))150 1243 y(if)f
+Fr(n)g Fu(is)h(not)f(sp)s(eci\014ed.)40 b Fr(digit)33
+b Fu(is)e(closed)g(after)g(b)s(eing)f(duplicated)g(to)h
+Fr(n)p Fu(.)275 1377 y(Similarly)-8 b(,)31 b(the)f(redirection)h(op)s
+(erator)390 1512 y Ft([)p Fj(n)p Ft(]>&)p Fj(digit)p
+Ft(-)150 1646 y Fu(mo)m(v)m(es)e(the)g(\014le)f(descriptor)f
+Fr(digit)k Fu(to)e(\014le)f(descriptor)g Fr(n)p Fu(,)g(or)g(the)g
(standard)f(output)h(\(\014le)g(descriptor)g(1\))150
-1756 y(if)i Fq(n)g Ft(is)h(not)f(sp)s(eci\014ed.)150
-1955 y Fj(3.6.10)63 b(Op)s(ening)42 b(File)g(Descriptors)g(for)g
-(Reading)e(and)h(W)-10 b(riting)150 2102 y Ft(The)30
-b(redirection)h(op)s(erator)390 2236 y Fs([)p Fi(n)11
-b Fs(]<>)p Fi(word)150 2371 y Ft(causes)39 b(the)g(\014le)g(whose)g
-(name)g(is)g(the)g(expansion)g(of)g Fq(w)m(ord)j Ft(to)d(b)s(e)g(op)s
-(ened)f(for)g(b)s(oth)h(reading)g(and)150 2480 y(writing)33
-b(on)f(\014le)h(descriptor)f Fq(n)p Ft(,)h(or)g(on)f(\014le)h
-(descriptor)g(0)g(if)f Fq(n)g Ft(is)h(not)g(sp)s(eci\014ed.)47
+1756 y(if)i Fr(n)g Fu(is)h(not)f(sp)s(eci\014ed.)150
+1955 y Fk(3.6.10)63 b(Op)s(ening)42 b(File)g(Descriptors)g(for)g
+(Reading)e(and)h(W)-10 b(riting)150 2102 y Fu(The)30
+b(redirection)h(op)s(erator)390 2236 y Ft([)p Fj(n)p
+Ft(]<>)p Fj(word)150 2371 y Fu(causes)39 b(the)g(\014le)g(whose)g(name)
+g(is)g(the)g(expansion)g(of)g Fr(w)m(ord)j Fu(to)d(b)s(e)g(op)s(ened)f
+(for)g(b)s(oth)h(reading)g(and)150 2480 y(writing)33
+b(on)f(\014le)h(descriptor)f Fr(n)p Fu(,)h(or)g(on)f(\014le)h
+(descriptor)g(0)g(if)f Fr(n)g Fu(is)h(not)g(sp)s(eci\014ed.)47
b(If)32 b(the)h(\014le)f(do)s(es)h(not)150 2590 y(exist,)e(it)g(is)g
-(created.)150 2822 y Fr(3.7)68 b(Executing)46 b(Commands)150
-3046 y Fj(3.7.1)63 b(Simple)41 b(Command)h(Expansion)150
-3193 y Ft(When)33 b(a)g(simple)g(command)g(is)g(executed,)h(the)g
+(created.)150 2822 y Fs(3.7)68 b(Executing)46 b(Commands)150
+3046 y Fk(3.7.1)63 b(Simple)41 b(Command)h(Expansion)150
+3193 y Fu(When)33 b(a)g(simple)g(command)g(is)g(executed,)h(the)g
(shell)f(p)s(erforms)e(the)i(follo)m(wing)i(expansions,)e(assign-)150
3303 y(men)m(ts,)e(and)f(redirections,)h(from)f(left)h(to)g(righ)m(t.)
199 3437 y(1.)61 b(The)38 b(w)m(ords)f(that)i(the)g(parser)e(has)h
(are)g(the)h(argu-)330 4010 y(men)m(ts.)199 4145 y(3.)61
b(Redirections)25 b(are)f(p)s(erformed)f(as)h(describ)s(ed)f(ab)s(o)m
(v)m(e)i(\(see)g(Section)g(3.6)g([Redirections],)i(page)d(31\).)199
-4279 y(4.)61 b(The)25 b(text)h(after)f(the)g(`)p Fs(=)p
-Ft(')h(in)e(eac)m(h)j(v)-5 b(ariable)25 b(assignmen)m(t)h(undergo)s(es)
+4279 y(4.)61 b(The)25 b(text)h(after)f(the)g(`)p Ft(=)p
+Fu(')h(in)e(eac)m(h)j(v)-5 b(ariable)25 b(assignmen)m(t)h(undergo)s(es)
e(tilde)i(expansion,)g(parameter)330 4389 y(expansion,)49
b(command)d(substitution,)j(arithmetic)d(expansion,)k(and)45
b(quote)h(remo)m(v)-5 b(al)46 b(b)s(efore)330 4498 y(b)s(eing)30
b(A)30 b(redirection)h(error)f(causes)h(the)g(command)f(to)h(exit)g
(with)f(a)h(non-zero)g(status.)p eop end
%%Page: 36 42
-TeXDict begin 36 41 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 36 41 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(36)275 299
y(If)26 b(there)i(is)f(a)h(command)f(name)h(left)g(after)g(expansion,)g
(execution)h(pro)s(ceeds)e(as)g(describ)s(ed)f(b)s(elo)m(w.)150
(exit)h(status)g(of)f(the)h(last)g(command)f(substitution)150
628 y(p)s(erformed.)55 b(If)35 b(there)g(w)m(ere)h(no)g(command)f
(substitutions,)i(the)e(command)h(exits)g(with)f(a)h(status)g(of)150
-737 y(zero.)150 925 y Fj(3.7.2)63 b(Command)41 b(Searc)m(h)f(and)h
-(Execution)150 1071 y Ft(After)i(a)h(command)f(has)g(b)s(een)f(split)h
+737 y(zero.)150 925 y Fk(3.7.2)63 b(Command)41 b(Searc)m(h)f(and)h
+(Execution)150 1071 y Fu(After)i(a)h(command)f(has)g(b)s(een)f(split)h
(in)m(to)h(w)m(ords,)j(if)c(it)g(results)g(in)g(a)h(simple)f(command)g
(and)f(an)150 1181 y(optional)32 b(list)f(of)f(argumen)m(ts,)h(the)g
(follo)m(wing)g(actions)h(are)f(tak)m(en.)199 1310 y(1.)61
(that)h(builtin)f(is)g(in)m(v)m(ok)m(ed.)199 1895 y(3.)61
b(If)40 b(the)g(name)h(is)f(neither)h(a)f(shell)h(function)f(nor)g(a)g
(builtin,)j(and)d(con)m(tains)h(no)g(slashes,)i(Bash)330
-2005 y(searc)m(hes)c(eac)m(h)g(elemen)m(t)g(of)g Fs($PATH)d
-Ft(for)i(a)g(directory)h(con)m(taining)g(an)f(executable)h(\014le)f(b)m
+2005 y(searc)m(hes)c(eac)m(h)g(elemen)m(t)g(of)g Ft($PATH)d
+Fu(for)i(a)g(directory)h(con)m(taining)g(an)f(executable)h(\014le)f(b)m
(y)g(that)330 2115 y(name.)56 b(Bash)36 b(uses)f(a)h(hash)e(table)j(to)
f(remem)m(b)s(er)f(the)h(full)f(pathnames)g(of)h(executable)h(\014les)e
-(to)330 2224 y(a)m(v)m(oid)e(m)m(ultiple)f Fs(PATH)f
-Ft(searc)m(hes)i(\(see)f(the)g(description)g(of)f Fs(hash)g
-Ft(in)g(Section)i(4.1)f([Bourne)g(Shell)330 2334 y(Builtins],)37
+(to)330 2224 y(a)m(v)m(oid)e(m)m(ultiple)f Ft(PATH)f
+Fu(searc)m(hes)i(\(see)f(the)g(description)g(of)f Ft(hash)g
+Fu(in)g(Section)i(4.1)f([Bourne)g(Shell)330 2334 y(Builtins],)37
b(page)f(41\).)55 b(A)35 b(full)g(searc)m(h)g(of)g(the)g(directories)h
-(in)f Fs($PATH)e Ft(is)i(p)s(erformed)f(only)h(if)g(the)330
+(in)f Ft($PATH)e Fu(is)i(p)s(erformed)f(only)h(if)g(the)330
2443 y(command)24 b(is)h(not)g(found)e(in)i(the)g(hash)f(table.)39
b(If)25 b(the)f(searc)m(h)i(is)e(unsuccessful,)h(the)g(shell)g(searc)m
(hes)330 2553 y(for)e(a)h(de\014ned)e(shell)h(function)h(named)e
-Fs(command_not_found_handle)p Ft(.)32 b(If)23 b(that)h(function)f
+Ft(command_not_found_handle)p Fu(.)32 b(If)23 b(that)h(function)f
(exists,)330 2663 y(it)32 b(is)f(in)m(v)m(ok)m(ed)i(with)e(the)h
(original)g(command)f(and)g(the)h(original)g(command's)f(argumen)m(ts)h
(as)g(its)330 2772 y(argumen)m(ts,)h(and)e(the)i(function's)e(exit)i
b(.)199 3577 y(5.)61 b(If)35 b(this)h(execution)h(fails)f(b)s(ecause)g
(the)f(\014le)h(is)g(not)g(in)f(executable)j(format,)f(and)e(the)h
(\014le)g(is)g(not)330 3687 y(a)d(directory)-8 b(,)34
-b(it)f(is)g(assumed)e(to)j(b)s(e)d(a)i Fq(shell)g(script)h
-Ft(and)e(the)h(shell)f(executes)i(it)f(as)g(describ)s(ed)e(in)330
+b(it)f(is)g(assumed)e(to)j(b)s(e)d(a)i Fr(shell)g(script)h
+Fu(and)e(the)h(shell)f(executes)i(it)f(as)g(describ)s(ed)e(in)330
3796 y(Section)g(3.8)h([Shell)e(Scripts],)g(page)i(39.)199
3925 y(6.)61 b(If)38 b(the)h(command)f(w)m(as)h(not)g(b)s(egun)e(async)
m(hronously)-8 b(,)42 b(the)c(shell)h(w)m(aits)h(for)e(the)h(command)f
(to)330 4034 y(complete)32 b(and)e(collects)i(its)f(exit)g(status.)150
-4222 y Fj(3.7.3)63 b(Command)41 b(Execution)f(En)m(vironmen)m(t)150
-4369 y Ft(The)30 b(shell)g(has)h(an)f Fq(execution)h(en)m(vironmen)m(t)
-r Ft(,)h(whic)m(h)e(consists)h(of)f(the)h(follo)m(wing:)225
-4497 y Fp(\017)60 b Ft(op)s(en)32 b(\014les)g(inherited)g(b)m(y)h(the)f
+4222 y Fk(3.7.3)63 b(Command)41 b(Execution)f(En)m(vironmen)m(t)150
+4369 y Fu(The)30 b(shell)g(has)h(an)f Fr(execution)h(en)m(vironmen)m(t)
+p Fu(,)h(whic)m(h)e(consists)h(of)f(the)h(follo)m(wing:)225
+4497 y Fq(\017)60 b Fu(op)s(en)32 b(\014les)g(inherited)g(b)m(y)h(the)f
(shell)h(at)g(in)m(v)m(o)s(cation,)j(as)c(mo)s(di\014ed)g(b)m(y)g
-(redirections)h(supplied)e(to)330 4607 y(the)g Fs(exec)e
-Ft(builtin)225 4735 y Fp(\017)60 b Ft(the)28 b(curren)m(t)g(w)m(orking)
-h(directory)g(as)f(set)h(b)m(y)f Fs(cd)p Ft(,)g Fs(pushd)p
-Ft(,)g(or)g Fs(popd)p Ft(,)g(or)g(inherited)g(b)m(y)g(the)h(shell)f(at)
-330 4845 y(in)m(v)m(o)s(cation)225 4973 y Fp(\017)60
-b Ft(the)31 b(\014le)f(creation)i(mo)s(de)e(mask)g(as)h(set)g(b)m(y)f
-Fs(umask)f Ft(or)h(inherited)g(from)g(the)h(shell's)f(paren)m(t)225
-5102 y Fp(\017)60 b Ft(curren)m(t)30 b(traps)g(set)h(b)m(y)f
-Fs(trap)225 5230 y Fp(\017)60 b Ft(shell)30 b(parameters)f(that)h(are)g
+(redirections)h(supplied)e(to)330 4607 y(the)g Ft(exec)e
+Fu(builtin)225 4735 y Fq(\017)60 b Fu(the)28 b(curren)m(t)g(w)m(orking)
+h(directory)g(as)f(set)h(b)m(y)f Ft(cd)p Fu(,)g Ft(pushd)p
+Fu(,)g(or)g Ft(popd)p Fu(,)g(or)g(inherited)g(b)m(y)g(the)h(shell)f(at)
+330 4845 y(in)m(v)m(o)s(cation)225 4973 y Fq(\017)60
+b Fu(the)31 b(\014le)f(creation)i(mo)s(de)e(mask)g(as)h(set)g(b)m(y)f
+Ft(umask)f Fu(or)h(inherited)g(from)g(the)h(shell's)f(paren)m(t)225
+5102 y Fq(\017)60 b Fu(curren)m(t)30 b(traps)g(set)h(b)m(y)f
+Ft(trap)225 5230 y Fq(\017)60 b Fu(shell)30 b(parameters)f(that)h(are)g
(set)g(b)m(y)g(v)-5 b(ariable)30 b(assignmen)m(t)g(or)g(with)f
-Fs(set)f Ft(or)i(inherited)f(from)g(the)330 5340 y(shell's)i(paren)m(t)
+Ft(set)f Fu(or)i(inherited)f(from)g(the)330 5340 y(shell's)i(paren)m(t)
f(in)g(the)h(en)m(vironmen)m(t)p eop end
%%Page: 37 43
-TeXDict begin 37 42 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 37 42 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(37)225 299
-y Fp(\017)60 b Ft(shell)44 b(functions)f(de\014ned)f(during)h
+y Fq(\017)60 b Fu(shell)44 b(functions)f(de\014ned)f(during)h
(execution)i(or)e(inherited)h(from)f(the)h(shell's)g(paren)m(t)f(in)h
-(the)330 408 y(en)m(vironmen)m(t)225 543 y Fp(\017)60
-b Ft(options)33 b(enabled)g(at)h(in)m(v)m(o)s(cation)h(\(either)f(b)m
+(the)330 408 y(en)m(vironmen)m(t)225 543 y Fq(\017)60
+b Fu(options)33 b(enabled)g(at)h(in)m(v)m(o)s(cation)h(\(either)f(b)m
(y)f(default)g(or)g(with)g(command-line)g(argumen)m(ts\))h(or)330
-652 y(b)m(y)c Fs(set)225 787 y Fp(\017)60 b Ft(options)31
-b(enabled)f(b)m(y)g Fs(shopt)f Ft(\(see)j(Section)f(4.3.2)h([The)e
-(Shopt)g(Builtin],)h(page)g(63\))225 921 y Fp(\017)60
-b Ft(shell)31 b(aliases)g(de\014ned)f(with)g Fs(alias)f
-Ft(\(see)i(Section)g(6.6)h([Aliases],)g(page)f(88\))225
-1056 y Fp(\017)60 b Ft(v)-5 b(arious)50 b(pro)s(cess)f
-Fl(id)p Ft(s,)55 b(including)49 b(those)i(of)e(bac)m(kground)h(jobs)f
+652 y(b)m(y)c Ft(set)225 787 y Fq(\017)60 b Fu(options)31
+b(enabled)f(b)m(y)g Ft(shopt)f Fu(\(see)j(Section)f(4.3.2)h([The)e
+(Shopt)g(Builtin],)h(page)g(62\))225 921 y Fq(\017)60
+b Fu(shell)31 b(aliases)g(de\014ned)f(with)g Ft(alias)f
+Fu(\(see)i(Section)g(6.6)h([Aliases],)g(page)f(88\))225
+1056 y Fq(\017)60 b Fu(v)-5 b(arious)50 b(pro)s(cess)f
+Fm(id)p Fu(s,)55 b(including)49 b(those)i(of)e(bac)m(kground)h(jobs)f
(\(see)i(Section)g(3.2.3)g([Lists],)330 1165 y(page)31
-b(9\),)g(the)g(v)-5 b(alue)31 b(of)f Fs($$)p Ft(,)g(and)g(the)h(v)-5
-b(alue)31 b(of)f Fs($PPID)275 1324 y Ft(When)k(a)g(simple)h(command)f
+b(9\),)g(the)g(v)-5 b(alue)31 b(of)f Ft($$)p Fu(,)g(and)g(the)h(v)-5
+b(alue)31 b(of)f Ft($PPID)275 1324 y Fu(When)k(a)g(simple)h(command)f
(other)g(than)g(a)h(builtin)f(or)g(shell)h(function)f(is)g(to)h(b)s(e)f
(executed,)i(it)f(is)150 1434 y(in)m(v)m(ok)m(ed)25 b(in)f(a)g
(separate)h(execution)g(en)m(vironmen)m(t)g(that)f(consists)g(of)h(the)
f(follo)m(wing.)40 b(Unless)24 b(otherwise)150 1543 y(noted,)31
b(the)f(v)-5 b(alues)31 b(are)g(inherited)f(from)g(the)g(shell.)225
-1678 y Fp(\017)60 b Ft(the)31 b(shell's)h(op)s(en)e(\014les,)i(plus)e
+1678 y Fq(\017)60 b Fu(the)31 b(shell's)h(op)s(en)e(\014les,)i(plus)e
(an)m(y)h(mo)s(di\014cations)h(and)e(additions)h(sp)s(eci\014ed)g(b)m
(y)g(redirections)g(to)330 1787 y(the)g(command)225 1922
-y Fp(\017)60 b Ft(the)31 b(curren)m(t)f(w)m(orking)g(directory)225
-2056 y Fp(\017)60 b Ft(the)31 b(\014le)f(creation)i(mo)s(de)e(mask)225
-2190 y Fp(\017)60 b Ft(shell)32 b(v)-5 b(ariables)33
+y Fq(\017)60 b Fu(the)31 b(curren)m(t)f(w)m(orking)g(directory)225
+2056 y Fq(\017)60 b Fu(the)31 b(\014le)f(creation)i(mo)s(de)e(mask)225
+2190 y Fq(\017)60 b Fu(shell)32 b(v)-5 b(ariables)33
b(and)e(functions)h(mark)m(ed)g(for)g(exp)s(ort,)g(along)h(with)f(v)-5
b(ariables)32 b(exp)s(orted)g(for)g(the)330 2300 y(command,)e(passed)g
(in)g(the)h(en)m(vironmen)m(t)g(\(see)g(Section)g(3.7.4)i([En)m
-(vironmen)m(t],)e(page)g(37\))225 2434 y Fp(\017)60 b
-Ft(traps)31 b(caugh)m(t)h(b)m(y)f(the)g(shell)h(are)f(reset)h(to)g(the)
+(vironmen)m(t],)e(page)g(37\))225 2434 y Fq(\017)60 b
+Fu(traps)31 b(caugh)m(t)h(b)m(y)f(the)g(shell)h(are)f(reset)h(to)g(the)
f(v)-5 b(alues)32 b(inherited)e(from)h(the)g(shell's)h(paren)m(t,)g
(and)330 2544 y(traps)e(ignored)h(b)m(y)f(the)g(shell)h(are)g(ignored)
275 2703 y(A)41 b(command)g(in)m(v)m(ok)m(ed)i(in)e(this)h(separate)g
b(in)f(a)h(subshell)e(en)m(vironmen)m(t.)72 b(Changes)40
b(made)g(to)h(the)g(subshell)e(en)m(vironmen)m(t)i(cannot)150
3495 y(a\013ect)32 b(the)f(shell's)f(execution)i(en)m(vironmen)m(t.)275
-3629 y(Subshells)24 b(spa)m(wned)h(to)i(execute)g(command)f
-(substitutions)g(inherit)g(the)g(v)-5 b(alue)26 b(of)g(the)h(`)p
-Fs(-e)p Ft(')e(option)150 3739 y(from)20 b(the)h(paren)m(t)g(shell.)37
-b(When)21 b(not)f(in)h Fl(posix)f Ft(mo)s(de,)i(Bash)f(clears)g(the)g
-(`)p Fs(-e)p Ft(')f(option)h(in)g(suc)m(h)f(subshells.)275
-3873 y(If)38 b(a)h(command)f(is)g(follo)m(w)m(ed)j(b)m(y)d(a)h(`)p
-Fs(&)p Ft(')g(and)f(job)g(con)m(trol)i(is)e(not)h(activ)m(e,)k(the)c
-(default)g(standard)150 3983 y(input)e(for)g(the)h(command)f(is)h(the)g
-(empt)m(y)g(\014le)f(`)p Fs(/dev/null)p Ft('.)61 b(Otherwise,)39
-b(the)f(in)m(v)m(ok)m(ed)h(command)150 4093 y(inherits)30
-b(the)h(\014le)f(descriptors)g(of)h(the)f(calling)i(shell)f(as)f(mo)s
-(di\014ed)g(b)m(y)g(redirections.)150 4292 y Fj(3.7.4)63
-b(En)m(vironmen)m(t)150 4438 y Ft(When)28 b(a)i(program)e(is)h(in)m(v)m
-(ok)m(ed)h(it)f(is)g(giv)m(en)g(an)g(arra)m(y)g(of)g(strings)f(called)i
-(the)f Fq(en)m(vironmen)m(t)r Ft(.)41 b(This)28 b(is)h(a)150
+3629 y(Subshells)c(spa)m(wned)i(to)h(execute)g(command)f(substitutions)
+g(inherit)g(the)g(v)-5 b(alue)31 b(of)f(the)h Ft(-e)e
+Fu(option)150 3739 y(from)23 b(the)i(paren)m(t)f(shell.)38
+b(When)24 b(not)g(in)g Fm(posix)f Fu(mo)s(de,)i(Bash)f(clears)h(the)f
+Ft(-e)f Fu(option)i(in)e(suc)m(h)h(subshells.)275 3873
+y(If)f(a)h(command)g(is)g(follo)m(w)m(ed)h(b)m(y)f(a)g(`)p
+Ft(&)p Fu(')g(and)f(job)h(con)m(trol)h(is)f(not)g(activ)m(e,)k(the)c
+(default)g(standard)f(input)150 3983 y(for)35 b(the)g(command)g(is)g
+(the)g(empt)m(y)h(\014le)f Ft(/dev/null)p Fu(.)52 b(Otherwise,)37
+b(the)e(in)m(v)m(ok)m(ed)h(command)f(inherits)150 4093
+y(the)c(\014le)f(descriptors)g(of)h(the)f(calling)i(shell)f(as)f(mo)s
+(di\014ed)g(b)m(y)g(redirections.)150 4292 y Fk(3.7.4)63
+b(En)m(vironmen)m(t)150 4438 y Fu(When)29 b(a)g(program)f(is)h(in)m(v)m
+(ok)m(ed)h(it)g(is)f(giv)m(en)g(an)g(arra)m(y)g(of)g(strings)g(called)h
+(the)f Fr(en)m(vironmen)m(t)p Fu(.)41 b(This)28 b(is)h(a)150
4548 y(list)i(of)g(name-v)-5 b(alue)31 b(pairs,)f(of)h(the)f(form)g
-Fs(name=value)p Ft(.)275 4682 y(Bash)39 b(pro)m(vides)g(sev)m(eral)i(w)
+Ft(name=value)p Fu(.)275 4682 y(Bash)39 b(pro)m(vides)g(sev)m(eral)i(w)
m(a)m(ys)g(to)f(manipulate)f(the)h(en)m(vironmen)m(t.)69
b(On)38 b(in)m(v)m(o)s(cation,)44 b(the)c(shell)150 4792
y(scans)g(its)h(o)m(wn)f(en)m(vironmen)m(t)h(and)f(creates)i(a)f
(parameter)f(for)g(eac)m(h)i(name)e(found,)i(automatically)150
-4902 y(marking)26 b(it)g(for)g Fq(exp)s(ort)h Ft(to)g(c)m(hild)f(pro)s
+4902 y(marking)26 b(it)g(for)g Fr(exp)s(ort)h Fu(to)g(c)m(hild)f(pro)s
(cesses.)39 b(Executed)26 b(commands)g(inherit)g(the)g(en)m(vironmen)m
-(t.)39 b(The)150 5011 y Fs(export)c Ft(and)i(`)p Fs(declare)29
-b(-x)p Ft(')36 b(commands)h(allo)m(w)i(parameters)e(and)g(functions)g
+(t.)39 b(The)150 5011 y Ft(export)c Fu(and)i(`)p Ft(declare)29
+b(-x)p Fu(')36 b(commands)h(allo)m(w)i(parameters)e(and)g(functions)g
(to)h(b)s(e)e(added)h(to)h(and)150 5121 y(deleted)21
b(from)f(the)h(en)m(vironmen)m(t.)38 b(If)20 b(the)h(v)-5
b(alue)21 b(of)g(a)g(parameter)g(in)f(the)g(en)m(vironmen)m(t)i(is)e
(shell's)h(initial)g(en)m(vironmen)m(t,)g(whose)f(v)-5
b(alues)31 b(ma)m(y)h(b)s(e)p eop end
%%Page: 38 44
-TeXDict begin 38 43 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 38 43 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(38)150 299
y(mo)s(di\014ed)26 b(in)g(the)h(shell,)h(less)f(an)m(y)g(pairs)f(remo)m
-(v)m(ed)i(b)m(y)f(the)g Fs(unset)e Ft(and)h(`)p Fs(export)j(-n)p
-Ft(')e(commands,)g(plus)150 408 y(an)m(y)k(additions)f(via)h(the)g
-Fs(export)d Ft(and)i(`)p Fs(declare)f(-x)p Ft(')h(commands.)275
+(v)m(ed)i(b)m(y)f(the)g Ft(unset)e Fu(and)h(`)p Ft(export)j(-n)p
+Fu(')e(commands,)g(plus)150 408 y(an)m(y)k(additions)f(via)h(the)g
+Ft(export)d Fu(and)i(`)p Ft(declare)f(-x)p Fu(')h(commands.)275
549 y(The)j(en)m(vironmen)m(t)i(for)f(an)m(y)g(simple)h(command)f(or)g
(function)g(ma)m(y)g(b)s(e)g(augmen)m(ted)h(temp)s(orarily)150
659 y(b)m(y)c(pre\014xing)e(it)i(with)g(parameter)g(assignmen)m(ts,)h
(as)e(describ)s(ed)g(in)g(Section)i(3.4)g([Shell)e(P)m(arameters],)150
768 y(page)g(18.)41 b(These)29 b(assignmen)m(t)i(statemen)m(ts)g
(a\013ect)f(only)g(the)f(en)m(vironmen)m(t)h(seen)g(b)m(y)f(that)h
-(command.)275 909 y(If)d(the)h(`)p Fs(-k)p Ft(')g(option)g(is)g(set)g
-(\(see)h(Section)f(4.3.1)i([The)e(Set)g(Builtin],)h(page)f(59\),)i
-(then)e(all)g(parameter)150 1019 y(assignmen)m(ts)i(are)g(placed)h(in)e
-(the)h(en)m(vironmen)m(t)g(for)g(a)g(command,)f(not)h(just)f(those)i
-(that)f(precede)g(the)150 1128 y(command)g(name.)275
-1269 y(When)h(Bash)h(in)m(v)m(ok)m(es)i(an)e(external)h(command,)f(the)
-g(v)-5 b(ariable)33 b(`)p Fs($_)p Ft(')f(is)g(set)h(to)f(the)g(full)g
+(command.)275 909 y(If)g(the)h Ft(-k)g Fu(option)g(is)g(set)h(\(see)g
+(Section)g(4.3.1)g([The)f(Set)g(Builtin],)h(page)g(58\),)h(then)e(all)g
+(parameter)150 1019 y(assignmen)m(ts)f(are)g(placed)h(in)e(the)h(en)m
+(vironmen)m(t)g(for)g(a)g(command,)f(not)h(just)f(those)i(that)f
+(precede)g(the)150 1128 y(command)g(name.)275 1269 y(When)h(Bash)h(in)m
+(v)m(ok)m(es)i(an)e(external)h(command,)f(the)g(v)-5
+b(ariable)33 b(`)p Ft($_)p Fu(')f(is)g(set)h(to)f(the)g(full)g
(pathname)150 1379 y(of)f(the)f(command)g(and)g(passed)g(to)h(that)g
-(command)f(in)g(its)h(en)m(vironmen)m(t.)150 1585 y Fj(3.7.5)63
-b(Exit)40 b(Status)150 1731 y Ft(The)26 b(exit)h(status)f(of)g(an)g
+(command)f(in)g(its)h(en)m(vironmen)m(t.)150 1585 y Fk(3.7.5)63
+b(Exit)40 b(Status)150 1731 y Fu(The)26 b(exit)h(status)f(of)g(an)g
(executed)h(command)f(is)g(the)h(v)-5 b(alue)26 b(returned)f(b)m(y)h
-(the)g Fq(w)m(aitpid)k Ft(system)d(call)g(or)150 1841
+(the)g Fr(w)m(aitpid)k Fu(system)d(call)g(or)150 1841
y(equiv)-5 b(alen)m(t)33 b(function.)45 b(Exit)32 b(statuses)g(fall)g
(b)s(et)m(w)m(een)h(0)f(and)f(255,)i(though,)f(as)g(explained)g(b)s
(elo)m(w,)h(the)150 1951 y(shell)i(ma)m(y)g(use)f(v)-5
(tuitiv)m(e)i(sc)m(heme)e(is)f(used)g(so)150 2530 y(there)34
b(is)g(one)g(w)m(ell-de\014ned)g(w)m(a)m(y)g(to)h(indicate)g(success)f
(and)f(a)h(v)-5 b(ariet)m(y)35 b(of)f(w)m(a)m(ys)h(to)f(indicate)h(v)-5
-b(arious)150 2639 y(failure)37 b(mo)s(des.)61 b(When)37
-b(a)g(command)g(terminates)h(on)f(a)g(fatal)i(signal)f(whose)f(n)m(um)m
-(b)s(er)e(is)i Fq(N)10 b Ft(,)38 b(Bash)150 2749 y(uses)30
-b(the)g(v)-5 b(alue)31 b(128)p Fs(+)p Fq(N)42 b Ft(as)30
+b(arious)150 2639 y(failure)38 b(mo)s(des.)62 b(When)37
+b(a)h(command)f(terminates)i(on)e(a)h(fatal)h(signal)g(whose)e(n)m(um)m
+(b)s(er)f(is)i Fr(N)p Fu(,)i(Bash)150 2749 y(uses)30
+b(the)g(v)-5 b(alue)31 b(128)p Ft(+)p Fr(N)42 b Fu(as)30
b(the)h(exit)g(status.)275 2890 y(If)k(a)h(command)g(is)g(not)g(found,)
g(the)g(c)m(hild)h(pro)s(cess)e(created)i(to)g(execute)g(it)g(returns)d
(a)j(status)f(of)150 2999 y(127.)42 b(If)30 b(a)h(command)f(is)g(found)
(y)g(b)s(e)f(used)g(b)m(y)g(the)h(conditional)h(and)e(list)h
(constructs.)50 b(All)35 b(builtins)150 3970 y(return)29
b(an)i(exit)g(status)g(of)f(2)h(to)g(indicate)g(incorrect)h(usage.)150
-4175 y Fj(3.7.6)63 b(Signals)150 4322 y Ft(When)36 b(Bash)g(is)h(in)m
+4175 y Fk(3.7.6)63 b(Signals)150 4322 y Fu(When)36 b(Bash)g(is)h(in)m
(teractiv)m(e,)j(in)c(the)h(absence)f(of)h(an)m(y)f(traps,)i(it)e
-(ignores)h Fs(SIGTERM)d Ft(\(so)j(that)g(`)p Fs(kill)150
-4432 y(0)p Ft(')c(do)s(es)g(not)g(kill)g(an)g(in)m(teractiv)m(e)j
-(shell\),)f(and)d Fs(SIGINT)f Ft(is)i(caugh)m(t)h(and)f(handled)f(\(so)
-h(that)h(the)f Fs(wait)150 4542 y Ft(builtin)24 b(is)h(in)m
+(ignores)h Ft(SIGTERM)d Fu(\(so)j(that)g(`)p Ft(kill)150
+4432 y(0)p Fu(')c(do)s(es)g(not)g(kill)g(an)g(in)m(teractiv)m(e)j
+(shell\),)f(and)d Ft(SIGINT)f Fu(is)i(caugh)m(t)h(and)f(handled)f(\(so)
+h(that)h(the)f Ft(wait)150 4542 y Fu(builtin)24 b(is)h(in)m
(terruptible\).)39 b(When)24 b(Bash)g(receiv)m(es)j(a)d
-Fs(SIGINT)p Ft(,)h(it)g(breaks)f(out)h(of)f(an)m(y)h(executing)h(lo)s
+Ft(SIGINT)p Fu(,)h(it)g(breaks)f(out)h(of)f(an)m(y)h(executing)h(lo)s
(ops.)150 4651 y(In)31 b(all)h(cases,)h(Bash)f(ignores)g
-Fs(SIGQUIT)p Ft(.)42 b(If)32 b(job)f(con)m(trol)i(is)e(in)h(e\013ect)h
-(\(see)f(Chapter)f(7)h([Job)g(Con)m(trol],)150 4761 y(page)f(98\),)h
-(Bash)e(ignores)h Fs(SIGTTIN)p Ft(,)e Fs(SIGTTOU)p Ft(,)g(and)g
-Fs(SIGTSTP)p Ft(.)275 4902 y(Non-builtin)i(commands)g(started)g(b)m(y)g
+Ft(SIGQUIT)p Fu(.)42 b(If)32 b(job)f(con)m(trol)i(is)e(in)h(e\013ect)h
+(\(see)f(Chapter)f(7)h([Job)g(Con)m(trol],)150 4761 y(page)f(97\),)h
+(Bash)e(ignores)h Ft(SIGTTIN)p Fu(,)e Ft(SIGTTOU)p Fu(,)g(and)g
+Ft(SIGTSTP)p Fu(.)275 4902 y(Non-builtin)i(commands)g(started)g(b)m(y)g
(Bash)h(ha)m(v)m(e)g(signal)g(handlers)e(set)i(to)g(the)g(v)-5
b(alues)31 b(inherited)150 5011 y(b)m(y)37 b(the)h(shell)g(from)f(its)h
(paren)m(t.)62 b(When)38 b(job)f(con)m(trol)i(is)e(not)h(in)f
(e\013ect,)k(async)m(hronous)c(commands)150 5121 y(ignore)f
-Fs(SIGINT)e Ft(and)h Fs(SIGQUIT)e Ft(in)j(addition)f(to)i(these)f
+Ft(SIGINT)e Fu(and)h Ft(SIGQUIT)e Fu(in)j(addition)f(to)i(these)f
(inherited)f(handlers.)55 b(Commands)35 b(run)f(as)i(a)150
5230 y(result)27 b(of)h(command)f(substitution)h(ignore)g(the)g(k)m
(eyb)s(oard-generated)g(job)g(con)m(trol)h(signals)f
-Fs(SIGTTIN)p Ft(,)150 5340 y Fs(SIGTTOU)p Ft(,)h(and)g
-Fs(SIGTSTP)p Ft(.)p eop end
+Ft(SIGTTIN)p Fu(,)150 5340 y Ft(SIGTTOU)p Fu(,)h(and)g
+Ft(SIGTSTP)p Fu(.)p eop end
%%Page: 39 45
-TeXDict begin 39 44 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 39 44 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(39)275 299
y(The)30 b(shell)i(exits)g(b)m(y)f(default)g(up)s(on)f(receipt)i(of)f
-(a)h Fs(SIGHUP)p Ft(.)42 b(Before)32 b(exiting,)h(an)e(in)m(teractiv)m
-(e)j(shell)150 408 y(resends)41 b(the)i Fs(SIGHUP)e Ft(to)i(all)g
+(a)h Ft(SIGHUP)p Fu(.)42 b(Before)32 b(exiting,)h(an)e(in)m(teractiv)m
+(e)j(shell)150 408 y(resends)41 b(the)i Ft(SIGHUP)e Fu(to)i(all)g
(jobs,)i(running)c(or)h(stopp)s(ed.)76 b(Stopp)s(ed)41
-b(jobs)h(are)h(sen)m(t)g Fs(SIGCONT)d Ft(to)150 518 y(ensure)32
-b(that)h(they)g(receiv)m(e)i(the)e Fs(SIGHUP)p Ft(.)47
+b(jobs)h(are)h(sen)m(t)g Ft(SIGCONT)d Fu(to)150 518 y(ensure)32
+b(that)h(they)g(receiv)m(e)i(the)e Ft(SIGHUP)p Fu(.)47
b(T)-8 b(o)33 b(prev)m(en)m(t)g(the)g(shell)g(from)g(sending)f(the)h
-Fs(SIGHUP)e Ft(signal)150 628 y(to)i(a)g(particular)g(job,)g(it)g
+Ft(SIGHUP)e Fu(signal)150 628 y(to)i(a)g(particular)g(job,)g(it)g
(should)f(b)s(e)g(remo)m(v)m(ed)h(from)g(the)f(jobs)g(table)i(with)e
-(the)h Fs(disown)e Ft(builtin)h(\(see)150 737 y(Section)f(7.2)g([Job)f
-(Con)m(trol)h(Builtins],)g(page)g(99\))h(or)e(mark)m(ed)g(to)h(not)f
-(receiv)m(e)i Fs(SIGHUP)d Ft(using)h Fs(disown)150 847
-y(-h)p Ft(.)275 992 y(If)38 b(the)h Fs(huponexit)e Ft(shell)i(option)g
-(has)g(b)s(een)f(set)i(with)f Fs(shopt)e Ft(\(see)j(Section)g(4.3.2)h
-([The)e(Shopt)150 1102 y(Builtin],)31 b(page)g(63\),)h(Bash)f(sends)e
-(a)i Fs(SIGHUP)e Ft(to)i(all)g(jobs)f(when)f(an)i(in)m(teractiv)m(e)i
+(the)h Ft(disown)e Fu(builtin)h(\(see)150 737 y(Section)f(7.2)g([Job)f
+(Con)m(trol)h(Builtins],)g(page)g(98\))h(or)e(mark)m(ed)g(to)h(not)f
+(receiv)m(e)i Ft(SIGHUP)d Fu(using)h Ft(disown)150 847
+y(-h)p Fu(.)275 992 y(If)38 b(the)h Ft(huponexit)e Fu(shell)i(option)g
+(has)g(b)s(een)f(set)i(with)f Ft(shopt)e Fu(\(see)j(Section)g(4.3.2)h
+([The)e(Shopt)150 1102 y(Builtin],)31 b(page)g(62\),)h(Bash)f(sends)e
+(a)i Ft(SIGHUP)e Fu(to)i(all)g(jobs)f(when)f(an)i(in)m(teractiv)m(e)i
(login)e(shell)g(exits.)275 1247 y(If)38 b(Bash)h(is)g(w)m(aiting)h
(for)f(a)g(command)f(to)i(complete)g(and)e(receiv)m(es)j(a)e(signal)h
(for)e(whic)m(h)h(a)g(trap)150 1357 y(has)c(b)s(een)f(set,)i(the)f
(trap)g(will)g(not)g(b)s(e)f(executed)i(un)m(til)f(the)g(command)f
(completes.)55 b(When)35 b(Bash)g(is)150 1467 y(w)m(aiting)j(for)f(an)g
-(async)m(hronous)g(command)g(via)h(the)f Fs(wait)f Ft(builtin,)i(the)g
+(async)m(hronous)g(command)g(via)h(the)f Ft(wait)f Fu(builtin,)i(the)g
(reception)g(of)f(a)g(signal)h(for)150 1576 y(whic)m(h)d(a)g(trap)g
-(has)g(b)s(een)f(set)h(will)h(cause)f(the)g Fs(wait)f
-Ft(builtin)h(to)g(return)f(immediately)i(with)f(an)g(exit)150
+(has)g(b)s(een)f(set)h(will)h(cause)f(the)g Ft(wait)f
+Fu(builtin)h(to)g(return)f(immediately)i(with)f(an)g(exit)150
1686 y(status)c(greater)g(than)f(128,)i(immediately)g(after)f(whic)m(h)
-f(the)h(trap)f(is)g(executed.)150 1935 y Fr(3.8)68 b(Shell)45
-b(Scripts)150 2094 y Ft(A)30 b(shell)f(script)h(is)f(a)h(text)h(\014le)
+f(the)h(trap)f(is)g(executed.)150 1935 y Fs(3.8)68 b(Shell)45
+b(Scripts)150 2094 y Fu(A)30 b(shell)f(script)h(is)f(a)h(text)h(\014le)
f(con)m(taining)h(shell)f(commands.)40 b(When)29 b(suc)m(h)g(a)h
-(\014le)g(is)f(used)g(as)h(the)g(\014rst)150 2204 y(non-option)i
-(argumen)m(t)h(when)e(in)m(v)m(oking)i(Bash,)g(and)e(neither)h(the)g(`)
-p Fs(-c)p Ft(')g(nor)g(`)p Fs(-s)p Ft(')g(option)g(is)g(supplied)150
-2313 y(\(see)25 b(Section)h(6.1)f([In)m(v)m(oking)h(Bash],)g(page)f
-(80\),)i(Bash)e(reads)f(and)g(executes)i(commands)e(from)g(the)h
-(\014le,)150 2423 y(then)32 b(exits.)46 b(This)32 b(mo)s(de)f(of)i(op)s
-(eration)f(creates)i(a)e(non-in)m(teractiv)m(e)j(shell.)46
-b(The)31 b(shell)i(\014rst)e(searc)m(hes)150 2532 y(for)d(the)g(\014le)
-g(in)g(the)g(curren)m(t)f(directory)-8 b(,)30 b(and)d(lo)s(oks)i(in)e
-(the)i(directories)g(in)e Fs($PATH)g Ft(if)h(not)g(found)e(there.)275
+(\014le)g(is)f(used)g(as)h(the)g(\014rst)150 2204 y(non-option)c
+(argumen)m(t)h(when)e(in)m(v)m(oking)i(Bash,)g(and)f(neither)g(the)g
+Ft(-c)g Fu(nor)f Ft(-s)h Fu(option)g(is)g(supplied)f(\(see)150
+2313 y(Section)39 b(6.1)g([In)m(v)m(oking)g(Bash],)h(page)f(80\),)i
+(Bash)d(reads)g(and)f(executes)i(commands)f(from)f(the)i(\014le,)150
+2423 y(then)32 b(exits.)46 b(This)32 b(mo)s(de)f(of)i(op)s(eration)f
+(creates)i(a)e(non-in)m(teractiv)m(e)j(shell.)46 b(The)31
+b(shell)i(\014rst)e(searc)m(hes)150 2532 y(for)d(the)g(\014le)g(in)g
+(the)g(curren)m(t)f(directory)-8 b(,)30 b(and)d(lo)s(oks)i(in)e(the)i
+(directories)g(in)e Ft($PATH)g Fu(if)h(not)g(found)e(there.)275
2678 y(When)34 b(Bash)h(runs)e(a)i(shell)g(script,)g(it)h(sets)f(the)f
-(sp)s(ecial)i(parameter)f Fs(0)f Ft(to)h(the)g(name)g(of)g(the)g
+(sp)s(ecial)i(parameter)f Ft(0)f Fu(to)h(the)g(name)g(of)g(the)g
(\014le,)150 2787 y(rather)k(than)g(the)h(name)f(of)h(the)f(shell,)j
(and)d(the)h(p)s(ositional)g(parameters)f(are)h(set)g(to)g(the)g
(remain-)150 2897 y(ing)f(argumen)m(ts,)j(if)d(an)m(y)g(are)g(giv)m
(en.)67 b(If)39 b(no)g(additional)g(argumen)m(ts)h(are)f(supplied,)h
(the)f(p)s(ositional)150 3007 y(parameters)31 b(are)f(unset.)275
3152 y(A)39 b(shell)h(script)f(ma)m(y)h(b)s(e)f(made)h(executable)h(b)m
-(y)e(using)g(the)h Fs(chmod)e Ft(command)h(to)h(turn)e(on)i(the)150
+(y)e(using)g(the)h Ft(chmod)e Fu(command)h(to)h(turn)e(on)i(the)150
3262 y(execute)j(bit.)73 b(When)41 b(Bash)g(\014nds)e(suc)m(h)i(a)h
-(\014le)f(while)g(searc)m(hing)h(the)f Fs($PATH)f Ft(for)h(a)h
+(\014le)f(while)g(searc)m(hing)h(the)f Ft($PATH)f Fu(for)h(a)h
(command,)h(it)150 3371 y(spa)m(wns)30 b(a)g(subshell)g(to)h(execute)h
(it.)41 b(In)30 b(other)g(w)m(ords,)g(executing)390 3517
-y Fs(filename)46 b Fi(arguments)150 3662 y Ft(is)30 b(equiv)-5
-b(alen)m(t)32 b(to)f(executing)390 3808 y Fs(bash)47
-b(filename)e Fi(arguments)150 3953 y Ft(if)30 b Fs(filename)d
-Ft(is)j(an)f(executable)j(shell)e(script.)40 b(This)29
+y Ft(filename)46 b Fj(arguments)150 3662 y Fu(is)30 b(equiv)-5
+b(alen)m(t)32 b(to)f(executing)390 3808 y Ft(bash)47
+b(filename)e Fj(arguments)150 3953 y Fu(if)30 b Ft(filename)d
+Fu(is)j(an)f(executable)j(shell)e(script.)40 b(This)29
b(subshell)g(reinitializes)i(itself,)g(so)f(that)h(the)e(e\013ect)150
4063 y(is)36 b(as)h(if)g(a)f(new)g(shell)h(had)f(b)s(een)g(in)m(v)m(ok)
m(ed)h(to)h(in)m(terpret)e(the)h(script,)h(with)e(the)h(exception)h
(that)f(the)150 4172 y(lo)s(cations)25 b(of)g(commands)e(remem)m(b)s
(ered)h(b)m(y)g(the)g(paren)m(t)g(\(see)h(the)f(description)g(of)g
-Fs(hash)f Ft(in)h(Section)h(4.1)150 4282 y([Bourne)30
+Ft(hash)f Fu(in)h(Section)h(4.1)150 4282 y([Bourne)30
b(Shell)h(Builtins],)g(page)g(41\))h(are)e(retained)h(b)m(y)f(the)h(c)m
(hild.)275 4427 y(Most)36 b(v)m(ersions)g(of)g(Unix)f(mak)m(e)h(this)g
(a)g(part)f(of)h(the)g(op)s(erating)g(system's)f(command)h(execution)
150 4537 y(mec)m(hanism.)50 b(If)33 b(the)g(\014rst)g(line)h(of)f(a)h
(script)f(b)s(egins)g(with)g(the)g(t)m(w)m(o)i(c)m(haracters)g(`)p
-Fs(#!)p Ft(',)f(the)g(remainder)150 4647 y(of)d(the)g(line)h(sp)s
+Ft(#!)p Fu(',)f(the)g(remainder)150 4647 y(of)d(the)g(line)h(sp)s
(eci\014es)e(an)h(in)m(terpreter)g(for)g(the)g(program.)43
-b(Th)m(us,)30 b(y)m(ou)h(can)h(sp)s(ecify)e(Bash,)i Fs(awk)p
-Ft(,)e(P)m(erl,)150 4756 y(or)g(some)h(other)g(in)m(terpreter)g(and)e
+b(Th)m(us,)30 b(y)m(ou)h(can)h(sp)s(ecify)e(Bash,)i Ft(awk)p
+Fu(,)e(P)m(erl,)150 4756 y(or)g(some)h(other)g(in)m(terpreter)g(and)e
(write)i(the)f(rest)h(of)g(the)f(script)g(\014le)h(in)f(that)h
(language.)275 4902 y(The)40 b(argumen)m(ts)h(to)g(the)g(in)m
(terpreter)g(consist)g(of)g(a)g(single)h(optional)f(argumen)m(t)h
(the)f(in)m(terpreter)150 5340 y(name)30 b(and)g(argumen)m(t)h(to)g(a)g
(maxim)m(um)f(of)h(32)g(c)m(haracters.)p eop end
%%Page: 40 46
-TeXDict begin 40 45 bop 150 -116 a Ft(Chapter)30 b(3:)41
+TeXDict begin 40 45 bop 150 -116 a Fu(Chapter)30 b(3:)41
b(Basic)32 b(Shell)e(F)-8 b(eatures)2246 b(40)275 299
-y(Bash)32 b(scripts)g(often)g(b)s(egin)g(with)g Fs(#!)e(/bin/bash)g
-Ft(\(assuming)i(that)h(Bash)f(has)g(b)s(een)f(installed)i(in)150
-408 y(`)p Fs(/bin)p Ft('\),)25 b(since)e(this)g(ensures)f(that)i(Bash)f
-(will)h(b)s(e)e(used)h(to)h(in)m(terpret)f(the)g(script,)i(ev)m(en)f
-(if)f(it)h(is)f(executed)150 518 y(under)29 b(another)h(shell.)p
+y(Bash)32 b(scripts)g(often)g(b)s(egin)g(with)g Ft(#!)e(/bin/bash)g
+Fu(\(assuming)i(that)h(Bash)f(has)g(b)s(een)f(installed)i(in)150
+408 y Ft(/bin)p Fu(\),)26 b(since)h(this)f(ensures)f(that)i(Bash)f
+(will)h(b)s(e)f(used)f(to)i(in)m(terpret)f(the)h(script,)g(ev)m(en)g
+(if)f(it)h(is)f(executed)150 518 y(under)j(another)h(shell.)p
eop end
%%Page: 41 47
-TeXDict begin 41 46 bop 150 -116 a Ft(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(41)150 299 y Fo(4)80
-b(Shell)53 b(Builtin)f(Commands)150 541 y Ft(Builtin)34
+TeXDict begin 41 46 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(41)150 299 y Fp(4)80
+b(Shell)53 b(Builtin)f(Commands)150 541 y Fu(Builtin)34
b(commands)f(are)h(con)m(tained)g(within)f(the)h(shell)g(itself.)50
b(When)34 b(the)f(name)h(of)f(a)h(builtin)f(com-)150
651 y(mand)26 b(is)i(used)e(as)i(the)g(\014rst)e(w)m(ord)h(of)h(a)f
(other)g(c)m(hapters:)69 b(builtin)43 b(commands)h(whic)m(h)150
1473 y(pro)m(vide)23 b(the)h(Bash)f(in)m(terface)i(to)f(the)g(job)f
(con)m(trol)i(facilities)g(\(see)f(Section)h(7.2)f([Job)f(Con)m(trol)h
-(Builtins],)150 1583 y(page)40 b(99\),)j(the)c(directory)h(stac)m(k)g
+(Builtins],)150 1583 y(page)40 b(98\),)j(the)c(directory)h(stac)m(k)g
(\(see)g(Section)g(6.8.1)h([Directory)g(Stac)m(k)f(Builtins],)i(page)e
-(91\),)j(the)150 1692 y(command)23 b(history)h(\(see)g(Section)g(9.2)h
-([Bash)f(History)g(Builtins],)h(page)g(134\),)h(and)d(the)h
+(90\),)j(the)150 1692 y(command)23 b(history)h(\(see)g(Section)g(9.2)h
+([Bash)f(History)g(Builtins],)h(page)g(133\),)h(and)d(the)h
(programmable)150 1802 y(completion)32 b(facilities)g(\(see)g(Section)f
-(8.7)g([Programmable)g(Completion)g(Builtins],)g(page)h(127\).)275
+(8.7)g([Programmable)g(Completion)g(Builtins],)g(page)h(126\).)275
1939 y(Man)m(y)f(of)f(the)h(builtins)e(ha)m(v)m(e)j(b)s(een)e(extended)
-g(b)m(y)g Fl(posix)g Ft(or)g(Bash.)275 2076 y(Unless)39
+g(b)m(y)g Fm(posix)g Fu(or)g(Bash.)275 2076 y(Unless)39
b(otherwise)h(noted,)i(eac)m(h)f(builtin)e(command)g(do)s(cumen)m(ted)g
(as)h(accepting)h(options)f(pre-)150 2186 y(ceded)33
-b(b)m(y)h(`)p Fs(-)p Ft(')f(accepts)i(`)p Fs(--)p Ft(')e(to)h(signify)f
-(the)h(end)e(of)i(the)f(options.)50 b(The)33 b Fs(:)p
-Ft(,)h Fs(true)p Ft(,)f Fs(false)p Ft(,)f(and)h Fs(test)150
-2295 y Ft(builtins)i(do)g(not)h(accept)g(options)g(and)f(do)g(not)h
-(treat)g(`)p Fs(--)p Ft(')f(sp)s(ecially)-8 b(.)57 b(The)35
-b Fs(exit)p Ft(,)h Fs(logout)p Ft(,)f Fs(break)p Ft(,)150
-2405 y Fs(continue)p Ft(,)29 b Fs(let)p Ft(,)i(and)g
-Fs(shift)f Ft(builtins)g(accept)j(and)e(pro)s(cess)g(argumen)m(ts)g(b)s
-(eginning)g(with)g(`)p Fs(-)p Ft(')g(with-)150 2515 y(out)f(requiring)f
-(`)p Fs(--)p Ft('.)41 b(Other)29 b(builtins)h(that)g(accept)h(argumen)m
+b(b)m(y)h(`)p Ft(-)p Fu(')f(accepts)i(`)p Ft(--)p Fu(')e(to)h(signify)f
+(the)h(end)e(of)i(the)f(options.)50 b(The)33 b Ft(:)p
+Fu(,)h Ft(true)p Fu(,)f Ft(false)p Fu(,)f(and)h Ft(test)150
+2295 y Fu(builtins)i(do)g(not)h(accept)g(options)g(and)f(do)g(not)h
+(treat)g(`)p Ft(--)p Fu(')f(sp)s(ecially)-8 b(.)57 b(The)35
+b Ft(exit)p Fu(,)h Ft(logout)p Fu(,)f Ft(break)p Fu(,)150
+2405 y Ft(continue)p Fu(,)29 b Ft(let)p Fu(,)i(and)g
+Ft(shift)f Fu(builtins)g(accept)j(and)e(pro)s(cess)g(argumen)m(ts)g(b)s
+(eginning)g(with)g(`)p Ft(-)p Fu(')g(with-)150 2515 y(out)f(requiring)f
+(`)p Ft(--)p Fu('.)41 b(Other)29 b(builtins)h(that)g(accept)h(argumen)m
(ts)f(but)g(are)g(not)g(sp)s(eci\014ed)f(as)h(accepting)150
2624 y(options)25 b(in)m(terpret)f(argumen)m(ts)h(b)s(eginning)e(with)h
-(`)p Fs(-)p Ft(')h(as)f(in)m(v)-5 b(alid)25 b(options)g(and)e(require)h
-(`)p Fs(--)p Ft(')g(to)h(prev)m(en)m(t)150 2734 y(this)30
-b(in)m(terpretation.)150 2970 y Fr(4.1)68 b(Bourne)45
-b(Shell)g(Builtins)150 3130 y Ft(The)22 b(follo)m(wing)j(shell)d
+(`)p Ft(-)p Fu(')h(as)f(in)m(v)-5 b(alid)25 b(options)g(and)e(require)h
+(`)p Ft(--)p Fu(')g(to)h(prev)m(en)m(t)150 2734 y(this)30
+b(in)m(terpretation.)150 2970 y Fs(4.1)68 b(Bourne)45
+b(Shell)g(Builtins)150 3130 y Fu(The)22 b(follo)m(wing)j(shell)d
(builtin)h(commands)f(are)h(inherited)g(from)f(the)h(Bourne)g(Shell.)38
b(These)22 b(commands)150 3239 y(are)31 b(implemen)m(ted)g(as)f(sp)s
-(eci\014ed)g(b)m(y)g(the)h Fl(posix)e Ft(standard.)150
-3403 y Fs(:)h Ft(\(a)h(colon\))870 3512 y Fs(:)47 b([)p
-Fi(arguments)11 b Fs(])630 3648 y Ft(Do)43 b(nothing)f(b)s(ey)m(ond)g
-(expanding)f Fq(argumen)m(ts)46 b Ft(and)c(p)s(erforming)f
+(eci\014ed)g(b)m(y)g(the)h Fm(posix)e Fu(standard.)150
+3403 y Ft(:)h Fu(\(a)h(colon\))870 3512 y Ft(:)47 b([)p
+Fj(arguments)p Ft(])630 3648 y Fu(Do)c(nothing)f(b)s(ey)m(ond)g
+(expanding)f Fr(argumen)m(ts)46 b Fu(and)c(p)s(erforming)f
(redirections.)76 b(The)630 3758 y(return)29 b(status)i(is)f(zero.)150
-3920 y Fs(.)g Ft(\(a)h(p)s(erio)s(d\))870 4029 y Fs(.)47
-b Fi(filename)57 b Fs([)p Fi(arguments)11 b Fs(])630
-4165 y Ft(Read)34 b(and)f(execute)i(commands)e(from)g(the)h
-Fq(\014lename)39 b Ft(argumen)m(t)34 b(in)f(the)h(curren)m(t)g(shell)
-630 4275 y(con)m(text.)45 b(If)31 b Fq(\014lename)37
-b Ft(do)s(es)31 b(not)g(con)m(tain)i(a)e(slash,)h(the)g
-Fs(PATH)e Ft(v)-5 b(ariable)32 b(is)f(used)f(to)i(\014nd)630
-4384 y Fq(\014lename)5 b Ft(.)51 b(When)34 b(Bash)g(is)g(not)g(in)f
-Fl(posix)g Ft(mo)s(de,)i(the)f(curren)m(t)f(directory)i(is)e(searc)m
-(hed)630 4494 y(if)e Fq(\014lename)36 b Ft(is)31 b(not)h(found)d(in)i
-Fs($PATH)p Ft(.)41 b(If)31 b(an)m(y)g Fq(argumen)m(ts)k
-Ft(are)c(supplied,)f(they)i(b)s(ecome)630 4604 y(the)e(p)s(ositional)h
-(parameters)g(when)e Fq(\014lename)35 b Ft(is)30 b(executed.)42
+3920 y Ft(.)g Fu(\(a)h(p)s(erio)s(d\))870 4029 y Ft(.)47
+b Fj(filename)f Ft([)p Fj(arguments)p Ft(])630 4165 y
+Fu(Read)34 b(and)f(execute)i(commands)e(from)g(the)h
+Fr(\014lename)39 b Fu(argumen)m(t)34 b(in)f(the)h(curren)m(t)g(shell)
+630 4275 y(con)m(text.)45 b(If)31 b Fr(\014lename)37
+b Fu(do)s(es)31 b(not)g(con)m(tain)i(a)e(slash,)h(the)g
+Ft(PATH)e Fu(v)-5 b(ariable)32 b(is)f(used)f(to)i(\014nd)630
+4384 y Fr(\014lename)p Fu(.)52 b(When)34 b(Bash)g(is)h(not)f(in)g
+Fm(posix)f Fu(mo)s(de,)i(the)g(curren)m(t)f(directory)g(is)g(searc)m
+(hed)630 4494 y(if)d Fr(\014lename)36 b Fu(is)31 b(not)h(found)d(in)i
+Ft($PATH)p Fu(.)41 b(If)31 b(an)m(y)g Fr(argumen)m(ts)k
+Fu(are)c(supplied,)f(they)i(b)s(ecome)630 4604 y(the)e(p)s(ositional)h
+(parameters)g(when)e Fr(\014lename)35 b Fu(is)30 b(executed.)42
b(Otherwise)30 b(the)g(p)s(ositional)630 4713 y(parameters)43
b(are)h(unc)m(hanged.)79 b(The)42 b(return)g(status)i(is)f(the)g(exit)h
(status)g(of)f(the)g(last)630 4823 y(command)37 b(executed,)k(or)c
(zero)h(if)g(no)f(commands)g(are)h(executed.)63 b(If)36
-b Fq(\014lename)43 b Ft(is)38 b(not)630 4932 y(found,)22
+b Fr(\014lename)43 b Fu(is)38 b(not)630 4932 y(found,)22
b(or)f(cannot)g(b)s(e)f(read,)j(the)e(return)f(status)h(is)g(non-zero.)
38 b(This)20 b(builtin)h(is)f(equiv)-5 b(alen)m(t)630
-5042 y(to)31 b Fs(source)p Ft(.)150 5204 y Fs(break)870
-5340 y(break)46 b([)p Fi(n)11 b Fs(])p eop end
+5042 y(to)31 b Ft(source)p Fu(.)150 5204 y Ft(break)870
+5340 y(break)46 b([)p Fj(n)p Ft(])p eop end
%%Page: 42 48
-TeXDict begin 42 47 bop 150 -116 a Ft(Chapter)30 b(4:)41
+TeXDict begin 42 47 bop 150 -116 a Fu(Chapter)30 b(4:)41
b(Shell)30 b(Builtin)h(Commands)2069 b(42)630 299 y(Exit)45
-b(from)f(a)g Fs(for)p Ft(,)k Fs(while)p Ft(,)e Fs(until)p
-Ft(,)h(or)d Fs(select)f Ft(lo)s(op.)83 b(If)44 b Fq(n)g
-Ft(is)g(supplied,)j(the)e Fq(n)p Ft(th)630 408 y(enclosing)c(lo)s(op)f
-(is)h(exited.)70 b Fq(n)40 b Ft(m)m(ust)g(b)s(e)f(greater)j(than)d(or)i
+b(from)f(a)g Ft(for)p Fu(,)k Ft(while)p Fu(,)e Ft(until)p
+Fu(,)h(or)d Ft(select)f Fu(lo)s(op.)83 b(If)44 b Fr(n)g
+Fu(is)g(supplied,)j(the)e Fr(n)p Fu(th)630 408 y(enclosing)c(lo)s(op)f
+(is)h(exited.)70 b Fr(n)40 b Fu(m)m(ust)g(b)s(e)f(greater)j(than)d(or)i
(equal)f(to)h(1.)70 b(The)40 b(return)630 518 y(status)31
-b(is)f(zero)h(unless)f Fq(n)g Ft(is)g(not)h(greater)g(than)g(or)f
-(equal)h(to)g(1.)150 677 y Fs(cd)870 812 y(cd)47 b([-L|[-P)f([-e]])g
-([-@])h([)p Fi(directory)11 b Fs(])630 946 y Ft(Change)26
-b(the)g(curren)m(t)g(w)m(orking)g(directory)h(to)f Fq(directory)8
-b Ft(.)40 b(If)25 b Fq(directory)35 b Ft(is)26 b(not)g(supplied,)630
-1056 y(the)g(v)-5 b(alue)26 b(of)f(the)h Fs(HOME)e Ft(shell)i(v)-5
+b(is)f(zero)h(unless)f Fr(n)g Fu(is)g(not)h(greater)g(than)g(or)f
+(equal)h(to)g(1.)150 677 y Ft(cd)870 812 y(cd)47 b([-L|[-P)f([-e]])g
+([-@])h([)p Fj(directory)p Ft(])630 946 y Fu(Change)27
+b(the)g(curren)m(t)f(w)m(orking)h(directory)g(to)h Fr(directory)p
+Fu(.)40 b(If)26 b Fr(directory)35 b Fu(is)27 b(not)g(supplied,)630
+1056 y(the)f(v)-5 b(alue)26 b(of)f(the)h Ft(HOME)e Fu(shell)i(v)-5
b(ariable)26 b(is)g(used.)38 b(An)m(y)25 b(additional)i(argumen)m(ts)e
-(follo)m(wing)630 1166 y Fq(directory)39 b Ft(are)31
+(follo)m(wing)630 1166 y Fr(directory)39 b Fu(are)31
b(ignored.)41 b(If)30 b(the)h(shell)g(v)-5 b(ariable)31
-b Fs(CDPATH)e Ft(exists,)i(it)g(is)g(used)f(as)g(a)h(searc)m(h)630
-1275 y(path:)39 b(eac)m(h)28 b(directory)g(name)f(in)g
-Fs(CDPATH)e Ft(is)j(searc)m(hed)f(for)g Fq(directory)8
-b Ft(,)29 b(with)e(alternativ)m(e)630 1385 y(directory)k(names)g(in)f
-Fs(CDPATH)f Ft(separated)j(b)m(y)e(a)h(colon)h(\(`)p
-Fs(:)p Ft('\).)43 b(If)30 b Fq(directory)39 b Ft(b)s(egins)30
-b(with)630 1494 y(a)h(slash,)f Fs(CDPATH)f Ft(is)h(not)h(used.)630
-1629 y(The)c(`)p Fs(-P)p Ft(')h(option)g(means)g(to)h(not)f(follo)m(w)h
-(sym)m(b)s(olic)f(links:)39 b(sym)m(b)s(olic)28 b(links)g(are)g(resolv)
-m(ed)630 1738 y(while)41 b Fs(cd)f Ft(is)h(tra)m(v)m(ersing)h
-Fq(directory)49 b Ft(and)40 b(b)s(efore)g(pro)s(cessing)h(an)f
-(instance)i(of)f(`)p Fs(..)p Ft(')f(in)630 1848 y Fq(directory)8
-b Ft(.)630 1983 y(By)30 b(default,)g(or)g(when)f(the)h(`)p
-Fs(-L)p Ft(')f(option)i(is)f(supplied,)e(sym)m(b)s(olic)j(links)e(in)g
-Fq(directory)39 b Ft(are)630 2092 y(resolv)m(ed)31 b(after)g
-Fs(cd)f Ft(pro)s(cesses)g(an)g(instance)h(of)g(`)p Fs(..)p
-Ft(')f(in)g Fq(directory)8 b Ft(.)630 2227 y(If)34 b(`)p
-Fs(..)p Ft(')g(app)s(ears)g(in)g Fq(directory)8 b Ft(,)36
-b(it)e(is)h(pro)s(cessed)f(b)m(y)g(remo)m(ving)h(the)g(immediately)g
-(pre-)630 2336 y(ceding)c(pathname)f(comp)s(onen)m(t,)h(bac)m(k)g(to)g
-(a)g(slash)f(or)h(the)f(b)s(eginning)g(of)g Fq(directory)8
-b Ft(.)630 2471 y(If)25 b(the)g(`)p Fs(-e)p Ft(')g(option)h(is)f
-(supplied)f(with)g(`)p Fs(-P)p Ft(')h(and)g(the)g(curren)m(t)g(w)m
-(orking)h(directory)f(cannot)630 2580 y(b)s(e)37 b(successfully)g
-(determined)g(after)i(a)e(successful)h(directory)g(c)m(hange,)i
-Fs(cd)d Ft(will)h(return)630 2690 y(an)30 b(unsuccessful)f(status.)630
-2824 y(On)37 b(systems)g(that)h(supp)s(ort)e(it,)k(the)e(`)p
-Fs(-@)p Ft(')g(option)g(presen)m(ts)f(the)h(extended)f(attributes)630
+b Ft(CDPATH)e Fu(exists,)i(it)g(is)g(used)f(as)g(a)h(searc)m(h)630
+1275 y(path:)39 b(eac)m(h)29 b(directory)g(name)f(in)f
+Ft(CDPATH)g Fu(is)h(searc)m(hed)g(for)g Fr(directory)p
+Fu(,)h(with)f(alternativ)m(e)630 1385 y(directory)j(names)g(in)f
+Ft(CDPATH)f Fu(separated)j(b)m(y)e(a)h(colon)h(\(`)p
+Ft(:)p Fu('\).)43 b(If)30 b Fr(directory)39 b Fu(b)s(egins)30
+b(with)630 1494 y(a)h(slash,)f Ft(CDPATH)f Fu(is)h(not)h(used.)630
+1629 y(The)g Ft(-P)h Fu(option)g(means)g(to)h(not)f(follo)m(w)h(sym)m
+(b)s(olic)g(links:)44 b(sym)m(b)s(olic)32 b(links)g(are)g(resolv)m(ed)
+630 1738 y(while)41 b Ft(cd)f Fu(is)h(tra)m(v)m(ersing)h
+Fr(directory)49 b Fu(and)40 b(b)s(efore)g(pro)s(cessing)h(an)f
+(instance)i(of)f(`)p Ft(..)p Fu(')f(in)630 1848 y Fr(directory)p
+Fu(.)630 1983 y(By)34 b(default,)h(or)e(when)g(the)g
+Ft(-L)g Fu(option)h(is)g(supplied,)f(sym)m(b)s(olic)h(links)f(in)h
+Fr(directory)42 b Fu(are)630 2092 y(resolv)m(ed)31 b(after)g
+Ft(cd)f Fu(pro)s(cesses)g(an)g(instance)h(of)g(`)p Ft(..)p
+Fu(')f(in)g Fr(directory)p Fu(.)630 2227 y(If)35 b(`)p
+Ft(..)p Fu(')f(app)s(ears)h(in)f Fr(directory)p Fu(,)j(it)f(is)f(pro)s
+(cessed)f(b)m(y)h(remo)m(ving)h(the)f(immediately)h(pre-)630
+2336 y(ceding)31 b(pathname)f(comp)s(onen)m(t,)h(bac)m(k)g(to)g(a)g
+(slash)f(or)h(the)f(b)s(eginning)g(of)g Fr(directory)p
+Fu(.)630 2471 y(If)i(the)i Ft(-e)e Fu(option)h(is)g(supplied)f(with)g
+Ft(-P)h Fu(and)f(the)h(curren)m(t)g(w)m(orking)g(directory)g(cannot)630
+2580 y(b)s(e)k(successfully)g(determined)g(after)i(a)e(successful)h
+(directory)g(c)m(hange,)i Ft(cd)d Fu(will)h(return)630
+2690 y(an)30 b(unsuccessful)f(status.)630 2824 y(On)41
+b(systems)h(that)h(supp)s(ort)d(it,)46 b(the)c Ft(-@)g
+Fu(option)g(presen)m(ts)g(the)g(extended)g(attributes)630
2934 y(asso)s(ciated)32 b(with)e(a)h(\014le)f(as)h(a)f(directory)-8
-b(.)630 3068 y(If)41 b Fq(directory)49 b Ft(is)41 b(`)p
-Fs(-)p Ft(',)j(it)e(is)f(con)m(v)m(erted)h(to)g Fs($OLDPWD)d
-Ft(b)s(efore)i(the)g(directory)h(c)m(hange)g(is)630 3178
+b(.)630 3068 y(If)41 b Fr(directory)49 b Fu(is)41 b(`)p
+Ft(-)p Fu(',)j(it)e(is)f(con)m(v)m(erted)h(to)g Ft($OLDPWD)d
+Fu(b)s(efore)i(the)g(directory)h(c)m(hange)g(is)630 3178
y(attempted.)630 3313 y(If)33 b(a)h(non-empt)m(y)g(directory)g(name)f
-(from)g Fs(CDPATH)f Ft(is)h(used,)h(or)g(if)f(`)p Fs(-)p
-Ft(')h(is)f(the)h(\014rst)f(argu-)630 3422 y(men)m(t,)28
+(from)g Ft(CDPATH)f Fu(is)h(used,)h(or)g(if)f(`)p Ft(-)p
+Fu(')h(is)f(the)h(\014rst)f(argu-)630 3422 y(men)m(t,)28
b(and)e(the)h(directory)g(c)m(hange)h(is)f(successful,)h(the)f
(absolute)g(pathname)g(of)f(the)h(new)630 3532 y(w)m(orking)k
(directory)g(is)f(written)g(to)i(the)e(standard)g(output.)630
3666 y(The)f(return)g(status)h(is)f(zero)i(if)e(the)h(directory)g(is)g
(successfully)g(c)m(hanged,)g(non-zero)g(oth-)630 3776
-y(erwise.)150 3935 y Fs(continue)870 4070 y(continue)46
-b([)p Fi(n)11 b Fs(])630 4204 y Ft(Resume)32 b(the)g(next)g(iteration)i
-(of)e(an)g(enclosing)h Fs(for)p Ft(,)f Fs(while)p Ft(,)f
-Fs(until)p Ft(,)g(or)h Fs(select)f Ft(lo)s(op.)630 4314
-y(If)f Fq(n)h Ft(is)g(supplied,)e(the)j(execution)g(of)f(the)g
-Fq(n)p Ft(th)f(enclosing)i(lo)s(op)f(is)f(resumed.)42
-b Fq(n)30 b Ft(m)m(ust)h(b)s(e)630 4423 y(greater)39
+y(erwise.)150 3935 y Ft(continue)870 4070 y(continue)46
+b([)p Fj(n)p Ft(])630 4204 y Fu(Resume)32 b(the)g(next)g(iteration)i
+(of)e(an)g(enclosing)h Ft(for)p Fu(,)f Ft(while)p Fu(,)f
+Ft(until)p Fu(,)g(or)h Ft(select)f Fu(lo)s(op.)630 4314
+y(If)f Fr(n)h Fu(is)g(supplied,)e(the)j(execution)g(of)f(the)g
+Fr(n)p Fu(th)f(enclosing)i(lo)s(op)f(is)f(resumed.)42
+b Fr(n)30 b Fu(m)m(ust)h(b)s(e)630 4423 y(greater)39
b(than)f(or)g(equal)g(to)h(1.)63 b(The)38 b(return)e(status)j(is)e
-(zero)i(unless)e Fq(n)h Ft(is)g(not)g(greater)630 4533
-y(than)30 b(or)g(equal)h(to)g(1.)150 4692 y Fs(eval)870
-4827 y(eval)47 b([)p Fi(arguments)11 b Fs(])630 4961
-y Ft(The)25 b(argumen)m(ts)h(are)g(concatenated)i(together)f(in)m(to)f
-(a)g(single)h(command,)f(whic)m(h)g(is)f(then)630 5071
-y(read)35 b(and)g(executed,)j(and)d(its)h(exit)g(status)g(returned)e
-(as)h(the)h(exit)g(status)g(of)g Fs(eval)p Ft(.)54 b(If)630
-5181 y(there)31 b(are)f(no)h(argumen)m(ts)f(or)h(only)f(empt)m(y)h
-(argumen)m(ts,)g(the)f(return)g(status)g(is)h(zero.)150
-5340 y Fs(exec)p eop end
+(zero)i(unless)e Fr(n)h Fu(is)g(not)g(greater)630 4533
+y(than)30 b(or)g(equal)h(to)g(1.)150 4692 y Ft(eval)870
+4827 y(eval)47 b([)p Fj(arguments)p Ft(])630 4961 y Fu(The)25
+b(argumen)m(ts)h(are)g(concatenated)i(together)f(in)m(to)f(a)g(single)h
+(command,)f(whic)m(h)g(is)f(then)630 5071 y(read)35 b(and)g(executed,)j
+(and)d(its)h(exit)g(status)g(returned)e(as)h(the)h(exit)g(status)g(of)g
+Ft(eval)p Fu(.)54 b(If)630 5181 y(there)31 b(are)f(no)h(argumen)m(ts)f
+(or)h(only)f(empt)m(y)h(argumen)m(ts,)g(the)f(return)g(status)g(is)h
+(zero.)150 5340 y Ft(exec)p eop end
%%Page: 43 49
-TeXDict begin 43 48 bop 150 -116 a Ft(Chapter)30 b(4:)h(Shell)f
-(Builtin)h(Commands)2079 b(43)870 299 y Fs(exec)47 b([-cl])f([-a)h
-Fi(name)11 b Fs(])46 b([)p Fi(command)56 b Fs([)p Fi(arguments)11
-b Fs(]])630 440 y Ft(If)36 b Fq(command)k Ft(is)c(supplied,)h(it)g
+TeXDict begin 43 48 bop 150 -116 a Fu(Chapter)30 b(4:)h(Shell)f
+(Builtin)h(Commands)2079 b(43)870 299 y Ft(exec)47 b([-cl])f([-a)h
+Fj(name)p Ft(])f([)p Fj(command)g Ft([)p Fj(arguments)p
+Ft(]])630 440 y Fu(If)36 b Fr(command)k Fu(is)c(supplied,)h(it)g
(replaces)h(the)e(shell)h(without)f(creating)i(a)f(new)f(pro)s(cess.)
-630 549 y(If)h(the)g(`)p Fs(-l)p Ft(')g(option)h(is)f(supplied,)g(the)h
-(shell)f(places)h(a)g(dash)e(at)i(the)f(b)s(eginning)f(of)i(the)630
-659 y(zeroth)e(argumen)m(t)g(passed)f(to)h Fq(command)t
-Ft(.)56 b(This)34 b(is)i(what)f(the)h Fs(login)e Ft(program)h(do)s(es.)
-630 769 y(The)e(`)p Fs(-c)p Ft(')h(option)g(causes)g
-Fq(command)j Ft(to)e(b)s(e)e(executed)i(with)e(an)h(empt)m(y)g(en)m
-(vironmen)m(t.)630 878 y(If)d(`)p Fs(-a)p Ft(')g(is)h(supplied,)f(the)g
-(shell)h(passes)f Fq(name)37 b Ft(as)31 b(the)h(zeroth)g(argumen)m(t)g
-(to)g Fq(command)t Ft(.)630 988 y(If)g Fq(command)j Ft(cannot)e(b)s(e)f
+630 549 y(If)k(the)h Ft(-l)e Fu(option)i(is)g(supplied,)h(the)e(shell)h
+(places)g(a)g(dash)f(at)h(the)f(b)s(eginning)g(of)h(the)630
+659 y(zeroth)36 b(argumen)m(t)h(passed)e(to)h Fr(command)p
+Fu(.)57 b(This)35 b(is)h(what)f(the)h Ft(login)e Fu(program)i(do)s(es.)
+630 769 y(The)i Ft(-c)g Fu(option)g(causes)h Fr(command)j
+Fu(to)d(b)s(e)f(executed)h(with)f(an)g(empt)m(y)h(en)m(vironmen)m(t.)
+630 878 y(If)c Ft(-a)g Fu(is)h(supplied,)f(the)h(shell)g(passes)f
+Fr(name)41 b Fu(as)36 b(the)f(zeroth)i(argumen)m(t)f(to)g
+Fr(command)p Fu(.)630 988 y(If)c Fr(command)j Fu(cannot)e(b)s(e)f
(executed)h(for)f(some)g(reason,)h(a)g(non-in)m(teractiv)m(e)i(shell)d
-(exits,)630 1097 y(unless)27 b(the)g Fs(execfail)e Ft(shell)i(option)h
+(exits,)630 1097 y(unless)27 b(the)g Ft(execfail)e Fu(shell)i(option)h
(is)f(enabled.)40 b(In)27 b(that)g(case,)j(it)d(returns)f(failure.)40
-b(An)630 1207 y(in)m(teractiv)m(e)d(shell)d(returns)f(failure)h(if)g
-(the)g(\014le)g(cannot)g(b)s(e)g(executed.)52 b(If)33
-b(no)h Fq(command)630 1316 y Ft(is)27 b(sp)s(eci\014ed,)g(redirections)
+b(An)630 1207 y(in)m(teractiv)m(e)d(shell)c(returns)g(failure)h(if)f
+(the)h(\014le)g(cannot)g(b)s(e)f(executed.)52 b(If)33
+b(no)h Fr(command)630 1316 y Fu(is)27 b(sp)s(eci\014ed,)g(redirections)
h(ma)m(y)f(b)s(e)g(used)f(to)i(a\013ect)g(the)f(curren)m(t)g(shell)g
(en)m(vironmen)m(t.)40 b(If)630 1426 y(there)34 b(are)h(no)f
(redirection)h(errors,)g(the)f(return)f(status)i(is)f(zero;)j
(otherwise)e(the)f(return)630 1536 y(status)d(is)f(non-zero.)150
-1708 y Fs(exit)870 1849 y(exit)47 b([)p Fi(n)11 b Fs(])630
-1990 y Ft(Exit)30 b(the)g(shell,)h(returning)d(a)j(status)f(of)g
-Fq(n)f Ft(to)h(the)g(shell's)g(paren)m(t.)41 b(If)30
-b Fq(n)f Ft(is)h(omitted,)h(the)630 2099 y(exit)c(status)g(is)g(that)g
+1708 y Ft(exit)870 1849 y(exit)47 b([)p Fj(n)p Ft(])630
+1990 y Fu(Exit)30 b(the)g(shell,)h(returning)d(a)j(status)f(of)g
+Fr(n)f Fu(to)h(the)g(shell's)g(paren)m(t.)41 b(If)30
+b Fr(n)f Fu(is)h(omitted,)h(the)630 2099 y(exit)c(status)g(is)g(that)g
(of)g(the)g(last)g(command)f(executed.)41 b(An)m(y)26
-b(trap)h(on)f Fs(EXIT)f Ft(is)i(executed)630 2209 y(b)s(efore)j(the)h
-(shell)f(terminates.)150 2381 y Fs(export)870 2522 y(export)46
-b([-fn])g([-p])h([)p Fi(name)11 b Fs([=)p Fi(value)g
-Fs(]])630 2663 y Ft(Mark)40 b(eac)m(h)h Fq(name)k Ft(to)40
-b(b)s(e)f(passed)g(to)i(c)m(hild)f(pro)s(cesses)f(in)g(the)h(en)m
-(vironmen)m(t.)70 b(If)39 b(the)630 2772 y(`)p Fs(-f)p
-Ft(')29 b(option)h(is)g(supplied,)f(the)g Fq(name)5 b
-Ft(s)30 b(refer)f(to)h(shell)g(functions;)f(otherwise)h(the)g(names)630
-2882 y(refer)36 b(to)i(shell)e(v)-5 b(ariables.)60 b(The)36
-b(`)p Fs(-n)p Ft(')h(option)g(means)f(to)h(no)g(longer)g(mark)f(eac)m
-(h)i Fq(name)630 2992 y Ft(for)h(exp)s(ort.)65 b(If)39
-b(no)g Fq(names)j Ft(are)d(supplied,)h(or)f(if)g(the)g(`)p
-Fs(-p)p Ft(')g(option)g(is)g(giv)m(en,)j(a)d(list)h(of)630
-3101 y(names)27 b(of)h(all)h(exp)s(orted)e(v)-5 b(ariables)28
-b(is)g(displa)m(y)m(ed.)40 b(The)27 b(`)p Fs(-p)p Ft(')g(option)h
-(displa)m(ys)g(output)f(in)630 3211 y(a)32 b(form)e(that)i(ma)m(y)g(b)s
-(e)e(reused)h(as)g(input.)43 b(If)30 b(a)i(v)-5 b(ariable)32
-b(name)f(is)g(follo)m(w)m(ed)i(b)m(y)e(=)p Fq(v)-5 b(alue)5
-b Ft(,)630 3320 y(the)31 b(v)-5 b(alue)30 b(of)h(the)g(v)-5
-b(ariable)31 b(is)f(set)h(to)g Fq(v)-5 b(alue)5 b Ft(.)630
-3461 y(The)29 b(return)e(status)j(is)f(zero)h(unless)e(an)h(in)m(v)-5
-b(alid)29 b(option)h(is)f(supplied,)f(one)i(of)f(the)g(names)630
-3571 y(is)h(not)h(a)f(v)-5 b(alid)31 b(shell)f(v)-5 b(ariable)31
-b(name,)f(or)h(`)p Fs(-f)p Ft(')f(is)g(supplied)f(with)g(a)i(name)f
-(that)h(is)f(not)h(a)630 3680 y(shell)g(function.)150
-3853 y Fs(getopts)870 3994 y(getopts)46 b Fi(optstring)56
-b(name)h Fs([)p Fi(args)11 b Fs(])630 4134 y(getopts)28
-b Ft(is)i(used)g(b)m(y)g(shell)g(scripts)g(to)g(parse)g(p)s(ositional)h
-(parameters.)41 b Fq(optstring)d Ft(con-)630 4244 y(tains)k(the)g
-(option)f(c)m(haracters)i(to)g(b)s(e)d(recognized;)49
-b(if)42 b(a)f(c)m(haracter)j(is)d(follo)m(w)m(ed)i(b)m(y)f(a)630
-4354 y(colon,)33 b(the)f(option)g(is)g(exp)s(ected)g(to)h(ha)m(v)m(e)g
-(an)e(argumen)m(t,)i(whic)m(h)f(should)e(b)s(e)h(separated)630
-4463 y(from)40 b(it)g(b)m(y)g(whitespace.)70 b(The)40
-b(colon)h(\(`)p Fs(:)p Ft('\))g(and)e(question)h(mark)g(\(`)p
-Fs(?)p Ft('\))h(ma)m(y)f(not)h(b)s(e)630 4573 y(used)d(as)g(option)h(c)
-m(haracters.)67 b(Eac)m(h)39 b(time)g(it)g(is)f(in)m(v)m(ok)m(ed,)k
-Fs(getopts)37 b Ft(places)i(the)g(next)630 4682 y(option)29
-b(in)f(the)g(shell)h(v)-5 b(ariable)29 b Fq(name)5 b
-Ft(,)29 b(initializing)h Fq(name)k Ft(if)28 b(it)h(do)s(es)f(not)g
-(exist,)i(and)e(the)630 4792 y(index)33 b(of)g(the)h(next)f(argumen)m
-(t)h(to)g(b)s(e)e(pro)s(cessed)h(in)m(to)h(the)g(v)-5
-b(ariable)34 b Fs(OPTIND)p Ft(.)48 b Fs(OPTIND)630 4902
-y Ft(is)41 b(initialized)i(to)f(1)f(eac)m(h)h(time)g(the)f(shell)g(or)g
-(a)g(shell)g(script)g(is)g(in)m(v)m(ok)m(ed.)74 b(When)41
-b(an)630 5011 y(option)36 b(requires)e(an)h(argumen)m(t,)i
-Fs(getopts)c Ft(places)j(that)g(argumen)m(t)g(in)m(to)g(the)f(v)-5
-b(ariable)630 5121 y Fs(OPTARG)p Ft(.)55 b(The)35 b(shell)g(do)s(es)h
-(not)g(reset)g Fs(OPTIND)e Ft(automatically;)41 b(it)36
-b(m)m(ust)f(b)s(e)g(man)m(ually)630 5230 y(reset)i(b)s(et)m(w)m(een)g
-(m)m(ultiple)h(calls)f(to)g Fs(getopts)e Ft(within)h(the)h(same)g
+b(trap)h(on)f Ft(EXIT)f Fu(is)i(executed)630 2209 y(b)s(efore)j(the)h
+(shell)f(terminates.)150 2381 y Ft(export)870 2522 y(export)46
+b([-fn])g([-p])h([)p Fj(name)p Ft([=)p Fj(value)p Ft(]])630
+2663 y Fu(Mark)40 b(eac)m(h)h Fr(name)k Fu(to)40 b(b)s(e)f(passed)g(to)
+i(c)m(hild)f(pro)s(cesses)f(in)g(the)h(en)m(vironmen)m(t.)70
+b(If)39 b(the)630 2772 y Ft(-f)33 b Fu(option)h(is)g(supplied,)f(the)h
+Fr(name)5 b Fu(s)33 b(refer)g(to)i(shell)e(functions;)i(otherwise)f
+(the)g(names)630 2882 y(refer)c(to)h(shell)g(v)-5 b(ariables.)41
+b(The)30 b Ft(-n)f Fu(option)i(means)f(to)h(no)f(longer)h(mark)f(eac)m
+(h)i Fr(name)j Fu(for)630 2992 y(exp)s(ort.)52 b(If)33
+b(no)h Fr(names)k Fu(are)c(supplied,)g(or)g(if)g(the)g
+Ft(-p)g Fu(option)g(is)g(giv)m(en,)j(a)d(list)h(of)f(names)630
+3101 y(of)d(all)h(exp)s(orted)e(v)-5 b(ariables)31 b(is)g(displa)m(y)m
+(ed.)43 b(The)30 b Ft(-p)g Fu(option)i(displa)m(ys)e(output)h(in)f(a)h
+(form)630 3211 y(that)25 b(ma)m(y)g(b)s(e)f(reused)g(as)h(input.)38
+b(If)24 b(a)h(v)-5 b(ariable)25 b(name)g(is)g(follo)m(w)m(ed)h(b)m(y)e
+(=)p Fr(v)-5 b(alue)p Fu(,)27 b(the)d(v)-5 b(alue)630
+3320 y(of)31 b(the)f(v)-5 b(ariable)31 b(is)g(set)g(to)g
+Fr(v)-5 b(alue)p Fu(.)630 3461 y(The)29 b(return)e(status)j(is)f(zero)h
+(unless)e(an)h(in)m(v)-5 b(alid)29 b(option)h(is)f(supplied,)f(one)i
+(of)f(the)g(names)630 3571 y(is)k(not)g(a)h(v)-5 b(alid)33
+b(shell)h(v)-5 b(ariable)33 b(name,)i(or)e Ft(-f)f Fu(is)h(supplied)f
+(with)h(a)g(name)g(that)h(is)f(not)h(a)630 3680 y(shell)d(function.)150
+3853 y Ft(getopts)870 3994 y(getopts)46 b Fj(optstring)f(name)i
+Ft([)p Fj(args)p Ft(])630 4134 y(getopts)28 b Fu(is)i(used)g(b)m(y)g
+(shell)g(scripts)g(to)g(parse)g(p)s(ositional)h(parameters.)41
+b Fr(optstring)d Fu(con-)630 4244 y(tains)k(the)g(option)f(c)m
+(haracters)i(to)g(b)s(e)d(recognized;)49 b(if)42 b(a)f(c)m(haracter)j
+(is)d(follo)m(w)m(ed)i(b)m(y)f(a)630 4354 y(colon,)33
+b(the)f(option)g(is)g(exp)s(ected)g(to)h(ha)m(v)m(e)g(an)e(argumen)m
+(t,)i(whic)m(h)f(should)e(b)s(e)h(separated)630 4463
+y(from)40 b(it)g(b)m(y)g(whitespace.)70 b(The)40 b(colon)h(\(`)p
+Ft(:)p Fu('\))g(and)e(question)h(mark)g(\(`)p Ft(?)p
+Fu('\))h(ma)m(y)f(not)h(b)s(e)630 4573 y(used)d(as)g(option)h(c)m
+(haracters.)67 b(Eac)m(h)39 b(time)g(it)g(is)f(in)m(v)m(ok)m(ed,)k
+Ft(getopts)37 b Fu(places)i(the)g(next)630 4682 y(option)29
+b(in)f(the)h(shell)g(v)-5 b(ariable)30 b Fr(name)p Fu(,)f(initializing)
+i Fr(name)j Fu(if)28 b(it)h(do)s(es)g(not)g(exist,)h(and)e(the)630
+4792 y(index)33 b(of)g(the)h(next)f(argumen)m(t)h(to)g(b)s(e)e(pro)s
+(cessed)h(in)m(to)h(the)g(v)-5 b(ariable)34 b Ft(OPTIND)p
+Fu(.)48 b Ft(OPTIND)630 4902 y Fu(is)41 b(initialized)i(to)f(1)f(eac)m
+(h)h(time)g(the)f(shell)g(or)g(a)g(shell)g(script)g(is)g(in)m(v)m(ok)m
+(ed.)74 b(When)41 b(an)630 5011 y(option)36 b(requires)e(an)h(argumen)m
+(t,)i Ft(getopts)c Fu(places)j(that)g(argumen)m(t)g(in)m(to)g(the)f(v)
+-5 b(ariable)630 5121 y Ft(OPTARG)p Fu(.)55 b(The)35
+b(shell)g(do)s(es)h(not)g(reset)g Ft(OPTIND)e Fu(automatically;)41
+b(it)36 b(m)m(ust)f(b)s(e)g(man)m(ually)630 5230 y(reset)i(b)s(et)m(w)m
+(een)g(m)m(ultiple)h(calls)f(to)g Ft(getopts)e Fu(within)h(the)h(same)g
(shell)f(in)m(v)m(o)s(cation)j(if)e(a)630 5340 y(new)30
b(set)h(of)f(parameters)h(is)f(to)i(b)s(e)d(used.)p eop
end
%%Page: 44 50
-TeXDict begin 44 49 bop 150 -116 a Ft(Chapter)30 b(4:)41
+TeXDict begin 44 49 bop 150 -116 a Fu(Chapter)30 b(4:)41
b(Shell)30 b(Builtin)h(Commands)2069 b(44)630 299 y(When)41
-b(the)h(end)e(of)i(options)g(is)f(encoun)m(tered,)k Fs(getopts)39
-b Ft(exits)j(with)f(a)h(return)e(v)-5 b(alue)630 408
-y(greater)32 b(than)e(zero.)41 b Fs(OPTIND)29 b Ft(is)h(set)h(to)g(the)
+b(the)h(end)e(of)i(options)g(is)f(encoun)m(tered,)k Ft(getopts)39
+b Fu(exits)j(with)f(a)h(return)e(v)-5 b(alue)630 408
+y(greater)32 b(than)e(zero.)41 b Ft(OPTIND)29 b Fu(is)h(set)h(to)g(the)
g(index)f(of)g(the)h(\014rst)f(non-option)g(argumen)m(t,)630
-518 y(and)g Fq(name)35 b Ft(is)c(set)g(to)g(`)p Fs(?)p
-Ft('.)630 655 y Fs(getopts)c Ft(normally)j(parses)e(the)i(p)s
+518 y(and)g Fr(name)35 b Fu(is)c(set)g(to)g(`)p Ft(?)p
+Fu('.)630 655 y Ft(getopts)c Fu(normally)j(parses)e(the)i(p)s
(ositional)g(parameters,)g(but)e(if)i(more)f(argumen)m(ts)h(are)630
-765 y(giv)m(en)h(in)f Fq(args)t Ft(,)h Fs(getopts)e Ft(parses)g(those)i
-(instead.)630 902 y Fs(getopts)h Ft(can)h(rep)s(ort)g(errors)g(in)h(t)m
+765 y(giv)m(en)h(in)f Fr(args)p Fu(,)h Ft(getopts)e Fu(parses)h(those)h
+(instead.)630 902 y Ft(getopts)h Fu(can)h(rep)s(ort)g(errors)g(in)h(t)m
(w)m(o)h(w)m(a)m(ys.)51 b(If)33 b(the)h(\014rst)e(c)m(haracter)k(of)d
-Fq(optstring)42 b Ft(is)34 b(a)630 1011 y(colon,)g Fq(silen)m(t)h
-Ft(error)d(rep)s(orting)f(is)i(used.)45 b(In)31 b(normal)h(op)s
+Fr(optstring)42 b Fu(is)34 b(a)630 1011 y(colon,)g Fr(silen)m(t)h
+Fu(error)d(rep)s(orting)f(is)i(used.)45 b(In)31 b(normal)h(op)s
(eration,)h(diagnostic)h(messages)630 1121 y(are)c(prin)m(ted)e(when)g
(in)m(v)-5 b(alid)30 b(options)g(or)f(missing)g(option)g(argumen)m(ts)h
(are)f(encoun)m(tered.)630 1230 y(If)34 b(the)g(v)-5
-b(ariable)35 b Fs(OPTERR)d Ft(is)i(set)h(to)f(0,)i(no)e(error)g
+b(ariable)35 b Ft(OPTERR)d Fu(is)i(set)h(to)f(0,)i(no)e(error)g
(messages)h(will)f(b)s(e)f(displa)m(y)m(ed,)j(ev)m(en)f(if)630
-1340 y(the)c(\014rst)e(c)m(haracter)j(of)f Fs(optstring)d
-Ft(is)i(not)h(a)f(colon.)630 1477 y(If)39 b(an)h(in)m(v)-5
-b(alid)41 b(option)f(is)g(seen,)i Fs(getopts)c Ft(places)j(`)p
-Fs(?)p Ft(')f(in)m(to)h Fq(name)k Ft(and,)d(if)e(not)g(silen)m(t,)630
+1340 y(the)c(\014rst)e(c)m(haracter)j(of)f Ft(optstring)d
+Fu(is)i(not)h(a)f(colon.)630 1477 y(If)39 b(an)h(in)m(v)-5
+b(alid)41 b(option)f(is)g(seen,)i Ft(getopts)c Fu(places)j(`)p
+Ft(?)p Fu(')f(in)m(to)h Fr(name)k Fu(and,)d(if)e(not)g(silen)m(t,)630
1587 y(prin)m(ts)f(an)h(error)f(message)h(and)f(unsets)g
-Fs(OPTARG)p Ft(.)67 b(If)39 b Fs(getopts)f Ft(is)i(silen)m(t,)j(the)c
+Ft(OPTARG)p Fu(.)67 b(If)39 b Ft(getopts)f Fu(is)i(silen)m(t,)j(the)c
(option)630 1696 y(c)m(haracter)32 b(found)d(is)h(placed)h(in)f
-Fs(OPTARG)f Ft(and)h(no)g(diagnostic)i(message)f(is)g(prin)m(ted.)630
+Ft(OPTARG)f Fu(and)h(no)g(diagnostic)i(message)f(is)g(prin)m(ted.)630
1833 y(If)c(a)g(required)f(argumen)m(t)i(is)f(not)g(found,)g(and)f
-Fs(getopts)f Ft(is)i(not)h(silen)m(t,)h(a)e(question)g(mark)630
-1943 y(\(`)p Fs(?)p Ft('\))35 b(is)g(placed)g(in)g Fq(name)5
-b Ft(,)36 b Fs(OPTARG)d Ft(is)h(unset,)i(and)e(a)h(diagnostic)h
-(message)f(is)g(prin)m(ted.)630 2052 y(If)e Fs(getopts)f
-Ft(is)h(silen)m(t,)j(then)d(a)i(colon)f(\(`)p Fs(:)p
-Ft('\))h(is)e(placed)h(in)g Fq(name)k Ft(and)33 b Fs(OPTARG)f
-Ft(is)i(set)g(to)630 2162 y(the)d(option)f(c)m(haracter)i(found.)150
-2326 y Fs(hash)870 2463 y(hash)47 b([-r])f([-p)h Fi(filename)11
-b Fs(])45 b([-dt])h([)p Fi(name)11 b Fs(])630 2600 y
-Ft(Eac)m(h)32 b(time)g Fs(hash)e Ft(is)h(in)m(v)m(ok)m(ed,)j(it)d
+Ft(getopts)f Fu(is)i(not)h(silen)m(t,)h(a)e(question)g(mark)630
+1943 y(\(`)p Ft(?)p Fu('\))h(is)g(placed)g(in)f Fr(name)p
+Fu(,)h Ft(OPTARG)e Fu(is)h(unset,)h(and)f(a)g(diagnostic)i(message)g
+(is)e(prin)m(ted.)39 b(If)630 2052 y Ft(getopts)28 b
+Fu(is)h(silen)m(t,)i(then)e(a)h(colon)h(\(`)p Ft(:)p
+Fu('\))f(is)g(placed)g(in)f Fr(name)35 b Fu(and)29 b
+Ft(OPTARG)f Fu(is)h(set)h(to)h(the)630 2162 y(option)g(c)m(haracter)h
+(found.)150 2326 y Ft(hash)870 2463 y(hash)47 b([-r])f([-p)h
+Fj(filename)p Ft(])e([-dt])i([)p Fj(name)p Ft(])630 2600
+y Fu(Eac)m(h)32 b(time)g Ft(hash)e Fu(is)h(in)m(v)m(ok)m(ed,)j(it)d
(remem)m(b)s(ers)g(the)g(full)g(pathnames)g(of)h(the)f(commands)630
-2710 y(sp)s(eci\014ed)i(as)i Fq(name)k Ft(argumen)m(ts,)c(so)g(they)f
+2710 y(sp)s(eci\014ed)i(as)i Fr(name)k Fu(argumen)m(ts,)c(so)g(they)f
(need)g(not)g(b)s(e)f(searc)m(hed)i(for)f(on)g(subsequen)m(t)630
2819 y(in)m(v)m(o)s(cations.)79 b(The)41 b(commands)h(are)h(found)e(b)m
(y)h(searc)m(hing)i(through)d(the)i(directories)630 2929
-y(listed)33 b(in)g Fs($PATH)p Ft(.)47 b(An)m(y)33 b(previously-remem)m
-(b)s(ered)f(pathname)h(is)g(discarded.)48 b(The)32 b(`)p
-Fs(-p)p Ft(')630 3039 y(option)i(inhibits)e(the)i(path)f(searc)m(h,)i
-(and)e Fq(\014lename)38 b Ft(is)c(used)e(as)i(the)f(lo)s(cation)i(of)f
-Fq(name)5 b Ft(.)630 3148 y(The)35 b(`)p Fs(-r)p Ft(')g(option)g
-(causes)h(the)g(shell)f(to)h(forget)g(all)g(remem)m(b)s(ered)f(lo)s
-(cations.)56 b(The)35 b(`)p Fs(-d)p Ft(')630 3258 y(option)c(causes)f
-(the)g(shell)h(to)f(forget)i(the)e(remem)m(b)s(ered)f(lo)s(cation)j(of)
-e(eac)m(h)h Fq(name)5 b Ft(.)41 b(If)30 b(the)630 3367
-y(`)p Fs(-t)p Ft(')35 b(option)h(is)g(supplied,)f(the)h(full)f
-(pathname)g(to)i(whic)m(h)e(eac)m(h)h Fq(name)41 b Ft(corresp)s(onds)34
-b(is)630 3477 y(prin)m(ted.)39 b(If)26 b(m)m(ultiple)h
-Fq(name)32 b Ft(argumen)m(ts)27 b(are)g(supplied)e(with)h(`)p
-Fs(-t)p Ft(')g(the)h Fq(name)32 b Ft(is)26 b(prin)m(ted)630
-3587 y(b)s(efore)f(the)h(hashed)e(full)h(pathname.)39
-b(The)25 b(`)p Fs(-l)p Ft(')h(option)f(causes)h(output)f(to)i(b)s(e)d
-(displa)m(y)m(ed)630 3696 y(in)31 b(a)g(format)h(that)f(ma)m(y)h(b)s(e)
-f(reused)f(as)h(input.)42 b(If)31 b(no)g(argumen)m(ts)h(are)f(giv)m
-(en,)i(or)e(if)g(only)630 3806 y(`)p Fs(-l)p Ft(')44
-b(is)f(supplied,)j(information)e(ab)s(out)g(remem)m(b)s(ered)f
-(commands)g(is)h(prin)m(ted.)80 b(The)630 3915 y(return)25
-b(status)h(is)f(zero)i(unless)e(a)h Fq(name)31 b Ft(is)26
-b(not)g(found)e(or)i(an)g(in)m(v)-5 b(alid)26 b(option)g(is)g
-(supplied.)150 4080 y Fs(pwd)870 4217 y(pwd)47 b([-LP])630
-4354 y Ft(Prin)m(t)24 b(the)h(absolute)g(pathname)g(of)f(the)h(curren)m
-(t)f(w)m(orking)h(directory)-8 b(.)40 b(If)23 b(the)i(`)p
-Fs(-P)p Ft(')f(option)630 4463 y(is)36 b(supplied,)f(the)h(pathname)f
-(prin)m(ted)g(will)h(not)g(con)m(tain)h(sym)m(b)s(olic)f(links.)55
-b(If)35 b(the)h(`)p Fs(-L)p Ft(')630 4573 y(option)44
-b(is)g(supplied,)i(the)e(pathname)f(prin)m(ted)h(ma)m(y)g(con)m(tain)h
-(sym)m(b)s(olic)f(links.)80 b(The)630 4682 y(return)26
-b(status)h(is)h(zero)g(unless)e(an)h(error)g(is)g(encoun)m(tered)g
-(while)h(determining)f(the)g(name)630 4792 y(of)k(the)f(curren)m(t)g
-(directory)h(or)f(an)h(in)m(v)-5 b(alid)31 b(option)g(is)f(supplied.)
-150 4956 y Fs(readonly)870 5093 y(readonly)46 b([-aAf])g([-p])g([)p
-Fi(name)11 b Fs([=)p Fi(value)g Fs(]])43 b(...)630 5230
-y Ft(Mark)24 b(eac)m(h)h Fq(name)k Ft(as)24 b(readonly)-8
-b(.)39 b(The)24 b(v)-5 b(alues)24 b(of)g(these)g(names)g(ma)m(y)g(not)g
-(b)s(e)g(c)m(hanged)g(b)m(y)630 5340 y(subsequen)m(t)e(assignmen)m(t.)
-39 b(If)22 b(the)h(`)p Fs(-f)p Ft(')f(option)i(is)e(supplied,)h(eac)m
-(h)h Fq(name)k Ft(refers)22 b(to)i(a)f(shell)p eop end
+y(listed)37 b(in)g Ft($PATH)p Fu(.)58 b(An)m(y)37 b(previously-remem)m
+(b)s(ered)f(pathname)h(is)g(discarded.)59 b(The)37 b
+Ft(-p)630 3039 y Fu(option)d(inhibits)f(the)h(path)g(searc)m(h,)h(and)e
+Fr(\014lename)39 b Fu(is)34 b(used)f(as)h(the)f(lo)s(cation)j(of)e
+Fr(name)p Fu(.)630 3148 y(The)42 b Ft(-r)g Fu(option)h(causes)f(the)h
+(shell)g(to)g(forget)g(all)h(remem)m(b)s(ered)d(lo)s(cations.)79
+b(The)42 b Ft(-d)630 3258 y Fu(option)31 b(causes)g(the)f(shell)h(to)g
+(forget)h(the)f(remem)m(b)s(ered)e(lo)s(cation)j(of)f(eac)m(h)h
+Fr(name)p Fu(.)41 b(If)30 b(the)630 3367 y Ft(-t)39 b
+Fu(option)h(is)g(supplied,)g(the)g(full)f(pathname)h(to)g(whic)m(h)f
+(eac)m(h)i Fr(name)k Fu(corresp)s(onds)38 b(is)630 3477
+y(prin)m(ted.)k(If)30 b(m)m(ultiple)i Fr(name)k Fu(argumen)m(ts)31
+b(are)g(supplied)f(with)g Ft(-t)g Fu(the)h Fr(name)36
+b Fu(is)31 b(prin)m(ted)630 3587 y(b)s(efore)e(the)i(hashed)e(full)g
+(pathname.)41 b(The)29 b Ft(-l)g Fu(option)i(causes)f(output)f(to)i(b)s
+(e)e(displa)m(y)m(ed)630 3696 y(in)23 b(a)h(format)g(that)g(ma)m(y)g(b)
+s(e)f(reused)f(as)i(input.)37 b(If)23 b(no)h(argumen)m(ts)f(are)h(giv)m
+(en,)i(or)e(if)f(only)h Ft(-l)630 3806 y Fu(is)35 b(supplied,)f
+(information)h(ab)s(out)g(remem)m(b)s(ered)f(commands)g(is)h(prin)m
+(ted.)53 b(The)34 b(return)630 3915 y(status)d(is)f(zero)h(unless)f(a)h
+Fr(name)k Fu(is)c(not)f(found)f(or)i(an)f(in)m(v)-5 b(alid)31
+b(option)g(is)f(supplied.)150 4080 y Ft(pwd)870 4217
+y(pwd)47 b([-LP])630 4354 y Fu(Prin)m(t)29 b(the)g(absolute)h(pathname)
+e(of)h(the)h(curren)m(t)e(w)m(orking)h(directory)-8 b(.)42
+b(If)28 b(the)h Ft(-P)f Fu(option)630 4463 y(is)39 b(supplied,)h(the)f
+(pathname)g(prin)m(ted)g(will)g(not)h(con)m(tain)g(sym)m(b)s(olic)f
+(links.)67 b(If)38 b(the)i Ft(-L)630 4573 y Fu(option)k(is)g(supplied,)
+i(the)e(pathname)f(prin)m(ted)h(ma)m(y)g(con)m(tain)h(sym)m(b)s(olic)f
+(links.)80 b(The)630 4682 y(return)26 b(status)h(is)h(zero)g(unless)e
+(an)h(error)g(is)g(encoun)m(tered)g(while)h(determining)f(the)g(name)
+630 4792 y(of)k(the)f(curren)m(t)g(directory)h(or)f(an)h(in)m(v)-5
+b(alid)31 b(option)g(is)f(supplied.)150 4956 y Ft(readonly)870
+5093 y(readonly)46 b([-aAf])g([-p])g([)p Fj(name)p Ft([=)p
+Fj(value)p Ft(]])e(...)630 5230 y Fu(Mark)33 b(eac)m(h)h
+Fr(name)39 b Fu(as)33 b(readonly)-8 b(.)49 b(The)32 b(v)-5
+b(alues)34 b(of)f(these)g(names)g(ma)m(y)h(not)f(b)s(e)f(c)m(hanged)630
+5340 y(b)m(y)38 b(subsequen)m(t)g(assignmen)m(t.)65 b(If)38
+b(the)h Ft(-f)f Fu(option)g(is)h(supplied,)g(eac)m(h)h
+Fr(name)j Fu(refers)38 b(to)p eop end
%%Page: 45 51
-TeXDict begin 45 50 bop 150 -116 a Ft(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(45)630 299 y(function.)39
-b(The)26 b(`)p Fs(-a)p Ft(')h(option)g(means)g(eac)m(h)h
-Fq(name)k Ft(refers)26 b(to)i(an)e(indexed)h(arra)m(y)g(v)-5
-b(ariable;)630 408 y(the)26 b(`)p Fs(-A)p Ft(')g(option)h(means)f(eac)m
-(h)h Fq(name)32 b Ft(refers)25 b(to)i(an)f(asso)s(ciativ)m(e)j(arra)m
-(y)e(v)-5 b(ariable.)40 b(If)26 b(b)s(oth)630 518 y(options)h(are)g
-(supplied,)f(`)p Fs(-A)p Ft(')g(tak)m(es)i(precedence.)40
-b(If)26 b(no)h Fq(name)32 b Ft(argumen)m(ts)26 b(are)h(giv)m(en,)i(or)
-630 628 y(if)h(the)h(`)p Fs(-p)p Ft(')f(option)h(is)g(supplied,)e(a)i
-(list)g(of)g(all)g(readonly)f(names)h(is)f(prin)m(ted.)41
-b(The)30 b(other)630 737 y(options)36 b(ma)m(y)g(b)s(e)g(used)f(to)h
-(restrict)h(the)f(output)f(to)h(a)h(subset)e(of)h(the)g(set)g(of)g
-(readonly)630 847 y(names.)63 b(The)37 b(`)p Fs(-p)p
-Ft(')h(option)g(causes)g(output)f(to)i(b)s(e)e(displa)m(y)m(ed)h(in)g
-(a)g(format)g(that)g(ma)m(y)630 956 y(b)s(e)32 b(reused)h(as)g(input.)
-48 b(If)33 b(a)g(v)-5 b(ariable)34 b(name)f(is)h(follo)m(w)m(ed)g(b)m
-(y)f(=)p Fq(v)-5 b(alue)5 b Ft(,)35 b(the)e(v)-5 b(alue)33
-b(of)h(the)630 1066 y(v)-5 b(ariable)38 b(is)f(set)h(to)g
-Fq(v)-5 b(alue)5 b Ft(.)62 b(The)37 b(return)f(status)h(is)h(zero)g
-(unless)e(an)h(in)m(v)-5 b(alid)38 b(option)g(is)630
-1176 y(supplied,)f(one)g(of)g(the)g Fq(name)42 b Ft(argumen)m(ts)37
-b(is)g(not)g(a)g(v)-5 b(alid)37 b(shell)g(v)-5 b(ariable)38
-b(or)e(function)630 1285 y(name,)31 b(or)f(the)h(`)p
-Fs(-f)p Ft(')f(option)h(is)f(supplied)f(with)h(a)h(name)f(that)h(is)g
-(not)f(a)h(shell)g(function.)150 1450 y Fs(return)870
-1587 y(return)46 b([)p Fi(n)11 b Fs(])630 1724 y Ft(Cause)37
-b(a)g(shell)h(function)f(to)g(stop)h(executing)g(and)e(return)h(the)g
-(v)-5 b(alue)37 b Fq(n)g Ft(to)h(its)f(caller.)630 1833
-y(If)h Fq(n)h Ft(is)g(not)g(supplied,)h(the)f(return)e(v)-5
-b(alue)40 b(is)f(the)g(exit)g(status)g(of)g(the)g(last)h(command)630
-1943 y(executed)35 b(in)f(the)h(function.)53 b Fs(return)33
-b Ft(ma)m(y)i(also)g(b)s(e)f(used)f(to)j(terminate)f(execution)h(of)630
+TeXDict begin 45 50 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(45)630 299 y(a)37
+b(shell)g(function.)59 b(The)36 b Ft(-a)g Fu(option)h(means)f(eac)m(h)i
+Fr(name)k Fu(refers)36 b(to)h(an)f(indexed)g(arra)m(y)630
+408 y(v)-5 b(ariable;)28 b(the)f Ft(-A)e Fu(option)h(means)g(eac)m(h)h
+Fr(name)k Fu(refers)26 b(to)g(an)g(asso)s(ciativ)m(e)i(arra)m(y)f(v)-5
+b(ariable.)630 518 y(If)35 b(b)s(oth)g(options)h(are)h(supplied,)f
+Ft(-A)f Fu(tak)m(es)i(precedence.)58 b(If)35 b(no)h Fr(name)k
+Fu(argumen)m(ts)d(are)630 628 y(giv)m(en,)k(or)c(if)h(the)g
+Ft(-p)f Fu(option)h(is)f(supplied,)i(a)f(list)g(of)g(all)g(readonly)g
+(names)f(is)h(prin)m(ted.)630 737 y(The)32 b(other)g(options)g(ma)m(y)h
+(b)s(e)f(used)f(to)i(restrict)g(the)f(output)g(to)h(a)f(subset)g(of)g
+(the)g(set)h(of)630 847 y(readonly)c(names.)41 b(The)28
+b Ft(-p)h Fu(option)h(causes)g(output)e(to)j(b)s(e)d(displa)m(y)m(ed)i
+(in)f(a)h(format)f(that)630 956 y(ma)m(y)j(b)s(e)e(reused)g(as)i
+(input.)42 b(If)30 b(a)i(v)-5 b(ariable)31 b(name)h(is)f(follo)m(w)m
+(ed)h(b)m(y)f(=)p Fr(v)-5 b(alue)p Fu(,)32 b(the)f(v)-5
+b(alue)32 b(of)630 1066 y(the)i(v)-5 b(ariable)34 b(is)f(set)i(to)f
+Fr(v)-5 b(alue)p Fu(.)50 b(The)33 b(return)g(status)g(is)h(zero)g
+(unless)f(an)g(in)m(v)-5 b(alid)34 b(option)630 1176
+y(is)c(supplied,)f(one)h(of)g(the)g Fr(name)35 b Fu(argumen)m(ts)30
+b(is)g(not)g(a)g(v)-5 b(alid)31 b(shell)f(v)-5 b(ariable)30
+b(or)g(function)630 1285 y(name,)h(or)f(the)h Ft(-f)e
+Fu(option)i(is)g(supplied)e(with)h(a)h(name)f(that)h(is)f(not)h(a)g
+(shell)f(function.)150 1450 y Ft(return)870 1587 y(return)46
+b([)p Fj(n)p Ft(])630 1724 y Fu(Cause)37 b(a)g(shell)h(function)f(to)g
+(stop)h(executing)g(and)e(return)h(the)g(v)-5 b(alue)37
+b Fr(n)g Fu(to)h(its)f(caller.)630 1833 y(If)h Fr(n)h
+Fu(is)g(not)g(supplied,)h(the)f(return)e(v)-5 b(alue)40
+b(is)f(the)g(exit)g(status)g(of)g(the)g(last)h(command)630
+1943 y(executed)35 b(in)f(the)h(function.)53 b Ft(return)33
+b Fu(ma)m(y)i(also)g(b)s(e)f(used)f(to)j(terminate)f(execution)h(of)630
2052 y(a)e(script)g(b)s(eing)g(executed)g(with)g(the)g
-Fs(.)g Ft(\()p Fs(source)p Ft(\))f(builtin,)h(returning)f(either)i
-Fq(n)e Ft(or)h(the)630 2162 y(exit)j(status)f(of)g(the)g(last)h
+Ft(.)g Fu(\()p Ft(source)p Fu(\))f(builtin,)h(returning)f(either)i
+Fr(n)e Fu(or)h(the)630 2162 y(exit)j(status)f(of)g(the)g(last)h
(command)e(executed)i(within)e(the)h(script)g(as)g(the)g(exit)h(status)
-630 2271 y(of)i(the)g(script.)65 b(If)38 b Fq(n)g Ft(is)h(supplied,)h
+630 2271 y(of)i(the)g(script.)65 b(If)38 b Fr(n)g Fu(is)h(supplied,)h
(the)f(return)e(v)-5 b(alue)39 b(is)g(its)g(least)h(signi\014can)m(t)g
(8)f(bits.)630 2381 y(An)m(y)g(command)f(asso)s(ciated)j(with)d(the)h
-Fs(RETURN)e Ft(trap)i(is)g(executed)g(b)s(efore)g(execution)630
+Ft(RETURN)e Fu(trap)i(is)g(executed)g(b)s(efore)g(execution)630
2491 y(resumes)29 b(after)h(the)g(function)g(or)g(script.)40
-b(The)29 b(return)g(status)h(is)g(non-zero)g(if)g Fs(return)e
-Ft(is)630 2600 y(supplied)h(a)i(non-n)m(umeric)g(argumen)m(t)g(or)f(is)
+b(The)29 b(return)g(status)h(is)g(non-zero)g(if)g Ft(return)e
+Fu(is)630 2600 y(supplied)h(a)i(non-n)m(umeric)g(argumen)m(t)g(or)f(is)
h(used)f(outside)h(a)g(function)f(and)g(not)h(during)630
-2710 y(the)g(execution)g(of)g(a)f(script)h(b)m(y)f Fs(.)g
-Ft(or)g Fs(source)p Ft(.)150 2874 y Fs(shift)870 3011
-y(shift)46 b([)p Fi(n)11 b Fs(])630 3148 y Ft(Shift)41
-b(the)g(p)s(ositional)h(parameters)g(to)g(the)f(left)h(b)m(y)g
-Fq(n)p Ft(.)73 b(The)40 b(p)s(ositional)j(parameters)630
-3258 y(from)34 b Fq(n)p Fs(+)p Ft(1)39 b(.)22 b(.)h(.)45
-b Fs($#)34 b Ft(are)g(renamed)g(to)h Fs($1)k Ft(.)22
-b(.)g(.)46 b Fs($#)p Ft(-)p Fq(n)p Ft(.)51 b(P)m(arameters)36
-b(represen)m(ted)e(b)m(y)g(the)630 3367 y(n)m(um)m(b)s(ers)25
-b Fs($#)i Ft(to)g Fs($#)p Ft(-)p Fq(n)p Fs(+)p Ft(1)g(are)g(unset.)39
-b Fq(n)26 b Ft(m)m(ust)h(b)s(e)f(a)i(non-negativ)m(e)h(n)m(um)m(b)s(er)
-c(less)i(than)g(or)630 3477 y(equal)33 b(to)h Fs($#)p
-Ft(.)47 b(If)33 b Fq(n)f Ft(is)h(zero)g(or)g(greater)h(than)f
-Fs($#)p Ft(,)g(the)g(p)s(ositional)g(parameters)g(are)h(not)630
-3587 y(c)m(hanged.)48 b(If)32 b Fq(n)g Ft(is)h(not)f(supplied,)h(it)g
+2710 y(the)g(execution)g(of)g(a)f(script)h(b)m(y)f Ft(.)g
+Fu(or)g Ft(source)p Fu(.)150 2874 y Ft(shift)870 3011
+y(shift)46 b([)p Fj(n)p Ft(])630 3148 y Fu(Shift)41 b(the)g(p)s
+(ositional)h(parameters)g(to)g(the)f(left)h(b)m(y)g Fr(n)p
+Fu(.)73 b(The)40 b(p)s(ositional)j(parameters)630 3258
+y(from)34 b Fr(n)p Ft(+)p Fu(1)39 b(.)22 b(.)h(.)45 b
+Ft($#)34 b Fu(are)g(renamed)g(to)h Ft($1)k Fu(.)22 b(.)g(.)46
+b Ft($#)p Fu(-)p Fr(n)p Fu(.)51 b(P)m(arameters)36 b(represen)m(ted)e
+(b)m(y)g(the)630 3367 y(n)m(um)m(b)s(ers)25 b Ft($#)i
+Fu(to)g Ft($#)p Fu(-)p Fr(n)p Ft(+)p Fu(1)g(are)g(unset.)39
+b Fr(n)26 b Fu(m)m(ust)h(b)s(e)f(a)i(non-negativ)m(e)h(n)m(um)m(b)s(er)
+c(less)i(than)g(or)630 3477 y(equal)33 b(to)h Ft($#)p
+Fu(.)47 b(If)33 b Fr(n)f Fu(is)h(zero)g(or)g(greater)h(than)f
+Ft($#)p Fu(,)g(the)g(p)s(ositional)g(parameters)g(are)h(not)630
+3587 y(c)m(hanged.)48 b(If)32 b Fr(n)g Fu(is)h(not)f(supplied,)h(it)g
(is)f(assumed)g(to)h(b)s(e)f(1.)48 b(The)32 b(return)g(status)h(is)f
-(zero)630 3696 y(unless)e Fq(n)f Ft(is)i(greater)g(than)g
-Fs($#)e Ft(or)i(less)f(than)h(zero,)g(non-zero)g(otherwise.)150
-3861 y Fs(test)150 3970 y([)870 4107 y(test)47 b Fi(expr)630
-4244 y Ft(Ev)-5 b(aluate)40 b(a)f(conditional)h(express)f(ion)g
-Fq(expr)45 b Ft(and)38 b(return)g(a)h(status)g(of)g(0)g(\(true\))h(or)f
+(zero)630 3696 y(unless)e Fr(n)f Fu(is)i(greater)g(than)g
+Ft($#)e Fu(or)i(less)f(than)h(zero,)g(non-zero)g(otherwise.)150
+3861 y Ft(test)150 3970 y([)870 4107 y(test)47 b Fj(expr)630
+4244 y Fu(Ev)-5 b(aluate)40 b(a)f(conditional)h(express)f(ion)g
+Fr(expr)45 b Fu(and)38 b(return)g(a)h(status)g(of)g(0)g(\(true\))h(or)f
(1)630 4354 y(\(false\).)j(Eac)m(h)31 b(op)s(erator)f(and)f(op)s(erand)
g(m)m(ust)h(b)s(e)f(a)i(separate)g(argumen)m(t.)41 b(Expressions)630
4463 y(are)26 b(comp)s(osed)f(of)g(the)h(primaries)f(describ)s(ed)f(b)s
(elo)m(w)h(in)g(Section)h(6.4)h([Bash)e(Conditional)630
-4573 y(Expressions],)39 b(page)g(85.)64 b Fs(test)37
-b Ft(do)s(es)g(not)h(accept)i(an)m(y)e(options,)i(nor)e(do)s(es)f(it)h
-(accept)630 4682 y(and)30 b(ignore)h(an)f(argumen)m(t)h(of)f(`)p
-Fs(--)p Ft(')h(as)f(signifying)h(the)f(end)g(of)h(options.)630
-4819 y(When)f(the)h Fs([)f Ft(form)g(is)g(used,)g(the)g(last)i(argumen)
-m(t)e(to)i(the)e(command)g(m)m(ust)h(b)s(e)e(a)i Fs(])p
-Ft(.)630 4956 y(Expressions)23 b(ma)m(y)h(b)s(e)e(com)m(bined)i(using)f
+4573 y(Expressions],)39 b(page)g(85.)64 b Ft(test)37
+b Fu(do)s(es)g(not)h(accept)i(an)m(y)e(options,)i(nor)e(do)s(es)f(it)h
+(accept)630 4682 y(and)30 b(ignore)h(an)f(argumen)m(t)h(of)f
+Ft(--)g Fu(as)h(signifying)f(the)h(end)f(of)g(options.)630
+4819 y(When)g(the)h Ft([)f Fu(form)g(is)g(used,)g(the)g(last)i(argumen)
+m(t)e(to)i(the)e(command)g(m)m(ust)h(b)s(e)e(a)i Ft(])p
+Fu(.)630 4956 y(Expressions)23 b(ma)m(y)h(b)s(e)e(com)m(bined)i(using)f
(the)h(follo)m(wing)h(op)s(erators,)g(listed)f(in)f(decreasing)630
5066 y(order)30 b(of)h(precedence.)43 b(The)30 b(ev)-5
b(aluation)33 b(dep)s(ends)28 b(on)j(the)g(n)m(um)m(b)s(er)f(of)h
(argumen)m(ts;)g(see)630 5176 y(b)s(elo)m(w.)41 b(Op)s(erator)30
b(precedence)h(is)f(used)g(when)f(there)i(are)f(\014v)m(e)h(or)f(more)h
-(argumen)m(ts.)630 5340 y Fs(!)f Fi(expr)210 b Ft(T)-8
-b(rue)30 b(if)g Fq(expr)37 b Ft(is)30 b(false.)p eop
+(argumen)m(ts.)630 5340 y Ft(!)f Fj(expr)210 b Fu(T)-8
+b(rue)30 b(if)g Fr(expr)37 b Fu(is)30 b(false.)p eop
end
%%Page: 46 52
-TeXDict begin 46 51 bop 150 -116 a Ft(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(46)630 299 y Fs(\()30
-b Fi(expr)40 b Fs(\))122 b Ft(Returns)23 b(the)h(v)-5
-b(alue)24 b(of)g Fq(expr)7 b Ft(.)37 b(This)23 b(ma)m(y)i(b)s(e)e(used)
-g(to)h(o)m(v)m(erride)h(the)f(normal)1110 408 y(precedence)31
-b(of)f(op)s(erators.)630 568 y Fi(expr1)39 b Fs(-a)30
-b Fi(expr2)1110 677 y Ft(T)-8 b(rue)30 b(if)g(b)s(oth)g
-Fq(expr1)37 b Ft(and)30 b Fq(expr2)38 b Ft(are)30 b(true.)630
-837 y Fi(expr1)39 b Fs(-o)30 b Fi(expr2)1110 946 y Ft(T)-8
-b(rue)30 b(if)g(either)h Fq(expr1)38 b Ft(or)30 b Fq(expr2)37
-b Ft(is)31 b(true.)630 1106 y(The)37 b Fs(test)f Ft(and)g
-Fs([)h Ft(builtins)g(ev)-5 b(aluate)39 b(conditional)f(expressions)f
+TeXDict begin 46 51 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(46)630 299 y Ft(\()30
+b Fj(expr)f Ft(\))133 b Fu(Returns)23 b(the)i(v)-5 b(alue)25
+b(of)f Fr(expr)p Fu(.)38 b(This)24 b(ma)m(y)h(b)s(e)e(used)h(to)h(o)m
+(v)m(erride)g(the)g(normal)1110 408 y(precedence)31 b(of)f(op)s
+(erators.)630 568 y Fj(expr1)f Ft(-a)h Fj(expr2)1110
+677 y Fu(T)-8 b(rue)30 b(if)g(b)s(oth)g Fr(expr1)37 b
+Fu(and)30 b Fr(expr2)38 b Fu(are)30 b(true.)630 837 y
+Fj(expr1)f Ft(-o)h Fj(expr2)1110 946 y Fu(T)-8 b(rue)30
+b(if)g(either)h Fr(expr1)38 b Fu(or)30 b Fr(expr2)37
+b Fu(is)31 b(true.)630 1106 y(The)37 b Ft(test)f Fu(and)g
+Ft([)h Fu(builtins)g(ev)-5 b(aluate)39 b(conditional)f(expressions)f
(using)g(a)g(set)h(of)f(rules)630 1215 y(based)30 b(on)g(the)h(n)m(um)m
(b)s(er)e(of)h(argumen)m(ts.)630 1375 y(0)h(argumen)m(ts)1110
1484 y(The)f(expression)g(is)g(false.)630 1644 y(1)h(argumen)m(t)1110
1753 y(The)f(expression)g(is)g(true)h(if)f(and)g(only)g(if)h(the)f
(argumen)m(t)h(is)f(not)h(n)m(ull.)630 1913 y(2)g(argumen)m(ts)1110
-2022 y(If)f(the)h(\014rst)f(argumen)m(t)h(is)g(`)p Fs(!)p
-Ft(',)g(the)g(expression)g(is)g(true)f(if)h(and)f(only)h(if)g(the)1110
+2022 y(If)f(the)h(\014rst)f(argumen)m(t)h(is)g(`)p Ft(!)p
+Fu(',)g(the)g(expression)g(is)g(true)f(if)h(and)f(only)h(if)g(the)1110
2132 y(second)j(argumen)m(t)f(is)h(n)m(ull.)50 b(If)33
b(the)h(\014rst)e(argumen)m(t)i(is)g(one)g(of)f(the)h(unary)1110
2242 y(conditional)42 b(op)s(erators)f(\(see)g(Section)h(6.4)f([Bash)g
(85\),)k(the)43 b(result)1110 3168 y(of)h(the)h(expression)f(is)g(the)g
(result)g(of)h(the)f(binary)g(test)h(using)e(the)i(\014rst)1110
3278 y(and)31 b(third)g(argumen)m(ts)i(as)f(op)s(erands.)44
-b(The)31 b(`)p Fs(-a)p Ft(')h(and)g(`)p Fs(-o)p Ft(')f(op)s(erators)i
+b(The)31 b(`)p Ft(-a)p Fu(')h(and)g(`)p Ft(-o)p Fu(')f(op)s(erators)i
(are)1110 3387 y(considered)25 b(binary)g(op)s(erators)g(when)f(there)i
(are)f(three)h(argumen)m(ts.)39 b(If)25 b(the)1110 3497
-y(\014rst)j(argumen)m(t)h(is)g(`)p Fs(!)p Ft(',)h(the)f(v)-5
+y(\014rst)j(argumen)m(t)h(is)g(`)p Ft(!)p Fu(',)h(the)f(v)-5
b(alue)29 b(is)g(the)g(negation)i(of)e(the)g(t)m(w)m(o-argumen)m(t)1110
3606 y(test)38 b(using)f(the)g(second)g(and)g(third)f(argumen)m(ts.)61
b(If)37 b(the)g(\014rst)f(argumen)m(t)1110 3716 y(is)j(exactly)i(`)p
-Fs(\()p Ft(')f(and)f(the)g(third)g(argumen)m(t)h(is)f(exactly)i(`)p
-Fs(\))p Ft(',)h(the)e(result)f(is)1110 3826 y(the)46
+Ft(\()p Fu(')f(and)f(the)g(third)g(argumen)m(t)h(is)f(exactly)i(`)p
+Ft(\))p Fu(',)h(the)e(result)f(is)1110 3826 y(the)46
b(one-argumen)m(t)g(test)h(of)f(the)f(second)h(argumen)m(t.)86
b(Otherwise,)50 b(the)1110 3935 y(expression)30 b(is)h(false.)630
4095 y(4)g(argumen)m(ts)1110 4204 y(If)h(the)i(\014rst)e(argumen)m(t)h
-(is)g(`)p Fs(!)p Ft(',)h(the)f(result)g(is)g(the)g(negation)h(of)f(the)
+(is)g(`)p Ft(!)p Fu(',)h(the)f(result)g(is)g(the)g(negation)h(of)f(the)
g(three-)1110 4314 y(argumen)m(t)h(expression)f(comp)s(osed)h(of)f(the)
h(remaining)g(argumen)m(ts.)50 b(Oth-)1110 4423 y(erwise,)34
b(the)f(expression)g(is)g(parsed)g(and)f(ev)-5 b(aluated)34
4802 y(The)43 b(expression)f(is)i(parsed)e(and)g(ev)-5
b(aluated)45 b(according)f(to)f(precedence)1110 4912
y(using)30 b(the)g(rules)g(listed)h(ab)s(o)m(v)m(e.)630
-5071 y(When)40 b(used)f(with)g Fs(test)g Ft(or)h(`)p
-Fs([)p Ft(',)j(the)d(`)p Fs(<)p Ft(')g(and)f(`)p Fs(>)p
-Ft(')h(op)s(erators)g(sort)g(lexicographically)630 5181
-y(using)30 b(ASCI)s(I)f(ordering.)150 5340 y Fs(times)p
+5071 y(When)40 b(used)f(with)g Ft(test)g Fu(or)h(`)p
+Ft([)p Fu(',)j(the)d(`)p Ft(<)p Fu(')g(and)f(`)p Ft(>)p
+Fu(')h(op)s(erators)g(sort)g(lexicographically)630 5181
+y(using)30 b(ASCI)s(I)f(ordering.)150 5340 y Ft(times)p
eop end
%%Page: 47 53
-TeXDict begin 47 52 bop 150 -116 a Ft(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(47)870 299 y Fs(times)630
-434 y Ft(Prin)m(t)37 b(out)h(the)g(user)e(and)h(system)g(times)h(used)f
+TeXDict begin 47 52 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(47)870 299 y Ft(times)630
+434 y Fu(Prin)m(t)37 b(out)h(the)g(user)e(and)h(system)g(times)h(used)f
(b)m(y)g(the)h(shell)f(and)g(its)h(c)m(hildren.)61 b(The)630
-543 y(return)29 b(status)i(is)f(zero.)150 704 y Fs(trap)870
-838 y(trap)47 b([-lp])f([)p Fi(arg)11 b Fs(])46 b([)p
-Fi(sigspec)56 b Fs(...)o(])630 973 y Ft(The)43 b(commands)f(in)h
-Fq(arg)51 b Ft(are)44 b(to)g(b)s(e)e(read)h(and)g(executed)h(when)e
-(the)h(shell)g(receiv)m(es)630 1083 y(signal)36 b Fq(sigsp)s(ec)6
-b Ft(.)55 b(If)35 b Fq(arg)44 b Ft(is)35 b(absen)m(t)h(\(and)f(there)g
-(is)g(a)h(single)g Fq(sigsp)s(ec)6 b Ft(\))35 b(or)h(equal)f(to)i(`)p
-Fs(-)p Ft(',)630 1192 y(eac)m(h)28 b(sp)s(eci\014ed)e(signal's)h(disp)s
-(osition)f(is)h(reset)g(to)g(the)g(v)-5 b(alue)27 b(it)g(had)f(when)f
-(the)i(shell)g(w)m(as)630 1302 y(started.)63 b(If)37
-b Fq(arg)46 b Ft(is)37 b(the)h(n)m(ull)g(string,)h(then)e(the)h(signal)
-h(sp)s(eci\014ed)d(b)m(y)i(eac)m(h)h Fq(sigsp)s(ec)k
-Ft(is)630 1412 y(ignored)36 b(b)m(y)g(the)g(shell)g(and)g(commands)f
-(it)i(in)m(v)m(ok)m(es.)59 b(If)35 b Fq(arg)45 b Ft(is)36
-b(not)g(presen)m(t)g(and)f(`)p Fs(-p)p Ft(')630 1521
-y(has)e(b)s(een)g(supplied,)f(the)i(shell)f(displa)m(ys)h(the)f(trap)g
-(commands)g(asso)s(ciated)i(with)e(eac)m(h)630 1631 y
-Fq(sigsp)s(ec)6 b Ft(.)40 b(If)28 b(no)g(argumen)m(ts)h(are)g
-(supplied,)f(or)g(only)h(`)p Fs(-p)p Ft(')f(is)g(giv)m(en,)i
-Fs(trap)e Ft(prin)m(ts)g(the)g(list)630 1740 y(of)g(commands)f(asso)s
-(ciated)i(with)f(eac)m(h)h(signal)f(n)m(um)m(b)s(er)e(in)i(a)g(form)f
-(that)h(ma)m(y)h(b)s(e)e(reused)630 1850 y(as)34 b(shell)g(input.)51
-b(The)33 b(`)p Fs(-l)p Ft(')h(option)g(causes)h(the)f(shell)g(to)h
-(prin)m(t)e(a)i(list)f(of)g(signal)h(names)630 1960 y(and)j(their)h
-(corresp)s(onding)f(n)m(um)m(b)s(ers.)65 b(Eac)m(h)39
-b Fq(sigsp)s(ec)45 b Ft(is)39 b(either)g(a)g(signal)h(name)f(or)g(a)630
-2069 y(signal)27 b(n)m(um)m(b)s(er.)39 b(Signal)27 b(names)f(are)h
-(case)h(insensitiv)m(e)g(and)e(the)g Fs(SIG)g Ft(pre\014x)g(is)h
-(optional.)630 2204 y(If)35 b(a)g Fq(sigsp)s(ec)41 b
-Ft(is)35 b Fs(0)g Ft(or)g Fs(EXIT)p Ft(,)g Fq(arg)43
-b Ft(is)35 b(executed)h(when)e(the)h(shell)h(exits.)55
-b(If)35 b(a)g Fq(sigsp)s(ec)41 b Ft(is)630 2314 y Fs(DEBUG)p
-Ft(,)32 b(the)g(command)g Fq(arg)40 b Ft(is)33 b(executed)g(b)s(efore)f
-(ev)m(ery)h(simple)f(command,)h Fs(for)e Ft(com-)630
-2423 y(mand,)d Fs(case)g Ft(command,)h Fs(select)e Ft(command,)i(ev)m
-(ery)h(arithmetic)g Fs(for)d Ft(command,)j(and)630 2533
+543 y(return)29 b(status)i(is)f(zero.)150 704 y Ft(trap)870
+838 y(trap)47 b([-lp])f([)p Fj(arg)p Ft(])g([)p Fj(sigspec)g
+Ft(...)o(])630 973 y Fu(The)d(commands)f(in)h Fr(arg)51
+b Fu(are)44 b(to)g(b)s(e)e(read)h(and)g(executed)h(when)e(the)h(shell)g
+(receiv)m(es)630 1083 y(signal)36 b Fr(sigsp)s(ec)p Fu(.)57
+b(If)35 b Fr(arg)44 b Fu(is)36 b(absen)m(t)g(\(and)f(there)h(is)g(a)f
+(single)i Fr(sigsp)s(ec)6 b Fu(\))35 b(or)h(equal)g(to)h(`)p
+Ft(-)p Fu(',)630 1192 y(eac)m(h)k(sp)s(eci\014ed)e(signal's)h(disp)s
+(osition)g(is)f(reset)i(to)f(the)g(v)-5 b(alue)40 b(it)g(had)f(when)g
+(the)h(shell)630 1302 y(w)m(as)33 b(started.)47 b(If)32
+b Fr(arg)41 b Fu(is)32 b(the)h(n)m(ull)f(string,)i(then)e(the)g(signal)
+i(sp)s(eci\014ed)d(b)m(y)i(eac)m(h)g Fr(sigsp)s(ec)630
+1412 y Fu(is)g(ignored)h(b)m(y)f(the)g(shell)h(and)e(commands)h(it)h
+(in)m(v)m(ok)m(es.)51 b(If)33 b Fr(arg)41 b Fu(is)33
+b(not)h(presen)m(t)f(and)g Ft(-p)630 1521 y Fu(has)g(b)s(een)g
+(supplied,)f(the)i(shell)f(displa)m(ys)h(the)f(trap)g(commands)g(asso)s
+(ciated)i(with)e(eac)m(h)630 1631 y Fr(sigsp)s(ec)p Fu(.)47
+b(If)31 b(no)i(argumen)m(ts)f(are)h(supplied,)e(or)i(only)f
+Ft(-p)g Fu(is)g(giv)m(en,)i Ft(trap)d Fu(prin)m(ts)h(the)g(list)630
+1740 y(of)c(commands)f(asso)s(ciated)i(with)f(eac)m(h)h(signal)f(n)m
+(um)m(b)s(er)e(in)i(a)g(form)f(that)h(ma)m(y)h(b)s(e)e(reused)630
+1850 y(as)f(shell)h(input.)38 b(The)26 b Ft(-l)f Fu(option)i(causes)f
+(the)g(shell)h(to)g(prin)m(t)e(a)i(list)f(of)h(signal)g(names)f(and)630
+1960 y(their)33 b(corresp)s(onding)f(n)m(um)m(b)s(ers.)47
+b(Eac)m(h)34 b Fr(sigsp)s(ec)39 b Fu(is)33 b(either)g(a)h(signal)g
+(name)f(or)g(a)g(signal)630 2069 y(n)m(um)m(b)s(er.)39
+b(Signal)31 b(names)f(are)h(case)h(insensitiv)m(e)f(and)f(the)g
+Ft(SIG)g Fu(pre\014x)f(is)i(optional.)630 2204 y(If)k(a)g
+Fr(sigsp)s(ec)41 b Fu(is)35 b Ft(0)g Fu(or)g Ft(EXIT)p
+Fu(,)g Fr(arg)43 b Fu(is)35 b(executed)h(when)e(the)h(shell)h(exits.)55
+b(If)35 b(a)g Fr(sigsp)s(ec)41 b Fu(is)630 2314 y Ft(DEBUG)p
+Fu(,)32 b(the)g(command)g Fr(arg)40 b Fu(is)33 b(executed)g(b)s(efore)f
+(ev)m(ery)h(simple)f(command,)h Ft(for)e Fu(com-)630
+2423 y(mand,)d Ft(case)g Fu(command,)h Ft(select)e Fu(command,)i(ev)m
+(ery)h(arithmetic)g Ft(for)d Fu(command,)j(and)630 2533
y(b)s(efore)22 b(the)g(\014rst)f(command)h(executes)i(in)e(a)g(shell)h
(function.)37 b(Refer)22 b(to)h(the)g(description)f(of)630
-2642 y(the)i Fs(extdebug)d Ft(option)j(to)h(the)f Fs(shopt)e
-Ft(builtin)h(\(see)i(Section)f(4.3.2)i([The)d(Shopt)g(Builtin],)630
-2752 y(page)33 b(63\))g(for)f(details)h(of)f(its)h(e\013ect)g(on)f(the)
-g Fs(DEBUG)f Ft(trap.)46 b(If)31 b(a)i Fq(sigsp)s(ec)38
-b Ft(is)32 b Fs(RETURN)p Ft(,)f(the)630 2862 y(command)h
-Fq(arg)41 b Ft(is)33 b(executed)g(eac)m(h)h(time)f(a)g(shell)g
+2642 y(the)i Ft(extdebug)d Fu(option)j(to)h(the)f Ft(shopt)e
+Fu(builtin)h(\(see)i(Section)f(4.3.2)i([The)d(Shopt)g(Builtin],)630
+2752 y(page)33 b(62\))g(for)f(details)h(of)f(its)h(e\013ect)g(on)f(the)
+g Ft(DEBUG)f Fu(trap.)46 b(If)31 b(a)i Fr(sigsp)s(ec)38
+b Fu(is)32 b Ft(RETURN)p Fu(,)f(the)630 2862 y(command)h
+Fr(arg)41 b Fu(is)33 b(executed)g(eac)m(h)h(time)f(a)g(shell)g
(function)g(or)f(a)h(script)g(executed)g(with)630 2971
-y(the)e Fs(.)f Ft(or)g Fs(source)f Ft(builtins)g(\014nishes)h
-(executing.)630 3106 y(If)20 b(a)i Fq(sigsp)s(ec)27 b
-Ft(is)21 b Fs(ERR)p Ft(,)h(the)f(command)g Fq(arg)29
-b Ft(is)21 b(executed)h(whenev)m(er)e(a)i(pip)s(eline)e(\(whic)m(h)h
+y(the)e Ft(.)f Fu(or)g Ft(source)f Fu(builtins)g(\014nishes)h
+(executing.)630 3106 y(If)20 b(a)i Fr(sigsp)s(ec)27 b
+Fu(is)21 b Ft(ERR)p Fu(,)h(the)f(command)g Fr(arg)29
+b Fu(is)21 b(executed)h(whenev)m(er)e(a)i(pip)s(eline)e(\(whic)m(h)h
(ma)m(y)630 3216 y(consist)35 b(of)g(a)f(single)h(simple)g(command\),)h
(a)e(list,)j(or)d(a)h(comp)s(ound)e(command)h(returns)630
3325 y(a)41 b(non-zero)g(exit)h(status,)h(sub)5 b(ject)41
b(to)g(the)g(follo)m(wing)h(conditions.)72 b(The)40 b
-Fs(ERR)f Ft(trap)i(is)630 3435 y(not)c(executed)h(if)f(the)h(failed)f
+Ft(ERR)f Fu(trap)i(is)630 3435 y(not)c(executed)h(if)f(the)h(failed)f
(command)g(is)g(part)g(of)h(the)f(command)g(list)h(immediately)630
-3544 y(follo)m(wing)30 b(an)e Fs(until)f Ft(or)i Fs(while)e
-Ft(k)m(eyw)m(ord,)i(part)g(of)f(the)h(test)g(follo)m(wing)h(the)f
-Fs(if)f Ft(or)g Fs(elif)630 3654 y Ft(reserv)m(ed)45
+3544 y(follo)m(wing)30 b(an)e Ft(until)f Fu(or)i Ft(while)e
+Fu(k)m(eyw)m(ord,)i(part)g(of)f(the)h(test)g(follo)m(wing)h(the)f
+Ft(if)f Fu(or)g Ft(elif)630 3654 y Fu(reserv)m(ed)45
b(w)m(ords,)j(part)c(of)h(a)g(command)g(executed)g(in)g(a)g
-Fs(&&)f Ft(or)h Fs(||)f Ft(list)h(except)h(the)630 3764
-y(command)28 b(follo)m(wing)j(the)d(\014nal)h Fs(&&)f
-Ft(or)g Fs(||)p Ft(,)h(an)m(y)g(command)f(in)h(a)g(pip)s(eline)f(but)g
+Ft(&&)f Fu(or)h Ft(||)f Fu(list)h(except)h(the)630 3764
+y(command)28 b(follo)m(wing)j(the)d(\014nal)h Ft(&&)f
+Fu(or)g Ft(||)p Fu(,)h(an)m(y)g(command)f(in)h(a)g(pip)s(eline)f(but)g
(the)h(last,)630 3873 y(or)d(if)g(the)f(command's)h(return)f(status)h
-(is)g(b)s(eing)f(in)m(v)m(erted)i(using)e Fs(!)p Ft(.)39
+(is)g(b)s(eing)f(in)m(v)m(erted)i(using)e Ft(!)p Fu(.)39
b(These)25 b(are)i(the)f(same)630 3983 y(conditions)31
-b(ob)s(ey)m(ed)f(b)m(y)h(the)f Fs(errexit)f Ft(\(`)p
-Fs(-e)p Ft('\))i(option.)630 4118 y(Signals)37 b(ignored)f(up)s(on)f
-(en)m(try)i(to)g(the)f(shell)h(cannot)g(b)s(e)f(trapp)s(ed)f(or)h
-(reset.)59 b(T)-8 b(rapp)s(ed)630 4227 y(signals)28 b(that)f(are)h(not)
-f(b)s(eing)g(ignored)g(are)g(reset)h(to)g(their)f(original)h(v)-5
+b(ob)s(ey)m(ed)f(b)m(y)h(the)f Ft(errexit)f Fu(\()p Ft(-e)p
+Fu(\))h(option.)630 4118 y(Signals)37 b(ignored)f(up)s(on)f(en)m(try)i
+(to)g(the)f(shell)h(cannot)g(b)s(e)f(trapp)s(ed)f(or)h(reset.)59
+b(T)-8 b(rapp)s(ed)630 4227 y(signals)28 b(that)f(are)h(not)f(b)s(eing)
+g(ignored)g(are)g(reset)h(to)g(their)f(original)h(v)-5
b(alues)28 b(in)e(a)i(subshell)630 4337 y(or)i(subshell)g(en)m
(vironmen)m(t)h(when)e(one)i(is)f(created.)630 4472 y(The)g(return)f
-(status)i(is)f(zero)h(unless)f(a)h Fq(sigsp)s(ec)36 b
-Ft(do)s(es)30 b(not)h(sp)s(ecify)f(a)g(v)-5 b(alid)31
-b(signal.)150 4632 y Fs(umask)870 4767 y(umask)46 b([-p])h([-S])g([)p
-Fi(mode)11 b Fs(])630 4902 y Ft(Set)29 b(the)h(shell)f(pro)s(cess's)g
-(\014le)g(creation)h(mask)f(to)h Fq(mo)s(de)5 b Ft(.)40
-b(If)28 b Fq(mo)s(de)34 b Ft(b)s(egins)29 b(with)f(a)i(digit,)630
+(status)i(is)f(zero)h(unless)f(a)h Fr(sigsp)s(ec)36 b
+Fu(do)s(es)30 b(not)h(sp)s(ecify)f(a)g(v)-5 b(alid)31
+b(signal.)150 4632 y Ft(umask)870 4767 y(umask)46 b([-p])h([-S])g([)p
+Fj(mode)p Ft(])630 4902 y Fu(Set)30 b(the)f(shell)h(pro)s(cess's)f
+(\014le)h(creation)g(mask)g(to)g Fr(mo)s(de)p Fu(.)40
+b(If)29 b Fr(mo)s(de)34 b Fu(b)s(egins)29 b(with)g(a)h(digit,)630
5011 y(it)e(is)f(in)m(terpreted)g(as)g(an)g(o)s(ctal)i(n)m(um)m(b)s
(er;)e(if)g(not,)h(it)g(is)f(in)m(terpreted)g(as)g(a)h(sym)m(b)s(olic)f
(mo)s(de)630 5121 y(mask)i(similar)g(to)g(that)h(accepted)g(b)m(y)f
-(the)g Fs(chmod)e Ft(command.)40 b(If)28 b Fq(mo)s(de)34
-b Ft(is)28 b(omitted,)j(the)630 5230 y(curren)m(t)36
-b(v)-5 b(alue)36 b(of)g(the)h(mask)f(is)g(prin)m(ted.)57
-b(If)35 b(the)h(`)p Fs(-S)p Ft(')g(option)h(is)f(supplied)f(without)h
-(a)630 5340 y Fq(mo)s(de)k Ft(argumen)m(t,)d(the)e(mask)g(is)g(prin)m
-(ted)g(in)g(a)h(sym)m(b)s(olic)f(format.)55 b(If)35 b(the)g(`)p
-Fs(-p)p Ft(')g(option)p eop end
+(the)g Ft(chmod)e Fu(command.)40 b(If)28 b Fr(mo)s(de)34
+b Fu(is)28 b(omitted,)j(the)630 5230 y(curren)m(t)39
+b(v)-5 b(alue)40 b(of)f(the)g(mask)g(is)h(prin)m(ted.)66
+b(If)39 b(the)g Ft(-S)g Fu(option)g(is)h(supplied)d(without)j(a)630
+5340 y Fr(mo)s(de)d Fu(argumen)m(t,)d(the)e(mask)g(is)h(prin)m(ted)f
+(in)g(a)g(sym)m(b)s(olic)h(format.)47 b(If)32 b(the)g
+Ft(-p)g Fu(option)h(is)p eop end
%%Page: 48 54
-TeXDict begin 48 53 bop 150 -116 a Ft(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(48)630 299 y(is)34
-b(supplied,)f(and)g Fq(mo)s(de)38 b Ft(is)33 b(omitted,)j(the)e(output)
-f(is)g(in)h(a)g(form)f(that)h(ma)m(y)g(b)s(e)f(reused)630
-408 y(as)e(input.)41 b(The)31 b(return)f(status)h(is)g(zero)h(if)e(the)
-h(mo)s(de)g(is)g(successfully)g(c)m(hanged)g(or)g(if)g(no)630
-518 y Fq(mo)s(de)k Ft(argumen)m(t)c(is)f(supplied,)g(and)f(non-zero)i
+TeXDict begin 48 53 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(48)630 299 y(supplied,)32
+b(and)f Fr(mo)s(de)37 b Fu(is)32 b(omitted,)i(the)f(output)f(is)g(in)g
+(a)g(form)g(that)h(ma)m(y)g(b)s(e)e(reused)h(as)630 408
+y(input.)62 b(The)38 b(return)f(status)h(is)g(zero)g(if)g(the)g(mo)s
+(de)g(is)g(successfully)g(c)m(hanged)g(or)g(if)g(no)630
+518 y Fr(mo)s(de)d Fu(argumen)m(t)c(is)f(supplied,)g(and)f(non-zero)i
(otherwise.)630 660 y(Note)38 b(that)e(when)g(the)g(mo)s(de)g(is)g(in)m
(terpreted)h(as)f(an)g(o)s(ctal)i(n)m(um)m(b)s(er,)e(eac)m(h)i(n)m(um)m
(b)s(er)d(of)630 770 y(the)f(umask)g(is)h(subtracted)f(from)f
-Fs(7)p Ft(.)53 b(Th)m(us,)34 b(a)h(umask)e(of)i Fs(022)e
-Ft(results)h(in)g(p)s(ermissions)630 879 y(of)d Fs(755)p
-Ft(.)150 1054 y Fs(unset)870 1196 y(unset)46 b([-fnv])g([)p
-Fi(name)11 b Fs(])630 1338 y Ft(Remo)m(v)m(e)32 b(eac)m(h)g(v)-5
-b(ariable)32 b(or)e(function)h Fq(name)5 b Ft(.)42 b(If)30
-b(the)h(`)p Fs(-v)p Ft(')f(option)h(is)g(giv)m(en,)h(eac)m(h)g
-Fq(name)630 1448 y Ft(refers)20 b(to)i(a)f(shell)g(v)-5
-b(ariable)21 b(and)g(that)g(v)-5 b(ariable)22 b(is)e(rem)m(v)m(o)m(v)m
-(ed.)40 b(If)20 b(the)h(`)p Fs(-f)p Ft(')g(option)g(is)g(giv)m(en,)630
-1557 y(the)37 b Fq(name)5 b Ft(s)37 b(refer)f(to)i(shell)f(functions,)h
+Ft(7)p Fu(.)53 b(Th)m(us,)34 b(a)h(umask)e(of)i Ft(022)e
+Fu(results)h(in)g(p)s(ermissions)630 879 y(of)d Ft(755)p
+Fu(.)150 1054 y Ft(unset)870 1196 y(unset)46 b([-fnv])g([)p
+Fj(name)p Ft(])630 1338 y Fu(Remo)m(v)m(e)36 b(eac)m(h)f(v)-5
+b(ariable)35 b(or)f(function)f Fr(name)p Fu(.)52 b(If)33
+b(the)i Ft(-v)e Fu(option)h(is)g(giv)m(en,)j(eac)m(h)e
+Fr(name)630 1448 y Fu(refers)24 b(to)h(a)g(shell)f(v)-5
+b(ariable)25 b(and)f(that)h(v)-5 b(ariable)25 b(is)f(rem)m(v)m(o)m(v)m
+(ed.)41 b(If)23 b(the)i Ft(-f)f Fu(option)g(is)h(giv)m(en,)630
+1557 y(the)37 b Fr(name)5 b Fu(s)37 b(refer)f(to)i(shell)f(functions,)h
(and)e(the)h(function)g(de\014nition)f(is)h(remo)m(v)m(ed.)61
-b(If)630 1667 y(the)30 b(`)p Fs(-n)p Ft(')f(option)h(is)g(supplied,)e
-(and)h Fq(name)35 b Ft(is)30 b(a)g(v)-5 b(ariable)30
-b(with)f(the)h Fq(nameref)47 b Ft(attribute,)630 1776
-y Fq(name)39 b Ft(will)33 b(b)s(e)g(unset)g(rather)h(than)f(the)g(v)-5
-b(ariable)35 b(it)f(references.)50 b(`)p Fs(-n)p Ft(')33
-b(has)h(no)f(e\013ect)i(if)630 1886 y(the)h(`)p Fs(-f)p
-Ft(')g(option)h(is)f(supplied.)56 b(If)36 b(no)g(options)g(are)g
-(supplied,)h(eac)m(h)g Fq(name)k Ft(refers)36 b(to)h(a)630
-1995 y(v)-5 b(ariable;)37 b(if)d(there)g(is)g(no)g(v)-5
-b(ariable)34 b(b)m(y)g(that)h(name,)g(an)m(y)f(function)g(with)f(that)i
-(name)f(is)630 2105 y(unset.)46 b(Readonly)33 b(v)-5
-b(ariables)33 b(and)e(functions)h(ma)m(y)h(not)g(b)s(e)e(unset.)47
-b(The)31 b(return)h(status)630 2215 y(is)e(zero)i(unless)d(a)i
-Fq(name)36 b Ft(is)30 b(readonly)-8 b(.)150 2470 y Fr(4.2)68
-b(Bash)45 b(Builtin)g(Commands)150 2629 y Ft(This)c(section)h(describ)s
-(es)f(builtin)f(commands)h(whic)m(h)g(are)h(unique)e(to)j(or)e(ha)m(v)m
-(e)h(b)s(een)f(extended)g(in)150 2739 y(Bash.)g(Some)30
-b(of)h(these)g(commands)f(are)g(sp)s(eci\014ed)g(in)g(the)h
-Fl(posix)e Ft(standard.)150 2921 y Fs(alias)870 3063
-y(alias)46 b([-p])h([)p Fi(name)11 b Fs([=)p Fi(value)g
-Fs(])43 b(...)o(])630 3205 y Ft(Without)h(argumen)m(ts)f(or)g(with)g
-(the)h(`)p Fs(-p)p Ft(')f(option,)k Fs(alias)41 b Ft(prin)m(ts)i(the)g
-(list)h(of)f(aliases)630 3315 y(on)36 b(the)g(standard)f(output)h(in)f
-(a)i(form)e(that)i(allo)m(ws)g(them)f(to)g(b)s(e)g(reused)f(as)h
-(input.)56 b(If)630 3424 y(argumen)m(ts)29 b(are)g(supplied,)f(an)h
-(alias)h(is)f(de\014ned)e(for)i(eac)m(h)h Fq(name)k Ft(whose)28
-b Fq(v)-5 b(alue)35 b Ft(is)29 b(giv)m(en.)630 3534 y(If)39
-b(no)h Fq(v)-5 b(alue)45 b Ft(is)40 b(giv)m(en,)j(the)d(name)f(and)g(v)
--5 b(alue)40 b(of)g(the)g(alias)h(is)f(prin)m(ted.)68
-b(Aliases)41 b(are)630 3643 y(describ)s(ed)29 b(in)h(Section)i(6.6)f
-([Aliases],)h(page)f(88.)150 3818 y Fs(bind)870 3960
-y(bind)47 b([-m)g Fi(keymap)11 b Fs(])45 b([-lpsvPSVX])870
-4070 y(bind)i([-m)g Fi(keymap)11 b Fs(])45 b([-q)i Fi(function)11
-b Fs(])45 b([-u)h Fi(function)11 b Fs(])45 b([-r)i Fi(keyseq)11
-b Fs(])870 4179 y(bind)47 b([-m)g Fi(keymap)11 b Fs(])45
-b(-f)i Fi(filename)870 4289 y Fs(bind)g([-m)g Fi(keymap)11
-b Fs(])45 b(-x)i Fi(keyseq:shell-command)870 4398 y Fs(bind)g([-m)g
-Fi(keymap)11 b Fs(])45 b Fi(keyseq:function-name)870
-4508 y Fs(bind)i Fi(readline-command)630 4650 y Ft(Displa)m(y)22
+b(If)630 1667 y(the)34 b Ft(-n)e Fu(option)i(is)g(supplied,)f(and)g
+Fr(name)38 b Fu(is)c(a)f(v)-5 b(ariable)34 b(with)g(the)f
+Fr(nameref)51 b Fu(attribute,)630 1776 y Fr(name)42 b
+Fu(will)37 b(b)s(e)f(unset)g(rather)g(than)h(the)g(v)-5
+b(ariable)37 b(it)g(references.)60 b Ft(-n)36 b Fu(has)g(no)h(e\013ect)
+h(if)630 1886 y(the)h Ft(-f)g Fu(option)g(is)h(supplied.)65
+b(If)39 b(no)g(options)h(are)f(supplied,)h(eac)m(h)h
+Fr(name)j Fu(refers)39 b(to)h(a)630 1995 y(v)-5 b(ariable;)37
+b(if)d(there)g(is)g(no)g(v)-5 b(ariable)34 b(b)m(y)g(that)h(name,)g(an)
+m(y)f(function)g(with)f(that)i(name)f(is)630 2105 y(unset.)46
+b(Readonly)33 b(v)-5 b(ariables)33 b(and)e(functions)h(ma)m(y)h(not)g
+(b)s(e)e(unset.)47 b(The)31 b(return)h(status)630 2215
+y(is)e(zero)i(unless)d(a)i Fr(name)36 b Fu(is)30 b(readonly)-8
+b(.)150 2470 y Fs(4.2)68 b(Bash)45 b(Builtin)g(Commands)150
+2629 y Fu(This)c(section)h(describ)s(es)f(builtin)f(commands)h(whic)m
+(h)g(are)h(unique)e(to)j(or)e(ha)m(v)m(e)h(b)s(een)f(extended)g(in)150
+2739 y(Bash.)g(Some)30 b(of)h(these)g(commands)f(are)g(sp)s(eci\014ed)g
+(in)g(the)h Fm(posix)e Fu(standard.)150 2921 y Ft(alias)870
+3063 y(alias)46 b([-p])h([)p Fj(name)p Ft([=)p Fj(value)p
+Ft(])d(...)o(])630 3205 y Fu(Without)26 b(argumen)m(ts)f(or)g(with)f
+(the)h Ft(-p)g Fu(option,)h Ft(alias)e Fu(prin)m(ts)g(the)h(list)h(of)f
+(aliases)h(on)f(the)630 3315 y(standard)g(output)g(in)g(a)h(form)f
+(that)h(allo)m(ws)h(them)e(to)h(b)s(e)f(reused)g(as)g(input.)39
+b(If)25 b(argumen)m(ts)630 3424 y(are)j(supplied,)e(an)i(alias)g(is)f
+(de\014ned)f(for)h(eac)m(h)h Fr(name)33 b Fu(whose)27
+b Fr(v)-5 b(alue)33 b Fu(is)27 b(giv)m(en.)41 b(If)26
+b(no)h Fr(v)-5 b(alue)630 3534 y Fu(is)37 b(giv)m(en,)j(the)d(name)g
+(and)g(v)-5 b(alue)37 b(of)h(the)f(alias)h(is)f(prin)m(ted.)61
+b(Aliases)38 b(are)f(describ)s(ed)f(in)630 3643 y(Section)31
+b(6.6)h([Aliases],)g(page)f(88.)150 3818 y Ft(bind)870
+3960 y(bind)47 b([-m)g Fj(keymap)p Ft(])e([-lpsvPSVX])870
+4070 y(bind)i([-m)g Fj(keymap)p Ft(])e([-q)i Fj(function)p
+Ft(])f([-u)g Fj(function)p Ft(])g([-r)h Fj(keyseq)p Ft(])870
+4179 y(bind)g([-m)g Fj(keymap)p Ft(])e(-f)j Fj(filename)870
+4289 y Ft(bind)f([-m)g Fj(keymap)p Ft(])e(-x)j Fj(keyseq:shell-command)
+870 4398 y Ft(bind)f([-m)g Fj(keymap)p Ft(])e Fj(keyseq:function-name)
+870 4508 y Ft(bind)i Fj(readline-command)630 4650 y Fu(Displa)m(y)22
b(curren)m(t)f(Readline)h(\(see)f(Chapter)g(8)g([Command)f(Line)h
-(Editing],)j(page)e(102\))g(k)m(ey)630 4760 y(and)36
+(Editing],)j(page)e(101\))g(k)m(ey)630 4760 y(and)36
b(function)g(bindings,)i(bind)d(a)i(k)m(ey)g(sequence)g(to)h(a)f
(Readline)g(function)f(or)h(macro,)630 4869 y(or)44 b(set)h(a)g
(Readline)f(v)-5 b(ariable.)83 b(Eac)m(h)45 b(non-option)g(argumen)m(t)
f(is)g(a)h(command)f(as)g(it)630 4979 y(w)m(ould)e(app)s(ear)f(in)h(a)h
(Readline)g(initialization)i(\014le)d(\(see)h(Section)g(8.3)g
-([Readline)g(Init)630 5088 y(File],)c(page)d(105\),)j(but)c(eac)m(h)h
+([Readline)g(Init)630 5088 y(File],)c(page)d(104\),)j(but)c(eac)m(h)h
(binding)f(or)g(command)h(m)m(ust)f(b)s(e)g(passed)g(as)h(a)g(separate)
-630 5198 y(argumen)m(t;)31 b(e.g.,)h(`)p Fs
-("\\C-x\\C-r":re-read-init-f)o(ile)p Ft('.)630 5340 y(Options,)e(if)h
+630 5198 y(argumen)m(t;)31 b(e.g.,)h(`)p Ft
+("\\C-x\\C-r":re-read-init-f)o(ile)p Fu('.)630 5340 y(Options,)e(if)h
(supplied,)e(ha)m(v)m(e)i(the)g(follo)m(wing)h(meanings:)p
eop end
%%Page: 49 55
-TeXDict begin 49 54 bop 150 -116 a Ft(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(49)630 299 y Fs(-m)30
-b Fi(keymap)1110 408 y Ft(Use)54 b Fq(k)m(eymap)j Ft(as)d(the)g(k)m
-(eymap)g(to)h(b)s(e)e(a\013ected)i(b)m(y)f(the)g(subsequen)m(t)1110
-518 y(bindings.)46 b(Acceptable)34 b Fq(k)m(eymap)i Ft(names)c(are)h
-Fs(emacs)p Ft(,)f Fs(emacs-standard)p Ft(,)1110 628 y
-Fs(emacs-meta)p Ft(,)99 b Fs(emacs-ctlx)p Ft(,)f Fs(vi)p
-Ft(,)j Fs(vi-move)p Ft(,)f Fs(vi-command)p Ft(,)f(and)1110
-737 y Fs(vi-insert)p Ft(.)64 b Fs(vi)38 b Ft(is)h(equiv)-5
-b(alen)m(t)41 b(to)e Fs(vi-command)p Ft(;)i Fs(emacs)c
-Ft(is)i(equiv)-5 b(alen)m(t)1110 847 y(to)31 b Fs(emacs-standard)p
-Ft(.)630 1013 y Fs(-l)384 b Ft(List)31 b(the)f(names)g(of)h(all)g
-(Readline)g(functions.)630 1179 y Fs(-p)384 b Ft(Displa)m(y)34
+TeXDict begin 49 54 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(49)630 299 y Ft(-m)30
+b Fj(keymap)66 b Fu(Use)54 b Fr(k)m(eymap)j Fu(as)d(the)g(k)m(eymap)g
+(to)h(b)s(e)e(a\013ected)i(b)m(y)f(the)g(subsequen)m(t)1110
+408 y(bindings.)46 b(Acceptable)34 b Fr(k)m(eymap)i Fu(names)c(are)h
+Ft(emacs)p Fu(,)f Ft(emacs-standard)p Fu(,)1110 518 y
+Ft(emacs-meta)p Fu(,)99 b Ft(emacs-ctlx)p Fu(,)f Ft(vi)p
+Fu(,)j Ft(vi-move)p Fu(,)f Ft(vi-command)p Fu(,)f(and)1110
+628 y Ft(vi-insert)p Fu(.)64 b Ft(vi)38 b Fu(is)h(equiv)-5
+b(alen)m(t)41 b(to)e Ft(vi-command)p Fu(;)i Ft(emacs)c
+Fu(is)i(equiv)-5 b(alen)m(t)1110 737 y(to)31 b Ft(emacs-standard)p
+Fu(.)630 888 y Ft(-l)384 b Fu(List)31 b(the)f(names)g(of)h(all)g
+(Readline)g(functions.)630 1039 y Ft(-p)384 b Fu(Displa)m(y)34
b(Readline)f(function)g(names)g(and)f(bindings)f(in)i(suc)m(h)f(a)i(w)m
-(a)m(y)f(that)1110 1289 y(they)e(can)f(b)s(e)g(used)g(as)g(input)g(or)g
-(in)g(a)h(Readline)g(initialization)i(\014le.)630 1455
-y Fs(-P)384 b Ft(List)31 b(curren)m(t)f(Readline)h(function)f(names)g
-(and)g(bindings.)630 1621 y Fs(-v)384 b Ft(Displa)m(y)25
+(a)m(y)f(that)1110 1148 y(they)e(can)f(b)s(e)g(used)g(as)g(input)g(or)g
+(in)g(a)h(Readline)g(initialization)i(\014le.)630 1299
+y Ft(-P)384 b Fu(List)31 b(curren)m(t)f(Readline)h(function)f(names)g
+(and)g(bindings.)630 1450 y Ft(-v)384 b Fu(Displa)m(y)25
b(Readline)f(v)-5 b(ariable)25 b(names)f(and)f(v)-5 b(alues)24
-b(in)g(suc)m(h)f(a)i(w)m(a)m(y)f(that)h(they)1110 1731
+b(in)g(suc)m(h)f(a)i(w)m(a)m(y)f(that)h(they)1110 1559
y(can)31 b(b)s(e)e(used)h(as)h(input)e(or)h(in)g(a)h(Readline)g
-(initialization)j(\014le.)630 1897 y Fs(-V)384 b Ft(List)31
+(initialization)j(\014le.)630 1710 y Ft(-V)384 b Fu(List)31
b(curren)m(t)f(Readline)h(v)-5 b(ariable)31 b(names)f(and)g(v)-5
-b(alues.)630 2063 y Fs(-s)384 b Ft(Displa)m(y)39 b(Readline)f(k)m(ey)g
+b(alues.)630 1861 y Ft(-s)384 b Fu(Displa)m(y)39 b(Readline)f(k)m(ey)g
(sequences)f(b)s(ound)f(to)i(macros)g(and)f(the)g(strings)1110
-2172 y(they)d(output)f(in)h(suc)m(h)f(a)h(w)m(a)m(y)h(that)f(they)g
-(can)g(b)s(e)f(used)g(as)h(input)e(or)i(in)g(a)1110 2282
-y(Readline)d(initialization)i(\014le.)630 2448 y Fs(-S)384
-b Ft(Displa)m(y)39 b(Readline)f(k)m(ey)g(sequences)f(b)s(ound)f(to)i
-(macros)g(and)f(the)g(strings)1110 2558 y(they)31 b(output.)630
-2724 y Fs(-f)f Fi(filename)1110 2834 y Ft(Read)h(k)m(ey)g(bindings)e
-(from)h Fq(\014lename)5 b Ft(.)630 3000 y Fs(-q)30 b
-Fi(function)1110 3109 y Ft(Query)g(ab)s(out)g(whic)m(h)g(k)m(eys)h(in)m
-(v)m(ok)m(e)h(the)f(named)f Fq(function)p Ft(.)630 3275
-y Fs(-u)g Fi(function)1110 3385 y Ft(Un)m(bind)f(all)i(k)m(eys)g(b)s
-(ound)e(to)i(the)f(named)g Fq(function)p Ft(.)630 3551
-y Fs(-r)g Fi(keyseq)1110 3661 y Ft(Remo)m(v)m(e)i(an)m(y)f(curren)m(t)f
-(binding)f(for)h Fq(k)m(eyseq)r Ft(.)630 3827 y Fs(-x)g
-Fi(keyseq:shell-command)1110 3937 y Ft(Cause)35 b Fq(shell-command)k
-Ft(to)d(b)s(e)f(executed)h(whenev)m(er)f Fq(k)m(eyseq)j
-Ft(is)d(en)m(tered.)1110 4046 y(When)46 b Fq(shell-command)k
-Ft(is)c(executed,)51 b(the)46 b(shell)g(sets)g(the)g
-Fs(READLINE_)1110 4156 y(LINE)37 b Ft(v)-5 b(ariable)38
-b(to)g(the)g(con)m(ten)m(ts)i(of)e(the)g(Readline)g(line)g(bu\013er)f
-(and)g(the)1110 4265 y Fs(READLINE_POINT)e Ft(v)-5 b(ariable)39
-b(to)h(the)e(curren)m(t)h(lo)s(cation)h(of)f(the)g(insertion)1110
-4375 y(p)s(oin)m(t.)59 b(If)37 b(the)f(executed)i(command)e(c)m(hanges)
-i(the)f(v)-5 b(alue)37 b(of)f Fs(READLINE_)1110 4484
-y(LINE)29 b Ft(or)h Fs(READLINE_POINT)p Ft(,)c(those)31
-b(new)e(v)-5 b(alues)31 b(will)f(b)s(e)f(re\015ected)i(in)f(the)1110
-4594 y(editing)h(state.)630 4760 y Fs(-X)384 b Ft(List)27
-b(all)i(k)m(ey)f(sequences)f(b)s(ound)e(to)j(shell)g(commands)e(and)h
-(the)g(asso)s(ciated)1110 4870 y(commands)j(in)g(a)h(format)g(that)f
-(can)h(b)s(e)f(reused)f(as)i(input.)630 5036 y(The)26
-b(return)f(status)i(is)f(zero)i(unless)d(an)i(in)m(v)-5
-b(alid)27 b(option)g(is)f(supplied)f(or)i(an)f(error)g(o)s(ccurs.)150
-5202 y Fs(builtin)870 5340 y(builtin)46 b([)p Fi(shell-builtin)54
-b Fs([)p Fi(args)11 b Fs(]])p eop end
-%%Page: 50 56
-TeXDict begin 50 55 bop 150 -116 a Ft(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(50)630 299 y(Run)35
-b(a)h(shell)h(builtin,)g(passing)f(it)g Fq(args)t Ft(,)i(and)e(return)f
-(its)h(exit)h(status.)58 b(This)36 b(is)g(useful)630
-408 y(when)29 b(de\014ning)h(a)g(shell)h(function)f(with)g(the)g(same)h
-(name)f(as)h(a)g(shell)f(builtin,)g(retaining)630 518
-y(the)k(functionalit)m(y)h(of)f(the)f(builtin)g(within)g(the)h
+1970 y(they)d(output)f(in)h(suc)m(h)f(a)h(w)m(a)m(y)h(that)f(they)g
+(can)g(b)s(e)f(used)g(as)h(input)e(or)i(in)g(a)1110 2080
+y(Readline)d(initialization)i(\014le.)630 2230 y Ft(-S)384
+b Fu(Displa)m(y)39 b(Readline)f(k)m(ey)g(sequences)f(b)s(ound)f(to)i
+(macros)g(and)f(the)g(strings)1110 2340 y(they)31 b(output.)630
+2491 y Ft(-f)f Fj(filename)1110 2600 y Fu(Read)h(k)m(ey)g(bindings)e
+(from)h Fr(\014lename)p Fu(.)630 2751 y Ft(-q)g Fj(function)1110
+2861 y Fu(Query)g(ab)s(out)g(whic)m(h)g(k)m(eys)h(in)m(v)m(ok)m(e)h
+(the)f(named)f Fr(function)p Fu(.)630 3011 y Ft(-u)g
+Fj(function)1110 3121 y Fu(Un)m(bind)f(all)i(k)m(eys)g(b)s(ound)e(to)i
+(the)f(named)g Fr(function)p Fu(.)630 3271 y Ft(-r)g
+Fj(keyseq)66 b Fu(Remo)m(v)m(e)32 b(an)m(y)f(curren)m(t)f(binding)f
+(for)h Fr(k)m(eyseq)p Fu(.)630 3422 y Ft(-x)g Fj(keyseq:shell-command)
+1110 3532 y Fu(Cause)35 b Fr(shell-command)k Fu(to)d(b)s(e)f(executed)h
+(whenev)m(er)f Fr(k)m(eyseq)j Fu(is)d(en)m(tered.)1110
+3641 y(When)46 b Fr(shell-command)k Fu(is)c(executed,)51
+b(the)46 b(shell)g(sets)g(the)g Ft(READLINE_)1110 3751
+y(LINE)37 b Fu(v)-5 b(ariable)38 b(to)g(the)g(con)m(ten)m(ts)i(of)e
+(the)g(Readline)g(line)g(bu\013er)f(and)g(the)1110 3861
+y Ft(READLINE_POINT)e Fu(v)-5 b(ariable)39 b(to)h(the)e(curren)m(t)h
+(lo)s(cation)h(of)f(the)g(insertion)1110 3970 y(p)s(oin)m(t.)59
+b(If)37 b(the)f(executed)i(command)e(c)m(hanges)i(the)f(v)-5
+b(alue)37 b(of)f Ft(READLINE_)1110 4080 y(LINE)29 b Fu(or)h
+Ft(READLINE_POINT)p Fu(,)c(those)31 b(new)e(v)-5 b(alues)31
+b(will)f(b)s(e)f(re\015ected)i(in)f(the)1110 4189 y(editing)h(state.)
+630 4340 y Ft(-X)384 b Fu(List)27 b(all)i(k)m(ey)f(sequences)f(b)s
+(ound)e(to)j(shell)g(commands)e(and)h(the)g(asso)s(ciated)1110
+4450 y(commands)j(in)g(a)h(format)g(that)f(can)h(b)s(e)f(reused)f(as)i
+(input.)630 4600 y(The)26 b(return)f(status)i(is)f(zero)i(unless)d(an)i
+(in)m(v)-5 b(alid)27 b(option)g(is)f(supplied)f(or)i(an)f(error)g(o)s
+(ccurs.)150 4751 y Ft(builtin)870 4881 y(builtin)46 b([)p
+Fj(shell-builtin)e Ft([)p Fj(args)p Ft(]])630 5011 y
+Fu(Run)35 b(a)i(shell)f(builtin,)i(passing)e(it)h Fr(args)p
+Fu(,)h(and)e(return)f(its)i(exit)g(status.)59 b(This)35
+b(is)i(useful)630 5121 y(when)29 b(de\014ning)h(a)g(shell)h(function)f
+(with)g(the)g(same)h(name)f(as)h(a)g(shell)f(builtin,)g(retaining)630
+5230 y(the)k(functionalit)m(y)h(of)f(the)f(builtin)g(within)g(the)h
(function.)50 b(The)33 b(return)g(status)h(is)f(non-)630
-628 y(zero)e(if)g Fq(shell-builtin)f Ft(is)g(not)h(a)g(shell)f(builtin)
-g(command.)150 774 y Fs(caller)870 902 y(caller)46 b([)p
-Fi(expr)11 b Fs(])630 1029 y Ft(Returns)34 b(the)g(con)m(text)j(of)e
-(an)m(y)g(activ)m(e)i(subroutine)c(call)j(\(a)f(shell)g(function)f(or)h
-(a)g(script)630 1139 y(executed)c(with)f(the)h Fs(.)f
-Ft(or)g Fs(source)f Ft(builtins\).)630 1267 y(Without)45
-b Fq(expr)7 b Ft(,)46 b Fs(caller)d Ft(displa)m(ys)h(the)g(line)g(n)m
-(um)m(b)s(er)f(and)g(source)h(\014lename)h(of)f(the)630
-1377 y(curren)m(t)35 b(subroutine)f(call.)56 b(If)35
-b(a)h(non-negativ)m(e)h(in)m(teger)g(is)e(supplied)f(as)h
-Fq(expr)7 b Ft(,)36 b Fs(caller)630 1486 y Ft(displa)m(ys)41
-b(the)f(line)h(n)m(um)m(b)s(er,)h(subroutine)d(name,)44
-b(and)c(source)g(\014le)h(corresp)s(onding)e(to)630 1596
-y(that)c(p)s(osition)g(in)f(the)h(curren)m(t)f(execution)i(call)g(stac)
-m(k.)54 b(This)34 b(extra)h(information)g(ma)m(y)630
-1705 y(b)s(e)30 b(used,)g(for)g(example,)h(to)g(prin)m(t)f(a)h(stac)m
+5340 y(zero)e(if)g Fr(shell-builtin)f Fu(is)g(not)h(a)g(shell)f
+(builtin)g(command.)p eop end
+%%Page: 50 56
+TeXDict begin 50 55 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(50)150 299 y Ft(caller)870
+443 y(caller)46 b([)p Fj(expr)p Ft(])630 587 y Fu(Returns)34
+b(the)g(con)m(text)j(of)e(an)m(y)g(activ)m(e)i(subroutine)c(call)j(\(a)
+f(shell)g(function)f(or)h(a)g(script)630 696 y(executed)c(with)f(the)h
+Ft(.)f Fu(or)g Ft(source)f Fu(builtins\).)630 840 y(Without)45
+b Fr(expr)p Fu(,)j Ft(caller)43 b Fu(displa)m(ys)i(the)f(line)h(n)m(um)
+m(b)s(er)f(and)g(source)g(\014lename)h(of)g(the)630 950
+y(curren)m(t)35 b(subroutine)g(call.)58 b(If)35 b(a)h(non-negativ)m(e)i
+(in)m(teger)f(is)f(supplied)e(as)i Fr(expr)p Fu(,)h Ft(caller)630
+1059 y Fu(displa)m(ys)k(the)f(line)h(n)m(um)m(b)s(er,)h(subroutine)d
+(name,)44 b(and)c(source)g(\014le)h(corresp)s(onding)e(to)630
+1169 y(that)c(p)s(osition)g(in)f(the)h(curren)m(t)f(execution)i(call)g
+(stac)m(k.)54 b(This)34 b(extra)h(information)g(ma)m(y)630
+1278 y(b)s(e)30 b(used,)g(for)g(example,)h(to)g(prin)m(t)f(a)h(stac)m
(k)h(trace.)42 b(The)29 b(curren)m(t)i(frame)f(is)g(frame)h(0.)630
-1833 y(The)e(return)f(v)-5 b(alue)29 b(is)h(0)f(unless)g(the)g(shell)g
-(is)h(not)f(executing)h(a)g(subroutine)e(call)i(or)g
-Fq(expr)630 1943 y Ft(do)s(es)g(not)h(corresp)s(ond)e(to)i(a)g(v)-5
+1422 y(The)d(return)g(v)-5 b(alue)29 b(is)g(0)g(unless)f(the)h(shell)g
+(is)g(not)g(executing)h(a)f(subroutine)e(call)j(or)f
+Fr(expr)630 1532 y Fu(do)s(es)h(not)h(corresp)s(ond)e(to)i(a)g(v)-5
b(alid)30 b(p)s(osition)h(in)f(the)g(call)i(stac)m(k.)150
-2089 y Fs(command)870 2217 y(command)46 b([-pVv])g Fi(command)56
-b Fs([)p Fi(arguments)g Fs(...)o(])630 2345 y Ft(Runs)31
-b Fq(command)36 b Ft(with)d Fq(argumen)m(ts)j Ft(ignoring)d(an)m(y)g
-(shell)g(function)f(named)g Fq(command)t Ft(.)630 2454
+1710 y Ft(command)870 1854 y(command)46 b([-pVv])g Fj(command)g
+Ft([)p Fj(arguments)f Ft(...)o(])630 1998 y Fu(Runs)32
+b Fr(command)k Fu(with)d Fr(argumen)m(ts)k Fu(ignoring)c(an)m(y)g
+(shell)h(function)e(named)h Fr(command)p Fu(.)630 2107
y(Only)39 b(shell)i(builtin)e(commands)h(or)g(commands)f(found)g(b)m(y)
-h(searc)m(hing)h(the)f Fs(PATH)f Ft(are)630 2564 y(executed.)g(If)23
-b(there)h(is)f(a)h(shell)f(function)g(named)g Fs(ls)p
-Ft(,)i(running)c(`)p Fs(command)29 b(ls)p Ft(')23 b(within)g(the)630
-2673 y(function)33 b(will)g(execute)i(the)f(external)g(command)f
-Fs(ls)f Ft(instead)i(of)f(calling)i(the)e(function)630
-2783 y(recursiv)m(ely)-8 b(.)84 b(The)44 b(`)p Fs(-p)p
-Ft(')h(option)g(means)f(to)h(use)g(a)f(default)h(v)-5
-b(alue)45 b(for)f Fs(PATH)g Ft(that)h(is)630 2892 y(guaran)m(teed)35
-b(to)f(\014nd)e(all)j(of)f(the)g(standard)f(utilities.)52
-b(The)33 b(return)g(status)h(in)f(this)h(case)630 3002
-y(is)29 b(127)g(if)g Fq(command)j Ft(cannot)d(b)s(e)e(found)h(or)g(an)g
+h(searc)m(hing)h(the)f Ft(PATH)f Fu(are)630 2217 y(executed.)59
+b(If)36 b(there)h(is)f(a)h(shell)f(function)g(named)g
+Ft(ls)p Fu(,)h(running)e(`)p Ft(command)29 b(ls)p Fu(')35
+b(within)630 2326 y(the)c(function)f(will)h(execute)g(the)g(external)g
+(command)g Ft(ls)f Fu(instead)g(of)h(calling)h(the)f(func-)630
+2436 y(tion)36 b(recursiv)m(ely)-8 b(.)56 b(The)34 b
+Ft(-p)h Fu(option)g(means)g(to)h(use)f(a)g(default)h(v)-5
+b(alue)35 b(for)g Ft(PATH)f Fu(that)i(is)630 2545 y(guaran)m(teed)f(to)
+f(\014nd)e(all)j(of)f(the)g(standard)f(utilities.)52
+b(The)33 b(return)g(status)h(in)f(this)h(case)630 2655
+y(is)29 b(127)g(if)g Fr(command)j Fu(cannot)d(b)s(e)e(found)h(or)g(an)g
(error)h(o)s(ccurred,)f(and)g(the)h(exit)g(status)g(of)630
-3112 y Fq(command)34 b Ft(otherwise.)630 3240 y(If)25
-b(either)g(the)h(`)p Fs(-V)p Ft(')f(or)g(`)p Fs(-v)p
-Ft(')g(option)g(is)g(supplied,)h(a)f(description)g(of)h
-Fq(command)i Ft(is)d(prin)m(ted.)630 3349 y(The)i(`)p
-Fs(-v)p Ft(')h(option)h(causes)f(a)h(single)f(w)m(ord)g(indicating)h
-(the)f(command)g(or)g(\014le)g(name)g(used)630 3459 y(to)36
-b(in)m(v)m(ok)m(e)g Fq(command)j Ft(to)c(b)s(e)g(displa)m(y)m(ed;)j
-(the)d(`)p Fs(-V)p Ft(')g(option)g(pro)s(duces)e(a)j(more)f(v)m(erb)s
-(ose)630 3568 y(description.)61 b(In)36 b(this)h(case,)j(the)e(return)e
-(status)h(is)g(zero)h(if)f Fq(command)k Ft(is)c(found,)h(and)630
-3678 y(non-zero)31 b(if)f(not.)150 3824 y Fs(declare)870
-3952 y(declare)46 b([-aAfFgilnrtux])d([-p])k([)p Fi(name)11
-b Fs([=)p Fi(value)g Fs(])43 b(...)o(])630 4080 y Ft(Declare)29
+2765 y Fr(command)34 b Fu(otherwise.)630 2908 y(If)e(either)h(the)f
+Ft(-V)g Fu(or)g Ft(-v)g Fu(option)h(is)f(supplied,)g(a)h(description)f
+(of)h Fr(command)j Fu(is)c(prin)m(ted.)630 3018 y(The)f
+Ft(-v)h Fu(option)g(causes)g(a)g(single)h(w)m(ord)f(indicating)g(the)g
+(command)g(or)g(\014le)g(name)g(used)630 3128 y(to)40
+b(in)m(v)m(ok)m(e)h Fr(command)h Fu(to)e(b)s(e)e(displa)m(y)m(ed;)44
+b(the)39 b Ft(-V)f Fu(option)i(pro)s(duces)d(a)j(more)f(v)m(erb)s(ose)
+630 3237 y(description.)61 b(In)36 b(this)h(case,)j(the)e(return)e
+(status)h(is)g(zero)h(if)f Fr(command)k Fu(is)c(found,)h(and)630
+3347 y(non-zero)31 b(if)f(not.)150 3525 y Ft(declare)870
+3669 y(declare)46 b([-aAfFgilnrtux])d([-p])k([)p Fj(name)p
+Ft([=)p Fj(value)p Ft(])d(...)o(])630 3813 y Fu(Declare)29
b(v)-5 b(ariables)28 b(and)e(giv)m(e)j(them)e(attributes.)40
-b(If)27 b(no)g Fq(name)5 b Ft(s)27 b(are)h(giv)m(en,)h(then)e(displa)m
-(y)630 4189 y(the)k(v)-5 b(alues)30 b(of)h(v)-5 b(ariables)31
-b(instead.)630 4317 y(The)c(`)p Fs(-p)p Ft(')h(option)g(will)g(displa)m
-(y)g(the)g(attributes)g(and)g(v)-5 b(alues)28 b(of)g(eac)m(h)h
-Fq(name)5 b Ft(.)40 b(When)27 b(`)p Fs(-p)p Ft(')630
-4427 y(is)j(used)g(with)g Fq(name)35 b Ft(argumen)m(ts,)c(additional)h
-(options,)e(other)h(than)f(`)p Fs(-f)p Ft(')g(and)g(`)p
-Fs(-F)p Ft(',)h(are)630 4536 y(ignored.)630 4664 y(When)36
-b(`)p Fs(-p)p Ft(')f(is)h(supplied)f(without)h Fq(name)41
-b Ft(argumen)m(ts,)d Fs(declare)c Ft(will)i(displa)m(y)g(the)g(at-)630
-4774 y(tributes)31 b(and)f(v)-5 b(alues)31 b(of)g(all)h(v)-5
+b(If)27 b(no)g Fr(name)5 b Fu(s)27 b(are)h(giv)m(en,)h(then)e(displa)m
+(y)630 3922 y(the)k(v)-5 b(alues)30 b(of)h(v)-5 b(ariables)31
+b(instead.)630 4066 y(The)k Ft(-p)f Fu(option)i(will)g(displa)m(y)f
+(the)h(attributes)g(and)e(v)-5 b(alues)36 b(of)f(eac)m(h)i
+Fr(name)p Fu(.)55 b(When)36 b Ft(-p)630 4176 y Fu(is)i(used)g(with)g
+Fr(name)43 b Fu(argumen)m(ts,)e(additional)e(options,)i(other)d(than)g
+Ft(-f)g Fu(and)g Ft(-F)p Fu(,)i(are)630 4285 y(ignored.)630
+4429 y(When)g Ft(-p)g Fu(is)g(supplied)f(without)i Fr(name)k
+Fu(argumen)m(ts,)f Ft(declare)38 b Fu(will)j(displa)m(y)f(the)h(at-)630
+4539 y(tributes)31 b(and)f(v)-5 b(alues)31 b(of)g(all)h(v)-5
b(ariables)31 b(ha)m(ving)h(the)f(attributes)g(sp)s(eci\014ed)f(b)m(y)h
-(the)g(addi-)630 4883 y(tional)h(options.)41 b(If)30
-b(no)g(other)h(options)g(are)g(supplied)e(with)h(`)p
-Fs(-p)p Ft(',)g Fs(declare)f Ft(will)i(displa)m(y)630
-4993 y(the)f(attributes)g(and)e(v)-5 b(alues)30 b(of)g(all)g(shell)g(v)
--5 b(ariables.)41 b(The)29 b(`)p Fs(-f)p Ft(')g(option)h(will)g
-(restrict)g(the)630 5103 y(displa)m(y)h(to)g(shell)f(functions.)630
-5230 y(The)36 b(`)p Fs(-F)p Ft(')h(option)g(inhibits)f(the)h(displa)m
-(y)g(of)g(function)g(de\014nitions;)i(only)e(the)g(function)630
-5340 y(name)30 b(and)f(attributes)i(are)f(prin)m(ted.)40
-b(If)30 b(the)g Fs(extdebug)e Ft(shell)i(option)g(is)g(enabled)g(using)
-p eop end
+(the)g(addi-)630 4648 y(tional)k(options.)52 b(If)34
+b(no)g(other)g(options)g(are)g(supplied)f(with)h Ft(-p)p
+Fu(,)g Ft(declare)e Fu(will)j(displa)m(y)630 4758 y(the)e(attributes)h
+(and)e(v)-5 b(alues)33 b(of)g(all)h(shell)f(v)-5 b(ariables.)50
+b(The)32 b Ft(-f)g Fu(option)i(will)f(restrict)h(the)630
+4867 y(displa)m(y)d(to)g(shell)f(functions.)630 5011
+y(The)41 b Ft(-F)f Fu(option)i(inhibits)e(the)i(displa)m(y)f(of)g
+(function)g(de\014nitions;)47 b(only)41 b(the)g(function)630
+5121 y(name)30 b(and)f(attributes)i(are)f(prin)m(ted.)40
+b(If)30 b(the)g Ft(extdebug)e Fu(shell)i(option)g(is)g(enabled)g(using)
+630 5230 y Ft(shopt)24 b Fu(\(see)i(Section)g(4.3.2)i([The)d(Shopt)f
+(Builtin],)k(page)e(62\),)i(the)d(source)h(\014le)f(name)h(and)630
+5340 y(line)31 b(n)m(um)m(b)s(er)e(where)h(the)g(function)g(is)h
+(de\014ned)e(are)i(displa)m(y)m(ed)g(as)f(w)m(ell.)42
+b Ft(-F)30 b Fu(implies)g Ft(-f)p Fu(.)p eop end
%%Page: 51 57
-TeXDict begin 51 56 bop 150 -116 a Ft(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(51)630 299 y Fs(shopt)24
-b Ft(\(see)i(Section)g(4.3.2)i([The)d(Shopt)f(Builtin],)k(page)e(63\),)
-i(the)d(source)h(\014le)f(name)h(and)630 408 y(line)38
-b(n)m(um)m(b)s(er)e(where)i(the)g(function)f(is)h(de\014ned)e(are)i
-(displa)m(y)m(ed)h(as)e(w)m(ell.)64 b(`)p Fs(-F)p Ft(')38
-b(implies)630 518 y(`)p Fs(-f)p Ft('.)630 654 y(The)32
-b(`)p Fs(-g)p Ft(')h(option)g(forces)g(v)-5 b(ariables)33
-b(to)h(b)s(e)e(created)h(or)g(mo)s(di\014ed)e(at)j(the)f(global)h(scop)
-s(e,)630 764 y(ev)m(en)k(when)e Fs(declare)f Ft(is)j(executed)g(in)f(a)
-g(shell)h(function.)61 b(It)37 b(is)g(ignored)h(in)f(all)h(other)630
-873 y(cases.)630 1009 y(The)27 b(follo)m(wing)h(options)g(can)f(b)s(e)g
+TeXDict begin 51 56 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(51)630 299 y(The)36
+b Ft(-g)g Fu(option)h(forces)g(v)-5 b(ariables)37 b(to)g(b)s(e)f
+(created)i(or)e(mo)s(di\014ed)g(at)h(the)g(global)h(scop)s(e,)630
+408 y(ev)m(en)g(when)e Ft(declare)f Fu(is)j(executed)g(in)f(a)g(shell)h
+(function.)61 b(It)37 b(is)g(ignored)h(in)f(all)h(other)630
+518 y(cases.)630 646 y(The)27 b(follo)m(wing)h(options)g(can)f(b)s(e)g
(used)f(to)i(restrict)g(output)e(to)i(v)-5 b(ariables)28
-b(with)f(the)g(sp)s(ec-)630 1119 y(i\014ed)j(attributes)h(or)f(to)h
-(giv)m(e)h(v)-5 b(ariables)31 b(attributes:)630 1281
-y Fs(-a)384 b Ft(Eac)m(h)36 b Fq(name)k Ft(is)34 b(an)h(indexed)g(arra)
-m(y)g(v)-5 b(ariable)36 b(\(see)f(Section)h(6.7)g([Arra)m(ys],)1110
-1390 y(page)31 b(89\).)630 1553 y Fs(-A)384 b Ft(Eac)m(h)24
-b Fq(name)k Ft(is)23 b(an)g(asso)s(ciativ)m(e)j(arra)m(y)e(v)-5
+b(with)f(the)g(sp)s(ec-)630 756 y(i\014ed)j(attributes)h(or)f(to)h(giv)
+m(e)h(v)-5 b(ariables)31 b(attributes:)630 902 y Ft(-a)384
+b Fu(Eac)m(h)36 b Fr(name)k Fu(is)34 b(an)h(indexed)g(arra)m(y)g(v)-5
+b(ariable)36 b(\(see)f(Section)h(6.7)g([Arra)m(ys],)1110
+1011 y(page)31 b(89\).)630 1157 y Ft(-A)384 b Fu(Eac)m(h)24
+b Fr(name)k Fu(is)23 b(an)g(asso)s(ciativ)m(e)j(arra)m(y)e(v)-5
b(ariable)24 b(\(see)g(Section)g(6.7)g([Arra)m(ys],)1110
-1662 y(page)31 b(89\).)630 1824 y Fs(-f)384 b Ft(Use)31
-b(function)f(names)g(only)-8 b(.)630 1987 y Fs(-i)384
-b Ft(The)36 b(v)-5 b(ariable)37 b(is)f(to)h(b)s(e)f(treated)h(as)g(an)f
+1267 y(page)31 b(89\).)630 1413 y Ft(-f)384 b Fu(Use)31
+b(function)f(names)g(only)-8 b(.)630 1559 y Ft(-i)384
+b Fu(The)36 b(v)-5 b(ariable)37 b(is)f(to)h(b)s(e)f(treated)h(as)g(an)f
(in)m(teger;)41 b(arithmetic)c(ev)-5 b(aluation)1110
-2096 y(\(see)29 b(Section)f(6.5)h([Shell)f(Arithmetic],)i(page)e(87\))h
-(is)f(p)s(erformed)e(when)h(the)1110 2206 y(v)-5 b(ariable)31
-b(is)g(assigned)f(a)h(v)-5 b(alue.)630 2368 y Fs(-l)384
-b Ft(When)26 b(the)g(v)-5 b(ariable)27 b(is)f(assigned)g(a)g(v)-5
+1669 y(\(see)29 b(Section)f(6.5)h([Shell)f(Arithmetic],)i(page)e(87\))h
+(is)f(p)s(erformed)e(when)h(the)1110 1778 y(v)-5 b(ariable)31
+b(is)g(assigned)f(a)h(v)-5 b(alue.)630 1924 y Ft(-l)384
+b Fu(When)26 b(the)g(v)-5 b(ariable)27 b(is)f(assigned)g(a)g(v)-5
b(alue,)28 b(all)f(upp)s(er-case)e(c)m(haracters)j(are)1110
-2478 y(con)m(v)m(erted)k(to)f(lo)m(w)m(er-case.)43 b(The)30
-b(upp)s(er-case)g(attribute)h(is)g(disabled.)630 2640
-y Fs(-n)384 b Ft(Giv)m(e)28 b(eac)m(h)g Fq(name)k Ft(the)27
-b Fq(nameref)44 b Ft(attribute,)28 b(making)f(it)h(a)f(name)f
-(reference)1110 2749 y(to)32 b(another)g(v)-5 b(ariable.)46
+2034 y(con)m(v)m(erted)k(to)f(lo)m(w)m(er-case.)43 b(The)30
+b(upp)s(er-case)g(attribute)h(is)g(disabled.)630 2180
+y Ft(-n)384 b Fu(Giv)m(e)28 b(eac)m(h)g Fr(name)k Fu(the)27
+b Fr(nameref)44 b Fu(attribute,)28 b(making)f(it)h(a)f(name)f
+(reference)1110 2290 y(to)32 b(another)g(v)-5 b(ariable.)46
b(That)31 b(other)h(v)-5 b(ariable)33 b(is)f(de\014ned)e(b)m(y)i(the)g
-(v)-5 b(alue)32 b(of)1110 2859 y Fq(name)5 b Ft(.)39
-b(All)25 b(references)f(and)g(assignmen)m(ts)h(to)g Fq(name)5
-b Ft(,)26 b(except)f(for)f(c)m(hanging)1110 2968 y(the)38
-b(`)p Fs(-n)p Ft(')f(attribute)h(itself,)i(are)e(p)s(erformed)e(on)h
-(the)h(v)-5 b(ariable)38 b(referenced)1110 3078 y(b)m(y)j
-Fq(name)5 b Ft('s)41 b(v)-5 b(alue.)74 b(The)41 b(`)p
-Fs(-n)p Ft(')g(attribute)g(cannot)h(b)s(e)f(applied)g(to)g(arra)m(y)
-1110 3188 y(v)-5 b(ariables.)630 3350 y Fs(-r)384 b Ft(Mak)m(e)25
-b Fq(name)5 b Ft(s)23 b(readonly)-8 b(.)39 b(These)24
-b(names)f(cannot)h(then)f(b)s(e)g(assigned)h(v)-5 b(alues)1110
-3459 y(b)m(y)30 b(subsequen)m(t)g(assignmen)m(t)h(statemen)m(ts)h(or)f
-(unset.)630 3622 y Fs(-t)384 b Ft(Giv)m(e)33 b(eac)m(h)h
-Fq(name)j Ft(the)32 b Fs(trace)f Ft(attribute.)46 b(T)-8
-b(raced)32 b(functions)g(inherit)g(the)1110 3731 y Fs(DEBUG)26
-b Ft(and)h Fs(RETURN)f Ft(traps)h(from)g(the)h(calling)h(shell.)40
-b(The)27 b(trace)i(attribute)1110 3841 y(has)h(no)g(sp)s(ecial)h
-(meaning)g(for)f(v)-5 b(ariables.)630 4003 y Fs(-u)384
-b Ft(When)28 b(the)h(v)-5 b(ariable)29 b(is)f(assigned)h(a)f(v)-5
-b(alue,)30 b(all)f(lo)m(w)m(er-case)i(c)m(haracters)f(are)1110
-4113 y(con)m(v)m(erted)i(to)f(upp)s(er-case.)40 b(The)30
-b(lo)m(w)m(er-case)j(attribute)e(is)g(disabled.)630 4275
-y Fs(-x)384 b Ft(Mark)30 b(eac)m(h)h Fq(name)k Ft(for)29
+(v)-5 b(alue)32 b(of)1110 2399 y Fr(name)p Fu(.)39 b(All)26
+b(references)g(and)f(assignmen)m(ts)h(to)g Fr(name)p
+Fu(,)h(except)g(for)e(c)m(hanging)1110 2509 y(the)43
+b Ft(-n)f Fu(attribute)i(itself,)j(are)c(p)s(erformed)f(on)g(the)h(v)-5
+b(ariable)44 b(referenced)1110 2619 y(b)m(y)h Fr(name)5
+b Fu('s)46 b(v)-5 b(alue.)86 b(The)45 b Ft(-n)f Fu(attribute)j(cannot)e
+(b)s(e)g(applied)g(to)h(arra)m(y)1110 2728 y(v)-5 b(ariables.)630
+2874 y Ft(-r)384 b Fu(Mak)m(e)25 b Fr(name)5 b Fu(s)23
+b(readonly)-8 b(.)39 b(These)24 b(names)f(cannot)h(then)f(b)s(e)g
+(assigned)h(v)-5 b(alues)1110 2984 y(b)m(y)30 b(subsequen)m(t)g
+(assignmen)m(t)h(statemen)m(ts)h(or)f(unset.)630 3130
+y Ft(-t)384 b Fu(Giv)m(e)33 b(eac)m(h)h Fr(name)j Fu(the)32
+b Ft(trace)f Fu(attribute.)46 b(T)-8 b(raced)32 b(functions)g(inherit)g
+(the)1110 3240 y Ft(DEBUG)26 b Fu(and)h Ft(RETURN)f Fu(traps)h(from)g
+(the)h(calling)h(shell.)40 b(The)27 b(trace)i(attribute)1110
+3349 y(has)h(no)g(sp)s(ecial)h(meaning)g(for)f(v)-5 b(ariables.)630
+3495 y Ft(-u)384 b Fu(When)28 b(the)h(v)-5 b(ariable)29
+b(is)f(assigned)h(a)f(v)-5 b(alue,)30 b(all)f(lo)m(w)m(er-case)i(c)m
+(haracters)f(are)1110 3605 y(con)m(v)m(erted)i(to)f(upp)s(er-case.)40
+b(The)30 b(lo)m(w)m(er-case)j(attribute)e(is)g(disabled.)630
+3751 y Ft(-x)384 b Fu(Mark)30 b(eac)m(h)h Fr(name)k Fu(for)29
b(exp)s(ort)h(to)g(subsequen)m(t)f(commands)h(via)g(the)g(en)m(vi-)1110
-4384 y(ronmen)m(t.)630 4547 y(Using)e(`)p Fs(+)p Ft(')h(instead)f(of)g
-(`)p Fs(-)p Ft(')g(turns)f(o\013)i(the)f(attribute)h(instead,)g(with)f
-(the)g(exceptions)h(that)630 4656 y(`)p Fs(+a)p Ft(')h(ma)m(y)h(not)f
+3861 y(ronmen)m(t.)630 4007 y(Using)e(`)p Ft(+)p Fu(')h(instead)f(of)g
+(`)p Ft(-)p Fu(')g(turns)f(o\013)i(the)f(attribute)h(instead,)g(with)f
+(the)g(exceptions)h(that)630 4116 y(`)p Ft(+a)p Fu(')h(ma)m(y)h(not)f
(b)s(e)f(used)g(to)i(destro)m(y)g(an)f(arra)m(y)g(v)-5
-b(ariable)31 b(and)f(`)p Fs(+r)p Ft(')g(will)g(not)g(remo)m(v)m(e)i
-(the)630 4766 y(readonly)e(attribute.)41 b(When)30 b(used)f(in)g(a)h
-(function,)g Fs(declare)e Ft(mak)m(es)j(eac)m(h)f Fq(name)35
-b Ft(lo)s(cal,)630 4875 y(as)30 b(with)g(the)h Fs(local)e
-Ft(command,)h(unless)f(the)i(`)p Fs(-g)p Ft(')f(option)g(is)h(used.)40
-b(If)29 b(a)i(v)-5 b(ariable)31 b(name)630 4985 y(is)f(follo)m(w)m(ed)i
-(b)m(y)f(=)p Fq(v)-5 b(alue)5 b Ft(,)31 b(the)f(v)-5
-b(alue)31 b(of)g(the)f(v)-5 b(ariable)31 b(is)g(set)g(to)g
-Fq(v)-5 b(alue)5 b Ft(.)630 5121 y(The)35 b(return)f(status)i(is)g
-(zero)g(unless)f(an)g(in)m(v)-5 b(alid)36 b(option)g(is)g(encoun)m
-(tered,)h(an)f(attempt)630 5230 y(is)c(made)g(to)g(de\014ne)f(a)h
-(function)g(using)f(`)p Fs(-f)f(foo=bar)p Ft(',)h(an)h(attempt)g(is)g
-(made)g(to)h(assign)630 5340 y(a)42 b(v)-5 b(alue)43
-b(to)g(a)f(readonly)g(v)-5 b(ariable,)47 b(an)42 b(attempt)h(is)f(made)
-g(to)h(assign)f(a)h(v)-5 b(alue)42 b(to)h(an)p eop end
-%%Page: 52 58
-TeXDict begin 52 57 bop 150 -116 a Ft(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(52)630 299 y(arra)m(y)30
-b(v)-5 b(ariable)30 b(without)g(using)e(the)i(comp)s(ound)e(assignmen)m
-(t)i(syn)m(tax)g(\(see)h(Section)f(6.7)630 408 y([Arra)m(ys],)47
-b(page)c(89\),)48 b(one)43 b(of)g(the)g Fq(names)k Ft(is)c(not)g(a)g(v)
--5 b(alid)43 b(shell)g(v)-5 b(ariable)44 b(name,)i(an)630
-518 y(attempt)28 b(is)f(made)h(to)f(turn)f(o\013)i(readonly)f(status)g
+b(ariable)31 b(and)f(`)p Ft(+r)p Fu(')g(will)g(not)g(remo)m(v)m(e)i
+(the)630 4226 y(readonly)e(attribute.)41 b(When)30 b(used)f(in)g(a)h
+(function,)g Ft(declare)e Fu(mak)m(es)j(eac)m(h)f Fr(name)35
+b Fu(lo)s(cal,)630 4335 y(as)f(with)f(the)g Ft(local)f
+Fu(command,)i(unless)f(the)g Ft(-g)g Fu(option)h(is)f(used.)49
+b(If)33 b(a)h(v)-5 b(ariable)34 b(name)630 4445 y(is)c(follo)m(w)m(ed)i
+(b)m(y)f(=)p Fr(v)-5 b(alue)p Fu(,)30 b(the)h(v)-5 b(alue)31
+b(of)f(the)h(v)-5 b(ariable)31 b(is)g(set)g(to)g Fr(v)-5
+b(alue)p Fu(.)630 4573 y(The)35 b(return)f(status)i(is)g(zero)g(unless)
+f(an)g(in)m(v)-5 b(alid)36 b(option)g(is)g(encoun)m(tered,)h(an)f
+(attempt)630 4682 y(is)c(made)g(to)g(de\014ne)f(a)h(function)g(using)f
+(`)p Ft(-f)f(foo=bar)p Fu(',)h(an)h(attempt)g(is)g(made)g(to)h(assign)
+630 4792 y(a)42 b(v)-5 b(alue)43 b(to)g(a)f(readonly)g(v)-5
+b(ariable,)47 b(an)42 b(attempt)h(is)f(made)g(to)h(assign)f(a)h(v)-5
+b(alue)42 b(to)h(an)630 4902 y(arra)m(y)30 b(v)-5 b(ariable)30
+b(without)g(using)e(the)i(comp)s(ound)e(assignmen)m(t)i(syn)m(tax)g
+(\(see)h(Section)f(6.7)630 5011 y([Arra)m(ys],)47 b(page)c(89\),)48
+b(one)43 b(of)g(the)g Fr(names)k Fu(is)c(not)g(a)g(v)-5
+b(alid)43 b(shell)g(v)-5 b(ariable)44 b(name,)i(an)630
+5121 y(attempt)28 b(is)f(made)h(to)f(turn)f(o\013)i(readonly)f(status)g
(for)g(a)h(readonly)f(v)-5 b(ariable,)29 b(an)e(attempt)630
-628 y(is)h(made)h(to)g(turn)e(o\013)i(arra)m(y)f(status)h(for)f(an)g
+5230 y(is)h(made)h(to)g(turn)e(o\013)i(arra)m(y)f(status)h(for)f(an)g
(arra)m(y)h(v)-5 b(ariable,)30 b(or)e(an)g(attempt)i(is)e(made)g(to)630
-737 y(displa)m(y)j(a)f(non-existen)m(t)i(function)e(with)g(`)p
-Fs(-f)p Ft('.)150 909 y Fs(echo)870 1050 y(echo)47 b([-neE])f([)p
-Fi(arg)57 b Fs(...)o(])630 1191 y Ft(Output)31 b(the)i
-Fq(arg)8 b Ft(s,)33 b(separated)g(b)m(y)g(spaces,)g(terminated)g(with)f
-(a)h(newline.)47 b(The)32 b(return)630 1301 y(status)27
-b(is)g(0)h(unless)e(a)i(write)f(error)f(o)s(ccurs.)40
-b(If)26 b(`)p Fs(-n)p Ft(')h(is)g(sp)s(eci\014ed,)h(the)f(trailing)h
-(newline)f(is)630 1410 y(suppressed.)37 b(If)24 b(the)g(`)p
-Fs(-e)p Ft(')h(option)g(is)f(giv)m(en,)j(in)m(terpretation)f(of)e(the)h
-(follo)m(wing)h(bac)m(kslash-)630 1520 y(escap)s(ed)38
-b(c)m(haracters)i(is)f(enabled.)65 b(The)38 b(`)p Fs(-E)p
-Ft(')g(option)h(disables)f(the)h(in)m(terpretation)h(of)630
-1630 y(these)27 b(escap)s(e)g(c)m(haracters,)i(ev)m(en)e(on)g(systems)f
+5340 y(displa)m(y)j(a)f(non-existen)m(t)i(function)e(with)g
+Ft(-f)p Fu(.)p eop end
+%%Page: 52 58
+TeXDict begin 52 57 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(52)150 299 y Ft(echo)870
+434 y(echo)47 b([-neE])f([)p Fj(arg)g Ft(...])630 568
+y Fu(Output)31 b(the)i Fr(arg)8 b Fu(s,)33 b(separated)g(b)m(y)g
+(spaces,)g(terminated)g(with)f(a)h(newline.)47 b(The)32
+b(return)630 678 y(status)f(is)f(0)h(unless)f(a)h(write)g(error)f(o)s
+(ccurs.)41 b(If)30 b Ft(-n)g Fu(is)h(sp)s(eci\014ed,)f(the)h(trailing)g
+(newline)g(is)630 787 y(suppressed.)38 b(If)29 b(the)h
+Ft(-e)f Fu(option)h(is)f(giv)m(en,)i(in)m(terpretation)g(of)e(the)h
+(follo)m(wing)h(bac)m(kslash-)630 897 y(escap)s(ed)43
+b(c)m(haracters)h(is)e(enabled.)78 b(The)42 b Ft(-E)g
+Fu(option)h(disables)g(the)g(in)m(terpretation)h(of)630
+1007 y(these)27 b(escap)s(e)g(c)m(haracters,)i(ev)m(en)e(on)g(systems)f
(where)g(they)h(are)g(in)m(terpreted)g(b)m(y)f(default.)630
-1739 y(The)32 b Fs(xpg_echo)f Ft(shell)i(option)g(ma)m(y)h(b)s(e)e
+1116 y(The)32 b Ft(xpg_echo)f Fu(shell)i(option)g(ma)m(y)h(b)s(e)e
(used)g(to)h(dynamically)h(determine)f(whether)f(or)630
-1849 y(not)h Fs(echo)f Ft(expands)g(these)h(escap)s(e)h(c)m(haracters)g
-(b)m(y)f(default.)48 b Fs(echo)32 b Ft(do)s(es)g(not)i(in)m(terpret)630
-1958 y(`)p Fs(--)p Ft(')c(to)h(mean)g(the)f(end)g(of)h(options.)630
-2099 y Fs(echo)e Ft(in)m(terprets)i(the)f(follo)m(wing)i(escap)s(e)f
-(sequences:)630 2271 y Fs(\\a)384 b Ft(alert)31 b(\(b)s(ell\))630
-2444 y Fs(\\b)384 b Ft(bac)m(kspace)630 2616 y Fs(\\c)g
-Ft(suppress)28 b(further)h(output)630 2788 y Fs(\\e)630
-2898 y(\\E)384 b Ft(escap)s(e)630 3070 y Fs(\\f)g Ft(form)30
-b(feed)630 3242 y Fs(\\n)384 b Ft(new)30 b(line)630 3414
-y Fs(\\r)384 b Ft(carriage)32 b(return)630 3587 y Fs(\\t)384
-b Ft(horizon)m(tal)32 b(tab)630 3759 y Fs(\\v)384 b Ft(v)m(ertical)32
-b(tab)630 3931 y Fs(\\\\)384 b Ft(bac)m(kslash)630 4103
-y Fs(\\0)p Fi(nnn)240 b Ft(the)32 b(eigh)m(t-bit)i(c)m(haracter)g
+1226 y(not)h Ft(echo)f Fu(expands)g(these)h(escap)s(e)h(c)m(haracters)g
+(b)m(y)f(default.)48 b Ft(echo)32 b Fu(do)s(es)g(not)i(in)m(terpret)630
+1335 y Ft(--)c Fu(to)h(mean)f(the)h(end)f(of)g(options.)630
+1470 y Ft(echo)f Fu(in)m(terprets)i(the)f(follo)m(wing)i(escap)s(e)f
+(sequences:)630 1630 y Ft(\\a)384 b Fu(alert)31 b(\(b)s(ell\))630
+1789 y Ft(\\b)384 b Fu(bac)m(kspace)630 1949 y Ft(\\c)g
+Fu(suppress)28 b(further)h(output)630 2109 y Ft(\\e)630
+2218 y(\\E)384 b Fu(escap)s(e)630 2378 y Ft(\\f)g Fu(form)30
+b(feed)630 2538 y Ft(\\n)384 b Fu(new)30 b(line)630 2697
+y Ft(\\r)384 b Fu(carriage)32 b(return)630 2857 y Ft(\\t)384
+b Fu(horizon)m(tal)32 b(tab)630 3017 y Ft(\\v)384 b Fu(v)m(ertical)32
+b(tab)630 3176 y Ft(\\\\)384 b Fu(bac)m(kslash)630 3336
+y Ft(\\0)p Fj(nnn)240 b Fu(the)32 b(eigh)m(t-bit)i(c)m(haracter)g
(whose)e(v)-5 b(alue)33 b(is)f(the)g(o)s(ctal)i(v)-5
-b(alue)32 b Fq(nnn)f Ft(\(zero)i(to)1110 4213 y(three)e(o)s(ctal)g
-(digits\))630 4385 y Fs(\\x)p Fi(HH)288 b Ft(the)40 b(eigh)m(t-bit)h(c)
-m(haracter)g(whose)e(v)-5 b(alue)39 b(is)h(the)f(hexadecimal)i(v)-5
-b(alue)40 b Fq(HH)1110 4495 y Ft(\(one)31 b(or)f(t)m(w)m(o)i(hex)e
-(digits\))630 4667 y Fs(\\u)p Fi(HHHH)192 b Ft(the)41
+b(alue)32 b Fr(nnn)f Fu(\(zero)i(to)1110 3446 y(three)e(o)s(ctal)g
+(digits\))630 3605 y Ft(\\x)p Fj(HH)288 b Fu(the)38 b(eigh)m(t-bit)i(c)
+m(haracter)g(whose)e(v)-5 b(alue)39 b(is)f(the)h(hexadecimal)g(v)-5
+b(alue)39 b Fr(HH)1110 3715 y Fu(\(one)31 b(or)f(t)m(w)m(o)i(hex)e
+(digits\))630 3875 y Ft(\\u)p Fj(HHHH)192 b Fu(the)41
b(Unico)s(de)g(\(ISO/IEC)f(10646\))j(c)m(haracter)g(whose)e(v)-5
-b(alue)41 b(is)g(the)g(hex-)1110 4776 y(adecimal)32 b(v)-5
-b(alue)31 b Fq(HHHH)41 b Ft(\(one)31 b(to)g(four)e(hex)h(digits\))630
-4949 y Fs(\\U)p Fi(HHHHHHHH)1110 5058 y Ft(the)41 b(Unico)s(de)g
+b(alue)41 b(is)g(the)g(hex-)1110 3984 y(adecimal)32 b(v)-5
+b(alue)31 b Fr(HHHH)41 b Fu(\(one)31 b(to)g(four)e(hex)h(digits\))630
+4144 y Ft(\\U)p Fj(HHHHHHHH)1110 4253 y Fu(the)41 b(Unico)s(de)g
(\(ISO/IEC)f(10646\))j(c)m(haracter)g(whose)e(v)-5 b(alue)41
-b(is)g(the)g(hex-)1110 5168 y(adecimal)32 b(v)-5 b(alue)31
-b Fq(HHHHHHHH)41 b Ft(\(one)31 b(to)g(eigh)m(t)h(hex)e(digits\))150
-5340 y Fs(enable)p eop end
+b(is)g(the)g(hex-)1110 4363 y(adecimal)32 b(v)-5 b(alue)31
+b Fr(HHHHHHHH)41 b Fu(\(one)31 b(to)g(eigh)m(t)h(hex)e(digits\))150
+4523 y Ft(enable)870 4657 y(enable)46 b([-a])h([-dnps])f([-f)g
+Fj(filename)p Ft(])g([)p Fj(name)g Ft(...)o(])630 4792
+y Fu(Enable)36 b(and)f(disable)h(builtin)g(shell)g(commands.)56
+b(Disabling)37 b(a)g(builtin)e(allo)m(ws)i(a)f(disk)630
+4902 y(command)e(whic)m(h)g(has)g(the)g(same)h(name)f(as)h(a)f(shell)h
+(builtin)e(to)i(b)s(e)f(executed)h(without)630 5011 y(sp)s(ecifying)27
+b(a)g(full)g(pathname,)g(ev)m(en)h(though)f(the)g(shell)g(normally)g
+(searc)m(hes)h(for)f(builtins)630 5121 y(b)s(efore)35
+b(disk)g(commands.)55 b(If)35 b Ft(-n)g Fu(is)g(used,)h(the)g
+Fr(name)5 b Fu(s)35 b(b)s(ecome)h(disabled.)55 b(Otherwise)630
+5230 y Fr(name)5 b Fu(s)44 b(are)h(enabled.)82 b(F)-8
+b(or)45 b(example,)k(to)c(use)f(the)g Ft(test)f Fu(binary)h(found)f
+(via)h Ft($PATH)630 5340 y Fu(instead)31 b(of)f(the)h(shell)f(builtin)g
+(v)m(ersion,)h(t)m(yp)s(e)g(`)p Ft(enable)e(-n)h(test)p
+Fu('.)p eop end
%%Page: 53 59
-TeXDict begin 53 58 bop 150 -116 a Ft(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(53)870 299 y Fs(enable)46
-b([-a])h([-dnps])f([-f)g Fi(filename)11 b Fs(])45 b([)p
-Fi(name)57 b Fs(...)o(])630 434 y Ft(Enable)36 b(and)f(disable)h
-(builtin)g(shell)g(commands.)56 b(Disabling)37 b(a)g(builtin)e(allo)m
-(ws)i(a)f(disk)630 543 y(command)e(whic)m(h)g(has)g(the)g(same)h(name)f
-(as)h(a)f(shell)h(builtin)e(to)i(b)s(e)f(executed)h(without)630
-653 y(sp)s(ecifying)27 b(a)g(full)g(pathname,)g(ev)m(en)h(though)f(the)
-g(shell)g(normally)g(searc)m(hes)h(for)f(builtins)630
-763 y(b)s(efore)32 b(disk)f(commands.)46 b(If)31 b(`)p
-Fs(-n)p Ft(')h(is)g(used,)g(the)g Fq(name)5 b Ft(s)32
-b(b)s(ecome)h(disabled.)45 b(Otherwise)630 872 y Fq(name)5
-b Ft(s)44 b(are)h(enabled.)82 b(F)-8 b(or)45 b(example,)k(to)c(use)f
-(the)g Fs(test)f Ft(binary)h(found)f(via)h Fs($PATH)630
-982 y Ft(instead)31 b(of)f(the)h(shell)f(builtin)g(v)m(ersion,)h(t)m
-(yp)s(e)g(`)p Fs(enable)e(-n)h(test)p Ft('.)630 1117
-y(If)42 b(the)h(`)p Fs(-p)p Ft(')f(option)h(is)f(supplied,)j(or)d(no)h
-Fq(name)k Ft(argumen)m(ts)c(app)s(ear,)i(a)e(list)g(of)g(shell)630
-1226 y(builtins)37 b(is)h(prin)m(ted.)63 b(With)38 b(no)f(other)h
-(argumen)m(ts,)j(the)d(list)g(consists)g(of)g(all)h(enabled)630
-1336 y(shell)33 b(builtins.)46 b(The)32 b(`)p Fs(-a)p
-Ft(')h(option)g(means)f(to)i(list)f(eac)m(h)h(builtin)e(with)g(an)g
-(indication)i(of)630 1445 y(whether)c(or)g(not)h(it)g(is)f(enabled.)630
-1580 y(The)40 b(`)p Fs(-f)p Ft(')g(option)g(means)g(to)h(load)g(the)f
-(new)f(builtin)h(command)g Fq(name)45 b Ft(from)40 b(shared)630
-1690 y(ob)5 b(ject)26 b Fq(\014lename)5 b Ft(,)28 b(on)d(systems)h
-(that)g(supp)s(ort)e(dynamic)h(loading.)40 b(The)25 b(`)p
-Fs(-d)p Ft(')h(option)g(will)630 1799 y(delete)32 b(a)e(builtin)g
-(loaded)h(with)f(`)p Fs(-f)p Ft('.)630 1934 y(If)h(there)g(are)g(no)g
-(options,)h(a)f(list)h(of)f(the)g(shell)g(builtins)g(is)g(displa)m(y)m
-(ed.)43 b(The)31 b(`)p Fs(-s)p Ft(')f(option)630 2044
-y(restricts)f Fs(enable)e Ft(to)i(the)f Fl(posix)g Ft(sp)s(ecial)h
-(builtins.)40 b(If)27 b(`)p Fs(-s)p Ft(')i(is)f(used)g(with)g(`)p
-Fs(-f)p Ft(',)h(the)f(new)630 2153 y(builtin)i(b)s(ecomes)h(a)f(sp)s
-(ecial)h(builtin)f(\(see)i(Section)f(4.4)g([Sp)s(ecial)g(Builtins],)g
-(page)g(68\).)630 2288 y(The)26 b(return)f(status)h(is)g(zero)h(unless)
-e(a)i Fq(name)k Ft(is)26 b(not)g(a)h(shell)f(builtin)g(or)g(there)g(is)
-g(an)g(error)630 2398 y(loading)31 b(a)g(new)f(builtin)g(from)g(a)g
-(shared)g(ob)5 b(ject.)150 2558 y Fs(help)870 2693 y(help)47
-b([-dms])f([)p Fi(pattern)11 b Fs(])630 2828 y Ft(Displa)m(y)40
-b(helpful)e(information)h(ab)s(out)g(builtin)f(commands.)66
-b(If)38 b Fq(pattern)h Ft(is)g(sp)s(eci\014ed,)630 2937
-y Fs(help)28 b Ft(giv)m(es)i(detailed)g(help)e(on)h(all)h(commands)e
-(matc)m(hing)i Fq(pattern)p Ft(,)g(otherwise)f(a)g(list)h(of)630
-3047 y(the)h(builtins)e(is)i(prin)m(ted.)630 3182 y(Options,)f(if)h
-(supplied,)e(ha)m(v)m(e)i(the)g(follo)m(wing)h(meanings:)630
-3342 y Fs(-d)384 b Ft(Displa)m(y)32 b(a)e(short)g(description)h(of)f
-(eac)m(h)i Fq(pattern)630 3502 y Fs(-m)384 b Ft(Displa)m(y)32
-b(the)e(description)g(of)h(eac)m(h)h Fq(pattern)e Ft(in)g(a)h
-(manpage-lik)m(e)h(format)630 3662 y Fs(-s)384 b Ft(Displa)m(y)32
-b(only)e(a)h(short)f(usage)h(synopsis)e(for)i(eac)m(h)g
-Fq(pattern)630 3823 y Ft(The)f(return)f(status)i(is)f(zero)h(unless)f
-(no)g(command)h(matc)m(hes)g Fq(pattern)p Ft(.)150 3983
-y Fs(let)870 4118 y(let)47 b Fi(expression)55 b Fs([)p
-Fi(expression)h Fs(...)o(])630 4253 y Ft(The)41 b Fs(let)g
-Ft(builtin)g(allo)m(ws)i(arithmetic)f(to)h(b)s(e)d(p)s(erformed)g(on)i
-(shell)g(v)-5 b(ariables.)74 b(Eac)m(h)630 4362 y Fq(expression)31
-b Ft(is)g(ev)-5 b(aluated)32 b(according)f(to)h(the)f(rules)g(giv)m(en)
-h(b)s(elo)m(w)f(in)f(Section)i(6.5)g([Shell)630 4472
-y(Arithmetic],)51 b(page)46 b(87.)87 b(If)45 b(the)g(last)h
-Fq(expression)g Ft(ev)-5 b(aluates)47 b(to)f(0,)k Fs(let)44
-b Ft(returns)g(1;)630 4581 y(otherwise)31 b(0)g(is)f(returned.)150
-4741 y Fs(local)870 4876 y(local)46 b([)p Fi(option)11
-b Fs(])45 b Fi(name)11 b Fs([=)p Fi(value)g Fs(])44 b(...)630
-5011 y Ft(F)-8 b(or)26 b(eac)m(h)h(argumen)m(t,)g(a)e(lo)s(cal)i(v)-5
-b(ariable)26 b(named)f Fq(name)31 b Ft(is)25 b(created,)j(and)d
-(assigned)g Fq(v)-5 b(alue)5 b Ft(.)630 5121 y(The)37
-b Fq(option)h Ft(can)f(b)s(e)g(an)m(y)h(of)f(the)h(options)g(accepted)g
-(b)m(y)g Fs(declare)p Ft(.)59 b Fs(local)36 b Ft(can)i(only)630
-5230 y(b)s(e)j(used)h(within)f(a)i(function;)48 b(it)42
-b(mak)m(es)h(the)f(v)-5 b(ariable)43 b Fq(name)48 b Ft(ha)m(v)m(e)43
-b(a)f(visible)h(scop)s(e)630 5340 y(restricted)c(to)g(that)g(function)f
-(and)f(its)i(c)m(hildren.)64 b(The)38 b(return)f(status)h(is)h(zero)g
-(unless)p eop end
+TeXDict begin 53 58 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(53)630 299 y(If)45
+b(the)i Ft(-p)e Fu(option)h(is)g(supplied,)j(or)d(no)g
+Fr(name)51 b Fu(argumen)m(ts)46 b(app)s(ear,)k(a)c(list)h(of)f(shell)
+630 408 y(builtins)37 b(is)h(prin)m(ted.)63 b(With)38
+b(no)f(other)h(argumen)m(ts,)j(the)d(list)g(consists)g(of)g(all)h
+(enabled)630 518 y(shell)d(builtins.)57 b(The)35 b Ft(-a)h
+Fu(option)g(means)g(to)g(list)h(eac)m(h)g(builtin)f(with)f(an)h
+(indication)h(of)630 628 y(whether)30 b(or)g(not)h(it)g(is)f(enabled.)
+630 763 y(The)22 b Ft(-f)f Fu(option)h(means)g(to)h(load)g(the)f(new)g
+(builtin)f(command)h Fr(name)27 b Fu(from)22 b(shared)f(ob)5
+b(ject)630 872 y Fr(\014lename)p Fu(,)33 b(on)e(systems)h(that)h(supp)s
+(ort)d(dynamic)i(loading.)46 b(The)31 b Ft(-d)g Fu(option)h(will)h
+(delete)630 982 y(a)e(builtin)f(loaded)h(with)f Ft(-f)p
+Fu(.)630 1117 y(If)j(there)i(are)f(no)g(options,)h(a)f(list)h(of)f(the)
+g(shell)g(builtins)g(is)g(displa)m(y)m(ed.)52 b(The)33
+b Ft(-s)g Fu(option)630 1227 y(restricts)j Ft(enable)d
+Fu(to)j(the)f Fm(posix)f Fu(sp)s(ecial)i(builtins.)54
+b(If)34 b Ft(-s)h Fu(is)g(used)f(with)g Ft(-f)p Fu(,)i(the)f(new)630
+1336 y(builtin)30 b(b)s(ecomes)h(a)f(sp)s(ecial)h(builtin)f(\(see)i
+(Section)f(4.4)g([Sp)s(ecial)g(Builtins],)g(page)g(68\).)630
+1471 y(The)26 b(return)f(status)h(is)g(zero)h(unless)e(a)i
+Fr(name)k Fu(is)26 b(not)g(a)h(shell)f(builtin)g(or)g(there)g(is)g(an)g
+(error)630 1581 y(loading)31 b(a)g(new)f(builtin)g(from)g(a)g(shared)g
+(ob)5 b(ject.)150 1742 y Ft(help)870 1877 y(help)47 b([-dms])f([)p
+Fj(pattern)p Ft(])630 2012 y Fu(Displa)m(y)40 b(helpful)e(information)h
+(ab)s(out)g(builtin)f(commands.)66 b(If)38 b Fr(pattern)h
+Fu(is)g(sp)s(eci\014ed,)630 2122 y Ft(help)28 b Fu(giv)m(es)i(detailed)
+g(help)e(on)h(all)h(commands)e(matc)m(hing)i Fr(pattern)p
+Fu(,)g(otherwise)f(a)g(list)h(of)630 2231 y(the)h(builtins)e(is)i(prin)
+m(ted.)630 2366 y(Options,)f(if)h(supplied,)e(ha)m(v)m(e)i(the)g(follo)
+m(wing)h(meanings:)630 2527 y Ft(-d)384 b Fu(Displa)m(y)32
+b(a)e(short)g(description)h(of)f(eac)m(h)i Fr(pattern)630
+2688 y Ft(-m)384 b Fu(Displa)m(y)32 b(the)e(description)g(of)h(eac)m(h)
+h Fr(pattern)e Fu(in)g(a)h(manpage-lik)m(e)h(format)630
+2849 y Ft(-s)384 b Fu(Displa)m(y)32 b(only)e(a)h(short)f(usage)h
+(synopsis)e(for)i(eac)m(h)g Fr(pattern)630 3009 y Fu(The)f(return)f
+(status)i(is)f(zero)h(unless)f(no)g(command)h(matc)m(hes)g
+Fr(pattern)p Fu(.)150 3170 y Ft(let)870 3305 y(let)47
+b Fj(expression)e Ft([)p Fj(expression)g Ft(...)o(])630
+3440 y Fu(The)c Ft(let)g Fu(builtin)g(allo)m(ws)i(arithmetic)f(to)h(b)s
+(e)d(p)s(erformed)g(on)i(shell)g(v)-5 b(ariables.)74
+b(Eac)m(h)630 3550 y Fr(expression)31 b Fu(is)g(ev)-5
+b(aluated)32 b(according)f(to)h(the)f(rules)g(giv)m(en)h(b)s(elo)m(w)f
+(in)f(Section)i(6.5)g([Shell)630 3660 y(Arithmetic],)51
+b(page)46 b(87.)87 b(If)45 b(the)g(last)h Fr(expression)g
+Fu(ev)-5 b(aluates)47 b(to)f(0,)k Ft(let)44 b Fu(returns)g(1;)630
+3769 y(otherwise)31 b(0)g(is)f(returned.)150 3930 y Ft(local)870
+4065 y(local)46 b([)p Fj(option)p Ft(])g Fj(name)p Ft([=)p
+Fj(value)p Ft(])e(...)630 4200 y Fu(F)-8 b(or)27 b(eac)m(h)g(argumen)m
+(t,)g(a)f(lo)s(cal)h(v)-5 b(ariable)27 b(named)e Fr(name)31
+b Fu(is)26 b(created,)i(and)d(assigned)h Fr(v)-5 b(alue)p
+Fu(.)630 4310 y(The)37 b Fr(option)h Fu(can)f(b)s(e)g(an)m(y)h(of)f
+(the)h(options)g(accepted)g(b)m(y)g Ft(declare)p Fu(.)59
+b Ft(local)36 b Fu(can)i(only)630 4419 y(b)s(e)j(used)h(within)f(a)i
+(function;)48 b(it)42 b(mak)m(es)h(the)f(v)-5 b(ariable)43
+b Fr(name)48 b Fu(ha)m(v)m(e)43 b(a)f(visible)h(scop)s(e)630
+4529 y(restricted)c(to)g(that)g(function)f(and)f(its)i(c)m(hildren.)64
+b(The)38 b(return)f(status)h(is)h(zero)g(unless)630 4639
+y Ft(local)g Fu(is)h(used)g(outside)g(a)h(function,)h(an)e(in)m(v)-5
+b(alid)41 b Fr(name)46 b Fu(is)40 b(supplied,)i(or)e
+Fr(name)45 b Fu(is)c(a)630 4748 y(readonly)30 b(v)-5
+b(ariable.)150 4909 y Ft(logout)870 5044 y(logout)46
+b([)p Fj(n)p Ft(])630 5179 y Fu(Exit)31 b(a)g(login)g(shell,)g
+(returning)e(a)i(status)g(of)f Fr(n)g Fu(to)h(the)g(shell's)f(paren)m
+(t.)150 5340 y Ft(mapfile)p eop end
%%Page: 54 60
-TeXDict begin 54 59 bop 150 -116 a Ft(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(54)630 299 y Fs(local)39
-b Ft(is)h(used)g(outside)g(a)h(function,)h(an)e(in)m(v)-5
-b(alid)41 b Fq(name)46 b Ft(is)40 b(supplied,)i(or)e
-Fq(name)45 b Ft(is)c(a)630 408 y(readonly)30 b(v)-5 b(ariable.)150
-565 y Fs(logout)870 697 y(logout)46 b([)p Fi(n)11 b Fs(])630
-830 y Ft(Exit)31 b(a)g(login)g(shell,)g(returning)e(a)i(status)g(of)f
-Fq(n)g Ft(to)h(the)g(shell's)f(paren)m(t.)150 986 y Fs(mapfile)870
-1119 y(mapfile)46 b([-n)h Fi(count)11 b Fs(])45 b([-O)i
-Fi(origin)11 b Fs(])46 b([-s)g Fi(count)11 b Fs(])46
-b([-t])h([-u)g Fi(fd)11 b Fs(])1061 1229 y([-C)47 b Fi(callback)11
-b Fs(])45 b([-c)i Fi(quantum)11 b Fs(])45 b([)p Fi(array)11
-b Fs(])630 1362 y Ft(Read)37 b(lines)g(from)f(the)h(standard)f(input)g
-(in)m(to)h(the)g(indexed)f(arra)m(y)i(v)-5 b(ariable)37
-b Fq(arra)m(y)8 b Ft(,)39 b(or)630 1471 y(from)c(\014le)h(descriptor)g
-Fq(fd)j Ft(if)d(the)g(`)p Fs(-u)p Ft(')g(option)g(is)g(supplied.)56
-b(The)35 b(v)-5 b(ariable)37 b Fs(MAPFILE)d Ft(is)630
-1581 y(the)d(default)f Fq(arra)m(y)8 b Ft(.)41 b(Options,)30
-b(if)h(supplied,)e(ha)m(v)m(e)j(the)e(follo)m(wing)i(meanings:)630
-1737 y Fs(-n)384 b Ft(Cop)m(y)30 b(at)h(most)g Fq(coun)m(t)i
-Ft(lines.)41 b(If)30 b Fq(coun)m(t)j Ft(is)d(0,)h(all)h(lines)e(are)h
-(copied.)630 1893 y Fs(-O)384 b Ft(Begin)31 b(assigning)g(to)g
-Fq(arra)m(y)39 b Ft(at)31 b(index)f Fq(origin)p Ft(.)41
-b(The)30 b(default)h(index)f(is)g(0.)630 2049 y Fs(-s)384
-b Ft(Discard)31 b(the)f(\014rst)g Fq(coun)m(t)j Ft(lines)e(read.)630
-2205 y Fs(-t)384 b Ft(Remo)m(v)m(e)32 b(a)f(trailing)g(newline)g(from)f
-(eac)m(h)h(line)g(read.)630 2361 y Fs(-u)384 b Ft(Read)31
-b(lines)f(from)g(\014le)h(descriptor)f Fq(fd)j Ft(instead)e(of)f(the)h
-(standard)e(input.)630 2517 y Fs(-C)384 b Ft(Ev)-5 b(aluate)43
-b Fq(callbac)m(k)49 b Ft(eac)m(h)42 b(time)g Fq(quan)m(tum)p
-Ft(P)f(lines)h(are)f(read.)74 b(The)41 b(`)p Fs(-c)p
-Ft(')1110 2627 y(option)31 b(sp)s(eci\014es)f Fq(quan)m(tum)p
-Ft(.)630 2783 y Fs(-c)384 b Ft(Sp)s(ecify)30 b(the)g(n)m(um)m(b)s(er)f
-(of)i(lines)f(read)h(b)s(et)m(w)m(een)g(eac)m(h)g(call)h(to)f
-Fq(callbac)m(k)6 b Ft(.)630 2939 y(If)36 b(`)p Fs(-C)p
-Ft(')g(is)h(sp)s(eci\014ed)f(without)g(`)p Fs(-c)p Ft(',)i(the)f
-(default)f(quan)m(tum)g(is)h(5000.)61 b(When)36 b Fq(callbac)m(k)630
-3049 y Ft(is)e(ev)-5 b(aluated,)36 b(it)f(is)f(supplied)f(the)h(index)f
-(of)h(the)h(next)f(arra)m(y)g(elemen)m(t)i(to)e(b)s(e)g(assigned)630
-3158 y(and)f(the)g(line)h(to)f(b)s(e)g(assigned)g(to)h(that)g(elemen)m
-(t)h(as)e(additional)h(argumen)m(ts.)50 b Fq(callbac)m(k)630
-3268 y Ft(is)30 b(ev)-5 b(aluated)32 b(after)f(the)f(line)h(is)g(read)f
-(but)g(b)s(efore)f(the)i(arra)m(y)g(elemen)m(t)h(is)e(assigned.)630
-3401 y(If)25 b(not)g(supplied)f(with)h(an)g(explicit)i(origin,)g
-Fs(mapfile)c Ft(will)j(clear)g Fq(arra)m(y)34 b Ft(b)s(efore)24
-b(assigning)630 3510 y(to)31 b(it.)630 3643 y Fs(mapfile)41
-b Ft(returns)g(successfully)i(unless)e(an)i(in)m(v)-5
+TeXDict begin 54 59 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(54)870 299 y Ft(mapfile)46
+b([-n)h Fj(count)p Ft(])f([-O)h Fj(origin)p Ft(])f([-s)g
+Fj(count)p Ft(])h([-t])f([-u)h Fj(fd)p Ft(])1061 408
+y([-C)g Fj(callback)p Ft(])e([-c)i Fj(quantum)p Ft(])f([)p
+Fj(array)p Ft(])630 540 y Fu(Read)38 b(lines)f(from)g(the)h(standard)e
+(input)g(in)m(to)j(the)e(indexed)g(arra)m(y)h(v)-5 b(ariable)38
+b Fr(arra)m(y)p Fu(,)i(or)630 650 y(from)28 b(\014le)h(descriptor)f
+Fr(fd)k Fu(if)c(the)h Ft(-u)f Fu(option)h(is)g(supplied.)39
+b(The)28 b(v)-5 b(ariable)29 b Ft(MAPFILE)e Fu(is)i(the)630
+759 y(default)i Fr(arra)m(y)p Fu(.)41 b(Options,)30 b(if)g(supplied,)g
+(ha)m(v)m(e)h(the)g(follo)m(wing)h(meanings:)630 913
+y Ft(-n)384 b Fu(Cop)m(y)30 b(at)h(most)g Fr(coun)m(t)i
+Fu(lines.)41 b(If)30 b Fr(coun)m(t)j Fu(is)d(0,)h(all)h(lines)e(are)h
+(copied.)630 1066 y Ft(-O)384 b Fu(Begin)31 b(assigning)g(to)g
+Fr(arra)m(y)39 b Fu(at)31 b(index)f Fr(origin)p Fu(.)41
+b(The)30 b(default)h(index)f(is)g(0.)630 1219 y Ft(-s)384
+b Fu(Discard)31 b(the)f(\014rst)g Fr(coun)m(t)j Fu(lines)e(read.)630
+1373 y Ft(-t)384 b Fu(Remo)m(v)m(e)32 b(a)f(trailing)g(newline)g(from)f
+(eac)m(h)h(line)g(read.)630 1526 y Ft(-u)384 b Fu(Read)31
+b(lines)f(from)g(\014le)h(descriptor)f Fr(fd)j Fu(instead)e(of)f(the)h
+(standard)e(input.)630 1680 y Ft(-C)384 b Fu(Ev)-5 b(aluate)33
+b Fr(callbac)m(k)39 b Fu(eac)m(h)33 b(time)f Fr(quan)m(tum)p
+Fu(P)f(lines)h(are)g(read.)45 b(The)31 b Ft(-c)g Fu(op-)1110
+1789 y(tion)g(sp)s(eci\014es)f Fr(quan)m(tum)p Fu(.)630
+1943 y Ft(-c)384 b Fu(Sp)s(ecify)30 b(the)g(n)m(um)m(b)s(er)f(of)i
+(lines)f(read)h(b)s(et)m(w)m(een)g(eac)m(h)g(call)h(to)f
+Fr(callbac)m(k)p Fu(.)630 2096 y(If)36 b Ft(-C)g Fu(is)g(sp)s
+(eci\014ed)g(without)g Ft(-c)p Fu(,)h(the)g(default)f(quan)m(tum)g(is)h
+(5000.)60 b(When)36 b Fr(callbac)m(k)44 b Fu(is)630 2206
+y(ev)-5 b(aluated,)30 b(it)e(is)g(supplied)f(the)h(index)f(of)i(the)f
+(next)g(arra)m(y)g(elemen)m(t)h(to)g(b)s(e)e(assigned)i(and)630
+2315 y(the)39 b(line)g(to)h(b)s(e)e(assigned)h(to)h(that)f(elemen)m(t)i
+(as)e(additional)h(argumen)m(ts.)66 b Fr(callbac)m(k)47
+b Fu(is)630 2425 y(ev)-5 b(aluated)32 b(after)e(the)h(line)g(is)f(read)
+g(but)g(b)s(efore)g(the)h(arra)m(y)g(elemen)m(t)g(is)g(assigned.)630
+2556 y(If)25 b(not)g(supplied)f(with)h(an)g(explicit)i(origin,)g
+Ft(mapfile)c Fu(will)j(clear)g Fr(arra)m(y)34 b Fu(b)s(efore)24
+b(assigning)630 2666 y(to)31 b(it.)630 2798 y Ft(mapfile)41
+b Fu(returns)g(successfully)i(unless)e(an)i(in)m(v)-5
b(alid)43 b(option)g(or)g(option)g(argumen)m(t)g(is)630
-3753 y(supplied,)29 b Fq(arra)m(y)39 b Ft(is)30 b(in)m(v)-5
-b(alid)31 b(or)g(unassignable,)f(or)h Fq(arra)m(y)38
-b Ft(is)31 b(not)f(an)h(indexed)e(arra)m(y)-8 b(.)150
-3909 y Fs(printf)870 4042 y(printf)46 b([-v)h Fi(var)11
-b Fs(])46 b Fi(format)57 b Fs([)p Fi(arguments)11 b Fs(])630
-4174 y Ft(W)-8 b(rite)27 b(the)g(formatted)f Fq(argumen)m(ts)k
-Ft(to)d(the)f(standard)f(output)h(under)e(the)i(con)m(trol)i(of)e(the)
-630 4284 y Fq(format)r Ft(.)57 b(The)35 b(`)p Fs(-v)p
-Ft(')h(option)g(causes)g(the)g(output)g(to)g(b)s(e)f(assigned)h(to)h
-(the)e(v)-5 b(ariable)37 b Fq(v)-5 b(ar)630 4394 y Ft(rather)30
-b(than)g(b)s(eing)g(prin)m(ted)g(to)h(the)g(standard)e(output.)630
-4526 y(The)36 b Fq(format)i Ft(is)f(a)f(c)m(haracter)i(string)e(whic)m
-(h)g(con)m(tains)i(three)e(t)m(yp)s(es)g(of)h(ob)5 b(jects:)53
-b(plain)630 4636 y(c)m(haracters,)41 b(whic)m(h)c(are)h(simply)e
+2907 y(supplied,)29 b Fr(arra)m(y)39 b Fu(is)30 b(in)m(v)-5
+b(alid)31 b(or)g(unassignable,)f(or)h Fr(arra)m(y)38
+b Fu(is)31 b(not)f(an)h(indexed)e(arra)m(y)-8 b(.)150
+3061 y Ft(printf)870 3192 y(printf)46 b([-v)h Fj(var)p
+Ft(])g Fj(format)f Ft([)p Fj(arguments)p Ft(])630 3324
+y Fu(W)-8 b(rite)27 b(the)g(formatted)f Fr(argumen)m(ts)k
+Fu(to)d(the)f(standard)f(output)h(under)e(the)i(con)m(trol)i(of)e(the)
+630 3433 y Fr(format)p Fu(.)66 b(The)39 b Ft(-v)f Fu(option)h(causes)g
+(the)g(output)g(to)g(b)s(e)f(assigned)h(to)h(the)f(v)-5
+b(ariable)39 b Fr(v)-5 b(ar)630 3543 y Fu(rather)30 b(than)g(b)s(eing)g
+(prin)m(ted)g(to)h(the)g(standard)e(output.)630 3674
+y(The)36 b Fr(format)i Fu(is)f(a)f(c)m(haracter)i(string)e(whic)m(h)g
+(con)m(tains)i(three)e(t)m(yp)s(es)g(of)h(ob)5 b(jects:)53
+b(plain)630 3784 y(c)m(haracters,)41 b(whic)m(h)c(are)h(simply)e
(copied)i(to)g(standard)f(output,)i(c)m(haracter)g(escap)s(e)e(se-)630
-4746 y(quences,)g(whic)m(h)f(are)g(con)m(v)m(erted)h(and)f(copied)g(to)
-g(the)g(standard)f(output,)i(and)f(format)630 4855 y(sp)s
-(eci\014cations,)i(eac)m(h)g(of)e(whic)m(h)g(causes)g(prin)m(ting)g(of)
-g(the)h(next)f(successiv)m(e)h Fq(argumen)m(t)r Ft(.)630
-4965 y(In)24 b(addition)h(to)g(the)g(standard)f Fs(printf\(1\))e
-Ft(formats,)27 b Fs(printf)c Ft(in)m(terprets)i(the)f(follo)m(wing)630
-5074 y(extensions:)630 5230 y Fs(\045b)384 b Ft(Causes)30
-b Fs(printf)e Ft(to)j(expand)f(bac)m(kslash)h(escap)s(e)f(sequences)h
-(in)f(the)g(corre-)1110 5340 y(sp)s(onding)19 b Fq(argumen)m(t)r
-Ft(,)k(except)f(that)f(`)p Fs(\\c)p Ft(')g(terminates)h(output,)g(bac)m
-(kslashes)p eop end
+3893 y(quences,)g(whic)m(h)f(are)g(con)m(v)m(erted)h(and)f(copied)g(to)
+g(the)g(standard)f(output,)i(and)f(format)630 4003 y(sp)s
+(eci\014cations,)j(eac)m(h)e(of)g(whic)m(h)f(causes)g(prin)m(ting)g(of)
+h(the)f(next)h(successiv)m(e)g Fr(argumen)m(t)p Fu(.)630
+4113 y(In)24 b(addition)h(to)g(the)g(standard)f Ft(printf\(1\))e
+Fu(formats,)27 b Ft(printf)c Fu(in)m(terprets)i(the)f(follo)m(wing)630
+4222 y(extensions:)630 4376 y Ft(\045b)384 b Fu(Causes)30
+b Ft(printf)e Fu(to)j(expand)f(bac)m(kslash)h(escap)s(e)f(sequences)h
+(in)f(the)g(corre-)1110 4485 y(sp)s(onding)19 b Fr(argumen)m(t)p
+Fu(,)24 b(except)e(that)g(`)p Ft(\\c)p Fu(')e(terminates)i(output,)h
+(bac)m(kslashes)1110 4595 y(in)k(`)p Ft(\\')p Fu(',)h(`)p
+Ft(\\")p Fu(',)g(and)f(`)p Ft(\\?)p Fu(')g(are)h(not)f(remo)m(v)m(ed,)j
+(and)c(o)s(ctal)j(escap)s(es)f(b)s(eginning)1110 4704
+y(with)i(`)p Ft(\\0)p Fu(')g(ma)m(y)h(con)m(tain)h(up)d(to)i(four)f
+(digits.)630 4858 y Ft(\045q)384 b Fu(Causes)32 b Ft(printf)e
+Fu(to)i(output)g(the)g(corresp)s(onding)f Fr(argumen)m(t)j
+Fu(in)d(a)i(format)1110 4967 y(that)e(can)g(b)s(e)e(reused)h(as)h
+(shell)f(input.)630 5121 y Ft(\045\()p Fj(datefmt)p Ft(\)T)1110
+5230 y Fu(Causes)f Ft(printf)e Fu(to)j(output)f(the)g(date-time)i
+(string)e(resulting)h(from)e(using)1110 5340 y Fr(datefm)m(t)45
+b Fu(as)d(a)g(format)g(string)g(for)g Ft(strftime)p Fu(\(3\).)74
+b(The)41 b(corresp)s(onding)p eop end
%%Page: 55 61
-TeXDict begin 55 60 bop 150 -116 a Ft(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(55)1110 299 y(in)27
-b(`)p Fs(\\')p Ft(',)h(`)p Fs(\\")p Ft(',)g(and)f(`)p
-Fs(\\?)p Ft(')g(are)h(not)f(remo)m(v)m(ed,)j(and)c(o)s(ctal)j(escap)s
-(es)f(b)s(eginning)1110 408 y(with)i(`)p Fs(\\0)p Ft(')g(ma)m(y)h(con)m
-(tain)h(up)d(to)i(four)f(digits.)630 587 y Fs(\045q)384
-b Ft(Causes)32 b Fs(printf)e Ft(to)i(output)g(the)g(corresp)s(onding)f
-Fq(argumen)m(t)j Ft(in)d(a)i(format)1110 696 y(that)e(can)g(b)s(e)e
-(reused)h(as)h(shell)f(input.)630 874 y Fs(\045\()p Fi(datefmt)11
-b Fs(\)T)1110 984 y Ft(Causes)29 b Fs(printf)e Ft(to)j(output)f(the)g
-(date-time)i(string)e(resulting)h(from)e(using)1110 1093
-y Fq(datefm)m(t)45 b Ft(as)d(a)g(format)g(string)g(for)g
-Fs(strftime)p Ft(\(3\).)74 b(The)41 b(corresp)s(onding)1110
-1203 y Fq(argumen)m(t)h Ft(is)e(an)g(in)m(teger)i(represen)m(ting)e
-(the)g(n)m(um)m(b)s(er)f(of)h(seconds)g(since)1110 1313
-y(the)24 b(ep)s(o)s(c)m(h.)38 b(Tw)m(o)24 b(sp)s(ecial)h(argumen)m(t)f
-(v)-5 b(alues)24 b(ma)m(y)h(b)s(e)e(used:)36 b(-1)25
-b(represen)m(ts)1110 1422 y(the)30 b(curren)m(t)g(time,)h(and)e(-2)i
-(represen)m(ts)f(the)g(time)h(the)f(shell)g(w)m(as)g(in)m(v)m(ok)m(ed.)
-1110 1532 y(If)38 b(no)g(argumen)m(t)h(is)f(sp)s(eci\014ed,)i(con)m(v)m
+TeXDict begin 55 60 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(55)1110 299 y
+Fr(argumen)m(t)42 b Fu(is)e(an)g(in)m(teger)i(represen)m(ting)e(the)g
+(n)m(um)m(b)s(er)f(of)h(seconds)g(since)1110 408 y(the)24
+b(ep)s(o)s(c)m(h.)38 b(Tw)m(o)24 b(sp)s(ecial)h(argumen)m(t)f(v)-5
+b(alues)24 b(ma)m(y)h(b)s(e)e(used:)36 b(-1)25 b(represen)m(ts)1110
+518 y(the)30 b(curren)m(t)g(time,)h(and)e(-2)i(represen)m(ts)f(the)g
+(time)h(the)f(shell)g(w)m(as)g(in)m(v)m(ok)m(ed.)1110
+628 y(If)38 b(no)g(argumen)m(t)h(is)f(sp)s(eci\014ed,)i(con)m(v)m
(ersion)f(b)s(eha)m(v)m(es)g(as)g(if)f(-1)h(had)f(b)s(een)1110
-1641 y(giv)m(en.)k(This)29 b(is)i(an)f(exception)i(to)f(the)f(usual)g
-Fs(printf)f Ft(b)s(eha)m(vior.)630 1819 y(Argumen)m(ts)f(to)h
+737 y(giv)m(en.)k(This)29 b(is)i(an)f(exception)i(to)f(the)f(usual)g
+Ft(printf)f Fu(b)s(eha)m(vior.)630 896 y(Argumen)m(ts)f(to)h
(non-string)e(format)i(sp)s(eci\014ers)e(are)h(treated)h(as)g(C)e
-(language)j(constan)m(ts,)630 1929 y(except)22 b(that)g(a)g(leading)g
+(language)j(constan)m(ts,)630 1005 y(except)22 b(that)g(a)g(leading)g
(plus)e(or)h(min)m(us)f(sign)i(is)f(allo)m(w)m(ed,)k(and)c(if)g(the)g
-(leading)h(c)m(haracter)h(is)630 2039 y(a)i(single)g(or)f(double)h
+(leading)h(c)m(haracter)h(is)630 1115 y(a)i(single)g(or)f(double)h
(quote,)h(the)f(v)-5 b(alue)25 b(is)f(the)h(ASCI)s(I)e(v)-5
b(alue)25 b(of)f(the)h(follo)m(wing)h(c)m(haracter.)630
-2182 y(The)31 b Fq(format)i Ft(is)e(reused)f(as)i(necessary)f(to)h
-(consume)f(all)h(of)f(the)g Fq(argumen)m(ts)t Ft(.)43
-b(If)31 b(the)g Fq(for-)630 2292 y(mat)d Ft(requires)e(more)g
-Fq(argumen)m(ts)k Ft(than)25 b(are)i(supplied,)e(the)h(extra)h(format)f
-(sp)s(eci\014cations)630 2402 y(b)s(eha)m(v)m(e)j(as)g(if)f(a)h(zero)g
+1249 y(The)31 b Fr(format)i Fu(is)f(reused)e(as)i(necessary)f(to)i
+(consume)e(all)h(of)f(the)h Fr(argumen)m(ts)p Fu(.)44
+b(If)30 b(the)i Fr(for-)630 1358 y(mat)c Fu(requires)e(more)g
+Fr(argumen)m(ts)k Fu(than)25 b(are)i(supplied,)e(the)h(extra)h(format)f
+(sp)s(eci\014cations)630 1468 y(b)s(eha)m(v)m(e)j(as)g(if)f(a)h(zero)g
(v)-5 b(alue)29 b(or)g(n)m(ull)f(string,)h(as)g(appropriate,)g(had)f(b)
-s(een)g(supplied.)38 b(The)630 2511 y(return)29 b(v)-5
+s(een)g(supplied.)38 b(The)630 1577 y(return)29 b(v)-5
b(alue)31 b(is)g(zero)g(on)f(success,)h(non-zero)g(on)f(failure.)150
-2689 y Fs(read)870 2833 y(read)47 b([-ers])f([-a)h Fi(aname)11
-b Fs(])45 b([-d)i Fi(delim)11 b Fs(])46 b([-i)h Fi(text)11
-b Fs(])46 b([-n)g Fi(nchars)11 b Fs(])1061 2943 y([-N)47
-b Fi(nchars)11 b Fs(])45 b([-p)i Fi(prompt)11 b Fs(])45
-b([-t)i Fi(timeout)11 b Fs(])45 b([-u)i Fi(fd)11 b Fs(])47
-b([)p Fi(name)57 b Fs(...)o(])630 3087 y Ft(One)26 b(line)h(is)g(read)f
-(from)h(the)f(standard)g(input,)h(or)g(from)f(the)h(\014le)f
-(descriptor)h Fq(fd)i Ft(supplied)630 3196 y(as)37 b(an)g(argumen)m(t)h
-(to)f(the)h(`)p Fs(-u)p Ft(')e(option,)k(and)c(the)i(\014rst)e(w)m(ord)
-g(is)h(assigned)h(to)f(the)h(\014rst)630 3306 y Fq(name)5
-b Ft(,)28 b(the)g(second)g(w)m(ord)f(to)h(the)f(second)h
-Fq(name)5 b Ft(,)28 b(and)f(so)h(on,)g(with)f(lefto)m(v)m(er)j(w)m
-(ords)d(and)630 3415 y(their)h(in)m(terv)m(ening)g(separators)g
-(assigned)g(to)h(the)e(last)i Fq(name)5 b Ft(.)40 b(If)27
-b(there)h(are)g(few)m(er)f(w)m(ords)630 3525 y(read)44
-b(from)f(the)g(input)g(stream)h(than)g(names,)j(the)c(remaining)h
-(names)g(are)g(assigned)630 3634 y(empt)m(y)31 b(v)-5
-b(alues.)41 b(The)30 b(c)m(haracters)i(in)e(the)h(v)-5
-b(alue)31 b(of)g(the)f Fs(IFS)g Ft(v)-5 b(ariable)31
-b(are)g(used)f(to)h(split)630 3744 y(the)e(line)g(in)m(to)h(w)m(ords)f
-(using)f(the)h(same)g(rules)g(the)g(shell)g(uses)f(for)h(expansion)g
-(\(describ)s(ed)630 3854 y(ab)s(o)m(v)m(e)34 b(in)f(Section)g(3.5.7)i
-([W)-8 b(ord)33 b(Splitting],)i(page)e(29\).)49 b(The)33
-b(bac)m(kslash)g(c)m(haracter)i(`)p Fs(\\)p Ft(')630
-3963 y(ma)m(y)j(b)s(e)f(used)g(to)h(remo)m(v)m(e)h(an)m(y)f(sp)s(ecial)
-g(meaning)f(for)h(the)f(next)h(c)m(haracter)h(read)f(and)630
-4073 y(for)i(line)h(con)m(tin)m(uation.)73 b(If)40 b(no)h(names)f(are)h
-(supplied,)h(the)f(line)f(read)h(is)f(assigned)h(to)630
-4182 y(the)34 b(v)-5 b(ariable)35 b Fs(REPLY)p Ft(.)51
-b(The)33 b(return)g(co)s(de)i(is)f(zero,)i(unless)e(end-of-\014le)g(is)
-g(encoun)m(tered,)630 4292 y Fs(read)d Ft(times)i(out)g(\(in)g(whic)m
-(h)f(case)h(the)g(return)e(co)s(de)i(is)g(greater)g(than)f(128\),)j(a)e
-(v)-5 b(ariable)630 4402 y(assignmen)m(t)27 b(error)e(\(suc)m(h)h(as)g
-(assigning)g(to)g(a)h(readonly)e(v)-5 b(ariable\))27
-b(o)s(ccurs,)g(or)f(an)f(in)m(v)-5 b(alid)630 4511 y(\014le)30
-b(descriptor)h(is)f(supplied)f(as)i(the)f(argumen)m(t)h(to)g(`)p
-Fs(-u)p Ft('.)630 4655 y(Options,)f(if)h(supplied,)e(ha)m(v)m(e)i(the)g
-(follo)m(wing)h(meanings:)630 4833 y Fs(-a)e Fi(aname)114
-b Ft(The)34 b(w)m(ords)f(are)i(assigned)f(to)h(sequen)m(tial)h(indices)
-e(of)g(the)g(arra)m(y)h(v)-5 b(ariable)1110 4943 y Fq(aname)5
-b Ft(,)29 b(starting)g(at)f(0.)40 b(All)29 b(elemen)m(ts)g(are)f(remo)m
-(v)m(ed)h(from)e Fq(aname)33 b Ft(b)s(efore)1110 5052
-y(the)e(assignmen)m(t.)41 b(Other)30 b Fq(name)36 b Ft(argumen)m(ts)30
-b(are)h(ignored.)630 5230 y Fs(-d)f Fi(delim)114 b Ft(The)41
-b(\014rst)h(c)m(haracter)h(of)f Fq(delim)g Ft(is)g(used)g(to)g
-(terminate)h(the)f(input)f(line,)1110 5340 y(rather)30
-b(than)g(newline.)p eop end
-%%Page: 56 62
-TeXDict begin 56 61 bop 150 -116 a Ft(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(56)630 299 y Fs(-e)384
-b Ft(Readline)46 b(\(see)g(Chapter)e(8)h([Command)f(Line)h(Editing],)50
-b(page)45 b(102\))i(is)1110 408 y(used)37 b(to)i(obtain)g(the)f(line.)
+1736 y Ft(read)870 1870 y(read)47 b([-ers])f([-a)h Fj(aname)p
+Ft(])f([-d)h Fj(delim)p Ft(])f([-i)h Fj(text)p Ft(])f([-n)h
+Fj(nchars)p Ft(])1061 1979 y([-N)g Fj(nchars)p Ft(])f([-p)h
+Fj(prompt)p Ft(])e([-t)i Fj(timeout)p Ft(])f([-u)h Fj(fd)p
+Ft(])g([)p Fj(name)f Ft(...)o(])630 2113 y Fu(One)26
+b(line)h(is)g(read)f(from)h(the)f(standard)g(input,)h(or)g(from)f(the)h
+(\014le)f(descriptor)h Fr(fd)i Fu(supplied)630 2223 y(as)23
+b(an)g(argumen)m(t)h(to)f(the)h Ft(-u)e Fu(option,)j(and)e(the)g
+(\014rst)f(w)m(ord)h(is)g(assigned)g(to)h(the)f(\014rst)g
+Fr(name)p Fu(,)630 2332 y(the)32 b(second)g(w)m(ord)f(to)i(the)f
+(second)g Fr(name)p Fu(,)g(and)g(so)g(on,)g(with)f(lefto)m(v)m(er)j(w)m
+(ords)e(and)f(their)630 2442 y(in)m(terv)m(ening)f(separators)g
+(assigned)g(to)g(the)g(last)g Fr(name)p Fu(.)40 b(If)29
+b(there)h(are)g(few)m(er)f(w)m(ords)g(read)630 2552 y(from)36
+b(the)i(input)d(stream)j(than)e(names,)j(the)e(remaining)g(names)g(are)
+g(assigned)h(empt)m(y)630 2661 y(v)-5 b(alues.)40 b(The)26
+b(c)m(haracters)j(in)d(the)i(v)-5 b(alue)27 b(of)g(the)g
+Ft(IFS)f Fu(v)-5 b(ariable)28 b(are)f(used)g(to)g(split)g(the)h(line)
+630 2771 y(in)m(to)36 b(w)m(ords)e(using)g(the)h(same)g(rules)f(the)h
+(shell)g(uses)f(for)g(expansion)h(\(describ)s(ed)f(ab)s(o)m(v)m(e)630
+2880 y(in)j(Section)h(3.5.7)i([W)-8 b(ord)38 b(Splitting],)i(page)e
+(29\).)63 b(The)37 b(bac)m(kslash)h(c)m(haracter)h(`)p
+Ft(\\)p Fu(')e(ma)m(y)630 2990 y(b)s(e)28 b(used)g(to)i(remo)m(v)m(e)g
+(an)m(y)f(sp)s(ecial)h(meaning)f(for)g(the)g(next)g(c)m(haracter)h
+(read)f(and)f(for)h(line)630 3099 y(con)m(tin)m(uation.)42
+b(If)27 b(no)h(names)f(are)h(supplied,)g(the)f(line)h(read)g(is)g
+(assigned)g(to)g(the)g(v)-5 b(ariable)630 3209 y Ft(REPLY)p
+Fu(.)37 b(The)23 b(return)f(co)s(de)h(is)g(zero,)j(unless)d
+(end-of-\014le)g(is)h(encoun)m(tered,)h Ft(read)d Fu(times)i(out)630
+3319 y(\(in)k(whic)m(h)f(case)i(the)e(return)g(co)s(de)h(is)f(greater)i
+(than)f(128\),)i(a)e(v)-5 b(ariable)28 b(assignmen)m(t)g(error)630
+3428 y(\(suc)m(h)g(as)h(assigning)g(to)g(a)f(readonly)h(v)-5
+b(ariable\))29 b(o)s(ccurs,)g(or)f(an)g(in)m(v)-5 b(alid)29
+b(\014le)g(descriptor)f(is)630 3538 y(supplied)h(as)i(the)f(argumen)m
+(t)h(to)g Ft(-u)p Fu(.)630 3672 y(Options,)f(if)h(supplied,)e(ha)m(v)m
+(e)i(the)g(follo)m(wing)h(meanings:)630 3830 y Ft(-a)e
+Fj(aname)114 b Fu(The)34 b(w)m(ords)f(are)i(assigned)f(to)h(sequen)m
+(tial)h(indices)e(of)g(the)g(arra)m(y)h(v)-5 b(ariable)1110
+3940 y Fr(aname)p Fu(,)29 b(starting)h(at)f(0.)40 b(All)29
+b(elemen)m(ts)h(are)e(remo)m(v)m(ed)i(from)d Fr(aname)34
+b Fu(b)s(efore)1110 4049 y(the)d(assignmen)m(t.)41 b(Other)30
+b Fr(name)36 b Fu(argumen)m(ts)30 b(are)h(ignored.)630
+4208 y Ft(-d)f Fj(delim)114 b Fu(The)41 b(\014rst)h(c)m(haracter)h(of)f
+Fr(delim)g Fu(is)g(used)g(to)g(terminate)h(the)f(input)f(line,)1110
+4317 y(rather)30 b(than)g(newline.)630 4475 y Ft(-e)384
+b Fu(Readline)46 b(\(see)g(Chapter)e(8)h([Command)f(Line)h(Editing],)50
+b(page)45 b(101\))i(is)1110 4585 y(used)37 b(to)i(obtain)g(the)f(line.)
65 b(Readline)39 b(uses)e(the)i(curren)m(t)f(\(or)g(default,)j(if)1110
-518 y(line)31 b(editing)g(w)m(as)f(not)h(previously)f(activ)m(e\))j
-(editing)e(settings.)630 671 y Fs(-i)f Fi(text)162 b
-Ft(If)36 b(Readline)i(is)f(b)s(eing)g(used)f(to)h(read)g(the)g(line,)j
-Fq(text)f Ft(is)e(placed)h(in)m(to)g(the)1110 781 y(editing)31
-b(bu\013er)e(b)s(efore)h(editing)h(b)s(egins.)630 934
-y Fs(-n)f Fi(nchars)1110 1044 y Fs(read)38 b Ft(returns)f(after)j
-(reading)f Fq(nc)m(hars)j Ft(c)m(haracters)e(rather)f(than)g(w)m
-(aiting)1110 1154 y(for)g(a)h(complete)h(line)f(of)f(input,)i(but)e
-(honor)g(a)h(delimiter)g(if)f(few)m(er)h(than)1110 1263
-y Fq(nc)m(hars)34 b Ft(c)m(haracters)e(are)e(read)h(b)s(efore)f(the)g
-(delimiter.)630 1417 y Fs(-N)g Fi(nchars)1110 1526 y
-Fs(read)39 b Ft(returns)f(after)j(reading)e(exactly)j
-Fq(nc)m(hars)h Ft(c)m(haracters)f(rather)d(than)1110
-1636 y(w)m(aiting)32 b(for)f(a)g(complete)i(line)e(of)g(input,)g
-(unless)f(EOF)h(is)g(encoun)m(tered)g(or)1110 1745 y
-Fs(read)f Ft(times)i(out.)43 b(Delimiter)33 b(c)m(haracters)f(encoun)m
-(tered)g(in)f(the)g(input)g(are)1110 1855 y(not)g(treated)h(sp)s
-(ecially)g(and)f(do)f(not)i(cause)f Fs(read)f Ft(to)i(return)e(un)m
-(til)h Fq(nc)m(hars)1110 1965 y Ft(c)m(haracters)h(are)f(read.)630
-2118 y Fs(-p)f Fi(prompt)1110 2228 y Ft(Displa)m(y)38
-b Fq(prompt)r Ft(,)f(without)g(a)f(trailing)i(newline,)g(b)s(efore)e
-(attempting)i(to)1110 2337 y(read)f(an)m(y)h(input.)60
-b(The)37 b(prompt)g(is)g(displa)m(y)m(ed)h(only)f(if)g(input)g(is)g
-(coming)1110 2447 y(from)30 b(a)h(terminal.)630 2600
-y Fs(-r)384 b Ft(If)21 b(this)h(option)g(is)f(giv)m(en,)k(bac)m(kslash)
-d(do)s(es)f(not)h(act)h(as)f(an)f(escap)s(e)h(c)m(haracter.)1110
-2710 y(The)30 b(bac)m(kslash)i(is)f(considered)g(to)h(b)s(e)e(part)h
-(of)g(the)g(line.)43 b(In)30 b(particular,)i(a)1110 2819
-y(bac)m(kslash-newline)f(pair)f(ma)m(y)h(not)g(b)s(e)f(used)f(as)i(a)g
-(line)f(con)m(tin)m(uation.)630 2973 y Fs(-s)384 b Ft(Silen)m(t)28
-b(mo)s(de.)40 b(If)27 b(input)f(is)i(coming)g(from)f(a)h(terminal,)h(c)
-m(haracters)g(are)f(not)1110 3082 y(ec)m(ho)s(ed.)630
-3236 y Fs(-t)i Fi(timeout)1110 3345 y Ft(Cause)42 b Fs(read)g
-Ft(to)h(time)h(out)f(and)f(return)f(failure)i(if)g(a)g(complete)h(line)
-f(of)1110 3455 y(input)26 b(\(or)h(a)g(sp)s(eci\014ed)f(n)m(um)m(b)s
-(er)g(of)h(c)m(haracters\))h(is)f(not)g(read)g(within)f
-Fq(time-)1110 3565 y(out)37 b Ft(seconds.)53 b Fq(timeout)38
-b Ft(ma)m(y)d(b)s(e)f(a)h(decimal)h(n)m(um)m(b)s(er)d(with)h(a)h
-(fractional)1110 3674 y(p)s(ortion)29 b(follo)m(wing)h(the)f(decimal)h
-(p)s(oin)m(t.)40 b(This)29 b(option)g(is)g(only)g(e\013ectiv)m(e)j(if)
-1110 3784 y Fs(read)j Ft(is)i(reading)g(input)e(from)h(a)h(terminal,)i
-(pip)s(e,)e(or)g(other)f(sp)s(ecial)i(\014le;)1110 3893
-y(it)31 b(has)g(no)g(e\013ect)h(when)e(reading)h(from)g(regular)g
-(\014les.)42 b(If)30 b Fs(read)g Ft(times)h(out,)1110
-4003 y Fs(read)d Ft(sa)m(v)m(es)i(an)m(y)g(partial)g(input)e(read)h(in)
-m(to)h(the)f(sp)s(eci\014ed)g(v)-5 b(ariable)30 b Fq(name)5
-b Ft(.)1110 4113 y(If)35 b Fq(timeout)j Ft(is)e(0,)h
-Fs(read)e Ft(returns)f(immediately)-8 b(,)39 b(without)c(trying)h(to)g
-(read)1110 4222 y(and)30 b(data.)44 b(The)30 b(exit)i(status)f(is)g(0)g
-(if)g(input)f(is)h(a)m(v)-5 b(ailable)34 b(on)c(the)i(sp)s(eci\014ed)
-1110 4332 y(\014le)g(descriptor,)g(non-zero)h(otherwise.)46
-b(The)31 b(exit)i(status)f(is)g(greater)h(than)1110 4441
-y(128)f(if)e(the)h(timeout)g(is)f(exceeded.)630 4595
-y Fs(-u)g Fi(fd)258 b Ft(Read)31 b(input)e(from)h(\014le)g(descriptor)h
-Fq(fd)t Ft(.)150 4748 y Fs(readarray)870 4858 y(readarray)45
-b([-n)i Fi(count)11 b Fs(])46 b([-O)h Fi(origin)11 b
-Fs(])45 b([-s)i Fi(count)11 b Fs(])46 b([-t])g([-u)h
-Fi(fd)11 b Fs(])1061 4967 y([-C)47 b Fi(callback)11 b
-Fs(])45 b([-c)i Fi(quantum)11 b Fs(])45 b([)p Fi(array)11
-b Fs(])630 5099 y Ft(Read)37 b(lines)g(from)f(the)h(standard)f(input)g
-(in)m(to)h(the)g(indexed)f(arra)m(y)i(v)-5 b(ariable)37
-b Fq(arra)m(y)8 b Ft(,)39 b(or)630 5208 y(from)30 b(\014le)g
-(descriptor)h Fq(fd)i Ft(if)d(the)h(`)p Fs(-u)p Ft(')f(option)h(is)f
-(supplied.)630 5340 y(A)g(synon)m(ym)g(for)g Fs(mapfile)p
-Ft(.)p eop end
+4695 y(line)31 b(editing)g(w)m(as)f(not)h(previously)f(activ)m(e\))j
+(editing)e(settings.)630 4853 y Ft(-i)f Fj(text)162 b
+Fu(If)36 b(Readline)i(is)f(b)s(eing)g(used)f(to)h(read)g(the)g(line,)j
+Fr(text)f Fu(is)e(placed)h(in)m(to)g(the)1110 4963 y(editing)31
+b(bu\013er)e(b)s(efore)h(editing)h(b)s(egins.)630 5121
+y Ft(-n)f Fj(nchars)66 b Ft(read)38 b Fu(returns)f(after)j(reading)f
+Fr(nc)m(hars)j Fu(c)m(haracters)e(rather)f(than)g(w)m(aiting)1110
+5230 y(for)g(a)h(complete)h(line)f(of)f(input,)i(but)e(honor)g(a)h
+(delimiter)g(if)f(few)m(er)h(than)1110 5340 y Fr(nc)m(hars)34
+b Fu(c)m(haracters)e(are)e(read)h(b)s(efore)f(the)g(delimiter.)p
+eop end
+%%Page: 56 62
+TeXDict begin 56 61 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(56)630 299 y Ft(-N)30
+b Fj(nchars)66 b Ft(read)39 b Fu(returns)f(after)j(reading)e(exactly)j
+Fr(nc)m(hars)h Fu(c)m(haracters)f(rather)d(than)1110
+408 y(w)m(aiting)32 b(for)f(a)g(complete)i(line)e(of)g(input,)g(unless)
+f(EOF)h(is)g(encoun)m(tered)g(or)1110 518 y Ft(read)f
+Fu(times)i(out.)43 b(Delimiter)33 b(c)m(haracters)f(encoun)m(tered)g
+(in)f(the)g(input)g(are)1110 628 y(not)g(treated)h(sp)s(ecially)f(and)f
+(do)h(not)g(cause)g Ft(read)e Fu(to)j(return)d(un)m(til)i
+Fr(nc)m(hars)1110 737 y Fu(c)m(haracters)h(are)f(read.)630
+904 y Ft(-p)f Fj(prompt)66 b Fu(Displa)m(y)38 b Fr(prompt)p
+Fu(,)g(without)e(a)h(trailing)h(newline,)h(b)s(efore)d(attempting)i(to)
+1110 1014 y(read)f(an)m(y)h(input.)60 b(The)37 b(prompt)g(is)g(displa)m
+(y)m(ed)h(only)f(if)g(input)g(is)g(coming)1110 1123 y(from)30
+b(a)h(terminal.)630 1290 y Ft(-r)384 b Fu(If)21 b(this)h(option)g(is)f
+(giv)m(en,)k(bac)m(kslash)d(do)s(es)f(not)h(act)h(as)f(an)f(escap)s(e)h
+(c)m(haracter.)1110 1400 y(The)30 b(bac)m(kslash)i(is)f(considered)g
+(to)h(b)s(e)e(part)h(of)g(the)g(line.)43 b(In)30 b(particular,)i(a)1110
+1509 y(bac)m(kslash-newline)f(pair)f(ma)m(y)h(not)g(b)s(e)f(used)f(as)i
+(a)g(line)f(con)m(tin)m(uation.)630 1676 y Ft(-s)384
+b Fu(Silen)m(t)28 b(mo)s(de.)40 b(If)27 b(input)f(is)i(coming)g(from)f
+(a)h(terminal,)h(c)m(haracters)g(are)f(not)1110 1785
+y(ec)m(ho)s(ed.)630 1952 y Ft(-t)i Fj(timeout)1110 2062
+y Fu(Cause)42 b Ft(read)g Fu(to)h(time)h(out)f(and)f(return)f(failure)i
+(if)g(a)g(complete)h(line)f(of)1110 2171 y(input)26 b(\(or)h(a)g(sp)s
+(eci\014ed)f(n)m(um)m(b)s(er)g(of)h(c)m(haracters\))h(is)f(not)g(read)g
+(within)f Fr(time-)1110 2281 y(out)37 b Fu(seconds.)53
+b Fr(timeout)38 b Fu(ma)m(y)d(b)s(e)f(a)h(decimal)h(n)m(um)m(b)s(er)d
+(with)h(a)h(fractional)1110 2391 y(p)s(ortion)29 b(follo)m(wing)h(the)f
+(decimal)h(p)s(oin)m(t.)40 b(This)29 b(option)g(is)g(only)g(e\013ectiv)
+m(e)j(if)1110 2500 y Ft(read)j Fu(is)i(reading)g(input)e(from)h(a)h
+(terminal,)i(pip)s(e,)e(or)g(other)f(sp)s(ecial)i(\014le;)1110
+2610 y(it)31 b(has)g(no)g(e\013ect)h(when)e(reading)h(from)g(regular)g
+(\014les.)42 b(If)30 b Ft(read)g Fu(times)h(out,)1110
+2719 y Ft(read)d Fu(sa)m(v)m(es)j(an)m(y)f(partial)h(input)d(read)i(in)
+m(to)h(the)e(sp)s(eci\014ed)g(v)-5 b(ariable)31 b Fr(name)p
+Fu(.)1110 2829 y(If)k Fr(timeout)j Fu(is)e(0,)h Ft(read)e
+Fu(returns)f(immediately)-8 b(,)39 b(without)c(trying)h(to)g(read)1110
+2939 y(and)30 b(data.)44 b(The)30 b(exit)i(status)f(is)g(0)g(if)g
+(input)f(is)h(a)m(v)-5 b(ailable)34 b(on)c(the)i(sp)s(eci\014ed)1110
+3048 y(\014le)g(descriptor,)g(non-zero)h(otherwise.)46
+b(The)31 b(exit)i(status)f(is)g(greater)h(than)1110 3158
+y(128)f(if)e(the)h(timeout)g(is)f(exceeded.)630 3324
+y Ft(-u)g Fj(fd)258 b Fu(Read)31 b(input)e(from)h(\014le)g(descriptor)h
+Fr(fd)p Fu(.)150 3491 y Ft(readarray)870 3601 y(readarray)45
+b([-n)i Fj(count)p Ft(])f([-O)h Fj(origin)p Ft(])f([-s)h
+Fj(count)p Ft(])f([-t])h([-u)g Fj(fd)p Ft(])1061 3710
+y([-C)g Fj(callback)p Ft(])e([-c)i Fj(quantum)p Ft(])f([)p
+Fj(array)p Ft(])630 3849 y Fu(Read)38 b(lines)f(from)g(the)h(standard)e
+(input)g(in)m(to)j(the)e(indexed)g(arra)m(y)h(v)-5 b(ariable)38
+b Fr(arra)m(y)p Fu(,)i(or)630 3958 y(from)30 b(\014le)g(descriptor)h
+Fr(fd)i Fu(if)d(the)h Ft(-u)e Fu(option)i(is)g(supplied.)630
+4096 y(A)f(synon)m(ym)g(for)g Ft(mapfile)p Fu(.)150 4263
+y Ft(source)870 4401 y(source)46 b Fj(filename)630 4539
+y Fu(A)30 b(synon)m(ym)g(for)g Ft(.)g Fu(\(see)i(Section)f(4.1)g
+([Bourne)g(Shell)f(Builtins],)h(page)g(41\).)150 4706
+y Ft(type)870 4844 y(type)47 b([-afptP])e([)p Fj(name)i
+Ft(...)o(])630 4983 y Fu(F)-8 b(or)42 b(eac)m(h)g Fr(name)p
+Fu(,)i(indicate)e(ho)m(w)g(it)f(w)m(ould)g(b)s(e)g(in)m(terpreted)g(if)
+g(used)f(as)i(a)f(command)630 5092 y(name.)630 5230 y(If)g(the)g
+Ft(-t)g Fu(option)h(is)f(used,)j Ft(type)c Fu(prin)m(ts)h(a)h(single)g
+(w)m(ord)f(whic)m(h)g(is)g(one)h(of)g(`)p Ft(alias)p
+Fu(',)630 5340 y(`)p Ft(function)p Fu(',)32 b(`)p Ft(builtin)p
+Fu(',)g(`)p Ft(file)p Fu(')g(or)h(`)p Ft(keyword)p Fu(',)f(if)h
+Fr(name)38 b Fu(is)33 b(an)f(alias,)j(shell)e(function,)p
+eop end
%%Page: 57 63
-TeXDict begin 57 62 bop 150 -116 a Ft(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(57)150 299 y Fs(source)870
-435 y(source)46 b Fi(filename)630 571 y Ft(A)30 b(synon)m(ym)g(for)g
-Fs(.)g Ft(\(see)i(Section)f(4.1)g([Bourne)g(Shell)f(Builtins],)h(page)g
-(41\).)150 734 y Fs(type)870 870 y(type)47 b([-afptP])e([)p
-Fi(name)57 b Fs(...)o(])630 1006 y Ft(F)-8 b(or)41 b(eac)m(h)h
-Fq(name)5 b Ft(,)44 b(indicate)e(ho)m(w)f(it)g(w)m(ould)f(b)s(e)g(in)m
-(terpreted)h(if)g(used)f(as)h(a)g(command)630 1116 y(name.)630
-1252 y(If)d(the)g(`)p Fs(-t)p Ft(')g(option)g(is)g(used,)i
-Fs(type)d Ft(prin)m(ts)g(a)i(single)f(w)m(ord)g(whic)m(h)g(is)g(one)g
-(of)h(`)p Fs(alias)p Ft(',)630 1362 y(`)p Fs(function)p
-Ft(',)32 b(`)p Fs(builtin)p Ft(',)g(`)p Fs(file)p Ft(')g(or)h(`)p
-Fs(keyword)p Ft(',)f(if)h Fq(name)38 b Ft(is)33 b(an)f(alias,)j(shell)e
-(function,)630 1471 y(shell)i(builtin,)g(disk)g(\014le,)h(or)e(shell)h
-(reserv)m(ed)g(w)m(ord,)h(resp)s(ectiv)m(ely)-8 b(.)55
-b(If)34 b(the)h Fq(name)40 b Ft(is)35 b(not)630 1581
-y(found,)29 b(then)h(nothing)h(is)f(prin)m(ted,)g(and)g
-Fs(type)f Ft(returns)g(a)i(failure)g(status.)630 1717
-y(If)39 b(the)g(`)p Fs(-p)p Ft(')g(option)h(is)f(used,)i
-Fs(type)d Ft(either)h(returns)f(the)i(name)f(of)g(the)g(disk)g(\014le)g
-(that)630 1826 y(w)m(ould)30 b(b)s(e)g(executed,)h(or)g(nothing)f(if)g
-(`)p Fs(-t)p Ft(')h(w)m(ould)f(not)g(return)g(`)p Fs(file)p
-Ft('.)630 1963 y(The)23 b(`)p Fs(-P)p Ft(')g(option)h(forces)g(a)g
-(path)f(searc)m(h)h(for)f(eac)m(h)h Fq(name)5 b Ft(,)26
-b(ev)m(en)e(if)f(`)p Fs(-t)p Ft(')g(w)m(ould)g(not)h(return)630
-2072 y(`)p Fs(file)p Ft('.)630 2208 y(If)41 b(a)h(command)f(is)h
-(hashed,)i(`)p Fs(-p)p Ft(')d(and)g(`)p Fs(-P)p Ft(')g(prin)m(t)g(the)h
-(hashed)f(v)-5 b(alue,)45 b(whic)m(h)c(is)h(not)630 2318
-y(necessarily)31 b(the)g(\014le)f(that)h(app)s(ears)f(\014rst)g(in)g
-Fs($PATH)p Ft(.)630 2454 y(If)36 b(the)h(`)p Fs(-a)p
-Ft(')g(option)g(is)g(used,)g Fs(type)f Ft(returns)f(all)j(of)f(the)g
-(places)g(that)g(con)m(tain)h(an)f(exe-)630 2564 y(cutable)d(named)f
-Fq(\014le)5 b Ft(.)49 b(This)32 b(includes)h(aliases)i(and)d
-(functions,)i(if)f(and)f(only)i(if)f(the)g(`)p Fs(-p)p
-Ft(')630 2673 y(option)e(is)f(not)h(also)g(used.)630
-2809 y(If)26 b(the)h(`)p Fs(-f)p Ft(')g(option)g(is)g(used,)g
-Fs(type)e Ft(do)s(es)i(not)g(attempt)g(to)h(\014nd)d(shell)i
-(functions,)g(as)g(with)630 2919 y(the)k Fs(command)d
-Ft(builtin.)630 3055 y(The)j(return)f(status)h(is)g(zero)h(if)f(all)h
-(of)f(the)h Fq(names)i Ft(are)e(found,)e(non-zero)i(if)f(an)m(y)g(are)h
-(not)630 3165 y(found.)150 3328 y Fs(typeset)870 3464
-y(typeset)46 b([-afFgrxilnrtux])d([-p])k([)p Fi(name)11
-b Fs([=)p Fi(value)g Fs(])43 b(...)o(])630 3600 y Ft(The)31
-b Fs(typeset)e Ft(command)i(is)g(supplied)f(for)h(compatibilit)m(y)i
-(with)e(the)g(Korn)f(shell.)44 b(It)31 b(is)630 3709
-y(a)g(synon)m(ym)f(for)g(the)g Fs(declare)f Ft(builtin)h(command.)150
-3872 y Fs(ulimit)870 4008 y(ulimit)46 b([-abcdefilmnpqrstuvxHST])41
-b([)p Fi(limit)11 b Fs(])630 4144 y(ulimit)25 b Ft(pro)m(vides)h(con)m
-(trol)i(o)m(v)m(er)g(the)f(resources)f(a)m(v)-5 b(ailable)29
-b(to)e(pro)s(cesses)f(started)h(b)m(y)g(the)630 4254
-y(shell,)i(on)f(systems)g(that)h(allo)m(w)h(suc)m(h)e(con)m(trol.)41
-b(If)28 b(an)g(option)h(is)f(giv)m(en,)i(it)e(is)h(in)m(terpreted)630
-4364 y(as)i(follo)m(ws:)630 4526 y Fs(-S)384 b Ft(Change)30
-b(and)g(rep)s(ort)g(the)g(soft)h(limit)g(asso)s(ciated)h(with)e(a)h
-(resource.)630 4689 y Fs(-H)384 b Ft(Change)30 b(and)g(rep)s(ort)g(the)
-g(hard)g(limit)h(asso)s(ciated)h(with)e(a)h(resource.)630
-4852 y Fs(-a)384 b Ft(All)31 b(curren)m(t)f(limits)h(are)g(rep)s
-(orted.)630 5015 y Fs(-b)384 b Ft(The)30 b(maxim)m(um)g(so)s(c)m(k)m
-(et)i(bu\013er)e(size.)630 5177 y Fs(-c)384 b Ft(The)30
-b(maxim)m(um)g(size)h(of)g(core)g(\014les)f(created.)630
-5340 y Fs(-d)384 b Ft(The)30 b(maxim)m(um)g(size)h(of)g(a)g(pro)s
-(cess's)f(data)h(segmen)m(t.)p eop end
-%%Page: 58 64
-TeXDict begin 58 63 bop 150 -116 a Ft(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(58)630 299 y Fs(-e)384
-b Ft(The)30 b(maxim)m(um)g(sc)m(heduling)h(priorit)m(y)f(\()p
-Fs(")p Ft(nice)p Fs(")p Ft(\).)630 482 y Fs(-f)384 b
-Ft(The)30 b(maxim)m(um)g(size)h(of)g(\014les)f(written)h(b)m(y)f(the)g
-(shell)h(and)f(its)h(c)m(hildren.)630 666 y Fs(-i)384
-b Ft(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(p)s(ending)e
-(signals.)630 849 y Fs(-l)384 b Ft(The)30 b(maxim)m(um)g(size)h(that)g
+TeXDict begin 57 62 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(57)630 299 y(shell)35
+b(builtin,)g(disk)g(\014le,)h(or)e(shell)h(reserv)m(ed)g(w)m(ord,)h
+(resp)s(ectiv)m(ely)-8 b(.)55 b(If)34 b(the)h Fr(name)40
+b Fu(is)35 b(not)630 408 y(found,)29 b(then)h(nothing)h(is)f(prin)m
+(ted,)g(and)g Ft(type)f Fu(returns)g(a)i(failure)g(status.)630
+544 y(If)25 b(the)g Ft(-p)g Fu(option)h(is)f(used,)h
+Ft(type)e Fu(either)h(returns)g(the)g(name)g(of)h(the)f(disk)g(\014le)g
+(that)h(w)m(ould)630 654 y(b)s(e)k(executed,)h(or)g(nothing)f(if)g
+Ft(-t)g Fu(w)m(ould)g(not)h(return)e(`)p Ft(file)p Fu('.)630
+789 y(The)h Ft(-P)g Fu(option)h(forces)g(a)g(path)f(searc)m(h)h(for)g
+(eac)m(h)g Fr(name)p Fu(,)g(ev)m(en)g(if)g Ft(-t)f Fu(w)m(ould)g(not)h
+(return)630 899 y(`)p Ft(file)p Fu('.)630 1034 y(If)f(a)g(command)g(is)
+g(hashed,)f Ft(-p)h Fu(and)f Ft(-P)g Fu(prin)m(t)h(the)g(hashed)f(v)-5
+b(alue,)31 b(whic)m(h)f(is)g(not)g(neces-)630 1144 y(sarily)h(the)f
+(\014le)h(that)g(app)s(ears)e(\014rst)h(in)g Ft($PATH)p
+Fu(.)630 1279 y(If)22 b(the)i Ft(-a)e Fu(option)h(is)g(used,)h
+Ft(type)e Fu(returns)f(all)j(of)f(the)g(places)h(that)f(con)m(tain)i
+(an)d(executable)630 1389 y(named)32 b Fr(\014le)p Fu(.)49
+b(This)32 b(includes)h(aliases)h(and)e(functions,)i(if)f(and)f(only)h
+(if)g(the)g Ft(-p)f Fu(option)i(is)630 1499 y(not)d(also)g(used.)630
+1634 y(If)f(the)g Ft(-f)g Fu(option)g(is)h(used,)e Ft(type)g
+Fu(do)s(es)h(not)h(attempt)g(to)g(\014nd)d(shell)j(functions,)f(as)g
+(with)630 1744 y(the)h Ft(command)d Fu(builtin.)630 1879
+y(The)j(return)f(status)h(is)g(zero)h(if)f(all)h(of)f(the)h
+Fr(names)i Fu(are)e(found,)e(non-zero)i(if)f(an)m(y)g(are)h(not)630
+1989 y(found.)150 2150 y Ft(typeset)870 2286 y(typeset)46
+b([-afFgrxilnrtux])d([-p])k([)p Fj(name)p Ft([=)p Fj(value)p
+Ft(])d(...)o(])630 2421 y Fu(The)31 b Ft(typeset)e Fu(command)i(is)g
+(supplied)f(for)h(compatibilit)m(y)i(with)e(the)g(Korn)f(shell.)44
+b(It)31 b(is)630 2531 y(a)g(synon)m(ym)f(for)g(the)g
+Ft(declare)f Fu(builtin)h(command.)150 2693 y Ft(ulimit)870
+2828 y(ulimit)46 b([-abcdefilmnpqrstuvxHST])41 b([)p
+Fj(limit)p Ft(])630 2964 y(ulimit)25 b Fu(pro)m(vides)h(con)m(trol)i(o)
+m(v)m(er)g(the)f(resources)f(a)m(v)-5 b(ailable)29 b(to)e(pro)s(cesses)
+f(started)h(b)m(y)g(the)630 3073 y(shell,)i(on)f(systems)g(that)h(allo)
+m(w)h(suc)m(h)e(con)m(trol.)41 b(If)28 b(an)g(option)h(is)f(giv)m(en,)i
+(it)e(is)h(in)m(terpreted)630 3183 y(as)i(follo)m(ws:)630
+3344 y Ft(-S)384 b Fu(Change)30 b(and)g(rep)s(ort)g(the)g(soft)h(limit)
+g(asso)s(ciated)h(with)e(a)h(resource.)630 3506 y Ft(-H)384
+b Fu(Change)30 b(and)g(rep)s(ort)g(the)g(hard)g(limit)h(asso)s(ciated)h
+(with)e(a)h(resource.)630 3667 y Ft(-a)384 b Fu(All)31
+b(curren)m(t)f(limits)h(are)g(rep)s(orted.)630 3829 y
+Ft(-b)384 b Fu(The)30 b(maxim)m(um)g(so)s(c)m(k)m(et)i(bu\013er)e
+(size.)630 3990 y Ft(-c)384 b Fu(The)30 b(maxim)m(um)g(size)h(of)g
+(core)g(\014les)f(created.)630 4152 y Ft(-d)384 b Fu(The)30
+b(maxim)m(um)g(size)h(of)g(a)g(pro)s(cess's)f(data)h(segmen)m(t.)630
+4313 y Ft(-e)384 b Fu(The)30 b(maxim)m(um)g(sc)m(heduling)h(priorit)m
+(y)f(\()p Ft(")p Fu(nice)p Ft(")p Fu(\).)630 4475 y Ft(-f)384
+b Fu(The)30 b(maxim)m(um)g(size)h(of)g(\014les)f(written)h(b)m(y)f(the)
+g(shell)h(and)f(its)h(c)m(hildren.)630 4636 y Ft(-i)384
+b Fu(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(p)s(ending)e
+(signals.)630 4798 y Ft(-l)384 b Fu(The)30 b(maxim)m(um)g(size)h(that)g
(ma)m(y)g(b)s(e)f(lo)s(c)m(k)m(ed)i(in)m(to)f(memory)-8
-b(.)630 1033 y Fs(-m)384 b Ft(The)36 b(maxim)m(um)g(residen)m(t)h(set)g
+b(.)630 4959 y Ft(-m)384 b Fu(The)36 b(maxim)m(um)g(residen)m(t)h(set)g
(size)g(\(man)m(y)g(systems)f(do)h(not)f(honor)g(this)1110
-1142 y(limit\).)630 1326 y Fs(-n)384 b Ft(The)38 b(maxim)m(um)h(n)m(um)
+5069 y(limit\).)630 5230 y Ft(-n)384 b Fu(The)38 b(maxim)m(um)h(n)m(um)
m(b)s(er)e(of)i(op)s(en)f(\014le)h(descriptors)g(\(most)g(systems)g(do)
-1110 1435 y(not)31 b(allo)m(w)g(this)g(v)-5 b(alue)31
-b(to)g(b)s(e)e(set\).)630 1619 y Fs(-p)384 b Ft(The)30
-b(pip)s(e)f(bu\013er)h(size.)630 1802 y Fs(-q)384 b Ft(The)30
-b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(b)m(ytes)g(in)f(POSIX)f(message)j
-(queues.)630 1986 y Fs(-r)384 b Ft(The)30 b(maxim)m(um)g(real-time)i
-(sc)m(heduling)f(priorit)m(y)-8 b(.)630 2169 y Fs(-s)384
-b Ft(The)30 b(maxim)m(um)g(stac)m(k)i(size.)630 2352
-y Fs(-t)384 b Ft(The)30 b(maxim)m(um)g(amoun)m(t)h(of)f(cpu)g(time)h
-(in)f(seconds.)630 2536 y Fs(-u)384 b Ft(The)30 b(maxim)m(um)g(n)m(um)m
-(b)s(er)f(of)i(pro)s(cesses)f(a)m(v)-5 b(ailable)33 b(to)e(a)f(single)i
-(user.)630 2719 y Fs(-v)384 b Ft(The)41 b(maxim)m(um)h(amoun)m(t)g(of)h
-(virtual)f(memory)g(a)m(v)-5 b(ailable)44 b(to)e(the)g(shell,)1110
-2829 y(and,)30 b(on)g(some)h(systems,)g(to)g(its)g(c)m(hildren.)630
-3012 y Fs(-x)384 b Ft(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i
-(\014le)f(lo)s(c)m(ks.)630 3196 y Fs(-T)384 b Ft(The)30
-b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(threads.)630 3379
-y(If)i Fq(limit)k Ft(is)d(giv)m(en,)h(and)f(the)f(`)p
-Fs(-a)p Ft(')h(option)g(is)g(not)g(used,)g Fq(limit)j
-Ft(is)c(the)h(new)g(v)-5 b(alue)34 b(of)g(the)630 3489
-y(sp)s(eci\014ed)f(resource.)51 b(The)34 b(sp)s(ecial)g
-Fq(limit)j Ft(v)-5 b(alues)34 b Fs(hard)p Ft(,)g Fs(soft)p
-Ft(,)g(and)f Fs(unlimited)e Ft(stand)630 3598 y(for)h(the)g(curren)m(t)
-g(hard)f(limit,)i(the)g(curren)m(t)f(soft)g(limit,)h(and)f(no)g(limit,)
-h(resp)s(ectiv)m(ely)-8 b(.)48 b(A)630 3708 y(hard)24
-b(limit)i(cannot)g(b)s(e)e(increased)h(b)m(y)g(a)h(non-ro)s(ot)f(user)f
-(once)i(it)g(is)f(set;)j(a)d(soft)g(limit)h(ma)m(y)630
-3818 y(b)s(e)37 b(increased)h(up)e(to)j(the)f(v)-5 b(alue)38
-b(of)f(the)h(hard)f(limit.)63 b(Otherwise,)39 b(the)f(curren)m(t)f(v)-5
-b(alue)630 3927 y(of)36 b(the)f(soft)h(limit)h(for)e(the)g(sp)s
-(eci\014ed)g(resource)h(is)f(prin)m(ted,)i(unless)e(the)h(`)p
-Fs(-H)p Ft(')f(option)h(is)630 4037 y(supplied.)j(When)28
-b(setting)h(new)f(limits,)h(if)f(neither)h(`)p Fs(-H)p
-Ft(')f(nor)f(`)p Fs(-S)p Ft(')h(is)h(supplied,)e(b)s(oth)h(the)630
-4146 y(hard)g(and)h(soft)h(limits)g(are)g(set.)41 b(If)29
-b(no)g(option)h(is)f(giv)m(en,)i(then)e(`)p Fs(-f)p Ft(')h(is)f
-(assumed.)40 b(V)-8 b(alues)630 4256 y(are)38 b(in)f(1024-b)m(yte)k
-(incremen)m(ts,)f(except)e(for)g(`)p Fs(-t)p Ft(',)h(whic)m(h)e(is)h
-(in)f(seconds;)42 b(`)p Fs(-p)p Ft(',)d(whic)m(h)630
-4366 y(is)33 b(in)f(units)g(of)h(512-b)m(yte)i(blo)s(c)m(ks;)g(and)d(`)
-p Fs(-T)p Ft(',)i(`)p Fs(-b)p Ft(',)f(`)p Fs(-n)p Ft(')g(and)f(`)p
-Fs(-u)p Ft(',)h(whic)m(h)g(are)g(unscaled)630 4475 y(v)-5
-b(alues.)630 4622 y(The)34 b(return)g(status)h(is)f(zero)i(unless)e(an)
+1110 5340 y(not)31 b(allo)m(w)g(this)g(v)-5 b(alue)31
+b(to)g(b)s(e)e(set\).)p eop end
+%%Page: 58 64
+TeXDict begin 58 63 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(58)630 299 y Ft(-p)384
+b Fu(The)30 b(pip)s(e)f(bu\013er)h(size.)630 454 y Ft(-q)384
+b Fu(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(b)m(ytes)g(in)f
+(POSIX)f(message)j(queues.)630 608 y Ft(-r)384 b Fu(The)30
+b(maxim)m(um)g(real-time)i(sc)m(heduling)f(priorit)m(y)-8
+b(.)630 763 y Ft(-s)384 b Fu(The)30 b(maxim)m(um)g(stac)m(k)i(size.)630
+918 y Ft(-t)384 b Fu(The)30 b(maxim)m(um)g(amoun)m(t)h(of)f(cpu)g(time)
+h(in)f(seconds.)630 1072 y Ft(-u)384 b Fu(The)30 b(maxim)m(um)g(n)m(um)
+m(b)s(er)f(of)i(pro)s(cesses)f(a)m(v)-5 b(ailable)33
+b(to)e(a)f(single)i(user.)630 1227 y Ft(-v)384 b Fu(The)41
+b(maxim)m(um)h(amoun)m(t)g(of)h(virtual)f(memory)g(a)m(v)-5
+b(ailable)44 b(to)e(the)g(shell,)1110 1337 y(and,)30
+b(on)g(some)h(systems,)g(to)g(its)g(c)m(hildren.)630
+1491 y Ft(-x)384 b Fu(The)30 b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i
+(\014le)f(lo)s(c)m(ks.)630 1646 y Ft(-T)384 b Fu(The)30
+b(maxim)m(um)g(n)m(um)m(b)s(er)f(of)i(threads.)630 1801
+y(If)36 b Fr(limit)k Fu(is)c(giv)m(en,)k(and)c(the)h
+Ft(-a)f Fu(option)h(is)f(not)h(used,)h Fr(limit)h Fu(is)e(the)g(new)f
+(v)-5 b(alue)37 b(of)g(the)630 1910 y(sp)s(eci\014ed)c(resource.)51
+b(The)34 b(sp)s(ecial)g Fr(limit)j Fu(v)-5 b(alues)34
+b Ft(hard)p Fu(,)g Ft(soft)p Fu(,)g(and)f Ft(unlimited)e
+Fu(stand)630 2020 y(for)h(the)g(curren)m(t)g(hard)f(limit,)i(the)g
+(curren)m(t)f(soft)g(limit,)h(and)f(no)g(limit,)h(resp)s(ectiv)m(ely)-8
+b(.)48 b(A)630 2130 y(hard)37 b(limit)h(cannot)h(b)s(e)e(increased)h(b)
+m(y)f(a)h(non-ro)s(ot)g(user)f(once)i(it)f(is)g(set;)k(a)c(soft)g
+(limit)630 2239 y(ma)m(y)j(b)s(e)e(increased)i(up)e(to)h(the)h(v)-5
+b(alue)40 b(of)g(the)h(hard)e(limit.)70 b(Otherwise,)43
+b(the)d(curren)m(t)630 2349 y(v)-5 b(alue)29 b(of)h(the)f(soft)g(limit)
+h(for)e(the)h(sp)s(eci\014ed)g(resource)g(is)g(prin)m(ted,)g(unless)f
+(the)h Ft(-H)f Fu(option)630 2458 y(is)h(supplied.)39
+b(When)29 b(setting)h(new)f(limits,)h(if)f(neither)g
+Ft(-H)g Fu(nor)f Ft(-S)h Fu(is)g(supplied,)f(b)s(oth)h(the)630
+2568 y(hard)i(and)h(soft)h(limits)g(are)f(set.)48 b(If)31
+b(no)i(option)f(is)h(giv)m(en,)h(then)e Ft(-f)g Fu(is)g(assumed.)46
+b(V)-8 b(alues)630 2677 y(are)31 b(in)f(1024-b)m(yte)j(incremen)m(ts,)e
+(except)g(for)f Ft(-t)p Fu(,)g(whic)m(h)g(is)g(in)g(seconds;)h
+Ft(-p)p Fu(,)f(whic)m(h)g(is)g(in)630 2787 y(units)g(of)g(512-b)m(yte)j
+(blo)s(c)m(ks;)e(and)f Ft(-T)p Fu(,)g Ft(-b)p Fu(,)g
+Ft(-n)g Fu(and)f Ft(-u)p Fu(,)h(whic)m(h)g(are)h(unscaled)f(v)-5
+b(alues.)630 2919 y(The)34 b(return)g(status)h(is)f(zero)i(unless)e(an)
g(in)m(v)-5 b(alid)36 b(option)f(or)f(argumen)m(t)i(is)e(supplied,)h
-(or)630 4731 y(an)30 b(error)g(o)s(ccurs)g(while)h(setting)g(a)g(new)f
-(limit.)150 4915 y Fs(unalias)870 5061 y(unalias)46 b([-a])g([)p
-Fi(name)57 b Fs(...)47 b(])630 5208 y Ft(Remo)m(v)m(e)39
-b(eac)m(h)f Fq(name)k Ft(from)36 b(the)h(list)h(of)f(aliases.)61
-b(If)36 b(`)p Fs(-a)p Ft(')h(is)g(supplied,)h(all)f(aliases)i(are)630
-5317 y(remo)m(v)m(ed.)j(Aliases)31 b(are)g(describ)s(ed)e(in)h(Section)
-i(6.6)f([Aliases],)h(page)f(88.)p eop end
-%%Page: 59 65
-TeXDict begin 59 64 bop 150 -116 a Ft(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(59)150 299 y Fr(4.3)68
-b(Mo)t(difying)45 b(Shell)g(Beha)l(vior)150 520 y Fj(4.3.1)63
-b(The)41 b(Set)g(Builtin)150 667 y Ft(This)35 b(builtin)h(is)g(so)g
+(or)630 3029 y(an)30 b(error)g(o)s(ccurs)g(while)h(setting)g(a)g(new)f
+(limit.)150 3183 y Ft(unalias)870 3316 y(unalias)46 b([-a])g([)p
+Fj(name)h Ft(...)g(])630 3448 y Fu(Remo)m(v)m(e)42 b(eac)m(h)f
+Fr(name)k Fu(from)39 b(the)i(list)f(of)g(aliases.)71
+b(If)40 b Ft(-a)f Fu(is)h(supplied,)h(all)g(aliases)h(are)630
+3557 y(remo)m(v)m(ed.)g(Aliases)31 b(are)g(describ)s(ed)e(in)h(Section)
+i(6.6)f([Aliases],)h(page)f(88.)150 3785 y Fs(4.3)68
+b(Mo)t(difying)45 b(Shell)g(Beha)l(vior)150 4007 y Fk(4.3.1)63
+b(The)41 b(Set)g(Builtin)150 4154 y Fu(This)35 b(builtin)h(is)g(so)g
(complicated)i(that)f(it)f(deserv)m(es)h(its)f(o)m(wn)g(section.)59
-b Fs(set)35 b Ft(allo)m(ws)j(y)m(ou)e(to)h(c)m(hange)150
-777 y(the)c(v)-5 b(alues)34 b(of)f(shell)g(options)h(and)e(set)i(the)f
+b Ft(set)35 b Fu(allo)m(ws)j(y)m(ou)e(to)h(c)m(hange)150
+4263 y(the)c(v)-5 b(alues)34 b(of)f(shell)g(options)h(and)e(set)i(the)f
(p)s(ositional)h(parameters,)h(or)e(to)h(displa)m(y)f(the)g(names)h
-(and)150 886 y(v)-5 b(alues)31 b(of)f(shell)h(v)-5 b(ariables.)150
-1041 y Fs(set)870 1172 y(set)47 b([--abefhkmnptuvxBCEHPT])41
-b([-o)47 b Fi(option-name)11 b Fs(])44 b([)p Fi(argument)56
-b Fs(...)o(])870 1282 y(set)47 b([+abefhkmnptuvxBCEHPT])42
-b([+o)47 b Fi(option-name)11 b Fs(])43 b([)p Fi(argument)56
-b Fs(...)o(])630 1414 y Ft(If)22 b(no)h(options)g(or)g(argumen)m(ts)g
-(are)g(supplied,)g Fs(set)f Ft(displa)m(ys)g(the)h(names)g(and)f(v)-5
-b(alues)23 b(of)g(all)630 1523 y(shell)j(v)-5 b(ariables)27
+(and)150 4373 y(v)-5 b(alues)31 b(of)f(shell)h(v)-5 b(ariables.)150
+4528 y Ft(set)870 4660 y(set)47 b([--abefhkmnptuvxBCEHPT])41
+b([-o)47 b Fj(option-name)p Ft(])e([)p Fj(argument)g
+Ft(...)o(])870 4769 y(set)i([+abefhkmnptuvxBCEHPT])42
+b([+o)47 b Fj(option-name)p Ft(])d([)p Fj(argument)h
+Ft(...)o(])630 4902 y Fu(If)22 b(no)h(options)g(or)g(argumen)m(ts)g
+(are)g(supplied,)g Ft(set)f Fu(displa)m(ys)g(the)h(names)g(and)f(v)-5
+b(alues)23 b(of)g(all)630 5011 y(shell)j(v)-5 b(ariables)27
b(and)e(functions,)h(sorted)g(according)h(to)g(the)f(curren)m(t)f(lo)s
-(cale,)k(in)c(a)i(format)630 1633 y(that)i(ma)m(y)h(b)s(e)e(reused)g
+(cale,)k(in)c(a)i(format)630 5121 y(that)i(ma)m(y)h(b)s(e)e(reused)g
(as)h(input)f(for)h(setting)h(or)e(resetting)i(the)f(curren)m(tly-set)h
-(v)-5 b(ariables.)630 1743 y(Read-only)37 b(v)-5 b(ariables)37
-b(cannot)h(b)s(e)e(reset.)59 b(In)36 b Fl(posix)g Ft(mo)s(de,)i(only)f
-(shell)f(v)-5 b(ariables)38 b(are)630 1852 y(listed.)630
-1984 y(When)29 b(options)g(are)g(supplied,)f(they)h(set)h(or)f(unset)f
-(shell)h(attributes.)41 b(Options,)29 b(if)g(sp)s(ec-)630
-2094 y(i\014ed,)h(ha)m(v)m(e)i(the)e(follo)m(wing)i(meanings:)630
-2248 y Fs(-a)384 b Ft(Mark)32 b(v)-5 b(ariables)33 b(and)e(function)h
+(v)-5 b(ariables.)630 5230 y(Read-only)37 b(v)-5 b(ariables)37
+b(cannot)h(b)s(e)e(reset.)59 b(In)36 b Fm(posix)g Fu(mo)s(de,)i(only)f
+(shell)f(v)-5 b(ariables)38 b(are)630 5340 y(listed.)p
+eop end
+%%Page: 59 65
+TeXDict begin 59 64 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(59)630 299 y(When)29
+b(options)g(are)g(supplied,)f(they)h(set)h(or)f(unset)f(shell)h
+(attributes.)41 b(Options,)29 b(if)g(sp)s(ec-)630 408
+y(i\014ed,)h(ha)m(v)m(e)i(the)e(follo)m(wing)i(meanings:)630
+555 y Ft(-a)384 b Fu(Mark)32 b(v)-5 b(ariables)33 b(and)e(function)h
(whic)m(h)g(are)g(mo)s(di\014ed)f(or)h(created)h(for)f(ex-)1110
-2357 y(p)s(ort)e(to)h(the)f(en)m(vironmen)m(t)h(of)g(subsequen)m(t)f
-(commands.)630 2511 y Fs(-b)384 b Ft(Cause)44 b(the)h(status)g(of)f
+664 y(p)s(ort)e(to)h(the)f(en)m(vironmen)m(t)h(of)g(subsequen)m(t)f
+(commands.)630 810 y Ft(-b)384 b Fu(Cause)44 b(the)h(status)g(of)f
(terminated)h(bac)m(kground)g(jobs)f(to)h(b)s(e)f(rep)s(orted)1110
-2621 y(immediately)-8 b(,)30 b(rather)d(than)f(b)s(efore)h(prin)m(ting)
-g(the)g(next)g(primary)g(prompt.)630 2775 y Fs(-e)384
-b Ft(Exit)65 b(immediately)g(if)f(a)h(pip)s(eline)e(\(see)i(Section)g
-(3.2.2)h([Pip)s(elines],)1110 2885 y(page)56 b(8\),)62
+920 y(immediately)-8 b(,)30 b(rather)d(than)f(b)s(efore)h(prin)m(ting)g
+(the)g(next)g(primary)g(prompt.)630 1066 y Ft(-e)384
+b Fu(Exit)65 b(immediately)g(if)f(a)h(pip)s(eline)e(\(see)i(Section)g
+(3.2.2)h([Pip)s(elines],)1110 1176 y(page)56 b(8\),)62
b(whic)m(h)55 b(ma)m(y)h(consist)f(of)h(a)f(single)h(simple)f(command)g
-(\(see)1110 2994 y(Section)30 b(3.2.1)i([Simple)d(Commands],)g(page)h
-(8\),)h(a)f(list)g(\(see)h(Section)f(3.2.3)1110 3104
+(\(see)1110 1285 y(Section)30 b(3.2.1)i([Simple)d(Commands],)g(page)h
+(8\),)h(a)f(list)g(\(see)h(Section)f(3.2.3)1110 1395
y([Lists],)66 b(page)59 b(9\),)67 b(or)58 b(a)h(comp)s(ound)e(command)h
-(\(see)h(Section)g(3.2.4)1110 3213 y([Comp)s(ound)67
+(\(see)h(Section)g(3.2.4)1110 1504 y([Comp)s(ound)67
b(Commands],)77 b(page)69 b(9\))g(returns)e(a)i(non-zero)g(status.)1110
-3323 y(The)41 b(shell)g(do)s(es)g(not)g(exit)h(if)f(the)h(command)f
-(that)h(fails)f(is)g(part)g(of)h(the)1110 3432 y(command)g(list)h
-(immediately)g(follo)m(wing)g(a)g Fs(while)e Ft(or)h
-Fs(until)e Ft(k)m(eyw)m(ord,)1110 3542 y(part)61 b(of)g(the)g(test)h
-(in)e(an)h Fs(if)f Ft(statemen)m(t,)71 b(part)61 b(of)g(an)m(y)g
-(command)1110 3652 y(executed)50 b(in)e(a)h Fs(&&)f Ft(or)h
-Fs(||)f Ft(list)h(except)g(the)g(command)g(follo)m(wing)h(the)1110
-3761 y(\014nal)37 b Fs(&&)g Ft(or)g Fs(||)p Ft(,)h(an)m(y)g(command)f
+1614 y(The)41 b(shell)g(do)s(es)g(not)g(exit)h(if)f(the)h(command)f
+(that)h(fails)f(is)g(part)g(of)h(the)1110 1724 y(command)g(list)h
+(immediately)g(follo)m(wing)g(a)g Ft(while)e Fu(or)h
+Ft(until)e Fu(k)m(eyw)m(ord,)1110 1833 y(part)61 b(of)g(the)g(test)h
+(in)e(an)h Ft(if)f Fu(statemen)m(t,)71 b(part)61 b(of)g(an)m(y)g
+(command)1110 1943 y(executed)50 b(in)e(a)h Ft(&&)f Fu(or)h
+Ft(||)f Fu(list)h(except)g(the)g(command)g(follo)m(wing)h(the)1110
+2052 y(\014nal)37 b Ft(&&)g Fu(or)g Ft(||)p Fu(,)h(an)m(y)g(command)f
(in)g(a)g(pip)s(eline)g(but)g(the)g(last,)j(or)e(if)f(the)1110
-3871 y(command's)c(return)f(status)h(is)g(b)s(eing)g(in)m(v)m(erted)h
-(with)e Fs(!)p Ft(.)48 b(If)33 b(a)g(comp)s(ound)1110
-3980 y(command)g(other)g(than)f(a)i(subshell)d(returns)h(a)h(non-zero)h
-(status)f(b)s(ecause)1110 4090 y(a)g(command)f(failed)h(while)f(`)p
-Fs(-e)p Ft(')h(w)m(as)f(b)s(eing)g(ignored,)h(the)g(shell)g(do)s(es)f
-(not)1110 4200 y(exit.)42 b(A)30 b(trap)g(on)h Fs(ERR)p
-Ft(,)e(if)i(set,)g(is)f(executed)i(b)s(efore)e(the)g(shell)h(exits.)
-1110 4331 y(This)f(option)h(applies)f(to)h(the)g(shell)g(en)m(vironmen)
-m(t)g(and)f(eac)m(h)h(subshell)f(en-)1110 4441 y(vironmen)m(t)j
-(separately)i(\(see)f(Section)g(3.7.3)h([Command)d(Execution)i(En-)1110
-4551 y(vironmen)m(t],)i(page)f(36\),)i(and)d(ma)m(y)h(cause)f
-(subshells)g(to)h(exit)g(b)s(efore)f(exe-)1110 4660 y(cuting)d(all)g
-(the)g(commands)f(in)g(the)g(subshell.)1110 4792 y(If)41
+2162 y(command's)c(return)f(status)h(is)g(b)s(eing)g(in)m(v)m(erted)h
+(with)e Ft(!)p Fu(.)48 b(If)33 b(a)g(comp)s(ound)1110
+2271 y(command)g(other)g(than)f(a)i(subshell)d(returns)h(a)h(non-zero)h
+(status)f(b)s(ecause)1110 2381 y(a)k(command)g(failed)g(while)g
+Ft(-e)f Fu(w)m(as)i(b)s(eing)e(ignored,)j(the)e(shell)g(do)s(es)g(not)
+1110 2491 y(exit.)42 b(A)30 b(trap)g(on)h Ft(ERR)p Fu(,)e(if)i(set,)g
+(is)f(executed)i(b)s(efore)e(the)g(shell)h(exits.)1110
+2619 y(This)f(option)h(applies)f(to)h(the)g(shell)g(en)m(vironmen)m(t)g
+(and)f(eac)m(h)h(subshell)f(en-)1110 2728 y(vironmen)m(t)j(separately)i
+(\(see)f(Section)g(3.7.3)h([Command)d(Execution)i(En-)1110
+2838 y(vironmen)m(t],)i(page)f(36\),)i(and)d(ma)m(y)h(cause)f
+(subshells)g(to)h(exit)g(b)s(efore)f(exe-)1110 2947 y(cuting)d(all)g
+(the)g(commands)f(in)g(the)g(subshell.)1110 3075 y(If)41
b(a)g(comp)s(ound)e(command)i(or)g(shell)g(function)g(executes)h(in)f
-(a)g(con)m(text)1110 4902 y(where)26 b(`)p Fs(-e)p Ft(')g(is)g(b)s
-(eing)g(ignored,)i(none)e(of)g(the)g(commands)g(executed)h(within)1110
-5011 y(the)35 b(comp)s(ound)f(command)h(or)g(function)f(b)s(o)s(dy)g
-(will)h(b)s(e)f(a\013ected)j(b)m(y)e(the)1110 5121 y(`)p
-Fs(-e)p Ft(')41 b(setting,)k(ev)m(en)d(if)g(`)p Fs(-e)p
-Ft(')f(is)g(set)h(and)e(a)i(command)f(returns)f(a)i(failure)1110
-5230 y(status.)60 b(If)37 b(a)g(comp)s(ound)e(command)i(or)g(shell)g
-(function)f(sets)h(`)p Fs(-e)p Ft(')g(while)1110 5340
-y(executing)f(in)f(a)g(con)m(text)i(where)d(`)p Fs(-e)p
-Ft(')h(is)g(ignored,)h(that)f(setting)h(will)g(not)p
-eop end
-%%Page: 60 66
-TeXDict begin 60 65 bop 150 -116 a Ft(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(60)1110 299 y(ha)m(v)m(e)26
-b(an)m(y)f(e\013ect)h(un)m(til)f(the)g(comp)s(ound)e(command)h(or)h
-(the)g(command)f(con-)1110 408 y(taining)31 b(the)g(function)f(call)h
-(completes.)630 564 y Fs(-f)384 b Ft(Disable)31 b(\014lename)g
-(expansion)f(\(globbing\).)630 720 y Fs(-h)384 b Ft(Lo)s(cate)33
+(a)g(con)m(text)1110 3185 y(where)31 b Ft(-e)g Fu(is)g(b)s(eing)g
+(ignored,)h(none)f(of)h(the)f(commands)g(executed)h(within)1110
+3294 y(the)j(comp)s(ound)f(command)h(or)g(function)f(b)s(o)s(dy)g(will)
+h(b)s(e)f(a\013ected)j(b)m(y)e(the)1110 3404 y Ft(-e)25
+b Fu(setting,)j(ev)m(en)e(if)g Ft(-e)f Fu(is)h(set)g(and)f(a)h(command)
+g(returns)e(a)i(failure)g(status.)1110 3513 y(If)32 b(a)i(comp)s(ound)d
+(command)i(or)g(shell)g(function)f(sets)i Ft(-e)e Fu(while)h(executing)
+1110 3623 y(in)40 b(a)h(con)m(text)i(where)d Ft(-e)g
+Fu(is)h(ignored,)j(that)d(setting)h(will)f(not)g(ha)m(v)m(e)h(an)m(y)
+1110 3733 y(e\013ect)g(un)m(til)e(the)h(comp)s(ound)e(command)h(or)g
+(the)g(command)g(con)m(taining)1110 3842 y(the)31 b(function)f(call)h
+(completes.)630 3988 y Ft(-f)384 b Fu(Disable)31 b(\014lename)g
+(expansion)f(\(globbing\).)630 4134 y Ft(-h)384 b Fu(Lo)s(cate)33
b(and)e(remem)m(b)s(er)h(\(hash\))g(commands)f(as)h(they)g(are)g(lo)s
-(ok)m(ed)h(up)e(for)1110 830 y(execution.)42 b(This)29
-b(option)i(is)g(enabled)f(b)m(y)g(default.)630 985 y
-Fs(-k)384 b Ft(All)34 b(argumen)m(ts)g(in)f(the)h(form)f(of)g
+(ok)m(ed)h(up)e(for)1110 4244 y(execution.)42 b(This)29
+b(option)i(is)g(enabled)f(b)m(y)g(default.)630 4390 y
+Ft(-k)384 b Fu(All)34 b(argumen)m(ts)g(in)f(the)h(form)f(of)g
(assignmen)m(t)h(statemen)m(ts)i(are)d(placed)h(in)1110
-1095 y(the)k(en)m(vironmen)m(t)g(for)g(a)g(command,)h(not)f(just)f
-(those)i(that)f(precede)g(the)1110 1204 y(command)30
-b(name.)630 1360 y Fs(-m)384 b Ft(Job)32 b(con)m(trol)h(is)f(enabled)g
-(\(see)h(Chapter)f(7)g([Job)g(Con)m(trol],)i(page)e(98\).)47
-b(All)1110 1470 y(pro)s(cesses)27 b(run)f(in)i(a)g(separate)g(pro)s
+4500 y(the)k(en)m(vironmen)m(t)g(for)g(a)g(command,)h(not)f(just)f
+(those)i(that)f(precede)g(the)1110 4609 y(command)30
+b(name.)630 4756 y Ft(-m)384 b Fu(Job)32 b(con)m(trol)h(is)f(enabled)g
+(\(see)h(Chapter)f(7)g([Job)g(Con)m(trol],)i(page)e(97\).)47
+b(All)1110 4865 y(pro)s(cesses)27 b(run)f(in)i(a)g(separate)g(pro)s
(cess)f(group.)40 b(When)27 b(a)h(bac)m(kground)f(job)1110
-1579 y(completes,)32 b(the)f(shell)f(prin)m(ts)g(a)h(line)f(con)m
-(taining)i(its)f(exit)g(status.)630 1735 y Fs(-n)384
-b Ft(Read)21 b(commands)f(but)g(do)h(not)g(execute)h(them;)i(this)d(ma)
-m(y)g(b)s(e)f(used)g(to)h(c)m(hec)m(k)1110 1845 y(a)42
+4975 y(completes,)32 b(the)f(shell)f(prin)m(ts)g(a)h(line)f(con)m
+(taining)i(its)f(exit)g(status.)630 5121 y Ft(-n)384
+b Fu(Read)21 b(commands)f(but)g(do)h(not)g(execute)h(them;)i(this)d(ma)
+m(y)g(b)s(e)f(used)g(to)h(c)m(hec)m(k)1110 5230 y(a)42
b(script)g(for)g(syn)m(tax)g(errors.)75 b(This)41 b(option)h(is)g
-(ignored)g(b)m(y)g(in)m(teractiv)m(e)1110 1954 y(shells.)630
-2110 y Fs(-o)30 b Fi(option-name)1110 2220 y Ft(Set)h(the)f(option)h
-(corresp)s(onding)e(to)i Fq(option-name)5 b Ft(:)1110
-2375 y Fs(allexport)1590 2485 y Ft(Same)30 b(as)h Fs(-a)p
-Ft(.)1110 2641 y Fs(braceexpand)1590 2750 y Ft(Same)f(as)h
-Fs(-B)p Ft(.)1110 2906 y Fs(emacs)240 b Ft(Use)25 b(an)f
-Fs(emacs)p Ft(-st)m(yle)h(line)f(editing)h(in)m(terface)h(\(see)g
-(Chapter)e(8)1590 3016 y([Command)33 b(Line)g(Editing],)h(page)h
-(102\).)51 b(This)32 b(also)i(a\013ects)1590 3125 y(the)d(editing)g(in)
-m(terface)h(used)d(for)h Fs(read)f(-e)p Ft(.)1110 3281
-y Fs(errexit)144 b Ft(Same)30 b(as)h Fs(-e)p Ft(.)1110
-3437 y Fs(errtrace)96 b Ft(Same)30 b(as)h Fs(-E)p Ft(.)1110
-3592 y Fs(functrace)1590 3702 y Ft(Same)f(as)h Fs(-T)p
-Ft(.)1110 3858 y Fs(hashall)144 b Ft(Same)30 b(as)h Fs(-h)p
-Ft(.)1110 4013 y Fs(histexpand)1590 4123 y Ft(Same)f(as)h
-Fs(-H)p Ft(.)1110 4279 y Fs(history)144 b Ft(Enable)39
-b(command)g(history)-8 b(,)42 b(as)d(describ)s(ed)f(in)h(Section)h(9.1)
-1590 4388 y([Bash)d(History)g(F)-8 b(acilities],)41 b(page)c(134.)60
-b(This)36 b(option)h(is)f(on)1590 4498 y(b)m(y)30 b(default)h(in)f(in)m
-(teractiv)m(e)j(shells.)1110 4654 y Fs(ignoreeof)1590
-4763 y Ft(An)d(in)m(teractiv)m(e)j(shell)e(will)g(not)f(exit)h(up)s(on)
-e(reading)i(EOF.)1110 4919 y Fs(keyword)144 b Ft(Same)30
-b(as)h Fs(-k)p Ft(.)1110 5075 y Fs(monitor)144 b Ft(Same)30
-b(as)h Fs(-m)p Ft(.)1110 5230 y Fs(noclobber)1590 5340
-y Ft(Same)f(as)h Fs(-C)p Ft(.)p eop end
-%%Page: 61 67
-TeXDict begin 61 66 bop 150 -116 a Ft(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(61)1110 299 y
-Fs(noexec)192 b Ft(Same)30 b(as)h Fs(-n)p Ft(.)1110 470
-y Fs(noglob)192 b Ft(Same)30 b(as)h Fs(-f)p Ft(.)1110
-641 y Fs(nolog)240 b Ft(Curren)m(tly)30 b(ignored.)1110
-813 y Fs(notify)192 b Ft(Same)30 b(as)h Fs(-b)p Ft(.)1110
-984 y Fs(nounset)144 b Ft(Same)30 b(as)h Fs(-u)p Ft(.)1110
-1155 y Fs(onecmd)192 b Ft(Same)30 b(as)h Fs(-t)p Ft(.)1110
-1326 y Fs(physical)96 b Ft(Same)30 b(as)h Fs(-P)p Ft(.)1110
-1498 y Fs(pipefail)96 b Ft(If)44 b(set,)k(the)d(return)e(v)-5
+(ignored)g(b)m(y)g(in)m(teractiv)m(e)1110 5340 y(shells.)p
+eop end
+%%Page: 60 66
+TeXDict begin 60 65 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(60)630 299 y Ft(-o)30
+b Fj(option-name)1110 408 y Fu(Set)h(the)f(option)h(corresp)s(onding)e
+(to)i Fr(option-name)5 b Fu(:)1110 575 y Ft(allexport)1590
+685 y Fu(Same)30 b(as)h Ft(-a)p Fu(.)1110 852 y Ft(braceexpand)1590
+962 y Fu(Same)f(as)h Ft(-B)p Fu(.)1110 1129 y Ft(emacs)240
+b Fu(Use)25 b(an)f Ft(emacs)p Fu(-st)m(yle)h(line)f(editing)h(in)m
+(terface)h(\(see)g(Chapter)e(8)1590 1238 y([Command)33
+b(Line)g(Editing],)h(page)h(101\).)51 b(This)32 b(also)i(a\013ects)1590
+1348 y(the)d(editing)g(in)m(terface)h(used)d(for)h Ft(read)f(-e)p
+Fu(.)1110 1515 y Ft(errexit)144 b Fu(Same)30 b(as)h Ft(-e)p
+Fu(.)1110 1682 y Ft(errtrace)96 b Fu(Same)30 b(as)h Ft(-E)p
+Fu(.)1110 1849 y Ft(functrace)1590 1958 y Fu(Same)f(as)h
+Ft(-T)p Fu(.)1110 2125 y Ft(hashall)144 b Fu(Same)30
+b(as)h Ft(-h)p Fu(.)1110 2292 y Ft(histexpand)1590 2402
+y Fu(Same)f(as)h Ft(-H)p Fu(.)1110 2569 y Ft(history)144
+b Fu(Enable)39 b(command)g(history)-8 b(,)42 b(as)d(describ)s(ed)f(in)h
+(Section)h(9.1)1590 2679 y([Bash)d(History)g(F)-8 b(acilities],)41
+b(page)c(133.)60 b(This)36 b(option)h(is)f(on)1590 2788
+y(b)m(y)30 b(default)h(in)f(in)m(teractiv)m(e)j(shells.)1110
+2955 y Ft(ignoreeof)1590 3065 y Fu(An)d(in)m(teractiv)m(e)j(shell)e
+(will)g(not)f(exit)h(up)s(on)e(reading)i(EOF.)1110 3232
+y Ft(keyword)144 b Fu(Same)30 b(as)h Ft(-k)p Fu(.)1110
+3399 y Ft(monitor)144 b Fu(Same)30 b(as)h Ft(-m)p Fu(.)1110
+3566 y Ft(noclobber)1590 3675 y Fu(Same)f(as)h Ft(-C)p
+Fu(.)1110 3842 y Ft(noexec)192 b Fu(Same)30 b(as)h Ft(-n)p
+Fu(.)1110 4009 y Ft(noglob)192 b Fu(Same)30 b(as)h Ft(-f)p
+Fu(.)1110 4176 y Ft(nolog)240 b Fu(Curren)m(tly)30 b(ignored.)1110
+4343 y Ft(notify)192 b Fu(Same)30 b(as)h Ft(-b)p Fu(.)1110
+4510 y Ft(nounset)144 b Fu(Same)30 b(as)h Ft(-u)p Fu(.)1110
+4677 y Ft(onecmd)192 b Fu(Same)30 b(as)h Ft(-t)p Fu(.)1110
+4844 y Ft(physical)96 b Fu(Same)30 b(as)h Ft(-P)p Fu(.)1110
+5011 y Ft(pipefail)96 b Fu(If)44 b(set,)k(the)d(return)e(v)-5
b(alue)45 b(of)f(a)h(pip)s(eline)e(is)i(the)f(v)-5 b(alue)45
-b(of)1590 1607 y(the)33 b(last)h(\(righ)m(tmost\))h(command)e(to)h
-(exit)g(with)f(a)g(non-zero)1590 1717 y(status,)28 b(or)f(zero)g(if)f
+b(of)1590 5121 y(the)33 b(last)h(\(righ)m(tmost\))h(command)e(to)h
+(exit)g(with)f(a)g(non-zero)1590 5230 y(status,)28 b(or)f(zero)g(if)f
(all)i(commands)e(in)g(the)h(pip)s(eline)f(exit)i(suc-)1590
-1826 y(cessfully)-8 b(.)41 b(This)30 b(option)h(is)f(disabled)g(b)m(y)h
-(default.)1110 1998 y Fs(posix)240 b Ft(Change)30 b(the)g(b)s(eha)m
-(vior)h(of)f(Bash)g(where)g(the)g(default)h(op)s(era-)1590
-2107 y(tion)25 b(di\013ers)f(from)g(the)h Fl(posix)f
-Ft(standard)f(to)i(matc)m(h)h(the)f(stan-)1590 2217 y(dard)32
-b(\(see)i(Section)g(6.11)h([Bash)e(POSIX)f(Mo)s(de],)j(page)e(94\).)
-1590 2326 y(This)k(is)g(in)m(tended)g(to)h(mak)m(e)g(Bash)g(b)s(eha)m
-(v)m(e)g(as)g(a)f(strict)h(su-)1590 2436 y(p)s(erset)30
-b(of)h(that)f(standard.)1110 2607 y Fs(privileged)1590
-2717 y Ft(Same)g(as)h Fs(-p)p Ft(.)1110 2888 y Fs(verbose)144
-b Ft(Same)30 b(as)h Fs(-v)p Ft(.)1110 3059 y Fs(vi)384
-b Ft(Use)36 b(a)g Fs(vi)p Ft(-st)m(yle)g(line)g(editing)g(in)m
-(terface.)58 b(This)35 b(also)h(a\013ects)1590 3169 y(the)31
-b(editing)g(in)m(terface)h(used)d(for)h Fs(read)f(-e)p
-Ft(.)1110 3340 y Fs(xtrace)192 b Ft(Same)30 b(as)h Fs(-x)p
-Ft(.)630 3511 y Fs(-p)384 b Ft(T)-8 b(urn)33 b(on)h(privileged)h(mo)s
-(de.)51 b(In)34 b(this)g(mo)s(de,)h(the)f Fs($BASH_ENV)e
-Ft(and)h Fs($ENV)1110 3621 y Ft(\014les)23 b(are)h(not)f(pro)s(cessed,)
+5340 y(cessfully)-8 b(.)41 b(This)30 b(option)h(is)f(disabled)g(b)m(y)h
+(default.)p eop end
+%%Page: 61 67
+TeXDict begin 61 66 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(61)1110 299 y
+Ft(posix)240 b Fu(Change)30 b(the)g(b)s(eha)m(vior)h(of)f(Bash)g(where)
+g(the)g(default)h(op)s(era-)1590 408 y(tion)25 b(di\013ers)f(from)g
+(the)h Fm(posix)f Fu(standard)f(to)i(matc)m(h)h(the)f(stan-)1590
+518 y(dard)32 b(\(see)i(Section)g(6.11)h([Bash)e(POSIX)f(Mo)s(de],)j
+(page)e(94\).)1590 628 y(This)k(is)g(in)m(tended)g(to)h(mak)m(e)g(Bash)
+g(b)s(eha)m(v)m(e)g(as)g(a)f(strict)h(su-)1590 737 y(p)s(erset)30
+b(of)h(that)f(standard.)1110 911 y Ft(privileged)1590
+1020 y Fu(Same)g(as)h Ft(-p)p Fu(.)1110 1194 y Ft(verbose)144
+b Fu(Same)30 b(as)h Ft(-v)p Fu(.)1110 1367 y Ft(vi)384
+b Fu(Use)36 b(a)g Ft(vi)p Fu(-st)m(yle)g(line)g(editing)g(in)m
+(terface.)58 b(This)35 b(also)h(a\013ects)1590 1477 y(the)31
+b(editing)g(in)m(terface)h(used)d(for)h Ft(read)f(-e)p
+Fu(.)1110 1650 y Ft(xtrace)192 b Fu(Same)30 b(as)h Ft(-x)p
+Fu(.)630 1824 y Ft(-p)384 b Fu(T)-8 b(urn)33 b(on)h(privileged)h(mo)s
+(de.)51 b(In)34 b(this)g(mo)s(de,)h(the)f Ft($BASH_ENV)e
+Fu(and)h Ft($ENV)1110 1934 y Fu(\014les)23 b(are)h(not)f(pro)s(cessed,)
h(shell)g(functions)e(are)i(not)f(inherited)g(from)f(the)i(en-)1110
-3730 y(vironmen)m(t,)h(and)e(the)g Fs(SHELLOPTS)p Ft(,)f
-Fs(BASHOPTS)p Ft(,)h Fs(CDPATH)e Ft(and)i Fs(GLOBIGNORE)1110
-3840 y Ft(v)-5 b(ariables,)23 b(if)e(they)g(app)s(ear)f(in)g(the)h(en)m
+2043 y(vironmen)m(t,)h(and)e(the)g Ft(SHELLOPTS)p Fu(,)f
+Ft(BASHOPTS)p Fu(,)h Ft(CDPATH)e Fu(and)i Ft(GLOBIGNORE)1110
+2153 y Fu(v)-5 b(ariables,)23 b(if)e(they)g(app)s(ear)f(in)g(the)h(en)m
(vironmen)m(t,)i(are)e(ignored.)38 b(If)20 b(the)h(shell)1110
-3950 y(is)37 b(started)h(with)f(the)g(e\013ectiv)m(e)j(user)d
+2262 y(is)37 b(started)h(with)f(the)g(e\013ectiv)m(e)j(user)d
(\(group\))g(id)g(not)g(equal)h(to)g(the)f(real)1110
-4059 y(user)d(\(group\))g(id,)i(and)e(the)g(`)p Fs(-p)p
-Ft(')g(option)h(is)g(not)f(supplied,)h(these)g(actions)1110
-4169 y(are)d(tak)m(en)i(and)d(the)h(e\013ectiv)m(e)j(user)c(id)h(is)g
-(set)h(to)f(the)h(real)f(user)g(id.)45 b(If)32 b(the)1110
-4278 y(`)p Fs(-p)p Ft(')e(option)i(is)e(supplied)g(at)h(startup,)f(the)
-h(e\013ectiv)m(e)i(user)d(id)h(is)f(not)h(reset.)1110
-4388 y(T)-8 b(urning)35 b(this)i(option)g(o\013)g(causes)g(the)g
-(e\013ectiv)m(e)i(user)d(and)g(group)g(ids)g(to)1110
-4498 y(b)s(e)30 b(set)h(to)g(the)f(real)h(user)f(and)g(group)g(ids.)630
-4669 y Fs(-t)384 b Ft(Exit)31 b(after)g(reading)f(and)g(executing)h
-(one)g(command.)630 4840 y Fs(-u)384 b Ft(T)-8 b(reat)25
-b(unset)e(v)-5 b(ariables)25 b(and)e(parameters)h(other)h(than)e(the)h
-(sp)s(ecial)h(param-)1110 4950 y(eters)35 b(`)p Fs(@)p
-Ft(')f(or)g(`)p Fs(*)p Ft(')h(as)f(an)g(error)g(when)f(p)s(erforming)g
-(parameter)i(expansion.)1110 5059 y(An)28 b(error)h(message)g(will)g(b)
-s(e)f(written)h(to)h(the)e(standard)g(error,)h(and)f(a)h(non-)1110
-5169 y(in)m(teractiv)m(e)k(shell)e(will)g(exit.)630 5340
-y Fs(-v)384 b Ft(Prin)m(t)30 b(shell)h(input)e(lines)i(as)g(they)f(are)
-h(read.)p eop end
+2372 y(user)h(\(group\))h(id,)i(and)d(the)h Ft(-p)f Fu(option)i(is)e
+(not)i(supplied,)f(these)h(actions)1110 2482 y(are)32
+b(tak)m(en)i(and)d(the)h(e\013ectiv)m(e)j(user)c(id)h(is)g(set)h(to)f
+(the)h(real)f(user)g(id.)45 b(If)32 b(the)1110 2591 y
+Ft(-p)i Fu(option)h(is)g(supplied)f(at)h(startup,)h(the)f(e\013ectiv)m
+(e)i(user)d(id)g(is)h(not)g(reset.)1110 2701 y(T)-8 b(urning)35
+b(this)i(option)g(o\013)g(causes)g(the)g(e\013ectiv)m(e)i(user)d(and)g
+(group)g(ids)g(to)1110 2810 y(b)s(e)30 b(set)h(to)g(the)f(real)h(user)f
+(and)g(group)g(ids.)630 2984 y Ft(-t)384 b Fu(Exit)31
+b(after)g(reading)f(and)g(executing)h(one)g(command.)630
+3157 y Ft(-u)384 b Fu(T)-8 b(reat)25 b(unset)e(v)-5 b(ariables)25
+b(and)e(parameters)h(other)h(than)e(the)h(sp)s(ecial)h(param-)1110
+3267 y(eters)35 b(`)p Ft(@)p Fu(')f(or)g(`)p Ft(*)p Fu(')h(as)f(an)g
+(error)g(when)f(p)s(erforming)g(parameter)i(expansion.)1110
+3377 y(An)28 b(error)h(message)g(will)g(b)s(e)f(written)h(to)h(the)e
+(standard)g(error,)h(and)f(a)h(non-)1110 3486 y(in)m(teractiv)m(e)k
+(shell)e(will)g(exit.)630 3660 y Ft(-v)384 b Fu(Prin)m(t)30
+b(shell)h(input)e(lines)i(as)g(they)f(are)h(read.)630
+3833 y Ft(-x)384 b Fu(Prin)m(t)21 b(a)h(trace)h(of)f(simple)f
+(commands,)i Ft(for)e Fu(commands,)i Ft(case)d Fu(commands,)1110
+3943 y Ft(select)29 b Fu(commands,)j(and)e(arithmetic)j
+Ft(for)d Fu(commands)h(and)f(their)i(argu-)1110 4052
+y(men)m(ts)h(or)f(asso)s(ciated)i(w)m(ord)e(lists)h(after)g(they)f(are)
+h(expanded)f(and)f(b)s(efore)1110 4162 y(they)i(are)g(executed.)49
+b(The)32 b(v)-5 b(alue)33 b(of)g(the)g Ft(PS4)f Fu(v)-5
+b(ariable)34 b(is)f(expanded)f(and)1110 4271 y(the)24
+b(resultan)m(t)h(v)-5 b(alue)24 b(is)g(prin)m(ted)g(b)s(efore)f(the)h
+(command)g(and)f(its)i(expanded)1110 4381 y(argumen)m(ts.)630
+4555 y Ft(-B)384 b Fu(The)41 b(shell)g(will)g(p)s(erform)f(brace)h
+(expansion)g(\(see)h(Section)g(3.5.1)g([Brace)1110 4664
+y(Expansion],)30 b(page)h(21\).)42 b(This)30 b(option)h(is)f(on)g(b)m
+(y)h(default.)630 4838 y Ft(-C)384 b Fu(Prev)m(en)m(t)25
+b(output)e(redirection)h(using)f(`)p Ft(>)p Fu(',)i(`)p
+Ft(>&)p Fu(',)g(and)e(`)p Ft(<>)p Fu(')g(from)h(o)m(v)m(erwriting)1110
+4947 y(existing)31 b(\014les.)630 5121 y Ft(-E)384 b
+Fu(If)39 b(set,)j(an)m(y)e(trap)f(on)g Ft(ERR)g Fu(is)g(inherited)g(b)m
+(y)g(shell)h(functions,)h(command)1110 5230 y(substitutions,)35
+b(and)e(commands)g(executed)i(in)f(a)g(subshell)f(en)m(vironmen)m(t.)
+1110 5340 y(The)d Ft(ERR)f Fu(trap)i(is)f(normally)h(not)f(inherited)g
+(in)g(suc)m(h)g(cases.)p eop end
%%Page: 62 68
-TeXDict begin 62 67 bop 150 -116 a Ft(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(62)630 299 y Fs(-x)384
-b Ft(Prin)m(t)21 b(a)h(trace)h(of)f(simple)f(commands,)i
-Fs(for)e Ft(commands,)i Fs(case)d Ft(commands,)1110 408
-y Fs(select)29 b Ft(commands,)j(and)e(arithmetic)j Fs(for)d
-Ft(commands)h(and)f(their)i(argu-)1110 518 y(men)m(ts)h(or)f(asso)s
-(ciated)i(w)m(ord)e(lists)h(after)g(they)f(are)h(expanded)f(and)f(b)s
-(efore)1110 628 y(they)i(are)g(executed.)49 b(The)32
-b(v)-5 b(alue)33 b(of)g(the)g Fs(PS4)f Ft(v)-5 b(ariable)34
-b(is)f(expanded)f(and)1110 737 y(the)24 b(resultan)m(t)h(v)-5
-b(alue)24 b(is)g(prin)m(ted)g(b)s(efore)f(the)h(command)g(and)f(its)i
-(expanded)1110 847 y(argumen)m(ts.)630 1000 y Fs(-B)384
-b Ft(The)41 b(shell)g(will)g(p)s(erform)f(brace)h(expansion)g(\(see)h
-(Section)g(3.5.1)g([Brace)1110 1110 y(Expansion],)30
-b(page)h(21\).)42 b(This)30 b(option)h(is)f(on)g(b)m(y)h(default.)630
-1263 y Fs(-C)384 b Ft(Prev)m(en)m(t)25 b(output)e(redirection)h(using)f
-(`)p Fs(>)p Ft(',)i(`)p Fs(>&)p Ft(',)g(and)e(`)p Fs(<>)p
-Ft(')g(from)h(o)m(v)m(erwriting)1110 1373 y(existing)31
-b(\014les.)630 1526 y Fs(-E)384 b Ft(If)39 b(set,)j(an)m(y)e(trap)f(on)
-g Fs(ERR)g Ft(is)g(inherited)g(b)m(y)g(shell)h(functions,)h(command)
-1110 1636 y(substitutions,)35 b(and)e(commands)g(executed)i(in)f(a)g
-(subshell)f(en)m(vironmen)m(t.)1110 1745 y(The)d Fs(ERR)f
-Ft(trap)i(is)f(normally)h(not)f(inherited)g(in)g(suc)m(h)g(cases.)630
-1899 y Fs(-H)384 b Ft(Enable)38 b(`)p Fs(!)p Ft(')h(st)m(yle)h(history)
-e(substitution)g(\(see)h(Section)h(9.3)f([History)g(In-)1110
-2008 y(teraction],)g(page)d(136\).)57 b(This)34 b(option)i(is)f(on)g(b)
-m(y)h(default)f(for)g(in)m(teractiv)m(e)1110 2118 y(shells.)630
-2271 y Fs(-P)384 b Ft(If)39 b(set,)j(do)d(not)g(resolv)m(e)i(sym)m(b)s
-(olic)e(links)g(when)f(p)s(erforming)g(commands)1110
-2381 y(suc)m(h)29 b(as)h Fs(cd)f Ft(whic)m(h)g(c)m(hange)h(the)g
-(curren)m(t)f(directory)-8 b(.)42 b(The)28 b(ph)m(ysical)j(direc-)1110
-2491 y(tory)j(is)g(used)f(instead.)52 b(By)34 b(default,)h(Bash)f
-(follo)m(ws)h(the)f(logical)i(c)m(hain)f(of)1110 2600
-y(directories)j(when)d(p)s(erforming)h(commands)g(whic)m(h)g(c)m(hange)
-i(the)f(curren)m(t)1110 2710 y(directory)-8 b(.)1110
-2841 y(F)g(or)31 b(example,)g(if)f(`)p Fs(/usr/sys)p
-Ft(')e(is)i(a)g(sym)m(b)s(olic)h(link)f(to)g(`)p Fs(/usr/local/sys)p
-Ft(')1110 2951 y(then:)1350 3082 y Fs($)47 b(cd)h(/usr/sys;)d(echo)i
-($PWD)1350 3192 y(/usr/sys)1350 3302 y($)g(cd)h(..;)f(pwd)1350
-3411 y(/usr)1110 3543 y Ft(If)30 b Fs(set)f(-P)h Ft(is)h(on,)f(then:)
-1350 3674 y Fs($)47 b(cd)h(/usr/sys;)d(echo)i($PWD)1350
-3784 y(/usr/local/sys)1350 3893 y($)g(cd)h(..;)f(pwd)1350
-4003 y(/usr/local)630 4156 y(-T)384 b Ft(If)34 b(set,)j(an)m(y)e(trap)g
-(on)g Fs(DEBUG)e Ft(and)i Fs(RETURN)e Ft(are)i(inherited)g(b)m(y)f
-(shell)i(func-)1110 4266 y(tions,)k(command)d(substitutions,)h(and)f
-(commands)g(executed)h(in)f(a)h(sub-)1110 4376 y(shell)33
-b(en)m(vironmen)m(t.)49 b(The)32 b Fs(DEBUG)g Ft(and)g
-Fs(RETURN)f Ft(traps)h(are)i(normally)f(not)1110 4485
-y(inherited)d(in)g(suc)m(h)g(cases.)630 4639 y Fs(--)384
-b Ft(If)31 b(no)h(argumen)m(ts)f(follo)m(w)i(this)f(option,)g(then)f
-(the)h(p)s(ositional)h(parameters)1110 4748 y(are)h(unset.)49
-b(Otherwise,)34 b(the)g(p)s(ositional)g(parameters)g(are)g(set)g(to)g
-(the)g Fq(ar-)1110 4858 y(gumen)m(ts)t Ft(,)d(ev)m(en)g(if)f(some)h(of)
-f(them)h(b)s(egin)f(with)g(a)g(`)p Fs(-)p Ft('.)630 5011
-y Fs(-)432 b Ft(Signal)45 b(the)g(end)f(of)h(options,)k(cause)c(all)h
-(remaining)e Fq(argumen)m(ts)49 b Ft(to)d(b)s(e)1110
-5121 y(assigned)38 b(to)h(the)f(p)s(ositional)h(parameters.)65
-b(The)37 b(`)p Fs(-x)p Ft(')h(and)g(`)p Fs(-v)p Ft(')g(options)1110
-5230 y(are)25 b(turned)e(o\013.)40 b(If)24 b(there)h(are)g(no)f
-(argumen)m(ts,)i(the)f(p)s(ositional)h(parameters)1110
-5340 y(remain)k(unc)m(hanged.)p eop end
-%%Page: 63 69
-TeXDict begin 63 68 bop 150 -116 a Ft(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(63)630 299 y(Using)27
-b(`)p Fs(+)p Ft(')h(rather)f(than)g(`)p Fs(-)p Ft(')g(causes)h(these)f
-(options)h(to)g(b)s(e)e(turned)g(o\013.)40 b(The)27 b(options)h(can)630
-408 y(also)36 b(b)s(e)f(used)f(up)s(on)g(in)m(v)m(o)s(cation)j(of)e
-(the)g(shell.)56 b(The)34 b(curren)m(t)h(set)h(of)f(options)h(ma)m(y)g
-(b)s(e)630 518 y(found)29 b(in)h Fs($-)p Ft(.)630 659
-y(The)43 b(remaining)h(N)f Fq(argumen)m(ts)48 b Ft(are)c(p)s(ositional)
-g(parameters)g(and)f(are)h(assigned,)j(in)630 769 y(order,)30
-b(to)h Fs($1)p Ft(,)f Fs($2)p Ft(,)36 b(.)22 b(.)g(.)42
-b Fs($N)p Ft(.)e(The)30 b(sp)s(ecial)h(parameter)g Fs(#)f
-Ft(is)g(set)h(to)g(N.)630 910 y(The)f(return)f(status)i(is)f(alw)m(a)m
+TeXDict begin 62 67 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(62)630 299 y Ft(-H)384
+b Fu(Enable)38 b(`)p Ft(!)p Fu(')h(st)m(yle)h(history)e(substitution)g
+(\(see)h(Section)h(9.3)f([History)g(In-)1110 408 y(teraction],)g(page)d
+(135\).)57 b(This)34 b(option)i(is)f(on)g(b)m(y)h(default)f(for)g(in)m
+(teractiv)m(e)1110 518 y(shells.)630 670 y Ft(-P)384
+b Fu(If)39 b(set,)j(do)d(not)g(resolv)m(e)i(sym)m(b)s(olic)e(links)g
+(when)f(p)s(erforming)g(commands)1110 780 y(suc)m(h)29
+b(as)h Ft(cd)f Fu(whic)m(h)g(c)m(hange)h(the)g(curren)m(t)f(directory)
+-8 b(.)42 b(The)28 b(ph)m(ysical)j(direc-)1110 890 y(tory)j(is)g(used)f
+(instead.)52 b(By)34 b(default,)h(Bash)f(follo)m(ws)h(the)f(logical)i
+(c)m(hain)f(of)1110 999 y(directories)j(when)d(p)s(erforming)h
+(commands)g(whic)m(h)g(c)m(hange)i(the)f(curren)m(t)1110
+1109 y(directory)-8 b(.)1110 1240 y(F)g(or)42 b(example,)i(if)d
+Ft(/usr/sys)e Fu(is)i(a)g(sym)m(b)s(olic)g(link)g(to)h
+Ft(/usr/local/sys)1110 1349 y Fu(then:)1350 1480 y Ft($)47
+b(cd)h(/usr/sys;)d(echo)i($PWD)1350 1590 y(/usr/sys)1350
+1700 y($)g(cd)h(..;)f(pwd)1350 1809 y(/usr)1110 1940
+y Fu(If)30 b Ft(set)f(-P)h Fu(is)h(on,)f(then:)1350 2071
+y Ft($)47 b(cd)h(/usr/sys;)d(echo)i($PWD)1350 2181 y(/usr/local/sys)
+1350 2290 y($)g(cd)h(..;)f(pwd)1350 2400 y(/usr/local)630
+2552 y(-T)384 b Fu(If)34 b(set,)j(an)m(y)e(trap)g(on)g
+Ft(DEBUG)e Fu(and)i Ft(RETURN)e Fu(are)i(inherited)g(b)m(y)f(shell)i
+(func-)1110 2662 y(tions,)k(command)d(substitutions,)h(and)f(commands)g
+(executed)h(in)f(a)h(sub-)1110 2771 y(shell)33 b(en)m(vironmen)m(t.)49
+b(The)32 b Ft(DEBUG)g Fu(and)g Ft(RETURN)f Fu(traps)h(are)i(normally)f
+(not)1110 2881 y(inherited)d(in)g(suc)m(h)g(cases.)630
+3033 y Ft(--)384 b Fu(If)44 b(no)g(argumen)m(ts)g(follo)m(w)i(this)e
+(option,)k(then)c(the)h(p)s(ositional)g(parame-)1110
+3143 y(ters)31 b(are)g(unset.)40 b(Otherwise,)31 b(the)f(p)s(ositional)
+i(parameters)f(are)f(set)h(to)h(the)1110 3253 y Fr(argumen)m(ts)p
+Fu(,)f(ev)m(en)g(if)f(some)h(of)g(them)f(b)s(egin)g(with)g(a)h(`)p
+Ft(-)p Fu('.)630 3405 y Ft(-)432 b Fu(Signal)45 b(the)g(end)f(of)h
+(options,)k(cause)c(all)h(remaining)e Fr(argumen)m(ts)49
+b Fu(to)d(b)s(e)1110 3515 y(assigned)33 b(to)h(the)g(p)s(ositional)g
+(parameters.)49 b(The)33 b Ft(-x)g Fu(and)f Ft(-v)h Fu(options)h(are)
+1110 3624 y(turned)k(o\013.)68 b(If)38 b(there)i(are)f(no)g(argumen)m
+(ts,)j(the)e(p)s(ositional)g(parameters)1110 3734 y(remain)30
+b(unc)m(hanged.)630 3886 y(Using)d(`)p Ft(+)p Fu(')h(rather)f(than)g(`)
+p Ft(-)p Fu(')g(causes)h(these)f(options)h(to)g(b)s(e)e(turned)g
+(o\013.)40 b(The)27 b(options)h(can)630 3996 y(also)36
+b(b)s(e)f(used)f(up)s(on)g(in)m(v)m(o)s(cation)j(of)e(the)g(shell.)56
+b(The)34 b(curren)m(t)h(set)h(of)f(options)h(ma)m(y)g(b)s(e)630
+4105 y(found)29 b(in)h Ft($-)p Fu(.)630 4236 y(The)43
+b(remaining)h(N)f Fr(argumen)m(ts)48 b Fu(are)c(p)s(ositional)g
+(parameters)g(and)f(are)h(assigned,)j(in)630 4346 y(order,)30
+b(to)h Ft($1)p Fu(,)f Ft($2)p Fu(,)36 b(.)22 b(.)g(.)42
+b Ft($N)p Fu(.)e(The)30 b(sp)s(ecial)h(parameter)g Ft(#)f
+Fu(is)g(set)h(to)g(N.)630 4477 y(The)f(return)f(status)i(is)f(alw)m(a)m
(ys)i(zero)f(unless)f(an)g(in)m(v)-5 b(alid)31 b(option)g(is)f
-(supplied.)150 1123 y Fj(4.3.2)63 b(The)41 b(Shopt)h(Builtin)150
-1270 y Ft(This)30 b(builtin)g(allo)m(ws)h(y)m(ou)g(to)g(c)m(hange)h
+(supplied.)150 4669 y Fk(4.3.2)63 b(The)41 b(Shopt)h(Builtin)150
+4816 y Fu(This)30 b(builtin)g(allo)m(ws)h(y)m(ou)g(to)g(c)m(hange)h
(additional)f(shell)f(optional)i(b)s(eha)m(vior.)150
-1450 y Fs(shopt)870 1591 y(shopt)46 b([-pqsu])g([-o])h([)p
-Fi(optname)56 b Fs(...)o(])630 1732 y Ft(T)-8 b(oggle)37
-b(the)e(v)-5 b(alues)35 b(of)g(settings)h(con)m(trolling)g(optional)g
-(shell)f(b)s(eha)m(vior.)55 b(The)34 b(settings)630 1842
-y(can)h(b)s(e)f(either)i(those)f(listed)h(b)s(elo)m(w,)g(or,)h(if)d
-(the)i(`)p Fs(-o)p Ft(')e(option)i(is)f(used,)g(those)h(a)m(v)-5
-b(ailable)630 1952 y(with)37 b(the)h(`)p Fs(-o)p Ft(')f(option)h(to)h
-(the)e Fs(set)g Ft(builtin)g(command)g(\(see)i(Section)f(4.3.1)h([The)f
-(Set)630 2061 y(Builtin],)27 b(page)f(59\).)40 b(With)26
-b(no)f(options,)i(or)e(with)g(the)g(`)p Fs(-p)p Ft(')g(option,)i(a)e
-(list)h(of)f(all)h(settable)630 2171 y(options)31 b(is)f(displa)m(y)m
-(ed,)h(with)f(an)g(indication)h(of)g(whether)e(or)i(not)f(eac)m(h)i(is)
-e(set.)41 b(The)30 b(`)p Fs(-p)p Ft(')630 2280 y(option)37
-b(causes)f(output)g(to)h(b)s(e)f(displa)m(y)m(ed)g(in)g(a)h(form)f
-(that)g(ma)m(y)h(b)s(e)f(reused)f(as)i(input.)630 2390
-y(Other)30 b(options)h(ha)m(v)m(e)g(the)g(follo)m(wing)h(meanings:)630
-2563 y Fs(-s)384 b Ft(Enable)30 b(\(set\))i(eac)m(h)f
-Fq(optname)5 b Ft(.)630 2736 y Fs(-u)384 b Ft(Disable)31
-b(\(unset\))g(eac)m(h)h Fq(optname)5 b Ft(.)630 2909
-y Fs(-q)384 b Ft(Suppresses)28 b(normal)h(output;)h(the)g(return)e
-(status)i(indicates)h(whether)e(the)1110 3019 y Fq(optname)37
-b Ft(is)31 b(set)h(or)f(unset.)43 b(If)31 b(m)m(ultiple)h
-Fq(optname)37 b Ft(argumen)m(ts)31 b(are)h(giv)m(en)1110
-3128 y(with)43 b(`)p Fs(-q)p Ft(',)j(the)d(return)f(status)h(is)g(zero)
-h(if)f(all)g Fq(optnames)k Ft(are)d(enabled;)1110 3238
-y(non-zero)31 b(otherwise.)630 3411 y Fs(-o)384 b Ft(Restricts)28
-b(the)g(v)-5 b(alues)28 b(of)f Fq(optname)33 b Ft(to)c(b)s(e)d(those)i
-(de\014ned)f(for)g(the)g(`)p Fs(-o)p Ft(')h(op-)1110
-3520 y(tion)23 b(to)h(the)f Fs(set)f Ft(builtin)h(\(see)g(Section)h
-(4.3.1)h([The)d(Set)i(Builtin],)h(page)e(59\).)630 3693
-y(If)40 b(either)g(`)p Fs(-s)p Ft(')g(or)g(`)p Fs(-u)p
-Ft(')g(is)g(used)g(with)g(no)g Fq(optname)45 b Ft(argumen)m(ts,)e
-Fs(shopt)c Ft(sho)m(ws)h(only)630 3803 y(those)31 b(options)g(whic)m(h)
-f(are)g(set)h(or)g(unset,)f(resp)s(ectiv)m(ely)-8 b(.)630
-3944 y(Unless)30 b(otherwise)h(noted,)g(the)g Fs(shopt)d
-Ft(options)j(are)g(disabled)f(\(o\013)7 b(\))32 b(b)m(y)e(default.)630
-4086 y(The)d(return)f(status)i(when)f(listing)h(options)g(is)f(zero)i
-(if)e(all)i Fq(optnames)i Ft(are)d(enabled,)g(non-)630
-4195 y(zero)40 b(otherwise.)66 b(When)39 b(setting)h(or)f(unsetting)g
-(options,)i(the)e(return)f(status)h(is)g(zero)630 4305
-y(unless)30 b(an)g Fq(optname)36 b Ft(is)30 b(not)h(a)g(v)-5
-b(alid)30 b(shell)h(option.)630 4446 y(The)f(list)h(of)f
-Fs(shopt)f Ft(options)i(is:)630 4619 y Fs(autocd)192
-b Ft(If)27 b(set,)h(a)g(command)f(name)g(that)h(is)f(the)g(name)g(of)h
-(a)f(directory)h(is)f(executed)1110 4729 y(as)j(if)f(it)h(w)m(ere)f
-(the)h(argumen)m(t)g(to)g(the)f Fs(cd)g Ft(command.)40
-b(This)29 b(option)g(is)h(only)1110 4838 y(used)g(b)m(y)g(in)m
-(teractiv)m(e)j(shells.)630 5011 y Fs(cdable_vars)1110
-5121 y Ft(If)h(this)h(is)g(set,)i(an)e(argumen)m(t)g(to)h(the)f
-Fs(cd)f Ft(builtin)h(command)f(that)i(is)f(not)1110 5230
+4968 y Ft(shopt)870 5099 y(shopt)46 b([-pqsu])g([-o])h([)p
+Fj(optname)e Ft(...])630 5230 y Fu(T)-8 b(oggle)37 b(the)e(v)-5
+b(alues)35 b(of)g(settings)h(con)m(trolling)g(optional)g(shell)f(b)s
+(eha)m(vior.)55 b(The)34 b(settings)630 5340 y(can)24
+b(b)s(e)g(either)h(those)f(listed)h(b)s(elo)m(w,)h(or,)f(if)g(the)f
+Ft(-o)f Fu(option)i(is)f(used,)h(those)g(a)m(v)-5 b(ailable)26
+b(with)p eop end
+%%Page: 63 69
+TeXDict begin 63 68 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(63)630 299 y(the)30
+b Ft(-o)f Fu(option)i(to)f(the)g Ft(set)f Fu(builtin)h(command)f(\(see)
+i(Section)g(4.3.1)g([The)f(Set)g(Builtin],)630 408 y(page)i(58\).)45
+b(With)32 b(no)f(options,)h(or)g(with)f(the)g Ft(-p)g
+Fu(option,)h(a)g(list)g(of)f(all)i(settable)g(options)630
+518 y(is)j(displa)m(y)m(ed,)h(with)f(an)f(indication)i(of)e(whether)g
+(or)h(not)g(eac)m(h)h(is)e(set.)57 b(The)35 b Ft(-p)g
+Fu(option)630 628 y(causes)i(output)e(to)i(b)s(e)e(displa)m(y)m(ed)i
+(in)f(a)g(form)g(that)h(ma)m(y)f(b)s(e)g(reused)f(as)h(input.)57
+b(Other)630 737 y(options)31 b(ha)m(v)m(e)g(the)g(follo)m(wing)h
+(meanings:)630 894 y Ft(-s)384 b Fu(Enable)30 b(\(set\))i(eac)m(h)f
+Fr(optname)p Fu(.)630 1052 y Ft(-u)384 b Fu(Disable)31
+b(\(unset\))g(eac)m(h)h Fr(optname)p Fu(.)630 1209 y
+Ft(-q)384 b Fu(Suppresses)28 b(normal)h(output;)h(the)g(return)e
+(status)i(indicates)h(whether)e(the)1110 1319 y Fr(optname)37
+b Fu(is)31 b(set)h(or)f(unset.)43 b(If)31 b(m)m(ultiple)h
+Fr(optname)37 b Fu(argumen)m(ts)31 b(are)h(giv)m(en)1110
+1428 y(with)d Ft(-q)p Fu(,)g(the)g(return)f(status)h(is)g(zero)h(if)f
+(all)h Fr(optnames)j Fu(are)d(enabled;)f(non-)1110 1538
+y(zero)i(otherwise.)630 1695 y Ft(-o)384 b Fu(Restricts)22
+b(the)f(v)-5 b(alues)22 b(of)f Fr(optname)27 b Fu(to)22
+b(b)s(e)e(those)i(de\014ned)e(for)h(the)g Ft(-o)f Fu(option)1110
+1805 y(to)31 b(the)g Ft(set)e Fu(builtin)h(\(see)h(Section)h(4.3.1)g
+([The)e(Set)g(Builtin],)i(page)f(58\).)630 1962 y(If)e(either)i
+Ft(-s)e Fu(or)h Ft(-u)f Fu(is)h(used)f(with)g(no)h Fr(optname)35
+b Fu(argumen)m(ts,)c Ft(shopt)d Fu(sho)m(ws)h(only)h(those)630
+2071 y(options)h(whic)m(h)f(are)h(set)f(or)h(unset,)f(resp)s(ectiv)m
+(ely)-8 b(.)630 2205 y(Unless)30 b(otherwise)h(noted,)g(the)g
+Ft(shopt)d Fu(options)j(are)g(disabled)f(\(o\013)7 b(\))32
+b(b)m(y)e(default.)630 2338 y(The)d(return)f(status)i(when)f(listing)h
+(options)g(is)f(zero)i(if)e(all)i Fr(optnames)i Fu(are)d(enabled,)g
+(non-)630 2448 y(zero)40 b(otherwise.)66 b(When)39 b(setting)h(or)f
+(unsetting)g(options,)i(the)e(return)f(status)h(is)g(zero)630
+2557 y(unless)30 b(an)g Fr(optname)36 b Fu(is)30 b(not)h(a)g(v)-5
+b(alid)30 b(shell)h(option.)630 2691 y(The)f(list)h(of)f
+Ft(shopt)f Fu(options)i(is:)630 2848 y Ft(autocd)192
+b Fu(If)27 b(set,)h(a)g(command)f(name)g(that)h(is)f(the)g(name)g(of)h
+(a)f(directory)h(is)f(executed)1110 2958 y(as)j(if)f(it)h(w)m(ere)f
+(the)h(argumen)m(t)g(to)g(the)f Ft(cd)g Fu(command.)40
+b(This)29 b(option)g(is)h(only)1110 3067 y(used)g(b)m(y)g(in)m
+(teractiv)m(e)j(shells.)630 3224 y Ft(cdable_vars)1110
+3334 y Fu(If)h(this)h(is)g(set,)i(an)e(argumen)m(t)g(to)h(the)f
+Ft(cd)f Fu(builtin)h(command)f(that)i(is)f(not)1110 3444
y(a)c(directory)g(is)g(assumed)f(to)h(b)s(e)f(the)h(name)f(of)h(a)g(v)
--5 b(ariable)31 b(whose)g(v)-5 b(alue)31 b(is)1110 5340
-y(the)g(directory)f(to)i(c)m(hange)f(to.)p eop end
-%%Page: 64 70
-TeXDict begin 64 69 bop 150 -116 a Ft(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(64)630 299 y Fs(cdspell)144
-b Ft(If)27 b(set,)h(minor)f(errors)f(in)h(the)g(sp)s(elling)h(of)f(a)g
-(directory)h(comp)s(onen)m(t)f(in)g(a)h Fs(cd)1110 408
-y Ft(command)i(will)h(b)s(e)f(corrected.)43 b(The)30
+-5 b(ariable)31 b(whose)g(v)-5 b(alue)31 b(is)1110 3553
+y(the)g(directory)f(to)i(c)m(hange)f(to.)630 3710 y Ft(cdspell)144
+b Fu(If)27 b(set,)h(minor)f(errors)f(in)h(the)g(sp)s(elling)h(of)f(a)g
+(directory)h(comp)s(onen)m(t)f(in)g(a)h Ft(cd)1110 3820
+y Fu(command)i(will)h(b)s(e)f(corrected.)43 b(The)30
b(errors)g(c)m(hec)m(k)m(ed)j(for)d(are)h(transp)s(osed)1110
-518 y(c)m(haracters,)46 b(a)c(missing)f(c)m(haracter,)47
+3930 y(c)m(haracters,)46 b(a)c(missing)f(c)m(haracter,)47
b(and)40 b(a)i(c)m(haracter)h(to)s(o)g(man)m(y)-8 b(.)74
-b(If)42 b(a)1110 628 y(correction)25 b(is)e(found,)g(the)h(corrected)g
-(path)f(is)g(prin)m(ted,)h(and)f(the)g(command)1110 737
+b(If)42 b(a)1110 4039 y(correction)25 b(is)e(found,)g(the)h(corrected)g
+(path)f(is)g(prin)m(ted,)h(and)f(the)g(command)1110 4149
y(pro)s(ceeds.)40 b(This)30 b(option)h(is)f(only)h(used)e(b)m(y)h(in)m
-(teractiv)m(e)k(shells.)630 883 y Fs(checkhash)1110 993
-y Ft(If)29 b(this)h(is)g(set,)g(Bash)g(c)m(hec)m(ks)h(that)g(a)f
-(command)f(found)g(in)g(the)h(hash)f(table)1110 1103
+(teractiv)m(e)k(shells.)630 4306 y Ft(checkhash)1110
+4416 y Fu(If)29 b(this)h(is)g(set,)g(Bash)g(c)m(hec)m(ks)h(that)g(a)f
+(command)f(found)g(in)g(the)h(hash)f(table)1110 4525
y(exists)k(b)s(efore)f(trying)h(to)h(execute)g(it.)48
-b(If)32 b(a)h(hashed)e(command)i(no)f(longer)1110 1212
+b(If)32 b(a)h(hashed)e(command)i(no)f(longer)1110 4635
y(exists,)f(a)g(normal)f(path)g(searc)m(h)h(is)g(p)s(erformed.)630
-1358 y Fs(checkjobs)1110 1468 y Ft(If)d(set,)i(Bash)e(lists)h(the)g
+4792 y Ft(checkjobs)1110 4902 y Fu(If)d(set,)i(Bash)e(lists)h(the)g
(status)g(of)f(an)m(y)h(stopp)s(ed)f(and)g(running)e(jobs)i(b)s(efore)
-1110 1577 y(exiting)42 b(an)f(in)m(teractiv)m(e)j(shell.)72
+1110 5011 y(exiting)42 b(an)f(in)m(teractiv)m(e)j(shell.)72
b(If)41 b(an)m(y)g(jobs)f(are)i(running,)g(this)f(causes)1110
-1687 y(the)30 b(exit)g(to)g(b)s(e)f(deferred)g(un)m(til)h(a)f(second)h
-(exit)g(is)g(attempted)h(without)e(an)1110 1797 y(in)m(terv)m(ening)j
-(command)e(\(see)h(Chapter)f(7)h([Job)f(Con)m(trol],)i(page)f(98\).)42
-b(The)1110 1906 y(shell)31 b(alw)m(a)m(ys)g(p)s(ostp)s(ones)f(exiting)h
-(if)g(an)m(y)f(jobs)g(are)h(stopp)s(ed.)630 2052 y Fs(checkwinsize)1110
-2162 y Ft(If)41 b(set,)k(Bash)c(c)m(hec)m(ks)i(the)f(windo)m(w)e(size)j
-(after)f(eac)m(h)g(command)f(and,)j(if)1110 2271 y(necessary)-8
-b(,)31 b(up)s(dates)f(the)g(v)-5 b(alues)31 b(of)g Fs(LINES)e
-Ft(and)g Fs(COLUMNS)p Ft(.)630 2418 y Fs(cmdhist)144
-b Ft(If)33 b(set,)j(Bash)e(attempts)h(to)g(sa)m(v)m(e)g(all)g(lines)f
-(of)g(a)h(m)m(ultiple-line)g(command)1110 2527 y(in)c(the)g(same)g
-(history)g(en)m(try)-8 b(.)42 b(This)30 b(allo)m(ws)i(easy)g
-(re-editing)g(of)f(m)m(ulti-line)1110 2637 y(commands.)630
-2783 y Fs(compat31)96 b Ft(If)27 b(set,)i(Bash)e(c)m(hanges)i(its)f(b)s
-(eha)m(vior)f(to)i(that)f(of)f(v)m(ersion)h(3.1)h(with)e(resp)s(ect)
-1110 2892 y(to)39 b(quoted)f(argumen)m(ts)g(to)h(the)f(conditional)h
-(command's)f(`)p Fs(=~)p Ft(')g(op)s(erator)1110 3002
-y(and)i(with)f(resp)s(ect)i(to)g(lo)s(cale-sp)s(eci\014c)h(string)e
-(comparison)g(when)f(using)1110 3112 y(the)31 b Fs([[)e
-Ft(conditional)j(command's)e(`)p Fs(<)p Ft(')h(and)f(`)p
-Fs(>)p Ft(')g(op)s(erators.)41 b(Bash)31 b(v)m(ersions)1110
-3221 y(prior)g(to)h(bash-4.1)g(use)g(ASCI)s(I)e(collation)j(and)e
-(strcmp\(3\);)i(bash-4.1)g(and)1110 3331 y(later)e(use)f(the)h(curren)m
-(t)f(lo)s(cale's)i(collation)h(sequence)e(and)f(strcoll\(3\).)630
-3477 y Fs(compat32)96 b Ft(If)27 b(set,)i(Bash)e(c)m(hanges)i(its)f(b)s
-(eha)m(vior)f(to)i(that)f(of)f(v)m(ersion)h(3.2)h(with)e(resp)s(ect)
-1110 3587 y(to)34 b(lo)s(cale-sp)s(eci\014c)h(string)e(comparison)g
-(when)f(using)h(the)g Fs([[)g Ft(conditional)1110 3696
-y(command's)d(`)p Fs(<)p Ft(')h(and)f(`)p Fs(>)p Ft(')g(op)s(erators)h
-(\(see)g(previous)f(item\).)630 3842 y Fs(compat40)96
-b Ft(If)27 b(set,)i(Bash)e(c)m(hanges)i(its)f(b)s(eha)m(vior)f(to)i
-(that)f(of)f(v)m(ersion)h(4.0)h(with)e(resp)s(ect)1110
-3952 y(to)34 b(lo)s(cale-sp)s(eci\014c)h(string)e(comparison)g(when)f
-(using)h(the)g Fs([[)g Ft(conditional)1110 4061 y(command's)28
-b(`)p Fs(<)p Ft(')h(and)f(`)p Fs(>)p Ft(')h(op)s(erators)f(\(see)i
-(description)e(of)h Fs(compat31)p Ft(\))e(and)1110 4171
-y(the)38 b(e\013ect)i(of)e(in)m(terrupting)f(a)i(command)e(list.)64
-b(Bash)38 b(v)m(ersions)h(4.0)g(and)1110 4281 y(later)24
-b(in)m(terrupt)f(the)g(list)h(as)g(if)f(the)h(shell)f(receiv)m(ed)i
-(the)e(in)m(terrupt;)i(previous)1110 4390 y(v)m(ersions)31
-b(con)m(tin)m(ue)g(with)f(the)h(next)g(command)f(in)g(the)g(list.)630
-4536 y Fs(compat41)96 b Ft(If)25 b(set,)j(Bash,)e(when)f(in)g
-Fl(posix)g Ft(mo)s(de,)i(treats)f(a)g(single)h(quote)f(in)f(a)h
-(double-)1110 4646 y(quoted)46 b(parameter)h(expansion)f(as)g(a)h(sp)s
-(ecial)f(c)m(haracter.)90 b(The)45 b(single)1110 4756
-y(quotes)34 b(m)m(ust)g(matc)m(h)h(\(an)f(ev)m(en)h(n)m(um)m(b)s(er\))e
-(and)g(the)h(c)m(haracters)h(b)s(et)m(w)m(een)1110 4865
-y(the)40 b(single)g(quotes)g(are)g(considered)g(quoted.)69
-b(This)38 b(is)i(the)g(b)s(eha)m(vior)g(of)1110 4975
-y Fl(posix)f Ft(mo)s(de)g(through)g(v)m(ersion)h(4.1.)69
+5121 y(the)30 b(exit)g(to)g(b)s(e)f(deferred)g(un)m(til)h(a)f(second)h
+(exit)g(is)g(attempted)h(without)e(an)1110 5230 y(in)m(terv)m(ening)j
+(command)e(\(see)h(Chapter)f(7)h([Job)f(Con)m(trol],)i(page)f(97\).)42
+b(The)1110 5340 y(shell)31 b(alw)m(a)m(ys)g(p)s(ostp)s(ones)f(exiting)h
+(if)g(an)m(y)f(jobs)g(are)h(stopp)s(ed.)p eop end
+%%Page: 64 70
+TeXDict begin 64 69 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(64)630 299 y Ft(checkwinsize)
+1110 408 y Fu(If)41 b(set,)k(Bash)c(c)m(hec)m(ks)i(the)f(windo)m(w)e
+(size)j(after)f(eac)m(h)g(command)f(and,)j(if)1110 518
+y(necessary)-8 b(,)31 b(up)s(dates)f(the)g(v)-5 b(alues)31
+b(of)g Ft(LINES)e Fu(and)g Ft(COLUMNS)p Fu(.)630 669
+y Ft(cmdhist)144 b Fu(If)33 b(set,)j(Bash)e(attempts)h(to)g(sa)m(v)m(e)
+g(all)g(lines)f(of)g(a)h(m)m(ultiple-line)g(command)1110
+778 y(in)c(the)g(same)g(history)g(en)m(try)-8 b(.)42
+b(This)30 b(allo)m(ws)i(easy)g(re-editing)g(of)f(m)m(ulti-line)1110
+888 y(commands.)630 1039 y Ft(compat31)96 b Fu(If)27
+b(set,)i(Bash)e(c)m(hanges)i(its)f(b)s(eha)m(vior)f(to)i(that)f(of)f(v)
+m(ersion)h(3.1)h(with)e(resp)s(ect)1110 1148 y(to)39
+b(quoted)f(argumen)m(ts)g(to)h(the)f(conditional)h(command's)f(`)p
+Ft(=~)p Fu(')g(op)s(erator)1110 1258 y(and)i(with)f(resp)s(ect)i(to)g
+(lo)s(cale-sp)s(eci\014c)h(string)e(comparison)g(when)f(using)1110
+1367 y(the)31 b Ft([[)e Fu(conditional)j(command's)e(`)p
+Ft(<)p Fu(')h(and)f(`)p Ft(>)p Fu(')g(op)s(erators.)41
+b(Bash)31 b(v)m(ersions)1110 1477 y(prior)g(to)h(bash-4.1)g(use)g(ASCI)
+s(I)e(collation)j(and)e(strcmp\(3\);)i(bash-4.1)g(and)1110
+1587 y(later)e(use)f(the)h(curren)m(t)f(lo)s(cale's)i(collation)h
+(sequence)e(and)f(strcoll\(3\).)630 1737 y Ft(compat32)96
+b Fu(If)27 b(set,)i(Bash)e(c)m(hanges)i(its)f(b)s(eha)m(vior)f(to)i
+(that)f(of)f(v)m(ersion)h(3.2)h(with)e(resp)s(ect)1110
+1847 y(to)34 b(lo)s(cale-sp)s(eci\014c)h(string)e(comparison)g(when)f
+(using)h(the)g Ft([[)g Fu(conditional)1110 1956 y(command's)d(`)p
+Ft(<)p Fu(')h(and)f(`)p Ft(>)p Fu(')g(op)s(erators)h(\(see)g(previous)f
+(item\).)630 2107 y Ft(compat40)96 b Fu(If)27 b(set,)i(Bash)e(c)m
+(hanges)i(its)f(b)s(eha)m(vior)f(to)i(that)f(of)f(v)m(ersion)h(4.0)h
+(with)e(resp)s(ect)1110 2217 y(to)34 b(lo)s(cale-sp)s(eci\014c)h
+(string)e(comparison)g(when)f(using)h(the)g Ft([[)g Fu(conditional)1110
+2326 y(command's)28 b(`)p Ft(<)p Fu(')h(and)f(`)p Ft(>)p
+Fu(')h(op)s(erators)f(\(see)i(description)e(of)h Ft(compat31)p
+Fu(\))e(and)1110 2436 y(the)38 b(e\013ect)i(of)e(in)m(terrupting)f(a)i
+(command)e(list.)64 b(Bash)38 b(v)m(ersions)h(4.0)g(and)1110
+2545 y(later)24 b(in)m(terrupt)f(the)g(list)h(as)g(if)f(the)h(shell)f
+(receiv)m(ed)i(the)e(in)m(terrupt;)i(previous)1110 2655
+y(v)m(ersions)31 b(con)m(tin)m(ue)g(with)f(the)h(next)g(command)f(in)g
+(the)g(list.)630 2806 y Ft(compat41)96 b Fu(If)25 b(set,)j(Bash,)e
+(when)f(in)g Fm(posix)g Fu(mo)s(de,)i(treats)f(a)g(single)h(quote)f(in)
+f(a)h(double-)1110 2915 y(quoted)46 b(parameter)h(expansion)f(as)g(a)h
+(sp)s(ecial)f(c)m(haracter.)90 b(The)45 b(single)1110
+3025 y(quotes)34 b(m)m(ust)g(matc)m(h)h(\(an)f(ev)m(en)h(n)m(um)m(b)s
+(er\))e(and)g(the)h(c)m(haracters)h(b)s(et)m(w)m(een)1110
+3134 y(the)40 b(single)g(quotes)g(are)g(considered)g(quoted.)69
+b(This)38 b(is)i(the)g(b)s(eha)m(vior)g(of)1110 3244
+y Fm(posix)f Fu(mo)s(de)g(through)g(v)m(ersion)h(4.1.)69
b(The)39 b(default)g(Bash)h(b)s(eha)m(vior)g(re-)1110
-5084 y(mains)30 b(as)h(in)f(previous)g(v)m(ersions.)630
-5230 y Fs(compat42)96 b Ft(If)29 b(set,)i(Bash)f(do)s(es)f(not)h(pro)s
+3354 y(mains)30 b(as)h(in)f(previous)g(v)m(ersions.)630
+3504 y Ft(compat42)96 b Fu(If)29 b(set,)i(Bash)f(do)s(es)f(not)h(pro)s
(cess)g(the)g(replacemen)m(t)h(string)e(in)h(the)g(pattern)1110
-5340 y(substitution)g(w)m(ord)g(expansion)g(using)g(quote)h(remo)m(v)-5
-b(al.)p eop end
-%%Page: 65 71
-TeXDict begin 65 70 bop 150 -116 a Ft(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(65)630 299 y Fs
-(complete_fullquote)1110 408 y Ft(If)31 b(set,)g(Bash)h(quotes)f(all)h
-(shell)f(metac)m(haracters)i(in)e(\014lenames)g(and)g(direc-)1110
-518 y(tory)g(names)f(when)g(p)s(erforming)f(completion.)43
-b(If)30 b(not)h(set,)g(Bash)g(remo)m(v)m(es)1110 628
-y(metac)m(haracters)40 b(suc)m(h)d(as)h(the)g(dollar)g(sign)g(from)f
-(the)h(set)g(of)f(c)m(haracters)1110 737 y(that)f(will)g(b)s(e)f
-(quoted)g(in)g(completed)i(\014lenames)e(when)f(these)i(metac)m(har-)
-1110 847 y(acters)29 b(app)s(ear)e(in)g(shell)h(v)-5
-b(ariable)28 b(references)g(in)f(w)m(ords)g(to)i(b)s(e)e(completed.)
-1110 956 y(This)k(means)i(that)g(dollar)f(signs)g(in)g(v)-5
-b(ariable)33 b(names)g(that)f(expand)g(to)h(di-)1110
-1066 y(rectories)28 b(will)g(not)f(b)s(e)f(quoted;)j(ho)m(w)m(ev)m(er,)
-g(an)m(y)e(dollar)h(signs)f(app)s(earing)f(in)1110 1176
+3614 y(substitution)g(w)m(ord)g(expansion)g(using)g(quote)h(remo)m(v)-5
+b(al.)630 3765 y Ft(complete_fullquote)1110 3874 y Fu(If)31
+b(set,)g(Bash)h(quotes)f(all)h(shell)f(metac)m(haracters)i(in)e
+(\014lenames)g(and)g(direc-)1110 3984 y(tory)g(names)f(when)g(p)s
+(erforming)f(completion.)43 b(If)30 b(not)h(set,)g(Bash)g(remo)m(v)m
+(es)1110 4093 y(metac)m(haracters)40 b(suc)m(h)d(as)h(the)g(dollar)g
+(sign)g(from)f(the)h(set)g(of)f(c)m(haracters)1110 4203
+y(that)f(will)g(b)s(e)f(quoted)g(in)g(completed)i(\014lenames)e(when)f
+(these)i(metac)m(har-)1110 4313 y(acters)29 b(app)s(ear)e(in)g(shell)h
+(v)-5 b(ariable)28 b(references)g(in)f(w)m(ords)g(to)i(b)s(e)e
+(completed.)1110 4422 y(This)k(means)i(that)g(dollar)f(signs)g(in)g(v)
+-5 b(ariable)33 b(names)g(that)f(expand)g(to)h(di-)1110
+4532 y(rectories)28 b(will)g(not)f(b)s(e)f(quoted;)j(ho)m(w)m(ev)m(er,)
+g(an)m(y)e(dollar)h(signs)f(app)s(earing)f(in)1110 4641
y(\014lenames)j(will)h(not)f(b)s(e)g(quoted,)h(either.)41
b(This)28 b(is)i(activ)m(e)h(only)e(when)g(bash)1110
-1285 y(is)39 b(using)f(bac)m(kslashes)i(to)g(quote)g(completed)f
-(\014lenames.)67 b(This)38 b(v)-5 b(ariable)1110 1395
+4751 y(is)39 b(using)f(bac)m(kslashes)i(to)g(quote)g(completed)f
+(\014lenames.)67 b(This)38 b(v)-5 b(ariable)1110 4861
y(is)41 b(set)g(b)m(y)g(default,)j(whic)m(h)c(is)h(the)g(default)g
-(Bash)g(b)s(eha)m(vior)g(in)g(v)m(ersions)1110 1504 y(through)30
-b(4.2.)630 1682 y Fs(direxpand)1110 1792 y Ft(If)k(set,)i(Bash)f
+(Bash)g(b)s(eha)m(vior)g(in)g(v)m(ersions)1110 4970 y(through)30
+b(4.2.)630 5121 y Ft(direxpand)1110 5230 y Fu(If)k(set,)i(Bash)f
(replaces)g(directory)g(names)g(with)f(the)g(results)h(of)f(w)m(ord)g
-(ex-)1110 1902 y(pansion)k(when)g(p)s(erforming)f(\014lename)i
-(completion.)67 b(This)38 b(c)m(hanges)i(the)1110 2011
-y(con)m(ten)m(ts)29 b(of)e(the)g(readline)h(editing)g(bu\013er.)38
-b(If)27 b(not)g(set,)i(Bash)e(attempts)h(to)1110 2121
-y(preserv)m(e)j(what)f(the)g(user)g(t)m(yp)s(ed.)630
-2299 y Fs(dirspell)96 b Ft(If)26 b(set,)i(Bash)f(attempts)g(sp)s
-(elling)g(correction)g(on)g(directory)g(names)f(during)1110
-2408 y(w)m(ord)36 b(completion)h(if)f(the)g(directory)g(name)g
-(initially)h(supplied)e(do)s(es)h(not)1110 2518 y(exist.)630
-2696 y Fs(dotglob)144 b Ft(If)27 b(set,)i(Bash)f(includes)g
-(\014lenames)g(b)s(eginning)f(with)g(a)h(`.')41 b(in)27
-b(the)h(results)g(of)1110 2806 y(\014lename)j(expansion.)630
-2984 y Fs(execfail)96 b Ft(If)24 b(this)h(is)f(set,)j(a)e(non-in)m
+(ex-)1110 5340 y(pansion)k(when)g(p)s(erforming)f(\014lename)i
+(completion.)67 b(This)38 b(c)m(hanges)i(the)p eop end
+%%Page: 65 71
+TeXDict begin 65 70 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(65)1110 299 y(con)m(ten)m(ts)29
+b(of)e(the)g(readline)h(editing)g(bu\013er.)38 b(If)27
+b(not)g(set,)i(Bash)e(attempts)h(to)1110 408 y(preserv)m(e)j(what)f
+(the)g(user)g(t)m(yp)s(ed.)630 555 y Ft(dirspell)96 b
+Fu(If)26 b(set,)i(Bash)f(attempts)g(sp)s(elling)g(correction)g(on)g
+(directory)g(names)f(during)1110 664 y(w)m(ord)36 b(completion)h(if)f
+(the)g(directory)g(name)g(initially)h(supplied)e(do)s(es)h(not)1110
+774 y(exist.)630 920 y Ft(dotglob)144 b Fu(If)27 b(set,)i(Bash)f
+(includes)g(\014lenames)g(b)s(eginning)f(with)g(a)h(`.')41
+b(in)27 b(the)h(results)g(of)1110 1029 y(\014lename)j(expansion.)630
+1176 y Ft(execfail)96 b Fu(If)24 b(this)h(is)f(set,)j(a)e(non-in)m
(teractiv)m(e)i(shell)e(will)f(not)h(exit)h(if)e(it)h(cannot)h(execute)
-1110 3093 y(the)i(\014le)g(sp)s(eci\014ed)g(as)g(an)g(argumen)m(t)g(to)
-h(the)f Fs(exec)f Ft(builtin)h(command.)39 b(An)1110
-3203 y(in)m(teractiv)m(e)33 b(shell)e(do)s(es)f(not)g(exit)i(if)e
-Fs(exec)f Ft(fails.)630 3381 y Fs(expand_aliases)1110
-3491 y Ft(If)j(set,)h(aliases)g(are)g(expanded)e(as)h(describ)s(ed)f(b)
-s(elo)m(w)h(under)f(Aliases,)i(Sec-)1110 3600 y(tion)38
+1110 1285 y(the)i(\014le)g(sp)s(eci\014ed)g(as)g(an)g(argumen)m(t)g(to)
+h(the)f Ft(exec)f Fu(builtin)h(command.)39 b(An)1110
+1395 y(in)m(teractiv)m(e)33 b(shell)e(do)s(es)f(not)g(exit)i(if)e
+Ft(exec)f Fu(fails.)630 1541 y Ft(expand_aliases)1110
+1650 y Fu(If)j(set,)h(aliases)g(are)g(expanded)e(as)h(describ)s(ed)f(b)
+s(elo)m(w)h(under)f(Aliases,)i(Sec-)1110 1760 y(tion)38
b(6.6)h([Aliases],)j(page)d(88.)64 b(This)37 b(option)h(is)g(enabled)g
-(b)m(y)g(default)g(for)1110 3710 y(in)m(teractiv)m(e)33
-b(shells.)630 3888 y Fs(extdebug)96 b Ft(If)30 b(set,)h(b)s(eha)m(vior)
+(b)m(y)g(default)g(for)1110 1870 y(in)m(teractiv)m(e)33
+b(shells.)630 2016 y Ft(extdebug)96 b Fu(If)30 b(set,)h(b)s(eha)m(vior)
g(in)m(tended)f(for)g(use)g(b)m(y)g(debuggers)g(is)h(enabled:)1159
-4032 y(1.)61 b(The)32 b(`)p Fs(-F)p Ft(')g(option)h(to)g(the)g
-Fs(declare)d Ft(builtin)i(\(see)i(Section)f(4.2)h([Bash)1290
-4141 y(Builtins],)29 b(page)g(48\))g(displa)m(ys)f(the)g(source)h
-(\014le)f(name)g(and)f(line)h(n)m(um-)1290 4251 y(b)s(er)h(corresp)s
+2144 y(1.)61 b(The)37 b Ft(-F)g Fu(option)h(to)g(the)g
+Ft(declare)d Fu(builtin)i(\(see)i(Section)f(4.2)h([Bash)1290
+2253 y(Builtins],)29 b(page)g(48\))g(displa)m(ys)f(the)g(source)h
+(\014le)f(name)g(and)f(line)h(n)m(um-)1290 2363 y(b)s(er)h(corresp)s
(onding)g(to)i(eac)m(h)g(function)f(name)g(supplied)f(as)i(an)f(argu-)
-1290 4361 y(men)m(t.)1159 4504 y(2.)61 b(If)20 b(the)h(command)g(run)e
-(b)m(y)i(the)f Fs(DEBUG)g Ft(trap)g(returns)g(a)h(non-zero)g(v)-5
-b(alue,)1290 4614 y(the)31 b(next)f(command)g(is)h(skipp)s(ed)e(and)g
-(not)i(executed.)1159 4758 y(3.)61 b(If)37 b(the)g(command)g(run)f(b)m
-(y)i(the)f Fs(DEBUG)f Ft(trap)h(returns)f(a)i(v)-5 b(alue)38
-b(of)f(2,)1290 4867 y(and)c(the)g(shell)h(is)f(executing)i(in)e(a)h
-(subroutine)e(\(a)i(shell)g(function)f(or)1290 4977 y(a)h(shell)h
-(script)f(executed)h(b)m(y)f(the)g Fs(.)g Ft(or)g Fs(source)e
-Ft(builtins\),)j(a)g(call)g(to)1290 5087 y Fs(return)29
-b Ft(is)h(sim)m(ulated.)1159 5230 y(4.)61 b Fs(BASH_ARGC)34
-b Ft(and)i Fs(BASH_ARGV)e Ft(are)j(up)s(dated)e(as)h(describ)s(ed)g(in)
-g(their)1290 5340 y(descriptions)30 b(\(see)i(Section)f(5.2)g([Bash)g
-(V)-8 b(ariables],)32 b(page)f(69\).)p eop end
-%%Page: 66 72
-TeXDict begin 66 71 bop 150 -116 a Ft(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(66)1159 299 y(5.)61
+1290 2472 y(men)m(t.)1159 2600 y(2.)61 b(If)20 b(the)h(command)g(run)e
+(b)m(y)i(the)f Ft(DEBUG)g Fu(trap)g(returns)g(a)h(non-zero)g(v)-5
+b(alue,)1290 2710 y(the)31 b(next)f(command)g(is)h(skipp)s(ed)e(and)g
+(not)i(executed.)1159 2838 y(3.)61 b(If)37 b(the)g(command)g(run)f(b)m
+(y)i(the)f Ft(DEBUG)f Fu(trap)h(returns)f(a)i(v)-5 b(alue)38
+b(of)f(2,)1290 2947 y(and)c(the)g(shell)h(is)f(executing)i(in)e(a)h
+(subroutine)e(\(a)i(shell)g(function)f(or)1290 3057 y(a)h(shell)h
+(script)f(executed)h(b)m(y)f(the)g Ft(.)g Fu(or)g Ft(source)e
+Fu(builtins\),)j(a)g(call)g(to)1290 3166 y Ft(return)29
+b Fu(is)h(sim)m(ulated.)1159 3294 y(4.)61 b Ft(BASH_ARGC)34
+b Fu(and)i Ft(BASH_ARGV)e Fu(are)j(up)s(dated)e(as)h(describ)s(ed)g(in)
+g(their)1290 3404 y(descriptions)30 b(\(see)i(Section)f(5.2)g([Bash)g
+(V)-8 b(ariables],)32 b(page)f(69\).)1159 3532 y(5.)61
b(F)-8 b(unction)57 b(tracing)g(is)g(enabled:)93 b(command)56
-b(substitution,)63 b(shell)1290 408 y(functions,)30 b(and)f(subshells)g
-(in)m(v)m(ok)m(ed)j(with)d Fs(\()h Fi(command)39 b Fs(\))30
-b Ft(inherit)g(the)1290 518 y Fs(DEBUG)f Ft(and)h Fs(RETURN)e
-Ft(traps.)1159 649 y(6.)61 b(Error)41 b(tracing)i(is)f(enabled:)63
-b(command)42 b(substitution,)i(shell)f(func-)1290 758
-y(tions,)30 b(and)f(subshells)g(in)m(v)m(ok)m(ed)i(with)e
-Fs(\()h Fi(command)39 b Fs(\))29 b Ft(inherit)g(the)h
-Fs(ERR)1290 868 y Ft(trap.)630 1019 y Fs(extglob)144
-b Ft(If)26 b(set,)i(the)f(extended)f(pattern)h(matc)m(hing)g(features)g
-(describ)s(ed)e(ab)s(o)m(v)m(e)j(\(see)1110 1129 y(Section)j(3.5.8.1)i
+b(substitution,)63 b(shell)1290 3641 y(functions,)32
+b(and)e(subshells)h(in)m(v)m(ok)m(ed)i(with)e Ft(\()f
+Fj(command)e Ft(\))j Fu(inherit)h(the)1290 3751 y Ft(DEBUG)d
+Fu(and)h Ft(RETURN)e Fu(traps.)1159 3879 y(6.)61 b(Error)41
+b(tracing)i(is)f(enabled:)63 b(command)42 b(substitution,)i(shell)f
+(func-)1290 3988 y(tions,)32 b(and)e(subshells)g(in)m(v)m(ok)m(ed)i
+(with)e Ft(\()g Fj(command)f Ft(\))h Fu(inherit)h(the)g
+Ft(ERR)1290 4098 y Fu(trap.)630 4244 y Ft(extglob)144
+b Fu(If)26 b(set,)i(the)f(extended)f(pattern)h(matc)m(hing)g(features)g
+(describ)s(ed)e(ab)s(o)m(v)m(e)j(\(see)1110 4354 y(Section)j(3.5.8.1)i
([P)m(attern)f(Matc)m(hing],)g(page)f(30\))h(are)f(enabled.)630
-1280 y Fs(extquote)96 b Ft(If)49 b(set,)54 b Fs($')p
-Fi(string)11 b Fs(')46 b Ft(and)j Fs($")p Fi(string)11
-b Fs(")46 b Ft(quoting)k(is)f(p)s(erformed)e(within)1110
-1390 y Fs(${)p Fi(parameter)11 b Fs(})30 b Ft(expansions)j(enclosed)h
-(in)g(double)f(quotes.)51 b(This)32 b(option)1110 1499
-y(is)e(enabled)h(b)m(y)f(default.)630 1650 y Fs(failglob)96
-b Ft(If)36 b(set,)j(patterns)d(whic)m(h)g(fail)h(to)h(matc)m(h)f
-(\014lenames)f(during)g(\014lename)g(ex-)1110 1760 y(pansion)30
-b(result)g(in)g(an)g(expansion)h(error.)630 1911 y Fs(force_fignore)
-1110 2021 y Ft(If)43 b(set,)k(the)d(su\016xes)f(sp)s(eci\014ed)f(b)m(y)
-i(the)f Fs(FIGNORE)f Ft(shell)h(v)-5 b(ariable)44 b(cause)1110
-2131 y(w)m(ords)31 b(to)h(b)s(e)f(ignored)h(when)f(p)s(erforming)f(w)m
-(ord)h(completion)i(ev)m(en)f(if)g(the)1110 2240 y(ignored)37
+4500 y Ft(extquote)96 b Fu(If)51 b(set,)58 b Ft($')p
+Fj(string)p Ft(')49 b Fu(and)i Ft($")p Fj(string)p Ft(")e
+Fu(quoting)k(is)e(p)s(erformed)f(within)1110 4609 y Ft(${)p
+Fj(parameter)p Ft(})31 b Fu(expansions)k(enclosed)g(in)g(double)f
+(quotes.)55 b(This)33 b(option)1110 4719 y(is)d(enabled)h(b)m(y)f
+(default.)630 4865 y Ft(failglob)96 b Fu(If)36 b(set,)j(patterns)d
+(whic)m(h)g(fail)h(to)h(matc)m(h)f(\014lenames)f(during)g(\014lename)g
+(ex-)1110 4975 y(pansion)30 b(result)g(in)g(an)g(expansion)h(error.)630
+5121 y Ft(force_fignore)1110 5230 y Fu(If)43 b(set,)k(the)d(su\016xes)f
+(sp)s(eci\014ed)f(b)m(y)i(the)f Ft(FIGNORE)f Fu(shell)h(v)-5
+b(ariable)44 b(cause)1110 5340 y(w)m(ords)31 b(to)h(b)s(e)f(ignored)h
+(when)f(p)s(erforming)f(w)m(ord)h(completion)i(ev)m(en)f(if)g(the)p
+eop end
+%%Page: 66 72
+TeXDict begin 66 71 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(66)1110 299 y(ignored)37
b(w)m(ords)g(are)g(the)h(only)f(p)s(ossible)g(completions.)62
-b(See)37 b(Section)h(5.2)1110 2350 y([Bash)24 b(V)-8
-b(ariables],)27 b(page)e(69,)h(for)d(a)h(description)g(of)g
-Fs(FIGNORE)p Ft(.)37 b(This)22 b(option)1110 2459 y(is)30
-b(enabled)h(b)m(y)f(default.)630 2611 y Fs(globasciiranges)1110
-2720 y Ft(If)j(set,)h(range)f(expressions)g(used)f(in)h(pattern)g(matc)
-m(hing)h(brac)m(k)m(et)h(expres-)1110 2830 y(sions)28
-b(\(see)h(Section)h(3.5.8.1)g([P)m(attern)g(Matc)m(hing],)h(page)e
-(30\))g(b)s(eha)m(v)m(e)g(as)g(if)1110 2939 y(in)i(the)g(traditional)i
-(C)d(lo)s(cale)j(when)d(p)s(erforming)g(comparisons.)44
-b(That)31 b(is,)1110 3049 y(the)d(curren)m(t)g(lo)s(cale's)i(collating)
-h(sequence)d(is)h(not)f(tak)m(en)h(in)m(to)g(accoun)m(t,)i(so)1110
-3159 y(`)p Fs(b)p Ft(')j(will)g(not)g(collate)i(b)s(et)m(w)m(een)e(`)p
-Fs(A)p Ft(')g(and)f(`)p Fs(B)p Ft(',)h(and)f(upp)s(er-case)g(and)g(lo)m
-(w)m(er-)1110 3268 y(case)e(ASCI)s(I)e(c)m(haracters)j(will)f(collate)i
-(together.)630 3420 y Fs(globstar)96 b Ft(If)38 b(set,)j(the)e(pattern)
-f(`)p Fs(**)p Ft(')h(used)e(in)i(a)f(\014lename)h(expansion)f(con)m
-(text)j(will)1110 3529 y(matc)m(h)36 b(all)g(\014les)f(and)f(zero)i(or)
-f(more)g(directories)h(and)e(sub)s(directories.)54 b(If)1110
-3639 y(the)30 b(pattern)g(is)g(follo)m(w)m(ed)i(b)m(y)d(a)i(`)p
-Fs(/)p Ft(',)f(only)g(directories)h(and)f(sub)s(directories)1110
-3748 y(matc)m(h.)630 3900 y Fs(gnu_errfmt)1110 4009 y
-Ft(If)35 b(set,)j(shell)e(error)g(messages)g(are)h(written)e(in)h(the)g
-(standard)f Fl(gnu)g Ft(error)1110 4119 y(message)c(format.)630
-4270 y Fs(histappend)1110 4380 y Ft(If)c(set,)j(the)e(history)g(list)g
+b(See)37 b(Section)h(5.2)1110 408 y([Bash)24 b(V)-8 b(ariables],)27
+b(page)e(69,)h(for)d(a)h(description)g(of)g Ft(FIGNORE)p
+Fu(.)37 b(This)22 b(option)1110 518 y(is)30 b(enabled)h(b)m(y)f
+(default.)630 701 y Ft(globasciiranges)1110 810 y Fu(If)j(set,)h(range)
+f(expressions)g(used)f(in)h(pattern)g(matc)m(hing)h(brac)m(k)m(et)h
+(expres-)1110 920 y(sions)28 b(\(see)h(Section)h(3.5.8.1)g([P)m(attern)
+g(Matc)m(hing],)h(page)e(30\))g(b)s(eha)m(v)m(e)g(as)g(if)1110
+1029 y(in)i(the)g(traditional)i(C)d(lo)s(cale)j(when)d(p)s(erforming)g
+(comparisons.)44 b(That)31 b(is,)1110 1139 y(the)d(curren)m(t)g(lo)s
+(cale's)i(collating)h(sequence)d(is)h(not)f(tak)m(en)h(in)m(to)g
+(accoun)m(t,)i(so)1110 1249 y(`)p Ft(b)p Fu(')j(will)g(not)g(collate)i
+(b)s(et)m(w)m(een)e(`)p Ft(A)p Fu(')g(and)f(`)p Ft(B)p
+Fu(',)h(and)f(upp)s(er-case)g(and)g(lo)m(w)m(er-)1110
+1358 y(case)e(ASCI)s(I)e(c)m(haracters)j(will)f(collate)i(together.)630
+1541 y Ft(globstar)96 b Fu(If)38 b(set,)j(the)e(pattern)f(`)p
+Ft(**)p Fu(')h(used)e(in)i(a)f(\014lename)h(expansion)f(con)m(text)j
+(will)1110 1650 y(matc)m(h)36 b(all)g(\014les)f(and)f(zero)i(or)f(more)
+g(directories)h(and)e(sub)s(directories.)54 b(If)1110
+1760 y(the)30 b(pattern)g(is)g(follo)m(w)m(ed)i(b)m(y)d(a)i(`)p
+Ft(/)p Fu(',)f(only)g(directories)h(and)f(sub)s(directories)1110
+1870 y(matc)m(h.)630 2052 y Ft(gnu_errfmt)1110 2162 y
+Fu(If)35 b(set,)j(shell)e(error)g(messages)g(are)h(written)e(in)h(the)g
+(standard)f Fm(gnu)g Fu(error)1110 2271 y(message)c(format.)630
+2454 y Ft(histappend)1110 2564 y Fu(If)c(set,)j(the)e(history)g(list)g
(is)g(app)s(ended)e(to)j(the)f(\014le)g(named)f(b)m(y)h(the)g(v)-5
-b(alue)29 b(of)1110 4489 y(the)d Fs(HISTFILE)d Ft(v)-5
+b(alue)29 b(of)1110 2673 y(the)d Ft(HISTFILE)d Fu(v)-5
b(ariable)26 b(when)e(the)h(shell)h(exits,)h(rather)e(than)h(o)m(v)m
-(erwriting)1110 4599 y(the)31 b(\014le.)630 4750 y Fs(histreedit)1110
-4860 y Ft(If)i(set,)h(and)f(Readline)h(is)f(b)s(eing)g(used,)g(a)g
+(erwriting)1110 2783 y(the)31 b(\014le.)630 2966 y Ft(histreedit)1110
+3075 y Fu(If)i(set,)h(and)f(Readline)h(is)f(b)s(eing)g(used,)g(a)g
(user)g(is)g(giv)m(en)h(the)g(opp)s(ortunit)m(y)1110
-4969 y(to)d(re-edit)g(a)g(failed)g(history)f(substitution.)630
-5121 y Fs(histverify)1110 5230 y Ft(If)35 b(set,)i(and)e(Readline)h(is)
+3185 y(to)d(re-edit)g(a)g(failed)g(history)f(substitution.)630
+3367 y Ft(histverify)1110 3477 y Fu(If)35 b(set,)i(and)e(Readline)h(is)
f(b)s(eing)g(used,)h(the)f(results)g(of)g(history)h(substitu-)1110
-5340 y(tion)h(are)g(not)g(immediately)h(passed)e(to)h(the)g(shell)g
-(parser.)59 b(Instead,)38 b(the)p eop end
-%%Page: 67 73
-TeXDict begin 67 72 bop 150 -116 a Ft(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(67)1110 299 y(resulting)40
-b(line)f(is)h(loaded)g(in)m(to)g(the)g(Readline)g(editing)g(bu\013er,)h
-(allo)m(wing)1110 408 y(further)29 b(mo)s(di\014cation.)630
-564 y Fs(hostcomplete)1110 673 y Ft(If)38 b(set,)j(and)c(Readline)i(is)
-f(b)s(eing)g(used,)h(Bash)g(will)f(attempt)h(to)g(p)s(erform)1110
-783 y(hostname)d(completion)h(when)e(a)h(w)m(ord)f(con)m(taining)i(a)f
-(`)p Fs(@)p Ft(')g(is)g(b)s(eing)f(com-)1110 892 y(pleted)g(\(see)h
+3587 y(tion)h(are)g(not)g(immediately)h(passed)e(to)h(the)g(shell)g
+(parser.)59 b(Instead,)38 b(the)1110 3696 y(resulting)i(line)f(is)h
+(loaded)g(in)m(to)g(the)g(Readline)g(editing)g(bu\013er,)h(allo)m(wing)
+1110 3806 y(further)29 b(mo)s(di\014cation.)630 3988
+y Ft(hostcomplete)1110 4098 y Fu(If)38 b(set,)j(and)c(Readline)i(is)f
+(b)s(eing)g(used,)h(Bash)g(will)f(attempt)h(to)g(p)s(erform)1110
+4208 y(hostname)d(completion)h(when)e(a)h(w)m(ord)f(con)m(taining)i(a)f
+(`)p Ft(@)p Fu(')g(is)g(b)s(eing)f(com-)1110 4317 y(pleted)g(\(see)h
(Section)f(8.4.6)i([Commands)d(F)-8 b(or)36 b(Completion],)g(page)g
-(121\).)1110 1002 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.)
-630 1157 y Fs(huponexit)1110 1267 y Ft(If)i(set,)i(Bash)f(will)h(send)d
-Fs(SIGHUP)h Ft(to)h(all)h(jobs)e(when)g(an)g(in)m(teractiv)m(e)k(login)
-1110 1377 y(shell)31 b(exits)g(\(see)g(Section)g(3.7.6)h([Signals],)g
-(page)f(38\).)630 1532 y Fs(interactive_comments)1110
-1641 y Ft(Allo)m(w)c(a)g(w)m(ord)e(b)s(eginning)g(with)h(`)p
-Fs(#)p Ft(')g(to)h(cause)f(that)h(w)m(ord)f(and)f(all)i(remain-)1110
-1751 y(ing)41 b(c)m(haracters)i(on)e(that)h(line)g(to)g(b)s(e)f
+(120\).)1110 4427 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.)
+630 4609 y Ft(huponexit)1110 4719 y Fu(If)i(set,)i(Bash)f(will)h(send)d
+Ft(SIGHUP)h Fu(to)h(all)h(jobs)e(when)g(an)g(in)m(teractiv)m(e)k(login)
+1110 4829 y(shell)31 b(exits)g(\(see)g(Section)g(3.7.6)h([Signals],)g
+(page)f(38\).)630 5011 y Ft(interactive_comments)1110
+5121 y Fu(Allo)m(w)c(a)g(w)m(ord)e(b)s(eginning)g(with)h(`)p
+Ft(#)p Fu(')g(to)h(cause)f(that)h(w)m(ord)f(and)f(all)i(remain-)1110
+5230 y(ing)41 b(c)m(haracters)i(on)e(that)h(line)g(to)g(b)s(e)f
(ignored)g(in)g(an)g(in)m(teractiv)m(e)j(shell.)1110
-1861 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.)630
-2016 y Fs(lastpipe)96 b Ft(If)24 b(set,)i(and)e(job)g(con)m(trol)i(is)f
-(not)f(activ)m(e,)k(the)d(shell)f(runs)f(the)i(last)g(command)1110
-2125 y(of)37 b(a)h(pip)s(eline)e(not)h(executed)h(in)f(the)g(bac)m
-(kground)g(in)g(the)g(curren)m(t)g(shell)1110 2235 y(en)m(vironmen)m
-(t.)630 2390 y Fs(lithist)144 b Ft(If)22 b(enabled,)i(and)d(the)h
-Fs(cmdhist)e Ft(option)j(is)f(enabled,)i(m)m(ulti-line)f(commands)1110
-2500 y(are)28 b(sa)m(v)m(ed)h(to)g(the)f(history)g(with)f(em)m(b)s
-(edded)g(newlines)h(rather)g(than)f(using)1110 2609 y(semicolon)32
-b(separators)f(where)e(p)s(ossible.)630 2765 y Fs(login_shell)1110
-2874 y Ft(The)35 b(shell)h(sets)g(this)f(option)h(if)g(it)g(is)f
+5340 y(This)30 b(option)g(is)h(enabled)f(b)m(y)g(default.)p
+eop end
+%%Page: 67 73
+TeXDict begin 67 72 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(67)630 299 y Ft(lastpipe)96
+b Fu(If)24 b(set,)i(and)e(job)g(con)m(trol)i(is)f(not)f(activ)m(e,)k
+(the)d(shell)f(runs)f(the)i(last)g(command)1110 408 y(of)37
+b(a)h(pip)s(eline)e(not)h(executed)h(in)f(the)g(bac)m(kground)g(in)g
+(the)g(curren)m(t)g(shell)1110 518 y(en)m(vironmen)m(t.)630
+677 y Ft(lithist)144 b Fu(If)22 b(enabled,)i(and)d(the)h
+Ft(cmdhist)e Fu(option)j(is)f(enabled,)i(m)m(ulti-line)f(commands)1110
+787 y(are)28 b(sa)m(v)m(ed)h(to)g(the)f(history)g(with)f(em)m(b)s
+(edded)g(newlines)h(rather)g(than)f(using)1110 897 y(semicolon)32
+b(separators)f(where)e(p)s(ossible.)630 1056 y Ft(login_shell)1110
+1166 y Fu(The)35 b(shell)h(sets)g(this)f(option)h(if)g(it)g(is)f
(started)h(as)g(a)g(login)g(shell)g(\(see)g(Sec-)1110
-2984 y(tion)29 b(6.1)g([In)m(v)m(oking)h(Bash],)f(page)g(80\).)41
+1275 y(tion)29 b(6.1)g([In)m(v)m(oking)h(Bash],)f(page)g(80\).)41
b(The)28 b(v)-5 b(alue)29 b(ma)m(y)g(not)f(b)s(e)g(c)m(hanged.)630
-3139 y Fs(mailwarn)96 b Ft(If)34 b(set,)i(and)e(a)h(\014le)g(that)g
+1435 y Ft(mailwarn)96 b Fu(If)34 b(set,)i(and)e(a)h(\014le)g(that)g
(Bash)f(is)h(c)m(hec)m(king)h(for)f(mail)g(has)f(b)s(een)g(accessed)
-1110 3249 y(since)24 b(the)h(last)g(time)f(it)h(w)m(as)f(c)m(hec)m(k)m
-(ed,)k(the)c(message)h Fs("The)k(mail)h(in)f Fi(mail-)1110
-3358 y(file)40 b Fs(has)29 b(been)g(read")g Ft(is)i(displa)m(y)m(ed.)
-630 3513 y Fs(no_empty_cmd_completion)1110 3623 y Ft(If)f(set,)g(and)g
+1110 1544 y(since)24 b(the)h(last)g(time)f(it)h(w)m(as)f(c)m(hec)m(k)m
+(ed,)k(the)c(message)h Ft("The)k(mail)h(in)f Fj(mail-)1110
+1654 y(file)g Ft(has)h(been)f(read")g Fu(is)h(displa)m(y)m(ed.)630
+1813 y Ft(no_empty_cmd_completion)1110 1923 y Fu(If)g(set,)g(and)g
(Readline)g(is)h(b)s(eing)e(used,)h(Bash)g(will)g(not)g(attempt)i(to)e
-(searc)m(h)1110 3733 y(the)25 b Fs(PATH)f Ft(for)h(p)s(ossible)f
+(searc)m(h)1110 2032 y(the)25 b Ft(PATH)f Fu(for)h(p)s(ossible)f
(completions)j(when)d(completion)i(is)f(attempted)h(on)1110
-3842 y(an)k(empt)m(y)h(line.)630 3998 y Fs(nocaseglob)1110
-4107 y Ft(If)38 b(set,)k(Bash)d(matc)m(hes)g(\014lenames)g(in)f(a)h
-(case-insensitiv)m(e)j(fashion)c(when)1110 4217 y(p)s(erforming)29
-b(\014lename)i(expansion.)630 4372 y Fs(nocasematch)1110
-4482 y Ft(If)42 b(set,)k(Bash)d(matc)m(hes)g(patterns)g(in)f(a)h
-(case-insensitiv)m(e)i(fashion)d(when)1110 4591 y(p)s(erforming)31
-b(matc)m(hing)i(while)f(executing)i Fs(case)d Ft(or)h
-Fs([[)g Ft(conditional)h(com-)1110 4701 y(mands.)630
-4856 y Fs(nullglob)96 b Ft(If)23 b(set,)j(Bash)e(allo)m(ws)g
+2142 y(an)k(empt)m(y)h(line.)630 2301 y Ft(nocaseglob)1110
+2411 y Fu(If)38 b(set,)k(Bash)d(matc)m(hes)g(\014lenames)g(in)f(a)h
+(case-insensitiv)m(e)j(fashion)c(when)1110 2521 y(p)s(erforming)29
+b(\014lename)i(expansion.)630 2680 y Ft(nocasematch)1110
+2790 y Fu(If)42 b(set,)k(Bash)d(matc)m(hes)g(patterns)g(in)f(a)h
+(case-insensitiv)m(e)i(fashion)d(when)1110 2899 y(p)s(erforming)31
+b(matc)m(hing)i(while)f(executing)i Ft(case)d Fu(or)h
+Ft([[)g Fu(conditional)h(com-)1110 3009 y(mands.)630
+3168 y Ft(nullglob)96 b Fu(If)23 b(set,)j(Bash)e(allo)m(ws)g
(\014lename)g(patterns)g(whic)m(h)f(matc)m(h)h(no)g(\014les)f(to)i
-(expand)1110 4966 y(to)31 b(a)g(n)m(ull)f(string,)h(rather)f(than)g
-(themselv)m(es.)630 5121 y Fs(progcomp)96 b Ft(If)25
+(expand)1110 3278 y(to)31 b(a)g(n)m(ull)f(string,)h(rather)f(than)g
+(themselv)m(es.)630 3437 y Ft(progcomp)96 b Fu(If)25
b(set,)i(the)f(programmable)g(completion)g(facilities)i(\(see)f
-(Section)f(8.6)h([Pro-)1110 5230 y(grammable)45 b(Completion],)k(page)c
-(125\))h(are)f(enabled.)82 b(This)44 b(option)h(is)1110
-5340 y(enabled)30 b(b)m(y)h(default.)p eop end
-%%Page: 68 74
-TeXDict begin 68 73 bop 150 -116 a Ft(Chapter)30 b(4:)41
-b(Shell)30 b(Builtin)h(Commands)2069 b(68)630 299 y Fs(promptvars)1110
-408 y Ft(If)50 b(set,)56 b(prompt)49 b(strings)h(undergo)g(parameter)h
-(expansion,)k(command)1110 518 y(substitution,)35 b(arithmetic)g
+(Section)f(8.6)h([Pro-)1110 3547 y(grammable)45 b(Completion],)k(page)c
+(124\))h(are)f(enabled.)82 b(This)44 b(option)h(is)1110
+3656 y(enabled)30 b(b)m(y)h(default.)630 3816 y Ft(promptvars)1110
+3925 y Fu(If)50 b(set,)56 b(prompt)49 b(strings)h(undergo)g(parameter)h
+(expansion,)k(command)1110 4035 y(substitution,)35 b(arithmetic)g
(expansion,)g(and)e(quote)i(remo)m(v)-5 b(al)35 b(after)f(b)s(eing)1110
-628 y(expanded)53 b(as)h(describ)s(ed)e(b)s(elo)m(w)i(\(see)h(Section)f
-(6.9)h([Con)m(trolling)g(the)1110 737 y(Prompt],)30 b(page)h(92\).)42
-b(This)30 b(option)h(is)f(enabled)h(b)m(y)f(default.)630
-897 y Fs(restricted_shell)1110 1006 y Ft(The)40 b(shell)h(sets)g(this)g
-(option)g(if)g(it)h(is)e(started)i(in)e(restricted)i(mo)s(de)e(\(see)
-1110 1116 y(Section)c(6.10)g([The)f(Restricted)g(Shell],)i(page)e
-(93\).)56 b(The)34 b(v)-5 b(alue)35 b(ma)m(y)h(not)1110
-1225 y(b)s(e)c(c)m(hanged.)49 b(This)32 b(is)h(not)h(reset)f(when)f
-(the)h(startup)g(\014les)f(are)i(executed,)1110 1335
-y(allo)m(wing)k(the)e(startup)f(\014les)h(to)g(disco)m(v)m(er)h
-(whether)f(or)f(not)i(a)f(shell)g(is)g(re-)1110 1445
-y(stricted.)630 1604 y Fs(shift_verbose)1110 1714 y Ft(If)g(this)g(is)g
-(set,)j(the)d Fs(shift)f Ft(builtin)h(prin)m(ts)f(an)h(error)g(message)
-i(when)d(the)1110 1823 y(shift)30 b(coun)m(t)h(exceeds)g(the)g(n)m(um)m
-(b)s(er)e(of)h(p)s(ositional)i(parameters.)630 1983 y
-Fs(sourcepath)1110 2092 y Ft(If)22 b(set,)j(the)e Fs(source)e
-Ft(builtin)h(uses)g(the)h(v)-5 b(alue)23 b(of)g Fs(PATH)e
-Ft(to)j(\014nd)d(the)h(directory)1110 2202 y(con)m(taining)29
-b(the)e(\014le)h(supplied)e(as)h(an)g(argumen)m(t.)40
-b(This)27 b(option)h(is)f(enabled)1110 2311 y(b)m(y)j(default.)630
-2471 y Fs(xpg_echo)96 b Ft(If)31 b(set,)h(the)g Fs(echo)e
-Ft(builtin)h(expands)f(bac)m(kslash-escap)s(e)j(sequences)f(b)m(y)f
-(de-)1110 2580 y(fault.)630 2740 y(The)c(return)f(status)i(when)f
-(listing)h(options)g(is)f(zero)i(if)e(all)i Fq(optnames)i
-Ft(are)d(enabled,)g(non-)630 2849 y(zero)40 b(otherwise.)66
+4144 y(expanded)53 b(as)h(describ)s(ed)e(b)s(elo)m(w)i(\(see)h(Section)
+f(6.9)h([Con)m(trolling)g(the)1110 4254 y(Prompt],)30
+b(page)h(92\).)42 b(This)30 b(option)h(is)f(enabled)h(b)m(y)f(default.)
+630 4413 y Ft(restricted_shell)1110 4523 y Fu(The)40
+b(shell)h(sets)g(this)g(option)g(if)g(it)h(is)e(started)i(in)e
+(restricted)i(mo)s(de)e(\(see)1110 4633 y(Section)c(6.10)g([The)f
+(Restricted)g(Shell],)i(page)e(93\).)56 b(The)34 b(v)-5
+b(alue)35 b(ma)m(y)h(not)1110 4742 y(b)s(e)c(c)m(hanged.)49
+b(This)32 b(is)h(not)h(reset)f(when)f(the)h(startup)g(\014les)f(are)i
+(executed,)1110 4852 y(allo)m(wing)k(the)e(startup)f(\014les)h(to)g
+(disco)m(v)m(er)h(whether)f(or)f(not)i(a)f(shell)g(is)g(re-)1110
+4961 y(stricted.)630 5121 y Ft(shift_verbose)1110 5230
+y Fu(If)g(this)g(is)g(set,)j(the)d Ft(shift)f Fu(builtin)h(prin)m(ts)f
+(an)h(error)g(message)i(when)d(the)1110 5340 y(shift)30
+b(coun)m(t)h(exceeds)g(the)g(n)m(um)m(b)s(er)e(of)h(p)s(ositional)i
+(parameters.)p eop end
+%%Page: 68 74
+TeXDict begin 68 73 bop 150 -116 a Fu(Chapter)30 b(4:)41
+b(Shell)30 b(Builtin)h(Commands)2069 b(68)630 299 y Ft(sourcepath)1110
+408 y Fu(If)22 b(set,)j(the)e Ft(source)e Fu(builtin)h(uses)g(the)h(v)
+-5 b(alue)23 b(of)g Ft(PATH)e Fu(to)j(\014nd)d(the)h(directory)1110
+518 y(con)m(taining)29 b(the)e(\014le)h(supplied)e(as)h(an)g(argumen)m
+(t.)40 b(This)27 b(option)h(is)f(enabled)1110 628 y(b)m(y)j(default.)
+630 787 y Ft(xpg_echo)96 b Fu(If)31 b(set,)h(the)g Ft(echo)e
+Fu(builtin)h(expands)f(bac)m(kslash-escap)s(e)j(sequences)f(b)m(y)f
+(de-)1110 897 y(fault.)630 1056 y(The)c(return)f(status)i(when)f
+(listing)h(options)g(is)f(zero)i(if)e(all)i Fr(optnames)i
+Fu(are)d(enabled,)g(non-)630 1166 y(zero)40 b(otherwise.)66
b(When)39 b(setting)h(or)f(unsetting)g(options,)i(the)e(return)f
-(status)h(is)g(zero)630 2959 y(unless)30 b(an)g Fq(optname)36
-b Ft(is)30 b(not)h(a)g(v)-5 b(alid)30 b(shell)h(option.)150
-3191 y Fr(4.4)68 b(Sp)t(ecial)45 b(Builtins)150 3351
-y Ft(F)-8 b(or)35 b(historical)h(reasons,)g(the)e Fl(posix)g
-Ft(standard)f(has)i(classi\014ed)f(sev)m(eral)i(builtin)e(commands)g
-(as)h Fk(sp)-5 b(e-)150 3460 y(cial)p Ft(.)47 b(When)33
-b(Bash)f(is)h(executing)g(in)f Fl(posix)g Ft(mo)s(de,)h(the)g(sp)s
+(status)h(is)g(zero)630 1275 y(unless)30 b(an)g Fr(optname)36
+b Fu(is)30 b(not)h(a)g(v)-5 b(alid)30 b(shell)h(option.)150
+1508 y Fs(4.4)68 b(Sp)t(ecial)45 b(Builtins)150 1667
+y Fu(F)-8 b(or)35 b(historical)h(reasons,)g(the)e Fm(posix)g
+Fu(standard)f(has)i(classi\014ed)f(sev)m(eral)i(builtin)e(commands)g
+(as)h Fl(sp)-5 b(e-)150 1777 y(cial)p Fu(.)47 b(When)33
+b(Bash)f(is)h(executing)g(in)f Fm(posix)g Fu(mo)s(de,)h(the)g(sp)s
(ecial)g(builtins)e(di\013er)i(from)f(other)g(builtin)150
-3570 y(commands)e(in)g(three)h(resp)s(ects:)199 3704
+1886 y(commands)e(in)g(three)h(resp)s(ects:)199 2021
y(1.)61 b(Sp)s(ecial)31 b(builtins)e(are)i(found)e(b)s(efore)h(shell)h
-(functions)f(during)f(command)h(lo)s(okup.)199 3839 y(2.)61
+(functions)f(during)f(command)h(lo)s(okup.)199 2155 y(2.)61
b(If)30 b(a)h(sp)s(ecial)g(builtin)f(returns)f(an)h(error)g(status,)h
-(a)g(non-in)m(teractiv)m(e)i(shell)d(exits.)199 3973
+(a)g(non-in)m(teractiv)m(e)i(shell)d(exits.)199 2290
y(3.)61 b(Assignmen)m(t)30 b(statemen)m(ts)h(preceding)f(the)f(command)
g(sta)m(y)i(in)e(e\013ect)i(in)e(the)h(shell)f(en)m(vironmen)m(t)330
-4083 y(after)i(the)f(command)h(completes.)275 4242 y(When)36
-b(Bash)g(is)h(not)f(executing)i(in)e Fl(posix)f Ft(mo)s(de,)j(these)f
+2399 y(after)i(the)f(command)h(completes.)275 2559 y(When)36
+b(Bash)g(is)h(not)f(executing)i(in)e Fm(posix)f Fu(mo)s(de,)j(these)f
(builtins)f(b)s(eha)m(v)m(e)h(no)f(di\013eren)m(tly)h(than)150
-4352 y(the)31 b(rest)f(of)h(the)f(Bash)h(builtin)e(commands.)41
-b(The)30 b(Bash)g Fl(posix)g Ft(mo)s(de)g(is)g(describ)s(ed)f(in)h
-(Section)h(6.11)150 4462 y([Bash)g(POSIX)e(Mo)s(de],)i(page)g(94.)275
-4596 y(These)f(are)g(the)h Fl(posix)f Ft(sp)s(ecial)h(builtins:)390
-4731 y Fs(break)46 b(:)i(.)f(continue)f(eval)g(exec)h(exit)g(export)f
-(readonly)f(return)h(set)390 4840 y(shift)g(trap)h(unset)p
+2668 y(the)31 b(rest)f(of)h(the)f(Bash)h(builtin)e(commands.)41
+b(The)30 b(Bash)g Fm(posix)g Fu(mo)s(de)g(is)g(describ)s(ed)f(in)h
+(Section)h(6.11)150 2778 y([Bash)g(POSIX)e(Mo)s(de],)i(page)g(94.)275
+2912 y(These)f(are)g(the)h Fm(posix)f Fu(sp)s(ecial)h(builtins:)390
+3047 y Ft(break)46 b(:)i(.)f(continue)f(eval)g(exec)h(exit)g(export)f
+(readonly)f(return)h(set)390 3156 y(shift)g(trap)h(unset)p
eop end
%%Page: 69 75
-TeXDict begin 69 74 bop 150 -116 a Ft(Chapter)30 b(5:)41
-b(Shell)30 b(V)-8 b(ariables)2459 b(69)150 299 y Fo(5)80
-b(Shell)53 b(V)-13 b(ariables)150 541 y Ft(This)21 b(c)m(hapter)i
+TeXDict begin 69 74 bop 150 -116 a Fu(Chapter)30 b(5:)41
+b(Shell)30 b(V)-8 b(ariables)2459 b(69)150 299 y Fp(5)80
+b(Shell)53 b(V)-13 b(ariables)150 541 y Fu(This)21 b(c)m(hapter)i
(describ)s(es)e(the)i(shell)f(v)-5 b(ariables)23 b(that)f(Bash)h(uses.)
37 b(Bash)23 b(automatically)h(assigns)f(default)150
651 y(v)-5 b(alues)31 b(to)g(a)g(n)m(um)m(b)s(er)e(of)h(v)-5
-b(ariables.)150 888 y Fr(5.1)68 b(Bourne)45 b(Shell)g(V)-11
-b(ariables)150 1047 y Ft(Bash)30 b(uses)g(certain)h(shell)g(v)-5
+b(ariables.)150 888 y Fs(5.1)68 b(Bourne)45 b(Shell)g(V)-11
+b(ariables)150 1047 y Fu(Bash)30 b(uses)g(certain)h(shell)g(v)-5
b(ariables)31 b(in)f(the)g(same)h(w)m(a)m(y)g(as)g(the)f(Bourne)g
(shell.)41 b(In)30 b(some)g(cases,)i(Bash)150 1157 y(assigns)f(a)f
(default)h(v)-5 b(alue)31 b(to)g(the)f(v)-5 b(ariable.)150
-1320 y Fs(CDPATH)192 b Ft(A)39 b(colon-separated)i(list)e(of)g
+1320 y Ft(CDPATH)192 b Fu(A)39 b(colon-separated)i(list)e(of)g
(directories)h(used)f(as)g(a)g(searc)m(h)h(path)e(for)h(the)g
-Fs(cd)f Ft(builtin)630 1430 y(command.)150 1592 y Fs(HOME)288
-b Ft(The)23 b(curren)m(t)h(user's)f(home)g(directory;)k(the)d(default)g
-(for)f(the)h Fs(cd)f Ft(builtin)g(command.)38 b(The)630
+Ft(cd)f Fu(builtin)630 1430 y(command.)150 1592 y Ft(HOME)288
+b Fu(The)23 b(curren)m(t)h(user's)f(home)g(directory;)k(the)d(default)g
+(for)f(the)h Ft(cd)f Fu(builtin)g(command.)38 b(The)630
1702 y(v)-5 b(alue)37 b(of)f(this)g(v)-5 b(ariable)37
b(is)g(also)g(used)e(b)m(y)h(tilde)h(expansion)f(\(see)i(Section)f
(3.5.2)h([Tilde)630 1811 y(Expansion],)30 b(page)h(22\).)150
-1973 y Fs(IFS)336 b Ft(A)25 b(list)i(of)e(c)m(haracters)i(that)f
+1973 y Ft(IFS)336 b Fu(A)25 b(list)i(of)e(c)m(haracters)i(that)f
(separate)g(\014elds;)h(used)e(when)f(the)i(shell)f(splits)h(w)m(ords)e
-(as)i(part)630 2083 y(of)31 b(expansion.)150 2245 y Fs(MAIL)288
-b Ft(If)44 b(this)g(parameter)h(is)g(set)g(to)g(a)f(\014lename)h(or)f
-(directory)h(name)g(and)f(the)g Fs(MAILPATH)630 2355
-y Ft(v)-5 b(ariable)32 b(is)e(not)h(set,)h(Bash)f(informs)f(the)h(user)
+(as)i(part)630 2083 y(of)31 b(expansion.)150 2245 y Ft(MAIL)288
+b Fu(If)44 b(this)g(parameter)h(is)g(set)g(to)g(a)f(\014lename)h(or)f
+(directory)h(name)g(and)f(the)g Ft(MAILPATH)630 2355
+y Fu(v)-5 b(ariable)32 b(is)e(not)h(set,)h(Bash)f(informs)f(the)h(user)
f(of)h(the)g(arriv)-5 b(al)31 b(of)g(mail)g(in)g(the)g(sp)s(eci\014ed)
630 2464 y(\014le)f(or)h(Maildir-format)g(directory)-8
-b(.)150 2627 y Fs(MAILPATH)96 b Ft(A)33 b(colon-separated)i(list)f(of)f
+b(.)150 2627 y Ft(MAILPATH)96 b Fu(A)33 b(colon-separated)i(list)f(of)f
(\014lenames)h(whic)m(h)f(the)g(shell)g(p)s(erio)s(dically)h(c)m(hec)m
(ks)g(for)f(new)630 2736 y(mail.)60 b(Eac)m(h)37 b(list)g(en)m(try)g
(can)g(sp)s(ecify)f(the)h(message)h(that)f(is)g(prin)m(ted)f(when)f
(new)h(mail)630 2846 y(arriv)m(es)31 b(in)g(the)g(mail)g(\014le)g(b)m
(y)g(separating)h(the)f(\014lename)g(from)f(the)h(message)h(with)e(a)i
-(`)p Fs(?)p Ft('.)630 2955 y(When)g(used)f(in)h(the)g(text)i(of)e(the)g
-(message,)i Fs($_)e Ft(expands)f(to)i(the)f(name)g(of)h(the)f(curren)m
-(t)630 3065 y(mail)f(\014le.)150 3227 y Fs(OPTARG)192
-b Ft(The)30 b(v)-5 b(alue)31 b(of)f(the)h(last)g(option)g(argumen)m(t)g
-(pro)s(cessed)f(b)m(y)g(the)g Fs(getopts)f Ft(builtin.)150
-3389 y Fs(OPTIND)192 b Ft(The)30 b(index)g(of)g(the)h(last)g(option)g
-(argumen)m(t)g(pro)s(cessed)f(b)m(y)g(the)g Fs(getopts)f
-Ft(builtin.)150 3552 y Fs(PATH)288 b Ft(A)32 b(colon-separated)i(list)f
+(`)p Ft(?)p Fu('.)630 2955 y(When)g(used)f(in)h(the)g(text)i(of)e(the)g
+(message,)i Ft($_)e Fu(expands)f(to)i(the)f(name)g(of)h(the)f(curren)m
+(t)630 3065 y(mail)f(\014le.)150 3227 y Ft(OPTARG)192
+b Fu(The)30 b(v)-5 b(alue)31 b(of)f(the)h(last)g(option)g(argumen)m(t)g
+(pro)s(cessed)f(b)m(y)g(the)g Ft(getopts)f Fu(builtin.)150
+3389 y Ft(OPTIND)192 b Fu(The)30 b(index)g(of)g(the)h(last)g(option)g
+(argumen)m(t)g(pro)s(cessed)f(b)m(y)g(the)g Ft(getopts)f
+Fu(builtin.)150 3552 y Ft(PATH)288 b Fu(A)32 b(colon-separated)i(list)f
(of)f(directories)h(in)e(whic)m(h)h(the)g(shell)g(lo)s(oks)h(for)f
(commands.)45 b(A)630 3661 y(zero-length)e(\(n)m(ull\))g(directory)f
-(name)g(in)g(the)g(v)-5 b(alue)42 b(of)g Fs(PATH)f Ft(indicates)i(the)f
+(name)g(in)g(the)g(v)-5 b(alue)42 b(of)g Ft(PATH)f Fu(indicates)i(the)f
(curren)m(t)630 3771 y(directory)-8 b(.)49 b(A)33 b(n)m(ull)f
(directory)i(name)e(ma)m(y)i(app)s(ear)e(as)h(t)m(w)m(o)h(adjacen)m(t)g
(colons,)g(or)f(as)g(an)630 3880 y(initial)f(or)e(trailing)h(colon.)150
-4042 y Fs(PS1)336 b Ft(The)35 b(primary)f(prompt)h(string.)55
-b(The)35 b(default)h(v)-5 b(alue)35 b(is)h(`)p Fs(\\s-\\v\\$)28
-b Ft('.)56 b(See)36 b(Section)g(6.9)630 4152 y([Con)m(trolling)42
+4042 y Ft(PS1)336 b Fu(The)35 b(primary)f(prompt)h(string.)55
+b(The)35 b(default)h(v)-5 b(alue)35 b(is)h(`)p Ft(\\s-\\v\\$)28
+b Fu('.)56 b(See)36 b(Section)g(6.9)630 4152 y([Con)m(trolling)42
b(the)e(Prompt],)j(page)e(92,)j(for)c(the)g(complete)i(list)f(of)f
(escap)s(e)h(sequences)630 4262 y(that)31 b(are)g(expanded)e(b)s(efore)
-h Fs(PS1)g Ft(is)g(displa)m(y)m(ed.)150 4424 y Fs(PS2)336
-b Ft(The)30 b(secondary)g(prompt)g(string.)41 b(The)29
-b(default)i(v)-5 b(alue)31 b(is)f(`)p Fs(>)g Ft('.)150
-4661 y Fr(5.2)68 b(Bash)45 b(V)-11 b(ariables)150 4820
-y Ft(These)45 b(v)-5 b(ariables)46 b(are)g(set)g(or)f(used)f(b)m(y)h
+h Ft(PS1)g Fu(is)g(displa)m(y)m(ed.)150 4424 y Ft(PS2)336
+b Fu(The)30 b(secondary)g(prompt)g(string.)41 b(The)29
+b(default)i(v)-5 b(alue)31 b(is)f(`)p Ft(>)g Fu('.)150
+4661 y Fs(5.2)68 b(Bash)45 b(V)-11 b(ariables)150 4820
+y Fu(These)45 b(v)-5 b(ariables)46 b(are)g(set)g(or)f(used)f(b)m(y)h
(Bash,)50 b(but)44 b(other)i(shells)f(do)h(not)f(normally)h(treat)g
(them)150 4929 y(sp)s(ecially)-8 b(.)275 5067 y(A)24
b(few)g(v)-5 b(ariables)24 b(used)g(b)m(y)f(Bash)i(are)f(describ)s(ed)f
(in)h(di\013eren)m(t)g(c)m(hapters:)38 b(v)-5 b(ariables)25
b(for)f(con)m(trolling)150 5176 y(the)31 b(job)f(con)m(trol)h
(facilities)i(\(see)e(Section)g(7.3)h([Job)e(Con)m(trol)h(V)-8
-b(ariables],)32 b(page)g(101\).)150 5340 y Fs(BASH)288
-b Ft(The)30 b(full)g(pathname)g(used)g(to)h(execute)h(the)e(curren)m(t)
+b(ariables],)32 b(page)g(100\).)150 5340 y Ft(BASH)288
+b Fu(The)30 b(full)g(pathname)g(used)g(to)h(execute)h(the)e(curren)m(t)
g(instance)h(of)g(Bash.)p eop end
%%Page: 70 76
-TeXDict begin 70 75 bop 150 -116 a Ft(Chapter)30 b(5:)41
-b(Shell)30 b(V)-8 b(ariables)2459 b(70)150 299 y Fs(BASHOPTS)96
-b Ft(A)31 b(colon-separated)h(list)f(of)g(enabled)f(shell)h(options.)41
+TeXDict begin 70 75 bop 150 -116 a Fu(Chapter)30 b(5:)41
+b(Shell)30 b(V)-8 b(ariables)2459 b(70)150 299 y Ft(BASHOPTS)96
+b Fu(A)31 b(colon-separated)h(list)f(of)g(enabled)f(shell)h(options.)41
b(Eac)m(h)31 b(w)m(ord)f(in)g(the)h(list)g(is)g(a)g(v)-5
-b(alid)630 408 y(argumen)m(t)33 b(for)g(the)f(`)p Fs(-s)p
-Ft(')h(option)g(to)g(the)g Fs(shopt)e Ft(builtin)i(command)f(\(see)i
-(Section)f(4.3.2)630 518 y([The)j(Shopt)g(Builtin],)i(page)f(63\).)60
-b(The)36 b(options)h(app)s(earing)f(in)g Fs(BASHOPTS)e
-Ft(are)i(those)630 628 y(rep)s(orted)e(as)h(`)p Fs(on)p
-Ft(')f(b)m(y)h(`)p Fs(shopt)p Ft('.)53 b(If)34 b(this)g(v)-5
+b(alid)630 408 y(argumen)m(t)37 b(for)g(the)g Ft(-s)f
+Fu(option)i(to)f(the)g Ft(shopt)f Fu(builtin)g(command)h(\(see)g
+(Section)h(4.3.2)630 518 y([The)e(Shopt)g(Builtin],)i(page)f(62\).)60
+b(The)36 b(options)h(app)s(earing)f(in)g Ft(BASHOPTS)e
+Fu(are)i(those)630 628 y(rep)s(orted)e(as)h(`)p Ft(on)p
+Fu(')f(b)m(y)h(`)p Ft(shopt)p Fu('.)53 b(If)34 b(this)g(v)-5
b(ariable)36 b(is)f(in)f(the)h(en)m(vironmen)m(t)g(when)f(Bash)630
737 y(starts)25 b(up,)f(eac)m(h)i(shell)e(option)h(in)e(the)i(list)g
(will)f(b)s(e)g(enabled)g(b)s(efore)g(reading)g(an)m(y)g(startup)630
847 y(\014les.)41 b(This)29 b(v)-5 b(ariable)31 b(is)g(readonly)-8
-b(.)150 1003 y Fs(BASHPID)144 b Ft(Expands)35 b(to)i(the)f(pro)s(cess)f
+b(.)150 1003 y Ft(BASHPID)144 b Fu(Expands)35 b(to)i(the)f(pro)s(cess)f
(ID)i(of)f(the)g(curren)m(t)g(Bash)g(pro)s(cess.)58 b(This)35
-b(di\013ers)h(from)g Fs($$)630 1113 y Ft(under)31 b(certain)j
+b(di\013ers)h(from)g Ft($$)630 1113 y Fu(under)31 b(certain)j
(circumstances,)h(suc)m(h)e(as)g(subshells)f(that)i(do)f(not)g(require)
g(Bash)g(to)h(b)s(e)630 1223 y(re-initialized.)150 1379
-y Fs(BASH_ALIASES)630 1489 y Ft(An)40 b(asso)s(ciativ)m(e)j(arra)m(y)d
+y Ft(BASH_ALIASES)630 1489 y Fu(An)40 b(asso)s(ciativ)m(e)j(arra)m(y)d
(v)-5 b(ariable)41 b(whose)f(mem)m(b)s(ers)f(corresp)s(ond)g(to)i(the)f
(in)m(ternal)h(list)630 1598 y(of)c(aliases)h(as)f(main)m(tained)g(b)m
-(y)g(the)g Fs(alias)e Ft(builtin.)59 b(\(see)37 b(Section)h(4.1)f
+(y)g(the)g Ft(alias)e Fu(builtin.)59 b(\(see)37 b(Section)h(4.1)f
([Bourne)g(Shell)630 1708 y(Builtins],)f(page)e(41\).)53
b(Elemen)m(ts)35 b(added)e(to)i(this)e(arra)m(y)i(app)s(ear)e(in)h(the)
g(alias)h(list;)i(un-)630 1817 y(setting)31 b(arra)m(y)g(elemen)m(ts)h
(cause)f(aliases)h(to)f(b)s(e)f(remo)m(v)m(ed)h(from)f(the)h(alias)g
-(list.)150 1974 y Fs(BASH_ARGC)630 2084 y Ft(An)f(arra)m(y)h(v)-5
+(list.)150 1974 y Ft(BASH_ARGC)630 2084 y Fu(An)f(arra)m(y)h(v)-5
b(ariable)31 b(whose)f(v)-5 b(alues)31 b(are)g(the)f(n)m(um)m(b)s(er)g
(of)g(parameters)h(in)f(eac)m(h)h(frame)g(of)630 2193
y(the)26 b(curren)m(t)f(bash)g(execution)i(call)g(stac)m(k.)41
b(The)25 b(n)m(um)m(b)s(er)g(of)h(parameters)g(to)g(the)g(curren)m(t)
630 2303 y(subroutine)i(\(shell)i(function)g(or)f(script)g(executed)i
-(with)e Fs(.)g Ft(or)h Fs(source)p Ft(\))e(is)h(at)h(the)g(top)g(of)630
+(with)e Ft(.)g Fu(or)h Ft(source)p Fu(\))e(is)h(at)h(the)g(top)g(of)630
2412 y(the)37 b(stac)m(k.)63 b(When)37 b(a)h(subroutine)e(is)h
(executed,)j(the)e(n)m(um)m(b)s(er)d(of)j(parameters)f(passed)630
-2522 y(is)g(pushed)f(on)m(to)i Fs(BASH_ARGC)p Ft(.)59
-b(The)37 b(shell)g(sets)h Fs(BASH_ARGC)c Ft(only)k(when)e(in)h
+2522 y(is)g(pushed)f(on)m(to)i Ft(BASH_ARGC)p Fu(.)59
+b(The)37 b(shell)g(sets)h Ft(BASH_ARGC)c Fu(only)k(when)e(in)h
(extended)630 2632 y(debugging)23 b(mo)s(de)f(\(see)h(Section)g(4.3.2)i
-([The)d(Shopt)g(Builtin],)j(page)e(63)h(for)e(a)h(description)630
-2741 y(of)31 b(the)f Fs(extdebug)e Ft(option)j(to)g(the)g
-Fs(shopt)e Ft(builtin\).)150 2898 y Fs(BASH_ARGV)630
-3007 y Ft(An)24 b(arra)m(y)g(v)-5 b(ariable)25 b(con)m(taining)h(all)f
+([The)d(Shopt)g(Builtin],)j(page)e(62)h(for)e(a)h(description)630
+2741 y(of)31 b(the)f Ft(extdebug)e Fu(option)j(to)g(the)g
+Ft(shopt)e Fu(builtin\).)150 2898 y Ft(BASH_ARGV)630
+3007 y Fu(An)24 b(arra)m(y)g(v)-5 b(ariable)25 b(con)m(taining)h(all)f
(of)f(the)h(parameters)f(in)g(the)g(curren)m(t)g(bash)g(execution)630
3117 y(call)35 b(stac)m(k.)53 b(The)34 b(\014nal)g(parameter)g(of)g
(the)g(last)h(subroutine)e(call)i(is)f(at)h(the)f(top)h(of)f(the)630
3226 y(stac)m(k;)28 b(the)c(\014rst)f(parameter)i(of)f(the)g(initial)i
(call)f(is)f(at)h(the)f(b)s(ottom.)39 b(When)24 b(a)g(subroutine)630
3336 y(is)40 b(executed,)j(the)d(parameters)h(supplied)d(are)i(pushed)f
-(on)m(to)i Fs(BASH_ARGV)p Ft(.)66 b(The)40 b(shell)630
-3446 y(sets)28 b Fs(BASH_ARGV)e Ft(only)i(when)f(in)h(extended)g
+(on)m(to)i Ft(BASH_ARGV)p Fu(.)66 b(The)40 b(shell)630
+3446 y(sets)28 b Ft(BASH_ARGV)e Fu(only)i(when)f(in)h(extended)g
(debugging)g(mo)s(de)g(\(see)h(Section)f(4.3.2)i([The)630
-3555 y(Shopt)i(Builtin],)h(page)g(63)g(for)f(a)h(description)f(of)h
-(the)f Fs(extdebug)e Ft(option)j(to)g(the)f Fs(shopt)630
-3665 y Ft(builtin\).)150 3821 y Fs(BASH_CMDS)630 3931
-y Ft(An)i(asso)s(ciativ)m(e)i(arra)m(y)f(v)-5 b(ariable)35
+3555 y(Shopt)i(Builtin],)h(page)g(62)g(for)f(a)h(description)f(of)h
+(the)f Ft(extdebug)e Fu(option)j(to)g(the)f Ft(shopt)630
+3665 y Fu(builtin\).)150 3821 y Ft(BASH_CMDS)630 3931
+y Fu(An)i(asso)s(ciativ)m(e)i(arra)m(y)f(v)-5 b(ariable)35
b(whose)f(mem)m(b)s(ers)f(corresp)s(ond)g(to)i(the)f(in)m(ternal)h
(hash)630 4041 y(table)c(of)g(commands)f(as)g(main)m(tained)h(b)m(y)g
-(the)f Fs(hash)f Ft(builtin)h(\(see)h(Section)g(4.1)h([Bourne)630
+(the)f Ft(hash)f Fu(builtin)h(\(see)h(Section)g(4.1)h([Bourne)630
4150 y(Shell)23 b(Builtins],)j(page)e(41\).)40 b(Elemen)m(ts)24
b(added)e(to)j(this)e(arra)m(y)h(app)s(ear)e(in)i(the)f(hash)g(table;)
630 4260 y(unsetting)30 b(arra)m(y)h(elemen)m(ts)h(cause)f(commands)f
(to)h(b)s(e)f(remo)m(v)m(ed)h(from)f(the)h(hash)e(table.)150
-4416 y Fs(BASH_COMMAND)630 4526 y Ft(The)39 b(command)h(curren)m(tly)g
+4416 y Ft(BASH_COMMAND)630 4526 y Fu(The)39 b(command)h(curren)m(tly)g
(b)s(eing)f(executed)i(or)e(ab)s(out)h(to)g(b)s(e)f(executed,)44
b(unless)39 b(the)630 4635 y(shell)g(is)g(executing)g(a)g(command)g(as)
g(the)f(result)h(of)g(a)g(trap,)i(in)d(whic)m(h)g(case)i(it)f(is)g(the)
630 4745 y(command)30 b(executing)i(at)f(the)f(time)h(of)g(the)g(trap.)
-150 4902 y Fs(BASH_COMPAT)630 5011 y Ft(The)i(v)-5 b(alue)34
+150 4902 y Ft(BASH_COMPAT)630 5011 y Fu(The)i(v)-5 b(alue)34
b(is)f(used)g(to)h(set)f(the)h(shell's)g(compatibilit)m(y)h(lev)m(el.)
51 b(See)34 b(Section)g(4.3.2)h([The)630 5121 y(Shopt)40
-b(Builtin],)45 b(page)c(63,)k(for)c(a)g(description)g(of)g(the)g(v)-5
+b(Builtin],)45 b(page)c(62,)k(for)c(a)g(description)g(of)g(the)g(v)-5
b(arious)41 b(compatibilit)m(y)i(lev)m(els)630 5230 y(and)31
b(their)g(e\013ects.)45 b(The)31 b(v)-5 b(alue)31 b(ma)m(y)h(b)s(e)f(a)
h(decimal)g(n)m(um)m(b)s(er)e(\(e.g.,)j(4.2\))g(or)e(an)h(in)m(teger)
630 5340 y(\(e.g.,)39 b(42\))f(corresp)s(onding)d(to)i(the)f(desired)f
-(compatibilit)m(y)k(lev)m(el.)59 b(If)36 b Fs(BASH_COMPAT)d
-Ft(is)p eop end
+(compatibilit)m(y)k(lev)m(el.)59 b(If)36 b Ft(BASH_COMPAT)d
+Fu(is)p eop end
%%Page: 71 77
-TeXDict begin 71 76 bop 150 -116 a Ft(Chapter)30 b(5:)41
+TeXDict begin 71 76 bop 150 -116 a Fu(Chapter)30 b(5:)41
b(Shell)30 b(V)-8 b(ariables)2459 b(71)630 299 y(unset)37
b(or)g(set)h(to)g(the)g(empt)m(y)f(string,)j(the)d(compatibilit)m(y)j
(lev)m(el)f(is)e(set)h(to)g(the)g(default)630 408 y(for)i(the)h(curren)
-m(t)f(v)m(ersion.)72 b(If)40 b Fs(BASH_COMPAT)e Ft(is)i(set)h(to)h(a)e
+m(t)f(v)m(ersion.)72 b(If)40 b Ft(BASH_COMPAT)e Fu(is)i(set)h(to)h(a)e
(v)-5 b(alue)41 b(that)h(is)e(not)h(one)g(of)630 518
y(the)f(v)-5 b(alid)40 b(compatibilit)m(y)i(lev)m(els,)i(the)c(shell)g
(prin)m(ts)f(an)h(error)f(message)i(and)f(sets)g(the)630
(curren)m(t)g(v)m(ersion.)38 b(The)20 b(v)-5 b(alid)21
b(compatibilit)m(y)630 737 y(lev)m(els)40 b(corresp)s(ond)e(to)h(the)g
(compatibilit)m(y)i(options)e(accepted)h(b)m(y)f(the)g
-Fs(shopt)e Ft(builtin)630 847 y(describ)s(ed)20 b(ab)s(o)m(v)m(e)i
-(\(for)g(example,)h Fq(compat42)31 b Ft(means)21 b(that)g(4.2)i(and)d
+Ft(shopt)e Fu(builtin)630 847 y(describ)s(ed)20 b(ab)s(o)m(v)m(e)i
+(\(for)g(example,)h Fr(compat42)31 b Fu(means)21 b(that)g(4.2)i(and)d
(42)i(are)g(v)-5 b(alid)21 b(v)-5 b(alues\).)630 956
y(The)30 b(curren)m(t)g(v)m(ersion)h(is)f(also)i(a)e(v)-5
-b(alid)31 b(v)-5 b(alue.)150 1121 y Fs(BASH_ENV)96 b
-Ft(If)28 b(this)g(v)-5 b(ariable)30 b(is)e(set)h(when)f(Bash)g(is)h(in)
+b(alid)31 b(v)-5 b(alue.)150 1121 y Ft(BASH_ENV)96 b
+Fu(If)28 b(this)g(v)-5 b(ariable)30 b(is)e(set)h(when)f(Bash)g(is)h(in)
m(v)m(ok)m(ed)h(to)f(execute)h(a)e(shell)h(script,)g(its)g(v)-5
b(alue)29 b(is)630 1230 y(expanded)k(and)h(used)g(as)g(the)h(name)f(of)
g(a)h(startup)f(\014le)g(to)h(read)f(b)s(efore)g(executing)i(the)630
1340 y(script.)41 b(See)30 b(Section)h(6.2)h([Bash)f(Startup)e(Files],)
-j(page)f(82.)150 1504 y Fs(BASH_EXECUTION_STRING)630
-1614 y Ft(The)f(command)g(argumen)m(t)h(to)g(the)g(`)p
-Fs(-c)p Ft(')f(in)m(v)m(o)s(cation)i(option.)150 1778
-y Fs(BASH_LINENO)630 1888 y Ft(An)62 b(arra)m(y)i(v)-5
-b(ariable)63 b(whose)g(mem)m(b)s(ers)e(are)j(the)e(line)h(n)m(um)m(b)s
-(ers)f(in)g(source)h(\014les)630 1998 y(where)46 b(eac)m(h)i(corresp)s
-(onding)e(mem)m(b)s(er)f(of)i Fq(FUNCNAME)53 b Ft(w)m(as)47
-b(in)m(v)m(ok)m(ed.)91 b Fs(${BASH_)630 2107 y(LINENO[$i]})39
-b Ft(is)i(the)h(line)g(n)m(um)m(b)s(er)e(in)i(the)f(source)h(\014le)g
-(\()p Fs(${BASH_SOURCE[$i+1]})p Ft(\))630 2217 y(where)d
-Fs(${FUNCNAME[$i]})c Ft(w)m(as)k(called)i(\(or)e Fs
-(${BASH_LINENO[$i-1]})34 b Ft(if)39 b(referenced)630
+j(page)f(82.)150 1504 y Ft(BASH_EXECUTION_STRING)630
+1614 y Fu(The)f(command)g(argumen)m(t)h(to)g(the)g Ft(-c)e
+Fu(in)m(v)m(o)s(cation)k(option.)150 1778 y Ft(BASH_LINENO)630
+1888 y Fu(An)62 b(arra)m(y)i(v)-5 b(ariable)63 b(whose)g(mem)m(b)s(ers)
+e(are)j(the)e(line)h(n)m(um)m(b)s(ers)f(in)g(source)h(\014les)630
+1998 y(where)46 b(eac)m(h)i(corresp)s(onding)d(mem)m(b)s(er)h(of)h
+Fr(FUNCNAME)53 b Fu(w)m(as)47 b(in)m(v)m(ok)m(ed.)91
+b Ft(${BASH_)630 2107 y(LINENO[$i]})39 b Fu(is)i(the)h(line)g(n)m(um)m
+(b)s(er)e(in)i(the)f(source)h(\014le)g(\()p Ft(${BASH_SOURCE[$i+1]})p
+Fu(\))630 2217 y(where)d Ft(${FUNCNAME[$i]})c Fu(w)m(as)k(called)i
+(\(or)e Ft(${BASH_LINENO[$i-1]})34 b Fu(if)39 b(referenced)630
2326 y(within)30 b(another)g(shell)h(function\).)41 b(Use)31
-b Fs(LINENO)d Ft(to)j(obtain)g(the)g(curren)m(t)f(line)h(n)m(um)m(b)s
-(er.)150 2491 y Fs(BASH_REMATCH)630 2600 y Ft(An)43 b(arra)m(y)i(v)-5
+b Ft(LINENO)d Fu(to)j(obtain)g(the)g(curren)m(t)f(line)h(n)m(um)m(b)s
+(er.)150 2491 y Ft(BASH_REMATCH)630 2600 y Fu(An)43 b(arra)m(y)i(v)-5
b(ariable)44 b(whose)g(mem)m(b)s(ers)f(are)h(assigned)g(b)m(y)f(the)h
-(`)p Fs(=~)p Ft(')g(binary)f(op)s(erator)630 2710 y(to)37
-b(the)f Fs([[)g Ft(conditional)i(command)e(\(see)h(Section)g(3.2.4.2)i
+(`)p Ft(=~)p Fu(')g(binary)f(op)s(erator)630 2710 y(to)37
+b(the)f Ft([[)g Fu(conditional)i(command)e(\(see)h(Section)g(3.2.4.2)i
([Conditional)e(Constructs],)630 2819 y(page)e(10\).)52
b(The)33 b(elemen)m(t)j(with)d(index)g(0)i(is)f(the)g(p)s(ortion)f(of)h
(the)g(string)g(matc)m(hing)h(the)630 2929 y(en)m(tire)29
b(regular)f(expression.)40 b(The)27 b(elemen)m(t)j(with)d(index)h
-Fq(n)f Ft(is)h(the)g(p)s(ortion)g(of)g(the)g(string)630
-3039 y(matc)m(hing)j(the)g Fq(n)p Ft(th)f(paren)m(thesized)h(sub)s
+Fr(n)f Fu(is)h(the)g(p)s(ortion)g(of)g(the)g(string)630
+3039 y(matc)m(hing)j(the)g Fr(n)p Fu(th)f(paren)m(thesized)h(sub)s
(expression.)39 b(This)29 b(v)-5 b(ariable)31 b(is)g(read-only)-8
-b(.)150 3203 y Fs(BASH_SOURCE)630 3313 y Ft(An)40 b(arra)m(y)h(v)-5
+b(.)150 3203 y Ft(BASH_SOURCE)630 3313 y Fu(An)40 b(arra)m(y)h(v)-5
b(ariable)41 b(whose)f(mem)m(b)s(ers)g(are)h(the)g(source)f
(\014lenames)h(where)f(the)g(corre-)630 3422 y(sp)s(onding)27
-b(shell)i(function)f(names)g(in)g(the)h Fs(FUNCNAME)d
-Ft(arra)m(y)j(v)-5 b(ariable)30 b(are)f(de\014ned.)38
-b(The)630 3532 y(shell)26 b(function)g Fs(${FUNCNAME[$i]})c
-Ft(is)k(de\014ned)f(in)g(the)h(\014le)h Fs(${BASH_SOURCE[$i]})21
-b Ft(and)630 3641 y(called)32 b(from)d Fs(${BASH_SOURCE[$i+1]})150
-3806 y(BASH_SUBSHELL)630 3915 y Ft(Incremen)m(ted)24
+b(shell)i(function)f(names)g(in)g(the)h Ft(FUNCNAME)d
+Fu(arra)m(y)j(v)-5 b(ariable)30 b(are)f(de\014ned.)38
+b(The)630 3532 y(shell)26 b(function)g Ft(${FUNCNAME[$i]})c
+Fu(is)k(de\014ned)f(in)g(the)h(\014le)h Ft(${BASH_SOURCE[$i]})21
+b Fu(and)630 3641 y(called)32 b(from)d Ft(${BASH_SOURCE[$i+1]})150
+3806 y(BASH_SUBSHELL)630 3915 y Fu(Incremen)m(ted)24
b(b)m(y)f(one)h(within)f(eac)m(h)i(subshell)d(or)i(subshell)e(en)m
(vironmen)m(t)i(when)f(the)h(shell)630 4025 y(b)s(egins)30
b(executing)h(in)f(that)h(en)m(vironmen)m(t.)42 b(The)30
-b(initial)h(v)-5 b(alue)31 b(is)f(0.)150 4189 y Fs(BASH_VERSINFO)630
-4299 y Ft(A)36 b(readonly)g(arra)m(y)g(v)-5 b(ariable)37
+b(initial)h(v)-5 b(alue)31 b(is)f(0.)150 4189 y Ft(BASH_VERSINFO)630
+4299 y Fu(A)36 b(readonly)g(arra)m(y)g(v)-5 b(ariable)37
b(\(see)f(Section)h(6.7)g([Arra)m(ys],)h(page)e(89\))h(whose)f(mem)m(b)
s(ers)630 4408 y(hold)c(v)m(ersion)h(information)f(for)g(this)g
(instance)h(of)g(Bash.)46 b(The)32 b(v)-5 b(alues)32
b(assigned)h(to)g(the)630 4518 y(arra)m(y)e(mem)m(b)s(ers)e(are)i(as)g
-(follo)m(ws:)630 4682 y Fs(BASH_VERSINFO[0])1110 4792
-y Ft(The)f(ma)5 b(jor)30 b(v)m(ersion)h(n)m(um)m(b)s(er)e(\(the)i
-Fq(release)5 b Ft(\).)630 4956 y Fs(BASH_VERSINFO[1])1110
-5066 y Ft(The)30 b(minor)g(v)m(ersion)h(n)m(um)m(b)s(er)e(\(the)i
-Fq(v)m(ersion)p Ft(\).)630 5230 y Fs(BASH_VERSINFO[2])1110
-5340 y Ft(The)f(patc)m(h)h(lev)m(el.)p eop end
+(follo)m(ws:)630 4682 y Ft(BASH_VERSINFO[0])1110 4792
+y Fu(The)f(ma)5 b(jor)30 b(v)m(ersion)h(n)m(um)m(b)s(er)e(\(the)i
+Fr(release)5 b Fu(\).)630 4956 y Ft(BASH_VERSINFO[1])1110
+5066 y Fu(The)30 b(minor)g(v)m(ersion)h(n)m(um)m(b)s(er)e(\(the)i
+Fr(v)m(ersion)p Fu(\).)630 5230 y Ft(BASH_VERSINFO[2])1110
+5340 y Fu(The)f(patc)m(h)h(lev)m(el.)p eop end
%%Page: 72 78
-TeXDict begin 72 77 bop 150 -116 a Ft(Chapter)30 b(5:)41
-b(Shell)30 b(V)-8 b(ariables)2459 b(72)630 299 y Fs(BASH_VERSINFO[3])
-1110 408 y Ft(The)30 b(build)f(v)m(ersion.)630 591 y
-Fs(BASH_VERSINFO[4])1110 701 y Ft(The)h(release)i(status)e(\(e.g.,)j
-Fq(b)s(eta1)7 b Ft(\).)630 883 y Fs(BASH_VERSINFO[5])1110
-993 y Ft(The)30 b(v)-5 b(alue)31 b(of)f Fs(MACHTYPE)p
-Ft(.)150 1176 y Fs(BASH_VERSION)630 1285 y Ft(The)g(v)m(ersion)h(n)m
+TeXDict begin 72 77 bop 150 -116 a Fu(Chapter)30 b(5:)41
+b(Shell)30 b(V)-8 b(ariables)2459 b(72)630 299 y Ft(BASH_VERSINFO[3])
+1110 408 y Fu(The)30 b(build)f(v)m(ersion.)630 591 y
+Ft(BASH_VERSINFO[4])1110 701 y Fu(The)h(release)i(status)e(\(e.g.,)j
+Fr(b)s(eta1)7 b Fu(\).)630 883 y Ft(BASH_VERSINFO[5])1110
+993 y Fu(The)30 b(v)-5 b(alue)31 b(of)f Ft(MACHTYPE)p
+Fu(.)150 1176 y Ft(BASH_VERSION)630 1285 y Fu(The)g(v)m(ersion)h(n)m
(um)m(b)s(er)e(of)h(the)h(curren)m(t)f(instance)h(of)g(Bash.)150
-1468 y Fs(BASH_XTRACEFD)630 1577 y Ft(If)f(set)h(to)h(an)e(in)m(teger)i
+1468 y Ft(BASH_XTRACEFD)630 1577 y Fu(If)f(set)h(to)h(an)e(in)m(teger)i
(corresp)s(onding)e(to)h(a)g(v)-5 b(alid)31 b(\014le)g(descriptor,)g
(Bash)g(will)g(write)g(the)630 1687 y(trace)37 b(output)f(generated)h
-(when)f(`)p Fs(set)29 b(-x)p Ft(')36 b(is)g(enabled)h(to)g(that)f
+(when)f(`)p Ft(set)29 b(-x)p Fu(')36 b(is)g(enabled)h(to)g(that)f
(\014le)h(descriptor.)58 b(This)630 1797 y(allo)m(ws)29
b(tracing)h(output)d(to)i(b)s(e)f(separated)g(from)g(diagnostic)h(and)f
(error)f(messages.)41 b(The)630 1906 y(\014le)31 b(descriptor)f(is)h
-(closed)g(when)f Fs(BASH_XTRACEFD)d Ft(is)k(unset)f(or)g(assigned)h(a)g
-(new)f(v)-5 b(alue.)630 2016 y(Unsetting)45 b Fs(BASH_XTRACEFD)40
-b Ft(or)k(assigning)g(it)g(the)g(empt)m(y)h(string)e(causes)i(the)f
+(closed)g(when)f Ft(BASH_XTRACEFD)d Fu(is)k(unset)f(or)g(assigned)h(a)g
+(new)f(v)-5 b(alue.)630 2016 y(Unsetting)45 b Ft(BASH_XTRACEFD)40
+b Fu(or)k(assigning)g(it)g(the)g(empt)m(y)h(string)e(causes)i(the)f
(trace)630 2125 y(output)33 b(to)i(b)s(e)d(sen)m(t)j(to)f(the)g
-(standard)e(error.)50 b(Note)35 b(that)g(setting)f Fs(BASH_XTRACEFD)c
-Ft(to)630 2235 y(2)39 b(\(the)h(standard)e(error)g(\014le)h
+(standard)e(error.)50 b(Note)35 b(that)g(setting)f Ft(BASH_XTRACEFD)c
+Fu(to)630 2235 y(2)39 b(\(the)h(standard)e(error)g(\014le)h
(descriptor\))h(and)e(then)h(unsetting)g(it)g(will)g(result)g(in)g(the)
630 2345 y(standard)30 b(error)g(b)s(eing)f(closed.)150
-2527 y Fs(CHILD_MAX)630 2637 y Ft(Set)35 b(the)h(n)m(um)m(b)s(er)e(of)h
+2527 y Ft(CHILD_MAX)630 2637 y Fu(Set)35 b(the)h(n)m(um)m(b)s(er)e(of)h
(exited)h(c)m(hild)g(status)f(v)-5 b(alues)36 b(for)f(the)g(shell)g(to)
h(remem)m(b)s(er.)55 b(Bash)630 2746 y(will)37 b(not)g(allo)m(w)i(this)
e(v)-5 b(alue)37 b(to)h(b)s(e)e(decreased)i(b)s(elo)m(w)f(a)g
-Fl(posix)p Ft(-mandated)f(minim)m(um,)630 2856 y(and)30
+Fm(posix)p Fu(-mandated)f(minim)m(um,)630 2856 y(and)30
b(there)g(is)g(a)h(maxim)m(um)f(v)-5 b(alue)30 b(\(curren)m(tly)h
(8192\))h(that)f(this)f(ma)m(y)g(not)h(exceed.)41 b(The)630
2966 y(minim)m(um)30 b(v)-5 b(alue)30 b(is)h(system-dep)s(enden)m(t.)
-150 3148 y Fs(COLUMNS)144 b Ft(Used)32 b(b)m(y)f(the)h
-Fs(select)e Ft(command)h(to)i(determine)f(the)f(terminal)i(width)d
+150 3148 y Ft(COLUMNS)144 b Fu(Used)32 b(b)m(y)f(the)h
+Ft(select)e Fu(command)h(to)i(determine)f(the)f(terminal)i(width)d
(when)h(prin)m(ting)630 3258 y(selection)39 b(lists.)63
-b(Automatically)41 b(set)d(if)f(the)h Fs(checkwinsize)d
-Ft(option)j(is)f(enabled)h(\(see)630 3367 y(Section)44
-b(4.3.2)h([The)e(Shopt)g(Builtin],)k(page)d(63\),)k(or)43
+b(Automatically)41 b(set)d(if)f(the)h Ft(checkwinsize)d
+Fu(option)j(is)f(enabled)h(\(see)630 3367 y(Section)44
+b(4.3.2)h([The)e(Shopt)g(Builtin],)k(page)d(62\),)k(or)43
b(in)g(an)g(in)m(teractiv)m(e)j(shell)e(up)s(on)630 3477
-y(receipt)31 b(of)g(a)g Fs(SIGWINCH)p Ft(.)150 3660 y
-Fs(COMP_CWORD)630 3769 y Ft(An)38 b(index)g(in)m(to)h
-Fs(${COMP_WORDS})c Ft(of)k(the)g(w)m(ord)f(con)m(taining)i(the)e
+y(receipt)31 b(of)g(a)g Ft(SIGWINCH)p Fu(.)150 3660 y
+Ft(COMP_CWORD)630 3769 y Fu(An)38 b(index)g(in)m(to)h
+Ft(${COMP_WORDS})c Fu(of)k(the)g(w)m(ord)f(con)m(taining)i(the)e
(curren)m(t)g(cursor)g(p)s(o-)630 3879 y(sition.)72 b(This)40
b(v)-5 b(ariable)41 b(is)f(a)m(v)-5 b(ailable)43 b(only)e(in)f(shell)h
(functions)f(in)m(v)m(ok)m(ed)i(b)m(y)e(the)h(pro-)630
3988 y(grammable)36 b(completion)g(facilities)i(\(see)e(Section)g(8.6)g
-([Programmable)g(Completion],)630 4098 y(page)31 b(125\).)150
-4281 y Fs(COMP_LINE)630 4390 y Ft(The)38 b(curren)m(t)h(command)f
+([Programmable)g(Completion],)630 4098 y(page)31 b(124\).)150
+4281 y Ft(COMP_LINE)630 4390 y Fu(The)38 b(curren)m(t)h(command)f
(line.)66 b(This)37 b(v)-5 b(ariable)40 b(is)f(a)m(v)-5
b(ailable)41 b(only)d(in)h(shell)f(functions)630 4500
y(and)25 b(external)h(commands)f(in)m(v)m(ok)m(ed)h(b)m(y)f(the)h
(programmable)f(completion)i(facilities)g(\(see)630 4609
-y(Section)k(8.6)h([Programmable)f(Completion],)g(page)g(125\).)150
-4792 y Fs(COMP_POINT)630 4902 y Ft(The)25 b(index)g(of)h(the)g(curren)m
+y(Section)k(8.6)h([Programmable)f(Completion],)g(page)g(124\).)150
+4792 y Ft(COMP_POINT)630 4902 y Fu(The)25 b(index)g(of)h(the)g(curren)m
(t)f(cursor)g(p)s(osition)h(relativ)m(e)i(to)e(the)g(b)s(eginning)f(of)
g(the)h(curren)m(t)630 5011 y(command.)40 b(If)27 b(the)h(curren)m(t)g
(cursor)g(p)s(osition)g(is)g(at)g(the)g(end)g(of)g(the)g(curren)m(t)g
(command,)630 5121 y(the)i(v)-5 b(alue)30 b(of)g(this)g(v)-5
-b(ariable)31 b(is)f(equal)g(to)h Fs(${#COMP_LINE})p Ft(.)37
+b(ariable)31 b(is)f(equal)g(to)h Ft(${#COMP_LINE})p Fu(.)37
b(This)29 b(v)-5 b(ariable)31 b(is)f(a)m(v)-5 b(ailable)630
5230 y(only)36 b(in)f(shell)h(functions)f(and)g(external)h(commands)g
(in)m(v)m(ok)m(ed)h(b)m(y)e(the)h(programmable)630 5340
y(completion)c(facilities)g(\(see)g(Section)f(8.6)g([Programmable)g
-(Completion],)h(page)f(125\).)p eop end
+(Completion],)h(page)f(124\).)p eop end
%%Page: 73 79
-TeXDict begin 73 78 bop 150 -116 a Ft(Chapter)30 b(5:)41
-b(Shell)30 b(V)-8 b(ariables)2459 b(73)150 299 y Fs(COMP_TYPE)630
-408 y Ft(Set)27 b(to)h(an)f(in)m(teger)h(v)-5 b(alue)28
+TeXDict begin 73 78 bop 150 -116 a Fu(Chapter)30 b(5:)41
+b(Shell)30 b(V)-8 b(ariables)2459 b(73)150 299 y Ft(COMP_TYPE)630
+408 y Fu(Set)27 b(to)h(an)f(in)m(teger)h(v)-5 b(alue)28
b(corresp)s(onding)e(to)h(the)h(t)m(yp)s(e)f(of)g(completion)h
-(attempted)g(that)630 518 y(caused)e(a)g(completion)i(function)d(to)i
-(b)s(e)e(called:)40 b Fq(T)-8 b(AB)5 b Ft(,)27 b(for)f(normal)g
-(completion,)i(`)p Fs(?)p Ft(',)f(for)630 628 y(listing)35
-b(completions)h(after)f(successiv)m(e)g(tabs,)h(`)p Fs(!)p
-Ft(',)g(for)e(listing)h(alternativ)m(es)i(on)d(partial)630
-737 y(w)m(ord)22 b(completion,)k(`)p Fs(@)p Ft(',)f(to)e(list)g
+(attempted)g(that)630 518 y(caused)e(a)h(completion)h(function)e(to)h
+(b)s(e)f(called:)40 b Fr(T)-8 b(AB)p Fu(,)27 b(for)g(normal)f
+(completion,)j(`)p Ft(?)p Fu(',)e(for)630 628 y(listing)35
+b(completions)h(after)f(successiv)m(e)g(tabs,)h(`)p Ft(!)p
+Fu(',)g(for)e(listing)h(alternativ)m(es)i(on)d(partial)630
+737 y(w)m(ord)22 b(completion,)k(`)p Ft(@)p Fu(',)f(to)e(list)g
(completions)h(if)f(the)g(w)m(ord)f(is)h(not)g(unmo)s(di\014ed,)f(or)h
-(`)p Fs(\045)p Ft(',)h(for)630 847 y(men)m(u)i(completion.)41
+(`)p Ft(\045)p Fu(',)h(for)630 847 y(men)m(u)i(completion.)41
b(This)25 b(v)-5 b(ariable)27 b(is)g(a)m(v)-5 b(ailable)28
b(only)f(in)f(shell)g(functions)g(and)g(external)630
956 y(commands)32 b(in)m(v)m(ok)m(ed)i(b)m(y)e(the)g(programmable)h
(completion)g(facilities)i(\(see)e(Section)g(8.6)630
-1066 y([Programmable)e(Completion],)h(page)f(125\).)150
-1241 y Fs(COMP_KEY)96 b Ft(The)29 b(k)m(ey)i(\(or)g(\014nal)e(k)m(ey)i
+1066 y([Programmable)e(Completion],)h(page)f(124\).)150
+1241 y Ft(COMP_KEY)96 b Fu(The)29 b(k)m(ey)i(\(or)g(\014nal)e(k)m(ey)i
(of)f(a)g(k)m(ey)h(sequence\))g(used)e(to)i(in)m(v)m(ok)m(e)h(the)e
(curren)m(t)g(completion)630 1351 y(function.)150 1526
-y Fs(COMP_WORDBREAKS)630 1636 y Ft(The)f(set)i(of)e(c)m(haracters)j
+y Ft(COMP_WORDBREAKS)630 1636 y Fu(The)f(set)i(of)e(c)m(haracters)j
(that)e(the)g(Readline)g(library)g(treats)g(as)g(w)m(ord)g(separators)g
(when)630 1745 y(p)s(erforming)i(w)m(ord)h(completion.)51
-b(If)33 b Fs(COMP_WORDBREAKS)c Ft(is)34 b(unset,)g(it)f(loses)i(its)e
+b(If)33 b Ft(COMP_WORDBREAKS)c Fu(is)34 b(unset,)g(it)f(loses)i(its)e
(sp)s(ecial)630 1855 y(prop)s(erties,)d(ev)m(en)h(if)f(it)h(is)g
-(subsequen)m(tly)f(reset.)150 2030 y Fs(COMP_WORDS)630
-2140 y Ft(An)36 b(arra)m(y)g(v)-5 b(ariable)37 b(consisting)g(of)f(the)
+(subsequen)m(tly)f(reset.)150 2030 y Ft(COMP_WORDS)630
+2140 y Fu(An)36 b(arra)m(y)g(v)-5 b(ariable)37 b(consisting)g(of)f(the)
g(individual)f(w)m(ords)h(in)f(the)h(curren)m(t)g(command)630
2250 y(line.)94 b(The)47 b(line)i(is)f(split)g(in)m(to)h(w)m(ords)e(as)
-h(Readline)h(w)m(ould)f(split)g(it,)53 b(using)47 b Fs(COMP_)630
-2359 y(WORDBREAKS)34 b Ft(as)i(describ)s(ed)g(ab)s(o)m(v)m(e.)60
+h(Readline)h(w)m(ould)f(split)g(it,)53 b(using)47 b Ft(COMP_)630
+2359 y(WORDBREAKS)34 b Fu(as)i(describ)s(ed)g(ab)s(o)m(v)m(e.)60
b(This)36 b(v)-5 b(ariable)37 b(is)f(a)m(v)-5 b(ailable)39
b(only)e(in)f(shell)h(func-)630 2469 y(tions)32 b(in)m(v)m(ok)m(ed)i(b)
m(y)d(the)i(programmable)f(completion)h(facilities)h(\(see)f(Section)g
-(8.6)g([Pro-)630 2578 y(grammable)e(Completion],)g(page)g(125\).)150
-2754 y Fs(COMPREPLY)630 2863 y Ft(An)37 b(arra)m(y)h(v)-5
+(8.6)g([Pro-)630 2578 y(grammable)e(Completion],)g(page)g(124\).)150
+2754 y Ft(COMPREPLY)630 2863 y Fu(An)37 b(arra)m(y)h(v)-5
b(ariable)38 b(from)f(whic)m(h)g(Bash)g(reads)g(the)h(p)s(ossible)e
(completions)j(generated)630 2973 y(b)m(y)33 b(a)g(shell)h(function)f
(in)m(v)m(ok)m(ed)h(b)m(y)f(the)g(programmable)h(completion)g(facilit)m
(y)h(\(see)f(Sec-)630 3082 y(tion)g(8.6)g([Programmable)g(Completion],)
-h(page)f(125\).)51 b(Eac)m(h)34 b(arra)m(y)g(elemen)m(t)h(con)m(tains)
+h(page)f(124\).)51 b(Eac)m(h)34 b(arra)m(y)g(elemen)m(t)h(con)m(tains)
630 3192 y(one)c(p)s(ossible)f(completion.)150 3367 y
-Fs(COPROC)192 b Ft(An)27 b(arra)m(y)g(v)-5 b(ariable)28
+Ft(COPROC)192 b Fu(An)27 b(arra)m(y)g(v)-5 b(ariable)28
b(created)g(to)f(hold)g(the)g(\014le)g(descriptors)g(for)g(output)f
(from)h(and)f(input)630 3477 y(to)31 b(an)f(unnamed)f(copro)s(cess)i
(\(see)g(Section)h(3.2.5)g([Copro)s(cesses],)f(page)g(15\).)150
-3652 y Fs(DIRSTACK)96 b Ft(An)26 b(arra)m(y)h(v)-5 b(ariable)28
+3652 y Ft(DIRSTACK)96 b Fu(An)26 b(arra)m(y)h(v)-5 b(ariable)28
b(con)m(taining)g(the)f(curren)m(t)f(con)m(ten)m(ts)j(of)e(the)f
(directory)i(stac)m(k.)41 b(Direc-)630 3762 y(tories)33
b(app)s(ear)f(in)g(the)h(stac)m(k)h(in)e(the)h(order)f(they)h(are)g
-(displa)m(y)m(ed)g(b)m(y)f(the)h Fs(dirs)e Ft(builtin.)630
+(displa)m(y)m(ed)g(b)m(y)f(the)h Ft(dirs)e Fu(builtin.)630
3871 y(Assigning)f(to)h(mem)m(b)s(ers)f(of)g(this)g(arra)m(y)g(v)-5
b(ariable)31 b(ma)m(y)g(b)s(e)e(used)h(to)h(mo)s(dify)e(directories)630
3981 y(already)41 b(in)f(the)h(stac)m(k,)k(but)40 b(the)h
-Fs(pushd)e Ft(and)h Fs(popd)f Ft(builtins)h(m)m(ust)h(b)s(e)e(used)h
+Ft(pushd)e Fu(and)h Ft(popd)f Fu(builtins)h(m)m(ust)h(b)s(e)e(used)h
(to)i(add)630 4091 y(and)37 b(remo)m(v)m(e)h(directories.)63
b(Assignmen)m(t)37 b(to)h(this)f(v)-5 b(ariable)38 b(will)g(not)f(c)m
(hange)i(the)e(cur-)630 4200 y(ren)m(t)c(directory)-8
-b(.)47 b(If)32 b Fs(DIRSTACK)e Ft(is)i(unset,)g(it)h(loses)g(its)g(sp)s
+b(.)47 b(If)32 b Ft(DIRSTACK)e Fu(is)i(unset,)g(it)h(loses)g(its)g(sp)s
(ecial)g(prop)s(erties,)f(ev)m(en)h(if)f(it)h(is)630
-4310 y(subsequen)m(tly)d(reset.)150 4485 y Fs(EMACS)240
-b Ft(If)31 b(Bash)h(\014nds)d(this)j(v)-5 b(ariable)32
+4310 y(subsequen)m(tly)d(reset.)150 4485 y Ft(EMACS)240
+b Fu(If)31 b(Bash)h(\014nds)d(this)j(v)-5 b(ariable)32
b(in)f(the)h(en)m(vironmen)m(t)g(when)e(the)i(shell)f(starts)h(with)f
-(v)-5 b(alue)630 4595 y(`)p Fs(t)p Ft(',)36 b(it)f(assumes)f(that)h
+(v)-5 b(alue)630 4595 y(`)p Ft(t)p Fu(',)36 b(it)f(assumes)f(that)h
(the)g(shell)f(is)h(running)e(in)h(an)g(Emacs)h(shell)g(bu\013er)e(and)
-h(disables)630 4704 y(line)d(editing.)150 4880 y Fs(ENV)336
-b Ft(Similar)35 b(to)g Fs(BASH_ENV)p Ft(;)h(used)e(when)g(the)h(shell)g
-(is)g(in)m(v)m(ok)m(ed)h(in)e Fl(posix)h Ft(Mo)s(de)g(\(see)g(Sec-)630
+h(disables)630 4704 y(line)d(editing.)150 4880 y Ft(ENV)336
+b Fu(Similar)35 b(to)g Ft(BASH_ENV)p Fu(;)h(used)e(when)g(the)h(shell)g
+(is)g(in)m(v)m(ok)m(ed)h(in)e Fm(posix)h Fu(Mo)s(de)g(\(see)g(Sec-)630
4989 y(tion)c(6.11)h([Bash)f(POSIX)e(Mo)s(de],)i(page)g(94\).)150
-5165 y Fs(EUID)288 b Ft(The)30 b(n)m(umeric)g(e\013ectiv)m(e)j(user)d
+5165 y Ft(EUID)288 b Fu(The)30 b(n)m(umeric)g(e\013ectiv)m(e)j(user)d
(id)g(of)g(the)h(curren)m(t)f(user.)40 b(This)30 b(v)-5
-b(ariable)31 b(is)f(readonly)-8 b(.)150 5340 y Fs(FCEDIT)192
-b Ft(The)30 b(editor)h(used)e(as)i(a)g(default)f(b)m(y)h(the)f(`)p
-Fs(-e)p Ft(')g(option)h(to)g(the)g Fs(fc)f Ft(builtin)g(command.)p
+b(ariable)31 b(is)f(readonly)-8 b(.)150 5340 y Ft(FCEDIT)192
+b Fu(The)30 b(editor)h(used)e(as)i(a)g(default)f(b)m(y)h(the)f
+Ft(-e)g Fu(option)h(to)g(the)f Ft(fc)g Fu(builtin)g(command.)p
eop end
%%Page: 74 80
-TeXDict begin 74 79 bop 150 -116 a Ft(Chapter)30 b(5:)41
-b(Shell)30 b(V)-8 b(ariables)2459 b(74)150 299 y Fs(FIGNORE)144
-b Ft(A)35 b(colon-separated)i(list)f(of)g(su\016xes)e(to)i(ignore)g
+TeXDict begin 74 79 bop 150 -116 a Fu(Chapter)30 b(5:)41
+b(Shell)30 b(V)-8 b(ariables)2459 b(74)150 299 y Ft(FIGNORE)144
+b Fu(A)35 b(colon-separated)i(list)f(of)g(su\016xes)e(to)i(ignore)g
(when)e(p)s(erforming)g(\014lename)i(comple-)630 408
y(tion.)k(A)27 b(\014lename)g(whose)f(su\016x)g(matc)m(hes)i(one)f(of)g
-(the)g(en)m(tries)g(in)g Fs(FIGNORE)d Ft(is)j(excluded)630
+(the)g(en)m(tries)g(in)g Ft(FIGNORE)d Fu(is)j(excluded)630
518 y(from)j(the)g(list)h(of)g(matc)m(hed)g(\014lenames.)41
-b(A)30 b(sample)h(v)-5 b(alue)31 b(is)f(`)p Fs(.o:~)p
-Ft(')150 671 y Fs(FUNCNAME)96 b Ft(An)35 b(arra)m(y)i(v)-5
+b(A)30 b(sample)h(v)-5 b(alue)31 b(is)f(`)p Ft(.o:~)p
+Fu(')150 671 y Ft(FUNCNAME)96 b Fu(An)35 b(arra)m(y)i(v)-5
b(ariable)36 b(con)m(taining)h(the)f(names)g(of)g(all)g(shell)g
(functions)g(curren)m(tly)f(in)h(the)630 781 y(execution)g(call)h(stac)
m(k.)57 b(The)34 b(elemen)m(t)j(with)e(index)g(0)h(is)f(the)g(name)h
(of)f(an)m(y)h(curren)m(tly-)630 891 y(executing)f(shell)f(function.)51
b(The)34 b(b)s(ottom-most)h(elemen)m(t)g(\(the)g(one)f(with)g(the)g
-(highest)630 1000 y(index\))e(is)h Fs("main")p Ft(.)44
+(highest)630 1000 y(index\))e(is)h Ft("main")p Fu(.)44
b(This)32 b(v)-5 b(ariable)33 b(exists)g(only)g(when)e(a)i(shell)f
(function)g(is)g(executing.)630 1110 y(Assignmen)m(ts)23
-b(to)h Fs(FUNCNAME)c Ft(ha)m(v)m(e)k(no)f(e\013ect)h(and)e(return)g(an)
-g(error)g(status.)39 b(If)22 b Fs(FUNCNAME)630 1219 y
-Ft(is)30 b(unset,)h(it)g(loses)g(its)f(sp)s(ecial)h(prop)s(erties,)f
+b(to)h Ft(FUNCNAME)c Fu(ha)m(v)m(e)k(no)f(e\013ect)h(and)e(return)g(an)
+g(error)g(status.)39 b(If)22 b Ft(FUNCNAME)630 1219 y
+Fu(is)30 b(unset,)h(it)g(loses)g(its)f(sp)s(ecial)h(prop)s(erties,)f
(ev)m(en)h(if)g(it)g(is)f(subsequen)m(tly)g(reset.)630
1351 y(This)h(v)-5 b(ariable)32 b(can)f(b)s(e)g(used)g(with)g
-Fs(BASH_LINENO)d Ft(and)j Fs(BASH_SOURCE)p Ft(.)40 b(Eac)m(h)32
-b(elemen)m(t)630 1461 y(of)g Fs(FUNCNAME)d Ft(has)j(corresp)s(onding)e
-(elemen)m(ts)j(in)f Fs(BASH_LINENO)c Ft(and)k Fs(BASH_SOURCE)c
-Ft(to)630 1570 y(describ)s(e)39 b(the)h(call)h(stac)m(k.)70
-b(F)-8 b(or)41 b(instance,)i Fs(${FUNCNAME[$i]})35 b
-Ft(w)m(as)41 b(called)f(from)g(the)630 1680 y(\014le)27
-b Fs(${BASH_SOURCE[$i+1]})21 b Ft(at)27 b(line)h(n)m(um)m(b)s(er)d
-Fs(${BASH_LINENO[$i]})p Ft(.)34 b(The)27 b Fs(caller)630
-1789 y Ft(builtin)j(displa)m(ys)g(the)h(curren)m(t)f(call)i(stac)m(k)g
-(using)d(this)i(information.)150 1943 y Fs(FUNCNEST)96
-b Ft(If)34 b(set)i(to)f(a)h(n)m(umeric)e(v)-5 b(alue)36
+Ft(BASH_LINENO)d Fu(and)j Ft(BASH_SOURCE)p Fu(.)40 b(Eac)m(h)32
+b(elemen)m(t)630 1461 y(of)g Ft(FUNCNAME)d Fu(has)j(corresp)s(onding)e
+(elemen)m(ts)j(in)f Ft(BASH_LINENO)c Fu(and)k Ft(BASH_SOURCE)c
+Fu(to)630 1570 y(describ)s(e)39 b(the)h(call)h(stac)m(k.)70
+b(F)-8 b(or)41 b(instance,)i Ft(${FUNCNAME[$i]})35 b
+Fu(w)m(as)41 b(called)f(from)g(the)630 1680 y(\014le)27
+b Ft(${BASH_SOURCE[$i+1]})21 b Fu(at)27 b(line)h(n)m(um)m(b)s(er)d
+Ft(${BASH_LINENO[$i]})p Fu(.)34 b(The)27 b Ft(caller)630
+1789 y Fu(builtin)j(displa)m(ys)g(the)h(curren)m(t)f(call)i(stac)m(k)g
+(using)d(this)i(information.)150 1943 y Ft(FUNCNEST)96
+b Fu(If)34 b(set)i(to)f(a)h(n)m(umeric)e(v)-5 b(alue)36
b(greater)g(than)e(0,)j(de\014nes)d(a)h(maxim)m(um)g(function)g
(nesting)630 2052 y(lev)m(el.)42 b(F)-8 b(unction)29
b(in)m(v)m(o)s(cations)h(that)f(exceed)h(this)e(nesting)h(lev)m(el)h
(will)f(cause)g(the)f(curren)m(t)630 2162 y(command)i(to)h(ab)s(ort.)
-150 2315 y Fs(GLOBIGNORE)630 2425 y Ft(A)38 b(colon-separated)i(list)f
+150 2315 y Ft(GLOBIGNORE)630 2425 y Fu(A)38 b(colon-separated)i(list)f
(of)f(patterns)g(de\014ning)f(the)h(set)g(of)h(\014lenames)f(to)g(b)s
(e)g(ignored)630 2534 y(b)m(y)31 b(\014lename)g(expansion.)43
b(If)31 b(a)h(\014lename)f(matc)m(hed)h(b)m(y)f(a)g(\014lename)h
(expansion)f(pattern)630 2644 y(also)i(matc)m(hes)g(one)f(of)g(the)g
-(patterns)g(in)f Fs(GLOBIGNORE)p Ft(,)f(it)i(is)g(remo)m(v)m(ed)h(from)
-e(the)h(list)h(of)630 2754 y(matc)m(hes.)150 2907 y Fs(GROUPS)192
-b Ft(An)36 b(arra)m(y)g(v)-5 b(ariable)37 b(con)m(taining)g(the)f(list)
+(patterns)g(in)f Ft(GLOBIGNORE)p Fu(,)f(it)i(is)g(remo)m(v)m(ed)h(from)
+e(the)h(list)h(of)630 2754 y(matc)m(hes.)150 2907 y Ft(GROUPS)192
+b Fu(An)36 b(arra)m(y)g(v)-5 b(ariable)37 b(con)m(taining)g(the)f(list)
h(of)f(groups)g(of)g(whic)m(h)f(the)i(curren)m(t)e(user)h(is)g(a)630
-3017 y(mem)m(b)s(er.)47 b(Assignmen)m(ts)33 b(to)g Fs(GROUPS)e
-Ft(ha)m(v)m(e)j(no)f(e\013ect)h(and)e(return)g(an)g(error)g(status.)48
-b(If)630 3126 y Fs(GROUPS)29 b Ft(is)h(unset,)g(it)h(loses)g(its)g(sp)s
+3017 y(mem)m(b)s(er.)47 b(Assignmen)m(ts)33 b(to)g Ft(GROUPS)e
+Fu(ha)m(v)m(e)j(no)f(e\013ect)h(and)e(return)g(an)g(error)g(status.)48
+b(If)630 3126 y Ft(GROUPS)29 b Fu(is)h(unset,)g(it)h(loses)g(its)g(sp)s
(ecial)g(prop)s(erties,)f(ev)m(en)h(if)f(it)h(is)g(subsequen)m(tly)f
-(reset.)150 3280 y Fs(histchars)630 3389 y Ft(Up)c(to)g(three)g(c)m
+(reset.)150 3280 y Ft(histchars)630 3389 y Fu(Up)c(to)g(three)g(c)m
(haracters)i(whic)m(h)d(con)m(trol)j(history)d(expansion,)i(quic)m(k)g
(substitution,)g(and)630 3499 y(tok)m(enization)k(\(see)f(Section)f
-(9.3)h([History)f(In)m(teraction],)i(page)f(136\).)41
+(9.3)h([History)f(In)m(teraction],)i(page)f(135\).)41
b(The)29 b(\014rst)e(c)m(harac-)630 3608 y(ter)j(is)f(the)g
-Fq(history)g(expansion)g Ft(c)m(haracter,)j(that)e(is,)f(the)h(c)m
+Fr(history)g(expansion)g Fu(c)m(haracter,)j(that)e(is,)f(the)h(c)m
(haracter)h(whic)m(h)d(signi\014es)i(the)630 3718 y(start)25
-b(of)f(a)h(history)f(expansion,)i(normally)e(`)p Fs(!)p
-Ft('.)39 b(The)24 b(second)g(c)m(haracter)i(is)e(the)g(c)m(haracter)630
+b(of)f(a)h(history)f(expansion,)i(normally)e(`)p Ft(!)p
+Fu('.)39 b(The)24 b(second)g(c)m(haracter)i(is)e(the)g(c)m(haracter)630
3828 y(whic)m(h)36 b(signi\014es)g(`quic)m(k)h(substitution')f(when)f
(seen)h(as)g(the)g(\014rst)f(c)m(haracter)j(on)e(a)g(line,)630
-3937 y(normally)27 b(`)p Fs(^)p Ft('.)39 b(The)26 b(optional)i(third)d
+3937 y(normally)27 b(`)p Ft(^)p Fu('.)39 b(The)26 b(optional)i(third)d
(c)m(haracter)j(is)e(the)h(c)m(haracter)h(whic)m(h)e(indicates)h(that)
630 4047 y(the)34 b(remainder)f(of)h(the)g(line)g(is)f(a)h(commen)m(t)h
(when)e(found)f(as)i(the)g(\014rst)f(c)m(haracter)i(of)f(a)630
-4156 y(w)m(ord,)i(usually)f(`)p Fs(#)p Ft('.)55 b(The)34
+4156 y(w)m(ord,)i(usually)f(`)p Ft(#)p Fu('.)55 b(The)34
b(history)h(commen)m(t)h(c)m(haracter)h(causes)e(history)g
(substitution)630 4266 y(to)27 b(b)s(e)f(skipp)s(ed)f(for)i(the)f
(remaining)h(w)m(ords)f(on)h(the)f(line.)40 b(It)27 b(do)s(es)f(not)h
(necessarily)g(cause)630 4376 y(the)k(shell)f(parser)g(to)h(treat)g
(the)g(rest)g(of)f(the)h(line)f(as)h(a)g(commen)m(t.)150
-4529 y Fs(HISTCMD)144 b Ft(The)35 b(history)h(n)m(um)m(b)s(er,)g(or)f
+4529 y Ft(HISTCMD)144 b Fu(The)35 b(history)h(n)m(um)m(b)s(er,)g(or)f
(index)g(in)h(the)g(history)f(list,)j(of)e(the)g(curren)m(t)f(command.)
-56 b(If)630 4639 y Fs(HISTCMD)28 b Ft(is)h(unset,)h(it)g(loses)h(its)f
+56 b(If)630 4639 y Ft(HISTCMD)28 b Fu(is)h(unset,)h(it)g(loses)h(its)f
(sp)s(ecial)g(prop)s(erties,)g(ev)m(en)g(if)g(it)g(is)g(subsequen)m
-(tly)f(reset.)150 4792 y Fs(HISTCONTROL)630 4902 y Ft(A)40
+(tly)f(reset.)150 4792 y Ft(HISTCONTROL)630 4902 y Fu(A)40
b(colon-separated)i(list)f(of)f(v)-5 b(alues)40 b(con)m(trolling)i(ho)m
(w)e(commands)g(are)h(sa)m(v)m(ed)g(on)f(the)630 5011
y(history)29 b(list.)41 b(If)28 b(the)h(list)h(of)f(v)-5
-b(alues)29 b(includes)f(`)p Fs(ignorespace)p Ft(',)f(lines)i(whic)m(h)g
+b(alues)29 b(includes)f(`)p Ft(ignorespace)p Fu(',)f(lines)i(whic)m(h)g
(b)s(egin)f(with)630 5121 y(a)39 b(space)g(c)m(haracter)i(are)e(not)g
(sa)m(v)m(ed)g(in)g(the)g(history)f(list.)66 b(A)39 b(v)-5
-b(alue)39 b(of)g(`)p Fs(ignoredups)p Ft(')630 5230 y(causes)34
+b(alue)39 b(of)g(`)p Ft(ignoredups)p Fu(')630 5230 y(causes)34
b(lines)h(whic)m(h)f(matc)m(h)h(the)f(previous)f(history)h(en)m(try)h
(to)g(not)f(b)s(e)f(sa)m(v)m(ed.)53 b(A)34 b(v)-5 b(alue)630
-5340 y(of)32 b(`)p Fs(ignoreboth)p Ft(')d(is)j(shorthand)e(for)i(`)p
-Fs(ignorespace)p Ft(')d(and)i(`)p Fs(ignoredups)p Ft('.)42
+5340 y(of)32 b(`)p Ft(ignoreboth)p Fu(')d(is)j(shorthand)e(for)i(`)p
+Ft(ignorespace)p Fu(')d(and)i(`)p Ft(ignoredups)p Fu('.)42
b(A)32 b(v)-5 b(alue)32 b(of)p eop end
%%Page: 75 81
-TeXDict begin 75 80 bop 150 -116 a Ft(Chapter)30 b(5:)41
+TeXDict begin 75 80 bop 150 -116 a Fu(Chapter)30 b(5:)41
b(Shell)30 b(V)-8 b(ariables)2459 b(75)630 299 y(`)p
-Fs(erasedups)p Ft(')31 b(causes)i(all)h(previous)f(lines)g(matc)m(hing)
+Ft(erasedups)p Fu(')31 b(causes)i(all)h(previous)f(lines)g(matc)m(hing)
h(the)f(curren)m(t)g(line)g(to)h(b)s(e)e(remo)m(v)m(ed)630
408 y(from)42 b(the)h(history)f(list)i(b)s(efore)e(that)h(line)g(is)g
(sa)m(v)m(ed.)78 b(An)m(y)43 b(v)-5 b(alue)43 b(not)g(in)f(the)h(ab)s
(o)m(v)m(e)630 518 y(list)35 b(is)g(ignored.)53 b(If)34
-b Fs(HISTCONTROL)e Ft(is)i(unset,)i(or)e(do)s(es)h(not)g(include)f(a)h
+b Ft(HISTCONTROL)e Fu(is)i(unset,)i(or)e(do)s(es)h(not)g(include)f(a)h
(v)-5 b(alid)35 b(v)-5 b(alue,)36 b(all)630 628 y(lines)30
b(read)g(b)m(y)g(the)g(shell)g(parser)g(are)g(sa)m(v)m(ed)h(on)f(the)g
(history)g(list,)h(sub)5 b(ject)30 b(to)g(the)g(v)-5
-b(alue)630 737 y(of)42 b Fs(HISTIGNORE)p Ft(.)73 b(The)42
+b(alue)630 737 y(of)42 b Ft(HISTIGNORE)p Fu(.)73 b(The)42
b(second)g(and)g(subsequen)m(t)f(lines)h(of)h(a)f(m)m(ulti-line)h(comp)
s(ound)630 847 y(command)33 b(are)h(not)g(tested,)i(and)d(are)h(added)f
(to)h(the)g(history)g(regardless)g(of)g(the)f(v)-5 b(alue)630
-956 y(of)31 b Fs(HISTCONTROL)p Ft(.)150 1117 y Fs(HISTFILE)96
-b Ft(The)27 b(name)h(of)g(the)g(\014le)g(to)h(whic)m(h)f(the)g(command)
+956 y(of)31 b Ft(HISTCONTROL)p Fu(.)150 1117 y Ft(HISTFILE)96
+b Fu(The)27 b(name)h(of)g(the)g(\014le)g(to)h(whic)m(h)f(the)g(command)
f(history)h(is)g(sa)m(v)m(ed.)41 b(The)27 b(default)h(v)-5
-b(alue)630 1226 y(is)30 b(`)p Fs(~/.bash_history)p Ft('.)150
-1386 y Fs(HISTFILESIZE)630 1496 y Ft(The)c(maxim)m(um)f(n)m(um)m(b)s
+b(alue)630 1226 y(is)30 b Ft(~/.bash_history)p Fu(.)150
+1386 y Ft(HISTFILESIZE)630 1496 y Fu(The)c(maxim)m(um)f(n)m(um)m(b)s
(er)g(of)h(lines)h(con)m(tained)g(in)f(the)g(history)g(\014le.)39
b(When)26 b(this)g(v)-5 b(ariable)630 1606 y(is)25 b(assigned)h(a)g(v)
-5 b(alue,)27 b(the)f(history)f(\014le)h(is)f(truncated,)i(if)e
b(and)f(n)m(umeric)630 2044 y(v)-5 b(alues)31 b(less)f(than)g(zero)h
(inhibit)f(truncation.)41 b(The)29 b(shell)i(sets)f(the)h(default)f(v)
-5 b(alue)31 b(to)g(the)630 2153 y(v)-5 b(alue)31 b(of)f
-Fs(HISTSIZE)f Ft(after)h(reading)h(an)m(y)g(startup)f(\014les.)150
-2314 y Fs(HISTIGNORE)630 2423 y Ft(A)j(colon-separated)h(list)f(of)g
+Ft(HISTSIZE)f Fu(after)h(reading)h(an)m(y)g(startup)f(\014les.)150
+2314 y Ft(HISTIGNORE)630 2423 y Fu(A)j(colon-separated)h(list)f(of)g
(patterns)f(used)g(to)h(decide)g(whic)m(h)f(command)g(lines)h(should)
630 2533 y(b)s(e)f(sa)m(v)m(ed)h(on)g(the)f(history)h(list.)47
b(Eac)m(h)33 b(pattern)g(is)f(anc)m(hored)h(at)g(the)f(b)s(eginning)g
(of)h(the)630 2642 y(line)43 b(and)e(m)m(ust)h(matc)m(h)h(the)g
-(complete)h(line)e(\(no)h(implicit)g(`)p Fs(*)p Ft(')f(is)g(app)s
+(complete)h(line)e(\(no)h(implicit)g(`)p Ft(*)p Fu(')f(is)g(app)s
(ended\).)75 b(Eac)m(h)630 2752 y(pattern)42 b(is)g(tested)g(against)h
(the)f(line)g(after)g(the)g(c)m(hec)m(ks)h(sp)s(eci\014ed)e(b)m(y)h
-Fs(HISTCONTROL)630 2862 y Ft(are)37 b(applied.)59 b(In)36
+Ft(HISTCONTROL)630 2862 y Fu(are)37 b(applied.)59 b(In)36
b(addition)h(to)g(the)g(normal)g(shell)f(pattern)h(matc)m(hing)h(c)m
-(haracters,)i(`)p Fs(&)p Ft(')630 2971 y(matc)m(hes)d(the)f(previous)g
-(history)g(line.)57 b(`)p Fs(&)p Ft(')36 b(ma)m(y)h(b)s(e)e(escap)s(ed)
+(haracters,)i(`)p Ft(&)p Fu(')630 2971 y(matc)m(hes)d(the)f(previous)g
+(history)g(line.)57 b(`)p Ft(&)p Fu(')36 b(ma)m(y)h(b)s(e)e(escap)s(ed)
h(using)g(a)g(bac)m(kslash;)k(the)630 3081 y(bac)m(kslash)34
b(is)g(remo)m(v)m(ed)h(b)s(efore)e(attempting)i(a)g(matc)m(h.)51
b(The)34 b(second)f(and)h(subsequen)m(t)630 3190 y(lines)e(of)h(a)g(m)m
(ulti-line)g(comp)s(ound)e(command)h(are)h(not)f(tested,)i(and)e(are)g
(added)g(to)h(the)630 3300 y(history)d(regardless)h(of)g(the)f(v)-5
-b(alue)31 b(of)g Fs(HISTIGNORE)p Ft(.)630 3435 y Fs(HISTIGNORE)20
-b Ft(subsumes)g(the)j(function)f(of)h Fs(HISTCONTROL)p
-Ft(.)35 b(A)23 b(pattern)f(of)h(`)p Fs(&)p Ft(')g(is)f(iden)m(tical)630
-3544 y(to)k Fs(ignoredups)p Ft(,)e(and)h(a)h(pattern)g(of)f(`)p
-Fs([)31 b(]*)p Ft(')25 b(is)h(iden)m(tical)h(to)f Fs(ignorespace)p
-Ft(.)36 b(Com)m(bining)630 3654 y(these)30 b(t)m(w)m(o)h(patterns,)f
+b(alue)31 b(of)g Ft(HISTIGNORE)p Fu(.)630 3435 y Ft(HISTIGNORE)20
+b Fu(subsumes)g(the)j(function)f(of)h Ft(HISTCONTROL)p
+Fu(.)35 b(A)23 b(pattern)f(of)h(`)p Ft(&)p Fu(')g(is)f(iden)m(tical)630
+3544 y(to)k Ft(ignoredups)p Fu(,)e(and)h(a)h(pattern)g(of)f(`)p
+Ft([)31 b(]*)p Fu(')25 b(is)h(iden)m(tical)h(to)f Ft(ignorespace)p
+Fu(.)36 b(Com)m(bining)630 3654 y(these)30 b(t)m(w)m(o)h(patterns,)f
(separating)g(them)g(with)f(a)h(colon,)h(pro)m(vides)e(the)h
-(functionalit)m(y)h(of)630 3764 y Fs(ignoreboth)p Ft(.)150
-3924 y Fs(HISTSIZE)96 b Ft(The)37 b(maxim)m(um)g(n)m(um)m(b)s(er)e(of)j
+(functionalit)m(y)h(of)630 3764 y Ft(ignoreboth)p Fu(.)150
+3924 y Ft(HISTSIZE)96 b Fu(The)37 b(maxim)m(um)g(n)m(um)m(b)s(er)e(of)j
(commands)f(to)g(remem)m(b)s(er)g(on)g(the)g(history)g(list.)62
b(If)37 b(the)630 4033 y(v)-5 b(alue)26 b(is)g(0,)i(commands)d(are)h
(not)h(sa)m(v)m(ed)g(in)e(the)h(history)g(list.)40 b(Numeric)26
(ery)g(command)g(b)s(eing)f(sa)m(v)m(ed)i(on)f(the)g(history)f(list)i
(\(there)f(is)g(no)g(limit\).)630 4253 y(The)j(shell)g(sets)h(the)g
(default)f(v)-5 b(alue)31 b(to)g(500)h(after)f(reading)f(an)m(y)h
-(startup)f(\014les.)150 4413 y Fs(HISTTIMEFORMAT)630
-4522 y Ft(If)44 b(this)g(v)-5 b(ariable)45 b(is)f(set)g(and)g(not)g(n)m
+(startup)f(\014les.)150 4413 y Ft(HISTTIMEFORMAT)630
+4522 y Fu(If)44 b(this)g(v)-5 b(ariable)45 b(is)f(set)g(and)g(not)g(n)m
(ull,)k(its)d(v)-5 b(alue)44 b(is)g(used)g(as)g(a)h(format)f(string)g
-(for)630 4632 y Fq(strftime)c Ft(to)35 b(prin)m(t)f(the)h(time)g(stamp)
+(for)630 4632 y Fr(strftime)c Fu(to)35 b(prin)m(t)f(the)h(time)g(stamp)
f(asso)s(ciated)i(with)f(eac)m(h)g(history)g(en)m(try)f(displa)m(y)m
-(ed)630 4741 y(b)m(y)g(the)f Fs(history)f Ft(builtin.)50
+(ed)630 4741 y(b)m(y)g(the)f Ft(history)f Fu(builtin.)50
b(If)33 b(this)h(v)-5 b(ariable)34 b(is)g(set,)h(time)f(stamps)g(are)g
(written)f(to)i(the)630 4851 y(history)26 b(\014le)g(so)g(they)g(ma)m
(y)h(b)s(e)e(preserv)m(ed)g(across)i(shell)f(sessions.)39
b(This)25 b(uses)h(the)g(history)630 4961 y(commen)m(t)31
b(c)m(haracter)h(to)f(distinguish)f(timestamps)h(from)f(other)g
-(history)h(lines.)150 5121 y Fs(HOSTFILE)96 b Ft(Con)m(tains)39
-b(the)f(name)g(of)h(a)g(\014le)f(in)g(the)g(same)h(format)g(as)f(`)p
-Fs(/etc/hosts)p Ft(')e(that)j(should)630 5230 y(b)s(e)i(read)h(when)f
-(the)i(shell)f(needs)f(to)i(complete)h(a)e(hostname.)76
-b(The)42 b(list)g(of)g(p)s(ossible)630 5340 y(hostname)26
-b(completions)g(ma)m(y)h(b)s(e)d(c)m(hanged)j(while)e(the)h(shell)g(is)
-f(running;)h(the)g(next)f(time)p eop end
+(history)h(lines.)150 5121 y Ft(HOSTFILE)96 b Fu(Con)m(tains)33
+b(the)g(name)f(of)h(a)g(\014le)f(in)g(the)h(same)g(format)g(as)f
+Ft(/etc/hosts)e Fu(that)j(should)f(b)s(e)630 5230 y(read)21
+b(when)g(the)g(shell)h(needs)f(to)h(complete)h(a)e(hostname.)38
+b(The)21 b(list)h(of)g(p)s(ossible)f(hostname)630 5340
+y(completions)27 b(ma)m(y)f(b)s(e)f(c)m(hanged)h(while)f(the)h(shell)g
+(is)f(running;)h(the)g(next)f(time)i(hostname)p eop end
%%Page: 76 82
-TeXDict begin 76 81 bop 150 -116 a Ft(Chapter)30 b(5:)41
-b(Shell)30 b(V)-8 b(ariables)2459 b(76)630 299 y(hostname)37
-b(completion)i(is)e(attempted)h(after)g(the)f(v)-5 b(alue)37
-b(is)h(c)m(hanged,)h(Bash)e(adds)g(the)630 408 y(con)m(ten)m(ts)43
-b(of)f(the)f(new)g(\014le)h(to)g(the)f(existing)i(list.)74
-b(If)41 b Fs(HOSTFILE)e Ft(is)i(set,)k(but)c(has)g(no)630
-518 y(v)-5 b(alue,)29 b(or)e(do)s(es)h(not)g(name)f(a)h(readable)g
-(\014le,)h(Bash)f(attempts)g(to)g(read)g(`)p Fs(/etc/hosts)p
-Ft(')d(to)630 628 y(obtain)j(the)g(list)h(of)f(p)s(ossible)f(hostname)h
-(completions.)41 b(When)28 b Fs(HOSTFILE)e Ft(is)i(unset,)g(the)630
-737 y(hostname)j(list)g(is)f(cleared.)150 906 y Fs(HOSTNAME)96
-b Ft(The)30 b(name)g(of)h(the)f(curren)m(t)h(host.)150
-1074 y Fs(HOSTTYPE)96 b Ft(A)30 b(string)h(describing)f(the)g(mac)m
-(hine)h(Bash)g(is)f(running)f(on.)150 1243 y Fs(IGNOREEOF)630
-1353 y Ft(Con)m(trols)e(the)h(action)g(of)f(the)g(shell)g(on)g(receipt)
-h(of)f(an)g Fs(EOF)f Ft(c)m(haracter)i(as)g(the)f(sole)h(input.)630
+TeXDict begin 76 81 bop 150 -116 a Fu(Chapter)30 b(5:)41
+b(Shell)30 b(V)-8 b(ariables)2459 b(76)630 299 y(completion)33
+b(is)g(attempted)g(after)g(the)f(v)-5 b(alue)33 b(is)f(c)m(hanged,)i
+(Bash)e(adds)f(the)i(con)m(ten)m(ts)h(of)630 408 y(the)h(new)f(\014le)g
+(to)h(the)g(existing)h(list.)53 b(If)34 b Ft(HOSTFILE)e
+Fu(is)j(set,)h(but)e(has)g(no)h(v)-5 b(alue,)36 b(or)e(do)s(es)630
+518 y(not)d(name)f(a)h(readable)g(\014le,)g(Bash)f(attempts)i(to)f
+(read)f Ft(/etc/hosts)e Fu(to)j(obtain)g(the)f(list)630
+628 y(of)h(p)s(ossible)f(hostname)h(completions.)43 b(When)31
+b Ft(HOSTFILE)d Fu(is)j(unset,)f(the)h(hostname)g(list)630
+737 y(is)f(cleared.)150 906 y Ft(HOSTNAME)96 b Fu(The)30
+b(name)g(of)h(the)f(curren)m(t)h(host.)150 1074 y Ft(HOSTTYPE)96
+b Fu(A)30 b(string)h(describing)f(the)g(mac)m(hine)h(Bash)g(is)f
+(running)f(on.)150 1243 y Ft(IGNOREEOF)630 1353 y Fu(Con)m(trols)e(the)
+h(action)g(of)f(the)g(shell)g(on)g(receipt)h(of)f(an)g
+Ft(EOF)f Fu(c)m(haracter)i(as)g(the)f(sole)h(input.)630
1462 y(If)i(set,)i(the)f(v)-5 b(alue)32 b(denotes)f(the)g(n)m(um)m(b)s
-(er)f(of)h(consecutiv)m(e)i Fs(EOF)d Ft(c)m(haracters)i(that)f(can)h(b)
+(er)f(of)h(consecutiv)m(e)i Ft(EOF)d Fu(c)m(haracters)i(that)f(can)h(b)
s(e)630 1572 y(read)40 b(as)f(the)h(\014rst)f(c)m(haracter)i(on)f(an)f
(input)g(line)h(b)s(efore)f(the)h(shell)g(will)g(exit.)70
b(If)39 b(the)630 1681 y(v)-5 b(ariable)38 b(exists)f(but)f(do)s(es)g
(not)h(ha)m(v)m(e)h(a)g(n)m(umeric)e(v)-5 b(alue)37 b(\(or)h(has)e(no)h
(v)-5 b(alue\))37 b(then)g(the)630 1791 y(default)31
b(is)g(10.)43 b(If)30 b(the)h(v)-5 b(ariable)31 b(do)s(es)g(not)g
-(exist,)h(then)e Fs(EOF)g Ft(signi\014es)h(the)g(end)f(of)h(input)630
+(exist,)h(then)e Ft(EOF)g Fu(signi\014es)h(the)g(end)f(of)h(input)630
1901 y(to)g(the)g(shell.)41 b(This)29 b(is)i(only)f(in)g(e\013ect)i
-(for)e(in)m(teractiv)m(e)j(shells.)150 2069 y Fs(INPUTRC)144
-b Ft(The)68 b(name)h(of)f(the)h(Readline)g(initialization)j(\014le,)78
-b(o)m(v)m(erriding)69 b(the)g(default)g(of)630 2179 y(`)p
-Fs(~/.inputrc)p Ft('.)150 2347 y Fs(LANG)288 b Ft(Used)28
+(for)e(in)m(teractiv)m(e)j(shells.)150 2069 y Ft(INPUTRC)144
+b Fu(The)68 b(name)h(of)f(the)h(Readline)g(initialization)j(\014le,)78
+b(o)m(v)m(erriding)69 b(the)g(default)g(of)630 2179 y
+Ft(~/.inputrc)p Fu(.)150 2347 y Ft(LANG)288 b Fu(Used)28
b(to)h(determine)f(the)g(lo)s(cale)h(category)h(for)e(an)m(y)h
(category)h(not)e(sp)s(eci\014cally)g(selected)630 2457
-y(with)i(a)h(v)-5 b(ariable)31 b(starting)g(with)f Fs(LC_)p
-Ft(.)150 2626 y Fs(LC_ALL)192 b Ft(This)28 b(v)-5 b(ariable)29
-b(o)m(v)m(errides)h(the)f(v)-5 b(alue)29 b(of)g Fs(LANG)f
-Ft(and)g(an)m(y)h(other)g Fs(LC_)f Ft(v)-5 b(ariable)29
+y(with)i(a)h(v)-5 b(ariable)31 b(starting)g(with)f Ft(LC_)p
+Fu(.)150 2626 y Ft(LC_ALL)192 b Fu(This)28 b(v)-5 b(ariable)29
+b(o)m(v)m(errides)h(the)f(v)-5 b(alue)29 b(of)g Ft(LANG)f
+Fu(and)g(an)m(y)h(other)g Ft(LC_)f Fu(v)-5 b(ariable)29
b(sp)s(ecifying)630 2735 y(a)i(lo)s(cale)h(category)-8
-b(.)150 2904 y Fs(LC_COLLATE)630 3013 y Ft(This)37 b(v)-5
+b(.)150 2904 y Ft(LC_COLLATE)630 3013 y Fu(This)37 b(v)-5
b(ariable)38 b(determines)g(the)g(collation)i(order)d(used)g(when)f
(sorting)i(the)g(results)g(of)630 3123 y(\014lename)e(expansion,)i(and)
e(determines)g(the)h(b)s(eha)m(vior)f(of)g(range)h(expressions,)h
(equiv-)630 3232 y(alence)e(classes,)h(and)e(collating)i(sequences)e
(within)f(\014lename)h(expansion)g(and)f(pattern)630
3342 y(matc)m(hing)d(\(see)h(Section)f(3.5.8)h([Filename)g(Expansion],)
-e(page)h(29\).)150 3511 y Fs(LC_CTYPE)96 b Ft(This)36
+e(page)h(29\).)150 3511 y Ft(LC_CTYPE)96 b Fu(This)36
b(v)-5 b(ariable)37 b(determines)f(the)h(in)m(terpretation)h(of)f(c)m
(haracters)h(and)e(the)g(b)s(eha)m(vior)h(of)630 3620
y(c)m(haracter)46 b(classes)g(within)e(\014lename)h(expansion)g(and)f
(pattern)h(matc)m(hing)h(\(see)f(Sec-)630 3730 y(tion)31
b(3.5.8)h([Filename)g(Expansion],)e(page)h(29\).)150
-3898 y Fs(LC_MESSAGES)630 4008 y Ft(This)25 b(v)-5 b(ariable)27
+3898 y Ft(LC_MESSAGES)630 4008 y Fu(This)25 b(v)-5 b(ariable)27
b(determines)f(the)g(lo)s(cale)i(used)d(to)i(translate)g(double-quoted)
f(strings)g(pre-)630 4118 y(ceded)31 b(b)m(y)f(a)h(`)p
-Fs($)p Ft(')f(\(see)h(Section)h(3.1.2.5)g([Lo)s(cale)g(T)-8
-b(ranslation],)32 b(page)f(7\).)150 4286 y Fs(LC_NUMERIC)630
-4396 y Ft(This)f(v)-5 b(ariable)31 b(determines)f(the)h(lo)s(cale)h
+Ft($)p Fu(')f(\(see)h(Section)h(3.1.2.5)g([Lo)s(cale)g(T)-8
+b(ranslation],)32 b(page)f(7\).)150 4286 y Ft(LC_NUMERIC)630
+4396 y Fu(This)f(v)-5 b(ariable)31 b(determines)f(the)h(lo)s(cale)h
(category)g(used)e(for)g(n)m(um)m(b)s(er)f(formatting.)150
-4564 y Fs(LINENO)192 b Ft(The)30 b(line)h(n)m(um)m(b)s(er)e(in)h(the)g
+4564 y Ft(LINENO)192 b Fu(The)30 b(line)h(n)m(um)m(b)s(er)e(in)h(the)g
(script)h(or)f(shell)g(function)h(curren)m(tly)f(executing.)150
-4733 y Fs(LINES)240 b Ft(Used)43 b(b)m(y)g(the)g Fs(select)e
-Ft(command)i(to)g(determine)g(the)g(column)g(length)g(for)g(prin)m
+4733 y Ft(LINES)240 b Fu(Used)43 b(b)m(y)g(the)g Ft(select)e
+Fu(command)i(to)g(determine)g(the)g(column)g(length)g(for)g(prin)m
(ting)630 4843 y(selection)c(lists.)63 b(Automatically)41
-b(set)d(if)f(the)h Fs(checkwinsize)d Ft(option)j(is)f(enabled)h(\(see)
+b(set)d(if)f(the)h Ft(checkwinsize)d Fu(option)j(is)f(enabled)h(\(see)
630 4952 y(Section)44 b(4.3.2)h([The)e(Shopt)g(Builtin],)k(page)d
-(63\),)k(or)43 b(in)g(an)g(in)m(teractiv)m(e)j(shell)e(up)s(on)630
-5062 y(receipt)31 b(of)g(a)g Fs(SIGWINCH)p Ft(.)150 5230
-y Fs(MACHTYPE)96 b Ft(A)26 b(string)g(that)h(fully)f(describ)s(es)f
+(62\),)k(or)43 b(in)g(an)g(in)m(teractiv)m(e)j(shell)e(up)s(on)630
+5062 y(receipt)31 b(of)g(a)g Ft(SIGWINCH)p Fu(.)150 5230
+y Ft(MACHTYPE)96 b Fu(A)26 b(string)g(that)h(fully)f(describ)s(es)f
(the)h(system)g(t)m(yp)s(e)h(on)f(whic)m(h)f(Bash)i(is)f(executing,)i
-(in)e(the)630 5340 y(standard)k Fl(gnu)g Fq(cpu-compan)m(y-system)h
-Ft(format.)p eop end
+(in)e(the)630 5340 y(standard)k Fm(gnu)g Fr(cpu-compan)m(y-system)h
+Fu(format.)p eop end
%%Page: 77 83
-TeXDict begin 77 82 bop 150 -116 a Ft(Chapter)30 b(5:)41
-b(Shell)30 b(V)-8 b(ariables)2459 b(77)150 299 y Fs(MAILCHECK)630
-408 y Ft(Ho)m(w)28 b(often)g(\(in)g(seconds\))g(that)g(the)f(shell)h
+TeXDict begin 77 82 bop 150 -116 a Fu(Chapter)30 b(5:)41
+b(Shell)30 b(V)-8 b(ariables)2459 b(77)150 299 y Ft(MAILCHECK)630
+408 y Fu(Ho)m(w)28 b(often)g(\(in)g(seconds\))g(that)g(the)f(shell)h
(should)f(c)m(hec)m(k)i(for)e(mail)h(in)f(the)h(\014les)g(sp)s
-(eci\014ed)630 518 y(in)i(the)h Fs(MAILPATH)e Ft(or)i
-Fs(MAIL)e Ft(v)-5 b(ariables.)43 b(The)30 b(default)h(is)f(60)i
+(eci\014ed)630 518 y(in)i(the)h Ft(MAILPATH)e Fu(or)i
+Ft(MAIL)e Fu(v)-5 b(ariables.)43 b(The)30 b(default)h(is)f(60)i
(seconds.)42 b(When)30 b(it)h(is)g(time)630 628 y(to)37
b(c)m(hec)m(k)h(for)e(mail,)j(the)e(shell)f(do)s(es)g(so)h(b)s(efore)f
(displa)m(ying)h(the)f(primary)g(prompt.)57 b(If)630
737 y(this)37 b(v)-5 b(ariable)38 b(is)f(unset,)h(or)f(set)h(to)g(a)f
(v)-5 b(alue)38 b(that)f(is)g(not)h(a)f(n)m(um)m(b)s(er)f(greater)i
(than)f(or)630 847 y(equal)31 b(to)g(zero,)g(the)g(shell)g(disables)f
-(mail)h(c)m(hec)m(king.)150 996 y Fs(MAPFILE)144 b Ft(An)35
+(mail)h(c)m(hec)m(king.)150 996 y Ft(MAPFILE)144 b Fu(An)35
b(arra)m(y)h(v)-5 b(ariable)36 b(created)g(to)h(hold)e(the)g(text)i
-(read)e(b)m(y)g(the)h Fs(mapfile)d Ft(builtin)i(when)630
+(read)e(b)m(y)g(the)h Ft(mapfile)d Fu(builtin)i(when)630
1105 y(no)30 b(v)-5 b(ariable)31 b(name)g(is)f(supplied.)150
-1254 y Fs(OLDPWD)192 b Ft(The)30 b(previous)g(w)m(orking)g(directory)h
-(as)g(set)g(b)m(y)f(the)h Fs(cd)e Ft(builtin.)150 1403
-y Fs(OPTERR)192 b Ft(If)35 b(set)i(to)f(the)h(v)-5 b(alue)36
+1254 y Ft(OLDPWD)192 b Fu(The)30 b(previous)g(w)m(orking)g(directory)h
+(as)g(set)g(b)m(y)f(the)h Ft(cd)e Fu(builtin.)150 1403
+y Ft(OPTERR)192 b Fu(If)35 b(set)i(to)f(the)h(v)-5 b(alue)36
b(1,)i(Bash)e(displa)m(ys)g(error)f(messages)i(generated)g(b)m(y)f(the)
-g Fs(getopts)630 1512 y Ft(builtin)30 b(command.)150
-1661 y Fs(OSTYPE)192 b Ft(A)30 b(string)h(describing)f(the)g(op)s
+g Ft(getopts)630 1512 y Fu(builtin)30 b(command.)150
+1661 y Ft(OSTYPE)192 b Fu(A)30 b(string)h(describing)f(the)g(op)s
(erating)h(system)g(Bash)f(is)h(running)d(on.)150 1810
-y Fs(PIPESTATUS)630 1919 y Ft(An)23 b(arra)m(y)h(v)-5
+y Ft(PIPESTATUS)630 1919 y Fu(An)23 b(arra)m(y)h(v)-5
b(ariable)24 b(\(see)h(Section)f(6.7)h([Arra)m(ys],)g(page)f(89\))h
(con)m(taining)g(a)f(list)g(of)g(exit)g(sta-)630 2029
y(tus)h(v)-5 b(alues)27 b(from)e(the)h(pro)s(cesses)g(in)f(the)h
(most-recen)m(tly-executed)j(foreground)c(pip)s(eline)630
2138 y(\(whic)m(h)30 b(ma)m(y)h(con)m(tain)h(only)f(a)f(single)h
-(command\).)150 2287 y Fs(POSIXLY_CORRECT)630 2397 y
-Ft(If)h(this)g(v)-5 b(ariable)34 b(is)e(in)g(the)h(en)m(vironmen)m(t)g
-(when)e(Bash)i(starts,)g(the)g(shell)g(en)m(ters)g Fl(posix)630
-2506 y Ft(mo)s(de)22 b(\(see)h(Section)g(6.11)h([Bash)e(POSIX)f(Mo)s
+(command\).)150 2287 y Ft(POSIXLY_CORRECT)630 2397 y
+Fu(If)h(this)g(v)-5 b(ariable)34 b(is)e(in)g(the)h(en)m(vironmen)m(t)g
+(when)e(Bash)i(starts,)g(the)g(shell)g(en)m(ters)g Fm(posix)630
+2506 y Fu(mo)s(de)22 b(\(see)h(Section)g(6.11)h([Bash)e(POSIX)f(Mo)s
(de],)k(page)e(94\))g(b)s(efore)f(reading)g(the)g(startup)630
-2616 y(\014les,)32 b(as)f(if)h(the)f(`)p Fs(--posix)p
-Ft(')f(in)m(v)m(o)s(cation)j(option)f(had)f(b)s(een)g(supplied.)42
-b(If)31 b(it)h(is)f(set)h(while)630 2725 y(the)f(shell)f(is)h(running,)
-d(Bash)j(enables)g Fl(posix)e Ft(mo)s(de,)h(as)h(if)f(the)h(command)870
-2855 y Fs(set)47 b(-o)g(posix)630 2984 y Ft(had)30 b(b)s(een)f
-(executed.)150 3133 y Fs(PPID)288 b Ft(The)30 b(pro)s(cess)g
-Fl(id)g Ft(of)h(the)f(shell's)h(paren)m(t)g(pro)s(cess.)40
+2616 y(\014les,)36 b(as)e(if)h(the)f Ft(--posix)f Fu(in)m(v)m(o)s
+(cation)j(option)f(had)f(b)s(een)g(supplied.)51 b(If)34
+b(it)h(is)g(set)g(while)630 2725 y(the)c(shell)f(is)h(running,)d(Bash)j
+(enables)g Fm(posix)e Fu(mo)s(de,)h(as)h(if)f(the)h(command)870
+2855 y Ft(set)47 b(-o)g(posix)630 2984 y Fu(had)30 b(b)s(een)f
+(executed.)150 3133 y Ft(PPID)288 b Fu(The)30 b(pro)s(cess)g
+Fm(id)g Fu(of)h(the)f(shell's)h(paren)m(t)g(pro)s(cess.)40
b(This)30 b(v)-5 b(ariable)31 b(is)f(readonly)-8 b(.)150
-3281 y Fs(PROMPT_COMMAND)630 3391 y Ft(If)32 b(set,)h(the)f(v)-5
+3281 y Ft(PROMPT_COMMAND)630 3391 y Fu(If)32 b(set,)h(the)f(v)-5
b(alue)33 b(is)f(in)m(terpreted)g(as)g(a)h(command)f(to)h(execute)g(b)s
(efore)f(the)g(prin)m(ting)g(of)630 3500 y(eac)m(h)g(primary)d(prompt)g
-(\()p Fs($PS1)p Ft(\).)150 3649 y Fs(PROMPT_DIRTRIM)630
-3759 y Ft(If)e(set)g(to)h(a)g(n)m(um)m(b)s(er)e(greater)i(than)f(zero,)
+(\()p Ft($PS1)p Fu(\).)150 3649 y Ft(PROMPT_DIRTRIM)630
+3759 y Fu(If)e(set)g(to)h(a)g(n)m(um)m(b)s(er)e(greater)i(than)f(zero,)
i(the)e(v)-5 b(alue)28 b(is)f(used)g(as)g(the)h(n)m(um)m(b)s(er)e(of)h
(trailing)630 3868 y(directory)35 b(comp)s(onen)m(ts)g(to)h(retain)f
-(when)f(expanding)g(the)h Fs(\\w)f Ft(and)g Fs(\\W)g
-Ft(prompt)g(string)630 3978 y(escap)s(es)21 b(\(see)h(Section)f(6.9)h
+(when)f(expanding)g(the)h Ft(\\w)f Fu(and)g Ft(\\W)g
+Fu(prompt)g(string)630 3978 y(escap)s(es)21 b(\(see)h(Section)f(6.9)h
([Con)m(trolling)g(the)f(Prompt],)h(page)f(92\).)39 b(Characters)21
b(remo)m(v)m(ed)630 4088 y(are)31 b(replaced)g(with)f(an)g(ellipsis.)
-150 4236 y Fs(PS3)336 b Ft(The)34 b(v)-5 b(alue)35 b(of)f(this)g(v)-5
+150 4236 y Ft(PS3)336 b Fu(The)34 b(v)-5 b(alue)35 b(of)f(this)g(v)-5
b(ariable)35 b(is)g(used)e(as)i(the)f(prompt)g(for)g(the)g
-Fs(select)f Ft(command.)52 b(If)630 4346 y(this)30 b(v)-5
-b(ariable)31 b(is)g(not)f(set,)i(the)e Fs(select)f Ft(command)h
-(prompts)f(with)h(`)p Fs(#?)g Ft(')150 4495 y Fs(PS4)336
-b Ft(The)20 b(v)-5 b(alue)22 b(is)e(the)h(prompt)f(prin)m(ted)h(b)s
-(efore)f(the)h(command)g(line)g(is)g(ec)m(ho)s(ed)g(when)f(the)h(`)p
-Fs(-x)p Ft(')630 4604 y(option)32 b(is)f(set)h(\(see)g(Section)h(4.3.1)
-g([The)e(Set)g(Builtin],)i(page)f(59\).)45 b(The)31 b(\014rst)f(c)m
-(haracter)630 4714 y(of)k Fs(PS4)g Ft(is)g(replicated)i(m)m(ultiple)f
+Ft(select)f Fu(command.)52 b(If)630 4346 y(this)30 b(v)-5
+b(ariable)31 b(is)g(not)f(set,)i(the)e Ft(select)f Fu(command)h
+(prompts)f(with)h(`)p Ft(#?)g Fu(')150 4495 y Ft(PS4)336
+b Fu(The)24 b(v)-5 b(alue)25 b(is)f(the)h(prompt)e(prin)m(ted)h(b)s
+(efore)g(the)h(command)f(line)h(is)f(ec)m(ho)s(ed)i(when)d(the)i
+Ft(-x)630 4604 y Fu(option)32 b(is)f(set)h(\(see)g(Section)h(4.3.1)g
+([The)e(Set)g(Builtin],)i(page)f(58\).)45 b(The)31 b(\014rst)f(c)m
+(haracter)630 4714 y(of)k Ft(PS4)g Fu(is)g(replicated)i(m)m(ultiple)f
(times,)h(as)e(necessary)-8 b(,)37 b(to)e(indicate)g(m)m(ultiple)g(lev)
m(els)h(of)630 4823 y(indirection.)41 b(The)30 b(default)h(is)f(`)p
-Fs(+)g Ft('.)150 4972 y Fs(PWD)336 b Ft(The)30 b(curren)m(t)g(w)m
-(orking)h(directory)g(as)f(set)h(b)m(y)f(the)h Fs(cd)f
-Ft(builtin.)150 5121 y Fs(RANDOM)192 b Ft(Eac)m(h)30
+Ft(+)g Fu('.)150 4972 y Ft(PWD)336 b Fu(The)30 b(curren)m(t)g(w)m
+(orking)h(directory)g(as)f(set)h(b)m(y)f(the)h Ft(cd)f
+Fu(builtin.)150 5121 y Ft(RANDOM)192 b Fu(Eac)m(h)30
b(time)g(this)f(parameter)g(is)g(referenced,)h(a)f(random)g(in)m(teger)
h(b)s(et)m(w)m(een)g(0)f(and)g(32767)630 5230 y(is)i(generated.)43
b(Assigning)31 b(a)g(v)-5 b(alue)31 b(to)g(this)g(v)-5
b(ariable)31 b(seeds)g(the)g(random)f(n)m(um)m(b)s(er)f(gen-)630
5340 y(erator.)p eop end
%%Page: 78 84
-TeXDict begin 78 83 bop 150 -116 a Ft(Chapter)30 b(5:)41
-b(Shell)30 b(V)-8 b(ariables)2459 b(78)150 299 y Fs(READLINE_LINE)630
-408 y Ft(The)27 b(con)m(ten)m(ts)i(of)f(the)g(Readline)g(line)g
-(bu\013er,)f(for)h(use)f(with)g(`)p Fs(bind)j(-x)p Ft(')d(\(see)h
+TeXDict begin 78 83 bop 150 -116 a Fu(Chapter)30 b(5:)41
+b(Shell)30 b(V)-8 b(ariables)2459 b(78)150 299 y Ft(READLINE_LINE)630
+408 y Fu(The)27 b(con)m(ten)m(ts)i(of)f(the)g(Readline)g(line)g
+(bu\013er,)f(for)h(use)f(with)g(`)p Ft(bind)j(-x)p Fu(')d(\(see)h
(Section)h(4.2)630 518 y([Bash)i(Builtins],)g(page)g(48\).)150
-667 y Fs(READLINE_POINT)630 776 y Ft(The)23 b(p)s(osition)g(of)g(the)h
+667 y Ft(READLINE_POINT)630 776 y Fu(The)23 b(p)s(osition)g(of)g(the)h
(insertion)f(p)s(oin)m(t)g(in)g(the)g(Readline)h(line)f(bu\013er,)h
-(for)f(use)g(with)g(`)p Fs(bind)630 886 y(-x)p Ft(')30
+(for)f(use)g(with)g(`)p Ft(bind)630 886 y(-x)p Fu(')30
b(\(see)h(Section)h(4.2)f([Bash)g(Builtins],)g(page)g(48\).)150
-1035 y Fs(REPLY)240 b Ft(The)30 b(default)g(v)-5 b(ariable)32
-b(for)e(the)g Fs(read)g Ft(builtin.)150 1183 y Fs(SECONDS)144
-b Ft(This)40 b(v)-5 b(ariable)41 b(expands)f(to)h(the)g(n)m(um)m(b)s
+1035 y Ft(REPLY)240 b Fu(The)30 b(default)g(v)-5 b(ariable)32
+b(for)e(the)g Ft(read)g Fu(builtin.)150 1183 y Ft(SECONDS)144
+b Fu(This)40 b(v)-5 b(ariable)41 b(expands)f(to)h(the)g(n)m(um)m(b)s
(er)e(of)i(seconds)g(since)g(the)f(shell)h(w)m(as)g(started.)630
1293 y(Assignmen)m(t)i(to)g(this)g(v)-5 b(ariable)43
b(resets)g(the)g(coun)m(t)g(to)g(the)g(v)-5 b(alue)43
b(assigned,)j(and)c(the)630 1403 y(expanded)35 b(v)-5
b(alue)36 b(b)s(ecomes)h(the)f(v)-5 b(alue)36 b(assigned)g(plus)f(the)h
(n)m(um)m(b)s(er)f(of)h(seconds)g(since)630 1512 y(the)31
-b(assignmen)m(t.)150 1661 y Fs(SHELL)240 b Ft(The)29
+b(assignmen)m(t.)150 1661 y Ft(SHELL)240 b Fu(The)29
b(full)h(pathname)g(to)h(the)f(shell)g(is)g(k)m(ept)g(in)g(this)g(en)m
(vironmen)m(t)g(v)-5 b(ariable.)42 b(If)29 b(it)i(is)f(not)630
1771 y(set)36 b(when)f(the)h(shell)g(starts,)i(Bash)e(assigns)h(to)f
(it)h(the)f(full)f(pathname)h(of)g(the)g(curren)m(t)630
-1880 y(user's)30 b(login)h(shell.)150 2029 y Fs(SHELLOPTS)630
-2138 y Ft(A)g(colon-separated)h(list)f(of)g(enabled)f(shell)h(options.)
+1880 y(user's)30 b(login)h(shell.)150 2029 y Ft(SHELLOPTS)630
+2138 y Fu(A)g(colon-separated)h(list)f(of)g(enabled)f(shell)h(options.)
41 b(Eac)m(h)31 b(w)m(ord)f(in)g(the)h(list)g(is)g(a)g(v)-5
-b(alid)630 2248 y(argumen)m(t)24 b(for)f(the)h(`)p Fs(-o)p
-Ft(')f(option)h(to)g(the)g Fs(set)f Ft(builtin)g(command)g(\(see)i
-(Section)f(4.3.1)h([The)630 2358 y(Set)k(Builtin],)h(page)f(59\).)42
-b(The)28 b(options)h(app)s(earing)f(in)g Fs(SHELLOPTS)e
-Ft(are)j(those)h(rep)s(orted)630 2467 y(as)g(`)p Fs(on)p
-Ft(')f(b)m(y)h(`)p Fs(set)g(-o)p Ft('.)40 b(If)29 b(this)h(v)-5
+b(alid)630 2248 y(argumen)m(t)28 b(for)f(the)h Ft(-o)e
+Fu(option)i(to)g(the)g Ft(set)e Fu(builtin)h(command)g(\(see)i(Section)
+f(4.3.1)h([The)630 2358 y(Set)g(Builtin],)h(page)f(58\).)42
+b(The)28 b(options)h(app)s(earing)f(in)g Ft(SHELLOPTS)e
+Fu(are)j(those)h(rep)s(orted)630 2467 y(as)g(`)p Ft(on)p
+Fu(')f(b)m(y)h(`)p Ft(set)g(-o)p Fu('.)40 b(If)29 b(this)h(v)-5
b(ariable)30 b(is)g(in)f(the)h(en)m(vironmen)m(t)g(when)f(Bash)h
(starts)g(up,)630 2577 y(eac)m(h)41 b(shell)e(option)h(in)f(the)h(list)
g(will)f(b)s(e)g(enabled)h(b)s(efore)f(reading)g(an)m(y)h(startup)f
(\014les.)630 2686 y(This)30 b(v)-5 b(ariable)31 b(is)f(readonly)-8
-b(.)150 2835 y Fs(SHLVL)240 b Ft(Incremen)m(ted)21 b(b)m(y)g(one)g(eac)
+b(.)150 2835 y Ft(SHLVL)240 b Fu(Incremen)m(ted)21 b(b)m(y)g(one)g(eac)
m(h)h(time)f(a)h(new)e(instance)h(of)g(Bash)g(is)g(started.)38
b(This)20 b(is)h(in)m(tended)630 2945 y(to)31 b(b)s(e)f(a)h(coun)m(t)g
(of)f(ho)m(w)h(deeply)f(y)m(our)g(Bash)h(shells)f(are)h(nested.)150
-3093 y Fs(TIMEFORMAT)630 3203 y Ft(The)f(v)-5 b(alue)32
+3093 y Ft(TIMEFORMAT)630 3203 y Fu(The)f(v)-5 b(alue)32
b(of)f(this)g(parameter)g(is)g(used)f(as)h(a)g(format)h(string)f(sp)s
(ecifying)f(ho)m(w)h(the)g(tim-)630 3313 y(ing)37 b(information)f(for)h
-(pip)s(elines)f(pre\014xed)f(with)h(the)h Fs(time)e Ft(reserv)m(ed)i(w)
+(pip)s(elines)f(pre\014xed)f(with)h(the)h Ft(time)e Fu(reserv)m(ed)i(w)
m(ord)f(should)g(b)s(e)630 3422 y(displa)m(y)m(ed.)k(The)27
-b(`)p Fs(\045)p Ft(')h(c)m(haracter)h(in)m(tro)s(duces)e(an)h(escap)s
+b(`)p Ft(\045)p Fu(')h(c)m(haracter)h(in)m(tro)s(duces)e(an)h(escap)s
(e)g(sequence)g(that)g(is)f(expanded)g(to)630 3532 y(a)37
b(time)g(v)-5 b(alue)36 b(or)h(other)f(information.)59
b(The)36 b(escap)s(e)g(sequences)h(and)e(their)i(meanings)630
3641 y(are)31 b(as)f(follo)m(ws;)i(the)f(braces)f(denote)h(optional)h
-(p)s(ortions.)630 3790 y Fs(\045\045)384 b Ft(A)30 b(literal)i(`)p
-Fs(\045)p Ft('.)630 3939 y Fs(\045[)p Fi(p)11 b Fs(][l]R)85
-b Ft(The)30 b(elapsed)h(time)g(in)f(seconds.)630 4088
-y Fs(\045[)p Fi(p)11 b Fs(][l]U)85 b Ft(The)30 b(n)m(um)m(b)s(er)f(of)h
+(p)s(ortions.)630 3790 y Ft(\045\045)384 b Fu(A)30 b(literal)i(`)p
+Ft(\045)p Fu('.)630 3939 y Ft(\045[)p Fj(p)p Ft(][l]R)96
+b Fu(The)30 b(elapsed)h(time)g(in)f(seconds.)630 4088
+y Ft(\045[)p Fj(p)p Ft(][l]U)96 b Fu(The)30 b(n)m(um)m(b)s(er)f(of)h
(CPU)g(seconds)h(sp)s(en)m(t)f(in)g(user)f(mo)s(de.)630
-4236 y Fs(\045[)p Fi(p)11 b Fs(][l]S)85 b Ft(The)30 b(n)m(um)m(b)s(er)f
+4236 y Ft(\045[)p Fj(p)p Ft(][l]S)96 b Fu(The)30 b(n)m(um)m(b)s(er)f
(of)h(CPU)g(seconds)h(sp)s(en)m(t)f(in)g(system)g(mo)s(de.)630
-4385 y Fs(\045P)384 b Ft(The)30 b(CPU)g(p)s(ercen)m(tage,)i(computed)e
-(as)h(\(\045U)f Fs(+)g Ft(\045S\))g(/)h(\045R.)630 4534
-y(The)23 b(optional)j Fq(p)g Ft(is)e(a)g(digit)h(sp)s(ecifying)e(the)h
+4385 y Ft(\045P)384 b Fu(The)30 b(CPU)g(p)s(ercen)m(tage,)i(computed)e
+(as)h(\(\045U)f Ft(+)g Fu(\045S\))g(/)h(\045R.)630 4534
+y(The)23 b(optional)j Fr(p)g Fu(is)e(a)g(digit)h(sp)s(ecifying)e(the)h
(precision,)i(the)e(n)m(um)m(b)s(er)f(of)h(fractional)h(digits)630
4643 y(after)36 b(a)f(decimal)i(p)s(oin)m(t.)55 b(A)35
b(v)-5 b(alue)36 b(of)f(0)h(causes)g(no)f(decimal)h(p)s(oin)m(t)f(or)h
(fraction)g(to)g(b)s(e)630 4753 y(output.)48 b(A)m(t)34
b(most)f(three)g(places)h(after)f(the)g(decimal)h(p)s(oin)m(t)f(ma)m(y)
h(b)s(e)e(sp)s(eci\014ed;)i(v)-5 b(alues)630 4862 y(of)31
-b Fq(p)h Ft(greater)g(than)e(3)h(are)f(c)m(hanged)h(to)g(3.)42
-b(If)29 b Fq(p)k Ft(is)d(not)h(sp)s(eci\014ed,)f(the)h(v)-5
+b Fr(p)h Fu(greater)g(than)e(3)h(are)f(c)m(hanged)h(to)g(3.)42
+b(If)29 b Fr(p)k Fu(is)d(not)h(sp)s(eci\014ed,)f(the)h(v)-5
b(alue)30 b(3)h(is)g(used.)630 4992 y(The)54 b(optional)h
-Fs(l)f Ft(sp)s(eci\014es)g(a)h(longer)f(format,)61 b(including)54
-b(min)m(utes,)61 b(of)54 b(the)g(form)630 5101 y Fq(MM)10
-b Ft(m)p Fq(SS)5 b Ft(.)p Fq(FF)i Ft(s.)102 b(The)50
-b(v)-5 b(alue)51 b(of)g Fq(p)i Ft(determines)e(whether)f(or)h(not)f
-(the)h(fraction)h(is)630 5211 y(included.)630 5340 y(If)30
+Ft(l)f Fu(sp)s(eci\014es)g(a)h(longer)f(format,)61 b(including)54
+b(min)m(utes,)61 b(of)54 b(the)g(form)630 5101 y Fr(MM)10
+b Fu(m)p Fr(SS)p Fu(.)p Fr(FF)d Fu(s.)103 b(The)50 b(v)-5
+b(alue)52 b(of)f Fr(p)j Fu(determines)d(whether)f(or)h(not)h(the)f
+(fraction)h(is)630 5211 y(included.)630 5340 y(If)30
b(this)g(v)-5 b(ariable)31 b(is)g(not)f(set,)i(Bash)e(acts)h(as)g(if)f
(it)h(had)f(the)h(v)-5 b(alue)p eop end
%%Page: 79 85
-TeXDict begin 79 84 bop 150 -116 a Ft(Chapter)30 b(5:)41
-b(Shell)30 b(V)-8 b(ariables)2459 b(79)870 299 y Fs
+TeXDict begin 79 84 bop 150 -116 a Fu(Chapter)30 b(5:)41
+b(Shell)30 b(V)-8 b(ariables)2459 b(79)870 299 y Ft
($'\\nreal\\t\0453lR\\nuser\\t\0453)o(lU\\n)o(sys\\)o(t\0453)o(lS')630
-433 y Ft(If)37 b(the)g(v)-5 b(alue)38 b(is)f(n)m(ull,)i(no)f(timing)f
+433 y Fu(If)37 b(the)g(v)-5 b(alue)38 b(is)f(n)m(ull,)i(no)f(timing)f
(information)h(is)f(displa)m(y)m(ed.)62 b(A)37 b(trailing)i(newline)e
(is)630 543 y(added)30 b(when)f(the)i(format)f(string)h(is)f(displa)m
-(y)m(ed.)150 702 y Fs(TMOUT)240 b Ft(If)22 b(set)h(to)g(a)g(v)-5
-b(alue)23 b(greater)h(than)e(zero,)j Fs(TMOUT)d Ft(is)g(treated)i(as)e
-(the)h(default)g(timeout)g(for)g(the)630 812 y Fs(read)31
-b Ft(builtin)h(\(see)h(Section)f(4.2)i([Bash)e(Builtins],)h(page)g
-(48\).)47 b(The)32 b Fs(select)e Ft(command)630 922 y(\(see)f(Section)h
+(y)m(ed.)150 702 y Ft(TMOUT)240 b Fu(If)22 b(set)h(to)g(a)g(v)-5
+b(alue)23 b(greater)h(than)e(zero,)j Ft(TMOUT)d Fu(is)g(treated)i(as)e
+(the)h(default)g(timeout)g(for)g(the)630 812 y Ft(read)31
+b Fu(builtin)h(\(see)h(Section)f(4.2)i([Bash)e(Builtins],)h(page)g
+(48\).)47 b(The)32 b Ft(select)e Fu(command)630 922 y(\(see)f(Section)h
(3.2.4.2)g([Conditional)g(Constructs],)e(page)i(10\))f(terminates)g(if)
g(input)e(do)s(es)630 1031 y(not)k(arriv)m(e)g(after)g
-Fs(TMOUT)e Ft(seconds)h(when)f(input)h(is)g(coming)h(from)f(a)h
+Ft(TMOUT)e Fu(seconds)h(when)f(input)h(is)g(coming)h(from)f(a)h
(terminal.)630 1166 y(In)40 b(an)h(in)m(teractiv)m(e)i(shell,)h(the)d
(v)-5 b(alue)41 b(is)g(in)m(terpreted)g(as)f(the)h(n)m(um)m(b)s(er)f
(of)h(seconds)f(to)630 1275 y(w)m(ait)28 b(for)e(a)g(line)h(of)g(input)
e(after)i(issuing)f(the)h(primary)e(prompt.)39 b(Bash)26
b(terminates)h(after)630 1385 y(w)m(aiting)32 b(for)e(that)h(n)m(um)m
(b)s(er)e(of)h(seconds)h(if)f(a)h(complete)h(line)e(of)h(input)e(do)s
-(es)h(not)h(arriv)m(e.)150 1544 y Fs(TMPDIR)192 b Ft(If)39
+(es)h(not)h(arriv)m(e.)150 1544 y Ft(TMPDIR)192 b Fu(If)39
b(set,)j(Bash)e(uses)f(its)h(v)-5 b(alue)40 b(as)f(the)h(name)f(of)h(a)
g(directory)g(in)f(whic)m(h)g(Bash)h(creates)630 1654
y(temp)s(orary)30 b(\014les)g(for)g(the)h(shell's)g(use.)150
-1813 y Fs(UID)336 b Ft(The)30 b(n)m(umeric)g(real)h(user)f(id)g(of)g
+1813 y Ft(UID)336 b Fu(The)30 b(n)m(umeric)g(real)h(user)f(id)g(of)g
(the)h(curren)m(t)f(user.)40 b(This)30 b(v)-5 b(ariable)31
b(is)f(readonly)-8 b(.)p eop end
%%Page: 80 86
-TeXDict begin 80 85 bop 150 -116 a Ft(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(80)150 299 y Fo(6)80
-b(Bash)54 b(F)-13 b(eatures)150 524 y Ft(This)30 b(c)m(hapter)h
-(describ)s(es)e(features)i(unique)e(to)i(Bash.)150 752
-y Fr(6.1)68 b(In)l(v)l(oking)46 b(Bash)390 912 y Fs(bash)h([long-opt])e
-([-ir])h([-abefhkmnptuvxdBCDHP])c([-o)47 b Fi(option)11
-b Fs(])45 b([-O)i Fi(shopt_option)11 b Fs(])44 b([)p
-Fi(ar-)390 1021 y(gument)57 b Fs(...)o(])390 1131 y(bash)47
-b([long-opt])e([-abefhkmnptuvxdBCDHP])c([-o)47 b Fi(option)11
-b Fs(])46 b([-O)g Fi(shopt_option)11 b Fs(])44 b(-c)j
-Fi(string)57 b Fs([)p Fi(ar-)390 1240 y(gument)g Fs(...)o(])390
-1350 y(bash)47 b([long-opt])e(-s)i([-abefhkmnptuvxdBCDHP])42
-b([-o)k Fi(option)11 b Fs(])46 b([-O)h Fi(shopt_option)11
-b Fs(])43 b([)p Fi(ar-)390 1460 y(gument)57 b Fs(...)o(])275
-1592 y Ft(All)31 b(of)g(the)f(single-c)m(haracter)k(options)d(used)f
-(with)g(the)h Fs(set)f Ft(builtin)g(\(see)h(Section)h(4.3.1)g([The)f
-(Set)150 1702 y(Builtin],)45 b(page)c(59\))i(can)e(b)s(e)f(used)h(as)g
-(options)g(when)f(the)i(shell)f(is)g(in)m(v)m(ok)m(ed.)74
-b(In)41 b(addition,)j(there)150 1811 y(are)38 b(sev)m(eral)h(m)m
+TeXDict begin 80 85 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2484 b(80)150 299 y Fp(6)80
+b(Bash)54 b(F)-13 b(eatures)150 504 y Fu(This)30 b(c)m(hapter)h
+(describ)s(es)e(features)i(unique)e(to)i(Bash.)150 725
+y Fs(6.1)68 b(In)l(v)l(oking)46 b(Bash)390 884 y Ft(bash)h([long-opt])e
+([-ir])h([-abefhkmnptuvxdBCDHP])c([-o)47 b Fj(option)p
+Ft(])e([-O)i Fj(shopt_option)p Ft(])e([)p Fj(ar-)390
+994 y(gument)h Ft(...)o(])390 1103 y(bash)h([long-opt])e
+([-abefhkmnptuvxdBCDHP])c([-o)47 b Fj(option)p Ft(])f([-O)h
+Fj(shopt_option)p Ft(])d(-c)j Fj(string)f Ft([)p Fj(ar-)390
+1213 y(gument)g Ft(...)o(])390 1323 y(bash)h([long-opt])e(-s)i
+([-abefhkmnptuvxdBCDHP])42 b([-o)k Fj(option)p Ft(])g([-O)h
+Fj(shopt_option)p Ft(])d([)p Fj(ar-)390 1432 y(gument)i
+Ft(...)o(])275 1561 y Fu(All)31 b(of)g(the)f(single-c)m(haracter)k
+(options)d(used)f(with)g(the)h Ft(set)f Fu(builtin)g(\(see)h(Section)h
+(4.3.1)g([The)f(Set)150 1670 y(Builtin],)45 b(page)c(58\))i(can)e(b)s
+(e)f(used)h(as)g(options)g(when)f(the)i(shell)f(is)g(in)m(v)m(ok)m(ed.)
+74 b(In)41 b(addition,)j(there)150 1780 y(are)38 b(sev)m(eral)h(m)m
(ulti-c)m(haracter)h(options)d(that)h(y)m(ou)g(can)g(use.)61
b(These)38 b(options)f(m)m(ust)h(app)s(ear)e(on)i(the)150
-1921 y(command)30 b(line)h(b)s(efore)f(the)g(single-c)m(haracter)j
-(options)e(to)g(b)s(e)f(recognized.)150 2076 y Fs(--debugger)630
-2186 y Ft(Arrange)j(for)g(the)g(debugger)g(pro\014le)g(to)h(b)s(e)e
+1890 y(command)30 b(line)h(b)s(efore)f(the)g(single-c)m(haracter)j
+(options)e(to)g(b)s(e)f(recognized.)150 2037 y Ft(--debugger)630
+2147 y Fu(Arrange)j(for)g(the)g(debugger)g(pro\014le)g(to)h(b)s(e)e
(executed)i(b)s(efore)f(the)g(shell)g(starts.)49 b(T)-8
-b(urns)630 2296 y(on)37 b(extended)g(debugging)g(mo)s(de)g(\(see)h
-(Section)g(4.3.2)g([The)f(Shopt)g(Builtin],)i(page)f(63)630
-2405 y(for)30 b(a)h(description)f(of)h(the)f Fs(extdebug)f
-Ft(option)h(to)h(the)g Fs(shopt)e Ft(builtin\).)150 2561
-y Fs(--dump-po-strings)630 2670 y Ft(A)37 b(list)g(of)f(all)i
-(double-quoted)e(strings)g(preceded)g(b)m(y)h(`)p Fs($)p
-Ft(')f(is)h(prin)m(ted)f(on)g(the)h(standard)630 2780
-y(output)24 b(in)h(the)g Fl(gnu)f Fs(gettext)f Ft(PO)i(\(p)s(ortable)g
-(ob)5 b(ject\))26 b(\014le)f(format.)39 b(Equiv)-5 b(alen)m(t)26
-b(to)f(`)p Fs(-D)p Ft(')630 2890 y(except)31 b(for)f(the)h(output)f
-(format.)150 3045 y Fs(--dump-strings)630 3155 y Ft(Equiv)-5
-b(alen)m(t)31 b(to)g(`)p Fs(-D)p Ft('.)150 3310 y Fs(--help)192
-b Ft(Displa)m(y)32 b(a)e(usage)h(message)h(on)e(standard)g(output)g
-(and)f(exit)j(successfully)-8 b(.)150 3466 y Fs(--init-file)27
-b Fi(filename)150 3576 y Fs(--rcfile)h Fi(filename)630
-3685 y Ft(Execute)42 b(commands)f(from)f Fq(\014lename)47
-b Ft(\(instead)42 b(of)f(`)p Fs(~/.bashrc)p Ft('\))e(in)i(an)g(in)m
-(teractiv)m(e)630 3795 y(shell.)150 3950 y Fs(--login)144
-b Ft(Equiv)-5 b(alen)m(t)31 b(to)g(`)p Fs(-l)p Ft('.)150
-4106 y Fs(--noediting)630 4216 y Ft(Do)h(not)e(use)h(the)g
-Fl(gnu)f Ft(Readline)i(library)e(\(see)h(Chapter)g(8)g([Command)f(Line)
-g(Editing],)630 4325 y(page)h(102\))h(to)f(read)g(command)f(lines)g
-(when)g(the)g(shell)h(is)f(in)m(teractiv)m(e.)150 4481
-y Fs(--noprofile)630 4590 y Ft(Don't)i(load)f(the)g(system-wide)g
-(startup)f(\014le)g(`)p Fs(/etc/profile)p Ft(')e(or)j(an)m(y)g(of)g
-(the)f(p)s(ersonal)630 4700 y(initialization)g(\014les)d(`)p
-Fs(~/.bash_profile)p Ft(',)e(`)p Fs(~/.bash_login)p Ft(',)g(or)i(`)p
-Fs(~/.profile)p Ft(')e(when)630 4810 y(Bash)31 b(is)f(in)m(v)m(ok)m(ed)
-i(as)e(a)h(login)g(shell.)150 4965 y Fs(--norc)192 b
-Ft(Don't)31 b(read)g(the)f(`)p Fs(~/.bashrc)p Ft(')f(initialization)k
-(\014le)d(in)g(an)h(in)m(teractiv)m(e)i(shell.)41 b(This)30
-b(is)g(on)630 5075 y(b)m(y)g(default)h(if)f(the)h(shell)f(is)h(in)m(v)m
-(ok)m(ed)h(as)e Fs(sh)p Ft(.)150 5230 y Fs(--posix)144
-b Ft(Change)24 b(the)h(b)s(eha)m(vior)f(of)g(Bash)h(where)e(the)i
-(default)f(op)s(eration)h(di\013ers)f(from)f(the)i Fl(posix)630
-5340 y Ft(standard)35 b(to)h(matc)m(h)g(the)g(standard.)55
+b(urns)630 2257 y(on)37 b(extended)g(debugging)g(mo)s(de)g(\(see)h
+(Section)g(4.3.2)g([The)f(Shopt)g(Builtin],)i(page)f(62)630
+2366 y(for)30 b(a)h(description)f(of)h(the)f Ft(extdebug)f
+Fu(option)h(to)h(the)g Ft(shopt)e Fu(builtin\).)150 2514
+y Ft(--dump-po-strings)630 2623 y Fu(A)37 b(list)g(of)f(all)i
+(double-quoted)e(strings)g(preceded)g(b)m(y)h(`)p Ft($)p
+Fu(')f(is)h(prin)m(ted)f(on)g(the)h(standard)630 2733
+y(output)29 b(in)g(the)g Fm(gnu)g Ft(gettext)f Fu(PO)g(\(p)s(ortable)i
+(ob)5 b(ject\))30 b(\014le)g(format.)40 b(Equiv)-5 b(alen)m(t)31
+b(to)f Ft(-D)630 2843 y Fu(except)h(for)f(the)h(output)f(format.)150
+2990 y Ft(--dump-strings)630 3100 y Fu(Equiv)-5 b(alen)m(t)31
+b(to)g Ft(-D)p Fu(.)150 3248 y Ft(--help)192 b Fu(Displa)m(y)32
+b(a)e(usage)h(message)h(on)e(standard)g(output)g(and)f(exit)j
+(successfully)-8 b(.)150 3396 y Ft(--init-file)27 b Fj(filename)150
+3505 y Ft(--rcfile)h Fj(filename)630 3615 y Fu(Execute)23
+b(commands)e(from)g Fr(\014lename)28 b Fu(\(instead)22
+b(of)g Ft(~/.bashrc)p Fu(\))e(in)h(an)h(in)m(teractiv)m(e)i(shell.)150
+3763 y Ft(--login)144 b Fu(Equiv)-5 b(alen)m(t)31 b(to)g
+Ft(-l)p Fu(.)150 3910 y Ft(--noediting)630 4020 y Fu(Do)h(not)e(use)h
+(the)g Fm(gnu)f Fu(Readline)i(library)e(\(see)h(Chapter)g(8)g([Command)
+f(Line)g(Editing],)630 4130 y(page)h(101\))h(to)f(read)g(command)f
+(lines)g(when)g(the)g(shell)h(is)f(in)m(teractiv)m(e.)150
+4277 y Ft(--noprofile)630 4387 y Fu(Don't)22 b(load)g(the)g
+(system-wide)f(startup)g(\014le)h Ft(/etc/profile)c Fu(or)j(an)m(y)h
+(of)f(the)h(p)s(ersonal)f(ini-)630 4496 y(tialization)34
+b(\014les)e Ft(~/.bash_profile)p Fu(,)c Ft(~/.bash_login)p
+Fu(,)g(or)k Ft(~/.profile)c Fu(when)j(Bash)630 4606 y(is)f(in)m(v)m(ok)
+m(ed)i(as)f(a)g(login)g(shell.)150 4754 y Ft(--norc)192
+b Fu(Don't)35 b(read)f(the)g Ft(~/.bashrc)e Fu(initialization)k(\014le)
+f(in)e(an)h(in)m(teractiv)m(e)j(shell.)52 b(This)33 b(is)h(on)630
+4863 y(b)m(y)c(default)h(if)f(the)h(shell)f(is)h(in)m(v)m(ok)m(ed)h(as)
+e Ft(sh)p Fu(.)150 5011 y Ft(--posix)144 b Fu(Change)24
+b(the)h(b)s(eha)m(vior)f(of)g(Bash)h(where)e(the)i(default)f(op)s
+(eration)h(di\013ers)f(from)f(the)i Fm(posix)630 5121
+y Fu(standard)35 b(to)h(matc)m(h)g(the)g(standard.)55
b(This)35 b(is)h(in)m(tended)f(to)h(mak)m(e)h(Bash)f(b)s(eha)m(v)m(e)g
-(as)g(a)p eop end
+(as)g(a)630 5230 y(strict)26 b(sup)s(erset)e(of)h(that)g(standard.)38
+b(See)26 b(Section)f(6.11)i([Bash)e(POSIX)f(Mo)s(de],)j(page)f(94,)630
+5340 y(for)k(a)h(description)f(of)h(the)f(Bash)h Fm(posix)f
+Fu(mo)s(de.)p eop end
%%Page: 81 87
-TeXDict begin 81 86 bop 150 -116 a Ft(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(81)630 299 y(strict)26
-b(sup)s(erset)e(of)h(that)g(standard.)38 b(See)26 b(Section)f(6.11)i
-([Bash)e(POSIX)f(Mo)s(de],)j(page)f(94,)630 408 y(for)k(a)h
-(description)f(of)h(the)f(Bash)h Fl(posix)f Ft(mo)s(de.)150
-572 y Fs(--restricted)630 682 y Ft(Mak)m(e)54 b(the)e(shell)g(a)h
-(restricted)g(shell)f(\(see)h(Section)g(6.10)h([The)d(Restricted)j
-(Shell],)630 792 y(page)31 b(93\).)150 956 y Fs(--verbose)630
-1065 y Ft(Equiv)-5 b(alen)m(t)31 b(to)g(`)p Fs(-v)p Ft('.)41
-b(Prin)m(t)30 b(shell)h(input)e(lines)i(as)g(they're)f(read.)150
-1229 y Fs(--version)630 1339 y Ft(Sho)m(w)e(v)m(ersion)g(information)g
-(for)g(this)g(instance)h(of)f(Bash)g(on)g(the)g(standard)f(output)h
-(and)630 1448 y(exit)j(successfully)-8 b(.)275 1615 y(There)28
-b(are)i(sev)m(eral)g(single-c)m(haracter)i(options)d(that)h(ma)m(y)g(b)
-s(e)e(supplied)g(at)i(in)m(v)m(o)s(cation)h(whic)m(h)e(are)150
-1724 y(not)i(a)m(v)-5 b(ailable)32 b(with)e(the)h Fs(set)e
-Ft(builtin.)150 1891 y Fs(-c)384 b Ft(Read)44 b(and)e(execute)j
-(commands)e(from)g(the)g(\014rst)g(non-option)h Fq(argumen)m(t)h
-Ft(after)f(pro-)630 2000 y(cessing)37 b(the)g(options,)i(then)d(exit.)
-61 b(An)m(y)37 b(remaining)f(argumen)m(ts)h(are)g(assigned)g(to)h(the)
-630 2110 y(p)s(ositional)31 b(parameters,)g(starting)g(with)f
-Fs($0)p Ft(.)150 2274 y Fs(-i)384 b Ft(F)-8 b(orce)22
+TeXDict begin 81 86 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2484 b(81)150 299 y Ft(--restricted)630
+408 y Fu(Mak)m(e)54 b(the)e(shell)g(a)h(restricted)g(shell)f(\(see)h
+(Section)g(6.10)h([The)d(Restricted)j(Shell],)630 518
+y(page)31 b(93\).)150 682 y Ft(--verbose)630 791 y Fu(Equiv)-5
+b(alen)m(t)31 b(to)g Ft(-v)p Fu(.)41 b(Prin)m(t)30 b(shell)g(input)g
+(lines)g(as)h(they're)g(read.)150 955 y Ft(--version)630
+1065 y Fu(Sho)m(w)d(v)m(ersion)g(information)g(for)g(this)g(instance)h
+(of)f(Bash)g(on)g(the)g(standard)f(output)h(and)630 1174
+y(exit)j(successfully)-8 b(.)275 1341 y(There)28 b(are)i(sev)m(eral)g
+(single-c)m(haracter)i(options)d(that)h(ma)m(y)g(b)s(e)e(supplied)g(at)
+i(in)m(v)m(o)s(cation)h(whic)m(h)e(are)150 1450 y(not)i(a)m(v)-5
+b(ailable)32 b(with)e(the)h Ft(set)e Fu(builtin.)150
+1616 y Ft(-c)384 b Fu(Read)44 b(and)e(execute)j(commands)e(from)g(the)g
+(\014rst)g(non-option)h Fr(argumen)m(t)h Fu(after)f(pro-)630
+1726 y(cessing)37 b(the)g(options,)i(then)d(exit.)61
+b(An)m(y)37 b(remaining)f(argumen)m(ts)h(are)g(assigned)g(to)h(the)630
+1835 y(p)s(ositional)31 b(parameters,)g(starting)g(with)f
+Ft($0)p Fu(.)150 1999 y Ft(-i)384 b Fu(F)-8 b(orce)22
b(the)g(shell)f(to)g(run)f(in)m(teractiv)m(ely)-8 b(.)41
b(In)m(teractiv)m(e)23 b(shells)e(are)h(describ)s(ed)d(in)i(Section)h
-(6.3)630 2383 y([In)m(teractiv)m(e)33 b(Shells],)e(page)g(83.)150
-2547 y Fs(-l)384 b Ft(Mak)m(e)33 b(this)e(shell)h(act)g(as)g(if)f(it)h
+(6.3)630 2109 y([In)m(teractiv)m(e)33 b(Shells],)e(page)g(83.)150
+2273 y Ft(-l)384 b Fu(Mak)m(e)33 b(this)e(shell)h(act)g(as)g(if)f(it)h
(had)f(b)s(een)f(directly)i(in)m(v)m(ok)m(ed)h(b)m(y)f(login.)44
-b(When)31 b(the)h(shell)630 2657 y(is)37 b(in)m(teractiv)m(e,)43
+b(When)31 b(the)h(shell)630 2382 y(is)37 b(in)m(teractiv)m(e,)43
b(this)37 b(is)g(equiv)-5 b(alen)m(t)39 b(to)f(starting)h(a)e(login)i
-(shell)e(with)g(`)p Fs(exec)30 b(-l)g(bash)p Ft('.)630
-2767 y(When)h(the)g(shell)h(is)f(not)g(in)m(teractiv)m(e,)k(the)c
+(shell)e(with)g(`)p Ft(exec)30 b(-l)g(bash)p Fu('.)630
+2492 y(When)h(the)g(shell)h(is)f(not)g(in)m(teractiv)m(e,)k(the)c
(login)h(shell)g(startup)f(\014les)g(will)g(b)s(e)g(executed.)630
-2876 y(`)p Fs(exec)e(bash)h(-l)p Ft(')43 b(or)h(`)p Fs(exec)29
-b(bash)g(--login)p Ft(')42 b(will)i(replace)h(the)f(curren)m(t)f(shell)
-h(with)g(a)630 2986 y(Bash)26 b(login)g(shell.)39 b(See)26
+2601 y(`)p Ft(exec)e(bash)h(-l)p Fu(')43 b(or)h(`)p Ft(exec)29
+b(bash)g(--login)p Fu(')42 b(will)i(replace)h(the)f(curren)m(t)f(shell)
+h(with)g(a)630 2711 y(Bash)26 b(login)g(shell.)39 b(See)26
b(Section)g(6.2)h([Bash)e(Startup)g(Files],)j(page)e(82,)i(for)d(a)h
-(description)630 3095 y(of)31 b(the)f(sp)s(ecial)h(b)s(eha)m(vior)g(of)
-f(a)h(login)g(shell.)150 3259 y Fs(-r)384 b Ft(Mak)m(e)54
+(description)630 2821 y(of)31 b(the)f(sp)s(ecial)h(b)s(eha)m(vior)g(of)
+f(a)h(login)g(shell.)150 2984 y Ft(-r)384 b Fu(Mak)m(e)54
b(the)e(shell)g(a)h(restricted)g(shell)f(\(see)h(Section)g(6.10)h([The)
-d(Restricted)j(Shell],)630 3369 y(page)31 b(93\).)150
-3533 y Fs(-s)384 b Ft(If)24 b(this)h(option)h(is)f(presen)m(t,)h(or)f
+d(Restricted)j(Shell],)630 3094 y(page)31 b(93\).)150
+3258 y Ft(-s)384 b Fu(If)24 b(this)h(option)h(is)f(presen)m(t,)h(or)f
(if)g(no)f(argumen)m(ts)i(remain)e(after)i(option)f(pro)s(cessing,)h
-(then)630 3642 y(commands)i(are)h(read)g(from)f(the)h(standard)f
+(then)630 3367 y(commands)i(are)h(read)g(from)f(the)h(standard)f
(input.)39 b(This)28 b(option)h(allo)m(ws)h(the)f(p)s(ositional)630
-3752 y(parameters)i(to)g(b)s(e)f(set)g(when)g(in)m(v)m(oking)h(an)g(in)
-m(teractiv)m(e)i(shell.)150 3916 y Fs(-D)384 b Ft(A)37
+3477 y(parameters)i(to)g(b)s(e)f(set)g(when)g(in)m(v)m(oking)h(an)g(in)
+m(teractiv)m(e)i(shell.)150 3641 y Ft(-D)384 b Fu(A)37
b(list)g(of)f(all)i(double-quoted)e(strings)g(preceded)g(b)m(y)h(`)p
-Fs($)p Ft(')f(is)h(prin)m(ted)f(on)g(the)h(standard)630
-4026 y(output.)63 b(These)38 b(are)g(the)g(strings)g(that)h(are)f(sub)5
-b(ject)38 b(to)h(language)g(translation)g(when)630 4135
-y(the)e(curren)m(t)g(lo)s(cale)h(is)f(not)g Fs(C)g Ft(or)f
-Fs(POSIX)g Ft(\(see)h(Section)h(3.1.2.5)h([Lo)s(cale)g(T)-8
-b(ranslation],)630 4245 y(page)31 b(7\).)42 b(This)29
-b(implies)i(the)f(`)p Fs(-n)p Ft(')h(option;)g(no)f(commands)g(will)h
-(b)s(e)e(executed.)150 4409 y Fs([-+]O)g([)p Fi(shopt_option)11
-b Fs(])630 4518 y Fq(shopt)p 854 4518 28 4 v 40 w(option)44
-b Ft(is)g(one)h(of)f(the)g(shell)h(options)f(accepted)h(b)m(y)f(the)h
-Fs(shopt)d Ft(builtin)i(\(see)630 4628 y(Section)28 b(4.3.2)g([The)f
-(Shopt)f(Builtin],)i(page)f(63\).)41 b(If)26 b Fq(shopt)p
-2690 4628 V 40 w(option)h Ft(is)g(presen)m(t,)h(`)p Fs(-O)p
-Ft(')f(sets)630 4738 y(the)40 b(v)-5 b(alue)40 b(of)f(that)h(option;)45
-b(`)p Fs(+O)p Ft(')40 b(unsets)e(it.)69 b(If)39 b Fq(shopt)p
-2631 4738 V 40 w(option)h Ft(is)f(not)h(supplied,)h(the)630
-4847 y(names)e(and)g(v)-5 b(alues)40 b(of)g(the)g(shell)f(options)h
-(accepted)h(b)m(y)e Fs(shopt)f Ft(are)i(prin)m(ted)f(on)h(the)630
-4957 y(standard)33 b(output.)50 b(If)33 b(the)h(in)m(v)m(o)s(cation)i
-(option)e(is)g(`)p Fs(+O)p Ft(',)g(the)g(output)f(is)h(displa)m(y)m(ed)
-g(in)g(a)630 5066 y(format)d(that)g(ma)m(y)g(b)s(e)e(reused)h(as)h
-(input.)150 5230 y Fs(--)384 b Ft(A)38 b Fs(--)g Ft(signals)g(the)h
-(end)e(of)i(options)f(and)g(disables)g(further)f(option)h(pro)s
-(cessing.)64 b(An)m(y)630 5340 y(argumen)m(ts)31 b(after)g(the)f
-Fs(--)g Ft(are)h(treated)g(as)g(\014lenames)f(and)g(argumen)m(ts.)p
-eop end
+Ft($)p Fu(')f(is)h(prin)m(ted)f(on)g(the)h(standard)630
+3750 y(output.)63 b(These)38 b(are)g(the)g(strings)g(that)h(are)f(sub)5
+b(ject)38 b(to)h(language)g(translation)g(when)630 3860
+y(the)e(curren)m(t)g(lo)s(cale)h(is)f(not)g Ft(C)g Fu(or)f
+Ft(POSIX)g Fu(\(see)h(Section)h(3.1.2.5)h([Lo)s(cale)g(T)-8
+b(ranslation],)630 3970 y(page)31 b(7\).)42 b(This)29
+b(implies)i(the)f Ft(-n)g Fu(option;)h(no)f(commands)g(will)h(b)s(e)f
+(executed.)150 4133 y Ft([-+]O)f([)p Fj(shopt_option)p
+Ft(])630 4243 y Fr(shopt)p 854 4243 28 4 v 40 w(option)44
+b Fu(is)g(one)h(of)f(the)g(shell)h(options)f(accepted)h(b)m(y)f(the)h
+Ft(shopt)d Fu(builtin)i(\(see)630 4353 y(Section)32 b(4.3.2)h([The)e
+(Shopt)f(Builtin],)i(page)g(62\).)44 b(If)31 b Fr(shopt)p
+2724 4353 V 40 w(option)g Fu(is)g(presen)m(t,)h Ft(-O)f
+Fu(sets)630 4462 y(the)24 b(v)-5 b(alue)24 b(of)g(that)h(option;)h
+Ft(+O)e Fu(unsets)f(it.)39 b(If)23 b Fr(shopt)p 2423
+4462 V 40 w(option)h Fu(is)g(not)g(supplied,)g(the)g(names)630
+4572 y(and)31 b(v)-5 b(alues)32 b(of)g(the)g(shell)g(options)g
+(accepted)h(b)m(y)f Ft(shopt)e Fu(are)i(prin)m(ted)f(on)h(the)g
+(standard)630 4681 y(output.)40 b(If)29 b(the)h(in)m(v)m(o)s(cation)h
+(option)f(is)f Ft(+O)p Fu(,)h(the)f(output)g(is)h(displa)m(y)m(ed)g(in)
+f(a)h(format)f(that)630 4791 y(ma)m(y)i(b)s(e)f(reused)f(as)i(input.)
+150 4955 y Ft(--)384 b Fu(A)38 b Ft(--)g Fu(signals)g(the)h(end)e(of)i
+(options)f(and)g(disables)g(further)f(option)h(pro)s(cessing.)64
+b(An)m(y)630 5064 y(argumen)m(ts)31 b(after)g(the)f Ft(--)g
+Fu(are)h(treated)g(as)g(\014lenames)f(and)g(argumen)m(ts.)275
+5230 y(A)d Fl(lo)-5 b(gin)35 b Fu(shell)27 b(is)g(one)h(whose)f
+(\014rst)f(c)m(haracter)j(of)e(argumen)m(t)h(zero)f(is)h(`)p
+Ft(-)p Fu(',)g(or)f(one)g(in)m(v)m(ok)m(ed)i(with)e(the)150
+5340 y Ft(--login)h Fu(option.)p eop end
%%Page: 82 88
-TeXDict begin 82 87 bop 150 -116 a Ft(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(82)275 299 y(A)27 b
-Fk(lo)-5 b(gin)35 b Ft(shell)27 b(is)g(one)h(whose)f(\014rst)f(c)m
-(haracter)j(of)e(argumen)m(t)h(zero)f(is)h(`)p Fs(-)p
-Ft(',)g(or)f(one)g(in)m(v)m(ok)m(ed)i(with)e(the)150
-408 y(`)p Fs(--login)p Ft(')i(option.)275 546 y(An)24
-b Fk(inter)-5 b(active)33 b Ft(shell)25 b(is)g(one)g(started)g(without)
-g(non-option)h(argumen)m(ts,)g(unless)f(`)p Fs(-s)p Ft(')f(is)h(sp)s
-(eci\014ed,)150 656 y(without)43 b(sp)s(ecifying)f(the)i(`)p
-Fs(-c)p Ft(')e(option,)47 b(and)42 b(whose)h(input)f(and)g(output)g
-(are)h(b)s(oth)g(connected)g(to)150 766 y(terminals)22
-b(\(as)h(determined)f(b)m(y)g Fs(isatty\(3\))p Ft(\),)f(or)i(one)f
-(started)g(with)g(the)g(`)p Fs(-i)p Ft(')g(option.)39
-b(See)22 b(Section)h(6.3)150 875 y([In)m(teractiv)m(e)33
-b(Shells],)e(page)g(83,)g(for)f(more)h(information.)275
-1013 y(If)38 b(argumen)m(ts)h(remain)g(after)g(option)h(pro)s(cessing,)
-h(and)d(neither)h(the)g(`)p Fs(-c)p Ft(')f(nor)h(the)g(`)p
-Fs(-s)p Ft(')f(option)150 1123 y(has)33 b(b)s(een)g(supplied,)h(the)g
-(\014rst)e(argumen)m(t)j(is)e(assumed)g(to)h(b)s(e)f(the)h(name)g(of)g
-(a)g(\014le)g(con)m(taining)h(shell)150 1232 y(commands)30
+TeXDict begin 82 87 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2484 b(82)275 299 y(An)28
+b Fl(inter)-5 b(active)37 b Fu(shell)30 b(is)f(one)g(started)h(without)
+f(non-option)h(argumen)m(ts,)g(unless)e Ft(-s)h Fu(is)g(sp)s
+(eci\014ed,)150 408 y(without)k(sp)s(ecifying)h(the)f
+Ft(-c)g Fu(option,)i(and)e(whose)g(input)g(and)f(output)h(are)h(b)s
+(oth)f(connected)h(to)g(ter-)150 518 y(minals)g(\(as)g(determined)f(b)m
+(y)h Ft(isatty\(3\))p Fu(\),)e(or)i(one)g(started)g(with)f(the)h
+Ft(-i)f Fu(option.)51 b(See)33 b(Section)i(6.3)150 628
+y([In)m(teractiv)m(e)e(Shells],)e(page)g(83,)g(for)f(more)h
+(information.)275 763 y(If)i(argumen)m(ts)h(remain)g(after)h(option)f
+(pro)s(cessing,)h(and)e(neither)h(the)g Ft(-c)g Fu(nor)f(the)h
+Ft(-s)g Fu(option)g(has)150 873 y(b)s(een)44 b(supplied,)j(the)d
+(\014rst)g(argumen)m(t)h(is)g(assumed)e(to)j(b)s(e)d(the)i(name)g(of)f
+(a)h(\014le)g(con)m(taining)h(shell)150 982 y(commands)30
b(\(see)g(Section)h(3.8)g([Shell)f(Scripts],)g(page)h(39\).)41
b(When)30 b(Bash)g(is)g(in)m(v)m(ok)m(ed)i(in)d(this)h(fashion,)150
-1342 y Fs($0)37 b Ft(is)g(set)h(to)h(the)e(name)h(of)f(the)h(\014le,)i
+1092 y Ft($0)37 b Fu(is)g(set)h(to)h(the)e(name)h(of)f(the)h(\014le,)i
(and)c(the)i(p)s(ositional)g(parameters)g(are)g(set)g(to)g(the)g
-(remaining)150 1451 y(argumen)m(ts.)h(Bash)26 b(reads)f(and)g(executes)
+(remaining)150 1202 y(argumen)m(ts.)h(Bash)26 b(reads)f(and)g(executes)
h(commands)f(from)g(this)g(\014le,)i(then)e(exits.)40
-b(Bash's)25 b(exit)i(status)150 1561 y(is)f(the)h(exit)h(status)e(of)h
+b(Bash's)25 b(exit)i(status)150 1311 y(is)f(the)h(exit)h(status)e(of)h
(the)g(last)g(command)f(executed)h(in)g(the)f(script.)40
-b(If)26 b(no)g(commands)g(are)h(executed,)150 1671 y(the)k(exit)g
-(status)g(is)f(0.)150 1908 y Fr(6.2)68 b(Bash)45 b(Startup)g(Files)150
-2068 y Ft(This)23 b(section)j(describ)s(es)d(ho)m(w)i(Bash)f(executes)h
+b(If)26 b(no)g(commands)g(are)h(executed,)150 1421 y(the)k(exit)g
+(status)g(is)f(0.)150 1655 y Fs(6.2)68 b(Bash)45 b(Startup)g(Files)150
+1814 y Fu(This)23 b(section)j(describ)s(es)d(ho)m(w)i(Bash)f(executes)h
(its)g(startup)f(\014les.)38 b(If)24 b(an)m(y)h(of)f(the)h(\014les)f
-(exist)h(but)e(cannot)150 2177 y(b)s(e)29 b(read,)i(Bash)f(rep)s(orts)f
+(exist)h(but)e(cannot)150 1924 y(b)s(e)29 b(read,)i(Bash)f(rep)s(orts)f
(an)h(error.)40 b(Tildes)30 b(are)g(expanded)f(in)h(\014lenames)g(as)g
-(describ)s(ed)f(ab)s(o)m(v)m(e)i(under)150 2287 y(Tilde)f(Expansion)g
+(describ)s(ed)f(ab)s(o)m(v)m(e)i(under)150 2034 y(Tilde)f(Expansion)g
(\(see)h(Section)h(3.5.2)g([Tilde)e(Expansion],)h(page)g(22\).)275
-2425 y(In)m(teractiv)m(e)h(shells)f(are)g(describ)s(ed)e(in)h(Section)h
+2169 y(In)m(teractiv)m(e)h(shells)f(are)g(describ)s(ed)e(in)h(Section)h
(6.3)h([In)m(teractiv)m(e)h(Shells],)d(page)h(83.)150
-2627 y Fj(In)m(v)m(ok)m(ed)40 b(as)h(an)f(in)m(teractiv)m(e)f(login)j
-(shell,)g(or)g(with)e(`)p Fh(--login)p Fj(')150 2774
-y Ft(When)c(Bash)f(is)h(in)m(v)m(ok)m(ed)h(as)f(an)g(in)m(teractiv)m(e)
-j(login)d(shell,)i(or)e(as)g(a)g(non-in)m(teractiv)m(e)i(shell)e(with)g
-(the)150 2884 y(`)p Fs(--login)p Ft(')j(option,)k(it)e(\014rst)e(reads)
-h(and)g(executes)h(commands)f(from)f(the)i(\014le)f(`)p
-Fs(/etc/profile)p Ft(',)g(if)150 2993 y(that)35 b(\014le)g(exists.)55
-b(After)35 b(reading)g(that)g(\014le,)h(it)g(lo)s(oks)f(for)f(`)p
-Fs(~/.bash_profile)p Ft(',)f(`)p Fs(~/.bash_login)p Ft(',)150
-3103 y(and)28 b(`)p Fs(~/.profile)p Ft(',)f(in)i(that)g(order,)g(and)f
-(reads)g(and)h(executes)h(commands)e(from)g(the)h(\014rst)f(one)h(that)
-150 3213 y(exists)i(and)e(is)h(readable.)41 b(The)30
-b(`)p Fs(--noprofile)p Ft(')d(option)k(ma)m(y)f(b)s(e)g(used)f(when)g
-(the)h(shell)h(is)f(started)g(to)150 3322 y(inhibit)g(this)g(b)s(eha)m
-(vior.)275 3460 y(When)72 b(a)i(login)g(shell)f(exits,)85
-b(Bash)73 b(reads)g(and)g(executes)h(commands)f(from)g(the)g(\014le)150
-3570 y(`)p Fs(~/.bash_logout)p Ft(',)27 b(if)k(it)f(exists.)150
-3772 y Fj(In)m(v)m(ok)m(ed)40 b(as)h(an)f(in)m(teractiv)m(e)f
-(non-login)k(shell)150 3919 y Ft(When)g(an)h(in)m(teractiv)m(e)i(shell)
-e(that)g(is)f(not)h(a)g(login)g(shell)g(is)f(started,)48
-b(Bash)c(reads)f(and)g(executes)150 4029 y(commands)24
-b(from)f(`)p Fs(~/.bashrc)p Ft(',)h(if)g(that)g(\014le)g(exists.)40
-b(This)23 b(ma)m(y)i(b)s(e)e(inhibited)g(b)m(y)h(using)g(the)g(`)p
-Fs(--norc)p Ft(')150 4138 y(option.)52 b(The)33 b(`)p
-Fs(--rcfile)28 b Fi(file)11 b Ft(')33 b(option)h(will)g(force)h(Bash)f
-(to)h(read)e(and)h(execute)h(commands)e(from)150 4248
-y Fq(\014le)j Ft(instead)30 b(of)h(`)p Fs(~/.bashrc)p
-Ft('.)275 4386 y(So,)f(t)m(ypically)-8 b(,)33 b(y)m(our)d(`)p
-Fs(~/.bash_profile)p Ft(')d(con)m(tains)32 b(the)e(line)390
-4524 y Fs(if)47 b([)h(-f)f(~/.bashrc)e(];)i(then)g(.)g(~/.bashrc;)e(fi)
-150 4662 y Ft(after)31 b(\(or)g(b)s(efore\))f(an)m(y)h(login-sp)s
-(eci\014c)g(initializations.)150 4864 y Fj(In)m(v)m(ok)m(ed)40
-b(non-in)m(teractiv)m(ely)150 5011 y Ft(When)33 b(Bash)g(is)g(started)h
-(non-in)m(teractiv)m(ely)-8 b(,)37 b(to)d(run)e(a)h(shell)h(script,)g
-(for)f(example,)i(it)e(lo)s(oks)h(for)f(the)150 5121
-y(v)-5 b(ariable)35 b Fs(BASH_ENV)d Ft(in)i(the)h(en)m(vironmen)m(t,)h
-(expands)e(its)g(v)-5 b(alue)35 b(if)g(it)g(app)s(ears)e(there,)j(and)e
-(uses)g(the)150 5230 y(expanded)c(v)-5 b(alue)30 b(as)h(the)g(name)f
-(of)h(a)f(\014le)h(to)g(read)f(and)g(execute.)42 b(Bash)31
-b(b)s(eha)m(v)m(es)g(as)g(if)f(the)g(follo)m(wing)150
-5340 y(command)g(w)m(ere)h(executed:)p eop end
-%%Page: 83 89
-TeXDict begin 83 88 bop 150 -116 a Ft(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(83)390 299 y Fs(if)47
+2370 y Fk(In)m(v)m(ok)m(ed)40 b(as)h(an)f(in)m(teractiv)m(e)f(login)j
+(shell,)g(or)g(with)e Fh(--login)150 2516 y Fu(When)c(Bash)f(is)h(in)m
+(v)m(ok)m(ed)h(as)f(an)g(in)m(teractiv)m(e)j(login)d(shell,)i(or)e(as)g
+(a)g(non-in)m(teractiv)m(e)i(shell)e(with)g(the)150 2626
+y Ft(--login)30 b Fu(option,)k(it)f(\014rst)e(reads)h(and)g(executes)i
+(commands)e(from)f(the)i(\014le)f Ft(/etc/profile)p Fu(,)e(if)i(that)
+150 2736 y(\014le)44 b(exists.)80 b(After)44 b(reading)g(that)g
+(\014le,)j(it)d(lo)s(oks)g(for)f Ft(~/.bash_profile)p
+Fu(,)g Ft(~/.bash_login)p Fu(,)h(and)150 2845 y Ft(~/.profile)p
+Fu(,)25 b(in)i(that)g(order,)h(and)e(reads)h(and)f(executes)j(commands)
+d(from)h(the)g(\014rst)f(one)i(that)f(exists)150 2955
+y(and)j(is)h(readable.)42 b(The)30 b Ft(--noprofile)d
+Fu(option)k(ma)m(y)g(b)s(e)f(used)g(when)g(the)h(shell)f(is)h(started)g
+(to)g(inhibit)150 3064 y(this)f(b)s(eha)m(vior.)275 3200
+y(When)38 b(a)h(login)h(shell)f(exits,)j(Bash)d(reads)f(and)h(executes)
+h(commands)e(from)g(the)h(\014le)g Ft(~/.bash_)150 3310
+y(logout)p Fu(,)29 b(if)h(it)h(exists.)150 3510 y Fk(In)m(v)m(ok)m(ed)
+40 b(as)h(an)f(in)m(teractiv)m(e)f(non-login)k(shell)150
+3657 y Fu(When)g(an)h(in)m(teractiv)m(e)i(shell)e(that)g(is)f(not)h(a)g
+(login)g(shell)g(is)f(started,)48 b(Bash)c(reads)f(and)g(executes)150
+3767 y(commands)31 b(from)g Ft(~/.bashrc)p Fu(,)f(if)h(that)h(\014le)g
+(exists.)44 b(This)31 b(ma)m(y)h(b)s(e)f(inhibited)g(b)m(y)g(using)g
+(the)h Ft(--norc)150 3876 y Fu(option.)40 b(The)27 b
+Ft(--rcfile)h Fj(file)e Fu(option)h(will)g(force)h(Bash)f(to)h(read)f
+(and)f(execute)j(commands)d(from)h Fr(\014le)150 3986
+y Fu(instead)k(of)f Ft(~/.bashrc)p Fu(.)275 4121 y(So,)g(t)m(ypically)
+-8 b(,)33 b(y)m(our)d Ft(~/.bash_profile)c Fu(con)m(tains)32
+b(the)f(line)390 4257 y Ft(if)47 b([)h(-f)f(~/.bashrc)e(];)i(then)g(.)g
+(~/.bashrc;)e(fi)150 4393 y Fu(after)31 b(\(or)g(b)s(efore\))f(an)m(y)h
+(login-sp)s(eci\014c)g(initializations.)150 4593 y Fk(In)m(v)m(ok)m(ed)
+40 b(non-in)m(teractiv)m(ely)150 4740 y Fu(When)33 b(Bash)g(is)g
+(started)h(non-in)m(teractiv)m(ely)-8 b(,)37 b(to)d(run)e(a)h(shell)h
+(script,)g(for)f(example,)i(it)e(lo)s(oks)h(for)f(the)150
+4850 y(v)-5 b(ariable)35 b Ft(BASH_ENV)d Fu(in)i(the)h(en)m(vironmen)m
+(t,)h(expands)e(its)g(v)-5 b(alue)35 b(if)g(it)g(app)s(ears)e(there,)j
+(and)e(uses)g(the)150 4959 y(expanded)c(v)-5 b(alue)30
+b(as)h(the)g(name)f(of)h(a)f(\014le)h(to)g(read)f(and)g(execute.)42
+b(Bash)31 b(b)s(eha)m(v)m(es)g(as)g(if)f(the)g(follo)m(wing)150
+5069 y(command)g(w)m(ere)h(executed:)390 5204 y Ft(if)47
b([)h(-n)f("$BASH_ENV")e(];)i(then)f(.)i("$BASH_ENV";)c(fi)150
-461 y Ft(but)30 b(the)g(v)-5 b(alue)31 b(of)g(the)f Fs(PATH)f
-Ft(v)-5 b(ariable)32 b(is)e(not)h(used)e(to)i(searc)m(h)g(for)f(the)h
-(\014lename.)275 622 y(As)38 b(noted)h(ab)s(o)m(v)m(e,)j(if)c(a)h
-(non-in)m(teractiv)m(e)i(shell)e(is)g(in)m(v)m(ok)m(ed)h(with)e(the)g
-(`)p Fs(--login)p Ft(')g(option,)j(Bash)150 732 y(attempts)31
-b(to)g(read)g(and)e(execute)j(commands)e(from)g(the)h(login)g(shell)g
-(startup)e(\014les.)150 958 y Fj(In)m(v)m(ok)m(ed)40
-b(with)g(name)h Fh(sh)150 1105 y Ft(If)c(Bash)g(is)g(in)m(v)m(ok)m(ed)i
-(with)e(the)g(name)g Fs(sh)p Ft(,)i(it)f(tries)f(to)h(mimic)g(the)f
-(startup)g(b)s(eha)m(vior)g(of)h(historical)150 1215
-y(v)m(ersions)31 b(of)f Fs(sh)g Ft(as)h(closely)h(as)e(p)s(ossible,)g
-(while)h(conforming)f(to)h(the)g Fl(posix)e Ft(standard)h(as)h(w)m
-(ell.)275 1376 y(When)50 b(in)m(v)m(ok)m(ed)j(as)f(an)f(in)m(teractiv)m
-(e)j(login)e(shell,)57 b(or)51 b(as)g(a)h(non-in)m(teractiv)m(e)h
-(shell)f(with)f(the)150 1486 y(`)p Fs(--login)p Ft(')39
-b(option,)k(it)e(\014rst)e(attempts)i(to)g(read)f(and)g(execute)h
-(commands)f(from)g(`)p Fs(/etc/profile)p Ft(')150 1596
-y(and)d(`)p Fs(~/.profile)p Ft(',)g(in)g(that)h(order.)62
-b(The)37 b(`)p Fs(--noprofile)p Ft(')e(option)j(ma)m(y)g(b)s(e)f(used)g
-(to)h(inhibit)f(this)150 1705 y(b)s(eha)m(vior.)82 b(When)44
-b(in)m(v)m(ok)m(ed)h(as)g(an)f(in)m(teractiv)m(e)j(shell)d(with)g(the)g
-(name)g Fs(sh)p Ft(,)j(Bash)d(lo)s(oks)h(for)f(the)150
-1815 y(v)-5 b(ariable)37 b Fs(ENV)p Ft(,)g(expands)e(its)i(v)-5
-b(alue)36 b(if)g(it)h(is)f(de\014ned,)h(and)e(uses)h(the)g(expanded)g
-(v)-5 b(alue)36 b(as)h(the)f(name)150 1924 y(of)i(a)h(\014le)g(to)g
-(read)f(and)g(execute.)66 b(Since)38 b(a)h(shell)f(in)m(v)m(ok)m(ed)i
-(as)f Fs(sh)e Ft(do)s(es)h(not)h(attempt)g(to)g(read)g(and)150
-2034 y(execute)i(commands)e(from)g(an)m(y)h(other)g(startup)f(\014les,)
-j(the)e(`)p Fs(--rcfile)p Ft(')d(option)j(has)g(no)f(e\013ect.)70
-b(A)150 2143 y(non-in)m(teractiv)m(e)32 b(shell)d(in)m(v)m(ok)m(ed)h
-(with)f(the)g(name)g Fs(sh)f Ft(do)s(es)g(not)i(attempt)g(to)f(read)g
-(an)m(y)g(other)g(startup)150 2253 y(\014les.)275 2415
-y(When)h(in)m(v)m(ok)m(ed)h(as)g Fs(sh)p Ft(,)f(Bash)h(en)m(ters)g
-Fl(posix)e Ft(mo)s(de)h(after)h(the)g(startup)f(\014les)g(are)h(read.)
-150 2641 y Fj(In)m(v)m(ok)m(ed)40 b(in)h Fg(posix)g Fj(mo)s(de)150
-2788 y Ft(When)25 b(Bash)g(is)h(started)f(in)g Fl(posix)g
-Ft(mo)s(de,)h(as)f(with)g(the)h(`)p Fs(--posix)p Ft(')d(command)i(line)
-h(option,)h(it)f(follo)m(ws)150 2898 y(the)e Fl(posix)f
-Ft(standard)h(for)f(startup)h(\014les.)38 b(In)24 b(this)g(mo)s(de,)h
-(in)m(teractiv)m(e)i(shells)d(expand)f(the)h Fs(ENV)f
-Ft(v)-5 b(ariable)150 3007 y(and)30 b(commands)g(are)g(read)h(and)e
+5340 y Fu(but)30 b(the)g(v)-5 b(alue)31 b(of)g(the)f
+Ft(PATH)f Fu(v)-5 b(ariable)32 b(is)e(not)h(used)e(to)i(searc)m(h)g
+(for)f(the)h(\014lename.)p eop end
+%%Page: 83 89
+TeXDict begin 83 88 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2484 b(83)275 299 y(As)42
+b(noted)g(ab)s(o)m(v)m(e,)47 b(if)42 b(a)h(non-in)m(teractiv)m(e)i
+(shell)d(is)g(in)m(v)m(ok)m(ed)i(with)e(the)h Ft(--login)d
+Fu(option,)46 b(Bash)150 408 y(attempts)31 b(to)g(read)g(and)e(execute)
+j(commands)e(from)g(the)h(login)g(shell)g(startup)e(\014les.)150
+614 y Fk(In)m(v)m(ok)m(ed)40 b(with)g(name)h Fh(sh)150
+761 y Fu(If)c(Bash)g(is)g(in)m(v)m(ok)m(ed)i(with)e(the)g(name)g
+Ft(sh)p Fu(,)i(it)f(tries)f(to)h(mimic)g(the)f(startup)g(b)s(eha)m
+(vior)g(of)h(historical)150 870 y(v)m(ersions)31 b(of)f
+Ft(sh)g Fu(as)h(closely)h(as)e(p)s(ossible,)g(while)h(conforming)f(to)h
+(the)g Fm(posix)e Fu(standard)h(as)h(w)m(ell.)275 1010
+y(When)50 b(in)m(v)m(ok)m(ed)j(as)f(an)f(in)m(teractiv)m(e)j(login)e
+(shell,)57 b(or)51 b(as)g(a)h(non-in)m(teractiv)m(e)h(shell)f(with)f
+(the)150 1120 y Ft(--login)31 b Fu(option,)k(it)e(\014rst)g(attempts)h
+(to)g(read)f(and)g(execute)h(commands)f(from)g Ft(/etc/profile)d
+Fu(and)150 1230 y Ft(~/.profile)p Fu(,)d(in)i(that)i(order.)39
+b(The)30 b Ft(--noprofile)c Fu(option)k(ma)m(y)g(b)s(e)f(used)g(to)h
+(inhibit)f(this)h(b)s(eha)m(vior.)150 1339 y(When)36
+b(in)m(v)m(ok)m(ed)i(as)e(an)g(in)m(teractiv)m(e)j(shell)e(with)f(the)g
+(name)h Ft(sh)p Fu(,)g(Bash)f(lo)s(oks)h(for)f(the)h(v)-5
+b(ariable)37 b Ft(ENV)p Fu(,)150 1449 y(expands)29 b(its)i(v)-5
+b(alue)30 b(if)h(it)f(is)g(de\014ned,)g(and)f(uses)h(the)g(expanded)g
+(v)-5 b(alue)30 b(as)h(the)f(name)g(of)g(a)h(\014le)f(to)h(read)150
+1558 y(and)g(execute.)46 b(Since)32 b(a)g(shell)g(in)m(v)m(ok)m(ed)h
+(as)f Ft(sh)f Fu(do)s(es)g(not)h(attempt)h(to)g(read)e(and)g(execute)i
+(commands)150 1668 y(from)39 b(an)m(y)g(other)h(startup)e(\014les,)k
+(the)d Ft(--rcfile)e Fu(option)j(has)f(no)g(e\013ect.)69
+b(A)39 b(non-in)m(teractiv)m(e)j(shell)150 1778 y(in)m(v)m(ok)m(ed)32
+b(with)e(the)g(name)h Ft(sh)f Fu(do)s(es)g(not)g(attempt)i(to)f(read)f
+(an)m(y)h(other)g(startup)e(\014les.)275 1918 y(When)h(in)m(v)m(ok)m
+(ed)h(as)g Ft(sh)p Fu(,)f(Bash)h(en)m(ters)g Fm(posix)e
+Fu(mo)s(de)h(after)h(the)g(startup)f(\014les)g(are)h(read.)150
+2123 y Fk(In)m(v)m(ok)m(ed)40 b(in)h Fg(posix)g Fk(mo)s(de)150
+2270 y Fu(When)28 b(Bash)h(is)g(started)g(in)g Fm(posix)f
+Fu(mo)s(de,)g(as)h(with)g(the)g Ft(--posix)d Fu(command)j(line)g
+(option,)h(it)f(follo)m(ws)150 2380 y(the)24 b Fm(posix)f
+Fu(standard)h(for)f(startup)h(\014les.)38 b(In)24 b(this)g(mo)s(de,)h
+(in)m(teractiv)m(e)i(shells)d(expand)f(the)h Ft(ENV)f
+Fu(v)-5 b(ariable)150 2489 y(and)30 b(commands)g(are)g(read)h(and)e
(executed)j(from)d(the)i(\014le)f(whose)g(name)h(is)f(the)h(expanded)e
-(v)-5 b(alue.)41 b(No)150 3117 y(other)31 b(startup)f(\014les)g(are)h
-(read.)150 3343 y Fj(In)m(v)m(ok)m(ed)40 b(b)m(y)g(remote)h(shell)h
-(daemon)150 3490 y Ft(Bash)36 b(attempts)h(to)g(determine)f(when)f(it)i
+(v)-5 b(alue.)41 b(No)150 2599 y(other)31 b(startup)f(\014les)g(are)h
+(read.)150 2804 y Fk(In)m(v)m(ok)m(ed)40 b(b)m(y)g(remote)h(shell)h
+(daemon)150 2951 y Fu(Bash)36 b(attempts)h(to)g(determine)f(when)f(it)i
(is)f(b)s(eing)g(run)e(with)i(its)g(standard)g(input)f(connected)i(to)g
-(a)150 3600 y(net)m(w)m(ork)h(connection,)j(as)c(when)g(executed)h(b)m
-(y)f(the)h(remote)g(shell)g(daemon,)h(usually)e Fs(rshd)p
-Ft(,)h(or)g(the)150 3709 y(secure)c(shell)f(daemon)h
-Fs(sshd)p Ft(.)49 b(If)33 b(Bash)g(determines)h(it)g(is)f(b)s(eing)g
-(run)f(in)i(this)f(fashion,)h(it)g(reads)g(and)150 3819
-y(executes)42 b(commands)e(from)g(`)p Fs(~/.bashrc)p
-Ft(',)h(if)g(that)g(\014le)f(exists)i(and)e(is)g(readable.)72
-b(It)40 b(will)h(not)g(do)150 3929 y(this)35 b(if)g(in)m(v)m(ok)m(ed)i
-(as)f Fs(sh)p Ft(.)55 b(The)34 b(`)p Fs(--norc)p Ft(')g(option)i(ma)m
-(y)g(b)s(e)f(used)f(to)i(inhibit)f(this)g(b)s(eha)m(vior,)i(and)e(the)
-150 4038 y(`)p Fs(--rcfile)p Ft(')29 b(option)i(ma)m(y)g(b)s(e)f(used)g
-(to)h(force)g(another)g(\014le)g(to)g(b)s(e)f(read,)h(but)f(neither)h
-Fs(rshd)e Ft(nor)h Fs(sshd)150 4148 y Ft(generally)i(in)m(v)m(ok)m(e)g
-(the)e(shell)h(with)f(those)h(options)g(or)f(allo)m(w)i(them)e(to)h(b)s
-(e)f(sp)s(eci\014ed.)150 4374 y Fj(In)m(v)m(ok)m(ed)40
-b(with)g(unequal)h(e\013ectiv)m(e)e(and)i(real)g Fg(uid/gid)p
-Fj(s)150 4521 y Ft(If)24 b(Bash)h(is)f(started)h(with)f(the)h
-(e\013ectiv)m(e)i(user)d(\(group\))h(id)f(not)g(equal)h(to)h(the)e
-(real)h(user)f(\(group\))h(id,)h(and)150 4631 y(the)35
-b(`)p Fs(-p)p Ft(')g(option)h(is)f(not)g(supplied,)h(no)f(startup)f
-(\014les)h(are)h(read,)g(shell)g(functions)e(are)i(not)f(inherited)150
-4740 y(from)41 b(the)g(en)m(vironmen)m(t,)j(the)d Fs(SHELLOPTS)p
-Ft(,)h Fs(BASHOPTS)p Ft(,)g Fs(CDPATH)p Ft(,)g(and)e
-Fs(GLOBIGNORE)e Ft(v)-5 b(ariables,)45 b(if)150 4850
-y(they)28 b(app)s(ear)f(in)h(the)g(en)m(vironmen)m(t,)i(are)e(ignored,)
-h(and)e(the)h(e\013ectiv)m(e)j(user)c(id)h(is)g(set)g(to)h(the)f(real)h
-(user)150 4959 y(id.)54 b(If)35 b(the)g(`)p Fs(-p)p Ft(')g(option)g(is)
-g(supplied)f(at)h(in)m(v)m(o)s(cation,)k(the)c(startup)g(b)s(eha)m
-(vior)g(is)g(the)g(same,)h(but)f(the)150 5069 y(e\013ectiv)m(e)e(user)d
-(id)g(is)g(not)h(reset.)150 5342 y Fr(6.3)68 b(In)l(teractiv)l(e)47
-b(Shells)p eop end
+(a)150 3060 y(net)m(w)m(ork)h(connection,)j(as)c(when)g(executed)h(b)m
+(y)f(the)h(remote)g(shell)g(daemon,)h(usually)e Ft(rshd)p
+Fu(,)h(or)g(the)150 3170 y(secure)c(shell)f(daemon)h
+Ft(sshd)p Fu(.)49 b(If)33 b(Bash)g(determines)h(it)g(is)f(b)s(eing)g
+(run)f(in)i(this)f(fashion,)h(it)g(reads)g(and)150 3280
+y(executes)29 b(commands)e(from)g Ft(~/.bashrc)p Fu(,)e(if)j(that)g
+(\014le)f(exists)h(and)f(is)g(readable.)41 b(It)27 b(will)h(not)f(do)h
+(this)f(if)150 3389 y(in)m(v)m(ok)m(ed)k(as)f Ft(sh)p
+Fu(.)40 b(The)29 b Ft(--norc)f Fu(option)i(ma)m(y)g(b)s(e)f(used)f(to)j
+(inhibit)e(this)g(b)s(eha)m(vior,)h(and)f(the)h Ft(--rcfile)150
+3499 y Fu(option)36 b(ma)m(y)g(b)s(e)e(used)h(to)h(force)g(another)f
+(\014le)h(to)g(b)s(e)e(read,)j(but)d(neither)i Ft(rshd)e
+Fu(nor)h Ft(sshd)f Fu(generally)150 3608 y(in)m(v)m(ok)m(e)e(the)f
+(shell)f(with)h(those)f(options)h(or)f(allo)m(w)i(them)f(to)g(b)s(e)e
+(sp)s(eci\014ed.)150 3814 y Fk(In)m(v)m(ok)m(ed)40 b(with)g(unequal)h
+(e\013ectiv)m(e)e(and)i(real)g Fg(uid/gid)p Fk(s)150
+3960 y Fu(If)34 b(Bash)h(is)g(started)g(with)f(the)h(e\013ectiv)m(e)i
+(user)d(\(group\))h(id)f(not)h(equal)g(to)g(the)g(real)g(user)f
+(\(group\))h(id,)150 4070 y(and)26 b(the)i Ft(-p)e Fu(option)h(is)g
+(not)h(supplied,)e(no)h(startup)g(\014les)g(are)g(read,)h(shell)f
+(functions)g(are)g(not)g(inherited)150 4180 y(from)41
+b(the)g(en)m(vironmen)m(t,)j(the)d Ft(SHELLOPTS)p Fu(,)h
+Ft(BASHOPTS)p Fu(,)g Ft(CDPATH)p Fu(,)g(and)e Ft(GLOBIGNORE)e
+Fu(v)-5 b(ariables,)45 b(if)150 4289 y(they)28 b(app)s(ear)f(in)h(the)g
+(en)m(vironmen)m(t,)i(are)e(ignored,)h(and)e(the)h(e\013ectiv)m(e)j
+(user)c(id)h(is)g(set)g(to)h(the)f(real)h(user)150 4399
+y(id.)62 b(If)38 b(the)f Ft(-p)h Fu(option)g(is)f(supplied)g(at)h(in)m
+(v)m(o)s(cation,)k(the)c(startup)f(b)s(eha)m(vior)h(is)g(the)g(same,)i
+(but)d(the)150 4508 y(e\013ectiv)m(e)c(user)d(id)g(is)g(not)h(reset.)
+150 4750 y Fs(6.3)68 b(In)l(teractiv)l(e)47 b(Shells)150
+4974 y Fk(6.3.1)63 b(What)40 b(is)h(an)g(In)m(teractiv)m(e)e(Shell?)150
+5121 y Fu(An)g(in)m(teractiv)m(e)k(shell)d(is)g(one)g(started)g
+(without)g(non-option)g(argumen)m(ts,)j(unless)c Ft(-s)h
+Fu(is)f(sp)s(eci\014ed,)150 5230 y(without)30 b(sp)s(ecifying)g(the)g
+Ft(-c)f Fu(option,)h(and)g(whose)f(input)g(and)g(error)h(output)f(are)h
+(b)s(oth)f(connected)i(to)150 5340 y(terminals)g(\(as)g(determined)f(b)
+m(y)g Ft(isatty\(3\))p Fu(\),)e(or)j(one)f(started)h(with)f(the)h
+Ft(-i)f Fu(option.)p eop end
%%Page: 84 90
-TeXDict begin 84 89 bop 150 -116 a Ft(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(84)150 299 y Fj(6.3.1)63
-b(What)40 b(is)h(an)g(In)m(teractiv)m(e)e(Shell?)150
-446 y Ft(An)c(in)m(teractiv)m(e)k(shell)d(is)g(one)g(started)g(without)
-f(non-option)h(argumen)m(ts,)i(unless)d(`)p Fs(-s)p Ft(')h(is)f(sp)s
-(eci\014ed,)150 555 y(without)f(sp)s(ecifying)h(the)f(`)p
-Fs(-c)p Ft(')g(option,)j(and)c(whose)h(input)g(and)g(error)g(output)g
-(are)g(b)s(oth)g(connected)150 665 y(to)d(terminals)g(\(as)g
-(determined)f(b)m(y)g Fs(isatty\(3\))p Ft(\),)f(or)h(one)h(started)f
-(with)g(the)h(`)p Fs(-i)p Ft(')f(option.)275 797 y(An)g(in)m(teractiv)m
-(e)j(shell)d(generally)i(reads)e(from)g(and)g(writes)g(to)h(a)g(user's)
-f(terminal.)275 929 y(The)e(`)p Fs(-s)p Ft(')i(in)m(v)m(o)s(cation)h
-(option)f(ma)m(y)g(b)s(e)f(used)f(to)i(set)g(the)g(p)s(ositional)g
-(parameters)f(when)g(an)g(in)m(ter-)150 1038 y(activ)m(e)k(shell)d(is)h
-(started.)150 1232 y Fj(6.3.2)63 b(Is)41 b(this)g(Shell)g(In)m
-(teractiv)m(e?)150 1379 y Ft(T)-8 b(o)30 b(determine)g(within)f(a)h
-(startup)g(script)f(whether)g(or)h(not)g(Bash)g(is)g(running)e(in)m
-(teractiv)m(ely)-8 b(,)33 b(test)e(the)150 1489 y(v)-5
-b(alue)30 b(of)g(the)f(`)p Fs(-)p Ft(')h(sp)s(ecial)g(parameter.)41
-b(It)29 b(con)m(tains)i Fs(i)e Ft(when)g(the)g(shell)h(is)f(in)m
-(teractiv)m(e.)44 b(F)-8 b(or)30 b(example:)390 1621
-y Fs(case)47 b("$-")f(in)390 1730 y(*i*\))h(echo)f(This)h(shell)f(is)h
-(interactive)e(;;)390 1840 y(*\))i(echo)g(This)f(shell)h(is)g(not)g
-(interactive)e(;;)390 1949 y(esac)275 2081 y Ft(Alternativ)m(ely)-8
-b(,)28 b(startup)23 b(scripts)h(ma)m(y)g(examine)g(the)g(v)-5
-b(ariable)25 b Fs(PS1)p Ft(;)g(it)g(is)e(unset)h(in)f(non-in)m
-(teractiv)m(e)150 2191 y(shells,)31 b(and)e(set)i(in)f(in)m(teractiv)m
-(e)k(shells.)40 b(Th)m(us:)390 2323 y Fs(if)47 b([)h(-z)f("$PS1")f(];)h
-(then)772 2432 y(echo)f(This)h(shell)f(is)i(not)f(interactive)390
-2542 y(else)772 2651 y(echo)f(This)h(shell)f(is)i(interactive)390
-2761 y(fi)150 2955 y Fj(6.3.3)63 b(In)m(teractiv)m(e)38
-b(Shell)k(Beha)m(vior)150 3102 y Ft(When)30 b(the)h(shell)f(is)h
+TeXDict begin 84 89 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2484 b(84)275 299 y(An)30
+b(in)m(teractiv)m(e)j(shell)d(generally)i(reads)e(from)g(and)g(writes)g
+(to)h(a)g(user's)f(terminal.)275 430 y(The)i Ft(-s)g
+Fu(in)m(v)m(o)s(cation)j(option)f(ma)m(y)f(b)s(e)g(used)f(to)i(set)f
+(the)g(p)s(ositional)h(parameters)f(when)f(an)h(in)m(ter-)150
+540 y(activ)m(e)g(shell)d(is)h(started.)150 733 y Fk(6.3.2)63
+b(Is)41 b(this)g(Shell)g(In)m(teractiv)m(e?)150 880 y
+Fu(T)-8 b(o)30 b(determine)g(within)f(a)h(startup)g(script)f(whether)g
+(or)h(not)g(Bash)g(is)g(running)e(in)m(teractiv)m(ely)-8
+b(,)33 b(test)e(the)150 990 y(v)-5 b(alue)30 b(of)g(the)f(`)p
+Ft(-)p Fu(')h(sp)s(ecial)g(parameter.)41 b(It)29 b(con)m(tains)i
+Ft(i)e Fu(when)g(the)g(shell)h(is)f(in)m(teractiv)m(e.)44
+b(F)-8 b(or)30 b(example:)390 1121 y Ft(case)47 b("$-")f(in)390
+1231 y(*i*\))h(echo)f(This)h(shell)f(is)h(interactive)e(;;)390
+1340 y(*\))i(echo)g(This)f(shell)h(is)g(not)g(interactive)e(;;)390
+1450 y(esac)275 1581 y Fu(Alternativ)m(ely)-8 b(,)28
+b(startup)23 b(scripts)h(ma)m(y)g(examine)g(the)g(v)-5
+b(ariable)25 b Ft(PS1)p Fu(;)g(it)g(is)e(unset)h(in)f(non-in)m
+(teractiv)m(e)150 1691 y(shells,)31 b(and)e(set)i(in)f(in)m(teractiv)m
+(e)k(shells.)40 b(Th)m(us:)390 1822 y Ft(if)47 b([)h(-z)f("$PS1")f(];)h
+(then)772 1932 y(echo)f(This)h(shell)f(is)i(not)f(interactive)390
+2042 y(else)772 2151 y(echo)f(This)h(shell)f(is)i(interactive)390
+2261 y(fi)150 2454 y Fk(6.3.3)63 b(In)m(teractiv)m(e)38
+b(Shell)k(Beha)m(vior)150 2601 y Fu(When)30 b(the)h(shell)f(is)h
(running)d(in)m(teractiv)m(ely)-8 b(,)34 b(it)d(c)m(hanges)h(its)f(b)s
-(eha)m(vior)f(in)g(sev)m(eral)i(w)m(a)m(ys.)199 3234
+(eha)m(vior)f(in)g(sev)m(eral)i(w)m(a)m(ys.)199 2732
y(1.)61 b(Startup)37 b(\014les)g(are)h(read)f(and)g(executed)h(as)f
(describ)s(ed)g(in)g(Section)h(6.2)g([Bash)g(Startup)e(Files],)330
-3343 y(page)31 b(82.)199 3475 y(2.)61 b(Job)35 b(Con)m(trol)g(\(see)h
-(Chapter)f(7)g([Job)g(Con)m(trol],)i(page)f(98\))g(is)f(enabled)g(b)m
-(y)g(default.)55 b(When)34 b(job)330 3585 y(con)m(trol)h(is)f(in)f
+2842 y(page)31 b(82.)199 2973 y(2.)61 b(Job)35 b(Con)m(trol)g(\(see)h
+(Chapter)f(7)g([Job)g(Con)m(trol],)i(page)f(97\))g(is)f(enabled)g(b)m
+(y)g(default.)55 b(When)34 b(job)330 3083 y(con)m(trol)h(is)f(in)f
(e\013ect,)k(Bash)d(ignores)g(the)g(k)m(eyb)s(oard-generated)h(job)e
-(con)m(trol)i(signals)g Fs(SIGTTIN)p Ft(,)330 3694 y
-Fs(SIGTTOU)p Ft(,)29 b(and)g Fs(SIGTSTP)p Ft(.)199 3826
-y(3.)61 b(Bash)39 b(expands)f(and)g(displa)m(ys)h Fs(PS1)f
-Ft(b)s(efore)h(reading)g(the)g(\014rst)f(line)h(of)g(a)g(command,)i
-(and)d(ex-)330 3936 y(pands)30 b(and)g(displa)m(ys)h
-Fs(PS2)e Ft(b)s(efore)i(reading)g(the)g(second)f(and)h(subsequen)m(t)f
-(lines)h(of)g(a)g(m)m(ulti-line)330 4045 y(command.)199
-4177 y(4.)61 b(Bash)26 b(executes)i(the)e(v)-5 b(alue)27
-b(of)f(the)h Fs(PROMPT_COMMAND)22 b Ft(v)-5 b(ariable)27
-b(as)g(a)f(command)g(b)s(efore)g(prin)m(ting)330 4287
-y(the)31 b(primary)e(prompt,)h Fs($PS1)f Ft(\(see)i(Section)g(5.2)h
-([Bash)f(V)-8 b(ariables],)32 b(page)f(69\).)199 4419
+(con)m(trol)i(signals)g Ft(SIGTTIN)p Fu(,)330 3192 y
+Ft(SIGTTOU)p Fu(,)29 b(and)g Ft(SIGTSTP)p Fu(.)199 3324
+y(3.)61 b(Bash)39 b(expands)f(and)g(displa)m(ys)h Ft(PS1)f
+Fu(b)s(efore)h(reading)g(the)g(\014rst)f(line)h(of)g(a)g(command,)i
+(and)d(ex-)330 3434 y(pands)30 b(and)g(displa)m(ys)h
+Ft(PS2)e Fu(b)s(efore)i(reading)g(the)g(second)f(and)h(subsequen)m(t)f
+(lines)h(of)g(a)g(m)m(ulti-line)330 3543 y(command.)199
+3675 y(4.)61 b(Bash)26 b(executes)i(the)e(v)-5 b(alue)27
+b(of)f(the)h Ft(PROMPT_COMMAND)22 b Fu(v)-5 b(ariable)27
+b(as)g(a)f(command)g(b)s(efore)g(prin)m(ting)330 3784
+y(the)31 b(primary)e(prompt,)h Ft($PS1)f Fu(\(see)i(Section)g(5.2)h
+([Bash)f(V)-8 b(ariables],)32 b(page)f(69\).)199 3916
y(5.)61 b(Readline)27 b(\(see)g(Chapter)e(8)h([Command)g(Line)g
-(Editing],)h(page)g(102\))g(is)f(used)g(to)g(read)g(commands)330
-4528 y(from)k(the)g(user's)g(terminal.)199 4660 y(6.)61
+(Editing],)h(page)g(101\))g(is)f(used)g(to)g(read)g(commands)330
+4025 y(from)k(the)g(user's)g(terminal.)199 4157 y(6.)61
b(Bash)36 b(insp)s(ects)g(the)h(v)-5 b(alue)37 b(of)f(the)g
-Fs(ignoreeof)e Ft(option)j(to)g Fs(set)29 b(-o)36 b Ft(instead)h(of)f
-(exiting)i(imme-)330 4770 y(diately)f(when)e(it)i(receiv)m(es)h(an)e
-Fs(EOF)f Ft(on)h(its)g(standard)f(input)g(when)h(reading)g(a)g(command)
-g(\(see)330 4879 y(Section)31 b(4.3.1)h([The)e(Set)h(Builtin],)g(page)g
-(59\).)199 5011 y(7.)61 b(Command)43 b(history)h(\(see)h(Section)g(9.1)
-g([Bash)f(History)h(F)-8 b(acilities],)51 b(page)45 b(134\))h(and)d
-(history)330 5121 y(expansion)h(\(see)i(Section)f(9.3)h([History)g(In)m
-(teraction],)k(page)45 b(136\))h(are)f(enabled)g(b)m(y)f(default.)330
-5230 y(Bash)28 b(will)g(sa)m(v)m(e)h(the)f(command)f(history)h(to)g
-(the)g(\014le)g(named)f(b)m(y)h Fs($HISTFILE)d Ft(when)h(a)i(shell)g
-(with)330 5340 y(history)i(enabled)h(exits.)p eop end
+Ft(ignoreeof)e Fu(option)j(to)g Ft(set)29 b(-o)36 b Fu(instead)h(of)f
+(exiting)i(imme-)330 4266 y(diately)f(when)e(it)i(receiv)m(es)h(an)e
+Ft(EOF)f Fu(on)h(its)g(standard)f(input)g(when)h(reading)g(a)g(command)
+g(\(see)330 4376 y(Section)31 b(4.3.1)h([The)e(Set)h(Builtin],)g(page)g
+(58\).)199 4507 y(7.)61 b(Command)43 b(history)h(\(see)h(Section)g(9.1)
+g([Bash)f(History)h(F)-8 b(acilities],)51 b(page)45 b(133\))h(and)d
+(history)330 4617 y(expansion)h(\(see)i(Section)f(9.3)h([History)g(In)m
+(teraction],)k(page)45 b(135\))h(are)f(enabled)g(b)m(y)f(default.)330
+4726 y(Bash)28 b(will)g(sa)m(v)m(e)h(the)f(command)f(history)h(to)g
+(the)g(\014le)g(named)f(b)m(y)h Ft($HISTFILE)d Fu(when)h(a)i(shell)g
+(with)330 4836 y(history)i(enabled)h(exits.)199 4967
+y(8.)61 b(Alias)31 b(expansion)g(\(see)g(Section)g(6.6)g([Aliases],)i
+(page)e(88\))h(is)e(p)s(erformed)f(b)m(y)h(default.)199
+5099 y(9.)61 b(In)24 b(the)g(absence)h(of)f(an)m(y)h(traps,)g(Bash)g
+(ignores)f Ft(SIGTERM)f Fu(\(see)i(Section)g(3.7.6)h([Signals],)g(page)
+f(38\).)154 5230 y(10.)61 b(In)26 b(the)h(absence)h(of)f(an)m(y)g
+(traps,)g Ft(SIGINT)e Fu(is)i(caugh)m(t)h(and)f(handled)e(\(\(see)k
+(Section)e(3.7.6)i([Signals],)330 5340 y(page)i(38\).)42
+b Ft(SIGINT)29 b Fu(will)h(in)m(terrupt)g(some)h(shell)g(builtins.)p
+eop end
%%Page: 85 91
-TeXDict begin 85 90 bop 150 -116 a Ft(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(85)199 299 y(8.)61
-b(Alias)31 b(expansion)g(\(see)g(Section)g(6.6)g([Aliases],)i(page)e
-(88\))h(is)e(p)s(erformed)f(b)m(y)h(default.)199 431
-y(9.)61 b(In)24 b(the)g(absence)h(of)f(an)m(y)h(traps,)g(Bash)g
-(ignores)f Fs(SIGTERM)f Ft(\(see)i(Section)g(3.7.6)h([Signals],)g(page)
-f(38\).)154 563 y(10.)61 b(In)26 b(the)h(absence)h(of)f(an)m(y)g
-(traps,)g Fs(SIGINT)e Ft(is)i(caugh)m(t)h(and)f(handled)e(\(\(see)k
-(Section)e(3.7.6)i([Signals],)330 672 y(page)i(38\).)42
-b Fs(SIGINT)29 b Ft(will)h(in)m(terrupt)g(some)h(shell)g(builtins.)154
-804 y(11.)61 b(An)40 b(in)m(teractiv)m(e)j(login)e(shell)g(sends)e(a)i
-Fs(SIGHUP)d Ft(to)j(all)g(jobs)f(on)g(exit)h(if)g(the)f
-Fs(huponexit)e Ft(shell)330 914 y(option)31 b(has)f(b)s(een)g(enabled)g
+TeXDict begin 85 90 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2484 b(85)154 299 y(11.)61
+b(An)40 b(in)m(teractiv)m(e)j(login)e(shell)g(sends)e(a)i
+Ft(SIGHUP)d Fu(to)j(all)g(jobs)f(on)g(exit)h(if)g(the)f
+Ft(huponexit)e Fu(shell)330 408 y(option)31 b(has)f(b)s(een)g(enabled)g
(\(see)h(Section)g(3.7.6)i([Signals],)e(page)g(38\).)154
-1046 y(12.)61 b(The)26 b(`)p Fs(-n)p Ft(')f(in)m(v)m(o)s(cation)k
-(option)d(is)g(ignored,)h(and)f(`)p Fs(set)k(-n)p Ft(')25
-b(has)h(no)g(e\013ect)i(\(see)e(Section)h(4.3.1)h([The)330
-1155 y(Set)j(Builtin],)g(page)g(59\).)154 1287 y(13.)61
-b(Bash)32 b(will)g(c)m(hec)m(k)i(for)e(mail)g(p)s(erio)s(dically)-8
-b(,)34 b(dep)s(ending)c(on)i(the)g(v)-5 b(alues)32 b(of)g(the)h
-Fs(MAIL)p Ft(,)e Fs(MAILPATH)p Ft(,)330 1397 y(and)f
-Fs(MAILCHECK)e Ft(shell)i(v)-5 b(ariables)31 b(\(see)h(Section)f(5.2)g
-([Bash)g(V)-8 b(ariables],)32 b(page)f(69\).)154 1528
-y(14.)61 b(Expansion)32 b(errors)h(due)f(to)i(references)f(to)h(un)m(b)
-s(ound)c(shell)j(v)-5 b(ariables)34 b(after)g(`)p Fs(set)29
-b(-u)p Ft(')k(has)g(b)s(een)330 1638 y(enabled)d(will)h(not)g(cause)g
-(the)f(shell)h(to)g(exit)g(\(see)g(Section)h(4.3.1)g([The)e(Set)h
-(Builtin],)g(page)g(59\).)154 1770 y(15.)61 b(The)48
-b(shell)h(will)f(not)h(exit)g(on)g(expansion)f(errors)g(caused)g(b)m(y)
-h Fq(v)-5 b(ar)54 b Ft(b)s(eing)48 b(unset)g(or)h(n)m(ull)f(in)330
-1879 y Fs(${)p Fi(var)11 b Fs(:?)p Fi(word)g Fs(})26
-b Ft(expansions)k(\(see)h(Section)h(3.5.3)g([Shell)e(P)m(arameter)i
-(Expansion],)e(page)h(23\).)154 2011 y(16.)61 b(Redirection)31
-b(errors)f(encoun)m(tered)h(b)m(y)f(shell)h(builtins)f(will)g(not)h
-(cause)g(the)f(shell)h(to)g(exit.)154 2143 y(17.)61 b(When)26
-b(running)f(in)i Fl(posix)e Ft(mo)s(de,)j(a)f(sp)s(ecial)g(builtin)f
-(returning)g(an)g(error)h(status)g(will)g(not)f(cause)330
-2253 y(the)31 b(shell)f(to)h(exit)h(\(see)f(Section)g(6.11)h([Bash)f
-(POSIX)e(Mo)s(de],)i(page)g(94\).)154 2385 y(18.)61 b(A)34
-b(failed)g Fs(exec)f Ft(will)h(not)g(cause)g(the)g(shell)g(to)g(exit)h
-(\(see)f(Section)h(4.1)g([Bourne)f(Shell)f(Builtins],)330
-2494 y(page)e(41\).)154 2626 y(19.)61 b(P)m(arser)31
+542 y(12.)61 b(The)29 b Ft(-n)g Fu(in)m(v)m(o)s(cation)j(option)e(is)g
+(ignored,)g(and)f(`)p Ft(set)h(-n)p Fu(')f(has)h(no)f(e\013ect)j(\(see)
+e(Section)h(4.3.1)g([The)330 652 y(Set)g(Builtin],)g(page)g(58\).)154
+785 y(13.)61 b(Bash)32 b(will)g(c)m(hec)m(k)i(for)e(mail)g(p)s(erio)s
+(dically)-8 b(,)34 b(dep)s(ending)c(on)i(the)g(v)-5 b(alues)32
+b(of)g(the)h Ft(MAIL)p Fu(,)e Ft(MAILPATH)p Fu(,)330
+895 y(and)f Ft(MAILCHECK)e Fu(shell)i(v)-5 b(ariables)31
+b(\(see)h(Section)f(5.2)g([Bash)g(V)-8 b(ariables],)32
+b(page)f(69\).)154 1028 y(14.)61 b(Expansion)32 b(errors)h(due)f(to)i
+(references)f(to)h(un)m(b)s(ound)c(shell)j(v)-5 b(ariables)34
+b(after)g(`)p Ft(set)29 b(-u)p Fu(')k(has)g(b)s(een)330
+1138 y(enabled)d(will)h(not)g(cause)g(the)f(shell)h(to)g(exit)g(\(see)g
+(Section)h(4.3.1)g([The)e(Set)h(Builtin],)g(page)g(58\).)154
+1271 y(15.)61 b(The)48 b(shell)h(will)f(not)h(exit)g(on)g(expansion)f
+(errors)g(caused)g(b)m(y)h Fr(v)-5 b(ar)54 b Fu(b)s(eing)48
+b(unset)g(or)h(n)m(ull)f(in)330 1381 y Ft(${)p Fj(var)p
+Ft(:?)p Fj(word)p Ft(})27 b Fu(expansions)j(\(see)h(Section)h(3.5.3)g
+([Shell)e(P)m(arameter)i(Expansion],)e(page)h(23\).)154
+1514 y(16.)61 b(Redirection)31 b(errors)f(encoun)m(tered)h(b)m(y)f
+(shell)h(builtins)f(will)g(not)h(cause)g(the)f(shell)h(to)g(exit.)154
+1648 y(17.)61 b(When)26 b(running)f(in)i Fm(posix)e Fu(mo)s(de,)j(a)f
+(sp)s(ecial)g(builtin)f(returning)g(an)g(error)h(status)g(will)g(not)f
+(cause)330 1757 y(the)31 b(shell)f(to)h(exit)h(\(see)f(Section)g(6.11)h
+([Bash)f(POSIX)e(Mo)s(de],)i(page)g(94\).)154 1891 y(18.)61
+b(A)34 b(failed)g Ft(exec)f Fu(will)h(not)g(cause)g(the)g(shell)g(to)g
+(exit)h(\(see)f(Section)h(4.1)g([Bourne)f(Shell)f(Builtins],)330
+2000 y(page)e(41\).)154 2134 y(19.)61 b(P)m(arser)31
b(syn)m(tax)f(errors)g(will)h(not)g(cause)g(the)f(shell)h(to)g(exit.)
-154 2758 y(20.)61 b(Simple)21 b(sp)s(elling)h(correction)g(for)g
-(directory)g(argumen)m(ts)f(to)i(the)e Fs(cd)g Ft(builtin)g(is)h
-(enabled)f(b)m(y)h(default)330 2868 y(\(see)35 b(the)g(description)f
-(of)h(the)f Fs(cdspell)f Ft(option)h(to)i(the)e Fs(shopt)f
-Ft(builtin)h(in)g(Section)h(4.3.2)h([The)330 2977 y(Shopt)30
-b(Builtin],)h(page)g(63\).)154 3109 y(21.)61 b(The)42
+154 2267 y(20.)61 b(Simple)21 b(sp)s(elling)h(correction)g(for)g
+(directory)g(argumen)m(ts)f(to)i(the)e Ft(cd)g Fu(builtin)g(is)h
+(enabled)f(b)m(y)h(default)330 2377 y(\(see)35 b(the)g(description)f
+(of)h(the)f Ft(cdspell)f Fu(option)h(to)i(the)e Ft(shopt)f
+Fu(builtin)h(in)g(Section)h(4.3.2)h([The)330 2486 y(Shopt)30
+b(Builtin],)h(page)g(62\).)154 2620 y(21.)61 b(The)42
b(shell)h(will)g(c)m(hec)m(k)h(the)f(v)-5 b(alue)43 b(of)f(the)h
-Fs(TMOUT)e Ft(v)-5 b(ariable)44 b(and)e(exit)h(if)g(a)g(command)f(is)h
-(not)330 3219 y(read)30 b(within)g(the)g(sp)s(eci\014ed)f(n)m(um)m(b)s
-(er)g(of)i(seconds)f(after)g(prin)m(ting)g Fs($PS1)f
-Ft(\(see)i(Section)g(5.2)h([Bash)330 3328 y(V)-8 b(ariables],)32
-b(page)f(69\).)150 3555 y Fr(6.4)68 b(Bash)45 b(Conditional)h
-(Expressions)150 3715 y Ft(Conditional)26 b(expressions)g(are)g(used)f
-(b)m(y)g(the)h Fs([[)f Ft(comp)s(ound)g(command)g(and)g(the)h
-Fs(test)f Ft(and)g Fs([)g Ft(builtin)150 3824 y(commands.)275
-3956 y(Expressions)32 b(ma)m(y)h(b)s(e)g(unary)f(or)h(binary)-8
+Ft(TMOUT)e Fu(v)-5 b(ariable)44 b(and)e(exit)h(if)g(a)g(command)f(is)h
+(not)330 2729 y(read)30 b(within)g(the)g(sp)s(eci\014ed)f(n)m(um)m(b)s
+(er)g(of)i(seconds)f(after)g(prin)m(ting)g Ft($PS1)f
+Fu(\(see)i(Section)g(5.2)h([Bash)330 2839 y(V)-8 b(ariables],)32
+b(page)f(69\).)150 3069 y Fs(6.4)68 b(Bash)45 b(Conditional)h
+(Expressions)150 3229 y Fu(Conditional)26 b(expressions)g(are)g(used)f
+(b)m(y)g(the)h Ft([[)f Fu(comp)s(ound)g(command)g(and)g(the)h
+Ft(test)f Fu(and)g Ft([)g Fu(builtin)150 3338 y(commands.)275
+3472 y(Expressions)32 b(ma)m(y)h(b)s(e)g(unary)f(or)h(binary)-8
b(.)48 b(Unary)33 b(expressions)f(are)i(often)f(used)f(to)i(examine)g
-(the)150 4066 y(status)26 b(of)g(a)h(\014le.)39 b(There)26
-b(are)g(string)g(op)s(erators)g(and)g(n)m(umeric)f(comparison)i(op)s
-(erators)f(as)g(w)m(ell.)40 b(If)26 b(the)150 4175 y
-Fq(\014le)38 b Ft(argumen)m(t)c(to)f(one)h(of)f(the)g(primaries)g(is)g
-(of)g(the)g(form)g(`)p Fs(/dev/fd/)p Fi(N)11 b Ft(',)31
-b(then)i(\014le)g(descriptor)g Fq(N)43 b Ft(is)150 4285
-y(c)m(hec)m(k)m(ed.)e(If)26 b(the)g Fq(\014le)31 b Ft(argumen)m(t)26
-b(to)h(one)f(of)g(the)h(primaries)e(is)h(one)g(of)g(`)p
-Fs(/dev/stdin)p Ft(',)f(`)p Fs(/dev/stdout)p Ft(',)150
-4395 y(or)30 b(`)p Fs(/dev/stderr)p Ft(',)e(\014le)j(descriptor)f(0,)h
-(1,)g(or)g(2,)g(resp)s(ectiv)m(ely)-8 b(,)32 b(is)e(c)m(hec)m(k)m(ed.)
-275 4526 y(When)37 b(used)g(with)g Fs([[)p Ft(,)i(the)f(`)p
-Fs(<)p Ft(')g(and)f(`)p Fs(>)p Ft(')h(op)s(erators)g(sort)g
-(lexicographically)i(using)d(the)h(curren)m(t)150 4636
-y(lo)s(cale.)k(The)30 b Fs(test)f Ft(command)i(uses)f(ASCI)s(I)e
-(ordering.)275 4768 y(Unless)44 b(otherwise)h(sp)s(eci\014ed,)j
+(the)150 3581 y(status)i(of)g(a)g(\014le.)57 b(There)35
+b(are)h(string)g(op)s(erators)g(and)f(n)m(umeric)h(comparison)g(op)s
+(erators)g(as)g(w)m(ell.)57 b(If)150 3691 y(the)27 b
+Fr(\014le)33 b Fu(argumen)m(t)28 b(to)g(one)f(of)g(the)h(primaries)f
+(is)g(of)g(the)h(form)f Ft(/dev/fd/)p Fj(N)p Fu(,)e(then)i(\014le)h
+(descriptor)f Fr(N)37 b Fu(is)150 3800 y(c)m(hec)m(k)m(ed.)51
+b(If)32 b(the)h Fr(\014le)39 b Fu(argumen)m(t)33 b(to)h(one)f(of)g(the)
+g(primaries)g(is)g(one)g(of)h Ft(/dev/stdin)p Fu(,)d
+Ft(/dev/stdout)p Fu(,)150 3910 y(or)f Ft(/dev/stderr)p
+Fu(,)e(\014le)i(descriptor)h(0,)g(1,)g(or)f(2,)h(resp)s(ectiv)m(ely)-8
+b(,)32 b(is)f(c)m(hec)m(k)m(ed.)275 4043 y(When)37 b(used)g(with)g
+Ft([[)p Fu(,)i(the)f(`)p Ft(<)p Fu(')g(and)f(`)p Ft(>)p
+Fu(')h(op)s(erators)g(sort)g(lexicographically)i(using)d(the)h(curren)m
+(t)150 4153 y(lo)s(cale.)k(The)30 b Ft(test)f Fu(command)i(uses)f(ASCI)
+s(I)e(ordering.)275 4287 y(Unless)44 b(otherwise)h(sp)s(eci\014ed,)j
(primaries)c(that)h(op)s(erate)g(on)g(\014les)f(follo)m(w)i(sym)m(b)s
-(olic)f(links)g(and)150 4878 y(op)s(erate)31 b(on)f(the)h(target)h(of)e
+(olic)f(links)g(and)150 4396 y(op)s(erate)31 b(on)f(the)h(target)h(of)e
(the)h(link,)f(rather)h(than)f(the)g(link)h(itself.)150
-5032 y Fs(-a)f Fi(file)162 b Ft(T)-8 b(rue)30 b(if)g
-Fq(\014le)36 b Ft(exists.)150 5186 y Fs(-b)30 b Fi(file)162
-b Ft(T)-8 b(rue)30 b(if)g Fq(\014le)36 b Ft(exists)31
+4553 y Ft(-a)f Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g
+Fr(\014le)36 b Fu(exists.)150 4711 y Ft(-b)30 b Fj(file)162
+b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36 b Fu(exists)31
b(and)f(is)g(a)h(blo)s(c)m(k)g(sp)s(ecial)g(\014le.)150
-5340 y Fs(-c)f Fi(file)162 b Ft(T)-8 b(rue)30 b(if)g
-Fq(\014le)36 b Ft(exists)31 b(and)f(is)g(a)h(c)m(haracter)h(sp)s(ecial)
-f(\014le.)p eop end
+4868 y Ft(-c)f Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g
+Fr(\014le)36 b Fu(exists)31 b(and)f(is)g(a)h(c)m(haracter)h(sp)s(ecial)
+f(\014le.)150 5025 y Ft(-d)f Fj(file)162 b Fu(T)-8 b(rue)30
+b(if)g Fr(\014le)36 b Fu(exists)31 b(and)f(is)g(a)h(directory)-8
+b(.)150 5183 y Ft(-e)30 b Fj(file)162 b Fu(T)-8 b(rue)30
+b(if)g Fr(\014le)36 b Fu(exists.)150 5340 y Ft(-f)30
+b Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36
+b Fu(exists)31 b(and)f(is)g(a)h(regular)f(\014le.)p eop
+end
%%Page: 86 92
-TeXDict begin 86 91 bop 150 -116 a Ft(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(86)150 299 y Fs(-d)30
-b Fi(file)162 b Ft(T)-8 b(rue)30 b(if)g Fq(\014le)36
-b Ft(exists)31 b(and)f(is)g(a)h(directory)-8 b(.)150
-463 y Fs(-e)30 b Fi(file)162 b Ft(T)-8 b(rue)30 b(if)g
-Fq(\014le)36 b Ft(exists.)150 628 y Fs(-f)30 b Fi(file)162
-b Ft(T)-8 b(rue)30 b(if)g Fq(\014le)36 b Ft(exists)31
-b(and)f(is)g(a)h(regular)f(\014le.)150 792 y Fs(-g)g
-Fi(file)162 b Ft(T)-8 b(rue)30 b(if)g Fq(\014le)36 b
-Ft(exists)31 b(and)f(its)g(set-group-id)h(bit)g(is)f(set.)150
-956 y Fs(-h)g Fi(file)162 b Ft(T)-8 b(rue)30 b(if)g Fq(\014le)36
-b Ft(exists)31 b(and)f(is)g(a)h(sym)m(b)s(olic)g(link.)150
-1121 y Fs(-k)f Fi(file)162 b Ft(T)-8 b(rue)30 b(if)g
-Fq(\014le)36 b Ft(exists)31 b(and)f(its)g Fs(")p Ft(stic)m(ky)p
-Fs(")h Ft(bit)g(is)f(set.)150 1285 y Fs(-p)g Fi(file)162
-b Ft(T)-8 b(rue)30 b(if)g Fq(\014le)36 b Ft(exists)31
-b(and)f(is)g(a)h(named)f(pip)s(e)f(\(FIF)m(O\).)150 1450
-y Fs(-r)h Fi(file)162 b Ft(T)-8 b(rue)30 b(if)g Fq(\014le)36
-b Ft(exists)31 b(and)f(is)g(readable.)150 1614 y Fs(-s)g
-Fi(file)162 b Ft(T)-8 b(rue)30 b(if)g Fq(\014le)36 b
-Ft(exists)31 b(and)f(has)g(a)g(size)i(greater)f(than)f(zero.)150
-1778 y Fs(-t)g Fi(fd)258 b Ft(T)-8 b(rue)30 b(if)g(\014le)h(descriptor)
-f Fq(fd)j Ft(is)e(op)s(en)e(and)h(refers)g(to)h(a)g(terminal.)150
-1943 y Fs(-u)f Fi(file)162 b Ft(T)-8 b(rue)30 b(if)g
-Fq(\014le)36 b Ft(exists)31 b(and)f(its)g(set-user-id)h(bit)f(is)h
-(set.)150 2107 y Fs(-w)f Fi(file)162 b Ft(T)-8 b(rue)30
-b(if)g Fq(\014le)36 b Ft(exists)31 b(and)f(is)g(writable.)150
-2271 y Fs(-x)g Fi(file)162 b Ft(T)-8 b(rue)30 b(if)g
-Fq(\014le)36 b Ft(exists)31 b(and)f(is)g(executable.)150
-2436 y Fs(-G)g Fi(file)162 b Ft(T)-8 b(rue)30 b(if)g
-Fq(\014le)36 b Ft(exists)31 b(and)f(is)g(o)m(wned)g(b)m(y)h(the)f
-(e\013ectiv)m(e)j(group)d(id.)150 2600 y Fs(-L)g Fi(file)162
-b Ft(T)-8 b(rue)30 b(if)g Fq(\014le)36 b Ft(exists)31
-b(and)f(is)g(a)h(sym)m(b)s(olic)g(link.)150 2765 y Fs(-N)f
-Fi(file)162 b Ft(T)-8 b(rue)30 b(if)g Fq(\014le)36 b
-Ft(exists)31 b(and)f(has)g(b)s(een)f(mo)s(di\014ed)h(since)g(it)h(w)m
-(as)g(last)g(read.)150 2929 y Fs(-O)f Fi(file)162 b Ft(T)-8
-b(rue)30 b(if)g Fq(\014le)36 b Ft(exists)31 b(and)f(is)g(o)m(wned)g(b)m
-(y)h(the)f(e\013ectiv)m(e)j(user)d(id.)150 3093 y Fs(-S)g
-Fi(file)162 b Ft(T)-8 b(rue)30 b(if)g Fq(\014le)36 b
-Ft(exists)31 b(and)f(is)g(a)h(so)s(c)m(k)m(et.)150 3258
-y Fi(file1)39 b Fs(-ef)30 b Fi(file2)630 3367 y Ft(T)-8
-b(rue)30 b(if)g Fq(\014le1)38 b Ft(and)30 b Fq(\014le2)38
-b Ft(refer)30 b(to)i(the)e(same)h(device)g(and)f(ino)s(de)g(n)m(um)m(b)
-s(ers.)150 3532 y Fi(file1)39 b Fs(-nt)30 b Fi(file2)630
-3641 y Ft(T)-8 b(rue)23 b(if)g Fq(\014le1)31 b Ft(is)24
-b(new)m(er)f(\(according)i(to)f(mo)s(di\014cation)g(date\))g(than)g
-Fq(\014le2)7 b Ft(,)25 b(or)f(if)f Fq(\014le1)31 b Ft(exists)630
-3751 y(and)f Fq(\014le2)38 b Ft(do)s(es)30 b(not.)150
-3915 y Fi(file1)39 b Fs(-ot)30 b Fi(file2)630 4025 y
-Ft(T)-8 b(rue)30 b(if)g Fq(\014le1)38 b Ft(is)31 b(older)f(than)g
-Fq(\014le2)7 b Ft(,)32 b(or)e(if)h Fq(\014le2)38 b Ft(exists)31
-b(and)e Fq(\014le1)39 b Ft(do)s(es)30 b(not.)150 4189
-y Fs(-o)g Fi(optname)630 4299 y Ft(T)-8 b(rue)41 b(if)g(the)g(shell)h
-(option)f Fq(optname)47 b Ft(is)41 b(enabled.)73 b(The)41
-b(list)h(of)f(options)h(app)s(ears)e(in)630 4408 y(the)30
-b(description)f(of)h(the)g(`)p Fs(-o)p Ft(')f(option)h(to)h(the)e
-Fs(set)g Ft(builtin)g(\(see)i(Section)f(4.3.1)h([The)f(Set)630
-4518 y(Builtin],)h(page)g(59\).)150 4682 y Fs(-v)f Fi(varname)630
-4792 y Ft(T)-8 b(rue)30 b(if)g(the)h(shell)f(v)-5 b(ariable)32
-b Fq(v)-5 b(arname)35 b Ft(is)30 b(set)h(\(has)g(b)s(een)e(assigned)i
-(a)g(v)-5 b(alue\).)150 4956 y Fs(-R)30 b Fi(varname)630
-5066 y Ft(T)-8 b(rue)30 b(if)g(the)h(shell)f(v)-5 b(ariable)32
-b Fq(v)-5 b(arname)35 b Ft(is)30 b(set)h(and)f(is)h(a)f(name)h
-(reference.)150 5230 y Fs(-z)f Fi(string)630 5340 y Ft(T)-8
-b(rue)30 b(if)g(the)h(length)g(of)f Fq(string)38 b Ft(is)31
-b(zero.)p eop end
+TeXDict begin 86 91 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2484 b(86)150 299 y Ft(-g)30
+b Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36
+b Fu(exists)31 b(and)f(its)g(set-group-id)h(bit)g(is)f(set.)150
+446 y Ft(-h)g Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36
+b Fu(exists)31 b(and)f(is)g(a)h(sym)m(b)s(olic)g(link.)150
+593 y Ft(-k)f Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36
+b Fu(exists)31 b(and)f(its)g Ft(")p Fu(stic)m(ky)p Ft(")h
+Fu(bit)g(is)f(set.)150 740 y Ft(-p)g Fj(file)162 b Fu(T)-8
+b(rue)30 b(if)g Fr(\014le)36 b Fu(exists)31 b(and)f(is)g(a)h(named)f
+(pip)s(e)f(\(FIF)m(O\).)150 886 y Ft(-r)h Fj(file)162
+b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36 b Fu(exists)31
+b(and)f(is)g(readable.)150 1033 y Ft(-s)g Fj(file)162
+b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36 b Fu(exists)31
+b(and)f(has)g(a)g(size)i(greater)f(than)f(zero.)150 1180
+y Ft(-t)g Fj(fd)258 b Fu(T)-8 b(rue)30 b(if)g(\014le)h(descriptor)f
+Fr(fd)j Fu(is)e(op)s(en)e(and)h(refers)g(to)h(a)g(terminal.)150
+1327 y Ft(-u)f Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g
+Fr(\014le)36 b Fu(exists)31 b(and)f(its)g(set-user-id)h(bit)f(is)h
+(set.)150 1474 y Ft(-w)f Fj(file)162 b Fu(T)-8 b(rue)30
+b(if)g Fr(\014le)36 b Fu(exists)31 b(and)f(is)g(writable.)150
+1621 y Ft(-x)g Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g
+Fr(\014le)36 b Fu(exists)31 b(and)f(is)g(executable.)150
+1768 y Ft(-G)g Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g
+Fr(\014le)36 b Fu(exists)31 b(and)f(is)g(o)m(wned)g(b)m(y)h(the)f
+(e\013ectiv)m(e)j(group)d(id.)150 1915 y Ft(-L)g Fj(file)162
+b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36 b Fu(exists)31
+b(and)f(is)g(a)h(sym)m(b)s(olic)g(link.)150 2062 y Ft(-N)f
+Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36 b
+Fu(exists)31 b(and)f(has)g(b)s(een)f(mo)s(di\014ed)h(since)g(it)h(w)m
+(as)g(last)g(read.)150 2209 y Ft(-O)f Fj(file)162 b Fu(T)-8
+b(rue)30 b(if)g Fr(\014le)36 b Fu(exists)31 b(and)f(is)g(o)m(wned)g(b)m
+(y)h(the)f(e\013ectiv)m(e)j(user)d(id.)150 2355 y Ft(-S)g
+Fj(file)162 b Fu(T)-8 b(rue)30 b(if)g Fr(\014le)36 b
+Fu(exists)31 b(and)f(is)g(a)h(so)s(c)m(k)m(et.)150 2502
+y Fj(file1)e Ft(-ef)g Fj(file2)630 2612 y Fu(T)-8 b(rue)30
+b(if)g Fr(\014le1)38 b Fu(and)30 b Fr(\014le2)38 b Fu(refer)30
+b(to)i(the)e(same)h(device)g(and)f(ino)s(de)g(n)m(um)m(b)s(ers.)150
+2759 y Fj(file1)f Ft(-nt)g Fj(file2)630 2868 y Fu(T)-8
+b(rue)23 b(if)h Fr(\014le1)32 b Fu(is)24 b(new)m(er)g(\(according)h(to)
+g(mo)s(di\014cation)f(date\))h(than)f Fr(\014le2)p Fu(,)i(or)e(if)g
+Fr(\014le1)31 b Fu(exists)630 2978 y(and)f Fr(\014le2)38
+b Fu(do)s(es)30 b(not.)150 3125 y Fj(file1)f Ft(-ot)g
+Fj(file2)630 3234 y Fu(T)-8 b(rue)30 b(if)g Fr(\014le1)38
+b Fu(is)31 b(older)f(than)g Fr(\014le2)p Fu(,)i(or)e(if)g
+Fr(\014le2)38 b Fu(exists)31 b(and)f Fr(\014le1)38 b
+Fu(do)s(es)30 b(not.)150 3381 y Ft(-o)g Fj(optname)630
+3491 y Fu(T)-8 b(rue)41 b(if)g(the)g(shell)h(option)f
+Fr(optname)47 b Fu(is)41 b(enabled.)73 b(The)41 b(list)h(of)f(options)h
+(app)s(ears)e(in)630 3601 y(the)33 b(description)h(of)f(the)g
+Ft(-o)g Fu(option)g(to)h(the)g Ft(set)e Fu(builtin)h(\(see)h(Section)g
+(4.3.1)h([The)e(Set)630 3710 y(Builtin],)e(page)g(58\).)150
+3857 y Ft(-v)f Fj(varname)630 3967 y Fu(T)-8 b(rue)30
+b(if)g(the)h(shell)f(v)-5 b(ariable)32 b Fr(v)-5 b(arname)35
+b Fu(is)30 b(set)h(\(has)g(b)s(een)e(assigned)i(a)g(v)-5
+b(alue\).)150 4114 y Ft(-R)30 b Fj(varname)630 4223 y
+Fu(T)-8 b(rue)30 b(if)g(the)h(shell)f(v)-5 b(ariable)32
+b Fr(v)-5 b(arname)35 b Fu(is)30 b(set)h(and)f(is)h(a)f(name)h
+(reference.)150 4370 y Ft(-z)f Fj(string)66 b Fu(T)-8
+b(rue)30 b(if)g(the)h(length)g(of)f Fr(string)38 b Fu(is)31
+b(zero.)150 4517 y Ft(-n)f Fj(string)150 4626 y(string)192
+b Fu(T)-8 b(rue)30 b(if)g(the)h(length)g(of)f Fr(string)38
+b Fu(is)31 b(non-zero.)150 4773 y Fj(string1)d Ft(==)i
+Fj(string2)150 4883 y(string1)e Ft(=)i Fj(string2)630
+4993 y Fu(T)-8 b(rue)43 b(if)h(the)g(strings)g(are)g(equal.)82
+b(When)44 b(used)f(with)g(the)h Ft([[)g Fu(command,)j(this)d(p)s(er-)
+630 5102 y(forms)d(pattern)g(matc)m(hing)i(as)f(describ)s(ed)e(ab)s(o)m
+(v)m(e)j(\(see)f(Section)g(3.2.4.2)i([Conditional)630
+5212 y(Constructs],)30 b(page)h(10\).)630 5340 y(`)p
+Ft(=)p Fu(')g(should)e(b)s(e)h(used)f(with)h(the)h Ft(test)e
+Fu(command)h(for)g Fm(posix)g Fu(conformance.)p eop end
%%Page: 87 93
-TeXDict begin 87 92 bop 150 -116 a Ft(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(87)150 299 y Fs(-n)30
-b Fi(string)150 408 y(string)192 b Ft(T)-8 b(rue)30 b(if)g(the)h
-(length)g(of)f Fq(string)38 b Ft(is)31 b(non-zero.)150
-569 y Fi(string1)39 b Fs(==)30 b Fi(string2)150 678 y(string1)39
-b Fs(=)30 b Fi(string2)630 788 y Ft(T)-8 b(rue)43 b(if)h(the)g(strings)
-g(are)g(equal.)82 b(When)44 b(used)f(with)g(the)h Fs([[)g
-Ft(command,)j(this)d(p)s(er-)630 898 y(forms)d(pattern)g(matc)m(hing)i
-(as)f(describ)s(ed)e(ab)s(o)m(v)m(e)j(\(see)f(Section)g(3.2.4.2)i
-([Conditional)630 1007 y(Constructs],)30 b(page)h(10\).)630
-1142 y(`)p Fs(=)p Ft(')g(should)e(b)s(e)h(used)f(with)h(the)h
-Fs(test)e Ft(command)h(for)g Fl(posix)g Ft(conformance.)150
-1302 y Fi(string1)39 b Fs(!=)30 b Fi(string2)630 1412
-y Ft(T)-8 b(rue)30 b(if)g(the)h(strings)f(are)h(not)f(equal.)150
-1572 y Fi(string1)39 b Fs(<)30 b Fi(string2)630 1682
-y Ft(T)-8 b(rue)30 b(if)g Fq(string1)38 b Ft(sorts)31
-b(b)s(efore)f Fq(string2)38 b Ft(lexicographically)-8
-b(.)150 1842 y Fi(string1)39 b Fs(>)30 b Fi(string2)630
-1952 y Ft(T)-8 b(rue)30 b(if)g Fq(string1)38 b Ft(sorts)31
-b(after)g Fq(string2)38 b Ft(lexicographically)-8 b(.)150
-2112 y Fi(arg1)40 b Fs(OP)29 b Fi(arg2)630 2222 y Fs(OP)k
-Ft(is)h(one)g(of)h(`)p Fs(-eq)p Ft(',)f(`)p Fs(-ne)p
-Ft(',)h(`)p Fs(-lt)p Ft(',)g(`)p Fs(-le)p Ft(',)f(`)p
-Fs(-gt)p Ft(',)h(or)f(`)p Fs(-ge)p Ft('.)51 b(These)34
-b(arithmetic)h(binary)630 2331 y(op)s(erators)h(return)e(true)i(if)f
-Fq(arg1)44 b Ft(is)36 b(equal)g(to,)i(not)e(equal)g(to,)i(less)e(than,)
-h(less)f(than)f(or)630 2441 y(equal)28 b(to,)h(greater)g(than,)f(or)f
-(greater)i(than)e(or)h(equal)g(to)g Fq(arg2)7 b Ft(,)30
-b(resp)s(ectiv)m(ely)-8 b(.)41 b Fq(Arg1)36 b Ft(and)630
-2550 y Fq(arg2)j Ft(ma)m(y)30 b(b)s(e)g(p)s(ositiv)m(e)i(or)e(negativ)m
-(e)j(in)m(tegers.)150 2784 y Fr(6.5)68 b(Shell)45 b(Arithmetic)150
-2944 y Ft(The)35 b(shell)g(allo)m(ws)i(arithmetic)f(expressions)f(to)h
+TeXDict begin 87 92 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2484 b(87)150 299 y Fj(string1)28
+b Ft(!=)i Fj(string2)630 408 y Fu(T)-8 b(rue)30 b(if)g(the)h(strings)f
+(are)h(not)f(equal.)150 563 y Fj(string1)e Ft(<)i Fj(string2)630
+673 y Fu(T)-8 b(rue)30 b(if)g Fr(string1)38 b Fu(sorts)31
+b(b)s(efore)f Fr(string2)38 b Fu(lexicographically)-8
+b(.)150 828 y Fj(string1)28 b Ft(>)i Fj(string2)630 937
+y Fu(T)-8 b(rue)30 b(if)g Fr(string1)38 b Fu(sorts)31
+b(after)g Fr(string2)38 b Fu(lexicographically)-8 b(.)150
+1092 y Fj(arg1)29 b Ft(OP)h Fj(arg2)630 1202 y Ft(OP)j
+Fu(is)h(one)g(of)h(`)p Ft(-eq)p Fu(',)f(`)p Ft(-ne)p
+Fu(',)h(`)p Ft(-lt)p Fu(',)g(`)p Ft(-le)p Fu(',)f(`)p
+Ft(-gt)p Fu(',)h(or)f(`)p Ft(-ge)p Fu('.)51 b(These)34
+b(arithmetic)h(binary)630 1311 y(op)s(erators)h(return)e(true)i(if)f
+Fr(arg1)44 b Fu(is)36 b(equal)g(to,)i(not)e(equal)g(to,)i(less)e(than,)
+h(less)f(than)f(or)630 1421 y(equal)29 b(to,)g(greater)h(than,)e(or)g
+(greater)i(than)d(or)i(equal)f(to)h Fr(arg2)p Fu(,)h(resp)s(ectiv)m
+(ely)-8 b(.)42 b Fr(Arg1)36 b Fu(and)630 1531 y Fr(arg2)j
+Fu(ma)m(y)30 b(b)s(e)g(p)s(ositiv)m(e)i(or)e(negativ)m(e)j(in)m
+(tegers.)150 1758 y Fs(6.5)68 b(Shell)45 b(Arithmetic)150
+1918 y Fu(The)35 b(shell)g(allo)m(ws)i(arithmetic)f(expressions)f(to)h
(b)s(e)f(ev)-5 b(aluated,)38 b(as)d(one)h(of)f(the)h(shell)f
-(expansions)g(or)150 3053 y(b)m(y)30 b(the)h Fs(let)e
-Ft(and)h(the)h(`)p Fs(-i)p Ft(')f(option)h(to)g(the)f
-Fs(declare)f Ft(builtins.)275 3189 y(Ev)-5 b(aluation)27
-b(is)g(done)f(in)g(\014xed-width)g(in)m(tegers)i(with)e(no)h(c)m(hec)m
-(k)h(for)e(o)m(v)m(er\015o)m(w,)j(though)d(division)h(b)m(y)150
-3298 y(0)g(is)g(trapp)s(ed)f(and)h(\015agged)g(as)h(an)f(error.)39
-b(The)26 b(op)s(erators)h(and)g(their)g(precedence,)h(asso)s(ciativit)m
-(y)-8 b(,)32 b(and)150 3408 y(v)-5 b(alues)35 b(are)h(the)f(same)g(as)h
-(in)e(the)h(C)g(language.)56 b(The)35 b(follo)m(wing)h(list)g(of)f(op)s
-(erators)g(is)g(group)s(ed)f(in)m(to)150 3517 y(lev)m(els)27
+(expansions)g(or)150 2027 y(b)m(y)30 b(the)h Ft(let)e
+Fu(and)h(the)h Ft(-i)e Fu(option)i(to)g(the)g Ft(declare)d
+Fu(builtins.)275 2160 y(Ev)-5 b(aluation)27 b(is)g(done)f(in)g
+(\014xed-width)g(in)m(tegers)i(with)e(no)h(c)m(hec)m(k)h(for)e(o)m(v)m
+(er\015o)m(w,)j(though)d(division)h(b)m(y)150 2269 y(0)g(is)g(trapp)s
+(ed)f(and)h(\015agged)g(as)h(an)f(error.)39 b(The)26
+b(op)s(erators)h(and)g(their)g(precedence,)h(asso)s(ciativit)m(y)-8
+b(,)32 b(and)150 2379 y(v)-5 b(alues)35 b(are)h(the)f(same)g(as)h(in)e
+(the)h(C)g(language.)56 b(The)35 b(follo)m(wing)h(list)g(of)f(op)s
+(erators)g(is)g(group)s(ed)f(in)m(to)150 2488 y(lev)m(els)27
b(of)f(equal-precedence)i(op)s(erators.)39 b(The)25 b(lev)m(els)j(are)e
(listed)h(in)e(order)h(of)g(decreasing)g(precedence.)150
-3678 y Fi(id)11 b Fs(++)29 b Fi(id)11 b Fs(--)630 3788
-y Ft(v)-5 b(ariable)31 b(p)s(ost-incremen)m(t)g(and)f(p)s(ost-decremen)
-m(t)150 3948 y Fs(++)p Fi(id)40 b Fs(--)p Fi(id)630 4058
-y Ft(v)-5 b(ariable)31 b(pre-incremen)m(t)g(and)f(pre-decremen)m(t)150
-4218 y Fs(-)g(+)354 b Ft(unary)29 b(min)m(us)h(and)g(plus)150
-4378 y Fs(!)g(~)354 b Ft(logical)33 b(and)d(bit)m(wise)h(negation)150
-4538 y Fs(**)384 b Ft(exp)s(onen)m(tiation)150 4699 y
-Fs(*)30 b(/)g(\045)276 b Ft(m)m(ultiplication,)33 b(division,)d
-(remainder)150 4859 y Fs(+)g(-)354 b Ft(addition,)31
-b(subtraction)150 5019 y Fs(<<)f(>>)258 b Ft(left)31
-b(and)f(righ)m(t)h(bit)m(wise)g(shifts)150 5180 y Fs(<=)f(>=)g(<)g(>)
-102 b Ft(comparison)150 5340 y Fs(==)30 b(!=)258 b Ft(equalit)m(y)32
-b(and)e(inequalit)m(y)p eop end
+2643 y Fj(id)p Ft(++)j Fj(id)p Ft(--)67 b Fu(v)-5 b(ariable)31
+b(p)s(ost-incremen)m(t)g(and)f(p)s(ost-decremen)m(t)150
+2798 y Ft(++)p Fj(id)f Ft(--)p Fj(id)67 b Fu(v)-5 b(ariable)31
+b(pre-incremen)m(t)g(and)f(pre-decremen)m(t)150 2953
+y Ft(-)g(+)354 b Fu(unary)29 b(min)m(us)h(and)g(plus)150
+3108 y Ft(!)g(~)354 b Fu(logical)33 b(and)d(bit)m(wise)h(negation)150
+3263 y Ft(**)384 b Fu(exp)s(onen)m(tiation)150 3417 y
+Ft(*)30 b(/)g(\045)276 b Fu(m)m(ultiplication,)33 b(division,)d
+(remainder)150 3572 y Ft(+)g(-)354 b Fu(addition,)31
+b(subtraction)150 3727 y Ft(<<)f(>>)258 b Fu(left)31
+b(and)f(righ)m(t)h(bit)m(wise)g(shifts)150 3882 y Ft(<=)f(>=)g(<)g(>)
+102 b Fu(comparison)150 4037 y Ft(==)30 b(!=)258 b Fu(equalit)m(y)32
+b(and)e(inequalit)m(y)150 4192 y Ft(&)432 b Fu(bit)m(wise)31
+b(AND)150 4347 y Ft(^)432 b Fu(bit)m(wise)31 b(exclusiv)m(e)h(OR)150
+4501 y Ft(|)432 b Fu(bit)m(wise)31 b(OR)150 4656 y Ft(&&)384
+b Fu(logical)33 b(AND)150 4811 y Ft(||)384 b Fu(logical)33
+b(OR)150 4966 y Ft(expr)c(?)h(expr)f(:)h(expr)630 5076
+y Fu(conditional)i(op)s(erator)150 5230 y Ft(=)e(*=)g(/=)g(\045=)f(+=)h
+(-=)g(<<=)f(>>=)h(&=)g(^=)f(|=)630 5340 y Fu(assignmen)m(t)p
+eop end
%%Page: 88 94
-TeXDict begin 88 93 bop 150 -116 a Ft(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(88)150 299 y Fs(&)432
-b Ft(bit)m(wise)31 b(AND)150 459 y Fs(^)432 b Ft(bit)m(wise)31
-b(exclusiv)m(e)h(OR)150 619 y Fs(|)432 b Ft(bit)m(wise)31
-b(OR)150 780 y Fs(&&)384 b Ft(logical)33 b(AND)150 940
-y Fs(||)384 b Ft(logical)33 b(OR)150 1100 y Fs(expr)c(?)h(expr)f(:)h
-(expr)630 1210 y Ft(conditional)i(op)s(erator)150 1370
-y Fs(=)e(*=)g(/=)g(\045=)f(+=)h(-=)g(<<=)f(>>=)h(&=)g(^=)f(|=)630
-1480 y Ft(assignmen)m(t)150 1640 y Fs(expr1)g(,)h(expr2)630
-1750 y Ft(comma)275 1910 y(Shell)38 b(v)-5 b(ariables)39
-b(are)g(allo)m(w)m(ed)i(as)e(op)s(erands;)i(parameter)e(expansion)g(is)
-f(p)s(erformed)g(b)s(efore)g(the)150 2020 y(expression)g(is)g(ev)-5
-b(aluated.)66 b(Within)38 b(an)h(expression,)h(shell)e(v)-5
-b(ariables)39 b(ma)m(y)g(also)g(b)s(e)f(referenced)g(b)m(y)150
-2130 y(name)31 b(without)f(using)g(the)h(parameter)g(expansion)f(syn)m
-(tax.)42 b(A)31 b(shell)f(v)-5 b(ariable)32 b(that)f(is)f(n)m(ull)h(or)
-f(unset)150 2239 y(ev)-5 b(aluates)41 b(to)f(0)g(when)e(referenced)h(b)
-m(y)g(name)h(without)f(using)g(the)g(parameter)h(expansion)f(syn)m
-(tax.)150 2349 y(The)c(v)-5 b(alue)37 b(of)f(a)h(v)-5
-b(ariable)36 b(is)g(ev)-5 b(aluated)38 b(as)e(an)g(arithmetic)h
-(expression)f(when)f(it)h(is)g(referenced,)i(or)150 2458
-y(when)31 b(a)i(v)-5 b(ariable)33 b(whic)m(h)f(has)g(b)s(een)f(giv)m
-(en)j(the)e Fq(in)m(teger)40 b Ft(attribute)33 b(using)f(`)p
-Fs(declare)d(-i)p Ft(')i(is)i(assigned)150 2568 y(a)j(v)-5
-b(alue.)58 b(A)36 b(n)m(ull)f(v)-5 b(alue)37 b(ev)-5
-b(aluates)37 b(to)g(0.)57 b(A)36 b(shell)g(v)-5 b(ariable)37
-b(need)e(not)h(ha)m(v)m(e)h(its)f Fq(in)m(teger)44 b
-Ft(attribute)150 2678 y(turned)29 b(on)h(to)i(b)s(e)d(used)h(in)g(an)g
-(expression.)275 2813 y(Constan)m(ts)41 b(with)g(a)h(leading)f(0)h(are)
-g(in)m(terpreted)f(as)g(o)s(ctal)i(n)m(um)m(b)s(ers.)72
-b(A)41 b(leading)h(`)p Fs(0x)p Ft(')f(or)g(`)p Fs(0X)p
-Ft(')150 2923 y(denotes)31 b(hexadecimal.)42 b(Otherwise,)30
-b(n)m(um)m(b)s(ers)f(tak)m(e)j(the)f(form)f([)p Fq(base)5
-b Fs(#)p Ft(])p Fq(n)p Ft(,)31 b(where)f(the)g(optional)i
-Fq(base)150 3032 y Ft(is)d(a)h(decimal)g(n)m(um)m(b)s(er)e(b)s(et)m(w)m
-(een)h(2)h(and)e(64)i(represen)m(ting)g(the)f(arithmetic)i(base,)e(and)
-g Fq(n)g Ft(is)g(a)g(n)m(um)m(b)s(er)150 3142 y(in)e(that)h(base.)40
-b(If)26 b Fq(base)5 b Fs(#)27 b Ft(is)h(omitted,)h(then)e(base)g(10)h
-(is)f(used.)39 b(When)27 b(sp)s(ecifying)g Fq(n)p Ft(,)h(he)f(digits)h
-(greater)150 3251 y(than)33 b(9)h(are)g(represen)m(ted)g(b)m(y)f(the)h
-(lo)m(w)m(ercase)i(letters,)g(the)d(upp)s(ercase)g(letters,)j(`)p
-Fs(@)p Ft(',)e(and)f(`)p Fs(_)p Ft(',)i(in)e(that)150
-3361 y(order.)69 b(If)39 b Fq(base)45 b Ft(is)40 b(less)g(than)g(or)f
+TeXDict begin 88 93 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2484 b(88)150 299 y Ft(expr1)29
+b(,)h(expr2)630 408 y Fu(comma)275 574 y(Shell)38 b(v)-5
+b(ariables)39 b(are)g(allo)m(w)m(ed)i(as)e(op)s(erands;)i(parameter)e
+(expansion)g(is)f(p)s(erformed)g(b)s(efore)g(the)150
+684 y(expression)g(is)g(ev)-5 b(aluated.)66 b(Within)38
+b(an)h(expression,)h(shell)e(v)-5 b(ariables)39 b(ma)m(y)g(also)g(b)s
+(e)f(referenced)g(b)m(y)150 793 y(name)31 b(without)f(using)g(the)h
+(parameter)g(expansion)f(syn)m(tax.)42 b(A)31 b(shell)f(v)-5
+b(ariable)32 b(that)f(is)f(n)m(ull)h(or)f(unset)150 903
+y(ev)-5 b(aluates)41 b(to)f(0)g(when)e(referenced)h(b)m(y)g(name)h
+(without)f(using)g(the)g(parameter)h(expansion)f(syn)m(tax.)150
+1012 y(The)c(v)-5 b(alue)37 b(of)f(a)h(v)-5 b(ariable)36
+b(is)g(ev)-5 b(aluated)38 b(as)e(an)g(arithmetic)h(expression)f(when)f
+(it)h(is)g(referenced,)i(or)150 1122 y(when)31 b(a)i(v)-5
+b(ariable)33 b(whic)m(h)f(has)g(b)s(een)f(giv)m(en)j(the)e
+Fr(in)m(teger)40 b Fu(attribute)33 b(using)f(`)p Ft(declare)d(-i)p
+Fu(')i(is)i(assigned)150 1232 y(a)j(v)-5 b(alue.)58 b(A)36
+b(n)m(ull)f(v)-5 b(alue)37 b(ev)-5 b(aluates)37 b(to)g(0.)57
+b(A)36 b(shell)g(v)-5 b(ariable)37 b(need)e(not)h(ha)m(v)m(e)h(its)f
+Fr(in)m(teger)44 b Fu(attribute)150 1341 y(turned)29
+b(on)h(to)i(b)s(e)d(used)h(in)g(an)g(expression.)275
+1480 y(Constan)m(ts)41 b(with)g(a)h(leading)f(0)h(are)g(in)m(terpreted)
+f(as)g(o)s(ctal)i(n)m(um)m(b)s(ers.)72 b(A)41 b(leading)h(`)p
+Ft(0x)p Fu(')f(or)g(`)p Ft(0X)p Fu(')150 1589 y(denotes)30
+b(hexadecimal.)42 b(Otherwise,)30 b(n)m(um)m(b)s(ers)f(tak)m(e)i(the)f
+(form)g([)p Fr(base)5 b Ft(#)p Fu(])p Fr(n)p Fu(,)30
+b(where)f(the)i(optional)g Fr(base)150 1699 y Fu(is)e(a)h(decimal)g(n)m
+(um)m(b)s(er)e(b)s(et)m(w)m(een)h(2)h(and)e(64)i(represen)m(ting)g(the)
+f(arithmetic)i(base,)e(and)g Fr(n)g Fu(is)g(a)g(n)m(um)m(b)s(er)150
+1809 y(in)e(that)h(base.)40 b(If)26 b Fr(base)5 b Ft(#)27
+b Fu(is)h(omitted,)h(then)e(base)g(10)h(is)f(used.)39
+b(When)27 b(sp)s(ecifying)g Fr(n)p Fu(,)h(he)f(digits)h(greater)150
+1918 y(than)33 b(9)h(are)g(represen)m(ted)g(b)m(y)f(the)h(lo)m(w)m
+(ercase)i(letters,)g(the)d(upp)s(ercase)g(letters,)j(`)p
+Ft(@)p Fu(',)e(and)f(`)p Ft(_)p Fu(',)i(in)e(that)150
+2028 y(order.)69 b(If)39 b Fr(base)45 b Fu(is)40 b(less)g(than)g(or)f
(equal)i(to)f(36,)k(lo)m(w)m(ercase)e(and)d(upp)s(ercase)g(letters)i
-(ma)m(y)g(b)s(e)e(used)150 3471 y(in)m(terc)m(hangeably)32
+(ma)m(y)g(b)s(e)e(used)150 2137 y(in)m(terc)m(hangeably)32
b(to)f(represen)m(t)g(n)m(um)m(b)s(ers)e(b)s(et)m(w)m(een)i(10)g(and)f
-(35.)275 3606 y(Op)s(erators)44 b(are)h(ev)-5 b(aluated)46
+(35.)275 2276 y(Op)s(erators)44 b(are)h(ev)-5 b(aluated)46
b(in)f(order)f(of)h(precedence.)85 b(Sub-expressions)44
-b(in)g(paren)m(theses)i(are)150 3715 y(ev)-5 b(aluated)32
+b(in)g(paren)m(theses)i(are)150 2386 y(ev)-5 b(aluated)32
b(\014rst)d(and)h(ma)m(y)h(o)m(v)m(erride)g(the)g(precedence)g(rules)f
-(ab)s(o)m(v)m(e.)150 3949 y Fr(6.6)68 b(Aliases)150 4109
-y Fq(Aliases)41 b Ft(allo)m(w)d(a)f(string)f(to)h(b)s(e)f(substituted)g
+(ab)s(o)m(v)m(e.)150 2624 y Fs(6.6)68 b(Aliases)150 2784
+y Fr(Aliases)41 b Fu(allo)m(w)d(a)f(string)f(to)h(b)s(e)f(substituted)g
(for)g(a)g(w)m(ord)g(when)g(it)h(is)f(used)f(as)i(the)g(\014rst)e(w)m
-(ord)h(of)h(a)150 4218 y(simple)32 b(command.)45 b(The)31
+(ord)h(of)h(a)150 2893 y(simple)32 b(command.)45 b(The)31
b(shell)i(main)m(tains)f(a)h(list)f(of)g(aliases)i(that)e(ma)m(y)h(b)s
-(e)e(set)h(and)g(unset)f(with)h(the)150 4328 y Fs(alias)d
-Ft(and)h Fs(unalias)e Ft(builtin)i(commands.)275 4463
+(e)e(set)h(and)g(unset)f(with)h(the)150 3003 y Ft(alias)d
+Fu(and)h Ft(unalias)e Fu(builtin)i(commands.)275 3142
y(The)f(\014rst)f(w)m(ord)i(of)f(eac)m(h)i(simple)f(command,)g(if)f
(unquoted,)g(is)h(c)m(hec)m(k)m(ed)h(to)g(see)f(if)g(it)g(has)f(an)g
-(alias.)150 4573 y(If)24 b(so,)i(that)g(w)m(ord)e(is)h(replaced)g(b)m
+(alias.)150 3251 y(If)24 b(so,)i(that)g(w)m(ord)e(is)h(replaced)g(b)m
(y)f(the)h(text)h(of)e(the)h(alias.)40 b(The)24 b(c)m(haracters)i(`)p
-Fs(/)p Ft(',)h(`)p Fs($)p Ft(',)f(`)p Fs(`)p Ft(',)g(`)p
-Fs(=)p Ft(')f(and)f(an)m(y)h(of)150 4682 y(the)e(shell)g(metac)m
+Ft(/)p Fu(',)h(`)p Ft($)p Fu(',)f(`)p Ft(`)p Fu(',)g(`)p
+Ft(=)p Fu(')f(and)f(an)m(y)h(of)150 3361 y(the)e(shell)g(metac)m
(haracters)i(or)e(quoting)g(c)m(haracters)h(listed)g(ab)s(o)m(v)m(e)g
(ma)m(y)f(not)g(app)s(ear)f(in)h(an)g(alias)h(name.)150
-4792 y(The)e(replacemen)m(t)h(text)g(ma)m(y)g(con)m(tain)h(an)m(y)e(v)
+3470 y(The)e(replacemen)m(t)h(text)g(ma)m(y)g(con)m(tain)h(an)m(y)e(v)
-5 b(alid)23 b(shell)f(input,)h(including)f(shell)g(metac)m(haracters.)
-40 b(The)150 4902 y(\014rst)35 b(w)m(ord)g(of)h(the)g(replacemen)m(t)i
+40 b(The)150 3580 y(\014rst)35 b(w)m(ord)g(of)h(the)g(replacemen)m(t)i
(text)e(is)g(tested)h(for)e(aliases,)k(but)c(a)h(w)m(ord)g(that)g(is)g
-(iden)m(tical)i(to)e(an)150 5011 y(alias)c(b)s(eing)f(expanded)f(is)h
+(iden)m(tical)i(to)e(an)150 3689 y(alias)c(b)s(eing)f(expanded)f(is)h
(not)g(expanded)f(a)h(second)g(time.)43 b(This)30 b(means)h(that)g(one)
-g(ma)m(y)h(alias)g Fs(ls)e Ft(to)150 5121 y Fs("ls)f(-F")p
-Ft(,)f(for)f(instance,)i(and)d(Bash)i(do)s(es)f(not)h(try)f(to)h
+g(ma)m(y)h(alias)g Ft(ls)e Fu(to)150 3799 y Ft("ls)f(-F")p
+Fu(,)f(for)f(instance,)i(and)d(Bash)i(do)s(es)f(not)h(try)f(to)h
(recursiv)m(ely)g(expand)e(the)i(replacemen)m(t)h(text.)40
-b(If)150 5230 y(the)31 b(last)h(c)m(haracter)g(of)f(the)g(alias)h(v)-5
-b(alue)31 b(is)g(a)g Fq(blank)6 b Ft(,)30 b(then)h(the)g(next)g
-(command)f(w)m(ord)h(follo)m(wing)h(the)150 5340 y(alias)g(is)e(also)h
-(c)m(hec)m(k)m(ed)i(for)d(alias)h(expansion.)p eop end
+b(If)150 3909 y(the)31 b(last)h(c)m(haracter)h(of)e(the)h(alias)g(v)-5
+b(alue)31 b(is)h(a)f Fr(blank)p Fu(,)g(then)g(the)g(next)h(command)e(w)
+m(ord)h(follo)m(wing)i(the)150 4018 y(alias)f(is)e(also)h(c)m(hec)m(k)m
+(ed)i(for)d(alias)h(expansion.)275 4157 y(Aliases)e(are)f(created)i
+(and)d(listed)i(with)f(the)g Ft(alias)f Fu(command,)h(and)g(remo)m(v)m
+(ed)h(with)f(the)g Ft(unalias)150 4267 y Fu(command.)275
+4405 y(There)44 b(is)h(no)g(mec)m(hanism)g(for)f(using)h(argumen)m(ts)g
+(in)f(the)h(replacemen)m(t)i(text,)i(as)d(in)e Ft(csh)p
+Fu(.)83 b(If)150 4515 y(argumen)m(ts)37 b(are)h(needed,)g(a)g(shell)f
+(function)f(should)g(b)s(e)h(used)f(\(see)i(Section)g(3.3)g([Shell)f(F)
+-8 b(unctions],)150 4624 y(page)31 b(17\).)275 4763 y(Aliases)i(are)h
+(not)e(expanded)g(when)g(the)h(shell)g(is)g(not)g(in)m(teractiv)m(e,)j
+(unless)c(the)h Ft(expand_aliases)150 4873 y Fu(shell)e(option)f(is)h
+(set)g(using)f Ft(shopt)f Fu(\(see)i(Section)g(4.3.2)h([The)e(Shopt)g
+(Builtin],)h(page)g(62\).)275 5011 y(The)38 b(rules)h(concerning)h(the)
+f(de\014nition)g(and)g(use)g(of)g(aliases)i(are)e(somewhat)h
+(confusing.)67 b(Bash)150 5121 y(alw)m(a)m(ys)42 b(reads)f(at)h(least)g
+(one)f(complete)i(line)e(of)g(input)f(b)s(efore)h(executing)h(an)m(y)f
+(of)g(the)g(commands)150 5230 y(on)h(that)h(line.)77
+b(Aliases)44 b(are)e(expanded)g(when)f(a)i(command)f(is)g(read,)k(not)c
+(when)g(it)g(is)h(executed.)150 5340 y(Therefore,)f(an)e(alias)h
+(de\014nition)e(app)s(earing)h(on)f(the)h(same)h(line)f(as)g(another)g
+(command)f(do)s(es)h(not)p eop end
%%Page: 89 95
-TeXDict begin 89 94 bop 150 -116 a Ft(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(89)275 299 y(Aliases)29
-b(are)f(created)i(and)d(listed)i(with)f(the)g Fs(alias)f
-Ft(command,)h(and)g(remo)m(v)m(ed)h(with)f(the)g Fs(unalias)150
-408 y Ft(command.)275 556 y(There)44 b(is)h(no)g(mec)m(hanism)g(for)f
-(using)h(argumen)m(ts)g(in)f(the)h(replacemen)m(t)i(text,)i(as)d(in)e
-Fs(csh)p Ft(.)83 b(If)150 666 y(argumen)m(ts)37 b(are)h(needed,)g(a)g
-(shell)f(function)f(should)g(b)s(e)h(used)f(\(see)i(Section)g(3.3)g
-([Shell)f(F)-8 b(unctions],)150 776 y(page)31 b(17\).)275
-923 y(Aliases)i(are)h(not)e(expanded)g(when)g(the)h(shell)g(is)g(not)g
-(in)m(teractiv)m(e,)j(unless)c(the)h Fs(expand_aliases)150
-1033 y Ft(shell)e(option)f(is)h(set)g(using)f Fs(shopt)f
-Ft(\(see)i(Section)g(4.3.2)h([The)e(Shopt)g(Builtin],)h(page)g(63\).)
-275 1181 y(The)38 b(rules)h(concerning)h(the)f(de\014nition)g(and)g
-(use)g(of)g(aliases)i(are)e(somewhat)h(confusing.)67
-b(Bash)150 1290 y(alw)m(a)m(ys)42 b(reads)f(at)h(least)g(one)f
-(complete)i(line)e(of)g(input)f(b)s(efore)h(executing)h(an)m(y)f(of)g
-(the)g(commands)150 1400 y(on)h(that)h(line.)77 b(Aliases)44
-b(are)e(expanded)g(when)f(a)i(command)f(is)g(read,)k(not)c(when)g(it)g
-(is)h(executed.)150 1510 y(Therefore,)f(an)e(alias)h(de\014nition)e
-(app)s(earing)h(on)f(the)h(same)h(line)f(as)g(another)g(command)f(do)s
-(es)h(not)150 1619 y(tak)m(e)31 b(e\013ect)f(un)m(til)g(the)f(next)g
-(line)h(of)f(input)f(is)h(read.)41 b(The)28 b(commands)h(follo)m(wing)i
-(the)e(alias)h(de\014nition)150 1729 y(on)d(that)h(line)f(are)h(not)f
-(a\013ected)i(b)m(y)e(the)g(new)g(alias.)41 b(This)26
-b(b)s(eha)m(vior)h(is)g(also)h(an)f(issue)g(when)f(functions)150
-1838 y(are)d(executed.)39 b(Aliases)24 b(are)f(expanded)f(when)f(a)i
-(function)g(de\014nition)f(is)h(read,)h(not)f(when)e(the)i(function)150
-1948 y(is)i(executed,)j(b)s(ecause)d(a)h(function)f(de\014nition)f(is)i
-(itself)g(a)f(comp)s(ound)f(command.)39 b(As)25 b(a)h(consequence,)150
-2058 y(aliases)36 b(de\014ned)d(in)h(a)g(function)g(are)h(not)f(a)m(v)
--5 b(ailable)37 b(un)m(til)d(after)h(that)g(function)f(is)g(executed.)
-53 b(T)-8 b(o)35 b(b)s(e)150 2167 y(safe,)41 b(alw)m(a)m(ys)f(put)d
-(alias)j(de\014nitions)e(on)g(a)h(separate)g(line,)i(and)d(do)g(not)g
-(use)g Fs(alias)f Ft(in)h(comp)s(ound)150 2277 y(commands.)275
-2425 y(F)-8 b(or)31 b(almost)g(ev)m(ery)g(purp)s(ose,)e(shell)i
-(functions)f(are)g(preferred)g(o)m(v)m(er)h(aliases.)150
-2677 y Fr(6.7)68 b(Arra)l(ys)150 2837 y Ft(Bash)33 b(pro)m(vides)g
-(one-dimensional)g(indexed)f(and)h(asso)s(ciativ)m(e)i(arra)m(y)e(v)-5
+TeXDict begin 89 94 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2484 b(89)150 299 y(tak)m(e)31
+b(e\013ect)f(un)m(til)g(the)f(next)g(line)h(of)f(input)f(is)h(read.)41
+b(The)28 b(commands)h(follo)m(wing)i(the)e(alias)h(de\014nition)150
+408 y(on)d(that)h(line)f(are)h(not)f(a\013ected)i(b)m(y)e(the)g(new)g
+(alias.)41 b(This)26 b(b)s(eha)m(vior)h(is)g(also)h(an)f(issue)g(when)f
+(functions)150 518 y(are)d(executed.)39 b(Aliases)24
+b(are)f(expanded)f(when)f(a)i(function)g(de\014nition)f(is)h(read,)h
+(not)f(when)e(the)i(function)150 628 y(is)i(executed,)j(b)s(ecause)d(a)
+h(function)f(de\014nition)f(is)i(itself)g(a)f(comp)s(ound)f(command.)39
+b(As)25 b(a)h(consequence,)150 737 y(aliases)36 b(de\014ned)d(in)h(a)g
+(function)g(are)h(not)f(a)m(v)-5 b(ailable)37 b(un)m(til)d(after)h
+(that)g(function)f(is)g(executed.)53 b(T)-8 b(o)35 b(b)s(e)150
+847 y(safe,)41 b(alw)m(a)m(ys)f(put)d(alias)j(de\014nitions)e(on)g(a)h
+(separate)g(line,)i(and)d(do)g(not)g(use)g Ft(alias)f
+Fu(in)h(comp)s(ound)150 956 y(commands.)275 1094 y(F)-8
+b(or)31 b(almost)g(ev)m(ery)g(purp)s(ose,)e(shell)i(functions)f(are)g
+(preferred)g(o)m(v)m(er)h(aliases.)150 1332 y Fs(6.7)68
+b(Arra)l(ys)150 1491 y Fu(Bash)33 b(pro)m(vides)g(one-dimensional)g
+(indexed)f(and)h(asso)s(ciativ)m(e)i(arra)m(y)e(v)-5
b(ariables.)49 b(An)m(y)33 b(v)-5 b(ariable)33 b(ma)m(y)150
-2946 y(b)s(e)e(used)h(as)g(an)g(indexed)f(arra)m(y;)j(the)e
-Fs(declare)e Ft(builtin)h(will)i(explicitly)g(declare)g(an)f(arra)m(y)
--8 b(.)46 b(There)32 b(is)150 3056 y(no)h(maxim)m(um)g(limit)h(on)f
+1601 y(b)s(e)e(used)h(as)g(an)g(indexed)f(arra)m(y;)j(the)e
+Ft(declare)e Fu(builtin)h(will)i(explicitly)g(declare)g(an)f(arra)m(y)
+-8 b(.)46 b(There)32 b(is)150 1710 y(no)h(maxim)m(um)g(limit)h(on)f
(the)g(size)h(of)g(an)f(arra)m(y)-8 b(,)35 b(nor)d(an)m(y)i(requiremen)
-m(t)f(that)h(mem)m(b)s(ers)e(b)s(e)g(indexed)150 3165
+m(t)f(that)h(mem)m(b)s(ers)e(b)s(e)g(indexed)150 1820
y(or)26 b(assigned)h(con)m(tiguously)-8 b(.)41 b(Indexed)25
b(arra)m(ys)i(are)f(referenced)g(using)g(in)m(tegers)i(\(including)e
-(arithmetic)150 3275 y(expressions)38 b(\(see)h(Section)g(6.5)h([Shell)
+(arithmetic)150 1929 y(expressions)38 b(\(see)h(Section)g(6.5)h([Shell)
e(Arithmetic],)k(page)d(87\)\))h(and)d(are)i(zero-based;)k(asso)s
-(ciativ)m(e)150 3385 y(arra)m(ys)37 b(use)f(arbitrary)g(strings.)59
+(ciativ)m(e)150 2039 y(arra)m(ys)37 b(use)f(arbitrary)g(strings.)59
b(Unless)36 b(otherwise)h(noted,)h(indexed)e(arra)m(y)h(indices)f(m)m
-(ust)g(b)s(e)g(non-)150 3494 y(negativ)m(e)d(in)m(tegers.)275
-3642 y(An)26 b(indexed)h(arra)m(y)h(is)f(created)h(automatically)j(if)c
+(ust)g(b)s(e)g(non-)150 2149 y(negativ)m(e)d(in)m(tegers.)275
+2286 y(An)26 b(indexed)h(arra)m(y)h(is)f(created)h(automatically)j(if)c
(an)m(y)g(v)-5 b(ariable)28 b(is)g(assigned)f(to)h(using)f(the)g(syn)m
-(tax)390 3790 y Fi(name)11 b Fs([)p Fi(subscript)g Fs(]=)p
-Fi(value)150 3938 y Ft(The)34 b Fq(subscript)h Ft(is)g(treated)g(as)g
+(tax)390 2424 y Fj(name)p Ft([)p Fj(subscript)p Ft(]=)p
+Fj(value)150 2562 y Fu(The)34 b Fr(subscript)h Fu(is)g(treated)g(as)g
(an)f(arithmetic)i(expression)e(that)h(m)m(ust)g(ev)-5
b(aluate)36 b(to)f(a)g(n)m(um)m(b)s(er.)51 b(T)-8 b(o)150
-4047 y(explicitly)32 b(declare)f(an)g(arra)m(y)-8 b(,)31
-b(use)390 4195 y Fs(declare)46 b(-a)h Fi(name)150 4343
-y Ft(The)30 b(syn)m(tax)390 4491 y Fs(declare)46 b(-a)h
-Fi(name)11 b Fs([)p Fi(subscript)g Fs(])150 4639 y Ft(is)30
-b(also)i(accepted;)g(the)e Fq(subscript)h Ft(is)g(ignored.)150
-4787 y(Asso)s(ciativ)m(e)i(arra)m(ys)d(are)h(created)h(using)390
-4935 y Fs(declare)46 b(-A)h Fi(name)11 b Fs(.)275 5083
-y Ft(A)m(ttributes)46 b(ma)m(y)h(b)s(e)e(sp)s(eci\014ed)g(for)h(an)g
-(arra)m(y)g(v)-5 b(ariable)47 b(using)e(the)h Fs(declare)e
-Ft(and)h Fs(readonly)150 5192 y Ft(builtins.)40 b(Eac)m(h)31
-b(attribute)g(applies)g(to)g(all)g(mem)m(b)s(ers)f(of)g(an)h(arra)m(y)
--8 b(.)275 5340 y(Arra)m(ys)30 b(are)h(assigned)f(to)h(using)f(comp)s
-(ound)f(assignmen)m(ts)i(of)g(the)f(form)p eop end
-%%Page: 90 96
-TeXDict begin 90 95 bop 150 -116 a Ft(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(90)390 299 y Fi(name)11
-b Fs(=\()p Fi(value1)54 b(value2)j Fs(...)47 b(\))150
-445 y Ft(where)37 b(eac)m(h)i Fq(v)-5 b(alue)42 b Ft(is)c(of)g(the)f
-(form)g Fs([)p Fi(subscript)11 b Fs(]=)p Fq(string)d
-Ft(.)58 b(Indexed)36 b(arra)m(y)i(assignmen)m(ts)g(do)g(not)150
-555 y(require)30 b(an)m(ything)h(but)f Fq(string)8 b
-Ft(.)41 b(When)30 b(assigning)h(to)g(indexed)f(arra)m(ys,)h(if)f(the)h
-(optional)h(subscript)d(is)150 664 y(supplied,)j(that)h(index)f(is)h
+2672 y(explicitly)32 b(declare)f(an)g(arra)m(y)-8 b(,)31
+b(use)390 2809 y Ft(declare)46 b(-a)h Fj(name)150 2947
+y Fu(The)30 b(syn)m(tax)390 3085 y Ft(declare)46 b(-a)h
+Fj(name)p Ft([)p Fj(subscript)p Ft(])150 3223 y Fu(is)30
+b(also)i(accepted;)g(the)e Fr(subscript)h Fu(is)g(ignored.)150
+3361 y(Asso)s(ciativ)m(e)i(arra)m(ys)d(are)h(created)h(using)390
+3499 y Ft(declare)46 b(-A)h Fj(name)p Ft(.)275 3636 y
+Fu(A)m(ttributes)f(ma)m(y)h(b)s(e)e(sp)s(eci\014ed)g(for)h(an)g(arra)m
+(y)g(v)-5 b(ariable)47 b(using)e(the)h Ft(declare)e Fu(and)h
+Ft(readonly)150 3746 y Fu(builtins.)40 b(Eac)m(h)31 b(attribute)g
+(applies)g(to)g(all)g(mem)m(b)s(ers)f(of)g(an)h(arra)m(y)-8
+b(.)275 3884 y(Arra)m(ys)30 b(are)h(assigned)f(to)h(using)f(comp)s
+(ound)f(assignmen)m(ts)i(of)g(the)f(form)390 4022 y Fj(name)p
+Ft(=\()p Fj(value1)44 b(value2)j Ft(...)f(\))150 4159
+y Fu(where)38 b(eac)m(h)i Fr(v)-5 b(alue)44 b Fu(is)39
+b(of)g(the)g(form)f Ft([)p Fj(subscript)p Ft(]=)p Fr(string)p
+Fu(.)63 b(Indexed)37 b(arra)m(y)j(assignmen)m(ts)f(do)g(not)150
+4269 y(require)31 b(an)m(ything)g(but)f Fr(string)p Fu(.)43
+b(When)31 b(assigning)g(to)h(indexed)e(arra)m(ys,)i(if)f(the)g
+(optional)h(subscript)e(is)150 4379 y(supplied,)i(that)h(index)f(is)h
(assigned)g(to;)h(otherwise)f(the)g(index)f(of)h(the)g(elemen)m(t)h
-(assigned)f(is)f(the)h(last)150 774 y(index)d(assigned)h(to)g(b)m(y)f
+(assigned)f(is)f(the)h(last)150 4488 y(index)d(assigned)h(to)g(b)m(y)f
(the)g(statemen)m(t)j(plus)c(one.)41 b(Indexing)30 b(starts)h(at)g
-(zero.)275 920 y(When)f(assigning)h(to)g(an)f(asso)s(ciativ)m(e)j(arra)
-m(y)-8 b(,)32 b(the)e(subscript)f(is)i(required.)275
-1066 y(This)f(syn)m(tax)j(is)e(also)i(accepted)g(b)m(y)f(the)f
-Fs(declare)f Ft(builtin.)44 b(Individual)31 b(arra)m(y)h(elemen)m(ts)h
-(ma)m(y)g(b)s(e)150 1176 y(assigned)e(to)g(using)f(the)g
-Fi(name)11 b Fs([)p Fi(subscript)g Fs(]=)p Fi(value)34
-b Ft(syn)m(tax)d(in)m(tro)s(duced)f(ab)s(o)m(v)m(e.)275
-1322 y(When)g(assigning)h(to)h(an)e(indexed)g(arra)m(y)-8
-b(,)32 b(if)f Fq(name)36 b Ft(is)31 b(subscripted)e(b)m(y)i(a)g
-(negativ)m(e)i(n)m(um)m(b)s(er,)c(that)150 1431 y(n)m(um)m(b)s(er)43
-b(is)h(in)m(terpreted)g(as)g(relativ)m(e)i(to)f(one)f(greater)h(than)f
-(the)g(maxim)m(um)f(index)h(of)g Fq(name)5 b Ft(,)48
-b(so)150 1541 y(negativ)m(e)30 b(indices)d(coun)m(t)h(bac)m(k)g(from)f
-(the)g(end)g(of)g(the)h(arra)m(y)-8 b(,)29 b(and)e(an)g(index)g(of)g
-(-1)h(references)g(the)f(last)150 1650 y(elemen)m(t.)275
-1797 y(An)m(y)f(elemen)m(t)i(of)e(an)g(arra)m(y)h(ma)m(y)g(b)s(e)f
-(referenced)g(using)g Fs(${)p Fi(name)11 b Fs([)p Fi(subscript)g
-Fs(]})p Ft(.)33 b(The)26 b(braces)h(are)150 1906 y(required)h(to)j(a)m
-(v)m(oid)f(con\015icts)g(with)f(the)h(shell's)f(\014lename)h(expansion)
-f(op)s(erators.)41 b(If)28 b(the)i Fq(subscript)g Ft(is)150
-2016 y(`)p Fs(@)p Ft(')f(or)g(`)p Fs(*)p Ft(',)g(the)g(w)m(ord)g
-(expands)f(to)i(all)f(mem)m(b)s(ers)f(of)h(the)g(arra)m(y)h
-Fq(name)5 b Ft(.)40 b(These)29 b(subscripts)e(di\013er)i(only)150
-2125 y(when)35 b(the)h(w)m(ord)f(app)s(ears)g(within)g(double)h
-(quotes.)57 b(If)36 b(the)g(w)m(ord)f(is)h(double-quoted,)h
-Fs(${)p Fi(name)11 b Fs([*]})150 2235 y Ft(expands)25
-b(to)h(a)g(single)h(w)m(ord)e(with)g(the)h(v)-5 b(alue)26
-b(of)g(eac)m(h)h(arra)m(y)f(mem)m(b)s(er)f(separated)h(b)m(y)g(the)f
-(\014rst)g(c)m(harac-)150 2345 y(ter)j(of)f(the)h Fs(IFS)e
-Ft(v)-5 b(ariable,)29 b(and)e Fs(${)p Fi(name)11 b Fs([@]})24
-b Ft(expands)i(eac)m(h)i(elemen)m(t)h(of)f Fq(name)k
-Ft(to)c(a)g(separate)g(w)m(ord.)150 2454 y(When)j(there)h(are)g(no)f
-(arra)m(y)h(mem)m(b)s(ers,)g Fs(${)p Fi(name)11 b Fs([@]})28
-b Ft(expands)j(to)h(nothing.)44 b(If)31 b(the)h(double-quoted)150
-2564 y(expansion)39 b(o)s(ccurs)h(within)f(a)h(w)m(ord,)i(the)d
-(expansion)h(of)g(the)f(\014rst)g(parameter)h(is)g(joined)f(with)h(the)
-150 2673 y(b)s(eginning)29 b(part)g(of)h(the)f(original)i(w)m(ord,)e
-(and)g(the)h(expansion)f(of)h(the)f(last)i(parameter)e(is)h(joined)f
-(with)150 2783 y(the)g(last)h(part)f(of)g(the)g(original)h(w)m(ord.)40
+(zero.)275 4626 y(When)f(assigning)h(to)g(an)f(asso)s(ciativ)m(e)j
+(arra)m(y)-8 b(,)32 b(the)e(subscript)f(is)i(required.)275
+4764 y(This)f(syn)m(tax)j(is)e(also)i(accepted)g(b)m(y)f(the)f
+Ft(declare)f Fu(builtin.)44 b(Individual)31 b(arra)m(y)h(elemen)m(ts)h
+(ma)m(y)g(b)s(e)150 4873 y(assigned)e(to)g(using)f(the)g
+Fj(name)p Ft([)p Fj(subscript)p Ft(]=)p Fj(value)25 b
+Fu(syn)m(tax)31 b(in)m(tro)s(duced)e(ab)s(o)m(v)m(e.)275
+5011 y(When)h(assigning)h(to)h(an)e(indexed)g(arra)m(y)-8
+b(,)32 b(if)f Fr(name)36 b Fu(is)31 b(subscripted)e(b)m(y)i(a)g
+(negativ)m(e)i(n)m(um)m(b)s(er,)c(that)150 5121 y(n)m(um)m(b)s(er)43
+b(is)h(in)m(terpreted)h(as)f(relativ)m(e)j(to)e(one)f(greater)i(than)e
+(the)g(maxim)m(um)g(index)g(of)h Fr(name)p Fu(,)j(so)150
+5230 y(negativ)m(e)30 b(indices)d(coun)m(t)h(bac)m(k)g(from)f(the)g
+(end)g(of)g(the)h(arra)m(y)-8 b(,)29 b(and)e(an)g(index)g(of)g(-1)h
+(references)g(the)f(last)150 5340 y(elemen)m(t.)p eop
+end
+%%Page: 90 96
+TeXDict begin 90 95 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2484 b(90)275 299 y(An)m(y)28
+b(elemen)m(t)h(of)g(an)f(arra)m(y)g(ma)m(y)h(b)s(e)f(referenced)g
+(using)g Ft(${)p Fj(name)p Ft([)p Fj(subscript)p Ft(]})p
+Fu(.)35 b(The)27 b(braces)i(are)150 408 y(required)f(to)j(a)m(v)m(oid)f
+(con\015icts)g(with)f(the)h(shell's)f(\014lename)h(expansion)f(op)s
+(erators.)41 b(If)28 b(the)i Fr(subscript)g Fu(is)150
+518 y(`)p Ft(@)p Fu(')f(or)h(`)p Ft(*)p Fu(',)f(the)h(w)m(ord)f
+(expands)f(to)i(all)g(mem)m(b)s(ers)e(of)i(the)f(arra)m(y)h
+Fr(name)p Fu(.)40 b(These)29 b(subscripts)f(di\013er)h(only)150
+628 y(when)36 b(the)g(w)m(ord)g(app)s(ears)g(within)g(double)g(quotes.)
+60 b(If)36 b(the)h(w)m(ord)f(is)g(double-quoted,)j Ft(${)p
+Fj(name)p Ft([*]})150 737 y Fu(expands)25 b(to)h(a)g(single)h(w)m(ord)e
+(with)g(the)h(v)-5 b(alue)26 b(of)g(eac)m(h)h(arra)m(y)f(mem)m(b)s(er)f
+(separated)h(b)m(y)g(the)f(\014rst)g(c)m(harac-)150 847
+y(ter)j(of)g(the)h Ft(IFS)e Fu(v)-5 b(ariable,)29 b(and)f
+Ft(${)p Fj(name)p Ft([@]})d Fu(expands)i(eac)m(h)i(elemen)m(t)h(of)e
+Fr(name)33 b Fu(to)c(a)f(separate)h(w)m(ord.)150 956
+y(When)j(there)h(are)f(no)g(arra)m(y)h(mem)m(b)s(ers,)f
+Ft(${)p Fj(name)p Ft([@]})e Fu(expands)h(to)i(nothing.)47
+b(If)31 b(the)i(double-quoted)150 1066 y(expansion)39
+b(o)s(ccurs)h(within)f(a)h(w)m(ord,)i(the)d(expansion)h(of)g(the)f
+(\014rst)g(parameter)h(is)g(joined)f(with)h(the)150 1176
+y(b)s(eginning)29 b(part)g(of)h(the)f(original)i(w)m(ord,)e(and)g(the)h
+(expansion)f(of)h(the)f(last)i(parameter)e(is)h(joined)f(with)150
+1285 y(the)g(last)h(part)f(of)g(the)g(original)h(w)m(ord.)40
b(This)28 b(is)h(analogous)h(to)f(the)h(expansion)e(of)h(the)g(sp)s
-(ecial)h(param-)150 2892 y(eters)35 b(`)p Fs(@)p Ft(')g(and)e(`)p
-Fs(*)p Ft('.)54 b Fs(${#)p Fi(name)11 b Fs([)p Fi(subscript)g
-Fs(]})28 b Ft(expands)33 b(to)j(the)e(length)h(of)g Fs(${)p
-Fi(name)11 b Fs([)p Fi(subscript)g Fs(]})p Ft(.)150 3002
-y(If)30 b Fq(subscript)i Ft(is)f(`)p Fs(@)p Ft(')f(or)h(`)p
-Fs(*)p Ft(',)g(the)g(expansion)g(is)g(the)g(n)m(um)m(b)s(er)e(of)i
-(elemen)m(ts)h(in)f(the)g(arra)m(y)-8 b(.)42 b(Referencing)150
-3112 y(an)33 b(arra)m(y)g(v)-5 b(ariable)34 b(without)f(a)h(subscript)e
-(is)h(equiv)-5 b(alen)m(t)34 b(to)g(referencing)f(with)g(a)g(subscript)
-f(of)h(0.)49 b(If)150 3221 y(the)33 b Fq(subscript)h
-Ft(used)e(to)h(reference)h(an)f(elemen)m(t)h(of)f(an)g(indexed)f(arra)m
-(y)i(ev)-5 b(aluates)34 b(to)g(a)f(n)m(um)m(b)s(er)f(less)150
-3331 y(than)d(zero,)h(it)f(is)g(in)m(terpreted)g(as)g(relativ)m(e)i(to)
-f(one)f(greater)h(than)f(the)g(maxim)m(um)f(index)h(of)g(the)g(arra)m
-(y)-8 b(,)150 3440 y(so)34 b(negativ)m(e)j(indices)d(coun)m(t)h(bac)m
-(k)g(from)f(the)g(end)f(of)i(the)f(arra)m(y)-8 b(,)36
-b(and)e(an)g(index)g(of)g(-1)h(refers)f(to)h(the)150
-3550 y(last)c(elemen)m(t.)275 3696 y(An)k(arra)m(y)i(v)-5
-b(ariable)37 b(is)g(considered)f(set)h(if)f(a)h(subscript)e(has)h(b)s
-(een)g(assigned)g(a)h(v)-5 b(alue.)59 b(The)36 b(n)m(ull)150
-3806 y(string)30 b(is)h(a)g(v)-5 b(alid)30 b(v)-5 b(alue.)275
-3952 y(It)30 b(is)h(p)s(ossible)f(to)h(obtain)h(the)e(k)m(eys)i
-(\(indices\))f(of)g(an)f(arra)m(y)h(as)g(w)m(ell)h(as)f(the)g(v)-5
-b(alues.)41 b($)p Fs({)p Ft(!)p Fq(name)5 b Ft([)p Fs(@)p
-Ft(])p Fs(})150 4061 y Ft(and)39 b($)p Fs({)p Ft(!)p
-Fq(name)5 b Ft([*])p Fs(})40 b Ft(expand)f(to)h(the)g(indices)f
-(assigned)h(in)f(arra)m(y)h(v)-5 b(ariable)40 b Fq(name)5
-b Ft(.)67 b(The)39 b(treatmen)m(t)150 4171 y(when)i(in)g(double)g
-(quotes)h(is)f(similar)h(to)h(the)e(expansion)h(of)f(the)h(sp)s(ecial)g
-(parameters)g(`)p Fs(@)p Ft(')g(and)f(`)p Fs(*)p Ft(')150
-4281 y(within)30 b(double)g(quotes.)275 4427 y(The)44
-b Fs(unset)f Ft(builtin)h(is)h(used)f(to)h(destro)m(y)g(arra)m(ys.)84
-b Fs(unset)29 b Fi(name)11 b Fs([)p Fi(subscript)g Fs(])40
-b Ft(destro)m(ys)45 b(the)150 4536 y(arra)m(y)32 b(elemen)m(t)h(at)g
-(index)e Fq(subscript)r Ft(.)44 b(Negativ)m(e)34 b(subscripts)d(to)h
-(indexed)f(arra)m(ys)i(are)f(in)m(terpreted)g(as)150
-4646 y(describ)s(ed)37 b(ab)s(o)m(v)m(e.)67 b(Care)38
-b(m)m(ust)h(b)s(e)f(tak)m(en)h(to)h(a)m(v)m(oid)g(un)m(w)m(an)m(ted)e
-(side)h(e\013ects)h(caused)e(b)m(y)h(\014lename)150 4756
-y(expansion.)49 b Fs(unset)29 b Fi(name)11 b Ft(,)32
-b(where)g Fq(name)39 b Ft(is)33 b(an)g(arra)m(y)-8 b(,)35
-b(remo)m(v)m(es)f(the)f(en)m(tire)h(arra)m(y)-8 b(.)50
-b(A)33 b(subscript)f(of)150 4865 y(`)p Fs(*)p Ft(')f(or)f(`)p
-Fs(@)p Ft(')g(also)i(remo)m(v)m(es)f(the)g(en)m(tire)g(arra)m(y)-8
-b(.)275 5011 y(The)41 b Fs(declare)p Ft(,)i Fs(local)p
-Ft(,)h(and)d Fs(readonly)f Ft(builtins)h(eac)m(h)j(accept)f(a)f(`)p
-Fs(-a)p Ft(')g(option)h(to)f(sp)s(ecify)g(an)150 5121
-y(indexed)25 b(arra)m(y)h(and)e(a)i(`)p Fs(-A)p Ft(')f(option)h(to)g
-(sp)s(ecify)f(an)g(asso)s(ciativ)m(e)j(arra)m(y)-8 b(.)40
-b(If)25 b(b)s(oth)g(options)g(are)h(supplied,)150 5230
-y(`)p Fs(-A)p Ft(')k(tak)m(es)i(precedence.)41 b(The)30
-b Fs(read)f Ft(builtin)g(accepts)j(a)e(`)p Fs(-a)p Ft(')g(option)h(to)g
-(assign)g(a)f(list)h(of)f(w)m(ords)g(read)150 5340 y(from)40
-b(the)g(standard)f(input)h(to)h(an)f(arra)m(y)-8 b(,)44
-b(and)39 b(can)i(read)f(v)-5 b(alues)40 b(from)g(the)g(standard)g
-(input)f(in)m(to)p eop end
-%%Page: 91 97
-TeXDict begin 91 96 bop 150 -116 a Ft(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(91)150 299 y(individual)26
-b(arra)m(y)h(elemen)m(ts.)41 b(The)26 b Fs(set)f Ft(and)h
-Fs(declare)f Ft(builtins)g(displa)m(y)i(arra)m(y)g(v)-5
-b(alues)27 b(in)f(a)h(w)m(a)m(y)g(that)150 408 y(allo)m(ws)32
-b(them)e(to)h(b)s(e)f(reused)f(as)i(input.)150 645 y
-Fr(6.8)68 b(The)45 b(Directory)g(Stac)l(k)150 804 y Ft(The)21
-b(directory)h(stac)m(k)h(is)e(a)h(list)g(of)f(recen)m(tly-visited)j
-(directories.)39 b(The)20 b Fs(pushd)g Ft(builtin)h(adds)g(directories)
-150 914 y(to)42 b(the)f(stac)m(k)i(as)e(it)h(c)m(hanges)g(the)f(curren)
-m(t)g(directory)-8 b(,)45 b(and)40 b(the)i Fs(popd)e
-Ft(builtin)g(remo)m(v)m(es)j(sp)s(eci\014ed)150 1023
-y(directories)29 b(from)f(the)h(stac)m(k)h(and)d(c)m(hanges)j(the)e
-(curren)m(t)g(directory)h(to)g(the)g(directory)f(remo)m(v)m(ed.)41
-b(The)150 1133 y Fs(dirs)29 b Ft(builtin)h(displa)m(ys)h(the)f(con)m
-(ten)m(ts)i(of)f(the)f(directory)h(stac)m(k.)275 1270
+(ecial)h(param-)150 1395 y(eters)g(`)p Ft(@)p Fu(')f(and)g(`)p
+Ft(*)p Fu('.)41 b Ft(${#)p Fj(name)p Ft([)p Fj(subscript)p
+Ft(]})24 b Fu(expands)k(to)i(the)g(length)g(of)f Ft(${)p
+Fj(name)p Ft([)p Fj(subscript)p Ft(]})p Fu(.)35 b(If)150
+1504 y Fr(subscript)29 b Fu(is)g(`)p Ft(@)p Fu(')f(or)h(`)p
+Ft(*)p Fu(',)g(the)g(expansion)f(is)h(the)f(n)m(um)m(b)s(er)g(of)g
+(elemen)m(ts)i(in)e(the)h(arra)m(y)-8 b(.)41 b(Referencing)29
+b(an)150 1614 y(arra)m(y)j(v)-5 b(ariable)32 b(without)f(a)h(subscript)
+e(is)h(equiv)-5 b(alen)m(t)33 b(to)f(referencing)f(with)g(a)h
+(subscript)e(of)h(0.)44 b(If)31 b(the)150 1724 y Fr(subscript)f
+Fu(used)e(to)i(reference)g(an)f(elemen)m(t)i(of)e(an)g(indexed)g(arra)m
+(y)h(ev)-5 b(aluates)30 b(to)g(a)g(n)m(um)m(b)s(er)e(less)h(than)150
+1833 y(zero,)37 b(it)f(is)f(in)m(terpreted)g(as)g(relativ)m(e)i(to)f
+(one)f(greater)i(than)d(the)i(maxim)m(um)e(index)h(of)g(the)g(arra)m(y)
+-8 b(,)38 b(so)150 1943 y(negativ)m(e)33 b(indices)e(coun)m(t)h(bac)m
+(k)f(from)g(the)g(end)f(of)h(the)g(arra)m(y)-8 b(,)32
+b(and)e(an)h(index)f(of)h(-1)h(refers)e(to)i(the)f(last)150
+2052 y(elemen)m(t.)275 2186 y(An)k(arra)m(y)i(v)-5 b(ariable)37
+b(is)g(considered)f(set)h(if)f(a)h(subscript)e(has)h(b)s(een)g
+(assigned)g(a)h(v)-5 b(alue.)59 b(The)36 b(n)m(ull)150
+2295 y(string)30 b(is)h(a)g(v)-5 b(alid)30 b(v)-5 b(alue.)275
+2429 y(It)29 b(is)h(p)s(ossible)f(to)h(obtain)g(the)f(k)m(eys)i
+(\(indices\))f(of)f(an)h(arra)m(y)g(as)f(w)m(ell)i(as)f(the)f(v)-5
+b(alues.)41 b($)p Fi({)p Fu(!)p Fr(name)5 b Fu([@])p
+Fi(})150 2538 y Fu(and)39 b($)p Fi({)p Fu(!)p Fr(name)5
+b Fu([*])p Fi(})43 b Fu(expand)c(to)i(the)f(indices)h(assigned)f(in)g
+(arra)m(y)g(v)-5 b(ariable)41 b Fr(name)p Fu(.)70 b(The)39
+b(treatmen)m(t)150 2648 y(when)i(in)g(double)g(quotes)h(is)f(similar)h
+(to)h(the)e(expansion)h(of)f(the)h(sp)s(ecial)g(parameters)g(`)p
+Ft(@)p Fu(')g(and)f(`)p Ft(*)p Fu(')150 2757 y(within)30
+b(double)g(quotes.)275 2891 y(The)j Ft(unset)g Fu(builtin)h(is)g(used)g
+(to)h(destro)m(y)g(arra)m(ys.)52 b Ft(unset)29 b Fj(name)p
+Ft([)p Fj(subscript)p Ft(])h Fu(destro)m(ys)35 b(the)g(ar-)150
+3000 y(ra)m(y)j(elemen)m(t)h(at)g(index)e Fr(subscript)p
+Fu(.)61 b(Negativ)m(e)41 b(subscripts)36 b(to)i(indexed)g(arra)m(ys)g
+(are)g(in)m(terpreted)g(as)150 3110 y(describ)s(ed)f(ab)s(o)m(v)m(e.)67
+b(Care)38 b(m)m(ust)h(b)s(e)f(tak)m(en)h(to)h(a)m(v)m(oid)g(un)m(w)m
+(an)m(ted)e(side)h(e\013ects)h(caused)e(b)m(y)h(\014lename)150
+3220 y(expansion.)50 b Ft(unset)29 b Fj(name)p Fu(,)34
+b(where)f Fr(name)39 b Fu(is)34 b(an)f(arra)m(y)-8 b(,)36
+b(remo)m(v)m(es)f(the)f(en)m(tire)g(arra)m(y)-8 b(.)52
+b(A)33 b(subscript)g(of)150 3329 y(`)p Ft(*)p Fu(')e(or)f(`)p
+Ft(@)p Fu(')g(also)i(remo)m(v)m(es)f(the)g(en)m(tire)g(arra)m(y)-8
+b(.)275 3463 y(The)20 b Ft(declare)p Fu(,)h Ft(local)p
+Fu(,)h(and)e Ft(readonly)f Fu(builtins)h(eac)m(h)i(accept)g(a)g
+Ft(-a)e Fu(option)h(to)h(sp)s(ecify)f(an)f(indexed)150
+3572 y(arra)m(y)28 b(and)f(a)h Ft(-A)e Fu(option)i(to)g(sp)s(ecify)f
+(an)h(asso)s(ciativ)m(e)i(arra)m(y)-8 b(.)40 b(If)27
+b(b)s(oth)g(options)h(are)g(supplied,)f Ft(-A)f Fu(tak)m(es)150
+3682 y(precedence.)55 b(The)35 b Ft(read)f Fu(builtin)h(accepts)h(a)g
+Ft(-a)e Fu(option)i(to)g(assign)f(a)g(list)h(of)f(w)m(ords)g(read)g
+(from)g(the)150 3791 y(standard)h(input)g(to)i(an)f(arra)m(y)-8
+b(,)40 b(and)c(can)h(read)g(v)-5 b(alues)38 b(from)e(the)h(standard)g
+(input)f(in)m(to)i(individual)150 3901 y(arra)m(y)f(elemen)m(ts.)62
+b(The)36 b Ft(set)g Fu(and)h Ft(declare)d Fu(builtins)j(displa)m(y)g
+(arra)m(y)g(v)-5 b(alues)37 b(in)g(a)g(w)m(a)m(y)h(that)g(allo)m(ws)150
+4011 y(them)30 b(to)h(b)s(e)f(reused)g(as)g(input.)150
+4241 y Fs(6.8)68 b(The)45 b(Directory)g(Stac)l(k)150
+4400 y Fu(The)21 b(directory)h(stac)m(k)h(is)e(a)h(list)g(of)f(recen)m
+(tly-visited)j(directories.)39 b(The)20 b Ft(pushd)g
+Fu(builtin)h(adds)g(directories)150 4510 y(to)42 b(the)f(stac)m(k)i(as)
+e(it)h(c)m(hanges)g(the)f(curren)m(t)g(directory)-8 b(,)45
+b(and)40 b(the)i Ft(popd)e Fu(builtin)g(remo)m(v)m(es)j(sp)s(eci\014ed)
+150 4620 y(directories)29 b(from)f(the)h(stac)m(k)h(and)d(c)m(hanges)j
+(the)e(curren)m(t)g(directory)h(to)g(the)g(directory)f(remo)m(v)m(ed.)
+41 b(The)150 4729 y Ft(dirs)29 b Fu(builtin)h(displa)m(ys)h(the)f(con)m
+(ten)m(ts)i(of)f(the)f(directory)h(stac)m(k.)275 4863
y(The)k(con)m(ten)m(ts)i(of)f(the)h(directory)f(stac)m(k)h(are)f(also)h
-(visible)g(as)f(the)g(v)-5 b(alue)36 b(of)g(the)g Fs(DIRSTACK)e
-Ft(shell)150 1379 y(v)-5 b(ariable.)150 1581 y Fj(6.8.1)63
-b(Directory)40 b(Stac)m(k)g(Builtins)150 1754 y Fs(dirs)870
-1890 y(dirs)47 b([-clpv])e([+)p Fi(N)58 b Fs(|)47 b(-)p
-Fi(N)11 b Fs(])630 2025 y Ft(Displa)m(y)35 b(the)f(list)g(of)g(curren)m
-(tly)g(remem)m(b)s(ered)f(directories.)51 b(Directories)36
-b(are)e(added)f(to)630 2135 y(the)28 b(list)h(with)f(the)g
-Fs(pushd)f Ft(command;)i(the)f Fs(popd)f Ft(command)h(remo)m(v)m(es)h
-(directories)g(from)630 2245 y(the)i(list.)630 2406 y
-Fs(-c)384 b Ft(Clears)31 b(the)f(directory)h(stac)m(k)h(b)m(y)e
-(deleting)h(all)h(of)e(the)h(elemen)m(ts.)630 2568 y
-Fs(-l)384 b Ft(Pro)s(duces)31 b(a)h(listing)h(using)e(full)h
-(pathnames;)h(the)f(default)g(listing)h(format)1110 2678
-y(uses)d(a)h(tilde)g(to)g(denote)g(the)f(home)h(directory)-8
-b(.)630 2840 y Fs(-p)384 b Ft(Causes)30 b Fs(dirs)f Ft(to)i(prin)m(t)f
-(the)h(directory)g(stac)m(k)h(with)e(one)g(en)m(try)h(p)s(er)e(line.)
-630 3002 y Fs(-v)384 b Ft(Causes)36 b Fs(dirs)f Ft(to)i(prin)m(t)f(the)
-g(directory)h(stac)m(k)h(with)e(one)h(en)m(try)f(p)s(er)f(line,)1110
-3111 y(pre\014xing)30 b(eac)m(h)h(en)m(try)g(with)f(its)h(index)e(in)i
-(the)f(stac)m(k.)630 3273 y Fs(+)p Fi(N)384 b Ft(Displa)m(ys)23
-b(the)f Fq(N)10 b Ft(th)21 b(directory)h(\(coun)m(ting)h(from)e(the)h
-(left)g(of)g(the)g(list)g(prin)m(ted)1110 3383 y(b)m(y)30
-b Fs(dirs)f Ft(when)h(in)m(v)m(ok)m(ed)i(without)e(options\),)h
-(starting)g(with)g(zero.)630 3544 y Fs(-)p Fi(N)384 b
-Ft(Displa)m(ys)47 b(the)g Fq(N)10 b Ft(th)46 b(directory)h(\(coun)m
-(ting)g(from)f(the)g(righ)m(t)h(of)g(the)f(list)1110
-3654 y(prin)m(ted)25 b(b)m(y)g Fs(dirs)g Ft(when)f(in)m(v)m(ok)m(ed)j
-(without)f(options\),)h(starting)g(with)e(zero.)150 3816
-y Fs(popd)870 3952 y(popd)47 b([-n])f([+)p Fi(N)58 b
-Fs(|)47 b(-)p Fi(N)11 b Fs(])630 4087 y Ft(Remo)m(v)m(e)26
+(visible)g(as)f(the)g(v)-5 b(alue)36 b(of)g(the)g Ft(DIRSTACK)e
+Fu(shell)150 4972 y(v)-5 b(ariable.)150 5169 y Fk(6.8.1)63
+b(Directory)40 b(Stac)m(k)g(Builtins)150 5340 y Ft(dirs)p
+eop end
+%%Page: 91 97
+TeXDict begin 91 96 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2484 b(91)870 299 y Ft(dirs)47
+b([-clpv])e([+)p Fj(N)i Ft(|)h(-)p Fj(N)p Ft(])630 435
+y Fu(Displa)m(y)35 b(the)f(list)g(of)g(curren)m(tly)g(remem)m(b)s(ered)
+f(directories.)51 b(Directories)36 b(are)e(added)f(to)630
+545 y(the)28 b(list)h(with)f(the)g Ft(pushd)f Fu(command;)i(the)f
+Ft(popd)f Fu(command)h(remo)m(v)m(es)h(directories)g(from)630
+654 y(the)i(list.)630 817 y Ft(-c)384 b Fu(Clears)31
+b(the)f(directory)h(stac)m(k)h(b)m(y)e(deleting)h(all)h(of)e(the)h
+(elemen)m(ts.)630 980 y Ft(-l)384 b Fu(Pro)s(duces)31
+b(a)h(listing)h(using)e(full)h(pathnames;)h(the)f(default)g(listing)h
+(format)1110 1089 y(uses)d(a)h(tilde)g(to)g(denote)g(the)f(home)h
+(directory)-8 b(.)630 1252 y Ft(-p)384 b Fu(Causes)30
+b Ft(dirs)f Fu(to)i(prin)m(t)f(the)h(directory)g(stac)m(k)h(with)e(one)
+g(en)m(try)h(p)s(er)e(line.)630 1415 y Ft(-v)384 b Fu(Causes)36
+b Ft(dirs)f Fu(to)i(prin)m(t)f(the)g(directory)h(stac)m(k)h(with)e(one)
+h(en)m(try)f(p)s(er)f(line,)1110 1524 y(pre\014xing)30
+b(eac)m(h)h(en)m(try)g(with)f(its)h(index)e(in)i(the)f(stac)m(k.)630
+1687 y Ft(+)p Fj(N)384 b Fu(Displa)m(ys)23 b(the)f Fr(N)10
+b Fu(th)21 b(directory)h(\(coun)m(ting)h(from)e(the)h(left)g(of)g(the)g
+(list)g(prin)m(ted)1110 1797 y(b)m(y)30 b Ft(dirs)f Fu(when)h(in)m(v)m
+(ok)m(ed)i(without)e(options\),)h(starting)g(with)g(zero.)630
+1959 y Ft(-)p Fj(N)384 b Fu(Displa)m(ys)47 b(the)g Fr(N)10
+b Fu(th)46 b(directory)h(\(coun)m(ting)g(from)f(the)g(righ)m(t)h(of)g
+(the)f(list)1110 2069 y(prin)m(ted)25 b(b)m(y)g Ft(dirs)g
+Fu(when)f(in)m(v)m(ok)m(ed)j(without)f(options\),)h(starting)g(with)e
+(zero.)150 2232 y Ft(popd)870 2368 y(popd)47 b([-n])f([+)p
+Fj(N)h Ft(|)h(-)p Fj(N)p Ft(])630 2504 y Fu(Remo)m(v)m(e)26
b(the)e(top)g(en)m(try)h(from)e(the)h(directory)h(stac)m(k,)i(and)c
-Fs(cd)h Ft(to)h(the)f(new)f(top)i(directory)-8 b(.)630
-4197 y(When)32 b(no)g(argumen)m(ts)h(are)g(giv)m(en,)h
-Fs(popd)d Ft(remo)m(v)m(es)j(the)f(top)f(directory)h(from)f(the)g(stac)
-m(k)630 4307 y(and)f(p)s(erforms)e(a)j Fs(cd)f Ft(to)h(the)f(new)g(top)
+Ft(cd)h Fu(to)h(the)f(new)f(top)i(directory)-8 b(.)630
+2614 y(When)32 b(no)g(argumen)m(ts)h(are)g(giv)m(en,)h
+Ft(popd)d Fu(remo)m(v)m(es)j(the)f(top)f(directory)h(from)f(the)g(stac)
+m(k)630 2723 y(and)f(p)s(erforms)e(a)j Ft(cd)f Fu(to)h(the)f(new)g(top)
h(directory)-8 b(.)44 b(The)31 b(elemen)m(ts)i(are)e(n)m(um)m(b)s(ered)
-f(from)630 4416 y(0)j(starting)g(at)g(the)f(\014rst)g(directory)g
-(listed)h(with)f Fs(dirs)p Ft(;)g(that)h(is,)g Fs(popd)e
-Ft(is)i(equiv)-5 b(alen)m(t)33 b(to)630 4526 y Fs(popd)c(+0)p
-Ft(.)630 4688 y Fs(-n)384 b Ft(Suppresses)27 b(the)j(normal)g(c)m
+f(from)630 2833 y(0)j(starting)g(at)g(the)f(\014rst)g(directory)g
+(listed)h(with)f Ft(dirs)p Fu(;)g(that)h(is,)g Ft(popd)e
+Fu(is)i(equiv)-5 b(alen)m(t)33 b(to)630 2942 y Ft(popd)c(+0)p
+Fu(.)630 3105 y Ft(-n)384 b Fu(Suppresses)27 b(the)j(normal)g(c)m
(hange)g(of)g(directory)g(when)e(remo)m(ving)j(directo-)1110
-4797 y(ries)f(from)g(the)h(stac)m(k,)h(so)f(that)g(only)f(the)h(stac)m
-(k)g(is)g(manipulated.)630 4959 y Fs(+)p Fi(N)384 b Ft(Remo)m(v)m(es)22
-b(the)f Fq(N)10 b Ft(th)20 b(directory)g(\(coun)m(ting)i(from)e(the)g
-(left)h(of)g(the)f(list)h(prin)m(ted)1110 5069 y(b)m(y)30
-b Fs(dirs)p Ft(\),)g(starting)h(with)f(zero.)630 5230
-y Fs(-)p Fi(N)384 b Ft(Remo)m(v)m(es)46 b(the)g Fq(N)10
-b Ft(th)44 b(directory)h(\(coun)m(ting)h(from)f(the)g(righ)m(t)g(of)g
-(the)g(list)1110 5340 y(prin)m(ted)30 b(b)m(y)g Fs(dirs)p
-Ft(\),)g(starting)h(with)f(zero.)p eop end
-%%Page: 92 98
-TeXDict begin 92 97 bop 150 -116 a Ft(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(92)150 299 y Fs(pushd)870
-433 y(pushd)46 b([-n])h([+)p Fi(N)57 b Fs(|)48 b Fi(-N)58
-b Fs(|)47 b Fi(dir)11 b Fs(])630 568 y Ft(Sa)m(v)m(e)29
-b(the)f(curren)m(t)g(directory)g(on)g(the)g(top)g(of)g(the)g(directory)
-h(stac)m(k)g(and)e(then)h Fs(cd)f Ft(to)i Fq(dir)7 b
-Ft(.)630 678 y(With)31 b(no)f(argumen)m(ts,)h Fs(pushd)e
-Ft(exc)m(hanges)j(the)e(top)h(t)m(w)m(o)h(directories.)630
-837 y Fs(-n)384 b Ft(Suppresses)26 b(the)i(normal)h(c)m(hange)g(of)f
-(directory)h(when)e(adding)h(directories)1110 947 y(to)j(the)g(stac)m
-(k,)h(so)e(that)h(only)g(the)f(stac)m(k)i(is)f(manipulated.)630
-1106 y Fs(+)p Fi(N)384 b Ft(Brings)29 b(the)f Fq(N)10
-b Ft(th)29 b(directory)g(\(coun)m(ting)h(from)e(the)g(left)i(of)e(the)h
-(list)g(prin)m(ted)1110 1216 y(b)m(y)34 b Fs(dirs)p Ft(,)g(starting)h
-(with)f(zero\))i(to)f(the)f(top)g(of)h(the)f(list)h(b)m(y)f(rotating)i
-(the)1110 1325 y(stac)m(k.)630 1485 y Fs(-)p Fi(N)384
-b Ft(Brings)23 b(the)g Fq(N)10 b Ft(th)23 b(directory)h(\(coun)m(ting)g
-(from)e(the)i(righ)m(t)f(of)g(the)h(list)f(prin)m(ted)1110
-1594 y(b)m(y)34 b Fs(dirs)p Ft(,)g(starting)h(with)f(zero\))i(to)f(the)
+3215 y(ries)f(from)g(the)h(stac)m(k,)h(so)f(that)g(only)f(the)h(stac)m
+(k)g(is)g(manipulated.)630 3377 y Ft(+)p Fj(N)384 b Fu(Remo)m(v)m(es)22
+b(the)f Fr(N)10 b Fu(th)20 b(directory)g(\(coun)m(ting)i(from)e(the)g
+(left)h(of)g(the)f(list)h(prin)m(ted)1110 3487 y(b)m(y)30
+b Ft(dirs)p Fu(\),)g(starting)h(with)f(zero.)630 3650
+y Ft(-)p Fj(N)384 b Fu(Remo)m(v)m(es)46 b(the)g Fr(N)10
+b Fu(th)44 b(directory)h(\(coun)m(ting)h(from)f(the)g(righ)m(t)g(of)g
+(the)g(list)1110 3759 y(prin)m(ted)30 b(b)m(y)g Ft(dirs)p
+Fu(\),)g(starting)h(with)f(zero.)150 3922 y Ft(pushd)870
+4058 y(pushd)46 b([-n])h([+)p Fj(N)g Ft(|)g Fj(-N)h Ft(|)f
+Fj(dir)p Ft(])630 4194 y Fu(Sa)m(v)m(e)30 b(the)e(curren)m(t)g
+(directory)h(on)f(the)h(top)f(of)h(the)f(directory)h(stac)m(k)h(and)e
+(then)g Ft(cd)f Fu(to)i Fr(dir)p Fu(.)630 4304 y(With)i(no)f(argumen)m
+(ts,)h Ft(pushd)e Fu(exc)m(hanges)j(the)e(top)h(t)m(w)m(o)h
+(directories.)630 4467 y Ft(-n)384 b Fu(Suppresses)26
+b(the)i(normal)h(c)m(hange)g(of)f(directory)h(when)e(adding)h
+(directories)1110 4576 y(to)j(the)g(stac)m(k,)h(so)e(that)h(only)g(the)
+f(stac)m(k)i(is)f(manipulated.)630 4739 y Ft(+)p Fj(N)384
+b Fu(Brings)29 b(the)f Fr(N)10 b Fu(th)29 b(directory)g(\(coun)m(ting)h
+(from)e(the)g(left)i(of)e(the)h(list)g(prin)m(ted)1110
+4848 y(b)m(y)34 b Ft(dirs)p Fu(,)g(starting)h(with)f(zero\))i(to)f(the)
f(top)g(of)h(the)f(list)h(b)m(y)f(rotating)i(the)1110
-1704 y(stac)m(k.)630 1863 y Fi(dir)336 b Ft(Mak)m(es)31
-b(the)g(curren)m(t)f(w)m(orking)g(directory)g(b)s(e)g(the)g(top)g(of)g
-(the)h(stac)m(k,)h(mak-)1110 1973 y(ing)39 b(it)g(the)g(new)f(curren)m
-(t)g(directory)h(as)g(if)g(it)g(had)f(b)s(een)g(supplied)f(as)i(an)1110
-2083 y(argumen)m(t)31 b(to)g(the)f Fs(cd)g Ft(builtin.)150
-2315 y Fr(6.9)68 b(Con)l(trolling)47 b(the)e(Prompt)150
-2475 y Ft(The)24 b(v)-5 b(alue)24 b(of)h(the)f(v)-5 b(ariable)25
-b Fs(PROMPT_COMMAND)20 b Ft(is)25 b(examined)f(just)g(b)s(efore)f(Bash)
-i(prin)m(ts)e(eac)m(h)j(primary)150 2584 y(prompt.)39
-b(If)28 b Fs(PROMPT_COMMAND)d Ft(is)j(set)h(and)f(has)g(a)h(non-n)m
-(ull)f(v)-5 b(alue,)29 b(then)f(the)h(v)-5 b(alue)29
-b(is)f(executed)i(just)150 2694 y(as)h(if)f(it)h(had)f(b)s(een)f(t)m
-(yp)s(ed)h(on)h(the)f(command)g(line.)275 2828 y(In)d(addition,)j(the)f
+4958 y(stac)m(k.)630 5121 y Ft(-)p Fj(N)384 b Fu(Brings)23
+b(the)g Fr(N)10 b Fu(th)23 b(directory)h(\(coun)m(ting)g(from)e(the)i
+(righ)m(t)f(of)g(the)h(list)f(prin)m(ted)1110 5230 y(b)m(y)34
+b Ft(dirs)p Fu(,)g(starting)h(with)f(zero\))i(to)f(the)f(top)g(of)h
+(the)f(list)h(b)m(y)f(rotating)i(the)1110 5340 y(stac)m(k.)p
+eop end
+%%Page: 92 98
+TeXDict begin 92 97 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2484 b(92)630 299 y Fj(dir)336
+b Fu(Mak)m(es)31 b(the)g(curren)m(t)f(w)m(orking)g(directory)g(b)s(e)g
+(the)g(top)g(of)g(the)h(stac)m(k,)h(mak-)1110 408 y(ing)39
+b(it)g(the)g(new)f(curren)m(t)g(directory)h(as)g(if)g(it)g(had)f(b)s
+(een)g(supplied)f(as)i(an)1110 518 y(argumen)m(t)31 b(to)g(the)f
+Ft(cd)g Fu(builtin.)150 752 y Fs(6.9)68 b(Con)l(trolling)47
+b(the)e(Prompt)150 911 y Fu(The)24 b(v)-5 b(alue)24 b(of)h(the)f(v)-5
+b(ariable)25 b Ft(PROMPT_COMMAND)20 b Fu(is)25 b(examined)f(just)g(b)s
+(efore)f(Bash)i(prin)m(ts)e(eac)m(h)j(primary)150 1021
+y(prompt.)39 b(If)28 b Ft(PROMPT_COMMAND)d Fu(is)j(set)h(and)f(has)g(a)
+h(non-n)m(ull)f(v)-5 b(alue,)29 b(then)f(the)h(v)-5 b(alue)29
+b(is)f(executed)i(just)150 1130 y(as)h(if)f(it)h(had)f(b)s(een)f(t)m
+(yp)s(ed)h(on)h(the)f(command)g(line.)275 1266 y(In)d(addition,)j(the)f
(follo)m(wing)h(table)f(describ)s(es)f(the)h(sp)s(ecial)g(c)m
(haracters)h(whic)m(h)f(can)f(app)s(ear)g(in)h(the)150
-2938 y(prompt)g(v)-5 b(ariables)32 b Fs(PS1)d Ft(to)i
-Fs(PS4)p Ft(:)150 3097 y Fs(\\a)384 b Ft(A)30 b(b)s(ell)h(c)m
-(haracter.)150 3257 y Fs(\\d)384 b Ft(The)30 b(date,)h(in)f
-Fs(")p Ft(W)-8 b(eekda)m(y)32 b(Mon)m(th)f(Date)p Fs(")h
-Ft(format)f(\(e.g.,)h Fs(")p Ft(T)-8 b(ue)30 b(Ma)m(y)h(26)p
-Fs(")p Ft(\).)150 3416 y Fs(\\D{)p Fi(format)11 b Fs(})630
-3526 y Ft(The)27 b Fq(format)i Ft(is)f(passed)e(to)i
-Fs(strftime)p Ft(\(3\))f(and)f(the)i(result)f(is)g(inserted)g(in)m(to)h
-(the)g(prompt)630 3636 y(string;)42 b(an)d(empt)m(y)f
-Fq(format)j Ft(results)d(in)g(a)h(lo)s(cale-sp)s(eci\014c)h(time)f
-(represen)m(tation.)65 b(The)630 3745 y(braces)31 b(are)f(required.)150
-3905 y Fs(\\e)384 b Ft(An)30 b(escap)s(e)h(c)m(haracter.)150
-4064 y Fs(\\h)384 b Ft(The)30 b(hostname,)h(up)e(to)i(the)g(\014rst)e
-(`.'.)150 4224 y Fs(\\H)384 b Ft(The)30 b(hostname.)150
-4383 y Fs(\\j)384 b Ft(The)30 b(n)m(um)m(b)s(er)f(of)h(jobs)g(curren)m
-(tly)h(managed)g(b)m(y)f(the)g(shell.)150 4543 y Fs(\\l)384
-b Ft(The)30 b(basename)h(of)f(the)h(shell's)f(terminal)h(device)g
-(name.)150 4702 y Fs(\\n)384 b Ft(A)30 b(newline.)150
-4862 y Fs(\\r)384 b Ft(A)30 b(carriage)i(return.)150
-5021 y Fs(\\s)384 b Ft(The)22 b(name)g(of)h(the)f(shell,)i(the)f
-(basename)f(of)h Fs($0)f Ft(\(the)g(p)s(ortion)g(follo)m(wing)i(the)f
-(\014nal)e(slash\).)150 5180 y Fs(\\t)384 b Ft(The)30
-b(time,)h(in)f(24-hour)h(HH:MM:SS)g(format.)150 5340
-y Fs(\\T)384 b Ft(The)30 b(time,)h(in)f(12-hour)h(HH:MM:SS)g(format.)p
-eop end
+1375 y(prompt)g(v)-5 b(ariables)32 b Ft(PS1)d Fu(to)i
+Ft(PS4)p Fu(:)150 1536 y Ft(\\a)384 b Fu(A)30 b(b)s(ell)h(c)m
+(haracter.)150 1696 y Ft(\\d)384 b Fu(The)30 b(date,)h(in)f
+Ft(")p Fu(W)-8 b(eekda)m(y)32 b(Mon)m(th)f(Date)p Ft(")h
+Fu(format)f(\(e.g.,)h Ft(")p Fu(T)-8 b(ue)30 b(Ma)m(y)h(26)p
+Ft(")p Fu(\).)150 1857 y Ft(\\D{)p Fj(format)p Ft(})630
+1966 y Fu(The)c Fr(format)i Fu(is)f(passed)e(to)i Ft(strftime)p
+Fu(\(3\))f(and)f(the)i(result)f(is)g(inserted)g(in)m(to)h(the)g(prompt)
+630 2076 y(string;)42 b(an)d(empt)m(y)f Fr(format)j Fu(results)d(in)g
+(a)h(lo)s(cale-sp)s(eci\014c)h(time)f(represen)m(tation.)65
+b(The)630 2185 y(braces)31 b(are)f(required.)150 2346
+y Ft(\\e)384 b Fu(An)30 b(escap)s(e)h(c)m(haracter.)150
+2506 y Ft(\\h)384 b Fu(The)30 b(hostname,)h(up)e(to)i(the)g(\014rst)e
+(`.'.)150 2666 y Ft(\\H)384 b Fu(The)30 b(hostname.)150
+2826 y Ft(\\j)384 b Fu(The)30 b(n)m(um)m(b)s(er)f(of)h(jobs)g(curren)m
+(tly)h(managed)g(b)m(y)f(the)g(shell.)150 2987 y Ft(\\l)384
+b Fu(The)30 b(basename)h(of)f(the)h(shell's)f(terminal)h(device)g
+(name.)150 3147 y Ft(\\n)384 b Fu(A)30 b(newline.)150
+3307 y Ft(\\r)384 b Fu(A)30 b(carriage)i(return.)150
+3467 y Ft(\\s)384 b Fu(The)22 b(name)g(of)h(the)f(shell,)i(the)f
+(basename)f(of)h Ft($0)f Fu(\(the)g(p)s(ortion)g(follo)m(wing)i(the)f
+(\014nal)e(slash\).)150 3628 y Ft(\\t)384 b Fu(The)30
+b(time,)h(in)f(24-hour)h(HH:MM:SS)g(format.)150 3788
+y Ft(\\T)384 b Fu(The)30 b(time,)h(in)f(12-hour)h(HH:MM:SS)g(format.)
+150 3948 y Ft(\\@)384 b Fu(The)30 b(time,)h(in)f(12-hour)h(am/pm)f
+(format.)150 4109 y Ft(\\A)384 b Fu(The)30 b(time,)h(in)f(24-hour)h
+(HH:MM)g(format.)150 4269 y Ft(\\u)384 b Fu(The)30 b(username)g(of)g
+(the)h(curren)m(t)f(user.)150 4429 y Ft(\\v)384 b Fu(The)30
+b(v)m(ersion)h(of)f(Bash)h(\(e.g.,)h(2.00\))150 4589
+y Ft(\\V)384 b Fu(The)30 b(release)i(of)e(Bash,)h(v)m(ersion)g
+Ft(+)f Fu(patc)m(hlev)m(el)i(\(e.g.,)h(2.00.0\))150 4750
+y Ft(\\w)384 b Fu(The)34 b(curren)m(t)h(w)m(orking)g(directory)-8
+b(,)37 b(with)e Ft($HOME)e Fu(abbreviated)j(with)e(a)h(tilde)h(\(uses)f
+(the)630 4859 y Ft($PROMPT_DIRTRIM)26 b Fu(v)-5 b(ariable\).)150
+5019 y Ft(\\W)384 b Fu(The)30 b(basename)h(of)f Ft($PWD)p
+Fu(,)g(with)g Ft($HOME)f Fu(abbreviated)h(with)g(a)h(tilde.)150
+5180 y Ft(\\!)384 b Fu(The)30 b(history)g(n)m(um)m(b)s(er)f(of)i(this)f
+(command.)150 5340 y Ft(\\#)384 b Fu(The)30 b(command)g(n)m(um)m(b)s
+(er)f(of)i(this)f(command.)p eop end
%%Page: 93 99
-TeXDict begin 93 98 bop 150 -116 a Ft(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(93)150 299 y Fs(\\@)384
-b Ft(The)30 b(time,)h(in)f(12-hour)h(am/pm)f(format.)150
-460 y Fs(\\A)384 b Ft(The)30 b(time,)h(in)f(24-hour)h(HH:MM)g(format.)
-150 620 y Fs(\\u)384 b Ft(The)30 b(username)g(of)g(the)h(curren)m(t)f
-(user.)150 781 y Fs(\\v)384 b Ft(The)30 b(v)m(ersion)h(of)f(Bash)h
-(\(e.g.,)h(2.00\))150 942 y Fs(\\V)384 b Ft(The)30 b(release)i(of)e
-(Bash,)h(v)m(ersion)g Fs(+)f Ft(patc)m(hlev)m(el)i(\(e.g.,)h(2.00.0\))
-150 1102 y Fs(\\w)384 b Ft(The)34 b(curren)m(t)h(w)m(orking)g
-(directory)-8 b(,)37 b(with)e Fs($HOME)e Ft(abbreviated)j(with)e(a)h
-(tilde)h(\(uses)f(the)630 1212 y Fs($PROMPT_DIRTRIM)26
-b Ft(v)-5 b(ariable\).)150 1372 y Fs(\\W)384 b Ft(The)30
-b(basename)h(of)f Fs($PWD)p Ft(,)g(with)g Fs($HOME)f
-Ft(abbreviated)h(with)g(a)h(tilde.)150 1533 y Fs(\\!)384
-b Ft(The)30 b(history)g(n)m(um)m(b)s(er)f(of)i(this)f(command.)150
-1694 y Fs(\\#)384 b Ft(The)30 b(command)g(n)m(um)m(b)s(er)f(of)i(this)f
-(command.)150 1854 y Fs(\\$)384 b Ft(If)30 b(the)g(e\013ectiv)m(e)j
-(uid)d(is)g(0,)h Fs(#)p Ft(,)g(otherwise)g Fs($)p Ft(.)150
-2015 y Fs(\\)p Fi(nnn)288 b Ft(The)30 b(c)m(haracter)i(whose)e(ASCI)s
-(I)f(co)s(de)h(is)h(the)f(o)s(ctal)i(v)-5 b(alue)31 b
-Fq(nnn)p Ft(.)150 2176 y Fs(\\\\)384 b Ft(A)30 b(bac)m(kslash.)150
-2336 y Fs(\\[)384 b Ft(Begin)38 b(a)f(sequence)g(of)g(non-prin)m(ting)g
-(c)m(haracters.)61 b(This)36 b(could)h(b)s(e)g(used)f(to)h(em)m(b)s(ed)
-g(a)630 2446 y(terminal)31 b(con)m(trol)h(sequence)e(in)m(to)i(the)e
-(prompt.)150 2607 y Fs(\\])384 b Ft(End)29 b(a)i(sequence)g(of)f
-(non-prin)m(ting)g(c)m(haracters.)275 2768 y(The)25 b(command)h(n)m(um)
-m(b)s(er)f(and)h(the)g(history)g(n)m(um)m(b)s(er)f(are)i(usually)f
-(di\013eren)m(t:)39 b(the)26 b(history)g(n)m(um)m(b)s(er)150
-2878 y(of)h(a)f(command)h(is)f(its)h(p)s(osition)f(in)g(the)h(history)f
-(list,)i(whic)m(h)f(ma)m(y)g(include)f(commands)g(restored)g(from)150
-2987 y(the)39 b(history)h(\014le)f(\(see)h(Section)g(9.1)h([Bash)e
-(History)h(F)-8 b(acilities],)45 b(page)40 b(134\),)j(while)d(the)f
-(command)150 3097 y(n)m(um)m(b)s(er)j(is)h(the)h(p)s(osition)f(in)g
-(the)g(sequence)h(of)f(commands)g(executed)h(during)e(the)i(curren)m(t)
-f(shell)150 3206 y(session.)275 3342 y(After)35 b(the)g(string)g(is)g
-(deco)s(ded,)h(it)f(is)g(expanded)f(via)i(parameter)f(expansion,)i
-(command)d(substi-)150 3452 y(tution,)k(arithmetic)f(expansion,)g(and)e
-(quote)h(remo)m(v)-5 b(al,)39 b(sub)5 b(ject)35 b(to)i(the)f(v)-5
-b(alue)36 b(of)g(the)g Fs(promptvars)150 3561 y Ft(shell)31
-b(option)f(\(see)i(Section)f(4.2)g([Bash)g(Builtins],)g(page)g(48\).)
-150 3796 y Fr(6.10)68 b(The)45 b(Restricted)h(Shell)150
-3955 y Ft(If)27 b(Bash)h(is)g(started)g(with)g(the)g(name)g
-Fs(rbash)p Ft(,)f(or)g(the)h(`)p Fs(--restricted)p Ft(')d(or)j(`)p
-Fs(-r)p Ft(')g(option)g(is)g(supplied)e(at)150 4065 y(in)m(v)m(o)s
-(cation,)k(the)d(shell)g(b)s(ecomes)h(restricted.)40
-b(A)27 b(restricted)h(shell)f(is)g(used)f(to)i(set)f(up)f(an)h(en)m
-(vironmen)m(t)150 4174 y(more)g(con)m(trolled)i(than)e(the)g(standard)g
-(shell.)40 b(A)27 b(restricted)h(shell)f(b)s(eha)m(v)m(es)h(iden)m
-(tically)h(to)f Fs(bash)e Ft(with)150 4284 y(the)31 b(exception)g(that)
-g(the)g(follo)m(wing)h(are)e(disallo)m(w)m(ed)i(or)e(not)h(p)s
-(erformed:)225 4420 y Fp(\017)60 b Ft(Changing)30 b(directories)h(with)
-g(the)f Fs(cd)g Ft(builtin.)225 4555 y Fp(\017)60 b Ft(Setting)31
+TeXDict begin 93 98 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2484 b(93)150 299 y Ft(\\$)384
+b Fu(If)30 b(the)g(e\013ectiv)m(e)j(uid)d(is)g(0,)h Ft(#)p
+Fu(,)g(otherwise)g Ft($)p Fu(.)150 479 y Ft(\\)p Fj(nnn)288
+b Fu(The)30 b(c)m(haracter)i(whose)e(ASCI)s(I)f(co)s(de)h(is)h(the)f(o)
+s(ctal)i(v)-5 b(alue)31 b Fr(nnn)p Fu(.)150 659 y Ft(\\\\)384
+b Fu(A)30 b(bac)m(kslash.)150 839 y Ft(\\[)384 b Fu(Begin)38
+b(a)f(sequence)g(of)g(non-prin)m(ting)g(c)m(haracters.)61
+b(This)36 b(could)h(b)s(e)g(used)f(to)h(em)m(b)s(ed)g(a)630
+948 y(terminal)31 b(con)m(trol)h(sequence)e(in)m(to)i(the)e(prompt.)150
+1128 y Ft(\\])384 b Fu(End)29 b(a)i(sequence)g(of)f(non-prin)m(ting)g
+(c)m(haracters.)275 1319 y(The)25 b(command)h(n)m(um)m(b)s(er)f(and)h
+(the)g(history)g(n)m(um)m(b)s(er)f(are)i(usually)f(di\013eren)m(t:)39
+b(the)26 b(history)g(n)m(um)m(b)s(er)150 1428 y(of)h(a)f(command)h(is)f
+(its)h(p)s(osition)f(in)g(the)h(history)f(list,)i(whic)m(h)f(ma)m(y)g
+(include)f(commands)g(restored)g(from)150 1538 y(the)39
+b(history)h(\014le)f(\(see)h(Section)g(9.1)h([Bash)e(History)h(F)-8
+b(acilities],)45 b(page)40 b(133\),)j(while)d(the)f(command)150
+1647 y(n)m(um)m(b)s(er)j(is)h(the)h(p)s(osition)f(in)g(the)g(sequence)h
+(of)f(commands)g(executed)h(during)e(the)i(curren)m(t)f(shell)150
+1757 y(session.)275 1912 y(After)35 b(the)g(string)g(is)g(deco)s(ded,)h
+(it)f(is)g(expanded)f(via)i(parameter)f(expansion,)i(command)d(substi-)
+150 2022 y(tution,)k(arithmetic)f(expansion,)g(and)e(quote)h(remo)m(v)
+-5 b(al,)39 b(sub)5 b(ject)35 b(to)i(the)f(v)-5 b(alue)36
+b(of)g(the)g Ft(promptvars)150 2131 y Fu(shell)31 b(option)f(\(see)i
+(Section)f(4.2)g([Bash)g(Builtins],)g(page)g(48\).)150
+2395 y Fs(6.10)68 b(The)45 b(Restricted)h(Shell)150 2554
+y Fu(If)34 b(Bash)g(is)g(started)g(with)g(the)g(name)h
+Ft(rbash)p Fu(,)e(or)h(the)h Ft(--restricted)30 b Fu(or)k
+Ft(-r)g Fu(option)g(is)g(supplied)f(at)150 2664 y(in)m(v)m(o)s(cation,)
+d(the)d(shell)g(b)s(ecomes)h(restricted.)40 b(A)27 b(restricted)h
+(shell)f(is)g(used)f(to)i(set)f(up)f(an)h(en)m(vironmen)m(t)150
+2773 y(more)g(con)m(trolled)i(than)e(the)g(standard)g(shell.)40
+b(A)27 b(restricted)h(shell)f(b)s(eha)m(v)m(es)h(iden)m(tically)h(to)f
+Ft(bash)e Fu(with)150 2883 y(the)31 b(exception)g(that)g(the)g(follo)m
+(wing)h(are)e(disallo)m(w)m(ed)i(or)e(not)h(p)s(erformed:)225
+3038 y Fq(\017)60 b Fu(Changing)30 b(directories)h(with)g(the)f
+Ft(cd)g Fu(builtin.)225 3183 y Fq(\017)60 b Fu(Setting)31
b(or)f(unsetting)h(the)g(v)-5 b(alues)30 b(of)h(the)f
-Fs(SHELL)p Ft(,)g Fs(PATH)p Ft(,)f Fs(ENV)p Ft(,)h(or)g
-Fs(BASH_ENV)e Ft(v)-5 b(ariables.)225 4690 y Fp(\017)60
-b Ft(Sp)s(ecifying)30 b(command)g(names)g(con)m(taining)i(slashes.)225
-4825 y Fp(\017)60 b Ft(Sp)s(ecifying)30 b(a)h(\014lename)f(con)m
+Ft(SHELL)p Fu(,)g Ft(PATH)p Fu(,)f Ft(ENV)p Fu(,)h(or)g
+Ft(BASH_ENV)e Fu(v)-5 b(ariables.)225 3328 y Fq(\017)60
+b Fu(Sp)s(ecifying)30 b(command)g(names)g(con)m(taining)i(slashes.)225
+3472 y Fq(\017)60 b Fu(Sp)s(ecifying)30 b(a)h(\014lename)f(con)m
(taining)i(a)f(slash)f(as)h(an)f(argumen)m(t)h(to)g(the)f
-Fs(.)h Ft(builtin)e(command.)225 4960 y Fp(\017)60 b
-Ft(Sp)s(ecifying)28 b(a)i(\014lename)f(con)m(taining)h(a)g(slash)e(as)h
-(an)g(argumen)m(t)h(to)f(the)g(`)p Fs(-p)p Ft(')g(option)g(to)h(the)f
-Fs(hash)330 5070 y Ft(builtin)h(command.)225 5205 y Fp(\017)60
-b Ft(Imp)s(orting)30 b(function)g(de\014nitions)g(from)f(the)i(shell)g
-(en)m(vironmen)m(t)g(at)g(startup.)225 5340 y Fp(\017)60
-b Ft(P)m(arsing)31 b(the)f(v)-5 b(alue)31 b(of)g Fs(SHELLOPTS)d
-Ft(from)h(the)i(shell)g(en)m(vironmen)m(t)g(at)g(startup.)p
+Ft(.)h Fu(builtin)e(command.)225 3617 y Fq(\017)60 b
+Fu(Sp)s(ecifying)32 b(a)g(\014lename)h(con)m(taining)h(a)e(slash)g(as)h
+(an)f(argumen)m(t)h(to)g(the)f Ft(-p)g Fu(option)h(to)g(the)f
+Ft(hash)330 3727 y Fu(builtin)e(command.)225 3871 y Fq(\017)60
+b Fu(Imp)s(orting)30 b(function)g(de\014nitions)g(from)f(the)i(shell)g
+(en)m(vironmen)m(t)g(at)g(startup.)225 4016 y Fq(\017)60
+b Fu(P)m(arsing)31 b(the)f(v)-5 b(alue)31 b(of)g Ft(SHELLOPTS)d
+Fu(from)h(the)i(shell)g(en)m(vironmen)m(t)g(at)g(startup.)225
+4161 y Fq(\017)60 b Fu(Redirecting)31 b(output)f(using)g(the)h(`)p
+Ft(>)p Fu(',)g(`)p Ft(>|)p Fu(',)f(`)p Ft(<>)p Fu(',)h(`)p
+Ft(>&)p Fu(',)f(`)p Ft(&>)p Fu(',)h(and)e(`)p Ft(>>)p
+Fu(')i(redirection)g(op)s(erators.)225 4306 y Fq(\017)60
+b Fu(Using)31 b(the)f Ft(exec)f Fu(builtin)h(to)h(replace)h(the)e
+(shell)h(with)f(another)h(command.)225 4451 y Fq(\017)60
+b Fu(Adding)24 b(or)g(deleting)i(builtin)e(commands)g(with)h(the)f
+Ft(-f)g Fu(and)g Ft(-d)g Fu(options)h(to)h(the)e Ft(enable)f
+Fu(builtin.)225 4595 y Fq(\017)60 b Fu(Using)31 b(the)f
+Ft(enable)f Fu(builtin)h(command)g(to)h(enable)g(disabled)f(shell)g
+(builtins.)225 4740 y Fq(\017)60 b Fu(Sp)s(ecifying)30
+b(the)g Ft(-p)g Fu(option)h(to)g(the)g Ft(command)d Fu(builtin.)225
+4885 y Fq(\017)60 b Fu(T)-8 b(urning)29 b(o\013)i(restricted)g(mo)s(de)
+f(with)g(`)p Ft(set)g(+r)p Fu(')g(or)g(`)p Ft(set)g(+o)g(restricted)p
+Fu('.)275 5075 y(These)g(restrictions)h(are)g(enforced)f(after)h(an)m
+(y)g(startup)f(\014les)g(are)h(read.)275 5230 y(When)j(a)i(command)e
+(that)i(is)f(found)f(to)h(b)s(e)g(a)g(shell)g(script)g(is)g(executed)h
+(\(see)g(Section)g(3.8)g([Shell)150 5340 y(Scripts],)25
+b(page)e(39\),)j Ft(rbash)c Fu(turns)g(o\013)i(an)m(y)f(restrictions)h
+(in)f(the)g(shell)h(spa)m(wned)e(to)i(execute)g(the)g(script.)p
eop end
%%Page: 94 100
-TeXDict begin 94 99 bop 150 -116 a Ft(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(94)225 299 y Fp(\017)60
-b Ft(Redirecting)31 b(output)f(using)g(the)h(`)p Fs(>)p
-Ft(',)g(`)p Fs(>|)p Ft(',)f(`)p Fs(<>)p Ft(',)h(`)p Fs(>&)p
-Ft(',)f(`)p Fs(&>)p Ft(',)h(and)e(`)p Fs(>>)p Ft(')i(redirection)g(op)s
-(erators.)225 435 y Fp(\017)60 b Ft(Using)31 b(the)f
-Fs(exec)f Ft(builtin)h(to)h(replace)h(the)e(shell)h(with)f(another)h
-(command.)225 571 y Fp(\017)60 b Ft(Adding)40 b(or)h(deleting)h
-(builtin)e(commands)h(with)f(the)h(`)p Fs(-f)p Ft(')g(and)f(`)p
-Fs(-d)p Ft(')h(options)g(to)h(the)f Fs(enable)330 681
-y Ft(builtin.)225 817 y Fp(\017)60 b Ft(Using)31 b(the)f
-Fs(enable)f Ft(builtin)h(command)g(to)h(enable)g(disabled)f(shell)g
-(builtins.)225 953 y Fp(\017)60 b Ft(Sp)s(ecifying)30
-b(the)g(`)p Fs(-p)p Ft(')h(option)g(to)g(the)f Fs(command)f
-Ft(builtin.)225 1089 y Fp(\017)60 b Ft(T)-8 b(urning)29
-b(o\013)i(restricted)g(mo)s(de)f(with)g(`)p Fs(set)g(+r)p
-Ft(')g(or)g(`)p Fs(set)g(+o)g(restricted)p Ft('.)275
-1253 y(These)g(restrictions)h(are)g(enforced)f(after)h(an)m(y)g
-(startup)f(\014les)g(are)h(read.)275 1390 y(When)j(a)i(command)e(that)i
-(is)f(found)f(to)h(b)s(e)g(a)g(shell)g(script)g(is)g(executed)h(\(see)g
-(Section)g(3.8)g([Shell)150 1500 y(Scripts],)25 b(page)e(39\),)j
-Fs(rbash)c Ft(turns)g(o\013)i(an)m(y)f(restrictions)h(in)f(the)g(shell)
-h(spa)m(wned)e(to)i(execute)g(the)g(script.)150 1737
-y Fr(6.11)68 b(Bash)45 b(POSIX)f(Mo)t(de)150 1896 y Ft(Starting)34
-b(Bash)f(with)g(the)g(`)p Fs(--posix)p Ft(')f(command-line)i(option)g
-(or)f(executing)h(`)p Fs(set)c(-o)g(posix)p Ft(')i(while)150
-2006 y(Bash)26 b(is)g(running)e(will)j(cause)f(Bash)g(to)h(conform)f
-(more)g(closely)h(to)g(the)f Fl(posix)f Ft(standard)g(b)m(y)h(c)m
-(hanging)150 2116 y(the)31 b(b)s(eha)m(vior)f(to)h(matc)m(h)g(that)g
-(sp)s(eci\014ed)f(b)m(y)g Fl(posix)g Ft(in)g(areas)h(where)f(the)h
-(Bash)f(default)h(di\013ers.)275 2253 y(When)f(in)m(v)m(ok)m(ed)h(as)g
-Fs(sh)p Ft(,)f(Bash)h(en)m(ters)g Fl(posix)e Ft(mo)s(de)h(after)h
-(reading)g(the)f(startup)g(\014les.)275 2391 y(The)f(follo)m(wing)j
-(list)f(is)g(what's)f(c)m(hanged)h(when)e(`)p Fl(posix)h
-Ft(mo)s(de')h(is)f(in)g(e\013ect:)199 2528 y(1.)61 b(When)28
+TeXDict begin 94 99 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2484 b(94)150 299 y Fs(6.11)68
+b(Bash)45 b(POSIX)f(Mo)t(de)150 458 y Fu(Starting)39
+b(Bash)f(with)g(the)h Ft(--posix)d Fu(command-line)j(option)g(or)f
+(executing)h(`)p Ft(set)30 b(-o)g(posix)p Fu(')37 b(while)150
+568 y(Bash)26 b(is)g(running)e(will)j(cause)f(Bash)g(to)h(conform)f
+(more)g(closely)h(to)g(the)f Fm(posix)f Fu(standard)g(b)m(y)h(c)m
+(hanging)150 677 y(the)31 b(b)s(eha)m(vior)f(to)h(matc)m(h)g(that)g(sp)
+s(eci\014ed)f(b)m(y)g Fm(posix)g Fu(in)g(areas)h(where)f(the)h(Bash)f
+(default)h(di\013ers.)275 811 y(When)f(in)m(v)m(ok)m(ed)h(as)g
+Ft(sh)p Fu(,)f(Bash)h(en)m(ters)g Fm(posix)e Fu(mo)s(de)h(after)h
+(reading)g(the)f(startup)g(\014les.)275 944 y(The)f(follo)m(wing)j
+(list)f(is)g(what's)f(c)m(hanged)h(when)e(`)p Fm(posix)h
+Fu(mo)s(de')h(is)f(in)g(e\013ect:)199 1077 y(1.)61 b(When)28
b(a)i(command)e(in)g(the)h(hash)f(table)i(no)e(longer)h(exists,)h(Bash)
-f(will)g(re-searc)m(h)h Fs($PATH)d Ft(to)i(\014nd)330
-2638 y(the)i(new)e(lo)s(cation.)43 b(This)29 b(is)i(also)g(a)m(v)-5
-b(ailable)33 b(with)d(`)p Fs(shopt)f(-s)h(checkhash)p
-Ft('.)199 2774 y(2.)61 b(The)42 b(message)h(prin)m(ted)e(b)m(y)h(the)g
+f(will)g(re-searc)m(h)h Ft($PATH)d Fu(to)i(\014nd)330
+1187 y(the)i(new)e(lo)s(cation.)43 b(This)29 b(is)i(also)g(a)m(v)-5
+b(ailable)33 b(with)d(`)p Ft(shopt)f(-s)h(checkhash)p
+Fu('.)199 1320 y(2.)61 b(The)42 b(message)h(prin)m(ted)e(b)m(y)h(the)g
(job)g(con)m(trol)i(co)s(de)e(and)f(builtins)h(when)f(a)h(job)g(exits)h
-(with)f(a)330 2884 y(non-zero)31 b(status)g(is)f(`Done\(status\)'.)199
-3020 y(3.)61 b(The)40 b(message)h(prin)m(ted)f(b)m(y)g(the)h(job)f(con)
+(with)f(a)330 1430 y(non-zero)31 b(status)g(is)f(`Done\(status\)'.)199
+1563 y(3.)61 b(The)40 b(message)h(prin)m(ted)f(b)m(y)g(the)h(job)f(con)
m(trol)h(co)s(de)g(and)f(builtins)f(when)h(a)g(job)g(is)h(stopp)s(ed)e
-(is)330 3129 y(`Stopp)s(ed\()p Fq(signame)5 b Ft(\)',)31
-b(where)f Fq(signame)36 b Ft(is,)31 b(for)f(example,)h
-Fs(SIGTSTP)p Ft(.)199 3265 y(4.)61 b(The)27 b Fs(bg)g
-Ft(builtin)g(uses)g(the)h(required)f(format)h(to)g(describ)s(e)f(eac)m
-(h)i(job)e(placed)h(in)f(the)h(bac)m(kground,)330 3375
+(is)330 1673 y(`Stopp)s(ed\()p Fr(signame)5 b Fu(\)',)31
+b(where)f Fr(signame)36 b Fu(is,)31 b(for)f(example,)h
+Ft(SIGTSTP)p Fu(.)199 1806 y(4.)61 b(The)27 b Ft(bg)g
+Fu(builtin)g(uses)g(the)h(required)f(format)h(to)g(describ)s(e)f(eac)m
+(h)i(job)e(placed)h(in)f(the)h(bac)m(kground,)330 1916
y(whic)m(h)h(do)s(es)g(not)g(include)g(an)g(indication)h(of)f(whether)f
(the)h(job)g(is)g(the)h(curren)m(t)e(or)h(previous)g(job.)199
-3511 y(5.)61 b(Reserv)m(ed)40 b(w)m(ords)g(app)s(earing)f(in)h(a)g(con)
+2049 y(5.)61 b(Reserv)m(ed)40 b(w)m(ords)g(app)s(earing)f(in)h(a)g(con)
m(text)i(where)d(reserv)m(ed)h(w)m(ords)f(are)i(recognized)g(do)f(not)
-330 3621 y(undergo)30 b(alias)h(expansion.)199 3757 y(6.)61
-b(The)38 b Fl(posix)h Fs(PS1)f Ft(and)g Fs(PS2)g Ft(expansions)g(of)i
-(`)p Fs(!)p Ft(')f(to)g(the)g(history)g(n)m(um)m(b)s(er)f(and)g(`)p
-Fs(!!)p Ft(')h(to)g(`)p Fs(!)p Ft(')h(are)330 3866 y(enabled,)26
+330 2159 y(undergo)30 b(alias)h(expansion.)199 2292 y(6.)61
+b(The)38 b Fm(posix)h Ft(PS1)f Fu(and)g Ft(PS2)g Fu(expansions)g(of)i
+(`)p Ft(!)p Fu(')f(to)g(the)g(history)g(n)m(um)m(b)s(er)f(and)g(`)p
+Ft(!!)p Fu(')h(to)g(`)p Ft(!)p Fu(')h(are)330 2401 y(enabled,)26
b(and)f(parameter)g(expansion)g(is)g(p)s(erformed)e(on)i(the)g(v)-5
-b(alues)25 b(of)g Fs(PS1)f Ft(and)h Fs(PS2)f Ft(regardless)330
-3976 y(of)31 b(the)f(setting)i(of)e(the)h Fs(promptvars)c
-Ft(option.)199 4112 y(7.)61 b(The)30 b Fl(posix)g Ft(startup)f(\014les)
-i(are)g(executed)g(\()p Fs($ENV)p Ft(\))f(rather)g(than)g(the)h(normal)
-f(Bash)g(\014les.)199 4248 y(8.)61 b(Tilde)30 b(expansion)g(is)f(only)h
+b(alues)25 b(of)g Ft(PS1)f Fu(and)h Ft(PS2)f Fu(regardless)330
+2511 y(of)31 b(the)f(setting)i(of)e(the)h Ft(promptvars)c
+Fu(option.)199 2644 y(7.)61 b(The)30 b Fm(posix)g Fu(startup)f(\014les)
+i(are)g(executed)g(\()p Ft($ENV)p Fu(\))f(rather)g(than)g(the)h(normal)
+f(Bash)g(\014les.)199 2778 y(8.)61 b(Tilde)30 b(expansion)g(is)f(only)h
(p)s(erformed)f(on)h(assignmen)m(ts)g(preceding)g(a)g(command)g(name,)g
-(rather)330 4357 y(than)g(on)g(all)i(assignmen)m(t)f(statemen)m(ts)h
-(on)e(the)h(line.)199 4493 y(9.)61 b(The)31 b Fs(command)e
-Ft(builtin)i(do)s(es)g(not)h(prev)m(en)m(t)f(builtins)g(that)h(tak)m(e)
-h(assignmen)m(t)f(statemen)m(ts)h(as)f(ar-)330 4603 y(gumen)m(ts)40
+(rather)330 2887 y(than)g(on)g(all)i(assignmen)m(t)f(statemen)m(ts)h
+(on)e(the)h(line.)199 3021 y(9.)61 b(The)31 b Ft(command)e
+Fu(builtin)i(do)s(es)g(not)h(prev)m(en)m(t)f(builtins)g(that)h(tak)m(e)
+h(assignmen)m(t)f(statemen)m(ts)h(as)f(ar-)330 3130 y(gumen)m(ts)40
b(from)e(expanding)h(them)g(as)h(assignmen)m(t)g(statemen)m(ts;)46
-b(when)38 b(not)i(in)f Fl(posix)f Ft(mo)s(de,)330 4713
+b(when)38 b(not)i(in)f Fm(posix)f Fu(mo)s(de,)330 3240
y(assignmen)m(t)k(builtins)e(lose)h(their)g(assignmen)m(t)h(statemen)m
-(t)h(expansion)d(prop)s(erties)g(when)g(pre-)330 4822
-y(ceded)31 b(b)m(y)f Fs(command)p Ft(.)154 4958 y(10.)61
-b(The)30 b(default)g(history)h(\014le)f(is)h(`)p Fs(~/.sh_history)p
-Ft(')c(\(this)k(is)f(the)g(default)h(v)-5 b(alue)31 b(of)f
-Fs($HISTFILE)p Ft(\).)154 5094 y(11.)61 b(The)23 b(output)f(of)i(`)p
-Fs(kill)29 b(-l)p Ft(')23 b(prin)m(ts)f(all)i(the)g(signal)f(names)g
-(on)g(a)h(single)g(line,)h(separated)e(b)m(y)g(spaces,)330
-5204 y(without)30 b(the)h(`)p Fs(SIG)p Ft(')f(pre\014x.)154
-5340 y(12.)61 b(The)30 b Fs(kill)f Ft(builtin)h(do)s(es)g(not)h(accept)
-h(signal)f(names)f(with)g(a)h(`)p Fs(SIG)p Ft(')f(pre\014x.)p
-eop end
-%%Page: 95 101
-TeXDict begin 95 100 bop 150 -116 a Ft(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(95)154 299 y(13.)61
-b(Non-in)m(teractiv)m(e)34 b(shells)c(exit)h(if)g Fq(\014lename)k
-Ft(in)30 b Fs(.)g Fq(\014lename)36 b Ft(is)31 b(not)f(found.)154
-432 y(14.)61 b(Non-in)m(teractiv)m(e)41 b(shells)d(exit)h(if)f(a)g(syn)
-m(tax)g(error)g(in)f(an)h(arithmetic)h(expansion)f(results)f(in)h(an)
-330 541 y(in)m(v)-5 b(alid)31 b(expression.)154 674 y(15.)61
-b(Non-in)m(teractiv)m(e)27 b(shells)c(exit)i(if)e(there)h(is)f(a)h(syn)
-m(tax)g(error)f(in)g(a)h(script)f(read)g(with)h(the)f
-Fs(.)g Ft(or)h Fs(source)330 783 y Ft(builtins,)30 b(or)g(in)g(a)h
-(string)g(pro)s(cessed)e(b)m(y)i(the)f Fs(eval)f Ft(builtin.)154
-916 y(16.)61 b(Redirection)25 b(op)s(erators)f(do)g(not)g(p)s(erform)f
-(\014lename)h(expansion)g(on)g(the)g(w)m(ord)f(in)h(the)g(redirection)
-330 1026 y(unless)30 b(the)g(shell)h(is)f(in)m(teractiv)m(e.)154
-1158 y(17.)61 b(Redirection)31 b(op)s(erators)g(do)f(not)h(p)s(erform)e
-(w)m(ord)h(splitting)h(on)f(the)h(w)m(ord)f(in)g(the)g(redirection.)154
-1291 y(18.)61 b(F)-8 b(unction)35 b(names)g(m)m(ust)f(b)s(e)g(v)-5
-b(alid)35 b(shell)f Fs(name)p Ft(s.)52 b(That)34 b(is,)i(they)f(ma)m(y)
-g(not)g(con)m(tain)g(c)m(haracters)330 1401 y(other)e(than)g(letters,)h
+(t)h(expansion)d(prop)s(erties)g(when)g(pre-)330 3349
+y(ceded)31 b(b)m(y)f Ft(command)p Fu(.)154 3483 y(10.)61
+b(The)30 b(default)g(history)h(\014le)f(is)h Ft(~/.sh_history)26
+b Fu(\(this)31 b(is)f(the)h(default)g(v)-5 b(alue)30
+b(of)h Ft($HISTFILE)p Fu(\).)154 3616 y(11.)61 b(The)23
+b(output)f(of)i(`)p Ft(kill)29 b(-l)p Fu(')23 b(prin)m(ts)f(all)i(the)g
+(signal)f(names)g(on)g(a)h(single)g(line,)h(separated)e(b)m(y)g
+(spaces,)330 3726 y(without)30 b(the)h(`)p Ft(SIG)p Fu(')f(pre\014x.)
+154 3859 y(12.)61 b(The)30 b Ft(kill)f Fu(builtin)h(do)s(es)g(not)h
+(accept)h(signal)f(names)f(with)g(a)h(`)p Ft(SIG)p Fu(')f(pre\014x.)154
+3992 y(13.)61 b(Non-in)m(teractiv)m(e)34 b(shells)c(exit)h(if)g
+Fr(\014lename)k Fu(in)30 b Ft(.)g Fr(\014lename)36 b
+Fu(is)31 b(not)f(found.)154 4125 y(14.)61 b(Non-in)m(teractiv)m(e)41
+b(shells)d(exit)h(if)f(a)g(syn)m(tax)g(error)g(in)f(an)h(arithmetic)h
+(expansion)f(results)f(in)h(an)330 4235 y(in)m(v)-5 b(alid)31
+b(expression.)154 4368 y(15.)61 b(Non-in)m(teractiv)m(e)27
+b(shells)c(exit)i(if)e(there)h(is)f(a)h(syn)m(tax)g(error)f(in)g(a)h
+(script)f(read)g(with)h(the)f Ft(.)g Fu(or)h Ft(source)330
+4478 y Fu(builtins,)30 b(or)g(in)g(a)h(string)g(pro)s(cessed)e(b)m(y)i
+(the)f Ft(eval)f Fu(builtin.)154 4611 y(16.)61 b(Redirection)25
+b(op)s(erators)f(do)g(not)g(p)s(erform)f(\014lename)h(expansion)g(on)g
+(the)g(w)m(ord)f(in)h(the)g(redirection)330 4721 y(unless)30
+b(the)g(shell)h(is)f(in)m(teractiv)m(e.)154 4854 y(17.)61
+b(Redirection)31 b(op)s(erators)g(do)f(not)h(p)s(erform)e(w)m(ord)h
+(splitting)h(on)f(the)h(w)m(ord)f(in)g(the)g(redirection.)154
+4987 y(18.)61 b(F)-8 b(unction)35 b(names)g(m)m(ust)f(b)s(e)g(v)-5
+b(alid)35 b(shell)f Ft(name)p Fu(s.)52 b(That)34 b(is,)i(they)f(ma)m(y)
+g(not)g(con)m(tain)g(c)m(haracters)330 5097 y(other)e(than)g(letters,)h
(digits,)h(and)d(underscores,)h(and)f(ma)m(y)h(not)g(start)h(with)e(a)h
-(digit.)49 b(Declaring)330 1510 y(a)31 b(function)f(with)g(an)g(in)m(v)
+(digit.)49 b(Declaring)330 5207 y(a)31 b(function)f(with)g(an)g(in)m(v)
-5 b(alid)31 b(name)g(causes)f(a)h(fatal)h(syn)m(tax)f(error)f(in)g
-(non-in)m(teractiv)m(e)j(shells.)154 1643 y(19.)61 b(F)-8
+(non-in)m(teractiv)m(e)j(shells.)154 5340 y(19.)61 b(F)-8
b(unction)31 b(names)f(ma)m(y)h(not)g(b)s(e)f(the)g(same)h(as)g(one)f
-(of)h(the)f Fl(posix)g Ft(sp)s(ecial)h(builtins.)154
-1775 y(20.)61 b Fl(posix)30 b Ft(sp)s(ecial)h(builtins)e(are)i(found)e
-(b)s(efore)h(shell)h(functions)f(during)f(command)h(lo)s(okup.)154
-1908 y(21.)61 b(The)29 b Fs(time)g Ft(reserv)m(ed)h(w)m(ord)g(ma)m(y)g
+(of)h(the)f Fm(posix)g Fu(sp)s(ecial)h(builtins.)p eop
+end
+%%Page: 95 101
+TeXDict begin 95 100 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2484 b(95)154 299 y(20.)61
+b Fm(posix)30 b Fu(sp)s(ecial)h(builtins)e(are)i(found)e(b)s(efore)h
+(shell)h(functions)f(during)f(command)h(lo)s(okup.)154
+427 y(21.)61 b(The)29 b Ft(time)g Fu(reserv)m(ed)h(w)m(ord)g(ma)m(y)g
(b)s(e)g(used)f(b)m(y)h(itself)g(as)g(a)h(command.)40
-b(When)30 b(used)f(in)g(this)h(w)m(a)m(y)-8 b(,)330 2018
+b(When)30 b(used)f(in)g(this)h(w)m(a)m(y)-8 b(,)330 536
y(it)33 b(displa)m(ys)g(timing)g(statistics)h(for)e(the)h(shell)g(and)f
-(its)g(completed)i(c)m(hildren.)47 b(The)32 b Fs(TIMEFORMAT)330
-2127 y Ft(v)-5 b(ariable)31 b(con)m(trols)h(the)e(format)h(of)g(the)f
-(timing)h(information.)154 2260 y(22.)61 b(When)33 b(parsing)f(and)g
-(expanding)g(a)i($)p Fs({)6 b Ft(.)22 b(.)g(.)11 b Fs(})33
-b Ft(expansion)f(that)i(app)s(ears)e(within)g(double)g(quotes,)330
-2370 y(single)42 b(quotes)g(are)g(no)g(longer)g(sp)s(ecial)g(and)f
+(its)g(completed)i(c)m(hildren.)47 b(The)32 b Ft(TIMEFORMAT)330
+646 y Fu(v)-5 b(ariable)31 b(con)m(trols)h(the)e(format)h(of)g(the)f
+(timing)h(information.)154 774 y(22.)61 b(When)33 b(parsing)g(and)f
+(expanding)h(a)h($)p Fi({)6 b Fu(.)22 b(.)h(.)11 b Fi(})33
+b Fu(expansion)g(that)h(app)s(ears)f(within)f(double)h(quotes,)330
+883 y(single)42 b(quotes)g(are)g(no)g(longer)g(sp)s(ecial)g(and)f
(cannot)i(b)s(e)e(used)g(to)h(quote)g(a)g(closing)h(brace)f(or)330
-2479 y(other)31 b(sp)s(ecial)h(c)m(haracter,)i(unless)c(the)i(op)s
+993 y(other)31 b(sp)s(ecial)h(c)m(haracter,)i(unless)c(the)i(op)s
(erator)f(is)g(one)h(of)f(those)h(de\014ned)e(to)i(p)s(erform)e
-(pattern)330 2589 y(remo)m(v)-5 b(al.)42 b(In)30 b(this)g(case,)i(they)
+(pattern)330 1103 y(remo)m(v)-5 b(al.)42 b(In)30 b(this)g(case,)i(they)
e(do)g(not)h(ha)m(v)m(e)h(to)f(app)s(ear)e(as)i(matc)m(hed)g(pairs.)154
-2721 y(23.)61 b(The)29 b(parser)g(do)s(es)g(not)h(recognize)h
-Fs(time)d Ft(as)i(a)g(reserv)m(ed)f(w)m(ord)g(if)h(the)f(next)h(tok)m
-(en)h(b)s(egins)d(with)i(a)330 2831 y(`)p Fs(-)p Ft('.)154
-2964 y(24.)61 b(If)24 b(a)g Fl(posix)g Ft(sp)s(ecial)h(builtin)f
+1230 y(23.)61 b(The)29 b(parser)g(do)s(es)g(not)h(recognize)h
+Ft(time)d Fu(as)i(a)g(reserv)m(ed)f(w)m(ord)g(if)h(the)f(next)h(tok)m
+(en)h(b)s(egins)d(with)i(a)330 1340 y(`)p Ft(-)p Fu('.)154
+1468 y(24.)61 b(If)24 b(a)g Fm(posix)g Fu(sp)s(ecial)h(builtin)f
(returns)f(an)h(error)g(status,)i(a)e(non-in)m(teractiv)m(e)j(shell)e
-(exits.)39 b(The)24 b(fatal)330 3073 y(errors)30 b(are)h(those)f
-(listed)h(in)f(the)h Fl(posix)e Ft(standard,)h(and)g(include)g(things)g
-(lik)m(e)i(passing)e(incorrect)330 3183 y(options,)43
+(exits.)39 b(The)24 b(fatal)330 1577 y(errors)30 b(are)h(those)f
+(listed)h(in)f(the)h Fm(posix)e Fu(standard,)h(and)g(include)g(things)g
+(lik)m(e)i(passing)e(incorrect)330 1687 y(options,)43
b(redirection)d(errors,)i(v)-5 b(ariable)41 b(assignmen)m(t)g(errors)e
-(for)g(assignmen)m(ts)i(preceding)f(the)330 3292 y(command)30
-b(name,)h(and)f(so)g(on.)154 3425 y(25.)61 b(A)31 b(non-in)m(teractiv)m
+(for)g(assignmen)m(ts)i(preceding)f(the)330 1797 y(command)30
+b(name,)h(and)f(so)g(on.)154 1924 y(25.)61 b(A)31 b(non-in)m(teractiv)m
(e)j(shell)d(exits)h(with)e(an)h(error)g(status)g(if)g(a)g(v)-5
b(ariable)32 b(assignmen)m(t)g(error)e(o)s(ccurs)330
-3535 y(when)38 b(no)h(command)g(name)g(follo)m(ws)i(the)e(assignmen)m
+2034 y(when)38 b(no)h(command)g(name)g(follo)m(ws)i(the)e(assignmen)m
(t)h(statemen)m(ts.)69 b(A)39 b(v)-5 b(ariable)40 b(assignmen)m(t)330
-3644 y(error)30 b(o)s(ccurs,)g(for)g(example,)i(when)d(trying)i(to)g
+2144 y(error)30 b(o)s(ccurs,)g(for)g(example,)i(when)d(trying)i(to)g
(assign)f(a)h(v)-5 b(alue)31 b(to)g(a)g(readonly)f(v)-5
-b(ariable.)154 3777 y(26.)61 b(A)28 b(non-in)m(teractiv)m(e)j(shell)e
+b(ariable.)154 2271 y(26.)61 b(A)28 b(non-in)m(teractiv)m(e)j(shell)e
(exists)f(with)g(an)g(error)g(status)h(if)f(a)g(v)-5
b(ariable)29 b(assignmen)m(t)g(error)f(o)s(ccurs)330
-3886 y(in)i(an)g(assignmen)m(t)i(statemen)m(t)g(preceding)e(a)h(sp)s
+2381 y(in)i(an)g(assignmen)m(t)i(statemen)m(t)g(preceding)e(a)h(sp)s
(ecial)g(builtin,)f(but)g(not)g(with)h(an)m(y)f(other)h(simple)330
-3996 y(command.)154 4129 y(27.)61 b(A)43 b(non-in)m(teractiv)m(e)i
+2491 y(command.)154 2619 y(27.)61 b(A)43 b(non-in)m(teractiv)m(e)i
(shell)e(exits)h(with)f(an)f(error)h(status)g(if)g(the)g(iteration)h(v)
--5 b(ariable)44 b(in)f(a)g Fs(for)330 4238 y Ft(statemen)m(t)32
+-5 b(ariable)44 b(in)f(a)g Ft(for)330 2728 y Fu(statemen)m(t)32
b(or)f(the)f(selection)i(v)-5 b(ariable)32 b(in)e(a)g
-Fs(select)f Ft(statemen)m(t)j(is)f(a)f(readonly)h(v)-5
-b(ariable.)154 4371 y(28.)61 b(Pro)s(cess)30 b(substitution)g(is)h(not)
-f(a)m(v)-5 b(ailable.)154 4504 y(29.)61 b(While)32 b(v)-5
+Ft(select)f Fu(statemen)m(t)j(is)f(a)f(readonly)h(v)-5
+b(ariable.)154 2856 y(28.)61 b(Pro)s(cess)30 b(substitution)g(is)h(not)
+f(a)m(v)-5 b(ailable.)154 2984 y(29.)61 b(While)32 b(v)-5
b(ariable)32 b(indirection)f(is)g(a)m(v)-5 b(ailable,)34
b(it)d(ma)m(y)h(not)f(b)s(e)g(applied)g(to)g(the)h(`)p
-Fs(#)p Ft(')f(and)f(`)p Fs(?)p Ft(')h(sp)s(ecial)330
-4613 y(parameters.)154 4746 y(30.)61 b(Assignmen)m(t)23
-b(statemen)m(ts)h(preceding)e Fl(posix)f Ft(sp)s(ecial)i(builtins)f(p)s
-(ersist)g(in)f(the)i(shell)f(en)m(vironmen)m(t)330 4855
-y(after)31 b(the)f(builtin)g(completes.)154 4988 y(31.)61
+Ft(#)p Fu(')f(and)f(`)p Ft(?)p Fu(')h(sp)s(ecial)330
+3093 y(parameters.)154 3221 y(30.)61 b(Assignmen)m(t)23
+b(statemen)m(ts)h(preceding)e Fm(posix)f Fu(sp)s(ecial)i(builtins)f(p)s
+(ersist)g(in)f(the)i(shell)f(en)m(vironmen)m(t)330 3331
+y(after)31 b(the)f(builtin)g(completes.)154 3459 y(31.)61
b(Assignmen)m(t)35 b(statemen)m(ts)h(preceding)f(shell)f(function)g
(calls)i(p)s(ersist)e(in)g(the)h(shell)f(en)m(vironmen)m(t)330
-5098 y(after)d(the)f(function)h(returns,)e(as)i(if)f(a)h
-Fl(posix)e Ft(sp)s(ecial)i(builtin)f(command)g(had)g(b)s(een)g
-(executed.)154 5230 y(32.)61 b(The)38 b Fs(export)f Ft(and)g
-Fs(readonly)f Ft(builtin)i(commands)g(displa)m(y)h(their)f(output)g(in)
-g(the)h(format)g(re-)330 5340 y(quired)30 b(b)m(y)g Fl(posix)p
-Ft(.)p eop end
-%%Page: 96 102
-TeXDict begin 96 101 bop 150 -116 a Ft(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(96)154 299 y(33.)61
-b(The)30 b Fs(trap)f Ft(builtin)h(displa)m(ys)g(signal)i(names)e
-(without)g(the)h(leading)g Fs(SIG)p Ft(.)154 432 y(34.)61
-b(The)39 b Fs(trap)e Ft(builtin)i(do)s(esn't)g(c)m(hec)m(k)h(the)g
-(\014rst)e(argumen)m(t)i(for)e(a)i(p)s(ossible)e(signal)i(sp)s
-(eci\014cation)330 541 y(and)30 b(rev)m(ert)i(the)e(signal)i(handling)e
-(to)h(the)g(original)h(disp)s(osition)e(if)h(it)g(is,)g(unless)f(that)h
-(argumen)m(t)330 651 y(consists)e(solely)g(of)g(digits)g(and)f(is)g(a)h
-(v)-5 b(alid)29 b(signal)g(n)m(um)m(b)s(er.)38 b(If)28
-b(users)g(w)m(an)m(t)h(to)g(reset)g(the)g(handler)330
-760 y(for)h(a)g(giv)m(en)h(signal)g(to)f(the)h(original)g(disp)s
-(osition,)f(they)g(should)f(use)h(`)p Fs(-)p Ft(')g(as)g(the)g(\014rst)
-f(argumen)m(t.)154 893 y(35.)61 b(The)21 b Fs(.)h Ft(and)f
-Fs(source)f Ft(builtins)h(do)g(not)h(searc)m(h)h(the)f(curren)m(t)f
+3568 y(after)d(the)f(function)h(returns,)e(as)i(if)f(a)h
+Fm(posix)e Fu(sp)s(ecial)i(builtin)f(command)g(had)g(b)s(een)g
+(executed.)154 3696 y(32.)61 b(The)38 b Ft(export)f Fu(and)g
+Ft(readonly)f Fu(builtin)i(commands)g(displa)m(y)h(their)f(output)g(in)
+g(the)h(format)g(re-)330 3806 y(quired)30 b(b)m(y)g Fm(posix)p
+Fu(.)154 3934 y(33.)61 b(The)30 b Ft(trap)f Fu(builtin)h(displa)m(ys)g
+(signal)i(names)e(without)g(the)h(leading)g Ft(SIG)p
+Fu(.)154 4061 y(34.)61 b(The)39 b Ft(trap)e Fu(builtin)i(do)s(esn't)g
+(c)m(hec)m(k)h(the)g(\014rst)e(argumen)m(t)i(for)e(a)i(p)s(ossible)e
+(signal)i(sp)s(eci\014cation)330 4171 y(and)30 b(rev)m(ert)i(the)e
+(signal)i(handling)e(to)h(the)g(original)h(disp)s(osition)e(if)h(it)g
+(is,)g(unless)f(that)h(argumen)m(t)330 4281 y(consists)e(solely)g(of)g
+(digits)g(and)f(is)g(a)h(v)-5 b(alid)29 b(signal)g(n)m(um)m(b)s(er.)38
+b(If)28 b(users)g(w)m(an)m(t)h(to)g(reset)g(the)g(handler)330
+4390 y(for)h(a)g(giv)m(en)h(signal)g(to)f(the)h(original)g(disp)s
+(osition,)f(they)g(should)f(use)h(`)p Ft(-)p Fu(')g(as)g(the)g(\014rst)
+f(argumen)m(t.)154 4518 y(35.)61 b(The)21 b Ft(.)h Fu(and)f
+Ft(source)f Fu(builtins)h(do)g(not)h(searc)m(h)h(the)f(curren)m(t)f
(directory)h(for)g(the)g(\014lename)f(argumen)m(t)330
-1003 y(if)30 b(it)h(is)g(not)f(found)f(b)m(y)i(searc)m(hing)g
-Fs(PATH)p Ft(.)154 1135 y(36.)61 b(Subshells)20 b(spa)m(wned)h(to)h
-(execute)g(command)g(substitutions)f(inherit)g(the)g(v)-5
-b(alue)22 b(of)g(the)f(`)p Fs(-e)p Ft(')g(option)330
-1245 y(from)34 b(the)h(paren)m(t)g(shell.)55 b(When)34
-b(not)i(in)e Fl(posix)g Ft(mo)s(de,)i(Bash)f(clears)h(the)f(`)p
-Fs(-e)p Ft(')f(option)i(in)e(suc)m(h)330 1354 y(subshells.)154
-1487 y(37.)61 b(Alias)31 b(expansion)g(is)f(alw)m(a)m(ys)i(enabled,)e
-(ev)m(en)i(in)e(non-in)m(teractiv)m(e)j(shells.)154 1620
-y(38.)61 b(When)43 b(the)g Fs(alias)f Ft(builtin)g(displa)m(ys)i(alias)
-g(de\014nitions,)i(it)d(do)s(es)g(not)g(displa)m(y)h(them)f(with)g(a)
-330 1729 y(leading)31 b(`)p Fs(alias)e Ft(')i(unless)f(the)g(`)p
-Fs(-p)p Ft(')g(option)h(is)g(supplied.)154 1862 y(39.)61
-b(When)40 b(the)g Fs(set)f Ft(builtin)h(is)g(in)m(v)m(ok)m(ed)h
+4628 y(if)30 b(it)h(is)g(not)f(found)f(b)m(y)i(searc)m(hing)g
+Ft(PATH)p Fu(.)154 4756 y(36.)61 b(Subshells)24 b(spa)m(wned)h(to)h
+(execute)h(command)f(substitutions)f(inherit)g(the)h(v)-5
+b(alue)26 b(of)g(the)g Ft(-e)e Fu(option)330 4865 y(from)37
+b(the)h(paren)m(t)g(shell.)63 b(When)38 b(not)g(in)f
+Fm(posix)g Fu(mo)s(de,)j(Bash)e(clears)g(the)g Ft(-e)g
+Fu(option)g(in)f(suc)m(h)330 4975 y(subshells.)154 5103
+y(37.)61 b(Alias)31 b(expansion)g(is)f(alw)m(a)m(ys)i(enabled,)e(ev)m
+(en)i(in)e(non-in)m(teractiv)m(e)j(shells.)154 5230 y(38.)61
+b(When)43 b(the)g Ft(alias)f Fu(builtin)g(displa)m(ys)i(alias)g
+(de\014nitions,)i(it)d(do)s(es)g(not)g(displa)m(y)h(them)f(with)g(a)330
+5340 y(leading)31 b(`)p Ft(alias)e Fu(')i(unless)f(the)g
+Ft(-p)g Fu(option)h(is)f(supplied.)p eop end
+%%Page: 96 102
+TeXDict begin 96 101 bop 150 -116 a Fu(Chapter)30 b(6:)41
+b(Bash)30 b(F)-8 b(eatures)2484 b(96)154 299 y(39.)61
+b(When)40 b(the)g Ft(set)f Fu(builtin)h(is)g(in)m(v)m(ok)m(ed)h
(without)f(options,)j(it)e(do)s(es)f(not)g(displa)m(y)g(shell)g
-(function)330 1972 y(names)30 b(and)g(de\014nitions.)154
-2104 y(40.)61 b(When)36 b(the)g Fs(set)g Ft(builtin)g(is)g(in)m(v)m(ok)
-m(ed)i(without)e(options,)i(it)f(displa)m(ys)f(v)-5 b(ariable)37
-b(v)-5 b(alues)37 b(without)330 2214 y(quotes,)26 b(unless)d(they)i
-(con)m(tain)g(shell)f(metac)m(haracters,)k(ev)m(en)d(if)f(the)g(result)
-g(con)m(tains)i(nonprin)m(ting)330 2323 y(c)m(haracters.)154
-2456 y(41.)61 b(When)35 b(the)g Fs(cd)f Ft(builtin)h(is)g(in)m(v)m(ok)m
-(ed)i(in)d Fq(logical)41 b Ft(mo)s(de,)36 b(and)f(the)g(pathname)g
-(constructed)g(from)330 2566 y Fs($PWD)i Ft(and)h(the)h(directory)f
+(function)330 408 y(names)30 b(and)g(de\014nitions.)154
+543 y(40.)61 b(When)36 b(the)g Ft(set)g Fu(builtin)g(is)g(in)m(v)m(ok)m
+(ed)i(without)e(options,)i(it)f(displa)m(ys)f(v)-5 b(ariable)37
+b(v)-5 b(alues)37 b(without)330 653 y(quotes,)26 b(unless)d(they)i(con)
+m(tain)g(shell)f(metac)m(haracters,)k(ev)m(en)d(if)f(the)g(result)g
+(con)m(tains)i(nonprin)m(ting)330 762 y(c)m(haracters.)154
+897 y(41.)61 b(When)35 b(the)g Ft(cd)f Fu(builtin)h(is)g(in)m(v)m(ok)m
+(ed)i(in)d Fr(logical)41 b Fu(mo)s(de,)36 b(and)f(the)g(pathname)g
+(constructed)g(from)330 1006 y Ft($PWD)i Fu(and)h(the)h(directory)f
(name)h(supplied)e(as)i(an)f(argumen)m(t)h(do)s(es)f(not)g(refer)h(to)g
-(an)f(existing)330 2675 y(directory)-8 b(,)32 b Fs(cd)d
-Ft(will)i(fail)g(instead)g(of)f(falling)h(bac)m(k)h(to)f
-Fq(ph)m(ysical)j Ft(mo)s(de.)154 2808 y(42.)61 b(The)36
-b Fs(pwd)f Ft(builtin)h(v)m(eri\014es)h(that)g(the)f(v)-5
+(an)f(existing)330 1116 y(directory)-8 b(,)32 b Ft(cd)d
+Fu(will)i(fail)g(instead)g(of)f(falling)h(bac)m(k)h(to)f
+Fr(ph)m(ysical)j Fu(mo)s(de.)154 1250 y(42.)61 b(The)36
+b Ft(pwd)f Fu(builtin)h(v)m(eri\014es)h(that)g(the)f(v)-5
b(alue)37 b(it)g(prin)m(ts)e(is)i(the)f(same)h(as)f(the)h(curren)m(t)f
-(directory)-8 b(,)330 2917 y(ev)m(en)31 b(if)f(it)h(is)g(not)f(ask)m
-(ed)h(to)g(c)m(hec)m(k)h(the)f(\014le)f(system)h(with)f(the)h(`)p
-Fs(-P)p Ft(')f(option.)154 3050 y(43.)61 b(When)35 b(listing)g(the)g
-(history)-8 b(,)36 b(the)f Fs(fc)g Ft(builtin)f(do)s(es)g(not)h
-(include)g(an)f(indication)i(of)f(whether)f(or)330 3160
+(directory)-8 b(,)330 1360 y(ev)m(en)31 b(if)f(it)h(is)g(not)f(ask)m
+(ed)h(to)g(c)m(hec)m(k)h(the)f(\014le)f(system)h(with)f(the)h
+Ft(-P)e Fu(option.)154 1494 y(43.)61 b(When)35 b(listing)g(the)g
+(history)-8 b(,)36 b(the)f Ft(fc)g Fu(builtin)f(do)s(es)g(not)h
+(include)g(an)f(indication)i(of)f(whether)f(or)330 1604
y(not)d(a)f(history)h(en)m(try)f(has)g(b)s(een)g(mo)s(di\014ed.)154
-3292 y(44.)61 b(The)30 b(default)g(editor)h(used)f(b)m(y)g
-Fs(fc)g Ft(is)g Fs(ed)p Ft(.)154 3425 y(45.)61 b(The)37
-b Fs(type)g Ft(and)g Fs(command)f Ft(builtins)i(will)g(not)g(rep)s(ort)
+1738 y(44.)61 b(The)30 b(default)g(editor)h(used)f(b)m(y)g
+Ft(fc)g Fu(is)g Ft(ed)p Fu(.)154 1873 y(45.)61 b(The)37
+b Ft(type)g Fu(and)g Ft(command)f Fu(builtins)i(will)g(not)g(rep)s(ort)
f(a)i(non-executable)g(\014le)f(as)g(ha)m(ving)h(b)s(een)330
-3535 y(found,)26 b(though)h(the)g(shell)g(will)g(attempt)h(to)g
+1983 y(found,)26 b(though)h(the)g(shell)g(will)g(attempt)h(to)g
(execute)g(suc)m(h)f(a)g(\014le)g(if)g(it)g(is)g(the)g(only)g(so-named)
-g(\014le)330 3644 y(found)i(in)h Fs($PATH)p Ft(.)154
-3777 y(46.)61 b(The)33 b Fs(vi)f Ft(editing)i(mo)s(de)f(will)g(in)m(v)m
-(ok)m(e)i(the)e Fs(vi)g Ft(editor)h(directly)f(when)f(the)i(`)p
-Fs(v)p Ft(')f(command)g(is)g(run,)330 3886 y(instead)e(of)f(c)m(hec)m
-(king)i Fs($VISUAL)d Ft(and)g Fs($EDITOR)p Ft(.)154 4019
-y(47.)61 b(When)41 b(the)g Fs(xpg_echo)e Ft(option)i(is)g(enabled,)j
+g(\014le)330 2092 y(found)i(in)h Ft($PATH)p Fu(.)154
+2227 y(46.)61 b(The)33 b Ft(vi)f Fu(editing)i(mo)s(de)f(will)g(in)m(v)m
+(ok)m(e)i(the)e Ft(vi)g Fu(editor)h(directly)f(when)f(the)i(`)p
+Ft(v)p Fu(')f(command)g(is)g(run,)330 2336 y(instead)e(of)f(c)m(hec)m
+(king)i Ft($VISUAL)d Fu(and)g Ft($EDITOR)p Fu(.)154 2471
+y(47.)61 b(When)41 b(the)g Ft(xpg_echo)e Fu(option)i(is)g(enabled,)j
(Bash)d(do)s(es)g(not)g(attempt)h(to)g(in)m(terpret)f(an)m(y)h(ar-)330
-4129 y(gumen)m(ts)35 b(to)g Fs(echo)e Ft(as)i(options.)54
+2580 y(gumen)m(ts)35 b(to)g Ft(echo)e Fu(as)i(options.)54
b(Eac)m(h)35 b(argumen)m(t)g(is)f(displa)m(y)m(ed,)j(after)e(escap)s(e)
-g(c)m(haracters)h(are)330 4238 y(con)m(v)m(erted.)154
-4371 y(48.)61 b(The)30 b Fs(ulimit)f Ft(builtin)g(uses)h(a)h(blo)s(c)m
-(k)g(size)g(of)g(512)g(b)m(ytes)g(for)f(the)h(`)p Fs(-c)p
-Ft(')f(and)g(`)p Fs(-f)p Ft(')g(options.)154 4504 y(49.)61
-b(The)39 b(arriv)-5 b(al)41 b(of)f Fs(SIGCHLD)e Ft(when)h(a)h(trap)g
-(is)g(set)h(on)f Fs(SIGCHLD)e Ft(do)s(es)h(not)h(in)m(terrupt)g(the)g
-Fs(wait)330 4613 y Ft(builtin)c(and)h(cause)g(it)h(to)f(return)f
+g(c)m(haracters)h(are)330 2690 y(con)m(v)m(erted.)154
+2824 y(48.)61 b(The)30 b Ft(ulimit)f Fu(builtin)g(uses)h(a)h(blo)s(c)m
+(k)g(size)g(of)g(512)g(b)m(ytes)g(for)f(the)h Ft(-c)f
+Fu(and)g Ft(-f)f Fu(options.)154 2959 y(49.)61 b(The)39
+b(arriv)-5 b(al)41 b(of)f Ft(SIGCHLD)e Fu(when)h(a)h(trap)g(is)g(set)h
+(on)f Ft(SIGCHLD)e Fu(do)s(es)h(not)h(in)m(terrupt)g(the)g
+Ft(wait)330 3068 y Fu(builtin)c(and)h(cause)g(it)h(to)f(return)f
(immediately)-8 b(.)62 b(The)37 b(trap)f(command)h(is)g(run)e(once)j
-(for)f(eac)m(h)330 4723 y(c)m(hild)31 b(that)g(exits.)154
-4855 y(50.)61 b(The)27 b Fs(read)f Ft(builtin)g(ma)m(y)i(b)s(e)e(in)m
+(for)f(eac)m(h)330 3178 y(c)m(hild)31 b(that)g(exits.)154
+3313 y(50.)61 b(The)27 b Ft(read)f Fu(builtin)g(ma)m(y)i(b)s(e)e(in)m
(terrupted)h(b)m(y)g(a)h(signal)f(for)g(whic)m(h)g(a)h(trap)f(has)g(b)s
-(een)f(set.)40 b(If)27 b(Bash)330 4965 y(receiv)m(es)41
-b(a)f(trapp)s(ed)e(signal)i(while)f(executing)h Fs(read)p
-Ft(,)h(the)e(trap)h(handler)e(executes)i(and)f Fs(read)330
-5075 y Ft(returns)29 b(an)h(exit)i(status)e(greater)i(than)e(128.)275
-5230 y(There)k(is)g(other)h Fl(posix)f Ft(b)s(eha)m(vior)h(that)g(Bash)
+(een)f(set.)40 b(If)27 b(Bash)330 3422 y(receiv)m(es)41
+b(a)f(trapp)s(ed)e(signal)i(while)f(executing)h Ft(read)p
+Fu(,)h(the)e(trap)h(handler)e(executes)i(and)f Ft(read)330
+3532 y Fu(returns)29 b(an)h(exit)i(status)e(greater)i(than)e(128.)275
+3691 y(There)k(is)g(other)h Fm(posix)f Fu(b)s(eha)m(vior)h(that)g(Bash)
g(do)s(es)f(not)h(implemen)m(t)g(b)m(y)g(default)f(ev)m(en)i(when)d(in)
-150 5340 y Fl(posix)d Ft(mo)s(de.)40 b(Sp)s(eci\014cally:)p
+150 3801 y Fm(posix)d Fu(mo)s(de.)40 b(Sp)s(eci\014cally:)199
+3935 y(1.)61 b(The)30 b Ft(fc)f Fu(builtin)h(c)m(hec)m(ks)i
+Ft($EDITOR)c Fu(as)j(a)f(program)g(to)h(edit)g(history)f(en)m(tries)h
+(if)f Ft(FCEDIT)f Fu(is)h(unset,)330 4045 y(rather)g(than)g(defaulting)
+h(directly)g(to)g Ft(ed)p Fu(.)40 b Ft(fc)30 b Fu(uses)g
+Ft(ed)g Fu(if)g Ft(EDITOR)f Fu(is)h(unset.)199 4179 y(2.)61
+b(As)29 b(noted)g(ab)s(o)m(v)m(e,)i(Bash)e(requires)g(the)g
+Ft(xpg_echo)e Fu(option)j(to)g(b)s(e)e(enabled)h(for)g(the)g
+Ft(echo)f Fu(builtin)330 4289 y(to)j(b)s(e)f(fully)g(conforman)m(t.)275
+4448 y(Bash)c(can)g(b)s(e)f(con\014gured)h(to)g(b)s(e)g
+Fm(posix)p Fu(-conforman)m(t)g(b)m(y)g(default,)h(b)m(y)f(sp)s
+(ecifying)g(the)g Ft(--enable-)150 4558 y(strict-posix-default)c
+Fu(to)27 b Ft(configure)e Fu(when)h(building)h(\(see)h(Section)g(10.8)g
+([Optional)g(F)-8 b(eatures],)150 4667 y(page)31 b(140\).)p
eop end
%%Page: 97 103
-TeXDict begin 97 102 bop 150 -116 a Ft(Chapter)30 b(6:)41
-b(Bash)30 b(F)-8 b(eatures)2484 b(97)199 299 y(1.)61
-b(The)30 b Fs(fc)f Ft(builtin)h(c)m(hec)m(ks)i Fs($EDITOR)c
-Ft(as)j(a)f(program)g(to)h(edit)g(history)f(en)m(tries)h(if)f
-Fs(FCEDIT)f Ft(is)h(unset,)330 408 y(rather)g(than)g(defaulting)h
-(directly)g(to)g Fs(ed)p Ft(.)40 b Fs(fc)30 b Ft(uses)g
-Fs(ed)g Ft(if)g Fs(EDITOR)f Ft(is)h(unset.)199 543 y(2.)61
-b(As)29 b(noted)g(ab)s(o)m(v)m(e,)i(Bash)e(requires)g(the)g
-Fs(xpg_echo)e Ft(option)j(to)g(b)s(e)e(enabled)h(for)g(the)g
-Fs(echo)f Ft(builtin)330 653 y(to)j(b)s(e)f(fully)g(conforman)m(t.)275
-812 y(Bash)66 b(can)h(b)s(e)f(con\014gured)g(to)i(b)s(e)e
-Fl(posix)p Ft(-conforman)m(t)h(b)m(y)f(default,)77 b(b)m(y)66
-b(sp)s(ecifying)h(the)150 922 y(`)p Fs(--enable-strict-posix-def)o
-(ault)o Ft(')i(to)76 b Fs(configure)c Ft(when)i(building)g(\(see)i
-(Section)f(10.8)150 1031 y([Optional)31 b(F)-8 b(eatures],)32
-b(page)f(141\).)p eop end
-%%Page: 98 104
-TeXDict begin 98 103 bop 150 -116 a Ft(Chapter)30 b(7:)41
-b(Job)30 b(Con)m(trol)2571 b(98)150 299 y Fo(7)80 b(Job)54
-b(Con)l(trol)150 521 y Ft(This)25 b(c)m(hapter)i(discusses)f(what)g
+TeXDict begin 97 102 bop 150 -116 a Fu(Chapter)30 b(7:)41
+b(Job)30 b(Con)m(trol)2571 b(97)150 299 y Fp(7)80 b(Job)54
+b(Con)l(trol)150 521 y Fu(This)25 b(c)m(hapter)i(discusses)f(what)g
(job)f(con)m(trol)j(is,)f(ho)m(w)f(it)h(w)m(orks,)g(and)f(ho)m(w)g
(Bash)g(allo)m(ws)h(y)m(ou)g(to)g(access)150 631 y(its)k(facilities.)
-150 858 y Fr(7.1)68 b(Job)45 b(Con)l(trol)h(Basics)150
-1018 y Ft(Job)27 b(con)m(trol)i(refers)e(to)h(the)g(abilit)m(y)h(to)f
+150 858 y Fs(7.1)68 b(Job)45 b(Con)l(trol)h(Basics)150
+1018 y Fu(Job)27 b(con)m(trol)i(refers)e(to)h(the)g(abilit)m(y)h(to)f
(selectiv)m(ely)j(stop)c(\(susp)s(end\))f(the)i(execution)h(of)e(pro)s
(cesses)h(and)150 1127 y(con)m(tin)m(ue)38 b(\(resume\))g(their)f
(execution)h(at)g(a)g(later)g(p)s(oin)m(t.)61 b(A)37
1237 y(via)27 b(an)e(in)m(teractiv)m(e)k(in)m(terface)f(supplied)d
(join)m(tly)h(b)m(y)g(the)h(op)s(erating)f(system)g(k)m(ernel's)h
(terminal)f(driv)m(er)150 1347 y(and)k(Bash.)275 1479
-y(The)23 b(shell)i(asso)s(ciates)h(a)f Fq(job)h Ft(with)e(eac)m(h)i
+y(The)23 b(shell)i(asso)s(ciates)h(a)f Fr(job)h Fu(with)e(eac)m(h)i
(pip)s(eline.)38 b(It)25 b(k)m(eeps)f(a)h(table)h(of)e(curren)m(tly)h
(executing)g(jobs,)150 1588 y(whic)m(h)33 b(ma)m(y)i(b)s(e)e(listed)h
-(with)f(the)h Fs(jobs)f Ft(command.)50 b(When)33 b(Bash)h(starts)g(a)g
+(with)f(the)h Ft(jobs)f Fu(command.)50 b(When)33 b(Bash)h(starts)g(a)g
(job)g(async)m(hronously)-8 b(,)34 b(it)150 1698 y(prin)m(ts)c(a)h
-(line)f(that)h(lo)s(oks)g(lik)m(e:)390 1830 y Fs([1])47
-b(25647)150 1962 y Ft(indicating)34 b(that)g(this)f(job)g(is)g(job)g(n)
-m(um)m(b)s(er)f(1)i(and)f(that)g(the)h(pro)s(cess)f Fl(id)g
-Ft(of)g(the)h(last)g(pro)s(cess)f(in)g(the)150 2072 y(pip)s(eline)42
+(line)f(that)h(lo)s(oks)g(lik)m(e:)390 1830 y Ft([1])47
+b(25647)150 1962 y Fu(indicating)34 b(that)g(this)f(job)g(is)g(job)g(n)
+m(um)m(b)s(er)f(1)i(and)f(that)g(the)h(pro)s(cess)f Fm(id)g
+Fu(of)g(the)h(last)g(pro)s(cess)f(in)g(the)150 2072 y(pip)s(eline)42
b(asso)s(ciated)i(with)e(this)g(job)g(is)h(25647.)78
b(All)43 b(of)g(the)g(pro)s(cesses)f(in)g(a)h(single)g(pip)s(eline)f
(are)150 2181 y(mem)m(b)s(ers)30 b(of)g(the)h(same)f(job.)41
-b(Bash)30 b(uses)g(the)h Fq(job)h Ft(abstraction)f(as)g(the)g(basis)f
+b(Bash)30 b(uses)g(the)h Fr(job)h Fu(abstraction)f(as)g(the)g(basis)f
(for)g(job)g(con)m(trol.)275 2313 y(T)-8 b(o)23 b(facilitate)j(the)d
(implemen)m(tation)i(of)f(the)f(user)f(in)m(terface)j(to)f(job)f(con)m
(trol,)j(the)d(op)s(erating)h(system)150 2423 y(main)m(tains)j(the)f
(notion)h(of)f(a)g(curren)m(t)g(terminal)g(pro)s(cess)g(group)g
-Fl(id)p Ft(.)39 b(Mem)m(b)s(ers)26 b(of)g(this)g(pro)s(cess)f(group)150
+Fm(id)p Fu(.)39 b(Mem)m(b)s(ers)26 b(of)g(this)g(pro)s(cess)f(group)150
2533 y(\(pro)s(cesses)h(whose)g(pro)s(cess)g(group)g
-Fl(id)g Ft(is)h(equal)g(to)g(the)f(curren)m(t)g(terminal)h(pro)s(cess)f
-(group)f Fl(id)p Ft(\))i(receiv)m(e)150 2642 y(k)m(eyb)s
-(oard-generated)22 b(signals)g(suc)m(h)e(as)h Fs(SIGINT)p
-Ft(.)36 b(These)21 b(pro)s(cesses)g(are)g(said)g(to)g(b)s(e)g(in)f(the)
+Fm(id)g Fu(is)h(equal)g(to)g(the)f(curren)m(t)g(terminal)h(pro)s(cess)f
+(group)f Fm(id)p Fu(\))i(receiv)m(e)150 2642 y(k)m(eyb)s
+(oard-generated)22 b(signals)g(suc)m(h)e(as)h Ft(SIGINT)p
+Fu(.)36 b(These)21 b(pro)s(cesses)g(are)g(said)g(to)g(b)s(e)g(in)f(the)
h(foreground.)150 2752 y(Bac)m(kground)38 b(pro)s(cesses)f(are)h(those)
-g(whose)f(pro)s(cess)g(group)g Fl(id)h Ft(di\013ers)f(from)g(the)g
+g(whose)f(pro)s(cess)g(group)g Fm(id)h Fu(di\013ers)f(from)g(the)g
(terminal's;)42 b(suc)m(h)150 2861 y(pro)s(cesses)24
b(are)g(imm)m(une)g(to)g(k)m(eyb)s(oard-generated)h(signals.)40
b(Only)23 b(foreground)g(pro)s(cesses)h(are)g(allo)m(w)m(ed)150
2971 y(to)g(read)e(from)h(or,)h(if)f(the)g(user)f(so)i(sp)s(eci\014es)e
-(with)h Fs(stty)29 b(tostop)p Ft(,)23 b(write)g(to)g(the)h(terminal.)38
+(with)h Ft(stty)29 b(tostop)p Fu(,)23 b(write)g(to)g(the)h(terminal.)38
b(Bac)m(kground)150 3081 y(pro)s(cesses)27 b(whic)m(h)g(attempt)h(to)f
-(read)g(from)g(\(write)g(to)h(when)e Fs(stty)j(tostop)d
-Ft(is)h(in)f(e\013ect\))j(the)e(terminal)150 3190 y(are)32
-b(sen)m(t)g(a)g Fs(SIGTTIN)e Ft(\()p Fs(SIGTTOU)p Ft(\))g(signal)i(b)m
+(read)g(from)g(\(write)g(to)h(when)e Ft(stty)j(tostop)d
+Fu(is)h(in)f(e\013ect\))j(the)e(terminal)150 3190 y(are)32
+b(sen)m(t)g(a)g Ft(SIGTTIN)e Fu(\()p Ft(SIGTTOU)p Fu(\))g(signal)i(b)m
(y)g(the)g(k)m(ernel's)g(terminal)g(driv)m(er,)g(whic)m(h,)g(unless)f
(caugh)m(t,)150 3300 y(susp)s(ends)d(the)i(pro)s(cess.)275
3432 y(If)k(the)i(op)s(erating)g(system)f(on)h(whic)m(h)f(Bash)g(is)h
(running)d(supp)s(orts)h(job)h(con)m(trol,)j(Bash)e(con)m(tains)150
3541 y(facilities)30 b(to)f(use)f(it.)40 b(T)m(yping)28
-b(the)g Fq(susp)s(end)h Ft(c)m(haracter)h(\(t)m(ypically)g(`)p
-Fs(^Z)p Ft(',)f(Con)m(trol-Z\))g(while)f(a)g(pro)s(cess)150
+b(the)g Fr(susp)s(end)h Fu(c)m(haracter)h(\(t)m(ypically)g(`)p
+Ft(^Z)p Fu(',)f(Con)m(trol-Z\))g(while)f(a)g(pro)s(cess)150
3651 y(is)42 b(running)f(causes)i(that)g(pro)s(cess)f(to)h(b)s(e)f
(stopp)s(ed)f(and)h(returns)f(con)m(trol)j(to)f(Bash.)77
-b(T)m(yping)42 b(the)150 3761 y Fq(dela)m(y)m(ed)k(susp)s(end)f
-Ft(c)m(haracter)h(\(t)m(ypically)g(`)p Fs(^Y)p Ft(',)i(Con)m(trol-Y\))e
+b(T)m(yping)42 b(the)150 3761 y Fr(dela)m(y)m(ed)k(susp)s(end)f
+Fu(c)m(haracter)h(\(t)m(ypically)g(`)p Ft(^Y)p Fu(',)i(Con)m(trol-Y\))e
(causes)e(the)h(pro)s(cess)e(to)i(b)s(e)f(stopp)s(ed)150
3870 y(when)26 b(it)i(attempts)h(to)f(read)f(input)g(from)f(the)i
(terminal,)h(and)e(con)m(trol)h(to)g(b)s(e)f(returned)f(to)j(Bash.)39
b(The)150 3980 y(user)e(then)g(manipulates)h(the)g(state)h(of)f(this)f
-(job,)j(using)d(the)h Fs(bg)f Ft(command)g(to)h(con)m(tin)m(ue)h(it)f
-(in)g(the)150 4089 y(bac)m(kground,)g(the)f Fs(fg)g Ft(command)f(to)i
+(job,)j(using)d(the)h Ft(bg)f Fu(command)g(to)h(con)m(tin)m(ue)h(it)f
+(in)g(the)150 4089 y(bac)m(kground,)g(the)f Ft(fg)g Fu(command)f(to)i
(con)m(tin)m(ue)g(it)f(in)f(the)h(foreground,)h(or)f(the)g
-Fs(kill)f Ft(command)g(to)150 4199 y(kill)27 b(it.)40
-b(A)27 b(`)p Fs(^Z)p Ft(')g(tak)m(es)h(e\013ect)g(immediately)-8
+Ft(kill)f Fu(command)g(to)150 4199 y(kill)27 b(it.)40
+b(A)27 b(`)p Ft(^Z)p Fu(')g(tak)m(es)h(e\013ect)g(immediately)-8
b(,)29 b(and)d(has)h(the)f(additional)i(side)e(e\013ect)j(of)d(causing)
h(p)s(ending)150 4309 y(output)j(and)g(t)m(yp)s(eahead)h(to)g(b)s(e)e
(discarded.)275 4441 y(There)j(are)g(a)h(n)m(um)m(b)s(er)e(of)i(w)m(a)m
(ys)g(to)h(refer)e(to)h(a)g(job)f(in)g(the)h(shell.)47
-b(The)32 b(c)m(haracter)i(`)p Fs(\045)p Ft(')f(in)m(tro)s(duces)150
-4550 y(a)e(job)f(sp)s(eci\014cation)h(\()p Fq(jobsp)s(ec)6
-b Ft(\).)275 4682 y(Job)31 b(n)m(um)m(b)s(er)f Fs(n)h
-Ft(ma)m(y)h(b)s(e)f(referred)g(to)h(as)g(`)p Fs(\045n)p
-Ft('.)44 b(The)31 b(sym)m(b)s(ols)g(`)p Fs(\045\045)p
-Ft(')h(and)f(`)p Fs(\045+)p Ft(')g(refer)h(to)g(the)g(shell's)150
+b(The)32 b(c)m(haracter)i(`)p Ft(\045)p Fu(')f(in)m(tro)s(duces)150
+4550 y(a)e(job)f(sp)s(eci\014cation)h(\()p Fr(jobsp)s(ec)6
+b Fu(\).)275 4682 y(Job)31 b(n)m(um)m(b)s(er)f Ft(n)h
+Fu(ma)m(y)h(b)s(e)f(referred)g(to)h(as)g(`)p Ft(\045n)p
+Fu('.)44 b(The)31 b(sym)m(b)s(ols)g(`)p Ft(\045\045)p
+Fu(')h(and)f(`)p Ft(\045+)p Fu(')g(refer)h(to)g(the)g(shell's)150
4792 y(notion)k(of)f(the)g(curren)m(t)g(job,)h(whic)m(h)f(is)g(the)g
(last)h(job)f(stopp)s(ed)f(while)h(it)h(w)m(as)g(in)e(the)i(foreground)
e(or)150 4902 y(started)27 b(in)g(the)g(bac)m(kground.)40
-b(A)27 b(single)g(`)p Fs(\045)p Ft(')g(\(with)g(no)g(accompan)m(ying)i
+b(A)27 b(single)g(`)p Ft(\045)p Fu(')g(\(with)g(no)g(accompan)m(ying)i
(job)d(sp)s(eci\014cation\))i(also)g(refers)150 5011
y(to)k(the)e(curren)m(t)h(job.)42 b(The)30 b(previous)g(job)h(ma)m(y)g
-(b)s(e)f(referenced)h(using)f(`)p Fs(\045-)p Ft('.)42
+(b)s(e)f(referenced)h(using)f(`)p Ft(\045-)p Fu('.)42
b(If)30 b(there)h(is)g(only)g(a)g(single)150 5121 y(job,)g(`)p
-Fs(\045+)p Ft(')g(and)f(`)p Fs(\045-)p Ft(')h(can)h(b)s(oth)e(b)s(e)g
+Ft(\045+)p Fu(')g(and)f(`)p Ft(\045-)p Fu(')h(can)h(b)s(oth)e(b)s(e)g
(used)h(to)g(refer)g(to)h(that)g(job.)42 b(In)30 b(output)h(p)s
(ertaining)g(to)g(jobs)g(\(e.g.,)150 5230 y(the)39 b(output)f(of)g(the)
-h Fs(jobs)e Ft(command\),)k(the)d(curren)m(t)h(job)f(is)g(alw)m(a)m(ys)
-i(\015agged)f(with)f(a)h(`)p Fs(+)p Ft(',)i(and)d(the)150
-5340 y(previous)30 b(job)g(with)g(a)h(`)p Fs(-)p Ft('.)p
+h Ft(jobs)e Fu(command\),)k(the)d(curren)m(t)h(job)f(is)g(alw)m(a)m(ys)
+i(\015agged)f(with)f(a)h(`)p Ft(+)p Fu(',)i(and)d(the)150
+5340 y(previous)30 b(job)g(with)g(a)h(`)p Ft(-)p Fu('.)p
eop end
-%%Page: 99 105
-TeXDict begin 99 104 bop 150 -116 a Ft(Chapter)30 b(7:)41
-b(Job)30 b(Con)m(trol)2571 b(99)275 299 y(A)38 b(job)g(ma)m(y)h(also)g
+%%Page: 98 104
+TeXDict begin 98 103 bop 150 -116 a Fu(Chapter)30 b(7:)41
+b(Job)30 b(Con)m(trol)2571 b(98)275 299 y(A)38 b(job)g(ma)m(y)h(also)g
(b)s(e)f(referred)f(to)j(using)d(a)i(pre\014x)e(of)i(the)f(name)h(used)
e(to)i(start)g(it,)i(or)e(using)f(a)150 408 y(substring)29
b(that)i(app)s(ears)f(in)g(its)h(command)f(line.)41 b(F)-8
-b(or)31 b(example,)g(`)p Fs(\045ce)p Ft(')f(refers)g(to)h(a)g(stopp)s
-(ed)e Fs(ce)h Ft(job.)150 518 y(Using)d(`)p Fs(\045?ce)p
-Ft(',)g(on)f(the)h(other)g(hand,)g(refers)f(to)h(an)m(y)g(job)g(con)m
-(taining)h(the)f(string)f(`)p Fs(ce)p Ft(')h(in)f(its)h(command)150
+b(or)31 b(example,)g(`)p Ft(\045ce)p Fu(')f(refers)g(to)h(a)g(stopp)s
+(ed)e Ft(ce)h Fu(job.)150 518 y(Using)d(`)p Ft(\045?ce)p
+Fu(',)g(on)f(the)h(other)g(hand,)g(refers)f(to)h(an)m(y)g(job)g(con)m
+(taining)h(the)f(string)f(`)p Ft(ce)p Fu(')h(in)f(its)h(command)150
628 y(line.)41 b(If)30 b(the)h(pre\014x)e(or)h(substring)f(matc)m(hes)j
(more)e(than)h(one)f(job,)h(Bash)f(rep)s(orts)g(an)g(error.)275
762 y(Simply)g(naming)h(a)g(job)g(can)g(b)s(e)f(used)h(to)g(bring)f(it)
-i(in)m(to)g(the)f(foreground:)41 b(`)p Fs(\0451)p Ft(')31
-b(is)g(a)h(synon)m(ym)e(for)150 871 y(`)p Fs(fg)g(\0451)p
-Ft(',)i(bringing)f(job)g(1)g(from)g(the)h(bac)m(kground)f(in)m(to)i
-(the)e(foreground.)44 b(Similarly)-8 b(,)32 b(`)p Fs(\0451)e(&)p
-Ft(')i(resumes)150 981 y(job)e(1)h(in)f(the)g(bac)m(kground,)h(equiv)-5
-b(alen)m(t)32 b(to)f(`)p Fs(bg)f(\0451)p Ft(')275 1115
+i(in)m(to)g(the)f(foreground:)41 b(`)p Ft(\0451)p Fu(')31
+b(is)g(a)h(synon)m(ym)e(for)150 871 y(`)p Ft(fg)g(\0451)p
+Fu(',)i(bringing)f(job)g(1)g(from)g(the)h(bac)m(kground)f(in)m(to)i
+(the)e(foreground.)44 b(Similarly)-8 b(,)32 b(`)p Ft(\0451)e(&)p
+Fu(')i(resumes)150 981 y(job)e(1)h(in)f(the)g(bac)m(kground,)h(equiv)-5
+b(alen)m(t)32 b(to)f(`)p Ft(bg)f(\0451)p Fu(')275 1115
y(The)g(shell)i(learns)f(immediately)i(whenev)m(er)e(a)h(job)f(c)m
(hanges)h(state.)45 b(Normally)-8 b(,)33 b(Bash)e(w)m(aits)i(un)m(til)
150 1224 y(it)25 b(is)g(ab)s(out)f(to)i(prin)m(t)e(a)h(prompt)f(b)s
(efore)g(rep)s(orting)h(c)m(hanges)g(in)g(a)g(job's)f(status)h(so)g(as)
-g(to)g(not)g(in)m(terrupt)150 1334 y(an)m(y)g(other)g(output.)39
-b(If)24 b(the)i(`)p Fs(-b)p Ft(')e(option)i(to)f(the)g
-Fs(set)f Ft(builtin)h(is)g(enabled,)h(Bash)f(rep)s(orts)f(suc)m(h)h(c)m
-(hanges)150 1443 y(immediately)g(\(see)g(Section)g(4.3.1)g([The)f(Set)g
-(Builtin],)i(page)f(59\).)40 b(An)m(y)24 b(trap)f(on)h
-Fs(SIGCHLD)e Ft(is)i(executed)150 1553 y(for)30 b(eac)m(h)i(c)m(hild)e
+g(to)g(not)g(in)m(terrupt)150 1334 y(an)m(y)k(other)f(output.)40
+b(If)28 b(the)g Ft(-b)g Fu(option)g(to)h(the)g Ft(set)e
+Fu(builtin)h(is)g(enabled,)h(Bash)g(rep)s(orts)e(suc)m(h)h(c)m(hanges)
+150 1443 y(immediately)d(\(see)g(Section)g(4.3.1)g([The)f(Set)g
+(Builtin],)i(page)f(58\).)40 b(An)m(y)24 b(trap)f(on)h
+Ft(SIGCHLD)e Fu(is)i(executed)150 1553 y(for)30 b(eac)m(h)i(c)m(hild)e
(pro)s(cess)g(that)h(exits.)275 1687 y(If)25 b(an)h(attempt)h(to)g
(exit)g(Bash)f(is)h(made)f(while)g(jobs)f(are)i(stopp)s(ed,)f(\(or)h
-(running,)e(if)h(the)g Fs(checkjobs)150 1796 y Ft(option)e(is)f
+(running,)e(if)h(the)g Ft(checkjobs)150 1796 y Fu(option)e(is)f
(enabled)h({)g(see)g(Section)g(4.3.2)h([The)e(Shopt)g(Builtin],)j(page)
-e(63\),)i(the)e(shell)f(prin)m(ts)g(a)h(w)m(arning)150
-1906 y(message,)k(and)c(if)i(the)f Fs(checkjobs)e Ft(option)j(is)f
+e(62\),)i(the)e(shell)f(prin)m(ts)g(a)h(w)m(arning)150
+1906 y(message,)k(and)c(if)i(the)f Ft(checkjobs)e Fu(option)j(is)f
(enabled,)i(lists)e(the)h(jobs)f(and)f(their)i(statuses.)39
-b(The)25 b Fs(jobs)150 2016 y Ft(command)36 b(ma)m(y)h(then)f(b)s(e)f
+b(The)25 b Ft(jobs)150 2016 y Fu(command)36 b(ma)m(y)h(then)f(b)s(e)f
(used)g(to)i(insp)s(ect)f(their)g(status.)59 b(If)36
b(a)g(second)g(attempt)i(to)f(exit)g(is)f(made)150 2125
y(without)e(an)f(in)m(terv)m(ening)i(command,)f(Bash)g(do)s(es)f(not)h
(prin)m(t)g(another)f(w)m(arning,)i(and)e(an)m(y)h(stopp)s(ed)150
-2235 y(jobs)c(are)h(terminated.)150 2466 y Fr(7.2)68
-b(Job)45 b(Con)l(trol)h(Builtins)150 2650 y Fs(bg)870
-2784 y(bg)h([)p Fi(jobspec)56 b Fs(...)o(])630 2918 y
-Ft(Resume)24 b(eac)m(h)h(susp)s(ended)d(job)i Fq(jobsp)s(ec)29
-b Ft(in)24 b(the)g(bac)m(kground,)h(as)g(if)f(it)h(had)e(b)s(een)g
-(started)630 3027 y(with)32 b(`)p Fs(&)p Ft('.)45 b(If)31
-b Fq(jobsp)s(ec)37 b Ft(is)32 b(not)g(supplied,)f(the)h(curren)m(t)g
-(job)f(is)h(used.)45 b(The)31 b(return)g(status)630 3137
-y(is)i(zero)g(unless)f(it)h(is)g(run)e(when)h(job)g(con)m(trol)i(is)f
-(not)g(enabled,)h(or,)f(when)f(run)f(with)h(job)630 3246
-y(con)m(trol)h(enabled,)g(an)m(y)f Fq(jobsp)s(ec)37 b
-Ft(w)m(as)32 b(not)g(found)f(or)g(sp)s(eci\014es)h(a)g(job)g(that)g(w)m
-(as)g(started)630 3356 y(without)e(job)g(con)m(trol.)150
-3514 y Fs(fg)870 3648 y(fg)47 b([)p Fi(jobspec)11 b Fs(])630
-3782 y Ft(Resume)43 b(the)g(job)g Fq(jobsp)s(ec)48 b
-Ft(in)43 b(the)g(foreground)g(and)f(mak)m(e)j(it)e(the)h(curren)m(t)f
-(job.)78 b(If)630 3891 y Fq(jobsp)s(ec)41 b Ft(is)c(not)f(supplied,)h
+2235 y(jobs)c(are)h(terminated.)150 2466 y Fs(7.2)68
+b(Job)45 b(Con)l(trol)h(Builtins)150 2650 y Ft(bg)870
+2784 y(bg)h([)p Fj(jobspec)f Ft(...)o(])630 2918 y Fu(Resume)24
+b(eac)m(h)h(susp)s(ended)d(job)i Fr(jobsp)s(ec)29 b Fu(in)24
+b(the)g(bac)m(kground,)h(as)g(if)f(it)h(had)e(b)s(een)g(started)630
+3027 y(with)32 b(`)p Ft(&)p Fu('.)45 b(If)31 b Fr(jobsp)s(ec)37
+b Fu(is)32 b(not)g(supplied,)f(the)h(curren)m(t)g(job)f(is)h(used.)45
+b(The)31 b(return)g(status)630 3137 y(is)i(zero)g(unless)f(it)h(is)g
+(run)e(when)h(job)g(con)m(trol)i(is)f(not)g(enabled,)h(or,)f(when)f
+(run)f(with)h(job)630 3246 y(con)m(trol)h(enabled,)g(an)m(y)f
+Fr(jobsp)s(ec)37 b Fu(w)m(as)32 b(not)g(found)f(or)g(sp)s(eci\014es)h
+(a)g(job)g(that)g(w)m(as)g(started)630 3356 y(without)e(job)g(con)m
+(trol.)150 3514 y Ft(fg)870 3648 y(fg)47 b([)p Fj(jobspec)p
+Ft(])630 3782 y Fu(Resume)c(the)g(job)g Fr(jobsp)s(ec)48
+b Fu(in)43 b(the)g(foreground)g(and)f(mak)m(e)j(it)e(the)h(curren)m(t)f
+(job.)78 b(If)630 3891 y Fr(jobsp)s(ec)41 b Fu(is)c(not)f(supplied,)h
(the)f(curren)m(t)h(job)f(is)g(used.)58 b(The)36 b(return)f(status)h
(is)h(that)g(of)630 4001 y(the)d(command)g(placed)h(in)m(to)g(the)f
(foreground,)g(or)g(non-zero)h(if)f(run)f(when)g(job)g(con)m(trol)630
4111 y(is)i(disabled)g(or,)i(when)d(run)g(with)h(job)g(con)m(trol)h
-(enabled,)h Fq(jobsp)s(ec)j Ft(do)s(es)35 b(not)h(sp)s(ecify)f(a)630
-4220 y(v)-5 b(alid)31 b(job)f(or)g Fq(jobsp)s(ec)35 b
-Ft(sp)s(eci\014es)30 b(a)h(job)f(that)h(w)m(as)g(started)g(without)f
-(job)g(con)m(trol.)150 4378 y Fs(jobs)870 4512 y(jobs)47
-b([-lnprs])e([)p Fi(jobspec)11 b Fs(])870 4622 y(jobs)47
-b(-x)g Fi(command)56 b Fs([)p Fi(arguments)11 b Fs(])630
-4756 y Ft(The)30 b(\014rst)f(form)h(lists)h(the)g(activ)m(e)h(jobs.)41
+(enabled,)h Fr(jobsp)s(ec)j Fu(do)s(es)35 b(not)h(sp)s(ecify)f(a)630
+4220 y(v)-5 b(alid)31 b(job)f(or)g Fr(jobsp)s(ec)35 b
+Fu(sp)s(eci\014es)30 b(a)h(job)f(that)h(w)m(as)g(started)g(without)f
+(job)g(con)m(trol.)150 4378 y Ft(jobs)870 4512 y(jobs)47
+b([-lnprs])e([)p Fj(jobspec)p Ft(])870 4622 y(jobs)i(-x)g
+Fj(command)f Ft([)p Fj(arguments)p Ft(])630 4756 y Fu(The)30
+b(\014rst)f(form)h(lists)h(the)g(activ)m(e)h(jobs.)41
b(The)30 b(options)g(ha)m(v)m(e)i(the)e(follo)m(wing)i(meanings:)630
-4914 y Fs(-l)384 b Ft(List)31 b(pro)s(cess)f Fl(id)p
-Ft(s)g(in)g(addition)h(to)g(the)f(normal)h(information.)630
-5072 y Fs(-n)384 b Ft(Displa)m(y)26 b(information)f(only)h(ab)s(out)e
+4914 y Ft(-l)384 b Fu(List)31 b(pro)s(cess)f Fm(id)p
+Fu(s)g(in)g(addition)h(to)g(the)f(normal)h(information.)630
+5072 y Ft(-n)384 b Fu(Displa)m(y)26 b(information)f(only)h(ab)s(out)e
(jobs)h(that)g(ha)m(v)m(e)i(c)m(hanged)e(status)h(since)1110
5182 y(the)31 b(user)e(w)m(as)i(last)g(noti\014ed)f(of)h(their)f
-(status.)630 5340 y Fs(-p)384 b Ft(List)31 b(only)f(the)h(pro)s(cess)f
-Fl(id)g Ft(of)h(the)f(job's)g(pro)s(cess)g(group)g(leader.)p
+(status.)630 5340 y Ft(-p)384 b Fu(List)31 b(only)f(the)h(pro)s(cess)f
+Fm(id)g Fu(of)h(the)f(job's)g(pro)s(cess)g(group)g(leader.)p
eop end
-%%Page: 100 106
-TeXDict begin 100 105 bop 150 -116 a Ft(Chapter)30 b(7:)41
-b(Job)30 b(Con)m(trol)2526 b(100)630 299 y Fs(-r)384
-b Ft(Displa)m(y)32 b(only)e(running)f(jobs.)630 450 y
-Fs(-s)384 b Ft(Displa)m(y)32 b(only)e(stopp)s(ed)f(jobs.)630
-602 y(If)23 b Fq(jobsp)s(ec)28 b Ft(is)c(giv)m(en,)i(output)d(is)h
-(restricted)g(to)g(information)g(ab)s(out)f(that)h(job.)39
-b(If)23 b Fq(jobsp)s(ec)630 711 y Ft(is)30 b(not)h(supplied,)e(the)i
-(status)g(of)f(all)h(jobs)f(is)h(listed.)630 842 y(If)g(the)g(`)p
-Fs(-x)p Ft(')g(option)h(is)f(supplied,)g Fs(jobs)f Ft(replaces)i(an)m
-(y)f Fq(jobsp)s(ec)37 b Ft(found)29 b(in)i Fq(command)k
-Ft(or)630 951 y Fq(argumen)m(ts)41 b Ft(with)36 b(the)i(corresp)s
-(onding)d(pro)s(cess)i(group)f Fl(id)p Ft(,)j(and)d(executes)i
-Fq(command)t Ft(,)630 1061 y(passing)30 b(it)h Fq(argumen)m(t)r
-Ft(s,)g(returning)f(its)g(exit)i(status.)150 1212 y Fs(kill)870
-1343 y(kill)47 b([-s)g Fi(sigspec)11 b Fs(])45 b([-n)i
-Fi(signum)11 b Fs(])45 b([-)p Fi(sigspec)11 b Fs(])44
-b Fi(jobspec)57 b Fs(or)47 b Fi(pid)870 1452 y Fs(kill)g(-l)g([)p
-Fi(exit_status)11 b Fs(])630 1583 y Ft(Send)22 b(a)i(signal)g(sp)s
-(eci\014ed)f(b)m(y)g Fq(sigsp)s(ec)29 b Ft(or)24 b Fq(sign)m(um)f
-Ft(to)h(the)g(pro)s(cess)f(named)g(b)m(y)g(job)g(sp)s(eci\014-)630
-1692 y(cation)j Fq(jobsp)s(ec)k Ft(or)25 b(pro)s(cess)g
-Fl(id)g Fq(pid)t Ft(.)38 b Fq(sigsp)s(ec)31 b Ft(is)25
-b(either)g(a)h(case-insensitiv)m(e)h(signal)f(name)630
-1802 y(suc)m(h)k(as)h Fs(SIGINT)d Ft(\(with)j(or)f(without)h(the)f
-Fs(SIG)g Ft(pre\014x\))f(or)i(a)f(signal)h(n)m(um)m(b)s(er;)f
-Fq(sign)m(um)g Ft(is)630 1911 y(a)i(signal)g(n)m(um)m(b)s(er.)43
-b(If)31 b Fq(sigsp)s(ec)37 b Ft(and)31 b Fq(sign)m(um)g
-Ft(are)h(not)f(presen)m(t,)h Fs(SIGTERM)e Ft(is)h(used.)43
-b(The)630 2021 y(`)p Fs(-l)p Ft(')34 b(option)g(lists)h(the)f(signal)h
-(names.)51 b(If)33 b(an)m(y)i(argumen)m(ts)f(are)g(supplied)f(when)g(`)
-p Fs(-l)p Ft(')h(is)630 2131 y(giv)m(en,)e(the)g(names)e(of)i(the)f
+%%Page: 99 105
+TeXDict begin 99 104 bop 150 -116 a Fu(Chapter)30 b(7:)41
+b(Job)30 b(Con)m(trol)2571 b(99)630 299 y Ft(-r)384 b
+Fu(Displa)m(y)32 b(only)e(running)f(jobs.)630 461 y Ft(-s)384
+b Fu(Displa)m(y)32 b(only)e(stopp)s(ed)f(jobs.)630 622
+y(If)23 b Fr(jobsp)s(ec)28 b Fu(is)23 b(giv)m(en,)i(output)e(is)g
+(restricted)h(to)g(information)f(ab)s(out)g(that)h(job.)37
+b(If)23 b Fr(jobsp)s(ec)630 732 y Fu(is)30 b(not)h(supplied,)e(the)i
+(status)g(of)f(all)h(jobs)f(is)h(listed.)630 868 y(If)k(the)g
+Ft(-x)f Fu(option)i(is)f(supplied,)g Ft(jobs)f Fu(replaces)i(an)m(y)f
+Fr(jobsp)s(ec)40 b Fu(found)34 b(in)h Fr(command)j Fu(or)630
+977 y Fr(argumen)m(ts)j Fu(with)c(the)h(corresp)s(onding)e(pro)s(cess)h
+(group)f Fm(id)p Fu(,)k(and)c(executes)j Fr(command)p
+Fu(,)630 1087 y(passing)30 b(it)h Fr(argumen)m(t)r Fu(s,)g(returning)f
+(its)g(exit)i(status.)150 1249 y Ft(kill)870 1384 y(kill)47
+b([-s)g Fj(sigspec)p Ft(])e([-n)i Fj(signum)p Ft(])f([-)p
+Fj(sigspec)p Ft(])f Fj(jobspec)h Ft(or)h Fj(pid)870 1494
+y Ft(kill)g(-l)g([)p Fj(exit_status)p Ft(])630 1630 y
+Fu(Send)22 b(a)i(signal)g(sp)s(eci\014ed)f(b)m(y)g Fr(sigsp)s(ec)29
+b Fu(or)24 b Fr(sign)m(um)f Fu(to)h(the)g(pro)s(cess)f(named)g(b)m(y)g
+(job)g(sp)s(eci\014-)630 1739 y(cation)k Fr(jobsp)s(ec)j
+Fu(or)25 b(pro)s(cess)g Fm(id)h Fr(pid)p Fu(.)38 b Fr(sigsp)s(ec)31
+b Fu(is)25 b(either)h(a)g(case-insensitiv)m(e)i(signal)e(name)630
+1849 y(suc)m(h)37 b(as)g Ft(SIGINT)f Fu(\(with)h(or)g(without)g(the)g
+Ft(SIG)g Fu(pre\014x\))f(or)h(a)h(signal)g(n)m(um)m(b)s(er;)h
+Fr(sign)m(um)630 1958 y Fu(is)g(a)f(signal)i(n)m(um)m(b)s(er.)63
+b(If)39 b Fr(sigsp)s(ec)44 b Fu(and)38 b Fr(sign)m(um)g
+Fu(are)h(not)g(presen)m(t,)h Ft(SIGTERM)d Fu(is)h(used.)630
+2068 y(The)27 b Ft(-l)h Fu(option)g(lists)h(the)f(signal)h(names.)39
+b(If)28 b(an)m(y)g(argumen)m(ts)h(are)f(supplied)f(when)g
+Ft(-l)g Fu(is)630 2178 y(giv)m(en,)32 b(the)g(names)e(of)i(the)f
(signals)g(corresp)s(onding)f(to)i(the)f(argumen)m(ts)g(are)h(listed,)g
-(and)630 2240 y(the)c(return)f(status)h(is)g(zero.)41
-b Fq(exit)p 1796 2240 28 4 v 41 w(status)32 b Ft(is)c(a)g(n)m(um)m(b)s
+(and)630 2287 y(the)c(return)f(status)h(is)g(zero.)41
+b Fr(exit)p 1796 2287 28 4 v 41 w(status)32 b Fu(is)c(a)g(n)m(um)m(b)s
(er)f(sp)s(ecifying)g(a)i(signal)f(n)m(um)m(b)s(er)f(or)630
-2350 y(the)35 b(exit)h(status)f(of)g(a)g(pro)s(cess)g(terminated)g(b)m
+2397 y(the)35 b(exit)h(status)f(of)g(a)g(pro)s(cess)g(terminated)g(b)m
(y)g(a)g(signal.)55 b(The)34 b(return)g(status)h(is)g(zero)630
-2459 y(if)c(at)h(least)g(one)g(signal)f(w)m(as)h(successfully)f(sen)m
+2506 y(if)c(at)h(least)g(one)g(signal)f(w)m(as)h(successfully)f(sen)m
(t,)h(or)f(non-zero)h(if)f(an)g(error)f(o)s(ccurs)h(or)g(an)630
-2569 y(in)m(v)-5 b(alid)31 b(option)g(is)f(encoun)m(tered.)150
-2720 y Fs(wait)870 2851 y(wait)47 b([-n])f([)p Fi(jobspec)56
-b Fs(or)48 b Fi(pid)57 b Fs(...)o(])630 2981 y Ft(W)-8
-b(ait)28 b(un)m(til)f(the)f(c)m(hild)h(pro)s(cess)f(sp)s(eci\014ed)g(b)
-m(y)g(eac)m(h)h(pro)s(cess)f Fl(id)h Fq(pid)i Ft(or)d(job)g(sp)s
-(eci\014cation)630 3091 y Fq(jobsp)s(ec)j Ft(exits)c(and)f(return)g
+2616 y(in)m(v)-5 b(alid)31 b(option)g(is)f(encoun)m(tered.)150
+2778 y Ft(wait)870 2913 y(wait)47 b([-n])f([)p Fj(jobspec)g
+Ft(or)h Fj(pid)g Ft(...)o(])630 3049 y Fu(W)-8 b(ait)28
+b(un)m(til)f(the)f(c)m(hild)h(pro)s(cess)f(sp)s(eci\014ed)g(b)m(y)g
+(eac)m(h)h(pro)s(cess)f Fm(id)h Fr(pid)i Fu(or)d(job)g(sp)s
+(eci\014cation)630 3159 y Fr(jobsp)s(ec)j Fu(exits)c(and)f(return)g
(the)g(exit)h(status)g(of)g(the)f(last)h(command)g(w)m(aited)g(for.)39
-b(If)23 b(a)i(job)630 3200 y(sp)s(ec)j(is)g(giv)m(en,)i(all)f(pro)s
+b(If)23 b(a)i(job)630 3268 y(sp)s(ec)j(is)g(giv)m(en,)i(all)f(pro)s
(cesses)f(in)g(the)g(job)g(are)h(w)m(aited)g(for.)40
-b(If)27 b(no)i(argumen)m(ts)f(are)h(giv)m(en,)630 3310
+b(If)27 b(no)i(argumen)m(ts)f(are)h(giv)m(en,)630 3378
y(all)f(curren)m(tly)g(activ)m(e)i(c)m(hild)e(pro)s(cesses)f(are)h(w)m
(aited)g(for,)g(and)f(the)h(return)e(status)i(is)g(zero.)630
-3420 y(If)k(the)h(`)p Fs(-n)p Ft(')f(option)h(is)g(supplied,)f
-Fs(wait)f Ft(w)m(aits)i(for)g(an)m(y)f(job)h(to)g(terminate)g(and)f
-(returns)630 3529 y(its)27 b(exit)h(status.)40 b(If)26
-b(neither)h Fq(jobsp)s(ec)k Ft(nor)c Fq(pid)i Ft(sp)s(eci\014es)e(an)f
-(activ)m(e)j(c)m(hild)e(pro)s(cess)g(of)g(the)630 3639
-y(shell,)k(the)f(return)g(status)g(is)h(127.)150 3790
-y Fs(disown)870 3921 y(disown)46 b([-ar])g([-h])h([)p
-Fi(jobspec)56 b Fs(...)o(])630 4051 y Ft(Without)30 b(options,)f(remo)m
-(v)m(e)i(eac)m(h)f Fq(jobsp)s(ec)k Ft(from)28 b(the)h(table)h(of)f
-(activ)m(e)i(jobs.)40 b(If)28 b(the)h(`)p Fs(-h)p Ft(')630
-4161 y(option)36 b(is)f(giv)m(en,)i(the)f(job)f(is)g(not)g(remo)m(v)m
-(ed)h(from)f(the)g(table,)j(but)c(is)i(mark)m(ed)f(so)g(that)630
-4270 y Fs(SIGHUP)e Ft(is)j(not)f(sen)m(t)h(to)g(the)f(job)g(if)g(the)g
-(shell)h(receiv)m(es)h(a)e Fs(SIGHUP)p Ft(.)54 b(If)34
-b Fq(jobsp)s(ec)40 b Ft(is)c(not)630 4380 y(presen)m(t,)c(and)f
-(neither)h(the)g(`)p Fs(-a)p Ft(')g(nor)f(the)h(`)p Fs(-r)p
-Ft(')f(option)h(is)g(supplied,)f(the)h(curren)m(t)g(job)f(is)630
-4489 y(used.)58 b(If)36 b(no)g Fq(jobsp)s(ec)41 b Ft(is)36
-b(supplied,)h(the)g(`)p Fs(-a)p Ft(')f(option)h(means)f(to)h(remo)m(v)m
-(e)h(or)e(mark)g(all)630 4599 y(jobs;)28 b(the)f(`)p
-Fs(-r)p Ft(')g(option)g(without)g(a)g Fq(jobsp)s(ec)32
-b Ft(argumen)m(t)27 b(restricts)h(op)s(eration)f(to)h(running)630
-4709 y(jobs.)150 4860 y Fs(suspend)870 4990 y(suspend)46
-b([-f])630 5121 y Ft(Susp)s(end)31 b(the)i(execution)h(of)g(this)f
-(shell)g(un)m(til)h(it)g(receiv)m(es)h(a)e Fs(SIGCONT)f
-Ft(signal.)50 b(A)33 b(login)630 5230 y(shell)24 b(cannot)h(b)s(e)e
-(susp)s(ended;)h(the)g(`)p Fs(-f)p Ft(')g(option)g(can)h(b)s(e)e(used)g
-(to)i(o)m(v)m(erride)g(this)f(and)f(force)630 5340 y(the)31
-b(susp)s(ension.)p eop end
-%%Page: 101 107
-TeXDict begin 101 106 bop 150 -116 a Ft(Chapter)30 b(7:)41
-b(Job)30 b(Con)m(trol)2526 b(101)275 299 y(When)30 b(job)f(con)m(trol)j
-(is)e(not)h(activ)m(e,)i(the)d Fs(kill)f Ft(and)h Fs(wait)f
-Ft(builtins)g(do)h(not)h(accept)h Fq(jobsp)s(ec)j Ft(argu-)150
+3487 y(If)f(the)g Ft(-n)g Fu(option)h(is)f(supplied,)g
+Ft(wait)f Fu(w)m(aits)i(for)f(an)m(y)h(job)f(to)h(terminate)g(and)f
+(returns)f(its)630 3597 y(exit)37 b(status.)56 b(If)36
+b(neither)f Fr(jobsp)s(ec)41 b Fu(nor)35 b Fr(pid)j Fu(sp)s(eci\014es)d
+(an)h(activ)m(e)i(c)m(hild)e(pro)s(cess)f(of)h(the)630
+3707 y(shell,)31 b(the)f(return)g(status)g(is)h(127.)150
+3868 y Ft(disown)870 4004 y(disown)46 b([-ar])g([-h])h([)p
+Fj(jobspec)f Ft(...)o(])630 4140 y Fu(Without)33 b(options,)h(remo)m(v)
+m(e)g(eac)m(h)f Fr(jobsp)s(ec)38 b Fu(from)32 b(the)h(table)g(of)g
+(activ)m(e)h(jobs.)47 b(If)32 b(the)h Ft(-h)630 4249
+y Fu(option)j(is)f(giv)m(en,)i(the)f(job)f(is)g(not)g(remo)m(v)m(ed)h
+(from)f(the)g(table,)j(but)c(is)i(mark)m(ed)f(so)g(that)630
+4359 y Ft(SIGHUP)e Fu(is)j(not)f(sen)m(t)h(to)g(the)f(job)g(if)g(the)g
+(shell)h(receiv)m(es)h(a)e Ft(SIGHUP)p Fu(.)54 b(If)34
+b Fr(jobsp)s(ec)40 b Fu(is)c(not)630 4468 y(presen)m(t,)41
+b(and)d(neither)h(the)g Ft(-a)f Fu(nor)g(the)h Ft(-r)f
+Fu(option)h(is)g(supplied,)g(the)g(curren)m(t)g(job)f(is)630
+4578 y(used.)g(If)25 b(no)h Fr(jobsp)s(ec)k Fu(is)c(supplied,)f(the)h
+Ft(-a)f Fu(option)h(means)g(to)g(remo)m(v)m(e)h(or)e(mark)h(all)g
+(jobs;)630 4688 y(the)31 b Ft(-r)e Fu(option)i(without)g(a)f
+Fr(jobsp)s(ec)36 b Fu(argumen)m(t)30 b(restricts)h(op)s(eration)g(to)g
+(running)e(jobs.)150 4849 y Ft(suspend)870 4985 y(suspend)46
+b([-f])630 5121 y Fu(Susp)s(end)31 b(the)i(execution)h(of)g(this)f
+(shell)g(un)m(til)h(it)g(receiv)m(es)h(a)e Ft(SIGCONT)f
+Fu(signal.)50 b(A)33 b(login)630 5230 y(shell)28 b(cannot)g(b)s(e)f
+(susp)s(ended;)g(the)g Ft(-f)g Fu(option)i(can)f(b)s(e)f(used)g(to)h(o)
+m(v)m(erride)h(this)e(and)g(force)630 5340 y(the)k(susp)s(ension.)p
+eop end
+%%Page: 100 106
+TeXDict begin 100 105 bop 150 -116 a Fu(Chapter)30 b(7:)41
+b(Job)30 b(Con)m(trol)2526 b(100)275 299 y(When)30 b(job)f(con)m(trol)j
+(is)e(not)h(activ)m(e,)i(the)d Ft(kill)f Fu(and)h Ft(wait)f
+Fu(builtins)g(do)h(not)h(accept)h Fr(jobsp)s(ec)j Fu(argu-)150
408 y(men)m(ts.)41 b(They)30 b(m)m(ust)g(b)s(e)g(supplied)f(pro)s(cess)
-h Fl(id)p Ft(s.)150 641 y Fr(7.3)68 b(Job)45 b(Con)l(trol)h(V)-11
-b(ariables)150 825 y Fs(auto_resume)630 935 y Ft(This)31
+h Fm(id)p Fu(s.)150 641 y Fs(7.3)68 b(Job)45 b(Con)l(trol)h(V)-11
+b(ariables)150 825 y Ft(auto_resume)630 935 y Fu(This)31
b(v)-5 b(ariable)32 b(con)m(trols)g(ho)m(w)g(the)f(shell)h(in)m
(teracts)h(with)e(the)h(user)e(and)h(job)g(con)m(trol.)45
b(If)630 1044 y(this)28 b(v)-5 b(ariable)30 b(exists)f(then)f(single)h
42 b(The)29 b(name)g(of)h(a)g(stopp)s(ed)e(job,)i(in)f(this)630
1483 y(con)m(text,)h(is)e(the)g(command)g(line)g(used)f(to)h(start)g
(it.)41 b(If)27 b(this)h(v)-5 b(ariable)28 b(is)g(set)g(to)h(the)e(v)-5
-b(alue)630 1592 y(`)p Fs(exact)p Ft(',)33 b(the)g(string)g(supplied)f
+b(alue)630 1592 y(`)p Ft(exact)p Fu(',)33 b(the)g(string)g(supplied)f
(m)m(ust)h(matc)m(h)g(the)h(name)f(of)g(a)g(stopp)s(ed)f(job)h
-(exactly;)j(if)630 1702 y(set)29 b(to)h(`)p Fs(substring)p
-Ft(',)d(the)i(string)g(supplied)e(needs)i(to)g(matc)m(h)h(a)f
+(exactly;)j(if)630 1702 y(set)29 b(to)h(`)p Ft(substring)p
+Fu(',)d(the)i(string)g(supplied)e(needs)i(to)g(matc)m(h)h(a)f
(substring)f(of)h(the)g(name)630 1812 y(of)38 b(a)f(stopp)s(ed)g(job.)
-62 b(The)37 b(`)p Fs(substring)p Ft(')e(v)-5 b(alue)38
+62 b(The)37 b(`)p Ft(substring)p Fu(')e(v)-5 b(alue)38
b(pro)m(vides)f(functionalit)m(y)i(analogous)g(to)630
-1921 y(the)f(`)p Fs(\045?)p Ft(')f(job)h Fl(id)f Ft(\(see)i(Section)f
-(7.1)h([Job)f(Con)m(trol)g(Basics],)j(page)d(98\).)64
+1921 y(the)f(`)p Ft(\045?)p Fu(')f(job)h Fm(id)f Fu(\(see)i(Section)f
+(7.1)h([Job)f(Con)m(trol)g(Basics],)j(page)d(97\).)64
b(If)37 b(set)h(to)h(an)m(y)630 2031 y(other)32 b(v)-5
b(alue,)32 b(the)g(supplied)e(string)i(m)m(ust)f(b)s(e)g(a)h(pre\014x)f
(of)h(a)g(stopp)s(ed)e(job's)i(name;)g(this)630 2140
y(pro)m(vides)e(functionalit)m(y)i(analogous)g(to)f(the)g(`)p
-Fs(\045)p Ft(')f(job)g Fl(id)p Ft(.)p eop end
-%%Page: 102 108
-TeXDict begin 102 107 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(102)150 299 y Fo(8)80
-b(Command)54 b(Line)f(Editing)150 640 y Ft(This)28 b(c)m(hapter)i
-(describ)s(es)e(the)h(basic)g(features)h(of)f(the)g Fl(gnu)f
-Ft(command)h(line)g(editing)h(in)m(terface.)42 b(Com-)150
+Ft(\045)p Fu(')f(job)g Fm(id)p Fu(.)p eop end
+%%Page: 101 107
+TeXDict begin 101 106 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(101)150 299 y Fp(8)80
+b(Command)54 b(Line)f(Editing)150 640 y Fu(This)28 b(c)m(hapter)i
+(describ)s(es)e(the)h(basic)g(features)h(of)f(the)g Fm(gnu)f
+Fu(command)h(line)g(editing)h(in)m(terface.)42 b(Com-)150
749 y(mand)c(line)i(editing)f(is)g(pro)m(vided)g(b)m(y)g(the)g
(Readline)h(library)-8 b(,)41 b(whic)m(h)e(is)g(used)f(b)m(y)h(sev)m
(eral)h(di\013eren)m(t)150 859 y(programs,)34 b(including)e(Bash.)49
b(Command)32 b(line)i(editing)f(is)g(enabled)g(b)m(y)g(default)g(when)f
-(using)h(an)g(in-)150 969 y(teractiv)m(e)c(shell,)f(unless)e(the)h(`)p
-Fs(--noediting)p Ft(')d(option)k(is)e(supplied)g(at)h(shell)g(in)m(v)m
-(o)s(cation.)42 b(Line)26 b(editing)150 1078 y(is)i(also)h(used)e(when)
-h(using)f(the)h(`)p Fs(-e)p Ft(')g(option)h(to)g(the)f
-Fs(read)f Ft(builtin)h(command)f(\(see)i(Section)g(4.2)h([Bash)150
-1188 y(Builtins],)36 b(page)f(48\).)52 b(By)35 b(default,)g(the)f(line)
-h(editing)f(commands)g(are)h(similar)f(to)h(those)f(of)g(Emacs.)150
+(using)h(an)g(in-)150 969 y(teractiv)m(e)h(shell,)d(unless)g(the)g
+Ft(--noediting)d Fu(option)k(is)f(supplied)e(at)j(shell)f(in)m(v)m(o)s
+(cation.)45 b(Line)31 b(editing)150 1078 y(is)g(also)h(used)f(when)f
+(using)h(the)g Ft(-e)g Fu(option)h(to)g(the)f Ft(read)f
+Fu(builtin)h(command)g(\(see)h(Section)g(4.2)h([Bash)150
+1188 y(Builtins],)j(page)f(48\).)52 b(By)35 b(default,)g(the)f(line)h
+(editing)f(commands)g(are)h(similar)f(to)h(those)f(of)g(Emacs.)150
1297 y(A)h(vi-st)m(yle)h(line)f(editing)g(in)m(terface)h(is)e(also)i(a)
m(v)-5 b(ailable.)55 b(Line)34 b(editing)h(can)g(b)s(e)f(enabled)g(at)h
-(an)m(y)g(time)150 1407 y(using)28 b(the)i(`)p Fs(-o)g(emacs)p
-Ft(')d(or)i(`)p Fs(-o)h(vi)p Ft(')f(options)g(to)h(the)f
-Fs(set)f Ft(builtin)h(command)g(\(see)h(Section)f(4.3.1)i([The)150
-1517 y(Set)g(Builtin],)g(page)g(59\),)h(or)e(disabled)g(using)g(the)h
-(`)p Fs(+o)f(emacs)p Ft(')f(or)h(`)p Fs(+o)g(vi)p Ft(')g(options)h(to)g
-Fs(set)p Ft(.)150 1802 y Fr(8.1)68 b(In)l(tro)t(duction)45
-b(to)g(Line)h(Editing)150 1962 y Ft(The)30 b(follo)m(wing)i(paragraphs)
+(an)m(y)g(time)150 1407 y(using)h(the)g Ft(-o)30 b(emacs)35
+b Fu(or)h Ft(-o)30 b(vi)35 b Fu(options)i(to)g(the)f
+Ft(set)f Fu(builtin)h(command)g(\(see)h(Section)g(4.3.1)h([The)150
+1517 y(Set)31 b(Builtin],)g(page)g(58\),)h(or)e(disabled)g(using)g(the)
+h Ft(+o)e(emacs)g Fu(or)i Ft(+o)e(vi)h Fu(options)h(to)g
+Ft(set)p Fu(.)150 1802 y Fs(8.1)68 b(In)l(tro)t(duction)45
+b(to)g(Line)h(Editing)150 1962 y Fu(The)30 b(follo)m(wing)i(paragraphs)
d(describ)s(e)h(the)h(notation)g(used)f(to)h(represen)m(t)f(k)m
-(eystrok)m(es.)275 2132 y(The)35 b(text)i Fi(C-k)f Ft(is)g(read)g(as)h
+(eystrok)m(es.)275 2132 y(The)35 b(text)i Fj(C-k)f Fu(is)g(read)g(as)h
(`Con)m(trol-K')g(and)f(describ)s(es)f(the)h(c)m(haracter)i(pro)s
-(duced)d(when)g(the)h Fs(k)150 2242 y Ft(k)m(ey)31 b(is)g(pressed)e
+(duced)d(when)g(the)h Ft(k)150 2242 y Fu(k)m(ey)31 b(is)g(pressed)e
(while)h(the)h(Con)m(trol)g(k)m(ey)g(is)g(depressed.)275
-2412 y(The)g(text)i Fi(M-k)e Ft(is)h(read)f(as)i(`Meta-K')g(and)f
+2412 y(The)g(text)i Fj(M-k)e Fu(is)h(read)f(as)i(`Meta-K')g(and)f
(describ)s(es)f(the)h(c)m(haracter)h(pro)s(duced)e(when)f(the)i(Meta)
150 2521 y(k)m(ey)i(\(if)f(y)m(ou)h(ha)m(v)m(e)g(one\))g(is)f
-(depressed,)g(and)f(the)h Fs(k)g Ft(k)m(ey)h(is)f(pressed.)48
-b(The)32 b(Meta)j(k)m(ey)e(is)h(lab)s(eled)f Fs(ALT)150
-2631 y Ft(on)c(man)m(y)h(k)m(eyb)s(oards.)40 b(On)29
+(depressed,)g(and)f(the)h Ft(k)g Fu(k)m(ey)h(is)f(pressed.)48
+b(The)32 b(Meta)j(k)m(ey)e(is)h(lab)s(eled)f Ft(ALT)150
+2631 y Fu(on)c(man)m(y)h(k)m(eyb)s(oards.)40 b(On)29
b(k)m(eyb)s(oards)g(with)h(t)m(w)m(o)h(k)m(eys)f(lab)s(eled)g
-Fs(ALT)e Ft(\(usually)i(to)g(either)g(side)g(of)g(the)150
-2740 y(space)h(bar\),)f(the)g Fs(ALT)f Ft(on)h(the)g(left)h(side)f(is)g
+Ft(ALT)e Fu(\(usually)i(to)g(either)g(side)g(of)g(the)150
+2740 y(space)h(bar\),)f(the)g Ft(ALT)f Fu(on)h(the)g(left)h(side)f(is)g
(generally)h(set)f(to)h(w)m(ork)f(as)g(a)h(Meta)g(k)m(ey)-8
-b(.)42 b(The)29 b Fs(ALT)g Ft(k)m(ey)i(on)150 2850 y(the)c(righ)m(t)h
+b(.)42 b(The)29 b Ft(ALT)g Fu(k)m(ey)i(on)150 2850 y(the)c(righ)m(t)h
(ma)m(y)g(also)g(b)s(e)f(con\014gured)f(to)i(w)m(ork)f(as)h(a)f(Meta)i
(k)m(ey)f(or)f(ma)m(y)h(b)s(e)e(con\014gured)h(as)g(some)h(other)150
2960 y(mo)s(di\014er,)i(suc)m(h)g(as)g(a)h(Comp)s(ose)f(k)m(ey)h(for)f
(t)m(yping)h(accen)m(ted)h(c)m(haracters.)275 3130 y(If)23
-b(y)m(ou)i(do)f(not)h(ha)m(v)m(e)h(a)f(Meta)g(or)g Fs(ALT)e
-Ft(k)m(ey)-8 b(,)27 b(or)e(another)f(k)m(ey)i(w)m(orking)e(as)h(a)g
+b(y)m(ou)i(do)f(not)h(ha)m(v)m(e)h(a)f(Meta)g(or)g Ft(ALT)e
+Fu(k)m(ey)-8 b(,)27 b(or)e(another)f(k)m(ey)i(w)m(orking)e(as)h(a)g
(Meta)h(k)m(ey)-8 b(,)27 b(the)d(iden)m(tical)150 3239
y(k)m(eystrok)m(e)30 b(can)f(b)s(e)f(generated)h(b)m(y)g(t)m(yping)g
-Fs(ESC)e Fk(\014rst)p Ft(,)j(and)e(then)g(t)m(yping)h
-Fs(k)p Ft(.)40 b(Either)28 b(pro)s(cess)g(is)g(kno)m(wn)150
-3349 y(as)j Fq(metafying)39 b Ft(the)30 b Fs(k)g Ft(k)m(ey)-8
-b(.)275 3519 y(The)39 b(text)j Fi(M-C-k)d Ft(is)h(read)g(as)h
+Ft(ESC)e Fl(\014rst)p Fu(,)j(and)e(then)g(t)m(yping)h
+Ft(k)p Fu(.)40 b(Either)28 b(pro)s(cess)g(is)g(kno)m(wn)150
+3349 y(as)j Fr(metafying)39 b Fu(the)30 b Ft(k)g Fu(k)m(ey)-8
+b(.)275 3519 y(The)39 b(text)j Fj(M-C-k)d Fu(is)h(read)g(as)h
(`Meta-Con)m(trol-k')j(and)39 b(describ)s(es)h(the)g(c)m(haracter)i
-(pro)s(duced)d(b)m(y)150 3629 y Fq(metafying)g Fi(C-k)p
-Ft(.)275 3799 y(In)c(addition,)j(sev)m(eral)f(k)m(eys)g(ha)m(v)m(e)g
+(pro)s(duced)d(b)m(y)150 3629 y Fr(metafying)g Fj(C-k)p
+Fu(.)275 3799 y(In)c(addition,)j(sev)m(eral)f(k)m(eys)g(ha)m(v)m(e)g
(their)f(o)m(wn)g(names.)58 b(Sp)s(eci\014cally)-8 b(,)38
-b Fs(DEL)p Ft(,)f Fs(ESC)p Ft(,)g Fs(LFD)p Ft(,)g Fs(SPC)p
-Ft(,)g Fs(RET)p Ft(,)150 3908 y(and)d Fs(TAB)f Ft(all)j(stand)e(for)g
+b Ft(DEL)p Fu(,)f Ft(ESC)p Fu(,)g Ft(LFD)p Fu(,)g Ft(SPC)p
+Fu(,)g Ft(RET)p Fu(,)150 3908 y(and)d Ft(TAB)f Fu(all)j(stand)e(for)g
(themselv)m(es)i(when)d(seen)i(in)f(this)g(text,)j(or)d(in)h(an)f(init)
h(\014le)f(\(see)i(Section)f(8.3)150 4018 y([Readline)f(Init)g(File],)i
-(page)e(105\).)52 b(If)33 b(y)m(our)g(k)m(eyb)s(oard)h(lac)m(ks)g(a)g
-Fs(LFD)f Ft(k)m(ey)-8 b(,)36 b(t)m(yping)e Fs(C-j)e Ft(will)i(pro)s
+(page)e(104\).)52 b(If)33 b(y)m(our)g(k)m(eyb)s(oard)h(lac)m(ks)g(a)g
+Ft(LFD)f Fu(k)m(ey)-8 b(,)36 b(t)m(yping)e Ft(C-j)e Fu(will)i(pro)s
(duce)150 4128 y(the)d(desired)e(c)m(haracter.)43 b(The)30
-b Fs(RET)f Ft(k)m(ey)i(ma)m(y)g(b)s(e)f(lab)s(eled)h
-Fs(Return)d Ft(or)j Fs(Enter)d Ft(on)j(some)g(k)m(eyb)s(oards.)150
-4413 y Fr(8.2)68 b(Readline)47 b(In)l(teraction)150 4573
-y Ft(Often)32 b(during)g(an)g(in)m(teractiv)m(e)j(session)e(y)m(ou)g(t)
+b Ft(RET)f Fu(k)m(ey)i(ma)m(y)g(b)s(e)f(lab)s(eled)h
+Ft(Return)d Fu(or)j Ft(Enter)d Fu(on)j(some)g(k)m(eyb)s(oards.)150
+4413 y Fs(8.2)68 b(Readline)47 b(In)l(teraction)150 4573
+y Fu(Often)32 b(during)g(an)g(in)m(teractiv)m(e)j(session)e(y)m(ou)g(t)
m(yp)s(e)g(in)f(a)h(long)g(line)g(of)f(text,)j(only)d(to)i(notice)g
(that)f(the)150 4682 y(\014rst)f(w)m(ord)g(on)g(the)g(line)h(is)g
(missp)s(elled.)46 b(The)32 b(Readline)h(library)f(giv)m(es)h(y)m(ou)g
(needs)g(correction,)j(and)d(delete)h(or)f(insert)h(the)f(text)h(of)g
(the)f(corrections.)54 b(Then,)150 5121 y(when)24 b(y)m(ou)h(are)g
(satis\014ed)g(with)g(the)g(line,)i(y)m(ou)e(simply)f(press)g
-Fs(RET)p Ft(.)39 b(Y)-8 b(ou)25 b(do)g(not)g(ha)m(v)m(e)h(to)g(b)s(e)e
+Ft(RET)p Fu(.)39 b(Y)-8 b(ou)25 b(do)g(not)g(ha)m(v)m(e)h(to)g(b)s(e)e
(at)h(the)h(end)150 5230 y(of)33 b(the)h(line)g(to)g(press)e
-Fs(RET)p Ft(;)i(the)g(en)m(tire)g(line)f(is)h(accepted)g(regardless)g
+Ft(RET)p Fu(;)i(the)g(en)m(tire)g(line)f(is)h(accepted)g(regardless)g
(of)f(the)h(lo)s(cation)h(of)e(the)h(cursor)150 5340
y(within)c(the)g(line.)p eop end
-%%Page: 103 109
-TeXDict begin 103 108 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(103)150 299 y Fj(8.2.1)63
-b(Readline)40 b(Bare)h(Essen)m(tials)150 446 y Ft(In)31
+%%Page: 102 108
+TeXDict begin 102 107 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(102)150 299 y Fk(8.2.1)63
+b(Readline)40 b(Bare)h(Essen)m(tials)150 446 y Fu(In)31
b(order)h(to)h(en)m(ter)g(c)m(haracters)g(in)m(to)g(the)g(line,)g
(simply)e(t)m(yp)s(e)i(them.)46 b(The)31 b(t)m(yp)s(ed)h(c)m(haracter)i
(app)s(ears)150 555 y(where)e(the)h(cursor)e(w)m(as,)j(and)e(then)g
(and)e(not)i(notice)g(the)f(error)f(un)m(til)h(y)m(ou)g(ha)m(v)m(e)h(t)
m(yp)s(ed)150 916 y(sev)m(eral)e(other)f(c)m(haracters.)42
b(In)28 b(that)i(case,)g(y)m(ou)f(can)g(t)m(yp)s(e)h
-Fi(C-b)d Ft(to)j(mo)m(v)m(e)g(the)f(cursor)g(to)g(the)g(left,)i(and)150
+Fj(C-b)d Fu(to)j(mo)m(v)m(e)g(the)f(cursor)g(to)g(the)g(left,)i(and)150
1026 y(then)f(correct)i(y)m(our)e(mistak)m(e.)42 b(Afterw)m(ards,)31
b(y)m(ou)f(can)h(mo)m(v)m(e)h(the)e(cursor)g(to)h(the)g(righ)m(t)g
-(with)f Fi(C-f)p Ft(.)275 1167 y(When)i(y)m(ou)h(add)f(text)h(in)f(the)
+(with)f Fj(C-f)p Fu(.)275 1167 y(When)i(y)m(ou)h(add)f(text)h(in)f(the)
h(middle)f(of)h(a)g(line,)h(y)m(ou)e(will)h(notice)h(that)f(c)m
(haracters)h(to)g(the)e(righ)m(t)150 1277 y(of)d(the)g(cursor)f(are)h
(`pushed)e(o)m(v)m(er')j(to)g(mak)m(e)f(ro)s(om)g(for)f(the)h(text)h
(created)f(b)m(y)g(the)g(remo)m(v)-5 b(al)24 b(of)f(the)g(text.)39
b(A)23 b(list)g(of)g(the)g(bare)f(essen)m(tials)150 1605
y(for)30 b(editing)h(the)g(text)g(of)g(an)f(input)f(line)i(follo)m(ws.)
-150 1775 y Fi(C-b)336 b Ft(Mo)m(v)m(e)32 b(bac)m(k)g(one)e(c)m
-(haracter.)150 1941 y Fi(C-f)336 b Ft(Mo)m(v)m(e)32 b(forw)m(ard)e(one)
-h(c)m(haracter.)150 2108 y Fs(DEL)e Ft(or)i Fs(Backspace)630
-2217 y Ft(Delete)i(the)d(c)m(haracter)i(to)f(the)g(left)g(of)f(the)h
-(cursor.)150 2384 y Fi(C-d)336 b Ft(Delete)33 b(the)d(c)m(haracter)i
+150 1775 y Fj(C-b)336 b Fu(Mo)m(v)m(e)32 b(bac)m(k)g(one)e(c)m
+(haracter.)150 1941 y Fj(C-f)336 b Fu(Mo)m(v)m(e)32 b(forw)m(ard)e(one)
+h(c)m(haracter.)150 2108 y Ft(DEL)e Fu(or)i Ft(Backspace)630
+2217 y Fu(Delete)i(the)d(c)m(haracter)i(to)f(the)g(left)g(of)f(the)h
+(cursor.)150 2384 y Fj(C-d)336 b Fu(Delete)33 b(the)d(c)m(haracter)i
(underneath)d(the)i(cursor.)150 2550 y(Prin)m(ting)g(c)m(haracters)630
2660 y(Insert)f(the)g(c)m(haracter)i(in)m(to)g(the)e(line)h(at)g(the)g
-(cursor.)150 2826 y Fi(C-_)e Ft(or)i Fi(C-x)e(C-u)630
-2936 y Ft(Undo)k(the)h(last)g(editing)g(command.)50 b(Y)-8
+(cursor.)150 2826 y Fj(C-_)e Fu(or)i Fj(C-x)e(C-u)630
+2936 y Fu(Undo)k(the)h(last)g(editing)g(command.)50 b(Y)-8
b(ou)34 b(can)f(undo)g(all)h(the)f(w)m(a)m(y)i(bac)m(k)f(to)g(an)g
(empt)m(y)630 3045 y(line.)150 3215 y(\(Dep)s(ending)29
-b(on)h(y)m(our)f(con\014guration,)i(the)e Fs(Backspace)e
-Ft(k)m(ey)k(b)s(e)d(set)j(to)f(delete)h(the)e(c)m(haracter)i(to)g(the)
+b(on)h(y)m(our)f(con\014guration,)i(the)e Ft(Backspace)e
+Fu(k)m(ey)k(b)s(e)d(set)j(to)f(delete)h(the)e(c)m(haracter)i(to)g(the)
150 3324 y(left)37 b(of)f(the)h(cursor)e(and)h(the)g
-Fs(DEL)g Ft(k)m(ey)h(set)f(to)h(delete)h(the)e(c)m(haracter)i
-(underneath)d(the)h(cursor,)i(lik)m(e)150 3434 y Fi(C-d)p
-Ft(,)30 b(rather)g(than)g(the)h(c)m(haracter)h(to)f(the)f(left)h(of)g
-(the)f(cursor.\))150 3640 y Fj(8.2.2)63 b(Readline)40
-b(Mo)m(v)m(emen)m(t)h(Commands)150 3787 y Ft(The)27 b(ab)s(o)m(v)m(e)i
+Ft(DEL)g Fu(k)m(ey)h(set)f(to)h(delete)h(the)e(c)m(haracter)i
+(underneath)d(the)h(cursor,)i(lik)m(e)150 3434 y Fj(C-d)p
+Fu(,)30 b(rather)g(than)g(the)h(c)m(haracter)h(to)f(the)f(left)h(of)g
+(the)f(cursor.\))150 3640 y Fk(8.2.2)63 b(Readline)40
+b(Mo)m(v)m(emen)m(t)h(Commands)150 3787 y Fu(The)27 b(ab)s(o)m(v)m(e)i
(table)g(describ)s(es)e(the)g(most)i(basic)f(k)m(eystrok)m(es)h(that)f
(y)m(ou)g(need)g(in)f(order)g(to)i(do)e(editing)i(of)150
3897 y(the)k(input)f(line.)49 b(F)-8 b(or)34 b(y)m(our)f(con)m(v)m
(enience,)j(man)m(y)d(other)g(commands)f(ha)m(v)m(e)j(b)s(een)d(added)g
-(in)h(addition)150 4006 y(to)j Fi(C-b)p Ft(,)f Fi(C-f)p
-Ft(,)g Fi(C-d)p Ft(,)h(and)e Fs(DEL)p Ft(.)54 b(Here)35
+(in)h(addition)150 4006 y(to)j Fj(C-b)p Fu(,)f Fj(C-f)p
+Fu(,)g Fj(C-d)p Fu(,)h(and)e Ft(DEL)p Fu(.)54 b(Here)35
b(are)g(some)h(commands)e(for)h(mo)m(ving)h(more)f(rapidly)f(ab)s(out)h
-(the)150 4116 y(line.)150 4286 y Fi(C-a)336 b Ft(Mo)m(v)m(e)32
-b(to)g(the)e(start)h(of)g(the)f(line.)150 4452 y Fi(C-e)336
-b Ft(Mo)m(v)m(e)32 b(to)g(the)e(end)g(of)g(the)h(line.)150
-4618 y Fi(M-f)336 b Ft(Mo)m(v)m(e)32 b(forw)m(ard)e(a)h(w)m(ord,)f
+(the)150 4116 y(line.)150 4286 y Fj(C-a)336 b Fu(Mo)m(v)m(e)32
+b(to)g(the)e(start)h(of)g(the)f(line.)150 4452 y Fj(C-e)336
+b Fu(Mo)m(v)m(e)32 b(to)g(the)e(end)g(of)g(the)h(line.)150
+4618 y Fj(M-f)336 b Fu(Mo)m(v)m(e)32 b(forw)m(ard)e(a)h(w)m(ord,)f
(where)g(a)h(w)m(ord)f(is)g(comp)s(osed)g(of)h(letters)h(and)d(digits.)
-150 4785 y Fi(M-b)336 b Ft(Mo)m(v)m(e)32 b(bac)m(kw)m(ard)f(a)g(w)m
-(ord.)150 4951 y Fi(C-l)336 b Ft(Clear)31 b(the)f(screen,)h(reprin)m
+150 4785 y Fj(M-b)336 b Fu(Mo)m(v)m(e)32 b(bac)m(kw)m(ard)f(a)g(w)m
+(ord.)150 4951 y Fj(C-l)336 b Fu(Clear)31 b(the)f(screen,)h(reprin)m
(ting)f(the)h(curren)m(t)f(line)h(at)g(the)f(top.)275
-5121 y(Notice)c(ho)m(w)f Fi(C-f)e Ft(mo)m(v)m(es)j(forw)m(ard)e(a)h(c)m
-(haracter,)j(while)d Fi(M-f)e Ft(mo)m(v)m(es)j(forw)m(ard)e(a)h(w)m
+5121 y(Notice)c(ho)m(w)f Fj(C-f)e Fu(mo)m(v)m(es)j(forw)m(ard)e(a)h(c)m
+(haracter,)j(while)d Fj(M-f)e Fu(mo)m(v)m(es)j(forw)m(ard)e(a)h(w)m
(ord.)39 b(It)24 b(is)h(a)g(lo)s(ose)150 5230 y(con)m(v)m(en)m(tion)32
b(that)f(con)m(trol)g(k)m(eystrok)m(es)h(op)s(erate)e(on)g(c)m
(haracters)h(while)f(meta)h(k)m(eystrok)m(es)h(op)s(erate)e(on)150
5340 y(w)m(ords.)p eop end
-%%Page: 104 110
-TeXDict begin 104 109 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(104)150 299 y Fj(8.2.3)63
-b(Readline)40 b(Killing)i(Commands)150 446 y Fq(Killing)35
-b Ft(text)28 b(means)e(to)h(delete)h(the)f(text)g(from)g(the)f(line,)i
+%%Page: 103 109
+TeXDict begin 103 108 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(103)150 299 y Fk(8.2.3)63
+b(Readline)40 b(Killing)i(Commands)150 446 y Fr(Killing)35
+b Fu(text)28 b(means)e(to)h(delete)h(the)f(text)g(from)g(the)f(line,)i
(but)e(to)h(sa)m(v)m(e)h(it)g(a)m(w)m(a)m(y)g(for)e(later)i(use,)f
-(usually)150 555 y(b)m(y)g Fq(y)m(anking)35 b Ft(\(re-inserting\))28
+(usually)150 555 y(b)m(y)g Fr(y)m(anking)35 b Fu(\(re-inserting\))28
b(it)g(bac)m(k)f(in)m(to)h(the)f(line.)40 b(\(`Cut')27
b(and)g(`paste')h(are)f(more)g(recen)m(t)h(jargon)f(for)150
665 y(`kill')32 b(and)d(`y)m(ank'.\))275 801 y(If)g(the)i(description)f
(text)g(bac)m(k)g(in)f(a)h(di\013eren)m(t)g(\(or)g(the)f(same\))h
(place)h(later.)275 1047 y(When)23 b(y)m(ou)g(use)g(a)h(kill)g
(command,)g(the)g(text)g(is)f(sa)m(v)m(ed)i(in)e(a)g
-Fq(kill-ring)p Ft(.)39 b(An)m(y)24 b(n)m(um)m(b)s(er)e(of)h(consecutiv)
+Fr(kill-ring)p Fu(.)39 b(An)m(y)24 b(n)m(um)m(b)s(er)e(of)h(consecutiv)
m(e)150 1157 y(kills)31 b(sa)m(v)m(e)i(all)f(of)f(the)g(killed)h(text)g
(together,)g(so)g(that)f(when)f(y)m(ou)h(y)m(ank)h(it)f(bac)m(k,)h(y)m
(ou)g(get)g(it)f(all.)43 b(The)150 1267 y(kill)33 b(ring)f(is)g(not)h
(previously)g(t)m(yp)s(ed)h(line)f(is)h(a)m(v)-5 b(ailable)150
1376 y(to)31 b(b)s(e)f(y)m(ank)m(ed)h(bac)m(k)g(later,)h(when)d(y)m(ou)
i(are)g(t)m(yping)f(another)h(line.)275 1513 y(Here)f(is)h(the)f(list)h
-(of)g(commands)f(for)g(killing)h(text.)150 1675 y Fi(C-k)336
-b Ft(Kill)31 b(the)f(text)i(from)e(the)g(curren)m(t)g(cursor)g(p)s
+(of)g(commands)f(for)g(killing)h(text.)150 1675 y Fj(C-k)336
+b Fu(Kill)31 b(the)f(text)i(from)e(the)g(curren)m(t)g(cursor)g(p)s
(osition)h(to)g(the)f(end)g(of)g(the)h(line.)150 1836
-y Fi(M-d)336 b Ft(Kill)27 b(from)f(the)g(cursor)g(to)h(the)f(end)g(of)h
+y Fj(M-d)336 b Fu(Kill)27 b(from)f(the)g(cursor)g(to)h(the)f(end)g(of)h
(the)f(curren)m(t)g(w)m(ord,)h(or,)h(if)e(b)s(et)m(w)m(een)h(w)m(ords,)
g(to)g(the)630 1946 y(end)j(of)g(the)h(next)f(w)m(ord.)41
b(W)-8 b(ord)30 b(b)s(oundaries)f(are)i(the)g(same)f(as)h(those)g(used)
-f(b)m(y)g Fi(M-f)p Ft(.)150 2107 y Fi(M-DEL)240 b Ft(Kill)31
+f(b)m(y)g Fj(M-f)p Fu(.)150 2107 y Fj(M-DEL)240 b Fu(Kill)31
b(from)f(the)h(cursor)f(the)g(start)h(of)g(the)g(curren)m(t)f(w)m(ord,)
h(or,)f(if)h(b)s(et)m(w)m(een)g(w)m(ords,)f(to)i(the)630
2217 y(start)39 b(of)f(the)h(previous)f(w)m(ord.)64 b(W)-8
b(ord)39 b(b)s(oundaries)e(are)i(the)f(same)h(as)g(those)f(used)g(b)m
-(y)630 2326 y Fi(M-b)p Ft(.)150 2487 y Fi(C-w)336 b Ft(Kill)35
+(y)630 2326 y Fj(M-b)p Fu(.)150 2487 y Fj(C-w)336 b Fu(Kill)35
b(from)g(the)g(cursor)f(to)i(the)f(previous)g(whitespace.)55
-b(This)34 b(is)h(di\013eren)m(t)h(than)e Fi(M-DEL)630
-2597 y Ft(b)s(ecause)c(the)h(w)m(ord)f(b)s(oundaries)f(di\013er.)275
-2759 y(Here)42 b(is)f(ho)m(w)h(to)g Fq(y)m(ank)47 b Ft(the)42
+b(This)34 b(is)h(di\013eren)m(t)h(than)e Fj(M-DEL)630
+2597 y Fu(b)s(ecause)c(the)h(w)m(ord)f(b)s(oundaries)f(di\013er.)275
+2759 y(Here)42 b(is)f(ho)m(w)h(to)g Fr(y)m(ank)47 b Fu(the)42
b(text)g(bac)m(k)h(in)m(to)f(the)g(line.)74 b(Y)-8 b(anking)43
b(means)e(to)h(cop)m(y)h(the)e(most-)150 2869 y(recen)m(tly-killed)33
-b(text)e(from)f(the)g(kill)i(bu\013er.)150 3031 y Fi(C-y)336
-b Ft(Y)-8 b(ank)31 b(the)f(most)h(recen)m(tly)h(killed)f(text)g(bac)m
+b(text)e(from)f(the)g(kill)i(bu\013er.)150 3031 y Fj(C-y)336
+b Fu(Y)-8 b(ank)31 b(the)f(most)h(recen)m(tly)h(killed)f(text)g(bac)m
(k)g(in)m(to)h(the)e(bu\013er)g(at)h(the)f(cursor.)150
-3192 y Fi(M-y)336 b Ft(Rotate)36 b(the)f(kill-ring,)i(and)d(y)m(ank)h
+3192 y Fj(M-y)336 b Fu(Rotate)36 b(the)f(kill-ring,)i(and)d(y)m(ank)h
(the)f(new)g(top.)54 b(Y)-8 b(ou)35 b(can)g(only)f(do)h(this)f(if)h
-(the)g(prior)630 3302 y(command)30 b(is)h Fi(C-y)e Ft(or)h
-Fi(M-y)p Ft(.)150 3503 y Fj(8.2.4)63 b(Readline)40 b(Argumen)m(ts)150
-3650 y Ft(Y)-8 b(ou)40 b(can)f(pass)g(n)m(umeric)f(argumen)m(ts)i(to)f
+(the)g(prior)630 3302 y(command)30 b(is)h Fj(C-y)e Fu(or)h
+Fj(M-y)p Fu(.)150 3503 y Fk(8.2.4)63 b(Readline)40 b(Argumen)m(ts)150
+3650 y Fu(Y)-8 b(ou)40 b(can)f(pass)g(n)m(umeric)f(argumen)m(ts)i(to)f
(Readline)h(commands.)67 b(Sometimes)39 b(the)g(argumen)m(t)h(acts)150
3760 y(as)g(a)h(rep)s(eat)f(coun)m(t,)j(other)e(times)f(it)h(is)f(the)g
-Fk(sign)47 b Ft(of)41 b(the)f(argumen)m(t)g(that)h(is)f(signi\014can)m
+Fl(sign)47 b Fu(of)41 b(the)f(argumen)m(t)g(that)h(is)f(signi\014can)m
(t.)71 b(If)40 b(y)m(ou)150 3869 y(pass)33 b(a)h(negativ)m(e)i(argumen)
m(t)e(to)g(a)g(command)f(whic)m(h)g(normally)h(acts)g(in)f(a)h(forw)m
(ard)f(direction,)i(that)150 3979 y(command)g(will)h(act)g(in)f(a)h
(bac)m(kw)m(ard)f(direction.)57 b(F)-8 b(or)36 b(example,)h(to)f(kill)g
(text)g(bac)m(k)g(to)g(the)g(start)g(of)150 4088 y(the)31
-b(line,)g(y)m(ou)f(migh)m(t)h(t)m(yp)s(e)g(`)p Fs(M--)f(C-k)p
-Ft('.)275 4225 y(The)d(general)i(w)m(a)m(y)h(to)e(pass)g(n)m(umeric)g
+b(line,)g(y)m(ou)f(migh)m(t)h(t)m(yp)s(e)g(`)p Ft(M--)f(C-k)p
+Fu('.)275 4225 y(The)d(general)i(w)m(a)m(y)h(to)e(pass)g(n)m(umeric)g
(argumen)m(ts)h(to)g(a)f(command)g(is)g(to)h(t)m(yp)s(e)f(meta)i
(digits)e(b)s(efore)150 4334 y(the)j(command.)42 b(If)30
b(the)h(\014rst)f(`digit')i(t)m(yp)s(ed)f(is)g(a)g(min)m(us)f(sign)h
-(\(`)p Fs(-)p Ft('\),)h(then)f(the)g(sign)f(of)h(the)g(argumen)m(t)150
+(\(`)p Ft(-)p Fu('\),)h(then)f(the)g(sign)f(of)h(the)g(argumen)m(t)150
4444 y(will)39 b(b)s(e)e(negativ)m(e.)66 b(Once)38 b(y)m(ou)h(ha)m(v)m
(e)g(t)m(yp)s(ed)f(one)h(meta)g(digit)g(to)f(get)i(the)e(argumen)m(t)h
(started,)i(y)m(ou)150 4554 y(can)29 b(t)m(yp)s(e)g(the)g(remainder)f
(of)h(the)g(digits,)h(and)f(then)f(the)h(command.)40
-b(F)-8 b(or)30 b(example,)g(to)f(giv)m(e)i(the)e Fi(C-d)150
-4663 y Ft(command)37 b(an)g(argumen)m(t)h(of)g(10,)i(y)m(ou)e(could)f
-(t)m(yp)s(e)h(`)p Fs(M-1)29 b(0)h(C-d)p Ft(',)39 b(whic)m(h)e(will)h
+b(F)-8 b(or)30 b(example,)g(to)f(giv)m(e)i(the)e Fj(C-d)150
+4663 y Fu(command)37 b(an)g(argumen)m(t)h(of)g(10,)i(y)m(ou)e(could)f
+(t)m(yp)s(e)h(`)p Ft(M-1)29 b(0)h(C-d)p Fu(',)39 b(whic)m(h)e(will)h
(delete)h(the)e(next)h(ten)150 4773 y(c)m(haracters)32
-b(on)e(the)h(input)e(line.)150 4974 y Fj(8.2.5)63 b(Searc)m(hing)40
-b(for)i(Commands)g(in)f(the)g(History)150 5121 y Ft(Readline)35
+b(on)e(the)h(input)e(line.)150 4974 y Fk(8.2.5)63 b(Searc)m(hing)40
+b(for)i(Commands)g(in)f(the)g(History)150 5121 y Fu(Readline)35
b(pro)m(vides)f(commands)g(for)g(searc)m(hing)h(through)e(the)i
(command)f(history)g(\(see)h(Section)g(9.1)150 5230 y([Bash)i(History)h
-(F)-8 b(acilities],)42 b(page)37 b(134\))i(for)d(lines)h(con)m(taining)
+(F)-8 b(acilities],)42 b(page)37 b(133\))i(for)d(lines)h(con)m(taining)
i(a)e(sp)s(eci\014ed)f(string.)60 b(There)36 b(are)i(t)m(w)m(o)150
-5340 y(searc)m(h)31 b(mo)s(des:)40 b Fq(incremen)m(tal)35
-b Ft(and)30 b Fq(non-incremen)m(tal)p Ft(.)p eop end
-%%Page: 105 111
-TeXDict begin 105 110 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(105)275 299 y(Incremen)m(tal)26
+5340 y(searc)m(h)31 b(mo)s(des:)40 b Fr(incremen)m(tal)35
+b Fu(and)30 b Fr(non-incremen)m(tal)p Fu(.)p eop end
+%%Page: 104 110
+TeXDict begin 104 109 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(104)275 299 y(Incremen)m(tal)26
b(searc)m(hes)h(b)s(egin)e(b)s(efore)g(the)h(user)f(has)h(\014nished)e
(t)m(yping)i(the)g(searc)m(h)g(string.)39 b(As)26 b(eac)m(h)150
408 y(c)m(haracter)37 b(of)e(the)h(searc)m(h)g(string)f(is)h(t)m(yp)s
(man)m(y)g(c)m(haracters)i(as)150 628 y(needed)i(to)i(\014nd)d(the)i
(desired)f(history)h(en)m(try)-8 b(.)41 b(T)-8 b(o)29
b(searc)m(h)h(bac)m(kw)m(ard)f(in)f(the)h(history)g(for)f(a)i
-(particular)150 737 y(string,)g(t)m(yp)s(e)f Fi(C-r)p
-Ft(.)40 b(T)m(yping)29 b Fi(C-s)g Ft(searc)m(hes)h(forw)m(ard)f
+(particular)150 737 y(string,)g(t)m(yp)s(e)f Fj(C-r)p
+Fu(.)40 b(T)m(yping)29 b Fj(C-s)g Fu(searc)m(hes)h(forw)m(ard)f
(through)g(the)g(history)-8 b(.)41 b(The)29 b(c)m(haracters)i(presen)m
(t)150 847 y(in)38 b(the)g(v)-5 b(alue)38 b(of)g(the)g
-Fs(isearch-terminators)33 b Ft(v)-5 b(ariable)39 b(are)f(used)f(to)i
+Ft(isearch-terminators)33 b Fu(v)-5 b(ariable)39 b(are)f(used)f(to)i
(terminate)g(an)f(incremen)m(tal)150 956 y(searc)m(h.)71
b(If)40 b(that)h(v)-5 b(ariable)41 b(has)f(not)h(b)s(een)e(assigned)i
-(a)f(v)-5 b(alue,)44 b(the)c Fs(ESC)g Ft(and)f Fi(C-J)h
-Ft(c)m(haracters)i(will)150 1066 y(terminate)h(an)g(incremen)m(tal)g
-(searc)m(h.)78 b Fi(C-g)41 b Ft(will)i(ab)s(ort)f(an)g(incremen)m(tal)i
+(a)f(v)-5 b(alue,)44 b(the)c Ft(ESC)g Fu(and)f Fj(C-J)h
+Fu(c)m(haracters)i(will)150 1066 y(terminate)h(an)g(incremen)m(tal)g
+(searc)m(h.)78 b Fj(C-g)41 b Fu(will)i(ab)s(ort)f(an)g(incremen)m(tal)i
(searc)m(h)f(and)f(restore)h(the)150 1176 y(original)30
b(line.)41 b(When)28 b(the)h(searc)m(h)h(is)f(terminated,)h(the)f
(history)g(en)m(try)g(con)m(taining)h(the)f(searc)m(h)h(string)150
1285 y(b)s(ecomes)h(the)f(curren)m(t)g(line.)275 1428
y(T)-8 b(o)31 b(\014nd)e(other)j(matc)m(hing)g(en)m(tries)g(in)e(the)h
-(history)g(list,)h(t)m(yp)s(e)g Fi(C-r)e Ft(or)h Fi(C-s)f
-Ft(as)h(appropriate.)43 b(This)150 1537 y(will)26 b(searc)m(h)h(bac)m
+(history)g(list,)h(t)m(yp)s(e)g Fj(C-r)e Fu(or)h Fj(C-s)f
+Fu(as)h(appropriate.)43 b(This)150 1537 y(will)26 b(searc)m(h)h(bac)m
(kw)m(ard)g(or)f(forw)m(ard)g(in)f(the)i(history)f(for)g(the)g(next)g
(en)m(try)h(matc)m(hing)g(the)f(searc)m(h)h(string)150
1647 y(t)m(yp)s(ed)37 b(so)h(far.)63 b(An)m(y)38 b(other)f(k)m(ey)i
(sequence)f(b)s(ound)e(to)i(a)g(Readline)h(command)e(will)h(terminate)h
(the)150 1757 y(searc)m(h)26 b(and)f(execute)i(that)f(command.)39
-b(F)-8 b(or)26 b(instance,)h(a)f Fs(RET)f Ft(will)g(terminate)i(the)f
+b(F)-8 b(or)26 b(instance,)h(a)f Ft(RET)f Fu(will)g(terminate)i(the)f
(searc)m(h)g(and)e(accept)150 1866 y(the)30 b(line,)g(thereb)m(y)f
(executing)i(the)e(command)g(from)g(the)h(history)f(list.)41
b(A)29 b(mo)m(v)m(emen)m(t)j(command)d(will)150 1976
y(terminate)i(the)g(searc)m(h,)g(mak)m(e)h(the)e(last)h(line)g(found)e
(the)i(curren)m(t)f(line,)h(and)f(b)s(egin)g(editing.)275
2119 y(Readline)35 b(remem)m(b)s(ers)f(the)h(last)h(incremen)m(tal)g
-(searc)m(h)f(string.)54 b(If)34 b(t)m(w)m(o)j Fi(C-r)p
-Ft(s)c(are)i(t)m(yp)s(ed)g(without)150 2228 y(an)m(y)i(in)m(terv)m
+(searc)m(h)f(string.)54 b(If)34 b(t)m(w)m(o)j Fj(C-r)p
+Fu(s)c(are)i(t)m(yp)s(ed)g(without)150 2228 y(an)m(y)i(in)m(terv)m
(ening)g(c)m(haracters)h(de\014ning)e(a)h(new)f(searc)m(h)h(string,)h
(an)m(y)f(remem)m(b)s(ered)e(searc)m(h)i(string)g(is)150
2338 y(used.)275 2480 y(Non-incremen)m(tal)48 b(searc)m(hes)g(read)e
(searc)m(h)f(for)150 2590 y(matc)m(hing)d(history)e(lines.)78
b(The)42 b(searc)m(h)h(string)g(ma)m(y)g(b)s(e)f(t)m(yp)s(ed)g(b)m(y)g
(the)h(user)f(or)h(b)s(e)f(part)g(of)h(the)150 2700 y(con)m(ten)m(ts)32
-b(of)f(the)f(curren)m(t)g(line.)150 2944 y Fr(8.3)68
-b(Readline)47 b(Init)e(File)150 3104 y Ft(Although)f(the)g(Readline)g
+b(of)f(the)f(curren)m(t)g(line.)150 2944 y Fs(8.3)68
+b(Readline)47 b(Init)e(File)150 3104 y Fu(Although)f(the)g(Readline)g
(library)f(comes)i(with)e(a)h(set)h(of)f(Emacs-lik)m(e)h(k)m
(eybindings)f(installed)g(b)m(y)150 3213 y(default,)26
b(it)g(is)e(p)s(ossible)h(to)g(use)f(a)i(di\013eren)m(t)f(set)g(of)g(k)
m(eybindings.)38 b(An)m(y)25 b(user)f(can)h(customize)h(programs)150
3323 y(that)45 b(use)f(Readline)h(b)m(y)f(putting)g(commands)g(in)g(an)
-g Fq(inputrc)49 b Ft(\014le,)g(con)m(v)m(en)m(tionally)e(in)d(his)g
+g Fr(inputrc)49 b Fu(\014le,)g(con)m(v)m(en)m(tionally)e(in)d(his)g
(home)150 3433 y(directory)-8 b(.)59 b(The)35 b(name)i(of)f(this)g
(\014le)g(is)g(tak)m(en)h(from)f(the)g(v)-5 b(alue)37
-b(of)f(the)g(shell)h(v)-5 b(ariable)36 b Fs(INPUTRC)p
-Ft(.)56 b(If)150 3542 y(that)33 b(v)-5 b(ariable)33 b(is)g(unset,)f
-(the)h(default)f(is)h(`)p Fs(~/.inputrc)p Ft('.)44 b(If)32
-b(that)h(\014le)f(do)s(es)g(not)h(exist)g(or)g(cannot)g(b)s(e)150
-3652 y(read,)e(the)f(ultimate)i(default)e(is)h(`)p Fs(/etc/inputrc)p
-Ft('.)275 3794 y(When)e(a)h(program)f(whic)m(h)h(uses)f(the)h(Readline)
-g(library)f(starts)h(up,)f(the)h(init)g(\014le)f(is)h(read,)g(and)f
-(the)150 3904 y(k)m(ey)i(bindings)e(are)i(set.)275 4047
-y(In)26 b(addition,)i(the)f Fs(C-x)i(C-r)d Ft(command)h(re-reads)g
-(this)f(init)h(\014le,)h(th)m(us)f(incorp)s(orating)g(an)m(y)g(c)m
-(hanges)150 4156 y(that)k(y)m(ou)g(migh)m(t)g(ha)m(v)m(e)g(made)g(to)g
-(it.)150 4364 y Fj(8.3.1)63 b(Readline)40 b(Init)h(File)g(Syn)m(tax)150
-4511 y Ft(There)f(are)i(only)f(a)g(few)g(basic)g(constructs)h(allo)m(w)
+b(of)f(the)g(shell)h(v)-5 b(ariable)36 b Ft(INPUTRC)p
+Fu(.)56 b(If)150 3542 y(that)36 b(v)-5 b(ariable)36 b(is)f(unset,)h
+(the)f(default)h(is)f Ft(~/.inputrc)p Fu(.)52 b(If)35
+b(that)g(\014le)h(do)s(es)e(not)i(exist)g(or)f(cannot)h(b)s(e)150
+3652 y(read,)31 b(the)f(ultimate)i(default)e(is)h Ft(/etc/inputrc)p
+Fu(.)275 3794 y(When)e(a)h(program)f(whic)m(h)h(uses)f(the)h(Readline)g
+(library)f(starts)h(up,)f(the)h(init)g(\014le)f(is)h(read,)g(and)f(the)
+150 3904 y(k)m(ey)i(bindings)e(are)i(set.)275 4047 y(In)26
+b(addition,)i(the)f Ft(C-x)i(C-r)d Fu(command)h(re-reads)g(this)f(init)
+h(\014le,)h(th)m(us)f(incorp)s(orating)g(an)m(y)g(c)m(hanges)150
+4156 y(that)k(y)m(ou)g(migh)m(t)g(ha)m(v)m(e)g(made)g(to)g(it.)150
+4364 y Fk(8.3.1)63 b(Readline)40 b(Init)h(File)g(Syn)m(tax)150
+4511 y Fu(There)f(are)i(only)f(a)g(few)g(basic)g(constructs)h(allo)m(w)
m(ed)h(in)d(the)h(Readline)h(init)f(\014le.)73 b(Blank)41
b(lines)h(are)150 4620 y(ignored.)72 b(Lines)41 b(b)s(eginning)f(with)h
-(a)g(`)p Fs(#)p Ft(')g(are)h(commen)m(ts.)73 b(Lines)41
-b(b)s(eginning)f(with)g(a)i(`)p Fs($)p Ft(')f(indicate)150
+(a)g(`)p Ft(#)p Fu(')g(are)h(commen)m(ts.)73 b(Lines)41
+b(b)s(eginning)f(with)g(a)i(`)p Ft($)p Fu(')f(indicate)150
4730 y(conditional)e(constructs)f(\(see)g(Section)h(8.3.2)g
-([Conditional)g(Init)e(Constructs],)j(page)e(112\).)64
+([Conditional)g(Init)e(Constructs],)j(page)e(111\).)64
b(Other)150 4839 y(lines)31 b(denote)g(v)-5 b(ariable)31
b(settings)g(and)f(k)m(ey)h(bindings.)150 5011 y(V)-8
b(ariable)32 b(Settings)630 5121 y(Y)-8 b(ou)41 b(can)g(mo)s(dify)e
(the)i(run-time)f(b)s(eha)m(vior)g(of)h(Readline)g(b)m(y)f(altering)h
(the)g(v)-5 b(alues)41 b(of)630 5230 y(v)-5 b(ariables)34
-b(in)f(Readline)i(using)e(the)g Fs(set)g Ft(command)g(within)g(the)h
+b(in)f(Readline)i(using)e(the)g Ft(set)g Fu(command)g(within)g(the)h
(init)g(\014le.)50 b(The)33 b(syn)m(tax)630 5340 y(is)d(simple:)p
eop end
-%%Page: 106 112
-TeXDict begin 106 111 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(106)870 299 y Fs(set)47
-b Fi(variable)56 b(value)630 436 y Ft(Here,)29 b(for)e(example,)h(is)g
-(ho)m(w)f(to)h(c)m(hange)g(from)f(the)g(default)h(Emacs-lik)m(e)h(k)m
-(ey)f(binding)e(to)630 545 y(use)k Fs(vi)g Ft(line)h(editing)g
-(commands:)870 682 y Fs(set)47 b(editing-mode)d(vi)630
-819 y Ft(V)-8 b(ariable)36 b(names)f(and)g(v)-5 b(alues,)36
-b(where)f(appropriate,)h(are)g(recognized)g(without)f(regard)630
-929 y(to)c(case.)42 b(Unrecognized)31 b(v)-5 b(ariable)31
-b(names)g(are)f(ignored.)630 1066 y(Bo)s(olean)c(v)-5
-b(ariables)26 b(\(those)g(that)g(can)f(b)s(e)f(set)i(to)g(on)f(or)g
-(o\013)7 b(\))25 b(are)h(set)f(to)h(on)f(if)g(the)g(v)-5
-b(alue)26 b(is)630 1176 y(n)m(ull)e(or)g(empt)m(y)-8
-b(,)27 b Fq(on)d Ft(\(case-insensitiv)m(e\),)29 b(or)24
+%%Page: 105 111
+TeXDict begin 105 110 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(105)870 299 y Ft(set)47
+b Fj(variable)e(value)630 436 y Fu(Here,)29 b(for)e(example,)h(is)g(ho)
+m(w)f(to)h(c)m(hange)g(from)f(the)g(default)h(Emacs-lik)m(e)h(k)m(ey)f
+(binding)e(to)630 545 y(use)k Ft(vi)g Fu(line)h(editing)g(commands:)870
+682 y Ft(set)47 b(editing-mode)d(vi)630 819 y Fu(V)-8
+b(ariable)36 b(names)f(and)g(v)-5 b(alues,)36 b(where)f(appropriate,)h
+(are)g(recognized)g(without)f(regard)630 929 y(to)c(case.)42
+b(Unrecognized)31 b(v)-5 b(ariable)31 b(names)g(are)f(ignored.)630
+1066 y(Bo)s(olean)c(v)-5 b(ariables)26 b(\(those)g(that)g(can)f(b)s(e)f
+(set)i(to)g(on)f(or)g(o\013)7 b(\))25 b(are)h(set)f(to)h(on)f(if)g(the)
+g(v)-5 b(alue)26 b(is)630 1176 y(n)m(ull)e(or)g(empt)m(y)-8
+b(,)27 b Fr(on)d Fu(\(case-insensitiv)m(e\),)29 b(or)24
b(1.)39 b(An)m(y)25 b(other)f(v)-5 b(alue)25 b(results)f(in)g(the)g(v)
-5 b(ariable)630 1285 y(b)s(eing)30 b(set)h(to)g(o\013.)630
-1422 y(The)37 b Fs(bind)30 b(-V)37 b Ft(command)g(lists)i(the)f(curren)
+1422 y(The)37 b Ft(bind)30 b(-V)37 b Fu(command)g(lists)i(the)f(curren)
m(t)f(Readline)i(v)-5 b(ariable)38 b(names)g(and)f(v)-5
b(alues.)630 1532 y(See)31 b(Section)g(4.2)g([Bash)g(Builtins],)g(page)
g(48.)630 1669 y(A)f(great)i(deal)f(of)g(run-time)f(b)s(eha)m(vior)g
(is)g(c)m(hangeable)j(with)d(the)g(follo)m(wing)i(v)-5
-b(ariables.)630 1833 y Fs(bell-style)1110 1943 y Ft(Con)m(trols)44
+b(ariables.)630 1833 y Ft(bell-style)1110 1943 y Fu(Con)m(trols)44
b(what)g(happ)s(ens)e(when)h(Readline)i(w)m(an)m(ts)f(to)h(ring)e(the)h
(termi-)1110 2052 y(nal)37 b(b)s(ell.)61 b(If)37 b(set)h(to)g(`)p
-Fs(none)p Ft(',)g(Readline)g(nev)m(er)g(rings)e(the)i(b)s(ell.)61
-b(If)36 b(set)i(to)1110 2162 y(`)p Fs(visible)p Ft(',)32
+Ft(none)p Fu(',)g(Readline)g(nev)m(er)g(rings)e(the)i(b)s(ell.)61
+b(If)36 b(set)i(to)1110 2162 y(`)p Ft(visible)p Fu(',)32
b(Readline)i(uses)f(a)g(visible)g(b)s(ell)g(if)g(one)g(is)g(a)m(v)-5
-b(ailable.)51 b(If)33 b(set)g(to)1110 2271 y(`)p Fs(audible)p
-Ft(')j(\(the)i(default\),)i(Readline)e(attempts)g(to)h(ring)e(the)g
-(terminal's)1110 2381 y(b)s(ell.)630 2545 y Fs(bind-tty-special-chars)
-1110 2655 y Ft(If)45 b(set)h(to)f(`)p Fs(on)p Ft(',)50
+b(ailable.)51 b(If)33 b(set)g(to)1110 2271 y(`)p Ft(audible)p
+Fu(')j(\(the)i(default\),)i(Readline)e(attempts)g(to)h(ring)e(the)g
+(terminal's)1110 2381 y(b)s(ell.)630 2545 y Ft(bind-tty-special-chars)
+1110 2655 y Fu(If)45 b(set)h(to)f(`)p Ft(on)p Fu(',)50
b(Readline)45 b(attempts)i(to)f(bind)d(the)j(con)m(trol)g(c)m
(haracters)1110 2765 y(treated)36 b(sp)s(ecially)h(b)m(y)e(the)h(k)m
(ernel's)g(terminal)g(driv)m(er)f(to)h(their)f(Readline)1110
-2874 y(equiv)-5 b(alen)m(ts.)630 3039 y Fs(colored-stats)1110
-3148 y Ft(If)26 b(set)h(to)g(`)p Fs(on)p Ft(',)h(Readline)f(displa)m
+2874 y(equiv)-5 b(alen)m(ts.)630 3039 y Ft(colored-stats)1110
+3148 y Fu(If)26 b(set)h(to)g(`)p Ft(on)p Fu(',)h(Readline)f(displa)m
(ys)g(p)s(ossible)f(completions)h(using)f(di\013eren)m(t)1110
3258 y(colors)40 b(to)g(indicate)g(their)f(\014le)h(t)m(yp)s(e.)67
b(The)38 b(color)j(de\014nitions)d(are)i(tak)m(en)1110
-3367 y(from)24 b(the)h(v)-5 b(alue)25 b(of)g(the)g Fs(LS_COLORS)d
-Ft(en)m(vironmen)m(t)j(v)-5 b(ariable.)40 b(The)24 b(default)1110
-3477 y(is)30 b(`)p Fs(off)p Ft('.)630 3641 y Fs(comment-begin)1110
-3751 y Ft(The)f(string)g(to)h(insert)f(at)h(the)f(b)s(eginning)g(of)g
-(the)h(line)f(when)f(the)i Fs(insert-)1110 3861 y(comment)e
-Ft(command)j(is)f(executed.)42 b(The)29 b(default)i(v)-5
-b(alue)31 b(is)f Fs("#")p Ft(.)630 4025 y Fs(completion-display-width)
-1110 4134 y Ft(The)41 b(n)m(um)m(b)s(er)f(of)i(screen)g(columns)f(used)
+3367 y(from)24 b(the)h(v)-5 b(alue)25 b(of)g(the)g Ft(LS_COLORS)d
+Fu(en)m(vironmen)m(t)j(v)-5 b(ariable.)40 b(The)24 b(default)1110
+3477 y(is)30 b(`)p Ft(off)p Fu('.)630 3641 y Ft(comment-begin)1110
+3751 y Fu(The)62 b(string)g(to)h(insert)f(at)h(the)g(b)s(eginning)e(of)
+h(the)h(line)f(when)g(the)1110 3861 y Ft(insert-comment)26
+b Fu(command)31 b(is)f(executed.)42 b(The)30 b(default)g(v)-5
+b(alue)31 b(is)f Ft("#")p Fu(.)630 4025 y Ft(completion-display-width)
+1110 4134 y Fu(The)41 b(n)m(um)m(b)s(er)f(of)i(screen)g(columns)f(used)
g(to)h(displa)m(y)g(p)s(ossible)f(matc)m(hes)1110 4244
y(when)28 b(p)s(erforming)g(completion.)41 b(The)29 b(v)-5
b(alue)29 b(is)g(ignored)g(if)g(it)h(is)f(less)g(than)1110
b(A)26 b(v)-5 b(alue)27 b(of)f(0)h(will)f(cause)1110
4463 y(matc)m(hes)32 b(to)f(b)s(e)e(displa)m(y)m(ed)i(one)g(p)s(er)e
(line.)41 b(The)30 b(default)h(v)-5 b(alue)31 b(is)f(-1.)630
-4628 y Fs(completion-ignore-case)1110 4737 y Ft(If)d(set)h(to)g(`)p
-Fs(on)p Ft(',)g(Readline)g(p)s(erforms)e(\014lename)h(matc)m(hing)i
+4628 y Ft(completion-ignore-case)1110 4737 y Fu(If)d(set)h(to)g(`)p
+Ft(on)p Fu(',)g(Readline)g(p)s(erforms)e(\014lename)h(matc)m(hing)i
(and)e(completion)1110 4847 y(in)j(a)h(case-insensitiv)m(e)i(fashion.)
-40 b(The)30 b(default)h(v)-5 b(alue)30 b(is)h(`)p Fs(off)p
-Ft('.)630 5011 y Fs(completion-map-case)1110 5121 y Ft(If)22
-b(set)g(to)h(`)p Fs(on)p Ft(',)h(and)e Fq(completion-ignore-case)31
-b Ft(is)22 b(enabled,)i(Readline)f(treats)1110 5230 y(h)m(yphens)29
-b(\(`)p Fs(-)p Ft('\))j(and)e(underscores)g(\(`)p Fs(_)p
-Ft('\))i(as)f(equiv)-5 b(alen)m(t)32 b(when)e(p)s(erforming)1110
+40 b(The)30 b(default)h(v)-5 b(alue)30 b(is)h(`)p Ft(off)p
+Fu('.)630 5011 y Ft(completion-map-case)1110 5121 y Fu(If)22
+b(set)g(to)h(`)p Ft(on)p Fu(',)h(and)e Fr(completion-ignore-case)31
+b Fu(is)22 b(enabled,)i(Readline)f(treats)1110 5230 y(h)m(yphens)29
+b(\(`)p Ft(-)p Fu('\))j(and)e(underscores)g(\(`)p Ft(_)p
+Fu('\))i(as)f(equiv)-5 b(alen)m(t)32 b(when)e(p)s(erforming)1110
5340 y(case-insensitiv)m(e)j(\014lename)d(matc)m(hing)i(and)e
(completion.)p eop end
-%%Page: 107 113
-TeXDict begin 107 112 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(107)630 299 y Fs
-(completion-prefix-displa)o(y-le)o(ngth)1110 408 y Ft(The)31
+%%Page: 106 112
+TeXDict begin 106 111 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(106)630 299 y Ft
+(completion-prefix-displa)o(y-le)o(ngth)1110 408 y Fu(The)31
b(length)g(in)g(c)m(haracters)i(of)f(the)f(common)h(pre\014x)e(of)h(a)h
(list)g(of)f(p)s(ossible)1110 518 y(completions)g(that)f(is)g(displa)m
(y)m(ed)g(without)g(mo)s(di\014cation.)41 b(When)29 b(set)h(to)h(a)1110
628 y(v)-5 b(alue)26 b(greater)h(than)e(zero,)j(common)e(pre\014xes)e
(longer)j(than)e(this)g(v)-5 b(alue)27 b(are)1110 737
y(replaced)k(with)f(an)g(ellipsis)h(when)e(displa)m(ying)i(p)s(ossible)
-f(completions.)630 902 y Fs(completion-query-items)1110
-1011 y Ft(The)c(n)m(um)m(b)s(er)f(of)h(p)s(ossible)g(completions)h
+f(completions.)630 902 y Ft(completion-query-items)1110
+1011 y Fu(The)c(n)m(um)m(b)s(er)f(of)h(p)s(ossible)g(completions)h
(that)g(determines)f(when)f(the)i(user)1110 1121 y(is)i(ask)m(ed)h
(whether)f(the)h(list)g(of)f(p)s(ossibilities)h(should)e(b)s(e)h
(displa)m(y)m(ed.)41 b(If)29 b(the)1110 1230 y(n)m(um)m(b)s(er)d(of)h
b(alue)1110 1559 y(greater)26 b(than)f(or)f(equal)i(to)f(0.)40
b(A)24 b(negativ)m(e)j(v)-5 b(alue)26 b(means)e(Readline)i(should)1110
1669 y(nev)m(er)31 b(ask.)41 b(The)29 b(default)i(limit)g(is)g
-Fs(100)p Ft(.)630 1833 y Fs(convert-meta)1110 1943 y
-Ft(If)22 b(set)g(to)h(`)p Fs(on)p Ft(',)h(Readline)f(will)f(con)m(v)m
+Ft(100)p Fu(.)630 1833 y Ft(convert-meta)1110 1943 y
+Fu(If)22 b(set)g(to)h(`)p Ft(on)p Fu(',)h(Readline)f(will)f(con)m(v)m
(ert)i(c)m(haracters)f(with)f(the)g(eigh)m(th)h(bit)f(set)1110
-2052 y(to)33 b(an)e Fl(asci)r(i)h Ft(k)m(ey)h(sequence)f(b)m(y)g
+2052 y(to)33 b(an)e Fm(asci)r(i)h Fu(k)m(ey)h(sequence)f(b)m(y)g
(stripping)f(the)h(eigh)m(th)h(bit)f(and)f(pre\014xing)1110
-2162 y(an)24 b Fs(ESC)g Ft(c)m(haracter,)j(con)m(v)m(erting)f(them)f
+2162 y(an)24 b Ft(ESC)g Fu(c)m(haracter,)j(con)m(v)m(erting)f(them)f
(to)g(a)g(meta-pre\014xed)f(k)m(ey)h(sequence.)1110 2271
-y(The)30 b(default)g(v)-5 b(alue)31 b(is)g(`)p Fs(on)p
-Ft('.)630 2436 y Fs(disable-completion)1110 2545 y Ft(If)36
-b(set)h(to)h(`)p Fs(On)p Ft(',)g(Readline)f(will)g(inhibit)f(w)m(ord)h
+y(The)30 b(default)g(v)-5 b(alue)31 b(is)g(`)p Ft(on)p
+Fu('.)630 2436 y Ft(disable-completion)1110 2545 y Fu(If)36
+b(set)h(to)h(`)p Ft(On)p Fu(',)g(Readline)f(will)g(inhibit)f(w)m(ord)h
(completion.)60 b(Completion)1110 2655 y(c)m(haracters)28
b(will)e(b)s(e)f(inserted)h(in)m(to)h(the)g(line)f(as)g(if)g(they)h
-(had)e(b)s(een)g(mapp)s(ed)1110 2765 y(to)31 b Fs(self-insert)p
-Ft(.)38 b(The)30 b(default)g(is)h(`)p Fs(off)p Ft('.)630
-2929 y Fs(editing-mode)1110 3039 y Ft(The)d Fs(editing-mode)e
-Ft(v)-5 b(ariable)29 b(con)m(trols)h(whic)m(h)e(default)h(set)h(of)e(k)
+(had)e(b)s(een)g(mapp)s(ed)1110 2765 y(to)31 b Ft(self-insert)p
+Fu(.)38 b(The)30 b(default)g(is)h(`)p Ft(off)p Fu('.)630
+2929 y Ft(editing-mode)1110 3039 y Fu(The)d Ft(editing-mode)e
+Fu(v)-5 b(ariable)29 b(con)m(trols)h(whic)m(h)e(default)h(set)h(of)e(k)
m(ey)i(bind-)1110 3148 y(ings)25 b(is)g(used.)38 b(By)26
b(default,)g(Readline)g(starts)f(up)f(in)h(Emacs)g(editing)h(mo)s(de,)
1110 3258 y(where)j(the)g(k)m(eystrok)m(es)i(are)e(most)h(similar)f(to)
h(Emacs.)40 b(This)29 b(v)-5 b(ariable)30 b(can)1110
-3367 y(b)s(e)g(set)h(to)g(either)g(`)p Fs(emacs)p Ft(')e(or)h(`)p
-Fs(vi)p Ft('.)630 3532 y Fs(echo-control-characters)1110
-3641 y Ft(When)g(set)h(to)g(`)p Fs(on)p Ft(',)f(on)g(op)s(erating)h
+3367 y(b)s(e)g(set)h(to)g(either)g(`)p Ft(emacs)p Fu(')e(or)h(`)p
+Ft(vi)p Fu('.)630 3532 y Ft(echo-control-characters)1110
+3641 y Fu(When)g(set)h(to)g(`)p Ft(on)p Fu(',)f(on)g(op)s(erating)h
(systems)f(that)h(indicate)g(they)g(supp)s(ort)1110 3751
y(it,)i(readline)e(ec)m(ho)s(es)i(a)f(c)m(haracter)h(corresp)s(onding)d
(to)j(a)f(signal)g(generated)1110 3861 y(from)e(the)g(k)m(eyb)s(oard.)
-41 b(The)30 b(default)g(is)h(`)p Fs(on)p Ft('.)630 4025
-y Fs(enable-keypad)1110 4134 y Ft(When)23 b(set)h(to)g(`)p
-Fs(on)p Ft(',)h(Readline)f(will)g(try)f(to)h(enable)g(the)f
+41 b(The)30 b(default)g(is)h(`)p Ft(on)p Fu('.)630 4025
+y Ft(enable-keypad)1110 4134 y Fu(When)23 b(set)h(to)g(`)p
+Ft(on)p Fu(',)h(Readline)f(will)g(try)f(to)h(enable)g(the)f
(application)i(k)m(eypad)1110 4244 y(when)h(it)h(is)f(called.)41
b(Some)27 b(systems)f(need)h(this)f(to)h(enable)g(the)g(arro)m(w)g(k)m
-(eys.)1110 4354 y(The)j(default)g(is)h(`)p Fs(off)p Ft('.)630
-4518 y Fs(enable-meta-key)1110 4628 y Ft(When)40 b(set)g(to)g(`)p
-Fs(on)p Ft(',)j(Readline)d(will)g(try)g(to)g(enable)g(an)m(y)g(meta)h
+(eys.)1110 4354 y(The)j(default)g(is)h(`)p Ft(off)p Fu('.)630
+4518 y Ft(enable-meta-key)1110 4628 y Fu(When)40 b(set)g(to)g(`)p
+Ft(on)p Fu(',)j(Readline)d(will)g(try)g(to)g(enable)g(an)m(y)g(meta)h
(mo)s(di\014er)1110 4737 y(k)m(ey)i(the)e(terminal)i(claims)f(to)h
(supp)s(ort)d(when)h(it)h(is)g(called.)76 b(On)41 b(man)m(y)1110
4847 y(terminals,)c(the)e(meta)h(k)m(ey)g(is)f(used)g(to)h(send)e(eigh)
m(t-bit)j(c)m(haracters.)56 b(The)1110 4956 y(default)31
-b(is)f(`)p Fs(on)p Ft('.)630 5121 y Fs(expand-tilde)1110
-5230 y Ft(If)d(set)h(to)h(`)p Fs(on)p Ft(',)f(tilde)g(expansion)g(is)f
+b(is)f(`)p Ft(on)p Fu('.)630 5121 y Ft(expand-tilde)1110
+5230 y Fu(If)d(set)h(to)h(`)p Ft(on)p Fu(',)f(tilde)g(expansion)g(is)f
(p)s(erformed)f(when)h(Readline)h(attempts)1110 5340
y(w)m(ord)i(completion.)42 b(The)30 b(default)g(is)h(`)p
-Fs(off)p Ft('.)p eop end
-%%Page: 108 114
-TeXDict begin 108 113 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(108)630 299 y Fs
-(history-preserve-point)1110 408 y Ft(If)41 b(set)h(to)h(`)p
-Fs(on)p Ft(',)i(the)c(history)h(co)s(de)g(attempts)h(to)f(place)h(the)f
+Ft(off)p Fu('.)p eop end
+%%Page: 107 113
+TeXDict begin 107 112 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(107)630 299 y Ft
+(history-preserve-point)1110 408 y Fu(If)41 b(set)h(to)h(`)p
+Ft(on)p Fu(',)i(the)c(history)h(co)s(de)g(attempts)h(to)f(place)h(the)f
(p)s(oin)m(t)f(\(the)1110 518 y(curren)m(t)35 b(cursor)g(p)s(osition\))
g(at)h(the)g(same)f(lo)s(cation)i(on)e(eac)m(h)h(history)g(line)1110
-628 y(retriev)m(ed)h(with)f Fs(previous-history)c Ft(or)37
-b Fs(next-history)p Ft(.)55 b(The)36 b(default)1110 737
-y(is)30 b(`)p Fs(off)p Ft('.)630 883 y Fs(history-size)1110
-993 y Ft(Set)39 b(the)g(maxim)m(um)g(n)m(um)m(b)s(er)f(of)h(history)g
+628 y(retriev)m(ed)h(with)f Ft(previous-history)c Fu(or)37
+b Ft(next-history)p Fu(.)55 b(The)36 b(default)1110 737
+y(is)30 b(`)p Ft(off)p Fu('.)630 883 y Ft(history-size)1110
+993 y Fu(Set)39 b(the)g(maxim)m(um)g(n)m(um)m(b)s(er)f(of)h(history)g
(en)m(tries)h(sa)m(v)m(ed)g(in)f(the)g(history)1110 1103
y(list.)51 b(If)34 b(set)g(to)h(zero,)g(an)m(y)f(existing)h(history)f
(en)m(tries)g(are)g(deleted)h(and)e(no)1110 1212 y(new)e(en)m(tries)i
b(alue)32 b(less)g(than)f(zero,)i(the)f(n)m(um)m(b)s(er)1110
1322 y(of)f(history)f(en)m(tries)h(is)g(not)g(limited.)42
b(By)30 b(default,)h(the)g(n)m(um)m(b)s(er)e(of)i(history)1110
-1431 y(en)m(tries)g(is)g(not)f(limited.)630 1577 y Fs
-(horizontal-scroll-mode)1110 1687 y Ft(This)35 b(v)-5
+1431 y(en)m(tries)g(is)g(not)f(limited.)630 1577 y Ft
+(horizontal-scroll-mode)1110 1687 y Fu(This)35 b(v)-5
b(ariable)37 b(can)f(b)s(e)f(set)h(to)h(either)f(`)p
-Fs(on)p Ft(')g(or)g(`)p Fs(off)p Ft('.)57 b(Setting)36
-b(it)g(to)h(`)p Fs(on)p Ft(')1110 1797 y(means)26 b(that)h(the)f(text)h
+Ft(on)p Fu(')g(or)g(`)p Ft(off)p Fu('.)57 b(Setting)36
+b(it)g(to)h(`)p Ft(on)p Fu(')1110 1797 y(means)26 b(that)h(the)f(text)h
(of)g(the)f(lines)g(b)s(eing)g(edited)h(will)f(scroll)h(horizon)m
(tally)1110 1906 y(on)32 b(a)g(single)g(screen)g(line)g(when)e(they)i
(are)g(longer)h(than)e(the)h(width)f(of)h(the)1110 2016
y(screen,)27 b(instead)g(of)f(wrapping)f(on)m(to)i(a)f(new)g(screen)g
(line.)39 b(By)27 b(default,)g(this)1110 2125 y(v)-5
-b(ariable)31 b(is)g(set)f(to)i(`)p Fs(off)p Ft('.)630
-2271 y Fs(input-meta)1110 2381 y Ft(If)f(set)g(to)h(`)p
-Fs(on)p Ft(',)g(Readline)g(will)f(enable)h(eigh)m(t-bit)h(input)d(\(it)
+b(ariable)31 b(is)g(set)f(to)i(`)p Ft(off)p Fu('.)630
+2271 y Ft(input-meta)1110 2381 y Fu(If)f(set)g(to)h(`)p
+Ft(on)p Fu(',)g(Readline)g(will)f(enable)h(eigh)m(t-bit)h(input)d(\(it)
i(will)f(not)h(clear)1110 2491 y(the)40 b(eigh)m(th)g(bit)g(in)f(the)h
(c)m(haracters)h(it)f(reads\),)j(regardless)c(of)h(what)g(the)1110
2600 y(terminal)g(claims)h(it)g(can)f(supp)s(ort.)68
-b(The)39 b(default)h(v)-5 b(alue)40 b(is)g(`)p Fs(off)p
-Ft('.)69 b(The)1110 2710 y(name)30 b Fs(meta-flag)e Ft(is)j(a)f(synon)m
-(ym)g(for)g(this)h(v)-5 b(ariable.)630 2856 y Fs(isearch-terminators)
-1110 2966 y Ft(The)51 b(string)h(of)g(c)m(haracters)h(that)f(should)e
+b(The)39 b(default)h(v)-5 b(alue)40 b(is)g(`)p Ft(off)p
+Fu('.)69 b(The)1110 2710 y(name)30 b Ft(meta-flag)e Fu(is)j(a)f(synon)m
+(ym)g(for)g(this)h(v)-5 b(ariable.)630 2856 y Ft(isearch-terminators)
+1110 2966 y Fu(The)51 b(string)h(of)g(c)m(haracters)h(that)f(should)e
(terminate)j(an)f(incremen)m(tal)1110 3075 y(searc)m(h)25
b(without)g(subsequen)m(tly)g(executing)h(the)f(c)m(haracter)h(as)f(a)g
(command)1110 3185 y(\(see)38 b(Section)g(8.2.5)h([Searc)m(hing],)h
-(page)e(104\).)62 b(If)37 b(this)g(v)-5 b(ariable)38
+(page)e(103\).)62 b(If)37 b(this)g(v)-5 b(ariable)38
b(has)f(not)1110 3294 y(b)s(een)e(giv)m(en)h(a)g(v)-5
-b(alue,)37 b(the)f(c)m(haracters)h Fs(ESC)d Ft(and)h
-Fi(C-J)g Ft(will)h(terminate)g(an)1110 3404 y(incremen)m(tal)c(searc)m
-(h.)630 3550 y Fs(keymap)192 b Ft(Sets)39 b(Readline's)g(idea)h(of)f
+b(alue,)37 b(the)f(c)m(haracters)h Ft(ESC)d Fu(and)h
+Fj(C-J)g Fu(will)h(terminate)g(an)1110 3404 y(incremen)m(tal)c(searc)m
+(h.)630 3550 y Ft(keymap)192 b Fu(Sets)39 b(Readline's)g(idea)h(of)f
(the)g(curren)m(t)f(k)m(eymap)h(for)g(k)m(ey)g(binding)f(com-)1110
-3660 y(mands.)81 b(Acceptable)47 b Fs(keymap)42 b Ft(names)i(are)h
-Fs(emacs)p Ft(,)i Fs(emacs-standard)p Ft(,)1110 3769
-y Fs(emacs-meta)p Ft(,)99 b Fs(emacs-ctlx)p Ft(,)f Fs(vi)p
-Ft(,)j Fs(vi-move)p Ft(,)f Fs(vi-command)p Ft(,)f(and)1110
-3879 y Fs(vi-insert)p Ft(.)64 b Fs(vi)38 b Ft(is)h(equiv)-5
-b(alen)m(t)41 b(to)e Fs(vi-command)p Ft(;)i Fs(emacs)c
-Ft(is)i(equiv)-5 b(alen)m(t)1110 3988 y(to)33 b Fs(emacs-standard)p
-Ft(.)41 b(The)31 b(default)h(v)-5 b(alue)32 b(is)g Fs(emacs)p
-Ft(.)44 b(The)31 b(v)-5 b(alue)33 b(of)f(the)1110 4098
-y Fs(editing-mode)27 b Ft(v)-5 b(ariable)31 b(also)h(a\013ects)f(the)g
-(default)f(k)m(eymap.)630 4244 y Fs(keyseq-timeout)1110
-4354 y Ft(Sp)s(eci\014es)25 b(the)g(duration)g(Readline)h(will)g(w)m
+3660 y(mands.)81 b(Acceptable)47 b Ft(keymap)42 b Fu(names)i(are)h
+Ft(emacs)p Fu(,)i Ft(emacs-standard)p Fu(,)1110 3769
+y Ft(emacs-meta)p Fu(,)99 b Ft(emacs-ctlx)p Fu(,)f Ft(vi)p
+Fu(,)j Ft(vi-move)p Fu(,)f Ft(vi-command)p Fu(,)f(and)1110
+3879 y Ft(vi-insert)p Fu(.)64 b Ft(vi)38 b Fu(is)h(equiv)-5
+b(alen)m(t)41 b(to)e Ft(vi-command)p Fu(;)i Ft(emacs)c
+Fu(is)i(equiv)-5 b(alen)m(t)1110 3988 y(to)33 b Ft(emacs-standard)p
+Fu(.)41 b(The)31 b(default)h(v)-5 b(alue)32 b(is)g Ft(emacs)p
+Fu(.)44 b(The)31 b(v)-5 b(alue)33 b(of)f(the)1110 4098
+y Ft(editing-mode)27 b Fu(v)-5 b(ariable)31 b(also)h(a\013ects)f(the)g
+(default)f(k)m(eymap.)630 4244 y Ft(keyseq-timeout)1110
+4354 y Fu(Sp)s(eci\014es)25 b(the)g(duration)g(Readline)h(will)g(w)m
(ait)g(for)g(a)f(c)m(haracter)i(when)e(read-)1110 4463
y(ing)30 b(an)g(am)m(biguous)g(k)m(ey)h(sequence)f(\(one)g(that)h(can)f
(form)g(a)g(complete)h(k)m(ey)1110 4573 y(sequence)24
5230 y(Readline)30 b(will)f(w)m(ait)i(un)m(til)e(another)h(k)m(ey)g(is)
f(pressed)g(to)h(decide)f(whic)m(h)g(k)m(ey)1110 5340
y(sequence)i(to)g(complete.)42 b(The)30 b(default)g(v)-5
-b(alue)31 b(is)g Fs(500)p Ft(.)p eop end
-%%Page: 109 115
-TeXDict begin 109 114 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(109)630 299 y Fs(mark-directories)
-1110 408 y Ft(If)38 b(set)g(to)h(`)p Fs(on)p Ft(',)i(completed)e
+b(alue)31 b(is)g Ft(500)p Fu(.)p eop end
+%%Page: 108 114
+TeXDict begin 108 113 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(108)630 299 y Ft(mark-directories)
+1110 408 y Fu(If)38 b(set)g(to)h(`)p Ft(on)p Fu(',)i(completed)e
(directory)f(names)g(ha)m(v)m(e)i(a)e(slash)g(app)s(ended.)1110
-518 y(The)30 b(default)g(is)h(`)p Fs(on)p Ft('.)630 676
-y Fs(mark-modified-lines)1110 786 y Ft(This)k(v)-5 b(ariable,)38
-b(when)d(set)h(to)h(`)p Fs(on)p Ft(',)g(causes)g(Readline)f(to)h
-(displa)m(y)f(an)f(as-)1110 896 y(terisk)f(\(`)p Fs(*)p
-Ft('\))h(at)f(the)g(start)g(of)g(history)g(lines)g(whic)m(h)f(ha)m(v)m
+518 y(The)30 b(default)g(is)h(`)p Ft(on)p Fu('.)630 676
+y Ft(mark-modified-lines)1110 786 y Fu(This)k(v)-5 b(ariable,)38
+b(when)d(set)h(to)h(`)p Ft(on)p Fu(',)g(causes)g(Readline)f(to)h
+(displa)m(y)f(an)f(as-)1110 896 y(terisk)f(\(`)p Ft(*)p
+Fu('\))h(at)f(the)g(start)g(of)g(history)g(lines)g(whic)m(h)f(ha)m(v)m
(e)i(b)s(een)e(mo)s(di\014ed.)1110 1005 y(This)d(v)-5
-b(ariable)31 b(is)f(`)p Fs(off)p Ft(')g(b)m(y)g(default.)630
-1163 y Fs(mark-symlinked-directori)o(es)1110 1273 y Ft(If)44
-b(set)h(to)h(`)p Fs(on)p Ft(',)i(completed)e(names)f(whic)m(h)f(are)h
-(sym)m(b)s(olic)g(links)g(to)g(di-)1110 1383 y(rectories)j(ha)m(v)m(e)f
-(a)g(slash)f(app)s(ended)e(\(sub)5 b(ject)47 b(to)g(the)f(v)-5
-b(alue)47 b(of)f Fs(mark-)1110 1492 y(directories)p Ft(\).)38
-b(The)30 b(default)g(is)h(`)p Fs(off)p Ft('.)630 1650
-y Fs(match-hidden-files)1110 1760 y Ft(This)21 b(v)-5
-b(ariable,)25 b(when)d(set)g(to)h(`)p Fs(on)p Ft(',)h(causes)f
+b(ariable)31 b(is)f(`)p Ft(off)p Fu(')g(b)m(y)g(default.)630
+1163 y Ft(mark-symlinked-directori)o(es)1110 1273 y Fu(If)59
+b(set)h(to)g(`)p Ft(on)p Fu(',)67 b(completed)60 b(names)f(whic)m(h)g
+(are)h(sym)m(b)s(olic)g(links)f(to)1110 1383 y(directories)71
+b(ha)m(v)m(e)f(a)g(slash)f(app)s(ended)f(\(sub)5 b(ject)70
+b(to)g(the)g(v)-5 b(alue)70 b(of)1110 1492 y Ft(mark-directories)p
+Fu(\).)37 b(The)30 b(default)g(is)g(`)p Ft(off)p Fu('.)630
+1650 y Ft(match-hidden-files)1110 1760 y Fu(This)21 b(v)-5
+b(ariable,)25 b(when)d(set)g(to)h(`)p Ft(on)p Fu(',)h(causes)f
(Readline)g(to)g(matc)m(h)g(\014les)f(whose)1110 1870
-y(names)44 b(b)s(egin)g(with)g(a)g(`)p Fs(.)p Ft(')g(\(hidden)f
+y(names)44 b(b)s(egin)g(with)g(a)g(`)p Ft(.)p Fu(')g(\(hidden)f
(\014les\))i(when)e(p)s(erforming)g(\014lename)1110 1979
-y(completion.)75 b(If)41 b(set)g(to)h(`)p Fs(off)p Ft(',)i(the)e
-(leading)g(`)p Fs(.)p Ft(')f(m)m(ust)g(b)s(e)g(supplied)f(b)m(y)1110
+y(completion.)75 b(If)41 b(set)g(to)h(`)p Ft(off)p Fu(',)i(the)e
+(leading)g(`)p Ft(.)p Fu(')f(m)m(ust)g(b)s(e)g(supplied)f(b)m(y)1110
2089 y(the)34 b(user)g(in)g(the)g(\014lename)g(to)h(b)s(e)f(completed.)
-53 b(This)33 b(v)-5 b(ariable)35 b(is)f(`)p Fs(on)p Ft(')g(b)m(y)1110
-2198 y(default.)630 2357 y Fs(menu-complete-display-pr)o(efix)1110
-2466 y Ft(If)f(set)h(to)g(`)p Fs(on)p Ft(',)h(men)m(u)e(completion)i
+53 b(This)33 b(v)-5 b(ariable)35 b(is)f(`)p Ft(on)p Fu(')g(b)m(y)1110
+2198 y(default.)630 2357 y Ft(menu-complete-display-pr)o(efix)1110
+2466 y Fu(If)f(set)h(to)g(`)p Ft(on)p Fu(',)h(men)m(u)e(completion)i
(displa)m(ys)e(the)h(common)g(pre\014x)e(of)i(the)1110
2576 y(list)k(of)g(p)s(ossible)f(completions)i(\(whic)m(h)e(ma)m(y)h(b)
s(e)f(empt)m(y\))i(b)s(efore)e(cycling)1110 2685 y(through)30
-b(the)g(list.)42 b(The)29 b(default)i(is)f(`)p Fs(off)p
-Ft('.)630 2844 y Fs(output-meta)1110 2953 y Ft(If)35
-b(set)h(to)g(`)p Fs(on)p Ft(',)h(Readline)f(will)g(displa)m(y)f(c)m
+b(the)g(list.)42 b(The)29 b(default)i(is)f(`)p Ft(off)p
+Fu('.)630 2844 y Ft(output-meta)1110 2953 y Fu(If)35
+b(set)h(to)g(`)p Ft(on)p Fu(',)h(Readline)f(will)g(displa)m(y)f(c)m
(haracters)i(with)e(the)h(eigh)m(th)g(bit)1110 3063 y(set)h(directly)g
(rather)f(than)g(as)h(a)g(meta-pre\014xed)f(escap)s(e)h(sequence.)59
-b(The)1110 3173 y(default)31 b(is)f(`)p Fs(off)p Ft('.)630
-3331 y Fs(page-completions)1110 3440 y Ft(If)j(set)i(to)f(`)p
-Fs(on)p Ft(',)h(Readline)g(uses)e(an)h(in)m(ternal)h
-Fs(more)p Ft(-lik)m(e)f(pager)g(to)h(displa)m(y)1110
+b(The)1110 3173 y(default)31 b(is)f(`)p Ft(off)p Fu('.)630
+3331 y Ft(page-completions)1110 3440 y Fu(If)j(set)i(to)f(`)p
+Ft(on)p Fu(',)h(Readline)g(uses)e(an)h(in)m(ternal)h
+Ft(more)p Fu(-lik)m(e)f(pager)g(to)h(displa)m(y)1110
3550 y(a)e(screenful)f(of)g(p)s(ossible)g(completions)i(at)f(a)g(time.)
-47 b(This)31 b(v)-5 b(ariable)34 b(is)e(`)p Fs(on)p Ft(')1110
-3660 y(b)m(y)e(default.)630 3818 y Fs(print-completions-horizo)o(ntal)o
-(ly)1110 3927 y Ft(If)23 b(set)i(to)g(`)p Fs(on)p Ft(',)g(Readline)g
+47 b(This)31 b(v)-5 b(ariable)34 b(is)e(`)p Ft(on)p Fu(')1110
+3660 y(b)m(y)e(default.)630 3818 y Ft(print-completions-horizo)o(ntal)o
+(ly)1110 3927 y Fu(If)23 b(set)i(to)g(`)p Ft(on)p Fu(',)g(Readline)g
(will)f(displa)m(y)g(completions)h(with)f(matc)m(hes)h(sorted)1110
4037 y(horizon)m(tally)45 b(in)e(alphab)s(etical)i(order,)i(rather)c
(than)g(do)m(wn)g(the)h(screen.)1110 4147 y(The)30 b(default)g(is)h(`)p
-Fs(off)p Ft('.)630 4305 y Fs(revert-all-at-newline)1110
-4415 y Ft(If)e(set)h(to)g(`)p Fs(on)p Ft(',)g(Readline)g(will)g(undo)f
+Ft(off)p Fu('.)630 4305 y Ft(revert-all-at-newline)1110
+4415 y Fu(If)e(set)h(to)g(`)p Ft(on)p Fu(',)g(Readline)g(will)g(undo)f
(all)h(c)m(hanges)h(to)f(history)g(lines)f(b)s(efore)1110
-4524 y(returning)f(when)f Fs(accept-line)f Ft(is)j(executed.)41
+4524 y(returning)f(when)f Ft(accept-line)f Fu(is)j(executed.)41
b(By)29 b(default,)g(history)g(lines)1110 4634 y(ma)m(y)42
b(b)s(e)g(mo)s(di\014ed)e(and)h(retain)i(individual)e(undo)g(lists)h
-(across)g(calls)h(to)1110 4743 y Fs(readline)p Ft(.)38
-b(The)30 b(default)h(is)f(`)p Fs(off)p Ft('.)630 4902
-y Fs(show-all-if-ambiguous)1110 5011 y Ft(This)f(alters)i(the)f
+(across)g(calls)h(to)1110 4743 y Ft(readline)p Fu(.)38
+b(The)30 b(default)h(is)f(`)p Ft(off)p Fu('.)630 4902
+y Ft(show-all-if-ambiguous)1110 5011 y Fu(This)f(alters)i(the)f
(default)g(b)s(eha)m(vior)g(of)g(the)h(completion)g(functions.)40
-b(If)29 b(set)1110 5121 y(to)f(`)p Fs(on)p Ft(',)g(w)m(ords)f(whic)m(h)
+b(If)29 b(set)1110 5121 y(to)f(`)p Ft(on)p Fu(',)g(w)m(ords)f(whic)m(h)
g(ha)m(v)m(e)i(more)f(than)f(one)h(p)s(ossible)f(completion)h(cause)
1110 5230 y(the)39 b(matc)m(hes)h(to)g(b)s(e)e(listed)h(immediately)i
(instead)e(of)g(ringing)g(the)g(b)s(ell.)1110 5340 y(The)30
-b(default)g(v)-5 b(alue)31 b(is)g(`)p Fs(off)p Ft('.)p
+b(default)g(v)-5 b(alue)31 b(is)g(`)p Ft(off)p Fu('.)p
eop end
-%%Page: 110 116
-TeXDict begin 110 115 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(110)630 299 y Fs
-(show-all-if-unmodified)1110 408 y Ft(This)38 b(alters)h(the)g(default)
+%%Page: 109 115
+TeXDict begin 109 114 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(109)630 299 y Ft
+(show-all-if-unmodified)1110 408 y Fu(This)38 b(alters)h(the)g(default)
g(b)s(eha)m(vior)g(of)f(the)h(completion)h(functions)e(in)h(a)1110
-518 y(fashion)25 b(similar)g(to)h Fq(sho)m(w-all-if-am)m(biguous)t
-Ft(.)41 b(If)24 b(set)i(to)f(`)p Fs(on)p Ft(',)i(w)m(ords)d(whic)m(h)
+518 y(fashion)25 b(similar)h(to)g Fr(sho)m(w-all-if-am)m(biguous)p
+Fu(.)41 b(If)25 b(set)h(to)h(`)p Ft(on)p Fu(',)f(w)m(ords)f(whic)m(h)
1110 628 y(ha)m(v)m(e)32 b(more)f(than)f(one)i(p)s(ossible)e
(completion)i(without)f(an)m(y)g(p)s(ossible)f(par-)1110
737 y(tial)43 b(completion)h(\(the)f(p)s(ossible)f(completions)h(don't)
f(share)g(a)h(common)1110 847 y(pre\014x\))30 b(cause)g(the)h(matc)m
(hes)g(to)g(b)s(e)f(listed)g(immediately)i(instead)e(of)h(ring-)1110
956 y(ing)g(the)f(b)s(ell.)41 b(The)30 b(default)g(v)-5
-b(alue)31 b(is)f(`)p Fs(off)p Ft('.)630 1113 y Fs(show-mode-in-prompt)
-1110 1223 y Ft(If)35 b(set)i(to)f(`)p Fs(on)p Ft(',)h(add)e(a)h(c)m
+b(alue)31 b(is)f(`)p Ft(off)p Fu('.)630 1113 y Ft(show-mode-in-prompt)
+1110 1223 y Fu(If)35 b(set)i(to)f(`)p Ft(on)p Fu(',)h(add)e(a)h(c)m
(haracter)i(to)e(the)g(b)s(eginning)f(of)h(the)g(prompt)f(in-)1110
1332 y(dicating)43 b(the)f(editing)h(mo)s(de:)63 b(emacs)43
-b(\(`)p Fs(@)p Ft('\),)i(vi)d(command)g(\(`)p Fs(:)p
-Ft('\),)k(or)c(vi)1110 1442 y(insertion)30 b(\(`)p Fs(+)p
-Ft('\).)42 b(The)30 b(default)h(v)-5 b(alue)30 b(is)h(`)p
-Fs(off)p Ft('.)630 1598 y Fs(skip-completed-text)1110
-1708 y Ft(If)h(set)i(to)f(`)p Fs(on)p Ft(',)h(this)f(alters)g(the)g
+b(\(`)p Ft(@)p Fu('\),)i(vi)d(command)g(\(`)p Ft(:)p
+Fu('\),)k(or)c(vi)1110 1442 y(insertion)30 b(\(`)p Ft(+)p
+Fu('\).)42 b(The)30 b(default)h(v)-5 b(alue)30 b(is)h(`)p
+Ft(off)p Fu('.)630 1598 y Ft(skip-completed-text)1110
+1708 y Fu(If)h(set)i(to)f(`)p Ft(on)p Fu(',)h(this)f(alters)g(the)g
(default)g(completion)h(b)s(eha)m(vior)f(when)f(in-)1110
1817 y(serting)d(a)h(single)g(matc)m(h)f(in)m(to)h(the)g(line.)40
b(It's)30 b(only)f(activ)m(e)i(when)d(p)s(erform-)1110
2256 y(follo)m(wing)c(the)f(cursor)f(are)h(not)g(duplicated.)45
b(F)-8 b(or)32 b(instance,)h(if)f(this)f(is)h(en-)1110
2365 y(abled,)43 b(attempting)f(completion)g(when)d(the)i(cursor)f(is)g
-(after)h(the)g(`)p Fs(e)p Ft(')f(in)1110 2475 y(`)p Fs(Makefile)p
-Ft(')c(will)i(result)f(in)g(`)p Fs(Makefile)p Ft(')f(rather)h(than)h(`)
-p Fs(Makefilefile)p Ft(',)1110 2585 y(assuming)d(there)g(is)h(a)f
+(after)h(the)g(`)p Ft(e)p Fu(')f(in)1110 2475 y(`)p Ft(Makefile)p
+Fu(')c(will)i(result)f(in)g(`)p Ft(Makefile)p Fu(')f(rather)h(than)h(`)
+p Ft(Makefilefile)p Fu(',)1110 2585 y(assuming)d(there)g(is)h(a)f
(single)h(p)s(ossible)f(completion.)56 b(The)35 b(default)g(v)-5
-b(alue)1110 2694 y(is)30 b(`)p Fs(off)p Ft('.)630 2851
-y Fs(visible-stats)1110 2960 y Ft(If)h(set)i(to)f(`)p
-Fs(on)p Ft(',)h(a)f(c)m(haracter)i(denoting)e(a)g(\014le's)g(t)m(yp)s
+b(alue)1110 2694 y(is)30 b(`)p Ft(off)p Fu('.)630 2851
+y Ft(visible-stats)1110 2960 y Fu(If)h(set)i(to)f(`)p
+Ft(on)p Fu(',)h(a)f(c)m(haracter)i(denoting)e(a)g(\014le's)g(t)m(yp)s
(e)g(is)g(app)s(ended)e(to)j(the)1110 3070 y(\014lename)e(when)e
(listing)i(p)s(ossible)f(completions.)42 b(The)30 b(default)g(is)h(`)p
-Fs(off)p Ft('.)150 3226 y(Key)f(Bindings)630 3336 y(The)41
+Ft(off)p Fu('.)150 3226 y(Key)f(Bindings)630 3336 y(The)41
b(syn)m(tax)i(for)f(con)m(trolling)h(k)m(ey)g(bindings)e(in)h(the)g
(init)g(\014le)g(is)g(simple.)75 b(First)43 b(y)m(ou)630
3446 y(need)27 b(to)i(\014nd)d(the)i(name)f(of)h(the)g(command)f(that)i
4479 y(In)i(addition)h(to)h(command)f(names,)i(readline)e(allo)m(ws)h
(k)m(eys)g(to)g(b)s(e)e(b)s(ound)f(to)j(a)f(string)630
4589 y(that)31 b(is)f(inserted)h(when)e(the)i(k)m(ey)g(is)f(pressed)g
-(\(a)h Fq(macro)5 b Ft(\).)630 4722 y(The)42 b Fs(bind)30
-b(-p)42 b Ft(command)h(displa)m(ys)g(Readline)g(function)g(names)g(and)
+(\(a)h Fr(macro)5 b Fu(\).)630 4722 y(The)42 b Ft(bind)30
+b(-p)42 b Fu(command)h(displa)m(ys)g(Readline)g(function)g(names)g(and)
f(bindings)g(in)h(a)630 4831 y(format)37 b(that)h(can)f(put)f(directly)
i(in)m(to)g(an)f(initialization)j(\014le.)60 b(See)38
b(Section)f(4.2)i([Bash)630 4941 y(Builtins],)31 b(page)g(48.)630
-5097 y Fq(k)m(eyname)5 b Ft(:)42 b Fq(function-name)35
-b Ft(or)c Fq(macro)1110 5207 y(k)m(eyname)k Ft(is)29
+5097 y Fr(k)m(eyname)5 b Fu(:)42 b Fr(function-name)35
+b Fu(or)c Fr(macro)1110 5207 y(k)m(eyname)k Fu(is)29
b(the)f(name)h(of)g(a)g(k)m(ey)h(sp)s(elled)e(out)h(in)g(English.)39
-b(F)-8 b(or)30 b(example:)1350 5340 y Fs(Control-u:)45
+b(F)-8 b(or)30 b(example:)1350 5340 y Ft(Control-u:)45
b(universal-argument)p eop end
-%%Page: 111 117
-TeXDict begin 111 116 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(111)1350 299 y Fs(Meta-Rubout:)44
+%%Page: 110 116
+TeXDict begin 110 115 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(110)1350 299 y Ft(Meta-Rubout:)44
b(backward-kill-word)1350 408 y(Control-o:)h(">)i(output")1110
-542 y Ft(In)38 b(the)h(ab)s(o)m(v)m(e)h(example,)h Fi(C-u)d
-Ft(is)h(b)s(ound)d(to)k(the)e(function)h Fs(universal-)1110
-652 y(argument)p Ft(,)f Fi(M-DEL)e Ft(is)i(b)s(ound)e(to)i(the)g
-(function)g Fs(backward-kill-word)p Ft(,)1110 762 y(and)g
-Fi(C-o)g Ft(is)h(b)s(ound)e(to)j(run)d(the)j(macro)f(expressed)g(on)f
-(the)i(righ)m(t)f(hand)1110 871 y(side)30 b(\(that)i(is,)e(to)h(insert)
-g(the)f(text)i(`)p Fs(>)e(output)p Ft(')f(in)m(to)i(the)g(line\).)1110
-1005 y(A)37 b(n)m(um)m(b)s(er)f(of)h(sym)m(b)s(olic)g(c)m(haracter)i
-(names)e(are)g(recognized)h(while)f(pro-)1110 1115 y(cessing)22
-b(this)g(k)m(ey)g(binding)e(syn)m(tax:)37 b Fq(DEL)p
-Ft(,)22 b Fq(ESC)8 b Ft(,)20 b Fq(ESCAPE)5 b Ft(,)21
-b Fq(LFD)5 b Ft(,)22 b Fq(NEW-)1110 1224 y(LINE)5 b Ft(,)31
-b Fq(RET)7 b Ft(,)29 b Fq(RETURN)10 b Ft(,)30 b Fq(R)m(UBOUT)7
-b Ft(,)31 b Fq(SP)-8 b(A)m(CE)5 b Ft(,)31 b Fq(SPC)8
-b Ft(,)29 b(and)h Fq(T)-8 b(AB)5 b Ft(.)630 1383 y Fs(")p
-Fq(k)m(eyseq)r Fs(")p Ft(:)41 b Fq(function-name)36 b
-Ft(or)30 b Fq(macro)1110 1492 y(k)m(eyseq)k Ft(di\013ers)d(from)f
-Fq(k)m(eyname)37 b Ft(ab)s(o)m(v)m(e)32 b(in)f(that)h(strings)f
-(denoting)g(an)g(en-)1110 1602 y(tire)j(k)m(ey)h(sequence)f(can)g(b)s
+544 y Fu(In)94 b(the)g(ab)s(o)m(v)m(e)i(example,)111
+b Fj(C-u)94 b Fu(is)g(b)s(ound)f(to)i(the)f(function)1110
+653 y Ft(universal-argument)p Fu(,)124 b Fj(M-DEL)107
+b Fu(is)i(b)s(ound)e(to)j(the)f(function)1110 763 y Ft
+(backward-kill-word)p Fu(,)75 b(and)69 b Fj(C-o)g Fu(is)h(b)s(ound)e
+(to)j(run)d(the)i(macro)1110 873 y(expressed)45 b(on)h(the)g(righ)m(t)g
+(hand)e(side)i(\(that)h(is,)i(to)e(insert)e(the)h(text)h(`)p
+Ft(>)1110 982 y(output)p Fu(')29 b(in)m(to)i(the)g(line\).)1110
+1118 y(A)62 b(n)m(um)m(b)s(er)e(of)i(sym)m(b)s(olic)h(c)m(haracter)g
+(names)f(are)g(recognized)h(while)1110 1227 y(pro)s(cessing)40
+b(this)f(k)m(ey)i(binding)e(syn)m(tax:)60 b Fr(DEL)p
+Fu(,)42 b Fr(ESC)p Fu(,)g Fr(ESCAPE)p Fu(,)f Fr(LFD)p
+Fu(,)1110 1337 y Fr(NEWLINE)p Fu(,)31 b Fr(RET)p Fu(,)f
+Fr(RETURN)p Fu(,)g Fr(R)m(UBOUT)p Fu(,)h Fr(SP)-8 b(A)m(CE)p
+Fu(,)31 b Fr(SPC)p Fu(,)e(and)h Fr(T)-8 b(AB)p Fu(.)630
+1498 y Ft(")p Fr(k)m(eyseq)r Ft(")p Fu(:)41 b Fr(function-name)36
+b Fu(or)30 b Fr(macro)1110 1608 y(k)m(eyseq)k Fu(di\013ers)d(from)f
+Fr(k)m(eyname)37 b Fu(ab)s(o)m(v)m(e)32 b(in)f(that)h(strings)f
+(denoting)g(an)g(en-)1110 1717 y(tire)j(k)m(ey)h(sequence)f(can)g(b)s
(e)f(sp)s(eci\014ed,)h(b)m(y)f(placing)i(the)f(k)m(ey)g(sequence)g(in)
-1110 1711 y(double)29 b(quotes.)41 b(Some)29 b Fl(gnu)h
-Ft(Emacs)f(st)m(yle)i(k)m(ey)f(escap)s(es)g(can)g(b)s(e)f(used,)g(as)
-1110 1821 y(in)k(the)h(follo)m(wing)i(example,)f(but)e(the)h(sp)s
-(ecial)h(c)m(haracter)g(names)f(are)g(not)1110 1931 y(recognized.)1350
-2064 y Fs("\\C-u":)46 b(universal-argument)1350 2174
-y("\\C-x\\C-r":)f(re-read-init-file)1350 2284 y("\\e[11~":)g("Function)
-h(Key)g(1")1110 2418 y Ft(In)64 b(the)g(ab)s(o)m(v)m(e)i(example,)74
-b Fi(C-u)64 b Ft(is)g(again)i(b)s(ound)c(to)k(the)e(function)1110
-2527 y Fs(universal-argument)39 b Ft(\(just)k(as)h(it)g(w)m(as)g(in)g
-(the)f(\014rst)g(example\),)49 b(`)p Fi(C-x)1110 2637
-y(C-r)p Ft(')30 b(is)g(b)s(ound)e(to)j(the)g(function)f
-Fs(re-read-init-file)p Ft(,)c(and)j(`)p Fs(ESC)h([)g(1)g(1)1110
-2746 y(~)p Ft(')g(is)h(b)s(ound)d(to)j(insert)f(the)h(text)g(`)p
-Fs(Function)e(Key)g(1)p Ft('.)630 2905 y(The)g(follo)m(wing)i
-Fl(gnu)f Ft(Emacs)g(st)m(yle)h(escap)s(e)f(sequences)g(are)g(a)m(v)-5
-b(ailable)32 b(when)d(sp)s(ecifying)630 3014 y(k)m(ey)i(sequences:)630
-3173 y Fi(\\C-)336 b Ft(con)m(trol)32 b(pre\014x)630
-3331 y Fi(\\M-)336 b Ft(meta)31 b(pre\014x)630 3489 y
-Fi(\\e)384 b Ft(an)30 b(escap)s(e)h(c)m(haracter)630
-3647 y Fi(\\\\)384 b Ft(bac)m(kslash)630 3806 y Fi(\\)p
-Fs(")g(")p Ft(,)30 b(a)h(double)f(quotation)i(mark)630
-3964 y Fi(\\')384 b Fs(')p Ft(,)30 b(a)h(single)g(quote)g(or)f(ap)s
-(ostrophe)630 4122 y(In)d(addition)h(to)g(the)g Fl(gnu)f
-Ft(Emacs)h(st)m(yle)h(escap)s(e)f(sequences,)h(a)f(second)f(set)h(of)g
-(bac)m(kslash)630 4232 y(escap)s(es)j(is)f(a)m(v)-5 b(ailable:)630
-4390 y Fs(\\a)384 b Ft(alert)31 b(\(b)s(ell\))630 4548
-y Fs(\\b)384 b Ft(bac)m(kspace)630 4707 y Fs(\\d)g Ft(delete)630
-4865 y Fs(\\f)g Ft(form)30 b(feed)630 5023 y Fs(\\n)384
-b Ft(newline)630 5182 y Fs(\\r)g Ft(carriage)32 b(return)630
-5340 y Fs(\\t)384 b Ft(horizon)m(tal)32 b(tab)p eop end
-%%Page: 112 118
-TeXDict begin 112 117 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(112)630 299 y Fs(\\v)384
-b Ft(v)m(ertical)32 b(tab)630 451 y Fs(\\)p Fi(nnn)288
-b Ft(the)35 b(eigh)m(t-bit)h(c)m(haracter)g(whose)e(v)-5
-b(alue)35 b(is)g(the)f(o)s(ctal)i(v)-5 b(alue)35 b Fq(nnn)e
-Ft(\(one)i(to)1110 561 y(three)c(digits\))630 713 y Fs(\\x)p
-Fi(HH)288 b Ft(the)40 b(eigh)m(t-bit)h(c)m(haracter)g(whose)e(v)-5
-b(alue)39 b(is)h(the)f(hexadecimal)i(v)-5 b(alue)40 b
-Fq(HH)1110 823 y Ft(\(one)31 b(or)f(t)m(w)m(o)i(hex)e(digits\))630
-975 y(When)37 b(en)m(tering)h(the)g(text)g(of)g(a)g(macro,)i(single)e
-(or)f(double)g(quotes)h(m)m(ust)f(b)s(e)g(used)f(to)630
-1085 y(indicate)23 b(a)e(macro)h(de\014nition.)38 b(Unquoted)21
-b(text)i(is)e(assumed)g(to)h(b)s(e)f(a)h(function)f(name.)38
-b(In)630 1194 y(the)22 b(macro)f(b)s(o)s(dy)-8 b(,)23
-b(the)e(bac)m(kslash)h(escap)s(es)g(describ)s(ed)e(ab)s(o)m(v)m(e)j
-(are)e(expanded.)37 b(Bac)m(kslash)630 1304 y(will)j(quote)h(an)m(y)f
-(other)g(c)m(haracter)i(in)d(the)i(macro)f(text,)k(including)39
-b(`)p Fs(")p Ft(')h(and)g(`)p Fs(')p Ft('.)69 b(F)-8
-b(or)630 1414 y(example,)28 b(the)e(follo)m(wing)h(binding)d(will)i
-(mak)m(e)h(`)p Fi(C-x)j Fs(\\)p Ft(')c(insert)f(a)h(single)h(`)p
-Fs(\\)p Ft(')f(in)m(to)g(the)g(line:)870 1545 y Fs("\\C-x\\\\":)45
-b("\\\\")150 1737 y Fj(8.3.2)63 b(Conditional)41 b(Init)g(Constructs)
-150 1884 y Ft(Readline)c(implemen)m(ts)g(a)h(facilit)m(y)g(similar)f
+1110 1827 y(double)29 b(quotes.)41 b(Some)29 b Fm(gnu)h
+Fu(Emacs)f(st)m(yle)i(k)m(ey)f(escap)s(es)g(can)g(b)s(e)f(used,)g(as)
+1110 1936 y(in)k(the)h(follo)m(wing)i(example,)f(but)e(the)h(sp)s
+(ecial)h(c)m(haracter)g(names)f(are)g(not)1110 2046 y(recognized.)1350
+2181 y Ft("\\C-u":)46 b(universal-argument)1350 2291
+y("\\C-x\\C-r":)f(re-read-init-file)1350 2400 y("\\e[11~":)g("Function)
+h(Key)g(1")1110 2536 y Fu(In)64 b(the)g(ab)s(o)m(v)m(e)i(example,)74
+b Fj(C-u)64 b Fu(is)g(again)i(b)s(ound)c(to)k(the)e(function)1110
+2645 y Ft(universal-argument)39 b Fu(\(just)k(as)h(it)g(w)m(as)g(in)g
+(the)f(\014rst)g(example\),)49 b(`)p Fj(C-x)1110 2755
+y(C-r)p Fu(')30 b(is)g(b)s(ound)e(to)j(the)g(function)f
+Ft(re-read-init-file)p Fu(,)c(and)j(`)p Ft(ESC)h([)g(1)g(1)1110
+2865 y(~)p Fu(')g(is)h(b)s(ound)d(to)j(insert)f(the)h(text)g(`)p
+Ft(Function)e(Key)g(1)p Fu('.)630 3026 y(The)g(follo)m(wing)i
+Fm(gnu)f Fu(Emacs)g(st)m(yle)h(escap)s(e)f(sequences)g(are)g(a)m(v)-5
+b(ailable)32 b(when)d(sp)s(ecifying)630 3135 y(k)m(ey)i(sequences:)630
+3296 y Fj(\\C-)336 b Fu(con)m(trol)32 b(pre\014x)630
+3458 y Fj(\\M-)336 b Fu(meta)31 b(pre\014x)630 3619 y
+Fj(\\e)384 b Fu(an)30 b(escap)s(e)h(c)m(haracter)630
+3780 y Fj(\\\\)384 b Fu(bac)m(kslash)630 3941 y Fj(\\)p
+Ft(")g(")p Fu(,)30 b(a)h(double)f(quotation)i(mark)630
+4102 y Fj(\\')384 b Ft(')p Fu(,)30 b(a)h(single)g(quote)g(or)f(ap)s
+(ostrophe)630 4263 y(In)d(addition)h(to)g(the)g Fm(gnu)f
+Fu(Emacs)h(st)m(yle)h(escap)s(e)f(sequences,)h(a)f(second)f(set)h(of)g
+(bac)m(kslash)630 4373 y(escap)s(es)j(is)f(a)m(v)-5 b(ailable:)630
+4534 y Ft(\\a)384 b Fu(alert)31 b(\(b)s(ell\))630 4695
+y Ft(\\b)384 b Fu(bac)m(kspace)630 4856 y Ft(\\d)g Fu(delete)630
+5018 y Ft(\\f)g Fu(form)30 b(feed)630 5179 y Ft(\\n)384
+b Fu(newline)630 5340 y Ft(\\r)g Fu(carriage)32 b(return)p
+eop end
+%%Page: 111 117
+TeXDict begin 111 116 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(111)630 299 y Ft(\\t)384
+b Fu(horizon)m(tal)32 b(tab)630 451 y Ft(\\v)384 b Fu(v)m(ertical)32
+b(tab)630 604 y Ft(\\)p Fj(nnn)288 b Fu(the)35 b(eigh)m(t-bit)h(c)m
+(haracter)g(whose)e(v)-5 b(alue)35 b(is)g(the)f(o)s(ctal)i(v)-5
+b(alue)35 b Fr(nnn)e Fu(\(one)i(to)1110 713 y(three)c(digits\))630
+866 y Ft(\\x)p Fj(HH)288 b Fu(the)38 b(eigh)m(t-bit)i(c)m(haracter)g
+(whose)e(v)-5 b(alue)39 b(is)f(the)h(hexadecimal)g(v)-5
+b(alue)39 b Fr(HH)1110 975 y Fu(\(one)31 b(or)f(t)m(w)m(o)i(hex)e
+(digits\))630 1128 y(When)37 b(en)m(tering)h(the)g(text)g(of)g(a)g
+(macro,)i(single)e(or)f(double)g(quotes)h(m)m(ust)f(b)s(e)g(used)f(to)
+630 1237 y(indicate)23 b(a)e(macro)h(de\014nition.)38
+b(Unquoted)21 b(text)i(is)e(assumed)g(to)h(b)s(e)f(a)h(function)f
+(name.)38 b(In)630 1347 y(the)22 b(macro)f(b)s(o)s(dy)-8
+b(,)23 b(the)e(bac)m(kslash)h(escap)s(es)g(describ)s(ed)e(ab)s(o)m(v)m
+(e)j(are)e(expanded.)37 b(Bac)m(kslash)630 1456 y(will)j(quote)h(an)m
+(y)f(other)g(c)m(haracter)i(in)d(the)i(macro)f(text,)k(including)39
+b(`)p Ft(")p Fu(')h(and)g(`)p Ft(')p Fu('.)69 b(F)-8
+b(or)630 1566 y(example,)28 b(the)e(follo)m(wing)h(binding)d(will)i
+(mak)m(e)h(`)p Fj(C-x)j Ft(\\)p Fu(')c(insert)f(a)h(single)h(`)p
+Ft(\\)p Fu(')f(in)m(to)g(the)g(line:)870 1697 y Ft("\\C-x\\\\":)45
+b("\\\\")150 1889 y Fk(8.3.2)63 b(Conditional)41 b(Init)g(Constructs)
+150 2036 y Fu(Readline)c(implemen)m(ts)g(a)h(facilit)m(y)g(similar)f
(in)g(spirit)f(to)i(the)f(conditional)h(compilation)g(features)f(of)150
-1993 y(the)31 b(C)f(prepro)s(cessor)g(whic)m(h)g(allo)m(ws)i(k)m(ey)g
+2146 y(the)31 b(C)f(prepro)s(cessor)g(whic)m(h)g(allo)m(ws)i(k)m(ey)g
(bindings)d(and)h(v)-5 b(ariable)32 b(settings)f(to)h(b)s(e)e(p)s
-(erformed)f(as)i(the)150 2103 y(result)f(of)h(tests.)41
+(erformed)f(as)i(the)150 2255 y(result)f(of)h(tests.)41
b(There)30 b(are)h(four)f(parser)f(directiv)m(es)j(used.)150
-2255 y Fs($if)336 b Ft(The)31 b Fs($if)f Ft(construct)i(allo)m(ws)h
+2408 y Ft($if)336 b Fu(The)31 b Ft($if)f Fu(construct)i(allo)m(ws)h
(bindings)d(to)i(b)s(e)e(made)i(based)f(on)g(the)g(editing)h(mo)s(de,)g
-(the)630 2365 y(terminal)39 b(b)s(eing)e(used,)j(or)e(the)g
+(the)630 2517 y(terminal)39 b(b)s(eing)e(used,)j(or)e(the)g
(application)h(using)f(Readline.)64 b(The)38 b(text)h(of)f(the)g(test)
-630 2474 y(extends)30 b(to)h(the)g(end)f(of)g(the)h(line;)g(no)f(c)m
+630 2627 y(extends)30 b(to)h(the)g(end)f(of)g(the)h(line;)g(no)f(c)m
(haracters)i(are)f(required)e(to)i(isolate)i(it.)630
-2627 y Fs(mode)288 b Ft(The)20 b Fs(mode=)g Ft(form)g(of)h(the)g
-Fs($if)f Ft(directiv)m(e)j(is)e(used)f(to)h(test)h(whether)e(Readline)
-1110 2736 y(is)29 b(in)h Fs(emacs)e Ft(or)h Fs(vi)g Ft(mo)s(de.)40
-b(This)29 b(ma)m(y)h(b)s(e)e(used)h(in)g(conjunction)h(with)f(the)1110
-2846 y(`)p Fs(set)h(keymap)p Ft(')c(command,)i(for)f(instance,)i(to)f
-(set)g(bindings)f(in)g(the)h Fs(emacs-)1110 2956 y(standard)23
-b Ft(and)h Fs(emacs-ctlx)f Ft(k)m(eymaps)i(only)g(if)g(Readline)h(is)f
-(starting)h(out)1110 3065 y(in)k Fs(emacs)f Ft(mo)s(de.)630
-3218 y Fs(term)288 b Ft(The)26 b Fs(term=)g Ft(form)g(ma)m(y)i(b)s(e)e
-(used)g(to)i(include)f(terminal-sp)s(eci\014c)g(k)m(ey)h(bind-)1110
-3327 y(ings,)38 b(p)s(erhaps)c(to)j(bind)e(the)h(k)m(ey)h(sequences)f
-(output)g(b)m(y)g(the)g(terminal's)1110 3437 y(function)24
-b(k)m(eys.)39 b(The)23 b(w)m(ord)h(on)f(the)i(righ)m(t)f(side)g(of)g
-(the)g(`)p Fs(=)p Ft(')g(is)g(tested)h(against)1110 3546
-y(b)s(oth)k(the)h(full)g(name)g(of)g(the)g(terminal)h(and)e(the)i(p)s
-(ortion)e(of)h(the)g(terminal)1110 3656 y(name)k(b)s(efore)f(the)g
-(\014rst)g(`)p Fs(-)p Ft('.)50 b(This)33 b(allo)m(ws)i
-Fs(sun)e Ft(to)h(matc)m(h)g(b)s(oth)f Fs(sun)g Ft(and)1110
-3766 y Fs(sun-cmd)p Ft(,)c(for)h(instance.)630 3918 y
-Fs(application)1110 4028 y Ft(The)21 b Fq(application)j
-Ft(construct)e(is)g(used)f(to)i(include)f(application-sp)s(eci\014c)h
-(set-)1110 4137 y(tings.)39 b(Eac)m(h)26 b(program)e(using)g(the)h
-(Readline)g(library)g(sets)g(the)g Fq(application)1110
-4247 y(name)5 b Ft(,)25 b(and)d(y)m(ou)h(can)g(test)h(for)e(a)h
-(particular)h(v)-5 b(alue.)38 b(This)22 b(could)h(b)s(e)f(used)g(to)
-1110 4356 y(bind)32 b(k)m(ey)h(sequences)g(to)h(functions)e(useful)g
-(for)h(a)g(sp)s(eci\014c)f(program.)48 b(F)-8 b(or)1110
-4466 y(instance,)35 b(the)e(follo)m(wing)h(command)f(adds)f(a)i(k)m(ey)
-f(sequence)h(that)f(quotes)1110 4575 y(the)e(curren)m(t)f(or)g
-(previous)g(w)m(ord)g(in)g(Bash:)1350 4706 y Fs($if)47
-b(Bash)1350 4816 y(#)g(Quote)g(the)g(current)f(or)h(previous)e(word)
-1350 4926 y("\\C-xq":)h("\\eb\\"\\ef\\"")1350 5035 y($endif)150
-5188 y($endif)192 b Ft(This)29 b(command,)i(as)f(seen)h(in)f(the)g
-(previous)g(example,)h(terminates)g(an)g Fs($if)e Ft(command.)150
-5340 y Fs($else)240 b Ft(Commands)29 b(in)h(this)h(branc)m(h)e(of)i
-(the)f Fs($if)g Ft(directiv)m(e)i(are)f(executed)g(if)f(the)h(test)g
-(fails.)p eop end
-%%Page: 113 119
-TeXDict begin 113 118 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(113)150 299 y Fs($include)96
-b Ft(This)43 b(directiv)m(e)i(tak)m(es)g(a)e(single)i(\014lename)e(as)h
-(an)f(argumen)m(t)h(and)f(reads)g(commands)630 408 y(and)38
-b(bindings)f(from)h(that)i(\014le.)65 b(F)-8 b(or)39
-b(example,)j(the)d(follo)m(wing)h(directiv)m(e)g(reads)e(from)630
-518 y(`)p Fs(/etc/inputrc)p Ft(':)870 653 y Fs($include)46
-b(/etc/inputrc)150 852 y Fj(8.3.3)63 b(Sample)41 b(Init)g(File)150
-999 y Ft(Here)27 b(is)f(an)h(example)g(of)f(an)h Fq(inputrc)k
-Ft(\014le.)39 b(This)26 b(illustrates)h(k)m(ey)h(binding,)e(v)-5
-b(ariable)27 b(assignmen)m(t,)i(and)150 1108 y(conditional)j(syn)m
+2779 y Ft(mode)288 b Fu(The)30 b Ft(mode=)e Fu(form)i(of)g(the)h
+Ft($if)e Fu(directiv)m(e)j(is)e(used)f(to)i(test)g(whether)e(Read-)1110
+2889 y(line)44 b(is)f(in)g Ft(emacs)f Fu(or)h Ft(vi)g
+Fu(mo)s(de.)79 b(This)42 b(ma)m(y)i(b)s(e)e(used)h(in)g(conjunction)
+1110 2998 y(with)c(the)h(`)p Ft(set)29 b(keymap)p Fu(')38
+b(command,)k(for)d(instance,)j(to)e(set)g(bindings)e(in)1110
+3108 y(the)32 b Ft(emacs-standard)c Fu(and)j Ft(emacs-ctlx)d
+Fu(k)m(eymaps)k(only)g(if)g(Readline)g(is)1110 3218 y(starting)f(out)g
+(in)f Ft(emacs)f Fu(mo)s(de.)630 3370 y Ft(term)288 b
+Fu(The)26 b Ft(term=)g Fu(form)g(ma)m(y)i(b)s(e)e(used)g(to)i(include)f
+(terminal-sp)s(eci\014c)g(k)m(ey)h(bind-)1110 3480 y(ings,)38
+b(p)s(erhaps)c(to)j(bind)e(the)h(k)m(ey)h(sequences)f(output)g(b)m(y)g
+(the)g(terminal's)1110 3589 y(function)24 b(k)m(eys.)39
+b(The)23 b(w)m(ord)h(on)f(the)i(righ)m(t)f(side)g(of)g(the)g(`)p
+Ft(=)p Fu(')g(is)g(tested)h(against)1110 3699 y(b)s(oth)k(the)h(full)g
+(name)g(of)g(the)g(terminal)h(and)e(the)i(p)s(ortion)e(of)h(the)g
+(terminal)1110 3808 y(name)k(b)s(efore)f(the)g(\014rst)g(`)p
+Ft(-)p Fu('.)50 b(This)33 b(allo)m(ws)i Ft(sun)e Fu(to)h(matc)m(h)g(b)s
+(oth)f Ft(sun)g Fu(and)1110 3918 y Ft(sun-cmd)p Fu(,)c(for)h(instance.)
+630 4070 y Ft(application)1110 4180 y Fu(The)21 b Fr(application)j
+Fu(construct)e(is)g(used)f(to)i(include)f(application-sp)s(eci\014c)h
+(set-)1110 4289 y(tings.)39 b(Eac)m(h)26 b(program)e(using)g(the)h
+(Readline)g(library)g(sets)g(the)g Fr(application)1110
+4399 y(name)p Fu(,)g(and)e(y)m(ou)g(can)h(test)g(for)f(a)g(particular)h
+(v)-5 b(alue.)39 b(This)22 b(could)h(b)s(e)g(used)f(to)1110
+4509 y(bind)32 b(k)m(ey)h(sequences)g(to)h(functions)e(useful)g(for)h
+(a)g(sp)s(eci\014c)f(program.)48 b(F)-8 b(or)1110 4618
+y(instance,)35 b(the)e(follo)m(wing)h(command)f(adds)f(a)i(k)m(ey)f
+(sequence)h(that)f(quotes)1110 4728 y(the)e(curren)m(t)f(or)g(previous)
+g(w)m(ord)g(in)g(Bash:)1350 4859 y Ft($if)47 b(Bash)1350
+4968 y(#)g(Quote)g(the)g(current)f(or)h(previous)e(word)1350
+5078 y("\\C-xq":)h("\\eb\\"\\ef\\"")1350 5188 y($endif)150
+5340 y($endif)192 b Fu(This)29 b(command,)i(as)f(seen)h(in)f(the)g
+(previous)g(example,)h(terminates)g(an)g Ft($if)e Fu(command.)p
+eop end
+%%Page: 112 118
+TeXDict begin 112 117 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(112)150 299 y Ft($else)240
+b Fu(Commands)29 b(in)h(this)h(branc)m(h)e(of)i(the)f
+Ft($if)g Fu(directiv)m(e)i(are)f(executed)g(if)f(the)h(test)g(fails.)
+150 458 y Ft($include)96 b Fu(This)43 b(directiv)m(e)i(tak)m(es)g(a)e
+(single)i(\014lename)e(as)h(an)f(argumen)m(t)h(and)f(reads)g(commands)
+630 568 y(and)38 b(bindings)f(from)h(that)i(\014le.)65
+b(F)-8 b(or)39 b(example,)j(the)d(follo)m(wing)h(directiv)m(e)g(reads)e
+(from)630 677 y Ft(/etc/inputrc)p Fu(:)870 812 y Ft($include)46
+b(/etc/inputrc)150 1011 y Fk(8.3.3)63 b(Sample)41 b(Init)g(File)150
+1158 y Fu(Here)27 b(is)f(an)h(example)g(of)f(an)h Fr(inputrc)k
+Fu(\014le.)39 b(This)26 b(illustrates)h(k)m(ey)h(binding,)e(v)-5
+b(ariable)27 b(assignmen)m(t,)i(and)150 1268 y(conditional)j(syn)m
(tax.)p eop end
-%%Page: 114 120
-TeXDict begin 114 119 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(114)390 408 y Fs(#)47
+%%Page: 113 119
+TeXDict begin 113 118 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(113)390 408 y Ft(#)47
b(This)g(file)g(controls)e(the)i(behaviour)e(of)j(line)e(input)h
(editing)e(for)390 518 y(#)i(programs)f(that)h(use)g(the)f(GNU)h
(Readline)f(library.)93 b(Existing)390 628 y(#)47 b(programs)f(include)
4902 y(#)390 5011 y(#)47 b(Arrow)g(keys)f(in)i(8)f(bit)g(ANSI)g(mode)
390 5121 y(#)390 5230 y(#"\\M-\\C-[D":)331 b(backward-char)390
5340 y(#"\\M-\\C-[C":)g(forward-char)p eop end
-%%Page: 115 121
-TeXDict begin 115 120 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(115)390 299 y Fs(#"\\M-\\C-[A":)
+%%Page: 114 120
+TeXDict begin 114 119 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(114)390 299 y Ft(#"\\M-\\C-[A":)
331 b(previous-history)390 408 y(#"\\M-\\C-[B":)g(next-history)390
628 y(C-q:)47 b(quoted-insert)390 847 y($endif)390 1066
y(#)g(An)h(old-style)d(binding.)93 b(This)47 b(happens)f(to)h(be)g(the)
(completions)e(for)390 5121 y(#)j(a)h(word,)e(ask)h(the)g(user)g(if)g
(he)g(wants)f(to)i(see)f(all)f(of)i(them)390 5230 y(set)f
(completion-query-items)42 b(150)p eop end
-%%Page: 116 122
-TeXDict begin 116 121 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(116)390 299 y Fs(#)47
+%%Page: 115 121
+TeXDict begin 115 120 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(115)390 299 y Ft(#)47
b(For)g(FTP)390 408 y($if)g(Ftp)390 518 y("\\C-xg":)f("get)g(\\M-?")390
628 y("\\C-xt":)g("put)g(\\M-?")390 737 y("\\M-.":)g(yank-last-arg)390
-847 y($endif)150 1075 y Fr(8.4)68 b(Bindable)45 b(Readline)i(Commands)
-150 1235 y Ft(This)32 b(section)h(describ)s(es)f(Readline)h(commands)f
+847 y($endif)150 1075 y Fs(8.4)68 b(Bindable)45 b(Readline)i(Commands)
+150 1235 y Fu(This)32 b(section)h(describ)s(es)f(Readline)h(commands)f
(that)h(ma)m(y)h(b)s(e)d(b)s(ound)g(to)i(k)m(ey)g(sequences.)48
b(Y)-8 b(ou)33 b(can)150 1344 y(list)40 b(y)m(our)f(k)m(ey)i(bindings)d
-(b)m(y)h(executing)i Fs(bind)29 b(-P)39 b Ft(or,)j(for)d(a)h(more)g
-(terse)g(format,)i(suitable)e(for)f(an)150 1454 y Fq(inputrc)34
-b Ft(\014le,)29 b Fs(bind)g(-p)p Ft(.)40 b(\(See)30 b(Section)f(4.2)h
+(b)m(y)h(executing)i Ft(bind)29 b(-P)39 b Fu(or,)j(for)d(a)h(more)g
+(terse)g(format,)i(suitable)e(for)f(an)150 1454 y Fr(inputrc)34
+b Fu(\014le,)29 b Ft(bind)g(-p)p Fu(.)40 b(\(See)30 b(Section)f(4.2)h
([Bash)g(Builtins],)g(page)g(48.\))41 b(Command)28 b(names)h(without)
150 1563 y(an)h(accompan)m(ying)i(k)m(ey)f(sequence)g(are)g(un)m(b)s
(ound)d(b)m(y)i(default.)275 1696 y(In)25 b(the)h(follo)m(wing)i
-(descriptions,)f Fq(p)s(oin)m(t)h Ft(refers)e(to)h(the)f(curren)m(t)g
-(cursor)g(p)s(osition,)h(and)f Fq(mark)31 b Ft(refers)150
+(descriptions,)f Fr(p)s(oin)m(t)h Fu(refers)e(to)h(the)f(curren)m(t)g
+(cursor)g(p)s(osition,)h(and)f Fr(mark)31 b Fu(refers)150
1805 y(to)40 b(a)f(cursor)f(p)s(osition)h(sa)m(v)m(ed)h(b)m(y)f(the)g
-Fs(set-mark)d Ft(command.)66 b(The)38 b(text)i(b)s(et)m(w)m(een)g(the)f
+Ft(set-mark)d Fu(command.)66 b(The)38 b(text)i(b)s(et)m(w)m(een)g(the)f
(p)s(oin)m(t)g(and)150 1915 y(mark)30 b(is)h(referred)e(to)i(as)g(the)f
-Fq(region)p Ft(.)150 2110 y Fj(8.4.1)63 b(Commands)42
-b(F)-10 b(or)41 b(Mo)m(ving)150 2280 y Fs(beginning-of-line)26
-b(\(C-a\))630 2390 y Ft(Mo)m(v)m(e)32 b(to)g(the)e(start)h(of)g(the)f
-(curren)m(t)g(line.)150 2545 y Fs(end-of-line)d(\(C-e\))630
-2655 y Ft(Mo)m(v)m(e)32 b(to)g(the)e(end)g(of)g(the)h(line.)150
-2810 y Fs(forward-char)c(\(C-f\))630 2920 y Ft(Mo)m(v)m(e)32
-b(forw)m(ard)e(a)h(c)m(haracter.)150 3075 y Fs(backward-char)c(\(C-b\))
-630 3185 y Ft(Mo)m(v)m(e)32 b(bac)m(k)g(a)e(c)m(haracter.)150
-3340 y Fs(forward-word)d(\(M-f\))630 3450 y Ft(Mo)m(v)m(e)32
+Fr(region)p Fu(.)150 2110 y Fk(8.4.1)63 b(Commands)42
+b(F)-10 b(or)41 b(Mo)m(ving)150 2280 y Ft(beginning-of-line)26
+b(\(C-a\))630 2390 y Fu(Mo)m(v)m(e)32 b(to)g(the)e(start)h(of)g(the)f
+(curren)m(t)g(line.)150 2545 y Ft(end-of-line)d(\(C-e\))630
+2655 y Fu(Mo)m(v)m(e)32 b(to)g(the)e(end)g(of)g(the)h(line.)150
+2810 y Ft(forward-char)c(\(C-f\))630 2920 y Fu(Mo)m(v)m(e)32
+b(forw)m(ard)e(a)h(c)m(haracter.)150 3075 y Ft(backward-char)c(\(C-b\))
+630 3185 y Fu(Mo)m(v)m(e)32 b(bac)m(k)g(a)e(c)m(haracter.)150
+3340 y Ft(forward-word)d(\(M-f\))630 3450 y Fu(Mo)m(v)m(e)32
b(forw)m(ard)e(to)h(the)f(end)g(of)g(the)h(next)f(w)m(ord.)41
b(W)-8 b(ords)30 b(are)h(comp)s(osed)f(of)g(letters)i(and)630
-3559 y(digits.)150 3715 y Fs(backward-word)27 b(\(M-b\))630
-3824 y Ft(Mo)m(v)m(e)36 b(bac)m(k)e(to)g(the)g(start)g(of)g(the)g
+3559 y(digits.)150 3715 y Ft(backward-word)27 b(\(M-b\))630
+3824 y Fu(Mo)m(v)m(e)36 b(bac)m(k)e(to)g(the)g(start)g(of)g(the)g
(curren)m(t)f(or)g(previous)g(w)m(ord.)50 b(W)-8 b(ords)34
b(are)g(comp)s(osed)630 3934 y(of)d(letters)g(and)f(digits.)150
-4089 y Fs(shell-forward-word)25 b(\(\))630 4199 y Ft(Mo)m(v)m(e)30
+4089 y Ft(shell-forward-word)25 b(\(\))630 4199 y Fu(Mo)m(v)m(e)30
b(forw)m(ard)e(to)h(the)f(end)f(of)h(the)h(next)f(w)m(ord.)40
b(W)-8 b(ords)28 b(are)g(delimited)h(b)m(y)f(non-quoted)630
-4308 y(shell)j(metac)m(haracters.)150 4464 y Fs(shell-backward-word)25
-b(\(\))630 4573 y Ft(Mo)m(v)m(e)37 b(bac)m(k)e(to)h(the)f(start)g(of)g
+4308 y(shell)j(metac)m(haracters.)150 4464 y Ft(shell-backward-word)25
+b(\(\))630 4573 y Fu(Mo)m(v)m(e)37 b(bac)m(k)e(to)h(the)f(start)g(of)g
(the)g(curren)m(t)g(or)f(previous)h(w)m(ord.)53 b(W)-8
b(ords)35 b(are)g(delimited)630 4683 y(b)m(y)30 b(non-quoted)h(shell)f
-(metac)m(haracters.)150 4838 y Fs(clear-screen)d(\(C-l\))630
-4948 y Ft(Clear)g(the)g(screen)f(and)h(redra)m(w)f(the)h(curren)m(t)f
+(metac)m(haracters.)150 4838 y Ft(clear-screen)d(\(C-l\))630
+4948 y Fu(Clear)g(the)g(screen)f(and)h(redra)m(w)f(the)h(curren)m(t)f
(line,)i(lea)m(ving)g(the)f(curren)m(t)g(line)g(at)g(the)g(top)630
-5057 y(of)k(the)f(screen.)150 5213 y Fs(redraw-current-line)25
-b(\(\))630 5322 y Ft(Refresh)30 b(the)g(curren)m(t)h(line.)41
+5057 y(of)k(the)f(screen.)150 5213 y Ft(redraw-current-line)25
+b(\(\))630 5322 y Fu(Refresh)30 b(the)g(curren)m(t)h(line.)41
b(By)30 b(default,)h(this)f(is)h(un)m(b)s(ound.)p eop
end
-%%Page: 117 123
-TeXDict begin 117 122 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(117)150 299 y Fj(8.4.2)63
+%%Page: 116 122
+TeXDict begin 116 121 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(116)150 299 y Fk(8.4.2)63
b(Commands)42 b(F)-10 b(or)41 b(Manipulating)h(The)f(History)150
-473 y Fs(accept-line)27 b(\(Newline)h(or)i(Return\))630
-582 y Ft(Accept)25 b(the)e(line)h(regardless)g(of)f(where)g(the)h
+473 y Ft(accept-line)27 b(\(Newline)h(or)i(Return\))630
+582 y Fu(Accept)25 b(the)e(line)h(regardless)g(of)f(where)g(the)h
(cursor)e(is.)39 b(If)23 b(this)g(line)h(is)f(non-empt)m(y)-8
b(,)26 b(add)c(it)630 692 y(to)27 b(the)f(history)g(list)h(according)g
-(to)g(the)f(setting)i(of)e(the)g Fs(HISTCONTROL)d Ft(and)j
-Fs(HISTIGNORE)630 802 y Ft(v)-5 b(ariables.)42 b(If)30
+(to)g(the)f(setting)i(of)e(the)g Ft(HISTCONTROL)d Fu(and)j
+Ft(HISTIGNORE)630 802 y Fu(v)-5 b(ariables.)42 b(If)30
b(this)h(line)g(is)g(a)g(mo)s(di\014ed)e(history)i(line,)g(then)f
(restore)i(the)f(history)f(line)h(to)630 911 y(its)g(original)g(state.)
-150 1075 y Fs(previous-history)26 b(\(C-p\))630 1184
-y Ft(Mo)m(v)m(e)32 b(`bac)m(k')g(through)e(the)g(history)h(list,)g
-(fetc)m(hing)g(the)g(previous)f(command.)150 1348 y Fs(next-history)d
-(\(C-n\))630 1457 y Ft(Mo)m(v)m(e)32 b(`forw)m(ard')f(through)e(the)i
+150 1075 y Ft(previous-history)26 b(\(C-p\))630 1184
+y Fu(Mo)m(v)m(e)32 b(`bac)m(k')g(through)e(the)g(history)h(list,)g
+(fetc)m(hing)g(the)g(previous)f(command.)150 1348 y Ft(next-history)d
+(\(C-n\))630 1457 y Fu(Mo)m(v)m(e)32 b(`forw)m(ard')f(through)e(the)i
(history)f(list,)i(fetc)m(hing)f(the)g(next)f(command.)150
-1621 y Fs(beginning-of-history)25 b(\(M-<\))630 1730
-y Ft(Mo)m(v)m(e)32 b(to)g(the)e(\014rst)g(line)g(in)h(the)f(history)-8
-b(.)150 1894 y Fs(end-of-history)26 b(\(M->\))630 2004
-y Ft(Mo)m(v)m(e)32 b(to)g(the)e(end)g(of)g(the)h(input)e(history)-8
+1621 y Ft(beginning-of-history)25 b(\(M-<\))630 1730
+y Fu(Mo)m(v)m(e)32 b(to)g(the)e(\014rst)g(line)g(in)h(the)f(history)-8
+b(.)150 1894 y Ft(end-of-history)26 b(\(M->\))630 2004
+y Fu(Mo)m(v)m(e)32 b(to)g(the)e(end)g(of)g(the)h(input)e(history)-8
b(,)31 b(i.e.,)h(the)f(line)f(curren)m(tly)h(b)s(eing)f(en)m(tered.)150
-2167 y Fs(reverse-search-history)24 b(\(C-r\))630 2277
-y Ft(Searc)m(h)31 b(bac)m(kw)m(ard)h(starting)g(at)g(the)f(curren)m(t)g
+2167 y Ft(reverse-search-history)24 b(\(C-r\))630 2277
+y Fu(Searc)m(h)31 b(bac)m(kw)m(ard)h(starting)g(at)g(the)f(curren)m(t)g
(line)g(and)g(mo)m(ving)h(`up')e(through)h(the)g(his-)630
2386 y(tory)g(as)f(necessary)-8 b(.)42 b(This)29 b(is)i(an)f(incremen)m
-(tal)i(searc)m(h.)150 2550 y Fs(forward-search-history)24
-b(\(C-s\))630 2659 y Ft(Searc)m(h)30 b(forw)m(ard)f(starting)h(at)g
+(tal)i(searc)m(h.)150 2550 y Ft(forward-search-history)24
+b(\(C-s\))630 2659 y Fu(Searc)m(h)30 b(forw)m(ard)f(starting)h(at)g
(the)g(curren)m(t)f(line)h(and)f(mo)m(ving)h(`do)m(wn')f(through)g(the)
h(the)630 2769 y(history)g(as)h(necessary)-8 b(.)41 b(This)30
-b(is)g(an)h(incremen)m(tal)g(searc)m(h.)150 2932 y Fs
+b(is)g(an)h(incremen)m(tal)g(searc)m(h.)150 2932 y Ft
(non-incremental-reverse-)o(sear)o(ch-h)o(ist)o(ory)24
-b(\(M-p\))630 3042 y Ft(Searc)m(h)31 b(bac)m(kw)m(ard)h(starting)g(at)g
+b(\(M-p\))630 3042 y Fu(Searc)m(h)31 b(bac)m(kw)m(ard)h(starting)g(at)g
(the)f(curren)m(t)g(line)g(and)g(mo)m(ving)h(`up')e(through)h(the)g
(his-)630 3152 y(tory)36 b(as)g(necessary)h(using)e(a)i(non-incremen)m
(tal)g(searc)m(h)f(for)g(a)g(string)g(supplied)f(b)m(y)h(the)630
-3261 y(user.)150 3425 y Fs(non-incremental-forward-)o(sear)o(ch-h)o
-(ist)o(ory)24 b(\(M-n\))630 3534 y Ft(Searc)m(h)30 b(forw)m(ard)f
+3261 y(user.)150 3425 y Ft(non-incremental-forward-)o(sear)o(ch-h)o
+(ist)o(ory)24 b(\(M-n\))630 3534 y Fu(Searc)m(h)30 b(forw)m(ard)f
(starting)h(at)g(the)g(curren)m(t)f(line)h(and)f(mo)m(ving)h(`do)m(wn')
f(through)g(the)h(the)630 3644 y(history)d(as)f(necessary)i(using)e(a)h
(non-incremen)m(tal)g(searc)m(h)h(for)e(a)h(string)g(supplied)e(b)m(y)i
-(the)630 3754 y(user.)150 3917 y Fs(history-search-forward)d(\(\))630
-4027 y Ft(Searc)m(h)42 b(forw)m(ard)f(through)f(the)i(history)f(for)g
+(the)630 3754 y(user.)150 3917 y Ft(history-search-forward)d(\(\))630
+4027 y Fu(Searc)m(h)42 b(forw)m(ard)f(through)f(the)i(history)f(for)g
(the)h(string)f(of)h(c)m(haracters)h(b)s(et)m(w)m(een)f(the)630
4136 y(start)36 b(of)h(the)f(curren)m(t)f(line)i(and)e(the)h(p)s(oin)m
(t.)58 b(The)35 b(searc)m(h)i(string)e(m)m(ust)h(matc)m(h)h(at)g(the)
630 4246 y(b)s(eginning)32 b(of)g(a)h(history)g(line.)47
b(This)32 b(is)h(a)f(non-incremen)m(tal)i(searc)m(h.)48
b(By)33 b(default,)g(this)630 4355 y(command)d(is)h(un)m(b)s(ound.)150
-4519 y Fs(history-search-backward)24 b(\(\))630 4629
-y Ft(Searc)m(h)35 b(bac)m(kw)m(ard)g(through)f(the)h(history)g(for)g
+4519 y Ft(history-search-backward)24 b(\(\))630 4629
+y Fu(Searc)m(h)35 b(bac)m(kw)m(ard)g(through)f(the)h(history)g(for)g
(the)f(string)h(of)g(c)m(haracters)h(b)s(et)m(w)m(een)g(the)630
4738 y(start)g(of)h(the)f(curren)m(t)f(line)i(and)e(the)h(p)s(oin)m(t.)
58 b(The)35 b(searc)m(h)i(string)e(m)m(ust)h(matc)m(h)h(at)g(the)630
4848 y(b)s(eginning)32 b(of)g(a)h(history)g(line.)47
b(This)32 b(is)h(a)f(non-incremen)m(tal)i(searc)m(h.)48
b(By)33 b(default,)g(this)630 4957 y(command)d(is)h(un)m(b)s(ound.)150
-5121 y Fs(history-substr-search-fo)o(rwar)o(d)24 b(\(\))630
-5230 y Ft(Searc)m(h)42 b(forw)m(ard)f(through)f(the)i(history)f(for)g
+5121 y Ft(history-substr-search-fo)o(rwar)o(d)24 b(\(\))630
+5230 y Fu(Searc)m(h)42 b(forw)m(ard)f(through)f(the)i(history)f(for)g
(the)h(string)f(of)h(c)m(haracters)h(b)s(et)m(w)m(een)f(the)630
5340 y(start)29 b(of)g(the)g(curren)m(t)g(line)g(and)f(the)h(p)s(oin)m
(t.)40 b(The)29 b(searc)m(h)g(string)g(ma)m(y)g(matc)m(h)h(an)m(ywhere)
p eop end
-%%Page: 118 124
-TeXDict begin 118 123 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(118)630 299 y(in)32
+%%Page: 117 123
+TeXDict begin 117 122 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(117)630 299 y(in)32
b(a)h(history)g(line.)47 b(This)32 b(is)g(a)h(non-incremen)m(tal)h
(searc)m(h.)47 b(By)33 b(default,)h(this)e(command)630
-408 y(is)e(un)m(b)s(ound.)150 586 y Fs(history-substr-search-ba)o(ckwa)
-o(rd)24 b(\(\))630 696 y Ft(Searc)m(h)35 b(bac)m(kw)m(ard)g(through)f
+408 y(is)e(un)m(b)s(ound.)150 586 y Ft(history-substr-search-ba)o(ckwa)
+o(rd)24 b(\(\))630 696 y Fu(Searc)m(h)35 b(bac)m(kw)m(ard)g(through)f
(the)h(history)g(for)g(the)f(string)h(of)g(c)m(haracters)h(b)s(et)m(w)m
(een)g(the)630 806 y(start)29 b(of)g(the)g(curren)m(t)g(line)g(and)f
(the)h(p)s(oin)m(t.)40 b(The)29 b(searc)m(h)g(string)g(ma)m(y)g(matc)m
(h)h(an)m(ywhere)630 915 y(in)i(a)h(history)g(line.)47
b(This)32 b(is)g(a)h(non-incremen)m(tal)h(searc)m(h.)47
b(By)33 b(default,)h(this)e(command)630 1025 y(is)e(un)m(b)s(ound.)150
-1203 y Fs(yank-nth-arg)d(\(M-C-y\))630 1312 y Ft(Insert)37
+1203 y Ft(yank-nth-arg)d(\(M-C-y\))630 1312 y Fu(Insert)37
b(the)g(\014rst)f(argumen)m(t)i(to)f(the)h(previous)e(command)h
(\(usually)g(the)g(second)g(w)m(ord)630 1422 y(on)32
b(the)g(previous)f(line\))i(at)f(p)s(oin)m(t.)46 b(With)32
-b(an)g(argumen)m(t)g Fq(n)p Ft(,)g(insert)g(the)g Fq(n)p
-Ft(th)f(w)m(ord)g(from)630 1531 y(the)k(previous)f(command)h(\(the)g(w)
+b(an)g(argumen)m(t)g Fr(n)p Fu(,)g(insert)g(the)g Fr(n)p
+Fu(th)f(w)m(ord)g(from)630 1531 y(the)k(previous)f(command)h(\(the)g(w)
m(ords)g(in)f(the)h(previous)g(command)f(b)s(egin)h(with)f(w)m(ord)630
1641 y(0\).)69 b(A)40 b(negativ)m(e)h(argumen)m(t)f(inserts)g(the)f
-Fq(n)p Ft(th)g(w)m(ord)g(from)g(the)h(end)f(of)h(the)f(previous)630
-1750 y(command.)48 b(Once)33 b(the)g(argumen)m(t)h Fq(n)e
-Ft(is)h(computed,)h(the)f(argumen)m(t)g(is)g(extracted)i(as)e(if)630
-1860 y(the)e(`)p Fs(!)p Fi(n)11 b Ft(')29 b(history)i(expansion)f(had)g
-(b)s(een)f(sp)s(eci\014ed.)150 2038 y Fs(yank-last-arg)e(\(M-.)i(or)h
-(M-_\))630 2148 y Ft(Insert)k(last)i(argumen)m(t)g(to)g(the)f(previous)
+Fr(n)p Fu(th)g(w)m(ord)g(from)g(the)h(end)f(of)h(the)f(previous)630
+1750 y(command.)48 b(Once)33 b(the)g(argumen)m(t)h Fr(n)e
+Fu(is)h(computed,)h(the)f(argumen)m(t)g(is)g(extracted)i(as)e(if)630
+1860 y(the)e(`)p Ft(!)p Fj(n)p Fu(')f(history)g(expansion)g(had)g(b)s
+(een)g(sp)s(eci\014ed.)150 2038 y Ft(yank-last-arg)d(\(M-.)i(or)h
+(M-_\))630 2148 y Fu(Insert)k(last)i(argumen)m(t)g(to)g(the)f(previous)
f(command)h(\(the)h(last)f(w)m(ord)g(of)g(the)g(previous)630
2257 y(history)e(en)m(try\).)51 b(With)34 b(a)g(n)m(umeric)g(argumen)m
-(t,)h(b)s(eha)m(v)m(e)f(exactly)h(lik)m(e)g Fs(yank-nth-arg)p
-Ft(.)630 2367 y(Successiv)m(e)26 b(calls)g(to)f Fs(yank-last-arg)c
-Ft(mo)m(v)m(e)27 b(bac)m(k)e(through)f(the)h(history)g(list,)i
+(t,)h(b)s(eha)m(v)m(e)f(exactly)h(lik)m(e)g Ft(yank-nth-arg)p
+Fu(.)630 2367 y(Successiv)m(e)26 b(calls)g(to)f Ft(yank-last-arg)c
+Fu(mo)m(v)m(e)27 b(bac)m(k)e(through)f(the)h(history)g(list,)i
(inserting)630 2476 y(the)c(last)g(w)m(ord)f(\(or)h(the)g(w)m(ord)f(sp)
s(eci\014ed)g(b)m(y)g(the)h(argumen)m(t)g(to)g(the)g(\014rst)f(call\))i
(of)f(eac)m(h)h(line)630 2586 y(in)36 b(turn.)58 b(An)m(y)36
(switc)m(hes)h(the)630 2805 y(direction)23 b(through)g(the)g(history)f
(\(bac)m(k)i(or)f(forw)m(ard\).)38 b(The)22 b(history)h(expansion)g
(facilities)630 2915 y(are)28 b(used)f(to)h(extract)h(the)f(last)g
-(argumen)m(t,)h(as)e(if)h(the)g(`)p Fs(!$)p Ft(')f(history)g(expansion)
+(argumen)m(t,)h(as)e(if)h(the)g(`)p Ft(!$)p Fu(')f(history)g(expansion)
h(had)f(b)s(een)630 3024 y(sp)s(eci\014ed.)150 3242 y
-Fj(8.4.3)63 b(Commands)42 b(F)-10 b(or)41 b(Changing)g(T)-10
-b(ext)150 3423 y Fs(delete-char)27 b(\(C-d\))630 3533
-y Ft(Delete)41 b(the)e(c)m(haracter)i(at)e(p)s(oin)m(t.)66
+Fk(8.4.3)63 b(Commands)42 b(F)-10 b(or)41 b(Changing)g(T)-10
+b(ext)150 3423 y Ft(delete-char)27 b(\(C-d\))630 3533
+y Fu(Delete)41 b(the)e(c)m(haracter)i(at)e(p)s(oin)m(t.)66
b(If)39 b(p)s(oin)m(t)f(is)h(at)h(the)f(b)s(eginning)f(of)h(the)g
(line,)j(there)630 3642 y(are)37 b(no)g(c)m(haracters)i(in)d(the)i
(line,)h(and)d(the)h(last)h(c)m(haracter)h(t)m(yp)s(ed)e(w)m(as)g(not)g
-(b)s(ound)e(to)630 3752 y Fs(delete-char)p Ft(,)28 b(then)i(return)f
-Fl(eof)p Ft(.)150 3930 y Fs(backward-delete-char)c(\(Rubout\))630
-4039 y Ft(Delete)32 b(the)f(c)m(haracter)g(b)s(ehind)e(the)h(cursor.)40
+(b)s(ound)e(to)630 3752 y Ft(delete-char)p Fu(,)28 b(then)i(return)f
+Fm(eof)p Fu(.)150 3930 y Ft(backward-delete-char)c(\(Rubout\))630
+4039 y Fu(Delete)32 b(the)f(c)m(haracter)g(b)s(ehind)e(the)h(cursor.)40
b(A)30 b(n)m(umeric)g(argumen)m(t)h(means)f(to)h(kill)g(the)630
4149 y(c)m(haracters)h(instead)e(of)h(deleting)g(them.)150
-4327 y Fs(forward-backward-delete-)o(char)24 b(\(\))630
-4436 y Ft(Delete)40 b(the)f(c)m(haracter)h(under)c(the)j(cursor,)h
+4327 y Ft(forward-backward-delete-)o(char)24 b(\(\))630
+4436 y Fu(Delete)40 b(the)f(c)m(haracter)h(under)c(the)j(cursor,)h
(unless)d(the)i(cursor)e(is)h(at)h(the)g(end)e(of)i(the)630
4546 y(line,)33 b(in)e(whic)m(h)g(case)i(the)f(c)m(haracter)h(b)s
(ehind)d(the)i(cursor)f(is)g(deleted.)46 b(By)32 b(default,)g(this)630
4655 y(is)e(not)h(b)s(ound)d(to)j(a)g(k)m(ey)-8 b(.)150
-4833 y Fs(quoted-insert)27 b(\(C-q)i(or)h(C-v\))630 4943
-y Ft(Add)j(the)i(next)f(c)m(haracter)i(t)m(yp)s(ed)e(to)h(the)f(line)h
+4833 y Ft(quoted-insert)27 b(\(C-q)i(or)h(C-v\))630 4943
+y Fu(Add)j(the)i(next)f(c)m(haracter)i(t)m(yp)s(ed)e(to)h(the)f(line)h
(v)m(erbatim.)53 b(This)33 b(is)i(ho)m(w)f(to)h(insert)f(k)m(ey)630
-5053 y(sequences)d(lik)m(e)g Fi(C-q)p Ft(,)f(for)g(example.)150
-5230 y Fs(self-insert)d(\(a,)j(b,)g(A,)f(1,)h(!,)g(...)o(\))630
-5340 y Ft(Insert)g(y)m(ourself.)p eop end
-%%Page: 119 125
-TeXDict begin 119 124 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(119)150 299 y Fs(transpose-chars)
-26 b(\(C-t\))630 408 y Ft(Drag)33 b(the)f(c)m(haracter)h(b)s(efore)f
+5053 y(sequences)d(lik)m(e)g Fj(C-q)p Fu(,)f(for)g(example.)150
+5230 y Ft(self-insert)d(\(a,)j(b,)g(A,)f(1,)h(!,)g(...)o(\))630
+5340 y Fu(Insert)g(y)m(ourself.)p eop end
+%%Page: 118 124
+TeXDict begin 118 123 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(118)150 299 y Ft(transpose-chars)
+26 b(\(C-t\))630 408 y Fu(Drag)33 b(the)f(c)m(haracter)h(b)s(efore)f
(the)g(cursor)f(forw)m(ard)h(o)m(v)m(er)h(the)f(c)m(haracter)i(at)e
(the)g(cursor,)630 518 y(mo)m(ving)k(the)g(cursor)f(forw)m(ard)g(as)g
(w)m(ell.)57 b(If)35 b(the)h(insertion)g(p)s(oin)m(t)f(is)g(at)i(the)e
(end)g(of)h(the)630 628 y(line,)24 b(then)e(this)g(transp)s(oses)f(the)
h(last)h(t)m(w)m(o)g(c)m(haracters)g(of)f(the)h(line.)38
b(Negativ)m(e)25 b(argumen)m(ts)630 737 y(ha)m(v)m(e)32
-b(no)e(e\013ect.)150 907 y Fs(transpose-words)c(\(M-t\))630
-1016 y Ft(Drag)33 b(the)g(w)m(ord)f(b)s(efore)g(p)s(oin)m(t)g(past)g
+b(no)e(e\013ect.)150 907 y Ft(transpose-words)c(\(M-t\))630
+1016 y Fu(Drag)33 b(the)g(w)m(ord)f(b)s(efore)g(p)s(oin)m(t)g(past)g
(the)h(w)m(ord)f(after)g(p)s(oin)m(t,)i(mo)m(ving)f(p)s(oin)m(t)f(past)
g(that)630 1126 y(w)m(ord)c(as)h(w)m(ell.)41 b(If)27
b(the)i(insertion)f(p)s(oin)m(t)h(is)f(at)h(the)g(end)e(of)i(the)f
(line,)i(this)e(transp)s(oses)g(the)630 1236 y(last)j(t)m(w)m(o)h(w)m
-(ords)e(on)g(the)h(line.)150 1405 y Fs(upcase-word)c(\(M-u\))630
-1515 y Ft(Upp)s(ercase)32 b(the)g(curren)m(t)g(\(or)g(follo)m(wing\))i
+(ords)e(on)g(the)h(line.)150 1405 y Ft(upcase-word)c(\(M-u\))630
+1515 y Fu(Upp)s(ercase)32 b(the)g(curren)m(t)g(\(or)g(follo)m(wing\))i
(w)m(ord.)45 b(With)32 b(a)g(negativ)m(e)j(argumen)m(t,)e(upp)s(er-)630
1624 y(case)e(the)g(previous)f(w)m(ord,)g(but)g(do)g(not)h(mo)m(v)m(e)h
-(the)e(cursor.)150 1794 y Fs(downcase-word)d(\(M-l\))630
-1904 y Ft(Lo)m(w)m(ercase)c(the)f(curren)m(t)f(\(or)h(follo)m(wing\))i
+(the)e(cursor.)150 1794 y Ft(downcase-word)d(\(M-l\))630
+1904 y Fu(Lo)m(w)m(ercase)c(the)f(curren)m(t)f(\(or)h(follo)m(wing\))i
(w)m(ord.)37 b(With)22 b(a)g(negativ)m(e)i(argumen)m(t,)g(lo)m(w)m
(ercase)630 2013 y(the)31 b(previous)e(w)m(ord,)i(but)e(do)i(not)f(mo)m
-(v)m(e)i(the)f(cursor.)150 2183 y Fs(capitalize-word)26
-b(\(M-c\))630 2292 y Ft(Capitalize)d(the)f(curren)m(t)f(\(or)g(follo)m
+(v)m(e)i(the)f(cursor.)150 2183 y Ft(capitalize-word)26
+b(\(M-c\))630 2292 y Fu(Capitalize)d(the)f(curren)m(t)f(\(or)g(follo)m
(wing\))i(w)m(ord.)38 b(With)21 b(a)h(negativ)m(e)h(argumen)m(t,)h
(capitalize)630 2402 y(the)31 b(previous)e(w)m(ord,)i(but)e(do)i(not)f
-(mo)m(v)m(e)i(the)f(cursor.)150 2571 y Fs(overwrite-mode)26
-b(\(\))630 2681 y Ft(T)-8 b(oggle)35 b(o)m(v)m(erwrite)g(mo)s(de.)48
+(mo)m(v)m(e)i(the)f(cursor.)150 2571 y Ft(overwrite-mode)26
+b(\(\))630 2681 y Fu(T)-8 b(oggle)35 b(o)m(v)m(erwrite)g(mo)s(de.)48
b(With)33 b(an)g(explicit)h(p)s(ositiv)m(e)g(n)m(umeric)f(argumen)m(t,)
h(switc)m(hes)630 2791 y(to)22 b(o)m(v)m(erwrite)i(mo)s(de.)37
b(With)22 b(an)g(explicit)h(non-p)s(ositiv)m(e)f(n)m(umeric)g(argumen)m
(t,)i(switc)m(hes)e(to)630 2900 y(insert)30 b(mo)s(de.)41
-b(This)30 b(command)h(a\013ects)h(only)e Fs(emacs)f Ft(mo)s(de;)i
-Fs(vi)f Ft(mo)s(de)g(do)s(es)g(o)m(v)m(erwrite)630 3010
+b(This)30 b(command)h(a\013ects)h(only)e Ft(emacs)f Fu(mo)s(de;)i
+Ft(vi)f Fu(mo)s(de)g(do)s(es)g(o)m(v)m(erwrite)630 3010
y(di\013eren)m(tly)-8 b(.)42 b(Eac)m(h)31 b(call)h(to)f
-Fs(readline\(\))c Ft(starts)k(in)f(insert)g(mo)s(de.)630
-3149 y(In)e(o)m(v)m(erwrite)j(mo)s(de,)e(c)m(haracters)i(b)s(ound)c(to)
-j Fs(self-insert)c Ft(replace)k(the)g(text)g(at)g(p)s(oin)m(t)630
-3259 y(rather)41 b(than)h(pushing)e(the)i(text)g(to)g(the)g(righ)m(t.)
-75 b(Characters)42 b(b)s(ound)d(to)j Fs(backward-)630
-3369 y(delete-char)27 b Ft(replace)32 b(the)e(c)m(haracter)i(b)s(efore)
-e(p)s(oin)m(t)h(with)f(a)g(space.)630 3508 y(By)h(default,)f(this)h
-(command)f(is)g(un)m(b)s(ound.)150 3718 y Fj(8.4.4)63
-b(Killing)42 b(And)e(Y)-10 b(anking)150 3895 y Fs(kill-line)28
-b(\(C-k\))630 4004 y Ft(Kill)j(the)f(text)i(from)e(p)s(oin)m(t)g(to)h
-(the)g(end)e(of)i(the)f(line.)150 4174 y Fs(backward-kill-line)25
-b(\(C-x)30 b(Rubout\))630 4283 y Ft(Kill)h(bac)m(kw)m(ard)g(to)g(the)f
-(b)s(eginning)g(of)g(the)h(line.)150 4453 y Fs(unix-line-discard)26
-b(\(C-u\))630 4562 y Ft(Kill)31 b(bac)m(kw)m(ard)g(from)e(the)i(cursor)
-f(to)h(the)f(b)s(eginning)g(of)h(the)f(curren)m(t)g(line.)150
-4732 y Fs(kill-whole-line)c(\(\))630 4842 y Ft(Kill)37
-b(all)g(c)m(haracters)h(on)f(the)f(curren)m(t)h(line,)h(no)f(matter)g
-(where)f(p)s(oin)m(t)h(is.)59 b(By)36 b(default,)630
-4951 y(this)30 b(is)h(un)m(b)s(ound.)150 5121 y Fs(kill-word)d(\(M-d\))
-630 5230 y Ft(Kill)i(from)f(p)s(oin)m(t)g(to)h(the)g(end)e(of)i(the)f
+Ft(readline\(\))c Fu(starts)k(in)f(insert)g(mo)s(de.)630
+3149 y(In)52 b(o)m(v)m(erwrite)h(mo)s(de,)58 b(c)m(haracters)c(b)s
+(ound)c(to)j Ft(self-insert)c Fu(replace)k(the)g(text)g(at)630
+3259 y(p)s(oin)m(t)59 b(rather)f(than)h(pushing)e(the)i(text)g(to)h
+(the)f(righ)m(t.)126 b(Characters)59 b(b)s(ound)d(to)630
+3369 y Ft(backward-delete-char)25 b Fu(replace)31 b(the)g(c)m(haracter)
+h(b)s(efore)e(p)s(oin)m(t)g(with)g(a)h(space.)630 3508
+y(By)g(default,)f(this)h(command)f(is)g(un)m(b)s(ound.)150
+3718 y Fk(8.4.4)63 b(Killing)42 b(And)e(Y)-10 b(anking)150
+3895 y Ft(kill-line)28 b(\(C-k\))630 4004 y Fu(Kill)j(the)f(text)i
+(from)e(p)s(oin)m(t)g(to)h(the)g(end)e(of)i(the)f(line.)150
+4174 y Ft(backward-kill-line)25 b(\(C-x)30 b(Rubout\))630
+4283 y Fu(Kill)h(bac)m(kw)m(ard)g(to)g(the)f(b)s(eginning)g(of)g(the)h
+(line.)150 4453 y Ft(unix-line-discard)26 b(\(C-u\))630
+4562 y Fu(Kill)31 b(bac)m(kw)m(ard)g(from)e(the)i(cursor)f(to)h(the)f
+(b)s(eginning)g(of)h(the)f(curren)m(t)g(line.)150 4732
+y Ft(kill-whole-line)c(\(\))630 4842 y Fu(Kill)37 b(all)g(c)m
+(haracters)h(on)f(the)f(curren)m(t)h(line,)h(no)f(matter)g(where)f(p)s
+(oin)m(t)h(is.)59 b(By)36 b(default,)630 4951 y(this)30
+b(is)h(un)m(b)s(ound.)150 5121 y Ft(kill-word)d(\(M-d\))630
+5230 y Fu(Kill)i(from)f(p)s(oin)m(t)g(to)h(the)g(end)e(of)i(the)f
(curren)m(t)h(w)m(ord,)f(or)g(if)h(b)s(et)m(w)m(een)g(w)m(ords,)f(to)h
(the)g(end)630 5340 y(of)h(the)f(next)h(w)m(ord.)40 b(W)-8
-b(ord)31 b(b)s(oundaries)e(are)h(the)h(same)g(as)f Fs(forward-word)p
-Ft(.)p eop end
-%%Page: 120 126
-TeXDict begin 120 125 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(120)150 299 y Fs
-(backward-kill-word)25 b(\(M-DEL\))630 408 y Ft(Kill)k(the)g(w)m(ord)g
+b(ord)31 b(b)s(oundaries)e(are)h(the)h(same)g(as)f Ft(forward-word)p
+Fu(.)p eop end
+%%Page: 119 125
+TeXDict begin 119 124 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(119)150 299 y Ft
+(backward-kill-word)25 b(\(M-DEL\))630 408 y Fu(Kill)k(the)g(w)m(ord)g
(b)s(ehind)e(p)s(oin)m(t.)40 b(W)-8 b(ord)29 b(b)s(oundaries)f(are)h
-(the)g(same)g(as)g Fs(backward-word)p Ft(.)150 569 y
-Fs(shell-kill-word)d(\(\))630 679 y Ft(Kill)k(from)f(p)s(oin)m(t)g(to)h
+(the)g(same)g(as)g Ft(backward-word)p Fu(.)150 569 y
+Ft(shell-kill-word)d(\(\))630 679 y Fu(Kill)k(from)f(p)s(oin)m(t)g(to)h
(the)g(end)e(of)i(the)f(curren)m(t)h(w)m(ord,)f(or)g(if)h(b)s(et)m(w)m
(een)g(w)m(ords,)f(to)h(the)g(end)630 788 y(of)h(the)f(next)h(w)m(ord.)
40 b(W)-8 b(ord)31 b(b)s(oundaries)e(are)h(the)h(same)g(as)f
-Fs(shell-forward-word)p Ft(.)150 949 y Fs(shell-backward-kill-word)24
-b(\(\))630 1059 y Ft(Kill)e(the)h(w)m(ord)e(b)s(ehind)g(p)s(oin)m(t.)38
+Ft(shell-forward-word)p Fu(.)150 949 y Ft(shell-backward-kill-word)24
+b(\(\))630 1059 y Fu(Kill)e(the)h(w)m(ord)e(b)s(ehind)g(p)s(oin)m(t.)38
b(W)-8 b(ord)22 b(b)s(oundaries)f(are)h(the)g(same)h(as)f
-Fs(shell-backward-)630 1168 y(word)p Ft(.)150 1329 y
-Fs(unix-word-rubout)k(\(C-w\))630 1438 y Ft(Kill)32 b(the)g(w)m(ord)f
+Ft(shell-backward-)630 1168 y(word)p Fu(.)150 1329 y
+Ft(unix-word-rubout)k(\(C-w\))630 1438 y Fu(Kill)32 b(the)g(w)m(ord)f
(b)s(ehind)f(p)s(oin)m(t,)i(using)f(white)h(space)g(as)g(a)g(w)m(ord)f
(b)s(oundary)-8 b(.)43 b(The)31 b(killed)630 1548 y(text)g(is)g(sa)m(v)
-m(ed)g(on)g(the)f(kill-ring.)150 1709 y Fs(unix-filename-rubout)25
-b(\(\))630 1818 y Ft(Kill)37 b(the)f(w)m(ord)g(b)s(ehind)f(p)s(oin)m
+m(ed)g(on)g(the)f(kill-ring.)150 1709 y Ft(unix-filename-rubout)25
+b(\(\))630 1818 y Fu(Kill)37 b(the)f(w)m(ord)g(b)s(ehind)f(p)s(oin)m
(t,)j(using)e(white)g(space)h(and)f(the)g(slash)g(c)m(haracter)i(as)f
(the)630 1928 y(w)m(ord)30 b(b)s(oundaries.)39 b(The)30
b(killed)h(text)g(is)g(sa)m(v)m(ed)g(on)g(the)f(kill-ring.)150
-2089 y Fs(delete-horizontal-space)24 b(\(\))630 2198
-y Ft(Delete)33 b(all)e(spaces)g(and)e(tabs)i(around)e(p)s(oin)m(t.)41
+2089 y Ft(delete-horizontal-space)24 b(\(\))630 2198
+y Fu(Delete)33 b(all)e(spaces)g(and)e(tabs)i(around)e(p)s(oin)m(t.)41
b(By)31 b(default,)f(this)h(is)f(un)m(b)s(ound.)150 2359
-y Fs(kill-region)d(\(\))630 2469 y Ft(Kill)k(the)f(text)i(in)e(the)g
+y Ft(kill-region)d(\(\))630 2469 y Fu(Kill)k(the)f(text)i(in)e(the)g
(curren)m(t)h(region.)41 b(By)31 b(default,)f(this)h(command)f(is)g(un)
-m(b)s(ound.)150 2629 y Fs(copy-region-as-kill)25 b(\(\))630
-2739 y Ft(Cop)m(y)34 b(the)g(text)h(in)f(the)g(region)g(to)h(the)f
+m(b)s(ound.)150 2629 y Ft(copy-region-as-kill)25 b(\(\))630
+2739 y Fu(Cop)m(y)34 b(the)g(text)h(in)f(the)g(region)g(to)h(the)f
(kill)h(bu\013er,)f(so)g(it)h(can)f(b)s(e)f(y)m(ank)m(ed)i(righ)m(t)f
(a)m(w)m(a)m(y)-8 b(.)630 2848 y(By)31 b(default,)f(this)h(command)f
-(is)g(un)m(b)s(ound.)150 3009 y Fs(copy-backward-word)25
-b(\(\))630 3119 y Ft(Cop)m(y)38 b(the)h(w)m(ord)f(b)s(efore)g(p)s(oin)m
+(is)g(un)m(b)s(ound.)150 3009 y Ft(copy-backward-word)25
+b(\(\))630 3119 y Fu(Cop)m(y)38 b(the)h(w)m(ord)f(b)s(efore)g(p)s(oin)m
(t)g(to)i(the)e(kill)h(bu\013er.)64 b(The)38 b(w)m(ord)g(b)s(oundaries)
-f(are)i(the)630 3228 y(same)31 b(as)f Fs(backward-word)p
-Ft(.)38 b(By)30 b(default,)h(this)f(command)g(is)h(un)m(b)s(ound.)150
-3389 y Fs(copy-forward-word)26 b(\(\))630 3499 y Ft(Cop)m(y)31
+f(are)i(the)630 3228 y(same)31 b(as)f Ft(backward-word)p
+Fu(.)38 b(By)30 b(default,)h(this)f(command)g(is)h(un)m(b)s(ound.)150
+3389 y Ft(copy-forward-word)26 b(\(\))630 3499 y Fu(Cop)m(y)31
b(the)g(w)m(ord)g(follo)m(wing)h(p)s(oin)m(t)f(to)h(the)f(kill)h
(bu\013er.)42 b(The)30 b(w)m(ord)h(b)s(oundaries)e(are)j(the)630
-3608 y(same)f(as)f Fs(forward-word)p Ft(.)38 b(By)30
+3608 y(same)f(as)f Ft(forward-word)p Fu(.)38 b(By)30
b(default,)h(this)g(command)f(is)g(un)m(b)s(ound.)150
-3769 y Fs(yank)f(\(C-y\))630 3878 y Ft(Y)-8 b(ank)31
+3769 y Ft(yank)f(\(C-y\))630 3878 y Fu(Y)-8 b(ank)31
b(the)f(top)h(of)g(the)f(kill)h(ring)f(in)m(to)i(the)e(bu\013er)g(at)h
-(p)s(oin)m(t.)150 4039 y Fs(yank-pop)d(\(M-y\))630 4149
-y Ft(Rotate)36 b(the)f(kill-ring,)i(and)d(y)m(ank)h(the)f(new)g(top.)54
+(p)s(oin)m(t.)150 4039 y Ft(yank-pop)d(\(M-y\))630 4149
+y Fu(Rotate)36 b(the)f(kill-ring,)i(and)d(y)m(ank)h(the)f(new)g(top.)54
b(Y)-8 b(ou)35 b(can)g(only)f(do)h(this)f(if)h(the)g(prior)630
-4258 y(command)30 b(is)h Fs(yank)e Ft(or)h Fs(yank-pop)p
-Ft(.)150 4459 y Fj(8.4.5)63 b(Sp)s(ecifying)42 b(Numeric)f(Argumen)m
-(ts)150 4631 y Fs(digit-argument)26 b(\()p Fi(M-0)p Fs(,)j
-Fi(M-1)p Fs(,)h(...)f Fi(M--)p Fs(\))630 4741 y Ft(Add)d(this)h(digit)g
+4258 y(command)30 b(is)h Ft(yank)e Fu(or)h Ft(yank-pop)p
+Fu(.)150 4459 y Fk(8.4.5)63 b(Sp)s(ecifying)42 b(Numeric)f(Argumen)m
+(ts)150 4631 y Ft(digit-argument)26 b(\()p Fj(M-0)p Ft(,)j
+Fj(M-1)p Ft(,)h(...)f Fj(M--)p Ft(\))630 4741 y Fu(Add)d(this)h(digit)g
(to)h(the)f(argumen)m(t)g(already)h(accum)m(ulating,)h(or)e(start)h(a)f
-(new)f(argumen)m(t.)630 4851 y Fi(M--)j Ft(starts)i(a)g(negativ)m(e)i
-(argumen)m(t.)150 5011 y Fs(universal-argument)25 b(\(\))630
-5121 y Ft(This)g(is)g(another)h(w)m(a)m(y)g(to)h(sp)s(ecify)e(an)g
+(new)f(argumen)m(t.)630 4851 y Fj(M--)j Fu(starts)i(a)g(negativ)m(e)i
+(argumen)m(t.)150 5011 y Ft(universal-argument)25 b(\(\))630
+5121 y Fu(This)g(is)g(another)h(w)m(a)m(y)g(to)h(sp)s(ecify)e(an)g
(argumen)m(t.)40 b(If)25 b(this)g(command)h(is)f(follo)m(w)m(ed)i(b)m
(y)f(one)630 5230 y(or)k(more)f(digits,)i(optionally)g(with)e(a)h
(leading)h(min)m(us)e(sign,)h(those)g(digits)g(de\014ne)f(the)h(ar-)630
5340 y(gumen)m(t.)41 b(If)28 b(the)i(command)f(is)g(follo)m(w)m(ed)h(b)
-m(y)f(digits,)i(executing)f Fs(universal-argument)p eop
+m(y)f(digits,)i(executing)f Ft(universal-argument)p eop
end
-%%Page: 121 127
-TeXDict begin 121 126 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(121)630 299 y(again)33
+%%Page: 120 126
+TeXDict begin 120 125 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(120)630 299 y(again)33
b(ends)e(the)h(n)m(umeric)f(argumen)m(t,)i(but)e(is)h(otherwise)g
(ignored.)45 b(As)32 b(a)g(sp)s(ecial)h(case,)630 408
y(if)g(this)g(command)f(is)h(immediately)h(follo)m(w)m(ed)h(b)m(y)d(a)h
737 y(mak)m(es)d(the)e(argumen)m(t)i(coun)m(t)f(four,)f(a)i(second)e
(time)i(mak)m(es)f(the)g(argumen)m(t)g(coun)m(t)h(six-)630
847 y(teen,)e(and)f(so)h(on.)40 b(By)31 b(default,)g(this)f(is)g(not)h
-(b)s(ound)d(to)j(a)g(k)m(ey)-8 b(.)150 1052 y Fj(8.4.6)63
+(b)s(ound)d(to)j(a)g(k)m(ey)-8 b(.)150 1052 y Fk(8.4.6)63
b(Letting)40 b(Readline)h(T)m(yp)s(e)g(F)-10 b(or)42
-b(Y)-10 b(ou)150 1226 y Fs(complete)28 b(\(TAB\))630
-1336 y Ft(A)m(ttempt)c(to)f(p)s(erform)e(completion)j(on)f(the)g(text)g
+b(Y)-10 b(ou)150 1226 y Ft(complete)28 b(\(TAB\))630
+1336 y Fu(A)m(ttempt)c(to)f(p)s(erform)e(completion)j(on)f(the)g(text)g
(b)s(efore)f(p)s(oin)m(t.)39 b(The)22 b(actual)i(completion)630
1445 y(p)s(erformed)33 b(is)h(application-sp)s(eci\014c.)53
b(Bash)35 b(attempts)g(completion)g(treating)h(the)e(text)630
1555 y(as)39 b(a)h(v)-5 b(ariable)39 b(\(if)h(the)f(text)h(b)s(egins)e
-(with)h(`)p Fs($)p Ft('\),)j(username)c(\(if)i(the)f(text)h(b)s(egins)e
-(with)630 1665 y(`)p Fs(~)p Ft('\),)31 b(hostname)f(\(if)g(the)g(text)h
-(b)s(egins)e(with)h(`)p Fs(@)p Ft('\),)h(or)f(command)f(\(including)h
+(with)h(`)p Ft($)p Fu('\),)j(username)c(\(if)i(the)f(text)h(b)s(egins)e
+(with)630 1665 y(`)p Ft(~)p Fu('\),)31 b(hostname)f(\(if)g(the)g(text)h
+(b)s(egins)e(with)h(`)p Ft(@)p Fu('\),)h(or)f(command)f(\(including)h
(aliases)i(and)630 1774 y(functions\))j(in)f(turn.)53
b(If)34 b(none)g(of)h(these)h(pro)s(duces)d(a)i(matc)m(h,)i(\014lename)
-e(completion)h(is)630 1884 y(attempted.)150 2049 y Fs
-(possible-completions)25 b(\(M-?\))630 2158 y Ft(List)35
+e(completion)h(is)630 1884 y(attempted.)150 2049 y Ft
+(possible-completions)25 b(\(M-?\))630 2158 y Fu(List)35
b(the)g(p)s(ossible)f(completions)i(of)e(the)h(text)h(b)s(efore)e(p)s
(oin)m(t.)54 b(When)34 b(displa)m(ying)h(com-)630 2268
y(pletions,)f(Readline)f(sets)f(the)h(n)m(um)m(b)s(er)e(of)i(columns)f
(used)f(for)i(displa)m(y)f(to)h(the)g(v)-5 b(alue)33
-b(of)630 2378 y Fs(completion-display-width)o Ft(,)g(the)j(v)-5
+b(of)630 2378 y Ft(completion-display-width)o Fu(,)g(the)j(v)-5
b(alue)37 b(of)g(the)f(en)m(vironmen)m(t)h(v)-5 b(ariable)38
-b Fs(COLUMNS)p Ft(,)630 2487 y(or)30 b(the)h(screen)f(width,)g(in)g
-(that)h(order.)150 2652 y Fs(insert-completions)25 b(\(M-*\))630
-2762 y Ft(Insert)30 b(all)h(completions)h(of)f(the)g(text)g(b)s(efore)f
+b Ft(COLUMNS)p Fu(,)630 2487 y(or)30 b(the)h(screen)f(width,)g(in)g
+(that)h(order.)150 2652 y Ft(insert-completions)25 b(\(M-*\))630
+2762 y Fu(Insert)30 b(all)h(completions)h(of)f(the)g(text)g(b)s(efore)f
(p)s(oin)m(t)h(that)g(w)m(ould)f(ha)m(v)m(e)i(b)s(een)e(generated)630
-2871 y(b)m(y)g Fs(possible-completions)p Ft(.)150 3036
-y Fs(menu-complete)d(\(\))630 3146 y Ft(Similar)d(to)g
-Fs(complete)p Ft(,)f(but)h(replaces)g(the)g(w)m(ord)g(to)g(b)s(e)f
+2871 y(b)m(y)g Ft(possible-completions)p Fu(.)150 3036
+y Ft(menu-complete)d(\(\))630 3146 y Fu(Similar)d(to)g
+Ft(complete)p Fu(,)f(but)h(replaces)g(the)g(w)m(ord)g(to)g(b)s(e)f
(completed)i(with)e(a)i(single)f(matc)m(h)630 3255 y(from)37
b(the)h(list)h(of)f(p)s(ossible)f(completions.)64 b(Rep)s(eated)39
-b(execution)g(of)f Fs(menu-complete)630 3365 y Ft(steps)i(through)g
+b(execution)g(of)f Ft(menu-complete)630 3365 y Fu(steps)i(through)g
(the)g(list)h(of)f(p)s(ossible)g(completions,)k(inserting)c(eac)m(h)i
(matc)m(h)f(in)f(turn.)630 3475 y(A)m(t)e(the)f(end)f(of)h(the)g(list)g
(of)g(completions,)i(the)e(b)s(ell)g(is)g(rung)f(\(sub)5
-b(ject)36 b(to)i(the)f(setting)630 3584 y(of)f Fs(bell-style)p
-Ft(\))e(and)h(the)h(original)i(text)f(is)f(restored.)57
-b(An)36 b(argumen)m(t)h(of)f Fq(n)f Ft(mo)m(v)m(es)i
-Fq(n)630 3694 y Ft(p)s(ositions)e(forw)m(ard)f(in)g(the)h(list)h(of)e
+b(ject)36 b(to)i(the)f(setting)630 3584 y(of)f Ft(bell-style)p
+Fu(\))e(and)h(the)h(original)i(text)f(is)f(restored.)57
+b(An)36 b(argumen)m(t)h(of)f Fr(n)f Fu(mo)m(v)m(es)i
+Fr(n)630 3694 y Fu(p)s(ositions)e(forw)m(ard)f(in)g(the)h(list)h(of)e
(matc)m(hes;)39 b(a)c(negativ)m(e)i(argumen)m(t)e(ma)m(y)g(b)s(e)f
(used)g(to)630 3803 y(mo)m(v)m(e)40 b(bac)m(kw)m(ard)e(through)g(the)g
(list.)65 b(This)38 b(command)g(is)g(in)m(tended)g(to)h(b)s(e)f(b)s
-(ound)e(to)630 3913 y Fs(TAB)p Ft(,)30 b(but)f(is)i(un)m(b)s(ound)d(b)m
-(y)i(default.)150 4078 y Fs(menu-complete-backward)24
-b(\(\))630 4188 y Ft(Iden)m(tical)36 b(to)g Fs(menu-complete)p
-Ft(,)d(but)h(mo)m(v)m(es)j(bac)m(kw)m(ard)e(through)f(the)i(list)f(of)g
-(p)s(ossible)630 4297 y(completions,)d(as)e(if)h Fs(menu-complete)26
-b Ft(had)k(b)s(een)g(giv)m(en)h(a)g(negativ)m(e)i(argumen)m(t.)150
-4462 y Fs(delete-char-or-list)25 b(\(\))630 4572 y Ft(Deletes)k(the)e
-(c)m(haracter)h(under)e(the)h(cursor)f(if)h(not)g(at)g(the)g(b)s
-(eginning)g(or)f(end)h(of)g(the)g(line)630 4681 y(\(lik)m(e)k
-Fs(delete-char)p Ft(\).)37 b(If)29 b(at)h(the)f(end)f(of)i(the)f(line,)
-h(b)s(eha)m(v)m(es)g(iden)m(tically)h(to)e Fs(possible-)630
-4791 y(completions)p Ft(.)38 b(This)29 b(command)h(is)h(un)m(b)s(ound)d
-(b)m(y)i(default.)150 4956 y Fs(complete-filename)c(\(M-/\))630
-5065 y Ft(A)m(ttempt)32 b(\014lename)e(completion)i(on)e(the)h(text)g
-(b)s(efore)f(p)s(oin)m(t.)150 5230 y Fs(possible-filename-comple)o
-(tion)o(s)24 b(\(C-x)30 b(/\))630 5340 y Ft(List)f(the)g(p)s(ossible)f
+(ound)e(to)630 3913 y Ft(TAB)p Fu(,)30 b(but)f(is)i(un)m(b)s(ound)d(b)m
+(y)i(default.)150 4078 y Ft(menu-complete-backward)24
+b(\(\))630 4188 y Fu(Iden)m(tical)36 b(to)g Ft(menu-complete)p
+Fu(,)d(but)h(mo)m(v)m(es)j(bac)m(kw)m(ard)e(through)f(the)i(list)f(of)g
+(p)s(ossible)630 4297 y(completions,)d(as)e(if)h Ft(menu-complete)26
+b Fu(had)k(b)s(een)g(giv)m(en)h(a)g(negativ)m(e)i(argumen)m(t.)150
+4462 y Ft(delete-char-or-list)25 b(\(\))630 4572 y Fu(Deletes)41
+b(the)e(c)m(haracter)h(under)e(the)h(cursor)f(if)h(not)g(at)g(the)h(b)s
+(eginning)e(or)h(end)f(of)h(the)630 4681 y(line)50 b(\(lik)m(e)h
+Ft(delete-char)p Fu(\).)96 b(If)49 b(at)h(the)g(end)f(of)h(the)f(line,)
+55 b(b)s(eha)m(v)m(es)c(iden)m(tically)g(to)630 4791
+y Ft(possible-completions)p Fu(.)35 b(This)30 b(command)g(is)g(un)m(b)s
+(ound)e(b)m(y)i(default.)150 4956 y Ft(complete-filename)c(\(M-/\))630
+5065 y Fu(A)m(ttempt)32 b(\014lename)e(completion)i(on)e(the)h(text)g
+(b)s(efore)f(p)s(oin)m(t.)150 5230 y Ft(possible-filename-comple)o
+(tion)o(s)24 b(\(C-x)30 b(/\))630 5340 y Fu(List)f(the)g(p)s(ossible)f
(completions)h(of)g(the)g(text)g(b)s(efore)g(p)s(oin)m(t,)g(treating)h
(it)f(as)g(a)f(\014lename.)p eop end
-%%Page: 122 128
-TeXDict begin 122 127 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(122)150 299 y Fs
-(complete-username)26 b(\(M-~\))630 408 y Ft(A)m(ttempt)32
+%%Page: 121 127
+TeXDict begin 121 126 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(121)150 299 y Ft
+(complete-username)26 b(\(M-~\))630 408 y Fu(A)m(ttempt)32
b(completion)f(on)g(the)f(text)i(b)s(efore)e(p)s(oin)m(t,)g(treating)i
-(it)f(as)f(a)h(username.)150 569 y Fs(possible-username-comple)o(tion)o
-(s)24 b(\(C-x)30 b(~\))630 679 y Ft(List)25 b(the)g(p)s(ossible)g
+(it)f(as)f(a)h(username.)150 569 y Ft(possible-username-comple)o(tion)o
+(s)24 b(\(C-x)30 b(~\))630 679 y Fu(List)25 b(the)g(p)s(ossible)g
(completions)h(of)f(the)g(text)h(b)s(efore)f(p)s(oin)m(t,)h(treating)g
-(it)g(as)f(a)g(username.)150 839 y Fs(complete-variable)h(\(M-$\))630
-949 y Ft(A)m(ttempt)32 b(completion)f(on)g(the)f(text)i(b)s(efore)e(p)s
+(it)g(as)f(a)g(username.)150 839 y Ft(complete-variable)h(\(M-$\))630
+949 y Fu(A)m(ttempt)32 b(completion)f(on)g(the)f(text)i(b)s(efore)e(p)s
(oin)m(t,)g(treating)i(it)f(as)f(a)h(shell)g(v)-5 b(ariable.)150
-1110 y Fs(possible-variable-comple)o(tion)o(s)24 b(\(C-x)30
-b($\))630 1219 y Ft(List)42 b(the)g(p)s(ossible)g(completions)h(of)f
+1110 y Ft(possible-variable-comple)o(tion)o(s)24 b(\(C-x)30
+b($\))630 1219 y Fu(List)42 b(the)g(p)s(ossible)g(completions)h(of)f
(the)g(text)h(b)s(efore)e(p)s(oin)m(t,)46 b(treating)d(it)f(as)g(a)h
-(shell)630 1329 y(v)-5 b(ariable.)150 1490 y Fs(complete-hostname)26
-b(\(M-@\))630 1599 y Ft(A)m(ttempt)32 b(completion)f(on)g(the)f(text)i
+(shell)630 1329 y(v)-5 b(ariable.)150 1490 y Ft(complete-hostname)26
+b(\(M-@\))630 1599 y Fu(A)m(ttempt)32 b(completion)f(on)g(the)f(text)i
(b)s(efore)e(p)s(oin)m(t,)g(treating)i(it)f(as)f(a)h(hostname.)150
-1760 y Fs(possible-hostname-comple)o(tion)o(s)24 b(\(C-x)30
-b(@\))630 1869 y Ft(List)25 b(the)g(p)s(ossible)f(completions)h(of)g
+1760 y Ft(possible-hostname-comple)o(tion)o(s)24 b(\(C-x)30
+b(@\))630 1869 y Fu(List)25 b(the)g(p)s(ossible)f(completions)h(of)g
(the)g(text)g(b)s(efore)g(p)s(oin)m(t,)h(treating)g(it)f(as)f(a)h
-(hostname.)150 2030 y Fs(complete-command)h(\(M-!\))630
-2140 y Ft(A)m(ttempt)32 b(completion)g(on)f(the)g(text)h(b)s(efore)e(p)
+(hostname.)150 2030 y Ft(complete-command)h(\(M-!\))630
+2140 y Fu(A)m(ttempt)32 b(completion)g(on)f(the)g(text)h(b)s(efore)e(p)
s(oin)m(t,)h(treating)h(it)g(as)f(a)g(command)g(name.)630
2249 y(Command)46 b(completion)i(attempts)g(to)f(matc)m(h)h(the)f(text)
h(against)g(aliases,)53 b(reserv)m(ed)630 2359 y(w)m(ords,)36
b(shell)g(functions,)h(shell)e(builtins,)i(and)e(\014nally)g
(executable)i(\014lenames,)g(in)e(that)630 2469 y(order.)150
-2629 y Fs(possible-command-complet)o(ions)24 b(\(C-x)29
-b(!\))630 2739 y Ft(List)d(the)h(p)s(ossible)f(completions)h(of)f(the)h
+2629 y Ft(possible-command-complet)o(ions)24 b(\(C-x)29
+b(!\))630 2739 y Fu(List)d(the)h(p)s(ossible)f(completions)h(of)f(the)h
(text)g(b)s(efore)f(p)s(oin)m(t,)h(treating)g(it)g(as)g(a)f(command)630
-2848 y(name.)150 3009 y Fs(dynamic-complete-history)e(\(M-TAB\))630
-3119 y Ft(A)m(ttempt)31 b(completion)h(on)e(the)g(text)h(b)s(efore)f(p)
+2848 y(name.)150 3009 y Ft(dynamic-complete-history)e(\(M-TAB\))630
+3119 y Fu(A)m(ttempt)31 b(completion)h(on)e(the)g(text)h(b)s(efore)f(p)
s(oin)m(t,)g(comparing)h(the)f(text)h(against)h(lines)630
3228 y(from)e(the)g(history)h(list)g(for)f(p)s(ossible)g(completion)i
-(matc)m(hes.)150 3389 y Fs(dabbrev-expand)26 b(\(\))630
-3499 y Ft(A)m(ttempt)i(men)m(u)e(completion)i(on)f(the)g(text)g(b)s
+(matc)m(hes.)150 3389 y Ft(dabbrev-expand)26 b(\(\))630
+3499 y Fu(A)m(ttempt)i(men)m(u)e(completion)i(on)f(the)g(text)g(b)s
(efore)f(p)s(oin)m(t,)i(comparing)f(the)g(text)h(against)630
3608 y(lines)j(from)e(the)i(history)f(list)h(for)g(p)s(ossible)e
-(completion)j(matc)m(hes.)150 3769 y Fs(complete-into-braces)25
-b(\(M-{\))630 3878 y Ft(P)m(erform)f(\014lename)f(completion)i(and)f
+(completion)j(matc)m(hes.)150 3769 y Ft(complete-into-braces)25
+b(\(M-{\))630 3878 y Fu(P)m(erform)f(\014lename)f(completion)i(and)f
(insert)f(the)h(list)g(of)g(p)s(ossible)f(completions)i(enclosed)630
3988 y(within)34 b(braces)h(so)f(the)h(list)g(is)g(a)m(v)-5
b(ailable)37 b(to)e(the)g(shell)g(\(see)g(Section)h(3.5.1)g([Brace)g
(Ex-)630 4098 y(pansion],)30 b(page)h(21\).)150 4298
-y Fj(8.4.7)63 b(Keyb)s(oard)41 b(Macros)150 4471 y Fs(start-kbd-macro)
-26 b(\(C-x)j(\(\))630 4580 y Ft(Begin)i(sa)m(ving)h(the)e(c)m
+y Fk(8.4.7)63 b(Keyb)s(oard)41 b(Macros)150 4471 y Ft(start-kbd-macro)
+26 b(\(C-x)j(\(\))630 4580 y Fu(Begin)i(sa)m(ving)h(the)e(c)m
(haracters)i(t)m(yp)s(ed)e(in)m(to)h(the)g(curren)m(t)f(k)m(eyb)s(oard)
-g(macro.)150 4741 y Fs(end-kbd-macro)d(\(C-x)i(\)\))630
-4851 y Ft(Stop)e(sa)m(ving)h(the)g(c)m(haracters)g(t)m(yp)s(ed)f(in)m
+g(macro.)150 4741 y Ft(end-kbd-macro)d(\(C-x)i(\)\))630
+4851 y Fu(Stop)e(sa)m(ving)h(the)g(c)m(haracters)g(t)m(yp)s(ed)f(in)m
(to)i(the)e(curren)m(t)g(k)m(eyb)s(oard)g(macro)h(and)f(sa)m(v)m(e)i
-(the)630 4960 y(de\014nition.)150 5121 y Fs(call-last-kbd-macro)c
-(\(C-x)k(e\))630 5230 y Ft(Re-execute)37 b(the)e(last)h(k)m(eyb)s(oard)
+(the)630 4960 y(de\014nition.)150 5121 y Ft(call-last-kbd-macro)c
+(\(C-x)k(e\))630 5230 y Fu(Re-execute)37 b(the)e(last)h(k)m(eyb)s(oard)
f(macro)h(de\014ned,)f(b)m(y)h(making)f(the)g(c)m(haracters)i(in)e(the)
630 5340 y(macro)c(app)s(ear)f(as)g(if)h(t)m(yp)s(ed)f(at)h(the)f(k)m
(eyb)s(oard.)p eop end
-%%Page: 123 129
-TeXDict begin 123 128 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(123)150 299 y Fs
-(print-last-kbd-macro)25 b(\(\))630 408 y Ft(Prin)m(t)30
+%%Page: 122 128
+TeXDict begin 122 127 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(122)150 299 y Ft
+(print-last-kbd-macro)25 b(\(\))630 408 y Fu(Prin)m(t)30
b(the)h(last)g(k)m(eb)s(oard)f(macro)h(de\014ned)e(in)i(a)f(format)h
-(suitable)g(for)f(the)h Fq(inputrc)k Ft(\014le.)150 604
-y Fj(8.4.8)63 b(Some)41 b(Miscellaneous)i(Commands)150
-774 y Fs(re-read-init-file)26 b(\(C-x)j(C-r\))630 884
-y Ft(Read)22 b(in)g(the)g(con)m(ten)m(ts)h(of)f(the)g
-Fq(inputrc)27 b Ft(\014le,)d(and)d(incorp)s(orate)h(an)m(y)h(bindings)d
+(suitable)g(for)f(the)h Fr(inputrc)k Fu(\014le.)150 604
+y Fk(8.4.8)63 b(Some)41 b(Miscellaneous)i(Commands)150
+774 y Ft(re-read-init-file)26 b(\(C-x)j(C-r\))630 884
+y Fu(Read)22 b(in)g(the)g(con)m(ten)m(ts)h(of)f(the)g
+Fr(inputrc)27 b Fu(\014le,)d(and)d(incorp)s(orate)h(an)m(y)h(bindings)d
(or)i(v)-5 b(ariable)630 994 y(assignmen)m(ts)31 b(found)e(there.)150
-1150 y Fs(abort)g(\(C-g\))630 1259 y Ft(Ab)s(ort)d(the)h(curren)m(t)f
+1150 y Ft(abort)g(\(C-g\))630 1259 y Fu(Ab)s(ort)d(the)h(curren)m(t)f
(editing)h(command)f(and)g(ring)h(the)f(terminal's)h(b)s(ell)g(\(sub)5
-b(ject)26 b(to)i(the)630 1369 y(setting)j(of)g Fs(bell-style)p
-Ft(\).)150 1525 y Fs(do-uppercase-version)25 b(\(M-a,)k(M-b,)g(M-)p
-Fi(x)11 b Fs(,)29 b(...)o(\))630 1634 y Ft(If)e(the)h(meta\014ed)g(c)m
-(haracter)h Fq(x)34 b Ft(is)28 b(lo)m(w)m(ercase,)i(run)d(the)g
+b(ject)26 b(to)i(the)630 1369 y(setting)j(of)g Ft(bell-style)p
+Fu(\).)150 1525 y Ft(do-uppercase-version)25 b(\(M-a,)k(M-b,)g(M-)p
+Fj(x)p Ft(,)g(...)o(\))630 1634 y Fu(If)e(the)h(meta\014ed)g(c)m
+(haracter)h Fr(x)34 b Fu(is)28 b(lo)m(w)m(ercase,)i(run)d(the)g
(command)h(that)g(is)g(b)s(ound)d(to)k(the)630 1744 y(corresp)s(onding)
-g(upp)s(ercase)h(c)m(haracter.)150 1900 y Fs(prefix-meta)d(\(ESC\))630
-2010 y Ft(Metafy)39 b(the)e(next)h(c)m(haracter)h(t)m(yp)s(ed.)62
+g(upp)s(ercase)h(c)m(haracter.)150 1900 y Ft(prefix-meta)d(\(ESC\))630
+2010 y Fu(Metafy)39 b(the)e(next)h(c)m(haracter)h(t)m(yp)s(ed.)62
b(This)37 b(is)g(for)h(k)m(eyb)s(oards)f(without)g(a)h(meta)g(k)m(ey)-8
-b(.)630 2119 y(T)m(yping)30 b(`)p Fs(ESC)g(f)p Ft(')g(is)h(equiv)-5
-b(alen)m(t)31 b(to)g(t)m(yping)g Fi(M-f)p Ft(.)150 2275
-y Fs(undo)e(\(C-_)g(or)h(C-x)g(C-u\))630 2385 y Ft(Incremen)m(tal)h
+b(.)630 2119 y(T)m(yping)30 b(`)p Ft(ESC)g(f)p Fu(')g(is)h(equiv)-5
+b(alen)m(t)31 b(to)g(t)m(yping)g Fj(M-f)p Fu(.)150 2275
+y Ft(undo)e(\(C-_)g(or)h(C-x)g(C-u\))630 2385 y Fu(Incremen)m(tal)h
(undo,)f(separately)h(remem)m(b)s(ered)f(for)g(eac)m(h)i(line.)150
-2541 y Fs(revert-line)27 b(\(M-r\))630 2650 y Ft(Undo)33
+2541 y Ft(revert-line)27 b(\(M-r\))630 2650 y Fu(Undo)33
b(all)h(c)m(hanges)g(made)f(to)h(this)f(line.)49 b(This)32
-b(is)h(lik)m(e)i(executing)f(the)f Fs(undo)f Ft(command)630
+b(is)h(lik)m(e)i(executing)f(the)f Ft(undo)f Fu(command)630
2760 y(enough)e(times)h(to)g(get)h(bac)m(k)f(to)g(the)f(b)s(eginning.)
-150 2916 y Fs(tilde-expand)d(\(M-&\))630 3026 y Ft(P)m(erform)j(tilde)h
+150 2916 y Ft(tilde-expand)d(\(M-&\))630 3026 y Fu(P)m(erform)j(tilde)h
(expansion)g(on)f(the)g(curren)m(t)h(w)m(ord.)150 3182
-y Fs(set-mark)d(\(C-@\))630 3291 y Ft(Set)33 b(the)g(mark)f(to)i(the)f
+y Ft(set-mark)d(\(C-@\))630 3291 y Fu(Set)33 b(the)g(mark)f(to)i(the)f
(p)s(oin)m(t.)48 b(If)32 b(a)h(n)m(umeric)g(argumen)m(t)g(is)g
(supplied,)f(the)h(mark)g(is)f(set)630 3401 y(to)f(that)g(p)s(osition.)
-150 3557 y Fs(exchange-point-and-mark)24 b(\(C-x)29 b(C-x\))630
-3666 y Ft(Sw)m(ap)i(the)g(p)s(oin)m(t)g(with)g(the)g(mark.)43
+150 3557 y Ft(exchange-point-and-mark)24 b(\(C-x)29 b(C-x\))630
+3666 y Fu(Sw)m(ap)i(the)g(p)s(oin)m(t)g(with)g(the)g(mark.)43
b(The)31 b(curren)m(t)g(cursor)f(p)s(osition)i(is)f(set)h(to)f(the)h
(sa)m(v)m(ed)630 3776 y(p)s(osition,)f(and)e(the)i(old)g(cursor)e(p)s
(osition)i(is)f(sa)m(v)m(ed)i(as)e(the)h(mark.)150 3932
-y Fs(character-search)26 b(\(C-]\))630 4042 y Ft(A)f(c)m(haracter)h(is)
+y Ft(character-search)26 b(\(C-]\))630 4042 y Fu(A)f(c)m(haracter)h(is)
f(read)g(and)f(p)s(oin)m(t)h(is)g(mo)m(v)m(ed)h(to)g(the)f(next)g(o)s
(ccurrence)g(of)g(that)g(c)m(haracter.)630 4151 y(A)30
b(negativ)m(e)j(coun)m(t)e(searc)m(hes)g(for)f(previous)g(o)s
-(ccurrences.)150 4307 y Fs(character-search-backwar)o(d)24
-b(\(M-C-]\))630 4417 y Ft(A)45 b(c)m(haracter)h(is)f(read)g(and)f(p)s
+(ccurrences.)150 4307 y Ft(character-search-backwar)o(d)24
+b(\(M-C-]\))630 4417 y Fu(A)45 b(c)m(haracter)h(is)f(read)g(and)f(p)s
(oin)m(t)h(is)g(mo)m(v)m(ed)h(to)f(the)g(previous)f(o)s(ccurrence)h(of)
g(that)630 4526 y(c)m(haracter.)d(A)31 b(negativ)m(e)h(coun)m(t)f
(searc)m(hes)h(for)e(subsequen)m(t)f(o)s(ccurrences.)150
-4682 y Fs(skip-csi-sequence)d(\(\))630 4792 y Ft(Read)i(enough)f(c)m
+4682 y Ft(skip-csi-sequence)d(\(\))630 4792 y Fu(Read)i(enough)f(c)m
(haracters)h(to)g(consume)f(a)h(m)m(ulti-k)m(ey)h(sequence)f(suc)m(h)f
(as)g(those)h(de\014ned)630 4902 y(for)37 b(k)m(eys)h(lik)m(e)g(Home)g
(and)f(End.)60 b(Suc)m(h)37 b(sequences)g(b)s(egin)g(with)g(a)h(Con)m
(trol)g(Sequence)630 5011 y(Indicator)f(\(CSI\),)f(usually)h(ESC-[.)59
-b(If)36 b(this)g(sequence)h(is)g(b)s(ound)d(to)k Fs("\\)p
-Ft(e[)p Fs(")p Ft(,)g(k)m(eys)f(pro-)630 5121 y(ducing)31
+b(If)36 b(this)g(sequence)h(is)g(b)s(ound)d(to)k Ft("\\)p
+Fu(e[)p Ft(")p Fu(,)g(k)m(eys)f(pro-)630 5121 y(ducing)31
b(suc)m(h)h(sequences)g(will)h(ha)m(v)m(e)g(no)f(e\013ect)h(unless)e
(explicitly)j(b)s(ound)c(to)i(a)h(readline)630 5230 y(command,)f
(instead)g(of)g(inserting)g(stra)m(y)h(c)m(haracters)g(in)m(to)g(the)f
(editing)h(bu\013er.)44 b(This)31 b(is)630 5340 y(un)m(b)s(ound)d(b)m
(y)i(default,)h(but)f(usually)g(b)s(ound)e(to)j(ESC-[.)p
eop end
-%%Page: 124 130
-TeXDict begin 124 129 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(124)150 299 y Fs(insert-comment)26
-b(\(M-#\))630 408 y Ft(Without)36 b(a)g(n)m(umeric)g(argumen)m(t,)h
-(the)f(v)-5 b(alue)36 b(of)g(the)g Fs(comment-begin)c
-Ft(v)-5 b(ariable)36 b(is)g(in-)630 518 y(serted)c(at)g(the)g(b)s
+%%Page: 123 129
+TeXDict begin 123 128 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(123)150 299 y Ft(insert-comment)26
+b(\(M-#\))630 408 y Fu(Without)36 b(a)g(n)m(umeric)g(argumen)m(t,)h
+(the)f(v)-5 b(alue)36 b(of)g(the)g Ft(comment-begin)c
+Fu(v)-5 b(ariable)36 b(is)g(in-)630 518 y(serted)c(at)g(the)g(b)s
(eginning)f(of)h(the)f(curren)m(t)h(line.)45 b(If)31
b(a)h(n)m(umeric)f(argumen)m(t)h(is)g(supplied,)630 628
y(this)k(command)h(acts)g(as)g(a)g(toggle:)55 b(if)37
b(the)f(c)m(haracters)i(at)g(the)e(b)s(eginning)g(of)h(the)g(line)630
737 y(do)30 b(not)h(matc)m(h)h(the)f(v)-5 b(alue)31 b(of)f
-Fs(comment-begin)p Ft(,)e(the)i(v)-5 b(alue)31 b(is)g(inserted,)g
-(otherwise)g(the)630 847 y(c)m(haracters)42 b(in)d Fs(comment-begin)e
-Ft(are)j(deleted)h(from)f(the)g(b)s(eginning)g(of)g(the)g(line.)71
+Ft(comment-begin)p Fu(,)e(the)i(v)-5 b(alue)31 b(is)g(inserted,)g
+(otherwise)g(the)630 847 y(c)m(haracters)42 b(in)d Ft(comment-begin)e
+Fu(are)j(deleted)h(from)f(the)g(b)s(eginning)g(of)g(the)g(line.)71
b(In)630 956 y(either)37 b(case,)j(the)e(line)f(is)g(accepted)i(as)e
(if)g(a)g(newline)g(had)g(b)s(een)f(t)m(yp)s(ed.)60 b(The)37
-b(default)630 1066 y(v)-5 b(alue)32 b(of)g Fs(comment-begin)c
-Ft(causes)k(this)f(command)h(to)g(mak)m(e)h(the)e(curren)m(t)h(line)g
+b(default)630 1066 y(v)-5 b(alue)32 b(of)g Ft(comment-begin)c
+Fu(causes)k(this)f(command)h(to)g(mak)m(e)h(the)e(curren)m(t)h(line)g
(a)g(shell)630 1176 y(commen)m(t.)40 b(If)26 b(a)h(n)m(umeric)f
(argumen)m(t)h(causes)g(the)f(commen)m(t)i(c)m(haracter)g(to)f(b)s(e)f
(remo)m(v)m(ed,)630 1285 y(the)31 b(line)f(will)h(b)s(e)f(executed)h(b)
-m(y)f(the)h(shell.)150 1443 y Fs(dump-functions)26 b(\(\))630
-1553 y Ft(Prin)m(t)g(all)i(of)e(the)h(functions)f(and)g(their)g(k)m(ey)
+m(y)f(the)h(shell.)150 1443 y Ft(dump-functions)26 b(\(\))630
+1553 y Fu(Prin)m(t)g(all)i(of)e(the)h(functions)f(and)g(their)g(k)m(ey)
h(bindings)e(to)j(the)e(Readline)h(output)f(stream.)630
1663 y(If)31 b(a)h(n)m(umeric)g(argumen)m(t)g(is)g(supplied,)f(the)h
(output)f(is)h(formatted)g(in)f(suc)m(h)h(a)g(w)m(a)m(y)g(that)630
-1772 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h Fq(inputrc)k
-Ft(\014le.)41 b(This)29 b(command)h(is)h(un)m(b)s(ound)c(b)m(y)k
-(default.)150 1931 y Fs(dump-variables)26 b(\(\))630
-2040 y Ft(Prin)m(t)21 b(all)h(of)g(the)f(settable)i(v)-5
+1772 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h Fr(inputrc)k
+Fu(\014le.)41 b(This)29 b(command)h(is)h(un)m(b)s(ound)c(b)m(y)k
+(default.)150 1931 y Ft(dump-variables)26 b(\(\))630
+2040 y Fu(Prin)m(t)21 b(all)h(of)g(the)f(settable)i(v)-5
b(ariables)22 b(and)f(their)g(v)-5 b(alues)22 b(to)g(the)f(Readline)h
(output)f(stream.)630 2150 y(If)31 b(a)h(n)m(umeric)g(argumen)m(t)g(is)
g(supplied,)f(the)h(output)f(is)h(formatted)g(in)f(suc)m(h)h(a)g(w)m(a)
m(y)g(that)630 2259 y(it)f(can)g(b)s(e)e(made)i(part)f(of)g(an)h
-Fq(inputrc)k Ft(\014le.)41 b(This)29 b(command)h(is)h(un)m(b)s(ound)c
-(b)m(y)k(default.)150 2418 y Fs(dump-macros)c(\(\))630
-2527 y Ft(Prin)m(t)34 b(all)g(of)g(the)g(Readline)g(k)m(ey)h(sequences)
+Fr(inputrc)k Fu(\014le.)41 b(This)29 b(command)h(is)h(un)m(b)s(ound)c
+(b)m(y)k(default.)150 2418 y Ft(dump-macros)c(\(\))630
+2527 y Fu(Prin)m(t)34 b(all)g(of)g(the)g(Readline)g(k)m(ey)h(sequences)
f(b)s(ound)e(to)i(macros)g(and)f(the)h(strings)g(they)630
2637 y(output.)53 b(If)35 b(a)g(n)m(umeric)f(argumen)m(t)i(is)e
(supplied,)h(the)g(output)g(is)f(formatted)i(in)e(suc)m(h)h(a)630
2746 y(w)m(a)m(y)c(that)g(it)f(can)g(b)s(e)g(made)g(part)f(of)i(an)e
-Fq(inputrc)35 b Ft(\014le.)41 b(This)29 b(command)h(is)g(un)m(b)s(ound)
-d(b)m(y)630 2856 y(default.)150 3014 y Fs(glob-complete-word)e(\(M-g\))
-630 3124 y Ft(The)i(w)m(ord)h(b)s(efore)f(p)s(oin)m(t)h(is)g(treated)h
+Fr(inputrc)35 b Fu(\014le.)41 b(This)29 b(command)h(is)g(un)m(b)s(ound)
+d(b)m(y)630 2856 y(default.)150 3014 y Ft(glob-complete-word)e(\(M-g\))
+630 3124 y Fu(The)i(w)m(ord)h(b)s(efore)f(p)s(oin)m(t)h(is)g(treated)h
(as)f(a)h(pattern)f(for)f(pathname)h(expansion,)g(with)g(an)630
3233 y(asterisk)d(implicitly)h(app)s(ended.)37 b(This)23
b(pattern)i(is)f(used)g(to)h(generate)h(a)e(list)h(of)g(matc)m(hing)630
3343 y(\014le)30 b(names)h(for)f(p)s(ossible)g(completions.)150
-3501 y Fs(glob-expand-word)c(\(C-x)j(*\))630 3611 y Ft(The)40
+3501 y Ft(glob-expand-word)c(\(C-x)j(*\))630 3611 y Fu(The)40
b(w)m(ord)g(b)s(efore)g(p)s(oin)m(t)h(is)g(treated)g(as)g(a)g(pattern)g
(for)f(pathname)g(expansion,)k(and)630 3720 y(the)c(list)g(of)f(matc)m
(hing)i(\014le)e(names)g(is)h(inserted,)h(replacing)g(the)e(w)m(ord.)67
b(If)39 b(a)h(n)m(umeric)630 3830 y(argumen)m(t)31 b(is)f(supplied,)g
-(a)g(`)p Fs(*)p Ft(')h(is)f(app)s(ended)f(b)s(efore)h(pathname)g
-(expansion.)150 3988 y Fs(glob-list-expansions)25 b(\(C-x)k(g\))630
-4098 y Ft(The)k(list)h(of)f(expansions)g(that)h(w)m(ould)f(ha)m(v)m(e)h
-(b)s(een)f(generated)h(b)m(y)f Fs(glob-expand-word)630
-4208 y Ft(is)h(displa)m(y)m(ed,)h(and)e(the)h(line)g(is)f(redra)m(wn.)
+(a)g(`)p Ft(*)p Fu(')h(is)f(app)s(ended)f(b)s(efore)h(pathname)g
+(expansion.)150 3988 y Ft(glob-list-expansions)25 b(\(C-x)k(g\))630
+4098 y Fu(The)k(list)h(of)f(expansions)g(that)h(w)m(ould)f(ha)m(v)m(e)h
+(b)s(een)f(generated)h(b)m(y)f Ft(glob-expand-word)630
+4208 y Fu(is)h(displa)m(y)m(ed,)h(and)e(the)h(line)g(is)f(redra)m(wn.)
50 b(If)33 b(a)h(n)m(umeric)g(argumen)m(t)g(is)f(supplied,)h(a)g(`)p
-Fs(*)p Ft(')630 4317 y(is)c(app)s(ended)f(b)s(efore)h(pathname)g
-(expansion.)150 4475 y Fs(display-shell-version)25 b(\(C-x)k(C-v\))630
-4585 y Ft(Displa)m(y)j(v)m(ersion)e(information)h(ab)s(out)f(the)h
-(curren)m(t)f(instance)h(of)f(Bash.)150 4743 y Fs(shell-expand-line)c
-(\(M-C-e\))630 4853 y Ft(Expand)34 b(the)h(line)h(as)g(the)f(shell)h
+Ft(*)p Fu(')630 4317 y(is)c(app)s(ended)f(b)s(efore)h(pathname)g
+(expansion.)150 4475 y Ft(display-shell-version)25 b(\(C-x)k(C-v\))630
+4585 y Fu(Displa)m(y)j(v)m(ersion)e(information)h(ab)s(out)f(the)h
+(curren)m(t)f(instance)h(of)f(Bash.)150 4743 y Ft(shell-expand-line)c
+(\(M-C-e\))630 4853 y Fu(Expand)34 b(the)h(line)h(as)g(the)f(shell)h
(do)s(es.)55 b(This)34 b(p)s(erforms)g(alias)i(and)f(history)g
(expansion)630 4963 y(as)f(w)m(ell)g(as)g(all)h(of)e(the)h(shell)g(w)m
(ord)f(expansions)g(\(see)i(Section)f(3.5)h([Shell)e(Expansions],)630
-5072 y(page)e(21\).)150 5230 y Fs(history-expand-line)25
-b(\(M-^\))630 5340 y Ft(P)m(erform)30 b(history)h(expansion)f(on)g(the)
+5072 y(page)e(21\).)150 5230 y Ft(history-expand-line)25
+b(\(M-^\))630 5340 y Fu(P)m(erform)30 b(history)h(expansion)f(on)g(the)
h(curren)m(t)f(line.)p eop end
-%%Page: 125 131
-TeXDict begin 125 130 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(125)150 299 y Fs(magic-space)27
-b(\(\))630 408 y Ft(P)m(erform)c(history)g(expansion)g(on)g(the)g
+%%Page: 124 130
+TeXDict begin 124 129 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(124)150 299 y Ft(magic-space)27
+b(\(\))630 408 y Fu(P)m(erform)c(history)g(expansion)g(on)g(the)g
(curren)m(t)g(line)g(and)g(insert)g(a)g(space)h(\(see)g(Section)g(9.3)
-630 518 y([History)31 b(In)m(teraction],)i(page)e(136\).)150
-686 y Fs(alias-expand-line)26 b(\(\))630 796 y Ft(P)m(erform)i(alias)i
+630 518 y([History)31 b(In)m(teraction],)i(page)e(135\).)150
+686 y Ft(alias-expand-line)26 b(\(\))630 796 y Fu(P)m(erform)i(alias)i
(expansion)e(on)g(the)h(curren)m(t)f(line)h(\(see)g(Section)g(6.6)h
-([Aliases],)g(page)f(88\).)150 964 y Fs(history-and-alias-expand)o
-(-lin)o(e)24 b(\(\))630 1074 y Ft(P)m(erform)30 b(history)h(and)e
+([Aliases],)g(page)f(88\).)150 964 y Ft(history-and-alias-expand)o
+(-lin)o(e)24 b(\(\))630 1074 y Fu(P)m(erform)30 b(history)h(and)e
(alias)j(expansion)e(on)g(the)h(curren)m(t)f(line.)150
-1242 y Fs(insert-last-argument)25 b(\(M-.)k(or)h(M-_\))630
-1352 y Ft(A)g(synon)m(ym)g(for)g Fs(yank-last-arg)p Ft(.)150
-1520 y Fs(operate-and-get-next)25 b(\(C-o\))630 1630
-y Ft(Accept)42 b(the)e(curren)m(t)h(line)f(for)h(execution)g(and)f
+1242 y Ft(insert-last-argument)25 b(\(M-.)k(or)h(M-_\))630
+1352 y Fu(A)g(synon)m(ym)g(for)g Ft(yank-last-arg)p Fu(.)150
+1520 y Ft(operate-and-get-next)25 b(\(C-o\))630 1630
+y Fu(Accept)42 b(the)e(curren)m(t)h(line)f(for)h(execution)g(and)f
(fetc)m(h)i(the)e(next)h(line)g(relativ)m(e)i(to)e(the)630
1739 y(curren)m(t)30 b(line)h(from)f(the)g(history)h(for)f(editing.)41
b(An)m(y)31 b(argumen)m(t)f(is)h(ignored.)150 1908 y
-Fs(edit-and-execute-command)24 b(\(C-xC-e\))630 2017
-y Ft(In)m(v)m(ok)m(e)34 b(an)f(editor)g(on)g(the)g(curren)m(t)f
+Ft(edit-and-execute-command)24 b(\(C-xC-e\))630 2017
+y Fu(In)m(v)m(ok)m(e)34 b(an)f(editor)g(on)g(the)g(curren)m(t)f
(command)h(line,)h(and)e(execute)i(the)f(result)g(as)g(shell)630
2127 y(commands.)81 b(Bash)44 b(attempts)h(to)g(in)m(v)m(ok)m(e)h
-Fs($VISUAL)p Ft(,)f Fs($EDITOR)p Ft(,)h(and)d Fs(emacs)g
-Ft(as)h(the)630 2236 y(editor,)31 b(in)f(that)h(order.)150
-2482 y Fr(8.5)68 b(Readline)47 b(vi)e(Mo)t(de)150 2642
-y Ft(While)32 b(the)g(Readline)g(library)f(do)s(es)g(not)h(ha)m(v)m(e)h
-(a)f(full)f(set)h(of)g Fs(vi)f Ft(editing)h(functions,)f(it)h(do)s(es)g
+Ft($VISUAL)p Fu(,)f Ft($EDITOR)p Fu(,)h(and)d Ft(emacs)g
+Fu(as)h(the)630 2236 y(editor,)31 b(in)f(that)h(order.)150
+2482 y Fs(8.5)68 b(Readline)47 b(vi)e(Mo)t(de)150 2642
+y Fu(While)32 b(the)g(Readline)g(library)f(do)s(es)g(not)h(ha)m(v)m(e)h
+(a)f(full)f(set)h(of)g Ft(vi)f Fu(editing)h(functions,)f(it)h(do)s(es)g
(con)m(tain)150 2751 y(enough)i(to)h(allo)m(w)g(simple)f(editing)h(of)f
-(the)g(line.)52 b(The)34 b(Readline)g Fs(vi)g Ft(mo)s(de)f(b)s(eha)m(v)
-m(es)i(as)f(sp)s(eci\014ed)f(in)150 2861 y(the)e Fl(posix)e
-Ft(standard.)275 3004 y(In)35 b(order)g(to)i(switc)m(h)f(in)m(teractiv)
-m(ely)j(b)s(et)m(w)m(een)d Fs(emacs)f Ft(and)g Fs(vi)g
-Ft(editing)h(mo)s(des,)h(use)f(the)g(`)p Fs(set)30 b(-o)150
-3114 y(emacs)p Ft(')43 b(and)h(`)p Fs(set)30 b(-o)f(vi)p
-Ft(')44 b(commands)g(\(see)i(Section)f(4.3.1)h([The)e(Set)h(Builtin],)j
-(page)e(59\).)83 b(The)150 3223 y(Readline)31 b(default)g(is)f
-Fs(emacs)f Ft(mo)s(de.)275 3367 y(When)g(y)m(ou)i(en)m(ter)f(a)h(line)f
-(in)g Fs(vi)f Ft(mo)s(de,)h(y)m(ou)h(are)f(already)h(placed)f(in)g
+(the)g(line.)52 b(The)34 b(Readline)g Ft(vi)g Fu(mo)s(de)f(b)s(eha)m(v)
+m(es)i(as)f(sp)s(eci\014ed)f(in)150 2861 y(the)e Fm(posix)e
+Fu(standard.)275 3004 y(In)35 b(order)g(to)i(switc)m(h)f(in)m(teractiv)
+m(ely)j(b)s(et)m(w)m(een)d Ft(emacs)f Fu(and)g Ft(vi)g
+Fu(editing)h(mo)s(des,)h(use)f(the)g(`)p Ft(set)30 b(-o)150
+3114 y(emacs)p Fu(')43 b(and)h(`)p Ft(set)30 b(-o)f(vi)p
+Fu(')44 b(commands)g(\(see)i(Section)f(4.3.1)h([The)e(Set)h(Builtin],)j
+(page)e(58\).)83 b(The)150 3223 y(Readline)31 b(default)g(is)f
+Ft(emacs)f Fu(mo)s(de.)275 3367 y(When)g(y)m(ou)i(en)m(ter)f(a)h(line)f
+(in)g Ft(vi)f Fu(mo)s(de,)h(y)m(ou)h(are)f(already)h(placed)f(in)g
(`insertion')g(mo)s(de,)g(as)h(if)f(y)m(ou)150 3476 y(had)f(t)m(yp)s
-(ed)g(an)g(`)p Fs(i)p Ft('.)41 b(Pressing)29 b Fs(ESC)f
-Ft(switc)m(hes)i(y)m(ou)g(in)m(to)h(`command')e(mo)s(de,)h(where)e(y)m
+(ed)g(an)g(`)p Ft(i)p Fu('.)41 b(Pressing)29 b Ft(ESC)f
+Fu(switc)m(hes)i(y)m(ou)g(in)m(to)h(`command')e(mo)s(de,)h(where)e(y)m
(ou)i(can)g(edit)g(the)150 3586 y(text)35 b(of)f(the)g(line)g(with)f
-(the)h(standard)f Fs(vi)g Ft(mo)m(v)m(emen)m(t)j(k)m(eys,)g(mo)m(v)m(e)
+(the)h(standard)f Ft(vi)g Fu(mo)m(v)m(emen)m(t)j(k)m(eys,)g(mo)m(v)m(e)
f(to)f(previous)g(history)f(lines)h(with)150 3695 y(`)p
-Fs(k)p Ft(')d(and)e(subsequen)m(t)h(lines)h(with)f(`)p
-Fs(j)p Ft(',)g(and)g(so)h(forth.)150 3941 y Fr(8.6)68
-b(Programmable)47 b(Completion)150 4101 y Ft(When)25
+Ft(k)p Fu(')d(and)e(subsequen)m(t)h(lines)h(with)f(`)p
+Ft(j)p Fu(',)g(and)g(so)h(forth.)150 3941 y Fs(8.6)68
+b(Programmable)47 b(Completion)150 4101 y Fu(When)25
b(w)m(ord)g(completion)i(is)f(attempted)g(for)g(an)f(argumen)m(t)h(to)g
(a)g(command)f(for)h(whic)m(h)f(a)h(completion)150 4210
-y(sp)s(eci\014cation)40 b(\(a)h Fq(compsp)s(ec)6 b Ft(\))39
-b(has)h(b)s(een)f(de\014ned)f(using)h(the)h Fs(complete)d
-Ft(builtin)j(\(see)g(Section)h(8.7)150 4320 y([Programmable)h
-(Completion)f(Builtins],)k(page)d(127\),)j(the)c(programmable)g
+y(sp)s(eci\014cation)40 b(\(a)h Fr(compsp)s(ec)6 b Fu(\))39
+b(has)h(b)s(een)f(de\014ned)f(using)h(the)h Ft(complete)d
+Fu(builtin)j(\(see)g(Section)h(8.7)150 4320 y([Programmable)h
+(Completion)f(Builtins],)k(page)d(126\),)j(the)c(programmable)g
(completion)i(facilities)150 4429 y(are)31 b(in)m(v)m(ok)m(ed.)275
4573 y(First,)23 b(the)e(command)g(name)g(is)h(iden)m(ti\014ed.)37
b(If)21 b(a)g(compsp)s(ec)g(has)g(b)s(een)f(de\014ned)g(for)h(that)h
(the)e(list)g(of)g(p)s(ossible)g(completions)h(for)e(the)h(w)m(ord.)81
b(If)44 b(the)150 4792 y(command)36 b(w)m(ord)g(is)g(the)g(empt)m(y)h
(string)f(\(completion)i(attempted)f(at)g(the)g(b)s(eginning)e(of)h(an)
-h(empt)m(y)150 4902 y(line\),)28 b(an)m(y)e(compsp)s(ec)f(de\014ned)g
-(with)g(the)h(`)p Fs(-E)p Ft(')f(option)i(to)f Fs(complete)e
-Ft(is)h(used.)39 b(If)25 b(the)h(command)f(w)m(ord)150
-5011 y(is)i(a)h(full)e(pathname,)i(a)g(compsp)s(ec)e(for)h(the)g(full)g
+h(empt)m(y)150 4902 y(line\),)30 b(an)m(y)g(compsp)s(ec)f(de\014ned)f
+(with)h(the)h Ft(-E)e Fu(option)i(to)g Ft(complete)d
+Fu(is)i(used.)40 b(If)29 b(the)g(command)g(w)m(ord)150
+5011 y(is)e(a)h(full)e(pathname,)i(a)g(compsp)s(ec)e(for)h(the)g(full)g
(pathname)g(is)g(searc)m(hed)h(for)f(\014rst.)39 b(If)26
b(no)h(compsp)s(ec)g(is)150 5121 y(found)22 b(for)g(the)h(full)g
(pathname,)h(an)f(attempt)h(is)f(made)g(to)g(\014nd)f(a)h(compsp)s(ec)f
(for)h(the)g(p)s(ortion)f(follo)m(wing)150 5230 y(the)34
b(\014nal)g(slash.)53 b(If)34 b(those)g(searc)m(hes)i(do)e(not)g
(result)h(in)f(a)g(compsp)s(ec,)h(an)m(y)g(compsp)s(ec)f(de\014ned)f
-(with)150 5340 y(the)e(`)p Fs(-D)p Ft(')f(option)h(to)g
-Fs(complete)d Ft(is)i(used)g(as)g(the)h(default.)p eop
-end
-%%Page: 126 132
-TeXDict begin 126 131 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(126)275 299 y(Once)34
+(with)150 5340 y(the)e Ft(-D)e Fu(option)i(to)g Ft(complete)d
+Fu(is)j(used)e(as)i(the)g(default.)p eop end
+%%Page: 125 131
+TeXDict begin 125 130 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(125)275 299 y(Once)34
b(a)g(compsp)s(ec)g(has)g(b)s(een)f(found,)h(it)h(is)f(used)f(to)i
(generate)h(the)e(list)h(of)f(matc)m(hing)h(w)m(ords.)51
b(If)150 408 y(a)37 b(compsp)s(ec)f(is)g(not)h(found,)f(the)h(default)f
(Bash)h(completion)g(describ)s(ed)e(ab)s(o)m(v)m(e)j(\(see)f(Section)g
(8.4.6)150 518 y([Commands)30 b(F)-8 b(or)31 b(Completion],)g(page)g
-(121\))h(is)f(p)s(erformed.)275 655 y(First,)g(the)g(actions)g(sp)s
+(120\))h(is)f(p)s(erformed.)275 655 y(First,)g(the)g(actions)g(sp)s
(eci\014ed)f(b)m(y)h(the)f(compsp)s(ec)h(are)g(used.)40
b(Only)30 b(matc)m(hes)i(whic)m(h)e(are)h(pre\014xed)150
-765 y(b)m(y)25 b(the)h(w)m(ord)f(b)s(eing)f(completed)j(are)e
-(returned.)38 b(When)25 b(the)h(`)p Fs(-f)p Ft(')f(or)g(`)p
-Fs(-d)p Ft(')g(option)h(is)f(used)g(for)g(\014lename)150
-874 y(or)30 b(directory)h(name)f(completion,)i(the)e(shell)h(v)-5
-b(ariable)31 b Fs(FIGNORE)d Ft(is)i(used)f(to)i(\014lter)g(the)f(matc)m
-(hes.)42 b(See)150 984 y(Section)31 b(5.2)h([Bash)e(V)-8
+765 y(b)m(y)h(the)f(w)m(ord)h(b)s(eing)f(completed)h(are)g(returned.)44
+b(When)31 b(the)h Ft(-f)f Fu(or)h Ft(-d)f Fu(option)h(is)f(used)g(for)h
+(\014lename)150 874 y(or)e(directory)h(name)f(completion,)i(the)e
+(shell)h(v)-5 b(ariable)31 b Ft(FIGNORE)d Fu(is)i(used)f(to)i(\014lter)
+g(the)f(matc)m(hes.)42 b(See)150 984 y(Section)31 b(5.2)h([Bash)e(V)-8
b(ariables],)33 b(page)e(69,)g(for)f(a)h(description)g(of)f
-Fs(FIGNORE)p Ft(.)275 1121 y(An)m(y)f(completions)h(sp)s(eci\014ed)f(b)
-m(y)g(a)h(\014lename)f(expansion)h(pattern)f(to)h(the)g(`)p
-Fs(-G)p Ft(')f(option)h(are)f(gener-)150 1230 y(ated)h(next.)40
-b(The)29 b(w)m(ords)g(generated)h(b)m(y)f(the)h(pattern)f(need)g(not)g
-(matc)m(h)i(the)e(w)m(ord)g(b)s(eing)g(completed.)150
-1340 y(The)42 b Fs(GLOBIGNORE)d Ft(shell)k(v)-5 b(ariable)43
-b(is)f(not)h(used)e(to)i(\014lter)f(the)h(matc)m(hes,)j(but)c(the)g
-Fs(FIGNORE)f Ft(shell)150 1450 y(v)-5 b(ariable)31 b(is)g(used.)275
-1587 y(Next,)k(the)g(string)e(sp)s(eci\014ed)h(as)g(the)g(argumen)m(t)g
-(to)h(the)f(`)p Fs(-W)p Ft(')g(option)g(is)g(considered.)52
-b(The)33 b(string)150 1696 y(is)g(\014rst)e(split)i(using)f(the)h(c)m
-(haracters)h(in)e(the)h Fs(IFS)e Ft(sp)s(ecial)j(v)-5
+Ft(FIGNORE)p Fu(.)275 1121 y(An)m(y)22 b(completions)h(sp)s(eci\014ed)f
+(b)m(y)g(a)h(\014lename)f(expansion)h(pattern)f(to)h(the)g
+Ft(-G)e Fu(option)i(are)g(generated)150 1230 y(next.)41
+b(The)29 b(w)m(ords)g(generated)h(b)m(y)g(the)g(pattern)f(need)h(not)f
+(matc)m(h)i(the)f(w)m(ord)f(b)s(eing)g(completed.)41
+b(The)150 1340 y Ft(GLOBIGNORE)29 b Fu(shell)i(v)-5 b(ariable)32
+b(is)g(not)g(used)e(to)i(\014lter)g(the)g(matc)m(hes,)h(but)d(the)i
+Ft(FIGNORE)e Fu(shell)h(v)-5 b(ariable)150 1450 y(is)30
+b(used.)275 1587 y(Next,)39 b(the)f(string)f(sp)s(eci\014ed)f(as)h(the)
+g(argumen)m(t)h(to)g(the)f Ft(-W)f Fu(option)i(is)f(considered.)60
+b(The)37 b(string)150 1696 y(is)c(\014rst)e(split)i(using)f(the)h(c)m
+(haracters)h(in)e(the)h Ft(IFS)e Fu(sp)s(ecial)j(v)-5
b(ariable)33 b(as)g(delimiters.)48 b(Shell)32 b(quoting)h(is)150
1806 y(honored.)56 b(Eac)m(h)37 b(w)m(ord)e(is)h(then)f(expanded)g
(using)h(brace)g(expansion,)h(tilde)f(expansion,)h(parameter)150
(completed,)j(and)d(the)i(matc)m(hing)g(w)m(ords)e(b)s(ecome)i(the)150
2354 y(p)s(ossible)g(completions.)275 2491 y(After)f(these)g(matc)m
(hes)i(ha)m(v)m(e)f(b)s(een)f(generated,)h(an)m(y)g(shell)f(function)g
-(or)g(command)g(sp)s(eci\014ed)f(with)150 2600 y(the)i(`)p
-Fs(-F)p Ft(')g(and)f(`)p Fs(-C)p Ft(')h(options)g(is)g(in)m(v)m(ok)m
-(ed.)41 b(When)30 b(the)g(command)g(or)f(function)h(is)g(in)m(v)m(ok)m
-(ed,)h(the)f Fs(COMP_)150 2710 y(LINE)p Ft(,)42 b Fs(COMP_POINT)p
-Ft(,)d Fs(COMP_KEY)p Ft(,)i(and)e Fs(COMP_TYPE)f Ft(v)-5
+(or)g(command)g(sp)s(eci\014ed)f(with)150 2600 y(the)36
+b Ft(-F)f Fu(and)g Ft(-C)g Fu(options)h(is)g(in)m(v)m(ok)m(ed.)59
+b(When)35 b(the)h(command)g(or)f(function)h(is)g(in)m(v)m(ok)m(ed,)i
+(the)e Ft(COMP_)150 2710 y(LINE)p Fu(,)42 b Ft(COMP_POINT)p
+Fu(,)d Ft(COMP_KEY)p Fu(,)i(and)e Ft(COMP_TYPE)f Fu(v)-5
b(ariables)41 b(are)f(assigned)g(v)-5 b(alues)41 b(as)f(describ)s(ed)
150 2819 y(ab)s(o)m(v)m(e)34 b(\(see)g(Section)g(5.2)g([Bash)f(V)-8
b(ariables],)36 b(page)d(69\).)50 b(If)33 b(a)g(shell)g(function)g(is)g
-(b)s(eing)f(in)m(v)m(ok)m(ed,)k(the)150 2929 y Fs(COMP_WORDS)j
-Ft(and)i Fs(COMP_CWORD)d Ft(v)-5 b(ariables)42 b(are)g(also)h(set.)74
+(b)s(eing)f(in)m(v)m(ok)m(ed,)k(the)150 2929 y Ft(COMP_WORDS)j
+Fu(and)i Ft(COMP_CWORD)d Fu(v)-5 b(ariables)42 b(are)g(also)h(set.)74
b(When)41 b(the)h(function)f(or)h(command)f(is)150 3039
y(in)m(v)m(ok)m(ed,)c(the)e(\014rst)f(argumen)m(t)h(\($1\))h(is)e(the)h
(name)g(of)f(the)h(command)f(whose)h(argumen)m(ts)f(are)h(b)s(eing)150
b(No)150 3367 y(\014ltering)33 b(of)h(the)f(generated)h(completions)g
(against)h(the)e(w)m(ord)g(b)s(eing)f(completed)i(is)g(p)s(erformed;)f
(the)150 3477 y(function)d(or)g(command)h(has)f(complete)i(freedom)e
-(in)g(generating)h(the)g(matc)m(hes.)275 3614 y(An)m(y)g(function)h(sp)
-s(eci\014ed)f(with)g(`)p Fs(-F)p Ft(')h(is)g(in)m(v)m(ok)m(ed)h
-(\014rst.)44 b(The)31 b(function)h(ma)m(y)g(use)g(an)m(y)g(of)g(the)g
-(shell)150 3724 y(facilities,)50 b(including)44 b(the)h
-Fs(compgen)d Ft(and)i Fs(compopt)e Ft(builtins)i(describ)s(ed)f(b)s
-(elo)m(w)h(\(see)i(Section)f(8.7)150 3833 y([Programmable)31
-b(Completion)h(Builtins],)f(page)h(127\),)g(to)g(generate)g(the)f(matc)
-m(hes.)42 b(It)31 b(m)m(ust)g(put)f(the)150 3943 y(p)s(ossible)g
-(completions)h(in)f(the)h Fs(COMPREPLY)d Ft(arra)m(y)j(v)-5
-b(ariable,)31 b(one)g(p)s(er)e(arra)m(y)i(elemen)m(t.)275
-4080 y(Next,)23 b(an)m(y)e(command)f(sp)s(eci\014ed)g(with)g(the)h(`)p
-Fs(-C)p Ft(')f(option)h(is)g(in)m(v)m(ok)m(ed)h(in)e(an)g(en)m
-(vironmen)m(t)h(equiv)-5 b(alen)m(t)150 4189 y(to)26
-b(command)e(substitution.)39 b(It)25 b(should)f(prin)m(t)h(a)g(list)h
-(of)f(completions,)i(one)e(p)s(er)f(line,)j(to)f(the)f(standard)150
-4299 y(output.)40 b(Bac)m(kslash)32 b(ma)m(y)f(b)s(e)f(used)g(to)h
-(escap)s(e)g(a)f(newline,)h(if)f(necessary)-8 b(.)275
-4436 y(After)42 b(all)g(of)g(the)g(p)s(ossible)g(completions)h(are)f
-(generated,)k(an)m(y)c(\014lter)g(sp)s(eci\014ed)f(with)h(the)g(`)p
-Fs(-X)p Ft(')150 4545 y(option)34 b(is)f(applied)g(to)h(the)f(list.)49
-b(The)33 b(\014lter)g(is)g(a)h(pattern)f(as)g(used)g(for)g(pathname)g
-(expansion;)h(a)g(`)p Fs(&)p Ft(')150 4655 y(in)39 b(the)g(pattern)g
-(is)g(replaced)g(with)g(the)g(text)h(of)f(the)g(w)m(ord)g(b)s(eing)f
-(completed.)68 b(A)39 b(literal)h(`)p Fs(&)p Ft(')f(ma)m(y)150
-4765 y(b)s(e)e(escap)s(ed)h(with)g(a)h(bac)m(kslash;)k(the)38
-b(bac)m(kslash)h(is)f(remo)m(v)m(ed)h(b)s(efore)e(attempting)j(a)e
-(matc)m(h.)65 b(An)m(y)150 4874 y(completion)35 b(that)g(matc)m(hes)g
-(the)f(pattern)g(will)g(b)s(e)g(remo)m(v)m(ed)h(from)e(the)h(list.)53
-b(A)34 b(leading)g(`)p Fs(!)p Ft(')h(negates)150 4984
-y(the)c(pattern;)f(in)g(this)h(case)g(an)m(y)g(completion)g(not)g(matc)
-m(hing)h(the)e(pattern)h(will)f(b)s(e)g(remo)m(v)m(ed.)275
-5121 y(Finally)-8 b(,)33 b(an)m(y)f(pre\014x)f(and)g(su\016x)g(sp)s
-(eci\014ed)g(with)h(the)g(`)p Fs(-P)p Ft(')f(and)g(`)p
-Fs(-S)p Ft(')h(options)g(are)g(added)f(to)i(eac)m(h)150
-5230 y(mem)m(b)s(er)e(of)g(the)h(completion)h(list,)f(and)f(the)h
-(result)f(is)h(returned)e(to)i(the)g(Readline)g(completion)h(co)s(de)
-150 5340 y(as)e(the)f(list)h(of)g(p)s(ossible)f(completions.)p
+(in)g(generating)h(the)g(matc)m(hes.)275 3614 y(An)m(y)j(function)h(sp)
+s(eci\014ed)f(with)g Ft(-F)g Fu(is)h(in)m(v)m(ok)m(ed)h(\014rst.)53
+b(The)35 b(function)f(ma)m(y)h(use)g(an)m(y)g(of)g(the)g(shell)150
+3724 y(facilities,)50 b(including)44 b(the)h Ft(compgen)d
+Fu(and)i Ft(compopt)e Fu(builtins)i(describ)s(ed)f(b)s(elo)m(w)h(\(see)
+i(Section)f(8.7)150 3833 y([Programmable)31 b(Completion)h(Builtins],)f
+(page)h(126\),)g(to)g(generate)g(the)f(matc)m(hes.)42
+b(It)31 b(m)m(ust)g(put)f(the)150 3943 y(p)s(ossible)g(completions)h
+(in)f(the)h Ft(COMPREPLY)d Fu(arra)m(y)j(v)-5 b(ariable,)31
+b(one)g(p)s(er)e(arra)m(y)i(elemen)m(t.)275 4080 y(Next,)26
+b(an)m(y)f(command)f(sp)s(eci\014ed)g(with)g(the)h Ft(-C)f
+Fu(option)h(is)f(in)m(v)m(ok)m(ed)i(in)e(an)g(en)m(vironmen)m(t)h
+(equiv)-5 b(alen)m(t)150 4189 y(to)26 b(command)e(substitution.)39
+b(It)25 b(should)f(prin)m(t)h(a)g(list)h(of)f(completions,)i(one)e(p)s
+(er)f(line,)j(to)f(the)f(standard)150 4299 y(output.)40
+b(Bac)m(kslash)32 b(ma)m(y)f(b)s(e)f(used)g(to)h(escap)s(e)g(a)f
+(newline,)h(if)f(necessary)-8 b(.)275 4436 y(After)24
+b(all)i(of)f(the)f(p)s(ossible)g(completions)i(are)f(generated,)i(an)m
+(y)e(\014lter)g(sp)s(eci\014ed)e(with)i(the)g Ft(-X)e
+Fu(option)150 4545 y(is)34 b(applied)g(to)g(the)h(list.)52
+b(The)33 b(\014lter)h(is)g(a)h(pattern)f(as)g(used)f(for)h(pathname)g
+(expansion;)i(a)e(`)p Ft(&)p Fu(')g(in)g(the)150 4655
+y(pattern)28 b(is)f(replaced)h(with)g(the)f(text)i(of)f(the)f(w)m(ord)h
+(b)s(eing)f(completed.)40 b(A)28 b(literal)h(`)p Ft(&)p
+Fu(')f(ma)m(y)g(b)s(e)f(escap)s(ed)150 4765 y(with)38
+b(a)h(bac)m(kslash;)k(the)38 b(bac)m(kslash)h(is)g(remo)m(v)m(ed)g(b)s
+(efore)f(attempting)h(a)g(matc)m(h.)65 b(An)m(y)39 b(completion)150
+4874 y(that)32 b(matc)m(hes)g(the)g(pattern)g(will)f(b)s(e)g(remo)m(v)m
+(ed)h(from)f(the)h(list.)44 b(A)32 b(leading)g(`)p Ft(!)p
+Fu(')f(negates)i(the)f(pattern;)150 4984 y(in)e(this)g(case)i(an)m(y)e
+(completion)i(not)f(matc)m(hing)g(the)g(pattern)f(will)h(b)s(e)f(remo)m
+(v)m(ed.)275 5121 y(Finally)-8 b(,)42 b(an)m(y)c(pre\014x)g(and)f
+(su\016x)h(sp)s(eci\014ed)f(with)i(the)f Ft(-P)g Fu(and)g
+Ft(-S)f Fu(options)i(are)g(added)f(to)h(eac)m(h)150 5230
+y(mem)m(b)s(er)31 b(of)g(the)h(completion)h(list,)f(and)f(the)h(result)
+f(is)h(returned)e(to)i(the)g(Readline)g(completion)h(co)s(de)150
+5340 y(as)e(the)f(list)h(of)g(p)s(ossible)f(completions.)p
eop end
-%%Page: 127 133
-TeXDict begin 127 132 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(127)275 299 y(If)22
-b(the)i(previously-applied)f(actions)i(do)e(not)h(generate)h(an)m(y)f
-(matc)m(hes,)i(and)d(the)g(`)p Fs(-o)30 b(dirnames)p
-Ft(')22 b(op-)150 408 y(tion)29 b(w)m(as)f(supplied)f(to)i
-Fs(complete)d Ft(when)h(the)h(compsp)s(ec)g(w)m(as)g(de\014ned,)g
-(directory)g(name)h(completion)150 518 y(is)h(attempted.)275
-654 y(If)g(the)i(`)p Fs(-o)e(plusdirs)p Ft(')f(option)j(w)m(as)f
-(supplied)f(to)i Fs(complete)e Ft(when)g(the)h(compsp)s(ec)g(w)m(as)h
-(de\014ned,)150 764 y(directory)k(name)f(completion)i(is)e(attempted)h
-(and)f(an)m(y)h(matc)m(hes)g(are)g(added)f(to)h(the)f(results)g(of)h
-(the)150 873 y(other)31 b(actions.)275 1010 y(By)g(default,)i(if)e(a)h
-(compsp)s(ec)f(is)h(found,)f(whatev)m(er)h(it)g(generates)h(is)e
-(returned)g(to)h(the)g(completion)150 1119 y(co)s(de)21
-b(as)g(the)g(full)g(set)g(of)g(p)s(ossible)f(completions.)39
-b(The)20 b(default)h(Bash)g(completions)h(are)g(not)f(attempted,)150
-1229 y(and)k(the)h(Readline)g(default)g(of)g(\014lename)g(completion)h
-(is)f(disabled.)38 b(If)26 b(the)g(`)p Fs(-o)k(bashdefault)p
-Ft(')22 b(option)150 1338 y(w)m(as)i(supplied)e(to)j
-Fs(complete)c Ft(when)i(the)g(compsp)s(ec)h(w)m(as)g(de\014ned,)g(the)f
-(default)h(Bash)g(completions)h(are)150 1448 y(attempted)f(if)f(the)g
-(compsp)s(ec)g(generates)i(no)e(matc)m(hes.)39 b(If)23
-b(the)g(`)p Fs(-o)30 b(default)p Ft(')21 b(option)j(w)m(as)f(supplied)f
-(to)150 1557 y Fs(complete)j Ft(when)h(the)h(compsp)s(ec)f(w)m(as)i
+%%Page: 126 132
+TeXDict begin 126 131 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(126)275 299 y(If)27
+b(the)h(previously-applied)f(actions)i(do)f(not)g(generate)h(an)m(y)f
+(matc)m(hes,)i(and)d(the)h Ft(-o)h(dirnames)d Fu(op-)150
+408 y(tion)j(w)m(as)f(supplied)f(to)i Ft(complete)d Fu(when)h(the)h
+(compsp)s(ec)g(w)m(as)g(de\014ned,)g(directory)g(name)h(completion)150
+518 y(is)h(attempted.)275 654 y(If)35 b(the)g Ft(-o)30
+b(plusdirs)j Fu(option)j(w)m(as)g(supplied)e(to)i Ft(complete)e
+Fu(when)g(the)i(compsp)s(ec)f(w)m(as)h(de\014ned,)150
+764 y(directory)g(name)f(completion)i(is)e(attempted)h(and)f(an)m(y)h
+(matc)m(hes)g(are)g(added)f(to)h(the)f(results)g(of)h(the)150
+873 y(other)31 b(actions.)275 1010 y(By)g(default,)i(if)e(a)h(compsp)s
+(ec)f(is)h(found,)f(whatev)m(er)h(it)g(generates)h(is)e(returned)g(to)h
+(the)g(completion)150 1119 y(co)s(de)21 b(as)g(the)g(full)g(set)g(of)g
+(p)s(ossible)f(completions.)39 b(The)20 b(default)h(Bash)g(completions)
+h(are)g(not)f(attempted,)150 1229 y(and)30 b(the)g(Readline)h(default)f
+(of)g(\014lename)h(completion)g(is)f(disabled.)41 b(If)29
+b(the)i Ft(-o)e(bashdefault)e Fu(option)150 1338 y(w)m(as)d(supplied)e
+(to)j Ft(complete)c Fu(when)i(the)g(compsp)s(ec)h(w)m(as)g(de\014ned,)g
+(the)f(default)h(Bash)g(completions)h(are)150 1448 y(attempted)j(if)f
+(the)h(compsp)s(ec)f(generates)h(no)f(matc)m(hes.)41
+b(If)27 b(the)g Ft(-o)j(default)25 b Fu(option)j(w)m(as)f(supplied)f
+(to)150 1557 y Ft(complete)f Fu(when)h(the)h(compsp)s(ec)f(w)m(as)i
(de\014ned,)e(Readline's)i(default)f(completion)h(will)f(b)s(e)f(p)s
(erformed)150 1667 y(if)k(the)h(compsp)s(ec)f(\(and,)g(if)h(attempted,)
g(the)g(default)f(Bash)h(completions\))h(generate)g(no)e(matc)m(hes.)
1913 y(completion)31 b(functions)e(force)i(Readline)f(to)h(app)s(end)d
(a)i(slash)g(to)g(completed)h(names)e(whic)m(h)h(are)g(sym-)150
2022 y(b)s(olic)40 b(links)g(to)h(directories,)j(sub)5
-b(ject)40 b(to)h(the)f(v)-5 b(alue)41 b(of)f(the)g Fq(mark-directories)
-45 b Ft(Readline)c(v)-5 b(ariable,)150 2132 y(regardless)31
-b(of)f(the)h(setting)g(of)g(the)f Fq(mark-symlink)m(ed-directories)36
-b Ft(Readline)31 b(v)-5 b(ariable.)275 2268 y(There)25
+b(ject)40 b(to)h(the)f(v)-5 b(alue)41 b(of)f(the)g Fr(mark-directories)
+45 b Fu(Readline)c(v)-5 b(ariable,)150 2132 y(regardless)31
+b(of)f(the)h(setting)g(of)g(the)f Fr(mark-symlink)m(ed-directories)36
+b Fu(Readline)31 b(v)-5 b(ariable.)275 2268 y(There)25
b(is)i(some)g(supp)s(ort)e(for)h(dynamically)h(mo)s(difying)f
(completions.)40 b(This)26 b(is)g(most)h(useful)f(when)150
-2378 y(used)37 b(in)h(com)m(bination)h(with)e(a)i(default)f(completion)
-h(sp)s(eci\014ed)e(with)h(`)p Fs(-D)p Ft('.)63 b(It's)38
-b(p)s(ossible)f(for)h(shell)150 2487 y(functions)28 b(executed)h(as)f
-(completion)i(handlers)d(to)i(indicate)g(that)g(completion)g(should)e
-(b)s(e)h(retried)g(b)m(y)150 2597 y(returning)j(an)i(exit)g(status)f
-(of)h(124.)48 b(If)31 b(a)i(shell)f(function)g(returns)f(124,)k(and)c
-(c)m(hanges)j(the)e(compsp)s(ec)150 2707 y(asso)s(ciated)43
-b(with)e(the)g(command)g(on)g(whic)m(h)g(completion)i(is)e(b)s(eing)g
-(attempted)h(\(supplied)e(as)i(the)150 2816 y(\014rst)29
-b(argumen)m(t)h(when)e(the)i(function)f(is)g(executed\),)j
-(programmable)d(completion)i(restarts)f(from)f(the)150
-2926 y(b)s(eginning,)e(with)g(an)h(attempt)g(to)g(\014nd)e(a)i(new)e
-(compsp)s(ec)i(for)f(that)h(command.)39 b(This)27 b(allo)m(ws)h(a)g
+2378 y(used)40 b(in)h(com)m(bination)i(with)e(a)g(default)h(completion)
+g(sp)s(eci\014ed)f(with)g Ft(-D)p Fu(.)72 b(It's)42 b(p)s(ossible)f
+(for)g(shell)150 2487 y(functions)28 b(executed)h(as)f(completion)i
+(handlers)d(to)i(indicate)g(that)g(completion)g(should)e(b)s(e)h
+(retried)g(b)m(y)150 2597 y(returning)j(an)i(exit)g(status)f(of)h(124.)
+48 b(If)31 b(a)i(shell)f(function)g(returns)f(124,)k(and)c(c)m(hanges)j
+(the)e(compsp)s(ec)150 2707 y(asso)s(ciated)43 b(with)e(the)g(command)g
+(on)g(whic)m(h)g(completion)i(is)e(b)s(eing)g(attempted)h(\(supplied)e
+(as)i(the)150 2816 y(\014rst)29 b(argumen)m(t)h(when)e(the)i(function)f
+(is)g(executed\),)j(programmable)d(completion)i(restarts)f(from)f(the)
+150 2926 y(b)s(eginning,)e(with)g(an)h(attempt)g(to)g(\014nd)e(a)i(new)
+e(compsp)s(ec)i(for)f(that)h(command.)39 b(This)27 b(allo)m(ws)h(a)g
(set)g(of)150 3035 y(completions)33 b(to)f(b)s(e)g(built)f(dynamically)
i(as)f(completion)h(is)f(attempted,)h(rather)f(than)f(b)s(eing)g
(loaded)150 3145 y(all)g(at)g(once.)275 3281 y(F)-8 b(or)38
3391 y(sp)s(onding)g(to)j(the)f(name)f(of)h(the)g(command,)i(the)e
(follo)m(wing)h(default)f(completion)h(function)e(w)m(ould)150
3500 y(load)31 b(completions)g(dynamically:)390 3636
-y Fs(_completion_loader\(\))390 3746 y({)581 3856 y(.)47
+y Ft(_completion_loader\(\))390 3746 y({)581 3856 y(.)47
b("/etc/bash_completion.d/$1)o(.sh)o(")42 b(>/dev/null)j(2>&1)i(&&)g
(return)f(124)390 3965 y(})390 4075 y(complete)g(-D)h(-F)g
(_completion_loader)c(-o)k(bashdefault)e(-o)i(default)150
-4310 y Fr(8.7)68 b(Programmable)47 b(Completion)f(Builtins)150
-4469 y Ft(Three)21 b(builtin)g(commands)f(are)i(a)m(v)-5
+4310 y Fs(8.7)68 b(Programmable)47 b(Completion)f(Builtins)150
+4469 y Fu(Three)21 b(builtin)g(commands)f(are)i(a)m(v)-5
b(ailable)24 b(to)e(manipulate)f(the)h(programmable)f(completion)h
(facilities:)150 4579 y(one)34 b(to)g(sp)s(ecify)f(ho)m(w)h(the)f
(argumen)m(ts)h(to)g(a)g(particular)g(command)f(are)h(to)g(b)s(e)f
(completed,)j(and)d(t)m(w)m(o)150 4688 y(to)e(mo)s(dify)f(the)g
(completion)i(as)e(it)h(is)g(happ)s(ening.)150 4850 y
-Fs(compgen)870 4985 y(compgen)46 b([)p Fi(option)11 b
-Fs(])45 b([)p Fi(word)11 b Fs(])630 5121 y Ft(Generate)27
-b(p)s(ossible)e(completion)i(matc)m(hes)g(for)e Fq(w)m(ord)k
-Ft(according)e(to)f(the)g Fq(option)p Ft(s,)h(whic)m(h)630
-5230 y(ma)m(y)h(b)s(e)f(an)m(y)h(option)g(accepted)h(b)m(y)e(the)h
-Fs(complete)d Ft(builtin)j(with)f(the)h(exception)g(of)g(`)p
-Fs(-p)p Ft(')630 5340 y(and)k(`)p Fs(-r)p Ft(',)i(and)e(write)h(the)g
-(matc)m(hes)h(to)g(the)f(standard)f(output.)48 b(When)33
-b(using)f(the)h(`)p Fs(-F)p Ft(')p eop end
-%%Page: 128 134
-TeXDict begin 128 133 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(128)630 299 y(or)28
-b(`)p Fs(-C)p Ft(')g(options,)h(the)f(v)-5 b(arious)29
-b(shell)f(v)-5 b(ariables)29 b(set)f(b)m(y)g(the)g(programmable)h
-(completion)630 408 y(facilities,)k(while)d(a)m(v)-5
-b(ailable,)33 b(will)e(not)g(ha)m(v)m(e)g(useful)f(v)-5
-b(alues.)630 552 y(The)34 b(matc)m(hes)h(will)g(b)s(e)f(generated)h(in)
-f(the)h(same)g(w)m(a)m(y)g(as)g(if)f(the)h(programmable)f(com-)630
-662 y(pletion)d(co)s(de)g(had)f(generated)i(them)e(directly)i(from)e(a)
-h(completion)h(sp)s(eci\014cation)f(with)630 771 y(the)e(same)h
-(\015ags.)40 b(If)29 b Fq(w)m(ord)j Ft(is)d(sp)s(eci\014ed,)g(only)g
-(those)h(completions)g(matc)m(hing)g Fq(w)m(ord)j Ft(will)630
-881 y(b)s(e)d(displa)m(y)m(ed.)630 1025 y(The)24 b(return)g(v)-5
-b(alue)25 b(is)g(true)f(unless)g(an)h(in)m(v)-5 b(alid)25
-b(option)g(is)g(supplied,)f(or)h(no)g(matc)m(hes)g(w)m(ere)630
-1134 y(generated.)150 1313 y Fs(complete)870 1456 y(complete)46
-b([-abcdefgjksuv])d([-o)k Fi(comp-option)11 b Fs(])44
-b([-DE])i([-A)h Fi(action)11 b Fs(])46 b([-)870 1566
-y(G)h Fi(globpat)11 b Fs(])46 b([-W)g Fi(wordlist)11
-b Fs(])870 1676 y([-F)47 b Fi(function)11 b Fs(])45 b([-C)i
-Fi(command)11 b Fs(])45 b([-X)i Fi(filterpat)11 b Fs(])870
-1785 y([-P)47 b Fi(prefix)11 b Fs(])45 b([-S)i Fi(suffix)11
-b Fs(])45 b Fi(name)58 b Fs([)p Fi(name)f Fs(...)o(])870
-1895 y(complete)46 b(-pr)g([-DE])h([)p Fi(name)57 b Fs(...)o(])630
-2039 y Ft(Sp)s(ecify)33 b(ho)m(w)h(argumen)m(ts)h(to)f(eac)m(h)i
-Fq(name)j Ft(should)33 b(b)s(e)g(completed.)53 b(If)33
-b(the)i(`)p Fs(-p)p Ft(')e(option)630 2148 y(is)d(supplied,)e(or)i(if)g
-(no)f(options)h(are)g(supplied,)f(existing)h(completion)h(sp)s
-(eci\014cations)g(are)630 2258 y(prin)m(ted)43 b(in)h(a)g(w)m(a)m(y)h
-(that)f(allo)m(ws)h(them)f(to)g(b)s(e)g(reused)f(as)h(input.)80
-b(The)43 b(`)p Fs(-r)p Ft(')g(option)630 2367 y(remo)m(v)m(es)29
-b(a)e(completion)i(sp)s(eci\014cation)e(for)g(eac)m(h)i
-Fq(name)5 b Ft(,)28 b(or,)g(if)f(no)g Fq(name)5 b Ft(s)27
-b(are)h(supplied,)630 2477 y(all)46 b(completion)h(sp)s
-(eci\014cations.)87 b(The)45 b(`)p Fs(-D)p Ft(')h(option)g(indicates)g
-(that)g(the)g(remaining)630 2587 y(options)35 b(and)f(actions)h(should)
-f(apply)g(to)h(the)g(\\default")g(command)f(completion;)k(that)630
-2696 y(is,)25 b(completion)g(attempted)g(on)e(a)h(command)f(for)g(whic)
-m(h)h(no)f(completion)i(has)e(previously)630 2806 y(b)s(een)28
-b(de\014ned.)39 b(The)27 b(`)p Fs(-E)p Ft(')i(option)g(indicates)g
-(that)g(the)g(remaining)f(options)h(and)f(actions)630
-2915 y(should)i(apply)i(to)g(\\empt)m(y")g(command)g(completion;)h
-(that)f(is,)g(completion)h(attempted)630 3025 y(on)d(a)h(blank)f(line.)
-630 3169 y(The)f(pro)s(cess)g(of)h(applying)g(these)g(completion)g(sp)s
-(eci\014cations)h(when)d(w)m(ord)i(completion)630 3278
+Ft(compgen)870 4985 y(compgen)46 b([)p Fj(option)p Ft(])f([)p
+Fj(word)p Ft(])630 5121 y Fu(Generate)27 b(p)s(ossible)e(completion)i
+(matc)m(hes)g(for)e Fr(w)m(ord)k Fu(according)e(to)f(the)g
+Fr(option)p Fu(s,)h(whic)m(h)630 5230 y(ma)m(y)32 b(b)s(e)f(an)m(y)h
+(option)g(accepted)g(b)m(y)g(the)f Ft(complete)f Fu(builtin)h(with)g
+(the)g(exception)i(of)f Ft(-p)630 5340 y Fu(and)39 b
+Ft(-r)p Fu(,)i(and)e(write)h(the)g(matc)m(hes)g(to)g(the)g(standard)f
+(output.)68 b(When)39 b(using)g(the)h Ft(-F)p eop end
+%%Page: 127 133
+TeXDict begin 127 132 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(127)630 299 y(or)33
+b Ft(-C)f Fu(options,)i(the)e(v)-5 b(arious)33 b(shell)g(v)-5
+b(ariables)33 b(set)g(b)m(y)g(the)g(programmable)g(completion)630
+408 y(facilities,)g(while)d(a)m(v)-5 b(ailable,)33 b(will)e(not)g(ha)m
+(v)m(e)g(useful)f(v)-5 b(alues.)630 542 y(The)34 b(matc)m(hes)h(will)g
+(b)s(e)f(generated)h(in)f(the)h(same)g(w)m(a)m(y)g(as)g(if)f(the)h
+(programmable)f(com-)630 652 y(pletion)d(co)s(de)g(had)f(generated)i
+(them)e(directly)i(from)e(a)h(completion)h(sp)s(eci\014cation)f(with)
+630 762 y(the)e(same)h(\015ags.)40 b(If)29 b Fr(w)m(ord)j
+Fu(is)d(sp)s(eci\014ed,)g(only)g(those)h(completions)g(matc)m(hing)g
+Fr(w)m(ord)j Fu(will)630 871 y(b)s(e)d(displa)m(y)m(ed.)630
+1005 y(The)24 b(return)g(v)-5 b(alue)25 b(is)g(true)f(unless)g(an)h(in)
+m(v)-5 b(alid)25 b(option)g(is)g(supplied,)f(or)h(no)g(matc)m(hes)g(w)m
+(ere)630 1115 y(generated.)150 1273 y Ft(complete)870
+1407 y(complete)46 b([-abcdefgjksuv])d([-o)k Fj(comp-option)p
+Ft(])e([-DE])h([-A)h Fj(action)p Ft(])f([-)870 1517 y(G)h
+Fj(globpat)p Ft(])f([-W)h Fj(wordlist)p Ft(])870 1626
+y([-F)g Fj(function)p Ft(])e([-C)i Fj(command)p Ft(])f([-X)h
+Fj(filterpat)p Ft(])870 1736 y([-P)g Fj(prefix)p Ft(])f([-S)h
+Fj(suffix)p Ft(])e Fj(name)i Ft([)p Fj(name)f Ft(...])870
+1845 y(complete)g(-pr)g([-DE])h([)p Fj(name)f Ft(...)o(])630
+1979 y Fu(Sp)s(ecify)37 b(ho)m(w)h(argumen)m(ts)f(to)i(eac)m(h)g
+Fr(name)j Fu(should)37 b(b)s(e)g(completed.)63 b(If)38
+b(the)f Ft(-p)g Fu(option)630 2089 y(is)30 b(supplied,)e(or)i(if)g(no)f
+(options)h(are)g(supplied,)f(existing)h(completion)h(sp)s
+(eci\014cations)g(are)630 2198 y(prin)m(ted)24 b(in)h(a)g(w)m(a)m(y)g
+(that)h(allo)m(ws)g(them)e(to)i(b)s(e)e(reused)f(as)i(input.)38
+b(The)24 b Ft(-r)g Fu(option)i(remo)m(v)m(es)630 2308
+y(a)i(completion)h(sp)s(eci\014cation)f(for)g(eac)m(h)h
+Fr(name)p Fu(,)f(or,)h(if)e(no)h Fr(name)5 b Fu(s)27
+b(are)h(supplied,)g(all)g(com-)630 2418 y(pletion)k(sp)s
+(eci\014cations.)44 b(The)30 b Ft(-D)h Fu(option)h(indicates)g(that)f
+(the)h(remaining)f(options)h(and)630 2527 y(actions)27
+b(should)e(apply)g(to)i(the)f(\\default")h(command)e(completion;)k
+(that)e(is,)g(completion)630 2637 y(attempted)g(on)f(a)h(command)f(for)
+g(whic)m(h)g(no)g(completion)i(has)d(previously)h(b)s(een)g(de\014ned.)
+630 2746 y(The)f Ft(-E)g Fu(option)h(indicates)h(that)f(the)g
+(remaining)g(options)g(and)f(actions)i(should)e(apply)g(to)630
+2856 y(\\empt)m(y")32 b(command)e(completion;)i(that)f(is,)f
+(completion)i(attempted)f(on)g(a)f(blank)g(line.)630
+2990 y(The)f(pro)s(cess)g(of)h(applying)g(these)g(completion)g(sp)s
+(eci\014cations)h(when)d(w)m(ord)i(completion)630 3099
y(is)35 b(attempted)h(is)f(describ)s(ed)f(ab)s(o)m(v)m(e)j(\(see)f
-(Section)g(8.6)g([Programmable)g(Completion],)630 3388
-y(page)31 b(125\).)42 b(The)30 b(`)p Fs(-D)p Ft(')h(option)f(tak)m(es)i
-(precedence)f(o)m(v)m(er)h(`)p Fs(-E)p Ft('.)630 3532
-y(Other)41 b(options,)46 b(if)41 b(sp)s(eci\014ed,)j(ha)m(v)m(e)f(the)f
-(follo)m(wing)i(meanings.)75 b(The)41 b(argumen)m(ts)h(to)630
-3641 y(the)e(`)p Fs(-G)p Ft(',)j(`)p Fs(-W)p Ft(',)g(and)d(`)p
-Fs(-X)p Ft(')g(options)g(\(and,)j(if)d(necessary)-8 b(,)44
-b(the)c(`)p Fs(-P)p Ft(')h(and)e(`)p Fs(-S)p Ft(')h(options\))630
-3751 y(should)30 b(b)s(e)h(quoted)g(to)h(protect)g(them)f(from)g
-(expansion)g(b)s(efore)g(the)g Fs(complete)e Ft(builtin)630
-3861 y(is)h(in)m(v)m(ok)m(ed.)630 4039 y Fs(-o)g Fi(comp-option)1110
-4148 y Ft(The)c Fq(comp-option)i Ft(con)m(trols)g(sev)m(eral)h(asp)s
-(ects)e(of)g(the)g(compsp)s(ec's)g(b)s(eha)m(v-)1110
-4258 y(ior)g(b)s(ey)m(ond)f(the)g(simple)h(generation)h(of)e
-(completions.)41 b Fq(comp-option)27 b Ft(ma)m(y)1110
-4367 y(b)s(e)j(one)g(of:)1110 4545 y Fs(bashdefault)1590
-4655 y Ft(P)m(erform)d(the)h(rest)f(of)h(the)g(default)f(Bash)h
-(completions)g(if)g(the)1590 4765 y(compsp)s(ec)i(generates)i(no)e
-(matc)m(hes.)1110 4943 y Fs(default)144 b Ft(Use)22 b(Readline's)g
-(default)g(\014lename)g(completion)g(if)g(the)g(comp-)1590
-5052 y(sp)s(ec)30 b(generates)i(no)e(matc)m(hes.)1110
-5230 y Fs(dirnames)96 b Ft(P)m(erform)46 b(directory)g(name)h
-(completion)g(if)f(the)g(compsp)s(ec)1590 5340 y(generates)32
-b(no)e(matc)m(hes.)p eop end
-%%Page: 129 135
-TeXDict begin 129 134 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(129)1110 299 y Fs(filenames)1590
-408 y Ft(T)-8 b(ell)40 b(Readline)f(that)h(the)f(compsp)s(ec)f
-(generates)j(\014lenames,)1590 518 y(so)29 b(it)h(can)f(p)s(erform)f
-(an)m(y)h(\014lename-sp)s(eci\014c)h(pro)s(cessing)e(\(lik)m(e)1590
-628 y(adding)d(a)h(slash)f(to)h(directory)g(names)f(quoting)h(sp)s
-(ecial)g(c)m(har-)1590 737 y(acters,)39 b(or)d(suppressing)f(trailing)i
-(spaces\).)59 b(This)35 b(option)i(is)1590 847 y(in)m(tended)30
-b(to)g(b)s(e)g(used)f(with)g(shell)i(functions)e(sp)s(eci\014ed)g(with)
-1590 956 y(`)p Fs(-F)p Ft('.)1110 1115 y Fs(noquote)144
-b Ft(T)-8 b(ell)28 b(Readline)g(not)g(to)g(quote)g(the)g(completed)g(w)
-m(ords)f(if)h(they)1590 1224 y(are)j(\014lenames)f(\(quoting)h
-(\014lenames)g(is)f(the)h(default\).)1110 1383 y Fs(nospace)144
-b Ft(T)-8 b(ell)40 b(Readline)g(not)g(to)g(app)s(end)d(a)j(space)g
-(\(the)f(default\))h(to)1590 1492 y(w)m(ords)30 b(completed)h(at)g(the)
-g(end)f(of)g(the)h(line.)1110 1650 y Fs(plusdirs)96 b
-Ft(After)30 b(an)m(y)h(matc)m(hes)g(de\014ned)d(b)m(y)i(the)g(compsp)s
-(ec)g(are)g(gener-)1590 1760 y(ated,)g(directory)f(name)g(completion)i
-(is)d(attempted)i(and)f(an)m(y)1590 1870 y(matc)m(hes)j(are)e(added)g
-(to)h(the)g(results)f(of)g(the)h(other)g(actions.)630
-2028 y Fs(-A)f Fi(action)1110 2138 y Ft(The)25 b Fq(action)h
-Ft(ma)m(y)g(b)s(e)e(one)h(of)h(the)f(follo)m(wing)i(to)e(generate)i(a)e
-(list)h(of)f(p)s(ossible)1110 2247 y(completions:)1110
-2405 y Fs(alias)240 b Ft(Alias)31 b(names.)41 b(Ma)m(y)31
-b(also)h(b)s(e)e(sp)s(eci\014ed)f(as)i(`)p Fs(-a)p Ft('.)1110
-2564 y Fs(arrayvar)96 b Ft(Arra)m(y)31 b(v)-5 b(ariable)31
-b(names.)1110 2722 y Fs(binding)144 b Ft(Readline)30
-b(k)m(ey)f(binding)f(names)h(\(see)h(Section)f(8.4)h([Bindable)1590
-2832 y(Readline)h(Commands],)f(page)h(116\).)1110 2990
-y Fs(builtin)144 b Ft(Names)21 b(of)g(shell)f(builtin)h(commands.)37
-b(Ma)m(y)21 b(also)h(b)s(e)e(sp)s(eci\014ed)1590 3099
-y(as)31 b(`)p Fs(-b)p Ft('.)1110 3258 y Fs(command)144
-b Ft(Command)29 b(names.)41 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s
-(eci\014ed)f(as)i(`)p Fs(-c)p Ft('.)1110 3416 y Fs(directory)1590
-3526 y Ft(Directory)h(names.)40 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s
-(eci\014ed)g(as)g(`)p Fs(-d)p Ft('.)1110 3684 y Fs(disabled)96
-b Ft(Names)31 b(of)g(disabled)f(shell)g(builtins.)1110
-3842 y Fs(enabled)144 b Ft(Names)31 b(of)g(enabled)f(shell)g(builtins.)
-1110 4001 y Fs(export)192 b Ft(Names)34 b(of)f(exp)s(orted)f(shell)h(v)
--5 b(ariables.)49 b(Ma)m(y)35 b(also)e(b)s(e)g(sp)s(eci-)1590
-4110 y(\014ed)d(as)g(`)p Fs(-e)p Ft('.)1110 4268 y Fs(file)288
-b Ft(File)32 b(names.)40 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)f
-(as)i(`)p Fs(-f)p Ft('.)1110 4427 y Fs(function)96 b
-Ft(Names)31 b(of)g(shell)f(functions.)1110 4585 y Fs(group)240
-b Ft(Group)30 b(names.)40 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)g
-(as)g(`)p Fs(-g)p Ft('.)1110 4743 y Fs(helptopic)1590
-4853 y Ft(Help)37 b(topics)g(as)g(accepted)h(b)m(y)e(the)h
-Fs(help)f Ft(builtin)g(\(see)h(Sec-)1590 4963 y(tion)31
-b(4.2)g([Bash)g(Builtins],)g(page)g(48\).)1110 5121 y
-Fs(hostname)96 b Ft(Hostnames,)89 b(as)76 b(tak)m(en)h(from)f(the)g
-(\014le)h(sp)s(eci\014ed)e(b)m(y)1590 5230 y(the)55 b
-Fs(HOSTFILE)e Ft(shell)j(v)-5 b(ariable)56 b(\(see)g(Section)g(5.2)h
-([Bash)1590 5340 y(V)-8 b(ariables],)32 b(page)f(69\).)p
+(Section)g(8.6)g([Programmable)g(Completion],)630 3209
+y(page)31 b(124\).)42 b(The)30 b Ft(-D)g Fu(option)h(tak)m(es)h
+(precedence)f(o)m(v)m(er)g Ft(-E)p Fu(.)630 3343 y(Other)d(options,)i
+(if)f(sp)s(eci\014ed,)g(ha)m(v)m(e)h(the)f(follo)m(wing)i(meanings.)40
+b(The)29 b(argumen)m(ts)g(to)h(the)630 3453 y Ft(-G)p
+Fu(,)41 b Ft(-W)p Fu(,)h(and)c Ft(-X)h Fu(options)h(\(and,)h(if)f
+(necessary)-8 b(,)42 b(the)e Ft(-P)f Fu(and)f Ft(-S)h
+Fu(options\))h(should)f(b)s(e)630 3562 y(quoted)28 b(to)h(protect)g
+(them)f(from)f(expansion)h(b)s(efore)g(the)g Ft(complete)e
+Fu(builtin)h(is)h(in)m(v)m(ok)m(ed.)630 3720 y Ft(-o)i
+Fj(comp-option)1110 3830 y Fu(The)c Fr(comp-option)i
+Fu(con)m(trols)g(sev)m(eral)h(asp)s(ects)e(of)g(the)g(compsp)s(ec's)g
+(b)s(eha)m(v-)1110 3940 y(ior)g(b)s(ey)m(ond)f(the)g(simple)h
+(generation)h(of)e(completions.)41 b Fr(comp-option)27
+b Fu(ma)m(y)1110 4049 y(b)s(e)j(one)g(of:)1110 4208 y
+Ft(bashdefault)1590 4317 y Fu(P)m(erform)d(the)h(rest)f(of)h(the)g
+(default)f(Bash)h(completions)g(if)g(the)1590 4427 y(compsp)s(ec)i
+(generates)i(no)e(matc)m(hes.)1110 4585 y Ft(default)144
+b Fu(Use)22 b(Readline's)g(default)g(\014lename)g(completion)g(if)g
+(the)g(comp-)1590 4695 y(sp)s(ec)30 b(generates)i(no)e(matc)m(hes.)1110
+4853 y Ft(dirnames)96 b Fu(P)m(erform)46 b(directory)g(name)h
+(completion)g(if)f(the)g(compsp)s(ec)1590 4963 y(generates)32
+b(no)e(matc)m(hes.)1110 5121 y Ft(filenames)1590 5230
+y Fu(T)-8 b(ell)40 b(Readline)f(that)h(the)f(compsp)s(ec)f(generates)j
+(\014lenames,)1590 5340 y(so)29 b(it)h(can)f(p)s(erform)f(an)m(y)h
+(\014lename-sp)s(eci\014c)h(pro)s(cessing)e(\(lik)m(e)p
eop end
-%%Page: 130 136
-TeXDict begin 130 135 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(130)1110 299 y Fs(job)336
-b Ft(Job)31 b(names,)h(if)g(job)f(con)m(trol)i(is)f(activ)m(e.)46
-b(Ma)m(y)33 b(also)g(b)s(e)e(sp)s(eci-)1590 408 y(\014ed)f(as)g(`)p
-Fs(-j)p Ft('.)1110 577 y Fs(keyword)144 b Ft(Shell)30
-b(reserv)m(ed)h(w)m(ords.)40 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s
-(eci\014ed)f(as)i(`)p Fs(-k)p Ft('.)1110 745 y Fs(running)144
-b Ft(Names)31 b(of)g(running)d(jobs,)i(if)h(job)f(con)m(trol)h(is)g
-(activ)m(e.)1110 913 y Fs(service)144 b Ft(Service)31
-b(names.)41 b(Ma)m(y)31 b(also)g(b)s(e)f(sp)s(eci\014ed)g(as)g(`)p
-Fs(-s)p Ft('.)1110 1081 y Fs(setopt)192 b Ft(V)-8 b(alid)34
-b(argumen)m(ts)f(for)f(the)h(`)p Fs(-o)p Ft(')g(option)g(to)h(the)f
-Fs(set)e Ft(builtin)1590 1190 y(\(see)g(Section)h(4.3.1)g([The)e(Set)g
-(Builtin],)i(page)f(59\).)1110 1358 y Fs(shopt)240 b
-Ft(Shell)40 b(option)g(names)g(as)g(accepted)i(b)m(y)e(the)g
-Fs(shopt)e Ft(builtin)1590 1468 y(\(see)31 b(Section)h(4.2)f([Bash)g
-(Builtins],)g(page)g(48\).)1110 1636 y Fs(signal)192
-b Ft(Signal)31 b(names.)1110 1804 y Fs(stopped)144 b
-Ft(Names)31 b(of)g(stopp)s(ed)e(jobs,)h(if)g(job)g(con)m(trol)i(is)f
-(activ)m(e.)1110 1972 y Fs(user)288 b Ft(User)30 b(names.)41
-b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)f(as)i(`)p
-Fs(-u)p Ft('.)1110 2140 y Fs(variable)96 b Ft(Names)36
-b(of)g(all)g(shell)g(v)-5 b(ariables.)56 b(Ma)m(y)37
-b(also)f(b)s(e)f(sp)s(eci\014ed)g(as)1590 2250 y(`)p
-Fs(-v)p Ft('.)630 2418 y Fs(-C)30 b Fi(command)1110 2527
-y Fq(command)35 b Ft(is)e(executed)g(in)e(a)i(subshell)e(en)m(vironmen)
-m(t,)i(and)f(its)g(output)g(is)1110 2637 y(used)e(as)g(the)h(p)s
-(ossible)f(completions.)630 2805 y Fs(-F)g Fi(function)1110
-2914 y Ft(The)39 b(shell)g(function)g Fq(function)g Ft(is)g(executed)h
-(in)f(the)g(curren)m(t)g(shell)g(en)m(vi-)1110 3024 y(ronmen)m(t.)72
+%%Page: 128 134
+TeXDict begin 128 133 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(128)1590 299 y(adding)25
+b(a)h(slash)f(to)h(directory)g(names)f(quoting)h(sp)s(ecial)g(c)m(har-)
+1590 408 y(acters,)39 b(or)d(suppressing)f(trailing)i(spaces\).)59
+b(This)35 b(option)i(is)1590 518 y(in)m(tended)30 b(to)g(b)s(e)g(used)f
+(with)g(shell)i(functions)e(sp)s(eci\014ed)g(with)1590
+628 y Ft(-F)p Fu(.)1110 787 y Ft(noquote)144 b Fu(T)-8
+b(ell)28 b(Readline)g(not)g(to)g(quote)g(the)g(completed)g(w)m(ords)f
+(if)h(they)1590 896 y(are)j(\014lenames)f(\(quoting)h(\014lenames)g(is)
+f(the)h(default\).)1110 1055 y Ft(nospace)144 b Fu(T)-8
+b(ell)40 b(Readline)g(not)g(to)g(app)s(end)d(a)j(space)g(\(the)f
+(default\))h(to)1590 1165 y(w)m(ords)30 b(completed)h(at)g(the)g(end)f
+(of)g(the)h(line.)1110 1324 y Ft(plusdirs)96 b Fu(After)30
+b(an)m(y)h(matc)m(hes)g(de\014ned)d(b)m(y)i(the)g(compsp)s(ec)g(are)g
+(gener-)1590 1433 y(ated,)g(directory)f(name)g(completion)i(is)d
+(attempted)i(and)f(an)m(y)1590 1543 y(matc)m(hes)j(are)e(added)g(to)h
+(the)g(results)f(of)g(the)h(other)g(actions.)630 1702
+y Ft(-A)f Fj(action)66 b Fu(The)25 b Fr(action)h Fu(ma)m(y)g(b)s(e)e
+(one)h(of)h(the)f(follo)m(wing)i(to)e(generate)i(a)e(list)h(of)f(p)s
+(ossible)1110 1811 y(completions:)1110 1970 y Ft(alias)240
+b Fu(Alias)31 b(names.)41 b(Ma)m(y)31 b(also)h(b)s(e)e(sp)s(eci\014ed)f
+(as)i Ft(-a)p Fu(.)1110 2129 y Ft(arrayvar)96 b Fu(Arra)m(y)31
+b(v)-5 b(ariable)31 b(names.)1110 2288 y Ft(binding)144
+b Fu(Readline)30 b(k)m(ey)f(binding)f(names)h(\(see)h(Section)f(8.4)h
+([Bindable)1590 2398 y(Readline)h(Commands],)f(page)h(115\).)1110
+2556 y Ft(builtin)144 b Fu(Names)21 b(of)g(shell)f(builtin)h(commands.)
+37 b(Ma)m(y)21 b(also)h(b)s(e)e(sp)s(eci\014ed)1590 2666
+y(as)31 b Ft(-b)p Fu(.)1110 2825 y Ft(command)144 b Fu(Command)29
+b(names.)41 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)f(as)i
+Ft(-c)p Fu(.)1110 2984 y Ft(directory)1590 3093 y Fu(Directory)h
+(names.)40 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)g(as)g
+Ft(-d)p Fu(.)1110 3252 y Ft(disabled)96 b Fu(Names)31
+b(of)g(disabled)f(shell)g(builtins.)1110 3411 y Ft(enabled)144
+b Fu(Names)31 b(of)g(enabled)f(shell)g(builtins.)1110
+3570 y Ft(export)192 b Fu(Names)34 b(of)f(exp)s(orted)f(shell)h(v)-5
+b(ariables.)49 b(Ma)m(y)35 b(also)e(b)s(e)g(sp)s(eci-)1590
+3680 y(\014ed)d(as)g Ft(-e)p Fu(.)1110 3839 y Ft(file)288
+b Fu(File)32 b(names.)40 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)f
+(as)i Ft(-f)p Fu(.)1110 3998 y Ft(function)96 b Fu(Names)31
+b(of)g(shell)f(functions.)1110 4156 y Ft(group)240 b
+Fu(Group)30 b(names.)40 b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)g
+(as)g Ft(-g)p Fu(.)1110 4315 y Ft(helptopic)1590 4425
+y Fu(Help)37 b(topics)g(as)g(accepted)h(b)m(y)e(the)h
+Ft(help)f Fu(builtin)g(\(see)h(Sec-)1590 4534 y(tion)31
+b(4.2)g([Bash)g(Builtins],)g(page)g(48\).)1110 4693 y
+Ft(hostname)96 b Fu(Hostnames,)89 b(as)76 b(tak)m(en)h(from)f(the)g
+(\014le)h(sp)s(eci\014ed)e(b)m(y)1590 4803 y(the)55 b
+Ft(HOSTFILE)e Fu(shell)j(v)-5 b(ariable)56 b(\(see)g(Section)g(5.2)h
+([Bash)1590 4913 y(V)-8 b(ariables],)32 b(page)f(69\).)1110
+5071 y Ft(job)336 b Fu(Job)31 b(names,)h(if)g(job)f(con)m(trol)i(is)f
+(activ)m(e.)46 b(Ma)m(y)33 b(also)g(b)s(e)e(sp)s(eci-)1590
+5181 y(\014ed)f(as)g Ft(-j)p Fu(.)1110 5340 y Ft(keyword)144
+b Fu(Shell)30 b(reserv)m(ed)h(w)m(ords.)40 b(Ma)m(y)32
+b(also)f(b)s(e)f(sp)s(eci\014ed)f(as)i Ft(-k)p Fu(.)p
+eop end
+%%Page: 129 135
+TeXDict begin 129 134 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(129)1110 299 y Ft(running)144
+b Fu(Names)31 b(of)g(running)d(jobs,)i(if)h(job)f(con)m(trol)h(is)g
+(activ)m(e.)1110 463 y Ft(service)144 b Fu(Service)31
+b(names.)41 b(Ma)m(y)31 b(also)g(b)s(e)f(sp)s(eci\014ed)g(as)g
+Ft(-s)p Fu(.)1110 628 y Ft(setopt)192 b Fu(V)-8 b(alid)39
+b(argumen)m(ts)g(for)f(the)h Ft(-o)e Fu(option)i(to)g(the)g
+Ft(set)e Fu(builtin)1590 737 y(\(see)31 b(Section)h(4.3.1)g([The)e(Set)
+g(Builtin],)i(page)f(58\).)1110 902 y Ft(shopt)240 b
+Fu(Shell)40 b(option)g(names)g(as)g(accepted)i(b)m(y)e(the)g
+Ft(shopt)e Fu(builtin)1590 1011 y(\(see)31 b(Section)h(4.2)f([Bash)g
+(Builtins],)g(page)g(48\).)1110 1176 y Ft(signal)192
+b Fu(Signal)31 b(names.)1110 1340 y Ft(stopped)144 b
+Fu(Names)31 b(of)g(stopp)s(ed)e(jobs,)h(if)g(job)g(con)m(trol)i(is)f
+(activ)m(e.)1110 1504 y Ft(user)288 b Fu(User)30 b(names.)41
+b(Ma)m(y)32 b(also)f(b)s(e)f(sp)s(eci\014ed)f(as)i Ft(-u)p
+Fu(.)1110 1669 y Ft(variable)96 b Fu(Names)36 b(of)g(all)g(shell)g(v)-5
+b(ariables.)56 b(Ma)m(y)37 b(also)f(b)s(e)f(sp)s(eci\014ed)g(as)1590
+1778 y Ft(-v)p Fu(.)630 1943 y Ft(-C)30 b Fj(command)1110
+2052 y Fr(command)35 b Fu(is)e(executed)g(in)e(a)i(subshell)e(en)m
+(vironmen)m(t,)i(and)f(its)g(output)g(is)1110 2162 y(used)e(as)g(the)h
+(p)s(ossible)f(completions.)630 2326 y Ft(-F)g Fj(function)1110
+2436 y Fu(The)39 b(shell)g(function)g Fr(function)g Fu(is)g(executed)h
+(in)f(the)g(curren)m(t)g(shell)g(en)m(vi-)1110 2545 y(ronmen)m(t.)72
b(When)41 b(it)g(is)g(executed,)k($1)c(is)g(the)g(name)g(of)g(the)g
-(command)1110 3134 y(whose)34 b(argumen)m(ts)h(are)g(b)s(eing)f
+(command)1110 2655 y(whose)34 b(argumen)m(ts)h(are)g(b)s(eing)f
(completed,)j($2)e(is)f(the)h(w)m(ord)f(b)s(eing)g(com-)1110
-3243 y(pleted,)44 b(and)c($3)i(is)e(the)h(w)m(ord)g(preceding)f(the)h
-(w)m(ord)f(b)s(eing)h(completed,)1110 3353 y(as)g(describ)s(ed)f(ab)s
+2765 y(pleted,)44 b(and)c($3)i(is)e(the)h(w)m(ord)g(preceding)f(the)h
+(w)m(ord)f(b)s(eing)h(completed,)1110 2874 y(as)g(describ)s(ed)f(ab)s
(o)m(v)m(e)i(\(see)g(Section)f(8.6)h([Programmable)g(Completion],)1110
-3462 y(page)30 b(125\).)42 b(When)29 b(it)h(\014nishes,)e(the)h(p)s
-(ossible)g(completions)h(are)g(retriev)m(ed)1110 3572
-y(from)g(the)g(v)-5 b(alue)31 b(of)g(the)f Fs(COMPREPLY)e
-Ft(arra)m(y)j(v)-5 b(ariable.)630 3740 y Fs(-G)30 b Fi(globpat)1110
-3850 y Ft(The)39 b(\014lename)h(expansion)g(pattern)g
-Fq(globpat)j Ft(is)d(expanded)f(to)h(generate)1110 3959
-y(the)31 b(p)s(ossible)e(completions.)630 4127 y Fs(-P)h
-Fi(prefix)1110 4237 y Fq(pre\014x)39 b Ft(is)34 b(added)f(at)i(the)f(b)
-s(eginning)f(of)i(eac)m(h)g(p)s(ossible)e(completion)i(after)1110
-4346 y(all)c(other)g(options)g(ha)m(v)m(e)g(b)s(een)f(applied.)630
-4514 y Fs(-S)g Fi(suffix)1110 4624 y Fq(su\016x)c Ft(is)20
+2984 y(page)30 b(124\).)42 b(When)29 b(it)h(\014nishes,)e(the)h(p)s
+(ossible)g(completions)h(are)g(retriev)m(ed)1110 3093
+y(from)g(the)g(v)-5 b(alue)31 b(of)g(the)f Ft(COMPREPLY)e
+Fu(arra)m(y)j(v)-5 b(ariable.)630 3258 y Ft(-G)30 b Fj(globpat)1110
+3367 y Fu(The)39 b(\014lename)h(expansion)g(pattern)g
+Fr(globpat)j Fu(is)d(expanded)f(to)h(generate)1110 3477
+y(the)31 b(p)s(ossible)e(completions.)630 3641 y Ft(-P)h
+Fj(prefix)66 b Fr(pre\014x)39 b Fu(is)34 b(added)f(at)i(the)f(b)s
+(eginning)f(of)i(eac)m(h)g(p)s(ossible)e(completion)i(after)1110
+3751 y(all)c(other)g(options)g(ha)m(v)m(e)g(b)s(een)f(applied.)630
+3915 y Ft(-S)g Fj(suffix)66 b Fr(su\016x)26 b Fu(is)20
b(app)s(ended)f(to)i(eac)m(h)h(p)s(ossible)e(completion)i(after)f(all)g
-(other)g(options)1110 4734 y(ha)m(v)m(e)32 b(b)s(een)d(applied.)630
-4902 y Fs(-W)h Fi(wordlist)1110 5011 y Ft(The)24 b Fq(w)m(ordlist)k
-Ft(is)d(split)g(using)f(the)h(c)m(haracters)i(in)d(the)i
-Fs(IFS)e Ft(sp)s(ecial)h(v)-5 b(ariable)1110 5121 y(as)36
+(other)g(options)1110 4025 y(ha)m(v)m(e)32 b(b)s(een)d(applied.)630
+4189 y Ft(-W)h Fj(wordlist)1110 4299 y Fu(The)24 b Fr(w)m(ordlist)k
+Fu(is)d(split)g(using)f(the)h(c)m(haracters)i(in)d(the)i
+Ft(IFS)e Fu(sp)s(ecial)h(v)-5 b(ariable)1110 4408 y(as)36
b(delimiters,)i(and)e(eac)m(h)h(resultan)m(t)g(w)m(ord)e(is)h
-(expanded.)57 b(The)35 b(p)s(ossible)1110 5230 y(completions)c(are)e
+(expanded.)57 b(The)35 b(p)s(ossible)1110 4518 y(completions)c(are)e
(the)h(mem)m(b)s(ers)f(of)g(the)h(resultan)m(t)g(list)g(whic)m(h)f
-(matc)m(h)i(the)1110 5340 y(w)m(ord)f(b)s(eing)g(completed.)p
-eop end
-%%Page: 131 137
-TeXDict begin 131 136 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(131)630 299 y Fs(-X)30
-b Fi(filterpat)1110 408 y Fq(\014lterpat)d Ft(is)e(a)g(pattern)g(as)f
-(used)g(for)h(\014lename)g(expansion.)38 b(It)25 b(is)g(applied)f(to)
-1110 518 y(the)30 b(list)f(of)h(p)s(ossible)f(completions)h(generated)h
-(b)m(y)e(the)g(preceding)h(options)1110 628 y(and)d(argumen)m(ts,)i
-(and)e(eac)m(h)i(completion)g(matc)m(hing)g Fq(\014lterpat)h
-Ft(is)e(remo)m(v)m(ed)1110 737 y(from)i(the)h(list.)42
-b(A)30 b(leading)i(`)p Fs(!)p Ft(')e(in)g Fq(\014lterpat)j
-Ft(negates)f(the)f(pattern;)g(in)f(this)1110 847 y(case,)i(an)m(y)e
-(completion)i(not)f(matc)m(hing)g Fq(\014lterpat)i Ft(is)d(remo)m(v)m
-(ed.)630 1038 y(The)35 b(return)g(v)-5 b(alue)37 b(is)f(true)f(unless)h
-(an)f(in)m(v)-5 b(alid)37 b(option)f(is)g(supplied,)g(an)g(option)h
-(other)630 1147 y(than)31 b(`)p Fs(-p)p Ft(')g(or)g(`)p
-Fs(-r)p Ft(')g(is)g(supplied)f(without)h(a)g Fq(name)37
-b Ft(argumen)m(t,)32 b(an)f(attempt)h(is)f(made)g(to)630
-1257 y(remo)m(v)m(e)h(a)e(completion)i(sp)s(eci\014cation)f(for)f(a)h
-Fq(name)k Ft(for)30 b(whic)m(h)g(no)g(sp)s(eci\014cation)h(exists,)630
-1366 y(or)f(an)h(error)f(o)s(ccurs)g(adding)g(a)g(completion)i(sp)s
-(eci\014cation.)150 1557 y Fs(compopt)870 1707 y(compopt)46
-b([-o)h Fi(option)11 b Fs(])45 b([-DE])h([+o)h Fi(option)11
-b Fs(])46 b([)p Fi(name)11 b Fs(])630 1858 y Ft(Mo)s(dify)33
-b(completion)h(options)g(for)f(eac)m(h)h Fq(name)39 b
-Ft(according)34 b(to)g(the)f Fq(option)p Ft(s,)i(or)e(for)g(the)630
-1967 y(curren)m(tly-executing)46 b(completion)f(if)f(no)f
-Fq(name)5 b Ft(s)44 b(are)h(supplied.)80 b(If)43 b(no)h
-Fq(option)p Ft(s)h(are)630 2077 y(giv)m(en,)30 b(displa)m(y)e(the)g
-(completion)h(options)g(for)e(eac)m(h)i Fq(name)34 b
-Ft(or)27 b(the)i(curren)m(t)e(completion.)630 2186 y(The)f(p)s(ossible)
-g(v)-5 b(alues)27 b(of)f Fq(option)h Ft(are)g(those)g(v)-5
-b(alid)26 b(for)g(the)h Fs(complete)d Ft(builtin)i(describ)s(ed)630
-2296 y(ab)s(o)m(v)m(e.)40 b(The)23 b(`)p Fs(-D)p Ft(')i(option)f
-(indicates)h(that)g(the)f(remaining)g(options)h(should)e(apply)h(to)h
-(the)630 2406 y(\\default")33 b(command)f(completion;)i(that)f(is,)g
-(completion)g(attempted)g(on)f(a)g(command)630 2515 y(for)c(whic)m(h)f
-(no)h(completion)h(has)f(previously)g(b)s(een)f(de\014ned.)38
-b(The)28 b(`)p Fs(-E)p Ft(')g(option)g(indicates)630
-2625 y(that)c(the)g(remaining)g(options)g(should)e(apply)h(to)i(\\empt)
-m(y")g(command)e(completion;)k(that)630 2734 y(is,)k(completion)g
-(attempted)h(on)e(a)h(blank)f(line.)630 2885 y(The)g(`)p
-Fs(-D)p Ft(')g(option)h(tak)m(es)h(precedence)f(o)m(v)m(er)g(`)p
-Fs(-E)p Ft('.)630 3035 y(The)23 b(return)g(v)-5 b(alue)25
-b(is)f(true)g(unless)f(an)h(in)m(v)-5 b(alid)24 b(option)h(is)f
-(supplied,)g(an)g(attempt)h(is)f(made)630 3144 y(to)32
-b(mo)s(dify)f(the)g(options)h(for)f(a)h Fq(name)k Ft(for)31
-b(whic)m(h)g(no)g(completion)i(sp)s(eci\014cation)f(exists,)630
-3254 y(or)e(an)h(output)f(error)g(o)s(ccurs.)150 3534
-y Fr(8.8)68 b(A)44 b(Programmable)j(Completion)f(Example)150
-3693 y Ft(The)37 b(most)g(common)g(w)m(a)m(y)i(to)e(obtain)h
+(matc)m(h)i(the)1110 4628 y(w)m(ord)f(b)s(eing)g(completed.)630
+4792 y Ft(-X)g Fj(filterpat)1110 4902 y Fr(\014lterpat)d
+Fu(is)e(a)g(pattern)g(as)f(used)g(for)h(\014lename)g(expansion.)38
+b(It)25 b(is)g(applied)f(to)1110 5011 y(the)30 b(list)f(of)h(p)s
+(ossible)f(completions)h(generated)h(b)m(y)e(the)g(preceding)h(options)
+1110 5121 y(and)d(argumen)m(ts,)i(and)e(eac)m(h)i(completion)g(matc)m
+(hing)g Fr(\014lterpat)h Fu(is)e(remo)m(v)m(ed)1110 5230
+y(from)i(the)h(list.)42 b(A)30 b(leading)i(`)p Ft(!)p
+Fu(')e(in)g Fr(\014lterpat)j Fu(negates)f(the)f(pattern;)g(in)f(this)
+1110 5340 y(case,)i(an)m(y)e(completion)i(not)f(matc)m(hing)g
+Fr(\014lterpat)i Fu(is)d(remo)m(v)m(ed.)p eop end
+%%Page: 130 136
+TeXDict begin 130 135 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(130)630 299 y(The)35
+b(return)g(v)-5 b(alue)37 b(is)f(true)f(unless)h(an)f(in)m(v)-5
+b(alid)37 b(option)f(is)g(supplied,)g(an)g(option)h(other)630
+408 y(than)h Ft(-p)g Fu(or)g Ft(-r)f Fu(is)h(supplied)f(without)i(a)f
+Fr(name)44 b Fu(argumen)m(t,)c(an)e(attempt)i(is)e(made)g(to)630
+518 y(remo)m(v)m(e)32 b(a)e(completion)i(sp)s(eci\014cation)f(for)f(a)h
+Fr(name)k Fu(for)30 b(whic)m(h)g(no)g(sp)s(eci\014cation)h(exists,)630
+628 y(or)f(an)h(error)f(o)s(ccurs)g(adding)g(a)g(completion)i(sp)s
+(eci\014cation.)150 789 y Ft(compopt)870 924 y(compopt)46
+b([-o)h Fj(option)p Ft(])f([-DE])g([+o)h Fj(option)p
+Ft(])f([)p Fj(name)p Ft(])630 1060 y Fu(Mo)s(dify)33
+b(completion)h(options)g(for)f(eac)m(h)h Fr(name)39 b
+Fu(according)34 b(to)g(the)f Fr(option)p Fu(s,)i(or)e(for)g(the)630
+1170 y(curren)m(tly-executing)46 b(completion)f(if)f(no)f
+Fr(name)5 b Fu(s)44 b(are)h(supplied.)80 b(If)43 b(no)h
+Fr(option)p Fu(s)h(are)630 1279 y(giv)m(en,)30 b(displa)m(y)e(the)g
+(completion)h(options)g(for)e(eac)m(h)i Fr(name)34 b
+Fu(or)27 b(the)i(curren)m(t)e(completion.)630 1389 y(The)f(p)s(ossible)
+g(v)-5 b(alues)27 b(of)f Fr(option)h Fu(are)g(those)g(v)-5
+b(alid)26 b(for)g(the)h Ft(complete)d Fu(builtin)i(describ)s(ed)630
+1498 y(ab)s(o)m(v)m(e.)41 b(The)28 b Ft(-D)g Fu(option)h(indicates)h
+(that)f(the)g(remaining)g(options)g(should)e(apply)h(to)i(the)630
+1608 y(\\default")j(command)f(completion;)i(that)f(is,)g(completion)g
+(attempted)g(on)f(a)g(command)630 1717 y(for)g(whic)m(h)g(no)g
+(completion)i(has)e(previously)g(b)s(een)g(de\014ned.)45
+b(The)32 b Ft(-E)f Fu(option)i(indicates)630 1827 y(that)24
+b(the)g(remaining)g(options)g(should)e(apply)h(to)i(\\empt)m(y")g
+(command)e(completion;)k(that)630 1937 y(is,)k(completion)g(attempted)h
+(on)e(a)h(blank)f(line.)630 2072 y(The)g Ft(-D)g Fu(option)g(tak)m(es)i
+(precedence)f(o)m(v)m(er)h Ft(-E)p Fu(.)630 2208 y(The)23
+b(return)g(v)-5 b(alue)25 b(is)f(true)g(unless)f(an)h(in)m(v)-5
+b(alid)24 b(option)h(is)f(supplied,)g(an)g(attempt)h(is)f(made)630
+2317 y(to)32 b(mo)s(dify)f(the)g(options)h(for)f(a)h
+Fr(name)k Fu(for)31 b(whic)m(h)g(no)g(completion)i(sp)s(eci\014cation)f
+(exists,)630 2427 y(or)e(an)h(output)f(error)g(o)s(ccurs.)150
+2662 y Fs(8.8)68 b(A)44 b(Programmable)j(Completion)f(Example)150
+2822 y Fu(The)37 b(most)g(common)g(w)m(a)m(y)i(to)e(obtain)h
(additional)g(completion)g(functionalit)m(y)h(b)s(ey)m(ond)d(the)i
-(default)150 3803 y(actions)29 b Fs(complete)d Ft(and)i
-Fs(compgen)e Ft(pro)m(vide)i(is)h(to)f(use)g(a)h(shell)f(function)g
-(and)g(bind)e(it)j(to)g(a)g(particular)150 3912 y(command)h(using)g
-Fs(complete)e(-F)p Ft(.)275 4078 y(The)j(follo)m(wing)j(function)e(pro)
-m(vides)g(completions)i(for)e(the)g Fs(cd)g Ft(builtin.)46
-b(It)32 b(is)h(a)f(reasonably)h(go)s(o)s(d)150 4188 y(example)e(of)f
+(default)150 2931 y(actions)29 b Ft(complete)d Fu(and)i
+Ft(compgen)e Fu(pro)m(vide)i(is)h(to)f(use)g(a)h(shell)f(function)g
+(and)g(bind)e(it)j(to)g(a)g(particular)150 3041 y(command)h(using)g
+Ft(complete)e(-F)p Fu(.)275 3177 y(The)j(follo)m(wing)j(function)e(pro)
+m(vides)g(completions)i(for)e(the)g Ft(cd)g Fu(builtin.)46
+b(It)32 b(is)h(a)f(reasonably)h(go)s(o)s(d)150 3287 y(example)e(of)f
(what)g(shell)g(functions)g(m)m(ust)f(do)h(when)f(used)h(for)f
(completion.)42 b(This)29 b(function)h(uses)g(the)150
-4297 y(w)m(ord)38 b(passsed)g(as)h Fs($2)g Ft(to)g(determine)g(the)g
+3396 y(w)m(ord)38 b(passsed)g(as)h Ft($2)g Fu(to)g(determine)g(the)g
(directory)g(name)g(to)g(complete.)67 b(Y)-8 b(ou)40
-b(can)f(also)g(use)g(the)150 4407 y Fs(COMP_WORDS)28
-b Ft(arra)m(y)i(v)-5 b(ariable;)32 b(the)e(curren)m(t)h(w)m(ord)f(is)g
-(indexed)g(b)m(y)g(the)h Fs(COMP_CWORD)c Ft(v)-5 b(ariable.)275
-4573 y(The)42 b(function)h(relies)h(on)e(the)i Fs(complete)c
-Ft(and)j Fs(compgen)e Ft(builtins)h(to)i(do)f(m)m(uc)m(h)g(of)g(the)h
-(w)m(ork,)150 4682 y(adding)25 b(only)h(the)g(things)g(that)g(the)g
-(Bash)g Fs(cd)f Ft(do)s(es)g(b)s(ey)m(ond)g(accepting)j(basic)e
-(directory)g(names:)38 b(tilde)150 4792 y(expansion)21
-b(\(see)h(Section)g(3.5.2)h([Tilde)e(Expansion],)i(page)e(22\),)k
-(searc)m(hing)d(directories)g(in)f Fq($CDP)-8 b(A)g(TH)10
-b Ft(,)150 4902 y(whic)m(h)21 b(is)h(describ)s(ed)e(ab)s(o)m(v)m(e)j
+b(can)f(also)g(use)g(the)150 3506 y Ft(COMP_WORDS)28
+b Fu(arra)m(y)i(v)-5 b(ariable;)32 b(the)e(curren)m(t)h(w)m(ord)f(is)g
+(indexed)g(b)m(y)g(the)h Ft(COMP_CWORD)c Fu(v)-5 b(ariable.)275
+3642 y(The)42 b(function)h(relies)h(on)e(the)i Ft(complete)c
+Fu(and)j Ft(compgen)e Fu(builtins)h(to)i(do)f(m)m(uc)m(h)g(of)g(the)h
+(w)m(ork,)150 3752 y(adding)25 b(only)h(the)g(things)g(that)g(the)g
+(Bash)g Ft(cd)f Fu(do)s(es)g(b)s(ey)m(ond)g(accepting)j(basic)e
+(directory)g(names:)38 b(tilde)150 3862 y(expansion)22
+b(\(see)h(Section)g(3.5.2)g([Tilde)g(Expansion],)g(page)g(22\),)i
+(searc)m(hing)e(directories)g(in)e Fr($CDP)-8 b(A)g(TH)p
+Fu(,)150 3971 y(whic)m(h)21 b(is)h(describ)s(ed)e(ab)s(o)m(v)m(e)j
(\(see)f(Section)h(4.1)f([Bourne)g(Shell)f(Builtins],)j(page)e(41\),)j
-(and)c(basic)h(supp)s(ort)150 5011 y(for)31 b(the)h Fs(cdable_vars)d
-Ft(shell)i(option)h(\(see)h(Section)f(4.3.2)i([The)d(Shopt)g(Builtin],)
-i(page)f(63\).)46 b Fs(_comp_)150 5121 y(cd)30 b Ft(mo)s(di\014es)g
-(the)h(v)-5 b(alue)31 b(of)g Fq(IFS)36 b Ft(so)31 b(that)g(it)g(con)m
+(and)c(basic)h(supp)s(ort)150 4081 y(for)31 b(the)h Ft(cdable_vars)d
+Fu(shell)i(option)h(\(see)h(Section)f(4.3.2)i([The)d(Shopt)g(Builtin],)
+i(page)f(62\).)46 b Ft(_comp_)150 4190 y(cd)30 b Fu(mo)s(di\014es)g
+(the)h(v)-5 b(alue)31 b(of)g Fr(IFS)36 b Fu(so)31 b(that)g(it)g(con)m
(tains)h(only)f(a)g(newline)g(to)h(accommo)s(date)g(\014le)f(names)150
-5230 y(con)m(taining)i(spaces)g(and)e(tabs)h({)g Fs(compgen)e
-Ft(prin)m(ts)h(the)h(p)s(ossible)f(completions)i(it)g(generates)g(one)f
-(p)s(er)150 5340 y(line.)p eop end
-%%Page: 132 138
-TeXDict begin 132 137 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(132)275 299 y(P)m(ossible)24
-b(completions)h(go)g(in)m(to)g(the)f Fq(COMPREPL)-8 b(Y)36
-b Ft(arra)m(y)24 b(v)-5 b(ariable,)26 b(one)e(completion)i(p)s(er)c
-(arra)m(y)150 408 y(elemen)m(t.)42 b(The)30 b(programmable)g
-(completion)i(system)e(retriev)m(es)h(the)g(completions)g(from)f(there)
-g(when)150 518 y(the)h(function)f(returns.)390 737 y
-Fs(#)47 b(A)h(completion)d(function)g(for)i(the)g(cd)g(builtin)390
-847 y(#)g(based)g(on)g(the)g(cd)g(completion)e(function)h(from)g(the)h
-(bash_completion)d(package)390 956 y(_comp_cd\(\))390
-1066 y({)581 1176 y(local)i(IFS=$')g(\\t\\n')190 b(#)47
-b(normalize)f(IFS)581 1285 y(local)g(cur)h(_skipdot)f(_cdpath)581
-1395 y(local)g(i)i(j)f(k)581 1614 y(#)g(Tilde)g(expansion,)e(with)h
-(side)h(effect)f(of)h(expanding)f(tilde)g(to)h(full)g(pathname)581
-1724 y(case)g("$2")f(in)581 1833 y(\\~*\))190 b(eval)46
-b(cur="$2")g(;;)581 1943 y(*\))286 b(cur=$2)46 b(;;)581
-2052 y(esac)581 2271 y(#)h(no)h(cdpath)e(or)h(absolute)e(pathname)h(--)
-h(straight)f(directory)f(completion)581 2381 y(if)i([[)g(-z)g
-("${CDPATH:-}")e(]])i(||)g([[)g("$cur")f(==)h(@\(./*|../*|/*\))d(]];)j
-(then)772 2491 y(#)g(compgen)f(prints)g(paths)h(one)f(per)h(line;)g
-(could)f(also)h(use)g(while)f(loop)772 2600 y(IFS=$'\\n')772
-2710 y(COMPREPLY=\()f($\(compgen)g(-d)i(--)g("$cur"\))f(\))772
-2819 y(IFS=$')g(\\t\\n')581 2929 y(#)h(CDPATH+directories)c(in)k(the)g
-(current)f(directory)f(if)j(not)e(in)i(CDPATH)581 3039
-y(else)772 3148 y(IFS=$'\\n')772 3258 y(_skipdot=false)772
-3367 y(#)f(preprocess)e(CDPATH)h(to)i(convert)d(null)i(directory)e
-(names)i(to)g(.)772 3477 y(_cdpath=${CDPATH/#:/.:})772
-3587 y(_cdpath=${_cdpath//::/:.)o(:})772 3696 y
-(_cdpath=${_cdpath/\045:/:.})772 3806 y(for)g(i)g(in)g
-(${_cdpath//:/$'\\n'};)c(do)963 3915 y(if)k([[)g($i)g(-ef)g(.)h(]];)f
-(then)f(_skipdot=true;)e(fi)963 4025 y(k="${#COMPREPLY[@]}")963
-4134 y(for)j(j)g(in)g($\()g(compgen)f(-d)h(--)h("$i/$cur")d(\);)i(do)
-1154 4244 y(COMPREPLY[k++]=${j#$i/})375 b(#)48 b(cut)f(off)f(directory)
-963 4354 y(done)772 4463 y(done)772 4573 y($_skipdot)f(||)i
+4300 y(con)m(taining)i(spaces)g(and)e(tabs)h({)g Ft(compgen)e
+Fu(prin)m(ts)h(the)h(p)s(ossible)f(completions)i(it)g(generates)g(one)f
+(p)s(er)150 4410 y(line.)275 4546 y(P)m(ossible)24 b(completions)h(go)g
+(in)m(to)g(the)f Fr(COMPREPL)-8 b(Y)36 b Fu(arra)m(y)24
+b(v)-5 b(ariable,)26 b(one)e(completion)i(p)s(er)c(arra)m(y)150
+4656 y(elemen)m(t.)42 b(The)30 b(programmable)g(completion)i(system)e
+(retriev)m(es)h(the)g(completions)g(from)f(there)g(when)150
+4765 y(the)h(function)f(returns.)390 4902 y Ft(#)47 b(A)h(completion)d
+(function)g(for)i(the)g(cd)g(builtin)390 5011 y(#)g(based)g(on)g(the)g
+(cd)g(completion)e(function)h(from)g(the)h(bash_completion)d(package)
+390 5121 y(_comp_cd\(\))390 5230 y({)581 5340 y(local)i(IFS=$')g
+(\\t\\n')190 b(#)47 b(normalize)f(IFS)p eop end
+%%Page: 131 137
+TeXDict begin 131 136 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(131)581 299 y Ft(local)46
+b(cur)h(_skipdot)f(_cdpath)581 408 y(local)g(i)i(j)f(k)581
+628 y(#)g(Tilde)g(expansion,)e(with)h(side)h(effect)f(of)h(expanding)f
+(tilde)g(to)h(full)g(pathname)581 737 y(case)g("$2")f(in)581
+847 y(\\~*\))190 b(eval)46 b(cur="$2")g(;;)581 956 y(*\))286
+b(cur=$2)46 b(;;)581 1066 y(esac)581 1285 y(#)h(no)h(cdpath)e(or)h
+(absolute)e(pathname)h(--)h(straight)f(directory)f(completion)581
+1395 y(if)i([[)g(-z)g("${CDPATH:-}")e(]])i(||)g([[)g("$cur")f(==)h
+(@\(./*|../*|/*\))d(]];)j(then)772 1504 y(#)g(compgen)f(prints)g(paths)
+h(one)f(per)h(line;)g(could)f(also)h(use)g(while)f(loop)772
+1614 y(IFS=$'\\n')772 1724 y(COMPREPLY=\()f($\(compgen)g(-d)i(--)g
+("$cur"\))f(\))772 1833 y(IFS=$')g(\\t\\n')581 1943 y(#)h
+(CDPATH+directories)c(in)k(the)g(current)f(directory)f(if)j(not)e(in)i
+(CDPATH)581 2052 y(else)772 2162 y(IFS=$'\\n')772 2271
+y(_skipdot=false)772 2381 y(#)f(preprocess)e(CDPATH)h(to)i(convert)d
+(null)i(directory)e(names)i(to)g(.)772 2491 y(_cdpath=${CDPATH/#:/.:})
+772 2600 y(_cdpath=${_cdpath//::/:.)o(:})772 2710 y
+(_cdpath=${_cdpath/\045:/:.})772 2819 y(for)g(i)g(in)g
+(${_cdpath//:/$'\\n'};)c(do)963 2929 y(if)k([[)g($i)g(-ef)g(.)h(]];)f
+(then)f(_skipdot=true;)e(fi)963 3039 y(k="${#COMPREPLY[@]}")963
+3148 y(for)j(j)g(in)g($\()g(compgen)f(-d)h(--)h("$i/$cur")d(\);)i(do)
+1154 3258 y(COMPREPLY[k++]=${j#$i/})375 b(#)48 b(cut)f(off)f(directory)
+963 3367 y(done)772 3477 y(done)772 3587 y($_skipdot)f(||)i
(COMPREPLY+=\()e($\(compgen)g(-d)i(--)g("$cur"\))f(\))772
-4682 y(IFS=$')g(\\t\\n')581 4792 y(fi)581 5011 y(#)h(variable)f(names)g
+3696 y(IFS=$')g(\\t\\n')581 3806 y(fi)581 4025 y(#)h(variable)f(names)g
(if)h(appropriate)e(shell)i(option)f(set)h(and)f(no)i(completions)581
-5121 y(if)f(shopt)f(-q)i(cdable_vars)c(&&)k([[)f(${#COMPREPLY[@]})c
-(-eq)k(0)g(]];)g(then)772 5230 y(COMPREPLY=\()e($\(compgen)g(-v)i(--)g
-("$cur"\))f(\))581 5340 y(fi)p eop end
-%%Page: 133 139
-TeXDict begin 133 138 bop 150 -116 a Ft(Chapter)30 b(8:)41
-b(Command)29 b(Line)i(Editing)2062 b(133)581 408 y Fs(return)46
-b(0)390 518 y(})275 653 y Ft(W)-8 b(e)31 b(install)g(the)g(completion)h
-(function)e(using)f(the)i(`)p Fs(-F)p Ft(')f(option)h(to)g
-Fs(complete)p Ft(:)390 787 y Fs(#)47 b(Tell)g(readline)f(to)h(quote)f
-(appropriate)f(and)i(append)f(slashes)g(to)h(directories;)390
-897 y(#)g(use)g(the)g(bash)g(default)f(completion)f(for)i(other)f
-(arguments)390 1006 y(complete)g(-o)h(filenames)e(-o)i(nospace)f(-o)h
-(bashdefault)e(-F)i(_comp_cd)f(cd)150 1141 y Ft(Since)33
+4134 y(if)f(shopt)f(-q)i(cdable_vars)c(&&)k([[)f(${#COMPREPLY[@]})c
+(-eq)k(0)g(]];)g(then)772 4244 y(COMPREPLY=\()e($\(compgen)g(-v)i(--)g
+("$cur"\))f(\))581 4354 y(fi)581 4573 y(return)g(0)390
+4682 y(})275 4902 y Fu(W)-8 b(e)31 b(install)g(the)g(completion)h
+(function)e(using)f(the)i Ft(-F)f Fu(option)h(to)g Ft(complete)p
+Fu(:)390 5121 y Ft(#)47 b(Tell)g(readline)f(to)h(quote)f(appropriate)f
+(and)i(append)f(slashes)g(to)h(directories;)390 5230
+y(#)g(use)g(the)g(bash)g(default)f(completion)f(for)i(other)f
+(arguments)390 5340 y(complete)g(-o)h(filenames)e(-o)i(nospace)f(-o)h
+(bashdefault)e(-F)i(_comp_cd)f(cd)p eop end
+%%Page: 132 138
+TeXDict begin 132 137 bop 150 -116 a Fu(Chapter)30 b(8:)41
+b(Command)29 b(Line)i(Editing)2062 b(132)150 299 y(Since)33
b(w)m(e'd)g(lik)m(e)i(Bash)e(and)f(Readline)i(to)g(tak)m(e)g(care)g(of)
f(some)h(of)f(the)g(other)h(details)g(for)e(us,)i(w)m(e)f(use)150
-1250 y(sev)m(eral)40 b(other)f(options)g(to)g(tell)h(Bash)f(and)f
-(Readline)h(what)f(to)i(do.)65 b(The)38 b(`)p Fs(-o)30
-b(filenames)p Ft(')36 b(option)150 1360 y(tells)42 b(Readline)g(that)g
-(the)f(p)s(ossible)g(completions)h(should)f(b)s(e)f(treated)i(as)g
-(\014lenames,)i(and)d(quoted)150 1469 y(appropriately)-8
-b(.)53 b(That)34 b(option)h(will)g(also)g(cause)g(Readline)g(to)g(app)s
-(end)e(a)h(slash)g(to)h(\014lenames)g(it)g(can)150 1579
-y(determine)i(are)g(directories)h(\(whic)m(h)g(is)f(wh)m(y)f(w)m(e)i
-(migh)m(t)f(w)m(an)m(t)h(to)g(extend)f Fs(_comp_cd)e
-Ft(to)i(app)s(end)f(a)150 1689 y(slash)23 b(if)g(w)m(e're)h(using)f
-(directories)i(found)d(via)h Fq(CDP)-8 b(A)g(TH)10 b
-Ft(:)25 b(Readline)f(can't)g(tell)g(those)g(completions)h(are)150
-1798 y(directories\).)41 b(The)27 b(`)p Fs(-o)j(nospace)p
-Ft(')c(option)i(tells)g(Readline)h(to)f(not)g(app)s(end)d(a)j(space)g
-(c)m(haracter)h(to)g(the)150 1908 y(directory)c(name,)h(in)e(case)h(w)m
-(e)g(w)m(an)m(t)g(to)g(app)s(end)e(to)i(it.)39 b(The)24
-b(`)p Fs(-o)30 b(bashdefault)p Ft(')21 b(option)k(brings)f(in)g(the)150
-2017 y(rest)29 b(of)f(the)h Fs(")p Ft(Bash)f(default)p
-Fs(")h Ft(completions)g({)g(p)s(ossible)f(completion)i(that)f(Bash)f
-(adds)g(to)h(the)g(default)150 2127 y(Readline)40 b(set.)68
+408 y(sev)m(eral)43 b(other)g(options)f(to)h(tell)g(Bash)f(and)f
+(Readline)i(what)f(to)g(do.)76 b(The)41 b Ft(-o)30 b(filenames)39
+b Fu(option)150 518 y(tells)j(Readline)g(that)g(the)f(p)s(ossible)g
+(completions)h(should)f(b)s(e)f(treated)i(as)g(\014lenames,)i(and)d
+(quoted)150 628 y(appropriately)-8 b(.)53 b(That)34 b(option)h(will)g
+(also)g(cause)g(Readline)g(to)g(app)s(end)e(a)h(slash)g(to)h
+(\014lenames)g(it)g(can)150 737 y(determine)i(are)g(directories)h
+(\(whic)m(h)g(is)f(wh)m(y)f(w)m(e)i(migh)m(t)f(w)m(an)m(t)h(to)g
+(extend)f Ft(_comp_cd)e Fu(to)i(app)s(end)f(a)150 847
+y(slash)22 b(if)g(w)m(e're)h(using)f(directories)h(found)e(via)i
+Fr(CDP)-8 b(A)g(TH)10 b Fu(:)37 b(Readline)23 b(can't)g(tell)g(those)g
+(completions)h(are)150 956 y(directories\).)45 b(The)31
+b Ft(-o)f(nospace)f Fu(option)j(tells)g(Readline)g(to)h(not)e(app)s
+(end)f(a)i(space)g(c)m(haracter)h(to)f(the)150 1066 y(directory)c
+(name,)h(in)f(case)h(w)m(e)f(w)m(an)m(t)h(to)f(app)s(end)f(to)h(it.)41
+b(The)27 b Ft(-o)j(bashdefault)25 b Fu(option)j(brings)f(in)h(the)150
+1176 y(rest)h(of)f(the)h Ft(")p Fu(Bash)f(default)p Ft(")h
+Fu(completions)g({)g(p)s(ossible)f(completion)i(that)f(Bash)f(adds)g
+(to)h(the)g(default)150 1285 y(Readline)40 b(set.)68
b(These)39 b(include)g(things)g(lik)m(e)i(command)e(name)g(completion,)
-44 b(v)-5 b(ariable)40 b(completion)150 2237 y(for)i(w)m(ords)g(b)s
-(eginning)f(with)h(`)p Fs({)p Ft(',)k(completions)e(con)m(taining)f
-(pathname)g(expansion)f(patterns)g(\(see)150 2346 y(Section)31
+44 b(v)-5 b(ariable)40 b(completion)150 1395 y(for)i(w)m(ords)g(b)s
+(eginning)f(with)h(`)p Ft({)p Fu(',)k(completions)e(con)m(taining)f
+(pathname)g(expansion)f(patterns)g(\(see)150 1504 y(Section)31
b(3.5.8)h([Filename)g(Expansion],)e(page)i(29\),)f(and)f(so)h(on.)275
-2481 y(Once)39 b(installed)i(using)e Fs(complete)p Ft(,)h
-Fs(_comp_cd)d Ft(will)j(b)s(e)g(called)g(ev)m(ery)h(time)f(w)m(e)g
-(attempt)h(w)m(ord)150 2590 y(completion)32 b(for)e(a)h
-Fs(cd)e Ft(command.)275 2725 y(Man)m(y)34 b(more)g(examples)g({)g(an)g
+1639 y(Once)39 b(installed)i(using)e Ft(complete)p Fu(,)h
+Ft(_comp_cd)d Fu(will)j(b)s(e)g(called)g(ev)m(ery)h(time)f(w)m(e)g
+(attempt)h(w)m(ord)150 1748 y(completion)32 b(for)e(a)h
+Ft(cd)e Fu(command.)275 1883 y(Man)m(y)34 b(more)g(examples)g({)g(an)g
(extensiv)m(e)h(collection)i(of)c(completions)i(for)f(most)g(of)g(the)g
-(common)150 2834 y(GNU,)g(Unix,)h(and)d(Lin)m(ux)h(commands)g({)h(are)g
+(common)150 1993 y(GNU,)g(Unix,)h(and)d(Lin)m(ux)h(commands)g({)h(are)g
(a)m(v)-5 b(ailable)36 b(as)e(part)f(of)h(the)f(bash)p
-2943 2834 28 4 v 39 w(completion)i(pro)5 b(ject.)150
-2944 y(This)46 b(is)g(installed)i(b)m(y)e(default)h(on)g(man)m(y)f
-(GNU/Lin)m(ux)i(distributions.)88 b(Originally)47 b(written)g(b)m(y)150
-3054 y(Ian)29 b(Macdonald,)i(the)f(pro)5 b(ject)31 b(no)m(w)e(liv)m(es)
-i(at)g Fs(http://bash-completion.a)o(liot)o(h.d)o(ebia)o(n.or)o(g/)p
-Ft(.)150 3163 y(There)f(are)h(p)s(orts)e(for)h(other)h(systems)f(suc)m
-(h)g(as)h(Solaris)g(and)f(Mac)h(OS)f(X.)275 3298 y(An)54
-b(older)h(v)m(ersion)h(of)f(the)g(bash)p 1532 3298 V
+2943 1993 28 4 v 39 w(completion)i(pro)5 b(ject.)150
+2102 y(This)33 b(is)h(installed)h(b)m(y)f(default)g(on)g(man)m(y)h
+(GNU/Lin)m(ux)f(distributions.)51 b(Originally)35 b(written)f(b)m(y)g
+(Ian)150 2212 y(Macdonald,)45 b(the)c(pro)5 b(ject)42
+b(no)m(w)f(liv)m(es)i(at)f Ft(http:)9 b(/)g(/)e(bash-completio)o(n)i(.)
+e(a)o(lio)o(th)i(.)d(debi)o(an)j(.)d(org)i(/)f Fu(.)150
+2321 y(There)30 b(are)h(p)s(orts)e(for)h(other)h(systems)f(suc)m(h)g
+(as)h(Solaris)g(and)f(Mac)h(OS)f(X.)275 2456 y(An)54
+b(older)h(v)m(ersion)h(of)f(the)g(bash)p 1532 2456 V
40 w(completion)h(pac)m(k)-5 b(age)57 b(is)e(distributed)f(with)h(bash)
-f(in)h(the)150 3407 y(`)p Fs(examples/complete)p Ft(')26
-b(sub)s(directory)-8 b(.)p eop end
-%%Page: 134 140
-TeXDict begin 134 139 bop 150 -116 a Ft(Chapter)30 b(9:)41
-b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(134)150
-299 y Fo(9)80 b(Using)53 b(History)g(In)l(teractiv)l(ely)150
-543 y Ft(This)42 b(c)m(hapter)h(describ)s(es)f(ho)m(w)g(to)h(use)g(the)
-f Fl(gnu)h Ft(History)g(Library)e(in)m(teractiv)m(ely)-8
+f(in)h(the)150 2565 y Ft(examples/complete)26 b Fu(sub)s(directory)-8
+b(.)p eop end
+%%Page: 133 139
+TeXDict begin 133 138 bop 150 -116 a Fu(Chapter)30 b(9:)41
+b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(133)150
+299 y Fp(9)80 b(Using)53 b(History)g(In)l(teractiv)l(ely)150
+543 y Fu(This)42 b(c)m(hapter)h(describ)s(es)f(ho)m(w)g(to)h(use)g(the)
+f Fm(gnu)h Fu(History)g(Library)e(in)m(teractiv)m(ely)-8
b(,)50 b(from)42 b(a)h(user's)150 653 y(standp)s(oin)m(t.)76
b(It)42 b(should)f(b)s(e)h(considered)g(a)g(user's)g(guide.)76
-b(F)-8 b(or)43 b(information)f(on)g(using)g(the)g Fl(gnu)150
-762 y Ft(History)31 b(Library)f(in)g(other)g(programs,)g(see)h(the)g
-Fl(gnu)f Ft(Readline)h(Library)f(Man)m(ual.)150 1000
-y Fr(9.1)68 b(Bash)45 b(History)h(F)-11 b(acilities)150
-1159 y Ft(When)40 b(the)h(`)p Fs(-o)30 b(history)p Ft(')38
-b(option)j(to)g(the)g Fs(set)e Ft(builtin)h(is)h(enabled)f(\(see)h
-(Section)g(4.3.1)i([The)d(Set)150 1269 y(Builtin],)32
-b(page)g(59\),)h(the)e(shell)h(pro)m(vides)f(access)h(to)g(the)f
-Fq(command)g(history)p Ft(,)h(the)f(list)h(of)f(commands)150
-1378 y(previously)h(t)m(yp)s(ed.)47 b(The)33 b(v)-5 b(alue)33
-b(of)f(the)h Fs(HISTSIZE)e Ft(shell)h(v)-5 b(ariable)34
-b(is)f(used)e(as)i(the)g(n)m(um)m(b)s(er)e(of)i(com-)150
-1488 y(mands)i(to)i(sa)m(v)m(e)h(in)e(a)g(history)h(list.)58
-b(The)36 b(text)h(of)g(the)f(last)h Fs($HISTSIZE)d Ft(commands)i
-(\(default)g(500\))150 1597 y(is)h(sa)m(v)m(ed.)61 b(The)36
-b(shell)h(stores)h(eac)m(h)g(command)e(in)h(the)g(history)g(list)g
-(prior)f(to)i(parameter)f(and)f(v)-5 b(ari-)150 1707
-y(able)33 b(expansion)g(but)f(after)h(history)f(expansion)h(is)g(p)s
-(erformed,)e(sub)5 b(ject)33 b(to)g(the)g(v)-5 b(alues)33
-b(of)g(the)g(shell)150 1817 y(v)-5 b(ariables)31 b Fs(HISTIGNORE)d
-Ft(and)h Fs(HISTCONTROL)p Ft(.)275 1954 y(When)g(the)g(shell)h(starts)g
+b(F)-8 b(or)43 b(information)f(on)g(using)g(the)g Fm(gnu)150
+762 y Fu(History)31 b(Library)f(in)g(other)g(programs,)g(see)h(the)g
+Fm(gnu)f Fu(Readline)h(Library)f(Man)m(ual.)150 1000
+y Fs(9.1)68 b(Bash)45 b(History)h(F)-11 b(acilities)150
+1159 y Fu(When)44 b(the)g Ft(-o)30 b(history)42 b Fu(option)i(to)h(the)
+f Ft(set)f Fu(builtin)h(is)g(enabled)g(\(see)g(Section)h(4.3.1)h([The)e
+(Set)150 1269 y(Builtin],)32 b(page)g(58\),)h(the)e(shell)h(pro)m
+(vides)f(access)h(to)g(the)f Fr(command)g(history)p Fu(,)h(the)f(list)h
+(of)f(commands)150 1378 y(previously)h(t)m(yp)s(ed.)47
+b(The)33 b(v)-5 b(alue)33 b(of)f(the)h Ft(HISTSIZE)e
+Fu(shell)h(v)-5 b(ariable)34 b(is)f(used)e(as)i(the)g(n)m(um)m(b)s(er)e
+(of)i(com-)150 1488 y(mands)i(to)i(sa)m(v)m(e)h(in)e(a)g(history)h
+(list.)58 b(The)36 b(text)h(of)g(the)f(last)h Ft($HISTSIZE)d
+Fu(commands)i(\(default)g(500\))150 1597 y(is)h(sa)m(v)m(ed.)61
+b(The)36 b(shell)h(stores)h(eac)m(h)g(command)e(in)h(the)g(history)g
+(list)g(prior)f(to)i(parameter)f(and)f(v)-5 b(ari-)150
+1707 y(able)33 b(expansion)g(but)f(after)h(history)f(expansion)h(is)g
+(p)s(erformed,)e(sub)5 b(ject)33 b(to)g(the)g(v)-5 b(alues)33
+b(of)g(the)g(shell)150 1817 y(v)-5 b(ariables)31 b Ft(HISTIGNORE)d
+Fu(and)h Ft(HISTCONTROL)p Fu(.)275 1954 y(When)g(the)g(shell)h(starts)g
(up,)f(the)h(history)f(is)h(initialized)h(from)e(the)h(\014le)f(named)g
-(b)m(y)h(the)f Fs(HISTFILE)150 2064 y Ft(v)-5 b(ariable)21
-b(\(default)h(`)p Fs(~/.bash_history)p Ft('\).)34 b(The)20
-b(\014le)h(named)f(b)m(y)h(the)g(v)-5 b(alue)21 b(of)g
-Fs(HISTFILE)d Ft(is)j(truncated,)150 2174 y(if)42 b(necessary)-8
+(b)m(y)h(the)f Ft(HISTFILE)150 2064 y Fu(v)-5 b(ariable)26
+b(\(default)g Ft(~/.bash_history)p Fu(\).)35 b(The)24
+b(\014le)i(named)e(b)m(y)h(the)h(v)-5 b(alue)25 b(of)h
+Ft(HISTFILE)c Fu(is)k(truncated,)150 2174 y(if)42 b(necessary)-8
b(,)45 b(to)e(con)m(tain)g(no)f(more)g(than)f(the)h(n)m(um)m(b)s(er)f
(of)h(lines)g(sp)s(eci\014ed)f(b)m(y)h(the)g(v)-5 b(alue)42
-b(of)g(the)150 2283 y Fs(HISTFILESIZE)28 b Ft(v)-5 b(ariable.)46
+b(of)g(the)150 2283 y Ft(HISTFILESIZE)28 b Fu(v)-5 b(ariable.)46
b(When)31 b(a)h(shell)g(with)g(history)f(enabled)h(exits,)h(the)f(last)
-h Fs($HISTSIZE)c Ft(lines)150 2393 y(are)35 b(copied)g(from)g(the)g
+h Ft($HISTSIZE)c Fu(lines)150 2393 y(are)35 b(copied)g(from)g(the)g
(history)f(list)i(to)f(the)g(\014le)g(named)f(b)m(y)h
-Fs($HISTFILE)p Ft(.)51 b(If)35 b(the)g Fs(histappend)d
-Ft(shell)150 2502 y(option)26 b(is)g(set)g(\(see)h(Section)f(4.2)h
+Ft($HISTFILE)p Fu(.)51 b(If)35 b(the)g Ft(histappend)d
+Fu(shell)150 2502 y(option)26 b(is)g(set)g(\(see)h(Section)f(4.2)h
([Bash)f(Builtins],)h(page)g(48\),)h(the)e(lines)g(are)g(app)s(ended)e
(to)i(the)g(history)150 2612 y(\014le,)36 b(otherwise)f(the)g(history)f
-(\014le)h(is)f(o)m(v)m(erwritten.)55 b(If)34 b Fs(HISTFILE)e
-Ft(is)j(unset,)g(or)g(if)f(the)h(history)f(\014le)h(is)150
+(\014le)h(is)f(o)m(v)m(erwritten.)55 b(If)34 b Ft(HISTFILE)e
+Fu(is)j(unset,)g(or)g(if)f(the)h(history)f(\014le)h(is)150
2721 y(un)m(writable,)f(the)f(history)g(is)g(not)h(sa)m(v)m(ed.)49
b(After)34 b(sa)m(ving)g(the)f(history)-8 b(,)34 b(the)g(history)f
(\014le)g(is)g(truncated)150 2831 y(to)g(con)m(tain)h(no)f(more)g(than)
-f Fs($HISTFILESIZE)d Ft(lines.)48 b(If)33 b Fs(HISTFILESIZE)c
-Ft(is)k(unset,)g(or)f(set)i(to)f(n)m(ull,)h(a)150 2941
+f Ft($HISTFILESIZE)d Fu(lines.)48 b(If)33 b Ft(HISTFILESIZE)c
+Fu(is)k(unset,)g(or)f(set)i(to)f(n)m(ull,)h(a)150 2941
y(non-n)m(umeric)c(v)-5 b(alue,)31 b(or)f(a)h(n)m(umeric)f(v)-5
b(alue)31 b(less)g(than)f(zero,)h(the)g(history)f(\014le)h(is)f(not)h
-(truncated.)275 3078 y(If)g(the)h Fs(HISTTIMEFORMAT)d
-Ft(is)j(set,)h(the)f(time)h(stamp)f(information)g(asso)s(ciated)i(with)
+(truncated.)275 3078 y(If)g(the)h Ft(HISTTIMEFORMAT)d
+Fu(is)j(set,)h(the)f(time)h(stamp)f(information)g(asso)s(ciated)i(with)
e(eac)m(h)h(history)150 3188 y(en)m(try)d(is)h(written)f(to)h(the)f
(history)h(\014le,)f(mark)m(ed)h(with)f(the)g(history)g(commen)m(t)h(c)
m(haracter.)43 b(When)30 b(the)150 3298 y(history)22
(commen)m(t)g(c)m(haracter)h(follo)m(w)m(ed)h(immediately)150
3407 y(b)m(y)30 b(a)h(digit)g(are)g(in)m(terpreted)g(as)f(timestamps)h
(for)f(the)h(previous)f(history)g(line.)275 3545 y(The)19
-b(builtin)h(command)g Fs(fc)g Ft(ma)m(y)h(b)s(e)f(used)f(to)i(list)g
+b(builtin)h(command)g Ft(fc)g Fu(ma)m(y)h(b)s(e)f(used)f(to)i(list)g
(or)g(edit)g(and)e(re-execute)j(a)f(p)s(ortion)f(of)g(the)h(history)150
-3655 y(list.)41 b(The)27 b Fs(history)f Ft(builtin)i(ma)m(y)h(b)s(e)e
+3655 y(list.)41 b(The)27 b Ft(history)f Fu(builtin)i(ma)m(y)h(b)s(e)e
(used)g(to)i(displa)m(y)g(or)f(mo)s(dify)f(the)h(history)g(list)h(and)f
(manipulate)150 3764 y(the)j(history)g(\014le.)42 b(When)31
b(using)f(command-line)h(editing,)h(searc)m(h)f(commands)g(are)g(a)m(v)
-5 b(ailable)33 b(in)e(eac)m(h)150 3874 y(editing)45
b(mo)s(de)g(that)g(pro)m(vide)g(access)h(to)f(the)g(history)f(list)i
(\(see)f(Section)h(8.4.2)g([Commands)e(F)-8 b(or)150
-3983 y(History],)31 b(page)h(117\).)275 4121 y(The)47
+3983 y(History],)31 b(page)h(116\).)275 4121 y(The)47
b(shell)i(allo)m(ws)h(con)m(trol)f(o)m(v)m(er)h(whic)m(h)e(commands)g
(are)h(sa)m(v)m(ed)g(on)f(the)h(history)f(list.)95 b(The)150
-4231 y Fs(HISTCONTROL)25 b Ft(and)j Fs(HISTIGNORE)e Ft(v)-5
+4231 y Ft(HISTCONTROL)25 b Fu(and)j Ft(HISTIGNORE)e Fu(v)-5
b(ariables)29 b(ma)m(y)h(b)s(e)d(set)j(to)f(cause)g(the)g(shell)f(to)i
(sa)m(v)m(e)g(only)f(a)g(subset)150 4340 y(of)e(the)g(commands)f(en)m
-(tered.)40 b(The)26 b Fs(cmdhist)f Ft(shell)i(option,)h(if)f(enabled,)g
+(tered.)40 b(The)26 b Ft(cmdhist)f Fu(shell)i(option,)h(if)f(enabled,)g
(causes)h(the)e(shell)h(to)h(attempt)150 4450 y(to)23
b(sa)m(v)m(e)h(eac)m(h)f(line)g(of)f(a)h(m)m(ulti-line)g(command)f(in)g
(the)h(same)f(history)g(en)m(try)-8 b(,)25 b(adding)d(semicolons)h
(where)150 4560 y(necessary)37 b(to)f(preserv)m(e)h(syn)m(tactic)h
-(correctness.)58 b(The)36 b Fs(lithist)e Ft(shell)i(option)h(causes)g
+(correctness.)58 b(The)36 b Ft(lithist)e Fu(shell)i(option)h(causes)g
(the)f(shell)g(to)150 4669 y(sa)m(v)m(e)25 b(the)e(command)h(with)f(em)
m(b)s(edded)f(newlines)h(instead)h(of)f(semicolons.)40
-b(The)23 b Fs(shopt)e Ft(builtin)i(is)h(used)150 4779
+b(The)23 b Ft(shopt)e Fu(builtin)i(is)h(used)150 4779
y(to)31 b(set)g(these)g(options.)41 b(See)31 b(Section)g(4.2)g([Bash)g
(Builtins],)g(page)g(48,)h(for)e(a)h(description)f(of)h
-Fs(shopt)p Ft(.)150 5016 y Fr(9.2)68 b(Bash)45 b(History)h(Builtins)150
-5176 y Ft(Bash)31 b(pro)m(vides)f(t)m(w)m(o)i(builtin)e(commands)g
+Ft(shopt)p Fu(.)150 5016 y Fs(9.2)68 b(Bash)45 b(History)h(Builtins)150
+5176 y Fu(Bash)31 b(pro)m(vides)f(t)m(w)m(o)i(builtin)e(commands)g
(whic)m(h)g(manipulate)g(the)h(history)f(list)h(and)f(history)g
-(\014le.)150 5340 y Fs(fc)p eop end
-%%Page: 135 141
-TeXDict begin 135 140 bop 150 -116 a Ft(Chapter)30 b(9:)41
-b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(135)870
-299 y Fs(fc)47 b([-e)g Fi(ename)11 b Fs(])46 b([-lnr])g([)p
-Fi(first)11 b Fs(])45 b([)p Fi(last)11 b Fs(])870 408
-y(fc)47 b(-s)g([)p Fi(pat)11 b Fs(=)p Fi(rep)g Fs(])45
-b([)p Fi(command)11 b Fs(])630 557 y Ft(The)22 b(\014rst)g(form)f
-(selects)j(a)f(range)g(of)f(commands)g(from)g Fq(\014rst)i
-Ft(to)f Fq(last)i Ft(from)d(the)h(history)f(list)630
-667 y(and)i(displa)m(ys)h(or)g(edits)h(and)e(re-executes)j(them.)39
-b(Both)25 b Fq(\014rst)h Ft(and)f Fq(last)j Ft(ma)m(y)d(b)s(e)g(sp)s
-(eci\014ed)630 776 y(as)31 b(a)g(string)f(\(to)i(lo)s(cate)h(the)d
+(\014le.)150 5340 y Ft(fc)p eop end
+%%Page: 134 140
+TeXDict begin 134 139 bop 150 -116 a Fu(Chapter)30 b(9:)41
+b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(134)870
+299 y Ft(fc)47 b([-e)g Fj(ename)p Ft(])f([-lnr])g([)p
+Fj(first)p Ft(])g([)p Fj(last)p Ft(])870 408 y(fc)h(-s)g([)p
+Fj(pat)p Ft(=)p Fj(rep)p Ft(])f([)p Fj(command)p Ft(])630
+539 y Fu(The)22 b(\014rst)g(form)f(selects)j(a)f(range)g(of)f(commands)
+g(from)g Fr(\014rst)i Fu(to)f Fr(last)i Fu(from)d(the)h(history)f(list)
+630 648 y(and)i(displa)m(ys)h(or)g(edits)h(and)e(re-executes)j(them.)39
+b(Both)25 b Fr(\014rst)h Fu(and)f Fr(last)j Fu(ma)m(y)d(b)s(e)g(sp)s
+(eci\014ed)630 758 y(as)31 b(a)g(string)f(\(to)i(lo)s(cate)h(the)d
(most)h(recen)m(t)h(command)f(b)s(eginning)e(with)i(that)g(string\))g
-(or)630 886 y(as)d(a)g(n)m(um)m(b)s(er)f(\(an)h(index)f(in)m(to)i(the)f
+(or)630 867 y(as)d(a)g(n)m(um)m(b)s(er)f(\(an)h(index)f(in)m(to)i(the)f
(history)g(list,)h(where)e(a)h(negativ)m(e)i(n)m(um)m(b)s(er)d(is)h
-(used)f(as)630 996 y(an)g(o\013set)i(from)e(the)h(curren)m(t)f(command)
-h(n)m(um)m(b)s(er\).)39 b(If)27 b Fq(last)j Ft(is)e(not)f(sp)s
-(eci\014ed)g(it)h(is)g(set)g(to)630 1105 y Fq(\014rst)r
-Ft(.)47 b(If)32 b Fq(\014rst)i Ft(is)e(not)h(sp)s(eci\014ed)f(it)h(is)g
-(set)g(to)h(the)e(previous)g(command)h(for)f(editing)i(and)630
-1215 y Fp(\000)p Ft(16)g(for)g(listing.)51 b(If)34 b(the)f(`)p
-Fs(-l)p Ft(')h(\015ag)g(is)g(giv)m(en,)i(the)d(commands)h(are)g(listed)
-g(on)g(standard)630 1324 y(output.)40 b(The)29 b(`)p
-Fs(-n)p Ft(')h(\015ag)g(suppresses)e(the)i(command)f(n)m(um)m(b)s(ers)g
-(when)f(listing.)42 b(The)29 b(`)p Fs(-r)p Ft(')630 1434
-y(\015ag)35 b(rev)m(erses)f(the)h(order)e(of)i(the)f(listing.)53
-b(Otherwise,)35 b(the)f(editor)h(giv)m(en)g(b)m(y)f Fq(ename)40
-b Ft(is)630 1543 y(in)m(v)m(ok)m(ed)33 b(on)f(a)g(\014le)g(con)m
-(taining)h(those)f(commands.)44 b(If)31 b Fq(ename)38
-b Ft(is)31 b(not)h(giv)m(en,)i(the)d(v)-5 b(alue)630
-1653 y(of)29 b(the)g(follo)m(wing)i(v)-5 b(ariable)29
-b(expansion)g(is)g(used:)39 b Fs(${FCEDIT:-${EDITOR:-vi}})p
-Ft(.)34 b(This)630 1763 y(sa)m(ys)g(to)g(use)f(the)h(v)-5
-b(alue)34 b(of)f(the)h Fs(FCEDIT)e Ft(v)-5 b(ariable)34
+(used)f(as)630 977 y(an)g(o\013set)i(from)e(the)h(curren)m(t)f(command)
+h(n)m(um)m(b)s(er\).)39 b(If)27 b Fr(last)j Fu(is)e(not)f(sp)s
+(eci\014ed)g(it)h(is)g(set)g(to)630 1087 y Fr(\014rst)p
+Fu(.)47 b(If)32 b Fr(\014rst)i Fu(is)f(not)g(sp)s(eci\014ed)f(it)h(is)g
+(set)g(to)h(the)f(previous)f(command)h(for)f(editing)i(and)630
+1196 y Fq(\000)p Fu(16)j(for)g(listing.)61 b(If)36 b(the)h
+Ft(-l)f Fu(\015ag)i(is)e(giv)m(en,)k(the)d(commands)f(are)i(listed)f
+(on)g(standard)630 1306 y(output.)59 b(The)36 b Ft(-n)h
+Fu(\015ag)g(suppresses)e(the)h(command)h(n)m(um)m(b)s(ers)e(when)h
+(listing.)60 b(The)37 b Ft(-r)630 1415 y Fu(\015ag)e(rev)m(erses)f(the)
+h(order)e(of)i(the)f(listing.)53 b(Otherwise,)35 b(the)f(editor)h(giv)m
+(en)g(b)m(y)f Fr(ename)40 b Fu(is)630 1525 y(in)m(v)m(ok)m(ed)33
+b(on)f(a)g(\014le)g(con)m(taining)h(those)f(commands.)44
+b(If)31 b Fr(ename)38 b Fu(is)31 b(not)h(giv)m(en,)i(the)d(v)-5
+b(alue)630 1634 y(of)29 b(the)g(follo)m(wing)i(v)-5 b(ariable)29
+b(expansion)g(is)g(used:)39 b Ft(${FCEDIT:-${EDITOR:-vi}})p
+Fu(.)34 b(This)630 1744 y(sa)m(ys)g(to)g(use)f(the)h(v)-5
+b(alue)34 b(of)f(the)h Ft(FCEDIT)e Fu(v)-5 b(ariable)34
b(if)f(set,)i(or)f(the)f(v)-5 b(alue)34 b(of)g(the)g
-Fs(EDITOR)630 1872 y Ft(v)-5 b(ariable)40 b(if)e(that)i(is)f(set,)i(or)
-e Fs(vi)f Ft(if)h(neither)g(is)g(set.)66 b(When)39 b(editing)g(is)g
-(complete,)k(the)630 1982 y(edited)31 b(commands)f(are)g(ec)m(ho)s(ed)h
-(and)f(executed.)630 2131 y(In)k(the)g(second)g(form,)h
-Fq(command)j Ft(is)c(re-executed)i(after)f(eac)m(h)g(instance)g(of)f
-Fq(pat)j Ft(in)d(the)630 2240 y(selected)e(command)e(is)h(replaced)g(b)
-m(y)f Fq(rep)s Ft(.)40 b Fq(command)34 b Ft(is)c(in)m(tepreted)h(the)g
-(same)g(as)g Fq(\014rst)630 2350 y Ft(ab)s(o)m(v)m(e.)630
-2498 y(A)g(useful)f(alias)i(to)g(use)e(with)h(the)g Fs(fc)f
-Ft(command)h(is)g Fs(r='fc)e(-s')p Ft(,)h(so)h(that)h(t)m(yping)f(`)p
-Fs(r)f(cc)p Ft(')630 2608 y(runs)35 b(the)h(last)h(command)f(b)s
-(eginning)g(with)g Fs(cc)f Ft(and)h(t)m(yping)g(`)p Fs(r)p
-Ft(')h(re-executes)h(the)e(last)630 2718 y(command)30
+Ft(EDITOR)630 1854 y Fu(v)-5 b(ariable)40 b(if)e(that)i(is)f(set,)i(or)
+e Ft(vi)f Fu(if)h(neither)g(is)g(set.)66 b(When)39 b(editing)g(is)g
+(complete,)k(the)630 1963 y(edited)31 b(commands)f(are)g(ec)m(ho)s(ed)h
+(and)f(executed.)630 2093 y(In)k(the)g(second)g(form,)h
+Fr(command)j Fu(is)c(re-executed)i(after)f(eac)m(h)g(instance)g(of)f
+Fr(pat)j Fu(in)d(the)630 2203 y(selected)e(command)e(is)h(replaced)g(b)
+m(y)f Fr(rep)p Fu(.)41 b Fr(command)34 b Fu(is)c(in)m(tepreted)h(the)g
+(same)g(as)g Fr(\014rst)630 2313 y Fu(ab)s(o)m(v)m(e.)630
+2443 y(A)g(useful)f(alias)i(to)g(use)e(with)h(the)g Ft(fc)f
+Fu(command)h(is)g Ft(r='fc)e(-s')p Fu(,)h(so)h(that)h(t)m(yping)f(`)p
+Ft(r)f(cc)p Fu(')630 2552 y(runs)35 b(the)h(last)h(command)f(b)s
+(eginning)g(with)g Ft(cc)f Fu(and)h(t)m(yping)g(`)p Ft(r)p
+Fu(')h(re-executes)h(the)e(last)630 2662 y(command)30
b(\(see)h(Section)h(6.6)f([Aliases],)h(page)g(88\).)150
-2906 y Fs(history)870 3054 y(history)46 b([)p Fi(n)11
-b Fs(])870 3164 y(history)46 b(-c)870 3273 y(history)g(-d)h
-Fi(offset)870 3383 y Fs(history)f([-anrw])g([)p Fi(filename)11
-b Fs(])870 3493 y(history)46 b(-ps)h Fi(arg)630 3641
-y Ft(With)26 b(no)g(options,)h(displa)m(y)f(the)g(history)g(list)g
-(with)f(line)h(n)m(um)m(b)s(ers.)38 b(Lines)26 b(pre\014xed)e(with)630
-3751 y(a)35 b(`)p Fs(*)p Ft(')g(ha)m(v)m(e)h(b)s(een)e(mo)s(di\014ed.)
-53 b(An)34 b(argumen)m(t)h(of)g Fq(n)f Ft(lists)i(only)f(the)g(last)g
-Fq(n)f Ft(lines.)54 b(If)35 b(the)630 3861 y(shell)30
-b(v)-5 b(ariable)31 b Fs(HISTTIMEFORMAT)26 b Ft(is)k(set)h(and)e(not)i
+2813 y Ft(history)870 2943 y(history)46 b([)p Fj(n)p
+Ft(])870 3052 y(history)g(-c)870 3162 y(history)g(-d)h
+Fj(offset)870 3271 y Ft(history)f([-anrw])g([)p Fj(filename)p
+Ft(])870 3381 y(history)g(-ps)h Fj(arg)630 3511 y Fu(With)26
+b(no)g(options,)h(displa)m(y)f(the)g(history)g(list)g(with)f(line)h(n)m
+(um)m(b)s(ers.)38 b(Lines)26 b(pre\014xed)e(with)630
+3621 y(a)35 b(`)p Ft(*)p Fu(')g(ha)m(v)m(e)h(b)s(een)e(mo)s(di\014ed.)
+53 b(An)34 b(argumen)m(t)h(of)g Fr(n)f Fu(lists)i(only)f(the)g(last)g
+Fr(n)f Fu(lines.)54 b(If)35 b(the)630 3730 y(shell)30
+b(v)-5 b(ariable)31 b Ft(HISTTIMEFORMAT)26 b Fu(is)k(set)h(and)e(not)i
(n)m(ull,)f(it)h(is)f(used)f(as)h(a)h(format)f(string)630
-3970 y(for)36 b Fq(strftime)41 b Ft(to)36 b(displa)m(y)g(the)g(time)h
+3840 y(for)36 b Fr(strftime)41 b Fu(to)36 b(displa)m(y)g(the)g(time)h
(stamp)f(asso)s(ciated)h(with)f(eac)m(h)h(displa)m(y)m(ed)f(history)630
-4080 y(en)m(try)-8 b(.)47 b(No)33 b(in)m(terv)m(ening)g(blank)f(is)g
+3950 y(en)m(try)-8 b(.)47 b(No)33 b(in)m(terv)m(ening)g(blank)f(is)g
(prin)m(ted)g(b)s(et)m(w)m(een)h(the)g(formatted)f(time)h(stamp)g(and)
-630 4189 y(the)e(history)f(line.)630 4338 y(Options,)g(if)h(supplied,)e
-(ha)m(v)m(e)i(the)g(follo)m(wing)h(meanings:)630 4526
-y Fs(-c)384 b Ft(Clear)23 b(the)g(history)g(list.)39
+630 4059 y(the)e(history)f(line.)630 4189 y(Options,)g(if)h(supplied,)e
+(ha)m(v)m(e)i(the)g(follo)m(wing)h(meanings:)630 4340
+y Ft(-c)384 b Fu(Clear)23 b(the)g(history)g(list.)39
b(This)22 b(ma)m(y)i(b)s(e)e(com)m(bined)h(with)f(the)h(other)h
-(options)1110 4635 y(to)31 b(replace)g(the)g(history)f(list)h
-(completely)-8 b(.)630 4823 y Fs(-d)30 b Fi(offset)1110
-4933 y Ft(Delete)25 b(the)f(history)f(en)m(try)g(at)h(p)s(osition)f
-Fq(o\013set)r Ft(.)39 b Fq(o\013set)26 b Ft(should)c(b)s(e)h(sp)s
-(eci\014ed)1110 5043 y(as)31 b(it)g(app)s(ears)e(when)h(the)g(history)g
-(is)h(displa)m(y)m(ed.)630 5230 y Fs(-a)384 b Ft(App)s(end)35
-b(the)i(new)g(history)g(lines)g(\(history)g(lines)g(en)m(tered)h(since)
-f(the)g(b)s(e-)1110 5340 y(ginning)30 b(of)h(the)f(curren)m(t)g(Bash)h
-(session\))g(to)g(the)g(history)f(\014le.)p eop end
-%%Page: 136 142
-TeXDict begin 136 141 bop 150 -116 a Ft(Chapter)30 b(9:)41
-b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(136)630
-299 y Fs(-n)384 b Ft(App)s(end)32 b(the)i(history)f(lines)h(not)g
-(already)g(read)g(from)f(the)h(history)f(\014le)h(to)1110
-408 y(the)26 b(curren)m(t)f(history)g(list.)40 b(These)25
+(options)1110 4450 y(to)31 b(replace)g(the)g(history)f(list)h
+(completely)-8 b(.)630 4600 y Ft(-d)30 b Fj(offset)66
+b Fu(Delete)25 b(the)f(history)f(en)m(try)h(at)g(p)s(osition)f
+Fr(o\013set)p Fu(.)39 b Fr(o\013set)27 b Fu(should)22
+b(b)s(e)h(sp)s(eci\014ed)1110 4710 y(as)31 b(it)g(app)s(ears)e(when)h
+(the)g(history)g(is)h(displa)m(y)m(ed.)630 4861 y Ft(-a)384
+b Fu(App)s(end)35 b(the)i(new)g(history)g(lines)g(\(history)g(lines)g
+(en)m(tered)h(since)f(the)g(b)s(e-)1110 4970 y(ginning)30
+b(of)h(the)f(curren)m(t)g(Bash)h(session\))g(to)g(the)g(history)f
+(\014le.)630 5121 y Ft(-n)384 b Fu(App)s(end)32 b(the)i(history)f
+(lines)h(not)g(already)g(read)g(from)f(the)h(history)f(\014le)h(to)1110
+5230 y(the)26 b(curren)m(t)f(history)g(list.)40 b(These)25
b(are)h(lines)g(app)s(ended)e(to)i(the)f(history)h(\014le)1110
-518 y(since)31 b(the)f(b)s(eginning)g(of)g(the)h(curren)m(t)f(Bash)h
-(session.)630 690 y Fs(-r)384 b Ft(Read)31 b(the)f(history)g(\014le)h
-(and)f(app)s(end)e(its)j(con)m(ten)m(ts)h(to)f(the)g(history)f(list.)
-630 863 y Fs(-w)384 b Ft(W)-8 b(rite)32 b(out)e(the)h(curren)m(t)f
-(history)g(list)h(to)h(the)e(history)g(\014le.)630 1035
-y Fs(-p)384 b Ft(P)m(erform)31 b(history)f(substitution)h(on)f(the)h
-Fq(arg)8 b Ft(s)31 b(and)f(displa)m(y)h(the)f(result)h(on)1110
-1145 y(the)d(standard)f(output,)i(without)f(storing)g(the)g(results)g
-(in)g(the)g(history)g(list.)630 1317 y Fs(-s)384 b Ft(The)30
-b Fq(arg)8 b Ft(s)30 b(are)h(added)f(to)h(the)f(end)g(of)h(the)f
+5340 y(since)31 b(the)f(b)s(eginning)g(of)g(the)h(curren)m(t)f(Bash)h
+(session.)p eop end
+%%Page: 135 141
+TeXDict begin 135 140 bop 150 -116 a Fu(Chapter)30 b(9:)41
+b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(135)630
+299 y Ft(-r)384 b Fu(Read)31 b(the)f(history)g(\014le)h(and)f(app)s
+(end)e(its)j(con)m(ten)m(ts)h(to)f(the)g(history)f(list.)630
+447 y Ft(-w)384 b Fu(W)-8 b(rite)32 b(out)e(the)h(curren)m(t)f(history)
+g(list)h(to)h(the)e(history)g(\014le.)630 595 y Ft(-p)384
+b Fu(P)m(erform)31 b(history)f(substitution)h(on)f(the)h
+Fr(arg)8 b Fu(s)31 b(and)f(displa)m(y)h(the)f(result)h(on)1110
+705 y(the)d(standard)f(output,)i(without)f(storing)g(the)g(results)g
+(in)g(the)g(history)g(list.)630 853 y Ft(-s)384 b Fu(The)30
+b Fr(arg)8 b Fu(s)30 b(are)h(added)f(to)h(the)f(end)g(of)h(the)f
(history)h(list)g(as)f(a)h(single)g(en)m(try)-8 b(.)630
-1489 y(When)24 b(an)m(y)h(of)f(the)h(`)p Fs(-w)p Ft(',)h(`)p
-Fs(-r)p Ft(',)f(`)p Fs(-a)p Ft(',)h(or)f(`)p Fs(-n)p
-Ft(')f(options)g(is)h(used,)g(if)f Fq(\014lename)30 b
-Ft(is)24 b(giv)m(en,)j(then)630 1599 y(it)32 b(is)g(used)f(as)h(the)f
-(history)h(\014le.)45 b(If)31 b(not,)h(then)g(the)f(v)-5
-b(alue)32 b(of)g(the)g Fs(HISTFILE)d Ft(v)-5 b(ariable)33
-b(is)630 1709 y(used.)150 1961 y Fr(9.3)68 b(History)46
-b(Expansion)150 2120 y Ft(The)f(History)h(library)e(pro)m(vides)i(a)f
-(history)g(expansion)g(feature)h(that)g(is)f(similar)h(to)g(the)f
-(history)150 2230 y(expansion)g(pro)m(vided)f(b)m(y)h
-Fs(csh)p Ft(.)83 b(This)44 b(section)i(describ)s(es)e(the)h(syn)m(tax)h
-(used)e(to)i(manipulate)f(the)150 2339 y(history)30 b(information.)275
-2487 y(History)h(expansions)f(in)m(tro)s(duce)g(w)m(ords)g(from)g(the)h
+1001 y(When)26 b(an)m(y)h(of)f(the)g Ft(-w)p Fu(,)h Ft(-r)p
+Fu(,)g Ft(-a)p Fu(,)g(or)f Ft(-n)f Fu(options)i(is)f(used,)h(if)f
+Fr(\014lename)32 b Fu(is)26 b(giv)m(en,)i(then)e(it)h(is)630
+1111 y(used)h(as)g(the)h(history)f(\014le.)40 b(If)28
+b(not,)i(then)e(the)g(v)-5 b(alue)29 b(of)g(the)g Ft(HISTFILE)d
+Fu(v)-5 b(ariable)29 b(is)f(used.)150 1332 y Fs(9.3)68
+b(History)46 b(Expansion)150 1492 y Fu(The)f(History)h(library)e(pro)m
+(vides)i(a)f(history)g(expansion)g(feature)h(that)g(is)f(similar)h(to)g
+(the)f(history)150 1601 y(expansion)g(pro)m(vided)f(b)m(y)h
+Ft(csh)p Fu(.)83 b(This)44 b(section)i(describ)s(es)e(the)h(syn)m(tax)h
+(used)e(to)i(manipulate)f(the)150 1711 y(history)30 b(information.)275
+1840 y(History)h(expansions)f(in)m(tro)s(duce)g(w)m(ords)g(from)g(the)h
(history)f(list)h(in)m(to)g(the)g(input)f(stream,)h(making)150
-2596 y(it)g(easy)g(to)g(rep)s(eat)g(commands,)f(insert)g(the)h(argumen)
+1949 y(it)g(easy)g(to)g(rep)s(eat)g(commands,)f(insert)g(the)h(argumen)
m(ts)f(to)h(a)g(previous)f(command)g(in)m(to)i(the)e(curren)m(t)150
-2706 y(input)f(line,)i(or)g(\014x)f(errors)f(in)h(previous)g(commands)g
-(quic)m(kly)-8 b(.)275 2853 y(History)27 b(expansion)f(tak)m(es)i
+2059 y(input)f(line,)i(or)g(\014x)f(errors)f(in)h(previous)g(commands)g
+(quic)m(kly)-8 b(.)275 2188 y(History)27 b(expansion)f(tak)m(es)i
(place)f(in)f(t)m(w)m(o)i(parts.)39 b(The)26 b(\014rst)g(is)g(to)h
-(determine)g(whic)m(h)f(line)h(from)f(the)150 2963 y(history)i(list)g
+(determine)g(whic)m(h)f(line)h(from)f(the)150 2297 y(history)i(list)g
(should)f(b)s(e)g(used)g(during)g(substitution.)39 b(The)27
b(second)h(is)g(to)h(select)g(p)s(ortions)e(of)h(that)h(line)150
-3072 y(for)d(inclusion)f(in)m(to)i(the)f(curren)m(t)f(one.)40
+2407 y(for)d(inclusion)f(in)m(to)i(the)f(curren)m(t)f(one.)40
b(The)25 b(line)h(selected)h(from)f(the)g(history)f(is)h(called)h(the)f
-Fq(ev)m(en)m(t)p Ft(,)j(and)150 3182 y(the)21 b(p)s(ortions)g(of)g
+Fr(ev)m(en)m(t)p Fu(,)j(and)150 2517 y(the)21 b(p)s(ortions)g(of)g
(that)h(line)f(that)h(are)g(acted)g(up)s(on)e(are)h(called)h
-Fq(w)m(ords)p Ft(.)38 b(V)-8 b(arious)21 b Fq(mo)s(di\014ers)j
-Ft(are)e(a)m(v)-5 b(ailable)150 3292 y(to)35 b(manipulate)f(the)g
+Fr(w)m(ords)p Fu(.)38 b(V)-8 b(arious)21 b Fr(mo)s(di\014ers)j
+Fu(are)e(a)m(v)-5 b(ailable)150 2626 y(to)35 b(manipulate)f(the)g
(selected)i(w)m(ords.)51 b(The)33 b(line)h(is)g(brok)m(en)g(in)m(to)h
-(w)m(ords)e(in)h(the)g(same)h(fashion)e(that)150 3401
+(w)m(ords)e(in)h(the)g(same)h(fashion)e(that)150 2736
y(Bash)i(do)s(es,)h(so)f(that)h(sev)m(eral)g(w)m(ords)e(surrounded)f(b)
m(y)i(quotes)g(are)g(considered)g(one)g(w)m(ord.)54 b(History)150
-3511 y(expansions)34 b(are)g(in)m(tro)s(duced)f(b)m(y)h(the)g(app)s
+2845 y(expansions)34 b(are)g(in)m(tro)s(duced)f(b)m(y)h(the)g(app)s
(earance)g(of)g(the)g(history)g(expansion)g(c)m(haracter,)i(whic)m(h)e
-(is)150 3620 y(`)p Fs(!)p Ft(')d(b)m(y)f(default.)41
-b(Only)29 b(`)p Fs(\\)p Ft(')i(and)f(`)p Fs(')p Ft(')g(ma)m(y)h(b)s(e)f
+(is)150 2955 y(`)p Ft(!)p Fu(')d(b)m(y)f(default.)41
+b(Only)29 b(`)p Ft(\\)p Fu(')i(and)f(`)p Ft(')p Fu(')g(ma)m(y)h(b)s(e)f
(used)g(to)h(escap)s(e)g(the)f(history)g(expansion)h(c)m(haracter.)275
-3768 y(Sev)m(eral)40 b(shell)g(options)g(settable)h(with)e(the)h
-Fs(shopt)e Ft(builtin)h(\(see)h(Section)h(4.2)f([Bash)g(Builtins],)150
-3877 y(page)32 b(48\))h(ma)m(y)f(b)s(e)f(used)g(to)i(tailor)g(the)e(b)s
+3084 y(Sev)m(eral)40 b(shell)g(options)g(settable)h(with)e(the)h
+Ft(shopt)e Fu(builtin)h(\(see)h(Section)h(4.2)f([Bash)g(Builtins],)150
+3194 y(page)32 b(48\))h(ma)m(y)f(b)s(e)f(used)g(to)i(tailor)g(the)e(b)s
(eha)m(vior)h(of)g(history)g(expansion.)44 b(If)31 b(the)h
-Fs(histverify)d Ft(shell)150 3987 y(option)39 b(is)f(enabled,)i(and)e
+Ft(histverify)d Fu(shell)150 3303 y(option)39 b(is)f(enabled,)i(and)e
(Readline)g(is)h(b)s(eing)e(used,)j(history)e(substitutions)g(are)g
-(not)h(immediately)150 4097 y(passed)30 b(to)h(the)g(shell)g(parser.)40
+(not)h(immediately)150 3413 y(passed)30 b(to)h(the)g(shell)g(parser.)40
b(Instead,)30 b(the)h(expanded)f(line)h(is)f(reloaded)h(in)m(to)h(the)e
-(Readline)h(editing)150 4206 y(bu\013er)e(for)i(further)e(mo)s
+(Readline)h(editing)150 3522 y(bu\013er)e(for)i(further)e(mo)s
(di\014cation.)41 b(If)30 b(Readline)h(is)f(b)s(eing)g(used,)g(and)g
-(the)g Fs(histreedit)e Ft(shell)i(option)150 4316 y(is)k(enabled,)h(a)g
+(the)g Ft(histreedit)e Fu(shell)i(option)150 3632 y(is)k(enabled,)h(a)g
(failed)g(history)f(expansion)g(will)g(b)s(e)g(reloaded)g(in)m(to)h
-(the)g(Readline)f(editing)h(bu\013er)e(for)150 4425 y(correction.)74
-b(The)41 b(`)p Fs(-p)p Ft(')g(option)g(to)h(the)f Fs(history)f
-Ft(builtin)g(command)h(ma)m(y)h(b)s(e)e(used)h(to)g(see)h(what)150
-4535 y(a)c(history)g(expansion)f(will)h(do)f(b)s(efore)h(using)f(it.)63
-b(The)37 b(`)p Fs(-s)p Ft(')g(option)h(to)h(the)f Fs(history)d
-Ft(builtin)i(ma)m(y)150 4645 y(b)s(e)c(used)h(to)g(add)g(commands)f(to)
-i(the)f(end)g(of)g(the)g(history)g(list)h(without)f(actually)i
-(executing)f(them,)150 4754 y(so)j(that)h(they)f(are)g(a)m(v)-5
-b(ailable)40 b(for)e(subsequen)m(t)f(recall.)65 b(This)37
-b(is)h(most)g(useful)g(in)f(conjunction)h(with)150 4864
-y(Readline.)275 5011 y(The)33 b(shell)h(allo)m(ws)h(con)m(trol)h(of)e
-(the)g(v)-5 b(arious)34 b(c)m(haracters)h(used)f(b)m(y)f(the)h(history)
-g(expansion)g(mec)m(h-)150 5121 y(anism)h(with)g(the)g
-Fs(histchars)d Ft(v)-5 b(ariable,)38 b(as)d(explained)g(ab)s(o)m(v)m(e)
-i(\(see)f(Section)f(5.2)i([Bash)e(V)-8 b(ariables],)150
-5230 y(page)32 b(69\).)44 b(The)31 b(shell)g(uses)g(the)g(history)g
-(commen)m(t)i(c)m(haracter)f(to)g(mark)f(history)g(timestamps)h(when)
-150 5340 y(writing)e(the)h(history)f(\014le.)p eop end
-%%Page: 137 143
-TeXDict begin 137 142 bop 150 -116 a Ft(Chapter)30 b(9:)41
-b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(137)150
-299 y Fj(9.3.1)63 b(Ev)m(en)m(t)39 b(Designators)150
-446 y Ft(An)32 b(ev)m(en)m(t)j(designator)e(is)g(a)g(reference)g(to)h
-(a)f(command)f(line)h(en)m(try)g(in)g(the)g(history)g(list.)48
-b(Unless)33 b(the)150 555 y(reference)e(is)f(absolute,)i(ev)m(en)m(ts)f
-(are)g(relativ)m(e)i(to)e(the)f(curren)m(t)g(p)s(osition)h(in)f(the)h
-(history)f(list.)150 712 y Fs(!)432 b Ft(Start)34 b(a)f(history)h
-(substitution,)g(except)g(when)f(follo)m(w)m(ed)i(b)m(y)e(a)h(space,)h
-(tab,)f(the)g(end)f(of)630 822 y(the)i(line,)g(`)p Fs(=)p
-Ft(')g(or)f(`)p Fs(\()p Ft(')h(\(when)e(the)i Fs(extglob)d
-Ft(shell)j(option)f(is)h(enabled)f(using)g(the)g Fs(shopt)630
-931 y Ft(builtin\).)150 1088 y Fs(!)p Fi(n)384 b Ft(Refer)30
-b(to)i(command)e(line)g Fq(n)p Ft(.)150 1245 y Fs(!-)p
-Fi(n)336 b Ft(Refer)30 b(to)i(the)e(command)g Fq(n)g
-Ft(lines)h(bac)m(k.)150 1401 y Fs(!!)384 b Ft(Refer)30
-b(to)i(the)e(previous)g(command.)40 b(This)30 b(is)g(a)h(synon)m(ym)f
-(for)g(`)p Fs(!-1)p Ft('.)150 1558 y Fs(!)p Fi(string)144
-b Ft(Refer)25 b(to)h(the)f(most)h(recen)m(t)g(command)f(preceding)g
-(the)g(curren)m(t)g(p)s(osition)g(in)g(the)g(history)630
-1668 y(list)31 b(starting)g(with)f Fq(string)8 b Ft(.)150
-1824 y Fs(!?)p Fi(string)j Fs([?])630 1934 y Ft(Refer)25
-b(to)h(the)f(most)h(recen)m(t)g(command)f(preceding)g(the)g(curren)m(t)
-g(p)s(osition)g(in)g(the)g(history)630 2044 y(list)32
-b(con)m(taining)h Fq(string)8 b Ft(.)43 b(The)31 b(trailing)h(`)p
-Fs(?)p Ft(')f(ma)m(y)h(b)s(e)f(omitted)h(if)f(the)h Fq(string)39
-b Ft(is)31 b(follo)m(w)m(ed)630 2153 y(immediately)h(b)m(y)e(a)h
-(newline.)150 2310 y Fs(^)p Fi(string1)11 b Fs(^)p Fi(string2)g
-Fs(^)630 2420 y Ft(Quic)m(k)31 b(Substitution.)43 b(Rep)s(eat)31
-b(the)g(last)h(command,)g(replacing)f Fq(string1)39 b
-Ft(with)31 b Fq(string2)7 b Ft(.)630 2529 y(Equiv)-5
-b(alen)m(t)31 b(to)g Fs(!!:s/)p Fi(string1)11 b Fs(/)p
-Fi(string2)g Fs(/)p Ft(.)150 2686 y Fs(!#)384 b Ft(The)30
-b(en)m(tire)h(command)f(line)h(t)m(yp)s(ed)f(so)h(far.)150
-2882 y Fj(9.3.2)63 b(W)-10 b(ord)41 b(Designators)150
-3029 y Ft(W)-8 b(ord)27 b(designators)h(are)g(used)e(to)i(select)h
+(the)g(Readline)f(editing)h(bu\013er)e(for)150 3741 y(correction.)68
+b(The)38 b Ft(-p)h Fu(option)g(to)h(the)f Ft(history)e
+Fu(builtin)i(command)f(ma)m(y)i(b)s(e)e(used)g(to)i(see)g(what)f(a)150
+3851 y(history)f(expansion)f(will)h(do)g(b)s(efore)f(using)h(it.)63
+b(The)37 b Ft(-s)g Fu(option)i(to)f(the)g Ft(history)e
+Fu(builtin)h(ma)m(y)i(b)s(e)150 3961 y(used)21 b(to)i(add)f(commands)g
+(to)g(the)h(end)e(of)i(the)f(history)g(list)h(without)f(actually)i
+(executing)f(them,)h(so)e(that)150 4070 y(they)31 b(are)f(a)m(v)-5
+b(ailable)33 b(for)d(subsequen)m(t)g(recall.)42 b(This)29
+b(is)i(most)g(useful)e(in)h(conjunction)h(with)f(Readline.)275
+4199 y(The)j(shell)h(allo)m(ws)h(con)m(trol)h(of)e(the)g(v)-5
+b(arious)34 b(c)m(haracters)h(used)f(b)m(y)f(the)h(history)g(expansion)
+g(mec)m(h-)150 4309 y(anism)h(with)g(the)g Ft(histchars)d
+Fu(v)-5 b(ariable,)38 b(as)d(explained)g(ab)s(o)m(v)m(e)i(\(see)f
+(Section)f(5.2)i([Bash)e(V)-8 b(ariables],)150 4418 y(page)32
+b(69\).)44 b(The)31 b(shell)g(uses)g(the)g(history)g(commen)m(t)i(c)m
+(haracter)f(to)g(mark)f(history)g(timestamps)h(when)150
+4528 y(writing)e(the)h(history)f(\014le.)150 4716 y Fk(9.3.1)63
+b(Ev)m(en)m(t)39 b(Designators)150 4863 y Fu(An)32 b(ev)m(en)m(t)j
+(designator)e(is)g(a)g(reference)g(to)h(a)f(command)f(line)h(en)m(try)g
+(in)g(the)g(history)g(list.)48 b(Unless)33 b(the)150
+4973 y(reference)e(is)f(absolute,)i(ev)m(en)m(ts)f(are)g(relativ)m(e)i
+(to)e(the)f(curren)m(t)g(p)s(osition)h(in)f(the)h(history)f(list.)150
+5121 y Ft(!)432 b Fu(Start)34 b(a)f(history)h(substitution,)g(except)g
+(when)f(follo)m(w)m(ed)i(b)m(y)e(a)h(space,)h(tab,)f(the)g(end)f(of)630
+5230 y(the)i(line,)g(`)p Ft(=)p Fu(')g(or)f(`)p Ft(\()p
+Fu(')h(\(when)e(the)i Ft(extglob)d Fu(shell)j(option)f(is)h(enabled)f
+(using)g(the)g Ft(shopt)630 5340 y Fu(builtin\).)p eop
+end
+%%Page: 136 142
+TeXDict begin 136 141 bop 150 -116 a Fu(Chapter)30 b(9:)41
+b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(136)150
+299 y Ft(!)p Fj(n)384 b Fu(Refer)30 b(to)i(command)e(line)g
+Fr(n)p Fu(.)150 460 y Ft(!-)p Fj(n)336 b Fu(Refer)30
+b(to)i(the)e(command)g Fr(n)g Fu(lines)h(bac)m(k.)150
+622 y Ft(!!)384 b Fu(Refer)30 b(to)i(the)e(previous)g(command.)40
+b(This)30 b(is)g(a)h(synon)m(ym)f(for)g(`)p Ft(!-1)p
+Fu('.)150 784 y Ft(!)p Fj(string)144 b Fu(Refer)25 b(to)h(the)f(most)h
+(recen)m(t)g(command)f(preceding)g(the)g(curren)m(t)g(p)s(osition)g(in)
+g(the)g(history)630 893 y(list)31 b(starting)g(with)f
+Fr(string)p Fu(.)150 1055 y Ft(!?)p Fj(string)p Ft([?])630
+1164 y Fu(Refer)25 b(to)h(the)f(most)h(recen)m(t)g(command)f(preceding)
+g(the)g(curren)m(t)g(p)s(osition)g(in)g(the)g(history)630
+1274 y(list)32 b(con)m(taining)i Fr(string)p Fu(.)45
+b(The)31 b(trailing)i(`)p Ft(?)p Fu(')f(ma)m(y)g(b)s(e)f(omitted)i(if)f
+(the)g Fr(string)39 b Fu(is)32 b(follo)m(w)m(ed)630 1384
+y(immediately)g(b)m(y)e(a)h(newline.)150 1545 y Ft(^)p
+Fj(string1)p Ft(^)p Fj(string2)p Ft(^)630 1655 y Fu(Quic)m(k)h
+(Substitution.)44 b(Rep)s(eat)32 b(the)g(last)h(command,)f(replacing)g
+Fr(string1)40 b Fu(with)31 b Fr(string2)p Fu(.)630 1764
+y(Equiv)-5 b(alen)m(t)31 b(to)g Ft(!!:s/)p Fj(string1)p
+Ft(/)p Fj(string2)p Ft(/)p Fu(.)150 1926 y Ft(!#)384
+b Fu(The)30 b(en)m(tire)h(command)f(line)h(t)m(yp)s(ed)f(so)h(far.)150
+2127 y Fk(9.3.2)63 b(W)-10 b(ord)41 b(Designators)150
+2274 y Fu(W)-8 b(ord)27 b(designators)h(are)g(used)e(to)i(select)h
(desired)d(w)m(ords)h(from)f(the)i(ev)m(en)m(t.)41 b(A)27
-b(`)p Fs(:)p Ft(')g(separates)h(the)f(ev)m(en)m(t)150
-3139 y(sp)s(eci\014cation)38 b(from)e(the)h(w)m(ord)f(designator.)61
+b(`)p Ft(:)p Fu(')g(separates)h(the)f(ev)m(en)m(t)150
+2384 y(sp)s(eci\014cation)38 b(from)e(the)h(w)m(ord)f(designator.)61
b(It)37 b(ma)m(y)h(b)s(e)e(omitted)i(if)e(the)h(w)m(ord)g(designator)g
-(b)s(egins)150 3248 y(with)30 b(a)g(`)p Fs(^)p Ft(',)g(`)p
-Fs($)p Ft(',)g(`)p Fs(*)p Ft(',)h(`)p Fs(-)p Ft(',)f(or)g(`)p
-Fs(\045)p Ft('.)41 b(W)-8 b(ords)30 b(are)g(n)m(um)m(b)s(ered)e(from)i
+(b)s(egins)150 2494 y(with)30 b(a)g(`)p Ft(^)p Fu(',)g(`)p
+Ft($)p Fu(',)g(`)p Ft(*)p Fu(',)h(`)p Ft(-)p Fu(',)f(or)g(`)p
+Ft(\045)p Fu('.)41 b(W)-8 b(ords)30 b(are)g(n)m(um)m(b)s(ered)e(from)i
(the)g(b)s(eginning)f(of)h(the)g(line,)g(with)g(the)150
-3358 y(\014rst)f(w)m(ord)f(b)s(eing)h(denoted)h(b)m(y)f(0)h(\(zero\).)
+2603 y(\014rst)f(w)m(ord)f(b)s(eing)h(denoted)h(b)m(y)f(0)h(\(zero\).)
41 b(W)-8 b(ords)30 b(are)g(inserted)f(in)m(to)h(the)g(curren)m(t)f
-(line)g(separated)h(b)m(y)150 3468 y(single)h(spaces.)275
-3601 y(F)-8 b(or)31 b(example,)150 3758 y Fs(!!)384 b
-Ft(designates)37 b(the)f(preceding)g(command.)57 b(When)35
+(line)g(separated)h(b)m(y)150 2713 y(single)h(spaces.)275
+2849 y(F)-8 b(or)31 b(example,)150 3012 y Ft(!!)384 b
+Fu(designates)37 b(the)f(preceding)g(command.)57 b(When)35
b(y)m(ou)i(t)m(yp)s(e)f(this,)h(the)f(preceding)g(com-)630
-3867 y(mand)30 b(is)g(rep)s(eated)g(in)g(toto.)150 4024
-y Fs(!!:$)288 b Ft(designates)23 b(the)g(last)g(argumen)m(t)g(of)f(the)
+3122 y(mand)30 b(is)g(rep)s(eated)g(in)g(toto.)150 3283
+y Ft(!!:$)288 b Fu(designates)23 b(the)g(last)g(argumen)m(t)g(of)f(the)
h(preceding)f(command.)38 b(This)22 b(ma)m(y)h(b)s(e)e(shortened)630
-4133 y(to)31 b Fs(!$)p Ft(.)150 4290 y Fs(!fi:2)240 b
-Ft(designates)30 b(the)g(second)f(argumen)m(t)h(of)f(the)h(most)f
-(recen)m(t)i(command)e(starting)h(with)f(the)630 4400
-y(letters)j Fs(fi)p Ft(.)275 4556 y(Here)e(are)h(the)g(w)m(ord)f
-(designators:)150 4713 y Fs(0)g(\(zero\))114 b Ft(The)30
-b Fs(0)p Ft(th)g(w)m(ord.)40 b(F)-8 b(or)31 b(man)m(y)g(applications,)h
-(this)e(is)g(the)h(command)f(w)m(ord.)150 4870 y Fi(n)432
-b Ft(The)30 b Fq(n)p Ft(th)g(w)m(ord.)150 5027 y Fs(^)432
-b Ft(The)30 b(\014rst)f(argumen)m(t;)j(that)f(is,)f(w)m(ord)g(1.)150
-5183 y Fs($)432 b Ft(The)30 b(last)h(argumen)m(t.)150
-5340 y Fs(\045)432 b Ft(The)30 b(w)m(ord)g(matc)m(hed)h(b)m(y)f(the)h
-(most)g(recen)m(t)g(`)p Fs(?)p Fi(string)11 b Fs(?)p
-Ft(')28 b(searc)m(h.)p eop end
-%%Page: 138 144
-TeXDict begin 138 143 bop 150 -116 a Ft(Chapter)30 b(9:)41
-b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(138)150
-299 y Fi(x)11 b Fs(-)p Fi(y)325 b Ft(A)30 b(range)h(of)g(w)m(ords;)f(`)
-p Fs(-)p Fi(y)11 b Ft(')30 b(abbreviates)h(`)p Fs(0-)p
-Fi(y)11 b Ft('.)150 458 y Fs(*)432 b Ft(All)28 b(of)g(the)g(w)m(ords,)g
-(except)h(the)e Fs(0)p Ft(th.)40 b(This)27 b(is)g(a)h(synon)m(ym)f(for)
-h(`)p Fs(1-$)p Ft('.)39 b(It)28 b(is)g(not)g(an)f(error)630
-568 y(to)j(use)g(`)p Fs(*)p Ft(')f(if)h(there)g(is)g(just)f(one)h(w)m
+3393 y(to)31 b Ft(!$)p Fu(.)150 3555 y Ft(!fi:2)240 b
+Fu(designates)30 b(the)g(second)f(argumen)m(t)h(of)f(the)h(most)f
+(recen)m(t)i(command)e(starting)h(with)f(the)630 3664
+y(letters)j Ft(fi)p Fu(.)275 3827 y(Here)e(are)h(the)g(w)m(ord)f
+(designators:)150 3990 y Ft(0)g(\(zero\))114 b Fu(The)30
+b Ft(0)p Fu(th)g(w)m(ord.)40 b(F)-8 b(or)31 b(man)m(y)g(applications,)h
+(this)e(is)g(the)h(command)f(w)m(ord.)150 4151 y Fj(n)432
+b Fu(The)30 b Fr(n)p Fu(th)g(w)m(ord.)150 4313 y Ft(^)432
+b Fu(The)30 b(\014rst)f(argumen)m(t;)j(that)f(is,)f(w)m(ord)g(1.)150
+4474 y Ft($)432 b Fu(The)30 b(last)h(argumen)m(t.)150
+4636 y Ft(\045)432 b Fu(The)30 b(w)m(ord)g(matc)m(hed)h(b)m(y)f(the)h
+(most)g(recen)m(t)g(`)p Ft(?)p Fj(string)p Ft(?)p Fu(')e(searc)m(h.)150
+4798 y Fj(x)p Ft(-)p Fj(y)336 b Fu(A)30 b(range)h(of)g(w)m(ords;)f(`)p
+Ft(-)p Fj(y)p Fu(')g(abbreviates)h(`)p Ft(0-)p Fj(y)p
+Fu('.)150 4959 y Ft(*)432 b Fu(All)28 b(of)g(the)g(w)m(ords,)g(except)h
+(the)e Ft(0)p Fu(th.)40 b(This)27 b(is)g(a)h(synon)m(ym)f(for)h(`)p
+Ft(1-$)p Fu('.)39 b(It)28 b(is)g(not)g(an)f(error)630
+5069 y(to)j(use)g(`)p Ft(*)p Fu(')f(if)h(there)g(is)g(just)f(one)h(w)m
(ord)f(in)g(the)h(ev)m(en)m(t;)i(the)d(empt)m(y)i(string)e(is)h
-(returned)e(in)630 677 y(that)j(case.)150 837 y Fi(x)11
-b Fs(*)373 b Ft(Abbreviates)31 b(`)p Fi(x)11 b Fs(-$)p
-Ft(')150 996 y Fi(x)g Fs(-)373 b Ft(Abbreviates)31 b(`)p
-Fi(x)11 b Fs(-$)p Ft(')29 b(lik)m(e)j(`)p Fi(x)11 b Fs(*)p
-Ft(',)30 b(but)g(omits)h(the)f(last)h(w)m(ord.)275 1156
-y(If)i(a)h(w)m(ord)g(designator)g(is)g(supplied)f(without)h(an)g(ev)m
-(en)m(t)h(sp)s(eci\014cation,)h(the)e(previous)f(command)150
-1265 y(is)d(used)g(as)h(the)f(ev)m(en)m(t.)150 1465 y
-Fj(9.3.3)63 b(Mo)s(di\014ers)150 1611 y Ft(After)29 b(the)g(optional)g
-(w)m(ord)g(designator,)g(y)m(ou)g(can)g(add)f(a)h(sequence)g(of)g(one)g
-(or)f(more)h(of)g(the)f(follo)m(wing)150 1721 y(mo)s(di\014ers,)h(eac)m
-(h)j(preceded)e(b)m(y)g(a)h(`)p Fs(:)p Ft('.)150 1880
-y Fs(h)432 b Ft(Remo)m(v)m(e)32 b(a)f(trailing)g(pathname)g(comp)s
-(onen)m(t,)g(lea)m(ving)h(only)e(the)h(head.)150 2040
-y Fs(t)432 b Ft(Remo)m(v)m(e)32 b(all)f(leading)h(pathname)e(comp)s
-(onen)m(ts,)h(lea)m(ving)h(the)e(tail.)150 2199 y Fs(r)432
-b Ft(Remo)m(v)m(e)32 b(a)f(trailing)g(su\016x)f(of)g(the)h(form)f(`)p
-Fs(.)p Fi(suffix)11 b Ft(',)28 b(lea)m(ving)33 b(the)d(basename.)150
-2359 y Fs(e)432 b Ft(Remo)m(v)m(e)32 b(all)f(but)f(the)h(trailing)g
-(su\016x.)150 2518 y Fs(p)432 b Ft(Prin)m(t)30 b(the)h(new)f(command)g
-(but)g(do)g(not)g(execute)i(it.)150 2677 y Fs(q)432 b
-Ft(Quote)31 b(the)f(substituted)g(w)m(ords,)g(escaping)h(further)e
-(substitutions.)150 2837 y Fs(x)432 b Ft(Quote)32 b(the)f(substituted)g
-(w)m(ords)f(as)i(with)f(`)p Fs(q)p Ft(',)h(but)e(break)h(in)m(to)i(w)m
-(ords)d(at)i(spaces,)h(tabs,)630 2946 y(and)d(newlines.)150
-3106 y Fs(s/)p Fi(old)11 b Fs(/)p Fi(new)g Fs(/)630 3215
-y Ft(Substitute)32 b Fq(new)40 b Ft(for)32 b(the)h(\014rst)f(o)s
-(ccurrence)h(of)f Fq(old)37 b Ft(in)32 b(the)h(ev)m(en)m(t)h(line.)48
-b(An)m(y)32 b(delimiter)630 3325 y(ma)m(y)25 b(b)s(e)g(used)f(in)g
-(place)i(of)f(`)p Fs(/)p Ft('.)39 b(The)24 b(delimiter)h(ma)m(y)h(b)s
-(e)e(quoted)h(in)f Fq(old)29 b Ft(and)24 b Fq(new)32
-b Ft(with)25 b(a)630 3435 y(single)j(bac)m(kslash.)40
-b(If)27 b(`)p Fs(&)p Ft(')g(app)s(ears)g(in)g Fq(new)8
-b Ft(,)27 b(it)h(is)f(replaced)h(b)m(y)f Fq(old)t Ft(.)39
-b(A)27 b(single)h(bac)m(kslash)630 3544 y(will)35 b(quote)g(the)g(`)p
-Fs(&)p Ft('.)54 b(The)34 b(\014nal)g(delimiter)i(is)e(optional)i(if)f
-(it)g(is)f(the)h(last)h(c)m(haracter)g(on)630 3654 y(the)31
-b(input)e(line.)150 3813 y Fs(&)432 b Ft(Rep)s(eat)31
-b(the)f(previous)g(substitution.)150 3973 y Fs(g)150
-4082 y(a)432 b Ft(Cause)38 b(c)m(hanges)i(to)f(b)s(e)f(applied)h(o)m(v)
-m(er)h(the)f(en)m(tire)g(ev)m(en)m(t)h(line.)66 b(Used)39
-b(in)f(conjunction)630 4192 y(with)30 b(`)p Fs(s)p Ft(',)h(as)f(in)h
-Fs(gs/)p Fi(old)11 b Fs(/)p Fi(new)g Fs(/)p Ft(,)26 b(or)k(with)h(`)p
-Fs(&)p Ft('.)150 4351 y Fs(G)432 b Ft(Apply)30 b(the)g(follo)m(wing)i
-(`)p Fs(s)p Ft(')f(mo)s(di\014er)e(once)i(to)g(eac)m(h)h(w)m(ord)e(in)g
-(the)g(ev)m(en)m(t.)p eop end
-%%Page: 139 145
-TeXDict begin 139 144 bop 150 -116 a Ft(Chapter)30 b(10:)41
-b(Installing)31 b(Bash)2356 b(139)150 299 y Fo(10)80
-b(Installing)52 b(Bash)150 556 y Ft(This)31 b(c)m(hapter)h(pro)m(vides)
+(returned)e(in)630 5178 y(that)j(case.)150 5340 y Fj(x)p
+Ft(*)384 b Fu(Abbreviates)31 b(`)p Fj(x)p Ft(-$)p Fu(')p
+eop end
+%%Page: 137 143
+TeXDict begin 137 142 bop 150 -116 a Fu(Chapter)30 b(9:)41
+b(Using)30 b(History)h(In)m(teractiv)m(ely)1925 b(137)150
+299 y Fj(x)p Ft(-)384 b Fu(Abbreviates)31 b(`)p Fj(x)p
+Ft(-$)p Fu(')f(lik)m(e)h(`)p Fj(x)p Ft(*)p Fu(',)g(but)f(omits)h(the)f
+(last)h(w)m(ord.)275 458 y(If)i(a)h(w)m(ord)g(designator)g(is)g
+(supplied)f(without)h(an)g(ev)m(en)m(t)h(sp)s(eci\014cation,)h(the)e
+(previous)f(command)150 568 y(is)d(used)g(as)h(the)f(ev)m(en)m(t.)150
+767 y Fk(9.3.3)63 b(Mo)s(di\014ers)150 914 y Fu(After)29
+b(the)g(optional)g(w)m(ord)g(designator,)g(y)m(ou)g(can)g(add)f(a)h
+(sequence)g(of)g(one)g(or)f(more)h(of)g(the)f(follo)m(wing)150
+1024 y(mo)s(di\014ers,)h(eac)m(h)j(preceded)e(b)m(y)g(a)h(`)p
+Ft(:)p Fu('.)150 1183 y Ft(h)432 b Fu(Remo)m(v)m(e)32
+b(a)f(trailing)g(pathname)g(comp)s(onen)m(t,)g(lea)m(ving)h(only)e(the)
+h(head.)150 1342 y Ft(t)432 b Fu(Remo)m(v)m(e)32 b(all)f(leading)h
+(pathname)e(comp)s(onen)m(ts,)h(lea)m(ving)h(the)e(tail.)150
+1502 y Ft(r)432 b Fu(Remo)m(v)m(e)32 b(a)f(trailing)g(su\016x)f(of)g
+(the)h(form)f(`)p Ft(.)p Fj(suffix)p Fu(',)f(lea)m(ving)j(the)f
+(basename.)150 1661 y Ft(e)432 b Fu(Remo)m(v)m(e)32 b(all)f(but)f(the)h
+(trailing)g(su\016x.)150 1821 y Ft(p)432 b Fu(Prin)m(t)30
+b(the)h(new)f(command)g(but)g(do)g(not)g(execute)i(it.)150
+1980 y Ft(q)432 b Fu(Quote)31 b(the)f(substituted)g(w)m(ords,)g
+(escaping)h(further)e(substitutions.)150 2139 y Ft(x)432
+b Fu(Quote)32 b(the)f(substituted)g(w)m(ords)f(as)i(with)f(`)p
+Ft(q)p Fu(',)h(but)e(break)h(in)m(to)i(w)m(ords)d(at)i(spaces,)h(tabs,)
+630 2249 y(and)d(newlines.)150 2408 y Ft(s/)p Fj(old)p
+Ft(/)p Fj(new)p Ft(/)630 2518 y Fu(Substitute)i Fr(new)40
+b Fu(for)32 b(the)h(\014rst)f(o)s(ccurrence)h(of)f Fr(old)37
+b Fu(in)32 b(the)h(ev)m(en)m(t)h(line.)48 b(An)m(y)32
+b(delimiter)630 2628 y(ma)m(y)25 b(b)s(e)g(used)f(in)g(place)i(of)f(`)p
+Ft(/)p Fu('.)39 b(The)24 b(delimiter)h(ma)m(y)h(b)s(e)e(quoted)h(in)f
+Fr(old)29 b Fu(and)24 b Fr(new)32 b Fu(with)25 b(a)630
+2737 y(single)k(bac)m(kslash.)40 b(If)28 b(`)p Ft(&)p
+Fu(')g(app)s(ears)g(in)f Fr(new)p Fu(,)i(it)f(is)h(replaced)f(b)m(y)g
+Fr(old)p Fu(.)40 b(A)28 b(single)h(bac)m(kslash)630 2847
+y(will)35 b(quote)g(the)g(`)p Ft(&)p Fu('.)54 b(The)34
+b(\014nal)g(delimiter)i(is)e(optional)i(if)f(it)g(is)f(the)h(last)h(c)m
+(haracter)g(on)630 2956 y(the)31 b(input)e(line.)150
+3116 y Ft(&)432 b Fu(Rep)s(eat)31 b(the)f(previous)g(substitution.)150
+3275 y Ft(g)150 3385 y(a)432 b Fu(Cause)38 b(c)m(hanges)i(to)f(b)s(e)f
+(applied)h(o)m(v)m(er)h(the)f(en)m(tire)g(ev)m(en)m(t)h(line.)66
+b(Used)39 b(in)f(conjunction)630 3494 y(with)30 b(`)p
+Ft(s)p Fu(',)h(as)f(in)h Ft(gs/)p Fj(old)p Ft(/)p Fj(new)p
+Ft(/)p Fu(,)c(or)j(with)h(`)p Ft(&)p Fu('.)150 3654 y
+Ft(G)432 b Fu(Apply)30 b(the)g(follo)m(wing)i(`)p Ft(s)p
+Fu(')f(mo)s(di\014er)e(once)i(to)g(eac)m(h)h(w)m(ord)e(in)g(the)g(ev)m
+(en)m(t.)p eop end
+%%Page: 138 144
+TeXDict begin 138 143 bop 150 -116 a Fu(Chapter)30 b(10:)41
+b(Installing)31 b(Bash)2356 b(138)150 299 y Fp(10)80
+b(Installing)52 b(Bash)150 556 y Fu(This)31 b(c)m(hapter)h(pro)m(vides)
g(basic)g(instructions)f(for)g(installing)i(Bash)f(on)f(the)h(v)-5
b(arious)31 b(supp)s(orted)f(plat-)150 665 y(forms.)40
-b(The)28 b(distribution)h(supp)s(orts)e(the)j Fl(gnu)f
-Ft(op)s(erating)h(systems,)f(nearly)h(ev)m(ery)g(v)m(ersion)f(of)h
+b(The)28 b(distribution)h(supp)s(orts)e(the)j Fm(gnu)f
+Fu(op)s(erating)h(systems,)f(nearly)h(ev)m(ery)g(v)m(ersion)f(of)h
(Unix,)150 775 y(and)d(sev)m(eral)j(non-Unix)d(systems)h(suc)m(h)g(as)g
(BeOS)g(and)f(In)m(terix.)40 b(Other)28 b(indep)s(enden)m(t)e(p)s(orts)
-h(exist)i(for)150 884 y Fl(ms-dos)p Ft(,)h Fl(os/2)p
-Ft(,)g(and)g(Windo)m(ws)g(platforms.)150 1128 y Fr(10.1)68
-b(Basic)45 b(Installation)150 1288 y Ft(These)30 b(are)h(installation)h
+h(exist)i(for)150 884 y Fm(ms-dos)p Fu(,)h Fm(os/2)p
+Fu(,)g(and)g(Windo)m(ws)g(platforms.)150 1128 y Fs(10.1)68
+b(Basic)45 b(Installation)150 1288 y Fu(These)30 b(are)h(installation)h
(instructions)e(for)h(Bash.)275 1430 y(The)e(simplest)i(w)m(a)m(y)g(to)
-g(compile)h(Bash)e(is:)199 1572 y(1.)61 b Fs(cd)38 b
-Ft(to)h(the)f(directory)h(con)m(taining)h(the)f(source)f(co)s(de)h(and)
-f(t)m(yp)s(e)g(`)p Fs(./configure)p Ft(')e(to)j(con\014gure)330
+g(compile)h(Bash)e(is:)199 1572 y(1.)61 b Ft(cd)38 b
+Fu(to)h(the)f(directory)h(con)m(taining)h(the)f(source)f(co)s(de)h(and)
+f(t)m(yp)s(e)g(`)p Ft(./configure)p Fu(')e(to)j(con\014gure)330
1681 y(Bash)c(for)f(y)m(our)h(system.)54 b(If)34 b(y)m(ou're)h(using)f
-Fs(csh)g Ft(on)g(an)h(old)g(v)m(ersion)g(of)g(System)f(V,)h(y)m(ou)g
+Ft(csh)g Fu(on)g(an)h(old)g(v)m(ersion)g(of)g(System)f(V,)h(y)m(ou)g
(migh)m(t)330 1791 y(need)21 b(to)g(t)m(yp)s(e)g(`)p
-Fs(sh)30 b(./configure)p Ft(')18 b(instead)j(to)g(prev)m(en)m(t)h
-Fs(csh)e Ft(from)g(trying)h(to)g(execute)h Fs(configure)330
-1901 y Ft(itself.)330 2039 y(Running)30 b Fs(configure)f
-Ft(tak)m(es)k(some)e(time.)45 b(While)32 b(running,)e(it)i(prin)m(ts)f
+Ft(sh)30 b(./configure)p Fu(')18 b(instead)j(to)g(prev)m(en)m(t)h
+Ft(csh)e Fu(from)g(trying)h(to)g(execute)h Ft(configure)330
+1901 y Fu(itself.)330 2039 y(Running)30 b Ft(configure)f
+Fu(tak)m(es)k(some)e(time.)45 b(While)32 b(running,)e(it)i(prin)m(ts)f
(messages)h(telling)h(whic)m(h)330 2149 y(features)e(it)g(is)f(c)m(hec)
m(king)i(for.)199 2287 y(2.)61 b(T)m(yp)s(e)30 b(`)p
-Fs(make)p Ft(')g(to)h(compile)g(Bash)g(and)e(build)h(the)g
-Fs(bashbug)f Ft(bug)g(rep)s(orting)h(script.)199 2425
-y(3.)61 b(Optionally)-8 b(,)32 b(t)m(yp)s(e)e(`)p Fs(make)g(tests)p
-Ft(')f(to)i(run)e(the)h(Bash)h(test)g(suite.)199 2563
-y(4.)61 b(T)m(yp)s(e)36 b(`)p Fs(make)29 b(install)p
-Ft(')35 b(to)i(install)h Fs(bash)d Ft(and)h Fs(bashbug)p
-Ft(.)57 b(This)35 b(will)i(also)h(install)f(the)g(man)m(ual)330
+Ft(make)p Fu(')g(to)h(compile)g(Bash)g(and)e(build)h(the)g
+Ft(bashbug)f Fu(bug)g(rep)s(orting)h(script.)199 2425
+y(3.)61 b(Optionally)-8 b(,)32 b(t)m(yp)s(e)e(`)p Ft(make)g(tests)p
+Fu(')f(to)i(run)e(the)h(Bash)h(test)g(suite.)199 2563
+y(4.)61 b(T)m(yp)s(e)36 b(`)p Ft(make)29 b(install)p
+Fu(')35 b(to)i(install)h Ft(bash)d Fu(and)h Ft(bashbug)p
+Fu(.)57 b(This)35 b(will)i(also)h(install)f(the)g(man)m(ual)330
2673 y(pages)31 b(and)f(Info)g(\014le.)275 2844 y(The)20
-b Fs(configure)f Ft(shell)i(script)g(attempts)h(to)g(guess)f(correct)i
+b Ft(configure)f Fu(shell)i(script)g(attempts)h(to)g(guess)f(correct)i
(v)-5 b(alues)21 b(for)g(v)-5 b(arious)21 b(system-dep)s(enden)m(t)150
-2953 y(v)-5 b(ariables)44 b(used)f(during)g(compilation.)82
-b(It)43 b(uses)h(those)g(v)-5 b(alues)44 b(to)g(create)h(a)g(`)p
-Fs(Makefile)p Ft(')c(in)j(eac)m(h)150 3063 y(directory)25
-b(of)g(the)g(pac)m(k)-5 b(age)27 b(\(the)e(top)g(directory)-8
-b(,)27 b(the)e(`)p Fs(builtins)p Ft(',)f(`)p Fs(doc)p
-Ft(',)i(and)e(`)p Fs(support)p Ft(')g(directories,)150
-3172 y(eac)m(h)32 b(directory)f(under)d(`)p Fs(lib)p
-Ft(',)j(and)f(sev)m(eral)h(others\).)42 b(It)30 b(also)i(creates)f(a)g
-(`)p Fs(config.h)p Ft(')e(\014le)h(con)m(taining)150
-3282 y(system-dep)s(enden)m(t)h(de\014nitions.)44 b(Finally)-8
-b(,)34 b(it)e(creates)h(a)f(shell)g(script)f(named)g
-Fs(config.status)d Ft(that)150 3392 y(y)m(ou)k(can)g(run)e(in)h(the)g
-(future)g(to)h(recreate)h(the)f(curren)m(t)f(con\014guration,)h(a)g
-(\014le)g(`)p Fs(config.cache)p Ft(')c(that)150 3501
-y(sa)m(v)m(es)35 b(the)f(results)f(of)h(its)g(tests)h(to)f(sp)s(eed)f
-(up)g(recon\014guring,)h(and)f(a)h(\014le)g(`)p Fs(config.log)p
-Ft(')d(con)m(taining)150 3611 y(compiler)25 b(output)g(\(useful)f
-(mainly)h(for)g(debugging)f Fs(configure)p Ft(\).)37
-b(If)24 b(at)i(some)f(p)s(oin)m(t)g(`)p Fs(config.cache)p
-Ft(')150 3720 y(con)m(tains)32 b(results)e(y)m(ou)g(don't)h(w)m(an)m(t)
-g(to)g(k)m(eep,)g(y)m(ou)g(ma)m(y)g(remo)m(v)m(e)h(or)e(edit)h(it.)275
-3862 y(T)-8 b(o)37 b(\014nd)f(out)i(more)f(ab)s(out)h(the)f(options)h
-(and)f(argumen)m(ts)g(that)h(the)g Fs(configure)d Ft(script)i(under-)
-150 3972 y(stands,)30 b(t)m(yp)s(e)390 4114 y Fs(bash-2.04$)45
-b(./configure)g(--help)150 4256 y Ft(at)31 b(the)g(Bash)f(prompt)g(in)g
+2953 y(v)-5 b(ariables)31 b(used)e(during)g(compilation.)42
+b(It)31 b(uses)e(those)i(v)-5 b(alues)30 b(to)h(create)h(a)e
+Ft(Makefile)e Fu(in)i(eac)m(h)i(direc-)150 3063 y(tory)k(of)g(the)g
+(pac)m(k)-5 b(age)38 b(\(the)e(top)g(directory)-8 b(,)38
+b(the)e Ft(builtins)p Fu(,)f Ft(doc)p Fu(,)i(and)e Ft(support)e
+Fu(directories,)39 b(eac)m(h)150 3172 y(directory)29
+b(under)d Ft(lib)p Fu(,)j(and)e(sev)m(eral)j(others\).)40
+b(It)29 b(also)g(creates)h(a)e Ft(config.h)e Fu(\014le)j(con)m(taining)
+g(system-)150 3282 y(dep)s(enden)m(t)e(de\014nitions.)40
+b(Finally)-8 b(,)31 b(it)d(creates)i(a)f(shell)g(script)f(named)g
+Ft(config.status)d Fu(that)k(y)m(ou)g(can)150 3392 y(run)h(in)h(the)h
+(future)f(to)h(recreate)h(the)f(curren)m(t)f(con\014guration,)i(a)f
+(\014le)f Ft(config.cache)e Fu(that)j(sa)m(v)m(es)h(the)150
+3501 y(results)39 b(of)g(its)h(tests)g(to)g(sp)s(eed)e(up)g
+(recon\014guring,)j(and)e(a)g(\014le)g Ft(config.log)e
+Fu(con)m(taining)j(compiler)150 3611 y(output)30 b(\(useful)h(mainly)g
+(for)f(debugging)h Ft(configure)p Fu(\).)40 b(If)30 b(at)h(some)h(p)s
+(oin)m(t)e Ft(config.cache)e Fu(con)m(tains)150 3720
+y(results)i(y)m(ou)h(don't)f(w)m(an)m(t)h(to)h(k)m(eep,)f(y)m(ou)g(ma)m
+(y)g(remo)m(v)m(e)g(or)g(edit)g(it.)275 3862 y(T)-8 b(o)37
+b(\014nd)f(out)i(more)f(ab)s(out)h(the)f(options)h(and)f(argumen)m(ts)g
+(that)h(the)g Ft(configure)d Fu(script)i(under-)150 3972
+y(stands,)30 b(t)m(yp)s(e)390 4114 y Ft(bash-2.04$)45
+b(./configure)g(--help)150 4256 y Fu(at)31 b(the)g(Bash)f(prompt)g(in)g
(y)m(our)g(Bash)h(source)f(directory)-8 b(.)275 4398
y(If)53 b(y)m(ou)h(need)f(to)i(do)e(un)m(usual)g(things)g(to)i(compile)
g(Bash,)k(please)c(try)e(to)i(\014gure)e(out)h(ho)m(w)150
-4508 y Fs(configure)47 b Ft(could)j(c)m(hec)m(k)h(whether)e(or)g(not)h
+4508 y Ft(configure)47 b Fu(could)j(c)m(hec)m(k)h(whether)e(or)g(not)h
(to)h(do)e(them,)55 b(and)49 b(mail)h(di\013s)f(or)h(instructions)f(to)
-150 4617 y Fs(bash-maintainers@gnu.org)24 b Ft(so)30
+150 4617 y Ft(bash-maintainers@gnu.org)24 b Fu(so)30
b(they)h(can)g(b)s(e)e(considered)i(for)f(the)g(next)h(release.)275
-4760 y(The)24 b(\014le)i(`)p Fs(configure.ac)p Ft(')c(is)k(used)e(to)j
-(create)g Fs(configure)22 b Ft(b)m(y)k(a)g(program)f(called)h(Auto)s
-(conf.)39 b(Y)-8 b(ou)150 4869 y(only)31 b(need)f(`)p
-Fs(configure.ac)p Ft(')d(if)k(y)m(ou)f(w)m(an)m(t)i(to)f(c)m(hange)g
-(it)g(or)f(regenerate)i Fs(configure)c Ft(using)i(a)h(new)m(er)150
-4979 y(v)m(ersion)25 b(of)f(Auto)s(conf.)39 b(If)24 b(y)m(ou)h(do)f
-(this,)i(mak)m(e)f(sure)f(y)m(ou)h(are)f(using)g(Auto)s(conf)h(v)m
-(ersion)f(2.50)i(or)f(new)m(er.)275 5121 y(Y)-8 b(ou)29
-b(can)f(remo)m(v)m(e)i(the)f(program)g(binaries)f(and)g(ob)5
-b(ject)29 b(\014les)g(from)f(the)h(source)f(co)s(de)h(directory)g(b)m
-(y)150 5230 y(t)m(yping)j(`)p Fs(make)d(clean)p Ft('.)42
-b(T)-8 b(o)32 b(also)g(remo)m(v)m(e)g(the)g(\014les)f(that)g
-Fs(configure)e Ft(created)j(\(so)g(y)m(ou)g(can)f(compile)150
+4760 y(The)e(\014le)g Ft(configure.ac)d Fu(is)k(used)e(to)j(create)g
+Ft(configure)c Fu(b)m(y)i(a)h(program)f(called)i(Auto)s(conf.)40
+b(Y)-8 b(ou)150 4869 y(only)34 b(need)g Ft(configure.ac)d
+Fu(if)i(y)m(ou)i(w)m(an)m(t)g(to)f(c)m(hange)i(it)e(or)g(regenerate)i
+Ft(configure)31 b Fu(using)j(a)g(new)m(er)150 4979 y(v)m(ersion)25
+b(of)f(Auto)s(conf.)39 b(If)24 b(y)m(ou)h(do)f(this,)i(mak)m(e)f(sure)f
+(y)m(ou)h(are)f(using)g(Auto)s(conf)h(v)m(ersion)f(2.50)i(or)f(new)m
+(er.)275 5121 y(Y)-8 b(ou)29 b(can)f(remo)m(v)m(e)i(the)f(program)g
+(binaries)f(and)g(ob)5 b(ject)29 b(\014les)g(from)f(the)h(source)f(co)s
+(de)h(directory)g(b)m(y)150 5230 y(t)m(yping)j(`)p Ft(make)d(clean)p
+Fu('.)42 b(T)-8 b(o)32 b(also)g(remo)m(v)m(e)g(the)g(\014les)f(that)g
+Ft(configure)e Fu(created)j(\(so)g(y)m(ou)g(can)f(compile)150
5340 y(Bash)g(for)f(a)g(di\013eren)m(t)h(kind)f(of)g(computer\),)h(t)m
-(yp)s(e)g(`)p Fs(make)e(distclean)p Ft('.)p eop end
-%%Page: 140 146
-TeXDict begin 140 145 bop 150 -116 a Ft(Chapter)30 b(10:)41
-b(Installing)31 b(Bash)2356 b(140)150 299 y Fr(10.2)68
-b(Compilers)46 b(and)f(Options)150 458 y Ft(Some)28 b(systems)h
+(yp)s(e)g(`)p Ft(make)e(distclean)p Fu('.)p eop end
+%%Page: 139 145
+TeXDict begin 139 144 bop 150 -116 a Fu(Chapter)30 b(10:)41
+b(Installing)31 b(Bash)2356 b(139)150 299 y Fs(10.2)68
+b(Compilers)46 b(and)f(Options)150 458 y Fu(Some)28 b(systems)h
(require)f(un)m(usual)f(options)i(for)f(compilation)i(or)f(linking)f
-(that)h(the)g Fs(configure)d Ft(script)150 568 y(do)s(es)32
+(that)h(the)g Ft(configure)d Fu(script)150 568 y(do)s(es)32
b(not)g(kno)m(w)g(ab)s(out.)44 b(Y)-8 b(ou)33 b(can)f(giv)m(e)h
-Fs(configure)d Ft(initial)j(v)-5 b(alues)32 b(for)g(v)-5
+Ft(configure)d Fu(initial)j(v)-5 b(alues)32 b(for)g(v)-5
b(ariables)32 b(b)m(y)g(setting)h(them)150 677 y(in)k(the)g(en)m
(vironmen)m(t.)62 b(Using)38 b(a)f(Bourne-compatible)i(shell,)g(y)m(ou)
f(can)g(do)f(that)h(on)f(the)g(command)150 787 y(line)31
-b(lik)m(e)g(this:)390 920 y Fs(CC=c89)46 b(CFLAGS=-O2)f(LIBS=-lposix)g
-(./configure)275 1053 y Ft(On)29 b(systems)h(that)h(ha)m(v)m(e)h(the)f
-Fs(env)e Ft(program,)h(y)m(ou)h(can)g(do)f(it)h(lik)m(e)h(this:)390
-1186 y Fs(env)47 b(CPPFLAGS=-I/usr/local/in)o(clud)o(e)42
-b(LDFLAGS=-s)j(./configure)275 1318 y Ft(The)29 b(con\014guration)i
+b(lik)m(e)g(this:)390 920 y Ft(CC=c89)46 b(CFLAGS=-O2)f(LIBS=-lposix)g
+(./configure)275 1053 y Fu(On)29 b(systems)h(that)h(ha)m(v)m(e)h(the)f
+Ft(env)e Fu(program,)h(y)m(ou)h(can)g(do)f(it)h(lik)m(e)h(this:)390
+1186 y Ft(env)47 b(CPPFLAGS=-I/usr/local/in)o(clud)o(e)42
+b(LDFLAGS=-s)j(./configure)275 1318 y Fu(The)29 b(con\014guration)i
(pro)s(cess)f(uses)g(GCC)g(to)h(build)e(Bash)i(if)f(it)h(is)g(a)m(v)-5
-b(ailable.)150 1548 y Fr(10.3)68 b(Compiling)46 b(F)-11
-b(or)45 b(Multiple)g(Arc)l(hitectures)150 1707 y Ft(Y)-8
+b(ailable.)150 1548 y Fs(10.3)68 b(Compiling)46 b(F)-11
+b(or)45 b(Multiple)g(Arc)l(hitectures)150 1707 y Fu(Y)-8
b(ou)27 b(can)g(compile)g(Bash)g(for)f(more)h(than)f(one)h(kind)f(of)g
(computer)h(at)g(the)g(same)g(time,)h(b)m(y)e(placing)i(the)150
1817 y(ob)5 b(ject)31 b(\014les)f(for)g(eac)m(h)i(arc)m(hitecture)f(in)
f(their)g(o)m(wn)h(directory)-8 b(.)41 b(T)-8 b(o)31
b(do)f(this,)g(y)m(ou)h(m)m(ust)f(use)g(a)g(v)m(ersion)150
-1926 y(of)25 b Fs(make)f Ft(that)h(supp)s(orts)f(the)h
-Fs(VPATH)e Ft(v)-5 b(ariable,)27 b(suc)m(h)e(as)g(GNU)h
-Fs(make)p Ft(.)37 b Fs(cd)25 b Ft(to)h(the)f(directory)g(where)g(y)m
+1926 y(of)25 b Ft(make)f Fu(that)h(supp)s(orts)f(the)h
+Ft(VPATH)e Fu(v)-5 b(ariable,)27 b(suc)m(h)e(as)g(GNU)h
+Ft(make)p Fu(.)37 b Ft(cd)25 b Fu(to)h(the)f(directory)g(where)g(y)m
(ou)150 2036 y(w)m(an)m(t)34 b(the)f(ob)5 b(ject)34 b(\014les)f(and)f
-(executables)i(to)g(go)g(and)e(run)g(the)h Fs(configure)d
-Ft(script)j(from)g(the)g(source)150 2145 y(directory)-8
-b(.)41 b(Y)-8 b(ou)27 b(ma)m(y)h(need)f(to)g(supply)f(the)h(`)p
-Fs(--srcdir=PATH)p Ft(')d(argumen)m(t)k(to)g(tell)g Fs(configure)c
-Ft(where)150 2255 y(the)36 b(source)g(\014les)f(are.)57
-b Fs(configure)33 b Ft(automatically)39 b(c)m(hec)m(ks)e(for)e(the)h
+(executables)i(to)g(go)g(and)e(run)g(the)h Ft(configure)d
+Fu(script)j(from)g(the)g(source)150 2145 y(directory)-8
+b(.)44 b(Y)-8 b(ou)32 b(ma)m(y)g(need)f(to)h(supply)e(the)i
+Ft(--srcdir=PATH)27 b Fu(argumen)m(t)32 b(to)g(tell)h
+Ft(configure)28 b Fu(where)150 2255 y(the)36 b(source)g(\014les)f(are.)
+57 b Ft(configure)33 b Fu(automatically)39 b(c)m(hec)m(ks)e(for)e(the)h
(source)g(co)s(de)f(in)h(the)f(directory)150 2364 y(that)c
-Fs(configure)d Ft(is)i(in)g(and)g(in)g(`..'.)275 2497
-y(If)20 b(y)m(ou)h(ha)m(v)m(e)i(to)e(use)g(a)g Fs(make)f
-Ft(that)i(do)s(es)e(not)i(supp)s(orts)d(the)i Fs(VPATH)e
-Ft(v)-5 b(ariable,)24 b(y)m(ou)e(can)f(compile)h(Bash)150
+Ft(configure)d Fu(is)i(in)g(and)g(in)g(`..'.)275 2497
+y(If)20 b(y)m(ou)h(ha)m(v)m(e)i(to)e(use)g(a)g Ft(make)f
+Fu(that)i(do)s(es)e(not)i(supp)s(orts)d(the)i Ft(VPATH)e
+Fu(v)-5 b(ariable,)24 b(y)m(ou)e(can)f(compile)h(Bash)150
2607 y(for)33 b(one)h(arc)m(hitecture)h(at)f(a)g(time)g(in)f(the)h
(source)g(co)s(de)f(directory)-8 b(.)51 b(After)34 b(y)m(ou)g(ha)m(v)m
(e)h(installed)f(Bash)150 2716 y(for)c(one)h(arc)m(hitecture,)h(use)e
-(`)p Fs(make)g(distclean)p Ft(')e(b)s(efore)i(recon\014guring)g(for)g
+(`)p Ft(make)g(distclean)p Fu(')e(b)s(efore)i(recon\014guring)g(for)g
(another)g(arc)m(hitecture.)275 2849 y(Alternativ)m(ely)-8
-b(,)26 b(if)21 b(y)m(our)h(system)g(supp)s(orts)d(sym)m(b)s(olic)j
-(links,)i(y)m(ou)e(can)g(use)f(the)h(`)p Fs(support/mkclone)p
-Ft(')150 2959 y(script)h(to)h(create)g(a)f(build)f(tree)i(whic)m(h)f
-(has)f(sym)m(b)s(olic)i(links)e(bac)m(k)i(to)g(eac)m(h)g(\014le)f(in)g
-(the)g(source)g(directory)-8 b(.)150 3068 y(Here's)41
-b(an)f(example)i(that)f(creates)h(a)e(build)g(directory)h(in)f(the)h
-(curren)m(t)f(directory)h(from)f(a)h(source)150 3178
-y(directory)31 b(`)p Fs(/usr/gnu/src/bash-2.0)p Ft(':)390
-3311 y Fs(bash)47 b(/usr/gnu/src/bash-2.0/s)o(uppo)o(rt/)o(mkcl)o(one)
-41 b(-s)47 b(/usr/gnu/src/bash-2.0)42 b(.)150 3444 y
-Ft(The)c Fs(mkclone)e Ft(script)i(requires)g(Bash,)i(so)f(y)m(ou)f(m)m
-(ust)h(ha)m(v)m(e)g(already)g(built)f(Bash)g(for)g(at)h(least)h(one)150
-3553 y(arc)m(hitecture)32 b(b)s(efore)e(y)m(ou)h(can)f(create)i(build)e
-(directories)h(for)f(other)h(arc)m(hitectures.)150 3782
-y Fr(10.4)68 b(Installation)47 b(Names)150 3942 y Ft(By)27
-b(default,)h(`)p Fs(make)i(install)p Ft(')25 b(will)j(install)g(in)m
-(to)g(`)p Fs(/usr/local/bin)p Ft(',)c(`)p Fs(/usr/local/man)p
-Ft(',)h(etc.)40 b(Y)-8 b(ou)150 4051 y(can)31 b(sp)s(ecify)f(an)h
-(installation)h(pre\014x)d(other)i(than)g(`)p Fs(/usr/local)p
-Ft(')d(b)m(y)i(giving)i Fs(configure)c Ft(the)i(option)150
-4161 y(`)p Fs(--prefix=)p Fi(PATH)11 b Ft(',)35 b(or)h(b)m(y)g(sp)s
-(ecifying)g(a)h(v)-5 b(alue)37 b(for)f(the)h Fs(DESTDIR)d
-Ft(`)p Fs(make)p Ft(')i(v)-5 b(ariable)37 b(when)f(running)150
-4271 y(`)p Fs(make)29 b(install)p Ft('.)275 4403 y(Y)-8
+b(,)30 b(if)c(y)m(our)g(system)h(supp)s(orts)d(sym)m(b)s(olic)j(links,)
+g(y)m(ou)g(can)g(use)f(the)g Ft(support/mkclone)150 2959
+y Fu(script)d(to)h(create)g(a)f(build)f(tree)i(whic)m(h)f(has)f(sym)m
+(b)s(olic)i(links)e(bac)m(k)i(to)g(eac)m(h)g(\014le)f(in)g(the)g
+(source)g(directory)-8 b(.)150 3068 y(Here's)41 b(an)f(example)i(that)f
+(creates)h(a)e(build)g(directory)h(in)f(the)h(curren)m(t)f(directory)h
+(from)f(a)h(source)150 3178 y(directory)31 b Ft(/usr/gnu/src/bash-2.0)p
+Fu(:)390 3311 y Ft(bash)47 b(/usr/gnu/src/bash-2.0/s)o(uppo)o(rt/)o
+(mkcl)o(one)41 b(-s)47 b(/usr/gnu/src/bash-2.0)42 b(.)150
+3444 y Fu(The)c Ft(mkclone)e Fu(script)i(requires)g(Bash,)i(so)f(y)m
+(ou)f(m)m(ust)h(ha)m(v)m(e)g(already)g(built)f(Bash)g(for)g(at)h(least)
+h(one)150 3553 y(arc)m(hitecture)32 b(b)s(efore)e(y)m(ou)h(can)f
+(create)i(build)e(directories)h(for)f(other)h(arc)m(hitectures.)150
+3782 y Fs(10.4)68 b(Installation)47 b(Names)150 3942
+y Fu(By)37 b(default,)i(`)p Ft(make)29 b(install)p Fu(')35
+b(will)j(install)f(in)m(to)h Ft(/usr/local/bin)p Fu(,)d
+Ft(/usr/local/man)p Fu(,)f(etc.)61 b(Y)-8 b(ou)150 4051
+y(can)35 b(sp)s(ecify)f(an)h(installation)i(pre\014x)c(other)j(than)e
+Ft(/usr/local)e Fu(b)m(y)j(giving)g Ft(configure)e Fu(the)h(option)150
+4161 y Ft(--prefix=)p Fj(PATH)p Fu(,)41 b(or)g(b)m(y)g(sp)s(ecifying)h
+(a)f(v)-5 b(alue)42 b(for)f(the)h Ft(DESTDIR)d Fu(`)p
+Ft(make)p Fu(')i(v)-5 b(ariable)42 b(when)f(running)150
+4271 y(`)p Ft(make)29 b(install)p Fu('.)275 4403 y(Y)-8
b(ou)71 b(can)h(sp)s(ecify)f(separate)h(installation)h(pre\014xes)d
(for)h(arc)m(hitecture-sp)s(eci\014c)i(\014les)f(and)150
-4513 y(arc)m(hitecture-indep)s(enden)m(t)38 b(\014les.)62
-b(If)37 b(y)m(ou)h(giv)m(e)g Fs(configure)d Ft(the)j(option)g(`)p
-Fs(--exec-prefix=)p Fi(PATH)11 b Ft(',)150 4623 y(`)p
-Fs(make)29 b(install)p Ft(')63 b(will)h(use)f Fq(P)-8
-b(A)g(TH)75 b Ft(as)64 b(the)g(pre\014x)e(for)i(installing)h(programs)e
-(and)h(libraries.)150 4732 y(Do)s(cumen)m(tation)32 b(and)e(other)h
-(data)g(\014les)f(will)h(still)g(use)f(the)h(regular)f(pre\014x.)150
-4961 y Fr(10.5)68 b(Sp)t(ecifying)45 b(the)g(System)h(T)l(yp)t(e)150
-5121 y Ft(There)f(ma)m(y)g(b)s(e)f(some)i(features)f
-Fs(configure)e Ft(can)i(not)g(\014gure)g(out)g(automatically)-8
-b(,)52 b(but)44 b(need)h(to)150 5230 y(determine)36 b(b)m(y)g(the)h(t)m
-(yp)s(e)f(of)g(host)h(Bash)f(will)h(run)d(on.)58 b(Usually)37
-b Fs(configure)d Ft(can)i(\014gure)g(that)g(out,)150
-5340 y(but)c(if)h(it)g(prin)m(ts)g(a)g(message)h(sa)m(ying)g(it)f(can)h
-(not)f(guess)g(the)g(host)g(t)m(yp)s(e,)h(giv)m(e)g(it)f(the)h(`)p
-Fs(--host=TYPE)p Ft(')p eop end
-%%Page: 141 147
-TeXDict begin 141 146 bop 150 -116 a Ft(Chapter)30 b(10:)41
-b(Installing)31 b(Bash)2356 b(141)150 299 y(option.)39
-b(`)p Fs(TYPE)p Ft(')25 b(can)g(either)g(b)s(e)g(a)g(short)g(name)g
-(for)g(the)g(system)g(t)m(yp)s(e,)h(suc)m(h)f(as)g(`)p
-Fs(sun4)p Ft(',)h(or)f(a)g(canonical)150 408 y(name)30
-b(with)g(three)h(\014elds:)40 b(`)p Fs(CPU-COMPANY-SYSTEM)p
-Ft(')26 b(\(e.g.,)32 b(`)p Fs(i386-unknown-freebsd4.2)p
-Ft('\).)275 539 y(See)e(the)h(\014le)f(`)p Fs(support/config.sub)p
-Ft(')c(for)k(the)h(p)s(ossible)f(v)-5 b(alues)30 b(of)h(eac)m(h)g
-(\014eld.)150 764 y Fr(10.6)68 b(Sharing)45 b(Defaults)150
-924 y Ft(If)d(y)m(ou)i(w)m(an)m(t)g(to)f(set)h(default)f(v)-5
-b(alues)43 b(for)g Fs(configure)d Ft(scripts)j(to)h(share,)i(y)m(ou)d
-(can)g(create)i(a)e(site)150 1033 y(shell)48 b(script)f(called)i
-Fs(config.site)44 b Ft(that)k(giv)m(es)h(default)f(v)-5
-b(alues)48 b(for)f(v)-5 b(ariables)48 b(lik)m(e)h Fs(CC)p
-Ft(,)j Fs(cache_)150 1143 y(file)p Ft(,)43 b(and)e Fs(prefix)p
-Ft(.)73 b Fs(configure)39 b Ft(lo)s(oks)j(for)f(`)p Fs
-(PREFIX/share/config.site)p Ft(')35 b(if)42 b(it)g(exists,)j(then)150
-1252 y(`)p Fs(PREFIX/etc/config.site)p Ft(')20 b(if)26
-b(it)g(exists.)40 b(Or,)26 b(y)m(ou)g(can)g(set)g(the)g
-Fs(CONFIG_SITE)c Ft(en)m(vironmen)m(t)k(v)-5 b(ari-)150
+4513 y(arc)m(hitecture-indep)s(enden)m(t)44 b(\014les.)80
+b(If)43 b(y)m(ou)h(giv)m(e)h Ft(configure)c Fu(the)j(option)g
+Ft(--exec-prefix=)p Fj(PATH)p Fu(,)150 4623 y(`)p Ft(make)29
+b(install)p Fu(')63 b(will)h(use)f Fr(P)-8 b(A)g(TH)75
+b Fu(as)64 b(the)g(pre\014x)e(for)i(installing)h(programs)e(and)h
+(libraries.)150 4732 y(Do)s(cumen)m(tation)32 b(and)e(other)h(data)g
+(\014les)f(will)h(still)g(use)f(the)h(regular)f(pre\014x.)150
+4961 y Fs(10.5)68 b(Sp)t(ecifying)45 b(the)g(System)h(T)l(yp)t(e)150
+5121 y Fu(There)f(ma)m(y)g(b)s(e)f(some)i(features)f
+Ft(configure)e Fu(can)i(not)g(\014gure)g(out)g(automatically)-8
+b(,)52 b(but)44 b(need)h(to)150 5230 y(determine)26 b(b)m(y)g(the)g(t)m
+(yp)s(e)g(of)g(host)g(Bash)g(will)g(run)f(on.)39 b(Usually)26
+b Ft(configure)d Fu(can)k(\014gure)e(that)h(out,)i(but)150
+5340 y(if)g(it)g(prin)m(ts)f(a)h(message)g(sa)m(ying)h(it)f(can)g(not)f
+(guess)h(the)g(host)f(t)m(yp)s(e,)i(giv)m(e)g(it)f(the)g
+Ft(--host=TYPE)c Fu(option.)p eop end
+%%Page: 140 146
+TeXDict begin 140 145 bop 150 -116 a Fu(Chapter)30 b(10:)41
+b(Installing)31 b(Bash)2356 b(140)150 299 y(`)p Ft(TYPE)p
+Fu(')29 b(can)h(either)g(b)s(e)g(a)g(short)f(name)h(for)f(the)h(system)
+g(t)m(yp)s(e,)h(suc)m(h)e(as)h(`)p Ft(sun4)p Fu(',)g(or)f(a)h
+(canonical)i(name)150 408 y(with)e(three)h(\014elds:)40
+b(`)p Ft(CPU-COMPANY-SYSTEM)p Fu(')26 b(\(e.g.,)32 b(`)p
+Ft(i386-unknown-freebsd4.2)p Fu('\).)275 539 y(See)e(the)h(\014le)f
+Ft(support/config.sub)c Fu(for)k(the)g(p)s(ossible)g(v)-5
+b(alues)31 b(of)f(eac)m(h)i(\014eld.)150 764 y Fs(10.6)68
+b(Sharing)45 b(Defaults)150 924 y Fu(If)d(y)m(ou)i(w)m(an)m(t)g(to)f
+(set)h(default)f(v)-5 b(alues)43 b(for)g Ft(configure)d
+Fu(scripts)j(to)h(share,)i(y)m(ou)d(can)g(create)i(a)e(site)150
+1033 y(shell)48 b(script)f(called)i Ft(config.site)44
+b Fu(that)k(giv)m(es)h(default)f(v)-5 b(alues)48 b(for)f(v)-5
+b(ariables)48 b(lik)m(e)h Ft(CC)p Fu(,)j Ft(cache_)150
+1143 y(file)p Fu(,)c(and)d Ft(prefix)p Fu(.)85 b Ft(configure)43
+b Fu(lo)s(oks)j(for)f Ft(PREFIX/share/config.site)39
+b Fu(if)46 b(it)g(exists,)k(then)150 1252 y Ft(PREFIX/etc/config.site)
+24 b Fu(if)31 b(it)g(exists.)42 b(Or,)30 b(y)m(ou)h(can)g(set)g(the)g
+Ft(CONFIG_SITE)c Fu(en)m(vironmen)m(t)k(v)-5 b(ari-)150
1362 y(able)40 b(to)g(the)g(lo)s(cation)h(of)e(the)h(site)g(script.)67
-b(A)40 b(w)m(arning:)58 b(the)40 b(Bash)g Fs(configure)c
-Ft(lo)s(oks)k(for)f(a)h(site)150 1472 y(script,)31 b(but)e(not)i(all)g
-Fs(configure)d Ft(scripts)i(do.)150 1697 y Fr(10.7)68
-b(Op)t(eration)46 b(Con)l(trols)150 1856 y Fs(configure)28
-b Ft(recognizes)k(the)e(follo)m(wing)i(options)f(to)g(con)m(trol)h(ho)m
-(w)e(it)h(op)s(erates.)150 2008 y Fs(--cache-file=)p
-Fi(file)630 2117 y Ft(Use)k(and)g(sa)m(v)m(e)h(the)f(results)g(of)g
-(the)h(tests)f(in)g Fq(\014le)40 b Ft(instead)35 b(of)h(`)p
-Fs(./config.cache)p Ft('.)51 b(Set)630 2227 y Fq(\014le)36
-b Ft(to)31 b(`)p Fs(/dev/null)p Ft(')d(to)j(disable)g(cac)m(hing,)h
-(for)e(debugging)g Fs(configure)p Ft(.)150 2379 y Fs(--help)192
-b Ft(Prin)m(t)30 b(a)h(summary)e(of)i(the)f(options)h(to)g
-Fs(configure)p Ft(,)d(and)i(exit.)150 2531 y Fs(--quiet)150
-2641 y(--silent)150 2750 y(-q)384 b Ft(Do)31 b(not)g(prin)m(t)f
+b(A)40 b(w)m(arning:)58 b(the)40 b(Bash)g Ft(configure)c
+Fu(lo)s(oks)k(for)f(a)h(site)150 1472 y(script,)31 b(but)e(not)i(all)g
+Ft(configure)d Fu(scripts)i(do.)150 1697 y Fs(10.7)68
+b(Op)t(eration)46 b(Con)l(trols)150 1856 y Ft(configure)28
+b Fu(recognizes)k(the)e(follo)m(wing)i(options)f(to)g(con)m(trol)h(ho)m
+(w)e(it)h(op)s(erates.)150 2008 y Ft(--cache-file=)p
+Fj(file)630 2117 y Fu(Use)d(and)g(sa)m(v)m(e)h(the)f(results)g(of)g
+(the)h(tests)f(in)g Fr(\014le)33 b Fu(instead)28 b(of)h
+Ft(./config.cache)p Fu(.)36 b(Set)28 b Fr(\014le)630
+2227 y Fu(to)j Ft(/dev/null)d Fu(to)j(disable)g(cac)m(hing,)h(for)e
+(debugging)g Ft(configure)p Fu(.)150 2379 y Ft(--help)192
+b Fu(Prin)m(t)30 b(a)h(summary)e(of)i(the)f(options)h(to)g
+Ft(configure)p Fu(,)d(and)i(exit.)150 2531 y Ft(--quiet)150
+2641 y(--silent)150 2750 y(-q)384 b Fu(Do)31 b(not)g(prin)m(t)f
(messages)h(sa)m(ying)g(whic)m(h)g(c)m(hec)m(ks)g(are)g(b)s(eing)f
-(made.)150 2902 y Fs(--srcdir=)p Fi(dir)630 3012 y Ft(Lo)s(ok)i(for)f
-(the)h(Bash)g(source)f(co)s(de)h(in)f(directory)h Fq(dir)7
-b Ft(.)44 b(Usually)32 b Fs(configure)d Ft(can)i(deter-)630
-3121 y(mine)f(that)h(directory)g(automatically)-8 b(.)150
-3273 y Fs(--version)630 3383 y Ft(Prin)m(t)29 b(the)h(v)m(ersion)g(of)g
-(Auto)s(conf)f(used)g(to)h(generate)h(the)f Fs(configure)d
-Ft(script,)j(and)f(exit.)275 3535 y Fs(configure)34 b
-Ft(also)k(accepts)g(some)g(other,)h(not)e(widely)g(used,)h(b)s
-(oilerplate)g(options.)61 b(`)p Fs(configure)150 3644
-y(--help)p Ft(')29 b(prin)m(ts)h(the)g(complete)i(list.)150
-3869 y Fr(10.8)68 b(Optional)46 b(F)-11 b(eatures)150
-4029 y Ft(The)24 b(Bash)g Fs(configure)e Ft(has)h(a)i(n)m(um)m(b)s(er)e
-(of)h(`)p Fs(--enable-)p Fi(feature)11 b Ft(')20 b(options,)26
-b(where)d Fq(feature)30 b Ft(indicates)150 4138 y(an)f(optional)i(part)
-e(of)g(Bash.)41 b(There)28 b(are)i(also)g(sev)m(eral)h(`)p
-Fs(--with-)p Fi(package)11 b Ft(')25 b(options,)30 b(where)f
-Fq(pac)m(k)-5 b(age)150 4248 y Ft(is)32 b(something)h(lik)m(e)h(`)p
-Fs(bash-malloc)p Ft(')c(or)i(`)p Fs(purify)p Ft('.)45
+(made.)150 2902 y Ft(--srcdir=)p Fj(dir)630 3012 y Fu(Lo)s(ok)i(for)g
+(the)g(Bash)g(source)h(co)s(de)f(in)g(directory)g Fr(dir)p
+Fu(.)45 b(Usually)33 b Ft(configure)c Fu(can)j(deter-)630
+3121 y(mine)e(that)h(directory)g(automatically)-8 b(.)150
+3273 y Ft(--version)630 3383 y Fu(Prin)m(t)29 b(the)h(v)m(ersion)g(of)g
+(Auto)s(conf)f(used)g(to)h(generate)h(the)f Ft(configure)d
+Fu(script,)j(and)f(exit.)275 3535 y Ft(configure)34 b
+Fu(also)k(accepts)g(some)g(other,)h(not)e(widely)g(used,)h(b)s
+(oilerplate)g(options.)61 b(`)p Ft(configure)150 3644
+y(--help)p Fu(')29 b(prin)m(ts)h(the)g(complete)i(list.)150
+3869 y Fs(10.8)68 b(Optional)46 b(F)-11 b(eatures)150
+4029 y Fu(The)29 b(Bash)h Ft(configure)d Fu(has)j(a)g(n)m(um)m(b)s(er)f
+(of)h Ft(--enable-)p Fj(feature)25 b Fu(options,)30 b(where)g
+Fr(feature)35 b Fu(indicates)150 4138 y(an)e(optional)i(part)e(of)h
+(Bash.)50 b(There)33 b(are)g(also)i(sev)m(eral)g Ft(--with-)p
+Fj(package)29 b Fu(options,)35 b(where)e Fr(pac)m(k)-5
+b(age)150 4248 y Fu(is)32 b(something)h(lik)m(e)h(`)p
+Ft(bash-malloc)p Fu(')c(or)i(`)p Ft(purify)p Fu('.)45
b(T)-8 b(o)33 b(turn)e(o\013)i(the)f(default)h(use)f(of)g(a)h(pac)m(k)
--5 b(age,)35 b(use)150 4357 y(`)p Fs(--without-)p Fi(package)11
-b Ft('.)36 b(T)-8 b(o)29 b(con\014gure)g(Bash)h(without)f(a)g(feature)h
-(that)g(is)f(enabled)g(b)m(y)g(default,)h(use)150 4467
-y(`)p Fs(--disable-)p Fi(feature)11 b Ft('.)275 4598
-y(Here)21 b(is)g(a)g(complete)h(list)g(of)f(the)g(`)p
-Fs(--enable-)p Ft(')e(and)h(`)p Fs(--with-)p Ft(')g(options)h(that)g
-(the)g(Bash)g Fs(configure)150 4707 y Ft(recognizes.)150
-4859 y Fs(--with-afs)630 4969 y Ft(De\014ne)31 b(if)f(y)m(ou)h(are)f
-(using)g(the)h(Andrew)e(File)j(System)e(from)g(T)-8 b(ransarc.)150
-5121 y Fs(--with-bash-malloc)630 5230 y Ft(Use)31 b(the)g(Bash)f(v)m
-(ersion)i(of)e Fs(malloc)f Ft(in)h(the)h(directory)g(`)p
-Fs(lib/malloc)p Ft('.)39 b(This)30 b(is)h(not)g(the)630
-5340 y(same)h Fs(malloc)e Ft(that)j(app)s(ears)e(in)g
-Fl(gnu)h Ft(lib)s(c,)g(but)f(an)h(older)f(v)m(ersion)i(originally)g
-(deriv)m(ed)p eop end
-%%Page: 142 148
-TeXDict begin 142 147 bop 150 -116 a Ft(Chapter)30 b(10:)41
-b(Installing)31 b(Bash)2356 b(142)630 299 y(from)32 b(the)h(4.2)g
-Fl(bsd)f Fs(malloc)p Ft(.)45 b(This)31 b Fs(malloc)g
-Ft(is)i(v)m(ery)f(fast,)i(but)e(w)m(astes)h(some)g(space)g(on)630
-408 y(eac)m(h)g(allo)s(cation.)48 b(This)31 b(option)i(is)f(enabled)g
-(b)m(y)g(default.)46 b(The)31 b(`)p Fs(NOTES)p Ft(')g(\014le)h(con)m
-(tains)i(a)630 518 y(list)29 b(of)f(systems)f(for)h(whic)m(h)g(this)g
-(should)e(b)s(e)i(turned)e(o\013,)j(and)f Fs(configure)d
-Ft(disables)j(this)630 628 y(option)j(automatically)i(for)d(a)h(n)m(um)
-m(b)s(er)e(of)i(systems.)150 789 y Fs(--with-curses)630
-899 y Ft(Use)h(the)h(curses)e(library)h(instead)g(of)h(the)f(termcap)g
-(library)-8 b(.)46 b(This)32 b(should)f(b)s(e)g(supplied)630
-1008 y(if)f(y)m(our)h(system)f(has)g(an)h(inadequate)g(or)f(incomplete)
-i(termcap)e(database.)150 1170 y Fs(--with-gnu-malloc)630
-1279 y Ft(A)g(synon)m(ym)g(for)g Fs(--with-bash-malloc)p
-Ft(.)150 1441 y Fs(--with-installed-readlin)o(e[=)p Fi(P)o(REFI)o(X)11
-b Fs(])630 1550 y Ft(De\014ne)26 b(this)f(to)h(mak)m(e)h(Bash)f(link)f
-(with)g(a)h(lo)s(cally-installed)i(v)m(ersion)e(of)g(Readline)g(rather)
-630 1660 y(than)38 b(the)h(v)m(ersion)g(in)g(`)p Fs(lib/readline)p
-Ft('.)62 b(This)38 b(w)m(orks)h(only)f(with)h(Readline)g(5.0)h(and)630
-1769 y(later)29 b(v)m(ersions.)40 b(If)28 b Fq(PREFIX)37
-b Ft(is)28 b Fs(yes)f Ft(or)h(not)g(supplied,)f Fs(configure)f
-Ft(uses)h(the)h(v)-5 b(alues)29 b(of)630 1879 y(the)c(mak)m(e)g(v)-5
-b(ariables)25 b Fs(includedir)d Ft(and)h Fs(libdir)p
-Ft(,)h(whic)m(h)h(are)f(sub)s(directories)g(of)h Fs(prefix)630
-1989 y Ft(b)m(y)32 b(default,)g(to)h(\014nd)d(the)i(installed)h(v)m
-(ersion)f(of)g(Readline)h(if)f(it)g(is)g(not)g(in)g(the)g(standard)630
-2098 y(system)j(include)f(and)g(library)g(directories.)54
-b(If)34 b Fq(PREFIX)43 b Ft(is)35 b Fs(no)p Ft(,)g(Bash)f(links)h(with)
-f(the)630 2208 y(v)m(ersion)k(in)f(`)p Fs(lib/readline)p
-Ft('.)58 b(If)37 b Fq(PREFIX)46 b Ft(is)38 b(set)g(to)g(an)m(y)f(other)
-h(v)-5 b(alue,)39 b Fs(configure)630 2317 y Ft(treats)27
+-5 b(age,)35 b(use)150 4357 y Ft(--without-)p Fj(package)p
+Fu(.)46 b(T)-8 b(o)34 b(con\014gure)g(Bash)g(without)f(a)i(feature)f
+(that)g(is)g(enabled)g(b)m(y)f(default,)i(use)150 4467
+y Ft(--disable-)p Fj(feature)p Fu(.)275 4598 y(Here)28
+b(is)g(a)h(complete)g(list)g(of)f(the)h Ft(--enable-)c
+Fu(and)j Ft(--with-)e Fu(options)i(that)h(the)f(Bash)g
+Ft(configure)150 4707 y Fu(recognizes.)150 4859 y Ft(--with-afs)630
+4969 y Fu(De\014ne)j(if)f(y)m(ou)h(are)f(using)g(the)h(Andrew)e(File)j
+(System)e(from)g(T)-8 b(ransarc.)150 5121 y Ft(--with-bash-malloc)630
+5230 y Fu(Use)34 b(the)g(Bash)h(v)m(ersion)f(of)g Ft(malloc)e
+Fu(in)i(the)g(directory)h Ft(lib/malloc)p Fu(.)48 b(This)34
+b(is)g(not)g(the)630 5340 y(same)e Ft(malloc)e Fu(that)j(app)s(ears)e
+(in)g Fm(gnu)h Fu(lib)s(c,)g(but)f(an)h(older)f(v)m(ersion)i
+(originally)g(deriv)m(ed)p eop end
+%%Page: 141 147
+TeXDict begin 141 146 bop 150 -116 a Fu(Chapter)30 b(10:)41
+b(Installing)31 b(Bash)2356 b(141)630 299 y(from)32 b(the)h(4.2)g
+Fm(bsd)f Ft(malloc)p Fu(.)45 b(This)31 b Ft(malloc)g
+Fu(is)i(v)m(ery)f(fast,)i(but)e(w)m(astes)h(some)g(space)g(on)630
+408 y(eac)m(h)j(allo)s(cation.)58 b(This)34 b(option)i(is)f(enabled)g
+(b)m(y)g(default.)56 b(The)34 b Ft(NOTES)g Fu(\014le)h(con)m(tains)i(a)
+630 518 y(list)29 b(of)f(systems)f(for)h(whic)m(h)g(this)g(should)e(b)s
+(e)i(turned)e(o\013,)j(and)f Ft(configure)d Fu(disables)j(this)630
+628 y(option)j(automatically)i(for)d(a)h(n)m(um)m(b)s(er)e(of)i
+(systems.)150 789 y Ft(--with-curses)630 899 y Fu(Use)h(the)h(curses)e
+(library)h(instead)g(of)h(the)f(termcap)g(library)-8
+b(.)46 b(This)32 b(should)f(b)s(e)g(supplied)630 1008
+y(if)f(y)m(our)h(system)f(has)g(an)h(inadequate)g(or)f(incomplete)i
+(termcap)e(database.)150 1170 y Ft(--with-gnu-malloc)630
+1279 y Fu(A)g(synon)m(ym)g(for)g Ft(--with-bash-malloc)p
+Fu(.)150 1441 y Ft(--with-installed-readlin)o(e[=)p Fj(P)o(REFI)o(X)p
+Ft(])630 1550 y Fu(De\014ne)c(this)f(to)h(mak)m(e)h(Bash)f(link)f(with)
+g(a)h(lo)s(cally-installed)i(v)m(ersion)e(of)g(Readline)g(rather)630
+1660 y(than)f(the)h(v)m(ersion)g(in)f Ft(lib/readline)p
+Fu(.)36 b(This)25 b(w)m(orks)g(only)h(with)f(Readline)h(5.0)h(and)e
+(later)630 1769 y(v)m(ersions.)46 b(If)32 b Fr(PREFIX)41
+b Fu(is)32 b Ft(yes)f Fu(or)i(not)f(supplied,)f Ft(configure)f
+Fu(uses)i(the)g(v)-5 b(alues)32 b(of)h(the)630 1879 y(mak)m(e)28
+b(v)-5 b(ariables)29 b Ft(includedir)24 b Fu(and)j Ft(libdir)p
+Fu(,)g(whic)m(h)g(are)h(sub)s(directories)f(of)g Ft(prefix)f
+Fu(b)m(y)630 1989 y(default,)44 b(to)d(\014nd)f(the)h(installed)g(v)m
+(ersion)h(of)f(Readline)g(if)g(it)g(is)g(not)g(in)g(the)g(standard)630
+2098 y(system)35 b(include)f(and)g(library)g(directories.)54
+b(If)34 b Fr(PREFIX)43 b Fu(is)35 b Ft(no)p Fu(,)g(Bash)f(links)h(with)
+f(the)630 2208 y(v)m(ersion)42 b(in)e Ft(lib/readline)p
+Fu(.)70 b(If)40 b Fr(PREFIX)51 b Fu(is)41 b(set)g(to)h(an)m(y)g(other)f
+(v)-5 b(alue,)44 b Ft(configure)630 2317 y Fu(treats)27
b(it)g(as)f(a)h(directory)g(pathname)f(and)f(lo)s(oks)i(for)f(the)g
(installed)h(v)m(ersion)g(of)f(Readline)630 2427 y(in)34
b(sub)s(directories)f(of)h(that)h(directory)g(\(include)f(\014les)g(in)
-g Fq(PREFIX)9 b Ft(/)p Fs(include)32 b Ft(and)i(the)630
-2536 y(library)c(in)g Fq(PREFIX)9 b Ft(/)p Fs(lib)p Ft(\).)150
-2698 y Fs(--with-purify)630 2807 y Ft(De\014ne)23 b(this)g(to)h(use)f
+g Fr(PREFIX)9 b Fu(/)p Ft(include)32 b Fu(and)i(the)630
+2536 y(library)c(in)g Fr(PREFIX)9 b Fu(/)p Ft(lib)p Fu(\).)150
+2698 y Ft(--with-purify)630 2807 y Fu(De\014ne)23 b(this)g(to)h(use)f
(the)g(Purify)f(memory)h(allo)s(cation)i(c)m(hec)m(k)m(er)g(from)e
-(Rational)i(Soft)m(w)m(are.)150 2969 y Fs(--enable-minimal-config)630
-3078 y Ft(This)e(pro)s(duces)f(a)i(shell)g(with)f(minimal)h(features,)h
+(Rational)i(Soft)m(w)m(are.)150 2969 y Ft(--enable-minimal-config)630
+3078 y Fu(This)e(pro)s(duces)f(a)i(shell)g(with)f(minimal)h(features,)h
(close)g(to)f(the)g(historical)h(Bourne)e(shell.)275
-3241 y(There)g(are)i(sev)m(eral)g(`)p Fs(--enable-)p
-Ft(')d(options)j(that)f(alter)h(ho)m(w)g(Bash)f(is)g(compiled)h(and)e
-(link)m(ed,)j(rather)150 3350 y(than)k(c)m(hanging)h(run-time)f
-(features.)150 3513 y Fs(--enable-largefile)630 3622
-y Ft(Enable)76 b(supp)s(ort)f(for)h(large)h(\014les)f(\()p
-Fs(http://www.sas.com/standar)o(ds/l)o(arge)o(_)630 3732
-y(file/x_open.20Mar96.html)o Ft(\))23 b(if)28 b(the)g(op)s(erating)h
-(system)f(requires)g(sp)s(ecial)g(compiler)630 3842 y(options)45
-b(to)g(build)e(programs)h(whic)m(h)g(can)g(access)i(large)f(\014les.)82
-b(This)44 b(is)g(enabled)g(b)m(y)630 3951 y(default,)31
-b(if)f(the)h(op)s(erating)g(system)f(pro)m(vides)g(large)i(\014le)e
-(supp)s(ort.)150 4113 y Fs(--enable-profiling)630 4222
-y Ft(This)h(builds)f(a)i(Bash)g(binary)f(that)h(pro)s(duces)e
+3241 y(There)k(are)i(sev)m(eral)g Ft(--enable-)d Fu(options)i(that)h
+(alter)g(ho)m(w)f(Bash)g(is)g(compiled)h(and)e(link)m(ed,)i(rather)150
+3350 y(than)h(c)m(hanging)h(run-time)f(features.)150
+3513 y Ft(--enable-largefile)630 3622 y Fu(Enable)e(supp)s(ort)f(for)h
+(large)i(\014les)f(\()p Ft(http://www.sas.com/stand)o(ards)o(/la)o
+(rge_)o(file)o(/)630 3732 y(x_open)5 b(.)t(20Mar96)g(.)t(html)p
+Fu(\))31 b(if)37 b(the)f(op)s(erating)h(system)g(requires)f(sp)s(ecial)
+h(compiler)g(op-)630 3842 y(tions)27 b(to)h(build)e(programs)h(whic)m
+(h)g(can)g(access)h(large)h(\014les.)39 b(This)26 b(is)i(enabled)f(b)m
+(y)f(default,)630 3951 y(if)k(the)h(op)s(erating)g(system)f(pro)m
+(vides)h(large)g(\014le)g(supp)s(ort.)150 4113 y Ft(--enable-profiling)
+630 4222 y Fu(This)g(builds)f(a)i(Bash)g(binary)f(that)h(pro)s(duces)e
(pro\014ling)h(information)h(to)h(b)s(e)d(pro)s(cessed)630
-4332 y(b)m(y)g Fs(gprof)f Ft(eac)m(h)j(time)f(it)g(is)f(executed.)150
-4493 y Fs(--enable-static-link)630 4603 y Ft(This)37
+4332 y(b)m(y)g Ft(gprof)f Fu(eac)m(h)j(time)f(it)g(is)f(executed.)150
+4493 y Ft(--enable-static-link)630 4603 y Fu(This)37
b(causes)h(Bash)f(to)h(b)s(e)f(link)m(ed)h(statically)-8
-b(,)43 b(if)37 b Fs(gcc)g Ft(is)g(b)s(eing)g(used.)61
+b(,)43 b(if)37 b Ft(gcc)g Fu(is)g(b)s(eing)g(used.)61
b(This)37 b(could)h(b)s(e)630 4712 y(used)30 b(to)h(build)e(a)i(v)m
(ersion)g(to)g(use)f(as)g(ro)s(ot's)h(shell.)275 4875
-y(The)f(`)p Fs(minimal-config)p Ft(')d(option)k(can)g(b)s(e)f(used)f
+y(The)f(`)p Ft(minimal-config)p Fu(')d(option)k(can)g(b)s(e)f(used)f
(to)j(disable)e(all)i(of)f(the)f(follo)m(wing)i(options,)g(but)d(it)150
4984 y(is)h(pro)s(cessed)g(\014rst,)g(so)h(individual)f(options)g(ma)m
-(y)h(b)s(e)f(enabled)g(using)g(`)p Fs(enable-)p Fi(feature)11
-b Ft('.)275 5121 y(All)41 b(of)g(the)g(follo)m(wing)i(options)e(except)
-h(for)f(`)p Fs(disabled-builtins)p Ft(',)e(`)p Fs(directpand-default)p
-Ft(',)150 5230 y(and)45 b(`)p Fs(xpg-echo-default)p Ft(')c(are)k
+(y)h(b)s(e)f(enabled)g(using)g(`)p Ft(enable-)p Fj(feature)p
+Fu('.)275 5121 y(All)41 b(of)g(the)g(follo)m(wing)i(options)e(except)h
+(for)f(`)p Ft(disabled-builtins)p Fu(',)e(`)p Ft(directpand-default)p
+Fu(',)150 5230 y(and)45 b(`)p Ft(xpg-echo-default)p Fu(')c(are)k
(enabled)h(b)m(y)f(default,)k(unless)44 b(the)i(op)s(erating)f(system)h
(do)s(es)f(not)150 5340 y(pro)m(vide)30 b(the)h(necessary)g(supp)s
(ort.)p eop end
-%%Page: 143 149
-TeXDict begin 143 148 bop 150 -116 a Ft(Chapter)30 b(10:)41
-b(Installing)31 b(Bash)2356 b(143)150 299 y Fs(--enable-alias)630
-408 y Ft(Allo)m(w)41 b(alias)g(expansion)f(and)f(include)g(the)h
-Fs(alias)f Ft(and)g Fs(unalias)e Ft(builtins)j(\(see)g(Sec-)630
+%%Page: 142 148
+TeXDict begin 142 147 bop 150 -116 a Fu(Chapter)30 b(10:)41
+b(Installing)31 b(Bash)2356 b(142)150 299 y Ft(--enable-alias)630
+408 y Fu(Allo)m(w)41 b(alias)g(expansion)f(and)f(include)g(the)h
+Ft(alias)f Fu(and)g Ft(unalias)e Fu(builtins)j(\(see)g(Sec-)630
518 y(tion)31 b(6.6)g([Aliases],)i(page)e(88\).)150 682
-y Fs(--enable-arith-for-comma)o(nd)630 792 y Ft(Include)21
+y Ft(--enable-arith-for-comma)o(nd)630 792 y Fu(Include)21
b(supp)s(ort)g(for)g(the)i(alternate)g(form)f(of)g(the)g
-Fs(for)f Ft(command)h(that)h(b)s(eha)m(v)m(es)f(lik)m(e)i(the)630
-902 y(C)30 b(language)i Fs(for)d Ft(statemen)m(t)j(\(see)g(Section)f
+Ft(for)f Fu(command)h(that)h(b)s(eha)m(v)m(es)f(lik)m(e)i(the)630
+902 y(C)30 b(language)i Ft(for)d Fu(statemen)m(t)j(\(see)g(Section)f
(3.2.4.1)i([Lo)s(oping)d(Constructs],)h(page)g(10\).)150
-1066 y Fs(--enable-array-variables)630 1176 y Ft(Include)h(supp)s(ort)g
+1066 y Ft(--enable-array-variables)630 1176 y Fu(Include)h(supp)s(ort)g
(for)h(one-dimensional)h(arra)m(y)f(shell)h(v)-5 b(ariables)33
b(\(see)h(Section)g(6.7)h([Ar-)630 1285 y(ra)m(ys],)c(page)g(89\).)150
-1450 y Fs(--enable-bang-history)630 1559 y Ft(Include)36
-b(supp)s(ort)f(for)h Fs(csh)p Ft(-lik)m(e)h(history)g(substitution)f
+1450 y Ft(--enable-bang-history)630 1559 y Fu(Include)36
+b(supp)s(ort)f(for)h Ft(csh)p Fu(-lik)m(e)h(history)g(substitution)f
(\(see)h(Section)g(9.3)h([History)f(In-)630 1669 y(teraction],)c(page)e
-(136\).)150 1833 y Fs(--enable-brace-expansion)630 1943
-y Ft(Include)40 b Fs(csh)p Ft(-lik)m(e)h(brace)f(expansion)g(\()h
-Fs(b{a,b}c)d Fp(7!)i Fs(bac)30 b(bbc)39 b Ft(\).)71 b(See)40
+(135\).)150 1833 y Ft(--enable-brace-expansion)630 1943
+y Fu(Include)40 b Ft(csh)p Fu(-lik)m(e)h(brace)f(expansion)g(\()h
+Ft(b{a,b}c)d Fq(7!)i Ft(bac)30 b(bbc)39 b Fu(\).)71 b(See)40
b(Section)h(3.5.1)630 2052 y([Brace)32 b(Expansion],)e(page)h(21,)h
-(for)e(a)g(complete)i(description.)150 2217 y Fs
-(--enable-casemod-attribu)o(tes)630 2326 y Ft(Include)37
+(for)e(a)g(complete)i(description.)150 2217 y Ft
+(--enable-casemod-attribu)o(tes)630 2326 y Fu(Include)37
b(supp)s(ort)g(for)g(case-mo)s(difying)i(attributes)g(in)e(the)h
-Fs(declare)e Ft(builtin)i(and)f(as-)630 2436 y(signmen)m(t)29
+Ft(declare)e Fu(builtin)i(and)f(as-)630 2436 y(signmen)m(t)29
b(statemen)m(ts.)41 b(V)-8 b(ariables)30 b(with)e(the)g
-Fq(upp)s(ercase)k Ft(attribute,)e(for)e(example,)i(will)630
+Fr(upp)s(ercase)k Fu(attribute,)e(for)e(example,)i(will)630
2545 y(ha)m(v)m(e)i(their)e(v)-5 b(alues)31 b(con)m(v)m(erted)h(to)f
-(upp)s(ercase)e(up)s(on)g(assignmen)m(t.)150 2710 y Fs
-(--enable-casemod-expansi)o(on)630 2819 y Ft(Include)h(supp)s(ort)e
+(upp)s(ercase)e(up)s(on)g(assignmen)m(t.)150 2710 y Ft
+(--enable-casemod-expansi)o(on)630 2819 y Fu(Include)h(supp)s(ort)e
(for)i(case-mo)s(difying)i(w)m(ord)e(expansions.)150
-2984 y Fs(--enable-command-timing)630 3093 y Ft(Include)43
-b(supp)s(ort)f(for)h(recognizing)i Fs(time)e Ft(as)g(a)h(reserv)m(ed)g
+2984 y Ft(--enable-command-timing)630 3093 y Fu(Include)43
+b(supp)s(ort)f(for)h(recognizing)i Ft(time)e Fu(as)g(a)h(reserv)m(ed)g
(w)m(ord)f(and)g(for)h(displa)m(ying)630 3203 y(timing)37
b(statistics)h(for)e(the)g(pip)s(eline)g(follo)m(wing)i
-Fs(time)d Ft(\(see)i(Section)g(3.2.2)h([Pip)s(elines],)630
+Ft(time)d Fu(\(see)i(Section)g(3.2.2)h([Pip)s(elines],)630
3313 y(page)24 b(8\).)39 b(This)23 b(allo)m(ws)h(pip)s(elines)f(as)h(w)
m(ell)g(as)g(shell)f(builtins)g(and)g(functions)g(to)h(b)s(e)e(timed.)
-150 3477 y Fs(--enable-cond-command)630 3587 y Ft(Include)33
-b(supp)s(ort)f(for)i(the)g Fs([[)f Ft(conditional)i(command.)51
+150 3477 y Ft(--enable-cond-command)630 3587 y Fu(Include)33
+b(supp)s(ort)f(for)i(the)g Ft([[)f Fu(conditional)i(command.)51
b(\(see)34 b(Section)h(3.2.4.2)h([Condi-)630 3696 y(tional)c
-(Constructs],)e(page)h(10\).)150 3861 y Fs(--enable-cond-regexp)630
-3970 y Ft(Include)k(supp)s(ort)f(for)i(matc)m(hing)h
-Fl(posix)e Ft(regular)h(expressions)g(using)f(the)h(`)p
-Fs(=~)p Ft(')g(binary)630 4080 y(op)s(erator)25 b(in)f(the)h
-Fs([[)f Ft(conditional)h(command.)39 b(\(see)25 b(Section)h(3.2.4.2)h
+(Constructs],)e(page)h(10\).)150 3861 y Ft(--enable-cond-regexp)630
+3970 y Fu(Include)k(supp)s(ort)f(for)i(matc)m(hing)h
+Fm(posix)e Fu(regular)h(expressions)g(using)f(the)h(`)p
+Ft(=~)p Fu(')g(binary)630 4080 y(op)s(erator)25 b(in)f(the)h
+Ft([[)f Fu(conditional)h(command.)39 b(\(see)25 b(Section)h(3.2.4.2)h
([Conditional)e(Con-)630 4189 y(structs],)31 b(page)g(10\).)150
-4354 y Fs(--enable-coprocesses)630 4463 y Ft(Include)23
-b(supp)s(ort)f(for)i(copro)s(cesses)g(and)f(the)h Fs(coproc)e
-Ft(reserv)m(ed)i(w)m(ord)g(\(see)h(Section)f(3.2.2)630
-4573 y([Pip)s(elines],)31 b(page)g(8\).)150 4737 y Fs
-(--enable-debugger)630 4847 y Ft(Include)f(supp)s(ort)e(for)i(the)h
+4354 y Ft(--enable-coprocesses)630 4463 y Fu(Include)23
+b(supp)s(ort)f(for)i(copro)s(cesses)g(and)f(the)h Ft(coproc)e
+Fu(reserv)m(ed)i(w)m(ord)g(\(see)h(Section)f(3.2.2)630
+4573 y([Pip)s(elines],)31 b(page)g(8\).)150 4737 y Ft
+(--enable-debugger)630 4847 y Fu(Include)f(supp)s(ort)e(for)i(the)h
(bash)f(debugger)g(\(distributed)g(separately\).)150
-5011 y Fs(--enable-direxpand-defau)o(lt)630 5121 y Ft(Cause)53
-b(the)g Fs(direxpand)d Ft(shell)j(option)h(\(see)g(Section)f(4.3.2)i
-([The)e(Shopt)f(Builtin],)630 5230 y(page)29 b(63\))g(to)f(b)s(e)f
+5011 y Ft(--enable-direxpand-defau)o(lt)630 5121 y Fu(Cause)53
+b(the)g Ft(direxpand)d Fu(shell)j(option)h(\(see)g(Section)f(4.3.2)i
+([The)e(Shopt)f(Builtin],)630 5230 y(page)29 b(62\))g(to)f(b)s(e)f
(enabled)h(b)m(y)g(default)g(when)e(the)i(shell)g(starts.)41
b(It)27 b(is)h(normally)g(disabled)630 5340 y(b)m(y)i(default.)p
eop end
-%%Page: 144 150
-TeXDict begin 144 149 bop 150 -116 a Ft(Chapter)30 b(10:)41
-b(Installing)31 b(Bash)2356 b(144)150 299 y Fs
-(--enable-directory-stack)630 408 y Ft(Include)33 b(supp)s(ort)g(for)h
-(a)g Fs(csh)p Ft(-lik)m(e)h(directory)f(stac)m(k)i(and)d(the)i
-Fs(pushd)p Ft(,)f Fs(popd)p Ft(,)g(and)f Fs(dirs)630
-518 y Ft(builtins)d(\(see)h(Section)g(6.8)h([The)e(Directory)i(Stac)m
-(k],)g(page)f(91\).)150 673 y Fs(--enable-disabled-builti)o(ns)630
-783 y Ft(Allo)m(w)40 b(builtin)e(commands)g(to)h(b)s(e)f(in)m(v)m(ok)m
-(ed)i(via)f(`)p Fs(builtin)29 b(xxx)p Ft(')37 b(ev)m(en)j(after)f
-Fs(xxx)e Ft(has)630 892 y(b)s(een)31 b(disabled)g(using)g(`)p
-Fs(enable)d(-n)i(xxx)p Ft('.)43 b(See)32 b(Section)g(4.2)h([Bash)e
+%%Page: 143 149
+TeXDict begin 143 148 bop 150 -116 a Fu(Chapter)30 b(10:)41
+b(Installing)31 b(Bash)2356 b(143)150 299 y Ft
+(--enable-directory-stack)630 408 y Fu(Include)33 b(supp)s(ort)g(for)h
+(a)g Ft(csh)p Fu(-lik)m(e)h(directory)f(stac)m(k)i(and)d(the)i
+Ft(pushd)p Fu(,)f Ft(popd)p Fu(,)g(and)f Ft(dirs)630
+518 y Fu(builtins)d(\(see)h(Section)g(6.8)h([The)e(Directory)i(Stac)m
+(k],)g(page)f(90\).)150 673 y Ft(--enable-disabled-builti)o(ns)630
+783 y Fu(Allo)m(w)40 b(builtin)e(commands)g(to)h(b)s(e)f(in)m(v)m(ok)m
+(ed)i(via)f(`)p Ft(builtin)29 b(xxx)p Fu(')37 b(ev)m(en)j(after)f
+Ft(xxx)e Fu(has)630 892 y(b)s(een)31 b(disabled)g(using)g(`)p
+Ft(enable)d(-n)i(xxx)p Fu('.)43 b(See)32 b(Section)g(4.2)h([Bash)e
(Builtins],)i(page)f(48,)630 1002 y(for)e(details)i(of)e(the)h
-Fs(builtin)d Ft(and)i Fs(enable)e Ft(builtin)i(commands.)150
-1157 y Fs(--enable-dparen-arithmet)o(ic)630 1267 y Ft(Include)42
-b(supp)s(ort)f(for)h(the)h Fs(\(\(...)o(\)\))f Ft(command)g(\(see)i
+Ft(builtin)d Fu(and)i Ft(enable)e Fu(builtin)i(commands.)150
+1157 y Ft(--enable-dparen-arithmet)o(ic)630 1267 y Fu(Include)42
+b(supp)s(ort)f(for)h(the)h Ft(\(\(...)o(\)\))f Fu(command)g(\(see)i
(Section)f(3.2.4.2)i([Conditional)630 1377 y(Constructs],)30
-b(page)h(10\).)150 1532 y Fs(--enable-extended-glob)630
-1641 y Ft(Include)40 b(supp)s(ort)e(for)i(the)h(extended)f(pattern)h
+b(page)h(10\).)150 1532 y Ft(--enable-extended-glob)630
+1641 y Fu(Include)40 b(supp)s(ort)e(for)i(the)h(extended)f(pattern)h
(matc)m(hing)g(features)g(describ)s(ed)e(ab)s(o)m(v)m(e)630
1751 y(under)29 b(Section)i(3.5.8.1)i([P)m(attern)e(Matc)m(hing],)i
-(page)e(30.)150 1906 y Fs(--enable-extended-glob-d)o(efau)o(lt)630
-2016 y Ft(Set)40 b(the)g(default)g(v)-5 b(alue)41 b(of)f(the)g
-Fq(extglob)j Ft(shell)d(option)g(describ)s(ed)f(ab)s(o)m(v)m(e)i(under)
+(page)e(30.)150 1906 y Ft(--enable-extended-glob-d)o(efau)o(lt)630
+2016 y Fu(Set)40 b(the)g(default)g(v)-5 b(alue)41 b(of)f(the)g
+Fr(extglob)j Fu(shell)d(option)g(describ)s(ed)f(ab)s(o)m(v)m(e)i(under)
d(Sec-)630 2125 y(tion)31 b(4.3.2)h([The)e(Shopt)g(Builtin],)h(page)g
-(63)g(to)h(b)s(e)d(enabled.)150 2281 y Fs(--enable-glob-asciirange)o
-(-def)o(ault)630 2390 y Ft(Set)i(the)g(default)f(v)-5
-b(alue)31 b(of)g(the)g Fq(globasciiranges)36 b Ft(shell)31
+(62)g(to)h(b)s(e)d(enabled.)150 2281 y Ft(--enable-glob-asciirange)o
+(-def)o(ault)630 2390 y Fu(Set)i(the)g(default)f(v)-5
+b(alue)31 b(of)g(the)g Fr(globasciiranges)36 b Fu(shell)31
b(option)g(describ)s(ed)f(ab)s(o)m(v)m(e)h(under)630
2500 y(Section)41 b(4.3.2)h([The)e(Shopt)f(Builtin],)44
-b(page)d(63)g(to)g(b)s(e)f(enabled.)70 b(This)39 b(con)m(trols)j(the)
+b(page)d(62)g(to)g(b)s(e)f(enabled.)70 b(This)39 b(con)m(trols)j(the)
630 2609 y(b)s(eha)m(vior)21 b(of)g(c)m(haracter)h(ranges)f(when)f
(used)g(in)g(pattern)h(matc)m(hing)h(brac)m(k)m(et)g(expressions.)150
-2765 y Fs(--enable-help-builtin)630 2874 y Ft(Include)i(the)h
-Fs(help)f Ft(builtin,)h(whic)m(h)g(displa)m(ys)f(help)h(on)f(shell)h
+2765 y Ft(--enable-help-builtin)630 2874 y Fu(Include)i(the)h
+Ft(help)f Fu(builtin,)h(whic)m(h)g(displa)m(ys)f(help)h(on)f(shell)h
(builtins)f(and)h(v)-5 b(ariables)25 b(\(see)630 2984
y(Section)31 b(4.2)h([Bash)e(Builtins],)i(page)f(48\).)150
-3139 y Fs(--enable-history)630 3249 y Ft(Include)e(command)g(history)h
-(and)f(the)h Fs(fc)f Ft(and)g Fs(history)e Ft(builtin)j(commands)f
+3139 y Ft(--enable-history)630 3249 y Fu(Include)e(command)g(history)h
+(and)f(the)h Ft(fc)f Fu(and)g Ft(history)e Fu(builtin)j(commands)f
(\(see)h(Sec-)630 3358 y(tion)h(9.1)g([Bash)g(History)g(F)-8
-b(acilities],)34 b(page)d(134\).)150 3513 y Fs(--enable-job-control)630
-3623 y Ft(This)e(enables)i(the)f(job)g(con)m(trol)h(features)g(\(see)g
-(Chapter)f(7)g([Job)g(Con)m(trol],)h(page)g(98\),)h(if)630
+b(acilities],)34 b(page)d(133\).)150 3513 y Ft(--enable-job-control)630
+3623 y Fu(This)e(enables)i(the)f(job)g(con)m(trol)h(features)g(\(see)g
+(Chapter)f(7)g([Job)g(Con)m(trol],)h(page)g(97\),)h(if)630
3733 y(the)f(op)s(erating)f(system)h(supp)s(orts)d(them.)150
-3888 y Fs(--enable-multibyte)630 3998 y Ft(This)h(enables)i(supp)s(ort)
+3888 y Ft(--enable-multibyte)630 3998 y Fu(This)h(enables)i(supp)s(ort)
d(for)i(m)m(ultib)m(yte)h(c)m(haracters)g(if)f(the)g(op)s(erating)h
(system)f(pro)m(vides)630 4107 y(the)h(necessary)f(supp)s(ort.)150
-4262 y Fs(--enable-net-redirection)o(s)630 4372 y Ft(This)21
+4262 y Ft(--enable-net-redirection)o(s)630 4372 y Fu(This)23
b(enables)h(the)g(sp)s(ecial)h(handling)e(of)h(\014lenames)g(of)g(the)g
-(form)f Fs(/dev/tcp/)p Fi(host)11 b Fs(/)p Fi(port)630
-4482 y Ft(and)29 b Fs(/dev/udp/)p Fi(host)11 b Fs(/)p
-Fi(port)34 b Ft(when)28 b(used)g(in)h(redirections)h(\(see)g(Section)g
-(3.6)g([Redirec-)630 4591 y(tions],)h(page)g(31\).)150
-4746 y Fs(--enable-process-substit)o(utio)o(n)630 4856
-y Ft(This)49 b(enables)i(pro)s(cess)f(substitution)g(\(see)h(Section)g
-(3.5.6)h([Pro)s(cess)e(Substitution],)630 4966 y(page)31
-b(29\))h(if)e(the)h(op)s(erating)f(system)h(pro)m(vides)f(the)h
-(necessary)g(supp)s(ort.)150 5121 y Fs(--enable-progcomp)630
-5230 y Ft(Enable)d(the)g(programmable)g(completion)i(facilities)g
-(\(see)f(Section)g(8.6)g([Programmable)630 5340 y(Completion],)i(page)h
-(125\).)42 b(If)30 b(Readline)h(is)f(not)h(enabled,)f(this)h(option)g
-(has)f(no)g(e\013ect.)p eop end
-%%Page: 145 151
-TeXDict begin 145 150 bop 150 -116 a Ft(Chapter)30 b(10:)41
-b(Installing)31 b(Bash)2356 b(145)150 299 y Fs
-(--enable-prompt-string-d)o(ecod)o(ing)630 408 y Ft(T)-8
+(form)g Ft(/dev/tcp/)p Fj(host)p Ft(/)p Fj(port)630 4482
+y Fu(and)31 b Ft(/dev/udp/)p Fj(host)p Ft(/)p Fj(port)26
+b Fu(when)31 b(used)g(in)g(redirections)h(\(see)g(Section)g(3.6)h
+([Redirec-)630 4591 y(tions],)e(page)g(31\).)150 4746
+y Ft(--enable-process-substit)o(utio)o(n)630 4856 y Fu(This)49
+b(enables)i(pro)s(cess)f(substitution)g(\(see)h(Section)g(3.5.6)h([Pro)
+s(cess)e(Substitution],)630 4966 y(page)31 b(29\))h(if)e(the)h(op)s
+(erating)f(system)h(pro)m(vides)f(the)h(necessary)g(supp)s(ort.)150
+5121 y Ft(--enable-progcomp)630 5230 y Fu(Enable)d(the)g(programmable)g
+(completion)i(facilities)g(\(see)f(Section)g(8.6)g([Programmable)630
+5340 y(Completion],)i(page)h(124\).)42 b(If)30 b(Readline)h(is)f(not)h
+(enabled,)f(this)h(option)g(has)f(no)g(e\013ect.)p eop
+end
+%%Page: 144 150
+TeXDict begin 144 149 bop 150 -116 a Fu(Chapter)30 b(10:)41
+b(Installing)31 b(Bash)2356 b(144)150 299 y Ft
+(--enable-prompt-string-d)o(ecod)o(ing)630 408 y Fu(T)-8
b(urn)30 b(on)i(the)f(in)m(terpretation)i(of)f(a)g(n)m(um)m(b)s(er)e
(of)i(bac)m(kslash-escap)s(ed)g(c)m(haracters)i(in)d(the)630
-518 y Fs($PS1)p Ft(,)36 b Fs($PS2)p Ft(,)g Fs($PS3)p
-Ft(,)h(and)e Fs($PS4)f Ft(prompt)h(strings.)57 b(See)36
+518 y Ft($PS1)p Fu(,)36 b Ft($PS2)p Fu(,)g Ft($PS3)p
+Fu(,)h(and)e Ft($PS4)f Fu(prompt)h(strings.)57 b(See)36
b(Section)h(6.9)g([Con)m(trolling)g(the)630 628 y(Prompt],)30
b(page)h(92,)h(for)e(a)h(complete)h(list)f(of)f(prompt)g(string)g
-(escap)s(e)h(sequences.)150 787 y Fs(--enable-readline)630
-897 y Ft(Include)d(supp)s(ort)f(for)h(command-line)h(editing)g(and)f
+(escap)s(e)h(sequences.)150 787 y Ft(--enable-readline)630
+897 y Fu(Include)d(supp)s(ort)f(for)h(command-line)h(editing)g(and)f
(history)g(with)g(the)h(Bash)g(v)m(ersion)g(of)630 1006
y(the)i(Readline)g(library)f(\(see)h(Chapter)f(8)g([Command)g(Line)g
-(Editing],)h(page)g(102\).)150 1166 y Fs(--enable-restricted)630
-1275 y Ft(Include)41 b(supp)s(ort)f(for)i(a)g Fq(restricted)g(shell)p
-Ft(.)75 b(If)42 b(this)f(is)h(enabled,)j(Bash,)g(when)c(called)630
-1385 y(as)f Fs(rbash)p Ft(,)h(en)m(ters)f(a)g(restricted)h(mo)s(de.)68
+(Editing],)h(page)g(101\).)150 1166 y Ft(--enable-restricted)630
+1275 y Fu(Include)41 b(supp)s(ort)f(for)i(a)g Fr(restricted)g(shell)p
+Fu(.)75 b(If)42 b(this)f(is)h(enabled,)j(Bash,)g(when)c(called)630
+1385 y(as)f Ft(rbash)p Fu(,)h(en)m(ters)f(a)g(restricted)h(mo)s(de.)68
b(See)40 b(Section)h(6.10)g([The)f(Restricted)h(Shell],)630
1494 y(page)31 b(93,)h(for)e(a)g(description)h(of)f(restricted)h(mo)s
-(de.)150 1654 y Fs(--enable-select)630 1763 y Ft(Include)25
-b(the)h Fs(select)f Ft(comp)s(ound)f(command,)j(whic)m(h)e(allo)m(ws)j
+(de.)150 1654 y Ft(--enable-select)630 1763 y Fu(Include)25
+b(the)h Ft(select)f Fu(comp)s(ound)f(command,)j(whic)m(h)e(allo)m(ws)j
(the)e(generation)h(of)f(simple)630 1873 y(men)m(us)k(\(see)h(Section)g
(3.2.4.2)i([Conditional)e(Constructs],)g(page)g(10\).)150
-2032 y Fs(--enable-separate-helpfi)o(les)630 2142 y Ft(Use)h(external)h
+2032 y Ft(--enable-separate-helpfi)o(les)630 2142 y Fu(Use)h(external)h
(\014les)f(for)g(the)g(do)s(cumen)m(tation)h(displa)m(y)m(ed)f(b)m(y)g
-(the)g Fs(help)f Ft(builtin)h(instead)630 2252 y(of)f(storing)f(the)h
-(text)g(in)m(ternally)-8 b(.)150 2411 y Fs(--enable-single-help-str)o
-(ings)630 2521 y Ft(Store)40 b(the)g(text)h(displa)m(y)m(ed)g(b)m(y)e
-(the)i Fs(help)d Ft(builtin)i(as)g(a)g(single)h(string)f(for)f(eac)m(h)
+(the)g Ft(help)f Fu(builtin)h(instead)630 2252 y(of)f(storing)f(the)h
+(text)g(in)m(ternally)-8 b(.)150 2411 y Ft(--enable-single-help-str)o
+(ings)630 2521 y Fu(Store)40 b(the)g(text)h(displa)m(y)m(ed)g(b)m(y)e
+(the)i Ft(help)d Fu(builtin)i(as)g(a)g(single)h(string)f(for)f(eac)m(h)
i(help)630 2630 y(topic.)54 b(This)33 b(aids)i(in)f(translating)h(the)g
(text)g(to)g(di\013eren)m(t)g(languages.)54 b(Y)-8 b(ou)35
b(ma)m(y)g(need)630 2740 y(to)c(disable)g(this)f(if)g(y)m(our)h
(compiler)g(cannot)f(handle)g(v)m(ery)h(long)g(string)f(literals.)150
-2899 y Fs(--enable-strict-posix-de)o(faul)o(t)630 3009
-y Ft(Mak)m(e)c(Bash)f Fl(posix)p Ft(-conforman)m(t)g(b)m(y)f(default)h
+2899 y Ft(--enable-strict-posix-de)o(faul)o(t)630 3009
+y Fu(Mak)m(e)c(Bash)f Fm(posix)p Fu(-conforman)m(t)g(b)m(y)f(default)h
(\(see)g(Section)h(6.11)g([Bash)f(POSIX)e(Mo)s(de],)630
-3118 y(page)31 b(94\).)150 3278 y Fs(--enable-usg-echo-defaul)o(t)630
-3387 y Ft(A)f(synon)m(ym)g(for)g Fs(--enable-xpg-echo-default)p
-Ft(.)150 3547 y Fs(--enable-xpg-echo-defaul)o(t)630 3656
-y Ft(Mak)m(e)c(the)f Fs(echo)e Ft(builtin)i(expand)f(bac)m
+3118 y(page)31 b(94\).)150 3278 y Ft(--enable-usg-echo-defaul)o(t)630
+3387 y Fu(A)f(synon)m(ym)g(for)g Ft(--enable-xpg-echo-default)p
+Fu(.)150 3547 y Ft(--enable-xpg-echo-defaul)o(t)630 3656
+y Fu(Mak)m(e)c(the)f Ft(echo)e Fu(builtin)i(expand)f(bac)m
(kslash-escap)s(ed)h(c)m(haracters)h(b)m(y)f(default,)h(without)630
-3766 y(requiring)41 b(the)g(`)p Fs(-e)p Ft(')g(option.)73
-b(This)41 b(sets)g(the)g(default)h(v)-5 b(alue)41 b(of)h(the)f
-Fs(xpg_echo)e Ft(shell)630 3875 y(option)26 b(to)g Fs(on)p
-Ft(,)g(whic)m(h)g(mak)m(es)g(the)g(Bash)g Fs(echo)e Ft(b)s(eha)m(v)m(e)
-i(more)g(lik)m(e)h(the)f(v)m(ersion)g(sp)s(eci\014ed)630
-3985 y(in)41 b(the)h(Single)g(Unix)f(Sp)s(eci\014cation,)k(v)m(ersion)e
-(3.)74 b(See)42 b(Section)g(4.2)h([Bash)f(Builtins],)630
-4095 y(page)31 b(48,)h(for)e(a)g(description)h(of)f(the)h(escap)s(e)g
-(sequences)f(that)h Fs(echo)f Ft(recognizes.)275 4254
-y(The)23 b(\014le)i(`)p Fs(config-top.h)p Ft(')c(con)m(tains)26
-b(C)e(Prepro)s(cessor)g(`)p Fs(#define)p Ft(')e(statemen)m(ts)k(for)f
-(options)f(whic)m(h)150 4364 y(are)35 b(not)g(settable)i(from)d
-Fs(configure)p Ft(.)51 b(Some)35 b(of)g(these)g(are)h(not)f(mean)m(t)g
-(to)h(b)s(e)e(c)m(hanged;)k(b)s(ew)m(are)d(of)150 4473
-y(the)h(consequences)g(if)f(y)m(ou)h(do.)55 b(Read)36
-b(the)g(commen)m(ts)g(asso)s(ciated)h(with)e(eac)m(h)i(de\014nition)e
-(for)g(more)150 4583 y(information)c(ab)s(out)f(its)h(e\013ect.)p
-eop end
-%%Page: 146 152
-TeXDict begin 146 151 bop 150 -116 a Ft(App)s(endix)29
-b(A:)h(Rep)s(orting)h(Bugs)2299 b(146)150 299 y Fo(App)t(endix)52
-b(A)81 b(Rep)t(orting)53 b(Bugs)150 533 y Ft(Please)33
+3766 y(requiring)d(the)h Ft(-e)f Fu(option.)39 b(This)23
+b(sets)h(the)g(default)g(v)-5 b(alue)24 b(of)g(the)g
+Ft(xpg_echo)e Fu(shell)h(option)630 3875 y(to)28 b Ft(on)p
+Fu(,)g(whic)m(h)f(mak)m(es)h(the)g(Bash)f Ft(echo)f Fu(b)s(eha)m(v)m(e)
+i(more)g(lik)m(e)h(the)e(v)m(ersion)h(sp)s(eci\014ed)f(in)g(the)630
+3985 y(Single)35 b(Unix)f(Sp)s(eci\014cation,)i(v)m(ersion)e(3.)53
+b(See)35 b(Section)g(4.2)g([Bash)g(Builtins],)h(page)f(48,)630
+4095 y(for)30 b(a)h(description)f(of)h(the)f(escap)s(e)h(sequences)g
+(that)g Ft(echo)e Fu(recognizes.)275 4254 y(The)f(\014le)i
+Ft(config-top.h)c Fu(con)m(tains)31 b(C)d(Prepro)s(cessor)h(`)p
+Ft(#define)p Fu(')f(statemen)m(ts)j(for)f(options)f(whic)m(h)150
+4364 y(are)35 b(not)g(settable)i(from)d Ft(configure)p
+Fu(.)51 b(Some)35 b(of)g(these)g(are)h(not)f(mean)m(t)g(to)h(b)s(e)e(c)
+m(hanged;)k(b)s(ew)m(are)d(of)150 4473 y(the)h(consequences)g(if)f(y)m
+(ou)h(do.)55 b(Read)36 b(the)g(commen)m(ts)g(asso)s(ciated)h(with)e
+(eac)m(h)i(de\014nition)e(for)g(more)150 4583 y(information)c(ab)s(out)
+f(its)h(e\013ect.)p eop end
+%%Page: 145 151
+TeXDict begin 145 150 bop 150 -116 a Fu(App)s(endix)29
+b(A:)h(Rep)s(orting)h(Bugs)2299 b(145)150 299 y Fp(App)t(endix)52
+b(A)81 b(Rep)t(orting)53 b(Bugs)150 533 y Fu(Please)33
b(rep)s(ort)e(all)h(bugs)f(y)m(ou)h(\014nd)e(in)i(Bash.)44
b(But)32 b(\014rst,)g(y)m(ou)g(should)e(mak)m(e)j(sure)e(that)h(it)g
(really)h(is)f(a)150 643 y(bug,)d(and)g(that)h(it)g(app)s(ears)f(in)g
(the)h(latest)h(v)m(ersion)f(of)g(Bash.)40 b(The)29 b(latest)j(v)m
(ersion)e(of)f(Bash)h(is)f(alw)m(a)m(ys)150 752 y(a)m(v)-5
-b(ailable)33 b(for)d(FTP)g(from)g Fs(ftp://ftp.gnu.org/pub/gn)o(u/ba)o
-(sh/)o Ft(.)275 887 y(Once)41 b(y)m(ou)g(ha)m(v)m(e)h(determined)f
-(that)h(a)f(bug)g(actually)h(exists,)j(use)c(the)g Fs(bashbug)e
-Ft(command)i(to)150 996 y(submit)25 b(a)h(bug)g(rep)s(ort.)38
+b(ailable)33 b(for)d(FTP)g(from)g Ft(ftp://ftp.gnu.org/pub/gn)o(u/ba)o
+(sh/)o Fu(.)275 887 y(Once)41 b(y)m(ou)g(ha)m(v)m(e)h(determined)f
+(that)h(a)f(bug)g(actually)h(exists,)j(use)c(the)g Ft(bashbug)e
+Fu(command)i(to)150 996 y(submit)25 b(a)h(bug)g(rep)s(ort.)38
b(If)26 b(y)m(ou)g(ha)m(v)m(e)h(a)f(\014x,)h(y)m(ou)f(are)g(encouraged)
h(to)f(mail)h(that)f(as)g(w)m(ell!)40 b(Suggestions)150
-1106 y(and)20 b(`philosophical')j(bug)d(rep)s(orts)g(ma)m(y)i(b)s(e)e
-(mailed)i(to)g Fs(bug-bash@gnu.org)17 b Ft(or)k(p)s(osted)f(to)i(the)f
-(Usenet)150 1215 y(newsgroup)29 b Fs(gnu.bash.bug)p Ft(.)275
-1350 y(All)i(bug)e(rep)s(orts)h(should)f(include:)225
-1484 y Fp(\017)60 b Ft(The)30 b(v)m(ersion)h(n)m(um)m(b)s(er)e(of)h
-(Bash.)225 1619 y Fp(\017)60 b Ft(The)30 b(hardw)m(are)g(and)g(op)s
-(erating)g(system.)225 1753 y Fp(\017)60 b Ft(The)30
-b(compiler)h(used)e(to)i(compile)h(Bash.)225 1888 y Fp(\017)60
-b Ft(A)30 b(description)h(of)f(the)h(bug)f(b)s(eha)m(viour.)225
-2022 y Fp(\017)60 b Ft(A)30 b(short)h(script)f(or)g(`recip)s(e')h(whic)
+1106 y(and)j(`philosophical')i(bug)e(rep)s(orts)g(ma)m(y)i(b)s(e)e
+(mailed)h(to)g Ft(bug-bash@gnu)11 b(.)d(org)40 b Fu(or)k(p)s(osted)f
+(to)i(the)150 1215 y(Usenet)31 b(newsgroup)e Ft(gnu.bash.bug)p
+Fu(.)275 1350 y(All)i(bug)e(rep)s(orts)h(should)f(include:)225
+1484 y Fq(\017)60 b Fu(The)30 b(v)m(ersion)h(n)m(um)m(b)s(er)e(of)h
+(Bash.)225 1619 y Fq(\017)60 b Fu(The)30 b(hardw)m(are)g(and)g(op)s
+(erating)g(system.)225 1753 y Fq(\017)60 b Fu(The)30
+b(compiler)h(used)e(to)i(compile)h(Bash.)225 1888 y Fq(\017)60
+b Fu(A)30 b(description)h(of)f(the)h(bug)f(b)s(eha)m(viour.)225
+2022 y Fq(\017)60 b Fu(A)30 b(short)h(script)f(or)g(`recip)s(e')h(whic)
m(h)f(exercises)i(the)e(bug)g(and)g(ma)m(y)h(b)s(e)f(used)f(to)i(repro)
-s(duce)e(it.)150 2182 y Fs(bashbug)d Ft(inserts)i(the)h(\014rst)f
+s(duce)e(it.)150 2182 y Ft(bashbug)d Fu(inserts)i(the)h(\014rst)f
(three)g(items)h(automatically)i(in)m(to)f(the)e(template)i(it)f(pro)m
(vides)f(for)g(\014ling)h(a)150 2291 y(bug)h(rep)s(ort.)275
2426 y(Please)h(send)f(all)h(rep)s(orts)f(concerning)g(this)h(man)m
-(ual)f(to)h Fs(bug-bash@gnu.org)p Ft(.)p eop end
-%%Page: 147 153
-TeXDict begin 147 152 bop 150 -116 a Ft(App)s(endix)29
+(ual)f(to)h Ft(bug-bash@gnu.org)p Fu(.)p eop end
+%%Page: 146 152
+TeXDict begin 146 151 bop 150 -116 a Fu(App)s(endix)29
b(B:)i(Ma)5 b(jor)31 b(Di\013erences)g(F)-8 b(rom)31
-b(The)f(Bourne)g(Shell)1258 b(147)150 141 y Fo(App)t(endix)58
+b(The)f(Bourne)g(Shell)1258 b(146)150 141 y Fp(App)t(endix)58
b(B)81 b(Ma)9 b(jor)54 b(Di\013erences)d(F)-13 b(rom)54
-b(The)g(Bourne)1088 299 y(Shell)150 530 y Ft(Bash)26
+b(The)g(Bourne)1088 299 y(Shell)150 530 y Fu(Bash)26
b(implemen)m(ts)h(essen)m(tially)g(the)g(same)f(grammar,)h(parameter)f
(and)g(v)-5 b(ariable)27 b(expansion,)g(redirec-)150
640 y(tion,)i(and)e(quoting)g(as)h(the)g(Bourne)f(Shell.)40
-b(Bash)27 b(uses)g(the)h Fl(posix)f Ft(standard)f(as)i(the)g(sp)s
+b(Bash)27 b(uses)g(the)h Fm(posix)f Fu(standard)f(as)i(the)g(sp)s
(eci\014cation)g(of)150 749 y(ho)m(w)34 b(these)h(features)g(are)g(to)g
(b)s(e)f(implemen)m(ted.)53 b(There)34 b(are)h(some)g(di\013erences)g
(b)s(et)m(w)m(een)g(the)g(tradi-)150 859 y(tional)e(Bourne)e(shell)h
y(n)m(um)m(b)s(er)24 b(of)h(these)h(di\013erences)f(are)h(explained)f
(in)g(greater)h(depth)f(in)g(previous)f(sections.)40
b(This)25 b(section)150 1078 y(uses)33 b(the)i(v)m(ersion)f(of)g
-Fs(sh)f Ft(included)g(in)h(SVR4.2)h(\(the)f(last)h(v)m(ersion)f(of)g
+Ft(sh)f Fu(included)g(in)h(SVR4.2)h(\(the)f(last)h(v)m(ersion)f(of)g
(the)g(historical)i(Bourne)d(shell\))150 1188 y(as)e(the)f(baseline)h
-(reference.)225 1322 y Fp(\017)60 b Ft(Bash)32 b(is)h
-Fl(posix)p Ft(-conforman)m(t,)g(ev)m(en)g(where)f(the)g
-Fl(posix)g Ft(sp)s(eci\014cation)h(di\013ers)f(from)g(traditional)330
-1431 y Fs(sh)e Ft(b)s(eha)m(vior)g(\(see)i(Section)f(6.11)h([Bash)e
-(POSIX)g(Mo)s(de],)h(page)g(94\).)225 1565 y Fp(\017)60
-b Ft(Bash)26 b(has)g(m)m(ulti-c)m(haracter)i(in)m(v)m(o)s(cation)g
+(reference.)225 1322 y Fq(\017)60 b Fu(Bash)32 b(is)h
+Fm(posix)p Fu(-conforman)m(t,)g(ev)m(en)g(where)f(the)g
+Fm(posix)g Fu(sp)s(eci\014cation)h(di\013ers)f(from)g(traditional)330
+1431 y Ft(sh)e Fu(b)s(eha)m(vior)g(\(see)i(Section)f(6.11)h([Bash)e
+(POSIX)g(Mo)s(de],)h(page)g(94\).)225 1565 y Fq(\017)60
+b Fu(Bash)26 b(has)g(m)m(ulti-c)m(haracter)i(in)m(v)m(o)s(cation)g
(options)f(\(see)f(Section)h(6.1)g([In)m(v)m(oking)g(Bash],)h(page)e
-(80\).)225 1699 y Fp(\017)60 b Ft(Bash)40 b(has)f(command-line)h
+(80\).)225 1699 y Fq(\017)60 b Fu(Bash)40 b(has)f(command-line)h
(editing)g(\(see)h(Chapter)e(8)h([Command)f(Line)g(Editing],)k(page)d
-(102\))330 1809 y(and)30 b(the)g Fs(bind)g Ft(builtin.)225
-1943 y Fp(\017)60 b Ft(Bash)46 b(pro)m(vides)g(a)g(programmable)g(w)m
+(101\))330 1809 y(and)30 b(the)g Ft(bind)g Fu(builtin.)225
+1943 y Fq(\017)60 b Fu(Bash)46 b(pro)m(vides)g(a)g(programmable)g(w)m
(ord)f(completion)i(mec)m(hanism)f(\(see)h(Section)g(8.6)g([Pro-)330
-2052 y(grammable)39 b(Completion],)i(page)e(125\),)i(and)d(builtin)g
-(commands)f Fs(complete)p Ft(,)h Fs(compgen)p Ft(,)h(and)330
-2162 y Fs(compopt)p Ft(,)29 b(to)i(manipulate)g(it.)225
-2296 y Fp(\017)60 b Ft(Bash)26 b(has)f(command)h(history)f(\(see)i
+2052 y(grammable)39 b(Completion],)i(page)e(124\),)i(and)d(builtin)g
+(commands)f Ft(complete)p Fu(,)h Ft(compgen)p Fu(,)h(and)330
+2162 y Ft(compopt)p Fu(,)29 b(to)i(manipulate)g(it.)225
+2296 y Fq(\017)60 b Fu(Bash)26 b(has)f(command)h(history)f(\(see)i
(Section)f(9.1)h([Bash)f(History)h(F)-8 b(acilities],)30
-b(page)c(134\))i(and)d(the)330 2405 y Fs(history)k Ft(and)h
-Fs(fc)g Ft(builtins)g(to)h(manipulate)g(it.)42 b(The)30
+b(page)c(133\))i(and)d(the)330 2405 y Ft(history)k Fu(and)h
+Ft(fc)g Fu(builtins)g(to)h(manipulate)g(it.)42 b(The)30
b(Bash)h(history)g(list)g(main)m(tains)g(timestamp)330
2515 y(information)g(and)e(uses)h(the)h(v)-5 b(alue)31
-b(of)f(the)h Fs(HISTTIMEFORMAT)26 b Ft(v)-5 b(ariable)32
-b(to)f(displa)m(y)f(it.)225 2649 y Fp(\017)60 b Ft(Bash)48
-b(implemen)m(ts)h Fs(csh)p Ft(-lik)m(e)g(history)f(expansion)g(\(see)h
+b(of)f(the)h Ft(HISTTIMEFORMAT)26 b Fu(v)-5 b(ariable)32
+b(to)f(displa)m(y)f(it.)225 2649 y Fq(\017)60 b Fu(Bash)48
+b(implemen)m(ts)h Ft(csh)p Fu(-lik)m(e)g(history)f(expansion)g(\(see)h
(Section)g(9.3)h([History)f(In)m(teraction],)330 2759
-y(page)31 b(136\).)225 2892 y Fp(\017)60 b Ft(Bash)33
+y(page)31 b(135\).)225 2892 y Fq(\017)60 b Fu(Bash)33
b(has)g(one-dimensional)h(arra)m(y)f(v)-5 b(ariables)34
b(\(see)g(Section)g(6.7)g([Arra)m(ys],)g(page)g(89\),)h(and)e(the)330
3002 y(appropriate)39 b(v)-5 b(ariable)40 b(expansions)f(and)g
b(of)g(the)330 3112 y(Bash)32 b(builtins)f(tak)m(e)j(options)e(to)h
(act)g(on)e(arra)m(ys.)46 b(Bash)32 b(pro)m(vides)g(a)g(n)m(um)m(b)s
(er)f(of)h(built-in)f(arra)m(y)330 3221 y(v)-5 b(ariables.)225
-3355 y Fp(\017)60 b Ft(The)37 b Fs($'...)n(')g Ft(quoting)g(syn)m(tax,)
+3355 y Fq(\017)60 b Fu(The)37 b Ft($'...)n(')g Fu(quoting)g(syn)m(tax,)
j(whic)m(h)d(expands)f(ANSI-C)h(bac)m(kslash-escap)s(ed)h(c)m
(haracters)g(in)330 3465 y(the)26 b(text)h(b)s(et)m(w)m(een)g(the)g
(single)f(quotes,)i(is)e(supp)s(orted)f(\(see)i(Section)g(3.1.2.4)h
([ANSI-C)e(Quoting],)330 3574 y(page)31 b(6\).)225 3708
-y Fp(\017)60 b Ft(Bash)69 b(supp)s(orts)e(the)i Fs($"...)n(")g
-Ft(quoting)g(syn)m(tax)g(to)h(do)e(lo)s(cale-sp)s(eci\014c)j
-(translation)f(of)330 3818 y(the)65 b(c)m(haracters)i(b)s(et)m(w)m(een)
-f(the)f(double)g(quotes.)145 b(The)65 b(`)p Fs(-D)p Ft(',)74
-b(`)p Fs(--dump-strings)p Ft(',)d(and)330 3927 y(`)p
-Fs(--dump-po-strings)p Ft(')27 b(in)m(v)m(o)s(cation)33
-b(options)e(list)h(the)f(translatable)h(strings)f(found)f(in)h(a)g
-(script)330 4037 y(\(see)g(Section)h(3.1.2.5)g([Lo)s(cale)g(T)-8
-b(ranslation],)32 b(page)f(7\).)225 4171 y Fp(\017)60
-b Ft(Bash)44 b(implemen)m(ts)g(the)f Fs(!)h Ft(k)m(eyw)m(ord)g(to)g
-(negate)h(the)f(return)e(v)-5 b(alue)44 b(of)g(a)g(pip)s(eline)f(\(see)
-h(Sec-)330 4281 y(tion)33 b(3.2.2)i([Pip)s(elines],)f(page)g(8\).)49
-b(V)-8 b(ery)33 b(useful)f(when)g(an)h Fs(if)f Ft(statemen)m(t)j(needs)
+y Fq(\017)60 b Fu(Bash)30 b(supp)s(orts)f(the)h Ft($"...)o(")f
+Fu(quoting)i(syn)m(tax)g(to)f(do)g(lo)s(cale-sp)s(eci\014c)i
+(translation)g(of)e(the)g(c)m(har-)330 3818 y(acters)g(b)s(et)m(w)m
+(een)f(the)f(double)g(quotes.)41 b(The)28 b Ft(-D)p Fu(,)h
+Ft(--dump-strings)p Fu(,)c(and)j Ft(--dump-po-strings)330
+3927 y Fu(in)m(v)m(o)s(cation)42 b(options)d(list)i(the)e(translatable)
+i(strings)f(found)e(in)h(a)h(script)g(\(see)g(Section)g(3.1.2.5)330
+4037 y([Lo)s(cale)32 b(T)-8 b(ranslation],)31 b(page)h(7\).)225
+4171 y Fq(\017)60 b Fu(Bash)44 b(implemen)m(ts)g(the)f
+Ft(!)h Fu(k)m(eyw)m(ord)g(to)g(negate)h(the)f(return)e(v)-5
+b(alue)44 b(of)g(a)g(pip)s(eline)f(\(see)h(Sec-)330 4281
+y(tion)33 b(3.2.2)i([Pip)s(elines],)f(page)g(8\).)49
+b(V)-8 b(ery)33 b(useful)f(when)g(an)h Ft(if)f Fu(statemen)m(t)j(needs)
d(to)i(act)g(only)f(if)330 4390 y(a)k(test)h(fails.)60
-b(The)36 b(Bash)g(`)p Fs(-o)30 b(pipefail)p Ft(')35 b(option)i(to)h
-Fs(set)d Ft(will)i(cause)g(a)g(pip)s(eline)g(to)g(return)f(a)330
+b(The)36 b(Bash)g(`)p Ft(-o)30 b(pipefail)p Fu(')35 b(option)i(to)h
+Ft(set)d Fu(will)i(cause)g(a)g(pip)s(eline)g(to)g(return)f(a)330
4500 y(failure)31 b(status)f(if)h(an)m(y)f(command)g(fails.)225
-4634 y Fp(\017)60 b Ft(Bash)34 b(has)g(the)g Fs(time)f
-Ft(reserv)m(ed)h(w)m(ord)g(and)f(command)h(timing)h(\(see)g(Section)g
+4634 y Fq(\017)60 b Fu(Bash)34 b(has)g(the)g Ft(time)f
+Fu(reserv)m(ed)h(w)m(ord)g(and)f(command)h(timing)h(\(see)g(Section)g
(3.2.2)g([Pip)s(elines],)330 4743 y(page)g(8\).)52 b(The)33
b(displa)m(y)i(of)f(the)g(timing)g(statistics)i(ma)m(y)f(b)s(e)e(con)m
-(trolled)j(with)e(the)g Fs(TIMEFORMAT)330 4853 y Ft(v)-5
-b(ariable.)225 4987 y Fp(\017)60 b Ft(Bash)23 b(implemen)m(ts)g(the)h
-Fs(for)29 b(\(\()h Fi(expr1)39 b Fs(;)30 b Fi(expr2)40
-b Fs(;)30 b Fi(expr3)39 b Fs(\)\))23 b Ft(arithmetic)h(for)e(command,)j
-(sim-)330 5096 y(ilar)31 b(to)g(the)g(C)f(language)h(\(see)h(Section)f
-(3.2.4.1)i([Lo)s(oping)d(Constructs],)h(page)g(10\).)225
-5230 y Fp(\017)60 b Ft(Bash)31 b(includes)f(the)g Fs(select)f
-Ft(comp)s(ound)g(command,)i(whic)m(h)f(allo)m(ws)i(the)f(generation)g
-(of)g(simple)330 5340 y(men)m(us)f(\(see)h(Section)g(3.2.4.2)i
-([Conditional)e(Constructs],)g(page)g(10\).)p eop end
-%%Page: 148 154
-TeXDict begin 148 153 bop 150 -116 a Ft(App)s(endix)29
+(trolled)j(with)e(the)g Ft(TIMEFORMAT)330 4853 y Fu(v)-5
+b(ariable.)225 4987 y Fq(\017)60 b Fu(Bash)28 b(implemen)m(ts)g(the)f
+Ft(for)j(\(\()g Fj(expr1)f Ft(;)h Fj(expr2)f Ft(;)h Fj(expr3)f
+Ft(\)\))e Fu(arithmetic)h(for)g(command,)g(sim-)330 5096
+y(ilar)j(to)g(the)g(C)f(language)h(\(see)h(Section)f(3.2.4.1)i([Lo)s
+(oping)d(Constructs],)h(page)g(10\).)225 5230 y Fq(\017)60
+b Fu(Bash)31 b(includes)f(the)g Ft(select)f Fu(comp)s(ound)g(command,)i
+(whic)m(h)f(allo)m(ws)i(the)f(generation)g(of)g(simple)330
+5340 y(men)m(us)f(\(see)h(Section)g(3.2.4.2)i([Conditional)e
+(Constructs],)g(page)g(10\).)p eop end
+%%Page: 147 153
+TeXDict begin 147 152 bop 150 -116 a Fu(App)s(endix)29
b(B:)i(Ma)5 b(jor)31 b(Di\013erences)g(F)-8 b(rom)31
-b(The)f(Bourne)g(Shell)1258 b(148)225 299 y Fp(\017)60
-b Ft(Bash)40 b(includes)g(the)g Fs([[)g Ft(comp)s(ound)e(command,)43
+b(The)f(Bourne)g(Shell)1258 b(147)225 299 y Fq(\017)60
+b Fu(Bash)40 b(includes)g(the)g Ft([[)g Fu(comp)s(ound)e(command,)43
b(whic)m(h)c(mak)m(es)i(conditional)h(testing)f(part)f(of)330
408 y(the)f(shell)g(grammar)g(\(see)h(Section)f(3.2.4.2)j([Conditional)
d(Constructs],)i(page)f(10\),)i(including)330 518 y(optional)32
-b(regular)e(expression)g(matc)m(hing.)225 653 y Fp(\017)60
-b Ft(Bash)31 b(pro)m(vides)f(optional)h(case-insensitiv)m(e)i(matc)m
-(hing)f(for)e(the)g Fs(case)g Ft(and)f Fs([[)h Ft(constructs.)225
-789 y Fp(\017)60 b Ft(Bash)27 b(includes)g(brace)h(expansion)f(\(see)h
+b(regular)e(expression)g(matc)m(hing.)225 653 y Fq(\017)60
+b Fu(Bash)31 b(pro)m(vides)f(optional)h(case-insensitiv)m(e)i(matc)m
+(hing)f(for)e(the)g Ft(case)g Fu(and)f Ft([[)h Fu(constructs.)225
+789 y Fq(\017)60 b Fu(Bash)27 b(includes)g(brace)h(expansion)f(\(see)h
(Section)g(3.5.1)i([Brace)e(Expansion],)g(page)g(21\))h(and)d(tilde)330
898 y(expansion)k(\(see)i(Section)f(3.5.2)h([Tilde)f(Expansion],)f
-(page)h(22\).)225 1034 y Fp(\017)60 b Ft(Bash)24 b(implemen)m(ts)h
-(command)e(aliases)j(and)d(the)i Fs(alias)d Ft(and)i
-Fs(unalias)e Ft(builtins)h(\(see)i(Section)g(6.6)330
-1143 y([Aliases],)32 b(page)f(88\).)225 1279 y Fp(\017)60
-b Ft(Bash)32 b(pro)m(vides)g(shell)g(arithmetic,)i(the)e
-Fs(\(\()g Ft(comp)s(ound)e(command)i(\(see)h(Section)f(3.2.4.2)j([Con-)
+(page)h(22\).)225 1034 y Fq(\017)60 b Fu(Bash)24 b(implemen)m(ts)h
+(command)e(aliases)j(and)d(the)i Ft(alias)d Fu(and)i
+Ft(unalias)e Fu(builtins)h(\(see)i(Section)g(6.6)330
+1143 y([Aliases],)32 b(page)f(88\).)225 1279 y Fq(\017)60
+b Fu(Bash)32 b(pro)m(vides)g(shell)g(arithmetic,)i(the)e
+Ft(\(\()g Fu(comp)s(ound)e(command)i(\(see)h(Section)f(3.2.4.2)j([Con-)
330 1388 y(ditional)d(Constructs],)e(page)i(10\),)g(and)e(arithmetic)i
(expansion)e(\(see)i(Section)f(6.5)h([Shell)f(Arith-)330
-1498 y(metic],)h(page)f(87\).)225 1633 y Fp(\017)60 b
-Ft(V)-8 b(ariables)31 b(presen)m(t)e(in)g(the)g(shell's)h(initial)g(en)
+1498 y(metic],)h(page)f(87\).)225 1633 y Fq(\017)60 b
+Fu(V)-8 b(ariables)31 b(presen)m(t)e(in)g(the)g(shell's)h(initial)g(en)
m(vironmen)m(t)g(are)g(automatically)i(exp)s(orted)d(to)h(c)m(hild)330
1743 y(pro)s(cesses.)38 b(The)23 b(Bourne)g(shell)g(do)s(es)g(not)g
(normally)g(do)g(this)g(unless)g(the)g(v)-5 b(ariables)24
b(are)f(explicitly)330 1852 y(mark)m(ed)30 b(using)g(the)h
-Fs(export)e Ft(command.)225 1988 y Fp(\017)60 b Ft(Bash)26
-b(supp)s(orts)d(the)j(`)p Fs(+=)p Ft(')f(assignmen)m(t)i(op)s(erator,)g
+Ft(export)e Fu(command.)225 1988 y Fq(\017)60 b Fu(Bash)26
+b(supp)s(orts)d(the)j(`)p Ft(+=)p Fu(')f(assignmen)m(t)i(op)s(erator,)g
(whic)m(h)e(app)s(ends)f(to)i(the)g(v)-5 b(alue)26 b(of)f(the)h(v)-5
b(ariable)330 2097 y(named)30 b(on)g(the)h(left)g(hand)e(side.)225
-2233 y Fp(\017)60 b Ft(Bash)36 b(includes)g(the)g Fl(posix)f
-Ft(pattern)h(remo)m(v)-5 b(al)37 b(`)p Fs(\045)p Ft(',)h(`)p
-Fs(#)p Ft(',)g(`)p Fs(\045\045)p Ft(')e(and)f(`)p Fs(##)p
-Ft(')h(expansions)g(to)g(remo)m(v)m(e)330 2342 y(leading)f(or)f
+2233 y Fq(\017)60 b Fu(Bash)36 b(includes)g(the)g Fm(posix)f
+Fu(pattern)h(remo)m(v)-5 b(al)37 b(`)p Ft(\045)p Fu(',)h(`)p
+Ft(#)p Fu(',)g(`)p Ft(\045\045)p Fu(')e(and)f(`)p Ft(##)p
+Fu(')h(expansions)g(to)g(remo)m(v)m(e)330 2342 y(leading)f(or)f
(trailing)h(substrings)e(from)g(v)-5 b(ariable)35 b(v)-5
b(alues)35 b(\(see)g(Section)g(3.5.3)g([Shell)g(P)m(arameter)330
-2452 y(Expansion],)30 b(page)h(23\).)225 2587 y Fp(\017)60
-b Ft(The)46 b(expansion)g Fs(${#xx})p Ft(,)j(whic)m(h)d(returns)f(the)i
-(length)f(of)h Fs(${xx})p Ft(,)i(is)e(supp)s(orted)d(\(see)j(Sec-)330
+2452 y(Expansion],)30 b(page)h(23\).)225 2587 y Fq(\017)60
+b Fu(The)46 b(expansion)g Ft(${#xx})p Fu(,)j(whic)m(h)d(returns)f(the)i
+(length)f(of)h Ft(${xx})p Fu(,)i(is)e(supp)s(orted)d(\(see)j(Sec-)330
2697 y(tion)31 b(3.5.3)h([Shell)f(P)m(arameter)g(Expansion],)f(page)i
-(23\).)225 2832 y Fp(\017)60 b Ft(The)30 b(expansion)g
-Fs(${var:)p Fq(o\013set)r Fs([:)p Fq(length)p Fs(]})p
-Ft(,)g(whic)m(h)g(expands)g(to)h(the)g(substring)e(of)i
-Fs(var)p Ft('s)e(v)-5 b(alue)330 2942 y(of)43 b(length)g
-Fq(length)p Ft(,)j(b)s(eginning)c(at)i Fq(o\013set)r
-Ft(,)j(is)42 b(presen)m(t)h(\(see)h(Section)f(3.5.3)i([Shell)e(P)m
+(23\).)225 2832 y Fq(\017)60 b Fu(The)30 b(expansion)g
+Ft(${var:)p Fr(o\013set)r Ft([:)p Fr(length)p Ft(]})p
+Fu(,)g(whic)m(h)g(expands)g(to)h(the)g(substring)e(of)i
+Ft(var)p Fu('s)e(v)-5 b(alue)330 2942 y(of)43 b(length)g
+Fr(length)p Fu(,)k(b)s(eginning)42 b(at)i Fr(o\013set)p
+Fu(,)j(is)c(presen)m(t)g(\(see)g(Section)h(3.5.3)h([Shell)e(P)m
(arameter)330 3051 y(Expansion],)30 b(page)h(23\).)225
-3187 y Fp(\017)60 b Ft(The)21 b(expansion)f Fs(${var/[/])p
-Fq(pattern)p Fs([/)p Fq(replacemen)m(t)r Fs(]})p Ft(,)i(whic)m(h)e
-(matc)m(hes)j Fq(pattern)e Ft(and)f(replaces)330 3296
-y(it)29 b(with)e Fq(replacemen)m(t)32 b Ft(in)c(the)g(v)-5
-b(alue)29 b(of)f Fs(var)p Ft(,)g(is)g(a)m(v)-5 b(ailable)31
+3187 y Fq(\017)60 b Fu(The)21 b(expansion)f Ft(${var/[/])p
+Fr(pattern)p Ft([/)p Fr(replacemen)m(t)r Ft(]})p Fu(,)i(whic)m(h)e
+(matc)m(hes)j Fr(pattern)e Fu(and)f(replaces)330 3296
+y(it)29 b(with)e Fr(replacemen)m(t)32 b Fu(in)c(the)g(v)-5
+b(alue)29 b(of)f Ft(var)p Fu(,)g(is)g(a)m(v)-5 b(ailable)31
b(\(see)e(Section)f(3.5.3)i([Shell)f(P)m(arameter)330
-3406 y(Expansion],)h(page)h(23\).)225 3541 y Fp(\017)60
-b Ft(The)32 b(expansion)g Fs(${!)p Fi(prefix)11 b Fs(*})29
-b Ft(expansion,)j(whic)m(h)g(expands)g(to)h(the)f(names)g(of)h(all)g
-(shell)f(v)-5 b(ari-)330 3651 y(ables)36 b(whose)f(names)h(b)s(egin)f
-(with)g Fq(pre\014x)6 b Ft(,)36 b(is)g(a)m(v)-5 b(ailable)38
-b(\(see)e(Section)h(3.5.3)g([Shell)f(P)m(arameter)330
-3761 y(Expansion],)30 b(page)h(23\).)225 3896 y Fp(\017)60
-b Ft(Bash)22 b(has)f Fq(indirect)j Ft(v)-5 b(ariable)22
-b(expansion)g(using)f Fs(${!word})e Ft(\(see)k(Section)f(3.5.3)i
+3406 y(Expansion],)h(page)h(23\).)225 3541 y Fq(\017)60
+b Fu(The)33 b(expansion)g Ft(${!)p Fj(prefix)p Ft(*})d
+Fu(expansion,)k(whic)m(h)e(expands)h(to)h(the)f(names)g(of)g(all)h
+(shell)f(v)-5 b(ari-)330 3651 y(ables)36 b(whose)g(names)g(b)s(egin)g
+(with)g Fr(pre\014x)p Fu(,)g(is)g(a)m(v)-5 b(ailable)39
+b(\(see)e(Section)g(3.5.3)g([Shell)g(P)m(arameter)330
+3761 y(Expansion],)30 b(page)h(23\).)225 3896 y Fq(\017)60
+b Fu(Bash)22 b(has)f Fr(indirect)j Fu(v)-5 b(ariable)22
+b(expansion)g(using)f Ft(${!word})e Fu(\(see)k(Section)f(3.5.3)i
([Shell)e(P)m(arameter)330 4006 y(Expansion],)30 b(page)h(23\).)225
-4141 y Fp(\017)60 b Ft(Bash)31 b(can)f(expand)g(p)s(ositional)h
-(parameters)g(b)s(ey)m(ond)e Fs($9)h Ft(using)g Fs(${)p
-Fi(num)11 b Fs(})p Ft(.)225 4276 y Fp(\017)60 b Ft(The)27
-b Fl(posix)g Fs($\(\))g Ft(form)g(of)h(command)g(substitution)f(is)h
+4141 y Fq(\017)60 b Fu(Bash)31 b(can)f(expand)g(p)s(ositional)h
+(parameters)g(b)s(ey)m(ond)e Ft($9)h Fu(using)g Ft(${)p
+Fj(num)p Ft(})p Fu(.)225 4276 y Fq(\017)60 b Fu(The)27
+b Fm(posix)g Ft($\(\))g Fu(form)g(of)h(command)g(substitution)f(is)h
(implemen)m(ted)g(\(see)h(Section)f(3.5.4)i([Com-)330
4386 y(mand)38 b(Substitution],)k(page)e(28\),)j(and)38
-b(preferred)g(to)i(the)g(Bourne)f(shell's)h Fs(``)e Ft(\(whic)m(h)i(is)
+b(preferred)g(to)i(the)g(Bourne)f(shell's)h Ft(``)e Fu(\(whic)m(h)i(is)
f(also)330 4495 y(implemen)m(ted)31 b(for)f(bac)m(kw)m(ards)h
-(compatibilit)m(y\).)225 4631 y Fp(\017)60 b Ft(Bash)31
+(compatibilit)m(y\).)225 4631 y Fq(\017)60 b Fu(Bash)31
b(has)f(pro)s(cess)g(substitution)g(\(see)h(Section)g(3.5.6)h([Pro)s
-(cess)f(Substitution],)f(page)h(29\).)225 4766 y Fp(\017)60
-b Ft(Bash)55 b(automatically)j(assigns)e(v)-5 b(ariables)55
+(cess)f(Substitution],)f(page)h(29\).)225 4766 y Fq(\017)60
+b Fu(Bash)55 b(automatically)j(assigns)e(v)-5 b(ariables)55
b(that)h(pro)m(vide)f(information)h(ab)s(out)f(the)g(curren)m(t)330
-4876 y(user)40 b(\()p Fs(UID)p Ft(,)i Fs(EUID)p Ft(,)g(and)e
-Fs(GROUPS)p Ft(\),)h(the)g(curren)m(t)f(host)g(\()p Fs(HOSTTYPE)p
-Ft(,)h Fs(OSTYPE)p Ft(,)h Fs(MACHTYPE)p Ft(,)f(and)330
-4985 y Fs(HOSTNAME)p Ft(\),)55 b(and)c(the)g(instance)h(of)g(Bash)f
-(that)h(is)f(running)f(\()p Fs(BASH)p Ft(,)56 b Fs(BASH_VERSION)p
-Ft(,)e(and)330 5095 y Fs(BASH_VERSINFO)p Ft(\).)37 b(See)31
+4876 y(user)40 b(\()p Ft(UID)p Fu(,)i Ft(EUID)p Fu(,)g(and)e
+Ft(GROUPS)p Fu(\),)h(the)g(curren)m(t)f(host)g(\()p Ft(HOSTTYPE)p
+Fu(,)h Ft(OSTYPE)p Fu(,)h Ft(MACHTYPE)p Fu(,)f(and)330
+4985 y Ft(HOSTNAME)p Fu(\),)55 b(and)c(the)g(instance)h(of)g(Bash)f
+(that)h(is)f(running)f(\()p Ft(BASH)p Fu(,)56 b Ft(BASH_VERSION)p
+Fu(,)e(and)330 5095 y Ft(BASH_VERSINFO)p Fu(\).)37 b(See)31
b(Section)g(5.2)h([Bash)e(V)-8 b(ariables],)33 b(page)e(69,)g(for)f
-(details.)225 5230 y Fp(\017)60 b Ft(The)44 b Fs(IFS)f
-Ft(v)-5 b(ariable)45 b(is)f(used)f(to)i(split)f(only)g(the)g(results)g
+(details.)225 5230 y Fq(\017)60 b Fu(The)44 b Ft(IFS)f
+Fu(v)-5 b(ariable)45 b(is)f(used)f(to)i(split)f(only)g(the)g(results)g
(of)h(expansion,)i(not)d(all)h(w)m(ords)f(\(see)330 5340
y(Section)29 b(3.5.7)h([W)-8 b(ord)29 b(Splitting],)h(page)f(29\).)41
b(This)28 b(closes)h(a)g(longstanding)g(shell)f(securit)m(y)h(hole.)p
eop end
-%%Page: 149 155
-TeXDict begin 149 154 bop 150 -116 a Ft(App)s(endix)29
+%%Page: 148 154
+TeXDict begin 148 153 bop 150 -116 a Fu(App)s(endix)29
b(B:)i(Ma)5 b(jor)31 b(Di\013erences)g(F)-8 b(rom)31
-b(The)f(Bourne)g(Shell)1258 b(149)225 299 y Fp(\017)60
-b Ft(The)36 b(\014lename)h(expansion)f(brac)m(k)m(et)i(expression)f(co)
-s(de)f(uses)g(`)p Fs(!)p Ft(')h(and)f(`)p Fs(^)p Ft(')h(to)g(negate)h
+b(The)f(Bourne)g(Shell)1258 b(148)225 299 y Fq(\017)60
+b Fu(The)36 b(\014lename)h(expansion)f(brac)m(k)m(et)i(expression)f(co)
+s(de)f(uses)g(`)p Ft(!)p Fu(')h(and)f(`)p Ft(^)p Fu(')h(to)g(negate)h
(the)f(set)g(of)330 408 y(c)m(haracters)32 b(b)s(et)m(w)m(een)f(the)f
(brac)m(k)m(ets.)43 b(The)29 b(Bourne)i(shell)f(uses)g(only)h(`)p
-Fs(!)p Ft('.)225 536 y Fp(\017)60 b Ft(Bash)38 b(implemen)m(ts)g(the)g
-(full)g(set)g(of)g Fl(posix)f Ft(\014lename)h(expansion)g(op)s
-(erators,)i(including)d Fq(c)m(har-)330 646 y(acter)i(classes)t
-Ft(,)h Fq(equiv)-5 b(alence)39 b(classes)t Ft(,)h(and)d
-Fq(collating)j(sym)m(b)s(ols)g Ft(\(see)f(Section)f(3.5.8)h([Filename)
-330 756 y(Expansion],)30 b(page)h(29\).)225 883 y Fp(\017)60
-b Ft(Bash)35 b(implemen)m(ts)g(extended)g(pattern)g(matc)m(hing)h
-(features)f(when)f(the)h Fs(extglob)d Ft(shell)j(option)330
-993 y(is)30 b(enabled)h(\(see)g(Section)g(3.5.8.1)i([P)m(attern)f(Matc)
-m(hing],)g(page)f(30\).)225 1121 y Fp(\017)60 b Ft(It)22
-b(is)g(p)s(ossible)g(to)h(ha)m(v)m(e)g(a)f(v)-5 b(ariable)23
-b(and)f(a)g(function)g(with)g(the)g(same)g(name;)j Fs(sh)d
-Ft(do)s(es)g(not)g(separate)330 1230 y(the)31 b(t)m(w)m(o)g(name)g
-(spaces.)225 1358 y Fp(\017)60 b Ft(Bash)30 b(functions)e(are)i(p)s
-(ermitted)f(to)h(ha)m(v)m(e)h(lo)s(cal)g(v)-5 b(ariables)30
-b(using)f(the)g Fs(local)f Ft(builtin,)i(and)e(th)m(us)330
-1468 y(useful)i(recursiv)m(e)g(functions)g(ma)m(y)h(b)s(e)f(written)g
-(\(see)i(Section)f(4.2)g([Bash)g(Builtins],)g(page)h(48\).)225
-1596 y Fp(\017)60 b Ft(V)-8 b(ariable)25 b(assignmen)m(ts)g(preceding)e
-(commands)h(a\013ect)h(only)f(that)g(command,)h(ev)m(en)f(builtins)g
-(and)330 1705 y(functions)36 b(\(see)h(Section)g(3.7.4)h([En)m
-(vironmen)m(t],)h(page)e(37\).)60 b(In)35 b Fs(sh)p Ft(,)j(all)f(v)-5
-b(ariable)37 b(assignmen)m(ts)330 1815 y(preceding)30
-b(commands)g(are)h(global)h(unless)d(the)i(command)f(is)h(executed)g
-(from)f(the)g(\014le)h(system.)225 1943 y Fp(\017)60
-b Ft(Bash)44 b(p)s(erforms)e(\014lename)i(expansion)f(on)h(\014lenames)
-g(sp)s(eci\014ed)f(as)h(op)s(erands)e(to)j(input)e(and)330
-2052 y(output)30 b(redirection)h(op)s(erators)g(\(see)g(Section)g(3.6)h
-([Redirections],)g(page)f(31\).)225 2180 y Fp(\017)60
-b Ft(Bash)29 b(con)m(tains)h(the)f(`)p Fs(<>)p Ft(')f(redirection)i(op)
-s(erator,)f(allo)m(wing)i(a)e(\014le)g(to)g(b)s(e)f(op)s(ened)g(for)h
-(b)s(oth)f(read-)330 2290 y(ing)35 b(and)f(writing,)i(and)e(the)h(`)p
-Fs(&>)p Ft(')g(redirection)g(op)s(erator,)h(for)f(directing)g(standard)
-f(output)h(and)330 2399 y(standard)30 b(error)g(to)h(the)f(same)h
-(\014le)f(\(see)i(Section)f(3.6)g([Redirections],)h(page)g(31\).)225
-2527 y Fp(\017)60 b Ft(Bash)21 b(includes)f(the)h(`)p
-Fs(<<<)p Ft(')g(redirection)g(op)s(erator,)i(allo)m(wing)g(a)e(string)f
-(to)i(b)s(e)e(used)g(as)h(the)g(standard)330 2637 y(input)29
-b(to)j(a)e(command.)225 2765 y Fp(\017)60 b Ft(Bash)29
-b(implemen)m(ts)h(the)f(`)p Fs([n]<&)p Fi(word)11 b Ft(')26
-b(and)j(`)p Fs([n]>&)p Fi(word)11 b Ft(')26 b(redirection)k(op)s
-(erators,)g(whic)m(h)e(mo)m(v)m(e)330 2874 y(one)j(\014le)f(descriptor)
-g(to)h(another.)225 3002 y Fp(\017)60 b Ft(Bash)25 b(treats)h(a)f(n)m
-(um)m(b)s(er)e(of)i(\014lenames)g(sp)s(ecially)g(when)f(they)h(are)g
-(used)f(in)g(redirection)i(op)s(erators)330 3112 y(\(see)31
-b(Section)h(3.6)f([Redirections],)h(page)f(31\).)225
-3240 y Fp(\017)60 b Ft(Bash)33 b(can)f(op)s(en)g(net)m(w)m(ork)i
-(connections)f(to)h(arbitrary)e(mac)m(hines)h(and)f(services)h(with)f
-(the)h(redi-)330 3349 y(rection)e(op)s(erators)g(\(see)g(Section)g(3.6)
-h([Redirections],)g(page)f(31\).)225 3477 y Fp(\017)60
-b Ft(The)29 b Fs(noclobber)e Ft(option)j(is)g(a)m(v)-5
+Ft(!)p Fu('.)225 536 y Fq(\017)60 b Fu(Bash)38 b(implemen)m(ts)g(the)g
+(full)g(set)g(of)g Fm(posix)f Fu(\014lename)h(expansion)g(op)s
+(erators,)i(including)d Fr(c)m(har-)330 646 y(acter)i(classes)p
+Fu(,)j Fr(equiv)-5 b(alence)39 b(classes)p Fu(,)j(and)37
+b Fr(collating)k(sym)m(b)s(ols)g Fu(\(see)e(Section)g(3.5.8)h
+([Filename)330 756 y(Expansion],)30 b(page)h(29\).)225
+883 y Fq(\017)60 b Fu(Bash)35 b(implemen)m(ts)g(extended)g(pattern)g
+(matc)m(hing)h(features)f(when)f(the)h Ft(extglob)d Fu(shell)j(option)
+330 993 y(is)30 b(enabled)h(\(see)g(Section)g(3.5.8.1)i([P)m(attern)f
+(Matc)m(hing],)g(page)f(30\).)225 1121 y Fq(\017)60 b
+Fu(It)22 b(is)g(p)s(ossible)g(to)h(ha)m(v)m(e)g(a)f(v)-5
+b(ariable)23 b(and)f(a)g(function)g(with)g(the)g(same)g(name;)j
+Ft(sh)d Fu(do)s(es)g(not)g(separate)330 1230 y(the)31
+b(t)m(w)m(o)g(name)g(spaces.)225 1358 y Fq(\017)60 b
+Fu(Bash)30 b(functions)e(are)i(p)s(ermitted)f(to)h(ha)m(v)m(e)h(lo)s
+(cal)g(v)-5 b(ariables)30 b(using)f(the)g Ft(local)f
+Fu(builtin,)i(and)e(th)m(us)330 1468 y(useful)i(recursiv)m(e)g
+(functions)g(ma)m(y)h(b)s(e)f(written)g(\(see)i(Section)f(4.2)g([Bash)g
+(Builtins],)g(page)h(48\).)225 1596 y Fq(\017)60 b Fu(V)-8
+b(ariable)25 b(assignmen)m(ts)g(preceding)e(commands)h(a\013ect)h(only)
+f(that)g(command,)h(ev)m(en)f(builtins)g(and)330 1705
+y(functions)36 b(\(see)h(Section)g(3.7.4)h([En)m(vironmen)m(t],)h(page)
+e(37\).)60 b(In)35 b Ft(sh)p Fu(,)j(all)f(v)-5 b(ariable)37
+b(assignmen)m(ts)330 1815 y(preceding)30 b(commands)g(are)h(global)h
+(unless)d(the)i(command)f(is)h(executed)g(from)f(the)g(\014le)h
+(system.)225 1943 y Fq(\017)60 b Fu(Bash)44 b(p)s(erforms)e(\014lename)
+i(expansion)f(on)h(\014lenames)g(sp)s(eci\014ed)f(as)h(op)s(erands)e
+(to)j(input)e(and)330 2052 y(output)30 b(redirection)h(op)s(erators)g
+(\(see)g(Section)g(3.6)h([Redirections],)g(page)f(31\).)225
+2180 y Fq(\017)60 b Fu(Bash)29 b(con)m(tains)h(the)f(`)p
+Ft(<>)p Fu(')f(redirection)i(op)s(erator,)f(allo)m(wing)i(a)e(\014le)g
+(to)g(b)s(e)f(op)s(ened)g(for)h(b)s(oth)f(read-)330 2290
+y(ing)35 b(and)f(writing,)i(and)e(the)h(`)p Ft(&>)p Fu(')g(redirection)
+g(op)s(erator,)h(for)f(directing)g(standard)f(output)h(and)330
+2399 y(standard)30 b(error)g(to)h(the)f(same)h(\014le)f(\(see)i
+(Section)f(3.6)g([Redirections],)h(page)g(31\).)225 2527
+y Fq(\017)60 b Fu(Bash)21 b(includes)f(the)h(`)p Ft(<<<)p
+Fu(')g(redirection)g(op)s(erator,)i(allo)m(wing)g(a)e(string)f(to)i(b)s
+(e)e(used)g(as)h(the)g(standard)330 2637 y(input)29 b(to)j(a)e
+(command.)225 2765 y Fq(\017)60 b Fu(Bash)32 b(implemen)m(ts)f(the)h(`)
+p Ft([n]<&)p Fj(word)p Fu(')d(and)i(`)p Ft([n]>&)p Fj(word)p
+Fu(')e(redirection)j(op)s(erators,)g(whic)m(h)f(mo)m(v)m(e)330
+2874 y(one)g(\014le)f(descriptor)g(to)h(another.)225
+3002 y Fq(\017)60 b Fu(Bash)25 b(treats)h(a)f(n)m(um)m(b)s(er)e(of)i
+(\014lenames)g(sp)s(ecially)g(when)f(they)h(are)g(used)f(in)g
+(redirection)i(op)s(erators)330 3112 y(\(see)31 b(Section)h(3.6)f
+([Redirections],)h(page)f(31\).)225 3240 y Fq(\017)60
+b Fu(Bash)33 b(can)f(op)s(en)g(net)m(w)m(ork)i(connections)f(to)h
+(arbitrary)e(mac)m(hines)h(and)f(services)h(with)f(the)h(redi-)330
+3349 y(rection)e(op)s(erators)g(\(see)g(Section)g(3.6)h
+([Redirections],)g(page)f(31\).)225 3477 y Fq(\017)60
+b Fu(The)29 b Ft(noclobber)e Fu(option)j(is)g(a)m(v)-5
b(ailable)32 b(to)e(a)m(v)m(oid)h(o)m(v)m(erwriting)g(existing)g
(\014les)e(with)h(output)f(redi-)330 3587 y(rection)39
-b(\(see)h(Section)f(4.3.1)h([The)e(Set)h(Builtin],)i(page)e(59\).)66
-b(The)38 b(`)p Fs(>|)p Ft(')h(redirection)g(op)s(erator)330
+b(\(see)h(Section)f(4.3.1)h([The)e(Set)h(Builtin],)i(page)e(58\).)66
+b(The)38 b(`)p Ft(>|)p Fu(')h(redirection)g(op)s(erator)330
3696 y(ma)m(y)31 b(b)s(e)f(used)f(to)i(o)m(v)m(erride)h
-Fs(noclobber)p Ft(.)225 3824 y Fp(\017)60 b Ft(The)34
-b(Bash)g Fs(cd)g Ft(and)f Fs(pwd)g Ft(builtins)h(\(see)h(Section)g(4.1)
+Ft(noclobber)p Fu(.)225 3824 y Fq(\017)60 b Fu(The)34
+b(Bash)g Ft(cd)g Fu(and)f Ft(pwd)g Fu(builtins)h(\(see)h(Section)g(4.1)
g([Bourne)g(Shell)f(Builtins],)h(page)g(41\))h(eac)m(h)330
-3934 y(tak)m(e)c(`)p Fs(-L)p Ft(')e(and)g(`)p Fs(-P)p
-Ft(')g(options)h(to)g(switc)m(h)g(b)s(et)m(w)m(een)g(logical)i(and)c
-(ph)m(ysical)i(mo)s(des.)225 4061 y Fp(\017)60 b Ft(Bash)25
-b(allo)m(ws)h(a)g(function)e(to)i(o)m(v)m(erride)g(a)g(builtin)e(with)h
-(the)g(same)g(name,)i(and)d(pro)m(vides)h(access)h(to)330
-4171 y(that)34 b(builtin's)f(functionalit)m(y)h(within)f(the)g
-(function)g(via)h(the)f Fs(builtin)f Ft(and)g Fs(command)g
-Ft(builtins)330 4281 y(\(see)f(Section)h(4.2)f([Bash)g(Builtins],)g
-(page)g(48\).)225 4408 y Fp(\017)60 b Ft(The)35 b Fs(command)e
-Ft(builtin)i(allo)m(ws)i(selectiv)m(e)h(disabling)e(of)f(functions)g
-(when)g(command)g(lo)s(okup)g(is)330 4518 y(p)s(erformed)29
-b(\(see)i(Section)g(4.2)h([Bash)f(Builtins],)g(page)g(48\).)225
-4646 y Fp(\017)60 b Ft(Individual)23 b(builtins)g(ma)m(y)i(b)s(e)e
-(enabled)h(or)g(disabled)g(using)f(the)h Fs(enable)f
-Ft(builtin)g(\(see)i(Section)g(4.2)330 4756 y([Bash)31
-b(Builtins],)g(page)g(48\).)225 4883 y Fp(\017)60 b Ft(The)26
-b(Bash)h Fs(exec)e Ft(builtin)h(tak)m(es)i(additional)f(options)g(that)
+3934 y(tak)m(e)c Ft(-L)e Fu(and)f Ft(-P)h Fu(options)h(to)g(switc)m(h)g
+(b)s(et)m(w)m(een)g(logical)i(and)c(ph)m(ysical)i(mo)s(des.)225
+4061 y Fq(\017)60 b Fu(Bash)25 b(allo)m(ws)h(a)g(function)e(to)i(o)m(v)
+m(erride)g(a)g(builtin)e(with)h(the)g(same)g(name,)i(and)d(pro)m(vides)
+h(access)h(to)330 4171 y(that)34 b(builtin's)f(functionalit)m(y)h
+(within)f(the)g(function)g(via)h(the)f Ft(builtin)f Fu(and)g
+Ft(command)g Fu(builtins)330 4281 y(\(see)f(Section)h(4.2)f([Bash)g
+(Builtins],)g(page)g(48\).)225 4408 y Fq(\017)60 b Fu(The)35
+b Ft(command)e Fu(builtin)i(allo)m(ws)i(selectiv)m(e)h(disabling)e(of)f
+(functions)g(when)g(command)g(lo)s(okup)g(is)330 4518
+y(p)s(erformed)29 b(\(see)i(Section)g(4.2)h([Bash)f(Builtins],)g(page)g
+(48\).)225 4646 y Fq(\017)60 b Fu(Individual)23 b(builtins)g(ma)m(y)i
+(b)s(e)e(enabled)h(or)g(disabled)g(using)f(the)h Ft(enable)f
+Fu(builtin)g(\(see)i(Section)g(4.2)330 4756 y([Bash)31
+b(Builtins],)g(page)g(48\).)225 4883 y Fq(\017)60 b Fu(The)26
+b(Bash)h Ft(exec)e Fu(builtin)h(tak)m(es)i(additional)f(options)g(that)
g(allo)m(w)h(users)d(to)j(con)m(trol)g(the)e(con)m(ten)m(ts)330
4993 y(of)35 b(the)f(en)m(vironmen)m(t)h(passed)f(to)h(the)g(executed)g
(command,)h(and)d(what)i(the)f(zeroth)h(argumen)m(t)330
5103 y(to)c(the)g(command)f(is)g(to)h(b)s(e)f(\(see)h(Section)h(4.1)f
([Bourne)f(Shell)h(Builtins],)g(page)g(41\).)225 5230
-y Fp(\017)60 b Ft(Shell)29 b(functions)g(ma)m(y)h(b)s(e)f(exp)s(orted)g
+y Fq(\017)60 b Fu(Shell)29 b(functions)g(ma)m(y)h(b)s(e)f(exp)s(orted)g
(to)h(c)m(hildren)f(via)h(the)g(en)m(vironmen)m(t)g(using)f
-Fs(export)f(-f)h Ft(\(see)330 5340 y(Section)i(3.3)h([Shell)e(F)-8
+Ft(export)f(-f)h Fu(\(see)330 5340 y(Section)i(3.3)h([Shell)e(F)-8
b(unctions],)32 b(page)f(17\).)p eop end
-%%Page: 150 156
-TeXDict begin 150 155 bop 150 -116 a Ft(App)s(endix)29
+%%Page: 149 155
+TeXDict begin 149 154 bop 150 -116 a Fu(App)s(endix)29
b(B:)i(Ma)5 b(jor)31 b(Di\013erences)g(F)-8 b(rom)31
-b(The)f(Bourne)g(Shell)1258 b(150)225 299 y Fp(\017)60
-b Ft(The)37 b(Bash)g Fs(export)p Ft(,)h Fs(readonly)p
-Ft(,)f(and)f Fs(declare)g Ft(builtins)h(can)g(tak)m(e)i(a)f(`)p
-Fs(-f)p Ft(')f(option)h(to)g(act)g(on)330 408 y(shell)26
-b(functions,)g(a)h(`)p Fs(-p)p Ft(')e(option)h(to)h(displa)m(y)f(v)-5
-b(ariables)26 b(with)g(v)-5 b(arious)25 b(attributes)i(set)f(in)f(a)i
-(format)330 518 y(that)g(can)f(b)s(e)f(used)h(as)g(shell)g(input,)h(a)f
-(`)p Fs(-n)p Ft(')g(option)g(to)h(remo)m(v)m(e)h(v)-5
-b(arious)26 b(v)-5 b(ariable)27 b(attributes,)h(and)330
-628 y(`)p Fs(name=value)p Ft(')g(argumen)m(ts)j(to)g(set)g(v)-5
+b(The)f(Bourne)g(Shell)1258 b(149)225 299 y Fq(\017)60
+b Fu(The)40 b(Bash)h Ft(export)p Fu(,)h Ft(readonly)p
+Fu(,)f(and)g Ft(declare)d Fu(builtins)j(can)g(tak)m(e)h(a)f
+Ft(-f)f Fu(option)i(to)f(act)h(on)330 408 y(shell)30
+b(functions,)f(a)h Ft(-p)f Fu(option)g(to)i(displa)m(y)e(v)-5
+b(ariables)30 b(with)f(v)-5 b(arious)30 b(attributes)g(set)g(in)f(a)h
+(format)330 518 y(that)g(can)g(b)s(e)f(used)g(as)g(shell)h(input,)f(a)h
+Ft(-n)f Fu(option)h(to)g(remo)m(v)m(e)h(v)-5 b(arious)30
+b(v)-5 b(ariable)30 b(attributes,)h(and)330 628 y(`)p
+Ft(name=value)p Fu(')d(argumen)m(ts)j(to)g(set)g(v)-5
b(ariable)31 b(attributes)g(and)f(v)-5 b(alues)30 b(sim)m(ultaneously)
--8 b(.)225 765 y Fp(\017)60 b Ft(The)42 b(Bash)h Fs(hash)f
-Ft(builtin)g(allo)m(ws)j(a)e(name)g(to)g(b)s(e)f(asso)s(ciated)j(with)d
+-8 b(.)225 765 y Fq(\017)60 b Fu(The)42 b(Bash)h Ft(hash)f
+Fu(builtin)g(allo)m(ws)j(a)e(name)g(to)g(b)s(e)f(asso)s(ciated)j(with)d
(an)h(arbitrary)f(\014lename,)330 874 y(ev)m(en)30 b(when)e(that)h
(\014lename)g(cannot)h(b)s(e)e(found)g(b)m(y)h(searc)m(hing)g(the)g
-Fs($PATH)p Ft(,)g(using)f(`)p Fs(hash)h(-p)p Ft(')g(\(see)330
+Ft($PATH)p Fu(,)g(using)f(`)p Ft(hash)h(-p)p Fu(')g(\(see)330
984 y(Section)i(4.1)h([Bourne)e(Shell)g(Builtins],)h(page)h(41\).)225
-1121 y Fp(\017)60 b Ft(Bash)27 b(includes)f(a)i Fs(help)d
-Ft(builtin)i(for)f(quic)m(k)h(reference)h(to)f(shell)g(facilities)i
+1121 y Fq(\017)60 b Fu(Bash)27 b(includes)f(a)i Ft(help)d
+Fu(builtin)i(for)f(quic)m(k)h(reference)h(to)f(shell)g(facilities)i
(\(see)f(Section)g(4.2)g([Bash)330 1230 y(Builtins],)j(page)g(48\).)225
-1367 y Fp(\017)60 b Ft(The)42 b Fs(printf)g Ft(builtin)g(is)h(a)m(v)-5
+1367 y Fq(\017)60 b Fu(The)42 b Ft(printf)g Fu(builtin)g(is)h(a)m(v)-5
b(ailable)45 b(to)f(displa)m(y)f(formatted)g(output)g(\(see)h(Section)g
(4.2)g([Bash)330 1477 y(Builtins],)31 b(page)g(48\).)225
-1614 y Fp(\017)60 b Ft(The)26 b(Bash)h Fs(read)f Ft(builtin)g(\(see)i
+1614 y Fq(\017)60 b Fu(The)26 b(Bash)h Ft(read)f Fu(builtin)g(\(see)i
(Section)g(4.2)g([Bash)f(Builtins],)h(page)g(48\))g(will)f(read)g(a)g
-(line)g(ending)330 1724 y(in)f(`)p Fs(\\)p Ft(')h(with)f(the)g(`)p
-Fs(-r)p Ft(')h(option,)h(and)d(will)i(use)f(the)h Fs(REPLY)e
-Ft(v)-5 b(ariable)27 b(as)g(a)f(default)h(if)f(no)h(non-option)330
-1833 y(argumen)m(ts)k(are)h(supplied.)42 b(The)30 b(Bash)i
-Fs(read)e Ft(builtin)g(also)j(accepts)f(a)g(prompt)e(string)h(with)g
-(the)330 1943 y(`)p Fs(-p)p Ft(')k(option)g(and)f(will)h(use)g
-(Readline)g(to)h(obtain)f(the)g(line)g(when)f(giv)m(en)i(the)f(`)p
-Fs(-e)p Ft(')g(option.)54 b(The)330 2052 y Fs(read)31
-b Ft(builtin)h(also)i(has)e(additional)h(options)g(to)g(con)m(trol)h
-(input:)44 b(the)32 b(`)p Fs(-s)p Ft(')h(option)f(will)h(turn)f(o\013)
-330 2162 y(ec)m(hoing)38 b(of)e(input)f(c)m(haracters)j(as)e(they)h
-(are)f(read,)i(the)e(`)p Fs(-t)p Ft(')g(option)h(will)g(allo)m(w)g
-Fs(read)e Ft(to)i(time)330 2271 y(out)c(if)g(input)f(do)s(es)g(not)h
-(arriv)m(e)g(within)g(a)g(sp)s(eci\014ed)f(n)m(um)m(b)s(er)f(of)i
-(seconds,)h(the)f(`)p Fs(-n)p Ft(')f(option)i(will)330
-2381 y(allo)m(w)29 b(reading)e(only)h(a)g(sp)s(eci\014ed)e(n)m(um)m(b)s
-(er)g(of)i(c)m(haracters)h(rather)e(than)g(a)h(full)f(line,)i(and)d
-(the)i(`)p Fs(-d)p Ft(')330 2491 y(option)j(will)g(read)f(un)m(til)g(a)
-h(particular)g(c)m(haracter)h(rather)e(than)g(newline.)225
-2628 y Fp(\017)60 b Ft(The)33 b Fs(return)e Ft(builtin)i(ma)m(y)g(b)s
-(e)g(used)f(to)i(ab)s(ort)f(execution)h(of)f(scripts)g(executed)h(with)
-f(the)g Fs(.)g Ft(or)330 2737 y Fs(source)c Ft(builtins)g(\(see)j
-(Section)f(4.1)g([Bourne)g(Shell)f(Builtins],)h(page)g(41\).)225
-2874 y Fp(\017)60 b Ft(Bash)43 b(includes)g(the)g Fs(shopt)f
-Ft(builtin,)k(for)d(\014ner)f(con)m(trol)j(of)e(shell)h(optional)g
+(line)g(ending)330 1724 y(in)i(`)p Ft(\\)p Fu(')h(with)f(the)g
+Ft(-r)g Fu(option,)i(and)d(will)i(use)f(the)h Ft(REPLY)e
+Fu(v)-5 b(ariable)30 b(as)g(a)f(default)h(if)f(no)h(non-option)330
+1833 y(argumen)m(ts)h(are)h(supplied.)42 b(The)30 b(Bash)i
+Ft(read)e Fu(builtin)g(also)j(accepts)f(a)g(prompt)e(string)h(with)g
+(the)330 1943 y Ft(-p)c Fu(option)h(and)f(will)g(use)h(Readline)g(to)g
+(obtain)g(the)g(line)f(when)g(giv)m(en)h(the)g Ft(-e)f
+Fu(option.)40 b(The)27 b Ft(read)330 2052 y Fu(builtin)h(also)i(has)e
+(additional)i(options)f(to)g(con)m(trol)h(input:)39 b(the)29
+b Ft(-s)f Fu(option)h(will)g(turn)e(o\013)j(ec)m(hoing)330
+2162 y(of)f(input)f(c)m(haracters)j(as)e(they)g(are)h(read,)f(the)g
+Ft(-t)g Fu(option)g(will)h(allo)m(w)g Ft(read)e Fu(to)i(time)g(out)f
+(if)g(input)330 2271 y(do)s(es)i(not)h(arriv)m(e)g(within)f(a)h(sp)s
+(eci\014ed)f(n)m(um)m(b)s(er)f(of)i(seconds,)g(the)f
+Ft(-n)g Fu(option)h(will)g(allo)m(w)h(reading)330 2381
+y(only)38 b(a)g(sp)s(eci\014ed)f(n)m(um)m(b)s(er)f(of)i(c)m(haracters)h
+(rather)e(than)g(a)h(full)g(line,)i(and)d(the)h Ft(-d)f
+Fu(option)h(will)330 2491 y(read)30 b(un)m(til)h(a)g(particular)f(c)m
+(haracter)i(rather)f(than)f(newline.)225 2628 y Fq(\017)60
+b Fu(The)33 b Ft(return)e Fu(builtin)i(ma)m(y)g(b)s(e)g(used)f(to)i(ab)
+s(ort)f(execution)h(of)f(scripts)g(executed)h(with)f(the)g
+Ft(.)g Fu(or)330 2737 y Ft(source)c Fu(builtins)g(\(see)j(Section)f
+(4.1)g([Bourne)g(Shell)f(Builtins],)h(page)g(41\).)225
+2874 y Fq(\017)60 b Fu(Bash)43 b(includes)g(the)g Ft(shopt)f
+Fu(builtin,)k(for)d(\014ner)f(con)m(trol)j(of)e(shell)h(optional)g
(capabilities)h(\(see)330 2984 y(Section)c(4.3.2)g([The)f(Shopt)f
-(Builtin],)k(page)d(63\),)k(and)39 b(allo)m(ws)i(these)f(options)h(to)f
+(Builtin],)k(page)d(62\),)k(and)39 b(allo)m(ws)i(these)f(options)h(to)f
(b)s(e)f(set)i(and)330 3093 y(unset)30 b(at)h(shell)g(in)m(v)m(o)s
(cation)h(\(see)f(Section)h(6.1)f([In)m(v)m(oking)g(Bash],)g(page)h
-(80\).)225 3230 y Fp(\017)60 b Ft(Bash)45 b(has)f(m)m(uc)m(h)g(more)h
+(80\).)225 3230 y Fq(\017)60 b Fu(Bash)45 b(has)f(m)m(uc)m(h)g(more)h
(optional)h(b)s(eha)m(vior)e(con)m(trollable)j(with)e(the)f
-Fs(set)g Ft(builtin)g(\(see)h(Sec-)330 3340 y(tion)31
-b(4.3.1)h([The)e(Set)h(Builtin],)g(page)g(59\).)225 3477
-y Fp(\017)60 b Ft(The)45 b(`)p Fs(-x)p Ft(')g(\(`)p Fs(xtrace)p
-Ft('\))g(option)h(displa)m(ys)g(commands)f(other)h(than)f(simple)h
-(commands)f(when)330 3587 y(p)s(erforming)29 b(an)h(execution)i(trace)g
-(\(see)f(Section)g(4.3.1)h([The)e(Set)h(Builtin],)g(page)g(59\).)225
-3724 y Fp(\017)60 b Ft(The)28 b Fs(test)g Ft(builtin)h(\(see)h(Section)
+Ft(set)g Fu(builtin)g(\(see)h(Sec-)330 3340 y(tion)31
+b(4.3.1)h([The)e(Set)h(Builtin],)g(page)g(58\).)225 3477
+y Fq(\017)60 b Fu(The)31 b(`)p Ft(-x)p Fu(')g(\()p Ft(xtrace)p
+Fu(\))g(option)h(displa)m(ys)f(commands)h(other)f(than)h(simple)f
+(commands)g(when)g(p)s(er-)330 3587 y(forming)f(an)g(execution)i(trace)
+f(\(see)h(Section)f(4.3.1)h([The)e(Set)h(Builtin],)g(page)g(58\).)225
+3724 y Fq(\017)60 b Fu(The)28 b Ft(test)g Fu(builtin)h(\(see)h(Section)
f(4.1)h([Bourne)f(Shell)g(Builtins],)h(page)g(41\))g(is)f(sligh)m(tly)h
(di\013eren)m(t,)330 3833 y(as)23 b(it)g(implemen)m(ts)f(the)h
-Fl(posix)f Ft(algorithm,)j(whic)m(h)d(sp)s(eci\014es)g(the)h(b)s(eha)m
+Fm(posix)f Fu(algorithm,)j(whic)m(h)d(sp)s(eci\014es)g(the)h(b)s(eha)m
(vior)f(based)g(on)h(the)f(n)m(um)m(b)s(er)330 3943 y(of)31
-b(argumen)m(ts.)225 4080 y Fp(\017)60 b Ft(Bash)31 b(includes)g(the)h
-Fs(caller)d Ft(builtin,)j(whic)m(h)f(displa)m(ys)g(the)g(con)m(text)i
+b(argumen)m(ts.)225 4080 y Fq(\017)60 b Fu(Bash)31 b(includes)g(the)h
+Ft(caller)d Fu(builtin,)j(whic)m(h)f(displa)m(ys)g(the)g(con)m(text)i
(of)f(an)m(y)g(activ)m(e)h(subroutine)330 4189 y(call)28
b(\(a)f(shell)f(function)h(or)f(a)h(script)f(executed)h(with)f(the)h
-Fs(.)f Ft(or)g Fs(source)f Ft(builtins\).)39 b(This)26
+Ft(.)f Fu(or)g Ft(source)f Fu(builtins\).)39 b(This)26
b(supp)s(orts)330 4299 y(the)31 b(bash)e(debugger.)225
-4436 y Fp(\017)60 b Ft(The)42 b Fs(trap)f Ft(builtin)h(\(see)i(Section)
+4436 y Fq(\017)60 b Fu(The)42 b Ft(trap)f Fu(builtin)h(\(see)i(Section)
f(4.1)h([Bourne)e(Shell)g(Builtins],)47 b(page)c(41\))h(allo)m(ws)g(a)e
-Fs(DEBUG)330 4545 y Ft(pseudo-signal)c(sp)s(eci\014cation,)i(similar)e
-(to)g Fs(EXIT)p Ft(.)62 b(Commands)36 b(sp)s(eci\014ed)h(with)g(a)h
-Fs(DEBUG)e Ft(trap)330 4655 y(are)k(executed)g(b)s(efore)f(ev)m(ery)h
-(simple)f(command,)j Fs(for)c Ft(command,)k Fs(case)c
-Ft(command,)k Fs(select)330 4765 y Ft(command,)35 b(ev)m(ery)g
-(arithmetic)g Fs(for)e Ft(command,)i(and)f(b)s(efore)g(the)g(\014rst)f
+Ft(DEBUG)330 4545 y Fu(pseudo-signal)c(sp)s(eci\014cation,)i(similar)e
+(to)g Ft(EXIT)p Fu(.)62 b(Commands)36 b(sp)s(eci\014ed)h(with)g(a)h
+Ft(DEBUG)e Fu(trap)330 4655 y(are)k(executed)g(b)s(efore)f(ev)m(ery)h
+(simple)f(command,)j Ft(for)c Fu(command,)k Ft(case)c
+Fu(command,)k Ft(select)330 4765 y Fu(command,)35 b(ev)m(ery)g
+(arithmetic)g Ft(for)e Fu(command,)i(and)f(b)s(efore)g(the)g(\014rst)f
(command)h(executes)h(in)330 4874 y(a)29 b(shell)g(function.)40
-b(The)28 b Fs(DEBUG)g Ft(trap)g(is)h(not)g(inherited)f(b)m(y)h(shell)g
+b(The)28 b Ft(DEBUG)g Fu(trap)g(is)h(not)g(inherited)f(b)m(y)h(shell)g
(functions)f(unless)g(the)h(function)330 4984 y(has)35
-b(b)s(een)g(giv)m(en)i(the)f Fs(trace)e Ft(attribute)i(or)g(the)g
-Fs(functrace)d Ft(option)j(has)f(b)s(een)g(enabled)g(using)330
-5093 y(the)28 b Fs(shopt)e Ft(builtin.)39 b(The)27 b
-Fs(extdebug)f Ft(shell)i(option)g(has)f(additional)h(e\013ects)h(on)f
-(the)g Fs(DEBUG)e Ft(trap.)330 5230 y(The)21 b Fs(trap)e
-Ft(builtin)i(\(see)h(Section)g(4.1)g([Bourne)f(Shell)g(Builtins],)j
-(page)e(41\))g(allo)m(ws)g(an)f Fs(ERR)f Ft(pseudo-)330
+b(b)s(een)g(giv)m(en)i(the)f Ft(trace)e Fu(attribute)i(or)g(the)g
+Ft(functrace)d Fu(option)j(has)f(b)s(een)g(enabled)g(using)330
+5093 y(the)28 b Ft(shopt)e Fu(builtin.)39 b(The)27 b
+Ft(extdebug)f Fu(shell)i(option)g(has)f(additional)h(e\013ects)h(on)f
+(the)g Ft(DEBUG)e Fu(trap.)330 5230 y(The)21 b Ft(trap)e
+Fu(builtin)i(\(see)h(Section)g(4.1)g([Bourne)f(Shell)g(Builtins],)j
+(page)e(41\))g(allo)m(ws)g(an)f Ft(ERR)f Fu(pseudo-)330
5340 y(signal)30 b(sp)s(eci\014cation,)h(similar)f(to)g
-Fs(EXIT)f Ft(and)g Fs(DEBUG)p Ft(.)39 b(Commands)28 b(sp)s(eci\014ed)h
-(with)g(an)g Fs(ERR)g Ft(trap)p eop end
-%%Page: 151 157
-TeXDict begin 151 156 bop 150 -116 a Ft(App)s(endix)29
+Ft(EXIT)f Fu(and)g Ft(DEBUG)p Fu(.)39 b(Commands)28 b(sp)s(eci\014ed)h
+(with)g(an)g Ft(ERR)g Fu(trap)p eop end
+%%Page: 150 156
+TeXDict begin 150 155 bop 150 -116 a Fu(App)s(endix)29
b(B:)i(Ma)5 b(jor)31 b(Di\013erences)g(F)-8 b(rom)31
-b(The)f(Bourne)g(Shell)1258 b(151)330 299 y(are)40 b(executed)g(after)g
+b(The)f(Bourne)g(Shell)1258 b(150)330 299 y(are)40 b(executed)g(after)g
(a)f(simple)h(command)f(fails,)j(with)d(a)h(few)f(exceptions.)68
-b(The)39 b Fs(ERR)g Ft(trap)g(is)330 408 y(not)g(inherited)f(b)m(y)h
-(shell)g(functions)f(unless)g(the)h Fs(-o)29 b(errtrace)37
-b Ft(option)i(to)g(the)g Fs(set)f Ft(builtin)g(is)330
-518 y(enabled.)330 650 y(The)g Fs(trap)g Ft(builtin)h(\(see)g(Section)h
+b(The)39 b Ft(ERR)g Fu(trap)g(is)330 408 y(not)g(inherited)f(b)m(y)h
+(shell)g(functions)f(unless)g(the)h Ft(-o)29 b(errtrace)37
+b Fu(option)i(to)g(the)g Ft(set)f Fu(builtin)g(is)330
+518 y(enabled.)330 650 y(The)g Ft(trap)g Fu(builtin)h(\(see)g(Section)h
(4.1)g([Bourne)f(Shell)g(Builtins],)i(page)f(41\))g(allo)m(ws)g(a)g
-Fs(RETURN)330 760 y Ft(pseudo-signal)35 b(sp)s(eci\014cation,)j
-(similar)d(to)h Fs(EXIT)e Ft(and)g Fs(DEBUG)p Ft(.)54
+Ft(RETURN)330 760 y Fu(pseudo-signal)35 b(sp)s(eci\014cation,)j
+(similar)d(to)h Ft(EXIT)e Fu(and)g Ft(DEBUG)p Fu(.)54
b(Commands)34 b(sp)s(eci\014ed)g(with)h(an)330 869 y
-Fs(RETURN)k Ft(trap)i(are)g(executed)h(b)s(efore)e(execution)i(resumes)
+Ft(RETURN)k Fu(trap)i(are)g(executed)h(b)s(efore)e(execution)i(resumes)
e(after)h(a)g(shell)g(function)g(or)g(a)g(shell)330 979
-y(script)36 b(executed)g(with)g Fs(.)f Ft(or)h Fs(source)e
-Ft(returns.)56 b(The)35 b Fs(RETURN)f Ft(trap)i(is)g(not)g(inherited)f
+y(script)36 b(executed)g(with)g Ft(.)f Fu(or)h Ft(source)e
+Fu(returns.)56 b(The)35 b Ft(RETURN)f Fu(trap)i(is)g(not)g(inherited)f
(b)m(y)h(shell)330 1088 y(functions)k(unless)h(the)g(function)f(has)h
-(b)s(een)f(giv)m(en)i(the)f Fs(trace)e Ft(attribute)j(or)e(the)h
-Fs(functrace)330 1198 y Ft(option)31 b(has)f(b)s(een)g(enabled)g(using)
-g(the)g Fs(shopt)f Ft(builtin.)225 1330 y Fp(\017)60
-b Ft(The)30 b(Bash)g Fs(type)f Ft(builtin)h(is)g(more)g(extensiv)m(e)i
+(b)s(een)f(giv)m(en)i(the)f Ft(trace)e Fu(attribute)j(or)e(the)h
+Ft(functrace)330 1198 y Fu(option)31 b(has)f(b)s(een)g(enabled)g(using)
+g(the)g Ft(shopt)f Fu(builtin.)225 1330 y Fq(\017)60
+b Fu(The)30 b(Bash)g Ft(type)f Fu(builtin)h(is)g(more)g(extensiv)m(e)i
(and)d(giv)m(es)j(more)e(information)h(ab)s(out)f(the)g(names)330
1440 y(it)h(\014nds)e(\(see)i(Section)g(4.2)h([Bash)e(Builtins],)i
-(page)f(48\).)225 1571 y Fp(\017)60 b Ft(The)34 b(Bash)h
-Fs(umask)e Ft(builtin)h(p)s(ermits)g(a)g(`)p Fs(-p)p
-Ft(')h(option)g(to)g(cause)g(the)g(output)f(to)h(b)s(e)f(displa)m(y)m
-(ed)h(in)330 1681 y(the)g(form)g(of)g(a)h Fs(umask)e
-Ft(command)h(that)g(ma)m(y)h(b)s(e)f(reused)f(as)h(input)g(\(see)h
-(Section)g(4.1)g([Bourne)330 1791 y(Shell)30 b(Builtins],)h(page)h
-(41\).)225 1923 y Fp(\017)60 b Ft(Bash)34 b(implemen)m(ts)h(a)g
-Fs(csh)p Ft(-lik)m(e)g(directory)f(stac)m(k,)j(and)d(pro)m(vides)g(the)
-g Fs(pushd)p Ft(,)g Fs(popd)p Ft(,)g(and)g Fs(dirs)330
-2032 y Ft(builtins)g(to)i(manipulate)f(it)h(\(see)f(Section)h(6.8)g
-([The)f(Directory)h(Stac)m(k],)i(page)d(91\).)56 b(Bash)35
-b(also)330 2142 y(mak)m(es)c(the)g(directory)g(stac)m(k)g(visible)g(as)
-g(the)f(v)-5 b(alue)31 b(of)g(the)f Fs(DIRSTACK)f Ft(shell)h(v)-5
-b(ariable.)225 2274 y Fp(\017)60 b Ft(Bash)28 b(in)m(terprets)h(sp)s
-(ecial)g(bac)m(kslash-escap)s(ed)g(c)m(haracters)g(in)f(the)h(prompt)e
-(strings)h(when)f(in)m(ter-)330 2383 y(activ)m(e)33 b(\(see)e(Section)g
-(6.9)h([Con)m(trolling)f(the)g(Prompt],)f(page)h(92\).)225
-2515 y Fp(\017)60 b Ft(The)46 b(Bash)h(restricted)g(mo)s(de)f(is)h
+(page)f(48\).)225 1571 y Fq(\017)60 b Fu(The)27 b(Bash)h
+Ft(umask)e Fu(builtin)h(p)s(ermits)g(a)h Ft(-p)f Fu(option)h(to)h
+(cause)f(the)g(output)f(to)h(b)s(e)f(displa)m(y)m(ed)h(in)g(the)330
+1681 y(form)i(of)h(a)g Ft(umask)f Fu(command)g(that)i(ma)m(y)f(b)s(e)f
+(reused)g(as)h(input)f(\(see)i(Section)f(4.1)h([Bourne)f(Shell)330
+1791 y(Builtins],)g(page)g(41\).)225 1923 y Fq(\017)60
+b Fu(Bash)34 b(implemen)m(ts)h(a)g Ft(csh)p Fu(-lik)m(e)g(directory)f
+(stac)m(k,)j(and)d(pro)m(vides)g(the)g Ft(pushd)p Fu(,)g
+Ft(popd)p Fu(,)g(and)g Ft(dirs)330 2032 y Fu(builtins)g(to)i
+(manipulate)f(it)h(\(see)f(Section)h(6.8)g([The)f(Directory)h(Stac)m
+(k],)i(page)d(90\).)56 b(Bash)35 b(also)330 2142 y(mak)m(es)c(the)g
+(directory)g(stac)m(k)g(visible)g(as)g(the)f(v)-5 b(alue)31
+b(of)g(the)f Ft(DIRSTACK)f Fu(shell)h(v)-5 b(ariable.)225
+2274 y Fq(\017)60 b Fu(Bash)28 b(in)m(terprets)h(sp)s(ecial)g(bac)m
+(kslash-escap)s(ed)g(c)m(haracters)g(in)f(the)h(prompt)e(strings)h
+(when)f(in)m(ter-)330 2383 y(activ)m(e)33 b(\(see)e(Section)g(6.9)h
+([Con)m(trolling)f(the)g(Prompt],)f(page)h(92\).)225
+2515 y Fq(\017)60 b Fu(The)46 b(Bash)h(restricted)g(mo)s(de)f(is)h
(more)f(useful)g(\(see)h(Section)h(6.10)g([The)e(Restricted)i(Shell],)
330 2625 y(page)31 b(93\);)h(the)f(SVR4.2)g(shell)f(restricted)h(mo)s
-(de)f(is)h(to)s(o)g(limited.)225 2757 y Fp(\017)60 b
-Ft(The)30 b Fs(disown)f Ft(builtin)h(can)h(remo)m(v)m(e)h(a)f(job)f
+(de)f(is)h(to)s(o)g(limited.)225 2757 y Fq(\017)60 b
+Fu(The)30 b Ft(disown)f Fu(builtin)h(can)h(remo)m(v)m(e)h(a)f(job)f
(from)g(the)h(in)m(ternal)g(shell)g(job)f(table)i(\(see)f(Section)h
-(7.2)330 2866 y([Job)h(Con)m(trol)h(Builtins],)g(page)g(99\))h(or)e
-(suppress)e(the)i(sending)g(of)g Fs(SIGHUP)e Ft(to)j(a)g(job)f(when)f
+(7.2)330 2866 y([Job)h(Con)m(trol)h(Builtins],)g(page)g(98\))h(or)e
+(suppress)e(the)i(sending)g(of)g Ft(SIGHUP)e Fu(to)j(a)g(job)f(when)f
(the)330 2976 y(shell)f(exits)g(as)f(the)h(result)f(of)h(a)f
-Fs(SIGHUP)p Ft(.)225 3108 y Fp(\017)60 b Ft(Bash)31 b(includes)f(a)g(n)
+Ft(SIGHUP)p Fu(.)225 3108 y Fq(\017)60 b Fu(Bash)31 b(includes)f(a)g(n)
m(um)m(b)s(er)f(of)i(features)g(to)g(supp)s(ort)d(a)j(separate)g
-(debugger)f(for)h(shell)f(scripts.)225 3240 y Fp(\017)60
-b Ft(The)28 b(SVR4.2)h(shell)f(has)g(t)m(w)m(o)i(privilege-related)g
-(builtins)e(\()p Fs(mldmode)e Ft(and)i Fs(priv)p Ft(\))f(not)i(presen)m
-(t)f(in)330 3350 y(Bash.)225 3482 y Fp(\017)60 b Ft(Bash)31
-b(do)s(es)f(not)g(ha)m(v)m(e)i(the)e Fs(stop)g Ft(or)g
-Fs(newgrp)f Ft(builtins.)225 3613 y Fp(\017)60 b Ft(Bash)31
-b(do)s(es)f(not)g(use)g(the)h Fs(SHACCT)d Ft(v)-5 b(ariable)32
+(debugger)f(for)h(shell)f(scripts.)225 3240 y Fq(\017)60
+b Fu(The)28 b(SVR4.2)h(shell)f(has)g(t)m(w)m(o)i(privilege-related)g
+(builtins)e(\()p Ft(mldmode)e Fu(and)i Ft(priv)p Fu(\))f(not)i(presen)m
+(t)f(in)330 3350 y(Bash.)225 3482 y Fq(\017)60 b Fu(Bash)31
+b(do)s(es)f(not)g(ha)m(v)m(e)i(the)e Ft(stop)g Fu(or)g
+Ft(newgrp)f Fu(builtins.)225 3613 y Fq(\017)60 b Fu(Bash)31
+b(do)s(es)f(not)g(use)g(the)h Ft(SHACCT)d Fu(v)-5 b(ariable)32
b(or)e(p)s(erform)f(shell)i(accoun)m(ting.)225 3745 y
-Fp(\017)60 b Ft(The)30 b(SVR4.2)h Fs(sh)f Ft(uses)g(a)g
-Fs(TIMEOUT)f Ft(v)-5 b(ariable)31 b(lik)m(e)h(Bash)e(uses)g
-Fs(TMOUT)p Ft(.)150 3900 y(More)h(features)g(unique)e(to)i(Bash)g(ma)m
+Fq(\017)60 b Fu(The)30 b(SVR4.2)h Ft(sh)f Fu(uses)g(a)g
+Ft(TIMEOUT)f Fu(v)-5 b(ariable)31 b(lik)m(e)h(Bash)e(uses)g
+Ft(TMOUT)p Fu(.)150 3900 y(More)h(features)g(unique)e(to)i(Bash)g(ma)m
(y)g(b)s(e)f(found)f(in)h(Chapter)f(6)i([Bash)g(F)-8
-b(eatures],)32 b(page)f(80.)150 4127 y Fr(B.1)67 b(Implemen)l(tation)48
+b(eatures],)32 b(page)f(80.)150 4127 y Fs(B.1)67 b(Implemen)l(tation)48
b(Di\013erences)e(F)-11 b(rom)44 b(The)h(SVR4.2)g(Shell)150
-4287 y Ft(Since)33 b(Bash)h(is)f(a)g(completely)i(new)e(implemen)m
+4287 y Fu(Since)33 b(Bash)h(is)f(a)g(completely)i(new)e(implemen)m
(tation,)j(it)e(do)s(es)e(not)i(su\013er)e(from)h(man)m(y)g(of)h(the)f
(limi-)150 4396 y(tations)f(of)e(the)h(SVR4.2)g(shell.)41
-b(F)-8 b(or)31 b(instance:)225 4528 y Fp(\017)60 b Ft(Bash)32
+b(F)-8 b(or)31 b(instance:)225 4528 y Fq(\017)60 b Fu(Bash)32
b(do)s(es)f(not)h(fork)f(a)h(subshell)e(when)h(redirecting)h(in)m(to)h
(or)e(out)h(of)g(a)g(shell)f(con)m(trol)i(structure)330
-4638 y(suc)m(h)d(as)h(an)f Fs(if)g Ft(or)g Fs(while)f
-Ft(statemen)m(t.)225 4770 y Fp(\017)60 b Ft(Bash)29 b(do)s(es)f(not)h
+4638 y(suc)m(h)d(as)h(an)f Ft(if)g Fu(or)g Ft(while)f
+Fu(statemen)m(t.)225 4770 y Fq(\017)60 b Fu(Bash)29 b(do)s(es)f(not)h
(allo)m(w)h(un)m(balanced)f(quotes.)41 b(The)28 b(SVR4.2)h(shell)g
(will)g(silen)m(tly)i(insert)d(a)h(needed)330 4879 y(closing)g(quote)g
-(at)f Fs(EOF)f Ft(under)g(certain)h(circumstances.)41
+(at)f Ft(EOF)f Fu(under)g(certain)h(circumstances.)41
b(This)27 b(can)h(b)s(e)g(the)g(cause)g(of)g(some)h(hard-)330
-4989 y(to-\014nd)h(errors.)225 5121 y Fp(\017)60 b Ft(The)45
+4989 y(to-\014nd)h(errors.)225 5121 y Fq(\017)60 b Fu(The)45
b(SVR4.2)h(shell)f(uses)g(a)g(baro)s(que)g(memory)g(managemen)m(t)i(sc)
-m(heme)e(based)g(on)g(trapping)330 5230 y Fs(SIGSEGV)p
-Ft(.)57 b(If)35 b(the)i(shell)f(is)h(started)g(from)e(a)i(pro)s(cess)f
-(with)g Fs(SIGSEGV)e Ft(blo)s(c)m(k)m(ed)k(\(e.g.,)h(b)m(y)d(using)330
-5340 y(the)31 b Fs(system\(\))d Ft(C)i(library)g(function)g(call\),)i
+m(heme)e(based)g(on)g(trapping)330 5230 y Ft(SIGSEGV)p
+Fu(.)57 b(If)35 b(the)i(shell)f(is)h(started)g(from)e(a)i(pro)s(cess)f
+(with)g Ft(SIGSEGV)e Fu(blo)s(c)m(k)m(ed)k(\(e.g.,)h(b)m(y)d(using)330
+5340 y(the)31 b Ft(system\(\))d Fu(C)i(library)g(function)g(call\),)i
(it)f(misb)s(eha)m(v)m(es)g(badly)-8 b(.)p eop end
-%%Page: 152 158
-TeXDict begin 152 157 bop 150 -116 a Ft(App)s(endix)29
+%%Page: 151 157
+TeXDict begin 151 156 bop 150 -116 a Fu(App)s(endix)29
b(B:)i(Ma)5 b(jor)31 b(Di\013erences)g(F)-8 b(rom)31
-b(The)f(Bourne)g(Shell)1258 b(152)225 299 y Fp(\017)60
-b Ft(In)26 b(a)i(questionable)g(attempt)h(at)f(securit)m(y)-8
-b(,)29 b(the)e(SVR4.2)h(shell,)g(when)f(in)m(v)m(ok)m(ed)h(without)g
-(the)f(`)p Fs(-p)p Ft(')330 408 y(option,)39 b(will)d(alter)i(its)e
-(real)h(and)f(e\013ectiv)m(e)j Fl(uid)d Ft(and)g Fl(gid)h
-Ft(if)f(they)h(are)f(less)h(than)f(some)h(magic)330 518
-y(threshold)30 b(v)-5 b(alue,)31 b(commonly)g(100.)42
-b(This)29 b(can)i(lead)g(to)g(unexp)s(ected)f(results.)225
-653 y Fp(\017)60 b Ft(The)30 b(SVR4.2)h(shell)g(do)s(es)f(not)g(allo)m
-(w)i(users)e(to)h(trap)f Fs(SIGSEGV)p Ft(,)f Fs(SIGALRM)p
-Ft(,)f(or)j Fs(SIGCHLD)p Ft(.)225 787 y Fp(\017)60 b
-Ft(The)34 b(SVR4.2)h(shell)g(do)s(es)g(not)f(allo)m(w)j(the)d
-Fs(IFS)p Ft(,)h Fs(MAILCHECK)p Ft(,)f Fs(PATH)p Ft(,)h
-Fs(PS1)p Ft(,)g(or)f Fs(PS2)g Ft(v)-5 b(ariables)35 b(to)330
-897 y(b)s(e)30 b(unset.)225 1031 y Fp(\017)60 b Ft(The)30
-b(SVR4.2)h(shell)g(treats)g(`)p Fs(^)p Ft(')f(as)h(the)g(undo)s(cumen)m
-(ted)e(equiv)-5 b(alen)m(t)31 b(of)g(`)p Fs(|)p Ft('.)225
-1166 y Fp(\017)60 b Ft(Bash)37 b(allo)m(ws)h(m)m(ultiple)f(option)g
-(argumen)m(ts)g(when)e(it)i(is)g(in)m(v)m(ok)m(ed)h(\()p
-Fs(-x)30 b(-v)p Ft(\);)40 b(the)c(SVR4.2)i(shell)330
+b(The)f(Bourne)g(Shell)1258 b(151)225 299 y Fq(\017)60
+b Fu(In)30 b(a)i(questionable)g(attempt)g(at)g(securit)m(y)-8
+b(,)33 b(the)e(SVR4.2)h(shell,)g(when)e(in)m(v)m(ok)m(ed)j(without)e
+(the)h Ft(-p)330 408 y Fu(option,)39 b(will)d(alter)i(its)e(real)h(and)
+f(e\013ectiv)m(e)j Fm(uid)d Fu(and)g Fm(gid)h Fu(if)f(they)h(are)f
+(less)h(than)f(some)h(magic)330 518 y(threshold)30 b(v)-5
+b(alue,)31 b(commonly)g(100.)42 b(This)29 b(can)i(lead)g(to)g(unexp)s
+(ected)f(results.)225 653 y Fq(\017)60 b Fu(The)30 b(SVR4.2)h(shell)g
+(do)s(es)f(not)g(allo)m(w)i(users)e(to)h(trap)f Ft(SIGSEGV)p
+Fu(,)f Ft(SIGALRM)p Fu(,)f(or)j Ft(SIGCHLD)p Fu(.)225
+787 y Fq(\017)60 b Fu(The)34 b(SVR4.2)h(shell)g(do)s(es)g(not)f(allo)m
+(w)j(the)d Ft(IFS)p Fu(,)h Ft(MAILCHECK)p Fu(,)f Ft(PATH)p
+Fu(,)h Ft(PS1)p Fu(,)g(or)f Ft(PS2)g Fu(v)-5 b(ariables)35
+b(to)330 897 y(b)s(e)30 b(unset.)225 1031 y Fq(\017)60
+b Fu(The)30 b(SVR4.2)h(shell)g(treats)g(`)p Ft(^)p Fu(')f(as)h(the)g
+(undo)s(cumen)m(ted)e(equiv)-5 b(alen)m(t)31 b(of)g(`)p
+Ft(|)p Fu('.)225 1166 y Fq(\017)60 b Fu(Bash)37 b(allo)m(ws)h(m)m
+(ultiple)f(option)g(argumen)m(ts)g(when)e(it)i(is)g(in)m(v)m(ok)m(ed)h
+(\()p Ft(-x)30 b(-v)p Fu(\);)40 b(the)c(SVR4.2)i(shell)330
1275 y(allo)m(ws)c(only)f(one)g(option)g(argumen)m(t)g(\()p
-Fs(-xv)p Ft(\).)47 b(In)32 b(fact,)i(some)f(v)m(ersions)g(of)g(the)g
+Ft(-xv)p Fu(\).)47 b(In)32 b(fact,)i(some)f(v)m(ersions)g(of)g(the)g
(shell)f(dump)f(core)330 1385 y(if)f(the)h(second)f(argumen)m(t)h(b)s
-(egins)f(with)g(a)h(`)p Fs(-)p Ft('.)225 1519 y Fp(\017)60
-b Ft(The)26 b(SVR4.2)i(shell)f(exits)g(a)g(script)g(if)g(an)m(y)g
+(egins)f(with)g(a)h(`)p Ft(-)p Fu('.)225 1519 y Fq(\017)60
+b Fu(The)26 b(SVR4.2)i(shell)f(exits)g(a)g(script)g(if)g(an)m(y)g
(builtin)f(fails;)j(Bash)e(exits)g(a)g(script)g(only)g(if)g(one)g(of)g
-(the)330 1629 y Fl(posix)34 b Ft(sp)s(ecial)h(builtins)f(fails,)i(and)e
+(the)330 1629 y Fm(posix)34 b Fu(sp)s(ecial)h(builtins)f(fails,)i(and)e
(only)h(for)f(certain)h(failures,)h(as)f(en)m(umerated)g(in)f(the)h
-Fl(posix)330 1738 y Ft(standard.)225 1873 y Fp(\017)60
-b Ft(The)30 b(SVR4.2)h(shell)g(b)s(eha)m(v)m(es)f(di\013eren)m(tly)h
-(when)f(in)m(v)m(ok)m(ed)i(as)e Fs(jsh)g Ft(\(it)h(turns)e(on)h(job)g
+Fm(posix)330 1738 y Fu(standard.)225 1873 y Fq(\017)60
+b Fu(The)30 b(SVR4.2)h(shell)g(b)s(eha)m(v)m(es)f(di\013eren)m(tly)h
+(when)f(in)m(v)m(ok)m(ed)i(as)e Ft(jsh)g Fu(\(it)h(turns)e(on)h(job)g
(con)m(trol\).)p eop end
-%%Page: 153 159
-TeXDict begin 153 158 bop 150 -116 a Ft(App)s(endix)29
+%%Page: 152 158
+TeXDict begin 152 157 bop 150 -116 a Fu(App)s(endix)29
b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
-b(153)150 299 y Fo(App)t(endix)52 b(C)81 b(GNU)54 b(F)-13
-b(ree)53 b(Do)t(cumen)l(tation)e(License)1359 502 y Ft(V)-8
+b(152)150 299 y Fp(App)t(endix)52 b(C)81 b(GNU)54 b(F)-13
+b(ree)53 b(Do)t(cumen)l(tation)e(License)1359 502 y Fu(V)-8
b(ersion)31 b(1.3,)g(3)g(No)m(v)m(em)m(b)s(er)h(2008)390
-635 y(Cop)m(yrigh)m(t)842 632 y(c)817 635 y Fp(\015)e
-Ft(2000,)j(2001,)f(2002,)g(2007,)h(2008)f(F)-8 b(ree)31
+635 y(Cop)m(yrigh)m(t)842 632 y(c)817 635 y Fq(\015)e
+Fu(2000,)j(2001,)f(2002,)g(2007,)h(2008)f(F)-8 b(ree)31
b(Soft)m(w)m(are)h(F)-8 b(oundation,)31 b(Inc.)390 745
-y Fs(http://fsf.org/)390 964 y Ft(Ev)m(ery)m(one)g(is)g(p)s(ermitted)f
+y Ft(http://fsf.org/)390 964 y Fu(Ev)m(ery)m(one)g(is)g(p)s(ermitted)f
(to)h(cop)m(y)g(and)f(distribute)g(v)m(erbatim)h(copies)390
1074 y(of)g(this)f(license)h(do)s(cumen)m(t,)g(but)e(c)m(hanging)j(it)f
(is)f(not)h(allo)m(w)m(ed.)199 1207 y(0.)61 b(PREAMBLE)330
1340 y(The)37 b(purp)s(ose)e(of)i(this)g(License)h(is)f(to)h(mak)m(e)g
(a)g(man)m(ual,)h(textb)s(o)s(ok,)h(or)d(other)g(functional)h(and)330
-1450 y(useful)29 b(do)s(cumen)m(t)h Fq(free)36 b Ft(in)29
+1450 y(useful)29 b(do)s(cumen)m(t)h Fr(free)36 b Fu(in)29
b(the)i(sense)f(of)g(freedom:)41 b(to)31 b(assure)e(ev)m(ery)m(one)j
(the)e(e\013ectiv)m(e)j(freedom)330 1559 y(to)f(cop)m(y)g(and)f
(redistribute)g(it,)h(with)g(or)f(without)g(mo)s(difying)g(it,)i
5340 y(b)s(eing)e(those)h(of)g(In)m(v)-5 b(arian)m(t)27
b(Sections,)i(in)d(the)h(notice)h(that)f(sa)m(ys)g(that)g(the)g(Do)s
(cumen)m(t)g(is)g(released)p eop end
-%%Page: 154 160
-TeXDict begin 154 159 bop 150 -116 a Ft(App)s(endix)29
+%%Page: 153 159
+TeXDict begin 153 158 bop 150 -116 a Fu(App)s(endix)29
b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
-b(154)330 299 y(under)26 b(this)i(License.)40 b(If)27
+b(153)330 299 y(under)26 b(this)i(License.)40 b(If)27
b(a)h(section)h(do)s(es)f(not)f(\014t)h(the)g(ab)s(o)m(v)m(e)h
(de\014nition)e(of)h(Secondary)f(then)h(it)g(is)330 408
y(not)k(allo)m(w)m(ed)i(to)e(b)s(e)g(designated)g(as)g(In)m(v)-5
(substan)m(tial)h(amoun)m(t)g(of)g(text.)53 b(A)35 b(cop)m(y)g(that)g
(is)330 2134 y(not)c(\\T)-8 b(ransparen)m(t")31 b(is)f(called)i
(\\Opaque".)330 2285 y(Examples)53 b(of)g(suitable)h(formats)f(for)g(T)
--8 b(ransparen)m(t)53 b(copies)h(include)f(plain)g Fl(asci)r(i)g
-Ft(without)330 2395 y(markup,)37 b(T)-8 b(exinfo)36 b(input)f(format,)j
+-8 b(ransparen)m(t)53 b(copies)h(include)f(plain)g Fm(asci)r(i)g
+Fu(without)330 2395 y(markup,)37 b(T)-8 b(exinfo)36 b(input)f(format,)j
(LaT)1759 2414 y(E)1810 2395 y(X)e(input)f(format,)j
-Ff(SGML)f Ft(or)f Ff(XML)g Ft(using)g(a)g(publicly)330
-2504 y(a)m(v)-5 b(ailable)42 b Ff(DTD)p Ft(,)g(and)d
-(standard-conforming)h(simple)g Ff(HTML)p Ft(,)g(P)m(ostScript)h(or)f
-Ff(PDF)g Ft(designed)330 2614 y(for)e(h)m(uman)g(mo)s(di\014cation.)65
-b(Examples)38 b(of)h(transparen)m(t)f(image)i(formats)e(include)g
-Ff(PNG)p Ft(,)h Ff(X)n(CF)330 2724 y Ft(and)h Ff(JPG)p
-Ft(.)g(Opaque)h(formats)g(include)f(proprietary)g(formats)h(that)h(can)
-f(b)s(e)f(read)g(and)h(edited)330 2833 y(only)54 b(b)m(y)f(proprietary)
-h(w)m(ord)f(pro)s(cessors,)59 b Ff(SGML)54 b Ft(or)f
-Ff(XML)h Ft(for)g(whic)m(h)f(the)h Ff(DTD)g Ft(and/or)330
-2943 y(pro)s(cessing)61 b(to)s(ols)h(are)f(not)g(generally)i(a)m(v)-5
-b(ailable,)71 b(and)60 b(the)h(mac)m(hine-generated)j
-Ff(HTML)p Ft(,)330 3052 y(P)m(ostScript)31 b(or)f Ff(PDF)h
-Ft(pro)s(duced)d(b)m(y)j(some)f(w)m(ord)g(pro)s(cessors)g(for)g(output)
-g(purp)s(oses)f(only)-8 b(.)330 3203 y(The)34 b(\\Title)h(P)m(age")i
-(means,)e(for)f(a)h(prin)m(ted)f(b)s(o)s(ok,)h(the)f(title)i(page)f
-(itself,)h(plus)e(suc)m(h)f(follo)m(wing)330 3313 y(pages)28
-b(as)g(are)g(needed)g(to)g(hold,)g(legibly)-8 b(,)30
-b(the)e(material)h(this)e(License)i(requires)e(to)h(app)s(ear)f(in)h
-(the)330 3422 y(title)g(page.)40 b(F)-8 b(or)28 b(w)m(orks)e(in)g
-(formats)h(whic)m(h)g(do)f(not)h(ha)m(v)m(e)h(an)m(y)e(title)j(page)e
-(as)g(suc)m(h,)g(\\Title)h(P)m(age")330 3532 y(means)j(the)f(text)i
-(near)e(the)h(most)g(prominen)m(t)g(app)s(earance)f(of)h(the)g(w)m
-(ork's)g(title,)h(preceding)f(the)330 3641 y(b)s(eginning)f(of)g(the)h
-(b)s(o)s(dy)e(of)h(the)h(text.)330 3792 y(The)j(\\publisher")g(means)h
-(an)m(y)f(p)s(erson)g(or)h(en)m(tit)m(y)h(that)f(distributes)f(copies)i
-(of)e(the)h(Do)s(cumen)m(t)330 3902 y(to)c(the)g(public.)330
-4052 y(A)f(section)h(\\En)m(titled)g(XYZ")f(means)f(a)h(named)g
-(subunit)e(of)h(the)h(Do)s(cumen)m(t)h(whose)e(title)i(either)330
-4162 y(is)d(precisely)g(XYZ)g(or)f(con)m(tains)i(XYZ)f(in)f(paren)m
-(theses)i(follo)m(wing)g(text)g(that)f(translates)h(XYZ)e(in)330
-4271 y(another)e(language.)40 b(\(Here)26 b(XYZ)f(stands)f(for)h(a)g
-(sp)s(eci\014c)g(section)h(name)f(men)m(tioned)h(b)s(elo)m(w,)g(suc)m
-(h)330 4381 y(as)i(\\Ac)m(kno)m(wledgemen)m(ts",)33 b(\\Dedications",)e
-(\\Endorsemen)m(ts",)e(or)f(\\History".\))42 b(T)-8 b(o)29
-b(\\Preserv)m(e)330 4491 y(the)34 b(Title")h(of)e(suc)m(h)h(a)g
-(section)g(when)f(y)m(ou)h(mo)s(dify)e(the)i(Do)s(cumen)m(t)h(means)e
-(that)h(it)g(remains)g(a)330 4600 y(section)e(\\En)m(titled)f(XYZ")g
-(according)g(to)g(this)g(de\014nition.)330 4751 y(The)c(Do)s(cumen)m(t)
-i(ma)m(y)f(include)f(W)-8 b(arran)m(t)m(y)30 b(Disclaimers)f(next)f(to)
-g(the)g(notice)h(whic)m(h)e(states)i(that)330 4861 y(this)34
-b(License)g(applies)g(to)h(the)f(Do)s(cumen)m(t.)52 b(These)33
-b(W)-8 b(arran)m(t)m(y)36 b(Disclaimers)f(are)g(considered)e(to)330
-4970 y(b)s(e)k(included)g(b)m(y)g(reference)h(in)g(this)f(License,)j
-(but)d(only)h(as)g(regards)f(disclaiming)i(w)m(arran)m(ties:)330
-5080 y(an)m(y)e(other)g(implication)i(that)e(these)g(W)-8
-b(arran)m(t)m(y)39 b(Disclaimers)f(ma)m(y)g(ha)m(v)m(e)g(is)f(v)m(oid)g
-(and)f(has)h(no)330 5189 y(e\013ect)32 b(on)e(the)h(meaning)f(of)h
-(this)f(License.)199 5340 y(2.)61 b(VERBA)-8 b(TIM)31
-b(COPYING)p eop end
-%%Page: 155 161
-TeXDict begin 155 160 bop 150 -116 a Ft(App)s(endix)29
+Ff(SGML)f Fu(or)f Ff(XML)g Fu(using)g(a)g(publicly)330
+2504 y(a)m(v)-5 b(ailable)42 b Ff(DTD)p Fu(,)h(and)c
+(standard-conforming)g(simple)h Ff(HTML)p Fu(,)i(P)m(ostScript)e(or)f
+Ff(PDF)h Fu(designed)330 2614 y(for)e(h)m(uman)f(mo)s(di\014cation.)65
+b(Examples)38 b(of)h(transparen)m(t)f(image)h(formats)g(include)f
+Ff(PNG)p Fu(,)i Ff(X)n(CF)330 2724 y Fu(and)e Ff(JPG)p
+Fu(.)64 b(Opaque)38 b(formats)h(include)f(proprietary)h(formats)f(that)
+h(can)g(b)s(e)f(read)h(and)f(edited)330 2833 y(only)54
+b(b)m(y)f(proprietary)h(w)m(ord)f(pro)s(cessors,)59 b
+Ff(SGML)54 b Fu(or)f Ff(XML)h Fu(for)g(whic)m(h)f(the)h
+Ff(DTD)g Fu(and/or)330 2943 y(pro)s(cessing)61 b(to)s(ols)h(are)f(not)g
+(generally)i(a)m(v)-5 b(ailable,)71 b(and)60 b(the)h(mac)m
+(hine-generated)j Ff(HTML)p Fu(,)330 3052 y(P)m(ostScript)31
+b(or)f Ff(PDF)h Fu(pro)s(duced)d(b)m(y)j(some)f(w)m(ord)g(pro)s
+(cessors)g(for)g(output)g(purp)s(oses)f(only)-8 b(.)330
+3203 y(The)34 b(\\Title)h(P)m(age")i(means,)e(for)f(a)h(prin)m(ted)f(b)
+s(o)s(ok,)h(the)f(title)i(page)f(itself,)h(plus)e(suc)m(h)f(follo)m
+(wing)330 3313 y(pages)28 b(as)g(are)g(needed)g(to)g(hold,)g(legibly)-8
+b(,)30 b(the)e(material)h(this)e(License)i(requires)e(to)h(app)s(ear)f
+(in)h(the)330 3422 y(title)g(page.)40 b(F)-8 b(or)28
+b(w)m(orks)e(in)g(formats)h(whic)m(h)g(do)f(not)h(ha)m(v)m(e)h(an)m(y)e
+(title)j(page)e(as)g(suc)m(h,)g(\\Title)h(P)m(age")330
+3532 y(means)j(the)f(text)i(near)e(the)h(most)g(prominen)m(t)g(app)s
+(earance)f(of)h(the)g(w)m(ork's)g(title,)h(preceding)f(the)330
+3641 y(b)s(eginning)f(of)g(the)h(b)s(o)s(dy)e(of)h(the)h(text.)330
+3792 y(The)j(\\publisher")g(means)h(an)m(y)f(p)s(erson)g(or)h(en)m(tit)
+m(y)h(that)f(distributes)f(copies)i(of)e(the)h(Do)s(cumen)m(t)330
+3902 y(to)c(the)g(public.)330 4052 y(A)f(section)h(\\En)m(titled)g
+(XYZ")f(means)f(a)h(named)g(subunit)e(of)h(the)h(Do)s(cumen)m(t)h
+(whose)e(title)i(either)330 4162 y(is)d(precisely)g(XYZ)g(or)f(con)m
+(tains)i(XYZ)f(in)f(paren)m(theses)i(follo)m(wing)g(text)g(that)f
+(translates)h(XYZ)e(in)330 4271 y(another)e(language.)40
+b(\(Here)26 b(XYZ)f(stands)f(for)h(a)g(sp)s(eci\014c)g(section)h(name)f
+(men)m(tioned)h(b)s(elo)m(w,)g(suc)m(h)330 4381 y(as)i(\\Ac)m(kno)m
+(wledgemen)m(ts",)33 b(\\Dedications",)e(\\Endorsemen)m(ts",)e(or)f
+(\\History".\))42 b(T)-8 b(o)29 b(\\Preserv)m(e)330 4491
+y(the)34 b(Title")h(of)e(suc)m(h)h(a)g(section)g(when)f(y)m(ou)h(mo)s
+(dify)e(the)i(Do)s(cumen)m(t)h(means)e(that)h(it)g(remains)g(a)330
+4600 y(section)e(\\En)m(titled)f(XYZ")g(according)g(to)g(this)g
+(de\014nition.)330 4751 y(The)c(Do)s(cumen)m(t)i(ma)m(y)f(include)f(W)
+-8 b(arran)m(t)m(y)30 b(Disclaimers)f(next)f(to)g(the)g(notice)h(whic)m
+(h)e(states)i(that)330 4861 y(this)34 b(License)g(applies)g(to)h(the)f
+(Do)s(cumen)m(t.)52 b(These)33 b(W)-8 b(arran)m(t)m(y)36
+b(Disclaimers)f(are)g(considered)e(to)330 4970 y(b)s(e)k(included)g(b)m
+(y)g(reference)h(in)g(this)f(License,)j(but)d(only)h(as)g(regards)f
+(disclaiming)i(w)m(arran)m(ties:)330 5080 y(an)m(y)e(other)g
+(implication)i(that)e(these)g(W)-8 b(arran)m(t)m(y)39
+b(Disclaimers)f(ma)m(y)g(ha)m(v)m(e)g(is)f(v)m(oid)g(and)f(has)h(no)330
+5189 y(e\013ect)32 b(on)e(the)h(meaning)f(of)h(this)f(License.)199
+5340 y(2.)61 b(VERBA)-8 b(TIM)31 b(COPYING)p eop end
+%%Page: 154 160
+TeXDict begin 154 159 bop 150 -116 a Fu(App)s(endix)29
b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
-b(155)330 299 y(Y)-8 b(ou)39 b(ma)m(y)f(cop)m(y)h(and)e(distribute)h
+b(154)330 299 y(Y)-8 b(ou)39 b(ma)m(y)f(cop)m(y)h(and)e(distribute)h
(the)g(Do)s(cumen)m(t)h(in)f(an)m(y)g(medium,)h(either)g(commercially)h
(or)330 408 y(noncommercially)-8 b(,)48 b(pro)m(vided)42
b(that)h(this)f(License,)47 b(the)42 b(cop)m(yrigh)m(t)i(notices,)j
5340 y(Do)s(cumen)m(t,)j(and)d(from)g(those)i(of)f(previous)f(v)m
(ersions)h(\(whic)m(h)g(should,)g(if)g(there)g(w)m(ere)g(an)m(y)-8
b(,)p eop end
-%%Page: 156 162
-TeXDict begin 156 161 bop 150 -116 a Ft(App)s(endix)29
+%%Page: 155 161
+TeXDict begin 155 160 bop 150 -116 a Fu(App)s(endix)29
b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
-b(156)510 299 y(b)s(e)31 b(listed)h(in)f(the)g(History)h(section)g(of)g
+b(155)510 299 y(b)s(e)31 b(listed)h(in)f(the)g(History)h(section)g(of)g
(the)f(Do)s(cumen)m(t\).)45 b(Y)-8 b(ou)32 b(ma)m(y)g(use)f(the)g(same)
h(title)h(as)510 408 y(a)e(previous)f(v)m(ersion)g(if)h(the)f(original)
i(publisher)d(of)h(that)h(v)m(ersion)g(giv)m(es)h(p)s(ermission.)360
(designate)h(some)e(or)h(all)g(of)f(these)h(sections)h(as)e(in)m(v)-5
b(arian)m(t.)48 b(T)-8 b(o)33 b(do)f(this,)h(add)f(their)p
eop end
-%%Page: 157 163
-TeXDict begin 157 162 bop 150 -116 a Ft(App)s(endix)29
+%%Page: 156 162
+TeXDict begin 156 161 bop 150 -116 a Fu(App)s(endix)29
b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
-b(157)330 299 y(titles)37 b(to)f(the)f(list)h(of)g(In)m(v)-5
+b(156)330 299 y(titles)37 b(to)f(the)f(list)h(of)g(In)m(v)-5
b(arian)m(t)36 b(Sections)g(in)f(the)h(Mo)s(di\014ed)f(V)-8
b(ersion's)36 b(license)g(notice.)57 b(These)330 408
y(titles)32 b(m)m(ust)e(b)s(e)g(distinct)h(from)e(an)m(y)i(other)g
5230 y(do)s(cumen)m(t,)d(and)f(follo)m(w)i(this)e(License)h(in)g(all)g
(other)g(resp)s(ects)f(regarding)h(v)m(erbatim)g(cop)m(ying)h(of)330
5340 y(that)d(do)s(cumen)m(t.)p eop end
-%%Page: 158 164
-TeXDict begin 158 163 bop 150 -116 a Ft(App)s(endix)29
+%%Page: 157 163
+TeXDict begin 157 162 bop 150 -116 a Fu(App)s(endix)29
b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
-b(158)199 299 y(7.)61 b(A)m(GGREGA)-8 b(TION)32 b(WITH)e(INDEPENDENT)h
+b(157)199 299 y(7.)61 b(A)m(GGREGA)-8 b(TION)32 b(WITH)e(INDEPENDENT)h
(W)m(ORKS)330 441 y(A)d(compilation)i(of)e(the)g(Do)s(cumen)m(t)h(or)f
(its)g(deriv)-5 b(ativ)m(es)30 b(with)d(other)i(separate)g(and)e(indep)
s(enden)m(t)330 551 y(do)s(cumen)m(ts)33 b(or)g(w)m(orks,)h(in)f(or)h
(reinstated,)i(receipt)f(of)f(a)g(cop)m(y)h(of)f(some)h(or)f(all)h(of)f
(the)330 5340 y(same)31 b(material)h(do)s(es)e(not)g(giv)m(e)i(y)m(ou)f
(an)m(y)g(righ)m(ts)f(to)i(use)e(it.)p eop end
-%%Page: 159 165
-TeXDict begin 159 164 bop 150 -116 a Ft(App)s(endix)29
+%%Page: 158 164
+TeXDict begin 158 163 bop 150 -116 a Fu(App)s(endix)29
b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
-b(159)154 299 y(10.)61 b(FUTURE)30 b(REVISIONS)f(OF)i(THIS)e(LICENSE)
+b(158)154 299 y(10.)61 b(FUTURE)30 b(REVISIONS)f(OF)i(THIS)e(LICENSE)
330 433 y(The)41 b(F)-8 b(ree)43 b(Soft)m(w)m(are)f(F)-8
b(oundation)43 b(ma)m(y)f(publish)e(new,)k(revised)d(v)m(ersions)h(of)g
(the)g(GNU)g(F)-8 b(ree)330 543 y(Do)s(cumen)m(tation)34
b(new)h(v)m(ersions)g(will)h(b)s(e)e(similar)h(in)g(spirit)330
653 y(to)j(the)g(presen)m(t)f(v)m(ersion,)i(but)e(ma)m(y)h(di\013er)f
(in)g(detail)h(to)g(address)f(new)g(problems)f(or)i(concerns.)330
-762 y(See)c Fs(http://www.gnu.org/copy)o(left)o(/)p Ft(.)330
+762 y(See)c Ft(http://www.gnu.org/copy)o(left)o(/)p Fu(.)330
897 y(Eac)m(h)f(v)m(ersion)g(of)g(the)f(License)h(is)g(giv)m(en)g(a)g
(distinguishing)f(v)m(ersion)h(n)m(um)m(b)s(er.)39 b(If)29
b(the)g(Do)s(cumen)m(t)330 1006 y(sp)s(eci\014es)45 b(that)h(a)g
g(under)330 3895 y(CC-BY-SA)30 b(on)g(the)h(same)f(site)h(at)g(an)m(y)g
(time)g(b)s(efore)e(August)h(1,)h(2009,)h(pro)m(vided)e(the)g(MMC)h(is)
330 4005 y(eligible)h(for)e(relicensing.)p eop end
-%%Page: 160 166
-TeXDict begin 160 165 bop 150 -116 a Ft(App)s(endix)29
+%%Page: 159 165
+TeXDict begin 159 164 bop 150 -116 a Fu(App)s(endix)29
b(C:)h(GNU)h(F)-8 b(ree)31 b(Do)s(cumen)m(tation)i(License)1560
-b(160)150 299 y Fr(ADDENDUM:)45 b(Ho)l(w)h(to)f(use)g(this)h(License)f
-(for)g(y)l(our)g(do)t(cumen)l(ts)150 458 y Ft(T)-8 b(o)35
+b(159)150 299 y Fs(ADDENDUM:)45 b(Ho)l(w)h(to)f(use)g(this)h(License)f
+(for)g(y)l(our)g(do)t(cumen)l(ts)150 458 y Fu(T)-8 b(o)35
b(use)f(this)h(License)g(in)f(a)h(do)s(cumen)m(t)g(y)m(ou)f(ha)m(v)m(e)
i(written,)g(include)f(a)f(cop)m(y)i(of)f(the)f(License)h(in)g(the)150
568 y(do)s(cumen)m(t)30 b(and)g(put)g(the)g(follo)m(wing)i(cop)m(yrigh)
m(t)g(and)e(license)h(notices)g(just)f(after)h(the)g(title)h(page:)468
-680 y Fe(Copyright)42 b(\(C\))79 b Fd(year)88 b(your)40
-b(name)9 b Fe(.)468 767 y(Permission)42 b(is)e(granted)g(to)g(copy,)h
+680 y Fe(Copyright)42 b(\(C\))79 b Fd(year)g(your)40
+b(name)p Fe(.)468 767 y(Permission)i(is)e(granted)g(to)g(copy,)h
(distribute)g(and/or)g(modify)f(this)g(document)468 854
y(under)h(the)f(terms)g(of)g(the)g(GNU)g(Free)g(Documentation)i
(License,)f(Version)g(1.3)468 941 y(or)f(any)g(later)g(version)h
1029 y(with)g(no)e(Invariant)j(Sections,)f(no)f(Front-Cover)h(Texts,)g
(and)f(no)f(Back-Cover)468 1116 y(Texts.)80 b(A)40 b(copy)g(of)g(the)f
(license)i(is)f(included)h(in)f(the)g(section)g(entitled)h(``GNU)468
-1203 y(Free)g(Documentation)h(License''.)275 1337 y Ft(If)d(y)m(ou)h
+1203 y(Free)g(Documentation)h(License''.)275 1337 y Fu(If)d(y)m(ou)h
(ha)m(v)m(e)h(In)m(v)-5 b(arian)m(t)41 b(Sections,)i(F)-8
b(ron)m(t-Co)m(v)m(er)42 b(T)-8 b(exts)41 b(and)e(Bac)m(k-Co)m(v)m(er)k
(T)-8 b(exts,)43 b(replace)e(the)150 1447 y(\\with)6
b(.)22 b(.)g(.)12 b(T)-8 b(exts.")41 b(line)31 b(with)f(this:)547
1559 y Fe(with)40 b(the)g(Invariant)h(Sections)g(being)g
-Fd(list)f(their)g(titles)9 b Fe(,)41 b(with)547 1646
-y(the)f(Front-Cover)i(Texts)e(being)g Fd(list)9 b Fe(,)40
-b(and)g(with)g(the)g(Back-Cover)i(Texts)547 1733 y(being)e
-Fd(list)9 b Fe(.)275 1868 y Ft(If)34 b(y)m(ou)i(ha)m(v)m(e)g(In)m(v)-5
-b(arian)m(t)36 b(Sections)g(without)f(Co)m(v)m(er)h(T)-8
-b(exts,)38 b(or)d(some)g(other)h(com)m(bination)g(of)g(the)150
-1978 y(three,)31 b(merge)g(those)g(t)m(w)m(o)g(alternativ)m(es)i(to)e
-(suit)f(the)h(situation.)275 2112 y(If)23 b(y)m(our)h(do)s(cumen)m(t)f
-(con)m(tains)i(non)m(trivial)g(examples)g(of)f(program)f(co)s(de,)j(w)m
-(e)e(recommend)g(releasing)150 2222 y(these)44 b(examples)f(in)g
-(parallel)h(under)e(y)m(our)h(c)m(hoice)i(of)e(free)g(soft)m(w)m(are)h
-(license,)k(suc)m(h)43 b(as)g(the)g(GNU)150 2331 y(General)31
-b(Public)f(License,)i(to)f(p)s(ermit)e(their)i(use)f(in)g(free)g(soft)m
-(w)m(are.)p eop end
-%%Page: 161 167
-TeXDict begin 161 166 bop 150 -116 a Ft(App)s(endix)29
-b(D:)i(Indexes)2623 b(161)150 299 y Fo(App)t(endix)52
-b(D)81 b(Indexes)150 631 y Fr(D.1)68 b(Index)45 b(of)g(Shell)g(Builtin)
+Fd(list)f(their)g(titles)p Fe(,)h(with)547 1646 y(the)f(Front-Cover)i
+(Texts)e(being)g Fd(list)p Fe(,)h(and)f(with)g(the)g(Back-Cover)h
+(Texts)547 1733 y(being)f Fd(list)p Fe(.)275 1868 y Fu(If)34
+b(y)m(ou)i(ha)m(v)m(e)g(In)m(v)-5 b(arian)m(t)36 b(Sections)g(without)f
+(Co)m(v)m(er)h(T)-8 b(exts,)38 b(or)d(some)g(other)h(com)m(bination)g
+(of)g(the)150 1978 y(three,)31 b(merge)g(those)g(t)m(w)m(o)g
+(alternativ)m(es)i(to)e(suit)f(the)h(situation.)275 2112
+y(If)23 b(y)m(our)h(do)s(cumen)m(t)f(con)m(tains)i(non)m(trivial)g
+(examples)g(of)f(program)f(co)s(de,)j(w)m(e)e(recommend)g(releasing)150
+2222 y(these)44 b(examples)f(in)g(parallel)h(under)e(y)m(our)h(c)m
+(hoice)i(of)e(free)g(soft)m(w)m(are)h(license,)k(suc)m(h)43
+b(as)g(the)g(GNU)150 2331 y(General)31 b(Public)f(License,)i(to)f(p)s
+(ermit)e(their)i(use)f(in)g(free)g(soft)m(w)m(are.)p
+eop end
+%%Page: 160 166
+TeXDict begin 160 165 bop 150 -116 a Fu(App)s(endix)29
+b(D:)i(Indexes)2623 b(160)150 299 y Fp(App)t(endix)52
+b(D)81 b(Indexes)150 631 y Fs(D.1)68 b(Index)45 b(of)g(Shell)g(Builtin)
g(Commands)150 868 y(.)150 984 y Fe(.)13 b Fc(:)g(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)39 b Fb(41)150 1218 y Fr(:)150 1335
+(:)h(:)f(:)g(:)g(:)39 b Fb(41)150 1218 y Fs(:)150 1335
y Fe(:)13 b Fc(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)39
-b Fb(41)150 1579 y Fr([)150 1695 y Fe([)13 b Fc(:)g(:)g(:)g(:)h(:)f(:)g
+b Fb(41)150 1579 y Fs([)150 1695 y Fe([)13 b Fc(:)g(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)39 b Fb(45)150 1938 y Fr(A)150 2055
+(:)h(:)f(:)g(:)g(:)39 b Fb(45)150 1938 y Fs(A)150 2055
y Fe(alias)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)46 b Fb(48)150
-2289 y Fr(B)150 2405 y Fe(bg)10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)
+2289 y Fs(B)150 2405 y Fe(bg)10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)37 b Fb(99)150 2493 y Fe(bind)23 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)
+g(:)37 b Fb(98)150 2493 y Fe(bind)23 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
49 b Fb(48)150 2580 y Fe(break)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f
b Fb(41)150 2668 y Fe(builtin)15 b Fc(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41
-b Fb(49)150 2902 y Fr(C)150 3019 y Fe(caller)17 b Fc(:)e(:)e(:)g(:)g(:)
+b Fb(49)150 2902 y Fs(C)150 3019 y Fe(caller)17 b Fc(:)e(:)e(:)g(:)g(:)
g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
43 b Fb(50)150 3106 y Fe(cd)10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g
b Fb(50)150 3281 y Fe(compgen)12 b Fc(:)j(:)e(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)39 b
-Fb(127)150 3368 y Fe(complete)10 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)
+Fb(126)150 3368 y Fe(complete)10 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b Fb(128)150
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b Fb(127)150
3456 y Fe(compopt)12 b Fc(:)j(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)39 b Fb(131)150 3543
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)39 b Fb(130)150 3543
y Fe(continue)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b Fb(42)150 3778 y
-Fr(D)150 3894 y Fe(declare)15 b Fc(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+Fs(D)150 3894 y Fe(declare)15 b Fc(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b
Fb(50)150 3982 y Fe(dirs)23 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49
-b Fb(91)150 4069 y Fe(disown)15 b Fc(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42
-b Fb(100)150 4303 y Fr(E)150 4420 y Fe(echo)23 b Fc(:)13
+b Fb(90)150 4069 y Fe(disown)17 b Fc(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43
+b Fb(99)150 4303 y Fs(E)150 4420 y Fe(echo)23 b Fc(:)13
b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
g(:)g(:)g(:)g(:)g(:)g(:)49 b Fb(52)150 4507 y Fe(enable)17
b Fb(43)150 4857 y Fe(export)17 b Fc(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43
-b Fb(43)150 5110 y Fr(F)150 5227 y Fe(fc)8 b Fc(:)14
+b Fb(43)150 5110 y Fs(F)150 5227 y Fe(fc)8 b Fc(:)14
b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)35 b Fb(134)150 5314
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)35 b Fb(133)150 5314
y Fe(fg)10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37
-b Fb(99)2025 868 y Fr(G)2025 988 y Fe(getopts)15 b Fc(:)f(:)f(:)g(:)g
+b Fb(98)2025 868 y Fs(G)2025 988 y Fe(getopts)15 b Fc(:)f(:)f(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41
-b Fb(43)2025 1250 y Fr(H)2025 1370 y Fe(hash)23 b Fc(:)13
+b Fb(43)2025 1250 y Fs(H)2025 1370 y Fe(hash)23 b Fc(:)13
b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(44)2025 1459 y Fe(help)23
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(53)2025 1549
y Fe(history)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(135)2025 1811
-y Fr(J)2025 1931 y Fe(jobs)23 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(134)2025 1811
+y Fs(J)2025 1931 y Fe(jobs)23 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49
-b Fb(99)2025 2193 y Fr(K)2025 2313 y Fe(kill)21 b Fc(:)13
-b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)47 b Fb(100)2025 2557 y Fr(L)2025
+b Fb(98)2025 2193 y Fs(K)2025 2313 y Fe(kill)23 b Fc(:)13
+b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(99)2025 2557 y Fs(L)2025
2677 y Fe(let)8 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34
b Fb(53)2025 2856 y Fe(logout)17 b Fc(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44
-b Fb(54)2025 3118 y Fr(M)2025 3238 y Fe(mapfile)15 b
+b Fb(53)2025 3118 y Fs(M)2025 3238 y Fe(mapfile)15 b
Fc(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)41 b Fb(54)2025 3500 y Fr(P)2025 3620
+h(:)f(:)g(:)g(:)41 b Fb(53)2025 3500 y Fs(P)2025 3620
y Fe(popd)23 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(91)2025
3799 y Fe(pushd)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b
-Fb(92)2025 3888 y Fe(pwd)8 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+Fb(91)2025 3888 y Fe(pwd)8 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34
-b Fb(44)2025 4150 y Fr(R)2025 4270 y Fe(read)23 b Fc(:)13
+b Fb(44)2025 4150 y Fs(R)2025 4270 y Fe(read)23 b Fc(:)13
b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(55)2025 4360 y Fe(readarray)9
b Fb(44)2025 4538 y Fe(return)17 b Fc(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44
-b Fb(45)2025 4782 y Fr(S)2025 4902 y Fe(set)8 b Fc(:)13
+b Fb(45)2025 4782 y Fs(S)2025 4902 y Fe(set)8 b Fc(:)13
b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 b Fb(59)2025 4991
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 b Fb(58)2025 4991
y Fe(shift)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(45)2025
5080 y Fe(shopt)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b
-Fb(63)2025 5169 y Fe(source)17 b Fc(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+Fb(62)2025 5169 y Fe(source)17 b Fc(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44
-b Fb(57)2025 5259 y Fe(suspend)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b
-Fb(100)p eop end
-%%Page: 162 168
-TeXDict begin 162 167 bop 150 -116 a Ft(App)s(endix)29
-b(D:)i(Indexes)2623 b(162)150 299 y Fr(T)150 428 y Fe(test)23
+b Fb(56)2025 5259 y Fe(suspend)15 b Fc(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41
+b Fb(99)p eop end
+%%Page: 161 167
+TeXDict begin 161 166 bop 150 -116 a Fu(App)s(endix)29
+b(D:)i(Indexes)2623 b(161)150 299 y Fs(T)150 428 y Fe(test)23
b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49 b Fb(45)150 522 y
b Fb(47)150 709 y Fe(type)23 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49
-b Fb(57)150 803 y Fe(typeset)15 b Fc(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)
+b Fb(56)150 803 y Fe(typeset)15 b Fc(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41
-b Fb(57)2025 299 y Fr(U)2025 415 y Fe(ulimit)17 b Fc(:)d(:)g(:)f(:)g(:)
+b Fb(57)2025 299 y Fs(U)2025 415 y Fe(ulimit)17 b Fc(:)d(:)g(:)f(:)g(:)
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
44 b Fb(57)2025 502 y Fe(umask)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g
b Fb(58)2025 677 y Fe(unset)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46
-b Fb(48)2025 910 y Fr(W)2025 1026 y Fe(wait)21 b Fc(:)13
-b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)47 b Fb(100)150 1259 y Fr(D.2)68
+b Fb(48)2025 910 y Fs(W)2025 1026 y Fe(wait)23 b Fc(:)13
+b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(99)150 1259 y Fs(D.2)68
b(Index)45 b(of)g(Shell)g(Reserv)l(ed)h(W)-11 b(ords)150
-1495 y(!)150 1612 y Fe(!)15 b Fc(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+1495 y(!)150 1611 y Fe(!)15 b Fc(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)42 b Fb(8)150 1855 y Fr([)150 1971 y Fe([[)10
+g(:)g(:)42 b Fb(8)150 1855 y Fs([)150 1971 y Fe([[)10
b Fc(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b Fb(12)150
-2220 y Fr(])150 2337 y Fe(]])10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)
+2220 y Fs(])150 2336 y Fe(]])10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)37 b Fb(12)150 2579 y Fa({)150 2695 y Fe({)13 b Fc(:)g(:)g(:)g(:)h
+g(:)37 b Fb(12)150 2579 y Fa(|)150 2695 y Fe({)13 b Fc(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)39 b Fb(14)150 2938 y Fa(})150
-3054 y Fe(})13 b Fc(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)h(:)f(:)g(:)g(:)39 b Fb(14)150 2782 y Fe(})13
+b Fc(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)39 b Fb(14)150
+3024 y Fs(C)150 3140 y Fe(case)23 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49
+b Fb(11)150 3374 y Fs(D)150 3490 y Fe(do)10 b Fc(:)k(:)f(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)39
-b Fb(14)150 3296 y Fr(C)150 3412 y Fe(case)23 b Fc(:)13
+g(:)g(:)g(:)g(:)37 b Fb(10)150 3577 y Fe(done)23 b Fc(:)13
b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)49 b Fb(11)150 3646 y Fr(D)150
-3762 y Fe(do)10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37
-b Fb(10)150 3849 y Fe(done)23 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)g(:)49 b Fb(10)150 3810 y Fs(E)150
+3926 y Fe(elif)23 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49
+b Fb(10)150 4014 y Fe(else)23 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49
-b Fb(10)150 4083 y Fr(E)150 4199 y Fe(elif)23 b Fc(:)13
-b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)49 b Fb(10)2025 1495 y Fe(else)23
-b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+b Fb(10)2025 1495 y Fe(esac)23 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49
+b Fb(11)2025 1737 y Fs(F)2025 1856 y Fe(fi)10 b Fc(:)k(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)37 b Fb(10)2025 1945 y Fe(for)8 b
+Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 b Fb(10)2025
+2033 y Fe(function)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(10)2025 1586
-y Fe(esac)23 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(11)2025
-1838 y Fr(F)2025 1961 y Fe(fi)10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Fb(17)2025 2275
+y Fs(I)2025 2394 y Fe(if)10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+37 b Fb(10)2025 2483 y Fe(in)10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)37 b Fb(11)2025 2724 y Fs(S)2025 2843 y Fe(select)17
+b Fc(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(12)2025 3085 y Fs(T)2025
+3204 y Fe(then)23 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49
+b Fb(10)2025 3293 y Fe(time)7 b Fc(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)34 b Fb(8)2025 3534 y Fs(U)2025 3653 y Fe(until)21
+b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(10)2025 3894 y Fs(W)2025
+4014 y Fe(while)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b
+Fb(10)150 4246 y Fs(D.3)68 b(P)l(arameter)47 b(and)d(V)-11
+b(ariable)46 b(Index)150 4483 y(!)150 4603 y Fe(!)13
+b Fc(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)39 b Fb(20)150
+4846 y Fs(#)150 4967 y Fe(#)13 b Fc(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)39 b Fb(20)150 5220 y Fs($)150 5340 y Fe($)13
+b Fc(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)39 b Fb(20)2025
+4483 y Fe($!)10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37
+b Fb(20)2025 4574 y Fe($#)10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)37 b Fb(20)2025 4665 y Fe($$)10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)37 b Fb(10)2025 2052 y Fe(for)8 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)34 b Fb(10)2025 2143 y Fe(function)12 b Fc(:)j(:)e(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39
-b Fb(17)2025 2394 y Fr(I)2025 2518 y Fe(if)10 b Fc(:)k(:)f(:)g(:)g(:)g
+(:)g(:)37 b Fb(20)2025 4756 y Fe($*)10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)37 b Fb(20)2025 4847 y Fe($-)10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)37 b Fb(20)2025 4938 y Fe($?)10 b Fc(:)k(:)f(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)37 b Fb(10)2025 2608 y Fe(in)10 b
+(:)g(:)g(:)g(:)g(:)37 b Fb(20)2025 5029 y Fe($@)10 b
Fc(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Fb(11)2025
-2860 y Fr(S)2025 2983 y Fe(select)17 b Fc(:)d(:)g(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44
-b Fb(12)2025 3235 y Fr(T)2025 3358 y Fe(then)23 b Fc(:)13
-b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(10)2025 3449 y Fe(time)7
-b Fc(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)34 b Fb(8)2025
-3701 y Fr(U)2025 3824 y Fe(until)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46
-b Fb(10)2025 4076 y Fr(W)2025 4199 y Fe(while)21 b Fc(:)13
-b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)46 b Fb(10)150 4431 y Fr(D.3)68 b(P)l(arameter)47
-b(and)d(V)-11 b(ariable)46 b(Index)150 4668 y(!)150 4794
-y Fe(!)13 b Fc(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)39
-b Fb(20)150 5054 y Fr(#)150 5180 y Fe(#)13 b Fc(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Fb(20)2025
+5120 y Fe($_)10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)39 b Fb(20)2025 4668 y Fr($)2025 4794
-y Fe($)13 b Fc(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39
-b Fb(20)2025 5067 y Fr(*)2025 5192 y Fe(*)13 b Fc(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(20)p eop end
-%%Page: 163 169
-TeXDict begin 163 168 bop 150 -116 a Ft(App)s(endix)29
-b(D:)i(Indexes)2623 b(163)150 299 y Fr(-)150 415 y Fe(-)13
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)37
+b Fb(20)2025 5211 y Fe($0)10 b Fc(:)k(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)37 b Fb(20)p eop end
+%%Page: 162 168
+TeXDict begin 162 167 bop 150 -116 a Fu(App)s(endix)29
+b(D:)i(Indexes)2623 b(162)150 299 y Fs(*)150 415 y Fe(*)13
b Fc(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)39 b Fb(20)150
-649 y Fr(?)150 765 y Fe(?)13 b Fc(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+649 y Fs(-)150 765 y Fe(-)13 b Fc(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)39 b Fb(20)150 999 y Fr(@)150 1115 y Fe(@)13 b
+(:)g(:)39 b Fb(20)150 999 y Fs(?)150 1115 y Fe(?)13 b
Fc(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)39 b Fb(20)p
-159 1349 41 6 v 150 1465 a Fe(_)13 b Fc(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)39 b Fb(20)150 1699 y Fr(0)150 1815 y Fe(0)13
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)39 b Fb(20)150
+1349 y Fs(@)150 1465 y Fe(@)13 b Fc(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)39 b Fb(20)p 159 1699 41 6 v 150 1815 a Fe(_)13
b Fc(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)39 b Fb(20)150
-2049 y Fr(A)150 2166 y Fe(auto_resume)22 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)46 b Fb(101)150
-2409 y Fr(B)150 2525 y Fe(BASH)23 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49
-b Fb(69)150 2612 y Fe(BASH_ALIASES)22 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(70)150 2700
-y Fe(BASH_ARGC)9 b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fb(70)150 2787 y
-Fe(BASH_ARGV)9 b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fb(70)150 2874 y Fe(BASH_CMDS)9
-b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)36 b Fb(70)150 2962 y Fe(BASH_COMMAND)22
+2049 y Fs(0)150 2165 y Fe(0)13 b Fc(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)39 b Fb(20)150 2399 y Fs(A)150 2515 y Fe(auto_resume)22
+b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)46
+b Fb(100)150 2758 y Fs(B)150 2875 y Fe(BASH)23 b Fc(:)13
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)49 b Fb(69)150 2962 y Fe(BASH_ALIASES)22
b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45
-b Fb(70)150 3049 y Fe(BASH_COMPAT)24 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48 b Fb(70)150
-3137 y Fe(BASH_ENV)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b Fb(71)150 3224
-y Fe(BASH_EXECUTION_STRING)13 b Fc(:)18 b(:)13 b(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39
-b Fb(71)150 3311 y Fe(BASH_LINENO)24 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48 b Fb(71)150
-3399 y Fe(BASH_REMATCH)22 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+b Fb(70)150 3049 y Fe(BASH_ARGC)9 b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b
+Fb(70)150 3137 y Fe(BASH_ARGV)9 b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fb(70)150
+3224 y Fe(BASH_CMDS)9 b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(71)150 3486 y Fe(BASH_SOURCE)24
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fb(70)150 3311
+y Fe(BASH_COMMAND)22 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)45 b Fb(70)150 3399 y Fe(BASH_COMPAT)24
b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-48 b Fb(71)150 3573 y Fe(BASH_SUBSHELL)16 b Fc(:)g(:)e(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)43 b Fb(71)150 3661 y
-Fe(BASH_VERSINFO)16 b Fc(:)g(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)43 b Fb(71)150 3748 y Fe(BASH_VERSION)22 b
-Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+48 b Fb(70)150 3486 y Fe(BASH_ENV)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38
+b Fb(71)150 3574 y Fe(BASH_EXECUTION_STRING)13 b Fc(:)18
+b(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)39 b Fb(71)150 3661 y Fe(BASH_LINENO)24
+b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+48 b Fb(71)150 3748 y Fe(BASH_REMATCH)22 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(71)150
+3836 y Fe(BASH_SOURCE)24 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)48 b Fb(71)150 3923 y Fe(BASH_SUBSHELL)16
+b Fc(:)g(:)e(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)43
+b Fb(71)150 4010 y Fe(BASH_VERSINFO)16 b Fc(:)g(:)e(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)43 b Fb(71)150 4098 y Fe(BASH_VERSION)22
+b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45
-b Fb(72)150 3835 y Fe(BASH_XTRACEFD)16 b Fc(:)g(:)e(:)f(:)g(:)g(:)g(:)g
+b Fb(72)150 4185 y Fe(BASH_XTRACEFD)16 b Fc(:)g(:)e(:)f(:)g(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)43 b Fb(72)150 3923 y Fe(BASHOPTS)12
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)43 b Fb(72)150 4272 y Fe(BASHOPTS)12
b Fc(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)38 b Fb(70)150 4010 y Fe(BASHPID)15 b
+(:)g(:)h(:)f(:)38 b Fb(70)150 4360 y Fe(BASHPID)15 b
Fc(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)41 b Fb(70)150 4098 y Fe(bell-style)24
+f(:)g(:)g(:)g(:)41 b Fb(70)150 4447 y Fe(bell-style)24
b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-49 b Fb(106)150 4185 y Fe(bind-tty-special-chars)8 b
+49 b Fb(105)150 4534 y Fe(bind-tty-special-chars)8 b
Fc(:)18 b(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)35 b Fb(106)150 4437 y Fr(C)150 4554
+(:)h(:)f(:)g(:)g(:)35 b Fb(105)150 4787 y Fs(C)150 4903
y Fe(CDPATH)17 b Fc(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43 b Fb(69)150 4641
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43 b Fb(69)150 4991
y Fe(CHILD_MAX)9 b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fb(72)150 4728 y
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fb(72)150 5078 y
Fe(colored-stats)14 b Fc(:)i(:)d(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)41 b Fb(106)150 4816 y Fe(COLUMNS)15 b Fc(:)f(:)f(:)h(:)f(:)g(:)
+(:)g(:)41 b Fb(105)150 5165 y Fe(COLUMNS)15 b Fc(:)f(:)f(:)h(:)f(:)g(:)
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41
-b Fb(72)150 4903 y Fe(comment-begin)14 b Fc(:)i(:)d(:)h(:)f(:)g(:)g(:)g
+b Fb(72)150 5253 y Fe(comment-begin)14 b Fc(:)i(:)d(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)41 b Fb(106)150 4991 y Fe(COMP_CWORD)7
+g(:)h(:)f(:)g(:)g(:)g(:)41 b Fb(105)150 5340 y Fe(COMP_CWORD)7
b Fc(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)33 b Fb(72)150 5078 y Fe(COMP_KEY)12 b Fc(:)j(:)e(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38
-b Fb(73)150 5165 y Fe(COMP_LINE)9 b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b
-Fb(72)150 5253 y Fe(COMP_POINT)7 b Fc(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)33 b Fb(72)150
-5340 y Fe(COMP_TYPE)9 b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fb(73)2025 299
+f(:)g(:)33 b Fb(72)2025 299 y Fe(COMP_KEY)12 b Fc(:)j(:)e(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39
+b Fb(73)2025 386 y Fe(COMP_LINE)9 b Fc(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b
+Fb(72)2025 474 y Fe(COMP_POINT)7 b Fc(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(72)2025
+561 y Fe(COMP_TYPE)9 b Fc(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fb(73)2025 649
y Fe(COMP_WORDBREAKS)11 b Fc(:)17 b(:)c(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)38 b Fb(73)2025 387 y Fe(COMP_WORDS)7 b Fc(:)15
+g(:)g(:)38 b Fb(73)2025 736 y Fe(COMP_WORDS)7 b Fc(:)15
b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-33 b Fb(73)2025 474 y Fe(completion-display-width)26
+33 b Fb(73)2025 824 y Fe(completion-display-width)26
b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)47 b Fb(106)2025 562 y Fe(completion-ignore-case)8
+(:)g(:)47 b Fb(105)2025 911 y Fe(completion-ignore-case)8
b Fc(:)18 b(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)35 b Fb(106)2025 649 y Fe(completion-map-case)16
+(:)g(:)g(:)g(:)h(:)f(:)35 b Fb(105)2025 999 y Fe(completion-map-case)16
b Fc(:)h(:)c(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)43 b Fb(106)2025 737 y Fe
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)43 b Fb(105)2025 1086 y Fe
(completion-prefix-display-leng)q(th)17 b Fc(:)i(:)13
-b(:)g(:)h(:)f(:)g(:)g(:)g(:)44 b Fb(107)2025 825 y Fe
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)44 b Fb(106)2025 1174 y Fe
(completion-query-items)8 b Fc(:)18 b(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35 b
-Fb(107)2025 912 y Fe(COMPREPLY)9 b Fc(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b Fb(73)2025
-1000 y Fe(convert-meta)17 b Fc(:)e(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)44 b Fb(107)2025 1088 y Fe(COPROC)17
+Fb(106)2025 1261 y Fe(COMPREPLY)9 b Fc(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36 b
+Fb(73)2025 1349 y Fe(convert-meta)17 b Fc(:)e(:)f(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(106)2025 1436 y Fe(COPROC)17
b Fc(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(73)2025 1323 y Fr(D)2025
-1440 y Fe(DIRSTACK)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(73)2025 1671 y Fs(D)2025
+1788 y Fe(DIRSTACK)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Fb(73)2025 1527
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Fb(73)2025 1875
y Fe(disable-completion)22 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)45
-b Fb(107)2025 1781 y Fr(E)2025 1898 y Fe(editing-mode)17
+b Fb(106)2025 2128 y Fs(E)2025 2245 y Fe(editing-mode)17
b Fc(:)e(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44
-b Fb(107)2025 1985 y Fe(EMACS)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)
+b Fb(106)2025 2332 y Fe(EMACS)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)
h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46
-b Fb(73)2025 2073 y Fe(enable-keypad)14 b Fc(:)i(:)d(:)g(:)g(:)h(:)f(:)
+b Fb(73)2025 2420 y Fe(enable-keypad)14 b Fc(:)i(:)d(:)g(:)g(:)h(:)f(:)
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)41 b Fb(107)2025 2161 y Fe(ENV)8
+(:)g(:)g(:)g(:)h(:)f(:)g(:)41 b Fb(106)2025 2507 y Fe(ENV)8
b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 b Fb(73)2025
-2248 y Fe(EUID)23 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+2595 y Fe(EUID)23 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49
-b Fb(73)2025 2336 y Fe(expand-tilde)17 b Fc(:)e(:)f(:)f(:)g(:)g(:)g(:)g
+b Fb(73)2025 2682 y Fe(expand-tilde)17 b Fc(:)e(:)f(:)f(:)g(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(107)2025 2590 y Fr(F)2025
-2707 y Fe(FCEDIT)17 b Fc(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(106)2025 2936 y Fs(F)2025
+3052 y Fe(FCEDIT)17 b Fc(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(73)2025
-2794 y Fe(FIGNORE)15 b Fc(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+3140 y Fe(FIGNORE)15 b Fc(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41 b Fb(74)2025
-2882 y Fe(FUNCNAME)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+3227 y Fe(FUNCNAME)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Fb(74)2025 2970
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Fb(74)2025 3315
y Fe(FUNCNEST)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Fb(74)2025 3205
-y Fr(G)2025 3322 y Fe(GLOBIGNORE)7 b Fc(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Fb(74)2025 3549
+y Fs(G)2025 3666 y Fe(GLOBIGNORE)7 b Fc(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(74)2025
-3409 y Fe(GROUPS)17 b Fc(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+3753 y Fe(GROUPS)17 b Fc(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(74)2025
-3644 y Fr(H)2025 3761 y Fe(histchars)9 b Fc(:)15 b(:)f(:)f(:)g(:)g(:)g
+3988 y Fs(H)2025 4104 y Fe(histchars)9 b Fc(:)15 b(:)f(:)f(:)g(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)36
-b Fb(74)2025 3849 y Fe(HISTCMD)15 b Fc(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g
+b Fb(74)2025 4192 y Fe(HISTCMD)15 b Fc(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)41
-b Fb(74)2025 3936 y Fe(HISTCONTROL)24 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g
+b Fb(74)2025 4279 y Fe(HISTCONTROL)24 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)48 b Fb(74)2025
-4024 y Fe(HISTFILE)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+4367 y Fe(HISTFILE)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Fb(75)2025 4112
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Fb(75)2025 4454
y Fe(HISTFILESIZE)21 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)45 b Fb(75)2025 4199 y Fe(HISTIGNORE)7
+(:)g(:)g(:)g(:)h(:)45 b Fb(75)2025 4542 y Fe(HISTIGNORE)7
b Fc(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)33 b Fb(75)2025 4287 y Fe(history-preserve-point)8
+g(:)h(:)33 b Fb(75)2025 4630 y Fe(history-preserve-point)8
b Fc(:)18 b(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)35 b Fb(108)2025 4375 y Fe(history-size)17
+(:)g(:)g(:)g(:)h(:)f(:)35 b Fb(107)2025 4717 y Fe(history-size)17
b Fc(:)e(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44
-b Fb(108)2025 4462 y Fe(HISTSIZE)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)
+b Fb(107)2025 4805 y Fe(HISTSIZE)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39
-b Fb(75)2025 4550 y Fe(HISTTIMEFORMAT)14 b Fc(:)i(:)d(:)g(:)g(:)g(:)h
+b Fb(75)2025 4892 y Fe(HISTTIMEFORMAT)14 b Fc(:)i(:)d(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Fb(75)2025 4637 y Fe(HOME)23
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Fb(75)2025 4980 y Fe(HOME)23
b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(69)2025 4725
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(69)2025 5067
y Fe(horizontal-scroll-mode)8 b Fc(:)18 b(:)13 b(:)h(:)f(:)g(:)g(:)g(:)
g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35
-b Fb(108)2025 4813 y Fe(HOSTFILE)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)
+b Fb(107)2025 5155 y Fe(HOSTFILE)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39
-b Fb(75)2025 4900 y Fe(HOSTNAME)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)f
+b Fb(75)2025 5242 y Fe(HOSTNAME)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b
-Fb(76)2025 4988 y Fe(HOSTTYPE)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)f
+Fb(76)2025 5330 y Fe(HOSTTYPE)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b
-Fb(76)2025 5223 y Fr(I)2025 5340 y Fe(IFS)8 b Fc(:)13
-b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 b Fb(69)p eop end
-%%Page: 164 170
-TeXDict begin 164 169 bop 150 -116 a Ft(App)s(endix)29
-b(D:)i(Indexes)2623 b(164)150 299 y Fe(IGNOREEOF)9 b
-Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)36 b Fb(76)150 387 y Fe(input-meta)24 b Fc(:)13
-b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49
-b Fb(108)150 475 y Fe(INPUTRC)15 b Fc(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41
-b Fb(76)150 563 y Fe(isearch-terminators)16 b Fc(:)h(:)d(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)43 b Fb(108)150 800 y Fr(K)150 918 y Fe(keymap)15
-b Fc(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)42 b Fb(108)150 1173 y Fr(L)150 1291
-y Fe(LANG)23 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49 b Fb(76)150
-1379 y Fe(LC_ALL)17 b Fc(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43 b Fb(76)150
-1467 y Fe(LC_COLLATE)7 b Fc(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)33 b Fb(76)150 1555 y
-Fe(LC_CTYPE)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b Fb(76)150 1643 y Fe(LC_MESSAGES)13
-b Fc(:)j(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40
-b Fb(7,)26 b(76)150 1731 y Fe(LC_NUMERIC)7 b Fc(:)15
-b(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+Fb(76)p eop end
+%%Page: 163 169
+TeXDict begin 163 168 bop 150 -116 a Fu(App)s(endix)29
+b(D:)i(Indexes)2623 b(163)150 299 y Fs(I)150 415 y Fe(IFS)8
+b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)34 b Fb(69)150
+502 y Fe(IGNOREEOF)9 b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b Fb(76)150 590
+y Fe(input-meta)24 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-33 b Fb(76)150 1819 y Fe(LINENO)17 b Fc(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43
-b Fb(76)150 1907 y Fe(LINES)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+g(:)g(:)g(:)g(:)g(:)49 b Fb(107)150 677 y Fe(INPUTRC)15
+b Fc(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)41 b Fb(76)150 764 y Fe(isearch-terminators)16
+b Fc(:)h(:)d(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)43 b Fb(107)150 997 y Fs(K)150
+1114 y Fe(keymap)15 b Fc(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)42 b Fb(107)150
+1366 y Fs(L)150 1482 y Fe(LANG)23 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49
+b Fb(76)150 1569 y Fe(LC_ALL)17 b Fc(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43
+b Fb(76)150 1656 y Fe(LC_COLLATE)7 b Fc(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)33 b Fb(76)150
+1743 y Fe(LC_CTYPE)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b Fb(76)150 1831
+y Fe(LC_MESSAGES)13 b Fc(:)j(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)40 b Fb(7,)26 b(76)150 1918 y Fe(LC_NUMERIC)7
+b Fc(:)15 b(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)33 b Fb(76)150 2005 y Fe(LINENO)17 b Fc(:)e(:)e(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43
+b Fb(76)150 2093 y Fe(LINES)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)46
-b Fb(76)150 2144 y Fr(M)150 2262 y Fe(MACHTYPE)12 b Fc(:)j(:)e(:)g(:)g
+b Fb(76)150 2326 y Fs(M)150 2442 y Fe(MACHTYPE)12 b Fc(:)j(:)e(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38
-b Fb(76)150 2350 y Fe(MAIL)23 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+b Fb(76)150 2529 y Fe(MAIL)23 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)49
-b Fb(69)150 2438 y Fe(MAILCHECK)9 b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g
+b Fb(69)150 2617 y Fe(MAILCHECK)9 b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36 b
-Fb(77)150 2526 y Fe(MAILPATH)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)
+Fb(77)150 2704 y Fe(MAILPATH)12 b Fc(:)j(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b Fb(69)150
-2614 y Fe(MAPFILE)15 b Fc(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+2791 y Fe(MAPFILE)15 b Fc(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Fb(77)150
-2702 y Fe(mark-modified-lines)16 b Fc(:)h(:)d(:)f(:)g(:)g(:)g(:)g(:)g
+2878 y Fe(mark-modified-lines)16 b Fc(:)h(:)d(:)f(:)g(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)43
-b Fb(109)150 2790 y Fe(mark-symlinked-directories)16
+b Fb(108)150 2966 y Fe(mark-symlinked-directories)16
b Fc(:)i(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-42 b Fb(109)150 2878 y Fe(match-hidden-files)23 b Fc(:)13
+42 b Fb(108)150 3053 y Fe(match-hidden-files)23 b Fc(:)13
b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(109)150 2966 y Fe
+(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(108)150 3140 y Fe
(menu-complete-display-prefix)11 b Fc(:)19 b(:)13 b(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Fb(109)150 3054 y Fe(meta-flag)7
+(:)h(:)f(:)g(:)g(:)g(:)g(:)37 b Fb(108)150 3227 y Fe(meta-flag)7
b Fc(:)16 b(:)d(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)34 b Fb(108)150 3309 y Fr(O)150 3427 y Fe(OLDPWD)17
+g(:)g(:)34 b Fb(107)150 3479 y Fs(O)150 3596 y Fe(OLDPWD)17
b Fc(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)43 b Fb(77)150 3515 y Fe(OPTARG)17
+(:)g(:)g(:)g(:)g(:)h(:)43 b Fb(77)150 3683 y Fe(OPTARG)17
b Fc(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)43 b Fb(69)150 3603 y Fe(OPTERR)17
+(:)g(:)g(:)g(:)g(:)h(:)43 b Fb(69)150 3770 y Fe(OPTERR)17
b Fc(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)43 b Fb(77)150 3691 y Fe(OPTIND)17
+(:)g(:)g(:)g(:)g(:)h(:)43 b Fb(77)150 3857 y Fe(OPTIND)17
b Fc(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)43 b Fb(69)150 3779 y Fe(OSTYPE)17
+(:)g(:)g(:)g(:)g(:)h(:)43 b Fb(69)150 3945 y Fe(OSTYPE)17
b Fc(:)e(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)43 b Fb(77)150 3867 y Fe(output-meta)22
+(:)g(:)g(:)g(:)g(:)h(:)43 b Fb(77)150 4032 y Fe(output-meta)22
b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)46
-b Fb(109)150 4123 y Fr(P)150 4240 y Fe(page-completions)7
+b Fb(108)150 4284 y Fs(P)150 4400 y Fe(page-completions)7
b Fc(:)16 b(:)d(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(109)2025
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)33 b Fb(108)2025
299 y Fe(PATH)23 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49
-b Fb(69)2025 386 y Fe(PIPESTATUS)7 b Fc(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g
+b Fb(69)2025 389 y Fe(PIPESTATUS)7 b Fc(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(77)2025
-473 y Fe(POSIXLY_CORRECT)11 b Fc(:)17 b(:)c(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+478 y Fe(POSIXLY_CORRECT)11 b Fc(:)17 b(:)c(:)g(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)38 b Fb(77)2025 560 y Fe(PPID)23 b Fc(:)13
+g(:)g(:)g(:)38 b Fb(77)2025 568 y Fe(PPID)23 b Fc(:)13
b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(77)2025 648 y Fe(PROMPT_COMMAND)14
+h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(77)2025 658 y Fe(PROMPT_COMMAND)14
b Fc(:)i(:)d(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)40
-b Fb(77)2025 735 y Fe(PROMPT_DIRTRIM)14 b Fc(:)i(:)d(:)g(:)g(:)g(:)h(:)
+b Fb(77)2025 748 y Fe(PROMPT_DIRTRIM)14 b Fc(:)i(:)d(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Fb(77)2025 822 y Fe(PS1)8
+(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Fb(77)2025 837 y Fe(PS1)8
b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34 b Fb(69)2025
-909 y Fe(PS2)8 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+927 y Fe(PS2)8 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34
-b Fb(69)2025 996 y Fe(PS3)8 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34
-b Fb(77)2025 1083 y Fe(PS4)8 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+b Fb(69)2025 1017 y Fe(PS3)8 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-34 b Fb(77)2025 1171 y Fe(PWD)8 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+34 b Fb(77)2025 1107 y Fe(PS4)8 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)34 b Fb(77)2025 1403 y Fr(R)2025 1519 y Fe(RANDOM)17
+(:)34 b Fb(77)2025 1197 y Fe(PWD)8 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)34 b Fb(77)2025 1443 y Fs(R)2025 1564 y Fe(RANDOM)17
b Fc(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(77)2025 1606 y Fe(READLINE_LINE)16
+(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(77)2025 1654 y Fe(READLINE_LINE)16
b Fc(:)g(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43
-b Fb(78)2025 1694 y Fe(READLINE_POINT)14 b Fc(:)i(:)d(:)g(:)g(:)g(:)h
+b Fb(78)2025 1744 y Fe(READLINE_POINT)14 b Fc(:)i(:)d(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Fb(78)2025 1781 y Fe(REPLY)21
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Fb(78)2025 1834 y Fe(REPLY)21
b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(78)2025 1868 y Fe
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(78)2025 1923 y Fe
(revert-all-at-newline)11 b Fc(:)18 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)
h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38
-b Fb(109)2025 2101 y Fr(S)2025 2217 y Fe(SECONDS)15 b
+b Fb(108)2025 2170 y Fs(S)2025 2291 y Fe(SECONDS)15 b
Fc(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)41 b Fb(78)2025 2304 y Fe(SHELL)21 b
+h(:)f(:)g(:)g(:)41 b Fb(78)2025 2381 y Fe(SHELL)21 b
Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(78)2025 2391 y Fe(SHELLOPTS)9
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(78)2025 2471 y Fe(SHELLOPTS)9
b Fc(:)15 b(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)36 b Fb(78)2025 2478 y Fe(SHLVL)21 b Fc(:)13
+f(:)g(:)g(:)36 b Fb(78)2025 2560 y Fe(SHLVL)21 b Fc(:)13
b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)46 b Fb(78)2025 2565 y Fe(show-all-if-ambiguous)11
+g(:)g(:)h(:)f(:)g(:)46 b Fb(78)2025 2650 y Fe(show-all-if-ambiguous)11
b Fc(:)18 b(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)38 b Fb(109)2025 2653 y Fe
+(:)h(:)f(:)g(:)g(:)g(:)g(:)38 b Fb(108)2025 2740 y Fe
(show-all-if-unmodified)8 b Fc(:)18 b(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)35 b
-Fb(110)2025 2740 y Fe(show-mode-in-prompt)16 b Fc(:)h(:)c(:)g(:)h(:)f
+Fb(109)2025 2830 y Fe(show-mode-in-prompt)16 b Fc(:)h(:)c(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)43 b Fb(110)2025 2827 y Fe(skip-completed-text)16
+g(:)43 b Fb(109)2025 2919 y Fe(skip-completed-text)16
b Fc(:)h(:)c(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)43 b Fb(110)2025 3078 y Fr(T)2025
-3194 y Fe(TEXTDOMAIN)9 b Fc(:)15 b(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)43 b Fb(109)2025 3184 y Fs(T)2025
+3306 y Fe(TEXTDOMAIN)9 b Fc(:)15 b(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)36 b Fb(7)2025 3282
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)36 b Fb(7)2025 3395
y Fe(TEXTDOMAINDIR)21 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)46 b Fb(7)2025 3369 y Fe(TIMEFORMAT)7
+g(:)g(:)g(:)g(:)g(:)46 b Fb(7)2025 3485 y Fe(TIMEFORMAT)7
b Fc(:)15 b(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)33 b Fb(78)2025 3456 y Fe(TMOUT)21 b Fc(:)13
+g(:)h(:)33 b Fb(78)2025 3575 y Fe(TMOUT)21 b Fc(:)13
b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)46 b Fb(79)2025 3543 y Fe(TMPDIR)17
+g(:)g(:)h(:)f(:)g(:)46 b Fb(79)2025 3665 y Fe(TMPDIR)17
b Fc(:)d(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(79)2025 3776 y Fr(U)2025
-3892 y Fe(UID)8 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(79)2025 3911 y Fs(U)2025
+4032 y Fe(UID)8 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)34
-b Fb(79)2025 4124 y Fr(V)2025 4240 y Fe(visible-stats)14
+b Fb(79)2025 4279 y Fs(V)2025 4400 y Fe(visible-stats)14
b Fc(:)i(:)d(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)41
-b Fb(110)150 4489 y Fr(D.4)68 b(F)-11 b(unction)44 b(Index)150
-4726 y(A)150 4860 y Fe(abort)27 b(\(C-g\))9 b Fc(:)14
+b Fb(109)150 4649 y Fs(D.4)68 b(F)-11 b(unction)44 b(Index)150
+4886 y(A)150 5010 y Fe(abort)27 b(\(C-g\))9 b Fc(:)14
b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)36
-b Fb(123)150 4956 y Fe(accept-line)28 b(\(Newline)g(or)e(Return\))e
+b Fb(122)150 5102 y Fe(accept-line)28 b(\(Newline)g(or)e(Return\))e
Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)50 b
-Fb(117)150 5051 y Fe(alias-expand-line)29 b(\(\))21 b
+Fb(116)150 5193 y Fe(alias-expand-line)29 b(\(\))21 b
Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(125)2025 4726 y Fr(B)2025
-4860 y Fe(backward-char)28 b(\(C-b\))c Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)
+(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(124)2025 4886 y Fs(B)2025
+5033 y Fe(backward-char)28 b(\(C-b\))c Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)
g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)50
-b Fb(116)2025 4956 y Fe(backward-delete-char)30 b(\(Rubout\))14
+b Fb(115)2025 5135 y Fe(backward-delete-char)30 b(\(Rubout\))14
b Fc(:)h(:)e(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)41
-b Fb(118)2025 5052 y Fe(backward-kill-line)29 b(\(C-x)e(Rubout\))16
-b Fc(:)f(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)43 b Fb(119)2025
-5148 y Fe(backward-kill-word)29 b(\(M-DEL\))24 b Fc(:)13
+b Fb(117)2025 5238 y Fe(backward-kill-line)29 b(\(C-x)e(Rubout\))16
+b Fc(:)f(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)43 b Fb(118)2025
+5340 y Fe(backward-kill-word)29 b(\(M-DEL\))24 b Fc(:)13
b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49
-b Fb(120)2025 5244 y Fe(backward-word)28 b(\(M-b\))c
-Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)50 b Fb(116)2025 5340
-y Fe(beginning-of-history)30 b(\(M-<\))23 b Fc(:)13 b(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49 b Fb(117)p
-eop end
-%%Page: 165 171
-TeXDict begin 165 170 bop 150 -116 a Ft(App)s(endix)29
-b(D:)i(Indexes)2623 b(165)150 299 y Fe(beginning-of-line)29
-b(\(C-a\))13 b Fc(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(116)150 558 y Fr(C)150
-677 y Fe(call-last-kbd-macro)30 b(\(C-x)c(e\))9 b Fc(:)14
-b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)36
-b Fb(122)150 765 y Fe(capitalize-word)29 b(\(M-c\))18
-b Fc(:)c(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)44 b Fb(119)150 854 y Fe(character-search)29
-b(\(C-]\))15 b Fc(:)g(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)42 b Fb(123)150 943 y
-Fe(character-search-backward)31 b(\(M-C-]\))23 b Fc(:)13
-b(:)g(:)h(:)f(:)g(:)g(:)g(:)48 b Fb(123)150 1031 y Fe(clear-screen)28
-b(\(C-l\))8 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35
-b Fb(116)150 1120 y Fe(complete)27 b(\(TAB\))20 b Fc(:)13
-b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(121)150
-1208 y Fe(complete-command)29 b(\(M-!\))15 b Fc(:)g(:)e(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)42
-b Fb(122)150 1297 y Fe(complete-filename)29 b(\(M-/\))13
+b Fb(119)p eop end
+%%Page: 164 170
+TeXDict begin 164 169 bop 150 -116 a Fu(App)s(endix)29
+b(D:)i(Indexes)2623 b(164)150 299 y Fe(backward-word)29
+b(\(M-b\))23 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)49 b Fb(115)150
+387 y Fe(beginning-of-history)30 b(\(M-<\))23 b Fc(:)13
+b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49
+b Fb(116)150 475 y Fe(beginning-of-line)29 b(\(C-a\))13
b Fc(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)39 b Fb(121)150 1386 y Fe(complete-hostname)29
-b(\(M-@\))13 b Fc(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(122)150 1474 y Fe
-(complete-into-braces)30 b(\(M-{\))23 b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(122)150
-1563 y Fe(complete-username)29 b(\(M-~\))13 b Fc(:)h(:)f(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39
-b Fb(122)150 1652 y Fe(complete-variable)29 b(\(M-$\))13
+g(:)h(:)f(:)39 b Fb(115)150 732 y Fs(C)150 851 y Fe
+(call-last-kbd-macro)30 b(\(C-x)c(e\))9 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)36 b Fb(121)150
+939 y Fe(capitalize-word)29 b(\(M-c\))18 b Fc(:)c(:)f(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44
+b Fb(118)150 1027 y Fe(character-search)29 b(\(C-]\))15
+b Fc(:)g(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)42 b Fb(122)150 1115 y Fe(character-search-backward)31
+b(\(M-C-]\))23 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)48
+b Fb(122)150 1204 y Fe(clear-screen)28 b(\(C-l\))8 b
+Fc(:)15 b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fb(115)150
+1292 y Fe(complete)27 b(\(TAB\))20 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)45 b Fb(120)150 1380 y Fe(complete-command)29
+b(\(M-!\))15 b Fc(:)g(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)42 b Fb(121)150 1468 y
+Fe(complete-filename)29 b(\(M-/\))13 b Fc(:)h(:)f(:)h(:)f(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)39
+b Fb(120)150 1556 y Fe(complete-hostname)29 b(\(M-@\))13
b Fc(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)39 b Fb(122)150 1740 y Fe(copy-backward-word)30
-b(\(\))18 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fb(120)150 1829
-y Fe(copy-forward-word)29 b(\(\))21 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47
-b Fb(120)150 1917 y Fe(copy-region-as-kill)30 b(\(\))15
-b Fc(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)42 b Fb(120)150 2176 y Fr(D)150 2295
-y Fe(dabbrev-expand)29 b(\(\))11 b Fc(:)i(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)38 b Fb(122)150 2384 y Fe(delete-char)28 b(\(C-d\))11
-b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(118)150
-2472 y Fe(delete-char-or-list)30 b(\(\))15 b Fc(:)f(:)f(:)g(:)g(:)g(:)g
+g(:)h(:)f(:)39 b Fb(121)150 1645 y Fe(complete-into-braces)30
+b(\(M-{\))23 b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)49 b Fb(121)150 1733 y Fe(complete-username)29
+b(\(M-~\))13 b Fc(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(121)150 1821 y Fe(complete-variable)
+29 b(\(M-$\))13 b Fc(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)39 b Fb(121)150 1909 y Fe
+(copy-backward-word)30 b(\(\))18 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44
+b Fb(119)150 1998 y Fe(copy-forward-word)29 b(\(\))21
+b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(119)150 2086 y Fe
+(copy-region-as-kill)30 b(\(\))15 b Fc(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)42
+b Fb(119)150 2343 y Fs(D)150 2461 y Fe(dabbrev-expand)29
+b(\(\))11 b Fc(:)i(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38
+b Fb(121)150 2549 y Fe(delete-char)28 b(\(C-d\))11 b
+Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(117)150
+2638 y Fe(delete-char-or-list)30 b(\(\))15 b Fc(:)f(:)f(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)42
-b Fb(121)150 2561 y Fe(delete-horizontal-space)31 b(\(\))22
+b Fb(120)150 2726 y Fe(delete-horizontal-space)31 b(\(\))22
b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-49 b Fb(120)150 2650 y Fe(digit-argument)29 b(\()p Fd(M-0)p
+49 b Fb(119)150 2814 y Fe(digit-argument)29 b(\()p Fd(M-0)p
Fe(,)e Fd(M-1)p Fe(,)f(...)g Fd(M--)p Fe(\))d Fc(:)13
-b(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(120)150 2738 y Fe
+b(:)h(:)f(:)g(:)g(:)g(:)g(:)49 b Fb(119)150 2902 y Fe
(display-shell-version)30 b(\(C-x)d(C-v\))16 b Fc(:)e(:)f(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)43 b Fb(124)150 2827 y Fe(do-uppercase-version)
-30 b(\(M-a,)d(M-b,)f(M-)p Fd(x)9 b Fe(,)27 b(...\))325
-2914 y Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+(:)f(:)g(:)g(:)g(:)g(:)43 b Fb(123)150 2991 y Fe(do-uppercase-version)
+30 b(\(M-a,)d(M-b,)f(M-)p Fd(x)p Fe(,)h(...)q(\))325
+3078 y Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)48 b Fb(123)150 3003
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)48 b Fb(122)150 3166
y Fe(downcase-word)29 b(\(M-l\))23 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)49
-b Fb(119)150 3091 y Fe(dump-functions)29 b(\(\))11 b
+b Fb(118)150 3254 y Fe(dump-functions)29 b(\(\))11 b
Fc(:)i(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(124)150
-3180 y Fe(dump-macros)28 b(\(\))19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(123)150
+3342 y Fe(dump-macros)28 b(\(\))19 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)45 b Fb(124)150 3269 y Fe(dump-variables)29
+g(:)g(:)h(:)f(:)g(:)45 b Fb(123)150 3431 y Fe(dump-variables)29
b(\(\))11 b Fc(:)i(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38
-b Fb(124)150 3357 y Fe(dynamic-complete-history)31 b(\(M-TAB\))7
-b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(122)150
-3616 y Fr(E)150 3735 y Fe(edit-and-execute-command)e(\(C-xC-e\))23
-b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)48 b Fb(125)150
-3824 y Fe(end-kbd-macro)29 b(\(C-x)d(\)\))7 b Fc(:)14
+b Fb(123)150 3519 y Fe(dynamic-complete-history)31 b(\(M-TAB\))7
+b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(121)150
+3776 y Fs(E)150 3894 y Fe(edit-and-execute-command)e(\(C-xC-e\))23
+b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)48 b Fb(124)150
+3982 y Fe(end-kbd-macro)29 b(\(C-x)d(\)\))7 b Fc(:)14
b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)34 b Fb(122)150 3912 y Fe(end-of-history)29
+(:)g(:)h(:)f(:)g(:)34 b Fb(121)150 4071 y Fe(end-of-history)29
b(\(M->\))21 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(117)150
-4001 y Fe(end-of-line)28 b(\(C-e\))11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(116)150
+4159 y Fe(end-of-line)28 b(\(C-e\))11 b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)38 b Fb(116)150 4090 y Fe(exchange-point-and-mark)31
+g(:)g(:)38 b Fb(115)150 4247 y Fe(exchange-point-and-mark)31
b(\(C-x)26 b(C-x\))11 b Fc(:)j(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)38
-b Fb(123)150 4349 y Fr(F)150 4467 y Fe(forward-backward-delete-char)32
+b Fb(122)150 4504 y Fs(F)150 4622 y Fe(forward-backward-delete-char)32
b(\(\))9 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)36
-b Fb(118)150 4556 y Fe(forward-char)28 b(\(C-f\))8 b
+b Fb(117)150 4710 y Fe(forward-char)28 b(\(C-f\))8 b
Fc(:)15 b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fb(116)150
-4645 y Fe(forward-search-history)c(\(C-s\))17 b Fc(:)d(:)f(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(117)150 4733
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fb(115)150
+4799 y Fe(forward-search-history)c(\(C-s\))17 b Fc(:)d(:)f(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(116)150 4887
y Fe(forward-word)28 b(\(M-f\))8 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)h(:)f(:)
g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)35 b Fb(116)150 4982 y Fr(G)150 5101 y Fe(glob-complete-word)30
+(:)35 b Fb(115)150 5134 y Fs(G)150 5252 y Fe(glob-complete-word)30
b(\(M-g\))10 b Fc(:)k(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)37 b Fb(124)150 5189 y Fe(glob-expand-word)29
+(:)f(:)g(:)g(:)g(:)g(:)37 b Fb(123)150 5340 y Fe(glob-expand-word)29
b(\(C-x)e(*\))17 b Fc(:)c(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(124)150 5278 y Fe
-(glob-list-expansions)30 b(\(C-x)d(g\))7 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33 b Fb(124)2025
-299 y Fr(H)2025 419 y Fe(history-and-alias-expand-line)f(\(\))7
-b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(125)2025
-508 y Fe(history-expand-line)c(\(M-^\))8 b Fc(:)13 b(:)h(:)f(:)g(:)g(:)
+(:)g(:)g(:)g(:)g(:)g(:)g(:)44 b Fb(123)2025 299 y Fe
+(glob-list-expansions)30 b(\(C-x)c(g\))7 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(123)2025
+566 y Fs(H)2025 688 y Fe(history-and-alias-expand-line)e(\(\))7
+b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(124)2025
+778 y Fe(history-expand-line)c(\(M-^\))8 b Fc(:)13 b(:)h(:)f(:)g(:)g(:)
g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)34 b
-Fb(124)2025 597 y Fe(history-search-backward)d(\(\))22
+Fb(123)2025 868 y Fe(history-search-backward)d(\(\))22
b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-49 b Fb(117)2025 686 y Fe(history-search-forward)30 b(\(\))8
+49 b Fb(116)2025 958 y Fe(history-search-forward)30 b(\(\))8
b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)34 b Fb(117)2025 775 y Fe(history-substr-search-backward)e(\(\))
-22 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)48 b Fb(118)2025
-864 y Fe(history-substr-search-forward)32 b(\(\))7 b
-Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(117)2025
-1125 y Fr(I)2025 1244 y Fe(insert-comment)29 b(\(M-#\))21
+(:)h(:)34 b Fb(116)2025 1048 y Fe(history-substr-search-backward)e
+(\(\))22 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)48 b Fb(117)2025
+1139 y Fe(history-substr-search-forward)32 b(\(\))7 b
+Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)34 b Fb(116)2025
+1406 y Fs(I)2025 1528 y Fe(insert-comment)29 b(\(M-#\))21
b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(124)2025 1333 y Fe
+(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(123)2025 1618 y Fe
(insert-completions)29 b(\(M-*\))10 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)37 b Fb(121)2025
-1422 y Fe(insert-last-argument)30 b(\(M-.)c(or)g(M-_\))18
-b Fc(:)c(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)45 b Fb(125)2025
-1683 y Fr(K)2025 1803 y Fe(kill-line)27 b(\(C-k\))16
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)37 b Fb(120)2025
+1708 y Fe(insert-last-argument)30 b(\(M-.)c(or)g(M-_\))18
+b Fc(:)c(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)45 b Fb(124)2025
+1975 y Fs(K)2025 2097 y Fe(kill-line)27 b(\(C-k\))16
b Fc(:)f(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43 b
-Fb(119)2025 1892 y Fe(kill-region)28 b(\(\))19 b Fc(:)13
+Fb(118)2025 2187 y Fe(kill-region)28 b(\(\))19 b Fc(:)13
b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)45 b Fb(120)2025
-1981 y Fe(kill-whole-line)29 b(\(\))8 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)45 b Fb(119)2025
+2277 y Fe(kill-whole-line)29 b(\(\))8 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)35 b Fb(119)2025 2070 y Fe(kill-word)27 b(\(M-d\))16
+f(:)g(:)35 b Fb(118)2025 2367 y Fe(kill-word)27 b(\(M-d\))16
b Fc(:)f(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)43 b
-Fb(119)2025 2321 y Fr(M)2025 2440 y Fe(magic-space)28
+Fb(118)2025 2624 y Fs(M)2025 2746 y Fe(magic-space)28
b(\(\))19 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)45
-b Fb(125)2025 2529 y Fe(menu-complete)28 b(\(\))13 b
+b Fb(124)2025 2836 y Fe(menu-complete)28 b(\(\))13 b
Fc(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Fb(121)2025
-2618 y Fe(menu-complete-backward)30 b(\(\))8 b Fc(:)13
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Fb(120)2025
+2926 y Fe(menu-complete-backward)30 b(\(\))8 b Fc(:)13
b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)34
-b Fb(121)2025 2880 y Fr(N)2025 2999 y Fe(next-history)28
+b Fb(120)2025 3193 y Fs(N)2025 3315 y Fe(next-history)28
b(\(C-n\))8 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35
-b Fb(117)2025 3088 y Fe(non-incremental-forward-search)q(-hist)q(ory)d
-(\(M-n\))2200 3175 y Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+b Fb(116)2025 3405 y Fe(non-incremental-forward-search)q(-hist)q(ory)d
+(\(M-n\))2200 3493 y Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49 b
-Fb(117)2025 3264 y Fe(non-incremental-reverse-search)q(-hist)q(ory)32
-b(\(M-p\))2200 3352 y Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+Fb(116)2025 3583 y Fe(non-incremental-reverse-search)q(-hist)q(ory)32
+b(\(M-p\))2200 3670 y Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49 b
-Fb(117)2025 3594 y Fr(O)2025 3714 y Fe(operate-and-get-next)30
+Fb(116)2025 3918 y Fs(O)2025 4040 y Fe(operate-and-get-next)30
b(\(C-o\))23 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)49 b Fb(125)2025 3803 y Fe(overwrite-mode)29
+g(:)g(:)g(:)49 b Fb(124)2025 4130 y Fe(overwrite-mode)29
b(\(\))11 b Fc(:)i(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38
-b Fb(119)2025 4053 y Fr(P)2025 4173 y Fe(possible-command-completions)
+b Fb(118)2025 4387 y Fs(P)2025 4509 y Fe(possible-command-completions)
32 b(\(C-x)26 b(!\))21 b Fc(:)13 b(:)g(:)h(:)f(:)47 b
-Fb(122)2025 4262 y Fe(possible-completions)30 b(\(M-?\))23
+Fb(121)2025 4599 y Fe(possible-completions)30 b(\(M-?\))23
b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-49 b Fb(121)2025 4351 y Fe(possible-filename-completions)32
-b(\(C-x)26 b(/\))18 b Fc(:)c(:)f(:)g(:)45 b Fb(121)2025
-4440 y Fe(possible-hostname-completions)32 b(\(C-x)26
-b(@\))18 b Fc(:)c(:)f(:)g(:)45 b Fb(122)2025 4529 y Fe
+49 b Fb(120)2025 4689 y Fe(possible-filename-completions)32
+b(\(C-x)26 b(/\))18 b Fc(:)c(:)f(:)g(:)45 b Fb(120)2025
+4779 y Fe(possible-hostname-completions)32 b(\(C-x)26
+b(@\))18 b Fc(:)c(:)f(:)g(:)45 b Fb(121)2025 4870 y Fe
(possible-username-completions)32 b(\(C-x)26 b(~\))18
-b Fc(:)c(:)f(:)g(:)45 b Fb(122)2025 4618 y Fe
+b Fc(:)c(:)f(:)g(:)45 b Fb(121)2025 4960 y Fe
(possible-variable-completions)32 b(\(C-x)26 b($\))18
-b Fc(:)c(:)f(:)g(:)45 b Fb(122)2025 4707 y Fe(prefix-meta)28
+b Fc(:)c(:)f(:)g(:)45 b Fb(121)2025 5050 y Fe(prefix-meta)28
b(\(ESC\))11 b Fc(:)j(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38
-b Fb(123)2025 4796 y Fe(previous-history)29 b(\(C-p\))15
+b Fb(122)2025 5140 y Fe(previous-history)29 b(\(C-p\))15
b Fc(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)42 b Fb(117)2025 4885 y Fe(print-last-kbd-macro)30
+h(:)f(:)g(:)g(:)42 b Fb(116)2025 5230 y Fe(print-last-kbd-macro)30
b(\(\))13 b Fc(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)40 b Fb(123)2025 5146 y Fr(Q)2025
-5266 y Fe(quoted-insert)28 b(\(C-q)f(or)f(C-v\))19 b
-Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)46 b Fb(118)p eop end
-%%Page: 166 172
-TeXDict begin 166 171 bop 150 -116 a Ft(App)s(endix)29
-b(D:)i(Indexes)2623 b(166)150 299 y Fr(R)150 426 y Fe
-(re-read-init-file)29 b(\(C-x)e(C-r\))9 b Fc(:)14 b(:)f(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)36 b Fb(123)150
-519 y Fe(redraw-current-line)30 b(\(\))15 b Fc(:)f(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)42
-b Fb(116)150 612 y Fe(reverse-search-history)31 b(\(C-r\))17
-b Fc(:)d(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)44
-b Fb(117)150 705 y Fe(revert-line)28 b(\(M-r\))11 b Fc(:)j(:)f(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)38 b Fb(123)150 975 y Fr(S)150 1103
-y Fe(self-insert)28 b(\(a,)e(b,)g(A,)g(1,)h(!,)f(...\))7
-b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33
-b Fb(118)150 1195 y Fe(set-mark)27 b(\(C-@\))20 b Fc(:)13
+(:)g(:)g(:)g(:)g(:)g(:)40 b Fb(122)p eop end
+%%Page: 165 171
+TeXDict begin 165 170 bop 150 -116 a Fu(App)s(endix)29
+b(D:)i(Indexes)2623 b(165)150 299 y Fs(Q)150 416 y Fe(quoted-insert)29
+b(\(C-q)d(or)g(C-v\))20 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)45 b Fb(117)150 670 y Fs(R)150
+787 y Fe(re-read-init-file)29 b(\(C-x)e(C-r\))9 b Fc(:)14
+b(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)36
+b Fb(122)150 875 y Fe(redraw-current-line)30 b(\(\))15
+b Fc(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)42 b Fb(115)150 963 y Fe(reverse-search-history)31
+b(\(C-r\))17 b Fc(:)d(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)44 b Fb(116)150 1051 y Fe(revert-line)28 b(\(M-r\))11
+b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(122)150
+1294 y Fs(S)150 1412 y Fe(self-insert)28 b(\(a,)e(b,)g(A,)g(1,)h(!,)f
+(...\))7 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)33
+b Fb(117)150 1499 y Fe(set-mark)27 b(\(C-@\))20 b Fc(:)13
b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(123)150
-1288 y Fe(shell-backward-kill-word)31 b(\(\))20 b Fc(:)13
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(122)150
+1587 y Fe(shell-backward-kill-word)31 b(\(\))20 b Fc(:)13
b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46
-b Fb(120)150 1381 y Fe(shell-backward-word)30 b(\(\))15
+b Fb(119)150 1675 y Fe(shell-backward-word)30 b(\(\))15
b Fc(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)42 b Fb(116)150 1474 y Fe(shell-expand-line)29
+g(:)g(:)g(:)g(:)42 b Fb(115)150 1762 y Fe(shell-expand-line)29
b(\(M-C-e\))8 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)34 b Fb(124)150 1567 y Fe(shell-forward-word)c
+(:)g(:)g(:)h(:)f(:)g(:)34 b Fb(123)150 1850 y Fe(shell-forward-word)c
(\(\))18 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fb(116)150 1659
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fb(115)150 1938
y Fe(shell-kill-word)29 b(\(\))8 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h(:)f(:)
g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)35 b Fb(120)150 1752 y Fe(skip-csi-sequence)29 b(\(\))21
+(:)35 b Fb(119)150 2026 y Fe(skip-csi-sequence)29 b(\(\))21
b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(123)150 1845 y Fe(start-kbd-macro)29
+(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(122)150 2113 y Fe(start-kbd-macro)29
b(\(C-x)e(\(\))19 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(122)2025 299
-y Fr(T)2025 415 y Fe(tilde-expand)28 b(\(M-&\))8 b Fc(:)15
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)46 b Fb(121)2025 299
+y Fs(T)2025 424 y Fe(tilde-expand)28 b(\(M-&\))8 b Fc(:)15
b(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(123)2025 503 y
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(122)2025 515 y
Fe(transpose-chars)29 b(\(C-t\))18 b Fc(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45
-b Fb(119)2025 590 y Fe(transpose-words)29 b(\(M-t\))18
+b Fb(118)2025 607 y Fe(transpose-words)29 b(\(M-t\))18
b Fc(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)45 b Fb(119)2025 843 y Fr(U)2025
-959 y Fe(undo)26 b(\(C-_)h(or)f(C-x)g(C-u\))c Fc(:)13
+g(:)g(:)g(:)g(:)g(:)45 b Fb(118)2025 881 y Fs(U)2025
+1006 y Fe(undo)26 b(\(C-_)h(or)f(C-x)g(C-u\))c Fc(:)13
b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)48 b Fb(123)2025 1047 y Fe(universal-argument)29
+(:)h(:)f(:)g(:)g(:)48 b Fb(122)2025 1097 y Fe(universal-argument)29
b(\(\))18 b Fc(:)c(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fb(120)2025 1134
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)45 b Fb(119)2025 1189
y Fe(unix-filename-rubout)30 b(\(\))13 b Fc(:)g(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)40
-b Fb(120)2025 1222 y Fe(unix-line-discard)29 b(\(C-u\))13
+b Fb(119)2025 1280 y Fe(unix-line-discard)29 b(\(C-u\))13
b Fc(:)h(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)40 b Fb(119)2025 1309 y Fe(unix-word-rubout)29
+g(:)g(:)g(:)40 b Fb(118)2025 1372 y Fe(unix-word-rubout)29
b(\(C-w\))15 b Fc(:)f(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)42 b Fb(120)2025 1396
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)42 b Fb(119)2025 1463
y Fe(upcase-word)28 b(\(M-u\))11 b Fc(:)j(:)f(:)g(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)38 b Fb(119)2025 1649 y Fr(Y)2025 1766 y Fe(yank)26
+g(:)38 b Fb(118)2025 1737 y Fs(Y)2025 1862 y Fe(yank)26
b(\(C-y\))12 b Fc(:)i(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)39 b Fb(120)2025 1853 y Fe(yank-last-arg)28
+g(:)g(:)g(:)g(:)39 b Fb(119)2025 1954 y Fe(yank-last-arg)28
b(\(M-.)f(or)f(M-_\))19 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)46 b Fb(118)2025 1940 y Fe(yank-nth-arg)28
+(:)g(:)g(:)g(:)g(:)g(:)g(:)46 b Fb(117)2025 2045 y Fe(yank-nth-arg)28
b(\(M-C-y\))22 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(118)2025
-2028 y Fe(yank-pop)27 b(\(M-y\))20 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)47 b Fb(117)2025
+2137 y Fe(yank-pop)27 b(\(M-y\))20 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)45 b Fb(120)150 2260 y Fr(D.5)68
-b(Concept)45 b(Index)150 2520 y(A)150 2640 y Fb(alias)27
+g(:)g(:)g(:)g(:)h(:)45 b Fb(119)150 2369 y Fs(D.5)68
+b(Concept)45 b(Index)150 2629 y(A)150 2748 y Fb(alias)27
b(expansion)18 b Fc(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)44 b Fb(88)150 2729 y(arithmetic)26 b(ev)l(aluation)16
+h(:)44 b Fb(88)150 2836 y(arithmetic)26 b(ev)l(aluation)16
b Fc(:)e(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)43 b Fb(87)150 2818
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)43 b Fb(87)150 2925
y(arithmetic)26 b(expansion)d Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49
-b Fb(28)150 2907 y(arithmetic,)27 b(shell)17 b Fc(:)d(:)f(:)g(:)g(:)g
+b Fb(28)150 3013 y(arithmetic,)27 b(shell)17 b Fc(:)d(:)f(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43 b Fb(87)150 2996 y(arra)n(ys)15
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)43 b Fb(87)150 3102 y(arra)n(ys)15
b Fc(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)41 b Fb(89)150 3255 y Fr(B)150
-3375 y Fb(bac)n(kground)9 b Fc(:)j(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)g(:)g(:)g(:)g(:)h(:)f(:)41 b Fb(89)150 3358 y Fs(B)150
+3477 y Fb(bac)n(kground)9 b Fc(:)j(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(98)150 3464 y(Bash)26
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)35 b Fb(97)150 3565 y(Bash)26
b(con\014guration)d Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)49
-b Fb(139)150 3553 y(Bash)26 b(installation)c Fc(:)13
+b Fb(138)150 3654 y(Bash)26 b(installation)c Fc(:)13
b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46 b Fb(139)150
-3642 y(Bourne)26 b(shell)13 b Fc(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)46 b Fb(138)150
+3742 y(Bourne)26 b(shell)13 b Fc(:)h(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Fb(5)150 3731
+(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)40 b Fb(5)150 3831
y(brace)26 b(expansion)20 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)47 b Fb(21)150 3820 y(builtin)9 b Fc(:)k(:)g(:)g(:)g(:)
+g(:)g(:)g(:)g(:)47 b Fb(21)150 3919 y(builtin)9 b Fc(:)k(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)36 b Fb(3)150 4063 y Fr(C)150 4182 y Fb(command)26
+g(:)g(:)36 b Fb(3)150 4159 y Fs(C)150 4278 y Fb(command)26
b(editing)13 b Fc(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)40
-b Fb(103)150 4272 y(command)26 b(execution)d Fc(:)13
+b Fb(102)150 4366 y(command)26 b(execution)d Fc(:)13
b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)49 b Fb(36)150 4361
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)49 b Fb(36)150 4455
y(command)26 b(expansion)16 b Fc(:)d(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)42
-b Fb(35)150 4450 y(command)26 b(history)12 b Fc(:)h(:)g(:)g(:)g(:)g(:)h
+b Fb(35)150 4543 y(command)26 b(history)12 b Fc(:)h(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)39 b Fb(134)150 4539 y(command)26
+g(:)g(:)g(:)g(:)g(:)39 b Fb(133)150 4632 y(command)26
b(searc)n(h)10 b Fc(:)j(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-36 b Fb(36)150 4628 y(command)26 b(substitution)15 b
+36 b Fb(36)150 4720 y(command)26 b(substitution)15 b
Fc(:)e(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)41 b Fb(28)150 4717 y(command)26
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)41 b Fb(28)150 4809 y(command)26
b(timing)7 b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)34 b Fb(8)150 4806 y(commands,)26 b(comp)r(ound)18
+g(:)34 b Fb(8)150 4897 y(commands,)26 b(comp)r(ound)18
b Fc(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(9)150 4895
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(9)150 4986
y(commands,)26 b(conditional)d Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48
-b Fb(10)150 4984 y(commands,)26 b(grouping)9 b Fc(:)14
+b Fb(10)150 5074 y(commands,)26 b(grouping)9 b Fc(:)14
b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fb(14)150 5073
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)35 b Fb(14)150 5163
y(commands,)26 b(lists)6 b Fc(:)15 b(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)33 b Fb(9)150 5162 y(commands,)26
+(:)g(:)h(:)f(:)g(:)g(:)33 b Fb(9)150 5251 y(commands,)26
b(lo)r(oping)16 b Fc(:)f(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)42
-b Fb(10)150 5251 y(commands,)26 b(pip)r(elines)12 b Fc(:)i(:)f(:)g(:)g
+b Fb(10)150 5340 y(commands,)26 b(pip)r(elines)12 b Fc(:)i(:)f(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)39 b Fb(8)150 5340 y(commands,)26
-b(shell)15 b Fc(:)f(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-42 b Fb(8)2025 2520 y(commands,)26 b(simple)17 b Fc(:)d(:)f(:)g(:)h(:)f
+g(:)g(:)g(:)g(:)g(:)g(:)39 b Fb(8)2025 2629 y(commands,)26
+b(shell)15 b Fc(:)f(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+42 b Fb(8)2025 2720 y(commands,)26 b(simple)17 b Fc(:)d(:)f(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Fb(8)2025 2609 y(commen)n(ts,)26
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)44 b Fb(8)2025 2810 y(commen)n(ts,)26
b(shell)7 b Fc(:)14 b(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)35 b Fb(7)2025 2698 y(completion)26 b(builtins)15
+g(:)g(:)35 b Fb(7)2025 2901 y(completion)26 b(builtins)15
b Fc(:)f(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)42 b Fb(127)2025
-2787 y(con\014guration)15 b Fc(:)f(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
+g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)42 b Fb(126)2025
+2991 y(con\014guration)15 b Fc(:)f(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)42 b Fb(139)2025 2875 y(con)n(trol)26
+g(:)g(:)h(:)f(:)g(:)42 b Fb(138)2025 3082 y(con)n(trol)26
b(op)r(erator)20 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)46 b Fb(3)2025 2964 y(copro)r(cess)12 b Fc(:)i(:)f(:)g(:)h
+(:)g(:)h(:)46 b Fb(3)2025 3172 y(copro)r(cess)12 b Fc(:)i(:)f(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)38
-b Fb(15)2025 3222 y Fr(D)2025 3342 y Fb(directory)26
+b Fb(15)2025 3439 y Fs(D)2025 3562 y Fb(directory)26
b(stac)n(k)c Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)49 b Fb(91)2025 3600 y Fr(E)2025 3719 y Fb(editing)26
+g(:)49 b Fb(90)2025 3829 y Fs(E)2025 3952 y Fb(editing)26
b(command)g(lines)11 b Fc(:)i(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)38
-b Fb(103)2025 3808 y(en)n(vironmen)n(t)12 b Fc(:)g(:)h(:)g(:)h(:)f(:)g
+b Fb(102)2025 4043 y(en)n(vironmen)n(t)12 b Fc(:)g(:)h(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)39 b Fb(37)2025
-3897 y(ev)l(aluation,)26 b(arithmetic)e Fc(:)13 b(:)g(:)g(:)g(:)g(:)g
+4133 y(ev)l(aluation,)26 b(arithmetic)e Fc(:)13 b(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)49 b Fb(87)2025 3985 y(ev)n(en)n(t)24 b(designators)14
+g(:)49 b Fb(87)2025 4224 y(ev)n(en)n(t)24 b(designators)14
b Fc(:)h(:)e(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)41 b
-Fb(137)2025 4074 y(execution)25 b(en)n(vironmen)n(t)11
+Fb(135)2025 4314 y(execution)25 b(en)n(vironmen)n(t)11
b Fc(:)i(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)37 b Fb(36)2025 4163
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)37 b Fb(36)2025 4405
y(exit)25 b(status)18 b Fc(:)c(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)45 b Fb(3,)26 b(38)2025 4252 y(expansion)20
+h(:)f(:)g(:)g(:)g(:)45 b Fb(3,)26 b(38)2025 4495 y(expansion)20
b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)47 b Fb(21)2025 4341 y(expansion,)26 b(arithmetic)12
+g(:)g(:)g(:)47 b Fb(21)2025 4586 y(expansion,)26 b(arithmetic)12
b Fc(:)i(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b Fb(28)2025 4430
+h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)38 b Fb(28)2025 4676
y(expansion,)26 b(brace)10 b Fc(:)j(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)g(:)36 b Fb(21)2025 4518 y(expansion,)26 b(\014lename)12
+h(:)f(:)g(:)36 b Fb(21)2025 4767 y(expansion,)26 b(\014lename)12
b Fc(:)h(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)38 b Fb(29)2025
-4607 y(expansion,)26 b(parameter)14 b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)
+4857 y(expansion,)26 b(parameter)14 b Fc(:)f(:)h(:)f(:)g(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)40 b Fb(23)2025 4696 y(expansion,)26 b(pathname)18
+(:)40 b Fb(23)2025 4948 y(expansion,)26 b(pathname)18
b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)45 b Fb(29)2025
-4785 y(expansion,)26 b(tilde)8 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+5038 y(expansion,)26 b(tilde)8 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)34 b Fb(22)2025 4874 y(expressions,)27
+g(:)g(:)g(:)h(:)f(:)g(:)34 b Fb(22)2025 5129 y(expressions,)27
b(arithmetic)7 b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)34
-b Fb(87)2025 4963 y(expressions,)27 b(conditional)11
+b Fb(87)2025 5220 y(expressions,)27 b(conditional)11
b Fc(:)j(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)h(:)f(:)g(:)g(:)g(:)38 b Fb(85)2025 5221 y Fr(F)2025
-5340 y Fb(\014eld)15 b Fc(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)42
-b Fb(3)p eop end
-%%Page: 167 173
-TeXDict begin 167 172 bop 150 -116 a Ft(App)s(endix)29
-b(D:)i(Indexes)2623 b(167)150 299 y Fb(\014lename)15
-b Fc(:)f(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)42 b Fb(3)150 386 y(\014lename)26
-b(expansion)d Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)49
-b Fb(29)150 473 y(foreground)24 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49 b Fb(98)150
-561 y(functions,)26 b(shell)21 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)g(:)47 b Fb(17)150 811 y Fr(H)150
-927 y Fb(history)26 b(builtins)14 b Fc(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)38 b Fb(85)p eop end
+%%Page: 166 172
+TeXDict begin 166 171 bop 150 -116 a Fu(App)s(endix)29
+b(D:)i(Indexes)2623 b(166)150 299 y Fs(F)150 415 y Fb(\014eld)15
+b Fc(:)e(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)42 b Fb(3)150
+502 y(\014lename)15 b Fc(:)f(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)42 b Fb(3)150
+589 y(\014lename)26 b(expansion)d Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)40 b Fb(134)150 1014 y(history)26
-b(ev)n(en)n(ts)18 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)46 b Fb(137)150 1101 y(history)26 b(expansion)8
-b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35
-b Fb(136)150 1189 y(history)26 b(list)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(134)150
-1276 y(History)-6 b(,)26 b(ho)n(w)g(to)f(use)13 b Fc(:)g(:)g(:)h(:)f(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)39 b Fb(133)150 1526 y Fr(I)150 1642
-y Fb(iden)n(ti\014er)22 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)50 b Fb(3)150
-1729 y(initialization)28 b(\014le,)e(readline)11 b Fc(:)j(:)f(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)38
-b Fb(105)150 1816 y(installation)13 b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)40 b Fb(139)150
-1904 y(in)n(teraction,)27 b(readline)18 b Fc(:)c(:)f(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
-(:)g(:)45 b Fb(102)150 1991 y(in)n(teractiv)n(e)26 b(shell)14
-b Fc(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Fb(82,)26
-b(83)150 2078 y(in)n(ternationalization)14 b Fc(:)h(:)f(:)f(:)g(:)g(:)g
+g(:)g(:)49 b Fb(29)150 676 y(foreground)24 b Fc(:)13
+b(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+49 b Fb(97)150 764 y(functions,)26 b(shell)21 b Fc(:)14
+b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)47
+b Fb(17)150 1013 y Fs(H)150 1129 y Fb(history)26 b(builtins)14
+b Fc(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)40
+b Fb(133)150 1216 y(history)26 b(ev)n(en)n(ts)18 b Fc(:)13
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)46
+b Fb(135)150 1304 y(history)26 b(expansion)8 b Fc(:)13
+b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)35 b Fb(135)150
+1391 y(history)26 b(list)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47 b Fb(133)150 1478
+y(History)-6 b(,)26 b(ho)n(w)g(to)f(use)13 b Fc(:)g(:)g(:)h(:)f(:)g(:)g
+(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)39 b Fb(132)150 1728 y Fs(I)150 1843 y Fb(iden)n(ti\014er)
+22 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
+g(:)g(:)g(:)g(:)g(:)g(:)50 b Fb(3)150 1931 y(initialization)28
+b(\014le,)e(readline)11 b Fc(:)j(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
+g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)38 b Fb(104)150
+2018 y(installation)13 b Fc(:)i(:)e(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
+f(:)g(:)g(:)g(:)g(:)g(:)40 b Fb(138)150 2105 y(in)n(teraction,)27
+b(readline)18 b Fc(:)c(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
+(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)45
+b Fb(101)150 2192 y(in)n(teractiv)n(e)26 b(shell)14 b
+Fc(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
+(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)41 b Fb(81,)26
+b(83)150 2279 y(in)n(ternationalization)14 b Fc(:)h(:)f(:)f(:)g(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)41 b Fb(7)150 2311 y Fr(J)150 2428
+g(:)h(:)f(:)g(:)g(:)41 b Fb(7)150 2512 y Fs(J)150 2628
y Fb(job)16 b Fc(:)e(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)43
-b Fb(3)150 2515 y(job)26 b(con)n(trol)13 b Fc(:)h(:)f(:)g(:)g(:)h(:)f
+b Fb(3)150 2716 y(job)26 b(con)n(trol)13 b Fc(:)h(:)f(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)40 b Fb(3,)26
-b(98)150 2765 y Fr(K)150 2881 y Fb(kill)g(ring)19 b Fc(:)13
+b(97)150 2965 y Fs(K)150 3081 y Fb(kill)g(ring)19 b Fc(:)13
b(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)45 b Fb(104)150 2968 y(killing)27 b(text)17 b
+f(:)g(:)45 b Fb(103)150 3168 y(killing)27 b(text)17 b
Fc(:)c(:)g(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-44 b Fb(104)150 3218 y Fr(L)150 3334 y Fb(lo)r(calization)14
+44 b Fb(103)150 3418 y Fs(L)150 3534 y Fb(lo)r(calization)14
b Fc(:)i(:)d(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
-(:)f(:)g(:)41 b Fb(7)150 3421 y(login)27 b(shell)17 b
+(:)f(:)g(:)41 b Fb(7)150 3621 y(login)27 b(shell)17 b
Fc(:)d(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)44 b Fb(82)150 3671 y Fr(M)150 3788 y Fb(matc)n(hing,)26
+g(:)g(:)44 b Fb(81)150 3871 y Fs(M)150 3987 y Fb(matc)n(hing,)26
b(pattern)20 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47
-b Fb(30)150 3875 y(metac)n(haracter)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g(:)g
+b Fb(30)150 4074 y(metac)n(haracter)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(3)150 4108
-y Fr(N)150 4224 y Fb(name)13 b Fc(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)45 b Fb(3)150 4307
+y Fs(N)150 4423 y Fb(name)13 b Fc(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)40
-b Fb(3)150 4311 y(nativ)n(e)25 b(languages)13 b Fc(:)i(:)e(:)g(:)h(:)f
+b Fb(3)150 4510 y(nativ)n(e)25 b(languages)13 b Fc(:)i(:)e(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)40 b Fb(7)150 4399
+g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)40 b Fb(7)150 4597
y(notation,)27 b(readline)7 b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)33 b Fb(103)150 4649 y Fr(O)150 4765 y Fb(op)r(erator,)27
+g(:)h(:)33 b Fb(102)150 4847 y Fs(O)150 4963 y Fb(op)r(erator,)27
b(shell)16 b Fc(:)e(:)f(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)43 b Fb(3)150 5015 y Fr(P)150 5131 y Fb(parameter)26
+g(:)g(:)43 b Fb(3)150 5212 y Fs(P)150 5328 y Fb(parameter)26
b(expansion)7 b Fc(:)14 b(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)34
-b Fb(23)150 5218 y(parameters)17 b Fc(:)d(:)f(:)g(:)h(:)f(:)g(:)g(:)g
+b Fb(23)150 5415 y(parameters)17 b Fc(:)d(:)f(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)43 b Fb(18)150
-5305 y(parameters,)27 b(p)r(ositional)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
-g(:)44 b Fb(19)2025 299 y(parameters,)27 b(sp)r(ecial)18
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)43 b Fb(18)2025
+299 y(parameters,)27 b(p)r(ositional)18 b Fc(:)d(:)e(:)g(:)g(:)g(:)g(:)
+g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h
+(:)44 b Fb(19)2025 387 y(parameters,)27 b(sp)r(ecial)18
b Fc(:)c(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)44 b Fb(20)2025
-386 y(pathname)25 b(expansion)12 b Fc(:)h(:)g(:)h(:)f(:)g(:)g(:)g(:)g
+474 y(pathname)25 b(expansion)12 b Fc(:)h(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)
-h(:)38 b Fb(29)2025 474 y(pattern)25 b(matc)n(hing)14
+h(:)38 b Fb(29)2025 562 y(pattern)25 b(matc)n(hing)14
b Fc(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)
f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)41
-b Fb(30)2025 561 y(pip)r(eline)23 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
+b Fb(30)2025 650 y(pip)r(eline)23 b Fc(:)13 b(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)50
-b Fb(8)2025 649 y(POSIX)17 b Fc(:)12 b(:)h(:)g(:)g(:)g(:)g(:)h(:)f(:)g
+b Fb(8)2025 738 y(POSIX)17 b Fc(:)12 b(:)h(:)g(:)g(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)44
-b Fb(3)2025 736 y(POSIX)24 b(Mo)r(de)11 b Fc(:)j(:)f(:)g(:)g(:)g(:)g(:)
+b Fb(3)2025 825 y(POSIX)24 b(Mo)r(de)11 b Fc(:)j(:)f(:)g(:)g(:)g(:)g(:)
h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)37 b Fb(94)2025
-824 y(pro)r(cess)26 b(group)9 b Fc(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g
+913 y(pro)r(cess)26 b(group)9 b Fc(:)14 b(:)f(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b Fb(3)2025 911
+g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)37 b Fb(3)2025 1001
y(pro)r(cess)26 b(group)g(ID)21 b Fc(:)13 b(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)49 b Fb(3)2025 999 y(pro)r(cess)26
+f(:)g(:)g(:)g(:)g(:)49 b Fb(3)2025 1089 y(pro)r(cess)26
b(substitution)c Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g
(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)48
-b Fb(29)2025 1086 y(programmable)27 b(completion)20 b
+b Fb(29)2025 1177 y(programmable)27 b(completion)20 b
Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)46 b Fb(125)2025 1174 y(prompting)11 b
+(:)g(:)h(:)f(:)46 b Fb(124)2025 1264 y(prompting)11 b
Fc(:)i(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)g(:)38 b Fb(92)2025 1425 y Fr(Q)2025 1541 y Fb(quoting)10
+g(:)g(:)38 b Fb(92)2025 1517 y Fs(Q)2025 1634 y Fb(quoting)10
b Fc(:)j(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)g(:)g(:)h(:)f(:)g(:)37 b Fb(6)2025 1629 y(quoting,)26
+(:)g(:)g(:)g(:)h(:)f(:)g(:)37 b Fb(6)2025 1722 y(quoting,)26
b(ANSI)13 b Fc(:)e(:)j(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
-h(:)f(:)40 b Fb(6)2025 1880 y Fr(R)2025 1997 y Fb(Readline,)26
+h(:)f(:)40 b Fb(6)2025 1974 y Fs(R)2025 2091 y Fb(Readline,)26
b(ho)n(w)g(to)g(use)c Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)49
-b Fb(101)2025 2084 y(redirection)7 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
+b Fb(100)2025 2179 y(redirection)7 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)33 b
-Fb(31)2025 2172 y(reserv)n(ed)25 b(w)n(ord)7 b Fc(:)14
+Fb(31)2025 2267 y(reserv)n(ed)25 b(w)n(ord)7 b Fc(:)14
b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)34
-b Fb(3)2025 2259 y(restricted)26 b(shell)8 b Fc(:)14
+b Fb(3)2025 2355 y(restricted)26 b(shell)8 b Fc(:)14
b(:)f(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)35
-b Fb(93)2025 2346 y(return)25 b(status)c Fc(:)13 b(:)h(:)f(:)g(:)g(:)g
+b Fb(93)2025 2443 y(return)25 b(status)c Fc(:)13 b(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)48 b Fb(4)2025
-2581 y Fr(S)2025 2697 y Fb(shell)26 b(arithmetic)11 b
+2678 y Fs(S)2025 2796 y Fb(shell)26 b(arithmetic)11 b
Fc(:)j(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)37
-b Fb(87)2025 2785 y(shell)26 b(function)12 b Fc(:)h(:)g(:)h(:)f(:)g(:)g
+b Fb(87)2025 2883 y(shell)26 b(function)12 b Fc(:)h(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)38 b Fb(17)2025
-2872 y(shell)26 b(script)c Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
+2971 y(shell)26 b(script)c Fc(:)13 b(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g
-(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48 b Fb(39)2025 2960
+(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48 b Fb(39)2025 3059
y(shell)26 b(v)l(ariable)18 b Fc(:)c(:)f(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)
g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g
-(:)h(:)f(:)g(:)g(:)g(:)g(:)45 b Fb(18)2025 3047 y(shell,)26
+(:)h(:)f(:)g(:)g(:)g(:)g(:)45 b Fb(18)2025 3147 y(shell,)26
b(in)n(teractiv)n(e)14 b Fc(:)g(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
-g(:)h(:)40 b Fb(83)2025 3135 y(signal)7 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h
+g(:)h(:)40 b Fb(83)2025 3234 y(signal)7 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)34 b Fb(4)2025 3222 y(signal)27 b(handling)17
+(:)g(:)34 b Fb(4)2025 3322 y(signal)27 b(handling)17
b Fc(:)c(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)44
-b Fb(38)2025 3310 y(sp)r(ecial)27 b(builtin)10 b Fc(:)j(:)g(:)g(:)g(:)g
+b Fb(38)2025 3410 y(sp)r(ecial)27 b(builtin)10 b Fc(:)j(:)g(:)g(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)37 b Fb(4,)26 b(68)2025
-3397 y(startup)f(\014les)d Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
+3498 y(startup)f(\014les)d Fc(:)13 b(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48 b Fb(82)2025 3485 y(susp)r(ending)25
+(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)48 b Fb(82)2025 3585 y(susp)r(ending)25
b(jobs)6 b Fc(:)14 b(:)g(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
-(:)33 b Fb(98)2025 3736 y Fr(T)2025 3853 y Fb(tilde)26
+(:)33 b Fb(97)2025 3838 y Fs(T)2025 3955 y Fb(tilde)26
b(expansion)18 b Fc(:)13 b(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)
-g(:)g(:)45 b Fb(22)2025 3940 y(tok)n(en)11 b Fc(:)h(:)i(:)f(:)g(:)g(:)g
+g(:)g(:)45 b Fb(22)2025 4043 y(tok)n(en)11 b Fc(:)h(:)i(:)f(:)g(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)
g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f
-(:)g(:)38 b Fb(4)2025 4027 y(translation,)27 b(nativ)n(e)e(languages)13
+(:)g(:)38 b Fb(4)2025 4131 y(translation,)27 b(nativ)n(e)e(languages)13
b Fc(:)i(:)e(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
-g(:)g(:)g(:)40 b Fb(7)2025 4279 y Fr(V)2025 4395 y Fb(v)l(ariable,)26
+g(:)g(:)g(:)40 b Fb(7)2025 4383 y Fs(V)2025 4500 y Fb(v)l(ariable,)26
b(shell)8 b Fc(:)14 b(:)f(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g
(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)34 b Fb(18)2025 4483 y(v)l(ariables,)27 b(readline)18
+f(:)g(:)g(:)34 b Fb(18)2025 4588 y(v)l(ariables,)27 b(readline)18
b Fc(:)c(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)
-f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)45 b Fb(106)2025
-4734 y Fr(W)2025 4850 y Fb(w)n(ord)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h
+f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)45 b Fb(105)2025
+4841 y Fs(W)2025 4958 y Fb(w)n(ord)21 b Fc(:)13 b(:)g(:)g(:)g(:)g(:)h
(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)
g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g
-(:)g(:)48 b Fb(4)2025 4938 y(w)n(ord)26 b(splitting)21
+(:)g(:)48 b Fb(4)2025 5046 y(w)n(ord)26 b(splitting)21
b Fc(:)13 b(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)47
-b Fb(29)2025 5189 y Fr(Y)2025 5305 y Fb(y)n(anking)25
+b Fb(29)2025 5298 y Fs(Y)2025 5415 y Fb(y)n(anking)25
b(text)7 b Fc(:)12 b(:)h(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)
g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g(:)g(:)g(:)g(:)g(:)h(:)f(:)g(:)g
-(:)g(:)g(:)34 b Fb(104)p eop end
+(:)g(:)g(:)34 b Fb(103)p eop end
%%Trailer
userdict /end-hook known{end-hook}if
--- /dev/null
+% texinfo.tex -- TeX macros to handle Texinfo files.
+%
+% Load plain if necessary, i.e., if running under initex.
+\expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
+%
+\def\texinfoversion{2009-01-18.17}
+%
+% Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
+% 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
+% 2007, 2008, 2009 Free Software Foundation, Inc.
+%
+% This texinfo.tex file is free software: you can redistribute it and/or
+% modify it under the terms of the GNU General Public License as
+% published by the Free Software Foundation, either version 3 of the
+% License, or (at your option) any later version.
+%
+% This texinfo.tex file is distributed in the hope that it will be
+% useful, but WITHOUT ANY WARRANTY; without even the implied warranty
+% of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+% General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with this program. If not, see <http://www.gnu.org/licenses/>.
+%
+% As a special exception, when this file is read by TeX when processing
+% a Texinfo source document, you may use the result without
+% restriction. (This has been our intent since Texinfo was invented.)
+%
+% Please try the latest version of texinfo.tex before submitting bug
+% reports; you can get the latest version from:
+% http://www.gnu.org/software/texinfo/ (the Texinfo home page), or
+% ftp://tug.org/tex/texinfo.tex
+% (and all CTAN mirrors, see http://www.ctan.org).
+% The texinfo.tex in any given distribution could well be out
+% of date, so if that's what you're using, please check.
+%
+% Send bug reports to bug-texinfo@gnu.org. Please include including a
+% complete document in each bug report with which we can reproduce the
+% problem. Patches are, of course, greatly appreciated.
+%
+% To process a Texinfo manual with TeX, it's most reliable to use the
+% texi2dvi shell script that comes with the distribution. For a simple
+% manual foo.texi, however, you can get away with this:
+% tex foo.texi
+% texindex foo.??
+% tex foo.texi
+% tex foo.texi
+% dvips foo.dvi -o # or whatever; this makes foo.ps.
+% The extra TeX runs get the cross-reference information correct.
+% Sometimes one run after texindex suffices, and sometimes you need more
+% than two; texi2dvi does it as many times as necessary.
+%
+% It is possible to adapt texinfo.tex for other languages, to some
+% extent. You can get the existing language-specific files from the
+% full Texinfo distribution.
+%
+% The GNU Texinfo home page is http://www.gnu.org/software/texinfo.
+
+
+\message{Loading texinfo [version \texinfoversion]:}
+
+% If in a .fmt file, print the version number
+% and turn on active characters that we couldn't do earlier because
+% they might have appeared in the input file name.
+\everyjob{\message{[Texinfo version \texinfoversion]}%
+ \catcode`+=\active \catcode`\_=\active}
+
+
+\chardef\other=12
+
+% We never want plain's \outer definition of \+ in Texinfo.
+% For @tex, we can use \tabalign.
+\let\+ = \relax
+
+% Save some plain tex macros whose names we will redefine.
+\let\ptexb=\b
+\let\ptexbullet=\bullet
+\let\ptexc=\c
+\let\ptexcomma=\,
+\let\ptexdot=\.
+\let\ptexdots=\dots
+\let\ptexend=\end
+\let\ptexequiv=\equiv
+\let\ptexexclam=\!
+\let\ptexfootnote=\footnote
+\let\ptexgtr=>
+\let\ptexhat=^
+\let\ptexi=\i
+\let\ptexindent=\indent
+\let\ptexinsert=\insert
+\let\ptexlbrace=\{
+\let\ptexless=<
+\let\ptexnewwrite\newwrite
+\let\ptexnoindent=\noindent
+\let\ptexplus=+
+\let\ptexrbrace=\}
+\let\ptexslash=\/
+\let\ptexstar=\*
+\let\ptext=\t
+\let\ptextop=\top
+{\catcode`\'=\active
+\global\let\ptexquoteright'}% Math-mode def from plain.tex.
+\let\ptexraggedright=\raggedright
+
+% If this character appears in an error message or help string, it
+% starts a new line in the output.
+\newlinechar = `^^J
+
+% Use TeX 3.0's \inputlineno to get the line number, for better error
+% messages, but if we're using an old version of TeX, don't do anything.
+%
+\ifx\inputlineno\thisisundefined
+ \let\linenumber = \empty % Pre-3.0.
+\else
+ \def\linenumber{l.\the\inputlineno:\space}
+\fi
+
+% Set up fixed words for English if not already set.
+\ifx\putwordAppendix\undefined \gdef\putwordAppendix{Appendix}\fi
+\ifx\putwordChapter\undefined \gdef\putwordChapter{Chapter}\fi
+\ifx\putwordfile\undefined \gdef\putwordfile{file}\fi
+\ifx\putwordin\undefined \gdef\putwordin{in}\fi
+\ifx\putwordIndexIsEmpty\undefined \gdef\putwordIndexIsEmpty{(Index is empty)}\fi
+\ifx\putwordIndexNonexistent\undefined \gdef\putwordIndexNonexistent{(Index is nonexistent)}\fi
+\ifx\putwordInfo\undefined \gdef\putwordInfo{Info}\fi
+\ifx\putwordInstanceVariableof\undefined \gdef\putwordInstanceVariableof{Instance Variable of}\fi
+\ifx\putwordMethodon\undefined \gdef\putwordMethodon{Method on}\fi
+\ifx\putwordNoTitle\undefined \gdef\putwordNoTitle{No Title}\fi
+\ifx\putwordof\undefined \gdef\putwordof{of}\fi
+\ifx\putwordon\undefined \gdef\putwordon{on}\fi
+\ifx\putwordpage\undefined \gdef\putwordpage{page}\fi
+\ifx\putwordsection\undefined \gdef\putwordsection{section}\fi
+\ifx\putwordSection\undefined \gdef\putwordSection{Section}\fi
+\ifx\putwordsee\undefined \gdef\putwordsee{see}\fi
+\ifx\putwordSee\undefined \gdef\putwordSee{See}\fi
+\ifx\putwordShortTOC\undefined \gdef\putwordShortTOC{Short Contents}\fi
+\ifx\putwordTOC\undefined \gdef\putwordTOC{Table of Contents}\fi
+%
+\ifx\putwordMJan\undefined \gdef\putwordMJan{January}\fi
+\ifx\putwordMFeb\undefined \gdef\putwordMFeb{February}\fi
+\ifx\putwordMMar\undefined \gdef\putwordMMar{March}\fi
+\ifx\putwordMApr\undefined \gdef\putwordMApr{April}\fi
+\ifx\putwordMMay\undefined \gdef\putwordMMay{May}\fi
+\ifx\putwordMJun\undefined \gdef\putwordMJun{June}\fi
+\ifx\putwordMJul\undefined \gdef\putwordMJul{July}\fi
+\ifx\putwordMAug\undefined \gdef\putwordMAug{August}\fi
+\ifx\putwordMSep\undefined \gdef\putwordMSep{September}\fi
+\ifx\putwordMOct\undefined \gdef\putwordMOct{October}\fi
+\ifx\putwordMNov\undefined \gdef\putwordMNov{November}\fi
+\ifx\putwordMDec\undefined \gdef\putwordMDec{December}\fi
+%
+\ifx\putwordDefmac\undefined \gdef\putwordDefmac{Macro}\fi
+\ifx\putwordDefspec\undefined \gdef\putwordDefspec{Special Form}\fi
+\ifx\putwordDefvar\undefined \gdef\putwordDefvar{Variable}\fi
+\ifx\putwordDefopt\undefined \gdef\putwordDefopt{User Option}\fi
+\ifx\putwordDeffunc\undefined \gdef\putwordDeffunc{Function}\fi
+
+% Since the category of space is not known, we have to be careful.
+\chardef\spacecat = 10
+\def\spaceisspace{\catcode`\ =\spacecat}
+
+% sometimes characters are active, so we need control sequences.
+\chardef\colonChar = `\:
+\chardef\commaChar = `\,
+\chardef\dashChar = `\-
+\chardef\dotChar = `\.
+\chardef\exclamChar= `\!
+\chardef\lquoteChar= `\`
+\chardef\questChar = `\?
+\chardef\rquoteChar= `\'
+\chardef\semiChar = `\;
+\chardef\underChar = `\_
+
+% Ignore a token.
+%
+\def\gobble#1{}
+
+% The following is used inside several \edef's.
+\def\makecsname#1{\expandafter\noexpand\csname#1\endcsname}
+
+% Hyphenation fixes.
+\hyphenation{
+ Flor-i-da Ghost-script Ghost-view Mac-OS Post-Script
+ ap-pen-dix bit-map bit-maps
+ data-base data-bases eshell fall-ing half-way long-est man-u-script
+ man-u-scripts mini-buf-fer mini-buf-fers over-view par-a-digm
+ par-a-digms rath-er rec-tan-gu-lar ro-bot-ics se-vere-ly set-up spa-ces
+ spell-ing spell-ings
+ stand-alone strong-est time-stamp time-stamps which-ever white-space
+ wide-spread wrap-around
+}
+
+% Margin to add to right of even pages, to left of odd pages.
+\newdimen\bindingoffset
+\newdimen\normaloffset
+\newdimen\pagewidth \newdimen\pageheight
+
+% For a final copy, take out the rectangles
+% that mark overfull boxes (in case you have decided
+% that the text looks ok even though it passes the margin).
+%
+\def\finalout{\overfullrule=0pt}
+
+% @| inserts a changebar to the left of the current line. It should
+% surround any changed text. This approach does *not* work if the
+% change spans more than two lines of output. To handle that, we would
+% have adopt a much more difficult approach (putting marks into the main
+% vertical list for the beginning and end of each change).
+%
+\def\|{%
+ % \vadjust can only be used in horizontal mode.
+ \leavevmode
+ %
+ % Append this vertical mode material after the current line in the output.
+ \vadjust{%
+ % We want to insert a rule with the height and depth of the current
+ % leading; that is exactly what \strutbox is supposed to record.
+ \vskip-\baselineskip
+ %
+ % \vadjust-items are inserted at the left edge of the type. So
+ % the \llap here moves out into the left-hand margin.
+ \llap{%
+ %
+ % For a thicker or thinner bar, change the `1pt'.
+ \vrule height\baselineskip width1pt
+ %
+ % This is the space between the bar and the text.
+ \hskip 12pt
+ }%
+ }%
+}
+
+% Sometimes it is convenient to have everything in the transcript file
+% and nothing on the terminal. We don't just call \tracingall here,
+% since that produces some useless output on the terminal. We also make
+% some effort to order the tracing commands to reduce output in the log
+% file; cf. trace.sty in LaTeX.
+%
+\def\gloggingall{\begingroup \globaldefs = 1 \loggingall \endgroup}%
+\def\loggingall{%
+ \tracingstats2
+ \tracingpages1
+ \tracinglostchars2 % 2 gives us more in etex
+ \tracingparagraphs1
+ \tracingoutput1
+ \tracingmacros2
+ \tracingrestores1
+ \showboxbreadth\maxdimen \showboxdepth\maxdimen
+ \ifx\eTeXversion\undefined\else % etex gives us more logging
+ \tracingscantokens1
+ \tracingifs1
+ \tracinggroups1
+ \tracingnesting2
+ \tracingassigns1
+ \fi
+ \tracingcommands3 % 3 gives us more in etex
+ \errorcontextlines16
+}%
+
+% add check for \lastpenalty to plain's definitions. If the last thing
+% we did was a \nobreak, we don't want to insert more space.
+%
+\def\smallbreak{\ifnum\lastpenalty<10000\par\ifdim\lastskip<\smallskipamount
+ \removelastskip\penalty-50\smallskip\fi\fi}
+\def\medbreak{\ifnum\lastpenalty<10000\par\ifdim\lastskip<\medskipamount
+ \removelastskip\penalty-100\medskip\fi\fi}
+\def\bigbreak{\ifnum\lastpenalty<10000\par\ifdim\lastskip<\bigskipamount
+ \removelastskip\penalty-200\bigskip\fi\fi}
+
+% For @cropmarks command.
+% Do @cropmarks to get crop marks.
+%
+\newif\ifcropmarks
+\let\cropmarks = \cropmarkstrue
+%
+% Dimensions to add cropmarks at corners.
+% Added by P. A. MacKay, 12 Nov. 1986
+%
+\newdimen\outerhsize \newdimen\outervsize % set by the paper size routines
+\newdimen\cornerlong \cornerlong=1pc
+\newdimen\cornerthick \cornerthick=.3pt
+\newdimen\topandbottommargin \topandbottommargin=.75in
+
+% Output a mark which sets \thischapter, \thissection and \thiscolor.
+% We dump everything together because we only have one kind of mark.
+% This works because we only use \botmark / \topmark, not \firstmark.
+%
+% A mark contains a subexpression of the \ifcase ... \fi construct.
+% \get*marks macros below extract the needed part using \ifcase.
+%
+% Another complication is to let the user choose whether \thischapter
+% (\thissection) refers to the chapter (section) in effect at the top
+% of a page, or that at the bottom of a page. The solution is
+% described on page 260 of The TeXbook. It involves outputting two
+% marks for the sectioning macros, one before the section break, and
+% one after. I won't pretend I can describe this better than DEK...
+\def\domark{%
+ \toks0=\expandafter{\lastchapterdefs}%
+ \toks2=\expandafter{\lastsectiondefs}%
+ \toks4=\expandafter{\prevchapterdefs}%
+ \toks6=\expandafter{\prevsectiondefs}%
+ \toks8=\expandafter{\lastcolordefs}%
+ \mark{%
+ \the\toks0 \the\toks2
+ \noexpand\or \the\toks4 \the\toks6
+ \noexpand\else \the\toks8
+ }%
+}
+% \topmark doesn't work for the very first chapter (after the title
+% page or the contents), so we use \firstmark there -- this gets us
+% the mark with the chapter defs, unless the user sneaks in, e.g.,
+% @setcolor (or @url, or @link, etc.) between @contents and the very
+% first @chapter.
+\def\gettopheadingmarks{%
+ \ifcase0\topmark\fi
+ \ifx\thischapter\empty \ifcase0\firstmark\fi \fi
+}
+\def\getbottomheadingmarks{\ifcase1\botmark\fi}
+\def\getcolormarks{\ifcase2\topmark\fi}
+
+% Avoid "undefined control sequence" errors.
+\def\lastchapterdefs{}
+\def\lastsectiondefs{}
+\def\prevchapterdefs{}
+\def\prevsectiondefs{}
+\def\lastcolordefs{}
+
+% Main output routine.
+\chardef\PAGE = 255
+\output = {\onepageout{\pagecontents\PAGE}}
+
+\newbox\headlinebox
+\newbox\footlinebox
+
+% \onepageout takes a vbox as an argument. Note that \pagecontents
+% does insertions, but you have to call it yourself.
+\def\onepageout#1{%
+ \ifcropmarks \hoffset=0pt \else \hoffset=\normaloffset \fi
+ %
+ \ifodd\pageno \advance\hoffset by \bindingoffset
+ \else \advance\hoffset by -\bindingoffset\fi
+ %
+ % Do this outside of the \shipout so @code etc. will be expanded in
+ % the headline as they should be, not taken literally (outputting ''code).
+ \ifodd\pageno \getoddheadingmarks \else \getevenheadingmarks \fi
+ \setbox\headlinebox = \vbox{\let\hsize=\pagewidth \makeheadline}%
+ \ifodd\pageno \getoddfootingmarks \else \getevenfootingmarks \fi
+ \setbox\footlinebox = \vbox{\let\hsize=\pagewidth \makefootline}%
+ %
+ {%
+ % Have to do this stuff outside the \shipout because we want it to
+ % take effect in \write's, yet the group defined by the \vbox ends
+ % before the \shipout runs.
+ %
+ \indexdummies % don't expand commands in the output.
+ \normalturnoffactive % \ in index entries must not stay \, e.g., if
+ % the page break happens to be in the middle of an example.
+ % We don't want .vr (or whatever) entries like this:
+ % \entry{{\tt \indexbackslash }acronym}{32}{\code {\acronym}}
+ % "\acronym" won't work when it's read back in;
+ % it needs to be
+ % {\code {{\tt \backslashcurfont }acronym}
+ \shipout\vbox{%
+ % Do this early so pdf references go to the beginning of the page.
+ \ifpdfmakepagedest \pdfdest name{\the\pageno} xyz\fi
+ %
+ \ifcropmarks \vbox to \outervsize\bgroup
+ \hsize = \outerhsize
+ \vskip-\topandbottommargin
+ \vtop to0pt{%
+ \line{\ewtop\hfil\ewtop}%
+ \nointerlineskip
+ \line{%
+ \vbox{\moveleft\cornerthick\nstop}%
+ \hfill
+ \vbox{\moveright\cornerthick\nstop}%
+ }%
+ \vss}%
+ \vskip\topandbottommargin
+ \line\bgroup
+ \hfil % center the page within the outer (page) hsize.
+ \ifodd\pageno\hskip\bindingoffset\fi
+ \vbox\bgroup
+ \fi
+ %
+ \unvbox\headlinebox
+ \pagebody{#1}%
+ \ifdim\ht\footlinebox > 0pt
+ % Only leave this space if the footline is nonempty.
+ % (We lessened \vsize for it in \oddfootingyyy.)
+ % The \baselineskip=24pt in plain's \makefootline has no effect.
+ \vskip 24pt
+ \unvbox\footlinebox
+ \fi
+ %
+ \ifcropmarks
+ \egroup % end of \vbox\bgroup
+ \hfil\egroup % end of (centering) \line\bgroup
+ \vskip\topandbottommargin plus1fill minus1fill
+ \boxmaxdepth = \cornerthick
+ \vbox to0pt{\vss
+ \line{%
+ \vbox{\moveleft\cornerthick\nsbot}%
+ \hfill
+ \vbox{\moveright\cornerthick\nsbot}%
+ }%
+ \nointerlineskip
+ \line{\ewbot\hfil\ewbot}%
+ }%
+ \egroup % \vbox from first cropmarks clause
+ \fi
+ }% end of \shipout\vbox
+ }% end of group with \indexdummies
+ \advancepageno
+ \ifnum\outputpenalty>-20000 \else\dosupereject\fi
+}
+
+\newinsert\margin \dimen\margin=\maxdimen
+
+\def\pagebody#1{\vbox to\pageheight{\boxmaxdepth=\maxdepth #1}}
+{\catcode`\@ =11
+\gdef\pagecontents#1{\ifvoid\topins\else\unvbox\topins\fi
+% marginal hacks, juha@viisa.uucp (Juha Takala)
+\ifvoid\margin\else % marginal info is present
+ \rlap{\kern\hsize\vbox to\z@{\kern1pt\box\margin \vss}}\fi
+\dimen@=\dp#1\relax \unvbox#1\relax
+\ifvoid\footins\else\vskip\skip\footins\footnoterule \unvbox\footins\fi
+\ifr@ggedbottom \kern-\dimen@ \vfil \fi}
+}
+
+% Here are the rules for the cropmarks. Note that they are
+% offset so that the space between them is truly \outerhsize or \outervsize
+% (P. A. MacKay, 12 November, 1986)
+%
+\def\ewtop{\vrule height\cornerthick depth0pt width\cornerlong}
+\def\nstop{\vbox
+ {\hrule height\cornerthick depth\cornerlong width\cornerthick}}
+\def\ewbot{\vrule height0pt depth\cornerthick width\cornerlong}
+\def\nsbot{\vbox
+ {\hrule height\cornerlong depth\cornerthick width\cornerthick}}
+
+% Parse an argument, then pass it to #1. The argument is the rest of
+% the input line (except we remove a trailing comment). #1 should be a
+% macro which expects an ordinary undelimited TeX argument.
+%
+\def\parsearg{\parseargusing{}}
+\def\parseargusing#1#2{%
+ \def\argtorun{#2}%
+ \begingroup
+ \obeylines
+ \spaceisspace
+ #1%
+ \parseargline\empty% Insert the \empty token, see \finishparsearg below.
+}
+
+{\obeylines %
+ \gdef\parseargline#1^^M{%
+ \endgroup % End of the group started in \parsearg.
+ \argremovecomment #1\comment\ArgTerm%
+ }%
+}
+
+% First remove any @comment, then any @c comment.
+\def\argremovecomment#1\comment#2\ArgTerm{\argremovec #1\c\ArgTerm}
+\def\argremovec#1\c#2\ArgTerm{\argcheckspaces#1\^^M\ArgTerm}
+
+% Each occurrence of `\^^M' or `<space>\^^M' is replaced by a single space.
+%
+% \argremovec might leave us with trailing space, e.g.,
+% @end itemize @c foo
+% This space token undergoes the same procedure and is eventually removed
+% by \finishparsearg.
+%
+\def\argcheckspaces#1\^^M{\argcheckspacesX#1\^^M \^^M}
+\def\argcheckspacesX#1 \^^M{\argcheckspacesY#1\^^M}
+\def\argcheckspacesY#1\^^M#2\^^M#3\ArgTerm{%
+ \def\temp{#3}%
+ \ifx\temp\empty
+ % Do not use \next, perhaps the caller of \parsearg uses it; reuse \temp:
+ \let\temp\finishparsearg
+ \else
+ \let\temp\argcheckspaces
+ \fi
+ % Put the space token in:
+ \temp#1 #3\ArgTerm
+}
+
+% If a _delimited_ argument is enclosed in braces, they get stripped; so
+% to get _exactly_ the rest of the line, we had to prevent such situation.
+% We prepended an \empty token at the very beginning and we expand it now,
+% just before passing the control to \argtorun.
+% (Similarly, we have to think about #3 of \argcheckspacesY above: it is
+% either the null string, or it ends with \^^M---thus there is no danger
+% that a pair of braces would be stripped.
+%
+% But first, we have to remove the trailing space token.
+%
+\def\finishparsearg#1 \ArgTerm{\expandafter\argtorun\expandafter{#1}}
+
+% \parseargdef\foo{...}
+% is roughly equivalent to
+% \def\foo{\parsearg\Xfoo}
+% \def\Xfoo#1{...}
+%
+% Actually, I use \csname\string\foo\endcsname, ie. \\foo, as it is my
+% favourite TeX trick. --kasal, 16nov03
+
+\def\parseargdef#1{%
+ \expandafter \doparseargdef \csname\string#1\endcsname #1%
+}
+\def\doparseargdef#1#2{%
+ \def#2{\parsearg#1}%
+ \def#1##1%
+}
+
+% Several utility definitions with active space:
+{
+ \obeyspaces
+ \gdef\obeyedspace{ }
+
+ % Make each space character in the input produce a normal interword
+ % space in the output. Don't allow a line break at this space, as this
+ % is used only in environments like @example, where each line of input
+ % should produce a line of output anyway.
+ %
+ \gdef\sepspaces{\obeyspaces\let =\tie}
+
+ % If an index command is used in an @example environment, any spaces
+ % therein should become regular spaces in the raw index file, not the
+ % expansion of \tie (\leavevmode \penalty \@M \ ).
+ \gdef\unsepspaces{\let =\space}
+}
+
+
+\def\flushcr{\ifx\par\lisppar \def\next##1{}\else \let\next=\relax \fi \next}
+
+% Define the framework for environments in texinfo.tex. It's used like this:
+%
+% \envdef\foo{...}
+% \def\Efoo{...}
+%
+% It's the responsibility of \envdef to insert \begingroup before the
+% actual body; @end closes the group after calling \Efoo. \envdef also
+% defines \thisenv, so the current environment is known; @end checks
+% whether the environment name matches. The \checkenv macro can also be
+% used to check whether the current environment is the one expected.
+%
+% Non-false conditionals (@iftex, @ifset) don't fit into this, so they
+% are not treated as environments; they don't open a group. (The
+% implementation of @end takes care not to call \endgroup in this
+% special case.)
+
+
+% At run-time, environments start with this:
+\def\startenvironment#1{\begingroup\def\thisenv{#1}}
+% initialize
+\let\thisenv\empty
+
+% ... but they get defined via ``\envdef\foo{...}'':
+\long\def\envdef#1#2{\def#1{\startenvironment#1#2}}
+\def\envparseargdef#1#2{\parseargdef#1{\startenvironment#1#2}}
+
+% Check whether we're in the right environment:
+\def\checkenv#1{%
+ \def\temp{#1}%
+ \ifx\thisenv\temp
+ \else
+ \badenverr
+ \fi
+}
+
+% Environment mismatch, #1 expected:
+\def\badenverr{%
+ \errhelp = \EMsimple
+ \errmessage{This command can appear only \inenvironment\temp,
+ not \inenvironment\thisenv}%
+}
+\def\inenvironment#1{%
+ \ifx#1\empty
+ out of any environment%
+ \else
+ in environment \expandafter\string#1%
+ \fi
+}
+
+% @end foo executes the definition of \Efoo.
+% But first, it executes a specialized version of \checkenv
+%
+\parseargdef\end{%
+ \if 1\csname iscond.#1\endcsname
+ \else
+ % The general wording of \badenverr may not be ideal, but... --kasal, 06nov03
+ \expandafter\checkenv\csname#1\endcsname
+ \csname E#1\endcsname
+ \endgroup
+ \fi
+}
+
+\newhelp\EMsimple{Press RETURN to continue.}
+
+
+%% Simple single-character @ commands
+
+% @@ prints an @
+% Kludge this until the fonts are right (grr).
+\def\@{{\tt\char64}}
+
+% This is turned off because it was never documented
+% and you can use @w{...} around a quote to suppress ligatures.
+%% Define @` and @' to be the same as ` and '
+%% but suppressing ligatures.
+%\def\`{{`}}
+%\def\'{{'}}
+
+% Used to generate quoted braces.
+\def\mylbrace {{\tt\char123}}
+\def\myrbrace {{\tt\char125}}
+\let\{=\mylbrace
+\let\}=\myrbrace
+\begingroup
+ % Definitions to produce \{ and \} commands for indices,
+ % and @{ and @} for the aux/toc files.
+ \catcode`\{ = \other \catcode`\} = \other
+ \catcode`\[ = 1 \catcode`\] = 2
+ \catcode`\! = 0 \catcode`\\ = \other
+ !gdef!lbracecmd[\{]%
+ !gdef!rbracecmd[\}]%
+ !gdef!lbraceatcmd[@{]%
+ !gdef!rbraceatcmd[@}]%
+!endgroup
+
+% @comma{} to avoid , parsing problems.
+\let\comma = ,
+
+% Accents: @, @dotaccent @ringaccent @ubaraccent @udotaccent
+% Others are defined by plain TeX: @` @' @" @^ @~ @= @u @v @H.
+\let\, = \c
+\let\dotaccent = \.
+\def\ringaccent#1{{\accent23 #1}}
+\let\tieaccent = \t
+\let\ubaraccent = \b
+\let\udotaccent = \d
+
+% Other special characters: @questiondown @exclamdown @ordf @ordm
+% Plain TeX defines: @AA @AE @O @OE @L (plus lowercase versions) @ss.
+\def\questiondown{?`}
+\def\exclamdown{!`}
+\def\ordf{\leavevmode\raise1ex\hbox{\selectfonts\lllsize \underbar{a}}}
+\def\ordm{\leavevmode\raise1ex\hbox{\selectfonts\lllsize \underbar{o}}}
+
+% Dotless i and dotless j, used for accents.
+\def\imacro{i}
+\def\jmacro{j}
+\def\dotless#1{%
+ \def\temp{#1}%
+ \ifx\temp\imacro \ifmmode\imath \else\ptexi \fi
+ \else\ifx\temp\jmacro \ifmmode\jmath \else\j \fi
+ \else \errmessage{@dotless can be used only with i or j}%
+ \fi\fi
+}
+
+% The \TeX{} logo, as in plain, but resetting the spacing so that a
+% period following counts as ending a sentence. (Idea found in latex.)
+%
+\edef\TeX{\TeX \spacefactor=1000 }
+
+% @LaTeX{} logo. Not quite the same results as the definition in
+% latex.ltx, since we use a different font for the raised A; it's most
+% convenient for us to use an explicitly smaller font, rather than using
+% the \scriptstyle font (since we don't reset \scriptstyle and
+% \scriptscriptstyle).
+%
+\def\LaTeX{%
+ L\kern-.36em
+ {\setbox0=\hbox{T}%
+ \vbox to \ht0{\hbox{\selectfonts\lllsize A}\vss}}%
+ \kern-.15em
+ \TeX
+}
+
+% Be sure we're in horizontal mode when doing a tie, since we make space
+% equivalent to this in @example-like environments. Otherwise, a space
+% at the beginning of a line will start with \penalty -- and
+% since \penalty is valid in vertical mode, we'd end up putting the
+% penalty on the vertical list instead of in the new paragraph.
+{\catcode`@ = 11
+ % Avoid using \@M directly, because that causes trouble
+ % if the definition is written into an index file.
+ \global\let\tiepenalty = \@M
+ \gdef\tie{\leavevmode\penalty\tiepenalty\ }
+}
+
+% @: forces normal size whitespace following.
+\def\:{\spacefactor=1000 }
+
+% @* forces a line break.
+\def\*{\hfil\break\hbox{}\ignorespaces}
+
+% @/ allows a line break.
+\let\/=\allowbreak
+
+% @. is an end-of-sentence period.
+\def\.{.\spacefactor=\endofsentencespacefactor\space}
+
+% @! is an end-of-sentence bang.
+\def\!{!\spacefactor=\endofsentencespacefactor\space}
+
+% @? is an end-of-sentence query.
+\def\?{?\spacefactor=\endofsentencespacefactor\space}
+
+% @frenchspacing on|off says whether to put extra space after punctuation.
+%
+\def\onword{on}
+\def\offword{off}
+%
+\parseargdef\frenchspacing{%
+ \def\temp{#1}%
+ \ifx\temp\onword \plainfrenchspacing
+ \else\ifx\temp\offword \plainnonfrenchspacing
+ \else
+ \errhelp = \EMsimple
+ \errmessage{Unknown @frenchspacing option `\temp', must be on/off}%
+ \fi\fi
+}
+
+% @w prevents a word break. Without the \leavevmode, @w at the
+% beginning of a paragraph, when TeX is still in vertical mode, would
+% produce a whole line of output instead of starting the paragraph.
+\def\w#1{\leavevmode\hbox{#1}}
+
+% @group ... @end group forces ... to be all on one page, by enclosing
+% it in a TeX vbox. We use \vtop instead of \vbox to construct the box
+% to keep its height that of a normal line. According to the rules for
+% \topskip (p.114 of the TeXbook), the glue inserted is
+% max (\topskip - \ht (first item), 0). If that height is large,
+% therefore, no glue is inserted, and the space between the headline and
+% the text is small, which looks bad.
+%
+% Another complication is that the group might be very large. This can
+% cause the glue on the previous page to be unduly stretched, because it
+% does not have much material. In this case, it's better to add an
+% explicit \vfill so that the extra space is at the bottom. The
+% threshold for doing this is if the group is more than \vfilllimit
+% percent of a page (\vfilllimit can be changed inside of @tex).
+%
+\newbox\groupbox
+\def\vfilllimit{0.7}
+%
+\envdef\group{%
+ \ifnum\catcode`\^^M=\active \else
+ \errhelp = \groupinvalidhelp
+ \errmessage{@group invalid in context where filling is enabled}%
+ \fi
+ \startsavinginserts
+ %
+ \setbox\groupbox = \vtop\bgroup
+ % Do @comment since we are called inside an environment such as
+ % @example, where each end-of-line in the input causes an
+ % end-of-line in the output. We don't want the end-of-line after
+ % the `@group' to put extra space in the output. Since @group
+ % should appear on a line by itself (according to the Texinfo
+ % manual), we don't worry about eating any user text.
+ \comment
+}
+%
+% The \vtop produces a box with normal height and large depth; thus, TeX puts
+% \baselineskip glue before it, and (when the next line of text is done)
+% \lineskip glue after it. Thus, space below is not quite equal to space
+% above. But it's pretty close.
+\def\Egroup{%
+ % To get correct interline space between the last line of the group
+ % and the first line afterwards, we have to propagate \prevdepth.
+ \endgraf % Not \par, as it may have been set to \lisppar.
+ \global\dimen1 = \prevdepth
+ \egroup % End the \vtop.
+ % \dimen0 is the vertical size of the group's box.
+ \dimen0 = \ht\groupbox \advance\dimen0 by \dp\groupbox
+ % \dimen2 is how much space is left on the page (more or less).
+ \dimen2 = \pageheight \advance\dimen2 by -\pagetotal
+ % if the group doesn't fit on the current page, and it's a big big
+ % group, force a page break.
+ \ifdim \dimen0 > \dimen2
+ \ifdim \pagetotal < \vfilllimit\pageheight
+ \page
+ \fi
+ \fi
+ \box\groupbox
+ \prevdepth = \dimen1
+ \checkinserts
+}
+%
+% TeX puts in an \escapechar (i.e., `@') at the beginning of the help
+% message, so this ends up printing `@group can only ...'.
+%
+\newhelp\groupinvalidhelp{%
+group can only be used in environments such as @example,^^J%
+where each line of input produces a line of output.}
+
+% @need space-in-mils
+% forces a page break if there is not space-in-mils remaining.
+
+\newdimen\mil \mil=0.001in
+
+% Old definition--didn't work.
+%\parseargdef\need{\par %
+%% This method tries to make TeX break the page naturally
+%% if the depth of the box does not fit.
+%{\baselineskip=0pt%
+%\vtop to #1\mil{\vfil}\kern -#1\mil\nobreak
+%\prevdepth=-1000pt
+%}}
+
+\parseargdef\need{%
+ % Ensure vertical mode, so we don't make a big box in the middle of a
+ % paragraph.
+ \par
+ %
+ % If the @need value is less than one line space, it's useless.
+ \dimen0 = #1\mil
+ \dimen2 = \ht\strutbox
+ \advance\dimen2 by \dp\strutbox
+ \ifdim\dimen0 > \dimen2
+ %
+ % Do a \strut just to make the height of this box be normal, so the
+ % normal leading is inserted relative to the preceding line.
+ % And a page break here is fine.
+ \vtop to #1\mil{\strut\vfil}%
+ %
+ % TeX does not even consider page breaks if a penalty added to the
+ % main vertical list is 10000 or more. But in order to see if the
+ % empty box we just added fits on the page, we must make it consider
+ % page breaks. On the other hand, we don't want to actually break the
+ % page after the empty box. So we use a penalty of 9999.
+ %
+ % There is an extremely small chance that TeX will actually break the
+ % page at this \penalty, if there are no other feasible breakpoints in
+ % sight. (If the user is using lots of big @group commands, which
+ % almost-but-not-quite fill up a page, TeX will have a hard time doing
+ % good page breaking, for example.) However, I could not construct an
+ % example where a page broke at this \penalty; if it happens in a real
+ % document, then we can reconsider our strategy.
+ \penalty9999
+ %
+ % Back up by the size of the box, whether we did a page break or not.
+ \kern -#1\mil
+ %
+ % Do not allow a page break right after this kern.
+ \nobreak
+ \fi
+}
+
+% @br forces paragraph break (and is undocumented).
+
+\let\br = \par
+
+% @page forces the start of a new page.
+%
+\def\page{\par\vfill\supereject}
+
+% @exdent text....
+% outputs text on separate line in roman font, starting at standard page margin
+
+% This records the amount of indent in the innermost environment.
+% That's how much \exdent should take out.
+\newskip\exdentamount
+
+% This defn is used inside fill environments such as @defun.
+\parseargdef\exdent{\hfil\break\hbox{\kern -\exdentamount{\rm#1}}\hfil\break}
+
+% This defn is used inside nofill environments such as @example.
+\parseargdef\nofillexdent{{\advance \leftskip by -\exdentamount
+ \leftline{\hskip\leftskip{\rm#1}}}}
+
+% @inmargin{WHICH}{TEXT} puts TEXT in the WHICH margin next to the current
+% paragraph. For more general purposes, use the \margin insertion
+% class. WHICH is `l' or `r'.
+%
+\newskip\inmarginspacing \inmarginspacing=1cm
+\def\strutdepth{\dp\strutbox}
+%
+\def\doinmargin#1#2{\strut\vadjust{%
+ \nobreak
+ \kern-\strutdepth
+ \vtop to \strutdepth{%
+ \baselineskip=\strutdepth
+ \vss
+ % if you have multiple lines of stuff to put here, you'll need to
+ % make the vbox yourself of the appropriate size.
+ \ifx#1l%
+ \llap{\ignorespaces #2\hskip\inmarginspacing}%
+ \else
+ \rlap{\hskip\hsize \hskip\inmarginspacing \ignorespaces #2}%
+ \fi
+ \null
+ }%
+}}
+\def\inleftmargin{\doinmargin l}
+\def\inrightmargin{\doinmargin r}
+%
+% @inmargin{TEXT [, RIGHT-TEXT]}
+% (if RIGHT-TEXT is given, use TEXT for left page, RIGHT-TEXT for right;
+% else use TEXT for both).
+%
+\def\inmargin#1{\parseinmargin #1,,\finish}
+\def\parseinmargin#1,#2,#3\finish{% not perfect, but better than nothing.
+ \setbox0 = \hbox{\ignorespaces #2}%
+ \ifdim\wd0 > 0pt
+ \def\lefttext{#1}% have both texts
+ \def\righttext{#2}%
+ \else
+ \def\lefttext{#1}% have only one text
+ \def\righttext{#1}%
+ \fi
+ %
+ \ifodd\pageno
+ \def\temp{\inrightmargin\righttext}% odd page -> outside is right margin
+ \else
+ \def\temp{\inleftmargin\lefttext}%
+ \fi
+ \temp
+}
+
+% @include FILE -- \input text of FILE.
+%
+\def\include{\parseargusing\filenamecatcodes\includezzz}
+\def\includezzz#1{%
+ \pushthisfilestack
+ \def\thisfile{#1}%
+ {%
+ \makevalueexpandable % we want to expand any @value in FILE.
+ \turnoffactive % and allow special characters in the expansion
+ \indexnofonts % Allow `@@' and other weird things in file names.
+ \edef\temp{\noexpand\input #1 }%
+ %
+ % This trickery is to read FILE outside of a group, in case it makes
+ % definitions, etc.
+ \expandafter
+ }\temp
+ \popthisfilestack
+}
+\def\filenamecatcodes{%
+ \catcode`\\=\other
+ \catcode`~=\other
+ \catcode`^=\other
+ \catcode`_=\other
+ \catcode`|=\other
+ \catcode`<=\other
+ \catcode`>=\other
+ \catcode`+=\other
+ \catcode`-=\other
+ \catcode`\`=\other
+ \catcode`\'=\other
+}
+
+\def\pushthisfilestack{%
+ \expandafter\pushthisfilestackX\popthisfilestack\StackTerm
+}
+\def\pushthisfilestackX{%
+ \expandafter\pushthisfilestackY\thisfile\StackTerm
+}
+\def\pushthisfilestackY #1\StackTerm #2\StackTerm {%
+ \gdef\popthisfilestack{\gdef\thisfile{#1}\gdef\popthisfilestack{#2}}%
+}
+
+\def\popthisfilestack{\errthisfilestackempty}
+\def\errthisfilestackempty{\errmessage{Internal error:
+ the stack of filenames is empty.}}
+
+\def\thisfile{}
+
+% @center line
+% outputs that line, centered.
+%
+\parseargdef\center{%
+ \ifhmode
+ \let\next\centerH
+ \else
+ \let\next\centerV
+ \fi
+ \next{\hfil \ignorespaces#1\unskip \hfil}%
+}
+\def\centerH#1{%
+ {%
+ \hfil\break
+ \advance\hsize by -\leftskip
+ \advance\hsize by -\rightskip
+ \line{#1}%
+ \break
+ }%
+}
+\def\centerV#1{\line{\kern\leftskip #1\kern\rightskip}}
+
+% @sp n outputs n lines of vertical space
+
+\parseargdef\sp{\vskip #1\baselineskip}
+
+% @comment ...line which is ignored...
+% @c is the same as @comment
+% @ignore ... @end ignore is another way to write a comment
+
+\def\comment{\begingroup \catcode`\^^M=\other%
+\catcode`\@=\other \catcode`\{=\other \catcode`\}=\other%
+\commentxxx}
+{\catcode`\^^M=\other \gdef\commentxxx#1^^M{\endgroup}}
+
+\let\c=\comment
+
+% @paragraphindent NCHARS
+% We'll use ems for NCHARS, close enough.
+% NCHARS can also be the word `asis' or `none'.
+% We cannot feasibly implement @paragraphindent asis, though.
+%
+\def\asisword{asis} % no translation, these are keywords
+\def\noneword{none}
+%
+\parseargdef\paragraphindent{%
+ \def\temp{#1}%
+ \ifx\temp\asisword
+ \else
+ \ifx\temp\noneword
+ \defaultparindent = 0pt
+ \else
+ \defaultparindent = #1em
+ \fi
+ \fi
+ \parindent = \defaultparindent
+}
+
+% @exampleindent NCHARS
+% We'll use ems for NCHARS like @paragraphindent.
+% It seems @exampleindent asis isn't necessary, but
+% I preserve it to make it similar to @paragraphindent.
+\parseargdef\exampleindent{%
+ \def\temp{#1}%
+ \ifx\temp\asisword
+ \else
+ \ifx\temp\noneword
+ \lispnarrowing = 0pt
+ \else
+ \lispnarrowing = #1em
+ \fi
+ \fi
+}
+
+% @firstparagraphindent WORD
+% If WORD is `none', then suppress indentation of the first paragraph
+% after a section heading. If WORD is `insert', then do indent at such
+% paragraphs.
+%
+% The paragraph indentation is suppressed or not by calling
+% \suppressfirstparagraphindent, which the sectioning commands do.
+% We switch the definition of this back and forth according to WORD.
+% By default, we suppress indentation.
+%
+\def\suppressfirstparagraphindent{\dosuppressfirstparagraphindent}
+\def\insertword{insert}
+%
+\parseargdef\firstparagraphindent{%
+ \def\temp{#1}%
+ \ifx\temp\noneword
+ \let\suppressfirstparagraphindent = \dosuppressfirstparagraphindent
+ \else\ifx\temp\insertword
+ \let\suppressfirstparagraphindent = \relax
+ \else
+ \errhelp = \EMsimple
+ \errmessage{Unknown @firstparagraphindent option `\temp'}%
+ \fi\fi
+}
+
+% Here is how we actually suppress indentation. Redefine \everypar to
+% \kern backwards by \parindent, and then reset itself to empty.
+%
+% We also make \indent itself not actually do anything until the next
+% paragraph.
+%
+\gdef\dosuppressfirstparagraphindent{%
+ \gdef\indent{%
+ \restorefirstparagraphindent
+ \indent
+ }%
+ \gdef\noindent{%
+ \restorefirstparagraphindent
+ \noindent
+ }%
+ \global\everypar = {%
+ \kern -\parindent
+ \restorefirstparagraphindent
+ }%
+}
+
+\gdef\restorefirstparagraphindent{%
+ \global \let \indent = \ptexindent
+ \global \let \noindent = \ptexnoindent
+ \global \everypar = {}%
+}
+
+
+% @asis just yields its argument. Used with @table, for example.
+%
+\def\asis#1{#1}
+
+% @math outputs its argument in math mode.
+%
+% One complication: _ usually means subscripts, but it could also mean
+% an actual _ character, as in @math{@var{some_variable} + 1}. So make
+% _ active, and distinguish by seeing if the current family is \slfam,
+% which is what @var uses.
+{
+ \catcode`\_ = \active
+ \gdef\mathunderscore{%
+ \catcode`\_=\active
+ \def_{\ifnum\fam=\slfam \_\else\sb\fi}%
+ }
+}
+% Another complication: we want \\ (and @\) to output a \ character.
+% FYI, plain.tex uses \\ as a temporary control sequence (why?), but
+% this is not advertised and we don't care. Texinfo does not
+% otherwise define @\.
+%
+% The \mathchar is class=0=ordinary, family=7=ttfam, position=5C=\.
+\def\mathbackslash{\ifnum\fam=\ttfam \mathchar"075C \else\backslash \fi}
+%
+\def\math{%
+ \tex
+ \mathunderscore
+ \let\\ = \mathbackslash
+ \mathactive
+ % make the texinfo accent commands work in math mode
+ \let\"=\ddot
+ \let\'=\acute
+ \let\==\bar
+ \let\^=\hat
+ \let\`=\grave
+ \let\u=\breve
+ \let\v=\check
+ \let\~=\tilde
+ \let\dotaccent=\dot
+ $\finishmath
+}
+\def\finishmath#1{#1$\endgroup} % Close the group opened by \tex.
+
+% Some active characters (such as <) are spaced differently in math.
+% We have to reset their definitions in case the @math was an argument
+% to a command which sets the catcodes (such as @item or @section).
+%
+{
+ \catcode`^ = \active
+ \catcode`< = \active
+ \catcode`> = \active
+ \catcode`+ = \active
+ \catcode`' = \active
+ \gdef\mathactive{%
+ \let^ = \ptexhat
+ \let< = \ptexless
+ \let> = \ptexgtr
+ \let+ = \ptexplus
+ \let' = \ptexquoteright
+ }
+}
+
+% Some math mode symbols.
+\def\bullet{$\ptexbullet$}
+\def\geq{\ifmmode \ge\else $\ge$\fi}
+\def\leq{\ifmmode \le\else $\le$\fi}
+\def\minus{\ifmmode -\else $-$\fi}
+
+% @dots{} outputs an ellipsis using the current font.
+% We do .5em per period so that it has the same spacing in the cm
+% typewriter fonts as three actual period characters; on the other hand,
+% in other typewriter fonts three periods are wider than 1.5em. So do
+% whichever is larger.
+%
+\def\dots{%
+ \leavevmode
+ \setbox0=\hbox{...}% get width of three periods
+ \ifdim\wd0 > 1.5em
+ \dimen0 = \wd0
+ \else
+ \dimen0 = 1.5em
+ \fi
+ \hbox to \dimen0{%
+ \hskip 0pt plus.25fil
+ .\hskip 0pt plus1fil
+ .\hskip 0pt plus1fil
+ .\hskip 0pt plus.5fil
+ }%
+}
+
+% @enddots{} is an end-of-sentence ellipsis.
+%
+\def\enddots{%
+ \dots
+ \spacefactor=\endofsentencespacefactor
+}
+
+% @comma{} is so commas can be inserted into text without messing up
+% Texinfo's parsing.
+%
+\let\comma = ,
+
+% @refill is a no-op.
+\let\refill=\relax
+
+% If working on a large document in chapters, it is convenient to
+% be able to disable indexing, cross-referencing, and contents, for test runs.
+% This is done with @novalidate (before @setfilename).
+%
+\newif\iflinks \linkstrue % by default we want the aux files.
+\let\novalidate = \linksfalse
+
+% @setfilename is done at the beginning of every texinfo file.
+% So open here the files we need to have open while reading the input.
+% This makes it possible to make a .fmt file for texinfo.
+\def\setfilename{%
+ \fixbackslash % Turn off hack to swallow `\input texinfo'.
+ \iflinks
+ \tryauxfile
+ % Open the new aux file. TeX will close it automatically at exit.
+ \immediate\openout\auxfile=\jobname.aux
+ \fi % \openindices needs to do some work in any case.
+ \openindices
+ \let\setfilename=\comment % Ignore extra @setfilename cmds.
+ %
+ % If texinfo.cnf is present on the system, read it.
+ % Useful for site-wide @afourpaper, etc.
+ \openin 1 texinfo.cnf
+ \ifeof 1 \else \input texinfo.cnf \fi
+ \closein 1
+ %
+ \comment % Ignore the actual filename.
+}
+
+% Called from \setfilename.
+%
+\def\openindices{%
+ \newindex{cp}%
+ \newcodeindex{fn}%
+ \newcodeindex{vr}%
+ \newcodeindex{tp}%
+ \newcodeindex{ky}%
+ \newcodeindex{pg}%
+}
+
+% @bye.
+\outer\def\bye{\pagealignmacro\tracingstats=1\ptexend}
+
+
+\message{pdf,}
+% adobe `portable' document format
+\newcount\tempnum
+\newcount\lnkcount
+\newtoks\filename
+\newcount\filenamelength
+\newcount\pgn
+\newtoks\toksA
+\newtoks\toksB
+\newtoks\toksC
+\newtoks\toksD
+\newbox\boxA
+\newcount\countA
+\newif\ifpdf
+\newif\ifpdfmakepagedest
+
+% when pdftex is run in dvi mode, \pdfoutput is defined (so \pdfoutput=1
+% can be set). So we test for \relax and 0 as well as \undefined,
+% borrowed from ifpdf.sty.
+\ifx\pdfoutput\undefined
+\else
+ \ifx\pdfoutput\relax
+ \else
+ \ifcase\pdfoutput
+ \else
+ \pdftrue
+ \fi
+ \fi
+\fi
+
+% PDF uses PostScript string constants for the names of xref targets,
+% for display in the outlines, and in other places. Thus, we have to
+% double any backslashes. Otherwise, a name like "\node" will be
+% interpreted as a newline (\n), followed by o, d, e. Not good.
+% http://www.ntg.nl/pipermail/ntg-pdftex/2004-July/000654.html
+% (and related messages, the final outcome is that it is up to the TeX
+% user to double the backslashes and otherwise make the string valid, so
+% that's what we do).
+
+% double active backslashes.
+%
+{\catcode`\@=0 \catcode`\\=\active
+ @gdef@activebackslashdouble{%
+ @catcode`@\=@active
+ @let\=@doublebackslash}
+}
+
+% To handle parens, we must adopt a different approach, since parens are
+% not active characters. hyperref.dtx (which has the same problem as
+% us) handles it with this amazing macro to replace tokens, with minor
+% changes for Texinfo. It is included here under the GPL by permission
+% from the author, Heiko Oberdiek.
+%
+% #1 is the tokens to replace.
+% #2 is the replacement.
+% #3 is the control sequence with the string.
+%
+\def\HyPsdSubst#1#2#3{%
+ \def\HyPsdReplace##1#1##2\END{%
+ ##1%
+ \ifx\\##2\\%
+ \else
+ #2%
+ \HyReturnAfterFi{%
+ \HyPsdReplace##2\END
+ }%
+ \fi
+ }%
+ \xdef#3{\expandafter\HyPsdReplace#3#1\END}%
+}
+\long\def\HyReturnAfterFi#1\fi{\fi#1}
+
+% #1 is a control sequence in which to do the replacements.
+\def\backslashparens#1{%
+ \xdef#1{#1}% redefine it as its expansion; the definition is simply
+ % \lastnode when called from \setref -> \pdfmkdest.
+ \HyPsdSubst{(}{\realbackslash(}{#1}%
+ \HyPsdSubst{)}{\realbackslash)}{#1}%
+}
+
+\newhelp\nopdfimagehelp{Texinfo supports .png, .jpg, .jpeg, and .pdf images
+with PDF output, and none of those formats could be found. (.eps cannot
+be supported due to the design of the PDF format; use regular TeX (DVI
+output) for that.)}
+
+\ifpdf
+ %
+ % Color manipulation macros based on pdfcolor.tex.
+ \def\cmykDarkRed{0.28 1 1 0.35}
+ \def\cmykBlack{0 0 0 1}
+ %
+ % k sets the color for filling (usual text, etc.);
+ % K sets the color for stroking (thin rules, e.g., normal _'s).
+ \def\pdfsetcolor#1{\pdfliteral{#1 k #1 K}}
+ %
+ % Set color, and create a mark which defines \thiscolor accordingly,
+ % so that \makeheadline knows which color to restore.
+ \def\setcolor#1{%
+ \xdef\lastcolordefs{\gdef\noexpand\thiscolor{#1}}%
+ \domark
+ \pdfsetcolor{#1}%
+ }
+ %
+ \def\maincolor{\cmykBlack}
+ \pdfsetcolor{\maincolor}
+ \edef\thiscolor{\maincolor}
+ \def\lastcolordefs{}
+ %
+ \def\makefootline{%
+ \baselineskip24pt
+ \line{\pdfsetcolor{\maincolor}\the\footline}%
+ }
+ %
+ \def\makeheadline{%
+ \vbox to 0pt{%
+ \vskip-22.5pt
+ \line{%
+ \vbox to8.5pt{}%
+ % Extract \thiscolor definition from the marks.
+ \getcolormarks
+ % Typeset the headline with \maincolor, then restore the color.
+ \pdfsetcolor{\maincolor}\the\headline\pdfsetcolor{\thiscolor}%
+ }%
+ \vss
+ }%
+ \nointerlineskip
+ }
+ %
+ %
+ \pdfcatalog{/PageMode /UseOutlines}
+ %
+ % #1 is image name, #2 width (might be empty/whitespace), #3 height (ditto).
+ \def\dopdfimage#1#2#3{%
+ \def\imagewidth{#2}\setbox0 = \hbox{\ignorespaces #2}%
+ \def\imageheight{#3}\setbox2 = \hbox{\ignorespaces #3}%
+ %
+ % pdftex (and the PDF format) support .png, .jpg, .pdf (among
+ % others). Let's try in that order.
+ \let\pdfimgext=\empty
+ \begingroup
+ \openin 1 #1.png \ifeof 1
+ \openin 1 #1.jpg \ifeof 1
+ \openin 1 #1.jpeg \ifeof 1
+ \openin 1 #1.JPG \ifeof 1
+ \openin 1 #1.pdf \ifeof 1
+ \openin 1 #1.PDF \ifeof 1
+ \errhelp = \nopdfimagehelp
+ \errmessage{Could not find image file #1 for pdf}%
+ \else \gdef\pdfimgext{PDF}%
+ \fi
+ \else \gdef\pdfimgext{pdf}%
+ \fi
+ \else \gdef\pdfimgext{JPG}%
+ \fi
+ \else \gdef\pdfimgext{jpeg}%
+ \fi
+ \else \gdef\pdfimgext{jpg}%
+ \fi
+ \else \gdef\pdfimgext{png}%
+ \fi
+ \closein 1
+ \endgroup
+ %
+ % without \immediate, ancient pdftex seg faults when the same image is
+ % included twice. (Version 3.14159-pre-1.0-unofficial-20010704.)
+ \ifnum\pdftexversion < 14
+ \immediate\pdfimage
+ \else
+ \immediate\pdfximage
+ \fi
+ \ifdim \wd0 >0pt width \imagewidth \fi
+ \ifdim \wd2 >0pt height \imageheight \fi
+ \ifnum\pdftexversion<13
+ #1.\pdfimgext
+ \else
+ {#1.\pdfimgext}%
+ \fi
+ \ifnum\pdftexversion < 14 \else
+ \pdfrefximage \pdflastximage
+ \fi}
+ %
+ \def\pdfmkdest#1{{%
+ % We have to set dummies so commands such as @code, and characters
+ % such as \, aren't expanded when present in a section title.
+ \indexnofonts
+ \turnoffactive
+ \activebackslashdouble
+ \makevalueexpandable
+ \def\pdfdestname{#1}%
+ \backslashparens\pdfdestname
+ \safewhatsit{\pdfdest name{\pdfdestname} xyz}%
+ }}
+ %
+ % used to mark target names; must be expandable.
+ \def\pdfmkpgn#1{#1}
+ %
+ % by default, use a color that is dark enough to print on paper as
+ % nearly black, but still distinguishable for online viewing.
+ \def\urlcolor{\cmykDarkRed}
+ \def\linkcolor{\cmykDarkRed}
+ \def\endlink{\setcolor{\maincolor}\pdfendlink}
+ %
+ % Adding outlines to PDF; macros for calculating structure of outlines
+ % come from Petr Olsak
+ \def\expnumber#1{\expandafter\ifx\csname#1\endcsname\relax 0%
+ \else \csname#1\endcsname \fi}
+ \def\advancenumber#1{\tempnum=\expnumber{#1}\relax
+ \advance\tempnum by 1
+ \expandafter\xdef\csname#1\endcsname{\the\tempnum}}
+ %
+ % #1 is the section text, which is what will be displayed in the
+ % outline by the pdf viewer. #2 is the pdf expression for the number
+ % of subentries (or empty, for subsubsections). #3 is the node text,
+ % which might be empty if this toc entry had no corresponding node.
+ % #4 is the page number
+ %
+ \def\dopdfoutline#1#2#3#4{%
+ % Generate a link to the node text if that exists; else, use the
+ % page number. We could generate a destination for the section
+ % text in the case where a section has no node, but it doesn't
+ % seem worth the trouble, since most documents are normally structured.
+ \def\pdfoutlinedest{#3}%
+ \ifx\pdfoutlinedest\empty
+ \def\pdfoutlinedest{#4}%
+ \else
+ % Doubled backslashes in the name.
+ {\activebackslashdouble \xdef\pdfoutlinedest{#3}%
+ \backslashparens\pdfoutlinedest}%
+ \fi
+ %
+ % Also double the backslashes in the display string.
+ {\activebackslashdouble \xdef\pdfoutlinetext{#1}%
+ \backslashparens\pdfoutlinetext}%
+ %
+ \pdfoutline goto name{\pdfmkpgn{\pdfoutlinedest}}#2{\pdfoutlinetext}%
+ }
+ %
+ \def\pdfmakeoutlines{%
+ \begingroup
+ % Thanh's hack / proper braces in bookmarks
+ \edef\mylbrace{\iftrue \string{\else}\fi}\let\{=\mylbrace
+ \edef\myrbrace{\iffalse{\else\string}\fi}\let\}=\myrbrace
+ %
+ % Read toc silently, to get counts of subentries for \pdfoutline.
+ \def\numchapentry##1##2##3##4{%
+ \def\thischapnum{##2}%
+ \def\thissecnum{0}%
+ \def\thissubsecnum{0}%
+ }%
+ \def\numsecentry##1##2##3##4{%
+ \advancenumber{chap\thischapnum}%
+ \def\thissecnum{##2}%
+ \def\thissubsecnum{0}%
+ }%
+ \def\numsubsecentry##1##2##3##4{%
+ \advancenumber{sec\thissecnum}%
+ \def\thissubsecnum{##2}%
+ }%
+ \def\numsubsubsecentry##1##2##3##4{%
+ \advancenumber{subsec\thissubsecnum}%
+ }%
+ \def\thischapnum{0}%
+ \def\thissecnum{0}%
+ \def\thissubsecnum{0}%
+ %
+ % use \def rather than \let here because we redefine \chapentry et
+ % al. a second time, below.
+ \def\appentry{\numchapentry}%
+ \def\appsecentry{\numsecentry}%
+ \def\appsubsecentry{\numsubsecentry}%
+ \def\appsubsubsecentry{\numsubsubsecentry}%
+ \def\unnchapentry{\numchapentry}%
+ \def\unnsecentry{\numsecentry}%
+ \def\unnsubsecentry{\numsubsecentry}%
+ \def\unnsubsubsecentry{\numsubsubsecentry}%
+ \readdatafile{toc}%
+ %
+ % Read toc second time, this time actually producing the outlines.
+ % The `-' means take the \expnumber as the absolute number of
+ % subentries, which we calculated on our first read of the .toc above.
+ %
+ % We use the node names as the destinations.
+ \def\numchapentry##1##2##3##4{%
+ \dopdfoutline{##1}{count-\expnumber{chap##2}}{##3}{##4}}%
+ \def\numsecentry##1##2##3##4{%
+ \dopdfoutline{##1}{count-\expnumber{sec##2}}{##3}{##4}}%
+ \def\numsubsecentry##1##2##3##4{%
+ \dopdfoutline{##1}{count-\expnumber{subsec##2}}{##3}{##4}}%
+ \def\numsubsubsecentry##1##2##3##4{% count is always zero
+ \dopdfoutline{##1}{}{##3}{##4}}%
+ %
+ % PDF outlines are displayed using system fonts, instead of
+ % document fonts. Therefore we cannot use special characters,
+ % since the encoding is unknown. For example, the eogonek from
+ % Latin 2 (0xea) gets translated to a | character. Info from
+ % Staszek Wawrykiewicz, 19 Jan 2004 04:09:24 +0100.
+ %
+ % xx to do this right, we have to translate 8-bit characters to
+ % their "best" equivalent, based on the @documentencoding. Right
+ % now, I guess we'll just let the pdf reader have its way.
+ \indexnofonts
+ \setupdatafile
+ \catcode`\\=\active \otherbackslash
+ \input \tocreadfilename
+ \endgroup
+ }
+ %
+ \def\skipspaces#1{\def\PP{#1}\def\D{|}%
+ \ifx\PP\D\let\nextsp\relax
+ \else\let\nextsp\skipspaces
+ \ifx\p\space\else\addtokens{\filename}{\PP}%
+ \advance\filenamelength by 1
+ \fi
+ \fi
+ \nextsp}
+ \def\getfilename#1{\filenamelength=0\expandafter\skipspaces#1|\relax}
+ \ifnum\pdftexversion < 14
+ \let \startlink \pdfannotlink
+ \else
+ \let \startlink \pdfstartlink
+ \fi
+ % make a live url in pdf output.
+ \def\pdfurl#1{%
+ \begingroup
+ % it seems we really need yet another set of dummies; have not
+ % tried to figure out what each command should do in the context
+ % of @url. for now, just make @/ a no-op, that's the only one
+ % people have actually reported a problem with.
+ %
+ \normalturnoffactive
+ \def\@{@}%
+ \let\/=\empty
+ \makevalueexpandable
+ % do we want to go so far as to use \indexnofonts instead of just
+ % special-casing \var here?
+ \def\var##1{##1}%
+ %
+ \leavevmode\setcolor{\urlcolor}%
+ \startlink attr{/Border [0 0 0]}%
+ user{/Subtype /Link /A << /S /URI /URI (#1) >>}%
+ \endgroup}
+ \def\pdfgettoks#1.{\setbox\boxA=\hbox{\toksA={#1.}\toksB={}\maketoks}}
+ \def\addtokens#1#2{\edef\addtoks{\noexpand#1={\the#1#2}}\addtoks}
+ \def\adn#1{\addtokens{\toksC}{#1}\global\countA=1\let\next=\maketoks}
+ \def\poptoks#1#2|ENDTOKS|{\let\first=#1\toksD={#1}\toksA={#2}}
+ \def\maketoks{%
+ \expandafter\poptoks\the\toksA|ENDTOKS|\relax
+ \ifx\first0\adn0
+ \else\ifx\first1\adn1 \else\ifx\first2\adn2 \else\ifx\first3\adn3
+ \else\ifx\first4\adn4 \else\ifx\first5\adn5 \else\ifx\first6\adn6
+ \else\ifx\first7\adn7 \else\ifx\first8\adn8 \else\ifx\first9\adn9
+ \else
+ \ifnum0=\countA\else\makelink\fi
+ \ifx\first.\let\next=\done\else
+ \let\next=\maketoks
+ \addtokens{\toksB}{\the\toksD}
+ \ifx\first,\addtokens{\toksB}{\space}\fi
+ \fi
+ \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi
+ \next}
+ \def\makelink{\addtokens{\toksB}%
+ {\noexpand\pdflink{\the\toksC}}\toksC={}\global\countA=0}
+ \def\pdflink#1{%
+ \startlink attr{/Border [0 0 0]} goto name{\pdfmkpgn{#1}}
+ \setcolor{\linkcolor}#1\endlink}
+ \def\done{\edef\st{\global\noexpand\toksA={\the\toksB}}\st}
+\else
+ % non-pdf mode
+ \let\pdfmkdest = \gobble
+ \let\pdfurl = \gobble
+ \let\endlink = \relax
+ \let\setcolor = \gobble
+ \let\pdfsetcolor = \gobble
+ \let\pdfmakeoutlines = \relax
+\fi % \ifx\pdfoutput
+
+
+\message{fonts,}
+
+% Change the current font style to #1, remembering it in \curfontstyle.
+% For now, we do not accumulate font styles: @b{@i{foo}} prints foo in
+% italics, not bold italics.
+%
+\def\setfontstyle#1{%
+ \def\curfontstyle{#1}% not as a control sequence, because we are \edef'd.
+ \csname ten#1\endcsname % change the current font
+}
+
+% Select #1 fonts with the current style.
+%
+\def\selectfonts#1{\csname #1fonts\endcsname \csname\curfontstyle\endcsname}
+
+\def\rm{\fam=0 \setfontstyle{rm}}
+\def\it{\fam=\itfam \setfontstyle{it}}
+\def\sl{\fam=\slfam \setfontstyle{sl}}
+\def\bf{\fam=\bffam \setfontstyle{bf}}\def\bfstylename{bf}
+\def\tt{\fam=\ttfam \setfontstyle{tt}}
+
+% Unfortunately, we have to override this for titles and the like, since
+% in those cases "rm" is bold. Sigh.
+\def\rmisbold{\rm\def\curfontstyle{bf}}
+
+% Texinfo sort of supports the sans serif font style, which plain TeX does not.
+% So we set up a \sf.
+\newfam\sffam
+\def\sf{\fam=\sffam \setfontstyle{sf}}
+\let\li = \sf % Sometimes we call it \li, not \sf.
+
+% We don't need math for this font style.
+\def\ttsl{\setfontstyle{ttsl}}
+
+
+% Default leading.
+\newdimen\textleading \textleading = 13.2pt
+
+% Set the baselineskip to #1, and the lineskip and strut size
+% correspondingly. There is no deep meaning behind these magic numbers
+% used as factors; they just match (closely enough) what Knuth defined.
+%
+\def\lineskipfactor{.08333}
+\def\strutheightpercent{.70833}
+\def\strutdepthpercent {.29167}
+%
+% can get a sort of poor man's double spacing by redefining this.
+\def\baselinefactor{1}
+%
+\def\setleading#1{%
+ \dimen0 = #1\relax
+ \normalbaselineskip = \baselinefactor\dimen0
+ \normallineskip = \lineskipfactor\normalbaselineskip
+ \normalbaselines
+ \setbox\strutbox =\hbox{%
+ \vrule width0pt height\strutheightpercent\baselineskip
+ depth \strutdepthpercent \baselineskip
+ }%
+}
+
+% PDF CMaps. See also LaTeX's t1.cmap.
+%
+% do nothing with this by default.
+\expandafter\let\csname cmapOT1\endcsname\gobble
+\expandafter\let\csname cmapOT1IT\endcsname\gobble
+\expandafter\let\csname cmapOT1TT\endcsname\gobble
+
+% if we are producing pdf, and we have \pdffontattr, then define cmaps.
+% (\pdffontattr was introduced many years ago, but people still run
+% older pdftex's; it's easy to conditionalize, so we do.)
+\ifpdf \ifx\pdffontattr\undefined \else
+ \begingroup
+ \catcode`\^^M=\active \def^^M{^^J}% Output line endings as the ^^J char.
+ \catcode`\%=12 \immediate\pdfobj stream {%!PS-Adobe-3.0 Resource-CMap
+%%DocumentNeededResources: ProcSet (CIDInit)
+%%IncludeResource: ProcSet (CIDInit)
+%%BeginResource: CMap (TeX-OT1-0)
+%%Title: (TeX-OT1-0 TeX OT1 0)
+%%Version: 1.000
+%%EndComments
+/CIDInit /ProcSet findresource begin
+12 dict begin
+begincmap
+/CIDSystemInfo
+<< /Registry (TeX)
+/Ordering (OT1)
+/Supplement 0
+>> def
+/CMapName /TeX-OT1-0 def
+/CMapType 2 def
+1 begincodespacerange
+<00> <7F>
+endcodespacerange
+8 beginbfrange
+<00> <01> <0393>
+<09> <0A> <03A8>
+<23> <26> <0023>
+<28> <3B> <0028>
+<3F> <5B> <003F>
+<5D> <5E> <005D>
+<61> <7A> <0061>
+<7B> <7C> <2013>
+endbfrange
+40 beginbfchar
+<02> <0398>
+<03> <039B>
+<04> <039E>
+<05> <03A0>
+<06> <03A3>
+<07> <03D2>
+<08> <03A6>
+<0B> <00660066>
+<0C> <00660069>
+<0D> <0066006C>
+<0E> <006600660069>
+<0F> <00660066006C>
+<10> <0131>
+<11> <0237>
+<12> <0060>
+<13> <00B4>
+<14> <02C7>
+<15> <02D8>
+<16> <00AF>
+<17> <02DA>
+<18> <00B8>
+<19> <00DF>
+<1A> <00E6>
+<1B> <0153>
+<1C> <00F8>
+<1D> <00C6>
+<1E> <0152>
+<1F> <00D8>
+<21> <0021>
+<22> <201D>
+<27> <2019>
+<3C> <00A1>
+<3D> <003D>
+<3E> <00BF>
+<5C> <201C>
+<5F> <02D9>
+<60> <2018>
+<7D> <02DD>
+<7E> <007E>
+<7F> <00A8>
+endbfchar
+endcmap
+CMapName currentdict /CMap defineresource pop
+end
+end
+%%EndResource
+%%EOF
+ }\endgroup
+ \expandafter\edef\csname cmapOT1\endcsname#1{%
+ \pdffontattr#1{/ToUnicode \the\pdflastobj\space 0 R}%
+ }%
+%
+% \cmapOT1IT
+ \begingroup
+ \catcode`\^^M=\active \def^^M{^^J}% Output line endings as the ^^J char.
+ \catcode`\%=12 \immediate\pdfobj stream {%!PS-Adobe-3.0 Resource-CMap
+%%DocumentNeededResources: ProcSet (CIDInit)
+%%IncludeResource: ProcSet (CIDInit)
+%%BeginResource: CMap (TeX-OT1IT-0)
+%%Title: (TeX-OT1IT-0 TeX OT1IT 0)
+%%Version: 1.000
+%%EndComments
+/CIDInit /ProcSet findresource begin
+12 dict begin
+begincmap
+/CIDSystemInfo
+<< /Registry (TeX)
+/Ordering (OT1IT)
+/Supplement 0
+>> def
+/CMapName /TeX-OT1IT-0 def
+/CMapType 2 def
+1 begincodespacerange
+<00> <7F>
+endcodespacerange
+8 beginbfrange
+<00> <01> <0393>
+<09> <0A> <03A8>
+<25> <26> <0025>
+<28> <3B> <0028>
+<3F> <5B> <003F>
+<5D> <5E> <005D>
+<61> <7A> <0061>
+<7B> <7C> <2013>
+endbfrange
+42 beginbfchar
+<02> <0398>
+<03> <039B>
+<04> <039E>
+<05> <03A0>
+<06> <03A3>
+<07> <03D2>
+<08> <03A6>
+<0B> <00660066>
+<0C> <00660069>
+<0D> <0066006C>
+<0E> <006600660069>
+<0F> <00660066006C>
+<10> <0131>
+<11> <0237>
+<12> <0060>
+<13> <00B4>
+<14> <02C7>
+<15> <02D8>
+<16> <00AF>
+<17> <02DA>
+<18> <00B8>
+<19> <00DF>
+<1A> <00E6>
+<1B> <0153>
+<1C> <00F8>
+<1D> <00C6>
+<1E> <0152>
+<1F> <00D8>
+<21> <0021>
+<22> <201D>
+<23> <0023>
+<24> <00A3>
+<27> <2019>
+<3C> <00A1>
+<3D> <003D>
+<3E> <00BF>
+<5C> <201C>
+<5F> <02D9>
+<60> <2018>
+<7D> <02DD>
+<7E> <007E>
+<7F> <00A8>
+endbfchar
+endcmap
+CMapName currentdict /CMap defineresource pop
+end
+end
+%%EndResource
+%%EOF
+ }\endgroup
+ \expandafter\edef\csname cmapOT1IT\endcsname#1{%
+ \pdffontattr#1{/ToUnicode \the\pdflastobj\space 0 R}%
+ }%
+%
+% \cmapOT1TT
+ \begingroup
+ \catcode`\^^M=\active \def^^M{^^J}% Output line endings as the ^^J char.
+ \catcode`\%=12 \immediate\pdfobj stream {%!PS-Adobe-3.0 Resource-CMap
+%%DocumentNeededResources: ProcSet (CIDInit)
+%%IncludeResource: ProcSet (CIDInit)
+%%BeginResource: CMap (TeX-OT1TT-0)
+%%Title: (TeX-OT1TT-0 TeX OT1TT 0)
+%%Version: 1.000
+%%EndComments
+/CIDInit /ProcSet findresource begin
+12 dict begin
+begincmap
+/CIDSystemInfo
+<< /Registry (TeX)
+/Ordering (OT1TT)
+/Supplement 0
+>> def
+/CMapName /TeX-OT1TT-0 def
+/CMapType 2 def
+1 begincodespacerange
+<00> <7F>
+endcodespacerange
+5 beginbfrange
+<00> <01> <0393>
+<09> <0A> <03A8>
+<21> <26> <0021>
+<28> <5F> <0028>
+<61> <7E> <0061>
+endbfrange
+32 beginbfchar
+<02> <0398>
+<03> <039B>
+<04> <039E>
+<05> <03A0>
+<06> <03A3>
+<07> <03D2>
+<08> <03A6>
+<0B> <2191>
+<0C> <2193>
+<0D> <0027>
+<0E> <00A1>
+<0F> <00BF>
+<10> <0131>
+<11> <0237>
+<12> <0060>
+<13> <00B4>
+<14> <02C7>
+<15> <02D8>
+<16> <00AF>
+<17> <02DA>
+<18> <00B8>
+<19> <00DF>
+<1A> <00E6>
+<1B> <0153>
+<1C> <00F8>
+<1D> <00C6>
+<1E> <0152>
+<1F> <00D8>
+<20> <2423>
+<27> <2019>
+<60> <2018>
+<7F> <00A8>
+endbfchar
+endcmap
+CMapName currentdict /CMap defineresource pop
+end
+end
+%%EndResource
+%%EOF
+ }\endgroup
+ \expandafter\edef\csname cmapOT1TT\endcsname#1{%
+ \pdffontattr#1{/ToUnicode \the\pdflastobj\space 0 R}%
+ }%
+\fi\fi
+
+
+% Set the font macro #1 to the font named #2, adding on the
+% specified font prefix (normally `cm').
+% #3 is the font's design size, #4 is a scale factor, #5 is the CMap
+% encoding (currently only OT1, OT1IT and OT1TT are allowed, pass
+% empty to omit).
+\def\setfont#1#2#3#4#5{%
+ \font#1=\fontprefix#2#3 scaled #4
+ \csname cmap#5\endcsname#1%
+}
+% This is what gets called when #5 of \setfont is empty.
+\let\cmap\gobble
+% emacs-page end of cmaps
+
+% Use cm as the default font prefix.
+% To specify the font prefix, you must define \fontprefix
+% before you read in texinfo.tex.
+\ifx\fontprefix\undefined
+\def\fontprefix{cm}
+\fi
+% Support font families that don't use the same naming scheme as CM.
+\def\rmshape{r}
+\def\rmbshape{bx} %where the normal face is bold
+\def\bfshape{b}
+\def\bxshape{bx}
+\def\ttshape{tt}
+\def\ttbshape{tt}
+\def\ttslshape{sltt}
+\def\itshape{ti}
+\def\itbshape{bxti}
+\def\slshape{sl}
+\def\slbshape{bxsl}
+\def\sfshape{ss}
+\def\sfbshape{ss}
+\def\scshape{csc}
+\def\scbshape{csc}
+
+% Definitions for a main text size of 11pt. This is the default in
+% Texinfo.
+%
+\def\definetextfontsizexi{%
+% Text fonts (11.2pt, magstep1).
+\def\textnominalsize{11pt}
+\edef\mainmagstep{\magstephalf}
+\setfont\textrm\rmshape{10}{\mainmagstep}{OT1}
+\setfont\texttt\ttshape{10}{\mainmagstep}{OT1TT}
+\setfont\textbf\bfshape{10}{\mainmagstep}{OT1}
+\setfont\textit\itshape{10}{\mainmagstep}{OT1IT}
+\setfont\textsl\slshape{10}{\mainmagstep}{OT1}
+\setfont\textsf\sfshape{10}{\mainmagstep}{OT1}
+\setfont\textsc\scshape{10}{\mainmagstep}{OT1}
+\setfont\textttsl\ttslshape{10}{\mainmagstep}{OT1TT}
+\font\texti=cmmi10 scaled \mainmagstep
+\font\textsy=cmsy10 scaled \mainmagstep
+\def\textecsize{1095}
+
+% A few fonts for @defun names and args.
+\setfont\defbf\bfshape{10}{\magstep1}{OT1}
+\setfont\deftt\ttshape{10}{\magstep1}{OT1TT}
+\setfont\defttsl\ttslshape{10}{\magstep1}{OT1TT}
+\def\df{\let\tentt=\deftt \let\tenbf = \defbf \let\tenttsl=\defttsl \bf}
+
+% Fonts for indices, footnotes, small examples (9pt).
+\def\smallnominalsize{9pt}
+\setfont\smallrm\rmshape{9}{1000}{OT1}
+\setfont\smalltt\ttshape{9}{1000}{OT1TT}
+\setfont\smallbf\bfshape{10}{900}{OT1}
+\setfont\smallit\itshape{9}{1000}{OT1IT}
+\setfont\smallsl\slshape{9}{1000}{OT1}
+\setfont\smallsf\sfshape{9}{1000}{OT1}
+\setfont\smallsc\scshape{10}{900}{OT1}
+\setfont\smallttsl\ttslshape{10}{900}{OT1TT}
+\font\smalli=cmmi9
+\font\smallsy=cmsy9
+\def\smallecsize{0900}
+
+% Fonts for small examples (8pt).
+\def\smallernominalsize{8pt}
+\setfont\smallerrm\rmshape{8}{1000}{OT1}
+\setfont\smallertt\ttshape{8}{1000}{OT1TT}
+\setfont\smallerbf\bfshape{10}{800}{OT1}
+\setfont\smallerit\itshape{8}{1000}{OT1IT}
+\setfont\smallersl\slshape{8}{1000}{OT1}
+\setfont\smallersf\sfshape{8}{1000}{OT1}
+\setfont\smallersc\scshape{10}{800}{OT1}
+\setfont\smallerttsl\ttslshape{10}{800}{OT1TT}
+\font\smalleri=cmmi8
+\font\smallersy=cmsy8
+\def\smallerecsize{0800}
+
+% Fonts for title page (20.4pt):
+\def\titlenominalsize{20pt}
+\setfont\titlerm\rmbshape{12}{\magstep3}{OT1}
+\setfont\titleit\itbshape{10}{\magstep4}{OT1IT}
+\setfont\titlesl\slbshape{10}{\magstep4}{OT1}
+\setfont\titlett\ttbshape{12}{\magstep3}{OT1TT}
+\setfont\titlettsl\ttslshape{10}{\magstep4}{OT1TT}
+\setfont\titlesf\sfbshape{17}{\magstep1}{OT1}
+\let\titlebf=\titlerm
+\setfont\titlesc\scbshape{10}{\magstep4}{OT1}
+\font\titlei=cmmi12 scaled \magstep3
+\font\titlesy=cmsy10 scaled \magstep4
+\def\titleecsize{2074}
+
+% Chapter (and unnumbered) fonts (17.28pt).
+\def\chapnominalsize{17pt}
+\setfont\chaprm\rmbshape{12}{\magstep2}{OT1}
+\setfont\chapit\itbshape{10}{\magstep3}{OT1IT}
+\setfont\chapsl\slbshape{10}{\magstep3}{OT1}
+\setfont\chaptt\ttbshape{12}{\magstep2}{OT1TT}
+\setfont\chapttsl\ttslshape{10}{\magstep3}{OT1TT}
+\setfont\chapsf\sfbshape{17}{1000}{OT1}
+\let\chapbf=\chaprm
+\setfont\chapsc\scbshape{10}{\magstep3}{OT1}
+\font\chapi=cmmi12 scaled \magstep2
+\font\chapsy=cmsy10 scaled \magstep3
+\def\chapecsize{1728}
+
+% Section fonts (14.4pt).
+\def\secnominalsize{14pt}
+\setfont\secrm\rmbshape{12}{\magstep1}{OT1}
+\setfont\secit\itbshape{10}{\magstep2}{OT1IT}
+\setfont\secsl\slbshape{10}{\magstep2}{OT1}
+\setfont\sectt\ttbshape{12}{\magstep1}{OT1TT}
+\setfont\secttsl\ttslshape{10}{\magstep2}{OT1TT}
+\setfont\secsf\sfbshape{12}{\magstep1}{OT1}
+\let\secbf\secrm
+\setfont\secsc\scbshape{10}{\magstep2}{OT1}
+\font\seci=cmmi12 scaled \magstep1
+\font\secsy=cmsy10 scaled \magstep2
+\def\sececsize{1440}
+
+% Subsection fonts (13.15pt).
+\def\ssecnominalsize{13pt}
+\setfont\ssecrm\rmbshape{12}{\magstephalf}{OT1}
+\setfont\ssecit\itbshape{10}{1315}{OT1IT}
+\setfont\ssecsl\slbshape{10}{1315}{OT1}
+\setfont\ssectt\ttbshape{12}{\magstephalf}{OT1TT}
+\setfont\ssecttsl\ttslshape{10}{1315}{OT1TT}
+\setfont\ssecsf\sfbshape{12}{\magstephalf}{OT1}
+\let\ssecbf\ssecrm
+\setfont\ssecsc\scbshape{10}{1315}{OT1}
+\font\sseci=cmmi12 scaled \magstephalf
+\font\ssecsy=cmsy10 scaled 1315
+\def\ssececsize{1200}
+
+% Reduced fonts for @acro in text (10pt).
+\def\reducednominalsize{10pt}
+\setfont\reducedrm\rmshape{10}{1000}{OT1}
+\setfont\reducedtt\ttshape{10}{1000}{OT1TT}
+\setfont\reducedbf\bfshape{10}{1000}{OT1}
+\setfont\reducedit\itshape{10}{1000}{OT1IT}
+\setfont\reducedsl\slshape{10}{1000}{OT1}
+\setfont\reducedsf\sfshape{10}{1000}{OT1}
+\setfont\reducedsc\scshape{10}{1000}{OT1}
+\setfont\reducedttsl\ttslshape{10}{1000}{OT1TT}
+\font\reducedi=cmmi10
+\font\reducedsy=cmsy10
+\def\reducedecsize{1000}
+
+% reset the current fonts
+\textfonts
+\rm
+} % end of 11pt text font size definitions
+
+
+% Definitions to make the main text be 10pt Computer Modern, with
+% section, chapter, etc., sizes following suit. This is for the GNU
+% Press printing of the Emacs 22 manual. Maybe other manuals in the
+% future. Used with @smallbook, which sets the leading to 12pt.
+%
+\def\definetextfontsizex{%
+% Text fonts (10pt).
+\def\textnominalsize{10pt}
+\edef\mainmagstep{1000}
+\setfont\textrm\rmshape{10}{\mainmagstep}{OT1}
+\setfont\texttt\ttshape{10}{\mainmagstep}{OT1TT}
+\setfont\textbf\bfshape{10}{\mainmagstep}{OT1}
+\setfont\textit\itshape{10}{\mainmagstep}{OT1IT}
+\setfont\textsl\slshape{10}{\mainmagstep}{OT1}
+\setfont\textsf\sfshape{10}{\mainmagstep}{OT1}
+\setfont\textsc\scshape{10}{\mainmagstep}{OT1}
+\setfont\textttsl\ttslshape{10}{\mainmagstep}{OT1TT}
+\font\texti=cmmi10 scaled \mainmagstep
+\font\textsy=cmsy10 scaled \mainmagstep
+\def\textecsize{1000}
+
+% A few fonts for @defun names and args.
+\setfont\defbf\bfshape{10}{\magstephalf}{OT1}
+\setfont\deftt\ttshape{10}{\magstephalf}{OT1TT}
+\setfont\defttsl\ttslshape{10}{\magstephalf}{OT1TT}
+\def\df{\let\tentt=\deftt \let\tenbf = \defbf \let\tenttsl=\defttsl \bf}
+
+% Fonts for indices, footnotes, small examples (9pt).
+\def\smallnominalsize{9pt}
+\setfont\smallrm\rmshape{9}{1000}{OT1}
+\setfont\smalltt\ttshape{9}{1000}{OT1TT}
+\setfont\smallbf\bfshape{10}{900}{OT1}
+\setfont\smallit\itshape{9}{1000}{OT1IT}
+\setfont\smallsl\slshape{9}{1000}{OT1}
+\setfont\smallsf\sfshape{9}{1000}{OT1}
+\setfont\smallsc\scshape{10}{900}{OT1}
+\setfont\smallttsl\ttslshape{10}{900}{OT1TT}
+\font\smalli=cmmi9
+\font\smallsy=cmsy9
+\def\smallecsize{0900}
+
+% Fonts for small examples (8pt).
+\def\smallernominalsize{8pt}
+\setfont\smallerrm\rmshape{8}{1000}{OT1}
+\setfont\smallertt\ttshape{8}{1000}{OT1TT}
+\setfont\smallerbf\bfshape{10}{800}{OT1}
+\setfont\smallerit\itshape{8}{1000}{OT1IT}
+\setfont\smallersl\slshape{8}{1000}{OT1}
+\setfont\smallersf\sfshape{8}{1000}{OT1}
+\setfont\smallersc\scshape{10}{800}{OT1}
+\setfont\smallerttsl\ttslshape{10}{800}{OT1TT}
+\font\smalleri=cmmi8
+\font\smallersy=cmsy8
+\def\smallerecsize{0800}
+
+% Fonts for title page (20.4pt):
+\def\titlenominalsize{20pt}
+\setfont\titlerm\rmbshape{12}{\magstep3}{OT1}
+\setfont\titleit\itbshape{10}{\magstep4}{OT1IT}
+\setfont\titlesl\slbshape{10}{\magstep4}{OT1}
+\setfont\titlett\ttbshape{12}{\magstep3}{OT1TT}
+\setfont\titlettsl\ttslshape{10}{\magstep4}{OT1TT}
+\setfont\titlesf\sfbshape{17}{\magstep1}{OT1}
+\let\titlebf=\titlerm
+\setfont\titlesc\scbshape{10}{\magstep4}{OT1}
+\font\titlei=cmmi12 scaled \magstep3
+\font\titlesy=cmsy10 scaled \magstep4
+\def\titleecsize{2074}
+
+% Chapter fonts (14.4pt).
+\def\chapnominalsize{14pt}
+\setfont\chaprm\rmbshape{12}{\magstep1}{OT1}
+\setfont\chapit\itbshape{10}{\magstep2}{OT1IT}
+\setfont\chapsl\slbshape{10}{\magstep2}{OT1}
+\setfont\chaptt\ttbshape{12}{\magstep1}{OT1TT}
+\setfont\chapttsl\ttslshape{10}{\magstep2}{OT1TT}
+\setfont\chapsf\sfbshape{12}{\magstep1}{OT1}
+\let\chapbf\chaprm
+\setfont\chapsc\scbshape{10}{\magstep2}{OT1}
+\font\chapi=cmmi12 scaled \magstep1
+\font\chapsy=cmsy10 scaled \magstep2
+\def\chapecsize{1440}
+
+% Section fonts (12pt).
+\def\secnominalsize{12pt}
+\setfont\secrm\rmbshape{12}{1000}{OT1}
+\setfont\secit\itbshape{10}{\magstep1}{OT1IT}
+\setfont\secsl\slbshape{10}{\magstep1}{OT1}
+\setfont\sectt\ttbshape{12}{1000}{OT1TT}
+\setfont\secttsl\ttslshape{10}{\magstep1}{OT1TT}
+\setfont\secsf\sfbshape{12}{1000}{OT1}
+\let\secbf\secrm
+\setfont\secsc\scbshape{10}{\magstep1}{OT1}
+\font\seci=cmmi12
+\font\secsy=cmsy10 scaled \magstep1
+\def\sececsize{1200}
+
+% Subsection fonts (10pt).
+\def\ssecnominalsize{10pt}
+\setfont\ssecrm\rmbshape{10}{1000}{OT1}
+\setfont\ssecit\itbshape{10}{1000}{OT1IT}
+\setfont\ssecsl\slbshape{10}{1000}{OT1}
+\setfont\ssectt\ttbshape{10}{1000}{OT1TT}
+\setfont\ssecttsl\ttslshape{10}{1000}{OT1TT}
+\setfont\ssecsf\sfbshape{10}{1000}{OT1}
+\let\ssecbf\ssecrm
+\setfont\ssecsc\scbshape{10}{1000}{OT1}
+\font\sseci=cmmi10
+\font\ssecsy=cmsy10
+\def\ssececsize{1000}
+
+% Reduced fonts for @acro in text (9pt).
+\def\reducednominalsize{9pt}
+\setfont\reducedrm\rmshape{9}{1000}{OT1}
+\setfont\reducedtt\ttshape{9}{1000}{OT1TT}
+\setfont\reducedbf\bfshape{10}{900}{OT1}
+\setfont\reducedit\itshape{9}{1000}{OT1IT}
+\setfont\reducedsl\slshape{9}{1000}{OT1}
+\setfont\reducedsf\sfshape{9}{1000}{OT1}
+\setfont\reducedsc\scshape{10}{900}{OT1}
+\setfont\reducedttsl\ttslshape{10}{900}{OT1TT}
+\font\reducedi=cmmi9
+\font\reducedsy=cmsy9
+\def\reducedecsize{0900}
+
+% reduce space between paragraphs
+\divide\parskip by 2
+
+% reset the current fonts
+\textfonts
+\rm
+} % end of 10pt text font size definitions
+
+
+% We provide the user-level command
+% @fonttextsize 10
+% (or 11) to redefine the text font size. pt is assumed.
+%
+\def\xword{10}
+\def\xiword{11}
+%
+\parseargdef\fonttextsize{%
+ \def\textsizearg{#1}%
+ \wlog{doing @fonttextsize \textsizearg}%
+ %
+ % Set \globaldefs so that documents can use this inside @tex, since
+ % makeinfo 4.8 does not support it, but we need it nonetheless.
+ %
+ \begingroup \globaldefs=1
+ \ifx\textsizearg\xword \definetextfontsizex
+ \else \ifx\textsizearg\xiword \definetextfontsizexi
+ \else
+ \errhelp=\EMsimple
+ \errmessage{@fonttextsize only supports `10' or `11', not `\textsizearg'}
+ \fi\fi
+ \endgroup
+}
+
+
+% In order for the font changes to affect most math symbols and letters,
+% we have to define the \textfont of the standard families. Since
+% texinfo doesn't allow for producing subscripts and superscripts except
+% in the main text, we don't bother to reset \scriptfont and
+% \scriptscriptfont (which would also require loading a lot more fonts).
+%
+\def\resetmathfonts{%
+ \textfont0=\tenrm \textfont1=\teni \textfont2=\tensy
+ \textfont\itfam=\tenit \textfont\slfam=\tensl \textfont\bffam=\tenbf
+ \textfont\ttfam=\tentt \textfont\sffam=\tensf
+}
+
+% The font-changing commands redefine the meanings of \tenSTYLE, instead
+% of just \STYLE. We do this because \STYLE needs to also set the
+% current \fam for math mode. Our \STYLE (e.g., \rm) commands hardwire
+% \tenSTYLE to set the current font.
+%
+% Each font-changing command also sets the names \lsize (one size lower)
+% and \lllsize (three sizes lower). These relative commands are used in
+% the LaTeX logo and acronyms.
+%
+% This all needs generalizing, badly.
+%
+\def\textfonts{%
+ \let\tenrm=\textrm \let\tenit=\textit \let\tensl=\textsl
+ \let\tenbf=\textbf \let\tentt=\texttt \let\smallcaps=\textsc
+ \let\tensf=\textsf \let\teni=\texti \let\tensy=\textsy
+ \let\tenttsl=\textttsl
+ \def\curfontsize{text}%
+ \def\lsize{reduced}\def\lllsize{smaller}%
+ \resetmathfonts \setleading{\textleading}}
+\def\titlefonts{%
+ \let\tenrm=\titlerm \let\tenit=\titleit \let\tensl=\titlesl
+ \let\tenbf=\titlebf \let\tentt=\titlett \let\smallcaps=\titlesc
+ \let\tensf=\titlesf \let\teni=\titlei \let\tensy=\titlesy
+ \let\tenttsl=\titlettsl
+ \def\curfontsize{title}%
+ \def\lsize{chap}\def\lllsize{subsec}%
+ \resetmathfonts \setleading{25pt}}
+\def\titlefont#1{{\titlefonts\rmisbold #1}}
+\def\chapfonts{%
+ \let\tenrm=\chaprm \let\tenit=\chapit \let\tensl=\chapsl
+ \let\tenbf=\chapbf \let\tentt=\chaptt \let\smallcaps=\chapsc
+ \let\tensf=\chapsf \let\teni=\chapi \let\tensy=\chapsy
+ \let\tenttsl=\chapttsl
+ \def\curfontsize{chap}%
+ \def\lsize{sec}\def\lllsize{text}%
+ \resetmathfonts \setleading{19pt}}
+\def\secfonts{%
+ \let\tenrm=\secrm \let\tenit=\secit \let\tensl=\secsl
+ \let\tenbf=\secbf \let\tentt=\sectt \let\smallcaps=\secsc
+ \let\tensf=\secsf \let\teni=\seci \let\tensy=\secsy
+ \let\tenttsl=\secttsl
+ \def\curfontsize{sec}%
+ \def\lsize{subsec}\def\lllsize{reduced}%
+ \resetmathfonts \setleading{16pt}}
+\def\subsecfonts{%
+ \let\tenrm=\ssecrm \let\tenit=\ssecit \let\tensl=\ssecsl
+ \let\tenbf=\ssecbf \let\tentt=\ssectt \let\smallcaps=\ssecsc
+ \let\tensf=\ssecsf \let\teni=\sseci \let\tensy=\ssecsy
+ \let\tenttsl=\ssecttsl
+ \def\curfontsize{ssec}%
+ \def\lsize{text}\def\lllsize{small}%
+ \resetmathfonts \setleading{15pt}}
+\let\subsubsecfonts = \subsecfonts
+\def\reducedfonts{%
+ \let\tenrm=\reducedrm \let\tenit=\reducedit \let\tensl=\reducedsl
+ \let\tenbf=\reducedbf \let\tentt=\reducedtt \let\reducedcaps=\reducedsc
+ \let\tensf=\reducedsf \let\teni=\reducedi \let\tensy=\reducedsy
+ \let\tenttsl=\reducedttsl
+ \def\curfontsize{reduced}%
+ \def\lsize{small}\def\lllsize{smaller}%
+ \resetmathfonts \setleading{10.5pt}}
+\def\smallfonts{%
+ \let\tenrm=\smallrm \let\tenit=\smallit \let\tensl=\smallsl
+ \let\tenbf=\smallbf \let\tentt=\smalltt \let\smallcaps=\smallsc
+ \let\tensf=\smallsf \let\teni=\smalli \let\tensy=\smallsy
+ \let\tenttsl=\smallttsl
+ \def\curfontsize{small}%
+ \def\lsize{smaller}\def\lllsize{smaller}%
+ \resetmathfonts \setleading{10.5pt}}
+\def\smallerfonts{%
+ \let\tenrm=\smallerrm \let\tenit=\smallerit \let\tensl=\smallersl
+ \let\tenbf=\smallerbf \let\tentt=\smallertt \let\smallcaps=\smallersc
+ \let\tensf=\smallersf \let\teni=\smalleri \let\tensy=\smallersy
+ \let\tenttsl=\smallerttsl
+ \def\curfontsize{smaller}%
+ \def\lsize{smaller}\def\lllsize{smaller}%
+ \resetmathfonts \setleading{9.5pt}}
+
+% Fonts for short table of contents.
+\setfont\shortcontrm\rmshape{12}{1000}{OT1}
+\setfont\shortcontbf\bfshape{10}{\magstep1}{OT1} % no cmb12
+\setfont\shortcontsl\slshape{12}{1000}{OT1}
+\setfont\shortconttt\ttshape{12}{1000}{OT1TT}
+
+% Define these just so they can be easily changed for other fonts.
+\def\angleleft{$\langle$}
+\def\angleright{$\rangle$}
+
+% Set the fonts to use with the @small... environments.
+\let\smallexamplefonts = \smallfonts
+
+% About \smallexamplefonts. If we use \smallfonts (9pt), @smallexample
+% can fit this many characters:
+% 8.5x11=86 smallbook=72 a4=90 a5=69
+% If we use \scriptfonts (8pt), then we can fit this many characters:
+% 8.5x11=90+ smallbook=80 a4=90+ a5=77
+% For me, subjectively, the few extra characters that fit aren't worth
+% the additional smallness of 8pt. So I'm making the default 9pt.
+%
+% By the way, for comparison, here's what fits with @example (10pt):
+% 8.5x11=71 smallbook=60 a4=75 a5=58
+% --karl, 24jan03.
+
+% Set up the default fonts, so we can use them for creating boxes.
+%
+\definetextfontsizexi
+
+
+\message{markup,}
+
+% Check if we are currently using a typewriter font. Since all the
+% Computer Modern typewriter fonts have zero interword stretch (and
+% shrink), and it is reasonable to expect all typewriter fonts to have
+% this property, we can check that font parameter.
+%
+\def\ifmonospace{\ifdim\fontdimen3\font=0pt }
+
+% Markup style infrastructure. \defmarkupstylesetup\INITMACRO will
+% define and register \INITMACRO to be called on markup style changes.
+% \INITMACRO can check \currentmarkupstyle for the innermost
+% style and the set of \ifmarkupSTYLE switches for all styles
+% currently in effect.
+\newif\ifmarkupvar
+\newif\ifmarkupsamp
+\newif\ifmarkupkey
+%\newif\ifmarkupfile % @file == @samp.
+%\newif\ifmarkupoption % @option == @samp.
+\newif\ifmarkupcode
+\newif\ifmarkupkbd
+%\newif\ifmarkupenv % @env == @code.
+%\newif\ifmarkupcommand % @command == @code.
+\newif\ifmarkuptex % @tex (and part of @math, for now).
+\newif\ifmarkupexample
+\newif\ifmarkupverb
+\newif\ifmarkupverbatim
+
+\let\currentmarkupstyle\empty
+
+\def\setupmarkupstyle#1{%
+ \csname markup#1true\endcsname
+ \def\currentmarkupstyle{#1}%
+ \markupstylesetup
+}
+
+\let\markupstylesetup\empty
+
+\def\defmarkupstylesetup#1{%
+ \expandafter\def\expandafter\markupstylesetup
+ \expandafter{\markupstylesetup #1}%
+ \def#1%
+}
+
+% Markup style setup for left and right quotes.
+\defmarkupstylesetup\markupsetuplq{%
+ \expandafter\let\expandafter \temp \csname markupsetuplq\currentmarkupstyle\endcsname
+ \ifx\temp\relax \markupsetuplqdefault \else \temp \fi
+}
+
+\defmarkupstylesetup\markupsetuprq{%
+ \expandafter\let\expandafter \temp \csname markupsetuprq\currentmarkupstyle\endcsname
+ \ifx\temp\relax \markupsetuprqdefault \else \temp \fi
+}
+
+{
+\catcode`\'=\active
+\catcode`\`=\active
+
+\gdef\markupsetuplqdefault{\let`\lq}
+\gdef\markupsetuprqdefault{\let'\rq}
+
+\gdef\markupsetcodequoteleft{\let`\codequoteleft}
+\gdef\markupsetcodequoteright{\let'\codequoteright}
+
+\gdef\markupsetnoligaturesquoteleft{\let`\noligaturesquoteleft}
+}
+
+\let\markupsetuplqcode \markupsetcodequoteleft
+\let\markupsetuprqcode \markupsetcodequoteright
+\let\markupsetuplqexample \markupsetcodequoteleft
+\let\markupsetuprqexample \markupsetcodequoteright
+\let\markupsetuplqverb \markupsetcodequoteleft
+\let\markupsetuprqverb \markupsetcodequoteright
+\let\markupsetuplqverbatim \markupsetcodequoteleft
+\let\markupsetuprqverbatim \markupsetcodequoteright
+
+\let\markupsetuplqsamp \markupsetnoligaturesquoteleft
+\let\markupsetuplqkbd \markupsetnoligaturesquoteleft
+
+% Allow an option to not replace quotes with a regular directed right
+% quote/apostrophe (char 0x27), but instead use the undirected quote
+% from cmtt (char 0x0d). The undirected quote is ugly, so don't make it
+% the default, but it works for pasting with more pdf viewers (at least
+% evince), the lilypond developers report. xpdf does work with the
+% regular 0x27.
+%
+\def\codequoteright{%
+ \expandafter\ifx\csname SETtxicodequoteundirected\endcsname\relax
+ \expandafter\ifx\csname SETcodequoteundirected\endcsname\relax
+ '%
+ \else \char'15 \fi
+ \else \char'15 \fi
+}
+%
+% and a similar option for the left quote char vs. a grave accent.
+% Modern fonts display ASCII 0x60 as a grave accent, so some people like
+% the code environments to do likewise.
+%
+\def\codequoteleft{%
+ \expandafter\ifx\csname SETtxicodequotebacktick\endcsname\relax
+ \expandafter\ifx\csname SETcodequotebacktick\endcsname\relax
+ % [Knuth] pp. 380,381,391
+ % \relax disables Spanish ligatures ?` and !` of \tt font.
+ \relax`%
+ \else \char'22 \fi
+ \else \char'22 \fi
+}
+
+% [Knuth] pp. 380,381,391, disable Spanish ligatures ?` and !` of \tt font.
+\def\noligaturesquoteleft{\relax\lq}
+
+% Count depth in font-changes, for error checks
+\newcount\fontdepth \fontdepth=0
+
+%% Add scribe-like font environments, plus @l for inline lisp (usually sans
+%% serif) and @ii for TeX italic
+
+% \smartitalic{ARG} outputs arg in italics, followed by an italic correction
+% unless the following character is such as not to need one.
+\def\smartitalicx{\ifx\next,\else\ifx\next-\else\ifx\next.\else
+ \ptexslash\fi\fi\fi}
+\def\smartslanted#1{{\ifusingtt\ttsl\sl #1}\futurelet\next\smartitalicx}
+\def\smartitalic#1{{\ifusingtt\ttsl\it #1}\futurelet\next\smartitalicx}
+
+% like \smartslanted except unconditionally uses \ttsl.
+% @var is set to this for defun arguments.
+\def\ttslanted#1{{\ttsl #1}\futurelet\next\smartitalicx}
+
+% @cite is like \smartslanted except unconditionally use \sl. We never want
+% ttsl for book titles, do we?
+\def\cite#1{{\sl #1}\futurelet\next\smartitalicx}
+
+\let\i=\smartitalic
+\let\slanted=\smartslanted
+\def\var#1{{\setupmarkupstyle{var}\smartslanted{#1}}}
+\let\dfn=\smartslanted
+\let\emph=\smartitalic
+
+% Explicit font changes: @r, @sc, undocumented @ii.
+\def\r#1{{\rm #1}} % roman font
+\def\sc#1{{\smallcaps#1}} % smallcaps font
+\def\ii#1{{\it #1}} % italic font
+
+% @b, explicit bold. Also @strong.
+\def\b#1{{\bf #1}}
+\let\strong=\b
+
+% @sansserif, explicit sans.
+\def\sansserif#1{{\sf #1}}
+
+% We can't just use \exhyphenpenalty, because that only has effect at
+% the end of a paragraph. Restore normal hyphenation at the end of the
+% group within which \nohyphenation is presumably called.
+%
+\def\nohyphenation{\hyphenchar\font = -1 \aftergroup\restorehyphenation}
+\def\restorehyphenation{\hyphenchar\font = `- }
+
+% Set sfcode to normal for the chars that usually have another value.
+% Can't use plain's \frenchspacing because it uses the `\x notation, and
+% sometimes \x has an active definition that messes things up.
+%
+\catcode`@=11
+ \def\plainfrenchspacing{%
+ \sfcode\dotChar =\@m \sfcode\questChar=\@m \sfcode\exclamChar=\@m
+ \sfcode\colonChar=\@m \sfcode\semiChar =\@m \sfcode\commaChar =\@m
+ \def\endofsentencespacefactor{1000}% for @. and friends
+ }
+ \def\plainnonfrenchspacing{%
+ \sfcode`\.3000\sfcode`\?3000\sfcode`\!3000
+ \sfcode`\:2000\sfcode`\;1500\sfcode`\,1250
+ \def\endofsentencespacefactor{3000}% for @. and friends
+ }
+\catcode`@=\other
+\def\endofsentencespacefactor{3000}% default
+
+% @t, explicit typewriter.
+\def\t#1{%
+ {\tt \rawbackslash \plainfrenchspacing #1}%
+ \null
+}
+
+% @samp.
+\def\samp#1{{\setupmarkupstyle{samp}\lq\tclose{#1}\rq\null}}
+
+% definition of @key that produces a lozenge. Doesn't adjust to text size.
+%\setfont\keyrm\rmshape{8}{1000}{OT1}
+%\font\keysy=cmsy9
+%\def\key#1{{\keyrm\textfont2=\keysy \leavevmode\hbox{%
+% \raise0.4pt\hbox{\angleleft}\kern-.08em\vtop{%
+% \vbox{\hrule\kern-0.4pt
+% \hbox{\raise0.4pt\hbox{\vphantom{\angleleft}}#1}}%
+% \kern-0.4pt\hrule}%
+% \kern-.06em\raise0.4pt\hbox{\angleright}}}}
+
+% definition of @key with no lozenge. If the current font is already
+% monospace, don't change it; that way, we respect @kbdinputstyle. But
+% if it isn't monospace, then use \tt.
+%
+\def\key#1{{\setupmarkupstyle{key}%
+ \nohyphenation
+ \ifmonospace\else\tt\fi
+ #1}\null}
+
+% ctrl is no longer a Texinfo command.
+\def\ctrl #1{{\tt \rawbackslash \hat}#1}
+
+% @file, @option are the same as @samp.
+\let\file=\samp
+\let\option=\samp
+
+% @code is a modification of @t,
+% which makes spaces the same size as normal in the surrounding text.
+\def\tclose#1{%
+ {%
+ % Change normal interword space to be same as for the current font.
+ \spaceskip = \fontdimen2\font
+ %
+ % Switch to typewriter.
+ \tt
+ %
+ % But `\ ' produces the large typewriter interword space.
+ \def\ {{\spaceskip = 0pt{} }}%
+ %
+ % Turn off hyphenation.
+ \nohyphenation
+ %
+ \rawbackslash
+ \plainfrenchspacing
+ #1%
+ }%
+ \null
+}
+
+% We *must* turn on hyphenation at `-' and `_' in @code.
+% Otherwise, it is too hard to avoid overfull hboxes
+% in the Emacs manual, the Library manual, etc.
+
+% Unfortunately, TeX uses one parameter (\hyphenchar) to control
+% both hyphenation at - and hyphenation within words.
+% We must therefore turn them both off (\tclose does that)
+% and arrange explicitly to hyphenate at a dash.
+% -- rms.
+{
+ \catcode`\-=\active \catcode`\_=\active
+ \catcode`\'=\active \catcode`\`=\active
+ \global\let'=\rq \global\let`=\lq % default definitions
+ %
+ \global\def\code{\begingroup
+ \setupmarkupstyle{code}%
+ % The following should really be moved into \setupmarkupstyle handlers.
+ \catcode\dashChar=\active \catcode\underChar=\active
+ \ifallowcodebreaks
+ \let-\codedash
+ \let_\codeunder
+ \else
+ \let-\realdash
+ \let_\realunder
+ \fi
+ \codex
+ }
+}
+
+\def\realdash{-}
+\def\codedash{-\discretionary{}{}{}}
+\def\codeunder{%
+ % this is all so @math{@code{var_name}+1} can work. In math mode, _
+ % is "active" (mathcode"8000) and \normalunderscore (or \char95, etc.)
+ % will therefore expand the active definition of _, which is us
+ % (inside @code that is), therefore an endless loop.
+ \ifusingtt{\ifmmode
+ \mathchar"075F % class 0=ordinary, family 7=ttfam, pos 0x5F=_.
+ \else\normalunderscore \fi
+ \discretionary{}{}{}}%
+ {\_}%
+}
+\def\codex #1{\tclose{#1}\endgroup}
+
+% An additional complication: the above will allow breaks after, e.g.,
+% each of the four underscores in __typeof__. This is undesirable in
+% some manuals, especially if they don't have long identifiers in
+% general. @allowcodebreaks provides a way to control this.
+%
+\newif\ifallowcodebreaks \allowcodebreakstrue
+
+\def\keywordtrue{true}
+\def\keywordfalse{false}
+
+\parseargdef\allowcodebreaks{%
+ \def\txiarg{#1}%
+ \ifx\txiarg\keywordtrue
+ \allowcodebreakstrue
+ \else\ifx\txiarg\keywordfalse
+ \allowcodebreaksfalse
+ \else
+ \errhelp = \EMsimple
+ \errmessage{Unknown @allowcodebreaks option `\txiarg'}%
+ \fi\fi
+}
+
+% @kbd is like @code, except that if the argument is just one @key command,
+% then @kbd has no effect.
+\def\kbd#1{{\setupmarkupstyle{kbd}\def\look{#1}\expandafter\kbdfoo\look??\par}}
+
+% @kbdinputstyle -- arg is `distinct' (@kbd uses slanted tty font always),
+% `example' (@kbd uses ttsl only inside of @example and friends),
+% or `code' (@kbd uses normal tty font always).
+\parseargdef\kbdinputstyle{%
+ \def\txiarg{#1}%
+ \ifx\txiarg\worddistinct
+ \gdef\kbdexamplefont{\ttsl}\gdef\kbdfont{\ttsl}%
+ \else\ifx\txiarg\wordexample
+ \gdef\kbdexamplefont{\ttsl}\gdef\kbdfont{\tt}%
+ \else\ifx\txiarg\wordcode
+ \gdef\kbdexamplefont{\tt}\gdef\kbdfont{\tt}%
+ \else
+ \errhelp = \EMsimple
+ \errmessage{Unknown @kbdinputstyle option `\txiarg'}%
+ \fi\fi\fi
+}
+\def\worddistinct{distinct}
+\def\wordexample{example}
+\def\wordcode{code}
+
+% Default is `distinct'.
+\kbdinputstyle distinct
+
+\def\xkey{\key}
+\def\kbdfoo#1#2#3\par{\def\one{#1}\def\three{#3}\def\threex{??}%
+\ifx\one\xkey\ifx\threex\three \key{#2}%
+\else{\tclose{\kbdfont\setupmarkupstyle{kbd}\look}}\fi
+\else{\tclose{\kbdfont\setupmarkupstyle{kbd}\look}}\fi}
+
+% For @indicateurl, @env, @command quotes seem unnecessary, so use \code.
+\let\indicateurl=\code
+\let\env=\code
+\let\command=\code
+
+% @clicksequence{File @click{} Open ...}
+\def\clicksequence#1{\begingroup #1\endgroup}
+
+% @clickstyle @arrow (by default)
+\parseargdef\clickstyle{\def\click{#1}}
+\def\click{\arrow}
+
+% @uref (abbreviation for `urlref') takes an optional (comma-separated)
+% second argument specifying the text to display and an optional third
+% arg as text to display instead of (rather than in addition to) the url
+% itself. First (mandatory) arg is the url. Perhaps eventually put in
+% a hypertex \special here.
+%
+\def\uref#1{\douref #1,,,\finish}
+\def\douref#1,#2,#3,#4\finish{\begingroup
+ \unsepspaces
+ \pdfurl{#1}%
+ \setbox0 = \hbox{\ignorespaces #3}%
+ \ifdim\wd0 > 0pt
+ \unhbox0 % third arg given, show only that
+ \else
+ \setbox0 = \hbox{\ignorespaces #2}%
+ \ifdim\wd0 > 0pt
+ \ifpdf
+ \unhbox0 % PDF: 2nd arg given, show only it
+ \else
+ \unhbox0\ (\code{#1})% DVI: 2nd arg given, show both it and url
+ \fi
+ \else
+ \code{#1}% only url given, so show it
+ \fi
+ \fi
+ \endlink
+\endgroup}
+
+% @url synonym for @uref, since that's how everyone uses it.
+%
+\let\url=\uref
+
+% rms does not like angle brackets --karl, 17may97.
+% So now @email is just like @uref, unless we are pdf.
+%
+%\def\email#1{\angleleft{\tt #1}\angleright}
+\ifpdf
+ \def\email#1{\doemail#1,,\finish}
+ \def\doemail#1,#2,#3\finish{\begingroup
+ \unsepspaces
+ \pdfurl{mailto:#1}%
+ \setbox0 = \hbox{\ignorespaces #2}%
+ \ifdim\wd0>0pt\unhbox0\else\code{#1}\fi
+ \endlink
+ \endgroup}
+\else
+ \let\email=\uref
+\fi
+
+% Typeset a dimension, e.g., `in' or `pt'. The only reason for the
+% argument is to make the input look right: @dmn{pt} instead of @dmn{}pt.
+%
+\def\dmn#1{\thinspace #1}
+
+% @l was never documented to mean ``switch to the Lisp font'',
+% and it is not used as such in any manual I can find. We need it for
+% Polish suppressed-l. --karl, 22sep96.
+%\def\l#1{{\li #1}\null}
+
+% @acronym for "FBI", "NATO", and the like.
+% We print this one point size smaller, since it's intended for
+% all-uppercase.
+%
+\def\acronym#1{\doacronym #1,,\finish}
+\def\doacronym#1,#2,#3\finish{%
+ {\selectfonts\lsize #1}%
+ \def\temp{#2}%
+ \ifx\temp\empty \else
+ \space ({\unsepspaces \ignorespaces \temp \unskip})%
+ \fi
+}
+
+% @abbr for "Comput. J." and the like.
+% No font change, but don't do end-of-sentence spacing.
+%
+\def\abbr#1{\doabbr #1,,\finish}
+\def\doabbr#1,#2,#3\finish{%
+ {\plainfrenchspacing #1}%
+ \def\temp{#2}%
+ \ifx\temp\empty \else
+ \space ({\unsepspaces \ignorespaces \temp \unskip})%
+ \fi
+}
+
+
+\message{glyphs,}
+
+% @point{}, @result{}, @expansion{}, @print{}, @equiv{}.
+%
+% Since these characters are used in examples, they should be an even number of
+% \tt widths. Each \tt character is 1en, so two makes it 1em.
+%
+\def\point{$\star$}
+\def\arrow{\leavevmode\raise.05ex\hbox to 1em{\hfil$\rightarrow$\hfil}}
+\def\result{\leavevmode\raise.05ex\hbox to 1em{\hfil$\Rightarrow$\hfil}}
+\def\expansion{\leavevmode\hbox to 1em{\hfil$\mapsto$\hfil}}
+\def\print{\leavevmode\lower.1ex\hbox to 1em{\hfil$\dashv$\hfil}}
+\def\equiv{\leavevmode\hbox to 1em{\hfil$\ptexequiv$\hfil}}
+
+% The @error{} command.
+% Adapted from the TeXbook's \boxit.
+%
+\newbox\errorbox
+%
+{\tentt \global\dimen0 = 3em}% Width of the box.
+\dimen2 = .55pt % Thickness of rules
+% The text. (`r' is open on the right, `e' somewhat less so on the left.)
+\setbox0 = \hbox{\kern-.75pt \reducedsf error\kern-1.5pt}
+%
+\setbox\errorbox=\hbox to \dimen0{\hfil
+ \hsize = \dimen0 \advance\hsize by -5.8pt % Space to left+right.
+ \advance\hsize by -2\dimen2 % Rules.
+ \vbox{%
+ \hrule height\dimen2
+ \hbox{\vrule width\dimen2 \kern3pt % Space to left of text.
+ \vtop{\kern2.4pt \box0 \kern2.4pt}% Space above/below.
+ \kern3pt\vrule width\dimen2}% Space to right.
+ \hrule height\dimen2}
+ \hfil}
+%
+\def\error{\leavevmode\lower.7ex\copy\errorbox}
+
+% @pounds{} is a sterling sign, which Knuth put in the CM italic font.
+%
+\def\pounds{{\it\$}}
+
+% @euro{} comes from a separate font, depending on the current style.
+% We use the free feym* fonts from the eurosym package by Henrik
+% Theiling, which support regular, slanted, bold and bold slanted (and
+% "outlined" (blackboard board, sort of) versions, which we don't need).
+% It is available from http://www.ctan.org/tex-archive/fonts/eurosym.
+%
+% Although only regular is the truly official Euro symbol, we ignore
+% that. The Euro is designed to be slightly taller than the regular
+% font height.
+%
+% feymr - regular
+% feymo - slanted
+% feybr - bold
+% feybo - bold slanted
+%
+% There is no good (free) typewriter version, to my knowledge.
+% A feymr10 euro is ~7.3pt wide, while a normal cmtt10 char is ~5.25pt wide.
+% Hmm.
+%
+% Also doesn't work in math. Do we need to do math with euro symbols?
+% Hope not.
+%
+%
+\def\euro{{\eurofont e}}
+\def\eurofont{%
+ % We set the font at each command, rather than predefining it in
+ % \textfonts and the other font-switching commands, so that
+ % installations which never need the symbol don't have to have the
+ % font installed.
+ %
+ % There is only one designed size (nominal 10pt), so we always scale
+ % that to the current nominal size.
+ %
+ % By the way, simply using "at 1em" works for cmr10 and the like, but
+ % does not work for cmbx10 and other extended/shrunken fonts.
+ %
+ \def\eurosize{\csname\curfontsize nominalsize\endcsname}%
+ %
+ \ifx\curfontstyle\bfstylename
+ % bold:
+ \font\thiseurofont = \ifusingit{feybo10}{feybr10} at \eurosize
+ \else
+ % regular:
+ \font\thiseurofont = \ifusingit{feymo10}{feymr10} at \eurosize
+ \fi
+ \thiseurofont
+}
+
+% Hacks for glyphs from the EC fonts similar to \euro. We don't
+% use \let for the aliases, because sometimes we redefine the original
+% macro, and the alias should reflect the redefinition.
+\def\guillemetleft{{\ecfont \char"13}}
+\def\guillemotleft{\guillemetleft}
+\def\guillemetright{{\ecfont \char"14}}
+\def\guillemotright{\guillemetright}
+\def\guilsinglleft{{\ecfont \char"0E}}
+\def\guilsinglright{{\ecfont \char"0F}}
+\def\quotedblbase{{\ecfont \char"12}}
+\def\quotesinglbase{{\ecfont \char"0D}}
+%
+% This positioning is not perfect (see the ogonek LaTeX package), but
+% we have the precomposed glyphs for the most common cases. We put the
+% tests to use those glyphs in the single \ogonek macro so we have fewer
+% dummy definitions to worry about for index entries, etc.
+%
+% ogonek is also used with other letters in Lithuanian (IOU), but using
+% the precomposed glyphs for those is not so easy since they aren't in
+% the same EC font.
+\def\ogonek#1{{%
+ \def\temp{#1}%
+ \ifx\temp\macrocharA\Aogonek
+ \else\ifx\temp\macrochara\aogonek
+ \else\ifx\temp\macrocharE\Eogonek
+ \else\ifx\temp\macrochare\eogonek
+ \else
+ \ecfont \setbox0=\hbox{#1}%
+ \ifdim\ht0=1ex\accent"0C #1%
+ \else\ooalign{\unhbox0\crcr\hidewidth\char"0C \hidewidth}%
+ \fi
+ \fi\fi\fi\fi
+ }%
+}
+\def\Aogonek{{\ecfont \char"81}}\def\macrocharA{A}
+\def\aogonek{{\ecfont \char"A1}}\def\macrochara{a}
+\def\Eogonek{{\ecfont \char"86}}\def\macrocharE{E}
+\def\eogonek{{\ecfont \char"A6}}\def\macrochare{e}
+%
+\def\ecfont{%
+ % We can't distinguish serif/sans and italic/slanted, but this
+ % is used for crude hacks anyway (like adding French and German
+ % quotes to documents typeset with CM, where we lose kerning), so
+ % hopefully nobody will notice/care.
+ \edef\ecsize{\csname\curfontsize ecsize\endcsname}%
+ \edef\nominalsize{\csname\curfontsize nominalsize\endcsname}%
+ \ifx\curfontstyle\bfstylename
+ % bold:
+ \font\thisecfont = ecb\ifusingit{i}{x}\ecsize \space at \nominalsize
+ \else
+ % regular:
+ \font\thisecfont = ec\ifusingit{ti}{rm}\ecsize \space at \nominalsize
+ \fi
+ \thisecfont
+}
+
+% @registeredsymbol - R in a circle. The font for the R should really
+% be smaller yet, but lllsize is the best we can do for now.
+% Adapted from the plain.tex definition of \copyright.
+%
+\def\registeredsymbol{%
+ $^{{\ooalign{\hfil\raise.07ex\hbox{\selectfonts\lllsize R}%
+ \hfil\crcr\Orb}}%
+ }$%
+}
+
+% @textdegree - the normal degrees sign.
+%
+\def\textdegree{$^\circ$}
+
+% Laurent Siebenmann reports \Orb undefined with:
+% Textures 1.7.7 (preloaded format=plain 93.10.14) (68K) 16 APR 2004 02:38
+% so we'll define it if necessary.
+%
+\ifx\Orb\undefined
+\def\Orb{\mathhexbox20D}
+\fi
+
+% Quotes.
+\chardef\quotedblleft="5C
+\chardef\quotedblright=`\"
+\chardef\quoteleft=`\`
+\chardef\quoteright=`\'
+
+
+\message{page headings,}
+
+\newskip\titlepagetopglue \titlepagetopglue = 1.5in
+\newskip\titlepagebottomglue \titlepagebottomglue = 2pc
+
+% First the title page. Must do @settitle before @titlepage.
+\newif\ifseenauthor
+\newif\iffinishedtitlepage
+
+% Do an implicit @contents or @shortcontents after @end titlepage if the
+% user says @setcontentsaftertitlepage or @setshortcontentsaftertitlepage.
+%
+\newif\ifsetcontentsaftertitlepage
+ \let\setcontentsaftertitlepage = \setcontentsaftertitlepagetrue
+\newif\ifsetshortcontentsaftertitlepage
+ \let\setshortcontentsaftertitlepage = \setshortcontentsaftertitlepagetrue
+
+\parseargdef\shorttitlepage{\begingroup\hbox{}\vskip 1.5in \chaprm \centerline{#1}%
+ \endgroup\page\hbox{}\page}
+
+\envdef\titlepage{%
+ % Open one extra group, as we want to close it in the middle of \Etitlepage.
+ \begingroup
+ \parindent=0pt \textfonts
+ % Leave some space at the very top of the page.
+ \vglue\titlepagetopglue
+ % No rule at page bottom unless we print one at the top with @title.
+ \finishedtitlepagetrue
+ %
+ % Most title ``pages'' are actually two pages long, with space
+ % at the top of the second. We don't want the ragged left on the second.
+ \let\oldpage = \page
+ \def\page{%
+ \iffinishedtitlepage\else
+ \finishtitlepage
+ \fi
+ \let\page = \oldpage
+ \page
+ \null
+ }%
+}
+
+\def\Etitlepage{%
+ \iffinishedtitlepage\else
+ \finishtitlepage
+ \fi
+ % It is important to do the page break before ending the group,
+ % because the headline and footline are only empty inside the group.
+ % If we use the new definition of \page, we always get a blank page
+ % after the title page, which we certainly don't want.
+ \oldpage
+ \endgroup
+ %
+ % Need this before the \...aftertitlepage checks so that if they are
+ % in effect the toc pages will come out with page numbers.
+ \HEADINGSon
+ %
+ % If they want short, they certainly want long too.
+ \ifsetshortcontentsaftertitlepage
+ \shortcontents
+ \contents
+ \global\let\shortcontents = \relax
+ \global\let\contents = \relax
+ \fi
+ %
+ \ifsetcontentsaftertitlepage
+ \contents
+ \global\let\contents = \relax
+ \global\let\shortcontents = \relax
+ \fi
+}
+
+\def\finishtitlepage{%
+ \vskip4pt \hrule height 2pt width \hsize
+ \vskip\titlepagebottomglue
+ \finishedtitlepagetrue
+}
+
+%%% Macros to be used within @titlepage:
+
+\let\subtitlerm=\tenrm
+\def\subtitlefont{\subtitlerm \normalbaselineskip = 13pt \normalbaselines}
+
+\parseargdef\title{%
+ \checkenv\titlepage
+ \leftline{\titlefonts\rmisbold #1}
+ % print a rule at the page bottom also.
+ \finishedtitlepagefalse
+ \vskip4pt \hrule height 4pt width \hsize \vskip4pt
+}
+
+\parseargdef\subtitle{%
+ \checkenv\titlepage
+ {\subtitlefont \rightline{#1}}%
+}
+
+% @author should come last, but may come many times.
+% It can also be used inside @quotation.
+%
+\parseargdef\author{%
+ \def\temp{\quotation}%
+ \ifx\thisenv\temp
+ \def\quotationauthor{#1}% printed in \Equotation.
+ \else
+ \checkenv\titlepage
+ \ifseenauthor\else \vskip 0pt plus 1filll \seenauthortrue \fi
+ {\secfonts\rmisbold \leftline{#1}}%
+ \fi
+}
+
+
+%%% Set up page headings and footings.
+
+\let\thispage=\folio
+
+\newtoks\evenheadline % headline on even pages
+\newtoks\oddheadline % headline on odd pages
+\newtoks\evenfootline % footline on even pages
+\newtoks\oddfootline % footline on odd pages
+
+% Now make TeX use those variables
+\headline={{\textfonts\rm \ifodd\pageno \the\oddheadline
+ \else \the\evenheadline \fi}}
+\footline={{\textfonts\rm \ifodd\pageno \the\oddfootline
+ \else \the\evenfootline \fi}\HEADINGShook}
+\let\HEADINGShook=\relax
+
+% Commands to set those variables.
+% For example, this is what @headings on does
+% @evenheading @thistitle|@thispage|@thischapter
+% @oddheading @thischapter|@thispage|@thistitle
+% @evenfooting @thisfile||
+% @oddfooting ||@thisfile
+
+
+\def\evenheading{\parsearg\evenheadingxxx}
+\def\evenheadingxxx #1{\evenheadingyyy #1\|\|\|\|\finish}
+\def\evenheadingyyy #1\|#2\|#3\|#4\finish{%
+\global\evenheadline={\rlap{\centerline{#2}}\line{#1\hfil#3}}}
+
+\def\oddheading{\parsearg\oddheadingxxx}
+\def\oddheadingxxx #1{\oddheadingyyy #1\|\|\|\|\finish}
+\def\oddheadingyyy #1\|#2\|#3\|#4\finish{%
+\global\oddheadline={\rlap{\centerline{#2}}\line{#1\hfil#3}}}
+
+\parseargdef\everyheading{\oddheadingxxx{#1}\evenheadingxxx{#1}}%
+
+\def\evenfooting{\parsearg\evenfootingxxx}
+\def\evenfootingxxx #1{\evenfootingyyy #1\|\|\|\|\finish}
+\def\evenfootingyyy #1\|#2\|#3\|#4\finish{%
+\global\evenfootline={\rlap{\centerline{#2}}\line{#1\hfil#3}}}
+
+\def\oddfooting{\parsearg\oddfootingxxx}
+\def\oddfootingxxx #1{\oddfootingyyy #1\|\|\|\|\finish}
+\def\oddfootingyyy #1\|#2\|#3\|#4\finish{%
+ \global\oddfootline = {\rlap{\centerline{#2}}\line{#1\hfil#3}}%
+ %
+ % Leave some space for the footline. Hopefully ok to assume
+ % @evenfooting will not be used by itself.
+ \global\advance\pageheight by -12pt
+ \global\advance\vsize by -12pt
+}
+
+\parseargdef\everyfooting{\oddfootingxxx{#1}\evenfootingxxx{#1}}
+
+% @evenheadingmarks top \thischapter <- chapter at the top of a page
+% @evenheadingmarks bottom \thischapter <- chapter at the bottom of a page
+%
+% The same set of arguments for:
+%
+% @oddheadingmarks
+% @evenfootingmarks
+% @oddfootingmarks
+% @everyheadingmarks
+% @everyfootingmarks
+
+\def\evenheadingmarks{\headingmarks{even}{heading}}
+\def\oddheadingmarks{\headingmarks{odd}{heading}}
+\def\evenfootingmarks{\headingmarks{even}{footing}}
+\def\oddfootingmarks{\headingmarks{odd}{footing}}
+\def\everyheadingmarks#1 {\headingmarks{even}{heading}{#1}
+ \headingmarks{odd}{heading}{#1} }
+\def\everyfootingmarks#1 {\headingmarks{even}{footing}{#1}
+ \headingmarks{odd}{footing}{#1} }
+% #1 = even/odd, #2 = heading/footing, #3 = top/bottom.
+\def\headingmarks#1#2#3 {%
+ \expandafter\let\expandafter\temp \csname get#3headingmarks\endcsname
+ \global\expandafter\let\csname get#1#2marks\endcsname \temp
+}
+
+\everyheadingmarks bottom
+\everyfootingmarks bottom
+
+% @headings double turns headings on for double-sided printing.
+% @headings single turns headings on for single-sided printing.
+% @headings off turns them off.
+% @headings on same as @headings double, retained for compatibility.
+% @headings after turns on double-sided headings after this page.
+% @headings doubleafter turns on double-sided headings after this page.
+% @headings singleafter turns on single-sided headings after this page.
+% By default, they are off at the start of a document,
+% and turned `on' after @end titlepage.
+
+\def\headings #1 {\csname HEADINGS#1\endcsname}
+
+\def\HEADINGSoff{%
+\global\evenheadline={\hfil} \global\evenfootline={\hfil}
+\global\oddheadline={\hfil} \global\oddfootline={\hfil}}
+\HEADINGSoff
+% When we turn headings on, set the page number to 1.
+% For double-sided printing, put current file name in lower left corner,
+% chapter name on inside top of right hand pages, document
+% title on inside top of left hand pages, and page numbers on outside top
+% edge of all pages.
+\def\HEADINGSdouble{%
+\global\pageno=1
+\global\evenfootline={\hfil}
+\global\oddfootline={\hfil}
+\global\evenheadline={\line{\folio\hfil\thistitle}}
+\global\oddheadline={\line{\thischapter\hfil\folio}}
+\global\let\contentsalignmacro = \chapoddpage
+}
+\let\contentsalignmacro = \chappager
+
+% For single-sided printing, chapter title goes across top left of page,
+% page number on top right.
+\def\HEADINGSsingle{%
+\global\pageno=1
+\global\evenfootline={\hfil}
+\global\oddfootline={\hfil}
+\global\evenheadline={\line{\thischapter\hfil\folio}}
+\global\oddheadline={\line{\thischapter\hfil\folio}}
+\global\let\contentsalignmacro = \chappager
+}
+\def\HEADINGSon{\HEADINGSdouble}
+
+\def\HEADINGSafter{\let\HEADINGShook=\HEADINGSdoublex}
+\let\HEADINGSdoubleafter=\HEADINGSafter
+\def\HEADINGSdoublex{%
+\global\evenfootline={\hfil}
+\global\oddfootline={\hfil}
+\global\evenheadline={\line{\folio\hfil\thistitle}}
+\global\oddheadline={\line{\thischapter\hfil\folio}}
+\global\let\contentsalignmacro = \chapoddpage
+}
+
+\def\HEADINGSsingleafter{\let\HEADINGShook=\HEADINGSsinglex}
+\def\HEADINGSsinglex{%
+\global\evenfootline={\hfil}
+\global\oddfootline={\hfil}
+\global\evenheadline={\line{\thischapter\hfil\folio}}
+\global\oddheadline={\line{\thischapter\hfil\folio}}
+\global\let\contentsalignmacro = \chappager
+}
+
+% Subroutines used in generating headings
+% This produces Day Month Year style of output.
+% Only define if not already defined, in case a txi-??.tex file has set
+% up a different format (e.g., txi-cs.tex does this).
+\ifx\today\undefined
+\def\today{%
+ \number\day\space
+ \ifcase\month
+ \or\putwordMJan\or\putwordMFeb\or\putwordMMar\or\putwordMApr
+ \or\putwordMMay\or\putwordMJun\or\putwordMJul\or\putwordMAug
+ \or\putwordMSep\or\putwordMOct\or\putwordMNov\or\putwordMDec
+ \fi
+ \space\number\year}
+\fi
+
+% @settitle line... specifies the title of the document, for headings.
+% It generates no output of its own.
+\def\thistitle{\putwordNoTitle}
+\def\settitle{\parsearg{\gdef\thistitle}}
+
+
+\message{tables,}
+% Tables -- @table, @ftable, @vtable, @item(x).
+
+% default indentation of table text
+\newdimen\tableindent \tableindent=.8in
+% default indentation of @itemize and @enumerate text
+\newdimen\itemindent \itemindent=.3in
+% margin between end of table item and start of table text.
+\newdimen\itemmargin \itemmargin=.1in
+
+% used internally for \itemindent minus \itemmargin
+\newdimen\itemmax
+
+% Note @table, @ftable, and @vtable define @item, @itemx, etc., with
+% these defs.
+% They also define \itemindex
+% to index the item name in whatever manner is desired (perhaps none).
+
+\newif\ifitemxneedsnegativevskip
+
+\def\itemxpar{\par\ifitemxneedsnegativevskip\nobreak\vskip-\parskip\nobreak\fi}
+
+\def\internalBitem{\smallbreak \parsearg\itemzzz}
+\def\internalBitemx{\itemxpar \parsearg\itemzzz}
+
+\def\itemzzz #1{\begingroup %
+ \advance\hsize by -\rightskip
+ \advance\hsize by -\tableindent
+ \setbox0=\hbox{\itemindicate{#1}}%
+ \itemindex{#1}%
+ \nobreak % This prevents a break before @itemx.
+ %
+ % If the item text does not fit in the space we have, put it on a line
+ % by itself, and do not allow a page break either before or after that
+ % line. We do not start a paragraph here because then if the next
+ % command is, e.g., @kindex, the whatsit would get put into the
+ % horizontal list on a line by itself, resulting in extra blank space.
+ \ifdim \wd0>\itemmax
+ %
+ % Make this a paragraph so we get the \parskip glue and wrapping,
+ % but leave it ragged-right.
+ \begingroup
+ \advance\leftskip by-\tableindent
+ \advance\hsize by\tableindent
+ \advance\rightskip by0pt plus1fil
+ \leavevmode\unhbox0\par
+ \endgroup
+ %
+ % We're going to be starting a paragraph, but we don't want the
+ % \parskip glue -- logically it's part of the @item we just started.
+ \nobreak \vskip-\parskip
+ %
+ % Stop a page break at the \parskip glue coming up. However, if
+ % what follows is an environment such as @example, there will be no
+ % \parskip glue; then the negative vskip we just inserted would
+ % cause the example and the item to crash together. So we use this
+ % bizarre value of 10001 as a signal to \aboveenvbreak to insert
+ % \parskip glue after all. Section titles are handled this way also.
+ %
+ \penalty 10001
+ \endgroup
+ \itemxneedsnegativevskipfalse
+ \else
+ % The item text fits into the space. Start a paragraph, so that the
+ % following text (if any) will end up on the same line.
+ \noindent
+ % Do this with kerns and \unhbox so that if there is a footnote in
+ % the item text, it can migrate to the main vertical list and
+ % eventually be printed.
+ \nobreak\kern-\tableindent
+ \dimen0 = \itemmax \advance\dimen0 by \itemmargin \advance\dimen0 by -\wd0
+ \unhbox0
+ \nobreak\kern\dimen0
+ \endgroup
+ \itemxneedsnegativevskiptrue
+ \fi
+}
+
+\def\item{\errmessage{@item while not in a list environment}}
+\def\itemx{\errmessage{@itemx while not in a list environment}}
+
+% @table, @ftable, @vtable.
+\envdef\table{%
+ \let\itemindex\gobble
+ \tablecheck{table}%
+}
+\envdef\ftable{%
+ \def\itemindex ##1{\doind {fn}{\code{##1}}}%
+ \tablecheck{ftable}%
+}
+\envdef\vtable{%
+ \def\itemindex ##1{\doind {vr}{\code{##1}}}%
+ \tablecheck{vtable}%
+}
+\def\tablecheck#1{%
+ \ifnum \the\catcode`\^^M=\active
+ \endgroup
+ \errmessage{This command won't work in this context; perhaps the problem is
+ that we are \inenvironment\thisenv}%
+ \def\next{\doignore{#1}}%
+ \else
+ \let\next\tablex
+ \fi
+ \next
+}
+\def\tablex#1{%
+ \def\itemindicate{#1}%
+ \parsearg\tabley
+}
+\def\tabley#1{%
+ {%
+ \makevalueexpandable
+ \edef\temp{\noexpand\tablez #1\space\space\space}%
+ \expandafter
+ }\temp \endtablez
+}
+\def\tablez #1 #2 #3 #4\endtablez{%
+ \aboveenvbreak
+ \ifnum 0#1>0 \advance \leftskip by #1\mil \fi
+ \ifnum 0#2>0 \tableindent=#2\mil \fi
+ \ifnum 0#3>0 \advance \rightskip by #3\mil \fi
+ \itemmax=\tableindent
+ \advance \itemmax by -\itemmargin
+ \advance \leftskip by \tableindent
+ \exdentamount=\tableindent
+ \parindent = 0pt
+ \parskip = \smallskipamount
+ \ifdim \parskip=0pt \parskip=2pt \fi
+ \let\item = \internalBitem
+ \let\itemx = \internalBitemx
+}
+\def\Etable{\endgraf\afterenvbreak}
+\let\Eftable\Etable
+\let\Evtable\Etable
+\let\Eitemize\Etable
+\let\Eenumerate\Etable
+
+% This is the counter used by @enumerate, which is really @itemize
+
+\newcount \itemno
+
+\envdef\itemize{\parsearg\doitemize}
+
+\def\doitemize#1{%
+ \aboveenvbreak
+ \itemmax=\itemindent
+ \advance\itemmax by -\itemmargin
+ \advance\leftskip by \itemindent
+ \exdentamount=\itemindent
+ \parindent=0pt
+ \parskip=\smallskipamount
+ \ifdim\parskip=0pt \parskip=2pt \fi
+ %
+ % Try typesetting the item mark that if the document erroneously says
+ % something like @itemize @samp (intending @table), there's an error
+ % right away at the @itemize. It's not the best error message in the
+ % world, but it's better than leaving it to the @item. This means if
+ % the user wants an empty mark, they have to say @w{} not just @w.
+ \def\itemcontents{#1}%
+ \setbox0 = \hbox{\itemcontents}%
+ %
+ % @itemize with no arg is equivalent to @itemize @bullet.
+ \ifx\itemcontents\empty\def\itemcontents{\bullet}\fi
+ %
+ \let\item=\itemizeitem
+}
+
+% Definition of @item while inside @itemize and @enumerate.
+%
+\def\itemizeitem{%
+ \advance\itemno by 1 % for enumerations
+ {\let\par=\endgraf \smallbreak}% reasonable place to break
+ {%
+ % If the document has an @itemize directly after a section title, a
+ % \nobreak will be last on the list, and \sectionheading will have
+ % done a \vskip-\parskip. In that case, we don't want to zero
+ % parskip, or the item text will crash with the heading. On the
+ % other hand, when there is normal text preceding the item (as there
+ % usually is), we do want to zero parskip, or there would be too much
+ % space. In that case, we won't have a \nobreak before. At least
+ % that's the theory.
+ \ifnum\lastpenalty<10000 \parskip=0in \fi
+ \noindent
+ \hbox to 0pt{\hss \itemcontents \kern\itemmargin}%
+ %
+ \vadjust{\penalty 1200}}% not good to break after first line of item.
+ \flushcr
+}
+
+% \splitoff TOKENS\endmark defines \first to be the first token in
+% TOKENS, and \rest to be the remainder.
+%
+\def\splitoff#1#2\endmark{\def\first{#1}\def\rest{#2}}%
+
+% Allow an optional argument of an uppercase letter, lowercase letter,
+% or number, to specify the first label in the enumerated list. No
+% argument is the same as `1'.
+%
+\envparseargdef\enumerate{\enumeratey #1 \endenumeratey}
+\def\enumeratey #1 #2\endenumeratey{%
+ % If we were given no argument, pretend we were given `1'.
+ \def\thearg{#1}%
+ \ifx\thearg\empty \def\thearg{1}\fi
+ %
+ % Detect if the argument is a single token. If so, it might be a
+ % letter. Otherwise, the only valid thing it can be is a number.
+ % (We will always have one token, because of the test we just made.
+ % This is a good thing, since \splitoff doesn't work given nothing at
+ % all -- the first parameter is undelimited.)
+ \expandafter\splitoff\thearg\endmark
+ \ifx\rest\empty
+ % Only one token in the argument. It could still be anything.
+ % A ``lowercase letter'' is one whose \lccode is nonzero.
+ % An ``uppercase letter'' is one whose \lccode is both nonzero, and
+ % not equal to itself.
+ % Otherwise, we assume it's a number.
+ %
+ % We need the \relax at the end of the \ifnum lines to stop TeX from
+ % continuing to look for a <number>.
+ %
+ \ifnum\lccode\expandafter`\thearg=0\relax
+ \numericenumerate % a number (we hope)
+ \else
+ % It's a letter.
+ \ifnum\lccode\expandafter`\thearg=\expandafter`\thearg\relax
+ \lowercaseenumerate % lowercase letter
+ \else
+ \uppercaseenumerate % uppercase letter
+ \fi
+ \fi
+ \else
+ % Multiple tokens in the argument. We hope it's a number.
+ \numericenumerate
+ \fi
+}
+
+% An @enumerate whose labels are integers. The starting integer is
+% given in \thearg.
+%
+\def\numericenumerate{%
+ \itemno = \thearg
+ \startenumeration{\the\itemno}%
+}
+
+% The starting (lowercase) letter is in \thearg.
+\def\lowercaseenumerate{%
+ \itemno = \expandafter`\thearg
+ \startenumeration{%
+ % Be sure we're not beyond the end of the alphabet.
+ \ifnum\itemno=0
+ \errmessage{No more lowercase letters in @enumerate; get a bigger
+ alphabet}%
+ \fi
+ \char\lccode\itemno
+ }%
+}
+
+% The starting (uppercase) letter is in \thearg.
+\def\uppercaseenumerate{%
+ \itemno = \expandafter`\thearg
+ \startenumeration{%
+ % Be sure we're not beyond the end of the alphabet.
+ \ifnum\itemno=0
+ \errmessage{No more uppercase letters in @enumerate; get a bigger
+ alphabet}
+ \fi
+ \char\uccode\itemno
+ }%
+}
+
+% Call \doitemize, adding a period to the first argument and supplying the
+% common last two arguments. Also subtract one from the initial value in
+% \itemno, since @item increments \itemno.
+%
+\def\startenumeration#1{%
+ \advance\itemno by -1
+ \doitemize{#1.}\flushcr
+}
+
+% @alphaenumerate and @capsenumerate are abbreviations for giving an arg
+% to @enumerate.
+%
+\def\alphaenumerate{\enumerate{a}}
+\def\capsenumerate{\enumerate{A}}
+\def\Ealphaenumerate{\Eenumerate}
+\def\Ecapsenumerate{\Eenumerate}
+
+
+% @multitable macros
+% Amy Hendrickson, 8/18/94, 3/6/96
+%
+% @multitable ... @end multitable will make as many columns as desired.
+% Contents of each column will wrap at width given in preamble. Width
+% can be specified either with sample text given in a template line,
+% or in percent of \hsize, the current width of text on page.
+
+% Table can continue over pages but will only break between lines.
+
+% To make preamble:
+%
+% Either define widths of columns in terms of percent of \hsize:
+% @multitable @columnfractions .25 .3 .45
+% @item ...
+%
+% Numbers following @columnfractions are the percent of the total
+% current hsize to be used for each column. You may use as many
+% columns as desired.
+
+
+% Or use a template:
+% @multitable {Column 1 template} {Column 2 template} {Column 3 template}
+% @item ...
+% using the widest term desired in each column.
+
+% Each new table line starts with @item, each subsequent new column
+% starts with @tab. Empty columns may be produced by supplying @tab's
+% with nothing between them for as many times as empty columns are needed,
+% ie, @tab@tab@tab will produce two empty columns.
+
+% @item, @tab do not need to be on their own lines, but it will not hurt
+% if they are.
+
+% Sample multitable:
+
+% @multitable {Column 1 template} {Column 2 template} {Column 3 template}
+% @item first col stuff @tab second col stuff @tab third col
+% @item
+% first col stuff
+% @tab
+% second col stuff
+% @tab
+% third col
+% @item first col stuff @tab second col stuff
+% @tab Many paragraphs of text may be used in any column.
+%
+% They will wrap at the width determined by the template.
+% @item@tab@tab This will be in third column.
+% @end multitable
+
+% Default dimensions may be reset by user.
+% @multitableparskip is vertical space between paragraphs in table.
+% @multitableparindent is paragraph indent in table.
+% @multitablecolmargin is horizontal space to be left between columns.
+% @multitablelinespace is space to leave between table items, baseline
+% to baseline.
+% 0pt means it depends on current normal line spacing.
+%
+\newskip\multitableparskip
+\newskip\multitableparindent
+\newdimen\multitablecolspace
+\newskip\multitablelinespace
+\multitableparskip=0pt
+\multitableparindent=6pt
+\multitablecolspace=12pt
+\multitablelinespace=0pt
+
+% Macros used to set up halign preamble:
+%
+\let\endsetuptable\relax
+\def\xendsetuptable{\endsetuptable}
+\let\columnfractions\relax
+\def\xcolumnfractions{\columnfractions}
+\newif\ifsetpercent
+
+% #1 is the @columnfraction, usually a decimal number like .5, but might
+% be just 1. We just use it, whatever it is.
+%
+\def\pickupwholefraction#1 {%
+ \global\advance\colcount by 1
+ \expandafter\xdef\csname col\the\colcount\endcsname{#1\hsize}%
+ \setuptable
+}
+
+\newcount\colcount
+\def\setuptable#1{%
+ \def\firstarg{#1}%
+ \ifx\firstarg\xendsetuptable
+ \let\go = \relax
+ \else
+ \ifx\firstarg\xcolumnfractions
+ \global\setpercenttrue
+ \else
+ \ifsetpercent
+ \let\go\pickupwholefraction
+ \else
+ \global\advance\colcount by 1
+ \setbox0=\hbox{#1\unskip\space}% Add a normal word space as a
+ % separator; typically that is always in the input, anyway.
+ \expandafter\xdef\csname col\the\colcount\endcsname{\the\wd0}%
+ \fi
+ \fi
+ \ifx\go\pickupwholefraction
+ % Put the argument back for the \pickupwholefraction call, so
+ % we'll always have a period there to be parsed.
+ \def\go{\pickupwholefraction#1}%
+ \else
+ \let\go = \setuptable
+ \fi%
+ \fi
+ \go
+}
+
+% multitable-only commands.
+%
+% @headitem starts a heading row, which we typeset in bold.
+% Assignments have to be global since we are inside the implicit group
+% of an alignment entry. \everycr resets \everytab so we don't have to
+% undo it ourselves.
+\def\headitemfont{\b}% for people to use in the template row; not changeable
+\def\headitem{%
+ \checkenv\multitable
+ \crcr
+ \global\everytab={\bf}% can't use \headitemfont since the parsing differs
+ \the\everytab % for the first item
+}%
+%
+% A \tab used to include \hskip1sp. But then the space in a template
+% line is not enough. That is bad. So let's go back to just `&' until
+% we again encounter the problem the 1sp was intended to solve.
+% --karl, nathan@acm.org, 20apr99.
+\def\tab{\checkenv\multitable &\the\everytab}%
+
+% @multitable ... @end multitable definitions:
+%
+\newtoks\everytab % insert after every tab.
+%
+\envdef\multitable{%
+ \vskip\parskip
+ \startsavinginserts
+ %
+ % @item within a multitable starts a normal row.
+ % We use \def instead of \let so that if one of the multitable entries
+ % contains an @itemize, we don't choke on the \item (seen as \crcr aka
+ % \endtemplate) expanding \doitemize.
+ \def\item{\crcr}%
+ %
+ \tolerance=9500
+ \hbadness=9500
+ \setmultitablespacing
+ \parskip=\multitableparskip
+ \parindent=\multitableparindent
+ \overfullrule=0pt
+ \global\colcount=0
+ %
+ \everycr = {%
+ \noalign{%
+ \global\everytab={}%
+ \global\colcount=0 % Reset the column counter.
+ % Check for saved footnotes, etc.
+ \checkinserts
+ % Keeps underfull box messages off when table breaks over pages.
+ %\filbreak
+ % Maybe so, but it also creates really weird page breaks when the
+ % table breaks over pages. Wouldn't \vfil be better? Wait until the
+ % problem manifests itself, so it can be fixed for real --karl.
+ }%
+ }%
+ %
+ \parsearg\domultitable
+}
+\def\domultitable#1{%
+ % To parse everything between @multitable and @item:
+ \setuptable#1 \endsetuptable
+ %
+ % This preamble sets up a generic column definition, which will
+ % be used as many times as user calls for columns.
+ % \vtop will set a single line and will also let text wrap and
+ % continue for many paragraphs if desired.
+ \halign\bgroup &%
+ \global\advance\colcount by 1
+ \multistrut
+ \vtop{%
+ % Use the current \colcount to find the correct column width:
+ \hsize=\expandafter\csname col\the\colcount\endcsname
+ %
+ % In order to keep entries from bumping into each other
+ % we will add a \leftskip of \multitablecolspace to all columns after
+ % the first one.
+ %
+ % If a template has been used, we will add \multitablecolspace
+ % to the width of each template entry.
+ %
+ % If the user has set preamble in terms of percent of \hsize we will
+ % use that dimension as the width of the column, and the \leftskip
+ % will keep entries from bumping into each other. Table will start at
+ % left margin and final column will justify at right margin.
+ %
+ % Make sure we don't inherit \rightskip from the outer environment.
+ \rightskip=0pt
+ \ifnum\colcount=1
+ % The first column will be indented with the surrounding text.
+ \advance\hsize by\leftskip
+ \else
+ \ifsetpercent \else
+ % If user has not set preamble in terms of percent of \hsize
+ % we will advance \hsize by \multitablecolspace.
+ \advance\hsize by \multitablecolspace
+ \fi
+ % In either case we will make \leftskip=\multitablecolspace:
+ \leftskip=\multitablecolspace
+ \fi
+ % Ignoring space at the beginning and end avoids an occasional spurious
+ % blank line, when TeX decides to break the line at the space before the
+ % box from the multistrut, so the strut ends up on a line by itself.
+ % For example:
+ % @multitable @columnfractions .11 .89
+ % @item @code{#}
+ % @tab Legal holiday which is valid in major parts of the whole country.
+ % Is automatically provided with highlighting sequences respectively
+ % marking characters.
+ \noindent\ignorespaces##\unskip\multistrut
+ }\cr
+}
+\def\Emultitable{%
+ \crcr
+ \egroup % end the \halign
+ \global\setpercentfalse
+}
+
+\def\setmultitablespacing{%
+ \def\multistrut{\strut}% just use the standard line spacing
+ %
+ % Compute \multitablelinespace (if not defined by user) for use in
+ % \multitableparskip calculation. We used define \multistrut based on
+ % this, but (ironically) that caused the spacing to be off.
+ % See bug-texinfo report from Werner Lemberg, 31 Oct 2004 12:52:20 +0100.
+\ifdim\multitablelinespace=0pt
+\setbox0=\vbox{X}\global\multitablelinespace=\the\baselineskip
+\global\advance\multitablelinespace by-\ht0
+\fi
+%% Test to see if parskip is larger than space between lines of
+%% table. If not, do nothing.
+%% If so, set to same dimension as multitablelinespace.
+\ifdim\multitableparskip>\multitablelinespace
+\global\multitableparskip=\multitablelinespace
+\global\advance\multitableparskip-7pt %% to keep parskip somewhat smaller
+ %% than skip between lines in the table.
+\fi%
+\ifdim\multitableparskip=0pt
+\global\multitableparskip=\multitablelinespace
+\global\advance\multitableparskip-7pt %% to keep parskip somewhat smaller
+ %% than skip between lines in the table.
+\fi}
+
+
+\message{conditionals,}
+
+% @iftex, @ifnotdocbook, @ifnothtml, @ifnotinfo, @ifnotplaintext,
+% @ifnotxml always succeed. They currently do nothing; we don't
+% attempt to check whether the conditionals are properly nested. But we
+% have to remember that they are conditionals, so that @end doesn't
+% attempt to close an environment group.
+%
+\def\makecond#1{%
+ \expandafter\let\csname #1\endcsname = \relax
+ \expandafter\let\csname iscond.#1\endcsname = 1
+}
+\makecond{iftex}
+\makecond{ifnotdocbook}
+\makecond{ifnothtml}
+\makecond{ifnotinfo}
+\makecond{ifnotplaintext}
+\makecond{ifnotxml}
+
+% Ignore @ignore, @ifhtml, @ifinfo, and the like.
+%
+\def\direntry{\doignore{direntry}}
+\def\documentdescription{\doignore{documentdescription}}
+\def\docbook{\doignore{docbook}}
+\def\html{\doignore{html}}
+\def\ifdocbook{\doignore{ifdocbook}}
+\def\ifhtml{\doignore{ifhtml}}
+\def\ifinfo{\doignore{ifinfo}}
+\def\ifnottex{\doignore{ifnottex}}
+\def\ifplaintext{\doignore{ifplaintext}}
+\def\ifxml{\doignore{ifxml}}
+\def\ignore{\doignore{ignore}}
+\def\menu{\doignore{menu}}
+\def\xml{\doignore{xml}}
+
+% Ignore text until a line `@end #1', keeping track of nested conditionals.
+%
+% A count to remember the depth of nesting.
+\newcount\doignorecount
+
+\def\doignore#1{\begingroup
+ % Scan in ``verbatim'' mode:
+ \obeylines
+ \catcode`\@ = \other
+ \catcode`\{ = \other
+ \catcode`\} = \other
+ %
+ % Make sure that spaces turn into tokens that match what \doignoretext wants.
+ \spaceisspace
+ %
+ % Count number of #1's that we've seen.
+ \doignorecount = 0
+ %
+ % Swallow text until we reach the matching `@end #1'.
+ \dodoignore{#1}%
+}
+
+{ \catcode`_=11 % We want to use \_STOP_ which cannot appear in texinfo source.
+ \obeylines %
+ %
+ \gdef\dodoignore#1{%
+ % #1 contains the command name as a string, e.g., `ifinfo'.
+ %
+ % Define a command to find the next `@end #1'.
+ \long\def\doignoretext##1^^M@end #1{%
+ \doignoretextyyy##1^^M@#1\_STOP_}%
+ %
+ % And this command to find another #1 command, at the beginning of a
+ % line. (Otherwise, we would consider a line `@c @ifset', for
+ % example, to count as an @ifset for nesting.)
+ \long\def\doignoretextyyy##1^^M@#1##2\_STOP_{\doignoreyyy{##2}\_STOP_}%
+ %
+ % And now expand that command.
+ \doignoretext ^^M%
+ }%
+}
+
+\def\doignoreyyy#1{%
+ \def\temp{#1}%
+ \ifx\temp\empty % Nothing found.
+ \let\next\doignoretextzzz
+ \else % Found a nested condition, ...
+ \advance\doignorecount by 1
+ \let\next\doignoretextyyy % ..., look for another.
+ % If we're here, #1 ends with ^^M\ifinfo (for example).
+ \fi
+ \next #1% the token \_STOP_ is present just after this macro.
+}
+
+% We have to swallow the remaining "\_STOP_".
+%
+\def\doignoretextzzz#1{%
+ \ifnum\doignorecount = 0 % We have just found the outermost @end.
+ \let\next\enddoignore
+ \else % Still inside a nested condition.
+ \advance\doignorecount by -1
+ \let\next\doignoretext % Look for the next @end.
+ \fi
+ \next
+}
+
+% Finish off ignored text.
+{ \obeylines%
+ % Ignore anything after the last `@end #1'; this matters in verbatim
+ % environments, where otherwise the newline after an ignored conditional
+ % would result in a blank line in the output.
+ \gdef\enddoignore#1^^M{\endgroup\ignorespaces}%
+}
+
+
+% @set VAR sets the variable VAR to an empty value.
+% @set VAR REST-OF-LINE sets VAR to the value REST-OF-LINE.
+%
+% Since we want to separate VAR from REST-OF-LINE (which might be
+% empty), we can't just use \parsearg; we have to insert a space of our
+% own to delimit the rest of the line, and then take it out again if we
+% didn't need it.
+% We rely on the fact that \parsearg sets \catcode`\ =10.
+%
+\parseargdef\set{\setyyy#1 \endsetyyy}
+\def\setyyy#1 #2\endsetyyy{%
+ {%
+ \makevalueexpandable
+ \def\temp{#2}%
+ \edef\next{\gdef\makecsname{SET#1}}%
+ \ifx\temp\empty
+ \next{}%
+ \else
+ \setzzz#2\endsetzzz
+ \fi
+ }%
+}
+% Remove the trailing space \setxxx inserted.
+\def\setzzz#1 \endsetzzz{\next{#1}}
+
+% @clear VAR clears (i.e., unsets) the variable VAR.
+%
+\parseargdef\clear{%
+ {%
+ \makevalueexpandable
+ \global\expandafter\let\csname SET#1\endcsname=\relax
+ }%
+}
+
+% @value{foo} gets the text saved in variable foo.
+\def\value{\begingroup\makevalueexpandable\valuexxx}
+\def\valuexxx#1{\expandablevalue{#1}\endgroup}
+{
+ \catcode`\- = \active \catcode`\_ = \active
+ %
+ \gdef\makevalueexpandable{%
+ \let\value = \expandablevalue
+ % We don't want these characters active, ...
+ \catcode`\-=\other \catcode`\_=\other
+ % ..., but we might end up with active ones in the argument if
+ % we're called from @code, as @code{@value{foo-bar_}}, though.
+ % So \let them to their normal equivalents.
+ \let-\realdash \let_\normalunderscore
+ }
+}
+
+% We have this subroutine so that we can handle at least some @value's
+% properly in indexes (we call \makevalueexpandable in \indexdummies).
+% The command has to be fully expandable (if the variable is set), since
+% the result winds up in the index file. This means that if the
+% variable's value contains other Texinfo commands, it's almost certain
+% it will fail (although perhaps we could fix that with sufficient work
+% to do a one-level expansion on the result, instead of complete).
+%
+\def\expandablevalue#1{%
+ \expandafter\ifx\csname SET#1\endcsname\relax
+ {[No value for ``#1'']}%
+ \message{Variable `#1', used in @value, is not set.}%
+ \else
+ \csname SET#1\endcsname
+ \fi
+}
+
+% @ifset VAR ... @end ifset reads the `...' iff VAR has been defined
+% with @set.
+%
+% To get special treatment of `@end ifset,' call \makeond and the redefine.
+%
+\makecond{ifset}
+\def\ifset{\parsearg{\doifset{\let\next=\ifsetfail}}}
+\def\doifset#1#2{%
+ {%
+ \makevalueexpandable
+ \let\next=\empty
+ \expandafter\ifx\csname SET#2\endcsname\relax
+ #1% If not set, redefine \next.
+ \fi
+ \expandafter
+ }\next
+}
+\def\ifsetfail{\doignore{ifset}}
+
+% @ifclear VAR ... @end ifclear reads the `...' iff VAR has never been
+% defined with @set, or has been undefined with @clear.
+%
+% The `\else' inside the `\doifset' parameter is a trick to reuse the
+% above code: if the variable is not set, do nothing, if it is set,
+% then redefine \next to \ifclearfail.
+%
+\makecond{ifclear}
+\def\ifclear{\parsearg{\doifset{\else \let\next=\ifclearfail}}}
+\def\ifclearfail{\doignore{ifclear}}
+
+% @dircategory CATEGORY -- specify a category of the dir file
+% which this file should belong to. Ignore this in TeX.
+\let\dircategory=\comment
+
+% @defininfoenclose.
+\let\definfoenclose=\comment
+
+
+\message{indexing,}
+% Index generation facilities
+
+% Define \newwrite to be identical to plain tex's \newwrite
+% except not \outer, so it can be used within macros and \if's.
+\edef\newwrite{\makecsname{ptexnewwrite}}
+
+% \newindex {foo} defines an index named foo.
+% It automatically defines \fooindex such that
+% \fooindex ...rest of line... puts an entry in the index foo.
+% It also defines \fooindfile to be the number of the output channel for
+% the file that accumulates this index. The file's extension is foo.
+% The name of an index should be no more than 2 characters long
+% for the sake of vms.
+%
+\def\newindex#1{%
+ \iflinks
+ \expandafter\newwrite \csname#1indfile\endcsname
+ \openout \csname#1indfile\endcsname \jobname.#1 % Open the file
+ \fi
+ \expandafter\xdef\csname#1index\endcsname{% % Define @#1index
+ \noexpand\doindex{#1}}
+}
+
+% @defindex foo == \newindex{foo}
+%
+\def\defindex{\parsearg\newindex}
+
+% Define @defcodeindex, like @defindex except put all entries in @code.
+%
+\def\defcodeindex{\parsearg\newcodeindex}
+%
+\def\newcodeindex#1{%
+ \iflinks
+ \expandafter\newwrite \csname#1indfile\endcsname
+ \openout \csname#1indfile\endcsname \jobname.#1
+ \fi
+ \expandafter\xdef\csname#1index\endcsname{%
+ \noexpand\docodeindex{#1}}%
+}
+
+
+% @synindex foo bar makes index foo feed into index bar.
+% Do this instead of @defindex foo if you don't want it as a separate index.
+%
+% @syncodeindex foo bar similar, but put all entries made for index foo
+% inside @code.
+%
+\def\synindex#1 #2 {\dosynindex\doindex{#1}{#2}}
+\def\syncodeindex#1 #2 {\dosynindex\docodeindex{#1}{#2}}
+
+% #1 is \doindex or \docodeindex, #2 the index getting redefined (foo),
+% #3 the target index (bar).
+\def\dosynindex#1#2#3{%
+ % Only do \closeout if we haven't already done it, else we'll end up
+ % closing the target index.
+ \expandafter \ifx\csname donesynindex#2\endcsname \relax
+ % The \closeout helps reduce unnecessary open files; the limit on the
+ % Acorn RISC OS is a mere 16 files.
+ \expandafter\closeout\csname#2indfile\endcsname
+ \expandafter\let\csname donesynindex#2\endcsname = 1
+ \fi
+ % redefine \fooindfile:
+ \expandafter\let\expandafter\temp\expandafter=\csname#3indfile\endcsname
+ \expandafter\let\csname#2indfile\endcsname=\temp
+ % redefine \fooindex:
+ \expandafter\xdef\csname#2index\endcsname{\noexpand#1{#3}}%
+}
+
+% Define \doindex, the driver for all \fooindex macros.
+% Argument #1 is generated by the calling \fooindex macro,
+% and it is "foo", the name of the index.
+
+% \doindex just uses \parsearg; it calls \doind for the actual work.
+% This is because \doind is more useful to call from other macros.
+
+% There is also \dosubind {index}{topic}{subtopic}
+% which makes an entry in a two-level index such as the operation index.
+
+\def\doindex#1{\edef\indexname{#1}\parsearg\singleindexer}
+\def\singleindexer #1{\doind{\indexname}{#1}}
+
+% like the previous two, but they put @code around the argument.
+\def\docodeindex#1{\edef\indexname{#1}\parsearg\singlecodeindexer}
+\def\singlecodeindexer #1{\doind{\indexname}{\code{#1}}}
+
+% Take care of Texinfo commands that can appear in an index entry.
+% Since there are some commands we want to expand, and others we don't,
+% we have to laboriously prevent expansion for those that we don't.
+%
+\def\indexdummies{%
+ \escapechar = `\\ % use backslash in output files.
+ \def\@{@}% change to @@ when we switch to @ as escape char in index files.
+ \def\ {\realbackslash\space }%
+ %
+ % Need these in case \tex is in effect and \{ is a \delimiter again.
+ % But can't use \lbracecmd and \rbracecmd because texindex assumes
+ % braces and backslashes are used only as delimiters.
+ \let\{ = \mylbrace
+ \let\} = \myrbrace
+ %
+ % I don't entirely understand this, but when an index entry is
+ % generated from a macro call, the \endinput which \scanmacro inserts
+ % causes processing to be prematurely terminated. This is,
+ % apparently, because \indexsorttmp is fully expanded, and \endinput
+ % is an expandable command. The redefinition below makes \endinput
+ % disappear altogether for that purpose -- although logging shows that
+ % processing continues to some further point. On the other hand, it
+ % seems \endinput does not hurt in the printed index arg, since that
+ % is still getting written without apparent harm.
+ %
+ % Sample source (mac-idx3.tex, reported by Graham Percival to
+ % help-texinfo, 22may06):
+ % @macro funindex {WORD}
+ % @findex xyz
+ % @end macro
+ % ...
+ % @funindex commtest
+ %
+ % The above is not enough to reproduce the bug, but it gives the flavor.
+ %
+ % Sample whatsit resulting:
+ % .@write3{\entry{xyz}{@folio }{@code {xyz@endinput }}}
+ %
+ % So:
+ \let\endinput = \empty
+ %
+ % Do the redefinitions.
+ \commondummies
+}
+
+% For the aux and toc files, @ is the escape character. So we want to
+% redefine everything using @ as the escape character (instead of
+% \realbackslash, still used for index files). When everything uses @,
+% this will be simpler.
+%
+\def\atdummies{%
+ \def\@{@@}%
+ \def\ {@ }%
+ \let\{ = \lbraceatcmd
+ \let\} = \rbraceatcmd
+ %
+ % Do the redefinitions.
+ \commondummies
+ \otherbackslash
+}
+
+% Called from \indexdummies and \atdummies.
+%
+\def\commondummies{%
+ %
+ % \definedummyword defines \#1 as \string\#1\space, thus effectively
+ % preventing its expansion. This is used only for control% words,
+ % not control letters, because the \space would be incorrect for
+ % control characters, but is needed to separate the control word
+ % from whatever follows.
+ %
+ % For control letters, we have \definedummyletter, which omits the
+ % space.
+ %
+ % These can be used both for control words that take an argument and
+ % those that do not. If it is followed by {arg} in the input, then
+ % that will dutifully get written to the index (or wherever).
+ %
+ \def\definedummyword ##1{\def##1{\string##1\space}}%
+ \def\definedummyletter##1{\def##1{\string##1}}%
+ \let\definedummyaccent\definedummyletter
+ %
+ \commondummiesnofonts
+ %
+ \definedummyletter\_%
+ %
+ % Non-English letters.
+ \definedummyword\AA
+ \definedummyword\AE
+ \definedummyword\L
+ \definedummyword\OE
+ \definedummyword\O
+ \definedummyword\aa
+ \definedummyword\ae
+ \definedummyword\l
+ \definedummyword\oe
+ \definedummyword\o
+ \definedummyword\ss
+ \definedummyword\exclamdown
+ \definedummyword\questiondown
+ \definedummyword\ordf
+ \definedummyword\ordm
+ %
+ % Although these internal commands shouldn't show up, sometimes they do.
+ \definedummyword\bf
+ \definedummyword\gtr
+ \definedummyword\hat
+ \definedummyword\less
+ \definedummyword\sf
+ \definedummyword\sl
+ \definedummyword\tclose
+ \definedummyword\tt
+ %
+ \definedummyword\LaTeX
+ \definedummyword\TeX
+ %
+ % Assorted special characters.
+ \definedummyword\bullet
+ \definedummyword\comma
+ \definedummyword\copyright
+ \definedummyword\registeredsymbol
+ \definedummyword\dots
+ \definedummyword\enddots
+ \definedummyword\equiv
+ \definedummyword\error
+ \definedummyword\euro
+ \definedummyword\guillemetleft
+ \definedummyword\guillemetright
+ \definedummyword\guilsinglleft
+ \definedummyword\guilsinglright
+ \definedummyword\expansion
+ \definedummyword\minus
+ \definedummyword\ogonek
+ \definedummyword\pounds
+ \definedummyword\point
+ \definedummyword\print
+ \definedummyword\quotedblbase
+ \definedummyword\quotedblleft
+ \definedummyword\quotedblright
+ \definedummyword\quoteleft
+ \definedummyword\quoteright
+ \definedummyword\quotesinglbase
+ \definedummyword\result
+ \definedummyword\textdegree
+ %
+ % We want to disable all macros so that they are not expanded by \write.
+ \macrolist
+ %
+ \normalturnoffactive
+ %
+ % Handle some cases of @value -- where it does not contain any
+ % (non-fully-expandable) commands.
+ \makevalueexpandable
+}
+
+% \commondummiesnofonts: common to \commondummies and \indexnofonts.
+%
+\def\commondummiesnofonts{%
+ % Control letters and accents.
+ \definedummyletter\!%
+ \definedummyaccent\"%
+ \definedummyaccent\'%
+ \definedummyletter\*%
+ \definedummyaccent\,%
+ \definedummyletter\.%
+ \definedummyletter\/%
+ \definedummyletter\:%
+ \definedummyaccent\=%
+ \definedummyletter\?%
+ \definedummyaccent\^%
+ \definedummyaccent\`%
+ \definedummyaccent\~%
+ \definedummyword\u
+ \definedummyword\v
+ \definedummyword\H
+ \definedummyword\dotaccent
+ \definedummyword\ogonek
+ \definedummyword\ringaccent
+ \definedummyword\tieaccent
+ \definedummyword\ubaraccent
+ \definedummyword\udotaccent
+ \definedummyword\dotless
+ %
+ % Texinfo font commands.
+ \definedummyword\b
+ \definedummyword\i
+ \definedummyword\r
+ \definedummyword\sc
+ \definedummyword\t
+ %
+ % Commands that take arguments.
+ \definedummyword\acronym
+ \definedummyword\cite
+ \definedummyword\code
+ \definedummyword\command
+ \definedummyword\dfn
+ \definedummyword\emph
+ \definedummyword\env
+ \definedummyword\file
+ \definedummyword\kbd
+ \definedummyword\key
+ \definedummyword\math
+ \definedummyword\option
+ \definedummyword\pxref
+ \definedummyword\ref
+ \definedummyword\samp
+ \definedummyword\strong
+ \definedummyword\tie
+ \definedummyword\uref
+ \definedummyword\url
+ \definedummyword\var
+ \definedummyword\verb
+ \definedummyword\w
+ \definedummyword\xref
+}
+
+% \indexnofonts is used when outputting the strings to sort the index
+% by, and when constructing control sequence names. It eliminates all
+% control sequences and just writes whatever the best ASCII sort string
+% would be for a given command (usually its argument).
+%
+\def\indexnofonts{%
+ % Accent commands should become @asis.
+ \def\definedummyaccent##1{\let##1\asis}%
+ % We can just ignore other control letters.
+ \def\definedummyletter##1{\let##1\empty}%
+ % Hopefully, all control words can become @asis.
+ \let\definedummyword\definedummyaccent
+ %
+ \commondummiesnofonts
+ %
+ % Don't no-op \tt, since it isn't a user-level command
+ % and is used in the definitions of the active chars like <, >, |, etc.
+ % Likewise with the other plain tex font commands.
+ %\let\tt=\asis
+ %
+ \def\ { }%
+ \def\@{@}%
+ % how to handle braces?
+ \def\_{\normalunderscore}%
+ %
+ % Non-English letters.
+ \def\AA{AA}%
+ \def\AE{AE}%
+ \def\L{L}%
+ \def\OE{OE}%
+ \def\O{O}%
+ \def\aa{aa}%
+ \def\ae{ae}%
+ \def\l{l}%
+ \def\oe{oe}%
+ \def\o{o}%
+ \def\ss{ss}%
+ \def\exclamdown{!}%
+ \def\questiondown{?}%
+ \def\ordf{a}%
+ \def\ordm{o}%
+ %
+ \def\LaTeX{LaTeX}%
+ \def\TeX{TeX}%
+ %
+ % Assorted special characters.
+ % (The following {} will end up in the sort string, but that's ok.)
+ \def\bullet{bullet}%
+ \def\comma{,}%
+ \def\copyright{copyright}%
+ \def\registeredsymbol{R}%
+ \def\dots{...}%
+ \def\enddots{...}%
+ \def\equiv{==}%
+ \def\error{error}%
+ \def\euro{euro}%
+ \def\guillemetleft{<<}%
+ \def\guillemetright{>>}%
+ \def\guilsinglleft{<}%
+ \def\guilsinglright{>}%
+ \def\expansion{==>}%
+ \def\minus{-}%
+ \def\pounds{pounds}%
+ \def\point{.}%
+ \def\print{-|}%
+ \def\quotedblbase{"}%
+ \def\quotedblleft{"}%
+ \def\quotedblright{"}%
+ \def\quoteleft{`}%
+ \def\quoteright{'}%
+ \def\quotesinglbase{,}%
+ \def\result{=>}%
+ \def\textdegree{degrees}%
+ %
+ % We need to get rid of all macros, leaving only the arguments (if present).
+ % Of course this is not nearly correct, but it is the best we can do for now.
+ % makeinfo does not expand macros in the argument to @deffn, which ends up
+ % writing an index entry, and texindex isn't prepared for an index sort entry
+ % that starts with \.
+ %
+ % Since macro invocations are followed by braces, we can just redefine them
+ % to take a single TeX argument. The case of a macro invocation that
+ % goes to end-of-line is not handled.
+ %
+ \macrolist
+}
+
+\let\indexbackslash=0 %overridden during \printindex.
+\let\SETmarginindex=\relax % put index entries in margin (undocumented)?
+
+% Most index entries go through here, but \dosubind is the general case.
+% #1 is the index name, #2 is the entry text.
+\def\doind#1#2{\dosubind{#1}{#2}{}}
+
+% Workhorse for all \fooindexes.
+% #1 is name of index, #2 is stuff to put there, #3 is subentry --
+% empty if called from \doind, as we usually are (the main exception
+% is with most defuns, which call us directly).
+%
+\def\dosubind#1#2#3{%
+ \iflinks
+ {%
+ % Store the main index entry text (including the third arg).
+ \toks0 = {#2}%
+ % If third arg is present, precede it with a space.
+ \def\thirdarg{#3}%
+ \ifx\thirdarg\empty \else
+ \toks0 = \expandafter{\the\toks0 \space #3}%
+ \fi
+ %
+ \edef\writeto{\csname#1indfile\endcsname}%
+ %
+ \safewhatsit\dosubindwrite
+ }%
+ \fi
+}
+
+% Write the entry in \toks0 to the index file:
+%
+\def\dosubindwrite{%
+ % Put the index entry in the margin if desired.
+ \ifx\SETmarginindex\relax\else
+ \insert\margin{\hbox{\vrule height8pt depth3pt width0pt \the\toks0}}%
+ \fi
+ %
+ % Remember, we are within a group.
+ \indexdummies % Must do this here, since \bf, etc expand at this stage
+ \def\backslashcurfont{\indexbackslash}% \indexbackslash isn't defined now
+ % so it will be output as is; and it will print as backslash.
+ %
+ % Process the index entry with all font commands turned off, to
+ % get the string to sort by.
+ {\indexnofonts
+ \edef\temp{\the\toks0}% need full expansion
+ \xdef\indexsorttmp{\temp}%
+ }%
+ %
+ % Set up the complete index entry, with both the sort key and
+ % the original text, including any font commands. We write
+ % three arguments to \entry to the .?? file (four in the
+ % subentry case), texindex reduces to two when writing the .??s
+ % sorted result.
+ \edef\temp{%
+ \write\writeto{%
+ \string\entry{\indexsorttmp}{\noexpand\folio}{\the\toks0}}%
+ }%
+ \temp
+}
+
+% Take care of unwanted page breaks/skips around a whatsit:
+%
+% If a skip is the last thing on the list now, preserve it
+% by backing up by \lastskip, doing the \write, then inserting
+% the skip again. Otherwise, the whatsit generated by the
+% \write or \pdfdest will make \lastskip zero. The result is that
+% sequences like this:
+% @end defun
+% @tindex whatever
+% @defun ...
+% will have extra space inserted, because the \medbreak in the
+% start of the @defun won't see the skip inserted by the @end of
+% the previous defun.
+%
+% But don't do any of this if we're not in vertical mode. We
+% don't want to do a \vskip and prematurely end a paragraph.
+%
+% Avoid page breaks due to these extra skips, too.
+%
+% But wait, there is a catch there:
+% We'll have to check whether \lastskip is zero skip. \ifdim is not
+% sufficient for this purpose, as it ignores stretch and shrink parts
+% of the skip. The only way seems to be to check the textual
+% representation of the skip.
+%
+% The following is almost like \def\zeroskipmacro{0.0pt} except that
+% the ``p'' and ``t'' characters have catcode \other, not 11 (letter).
+%
+\edef\zeroskipmacro{\expandafter\the\csname z@skip\endcsname}
+%
+\newskip\whatsitskip
+\newcount\whatsitpenalty
+%
+% ..., ready, GO:
+%
+\def\safewhatsit#1{%
+\ifhmode
+ #1%
+\else
+ % \lastskip and \lastpenalty cannot both be nonzero simultaneously.
+ \whatsitskip = \lastskip
+ \edef\lastskipmacro{\the\lastskip}%
+ \whatsitpenalty = \lastpenalty
+ %
+ % If \lastskip is nonzero, that means the last item was a
+ % skip. And since a skip is discardable, that means this
+ % -\whatsitskip glue we're inserting is preceded by a
+ % non-discardable item, therefore it is not a potential
+ % breakpoint, therefore no \nobreak needed.
+ \ifx\lastskipmacro\zeroskipmacro
+ \else
+ \vskip-\whatsitskip
+ \fi
+ %
+ #1%
+ %
+ \ifx\lastskipmacro\zeroskipmacro
+ % If \lastskip was zero, perhaps the last item was a penalty, and
+ % perhaps it was >=10000, e.g., a \nobreak. In that case, we want
+ % to re-insert the same penalty (values >10000 are used for various
+ % signals); since we just inserted a non-discardable item, any
+ % following glue (such as a \parskip) would be a breakpoint. For example:
+ %
+ % @deffn deffn-whatever
+ % @vindex index-whatever
+ % Description.
+ % would allow a break between the index-whatever whatsit
+ % and the "Description." paragraph.
+ \ifnum\whatsitpenalty>9999 \penalty\whatsitpenalty \fi
+ \else
+ % On the other hand, if we had a nonzero \lastskip,
+ % this make-up glue would be preceded by a non-discardable item
+ % (the whatsit from the \write), so we must insert a \nobreak.
+ \nobreak\vskip\whatsitskip
+ \fi
+\fi
+}
+
+% The index entry written in the file actually looks like
+% \entry {sortstring}{page}{topic}
+% or
+% \entry {sortstring}{page}{topic}{subtopic}
+% The texindex program reads in these files and writes files
+% containing these kinds of lines:
+% \initial {c}
+% before the first topic whose initial is c
+% \entry {topic}{pagelist}
+% for a topic that is used without subtopics
+% \primary {topic}
+% for the beginning of a topic that is used with subtopics
+% \secondary {subtopic}{pagelist}
+% for each subtopic.
+
+% Define the user-accessible indexing commands
+% @findex, @vindex, @kindex, @cindex.
+
+\def\findex {\fnindex}
+\def\kindex {\kyindex}
+\def\cindex {\cpindex}
+\def\vindex {\vrindex}
+\def\tindex {\tpindex}
+\def\pindex {\pgindex}
+
+\def\cindexsub {\begingroup\obeylines\cindexsub}
+{\obeylines %
+\gdef\cindexsub "#1" #2^^M{\endgroup %
+\dosubind{cp}{#2}{#1}}}
+
+% Define the macros used in formatting output of the sorted index material.
+
+% @printindex causes a particular index (the ??s file) to get printed.
+% It does not print any chapter heading (usually an @unnumbered).
+%
+\parseargdef\printindex{\begingroup
+ \dobreak \chapheadingskip{10000}%
+ %
+ \smallfonts \rm
+ \tolerance = 9500
+ \plainfrenchspacing
+ \everypar = {}% don't want the \kern\-parindent from indentation suppression.
+ %
+ % See if the index file exists and is nonempty.
+ % Change catcode of @ here so that if the index file contains
+ % \initial {@}
+ % as its first line, TeX doesn't complain about mismatched braces
+ % (because it thinks @} is a control sequence).
+ \catcode`\@ = 11
+ \openin 1 \jobname.#1s
+ \ifeof 1
+ % \enddoublecolumns gets confused if there is no text in the index,
+ % and it loses the chapter title and the aux file entries for the
+ % index. The easiest way to prevent this problem is to make sure
+ % there is some text.
+ \putwordIndexNonexistent
+ \else
+ %
+ % If the index file exists but is empty, then \openin leaves \ifeof
+ % false. We have to make TeX try to read something from the file, so
+ % it can discover if there is anything in it.
+ \read 1 to \temp
+ \ifeof 1
+ \putwordIndexIsEmpty
+ \else
+ % Index files are almost Texinfo source, but we use \ as the escape
+ % character. It would be better to use @, but that's too big a change
+ % to make right now.
+ \def\indexbackslash{\backslashcurfont}%
+ \catcode`\\ = 0
+ \escapechar = `\\
+ \begindoublecolumns
+ \input \jobname.#1s
+ \enddoublecolumns
+ \fi
+ \fi
+ \closein 1
+\endgroup}
+
+% These macros are used by the sorted index file itself.
+% Change them to control the appearance of the index.
+
+\def\initial#1{{%
+ % Some minor font changes for the special characters.
+ \let\tentt=\sectt \let\tt=\sectt \let\sf=\sectt
+ %
+ % Remove any glue we may have, we'll be inserting our own.
+ \removelastskip
+ %
+ % We like breaks before the index initials, so insert a bonus.
+ \nobreak
+ \vskip 0pt plus 3\baselineskip
+ \penalty 0
+ \vskip 0pt plus -3\baselineskip
+ %
+ % Typeset the initial. Making this add up to a whole number of
+ % baselineskips increases the chance of the dots lining up from column
+ % to column. It still won't often be perfect, because of the stretch
+ % we need before each entry, but it's better.
+ %
+ % No shrink because it confuses \balancecolumns.
+ \vskip 1.67\baselineskip plus .5\baselineskip
+ \leftline{\secbf #1}%
+ % Do our best not to break after the initial.
+ \nobreak
+ \vskip .33\baselineskip plus .1\baselineskip
+}}
+
+% \entry typesets a paragraph consisting of the text (#1), dot leaders, and
+% then page number (#2) flushed to the right margin. It is used for index
+% and table of contents entries. The paragraph is indented by \leftskip.
+%
+% A straightforward implementation would start like this:
+% \def\entry#1#2{...
+% But this freezes the catcodes in the argument, and can cause problems to
+% @code, which sets - active. This problem was fixed by a kludge---
+% ``-'' was active throughout whole index, but this isn't really right.
+%
+% The right solution is to prevent \entry from swallowing the whole text.
+% --kasal, 21nov03
+\def\entry{%
+ \begingroup
+ %
+ % Start a new paragraph if necessary, so our assignments below can't
+ % affect previous text.
+ \par
+ %
+ % Do not fill out the last line with white space.
+ \parfillskip = 0in
+ %
+ % No extra space above this paragraph.
+ \parskip = 0in
+ %
+ % Do not prefer a separate line ending with a hyphen to fewer lines.
+ \finalhyphendemerits = 0
+ %
+ % \hangindent is only relevant when the entry text and page number
+ % don't both fit on one line. In that case, bob suggests starting the
+ % dots pretty far over on the line. Unfortunately, a large
+ % indentation looks wrong when the entry text itself is broken across
+ % lines. So we use a small indentation and put up with long leaders.
+ %
+ % \hangafter is reset to 1 (which is the value we want) at the start
+ % of each paragraph, so we need not do anything with that.
+ \hangindent = 2em
+ %
+ % When the entry text needs to be broken, just fill out the first line
+ % with blank space.
+ \rightskip = 0pt plus1fil
+ %
+ % A bit of stretch before each entry for the benefit of balancing
+ % columns.
+ \vskip 0pt plus1pt
+ %
+ % Swallow the left brace of the text (first parameter):
+ \afterassignment\doentry
+ \let\temp =
+}
+\def\doentry{%
+ \bgroup % Instead of the swallowed brace.
+ \noindent
+ \aftergroup\finishentry
+ % And now comes the text of the entry.
+}
+\def\finishentry#1{%
+ % #1 is the page number.
+ %
+ % The following is kludged to not output a line of dots in the index if
+ % there are no page numbers. The next person who breaks this will be
+ % cursed by a Unix daemon.
+ \setbox\boxA = \hbox{#1}%
+ \ifdim\wd\boxA = 0pt
+ \ %
+ \else
+ %
+ % If we must, put the page number on a line of its own, and fill out
+ % this line with blank space. (The \hfil is overwhelmed with the
+ % fill leaders glue in \indexdotfill if the page number does fit.)
+ \hfil\penalty50
+ \null\nobreak\indexdotfill % Have leaders before the page number.
+ %
+ % The `\ ' here is removed by the implicit \unskip that TeX does as
+ % part of (the primitive) \par. Without it, a spurious underfull
+ % \hbox ensues.
+ \ifpdf
+ \pdfgettoks#1.%
+ \ \the\toksA
+ \else
+ \ #1%
+ \fi
+ \fi
+ \par
+ \endgroup
+}
+
+% Like plain.tex's \dotfill, except uses up at least 1 em.
+\def\indexdotfill{\cleaders
+ \hbox{$\mathsurround=0pt \mkern1.5mu.\mkern1.5mu$}\hskip 1em plus 1fill}
+
+\def\primary #1{\line{#1\hfil}}
+
+\newskip\secondaryindent \secondaryindent=0.5cm
+\def\secondary#1#2{{%
+ \parfillskip=0in
+ \parskip=0in
+ \hangindent=1in
+ \hangafter=1
+ \noindent\hskip\secondaryindent\hbox{#1}\indexdotfill
+ \ifpdf
+ \pdfgettoks#2.\ \the\toksA % The page number ends the paragraph.
+ \else
+ #2
+ \fi
+ \par
+}}
+
+% Define two-column mode, which we use to typeset indexes.
+% Adapted from the TeXbook, page 416, which is to say,
+% the manmac.tex format used to print the TeXbook itself.
+\catcode`\@=11
+
+\newbox\partialpage
+\newdimen\doublecolumnhsize
+
+\def\begindoublecolumns{\begingroup % ended by \enddoublecolumns
+ % Grab any single-column material above us.
+ \output = {%
+ %
+ % Here is a possibility not foreseen in manmac: if we accumulate a
+ % whole lot of material, we might end up calling this \output
+ % routine twice in a row (see the doublecol-lose test, which is
+ % essentially a couple of indexes with @setchapternewpage off). In
+ % that case we just ship out what is in \partialpage with the normal
+ % output routine. Generally, \partialpage will be empty when this
+ % runs and this will be a no-op. See the indexspread.tex test case.
+ \ifvoid\partialpage \else
+ \onepageout{\pagecontents\partialpage}%
+ \fi
+ %
+ \global\setbox\partialpage = \vbox{%
+ % Unvbox the main output page.
+ \unvbox\PAGE
+ \kern-\topskip \kern\baselineskip
+ }%
+ }%
+ \eject % run that output routine to set \partialpage
+ %
+ % Use the double-column output routine for subsequent pages.
+ \output = {\doublecolumnout}%
+ %
+ % Change the page size parameters. We could do this once outside this
+ % routine, in each of @smallbook, @afourpaper, and the default 8.5x11
+ % format, but then we repeat the same computation. Repeating a couple
+ % of assignments once per index is clearly meaningless for the
+ % execution time, so we may as well do it in one place.
+ %
+ % First we halve the line length, less a little for the gutter between
+ % the columns. We compute the gutter based on the line length, so it
+ % changes automatically with the paper format. The magic constant
+ % below is chosen so that the gutter has the same value (well, +-<1pt)
+ % as it did when we hard-coded it.
+ %
+ % We put the result in a separate register, \doublecolumhsize, so we
+ % can restore it in \pagesofar, after \hsize itself has (potentially)
+ % been clobbered.
+ %
+ \doublecolumnhsize = \hsize
+ \advance\doublecolumnhsize by -.04154\hsize
+ \divide\doublecolumnhsize by 2
+ \hsize = \doublecolumnhsize
+ %
+ % Double the \vsize as well. (We don't need a separate register here,
+ % since nobody clobbers \vsize.)
+ \vsize = 2\vsize
+}
+
+% The double-column output routine for all double-column pages except
+% the last.
+%
+\def\doublecolumnout{%
+ \splittopskip=\topskip \splitmaxdepth=\maxdepth
+ % Get the available space for the double columns -- the normal
+ % (undoubled) page height minus any material left over from the
+ % previous page.
+ \dimen@ = \vsize
+ \divide\dimen@ by 2
+ \advance\dimen@ by -\ht\partialpage
+ %
+ % box0 will be the left-hand column, box2 the right.
+ \setbox0=\vsplit255 to\dimen@ \setbox2=\vsplit255 to\dimen@
+ \onepageout\pagesofar
+ \unvbox255
+ \penalty\outputpenalty
+}
+%
+% Re-output the contents of the output page -- any previous material,
+% followed by the two boxes we just split, in box0 and box2.
+\def\pagesofar{%
+ \unvbox\partialpage
+ %
+ \hsize = \doublecolumnhsize
+ \wd0=\hsize \wd2=\hsize
+ \hbox to\pagewidth{\box0\hfil\box2}%
+}
+%
+% All done with double columns.
+\def\enddoublecolumns{%
+ % The following penalty ensures that the page builder is exercised
+ % _before_ we change the output routine. This is necessary in the
+ % following situation:
+ %
+ % The last section of the index consists only of a single entry.
+ % Before this section, \pagetotal is less than \pagegoal, so no
+ % break occurs before the last section starts. However, the last
+ % section, consisting of \initial and the single \entry, does not
+ % fit on the page and has to be broken off. Without the following
+ % penalty the page builder will not be exercised until \eject
+ % below, and by that time we'll already have changed the output
+ % routine to the \balancecolumns version, so the next-to-last
+ % double-column page will be processed with \balancecolumns, which
+ % is wrong: The two columns will go to the main vertical list, with
+ % the broken-off section in the recent contributions. As soon as
+ % the output routine finishes, TeX starts reconsidering the page
+ % break. The two columns and the broken-off section both fit on the
+ % page, because the two columns now take up only half of the page
+ % goal. When TeX sees \eject from below which follows the final
+ % section, it invokes the new output routine that we've set after
+ % \balancecolumns below; \onepageout will try to fit the two columns
+ % and the final section into the vbox of \pageheight (see
+ % \pagebody), causing an overfull box.
+ %
+ % Note that glue won't work here, because glue does not exercise the
+ % page builder, unlike penalties (see The TeXbook, pp. 280-281).
+ \penalty0
+ %
+ \output = {%
+ % Split the last of the double-column material. Leave it on the
+ % current page, no automatic page break.
+ \balancecolumns
+ %
+ % If we end up splitting too much material for the current page,
+ % though, there will be another page break right after this \output
+ % invocation ends. Having called \balancecolumns once, we do not
+ % want to call it again. Therefore, reset \output to its normal
+ % definition right away. (We hope \balancecolumns will never be
+ % called on to balance too much material, but if it is, this makes
+ % the output somewhat more palatable.)
+ \global\output = {\onepageout{\pagecontents\PAGE}}%
+ }%
+ \eject
+ \endgroup % started in \begindoublecolumns
+ %
+ % \pagegoal was set to the doubled \vsize above, since we restarted
+ % the current page. We're now back to normal single-column
+ % typesetting, so reset \pagegoal to the normal \vsize (after the
+ % \endgroup where \vsize got restored).
+ \pagegoal = \vsize
+}
+%
+% Called at the end of the double column material.
+\def\balancecolumns{%
+ \setbox0 = \vbox{\unvbox255}% like \box255 but more efficient, see p.120.
+ \dimen@ = \ht0
+ \advance\dimen@ by \topskip
+ \advance\dimen@ by-\baselineskip
+ \divide\dimen@ by 2 % target to split to
+ %debug\message{final 2-column material height=\the\ht0, target=\the\dimen@.}%
+ \splittopskip = \topskip
+ % Loop until we get a decent breakpoint.
+ {%
+ \vbadness = 10000
+ \loop
+ \global\setbox3 = \copy0
+ \global\setbox1 = \vsplit3 to \dimen@
+ \ifdim\ht3>\dimen@
+ \global\advance\dimen@ by 1pt
+ \repeat
+ }%
+ %debug\message{split to \the\dimen@, column heights: \the\ht1, \the\ht3.}%
+ \setbox0=\vbox to\dimen@{\unvbox1}%
+ \setbox2=\vbox to\dimen@{\unvbox3}%
+ %
+ \pagesofar
+}
+\catcode`\@ = \other
+
+
+\message{sectioning,}
+% Chapters, sections, etc.
+
+% \unnumberedno is an oxymoron, of course. But we count the unnumbered
+% sections so that we can refer to them unambiguously in the pdf
+% outlines by their "section number". We avoid collisions with chapter
+% numbers by starting them at 10000. (If a document ever has 10000
+% chapters, we're in trouble anyway, I'm sure.)
+\newcount\unnumberedno \unnumberedno = 10000
+\newcount\chapno
+\newcount\secno \secno=0
+\newcount\subsecno \subsecno=0
+\newcount\subsubsecno \subsubsecno=0
+
+% This counter is funny since it counts through charcodes of letters A, B, ...
+\newcount\appendixno \appendixno = `\@
+%
+% \def\appendixletter{\char\the\appendixno}
+% We do the following ugly conditional instead of the above simple
+% construct for the sake of pdftex, which needs the actual
+% letter in the expansion, not just typeset.
+%
+\def\appendixletter{%
+ \ifnum\appendixno=`A A%
+ \else\ifnum\appendixno=`B B%
+ \else\ifnum\appendixno=`C C%
+ \else\ifnum\appendixno=`D D%
+ \else\ifnum\appendixno=`E E%
+ \else\ifnum\appendixno=`F F%
+ \else\ifnum\appendixno=`G G%
+ \else\ifnum\appendixno=`H H%
+ \else\ifnum\appendixno=`I I%
+ \else\ifnum\appendixno=`J J%
+ \else\ifnum\appendixno=`K K%
+ \else\ifnum\appendixno=`L L%
+ \else\ifnum\appendixno=`M M%
+ \else\ifnum\appendixno=`N N%
+ \else\ifnum\appendixno=`O O%
+ \else\ifnum\appendixno=`P P%
+ \else\ifnum\appendixno=`Q Q%
+ \else\ifnum\appendixno=`R R%
+ \else\ifnum\appendixno=`S S%
+ \else\ifnum\appendixno=`T T%
+ \else\ifnum\appendixno=`U U%
+ \else\ifnum\appendixno=`V V%
+ \else\ifnum\appendixno=`W W%
+ \else\ifnum\appendixno=`X X%
+ \else\ifnum\appendixno=`Y Y%
+ \else\ifnum\appendixno=`Z Z%
+ % The \the is necessary, despite appearances, because \appendixletter is
+ % expanded while writing the .toc file. \char\appendixno is not
+ % expandable, thus it is written literally, thus all appendixes come out
+ % with the same letter (or @) in the toc without it.
+ \else\char\the\appendixno
+ \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi
+ \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi}
+
+% Each @chapter defines these (using marks) as the number+name, number
+% and name of the chapter. Page headings and footings can use
+% these. @section does likewise.
+\def\thischapter{}
+\def\thischapternum{}
+\def\thischaptername{}
+\def\thissection{}
+\def\thissectionnum{}
+\def\thissectionname{}
+
+\newcount\absseclevel % used to calculate proper heading level
+\newcount\secbase\secbase=0 % @raisesections/@lowersections modify this count
+
+% @raisesections: treat @section as chapter, @subsection as section, etc.
+\def\raisesections{\global\advance\secbase by -1}
+\let\up=\raisesections % original BFox name
+
+% @lowersections: treat @chapter as section, @section as subsection, etc.
+\def\lowersections{\global\advance\secbase by 1}
+\let\down=\lowersections % original BFox name
+
+% we only have subsub.
+\chardef\maxseclevel = 3
+%
+% A numbered section within an unnumbered changes to unnumbered too.
+% To achive this, remember the "biggest" unnum. sec. we are currently in:
+\chardef\unmlevel = \maxseclevel
+%
+% Trace whether the current chapter is an appendix or not:
+% \chapheadtype is "N" or "A", unnumbered chapters are ignored.
+\def\chapheadtype{N}
+
+% Choose a heading macro
+% #1 is heading type
+% #2 is heading level
+% #3 is text for heading
+\def\genhead#1#2#3{%
+ % Compute the abs. sec. level:
+ \absseclevel=#2
+ \advance\absseclevel by \secbase
+ % Make sure \absseclevel doesn't fall outside the range:
+ \ifnum \absseclevel < 0
+ \absseclevel = 0
+ \else
+ \ifnum \absseclevel > 3
+ \absseclevel = 3
+ \fi
+ \fi
+ % The heading type:
+ \def\headtype{#1}%
+ \if \headtype U%
+ \ifnum \absseclevel < \unmlevel
+ \chardef\unmlevel = \absseclevel
+ \fi
+ \else
+ % Check for appendix sections:
+ \ifnum \absseclevel = 0
+ \edef\chapheadtype{\headtype}%
+ \else
+ \if \headtype A\if \chapheadtype N%
+ \errmessage{@appendix... within a non-appendix chapter}%
+ \fi\fi
+ \fi
+ % Check for numbered within unnumbered:
+ \ifnum \absseclevel > \unmlevel
+ \def\headtype{U}%
+ \else
+ \chardef\unmlevel = 3
+ \fi
+ \fi
+ % Now print the heading:
+ \if \headtype U%
+ \ifcase\absseclevel
+ \unnumberedzzz{#3}%
+ \or \unnumberedseczzz{#3}%
+ \or \unnumberedsubseczzz{#3}%
+ \or \unnumberedsubsubseczzz{#3}%
+ \fi
+ \else
+ \if \headtype A%
+ \ifcase\absseclevel
+ \appendixzzz{#3}%
+ \or \appendixsectionzzz{#3}%
+ \or \appendixsubseczzz{#3}%
+ \or \appendixsubsubseczzz{#3}%
+ \fi
+ \else
+ \ifcase\absseclevel
+ \chapterzzz{#3}%
+ \or \seczzz{#3}%
+ \or \numberedsubseczzz{#3}%
+ \or \numberedsubsubseczzz{#3}%
+ \fi
+ \fi
+ \fi
+ \suppressfirstparagraphindent
+}
+
+% an interface:
+\def\numhead{\genhead N}
+\def\apphead{\genhead A}
+\def\unnmhead{\genhead U}
+
+% @chapter, @appendix, @unnumbered. Increment top-level counter, reset
+% all lower-level sectioning counters to zero.
+%
+% Also set \chaplevelprefix, which we prepend to @float sequence numbers
+% (e.g., figures), q.v. By default (before any chapter), that is empty.
+\let\chaplevelprefix = \empty
+%
+\outer\parseargdef\chapter{\numhead0{#1}} % normally numhead0 calls chapterzzz
+\def\chapterzzz#1{%
+ % section resetting is \global in case the chapter is in a group, such
+ % as an @include file.
+ \global\secno=0 \global\subsecno=0 \global\subsubsecno=0
+ \global\advance\chapno by 1
+ %
+ % Used for \float.
+ \gdef\chaplevelprefix{\the\chapno.}%
+ \resetallfloatnos
+ %
+ \message{\putwordChapter\space \the\chapno}%
+ %
+ % Write the actual heading.
+ \chapmacro{#1}{Ynumbered}{\the\chapno}%
+ %
+ % So @section and the like are numbered underneath this chapter.
+ \global\let\section = \numberedsec
+ \global\let\subsection = \numberedsubsec
+ \global\let\subsubsection = \numberedsubsubsec
+}
+
+\outer\parseargdef\appendix{\apphead0{#1}} % normally apphead0 calls appendixzzz
+\def\appendixzzz#1{%
+ \global\secno=0 \global\subsecno=0 \global\subsubsecno=0
+ \global\advance\appendixno by 1
+ \gdef\chaplevelprefix{\appendixletter.}%
+ \resetallfloatnos
+ %
+ \def\appendixnum{\putwordAppendix\space \appendixletter}%
+ \message{\appendixnum}%
+ %
+ \chapmacro{#1}{Yappendix}{\appendixletter}%
+ %
+ \global\let\section = \appendixsec
+ \global\let\subsection = \appendixsubsec
+ \global\let\subsubsection = \appendixsubsubsec
+}
+
+\outer\parseargdef\unnumbered{\unnmhead0{#1}} % normally unnmhead0 calls unnumberedzzz
+\def\unnumberedzzz#1{%
+ \global\secno=0 \global\subsecno=0 \global\subsubsecno=0
+ \global\advance\unnumberedno by 1
+ %
+ % Since an unnumbered has no number, no prefix for figures.
+ \global\let\chaplevelprefix = \empty
+ \resetallfloatnos
+ %
+ % This used to be simply \message{#1}, but TeX fully expands the
+ % argument to \message. Therefore, if #1 contained @-commands, TeX
+ % expanded them. For example, in `@unnumbered The @cite{Book}', TeX
+ % expanded @cite (which turns out to cause errors because \cite is meant
+ % to be executed, not expanded).
+ %
+ % Anyway, we don't want the fully-expanded definition of @cite to appear
+ % as a result of the \message, we just want `@cite' itself. We use
+ % \the<toks register> to achieve this: TeX expands \the<toks> only once,
+ % simply yielding the contents of <toks register>. (We also do this for
+ % the toc entries.)
+ \toks0 = {#1}%
+ \message{(\the\toks0)}%
+ %
+ \chapmacro{#1}{Ynothing}{\the\unnumberedno}%
+ %
+ \global\let\section = \unnumberedsec
+ \global\let\subsection = \unnumberedsubsec
+ \global\let\subsubsection = \unnumberedsubsubsec
+}
+
+% @centerchap is like @unnumbered, but the heading is centered.
+\outer\parseargdef\centerchap{%
+ % Well, we could do the following in a group, but that would break
+ % an assumption that \chapmacro is called at the outermost level.
+ % Thus we are safer this way: --kasal, 24feb04
+ \let\centerparametersmaybe = \centerparameters
+ \unnmhead0{#1}%
+ \let\centerparametersmaybe = \relax
+}
+
+% @top is like @unnumbered.
+\let\top\unnumbered
+
+% Sections.
+\outer\parseargdef\numberedsec{\numhead1{#1}} % normally calls seczzz
+\def\seczzz#1{%
+ \global\subsecno=0 \global\subsubsecno=0 \global\advance\secno by 1
+ \sectionheading{#1}{sec}{Ynumbered}{\the\chapno.\the\secno}%
+}
+
+\outer\parseargdef\appendixsection{\apphead1{#1}} % normally calls appendixsectionzzz
+\def\appendixsectionzzz#1{%
+ \global\subsecno=0 \global\subsubsecno=0 \global\advance\secno by 1
+ \sectionheading{#1}{sec}{Yappendix}{\appendixletter.\the\secno}%
+}
+\let\appendixsec\appendixsection
+
+\outer\parseargdef\unnumberedsec{\unnmhead1{#1}} % normally calls unnumberedseczzz
+\def\unnumberedseczzz#1{%
+ \global\subsecno=0 \global\subsubsecno=0 \global\advance\secno by 1
+ \sectionheading{#1}{sec}{Ynothing}{\the\unnumberedno.\the\secno}%
+}
+
+% Subsections.
+\outer\parseargdef\numberedsubsec{\numhead2{#1}} % normally calls numberedsubseczzz
+\def\numberedsubseczzz#1{%
+ \global\subsubsecno=0 \global\advance\subsecno by 1
+ \sectionheading{#1}{subsec}{Ynumbered}{\the\chapno.\the\secno.\the\subsecno}%
+}
+
+\outer\parseargdef\appendixsubsec{\apphead2{#1}} % normally calls appendixsubseczzz
+\def\appendixsubseczzz#1{%
+ \global\subsubsecno=0 \global\advance\subsecno by 1
+ \sectionheading{#1}{subsec}{Yappendix}%
+ {\appendixletter.\the\secno.\the\subsecno}%
+}
+
+\outer\parseargdef\unnumberedsubsec{\unnmhead2{#1}} %normally calls unnumberedsubseczzz
+\def\unnumberedsubseczzz#1{%
+ \global\subsubsecno=0 \global\advance\subsecno by 1
+ \sectionheading{#1}{subsec}{Ynothing}%
+ {\the\unnumberedno.\the\secno.\the\subsecno}%
+}
+
+% Subsubsections.
+\outer\parseargdef\numberedsubsubsec{\numhead3{#1}} % normally numberedsubsubseczzz
+\def\numberedsubsubseczzz#1{%
+ \global\advance\subsubsecno by 1
+ \sectionheading{#1}{subsubsec}{Ynumbered}%
+ {\the\chapno.\the\secno.\the\subsecno.\the\subsubsecno}%
+}
+
+\outer\parseargdef\appendixsubsubsec{\apphead3{#1}} % normally appendixsubsubseczzz
+\def\appendixsubsubseczzz#1{%
+ \global\advance\subsubsecno by 1
+ \sectionheading{#1}{subsubsec}{Yappendix}%
+ {\appendixletter.\the\secno.\the\subsecno.\the\subsubsecno}%
+}
+
+\outer\parseargdef\unnumberedsubsubsec{\unnmhead3{#1}} %normally unnumberedsubsubseczzz
+\def\unnumberedsubsubseczzz#1{%
+ \global\advance\subsubsecno by 1
+ \sectionheading{#1}{subsubsec}{Ynothing}%
+ {\the\unnumberedno.\the\secno.\the\subsecno.\the\subsubsecno}%
+}
+
+% These macros control what the section commands do, according
+% to what kind of chapter we are in (ordinary, appendix, or unnumbered).
+% Define them by default for a numbered chapter.
+\let\section = \numberedsec
+\let\subsection = \numberedsubsec
+\let\subsubsection = \numberedsubsubsec
+
+% Define @majorheading, @heading and @subheading
+
+% NOTE on use of \vbox for chapter headings, section headings, and such:
+% 1) We use \vbox rather than the earlier \line to permit
+% overlong headings to fold.
+% 2) \hyphenpenalty is set to 10000 because hyphenation in a
+% heading is obnoxious; this forbids it.
+% 3) Likewise, headings look best if no \parindent is used, and
+% if justification is not attempted. Hence \raggedright.
+
+\def\majorheading{%
+ {\advance\chapheadingskip by 10pt \chapbreak }%
+ \parsearg\chapheadingzzz
+}
+
+\def\chapheading{\chapbreak \parsearg\chapheadingzzz}
+\def\chapheadingzzz#1{%
+ {\chapfonts \vbox{\hyphenpenalty=10000\tolerance=5000
+ \parindent=0pt\ptexraggedright
+ \rmisbold #1\hfill}}%
+ \bigskip \par\penalty 200\relax
+ \suppressfirstparagraphindent
+}
+
+% @heading, @subheading, @subsubheading.
+\parseargdef\heading{\sectionheading{#1}{sec}{Yomitfromtoc}{}
+ \suppressfirstparagraphindent}
+\parseargdef\subheading{\sectionheading{#1}{subsec}{Yomitfromtoc}{}
+ \suppressfirstparagraphindent}
+\parseargdef\subsubheading{\sectionheading{#1}{subsubsec}{Yomitfromtoc}{}
+ \suppressfirstparagraphindent}
+
+% These macros generate a chapter, section, etc. heading only
+% (including whitespace, linebreaking, etc. around it),
+% given all the information in convenient, parsed form.
+
+%%% Args are the skip and penalty (usually negative)
+\def\dobreak#1#2{\par\ifdim\lastskip<#1\removelastskip\penalty#2\vskip#1\fi}
+
+%%% Define plain chapter starts, and page on/off switching for it
+% Parameter controlling skip before chapter headings (if needed)
+
+\newskip\chapheadingskip
+
+\def\chapbreak{\dobreak \chapheadingskip {-4000}}
+\def\chappager{\par\vfill\supereject}
+% Because \domark is called before \chapoddpage, the filler page will
+% get the headings for the next chapter, which is wrong. But we don't
+% care -- we just disable all headings on the filler page.
+\def\chapoddpage{%
+ \chappager
+ \ifodd\pageno \else
+ \begingroup
+ \evenheadline={\hfil}\evenfootline={\hfil}%
+ \oddheadline={\hfil}\oddfootline={\hfil}%
+ \hbox to 0pt{}%
+ \chappager
+ \endgroup
+ \fi
+}
+
+\def\setchapternewpage #1 {\csname CHAPPAG#1\endcsname}
+
+\def\CHAPPAGoff{%
+\global\let\contentsalignmacro = \chappager
+\global\let\pchapsepmacro=\chapbreak
+\global\let\pagealignmacro=\chappager}
+
+\def\CHAPPAGon{%
+\global\let\contentsalignmacro = \chappager
+\global\let\pchapsepmacro=\chappager
+\global\let\pagealignmacro=\chappager
+\global\def\HEADINGSon{\HEADINGSsingle}}
+
+\def\CHAPPAGodd{%
+\global\let\contentsalignmacro = \chapoddpage
+\global\let\pchapsepmacro=\chapoddpage
+\global\let\pagealignmacro=\chapoddpage
+\global\def\HEADINGSon{\HEADINGSdouble}}
+
+\CHAPPAGon
+
+% Chapter opening.
+%
+% #1 is the text, #2 is the section type (Ynumbered, Ynothing,
+% Yappendix, Yomitfromtoc), #3 the chapter number.
+%
+% To test against our argument.
+\def\Ynothingkeyword{Ynothing}
+\def\Yomitfromtockeyword{Yomitfromtoc}
+\def\Yappendixkeyword{Yappendix}
+%
+\def\chapmacro#1#2#3{%
+ % Insert the first mark before the heading break (see notes for \domark).
+ \let\prevchapterdefs=\lastchapterdefs
+ \let\prevsectiondefs=\lastsectiondefs
+ \gdef\lastsectiondefs{\gdef\thissectionname{}\gdef\thissectionnum{}%
+ \gdef\thissection{}}%
+ %
+ \def\temptype{#2}%
+ \ifx\temptype\Ynothingkeyword
+ \gdef\lastchapterdefs{\gdef\thischaptername{#1}\gdef\thischapternum{}%
+ \gdef\thischapter{\thischaptername}}%
+ \else\ifx\temptype\Yomitfromtockeyword
+ \gdef\lastchapterdefs{\gdef\thischaptername{#1}\gdef\thischapternum{}%
+ \gdef\thischapter{}}%
+ \else\ifx\temptype\Yappendixkeyword
+ \toks0={#1}%
+ \xdef\lastchapterdefs{%
+ \gdef\noexpand\thischaptername{\the\toks0}%
+ \gdef\noexpand\thischapternum{\appendixletter}%
+ \gdef\noexpand\thischapter{\putwordAppendix{} \noexpand\thischapternum:
+ \noexpand\thischaptername}%
+ }%
+ \else
+ \toks0={#1}%
+ \xdef\lastchapterdefs{%
+ \gdef\noexpand\thischaptername{\the\toks0}%
+ \gdef\noexpand\thischapternum{\the\chapno}%
+ \gdef\noexpand\thischapter{\putwordChapter{} \noexpand\thischapternum:
+ \noexpand\thischaptername}%
+ }%
+ \fi\fi\fi
+ %
+ % Output the mark. Pass it through \safewhatsit, to take care of
+ % the preceding space.
+ \safewhatsit\domark
+ %
+ % Insert the chapter heading break.
+ \pchapsepmacro
+ %
+ % Now the second mark, after the heading break. No break points
+ % between here and the heading.
+ \let\prevchapterdefs=\lastchapterdefs
+ \let\prevsectiondefs=\lastsectiondefs
+ \domark
+ %
+ {%
+ \chapfonts \rmisbold
+ %
+ % Have to define \lastsection before calling \donoderef, because the
+ % xref code eventually uses it. On the other hand, it has to be called
+ % after \pchapsepmacro, or the headline will change too soon.
+ \gdef\lastsection{#1}%
+ %
+ % Only insert the separating space if we have a chapter/appendix
+ % number, and don't print the unnumbered ``number''.
+ \ifx\temptype\Ynothingkeyword
+ \setbox0 = \hbox{}%
+ \def\toctype{unnchap}%
+ \else\ifx\temptype\Yomitfromtockeyword
+ \setbox0 = \hbox{}% contents like unnumbered, but no toc entry
+ \def\toctype{omit}%
+ \else\ifx\temptype\Yappendixkeyword
+ \setbox0 = \hbox{\putwordAppendix{} #3\enspace}%
+ \def\toctype{app}%
+ \else
+ \setbox0 = \hbox{#3\enspace}%
+ \def\toctype{numchap}%
+ \fi\fi\fi
+ %
+ % Write the toc entry for this chapter. Must come before the
+ % \donoderef, because we include the current node name in the toc
+ % entry, and \donoderef resets it to empty.
+ \writetocentry{\toctype}{#1}{#3}%
+ %
+ % For pdftex, we have to write out the node definition (aka, make
+ % the pdfdest) after any page break, but before the actual text has
+ % been typeset. If the destination for the pdf outline is after the
+ % text, then jumping from the outline may wind up with the text not
+ % being visible, for instance under high magnification.
+ \donoderef{#2}%
+ %
+ % Typeset the actual heading.
+ \nobreak % Avoid page breaks at the interline glue.
+ \vbox{\hyphenpenalty=10000 \tolerance=5000 \parindent=0pt \ptexraggedright
+ \hangindent=\wd0 \centerparametersmaybe
+ \unhbox0 #1\par}%
+ }%
+ \nobreak\bigskip % no page break after a chapter title
+ \nobreak
+}
+
+% @centerchap -- centered and unnumbered.
+\let\centerparametersmaybe = \relax
+\def\centerparameters{%
+ \advance\rightskip by 3\rightskip
+ \leftskip = \rightskip
+ \parfillskip = 0pt
+}
+
+
+% I don't think this chapter style is supported any more, so I'm not
+% updating it with the new noderef stuff. We'll see. --karl, 11aug03.
+%
+\def\setchapterstyle #1 {\csname CHAPF#1\endcsname}
+%
+\def\unnchfopen #1{%
+\chapoddpage {\chapfonts \vbox{\hyphenpenalty=10000\tolerance=5000
+ \parindent=0pt\ptexraggedright
+ \rmisbold #1\hfill}}\bigskip \par\nobreak
+}
+\def\chfopen #1#2{\chapoddpage {\chapfonts
+\vbox to 3in{\vfil \hbox to\hsize{\hfil #2} \hbox to\hsize{\hfil #1} \vfil}}%
+\par\penalty 5000 %
+}
+\def\centerchfopen #1{%
+\chapoddpage {\chapfonts \vbox{\hyphenpenalty=10000\tolerance=5000
+ \parindent=0pt
+ \hfill {\rmisbold #1}\hfill}}\bigskip \par\nobreak
+}
+\def\CHAPFopen{%
+ \global\let\chapmacro=\chfopen
+ \global\let\centerchapmacro=\centerchfopen}
+
+
+% Section titles. These macros combine the section number parts and
+% call the generic \sectionheading to do the printing.
+%
+\newskip\secheadingskip
+\def\secheadingbreak{\dobreak \secheadingskip{-1000}}
+
+% Subsection titles.
+\newskip\subsecheadingskip
+\def\subsecheadingbreak{\dobreak \subsecheadingskip{-500}}
+
+% Subsubsection titles.
+\def\subsubsecheadingskip{\subsecheadingskip}
+\def\subsubsecheadingbreak{\subsecheadingbreak}
+
+
+% Print any size, any type, section title.
+%
+% #1 is the text, #2 is the section level (sec/subsec/subsubsec), #3 is
+% the section type for xrefs (Ynumbered, Ynothing, Yappendix), #4 is the
+% section number.
+%
+\def\seckeyword{sec}
+%
+\def\sectionheading#1#2#3#4{%
+ {%
+ % Switch to the right set of fonts.
+ \csname #2fonts\endcsname \rmisbold
+ %
+ \def\sectionlevel{#2}%
+ \def\temptype{#3}%
+ %
+ % Insert first mark before the heading break (see notes for \domark).
+ \let\prevsectiondefs=\lastsectiondefs
+ \ifx\temptype\Ynothingkeyword
+ \ifx\sectionlevel\seckeyword
+ \gdef\lastsectiondefs{\gdef\thissectionname{#1}\gdef\thissectionnum{}%
+ \gdef\thissection{\thissectionname}}%
+ \fi
+ \else\ifx\temptype\Yomitfromtockeyword
+ % Don't redefine \thissection.
+ \else\ifx\temptype\Yappendixkeyword
+ \ifx\sectionlevel\seckeyword
+ \toks0={#1}%
+ \xdef\lastsectiondefs{%
+ \gdef\noexpand\thissectionname{\the\toks0}%
+ \gdef\noexpand\thissectionnum{#4}%
+ \gdef\noexpand\thissection{\putwordSection{} \noexpand\thissectionnum:
+ \noexpand\thissectionname}%
+ }%
+ \fi
+ \else
+ \ifx\sectionlevel\seckeyword
+ \toks0={#1}%
+ \xdef\lastsectiondefs{%
+ \gdef\noexpand\thissectionname{\the\toks0}%
+ \gdef\noexpand\thissectionnum{#4}%
+ \gdef\noexpand\thissection{\putwordSection{} \noexpand\thissectionnum:
+ \noexpand\thissectionname}%
+ }%
+ \fi
+ \fi\fi\fi
+ %
+ % Go into vertical mode. Usually we'll already be there, but we
+ % don't want the following whatsit to end up in a preceding paragraph
+ % if the document didn't happen to have a blank line.
+ \par
+ %
+ % Output the mark. Pass it through \safewhatsit, to take care of
+ % the preceding space.
+ \safewhatsit\domark
+ %
+ % Insert space above the heading.
+ \csname #2headingbreak\endcsname
+ %
+ % Now the second mark, after the heading break. No break points
+ % between here and the heading.
+ \let\prevsectiondefs=\lastsectiondefs
+ \domark
+ %
+ % Only insert the space after the number if we have a section number.
+ \ifx\temptype\Ynothingkeyword
+ \setbox0 = \hbox{}%
+ \def\toctype{unn}%
+ \gdef\lastsection{#1}%
+ \else\ifx\temptype\Yomitfromtockeyword
+ % for @headings -- no section number, don't include in toc,
+ % and don't redefine \lastsection.
+ \setbox0 = \hbox{}%
+ \def\toctype{omit}%
+ \let\sectionlevel=\empty
+ \else\ifx\temptype\Yappendixkeyword
+ \setbox0 = \hbox{#4\enspace}%
+ \def\toctype{app}%
+ \gdef\lastsection{#1}%
+ \else
+ \setbox0 = \hbox{#4\enspace}%
+ \def\toctype{num}%
+ \gdef\lastsection{#1}%
+ \fi\fi\fi
+ %
+ % Write the toc entry (before \donoderef). See comments in \chapmacro.
+ \writetocentry{\toctype\sectionlevel}{#1}{#4}%
+ %
+ % Write the node reference (= pdf destination for pdftex).
+ % Again, see comments in \chapmacro.
+ \donoderef{#3}%
+ %
+ % Interline glue will be inserted when the vbox is completed.
+ % That glue will be a valid breakpoint for the page, since it'll be
+ % preceded by a whatsit (usually from the \donoderef, or from the
+ % \writetocentry if there was no node). We don't want to allow that
+ % break, since then the whatsits could end up on page n while the
+ % section is on page n+1, thus toc/etc. are wrong. Debian bug 276000.
+ \nobreak
+ %
+ % Output the actual section heading.
+ \vbox{\hyphenpenalty=10000 \tolerance=5000 \parindent=0pt \ptexraggedright
+ \hangindent=\wd0 % zero if no section number
+ \unhbox0 #1}%
+ }%
+ % Add extra space after the heading -- half of whatever came above it.
+ % Don't allow stretch, though.
+ \kern .5 \csname #2headingskip\endcsname
+ %
+ % Do not let the kern be a potential breakpoint, as it would be if it
+ % was followed by glue.
+ \nobreak
+ %
+ % We'll almost certainly start a paragraph next, so don't let that
+ % glue accumulate. (Not a breakpoint because it's preceded by a
+ % discardable item.)
+ \vskip-\parskip
+ %
+ % This is purely so the last item on the list is a known \penalty >
+ % 10000. This is so \startdefun can avoid allowing breakpoints after
+ % section headings. Otherwise, it would insert a valid breakpoint between:
+ %
+ % @section sec-whatever
+ % @deffn def-whatever
+ \penalty 10001
+}
+
+
+\message{toc,}
+% Table of contents.
+\newwrite\tocfile
+
+% Write an entry to the toc file, opening it if necessary.
+% Called from @chapter, etc.
+%
+% Example usage: \writetocentry{sec}{Section Name}{\the\chapno.\the\secno}
+% We append the current node name (if any) and page number as additional
+% arguments for the \{chap,sec,...}entry macros which will eventually
+% read this. The node name is used in the pdf outlines as the
+% destination to jump to.
+%
+% We open the .toc file for writing here instead of at @setfilename (or
+% any other fixed time) so that @contents can be anywhere in the document.
+% But if #1 is `omit', then we don't do anything. This is used for the
+% table of contents chapter openings themselves.
+%
+\newif\iftocfileopened
+\def\omitkeyword{omit}%
+%
+\def\writetocentry#1#2#3{%
+ \edef\writetoctype{#1}%
+ \ifx\writetoctype\omitkeyword \else
+ \iftocfileopened\else
+ \immediate\openout\tocfile = \jobname.toc
+ \global\tocfileopenedtrue
+ \fi
+ %
+ \iflinks
+ {\atdummies
+ \edef\temp{%
+ \write\tocfile{@#1entry{#2}{#3}{\lastnode}{\noexpand\folio}}}%
+ \temp
+ }%
+ \fi
+ \fi
+ %
+ % Tell \shipout to create a pdf destination on each page, if we're
+ % writing pdf. These are used in the table of contents. We can't
+ % just write one on every page because the title pages are numbered
+ % 1 and 2 (the page numbers aren't printed), and so are the first
+ % two pages of the document. Thus, we'd have two destinations named
+ % `1', and two named `2'.
+ \ifpdf \global\pdfmakepagedesttrue \fi
+}
+
+
+% These characters do not print properly in the Computer Modern roman
+% fonts, so we must take special care. This is more or less redundant
+% with the Texinfo input format setup at the end of this file.
+%
+\def\activecatcodes{%
+ \catcode`\"=\active
+ \catcode`\$=\active
+ \catcode`\<=\active
+ \catcode`\>=\active
+ \catcode`\\=\active
+ \catcode`\^=\active
+ \catcode`\_=\active
+ \catcode`\|=\active
+ \catcode`\~=\active
+}
+
+
+% Read the toc file, which is essentially Texinfo input.
+\def\readtocfile{%
+ \setupdatafile
+ \activecatcodes
+ \input \tocreadfilename
+}
+
+\newskip\contentsrightmargin \contentsrightmargin=1in
+\newcount\savepageno
+\newcount\lastnegativepageno \lastnegativepageno = -1
+
+% Prepare to read what we've written to \tocfile.
+%
+\def\startcontents#1{%
+ % If @setchapternewpage on, and @headings double, the contents should
+ % start on an odd page, unlike chapters. Thus, we maintain
+ % \contentsalignmacro in parallel with \pagealignmacro.
+ % From: Torbjorn Granlund <tege@matematik.su.se>
+ \contentsalignmacro
+ \immediate\closeout\tocfile
+ %
+ % Don't need to put `Contents' or `Short Contents' in the headline.
+ % It is abundantly clear what they are.
+ \chapmacro{#1}{Yomitfromtoc}{}%
+ %
+ \savepageno = \pageno
+ \begingroup % Set up to handle contents files properly.
+ \raggedbottom % Worry more about breakpoints than the bottom.
+ \advance\hsize by -\contentsrightmargin % Don't use the full line length.
+ %
+ % Roman numerals for page numbers.
+ \ifnum \pageno>0 \global\pageno = \lastnegativepageno \fi
+}
+
+% redefined for the two-volume lispref. We always output on
+% \jobname.toc even if this is redefined.
+%
+\def\tocreadfilename{\jobname.toc}
+
+% Normal (long) toc.
+%
+\def\contents{%
+ \startcontents{\putwordTOC}%
+ \openin 1 \tocreadfilename\space
+ \ifeof 1 \else
+ \readtocfile
+ \fi
+ \vfill \eject
+ \contentsalignmacro % in case @setchapternewpage odd is in effect
+ \ifeof 1 \else
+ \pdfmakeoutlines
+ \fi
+ \closein 1
+ \endgroup
+ \lastnegativepageno = \pageno
+ \global\pageno = \savepageno
+}
+
+% And just the chapters.
+\def\summarycontents{%
+ \startcontents{\putwordShortTOC}%
+ %
+ \let\numchapentry = \shortchapentry
+ \let\appentry = \shortchapentry
+ \let\unnchapentry = \shortunnchapentry
+ % We want a true roman here for the page numbers.
+ \secfonts
+ \let\rm=\shortcontrm \let\bf=\shortcontbf
+ \let\sl=\shortcontsl \let\tt=\shortconttt
+ \rm
+ \hyphenpenalty = 10000
+ \advance\baselineskip by 1pt % Open it up a little.
+ \def\numsecentry##1##2##3##4{}
+ \let\appsecentry = \numsecentry
+ \let\unnsecentry = \numsecentry
+ \let\numsubsecentry = \numsecentry
+ \let\appsubsecentry = \numsecentry
+ \let\unnsubsecentry = \numsecentry
+ \let\numsubsubsecentry = \numsecentry
+ \let\appsubsubsecentry = \numsecentry
+ \let\unnsubsubsecentry = \numsecentry
+ \openin 1 \tocreadfilename\space
+ \ifeof 1 \else
+ \readtocfile
+ \fi
+ \closein 1
+ \vfill \eject
+ \contentsalignmacro % in case @setchapternewpage odd is in effect
+ \endgroup
+ \lastnegativepageno = \pageno
+ \global\pageno = \savepageno
+}
+\let\shortcontents = \summarycontents
+
+% Typeset the label for a chapter or appendix for the short contents.
+% The arg is, e.g., `A' for an appendix, or `3' for a chapter.
+%
+\def\shortchaplabel#1{%
+ % This space should be enough, since a single number is .5em, and the
+ % widest letter (M) is 1em, at least in the Computer Modern fonts.
+ % But use \hss just in case.
+ % (This space doesn't include the extra space that gets added after
+ % the label; that gets put in by \shortchapentry above.)
+ %
+ % We'd like to right-justify chapter numbers, but that looks strange
+ % with appendix letters. And right-justifying numbers and
+ % left-justifying letters looks strange when there is less than 10
+ % chapters. Have to read the whole toc once to know how many chapters
+ % there are before deciding ...
+ \hbox to 1em{#1\hss}%
+}
+
+% These macros generate individual entries in the table of contents.
+% The first argument is the chapter or section name.
+% The last argument is the page number.
+% The arguments in between are the chapter number, section number, ...
+
+% Chapters, in the main contents.
+\def\numchapentry#1#2#3#4{\dochapentry{#2\labelspace#1}{#4}}
+%
+% Chapters, in the short toc.
+% See comments in \dochapentry re vbox and related settings.
+\def\shortchapentry#1#2#3#4{%
+ \tocentry{\shortchaplabel{#2}\labelspace #1}{\doshortpageno\bgroup#4\egroup}%
+}
+
+% Appendices, in the main contents.
+% Need the word Appendix, and a fixed-size box.
+%
+\def\appendixbox#1{%
+ % We use M since it's probably the widest letter.
+ \setbox0 = \hbox{\putwordAppendix{} M}%
+ \hbox to \wd0{\putwordAppendix{} #1\hss}}
+%
+\def\appentry#1#2#3#4{\dochapentry{\appendixbox{#2}\labelspace#1}{#4}}
+
+% Unnumbered chapters.
+\def\unnchapentry#1#2#3#4{\dochapentry{#1}{#4}}
+\def\shortunnchapentry#1#2#3#4{\tocentry{#1}{\doshortpageno\bgroup#4\egroup}}
+
+% Sections.
+\def\numsecentry#1#2#3#4{\dosecentry{#2\labelspace#1}{#4}}
+\let\appsecentry=\numsecentry
+\def\unnsecentry#1#2#3#4{\dosecentry{#1}{#4}}
+
+% Subsections.
+\def\numsubsecentry#1#2#3#4{\dosubsecentry{#2\labelspace#1}{#4}}
+\let\appsubsecentry=\numsubsecentry
+\def\unnsubsecentry#1#2#3#4{\dosubsecentry{#1}{#4}}
+
+% And subsubsections.
+\def\numsubsubsecentry#1#2#3#4{\dosubsubsecentry{#2\labelspace#1}{#4}}
+\let\appsubsubsecentry=\numsubsubsecentry
+\def\unnsubsubsecentry#1#2#3#4{\dosubsubsecentry{#1}{#4}}
+
+% This parameter controls the indentation of the various levels.
+% Same as \defaultparindent.
+\newdimen\tocindent \tocindent = 15pt
+
+% Now for the actual typesetting. In all these, #1 is the text and #2 is the
+% page number.
+%
+% If the toc has to be broken over pages, we want it to be at chapters
+% if at all possible; hence the \penalty.
+\def\dochapentry#1#2{%
+ \penalty-300 \vskip1\baselineskip plus.33\baselineskip minus.25\baselineskip
+ \begingroup
+ \chapentryfonts
+ \tocentry{#1}{\dopageno\bgroup#2\egroup}%
+ \endgroup
+ \nobreak\vskip .25\baselineskip plus.1\baselineskip
+}
+
+\def\dosecentry#1#2{\begingroup
+ \secentryfonts \leftskip=\tocindent
+ \tocentry{#1}{\dopageno\bgroup#2\egroup}%
+\endgroup}
+
+\def\dosubsecentry#1#2{\begingroup
+ \subsecentryfonts \leftskip=2\tocindent
+ \tocentry{#1}{\dopageno\bgroup#2\egroup}%
+\endgroup}
+
+\def\dosubsubsecentry#1#2{\begingroup
+ \subsubsecentryfonts \leftskip=3\tocindent
+ \tocentry{#1}{\dopageno\bgroup#2\egroup}%
+\endgroup}
+
+% We use the same \entry macro as for the index entries.
+\let\tocentry = \entry
+
+% Space between chapter (or whatever) number and the title.
+\def\labelspace{\hskip1em \relax}
+
+\def\dopageno#1{{\rm #1}}
+\def\doshortpageno#1{{\rm #1}}
+
+\def\chapentryfonts{\secfonts \rm}
+\def\secentryfonts{\textfonts}
+\def\subsecentryfonts{\textfonts}
+\def\subsubsecentryfonts{\textfonts}
+
+
+\message{environments,}
+% @foo ... @end foo.
+
+% @tex ... @end tex escapes into raw Tex temporarily.
+% One exception: @ is still an escape character, so that @end tex works.
+% But \@ or @@ will get a plain tex @ character.
+
+\envdef\tex{%
+ \setupmarkupstyle{tex}%
+ \catcode `\\=0 \catcode `\{=1 \catcode `\}=2
+ \catcode `\$=3 \catcode `\&=4 \catcode `\#=6
+ \catcode `\^=7 \catcode `\_=8 \catcode `\~=\active \let~=\tie
+ \catcode `\%=14
+ \catcode `\+=\other
+ \catcode `\"=\other
+ \catcode `\|=\other
+ \catcode `\<=\other
+ \catcode `\>=\other
+ \catcode`\`=\other
+ \catcode`\'=\other
+ \escapechar=`\\
+ %
+ \let\b=\ptexb
+ \let\bullet=\ptexbullet
+ \let\c=\ptexc
+ \let\,=\ptexcomma
+ \let\.=\ptexdot
+ \let\dots=\ptexdots
+ \let\equiv=\ptexequiv
+ \let\!=\ptexexclam
+ \let\i=\ptexi
+ \let\indent=\ptexindent
+ \let\noindent=\ptexnoindent
+ \let\{=\ptexlbrace
+ \let\+=\tabalign
+ \let\}=\ptexrbrace
+ \let\/=\ptexslash
+ \let\*=\ptexstar
+ \let\t=\ptext
+ \expandafter \let\csname top\endcsname=\ptextop % outer
+ \let\frenchspacing=\plainfrenchspacing
+ %
+ \def\endldots{\mathinner{\ldots\ldots\ldots\ldots}}%
+ \def\enddots{\relax\ifmmode\endldots\else$\mathsurround=0pt \endldots\,$\fi}%
+ \def\@{@}%
+}
+% There is no need to define \Etex.
+
+% Define @lisp ... @end lisp.
+% @lisp environment forms a group so it can rebind things,
+% including the definition of @end lisp (which normally is erroneous).
+
+% Amount to narrow the margins by for @lisp.
+\newskip\lispnarrowing \lispnarrowing=0.4in
+
+% This is the definition that ^^M gets inside @lisp, @example, and other
+% such environments. \null is better than a space, since it doesn't
+% have any width.
+\def\lisppar{\null\endgraf}
+
+% This space is always present above and below environments.
+\newskip\envskipamount \envskipamount = 0pt
+
+% Make spacing and below environment symmetrical. We use \parskip here
+% to help in doing that, since in @example-like environments \parskip
+% is reset to zero; thus the \afterenvbreak inserts no space -- but the
+% start of the next paragraph will insert \parskip.
+%
+\def\aboveenvbreak{{%
+ % =10000 instead of <10000 because of a special case in \itemzzz and
+ % \sectionheading, q.v.
+ \ifnum \lastpenalty=10000 \else
+ \advance\envskipamount by \parskip
+ \endgraf
+ \ifdim\lastskip<\envskipamount
+ \removelastskip
+ % it's not a good place to break if the last penalty was \nobreak
+ % or better ...
+ \ifnum\lastpenalty<10000 \penalty-50 \fi
+ \vskip\envskipamount
+ \fi
+ \fi
+}}
+
+\let\afterenvbreak = \aboveenvbreak
+
+% \nonarrowing is a flag. If "set", @lisp etc don't narrow margins; it will
+% also clear it, so that its embedded environments do the narrowing again.
+\let\nonarrowing=\relax
+
+% @cartouche ... @end cartouche: draw rectangle w/rounded corners around
+% environment contents.
+\font\circle=lcircle10
+\newdimen\circthick
+\newdimen\cartouter\newdimen\cartinner
+\newskip\normbskip\newskip\normpskip\newskip\normlskip
+\circthick=\fontdimen8\circle
+%
+\def\ctl{{\circle\char'013\hskip -6pt}}% 6pt from pl file: 1/2charwidth
+\def\ctr{{\hskip 6pt\circle\char'010}}
+\def\cbl{{\circle\char'012\hskip -6pt}}
+\def\cbr{{\hskip 6pt\circle\char'011}}
+\def\carttop{\hbox to \cartouter{\hskip\lskip
+ \ctl\leaders\hrule height\circthick\hfil\ctr
+ \hskip\rskip}}
+\def\cartbot{\hbox to \cartouter{\hskip\lskip
+ \cbl\leaders\hrule height\circthick\hfil\cbr
+ \hskip\rskip}}
+%
+\newskip\lskip\newskip\rskip
+
+\envdef\cartouche{%
+ \ifhmode\par\fi % can't be in the midst of a paragraph.
+ \startsavinginserts
+ \lskip=\leftskip \rskip=\rightskip
+ \leftskip=0pt\rightskip=0pt % we want these *outside*.
+ \cartinner=\hsize \advance\cartinner by-\lskip
+ \advance\cartinner by-\rskip
+ \cartouter=\hsize
+ \advance\cartouter by 18.4pt % allow for 3pt kerns on either
+ % side, and for 6pt waste from
+ % each corner char, and rule thickness
+ \normbskip=\baselineskip \normpskip=\parskip \normlskip=\lineskip
+ % Flag to tell @lisp, etc., not to narrow margin.
+ \let\nonarrowing = t%
+ \vbox\bgroup
+ \baselineskip=0pt\parskip=0pt\lineskip=0pt
+ \carttop
+ \hbox\bgroup
+ \hskip\lskip
+ \vrule\kern3pt
+ \vbox\bgroup
+ \kern3pt
+ \hsize=\cartinner
+ \baselineskip=\normbskip
+ \lineskip=\normlskip
+ \parskip=\normpskip
+ \vskip -\parskip
+ \comment % For explanation, see the end of \def\group.
+}
+\def\Ecartouche{%
+ \ifhmode\par\fi
+ \kern3pt
+ \egroup
+ \kern3pt\vrule
+ \hskip\rskip
+ \egroup
+ \cartbot
+ \egroup
+ \checkinserts
+}
+
+
+% This macro is called at the beginning of all the @example variants,
+% inside a group.
+\newdimen\nonfillparindent
+\def\nonfillstart{%
+ \aboveenvbreak
+ \hfuzz = 12pt % Don't be fussy
+ \sepspaces % Make spaces be word-separators rather than space tokens.
+ \let\par = \lisppar % don't ignore blank lines
+ \obeylines % each line of input is a line of output
+ \parskip = 0pt
+ % Turn off paragraph indentation but redefine \indent to emulate
+ % the normal \indent.
+ \nonfillparindent=\parindent
+ \parindent = 0pt
+ \let\indent\nonfillindent
+ %
+ \emergencystretch = 0pt % don't try to avoid overfull boxes
+ \ifx\nonarrowing\relax
+ \advance \leftskip by \lispnarrowing
+ \exdentamount=\lispnarrowing
+ \else
+ \let\nonarrowing = \relax
+ \fi
+ \let\exdent=\nofillexdent
+}
+
+\begingroup
+\obeyspaces
+% We want to swallow spaces (but not other tokens) after the fake
+% @indent in our nonfill-environments, where spaces are normally
+% active and set to @tie, resulting in them not being ignored after
+% @indent.
+\gdef\nonfillindent{\futurelet\temp\nonfillindentcheck}%
+\gdef\nonfillindentcheck{%
+\ifx\temp %
+\expandafter\nonfillindentgobble%
+\else%
+\leavevmode\nonfillindentbox%
+\fi%
+}%
+\endgroup
+\def\nonfillindentgobble#1{\nonfillindent}
+\def\nonfillindentbox{\hbox to \nonfillparindent{\hss}}
+
+% If you want all examples etc. small: @set dispenvsize small.
+% If you want even small examples the full size: @set dispenvsize nosmall.
+% This affects the following displayed environments:
+% @example, @display, @format, @lisp
+%
+\def\smallword{small}
+\def\nosmallword{nosmall}
+\let\SETdispenvsize\relax
+\def\setnormaldispenv{%
+ \ifx\SETdispenvsize\smallword
+ % end paragraph for sake of leading, in case document has no blank
+ % line. This is redundant with what happens in \aboveenvbreak, but
+ % we need to do it before changing the fonts, and it's inconvenient
+ % to change the fonts afterward.
+ \ifnum \lastpenalty=10000 \else \endgraf \fi
+ \smallexamplefonts \rm
+ \fi
+}
+\def\setsmalldispenv{%
+ \ifx\SETdispenvsize\nosmallword
+ \else
+ \ifnum \lastpenalty=10000 \else \endgraf \fi
+ \smallexamplefonts \rm
+ \fi
+}
+
+% We often define two environments, @foo and @smallfoo.
+% Let's do it by one command:
+\def\makedispenv #1#2{
+ \expandafter\envdef\csname#1\endcsname {\setnormaldispenv #2}
+ \expandafter\envdef\csname small#1\endcsname {\setsmalldispenv #2}
+ \expandafter\let\csname E#1\endcsname \afterenvbreak
+ \expandafter\let\csname Esmall#1\endcsname \afterenvbreak
+}
+
+% Define two synonyms:
+\def\maketwodispenvs #1#2#3{
+ \makedispenv{#1}{#3}
+ \makedispenv{#2}{#3}
+}
+
+% @lisp: indented, narrowed, typewriter font; @example: same as @lisp.
+%
+% @smallexample and @smalllisp: use smaller fonts.
+% Originally contributed by Pavel@xerox.
+%
+\maketwodispenvs {lisp}{example}{%
+ \nonfillstart
+ \tt\setupmarkupstyle{example}%
+ \let\kbdfont = \kbdexamplefont % Allow @kbd to do something special.
+ \gobble % eat return
+}
+% @display/@smalldisplay: same as @lisp except keep current font.
+%
+\makedispenv {display}{%
+ \nonfillstart
+ \gobble
+}
+
+% @format/@smallformat: same as @display except don't narrow margins.
+%
+\makedispenv{format}{%
+ \let\nonarrowing = t%
+ \nonfillstart
+ \gobble
+}
+
+% @flushleft: same as @format, but doesn't obey \SETdispenvsize.
+\envdef\flushleft{%
+ \let\nonarrowing = t%
+ \nonfillstart
+ \gobble
+}
+\let\Eflushleft = \afterenvbreak
+
+% @flushright.
+%
+\envdef\flushright{%
+ \let\nonarrowing = t%
+ \nonfillstart
+ \advance\leftskip by 0pt plus 1fill
+ \gobble
+}
+\let\Eflushright = \afterenvbreak
+
+
+% @raggedright does more-or-less normal line breaking but no right
+% justification. From plain.tex.
+\envdef\raggedright{%
+ \rightskip0pt plus2em \spaceskip.3333em \xspaceskip.5em\relax
+}
+\let\Eraggedright\par
+
+\envdef\raggedleft{%
+ \parindent=0pt \leftskip0pt plus2em
+ \spaceskip.3333em \xspaceskip.5em \parfillskip=0pt
+ \hbadness=10000 % Last line will usually be underfull, so turn off
+ % badness reporting.
+}
+\let\Eraggedleft\par
+
+\envdef\raggedcenter{%
+ \parindent=0pt \rightskip0pt plus1em \leftskip0pt plus1em
+ \spaceskip.3333em \xspaceskip.5em \parfillskip=0pt
+ \hbadness=10000 % Last line will usually be underfull, so turn off
+ % badness reporting.
+}
+\let\Eraggedcenter\par
+
+
+% @quotation does normal linebreaking (hence we can't use \nonfillstart)
+% and narrows the margins. We keep \parskip nonzero in general, since
+% we're doing normal filling. So, when using \aboveenvbreak and
+% \afterenvbreak, temporarily make \parskip 0.
+%
+\def\quotationstart{%
+ {\parskip=0pt \aboveenvbreak}% because \aboveenvbreak inserts \parskip
+ \parindent=0pt
+ %
+ % @cartouche defines \nonarrowing to inhibit narrowing at next level down.
+ \ifx\nonarrowing\relax
+ \advance\leftskip by \lispnarrowing
+ \advance\rightskip by \lispnarrowing
+ \exdentamount = \lispnarrowing
+ \else
+ \let\nonarrowing = \relax
+ \fi
+ \parsearg\quotationlabel
+}
+
+\envdef\quotation{%
+ \setnormaldispenv
+ \quotationstart
+}
+
+\envdef\smallquotation{%
+ \setsmalldispenv
+ \quotationstart
+}
+\let\Esmallquotation = \Equotation
+
+% We have retained a nonzero parskip for the environment, since we're
+% doing normal filling.
+%
+\def\Equotation{%
+ \par
+ \ifx\quotationauthor\undefined\else
+ % indent a bit.
+ \leftline{\kern 2\leftskip \sl ---\quotationauthor}%
+ \fi
+ {\parskip=0pt \afterenvbreak}%
+}
+
+% If we're given an argument, typeset it in bold with a colon after.
+\def\quotationlabel#1{%
+ \def\temp{#1}%
+ \ifx\temp\empty \else
+ {\bf #1: }%
+ \fi
+}
+
+
+% LaTeX-like @verbatim...@end verbatim and @verb{<char>...<char>}
+% If we want to allow any <char> as delimiter,
+% we need the curly braces so that makeinfo sees the @verb command, eg:
+% `@verbx...x' would look like the '@verbx' command. --janneke@gnu.org
+%
+% [Knuth]: Donald Ervin Knuth, 1996. The TeXbook.
+%
+% [Knuth] p.344; only we need to do the other characters Texinfo sets
+% active too. Otherwise, they get lost as the first character on a
+% verbatim line.
+\def\dospecials{%
+ \do\ \do\\\do\{\do\}\do\$\do\&%
+ \do\#\do\^\do\^^K\do\_\do\^^A\do\%\do\~%
+ \do\<\do\>\do\|\do\@\do+\do\"%
+ % Don't do the quotes -- if we do, @set txicodequoteundirected and
+ % @set txicodequotebacktick will not have effect on @verb and
+ % @verbatim, and ?` and !` ligatures won't get disabled.
+ %\do\`\do\'%
+}
+%
+% [Knuth] p. 380
+\def\uncatcodespecials{%
+ \def\do##1{\catcode`##1=\other}\dospecials}
+%
+% Setup for the @verb command.
+%
+% Eight spaces for a tab
+\begingroup
+ \catcode`\^^I=\active
+ \gdef\tabeightspaces{\catcode`\^^I=\active\def^^I{\ \ \ \ \ \ \ \ }}
+\endgroup
+%
+\def\setupverb{%
+ \tt % easiest (and conventionally used) font for verbatim
+ \def\par{\leavevmode\endgraf}%
+ \setupmarkupstyle{verb}%
+ \tabeightspaces
+ % Respect line breaks,
+ % print special symbols as themselves, and
+ % make each space count
+ % must do in this order:
+ \obeylines \uncatcodespecials \sepspaces
+}
+
+% Setup for the @verbatim environment
+%
+% Real tab expansion
+\newdimen\tabw \setbox0=\hbox{\tt\space} \tabw=8\wd0 % tab amount
+%
+\def\starttabbox{\setbox0=\hbox\bgroup}
+%
+\begingroup
+ \catcode`\^^I=\active
+ \gdef\tabexpand{%
+ \catcode`\^^I=\active
+ \def^^I{\leavevmode\egroup
+ \dimen0=\wd0 % the width so far, or since the previous tab
+ \divide\dimen0 by\tabw
+ \multiply\dimen0 by\tabw % compute previous multiple of \tabw
+ \advance\dimen0 by\tabw % advance to next multiple of \tabw
+ \wd0=\dimen0 \box0 \starttabbox
+ }%
+ }
+\endgroup
+
+% start the verbatim environment.
+\def\setupverbatim{%
+ \let\nonarrowing = t%
+ \nonfillstart
+ % Easiest (and conventionally used) font for verbatim
+ \tt
+ \def\par{\leavevmode\egroup\box0\endgraf}%
+ \tabexpand
+ \setupmarkupstyle{verbatim}%
+ % Respect line breaks,
+ % print special symbols as themselves, and
+ % make each space count
+ % must do in this order:
+ \obeylines \uncatcodespecials \sepspaces
+ \everypar{\starttabbox}%
+}
+
+% Do the @verb magic: verbatim text is quoted by unique
+% delimiter characters. Before first delimiter expect a
+% right brace, after last delimiter expect closing brace:
+%
+% \def\doverb'{'<char>#1<char>'}'{#1}
+%
+% [Knuth] p. 382; only eat outer {}
+\begingroup
+ \catcode`[=1\catcode`]=2\catcode`\{=\other\catcode`\}=\other
+ \gdef\doverb{#1[\def\next##1#1}[##1\endgroup]\next]
+\endgroup
+%
+\def\verb{\begingroup\setupverb\doverb}
+%
+%
+% Do the @verbatim magic: define the macro \doverbatim so that
+% the (first) argument ends when '@end verbatim' is reached, ie:
+%
+% \def\doverbatim#1@end verbatim{#1}
+%
+% For Texinfo it's a lot easier than for LaTeX,
+% because texinfo's \verbatim doesn't stop at '\end{verbatim}':
+% we need not redefine '\', '{' and '}'.
+%
+% Inspired by LaTeX's verbatim command set [latex.ltx]
+%
+\begingroup
+ \catcode`\ =\active
+ \obeylines %
+ % ignore everything up to the first ^^M, that's the newline at the end
+ % of the @verbatim input line itself. Otherwise we get an extra blank
+ % line in the output.
+ \xdef\doverbatim#1^^M#2@end verbatim{#2\noexpand\end\gobble verbatim}%
+ % We really want {...\end verbatim} in the body of the macro, but
+ % without the active space; thus we have to use \xdef and \gobble.
+\endgroup
+%
+\envdef\verbatim{%
+ \setupverbatim\doverbatim
+}
+\let\Everbatim = \afterenvbreak
+
+
+% @verbatiminclude FILE - insert text of file in verbatim environment.
+%
+\def\verbatiminclude{\parseargusing\filenamecatcodes\doverbatiminclude}
+%
+\def\doverbatiminclude#1{%
+ {%
+ \makevalueexpandable
+ \setupverbatim
+ \indexnofonts % Allow `@@' and other weird things in file names.
+ \input #1
+ \afterenvbreak
+ }%
+}
+
+% @copying ... @end copying.
+% Save the text away for @insertcopying later.
+%
+% We save the uninterpreted tokens, rather than creating a box.
+% Saving the text in a box would be much easier, but then all the
+% typesetting commands (@smallbook, font changes, etc.) have to be done
+% beforehand -- and a) we want @copying to be done first in the source
+% file; b) letting users define the frontmatter in as flexible order as
+% possible is very desirable.
+%
+\def\copying{\checkenv{}\begingroup\scanargctxt\docopying}
+\def\docopying#1@end copying{\endgroup\def\copyingtext{#1}}
+%
+\def\insertcopying{%
+ \begingroup
+ \parindent = 0pt % paragraph indentation looks wrong on title page
+ \scanexp\copyingtext
+ \endgroup
+}
+
+
+\message{defuns,}
+% @defun etc.
+
+\newskip\defbodyindent \defbodyindent=.4in
+\newskip\defargsindent \defargsindent=50pt
+\newskip\deflastargmargin \deflastargmargin=18pt
+\newcount\defunpenalty
+
+% Start the processing of @deffn:
+\def\startdefun{%
+ \ifnum\lastpenalty<10000
+ \medbreak
+ \defunpenalty=10003 % Will keep this @deffn together with the
+ % following @def command, see below.
+ \else
+ % If there are two @def commands in a row, we'll have a \nobreak,
+ % which is there to keep the function description together with its
+ % header. But if there's nothing but headers, we need to allow a
+ % break somewhere. Check specifically for penalty 10002, inserted
+ % by \printdefunline, instead of 10000, since the sectioning
+ % commands also insert a nobreak penalty, and we don't want to allow
+ % a break between a section heading and a defun.
+ %
+ % As a minor refinement, we avoid "club" headers by signalling
+ % with penalty of 10003 after the very first @deffn in the
+ % sequence (see above), and penalty of 10002 after any following
+ % @def command.
+ \ifnum\lastpenalty=10002 \penalty2000 \else \defunpenalty=10002 \fi
+ %
+ % Similarly, after a section heading, do not allow a break.
+ % But do insert the glue.
+ \medskip % preceded by discardable penalty, so not a breakpoint
+ \fi
+ %
+ \parindent=0in
+ \advance\leftskip by \defbodyindent
+ \exdentamount=\defbodyindent
+}
+
+\def\dodefunx#1{%
+ % First, check whether we are in the right environment:
+ \checkenv#1%
+ %
+ % As above, allow line break if we have multiple x headers in a row.
+ % It's not a great place, though.
+ \ifnum\lastpenalty=10002 \penalty3000 \else \defunpenalty=10002 \fi
+ %
+ % And now, it's time to reuse the body of the original defun:
+ \expandafter\gobbledefun#1%
+}
+\def\gobbledefun#1\startdefun{}
+
+% \printdefunline \deffnheader{text}
+%
+\def\printdefunline#1#2{%
+ \begingroup
+ % call \deffnheader:
+ #1#2 \endheader
+ % common ending:
+ \interlinepenalty = 10000
+ \advance\rightskip by 0pt plus 1fil
+ \endgraf
+ \nobreak\vskip -\parskip
+ \penalty\defunpenalty % signal to \startdefun and \dodefunx
+ % Some of the @defun-type tags do not enable magic parentheses,
+ % rendering the following check redundant. But we don't optimize.
+ \checkparencounts
+ \endgroup
+}
+
+\def\Edefun{\endgraf\medbreak}
+
+% \makedefun{deffn} creates \deffn, \deffnx and \Edeffn;
+% the only thing remaining is to define \deffnheader.
+%
+\def\makedefun#1{%
+ \expandafter\let\csname E#1\endcsname = \Edefun
+ \edef\temp{\noexpand\domakedefun
+ \makecsname{#1}\makecsname{#1x}\makecsname{#1header}}%
+ \temp
+}
+
+% \domakedefun \deffn \deffnx \deffnheader
+%
+% Define \deffn and \deffnx, without parameters.
+% \deffnheader has to be defined explicitly.
+%
+\def\domakedefun#1#2#3{%
+ \envdef#1{%
+ \startdefun
+ \parseargusing\activeparens{\printdefunline#3}%
+ }%
+ \def#2{\dodefunx#1}%
+ \def#3%
+}
+
+%%% Untyped functions:
+
+% @deffn category name args
+\makedefun{deffn}{\deffngeneral{}}
+
+% @deffn category class name args
+\makedefun{defop}#1 {\defopon{#1\ \putwordon}}
+
+% \defopon {category on}class name args
+\def\defopon#1#2 {\deffngeneral{\putwordon\ \code{#2}}{#1\ \code{#2}} }
+
+% \deffngeneral {subind}category name args
+%
+\def\deffngeneral#1#2 #3 #4\endheader{%
+ % Remember that \dosubind{fn}{foo}{} is equivalent to \doind{fn}{foo}.
+ \dosubind{fn}{\code{#3}}{#1}%
+ \defname{#2}{}{#3}\magicamp\defunargs{#4\unskip}%
+}
+
+%%% Typed functions:
+
+% @deftypefn category type name args
+\makedefun{deftypefn}{\deftypefngeneral{}}
+
+% @deftypeop category class type name args
+\makedefun{deftypeop}#1 {\deftypeopon{#1\ \putwordon}}
+
+% \deftypeopon {category on}class type name args
+\def\deftypeopon#1#2 {\deftypefngeneral{\putwordon\ \code{#2}}{#1\ \code{#2}} }
+
+% \deftypefngeneral {subind}category type name args
+%
+\def\deftypefngeneral#1#2 #3 #4 #5\endheader{%
+ \dosubind{fn}{\code{#4}}{#1}%
+ \defname{#2}{#3}{#4}\defunargs{#5\unskip}%
+}
+
+%%% Typed variables:
+
+% @deftypevr category type var args
+\makedefun{deftypevr}{\deftypecvgeneral{}}
+
+% @deftypecv category class type var args
+\makedefun{deftypecv}#1 {\deftypecvof{#1\ \putwordof}}
+
+% \deftypecvof {category of}class type var args
+\def\deftypecvof#1#2 {\deftypecvgeneral{\putwordof\ \code{#2}}{#1\ \code{#2}} }
+
+% \deftypecvgeneral {subind}category type var args
+%
+\def\deftypecvgeneral#1#2 #3 #4 #5\endheader{%
+ \dosubind{vr}{\code{#4}}{#1}%
+ \defname{#2}{#3}{#4}\defunargs{#5\unskip}%
+}
+
+%%% Untyped variables:
+
+% @defvr category var args
+\makedefun{defvr}#1 {\deftypevrheader{#1} {} }
+
+% @defcv category class var args
+\makedefun{defcv}#1 {\defcvof{#1\ \putwordof}}
+
+% \defcvof {category of}class var args
+\def\defcvof#1#2 {\deftypecvof{#1}#2 {} }
+
+%%% Type:
+% @deftp category name args
+\makedefun{deftp}#1 #2 #3\endheader{%
+ \doind{tp}{\code{#2}}%
+ \defname{#1}{}{#2}\defunargs{#3\unskip}%
+}
+
+% Remaining @defun-like shortcuts:
+\makedefun{defun}{\deffnheader{\putwordDeffunc} }
+\makedefun{defmac}{\deffnheader{\putwordDefmac} }
+\makedefun{defspec}{\deffnheader{\putwordDefspec} }
+\makedefun{deftypefun}{\deftypefnheader{\putwordDeffunc} }
+\makedefun{defvar}{\defvrheader{\putwordDefvar} }
+\makedefun{defopt}{\defvrheader{\putwordDefopt} }
+\makedefun{deftypevar}{\deftypevrheader{\putwordDefvar} }
+\makedefun{defmethod}{\defopon\putwordMethodon}
+\makedefun{deftypemethod}{\deftypeopon\putwordMethodon}
+\makedefun{defivar}{\defcvof\putwordInstanceVariableof}
+\makedefun{deftypeivar}{\deftypecvof\putwordInstanceVariableof}
+
+% \defname, which formats the name of the @def (not the args).
+% #1 is the category, such as "Function".
+% #2 is the return type, if any.
+% #3 is the function name.
+%
+% We are followed by (but not passed) the arguments, if any.
+%
+\def\defname#1#2#3{%
+ % Get the values of \leftskip and \rightskip as they were outside the @def...
+ \advance\leftskip by -\defbodyindent
+ %
+ % How we'll format the type name. Putting it in brackets helps
+ % distinguish it from the body text that may end up on the next line
+ % just below it.
+ \def\temp{#1}%
+ \setbox0=\hbox{\kern\deflastargmargin \ifx\temp\empty\else [\rm\temp]\fi}
+ %
+ % Figure out line sizes for the paragraph shape.
+ % The first line needs space for \box0; but if \rightskip is nonzero,
+ % we need only space for the part of \box0 which exceeds it:
+ \dimen0=\hsize \advance\dimen0 by -\wd0 \advance\dimen0 by \rightskip
+ % The continuations:
+ \dimen2=\hsize \advance\dimen2 by -\defargsindent
+ % (plain.tex says that \dimen1 should be used only as global.)
+ \parshape 2 0in \dimen0 \defargsindent \dimen2
+ %
+ % Put the type name to the right margin.
+ \noindent
+ \hbox to 0pt{%
+ \hfil\box0 \kern-\hsize
+ % \hsize has to be shortened this way:
+ \kern\leftskip
+ % Intentionally do not respect \rightskip, since we need the space.
+ }%
+ %
+ % Allow all lines to be underfull without complaint:
+ \tolerance=10000 \hbadness=10000
+ \exdentamount=\defbodyindent
+ {%
+ % defun fonts. We use typewriter by default (used to be bold) because:
+ % . we're printing identifiers, they should be in tt in principle.
+ % . in languages with many accents, such as Czech or French, it's
+ % common to leave accents off identifiers. The result looks ok in
+ % tt, but exceedingly strange in rm.
+ % . we don't want -- and --- to be treated as ligatures.
+ % . this still does not fix the ?` and !` ligatures, but so far no
+ % one has made identifiers using them :).
+ \df \tt
+ \def\temp{#2}% return value type
+ \ifx\temp\empty\else \tclose{\temp} \fi
+ #3% output function name
+ }%
+ {\rm\enskip}% hskip 0.5 em of \tenrm
+ %
+ \boldbrax
+ % arguments will be output next, if any.
+}
+
+% Print arguments in slanted roman (not ttsl), inconsistently with using
+% tt for the name. This is because literal text is sometimes needed in
+% the argument list (groff manual), and ttsl and tt are not very
+% distinguishable. Prevent hyphenation at `-' chars.
+%
+\def\defunargs#1{%
+ % use sl by default (not ttsl),
+ % tt for the names.
+ \df \sl \hyphenchar\font=0
+ %
+ % On the other hand, if an argument has two dashes (for instance), we
+ % want a way to get ttsl. Let's try @var for that.
+ \def\var##1{{\setupmarkupstyle{var}\ttslanted{##1}}}%
+ #1%
+ \sl\hyphenchar\font=45
+}
+
+% We want ()&[] to print specially on the defun line.
+%
+\def\activeparens{%
+ \catcode`\(=\active \catcode`\)=\active
+ \catcode`\[=\active \catcode`\]=\active
+ \catcode`\&=\active
+}
+
+% Make control sequences which act like normal parenthesis chars.
+\let\lparen = ( \let\rparen = )
+
+% Be sure that we always have a definition for `(', etc. For example,
+% if the fn name has parens in it, \boldbrax will not be in effect yet,
+% so TeX would otherwise complain about undefined control sequence.
+{
+ \activeparens
+ \global\let(=\lparen \global\let)=\rparen
+ \global\let[=\lbrack \global\let]=\rbrack
+ \global\let& = \&
+
+ \gdef\boldbrax{\let(=\opnr\let)=\clnr\let[=\lbrb\let]=\rbrb}
+ \gdef\magicamp{\let&=\amprm}
+}
+
+\newcount\parencount
+
+% If we encounter &foo, then turn on ()-hacking afterwards
+\newif\ifampseen
+\def\amprm#1 {\ampseentrue{\bf\ }}
+
+\def\parenfont{%
+ \ifampseen
+ % At the first level, print parens in roman,
+ % otherwise use the default font.
+ \ifnum \parencount=1 \rm \fi
+ \else
+ % The \sf parens (in \boldbrax) actually are a little bolder than
+ % the contained text. This is especially needed for [ and ] .
+ \sf
+ \fi
+}
+\def\infirstlevel#1{%
+ \ifampseen
+ \ifnum\parencount=1
+ #1%
+ \fi
+ \fi
+}
+\def\bfafterword#1 {#1 \bf}
+
+\def\opnr{%
+ \global\advance\parencount by 1
+ {\parenfont(}%
+ \infirstlevel \bfafterword
+}
+\def\clnr{%
+ {\parenfont)}%
+ \infirstlevel \sl
+ \global\advance\parencount by -1
+}
+
+\newcount\brackcount
+\def\lbrb{%
+ \global\advance\brackcount by 1
+ {\bf[}%
+}
+\def\rbrb{%
+ {\bf]}%
+ \global\advance\brackcount by -1
+}
+
+\def\checkparencounts{%
+ \ifnum\parencount=0 \else \badparencount \fi
+ \ifnum\brackcount=0 \else \badbrackcount \fi
+}
+% these should not use \errmessage; the glibc manual, at least, actually
+% has such constructs (when documenting function pointers).
+\def\badparencount{%
+ \message{Warning: unbalanced parentheses in @def...}%
+ \global\parencount=0
+}
+\def\badbrackcount{%
+ \message{Warning: unbalanced square brackets in @def...}%
+ \global\brackcount=0
+}
+
+
+\message{macros,}
+% @macro.
+
+% To do this right we need a feature of e-TeX, \scantokens,
+% which we arrange to emulate with a temporary file in ordinary TeX.
+\ifx\eTeXversion\undefined
+ \newwrite\macscribble
+ \def\scantokens#1{%
+ \toks0={#1}%
+ \immediate\openout\macscribble=\jobname.tmp
+ \immediate\write\macscribble{\the\toks0}%
+ \immediate\closeout\macscribble
+ \input \jobname.tmp
+ }
+\fi
+
+\def\scanmacro#1{%
+ \begingroup
+ \newlinechar`\^^M
+ \let\xeatspaces\eatspaces
+ % Undo catcode changes of \startcontents and \doprintindex
+ % When called from @insertcopying or (short)caption, we need active
+ % backslash to get it printed correctly. Previously, we had
+ % \catcode`\\=\other instead. We'll see whether a problem appears
+ % with macro expansion. --kasal, 19aug04
+ \catcode`\@=0 \catcode`\\=\active \escapechar=`\@
+ % ... and \example
+ \spaceisspace
+ %
+ % Append \endinput to make sure that TeX does not see the ending newline.
+ % I've verified that it is necessary both for e-TeX and for ordinary TeX
+ % --kasal, 29nov03
+ \scantokens{#1\endinput}%
+ \endgroup
+}
+
+\def\scanexp#1{%
+ \edef\temp{\noexpand\scanmacro{#1}}%
+ \temp
+}
+
+\newcount\paramno % Count of parameters
+\newtoks\macname % Macro name
+\newif\ifrecursive % Is it recursive?
+
+% List of all defined macros in the form
+% \definedummyword\macro1\definedummyword\macro2...
+% Currently is also contains all @aliases; the list can be split
+% if there is a need.
+\def\macrolist{}
+
+% Add the macro to \macrolist
+\def\addtomacrolist#1{\expandafter \addtomacrolistxxx \csname#1\endcsname}
+\def\addtomacrolistxxx#1{%
+ \toks0 = \expandafter{\macrolist\definedummyword#1}%
+ \xdef\macrolist{\the\toks0}%
+}
+
+% Utility routines.
+% This does \let #1 = #2, with \csnames; that is,
+% \let \csname#1\endcsname = \csname#2\endcsname
+% (except of course we have to play expansion games).
+%
+\def\cslet#1#2{%
+ \expandafter\let
+ \csname#1\expandafter\endcsname
+ \csname#2\endcsname
+}
+
+% Trim leading and trailing spaces off a string.
+% Concepts from aro-bend problem 15 (see CTAN).
+{\catcode`\@=11
+\gdef\eatspaces #1{\expandafter\trim@\expandafter{#1 }}
+\gdef\trim@ #1{\trim@@ @#1 @ #1 @ @@}
+\gdef\trim@@ #1@ #2@ #3@@{\trim@@@\empty #2 @}
+\def\unbrace#1{#1}
+\unbrace{\gdef\trim@@@ #1 } #2@{#1}
+}
+
+% Trim a single trailing ^^M off a string.
+{\catcode`\^^M=\other \catcode`\Q=3%
+\gdef\eatcr #1{\eatcra #1Q^^MQ}%
+\gdef\eatcra#1^^MQ{\eatcrb#1Q}%
+\gdef\eatcrb#1Q#2Q{#1}%
+}
+
+% Macro bodies are absorbed as an argument in a context where
+% all characters are catcode 10, 11 or 12, except \ which is active
+% (as in normal texinfo). It is necessary to change the definition of \.
+
+% Non-ASCII encodings make 8-bit characters active, so un-activate
+% them to avoid their expansion. Must do this non-globally, to
+% confine the change to the current group.
+
+% It's necessary to have hard CRs when the macro is executed. This is
+% done by making ^^M (\endlinechar) catcode 12 when reading the macro
+% body, and then making it the \newlinechar in \scanmacro.
+
+\def\scanctxt{%
+ \catcode`\"=\other
+ \catcode`\+=\other
+ \catcode`\<=\other
+ \catcode`\>=\other
+ \catcode`\@=\other
+ \catcode`\^=\other
+ \catcode`\_=\other
+ \catcode`\|=\other
+ \catcode`\~=\other
+ \ifx\declaredencoding\ascii \else \setnonasciicharscatcodenonglobal\other \fi
+}
+
+\def\scanargctxt{%
+ \scanctxt
+ \catcode`\\=\other
+ \catcode`\^^M=\other
+}
+
+\def\macrobodyctxt{%
+ \scanctxt
+ \catcode`\{=\other
+ \catcode`\}=\other
+ \catcode`\^^M=\other
+ \usembodybackslash
+}
+
+\def\macroargctxt{%
+ \scanctxt
+ \catcode`\\=\other
+}
+
+% \mbodybackslash is the definition of \ in @macro bodies.
+% It maps \foo\ => \csname macarg.foo\endcsname => #N
+% where N is the macro parameter number.
+% We define \csname macarg.\endcsname to be \realbackslash, so
+% \\ in macro replacement text gets you a backslash.
+
+{\catcode`@=0 @catcode`@\=@active
+ @gdef@usembodybackslash{@let\=@mbodybackslash}
+ @gdef@mbodybackslash#1\{@csname macarg.#1@endcsname}
+}
+\expandafter\def\csname macarg.\endcsname{\realbackslash}
+
+\def\macro{\recursivefalse\parsearg\macroxxx}
+\def\rmacro{\recursivetrue\parsearg\macroxxx}
+
+\def\macroxxx#1{%
+ \getargs{#1}% now \macname is the macname and \argl the arglist
+ \ifx\argl\empty % no arguments
+ \paramno=0%
+ \else
+ \expandafter\parsemargdef \argl;%
+ \fi
+ \if1\csname ismacro.\the\macname\endcsname
+ \message{Warning: redefining \the\macname}%
+ \else
+ \expandafter\ifx\csname \the\macname\endcsname \relax
+ \else \errmessage{Macro name \the\macname\space already defined}\fi
+ \global\cslet{macsave.\the\macname}{\the\macname}%
+ \global\expandafter\let\csname ismacro.\the\macname\endcsname=1%
+ \addtomacrolist{\the\macname}%
+ \fi
+ \begingroup \macrobodyctxt
+ \ifrecursive \expandafter\parsermacbody
+ \else \expandafter\parsemacbody
+ \fi}
+
+\parseargdef\unmacro{%
+ \if1\csname ismacro.#1\endcsname
+ \global\cslet{#1}{macsave.#1}%
+ \global\expandafter\let \csname ismacro.#1\endcsname=0%
+ % Remove the macro name from \macrolist:
+ \begingroup
+ \expandafter\let\csname#1\endcsname \relax
+ \let\definedummyword\unmacrodo
+ \xdef\macrolist{\macrolist}%
+ \endgroup
+ \else
+ \errmessage{Macro #1 not defined}%
+ \fi
+}
+
+% Called by \do from \dounmacro on each macro. The idea is to omit any
+% macro definitions that have been changed to \relax.
+%
+\def\unmacrodo#1{%
+ \ifx #1\relax
+ % remove this
+ \else
+ \noexpand\definedummyword \noexpand#1%
+ \fi
+}
+
+% This makes use of the obscure feature that if the last token of a
+% <parameter list> is #, then the preceding argument is delimited by
+% an opening brace, and that opening brace is not consumed.
+\def\getargs#1{\getargsxxx#1{}}
+\def\getargsxxx#1#{\getmacname #1 \relax\getmacargs}
+\def\getmacname #1 #2\relax{\macname={#1}}
+\def\getmacargs#1{\def\argl{#1}}
+
+% Parse the optional {params} list. Set up \paramno and \paramlist
+% so \defmacro knows what to do. Define \macarg.blah for each blah
+% in the params list, to be ##N where N is the position in that list.
+% That gets used by \mbodybackslash (above).
+
+% We need to get `macro parameter char #' into several definitions.
+% The technique used is stolen from LaTeX: let \hash be something
+% unexpandable, insert that wherever you need a #, and then redefine
+% it to # just before using the token list produced.
+%
+% The same technique is used to protect \eatspaces till just before
+% the macro is used.
+
+\def\parsemargdef#1;{\paramno=0\def\paramlist{}%
+ \let\hash\relax\let\xeatspaces\relax\parsemargdefxxx#1,;,}
+\def\parsemargdefxxx#1,{%
+ \if#1;\let\next=\relax
+ \else \let\next=\parsemargdefxxx
+ \advance\paramno by 1%
+ \expandafter\edef\csname macarg.\eatspaces{#1}\endcsname
+ {\xeatspaces{\hash\the\paramno}}%
+ \edef\paramlist{\paramlist\hash\the\paramno,}%
+ \fi\next}
+
+% These two commands read recursive and nonrecursive macro bodies.
+% (They're different since rec and nonrec macros end differently.)
+
+\long\def\parsemacbody#1@end macro%
+{\xdef\temp{\eatcr{#1}}\endgroup\defmacro}%
+\long\def\parsermacbody#1@end rmacro%
+{\xdef\temp{\eatcr{#1}}\endgroup\defmacro}%
+
+% This defines the macro itself. There are six cases: recursive and
+% nonrecursive macros of zero, one, and many arguments.
+% Much magic with \expandafter here.
+% \xdef is used so that macro definitions will survive the file
+% they're defined in; @include reads the file inside a group.
+\def\defmacro{%
+ \let\hash=##% convert placeholders to macro parameter chars
+ \ifrecursive
+ \ifcase\paramno
+ % 0
+ \expandafter\xdef\csname\the\macname\endcsname{%
+ \noexpand\scanmacro{\temp}}%
+ \or % 1
+ \expandafter\xdef\csname\the\macname\endcsname{%
+ \bgroup\noexpand\macroargctxt
+ \noexpand\braceorline
+ \expandafter\noexpand\csname\the\macname xxx\endcsname}%
+ \expandafter\xdef\csname\the\macname xxx\endcsname##1{%
+ \egroup\noexpand\scanmacro{\temp}}%
+ \else % many
+ \expandafter\xdef\csname\the\macname\endcsname{%
+ \bgroup\noexpand\macroargctxt
+ \noexpand\csname\the\macname xx\endcsname}%
+ \expandafter\xdef\csname\the\macname xx\endcsname##1{%
+ \expandafter\noexpand\csname\the\macname xxx\endcsname ##1,}%
+ \expandafter\expandafter
+ \expandafter\xdef
+ \expandafter\expandafter
+ \csname\the\macname xxx\endcsname
+ \paramlist{\egroup\noexpand\scanmacro{\temp}}%
+ \fi
+ \else
+ \ifcase\paramno
+ % 0
+ \expandafter\xdef\csname\the\macname\endcsname{%
+ \noexpand\norecurse{\the\macname}%
+ \noexpand\scanmacro{\temp}\egroup}%
+ \or % 1
+ \expandafter\xdef\csname\the\macname\endcsname{%
+ \bgroup\noexpand\macroargctxt
+ \noexpand\braceorline
+ \expandafter\noexpand\csname\the\macname xxx\endcsname}%
+ \expandafter\xdef\csname\the\macname xxx\endcsname##1{%
+ \egroup
+ \noexpand\norecurse{\the\macname}%
+ \noexpand\scanmacro{\temp}\egroup}%
+ \else % many
+ \expandafter\xdef\csname\the\macname\endcsname{%
+ \bgroup\noexpand\macroargctxt
+ \expandafter\noexpand\csname\the\macname xx\endcsname}%
+ \expandafter\xdef\csname\the\macname xx\endcsname##1{%
+ \expandafter\noexpand\csname\the\macname xxx\endcsname ##1,}%
+ \expandafter\expandafter
+ \expandafter\xdef
+ \expandafter\expandafter
+ \csname\the\macname xxx\endcsname
+ \paramlist{%
+ \egroup
+ \noexpand\norecurse{\the\macname}%
+ \noexpand\scanmacro{\temp}\egroup}%
+ \fi
+ \fi}
+
+\def\norecurse#1{\bgroup\cslet{#1}{macsave.#1}}
+
+% \braceorline decides whether the next nonwhitespace character is a
+% {. If so it reads up to the closing }, if not, it reads the whole
+% line. Whatever was read is then fed to the next control sequence
+% as an argument (by \parsebrace or \parsearg)
+\def\braceorline#1{\let\macnamexxx=#1\futurelet\nchar\braceorlinexxx}
+\def\braceorlinexxx{%
+ \ifx\nchar\bgroup\else
+ \expandafter\parsearg
+ \fi \macnamexxx}
+
+
+% @alias.
+% We need some trickery to remove the optional spaces around the equal
+% sign. Just make them active and then expand them all to nothing.
+\def\alias{\parseargusing\obeyspaces\aliasxxx}
+\def\aliasxxx #1{\aliasyyy#1\relax}
+\def\aliasyyy #1=#2\relax{%
+ {%
+ \expandafter\let\obeyedspace=\empty
+ \addtomacrolist{#1}%
+ \xdef\next{\global\let\makecsname{#1}=\makecsname{#2}}%
+ }%
+ \next
+}
+
+
+\message{cross references,}
+
+\newwrite\auxfile
+\newif\ifhavexrefs % True if xref values are known.
+\newif\ifwarnedxrefs % True if we warned once that they aren't known.
+
+% @inforef is relatively simple.
+\def\inforef #1{\inforefzzz #1,,,,**}
+\def\inforefzzz #1,#2,#3,#4**{\putwordSee{} \putwordInfo{} \putwordfile{} \file{\ignorespaces #3{}},
+ node \samp{\ignorespaces#1{}}}
+
+% @node's only job in TeX is to define \lastnode, which is used in
+% cross-references. The @node line might or might not have commas, and
+% might or might not have spaces before the first comma, like:
+% @node foo , bar , ...
+% We don't want such trailing spaces in the node name.
+%
+\parseargdef\node{\checkenv{}\donode #1 ,\finishnodeparse}
+%
+% also remove a trailing comma, in case of something like this:
+% @node Help-Cross, , , Cross-refs
+\def\donode#1 ,#2\finishnodeparse{\dodonode #1,\finishnodeparse}
+\def\dodonode#1,#2\finishnodeparse{\gdef\lastnode{#1}}
+
+\let\nwnode=\node
+\let\lastnode=\empty
+
+% Write a cross-reference definition for the current node. #1 is the
+% type (Ynumbered, Yappendix, Ynothing).
+%
+\def\donoderef#1{%
+ \ifx\lastnode\empty\else
+ \setref{\lastnode}{#1}%
+ \global\let\lastnode=\empty
+ \fi
+}
+
+% @anchor{NAME} -- define xref target at arbitrary point.
+%
+\newcount\savesfregister
+%
+\def\savesf{\relax \ifhmode \savesfregister=\spacefactor \fi}
+\def\restoresf{\relax \ifhmode \spacefactor=\savesfregister \fi}
+\def\anchor#1{\savesf \setref{#1}{Ynothing}\restoresf \ignorespaces}
+
+% \setref{NAME}{SNT} defines a cross-reference point NAME (a node or an
+% anchor), which consists of three parts:
+% 1) NAME-title - the current sectioning name taken from \lastsection,
+% or the anchor name.
+% 2) NAME-snt - section number and type, passed as the SNT arg, or
+% empty for anchors.
+% 3) NAME-pg - the page number.
+%
+% This is called from \donoderef, \anchor, and \dofloat. In the case of
+% floats, there is an additional part, which is not written here:
+% 4) NAME-lof - the text as it should appear in a @listoffloats.
+%
+\def\setref#1#2{%
+ \pdfmkdest{#1}%
+ \iflinks
+ {%
+ \atdummies % preserve commands, but don't expand them
+ \edef\writexrdef##1##2{%
+ \write\auxfile{@xrdef{#1-% #1 of \setref, expanded by the \edef
+ ##1}{##2}}% these are parameters of \writexrdef
+ }%
+ \toks0 = \expandafter{\lastsection}%
+ \immediate \writexrdef{title}{\the\toks0 }%
+ \immediate \writexrdef{snt}{\csname #2\endcsname}% \Ynumbered etc.
+ \safewhatsit{\writexrdef{pg}{\folio}}% will be written later, during \shipout
+ }%
+ \fi
+}
+
+% @xref, @pxref, and @ref generate cross-references. For \xrefX, #1 is
+% the node name, #2 the name of the Info cross-reference, #3 the printed
+% node name, #4 the name of the Info file, #5 the name of the printed
+% manual. All but the node name can be omitted.
+%
+\def\pxref#1{\putwordsee{} \xrefX[#1,,,,,,,]}
+\def\xref#1{\putwordSee{} \xrefX[#1,,,,,,,]}
+\def\ref#1{\xrefX[#1,,,,,,,]}
+\def\xrefX[#1,#2,#3,#4,#5,#6]{\begingroup
+ \unsepspaces
+ \def\printedmanual{\ignorespaces #5}%
+ \def\printedrefname{\ignorespaces #3}%
+ \setbox1=\hbox{\printedmanual\unskip}%
+ \setbox0=\hbox{\printedrefname\unskip}%
+ \ifdim \wd0 = 0pt
+ % No printed node name was explicitly given.
+ \expandafter\ifx\csname SETxref-automatic-section-title\endcsname\relax
+ % Use the node name inside the square brackets.
+ \def\printedrefname{\ignorespaces #1}%
+ \else
+ % Use the actual chapter/section title appear inside
+ % the square brackets. Use the real section title if we have it.
+ \ifdim \wd1 > 0pt
+ % It is in another manual, so we don't have it.
+ \def\printedrefname{\ignorespaces #1}%
+ \else
+ \ifhavexrefs
+ % We know the real title if we have the xref values.
+ \def\printedrefname{\refx{#1-title}{}}%
+ \else
+ % Otherwise just copy the Info node name.
+ \def\printedrefname{\ignorespaces #1}%
+ \fi%
+ \fi
+ \fi
+ \fi
+ %
+ % Make link in pdf output.
+ \ifpdf
+ {\indexnofonts
+ \turnoffactive
+ % This expands tokens, so do it after making catcode changes, so _
+ % etc. don't get their TeX definitions.
+ \getfilename{#4}%
+ %
+ % See comments at \activebackslashdouble.
+ {\activebackslashdouble \xdef\pdfxrefdest{#1}%
+ \backslashparens\pdfxrefdest}%
+ %
+ \leavevmode
+ \startlink attr{/Border [0 0 0]}%
+ \ifnum\filenamelength>0
+ goto file{\the\filename.pdf} name{\pdfxrefdest}%
+ \else
+ goto name{\pdfmkpgn{\pdfxrefdest}}%
+ \fi
+ }%
+ \setcolor{\linkcolor}%
+ \fi
+ %
+ % Float references are printed completely differently: "Figure 1.2"
+ % instead of "[somenode], p.3". We distinguish them by the
+ % LABEL-title being set to a magic string.
+ {%
+ % Have to otherify everything special to allow the \csname to
+ % include an _ in the xref name, etc.
+ \indexnofonts
+ \turnoffactive
+ \expandafter\global\expandafter\let\expandafter\Xthisreftitle
+ \csname XR#1-title\endcsname
+ }%
+ \iffloat\Xthisreftitle
+ % If the user specified the print name (third arg) to the ref,
+ % print it instead of our usual "Figure 1.2".
+ \ifdim\wd0 = 0pt
+ \refx{#1-snt}{}%
+ \else
+ \printedrefname
+ \fi
+ %
+ % if the user also gave the printed manual name (fifth arg), append
+ % "in MANUALNAME".
+ \ifdim \wd1 > 0pt
+ \space \putwordin{} \cite{\printedmanual}%
+ \fi
+ \else
+ % node/anchor (non-float) references.
+ %
+ % If we use \unhbox0 and \unhbox1 to print the node names, TeX does not
+ % insert empty discretionaries after hyphens, which means that it will
+ % not find a line break at a hyphen in a node names. Since some manuals
+ % are best written with fairly long node names, containing hyphens, this
+ % is a loss. Therefore, we give the text of the node name again, so it
+ % is as if TeX is seeing it for the first time.
+ \ifdim \wd1 > 0pt
+ \putwordSection{} ``\printedrefname'' \putwordin{} \cite{\printedmanual}%
+ \else
+ % _ (for example) has to be the character _ for the purposes of the
+ % control sequence corresponding to the node, but it has to expand
+ % into the usual \leavevmode...\vrule stuff for purposes of
+ % printing. So we \turnoffactive for the \refx-snt, back on for the
+ % printing, back off for the \refx-pg.
+ {\turnoffactive
+ % Only output a following space if the -snt ref is nonempty; for
+ % @unnumbered and @anchor, it won't be.
+ \setbox2 = \hbox{\ignorespaces \refx{#1-snt}{}}%
+ \ifdim \wd2 > 0pt \refx{#1-snt}\space\fi
+ }%
+ % output the `[mynode]' via a macro so it can be overridden.
+ \xrefprintnodename\printedrefname
+ %
+ % But we always want a comma and a space:
+ ,\space
+ %
+ % output the `page 3'.
+ \turnoffactive \putwordpage\tie\refx{#1-pg}{}%
+ \fi
+ \fi
+ \endlink
+\endgroup}
+
+% This macro is called from \xrefX for the `[nodename]' part of xref
+% output. It's a separate macro only so it can be changed more easily,
+% since square brackets don't work well in some documents. Particularly
+% one that Bob is working on :).
+%
+\def\xrefprintnodename#1{[#1]}
+
+% Things referred to by \setref.
+%
+\def\Ynothing{}
+\def\Yomitfromtoc{}
+\def\Ynumbered{%
+ \ifnum\secno=0
+ \putwordChapter@tie \the\chapno
+ \else \ifnum\subsecno=0
+ \putwordSection@tie \the\chapno.\the\secno
+ \else \ifnum\subsubsecno=0
+ \putwordSection@tie \the\chapno.\the\secno.\the\subsecno
+ \else
+ \putwordSection@tie \the\chapno.\the\secno.\the\subsecno.\the\subsubsecno
+ \fi\fi\fi
+}
+\def\Yappendix{%
+ \ifnum\secno=0
+ \putwordAppendix@tie @char\the\appendixno{}%
+ \else \ifnum\subsecno=0
+ \putwordSection@tie @char\the\appendixno.\the\secno
+ \else \ifnum\subsubsecno=0
+ \putwordSection@tie @char\the\appendixno.\the\secno.\the\subsecno
+ \else
+ \putwordSection@tie
+ @char\the\appendixno.\the\secno.\the\subsecno.\the\subsubsecno
+ \fi\fi\fi
+}
+
+% Define \refx{NAME}{SUFFIX} to reference a cross-reference string named NAME.
+% If its value is nonempty, SUFFIX is output afterward.
+%
+\def\refx#1#2{%
+ {%
+ \indexnofonts
+ \otherbackslash
+ \expandafter\global\expandafter\let\expandafter\thisrefX
+ \csname XR#1\endcsname
+ }%
+ \ifx\thisrefX\relax
+ % If not defined, say something at least.
+ \angleleft un\-de\-fined\angleright
+ \iflinks
+ \ifhavexrefs
+ \message{\linenumber Undefined cross reference `#1'.}%
+ \else
+ \ifwarnedxrefs\else
+ \global\warnedxrefstrue
+ \message{Cross reference values unknown; you must run TeX again.}%
+ \fi
+ \fi
+ \fi
+ \else
+ % It's defined, so just use it.
+ \thisrefX
+ \fi
+ #2% Output the suffix in any case.
+}
+
+% This is the macro invoked by entries in the aux file. Usually it's
+% just a \def (we prepend XR to the control sequence name to avoid
+% collisions). But if this is a float type, we have more work to do.
+%
+\def\xrdef#1#2{%
+ {% The node name might contain 8-bit characters, which in our current
+ % implementation are changed to commands like @'e. Don't let these
+ % mess up the control sequence name.
+ \indexnofonts
+ \turnoffactive
+ \xdef\safexrefname{#1}%
+ }%
+ %
+ \expandafter\gdef\csname XR\safexrefname\endcsname{#2}% remember this xref
+ %
+ % Was that xref control sequence that we just defined for a float?
+ \expandafter\iffloat\csname XR\safexrefname\endcsname
+ % it was a float, and we have the (safe) float type in \iffloattype.
+ \expandafter\let\expandafter\floatlist
+ \csname floatlist\iffloattype\endcsname
+ %
+ % Is this the first time we've seen this float type?
+ \expandafter\ifx\floatlist\relax
+ \toks0 = {\do}% yes, so just \do
+ \else
+ % had it before, so preserve previous elements in list.
+ \toks0 = \expandafter{\floatlist\do}%
+ \fi
+ %
+ % Remember this xref in the control sequence \floatlistFLOATTYPE,
+ % for later use in \listoffloats.
+ \expandafter\xdef\csname floatlist\iffloattype\endcsname{\the\toks0
+ {\safexrefname}}%
+ \fi
+}
+
+% Read the last existing aux file, if any. No error if none exists.
+%
+\def\tryauxfile{%
+ \openin 1 \jobname.aux
+ \ifeof 1 \else
+ \readdatafile{aux}%
+ \global\havexrefstrue
+ \fi
+ \closein 1
+}
+
+\def\setupdatafile{%
+ \catcode`\^^@=\other
+ \catcode`\^^A=\other
+ \catcode`\^^B=\other
+ \catcode`\^^C=\other
+ \catcode`\^^D=\other
+ \catcode`\^^E=\other
+ \catcode`\^^F=\other
+ \catcode`\^^G=\other
+ \catcode`\^^H=\other
+ \catcode`\^^K=\other
+ \catcode`\^^L=\other
+ \catcode`\^^N=\other
+ \catcode`\^^P=\other
+ \catcode`\^^Q=\other
+ \catcode`\^^R=\other
+ \catcode`\^^S=\other
+ \catcode`\^^T=\other
+ \catcode`\^^U=\other
+ \catcode`\^^V=\other
+ \catcode`\^^W=\other
+ \catcode`\^^X=\other
+ \catcode`\^^Z=\other
+ \catcode`\^^[=\other
+ \catcode`\^^\=\other
+ \catcode`\^^]=\other
+ \catcode`\^^^=\other
+ \catcode`\^^_=\other
+ % It was suggested to set the catcode of ^ to 7, which would allow ^^e4 etc.
+ % in xref tags, i.e., node names. But since ^^e4 notation isn't
+ % supported in the main text, it doesn't seem desirable. Furthermore,
+ % that is not enough: for node names that actually contain a ^
+ % character, we would end up writing a line like this: 'xrdef {'hat
+ % b-title}{'hat b} and \xrdef does a \csname...\endcsname on the first
+ % argument, and \hat is not an expandable control sequence. It could
+ % all be worked out, but why? Either we support ^^ or we don't.
+ %
+ % The other change necessary for this was to define \auxhat:
+ % \def\auxhat{\def^{'hat }}% extra space so ok if followed by letter
+ % and then to call \auxhat in \setq.
+ %
+ \catcode`\^=\other
+ %
+ % Special characters. Should be turned off anyway, but...
+ \catcode`\~=\other
+ \catcode`\[=\other
+ \catcode`\]=\other
+ \catcode`\"=\other
+ \catcode`\_=\other
+ \catcode`\|=\other
+ \catcode`\<=\other
+ \catcode`\>=\other
+ \catcode`\$=\other
+ \catcode`\#=\other
+ \catcode`\&=\other
+ \catcode`\%=\other
+ \catcode`+=\other % avoid \+ for paranoia even though we've turned it off
+ %
+ % This is to support \ in node names and titles, since the \
+ % characters end up in a \csname. It's easier than
+ % leaving it active and making its active definition an actual \
+ % character. What I don't understand is why it works in the *value*
+ % of the xrdef. Seems like it should be a catcode12 \, and that
+ % should not typeset properly. But it works, so I'm moving on for
+ % now. --karl, 15jan04.
+ \catcode`\\=\other
+ %
+ % Make the characters 128-255 be printing characters.
+ {%
+ \count1=128
+ \def\loop{%
+ \catcode\count1=\other
+ \advance\count1 by 1
+ \ifnum \count1<256 \loop \fi
+ }%
+ }%
+ %
+ % @ is our escape character in .aux files, and we need braces.
+ \catcode`\{=1
+ \catcode`\}=2
+ \catcode`\@=0
+}
+
+\def\readdatafile#1{%
+\begingroup
+ \setupdatafile
+ \input\jobname.#1
+\endgroup}
+
+
+\message{insertions,}
+% including footnotes.
+
+\newcount \footnoteno
+
+% The trailing space in the following definition for supereject is
+% vital for proper filling; pages come out unaligned when you do a
+% pagealignmacro call if that space before the closing brace is
+% removed. (Generally, numeric constants should always be followed by a
+% space to prevent strange expansion errors.)
+\def\supereject{\par\penalty -20000\footnoteno =0 }
+
+% @footnotestyle is meaningful for info output only.
+\let\footnotestyle=\comment
+
+{\catcode `\@=11
+%
+% Auto-number footnotes. Otherwise like plain.
+\gdef\footnote{%
+ \let\indent=\ptexindent
+ \let\noindent=\ptexnoindent
+ \global\advance\footnoteno by \@ne
+ \edef\thisfootno{$^{\the\footnoteno}$}%
+ %
+ % In case the footnote comes at the end of a sentence, preserve the
+ % extra spacing after we do the footnote number.
+ \let\@sf\empty
+ \ifhmode\edef\@sf{\spacefactor\the\spacefactor}\ptexslash\fi
+ %
+ % Remove inadvertent blank space before typesetting the footnote number.
+ \unskip
+ \thisfootno\@sf
+ \dofootnote
+}%
+
+% Don't bother with the trickery in plain.tex to not require the
+% footnote text as a parameter. Our footnotes don't need to be so general.
+%
+% Oh yes, they do; otherwise, @ifset (and anything else that uses
+% \parseargline) fails inside footnotes because the tokens are fixed when
+% the footnote is read. --karl, 16nov96.
+%
+\gdef\dofootnote{%
+ \insert\footins\bgroup
+ % We want to typeset this text as a normal paragraph, even if the
+ % footnote reference occurs in (for example) a display environment.
+ % So reset some parameters.
+ \hsize=\pagewidth
+ \interlinepenalty\interfootnotelinepenalty
+ \splittopskip\ht\strutbox % top baseline for broken footnotes
+ \splitmaxdepth\dp\strutbox
+ \floatingpenalty\@MM
+ \leftskip\z@skip
+ \rightskip\z@skip
+ \spaceskip\z@skip
+ \xspaceskip\z@skip
+ \parindent\defaultparindent
+ %
+ \smallfonts \rm
+ %
+ % Because we use hanging indentation in footnotes, a @noindent appears
+ % to exdent this text, so make it be a no-op. makeinfo does not use
+ % hanging indentation so @noindent can still be needed within footnote
+ % text after an @example or the like (not that this is good style).
+ \let\noindent = \relax
+ %
+ % Hang the footnote text off the number. Use \everypar in case the
+ % footnote extends for more than one paragraph.
+ \everypar = {\hang}%
+ \textindent{\thisfootno}%
+ %
+ % Don't crash into the line above the footnote text. Since this
+ % expands into a box, it must come within the paragraph, lest it
+ % provide a place where TeX can split the footnote.
+ \footstrut
+ \futurelet\next\fo@t
+}
+}%end \catcode `\@=11
+
+% In case a @footnote appears in a vbox, save the footnote text and create
+% the real \insert just after the vbox finished. Otherwise, the insertion
+% would be lost.
+% Similarly, if a @footnote appears inside an alignment, save the footnote
+% text to a box and make the \insert when a row of the table is finished.
+% And the same can be done for other insert classes. --kasal, 16nov03.
+
+% Replace the \insert primitive by a cheating macro.
+% Deeper inside, just make sure that the saved insertions are not spilled
+% out prematurely.
+%
+\def\startsavinginserts{%
+ \ifx \insert\ptexinsert
+ \let\insert\saveinsert
+ \else
+ \let\checkinserts\relax
+ \fi
+}
+
+% This \insert replacement works for both \insert\footins{foo} and
+% \insert\footins\bgroup foo\egroup, but it doesn't work for \insert27{foo}.
+%
+\def\saveinsert#1{%
+ \edef\next{\noexpand\savetobox \makeSAVEname#1}%
+ \afterassignment\next
+ % swallow the left brace
+ \let\temp =
+}
+\def\makeSAVEname#1{\makecsname{SAVE\expandafter\gobble\string#1}}
+\def\savetobox#1{\global\setbox#1 = \vbox\bgroup \unvbox#1}
+
+\def\checksaveins#1{\ifvoid#1\else \placesaveins#1\fi}
+
+\def\placesaveins#1{%
+ \ptexinsert \csname\expandafter\gobblesave\string#1\endcsname
+ {\box#1}%
+}
+
+% eat @SAVE -- beware, all of them have catcode \other:
+{
+ \def\dospecials{\do S\do A\do V\do E} \uncatcodespecials % ;-)
+ \gdef\gobblesave @SAVE{}
+}
+
+% initialization:
+\def\newsaveins #1{%
+ \edef\next{\noexpand\newsaveinsX \makeSAVEname#1}%
+ \next
+}
+\def\newsaveinsX #1{%
+ \csname newbox\endcsname #1%
+ \expandafter\def\expandafter\checkinserts\expandafter{\checkinserts
+ \checksaveins #1}%
+}
+
+% initialize:
+\let\checkinserts\empty
+\newsaveins\footins
+\newsaveins\margin
+
+
+% @image. We use the macros from epsf.tex to support this.
+% If epsf.tex is not installed and @image is used, we complain.
+%
+% Check for and read epsf.tex up front. If we read it only at @image
+% time, we might be inside a group, and then its definitions would get
+% undone and the next image would fail.
+\openin 1 = epsf.tex
+\ifeof 1 \else
+ % Do not bother showing banner with epsf.tex v2.7k (available in
+ % doc/epsf.tex and on ctan).
+ \def\epsfannounce{\toks0 = }%
+ \input epsf.tex
+\fi
+\closein 1
+%
+% We will only complain once about lack of epsf.tex.
+\newif\ifwarnednoepsf
+\newhelp\noepsfhelp{epsf.tex must be installed for images to
+ work. It is also included in the Texinfo distribution, or you can get
+ it from ftp://tug.org/tex/epsf.tex.}
+%
+\def\image#1{%
+ \ifx\epsfbox\undefined
+ \ifwarnednoepsf \else
+ \errhelp = \noepsfhelp
+ \errmessage{epsf.tex not found, images will be ignored}%
+ \global\warnednoepsftrue
+ \fi
+ \else
+ \imagexxx #1,,,,,\finish
+ \fi
+}
+%
+% Arguments to @image:
+% #1 is (mandatory) image filename; we tack on .eps extension.
+% #2 is (optional) width, #3 is (optional) height.
+% #4 is (ignored optional) html alt text.
+% #5 is (ignored optional) extension.
+% #6 is just the usual extra ignored arg for parsing this stuff.
+\newif\ifimagevmode
+\def\imagexxx#1,#2,#3,#4,#5,#6\finish{\begingroup
+ \catcode`\^^M = 5 % in case we're inside an example
+ \normalturnoffactive % allow _ et al. in names
+ % If the image is by itself, center it.
+ \ifvmode
+ \imagevmodetrue
+ \nobreak\medskip
+ % Usually we'll have text after the image which will insert
+ % \parskip glue, so insert it here too to equalize the space
+ % above and below.
+ \nobreak\vskip\parskip
+ \nobreak
+ \fi
+ %
+ % Leave vertical mode so that indentation from an enclosing
+ % environment such as @quotation is respected. On the other hand, if
+ % it's at the top level, we don't want the normal paragraph indentation.
+ \noindent
+ %
+ % Output the image.
+ \ifpdf
+ \dopdfimage{#1}{#2}{#3}%
+ \else
+ % \epsfbox itself resets \epsf?size at each figure.
+ \setbox0 = \hbox{\ignorespaces #2}\ifdim\wd0 > 0pt \epsfxsize=#2\relax \fi
+ \setbox0 = \hbox{\ignorespaces #3}\ifdim\wd0 > 0pt \epsfysize=#3\relax \fi
+ \epsfbox{#1.eps}%
+ \fi
+ %
+ \ifimagevmode \medskip \fi % space after the standalone image
+\endgroup}
+
+
+% @float FLOATTYPE,LABEL,LOC ... @end float for displayed figures, tables,
+% etc. We don't actually implement floating yet, we always include the
+% float "here". But it seemed the best name for the future.
+%
+\envparseargdef\float{\eatcommaspace\eatcommaspace\dofloat#1, , ,\finish}
+
+% There may be a space before second and/or third parameter; delete it.
+\def\eatcommaspace#1, {#1,}
+
+% #1 is the optional FLOATTYPE, the text label for this float, typically
+% "Figure", "Table", "Example", etc. Can't contain commas. If omitted,
+% this float will not be numbered and cannot be referred to.
+%
+% #2 is the optional xref label. Also must be present for the float to
+% be referable.
+%
+% #3 is the optional positioning argument; for now, it is ignored. It
+% will somehow specify the positions allowed to float to (here, top, bottom).
+%
+% We keep a separate counter for each FLOATTYPE, which we reset at each
+% chapter-level command.
+\let\resetallfloatnos=\empty
+%
+\def\dofloat#1,#2,#3,#4\finish{%
+ \let\thiscaption=\empty
+ \let\thisshortcaption=\empty
+ %
+ % don't lose footnotes inside @float.
+ %
+ % BEWARE: when the floats start float, we have to issue warning whenever an
+ % insert appears inside a float which could possibly float. --kasal, 26may04
+ %
+ \startsavinginserts
+ %
+ % We can't be used inside a paragraph.
+ \par
+ %
+ \vtop\bgroup
+ \def\floattype{#1}%
+ \def\floatlabel{#2}%
+ \def\floatloc{#3}% we do nothing with this yet.
+ %
+ \ifx\floattype\empty
+ \let\safefloattype=\empty
+ \else
+ {%
+ % the floattype might have accents or other special characters,
+ % but we need to use it in a control sequence name.
+ \indexnofonts
+ \turnoffactive
+ \xdef\safefloattype{\floattype}%
+ }%
+ \fi
+ %
+ % If label is given but no type, we handle that as the empty type.
+ \ifx\floatlabel\empty \else
+ % We want each FLOATTYPE to be numbered separately (Figure 1,
+ % Table 1, Figure 2, ...). (And if no label, no number.)
+ %
+ \expandafter\getfloatno\csname\safefloattype floatno\endcsname
+ \global\advance\floatno by 1
+ %
+ {%
+ % This magic value for \lastsection is output by \setref as the
+ % XREFLABEL-title value. \xrefX uses it to distinguish float
+ % labels (which have a completely different output format) from
+ % node and anchor labels. And \xrdef uses it to construct the
+ % lists of floats.
+ %
+ \edef\lastsection{\floatmagic=\safefloattype}%
+ \setref{\floatlabel}{Yfloat}%
+ }%
+ \fi
+ %
+ % start with \parskip glue, I guess.
+ \vskip\parskip
+ %
+ % Don't suppress indentation if a float happens to start a section.
+ \restorefirstparagraphindent
+}
+
+% we have these possibilities:
+% @float Foo,lbl & @caption{Cap}: Foo 1.1: Cap
+% @float Foo,lbl & no caption: Foo 1.1
+% @float Foo & @caption{Cap}: Foo: Cap
+% @float Foo & no caption: Foo
+% @float ,lbl & Caption{Cap}: 1.1: Cap
+% @float ,lbl & no caption: 1.1
+% @float & @caption{Cap}: Cap
+% @float & no caption:
+%
+\def\Efloat{%
+ \let\floatident = \empty
+ %
+ % In all cases, if we have a float type, it comes first.
+ \ifx\floattype\empty \else \def\floatident{\floattype}\fi
+ %
+ % If we have an xref label, the number comes next.
+ \ifx\floatlabel\empty \else
+ \ifx\floattype\empty \else % if also had float type, need tie first.
+ \appendtomacro\floatident{\tie}%
+ \fi
+ % the number.
+ \appendtomacro\floatident{\chaplevelprefix\the\floatno}%
+ \fi
+ %
+ % Start the printed caption with what we've constructed in
+ % \floatident, but keep it separate; we need \floatident again.
+ \let\captionline = \floatident
+ %
+ \ifx\thiscaption\empty \else
+ \ifx\floatident\empty \else
+ \appendtomacro\captionline{: }% had ident, so need a colon between
+ \fi
+ %
+ % caption text.
+ \appendtomacro\captionline{\scanexp\thiscaption}%
+ \fi
+ %
+ % If we have anything to print, print it, with space before.
+ % Eventually this needs to become an \insert.
+ \ifx\captionline\empty \else
+ \vskip.5\parskip
+ \captionline
+ %
+ % Space below caption.
+ \vskip\parskip
+ \fi
+ %
+ % If have an xref label, write the list of floats info. Do this
+ % after the caption, to avoid chance of it being a breakpoint.
+ \ifx\floatlabel\empty \else
+ % Write the text that goes in the lof to the aux file as
+ % \floatlabel-lof. Besides \floatident, we include the short
+ % caption if specified, else the full caption if specified, else nothing.
+ {%
+ \atdummies
+ %
+ % since we read the caption text in the macro world, where ^^M
+ % is turned into a normal character, we have to scan it back, so
+ % we don't write the literal three characters "^^M" into the aux file.
+ \scanexp{%
+ \xdef\noexpand\gtemp{%
+ \ifx\thisshortcaption\empty
+ \thiscaption
+ \else
+ \thisshortcaption
+ \fi
+ }%
+ }%
+ \immediate\write\auxfile{@xrdef{\floatlabel-lof}{\floatident
+ \ifx\gtemp\empty \else : \gtemp \fi}}%
+ }%
+ \fi
+ \egroup % end of \vtop
+ %
+ % place the captured inserts
+ %
+ % BEWARE: when the floats start floating, we have to issue warning
+ % whenever an insert appears inside a float which could possibly
+ % float. --kasal, 26may04
+ %
+ \checkinserts
+}
+
+% Append the tokens #2 to the definition of macro #1, not expanding either.
+%
+\def\appendtomacro#1#2{%
+ \expandafter\def\expandafter#1\expandafter{#1#2}%
+}
+
+% @caption, @shortcaption
+%
+\def\caption{\docaption\thiscaption}
+\def\shortcaption{\docaption\thisshortcaption}
+\def\docaption{\checkenv\float \bgroup\scanargctxt\defcaption}
+\def\defcaption#1#2{\egroup \def#1{#2}}
+
+% The parameter is the control sequence identifying the counter we are
+% going to use. Create it if it doesn't exist and assign it to \floatno.
+\def\getfloatno#1{%
+ \ifx#1\relax
+ % Haven't seen this figure type before.
+ \csname newcount\endcsname #1%
+ %
+ % Remember to reset this floatno at the next chap.
+ \expandafter\gdef\expandafter\resetallfloatnos
+ \expandafter{\resetallfloatnos #1=0 }%
+ \fi
+ \let\floatno#1%
+}
+
+% \setref calls this to get the XREFLABEL-snt value. We want an @xref
+% to the FLOATLABEL to expand to "Figure 3.1". We call \setref when we
+% first read the @float command.
+%
+\def\Yfloat{\floattype@tie \chaplevelprefix\the\floatno}%
+
+% Magic string used for the XREFLABEL-title value, so \xrefX can
+% distinguish floats from other xref types.
+\def\floatmagic{!!float!!}
+
+% #1 is the control sequence we are passed; we expand into a conditional
+% which is true if #1 represents a float ref. That is, the magic
+% \lastsection value which we \setref above.
+%
+\def\iffloat#1{\expandafter\doiffloat#1==\finish}
+%
+% #1 is (maybe) the \floatmagic string. If so, #2 will be the
+% (safe) float type for this float. We set \iffloattype to #2.
+%
+\def\doiffloat#1=#2=#3\finish{%
+ \def\temp{#1}%
+ \def\iffloattype{#2}%
+ \ifx\temp\floatmagic
+}
+
+% @listoffloats FLOATTYPE - print a list of floats like a table of contents.
+%
+\parseargdef\listoffloats{%
+ \def\floattype{#1}% floattype
+ {%
+ % the floattype might have accents or other special characters,
+ % but we need to use it in a control sequence name.
+ \indexnofonts
+ \turnoffactive
+ \xdef\safefloattype{\floattype}%
+ }%
+ %
+ % \xrdef saves the floats as a \do-list in \floatlistSAFEFLOATTYPE.
+ \expandafter\ifx\csname floatlist\safefloattype\endcsname \relax
+ \ifhavexrefs
+ % if the user said @listoffloats foo but never @float foo.
+ \message{\linenumber No `\safefloattype' floats to list.}%
+ \fi
+ \else
+ \begingroup
+ \leftskip=\tocindent % indent these entries like a toc
+ \let\do=\listoffloatsdo
+ \csname floatlist\safefloattype\endcsname
+ \endgroup
+ \fi
+}
+
+% This is called on each entry in a list of floats. We're passed the
+% xref label, in the form LABEL-title, which is how we save it in the
+% aux file. We strip off the -title and look up \XRLABEL-lof, which
+% has the text we're supposed to typeset here.
+%
+% Figures without xref labels will not be included in the list (since
+% they won't appear in the aux file).
+%
+\def\listoffloatsdo#1{\listoffloatsdoentry#1\finish}
+\def\listoffloatsdoentry#1-title\finish{{%
+ % Can't fully expand XR#1-lof because it can contain anything. Just
+ % pass the control sequence. On the other hand, XR#1-pg is just the
+ % page number, and we want to fully expand that so we can get a link
+ % in pdf output.
+ \toksA = \expandafter{\csname XR#1-lof\endcsname}%
+ %
+ % use the same \entry macro we use to generate the TOC and index.
+ \edef\writeentry{\noexpand\entry{\the\toksA}{\csname XR#1-pg\endcsname}}%
+ \writeentry
+}}
+
+
+\message{localization,}
+
+% For single-language documents, @documentlanguage is usually given very
+% early, just after @documentencoding. Single argument is the language
+% (de) or locale (de_DE) abbreviation.
+%
+{
+ \catcode`\_ = \active
+ \globaldefs=1
+\parseargdef\documentlanguage{\begingroup
+ \let_=\normalunderscore % normal _ character for filenames
+ \tex % read txi-??.tex file in plain TeX.
+ % Read the file by the name they passed if it exists.
+ \openin 1 txi-#1.tex
+ \ifeof 1
+ \documentlanguagetrywithoutunderscore{#1_\finish}%
+ \else
+ \globaldefs = 1 % everything in the txi-LL files needs to persist
+ \input txi-#1.tex
+ \fi
+ \closein 1
+ \endgroup % end raw TeX
+\endgroup}
+}
+%
+% If they passed de_DE, and txi-de_DE.tex doesn't exist,
+% try txi-de.tex.
+%
+\def\documentlanguagetrywithoutunderscore#1_#2\finish{%
+ \openin 1 txi-#1.tex
+ \ifeof 1
+ \errhelp = \nolanghelp
+ \errmessage{Cannot read language file txi-#1.tex}%
+ \else
+ \input txi-#1.tex
+ \fi
+ \closein 1
+}
+%
+\newhelp\nolanghelp{The given language definition file cannot be found or
+is empty. Maybe you need to install it? Putting it in the current
+directory should work if nowhere else does.}
+
+% This macro is called from txi-??.tex files; the first argument is the
+% \language name to set (without the "\lang@" prefix), the second and
+% third args are \{left,right}hyphenmin.
+%
+% The language names to pass are determined when the format is built.
+% See the etex.log file created at that time, e.g.,
+% /usr/local/texlive/2008/texmf-var/web2c/pdftex/etex.log.
+%
+% With TeX Live 2008, etex now includes hyphenation patterns for all
+% available languages. This means we can support hyphenation in
+% Texinfo, at least to some extent. (This still doesn't solve the
+% accented characters problem.)
+%
+\catcode`@=11
+\def\txisetlanguage#1#2#3{%
+ % do not set the language if the name is undefined in the current TeX.
+ \expandafter\ifx\csname lang@#1\endcsname \relax
+ \message{no patterns for #1}%
+ \else
+ \global\language = \csname lang@#1\endcsname
+ \fi
+ % but there is no harm in adjusting the hyphenmin values regardless.
+ \global\lefthyphenmin = #2\relax
+ \global\righthyphenmin = #3\relax
+}
+
+% Helpers for encodings.
+% Set the catcode of characters 128 through 255 to the specified number.
+%
+\def\setnonasciicharscatcode#1{%
+ \count255=128
+ \loop\ifnum\count255<256
+ \global\catcode\count255=#1\relax
+ \advance\count255 by 1
+ \repeat
+}
+
+\def\setnonasciicharscatcodenonglobal#1{%
+ \count255=128
+ \loop\ifnum\count255<256
+ \catcode\count255=#1\relax
+ \advance\count255 by 1
+ \repeat
+}
+
+% @documentencoding sets the definition of non-ASCII characters
+% according to the specified encoding.
+%
+\parseargdef\documentencoding{%
+ % Encoding being declared for the document.
+ \def\declaredencoding{\csname #1.enc\endcsname}%
+ %
+ % Supported encodings: names converted to tokens in order to be able
+ % to compare them with \ifx.
+ \def\ascii{\csname US-ASCII.enc\endcsname}%
+ \def\latnine{\csname ISO-8859-15.enc\endcsname}%
+ \def\latone{\csname ISO-8859-1.enc\endcsname}%
+ \def\lattwo{\csname ISO-8859-2.enc\endcsname}%
+ \def\utfeight{\csname UTF-8.enc\endcsname}%
+ %
+ \ifx \declaredencoding \ascii
+ \asciichardefs
+ %
+ \else \ifx \declaredencoding \lattwo
+ \setnonasciicharscatcode\active
+ \lattwochardefs
+ %
+ \else \ifx \declaredencoding \latone
+ \setnonasciicharscatcode\active
+ \latonechardefs
+ %
+ \else \ifx \declaredencoding \latnine
+ \setnonasciicharscatcode\active
+ \latninechardefs
+ %
+ \else \ifx \declaredencoding \utfeight
+ \setnonasciicharscatcode\active
+ \utfeightchardefs
+ %
+ \else
+ \message{Unknown document encoding #1, ignoring.}%
+ %
+ \fi % utfeight
+ \fi % latnine
+ \fi % latone
+ \fi % lattwo
+ \fi % ascii
+}
+
+% A message to be logged when using a character that isn't available
+% the default font encoding (OT1).
+%
+\def\missingcharmsg#1{\message{Character missing in OT1 encoding: #1.}}
+
+% Take account of \c (plain) vs. \, (Texinfo) difference.
+\def\cedilla#1{\ifx\c\ptexc\c{#1}\else\,{#1}\fi}
+
+% First, make active non-ASCII characters in order for them to be
+% correctly categorized when TeX reads the replacement text of
+% macros containing the character definitions.
+\setnonasciicharscatcode\active
+%
+% Latin1 (ISO-8859-1) character definitions.
+\def\latonechardefs{%
+ \gdef^^a0{~}
+ \gdef^^a1{\exclamdown}
+ \gdef^^a2{\missingcharmsg{CENT SIGN}}
+ \gdef^^a3{{\pounds}}
+ \gdef^^a4{\missingcharmsg{CURRENCY SIGN}}
+ \gdef^^a5{\missingcharmsg{YEN SIGN}}
+ \gdef^^a6{\missingcharmsg{BROKEN BAR}}
+ \gdef^^a7{\S}
+ \gdef^^a8{\"{}}
+ \gdef^^a9{\copyright}
+ \gdef^^aa{\ordf}
+ \gdef^^ab{\guillemetleft}
+ \gdef^^ac{$\lnot$}
+ \gdef^^ad{\-}
+ \gdef^^ae{\registeredsymbol}
+ \gdef^^af{\={}}
+ %
+ \gdef^^b0{\textdegree}
+ \gdef^^b1{$\pm$}
+ \gdef^^b2{$^2$}
+ \gdef^^b3{$^3$}
+ \gdef^^b4{\'{}}
+ \gdef^^b5{$\mu$}
+ \gdef^^b6{\P}
+ %
+ \gdef^^b7{$^.$}
+ \gdef^^b8{\cedilla\ }
+ \gdef^^b9{$^1$}
+ \gdef^^ba{\ordm}
+ %
+ \gdef^^bb{\guilletright}
+ \gdef^^bc{$1\over4$}
+ \gdef^^bd{$1\over2$}
+ \gdef^^be{$3\over4$}
+ \gdef^^bf{\questiondown}
+ %
+ \gdef^^c0{\`A}
+ \gdef^^c1{\'A}
+ \gdef^^c2{\^A}
+ \gdef^^c3{\~A}
+ \gdef^^c4{\"A}
+ \gdef^^c5{\ringaccent A}
+ \gdef^^c6{\AE}
+ \gdef^^c7{\cedilla C}
+ \gdef^^c8{\`E}
+ \gdef^^c9{\'E}
+ \gdef^^ca{\^E}
+ \gdef^^cb{\"E}
+ \gdef^^cc{\`I}
+ \gdef^^cd{\'I}
+ \gdef^^ce{\^I}
+ \gdef^^cf{\"I}
+ %
+ \gdef^^d0{\missingcharmsg{LATIN CAPITAL LETTER ETH}}
+ \gdef^^d1{\~N}
+ \gdef^^d2{\`O}
+ \gdef^^d3{\'O}
+ \gdef^^d4{\^O}
+ \gdef^^d5{\~O}
+ \gdef^^d6{\"O}
+ \gdef^^d7{$\times$}
+ \gdef^^d8{\O}
+ \gdef^^d9{\`U}
+ \gdef^^da{\'U}
+ \gdef^^db{\^U}
+ \gdef^^dc{\"U}
+ \gdef^^dd{\'Y}
+ \gdef^^de{\missingcharmsg{LATIN CAPITAL LETTER THORN}}
+ \gdef^^df{\ss}
+ %
+ \gdef^^e0{\`a}
+ \gdef^^e1{\'a}
+ \gdef^^e2{\^a}
+ \gdef^^e3{\~a}
+ \gdef^^e4{\"a}
+ \gdef^^e5{\ringaccent a}
+ \gdef^^e6{\ae}
+ \gdef^^e7{\cedilla c}
+ \gdef^^e8{\`e}
+ \gdef^^e9{\'e}
+ \gdef^^ea{\^e}
+ \gdef^^eb{\"e}
+ \gdef^^ec{\`{\dotless i}}
+ \gdef^^ed{\'{\dotless i}}
+ \gdef^^ee{\^{\dotless i}}
+ \gdef^^ef{\"{\dotless i}}
+ %
+ \gdef^^f0{\missingcharmsg{LATIN SMALL LETTER ETH}}
+ \gdef^^f1{\~n}
+ \gdef^^f2{\`o}
+ \gdef^^f3{\'o}
+ \gdef^^f4{\^o}
+ \gdef^^f5{\~o}
+ \gdef^^f6{\"o}
+ \gdef^^f7{$\div$}
+ \gdef^^f8{\o}
+ \gdef^^f9{\`u}
+ \gdef^^fa{\'u}
+ \gdef^^fb{\^u}
+ \gdef^^fc{\"u}
+ \gdef^^fd{\'y}
+ \gdef^^fe{\missingcharmsg{LATIN SMALL LETTER THORN}}
+ \gdef^^ff{\"y}
+}
+
+% Latin9 (ISO-8859-15) encoding character definitions.
+\def\latninechardefs{%
+ % Encoding is almost identical to Latin1.
+ \latonechardefs
+ %
+ \gdef^^a4{\euro}
+ \gdef^^a6{\v S}
+ \gdef^^a8{\v s}
+ \gdef^^b4{\v Z}
+ \gdef^^b8{\v z}
+ \gdef^^bc{\OE}
+ \gdef^^bd{\oe}
+ \gdef^^be{\"Y}
+}
+
+% Latin2 (ISO-8859-2) character definitions.
+\def\lattwochardefs{%
+ \gdef^^a0{~}
+ \gdef^^a1{\ogonek{A}}
+ \gdef^^a2{\u{}}
+ \gdef^^a3{\L}
+ \gdef^^a4{\missingcharmsg{CURRENCY SIGN}}
+ \gdef^^a5{\v L}
+ \gdef^^a6{\'S}
+ \gdef^^a7{\S}
+ \gdef^^a8{\"{}}
+ \gdef^^a9{\v S}
+ \gdef^^aa{\cedilla S}
+ \gdef^^ab{\v T}
+ \gdef^^ac{\'Z}
+ \gdef^^ad{\-}
+ \gdef^^ae{\v Z}
+ \gdef^^af{\dotaccent Z}
+ %
+ \gdef^^b0{\textdegree}
+ \gdef^^b1{\ogonek{a}}
+ \gdef^^b2{\ogonek{ }}
+ \gdef^^b3{\l}
+ \gdef^^b4{\'{}}
+ \gdef^^b5{\v l}
+ \gdef^^b6{\'s}
+ \gdef^^b7{\v{}}
+ \gdef^^b8{\cedilla\ }
+ \gdef^^b9{\v s}
+ \gdef^^ba{\cedilla s}
+ \gdef^^bb{\v t}
+ \gdef^^bc{\'z}
+ \gdef^^bd{\H{}}
+ \gdef^^be{\v z}
+ \gdef^^bf{\dotaccent z}
+ %
+ \gdef^^c0{\'R}
+ \gdef^^c1{\'A}
+ \gdef^^c2{\^A}
+ \gdef^^c3{\u A}
+ \gdef^^c4{\"A}
+ \gdef^^c5{\'L}
+ \gdef^^c6{\'C}
+ \gdef^^c7{\cedilla C}
+ \gdef^^c8{\v C}
+ \gdef^^c9{\'E}
+ \gdef^^ca{\ogonek{E}}
+ \gdef^^cb{\"E}
+ \gdef^^cc{\v E}
+ \gdef^^cd{\'I}
+ \gdef^^ce{\^I}
+ \gdef^^cf{\v D}
+ %
+ \gdef^^d0{\missingcharmsg{LATIN CAPITAL LETTER D WITH STROKE}}
+ \gdef^^d1{\'N}
+ \gdef^^d2{\v N}
+ \gdef^^d3{\'O}
+ \gdef^^d4{\^O}
+ \gdef^^d5{\H O}
+ \gdef^^d6{\"O}
+ \gdef^^d7{$\times$}
+ \gdef^^d8{\v R}
+ \gdef^^d9{\ringaccent U}
+ \gdef^^da{\'U}
+ \gdef^^db{\H U}
+ \gdef^^dc{\"U}
+ \gdef^^dd{\'Y}
+ \gdef^^de{\cedilla T}
+ \gdef^^df{\ss}
+ %
+ \gdef^^e0{\'r}
+ \gdef^^e1{\'a}
+ \gdef^^e2{\^a}
+ \gdef^^e3{\u a}
+ \gdef^^e4{\"a}
+ \gdef^^e5{\'l}
+ \gdef^^e6{\'c}
+ \gdef^^e7{\cedilla c}
+ \gdef^^e8{\v c}
+ \gdef^^e9{\'e}
+ \gdef^^ea{\ogonek{e}}
+ \gdef^^eb{\"e}
+ \gdef^^ec{\v e}
+ \gdef^^ed{\'\i}
+ \gdef^^ee{\^\i}
+ \gdef^^ef{\v d}
+ %
+ \gdef^^f0{\missingcharmsg{LATIN SMALL LETTER D WITH STROKE}}
+ \gdef^^f1{\'n}
+ \gdef^^f2{\v n}
+ \gdef^^f3{\'o}
+ \gdef^^f4{\^o}
+ \gdef^^f5{\H o}
+ \gdef^^f6{\"o}
+ \gdef^^f7{$\div$}
+ \gdef^^f8{\v r}
+ \gdef^^f9{\ringaccent u}
+ \gdef^^fa{\'u}
+ \gdef^^fb{\H u}
+ \gdef^^fc{\"u}
+ \gdef^^fd{\'y}
+ \gdef^^fe{\cedilla t}
+ \gdef^^ff{\dotaccent{}}
+}
+
+% UTF-8 character definitions.
+%
+% This code to support UTF-8 is based on LaTeX's utf8.def, with some
+% changes for Texinfo conventions. It is included here under the GPL by
+% permission from Frank Mittelbach and the LaTeX team.
+%
+\newcount\countUTFx
+\newcount\countUTFy
+\newcount\countUTFz
+
+\gdef\UTFviiiTwoOctets#1#2{\expandafter
+ \UTFviiiDefined\csname u8:#1\string #2\endcsname}
+%
+\gdef\UTFviiiThreeOctets#1#2#3{\expandafter
+ \UTFviiiDefined\csname u8:#1\string #2\string #3\endcsname}
+%
+\gdef\UTFviiiFourOctets#1#2#3#4{\expandafter
+ \UTFviiiDefined\csname u8:#1\string #2\string #3\string #4\endcsname}
+
+\gdef\UTFviiiDefined#1{%
+ \ifx #1\relax
+ \message{\linenumber Unicode char \string #1 not defined for Texinfo}%
+ \else
+ \expandafter #1%
+ \fi
+}
+
+\begingroup
+ \catcode`\~13
+ \catcode`\"12
+
+ \def\UTFviiiLoop{%
+ \global\catcode\countUTFx\active
+ \uccode`\~\countUTFx
+ \uppercase\expandafter{\UTFviiiTmp}%
+ \advance\countUTFx by 1
+ \ifnum\countUTFx < \countUTFy
+ \expandafter\UTFviiiLoop
+ \fi}
+
+ \countUTFx = "C2
+ \countUTFy = "E0
+ \def\UTFviiiTmp{%
+ \xdef~{\noexpand\UTFviiiTwoOctets\string~}}
+ \UTFviiiLoop
+
+ \countUTFx = "E0
+ \countUTFy = "F0
+ \def\UTFviiiTmp{%
+ \xdef~{\noexpand\UTFviiiThreeOctets\string~}}
+ \UTFviiiLoop
+
+ \countUTFx = "F0
+ \countUTFy = "F4
+ \def\UTFviiiTmp{%
+ \xdef~{\noexpand\UTFviiiFourOctets\string~}}
+ \UTFviiiLoop
+\endgroup
+
+\begingroup
+ \catcode`\"=12
+ \catcode`\<=12
+ \catcode`\.=12
+ \catcode`\,=12
+ \catcode`\;=12
+ \catcode`\!=12
+ \catcode`\~=13
+
+ \gdef\DeclareUnicodeCharacter#1#2{%
+ \countUTFz = "#1\relax
+ \wlog{\space\space defining Unicode char U+#1 (decimal \the\countUTFz)}%
+ \begingroup
+ \parseXMLCharref
+ \def\UTFviiiTwoOctets##1##2{%
+ \csname u8:##1\string ##2\endcsname}%
+ \def\UTFviiiThreeOctets##1##2##3{%
+ \csname u8:##1\string ##2\string ##3\endcsname}%
+ \def\UTFviiiFourOctets##1##2##3##4{%
+ \csname u8:##1\string ##2\string ##3\string ##4\endcsname}%
+ \expandafter\expandafter\expandafter\expandafter
+ \expandafter\expandafter\expandafter
+ \gdef\UTFviiiTmp{#2}%
+ \endgroup}
+
+ \gdef\parseXMLCharref{%
+ \ifnum\countUTFz < "A0\relax
+ \errhelp = \EMsimple
+ \errmessage{Cannot define Unicode char value < 00A0}%
+ \else\ifnum\countUTFz < "800\relax
+ \parseUTFviiiA,%
+ \parseUTFviiiB C\UTFviiiTwoOctets.,%
+ \else\ifnum\countUTFz < "10000\relax
+ \parseUTFviiiA;%
+ \parseUTFviiiA,%
+ \parseUTFviiiB E\UTFviiiThreeOctets.{,;}%
+ \else
+ \parseUTFviiiA;%
+ \parseUTFviiiA,%
+ \parseUTFviiiA!%
+ \parseUTFviiiB F\UTFviiiFourOctets.{!,;}%
+ \fi\fi\fi
+ }
+
+ \gdef\parseUTFviiiA#1{%
+ \countUTFx = \countUTFz
+ \divide\countUTFz by 64
+ \countUTFy = \countUTFz
+ \multiply\countUTFz by 64
+ \advance\countUTFx by -\countUTFz
+ \advance\countUTFx by 128
+ \uccode `#1\countUTFx
+ \countUTFz = \countUTFy}
+
+ \gdef\parseUTFviiiB#1#2#3#4{%
+ \advance\countUTFz by "#10\relax
+ \uccode `#3\countUTFz
+ \uppercase{\gdef\UTFviiiTmp{#2#3#4}}}
+\endgroup
+
+\def\utfeightchardefs{%
+ \DeclareUnicodeCharacter{00A0}{\tie}
+ \DeclareUnicodeCharacter{00A1}{\exclamdown}
+ \DeclareUnicodeCharacter{00A3}{\pounds}
+ \DeclareUnicodeCharacter{00A8}{\"{ }}
+ \DeclareUnicodeCharacter{00A9}{\copyright}
+ \DeclareUnicodeCharacter{00AA}{\ordf}
+ \DeclareUnicodeCharacter{00AB}{\guillemetleft}
+ \DeclareUnicodeCharacter{00AD}{\-}
+ \DeclareUnicodeCharacter{00AE}{\registeredsymbol}
+ \DeclareUnicodeCharacter{00AF}{\={ }}
+
+ \DeclareUnicodeCharacter{00B0}{\ringaccent{ }}
+ \DeclareUnicodeCharacter{00B4}{\'{ }}
+ \DeclareUnicodeCharacter{00B8}{\cedilla{ }}
+ \DeclareUnicodeCharacter{00BA}{\ordm}
+ \DeclareUnicodeCharacter{00BB}{\guillemetright}
+ \DeclareUnicodeCharacter{00BF}{\questiondown}
+
+ \DeclareUnicodeCharacter{00C0}{\`A}
+ \DeclareUnicodeCharacter{00C1}{\'A}
+ \DeclareUnicodeCharacter{00C2}{\^A}
+ \DeclareUnicodeCharacter{00C3}{\~A}
+ \DeclareUnicodeCharacter{00C4}{\"A}
+ \DeclareUnicodeCharacter{00C5}{\AA}
+ \DeclareUnicodeCharacter{00C6}{\AE}
+ \DeclareUnicodeCharacter{00C7}{\cedilla{C}}
+ \DeclareUnicodeCharacter{00C8}{\`E}
+ \DeclareUnicodeCharacter{00C9}{\'E}
+ \DeclareUnicodeCharacter{00CA}{\^E}
+ \DeclareUnicodeCharacter{00CB}{\"E}
+ \DeclareUnicodeCharacter{00CC}{\`I}
+ \DeclareUnicodeCharacter{00CD}{\'I}
+ \DeclareUnicodeCharacter{00CE}{\^I}
+ \DeclareUnicodeCharacter{00CF}{\"I}
+
+ \DeclareUnicodeCharacter{00D1}{\~N}
+ \DeclareUnicodeCharacter{00D2}{\`O}
+ \DeclareUnicodeCharacter{00D3}{\'O}
+ \DeclareUnicodeCharacter{00D4}{\^O}
+ \DeclareUnicodeCharacter{00D5}{\~O}
+ \DeclareUnicodeCharacter{00D6}{\"O}
+ \DeclareUnicodeCharacter{00D8}{\O}
+ \DeclareUnicodeCharacter{00D9}{\`U}
+ \DeclareUnicodeCharacter{00DA}{\'U}
+ \DeclareUnicodeCharacter{00DB}{\^U}
+ \DeclareUnicodeCharacter{00DC}{\"U}
+ \DeclareUnicodeCharacter{00DD}{\'Y}
+ \DeclareUnicodeCharacter{00DF}{\ss}
+
+ \DeclareUnicodeCharacter{00E0}{\`a}
+ \DeclareUnicodeCharacter{00E1}{\'a}
+ \DeclareUnicodeCharacter{00E2}{\^a}
+ \DeclareUnicodeCharacter{00E3}{\~a}
+ \DeclareUnicodeCharacter{00E4}{\"a}
+ \DeclareUnicodeCharacter{00E5}{\aa}
+ \DeclareUnicodeCharacter{00E6}{\ae}
+ \DeclareUnicodeCharacter{00E7}{\cedilla{c}}
+ \DeclareUnicodeCharacter{00E8}{\`e}
+ \DeclareUnicodeCharacter{00E9}{\'e}
+ \DeclareUnicodeCharacter{00EA}{\^e}
+ \DeclareUnicodeCharacter{00EB}{\"e}
+ \DeclareUnicodeCharacter{00EC}{\`{\dotless{i}}}
+ \DeclareUnicodeCharacter{00ED}{\'{\dotless{i}}}
+ \DeclareUnicodeCharacter{00EE}{\^{\dotless{i}}}
+ \DeclareUnicodeCharacter{00EF}{\"{\dotless{i}}}
+
+ \DeclareUnicodeCharacter{00F1}{\~n}
+ \DeclareUnicodeCharacter{00F2}{\`o}
+ \DeclareUnicodeCharacter{00F3}{\'o}
+ \DeclareUnicodeCharacter{00F4}{\^o}
+ \DeclareUnicodeCharacter{00F5}{\~o}
+ \DeclareUnicodeCharacter{00F6}{\"o}
+ \DeclareUnicodeCharacter{00F8}{\o}
+ \DeclareUnicodeCharacter{00F9}{\`u}
+ \DeclareUnicodeCharacter{00FA}{\'u}
+ \DeclareUnicodeCharacter{00FB}{\^u}
+ \DeclareUnicodeCharacter{00FC}{\"u}
+ \DeclareUnicodeCharacter{00FD}{\'y}
+ \DeclareUnicodeCharacter{00FF}{\"y}
+
+ \DeclareUnicodeCharacter{0100}{\=A}
+ \DeclareUnicodeCharacter{0101}{\=a}
+ \DeclareUnicodeCharacter{0102}{\u{A}}
+ \DeclareUnicodeCharacter{0103}{\u{a}}
+ \DeclareUnicodeCharacter{0104}{\ogonek{A}}
+ \DeclareUnicodeCharacter{0105}{\ogonek{a}}
+ \DeclareUnicodeCharacter{0106}{\'C}
+ \DeclareUnicodeCharacter{0107}{\'c}
+ \DeclareUnicodeCharacter{0108}{\^C}
+ \DeclareUnicodeCharacter{0109}{\^c}
+ \DeclareUnicodeCharacter{0118}{\ogonek{E}}
+ \DeclareUnicodeCharacter{0119}{\ogonek{e}}
+ \DeclareUnicodeCharacter{010A}{\dotaccent{C}}
+ \DeclareUnicodeCharacter{010B}{\dotaccent{c}}
+ \DeclareUnicodeCharacter{010C}{\v{C}}
+ \DeclareUnicodeCharacter{010D}{\v{c}}
+ \DeclareUnicodeCharacter{010E}{\v{D}}
+
+ \DeclareUnicodeCharacter{0112}{\=E}
+ \DeclareUnicodeCharacter{0113}{\=e}
+ \DeclareUnicodeCharacter{0114}{\u{E}}
+ \DeclareUnicodeCharacter{0115}{\u{e}}
+ \DeclareUnicodeCharacter{0116}{\dotaccent{E}}
+ \DeclareUnicodeCharacter{0117}{\dotaccent{e}}
+ \DeclareUnicodeCharacter{011A}{\v{E}}
+ \DeclareUnicodeCharacter{011B}{\v{e}}
+ \DeclareUnicodeCharacter{011C}{\^G}
+ \DeclareUnicodeCharacter{011D}{\^g}
+ \DeclareUnicodeCharacter{011E}{\u{G}}
+ \DeclareUnicodeCharacter{011F}{\u{g}}
+
+ \DeclareUnicodeCharacter{0120}{\dotaccent{G}}
+ \DeclareUnicodeCharacter{0121}{\dotaccent{g}}
+ \DeclareUnicodeCharacter{0124}{\^H}
+ \DeclareUnicodeCharacter{0125}{\^h}
+ \DeclareUnicodeCharacter{0128}{\~I}
+ \DeclareUnicodeCharacter{0129}{\~{\dotless{i}}}
+ \DeclareUnicodeCharacter{012A}{\=I}
+ \DeclareUnicodeCharacter{012B}{\={\dotless{i}}}
+ \DeclareUnicodeCharacter{012C}{\u{I}}
+ \DeclareUnicodeCharacter{012D}{\u{\dotless{i}}}
+
+ \DeclareUnicodeCharacter{0130}{\dotaccent{I}}
+ \DeclareUnicodeCharacter{0131}{\dotless{i}}
+ \DeclareUnicodeCharacter{0132}{IJ}
+ \DeclareUnicodeCharacter{0133}{ij}
+ \DeclareUnicodeCharacter{0134}{\^J}
+ \DeclareUnicodeCharacter{0135}{\^{\dotless{j}}}
+ \DeclareUnicodeCharacter{0139}{\'L}
+ \DeclareUnicodeCharacter{013A}{\'l}
+
+ \DeclareUnicodeCharacter{0141}{\L}
+ \DeclareUnicodeCharacter{0142}{\l}
+ \DeclareUnicodeCharacter{0143}{\'N}
+ \DeclareUnicodeCharacter{0144}{\'n}
+ \DeclareUnicodeCharacter{0147}{\v{N}}
+ \DeclareUnicodeCharacter{0148}{\v{n}}
+ \DeclareUnicodeCharacter{014C}{\=O}
+ \DeclareUnicodeCharacter{014D}{\=o}
+ \DeclareUnicodeCharacter{014E}{\u{O}}
+ \DeclareUnicodeCharacter{014F}{\u{o}}
+
+ \DeclareUnicodeCharacter{0150}{\H{O}}
+ \DeclareUnicodeCharacter{0151}{\H{o}}
+ \DeclareUnicodeCharacter{0152}{\OE}
+ \DeclareUnicodeCharacter{0153}{\oe}
+ \DeclareUnicodeCharacter{0154}{\'R}
+ \DeclareUnicodeCharacter{0155}{\'r}
+ \DeclareUnicodeCharacter{0158}{\v{R}}
+ \DeclareUnicodeCharacter{0159}{\v{r}}
+ \DeclareUnicodeCharacter{015A}{\'S}
+ \DeclareUnicodeCharacter{015B}{\'s}
+ \DeclareUnicodeCharacter{015C}{\^S}
+ \DeclareUnicodeCharacter{015D}{\^s}
+ \DeclareUnicodeCharacter{015E}{\cedilla{S}}
+ \DeclareUnicodeCharacter{015F}{\cedilla{s}}
+
+ \DeclareUnicodeCharacter{0160}{\v{S}}
+ \DeclareUnicodeCharacter{0161}{\v{s}}
+ \DeclareUnicodeCharacter{0162}{\cedilla{t}}
+ \DeclareUnicodeCharacter{0163}{\cedilla{T}}
+ \DeclareUnicodeCharacter{0164}{\v{T}}
+
+ \DeclareUnicodeCharacter{0168}{\~U}
+ \DeclareUnicodeCharacter{0169}{\~u}
+ \DeclareUnicodeCharacter{016A}{\=U}
+ \DeclareUnicodeCharacter{016B}{\=u}
+ \DeclareUnicodeCharacter{016C}{\u{U}}
+ \DeclareUnicodeCharacter{016D}{\u{u}}
+ \DeclareUnicodeCharacter{016E}{\ringaccent{U}}
+ \DeclareUnicodeCharacter{016F}{\ringaccent{u}}
+
+ \DeclareUnicodeCharacter{0170}{\H{U}}
+ \DeclareUnicodeCharacter{0171}{\H{u}}
+ \DeclareUnicodeCharacter{0174}{\^W}
+ \DeclareUnicodeCharacter{0175}{\^w}
+ \DeclareUnicodeCharacter{0176}{\^Y}
+ \DeclareUnicodeCharacter{0177}{\^y}
+ \DeclareUnicodeCharacter{0178}{\"Y}
+ \DeclareUnicodeCharacter{0179}{\'Z}
+ \DeclareUnicodeCharacter{017A}{\'z}
+ \DeclareUnicodeCharacter{017B}{\dotaccent{Z}}
+ \DeclareUnicodeCharacter{017C}{\dotaccent{z}}
+ \DeclareUnicodeCharacter{017D}{\v{Z}}
+ \DeclareUnicodeCharacter{017E}{\v{z}}
+
+ \DeclareUnicodeCharacter{01C4}{D\v{Z}}
+ \DeclareUnicodeCharacter{01C5}{D\v{z}}
+ \DeclareUnicodeCharacter{01C6}{d\v{z}}
+ \DeclareUnicodeCharacter{01C7}{LJ}
+ \DeclareUnicodeCharacter{01C8}{Lj}
+ \DeclareUnicodeCharacter{01C9}{lj}
+ \DeclareUnicodeCharacter{01CA}{NJ}
+ \DeclareUnicodeCharacter{01CB}{Nj}
+ \DeclareUnicodeCharacter{01CC}{nj}
+ \DeclareUnicodeCharacter{01CD}{\v{A}}
+ \DeclareUnicodeCharacter{01CE}{\v{a}}
+ \DeclareUnicodeCharacter{01CF}{\v{I}}
+
+ \DeclareUnicodeCharacter{01D0}{\v{\dotless{i}}}
+ \DeclareUnicodeCharacter{01D1}{\v{O}}
+ \DeclareUnicodeCharacter{01D2}{\v{o}}
+ \DeclareUnicodeCharacter{01D3}{\v{U}}
+ \DeclareUnicodeCharacter{01D4}{\v{u}}
+
+ \DeclareUnicodeCharacter{01E2}{\={\AE}}
+ \DeclareUnicodeCharacter{01E3}{\={\ae}}
+ \DeclareUnicodeCharacter{01E6}{\v{G}}
+ \DeclareUnicodeCharacter{01E7}{\v{g}}
+ \DeclareUnicodeCharacter{01E8}{\v{K}}
+ \DeclareUnicodeCharacter{01E9}{\v{k}}
+
+ \DeclareUnicodeCharacter{01F0}{\v{\dotless{j}}}
+ \DeclareUnicodeCharacter{01F1}{DZ}
+ \DeclareUnicodeCharacter{01F2}{Dz}
+ \DeclareUnicodeCharacter{01F3}{dz}
+ \DeclareUnicodeCharacter{01F4}{\'G}
+ \DeclareUnicodeCharacter{01F5}{\'g}
+ \DeclareUnicodeCharacter{01F8}{\`N}
+ \DeclareUnicodeCharacter{01F9}{\`n}
+ \DeclareUnicodeCharacter{01FC}{\'{\AE}}
+ \DeclareUnicodeCharacter{01FD}{\'{\ae}}
+ \DeclareUnicodeCharacter{01FE}{\'{\O}}
+ \DeclareUnicodeCharacter{01FF}{\'{\o}}
+
+ \DeclareUnicodeCharacter{021E}{\v{H}}
+ \DeclareUnicodeCharacter{021F}{\v{h}}
+
+ \DeclareUnicodeCharacter{0226}{\dotaccent{A}}
+ \DeclareUnicodeCharacter{0227}{\dotaccent{a}}
+ \DeclareUnicodeCharacter{0228}{\cedilla{E}}
+ \DeclareUnicodeCharacter{0229}{\cedilla{e}}
+ \DeclareUnicodeCharacter{022E}{\dotaccent{O}}
+ \DeclareUnicodeCharacter{022F}{\dotaccent{o}}
+
+ \DeclareUnicodeCharacter{0232}{\=Y}
+ \DeclareUnicodeCharacter{0233}{\=y}
+ \DeclareUnicodeCharacter{0237}{\dotless{j}}
+
+ \DeclareUnicodeCharacter{02DB}{\ogonek{ }}
+
+ \DeclareUnicodeCharacter{1E02}{\dotaccent{B}}
+ \DeclareUnicodeCharacter{1E03}{\dotaccent{b}}
+ \DeclareUnicodeCharacter{1E04}{\udotaccent{B}}
+ \DeclareUnicodeCharacter{1E05}{\udotaccent{b}}
+ \DeclareUnicodeCharacter{1E06}{\ubaraccent{B}}
+ \DeclareUnicodeCharacter{1E07}{\ubaraccent{b}}
+ \DeclareUnicodeCharacter{1E0A}{\dotaccent{D}}
+ \DeclareUnicodeCharacter{1E0B}{\dotaccent{d}}
+ \DeclareUnicodeCharacter{1E0C}{\udotaccent{D}}
+ \DeclareUnicodeCharacter{1E0D}{\udotaccent{d}}
+ \DeclareUnicodeCharacter{1E0E}{\ubaraccent{D}}
+ \DeclareUnicodeCharacter{1E0F}{\ubaraccent{d}}
+
+ \DeclareUnicodeCharacter{1E1E}{\dotaccent{F}}
+ \DeclareUnicodeCharacter{1E1F}{\dotaccent{f}}
+
+ \DeclareUnicodeCharacter{1E20}{\=G}
+ \DeclareUnicodeCharacter{1E21}{\=g}
+ \DeclareUnicodeCharacter{1E22}{\dotaccent{H}}
+ \DeclareUnicodeCharacter{1E23}{\dotaccent{h}}
+ \DeclareUnicodeCharacter{1E24}{\udotaccent{H}}
+ \DeclareUnicodeCharacter{1E25}{\udotaccent{h}}
+ \DeclareUnicodeCharacter{1E26}{\"H}
+ \DeclareUnicodeCharacter{1E27}{\"h}
+
+ \DeclareUnicodeCharacter{1E30}{\'K}
+ \DeclareUnicodeCharacter{1E31}{\'k}
+ \DeclareUnicodeCharacter{1E32}{\udotaccent{K}}
+ \DeclareUnicodeCharacter{1E33}{\udotaccent{k}}
+ \DeclareUnicodeCharacter{1E34}{\ubaraccent{K}}
+ \DeclareUnicodeCharacter{1E35}{\ubaraccent{k}}
+ \DeclareUnicodeCharacter{1E36}{\udotaccent{L}}
+ \DeclareUnicodeCharacter{1E37}{\udotaccent{l}}
+ \DeclareUnicodeCharacter{1E3A}{\ubaraccent{L}}
+ \DeclareUnicodeCharacter{1E3B}{\ubaraccent{l}}
+ \DeclareUnicodeCharacter{1E3E}{\'M}
+ \DeclareUnicodeCharacter{1E3F}{\'m}
+
+ \DeclareUnicodeCharacter{1E40}{\dotaccent{M}}
+ \DeclareUnicodeCharacter{1E41}{\dotaccent{m}}
+ \DeclareUnicodeCharacter{1E42}{\udotaccent{M}}
+ \DeclareUnicodeCharacter{1E43}{\udotaccent{m}}
+ \DeclareUnicodeCharacter{1E44}{\dotaccent{N}}
+ \DeclareUnicodeCharacter{1E45}{\dotaccent{n}}
+ \DeclareUnicodeCharacter{1E46}{\udotaccent{N}}
+ \DeclareUnicodeCharacter{1E47}{\udotaccent{n}}
+ \DeclareUnicodeCharacter{1E48}{\ubaraccent{N}}
+ \DeclareUnicodeCharacter{1E49}{\ubaraccent{n}}
+
+ \DeclareUnicodeCharacter{1E54}{\'P}
+ \DeclareUnicodeCharacter{1E55}{\'p}
+ \DeclareUnicodeCharacter{1E56}{\dotaccent{P}}
+ \DeclareUnicodeCharacter{1E57}{\dotaccent{p}}
+ \DeclareUnicodeCharacter{1E58}{\dotaccent{R}}
+ \DeclareUnicodeCharacter{1E59}{\dotaccent{r}}
+ \DeclareUnicodeCharacter{1E5A}{\udotaccent{R}}
+ \DeclareUnicodeCharacter{1E5B}{\udotaccent{r}}
+ \DeclareUnicodeCharacter{1E5E}{\ubaraccent{R}}
+ \DeclareUnicodeCharacter{1E5F}{\ubaraccent{r}}
+
+ \DeclareUnicodeCharacter{1E60}{\dotaccent{S}}
+ \DeclareUnicodeCharacter{1E61}{\dotaccent{s}}
+ \DeclareUnicodeCharacter{1E62}{\udotaccent{S}}
+ \DeclareUnicodeCharacter{1E63}{\udotaccent{s}}
+ \DeclareUnicodeCharacter{1E6A}{\dotaccent{T}}
+ \DeclareUnicodeCharacter{1E6B}{\dotaccent{t}}
+ \DeclareUnicodeCharacter{1E6C}{\udotaccent{T}}
+ \DeclareUnicodeCharacter{1E6D}{\udotaccent{t}}
+ \DeclareUnicodeCharacter{1E6E}{\ubaraccent{T}}
+ \DeclareUnicodeCharacter{1E6F}{\ubaraccent{t}}
+
+ \DeclareUnicodeCharacter{1E7C}{\~V}
+ \DeclareUnicodeCharacter{1E7D}{\~v}
+ \DeclareUnicodeCharacter{1E7E}{\udotaccent{V}}
+ \DeclareUnicodeCharacter{1E7F}{\udotaccent{v}}
+
+ \DeclareUnicodeCharacter{1E80}{\`W}
+ \DeclareUnicodeCharacter{1E81}{\`w}
+ \DeclareUnicodeCharacter{1E82}{\'W}
+ \DeclareUnicodeCharacter{1E83}{\'w}
+ \DeclareUnicodeCharacter{1E84}{\"W}
+ \DeclareUnicodeCharacter{1E85}{\"w}
+ \DeclareUnicodeCharacter{1E86}{\dotaccent{W}}
+ \DeclareUnicodeCharacter{1E87}{\dotaccent{w}}
+ \DeclareUnicodeCharacter{1E88}{\udotaccent{W}}
+ \DeclareUnicodeCharacter{1E89}{\udotaccent{w}}
+ \DeclareUnicodeCharacter{1E8A}{\dotaccent{X}}
+ \DeclareUnicodeCharacter{1E8B}{\dotaccent{x}}
+ \DeclareUnicodeCharacter{1E8C}{\"X}
+ \DeclareUnicodeCharacter{1E8D}{\"x}
+ \DeclareUnicodeCharacter{1E8E}{\dotaccent{Y}}
+ \DeclareUnicodeCharacter{1E8F}{\dotaccent{y}}
+
+ \DeclareUnicodeCharacter{1E90}{\^Z}
+ \DeclareUnicodeCharacter{1E91}{\^z}
+ \DeclareUnicodeCharacter{1E92}{\udotaccent{Z}}
+ \DeclareUnicodeCharacter{1E93}{\udotaccent{z}}
+ \DeclareUnicodeCharacter{1E94}{\ubaraccent{Z}}
+ \DeclareUnicodeCharacter{1E95}{\ubaraccent{z}}
+ \DeclareUnicodeCharacter{1E96}{\ubaraccent{h}}
+ \DeclareUnicodeCharacter{1E97}{\"t}
+ \DeclareUnicodeCharacter{1E98}{\ringaccent{w}}
+ \DeclareUnicodeCharacter{1E99}{\ringaccent{y}}
+
+ \DeclareUnicodeCharacter{1EA0}{\udotaccent{A}}
+ \DeclareUnicodeCharacter{1EA1}{\udotaccent{a}}
+
+ \DeclareUnicodeCharacter{1EB8}{\udotaccent{E}}
+ \DeclareUnicodeCharacter{1EB9}{\udotaccent{e}}
+ \DeclareUnicodeCharacter{1EBC}{\~E}
+ \DeclareUnicodeCharacter{1EBD}{\~e}
+
+ \DeclareUnicodeCharacter{1ECA}{\udotaccent{I}}
+ \DeclareUnicodeCharacter{1ECB}{\udotaccent{i}}
+ \DeclareUnicodeCharacter{1ECC}{\udotaccent{O}}
+ \DeclareUnicodeCharacter{1ECD}{\udotaccent{o}}
+
+ \DeclareUnicodeCharacter{1EE4}{\udotaccent{U}}
+ \DeclareUnicodeCharacter{1EE5}{\udotaccent{u}}
+
+ \DeclareUnicodeCharacter{1EF2}{\`Y}
+ \DeclareUnicodeCharacter{1EF3}{\`y}
+ \DeclareUnicodeCharacter{1EF4}{\udotaccent{Y}}
+
+ \DeclareUnicodeCharacter{1EF8}{\~Y}
+ \DeclareUnicodeCharacter{1EF9}{\~y}
+
+ \DeclareUnicodeCharacter{2013}{--}
+ \DeclareUnicodeCharacter{2014}{---}
+ \DeclareUnicodeCharacter{2018}{\quoteleft}
+ \DeclareUnicodeCharacter{2019}{\quoteright}
+ \DeclareUnicodeCharacter{201A}{\quotesinglbase}
+ \DeclareUnicodeCharacter{201C}{\quotedblleft}
+ \DeclareUnicodeCharacter{201D}{\quotedblright}
+ \DeclareUnicodeCharacter{201E}{\quotedblbase}
+ \DeclareUnicodeCharacter{2022}{\bullet}
+ \DeclareUnicodeCharacter{2026}{\dots}
+ \DeclareUnicodeCharacter{2039}{\guilsinglleft}
+ \DeclareUnicodeCharacter{203A}{\guilsinglright}
+ \DeclareUnicodeCharacter{20AC}{\euro}
+
+ \DeclareUnicodeCharacter{2192}{\expansion}
+ \DeclareUnicodeCharacter{21D2}{\result}
+
+ \DeclareUnicodeCharacter{2212}{\minus}
+ \DeclareUnicodeCharacter{2217}{\point}
+ \DeclareUnicodeCharacter{2261}{\equiv}
+}% end of \utfeightchardefs
+
+
+% US-ASCII character definitions.
+\def\asciichardefs{% nothing need be done
+ \relax
+}
+
+% Make non-ASCII characters printable again for compatibility with
+% existing Texinfo documents that may use them, even without declaring a
+% document encoding.
+%
+\setnonasciicharscatcode \other
+
+
+\message{formatting,}
+
+\newdimen\defaultparindent \defaultparindent = 15pt
+
+\chapheadingskip = 15pt plus 4pt minus 2pt
+\secheadingskip = 12pt plus 3pt minus 2pt
+\subsecheadingskip = 9pt plus 2pt minus 2pt
+
+% Prevent underfull vbox error messages.
+\vbadness = 10000
+
+% Don't be so finicky about underfull hboxes, either.
+\hbadness = 2000
+
+% Following George Bush, get rid of widows and orphans.
+\widowpenalty=10000
+\clubpenalty=10000
+
+% Use TeX 3.0's \emergencystretch to help line breaking, but if we're
+% using an old version of TeX, don't do anything. We want the amount of
+% stretch added to depend on the line length, hence the dependence on
+% \hsize. We call this whenever the paper size is set.
+%
+\def\setemergencystretch{%
+ \ifx\emergencystretch\thisisundefined
+ % Allow us to assign to \emergencystretch anyway.
+ \def\emergencystretch{\dimen0}%
+ \else
+ \emergencystretch = .15\hsize
+ \fi
+}
+
+% Parameters in order: 1) textheight; 2) textwidth;
+% 3) voffset; 4) hoffset; 5) binding offset; 6) topskip;
+% 7) physical page height; 8) physical page width.
+%
+% We also call \setleading{\textleading}, so the caller should define
+% \textleading. The caller should also set \parskip.
+%
+\def\internalpagesizes#1#2#3#4#5#6#7#8{%
+ \voffset = #3\relax
+ \topskip = #6\relax
+ \splittopskip = \topskip
+ %
+ \vsize = #1\relax
+ \advance\vsize by \topskip
+ \outervsize = \vsize
+ \advance\outervsize by 2\topandbottommargin
+ \pageheight = \vsize
+ %
+ \hsize = #2\relax
+ \outerhsize = \hsize
+ \advance\outerhsize by 0.5in
+ \pagewidth = \hsize
+ %
+ \normaloffset = #4\relax
+ \bindingoffset = #5\relax
+ %
+ \ifpdf
+ \pdfpageheight #7\relax
+ \pdfpagewidth #8\relax
+ % if we don't reset these, they will remain at "1 true in" of
+ % whatever layout pdftex was dumped with.
+ \pdfhorigin = 1 true in
+ \pdfvorigin = 1 true in
+ \fi
+ %
+ \setleading{\textleading}
+ %
+ \parindent = \defaultparindent
+ \setemergencystretch
+}
+
+% @letterpaper (the default).
+\def\letterpaper{{\globaldefs = 1
+ \parskip = 3pt plus 2pt minus 1pt
+ \textleading = 13.2pt
+ %
+ % If page is nothing but text, make it come out even.
+ \internalpagesizes{607.2pt}{6in}% that's 46 lines
+ {\voffset}{.25in}%
+ {\bindingoffset}{36pt}%
+ {11in}{8.5in}%
+}}
+
+% Use @smallbook to reset parameters for 7x9.25 trim size.
+\def\smallbook{{\globaldefs = 1
+ \parskip = 2pt plus 1pt
+ \textleading = 12pt
+ %
+ \internalpagesizes{7.5in}{5in}%
+ {-.2in}{0in}%
+ {\bindingoffset}{16pt}%
+ {9.25in}{7in}%
+ %
+ \lispnarrowing = 0.3in
+ \tolerance = 700
+ \hfuzz = 1pt
+ \contentsrightmargin = 0pt
+ \defbodyindent = .5cm
+}}
+
+% Use @smallerbook to reset parameters for 6x9 trim size.
+% (Just testing, parameters still in flux.)
+\def\smallerbook{{\globaldefs = 1
+ \parskip = 1.5pt plus 1pt
+ \textleading = 12pt
+ %
+ \internalpagesizes{7.4in}{4.8in}%
+ {-.2in}{-.4in}%
+ {0pt}{14pt}%
+ {9in}{6in}%
+ %
+ \lispnarrowing = 0.25in
+ \tolerance = 700
+ \hfuzz = 1pt
+ \contentsrightmargin = 0pt
+ \defbodyindent = .4cm
+}}
+
+% Use @afourpaper to print on European A4 paper.
+\def\afourpaper{{\globaldefs = 1
+ \parskip = 3pt plus 2pt minus 1pt
+ \textleading = 13.2pt
+ %
+ % Double-side printing via postscript on Laserjet 4050
+ % prints double-sided nicely when \bindingoffset=10mm and \hoffset=-6mm.
+ % To change the settings for a different printer or situation, adjust
+ % \normaloffset until the front-side and back-side texts align. Then
+ % do the same for \bindingoffset. You can set these for testing in
+ % your texinfo source file like this:
+ % @tex
+ % \global\normaloffset = -6mm
+ % \global\bindingoffset = 10mm
+ % @end tex
+ \internalpagesizes{673.2pt}{160mm}% that's 51 lines
+ {\voffset}{\hoffset}%
+ {\bindingoffset}{44pt}%
+ {297mm}{210mm}%
+ %
+ \tolerance = 700
+ \hfuzz = 1pt
+ \contentsrightmargin = 0pt
+ \defbodyindent = 5mm
+}}
+
+% Use @afivepaper to print on European A5 paper.
+% From romildo@urano.iceb.ufop.br, 2 July 2000.
+% He also recommends making @example and @lisp be small.
+\def\afivepaper{{\globaldefs = 1
+ \parskip = 2pt plus 1pt minus 0.1pt
+ \textleading = 12.5pt
+ %
+ \internalpagesizes{160mm}{120mm}%
+ {\voffset}{\hoffset}%
+ {\bindingoffset}{8pt}%
+ {210mm}{148mm}%
+ %
+ \lispnarrowing = 0.2in
+ \tolerance = 800
+ \hfuzz = 1.2pt
+ \contentsrightmargin = 0pt
+ \defbodyindent = 2mm
+ \tableindent = 12mm
+}}
+
+% A specific text layout, 24x15cm overall, intended for A4 paper.
+\def\afourlatex{{\globaldefs = 1
+ \afourpaper
+ \internalpagesizes{237mm}{150mm}%
+ {\voffset}{4.6mm}%
+ {\bindingoffset}{7mm}%
+ {297mm}{210mm}%
+ %
+ % Must explicitly reset to 0 because we call \afourpaper.
+ \globaldefs = 0
+}}
+
+% Use @afourwide to print on A4 paper in landscape format.
+\def\afourwide{{\globaldefs = 1
+ \afourpaper
+ \internalpagesizes{241mm}{165mm}%
+ {\voffset}{-2.95mm}%
+ {\bindingoffset}{7mm}%
+ {297mm}{210mm}%
+ \globaldefs = 0
+}}
+
+% @pagesizes TEXTHEIGHT[,TEXTWIDTH]
+% Perhaps we should allow setting the margins, \topskip, \parskip,
+% and/or leading, also. Or perhaps we should compute them somehow.
+%
+\parseargdef\pagesizes{\pagesizesyyy #1,,\finish}
+\def\pagesizesyyy#1,#2,#3\finish{{%
+ \setbox0 = \hbox{\ignorespaces #2}\ifdim\wd0 > 0pt \hsize=#2\relax \fi
+ \globaldefs = 1
+ %
+ \parskip = 3pt plus 2pt minus 1pt
+ \setleading{\textleading}%
+ %
+ \dimen0 = #1\relax
+ \advance\dimen0 by \voffset
+ %
+ \dimen2 = \hsize
+ \advance\dimen2 by \normaloffset
+ %
+ \internalpagesizes{#1}{\hsize}%
+ {\voffset}{\normaloffset}%
+ {\bindingoffset}{44pt}%
+ {\dimen0}{\dimen2}%
+}}
+
+% Set default to letter.
+%
+\letterpaper
+
+
+\message{and turning on texinfo input format.}
+
+% DEL is a comment character, in case @c does not suffice.
+\catcode`\^^? = 14
+
+% Define macros to output various characters with catcode for normal text.
+\catcode`\"=\other
+\catcode`\~=\other
+\catcode`\^=\other
+\catcode`\_=\other
+\catcode`\|=\other
+\catcode`\<=\other
+\catcode`\>=\other
+\catcode`\+=\other
+\catcode`\$=\other
+\def\normaldoublequote{"}
+\def\normaltilde{~}
+\def\normalcaret{^}
+\def\normalunderscore{_}
+\def\normalverticalbar{|}
+\def\normalless{<}
+\def\normalgreater{>}
+\def\normalplus{+}
+\def\normaldollar{$}%$ font-lock fix
+
+% This macro is used to make a character print one way in \tt
+% (where it can probably be output as-is), and another way in other fonts,
+% where something hairier probably needs to be done.
+%
+% #1 is what to print if we are indeed using \tt; #2 is what to print
+% otherwise. Since all the Computer Modern typewriter fonts have zero
+% interword stretch (and shrink), and it is reasonable to expect all
+% typewriter fonts to have this, we can check that font parameter.
+%
+\def\ifusingtt#1#2{\ifdim \fontdimen3\font=0pt #1\else #2\fi}
+
+% Same as above, but check for italic font. Actually this also catches
+% non-italic slanted fonts since it is impossible to distinguish them from
+% italic fonts. But since this is only used by $ and it uses \sl anyway
+% this is not a problem.
+\def\ifusingit#1#2{\ifdim \fontdimen1\font>0pt #1\else #2\fi}
+
+% Turn off all special characters except @
+% (and those which the user can use as if they were ordinary).
+% Most of these we simply print from the \tt font, but for some, we can
+% use math or other variants that look better in normal text.
+
+\catcode`\"=\active
+\def\activedoublequote{{\tt\char34}}
+\let"=\activedoublequote
+\catcode`\~=\active
+\def~{{\tt\char126}}
+\chardef\hat=`\^
+\catcode`\^=\active
+\def^{{\tt \hat}}
+
+\catcode`\_=\active
+\def_{\ifusingtt\normalunderscore\_}
+\let\realunder=_
+% Subroutine for the previous macro.
+\def\_{\leavevmode \kern.07em \vbox{\hrule width.3em height.1ex}\kern .07em }
+
+\catcode`\|=\active
+\def|{{\tt\char124}}
+\chardef \less=`\<
+\catcode`\<=\active
+\def<{{\tt \less}}
+\chardef \gtr=`\>
+\catcode`\>=\active
+\def>{{\tt \gtr}}
+\catcode`\+=\active
+\def+{{\tt \char 43}}
+\catcode`\$=\active
+\def${\ifusingit{{\sl\$}}\normaldollar}%$ font-lock fix
+
+% If a .fmt file is being used, characters that might appear in a file
+% name cannot be active until we have parsed the command line.
+% So turn them off again, and have \everyjob (or @setfilename) turn them on.
+% \otherifyactive is called near the end of this file.
+\def\otherifyactive{\catcode`+=\other \catcode`\_=\other}
+
+% Used sometimes to turn off (effectively) the active characters even after
+% parsing them.
+\def\turnoffactive{%
+ \normalturnoffactive
+ \otherbackslash
+}
+
+\catcode`\@=0
+
+% \backslashcurfont outputs one backslash character in current font,
+% as in \char`\\.
+\global\chardef\backslashcurfont=`\\
+\global\let\rawbackslashxx=\backslashcurfont % let existing .??s files work
+
+% \realbackslash is an actual character `\' with catcode other, and
+% \doublebackslash is two of them (for the pdf outlines).
+{\catcode`\\=\other @gdef@realbackslash{\} @gdef@doublebackslash{\\}}
+
+% In texinfo, backslash is an active character; it prints the backslash
+% in fixed width font.
+\catcode`\\=\active
+@def@normalbackslash{{@tt@backslashcurfont}}
+% On startup, @fixbackslash assigns:
+% @let \ = @normalbackslash
+
+% \rawbackslash defines an active \ to do \backslashcurfont.
+% \otherbackslash defines an active \ to be a literal `\' character with
+% catcode other.
+@gdef@rawbackslash{@let\=@backslashcurfont}
+@gdef@otherbackslash{@let\=@realbackslash}
+
+% Same as @turnoffactive except outputs \ as {\tt\char`\\} instead of
+% the literal character `\'.
+%
+@def@normalturnoffactive{%
+ @let\=@normalbackslash
+ @let"=@normaldoublequote
+ @let~=@normaltilde
+ @let^=@normalcaret
+ @let_=@normalunderscore
+ @let|=@normalverticalbar
+ @let<=@normalless
+ @let>=@normalgreater
+ @let+=@normalplus
+ @let$=@normaldollar %$ font-lock fix
+ @markupsetuplqdefault
+ @markupsetuprqdefault
+ @unsepspaces
+}
+
+% Make _ and + \other characters, temporarily.
+% This is canceled by @fixbackslash.
+@otherifyactive
+
+% If a .fmt file is being used, we don't want the `\input texinfo' to show up.
+% That is what \eatinput is for; after that, the `\' should revert to printing
+% a backslash.
+%
+@gdef@eatinput input texinfo{@fixbackslash}
+@global@let\ = @eatinput
+
+% On the other hand, perhaps the file did not have a `\input texinfo'. Then
+% the first `\' in the file would cause an error. This macro tries to fix
+% that, assuming it is called before the first `\' could plausibly occur.
+% Also turn back on active characters that might appear in the input
+% file name, in case not using a pre-dumped format.
+%
+@gdef@fixbackslash{%
+ @ifx\@eatinput @let\ = @normalbackslash @fi
+ @catcode`+=@active
+ @catcode`@_=@active
+}
+
+% Say @foo, not \foo, in error messages.
+@escapechar = `@@
+
+% These look ok in all fonts, so just make them not special.
+@catcode`@& = @other
+@catcode`@# = @other
+@catcode`@% = @other
+
+@c Finally, make ` and ' active, so that txicodequoteundirected and
+@c txicodequotebacktick work right in, e.g., @w{@code{`foo'}}. If we
+@c don't make ` and ' active, @code will not get them as active chars.
+@c Do this last of all since we use ` in the previous @catcode assignments.
+@catcode`@'=@active
+@catcode`@`=@active
+@markupsetuplqdefault
+@markupsetuprqdefault
+
+@c Local variables:
+@c eval: (add-hook 'write-file-hooks 'time-stamp)
+@c page-delimiter: "^\\\\message"
+@c time-stamp-start: "def\\\\texinfoversion{"
+@c time-stamp-format: "%:y-%02m-%02d.%02H"
+@c time-stamp-end: "}"
+@c End:
+
+@c vim:sw=2:
+
+@ignore
+ arch-tag: e1b36e32-c96e-4135-a41a-0b2efa2ea115
+@end ignore