Mail Archives: djgpp/1997/05/01/06:35:02
On Wed, 30 Apr 1997, Federico Hernandez-Pueschel wrote:
> I want to use M-x shell, but I get this error-message:
> Multi-processing is not supported for this system
>
> What do I have to do to so that I can use M-x shell and get rid
> of that error message.
You can't, sorry. `M-x shell' needs to run the shell as an
asynchronous child process of Emacs, and these aren't supported in the
DOS version, as you might expect. (Check out the MS-DOS chapter in
the Emacs on-line manual, it tells you a bit more about things that
work and those which don't.)
Work-arounds:
1. Use `C-x C-z' (`suspend-emacs') command. This shells you
out to DOS; after you are done, type "exit RET" and you are back
inside Emacs.
2. Open another DOS box window and do all your shell
operations there. Emacs supports the Windows clipboard (every text
you kill, a.k.a. cut, goes into the clipboard automagically, and every
yank, a.k.a. paste, checks the clipboard also), so you have some
ability to move material between these two windows, if you need.
3. For running non-interactive shell commands (or any other
programs, for that matter), use the `M-x compile' command (for running
a compiler or Make) or the `shell-command' (`M-!') and
`shell-command-on-region' commands (`M-|') commands, for running other
non-interactive programs. The latter passes a portion of buffer text
to the command you invoke and can optionally replace that portion by
the output of the program you invoke.
``Non-interactive'' here means programs that don't need any *input*
from you, because any *output* from the program (both stdout and
stderr) is caught by Emacs and displayed in a buffer after the program
exits.
- Raw text -