formatter: move most of template option helper to formatter
We want to share this function between formatter and cmdutils. It
doesn't belong in templater because it imports knowledge of ui layers
that shouldn't be there. We'd prefer cmdutil to layer on the formatter
rather than vice-versa. Since the formatter is the handler for -T
options for all non-log commands, let's move the helper there. We
leave the bits specific to the old --style option behind.
$ hg init
$ echo This is file a1 > a
$ echo This is file b1 > b
$ hg add a b
$ hg commit -m "commit #0"
$ echo This is file b22 > b
$ hg commit -m "comment #1"
$ hg update 0
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ rm b
$ hg commit -A -m "comment #2"
removing b
created new head
$ hg update 1
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
$ hg update
abort: not a linear update
(merge or update --check to force update)
[255]
$ rm b
$ hg update -c
abort: uncommitted changes
[255]
$ hg revert b
$ hg update -c
0 files updated, 0 files merged, 1 files removed, 0 files unresolved
$ mv a c
Should abort:
$ hg update 1
abort: uncommitted changes
(commit or update --clean to discard changes)
[255]
$ mv c a
Should succeed:
$ hg update 1
1 files updated, 0 files merged, 0 files removed, 0 files unresolved