Tengo algunos elementos en mi .emacs que no quiero ejecutar si ejecuté emacs -nw
. ¿Cómo puedo decir en elisp si ese es el caso?¿Cómo puedo saber en elisp si Emacs usa X?
(editado para cambiar -nox a -nw --- ¿dónde estaba mi cerebro?)
Tengo algunos elementos en mi .emacs que no quiero ejecutar si ejecuté emacs -nw
. ¿Cómo puedo decir en elisp si ese es el caso?¿Cómo puedo saber en elisp si Emacs usa X?
(editado para cambiar -nox a -nw --- ¿dónde estaba mi cerebro?)
Su respuesta anterior es correcta, aunque si se quiere diferenciar entre otros sistemas de ventanas y sólo desea ejecutar el código si está utilizando realmente X, que tendría que ir
(if (eq window-system 'X) (foo))
Creo que he encontrado mi propia respuesta:
(when window-system
(foo))
sólo se foo cuando estoy corriendo en X.
Deje de votar mi propia respuesta a mi pregunta --- la que acepté anteriormente es esencialmente la misma, ¡pero más completa! – JasonFruit
Todo bien --- ¿quién hizo eso?!?! – JasonFruit
Solo necesitamos un voto alternativo más ... –
Tenga en cuenta que la pregunta está mal concebida: Emacs puede ejecutarse con marcos tty y GUI al mismo tiempo.
La variable window-system
es "terminal-local", lo que significa que su valor dependerá de si el marco actualmente seleccionado es un marco tty o marco GUI.
Ni siquiera me había dado cuenta de que se podía hacer. ¡Fascinante! – JasonFruit
Aunque no necesito ese tipo de especificidad, esa es una mejor respuesta que la mía. ¡Gracias! – JasonFruit
Cuando estaba tratando de descubrir cómo deshabilitar el tema en modo solo ventana, terminé respondiendo a JasonFruit, pero realmente están entendiendo lo mismo. '(if (eq window-system 'X) (foo))' o '(si window-system (foo))' o '(when window-system (foo))' no hace la diferencia. Para aquellos interesados en los detalles, solo déjenme decirles "C-h a" es tu amigo. Al usarlo, busqué "variable" y encontré "describir-variable" y al usar esa tabulación más "plus" encontré la variable del sistema de ventana. Luego escribí 'window-system' en el búfer de scratch y luego lo probé –
Funcionarán igual si todo lo que te importa es si el sistema de ventanas es X o no, pero el valor de window-system puede ser un valor distinto de ' X. –