> I agree that marking would help ispell.el to decide which dictionary > to use on a word. However, even without marking users might still prefer > to check words simultaneously with multiple dictionaries
That's a good point. Unfortunately, the current implementation of ispell makes it impossible to use two dictionaries simultaneously. I do recall hearing from one user who used a pipe something like this: ispell -d language-1 -l | ispell -d language-2 -l ... | sort -uf but of course that only provides a list of misspelled words, and loses all the correction capabilities. Just brainstorming, it probably wouldn't be too hard to write a postprocessing script for -a mode that turned the output of ispell -a into something suitable for another ispell. The idea would be that you feed: I do not want to acept my bda lueck and turn the output lines: @(#) International Ispell Version 3.2.06 08/01/01 * * * * * & acept 2 17: accept, adept * & bda 9 26: Ada, baa, bad, bea, bida, boa, bra, FDA, Ida & lueck 1 30: luck into a line of blanks and misspelled words: acept bda lueck which can then be fed into another ispell -a instance. The final output would be returned to emacs. The pipe would look like: ispell -a -d language-1 | fixispell-a | ispell -a -d language-2 In fact, this script is so easy I think I'll whip it up right now. It's called fixispell-a, and it will be in the next ispell release. Here it is: #!/bin/sh # # $Id: fixispell-a,v 1.1 2005/01/18 13:48:52 geoff Exp geoff $ # # Copyright 2005, Geoff Kuenning, Claremont, CA. # All rights reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # 1. Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # 2. Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # 3. All modifications to the source code must be clearly marked as # such. Binary redistributions based on modified source code # must be clearly marked as modified versions in the documentation # and/or other materials provided with the distribution. # 4. The code that causes the 'ispell -v' command to display a prominent # link to the official ispell Web site may not be removed. # 5. The name of Geoff Kuenning may not be used to endorse or promote # products derived from this software without specific prior # written permission. # # THIS SOFTWARE IS PROVIDED BY GEOFF KUENNING AND CONTRIBUTORS ``AS IS'' AND # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE # ARE DISCLAIMED. IN NO EVENT SHALL GEOFF KUENNING OR CONTRIBUTORS BE LIABLE # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS # OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # # Take the output of "ispell -a" and turn it into a line that can be # fed into another "ispell -a" instance. # # Usage: # USAGE='Usage: ispell -a <ispell-switches> | fixispell-a | ispell -a ...' # # BUGS: # # This script is probably not portable to older systems. # # $Log: fixispell-a,v $ # Revision 1.1 2005/01/18 13:48:52 geoff # Initial revision # case "$#" in 0) ;; *) echo "$USAGE" 1>&2 exit 2 ;; esac awk 'NR == 1 \ { next } NF == 0 \ { print line line = "" next } $1 == "*" || $1 == "+" || $1 == "-" \ { next } $1 == "&" || $1 == "?" || $1 == "#" \ { if ($1 == "#") offset = $3 + 0 else offset = substr($4, 1, length($4) - 1) + 0 if (length(line) < offset) line = sprintf("%s%*s", line, offset - length(line), "") line = line $2 next } { print "fixispell-a: unrecognized ispell input line" $0 > "/dev/stderr" exit(2) }' -- Geoff Kuenning [EMAIL PROTECTED] http://www.cs.hmc.edu/~geoff/ If a person is obviously mentally disabled, such as having Down's syndrome or Alzheimer's, decent people exercise sympathy and understanding in their interactions. So why, if someone merely has a low IQ, is he treated with ridicule and contempt? -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]