summaryrefslogtreecommitdiffstats
path: root/contrib/tcsh/FAQ
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/tcsh/FAQ')
-rw-r--r--contrib/tcsh/FAQ339
1 files changed, 193 insertions, 146 deletions
diff --git a/contrib/tcsh/FAQ b/contrib/tcsh/FAQ
index 1a530b0..59175c9 100644
--- a/contrib/tcsh/FAQ
+++ b/contrib/tcsh/FAQ
@@ -1,215 +1,262 @@
-Last Updated:
-Fri Aug 25 13:27:45 EDT 2000
+ [Home] FAQ
-This is for people who do not read the manual!
+ Home | RecentChanges | Preferences
+ _________________________________________________________________
-So far people who don't read manuals don't read this either... I may
-call it README.*PLEASE* in the future, but then the same people won't
-be able to get ftp it... :-)
+ This is for people who do not read the manual!
-1. Why is the meta key broken in tcsh-5.20 and up?
+ So far people who don't read manuals don't read this either... I may
+ call it README.*PLEASE* in the future, but then the same people won't
+ be able to get ftp it... :-)
+ _________________________________________________________________
- On some machines the tty is not set up to pass 8 bit characters by default.
- Tcsh 5.19 used to try to determine if pass8 should be set by looking at
- the terminal's meta key. Unfortunately there is no good way of determining
- if the terminal can really pass 8 characters or not. Consider if you are
- logged in through a modem line with 7 bits and parity and your terminal
- has a meta key. Then tcsh 5.19 would set wrongly set pass8.
+ 1. Why is the meta key broken in tcsh-5.20 and up?
- If you did like the previous behavior you can add in /etc/csh.login, or
- in .login:
+ On some machines the tty is not set up to pass 8 bit characters by
+ default. Tcsh 5.19 used to try to determine if pass8 should be set by
+ looking at the terminal's meta key. Unfortunately there is no good way
+ of determining if the terminal can really pass 8 characters or not.
+ Consider if you are logged in through a modem line with 7 bits and
+ parity and your terminal has a meta key. Then tcsh 5.19 would set
+ wrongly set pass8.
+
+ If you did like the previous behavior you can add in /etc/csh.login,
+ or in .login:
if ( $?tcsh && $?prompt ) then
- if ( "`echotc meta`" == "yes" ) then
- stty pass8
- endif
+ if ( "`echotc meta`" == "yes" ) then
+ stty pass8
+ endif
endif
- If you don't have pass8, maybe something like
+ If you don't have pass8, maybe one of these would work..
- stty -parity -evenp -oddp cs8 -istrip (rs6000)
- or
- stty -parenb -istrip cs8
-
- would work..
+ stty -parity -evenp -oddp cs8 -istrip (rs6000)
+ stty -parenb -istrip cs8
- Finally, tcsh will bind all printable meta characters to the self
- insert command. If you don't want that to happen (i.e. use the printable
- meta characters for commands) setenv NOREBIND.
+ Finally, tcsh will bind all printable meta characters to the self
+ insert command. If you don't want that to happen (i.e. use the
+ printable meta characters for commands) setenv NOREBIND.
+ _________________________________________________________________
-2. I ran 'dbxtool &' and 'shelltool &' from tcsh, and they end up in cbreak
- and no echo mode?
+ 2. I ran 'dbxtool &' and 'shelltool &' from tcsh, and they end up in
+ cbreak and no echo mode?
- These programs are broken. Background jobs should not try to look at the
- tty. What happens is that dbxtool looks in stderr to inherit the tty
- setups, but tcsh sets up the tty in cbreak and -echo modes, so that it
- can do line editing. This cannot be fixed because tcsh cannot give away
- the tty. A work-around is:
+ These programs are broken. Background jobs should not try to look at
+ the tty. What happens is that dbxtool looks in stderr to inherit the
+ tty setups, but tcsh sets up the tty in cbreak and -echo modes, so
+ that it can do line editing. This cannot be fixed because tcsh cannot
+ give away the tty. Pick one of the following as a workaround:
dbxtool < /dev/null >& /dev/null &
- or
/usr/etc/setsid dbxtool &
- If that does not work, for dbxtool at least you can add "sh stty sane"
- in your .dbxinit
+ If that does not work, for dbxtool at least you can add "sh stty sane"
+ in your .dbxinit
+ _________________________________________________________________
+
+ 3. I tried to compile tcsh and it cannot find <locale.h>?
+
+ Your system does not support NLS. Undefine NLS in config_f.h and it
+ should work fine.
+ _________________________________________________________________
+
+ 4. Where can I get csh sources?
-3. I tried to compile tcsh and it cannot find <locale.h>?
+ Csh sources are now available with the 4.4BSD networking
+ distributions. You don't need csh sources to compile tcsh-6.0x.
+ _________________________________________________________________
- Your system does not support NLS. Undefine NLS in config_f.h and it
- should work fine.
+ 5. I just made tcsh my login shell, and I cannot ftp any more?
-4. Where can I get csh sources?
+ Newer versions of the ftp daemon check for the validity of the user's
+ shell before they allow logins. The list of valid login shells is
+ either hardcoded or it is usually in a file called /etc/shells. If it
+ is hard-coded, then you are out of luck and your best bet is to get a
+ newer version of ftpd. Otherwise add tcsh to the list of shells. [For
+ AIX this file is called /etc/security/login.cfg.] Remember that the
+ full path is required. If there is no /etc/shells, and you are
+ creating one, remember to add /bin/csh, /bin/sh, and any other valid
+ shells for your system, so that other people can ftp too :-)
+ _________________________________________________________________
- Csh sources are now available with the 4.4BSD networking distributions.
- You don't need csh sources to compile tcsh-6.0x.
+ 6. I am using SunView? or OpenWindows? and editing is screwed up. In
+ particular my arrow keys and backspace don't work right. What am I
+ doing wrong?
-5. I just made tcsh my login shell, and I cannot ftp any more?
+ Well, cmdtool tries to do its own command line editing and the effect
+ you get is one of using an editor inside an editor. Both try to
+ interpret the arrow key sequences and cmdtool wins since it gets them
+ first. The solutions are in my order of preference:
- Newer versions of the ftp daemon check for the validity of the
- user's shell before they allow logins. The list of valid login
- shells is either hardcoded or it is usually in a file called
- /etc/shells. If it is hard-coded, then you are out of luck and
- your best bet is to get a newer version of ftpd. Otherwise add
- tcsh to the list of shells. [For AIX this file is called
- /etc/security/login.cfg]. Remember that the full path is required.
- If there is no /etc/shells, and you are creating one, remember to
- add /bin/csh, /bin/sh, and any other valid shells for your system,
- so that other people can ftp too :-)
+ 1. Don't use suntools
+ 2. Use shelltool instead of cmdtool.
+ 3. Unset edit in tcsh.
-6. I am using SunView/OpenWindows and editing is screwed up. In
- particular my arrow keys and backspace don't work right. What
- am I doing wrong?
+ 6b. On a SPARCstation running Solaris 2.x and OpenWindows? 3.1, inside
+ a cmdtool, the short-cut key sequence to clear log (i.e. Meta-e or
+ Diamond-e) doesn't work: it just echos 'e'
- Well, cmdtool tries to do its own command line editing and the
- effect you get is one of using an editor inside an editor. Both
- try to interpret the arrow key sequences and cmdtool wins since
- it gets them first. The solutions are in my order of preference:
+ 6c. On a SPARCstation running Solaris 2.x and OpenWindows? 3.1,
+ maketool (within SPARCworks) doesn't work: it just does a `cd' to the
+ working directory then stops.
- 1 Don't use suntools
- 2 Use shelltool instead of cmdtool.
- 3 Unset edit in tcsh.
+ The workaround for 6b and 6c is doing "unset edit." Using shelltool
+ instead of cmdtool doesn't fix 6c.
+ _________________________________________________________________
-6b. On a SPARCstation running Solaris 2.x and OpenWindows 3.1,
- inside a cmdtool, the short-cut key sequence to clear log
- (i.e. Meta-e or Diamond-e) doesn't work: it just echos 'e'
+ 7. I rlogin to another machine, and then no matter what I tell 'stty'
+ I cannot get it to pass 8 bit characters?
-6c. On a SPARCstation running Solaris 2.x and OpenWindows 3.1,
- maketool (within SPARCworks) doesn't work: it just does
- a `cd' to the working directory then stops.
+ Maybe you need to use 'rlogin -8' to tell rlogin to pass 8 bit
+ characters.
+ _________________________________________________________________
- The workaround for 6b and 6c is doing "unset edit."
- Using shelltool instead of cmdtool doesn't fix 6c.
+ 8. Where do I get the public domain directory library?
-7. I rlogin to another machine, and then no matter what I tell 'stty'
- I cannot get it to pass 8 bit characters?
+ Anonymous ftp to prep.ai.mit.edu:/pub/gnu/dirent.tar.Z
+ _________________________________________________________________
- Maybe you need to use 'rlogin -8' to tell rlogin to pass 8
- bit characters.
+ 9. I compiled tcsh using gcc, and when I start up it says: tcsh:
+ Warning no access to tty (Invalid Argument). Thus no job control in
+ this shell
-8. Where do I get the public domain directory library?
-
- Anonymous ftp to prep.ai.mit.edu:/pub/gnu/dirent.tar.Z
+ Your <sys/ioctl.h> file is not ansi compliant. You have one of 3
+ choices:
-9. I compiled tcsh using gcc, and when I start up it says:
- tcsh: Warning no access to tty (Invalid Argument).
- Thus no job control in this shell
+ 1. Run fixincludes from the gcc distribution.
+ 2. Add -traditional to the gcc flags.
+ 3. Compile with cc.
+ _________________________________________________________________
- Your <sys/ioctl.h> file is not ansi compliant. You have one of 3 choices:
- a. Run fixincludes from the gcc distribution.
- b. Add -traditional to the gcc flags.
- c. Compile with cc.
+ 10. I compiled tcsh with the SunOS? unbundled compiler and now things
+ get echo'ed twice.
-10. I compiled tcsh with the SunOS unbundled compiler and now things
- get echo'ed twice.
+ It is a bug in the unbundled optimizer. Lower the optimization level.
+ _________________________________________________________________
- It is a bug in the unbundled optimizer. Lower the optimization level.
+ 11. How can I use the arrow keys with hpterm?
-11. How can I use the arrow keys with hpterm?
- Hp terminals use the arrow keys internally. You can tell hpterm not
- to do that, by sending it the termcap sequence smkx. Since this
- has to be done all the time, the easiest thing is to put it as an
- alias for precmd, or inside the prompt:
+ Hp terminals use the arrow keys internally. You can tell hpterm not to
+ do that, by sending it the termcap sequence smkx. Since this has to be
+ done all the time, the easiest thing is to put it as an alias for
+ precmd, or inside the prompt:
if ($term == "hp") then
- set prompt="%{`echotc smkx`%}$prompt"
+ set prompt="%{`echotc smkx`%}$prompt"
endif
- Note that by doing that you cannot use pgup and pgdn to scroll...
- Also if you are using termcap, replace "smkx" with "ks"...
+ Note that by doing that you cannot use pgup and pgdn to scroll... Also
+ if you are using termcap, replace "smkx" with "ks"...
+ _________________________________________________________________
-12. On POSIX machines ^C and ^Z will do not work when tcsh is a login
- shell?
- Make sure that the interrupt character is set to ^C and suspend
- is set to ^Z; 'stty -a' will show you the current stty settings;
- 'stty intr ^C susp ^Z' will set them to ^C and ^Z respectively.
+ 12. On POSIX machines ^C and ^Z will do not work when tcsh is a login
+ shell?
-13. I am trying to compile tcsh and I am getting compile errors that
- look like:
+ Make sure that the interrupt character is set to ^C and suspend is set
+ to ^Z; 'stty -a' will show you the current stty settings; 'stty intr
+ ^C susp ^Z' will set them to ^C and ^Z respectively.
+ _________________________________________________________________
+
+ 13. I am trying to compile tcsh and I am getting compile errors that
+ look like:
>sh.c:???: `STR???' undeclared, outside of functions [gcc]
- or
>"sh.c", line ???: STR??? undefined [cc]
- You interrupted make, while it was making the automatically
- generated headers. Type 'make clean; make'
+ You interrupted make, while it was making the automatically generated
+ headers. Type 'make clean; make'
+ _________________________________________________________________
+
+ 14. On the cray, sometimes the CR/LF mapping gets screwed up.
+
+ You are probably logged in to the cray via telnet. Cray's telnetd
+ implements line mode selection the telnet client you are using does
+ not implement telnet line mode. This cause the Cray's telnetd to try
+ to use KLUDGELINEMODE. You can turn off telnet line mode from the cray
+ side by doing a "stty -extproc", or you can get the Cray AIC to build
+ a telnetd without KLUDGELINEMODE, or you can compile a new telnet
+ client (from the BSD net2 tape), or at least on the suns use: 'mode
+ character'.
+ _________________________________________________________________
+
+ 15. On AU/X, I made tcsh my startup shell, but the mac desktop is not
+ starting up (no X11 or Finder), and I only get console emulation.
-14. On the cray, sometimes the CR/LF mapping gets screwed up.
+ This is another manifestation of item 5. Just add the pathname to tcsh
+ in /etc/shells and everything should work fine.
+ _________________________________________________________________
- You are probably logged in to the cray via telnet. Cray's
- telnetd implements line mode selection the telnet client
- you are using does not implement telnet line mode.
- This cause the Cray's telnetd to try to use KLUDGELINEMODE.
- You can turn off telnet line mode from the cray side by
- doing a "stty -extproc", or you can get the Cray AIC to build
- a telnetd without KLUDGELINEMODE, or you can compile
- a new telnet client (from the BSD net2 tape), or at least
- on the suns use: 'mode character'.
+ 16. On machines that use YP (NIS) tilde expansion might end up in
+ /dev/null
+ If this happens complain to your vendor, to get a new version of NIS.
+ You can fix that in tcsh by defining YPBUGS in config.h
+ _________________________________________________________________
-15. On AU/X, I made tcsh my startup shell, but the mac desktop is not
- starting up (no X11 or Finder), and I only get console emulation.
+ 17. Script on SGI 4.0.5 does not give us a tty, so we cannot have job
+ control.
- This is another manifestation of item 5. Just add the pathname
- to tcsh in /etc/shells and everything should work fine.
+ Their csh does not have job control either. Try:
-16. On machines that use YP (NIS) tilde expansion might end up in /dev/null
- If this happens complain to your vendor, to get a new version of NIS.
- You can fix that in tcsh by defining YPBUGS in config.h
+ % script
+ % cat > /dev/tty
+ _________________________________________________________________
-17. Script on SGI 4.0.5 does not give us a tty, so we cannot have job
- control. Their csh does not have job control either. Try:
- % script
- % cat > /dev/tty
+ 18. I start tcsh and it takes a couple of minutes to get the prompt.
-18. I start tcsh and it takes a couple of minutes to get the prompt.
- You have defined REMOTEHOST and your DNS is not responding. Either
- undefine REMOTEHOST and recompile or fix your DNS.
+ You have defined REMOTEHOST and your DNS is not responding. Either
+ undefine REMOTEHOST and recompile or fix your DNS.
+ _________________________________________________________________
-19. If you need help generating your .cshrc file, check out:
- http://www.imada.ou.dk/~blackie/dotfile/
+ 19. If you need help generating your .cshrc file, check out:
+
+ http://www.imada.ou.dk/~blackie/dotfile/
+ _________________________________________________________________
+
+ 20. On POSIX systems the kernel will send hup signals to all the
+ processes in the foreground process group if 'stty hupcl' is set.
+
+ For example
-20. On POSIX systems the kernel will send hup signals to all the processes
- in the foreground process group if 'stty hupcl' is set. For example
./tcsh
echo $$
591
./tcsh
kill -6 591
- Will kill everything, since hup will be sent to all tcsh processes.
- To avoid that you can set stty -hupcl, but it is not recommended.
+ Will kill everything, since hup will be sent to all tcsh processes. To
+ avoid that you can set stty -hupcl, but it is not recommended.
+ _________________________________________________________________
+
+ 21. When I rsh the meta key stops working on the remote machine.
+
+ Try using rsh -8; this option is undocumented on some systems, but it
+ works. If that does not work, get and use ssh/sshd. You'll be better
+ off from a security point of view anyway.
+ _________________________________________________________________
+
+ 22. Tcsh compiled under hp/ux-10.x does not pass resource limits
+ correctly when ran on hp/ux-11.x systems.
+
+ This is a problem with lack of ABI compatibility between the two
+ systems. The only solution is to recompile.
+ _________________________________________________________________
-21. When I rsh the meta key stops working on the remote machine.
+ 23. Refreshing in command line editing can appear broken on some OS's
- Try using rsh -8; this option is undocumented on some systems,
- but it works. If that does not work, get and use ssh/sshd. You'll
- be better off from a security point of view anyway.
+ This is because the termcap/terminfo description lies about the
+ ability of the terminal to use tabs. At least on Compaq/DEC Alpha
+ OSF/1 3.x and 4.x systems, stty -tabs will cause problems.
+ _________________________________________________________________
-22. Tcsh compiled under hp/ux-10.x does not pass resource limits correctly
- when ran on hp/ux-11.x systems. This is a problem with lack of ABI
- compatibility between the two systems. The only solution is to recompile.
+ Everything else is a bug :-(
-christos
+ Christos
+ _________________________________________________________________
-Everything else is a bug :-(
+ Home | RecentChanges | Preferences
+ Edit text of this page | View other revisions
+ Last edited April 27, 2001 13:43 (diff)
+ Search: ____________________
OpenPOWER on IntegriCloud