What about writing wrapper library over text file operations - thus you can enforce encoding specification, and even maybe
prohobit foreach (<INPUT>) by providing own iterator function.
in reply to Re^4: Where are the Perl::Critic Unicode policies for the Camel?
in thread Where are the Perl::Critic policies for the Camel?
Same probably can be done for some common text operations
And probably some typical regexps, character constant can be moved out, some wrappers can be written over regexp (i.e. functions which create regexp at runtime)
Cases when you care about "\X" vs "." are probably limited - spliting text, determining visible length, maybe something else - can be moved out to library too