(CommandList children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:__git_printf_supports_v) op: Equal rhs: {(EmptyPart)} spids: [289] ) ] spids: [289] ) (SimpleCommand words: [{(printf)} {(-v)} {(__git_printf_supports_v)} {(--)} {(SQ <'%s'>)} {(yes)}] redirects: [ (Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(/dev/null)}) (Redir op:<Redir_GreatAnd '2>&'> fd:2 arg_word:{(1)}) ] ) (FuncDef name: __git_ps1_show_upstream body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs:(LhsName name:key) op:Equal spids:[328]) (assign_pair lhs:(LhsName name:value) op:Equal spids:[330]) ] spids: [326] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs:(LhsName name:svn_remote) op:Equal spids:[335]) (assign_pair lhs:(LhsName name:svn_url_pattern) op:Equal spids:[337]) (assign_pair lhs:(LhsName name:count) op:Equal spids:[339]) (assign_pair lhs:(LhsName name:n) op:Equal spids:[341]) ] spids: [333] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:upstream) op: Equal rhs: {(git)} spids: [346] ) (assign_pair lhs: (LhsName name:legacy) op: Equal rhs: {(DQ )} spids: [349] ) (assign_pair lhs: (LhsName name:verbose) op: Equal rhs: {(DQ )} spids: [353] ) (assign_pair lhs: (LhsName name:name) op: Equal rhs: {(DQ )} spids: [357] ) ] spids: [344] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:svn_remote) op: Equal rhs: {(ArrayLiteralPart)} spids: [363] ) ] spids: [363] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:output) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (SimpleCommand words: [ {(git)} {(config)} {(-z)} {(--get-regexp)} {(SQ <'^(svn-remote\\..*\\.url|bash\\.showupstream)$'>)} ] redirects: [ (Redir op: <Redir_Great '2>'> fd: 2 arg_word: {(/dev/null)} ) ] ) (C {(tr)} {(SQ <'\\0\\n'>)} {(SQ <'\\n '>)}) ] negated: F ) ] ) left_token: <Left_CommandSub '$('> spids: [376 403] ) ) } spids: [374] ) ] spids: [372] ) (WhileUntil keyword: <KW_While while> cond: [(Sentence child:(C {(read)} {(-r)} {(key)} {(value)}) terminator:<Op_Semi ';'>)] body: (DoGroup children: [ (Case to_match: {(DQ ($ VSub_Name '$key'))} arms: [ (case_arm pat_list: [{(bash.showupstream)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:GIT_PS1_SHOWUPSTREAM) op: Equal rhs: {(DQ ($ VSub_Name '$value'))} spids: [434] ) ] spids: [434] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id: BoolUnary_z child: {(DQ (${ VSub_Name GIT_PS1_SHOWUPSTREAM))} ) ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:p) op: Equal rhs: {(DQ )} spids: [458] ) ] spids: [458] ) (ControlFlow token: <ControlFlow_Return return> ) ] spids: [16777215 455] ) ] spids: [16777215 466] ) ] spids: [430 431 469 16777215] ) (case_arm pat_list: [{(svn-remote.) (Lit_Other '*') (.url)}] action: [ (C {(svn_remote) (Lit_Other '[') (ArithSubPart anode: (ArithBinary op_id: Arith_Plus left: (ArithWord w: { (BracedVarSub token: <VSub_Name svn_remote> prefix_op: VSub_Pound bracket_op: (WholeArray op_id:Lit_At) spids: [481 487] ) } ) right: (ArithWord w:{(Lit_Digits 1)}) ) spids: [480 493] ) (Lit_Other ']') (Lit_Other '=') (DQ ($ VSub_Name '$value')) } ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:svn_url_pattern) op: Equal rhs: { (DQ ($ VSub_Name '$svn_url_pattern') (EscapedLiteralPart token: <Lit_EscapedChar '\\\\'> ) ('|') ($ VSub_Name '$value') ) } spids: [501] ) ] spids: [501] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:upstream) op: Equal rhs: {(svn) (Lit_Other '+') (git)} spids: [510] ) ] spids: [510] ) ] spids: [472 475 519 16777215] ) ] spids: [421 427 522] ) ] spids: [418 525] ) redirects: [ (Redir op: <Redir_TLess '<<<'> fd: 16777215 arg_word: {(DQ ($ VSub_Name '$output'))} ) ] ) (ForEach iter_name: option iter_words: [{(${ VSub_Name GIT_PS1_SHOWUPSTREAM)}] do_arg_iter: F body: (DoGroup children: [ (Case to_match: {(DQ ($ VSub_Name '$option'))} arms: [ (case_arm pat_list: [{(git)} {(svn)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:upstream) op: Equal rhs: {(DQ ($ VSub_Name '$option'))} spids: [567] ) ] spids: [567] ) ] spids: [562 565 572 16777215] ) (case_arm pat_list: [{(verbose)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:verbose) op: Equal rhs: {(1)} spids: [578] ) ] spids: [578] ) ] spids: [575 576 581 16777215] ) (case_arm pat_list: [{(legacy)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:legacy) op: Equal rhs: {(1)} spids: [587] ) ] spids: [587] ) ] spids: [584 585 590 16777215] ) (case_arm pat_list: [{(name)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:name) op: Equal rhs: {(1)} spids: [596] ) ] spids: [596] ) ] spids: [593 594 599 16777215] ) ] spids: [553 559 602] ) ] spids: [550 605] ) spids: [544 548] ) (Case to_match: {(DQ ($ VSub_Name '$upstream'))} arms: [ (case_arm pat_list: [{(git)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:upstream) op: Equal rhs: {(DQ ('@{upstream}'))} spids: [625] ) ] spids: [625] ) ] spids: [622 623 630 16777215] ) (case_arm pat_list: [{(svn) (Lit_Other '*')}] action: [ (Assignment keyword: Assign_Local flags: [-a] pairs: [(assign_pair lhs:(LhsName name:svn_upstream) op:Equal spids:[650])] spids: [646] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:svn_upstream) op: Equal rhs: { (ArrayLiteralPart words: [ { (CommandSubPart command_list: (CommandList children: [ (SimpleCommand words: [ {(git)} {(log)} {(--first-parent)} {(-1)} {(--grep) (Lit_Other '=') (DQ ('^git-svn-id: ') (Lit_Other '\\') ('(') (BracedVarSub token: <VSub_Name svn_url_pattern> suffix_op: (StringUnary op_id: VOp1_Pound arg_word: {('??')} ) spids: [672 676] ) (Lit_Other '\\') (')') ) } ] redirects: [ (Redir op: <Redir_Great '2>'> fd: 2 arg_word: {(/dev/null)} ) ] ) ] ) left_token: <Left_CommandSub '$('> spids: [655 683] ) } ] ) } spids: [653] ) ] spids: [653] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_ne left: {(0)} right: { (BracedVarSub token: <VSub_Name svn_upstream> prefix_op: VSub_Pound bracket_op: (WholeArray op_id:Lit_At) spids: [695 701] ) } ) ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:svn_upstream) op: Equal rhs: { (BracedVarSub token: <VSub_Name svn_upstream> bracket_op: (ArrayIndex expr: (ArithBinary op_id: Arith_Minus left: (ArithWord w: { (BracedVarSub token: <VSub_Name svn_upstream> prefix_op: VSub_Pound bracket_op: (WholeArray op_id:Lit_At) spids: [713 719] ) } ) right: (ArithWord w:{(Lit_Digits 2)}) ) ) spids: [710 725] ) } spids: [709] ) ] spids: [709] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:svn_upstream) op: Equal rhs: { (BracedVarSub token: <VSub_Name svn_upstream> suffix_op: (StringUnary op_id:VOp1_Percent arg_word:{('@*')}) spids: [729 733] ) } spids: [728] ) ] spids: [728] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:n_stop) op: Equal rhs: { (DQ (BracedVarSub token: <VSub_Name svn_remote> prefix_op: VSub_Pound bracket_op: (WholeArray op_id:Lit_At) spids: [740 746] ) ) } spids: [738] ) ] spids: [736] ) (ForExpr init: (BinaryAssign op_id: Arith_Equal left: (LhsName name:n) right: (ArithWord w:{(Lit_Digits 1)}) ) cond: (ArithBinary op_id: Arith_LessEqual left: (ArithVarRef name:n) right: (ArithVarRef name:n_stop) ) update: (UnaryAssign op_id:Node_PostDPlus child:(LhsName name:n)) body: (DoGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:svn_upstream) op: Equal rhs: { (BracedVarSub token: <VSub_Name svn_upstream> suffix_op: (StringUnary op_id: VOp1_Pound arg_word: { (BracedVarSub token: <VSub_Name svn_remote> bracket_op: (ArrayIndex expr: (ArithWord w:{($ VSub_Name '$n')}) ) spids: [778 783] ) } ) spids: [775 784] ) } spids: [774] ) ] spids: [774] ) ] spids: [771 787] ) ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id: BoolUnary_z child: {(DQ ($ VSub_Name '$svn_upstream'))} ) ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:upstream) op: Equal rhs: { (BracedVarSub token: <VSub_Name GIT_SVN_ID> suffix_op: (StringUnary op_id: VTest_ColonHyphen arg_word: {(git-svn)} ) spids: [812 816] ) } spids: [811] ) ] spids: [811] ) ] spids: [16777215 804] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:upstream) op: Equal rhs: { (BracedVarSub token: <VSub_Name svn_upstream> suffix_op: (StringUnary op_id: VOp1_Pound arg_word: {(Lit_Slash /)} ) spids: [823 827] ) } spids: [822] ) ] spids: [822] ) ] spids: [819 830] ) ] spids: [16777215 706] ) (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobEqual left: {(DQ ('svn+git'))} right: {(DQ ($ VSub_Name '$upstream'))} ) ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:upstream) op: Equal rhs: {(DQ ('@{upstream}'))} spids: [853] ) ] spids: [853] ) ] spids: [833 850] ) ] spids: [16777215 859] ) ] spids: [633 635 862 16777215] ) ] spids: [613 619 865] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id:BoolUnary_z child:{(DQ ($ VSub_Name '$legacy'))}) ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:count) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [ (SimpleCommand words: [ {(git)} {(rev-list)} {(--count)} {(--left-right)} {(DQ ($ VSub_Name '$upstream')) (...HEAD)} ] redirects: [ (Redir op: <Redir_Great '2>'> fd: 2 arg_word: {(/dev/null)} ) ] ) ] ) left_token: <Left_CommandSub '$('> spids: [891 909] ) ) } spids: [889] ) ] spids: [889] ) ] spids: [16777215 886] ) ] else_action: [ (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:commits) op:Equal spids:[922])] spids: [920] ) (If arms: [ (if_arm cond: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:commits) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [ (SimpleCommand words: [ {(git)} {(rev-list)} {(--left-right)} {(DQ ($ VSub_Name '$upstream')) (...HEAD)} ] redirects: [ (Redir op: <Redir_Great '2>'> fd: 2 arg_word: {(/dev/null)} ) ] ) ] ) left_token: <Left_CommandSub '$('> spids: [929 943] ) ) } spids: [927] ) ] spids: [927] ) ] action: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:commit) op: Equal spids: [952] ) (assign_pair lhs: (LhsName name:behind) op: Equal rhs: {(0)} spids: [954] ) (assign_pair lhs: (LhsName name:ahead) op: Equal rhs: {(0)} spids: [957] ) ] spids: [950] ) (ForEach iter_name: commit iter_words: [{($ VSub_Name '$commits')}] do_arg_iter: F body: (DoGroup children: [ (Case to_match: {(DQ ($ VSub_Name '$commit'))} arms: [ (case_arm pat_list: [{(DQ ('<')) (Lit_Other '*')}] action: [ (DParen child: (UnaryAssign op_id: Node_PostDPlus child: (LhsName name:behind) ) spids: [988 992] ) ] spids: [982 986 994 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (DParen child: (UnaryAssign op_id: Node_PostDPlus child: (LhsName name:ahead) ) spids: [1000 1004] ) ] spids: [997 998 1006 16777215] ) ] spids: [973 979 1009] ) ] spids: [970 1012] ) spids: [966 16777215] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:count) op: Equal rhs: {(DQ ($ VSub_Name '$behind') ('\t') ($ VSub_Name '$ahead'))} spids: [1015] ) ] spids: [1015] ) ] spids: [16777215 947] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:count) op: Equal rhs: {(DQ )} spids: [1026] ) ] spids: [1026] ) ] spids: [1023 1031] ) ] spids: [913 1034] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id:BoolUnary_z child:{(DQ ($ VSub_Name '$verbose'))}) ) terminator: <Op_Semi ';'> ) ] action: [ (Case to_match: {(DQ ($ VSub_Name '$count'))} arms: [ (case_arm pat_list: [{(DQ )}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:p) op: Equal rhs: {(DQ )} spids: [1075] ) ] spids: [1075] ) ] spids: [1067 1069 1079 16777215] ) (case_arm pat_list: [{(DQ ('0\t0'))}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:p) op: Equal rhs: {(DQ ('='))} spids: [1091] ) ] spids: [1091] ) ] spids: [1082 1085 1096 16777215] ) (case_arm pat_list: [{(DQ ('0\t')) (Lit_Other '*')}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:p) op: Equal rhs: {(DQ ('>'))} spids: [1109] ) ] spids: [1109] ) ] spids: [1099 1103 1114 16777215] ) (case_arm pat_list: [{(Lit_Other '*') (DQ ('\t0'))}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:p) op: Equal rhs: {(DQ ('<'))} spids: [1127] ) ] spids: [1127] ) ] spids: [1117 1121 1132 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:p) op: Equal rhs: {(DQ ('<>'))} spids: [1142] ) ] spids: [1142] ) ] spids: [1135 1136 1147 16777215] ) ] spids: [1058 1064 1150] ) ] spids: [16777215 1055] ) ] else_action: [ (Case to_match: {(DQ ($ VSub_Name '$count'))} arms: [ (case_arm pat_list: [{(DQ )}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:p) op: Equal rhs: {(DQ )} spids: [1173] ) ] spids: [1173] ) ] spids: [1165 1167 1177 16777215] ) (case_arm pat_list: [{(DQ ('0\t0'))}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:p) op: Equal rhs: {(DQ (' u='))} spids: [1189] ) ] spids: [1189] ) ] spids: [1180 1183 1194 16777215] ) (case_arm pat_list: [{(DQ ('0\t')) (Lit_Other '*')}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:p) op: Equal rhs: { (DQ (' u+') (BracedVarSub token: <VSub_Name count> suffix_op: (StringUnary op_id:VOp1_Pound arg_word:{('0\t')}) spids: [1210 1214] ) ) } spids: [1207] ) ] spids: [1207] ) ] spids: [1197 1201 1217 16777215] ) (case_arm pat_list: [{(Lit_Other '*') (DQ ('\t0'))}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:p) op: Equal rhs: { (DQ (' u-') (BracedVarSub token: <VSub_Name count> suffix_op: (StringUnary op_id:VOp1_Percent arg_word:{('\t0')}) spids: [1233 1237] ) ) } spids: [1230] ) ] spids: [1230] ) ] spids: [1220 1224 1240 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:p) op: Equal rhs: { (DQ (' u+') (BracedVarSub token: <VSub_Name count> suffix_op: (StringUnary op_id:VOp1_Pound arg_word:{('*\t')}) spids: [1253 1257] ) (-) (BracedVarSub token: <VSub_Name count> suffix_op: (StringUnary op_id:VOp1_Percent arg_word:{('\t*')}) spids: [1259 1263] ) ) } spids: [1250] ) ] spids: [1250] ) ] spids: [1243 1244 1266 16777215] ) ] spids: [1156 1162 1269] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (LogicalAnd left: (BoolUnary op_id: BoolUnary_n child: {(DQ ($ VSub_Name '$count'))} ) right: (BoolUnary op_id: BoolUnary_n child: {(DQ ($ VSub_Name '$name'))} ) ) ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:__git_ps1_upstream_name) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (SimpleCommand words: [ {(git)} {(rev-parse)} {(--abbrev-ref)} {(DQ ($ VSub_Name '$upstream'))} ] redirects: [ (Redir op: <Redir_Great '2>'> fd: 2 arg_word: {(/dev/null)} ) ] ) ] ) left_token: <Left_CommandSub '$('> spids: [1297 1312] ) } spids: [1296] ) ] spids: [1296] ) (If arms: [ (if_arm cond: [ (Sentence child: (AndOr ops: [Op_DAmp] children: [ (C {(Lit_Other '[')} {($ VSub_Name '$pcmode')} {(Lit_Other '=')} {(yes)} {(Lit_Other ']')} ) (C {(Lit_Other '[')} {($ VSub_Name '$ps1_expanded')} {(Lit_Other '=')} {(yes)} {(Lit_Other ']')} ) ] ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:p) op: Equal rhs: { (DQ ($ VSub_Name '$p') (' ') (EscapedLiteralPart token: <Lit_EscapedChar '\\$'> ) ('{__git_ps1_upstream_name}') ) } spids: [1343] ) ] spids: [1343] ) ] spids: [16777215 1340] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:p) op: Equal rhs: { (DQ ($ VSub_Name '$p') (' ') (${ VSub_Name __git_ps1_upstream_name) ) } spids: [1355] ) ] spids: [1355] ) (C {(unset)} {(__git_ps1_upstream_name)}) ] spids: [1352 1378] ) ] spids: [16777215 1293] ) ] spids: [16777215 1381] ) ] spids: [1153 1384] ) ] spids: [323] ) spids: [318 322] ) (FuncDef name: __git_ps1_colorize_gitstring body: (BraceGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id: BoolUnary_n child: { (BracedVarSub token: <VSub_Name ZSH_VERSION> suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{}) spids: [1413 1416] ) } ) ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:c_red) op: Equal rhs: {(SQ <'%F{red}'>)} spids: [1426] ) ] spids: [1424] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:c_green) op: Equal rhs: {(SQ <'%F{green}'>)} spids: [1434] ) ] spids: [1432] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:c_lblue) op: Equal rhs: {(SQ <'%F{blue}'>)} spids: [1442] ) ] spids: [1440] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:c_clear) op: Equal rhs: {(SQ <'%f'>)} spids: [1450] ) ] spids: [1448] ) ] spids: [16777215 1421] ) ] else_action: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:c_red) op: Equal rhs: {(SQ <'\\[\\e[31m\\]'>)} spids: [1469] ) ] spids: [1467] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:c_green) op: Equal rhs: {(SQ <'\\[\\e[32m\\]'>)} spids: [1477] ) ] spids: [1475] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:c_lblue) op: Equal rhs: {(SQ <'\\[\\e[1;34m\\]'>)} spids: [1485] ) ] spids: [1483] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:c_clear) op: Equal rhs: {(SQ <'\\[\\e[0m\\]'>)} spids: [1493] ) ] spids: [1491] ) ] spids: [1456 1499] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:bad_color) op: Equal rhs: {($ VSub_Name '$c_red')} spids: [1504] ) ] spids: [1502] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:ok_color) op: Equal rhs: {($ VSub_Name '$c_green')} spids: [1510] ) ] spids: [1508] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:flags_color) op: Equal rhs: {(DQ ($ VSub_Name '$c_lblue'))} spids: [1516] ) ] spids: [1514] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:branch_color) op:Equal rhs:{(DQ )} spids:[1525])] spids: [1523] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {($ VSub_Name '$detached')} {(Lit_Other '=')} {(no)} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:branch_color) op: Equal rhs: {(DQ ($ VSub_Name '$ok_color'))} spids: [1546] ) ] spids: [1546] ) ] spids: [16777215 1543] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:branch_color) op: Equal rhs: {(DQ ($ VSub_Name '$bad_color'))} spids: [1555] ) ] spids: [1555] ) ] spids: [1552 1561] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:c) op: Equal rhs: {(DQ ($ VSub_Name '$branch_color') ($ VSub_Name '$c'))} spids: [1564] ) ] spids: [1564] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:z) op: Equal rhs: {(DQ ($ VSub_Name '$c_clear') ($ VSub_Name '$z'))} spids: [1572] ) ] spids: [1572] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$w'))} {(Lit_Other '=')} {(DQ ('*'))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:w) op: Equal rhs: {(DQ ($ VSub_Name '$bad_color') ($ VSub_Name '$w'))} spids: [1599] ) ] spids: [1599] ) ] spids: [16777215 1596] ) ] spids: [16777215 1606] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-n)} {(DQ ($ VSub_Name '$i'))} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:i) op: Equal rhs: {(DQ ($ VSub_Name '$ok_color') ($ VSub_Name '$i'))} spids: [1625] ) ] spids: [1625] ) ] spids: [16777215 1622] ) ] spids: [16777215 1632] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-n)} {(DQ ($ VSub_Name '$s'))} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:s) op: Equal rhs: {(DQ ($ VSub_Name '$flags_color') ($ VSub_Name '$s'))} spids: [1651] ) ] spids: [1651] ) ] spids: [16777215 1648] ) ] spids: [16777215 1658] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-n)} {(DQ ($ VSub_Name '$u'))} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:u) op: Equal rhs: {(DQ ($ VSub_Name '$bad_color') ($ VSub_Name '$u'))} spids: [1677] ) ] spids: [1677] ) ] spids: [16777215 1674] ) ] spids: [16777215 1684] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:r) op: Equal rhs: {(DQ ($ VSub_Name '$c_clear') ($ VSub_Name '$r'))} spids: [1687] ) ] spids: [1687] ) ] spids: [1404] ) spids: [1399 1403] ) (FuncDef name: __git_eread body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:f) op: Equal rhs: {(DQ ($ VSub_Number '$1'))} spids: [1706] ) ] spids: [1704] ) (C {(shift)}) (AndOr ops: [Op_DAmp] children: [ (C {(test)} {(-r)} {(DQ ($ VSub_Name '$f'))}) (SimpleCommand words: [{(read)} {(DQ ($ VSub_At '$@'))}] redirects: [(Redir op:<Redir_Less '<'> fd:16777215 arg_word:{(DQ ($ VSub_Name '$f'))})] ) ] ) ] spids: [1701] ) spids: [1696 1700] ) (FuncDef name: __git_ps1 body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:exit) op: Equal rhs: {($ VSub_QMark '$?')} spids: [1786] ) ] spids: [1784] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:pcmode) op:Equal rhs:{(no)} spids:[1792])] spids: [1790] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:detached) op:Equal rhs:{(no)} spids:[1798])] spids: [1796] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:ps1pc_start) op: Equal rhs: {(SQ <'\\u@\\h:\\w '>)} spids: [1804] ) ] spids: [1802] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:ps1pc_end) op: Equal rhs: {(SQ <'\\$ '>)} spids: [1812] ) ] spids: [1810] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:printf_format) op: Equal rhs: {(SQ <' (%s)'>)} spids: [1820] ) ] spids: [1818] ) (Case to_match: {(DQ ($ VSub_Pound '$#'))} arms: [ (case_arm pat_list: [{(2)} {(3)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pcmode) op: Equal rhs: {(yes)} spids: [1841] ) ] spids: [1841] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ps1pc_start) op: Equal rhs: {(DQ ($ VSub_Number '$1'))} spids: [1845] ) ] spids: [1845] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ps1pc_end) op: Equal rhs: {(DQ ($ VSub_Number '$2'))} spids: [1851] ) ] spids: [1851] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:printf_format) op: Equal rhs: { (DQ (BracedVarSub token: <VSub_Number 3> suffix_op: (StringUnary op_id: VTest_ColonHyphen arg_word: {($ VSub_Name '$printf_format')} ) spids: [1859 1863] ) ) } spids: [1857] ) ] spids: [1857] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:PS1) op: Equal rhs: {(DQ ($ VSub_Name '$ps1pc_start') ($ VSub_Name '$ps1pc_end'))} spids: [1879] ) ] spids: [1879] ) ] spids: [1836 1839 1886 16777215] ) (case_arm pat_list: [{(0)} {(1)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:printf_format) op: Equal rhs: { (DQ (BracedVarSub token: <VSub_Number 1> suffix_op: (StringUnary op_id: VTest_ColonHyphen arg_word: {($ VSub_Name '$printf_format')} ) spids: [1896 1900] ) ) } spids: [1894] ) ] spids: [1894] ) ] spids: [1889 1892 1904 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (ControlFlow token: <ControlFlow_Return return> arg_word: {($ VSub_Name '$exit')} ) ] spids: [1907 1908 1915 16777215] ) ] spids: [1827 1833 1918] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:ps1_expanded) op:Equal rhs:{(yes)} spids:[2056])] spids: [2054] ) (AndOr ops: [Op_DPipe Op_DPipe] children: [ (C {(Lit_Other '[')} {(-z)} { (DQ (BracedVarSub token: <VSub_Name ZSH_VERSION> suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(EmptyPart)}) spids: [2065 2068] ) ) } {(Lit_Other ']')} ) (DBracket expr:(BoolUnary op_id:BoolUnary_o child:{(PROMPT_SUBST)})) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ps1_expanded) op: Equal rhs: {(no)} spids: [2085] ) ] spids: [2085] ) ] ) (AndOr ops: [Op_DPipe Op_DPipe] children: [ (C {(Lit_Other '[')} {(-z)} { (DQ (BracedVarSub token: <VSub_Name BASH_VERSION> suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(EmptyPart)}) spids: [2094 2097] ) ) } {(Lit_Other ']')} ) (C {(shopt)} {(-q)} {(promptvars)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ps1_expanded) op: Equal rhs: {(no)} spids: [2112] ) ] spids: [2112] ) ] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs:(LhsName name:repo_info) op:Equal spids:[2119]) (assign_pair lhs: (LhsName name:rev_parse_exit_code) op: Equal spids: [2121] ) ] spids: [2117] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:repo_info) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [ (SimpleCommand words: [ {(git)} {(rev-parse)} {(--git-dir)} {(--is-inside-git-dir)} {(--is-bare-repository)} {(--is-inside-work-tree)} {(--short)} {(HEAD)} ] redirects: [(Redir op:<Redir_Great '2>'> fd:2 arg_word:{(/dev/null)})] ) ] ) left_token: <Left_CommandSub '$('> spids: [2126 2149] ) ) } spids: [2124] ) ] spids: [2124] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:rev_parse_exit_code) op: Equal rhs: {(DQ ($ VSub_QMark '$?'))} spids: [2153] ) ] spids: [2153] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-z)} {(DQ ($ VSub_Name '$repo_info'))} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (ControlFlow token: <ControlFlow_Return return> arg_word: {($ VSub_Name '$exit')} ) ] spids: [16777215 2173] ) ] spids: [16777215 2181] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:short_sha) op:Equal rhs:{(DQ )} spids:[2187])] spids: [2185] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$rev_parse_exit_code'))} {(Lit_Other '=')} {(DQ (0))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:short_sha) op: Equal rhs: { (DQ (BracedVarSub token: <VSub_Name repo_info> suffix_op: (StringUnary op_id: VOp1_DPound arg_word: {('*') (Lit_Other '$') ("'") (EscapedLiteralPart token: <Lit_EscapedChar '\\n'> ) ("'") } ) spids: [2214 2222] ) ) } spids: [2212] ) ] spids: [2212] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:repo_info) op: Equal rhs: { (DQ (BracedVarSub token: <VSub_Name repo_info> suffix_op: (StringUnary op_id: VOp1_Percent arg_word: {(Lit_Other '$') ("'") (EscapedLiteralPart token: <Lit_EscapedChar '\\n'> ) ("'*") } ) spids: [2228 2235] ) ) } spids: [2226] ) ] spids: [2226] ) ] spids: [16777215 2209] ) ] spids: [16777215 2239] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:inside_worktree) op: Equal rhs: { (DQ (BracedVarSub token: <VSub_Name repo_info> suffix_op: (StringUnary op_id: VOp1_DPound arg_word: {('*') (Lit_Other '$') ("'") (EscapedLiteralPart token: <Lit_EscapedChar '\\n'> ) ("'") } ) spids: [2246 2254] ) ) } spids: [2244] ) ] spids: [2242] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:repo_info) op: Equal rhs: { (DQ (BracedVarSub token: <VSub_Name repo_info> suffix_op: (StringUnary op_id: VOp1_Percent arg_word: {(Lit_Other '$') ("'") (EscapedLiteralPart token: <Lit_EscapedChar '\\n'> ) ("'*") } ) spids: [2260 2267] ) ) } spids: [2258] ) ] spids: [2258] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:bare_repo) op: Equal rhs: { (DQ (BracedVarSub token: <VSub_Name repo_info> suffix_op: (StringUnary op_id: VOp1_DPound arg_word: {('*') (Lit_Other '$') ("'") (EscapedLiteralPart token: <Lit_EscapedChar '\\n'> ) ("'") } ) spids: [2275 2283] ) ) } spids: [2273] ) ] spids: [2271] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:repo_info) op: Equal rhs: { (DQ (BracedVarSub token: <VSub_Name repo_info> suffix_op: (StringUnary op_id: VOp1_Percent arg_word: {(Lit_Other '$') ("'") (EscapedLiteralPart token: <Lit_EscapedChar '\\n'> ) ("'*") } ) spids: [2289 2296] ) ) } spids: [2287] ) ] spids: [2287] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:inside_gitdir) op: Equal rhs: { (DQ (BracedVarSub token: <VSub_Name repo_info> suffix_op: (StringUnary op_id: VOp1_DPound arg_word: {('*') (Lit_Other '$') ("'") (EscapedLiteralPart token: <Lit_EscapedChar '\\n'> ) ("'") } ) spids: [2304 2312] ) ) } spids: [2302] ) ] spids: [2300] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:g) op: Equal rhs: { (DQ (BracedVarSub token: <VSub_Name repo_info> suffix_op: (StringUnary op_id: VOp1_Percent arg_word: {(Lit_Other '$') ("'") (EscapedLiteralPart token: <Lit_EscapedChar '\\n'> ) ("'*") } ) spids: [2320 2327] ) ) } spids: [2318] ) ] spids: [2316] ) (If arms: [ (if_arm cond: [ (AndOr ops: [Op_DAmp Op_DAmp Op_DAmp] children: [ (C {(Lit_Other '[')} {(DQ (true))} {(Lit_Other '=')} {(DQ ($ VSub_Name '$inside_worktree'))} {(Lit_Other ']')} ) (C {(Lit_Other '[')} {(-n)} { (DQ (BracedVarSub token: <VSub_Name GIT_PS1_HIDE_IF_PWD_IGNORED> suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(EmptyPart)}) spids: [2356 2359] ) ) } {(Lit_Other ']')} ) (C {(Lit_Other '[')} { (DQ (CommandSubPart command_list: (CommandList children: [ (C {(git)} {(config)} {(--bool)} {(bash.hideIfPwdIgnored)}) ] ) left_token: <Left_CommandSub '$('> spids: [2370 2378] ) ) } {(KW_Bang '!') (Lit_Other '=')} {(DQ (false))} {(Lit_Other ']')} ) (C {(git)} {(check-ignore)} {(-q)} {(.)}) ] ) ] action: [ (ControlFlow token: <ControlFlow_Return return> arg_word: {($ VSub_Name '$exit')} ) ] spids: [16777215 2402] ) ] spids: [16777215 2410] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:r) op:Equal rhs:{(DQ )} spids:[2416])] spids: [2414] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:b) op:Equal rhs:{(DQ )} spids:[2423])] spids: [2421] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:step) op:Equal rhs:{(DQ )} spids:[2430])] spids: [2428] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:total) op:Equal rhs:{(DQ )} spids:[2437])] spids: [2435] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-d)} {(DQ ($ VSub_Name '$g') (/rebase-merge))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (C {(__git_eread)} {(DQ ($ VSub_Name '$g') (/rebase-merge/head-name))} {(b)}) (C {(__git_eread)} {(DQ ($ VSub_Name '$g') (/rebase-merge/msgnum))} {(step)}) (C {(__git_eread)} {(DQ ($ VSub_Name '$g') (/rebase-merge/end))} {(total)}) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-f)} {(DQ ($ VSub_Name '$g') (/rebase-merge/interactive))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:r) op: Equal rhs: {(DQ ('|REBASE-i'))} spids: [2506] ) ] spids: [2506] ) ] spids: [16777215 2503] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:r) op: Equal rhs: {(DQ ('|REBASE-m'))} spids: [2515] ) ] spids: [2515] ) ] spids: [2512 2521] ) ] spids: [16777215 2456] ) ] else_action: [ (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-d)} {(DQ ($ VSub_Name '$g') (/rebase-apply))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (C {(__git_eread)} {(DQ ($ VSub_Name '$g') (/rebase-apply/next))} {(step)}) (C {(__git_eread)} {(DQ ($ VSub_Name '$g') (/rebase-apply/last))} {(total)}) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-f)} {(DQ ($ VSub_Name '$g') (/rebase-apply/rebasing))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (C {(__git_eread)} {(DQ ($ VSub_Name '$g') (/rebase-apply/head-name))} {(b)} ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:r) op: Equal rhs: {(DQ ('|REBASE'))} spids: [2591] ) ] spids: [2591] ) ] spids: [16777215 2578] ) (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-f)} {(DQ ($ VSub_Name '$g') (/rebase-apply/applying))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:r) op: Equal rhs: {(DQ ('|AM'))} spids: [2614] ) ] spids: [2614] ) ] spids: [2597 2611] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:r) op: Equal rhs: {(DQ ('|AM/REBASE'))} spids: [2623] ) ] spids: [2623] ) ] spids: [2620 2629] ) ] spids: [16777215 2541] ) (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-f)} {(DQ ($ VSub_Name '$g') (/MERGE_HEAD))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:r) op: Equal rhs: {(DQ ('|MERGING'))} spids: [2649] ) ] spids: [2649] ) ] spids: [2632 2646] ) (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-f)} {(DQ ($ VSub_Name '$g') (/CHERRY_PICK_HEAD))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:r) op: Equal rhs: {(DQ ('|CHERRY-PICKING'))} spids: [2672] ) ] spids: [2672] ) ] spids: [2655 2669] ) (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-f)} {(DQ ($ VSub_Name '$g') (/REVERT_HEAD))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:r) op: Equal rhs: {(DQ ('|REVERTING'))} spids: [2695] ) ] spids: [2695] ) ] spids: [2678 2692] ) (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-f)} {(DQ ($ VSub_Name '$g') (/BISECT_LOG))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:r) op: Equal rhs: {(DQ ('|BISECTING'))} spids: [2718] ) ] spids: [2718] ) ] spids: [2701 2715] ) ] spids: [16777215 2724] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-n)} {(DQ ($ VSub_Name '$b'))} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [(C {(Lit_Other ':')})] spids: [16777215 2741] ) (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-h)} {(DQ ($ VSub_Name '$g') (/HEAD))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:b) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [ (SimpleCommand words: [{(git)} {(symbolic-ref)} {(HEAD)}] redirects: [ (Redir op: <Redir_Great '2>'> fd: 2 arg_word: {(/dev/null)} ) ] ) ] ) left_token: <Left_CommandSub '$('> spids: [2770 2779] ) ) } spids: [2768] ) ] spids: [2768] ) ] spids: [2747 2761] ) ] else_action: [ (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:head) op:Equal rhs:{(DQ )} spids:[2788])] spids: [2786] ) (If arms: [ (if_arm cond: [ (Sentence child: (Pipeline children: [ (C {(__git_eread)} {(DQ ($ VSub_Name '$g') (/HEAD))} {(head)}) ] negated: T ) terminator: <Op_Semi ';'> ) ] action: [ (ControlFlow token: <ControlFlow_Return return> arg_word: {($ VSub_Name '$exit')} ) ] spids: [16777215 2807] ) ] spids: [16777215 2815] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:b) op: Equal rhs: { (DQ (BracedVarSub token: <VSub_Name head> suffix_op: (StringUnary op_id:VOp1_Pound arg_word:{('ref: ')}) spids: [2824 2828] ) ) } spids: [2822] ) ] spids: [2822] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$head'))} {(Lit_Other '=')} {(DQ ($ VSub_Name '$b'))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:detached) op: Equal rhs: {(yes)} spids: [2852] ) ] spids: [2852] ) (AndOr ops: [Op_DPipe] children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:b) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [ (Case to_match: { (DQ (BracedVarSub token: <VSub_Name GIT_PS1_DESCRIBE_STYLE> suffix_op: (StringUnary op_id: VTest_Hyphen arg_word: {(EmptyPart)} ) spids: [2864 2867] ) ) } arms: [ (case_arm pat_list: [{(contains)}] action: [ (C {(git)} {(describe)} {(--contains)} {(HEAD)} ) ] spids: [2873 2875 2886 16777215] ) (case_arm pat_list: [{(branch)}] action: [ (C {(git)} {(describe)} {(--contains)} {(--all)} {(HEAD)} ) ] spids: [2889 2891 2904 16777215] ) (case_arm pat_list: [{(describe)}] action: [(C {(git)} {(describe)} {(HEAD)})] spids: [2907 2909 2918 16777215] ) (case_arm pat_list: [{(Lit_Other '*')} {(default)}] action: [ (C {(git)} {(describe)} {(--tags)} {(--exact-match)} {(HEAD)} ) ] spids: [2921 2927 2940 16777215] ) ] redirects: [ (Redir op: <Redir_Great '2>'> fd: 2 arg_word: {(/dev/null)} ) ] spids: [2861 2870 2943] ) ] ) left_token: <Left_CommandSub '$('> spids: [2858 2947] ) ) } spids: [2856] ) ] spids: [2856] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:b) op: Equal rhs: {(DQ ($ VSub_Name '$short_sha') (...))} spids: [2954] ) ] spids: [2954] ) ] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:b) op: Equal rhs: {(DQ ('(') ($ VSub_Name '$b') (')'))} spids: [2961] ) ] spids: [2961] ) ] spids: [16777215 2849] ) ] spids: [16777215 2969] ) ] spids: [2783 2972] ) ] spids: [2524 2975] ) (If arms: [ (if_arm cond: [ (Sentence child: (AndOr ops: [Op_DAmp] children: [ (C {(Lit_Other '[')} {(-n)} {(DQ ($ VSub_Name '$step'))} {(Lit_Other ']')}) (C {(Lit_Other '[')} {(-n)} {(DQ ($ VSub_Name '$total'))} {(Lit_Other ']')}) ] ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:r) op: Equal rhs: { (DQ ($ VSub_Name '$r') (' ') ($ VSub_Name '$step') (/) ($ VSub_Name '$total') ) } spids: [3007] ) ] spids: [3007] ) ] spids: [16777215 3004] ) ] spids: [16777215 3017] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:w) op:Equal rhs:{(DQ )} spids:[3023])] spids: [3021] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:i) op:Equal rhs:{(DQ )} spids:[3030])] spids: [3028] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:s) op:Equal rhs:{(DQ )} spids:[3037])] spids: [3035] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:u) op:Equal rhs:{(DQ )} spids:[3044])] spids: [3042] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:c) op:Equal rhs:{(DQ )} spids:[3051])] spids: [3049] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:p) op:Equal rhs:{(DQ )} spids:[3058])] spids: [3056] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ (true))} {(Lit_Other '=')} {(DQ ($ VSub_Name '$inside_gitdir'))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ (true))} {(Lit_Other '=')} {(DQ ($ VSub_Name '$bare_repo'))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:c) op: Equal rhs: {(DQ ('BARE:'))} spids: [3104] ) ] spids: [3104] ) ] spids: [16777215 3101] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:b) op: Equal rhs: {(DQ ('GIT_DIR!'))} spids: [3113] ) ] spids: [3113] ) ] spids: [3110 3119] ) ] spids: [16777215 3081] ) (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ (true))} {(Lit_Other '=')} {(DQ ($ VSub_Name '$inside_worktree'))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (If arms: [ (if_arm cond: [ (AndOr ops: [Op_DAmp] children: [ (C {(Lit_Other '[')} {(-n)} { (DQ (BracedVarSub token: <VSub_Name GIT_PS1_SHOWDIRTYSTATE> suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(EmptyPart)}) spids: [3149 3152] ) ) } {(Lit_Other ']')} ) (C {(Lit_Other '[')} { (DQ (CommandSubPart command_list: (CommandList children: [ (C {(git)} {(config)} {(--bool)} {(bash.showDirtyState)}) ] ) left_token: <Left_CommandSub '$('> spids: [3163 3171] ) ) } {(KW_Bang '!') (Lit_Other '=')} {(DQ (false))} {(Lit_Other ']')} ) ] ) ] action: [ (AndOr ops: [Op_DPipe] children: [ (C {(git)} {(diff)} {(--no-ext-diff)} {(--quiet)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:w) op: Equal rhs: {(DQ ('*'))} spids: [3197] ) ] spids: [3197] ) ] ) (AndOr ops: [Op_DPipe] children: [ (C {(git)} {(diff)} {(--no-ext-diff)} {(--cached)} {(--quiet)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:i) op: Equal rhs: {(DQ ('+'))} spids: [3215] ) ] spids: [3215] ) ] ) (If arms: [ (if_arm cond: [ (Sentence child: (AndOr ops: [Op_DAmp] children: [ (C {(Lit_Other '[')} {(-z)} {(DQ ($ VSub_Name '$short_sha'))} {(Lit_Other ']')} ) (C {(Lit_Other '[')} {(-z)} {(DQ ($ VSub_Name '$i'))} {(Lit_Other ']')} ) ] ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:i) op: Equal rhs: {(DQ ('#'))} spids: [3249] ) ] spids: [3249] ) ] spids: [16777215 3246] ) ] spids: [16777215 3255] ) ] spids: [16777215 3184] ) ] spids: [16777215 3258] ) (If arms: [ (if_arm cond: [ (AndOr ops: [Op_DAmp] children: [ (C {(Lit_Other '[')} {(-n)} { (DQ (BracedVarSub token: <VSub_Name GIT_PS1_SHOWSTASHSTATE> suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(EmptyPart)}) spids: [3268 3271] ) ) } {(Lit_Other ']')} ) (SimpleCommand words: [{(git)} {(rev-parse)} {(--verify)} {(--quiet)} {(refs/stash)}] redirects: [ (Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {(/dev/null)} ) ] ) ] ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:s) op: Equal rhs: {(DQ (Lit_Other '$'))} spids: [3296] ) ] spids: [3296] ) ] spids: [16777215 3293] ) ] spids: [16777215 3302] ) (If arms: [ (if_arm cond: [ (AndOr ops: [Op_DAmp Op_DAmp] children: [ (C {(Lit_Other '[')} {(-n)} { (DQ (BracedVarSub token: <VSub_Name GIT_PS1_SHOWUNTRACKEDFILES> suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(EmptyPart)}) spids: [3313 3316] ) ) } {(Lit_Other ']')} ) (C {(Lit_Other '[')} { (DQ (CommandSubPart command_list: (CommandList children: [ (C {(git)} {(config)} {(--bool)} {(bash.showUntrackedFiles)} ) ] ) left_token: <Left_CommandSub '$('> spids: [3327 3335] ) ) } {(KW_Bang '!') (Lit_Other '=')} {(DQ (false))} {(Lit_Other ']')} ) (SimpleCommand words: [ {(git)} {(ls-files)} {(--others)} {(--exclude-standard)} {(--directory)} {(--no-empty-directory)} {(--error-unmatch)} {(--)} {(SQ <':/*'>)} ] redirects: [ (Redir op: <Redir_Great '>'> fd: 16777215 arg_word: {(/dev/null)} ) (Redir op: <Redir_Great '2>'> fd: 2 arg_word: {(/dev/null)} ) ] ) ] ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:u) op: Equal rhs: { (DQ ('%') (BracedVarSub token: <VSub_Name ZSH_VERSION> suffix_op: (StringUnary op_id: VTest_Plus arg_word: {(Lit_Percent '%')} ) spids: [3383 3387] ) ) } spids: [3380] ) ] spids: [3380] ) ] spids: [16777215 3377] ) ] spids: [16777215 3391] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-n)} { (DQ (BracedVarSub token: <VSub_Name GIT_PS1_SHOWUPSTREAM> suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(EmptyPart)}) spids: [3402 3405] ) ) } {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [(C {(__git_ps1_show_upstream)})] spids: [16777215 3411] ) ] spids: [16777215 3417] ) ] spids: [3122 3139] ) ] spids: [16777215 3420] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:z) op: Equal rhs: { (DQ (BracedVarSub token: <VSub_Name GIT_PS1_STATESEPARATOR> suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(DQ (' '))}) spids: [3428 3434] ) ) } spids: [3426] ) ] spids: [3424] ) (If arms: [ (if_arm cond: [ (Sentence child: (AndOr ops: [Op_DAmp] children: [ (C {(Lit_Other '[')} {($ VSub_Name '$pcmode')} {(Lit_Other '=')} {(yes)} {(Lit_Other ']')} ) (C {(Lit_Other '[')} {(-n)} { (DQ (BracedVarSub token: <VSub_Name GIT_PS1_SHOWCOLORHINTS> suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(EmptyPart)}) spids: [3462 3465] ) ) } {(Lit_Other ']')} ) ] ) terminator: <Op_Semi ';'> ) ] action: [(C {(__git_ps1_colorize_gitstring)})] spids: [16777215 3471] ) ] spids: [16777215 3477] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:b) op: Equal rhs: { (BracedVarSub token: <VSub_Name b> suffix_op: (StringUnary op_id: VOp1_DPound arg_word: {(refs) (Lit_Slash /) (heads) (Lit_Slash /)} ) spids: [3482 3489] ) } spids: [3481] ) ] spids: [3481] ) (If arms: [ (if_arm cond: [ (Sentence child: (AndOr ops: [Op_DAmp] children: [ (C {(Lit_Other '[')} {($ VSub_Name '$pcmode')} {(Lit_Other '=')} {(yes)} {(Lit_Other ']')} ) (C {(Lit_Other '[')} {($ VSub_Name '$ps1_expanded')} {(Lit_Other '=')} {(yes)} {(Lit_Other ']')} ) ] ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:__git_ps1_branch_name) op: Equal rhs: {($ VSub_Name '$b')} spids: [3520] ) ] spids: [3520] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:b) op: Equal rhs: { (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('{__git_ps1_branch_name}') ) } spids: [3524] ) ] spids: [3524] ) ] spids: [16777215 3517] ) ] spids: [16777215 3531] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:f) op: Equal rhs: { (DQ ($ VSub_Name '$w') ($ VSub_Name '$i') ($ VSub_Name '$s') ($ VSub_Name '$u')) } spids: [3537] ) ] spids: [3535] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:gitstring) op: Equal rhs: { (DQ ($ VSub_Name '$c') ($ VSub_Name '$b') (BracedVarSub token: <VSub_Name f> suffix_op: (StringUnary op_id: VTest_ColonPlus arg_word: {($ VSub_Name '$z') ($ VSub_Name '$f')} ) spids: [3552 3557] ) ($ VSub_Name '$r') ($ VSub_Name '$p') ) } spids: [3548] ) ] spids: [3546] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {($ VSub_Name '$pcmode')} {(Lit_Other '=')} {(yes)} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} { (DQ (BracedVarSub token: <VSub_Name __git_printf_supports_v> suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(EmptyPart)}) spids: [3585 3588] ) ) } {(KW_Bang '!') (Lit_Other '=')} {(yes)} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:gitstring) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(printf)} {(--)} {(DQ ($ VSub_Name '$printf_format'))} {(DQ ($ VSub_Name '$gitstring'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [3603 3615] ) } spids: [3602] ) ] spids: [3602] ) ] spids: [16777215 3599] ) ] else_action: [ (C {(printf)} {(-v)} {(gitstring)} {(--)} {(DQ ($ VSub_Name '$printf_format'))} {(DQ ($ VSub_Name '$gitstring'))} ) ] spids: [3618 3638] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:PS1) op: Equal rhs: { (DQ ($ VSub_Name '$ps1pc_start') ($ VSub_Name '$gitstring') ($ VSub_Name '$ps1pc_end') ) } spids: [3641] ) ] spids: [3641] ) ] spids: [16777215 3577] ) ] else_action: [ (C {(printf)} {(--)} {(DQ ($ VSub_Name '$printf_format'))} {(DQ ($ VSub_Name '$gitstring'))} ) ] spids: [3649 3665] ) (ControlFlow token: <ControlFlow_Return return> arg_word: {($ VSub_Name '$exit')} ) ] spids: [1777] ) spids: [1772 1776] ) ] )