⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 changelog

📁 一个开放源代码的 AT&T 的 Korn Shell 的复制品, 支持大多数 ksh89 的特性。
💻
📖 第 1 页 / 共 4 页
字号:
Fri May 16 11:40:22 NDT 1997 Michael Rendell (michael@panda.cs.mun.ca)	* io.c(error_prefix): don't print kshname if it is the	  same as the source file name.Thu Mar 13 10:42:31 NST 1997 Michael Rendell (michael@panda.cs.mun.ca)	* mail.c(mbset): save a copy of the path so it can't get trashed	  (eg, by exporting a varibale).Wed Feb 26 11:24:06 NST 1997 Michael Rendell (michael@panda.cs.mun.ca)	* emacs.c(x_prev_histword): get word from last command entered,	  not from last command relative to current location in history	  (fix from Greg A. Woods).Sun Feb 16 13:18:52 NST 1997 Michael Rendell (michael@panda.cs.mun.ca)	* sh.h(FTALKING_I): new define	* misc.c(options[]): added anonymous options for internal use:	  changed all code using options to not assume null option name	  is the end of options (use NELEM()) instead.	  Added slot for FTALKING_I	* c_sh.c(c_read), exec.c(iosetup): test FTALKING_I instead of FTALKING.	* main.c(main): set FTALKING_I.Fri Jan 10 16:36:36 NST 1997 Michael Rendell (michael@panda.cs.mun.ca)	* jobs.c(exchild): use orig_flags instead of flags when testing	  XPIPEI/XPIPEO; clear all flags except XEXEC and XERROK.Tue Jan  7 11:16:08 NST 1997 Michael Rendell (michael@panda.cs.mun.ca)	* lex.h(yynerrs): deleted (not used); deleted all assignments of it.Fri Jan  3 13:40:29 NST 1997 Michael Rendell (michael@panda.cs.mun.ca)	* lex.c(yylex): case STBRACE: interpret ( | ) as patterns;	  case SPATTERN: allow ( as an alias for @(.Thu Jan  2 15:44:07 NST 1997 Michael Rendell (michael@panda.cs.mun.ca)	* main.c(main): set PATH to def_path in startup.Thu Jan  2 10:19:43 NST 1997 Michael Rendell (michael@panda.cs.mun.ca)	* exec.c(comexec): ifdef KSH the setting of $_; only set $_ to	  last arg if interactive.Wed Jan  1 13:38:26 NST 1997 Michael Rendell (michael@panda.cs.mun.ca)	* lex.c(yylex),eval.c(expand),tree.c(tputS,wdscan,wdstrip):	  changed OSUBST/CSUBST encoding to have { or x after xSUBST.	* lex.c(yylex): case ${: don't prepend @( and append ) to trim patterns.	* eval.c(expand): prepend MAGIC @ and append MAGIC ) to trim patterns.	* syn.c(function_body): call wdstrip().	* tree.c(wdstrip): new function.	* lex.c(yylex): moved handling of < and > into one location.Wed Dec 11 13:00:05 NST 1996 Michael Rendell (michael@panda.cs.mun.ca)	* sh.h(ksheuid): new variable.	* main.c(main): set/use ksheuid.	* misc.c(change_flag): set ksheuid.	* c_test.c(test_eval): use ksheuid	* c_test.c(test_eaccess): if doing X_OK and user is root, use	  stat to avoid false positives on files.Mon Dec  9 12:08:56 NST 1996 Michael Rendell (michael@panda.cs.mun.ca)	* main.c(main): save/clear/restore FERREXIT flag while processing	  profile and ENV.Wed Dec  4 12:25:23 NST 1996 Michael Rendell (michael@panda.cs.mun.ca)	* misc.c(parse_args): change -A option handling - make getopts	  gather the option (A: vs A).Thu Nov 21 15:42:57 NST 1996 Michael Rendell (michael@panda.cs.mun.ca)	* c_ksh.c(c_alias): accept + options; don't print alias definition	  if + option used; allow export flag to be cleared; added -p	  option.Thu Nov 21 14:35:47 NST 1996 Michael Rendell (michael@panda.cs.mun.ca)	* tree.c(ptree),c_ksh.c(c_typeset): print ksh functions as	  "function foo...", sh functions as "foo()...".	* c_ksh.c(c_typeset): accept -p flag (does nothing).Wed Nov 20 11:36:08 NST 1996 Michael Rendell (michael@panda.cs.mun.ca)	* c_ksh.c(c_typeset): simplified option exclusion code.	* misc.c(ksh_getopt): allow options in same command line to start	  with either + or - (if appropriate).  [code existed to similate	  ksh88 typeset behaviour which disallowed "typeset +x -i foo"]Wed Nov 13 12:02:59 NST 1996 Michael Rendell (michael@panda.cs.mun.ca)	* syn.c(c_list): added multi argument; changed all calls to pass	  TRUE, except one in yyparse(); changed logic to accept and	  ignore blank lines if multi flag is set.	* syn.c(get_command): removed multiline.on/cf=CONTIN test/assignment.	* syn.c(struct multiline_state,struct nesting_state,multiline,nesting,	  multiline_push,multiline_pop,nesting_push,nesting_pop): renamed	  *multiline* to *nesting*; removed struct multiline_state.on field	  (deleted all references).Mon Nov  4 16:29:50 NST 1996 Michael Rendell (michael@panda.cs.mun.ca)	* c_test.c(c_test): in special < 5 arg code: if single arg is	  -t and not in FPOSIX mode, don't decide its a string test.Wed Oct 30 11:34:39 NST 1996 Michael Rendell (michael@panda.cs.mun.ca)	* main.c(include): call quitenv() after shf_close()	  (fix from Eric J. Chet).Wed Oct 30 11:23:17 NST 1996 Michael Rendell (michael@panda.cs.mun.ca)	* exec.c(comexec): case CFUNC: set $0 to kshname if non-function	  function.Tue Oct 29 11:34:58 NST 1996 Michael Rendell (michael@panda.cs.mun.ca)	* made pdksh-5.2.12 distributionFri Oct 25 11:59:48 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* vi.c(vi_cmd): case Cntl('i'): dont fall through, call complete_word().Tue Oct 22 17:38:21 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* table.h(USERATTRIB): new define.	* c_ksh.c(c_typeset): report unset params only if it has some	  interesting attributes.Tue Oct 22 15:54:39 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* jobs.c(exchild): changed NEED_PGRP_SYNC code so j_sync_pipe[1] isn't	  left open in 2nd+ children.Tue Oct 22 12:59:49 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* main.c(main): memset() env to 0.Mon Oct 21 12:53:44 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* main.c(cleanup_proc_env): new function.	* exec.c(execute): call cleanup_proc_env() before calling ksh_execve().Fri Oct 11 22:53:57 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* vi.c(display): use ch not e->buf[cur] when printing character.Fri Oct 11 13:26:11 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* aclocal.m4(KSH_TIMES_CHECK,KSH_DUP2_CLEXEC_CHECK,KSH_OPENDIR_CHECK):	  changed sense of test so "yes" result is printed if you have a good	  system.	* aclocal.m4(KSH_C_FUNC_ATTR): changed return type of test_cnst to int.Fri Oct 11 13:05:40 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* syn.c(get_command): added inalias() call when setting cf = CONTIN.Thu Oct 10 16:22:03 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* lex.c(getsc__): case SALIAS: if we read eof, break, don't continue.Tue Oct  8 13:14:00 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* aclocal.m4(KSH_TERM): added SYS_IOCTL_WITH_TERMIOS,	  SYS_IOCTL_WITH_TERMIO tests.	* tty.h: include <sys/ioctl.h> with <termios.h>/<termio.h>	  if possible.Tue Oct  8 11:42:36 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* made pdksh-5.2.11 distributionTue Oct  8 11:02:54 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* syn.c(inalias): new function.	* syn.c(c_list): call inalias() instead of testing source->type.Mon Oct  7 17:00:40 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* made pdksh-5.2.10 distributionMon Oct  7 16:23:53 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* c_sh.c(c_read): when printing prompt, use isatty, not FTALKING.Wed Oct  2 12:00:51 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* lex.c(yylex): redirection stuff: save result of getsc() == '-'	  and use it for ungetsc().	* lex.h(struct source): moved ugbuf out of union so it can be used	  with alias stuff.	* lex.c(getsc__) case SALIAS: instead of appending a space, get the	  next character and stuff it in ugbuf.	* lex.c(getsc_,getsc__): getsc_() renamed to getsc__().	* lex.c(getsc_,getsc): getsc() macro renamed to getsc_().	* lex.c(backslash_skip,ignore_backslash_newline): new variables.	* lex.c(getsc): new macro that checks backslash_skip.	* lex.c(getsc_bn_,getsc_bn): getsc_bn() macro deleted (all calls	  replaced with getsc()); getsc_bn_ renamed to getsc_bn.	* lex.c(ungetsc_,ungetsc): ungetsc() macro deleted; renamed ungetsc_()	  to ungetsc().	* lex.c(yylex,ungetsc,getsc_bn): set and use backslash_skip,	  ignore_backslash_newline.	* lex.c(yylex): removed special cases for backslash-newline sequence,	  explicitly ignore backslash followed by eof.Mon Sep 30 17:14:41 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* made pdksh-5.2.9 distributionMon Sep 30 12:52:21 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* lex.c(pprompt): fixed usage of ntruncate.Thu Sep 19 17:43:33 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* sh.h(KSH_SYSTEM_PROFILE): new define.	* main.c(main): use KSH_SYSTEM_PROFILE.	* aclocal.m4(KSH_OS_TYPE): added case for NEXT.Thu Sep 19 15:39:54 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* tty.c(tty_init): added hack for NeXT's rlogin's missing controlling	  tty.Mon Sep 16 11:18:10 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* edit.c(add_glob): don't append a * to a ~username.	 	* edit.c(x_init): set got_sigwinch before calling check_sigwinch().Wed Sep 11 14:38:38 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* c_ksh.c(c_let): ifdef'd KSH.	* lex.h(SDPAREN),lex.c: ifdef'd KSH all uses of SDPAREN.	* lex.h(MDPAREN),syn.c: ifdef'd KSH all uses of MDPAREN.Mon Sep  9 16:18:03 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* aclocal.m4(AC_PROG_CC): replaced autoconf's version with	  modified version.	* configure.in(clock_t): check in sys/time.h as well.	* ksh_times.h: include ksh_time.h.	* ksh_time.h,ksh_times.h: added ifndef KSH_TIME_H/KSH_TIMES_H.Fri Sep  6 13:20:24 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* edit.c(promptlen): X\r hack for delimiting hidden characters	  in prompt.	  (Based on fix from Bill Kish)Tue Sep  3 11:03:26 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* Makefile.in: removed options.h from HDRS (also removed file).Thu Aug 29 10:04:01 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* aclocal.m4(KSH_MEMMOVE): added return 0 to end of main().Fri Aug 23 14:23:50 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* aclocal.m4,ksh_stat.h: changed S_IFFIFO to S_IFIFO.Fri Aug 23 09:58:09 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* var.c(skip_wdvarname): don't check for array if first char	  isn't [.Thu Aug 22 12:51:25 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* jobs.c: added ifdef KSH around Coproc_id/j->coproc_id usagae.	* c_ksh.c(c_read): added ifdef KSH around opipe.Tue Aug 20 09:41:32 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* configure.in: fixed quoting of sed LDSTATIC expression.Mon Aug 19 14:26:08 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* made pdksh-5.2.8 distributionMon Aug 19 11:38:16 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* table.c(texpand): don't free entry if FINUSE is set.	* var.c(unset): preserve ARRAY and DEFINED if unsetting foo[0].Thu Aug 15 15:08:52 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* jobs.c(sm_sigchld,sm_default): moved to sh.h.	* sh.h(Coproc_id, struct coproc): new typedef; added njobs and 	  id fields to struct coproc.	* exec.c(execute): case TCOPROC: re-did coprocess stuff to use	  njobs/coprocess id.	* jobs.c(struct Job): added coproc_id field.	* jobs.c(exchild): initialize coproc_id to 0; set job coproc_id	  and increment coproc.njobs in parent.	* jobs.c(checkjob): check coproc_id and close co-process input/output	  if needed.	* exec.c(iosetup): only play with coprocess fds if this is an	  empty exec.	* c_sh.c(c_read): commented out coproc_readw_close() call and eof call.	* c_ksh.c(c_print): commented out closing coprocess fd on EPIPE.	* jobs.c(exchild): in parent, last part of job: use orig_flags (not	  flags) when checking XCOPROC.Thu Aug 15 15:00:42 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* io.c(get_coproc_fd,cleanup_coproc): renamed to coproc_getfd() and	  coproc_cleanup(), respecitively; changed all calls.Tue Aug 13 16:56:59 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* expr.c(O_COMMA,P_COMMA): new enums.	* expr.c(evalexpr): added case for O_COMMA.Tue Aug 13 15:18:28 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* expr.c(do_ppmm): new function to handle ++/--.	* expr.c(evalexpr): call do_ppmm() in P_PRIMARY code.	* expr.c(LAST_BINOP): deleted.	* expr.c(IS_BINOP): new define.	* expr.c(evalexpr): use IS_BINOP.	* expr.c(O_PLUSPLUS,O_MINUSMUNS,opinfo[]): new enums; updated opinfo	* expr.c(ET_LVALUE,ET_RDONLY): new enums.	* expr.c(token): var code: don't increment cp in iter part of for loop,	  do it in body; don't correct for off by 1 in array or !noasign code.	* table.h(EXPRLVALUE): new define.	* expr.c(token): var code: set EXPRLVALUE flag if noassign.	* expr.c(intvar): copy temp var if EXPRLVALUE set.	* expr.c(assign_check): new function.	* expr.c(evalexpr): if assign-op, call assign_check().Tue Aug 13 11:02:32 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* vi.c(do_comment),edit.c(x_do_comment): made do_comment generic,	  renamed and moved to edit.c; changed all calls.	* emacs.c(x_ftab[]): added x_comment.	* emacs.c(x_defbindings[]): added XFUNC_comment as <esc>#.	* emacs.c(x_comment): new function.Mon Aug 12 16:13:36 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* expr.c(ET_BADVAR): deleted.	* expr.c(ET_RECURSIVE, struct expr.evaling),table.h(EXPRNEVAL): added.	* expr.c(v_evaluate): if curstate.evaling set, clear EXPRINEVAL.	* expr.c(evalerr): added ET_RECURSIVE case, removed ET_BADVAR case.	* expr.c(intvar): do recursion check, call v_evaluate() on value.Mon Aug 12 14:25:23 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* io.c(coproc_read_close): call coproc_readw_close() instead of	  duplicating code.Mon Aug 12 11:21:39 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* edit.c(x_locate_word): changed to allow at most 1 leading blank	  before the word.	* edit.c(x_file_glob,x_command_glob,add_glob): allow zero length word.	* edit.c(x_cf_glob): allow zero length globs on when doing file	  completion.	* edit.c(x_complete_word): #if 0 - it isn't used...	* edit.c(x_file_glob,x_command_glob,x_locate_word): made static.	* eval.c(varsub): changed FNOUNSET error from "unset variable"	  to "parameter no set", ala at&t ksh.	* c_ksh.c(c_typeset): print variables that aren't set (just	  leave out the =...).Mon Aug 12 11:03:22 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* exec.c(findfunc): removed redundent DEFINED check after tsearch().Fri Aug  9 22:16:21 NDT 1996 Michael Rendell (michael@panda.cs.mun.ca)	* jobs.c(j_change): when turning off FMONITOR and not FTALKING,

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -