J'ai une question sur Emacs Lisp. Quelle est la différence entre setq et setq-default ?
Les didacticiels indiquent que setq prend effet dans le tampon local tandis que setq-default affecte tous les tampons.
Par exemple, si j'ai écrit (setq a-var a-vars-value) dans init.el , j'ai trouvé après le démarrage d'Emacs et l'ouverture d'un nouveau tampon, le a-var est également là et sa valeur est a-vars-value . Je pensais que ce n'était pas censé être là. Il semble qu'il n'y ait aucune différence entre setq et setq-default .
Y a-t-il quelque chose qui ne va pas avec ma compréhension?
Par exemple:
J'ai écrit (setq hello 123) dans le fichier init.el , et j'exécute emacs abuffer dans le shell, puis j'entre "hello Cx Ce" , il montre "123". La même chose se produit lorsque je l'exécute dans tous les nouveaux tampons.
J'ai écrit (setq tab-width 4) dans le fichier init.el. Lorsque j'exécute Cx Ce de largeur de tabulation , il affiche "8" (le mode actuel est "Texte"). Cependant, lorsque j'utilise (setq-default tab-width 4) , il affiche "4". Je ne peux pas expliquer ce phénomène.