So far as I know, the only way to construct HoldForm[symbol] is to manually enter (type) it. Any programmatic use of a symbol is replaced by its evaluation, e.g. if you try to Map HoldForm on a list of symbols you get each evaluation of each symbol, not the symbol names.
All examples are examples of failure.
(Try? Holding a list of symbols holds the list name, not the list members.)