n the first place you need an editor program which is UTF-8 aware. Running a non-Unicode-aware application will not work (even if run in a Unicode-capable xterm with the proper font). The application will still assume, for instance, that 1 character = 1 byte = 1 position wide on the screen. You will get all sorts of problems with cursor positioning, backspace, etc. Some possible editors are: yudit. The first Unicode-capable editor under Linux. It has a built-in input method selector. The user interface is etwas gewöhnungsbedürftig (needs some getting used to) like the Germans say. I myself am not yet used to it. kedit, when started with the UTF-8 option: kedit --encoding UTF-8. It can print UTF-8 using its own built-in method, which in my case did not give terribly nice results. I think it is better to use general text printing utilities (see section 9.1). gedit. This works with the GTK-2 immodule system (see below). It is a UTF-8 editor (incl. RTL and CTL scripts), its user interface is very nice, but unfortunately it is very unstable; already a few years ago I found that it often crashed, with data loss. I tried it again recently (July 2006) and found that it has become even worse. Maybe you need full GNOME (which I do not have) to use it reliably. bluefish. Especially for HTML editing. This also works with the immodule sytem. As far as I could find out, this is a stable program. Also does RTL and CTL. mined. This is a text-mode editor (for use on the console, or more likely in a UTF-8 capable xterm; the other editors mentioned above all use a GUI). mined has a built-in keyboard input system for all kinds of ‘alphabetical’ languages (including Hebrew, Arabic, Greek, Russian …) and some support for Kanji-type languages. Mouse support (including scroll wheel). ‘Smart quotes’ support. Syntax highlighting. Capable of reading and writing many other encoding systems than UTF-8, e.g. JIS, EUC-JP. Very stable: it never crashed when I used it, unlike some of the editors mentioned above … joe (my favourite editor). Also a text-mode editor. This fast and full-featured editor, with a user interface like Wordstar or the ‘Borland Turbo’ editors, has long been available for Linux. Versions 3.0 and higher have Unicode support. To actually see ‘exotic’ characters in joe, you should run it in an xterm with unicode fonts, and inside a UTF-8 locale. See section 3 and section 4.6. The new versions of joe now also have coloured syntax highlighting, which is very helpful when you are writing HTML (or C). No mouse support, however. For keyboard input, joe relies on what the (X) environment provides. This, I think, is good design philosophy; but good keyboard support from the environment, in Linux, is only a fairly recent achievement. That is why older multilingual editors like yudit and mined provide their own systems. It goes without saying that the old stalwarts, vim and (X)emacs, are also capable of handling UTF-8. I don’t use them myself, but more information about using them with UTF-8 is here.