[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: OT: mutt/nano spell checking



On Mon, Oct 05, 2009 at 06:19:46AM EDT, Tony Baldwin wrote:

> Vim's keybindings are completely insane and non-intuitive.  I've never
> once made sense of how to use the darned thing in a decade of  using
> gnu/linux.  

'p' for 'paste' does strike me as rather more intuitive than Ctrl-V.

But nothing stops you from remapping Vim's key bindings to suit your
requirements - or to save yourself a giant headache, install something
like this:

  http://www.vim.org/scripts/script.php?script_id=300

Naturally, you could also consider giving "true" Vim a second chance.

Never mind switching languages on the fly, the 2.0 version of nano that
ships with debian "lenny" does not even let you change the default key
bindings. ;-)

To whet your appetite:

  http://vimdoc.sourceforge.net/htmldoc/spell.html

[..]

> I just want to be able to change languages on-the-fly, so to speak,
> when using nano to write mails. (icedove, for instance, allows
> altering the language with a click on a drop-down menu, and gmail's
> online interface does the same).  I have it working with aspell in the
> default English.  That was cake.

My bad.. Actually, mutt _does_ let you invoke an external spell checker
but only when you're about to send your message. 

So you could try adding something like this to your .muttrc:

#-----------------------------------------------------------------------
set   my_br='aspell -c -l pt-br'
set   my_de='aspell -c -l de'
set   my_en='aspell -c -l en'
set   my_es='aspell -c -l es'
set   my_fr='aspell -c -l fr'
set   my_it='aspell -c -l it'
set   my_pt='aspell -c -l pt-pt'

macro generic "<f3>" "<enter-command>set ispell='$my_br'<enter><ispell>"
macro generic "<f4>" "<enter-command>set ispell='$my_de'<enter><ispell>"
macro generic "<f5>" "<enter-command>set ispell='$my_en'<enter><ispell>"
macro generic "<f6>" "<enter-command>set ispell='$my_es'<enter><ispell>"
macro generic "<f7>" "<enter-command>set ispell='$my_fr'<enter><ispell>"
macro generic "<f8>" "<enter-command>set ispell='$my_it'<enter><ispell>"
macro generic "<f9>" "<enter-command>set ispell='$my_pt'<enter><ispell>"
#-----------------------------------------------------------------------

Not thoroughly tested, but appears to work on my system & mutt version.

Compose and save, and prior to hitting 'y' to send your message, hit one
of the F3-F9 function keys to launch aspell with the language set to one
of the above.

Maybe you could come up with a macro that binds a single key to all the
defined languages and lets you cycle through them, while displaying the
current selection, but I'd rather leave it at that for now. ;-)

A different approach would be to write macros that set the value of the
mutt $editor variable like so:

set   my_br='SPELL="aspell -l pt-br -c" nano'         # Português (br)
set   my_fr='SPELL="aspell -l fr    -c" nano'         # Français  

macro generic "<f3>" "<enter-command>set editor='$my_br'<enter>"
macro generic "<f4>" "<enter-command>set editor='$my_fr'<enter>"
 
..

This would cause nano to be launched with the language set to Brazilian
Portuguese (F3) or French (F4).. for all ensuing message composition,
letting you access all features of the spell checker _while_ composing
your message.

HTH

CJ



Reply to: