Emacs File Encoding FAQ
This page is a tutorial on file and character encoding/decoding in emacs.
If you don't know what's encoding/decoding, see: Unicode Basics: Character Set, Encoding, UTF-8, Codepoint.
Set default encoding system for opening and saving
Put this in your Emacs Init File:
;; UTF-8 as default encoding (set-language-environment "UTF-8")
List emacs file encoding systems
How to declare a file with a specific encoding
In the first line of your file, put
-*- coding: utf-8 -*-. That way, each time emacs open the file, emacs will presume that the file is encoded in utf-8. The line can start with a comment character(s) of your language, such as “#”, “//”. This magic line is also adopted by Python.
(info "(emacs) File Variables")
How to open file with specific encoding
Open it normally, then Alt+x
revert-buffer-with-coding-system, then type a coding system. Press Tab to list possible ones.
How to set a encoding system for saving file
set-buffer-file-coding-system, then type the encoding system you want. Press Tab to see a list of possible values.
After you set a encoding system, you can save the file and it'll be saved in the new encoding system.
What is the encoding system used for current file
Check the value of the buffer local variable buffer-file-coding-system.
You do that by Alt+x
What is the default coding system for opening and saving files
- Linux: Convert File Encoding with iconv
- Python: Convert File Encoding
- Perl: Convert File Encoding
- Java: Convert File Encoding