(CommandList children: [ (C {(_Dbg_help_add)} {(edit)} { (DQ ('**edit** [*line-number*]\n') ('\n') ('Edit specified file at *line-number*.\n') ('\n') ('If *line-number* is not given, use the current line number.\n') ('Uses ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (EDITOR) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' environment variable contents as editor (or ex as default).\n') ('Assumes the editor positions at a file using options ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('+linenumber filename') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (.) ) } ) (FuncDef name: _Dbg_do_edit body: (BraceGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (DParen child: (ArithBinary op_id: Arith_Great left: (ArithWord w:{($ VSub_Pound '$#')}) right: (ArithWord w:{(Lit_Digits 2)}) ) ) terminator: <Op_Semi ';'> ) ] action: [ (C {(_Dbg_errmsg)} {(DQ ('got ') ($ VSub_Pound '$#') (' parameters, but need 0 or 1.'))} ) (ControlFlow token:<ControlFlow_Return return> arg_word:{(2)}) ] spids: [16777215 104] ) ] spids: [16777215 121] ) (Assignment keyword: Assign_Typeset pairs: [ (assign_pair lhs: (LhsName name:editor) op: Equal rhs: { (BracedVarSub token: <VSub_Name EDITOR> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(ex)}) spids: [127 131] ) } spids: [126] ) ] spids: [124] ) (Assignment keyword: Assign_Typeset flags: [-i] pairs: [(assign_pair lhs:(LhsName name:line_number) op:Equal spids:[138])] spids: [134] ) (If arms: [ (if_arm cond: [ (Sentence child: (DParen child: (ArithBinary op_id: Arith_DEqual left: (ArithWord w:{($ VSub_Pound '$#')}) right: (ArithWord w:{(Lit_Digits 0)}) ) ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:line_number) op: Equal rhs: {($ VSub_Name '$_Dbg_frame_last_lineno')} spids: [159] ) ] spids: [159] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:full_filename) op: Equal rhs: {(DQ ($ VSub_Name '$_Dbg_frame_last_filename'))} spids: [163] ) ] spids: [163] ) ] spids: [16777215 156] ) ] else_action: [(C {(_Dbg_linespec_setup)} {(DQ ($ VSub_Number '$1'))})] spids: [169 179] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (LogicalNot child: (BoolUnary op_id: BoolUnary_r child: {($ VSub_Name '$full_filename')} ) ) ) terminator: <Op_Semi ';'> ) ] action: [ (C {(_Dbg_errmsg)} {(DQ ('File ') ($ VSub_Name '$full_filename') (' is not readable'))} ) (ControlFlow token:<ControlFlow_Return return> arg_word:{(2)}) ] spids: [16777215 196] ) ] spids: [16777215 213] ) (C {($ VSub_Name '$editor')} {(Lit_Other '+') ($ VSub_Name '$line_number')} {($ VSub_Name '$full_filename')} ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:rc) op: Equal rhs: {($ VSub_QMark '$?')} spids: [224] ) ] spids: [224] ) (AndOr children: [ (DParen child: (ArithBinary op_id: Arith_DEqual left: (ArithVarRef name:rc) right: (ArithWord w:{(Lit_Digits 0)}) ) ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:_Dbg_last_cmd) op: Equal rhs: {(SQ <edit>)} spids: [237] ) ] spids: [237] ) ] op_id: Op_DAmp ) (ControlFlow token:<ControlFlow_Return return> arg_word:{($ VSub_Name '$rc')}) ] spids: [88] ) spids: [84 87] ) (C {(_Dbg_alias_add)} {(SQ <ed>)} {(SQ <edit>)}) ] )