`vars` is used to hold global variables and options, but the use of `mach_to_region` is a temporary flag, which is not preferrable.

I think you might need to define a new `list` function, and let the handlers of `list` & `rlist` call the new functions with different arguments.

But I'm still worrying about the format, it will be harder to maintain in this way.