Mercurial > hg
comparison hgext/keyword.py @ 9491:12e340b9f1bf
keyword: kwfiles --unknown instead of --untracked
Use the same option name as "hg status".
Retrieve option in _status().
Mark --untracked as deprecated.
author | Christian Ebert <blacktrash@gmx.net> |
---|---|
date | Wed, 30 Sep 2009 22:39:56 +0200 |
parents | 4c041f1ee1b4 |
children | 3b1864bcc58f |
comparison
equal
deleted
inserted
replaced
9490:67df9f46f907 | 9491:12e340b9f1bf |
---|---|
242 if self.renamed(node): | 242 if self.renamed(node): |
243 t2 = super(kwfilelog, self).read(node) | 243 t2 = super(kwfilelog, self).read(node) |
244 return t2 != text | 244 return t2 != text |
245 return revlog.revlog.cmp(self, node, text) | 245 return revlog.revlog.cmp(self, node, text) |
246 | 246 |
247 def _status(ui, repo, kwt, unknown, *pats, **opts): | 247 def _status(ui, repo, kwt, *pats, **opts): |
248 '''Bails out if [keyword] configuration is not active. | 248 '''Bails out if [keyword] configuration is not active. |
249 Returns status of working directory.''' | 249 Returns status of working directory.''' |
250 if kwt: | 250 if kwt: |
251 match = cmdutil.match(repo, pats, opts) | 251 unknown = opts.get('unknown') or opts.get('untracked') |
252 return repo.status(match=match, unknown=unknown, clean=True) | 252 return repo.status(match=cmdutil.match(repo, pats, opts), clean=True, |
253 unknown=unknown) | |
253 if ui.configitems('keyword'): | 254 if ui.configitems('keyword'): |
254 raise util.Abort(_('[keyword] patterns cannot match')) | 255 raise util.Abort(_('[keyword] patterns cannot match')) |
255 raise util.Abort(_('no [keyword] patterns configured')) | 256 raise util.Abort(_('no [keyword] patterns configured')) |
256 | 257 |
257 def _kwfwrite(ui, repo, expand, *pats, **opts): | 258 def _kwfwrite(ui, repo, expand, *pats, **opts): |
258 '''Selects files and passes them to kwtemplater.overwrite.''' | 259 '''Selects files and passes them to kwtemplater.overwrite.''' |
259 if repo.dirstate.parents()[1] != nullid: | 260 if repo.dirstate.parents()[1] != nullid: |
260 raise util.Abort(_('outstanding uncommitted merge')) | 261 raise util.Abort(_('outstanding uncommitted merge')) |
261 kwt = kwtools['templater'] | 262 kwt = kwtools['templater'] |
262 status = _status(ui, repo, kwt, False, *pats, **opts) | 263 status = _status(ui, repo, kwt, *pats, **opts) |
263 modified, added, removed, deleted = status[:4] | 264 modified, added, removed, deleted = status[:4] |
264 if modified or added or removed or deleted: | 265 if modified or added or removed or deleted: |
265 raise util.Abort(_('outstanding uncommitted changes')) | 266 raise util.Abort(_('outstanding uncommitted changes')) |
266 wlock = lock = None | 267 wlock = lock = None |
267 try: | 268 try: |
378 expansion. | 379 expansion. |
379 | 380 |
380 See "hg help keyword" on how to construct patterns both for | 381 See "hg help keyword" on how to construct patterns both for |
381 inclusion and exclusion of files. | 382 inclusion and exclusion of files. |
382 | 383 |
383 Use -u/--untracked to list untracked files as well. | 384 Use -u/--unknown to list unknown (not tracked) files as well. |
384 | 385 |
385 With -a/--all and -v/--verbose the codes used to show the status | 386 With -a/--all and -v/--verbose the codes used to show the status |
386 of files are:: | 387 of files are:: |
387 | 388 |
388 K = keyword expansion candidate | 389 K = keyword expansion candidate |
389 k = keyword expansion candidate (untracked) | 390 k = keyword expansion candidate (not tracked) |
390 I = ignored | 391 I = ignored |
391 i = ignored (untracked) | 392 i = ignored (not tracked) |
392 ''' | 393 ''' |
393 kwt = kwtools['templater'] | 394 kwt = kwtools['templater'] |
394 status = _status(ui, repo, kwt, opts.get('untracked'), *pats, **opts) | 395 status = _status(ui, repo, kwt, *pats, **opts) |
395 modified, added, removed, deleted, unknown, ignored, clean = status | 396 modified, added, removed, deleted, unknown, ignored, clean = status |
396 files = sorted(modified + added + clean) | 397 files = sorted(modified + added + clean) |
397 wctx = repo[None] | 398 wctx = repo[None] |
398 kwfiles = [f for f in files if kwt.iskwfile(f, wctx.flags)] | 399 kwfiles = [f for f in files if kwt.iskwfile(f, wctx.flags)] |
399 kwuntracked = [f for f in unknown if kwt.iskwfile(f, wctx.flags)] | 400 kwunknown = [f for f in unknown if kwt.iskwfile(f, wctx.flags)] |
400 cwd = pats and repo.getcwd() or '' | 401 cwd = pats and repo.getcwd() or '' |
401 kwfstats = (not opts.get('ignore') and | 402 kwfstats = (not opts.get('ignore') and |
402 (('K', kwfiles), ('k', kwuntracked),) or ()) | 403 (('K', kwfiles), ('k', kwunknown),) or ()) |
403 if opts.get('all') or opts.get('ignore'): | 404 if opts.get('all') or opts.get('ignore'): |
404 kwfstats += (('I', [f for f in files if f not in kwfiles]), | 405 kwfstats += (('I', [f for f in files if f not in kwfiles]), |
405 ('i', [f for f in unknown if f not in kwuntracked]),) | 406 ('i', [f for f in unknown if f not in kwunknown]),) |
406 for char, filenames in kwfstats: | 407 for char, filenames in kwfstats: |
407 fmt = (opts.get('all') or ui.verbose) and '%s %%s\n' % char or '%s\n' | 408 fmt = (opts.get('all') or ui.verbose) and '%s %%s\n' % char or '%s\n' |
408 for f in filenames: | 409 for f in filenames: |
409 ui.write(fmt % repo.pathto(f, cwd)) | 410 ui.write(fmt % repo.pathto(f, cwd)) |
410 | 411 |
545 _('hg kwexpand [OPTION]... [FILE]...')), | 546 _('hg kwexpand [OPTION]... [FILE]...')), |
546 'kwfiles': | 547 'kwfiles': |
547 (files, | 548 (files, |
548 [('a', 'all', None, _('show keyword status flags of all files')), | 549 [('a', 'all', None, _('show keyword status flags of all files')), |
549 ('i', 'ignore', None, _('show files excluded from expansion')), | 550 ('i', 'ignore', None, _('show files excluded from expansion')), |
550 ('u', 'untracked', None, _('additionally show untracked files')), | 551 ('u', 'unknown', None, |
552 _('additionally show unknown (not tracked) files')), | |
553 ('u', 'untracked', None, | |
554 _('additionally show untracked files (DEPRECATED)')), | |
551 ] + commands.walkopts, | 555 ] + commands.walkopts, |
552 _('hg kwfiles [OPTION]... [FILE]...')), | 556 _('hg kwfiles [OPTION]... [FILE]...')), |
553 'kwshrink': (shrink, commands.walkopts, | 557 'kwshrink': (shrink, commands.walkopts, |
554 _('hg kwshrink [OPTION]... [FILE]...')), | 558 _('hg kwshrink [OPTION]... [FILE]...')), |
555 } | 559 } |