diff options
Diffstat (limited to 'contrib/tcsh/FAQ')
-rw-r--r-- | contrib/tcsh/FAQ | 339 |
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: ____________________ |