Насколько принято менять поведение функции в имаксе в зависимости от контекста. Вот допустим есть функция mpv для просмотра видео под поинтом в dired и хочу её увеличить обработкой того в каком буфере она была вызвана для того что бы смотреть видосики с ютуба через elfeed что бы так сказать на одном кейбиндинге стояла. Или есть способ хитрее?
казалось бы, элементарная задача
фигачишь "хэшмапу" (точнее alist), с парами (major-mode . handler), можно даже defcustom-ную, добавляешь в функцию alist-get и funcall, профит. Композабельно, гибко, брат жив.
но нет, надо сделать фабрику фабрик