unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: "Sebastien Vauban" <sva-news-D0wtAvR13HarG/iDocfnWg@public.gmane.org>
To: Michael Heerdegen <michael_heerdegen-S0/GAf8tV78@public.gmane.org>
Cc: 14957-ubl+/3LiMTaZdePnXv/OxA@public.gmane.org
Subject: bug#14957: 24.3.50; Flyspell language visible in mode line
Date: Tue, 12 Nov 2013 14:29:57 +0100	[thread overview]
Message-ID: <86bo1ppx2i.fsf@somewhere.org> (raw)
In-Reply-To: <mailman.5609.1383955137.10748.bug-gnu-emacs-mXXj517/zsQ@public.gmane.org> (Michael Heerdegen's message of "Fri, 08 Nov 2013 22:30:31 +0100")

Hello Michael,

Michael Heerdegen wrote:
>> (add-to-list 'mode-line-format
>>              '(:eval
>>                (let ((dict (and (featurep 'ispell)
>>                                 (or ispell-local-dictionary
>>                                     ispell-dictionary))))
>>                  (and dict
>>                       (concat " ["
>>                               (propertize (substring dict 0 2)
>>                                           'face 'mode-line-highlight)
>>                               "]"))))
>
> That's not good.  `mode-line-format' "automatically becomes buffer-local
> when set" (see C-h v).  Your `add-to-list' only manipulates the
> `mode-line-format' of the current buffer when your code is evaluated
> (*scratch*, probably).
>
> You have to modify the default value, like this:
>
> (setq-default mode-line-format
> 	      (cons
> 	       '(:eval
> 		 (let ((dict (and (featurep 'ispell)
> 				  (or ispell-local-dictionary
> 				      ispell-dictionary))))
> 		   (and dict
> 			(concat " ["
> 				(propertize (substring dict 0 2)
> 					    'face 'mode-line-highlight)
> 				"]"))))
> 	       (default-value 'mode-line-format)))
>
> Does that help?

Yes, it does.

However, I still wonder how to put the language indicator at the *end* of the
modeline -- I tried this at first, but I'm now sure it's not a good idea.

We can't do that by inverting the two components in the above cons expression.
And it seems I'm not yet bilingual enough in Lisp...

FYI, there is one minor annoyance; I'd like to see the language indicator only
where it makes sense, that is NOT in (almost) every buffer. For example, I do
see "fr" (my default dictionary) in the Emacs manuals, which is twice wrong:

- they're in English, and
- they're read-only...

I guess the read-only feature is the way to specify (in an automatic way) the
visibility (by default) of that feature. WDYT?  In such a case, we simply have
to add a condition in the above "and" expression.

Best regards,
  Seb

-- 
Sebastien Vauban





  parent reply	other threads:[~2013-11-12 13:29 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
     [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 [this message]
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=86bo1ppx2i.fsf@somewhere.org \
    --to=sva-news-d0wtavr13harg/idocfnwg@public.gmane.org \
    --cc=14957-ubl+/3LiMTaZdePnXv/OxA@public.gmane.org \
    --cc=michael_heerdegen-S0/GAf8tV78@public.gmane.org \
    /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).