The book jacket can use custom columns,
using an underscore instead of the hash symbol that usually prepends it. You cannot use functions or tests of any sort, which is why we use them in a custom column and then use the custom column in the jacket.
That is, given custom column "#some_column", the jacket template expects to see "_some_column".
(template.xhtml should have some comments describing this.)
You MUST edit the template.xhtml in order to use different column ids in the metadata jacket.
What criteria would you use to determine which books get the default LN, FN in the template? We are using general program mode anyway, we might as well throw in a few frills and acrobatics.