ceci est un exemple intéressant d'une question de grande liste . Il semble que certaines personnes sur le site (y compris nous deux) aiment ce genre de question, alors que d'autres pas vraiment. Les résultats peuvent être vraiment variables selon la réponse du modérateur. J'ai commencé une discussion sur les méta à ce sujet, en référençant cette question comme un exemple meta.emacs.stackexchange.com/questions/305/…
Joe Corneli
Réponses:
31
M-x shellest l'interface standard du shell du système d'exploitation. Sous Linux, il appelle bash (ou quelle que soit votre valeur par défaut), sous Windows, il appelle cmd.exe. M-x shellest le plus utilisé.
M-x eshellest un shell écrit entièrement en lisp emacs. Il a une syntaxe similaire à bash, mais est bien intégré à elisp. par exemple, vous pouvez évaluer le code elisp là. Eshell est particulièrement utile sur Windows lorsque vous n'avez pas installé cygwin, etc.
M-x termet M-x ansi-termsont des émulations de terminaux, tout comme gnome-terminal, xterm, etc. La principale différence M-x shellest que, dans eshellou shell, les clés sont toujours des clés emacs, mais dans term, les clés emacs ne fonctionnent pas. Mais, l'avantage est que vous pouvez exécuter ssh, vim ou toute commande basée sur l'interface texte, qui ne fonctionnera pas dans M-x eshellou M-x shell.
termet ansi-termautrefois différents packages, mais maintenant ce sont 2 commandes différentes dans le même fichier term.el. Je ne les ai pas beaucoup utilisés. Vous pouvez trouver une réponse plus détaillée à ce sujet sur le wiki emacs .
msgstr "sont maintenant 2 commandes différentes du même fichier". Il peut y avoir un ou deux mots manquants.
Faheem Mitha
2
Bonne réponse. Un lien vers la page wiki mentionnée serait également bien.
Malabarba,
3
"Le shell Mx est le plus fréquemment utilisé" - je voudrais une citation ou des données pour soutenir cela, car je ne suis pas du tout convaincu que c'est vrai. De plus, cela n'ajoute rien de substantiel à la réponse. Bonne réponse sinon.
shosti
2
shosti, je n'ai pas de statistiques fiables. selon l'en-tête du fichier, shell est 1988. eshell est 1999. term.el est également 1988. eshell est principalement utilisé par les hackers elisp, donc c'est beaucoup moins que les utilisateurs d'emacs. Cela laisse coquille vs terme. Je pense que nous pouvons comparer leur mention dans les livres emacs, par exemple les 3 ou plus anciens d'O'Reilly. Ou la comparaison Google ... mais juste par expérience dans la communauté emacs, je pense que term / ansi-term est beaucoup moins utilisé.
Réponses:
M-x shell
est l'interface standard du shell du système d'exploitation. Sous Linux, il appelle bash (ou quelle que soit votre valeur par défaut), sous Windows, il appelle cmd.exe.M-x shell
est le plus utilisé.M-x eshell
est un shell écrit entièrement en lisp emacs. Il a une syntaxe similaire à bash, mais est bien intégré à elisp. par exemple, vous pouvez évaluer le code elisp là. Eshell est particulièrement utile sur Windows lorsque vous n'avez pas installé cygwin, etc.M-x term
etM-x ansi-term
sont des émulations de terminaux, tout comme gnome-terminal, xterm, etc. La principale différenceM-x shell
est que, danseshell
oushell
, les clés sont toujours des clés emacs, mais dansterm
, les clés emacs ne fonctionnent pas. Mais, l'avantage est que vous pouvez exécuter ssh, vim ou toute commande basée sur l'interface texte, qui ne fonctionnera pas dansM-x eshell
ouM-x shell
.term
etansi-term
autrefois différents packages, mais maintenant ce sont 2 commandes différentes dans le même fichier term.el. Je ne les ai pas beaucoup utilisés. Vous pouvez trouver une réponse plus détaillée à ce sujet sur le wiki emacs .Il y a plus d'informations sur mon blog .
la source