equal
deleted
inserted
replaced
187 return fn.args |
187 return fn.args |
188 return [] |
188 return [] |
189 |
189 |
190 class cmdalias(object): |
190 class cmdalias(object): |
191 def __init__(self, name, definition, cmdtable): |
191 def __init__(self, name, definition, cmdtable): |
192 self.name = name |
192 self.name = self.cmd = name |
193 self.definition = definition |
193 self.definition = definition |
194 self.args = [] |
194 self.args = [] |
195 self.opts = [] |
195 self.opts = [] |
196 self.help = '' |
196 self.help = '' |
197 self.norepo = True |
197 self.norepo = True |
198 self.badalias = False |
198 self.badalias = False |
199 |
199 |
200 try: |
200 try: |
201 cmdutil.findcmd(self.name, cmdtable, True) |
201 aliases, entry = cmdutil.findcmd(self.name, cmdtable) |
|
202 for alias, e in cmdtable.iteritems(): |
|
203 if e is entry: |
|
204 self.cmd = alias |
|
205 break |
202 self.shadows = True |
206 self.shadows = True |
203 except error.UnknownCommand: |
207 except error.UnknownCommand: |
204 self.shadows = False |
208 self.shadows = False |
205 |
209 |
206 if not self.definition: |
210 if not self.definition: |
293 # aliases are processed after extensions have been loaded, so they |
297 # aliases are processed after extensions have been loaded, so they |
294 # may use extension commands. Aliases can also use other alias definitions, |
298 # may use extension commands. Aliases can also use other alias definitions, |
295 # but only if they have been defined prior to the current definition. |
299 # but only if they have been defined prior to the current definition. |
296 for alias, definition in ui.configitems('alias'): |
300 for alias, definition in ui.configitems('alias'): |
297 aliasdef = cmdalias(alias, definition, cmdtable) |
301 aliasdef = cmdalias(alias, definition, cmdtable) |
298 cmdtable[alias] = (aliasdef, aliasdef.opts, aliasdef.help) |
302 cmdtable[aliasdef.cmd] = (aliasdef, aliasdef.opts, aliasdef.help) |
299 if aliasdef.norepo: |
303 if aliasdef.norepo: |
300 commands.norepo += ' %s' % alias |
304 commands.norepo += ' %s' % alias |
301 |
305 |
302 def _parse(ui, args): |
306 def _parse(ui, args): |
303 options = {} |
307 options = {} |