Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Erreur au sujet de font-lock-mode (version 22.0.50.1)

4 réponses
Avatar
Denis Bitouzé
Bonjour,

je viens de passer à  la version 22.0.50.1 d'emacs (pour tester ce que
propose Ph. Ivaldi... euh d'ailleurs ça ne fonctionne toujours pas)
et j'ai systématiquement un message d'erreur au lancement :

Toggling font-lock-mode off; better pass an explicit argument.

La seule chose que j'ai trouvée à  ce sujet dans mon .emacs est ce que
j'ai piqué à  Matthieu Moy :

(font-lock-mode t)
(global-font-lock-mode t)
(setq font-lock-maximum-decoration 5)

Merci à  celui qui m'aidera à  trouver une solution.
--
Denis

4 réponses

Avatar
Matthieu Moy
Denis Bitouzé writes:

La seule chose que j'ai trouvée à  ce sujet dans mon .emacs est ce que
j'ai piqué à  Matthieu Moy :



C'est malin de me dénoncer !

(font-lock-mode t)
(global-font-lock-mode t)



Normalement, il faut mettre un 1 à la place du t, mais ça devrait
marcher quand même.

A mon avis, tu as un autre (font-lock-mode) quelque part dans ton
.emacs.el.

--
Matthieu
Avatar
Ph. Ivaldi
Le 02 septembre 2006 à 10h28:17,
Denis Bitouzé écrivit :

Bonjour,

je viens de passer à  la version 22.0.50.1 d'emacs (pour tester ce que
propose Ph. Ivaldi... euh d'ailleurs ça ne fonctionne toujours pas)



C'est vraiment bizarre.
J'ai testé sous Emacs 21.4.1 et ça fonctionne aussi.
Le fonctionnement me paraît parfois étrange si la sélection d'une région
se fait avec C-SPCE mais comme j'utilise exclusivement
Shift-up/Down/Right/Left, je ne sais pas me servir de C-SPCE.
Que ce passe-t-il exactement, il doit bien y avoir un message?

Peux tu essayer ceci:

$ emacs-snapshot -q ou emacs -q

Copie/Colle le code suivant dans le buffer *scratch*:

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(require 'pc-select)
(pc-bindings-mode)
(pc-selection-mode t)

(defun my-?comment-region ()
(save-excursion
(let ((r-b (region-beginning))
(r-e (region-end)))
(funcall
(if (progn
(goto-char r-b)
(beginning-of-line)
(looking-at (format "s-*%s" (regexp-quote comment-start))))
(function uncomment-region)
(function comment-region))
r-b r-e))))

(defun my-?comment ()
(interactive)
(save-excursion
(if mark-active
(my-?comment-region)
(funcall
(if (progn
(beginning-of-line)
(looking-at (format "s-*%s" (regexp-quote comment-start))))
(function uncomment-region)
(function comment-region))
(progn (beginning-of-line) (point))
(progn (end-of-line) (point))))))

(global-set-key [(control %)] 'my-?comment)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

Ensuite M-x eval-buffer <RET>
Sélectionne une région avec Shift-Down puis utilise C-%
et C-% sur une ligne déjà commentée.
Ça doit fonctionner! Ça va fonctionner!

et j'ai systématiquement un message d'erreur au lancement :

Toggling font-lock-mode off; better pass an explicit argument.

La seule chose que j'ai trouvée à  ce sujet dans mon .emacs est ce que
j'ai piqué à  Matthieu Moy :

(font-lock-mode t)
(global-font-lock-mode t)
(setq font-lock-maximum-decoration 5)



Moi j'ai ça:

;;; active la coloration pour tous les modes
(require 'font-lock)
(setq-default font-lock-maximum-decoration t)
(if (fboundp 'global-font-lock-mode)
(global-font-lock-mode 1))

mais si ça marche aussi bien que my-?comment chez toi, on
n'est pas sorti de l'auberge.
--
Philippe Ivaldi.
Avatar
Olivier
Denis Bitouzé a écrit :
[...]
Toggling font-lock-mode off; better pass an explicit argument.



Ce n'est pas un message d'erreur :-)
La fonction font-lock-mode admet un argument optionnel. Si cet
argument est omis, cette fonction fonctionne comme un commutateur.
Mais comme les fichiers de configuration ont tendance a se multiplier
(entre le default.el, le site-start.el, le perso-de-los.el, le
.emacs, le .emacs.d/..., le .gnu.emacs), avec les tentatives de
configuration automatique, le resultat n'est pas toujours celui
souhaite. Ca comute, ca commute et le resultat n'est pas toujours
celui demande :-)

Il vaut mieux passer
(font-lock-mode 1) pour le mettre en route et
(font-lock-mode -1) pour le demettre.

La seule chose que j'ai trouvée à ce sujet dans mon .emacs est ce que
j'ai piqué à Matthieu Moy :

(font-lock-mode t)



C'est un peu choquant pour un puriste :-p
En fait, voila : font-lock est un mode mineur (il est en second
dans des modes majeurs. Les modes majeurs sont plus contraignants,
ce sont eux qui disent si on code du lisp, du c, si on ecrit du tex,
ou si on joue a gomoku. La couleur s'*ajoute*).
Et dans ce cas, la convention veut que l'argument soit numerique,
0 ---> on


<= 0 ---> off.
Evidemment, comme en c, t==1 et nil==0 est la convention utilisee,
mais ce n'est pas tres lispant :-p

Bref, tu as un argument explicite dans ton .emacs (t) mais il
y a peut etre un .gnu.emacs, un .custom.el ou un repertoire
.emacs.d.

Comme le chargement n'est pas synchrone, c'est un peu dur
a detecter.

(global-font-lock-mode t)



La c'est t :-p Mais puisque que tu lui dis de le faire automatiquement
dans tous les modes, pourquoi mettre (font-lock-mode t) ???

(setq font-lock-maximum-decoration 5)



Je ne savais que c'etait Noel :-p Nan, c'est bien, mais ca va
colorier zun max ! (Sauf qu'en fait la majorite des mode n'ont
que trois niveaux de coloration, avec 5, on est peinard, ensuite
on enleve ce qui derange.)

Merci à celui qui m'aidera à trouver une solution.



Voila. Essaye en otant l'appel a font-lock-mode, je
n'ai pas la 22 sous la main. Si tout cela ne fonctionne pas,
tant pis, regardes la barre de menu X, ya un "option",
coche le global-font-lock-mode et sauve la valeur.

Amities,
Olivier
Avatar
Romain Francoise
Denis Bitouzé writes:

je viens de passer à la version 22.0.50.1 d'emacs (pour tester ce que
propose Ph. Ivaldi... euh d'ailleurs ça ne fonctionne toujours pas)
et j'ai systématiquement un message d'erreur au lancement : [...]



Outre ce qui a déjà été dit dans ce fil, note que font-lock mode est
activé par défaut dans Emacs 22 donc cette partie de ton ~/.emacs
devient inutile.

--
Romain Francoise | The sea! the sea! the open
it's a miracle -- http://orebokech.com/ | sea! The blue, the fresh, the
| ever free! --Bryan W. Procter