I have some trouble with the Terminal from Emacs, when I try do simply
man ls,
The shell of Emacs gives me,
WARNING: terminal is not fully functional
This is quite disturbing. Anyone knows how to get out of this warning plz?
Thanks.
By "the shell of Emacs" do you mean "M-x shell" command? If so, the
warning is correct, "M-x shell" is not terminal at all, it's a kind of
repeated shell command prompt. If you need a terminal inside Emacs use
"M-x term".
You are totally right. Thanks a lot.
How ever, another question plz.
There are 3 shells now for emacs
shell (activated by esc-x shell)
term
eshell
what are their difference? Which one you recommand?
Apparently, shell has some worry with man, esp. i don't like shell
because under shell, if you tape, "echo $Term" it gives
TERM = dumb,
if I understand well, dumb means stupid in English, so shell is actually
laught at the user...
As others have said, M-x term is more functional.
BUT
to read man pages while in Emacs, type M-x man <ret>
and then the name of the man page.
"Dumb" here means that the terminal does not support cursor-movement
commands. These allow the program running in the shell to draw
characters at arbitrary locations on the screen, and is used to
create TUI interfaces, see http://en.wikipedia.org/wiki/Text_user_interface.
HTH,
Colin S. Miller
--
Replace the obvious in my email address with the first three letters of the hostname to reply.
> Apparently, shell has some worry with man,
GNU Emacs provides the commands manual-entry and woman. You don't
have to invoke man on the command line. So the *shell* buffer is just
fine and preferred over the others.
--
Greetings
Pete
There's no sense in being precise when you don't even know what
you're talking about.
– John von Neumann
If you are talking about shell-mode, your partially out of luck. Shell
mode is a simple command line shell that lacks the full functionality of
a normal terminal shell - its more a 'dum' terminal and does not support
things like ANSI escape characters that are used to do terminal I/O for
programs such as those based on curses etc.. Essentially, it is the wrong tool.
You can try M-x term and you will get a more ansi equivalent
terminal. However, for browsing man pages, you are much better off using
either M-x man or M-x woman.
If M-x term still doesn't work, check out the emacs references. There is
a terminfo file provided in the /etc directory of the emacs distribution
whihc you can setup on your system to get full terminal support.
Tim
--
tcross (at) rapttech dot com dot au
>> By "the shell of Emacs" do you mean "M-x shell" command? If so, the
>> warning is correct, "M-x shell" is not terminal at all, it's a kind of
>> repeated shell command prompt. If you need a terminal inside Emacs use
>> "M-x term".
>
> You are totally right. Thanks a lot.
>
> How ever, another question plz.
>
> There are 3 shells now for emacs
> shell (activated by esc-x shell)
> term
> eshell
>
> what are their difference? Which one you recommand?
>
Emacs has had these three 'shell' environments since emacs 21 (two of
them were in emacs 20 as well).
Like many things in emacs, the answer to the question "Which is the best
to use" depends on what it is you want to do. There is no one answer to
this question.
M-x shell is great if you just want to execute simple commands at a
shell prompt, especially commands that do not require 'advanced' I/O
such as screen formatting or addressing different locations on the
screen.
M-x term provides a more sophisticated shell terminal that does support
advanced I/O. However, it can be a bit slower than M-x shell and has
some slightly different key bindings, such as character mode an dline
mode. This is the shell to use if you wanted to run something like lynx
or mutt etc.
M-x eshell is a shell written in emacs lisp. This is a very powerful
shell if you know emacs lisp as you can write small bits of elisp and
have them evaluated by the shell. However, it has som elimitations - for
example, it doesn't handle redirection as well as normal shells and can
give some unusual/unexpected results if you run something like a bash
script that relies on redirection and piping of output/input
etc. Despite these weaknesses, it can be a great little shell to hack
around in because you get the power of elisp and you can write new
eshell funcions easily (if you know elisp).
I tend to use M-x shell and M-x eshell. However, I also tend to use
built-in emacs facilities over running some other program in an emacs
terminal. for example, using M-x man/M-x woman to browse man pages,
using perldoc mode to work with perl PODs, usiing a native emacs mail
reader rather than mutt, using M-x procd to examine processes rather
than top etc
| July <zel...@orange.fr> writes:
>
| >> By "the shell of Emacs" do you mean "M-x shell" command? If so, the
| >> warning is correct, "M-x shell" is not terminal at all, it's a kind of
| >> repeated shell command prompt. If you need a terminal inside Emacs use
| >> "M-x term".
| >
| > You are totally right. Thanks a lot.
| >
| > How ever, another question plz.
| >
| > There are 3 shells now for emacs
| > shell (activated by esc-x shell)
| > term
| > eshell
| >
| > what are their difference? Which one you recommand?
| >
Well, there is M-x ansi-term too; I don't know in what respect it is
different from term, but I have always preferred it to others since I gave
it a try.
bye
--
Jean
I really like multi-term (http://www.emacswiki.org/emacs/MultiTerm).
It's just a simple layer on top of term-mode, but makes it much more
usable IMHO.
export PAGER=cat
Thanks, Andreas. What does this do, beside rid one of the warning?
> Andreas Politz writes:
>
> export PAGER=cat
>
> Thanks, Andreas. What does this do, beside rid one of the warning?
>
It makes man's output a continuous stream (like 'cat <file>') and you
would have to scroll page-wise...
--
Greetings
Pete
_o o o o
_<< \\_/\_, \\_ \\_/\_,
(*)/(*) (*) (*) (*) `- (*)