[TIG RFC] Cleaning up tig's option handling

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

In my own usage of tig, I increasingly use git-log options like -S and
--all and rarely use any of the "native" tig options or subcommands.
The only exception is the option for entering the status view, which I
have even configured a hotkey for in my editor (reducing most commit
preparations to a simple combination of pressing 't', 'u', '.' with the
help of tig's yet unreleased command aliases :). Anyway, the above usage
pattern leads to weird looking command lines when multiple "--"s are
needed, e.g.:

	$ tig -- --all ^release -- tig.c

I would like to ask tig users out there on how to best proceed with
cleaning up the option handling so that tig will act more like gitk.
Besides making command lines more visually appealing, out-sourcing the
option handling to git-rev-parse will also make it easier to add
refreshing of the main view (similar to F5 in gitk) in the future.

My plan is to obsolete most of the options over the course of the next
(few) release(s) keeping only the options for help and version
information. This should be fairly harmless I hope. Remaining is the
question of what to do with the subcommands and the option for the
status view. Having optional subcommands for tig has the problem that it
may ending up conflicting with local branch or file names causing
dreadful ambiguity. On the other hand, given git-log's and git-diff's
vast amount of options, it won't conflict with any and it might be more
natural to say `tig show <rev>` and `tig status` than `tig --show` and
`tig --status`.

Below is the list of subcommands and options:
---------------------------------------------
tig 0.9.1-19-gc509eed (Dec 13 2007)

Usage: tig [options]
   or: tig [options] [--] [git log options]
   or: tig [options] log  [git log options]
   or: tig [options] diff [git diff options]
   or: tig [options] show [git show options]
   or: tig [options] <    [git command output]

Options:
  -l                          Start up in log view
  -d                          Start up in diff view
  -S                          Start up in status view
  -n[I], --line-number[=I]    Show line numbers with given interval
  -b[N], --tab-size[=N]       Set number of spaces for tab expansion
  --                          Mark end of tig options
  -v, --version               Show version and exit
  -h, --help                  Show help message and exit

-- 
Jonas Fonseca
-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux