1New features with AN-2015-09-03: 2 3This is the first localization step for the schily source consolidation. Many 4programs now (hopefully) call gettext() for all strings that need localization. 5 6- The next step will include dgettext() calls for the libraries and the 7 missing programs 8 9- The following step will include the extracted strings 10 11- The last step will include German translations and install support 12 for the resulting binary message object files. 13 14----------> Please test and report compilation problems! <--------- 15 16***** NOTE: As mentioned since 2004, frontends to the tools should ***** 17***** call all programs in the "C" locale ***** 18***** by e.g. calling: LC_ALL=C cdrecord .... ***** 19***** unless these frontends support localized strings ***** 20***** used by the cdrtools with NLS support. ***** 21 22 *** WARNING *** 23 *** Need new smake *** 24 25 *** Due to the fact that schily-tools 2014-04-03 introduced to use new macro 26 *** expansions and a related bug fix in smake, you need a new smake 27 *** to compile this source. To ensure this, call: 28 29 cd ./psmake 30 ./MAKE-all 31 cd .. 32 psmake/smake 33 psmake/smake install 34 35 36 WARNING: the new version of the isoinfo program makes use of the 37 *at() series of functions that have been introduced by Sun 38 in August 2001 and added to POSIX.1-2008. For older platforms, 39 libschily now includes emulations for these functions but 40 these emulations have not yet been tested thoroughly. 41 Please report problems! 42 43 The new smake version mentioned above is smake-1.2.4 44 45- Bourne Shell: Support for set -o bgnice was aded 46 47- Bourne Shell: Support for set -o ignoreeof was added 48 49- Bourne Shell: Support for set -b / set -o notify was added. 50 There is currenly no related function in the shell. 51 52- Bourne Shell: Support for export -p name=value and readonly -p name=value 53 was added, making this interface POSIX compliant. 54 55- Bourne Shell: Fixed a job control problem we introduced with reordering 56 code in jobs.c. (exec ps) will no longer cause the shell to die on SIGTTIN. 57 58- Bourne Shell: Added a workaround for Linux for the above SIGTTIN problem 59 that exists because Linux comed with an incomplete waitid() implementation 60 where WNOWAIT is not supported. 61 62- Bourne Shell: the output from set -o is now sorted. 63 64- Bourne Shell: unset(1) now supports the POSIX options -f and -v. 65 66- Bourne Shell: getopts(1) now supports long-only options (long options 67 with no related short option). To set up a long-only option, replace the 68 short option letter by "?ddd?", where ddd is a decimal number that should 69 be >= 256. if you call: 70 71 getopts "?9000?(long)" XOPT 72 73 in a script and the script is called with "--long" as an argument, then 74 getopts places the value "9000" in the shell variable "XOPT". 75 76- Bourne Shell: some code that should have been #ifdef'd is now in proper 77 #ifdef statements to help to reduce the size of "osh". 78 79- "osh": We no longer use the waitid() emulation if the platform comes 80 with a working waitid() implementation. This helps to reduce the 81 size of osh. 82 83- bsh / Bourne Shell: a Typo in abbrev.c was fixed and the Bourne Shell is 84 now able to link without libschily in case the platform supports snprintf(). 85 86- bsh / Bourne Shell (libshedit): The method to store multi line commands 87 such as: 88 89 if true 90 then 91 echo ok 92 fi 93 94 was modified to work with bsh and Bourne Shell. Now the ANSI-NL character 95 is only used in the history file; the history editor uses a \n displayed 96 as ^J as the "line end" character between the lines from the previous 97 command. 98 99- libgetopt now supports long only options. See getopts(1) above for more 100 information. 101 102- libshedit: New interface function shedit_igneof() to set up a function 103 pointer that returns != 0 in case the shell was set up with 104 "set -o ignoreeof" 105 106- Bourne Shell: The builtin commands no longer use getopt() but the new 107 optget() that maintains state and thus makes the implementation more 108 readable than with the previous code that has the state management code 109 visible in every builtin command. 110 111- bsh libshedit (Bourne Shell): a bug in inputc.c was fixed that could 112 cause a coredump if a command line was longer than 512 chars. This was 113 because of a typo the numbe of bytes was used for the available 114 length nstead of the number of wchar_t entries in an array. 115 116 117- The following builtins (that are available in bsh) are still missing in 118 the Bourne Shell: 119 120 err echo with output going to stderr 121 glob echo with '\0' instead of ' ' between args 122 env a builtin version of /usr/bin/env 123 124 The following bsh intrinsics are still missing in the Bourne Shell: 125 126 - the restricted bsh has restriction features that 127 are missing in the Bourne shell. 128 129 - source -h read file into history but do not excute 130 131 and probably more features not yet identified to be bsh unique. 132 133 134 135Author: 136 137Joerg Schilling 138D-13353 Berlin 139Germany 140 141Email: joerg@schily.net, js@cs.tu-berlin.de 142 joerg.schilling@fokus.fraunhofer.de 143 144Please mail bugs and suggestions to me. 145