(command.CommandList children: [ (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} { (DQ (X) (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Subshell command_list: (command.CommandList children: [(C {(echo)} {(SQ <'\\t'>)})] ) redirects: [ (redir.Redir op: <Redir_Great '2>'> fd: 2 arg_word: {(/dev/null)} ) ] spids: [69 75] ) ] ) left_token: <Left_Backtick '`'> spids: [64 79] ) ) } {(Lit_Other '=')} {(SQ <'X\\t'>)} ) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:echo spids:[92]) op: Equal rhs: {(SQ <echo>)} spids: [92] ) ] spids: [92] ) ] spids: [16777215 89] ) ] else_action: [ (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} { (DQ (X) (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Subshell command_list: (command.CommandList children: [(C {(printf)} {(SQ <'%s\\n'>)} {(SQ <'\\t'>)})] ) redirects: [ (redir.Redir op: <Redir_Great '2>'> fd: 2 arg_word: {(/dev/null)} ) ] spids: [113 123] ) ] ) left_token: <Left_Backtick '`'> spids: [106 127] ) ) } {(Lit_Other '=')} {(SQ <'X\\t'>)} ) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:echo spids:[140]) op: Equal rhs: {(SQ <'printf %s\\n'>)} spids: [140] ) ] spids: [140] ) ] spids: [16777215 137] ) ] else_action: [ (command.FuncDef name: echo_func body: (command.BraceGroup children: [ (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(EOT)} here_end_span_id: 165 stdin_parts: [($ VSub_Star '$*') ('\n')] ) ] ) ] spids: [154] ) spids: [149 153] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:echo spids:[170]) op: Equal rhs: {(SQ <echo_func>)} spids: [170] ) ] spids: [170] ) ] spids: [146 176] ) ] spids: [97 178] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {(-z)} { (DQ (word_part.BracedVarSub token: <VSub_Name ZSH_VERSION> suffix_op: (suffix_op.StringUnary op_id:VTest_Plus arg_word:{(set)}) spids: [206 210] ) ) } ) terminator: <Op_Semi ';'> ) ] action: [ (command.Case to_match: {(DQ ($ VSub_Number '$0'))} arms: [ (case_arm pat_list: [ {(gettext.sh)} {(Lit_Other '*') (/gettext.sh)} {(Lit_Other '*') (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (gettext.sh) } ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:progname spids:[261]) op: Equal rhs: {($ VSub_Number '$0')} spids: [261] ) ] spids: [261] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:package spids:[265]) op: Equal rhs: {(gettext-runtime)} spids: [265] ) ] spids: [265] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:version spids:[269]) op: Equal rhs: {(0.19.7)} spids: [269] ) ] spids: [269] ) (command.FuncDef name: func_usage body: (command.BraceGroup children: [ (C {(echo)} { (DQ ('GNU gettext shell script function library version ') ($ VSub_DollarName '$version') ) } ) (C {(echo)} {(DQ ('Usage: . gettext.sh'))}) ] spids: [287] ) spids: [281 285] ) (command.FuncDef name: func_version body: (command.BraceGroup children: [ (C {(echo)} { (DQ ($ VSub_DollarName '$progname') (' (GNU ') ($ VSub_DollarName '$package') (') ') ($ VSub_DollarName '$version') ) } ) (C {(echo)} { (DQ ('Copyright (C) 2003-2007 Free Software Foundation, Inc.\n') ( 'License GPLv2+: GNU GPL version 2 or later <http://gnu.org/licenses/gpl.html>\n' ) ('This is free software: you are free to change and redistribute it.\n') ('There is NO WARRANTY, to the extent permitted by law.') ) } ) (C {(echo)} {(DQ ('Written by'))} {(DQ ('Bruno Haible'))}) ] spids: [322] ) spids: [316 320] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(test)} {($ VSub_Pound '$#')} {(Lit_Other '=')} {(1)}) terminator: <Op_Semi ';'> ) ] action: [ (command.Case to_match: {(DQ ($ VSub_Number '$1'))} arms: [ (case_arm pat_list: [{(--help)} {(--hel)} {(--he)} {(--h)}] action: [ (command.Sentence child: (C {(func_usage)}) terminator: <Op_Semi ';'> ) (command.ControlFlow token: <ControlFlow_Exit exit> arg_word: {(0)} ) ] spids: [383 397 407 16777215] ) (case_arm pat_list: [ {(--version)} {(--versio)} {(--versi)} {(--vers)} {(--ver)} {(--ve)} {(--v)} ] action: [ (command.Sentence child: (C {(func_version)}) terminator: <Op_Semi ';'> ) (command.ControlFlow token: <ControlFlow_Exit exit> arg_word: {(0)} ) ] spids: [410 436 446 16777215] ) ] spids: [374 380 449] ) ] spids: [16777215 371] ) ] spids: [16777215 452] ) (command.SimpleCommand words: [{(func_usage)}] redirects: [(redir.Redir op:<Redir_GreatAnd '1>&'> fd:1 arg_word:{(2)})] ) (command.ControlFlow token: <ControlFlow_Exit exit> arg_word: {(1)} ) ] spids: [246 258 466 16777215] ) ] spids: [237 243 469] ) ] spids: [16777215 214] ) ] spids: [16777215 471] ) (command.FuncDef name: eval_gettext body: (command.BraceGroup children: [ (command.Pipeline children: [ (C {(gettext)} {(DQ ($ VSub_Number '$1'))}) (command.Subshell command_list: (command.CommandList children: [ (command.Sentence child: (C {(export)} {(PATH)} { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(envsubst)} {(--variables)} {(DQ ($ VSub_Number '$1'))}) ] ) left_token: <Left_Backtick '`'> spids: [504 514] ) } ) terminator: <Op_Semi ';'> ) (C {(envsubst)} {(DQ ($ VSub_Number '$1'))}) ] ) spids: [499 522] ) ] negated: F ) ] spids: [488] ) spids: [483 487] ) (command.FuncDef name: eval_ngettext body: (command.BraceGroup children: [ (command.Pipeline children: [ (C {(ngettext)} {(DQ ($ VSub_Number '$1'))} {(DQ ($ VSub_Number '$2'))} {(DQ ($ VSub_Number '$3'))} ) (command.Subshell command_list: (command.CommandList children: [ (command.Sentence child: (C {(export)} {(PATH)} { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(envsubst)} {(--variables)} {(DQ ($ VSub_Number '$1') (' ') ($ VSub_Number '$2'))} ) ] ) left_token: <Left_Backtick '`'> spids: [565 577] ) } ) terminator: <Op_Semi ';'> ) (C {(envsubst)} {(DQ ($ VSub_Number '$1') (' ') ($ VSub_Number '$2'))}) ] ) spids: [560 587] ) ] negated: F ) ] spids: [541] ) spids: [536 540] ) ] )