Я новичок в Emacs и пытаюсь настроить emacs так, чтобы следующая команда могла открывать оболочку msysgit.
M-x bash-shell
Я добавил следующий фрагмент в свой init.el.
(defun bash-shell ()
"Run git bash in shell mode."
(interactive)
(let ((explicit-shell-file-name "C:/Dev/Apps/Git/bin/sh.exe")
(shell-file-name explicit-shell-file-name)
(explicit-sh.exe-args '("--login" "-i")))
(call-interactively 'shell)))
Вроде работает, но не так, как я ожидал. Начинается со следующего вывода.
Welcome to Git (version 1.8.4-preview20130916)
Run 'git help git' to display the help index.
Run 'git help <command>' to display help for specific commands.
Но затем застревает. Я могу, однако, вводить стандартные команды (например, ls, pwd, ...), но мой .bashrc, похоже, не выполняется. exit
Однако, когда я это делаю, он, кажется, либо запускается правильно, либо, по крайней мере, выполняет .bashrc, что меня очень сбивает с толку.
Welcome to Git (version 1.8.4-preview20130916)
Run 'git help git' to display the help index.
Run 'git help <command>' to display help for specific commands.
pwd
/c/Dev/Apps/Emacs/emacs-23.3/bin
uname
MINGW32_NT-5.1
ll
bash: line 3: ll: command not found
exit
laiwib@WZUR5250815 /c/D.A.E.e/emacs-23.3/bin $
В любом случае это не ведет себя так же, как если бы я запустил Git Bash на Windows.
C:\WINDOWS\system32\cmd.exe /c ""C:\Dev\Apps\Git\bin\sh.exe" --login -i"
что дает мне следующее
Welcome to Git (version 1.8.4-preview20130916)
Run 'git help git' to display the help index.
Run 'git help <command>' to display help for specific commands.
Agent pid 4384
laiwib@WZUR5250815 ~ (git::master) $ ll
total 16
drwxr-xr-x 1 laiwib Administ 0 Oct 21 2012 WINDOWS
drwxr-xr-x 1 laiwib Administ 0 Oct 23 2012 .eclipse
-rw-r--r-- 1 laiwib Administ 38 Oct 23 2012 .dbshell
...
Как заставить его вести себя как Git Bash без exit
ручного вызова?