Andreas Schwab writes: > Jambunathan K writes: > >> Andreas Schwab writes: >> >>> Jambunathan K writes: >>> >>>> +(defcustom vc-dir-hide-these-states '("up-to-date") >>>> + "States hidden by `vc-dir-hide-some-states'." >>>> + :type '(choice >>>> + (const :tag "None") >>>> + (set :tag "Choices" >>>> + (string :tag "VC State" "added") >>> >>> Why a string? Using the symbol would be more natural. >> >> There is a note up in the thread, which reads: >> >> ,---- >> | 2. Magnus' changes assumes that states are just elisp symbols. This >> | may not be true. In case of locked states - designated as USER in >> | `vc-state' - the state could actually be a string. >> `---- > > There is nothing wrong with using a string where the state is a string. > But if the user name happens to match the name of one of the state > symbols it becomes ambigous. Sure, I will name my next kid `conflict' or even better `missing'. In the latter case, I will have hard time reporting to police if he ever goes missing. Here comes the modified patch. I think I am hitting a bug with defcustom and I will open a separte report for it. When I do, M-x customize-variable RET vc-hide-these-states RET, I see two "up-to-date"s and "added" goes missing. I will let you folks handle the defcustom issue. ,---- | Operate on all settings in this buffer: | Revert... Apply Apply and Save | | Hide Vc Dir Hide These States: Value Menu Choices: | [X] VC State: up-to-date | [ ] VC State: conflict | [ ] VC State: edited | [ ] VC State: ignored | [ ] VC State: missing | [ ] VC State: needs-merge | [ ] VC State: needs-update | [ ] VC State: removed | [ ] VC State: unlocked-changes | [ ] VC State: unregistered | [ ] VC State: up-to-date | State : STANDARD. | States hidden by `vc-dir-hide-some-states'. | Groups: Vc `----