summaryrefslogtreecommitdiffstats
path: root/contrib/tcsh
diff options
context:
space:
mode:
authormp <mp@FreeBSD.org>2001-09-05 17:49:32 +0000
committermp <mp@FreeBSD.org>2001-09-05 17:49:32 +0000
commit8d8497f743d617c346041567ad4168b4c66a44ae (patch)
tree903e2361fd8a4c275ba07fa2be17b932cf4d923e /contrib/tcsh
parent6aa494c109e1e91310a002726f1e6060cf44f2cd (diff)
parent538cdbc622d96ebd9ba6fae4c5b21f8704e88d90 (diff)
downloadFreeBSD-src-8d8497f743d617c346041567ad4168b4c66a44ae.zip
FreeBSD-src-8d8497f743d617c346041567ad4168b4c66a44ae.tar.gz
This commit was generated by cvs2svn to compensate for changes in r83098,
which included commits to RCS files with non-trunk default branches.
Diffstat (limited to 'contrib/tcsh')
-rw-r--r--contrib/tcsh/FAQ339
-rw-r--r--contrib/tcsh/Fixes44
-rw-r--r--contrib/tcsh/Imakefile6
-rw-r--r--contrib/tcsh/Makefile.ADMIN20
-rw-r--r--contrib/tcsh/Makefile.in4
-rw-r--r--contrib/tcsh/Makefile.std4
-rw-r--r--contrib/tcsh/Makefile.vms4
-rw-r--r--contrib/tcsh/README2
-rw-r--r--contrib/tcsh/RELEASE-PROCEDURE27
-rw-r--r--contrib/tcsh/WishList105
-rw-r--r--contrib/tcsh/complete.tcsh112
-rwxr-xr-xcontrib/tcsh/config.guess389
-rwxr-xr-xcontrib/tcsh/config.sub345
-rw-r--r--contrib/tcsh/config/bsd4.41
-rwxr-xr-xcontrib/tcsh/configure99
-rw-r--r--contrib/tcsh/configure.in7
-rw-r--r--contrib/tcsh/ed.chared.c423
-rw-r--r--contrib/tcsh/ed.decls.h4
-rw-r--r--contrib/tcsh/ed.defns.c58
-rw-r--r--contrib/tcsh/ed.h9
-rw-r--r--contrib/tcsh/ed.init.c30
-rw-r--r--contrib/tcsh/ed.term.c21
-rw-r--r--contrib/tcsh/ed.xmap.c7
-rw-r--r--contrib/tcsh/glob.3580
-rw-r--r--contrib/tcsh/glob.h74
-rw-r--r--contrib/tcsh/host.defs20
-rw-r--r--contrib/tcsh/nls/C/set174
-rw-r--r--contrib/tcsh/nls/C/set39
-rw-r--r--contrib/tcsh/nls/Makefile3
-rw-r--r--contrib/tcsh/nls/et/set1140
-rw-r--r--contrib/tcsh/nls/et/set108
-rw-r--r--contrib/tcsh/nls/et/set1110
-rw-r--r--contrib/tcsh/nls/et/set124
-rw-r--r--contrib/tcsh/nls/et/set1313
-rw-r--r--contrib/tcsh/nls/et/set146
-rw-r--r--contrib/tcsh/nls/et/set157
-rw-r--r--contrib/tcsh/nls/et/set1613
-rw-r--r--contrib/tcsh/nls/et/set1716
-rw-r--r--contrib/tcsh/nls/et/set184
-rw-r--r--contrib/tcsh/nls/et/set1915
-rw-r--r--contrib/tcsh/nls/et/set2111
-rw-r--r--contrib/tcsh/nls/et/set2041
-rw-r--r--contrib/tcsh/nls/et/set215
-rw-r--r--contrib/tcsh/nls/et/set2217
-rw-r--r--contrib/tcsh/nls/et/set2334
-rw-r--r--contrib/tcsh/nls/et/set244
-rw-r--r--contrib/tcsh/nls/et/set256
-rw-r--r--contrib/tcsh/nls/et/set2615
-rw-r--r--contrib/tcsh/nls/et/set278
-rw-r--r--contrib/tcsh/nls/et/set294
-rw-r--r--contrib/tcsh/nls/et/set3124
-rw-r--r--contrib/tcsh/nls/et/set3016
-rw-r--r--contrib/tcsh/nls/et/set317
-rw-r--r--contrib/tcsh/nls/et/set445
-rw-r--r--contrib/tcsh/nls/et/set54
-rw-r--r--contrib/tcsh/nls/et/set611
-rw-r--r--contrib/tcsh/nls/et/set730
-rw-r--r--contrib/tcsh/nls/et/set85
-rw-r--r--contrib/tcsh/nls/et/set912
-rw-r--r--contrib/tcsh/nls/finnish/set225
-rw-r--r--contrib/tcsh/nls/finnish/set310
-rw-r--r--contrib/tcsh/nls/finnish/set304
-rw-r--r--contrib/tcsh/nls/french/set39
-rw-r--r--contrib/tcsh/nls/german/set103
-rw-r--r--contrib/tcsh/nls/german/set39
-rw-r--r--contrib/tcsh/nls/greek/set310
-rw-r--r--contrib/tcsh/nls/italian/set39
-rw-r--r--contrib/tcsh/nls/pl/README3
-rw-r--r--contrib/tcsh/nls/pl/set1bin0 -> 4383 bytes
-rw-r--r--contrib/tcsh/nls/pl/set108
-rw-r--r--contrib/tcsh/nls/pl/set1110
-rw-r--r--contrib/tcsh/nls/pl/set124
-rw-r--r--contrib/tcsh/nls/pl/set1313
-rw-r--r--contrib/tcsh/nls/pl/set146
-rw-r--r--contrib/tcsh/nls/pl/set157
-rw-r--r--contrib/tcsh/nls/pl/set1613
-rw-r--r--contrib/tcsh/nls/pl/set1716
-rw-r--r--contrib/tcsh/nls/pl/set184
-rw-r--r--contrib/tcsh/nls/pl/set1915
-rw-r--r--contrib/tcsh/nls/pl/set2111
-rw-r--r--contrib/tcsh/nls/pl/set2041
-rw-r--r--contrib/tcsh/nls/pl/set215
-rw-r--r--contrib/tcsh/nls/pl/set2217
-rw-r--r--contrib/tcsh/nls/pl/set2334
-rw-r--r--contrib/tcsh/nls/pl/set244
-rw-r--r--contrib/tcsh/nls/pl/set256
-rw-r--r--contrib/tcsh/nls/pl/set2615
-rw-r--r--contrib/tcsh/nls/pl/set278
-rw-r--r--contrib/tcsh/nls/pl/set294
-rw-r--r--contrib/tcsh/nls/pl/set3bin0 -> 4928 bytes
-rw-r--r--contrib/tcsh/nls/pl/set3016
-rw-r--r--contrib/tcsh/nls/pl/set317
-rw-r--r--contrib/tcsh/nls/pl/set445
-rw-r--r--contrib/tcsh/nls/pl/set54
-rw-r--r--contrib/tcsh/nls/pl/set611
-rw-r--r--contrib/tcsh/nls/pl/set730
-rw-r--r--contrib/tcsh/nls/pl/set85
-rw-r--r--contrib/tcsh/nls/pl/set912
-rw-r--r--contrib/tcsh/nls/russian/set1140
-rw-r--r--contrib/tcsh/nls/russian/set108
-rw-r--r--contrib/tcsh/nls/russian/set1110
-rw-r--r--contrib/tcsh/nls/russian/set124
-rw-r--r--contrib/tcsh/nls/russian/set1313
-rw-r--r--contrib/tcsh/nls/russian/set146
-rw-r--r--contrib/tcsh/nls/russian/set157
-rw-r--r--contrib/tcsh/nls/russian/set1613
-rw-r--r--contrib/tcsh/nls/russian/set1716
-rw-r--r--contrib/tcsh/nls/russian/set184
-rw-r--r--contrib/tcsh/nls/russian/set1915
-rw-r--r--contrib/tcsh/nls/russian/set2111
-rw-r--r--contrib/tcsh/nls/russian/set2041
-rw-r--r--contrib/tcsh/nls/russian/set215
-rw-r--r--contrib/tcsh/nls/russian/set2217
-rw-r--r--contrib/tcsh/nls/russian/set2334
-rw-r--r--contrib/tcsh/nls/russian/set244
-rw-r--r--contrib/tcsh/nls/russian/set256
-rw-r--r--contrib/tcsh/nls/russian/set2615
-rw-r--r--contrib/tcsh/nls/russian/set278
-rw-r--r--contrib/tcsh/nls/russian/set294
-rw-r--r--contrib/tcsh/nls/russian/set3124
-rw-r--r--contrib/tcsh/nls/russian/set3016
-rw-r--r--contrib/tcsh/nls/russian/set317
-rw-r--r--contrib/tcsh/nls/russian/set445
-rw-r--r--contrib/tcsh/nls/russian/set54
-rw-r--r--contrib/tcsh/nls/russian/set611
-rw-r--r--contrib/tcsh/nls/russian/set730
-rw-r--r--contrib/tcsh/nls/russian/set85
-rw-r--r--contrib/tcsh/nls/russian/set912
-rw-r--r--contrib/tcsh/nls/spanish/set203
-rw-r--r--contrib/tcsh/nls/spanish/set39
-rw-r--r--contrib/tcsh/nls/ukrainian/set39
-rw-r--r--contrib/tcsh/patchlevel.h6
-rw-r--r--contrib/tcsh/sh.c17
-rw-r--r--contrib/tcsh/sh.char.c66
-rw-r--r--contrib/tcsh/sh.char.h3
-rw-r--r--contrib/tcsh/sh.decls.h3
-rw-r--r--contrib/tcsh/sh.dir.c6
-rw-r--r--contrib/tcsh/sh.dol.c8
-rw-r--r--contrib/tcsh/sh.func.c12
-rw-r--r--contrib/tcsh/sh.glob.c14
-rw-r--r--contrib/tcsh/sh.h10
-rw-r--r--contrib/tcsh/sh.proc.c46
-rw-r--r--contrib/tcsh/sh.sem.c20
-rw-r--r--contrib/tcsh/sh.set.c17
-rw-r--r--contrib/tcsh/sh.time.c7
-rw-r--r--contrib/tcsh/tc.const.c24
-rw-r--r--contrib/tcsh/tc.decls.h3
-rw-r--r--contrib/tcsh/tc.func.c66
-rw-r--r--contrib/tcsh/tc.printf.c6
-rw-r--r--contrib/tcsh/tcsh.man60
-rw-r--r--contrib/tcsh/tcsh.man2html6
-rw-r--r--contrib/tcsh/tw.color.c7
-rw-r--r--contrib/tcsh/tw.parse.c21
153 files changed, 4219 insertions, 983 deletions
diff --git a/contrib/tcsh/FAQ b/contrib/tcsh/FAQ
index 1a530b0..59175c9 100644
--- a/contrib/tcsh/FAQ
+++ b/contrib/tcsh/FAQ
@@ -1,215 +1,262 @@
-Last Updated:
-Fri Aug 25 13:27:45 EDT 2000
+ [Home] FAQ
-This is for people who do not read the manual!
+ Home | RecentChanges | Preferences
+ _________________________________________________________________
-So far people who don't read manuals don't read this either... I may
-call it README.*PLEASE* in the future, but then the same people won't
-be able to get ftp it... :-)
+ This is for people who do not read the manual!
-1. Why is the meta key broken in tcsh-5.20 and up?
+ So far people who don't read manuals don't read this either... I may
+ call it README.*PLEASE* in the future, but then the same people won't
+ be able to get ftp it... :-)
+ _________________________________________________________________
- On some machines the tty is not set up to pass 8 bit characters by default.
- Tcsh 5.19 used to try to determine if pass8 should be set by looking at
- the terminal's meta key. Unfortunately there is no good way of determining
- if the terminal can really pass 8 characters or not. Consider if you are
- logged in through a modem line with 7 bits and parity and your terminal
- has a meta key. Then tcsh 5.19 would set wrongly set pass8.
+ 1. Why is the meta key broken in tcsh-5.20 and up?
- If you did like the previous behavior you can add in /etc/csh.login, or
- in .login:
+ On some machines the tty is not set up to pass 8 bit characters by
+ default. Tcsh 5.19 used to try to determine if pass8 should be set by
+ looking at the terminal's meta key. Unfortunately there is no good way
+ of determining if the terminal can really pass 8 characters or not.
+ Consider if you are logged in through a modem line with 7 bits and
+ parity and your terminal has a meta key. Then tcsh 5.19 would set
+ wrongly set pass8.
+
+ If you did like the previous behavior you can add in /etc/csh.login,
+ or in .login:
if ( $?tcsh && $?prompt ) then
- if ( "`echotc meta`" == "yes" ) then
- stty pass8
- endif
+ if ( "`echotc meta`" == "yes" ) then
+ stty pass8
+ endif
endif
- If you don't have pass8, maybe something like
+ If you don't have pass8, maybe one of these would work..
- stty -parity -evenp -oddp cs8 -istrip (rs6000)
- or
- stty -parenb -istrip cs8
-
- would work..
+ stty -parity -evenp -oddp cs8 -istrip (rs6000)
+ stty -parenb -istrip cs8
- Finally, tcsh will bind all printable meta characters to the self
- insert command. If you don't want that to happen (i.e. use the printable
- meta characters for commands) setenv NOREBIND.
+ Finally, tcsh will bind all printable meta characters to the self
+ insert command. If you don't want that to happen (i.e. use the
+ printable meta characters for commands) setenv NOREBIND.
+ _________________________________________________________________
-2. I ran 'dbxtool &' and 'shelltool &' from tcsh, and they end up in cbreak
- and no echo mode?
+ 2. I ran 'dbxtool &' and 'shelltool &' from tcsh, and they end up in
+ cbreak and no echo mode?
- These programs are broken. Background jobs should not try to look at the
- tty. What happens is that dbxtool looks in stderr to inherit the tty
- setups, but tcsh sets up the tty in cbreak and -echo modes, so that it
- can do line editing. This cannot be fixed because tcsh cannot give away
- the tty. A work-around is:
+ These programs are broken. Background jobs should not try to look at
+ the tty. What happens is that dbxtool looks in stderr to inherit the
+ tty setups, but tcsh sets up the tty in cbreak and -echo modes, so
+ that it can do line editing. This cannot be fixed because tcsh cannot
+ give away the tty. Pick one of the following as a workaround:
dbxtool < /dev/null >& /dev/null &
- or
/usr/etc/setsid dbxtool &
- If that does not work, for dbxtool at least you can add "sh stty sane"
- in your .dbxinit
+ If that does not work, for dbxtool at least you can add "sh stty sane"
+ in your .dbxinit
+ _________________________________________________________________
+
+ 3. I tried to compile tcsh and it cannot find <locale.h>?
+
+ Your system does not support NLS. Undefine NLS in config_f.h and it
+ should work fine.
+ _________________________________________________________________
+
+ 4. Where can I get csh sources?
-3. I tried to compile tcsh and it cannot find <locale.h>?
+ Csh sources are now available with the 4.4BSD networking
+ distributions. You don't need csh sources to compile tcsh-6.0x.
+ _________________________________________________________________
- Your system does not support NLS. Undefine NLS in config_f.h and it
- should work fine.
+ 5. I just made tcsh my login shell, and I cannot ftp any more?
-4. Where can I get csh sources?
+ Newer versions of the ftp daemon check for the validity of the user's
+ shell before they allow logins. The list of valid login shells is
+ either hardcoded or it is usually in a file called /etc/shells. If it
+ is hard-coded, then you are out of luck and your best bet is to get a
+ newer version of ftpd. Otherwise add tcsh to the list of shells. [For
+ AIX this file is called /etc/security/login.cfg.] Remember that the
+ full path is required. If there is no /etc/shells, and you are
+ creating one, remember to add /bin/csh, /bin/sh, and any other valid
+ shells for your system, so that other people can ftp too :-)
+ _________________________________________________________________
- Csh sources are now available with the 4.4BSD networking distributions.
- You don't need csh sources to compile tcsh-6.0x.
+ 6. I am using SunView? or OpenWindows? and editing is screwed up. In
+ particular my arrow keys and backspace don't work right. What am I
+ doing wrong?
-5. I just made tcsh my login shell, and I cannot ftp any more?
+ Well, cmdtool tries to do its own command line editing and the effect
+ you get is one of using an editor inside an editor. Both try to
+ interpret the arrow key sequences and cmdtool wins since it gets them
+ first. The solutions are in my order of preference:
- Newer versions of the ftp daemon check for the validity of the
- user's shell before they allow logins. The list of valid login
- shells is either hardcoded or it is usually in a file called
- /etc/shells. If it is hard-coded, then you are out of luck and
- your best bet is to get a newer version of ftpd. Otherwise add
- tcsh to the list of shells. [For AIX this file is called
- /etc/security/login.cfg]. Remember that the full path is required.
- If there is no /etc/shells, and you are creating one, remember to
- add /bin/csh, /bin/sh, and any other valid shells for your system,
- so that other people can ftp too :-)
+ 1. Don't use suntools
+ 2. Use shelltool instead of cmdtool.
+ 3. Unset edit in tcsh.
-6. I am using SunView/OpenWindows and editing is screwed up. In
- particular my arrow keys and backspace don't work right. What
- am I doing wrong?
+ 6b. On a SPARCstation running Solaris 2.x and OpenWindows? 3.1, inside
+ a cmdtool, the short-cut key sequence to clear log (i.e. Meta-e or
+ Diamond-e) doesn't work: it just echos 'e'
- Well, cmdtool tries to do its own command line editing and the
- effect you get is one of using an editor inside an editor. Both
- try to interpret the arrow key sequences and cmdtool wins since
- it gets them first. The solutions are in my order of preference:
+ 6c. On a SPARCstation running Solaris 2.x and OpenWindows? 3.1,
+ maketool (within SPARCworks) doesn't work: it just does a `cd' to the
+ working directory then stops.
- 1 Don't use suntools
- 2 Use shelltool instead of cmdtool.
- 3 Unset edit in tcsh.
+ The workaround for 6b and 6c is doing "unset edit." Using shelltool
+ instead of cmdtool doesn't fix 6c.
+ _________________________________________________________________
-6b. On a SPARCstation running Solaris 2.x and OpenWindows 3.1,
- inside a cmdtool, the short-cut key sequence to clear log
- (i.e. Meta-e or Diamond-e) doesn't work: it just echos 'e'
+ 7. I rlogin to another machine, and then no matter what I tell 'stty'
+ I cannot get it to pass 8 bit characters?
-6c. On a SPARCstation running Solaris 2.x and OpenWindows 3.1,
- maketool (within SPARCworks) doesn't work: it just does
- a `cd' to the working directory then stops.
+ Maybe you need to use 'rlogin -8' to tell rlogin to pass 8 bit
+ characters.
+ _________________________________________________________________
- The workaround for 6b and 6c is doing "unset edit."
- Using shelltool instead of cmdtool doesn't fix 6c.
+ 8. Where do I get the public domain directory library?
-7. I rlogin to another machine, and then no matter what I tell 'stty'
- I cannot get it to pass 8 bit characters?
+ Anonymous ftp to prep.ai.mit.edu:/pub/gnu/dirent.tar.Z
+ _________________________________________________________________
- Maybe you need to use 'rlogin -8' to tell rlogin to pass 8
- bit characters.
+ 9. I compiled tcsh using gcc, and when I start up it says: tcsh:
+ Warning no access to tty (Invalid Argument). Thus no job control in
+ this shell
-8. Where do I get the public domain directory library?
-
- Anonymous ftp to prep.ai.mit.edu:/pub/gnu/dirent.tar.Z
+ Your <sys/ioctl.h> file is not ansi compliant. You have one of 3
+ choices:
-9. I compiled tcsh using gcc, and when I start up it says:
- tcsh: Warning no access to tty (Invalid Argument).
- Thus no job control in this shell
+ 1. Run fixincludes from the gcc distribution.
+ 2. Add -traditional to the gcc flags.
+ 3. Compile with cc.
+ _________________________________________________________________
- Your <sys/ioctl.h> file is not ansi compliant. You have one of 3 choices:
- a. Run fixincludes from the gcc distribution.
- b. Add -traditional to the gcc flags.
- c. Compile with cc.
+ 10. I compiled tcsh with the SunOS? unbundled compiler and now things
+ get echo'ed twice.
-10. I compiled tcsh with the SunOS unbundled compiler and now things
- get echo'ed twice.
+ It is a bug in the unbundled optimizer. Lower the optimization level.
+ _________________________________________________________________
- It is a bug in the unbundled optimizer. Lower the optimization level.
+ 11. How can I use the arrow keys with hpterm?
-11. How can I use the arrow keys with hpterm?
- Hp terminals use the arrow keys internally. You can tell hpterm not
- to do that, by sending it the termcap sequence smkx. Since this
- has to be done all the time, the easiest thing is to put it as an
- alias for precmd, or inside the prompt:
+ Hp terminals use the arrow keys internally. You can tell hpterm not to
+ do that, by sending it the termcap sequence smkx. Since this has to be
+ done all the time, the easiest thing is to put it as an alias for
+ precmd, or inside the prompt:
if ($term == "hp") then
- set prompt="%{`echotc smkx`%}$prompt"
+ set prompt="%{`echotc smkx`%}$prompt"
endif
- Note that by doing that you cannot use pgup and pgdn to scroll...
- Also if you are using termcap, replace "smkx" with "ks"...
+ Note that by doing that you cannot use pgup and pgdn to scroll... Also
+ if you are using termcap, replace "smkx" with "ks"...
+ _________________________________________________________________
-12. On POSIX machines ^C and ^Z will do not work when tcsh is a login
- shell?
- Make sure that the interrupt character is set to ^C and suspend
- is set to ^Z; 'stty -a' will show you the current stty settings;
- 'stty intr ^C susp ^Z' will set them to ^C and ^Z respectively.
+ 12. On POSIX machines ^C and ^Z will do not work when tcsh is a login
+ shell?
-13. I am trying to compile tcsh and I am getting compile errors that
- look like:
+ Make sure that the interrupt character is set to ^C and suspend is set
+ to ^Z; 'stty -a' will show you the current stty settings; 'stty intr
+ ^C susp ^Z' will set them to ^C and ^Z respectively.
+ _________________________________________________________________
+
+ 13. I am trying to compile tcsh and I am getting compile errors that
+ look like:
>sh.c:???: `STR???' undeclared, outside of functions [gcc]
- or
>"sh.c", line ???: STR??? undefined [cc]
- You interrupted make, while it was making the automatically
- generated headers. Type 'make clean; make'
+ You interrupted make, while it was making the automatically generated
+ headers. Type 'make clean; make'
+ _________________________________________________________________
+
+ 14. On the cray, sometimes the CR/LF mapping gets screwed up.
+
+ You are probably logged in to the cray via telnet. Cray's telnetd
+ implements line mode selection the telnet client you are using does
+ not implement telnet line mode. This cause the Cray's telnetd to try
+ to use KLUDGELINEMODE. You can turn off telnet line mode from the cray
+ side by doing a "stty -extproc", or you can get the Cray AIC to build
+ a telnetd without KLUDGELINEMODE, or you can compile a new telnet
+ client (from the BSD net2 tape), or at least on the suns use: 'mode
+ character'.
+ _________________________________________________________________
+
+ 15. On AU/X, I made tcsh my startup shell, but the mac desktop is not
+ starting up (no X11 or Finder), and I only get console emulation.
-14. On the cray, sometimes the CR/LF mapping gets screwed up.
+ This is another manifestation of item 5. Just add the pathname to tcsh
+ in /etc/shells and everything should work fine.
+ _________________________________________________________________
- You are probably logged in to the cray via telnet. Cray's
- telnetd implements line mode selection the telnet client
- you are using does not implement telnet line mode.
- This cause the Cray's telnetd to try to use KLUDGELINEMODE.
- You can turn off telnet line mode from the cray side by
- doing a "stty -extproc", or you can get the Cray AIC to build
- a telnetd without KLUDGELINEMODE, or you can compile
- a new telnet client (from the BSD net2 tape), or at least
- on the suns use: 'mode character'.
+ 16. On machines that use YP (NIS) tilde expansion might end up in
+ /dev/null
+ If this happens complain to your vendor, to get a new version of NIS.
+ You can fix that in tcsh by defining YPBUGS in config.h
+ _________________________________________________________________
-15. On AU/X, I made tcsh my startup shell, but the mac desktop is not
- starting up (no X11 or Finder), and I only get console emulation.
+ 17. Script on SGI 4.0.5 does not give us a tty, so we cannot have job
+ control.
- This is another manifestation of item 5. Just add the pathname
- to tcsh in /etc/shells and everything should work fine.
+ Their csh does not have job control either. Try:
-16. On machines that use YP (NIS) tilde expansion might end up in /dev/null
- If this happens complain to your vendor, to get a new version of NIS.
- You can fix that in tcsh by defining YPBUGS in config.h
+ % script
+ % cat > /dev/tty
+ _________________________________________________________________
-17. Script on SGI 4.0.5 does not give us a tty, so we cannot have job
- control. Their csh does not have job control either. Try:
- % script
- % cat > /dev/tty
+ 18. I start tcsh and it takes a couple of minutes to get the prompt.
-18. I start tcsh and it takes a couple of minutes to get the prompt.
- You have defined REMOTEHOST and your DNS is not responding. Either
- undefine REMOTEHOST and recompile or fix your DNS.
+ You have defined REMOTEHOST and your DNS is not responding. Either
+ undefine REMOTEHOST and recompile or fix your DNS.
+ _________________________________________________________________
-19. If you need help generating your .cshrc file, check out:
- http://www.imada.ou.dk/~blackie/dotfile/
+ 19. If you need help generating your .cshrc file, check out:
+
+ http://www.imada.ou.dk/~blackie/dotfile/
+ _________________________________________________________________
+
+ 20. On POSIX systems the kernel will send hup signals to all the
+ processes in the foreground process group if 'stty hupcl' is set.
+
+ For example
-20. On POSIX systems the kernel will send hup signals to all the processes
- in the foreground process group if 'stty hupcl' is set. For example
./tcsh
echo $$
591
./tcsh
kill -6 591
- Will kill everything, since hup will be sent to all tcsh processes.
- To avoid that you can set stty -hupcl, but it is not recommended.
+ Will kill everything, since hup will be sent to all tcsh processes. To
+ avoid that you can set stty -hupcl, but it is not recommended.
+ _________________________________________________________________
+
+ 21. When I rsh the meta key stops working on the remote machine.
+
+ Try using rsh -8; this option is undocumented on some systems, but it
+ works. If that does not work, get and use ssh/sshd. You'll be better
+ off from a security point of view anyway.
+ _________________________________________________________________
+
+ 22. Tcsh compiled under hp/ux-10.x does not pass resource limits
+ correctly when ran on hp/ux-11.x systems.
+
+ This is a problem with lack of ABI compatibility between the two
+ systems. The only solution is to recompile.
+ _________________________________________________________________
-21. When I rsh the meta key stops working on the remote machine.
+ 23. Refreshing in command line editing can appear broken on some OS's
- Try using rsh -8; this option is undocumented on some systems,
- but it works. If that does not work, get and use ssh/sshd. You'll
- be better off from a security point of view anyway.
+ This is because the termcap/terminfo description lies about the
+ ability of the terminal to use tabs. At least on Compaq/DEC Alpha
+ OSF/1 3.x and 4.x systems, stty -tabs will cause problems.
+ _________________________________________________________________
-22. Tcsh compiled under hp/ux-10.x does not pass resource limits correctly
- when ran on hp/ux-11.x systems. This is a problem with lack of ABI
- compatibility between the two systems. The only solution is to recompile.
+ Everything else is a bug :-(
-christos
+ Christos
+ _________________________________________________________________
-Everything else is a bug :-(
+ Home | RecentChanges | Preferences
+ Edit text of this page | View other revisions
+ Last edited April 27, 2001 13:43 (diff)
+ Search: ____________________
diff --git a/contrib/tcsh/Fixes b/contrib/tcsh/Fixes
index d90e2ee..f48808e 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 8a95603..4d32952 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 0000000..9661906
--- /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 54c8897..d07d000 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 f2199cf..b6212d2 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 3995707..05ce550 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 658ba69..4c86b63 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 0000000..54de676
--- /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 a849b18..8afeceb 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)
-
-* Fix history in loops.
-
-* 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 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] WishList
+
+ Home | RecentChanges | Preferences
+ _________________________________________________________________
+
+ Fix memory leak related to aliasrun(). Precmd, Cwdcmd etc. leak
+ memory.
+ _________________________________________________________________
+
+ Fix migrate -site $$... Seems to hang... (aix370)
+ _________________________________________________________________
+
+ Fix history in loops.
+ _________________________________________________________________
+
+ New idea: sed operations on variables.
+
+ 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 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 a903094..c1b6c9d 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 <tom@waz.cc>
- # 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:'<subject>'/ \
@@ -650,23 +650,32 @@ if ($?complete) then
c@+@F:$HOME/Mail@ C@[./\$~]@f@ n/-s/x:'<subject>'/ \
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:'<keyword>'/ 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:'<keyword>'@ 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:'<tty>'/ c/-/"(a c C e g k l S t u v w x)"/ \
n/-k/x:'<kernel>'/ N/-k/x:'<core_file>'/ n/*/x:'<PID>'/
@@ -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 <jgotts@engin.umich.edu>
-
- complete emacs c/-/"(batch d f funcall i insert kill l load \
- no-init-file nw q t u user)"/ c/+/x:'<line_number>'/ \
- n/-d/x:'<display>'/ n/-f/x:'<lisp_function>'/ n/-i/f/ \
- n@-l@F:$_elispdir@ n/-t/x:'<terminal>'/ \
- 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:'<line_number>'/ \
+ n/{-t,--terminal}/x:'<terminal>'/ n/{-d,--display}/x:'<display>'/ \
+ n/{-u,--user}/u/ n/{-f,--funcall}/x:'<lisp_function>'/ \
+ n@{-l,--load}@F:$_emacs_dir/share/emacs/$_emacs_ver/lisp@ \
+ n/--eval/x:'<expression>'/ 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:'<key ...>'@ n@-@x:'<key ...>'@ p@1@x:'<key ...>'@ \
- 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:'<key ...>'@ n@-@x:'<key ...>'@ p@1@x:'<key ...>'@ \
+ 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 cdd1530..e1b5871 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 <bothner@cygnus.com>.
# The master version of this file is at the FSF in /home/gd/gnu/lib.
+# Please send patches to <autoconf-patches@gnu.org>.
#
# 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 <<EOF >dummy.s
+ cat <<EOF >$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 <sys/systemcfg.h>
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 <stdlib.h>
#include <unistd.h>
-
+
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 <unistd.h>
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 <<EOF
+#include <features.h>
+#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/^ //' <<EOF >dummy.s
+ sed 's/^ //' <<EOF >$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 <<EOF
-main(argc, argv)
- int argc;
- char *argv[];
-{
+ cat >$dummy.c <<EOF
+#ifdef __cplusplus
+ int main (int argc, char *argv[]) {
+#else
+ int main (argc, argv) int argc; char *argv[]; {
+#endif
#ifdef __MIPSEB__
printf ("%s-unknown-linux-gnu\n", argv[1]);
#endif
@@ -640,8 +766,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
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 <<EOF
+ cat >$dummy.c <<EOF
#include <features.h>
-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_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}
+ 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 <<EOF
+cat >$dummy.c <<EOF
#ifdef _SEQUENT_
# include <sys/types.h>
# include <sys/utsname.h>
@@ -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 7ed374b..28426bb 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 fd07793..82f776c 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 d783e54..fb7c41d 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 <<EOF
-#line 1026 "configure"
+#line 1031 "configure"
#include "confdefs.h"
#include <assert.h>
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 <<EOF
-#line 1043 "configure"
+#line 1048 "configure"
#include "confdefs.h"
#include <assert.h>
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 <<EOF
-#line 1060 "configure"
+#line 1065 "configure"
#include "confdefs.h"
#include <assert.h>
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 <<EOF
-#line 1098 "configure"
+#line 1103 "configure"
#include "confdefs.h"
#include <sgtty.h>
Autoconf TIOCGETP
@@ -1112,7 +1117,7 @@ rm -f conftest*
if test $ac_cv_prog_gcc_traditional = no; then
cat > conftest.$ac_ext <<EOF
-#line 1116 "configure"
+#line 1121 "configure"
#include "confdefs.h"
#include <termio.h>
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 <<EOF
-#line 1159 "configure"
+#line 1164 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -1166,7 +1171,7 @@ int main() {
crypt()
; return 0; }
EOF
-if { (eval echo configure:1170: \"$ac_link\") 1>&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 <<EOF
-#line 1181 "configure"
+#line 1186 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -1188,7 +1193,7 @@ int main() {
crypt()
; return 0; }
EOF
-if { (eval echo configure:1192: \"$ac_link\") 1>&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 <<EOF
-#line 1221 "configure"
+#line 1226 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -1228,7 +1233,7 @@ int main() {
tgetent()
; return 0; }
EOF
-if { (eval echo configure:1232: \"$ac_link\") 1>&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 <<EOF
-#line 1243 "configure"
+#line 1248 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -1250,7 +1255,7 @@ int main() {
tgetent()
; return 0; }
EOF
-if { (eval echo configure:1254: \"$ac_link\") 1>&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 <<EOF
-#line 1283 "configure"
+#line 1288 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -1290,7 +1295,7 @@ int main() {
gethostbyname()
; return 0; }
EOF
-if { (eval echo configure:1294: \"$ac_link\") 1>&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 <<EOF
-#line 1305 "configure"
+#line 1310 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -1312,7 +1317,7 @@ int main() {
gethostbyname()
; return 0; }
EOF
-if { (eval echo configure:1316: \"$ac_link\") 1>&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 <<EOF
-#line 1345 "configure"
+#line 1350 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -1352,7 +1357,7 @@ int main() {
connect()
; return 0; }
EOF
-if { (eval echo configure:1356: \"$ac_link\") 1>&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 <<EOF
-#line 1367 "configure"
+#line 1372 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -1374,7 +1379,7 @@ int main() {
connect()
; return 0; }
EOF
-if { (eval echo configure:1378: \"$ac_link\") 1>&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 <<EOF
-#line 1418 "configure"
+#line 1423 "configure"
#include "confdefs.h"
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char res_send(); below. */
@@ -1437,7 +1442,7 @@ res_send();
; return 0; }
EOF
-if { (eval echo configure:1441: \"$ac_link\") 1>&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 <<EOF
-#line 1467 "configure"
+#line 1472 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
@@ -1474,7 +1479,7 @@ int main() {
res_send()
; return 0; }
EOF
-if { (eval echo configure:1478: \"$ac_link\") 1>&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 561fb83..ae330e2 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 da43977..ad2387a 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 074b966..1a90988 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 3dd0c2c..be2a2d5 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-| */
@@ -1736,30 +1738,44 @@ editinit()
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 f92e481..98c1ad2 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 55ae2fc..805e2ec 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 b7ea987..00f932d 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 3436f57..c066ca76 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 2fc84e0..aecdddd 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.h>
-
-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 <glob.h>
+.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
+.Fa errfunc .
+The error routine can suppress this action by testing for
+.Dv ENOENT
+and
+.Dv ENOTDIR ;
+however, the
+.Dv GLOB_ERR
+flag will still cause an immediate
return when this happens.
-.PP
+.Pp
If
-.I errfunc
+.Fa errfunc
returns non-zero,
-.I glob
+.Fn glob
stops the scan and returns
-.I GLOB_ABEND
+.Dv GLOB_ABORTED
after setting
-.I gl_pathc
+.Fa gl_pathc
and
-.I gl_pathv
+.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 <glob.h>:
-.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 bed9c4c..eb8753a 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_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. */
+
+#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_NOSPACE (-1) /* malloc call failed */
-#define GLOB_ABEND (-2) /* unignored error */
+#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));
+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 b00090c..d3737b8 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 fa4fd20..0e8115a 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 9f83760..7a46f5f 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 1b4de3a..a1936e3 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 0000000..bd44bb3
--- /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 $?<number> või $#<number> 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 -<sündmuse#>.\nKasuta: sched [+]hh:mm <käsk>
+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] [<omadus> [<argumendid>]]
+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 0000000..50b486a
--- /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 0000000..7328a0d
--- /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 0000000..de45948
--- /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 0000000..02ff2bb
--- /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 0000000..dedcc68
--- /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 0000000..f638275
--- /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 0000000..e2f26be
--- /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 0000000..abb92bb
--- /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 0000000..b91a437
--- /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 0000000..8891ab9
--- /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 0000000..691339f
--- /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 0000000..0587f75
--- /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 0000000..ba9a344
--- /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 0000000..92e3f3a
--- /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 0000000..eb0609d
--- /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 0000000..a7fb2de
--- /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 0000000..a95f6f6
--- /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 0000000..729c776
--- /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 0000000..53828e4
--- /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 0000000..2ec61dd
--- /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 0000000..170da71
--- /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 0000000..8438f46
--- /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 0000000..f701daa
--- /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 0000000..cc9cb19
--- /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 0000000..013f1b7
--- /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 0000000..c97d381
--- /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 0000000..32d3e63
--- /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 0000000..dd44350
--- /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 0000000..877460b
--- /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 f66ed7b..7008372 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 01a99dc..b880518 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 1fed722..6f61db5 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 acf6f80..7e6c952 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 ae50ffb..27f8a66 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 c19ea2a..4368818 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 46b4364..3a3f56a 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 733a36f..fdab68d 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 0000000..073b1fa
--- /dev/null
+++ b/contrib/tcsh/nls/pl/README
@@ -0,0 +1,3 @@
+T³umaczenia dokona³ Pawe³ Niewiadomski <new@linuxpl.org>.
+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 0000000..f738462
--- /dev/null
+++ b/contrib/tcsh/nls/pl/set1
Binary files differ
diff --git a/contrib/tcsh/nls/pl/set10 b/contrib/tcsh/nls/pl/set10
new file mode 100644
index 0000000..4283408
--- /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 0000000..97fac7d
--- /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 0000000..f9f35ea
--- /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 0000000..eeb4873
--- /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 0000000..d3dd53c
--- /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 0000000..51b62ac
--- /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 0000000..0d8197d
--- /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 0000000..5a796eb
--- /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 0000000..55671a7
--- /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 0000000..23166bc
--- /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 0000000..7c18bac
--- /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 0000000..432c772
--- /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 0000000..64e60e8
--- /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 0000000..173ef55
--- /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 0000000..2cecc8c
--- /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 0000000..2896947
--- /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 0000000..063e8d6
--- /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 0000000..5c804ae
--- /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 0000000..489f0de
--- /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 0000000..559bc5e
--- /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 0000000..b287ce2
--- /dev/null
+++ b/contrib/tcsh/nls/pl/set3
Binary files differ
diff --git a/contrib/tcsh/nls/pl/set30 b/contrib/tcsh/nls/pl/set30
new file mode 100644
index 0000000..7e958fc
--- /dev/null
+++ b/contrib/tcsh/nls/pl/set30
@@ -0,0 +1,16 @@
+$ $Id: set30,v 1.4 1996/10/19 17:52:34 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 elementów
+6 wierszy
+7 Jest %d %s, pokazaæ je? [n/t]
+8 looking = %d\n
+9 \ntcsh internal error: I don't know what I'm looking for!\n
+10 nie jest katalogiem
+11 nie zosta³ znaleziony
+12 jest nieczytelny
+13 tT
diff --git a/contrib/tcsh/nls/pl/set31 b/contrib/tcsh/nls/pl/set31
new file mode 100644
index 0000000..029171e
--- /dev/null
+++ b/contrib/tcsh/nls/pl/set31
@@ -0,0 +1,7 @@
+$ $Id: set31,v 1.2 1995/03/19 18:07:15 christos Exp $
+$ vms.termcap.c
+$set 31
+1 Nie mogê otworzyæ TERMCAP: [%s]\n
+2 Nie mogê otworzyæ %s.\n
+3 Znaleziono %s w %s.\n
+4 Nie znaleziono %s w pliku %s\n
diff --git a/contrib/tcsh/nls/pl/set4 b/contrib/tcsh/nls/pl/set4
new file mode 100644
index 0000000..391ce7c
--- /dev/null
+++ b/contrib/tcsh/nls/pl/set4
@@ -0,0 +1,45 @@
+$ $Id: set4,v 1.2 1995/03/19 18:07:15 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 Posiada klawisz meta
+42 Newline ignored at right margin
diff --git a/contrib/tcsh/nls/pl/set5 b/contrib/tcsh/nls/pl/set5
new file mode 100644
index 0000000..c888b3e
--- /dev/null
+++ b/contrib/tcsh/nls/pl/set5
@@ -0,0 +1,4 @@
+$ $Id: set5,v 1.2 1995/03/19 18:07:15 christos Exp $
+$ ed.chared.c
+$set 5
+1 ¦rednie obci±¿enie niedostêpne\n
diff --git a/contrib/tcsh/nls/pl/set6 b/contrib/tcsh/nls/pl/set6
new file mode 100644
index 0000000..ed9d982
--- /dev/null
+++ b/contrib/tcsh/nls/pl/set6
@@ -0,0 +1,11 @@
+$ $Id: set6,v 1.2 1995/03/19 18:07:15 christos Exp $
+$ ed.inputl.c
+$set 6
+1 ERROR: illegal command from key 0%o\r\n
+2 tak\n
+3 edytuj\n
+4 przerwij\n
+5 nie\n
+6 Brak pasuj±cego polecenia\n
+7 Niejasne polecenie\n
+8 *** B£¡D fatalny edytora ***\r\n\n
diff --git a/contrib/tcsh/nls/pl/set7 b/contrib/tcsh/nls/pl/set7
new file mode 100644
index 0000000..2a0d195
--- /dev/null
+++ b/contrib/tcsh/nls/pl/set7
@@ -0,0 +1,30 @@
+$ $Id: set7,v 1.3 1996/04/26 20:32:04 christos Exp $
+$ ed.screen.c
+$set 7
+1 \n\tTcsh my¶li ¿e twoj terminal posiada\n
+2 \tnastêpuj±c± charakterystykê:\n\n
+3 \tMa %d kolumn i %d linii\n
+4 \tKlawisze meta: %sposiada\n
+5 a
+6 nie
+7 \tTabulatory: %spotrafi u¿ywaæ\n
+8 nie
+9 \tAutomatyczne marginesy: %s\n
+10 tak
+11 nie
+12 \tMagiczne marginesy: %s\n
+13 (puste)
+14 tak
+15 nie
+16 ERROR: nie mo¿na usuwaæ\r\n
+17 DeleteChars: num is riduculous: %d\r\n
+18 ERROR: nie mo¿na wstawiaæ\r\n
+19 StartInsert: num is riduculous: %d\r\n
+20 %s: Nie mo¿na otworzyæ /etc/termcap.\n
+21 %s: Brak wpisu dla terminala typu "%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/pl/set8 b/contrib/tcsh/nls/pl/set8
new file mode 100644
index 0000000..bfda403
--- /dev/null
+++ b/contrib/tcsh/nls/pl/set8
@@ -0,0 +1,5 @@
+$ $Id: set8,v 1.2 1995/03/19 18:07:15 christos Exp $
+$ ed.term.c
+$set 8
+1 Nieprawid³owy prze³±cznik
+2 Nieprawid³owy argument
diff --git a/contrib/tcsh/nls/pl/set9 b/contrib/tcsh/nls/pl/set9
new file mode 100644
index 0000000..d0aaf73
--- /dev/null
+++ b/contrib/tcsh/nls/pl/set9
@@ -0,0 +1,12 @@
+$ $Id: set9,v 1.2 1995/03/19 18:07:15 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 brak wej¶cia
+8 Co¶ musi byæ za: %c\n
+9 Octal constant does not fit in a char.\n
diff --git a/contrib/tcsh/nls/russian/set1 b/contrib/tcsh/nls/russian/set1
new file mode 100644
index 0000000..a962af2
--- /dev/null
+++ b/contrib/tcsh/nls/russian/set1
@@ -0,0 +1,140 @@
+$ $Id: set1,v 1.1 2001/03/18 19:06:35 christos Exp $
+$ Error messages
+$set 1
+1 óÉÎÔÁËÓÉÞÅÓËÁÑ ÏÛÉÂËÁ
+2 %s ÎÅÄÏÐÕÓÔÉÍÏ
+3 óÌÏ×Ï ÓÌÉÛËÏÍ ÄÌÉÎÎÏÅ
+4 $< ÓÔÒÏËÁ ÓÌÉÛËÏÍ ÄÌÉÎÎÁÑ
+5 îÅÔ ÆÁÊÌÁ ÄÌÑ $0
+6 îÅÚÁ×ÅÒÛ£ÎÎÙÊ ÍÏÄÉÆÉËÁÔÏÒ []
+7 $ ÒÁÓÛÉÒÅÎÉÅ ÄÏÌÖÎÏ ÏËÁÎÞÉ×ÁÔØÓÑ ÐÅÒÅÄ ]
+8 ðÌÏÈÏÊ ÍÏÄÉÆÉËÁÔÏÒ × $ (%c)
+9 ïÛÉÂËÁ ÐÏÄÐÒÏÇÒÁÍÍÙ
+10 îÅÐÒÁ×ÉÌØÎÏ ÓÆÏÒÍÉÒÏ×ÁÎÎÏÅ ÞÉÓÌÏ
+11 îÅÔ ÂÏÌØÛÅ ÓÌÏ×
+12 ïÔÓÕÔÓÔ×ÕÅÔ ÉÍÑ ÆÁÊÌÁ
+13 ÷ÎÕÔÒÅÎÎÑÑ ÏÛÉÂËÁ glob
+14 ëÏÍÁÎÄÁ ÎÅ ÎÁÊÄÅÎÁ
+15 íÁÌÏ ÁÒÇÕÍÅÎÔÏ×
+16 íÎÏÇÏ ÁÒÇÕÍÅÎÔÏ×
+17 óÌÉÛËÏÍ ÏÐÁÓÎÏ ÐÅÒÅÏÐÒÅÄÅÌÑÔØ ÜÔÏ
+18 ðÕÓÔÏÊ if
+19 îÅ×ÅÒÎÙÊ then
+20 óÌÏ×Á ÎÅ × ÓËÏÂËÁÈ
+21 %s ÎÅ ÎÁÊÄÅÎÏ
+22 îÅ×ÅÒÎÙÊ mask
+23 îÅÔ ÔÁËÏÇÏ ÐÒÅÄÅÌÁ
+24 áÒÇÕÍÅÎÔ ÓÌÉÛËÏÍ ×ÅÌÉË
+25 îÅ×ÅÒÎÙÊ ÉÌÉ ÎÅÉÚ×ÅÓÔÎÙÊ ÆÁËÔÏÒ Õ×ÅÌÉÞÅÎÉÑ
+26 îÅÏÐÒÅÄÅÌÅÎÎÁÑ ÐÅÒÅÍÅÎÎÁÑ
+27 óÔÅË ËÁÔÁÌÏÇÏ× ÎÅ ÔÁËÏÊ ÇÌÕÂÏËÉÊ
+28 îÅ×ÅÒÎÙÊ ÎÏÍÅÒ ÓÉÇÎÁÌÁ
+29 îÅÉÚ×ÅÓÔÎÙÊ ÓÉÇÎÁÌ; kill -l ×Ù×ÅÄÅÔ ÓÐÉÓÏË ÓÉÇÎÁÌÏ×
+30 éÍÑ ÐÅÒÅÍÅÎÎÏÊ ÄÏÌÖÎÏ ÎÁÞÉÎÁÔØÓÑ Ó ÂÕË×Ù
+31 óÌÉÛËÏÍ ÄÌÉÎÎÏÅ ÉÍÑ ÐÅÒÅÍÅÎÎÏÊ
+32 ÷ ÉÍÅÎÉ ÐÅÒÅÍÅÎÎÏÊ ÄÏÌÖÎÙ ÓÏÄÅÒÖÁÔØÓÑ ÁÌÆÁ×ÉÔÎÏ-ÃÉÆÒÏ×ÙÅ ÓÉÍ×ÏÌÙ
+33 õÐÒÁ×ÌÅÎÉÅ ÚÁÄÁÎÉÑÍÉ × ÜÔÏÍ ÛÅÌÌÅ ÏÔÓÕÔÓ×ÕÅÔ
+34 óÉÎÔÁÈ ×ÙÒÁÖÅÎÉÑ
+35 ïÔÓÕÔÓ×ÕÅÔ ÄÏÍÁÛÎÉÊ ËÁÔÁÌÏÇ
+36 îÅ ÍÏÇÕ ÐÅÒÅÊÔÉ × ÄÏÍÁÛÎÉÊ ËÁÔÁÌÏÇ
+37 ðÒÏÐÕÝÅÎÁ ËÏÍÁÎÄÁ
+38 ÷ ÐÒÉÓ×ÏÅÎÉÉ ÏÔÓÕÔÓ×ÕÅÔ ×ÙÒÁÖÅÎÉÅ
+39 îÅÉÚ×ÅÓÔÎÙÊ ÏÐÅÒÁÔÏÒ
+40 îÅÏÄÎÏÚÎÁÞÎÏ
+41 %s: æÁÊÌ ÓÕÝÅÓÔ×ÕÅÔ
+42 Argument for -c ends in backslash
+43 ðÒÅÒ×ÁÎÏ
+44 Subscript out of range
+45 ðÅÒÅÐÏÌÎÅÎÉÅ ÓÔÒÏËÉ
+46 îÅÔ ÔÁËÏÇÏ ÚÁÄÁÎÉÑ
+47 Can't from terminal
+48 Not in while/foreach
+49 îÅÔ ÂÏÌØÛÅ ÐÒÏÃÅÓÓÏ×
+50 No match
+51 ïÔÓÕÔÓÔ×ÕÅÔ %c
+52 Unmatched %c
+53 îÅÔ ÐÁÍÑÔÉ
+54 îÅ ÍÏÇÕ ÓÏÚÄÁÔØ ÎÅÉÍÅÎÏ×ÁÎÎÙÊ ËÁÎÁÌ
+55 %s: %s
+56 %s
+57 éÓÐÏÌØÚÏ×ÁÎÉÅ: jobs [ -l ]
+58 áÒÇÕÍÅÎÔÙ ÄÏÌÖÎÙ Ñ×ÌÑÔØÓÑ ÉÄÅÎÔÉÆÉËÁÔÏÒÁÍÉ ÚÁÄÁÎÉÊ ÉÌÉ ÐÒÏÃÅÓÓÏ×
+59 îÅÔ ÔÅËÕÝÅÇÏ ÚÁÄÁÎÉÑ
+60 îÅÔ ÐÒÅÄÙÄÕÝÅÇÏ ÚÁÄÁÎÉÑ
+61 úÁÄÁÎÉÅ ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÅÅ ÛÁÂÌÏÎÕ ÏÔÓÕÔÓÔ×ÕÅÔ
+62 Fork nesting > %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] [<capability> [<args>]]
+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 0000000..8f4ac87
--- /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 0000000..164b2a0
--- /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 0000000..29714f8
--- /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 0000000..5eaebd0
--- /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 0000000..6014f28
--- /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 0000000..d4847a4
--- /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 0000000..cd03c74
--- /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 0000000..b5bd47a
--- /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 0000000..5babefe
--- /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 0000000..4082647
--- /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 0000000..d11f834
--- /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 0000000..8d1795e
--- /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 0000000..75533f8
--- /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 0000000..583af3a
--- /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 0000000..8802ad5
--- /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 0000000..dffed27
--- /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 0000000..481ecfd
--- /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 0000000..e680370
--- /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 0000000..475cde2
--- /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 0000000..66b554b
--- /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 0000000..70bcd78
--- /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 0000000..9aa0fe3
--- /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 0000000..ca8c9db
--- /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 0000000..53396bc
--- /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 0000000..c237e84
--- /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 0000000..73367a8
--- /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 0000000..490c637
--- /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 0000000..bf5b6af
--- /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 0000000..62320bc
--- /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 8359f1d..3709ce4 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 be8016a..196a8eb 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 88055f3..712b73f 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 aca3537..71a0db7 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 0bfa256..824680c 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));
@@ -676,6 +680,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
*/
if ((tcp = getenv("PATH")) == NULL)
@@ -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 fe32777..bb028b7 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 d5286d4..c383d0d 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 4fd433d..e3da422 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 fd0adfd..de2e9d0 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 5d13270..abad1c1 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 b26ea8e..a2e8989 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 <sys/resource.h>. 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 0af5825..2b39c76 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 55ed4cc..0e2c6fa 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 <sys/cnx_stat.h>
# 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 <limits.h>
#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 <time.h>
# ifdef _MINIX
@@ -544,7 +544,7 @@ extern void DebugFree __P((ptr_t, char *, int));
# if defined(SCO) && (SYSVREL > 3)
# include <sys/socket.h>
# 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 c35bba9..ea4f271 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 940df88..2ff1399 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 d4bc2f5..fbe3559 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 45d0cb8..cb71724 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 <machine/param.h>
@@ -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 635ea31..883efc6 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 a0d29a1..c4b1917 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 410f851..505830b 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 d2b044e..7643251 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 a056ac5..361eb9a 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 fd711f6..ad3def9 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 <dcs@proton.chem.yale.edu>
#
@@ -820,7 +820,7 @@ only the word "help".
<A HREF="TOPFILEHERE">Up</A>
</BODY>
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 66d9648..de87c75 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 722509b..abfaa8c 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;
OpenPOWER on IntegriCloud