| From: Dave Anderson <anderson(a)redhat.com>
|
| Chip Coldwell wrote:
| > On Tue, 3 Jul 2007, D. Hugh Redelmeier wrote:
| > >==> It does not say in what way the terminal is not fully
| > >functional. That seems like a bug.
| > Well, the issue is that the emacs terminal emulator does not fully
| > support the [n]curses escape sequences needed to position the cursor
| > for your pager (e.g. less).
The whole point of termcap/terminfo is to tame the whacky world of
terminal diversity. There is nothing "wrong" with a terminal that
does not have features needed by less(1).
In fact less(1) would almost never be useful within an emacs/jove
terminal window even if it did work: emacs/jove has more appropriate
facilities built in.
The same goes for readline within an emacs/jove terminal.
| I would think the easiest way to deal with this issue would be
| to not allow crash to use "less" if the TERM type is "vanilla".
| And if it is vanilla, fall back to using "more", which is what
| is done now if "less" doesn't exist on the host system.
The name of an entry in termcap/terminfo is not supposed to be
material. One is supposed to make decisions based on the declared
attributes.
Unfortunately, less(1) does not document what capabilities it
requires: neither in the man page nor in the warning messages. I
don't care enough to read the source code, and in any case anything
learned there would be provisional since it isn't part of the
"contract".
Getting crash entagled with termcap/terminfo on behalf of less(1) is
probably a bad idea. Mind you, I expect crash already is involved
with termca/terminfo through using readline (I've not checked).
I suspect that the current situation is probably better than trying to
fix it. A simple "set scroll off" cures the problem for a run.
Making this clear in documentation would be a modest improvement.
Is there a simple way of turning off readline? To make the problem
harder: I want to do it some times (i.e. when running crash under jove)
but not at others (i.e. when running crash directly in an xterm).
Here is a proposed patch to the man page.
===================================================================
RCS file: RCS/crash.8,v
retrieving revision 1.1
diff -u -r1.1 crash.8
--- crash.8 2007/07/09 15:41:55 1.1
+++ crash.8 2007/07/09 18:16:56
@@ -5,7 +5,7 @@
.TH CRASH 8
.SH NAME
crash \- Analyze Linux crash data or a live system
-.SH SYNAPSIS
+.SH SYNOPSIS
.B crash
[
.B -h
@@ -44,7 +44,7 @@
core dump has been created by the Red Hat
.I netdump
facility. It is loosely based on the SVR4 UNIX crash
-command, but has been signficantly enhanced
+command, but has been significantly enhanced
by completely merging it with the
.I gdb
debugger. The marriage of the two effectively combines the
@@ -207,11 +207,11 @@
.I dis
disassembles memory, either entire kernel functions, from a
location for a specified number of instructions, or from the start of a
-fuction up to a specified memory location.
+function up to a specified memory location.
.TP
.I eval
evalues an expression or numeric type and displays the result
-in hexidecimal, decimal, octal and binary.
+in hexadecimal, decimal, octal and binary.
.TP
.I exit
causes
@@ -230,7 +230,7 @@
in the system.
.TP
.I fuser
-displays the tasks using the specifed file or socket.
+displays the tasks using the specified file or socket.
.TP
.I gdb
passes its argument to the underlying
@@ -274,7 +274,7 @@
display various network related data.
.TP
.I p
-passes its argumnts to the
+passes its arguments to the
.I gdb
"print" command for evaluation and display.
.TP
@@ -361,11 +361,54 @@
.I wr
modifies the contents of memory. When writing to memory on
a live system, this command should obviously be used with great care.
+.SH FILES
+.TP
+.I ~/.crashrc
+initialization commands
+.SH ENVIRONMENT
+.TP
+.B EDITOR
+Command input is read using
+.BR readline(3).
+If
+.B EDITOR
+is set to
+.I emacs
+or
+.I vi
+then suitable keybindings are used. This can be overridden by ``\fBset\ vi\fP''
+or ``\fBset\ emacs\fP'' commands, but only in
+.IR ~/.crashrc .
+.SH NOTES
+.PP
+If
+.B crash
+does not work, look for a newer version: kernel evolution frequently makes
+.B crash
+updates necessary.
+.PP
+The command ``\fBset\ scroll\ off\fP'' will cause output to be sent directly to
+the terminal rather than through a paging program. This is useful,
+for example, if you are running
+.B crash
+in a window of
+.BR emacs .
.SH AUTHOR
Dave Anderson <anderson(a)redhat.com> wrote
.B Crash
.TP
Jay Fenlason <fenlason(a)redhat.com> wrote this man page.
.SH "SEE ALSO"
-netdump(8)
-gdb(1)
+.PP
+The
+.B help
+command within
+.B crash
+provides more complete and accurate documentation than this manpage.
+.TP
+.I
http://people.redhat.com/anderson/
+The home page of
+.IR crash .
+.PP
+.BR netdump (8),
+.BR gdb (1)
================ end ================