On Tue, 1 Aug 2006, Reiner Steib wrote: > > | [a-zA-ZÄÖÜäößü] > > If you intend to send UTF-8, you MUA should not declare it as > "Content-Type: TEXT/PLAIN; charset=ISO-8859-1". ;-) Ooops. I haven't tamed my MUA yet. It's only been ten years. >> My question is: are emacs regex character classes limited to the >> iso-8859-1 character set, or is there some way to represent Unicode >> (such as UTF-8) characters in a character class? > > AFAIK, you can write the chars in UTF-8 if you specify the encoding of > the lisp file, cf. (info "(emacs)Specify Coding"): > > --8<---------------cut here---------------start------------->8--- > ;; -*- coding: utf-8 -*- > (defun rs-test () > (interactive) > (re-search-forward "[ÄÖÜäößü]")) > --8<---------------cut here---------------end--------------->8--- > > I don't know if there's a reason why isn't used in `ispell.el'. The particular issue is that ispell is currently broken if your LANG environment variable specifies UTF-8 encoding, your buffer is UTF-8 encoded and contains one of these non-ASCII characters, and you specify the "deutsch8" dictionary. ispell-word generates the error: "Ispell and its process have different character maps" What happens is that emacs transcodes the word to iso-8859-1 before sending it to the aspell process, which most likely is respecting a the LANG environment variable. If you change the value of the ispell-dictionary-alist for "deutch8" from ("deutsch8" "[a-zA-Z\304\326\334\344\366\337\374]" "[^a-zA-Z\304\326\334\344\366\337\374]" "[']" t ("-C" "-d" "deutsch") "~latin1" iso-8859-1) to ("deutsch8" "[a-zA-Z\304\326\334\344\366\337\374]" "[^a-zA-Z\304\326\334\344\366\337\374]" "[']" t ("-C" "-d" "deutsch") "~latin1" utf-8) the regex doesn't match words in the buffer properly. Changing it to ("deutsch8" "[a-zA-Z\304\326\334\344\366\337\374]" "[^a-zA-Z\304\326\334\344\366\337\374]" "[']" t ("-C" "-d" "deutsch" "--encoding=iso8859-1") "~latin1" iso-8859-1) does seem to work. Chip -- Charles M. "Chip" Coldwell Senior Software Engineer Red Hat, Inc 978-392-2426