Yasnippet. Skeleton - это генерить целые файлы. В yasnippet при раскрытии исполняется elisp с твоим сниппетом и буфером в качестве ввода, так что там можно например по созданию модуля добавлять open в произвольные файлы (например). И там есть понятия placeholeders, которые могут идти куда угодно
Просто я пишу веб-сервис и у меня есть ряд этапов обработки запроса, некоторые из которых могут вернуть различные ошибки. Вроде удобно и логично на верхнем уровне их все обернуть в result и собрать в цепочку