Copyright (C) 2000-2012 |
GNU Info (elisp)Encoding and I/OEncoding and I/O ---------------- The principal purpose of coding systems is for use in reading and writing files. The function `insert-file-contents' uses a coding system for decoding the file data, and `write-region' uses one to encode the buffer contents. You can specify the coding system to use either explicitly (Note: Specifying Coding Systems), or implicitly using the defaulting mechanism (Note: Default Coding Systems). But these methods may not completely specify what to do. For example, they may choose a coding system such as `undefined' which leaves the character code conversion to be determined from the data. In these cases, the I/O operation finishes the job of choosing a coding system. Very often you will want to find out afterwards which coding system was chosen. - Variable: buffer-file-coding-system This variable records the coding system that was used for visiting the current buffer. It is used for saving the buffer, and for writing part of the buffer with `write-region'. When those operations ask the user to specify a different coding system, `buffer-file-coding-system' is updated to the coding system specified. However, `buffer-file-coding-system' does not affect sending text to a subprocess. - Variable: save-buffer-coding-system This variable specifies the coding system for saving the buffer (by overriding `buffer-file-coding-system'). Note that it is not used for `write-region'. When a command to save the buffer starts out to use `buffer-file-coding-system' (or `save-buffer-coding-system'), and that coding system cannot handle the actual text in the buffer, the command asks the user to choose another coding system. After that happens, the command also updates `buffer-file-coding-system' to represent the coding system that the user specified. - Variable: last-coding-system-used I/O operations for files and subprocesses set this variable to the coding system name that was used. The explicit encoding and decoding functions (Note: Explicit Encoding) set it too. *Warning:* Since receiving subprocess output sets this variable, it can change whenever Emacs waits; therefore, you should copy the value shortly after the function call that stores the value you are interested in. The variable `selection-coding-system' specifies how to encode selections for the window system. Note: Window System Selections. automatically generated by info2www version 1.2.2.9 |