159243Sobrien 283098Smp [Home] FAQ 359243Sobrien 483098Smp Home | RecentChanges | Preferences 583098Smp _________________________________________________________________ 659243Sobrien 783098Smp This is for people who do not read the manual! 859243Sobrien 983098Smp So far people who don't read manuals don't read this either... I may 1083098Smp call it README.*PLEASE* in the future, but then the same people won't 1183098Smp be able to get ftp it... :-) 1283098Smp _________________________________________________________________ 1359243Sobrien 14131962Smp 1. Where can I find tcsh sources? 1559243Sobrien 16131962Smp See http://www.tcsh.org/MostRecentRelease for download locations. 17131962Smp _________________________________________________________________ 18131962Smp 19131962Smp 2. Why is the meta key broken in tcsh-5.20 and up? 20131962Smp 2183098Smp On some machines the tty is not set up to pass 8 bit characters by 2283098Smp default. Tcsh 5.19 used to try to determine if pass8 should be set by 2383098Smp looking at the terminal's meta key. Unfortunately there is no good way 2483098Smp of determining if the terminal can really pass 8 characters or not. 2583098Smp Consider if you are logged in through a modem line with 7 bits and 2683098Smp parity and your terminal has a meta key. Then tcsh 5.19 would set 2783098Smp wrongly set pass8. 2859243Sobrien 2983098Smp If you did like the previous behavior you can add in /etc/csh.login, 3083098Smp or in .login: 3183098Smp 3259243Sobrien if ( $?tcsh && $?prompt ) then 3383098Smp if ( "`echotc meta`" == "yes" ) then 3483098Smp stty pass8 3583098Smp endif 3659243Sobrien endif 3759243Sobrien 3883098Smp If you don't have pass8, maybe one of these would work.. 3959243Sobrien 4083098Smp stty -parity -evenp -oddp cs8 -istrip (rs6000) 4183098Smp stty -parenb -istrip cs8 4259243Sobrien 4383098Smp Finally, tcsh will bind all printable meta characters to the self 4483098Smp insert command. If you don't want that to happen (i.e. use the 4583098Smp printable meta characters for commands) setenv NOREBIND. 4683098Smp _________________________________________________________________ 4769408Sache 48131962Smp 3. I ran 'dbxtool &' and 'shelltool &' from tcsh, and they end up in 4983098Smp cbreak and no echo mode? 5059243Sobrien 5183098Smp These programs are broken. Background jobs should not try to look at 5283098Smp the tty. What happens is that dbxtool looks in stderr to inherit the 5383098Smp tty setups, but tcsh sets up the tty in cbreak and -echo modes, so 5483098Smp that it can do line editing. This cannot be fixed because tcsh cannot 5583098Smp give away the tty. Pick one of the following as a workaround: 5659243Sobrien 5759243Sobrien dbxtool < /dev/null >& /dev/null & 5859243Sobrien /usr/etc/setsid dbxtool & 5959243Sobrien 6083098Smp If that does not work, for dbxtool at least you can add "sh stty sane" 6183098Smp in your .dbxinit 6283098Smp _________________________________________________________________ 6359243Sobrien 64131962Smp 4. I tried to compile tcsh and it cannot find <locale.h>? 6559243Sobrien 6683098Smp Your system does not support NLS. Undefine NLS in config_f.h and it 6783098Smp should work fine. 6883098Smp _________________________________________________________________ 6959243Sobrien 70131962Smp 5. Where can I get csh sources? 7159243Sobrien 7283098Smp Csh sources are now available with the 4.4BSD networking 7383098Smp distributions. You don't need csh sources to compile tcsh-6.0x. 7483098Smp _________________________________________________________________ 7559243Sobrien 76131962Smp 6. I just made tcsh my login shell, and I cannot ftp any more? 7759243Sobrien 7883098Smp Newer versions of the ftp daemon check for the validity of the user's 7983098Smp shell before they allow logins. The list of valid login shells is 8083098Smp either hardcoded or it is usually in a file called /etc/shells. If it 8183098Smp is hard-coded, then you are out of luck and your best bet is to get a 8283098Smp newer version of ftpd. Otherwise add tcsh to the list of shells. [For 8383098Smp AIX this file is called /etc/security/login.cfg.] Remember that the 8483098Smp full path is required. If there is no /etc/shells, and you are 8583098Smp creating one, remember to add /bin/csh, /bin/sh, and any other valid 8683098Smp shells for your system, so that other people can ftp too :-) 8783098Smp _________________________________________________________________ 8859243Sobrien 89131962Smp 7. I am using SunView or OpenWindows and editing is screwed up. In 9083098Smp particular my arrow keys and backspace don't work right. What am I 9183098Smp doing wrong? 9259243Sobrien 9383098Smp Well, cmdtool tries to do its own command line editing and the effect 9483098Smp you get is one of using an editor inside an editor. Both try to 9583098Smp interpret the arrow key sequences and cmdtool wins since it gets them 9683098Smp first. The solutions are in my order of preference: 9759243Sobrien 9883098Smp 1. Don't use suntools 9983098Smp 2. Use shelltool instead of cmdtool. 10083098Smp 3. Unset edit in tcsh. 101131962Smp _________________________________________________________________ 10259243Sobrien 103131962Smp 8. On a SPARCstation running Solaris 2.x and OpenWindows 3.1, inside a 104131962Smp cmdtool, the short-cut key sequence to clear log (i.e. Meta-e or 105131962Smp Diamond-e) doesn't work: it just echos 'e'; or 10659243Sobrien 107131962Smp Unset edit in tcsh. 108131962Smp _________________________________________________________________ 10959243Sobrien 110131962Smp 9. On a SPARCstation running Solaris 2.x and OpenWindows 3.1, maketool 111131962Smp (within SPARCworks) doesn't work: it just does a `cd' to the working 112131962Smp directory then stops. 113131962Smp 114131962Smp Unset edit in tcsh. Using shelltool instead of cmdtool does not fix 115131962Smp this. 11683098Smp _________________________________________________________________ 11759243Sobrien 118131962Smp 10. I rlogin to another machine, and then no matter what I tell 'stty' 11983098Smp I cannot get it to pass 8 bit characters? 12059243Sobrien 12183098Smp Maybe you need to use 'rlogin -8' to tell rlogin to pass 8 bit 12283098Smp characters. 12383098Smp _________________________________________________________________ 12459243Sobrien 125131962Smp 11. Where do I get the public domain directory library? 12659243Sobrien 12783098Smp Anonymous ftp to prep.ai.mit.edu:/pub/gnu/dirent.tar.Z 12883098Smp _________________________________________________________________ 12959243Sobrien 130131962Smp 12. I compiled tcsh using gcc, and when I start up it says: tcsh: 13183098Smp Warning no access to tty (Invalid Argument). Thus no job control in 13283098Smp this shell 13359243Sobrien 13483098Smp Your <sys/ioctl.h> file is not ansi compliant. You have one of 3 13583098Smp choices: 13659243Sobrien 13783098Smp 1. Run fixincludes from the gcc distribution. 13883098Smp 2. Add -traditional to the gcc flags. 13983098Smp 3. Compile with cc. 14083098Smp _________________________________________________________________ 14159243Sobrien 142131962Smp 13. I compiled tcsh with the SunOS unbundled compiler and now things 14383098Smp get echo'ed twice. 14459243Sobrien 14583098Smp It is a bug in the unbundled optimizer. Lower the optimization level. 14683098Smp _________________________________________________________________ 14783098Smp 148131962Smp 14. How can I use the arrow keys with hpterm? 14983098Smp 15083098Smp Hp terminals use the arrow keys internally. You can tell hpterm not to 15183098Smp do that, by sending it the termcap sequence smkx. Since this has to be 15283098Smp done all the time, the easiest thing is to put it as an alias for 15383098Smp precmd, or inside the prompt: 15483098Smp 15559243Sobrien if ($term == "hp") then 15683098Smp set prompt="%{`echotc smkx`%}$prompt" 15759243Sobrien endif 15859243Sobrien 15983098Smp Note that by doing that you cannot use pgup and pgdn to scroll... Also 16083098Smp if you are using termcap, replace "smkx" with "ks"... 16183098Smp _________________________________________________________________ 16259243Sobrien 163131962Smp 15. On POSIX machines ^C and ^Z will do not work when tcsh is a login 16483098Smp shell? 16559243Sobrien 16683098Smp Make sure that the interrupt character is set to ^C and suspend is set 16783098Smp to ^Z; 'stty -a' will show you the current stty settings; 'stty intr 16883098Smp ^C susp ^Z' will set them to ^C and ^Z respectively. 16983098Smp _________________________________________________________________ 17059243Sobrien 171131962Smp 16. I am trying to compile tcsh and I am getting compile errors that 17283098Smp look like: 17383098Smp 17459243Sobrien >sh.c:???: `STR???' undeclared, outside of functions [gcc] 17559243Sobrien >"sh.c", line ???: STR??? undefined [cc] 17659243Sobrien 17783098Smp You interrupted make, while it was making the automatically generated 17883098Smp headers. Type 'make clean; make' 17983098Smp _________________________________________________________________ 18059243Sobrien 181131962Smp 17. On the cray, sometimes the CR/LF mapping gets screwed up. 18259243Sobrien 18383098Smp You are probably logged in to the cray via telnet. Cray's telnetd 18483098Smp implements line mode selection the telnet client you are using does 18583098Smp not implement telnet line mode. This cause the Cray's telnetd to try 18683098Smp to use KLUDGELINEMODE. You can turn off telnet line mode from the cray 18783098Smp side by doing a "stty -extproc", or you can get the Cray AIC to build 18883098Smp a telnetd without KLUDGELINEMODE, or you can compile a new telnet 18983098Smp client (from the BSD net2 tape), or at least on the suns use: 'mode 19083098Smp character'. 19183098Smp _________________________________________________________________ 19259243Sobrien 193131962Smp 18. On AU/X, I made tcsh my startup shell, but the mac desktop is not 19483098Smp starting up (no X11 or Finder), and I only get console emulation. 19559243Sobrien 19683098Smp This is another manifestation of item 5. Just add the pathname to tcsh 19783098Smp in /etc/shells and everything should work fine. 19883098Smp _________________________________________________________________ 19959243Sobrien 200131962Smp 19. On machines that use YP (NIS) tilde expansion might end up in 20183098Smp /dev/null 20259243Sobrien 20383098Smp If this happens complain to your vendor, to get a new version of NIS. 20483098Smp You can fix that in tcsh by defining YPBUGS in config.h 20583098Smp _________________________________________________________________ 20659243Sobrien 207131962Smp 20. Script on SGI 4.0.5 does not give us a tty, so we cannot have job 20883098Smp control. 20959243Sobrien 21083098Smp Their csh does not have job control either. Try: 21159243Sobrien 21283098Smp % script 21383098Smp % cat > /dev/tty 21483098Smp _________________________________________________________________ 21559243Sobrien 216131962Smp 21. I start tcsh and it takes a couple of minutes to get the prompt. 21783098Smp 21883098Smp You have defined REMOTEHOST and your DNS is not responding. Either 21983098Smp undefine REMOTEHOST and recompile or fix your DNS. 22083098Smp _________________________________________________________________ 22183098Smp 222131962Smp 22. If you need help generating your .cshrc file, check out: 22383098Smp 224131962Smp http://www.imada.sdu.dk/~blackie/dotfile/ 225131962Smp 226131962Smp or 227131962Smp http://www.dotfiles.com 22883098Smp _________________________________________________________________ 22983098Smp 230131962Smp 23. On POSIX systems the kernel will send hup signals to all the 23183098Smp processes in the foreground process group if 'stty hupcl' is set. 23283098Smp 23383098Smp For example 23483098Smp 23559243Sobrien ./tcsh 23659243Sobrien echo $$ 23759243Sobrien 591 23859243Sobrien ./tcsh 23959243Sobrien kill -6 591 24059243Sobrien 24183098Smp Will kill everything, since hup will be sent to all tcsh processes. To 24283098Smp avoid that you can set stty -hupcl, but it is not recommended. 24383098Smp _________________________________________________________________ 24459243Sobrien 245131962Smp 24. When I rsh the meta key stops working on the remote machine. 24659243Sobrien 24783098Smp Try using rsh -8; this option is undocumented on some systems, but it 24883098Smp works. If that does not work, get and use ssh/sshd. You'll be better 24983098Smp off from a security point of view anyway. 25083098Smp _________________________________________________________________ 25159243Sobrien 252131962Smp 25. Tcsh compiled under hp/ux-10.x does not pass resource limits 25383098Smp correctly when ran on hp/ux-11.x systems. 25459243Sobrien 25583098Smp This is a problem with lack of ABI compatibility between the two 25683098Smp systems. The only solution is to recompile. 25783098Smp _________________________________________________________________ 25859243Sobrien 259131962Smp 26. Refreshing in command line editing can appear broken on some OS's 26083098Smp 26183098Smp This is because the termcap/terminfo description lies about the 26283098Smp ability of the terminal to use tabs. At least on Compaq/DEC Alpha 26383098Smp OSF/1 3.x and 4.x systems, stty -tabs will cause problems. 26483098Smp _________________________________________________________________ 26583098Smp 266131962Smp 27. Where can I learn the merits of tcsh vs. bash vs. csh vs. sh etc? 267131962Smp 268131962Smp You can read the manual page section titled [NEW FEATURES] listing 269131962Smp features that tcsh adds to csh. 270131962Smp 271131962Smp You can read Tom Christiansen's [Csh Programming Considered Harmful], 272131962Smp a document advocating that csh (and by extension, tcsh) should not be 273131962Smp used for writing shell scripts. 274131962Smp 275131962Smp XXX: Need to find something about [bash], but bash is sh-compatible 276131962Smp and has many of the same interactive features of tcsh (command 277131962Smp completion does not appear to be as flexible, though). 278131962Smp 279131962Smp [Curtains up: introducing the Z shell] has a pretty good rundown on 280131962Smp zsh. Aside from the arguments about csh being evil, tcsh appears to 281131962Smp compare well with zsh [zsh]. Zsh is sh and ksh compatible, with many 282131962Smp of the interactive features of tcsh. 283131962Smp _________________________________________________________________ 284131962Smp 285131962Smp 28. Why does FreeBSD's tcsh do history browsing differently than I 286131962Smp expect? 287131962Smp 288131962Smp On FreeBSD, by default, the up arrow is set to 289131962Smp "history-search-backward", rather than the default "up-history". As a 290131962Smp result, if you type (part of) a word and press up arrow, you'll see 291131962Smp previous commands that match the prefix. Pretty useful, actually, 292131962Smp although it takes some getting used to. You can use bindkey to see 293131962Smp your settings, and to rebind up & down differently if desired. 294131962Smp _________________________________________________________________ 295131962Smp 29683098Smp Everything else is a bug :-( 29783098Smp 29883098Smp Christos 29983098Smp _________________________________________________________________ 30083098Smp 30183098Smp Home | RecentChanges | Preferences 30283098Smp Edit text of this page | View other revisions 303131962Smp Last edited April 29, 2004 15:02 (diff) 30483098Smp Search: ____________________ 305