Invoqué "shell" que ejecuta correctamente cmd.exe y se ejecuta correctamente.
Sin embargo, cuando ejecuto bash desde ese shell, cada comando da un error
Microsoft Windows [Version 10.0.22000.739] (c) Microsoft Corporation.
All rights reserved.
c:\tools\Emacs\emacs-28.1>bash
bash
ll
bash: line 1: $'ll\r': command not found
bash: line 2: $'\r': command not found
El primer comando que escribí fue ll
. En el resultado del error, podemos ver que se está agregando "\r" a mi " ll
".
El segundo comando que escribí fue un simple ENTER. En la salida del error, podemos ver que se está agregando "\r" a mi "ENTER".
fuera de emacs: cuando invoco bash desde un shell cmd.exe, todo funciona como se esperaba.
El bash es de cygwin de 64 bits, si eso ayuda y estoy en Windows 11 Professional. El emacs fue creado para Windows nativo (no cygwin o WSL) desdehttp://gnu.bardia.tech/gnu/emacs/windows/emacs-28/emacs-28.1-installer.exe.
¿Cómo debería solucionar esto?
Respuesta1
Probablecausa:
Ese terminal envía CR+LF (" \r\n
" Windows/DOS/...) al final de línea,
Bash espera solo LF (por ejemplo, convención de Linux).
Vea si puede convencer a Cygwin-Bash para que filtre el \r
... No puedo decir si es posible.
Otra alternativa; hacer que emacs lance una terminal más "estándar"; por ejemplo rxvt
, de Cygwin.