Uruchamianie Cygwin Inferior Shell w Emacs

3

Biegam Cygwin jako gorsza powłoka w Emacs . Oto podstawowy krok, który wykonuję:

  • C-u Powłoka M-x (zmień nazwę bufora na cygwin)
  • cd cygwin
  • cygwin.bat

Oto co widzę:

C:\cygwin>cygwin
cygwin
]0;~
[32muser1@mymachine [33m~[0m
$

Jeśli uruchomię cygwin.bat poza emacsem, to daje mi to:

user1@mymachine ~
$

Mógłbym prawie poradzić sobie z dodatkowymi postaciami, ale kiedy próbuję, oto rezultat:

$ ls
bash: $'ls\r': command not found

Muszę coś zrobić źle. Jakieś sugestie?

EDYCJA: M-x ansi-color-for-comint-mode-on naprawił monit, ale system nadal nie jest w stanie zdekodować polecenia ls.

User1
źródło

Odpowiedzi:

4

Oto poprawka na śmieci z linii Unix: http://osdir.com/ml/emacs.windows/2007-12/msg00007.html

Zasadniczo po prostu uruchom:

M-x set-buffer-process-coding-system

z niezdecydowanymi uniksowymi i niezdecydowanymi parametrami unixowymi.

Zmień także monit o:

export PS1="\[\e[32m\]\u@\h \[\e[33m\]\w\[\e[0m\]\n\$"

Domyślny PS1 powoduje brzydkie błędy.

User1
źródło