(CommandList children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:__git_printf_supports_v) op: Equal rhs: {(SQ )} spids: [289] ) ] spids: [289] ) (SimpleCommand words: [{(printf)} {(-v)} {(__git_printf_supports_v)} {(--)} {(SQ <"%s">)} {(yes)}] redirects: [ (Redir op_id:Redir_Great fd:-1 arg_word:{(/dev/null)} spids:[305]) (Redir op_id:Redir_GreatAnd fd:2 arg_word:{(1)} spids:[308]) ] ) (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_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [389] ) ] ) (C {(tr)} {(SQ <"\\0\\n">)} {(SQ <"\\n ">)}) ] negated: False ) ] ) left_token: <Left_CommandSub "$("> spids: [376 403] ) ) } spids: [374] ) ] spids: [372] ) (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: [-1 455] ) ] spids: [-1 466] ) ] spids: [430 431 469 -1] ) (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 -1] ) ] spids: [421 427 522] ) ] spids: [418 525] ) redirects: [ (Redir op_id: Redir_TLess fd: -1 arg_word: {(DQ ($ VSub_Name "$output"))} spids: [527] ) ] ) (ForEach iter_name: option iter_words: [{(${ VSub_Name GIT_PS1_SHOWUPSTREAM)}] do_arg_iter: False 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 -1] ) (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 -1] ) (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 -1] ) (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 -1] ) ] 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 -1] ) (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: ") (EscapedLiteralPart token: <Lit_EscapedChar "\\("> ) (BracedVarSub token: <VSub_Name svn_url_pattern> suffix_op: (StringUnary op_id: VOp1_Pound arg_word: {("??")} ) spids: [671 675] ) (EscapedLiteralPart token:<Lit_EscapedChar "\\)">) ) } ] redirects: [ (Redir op_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [679] ) ] ) ] ) left_token: <Left_CommandSub "$("> spids: [655 681] ) } ] ) } 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: [693 699] ) } ) ) 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: [711 717] ) } ) right: (ArithWord w:{(Lit_Digits 2)}) ) ) spids: [708 723] ) } spids: [707] ) ] spids: [707] ) (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: [727 731] ) } spids: [726] ) ] spids: [726] ) (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: [738 744] ) ) } spids: [736] ) ] spids: [734] ) (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: [776 781] ) } ) spids: [773 782] ) } spids: [772] ) ] spids: [772] ) ] spids: [769 785] ) ) (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: [810 814] ) } spids: [809] ) ] spids: [809] ) ] spids: [-1 802] ) ] 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: [821 825] ) } spids: [820] ) ] spids: [820] ) ] spids: [817 828] ) ] spids: [-1 704] ) (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: [851] ) ] spids: [851] ) ] spids: [831 848] ) ] spids: [-1 857] ) ] spids: [633 635 860 -1] ) ] spids: [613 619 863] ) (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_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [905] ) ] ) ] ) left_token: <Left_CommandSub "$("> spids: [889 907] ) ) } spids: [887] ) ] spids: [887] ) ] spids: [-1 884] ) ] else_action: [ (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:commits) op:Equal spids:[920])] spids: [918] ) (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_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [939] ) ] ) ] ) left_token: <Left_CommandSub "$("> spids: [927 941] ) ) } spids: [925] ) ] spids: [925] ) ] action: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:commit) op: Equal spids: [950] ) (assign_pair lhs: (LhsName name:behind) op: Equal rhs: {(0)} spids: [952] ) (assign_pair lhs: (LhsName name:ahead) op: Equal rhs: {(0)} spids: [955] ) ] spids: [948] ) (ForEach iter_name: commit iter_words: [{($ VSub_Name "$commits")}] do_arg_iter: False 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: [981 984 992 -1] ) (case_arm pat_list: [{(Lit_Other "*")}] action: [ (DParen child: (UnaryAssign op_id: Node_PostDPlus child: (LhsName name:ahead) ) ) ] spids: [995 996 1004 -1] ) ] spids: [971 977 1007] ) ] spids: [968 1010] ) spids: [964 -1] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:count) op: Equal rhs: {(DQ ($ VSub_Name "$behind") ("\t") ($ VSub_Name "$ahead"))} spids: [1013] ) ] spids: [1013] ) ] spids: [-1 945] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:count) op: Equal rhs: {(DQ )} spids: [1024] ) ] spids: [1024] ) ] spids: [1021 1029] ) ] spids: [911 1032] ) (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: [1073] ) ] spids: [1073] ) ] spids: [-1 1067 1077 -1] ) (case_arm pat_list: [{(DQ ("0\t0"))}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:p) op: Equal rhs: {(DQ ("="))} spids: [1089] ) ] spids: [1089] ) ] spids: [1081 1083 1094 -1] ) (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: [1107] ) ] spids: [1107] ) ] spids: [1098 1101 1112 -1] ) (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: [1125] ) ] spids: [1125] ) ] spids: [1115 1119 1130 -1] ) (case_arm pat_list: [{(Lit_Other "*")}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:p) op: Equal rhs: {(DQ ("<>"))} spids: [1140] ) ] spids: [1140] ) ] spids: [1133 1134 1145 -1] ) ] spids: [1056 1062 1148] ) ] spids: [-1 1053] ) ] 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: [1171] ) ] spids: [1171] ) ] spids: [-1 1165 1175 -1] ) (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: [1187] ) ] spids: [1187] ) ] spids: [1179 1181 1192 -1] ) (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: [1208 1212] ) ) } spids: [1205] ) ] spids: [1205] ) ] spids: [1196 1199 1215 -1] ) (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: [1231 1235] ) ) } spids: [1228] ) ] spids: [1228] ) ] spids: [1218 1222 1238 -1] ) (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: [1251 1255] ) (-) (BracedVarSub token: <VSub_Name count> suffix_op: (StringUnary op_id:VOp1_Percent arg_word:{("\t*")}) spids: [1257 1261] ) ) } spids: [1248] ) ] spids: [1248] ) ] spids: [1241 1242 1264 -1] ) ] spids: [1154 1160 1267] ) (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_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [1308] ) ] ) ] ) left_token: <Left_CommandSub "$("> spids: [1295 1310] ) } spids: [1294] ) ] spids: [1294] ) (If arms: [ (if_arm cond: [ (Sentence child: (AndOr children: [ (C {(Lit_Other "[")} {($ VSub_Name "$pcmode")} {(Lit_Other "=")} {(yes)} {(Lit_Other "]")} ) (C {(Lit_Other "[")} {($ VSub_Name "$ps1_expanded")} {(Lit_Other "=")} {(yes)} {(Lit_Other "]")} ) ] op_id: Op_DAmp ) 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: [1341] ) ] spids: [1341] ) ] spids: [-1 1338] ) ] 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: [1353] ) ] spids: [1353] ) (C {(unset)} {(__git_ps1_upstream_name)}) ] spids: [1350 1376] ) ] spids: [-1 1291] ) ] spids: [-1 1379] ) ] spids: [1151 1382] ) ] 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: [1411 1414] ) } ) ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:c_red) op: Equal rhs: {(SQ <"%F{red}">)} spids: [1424] ) ] spids: [1422] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:c_green) op: Equal rhs: {(SQ <"%F{green}">)} spids: [1432] ) ] spids: [1430] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:c_lblue) op: Equal rhs: {(SQ <"%F{blue}">)} spids: [1440] ) ] spids: [1438] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:c_clear) op: Equal rhs: {(SQ <"%f">)} spids: [1448] ) ] spids: [1446] ) ] spids: [-1 1419] ) ] else_action: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:c_red) op: Equal rhs: {(SQ <"\\[\\e[31m\\]">)} spids: [1467] ) ] spids: [1465] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:c_green) op: Equal rhs: {(SQ <"\\[\\e[32m\\]">)} spids: [1475] ) ] spids: [1473] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:c_lblue) op: Equal rhs: {(SQ <"\\[\\e[1;34m\\]">)} spids: [1483] ) ] spids: [1481] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:c_clear) op: Equal rhs: {(SQ <"\\[\\e[0m\\]">)} spids: [1491] ) ] spids: [1489] ) ] spids: [1454 1497] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:bad_color) op: Equal rhs: {($ VSub_Name "$c_red")} spids: [1502] ) ] spids: [1500] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:ok_color) op: Equal rhs: {($ VSub_Name "$c_green")} spids: [1508] ) ] spids: [1506] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:flags_color) op: Equal rhs: {(DQ ($ VSub_Name "$c_lblue"))} spids: [1514] ) ] spids: [1512] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:branch_color) op:Equal rhs:{(DQ )} spids:[1523])] spids: [1521] ) (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: [1544] ) ] spids: [1544] ) ] spids: [-1 1541] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:branch_color) op: Equal rhs: {(DQ ($ VSub_Name "$bad_color"))} spids: [1553] ) ] spids: [1553] ) ] spids: [1550 1559] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:c) op: Equal rhs: {(DQ ($ VSub_Name "$branch_color") ($ VSub_Name "$c"))} spids: [1562] ) ] spids: [1562] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:z) op: Equal rhs: {(DQ ($ VSub_Name "$c_clear") ($ VSub_Name "$z"))} spids: [1570] ) ] spids: [1570] ) (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: [1597] ) ] spids: [1597] ) ] spids: [-1 1594] ) ] spids: [-1 1604] ) (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: [1623] ) ] spids: [1623] ) ] spids: [-1 1620] ) ] spids: [-1 1630] ) (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: [1649] ) ] spids: [1649] ) ] spids: [-1 1646] ) ] spids: [-1 1656] ) (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: [1675] ) ] spids: [1675] ) ] spids: [-1 1672] ) ] spids: [-1 1682] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:r) op: Equal rhs: {(DQ ($ VSub_Name "$c_clear") ($ VSub_Name "$r"))} spids: [1685] ) ] spids: [1685] ) ] spids: [1402] ) spids: [1397 1401] ) (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: [1704] ) ] spids: [1702] ) (C {(shift)}) (AndOr children: [ (C {(test)} {(-r)} {(DQ ($ VSub_Name "$f"))}) (SimpleCommand words: [{(read)} {(DQ ($ VSub_At "$@"))}] redirects: [ (Redir op_id: Redir_Less fd: -1 arg_word: {(DQ ($ VSub_Name "$f"))} spids: [1729] ) ] ) ] op_id: Op_DAmp ) ] spids: [1699] ) spids: [1694 1698] ) (FuncDef name: __git_ps1 body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:exit) op: Equal rhs: {($ VSub_QMark "$?")} spids: [1784] ) ] spids: [1782] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:pcmode) op:Equal rhs:{(no)} spids:[1790])] spids: [1788] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:detached) op:Equal rhs:{(no)} spids:[1796])] spids: [1794] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:ps1pc_start) op: Equal rhs: {(SQ <"\\u@\\h:\\w ">)} spids: [1802] ) ] spids: [1800] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:ps1pc_end) op: Equal rhs: {(SQ <"\\$ ">)} spids: [1810] ) ] spids: [1808] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:printf_format) op: Equal rhs: {(SQ <" (%s)">)} spids: [1818] ) ] spids: [1816] ) (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: [1839] ) ] spids: [1839] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ps1pc_start) op: Equal rhs: {(DQ ($ VSub_Number "$1"))} spids: [1843] ) ] spids: [1843] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ps1pc_end) op: Equal rhs: {(DQ ($ VSub_Number "$2"))} spids: [1849] ) ] spids: [1849] ) (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: [1857 1861] ) ) } spids: [1855] ) ] spids: [1855] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:PS1) op: Equal rhs: {(DQ ($ VSub_Name "$ps1pc_start") ($ VSub_Name "$ps1pc_end"))} spids: [1877] ) ] spids: [1877] ) ] spids: [1834 1837 1884 -1] ) (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: [1894 1898] ) ) } spids: [1892] ) ] spids: [1892] ) ] spids: [1887 1890 1902 -1] ) (case_arm pat_list: [{(Lit_Other "*")}] action: [ (ControlFlow token: <ControlFlow_Return return> arg_word: {($ VSub_Name "$exit")} ) ] spids: [1905 1906 1913 -1] ) ] spids: [1825 1831 1916] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:ps1_expanded) op:Equal rhs:{(yes)} spids:[2054])] spids: [2052] ) (AndOr children: [ (C {(Lit_Other "[")} {(-z)} { (DQ (BracedVarSub token: <VSub_Name ZSH_VERSION> suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(SQ )}) spids: [2063 2066] ) ) } {(Lit_Other "]")} ) (AndOr children: [ (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: [2083] ) ] spids: [2083] ) ] op_id: Op_DPipe ) ] op_id: Op_DPipe ) (AndOr children: [ (C {(Lit_Other "[")} {(-z)} { (DQ (BracedVarSub token: <VSub_Name BASH_VERSION> suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(SQ )}) spids: [2092 2095] ) ) } {(Lit_Other "]")} ) (AndOr children: [ (C {(shopt)} {(-q)} {(promptvars)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ps1_expanded) op: Equal rhs: {(no)} spids: [2110] ) ] spids: [2110] ) ] op_id: Op_DPipe ) ] op_id: Op_DPipe ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs:(LhsName name:repo_info) op:Equal spids:[2117]) (assign_pair lhs: (LhsName name:rev_parse_exit_code) op: Equal spids: [2119] ) ] spids: [2115] ) (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_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [2145] ) ] ) ] ) left_token: <Left_CommandSub "$("> spids: [2124 2147] ) ) } spids: [2122] ) ] spids: [2122] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:rev_parse_exit_code) op: Equal rhs: {(DQ ($ VSub_QMark "$?"))} spids: [2151] ) ] spids: [2151] ) (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: [-1 2171] ) ] spids: [-1 2179] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:short_sha) op:Equal rhs:{(DQ )} spids:[2185])] spids: [2183] ) (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: [2212 2220] ) ) } spids: [2210] ) ] spids: [2210] ) (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: [2226 2233] ) ) } spids: [2224] ) ] spids: [2224] ) ] spids: [-1 2207] ) ] spids: [-1 2237] ) (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: [2244 2252] ) ) } spids: [2242] ) ] spids: [2240] ) (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: [2258 2265] ) ) } spids: [2256] ) ] spids: [2256] ) (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: [2273 2281] ) ) } spids: [2271] ) ] spids: [2269] ) (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: [2287 2294] ) ) } spids: [2285] ) ] spids: [2285] ) (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: [2302 2310] ) ) } spids: [2300] ) ] spids: [2298] ) (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: [2318 2325] ) ) } spids: [2316] ) ] spids: [2314] ) (If arms: [ (if_arm cond: [ (AndOr children: [ (C {(Lit_Other "[")} {(DQ (true))} {(Lit_Other "=")} {(DQ ($ VSub_Name "$inside_worktree"))} {(Lit_Other "]")} ) (AndOr children: [ (C {(Lit_Other "[")} {(-n)} { (DQ (BracedVarSub token: <VSub_Name GIT_PS1_HIDE_IF_PWD_IGNORED> suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(SQ )}) spids: [2354 2357] ) ) } {(Lit_Other "]")} ) (AndOr children: [ (C {(Lit_Other "[")} { (DQ (CommandSubPart command_list: (CommandList children: [ (C {(git)} {(config)} {(--bool)} {(bash.hideIfPwdIgnored)}) ] ) left_token: <Left_CommandSub "$("> spids: [2368 2376] ) ) } {(KW_Bang "!") (Lit_Other "=")} {(DQ (false))} {(Lit_Other "]")} ) (C {(git)} {(check-ignore)} {(-q)} {(.)}) ] op_id: Op_DAmp ) ] op_id: Op_DAmp ) ] op_id: Op_DAmp ) ] action: [ (ControlFlow token: <ControlFlow_Return return> arg_word: {($ VSub_Name "$exit")} ) ] spids: [-1 2400] ) ] spids: [-1 2408] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:r) op:Equal rhs:{(DQ )} spids:[2414])] spids: [2412] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:b) op:Equal rhs:{(DQ )} spids:[2421])] spids: [2419] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:step) op:Equal rhs:{(DQ )} spids:[2428])] spids: [2426] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:total) op:Equal rhs:{(DQ )} spids:[2435])] spids: [2433] ) (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: [2504] ) ] spids: [2504] ) ] spids: [-1 2501] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:r) op: Equal rhs: {(DQ ("|REBASE-m"))} spids: [2513] ) ] spids: [2513] ) ] spids: [2510 2519] ) ] spids: [-1 2454] ) ] 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: [2589] ) ] spids: [2589] ) ] spids: [-1 2576] ) (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: [2612] ) ] spids: [2612] ) ] spids: [2595 2609] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:r) op: Equal rhs: {(DQ ("|AM/REBASE"))} spids: [2621] ) ] spids: [2621] ) ] spids: [2618 2627] ) ] spids: [-1 2539] ) (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: [2647] ) ] spids: [2647] ) ] spids: [2630 2644] ) (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: [2670] ) ] spids: [2670] ) ] spids: [2653 2667] ) (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: [2693] ) ] spids: [2693] ) ] spids: [2676 2690] ) (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: [2716] ) ] spids: [2716] ) ] spids: [2699 2713] ) ] spids: [-1 2722] ) (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: [-1 2739] ) (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_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [2775] ) ] ) ] ) left_token: <Left_CommandSub "$("> spids: [2768 2777] ) ) } spids: [2766] ) ] spids: [2766] ) ] spids: [2745 2759] ) ] else_action: [ (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:head) op:Equal rhs:{(DQ )} spids:[2786])] spids: [2784] ) (If arms: [ (if_arm cond: [ (Sentence child: (Pipeline children: [ (C {(__git_eread)} {(DQ ($ VSub_Name "$g") (/HEAD))} {(head)}) ] negated: True ) terminator: <Op_Semi ";"> ) ] action: [ (ControlFlow token: <ControlFlow_Return return> arg_word: {($ VSub_Name "$exit")} ) ] spids: [-1 2805] ) ] spids: [-1 2813] ) (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: [2822 2826] ) ) } spids: [2820] ) ] spids: [2820] ) (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: [2850] ) ] spids: [2850] ) (AndOr 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: {(SQ )} ) spids: [2862 2865] ) ) } arms: [ (case_arm pat_list: [{(contains)}] action: [ (C {(git)} {(describe)} {(--contains)} {(HEAD)} ) ] spids: [2871 2873 2884 -1] ) (case_arm pat_list: [{(branch)}] action: [ (C {(git)} {(describe)} {(--contains)} {(--all)} {(HEAD)} ) ] spids: [2887 2889 2902 -1] ) (case_arm pat_list: [{(describe)}] action: [(C {(git)} {(describe)} {(HEAD)})] spids: [2905 2907 2916 -1] ) (case_arm pat_list: [{(Lit_Other "*")} {(default)}] action: [ (C {(git)} {(describe)} {(--tags)} {(--exact-match)} {(HEAD)} ) ] spids: [2919 2925 2938 -1] ) ] redirects: [ (Redir op_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [2943] ) ] spids: [2859 2868 2941] ) ] ) left_token: <Left_CommandSub "$("> spids: [2856 2945] ) ) } spids: [2854] ) ] spids: [2854] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:b) op: Equal rhs: {(DQ ($ VSub_Name "$short_sha") (...))} spids: [2952] ) ] spids: [2952] ) ] op_id: Op_DPipe ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:b) op: Equal rhs: {(DQ ("(") ($ VSub_Name "$b") (")"))} spids: [2959] ) ] spids: [2959] ) ] spids: [-1 2847] ) ] spids: [-1 2967] ) ] spids: [2781 2970] ) ] spids: [2522 2973] ) (If arms: [ (if_arm cond: [ (Sentence child: (AndOr children: [ (C {(Lit_Other "[")} {(-n)} {(DQ ($ VSub_Name "$step"))} {(Lit_Other "]")}) (C {(Lit_Other "[")} {(-n)} {(DQ ($ VSub_Name "$total"))} {(Lit_Other "]")}) ] op_id: Op_DAmp ) 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: [3005] ) ] spids: [3005] ) ] spids: [-1 3002] ) ] spids: [-1 3015] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:w) op:Equal rhs:{(DQ )} spids:[3021])] spids: [3019] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:i) op:Equal rhs:{(DQ )} spids:[3028])] spids: [3026] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:s) op:Equal rhs:{(DQ )} spids:[3035])] spids: [3033] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:u) op:Equal rhs:{(DQ )} spids:[3042])] spids: [3040] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:c) op:Equal rhs:{(DQ )} spids:[3049])] spids: [3047] ) (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:p) op:Equal rhs:{(DQ )} spids:[3056])] spids: [3054] ) (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: [3102] ) ] spids: [3102] ) ] spids: [-1 3099] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:b) op: Equal rhs: {(DQ ("GIT_DIR!"))} spids: [3111] ) ] spids: [3111] ) ] spids: [3108 3117] ) ] spids: [-1 3079] ) (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 children: [ (C {(Lit_Other "[")} {(-n)} { (DQ (BracedVarSub token: <VSub_Name GIT_PS1_SHOWDIRTYSTATE> suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(SQ )}) spids: [3147 3150] ) ) } {(Lit_Other "]")} ) (C {(Lit_Other "[")} { (DQ (CommandSubPart command_list: (CommandList children: [ (C {(git)} {(config)} {(--bool)} {(bash.showDirtyState)}) ] ) left_token: <Left_CommandSub "$("> spids: [3161 3169] ) ) } {(KW_Bang "!") (Lit_Other "=")} {(DQ (false))} {(Lit_Other "]")} ) ] op_id: Op_DAmp ) ] action: [ (AndOr children: [ (C {(git)} {(diff)} {(--no-ext-diff)} {(--quiet)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:w) op: Equal rhs: {(DQ ("*"))} spids: [3195] ) ] spids: [3195] ) ] op_id: Op_DPipe ) (AndOr 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: [3213] ) ] spids: [3213] ) ] op_id: Op_DPipe ) (If arms: [ (if_arm cond: [ (Sentence child: (AndOr children: [ (C {(Lit_Other "[")} {(-z)} {(DQ ($ VSub_Name "$short_sha"))} {(Lit_Other "]")} ) (C {(Lit_Other "[")} {(-z)} {(DQ ($ VSub_Name "$i"))} {(Lit_Other "]")} ) ] op_id: Op_DAmp ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:i) op: Equal rhs: {(DQ ("#"))} spids: [3247] ) ] spids: [3247] ) ] spids: [-1 3244] ) ] spids: [-1 3253] ) ] spids: [-1 3182] ) ] spids: [-1 3256] ) (If arms: [ (if_arm cond: [ (AndOr children: [ (C {(Lit_Other "[")} {(-n)} { (DQ (BracedVarSub token: <VSub_Name GIT_PS1_SHOWSTASHSTATE> suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(SQ )}) spids: [3266 3269] ) ) } {(Lit_Other "]")} ) (SimpleCommand words: [{(git)} {(rev-parse)} {(--verify)} {(--quiet)} {(refs/stash)}] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {(/dev/null)} spids: [3287] ) ] ) ] op_id: Op_DAmp ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:s) op: Equal rhs: {(DQ (Lit_Other "$"))} spids: [3294] ) ] spids: [3294] ) ] spids: [-1 3291] ) ] spids: [-1 3300] ) (If arms: [ (if_arm cond: [ (AndOr children: [ (C {(Lit_Other "[")} {(-n)} { (DQ (BracedVarSub token: <VSub_Name GIT_PS1_SHOWUNTRACKEDFILES> suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(SQ )}) spids: [3311 3314] ) ) } {(Lit_Other "]")} ) (AndOr children: [ (C {(Lit_Other "[")} { (DQ (CommandSubPart command_list: (CommandList children: [ (C {(git)} {(config)} {(--bool)} {(bash.showUntrackedFiles)} ) ] ) left_token: <Left_CommandSub "$("> spids: [3325 3333] ) ) } {(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_id: Redir_Great fd: -1 arg_word: {(/dev/null)} spids: [3368] ) (Redir op_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [3371] ) ] ) ] op_id: Op_DAmp ) ] op_id: Op_DAmp ) ] 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: [3381 3385] ) ) } spids: [3378] ) ] spids: [3378] ) ] spids: [-1 3375] ) ] spids: [-1 3389] ) (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:{(SQ )}) spids: [3400 3403] ) ) } {(Lit_Other "]")} ) terminator: <Op_Semi ";"> ) ] action: [(C {(__git_ps1_show_upstream)})] spids: [-1 3409] ) ] spids: [-1 3415] ) ] spids: [3120 3137] ) ] spids: [-1 3418] ) (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: [3426 3432] ) ) } spids: [3424] ) ] spids: [3422] ) (If arms: [ (if_arm cond: [ (Sentence child: (AndOr 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:{(SQ )}) spids: [3460 3463] ) ) } {(Lit_Other "]")} ) ] op_id: Op_DAmp ) terminator: <Op_Semi ";"> ) ] action: [(C {(__git_ps1_colorize_gitstring)})] spids: [-1 3469] ) ] spids: [-1 3475] ) (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: [3480 3487] ) } spids: [3479] ) ] spids: [3479] ) (If arms: [ (if_arm cond: [ (Sentence child: (AndOr children: [ (C {(Lit_Other "[")} {($ VSub_Name "$pcmode")} {(Lit_Other "=")} {(yes)} {(Lit_Other "]")} ) (C {(Lit_Other "[")} {($ VSub_Name "$ps1_expanded")} {(Lit_Other "=")} {(yes)} {(Lit_Other "]")} ) ] op_id: Op_DAmp ) 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: [3518] ) ] spids: [3518] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:b) op: Equal rhs: { (DQ (EscapedLiteralPart token:<Lit_EscapedChar "\\$">) ("{__git_ps1_branch_name}") ) } spids: [3522] ) ] spids: [3522] ) ] spids: [-1 3515] ) ] spids: [-1 3529] ) (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: [3535] ) ] spids: [3533] ) (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: [3550 3555] ) ($ VSub_Name "$r") ($ VSub_Name "$p") ) } spids: [3546] ) ] spids: [3544] ) (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:{(SQ )}) spids: [3583 3586] ) ) } {(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: [3601 3613] ) } spids: [3600] ) ] spids: [3600] ) ] spids: [-1 3597] ) ] else_action: [ (C {(printf)} {(-v)} {(gitstring)} {(--)} {(DQ ($ VSub_Name "$printf_format"))} {(DQ ($ VSub_Name "$gitstring"))} ) ] spids: [3616 3636] ) (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: [3639] ) ] spids: [3639] ) ] spids: [-1 3575] ) ] else_action: [ (C {(printf)} {(--)} {(DQ ($ VSub_Name "$printf_format"))} {(DQ ($ VSub_Name "$gitstring"))} ) ] spids: [3647 3663] ) (ControlFlow token: <ControlFlow_Return return> arg_word: {($ VSub_Name "$exit")} ) ] spids: [1775] ) spids: [1770 1774] ) ] )