В гугле нашел скрипт для перекоирования документа в разные кодировки.
(defun recode-buffer-dangerous (target-coding-system)
"* Recode buffer as if it were encoded with `target-coding-system'.
If current buffer is write-protected (`buffer-read-only'), temporarily toggle
read-only flag, recode, then turn it back."
(interactive "zEnter target coding system: ")
(labels ((do-recode nil
(encode-coding-region (point-min)
(point-max)
buffer-file-coding-system)
(decode-coding-region (point-min)
(point-max)
target-coding-system)
(set-buffer-file-coding-system target-coding-system)))
(if buffer-read-only
(let ((buffer-read-only nil))
(do-recode)
(set-buffer-modified-p nil))
(do-recode))))
забиндил на него клавишу
(global-set-key (kbd "<f12>") 'recode-buffer-dangerous)
Но мне бы хотелось что бы скрипт не спрашивал меня в какую кодировку переводить а сразу перекодировал буфер в cp1251, как это можно осуществить