Achim Gratz writes: > Nicolas Goaziou writes: >>> Depends on what language environment is set to, but with the default setting of >>> my Emacs (German) it becomes iso-latin-1, independently of what the coding >>> system in the original Org buffer was. >> >> In this case, it should be `utf-8', shouldn't it? > > I want it to be utf-8, but it isn't. The course of events is apparently > that when a new buffer gets created it will have the default coding > system. You are then apparently asking that buffer for the coding > system (always the default) and set inputenc accordingly, but should > have asked the parent Org buffer. Or so I think, a few details are > probably still wrong. > >>> I think that the export buffer coding system should be explicitly set (via >>> buffer-file-coding-system, which is automatically buffer-local) to copy the >>> coding of the parent buffer (or the coding specified via export options if >>> anything like that exists) so that the default choice of the language >>> environment doesn't kick in. >> >> Still trying to understand: is the coding system wrong when you export >> to a file, to a (temporary) buffer, or both? > > Both. > >> Note that `org-export-to-file' use `coding-system-for-write', which >> overrides `buffer-file-coding-system'. So this variable is probably >> irrelevant here. > > No it is not irrelevant, it simply gets set too late in the game: it > asks for the new coding system when it is time to save the buffer, while > the content of the buffer has been cobbled together while assuming a > different coding system. The only way I know (from browsing the > documentation) to override the coding system for a buffer that does not > yet have a file association is to set that variable directly, > preferrably directly after the buffer is created. Does the following patch fix the problem? Regards, -- Nicolas Goaziou