From 6767bd61d2a712aa8c1df05b77201db4e0fb7dc7 Mon Sep 17 00:00:00 2001 From: Mark Peek Date: Wed, 5 Sep 2001 17:49:32 +0000 Subject: [PATCH] Import tcsh-6.11 --- contrib/tcsh/FAQ | 339 ++++++++++-------- contrib/tcsh/Fixes | 44 +++ contrib/tcsh/Imakefile | 6 +- contrib/tcsh/Makefile.ADMIN | 20 ++ contrib/tcsh/Makefile.in | 4 +- contrib/tcsh/Makefile.std | 4 +- contrib/tcsh/Makefile.vms | 4 +- contrib/tcsh/README | 2 +- contrib/tcsh/RELEASE-PROCEDURE | 27 ++ contrib/tcsh/WishList | 89 +++-- contrib/tcsh/complete.tcsh | 112 +++--- contrib/tcsh/config.guess | 389 ++++++++++++++------- contrib/tcsh/config.sub | 345 ++++++++++++++++--- contrib/tcsh/config/bsd4.4 | 1 + contrib/tcsh/configure | 99 +++--- contrib/tcsh/configure.in | 7 +- contrib/tcsh/ed.chared.c | 423 +++++++++++++++-------- contrib/tcsh/ed.decls.h | 4 +- contrib/tcsh/ed.defns.c | 58 ++-- contrib/tcsh/ed.h | 9 +- contrib/tcsh/ed.init.c | 30 +- contrib/tcsh/ed.term.c | 21 +- contrib/tcsh/ed.xmap.c | 7 +- contrib/tcsh/glob.3 | 590 ++++++++++++++++++++------------ contrib/tcsh/glob.h | 74 ++-- contrib/tcsh/host.defs | 20 +- contrib/tcsh/nls/C/set17 | 4 +- contrib/tcsh/nls/C/set3 | 9 +- contrib/tcsh/nls/Makefile | 3 +- contrib/tcsh/nls/et/set1 | 140 ++++++++ contrib/tcsh/nls/et/set10 | 8 + contrib/tcsh/nls/et/set11 | 10 + contrib/tcsh/nls/et/set12 | 4 + contrib/tcsh/nls/et/set13 | 13 + contrib/tcsh/nls/et/set14 | 6 + contrib/tcsh/nls/et/set15 | 7 + contrib/tcsh/nls/et/set16 | 13 + contrib/tcsh/nls/et/set17 | 16 + contrib/tcsh/nls/et/set18 | 4 + contrib/tcsh/nls/et/set19 | 15 + contrib/tcsh/nls/et/set2 | 111 ++++++ contrib/tcsh/nls/et/set20 | 41 +++ contrib/tcsh/nls/et/set21 | 5 + contrib/tcsh/nls/et/set22 | 17 + contrib/tcsh/nls/et/set23 | 34 ++ contrib/tcsh/nls/et/set24 | 4 + contrib/tcsh/nls/et/set25 | 6 + contrib/tcsh/nls/et/set26 | 15 + contrib/tcsh/nls/et/set27 | 8 + contrib/tcsh/nls/et/set29 | 4 + contrib/tcsh/nls/et/set3 | 124 +++++++ contrib/tcsh/nls/et/set30 | 16 + contrib/tcsh/nls/et/set31 | 7 + contrib/tcsh/nls/et/set4 | 45 +++ contrib/tcsh/nls/et/set5 | 4 + contrib/tcsh/nls/et/set6 | 11 + contrib/tcsh/nls/et/set7 | 30 ++ contrib/tcsh/nls/et/set8 | 5 + contrib/tcsh/nls/et/set9 | 12 + contrib/tcsh/nls/finnish/set22 | 5 +- contrib/tcsh/nls/finnish/set3 | 10 +- contrib/tcsh/nls/finnish/set30 | 4 +- contrib/tcsh/nls/french/set3 | 9 +- contrib/tcsh/nls/german/set10 | 3 +- contrib/tcsh/nls/german/set3 | 9 +- contrib/tcsh/nls/greek/set3 | 10 +- contrib/tcsh/nls/italian/set3 | 9 +- contrib/tcsh/nls/pl/README | 3 + contrib/tcsh/nls/pl/set1 | Bin 0 -> 4383 bytes contrib/tcsh/nls/pl/set10 | 8 + contrib/tcsh/nls/pl/set11 | 10 + contrib/tcsh/nls/pl/set12 | 4 + contrib/tcsh/nls/pl/set13 | 13 + contrib/tcsh/nls/pl/set14 | 6 + contrib/tcsh/nls/pl/set15 | 7 + contrib/tcsh/nls/pl/set16 | 13 + contrib/tcsh/nls/pl/set17 | 16 + contrib/tcsh/nls/pl/set18 | 4 + contrib/tcsh/nls/pl/set19 | 15 + contrib/tcsh/nls/pl/set2 | 111 ++++++ contrib/tcsh/nls/pl/set20 | 41 +++ contrib/tcsh/nls/pl/set21 | 5 + contrib/tcsh/nls/pl/set22 | 17 + contrib/tcsh/nls/pl/set23 | 34 ++ contrib/tcsh/nls/pl/set24 | 4 + contrib/tcsh/nls/pl/set25 | 6 + contrib/tcsh/nls/pl/set26 | 15 + contrib/tcsh/nls/pl/set27 | 8 + contrib/tcsh/nls/pl/set29 | 4 + contrib/tcsh/nls/pl/set3 | Bin 0 -> 4928 bytes contrib/tcsh/nls/pl/set30 | 16 + contrib/tcsh/nls/pl/set31 | 7 + contrib/tcsh/nls/pl/set4 | 45 +++ contrib/tcsh/nls/pl/set5 | 4 + contrib/tcsh/nls/pl/set6 | 11 + contrib/tcsh/nls/pl/set7 | 30 ++ contrib/tcsh/nls/pl/set8 | 5 + contrib/tcsh/nls/pl/set9 | 12 + contrib/tcsh/nls/russian/set1 | 140 ++++++++ contrib/tcsh/nls/russian/set10 | 8 + contrib/tcsh/nls/russian/set11 | 10 + contrib/tcsh/nls/russian/set12 | 4 + contrib/tcsh/nls/russian/set13 | 13 + contrib/tcsh/nls/russian/set14 | 6 + contrib/tcsh/nls/russian/set15 | 7 + contrib/tcsh/nls/russian/set16 | 13 + contrib/tcsh/nls/russian/set17 | 16 + contrib/tcsh/nls/russian/set18 | 4 + contrib/tcsh/nls/russian/set19 | 15 + contrib/tcsh/nls/russian/set2 | 111 ++++++ contrib/tcsh/nls/russian/set20 | 41 +++ contrib/tcsh/nls/russian/set21 | 5 + contrib/tcsh/nls/russian/set22 | 17 + contrib/tcsh/nls/russian/set23 | 34 ++ contrib/tcsh/nls/russian/set24 | 4 + contrib/tcsh/nls/russian/set25 | 6 + contrib/tcsh/nls/russian/set26 | 15 + contrib/tcsh/nls/russian/set27 | 8 + contrib/tcsh/nls/russian/set29 | 4 + contrib/tcsh/nls/russian/set3 | 124 +++++++ contrib/tcsh/nls/russian/set30 | 16 + contrib/tcsh/nls/russian/set31 | 7 + contrib/tcsh/nls/russian/set4 | 45 +++ contrib/tcsh/nls/russian/set5 | 4 + contrib/tcsh/nls/russian/set6 | 11 + contrib/tcsh/nls/russian/set7 | 30 ++ contrib/tcsh/nls/russian/set8 | 5 + contrib/tcsh/nls/russian/set9 | 12 + contrib/tcsh/nls/spanish/set20 | 3 +- contrib/tcsh/nls/spanish/set3 | 9 +- contrib/tcsh/nls/ukrainian/set3 | 9 +- contrib/tcsh/patchlevel.h | 6 +- contrib/tcsh/sh.c | 17 +- contrib/tcsh/sh.char.c | 66 +++- contrib/tcsh/sh.char.h | 3 +- contrib/tcsh/sh.decls.h | 3 +- contrib/tcsh/sh.dir.c | 6 +- contrib/tcsh/sh.dol.c | 8 +- contrib/tcsh/sh.func.c | 12 +- contrib/tcsh/sh.glob.c | 14 +- contrib/tcsh/sh.h | 10 +- contrib/tcsh/sh.proc.c | 46 ++- contrib/tcsh/sh.sem.c | 20 +- contrib/tcsh/sh.set.c | 17 +- contrib/tcsh/sh.time.c | 7 +- contrib/tcsh/tc.const.c | 24 +- contrib/tcsh/tc.decls.h | 3 +- contrib/tcsh/tc.func.c | 66 +++- contrib/tcsh/tc.printf.c | 6 +- contrib/tcsh/tcsh.man | 60 +++- contrib/tcsh/tcsh.man2html | 6 +- contrib/tcsh/tw.color.c | 7 +- contrib/tcsh/tw.parse.c | 21 +- 153 files changed, 4216 insertions(+), 980 deletions(-) create mode 100644 contrib/tcsh/Makefile.ADMIN create mode 100644 contrib/tcsh/RELEASE-PROCEDURE create mode 100644 contrib/tcsh/nls/et/set1 create mode 100644 contrib/tcsh/nls/et/set10 create mode 100644 contrib/tcsh/nls/et/set11 create mode 100644 contrib/tcsh/nls/et/set12 create mode 100644 contrib/tcsh/nls/et/set13 create mode 100644 contrib/tcsh/nls/et/set14 create mode 100644 contrib/tcsh/nls/et/set15 create mode 100644 contrib/tcsh/nls/et/set16 create mode 100644 contrib/tcsh/nls/et/set17 create mode 100644 contrib/tcsh/nls/et/set18 create mode 100644 contrib/tcsh/nls/et/set19 create mode 100644 contrib/tcsh/nls/et/set2 create mode 100644 contrib/tcsh/nls/et/set20 create mode 100644 contrib/tcsh/nls/et/set21 create mode 100644 contrib/tcsh/nls/et/set22 create mode 100644 contrib/tcsh/nls/et/set23 create mode 100644 contrib/tcsh/nls/et/set24 create mode 100644 contrib/tcsh/nls/et/set25 create mode 100644 contrib/tcsh/nls/et/set26 create mode 100644 contrib/tcsh/nls/et/set27 create mode 100644 contrib/tcsh/nls/et/set29 create mode 100644 contrib/tcsh/nls/et/set3 create mode 100644 contrib/tcsh/nls/et/set30 create mode 100644 contrib/tcsh/nls/et/set31 create mode 100644 contrib/tcsh/nls/et/set4 create mode 100644 contrib/tcsh/nls/et/set5 create mode 100644 contrib/tcsh/nls/et/set6 create mode 100644 contrib/tcsh/nls/et/set7 create mode 100644 contrib/tcsh/nls/et/set8 create mode 100644 contrib/tcsh/nls/et/set9 create mode 100644 contrib/tcsh/nls/pl/README create mode 100644 contrib/tcsh/nls/pl/set1 create mode 100644 contrib/tcsh/nls/pl/set10 create mode 100644 contrib/tcsh/nls/pl/set11 create mode 100644 contrib/tcsh/nls/pl/set12 create mode 100644 contrib/tcsh/nls/pl/set13 create mode 100644 contrib/tcsh/nls/pl/set14 create mode 100644 contrib/tcsh/nls/pl/set15 create mode 100644 contrib/tcsh/nls/pl/set16 create mode 100644 contrib/tcsh/nls/pl/set17 create mode 100644 contrib/tcsh/nls/pl/set18 create mode 100644 contrib/tcsh/nls/pl/set19 create mode 100644 contrib/tcsh/nls/pl/set2 create mode 100644 contrib/tcsh/nls/pl/set20 create mode 100644 contrib/tcsh/nls/pl/set21 create mode 100644 contrib/tcsh/nls/pl/set22 create mode 100644 contrib/tcsh/nls/pl/set23 create mode 100644 contrib/tcsh/nls/pl/set24 create mode 100644 contrib/tcsh/nls/pl/set25 create mode 100644 contrib/tcsh/nls/pl/set26 create mode 100644 contrib/tcsh/nls/pl/set27 create mode 100644 contrib/tcsh/nls/pl/set29 create mode 100644 contrib/tcsh/nls/pl/set3 create mode 100644 contrib/tcsh/nls/pl/set30 create mode 100644 contrib/tcsh/nls/pl/set31 create mode 100644 contrib/tcsh/nls/pl/set4 create mode 100644 contrib/tcsh/nls/pl/set5 create mode 100644 contrib/tcsh/nls/pl/set6 create mode 100644 contrib/tcsh/nls/pl/set7 create mode 100644 contrib/tcsh/nls/pl/set8 create mode 100644 contrib/tcsh/nls/pl/set9 create mode 100644 contrib/tcsh/nls/russian/set1 create mode 100644 contrib/tcsh/nls/russian/set10 create mode 100644 contrib/tcsh/nls/russian/set11 create mode 100644 contrib/tcsh/nls/russian/set12 create mode 100644 contrib/tcsh/nls/russian/set13 create mode 100644 contrib/tcsh/nls/russian/set14 create mode 100644 contrib/tcsh/nls/russian/set15 create mode 100644 contrib/tcsh/nls/russian/set16 create mode 100644 contrib/tcsh/nls/russian/set17 create mode 100644 contrib/tcsh/nls/russian/set18 create mode 100644 contrib/tcsh/nls/russian/set19 create mode 100644 contrib/tcsh/nls/russian/set2 create mode 100644 contrib/tcsh/nls/russian/set20 create mode 100644 contrib/tcsh/nls/russian/set21 create mode 100644 contrib/tcsh/nls/russian/set22 create mode 100644 contrib/tcsh/nls/russian/set23 create mode 100644 contrib/tcsh/nls/russian/set24 create mode 100644 contrib/tcsh/nls/russian/set25 create mode 100644 contrib/tcsh/nls/russian/set26 create mode 100644 contrib/tcsh/nls/russian/set27 create mode 100644 contrib/tcsh/nls/russian/set29 create mode 100644 contrib/tcsh/nls/russian/set3 create mode 100644 contrib/tcsh/nls/russian/set30 create mode 100644 contrib/tcsh/nls/russian/set31 create mode 100644 contrib/tcsh/nls/russian/set4 create mode 100644 contrib/tcsh/nls/russian/set5 create mode 100644 contrib/tcsh/nls/russian/set6 create mode 100644 contrib/tcsh/nls/russian/set7 create mode 100644 contrib/tcsh/nls/russian/set8 create mode 100644 contrib/tcsh/nls/russian/set9 diff --git a/contrib/tcsh/FAQ b/contrib/tcsh/FAQ index 1a530b0d502..59175c9885a 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 ? + 3. I tried to compile tcsh and it cannot find ? - Your system does not support NLS. Undefine NLS in config_f.h and it - should work fine. + Your system does not support NLS. Undefine NLS in config_f.h and it + should work fine. + _________________________________________________________________ -4. Where can I get csh sources? + 4. Where can I get csh sources? - Csh sources are now available with the 4.4BSD networking distributions. - You don't need csh sources to compile tcsh-6.0x. + Csh sources are now available with the 4.4BSD networking + distributions. You don't need csh sources to compile tcsh-6.0x. + _________________________________________________________________ -5. I just made tcsh my login shell, and I cannot ftp any more? + 5. I just made tcsh my login shell, and I cannot ftp any more? - 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 :-) + 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 :-) + _________________________________________________________________ -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? + 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? - 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: + 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: - 1 Don't use suntools - 2 Use shelltool instead of cmdtool. - 3 Unset edit in tcsh. + 1. Don't use suntools + 2. Use shelltool instead of cmdtool. + 3. Unset edit in tcsh. -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' + 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' -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. + 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. - The workaround for 6b and 6c is doing "unset edit." - Using shelltool instead of cmdtool doesn't fix 6c. + The workaround for 6b and 6c is doing "unset edit." Using shelltool + instead of cmdtool doesn't fix 6c. + _________________________________________________________________ -7. I rlogin to another machine, and then no matter what I tell 'stty' - I cannot get it to pass 8 bit characters? + 7. I rlogin to another machine, and then no matter what I tell 'stty' + I cannot get it to pass 8 bit characters? - Maybe you need to use 'rlogin -8' to tell rlogin to pass 8 - bit characters. + Maybe you need to use 'rlogin -8' to tell rlogin to pass 8 bit + characters. + _________________________________________________________________ -8. Where do I get the public domain directory library? - - Anonymous ftp to prep.ai.mit.edu:/pub/gnu/dirent.tar.Z + 8. Where do I get the public domain directory library? -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 + Anonymous ftp to prep.ai.mit.edu:/pub/gnu/dirent.tar.Z + _________________________________________________________________ - Your 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. + 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 -10. I compiled tcsh with the SunOS unbundled compiler and now things - get echo'ed twice. + Your file is not ansi compliant. You have one of 3 + choices: - It is a bug in the unbundled optimizer. Lower the optimization level. + 1. Run fixincludes from the gcc distribution. + 2. Add -traditional to the gcc flags. + 3. Compile with cc. + _________________________________________________________________ -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: + 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. + _________________________________________________________________ + + 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: 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. + 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'. + 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. -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. + This is another manifestation of item 5. Just add the pathname to tcsh + in /etc/shells and everything should work fine. + _________________________________________________________________ - This is another manifestation of item 5. Just add the pathname - to tcsh in /etc/shells and everything should work fine. + 16. On machines that use YP (NIS) tilde expansion might end up in + /dev/null -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 + 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 + _________________________________________________________________ -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 + 17. Script on SGI 4.0.5 does not give us a tty, so we cannot have job + control. -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. + Their csh does not have job control either. Try: -19. If you need help generating your .cshrc file, check out: - http://www.imada.ou.dk/~blackie/dotfile/ + % script + % cat > /dev/tty + _________________________________________________________________ + + 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. + _________________________________________________________________ + + 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. + 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. + 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. + 22. Tcsh compiled under hp/ux-10.x does not pass resource limits + correctly when ran on hp/ux-11.x systems. -christos + This is a problem with lack of ABI compatibility between the two + systems. The only solution is to recompile. + _________________________________________________________________ -Everything else is a bug :-( + 23. Refreshing in command line editing can appear broken on some OS's + + 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. + _________________________________________________________________ + + Everything else is a bug :-( + + Christos + _________________________________________________________________ + + Home | RecentChanges | Preferences + Edit text of this page | View other revisions + Last edited April 27, 2001 13:43 (diff) + Search: ____________________ diff --git a/contrib/tcsh/Fixes b/contrib/tcsh/Fixes index d90e2eef558..f48808e5719 100644 --- a/contrib/tcsh/Fixes +++ b/contrib/tcsh/Fixes @@ -1,3 +1,47 @@ + 40. V6.11.00 - 20010902 + 39. Completion fixes (Tom Warzeka) + 38. make c_insert not static so that it can be used from win32 (amol) + 37. Fix rmstar not to corrupt memory when we say no. (Mark Peek) + 36. V6.10.02 - 20010806 + 35. polish nls locale (PaweЁ New) + 34. Fix a tcsetattr race running background jobs as the last line on an xterm + window (Andrew Brown) + 33. jobcmd alias (Greg Parker) + 32. hpux11 support (Joshua Weage) + 31. Fix SHORT_STRINGS compilation (Daniel Trinkle) + 30. Add kill -s (Mark Peek) + 29. Don't recognize all mips as dec (Bjorn Knutsson) + 28. Fix GLOB_QUOTE problem (noted by Per) I introduced in 6.10.01. + 27. Port to concurrent's powermaxos (Matt Majka) + 26. New builtin srcfile (Amol) + 25. Fix bindkey "\\" cmd (reported by Ismail H. Tuncer) + 24. %0Xc was broken in the prompt if the user's home directory was '/'. + (reported by Edward Glowacki) + 23. V6.10.01 - 20010426 + 22. LARGEFILE support on Linux. + 21. Add big5 multibyte support (Yen-Ming Lee) + 20. Check the return value of setpriority (Dima Dorfman) + 19. Avoid constructing paths with // on DomainOS (Nickolai Zeldovich) + 18. Russian translation (Ilmar S. Habibulin) + 17. Fix hostdefs for alpha support in FreeBSD (Andrey A. Chernov) + 16. Add door support in colorls (Shaen) + 15. Add BSD_STYLE_COLORLS for FreeBSD (Anand) + 14. MAXHOSTNAMELEN needs to be 256 (Kris Kennaway) + 13. Document stty -tabs problems on compaq (Nelson H. F. Beebe) + 12. Fix broken comment, and new versions of config.guess and config.sub + (H.Merijn Brand) + 11. fix redrawing in the recognize case (Andrew Brown) + 10. don't call qsort with 0 items. (Luke Mewburn) + 9. fix echo;echo;echo; not outputing anything (Andrey A. Chernov) + 8. Fix shell word parsing in dabbrev-expand (Per Hedeland) + 7. hpux fixes (Chienting Lin) + 6. Implement kill ring (Per Hedeland) + 5. Avoid core-dumping when a very long $HOME gets passed in (Kris Kennaway) + 4. Add rlimit_vmem for linux based on rlimit_as (N KomaZaki) + 3. back out symlink=expand path check. + 2. Add Estonian translation (Toomas Soome) + 1. Accept empty $savedirs to mean infinity. + 57. V6.10.00 - 20001119 56. Completion fixes (Tom Warzeka) 55. add missing linux kanji define (Tsuyoshi Kawabe) diff --git a/contrib/tcsh/Imakefile b/contrib/tcsh/Imakefile index 8a956039248..4d3295264d7 100644 --- a/contrib/tcsh/Imakefile +++ b/contrib/tcsh/Imakefile @@ -1,7 +1,7 @@ XCOMM -XCOMM $Id: Imakefile,v 1.78 2000/11/19 20:50:41 christos Exp $ +XCOMM $Id: Imakefile,v 1.79 2001/09/02 21:16:24 christos Exp $ XCOMM -XCOMM Imakefile for tcsh 6.10 +XCOMM Imakefile for tcsh 6.11 XCOMM Marc Horowitz, MIT SIPB XCOMM @@ -480,7 +480,7 @@ LDLIBS = MyLibs #endif SUF = o -VERSION = 6.10 +VERSION = 6.11 SHSRCS= sh.c sh.dir.c sh.dol.c sh.err.c sh.exec.c sh.char.c \ sh.exp.c sh.file.c sh.func.c sh.glob.c sh.hist.c sh.init.c \ diff --git a/contrib/tcsh/Makefile.ADMIN b/contrib/tcsh/Makefile.ADMIN new file mode 100644 index 00000000000..96619061947 --- /dev/null +++ b/contrib/tcsh/Makefile.ADMIN @@ -0,0 +1,20 @@ +# +# Makefile.ADMIN +# +# Maintenance tasks +# +# You can refetch files from the website, then run "cvs diff" to +# sanity check any changes before committing. +# + +LYNX= lynx -dump -nolist +TRIM= expand | sed -e 's/^ *$$//' | cat -s +WEB= http://www.tcsh.org/page? + +.for i in FAQ WishList +$i: force + ${LYNX} ${WEB}$i | ${TRIM} > ${.TARGET} +.endfor + +.DUMMY: force +force: diff --git a/contrib/tcsh/Makefile.in b/contrib/tcsh/Makefile.in index 54c8897d9f4..d07d000d9ef 100644 --- a/contrib/tcsh/Makefile.in +++ b/contrib/tcsh/Makefile.in @@ -1,4 +1,4 @@ -# $Id: Makefile.in,v 3.15 2000/11/19 20:50:41 christos Exp $ +# $Id: Makefile.in,v 3.16 2001/09/02 21:16:25 christos Exp $ # Makefile.in 4.3 6/11/83 # # C Shell with process control; VM/UNIX VAX Makefile @@ -8,7 +8,7 @@ # things; Paul Placeway, CIS Dept., Ohio State University # SHELL=/bin/sh -VERSION=6.10 +VERSION=6.11 BUILD=tcsh VPATH=@srcdir@ srcdir=@srcdir@ diff --git a/contrib/tcsh/Makefile.std b/contrib/tcsh/Makefile.std index f2199cf8d25..b6212d286a6 100644 --- a/contrib/tcsh/Makefile.std +++ b/contrib/tcsh/Makefile.std @@ -1,4 +1,4 @@ -# $Id: Makefile.std,v 1.91 2000/11/19 20:50:42 christos Exp $ +# $Id: Makefile.std,v 1.92 2001/09/02 21:16:25 christos Exp $ # Makefile.std 4.3 6/11/83 # # C Shell with process control; VM/UNIX VAX Makefile @@ -8,7 +8,7 @@ # things; Paul Placeway, CIS Dept., Ohio State University # SHELL=/bin/sh -VERSION=6.10 +VERSION=6.11 BUILD=tcsh srcdir=. diff --git a/contrib/tcsh/Makefile.vms b/contrib/tcsh/Makefile.vms index 399570790f3..05ce5504ef8 100644 --- a/contrib/tcsh/Makefile.vms +++ b/contrib/tcsh/Makefile.vms @@ -1,4 +1,4 @@ -# $Id: Makefile.vms,v 1.34 2000/11/19 20:50:42 christos Exp $ +# $Id: Makefile.vms,v 1.35 2001/09/02 21:16:25 christos Exp $ # Makefile.vms 4.3 6/11/83 # # C Shell with process control; VM/UNIX VAX Makefile @@ -8,7 +8,7 @@ # things; Paul Placeway, CIS Dept., Ohio State University # SHELL=/bin/sh -VERSION=6.10 +VERSION=6.11 BUILD=tcsh ################################################################ diff --git a/contrib/tcsh/README b/contrib/tcsh/README index 658ba6988aa..4c86b635f23 100644 --- a/contrib/tcsh/README +++ b/contrib/tcsh/README @@ -1,4 +1,4 @@ -This is tcsh version 6.10. Tcsh is a version of the Berkeley +This is tcsh version 6.11. Tcsh is a version of the Berkeley C-Shell, with the addition of: a command line editor, command and file name completion, listing, etc. and a bunch of small additions to the shell itself. diff --git a/contrib/tcsh/RELEASE-PROCEDURE b/contrib/tcsh/RELEASE-PROCEDURE new file mode 100644 index 00000000000..54de676dc13 --- /dev/null +++ b/contrib/tcsh/RELEASE-PROCEDURE @@ -0,0 +1,27 @@ +HOW TO RELEASE TCSH + +1) Update version number and date in patchlevel.h +2) Note the new version and date in Fixes +3) Updated tcsh.man to have the new version and date also + (two separate lines, with the date in different formats) +4) Commit changes into CVS +5) Tag the release with TCSHx_yy_zz where + x == REV + yy == VERS + zz == PATCHLEVEL + from patchlevel.h (the new values you picked) +6) Export the code using the new tag you created. Rename + the directory from "tcsh" to "tcsh-x.yy.zz" and create + tcsh-x.yy.zz.tar.gz (or tcsh-x.yy.tar.gz for public + releases where zz [PATCHLEVEL] is zero) +7) Export the previous release as well +8) Remove files that should not be in a release: + - Announce* + - Copyright + - Makefile.ADMIN + - RELEASE-PROCEDURE (this file) +9) Generate a "diff -urN" between the two directories you + have exported, save it in patchz.gz (z is PATCHLEVEL) +10) Make the patch and the source tarball available on ftp +11) Mail an announcement to tcsh@mx.gw.com +12) Mail the patch to tcsh-diffs@mx.gw.com diff --git a/contrib/tcsh/WishList b/contrib/tcsh/WishList index a849b188449..8afeceba1f7 100644 --- a/contrib/tcsh/WishList +++ b/contrib/tcsh/WishList @@ -1,40 +1,65 @@ -* Fix memory leak related to aliasrun(). Precmd, Cwdcmd etc. leak memory. -* Fix migrate -site $$... Seems to hang... (aix370) + [Home] WishList -* Fix history in loops. + Home | RecentChanges | Preferences + _________________________________________________________________ -* New idea. - Lots of people seem to like the idea to be able to do sed type - operations on shell variables. Maybe we can extend the syntax - of the variable editing to understand string operations. - So I would like to be able to use: - > set a="this is a STRING" - > echo $a:[3-] - is is a STRING - > echo $a:[#] - 16 - > echo $a:[6-7] - is - > echo $a:[-2] - ng - > echo $a:[-20] - Subscript out of bounds. - > echo $a:[2-20] - Subscript out of bounds. - > echo $a:[1-1]:u$a:[2-]. - This is a string. + Fix memory leak related to aliasrun(). Precmd, Cwdcmd etc. leak + memory. + _________________________________________________________________ -* Fix pipelines that contain builtins so that they behave correctly. - I tried to fix that (most of the code is in sh.sem.c, but it works - only for non POSIX machines cause otherwise the setpgid() I added - fails). + Fix migrate -site $$... Seems to hang... (aix370) + _________________________________________________________________ -* Fix the correct code... How to do that involves A.I.... + Fix history in loops. + _________________________________________________________________ -* Rewrite the whole thing. It has taken to much beating over the years... + New idea: sed operations on variables. -* Add another hook like precmd to be executed after the prompt but before the - command. + Lots of people seem to like the idea to be able to do sed type + operations on shell variables. Maybe we can extend the syntax of the + variable editing to understand string operations. So I would like to + be able to use: -* Add instructions for using configure in the README file. + > set a="this is a STRING" + > echo $a:[3-] + is is a STRING + > echo $a:[#] + 16 + > echo $a:[6-7] + is + > echo $a:[-2] + ng + > echo $a:[-20] + Subscript out of bounds. + > echo $a:[2-20] + Subscript out of bounds. + > echo $a:[1-1]:u$a:[2-]. + This is a string. + _________________________________________________________________ + + Fix pipelines that contain builtins so that they behave correctly. + + I tried to fix that (most of the code is in sh.sem.c, but it works + only for non POSIX machines cause otherwise the setpgid() I added + fails). + _________________________________________________________________ + + Fix the correct code... How to do that involves A.I.... + _________________________________________________________________ + + Rewrite the whole thing. It has taken to much beating over the + years... + _________________________________________________________________ + + Add another hook like precmd to be executed after the prompt but + before the command. + _________________________________________________________________ + + Add instructions for using configure in the README file. + _________________________________________________________________ + + Home | RecentChanges | Preferences + Edit text of this page | View other revisions + Last edited April 28, 2001 2:04 (diff) + Search: ____________________ diff --git a/contrib/tcsh/complete.tcsh b/contrib/tcsh/complete.tcsh index a903094cac5..c1b6c9d07e0 100644 --- a/contrib/tcsh/complete.tcsh +++ b/contrib/tcsh/complete.tcsh @@ -1,5 +1,5 @@ # -# $Id: complete.tcsh,v 1.36 2000/11/19 20:50:42 christos Exp $ +# $Id: complete.tcsh,v 1.37 2001/09/02 21:06:02 christos Exp $ # example file using the new completion code # @@ -14,12 +14,12 @@ if ($?tcsh) then set rev=$rev:r endif if ($rev > 5 && $rel > 1) then - set complete=1 + set _complete=1 endif unset rev rel pat endif -if ($?complete) then +if ($?_complete) then set noglob set hosts foreach f ($HOME/.hosts /usr/local/etc/csh.hosts $HOME/.rhosts /etc/hosts.equiv) @@ -623,11 +623,6 @@ if ($?complete) then timestamping tries= user-agent= verbose version wait=)"/ # these from Tom Warzeka - # you may need to set the following variables for your host - set _elispdir = /usr/local/share/emacs/20.7/lisp # GNU Emacs lisp directory - set _maildir = /var/spool/mail # Post Office: /var/spool/mail or /usr/mail - set _ypdir = /var/yp # directory where NIS (YP) maps are kept - set _domain = "`domainname`" # this one works but is slow and doesn't descend into subdirectories # complete cd C@[./\$~]*@d@ \ @@ -640,6 +635,11 @@ if ($?complete) then endif complete unsetenv n/*/e/ + if (-r /var/spool/mail) then + set _maildir = /var/spool/mail + else + set _maildir = /usr/mail + endif if (-r $HOME/.mailrc) then complete mail c/-/"(e i f n s u v)"/ c/*@/\$hosts/ \ c@+@F:$HOME/Mail@ C@[./\$~]@f@ n/-s/x:''/ \ @@ -650,23 +650,32 @@ if ($?complete) then c@+@F:$HOME/Mail@ C@[./\$~]@f@ n/-s/x:''/ \ n@-u@T:$_maildir@ n/-f/f/ n/*/u/ endif + unset _maildir - complete man n@1@'`\ls -1 /usr/man/man1 | sed s%\\.1.\*\$%%`'@ \ - n@2@'`\ls -1 /usr/man/man2 | sed s%\\.2.\*\$%%`'@ \ - n@3@'`\ls -1 /usr/man/man3 | sed s%\\.3.\*\$%%`'@ \ - n@4@'`\ls -1 /usr/man/man4 | sed s%\\.4.\*\$%%`'@ \ - n@5@'`\ls -1 /usr/man/man5 | sed s%\\.5.\*\$%%`'@ \ - n@6@'`\ls -1 /usr/man/man6 | sed s%\\.6.\*\$%%`'@ \ - n@7@'`\ls -1 /usr/man/man7 | sed s%\\.7.\*\$%%`'@ \ - n@8@'`\ls -1 /usr/man/man8 | sed s%\\.8.\*\$%%`'@ \ - n@9@'`[ -r /usr/man/man9 ] && \ls -1 /usr/man/man9 | sed s%\\.9.\*\$%%`'@ \ - n@0@'`[ -r /usr/man/man0 ] && \ls -1 /usr/man/man0 | sed s%\\.0.\*\$%%`'@ \ - n@new@'`[ -r /usr/man/mann ] && \ls -1 /usr/man/mann | sed s%\\.n.\*\$%%`'@ \ - n@old@'`[ -r /usr/man/mano ] && \ls -1 /usr/man/mano | sed s%\\.o.\*\$%%`'@ \ -n@local@'`[ -r /usr/man/manl ] && \ls -1 /usr/man/manl | sed s%\\.l.\*\$%%`'@ \ -n@public@'`[ -r /usr/man/manp ]&& \ls -1 /usr/man/manp | sed s%\\.p.\*\$%%`'@ \ - c/-/"(- f k M P s t)"/ n/-f/c/ n/-k/x:''/ n/-[MP]/d/ \ - N@-[MP]@'`\ls -1 $:-1/man? | sed s%\\..\*\$%%`'@ n/*/c/ + if (-r /usr/share/man) then + set _man_dir = /usr/share/man + else + set _man_dir = /usr/man + endif + complete man \ + n@0@\`if\ \(-r\ $_man_dir/man0\)\ \\ls\ -1\ $_man_dir/man0\ \|\ sed\ s%\\\.0.\\\*\\\$%%\`@ \ + n@1@\`if\ \(-r\ $_man_dir/man1\)\ \\ls\ -1\ $_man_dir/man1\ \|\ sed\ s%\\\.1.\\\*\\\$%%\`@ \ + n@2@\`if\ \(-r\ $_man_dir/man2\)\ \\ls\ -1\ $_man_dir/man2\ \|\ sed\ s%\\\.2.\\\*\\\$%%\`@ \ + n@3@\`if\ \(-r\ $_man_dir/man3\)\ \\ls\ -1\ $_man_dir/man3\ \|\ sed\ s%\\\.3.\\\*\\\$%%\`@ \ + n@4@\`if\ \(-r\ $_man_dir/man4\)\ \\ls\ -1\ $_man_dir/man4\ \|\ sed\ s%\\\.4.\\\*\\\$%%\`@ \ + n@5@\`if\ \(-r\ $_man_dir/man5\)\ \\ls\ -1\ $_man_dir/man5\ \|\ sed\ s%\\\.5.\\\*\\\$%%\`@ \ + n@6@\`if\ \(-r\ $_man_dir/man6\)\ \\ls\ -1\ $_man_dir/man6\ \|\ sed\ s%\\\.6.\\\*\\\$%%\`@ \ + n@7@\`if\ \(-r\ $_man_dir/man7\)\ \\ls\ -1\ $_man_dir/man7\ \|\ sed\ s%\\\.7.\\\*\\\$%%\`@ \ + n@8@\`if\ \(-r\ $_man_dir/man8\)\ \\ls\ -1\ $_man_dir/man8\ \|\ sed\ s%\\\.8.\\\*\\\$%%\`@ \ + n@9@\`if\ \(-r\ $_man_dir/man9\)\ \\ls\ -1\ $_man_dir/man9\ \|\ sed\ s%\\\.9.\\\*\\\$%%\`@ \ + n@new@\`if\ \(-r\ $_man_dir/mann\)\ \\ls\ -1\ $_man_dir/mann\ \|\ sed\ s%\\\.n.\\\*\\\$%%\`@ \ + n@old@\`if\ \(-r\ $_man_dir/mano\)\ \\ls\ -1\ $_man_dir/mano\ \|\ sed\ s%\\\.o.\\\*\\\$%%\`@ \ + n@local@\`if\ \(-r\ $_man_dir/manl\)\ \\ls\ -1\ $_man_dir/manl\ \|\ sed\ s%\\\.l.\\\*\\\$%%\`@ \ + n@public@\`if\ \(-r\ $_man_dir/manp\)\ \\ls\ -1\ $_man_dir/manp\ \|\ sed\ s%\\\.p.\\\*\\\$%%\`@ \ + c@-@"(- f k M P s t)"@ n@-f@c@ n@-k@x:''@ n@-[MP]@d@ \ + n@-s@\`\\ls\ -1\ $_man_dir\ \|\ sed\ -n\ s%man%%p\`@ \ + N@-[MP]@'`\ls -1 $:-1/man? | sed s%\\..\*\$%%`'@ n@*@c@ + unset _man_dir complete ps c/-t/x:''/ c/-/"(a c C e g k l S t u v w x)"/ \ n/-k/x:''/ N/-k/x:''/ n/*/x:''/ @@ -680,12 +689,23 @@ n@public@'`[ -r /usr/man/manp ]&& \ls -1 /usr/man/manp | sed s%\\.p.\*\$%%`'@ \ # these conform to the latest GNU versions available at press time ... # updates by John Gotts - - complete emacs c/-/"(batch d f funcall i insert kill l load \ - no-init-file nw q t u user)"/ c/+/x:''/ \ - n/-d/x:''/ n/-f/x:''/ n/-i/f/ \ - n@-l@F:$_elispdir@ n/-t/x:''/ \ - n/-u/u/ n/*/f:^*[\#~]/ + if (-X emacs) then + # TW note: if your version of GNU Emacs supports the "--version" option, + # uncomment this line and comment the next to automatically + # detect the version, else replace "20.7" with your version. + #set _emacs_ver=`emacs --version | head -1 | sed 's%GNU Emacs %%' | cut -d . -f1-2` + set _emacs_ver=20.7 + set _emacs_dir=`which emacs | sed s%/bin/emacs%%` + complete emacs c/--/"(batch terminal display no-windows no-init-file \ + user debug-init unibyte multibyte version help \ + no-site-file funcall load eval insert kill)"/ \ + c/-/"(t d nw q u f l -)"/ c/+/x:''/ \ + n/{-t,--terminal}/x:''/ n/{-d,--display}/x:''/ \ + n/{-u,--user}/u/ n/{-f,--funcall}/x:''/ \ + n@{-l,--load}@F:$_emacs_dir/share/emacs/$_emacs_ver/lisp@ \ + n/--eval/x:''/ n/--insert/f/ n/*/f:^*[\#~]/ + unset _emacs_ver _emacs_dir + endif complete gzcat c/--/"(force help license quiet version)"/ \ c/-/"(f h L q V -)"/ n/*/f:*.{gz,Z,z,zip}/ @@ -879,19 +899,23 @@ n@public@'`[ -r /usr/man/manp ]&& \ls -1 /usr/man/manp | sed s%\\.p.\*\$%%`'@ \ # n/*/'`mount | cut -d " " -f 3`'/ # these deal with NIS (formerly YP); if it's not running you don't need 'em - complete domainname p@1@D:$_ypdir@" " n@*@n@ - complete ypcat c@-@"(d k t x)"@ n@-x@n@ n@-d@D:$_ypdir@" " \ - N@-d@\`\\ls\ -1\ $_ypdir/\$:-1\ \|\ sed\ -n\ s%\\\\.pag\\\$%%p\`@ \ - n@*@\`\\ls\ -1\ $_ypdir/$_domain\ \|\ sed\ -n\ s%\\\\.pag\\\$%%p\`@ - complete ypmatch c@-@"(d k t x)"@ n@-x@n@ n@-d@D:$_ypdir@" " \ - N@-d@x:''@ n@-@x:''@ p@1@x:''@ \ - n@*@\`\\ls\ -1\ $_ypdir/$_domain\ \|\ sed\ -n\ s%\\\\.pag\\\$%%p\`@ - complete ypwhich c@-@"(d m t x V1 V2)"@ n@-x@n@ n@-d@D:$_ypdir@" " \ - n@-m@\`\\ls\ -1\ $_ypdir/$_domain\ \|\ sed\ -n\ s%\\\\.pag\\\$%%p\`@ \ - N@-m@n@ n@*@\$hosts@ - - # there's no need to clutter the user's shell with these - unset _elispdir _maildir _ypdir _domain + if (-X domainname) then + set _domain = "`domainname`" + set _ypdir = /var/yp # directory where NIS (YP) maps are kept + if ("$_domain" != "" && "$_domain" != "noname") then + complete domainname p@1@D:$_ypdir@" " n@*@n@ + complete ypcat c@-@"(d k t x)"@ n@-x@n@ n@-d@D:$_ypdir@" " \ + N@-d@\`\\ls\ -1\ $_ypdir/\$:-1\ \|\ sed\ -n\ s%\\\\.pag\\\$%%p\`@ \ + n@*@\`\\ls\ -1\ $_ypdir/$_domain\ \|\ sed\ -n\ s%\\\\.pag\\\$%%p\`@ + complete ypmatch c@-@"(d k t x)"@ n@-x@n@ n@-d@D:$_ypdir@" " \ + N@-d@x:''@ n@-@x:''@ p@1@x:''@ \ + n@*@\`\\ls\ -1\ $_ypdir/$_domain\ \|\ sed\ -n\ s%\\\\.pag\\\$%%p\`@ + complete ypwhich c@-@"(d m t x V1 V2)"@ n@-x@n@ n@-d@D:$_ypdir@" " \ + n@-m@\`\\ls\ -1\ $_ypdir/$_domain\ \|\ sed\ -n\ s%\\\\.pag\\\$%%p\`@ \ + N@-m@n@ n@*@\$hosts@ + endif + unset _domain _ypdir + endif complete make \ 'n/-f/f/' \ @@ -910,7 +934,7 @@ n@public@'`[ -r /usr/man/manp ]&& \ls -1 /usr/man/manp | sed s%\\.p.\*\$%%`'@ \ endif unset noglob - unset complete + unset _complete endif end: diff --git a/contrib/tcsh/config.guess b/contrib/tcsh/config.guess index cdd153076ad..e1b58717080 100755 --- a/contrib/tcsh/config.guess +++ b/contrib/tcsh/config.guess @@ -1,6 +1,7 @@ #! /bin/sh # Attempt to guess a canonical system name. -# Copyright (C) 1992, 93, 94, 95, 96, 97, 1998 Free Software Foundation, Inc. +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999 +# Free Software Foundation, Inc. # # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -23,6 +24,7 @@ # Written by Per Bothner . # The master version of this file is at the FSF in /home/gd/gnu/lib. +# Please send patches to . # # This script attempts to guess a canonical system name similar to # config.sub. If it succeeds, it prints the system name on stdout, and @@ -35,6 +37,20 @@ # (but try to keep the structure clean). # +# Use $HOST_CC if defined. $CC may point to a cross-compiler +if test x"$CC_FOR_BUILD" = x; then + if test x"$HOST_CC" != x; then + CC_FOR_BUILD="$HOST_CC" + else + if test x"$CC" != x; then + CC_FOR_BUILD="$CC" + else + CC_FOR_BUILD=cc + fi + fi +fi + + # This is needed to find uname on a Pyramid OSx when run in the BSD universe. # (ghazi@noc.rutgers.edu 8/24/94.) if (test -f /.attbin/uname) >/dev/null 2>&1 ; then @@ -46,7 +62,8 @@ UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown -trap 'rm -f dummy.c dummy.o dummy; exit 1' 1 2 15 +dummy=dummy-$$ +trap 'rm -f $dummy.c $dummy.o $dummy; exit 1' 1 2 15 # Note: order is significant - the case branches are not exclusive. @@ -59,7 +76,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in # A Tn.n version is a released field test version. # A Xn.n version is an unreleased experimental baselevel. # 1.2 uses "1.2" for uname -r. - cat <dummy.s + cat <$dummy.s .globl main .ent main main: @@ -76,9 +93,9 @@ main: ret \$31,(\$26),1 .end main EOF - ${CC-cc} dummy.s -o dummy 2>/dev/null + $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null if test "$?" = 0 ; then - ./dummy + ./$dummy case "$?" in 7) UNAME_MACHINE="alpha" @@ -97,8 +114,14 @@ EOF ;; esac fi - rm -f dummy.s dummy - echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr [[A-Z]] [[a-z]]` + rm -f $dummy.s $dummy + echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` + exit 0 ;; + Alpha\ *:Windows_NT*:*) + # How do we know it's Interix rather than the generic POSIX subsystem? + # Should we change UNAME_MACHINE based on the output of uname instead + # of the specific Alpha model? + echo alpha-pc-interix exit 0 ;; 21064:Windows_NT:50:3) echo alpha-dec-winnt3.5 @@ -133,6 +156,9 @@ EOF wgrisc:OpenBSD:*:*) echo mipsel-unknown-openbsd${UNAME_RELEASE} exit 0 ;; + *:OS/390:*:*) + echo i370-ibm-openedition + exit 0 ;; arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) echo arm-acorn-riscix${UNAME_RELEASE} exit 0;; @@ -142,7 +168,7 @@ EOF SR2?01:HI-UX/MPP:*:*) echo hppa1.1-hitachi-hiuxmpp exit 0;; - Pyramid*:OSx*:*:*|MIS*:OSx*:*:*|MIS*:SMP_DC-OSx*:*:*) + Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. if test "`(/bin/universe) 2>/dev/null`" = att ; then echo pyramid-pyramid-sysv3 @@ -150,7 +176,7 @@ EOF echo pyramid-pyramid-bsd fi exit 0 ;; - NILE:*:*:dcosx) + NILE*:*:*:dcosx) echo pyramid-pyramid-svr4 exit 0 ;; sun4H:SunOS:5.*:*) @@ -201,6 +227,32 @@ EOF atari*:OpenBSD:*:*) echo m68k-unknown-openbsd${UNAME_RELEASE} exit 0 ;; + # The situation for MiNT is a little confusing. The machine name + # can be virtually everything (everything which is not + # "atarist" or "atariste" at least should have a processor + # > m68000). The system name ranges from "MiNT" over "FreeMiNT" + # to the lowercase version "mint" (or "freemint"). Finally + # the system name "TOS" denotes a system which is actually not + # MiNT. But MiNT is downward compatible to TOS, so this should + # be no problem. + atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit 0 ;; + atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit 0 ;; + *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) + echo m68k-atari-mint${UNAME_RELEASE} + exit 0 ;; + milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) + echo m68k-milan-mint${UNAME_RELEASE} + exit 0 ;; + hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) + echo m68k-hades-mint${UNAME_RELEASE} + exit 0 ;; + *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) + echo m68k-unknown-mint${UNAME_RELEASE} + exit 0 ;; sun3*:NetBSD:*:*) echo m68k-sun-netbsd${UNAME_RELEASE} exit 0 ;; @@ -225,12 +277,6 @@ EOF macppc:NetBSD:*:*) echo powerpc-apple-netbsd${UNAME_RELEASE} exit 0 ;; - Power*:Rhapsody:*:*) - echo powerpc-apple-rhapsody${UNAME_RELEASE} - exit 0 ;; - *:Rhapsody:*:*) - echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} - exit 0 ;; RISC*:Mach:*:*) echo mips-dec-mach_bsd4.3 exit 0 ;; @@ -240,12 +286,16 @@ EOF VAX*:ULTRIX*:*:*) echo vax-dec-ultrix${UNAME_RELEASE} exit 0 ;; - 2020:CLIX:*:*) + 2020:CLIX:*:* | 2430:CLIX:*:*) echo clipper-intergraph-clix${UNAME_RELEASE} exit 0 ;; mips:*:*:UMIPS | mips:*:*:RISCos) - sed 's/^ //' << EOF >dummy.c - int main (argc, argv) int argc; char **argv; { + sed 's/^ //' << EOF >$dummy.c +#ifdef __cplusplus + int main (int argc, char *argv[]) { +#else + int main (argc, argv) int argc; char *argv[]; { +#endif #if defined (host_mips) && defined (MIPSEB) #if defined (SYSTYPE_SYSV) printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); @@ -260,10 +310,10 @@ EOF exit (-1); } EOF - ${CC-cc} dummy.c -o dummy \ - && ./dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \ - && rm dummy.c dummy && exit 0 - rm -f dummy.c dummy + $CC_FOR_BUILD $dummy.c -o $dummy \ + && ./$dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \ + && rm $dummy.c $dummy && exit 0 + rm -f $dummy.c $dummy echo mips-mips-riscos${UNAME_RELEASE} exit 0 ;; Night_Hawk:Power_UNIX:*:*) @@ -281,15 +331,18 @@ EOF AViiON:dgux:*:*) # DG/UX returns AViiON for all architectures UNAME_PROCESSOR=`/usr/bin/uname -p` - if [ $UNAME_PROCESSOR = mc88100 -o $UNAME_PROCESSOR = mc88110 ] ; then - if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx \ - -o ${TARGET_BINARY_INTERFACE}x = x ] ; then + if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110] + then + if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ + [ ${TARGET_BINARY_INTERFACE}x = x ] + then echo m88k-dg-dgux${UNAME_RELEASE} - else + else echo m88k-dg-dguxbcs${UNAME_RELEASE} + fi + else + echo i586-dg-dgux${UNAME_RELEASE} fi - else echo i586-dg-dgux${UNAME_RELEASE} - fi exit 0 ;; M88*:DolphinOS:*:*) # DolphinOS (SVR3) echo m88k-dolphin-sysv3 @@ -315,7 +368,7 @@ EOF exit 0 ;; *:AIX:2:3) if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then - sed 's/^ //' << EOF >dummy.c + sed 's/^ //' << EOF >$dummy.c #include main() @@ -326,8 +379,8 @@ EOF exit(0); } EOF - ${CC-cc} dummy.c -o dummy && ./dummy && rm dummy.c dummy && exit 0 - rm -f dummy.c dummy + $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm $dummy.c $dummy && exit 0 + rm -f $dummy.c $dummy echo rs6000-ibm-aix3.2.5 elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then echo rs6000-ibm-aix3.2.4 @@ -374,25 +427,25 @@ EOF case "${UNAME_MACHINE}" in 9000/31? ) HP_ARCH=m68000 ;; 9000/[34]?? ) HP_ARCH=m68k ;; - 9000/6?? | 9000/7?? | 9000/80[024] | 9000/820 | 9000/8?[13679] | 9000/892 ) - sed 's/^ //' << EOF >dummy.c + 9000/[678][0-9][0-9]) + sed 's/^ //' << EOF >$dummy.c #include #include - + int main () { #if defined(_SC_KERNEL_BITS) long bits = sysconf(_SC_KERNEL_BITS); - #endif + #endif long cpu = sysconf (_SC_CPU_VERSION); - - switch (cpu) + + switch (cpu) { case CPU_PA_RISC1_0: puts ("hppa1.0"); break; case CPU_PA_RISC1_1: puts ("hppa1.1"); break; - case CPU_PA_RISC2_0: + case CPU_PA_RISC2_0: #if defined(_SC_KERNEL_BITS) - switch (bits) + switch (bits) { case 64: puts ("hppa2.0w"); break; case 32: puts ("hppa2.0n"); break; @@ -400,20 +453,20 @@ EOF } break; #else /* !defined(_SC_KERNEL_BITS) */ puts ("hppa2.0"); break; - #endif + #endif default: puts ("hppa1.0"); break; } exit (0); } EOF - (${CC-cc} dummy.c -o dummy 2>/dev/null ) && HP_ARCH=`./dummy` - rm -f dummy.c dummy + (CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy` + rm -f $dummy.c $dummy esac HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` echo ${HP_ARCH}-hp-hpux${HPUX_REV} exit 0 ;; 3050*:HI-UX:*:*) - sed 's/^ //' << EOF >dummy.c + sed 's/^ //' << EOF >$dummy.c #include int main () @@ -438,8 +491,8 @@ EOF exit (0); } EOF - ${CC-cc} dummy.c -o dummy && ./dummy && rm dummy.c dummy && exit 0 - rm -f dummy.c dummy + $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm $dummy.c $dummy && exit 0 + rm -f $dummy.c $dummy echo unknown-hitachi-hiuxwe2 exit 0 ;; 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) @@ -448,6 +501,9 @@ EOF 9000/8??:4.3bsd:*:*) echo hppa1.0-hp-bsd exit 0 ;; + *9??*:MPE/iX:*:*) + echo hppa1.0-hp-mpeix + exit 0 ;; hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) echo hppa1.1-hp-osf exit 0 ;; @@ -464,22 +520,25 @@ EOF parisc*:Lites*:*:*) echo hppa1.1-hp-lites exit 0 ;; - C1*:ConvexOS:*:* | convex*:ConvexOS:C1*:*) + hppa*:OpenBSD:*:*) + echo hppa-unknown-openbsd + exit 0 ;; + C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) echo c1-convex-bsd exit 0 ;; - C2*:ConvexOS:*:* | convex*:ConvexOS:C2*:*) - if /usr/convex/getsysinfo -f scalar_acc + C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) + if getsysinfo -f scalar_acc then echo c32-convex-bsd else echo c2-convex-bsd fi exit 0 ;; - C34*:ConvexOS:*:* | convex*:ConvexOS:C34*:*) + C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) echo c34-convex-bsd exit 0 ;; - C38*:ConvexOS:*:* | convex*:ConvexOS:C38*:*) + C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) echo c38-convex-bsd exit 0 ;; - C4*:ConvexOS:*:* | convex*:ConvexOS:C4*:*) + C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) echo c4-convex-bsd exit 0 ;; CRAY*X-MP:*:*:*) @@ -493,23 +552,17 @@ EOF | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ exit 0 ;; - CRAY*T3E:*:*:*) - echo t3e-cray-unicosmk${UNAME_RELEASE} - exit 0 ;; CRAY*TS:*:*:*) echo t90-cray-unicos${UNAME_RELEASE} exit 0 ;; + CRAY*T3E:*:*:*) + echo alpha-cray-unicosmk${UNAME_RELEASE} + exit 0 ;; CRAY-2:*:*:*) echo cray2-cray-unicos exit 0 ;; - SX-4:SUPER-UX:*:*) - echo sx4-nec-superux${UNAME_RELEASE} - exit 0 ;; - SX-5:SUPER-UX:*:*) - echo sx5-nec-superux${UNAME_RELEASE} - exit 0 ;; F300:UNIX_System_V:*:*) - FUJITSU_SYS=`uname -p | tr [A-Z] [a-z] | sed -e 's/\///'` + FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` echo "f300-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" exit 0 ;; @@ -522,17 +575,26 @@ EOF hp300:OpenBSD:*:*) echo m68k-unknown-openbsd${UNAME_RELEASE} exit 0 ;; + i?86:BSD/386:*:* | i?86:BSD/OS:*:*) + echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} + exit 0 ;; sparc*:BSD/OS:*:*) echo sparc-unknown-bsdi${UNAME_RELEASE} exit 0 ;; - i?86:BSD/386:*:* | *:BSD/OS:*:*) - echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} + *:BSD/OS:*:*) + echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} exit 0 ;; *:FreeBSD:*:*) + if test -x /usr/bin/objformat; then + if test "elf" = "`/usr/bin/objformat`"; then + echo ${UNAME_MACHINE}-unknown-freebsdelf`echo ${UNAME_RELEASE}|sed -e 's/[-_].*//'` + exit 0 + fi + fi echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` exit 0 ;; *:NetBSD:*:*) - echo ${UNAME_MACHINE}-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` + echo ${UNAME_MACHINE}-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*//'` exit 0 ;; *:OpenBSD:*:*) echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` @@ -543,6 +605,15 @@ EOF i*:MINGW*:*) echo ${UNAME_MACHINE}-pc-mingw32 exit 0 ;; + i*:Windows_NT*:* | Pentium*:Windows_NT*:*) + # How do we know it's Interix rather than the generic POSIX subsystem? + # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we + # UNAME_MACHINE based on the output of uname instead of i386? + echo i386-pc-interix + exit 0 ;; + i*:UWIN*:*) + echo ${UNAME_MACHINE}-pc-uwin + exit 0 ;; p*:CYGWIN*:*) echo powerpcle-unknown-cygwin exit 0 ;; @@ -553,15 +624,11 @@ EOF echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` exit 0 ;; *:Linux:*:*) - # uname on the ARM produces all sorts of strangeness, and we need to - # filter it out. - case "$UNAME_MACHINE" in - arm* | sa110*) UNAME_MACHINE="arm" ;; - esac # The BFD linker knows what the default object file format is, so - # first see if it will tell us. - ld_help_string=`ld --help 2>&1` + # first see if it will tell us. cd to the root directory to prevent + # problems with other programs or directories called `ld' in the path. + ld_help_string=`cd /; ld --help 2>&1` ld_supported_emulations=`echo $ld_help_string \ | sed -ne '/supported emulations:/!d s/[ ][ ]*/ /g @@ -569,16 +636,74 @@ EOF s/ .*// p'` case "$ld_supported_emulations" in - i?86linux) echo "${UNAME_MACHINE}-pc-linux-gnuaout" ; exit 0 ;; - i?86coff) echo "${UNAME_MACHINE}-pc-linux-gnucoff" ; exit 0 ;; - sparclinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;; - armlinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;; - m68klinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;; - elf32ppc) echo "powerpc-unknown-linux-gnu" ; exit 0 ;; + *ia64) + echo "${UNAME_MACHINE}-unknown-linux" + exit 0 + ;; + i?86linux) + echo "${UNAME_MACHINE}-pc-linux-gnuaout" + exit 0 + ;; + i?86coff) + echo "${UNAME_MACHINE}-pc-linux-gnucoff" + exit 0 + ;; + sparclinux) + echo "${UNAME_MACHINE}-unknown-linux-gnuaout" + exit 0 + ;; + armlinux) + echo "${UNAME_MACHINE}-unknown-linux-gnuaout" + exit 0 + ;; + elf32arm*) + echo "${UNAME_MACHINE}-unknown-linux-gnu" + exit 0 + ;; + armelf_linux*) + echo "${UNAME_MACHINE}-unknown-linux-gnu" + exit 0 + ;; + m68klinux) + echo "${UNAME_MACHINE}-unknown-linux-gnuaout" + exit 0 + ;; + elf32ppc) + # Determine Lib Version + cat >$dummy.c < +#if defined(__GLIBC__) +extern char __libc_version[]; +extern char __libc_release[]; +#endif +main(argc, argv) + int argc; + char *argv[]; +{ +#if defined(__GLIBC__) + printf("%s %s\n", __libc_version, __libc_release); +#else + printf("unkown\n"); +#endif + return 0; +} +EOF + LIBC="" + $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null + if test "$?" = 0 ; then + ./$dummy | grep 1\.99 > /dev/null + if test "$?" = 0 ; then + LIBC="libc1" + fi + fi + rm -f $dummy.c $dummy + echo powerpc-unknown-linux-gnu${LIBC} + exit 0 + ;; esac if test "${UNAME_MACHINE}" = "alpha" ; then - sed 's/^ //' <dummy.s + sed 's/^ //' <$dummy.s .globl main .ent main main: @@ -596,9 +721,9 @@ EOF .end main EOF LIBC="" - ${CC-cc} dummy.s -o dummy 2>/dev/null + $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null if test "$?" = 0 ; then - ./dummy + ./$dummy case "$?" in 7) UNAME_MACHINE="alpha" @@ -615,22 +740,23 @@ EOF 16) UNAME_MACHINE="alphaev6" ;; - esac + esac - objdump --private-headers dummy | \ + objdump --private-headers $dummy | \ grep ld.so.1 > /dev/null if test "$?" = 0 ; then LIBC="libc1" fi - fi - rm -f dummy.s dummy + fi + rm -f $dummy.s $dummy echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} ; exit 0 elif test "${UNAME_MACHINE}" = "mips" ; then - cat >dummy.c <$dummy.c </dev/null && ./dummy "${UNAME_MACHINE}" && rm dummy.c dummy && exit 0 - rm -f dummy.c dummy + $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0 + rm -f $dummy.c $dummy else # Either a pre-BFD a.out linker (linux-gnuoldld) # or one that does not give us useful --help. @@ -660,12 +786,13 @@ EOF ;; esac # Determine whether the default compiler is a.out or elf - cat >dummy.c <$dummy.c < -main(argc, argv) - int argc; - char *argv[]; -{ +#ifdef __cplusplus + int main (int argc, char *argv[]) { +#else + int main (argc, argv) int argc; char *argv[]; { +#endif #ifdef __ELF__ # ifdef __GLIBC__ # if __GLIBC__ >= 2 @@ -682,8 +809,8 @@ main(argc, argv) return 0; } EOF - ${CC-cc} dummy.c -o dummy 2>/dev/null && ./dummy "${UNAME_MACHINE}" && rm dummy.c dummy && exit 0 - rm -f dummy.c dummy + $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0 + rm -f $dummy.c $dummy fi ;; # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. earlier versions # are messed up and put the nodename in both sysname and nodename. @@ -699,10 +826,20 @@ EOF echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} exit 0 ;; i?86:*:4.*:* | i?86:SYSTEM_V:4.*:*) + UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then - echo ${UNAME_MACHINE}-univel-sysv${UNAME_RELEASE} + echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} else - echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE} + echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} + fi + exit 0 ;; + i?86:*:5:7*) + # Fixed at (any) Pentium or better + UNAME_MACHINE=i586 + if [ ${UNAME_SYSTEM} = "UnixWare" ] ; then + echo ${UNAME_MACHINE}-sco-sysv${UNAME_RELEASE}uw${UNAME_VERSION} + else + echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE} fi exit 0 ;; i?86:*:3.2:*) @@ -714,18 +851,15 @@ EOF (/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486 (/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \ && UNAME_MACHINE=i586 + (/bin/uname -X|egrep '^Machine.*Pent ?II' >/dev/null) \ + && UNAME_MACHINE=i686 + (/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) \ + && UNAME_MACHINE=i686 echo ${UNAME_MACHINE}-pc-sco$UNAME_REL else echo ${UNAME_MACHINE}-pc-sysv32 fi exit 0 ;; - i?86:UnixWare:*:*) - if /bin/uname -X 2>/dev/null >/dev/null ; then - (/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \ - && UNAME_MACHINE=i586 - fi - echo ${UNAME_MACHINE}-unixware-${UNAME_RELEASE}-${UNAME_VERSION} - exit 0 ;; pc:*:*:*) # uname -m prints for DJGPP always 'pc', but it prints nothing about # the processor, so we play safe by assuming i386. @@ -767,7 +901,7 @@ EOF mc68030:UNIX_System_V:4.*:*) echo m68k-atari-sysv4 exit 0 ;; - i?86:LynxOS:2.*:*) + i?86:LynxOS:2.*:* | i?86:LynxOS:3.[01]*:*) echo i386-unknown-lynxos${UNAME_RELEASE} exit 0 ;; TSUNAMI:LynxOS:2.*:*) @@ -776,12 +910,12 @@ EOF rs6000:LynxOS:2.*:* | PowerPC:LynxOS:2.*:*) echo rs6000-unknown-lynxos${UNAME_RELEASE} exit 0 ;; - BS2000:POSIX-BC:*:*) - echo bs2000-siemens-posix - exit 0 ;; SM[BE]S:UNIX_SV:*:*) echo mips-dde-sysv${UNAME_RELEASE} exit 0 ;; + RM*:ReliantUNIX-*:*:*) + echo mips-sni-sysv4 + exit 0 ;; RM*:SINIX-*:*:*) echo mips-sni-sysv4 exit 0 ;; @@ -812,7 +946,7 @@ EOF news*:NEWS-OS:*:6*) echo mips-sony-newsos6 exit 0 ;; - R3000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R4000:UNIX_SV:*:*) + R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) if [ -d /usr/nec ]; then echo mips-nec-sysv${UNAME_RELEASE} else @@ -828,15 +962,27 @@ EOF BePC:BeOS:*:*) # BeOS running on Intel PC compatible. echo i586-pc-beos exit 0 ;; - *:OS/390:*:*) - echo s390-ibm-os390 + SX-4:SUPER-UX:*:*) + echo sx4-nec-superux${UNAME_RELEASE} + exit 0 ;; + SX-5:SUPER-UX:*:*) + echo sx5-nec-superux${UNAME_RELEASE} + exit 0 ;; + Power*:Rhapsody:*:*) + echo powerpc-apple-rhapsody${UNAME_RELEASE} + exit 0 ;; + *:Rhapsody:*:*) + echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} + exit 0 ;; + *:QNX:*:4*) + echo i386-qnx-qnx${UNAME_VERSION} exit 0 ;; esac #echo '(No uname command or uname output not recognized.)' 1>&2 #echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 -cat >dummy.c <$dummy.c < # include @@ -874,7 +1020,10 @@ main () #endif int version; version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; - printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); + if (version < 4) + printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); + else + printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); exit (0); #endif @@ -934,8 +1083,8 @@ main () } EOF -${CC-cc} dummy.c -o dummy 2>/dev/null && ./dummy && rm dummy.c dummy && exit 0 -rm -f dummy.c dummy +$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm $dummy.c $dummy && exit 0 +rm -f $dummy.c $dummy # Apollos put the system type in the environment. @@ -945,12 +1094,12 @@ test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; } if [ -x /usr/convex/getsysinfo ] then - case `/usr/convex/getsysinfo -f cpu_type` in + case `getsysinfo -f cpu_type` in c1*) echo c1-convex-bsd exit 0 ;; c2*) - if /usr/convex/getsysinfo -f scalar_acc + if getsysinfo -f scalar_acc then echo c32-convex-bsd else echo c2-convex-bsd fi diff --git a/contrib/tcsh/config.sub b/contrib/tcsh/config.sub index 7ed374b0b5e..28426bb8fa0 100755 --- a/contrib/tcsh/config.sub +++ b/contrib/tcsh/config.sub @@ -1,6 +1,6 @@ #! /bin/sh # Configuration validation subroutine script, version 1.1. -# Copyright (C) 1991, 92-97, 1998 Free Software Foundation, Inc. +# Copyright (C) 1991, 92-97, 1998, 1999 Free Software Foundation, Inc. # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software # can handle that machine. It does not imply ALL GNU software can. @@ -98,11 +98,21 @@ case $os in os= basic_machine=$1 ;; + -sim | -cisco | -oki | -wec | -winbond) + os= + basic_machine=$1 + ;; + -scout) + ;; + -wrs) + os=-vxworks + basic_machine=$1 + ;; -hiux*) os=-hiuxwe2 ;; -sco5) - os=sco3.2v5 + os=-sco3.2v5 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco4) @@ -121,6 +131,9 @@ case $os in os=-sco3.2v2 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; + -udk*) + basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` + ;; -isc) os=-isc2.2 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` @@ -143,24 +156,33 @@ case $os in -psos*) os=-psos ;; + -mint | -mint[0-9]*) + basic_machine=m68k-atari + os=-mint + ;; esac # Decode aliases for certain CPU-COMPANY combinations. case $basic_machine in # Recognize the basic CPU types without company name. # Some are omitted here because they have special meanings below. - tahoe | i860 | m32r | m68k | m68000 | m88k | ns32k | arc | arm \ + tahoe | i860 | ia64 | m32r | m68k | m68000 | m88k | ns32k | arc | arm \ | arme[lb] | pyramid | mn10200 | mn10300 | tron | a29k \ - | 580 | i960 | h8300 | hppa | hppa1.0 | hppa1.1 | hppa2.0 \ - | hppa2.0n \ - | alpha | alphaev5 | alphaev56 | alphaev6 \ - | we32k | ns16k | clipper \ - | i370 | sh | powerpc | powerpcle | 1750a | dsp16xx | pdp11 \ - | mips64 | mipsel | mips64el | mips64orion | mips64orionel \ - | mipstx39 | mipstx39el \ - | sparc | sparclet | sparclite | sparc64 | v850) + | 580 | i960 | h8300 \ + | hppa | hppa1.0 | hppa1.1 | hppa2.0 | hppa2.0w | hppa2.0n \ + | alpha | alphaev[4-7] | alphaev56 | alphapca5[67] \ + | we32k | ns16k | clipper | i370 | sh | powerpc | powerpcle \ + | 1750a | dsp16xx | pdp11 | mips16 | mips64 | mipsel | mips64el \ + | mips64orion | mips64orionel | mipstx39 | mipstx39el \ + | mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el \ + | mips64vr5000 | miprs64vr5000el | mcore \ + | sparc | sparclet | sparclite | sparc64 | sparcv9 | v850 | c4x \ + | thumb | d10v | fr30) basic_machine=$basic_machine-unknown ;; + m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | h8500 | w65 | pj | pjl) + ;; + # We use `pc' rather than `unknown' # because (1) that's what they normally are, and # (2) the word "unknown" tends to confuse beginning users. @@ -173,29 +195,45 @@ case $basic_machine in exit 1 ;; # Recognize the basic CPU types with company name. - vax-* | tahoe-* | i[34567]86-* | i860-* | m32r-* | m68k-* | m68000-* \ + # FIXME: clean up the formatting here. + vax-* | tahoe-* | i[34567]86-* | i860-* | ia64-* | m32r-* | m68k-* | m68000-* \ | m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | arm-* | c[123]* \ | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \ - | power-* | none-* | 580-* | cray2-* | h8300-* | i960-* \ - | xmp-* | ymp-* | hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* \ - | hppa2.0n-* \ - | alpha-* | alphaev5-* | alphaev56-* | alphaev6-* \ - | we32k-* | cydra-* \ - | ns16k-* | pn-* | np1-* | xps100-* | clipper-* | orion-* \ + | power-* | none-* | 580-* | cray2-* | h8300-* | h8500-* | i960-* \ + | xmp-* | ymp-* \ + | hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* | hppa2.0w-* | hppa2.0n-* \ + | alpha-* | alphaev[4-7]-* | alphaev56-* | alphapca5[67]-* \ + | we32k-* | cydra-* | ns16k-* | pn-* | np1-* | xps100-* \ + | clipper-* | orion-* \ | sparclite-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \ - | sparc64-* | mips64-* | mipsel-* \ - | mips64el-* | mips64orion-* | mips64orionel-* \ - | mipstx39-* | mipstx39el-* \ - | f301-*) + | sparc64-* | sparcv9-* | sparc86x-* | mips16-* | mips64-* | mipsel-* \ + | mips64el-* | mips64orion-* | mips64orionel-* \ + | mips64vr4100-* | mips64vr4100el-* | mips64vr4300-* | mips64vr4300el-* \ + | mipstx39-* | mipstx39el-* | mcore-* \ + | f301-* | armv*-* | t3e-* \ + | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \ + | thumb-* | v850-* | d30v-* | tic30-* | c30-* | fr30-* ) ;; # Recognize the various machine names and aliases which stand # for a CPU type and a company and sometimes even an OS. + 386bsd) + basic_machine=i386-unknown + os=-bsd + ;; 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) basic_machine=m68000-att ;; 3b*) basic_machine=we32k-att ;; + a29khif) + basic_machine=a29k-amd + os=-udi + ;; + adobe68k) + basic_machine=m68010-adobe + os=-scout + ;; alliant | fx80) basic_machine=fx80-alliant ;; @@ -225,6 +263,10 @@ case $basic_machine in basic_machine=m68k-apollo os=-sysv ;; + apollo68bsd) + basic_machine=m68k-apollo + os=-bsd + ;; aux) basic_machine=m68k-apple os=-aux @@ -301,6 +343,10 @@ case $basic_machine in encore | umax | mmax) basic_machine=ns32k-encore ;; + es1800 | OSE68k | ose68k | ose | OSE) + basic_machine=m68k-ericsson + os=-ose + ;; fx2800) basic_machine=i860-alliant ;; @@ -319,6 +365,14 @@ case $basic_machine in basic_machine=h8300-hitachi os=-hms ;; + h8300xray) + basic_machine=h8300-hitachi + os=-xray + ;; + h8500hms) + basic_machine=h8500-hitachi + os=-hms + ;; harris) basic_machine=m88k-harris os=-sysv3 @@ -334,13 +388,30 @@ case $basic_machine in basic_machine=m68k-hp os=-hpux ;; + hp3k9[0-9][0-9] | hp9[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; hp9k2[0-9][0-9] | hp9k31[0-9]) basic_machine=m68000-hp ;; hp9k3[2-9][0-9]) basic_machine=m68k-hp ;; - hp9k7[0-9][0-9] | hp7[0-9][0-9] | hp9k8[0-9]7 | hp8[0-9]7) + hp9k6[0-9][0-9] | hp6[0-9][0-9]) + basic_machine=hppa1.0-hp + ;; + hp9k7[0-79][0-9] | hp7[0-79][0-9]) + basic_machine=hppa1.1-hp + ;; + hp9k78[0-9] | hp78[0-9]) + # FIXME: really hppa2.0-hp + basic_machine=hppa1.1-hp + ;; + hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) + # FIXME: really hppa2.0-hp + basic_machine=hppa1.1-hp + ;; + hp9k8[0-9][13679] | hp8[0-9][13679]) basic_machine=hppa1.1-hp ;; hp9k8[0-9][0-9] | hp8[0-9][0-9]) @@ -349,13 +420,16 @@ case $basic_machine in hppa-next) os=-nextstep3 ;; + hppaosf) + basic_machine=hppa1.1-hp + os=-osf + ;; + hppro) + basic_machine=hppa1.1-hp + os=-proelf + ;; i370-ibm* | ibm*) basic_machine=i370-ibm - os=-mvs - ;; - s390-ibm* ) - basic_machine=s390-ibm - os=-os390 ;; # I'm not sure what "Sysv32" means. Should this be sysv3.2? i[34567]86v32) @@ -374,6 +448,25 @@ case $basic_machine in basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-solaris2 ;; + i386mach) + basic_machine=i386-mach + os=-mach + ;; + i386-vsta | vsta) + basic_machine=i386-unknown + os=-vsta + ;; + i386-go32 | go32) + basic_machine=i386-unknown + os=-go32 + ;; + i386-mingw32 | mingw32) + basic_machine=i386-unknown + os=-mingw32 + ;; + i386-qnx | qnx) + basic_machine=i386-qnx + ;; iris | iris4d) basic_machine=mips-sgi case $os in @@ -402,6 +495,10 @@ case $basic_machine in miniframe) basic_machine=m68000-convergent ;; + *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) + basic_machine=m68k-atari + os=-mint + ;; mipsel*-linux*) basic_machine=mipsel-unknown os=-linux-gnu @@ -416,10 +513,30 @@ case $basic_machine in mips3*) basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown ;; + monitor) + basic_machine=m68k-rom68k + os=-coff + ;; + msdos) + basic_machine=i386-unknown + os=-msdos + ;; + mvs) + basic_machine=i370-ibm + os=-mvs + ;; ncr3000) basic_machine=i486-ncr os=-sysv4 ;; + netbsd386) + basic_machine=i386-unknown + os=-netbsd + ;; + netwinder) + basic_machine=armv4l-rebel + os=-linux + ;; news | news700 | news800 | news900) basic_machine=m68k-sony os=-newsos @@ -432,6 +549,10 @@ case $basic_machine in basic_machine=mips-sony os=-newsos ;; + necv70) + basic_machine=v70-nec + os=-sysv + ;; next | m*-next ) basic_machine=m68k-next case $os in @@ -457,9 +578,25 @@ case $basic_machine in basic_machine=i960-intel os=-nindy ;; + mon960) + basic_machine=i960-intel + os=-mon960 + ;; np1) basic_machine=np1-gould ;; + op50n-* | op60c-*) + basic_machine=hppa1.1-oki + os=-proelf + ;; + OSE68000 | ose68000) + basic_machine=m68000-ericsson + os=-ose + ;; + os68k) + basic_machine=m68k-none + os=-os68k + ;; pa-hitachi) basic_machine=hppa1.1-hitachi os=-hiuxwe2 @@ -477,19 +614,19 @@ case $basic_machine in pc532 | pc532-*) basic_machine=ns32k-pc532 ;; - pentium | p5 | k5 | nexen) + pentium | p5 | k5 | k6 | nexen) basic_machine=i586-pc ;; - pentiumpro | p6 | k6 | 6x86) + pentiumpro | p6 | 6x86) basic_machine=i686-pc ;; pentiumii | pentium2) basic_machine=i786-pc ;; - pentium-* | p5-* | k5-* | nexen-*) + pentium-* | p5-* | k5-* | k6-* | nexen-*) basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` ;; - pentiumpro-* | p6-* | k6-* | 6x86-*) + pentiumpro-* | p6-* | 6x86-*) basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentiumii-* | pentium2-*) @@ -513,12 +650,20 @@ case $basic_machine in ps2) basic_machine=i386-ibm ;; + rom68k) + basic_machine=m68k-rom68k + os=-coff + ;; rm[46]00) basic_machine=mips-siemens ;; rtpc | rtpc-*) basic_machine=romp-ibm ;; + sa29200) + basic_machine=a29k-amd + os=-udi + ;; sequent) basic_machine=i386-sequent ;; @@ -526,6 +671,10 @@ case $basic_machine in basic_machine=sh-hitachi os=-hms ;; + sparclite-wrs) + basic_machine=sparclite-wrs + os=-vxworks + ;; sps7) basic_machine=m68k-bull os=-sysv2 @@ -533,6 +682,13 @@ case $basic_machine in spur) basic_machine=spur-unknown ;; + st2000) + basic_machine=m68k-tandem + ;; + stratus) + basic_machine=i860-stratus + os=-sysv4 + ;; sun2) basic_machine=m68000-sun ;; @@ -577,6 +733,10 @@ case $basic_machine in basic_machine=i386-sequent os=-dynix ;; + t3e) + basic_machine=t3e-cray + os=-unicos + ;; tx39) basic_machine=mipstx39-unknown ;; @@ -594,6 +754,10 @@ case $basic_machine in basic_machine=a29k-nyu os=-sym1 ;; + v810 | necv810) + basic_machine=v810-nec + os=-none + ;; vaxv) basic_machine=vax-dec os=-sysv @@ -617,6 +781,14 @@ case $basic_machine in basic_machine=a29k-wrs os=-vxworks ;; + w65*) + basic_machine=w65-wdc + os=-none + ;; + w89k-*) + basic_machine=hppa1.1-winbond + os=-proelf + ;; xmp) basic_machine=xmp-cray os=-unicos @@ -624,6 +796,10 @@ case $basic_machine in xps | xps100) basic_machine=xps100-honeywell ;; + z8k-*-coff) + basic_machine=z8k-unknown + os=-sim + ;; none) basic_machine=none-none os=-none @@ -631,6 +807,15 @@ case $basic_machine in # Here we handle the default manufacturer of certain CPU types. It is in # some cases the only manufacturer, in others, it is the most popular. + w89k) + basic_machine=hppa1.1-winbond + ;; + op50n) + basic_machine=hppa1.1-oki + ;; + op60c) + basic_machine=hppa1.1-oki + ;; mips) if [ x$os = x-linux-gnu ]; then basic_machine=mips-unknown @@ -653,7 +838,7 @@ case $basic_machine in we32k) basic_machine=we32k-att ;; - sparc) + sparc | sparcv9) basic_machine=sparc-sun ;; cydra) @@ -665,6 +850,16 @@ case $basic_machine in orion105) basic_machine=clipper-highlevel ;; + mac | mpw | mac-mpw) + basic_machine=m68k-apple + ;; + pmac | pmac-mpw) + basic_machine=powerpc-apple + ;; + c4x*) + basic_machine=c4x-none + os=-coff + ;; *) echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 exit 1 @@ -718,13 +913,21 @@ case $os in | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \ - | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* \ + | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ - | -mingw32* | -linux-gnu* | -uxpv* | -beos*) + | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \ + | -interix* | -uwin* | -rhapsody* | -opened* | -openstep* | -oskit*) # Remember, each alternative MUST END IN *, to match a version number. ;; + -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ + | -windows* | -osx | -abug | -netware* | -os9* | -beos* \ + | -macos* | -mpw* | -magic* | -mon960* | -lnews*) + ;; + -mac*) + os=`echo $os | sed -e 's|mac|macos|'` + ;; -linux*) os=`echo $os | sed -e 's|linux|linux-gnu|'` ;; @@ -734,6 +937,9 @@ case $os in -sunos6*) os=`echo $os | sed -e 's|sunos6|solaris3|'` ;; + -opened*) + os=-openedition + ;; -osfrose*) os=-osfrose ;; @@ -749,6 +955,9 @@ case $os in -acis*) os=-aos ;; + -386bsd) + os=-bsd + ;; -ctix* | -uts*) os=-sysv ;; @@ -768,6 +977,9 @@ case $os in -oss*) os=-sysv3 ;; + -qnx) + os=-qnx4 + ;; -svr4) os=-sysv4 ;; @@ -780,11 +992,17 @@ case $os in # This must come after -sysvr4. -sysv*) ;; + -ose*) + os=-ose + ;; + -es1800*) + os=-ose + ;; -xenix) os=-xenix ;; - -os390*) - os=-os390 + -*mint | -*MiNT) + os=-mint ;; -none) ;; @@ -811,6 +1029,9 @@ case $basic_machine in *-acorn) os=-riscix1.2 ;; + arm*-rebel) + os=-linux + ;; arm*-semi) os=-aout ;; @@ -832,6 +1053,15 @@ case $basic_machine in # default. # os=-sunos4 ;; + m68*-cisco) + os=-aout + ;; + mips*-cisco) + os=-elf + ;; + mips*-*) + os=-elf + ;; *-tti) # must be before sparc entry or we get the wrong os. os=-sysv3 ;; @@ -844,6 +1074,15 @@ case $basic_machine in *-ibm) os=-aix ;; + *-wec) + os=-proelf + ;; + *-winbond) + os=-proelf + ;; + *-oki) + os=-proelf + ;; *-hp) os=-hpux ;; @@ -907,6 +1146,18 @@ case $basic_machine in f301-fujitsu) os=-uxpv ;; + *-rom68k) + os=-coff + ;; + *-*bug) + os=-coff + ;; + *-apple) + os=-macos + ;; + *-atari*) + os=-mint + ;; *) os=-none ;; @@ -928,9 +1179,15 @@ case $basic_machine in -aix*) vendor=ibm ;; + -beos*) + vendor=be + ;; -hpux*) vendor=hp ;; + -mpeix*) + vendor=hp + ;; -hiux*) vendor=hitachi ;; @@ -946,10 +1203,7 @@ case $basic_machine in -genix*) vendor=ns ;; - -mvs*) - vendor=ibm - ;; - -os390*) + -mvs* | -opened*) vendor=ibm ;; -ptx*) @@ -961,6 +1215,15 @@ case $basic_machine in -aux*) vendor=apple ;; + -hms*) + vendor=hitachi + ;; + -mpw* | -macos*) + vendor=apple + ;; + -*mint | -*MiNT) + vendor=atari + ;; esac basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` ;; diff --git a/contrib/tcsh/config/bsd4.4 b/contrib/tcsh/config/bsd4.4 index fd077939b87..82f776c8b93 100644 --- a/contrib/tcsh/config/bsd4.4 +++ b/contrib/tcsh/config/bsd4.4 @@ -122,6 +122,7 @@ #if defined(__FreeBSD__) #define NLS_BUGS +#define BSD_STYLE_COLORLS #endif #if defined(__bsdi__) diff --git a/contrib/tcsh/configure b/contrib/tcsh/configure index d783e54b8a2..fb7c41db49f 100755 --- a/contrib/tcsh/configure +++ b/contrib/tcsh/configure @@ -612,7 +612,7 @@ case "${host}" in tcsh_config_file=hpux8 ;; *-hp-hpux1[0-9]* ) - tcsh_config_file=hpux8 + tcsh_config_file=hpux11 ;; ## IBM AIX systems @@ -773,6 +773,11 @@ case "${host}" in tcsh_config_file=sysv4 ;; + ## Apollo Domain/OS + *-apollo-*) + tcsh_config_file=apollo + ;; + * ) { echo "configure: error: Tcsh can't guess the configuration file name for \`${host}' systems. @@ -787,7 +792,7 @@ echo "Tcsh will use configuration file \`$tcsh_config_file'." # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:791: checking for $ac_word" >&5 +echo "configure:796: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -817,7 +822,7 @@ if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:821: checking for $ac_word" >&5 +echo "configure:826: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -868,7 +873,7 @@ fi # Extract the first word of "cl", so it can be a program name with args. set dummy cl; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:872: checking for $ac_word" >&5 +echo "configure:877: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -900,7 +905,7 @@ fi fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 -echo "configure:904: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 +echo "configure:909: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 ac_ext=c # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. @@ -911,12 +916,12 @@ cross_compiling=$ac_cv_prog_cc_cross cat > conftest.$ac_ext << EOF -#line 915 "configure" +#line 920 "configure" #include "confdefs.h" main(){return(0);} EOF -if { (eval echo configure:920: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:925: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then ac_cv_prog_cc_works=yes # If we can't run a trivial program, we are probably using a cross compiler. if (./conftest; exit) 2>/dev/null; then @@ -942,12 +947,12 @@ if test $ac_cv_prog_cc_works = no; then { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; } fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 -echo "configure:946: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "configure:951: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 cross_compiling=$ac_cv_prog_cc_cross echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 -echo "configure:951: checking whether we are using GNU C" >&5 +echo "configure:956: checking whether we are using GNU C" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -956,7 +961,7 @@ else yes; #endif EOF -if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:960: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then +if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:965: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then ac_cv_prog_gcc=yes else ac_cv_prog_gcc=no @@ -975,7 +980,7 @@ ac_test_CFLAGS="${CFLAGS+set}" ac_save_CFLAGS="$CFLAGS" CFLAGS= echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 -echo "configure:979: checking whether ${CC-cc} accepts -g" >&5 +echo "configure:984: checking whether ${CC-cc} accepts -g" >&5 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1007,7 +1012,7 @@ else fi echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6 -echo "configure:1011: checking how to run the C preprocessor" >&5 +echo "configure:1016: checking how to run the C preprocessor" >&5 # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= @@ -1022,13 +1027,13 @@ else # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. cat > conftest.$ac_ext < Syntax Error EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1032: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1037: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then : @@ -1039,13 +1044,13 @@ else rm -rf conftest* CPP="${CC-cc} -E -traditional-cpp" cat > conftest.$ac_ext < Syntax Error EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1049: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1054: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then : @@ -1056,13 +1061,13 @@ else rm -rf conftest* CPP="${CC-cc} -nologo -E" cat > conftest.$ac_ext < Syntax Error EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1066: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1071: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then : @@ -1088,13 +1093,13 @@ echo "$ac_t""$CPP" 1>&6 if test $ac_cv_prog_gcc = yes; then echo $ac_n "checking whether ${CC-cc} needs -traditional""... $ac_c" 1>&6 -echo "configure:1092: checking whether ${CC-cc} needs -traditional" >&5 +echo "configure:1097: checking whether ${CC-cc} needs -traditional" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gcc_traditional'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else ac_pattern="Autoconf.*'x'" cat > conftest.$ac_ext < Autoconf TIOCGETP @@ -1112,7 +1117,7 @@ rm -f conftest* if test $ac_cv_prog_gcc_traditional = no; then cat > conftest.$ac_ext < Autoconf TCGETA @@ -1148,14 +1153,14 @@ esac echo $ac_n "checking for library containing crypt""... $ac_c" 1>&6 -echo "configure:1152: checking for library containing crypt" >&5 +echo "configure:1157: checking for library containing crypt" >&5 if eval "test \"`echo '$''{'ac_cv_search_crypt'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else ac_func_search_save_LIBS="$LIBS" ac_cv_search_crypt="no" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1175: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_search_crypt="none required" else @@ -1177,7 +1182,7 @@ rm -f conftest* test "$ac_cv_search_crypt" = "no" && for i in crypt; do LIBS="-l$i $ac_func_search_save_LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1197: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_search_crypt="-l$i" break @@ -1210,14 +1215,14 @@ else : fi echo $ac_n "checking for library containing tgetent""... $ac_c" 1>&6 -echo "configure:1214: checking for library containing tgetent" >&5 +echo "configure:1219: checking for library containing tgetent" >&5 if eval "test \"`echo '$''{'ac_cv_search_tgetent'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else ac_func_search_save_LIBS="$LIBS" ac_cv_search_tgetent="no" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1237: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_search_tgetent="none required" else @@ -1239,7 +1244,7 @@ rm -f conftest* test "$ac_cv_search_tgetent" = "no" && for i in termlib curses termcap; do LIBS="-l$i $ac_func_search_save_LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1259: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_search_tgetent="-l$i" break @@ -1272,14 +1277,14 @@ else : fi echo $ac_n "checking for library containing gethostbyname""... $ac_c" 1>&6 -echo "configure:1276: checking for library containing gethostbyname" >&5 +echo "configure:1281: checking for library containing gethostbyname" >&5 if eval "test \"`echo '$''{'ac_cv_search_gethostbyname'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else ac_func_search_save_LIBS="$LIBS" ac_cv_search_gethostbyname="no" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1299: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_search_gethostbyname="none required" else @@ -1301,7 +1306,7 @@ rm -f conftest* test "$ac_cv_search_gethostbyname" = "no" && for i in nsl; do LIBS="-l$i $ac_func_search_save_LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1321: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_search_gethostbyname="-l$i" break @@ -1334,14 +1339,14 @@ else : fi echo $ac_n "checking for library containing connect""... $ac_c" 1>&6 -echo "configure:1338: checking for library containing connect" >&5 +echo "configure:1343: checking for library containing connect" >&5 if eval "test \"`echo '$''{'ac_cv_search_connect'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else ac_func_search_save_LIBS="$LIBS" ac_cv_search_connect="no" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1361: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_search_connect="none required" else @@ -1363,7 +1368,7 @@ rm -f conftest* test "$ac_cv_search_connect" = "no" && for i in socket; do LIBS="-l$i $ac_func_search_save_LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1383: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_search_connect="-l$i" break @@ -1409,12 +1414,12 @@ fi if test "$hesiod" != no; then HESLIB="-lhesiod" echo $ac_n "checking for res_send""... $ac_c" 1>&6 -echo "configure:1413: checking for res_send" >&5 +echo "configure:1418: checking for res_send" >&5 if eval "test \"`echo '$''{'ac_cv_func_res_send'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1446: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_res_send=yes" else @@ -1455,7 +1460,7 @@ if eval "test \"`echo '$ac_cv_func_'res_send`\" = yes"; then else echo "$ac_t""no" 1>&6 echo $ac_n "checking for res_send in -lresolv""... $ac_c" 1>&6 -echo "configure:1459: checking for res_send in -lresolv" >&5 +echo "configure:1464: checking for res_send in -lresolv" >&5 ac_lib_var=`echo resolv'_'res_send | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -1463,7 +1468,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lresolv $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1483: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else diff --git a/contrib/tcsh/configure.in b/contrib/tcsh/configure.in index 561fb83bffd..ae330e23d91 100644 --- a/contrib/tcsh/configure.in +++ b/contrib/tcsh/configure.in @@ -56,7 +56,7 @@ case "${host}" in tcsh_config_file=hpux8 ;; *-hp-hpux1[0-9]* ) - tcsh_config_file=hpux8 + tcsh_config_file=hpux11 ;; ## IBM AIX systems @@ -217,6 +217,11 @@ case "${host}" in tcsh_config_file=sysv4 ;; + ## Apollo Domain/OS + *-apollo-*) + tcsh_config_file=apollo + ;; + * ) changequote([, ])dnl AC_MSG_ERROR([Tcsh can't guess the configuration file name diff --git a/contrib/tcsh/ed.chared.c b/contrib/tcsh/ed.chared.c index da43977f6c3..ad2387a1670 100644 --- a/contrib/tcsh/ed.chared.c +++ b/contrib/tcsh/ed.chared.c @@ -1,4 +1,4 @@ -/* $Header: /src/pub/tcsh/ed.chared.c,v 3.63 2000/11/11 23:03:33 christos Exp $ */ +/* $Header: /src/pub/tcsh/ed.chared.c,v 3.70 2001/09/02 21:06:02 christos Exp $ */ /* * ed.chared.c: Character editing functions. */ @@ -76,7 +76,7 @@ #include "sh.h" -RCSID("$Id: ed.chared.c,v 3.63 2000/11/11 23:03:33 christos Exp $") +RCSID("$Id: ed.chared.c,v 3.70 2001/09/02 21:06:02 christos Exp $") #include "ed.h" #include "tw.h" @@ -117,7 +117,7 @@ static Char srch_char = 0; /* Search target */ /* all routines that start with c_ are private to this set of routines */ static void c_alternativ_key_map __P((int)); -static void c_insert __P((int)); +void c_insert __P((int)); void c_delafter __P((int)); void c_delbefore __P((int)); static int c_to_class __P((int)); @@ -133,10 +133,11 @@ static void c_hsetpat __P((void)); #ifdef COMMENT static void c_get_word __P((Char **, Char **)); #endif -static Char *c_preword __P((Char *, Char *, int)); +static Char *c_preword __P((Char *, Char *, int, Char *)); static Char *c_nexword __P((Char *, Char *, int)); -static Char *c_endword __P((Char *, Char *, int)); +static Char *c_endword __P((Char *, Char *, int, Char *)); static Char *c_eword __P((Char *, Char *, int)); +static void c_push_kill __P((Char *, Char *)); static CCRETVAL c_get_histline __P((void)); static CCRETVAL c_search_line __P((Char *, int)); static CCRETVAL v_repeat_srch __P((int)); @@ -171,11 +172,11 @@ c_alternativ_key_map(state) AltKeyMap = (Char) state; } -static void +void c_insert(num) - register int num; + int num; { - register Char *cp; + Char *cp; if (LastChar + num >= InputLim) return; /* can't go past end of buffer */ @@ -189,9 +190,9 @@ c_insert(num) void c_delafter(num) - register int num; + int num; { - register Char *cp, *kp = NULL; + Char *cp, *kp = NULL; #if defined(DSPMBYTE) Char *wkcp; @@ -256,9 +257,9 @@ c_delafter(num) void c_delbefore(num) /* delete before dot, with bounds checking */ - register int num; + int num; { - register Char *cp, *kp = NULL; + Char *cp, *kp = NULL; #if defined(DSPMBYTE) Char *nowcur, *wkcp; @@ -316,16 +317,16 @@ c_delbefore(num) /* delete before dot, with bounds checking */ } static Char * -c_preword(p, low, n) - register Char *p, *low; - register int n; +c_preword(p, low, n, delim) + Char *p, *low, *delim; + int n; { while (n--) { - register Char *prev = low; - register Char *new; + Char *prev = low; + Char *new; - while (prev < p) { /* Skip initial spaces */ - if (!Isspace(*prev) || (Isspace(*prev) && *(prev-1) == (Char)'\\')) + while (prev < p) { /* Skip initial non-word chars */ + if (!Strchr(delim, *prev) || *(prev-1) == (Char)'\\') break; prev++; } @@ -334,10 +335,10 @@ c_preword(p, low, n) while (new < p) { prev = new; - new = c_endword(prev-1, p, 1); /* Skip to next space */ + new = c_endword(prev-1, p, 1, delim); /* Skip to next non-word char */ new++; /* Step away from end of word */ - while (new <= p) { /* Skip trailing spaces */ - if (!Isspace(*new) || (Isspace(*new) && *(new-1) == (Char)'\\')) + while (new <= p) { /* Skip trailing non-word chars */ + if (!Strchr(delim, *new) || *(new-1) == (Char)'\\') break; new++; } @@ -365,7 +366,7 @@ c_preword(p, low, n) */ static int c_to_class(ch) -register int ch; +int ch; { if (Isspace(ch)) return C_CLASS_WHITE; @@ -378,8 +379,8 @@ register int ch; static Char * c_prev_word(p, low, n) - register Char *p, *low; - register int n; + Char *p, *low; + int n; { p--; @@ -400,7 +401,7 @@ c_prev_word(p, low, n) } while (n--) { - register int c_class; + int c_class; if (p < low) break; @@ -427,8 +428,8 @@ c_prev_word(p, low, n) static Char * c_next_word(p, high, n) - register Char *p, *high; - register int n; + Char *p, *high; + int n; { if (!VImode) { while (n--) { @@ -444,7 +445,7 @@ c_next_word(p, high, n) } while (n--) { - register int c_class; + int c_class; if (p >= high) break; @@ -470,8 +471,8 @@ c_next_word(p, high, n) static Char * c_nexword(p, high, n) - register Char *p, *high; - register int n; + Char *p, *high; + int n; { while (n--) { while ((p < high) && !Isspace(*p)) @@ -504,12 +505,12 @@ c_nexword(p, high, n) static Char * c_number(p, num, dval) - register Char *p; - register int *num; - register int dval; + Char *p; + int *num; + int dval; { - register int i; - register int sign = 1; + int i; + int sign = 1; if (*++p == '^') { *num = 1; @@ -537,11 +538,11 @@ c_number(p, num, dval) static Char * c_expand(p) - register Char *p; + Char *p; { - register Char *q; - register struct Hist *h = Histlist.Hnext; - register struct wordent *l; + Char *q; + struct Hist *h = Histlist.Hnext; + struct wordent *l; int i, from, to, dval; bool all_dig; bool been_once = 0; @@ -766,10 +767,10 @@ excl_err: static void c_excl(p) - register Char *p; + Char *p; { - register int i; - register Char *q; + int i; + Char *q; /* * if />[SPC TAB]*![SPC TAB]/, back up p to just after the >. otherwise, @@ -810,7 +811,7 @@ c_excl(p) static void c_substitute() { - register Char *p; + Char *p; /* * Start p out one character before the cursor. Move it backwards looking @@ -831,7 +832,7 @@ c_substitute() static void c_delfini() /* Finish up delete action */ { - register int Size; + int Size; if (ActionFlag & TCSHOP_INSERT) c_alternativ_key_map(0); @@ -868,27 +869,28 @@ c_delfini() /* Finish up delete action */ } static Char * -c_endword(p, high, n) - register Char *p, *high; - register int n; +c_endword(p, high, n, delim) + Char *p, *high, *delim; + int n; { - register int inquote = 0; + int inquote = 0; p++; while (n--) { - while (p < high) { /* Skip spaces */ - if (!Isspace(*p) || (Isspace(*p) && *(p-1) == (Char)'\\')) + while (p < high) { /* Skip non-word chars */ + if (!Strchr(delim, *p) || *(p-1) == (Char)'\\') break; p++; } while (p < high) { /* Skip string */ if ((*p == (Char)'\'' || *p == (Char)'"')) { /* Quotation marks? */ - if ((!inquote && *(p-1) != (Char)'\\') || inquote) { /* Should it be honored? */ + if (inquote || *(p-1) != (Char)'\\') { /* Should it be honored? */ if (inquote == 0) inquote = *p; else if (inquote == *p) inquote = 0; } } - if (!inquote && (Isspace(*p) && *(p-1) != (Char)'\\')) /* Break if unquoted space */ + /* Break if unquoted non-word char */ + if (!inquote && Strchr(delim, *p) && *(p-1) != (Char)'\\') break; p++; } @@ -901,8 +903,8 @@ c_endword(p, high, n) static Char * c_eword(p, high, n) - register Char *p, *high; - register int n; + Char *p, *high; + int n; { p++; @@ -922,6 +924,107 @@ c_eword(p, high, n) return(p); } +/* Set the max length of the kill ring */ +void +SetKillRing(max) + int max; +{ + CStr *new; + int count, i, j; + + if (max < 1) + max = 1; /* no ring, but always one buffer */ + if (max == KillRingMax) + return; + new = (CStr *)xcalloc((size_t) max, sizeof(CStr)); + if (KillRing != NULL) { + if (KillRingLen != 0) { + if (max >= KillRingLen) { + count = KillRingLen; + j = KillPos; + } else { + count = max; + j = (KillPos - count + KillRingLen) % KillRingLen; + } + for (i = 0; i < KillRingLen; i++) { + if (i < count) /* copy latest */ + new[i] = KillRing[j]; + else /* free the others */ + xfree(KillRing[j].buf); + j = (j + 1) % KillRingLen; + } + KillRingLen = count; + KillPos = count % max; + YankPos = count - 1; + } + xfree(KillRing); + } + KillRing = new; + KillRingMax = max; +} + +/* Push string from start upto (but not including) end onto kill ring */ +static void +c_push_kill(start, end) + Char *start, *end; +{ + CStr save, *pos; + Char *dp, *cp, *kp; + int len = end - start, i, j, k; + + /* Check for duplicates? */ + if (KillRingLen > 0 && (dp = varval(STRkilldup)) != STRNULL) { + YankPos = (KillPos - 1 + KillRingLen) % KillRingLen; + if (eq(dp, STRerase)) { /* erase earlier one (actually move up) */ + j = YankPos; + for (i = 0; i < KillRingLen; i++) { + if (Strncmp(KillRing[j].buf, start, (size_t) len) == 0 && + KillRing[j].buf[len] == '\0') { + save = KillRing[j]; + for ( ; i > 0; i--) { + k = j; + j = (j + 1) % KillRingLen; + KillRing[k] = KillRing[j]; + } + KillRing[j] = save; + return; + } + j = (j - 1 + KillRingLen) % KillRingLen; + } + } else if (eq(dp, STRall)) { /* skip if any earlier */ + for (i = 0; i < KillRingLen; i++) + if (Strncmp(KillRing[i].buf, start, (size_t) len) == 0 && + KillRing[i].buf[len] == '\0') + return; + } else if (eq(dp, STRprev)) { /* skip if immediately previous */ + j = YankPos; + if (Strncmp(KillRing[j].buf, start, (size_t) len) == 0 && + KillRing[j].buf[len] == '\0') + return; + } + } + + /* No duplicate, go ahead and push */ + len++; /* need space for '\0' */ + YankPos = KillPos; + if (KillRingLen < KillRingMax) + KillRingLen++; + pos = &KillRing[KillPos]; + KillPos = (KillPos + 1) % KillRingMax; + if (pos->len < len) { + if (pos->buf == NULL) + pos->buf = (Char *) xmalloc(len * sizeof(Char)); + else + pos->buf = (Char *) xrealloc((ptr_t) pos->buf, len * sizeof(Char)); + pos->len = len; + } + cp = start; + kp = pos->buf; + while (cp < end) + *kp++ = *cp++; + *kp = '\0'; +} + static CCRETVAL c_get_histline() { @@ -1375,9 +1478,9 @@ e_unassigned(c) CCRETVAL e_insert(c) - register int c; + int c; { - register int i; + int i; #if defined(DSPMBYTE) CCRETVAL ret; static Char savec; @@ -1484,7 +1587,7 @@ int InsertStr(s) /* insert ASCIZ s at cursor (for complete) */ Char *s; { - register int len; + int len; if ((len = (int) Strlen(s)) <= 0) return -1; @@ -1520,7 +1623,7 @@ DeleteBack(n) /* delete the n characters before . */ CCRETVAL e_digit(c) /* gray magic here */ - register int c; + int c; { if (!Isdigit(c)) return(CC_ERROR); /* no NULs in the input ever!! */ @@ -1554,7 +1657,7 @@ e_digit(c) /* gray magic here */ CCRETVAL e_argdigit(c) /* for ESC-n */ - register int c; + int c; { c &= ASCII; @@ -1575,7 +1678,7 @@ e_argdigit(c) /* for ESC-n */ CCRETVAL v_zero(c) /* command mode 0 for vi */ - register int c; + int c; { if (DoingArg) { /* if doing an arg, add this in... */ if (Argument > 1000000) @@ -1974,7 +2077,7 @@ CCRETVAL e_run_fg_editor(c) int c; { - register struct process *pp; + struct process *pp; extern bool tellwhat; USE(c); @@ -2090,10 +2193,10 @@ CCRETVAL e_last_item(c) int c; { /* insert the last element of the prev. cmd */ - register Char *cp; - register struct Hist *hp; - register struct wordent *wp, *firstp; - register int i; + Char *cp; + struct Hist *hp; + struct wordent *wp, *firstp; + int i; Char buf[INBUFSIZE]; USE(c); @@ -2130,10 +2233,10 @@ CCRETVAL e_dabbrev_expand(c) int c; { /* expand to preceding word matching prefix */ - register Char *cp, *ncp, *bp; - register struct Hist *hp; - register int arg = 0, len = 0, i; /* len = 0 to shut up gcc -Wall */ - register bool found = 0; + Char *cp, *ncp, *bp; + struct Hist *hp; + int arg = 0, len = 0, i; /* len = 0 to shut up gcc -Wall */ + bool found = 0; Char hbuf[INBUFSIZE]; static int oldevent, hist, word; static Char *start, *oldcursor; @@ -2142,7 +2245,7 @@ e_dabbrev_expand(c) if (Argument <= 0) return(CC_ERROR); - cp = c_preword(Cursor, InputBuf, 1); + cp = c_preword(Cursor, InputBuf, 1, STRshwordsep); if (cp == Cursor || Isspace(*cp)) return(CC_ERROR); @@ -2161,7 +2264,7 @@ e_dabbrev_expand(c) bp = hbuf; hp = hp->Hnext; } - cp = c_preword(cp, bp, word); + cp = c_preword(cp, bp, word, STRshwordsep); } else { /* starting new search */ oldevent = eventno; start = cp; @@ -2172,7 +2275,7 @@ e_dabbrev_expand(c) } while (!found) { - ncp = c_preword(cp, bp, 1); + ncp = c_preword(cp, bp, 1, STRshwordsep); if (ncp == cp || Isspace(*ncp)) { /* beginning of line */ hist++; word = 0; @@ -2185,7 +2288,7 @@ e_dabbrev_expand(c) continue; } else { word++; - len = (int) (c_endword(ncp-1, cp, 1) - ncp + 1); + len = (int) (c_endword(ncp-1, cp, 1, STRshwordsep) - ncp + 1); cp = ncp; } if (len > patlen && Strncmp(cp, patbuf, patlen) == 0) { @@ -2215,25 +2318,90 @@ CCRETVAL e_yank_kill(c) int c; { /* almost like GnuEmacs */ - register Char *kp, *cp; + int len; + Char *kp, *cp; USE(c); - if (LastKill == KillBuf) /* if zero content */ + if (KillRingLen == 0) /* nothing killed */ return(CC_ERROR); - - if (LastChar + (LastKill - KillBuf) >= InputLim) + len = Strlen(KillRing[YankPos].buf); + if (LastChar + len >= InputLim) return(CC_ERROR); /* end of buffer space */ /* else */ - Mark = Cursor; /* set the mark */ cp = Cursor; /* for speed */ - c_insert((int)(LastKill - KillBuf)); /* open the space, */ - for (kp = KillBuf; kp < LastKill; kp++) /* copy the chars */ + c_insert(len); /* open the space, */ + for (kp = KillRing[YankPos].buf; *kp; kp++) /* copy the chars */ *cp++ = *kp; - if (Argument == 1) /* if an arg, cursor at beginning */ - Cursor = cp; /* else cursor at end */ + if (Argument == 1) { /* if no arg */ + Mark = Cursor; /* mark at beginning, cursor at end */ + Cursor = cp; + } else { + Mark = cp; /* else cursor at beginning, mark at end */ + } + + return(CC_REFRESH); +} + +/*ARGSUSED*/ +CCRETVAL +e_yank_pop(c) + int c; +{ /* almost like GnuEmacs */ + int m_bef_c, del_len, ins_len; + Char *kp, *cp; + + USE(c); + +#if 0 + /* XXX This "should" be here, but doesn't work, since LastCmd + gets set on CC_ERROR and CC_ARGHACK, which it shouldn't(?). + (But what about F_ARGFOUR?) I.e. if you hit M-y twice the + second one will "succeed" even if the first one wasn't preceded + by a yank, and giving an argument is impossible. Now we "succeed" + regardless of previous command, which is wrong too of course. */ + if (LastCmd != F_YANK_KILL && LastCmd != F_YANK_POP) + return(CC_ERROR); +#endif + + if (KillRingLen == 0) /* nothing killed */ + return(CC_ERROR); + YankPos -= Argument; + while (YankPos < 0) + YankPos += KillRingLen; + YankPos %= KillRingLen; + + if (Cursor > Mark) { + del_len = Cursor - Mark; + m_bef_c = 1; + } else { + del_len = Mark - Cursor; + m_bef_c = 0; + } + ins_len = Strlen(KillRing[YankPos].buf); + if (LastChar + ins_len - del_len >= InputLim) + return(CC_ERROR); /* end of buffer space */ + + if (m_bef_c) { + c_delbefore(del_len); + Cursor = Mark; + } else { + c_delafter(del_len); + } + cp = Cursor; /* for speed */ + + c_insert(ins_len); /* open the space, */ + for (kp = KillRing[YankPos].buf; *kp; kp++) /* copy the chars */ + *cp++ = *kp; + + if (m_bef_c) { + Mark = Cursor; /* mark at beginning, cursor at end */ + Cursor = cp; + } else { + Mark = cp; /* else cursor at beginning, mark at end */ + } return(CC_REFRESH); } @@ -2294,7 +2462,7 @@ CCRETVAL e_delwordprev(c) int c; { - register Char *cp, *p, *kp; + Char *cp; USE(c); if (Cursor == InputBuf) @@ -2303,9 +2471,7 @@ e_delwordprev(c) cp = c_prev_word(Cursor, InputBuf, Argument); - for (p = cp, kp = KillBuf; p < Cursor; p++) /* save the text */ - *kp++ = *p; - LastKill = kp; + c_push_kill(cp, Cursor); /* save the text */ c_delbefore((int)(Cursor - cp)); /* delete before dot */ Cursor = cp; @@ -2467,7 +2633,7 @@ CCRETVAL e_delwordnext(c) int c; { - register Char *cp, *p, *kp; + Char *cp; USE(c); if (Cursor == LastChar) @@ -2476,9 +2642,7 @@ e_delwordnext(c) cp = c_next_word(Cursor, LastChar, Argument); - for (p = Cursor, kp = KillBuf; p < cp; p++) /* save the text */ - *kp++ = *p; - LastKill = kp; + c_push_kill(Cursor, cp); /* save the text */ c_delafter((int)(cp - Cursor)); /* delete after dot */ if (Cursor > LastChar) @@ -2528,14 +2692,8 @@ CCRETVAL e_killend(c) int c; { - register Char *kp, *cp; - USE(c); - cp = Cursor; - kp = KillBuf; - while (cp < LastChar) - *kp++ = *cp++; /* copy it */ - LastKill = kp; + c_push_kill(Cursor, LastChar); /* copy it */ LastChar = Cursor; /* zap! -- delete to end */ return(CC_REFRESH); } @@ -2546,14 +2704,8 @@ CCRETVAL e_killbeg(c) int c; { - register Char *kp, *cp; - USE(c); - cp = InputBuf; - kp = KillBuf; - while (cp < Cursor) - *kp++ = *cp++; /* copy it */ - LastKill = kp; + c_push_kill(InputBuf, Cursor); /* copy it */ c_delbefore((int)(Cursor - InputBuf)); Cursor = InputBuf; /* zap! */ return(CC_REFRESH); @@ -2564,14 +2716,8 @@ CCRETVAL e_killall(c) int c; { - register Char *kp, *cp; - USE(c); - cp = InputBuf; - kp = KillBuf; - while (cp < LastChar) - *kp++ = *cp++; /* copy it */ - LastKill = kp; + c_push_kill(InputBuf, LastChar); /* copy it */ LastChar = InputBuf; /* zap! -- delete all of it */ Cursor = InputBuf; return(CC_REFRESH); @@ -2582,27 +2728,18 @@ CCRETVAL e_killregion(c) int c; { - register Char *kp, *cp; - USE(c); if (!Mark) return(CC_ERROR); if (Mark > Cursor) { - cp = Cursor; - kp = KillBuf; - while (cp < Mark) - *kp++ = *cp++; /* copy it */ - LastKill = kp; - c_delafter((int)(cp - Cursor)); /* delete it - UNUSED BY VI mode */ + c_push_kill(Cursor, Mark); /* copy it */ + c_delafter((int)(Mark - Cursor)); /* delete it - UNUSED BY VI mode */ + Mark = Cursor; } else { /* mark is before cursor */ - cp = Mark; - kp = KillBuf; - while (cp < Cursor) - *kp++ = *cp++; /* copy it */ - LastKill = kp; - c_delbefore((int)(cp - Mark)); + c_push_kill(Mark, Cursor); /* copy it */ + c_delbefore((int)(Cursor - Mark)); Cursor = Mark; } return(CC_REFRESH); @@ -2613,25 +2750,15 @@ CCRETVAL e_copyregion(c) int c; { - register Char *kp, *cp; - USE(c); if (!Mark) return(CC_ERROR); if (Mark > Cursor) { - cp = Cursor; - kp = KillBuf; - while (cp < Mark) - *kp++ = *cp++; /* copy it */ - LastKill = kp; + c_push_kill(Cursor, Mark); /* copy it */ } else { /* mark is before cursor */ - cp = Mark; - kp = KillBuf; - while (cp < Cursor) - *kp++ = *cp++; /* copy it */ - LastKill = kp; + c_push_kill(Mark, Cursor); /* copy it */ } return(CC_NORM); /* don't even need to Refresh() */ } @@ -2641,7 +2768,7 @@ CCRETVAL e_charswitch(cc) int cc; { - register Char c; + Char c; USE(cc); @@ -2664,7 +2791,7 @@ CCRETVAL e_gcharswitch(cc) int cc; { /* gosmacs style ^T */ - register Char c; + Char c; USE(cc); if (Cursor > &InputBuf[1]) {/* must have at least two chars entered */ @@ -2743,7 +2870,7 @@ v_wordback(c) return(CC_ERROR); /* else */ - Cursor = c_preword(Cursor, InputBuf, Argument); /* bounds check */ + Cursor = c_preword(Cursor, InputBuf, Argument, STRshwspace); /* bounds check */ if (ActionFlag & TCSHOP_DELETE) { c_delfini(); @@ -2987,7 +3114,7 @@ static CCRETVAL v_action(c) int c; { - register Char *cp, *kp; + Char *cp, *kp; if (ActionFlag == TCSHOP_DELETE) { ActionFlag = TCSHOP_NOP; @@ -3132,7 +3259,7 @@ CCRETVAL e_exchange_mark(c) int c; { - register Char *cp; + Char *cp; USE(c); cp = Cursor; @@ -3359,7 +3486,7 @@ CCRETVAL e_expand(c) int c; { - register Char *p; + Char *p; extern bool justpr; USE(c); @@ -3560,7 +3687,7 @@ CCRETVAL e_copyprev(c) int c; { - register Char *cp, *oldc, *dp; + Char *cp, *oldc, *dp; USE(c); if (Cursor == InputBuf) @@ -3641,7 +3768,7 @@ v_endword(c) return(CC_ERROR); /* else */ - Cursor = c_endword(Cursor, LastChar, Argument); + Cursor = c_endword(Cursor, LastChar, Argument, STRshwspace); if (ActionFlag & TCSHOP_DELETE) { @@ -3771,8 +3898,8 @@ CCRETVAL v_undo(c) int c; { - register int loop; - register Char *kp, *cp; + int loop; + Char *kp, *cp; Char temp; int size; diff --git a/contrib/tcsh/ed.decls.h b/contrib/tcsh/ed.decls.h index 074b96679b0..1a9098804ee 100644 --- a/contrib/tcsh/ed.decls.h +++ b/contrib/tcsh/ed.decls.h @@ -1,4 +1,4 @@ -/* $Header: /src/pub/tcsh/ed.decls.h,v 3.29 2000/07/15 19:58:50 christos Exp $ */ +/* $Header: /src/pub/tcsh/ed.decls.h,v 3.30 2001/02/19 23:30:43 kim Exp $ */ /* * ed.decls.h: Editor external definitions */ @@ -42,6 +42,7 @@ */ extern int InsertStr __P((Char *)); extern void DeleteBack __P((int)); +extern void SetKillRing __P((int)); /* * ed.init.c @@ -240,6 +241,7 @@ extern CCRETVAL e_dosify_next __P((int)); extern CCRETVAL e_dosify_prev __P((int)); extern CCRETVAL e_page_up __P((int)); extern CCRETVAL e_page_down __P((int)); +extern CCRETVAL e_yank_pop __P((int)); /* * ed.inputl.c diff --git a/contrib/tcsh/ed.defns.c b/contrib/tcsh/ed.defns.c index 3dd0c2c9690..be2a2d535bd 100644 --- a/contrib/tcsh/ed.defns.c +++ b/contrib/tcsh/ed.defns.c @@ -1,4 +1,4 @@ -/* $Header: /src/pub/tcsh/ed.defns.c,v 3.36 2000/11/11 23:03:33 christos Exp $ */ +/* $Header: /src/pub/tcsh/ed.defns.c,v 3.38 2001/04/26 19:07:47 kim Exp $ */ /* * ed.defns.c: Editor function definitions and initialization */ @@ -36,7 +36,7 @@ */ #include "sh.h" -RCSID("$Id: ed.defns.c,v 3.36 2000/11/11 23:03:33 christos Exp $") +RCSID("$Id: ed.defns.c,v 3.38 2001/04/26 19:07:47 kim Exp $") #include "ed.h" @@ -269,20 +269,22 @@ PFCmd CcFuncTbl[] = { /* table of available commands */ #define F_COMMAND_NORM 111 e_dabbrev_expand, #define F_DABBREV_EXPAND 112 - e_copy_to_clipboard, -#define F_COPY_CLIP 113 - e_paste_from_clipboard, + e_copy_to_clipboard, +#define F_COPY_CLIP 113 + e_paste_from_clipboard, #define F_PASTE_CLIP 114 - e_dosify_next, + e_dosify_next, #define F_DOSIFY_NEXT 115 - e_dosify_prev, + e_dosify_prev, #define F_DOSIFY_PREV 116 - e_page_up, -#define F_PAGE_UP 117 - e_page_down, -#define F_PAGE_DOWN 118 + e_page_up, +#define F_PAGE_UP 117 + e_page_down, +#define F_PAGE_DOWN 118 + e_yank_pop, +#define F_YANK_POP 119 0 /* DUMMY VALUE */ -#define F_NUM_FNS 119 +#define F_NUM_FNS 120 }; @@ -519,7 +521,7 @@ KEYCMD CcEmacsMap[] = { F_UNASSIGNED, /* M-V */ F_COPYREGION, /* M-W */ F_UNASSIGNED, /* M-X */ - F_UNASSIGNED, /* M-Y */ + F_YANK_POP, /* M-Y */ F_UNASSIGNED, /* M-Z */ F_XKEY, /* M-[ *//* extended key esc -mf Oct 87 */ F_UNASSIGNED, /* M-\ */ @@ -551,7 +553,7 @@ KEYCMD CcEmacsMap[] = { F_UNASSIGNED, /* M-v */ F_COPYREGION, /* M-w */ F_UNASSIGNED, /* M-x */ - F_UNASSIGNED, /* M-y */ + F_YANK_POP, /* M-y */ F_UNASSIGNED, /* M-z */ F_UNASSIGNED, /* M-{ */ F_UNASSIGNED, /* M-| */ @@ -1735,31 +1737,45 @@ editinit() f->func = F_YANK_KILL; f->desc = CSAVS(3, 114, "Paste cut buffer at cursor position"); + f++; + f->name = "yank-pop"; + f->func = F_YANK_POP; + f->desc = CSAVS(3, 115, + "Replace just-yanked text with yank from earlier kill"); + f++; f->name = "e_copy_to_clipboard"; f->func = F_COPY_CLIP; - f->desc = CSAVS(3, 115, "(win32 only)Copy cut buffer to system clipboard"); + f->desc = CSAVS(3, 116, + "(WIN32 only) Copy cut buffer to system clipboard"); + f++; f->name = "e_paste_from_clipboard"; f->func = F_PASTE_CLIP; - f->desc = CSAVS(3, 116, "(win32 only)Paste clipboard buffer at cursor position"); + f->desc = CSAVS(3, 117, + "(WIN32 only) Paste clipboard buffer at cursor position"); + f++; f->name = "e_dosify_next"; f->func = F_DOSIFY_NEXT; - f->desc = CSAVS(3, 117, "(win32 only)Convert each '/' in next word to '\\\\'"); + f->desc = CSAVS(3, 118, + "(WIN32 only) Convert each '/' in next word to '\\\\'"); + f++; f->name = "e_dosify_prev"; f->func = F_DOSIFY_PREV; - f->desc = CSAVS(3, 118, "(win32 only)Convert each '/' in previous word to '\\\\'"); + f->desc = CSAVS(3, 119, + "(WIN32 only) Convert each '/' in previous word to '\\\\'"); + f++; f->name = "e_page_up"; f->func = F_PAGE_UP; - f->desc = CSAVS(3, 118, "(win32 only)Page visible console window up"); + f->desc = CSAVS(3, 120, "(WIN32 only) Page visible console window up"); + f++; f->name = "e_page_down"; f->func = F_PAGE_DOWN; - f->desc = CSAVS(3, 118, "(win32 only)Page visible console window down"); - + f->desc = CSAVS(3, 121, "(WIN32 only) Page visible console window down"); f++; f->name = NULL; diff --git a/contrib/tcsh/ed.h b/contrib/tcsh/ed.h index f92e481711d..98c1ad256ec 100644 --- a/contrib/tcsh/ed.h +++ b/contrib/tcsh/ed.h @@ -1,4 +1,4 @@ -/* $Header: /src/pub/tcsh/ed.h,v 3.30 2000/11/11 23:03:34 christos Exp $ */ +/* $Header: /src/pub/tcsh/ed.h,v 3.31 2001/02/19 23:30:44 kim Exp $ */ /* * ed.h: Editor declarations and globals */ @@ -132,8 +132,11 @@ EXTERN Char *Mark; /* the emacs "mark" (dot is Cursor) */ EXTERN Char DoingArg; /* true if we have an argument */ EXTERN int Argument; /* "universal" argument value */ EXTERN KEYCMD LastCmd; /* previous command executed */ -EXTERN Char KillBuf[INBUFSIZE]; /* kill buffer */ -EXTERN Char *LastKill; /* points to end of kill buffer */ +EXTERN CStr *KillRing; /* kill ring */ +EXTERN int KillRingMax; /* max length of kill ring */ +EXTERN int KillRingLen; /* current length of kill ring */ +EXTERN int KillPos; /* points to next kill */ +EXTERN int YankPos; /* points to next yank */ EXTERN Char UndoBuf[INBUFSIZE]; EXTERN Char *UndoPtr; diff --git a/contrib/tcsh/ed.init.c b/contrib/tcsh/ed.init.c index 55ae2fcd9d9..805e2ecab56 100644 --- a/contrib/tcsh/ed.init.c +++ b/contrib/tcsh/ed.init.c @@ -1,4 +1,4 @@ -/* $Header: /src/pub/tcsh/ed.init.c,v 3.43 2000/11/11 23:03:34 christos Exp $ */ +/* $Header: /src/pub/tcsh/ed.init.c,v 3.44 2001/02/19 23:30:44 kim Exp $ */ /* * ed.init.c: Editor initializations */ @@ -36,7 +36,7 @@ */ #include "sh.h" -RCSID("$Id: ed.init.c,v 3.43 2000/11/11 23:03:34 christos Exp $") +RCSID("$Id: ed.init.c,v 3.44 2001/02/19 23:30:44 kim Exp $") #include "ed.h" #include "ed.term.h" @@ -208,6 +208,7 @@ ed_Setup(rst) ed_InitMaps(); Hist_num = 0; Expand = 0; + SetKillRing(getn(varval(STRkillring))); #ifndef WINNT_NATIVE if (tty_getty(SHTTY, &extty) == -1) { @@ -303,7 +304,27 @@ ed_Init() { ResetInLine(1); /* reset the input pointers */ GettingInput = 0; /* just in case */ - LastKill = KillBuf; /* no kill buffer */ +#ifdef notdef + /* XXX This code was here before the kill ring: + LastKill = KillBuf; / * no kill buffer * / + If there was any reason for that other than to make sure LastKill + was initialized, the code below should go in here instead - but + it doesn't seem reasonable to lose the entire kill ring (which is + "self-initializing") just because you set $term or whatever, so + presumably this whole '#ifdef notdef' should just be taken out. */ + + { /* no kill ring - why? */ + int i; + for (i = 0; i < KillRingMax; i++) { + if (KillRing[i].buf != NULL) + xfree((ptr_t) KillRing[i].buf); + KillRing[i].buf = NULL; + KillRing[i].len = 0; + } + YankPos = KillPos = 0; + KillRingLen = 0; + } +#endif #ifdef DEBUG_EDIT CheckMaps(); /* do a little error checking on key maps */ @@ -623,9 +644,6 @@ ResetInLine(macro) Hist_num = 0; DoingArg = 0; Argument = 1; -#ifdef notdef - LastKill = KillBuf; /* no kill buffer */ -#endif LastCmd = F_UNASSIGNED; /* previous command executed */ if (macro) MacroLvl = -1; /* no currently active macros */ diff --git a/contrib/tcsh/ed.term.c b/contrib/tcsh/ed.term.c index b7ea9874220..00f932da42a 100644 --- a/contrib/tcsh/ed.term.c +++ b/contrib/tcsh/ed.term.c @@ -1,4 +1,4 @@ -/* $Header: /src/pub/tcsh/ed.term.c,v 1.25 2000/11/11 23:03:34 christos Exp $ */ +/* $Header: /src/pub/tcsh/ed.term.c,v 1.26 2001/08/06 23:51:09 christos Exp $ */ /* * ed.term.c: Low level terminal interface */ @@ -37,7 +37,7 @@ #include "sh.h" #ifndef WINNT_NATIVE -RCSID("$Id: ed.term.c,v 1.25 2000/11/11 23:03:34 christos Exp $") +RCSID("$Id: ed.term.c,v 1.26 2001/08/06 23:51:09 christos Exp $") #include "ed.h" #include "ed.term.h" @@ -566,14 +566,21 @@ static struct tcshmodes { # define OKERROR(e) ((e) == EINTR) #endif +#ifdef __NetBSD__ +#define KLUDGE (errno == ENOTTY && count < 10) +#else +#define KLUDGE 0 +#endif + /* Retry a system call */ +static int count; #define RETRY(x) \ - for (;;) \ + for (count = 0;; count++) \ if ((x) == -1) { \ - if (OKERROR(errno)) \ - continue; \ - else \ - return -1; \ + if (OKERROR(errno) || KLUDGE) \ + continue; \ + else \ + return -1; \ } \ else \ break \ diff --git a/contrib/tcsh/ed.xmap.c b/contrib/tcsh/ed.xmap.c index 3436f57fc37..c066ca763b4 100644 --- a/contrib/tcsh/ed.xmap.c +++ b/contrib/tcsh/ed.xmap.c @@ -1,4 +1,4 @@ -/* $Header: /src/pub/tcsh/ed.xmap.c,v 3.23 2000/11/11 23:03:35 christos Exp $ */ +/* $Header: /src/pub/tcsh/ed.xmap.c,v 3.24 2001/04/27 22:37:03 christos Exp $ */ /* * ed.xmap.c: This module contains the procedures for maintaining * the extended-key map. @@ -92,7 +92,7 @@ */ #include "sh.h" -RCSID("$Id: ed.xmap.c,v 3.23 2000/11/11 23:03:35 christos Exp $") +RCSID("$Id: ed.xmap.c,v 3.24 2001/04/27 22:37:03 christos Exp $") #include "ed.h" #include "ed.defns.h" @@ -719,6 +719,9 @@ parseescape(ptr) case 'v': c = CTL_ESC('\013'); /* Vertical Tab */ break; + case '\\': + c = '\\'; + break; case '0': case '1': case '2': diff --git a/contrib/tcsh/glob.3 b/contrib/tcsh/glob.3 index 2fc84e06bd6..aecddddc74c 100644 --- a/contrib/tcsh/glob.3 +++ b/contrib/tcsh/glob.3 @@ -1,52 +1,68 @@ -.\" Copyright (c) 1989 The Regents of the University of California. -.\" All rights reserved. +.\" $NetBSD: glob.3,v 1.17 2001/03/16 21:09:05 christos Exp $ +.\" +.\" Copyright (c) 1989, 1991, 1993, 1994 +.\" The Regents of the University of California. All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" Guido van Rossum. +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. All advertising materials mentioning features or use of this software +.\" must display the following acknowledgement: +.\" This product includes software developed by the University of +.\" California, Berkeley and its contributors. +.\" 4. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. .\" -.\" Redistribution and use in source and binary forms are permitted provided -.\" that: (1) source distributions retain this entire copyright notice and -.\" comment, and (2) distributions including binaries display the following -.\" acknowledgement: ``This product includes software developed by the -.\" University of California, Berkeley and its contributors'' in the -.\" documentation or other materials provided with the distribution and in -.\" all advertising materials mentioning features or use of this software. -.\" Neither the name of the University nor the names of its contributors may -.\" be used to endorse or promote products derived from this software without -.\" specific prior written permission. -.\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED -.\" WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF -.\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. .\" -.\" @(#)glob.3 5.3 (Berkeley) 3/19/91 +.\" @(#)glob.3 8.3 (Berkeley) 4/16/94 .\" -.TH GLOB 3 "March 19, 1991" -.UC 7 -.SH NAME -glob, globfree \- generate pathnames matching a pattern -.SH SYNOPSIS -.nf -#include - -glob(const char *pattern, int flags, - const int (*errfunc)(char *, int), glob_t *pglob); - -void globfree(glob_t *pglob); -.fi -.SH DESCRIPTION -.I Glob +.Dd March 31, 1998 +.Dt GLOB 3 +.Os +.Sh NAME +.Nm glob , +.Nm globfree +.Nd generate pathnames matching a pattern +.Sh LIBRARY +.Lb libc +.Sh SYNOPSIS +.Fd #include +.Ft int +.Fn glob "const char *pattern" "int flags" "const int (*errfunc)(const char *, int)" "glob_t *pglob" +.Ft void +.Fn globfree "glob_t *pglob" +.Sh DESCRIPTION +The +.Fn glob +function is a pathname generator that implements the rules for file name pattern matching used by the shell. -.PP +.Pp The include file -.I glob.h +.Pa glob.h defines the structure type -.IR glob_t , +.Fa glob_t , which contains at least the following fields: -.sp -.RS -.nf -.ta .5i +\w'char **gl_pathv;\0\0\0'u +.Bd -literal typedef struct { int gl_pathc; /* count of total paths so far */ int gl_matchc; /* count of paths matching pattern */ @@ -54,250 +70,362 @@ typedef struct { int gl_flags; /* returned flags */ char **gl_pathv; /* list of paths matching pattern */ } glob_t; -.fi -.RE -.PP +.Ed +.Pp The argument -.I pattern +.Fa pattern is a pointer to a pathname pattern to be expanded. -.I Glob +The +.Fn glob +argument matches all accessible pathnames against the pattern and creates a list of the pathnames that match. In order to have access to a pathname, -.I glob +.Fn glob requires search permission on every component of a path except the last and read permission on each directory of any filename component of -.I pattern -that contains any of the special characters ``*'', ``?'' or ``[''. -.PP -.I Glob +.Fa pattern +that contains any of the special characters +.Ql * , +.Ql ? +or +.Ql [ . +.Pp +The +.Fn glob +argument stores the number of matched pathnames into the -.I gl_pathc +.Fa gl_pathc field, and a pointer to a list of pointers to pathnames into the -.I gl_pathv +.Fa gl_pathv field. -The first pointer after the last pathname is NULL. +The first pointer after the last pathname is +.Dv NULL . If the pattern does not match any pathnames, the returned number of matched paths is set to zero. -.PP +.Pp It is the caller's responsibility to create the structure pointed to by -.IR pglob . +.Fa pglob . The -.I glob +.Fn glob function allocates other space as needed, including the memory pointed to by -.IR gl_pathv . -.PP +.Fa gl_pathv . +.Pp The argument -.I flags +.Fa flags is used to modify the behavior of -.IR glob . +.Fn glob . The value of -.I flags -is the bitwise inclusive OR of any of the following +.Fa flags +is the bitwise inclusive +.Tn OR +of any of the following values defined in -.IR glob.h : -.TP -GLOB_APPEND +.Pa glob.h : +.Bl -tag -width GLOB_ALTDIRFUNC +.It Dv GLOB_APPEND Append pathnames generated to the ones from a previous call (or calls) to -.IR glob . +.Fn glob . The value of -.I gl_pathc +.Fa gl_pathc will be the total matches found by this call and the previous call(s). The pathnames are appended to, not merged with the pathnames returned by the previous call(s). Between calls, the caller must not change the setting of the -GLOB_DOOFFS flag, nor change the value of -.I gl_offs +.Dv GLOB_DOOFFS +flag, nor change the value of +.Fa gl_offs when -GLOB_DOOFFS is set, nor (obviously) call -.I globfree +.Dv GLOB_DOOFFS +is set, nor (obviously) call +.Fn globfree for -.I pglob. -.TP -GLOB_DOOFFS +.Fa pglob . +.It Dv GLOB_DOOFFS Make use of the -.I gl_offs +.Fa gl_offs field. If this flag is set, -.I gl_offs -is used to specify how many NULL pointers to prepend to the beginning +.Fa gl_offs +is used to specify how many +.Dv NULL +pointers to prepend to the beginning of the -.I gl_pathv +.Fa gl_pathv field. In other words, -.I gl_pathv +.Fa gl_pathv will point to -.I gl_offs -NULL pointers, +.Fa gl_offs +.Dv NULL +pointers, followed by -.I gl_pathc -pathname pointers, followed by a NULL pointer. -.TP -GLOB_ERR +.Fa gl_pathc +pathname pointers, followed by a +.Dv NULL +pointer. +.It Dv GLOB_ERR Causes -.I glob +.Fn glob to return when it encounters a directory that it cannot open or read. Ordinarily, -.I glob +.Fn glob continues to find matches. -.TP -GLOB_MARK +.It Dv GLOB_MARK Each pathname that is a directory that matches -.I pattern +.Fa pattern has a slash appended. -.TP -GLOB_NOSORT -By default, the pathnames are sorted in ascending ASCII order; -this flag prevents that sorting (speeding up -.IR glob ). -.TP -GLOB_NOCHECK +.It Dv GLOB_NOCHECK If -.I pattern +.Fa pattern does not match any pathname, then -.I glob +.Fn glob returns a list consisting of only -.IR pattern , +.Fa pattern , with the number of total pathnames is set to 1, and the number of matched pathnames set to 0. -If -.I GLOB_QUOTE -is set, its effect is present in the pattern returned. -.TP -GLOB_QUOTE -Use the backslash (``\e'') character for quoting: every occurrence of -a backslash followed by a character in the pattern is replaced by that -character, avoiding any special interpretation of the character. -.TP -GLOB_NOMAGIC -Is the same as GLOB_NOCHECK but it only appends the -.IR pattern +.It Dv GLOB_NOSORT +By default, the pathnames are sorted in ascending +.Tn ASCII +order; +this flag prevents that sorting (speeding up +.Fn glob ) . +.El +.Pp +The following values may also be included in +.Fa flags , +however, they are non-standard extensions to +.St -p1003.2 . +.Bl -tag -width GLOB_ALTDIRFUNC +.It Dv GLOB_ALTDIRFUNC +The following additional fields in the pglob structure have been +initialized with alternate functions for glob to use to open, read, +and close directories and to get stat information on names found +in those directories. +.Bd -literal + void *(*gl_opendir)(const char * name); + struct dirent *(*gl_readdir)(void *); + void (*gl_closedir)(void *); + int (*gl_lstat)(const char *name, struct stat *st); + int (*gl_stat)(const char *name, struct stat *st); +.Ed +.Pp +This extension is provided to allow programs such as +.Xr restore 8 +to provide globbing from directories stored on tape. +.It Dv GLOB_BRACE +Pre-process the pattern string to expand +.Ql {pat,pat,...} +strings like +.Xr csh 1 . +The pattern +.Ql {} +is left unexpanded for historical reasons +.Po +.Xr csh 1 +does the same thing to ease typing of +.Xr find 1 +patterns +.Pc . +.It Dv GLOB_MAGCHAR +Set by the +.Fn glob +function if the pattern included globbing characters. +See the description of the usage of the +.Fa gl_matchc +structure member for more details. +.It Dv GLOB_NOMAGIC +Is the same as +.Dv GLOB_NOCHECK +but it only appends the +.Fa pattern if it does not contain any of the special characters ``*'', ``?'' or ``[''. -GLOB_NOMAGIC is used to simplify implementing the globbing behavior in -.IR csh(1). -.PP +.Dv GLOB_NOMAGIC +is provided to simplify implementing the historic +.Xr csh 1 +globbing behavior and should probably not be used anywhere else. +.It Dv GLOB_NOESCAPE +Disable the use of the backslash +.Pq Ql \e +character for quoting. +.It Dv GLOB_TILDE +Expand patterns that start with +.Ql ~ +to user name home directories. +.It Dv GLOB_LIMIT +Limit the amount of memory used by matches to +.Li ARG_MAX +This option should be set for programs that can be coerced to a denial of +service attack via patterns that expand to a very large number of matches, +such as a long string of +.Li */../*/.. +.El +.Pp If, during the search, a directory is encountered that cannot be opened or read and -.I errfunc -is non-NULL, -.I glob -calls (*\fIerrfunc\fP)(\fIpath\fP, \fIerrno\fP). -This may be unintuitive: a pattern like ``*/Makefile'' will try to -.IR stat (2) -``foo/Makefile'' even if ``foo'' is not a directory, resulting in a +.Fa errfunc +is +.Pf non- Dv NULL , +.Fn glob +calls +.Fa (*errfunc)(path, errno) . +This may be unintuitive: a pattern like +.Ql */Makefile +will try to +.Xr stat 2 +.Ql foo/Makefile +even if +.Ql foo +is not a directory, resulting in a call to -.IR errfunc . -The error routine can suppress this action by testing for ENOENT and -ENOTDIR; however, the GLOB_ERR flag will still cause an immediate -return when this happens. -.PP -If -.I errfunc -returns non-zero, -.I glob -stops the scan and returns -.I GLOB_ABEND -after setting -.I gl_pathc +.Fa errfunc . +The error routine can suppress this action by testing for +.Dv ENOENT and -.I gl_pathv +.Dv ENOTDIR ; +however, the +.Dv GLOB_ERR +flag will still cause an immediate +return when this happens. +.Pp +If +.Fa errfunc +returns non-zero, +.Fn glob +stops the scan and returns +.Dv GLOB_ABORTED +after setting +.Fa gl_pathc +and +.Fa gl_pathv to reflect any paths already matched. This also happens if an error is encountered and -.I GLOB_ERR +.Dv GLOB_ERR is set in -.IR flags , +.Fa flags , regardless of the return value of -.IR errfunc , +.Fa errfunc , if called. If -.I GLOB_ERR +.Dv GLOB_ERR is not set and either -.I errfunc -is NULL or -.I errfunc +.Fa errfunc +is +.Dv NULL +or +.Fa errfunc returns zero, the error is ignored. -.PP +.Pp The -.I globfree +.Fn globfree function frees any space associated with -.I pglob +.Fa pglob from a previous call(s) to -.IR glob . -.SH RETURNS +.Fn glob . +.Pp +The historical +.Dv GLOB_QUOTE +flag is no longer supported. +Per +.St -p1003.2-92 , +backslash escaping of special characters is the default behaviour; +it may be disabled by specifying the +.Dv GLOB_NOESCAPE +flag. +.Sh RETURN VALUES On successful completion, -.I glob +.Fn glob returns zero. In addition the fields of -.I pglob +.Fa pglob contain the values described below: -.TP -.I gl_pathc +.Bl -tag -width GLOB_NOCHECK +.It Fa gl_pathc contains the total number of matched pathnames so far. -This includes other matches from previous invocations of -.I glob -if -.I GLOB_APPEND +This includes other matches from previous invocations of +.Fn glob +if +.Dv GLOB_APPEND was specified. -.TP -.I gl_matchc +.It Fa gl_matchc contains the number of matched pathnames in the current invocation of -.I glob. -.TP -.I gl_flags -contains a copy of the -.I flags -parameter with the bit GLOB_MAGCHAR set if -.I pattern +.Fn glob . +.It Fa gl_flags +contains a copy of the +.Fa flags +parameter with the bit +.Dv GLOB_MAGCHAR +set if +.Fa pattern contained any of the special characters ``*'', ``?'' or ``['', cleared if not. -.TP -.I gl_pathv -contains a pointer to a NULL-terminated list of matched pathnames. +.It Fa gl_pathv +contains a pointer to a +.Dv NULL Ns -terminated +list of matched pathnames. However, if -.I gl_pathc +.Fa gl_pathc is zero, the contents of -.I gl_pathv +.Fa gl_pathv are undefined. -.PP +.El +.Pp If -.I glob -terminates due to an error, it sets errno and returns one of the -following non-zero constants, which are defined in the include -file : -.TP -GLOB_NOSPACE -An attempt to allocate memory failed. -.TP -GLOB_ABEND +.Fn glob +terminates due to an error, it sets +.Va errno +and returns one of the following non-zero constants, which are defined +in the include file +.Aq Pa glob.h : +.Bl -tag -width GLOB_ABORTEDXXX +.It Dv GLOB_ABORTED The scan was stopped because an error was encountered and either -GLOB_ERR was set or (*\fIerrfunc\fR)() returned non-zero. -.PP +.Dv GLOB_ERR +was set or +.Fa (*errfunc)() +returned non-zero. +.It Dv GLOB_NOMATCH +The pattern does not match any existing pathname, and +.Dv GLOB_NOCHECK +was not set int +.Dv flags . +.It Dv GLOB_NOSPACE +An attempt to allocate memory failed, or if +.Va errno +was 0 +.Li GLOB_LIMIT +was specified in the flags and +.Li ARG_MAX +patterns were matched. +.El +.Pp +The historical +.Dv GLOB_ABEND +return constant is no longer supported. Portable applications should use the +.Dv GLOB_ABORTED +constant instead. +.Pp The arguments -.I pglob->gl_pathc +.Fa pglob\->gl_pathc and -.I pglob->gl_pathv +.Fa pglob\->gl_pathv are still set as specified above. -.SH STANDARDS -The -.I glob -function is expected to be POSIX 1003.2 compatible with the exception -that the flag -.I GLOB_QUOTE -and the fields -.I gl_matchc -and -.I gl_flags -should not be used by applications striving for strict POSIX conformance. -.SH EXAMPLE -A rough equivalent of ``ls -l *.c *.h'' can be obtained with the +.Sh ENVIRONMENT +.Bl -tag -width HOME -compact +.It Ev HOME +If defined, used as the home directory of the current user in +tilde expansions. +.El +.Sh EXAMPLE +A rough equivalent of +.Ql "ls -l *.c *.h" +can be obtained with the following code: -.sp -.nf -.RS +.Bd -literal -offset indent glob_t g; g.gl_offs = 2; @@ -306,21 +434,53 @@ glob("*.h", GLOB_DOOFFS | GLOB_APPEND, NULL, &g); g.gl_pathv[0] = "ls"; g.gl_pathv[1] = "-l"; execvp("ls", g.gl_pathv); -.RE -.fi -.SH SEE ALSO -sh(1), fnmatch(3), wordexp(3), regexp(3) -.SH BUGS -Patterns longer than MAXPATHLEN may cause unchecked errors. -.PP -.I Glob -may fail and set errno for any of the errors specified for the -library routines -.I stat (2), -.I closedir (3), -.I opendir (3), -.I readdir (3), -.I malloc (3), +.Ed +.Sh SEE ALSO +.Xr sh 1 , +.Xr fnmatch 3 , +.Xr regexp 3 +.Sh STANDARDS +The +.Fn glob +function is expected to be +.St -p1003.2 +compatible with the exception +that the flags +.Dv GLOB_ALTDIRFUNC, +.Dv GLOB_BRACE +.Dv GLOB_MAGCHAR, +.Dv GLOB_NOMAGIC, +.Dv GLOB_TILDE, and -.I free (3). - +.Dv GLOB_LIMIT +and the fields +.Fa gl_matchc +and +.Fa gl_flags +should not be used by applications striving for strict +.Tn POSIX +conformance. +.Sh HISTORY +The +.Fn glob +and +.Fn globfree +functions first appeared in +.Bx 4.4 . +.Sh BUGS +Patterns longer than +.Dv MAXPATHLEN +may cause unchecked errors. +.Pp +The +.Fn glob +function may fail and set +.Va errno +for any of the errors specified for the library routines +.Xr stat 2 , +.Xr closedir 3 , +.Xr opendir 3 , +.Xr readdir 3 , +.Xr malloc 3 , +and +.Xr free 3 . diff --git a/contrib/tcsh/glob.h b/contrib/tcsh/glob.h index bed9c4c5824..eb8753a466d 100644 --- a/contrib/tcsh/glob.h +++ b/contrib/tcsh/glob.h @@ -1,6 +1,8 @@ +/* $NetBSD: glob.h,v 1.13 2001/03/16 21:02:42 christos Exp $ */ + /* - * Copyright (c) 1989 The Regents of the University of California. - * All rights reserved. + * Copyright (c) 1989, 1993 + * The Regents of the University of California. All rights reserved. * * This code is derived from software contributed to Berkeley by * Guido van Rossum. @@ -33,39 +35,61 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * @(#)glob.h 5.6 (Berkeley) 4/3/91 + * @(#)glob.h 8.1 (Berkeley) 6/2/93 */ #ifndef _GLOB_H_ #define _GLOB_H_ typedef struct { - int gl_pathc; /* count of total paths so far */ - int gl_matchc; /* count of paths matching pattern */ - int gl_offs; /* reserved at beginning of gl_pathv */ - int gl_flags; /* copy of flags parameter to glob() */ - /* copy of errfunc parameter to glob() */ + int gl_pathc; /* Count of total paths so far. */ + int gl_matchc; /* Count of paths matching pattern. */ + int gl_offs; /* Reserved at beginning of gl_pathv. */ + int gl_flags; /* Copy of flags parameter to glob. */ + char **gl_pathv; /* List of paths matching pattern. */ + /* Copy of errfunc parameter to glob. */ int (*gl_errfunc) __P((const char *, int)); - char **gl_pathv; /* list of paths matching pattern */ + + /* + * Alternate filesystem access methods for glob; replacement + * versions of closedir(3), readdir(3), opendir(3), stat(2) + * and lstat(2). + */ + void (*gl_closedir) __P((void *)); + struct dirent *(*gl_readdir) __P((void *)); + void *(*gl_opendir) __P((const char *)); + int (*gl_lstat) __P((const char *, struct stat *)); + int (*gl_stat) __P((const char *, struct stat *)); } glob_t; -#define GLOB_APPEND 0x001 /* append to output from previous call */ -#define GLOB_DOOFFS 0x002 /* use gl_offs */ -#define GLOB_ERR 0x004 /* return on error */ -#define GLOB_MAGCHAR 0x008 /* pattern had globbing characters */ -#define GLOB_MARK 0x010 /* append / to matching directories */ -#define GLOB_NOCHECK 0x020 /* return pattern itself if nothing matches */ -#define GLOB_NOSORT 0x040 /* don't sort */ -#define GLOB_QUOTE 0x080 /* quote special chars with \ */ -#define GLOB_NOMAGIC 0x100 /* like GLOB_NOCHECK but only if the pattern - * did not have any magic characters */ -#define GLOB_ALTNOT 0x200 /* use alternate glob character [^ not !] */ +#define GLOB_APPEND 0x0001 /* Append to output from previous call. */ +#define GLOB_DOOFFS 0x0002 /* Use gl_offs. */ +#define GLOB_ERR 0x0004 /* Return on error. */ +#define GLOB_MARK 0x0008 /* Append / to matching directories. */ +#define GLOB_NOCHECK 0x0010 /* Return pattern itself if nothing matches. */ +#define GLOB_NOSORT 0x0020 /* Don't sort. */ +#define GLOB_NOESCAPE 0x1000 /* Disable backslash escaping. */ -#define GLOB_NOSPACE (-1) /* malloc call failed */ -#define GLOB_ABEND (-2) /* unignored error */ +#define GLOB_NOSPACE (-1) /* Malloc call failed. */ +#define GLOB_ABORTED (-2) /* Unignored error. */ +#define GLOB_NOMATCH (-3) /* No match, and GLOB_NOCHECK was not set. */ +#define GLOB_NOSYS (-4) /* Implementation does not support function. */ -int glob __P((const char *, int, int (*)(const char *, int), glob_t *)); -void globfree __P((glob_t *)); -int globcharcoll __P((int, int)); +#if !defined(_POSIX_C_SOURCE) && !defined(_XOPEN_SOURCE) +#define GLOB_ALTDIRFUNC 0x0040 /* Use alternately specified directory funcs. */ +#define GLOB_BRACE 0x0080 /* Expand braces ala csh. */ +#define GLOB_MAGCHAR 0x0100 /* Pattern had globbing characters. */ +#define GLOB_NOMAGIC 0x0200 /* GLOB_NOCHECK without magic chars (csh). */ +#define GLOB_LIMIT 0x0400 /* Limit memory used by matches to ARG_MAX */ +#define GLOB_TILDE 0x0800 /* Expand tilde names from the passwd file. */ +#define GLOB_ALTNOT 0x1000 /* use alternate glob character [^ not !] */ +#define GLOB_QUOTE 0x2000 /* XXX: source compatibility */ + +#define GLOB_ABEND GLOB_ABORTED /* source compatibility */ +#endif + +int glob __P((const char *, int, int (*)(const char *, int), glob_t *)); +void globfree __P((glob_t *)); +int globcharcoll __P((int, int)); #endif /* !_GLOB_H_ */ diff --git a/contrib/tcsh/host.defs b/contrib/tcsh/host.defs index b00090c3f66..d3737b8447e 100644 --- a/contrib/tcsh/host.defs +++ b/contrib/tcsh/host.defs @@ -1,5 +1,5 @@ newcode : -/* $Header: /src/pub/tcsh/host.defs,v 1.28 2000/11/11 23:03:35 christos Exp $ */ +/* $Header: /src/pub/tcsh/host.defs,v 1.31 2001/06/10 02:19:11 christos Exp $ */ /* * host.defs: Hosttype/Machtype etc. */ @@ -37,7 +37,7 @@ newcode : */ #include "sh.h" -RCSID("$Id: host.defs,v 1.28 2000/11/11 23:03:35 christos Exp $") +RCSID("$Id: host.defs,v 1.31 2001/06/10 02:19:11 christos Exp $") endcode : @@ -477,8 +477,8 @@ vendor : defined(M_intel) : "intel" vendor : defined(m68k) : "motorola" vendor : defined(mac68k) : "apple" vendor : defined(pc532) : "national-semi" -vendor : defined(pmax) || defined(mips) : "dec" -vendor : defined(M_mipsel) : "dec" +vendor : defined(pmax) : "dec" +vendor : defined(mips) : "mips" vendor : defined(sparc) : "sun" vendor : defined(sun3) : "sun" vendor : defined(vax) : "digital" @@ -499,10 +499,12 @@ enddef : newdef : defined(__FreeBSD__) comment : FreeBSD +vendor : defined(__alpha) : "digital" vendor : defined(M_intel) : "intel" hosttype: : "FreeBSD" ostype : : "FreeBSD" -machtype: : "i386" +machtype: defined(__alpha) : "alpha" +machtype: defined(M_i386) : "i386" enddef : @@ -539,6 +541,14 @@ ostype : : "coherent" machtype: defined(_I386) : "i386" enddef : +newdef : defined(concurrent) +comment : Concurrent PowerHawk +vendor : : "concurrent" +hosttype: : "powerhawk" +ostype : : "powermax_os" +machtype: : "powerhawk" +enddef : + newdef : defined(SCO) comment : SCO UNIX System V/386 Release 3.2 vendor : : "sco" diff --git a/contrib/tcsh/nls/C/set17 b/contrib/tcsh/nls/C/set17 index fa4fd20f46f..0e8115a0b79 100644 --- a/contrib/tcsh/nls/C/set17 +++ b/contrib/tcsh/nls/C/set17 @@ -1,4 +1,4 @@ -$ $Id: set17,v 1.3 1996/10/19 17:52:33 christos Exp $ +$ $Id: set17,v 1.4 2001/01/04 17:51:38 christos Exp $ $ sh.proc.c $set 17 1 BUG: waiting for background job!\n @@ -11,6 +11,6 @@ $set 17 8 BUG: status=%-9o 9 \040(core dumped) 10 \040(wd: -11 wd now: +11 (wd now: 12 %S: Already suspended\n 13 %S: Already stopped\n diff --git a/contrib/tcsh/nls/C/set3 b/contrib/tcsh/nls/C/set3 index 9f83760d8c6..7a46f5f6e51 100644 --- a/contrib/tcsh/nls/C/set3 +++ b/contrib/tcsh/nls/C/set3 @@ -1,4 +1,4 @@ -$ $Id: set3,v 1.3 1995/04/24 14:12:51 christos Exp $ +$ $Id: set3,v 1.4 2001/04/26 19:07:48 kim Exp $ $ Editor function descriptions $set 3 1 Move back a character @@ -115,3 +115,10 @@ $set 3 112 Vi goto the beginning of line 113 Perform which of current command 114 Paste cut buffer at cursor position +115 Replace just-yanked text with yank from earlier kill +116 (WIN32 only) Copy cut buffer to system clipboard +117 (WIN32 only) Paste clipboard buffer at cursor position +118 (WIN32 only) Convert each '/' in next word to '\\\\' +119 (WIN32 only) Convert each '/' in previous word to '\\\\' +120 (WIN32 only) Page visible console window up +121 (WIN32 only) Page visible console window down diff --git a/contrib/tcsh/nls/Makefile b/contrib/tcsh/nls/Makefile index 1b4de3aeafe..a1936e3644a 100644 --- a/contrib/tcsh/nls/Makefile +++ b/contrib/tcsh/nls/Makefile @@ -1,5 +1,6 @@ -SUBDIRS= C finnish french german greek italian ja spanish +SUBDIRS= C et finnish french german greek italian ja pl russian \ + spanish ukrainian #GENCAT= gencat -new GENCAT= gencat diff --git a/contrib/tcsh/nls/et/set1 b/contrib/tcsh/nls/et/set1 new file mode 100644 index 00000000000..bd44bb3cc98 --- /dev/null +++ b/contrib/tcsh/nls/et/set1 @@ -0,0 +1,140 @@ +$ $Id: set1,v 1.2 2001/01/11 13:25:24 christos Exp $ +$ Error messages +$set 1 +1 SЭntaksi viga +2 %s ei ole lubatud +3 SУna on liiga pikk +4 $< rida on liiga pikk +5 $0 jaoks pole faili +6 MittetДielik [] muutja +7 $ laiendus peab lУppema enne ] +8 Halb : tДiendaja $ (%c) +9 Viga indeksis +10 Vigane number +11 SУnad on otsas +12 Faili nimi on puudu +13 Sisemine tДiendi viga +14 KДsku pole +15 Liiga vДhe argumente +16 Liiga palju argumente +17 Seda aliast on liiga ohtlik luua +18 TЭhi if +19 EbaУige then +20 SУnad pole sulgudes +21 %s ei leita +22 Vigane mask +23 Pole sellist limiiti +24 Argument on liiga suur +25 Vigane vУi tundmatu skaleerimis faktor +26 Defineerimata muutuja +27 Kataloogi pinu pole nii sЭgav +28 Vigane signaali number +29 Tundmatu signaal; kill -l annab signaalid +30 Muutuja nimi peab algama tДhega +31 Muutuja nimi on liiga pikk +32 Muutuja nimi vУib koosneda ainult tДhtedest ja numbritest +33 Sellel kДsuinterpretaatoril puudub tЖЖkontroll +34 Avaldises on sЭntaksi viga +35 Kodukataloogi pole +36 Kodukataloogi ei saa minna +37 Vigane tЭhi kДsk +38 Omistamisel pole avaldist +39 Tundmatu operaator +40 Arusaamatu +41 %s: Fail on olemas +42 VУtme -c argumendi lУpus on langkriips +43 Katkestatud +44 Indeks on piiridest vДljas +45 Rea ЭletДitumine +46 Sellist tЖЖd pole +47 Terminalilt ei saa +48 Pole while/foreach sees +49 Protsessid on otsas +50 Ei leia +51 Puuduv %c +52 Ei leia sЭmbolit %c +53 MДlu on otsas +54 Toru ei saa luua +55 %s: %s +56 %s +57 Kasuta: jobs [ -l ] +58 Argumendid peavad olema tЖЖde vУi protsesside identifikaatorid +59 KДesolevat tЖЖd pole +60 Pole eelmist tЖЖd +61 Pole mustrile vastavat tЖЖd +62 Fork sЭveneb > %d; vУibolla `...` tsЭkkel +63 Alamshellis pole tЖЖkontrolli +64 SЭnkroniseerimise tУrge: Protsessi %d pole +65 %sTeil on peatatud tЖid +66 %sTeil on seisatud tЖid +67 Pole teist kataloogi +68 Kataloogi pinu on tЭhi +69 Halb kataloog +70 kasuta: %s [-%s]%s +71 -h vУtmel puudub operand +72 Pole meldimise shell +73 Nulliga jagamine +74 JДДgi leidmine nulliga +75 Vigane skaala; te mУtlesite ehk "%s"? +76 Login shelli ei saa peatada (praegu) +77 Tundmatu kasutaja: %s +78 $home muutujat pole vДДrtustatud +79 Kasuta: history [-%s] [# sЭndmuste number] +80 $, ! vУi < pole lubatud kasutada koos $# vУi $? +81 Reavahetus muutuja nimes +82 * pole lubatud kasutada koos $# vУi $? +83 $? vУi $# pole lubatud +84 Lubamatu muutuja nimi +85 Reavahetus muutuja indeksis +86 Laiendamise puhvri ЭletДitumine +87 Muutuja sЭntaksi viga +88 Vigane ! kasutamine +89 Eelmist asendust pole +90 Vigane asendamine +91 Eelmist vasakut poolt pole +92 Parem pool on liiga pikk +93 Vigane ! modifikaator: %c +94 Modifikaator ebaУnnestus +95 Asenduse puhvri ЭletДitumine +96 Vigane ! argumendi valik +97 Pole eelmist otsimist +98 %s: SЭndmust pole +99 Liiga palju ) +100 Liiga palju ( +101 Halvasti paigutatud ( +102 Suunamisel pole nime antud +103 Segane vДljundi suunamine +104 << ei saa () vahel kasutada +105 Segane sisendi suunamine +106 Halvasti paigutatud () +107 Aliaste tsЭkkel +108 $watch muutuja pole seatud +109 Plaanitud sЭndmuseid pole +110 Kasuta: sched -.\nKasuta: sched [+]hh:mm +111 Niipalju sЭndmuseid pole +112 Pole kДsku, mida kДivitada +113 Vigane sЭndmuseaeg +114 Suhteline aeg ei ole am/pm notatsiooniga kooskУlas +115 Termcap sУne on liiga pikk +116 Kasuta: settc %s [yes|no] +117 Tundmatu omadus `%s' +118 Tundmatu termcap parameeter `%%%c' +119 `%s' jaoks on liiga palju argumente (%d) +120 `%s' nУuab %d argumenti +121 Kasuta: echotc [-v|-s] [ []] +122 %s: %s. Vale arhitektuur +123 !# Ajaloo tsЭkkel +124 Vigane failipДring +125 Valija ЭletДitumine +126 Tundmatu vУti: `-%s'\nKasuta: %s [ -bcdefilmnqstvVxX -Dnimi[=vДДrtus] ] [ argument ... ] +127 Tundmatu vУti: `-%s'\nKasuta: %s [ -bcdefFilmnqstvVxX ] [ argument ... ] +128 Tundmatu vУti: `-%s'\nKasuta: %s [ -bcdefilmnqstvVxX ] [ argument ... ] +129 \nVigane tДiendus: "%s" +130 \nVigane %s: '%c' +131 \nEraldaja '%c' puudub pДrast %s "%s" +132 \nMittetДielik %s: "%s" +133 -m vУtmel pole operandi +134 Kasuta: unlimit [-fh] [limiidid] +135 $%S on ainult lugemiseks +136 Pole sellist tЖЖd +137 Tundmatu colorls muutuja `%c%c' diff --git a/contrib/tcsh/nls/et/set10 b/contrib/tcsh/nls/et/set10 new file mode 100644 index 00000000000..50b486a1639 --- /dev/null +++ b/contrib/tcsh/nls/et/set10 @@ -0,0 +1,8 @@ +$ $Id: set10,v 1.1 2001/01/04 18:46:02 christos Exp $ +$ ma.setp.c +$set 10 +1 setpath: vigane kДsk '%s'.\n +2 setpath: kДsule '%s' pole piisavalt argumente.\n +3 setpath: teel '%s' pole vДДrtust\n +4 setpath: %s ei leitud %s's\n +5 setpath: %d ei ole korrektne positsioon %s's\n diff --git a/contrib/tcsh/nls/et/set11 b/contrib/tcsh/nls/et/set11 new file mode 100644 index 00000000000..7328a0d7320 --- /dev/null +++ b/contrib/tcsh/nls/et/set11 @@ -0,0 +1,10 @@ +$ $Id: set11,v 1.1 2001/01/04 18:46:02 christos Exp $ +$ sh.c +$set 11 +1 Hoiatus: tty (%s) pole kДttesaadav.\n +2 Seega ei saa kasutada tЖЖde kontrolli.\n +3 Teil on %d kirja.\n +4 Teil on %d kirja failis %s.\n +5 Teil on %skiri.\n +6 uus +7 Teil on %skiri failis %s.\n diff --git a/contrib/tcsh/nls/et/set12 b/contrib/tcsh/nls/et/set12 new file mode 100644 index 00000000000..de459481c19 --- /dev/null +++ b/contrib/tcsh/nls/et/set12 @@ -0,0 +1,4 @@ +$ $Id: set12,v 1.1 2001/01/04 18:46:02 christos Exp $ +$ sh.dir.c +$set 12 +1 %s: Proovin startida kataloogist "%s"\n diff --git a/contrib/tcsh/nls/et/set13 b/contrib/tcsh/nls/et/set13 new file mode 100644 index 00000000000..02ff2bb3eae --- /dev/null +++ b/contrib/tcsh/nls/et/set13 @@ -0,0 +1,13 @@ +$ $Id: set13,v 1.1 2001/01/04 18:46:02 christos Exp $ +$ sh.exec.c +$set 13 +1 hash=%-4d dir=%-2d prog=%s\n +2 %d hash buckets of %d bits each\n +3 debug mask = 0x%08x\n +4 %d hits, %d misses, %d%%\n +5 %S: kДsuinterpretaatori sisekДsk.\n +6 %S: KДsku pole.\n +7 where: / kДsunimes on mУttetu\n +8 %S on tegelikult +9 %S on sisekДsk\n +10 hash miss: diff --git a/contrib/tcsh/nls/et/set14 b/contrib/tcsh/nls/et/set14 new file mode 100644 index 00000000000..dedcc68ad5c --- /dev/null +++ b/contrib/tcsh/nls/et/set14 @@ -0,0 +1,6 @@ +$ $Id: set14,v 1.1 2001/01/04 18:46:03 christos Exp $ +$ sh.file.c +$set 14 +1 \nдhh!! Liiga palju %s!!\n +2 nimesid paroolifailis +3 faile diff --git a/contrib/tcsh/nls/et/set15 b/contrib/tcsh/nls/et/set15 new file mode 100644 index 00000000000..f638275026d --- /dev/null +++ b/contrib/tcsh/nls/et/set15 @@ -0,0 +1,7 @@ +$ $Id: set15,v 1.1 2001/01/04 18:46:03 christos Exp $ +$ sh.func.c +$set 15 +1 %s: %s: Ei Уnnestu %s%s piirangut\n +2 eemaldada +3 seada +4 \040kУva diff --git a/contrib/tcsh/nls/et/set16 b/contrib/tcsh/nls/et/set16 new file mode 100644 index 00000000000..e2f26be9258 --- /dev/null +++ b/contrib/tcsh/nls/et/set16 @@ -0,0 +1,13 @@ +$ $Id: set16,v 1.1 2001/01/04 18:46:03 christos Exp $ +$ sh.lex.c +$set 16 +1 Seadsin tty pgrp numbrilt %d numbrile %d\n +2 \nKasuta tЖЖ lУpetamiseks kДsku "logout".\n +3 \nKasuta "exit" kДsku %s katkestamiseks.\n +4 seek to eval %x %x\n +5 seek to alias %x %x\n +6 seek to file %x\n +7 Bad seek type %d\n +8 tell eval %x %x\n +9 tell alias %x %x\n +10 tell file %x\n diff --git a/contrib/tcsh/nls/et/set17 b/contrib/tcsh/nls/et/set17 new file mode 100644 index 00000000000..abb92bba83e --- /dev/null +++ b/contrib/tcsh/nls/et/set17 @@ -0,0 +1,16 @@ +$ $Id: set17,v 1.1 2001/01/04 18:46:03 christos Exp $ +$ sh.proc.c +$set 17 +1 BUG: ootan taustatЖЖ jДrel!\n +2 Exit %d\n +3 BUG: process flushed twice +4 TЖЖtab +5 Signaal +6 Exit %-25d +7 Valmis +8 BUG: staatus=%-9o +9 \040(mДlupilt pДДstetud) +10 \040(tЖЖkataloog: +11 (tЖЖkataloog nЭЭd: +12 %S: Juba peatatud\n +13 %S: Juba seisatud\n diff --git a/contrib/tcsh/nls/et/set18 b/contrib/tcsh/nls/et/set18 new file mode 100644 index 00000000000..b91a437cece --- /dev/null +++ b/contrib/tcsh/nls/et/set18 @@ -0,0 +1,4 @@ +$ $Id: set18,v 1.1 2001/01/04 18:46:03 christos Exp $ +$ sh.set.c +$set 18 +1 Hoiatus: nУmedalt pikk PATH sai lЭhendatud\n diff --git a/contrib/tcsh/nls/et/set19 b/contrib/tcsh/nls/et/set19 new file mode 100644 index 00000000000..8891ab9f8a4 --- /dev/null +++ b/contrib/tcsh/nls/et/set19 @@ -0,0 +1,15 @@ +$ $Id: set19,v 1.1 2001/01/04 18:46:03 christos Exp $ +$ tc.alloc.c +$set 19 +1 nbytes=%d: MДlu on otsas\n +2 free(%lx) kasutati enne mДlu haaramist. +3 free(%lx) enne mДlu algust. +4 free(%lx) pДrast mДlu lУppu. +5 free(%lx) halb plokk. +6 free(%lx) vigane piirkonna kontroll. +7 free(%lx) vigane plokkide indeks. +8 %s mДlu kasutamine hetkel:\nvaba:\t +9 \nkasutatud:\t +10 \n\tKokku kasutusel: %d, kokku vaba: %d\n +11 \tMДlu vahemikus 0x%lx kuni 0x%lx. Tegelik algus 0x%lx\n +12 MДlu vahemikus 0x%lx kuni 0x%lx (%ld).\n diff --git a/contrib/tcsh/nls/et/set2 b/contrib/tcsh/nls/et/set2 new file mode 100644 index 00000000000..691339f775f --- /dev/null +++ b/contrib/tcsh/nls/et/set2 @@ -0,0 +1,111 @@ +$ $Id: set2,v 1.1 2001/01/04 18:46:03 christos Exp $ +$ Signal names +$set 2 +1 Null signaal +2 Hangup +3 Katkestus +4 Quit +5 Vigane instruktsioon +6 Trace/BPT trap +7 Abort +8 IOT trap +9 System Crash Imminent +10 Error exit +11 EMT trap +12 Floating exception +13 Tapetud +14 Kasutaja signaal 1 +15 Kasutaja signaal 2 +16 Segmenteerimise rike +17 Viga siinil +18 Program range error +19 Operand range error +20 Vigane sЭsteemifunktsioon +21 Katkenud toru +22 Alarmkell +23 Terminated +24 Alamprotsessi olek muutus +25 Alamprotsessi surm +26 Apollo-spetsiifiline tУrge +27 Alamprotsess peatatud vУi lУpetas +28 Alamprotsess lУpetas +29 VoolutУrge +30 Resource Lost +31 Break (Ctrl-Break) +32 Sisend/vДljund vУimalik +33 AsЭnkroonne S/V (select) +34 Urgent condition on I/O channel +35 Multitasking wake-up +36 Multitasking kill +37 Fortrani asЭnkroonne S/V lУpetas +38 Recovery +39 Mitteparandatav mДlu viga +40 CPU aja piirang on Эletatud +41 System shutdown imminent +42 micro-tasking group-no wakeup flag set +43 Thread error - (use cord -T for detailed info) +44 CRAY Y-MP registri paarsuse viga +45 Information request +46 Peatatud (signaal) +47 Seisatud (signaal) +48 Peatatud +49 Seisatud +50 JДtkab +51 Peatatud (tty sisend) +52 Seisatud (tty sisend) +53 Peatatud (tty vДljund) +54 Seisatud (tty vДljund) +55 Akna olek muutus +56 Akna suurus muutus +57 Telefoni olek muutus +58 Cpu aja piirang on Эletatud +59 Faili suuruse piirang on Эletatud +60 Virtuaalaja alarm +61 Profiling time alarm +62 DIL signaal +63 Pollable event occured +64 Protsessi lwpd on blokeeritud +65 Spetsiaalne LWP signaal +66 Spetsiaalne CPR Signaal +67 Spetsiaalne CPR Signaal +68 Esimene reaalaja signaal +69 Teine reaalaja signaal +70 Kolmas reaalaja signaal +71 Neljas reaalaja signaal +72 Neljas viimane reaalaja signaal +73 Kolmas viimane reaalaja signaal +74 Teine viimane reaalaja signaal +75 Viimane reaalaja signaal +76 LAN AsЭnkroonne I/O +77 PTY read/write availability +78 I/O intervention required +79 HFT monitor mode granted +80 HFT monitor mode should be relinguished +81 HFT sound control has completed +82 Data in HFT ring buffer +83 Migrate process +84 Secure attention key +85 Reschedule +86 Signaling SS$_DEBUG +87 Prioriteedi muutus +88 Tuvastati tУeline tupiksituatsioon +89 Uus sisendsЭmbol +90 Pinu piirang on Эletatud +91 Kasutamata signaal +92 LM overlay +93 sЭsteemi kЭlmutamine +94 sЭsteemi sulatamine +95 tupiksituatsioon +96 mДlu suuruse piirang on Эletatud +97 andmete suuruse piirang on Эletatud +98 exceeded memory size limit of 32KB +99 exce error for no memory +100 check point start +101 check point start of kernel +102 restart start +103 restart of kernel +104 XMU suuruse piirang on Эletatud +105 RLG0 piirang on Эletatud +106 RLG1 piirang on Эletatud +107 RLG2 piirang on Эletatud +108 RLG3 piirang on Эletatud diff --git a/contrib/tcsh/nls/et/set20 b/contrib/tcsh/nls/et/set20 new file mode 100644 index 00000000000..0587f75ff69 --- /dev/null +++ b/contrib/tcsh/nls/et/set20 @@ -0,0 +1,41 @@ +$ $Id: set20,v 1.1 2001/01/04 18:46:03 christos Exp $ +$ tc.bind.c +$set 20 +1 Vigane klahvi nimi `%S'\n +2 Halb klahv: %S\n +3 Halb kДsk: %S\n +4 Halb klahvi spetsifikatsioon %S\n +5 Null sУne spetsifikatsioonis\n +6 Standardsed klahviseosed\n +7 Alternatiivsed klahviseosed\n +8 Mitme-sЭmbolised seosed\n +9 Seosed nooleklahvidele\n +10 %-15s-> on defineerimata\n +11 BUG!!! %s pole seotud.\n +12 Kasuta: bindkey [vУtmed] [--] [KLAHV [KдSK]]\n +13 -a esita vУi seo KLAHVI alternatiivne tabel\n +14 -b kДsitle KLAHVI kui C-, M-, F- vУi X- klahvi nime\n +15 -s kДsitle COMMAND kui literaalset vДljundsУne\n +16 -c kДsitle COMMAND kui sisemist vУi vДlist kДsku\n +17 -v seo kУik klahvid vi seostega\n +18 -e seo kУik klahvid emacsi seostega\n +19 -d seo kУik klahvid vaikimisi toimeti seostega\n +20 -l esita toimeti kДsud koos kirjeldustega\n +21 -r kustuta KLAHVILT seos\n +22 -k kasuta KLAHVI kui noole-klahvi sЭmbolnime\n +23 -- katkesta vУtmete tЖЖtlemine\n +24 -u (vУi suvaline vigane vУti) see teade\n +25 Ilma KLAHVI vУi KдSUTA trЭkib kУik seosed\n +26 Ilma KдSUTA trЭkib seosed KLAHVILE.\n +27 Halb klahvi spetsifikatsioon -- null sУne\n +28 Halb klahvi spetsifikatsioon -- tЭhi sУne\n +29 Halb funktsioon-klahvi spetsifikatsioon. Null klahv pole lubatud\n +30 Halb klahvi spetsifikatsioon -- vigane kuueteistkЭmnend number\n +31 Halb klahvi spetsifikatsioon -- vigane kaheksand number\n +32 Halb klahvi spetsifikatsioon -- vigane kЭmnend number\n +33 Halb funktsioon-klahvi spetsifikatsioon.\n +34 Null klahv pole lubatud\n +35 halb klahvi spetsifikatsioon -- tundmatu nimi "%S"\n +36 kasuta: bind [KLAHV | KдSK KLAHV | "emacs" | "vi" | "-a"]\n +37 Vigane funktsioon +38 %s\t\ton defineerimata\n diff --git a/contrib/tcsh/nls/et/set21 b/contrib/tcsh/nls/et/set21 new file mode 100644 index 00000000000..ba9a344b4c0 --- /dev/null +++ b/contrib/tcsh/nls/et/set21 @@ -0,0 +1,5 @@ +$ $Id: set21,v 1.1 2001/01/04 18:46:03 christos Exp $ +$ tc.disc.c +$set 21 +1 Lokaalseid sЭmboleid ei Уnnestu lugeda.\n +2 Lokaalseid sЭmboleid ei Уnnestu seada.\n diff --git a/contrib/tcsh/nls/et/set22 b/contrib/tcsh/nls/et/set22 new file mode 100644 index 00000000000..92e3f3aae64 --- /dev/null +++ b/contrib/tcsh/nls/et/set22 @@ -0,0 +1,17 @@ +$ $Id: set22,v 1.1 2001/01/04 18:46:04 christos Exp $ +$ tc.func.c +$set 22 +1 %S: \t on tegelikult +2 \nKasutaja %s: vale parool\n +3 Vigane alias 'precmd' eemaldatud.\n +4 Vigane alias 'cwdcmd' eemaldatud.\n +5 Vigane alias 'beepcmd' eemaldatud.\n +6 Vigane alias 'periodic' eemaldatud.\n +7 tЖЖtlen kДsurida\n +8 Kas te tуepoolest tahate kustutada kУik failid? [e/j] +9 katkestan failide kustutamise!\n +10 kДsurida on nЭЭd:\n +11 tЖЖtlen kДsurida\n +12 Эhes loenditest\n +13 kДsurida on nЭЭd:\n +14 jJ diff --git a/contrib/tcsh/nls/et/set23 b/contrib/tcsh/nls/et/set23 new file mode 100644 index 00000000000..eb0609d40c0 --- /dev/null +++ b/contrib/tcsh/nls/et/set23 @@ -0,0 +1,34 @@ +$ $Id: set23,v 1.1 2001/01/04 18:46:04 christos Exp $ +$ tc.os.c +$set 23 +1 Vigane cpu/saidi nimi +2 Saidi tee on liiga pikk +3 tundmatu +4 sait: %s\n +5 %d: Saiti pole\n +6 setlocal: %s: %s\n +7 Saiti pole +8 Te olete lУksus universumis, mida te pole loonud +9 Getwarp ebaУnnestus +10 Vigane warp +11 Setwarp ebaУnnestus +12 Vigane universum +13 Tundmatu viga: %d +14 sysname: %s\n +15 nodename: %s\n +16 release: %s\n +17 versioon: %s\n +18 masin: %s\n +19 getwd: ".." ei saa avada (%s) +20 getwd: Ei saa minna kataloogi ".." (%s) +21 getwd: Viga lugedes ".." (%s) +22 getwd: Ei saa tagasi "." kataloogi (%s) +23 getwd: "/" atribuute ei saa lugeda (%s) +24 getwd: "." atribuute ei saa lugeda (%s) +25 getwd: Kataloogi "%s" atribuute ei saa lugeda (%s) +26 getwd: Kataloogi "%s" ei saa avada (%s) +27 getwd: Kataloogis ".." pole kataloogi "." (%s) +28 Vigane sЭsteemi tЭЭp +29 SЭsteemi tЭЭp ei ole mДДratud +30 Liiga palju argumente +31 Vigane argument diff --git a/contrib/tcsh/nls/et/set24 b/contrib/tcsh/nls/et/set24 new file mode 100644 index 00000000000..a7fb2dec398 --- /dev/null +++ b/contrib/tcsh/nls/et/set24 @@ -0,0 +1,4 @@ +$ $Id: set24,v 1.1 2001/01/04 18:46:04 christos Exp $ +$ tc.sched.c +$set 24 +1 HДkk! diff --git a/contrib/tcsh/nls/et/set25 b/contrib/tcsh/nls/et/set25 new file mode 100644 index 00000000000..a95f6f60cd8 --- /dev/null +++ b/contrib/tcsh/nls/et/set25 @@ -0,0 +1,6 @@ +$ $Id: set25,v 1.1 2001/01/04 18:46:04 christos Exp $ +$ tc.sig.c +$set 25 +1 our wait %d\n +2 viga: bsd_signal(%d) pole signaal\n +3 viga: bsd_signal(%d) - sigaction ebaУnnestus, errno = %d\n diff --git a/contrib/tcsh/nls/et/set26 b/contrib/tcsh/nls/et/set26 new file mode 100644 index 00000000000..729c77647c1 --- /dev/null +++ b/contrib/tcsh/nls/et/set26 @@ -0,0 +1,15 @@ +$ $Id: set26,v 1.1 2001/01/04 18:46:04 christos Exp $ +$ tc.who.c +$set 26 +1 Ei saa lugeda %s atribuute. Anna kДsk "unset watch".\n +2 %s ei saa avada. Anna kДsk "unset watch".\n +3 BUG! viimane element ei ole viimasena registreeritud!\n +4 tagurpidi: +5 BUG! esimene element ei ole esimesena registreeritud!\n +6 uus: %s/%s\n +7 %n %a terminalil %l masinast %m. +8 %n %a terminalil %l. +9 tЖЖtab +10 lУpetas tЖЖ +11 asendas %s terminalil +12 kohalik diff --git a/contrib/tcsh/nls/et/set27 b/contrib/tcsh/nls/et/set27 new file mode 100644 index 00000000000..53828e48716 --- /dev/null +++ b/contrib/tcsh/nls/et/set27 @@ -0,0 +1,8 @@ +$ $Id: set27,v 1.1 2001/01/04 18:46:04 christos Exp $ +$ tw.comp.c +$set 27 +1 kДsk +2 eraldaja +3 muster +4 vahemik +5 tДiendamine diff --git a/contrib/tcsh/nls/et/set29 b/contrib/tcsh/nls/et/set29 new file mode 100644 index 00000000000..2ec61dd61df --- /dev/null +++ b/contrib/tcsh/nls/et/set29 @@ -0,0 +1,4 @@ +$ $Id: set29,v 1.1 2001/01/04 18:46:04 christos Exp $ +$ tw.help.c +$set 29 +1 %S'ile pole abiteksti\n diff --git a/contrib/tcsh/nls/et/set3 b/contrib/tcsh/nls/et/set3 new file mode 100644 index 00000000000..170da71d97d --- /dev/null +++ b/contrib/tcsh/nls/et/set3 @@ -0,0 +1,124 @@ +$ $Id: set3,v 1.2 2001/04/26 19:07:48 kim Exp $ +$ Editor function descriptions +$set 3 +1 Liigu sЭmbol tagasi +2 Kustuta sЭmbol kursori tagant +3 LУika jooksva sУna algusest kursorini - salvesta lУikepuhvris +4 LУika rea algusest kursorini - salvesta lУikepuhvris +5 Liigu jooksva sУna algusse +6 Liigu rea algusse +7 TДhed kursorist kuni sУnalУpuni suurteks +8 Vi muuda kursori aluse sЭmboli suurust ja liigu sЭmbol edasi +9 Vi muuda realУpuni +10 Puhasta ekraan jДttes jooksva rea Эlemiseks +11 TДienda jooksev sУna +12 Vali tДiendusi liikudes nimekirjas edasi +13 Vali tДiendusi liikudes nimekirjas tagasi +14 TДienda jooksev sУna, ignoreeri programmeeritud tДiendusi +15 Kopeeri jooksev sУna kursorini +16 Kopeeri ala mДrgist kursorini lУikepuhvrisse +17 Avalda eelneva sУnani, millele see on prefiks +18 Kustuta sЭmbol kursori alt +19 Kustuta sЭmbol kursori alt vУi teata tЭhja rea korral faililУpust +20 Kustuta sЭmbol kursori alt vУi rea lУpu korral nДita tДiendusi +21 Kustuta sЭmbol kursori alt, nДita tДiendusi vУi teata faililУpust +22 LУika kursorist jooksva sУna lУpuni - salvesta lУikepuhvris +23 Kui alustatud, lisab argumendile, muidu lisab numbri +24 Number, mis alustab argumenti +25 Liigu jДrgmisele ajaloo reale +26 SЭmbolid vДiketДhtedeks kursorist jooksva sУna lУpuni +27 NДita faililУppu +28 Kursor realУppu +29 Vaheta kursor ja mДrk +30 Avalda faili nimes metasЭmbolid +31 Avalda ajaloo kДsud +32 Avalda real ajaloo kДsud +33 Avalda muutujad +34 Liigu sЭmbol edasi +35 Liigu edasi jooksva sУna lУppu +36 Vaheta kursori ees kaks sЭmbolit +37 Otsi ajaloos tagasi jooksva rea algusega rida +38 Otsi ajaloos edasi jooksva rea algusega rida +39 Lisa eelmise kДsu viimane element +40 Inkrementaalne edaspidi otsing +41 Inkrementaalne tagurpidi otsing +42 Puhasta rida +43 LУika realУpuni ja salvesta lУikepuhvris +44 LУika ala mДrgist kursorini ja salvesta lУikepuhvris +45 LУika kogu rida ja salvesta lУikepuhvris +46 NДita tДiendamise valikud +47 NДita tДiendamise valikuid ignoreerides programmeeritud tДiendusi +48 NДita faili nimes metasЭmbolite leide +49 NДita tДiendamise valikuid vУi teavita tЭhja rea korral faililУpust +50 NДita masina koormust ja jooksva protsessi olekut +51 Avalda ajaloo kДsud ja lisa tЭhik +52 TДida kДsklus +53 Avalda failiteed, eemaldades algusest . ja .. +54 Avalda kДsk failiteeks vУi aliaseks +55 LЭlita lisamis- vУi Эlekirjutamismood +56 Lisa jДrgmisele kirjutatavale sЭmbolile kaheksas bitt +57 Lisa jДrgmine kirjutatav sЭmbol reale kvoodituna +58 NДita kУik uuesti +59 TaaskДivita peatatud toimeti +60 Esita jooksva kДsu abiinfo +61 See sЭmbol lisatakse reale +62 See sЭmbol on sЭmboljДrjendis esimene +63 Sea mДrk +64 Paranda jooksva sУna Уigekirja +65 Paranda terve rea Уigekirja +66 Saada sЭmbol terminalile vahendusmoodis +67 LЭlita ajaloo literaalne vУi leksiline mood +68 Vaheta kursori alune ja kursorist vasakul asuvad sЭmbolid +69 Vaheta kursori ees kaks sЭmbolit +70 Tty viivitusega peatamine sЭmbol +71 Tty tЭhjenda vДljund sЭmbol +72 Tty katkesta sЭmbol +73 Tty vДlju sЭmbol +74 Tty peata sЭmbol +75 Tty luba vДljund sЭmbol +76 Tty keela vДljund sЭmbol +77 TДhistab sidumata sЭmbolit +78 Emacsi universaalne argument (argument korda 4) +79 Liigu eelmisele ajaloo reale +80 SЭmbolid suurtДhtedeks kursorist jooksva sУna lУpuni +81 Vi liigu jДrgmise sУna algusse +82 Vi sisene peale kursorit lisamismoodi +83 Vi sisene rea lУpus lisamismoodi +84 Vi muuda kursori aluse sЭmboli suurust ja liigu Эhe sЭmboli vУrra edasi +85 Vi muuda prefiks kДsklust +86 Vi muuda realУpuni +87 Sisene vi kДsumoodi (kasuta alternatiivseid klahvi seoseid) +88 Vi kДsu mood tДienda jooksev sУna +89 Vi liigu eelmisele sЭmbolile (backspace) +90 Vi kustuta prefiks kДsklus +91 Vi liigu jooksva tЭhikuga eraldatud sУna lУppu +92 Vi liigu jooksva sУna lУppu +93 Vi liigu tagasi mДДratud sЭmbolini +94 Vi liigu edasi mДДratud sЭmbolini +95 Vi liigu tagasi mДДratud sЭmbolile +96 Vi liigu edasi mДДratud sЭmbolile +97 Sisene vi lisamismoodi +98 Sisene rea alguses vi lisamismoodi +99 Vi korda antud sЭmboli otsimist samas suunas +100 Vi korda antud sЭmboli otsimist vastupidises suunas +101 Vi korda antud otsimist samas suunas +102 Vi korda antud otsimist vastupidises suunas +103 Vi asenda kursori alt sЭmbol jДrgmisena kirjutatava sЭmboliga +104 Vi asendusre╦iim +105 Vi otsi ajaloost tagurpidi +106 Vi otsi ajaloost edaspidi +107 Vi asenda kursori alune sЭmbol ja mine sisesamisre╦iimi +108 Vi asenda kogu rida +109 Vi mine eelmise sУna juurde +110 Vi mine jДrgmise sУna juurde +111 Vi taasta viimane muutus +112 Vi mine rea algusse +113 KДivita jooksval sУnal kДsk which +114 Kleebi lУikepuhver alates kursori positsioonist +115 Replace just-yanked text with yank from earlier kill +116 (WIN32 only) Copy cut buffer to system clipboard +117 (WIN32 only) Paste clipboard buffer at cursor position +118 (WIN32 only) Convert each '/' in next word to '\\\\' +119 (WIN32 only) Convert each '/' in previous word to '\\\\' +120 (WIN32 only) Page visible console window up +121 (WIN32 only) Page visible console window down diff --git a/contrib/tcsh/nls/et/set30 b/contrib/tcsh/nls/et/set30 new file mode 100644 index 00000000000..8438f462ab2 --- /dev/null +++ b/contrib/tcsh/nls/et/set30 @@ -0,0 +1,16 @@ +$ $Id: set30,v 1.1 2001/01/04 18:46:04 christos Exp $ +$ tw.parse.c +$set 30 +1 starting_a_command %d\n +2 complete %d +3 complete %d %S\n +4 %s: Internal match error.\n +5 elementi +6 veergu +7 Leidsin %d %s, nДitan neid? [e/j] +8 looking = %d\n +9 \n%s sisemine viga: Ma ei tea, mida ma otsin!\n +10 pole kataloog +11 pole leitav +12 loetamatu +13 jJ diff --git a/contrib/tcsh/nls/et/set31 b/contrib/tcsh/nls/et/set31 new file mode 100644 index 00000000000..f701daaa367 --- /dev/null +++ b/contrib/tcsh/nls/et/set31 @@ -0,0 +1,7 @@ +$ $Id: set31,v 1.1 2001/01/04 18:46:04 christos Exp $ +$ vms.termcap.c +$set 31 +1 TERMCAP ei saa avada: [%s]\n +2 %s ei saa avada.\n +3 Leidsin %s failis %s.\n +4 %s pole failis %s\n diff --git a/contrib/tcsh/nls/et/set4 b/contrib/tcsh/nls/et/set4 new file mode 100644 index 00000000000..cc9cb195228 --- /dev/null +++ b/contrib/tcsh/nls/et/set4 @@ -0,0 +1,45 @@ +$ $Id: set4,v 1.1 2001/01/04 18:46:04 christos Exp $ +$ Termcap strings +$set 4 +1 lisa uus tЭhi rida +2 kuuldav kell +3 puhasta pУhjani +4 puhasta rea lУpuni +5 kursori horisontaal positsioon +6 ekraani puhastamine +7 sЭmboli kustutamine +8 rea kustutamine +9 alusta kustutamis mood +10 lУpeta kustutamis mood +11 lУpeta vahelekirjutamise mood +12 kursor olekurealt +13 kursor koju +14 lisa sЭmbol +15 alusta vahelekirjutamise mood +16 lisa tДide +17 saadab kursori alla +18 saadab kursori vasakule +19 saadab kursori paremale +20 saadab kursori Эles +21 alusta rasvast +22 atribuutide lУpp +23 mitte-purustav tЭhik +24 lУpeta rУhutatud +25 alusta rУhutatud +26 kursor olekureale +27 kursor Эhe vУrra Эles +28 alusta allajoonimist +29 lУpeta allajoonimine +30 nДhtav kell +31 kustuta mitu sЭmbolit +32 kursor korduvalt alla +33 lisa mitu sЭmbolit +34 kursor korduvalt vasakule +35 kursor korduvalt paremale +36 kursor korduvalt Эles +37 Omab automaatseid ДДri +38 Saab kasutada fЭЭsilist tabulaatorit +39 Ridade arv +40 Veergude arv +41 Omab meta klahvi +42 Parem ДДr ignoreerib uut rida diff --git a/contrib/tcsh/nls/et/set5 b/contrib/tcsh/nls/et/set5 new file mode 100644 index 00000000000..013f1b72e0d --- /dev/null +++ b/contrib/tcsh/nls/et/set5 @@ -0,0 +1,4 @@ +$ $Id: set5,v 1.1 2001/01/04 18:46:05 christos Exp $ +$ ed.chared.c +$set 5 +1 TЖЖjДrjekorra koormuse info puudub\n diff --git a/contrib/tcsh/nls/et/set6 b/contrib/tcsh/nls/et/set6 new file mode 100644 index 00000000000..c97d381f85e --- /dev/null +++ b/contrib/tcsh/nls/et/set6 @@ -0,0 +1,11 @@ +$ $Id: set6,v 1.1 2001/01/04 18:46:05 christos Exp $ +$ ed.inputl.c +$set 6 +1 VIGA: vigane kДsk klahvilt 0%o\r\n +2 jah\n +3 paranda\n +4 katkesta\n +5 ei\n +6 Pole sellist kДsku\n +7 Arusaamatu kДsk\n +8 *** toimeti fataalne VIGA ***\r\n\n diff --git a/contrib/tcsh/nls/et/set7 b/contrib/tcsh/nls/et/set7 new file mode 100644 index 00000000000..32d3e63e1ca --- /dev/null +++ b/contrib/tcsh/nls/et/set7 @@ -0,0 +1,30 @@ +$ $Id: set7,v 1.1 2001/01/04 18:46:05 christos Exp $ +$ ed.screen.c +$set 7 +1 \n\tTcsh arvab, et teie terminal omab\n +2 \tjДrgnevaid omadusi:\n\n +3 \tTal on %d veergu ja %d rida\n +4 \tTa %s meta klahvi\n +5 omab +6 ei oma +7 \tTal on%s tabulaatori omadus\n +8 puudu +9 \tTa %s automaatseid ДДri\n +10 omab +11 ei oma +12 \tTa %s maagilisi ДДri\n +13 (tЭhi) +14 jah +15 ei +16 VIGA: ei saa kustutada\r\n +17 DeleteChars: num on mУttetu: %d\r\n +18 VIGA: cannot insert\r\n +19 StartInsert: num on mУttetu: %d\r\n +20 %s: Ei saa avada /etc/termcap.\n +21 %s: Terminali tЭЭbil "%s" puudub kirje\n +22 %s: kasutan rumala terminali seadeid.\n +23 %s: HOIATUS: Teie terminal ei saa liikuda Эles.\n +24 Pikkade ridade toimetamine vУib olla kummaline.\n +25 puudub puhasta EOL omadus.\n +26 puudub kustuta sЭmbol omadus.\n +27 puudub lisa sЭmbol omadus.\n diff --git a/contrib/tcsh/nls/et/set8 b/contrib/tcsh/nls/et/set8 new file mode 100644 index 00000000000..dd44350d063 --- /dev/null +++ b/contrib/tcsh/nls/et/set8 @@ -0,0 +1,5 @@ +$ $Id: set8,v 1.1 2001/01/04 18:46:05 christos Exp $ +$ ed.term.c +$set 8 +1 Tundmatu vУti +2 Vigane argument diff --git a/contrib/tcsh/nls/et/set9 b/contrib/tcsh/nls/et/set9 new file mode 100644 index 00000000000..877460b1a2c --- /dev/null +++ b/contrib/tcsh/nls/et/set9 @@ -0,0 +1,12 @@ +$ $Id: set9,v 1.1 2001/01/04 18:46:05 christos Exp $ +$ ed.xmap.c +$set 9 +1 AddXkey: Null pikkusega laiend-klahv ei ole lubatud.\n +2 AddXkey: kДsuni viiv jДrjend pole lubatud\n +3 DeleteXkey: Null pikkusega laiend-klahv ei ole lubatud.\n +4 Sidumata laiendatud klahv "%S"\n +5 MУned laiendatud klahvid on sisemise trЭkipuhvri jaoks liiga pikad +6 Enumerate: BUG!! Null viit anti\n! +7 sisendit pole +8 Midagi peab jДrgnema: %c\n +9 kaheksand-konstant ei mahu sЭmbolisse.\n diff --git a/contrib/tcsh/nls/finnish/set22 b/contrib/tcsh/nls/finnish/set22 index f66ed7be040..7008372884d 100644 --- a/contrib/tcsh/nls/finnish/set22 +++ b/contrib/tcsh/nls/finnish/set22 @@ -1,4 +1,4 @@ -$ $Id: set22,v 1.1 2000/01/14 22:57:33 christos Exp $ +$ $Id: set22,v 1.2 2001/04/26 19:06:01 kim Exp $ $ tc.func.c $set 22 1 %S: \t on alias komennolle @@ -14,5 +14,4 @@ $set 22 11 JДsennetДДn komentoriviД\n 12 on yhdellД listoista\n 13 Komentorivi on nyt:\n -$ 14 YyKk -14 Kk +14 YyKk diff --git a/contrib/tcsh/nls/finnish/set3 b/contrib/tcsh/nls/finnish/set3 index 01a99dcf944..b8805187486 100644 --- a/contrib/tcsh/nls/finnish/set3 +++ b/contrib/tcsh/nls/finnish/set3 @@ -1,4 +1,4 @@ -$ $Id: set3,v 1.1 2000/01/14 22:57:33 christos Exp $ +$ $Id: set3,v 1.2 2001/04/26 19:07:49 kim Exp $ $ Editor function descriptions $set 3 1 Siirry taaksepДin yksi merkki @@ -115,4 +115,10 @@ $set 3 112 Vi: siirry rivin alkuun 113 Suorita 'which' tДlle komennolle 114 Liimaa/lisДД leikkauspuskurin sisДltЖ kursorin paikalle - +115 Korvaa viimeksi liimattu teksti aikaisemmalla leikkauksella +116 (WIN32 only) Copy cut buffer to system clipboard +117 (WIN32 only) Paste clipboard buffer at cursor position +118 (WIN32 only) Convert each '/' in next word to '\\\\' +119 (WIN32 only) Convert each '/' in previous word to '\\\\' +120 (WIN32 only) Page visible console window up +121 (WIN32 only) Page visible console window down diff --git a/contrib/tcsh/nls/finnish/set30 b/contrib/tcsh/nls/finnish/set30 index 1fed7223996..6f61db587a7 100644 --- a/contrib/tcsh/nls/finnish/set30 +++ b/contrib/tcsh/nls/finnish/set30 @@ -1,4 +1,4 @@ -$ $Id: set30,v 1.1 2000/01/14 22:57:33 christos Exp $ +$ $Id: set30,v 1.2 2001/04/26 19:06:01 kim Exp $ $ tw.parse.c $set 30 1 starting_a_command %d\n @@ -13,4 +13,4 @@ $set 30 10 not a directory 11 not found 12 unreadable -13 Yy +13 YyKk diff --git a/contrib/tcsh/nls/french/set3 b/contrib/tcsh/nls/french/set3 index acf6f80be5d..7e6c9522305 100644 --- a/contrib/tcsh/nls/french/set3 +++ b/contrib/tcsh/nls/french/set3 @@ -1,4 +1,4 @@ -$ $Id: set3,v 1.1 1995/04/25 14:04:35 christos Exp $ +$ $Id: set3,v 1.2 2001/04/26 19:07:49 kim Exp $ $ Description des fonctions Иditeur $set 3 1 Recule d'un caractХre @@ -115,3 +115,10 @@ $set 3 112 Vi va au dИbut de la ligne 113 ExИcute quelle commande en cours 114 Colle le tampon de copie Ю la position du curseur +115 Replace just-yanked text with yank from earlier kill +116 (WIN32 only) Copy cut buffer to system clipboard +117 (WIN32 only) Paste clipboard buffer at cursor position +118 (WIN32 only) Convert each '/' in next word to '\\\\' +119 (WIN32 only) Convert each '/' in previous word to '\\\\' +120 (WIN32 only) Page visible console window up +121 (WIN32 only) Page visible console window down diff --git a/contrib/tcsh/nls/german/set10 b/contrib/tcsh/nls/german/set10 index ae50ffb0fef..27f8a66a9cc 100644 --- a/contrib/tcsh/nls/german/set10 +++ b/contrib/tcsh/nls/german/set10 @@ -1,4 +1,4 @@ -$ $Id: set10,v 1.3 1996/10/19 17:52:48 christos Exp $ +$ $Id: set10,v 1.4 2001/04/26 19:09:18 kim Exp $ $ ma.setp.c $set 10 1 setpath: ungЭltiger Befehl '%s'.\n @@ -6,4 +6,3 @@ $set 10 3 setpath: Wert fehlt in Pfad '%s'\n 4 setpath: %s nicht in %s gefunden\n 5 setpath: %d keine gЭltige Position in %s\n - diff --git a/contrib/tcsh/nls/german/set3 b/contrib/tcsh/nls/german/set3 index c19ea2ad8f2..43688180181 100644 --- a/contrib/tcsh/nls/german/set3 +++ b/contrib/tcsh/nls/german/set3 @@ -1,4 +1,4 @@ -$ $Id: set3,v 1.4 1995/04/25 14:08:04 christos Exp $ +$ $Id: set3,v 1.5 2001/04/26 19:07:50 kim Exp $ $ Editor function descriptions $set 3 1 Ein Zeichen zurЭck @@ -115,3 +115,10 @@ $set 3 112 Vi gehe zum Anfang der Zeile 113 Mache ein 'which' von dem aktuellen Befehl 114 FЭge den Cut-Puffer an der Cursor-Position ein +115 Replace just-yanked text with yank from earlier kill +116 (WIN32 only) Copy cut buffer to system clipboard +117 (WIN32 only) Paste clipboard buffer at cursor position +118 (WIN32 only) Convert each '/' in next word to '\\\\' +119 (WIN32 only) Convert each '/' in previous word to '\\\\' +120 (WIN32 only) Page visible console window up +121 (WIN32 only) Page visible console window down diff --git a/contrib/tcsh/nls/greek/set3 b/contrib/tcsh/nls/greek/set3 index 46b4364a10c..3a3f56a81eb 100644 --- a/contrib/tcsh/nls/greek/set3 +++ b/contrib/tcsh/nls/greek/set3 @@ -1,4 +1,4 @@ -$ $Id: set3,v 1.2 1998/09/18 15:32:03 christos Exp $ +$ $Id: set3,v 1.3 2001/04/26 19:07:50 kim Exp $ $ Editor function descriptions $set 3 1 лЕТАЙъМГСГ щМА ВАЯАЙТчЯА ЭПИСХЕМ @@ -115,4 +115,10 @@ $set 3 112 (Vi) ЛЕТАЙъМГСГ СТГМ АЯВч ТГР ЦЯАЛЛчР 113 еЙТщКЕСГ "which" ТГР ТЯщВОУСАР ЕМТОКчР 114 еПИЙЭККГСГ ТОУ cut buffer СТГМ ТЯщВОУСА ХщСГ - +115 Replace just-yanked text with yank from earlier kill +116 (WIN32 only) Copy cut buffer to system clipboard +117 (WIN32 only) Paste clipboard buffer at cursor position +118 (WIN32 only) Convert each '/' in next word to '\\\\' +119 (WIN32 only) Convert each '/' in previous word to '\\\\' +120 (WIN32 only) Page visible console window up +121 (WIN32 only) Page visible console window down diff --git a/contrib/tcsh/nls/italian/set3 b/contrib/tcsh/nls/italian/set3 index 733a36ff18e..fdab68ddee7 100644 --- a/contrib/tcsh/nls/italian/set3 +++ b/contrib/tcsh/nls/italian/set3 @@ -1,4 +1,4 @@ -$ $Id: set3,v 1.1 1998/09/03 22:03:30 christos Exp $ +$ $Id: set3,v 1.2 2001/04/26 19:07:51 kim Exp $ $ Editor function descriptions $set 3 1 Retrocede di un carattere @@ -115,3 +115,10 @@ $set 3 112 Vi: si sposta all'inizio della linea 113 Esegue un `which' del comando corrente 114 Inserisce il contenuto del buffer alla posizione del cursore +115 Replace just-yanked text with yank from earlier kill +116 (WIN32 only) Copy cut buffer to system clipboard +117 (WIN32 only) Paste clipboard buffer at cursor position +118 (WIN32 only) Convert each '/' in next word to '\\\\' +119 (WIN32 only) Convert each '/' in previous word to '\\\\' +120 (WIN32 only) Page visible console window up +121 (WIN32 only) Page visible console window down diff --git a/contrib/tcsh/nls/pl/README b/contrib/tcsh/nls/pl/README new file mode 100644 index 00000000000..073b1fa77ff --- /dev/null +++ b/contrib/tcsh/nls/pl/README @@ -0,0 +1,3 @@ +TЁumaczenia dokonaЁ PaweЁ Niewiadomski . +Licencja GPL. Wszelkie informacje o bЁЙdach proszЙ kierowaФ do mnie +(chciaЁbym aby tЁumaczenie to byЁo jak najlepsze) \ No newline at end of file diff --git a/contrib/tcsh/nls/pl/set1 b/contrib/tcsh/nls/pl/set1 new file mode 100644 index 0000000000000000000000000000000000000000..f7384624cbf8abdefce26331d3ba8a2e0b1e3764 GIT binary patch literal 4383 zcmeH@K@Ng25Jd?)H^!K_a^pc7C%A3Gl#%Vl4jRuG!1Z}M`{%Jjh8GbtdPnjX) zWtl!oKnW-TC7=Y9fD%vwNfr;Dr$9IKBFPP^q$XxbsTcQjrj|Ogc$Z|+Nq>rW KX=b9nK7Il9pzN3c literal 0 HcmV?d00001 diff --git a/contrib/tcsh/nls/pl/set10 b/contrib/tcsh/nls/pl/set10 new file mode 100644 index 00000000000..4283408251d --- /dev/null +++ b/contrib/tcsh/nls/pl/set10 @@ -0,0 +1,8 @@ +$ $Id: set10,v 1.2 1995/03/19 18:07:15 christos Exp $ +$ ma.setp.c +$set 10 +1 setpath: nieprawidЁowe polecenie '%s'.\n +2 setpath: za maЁo argumentСw dla polecenia '%s'.\n +3 setpath: brakuje warto╤ci w ╤cie©ce '%s'\n +4 setpath: %s nie zostaЁ znaleziony w %s\n +5 setpath: %d nie jest prawidЁow╠ pozycj╠ w %s\n diff --git a/contrib/tcsh/nls/pl/set11 b/contrib/tcsh/nls/pl/set11 new file mode 100644 index 00000000000..97fac7d9c1f --- /dev/null +++ b/contrib/tcsh/nls/pl/set11 @@ -0,0 +1,10 @@ +$ $Id: set11,v 1.2 1995/03/19 18:07:15 christos Exp $ +$ sh.c +$set 11 +1 Uwaga: brak dostЙpu do tty (%s).\n +2 Innymi sЁowy brak zarz╠dzania pracami w tej powЁoce.\n +3 Masz %d wiadomo╤ci.\n +4 Masz %d wiadomo╤ci w %s.\n +5 Masz %spocztЙ.\n +6 now╠ +7 Masz %spocztЙ w %s.\n diff --git a/contrib/tcsh/nls/pl/set12 b/contrib/tcsh/nls/pl/set12 new file mode 100644 index 00000000000..f9f35ea34a9 --- /dev/null +++ b/contrib/tcsh/nls/pl/set12 @@ -0,0 +1,4 @@ +$ $Id: set12,v 1.3 1996/04/26 20:31:52 christos Exp $ +$ sh.dir.c +$set 12 +1 %s: PrСbujЙ wystartowaФ z "%s"\n diff --git a/contrib/tcsh/nls/pl/set13 b/contrib/tcsh/nls/pl/set13 new file mode 100644 index 00000000000..eeb48738215 --- /dev/null +++ b/contrib/tcsh/nls/pl/set13 @@ -0,0 +1,13 @@ +$ $Id: set13,v 1.2 1995/03/19 18:07:15 christos Exp $ +$ sh.exec.c +$set 13 +1 hash=%-4d dir=%-2d prog=%s\n +2 %d hash buckets of %d bits each\n +3 maska odpluskwiania = 0x%08x\n +4 %d trafieЯ, %d chybieЯ, %d%%\n +5 %S: polecenie wbudowane w powЁokЙ.\n +6 %S: nie znaleziono polecenia.\n +7 gdzie: / w poleceniu nie ma sensu\n +8 %S jest aliasem do +9 %S jest wbudowane w powЁokЙ\n +10 chybieЯ hash: diff --git a/contrib/tcsh/nls/pl/set14 b/contrib/tcsh/nls/pl/set14 new file mode 100644 index 00000000000..d3dd53c8502 --- /dev/null +++ b/contrib/tcsh/nls/pl/set14 @@ -0,0 +1,6 @@ +$ $Id: set14,v 1.3 1998/11/24 18:18:06 christos Exp $ +$ sh.file.c +$set 14 +1 \nKurcze!! Zbyt wiele %s!!\n +2 nazw w pliku haseЁ +3 pliki diff --git a/contrib/tcsh/nls/pl/set15 b/contrib/tcsh/nls/pl/set15 new file mode 100644 index 00000000000..51b62acae11 --- /dev/null +++ b/contrib/tcsh/nls/pl/set15 @@ -0,0 +1,7 @@ +$ $Id: set15,v 1.3 1996/10/19 17:52:32 christos Exp $ +$ sh.func.c +$set 15 +1 %s: %s: Nie mogЙ limitowaФ %s%s\n +2 usuЯ +3 ustaw +4 \040twardy diff --git a/contrib/tcsh/nls/pl/set16 b/contrib/tcsh/nls/pl/set16 new file mode 100644 index 00000000000..0d8197d78d8 --- /dev/null +++ b/contrib/tcsh/nls/pl/set16 @@ -0,0 +1,13 @@ +$ $Id: set16,v 1.3 1996/04/26 20:31:55 christos Exp $ +$ sh.lex.c +$set 16 +1 Reset tty pgrp from %d to %d\n +2 \nAby wylogowaФ siЙ u©yj "logout".\n +3 \nAby opu╤ciФ %s u©yj "exit".\n +4 seek to eval %x %x\n +5 seek to alias %x %x\n +6 seek to file %x\n +7 Bad seek type %d\n +8 tell eval %x %x\n +9 tell alias %x %x\n +10 tell file %x\n diff --git a/contrib/tcsh/nls/pl/set17 b/contrib/tcsh/nls/pl/set17 new file mode 100644 index 00000000000..5a796eba6c2 --- /dev/null +++ b/contrib/tcsh/nls/pl/set17 @@ -0,0 +1,16 @@ +$ $Id: set17,v 1.3 1996/10/19 17:52:33 christos Exp $ +$ sh.proc.c +$set 17 +1 PLUSKWA: czekam na zadanie pracuj╠ce w tle!\n +2 ZakoЯczono %d\n +3 PLUSKWA: proces wywoЁany drugi raz +4 DziaЁa +5 SygnaЁ +6 ZwrСcono %-25d +7 ZakoЯczony +8 PLUSKWA: status=%-9o +9 \040(zrzucono core) +10 \040(KR: +11 (KR jest: +12 %S: Ju© jest zawieszony\n +13 %S: Ju© jest zatrzymany\n diff --git a/contrib/tcsh/nls/pl/set18 b/contrib/tcsh/nls/pl/set18 new file mode 100644 index 00000000000..55671a79b37 --- /dev/null +++ b/contrib/tcsh/nls/pl/set18 @@ -0,0 +1,4 @@ +$ $Id: set18,v 1.2 1995/03/19 18:07:15 christos Exp $ +$ sh.set.c +$set 18 +1 Uwaga: ╤miesznie dЁuga PATH zostaЁa obciЙta\n diff --git a/contrib/tcsh/nls/pl/set19 b/contrib/tcsh/nls/pl/set19 new file mode 100644 index 00000000000..23166bced88 --- /dev/null +++ b/contrib/tcsh/nls/pl/set19 @@ -0,0 +1,15 @@ +$ $Id: set19,v 1.3 1996/04/26 20:31:58 christos Exp $ +$ tc.alloc.c +$set 19 +1 n-bajtСw=%d: Brak pamiЙci\n +2 free(%lx) wywoЁany przed jak╠kolwiek allokacj╠. +3 free(%lx) ponad obszarem pamiЙci. +4 free(%lx) poni©ej pocz╠tku u©ywanej pamiЙci. +5 free(%lx) zЁy blok. +6 free(%lx) zЁe sprawdzanie zasiЙgu. +7 free(%lx) zЁy index bloku. +8 %s aktualnie allokowana pamiЙФ:\nwolna:\t +9 \nu©ywane:\t +10 \n\tAktualnie w u©yciu: %d, wolnych: %d\n +11 \tZaallokowano pamiЙФ od 0x%lx do 0x%lx. WierzchoЁek 0x%lx\n +12 Zaallokowano pamiЙФ od 0x%lx do 0x%lx (%ld).\n diff --git a/contrib/tcsh/nls/pl/set2 b/contrib/tcsh/nls/pl/set2 new file mode 100644 index 00000000000..7c18bac4dab --- /dev/null +++ b/contrib/tcsh/nls/pl/set2 @@ -0,0 +1,111 @@ +$ $Id: set2,v 1.4 1998/10/25 15:12:38 christos Exp $ +$ Signal names +$set 2 +1 Pusty sygnaЁ +2 Hangup +3 Przerwij +4 Quit +5 NieprawdiЁowa instrukcja +6 Trace/BPT trap +7 Abort +8 IOT trap +9 System Crash Imminent +10 PowrСt z bЁЙdem +11 EMT trap +12 Floating exception +13 Zabity +14 1 sygnaЁ u©ytkownika +15 2 sygnaЁ u©ytkownika +16 Naruszenie ochrony pamiЙci +17 BЁ╠d szyny +18 Program range error +19 Operand range error +20 NieprawidЁowe wywoЁanie systemowe +21 Przerwany potok +22 Alarm clock +23 ZakoЯczono +24 Zmiana statusu potomka +25 ╕mierФ potomka +26 BЁ╠d specyficzny dla Apollo +27 Potomek zakoЯczyЁ dziaЁanie, lub zostaЁ wyЁ╠czony +28 Potomek zakoЯczyЁ dziaЁanie +29 Brak zasilania +30 ZasСb stracony +31 Przerwanie (Ctrl-Break) +32 Input/output possible signal +33 Asynchroniczne We/Wy (select) +34 Pilne zdarzenie na kanale I/O +35 Multitasking wake-up +36 Multitasking kill +37 Fortran asynchronous I/O completion +38 Recovery +39 Nienaprawialny bЁ╠d pamiЙci +40 Limit czasu CPU przekroczony +41 System shutdown imminent +42 micro-tasking group-no wakeup flag set +43 Thread error - (use cord -T for detailed info) +44 BЁ╠d rejestru parzysto╤ci dla CRAY Y-MP +45 ╞╠danie informacji +46 Zawieszony (sygnaЁ) +47 Zatrzymany (sygnaЁ) +48 Zawieszony +49 Zatrzymany +50 Kontynuowany +51 Zawieszony (oczekuje wej╤cia z tty) +52 Zatrzymany (oczekuje wej╤cia z tty) +53 Zawieszony (wyj╤cie na tty) +54 Zatrzymany (wyj╤cie na tty) +55 Window status changed +56 Window size changed +57 Phone status changed +58 Limit czasu CPU wyczerpany +59 Limit systemu plikСw wyczerpany +60 Virtual time alarm +61 Profiling time alarm +62 sygnaЁ DIL +63 Pollable event occured +64 Process's lwps are blocked +65 Special LWP signal +66 Special CPR Signal +67 Special CPR Signal +68 First Realtime Signal +69 Second Realtime Signal +70 Third Realtime Signal +71 Fourth Realtime Signal +72 Fourth Last Realtime Signal +73 Third Last Realtime Signal +74 Second Last Realtime Signal +75 Last Realtime Signal +76 LAN Asyncronous I/O +77 PTY read/write availability +78 I/O intervention required +79 HFT monitor mode granted +80 HFT monitor mode should be relinguished +81 HFT sound control has completed +82 Data in HFT ring buffer +83 Migrate process +84 Secure attention key +85 Reschedule +86 Signaling SS$_DEBUG +87 Zmieniono priorytet +88 True deadlock detected +89 New input character +90 Limit stosu wyczerpany +91 Nieu©ywany sygnaЁ +92 LM overlay +93 system zamro©ony +94 system odmro©ony +95 dead lock +96 exceeded memory size limit +97 exceeded data size limit +98 exceeded memory size limit of 32KB +99 exce error for no memory +100 check point start +101 check point start of kernel +102 pocz╠tek restartu +103 restart j╠dra +104 exeeded XMU size limit +105 exeeded RLG0 limit +106 exeeded RLG1 limit +107 exeeded RLG2 limit +108 exeeded RLG3 limit diff --git a/contrib/tcsh/nls/pl/set20 b/contrib/tcsh/nls/pl/set20 new file mode 100644 index 00000000000..432c7728e81 --- /dev/null +++ b/contrib/tcsh/nls/pl/set20 @@ -0,0 +1,41 @@ +$ $Id: set20,v 1.2 1995/03/19 18:07:15 christos Exp $ +$ tc.bind.c +$set 20 +1 NieprawidЁowa nazwa klawisza `%S'\n +2 NieprawidЁowa nazwa klawisza: %S\n +3 NieprawidЁowa nazwa polecenia: %S\n +4 Bad key spec %S\n +5 Null string specification\n +6 Standardowe przyporz╠dkowania klawiszy\n +7 Alternatywne przyporz╠dkowania klawiszy\n +8 Multi-character bindings\n +9 Arrow key bindings\n +10 %-15s-> is undefined\n +11 Pluskwa!!! %s nie jest przyporz╠dkowany niczemu.\n +12 U©ycie: bindkey [opcje] [--] [Klawisz [POLECENIE]]\n +13 -a list or bind KEY in alternative key map\n +14 -b interpret KEY as a C-, M-, F- or X- key name\n +15 -s interpret COMMAND as a literal string to be output\n +16 -c interpret COMMAND as a builtin or external command\n +17 -v bind all keys to vi bindings\n +18 -e bind all keys to emacs bindings\n +19 -d bind all keys to default editor's bindings\n +20 -l list editor commands with descriptions\n +21 -r remove KEY's binding\n +22 -k interpret KEY as a symbolic arrow-key name\n +23 -- force a break from option processing\n +24 -u (or any invalid option) this message\n +25 Without KEY or COMMAND, prints all bindings\n +26 Without COMMAND, prints the binding for KEY.\n +27 bad key specification -- null string\n +28 bad key specification -- empty string\n +29 Bad function-key specification. Null key not allowed\n +30 bad key specification -- malformed hex number\n +31 bad key specification -- malformed octal number\n +32 bad key specification -- malformed decimal number\n +33 Bad function-key specification.\n +34 Null key not allowed\n +35 bad key specification -- unknown name "%S"\n +36 u©ycie: bind [Klawisz | Klawisz polecenia | "emacs" | "vi" | "-a"]\n +37 NieprawidЁowa funkcja +38 %s\t\tjest niezdefiniowany\n diff --git a/contrib/tcsh/nls/pl/set21 b/contrib/tcsh/nls/pl/set21 new file mode 100644 index 00000000000..64e60e89572 --- /dev/null +++ b/contrib/tcsh/nls/pl/set21 @@ -0,0 +1,5 @@ +$ $Id: set21,v 1.2 1995/03/19 18:07:15 christos Exp $ +$ tc.disc.c +$set 21 +1 Nie mogЁem pobraФ lokalnych znakСw.\n +2 Nie mogЁem ustawiФ lokalnych znakСw.\n diff --git a/contrib/tcsh/nls/pl/set22 b/contrib/tcsh/nls/pl/set22 new file mode 100644 index 00000000000..173ef5562ee --- /dev/null +++ b/contrib/tcsh/nls/pl/set22 @@ -0,0 +1,17 @@ +$ $Id: set22,v 1.2 1995/03/19 18:07:15 christos Exp $ +$ tc.func.c +$set 22 +1 %S: \t jest aliasem do +2 \nNieprawidЁowe hasЁo dla %s\n +3 Faulty alias 'precmd' removed.\n +4 Faulty alias 'cwdcmd' removed.\n +5 Faulty alias 'beepcmd' removed.\n +6 Faulty alias 'periodic' removed.\n +7 przetwarzam liniЙ poleceЯ\n +8 Czy na pewno chcesz usun╠Ф wszystkie pliki? [n/t] +9 pomijam kasowanie plikСw!\n +10 lini╠ poleceЯ jest teraz:\n +11 przetwarzam liniЙ poleceЯ\n +12 w jednej z list\n +13 lini╠ poleceЯ jest teraz:\n +14 tT diff --git a/contrib/tcsh/nls/pl/set23 b/contrib/tcsh/nls/pl/set23 new file mode 100644 index 00000000000..2cecc8ca206 --- /dev/null +++ b/contrib/tcsh/nls/pl/set23 @@ -0,0 +1,34 @@ +$ $Id: set23,v 1.3 1996/04/26 20:32:00 christos Exp $ +$ tc.os.c +$set 23 +1 Bad cpu/site name +2 Site path too long +3 nieznany +4 site: %s\n +5 %d: Nie znaleziono komputera\n +6 setlocal: %s: %s\n +7 Komputer nie zostaЁ znaleziony +8 You're trapped in a universe you never made +9 Getwarp failed +10 Invalid warp +11 Setwarp failed +12 Illegal universe +13 Nieznany bЁ╠d: %d +14 sysname: %s\n +15 nodename: %s\n +16 release: %s\n +17 version: %s\n +18 machine: %s\n +19 getwd: Nie mogЙ otworzyФ ".." (%s) +20 getwd: Nie mogЙ przej╤Ф do ".." (%s) +21 getwd: BЁ╠d odczytu w ".." (%s) +22 getwd: Nie mogЙ przej╤Ф do "." (%s) +23 getwd: Cannot stat "/" (%s) +24 getwd: Cannot stat "." (%s) +25 getwd: Cannot stat directory "%s" (%s) +26 getwd: Cannot open directory "%s" (%s) +27 getwd: Cannot find "." in ".." (%s) +28 NieprawidЁowy typ systemu +29 Typ systemu nie zostaЁ ustawiony +30 Zbyt du©o argumentСw +31 NieprawidЁowy argument diff --git a/contrib/tcsh/nls/pl/set24 b/contrib/tcsh/nls/pl/set24 new file mode 100644 index 00000000000..2896947ae36 --- /dev/null +++ b/contrib/tcsh/nls/pl/set24 @@ -0,0 +1,4 @@ +$ $Id: set24,v 1.2 1995/03/19 18:07:15 christos Exp $ +$ tc.sched.c +$set 24 +1 kludge diff --git a/contrib/tcsh/nls/pl/set25 b/contrib/tcsh/nls/pl/set25 new file mode 100644 index 00000000000..063e8d6c2f6 --- /dev/null +++ b/contrib/tcsh/nls/pl/set25 @@ -0,0 +1,6 @@ +$ $Id: set25,v 1.2 1995/03/19 18:07:15 christos Exp $ +$ tc.sig.c +$set 25 +1 our wait %d\n +2 error: bsd_signal(%d) signal out of range\n +3 error: bsd_signal(%d) - sigaction failed, errno %d\n diff --git a/contrib/tcsh/nls/pl/set26 b/contrib/tcsh/nls/pl/set26 new file mode 100644 index 00000000000..5c804ae9b33 --- /dev/null +++ b/contrib/tcsh/nls/pl/set26 @@ -0,0 +1,15 @@ +$ $Id: set26,v 1.2 1995/03/19 18:07:15 christos Exp $ +$ tc.who.c +$set 26 +1 stat dla %s nie powiСdЁ siЙ. Wpisz "unset watch".\n +2 Nie mo©na otworzyФ %s. Wpisz "unset watch".\n +3 BUG! last element is not whotail!\n +4 backward: +5 BUG! first element is not whohead!\n +6 new: %s/%s\n +7 %n has %a %l from %m. +8 %n has %a %l. +9 logged on +10 logged off +11 replaced %s on +12 local diff --git a/contrib/tcsh/nls/pl/set27 b/contrib/tcsh/nls/pl/set27 new file mode 100644 index 00000000000..489f0de260b --- /dev/null +++ b/contrib/tcsh/nls/pl/set27 @@ -0,0 +1,8 @@ +$ $Id: set27,v 1.2 1995/03/19 18:07:15 christos Exp $ +$ tw.comp.c +$set 27 +1 polecenie +2 separator +3 pattern +4 zasiЙg +5 completion diff --git a/contrib/tcsh/nls/pl/set29 b/contrib/tcsh/nls/pl/set29 new file mode 100644 index 00000000000..559bc5e7078 --- /dev/null +++ b/contrib/tcsh/nls/pl/set29 @@ -0,0 +1,4 @@ +$ $Id: set29,v 1.2 1995/03/19 18:07:15 christos Exp $ +$ tw.help.c +$set 29 +1 Brak pliku pomocy dla %S\n diff --git a/contrib/tcsh/nls/pl/set3 b/contrib/tcsh/nls/pl/set3 new file mode 100644 index 0000000000000000000000000000000000000000..b287ce2aeef2e847388015bb6a12aaf302454212 GIT binary patch literal 4928 zcmeHK*-s-$nonPxRU8JJ)1GXpH5#p2tI=q*8tp?XwHl2^tI=vT8tpTG*1oiwEfxj} z8f*$M_`dMLVS{BPR7g}68^)eIsBF7q9YN$+`^&7F)@mR3x%u%O@kL}nL`MGN`)Kva ztyHZ*)f)a6$-UxIN^~l+B$v#RCBn5SSY75QY5dm{fN zc~?A2PW5HkOjZv^{Bo9L``K1j%c@zPr9Z;TT3OR+Sy}2)vc2VOcP7^xjr^lDgc;J@ zn`RR!Z9ei+PKgu&G}v~EraGx^>e<16dzDmoG1c{_x?}0C>+hw}m6uAw?@92n1er{< zX5xXlIGK-&g}6E&H|FA2An`nvcpgtY`y$fnm(q+hEJ@PZT2lHCX+c_+UaSl&*VJ|W zmQ_%6`xW!hwA1;oz7m-#Va!$8IrI06}x6v>Xo?Ce99GBx+1|V zGF2xdb>fPAE%~sPbLP2FCojZ8WKzClm!c*h+NE}>Uy{qfW$W@0TDRd`aF+C&KKAM>*?-s(iM}Mk9Za z+<3Dk?kTHt3vxxT1S_q|4`sbPD6=vz(~4EL%Dr-@+=b<3fv6~}fIy3vRgY2@izP8} zD%_DjN-oTm7oMWJuq+ovkrY1`S&;(sj2eyksp<5uj4SSuDpggc-y zdfYs=VphzEArccYajgE%c_)Xxp@Z*3%kt6phn)lCfFJNfexM(;4j+O3LEwNKst4k* zjp!3#9{3N%Av^RR8iyvV_O)|L_Mb_PYunuRZ;PG5c5~Z;&}|M-z}Pl-#CC8yxI?}IKe(0Gz40x& zJSlI9&GshW>});*-A!Xl-_$qx7T;o9VoUqEG>owu+_TR8FXVN;(OkFI>3YY}Y=f<< z8)Bm!25-2PHDhRv21evHYmL6LUUk;2SH>&8#)Hy0dRMKH)n3pmuXeueeQT}K7t%{a zzo8@F^n(AFNru5B(+-n(u9>f)4>!ngLmz4oZzJFWle_?v)Vl6kcl7Fcy8axjKQG%% z(!H{-_%**K*L|OI-49)pg{$`L6?<97iT)b@qgOfadd|D!wO*js34u$jORLs((1EsU zyk^u`jns5oJW5SnxKt-DnH%grgr_Tpt4c?!o!RqV7+gZnj5B&p&&_jwW_+^H^qe~w zoRjkwK)_!jbS5UiL*Npd-A}ov#3##qDFQxW6$ZxeSGbLGyW+2yu!vTSvJ*qx#28X; zmHQP^VQ!^t&Xu|6k2rB2C2x5PmcQ5xMV94LdOD3eg`TogQP57cQ*zom?H2-Qvr`k` zu;7tX10%W98z^W+?pBI)zDV7Fk~~U=`f}Dx&I;RnLIK<}`R9B$*Ua*~$ct<%|JU4O zzMm&(u{_V4&?2wqImUkSMPAPj@&;ImPTP#9q7=YwC(}!J(p^}ZX=Zpz z%aF`$ilkc^8(@))nh^j)zm>8wG{sXQquCLck};QU9$As)1Q;O+=7_6Fme3PCX(eeA zd;(@^CrR=#{zI~#3?@G&S(0O%f!7-ICqiakNIlR)e-7C6ye$}tN@ev1>bBpa0Y(F5%$2=otvU=Vho9*H9c%MQp9Inv$AfgU<+`@Y53iKlq#nVv|+9xBwk;Ya6a-_A_kJzjs_EfM2-LoPz z!gd+j+8zUoFvQs|-^E+s6N`KL(68`4`Q`7l9rhjDX5aDcr=9LjbDMuBcE~ny;_5cr zraKf&W6kdL+DD*oY5_|yk(C6T$)-Llm9H% z)jzY1_J&y3!58{E*$^IOLxk7W=?#2c%aVU(SYBhV_<#D>#4G)kzJ?jrcwkNS%}TQ? z9(k32D^{`6RTf;O!(&nqciuOA#K}SY(%*8Be~0%1eQw3D{Kk`S-g#EDw4P>p6wL~& zmS27HMr7yjbvQsfosI>K{tgYb`Ba;`BVXdb9+z9J)g~G=C*4-3WsxQ^T83L`@g-u8 ze}z4mlt1VX{K5FZAM_6zJnKXEL-(QcKtBu~!~-(ThhFfZ>;1ID_x*cv&+h3vdf$83 zySMJ?z44B|n?|htPTc$N`8{^{T`zRs9kbtMP`)E~`W?G7?r!19nRR!x4Vlz9qN8+xgpt+ZH^AaVC1K+wWb{4#57hp>JduoVA zyTKc@VKh3x6FjrQoT%1lH69y(h1St#pTW^@HM))GhUHQkeDU*FUN`EzuGcl_zk$K? z*FV;S^;W%KCqMu#UT1X^+JLsDS-0x6-gYZ>Ep$a(HVa+gEB!*g&_6?5h>JFSa-sd` z5wyhx13q4;jj!{ldHTcs-&uahNun@;Z=sHS*4C| zw?$P&%!b|i)E}r4mvTnNuwpw~Et|t-Hd{jGkE-NT6~a(;FjO6C=_9mJvPwNvC{M5y zu&Wir8A(cg)G)}lN^BDE!OonE%v)qr1-2AHO~O%e*p-M~h46yvw3~%qq4T*C5d{MD z3y%Q4wSov0*o)sH1Mn(2)0Hzvvvej)L#RlQNunM>=9mqlIw4ts+Jr$1r&b9-4of6BqY^`)gc1aNgGVhQIYU)iqD~VNej;}ktIwh z3Eh>@eF=R$p-;yLfjFCsv-vn%i1WF)5saJuIGsq)(S+%iR{hfGk9_b4u)&nG4}alq zjZNt4Qe@HD<^STYmOB23wpV@>kJ=-9WMSMZZsp$eyf=}>yf@zu-fQp0d;Xq6#FtK% zc&qu|YD?qt+re7~4Bl#Q+i&?>6T;r=zi@KWChC+4xk;L$X*P`}Z|d;%CWB7_)>OZe z+{zVq)p%%1u4y%YjRLGDkaq+C&B;UTShHsR(wVcuCow0o0=?2kKERx8K_D9-6@iR_ zR=^w;8mQ6{%#Bsx#pU&-QQ5hrdEUS+O&vjHlc!4sbGqpFf#*CcV@g`MQerGAW|P`{ zQY;_ZasdQ&VTAh)`e%#T2#g6)&T*$8SsP~$CuT{@4FppQc5WY(>Rb%rt z7V^l~?V5gtdaO>C>U!Xky}Y1ado8G>n5!bD$5D$_$+=dszXkgX5zcpEqF&>{a(nz# zbwz&dtUa&IVC{L$u9FHpZ=YSeZf1o6&TtzQHtv#wSj@4P8SaYwO0sWuS89O0P0@^z Z#F %d; maybe `...` loop +63 No job control in subshells +64 Sync fault: Process %d not found +65 %sThere are suspended jobs +66 %sСуществуют остановленные задания +67 No other directory +68 Стек каталогов пуст +69 Неверное имя каталога +70 Использование: %s [-%s]%s +71 Отсутсвует операнд флага -h +72 Not a login shell +73 Деление на 0 +74 Mod by 0 +75 Bad scaling; did you mean "%s"? +76 Can't suspend a login shell (yet) +77 Неизвестный пользователь: %s +78 Переменная $home не установлена +79 Использование: history [-%s] [# число событий] +80 $, ! или < запрещено к использованию с $# или $? +81 Newline in variable name +82 * запрещено к использованию с $# или $? +83 $?<цифра> или $#<цифра> запрещено +84 Неверное имя переменной +85 Newline in variable index +86 Переполнения буфера расширения +87 Синтах переменной +88 Неверная форма ! +89 Отсутсвует предыдущая подстановка +90 Плохая подстановка +91 No previous left hand side +92 Right hand side too long +93 Плохой модификатор !: %c +94 Modifier failed +95 Переполнение буфера подстановки +96 Bad ! arg selector +97 No prev search +98 %s: Событие не найдено +99 Слишком много ) +100 Слишком много ( +101 Неверно указанная ( +102 Отсутствует имя для перенаправления +103 Неоднозначное перенаправление вывода +104 Нельзя использовать << в () +105 Неоднозначное перенаправление ввода +106 Неверно указанные () +107 Зацикливание псевдонимов +108 No $watch variable set +109 No scheduled events +110 Использование: sched -<номер элемента>.\nИспользование: sched [+]ЧЧ:ММ <команда> +111 Не так много событий для запуска по расписанию +112 Отсутствует команда для исполнения +113 Неверное время для события +114 Relative time inconsistent with am/pm +115 Out of termcap string space +116 Использование: settc %s [yes|no] +117 Unknown capability `%s' +118 Неизвестный параметр termcap `%%%c' +119 Слишком много аргументов для `%s' (%d) +120 `%s' требует %d аргументов +121 Использование: echotc [-v|-s] [ []] +122 %s: %s. Неверная архитектура +123 !# зацикливание памяти команд +124 Malformed file inquiry +125 Selector overflow +126 Неизвестная опция: `-%s'\nИспользование: %s [ -bcdefilmnqstvVxX -Dимя[=значение] ] [ аргумент ... ] +127 Неизвестная опция: `-%s'\nИспользование: %s [ -bcdefFilmnqstvVxX ] [ аргумент ... ] +128 Неизвестная опция: `-%s'\nИспользование: %s [ -bcdefilmnqstvVxX ] [ аргумент ... ] +129 \nInvalid completion: "%s" +130 \nInvalid %s: '%c' +131 \nMissing separator '%c' after %s "%s" +132 \nIncomplete %s: "%s" +133 Нет операнда для флага -m +134 Использование: unlimit [-fh] [limits] +135 $%S только для чтения +136 Нет такого задания +137 Неизвестное значение `%c%c' переменной colorls diff --git a/contrib/tcsh/nls/russian/set10 b/contrib/tcsh/nls/russian/set10 new file mode 100644 index 00000000000..8f4ac87683b --- /dev/null +++ b/contrib/tcsh/nls/russian/set10 @@ -0,0 +1,8 @@ +$ $Id: set10,v 1.1 2001/03/18 19:06:35 christos Exp $ +$ ma.setp.c +$set 10 +1 setpath: неверная команда '%s'.\n +2 setpath: недостаточно аргументов для команды '%s'.\n +3 setpath: value missing in path '%s'\n +4 setpath: %s не найдено в %s\n +5 setpath: %d not valid position in %s\n diff --git a/contrib/tcsh/nls/russian/set11 b/contrib/tcsh/nls/russian/set11 new file mode 100644 index 00000000000..164b2a039a7 --- /dev/null +++ b/contrib/tcsh/nls/russian/set11 @@ -0,0 +1,10 @@ +$ $Id: set11,v 1.1 2001/03/18 19:06:36 christos Exp $ +$ sh.c +$set 11 +1 Предупреждение: нет доступа к tty (%s).\n +2 Поэтому управление заданиями в этом шелле отсутствует.\n +3 Для вас есть %d почтовых сообщения(й).\n +4 Для вас есть %d почтовых сообщения(й) в %s.\n +5 Для вас есть %sпочта.\n +6 новая +7 Для вас есть %sпочта в %s.\n diff --git a/contrib/tcsh/nls/russian/set12 b/contrib/tcsh/nls/russian/set12 new file mode 100644 index 00000000000..29714f83733 --- /dev/null +++ b/contrib/tcsh/nls/russian/set12 @@ -0,0 +1,4 @@ +$ $Id: set12,v 1.1 2001/03/18 19:06:36 christos Exp $ +$ sh.dir.c +$set 12 +1 %s: Пытаюсь начать с "%s"\n diff --git a/contrib/tcsh/nls/russian/set13 b/contrib/tcsh/nls/russian/set13 new file mode 100644 index 00000000000..5eaebd01fe0 --- /dev/null +++ b/contrib/tcsh/nls/russian/set13 @@ -0,0 +1,13 @@ +$ $Id: set13,v 1.1 2001/03/18 19:06:36 christos Exp $ +$ sh.exec.c +$set 13 +1 hash=%-4d dir=%-2d prog=%s\n +2 %d hash buckets of %d bits each\n +3 debug mask = 0x%08x\n +4 %d hits, %d misses, %d%%\n +5 %S: shell built-in command.\n +6 %S: Command not found.\n +7 where: / in command makes no sense\n +8 %S is aliased to +9 %S is a shell built-in\n +10 hash miss: diff --git a/contrib/tcsh/nls/russian/set14 b/contrib/tcsh/nls/russian/set14 new file mode 100644 index 00000000000..6014f28b298 --- /dev/null +++ b/contrib/tcsh/nls/russian/set14 @@ -0,0 +1,6 @@ +$ $Id: set14,v 1.1 2001/03/18 19:06:37 christos Exp $ +$ sh.file.c +$set 14 +1 \nYikes!! Слишком много %s!!\n +2 имен в файле паролей +3 файлы diff --git a/contrib/tcsh/nls/russian/set15 b/contrib/tcsh/nls/russian/set15 new file mode 100644 index 00000000000..d4847a4406a --- /dev/null +++ b/contrib/tcsh/nls/russian/set15 @@ -0,0 +1,7 @@ +$ $Id: set15,v 1.1 2001/03/18 19:06:37 christos Exp $ +$ sh.func.c +$set 15 +1 %s: %s: Не могу %s%s предел\n +2 удалить +3 установить +4 \040жесткий diff --git a/contrib/tcsh/nls/russian/set16 b/contrib/tcsh/nls/russian/set16 new file mode 100644 index 00000000000..cd03c74767a --- /dev/null +++ b/contrib/tcsh/nls/russian/set16 @@ -0,0 +1,13 @@ +$ $Id: set16,v 1.1 2001/03/18 19:06:37 christos Exp $ +$ sh.lex.c +$set 16 +1 Reset tty pgrp from %d to %d\n +2 \nИспользуйте "logout" для завершения сессии.\n +3 \nИспользуйте "exit" для выхода из %s.\n +4 seek to eval %x %x\n +5 seek to alias %x %x\n +6 seek to file %x\n +7 Bad seek type %d\n +8 tell eval %x %x\n +9 tell alias %x %x\n +10 tell file %x\n diff --git a/contrib/tcsh/nls/russian/set17 b/contrib/tcsh/nls/russian/set17 new file mode 100644 index 00000000000..b5bd47a35a3 --- /dev/null +++ b/contrib/tcsh/nls/russian/set17 @@ -0,0 +1,16 @@ +$ $Id: set17,v 1.1 2001/03/18 19:06:38 christos Exp $ +$ sh.proc.c +$set 17 +1 BUG: waiting for background job!\n +2 Выход %d\n +3 BUG: process flushed twice +4 Running +5 Сигнал +6 Exit %-25d +7 Окончено +8 BUG: status=%-9o +9 \040(core dumped) +10 \040(wd: +11 wd now: +12 %S: Already suspended\n +13 %S: Already stopped\n diff --git a/contrib/tcsh/nls/russian/set18 b/contrib/tcsh/nls/russian/set18 new file mode 100644 index 00000000000..5babefe0edb --- /dev/null +++ b/contrib/tcsh/nls/russian/set18 @@ -0,0 +1,4 @@ +$ $Id: set18,v 1.1 2001/03/18 19:06:38 christos Exp $ +$ sh.set.c +$set 18 +1 Предупреждение: Длинный PATH обрезан\n diff --git a/contrib/tcsh/nls/russian/set19 b/contrib/tcsh/nls/russian/set19 new file mode 100644 index 00000000000..4082647c1ca --- /dev/null +++ b/contrib/tcsh/nls/russian/set19 @@ -0,0 +1,15 @@ +$ $Id: set19,v 1.1 2001/03/18 19:06:38 christos Exp $ +$ tc.alloc.c +$set 19 +1 nbytes=%d: Нет памяти\n +2 free(%lx) called before any allocations. +3 free(%lx) above top of memory. +4 free(%lx) below bottom of memory. +5 free(%lx) bad block. +6 free(%lx) bad range check. +7 free(%lx) bad block index. +8 %s current memory allocation:\nfree:\t +9 \nused:\t +10 \n\tTotal in use: %d, total free: %d\n +11 \tAllocated memory from 0x%lx to 0x%lx. Real top at 0x%lx\n +12 Allocated memory from 0x%lx to 0x%lx (%ld).\n diff --git a/contrib/tcsh/nls/russian/set2 b/contrib/tcsh/nls/russian/set2 new file mode 100644 index 00000000000..d11f834213d --- /dev/null +++ b/contrib/tcsh/nls/russian/set2 @@ -0,0 +1,111 @@ +$ $Id: set2,v 1.1 2001/03/18 19:06:39 christos Exp $ +$ Signal names +$set 2 +1 Нулевой сигнал +2 Hangup +3 Прерывание +4 Выход +5 Неверная инструкция +6 Trace/BPT trap +7 Аварийное завершение +8 IOT trap +9 System Crash Imminent +10 Выход по ошибке +11 EMT trap +12 Ошибка операции с плавающей точкой +13 Убит +14 Пользовательский сигнал 1 +15 Пользовательский сигнал 2 +16 Ошибка сегментации +17 Ошибка адресации на шине +18 Program range error +19 Operand range error +20 Неверный системный вызов +21 Broken pipe +22 Alarm clock +23 Прерван +24 Child status change +25 Death of child +26 Apollo-specific fault +27 Потомок остановился или завершился +28 Потомок завершился +29 Power failure +30 Resource Lost +31 Break (Ctrl-Break) +32 Input/output possible signal +33 Asynchronous I/O (select) +34 Urgent condition on I/O channel +35 Multitasking wake-up +36 Multitasking kill +37 Fortran asynchronous I/O completion +38 Recovery +39 Uncorrectable memory error +40 CPU time limit exceeded +41 System shutdown imminent +42 micro-tasking group-no wakeup flag set +43 Thread error - (use cord -T for detailed info) +44 CRAY Y-MP register parity error +45 Information request +46 Suspended (signal) +47 Stopped (signal) +48 Suspended +49 Stopped +50 Continued +51 Suspended (tty input) +52 Stopped (tty input) +53 Suspended (tty output) +54 Stopped (tty output) +55 Window status changed +56 Window size changed +57 Phone status changed +58 Cputime limit exceeded +59 Filesize limit exceeded +60 Virtual time alarm +61 Profiling time alarm +62 DIL signal +63 Pollable event occured +64 Process's lwps are blocked +65 Special LWP signal +66 Special CPR Signal +67 Special CPR Signal +68 First Realtime Signal +69 Second Realtime Signal +70 Third Realtime Signal +71 Fourth Realtime Signal +72 Fourth Last Realtime Signal +73 Third Last Realtime Signal +74 Second Last Realtime Signal +75 Last Realtime Signal +76 LAN Asyncronous I/O +77 PTY read/write availability +78 I/O intervention required +79 HFT monitor mode granted +80 HFT monitor mode should be relinguished +81 HFT sound control has completed +82 Data in HFT ring buffer +83 Migrate process +84 Secure attention key +85 Reschedule +86 Signaling SS$_DEBUG +87 Priority changed +88 True deadlock detected +89 New input character +90 Stack limit exceeded +91 Unused signal +92 LM overlay +93 system freeze +94 system defreeze +95 dead lock +96 exceeded memory size limit +97 exceeded data size limit +98 exceeded memory size limit of 32KB +99 exce error for no memory +100 check point start +101 check point start of kernel +102 restart start +103 restart of kernel +104 exeeded XMU size limit +105 exeeded RLG0 limit +106 exeeded RLG1 limit +107 exeeded RLG2 limit +108 exeeded RLG3 limit diff --git a/contrib/tcsh/nls/russian/set20 b/contrib/tcsh/nls/russian/set20 new file mode 100644 index 00000000000..8d1795eb018 --- /dev/null +++ b/contrib/tcsh/nls/russian/set20 @@ -0,0 +1,41 @@ +$ $Id: set20,v 1.2 2001/04/26 19:09:19 kim Exp $ +$ tc.bind.c +$set 20 +1 Неверное имя ключа `%S'\n +2 Плохое имя ключа: %S\n +3 Плохое имя команды: %S\n +4 Плохая спецификация ключа %S\n +5 Null string specification\n +6 Стандартные привязки ключей\n +7 Альтернативные привязки ключей\n +8 Multi-character bindings\n +9 Arrow key bindings\n +10 %-15s-> неопределено\n +11 BUG!!! %s не связан ни с чем.\n +12 Использование: bindkey [опции] [--] [КЛЮЧ [КОМАНДА]]\n +13 -a list or bind KEY in alternative key map\n +14 -b interpret KEY as a C-, M-, F- or X- key name\n +15 -s interpret COMMAND as a literal string to be output\n +16 -c interpret COMMAND as a builtin or external command\n +17 -v bind all keys to vi bindings\n +18 -e bind all keys to emacs bindings\n +19 -d bind all keys to default editor's bindings\n +20 -l list editor commands with descriptions\n +21 -r remove KEY's binding\n +22 -k interpret KEY as a symbolic arrow-key name\n +23 -- force a break from option processing\n +24 -u (or any invalid option) this message\n +25 Без КЛЮЧа или КОМАНДы вывести все привязки.\n +26 Без КОМАНДы, вывести привязку КЛЮЧа.\n +27 плохая спецификация ключа -- нулевая строка\n +28 плохая спецификация ключа -- пустая строка\n +29 Плохая специфкация функциональной клавиши. Нулевой ключ запрещен\n +30 плохая спецификация ключа -- неверный шестнадцатеричный номер\n +31 плохая спецификация ключа -- неверный восьмеричный номер\n +32 плохая спецификация ключа -- неверный десятичный номер\n +33 Bad function-key specification.\n +34 Нулевые ключи запрещены\n +35 плохая спецификация ключаbad key specification -- unknown name "%S"\n +36 использование: bind [КЛЮЧ | КОМАНДА КЛЮЧ | "emacs" | "vi" | "-a"]\n +37 Неверная функция +38 %s\t\tis undefined\n diff --git a/contrib/tcsh/nls/russian/set21 b/contrib/tcsh/nls/russian/set21 new file mode 100644 index 00000000000..75533f8accc --- /dev/null +++ b/contrib/tcsh/nls/russian/set21 @@ -0,0 +1,5 @@ +$ $Id: set21,v 1.1 2001/03/18 19:06:39 christos Exp $ +$ tc.disc.c +$set 21 +1 Couldn't get local chars.\n +2 Couldn't set local chars.\n diff --git a/contrib/tcsh/nls/russian/set22 b/contrib/tcsh/nls/russian/set22 new file mode 100644 index 00000000000..583af3aa9d9 --- /dev/null +++ b/contrib/tcsh/nls/russian/set22 @@ -0,0 +1,17 @@ +$ $Id: set22,v 1.1 2001/03/18 19:06:39 christos Exp $ +$ tc.func.c +$set 22 +1 %S: \t переопределен в +2 \nIncorrect passwd for %s\n +3 Faulty alias 'precmd' removed.\n +4 Faulty alias 'cwdcmd' removed.\n +5 Faulty alias 'beepcmd' removed.\n +6 Faulty alias 'periodic' removed.\n +7 разбор командной строки\n +8 Вы действительно хотите удалить все файлы? [n/y] +9 пропуск удаления всех файлов!\n +10 командная строка теперь:\n +11 разбор командной строки\n +12 in one of the lists\n +13 командная строка теперь:\n +14 yY diff --git a/contrib/tcsh/nls/russian/set23 b/contrib/tcsh/nls/russian/set23 new file mode 100644 index 00000000000..8802ad561dd --- /dev/null +++ b/contrib/tcsh/nls/russian/set23 @@ -0,0 +1,34 @@ +$ $Id: set23,v 1.1 2001/03/18 19:06:40 christos Exp $ +$ tc.os.c +$set 23 +1 Bad cpu/site name +2 Site path too long +3 unknown +4 site: %s\n +5 %d: Site not found\n +6 setlocal: %s: %s\n +7 Site not found +8 You're trapped in a universe you never made +9 Getwarp failed +10 Invalid warp +11 Setwarp failed +12 Illegal universe +13 Unknown Error: %d +14 sysname: %s\n +15 nodename: %s\n +16 release: %s\n +17 version: %s\n +18 machine: %s\n +19 getwd: Cannot open ".." (%s) +20 getwd: Cannot chdir to ".." (%s) +21 getwd: Read error in ".." (%s) +22 getwd: Cannot change back to "." (%s) +23 getwd: Cannot stat "/" (%s) +24 getwd: Cannot stat "." (%s) +25 getwd: Cannot stat directory "%s" (%s) +26 getwd: Cannot open directory "%s" (%s) +27 getwd: Cannot find "." in ".." (%s) +28 Неверный тип системы +29 System type is not set +30 Слишком много аргументов +31 Неверный аргумент diff --git a/contrib/tcsh/nls/russian/set24 b/contrib/tcsh/nls/russian/set24 new file mode 100644 index 00000000000..dffed27be13 --- /dev/null +++ b/contrib/tcsh/nls/russian/set24 @@ -0,0 +1,4 @@ +$ $Id: set24,v 1.1 2001/03/18 19:06:40 christos Exp $ +$ tc.sched.c +$set 24 +1 kludge diff --git a/contrib/tcsh/nls/russian/set25 b/contrib/tcsh/nls/russian/set25 new file mode 100644 index 00000000000..481ecfd9847 --- /dev/null +++ b/contrib/tcsh/nls/russian/set25 @@ -0,0 +1,6 @@ +$ $Id: set25,v 1.1 2001/03/18 19:06:40 christos Exp $ +$ tc.sig.c +$set 25 +1 our wait %d\n +2 ошибка: bsd_signal(%d) сигнал вышел за пределы интервала\n +3 ошибка: bsd_signal(%d) - sigaction завершился неудачно, errno %d\n diff --git a/contrib/tcsh/nls/russian/set26 b/contrib/tcsh/nls/russian/set26 new file mode 100644 index 00000000000..e680370653d --- /dev/null +++ b/contrib/tcsh/nls/russian/set26 @@ -0,0 +1,15 @@ +$ $Id: set26,v 1.1 2001/03/18 19:06:41 christos Exp $ +$ tc.who.c +$set 26 +1 cannot stat %s. Please "unset watch".\n +2 %s cannot be opened. Please "unset watch".\n +3 BUG! last element is not whotail!\n +4 backward: +5 BUG! first element is not whohead!\n +6 new: %s/%s\n +7 %n has %a %l from %m. +8 %n has %a %l. +9 logged on +10 logged off +11 replaced %s on +12 local diff --git a/contrib/tcsh/nls/russian/set27 b/contrib/tcsh/nls/russian/set27 new file mode 100644 index 00000000000..475cde2a69d --- /dev/null +++ b/contrib/tcsh/nls/russian/set27 @@ -0,0 +1,8 @@ +$ $Id: set27,v 1.1 2001/03/18 19:06:41 christos Exp $ +$ tw.comp.c +$set 27 +1 команда +2 сеператор +3 шаблон +4 интервал +5 завершение diff --git a/contrib/tcsh/nls/russian/set29 b/contrib/tcsh/nls/russian/set29 new file mode 100644 index 00000000000..66b554b31a9 --- /dev/null +++ b/contrib/tcsh/nls/russian/set29 @@ -0,0 +1,4 @@ +$ $Id: set29,v 1.1 2001/03/18 19:06:41 christos Exp $ +$ tw.help.c +$set 29 +1 Отсутствует файл помощи для %S\n diff --git a/contrib/tcsh/nls/russian/set3 b/contrib/tcsh/nls/russian/set3 new file mode 100644 index 00000000000..70bcd78e2a3 --- /dev/null +++ b/contrib/tcsh/nls/russian/set3 @@ -0,0 +1,124 @@ +$ $Id: set3,v 1.2 2001/04/26 19:07:51 kim Exp $ +$ Editor function descriptions +$set 3 +1 Move back a character +2 Delete the character behind cursor +3 Cut from beginning of current word to cursor - saved in cut buffer +4 Cut from beginning of line to cursor - save in cut buffer +5 Move to beginning of current word +6 Move to beginning of line +7 Capitalize the characters from cursor to end of current word +8 Vi change case of character under cursor and advance one character +9 Vi change to end of line +10 Clear screen leaving current line on top +11 Complete current word +12 Tab forward through files +13 Tab backward through files +14 Complete current word ignoring programmable completions +15 Copy current word to cursor +16 Copy area between mark and cursor to cut buffer +17 Expand to preceding word for which this is a prefix +18 Delete character under cursor +19 Delete character under cursor or signal end of file on an empty line +20 Delete character under cursor or list completions if at end of line +21 Delete character under cursor, list completions or signal end of file +22 Cut from cursor to end of current word - save in cut buffer +23 Adds to argument if started or enters digit +24 Digit that starts argument +25 Move to next history line +26 Lowercase the characters from cursor to end of current word +27 Indicate end of file +28 Move cursor to end of line +29 Exchange the cursor and mark +30 Expand file name wildcards +31 Expand history escapes +32 Expand the history escapes in a line +33 Expand variables +34 Move forward one character +35 Move forward to end of current word +36 Exchange the two characters before the cursor +37 Search in history backward for line beginning as current +38 Search in history forward for line beginning as current +39 Insert last item of previous command +40 Incremental search forward +41 Incremental search backward +42 Clear line +43 Cut to end of line and save in cut buffer +44 Cut area between mark and cursor and save in cut buffer +45 Cut the entire line and save in cut buffer +46 List choices for completion +47 List choices for completion overriding programmable completion +48 List file name wildcard matches +49 List choices for completion or indicate end of file if empty line +50 Display load average and current process status +51 Expand history escapes and insert a space +52 Execute command +53 Expand pathnames, eliminating leading .'s and ..'s +54 Expand commands to the resulting pathname or alias +55 Switch from insert to overwrite mode or vice versa +56 Add 8th bit to next character typed +57 Add the next character typed to the line verbatim +58 Redisplay everything +59 Restart stopped editor +60 Look for help on current command +61 This character is added to the line +62 This character is the first in a character sequence +63 Set the mark at cursor +64 Correct the spelling of current word +65 Correct the spelling of entire line +66 Send character to tty in cooked mode +67 Toggle between literal and lexical current history line +68 Exchange the character to the left of the cursor with the one under +69 Exchange the two characters before the cursor +70 Tty delayed suspend character +71 Tty flush output character +72 Tty interrupt character +73 Tty quit character +74 Tty suspend character +75 Tty allow output character +76 Tty disallow output character +77 Indicates unbound character +78 Emacs universal argument (argument times 4) +79 Move to previous history line +80 Uppercase the characters from cursor to end of current word +81 Vi goto the beginning of next word +82 Vi enter insert mode after the cursor +83 Vi enter insert mode at end of line +84 Vi change case of character under cursor and advance one character +85 Vi change prefix command +86 Vi change to end of line +87 Enter vi command mode (use alternative key bindings) +88 Vi command mode complete current word +89 Vi move to previous character (backspace) +90 Vi delete prefix command +91 Vi move to the end of the current space delimited word +92 Vi move to the end of the current word +93 Vi move to the character specified backward +94 Vi move to the character specified forward +95 Vi move up to the character specified backward +96 Vi move up to the character specified forward +97 Enter vi insert mode +98 Enter vi insert mode at beginning of line +99 Vi repeat current character search in the same search direction +100 Vi repeat current character search in the opposite search direction +101 Vi repeat current search in the same search direction +102 Vi repeat current search in the opposite search direction +103 Vi replace character under the cursor with the next character typed +104 Vi replace mode +105 Vi search history backward +106 Vi search history forward +107 Vi replace character under the cursor and enter insert mode +108 Vi replace entire line +109 Vi move to the previous word +110 Vi move to the next word +111 Vi undo last change +112 Vi goto the beginning of line +113 Perform which of current command +114 Paste cut buffer at cursor position +115 Replace just-yanked text with yank from earlier kill +116 (WIN32 only) Copy cut buffer to system clipboard +117 (WIN32 only) Paste clipboard buffer at cursor position +118 (WIN32 only) Convert each '/' in next word to '\\\\' +119 (WIN32 only) Convert each '/' in previous word to '\\\\' +120 (WIN32 only) Page visible console window up +121 (WIN32 only) Page visible console window down diff --git a/contrib/tcsh/nls/russian/set30 b/contrib/tcsh/nls/russian/set30 new file mode 100644 index 00000000000..9aa0fe3ac98 --- /dev/null +++ b/contrib/tcsh/nls/russian/set30 @@ -0,0 +1,16 @@ +$ $Id: set30,v 1.1 2001/03/18 19:06:42 christos Exp $ +$ tw.parse.c +$set 30 +1 starting_a_command %d\n +2 complete %d +3 complete %d %S\n +4 %s: Internal match error.\n +5 items +6 rows +7 There are %d %s, list them anyway? [n/y] +8 looking = %d\n +9 \ntcsh internal error: I don't know what I'm looking for!\n +10 не каталог +11 не найдено +12 нечитаемо +13 yY diff --git a/contrib/tcsh/nls/russian/set31 b/contrib/tcsh/nls/russian/set31 new file mode 100644 index 00000000000..ca8c9db75f0 --- /dev/null +++ b/contrib/tcsh/nls/russian/set31 @@ -0,0 +1,7 @@ +$ $Id: set31,v 1.1 2001/03/18 19:06:42 christos Exp $ +$ vms.termcap.c +$set 31 +1 Не могу открыть TERMCAP: [%s]\n +2 Не могу открыть %s.\n +3 Найдено %s в %s.\n +4 No match found for %s in file %s\n diff --git a/contrib/tcsh/nls/russian/set4 b/contrib/tcsh/nls/russian/set4 new file mode 100644 index 00000000000..53396bc4cba --- /dev/null +++ b/contrib/tcsh/nls/russian/set4 @@ -0,0 +1,45 @@ +$ $Id: set4,v 1.1 2001/03/18 19:06:42 christos Exp $ +$ Termcap strings +$set 4 +1 add new blank line +2 audible bell +3 clear to bottom +4 clear to end of line +5 cursor to horiz pos +6 clear screen +7 delete a character +8 delete a line +9 start delete mode +10 end delete mode +11 end insert mode +12 cursor from status line +13 home cursor +14 insert character +15 start insert mode +16 insert padding +17 sends cursor down +18 sends cursor left +19 sends cursor right +20 sends cursor up +21 begin bold +22 end attributes +23 non destructive space +24 end standout +25 begin standout +26 cursor to status line +27 cursor up one +28 begin underline +29 end underline +30 visible bell +31 delete multiple chars +32 cursor down multiple +33 insert multiple chars +34 cursor left multiple +35 cursor right multiple +36 cursor up multiple +37 Has automatic margins +38 Can use physical tabs +39 Number of lines +40 Number of columns +41 Has meta key +42 Newline ignored at right margin diff --git a/contrib/tcsh/nls/russian/set5 b/contrib/tcsh/nls/russian/set5 new file mode 100644 index 00000000000..c237e84e854 --- /dev/null +++ b/contrib/tcsh/nls/russian/set5 @@ -0,0 +1,4 @@ +$ $Id: set5,v 1.1 2001/03/18 19:06:43 christos Exp $ +$ ed.chared.c +$set 5 +1 Средняя загрузка недоступна\n diff --git a/contrib/tcsh/nls/russian/set6 b/contrib/tcsh/nls/russian/set6 new file mode 100644 index 00000000000..73367a8f934 --- /dev/null +++ b/contrib/tcsh/nls/russian/set6 @@ -0,0 +1,11 @@ +$ $Id: set6,v 1.1 2001/03/18 19:06:43 christos Exp $ +$ ed.inputl.c +$set 6 +1 ОШИБКА: неверная команда ключа 0%o\r\n +2 да\n +3 редактировать\n +4 прервать\n +5 нет\n +6 No matching command\n +7 Неоднозначная команда\n +8 *** фатальная ОШИБКА редактора ***\r\n\n diff --git a/contrib/tcsh/nls/russian/set7 b/contrib/tcsh/nls/russian/set7 new file mode 100644 index 00000000000..490c63717ae --- /dev/null +++ b/contrib/tcsh/nls/russian/set7 @@ -0,0 +1,30 @@ +$ $Id: set7,v 1.1 2001/03/18 19:06:43 christos Exp $ +$ ed.screen.c +$set 7 +1 \n\tTcsh thinks your terminal has the\n +2 \tfollowing characteristics:\n\n +3 \tIt has %d columns and %d lines\n +4 \tIt has %s meta key\n +5 a +6 no +7 \tIt can%s use tabs\n +8 not +9 \tIt %s automatic margins\n +10 has +11 does not have +12 \tIt %s magic margins\n +13 (empty) +14 yes +15 no +16 ERROR: cannot delete\r\n +17 DeleteChars: num is riduculous: %d\r\n +18 ERROR: cannot insert\r\n +19 StartInsert: num is riduculous: %d\r\n +20 %s: Cannot open /etc/termcap.\n +21 %s: No entry for terminal type "%s"\n +22 %s: using dumb terminal settings.\n +23 %s: WARNING: Your terminal cannot move up.\n +24 Editing may be odd for long lines.\n +25 no clear EOL capability.\n +26 no delete char capability.\n +27 no insert char capability.\n diff --git a/contrib/tcsh/nls/russian/set8 b/contrib/tcsh/nls/russian/set8 new file mode 100644 index 00000000000..bf5b6afe530 --- /dev/null +++ b/contrib/tcsh/nls/russian/set8 @@ -0,0 +1,5 @@ +$ $Id: set8,v 1.1 2001/03/18 19:06:44 christos Exp $ +$ ed.term.c +$set 8 +1 Неизвестный переключатель +2 Неверный аргумент diff --git a/contrib/tcsh/nls/russian/set9 b/contrib/tcsh/nls/russian/set9 new file mode 100644 index 00000000000..62320bc5830 --- /dev/null +++ b/contrib/tcsh/nls/russian/set9 @@ -0,0 +1,12 @@ +$ $Id: set9,v 1.1 2001/03/18 19:06:44 christos Exp $ +$ ed.xmap.c +$set 9 +1 AddXkey: Null extended-key not allowed.\n +2 AddXkey: sequence-lead-in command not allowed\n +3 DeleteXkey: Null extended-key not allowed.\n +4 Unbound extended key "%S"\n +5 Some extended keys too long for internal print buffer +6 Enumerate: BUG!! Null ptr passed\n! +7 no input +8 Something must follow: %c\n +9 Octal constant does not fit in a char.\n diff --git a/contrib/tcsh/nls/spanish/set20 b/contrib/tcsh/nls/spanish/set20 index 8359f1d2d86..3709ce430cc 100644 --- a/contrib/tcsh/nls/spanish/set20 +++ b/contrib/tcsh/nls/spanish/set20 @@ -1,4 +1,4 @@ -$ $Id: set20,v 1.1 1998/04/08 18:00:01 christos Exp $ +$ $Id: set20,v 1.2 2001/04/26 19:09:19 kim Exp $ $ tc.bind.c $set 20 1 Nombre de tecla no vАlido `%S'\n @@ -39,4 +39,3 @@ $set 20 36 uso: bind [TECLA | COMANDO TECLA | "emacs" | "vi" | "-a"]\n 37 funciСn no vАlida 38 %s\t\tno estА definida\n - diff --git a/contrib/tcsh/nls/spanish/set3 b/contrib/tcsh/nls/spanish/set3 index be8016ac4a4..196a8ebf9b2 100644 --- a/contrib/tcsh/nls/spanish/set3 +++ b/contrib/tcsh/nls/spanish/set3 @@ -1,4 +1,4 @@ -$ $Id: set3,v 1.1 1998/04/08 18:00:08 christos Exp $ +$ $Id: set3,v 1.2 2001/04/26 19:07:51 kim Exp $ $ DescripciСn de las funciones de ediciСn $set 3 1 Retroceder un carАcter @@ -115,3 +115,10 @@ $set 3 112 Vi: ir al comienzo de la lМnea 113 Ejecutar `which' para el comando actual 114 Pegar el buffer donde el cursor +115 Replace just-yanked text with yank from earlier kill +116 (WIN32 only) Copy cut buffer to system clipboard +117 (WIN32 only) Paste clipboard buffer at cursor position +118 (WIN32 only) Convert each '/' in next word to '\\\\' +119 (WIN32 only) Convert each '/' in previous word to '\\\\' +120 (WIN32 only) Page visible console window up +121 (WIN32 only) Page visible console window down diff --git a/contrib/tcsh/nls/ukrainian/set3 b/contrib/tcsh/nls/ukrainian/set3 index 88055f3c537..712b73fe454 100644 --- a/contrib/tcsh/nls/ukrainian/set3 +++ b/contrib/tcsh/nls/ukrainian/set3 @@ -1,4 +1,4 @@ -$ $Id: set3,v 1.1 2000/11/11 23:03:44 christos Exp $ +$ $Id: set3,v 1.2 2001/04/26 19:07:52 kim Exp $ $ Editor function descriptions $set 3 1 Move back a character @@ -115,3 +115,10 @@ $set 3 112 Vi goto the beginning of line 113 Perform which of current command 114 Paste cut buffer at cursor position +115 Replace just-yanked text with yank from earlier kill +116 (WIN32 only) Copy cut buffer to system clipboard +117 (WIN32 only) Paste clipboard buffer at cursor position +118 (WIN32 only) Convert each '/' in next word to '\\\\' +119 (WIN32 only) Convert each '/' in previous word to '\\\\' +120 (WIN32 only) Page visible console window up +121 (WIN32 only) Page visible console window down diff --git a/contrib/tcsh/patchlevel.h b/contrib/tcsh/patchlevel.h index aca35375b0a..71a0db74fc5 100644 --- a/contrib/tcsh/patchlevel.h +++ b/contrib/tcsh/patchlevel.h @@ -1,4 +1,4 @@ -/* $Header: /src/pub/tcsh/patchlevel.h,v 3.126 2000/11/19 20:50:43 christos Exp $ */ +/* $Header: /src/pub/tcsh/patchlevel.h,v 3.129 2001/09/02 21:16:25 christos Exp $ */ /* * patchlevel.h: Our life story. */ @@ -7,8 +7,8 @@ #define ORIGIN "Astron" #define REV 6 -#define VERS 10 +#define VERS 11 #define PATCHLEVEL 0 -#define DATE "2000-11-19" +#define DATE "2001-09-02" #endif /* _h_patchlevel */ diff --git a/contrib/tcsh/sh.c b/contrib/tcsh/sh.c index 0bfa2564bf2..824680c92e9 100644 --- a/contrib/tcsh/sh.c +++ b/contrib/tcsh/sh.c @@ -1,4 +1,4 @@ -/* $Header: /src/pub/tcsh/sh.c,v 3.92 2000/11/11 23:03:35 christos Exp $ */ +/* $Header: /src/pub/tcsh/sh.c,v 3.95 2001/04/27 22:36:39 christos Exp $ */ /* * sh.c: Main shell routines */ @@ -43,7 +43,7 @@ char copyright[] = All rights reserved.\n"; #endif /* not lint */ -RCSID("$Id: sh.c,v 3.92 2000/11/11 23:03:35 christos Exp $") +RCSID("$Id: sh.c,v 3.95 2001/04/27 22:36:39 christos Exp $") #include "tc.h" #include "ed.h" @@ -160,7 +160,11 @@ struct saved_state { }; static int srccat __P((Char *, Char *)); +#ifndef WINNT_NATIVE static int srcfile __P((char *, bool, int, Char **)); +#else +int srcfile __P((char *, bool, int, Char **)); +#endif /*WINNT_NATIVE*/ static sigret_t phup __P((int)); static void srcunit __P((int, bool, int, Char **)); static void mailchk __P((void)); @@ -675,6 +679,11 @@ main(argc, argv) */ set(STRaddsuffix, Strsave(STRNULL), VAR_READWRITE); + /* + * Random default kill ring size + */ + set(STRkillring, SAVE("30"), VAR_READWRITE); + /* * Re-initialize path if set in environment */ @@ -1438,7 +1447,11 @@ srccat(cp, dp) /* * Source to a file putting the file descriptor in a safe place (> 2). */ +#ifndef WINNT_NATIVE static int +#else +int +#endif /*WINNT_NATIVE*/ srcfile(f, onlyown, flag, av) char *f; bool onlyown; diff --git a/contrib/tcsh/sh.char.c b/contrib/tcsh/sh.char.c index fe32777f32d..bb028b72885 100644 --- a/contrib/tcsh/sh.char.c +++ b/contrib/tcsh/sh.char.c @@ -1,4 +1,4 @@ -/* $Header: /src/pub/tcsh/sh.char.c,v 3.13 2000/06/11 02:14:13 kim Exp $ */ +/* $Header: /src/pub/tcsh/sh.char.c,v 3.16 2001/03/20 04:16:56 christos Exp $ */ /* * sh.char.c: Character classification tables */ @@ -36,7 +36,7 @@ */ #include "sh.h" -RCSID("$Id: sh.char.c,v 3.13 2000/06/11 02:14:13 kim Exp $") +RCSID("$Id: sh.char.c,v 3.16 2001/03/20 04:16:56 christos Exp $") #include "sh.char.h" @@ -813,6 +813,68 @@ unsigned short _mbmap_sjis[256] = { _MB1|_MB2, 0, 0, 0, }; +unsigned short _mbmap_big5[256] = { +/* This is latest big5 charmap, so called "Big5+" */ +/* first byte 0x81 - 0xfe */ +/* second byte 0x40 - 0x7e, 0x80 - 0xfe */ +/* 0x00 - 0x3f = 0 */ + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +/* 0x40 - 0x7e = 2 */ + _MB2, _MB2, _MB2, _MB2, + _MB2, _MB2, _MB2, _MB2, + _MB2, _MB2, _MB2, _MB2, + _MB2, _MB2, _MB2, _MB2, + _MB2, _MB2, _MB2, _MB2, + _MB2, _MB2, _MB2, _MB2, + _MB2, _MB2, _MB2, _MB2, + _MB2, _MB2, _MB2, _MB2, + _MB2, _MB2, _MB2, _MB2, + _MB2, _MB2, _MB2, _MB2, + _MB2, _MB2, _MB2, _MB2, + _MB2, _MB2, _MB2, _MB2, + _MB2, _MB2, _MB2, _MB2, + _MB2, _MB2, _MB2, _MB2, + _MB2, _MB2, _MB2, _MB2, + /* 0x7f = 0 */ + _MB2, _MB2, _MB2, 0, +/* 0x80 = 2, 0x81 - 0xfe = 3 */ + _MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, + /* 0xff = 0 */ + _MB1|_MB2, _MB1|_MB2, _MB1|_MB2, 0, +}; + + #else /* !(defined(KANJI) && defined(SHORT_STRINGS) && defined(DSPMBYTE)) */ unsigned short _cmap[256] = { /* 0 nul 1 soh 2 stx 3 etx */ diff --git a/contrib/tcsh/sh.char.h b/contrib/tcsh/sh.char.h index d5286d4f23d..c383d0d1e14 100644 --- a/contrib/tcsh/sh.char.h +++ b/contrib/tcsh/sh.char.h @@ -1,4 +1,4 @@ -/* $Header: /src/pub/tcsh/sh.char.h,v 3.17 2000/11/11 23:03:35 christos Exp $ */ +/* $Header: /src/pub/tcsh/sh.char.h,v 3.18 2001/03/18 19:06:29 christos Exp $ */ /* * sh.char.h: Table for spotting special characters quickly * Makes for very obscure but efficient coding. @@ -58,6 +58,7 @@ extern short _enable_mbdisp; extern unsigned short _mbmap[]; extern unsigned short _mbmap_euc[]; extern unsigned short _mbmap_sjis[]; +extern unsigned short _mbmap_big5[]; /* VARIABLE Check str */ /* same compiler require #define even not define DSPMBYTE */ #define _MB1 0x0001 diff --git a/contrib/tcsh/sh.decls.h b/contrib/tcsh/sh.decls.h index 4fd433da81a..e3da4227d82 100644 --- a/contrib/tcsh/sh.decls.h +++ b/contrib/tcsh/sh.decls.h @@ -1,4 +1,4 @@ -/* $Header: /src/pub/tcsh/sh.decls.h,v 3.34 1999/02/06 15:01:21 christos Exp $ */ +/* $Header: /src/pub/tcsh/sh.decls.h,v 3.35 2001/08/06 23:52:03 christos Exp $ */ /* * sh.decls.h External declarations from sh*.c */ @@ -337,6 +337,7 @@ extern void unsetv __P((Char *)); extern void setNS __P((Char *)); extern void shift __P((Char **, struct command *)); extern void plist __P((struct varent *, int)); +extern Char *unparse __P((struct command *)); #if defined(DSPMBYTE) extern void update_dspmbyte_vars __P((void)); extern void autoset_dspmbyte __P((Char *)); diff --git a/contrib/tcsh/sh.dir.c b/contrib/tcsh/sh.dir.c index fd0adfda5a0..de2e9d0cd17 100644 --- a/contrib/tcsh/sh.dir.c +++ b/contrib/tcsh/sh.dir.c @@ -1,4 +1,4 @@ -/* $Header: /src/pub/tcsh/sh.dir.c,v 3.54 2000/11/11 23:03:36 christos Exp $ */ +/* $Header: /src/pub/tcsh/sh.dir.c,v 3.56 2001/01/29 01:28:02 christos Exp $ */ /* * sh.dir.c: Directory manipulation functions */ @@ -36,7 +36,7 @@ */ #include "sh.h" -RCSID("$Id: sh.dir.c,v 3.54 2000/11/11 23:03:36 christos Exp $") +RCSID("$Id: sh.dir.c,v 3.56 2001/01/29 01:28:02 christos Exp $") /* * C Shell - directory management @@ -1355,7 +1355,7 @@ recdirs(fname, def) return; } - if ((snum = varval(STRsavedirs)) == STRNULL) + if ((snum = varval(STRsavedirs)) == STRNULL || snum[0] == '\0') num = (unsigned int) ~0; else num = (unsigned int) atoi(short2str(snum)); diff --git a/contrib/tcsh/sh.dol.c b/contrib/tcsh/sh.dol.c index 5d13270c735..abad1c159a2 100644 --- a/contrib/tcsh/sh.dol.c +++ b/contrib/tcsh/sh.dol.c @@ -1,4 +1,4 @@ -/* $Header: /src/pub/tcsh/sh.dol.c,v 3.45 2000/11/19 20:50:43 christos Exp $ */ +/* $Header: /src/pub/tcsh/sh.dol.c,v 3.47 2001/07/25 15:48:04 christos Exp $ */ /* * sh.dol.c: Variable substitutions */ @@ -36,7 +36,7 @@ */ #include "sh.h" -RCSID("$Id: sh.dol.c,v 3.45 2000/11/19 20:50:43 christos Exp $") +RCSID("$Id: sh.dol.c,v 3.47 2001/07/25 15:48:04 christos Exp $") /* * C shell @@ -114,7 +114,7 @@ Dfix(t) if (Ismbyte1(*p) && *(p + 1)) p ++; else -#endif DSPMBYTE +#endif /* DSPMBYTE */ if (cmap(*p, _DOL | QUOTES)) { /* $, \, ', ", ` */ Dfix2(t->t_dcom); /* found one */ blkfree(t->t_dcom); @@ -1043,7 +1043,7 @@ again: #ifndef O_EXCL # define O_EXCL 0 #endif - if (open(tmp, O_RDWR|O_CREAT|O_EXCL|O_TEMPORARY) == -1) { + if (open(tmp, O_RDWR|O_CREAT|O_EXCL|O_TEMPORARY, 0600) == -1) { int oerrno = errno; #ifndef WINNT_NATIVE if (errno == EEXIST) { diff --git a/contrib/tcsh/sh.func.c b/contrib/tcsh/sh.func.c index b26ea8ee114..a2e89890991 100644 --- a/contrib/tcsh/sh.func.c +++ b/contrib/tcsh/sh.func.c @@ -1,4 +1,4 @@ -/* $Header: /src/pub/tcsh/sh.func.c,v 3.91 2000/11/11 23:03:36 christos Exp $ */ +/* $Header: /src/pub/tcsh/sh.func.c,v 3.93 2001/03/13 12:53:50 christos Exp $ */ /* * sh.func.c: csh builtin functions */ @@ -36,7 +36,7 @@ */ #include "sh.h" -RCSID("$Id: sh.func.c,v 3.91 2000/11/11 23:03:36 christos Exp $") +RCSID("$Id: sh.func.c,v 3.93 2001/03/13 12:53:50 christos Exp $") #include "ed.h" #include "tw.h" @@ -1147,7 +1147,7 @@ xecho(sep, v) #endif /* BSDSIGS */ v++; if (*v == 0) - return; + goto done; gflag = 0, tglob(v); if (gflag) { v = globall(v); @@ -1753,6 +1753,8 @@ doumask(v, c) /* In order to use rusage, we included "/usr/ucbinclude/sys/resource.h" in */ /* sh.h. However, some SVR4 limits are defined in . Rather */ /* than include both and get warnings, we define the extra SVR4 limits here. */ +/* XXX: I don't understand if RLIMIT_AS is defined, why don't we define */ +/* RLIMIT_VMEM based on it? */ # ifndef RLIMIT_VMEM # define RLIMIT_VMEM 6 # endif @@ -1761,6 +1763,10 @@ doumask(v, c) # endif # endif /* SYSVREL > 3 && BSDLIMIT */ +# if defined(__linux__) && defined(RLIMIT_AS) && !defined(RLIMIT_VMEM) +# define RLIMIT_VMEM RLIMIT_AS +# endif + struct limits limits[] = { # ifdef RLIMIT_CPU diff --git a/contrib/tcsh/sh.glob.c b/contrib/tcsh/sh.glob.c index 0af58252f37..2b39c76c11a 100644 --- a/contrib/tcsh/sh.glob.c +++ b/contrib/tcsh/sh.glob.c @@ -1,4 +1,4 @@ -/* $Header: /src/pub/tcsh/sh.glob.c,v 3.47 2000/11/11 23:03:37 christos Exp $ */ +/* $Header: /src/pub/tcsh/sh.glob.c,v 3.48 2001/01/04 18:51:57 christos Exp $ */ /* * sh.glob.c: Regular expression expansion */ @@ -36,7 +36,7 @@ */ #include "sh.h" -RCSID("$Id: sh.glob.c,v 3.47 2000/11/11 23:03:37 christos Exp $") +RCSID("$Id: sh.glob.c,v 3.48 2001/01/04 18:51:57 christos Exp $") #include "tc.h" @@ -450,14 +450,12 @@ globexpand(v) /* * Step 4: expand .. if the variable symlinks==expand is set */ - if ( symlinks == SYM_EXPAND ) + if (symlinks == SYM_EXPAND) { for (s = *vl; s; s = *++vl) { - char *path = short2str(s); - if (strstr(path, "..") != NULL && access(path, F_OK) == 0) { - *vl = dnormalize(s, 1); - xfree((ptr_t) s); - } + *vl = dnormalize(s, 1); + xfree((ptr_t) s); } + } vl = nv; return (vl); diff --git a/contrib/tcsh/sh.h b/contrib/tcsh/sh.h index 55ed4cc43c1..0e2c6fa40a7 100644 --- a/contrib/tcsh/sh.h +++ b/contrib/tcsh/sh.h @@ -1,4 +1,4 @@ -/* $Header: /src/pub/tcsh/sh.h,v 3.93 2000/11/19 20:50:43 christos Exp $ */ +/* $Header: /src/pub/tcsh/sh.h,v 3.96 2001/03/18 19:06:29 christos Exp $ */ /* * sh.h: Catch it all globals and includes file! */ @@ -189,12 +189,12 @@ typedef int sigret_t; # endif /* __EMX__ || WINNT_NATIVE */ #endif /* !PATHSEP */ -#ifdef __HP_CXD_SPP +#if defined(__HP_CXD_SPP) && !defined(__hpux) # include # define stat stat64 # define fstat fstat64 # define lstat lstat64 -#endif /* __HP_CXD_SPP */ +#endif /* __HP_CXD_SPP && !__hpux */ /* * This macro compares the st_dev field of struct stat. On aix on ibmESA @@ -297,7 +297,7 @@ typedef int sigret_t; # include #endif /* POSIX && !WINNT_NATIVE */ -#if SYSVREL > 0 || defined(_IBMR2) || defined(_MINIX) +#if SYSVREL > 0 || defined(_IBMR2) || defined(_MINIX) || defined(linux) # if !defined(pyr) && !defined(stellar) # include # ifdef _MINIX @@ -544,7 +544,7 @@ extern void DebugFree __P((ptr_t, char *, int)); # if defined(SCO) && (SYSVREL > 3) # include # else -# define MAXHOSTNAMELEN 255 +# define MAXHOSTNAMELEN 256 # endif #endif /* MAXHOSTNAMELEN */ diff --git a/contrib/tcsh/sh.proc.c b/contrib/tcsh/sh.proc.c index c35bba94a44..ea4f271dfce 100644 --- a/contrib/tcsh/sh.proc.c +++ b/contrib/tcsh/sh.proc.c @@ -1,4 +1,4 @@ -/* $Header: /src/pub/tcsh/sh.proc.c,v 3.71 2000/11/11 23:03:37 christos Exp $ */ +/* $Header: /src/pub/tcsh/sh.proc.c,v 3.75 2001/08/06 23:52:03 christos Exp $ */ /* * sh.proc.c: Job manipulations */ @@ -36,7 +36,7 @@ */ #include "sh.h" -RCSID("$Id: sh.proc.c,v 3.71 2000/11/11 23:03:37 christos Exp $") +RCSID("$Id: sh.proc.c,v 3.75 2001/08/06 23:52:03 christos Exp $") #include "ed.h" #include "tc.h" @@ -803,6 +803,21 @@ static Char command[PMAXLEN + 4]; static int cmdlen; static Char *cmdp; +/* GrP + * unparse - Export padd() functionality + */ +Char * +unparse(t) + register struct command *t; +{ + cmdp = command; + cmdlen = 0; + padd(t); + *cmdp++ = '\0'; + return Strsave(command); +} + + /* * palloc - allocate a process structure and fill it up. * an important assumption is made that the process is running. @@ -1524,6 +1539,7 @@ dokill(v, c) { register int signum, len = 0; register char *name; + Char *sigptr; extern int T_Cols; extern int nsig; @@ -1544,17 +1560,26 @@ dokill(v, c) xputchar('\n'); return; } - if (Isdigit(v[0][1])) { - signum = atoi(short2str(v[0] + 1)); + sigptr = &v[0][1]; + if (v[0][1] == 's') { + if (v[1]) { + v++; + sigptr = &v[0][0]; + } else { + stderror(ERR_NAME | ERR_TOOFEW); + } + } + if (Isdigit(*sigptr)) { + signum = atoi(short2str(sigptr)); if (signum < 0 || signum > (MAXSIG-1)) stderror(ERR_NAME | ERR_BADSIG); } else { for (signum = 0; signum <= nsig; signum++) if (mesg[signum].iname && - eq(&v[0][1], str2short(mesg[signum].iname))) + eq(sigptr, str2short(mesg[signum].iname))) goto gotsig; - setname(short2str(&v[0][1])); + setname(short2str(sigptr)); stderror(ERR_NAME | ERR_UNKSIG); } gotsig: @@ -1724,6 +1749,12 @@ pstart(pp, foregnd) if (!foregnd) pclrcurr(pp); (void) pprint(pp, foregnd ? NAME | JOBDIR : NUMBER | NAME | AMPERSAND); + + /* GrP run jobcmd hook if foregrounding */ + if (foregnd) { + job_cmd(pp->p_command); + } + #ifdef BSDJOBS if (foregnd) { rv = tcsetpgrp(FSHTTY, pp->p_jobid); @@ -1986,7 +2017,8 @@ pfork(t, wanttty) if (t->t_dflg & F_NICE) { int nval = SIGN_EXTEND_CHAR(t->t_nice); #ifdef BSDNICE - (void) setpriority(PRIO_PROCESS, 0, nval); + if (setpriority(PRIO_PROCESS, 0, nval) == -1 && errno) + stderror(ERR_SYSTEM, "setpriority", strerror(errno)); #else /* !BSDNICE */ (void) nice(nval); #endif /* !BSDNICE */ diff --git a/contrib/tcsh/sh.sem.c b/contrib/tcsh/sh.sem.c index 940df884d89..2ff1399ba28 100644 --- a/contrib/tcsh/sh.sem.c +++ b/contrib/tcsh/sh.sem.c @@ -1,4 +1,4 @@ -/* $Header: /src/pub/tcsh/sh.sem.c,v 3.51 2000/11/11 23:03:38 christos Exp $ */ +/* $Header: /src/pub/tcsh/sh.sem.c,v 3.53 2001/08/06 23:52:03 christos Exp $ */ /* * sh.sem.c: I/O redirections and job forking. A touchy issue! * Most stuff with builtins is incorrect @@ -37,7 +37,7 @@ */ #include "sh.h" -RCSID("$Id: sh.sem.c,v 3.51 2000/11/11 23:03:38 christos Exp $") +RCSID("$Id: sh.sem.c,v 3.53 2001/08/06 23:52:03 christos Exp $") #include "tc.h" #include "tw.h" @@ -319,6 +319,18 @@ execute(t, wanttty, pipein, pipeout) break; } + /* + * GrP Executing a command - run jobcmd hook + * Don't run for builtins + * Don't run if we're not in a tty + * Don't run if we're not really executing + */ + if (t->t_dtyp == NODE_COMMAND && !bifunc && !noexec && intty) { + Char *cmd = unparse(t); + job_cmd(cmd); + xfree(cmd); + } + /* * We fork only if we are timed, or are not the end of a parenthesized * list and not a simple builtin function. Simple meaning one that is @@ -571,7 +583,9 @@ execute(t, wanttty, pipein, pipeout) if (t->t_dflg & F_NICE) { int nval = SIGN_EXTEND_CHAR(t->t_nice); # ifdef BSDNICE - (void) setpriority(PRIO_PROCESS, 0, nval); + if (setpriority(PRIO_PROCESS, 0, nval) == -1 && errno) + stderror(ERR_SYSTEM, "setpriority", + strerror(errno)); # else /* !BSDNICE */ (void) nice(nval); # endif /* BSDNICE */ diff --git a/contrib/tcsh/sh.set.c b/contrib/tcsh/sh.set.c index d4bc2f523f0..fbe35595ad4 100644 --- a/contrib/tcsh/sh.set.c +++ b/contrib/tcsh/sh.set.c @@ -1,4 +1,4 @@ -/* $Header: /src/pub/tcsh/sh.set.c,v 3.37 2000/07/15 19:58:51 christos Exp $ */ +/* $Header: /src/pub/tcsh/sh.set.c,v 3.39 2001/03/18 19:06:30 christos Exp $ */ /* * sh.set.c: Setting and Clearing of variables */ @@ -36,7 +36,7 @@ */ #include "sh.h" -RCSID("$Id: sh.set.c,v 3.37 2000/07/15 19:58:51 christos Exp $") +RCSID("$Id: sh.set.c,v 3.39 2001/03/18 19:06:30 christos Exp $") #include "ed.h" #include "tw.h" @@ -160,6 +160,9 @@ update_vars(vp) else if (eq(vp, STRrecognize_only_executables)) { tw_cmd_free(); } + else if (eq(vp, STRkillring)) { + SetKillRing(getn(varval(vp))); + } #ifndef HAVENOUTMP else if (eq(vp, STRwatch)) { resetwatch(); @@ -740,6 +743,8 @@ unset(v, c) symlinks = 0; if (adrof(STRimplicitcd) == 0) implicit_cd = 0; + if (adrof(STRkillring) == 0) + SetKillRing(0); if (did_edit && noediting && adrof(STRedit) == 0) noediting = 0; if (did_roe && adrof(STRrecognize_only_executables) == 0) @@ -1103,6 +1108,8 @@ update_dspmbyte_vars() iskcode = 1; else if (eq(dstr1, STRKEUC)) iskcode = 2; + else if (eq(dstr1, STRKBIG5)) + iskcode = 3; else if ((dstr1[0] - '0') >= 0 && (dstr1[0] - '0') <= 3) { iskcode = 0; } @@ -1127,6 +1134,11 @@ update_dspmbyte_vars() _cmap[lp] = _cmap_mbyte[lp]; _mbmap[lp] = _mbmap_euc[lp]; break; + case 3: + /* 3 ... big5 */ + _cmap[lp] = _cmap_mbyte[lp]; + _mbmap[lp] = _mbmap_big5[lp]; + break; default: xprintf(CGETS(18, 3, "Warning: unknown multibyte code %d; multibyte disabled\n"), @@ -1204,6 +1216,7 @@ autoset_dspmbyte(pcp) { STRLANGEUCKRB, STRKEUC }, { STRLANGSJIS, STRKSJIS }, { STRLANGSJISB, STRKSJIS }, + { STRLANGBIG5, STRKBIG5 }, { NULL, NULL } }; diff --git a/contrib/tcsh/sh.time.c b/contrib/tcsh/sh.time.c index 45d0cb808cb..cb71724efa9 100644 --- a/contrib/tcsh/sh.time.c +++ b/contrib/tcsh/sh.time.c @@ -1,4 +1,4 @@ -/* $Header: /src/pub/tcsh/sh.time.c,v 3.22 2000/06/10 21:35:41 kim Exp $ */ +/* $Header: /src/pub/tcsh/sh.time.c,v 3.23 2001/03/18 19:06:31 christos Exp $ */ /* * sh.time.c: Shell time keeping and printing. */ @@ -36,7 +36,7 @@ */ #include "sh.h" -RCSID("$Id: sh.time.c,v 3.22 2000/06/10 21:35:41 kim Exp $") +RCSID("$Id: sh.time.c,v 3.23 2001/03/18 19:06:31 christos Exp $") #ifdef SUNOS4 # include @@ -177,7 +177,8 @@ donice(v, c) else if (*v == 0 && any("+-", cp[0])) nval = getn(cp); #ifdef BSDNICE - (void) setpriority(PRIO_PROCESS, 0, nval); + if (setpriority(PRIO_PROCESS, 0, nval) == -1 && errno) + stderror(ERR_SYSTEM, "setpriority", strerror(errno)); #else /* BSDNICE */ (void) nice(nval); #endif /* BSDNICE */ diff --git a/contrib/tcsh/tc.const.c b/contrib/tcsh/tc.const.c index 635ea31ad43..883efc6f82a 100644 --- a/contrib/tcsh/tc.const.c +++ b/contrib/tcsh/tc.const.c @@ -1,4 +1,4 @@ -/* $Header: /src/pub/tcsh/tc.const.c,v 3.57 2000/11/19 20:50:44 christos Exp $ */ +/* $Header: /src/pub/tcsh/tc.const.c,v 3.62 2001/08/06 23:52:04 christos Exp $ */ /* * sh.const.c: String constants for tcsh. */ @@ -36,7 +36,7 @@ */ #include "sh.h" -RCSID("$Id: tc.const.c,v 3.57 2000/11/19 20:50:44 christos Exp $") +RCSID("$Id: tc.const.c,v 3.62 2001/08/06 23:52:04 christos Exp $") Char STRlogout[] = { 'l', 'o', 'g', 'o', 'u', 't', '\0' }; Char STRautologout[] = { 'a', 'u', 't', 'o', 'l', 'o', 'g', 'o', 'u', 't', @@ -125,6 +125,7 @@ Char STRdspmbyte[] = { 'd', 's', 'p', 'm', 'b', 'y', 't', 'e', '\0' }; Char STRmmliteral[] = { '-', '-', 'l', 'i', 't', 'e', 'r', 'a', 'l', '\0' }; Char STRKEUC[] = { 'e', 'u', 'c', '\0' }; Char STRKSJIS[] = { 's', 'j', 'i', 's', '\0' }; +Char STRKBIG5[] = { 'b', 'i', 'g', '5', '\0' }; # ifdef MBYTEDEBUG /* Sorry, use for beta testing */ Char STRmbytemap[] = { 'm', 'b', 'y', 't', 'e', 'm', 'a', 'p', '\0' }; # endif /* MBYTEMAP */ @@ -153,6 +154,8 @@ Char STRLANGEUCKRB[] = { '\0' }; Char STRLANGSJIS[] = { 'j', 'a', '_', 'J', 'P', '.', 'S', 'J', 'I', 'S', '\0' }; Char STRLANGSJISB[] = { '\0' }; +Char STRLANGBIG5[] = { 'z', 'h', '_', 'T', 'W', '.', 'B', 'i', 'g', '5', + '\0' }; # elif defined(linux) Char STRLANGEUC[] = { 'j', 'a', '_', 'J', 'P', '.', 'e', 'u', 'c', 'J', 'P', '\0' }; @@ -161,6 +164,7 @@ Char STRLANGEUCB[] = { 'j', 'a', '_', 'J', 'P', '.', 'u', 'j', 'i', 's', Char STRLANGSJIS[] = { 'j', 'a', '_', 'J', 'P', '.', 'S', 'J', 'I', 'S', '\0' }; Char STRLANGSJISB[] = { '\0' }; +Char STRLANGBIG5[] = { '\0' }; # elif defined(__uxpm__) Char STRLANGEUCJP[] = { 'j', 'a', 'p', 'a', 'n', '\0' }; Char STRLANGEUCKR[] = { 'k', 'o', 'r', 'e', 'a', '\0' }; @@ -168,6 +172,7 @@ Char STRLANGEUCJPB[] = { '\0' }; Char STRLANGEUCKRB[] = { '\0' }; Char STRLANGSJIS[] = { '\0' }; Char STRLANGSJISB[] = { '\0' }; +Char STRLANGBIG5[] = { '\0' }; # elif defined(SOLARIS2) Char STRLANGEUCJP[] = { 'j', 'a', '\0' }; Char STRLANGEUCKR[] = { 'k', 'o', '\0' }; @@ -175,6 +180,7 @@ Char STRLANGEUCJPB[] = { 'j', 'a', 'p', 'a', 'n', 'e', 's', 'e', '\0' }; Char STRLANGEUCKRB[] = { 'k', 'o', 'r', 'e', 'a', 'n', '\0' }; Char STRLANGSJIS[] = { '\0' }; Char STRLANGSJISB[] = { '\0' }; +Char STRLANGBIG5[] = { '\0' }; # elif defined(hpux) Char STRLANGEUCJP[] = { 'j', 'a', '_', 'J', 'P', '.', 'e', 'u', 'c', 'J', 'P' }; Char STRLANGEUCKR[] = { 'k', 'o', '_', 'K', 'R', '.', 'e', 'u', 'c', 'K', 'R' }; @@ -182,6 +188,7 @@ Char STRLANGEUCJPB[] = { '\0' }; Char STRLANGEUCKRB[] = { '\0' }; Char STRLANGSJIS[] = { '\0' }; Char STRLANGSJISB[] = { '\0' }; +Char STRLANGBIG5[] = { '\0' }; # else Char STRLANGEUCJP[] = { '\0' }; Char STRLANGEUCKR[] = { '\0' }; @@ -189,6 +196,7 @@ Char STRLANGEUCJPB[] = { '\0' }; Char STRLANGEUCKRB[] = { '\0' }; Char STRLANGSJIS[] = { '\0' }; Char STRLANGSJISB[] = { '\0' }; +Char STRLANGBIG5[] = { '\0' }; # endif # endif /* defined(DSPMBYTE) */ #endif @@ -214,6 +222,7 @@ Char STRKCORRECT[] = { 'C', 'O', 'R', 'R', 'E', 'C', 'T', '>', '%', 'R', Char STRunalias[] = { 'u', 'n', 'a', 'l', 'i', 'a', 's', '\0' }; Char STRalias[] = { 'a', 'l', 'i', 'a', 's', '\0' }; Char STRprecmd[] = { 'p', 'r', 'e', 'c', 'm', 'd', '\0' }; +Char STRjobcmd[] = { 'j', 'o', 'b', 'c', 'm', 'd', '\0' }; /*GrP*/ Char STRpostcmd[] = { 'p', 'o', 's', 't', 'c', 'm', 'd', '\0' }; Char STRcwdcmd[] = { 'c', 'w', 'd', 'c', 'm', 'd', '\0' }; Char STRperiodic[] = { 'p', 'e', 'r', 'i', 'o', 'd', 'i', 'c', '\0' }; @@ -374,6 +383,8 @@ Char STRrm[] = { 'r', 'm', '\0' }; Char STRimplicitcd[] = { 'i', 'm', 'p', 'l', 'i', 'c', 'i', 't', 'c', 'd', '\0' }; +Char STRkillring[] = { 'k', 'i', 'l', 'l', 'r', 'i', 'n', 'g', '\0' }; +Char STRkilldup[] = { 'k', 'i', 'l', 'l', 'd', 'u', 'p', '\0' }; Char STRshlvl[] = { 's', 'h', 'l', 'v', 'l', '\0' }; Char STRKSHLVL[] = { 'S', 'H', 'L', 'V', 'L', '\0' }; Char STRLANG[] = { 'L', 'A', 'N', 'G', '\0' }; @@ -415,7 +426,11 @@ Char STRwarnebcdic[] = { 'w', 'a', 'r', 'n', 'e', 'b', 'c', 'd', 'i', 'c', '\ #ifdef COLOR_LS_F Char STRlsmF[] = { 'l', 's', '-', 'F', '\0' }; Char STRcolor[] = { 'c', 'o', 'l', 'o', 'r', '\0' }; -Char STRmmcolormauto[] = {'-', '-', 'c', 'o', 'l', 'o', 'r', '=', 'a', 'u', 't', 'o', '\0' }; +#ifdef BSD_STYLE_COLORLS +Char STRmmcolormauto[] = { '-', 'G', '\0' }; +#else +Char STRmmcolormauto[] = { '-', '-', 'c', 'o', 'l', 'o', 'r', '=', 'a', 'u', 't', 'o', '\0' }; +#endif /* BSD_STYLE_COLORLS */ Char STRLS_COLORS[] = { 'L', 'S', '_', 'C', 'O', 'L', 'O', 'R', 'S', '\0' }; #endif /* COLOR_LS_F */ @@ -430,3 +445,6 @@ Char STRend[] = { 'e', 'n', 'd', '\0' }; #ifdef COLORCAT Char STRcolorcat[] = { 'c', 'o', 'l', 'o', 'r', 'c', 'a', 't', '\0' }; #endif + +Char STRshwspace[] = { ' ', '\t', '\0' }; +Char STRshwordsep[] = { ' ', '\t', '&', '|', ';', '<', '>', '(', ')', '\0' }; diff --git a/contrib/tcsh/tc.decls.h b/contrib/tcsh/tc.decls.h index a0d29a199f5..c4b19172e80 100644 --- a/contrib/tcsh/tc.decls.h +++ b/contrib/tcsh/tc.decls.h @@ -1,4 +1,4 @@ -/* $Header: /src/pub/tcsh/tc.decls.h,v 3.47 2000/11/12 02:18:06 christos Exp $ */ +/* $Header: /src/pub/tcsh/tc.decls.h,v 3.49 2001/08/06 23:57:33 christos Exp $ */ /* * tc.decls.h: Function declarations from all the tcsh modules */ @@ -96,6 +96,7 @@ extern void postcmd __P((void)); extern void cwd_cmd __P((void)); extern void beep_cmd __P((void)); extern void period_cmd __P((void)); +extern void job_cmd __P((Char *)); extern void aliasrun __P((int, Char *, Char *)); extern void setalarm __P((int)); extern void rmstar __P((struct wordent *)); diff --git a/contrib/tcsh/tc.func.c b/contrib/tcsh/tc.func.c index 410f851f88a..505830b2ce8 100644 --- a/contrib/tcsh/tc.func.c +++ b/contrib/tcsh/tc.func.c @@ -1,4 +1,4 @@ -/* $Header: /src/pub/tcsh/tc.func.c,v 3.94 2000/11/12 02:18:06 christos Exp $ */ +/* $Header: /src/pub/tcsh/tc.func.c,v 3.97 2001/08/28 23:13:44 christos Exp $ */ /* * tc.func.c: New tcsh builtins. */ @@ -36,7 +36,7 @@ */ #include "sh.h" -RCSID("$Id: tc.func.c,v 3.94 2000/11/12 02:18:06 christos Exp $") +RCSID("$Id: tc.func.c,v 3.97 2001/08/28 23:13:44 christos Exp $") #include "ed.h" #include "ed.defns.h" /* for the function names */ @@ -63,6 +63,7 @@ extern int do_logout; extern time_t t_period; extern int just_signaled; static bool precmd_active = 0; +static bool jobcmd_active = 0; /* GrP */ static bool postcmd_active = 0; static bool periodic_active = 0; static bool cwdcmd_active = 0; /* PWP: for cwd_cmd */ @@ -1043,6 +1044,44 @@ leave: #endif /* BSDSIGS */ } + +/* + * GrP Greg Parker May 2001 + * Added job_cmd(), which is run every time a job is started or + * foregrounded. The command is passed a single argument, the string + * used to start the job originally. With precmd, useful for setting + * xterm titles. + * Cloned from cwd_cmd(). + */ +void +job_cmd(args) + Char *args; +{ +#ifdef BSDSIGS + sigmask_t omask; + + omask = sigblock(sigmask(SIGINT)); +#else /* !BSDSIGS */ + (void) sighold(SIGINT); +#endif /* BSDSIGS */ + if (jobcmd_active) { /* an error must have been caught */ + aliasrun(2, STRunalias, STRjobcmd); + xprintf(CGETS(22, 14, "Faulty alias 'jobcmd' removed.\n")); + goto leave; + } + jobcmd_active = 1; + if (!whyles && adrof1(STRjobcmd, &aliases)) + aliasrun(2, STRjobcmd, args); +leave: + jobcmd_active = 0; +#ifdef BSDSIGS + (void) sigsetmask(omask); +#else /* !BSDSIGS */ + (void) sigrelse(SIGINT); +#endif /* BSDSIGS */ +} + + /* * Karl Kleinpaste, 21oct1983. * Set up a one-word alias command, for use for special things. @@ -1257,8 +1296,11 @@ rmstar(cp) tmp->next->prev = tmp->prev; xfree((ptr_t) tmp->word); del = tmp; + tmp = tmp->next; xfree((ptr_t) del); } + we = tmp; + continue; } } } @@ -1532,14 +1574,18 @@ gethomedir(us) #ifdef YPBUGS fix_yp_bugs(); #endif /* YPBUGS */ - if (pp != NULL) - return Strsave(str2short(pp->pw_dir)); + if (pp != NULL) { + /* Don't return if root */ + if (pp->pw_dir[0] == '/' && pp->pw_dir[1] == '\0') + return NULL; + else + return Strsave(str2short(pp->pw_dir)); + } #ifdef HESIOD res = hes_resolve(short2str(us), "filsys"); - rp = 0; - if (res != 0) { - extern char *strtok(); - if ((*res) != 0) { + rp = NULL; + if (res != NULL) { + if ((*res) != NULL) { /* * Look at the first token to determine how to interpret * the rest of it. @@ -1564,6 +1610,10 @@ gethomedir(us) } for (res1 = res; *res1; res1++) free(*res1); + if (rp != NULL && rp[0] == '/' && rp[1] == '\0') { + xfree((ptr_t)rp); + rp = NULL; + } return rp; } #endif /* HESIOD */ diff --git a/contrib/tcsh/tc.printf.c b/contrib/tcsh/tc.printf.c index d2b044ea764..76432512f95 100644 --- a/contrib/tcsh/tc.printf.c +++ b/contrib/tcsh/tc.printf.c @@ -1,4 +1,4 @@ -/* $Header: /src/pub/tcsh/tc.printf.c,v 3.19 1998/10/25 15:10:37 christos Exp $ */ +/* $Header: /src/pub/tcsh/tc.printf.c,v 3.21 2001/06/21 23:26:54 kim Exp $ */ /* * tc.printf.c: A public-domain, minimal printf/sprintf routine that prints * through the putchar() routine. Feel free to use for @@ -38,7 +38,7 @@ */ #include "sh.h" -RCSID("$Id: tc.printf.c,v 3.19 1998/10/25 15:10:37 christos Exp $") +RCSID("$Id: tc.printf.c,v 3.21 2001/06/21 23:26:54 kim Exp $") #ifdef lint #undef va_arg @@ -207,6 +207,7 @@ doprnt(addchar, sfmt, ap) case 'S': case 'Q': +#ifdef SHORT_STRINGS Bp = va_arg(ap, Char *); if (!Bp) { bp = NULL; @@ -226,6 +227,7 @@ doprnt(addchar, sfmt, ap) while (f_width-- > 0) (*addchar) ((int) (' ' | attributes)); break; +#endif /* SHORT_STRINGS */ case 's': case 'q': diff --git a/contrib/tcsh/tcsh.man b/contrib/tcsh/tcsh.man index a056ac5106e..361eb9a0beb 100644 --- a/contrib/tcsh/tcsh.man +++ b/contrib/tcsh/tcsh.man @@ -76,7 +76,7 @@ .\" used here if you can. In particular, please don't use nroff commands .\" which aren't already used herein. .\" -.TH TCSH 1 "19 November 2000" "Astron 6.10.00" +.TH TCSH 1 "2 September 2001" "Astron 6.11.00" .SH NAME tcsh \- C shell with file name completion and command line editing .SH SYNOPSIS @@ -208,6 +208,9 @@ see the \fBversion\fR shell variable. (+) Non-login shells read only \fI/etc/csh.cshrc\fR and \fI~/.tcshrc\fR or \fI~/.cshrc\fR on startup. .PP +For examples of startup files, please consult +\fIhttp://tcshrc.sourceforge.net\fR. +.PP Commands like \fIstty\fR(1) and \fItset\fR(1), which need be run only once per login, usually go in one's \fI~/.login\fR file. Users who need to use the same set of files with both \fIcsh\fR(1) and @@ -1882,10 +1885,13 @@ and described in detail under the appropriate \fBBuiltin commands\fR, The \fIsched\fR builtin command puts commands in a scheduled-event list, to be executed by the shell at a given time. .PP -The \fIbeepcmd\fR, \fIcwdcmd\fR, \fIperiodic\fR, \fIprecmd\fR, and \fIpostcmd\fR +The \fIbeepcmd\fR, \fIcwdcmd\fR, \fIperiodic\fR, \fIprecmd\fR, \fIpostcmd\fR, +and \fIjobcmd\fR \fBSpecial aliases\fR can be set, respectively, to execute commands when the shell wants to ring the bell, when the working directory changes, every \fBtperiod\fR -minutes, before each prompt, and before each command gets executed. +minutes, before each prompt, before each command gets executed, after each +command gets executed, and when a job is started or is brought into the +foreground. .PP The \fBautologout\fR shell variable can be set to log out or lock the shell after a given number of minutes of inactivity. @@ -2848,12 +2854,14 @@ Lists the active jobs. With \fB\-l\fR, lists process IDs in addition to the normal information. On TCF systems, prints the site on which each job is executing. .PP -.B kill \fR[\fB\-\fIsignal\fR] \fB%\fIjob\fR|\fIpid\fR ... +.PD 0 +.TP 8 +.B kill \fR[\fB\-s \fIsignal\fR] \fB%\fIjob\fR|\fIpid\fR ... .PD 0 .TP 8 .B kill \-l -The first form sends the specified \fIsignal\fR (or, if none is given, -the TERM (terminate) signal) to the specified jobs or processes. +The first and second forms sends the specified \fIsignal\fR (or, if none +is given, the TERM (terminate) signal) to the specified jobs or processes. \fIjob\fR may be a number, a string, `', `%', `+' or `\-' as described under \fBJobs\fR. Signals are either given by number or by name (as given in @@ -2862,7 +2870,7 @@ There is no default \fIjob\fR; saying just `kill' does not send a signal to the current job. If the signal being sent is TERM (terminate) or HUP (hangup), then the job or process is sent a CONT (continue) signal as well. -The second form lists the signal names. +The third form lists the signal names. .PD .ig \" Obsolete tcsh command .TP 8 @@ -3423,6 +3431,16 @@ may cause an infinite loop. It is the author's opinion that anyone doing so will get what they deserve. .RE .TP 8 +.B jobcmd +Runs before each command gets executed, or when the command changes state. +This is similar to \fIpostcmd\fR, but it does not print builtins. +.RS +8 +.IP "" 4 +> alias jobcmd 'echo \-n "^[]2\e;\e!#^G"' +.PP +then executing \fIvi foo.c\fR will put the command string in the xterm title bar. +.RE +.TP 8 .B helpcommand Invoked by the \fBrun-help\fR editor command. The command name for which help is sought is passed as sole argument. @@ -3615,6 +3633,7 @@ See also the \fBcwd\fR and \fBowd\fR shell variables. .B dspmbyte \fR(+) If set to `euc', it enables display and editing EUC-kanji(Japanese) code. If set to `sjis', it enables display and editing Shift-JIS(Japanese) code. +If set to `big5', it enables display and editing Big5(Chinese) code. If set to the following format, it enables display and editing of original multi-byte code format: .RS +8 @@ -3780,6 +3799,19 @@ substitutions. Tilde and variable expansions work as expected. If set to `insert' or `overwrite', puts the editor into that input mode at the beginning of each line. .TP 8 +.B killdup \fR(+) +Controls handling of duplicate entries in the kill ring. If set to +`all' only unique strings are entered in the kill ring. If set to +`prev' and the last killed string is the same as the current killed +string, then the current string is not entered in the ring. If set +to `erase' and the same string is found in the kill ring, the old +string is erased and the current one is inserted. +.TP 8 +.B killring \fR(+) +Indicates the number of killed strings to keep in memory. Set to `30' +by default. If unset or set to less than `2', the shell will only +keep the most recently killed string. +.TP 8 .B listflags \fR(+) If set to `x', `a' or `A', or any combination thereof (e.g., `xA'), they are used as flags to \fIls\-F\fR, making it act like `ls \-xF', `ls @@ -4167,13 +4199,13 @@ Some examples are in order. First, let's set up some play directories: .br > mkdir from from/src to .br -> ln \-s from/src to/dist +> ln \-s from/src to/dst .PP Here's the behavior with \fBsymlinks\fR unset, .IP "" 4 -> cd /tmp/to/dist; echo $cwd +> cd /tmp/to/dst; echo $cwd .br -/tmp/to/dist +/tmp/to/dst .br > cd ..; echo $cwd .br @@ -4191,7 +4223,7 @@ here's the behavior with \fBsymlinks\fR set to `chase', .PP here's the behavior with \fBsymlinks\fR set to `ignore', .IP "" 4 -> cd /tmp/to/dist; echo $cwd +> cd /tmp/to/dst; echo $cwd .br /tmp/to/dst .br @@ -4201,7 +4233,7 @@ here's the behavior with \fBsymlinks\fR set to `ignore', .PP and here's the behavior with \fBsymlinks\fR set to `expand'. .IP "" 4 -> cd /tmp/to/dist; echo $cwd +> cd /tmp/to/dst; echo $cwd .br /tmp/to/dst .br @@ -4209,7 +4241,7 @@ and here's the behavior with \fBsymlinks\fR set to `expand'. .br /tmp/to .br -> cd /tmp/to/dist; echo $cwd +> cd /tmp/to/dst; echo $cwd .br /tmp/to/dst .br @@ -4969,7 +5001,7 @@ pipe(2), setrlimit(2), sigvec(2), stat(2), umask(2), vfork(2), wait(2), malloc(3), setlocale(3), tty(4), a.out(5), termcap(5), environ(7), termio(7), Introduction to the C Shell .SH VERSION -This manual documents tcsh 6.10.00 (Astron) 2000-11-19. +This manual documents tcsh 6.11.00 (Astron) 2001-09-02. .SH AUTHORS .PD 0 .TP 2 diff --git a/contrib/tcsh/tcsh.man2html b/contrib/tcsh/tcsh.man2html index fd711f68089..ad3def92a40 100644 --- a/contrib/tcsh/tcsh.man2html +++ b/contrib/tcsh/tcsh.man2html @@ -1,5 +1,5 @@ -#!/bin/sh # -*- perl -*- -# $Id: tcsh.man2html,v 1.11 2000/04/17 23:35:54 kim Exp $ +: # -*- perl -*- +# $Id: tcsh.man2html,v 1.12 2001/04/28 05:20:42 kim Exp $ # tcsh.man2html, Dave Schweisguth # @@ -820,7 +820,7 @@ only the word "help". Up END -#!/bin/sh +: # -*- perl -*- # Emulate #!/usr/local/bin/perl on systems without #! diff --git a/contrib/tcsh/tw.color.c b/contrib/tcsh/tw.color.c index 66d9648e61e..de87c75a7a3 100644 --- a/contrib/tcsh/tw.color.c +++ b/contrib/tcsh/tw.color.c @@ -1,4 +1,4 @@ -/* $Header: /src/pub/tcsh/tw.color.c,v 1.7 2000/06/11 02:14:16 kim Exp $ */ +/* $Header: /src/pub/tcsh/tw.color.c,v 1.8 2001/03/18 19:06:32 christos Exp $ */ /* * tw.color.c: builtin color ls-F */ @@ -36,7 +36,7 @@ */ #include "sh.h" -RCSID("$Id: tw.color.c,v 1.7 2000/06/11 02:14:16 kim Exp $") +RCSID("$Id: tw.color.c,v 1.8 2001/03/18 19:06:32 christos Exp $") #include "tw.h" #include "ed.h" @@ -70,6 +70,7 @@ static Variable variables[] = { VAR('&', "or", ""), /* Orphanned symbolic link (defaults to ln) */ VAR('|', "pi", "33"), /* Named pipe (FIFO) */ VAR('=', "so", "01;35"), /* Socket */ + VAR('>', "do", "01;35"), /* Door (solaris fast ipc mechanism) */ VAR('#', "bd", "01;33"), /* Block device */ VAR('%', "cd", "01;33"), /* Character device */ VAR('*', "ex", "01;32"), /* Executable file */ @@ -86,7 +87,7 @@ static Variable variables[] = { }; enum FileType { - VDir, VSym, VOrph, VPipe, VSock, VBlock, VChr, VExe, + VDir, VSym, VOrph, VPipe, VSock, VDoor, VBlock, VChr, VExe, VFile, VNormal, VMiss, VLeft, VRight, VEnd }; diff --git a/contrib/tcsh/tw.parse.c b/contrib/tcsh/tw.parse.c index 722509be63b..abfaa8cb6f8 100644 --- a/contrib/tcsh/tw.parse.c +++ b/contrib/tcsh/tw.parse.c @@ -1,4 +1,4 @@ -/* $Header: /src/pub/tcsh/tw.parse.c,v 3.89 2000/11/11 23:03:40 christos Exp $ */ +/* $Header: /src/pub/tcsh/tw.parse.c,v 3.90 2001/03/18 19:06:32 christos Exp $ */ /* * tw.parse.c: Everyone has taken a shot in this futile effort to * lexically analyze a csh line... Well we cannot good @@ -39,7 +39,7 @@ */ #include "sh.h" -RCSID("$Id: tw.parse.c,v 3.89 2000/11/11 23:03:40 christos Exp $") +RCSID("$Id: tw.parse.c,v 3.90 2001/03/18 19:06:32 christos Exp $") #include "tw.h" #include "ed.h" @@ -1318,6 +1318,9 @@ tw_list_items(looking, numitems, list_max) int max_items = 0; int max_rows = 0; + if (numitems == 0) + return; + if ((ptr = varval(STRlistmax)) != STRNULL) { while (*ptr) { if (!Isdigit(*ptr)) { @@ -1594,7 +1597,12 @@ t_search(word, wp, command, max_word_length, looking, list_max, pat, suf) case TW_PATH | TW_DIRECTORY: case TW_PATH | TW_COMMAND: if ((dir_fd = opendir(short2str(exp_dir))) == NULL) { - xprintf("%S: %s\n", exp_dir, strerror(errno)); + if (command == RECOGNIZE) + xprintf("\n"); + xprintf("%S: %s", exp_dir, strerror(errno)); + if (command != RECOGNIZE) + xprintf("\n"); + NeedsRedraw = 1; return -1; } if (exp_dir[Strlen(exp_dir) - 1] != '/') @@ -1779,6 +1787,13 @@ tilde(new, old) new[0] = '\0'; return NULL; } +#ifdef apollo + /* Special case: if the home directory expands to "/", we do + * not want to create "//" by appending a slash from o. + */ + if (new[0] == '/' && new[1] == '\0' && *o == '/') + ++o; +#endif /* apollo */ (void) Strcat(new, o); return new;