unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Michael Heerdegen <michael_heerdegen@web.de>
To: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: Sebastien Vauban <sva-news@mygooglest.com>, 14957@debbugs.gnu.org
Subject: bug#14957: 24.3.50; Flyspell language visible in mode line
Date: Tue, 17 Sep 2013 18:47:50 +0200	[thread overview]
Message-ID: <87wqmfz96x.fsf@web.de> (raw)
In-Reply-To: <jwva9l9mmhk.fsf-monnier+emacs@gnu.org> (Stefan Monnier's message of "Fri, 26 Jul 2013 10:21:19 -0400")

Hi Stefan,

some comments:

> > I think it'd be great to see the language next to "Fly" in the mode
> > line.  For example, something such as "Fly[FR]" or "Fly[EN]".
>
> That'd be nice, especially if we make it active so that you can right
> click on it to select another language.
> Patches very welcome.

I think this should not be restricted to flyspell, I also want to know
the current dictionary before doing M-$ (`ispell-word'), for example.
For that purpose, I just add

,----------------------------------------------------------------------
| (:eval
|  (let ((dict (and (featurep 'ispell)
| 		  (or ispell-local-dictionary
| 		      ispell-dictionary))))
|    (and dict
| 	(concat " "
| 		(propertize (substring dict 0 2)
| 			    'face 'mode-line-shadow)))))
`----------------------------------------------------------------------

to `mode-line-format' (`mode-line-shadow' just shows it in gray).

About right clicking to select another language: I think most people
would want a handy command to toggle between two or three dictionaries
they frequently use.
For example, I'm a native German speaker.  When composing an Email, I
want to be able to switch between German and English dict with one key -
everything else is annoying.  I _never_ need any other dict.  Maybe
that's what most people would want to use?  I use this code for that:

--8<---------------cut here---------------start------------->8---
(setq-default flyspell-default-dictionary "american")

(defun my-ispell-toggle-dictionary ()
  (interactive)
  "Toggle local dictionary between German and American."
  (require 'ispell)
  (pcase (or ispell-local-dictionary ispell-dictionary)
    (`"american" (ispell-change-dictionary "deutsch-alt8"))
    (_           (ispell-change-dictionary "american")))
  (force-mode-line-update))

(defun my-flyspell-toggle-dictionary ()
  "Toggle local dictionary.
Turn on `flyspell-mode' if off."
  (interactive)
  (my-ispell-toggle-dictionary)
  (ignore-errors
    (when flyspell-mode (flyspell-buffer))))
--8<---------------cut here---------------end--------------->8---


Regards,

Michael.





  reply	other threads:[~2013-09-17 16:47 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-26 12:59 bug#14957: 24.3.50; Flyspell language visible in mode line Sebastien Vauban
2013-07-26 14:21 ` Stefan Monnier
2013-09-17 16:47   ` Michael Heerdegen [this message]
     [not found]     ` <87wqmfz96x.fsf-S0/GAf8tV78@public.gmane.org>
2013-11-08 20:46       ` Sebastien Vauban
2013-11-08 21:30         ` Michael Heerdegen
2020-09-18 14:19           ` Lars Ingebrigtsen
2020-09-18 15:00             ` Michael Heerdegen
2020-09-18 15:10               ` Lars Ingebrigtsen
2020-09-18 15:45                 ` Eli Zaretskii
2020-09-19 14:01                   ` Lars Ingebrigtsen
2020-09-19 14:43                     ` Eli Zaretskii
2020-09-19 22:31                     ` Michael Heerdegen
2020-09-19 22:34                       ` Lars Ingebrigtsen
2020-09-18 16:17                 ` Michael Heerdegen
     [not found]         ` <mailman.5609.1383955137.10748.bug-gnu-emacs@gnu.org>
     [not found]           ` <mailman.5609.1383955137.10748.bug-gnu-emacs-mXXj517/zsQ@public.gmane.org>
2013-11-12 13:29             ` Sebastien Vauban
2013-11-14  0:03               ` Michael Heerdegen
     [not found]               ` <mailman.6021.1384387520.10748.bug-gnu-emacs@gnu.org>
2013-11-14 10:41                 ` Sebastien Vauban
2013-11-14 19:05                   ` Stefan Monnier
2014-01-14  8:58           ` Sebastien Vauban
2014-01-14 15:31             ` Michael Heerdegen
2014-01-14 17:04             ` Glenn Morris
     [not found]             ` <mailman.11900.1389713605.10748.bug-gnu-emacs@gnu.org>
2014-01-14 17:32               ` Sebastien Vauban
2014-01-14 21:33                 ` Stefan Monnier
2014-01-15 13:44                   ` Michael Heerdegen
2014-01-15 15:23                     ` Stefan Monnier
     [not found]                 ` <mailman.11946.1389735261.10748.bug-gnu-emacs@gnu.org>
     [not found]                   ` <mailman.11946.1389735261.10748.bug-gnu-emacs-mXXj517/zsQ@public.gmane.org>
2014-01-15 10:13                     ` Sebastien Vauban
     [not found]               ` <mailman.11900.1389713605.10748.bug-gnu-emacs-mXXj517/zsQ@public.gmane.org>
2014-01-14 18:12                 ` Sebastien Vauban
     [not found]             ` <mailman.11912.1389719107.10748.bug-gnu-emacs@gnu.org>
     [not found]               ` <mailman.11912.1389719107.10748.bug-gnu-emacs-mXXj517/zsQ@public.gmane.org>
2014-01-15 10:42                 ` Sebastien Vauban

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87wqmfz96x.fsf@web.de \
    --to=michael_heerdegen@web.de \
    --cc=14957@debbugs.gnu.org \
    --cc=monnier@iro.umontreal.ca \
    --cc=sva-news@mygooglest.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).