Je pense que vous devez montrer plus de contexte sur l'erreur - où elle est déclenchée, etc. Il n'y a rien de mal avec le sexp de backquote que vous montrez, pour ce que j'en sais. Et aucune relation, je m'attends, avec les différences entre MS Windows et Unix. La question est de savoir comment les nouvelles valeurs résultantes de ces variables sont utilisées. Autrement dit, vérifiez (a) si les nouvelles valeurs sont celles que vous avez prévues, et si c'est le cas, (b) pourquoi elles ne semblent pas être ce que le code qui les utilise attend.
Commencez par définir debug-on-error sur t, pour voir où l'erreur est déclenchée et pourquoi. Chargez le code *.el pour ce fichier (définissant la fonction où l'erreur est déclenchée) pour améliorer la trace du débogueur.
Mais la plainte semble venir du traitement de backquote lui-même. Que se passe-t-il lorsque vous évaluez l'un de ces sexps setq
seul, par exemple en utilisant M-:
ou le tampon *scratch*
? Obtiens-tu l'erreur alors? Si non, quelle est la nouvelle valeur de la variable résultante?
Une autre chose à essayer, si vous obtenez l'erreur même en dehors de votre .emacs
, est d'envelopper votre sexp setq
dans (macroexpand ...)
et voir quel est le résultat.