# -*- shell-script -*- # alias.sh - gdb-like "alias" debugger command # # Copyright (C) 2008, 2016 Rocky Bernstein rocky@gnu.org # # This program is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License as # published by the Free Software Foundation; either version 2, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License along # with this program; see the file COPYING. If not, write to the Free Software # Foundation, 59 Temple Place, Suite 330, Boston, MA 02111 USA. _Dbg_help_add alias \ '**alias** *alias-name* *debugger-command* Make *alias-name* be an alias for *debugger-command*. Examples: --------- alias cat list # "cat prog.py" is the same as "list prog.py" alias s step # "s" is now an alias for "step". # The above example is done by default. See also: --------- **unalias** and **show alias**. ' proc _Dbg_do_alias { if (($# != 2)) { _Dbg_errmsg "Got $Argc parameters, but need 2." return 1 } _Dbg_alias_add $1 $2 return $? } _Dbg_help_add unalias \ '**unalias** *name* Remove debugger command alias *name*. Use **show aliases** to get a list the aliases in effect. ' 1 proc _Dbg_do_unalias { if (($# != 1)) { _Dbg_errmsg "Got $Argc parameters, but need 1." return 1 } _Dbg_alias_remove $1 return 0 } (CommandList children: [ (C {(_Dbg_help_add)} {(alias)} { (SQ <"**alias** *alias-name* *debugger-command*\n"> <"\n"> <"Make *alias-name* be an alias for *debugger-command*.\n"> <"\n"> <"Examples:\n"> <"---------\n"> <"\n"> <" alias cat list # \"cat prog.py\" is the same as \"list prog.py\"\n"> <" alias s step # \"s\" is now an alias for \"step\".\n"> <" # The above example is done by default.\n"> <"\n"> <"See also:\n"> <"---------\n"> <"\n"> <"**unalias** and **show alias**.\n"> ) } ) (FuncDef name: _Dbg_do_alias body: (BraceGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (DParen child: (ArithBinary op_id: Arith_NEqual left: (ArithWord w:{($ VSub_Pound "$#")}) right: (ArithWord w:{(Lit_Digits 2)}) ) ) terminator: ) ] action: [ (C {(_Dbg_errmsg)} {(DQ ("Got ") ($ VSub_Pound "$#") (" parameters, but need 2."))}) (ControlFlow token: arg_word:{(1)}) ] spids: [-1 99] ) ] spids: [-1 116] ) (C {(_Dbg_alias_add)} {($ VSub_Number "$1")} {($ VSub_Number "$2")}) (ControlFlow token: arg_word:{($ VSub_QMark "$?")}) ] spids: [83] ) spids: [79 82] ) (C {(_Dbg_help_add)} {(unalias)} { (SQ <"**unalias** *name*\n"> <"\n"> <"Remove debugger command alias *name*.\n"> <"\n"> <"Use **show aliases** to get a list the aliases in effect.\n"> ) } {(1)} ) (FuncDef name: _Dbg_do_unalias body: (BraceGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (DParen child: (ArithBinary op_id: Arith_NEqual left: (ArithWord w:{($ VSub_Pound "$#")}) right: (ArithWord w:{(Lit_Digits 1)}) ) ) terminator: ) ] action: [ (C {(_Dbg_errmsg)} {(DQ ("Got ") ($ VSub_Pound "$#") (" parameters, but need 1."))}) (ControlFlow token: arg_word:{(1)}) ] spids: [-1 169] ) ] spids: [-1 186] ) (C {(_Dbg_alias_remove)} {($ VSub_Number "$1")}) (ControlFlow token: arg_word:{(0)}) ] spids: [153] ) spids: [149 152] ) ] )