So... I promised a bit too much. It is not possible to override an individual indentation setting (e.g. cperl-indent-level) when a cperl-file-style is used. File (and directory) variables are applied after the body of cperl-mode, and the styles do their work only after that in hack-local-variables-hook. I did not know that. So, styles will always override the settings they provide. But apart from that, the patch (attached) does what I would expect: I can set a default style in custom, individual styles from .dir-locals.el or file local variables work without affecting other buffers. I suggest this patch should go to the emacs-29 branch. -- Cheers, haj