(CommandList children: [ (FuncDef name: _muttaddr body: (BraceGroup children: [ (C {(_muttaliases)} {(DQ ($ VSub_Number "$1"))}) (C {(_muttquery)} {(DQ ($ VSub_Number "$1"))}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:COMPREPLY) op: PlusEqual rhs: { (ArrayLiteralPart words: [ { (CommandSubPart command_list: (CommandList children: [(C {(compgen)} {(-u)} {(--)} {(DQ ($ VSub_Number "$1"))})] ) left_token: <Left_CommandSub "$("> spids: [41 53] ) } ] ) } spids: [38] ) ] spids: [38] ) (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)}) ] spids: [20] ) spids: [16 19] ) (FuncDef name: _muttrc body: (BraceGroup children: [ (C {(set)} {(--)} { (DQ (BracedVarSub token: <VSub_Name words> bracket_op: (WholeArray op_id:Lit_At) spids: [89 94] ) ) } ) (While cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id:BoolBinary_gt left:{($ VSub_Pound "$#")} right:{(0)}) ) terminator: <Op_Semi ";"> ) ] body: (DoGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {($ VSub_Number "$1")} right: {(-F) (Lit_Other "*")} ) ) terminator: <Op_Semi ";"> ) ] action: [ (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_gt left: { (BracedVarSub token: <VSub_Number 1> prefix_op: VSub_Pound spids: [135 138] ) } right: {(2)} ) ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:muttrc) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [ (C {(dequote)} { (DQ (BracedVarSub token: <VSub_Number 1> suffix_op: (Slice begin: (ArithWord w: {(Lit_Digits 2)} ) ) spids: [156 160] ) ) } ) ] ) left_token: <Left_CommandSub "$("> spids: [152 162] ) ) } spids: [150] ) ] spids: [150] ) ] spids: [-1 147] ) ] else_action: [ (C {(shift)}) (AndOr children: [ (DBracket expr: (WordTest w:{($ VSub_Number "$1")}) ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:muttrc) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [ (C {(dequote)} {(DQ ($ VSub_Number "$1"))}) ] ) left_token: <Left_CommandSub "$("> spids: [182 188] ) ) } spids: [180] ) ] spids: [180] ) ] op_id: Op_DAmp ) ] spids: [166 192] ) (ControlFlow token:<ControlFlow_Break break>) ] spids: [-1 128] ) ] spids: [-1 198] ) (C {(shift)}) ] spids: [111 204] ) ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id:BoolUnary_z child:{($ VSub_Name "$muttrc")}) ) terminator: <Op_Semi ";"> ) ] action: [ (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id: BoolUnary_f child: {(Lit_Tilde "~") (/.) (${ VSub_Name muttcmd) (rc)} ) ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:muttrc) op: Equal rhs: {(DQ ("~/.") (${ VSub_Name muttcmd) (rc))} spids: [241] ) ] spids: [241] ) ] spids: [-1 238] ) (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id: BoolUnary_f child: {(Lit_Tilde "~") (/.) (${ VSub_Name muttcmd) (/) (${ VSub_Name muttcmd) (rc) } ) ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:muttrc) op: Equal rhs: { (DQ ("~/.") (${ VSub_Name muttcmd) (/) (${ VSub_Name muttcmd) (rc)) } spids: [274] ) ] spids: [274] ) ] spids: [251 271] ) ] spids: [-1 288] ) ] spids: [-1 219] ) ] spids: [-1 291] ) (C {(printf)} {(DQ ("%s"))} {(DQ ($ VSub_Name "$muttrc"))}) ] spids: [77] ) spids: [73 76] ) (FuncDef name: _muttconffiles body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs:(LhsName name:file) op:Equal spids:[329]) (assign_pair lhs:(LhsName name:sofar) op:Equal spids:[331]) ] spids: [327] ) (Assignment keyword: Assign_Local flags: ["'-a'"] pairs: [(assign_pair lhs:(LhsName name:newconffiles) op:Equal spids:[338])] spids: [334] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:sofar) op: Equal rhs: {(DQ (" ") ($ VSub_Number "$1") (" "))} spids: [342] ) ] spids: [342] ) (C {(shift)}) (While cond: [ (Sentence child: (DBracket expr:(WordTest w:{(DQ ($ VSub_Number "$1"))})) terminator: <Op_Semi ";"> ) ] body: (DoGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:newconffiles) op: Equal rhs: { (ArrayLiteralPart words: [ { (CommandSubPart command_list: (CommandList children: [ (C {(sed)} {(-n)} { (SQ < "s|^source[[:space:]]\\{1,\\}\\([^[:space:]]\\{1,\\}\\).*$|\\1|p" > ) } { (CommandSubPart command_list: (CommandList children: [ (C {(eval)} {(printf)} {(Lit_Other "%") (s)} {($ VSub_Number "$1")} ) ] ) left_token: <Left_CommandSub "$("> spids: [379 388] ) } ) ] ) left_token: <Left_CommandSub "$("> spids: [370 390] ) } ] ) } spids: [367] ) ] spids: [367] ) (ForEach iter_name: file iter_words: [ { (DQ (BracedVarSub token: <VSub_Name newconffiles> bracket_op: (WholeArray op_id:Lit_At) spids: [402 407] ) ) } ] do_arg_iter: False body: (DoGroup children: [ (C {(__expand_tilde_by_ref)} {(file)}) (AndOr children: [ (DBracket expr: (LogicalOr left: (LogicalNot child: (BoolUnary op_id: BoolUnary_f child: {(DQ ($ VSub_Name "$file"))} ) ) right: (BoolBinary op_id: BoolBinary_GlobDEqual left: {($ VSub_Name "$sofar")} right: {(Lit_Other "*") (EscapedLiteralPart token: <Lit_EscapedChar "\\ "> ) ($ VSub_Name "$file") (EscapedLiteralPart token:<Lit_EscapedChar "\\ ">) (Lit_Other "*") } ) ) ) (ControlFlow token: <ControlFlow_Continue continue> ) ] op_id: Op_DAmp ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:sofar) op: PlusEqual rhs: {(DQ (" ") ($ VSub_Name "$file"))} spids: [448] ) ] spids: [448] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:sofar) op: Equal rhs: { (DQ (" ") (CommandSubPart command_list: (CommandList children: [ (C {(eval)} {(_muttconffiles)} { (EscapedLiteralPart token: <Lit_EscapedChar "\\\""> ) ($ VSub_Name "$sofar") (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">) } {($ VSub_Name "$file")} ) ] ) left_token: <Left_CommandSub "$("> spids: [458 468] ) (" ") ) } spids: [455] ) ] spids: [455] ) ] spids: [411 473] ) spids: [400 409] ) (C {(shift)}) ] spids: [364 479] ) ) (C {(printf)} {(SQ <"%s\\n">)} {($ VSub_Name "$sofar")}) ] spids: [324] ) spids: [320 323] ) (FuncDef name: _muttaliases body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:cur) op: Equal rhs: {($ VSub_Number "$1")} spids: [506] ) (assign_pair lhs:(LhsName name:muttrc) op:Equal spids:[509]) (assign_pair lhs: (LhsName name:muttcmd) op: Equal rhs: { (BracedVarSub token: <VSub_Name words> bracket_op: (ArrayIndex expr:(ArithWord w:{(Lit_Digits 0)})) spids: [512 517] ) } spids: [511] ) ] spids: [504] ) (Assignment keyword: Assign_Local flags: ["'-a'"] pairs: [ (assign_pair lhs:(LhsName name:conffiles) op:Equal spids:[524]) (assign_pair lhs:(LhsName name:aliases) op:Equal spids:[526]) ] spids: [520] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:muttrc) op: Equal rhs: { (CommandSubPart command_list: (CommandList children:[(C {(_muttrc)})]) left_token: <Left_CommandSub "$("> spids: [531 533] ) } spids: [530] ) ] spids: [530] ) (AndOr children: [ (DBracket expr: (BoolUnary op_id:BoolUnary_z child:{($ VSub_Name "$muttrc")}) ) (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)}) ] op_id: Op_DAmp ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:conffiles) op: Equal rhs: { (ArrayLiteralPart words: [ { (CommandSubPart command_list: (CommandList children: [ (C {(eval)} {(_muttconffiles)} {($ VSub_Name "$muttrc")} {($ VSub_Name "$muttrc")} ) ] ) left_token: <Left_CommandSub "$("> spids: [555 563] ) } ] ) } spids: [552] ) ] spids: [552] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:aliases) op: Equal rhs: { (ArrayLiteralPart words: [ { (CommandSubPart command_list: (CommandList children: [ (C {(sed)} {(-n)} { (SQ < "s|^alias[[:space:]]\\{1,\\}\\([^[:space:]]\\{1,\\}\\).*$|\\1|p" > ) } { (CommandSubPart command_list: (CommandList children: [ (C {(eval)} {(echo)} { (DQ (BracedVarSub token: <VSub_Name conffiles> bracket_op: (WholeArray op_id:Lit_At) spids: [589 594] ) ) } ) ] ) left_token: <Left_CommandSub "$("> spids: [583 596] ) } ) ] ) left_token: <Left_CommandSub "$("> spids: [571 598] ) } ] ) } spids: [568] ) ] spids: [568] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:COMPREPLY) op: PlusEqual rhs: { (ArrayLiteralPart words: [ { (CommandSubPart command_list: (CommandList children: [ (C {(compgen)} {(-W)} { (DQ (BracedVarSub token: <VSub_Name aliases> bracket_op: (WholeArray op_id:Arith_Star) spids: [613 618] ) ) } {(--)} {(DQ ($ VSub_Name "$cur"))} ) ] ) left_token: <Left_CommandSub "$("> spids: [606 627] ) } ] ) } spids: [603] ) ] spids: [603] ) (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)}) ] spids: [501] ) spids: [497 500] ) (FuncDef name: _muttquery body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:cur) op: Equal rhs: {($ VSub_Number "$1")} spids: [653] ) (assign_pair lhs:(LhsName name:querycmd) op:Equal spids:[656]) (assign_pair lhs: (LhsName name:muttcmd) op: Equal rhs: { (BracedVarSub token: <VSub_Name words> bracket_op: (ArrayIndex expr:(ArithWord w:{(Lit_Digits 0)})) spids: [659 664] ) } spids: [658] ) ] spids: [651] ) (Assignment keyword: Assign_Local flags: ["'-a'"] pairs: [(assign_pair lhs:(LhsName name:queryresults) op:Equal spids:[671])] spids: [667] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:querycmd) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (SimpleCommand words: [{($ VSub_Name "$muttcmd")} {(-Q)} {(query_command)}] redirects: [ (Redir op_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [685] ) ] ) (C {(sed)} {(-e)} {(SQ <"s|^query_command=\\\"\\(.*\\)\\\"$|\\1|">)} {(-e)} {(SQ <"s|%s|">) ($ VSub_Name "$cur") (SQ <"|">)} ) ] negated: False ) ] ) left_token: <Left_CommandSub "$("> spids: [677 708] ) ) } spids: [675] ) ] spids: [675] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (LogicalOr left: (BoolUnary op_id:BoolUnary_z child:{(DQ ($ VSub_Name "$cur"))}) right: (BoolUnary op_id: BoolUnary_z child: {(DQ ($ VSub_Name "$querycmd"))} ) ) ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:queryresults) op: Equal rhs: {(ArrayLiteralPart)} spids: [736] ) ] spids: [736] ) ] spids: [-1 733] ) ] else_action: [ (C {(__expand_tilde_by_ref)} {(querycmd)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:queryresults) op: Equal rhs: { (ArrayLiteralPart words: [ { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {($ VSub_Name "$querycmd")}) (C {(sed)} {(-n)} {(SQ <"2,$s|^\\([^[:space:]]\\{1,\\}\\).*|\\1|p">)} ) ] negated: False ) ] ) left_token: <Left_CommandSub "$("> spids: [752 768] ) } ] ) } spids: [749] ) ] spids: [749] ) ] spids: [741 773] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:COMPREPLY) op: PlusEqual rhs: { (ArrayLiteralPart words: [ { (CommandSubPart command_list: (CommandList children: [ (C {(compgen)} {(-W)} { (DQ (BracedVarSub token: <VSub_Name queryresults> bracket_op: (WholeArray op_id:Arith_Star) spids: [787 792] ) ) } {(--)} {(DQ ($ VSub_Name "$cur"))} ) ] ) left_token: <Left_CommandSub "$("> spids: [780 801] ) } ] ) } spids: [777] ) ] spids: [777] ) (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)}) ] spids: [648] ) spids: [644 647] ) (FuncDef name: _muttfiledir body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:cur) op: Equal rhs: {($ VSub_Number "$1")} spids: [827] ) (assign_pair lhs:(LhsName name:folder) op:Equal spids:[830]) (assign_pair lhs:(LhsName name:muttrc) op:Equal spids:[832]) (assign_pair lhs:(LhsName name:spoolfile) op:Equal spids:[834]) (assign_pair lhs: (LhsName name:muttcmd) op: Equal rhs: { (BracedVarSub token: <VSub_Name words> bracket_op: (ArrayIndex expr:(ArithWord w:{(Lit_Digits 0)})) spids: [837 842] ) } spids: [836] ) ] spids: [825] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:muttrc) op: Equal rhs: { (CommandSubPart command_list: (CommandList children:[(C {(_muttrc)})]) left_token: <Left_CommandSub "$("> spids: [847 849] ) } spids: [846] ) ] spids: [846] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {($ VSub_Name "$cur")} right: {(Lit_Other "[") (BoolBinary_GlobEqual "=") (Lit_Other "+") (Lit_Other "]") (Lit_Other "*") } ) ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:folder) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (SimpleCommand words: [ {($ VSub_Name "$muttcmd")} {(-F)} {(DQ ($ VSub_Name "$muttrc"))} {(-Q)} {(folder)} ] redirects: [ (Redir op_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [888] ) ] ) (C {(sed)} {(-e)} {(SQ <"s|^folder=\\\"\\(.*\\)\\\"$|\\1|">)}) ] negated: False ) ] ) left_token: <Left_CommandSub "$("> spids: [874 901] ) ) } spids: [872] ) ] spids: [872] ) (C {(Lit_Other ":")} {(folder) (Lit_Other ":") (Lit_Other "=") (Lit_Tilde "~") (/Mail)} ) (C {(compopt)} {(-o)} {(filenames)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:COMPREPLY) op: Equal rhs: { (ArrayLiteralPart words: [ { (CommandSubPart command_list: (CommandList children: [ (C {(compgen)} {(-f)} {(--)} { (DQ ($ VSub_Name "$folder") (/) (BracedVarSub token: <VSub_Name cur> suffix_op: (Slice begin: (ArithWord w:{(Lit_Digits 1)}) ) spids: [944 948] ) ) } ) ] ) left_token: <Left_CommandSub "$("> spids: [933 951] ) } ] ) } spids: [930] ) ] spids: [930] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:COMPREPLY) op: Equal rhs: { (ArrayLiteralPart words: [ { (BracedVarSub token: <VSub_Name COMPREPLY> bracket_op: (WholeArray op_id:Lit_At) suffix_op: (StringUnary op_id: VOp1_Pound arg_word: {($ VSub_Name "$folder") (Lit_Slash /)} ) spids: [959 967] ) } ] ) } spids: [956] ) ] spids: [956] ) (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)}) ] spids: [-1 869] ) (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobDEqual left: {($ VSub_Name "$cur")} right: {(KW_Bang "!") (Lit_Other "*")} ) ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:spoolfile) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (SimpleCommand words: [ {($ VSub_Name "$muttcmd")} {(-F)} {(DQ ($ VSub_Name "$muttrc"))} {(-Q)} {(spoolfile)} ] redirects: [ (Redir op_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [1010] ) ] ) (C {(sed)} {(-e)} {(SQ <"s|^spoolfile=\\\"\\(.*\\)\\\"$|\\1|">)} ) ] negated: False ) ] ) left_token: <Left_CommandSub "$("> spids: [996 1025] ) ) } spids: [994] ) ] spids: [994] ) (AndOr children: [ (DBracket expr: (LogicalNot child: (BoolUnary op_id:BoolUnary_z child:{($ VSub_Name "$spoolfile")}) ) ) (C {(eval)} {(Lit_VarLike "cur=") (DQ (BracedVarSub token: <VSub_Name cur> suffix_op: (PatSub pat: {("^!")} replace: {($ VSub_Name "$spoolfile")} do_all: False do_prefix: False do_suffix: False ) spids: [1045 1051] ) ) } ) ] op_id: Op_DAmp ) ] spids: [977 991] ) ] spids: [-1 1055] ) (C {(_filedir)}) (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)}) ] spids: [822] ) spids: [818 821] ) (AndOr children: [ (FuncDef name: _mutt body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs:(LhsName name:cur) op:Equal spids:[1079]) (assign_pair lhs:(LhsName name:prev) op:Equal spids:[1081]) (assign_pair lhs:(LhsName name:words) op:Equal spids:[1083]) (assign_pair lhs:(LhsName name:cword) op:Equal spids:[1085]) ] spids: [1077] ) (AndOr children: [ (C {(_init_completion)} {(-n)} {(Lit_Other "=") (Lit_Other "+") (KW_Bang "!")}) (ControlFlow token:<ControlFlow_Return return>) ] op_id: Op_DPipe ) (Case to_match: {($ VSub_Name "$cur")} arms: [ (case_arm pat_list: [{(-) (Lit_Other "*")}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:COMPREPLY) op: Equal rhs: { (ArrayLiteralPart words: [ { (CommandSubPart command_list: (CommandList children: [ (C {(compgen)} {(-W)} { (SQ < "-A -a -b -c -e -f -F -H -i -m -n -p -Q -R -s\n" > <" -v -x -y -z -Z -h"> ) } {(--)} {(DQ ($ VSub_Name "$cur"))} ) ] ) left_token: <Left_CommandSub "$("> spids: [1117 1134] ) } ] ) } spids: [1114] ) ] spids: [1114] ) (ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [1109 1111 1144 -1] ) (case_arm pat_list: [{(Lit_Other "*")}] action: [ (Case to_match: {($ VSub_Name "$prev")} arms: [ (case_arm pat_list: [{(-a)} {(-f)} {(-F)} {(-H)} {(-i)}] action: [ (C {(_muttfiledir)} {(DQ ($ VSub_Name "$cur"))}) (ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [1158 1167 1182 -1] ) (case_arm pat_list: [{(-A)}] action: [ (C {(_muttaliases)} {(DQ ($ VSub_Name "$cur"))}) (ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [1185 1186 1201 -1] ) (case_arm pat_list: [ {(-e)} {(-m)} {(-Q)} {(-s)} {(-h)} {(-p)} {(-R)} {(-v)} {(-y)} {(-z)} {(-Z)} ] action: [(ControlFlow token:<ControlFlow_Return return> arg_word:{(0)})] spids: [1204 1225 1233 -1] ) (case_arm pat_list: [{(Lit_Other "*")}] action: [ (C {(_muttaddr)} {(DQ ($ VSub_Name "$cur"))}) (ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [1236 1237 1252 -1] ) ] spids: [1151 1155 1255] ) ] spids: [1147 1148 1258 -1] ) ] spids: [1102 1106 1261] ) ] spids: [1074] ) spids: [1070 1073] ) (C {(complete)} {(-F)} {(_mutt)} {(-o)} {(default)} {(mutt)} {(muttng)}) ] op_id: Op_DAmp ) ] )