Found an even better way to do this on the Adesk site. The only problem is, it will always list all the values that match an alias. But it will make the command calls look better. But as Tony T. pointed out, it would have to ran per drawing opened.
(defun c:ResetPgp (/ pgpFile Opened TextLine ComamndList LispRoutine)
(if (setq pgpFile (findfile "acad.pgp"))
(progn
(setq Opened (open pgpFile "r"))
(while (setq TextLine (read-line Opened))
(if
(and
(/= (substr TextLine 1 1) ";")
(vl-string-search "," TextLine)
(vl-string-search "*" TextLine)
)
(setq CommandList
(cons
(cons
(strcase (substr TextLine 1 (vl-string-search "," TextLine)))
(strcat "." (substr TextLine (+ 2 (vl-string-search "*" TextLine))))
)
CommandList
)
)
)
)
(close Opened)
(foreach LispRoutine (vl-remove-if-not '(lambda (x) (= (strcase (substr x 1 2)) "C:")) (atoms-family 1))
(if (setq tmpList (assoc (strcase (substr LispRoutine 3)) CommandList))
(progn
(vl-acad-undefun (eval LispRoutine)) ;; The one new thing added
(prompt (strcat "\n Lisp routine \"" (substr LispRoutine 3) "\" is repalced with acad.pgp command alias."))
)
)
)
)
)
(princ)
)