# HG changeset patch # User Christian Ebert # Date 1246295448 -7200 # Node ID 4362f0ef265a972f287ee21030b7c38c96cecc5f # Parent 23da65f04361b66a43ae59c8411c7c0cc0649364# Parent 795a95d7dc6193d72cfdf049beb108f17a1ecba1 (stable) merge diff -r 23da65f04361 -r 4362f0ef265a hgkw/keyword.py --- a/hgkw/keyword.py Sat Jun 27 13:05:25 2009 +0200 +++ b/hgkw/keyword.py Mon Jun 29 19:10:48 2009 +0200 @@ -359,27 +359,40 @@ _kwfwrite(ui, repo, True, *pats, **opts) def files(ui, repo, *pats, **opts): - '''print filenames configured for keyword expansion + '''show files configured for keyword expansion - Check which filenames in the working directory are matched by the + List which files in the working directory are matched by the [keyword] configuration patterns. Useful to prevent inadvertent keyword expansion and to speed up - execution by including only filenames that are actual candidates + execution by including only files that are actual candidates for expansion. - Use -u/--untracked to display untracked filenames as well. + See "hg help keyword" on how to construct patterns both for + inclusion and exclusion of files. + + Use -u/--untracked to list untracked files as well. + + With -a/--all and -v/--verbose the codes used to show the status + of files are: + K = keyword expansion candidate + k = keyword expansion candidate (untracked) + I = ignored + i = ignored (untracked) ''' kwt = kwtools['templater'] status = _status(ui, repo, kwt, opts.get('untracked'), *pats, **opts) modified, added, removed, deleted, unknown, ignored, clean = status - files = sorted(modified + added + clean + unknown) + files = sorted(modified + added + clean) wctx = repo[None] kwfiles = [f for f in files if kwt.iskwfile(f, wctx.flags)] + kwuntracked = [f for f in unknown if kwt.iskwfile(f, wctx.flags)] cwd = pats and repo.getcwd() or '' - kwfstats = not opts.get('ignore') and (('K', kwfiles),) or () + kwfstats = (not opts.get('ignore') and + (('K', kwfiles), ('k', kwuntracked),) or ()) if opts.get('all') or opts.get('ignore'): - kwfstats += (('I', [f for f in files if f not in kwfiles]),) + kwfstats += (('I', [f for f in files if f not in kwfiles]), + ('i', [f for f in unknown if f not in kwuntracked]),) for char, filenames in kwfstats: fmt = (opts.get('all') or ui.verbose) and '%s %%s\n' % char or '%s\n' for f in filenames: diff -r 23da65f04361 -r 4362f0ef265a tests/test-keyword.out --- a/tests/test-keyword.out Sat Jun 27 13:05:25 2009 +0200 +++ b/tests/test-keyword.out Mon Jun 29 19:10:48 2009 +0200 @@ -50,7 +50,7 @@ kwdemo print [keywordmaps] configuration and an expansion example kwexpand expand keywords in the working directory - kwfiles print filenames configured for keyword expansion + kwfiles show files configured for keyword expansion kwshrink revert expanded keywords in the working directory enabled extensions: