R/R-2.4.0-patched-2006-11-03....

10077 lines
364 KiB
Diff
Raw Normal View History

2006-11-04 06:19:59 +00:00
diff -urp R-2.4.0.old/config.site R-2.4.0/config.site
--- R-2.4.0.old/config.site 2006-09-04 09:41:48.000000000 -0500
+++ R-2.4.0/config.site 2006-10-28 14:36:13.000000000 -0500
@@ -43,12 +43,16 @@
## If unspecified, a search is made for gcc and cc (in that order).
## To override this choice, specify the name of the command which runs
## the compiler here, for example 'c89'.
+## It is also convenient to set the architecture here, e.g. 'gcc -m32'.
+## NB, as from R 2.5.0 configure will append flags for C99 compliance,
+## e.g. CC=gcc -std=gnu99
+## To avoid this, set contradictory flags (such as -ansi) as part of CFLAGS.
## CC=
## Debugging and optimization options for the C compiler.
## Use this to specify CFLAGS for the version of the C compiler
## specified above.
-## If unspecified, defaults to '-g -O2 -std=gnu99' for gcc,
+## If unspecified, defaults to '-g -O2' for gcc,
## and '-g' in all other cases except icc (for which see R-admin.html).
## CFLAGS=
diff -urp R-2.4.0.old/configure R-2.4.0/configure
--- R-2.4.0.old/configure 2006-10-03 05:01:50.000000000 -0500
+++ R-2.4.0/configure 2006-11-03 19:41:47.000000000 -0600
@@ -4629,6 +4629,182 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS con
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
+## next is a macro borrowed from autoconf 2.60
+ echo "$as_me:$LINENO: checking for $CC option to accept ISO C99" >&5
+echo $ECHO_N "checking for $CC option to accept ISO C99... $ECHO_C" >&6
+if test "${ac_cv_prog_cc_c99+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_cv_prog_cc_c99=no
+ac_save_CC=$CC
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <stdarg.h>
+#include <stdbool.h>
+#include <stdlib.h>
+#include <wchar.h>
+#include <stdio.h>
+
+struct incomplete_array
+{
+ int datasize;
+ double data[];
+};
+
+struct named_init {
+ int number;
+ const wchar_t *name;
+ double average;
+};
+
+typedef const char *ccp;
+
+static inline int
+test_restrict(ccp restrict text)
+{
+ // See if C++-style comments work.
+ // Iterate through items via the restricted pointer.
+ // Also check for declarations in for loops.
+ for (unsigned int i = 0; *(text+i) != '\0'; ++i)
+ continue;
+ return 0;
+}
+
+// Check varargs and va_copy work.
+static void
+test_varargs(const char *format, ...)
+{
+ va_list args;
+ va_start(args, format);
+ va_list args_copy;
+ va_copy(args_copy, args);
+
+ const char *str;
+ int number;
+ float fnumber;
+
+ while (*format)
+ {
+ switch (*format++)
+ {
+ case 's': // string
+ str = va_arg(args_copy, const char *);
+ break;
+ case 'd': // int
+ number = va_arg(args_copy, int);
+ break;
+ case 'f': // float
+ fnumber = (float) va_arg(args_copy, double);
+ break;
+ default:
+ break;
+ }
+ }
+ va_end(args_copy);
+ va_end(args);
+}
+
+int
+main ()
+{
+
+ // Check bool and long long datatypes.
+ _Bool success = false;
+ long long int bignum = -1234567890LL;
+ unsigned long long int ubignum = 1234567890uLL;
+
+ // Check restrict.
+ if (test_restrict("String literal") != 0)
+ success = true;
+ char *restrict newvar = "Another string";
+
+ // Check varargs.
+ test_varargs("s, d' f .", "string", 65, 34.234);
+
+ // Check incomplete arrays work.
+ struct incomplete_array *ia =
+ malloc(sizeof(struct incomplete_array) + (sizeof(double) * 10));
+ ia->datasize = 10;
+ for (int i = 0; i < ia->datasize; ++i)
+ ia->data[i] = (double) i * 1.234;
+
+ // Check named initialisers.
+ struct named_init ni = {
+ .number = 34,
+ .name = L"Test wide string",
+ .average = 543.34343,
+ };
+
+ ni.number = 58;
+
+ int dynamic_array[ni.number];
+ dynamic_array[43] = 543;
+
+ // work around unused variable warnings
+ return bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x';
+
+ ;
+ return 0;
+}
+_ACEOF
+for ac_arg in '' -std=gnu99 -c99 -qlanglvl=extc99
+do
+ CC="$ac_save_CC $ac_arg"
+ rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_prog_cc_c99=$ac_arg
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext
+ test "x$ac_cv_prog_cc_c99" != "xno" && break
+done
+rm -f conftest.$ac_ext
+CC=$ac_save_CC
+
+fi
+# AC_CACHE_VAL
+case "x$ac_cv_prog_cc_c99" in
+ x)
+ echo "$as_me:$LINENO: result: none needed" >&5
+echo "${ECHO_T}none needed" >&6 ;;
+ xno)
+ echo "$as_me:$LINENO: result: unsupported" >&5
+echo "${ECHO_T}unsupported" >&6 ;;
+ *)
+ CC="$CC $ac_cv_prog_cc_c99"
+ echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c99" >&5
+echo "${ECHO_T}$ac_cv_prog_cc_c99" >&6 ;;
+esac
+
+
+
ac_ext=c
@@ -5352,7 +5528,7 @@ fi
# Provide some information about the compiler.
-echo "$as_me:5355:" \
+echo "$as_me:5531:" \
"checking for Fortran 77 compiler version" >&5
ac_compiler=`set X $ac_compile; echo $2`
{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
@@ -6181,8 +6357,8 @@ if test "${r_cv_prog_cc_vis}" = yes; the
fi
fi
case "${CC}" in
- ## Intel compiler
- *icc)
+ ## Intel compiler: note that -c99 may have been appended
+ *icc*)
C_VISIBILITY=
;;
esac
@@ -6794,7 +6970,7 @@ ia64-*-hpux*)
;;
*-*-irix6*)
# Find out which ABI we are using.
- echo '#line 6797 "configure"' > conftest.$ac_ext
+ echo '#line 6973 "configure"' > conftest.$ac_ext
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?
@@ -8235,11 +8411,11 @@ else
-e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:8238: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:8414: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:8242: \$? = $ac_status" >&5
+ echo "$as_me:8418: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings
@@ -8468,11 +8644,11 @@ else
-e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:8471: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:8647: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:8475: \$? = $ac_status" >&5
+ echo "$as_me:8651: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings
@@ -8528,11 +8704,11 @@ else
-e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:8531: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:8707: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:8535: \$? = $ac_status" >&5
+ echo "$as_me:8711: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -10712,7 +10888,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 10715 "configure"
+#line 10891 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -10810,7 +10986,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 10813 "configure"
+#line 10989 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -12990,11 +13166,11 @@ else
-e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:12993: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:13169: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:12997: \$? = $ac_status" >&5
+ echo "$as_me:13173: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings
@@ -13050,11 +13226,11 @@ else
-e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:13053: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:13229: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:13057: \$? = $ac_status" >&5
+ echo "$as_me:13233: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -14411,7 +14587,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 14414 "configure"
+#line 14590 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -14509,7 +14685,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 14512 "configure"
+#line 14688 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -15336,11 +15512,11 @@ else
-e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:15339: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:15515: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:15343: \$? = $ac_status" >&5
+ echo "$as_me:15519: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings
@@ -15396,11 +15572,11 @@ else
-e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:15399: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:15575: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:15403: \$? = $ac_status" >&5
+ echo "$as_me:15579: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -17430,11 +17606,11 @@ else
-e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:17433: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:17609: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:17437: \$? = $ac_status" >&5
+ echo "$as_me:17613: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings
@@ -17663,11 +17839,11 @@ else
-e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:17666: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:17842: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
- echo "$as_me:17670: \$? = $ac_status" >&5
+ echo "$as_me:17846: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings
@@ -17723,11 +17899,11 @@ else
-e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
- (eval echo "\"\$as_me:17726: $lt_compile\"" >&5)
+ (eval echo "\"\$as_me:17902: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
- echo "$as_me:17730: \$? = $ac_status" >&5
+ echo "$as_me:17906: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -19907,7 +20083,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 19910 "configure"
+#line 20086 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -20005,7 +20181,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<EOF
-#line 20008 "configure"
+#line 20184 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -26291,96 +26467,6 @@ _ACEOF
-if test "$ac_test_CFLAGS" != set; then
- if test "$GCC" = yes; then
- ac_safe=_std_gnu99
-echo "$as_me:$LINENO: checking whether ${CC} accepts -std=gnu99" >&5
-echo $ECHO_N "checking whether ${CC} accepts -std=gnu99... $ECHO_C" >&6
-if eval "test \"\${r_cv_prog_cc_flag_${ac_safe}+set}\" = set"; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-r_save_CFLAGS="${CFLAGS}"
-CFLAGS="${CFLAGS} -std=gnu99"
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h. */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h. */
-
-int
-main ()
-{
-
- ;
- return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
- (eval $ac_link) 2>conftest.er1
- ac_status=$?
- grep -v '^ *+' conftest.er1 >conftest.err
- rm -f conftest.er1
- cat conftest.err >&5
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); } &&
- { ac_try='test -z "$ac_c_werror_flag"
- || test ! -s conftest.err'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; } &&
- { ac_try='test -s conftest$ac_exeext'
- { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- echo "$as_me:$LINENO: \$? = $ac_status" >&5
- (exit $ac_status); }; }; then
- eval "r_cv_prog_cc_flag_${ac_safe}=yes"
-else
- echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-eval "r_cv_prog_cc_flag_${ac_safe}=no"
-fi
-rm -f conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-CFLAGS="${r_save_CFLAGS}"
-ac_ext=c
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-ac_compiler_gnu=$ac_cv_c_compiler_gnu
-
-
-fi
-
-if eval "test \"`echo '$r_cv_prog_cc_flag_'$ac_safe`\" = yes"; then
- echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6
- separator=""
-test -z "${separator}" && separator=" "
-if test -z "${CFLAGS}"; then
- CFLAGS="-std=gnu99"
-else
- CFLAGS="${CFLAGS}${separator}-std=gnu99"
-fi
-else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
- fi
-fi
-
echo "$as_me:$LINENO: checking whether we can compute C Make dependencies" >&5
echo $ECHO_N "checking whether we can compute C Make dependencies... $ECHO_C" >&6
@@ -26535,7 +26621,7 @@ _ACEOF
# flags.
ac_save_FFLAGS=$FFLAGS
FFLAGS="$FFLAGS $ac_verb"
-(eval echo $as_me:26538: \"$ac_link\") >&5
+(eval echo $as_me:26624: \"$ac_link\") >&5
ac_f77_v_output=`eval $ac_link 5>&1 2>&1 | grep -v 'Driving:'`
echo "$ac_f77_v_output" >&5
FFLAGS=$ac_save_FFLAGS
@@ -26613,7 +26699,7 @@ _ACEOF
# flags.
ac_save_FFLAGS=$FFLAGS
FFLAGS="$FFLAGS $ac_cv_prog_f77_v"
-(eval echo $as_me:26616: \"$ac_link\") >&5
+(eval echo $as_me:26702: \"$ac_link\") >&5
ac_f77_v_output=`eval $ac_link 5>&1 2>&1 | grep -v 'Driving:'`
echo "$ac_f77_v_output" >&5
FFLAGS=$ac_save_FFLAGS
@@ -26859,7 +26945,7 @@ _ACEOF
# flags.
r_save_CFLAGS=$CFLAGS
CFLAGS="$CFLAGS $r_verb"
-(eval echo $as_me:26862: \"$ac_link\") >&5
+(eval echo $as_me:26948: \"$ac_link\") >&5
r_c_v_output=`eval $ac_link 5>&1 2>&1 | grep -v 'Driving:'`
echo "$r_c_v_output" >&5
CFLAGS=$r_save_CFLAGS
@@ -26941,7 +27027,7 @@ _ACEOF
# flags.
r_save_CFLAGS=$CFLAGS
CFLAGS="$CFLAGS $r_cv_prog_c_v"
-(eval echo $as_me:26944: \"$ac_link\") >&5
+(eval echo $as_me:27030: \"$ac_link\") >&5
r_c_v_output=`eval $ac_link 5>&1 2>&1 | grep -v 'Driving:'`
echo "$r_c_v_output" >&5
CFLAGS=$r_save_CFLAGS
@@ -29188,7 +29274,7 @@ fi
linux*)
case "${CC}" in
## Intel compiler
- *icc)
+ *icc*)
## icc declares __GNUC__, so it picks up CFLAGS intended for gcc.
if test "$ac_test_CFLAGS" != set; then
if test $ac_cv_prog_cc_g = yes; then
@@ -29922,12 +30008,12 @@ echo "$as_me: WARNING: Use of flat names
;;
linux*) # GNU Linux/ELF
case "${CC}" in
- ## Intel compiler
- *icc)
+ ## Intel compiler: note that -c99 may have been appended
+ *icc*)
cpicflags="-fpic"
;;
## Portland Group
- *pgcc)
+ *pgcc*)
cpicflags="-fpic"
;;
esac
@@ -37985,7 +38071,7 @@ ac_x_header_dirs='
/usr/openwin/share/include'
if test "$ac_x_includes" = no; then
- # Guess where to find include files, by looking for Intrinsic.h.
+ # Guess where to find include files, by looking for Xlib.h.
# First, try using that file with no special directory specified.
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
@@ -37993,7 +38079,7 @@ _ACEOF
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
-#include <X11/Intrinsic.h>
+#include <X11/Xlib.h>
_ACEOF
if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
(eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
@@ -38020,7 +38106,7 @@ else
sed 's/^/| /' conftest.$ac_ext >&5
for ac_dir in $ac_x_header_dirs; do
- if test -r "$ac_dir/X11/Intrinsic.h"; then
+ if test -r "$ac_dir/X11/Xlib.h"; then
ac_x_includes=$ac_dir
break
fi
@@ -38041,7 +38127,7 @@ _ACEOF
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
-#include <X11/Intrinsic.h>
+#include <X11/Xlib.h>
#ifdef F77_DUMMY_MAIN
# ifdef __cplusplus
@@ -38053,7 +38139,7 @@ cat >>conftest.$ac_ext <<_ACEOF
int
main ()
{
-XtMalloc (0)
+XrmInitialize ()
;
return 0;
}
@@ -43510,6 +43596,7 @@ echo "${ECHO_T}in ${JAVA_HOME}" >&6
case "${host_os}" in
darwin*)
JAVA_LIBS="-framework JavaVM"
+ JAVA_LIBS0="-framework JavaVM"
JAVA_LD_LIBRARY_PATH=
;;
*)
@@ -43659,7 +43746,7 @@ fi
# Provide some information about the compiler.
-echo "$as_me:43662:" \
+echo "$as_me:43748:" \
"checking for Fortran compiler version" >&5
ac_compiler=`set X $ac_compile; echo $2`
{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
diff -urp R-2.4.0.old/configure.ac R-2.4.0/configure.ac
--- R-2.4.0.old/configure.ac 2006-09-22 21:05:11.000000000 -0500
+++ R-2.4.0/configure.ac 2006-10-28 14:36:13.000000000 -0500
@@ -534,6 +534,8 @@ R_PROG_BROWSER
R_PROG_PDFVIEWER
AC_PROG_CC
+## next is a macro borrowed from autoconf 2.60
+AC_PROG_CC_C99
AC_PROG_GCC_TRADITIONAL
AC_PROG_CPP
@@ -752,12 +754,6 @@ AC_CHECK_SIZEOF(long, 4)
AC_CHECK_SIZEOF(long long, 0)
AC_CHECK_SIZEOF(long double, 0)
-if test "$ac_test_CFLAGS" != set; then
- if test "$GCC" = yes; then
- R_PROG_CC_FLAG([-std=gnu99], R_SH_VAR_ADD(CFLAGS, [-std=gnu99]))
- fi
-fi
-
R_PROG_CC_MAKEFRAG
R_PROG_CC_LO_MAKEFRAG
@@ -890,7 +886,7 @@ case "${host_os}" in
linux*)
case "${CC}" in
## Intel compiler
- *icc)
+ *icc*)
## icc declares __GNUC__, so it picks up CFLAGS intended for gcc.
if test "$ac_test_CFLAGS" != set; then
if test $ac_cv_prog_cc_g = yes; then
@@ -1289,12 +1285,12 @@ rm -f libconftest${DYLIB_EXT} conftest.c
;;
linux*) # GNU Linux/ELF
case "${CC}" in
- ## Intel compiler
- *icc)
+ ## Intel compiler: note that -c99 may have been appended
+ *icc*)
cpicflags="-fpic"
;;
## Portland Group
- *pgcc)
+ *pgcc*)
cpicflags="-fpic"
;;
esac
diff -urp R-2.4.0.old/doc/CRAN_mirrors.csv R-2.4.0/doc/CRAN_mirrors.csv
--- R-2.4.0.old/doc/CRAN_mirrors.csv 2006-09-16 21:05:15.000000000 -0500
+++ R-2.4.0/doc/CRAN_mirrors.csv 2006-10-28 14:36:02.000000000 -0500
@@ -32,7 +32,7 @@ Israel,Israel,Tel-Aviv,http://cran.activ
"Japan (Aizu)",Japan,Aizu,ftp://ftp.u-aizu.ac.jp/pub/lang/R/CRAN,"University of Aizu",
"Japan (Tokyo)",Japan,Tokyo,ftp://ftp.ecc.u-tokyo.ac.jp/CRAN/,"University of Tokyo","Teru KAMOGASHIRA <teru@sodan.ecc.u-tokyo.ac.jp>"
"Japan (Tsukuba)",Japan,Tsukuba,http://cran.md.tsukuba.ac.jp/,"University of Tsukuba",
-Korea,Korea,Seoul,http://bibscvs.snu.ac.kr/R/,"Seoul National University","SungGON Yi <skon@kr.FreeBSD.org>"
+Korea,Korea,Seoul,http://bibs.snu.ac.kr/R/,"Seoul National University","SungGON Yi <skonmeme@gmail.com>"
Netherlands,Netherlands,Amsterdam,http://cran.nedmirror.nl/,"Nedmirror, Amsterdam",mirror@nedmirror.nl
Norway,Norway,Bergen,http://cran.ii.uib.no/,"University of Bergen",webmaster@ii.uib.no
"Poland (Lublin)",Poland,Lublin,http://novum.am.lublin.pl/CRAN/,"Skubiszewski Medical University, Lublin","Lukasz Komsta <luke@novum.am.lublin.pl>"
diff -urp R-2.4.0.old/doc/FAQ R-2.4.0/doc/FAQ
--- R-2.4.0.old/doc/FAQ 2006-10-03 05:02:46.000000000 -0500
+++ R-2.4.0/doc/FAQ 2006-11-02 10:45:59.000000000 -0600
@@ -1,6 +1,6 @@
R FAQ
Frequently Asked Questions on R
-Version 2.4.2006-10-02
+Version 2.4.2006-10-31
ISBN 3-900051-08-9
Kurt Hornik
@@ -95,6 +95,7 @@ R FAQ
7.34 How can I save the result of each iteration in a loop into a separate file?
7.35 Why are p-values not displayed when using lmer()?
7.36 Why are there unwanted lines between polygons in PDF output viewed in Adobe Reader?
+ 7.37 Why does backslash behave strangely inside strings?
8 R Programming
8.1 How should I write summary methods?
8.2 How can I debug dynamically loaded code?
@@ -388,20 +389,21 @@ port of R for Macintosh is no longer sup
The `bin/linux' directory of a CRAN site contains the following packages.
- CPU Versions Provider
- -------------------------------------------------------------------
- Debian et al. i386 stable/oldstable Christian Steigies
- Mandrake i386 10.0 Michele Alzetta
- Red Hat i386 FC3/FC4/FC5 Martyn Plummer
- x86_64 FC3 Brian Ripley
- x86_64 FC4/FC5 Martyn Plummer
- i386 Enterprise Linux Matthew P. Cox
- x86_64 Enterprise Linux Matthew P. Cox
- SuSE i386 7.3/8.0/8.1/8.2 Detlef Steuer
- i586 9.0/9.1/9.2/9.3/10.0/10.1Detlef Steuer
- x86_64 9.2/9.3/10.0/10.1 Detlef Steuer
- Ubuntu i386 dapper Dirk Eddelbuettel
- VineLinux i386 3.2 Susunu Tanimura
+ CPU Versions Provider
+ ------------------------------------------------------------------------
+ Debian et al. i386 stable/oldstable Christian Steigies
+ Mandrake i386 10.0 Michele Alzetta
+ Red Hat i386 FC3/FC4/FC5/FC6 Martyn Plummer
+ x86_64 FC3 Brian Ripley
+ x86_64 FC4/FC5 Martyn Plummer
+ i386 Enterprise Linux Matthew P. Cox
+ x86_64 Enterprise Linux Matthew P. Cox
+ SuSE i386 7.3/8.0/8.1/8.2 Detlef Steuer
+ i586 9.0/9.1/9.2/9.3/10.0/10.1 Detlef Steuer
+ x86_64 9.2/9.3/10.0/10.1 Detlef Steuer
+ Ubuntu i386 dapper Christian Steigies
+ amd64 dapper Christian Steigies
+ VineLinux i386 3.2 Susunu Tanimura
Debian packages, maintained by Dirk Eddelbuettel and Doug Bates, have
long been part of the Debian distribution, and can be accessed through APT,
@@ -1211,8 +1213,8 @@ Computational and Graphical Statistics_,
For a very long time, there was no such thing.
- XL Solutions (http://www.xlsolutions-corp.com/) is currently beta
-testing a commercially supported version of R named R+ (read R plus).
+ XLSolutions Corporation (http://www.xlsolutions-corp.com/) is currently
+beta testing a commercially supported version of R named R+ (read R plus).
In addition, REvolution Computing (http://www.revolution-computing.com/)
has released RPro (http://www.revolution-computing.com/rpro.html), an
@@ -1462,6 +1464,9 @@ distributions of R.)
*CompetingRiskFrailty*
Competing risk model with frailties for right censored survival data.
+*CreditMetrics*
+ Functions for calculating the CreditMetrics risk model.
+
*DAAG*
Various data sets used in examples and exercises in "Data Analysis and
Graphics Using R" by John H. Maindonald and W. John Brown, 2003.
@@ -1605,6 +1610,9 @@ distributions of R.)
MCMC inference from individual genetic data based on a spatial
statistical model.
+*GeoXP*
+ Interactive exploratory spatial data analysis.
+
*GroupSeq*
Computations related to group-seqential boundaries.
@@ -1651,6 +1659,10 @@ distributions of R.)
Utilities from the Institute of Data Analyses and Process Design,
IDP/ZHW.
+*IPSUR*
+ Accompanies "Introduction to Probability and Statistics Using R" by G.
+ Andy Chang and G. Jay Kerns(in progress).
+
*ISwR*
Data sets for "Introductory Statistics with R" by Peter Dalgaard,
2002, Springer.
@@ -1987,10 +1999,6 @@ distributions of R.)
Transforms with an Implementation in S" by Rene Carmona, Wen L. Hwang
and Bruno Torresani, 1998, Academic Press.
-*SAGx*
- Retrieval, preparation and analysis of data from the Affymetrix
- GeneChip.
-
*SASmixed*
Data sets and sample linear mixed effects analyses corresponding to the
examples in "SAS System for Mixed Models" by R. C. Littell, G. A.
@@ -2041,6 +2049,9 @@ distributions of R.)
*SparseM*
Basic linear algebra for sparse matrices.
+*SpherWave*
+ Spherical Wavelets and SW-based spatially adaptive methods.
+
*StatDataML*
Read and write StatDataML.
@@ -2086,6 +2097,9 @@ distributions of R.)
Utilities supporting VDC, an open source digital library system for
quantitative data.
+*VGAM*
+ Vector Generalized Linear and Additive Models.
+
*VLMC*
Functions, classes & methods for estimation, prediction, and simulation
(bootstrap) of VLMC (Variable Length Markov Chain) models.
@@ -2093,12 +2107,18 @@ distributions of R.)
*VaR*
Methods for calculation of Value at Risk (VaR).
+*WeedMap*
+ Map of weed intensity.
+
*WhatIf*
Software for evaluating counterfactuals.
*XML*
Tools for reading XML documents and DTDs.
+*ZIGP*
+ Zero Inflated Generalized Poisson (ZIGP) regression models.
+
*Zelig*
Everyone's statistical software: an easy-to-use program that can
estimate, and help interpret the results of, an enormous range of
@@ -2140,6 +2160,9 @@ distributions of R.)
*adehabitat*
A collection of tools for the analysis of habitat selection by animals.
+*adimpro*
+ Adaptive smoothing of digital images.
+
*adlift*
Adaptive Wavelet transforms for signal denoising.
@@ -2327,6 +2350,10 @@ distributions of R.)
*cfa*
Analysis of configuration frequencies.
+*cgh*
+ Analysis of microarray comparative genome hybridisation data using the
+ Smith-Waterman algorithm.
+
*chplot*
Augmented convex hull plots: informative and nice plots for grouped
bivariate data.
@@ -2359,6 +2386,9 @@ distributions of R.)
*classPP*
Projection Pursuit for supervised classification.
+*classifly*
+ Explore classification models in high dimensions.
+
*clim.pact*
Climate analysis and downscaling for monthly and daily data.
@@ -2695,6 +2725,9 @@ distributions of R.)
*fCalendar*
The Rmetrics module for "Date, Time and Calendars".
+*fEcofin*
+ The Rmetrics module with "Selected economic and financial data sets".
+
*fExtremes*
The Rmetrics module for "Beyond the Sample, Dealing with Extreme
Values".
@@ -2843,6 +2876,9 @@ distributions of R.)
Functions to fit Generalized Additive Models for Location Scale and
Shape.
+*gamlss.dist*
+ Extra distributions for GAMLSS modeling.
+
*gamlss.nl*
A GAMLSS add on package for fitting non linear parametric models.
@@ -3057,6 +3093,9 @@ distributions of R.)
*homals*
Homogeneity Analysis (HOMALS) package with optional Tcl/Tk interface.
+*homtest*
+ Homogeneity tests for regional frequency analysis.
+
*hopach*
Hierarchical Ordered Partitioning and Collapsing Hybrid (HOPACH).
@@ -3389,9 +3428,6 @@ distributions of R.)
Routines for GAMs and other genralized ridge regression problems with
multiple smoothing parameter selection by GCV or UBRE. _Recommended_.
-*micEcdat*
- Data sets for micro-econometrics.
-
*micEcon*
Tools for microeconomic analysis and microeconomic modelling.
@@ -3421,6 +3457,12 @@ distributions of R.)
*mixreg*
Functions to fit mixtures of regressions.
+*mixtools*
+ Tools for mixture models.
+
+*mlCopulaSelection*
+ Copula selection and fitting using maximum likelihood.
+
*mlbench*
A collection of artificial and real-world machine learning benchmark
problems, including the Boston housing data.
@@ -3462,6 +3504,9 @@ distributions of R.)
*mratios*
Inferences for ratios of coefficients in the general linear model.
+*msgcop*
+ Semiparametric Bayesian Gaussian copula estimation.
+
*msm*
Functions for fitting continuous-time Markov multi-state models to
categorical processes observed at arbitrary times, optionally with
@@ -3621,6 +3666,10 @@ distributions of R.)
*oz*
Functions for plotting Australia's coastline and state boundaries.
+*pARtial*
+ (Partial) attributable risk estimates, corresponding variance estimates
+ and confidence intervals.
+
*paleoTS*
Modeling evolution in paleontological time-series.
@@ -3743,6 +3792,9 @@ distributions of R.)
*portfolio*
Classes for analyzing and implementing portfolios.
+*portfolioSim*
+ Framework for simulating equity portfolio strategies.
+
*powell*
Optimizes a function using Powell's UObyQA algorithm.
@@ -3880,9 +3932,15 @@ distributions of R.)
C Double Description for R, an interface to the CDD computational
geometry library.
+*rcdk*
+ Interface to the CDK libraries, a Java framework for cheminformatics.
+
*rcom*
R COM Client Interface and internal COM Server.
+*rcompletion*
+ TAB completion for R using Readline.
+
*rda*
Shrunken Centroids Regularized Discriminant Analysis.
@@ -3932,6 +3990,9 @@ distributions of R.)
*rgenoud*
R version of GENetic Optimization Using Derivatives.
+*rggm*
+ Robustified methods for Gaussian Graphical Models.
+
*rggobi*
Interface between R and GGobi.
@@ -4312,6 +4373,9 @@ distributions of R.)
Computes the distribution of a linear combination of independent
Student's t variables.
+*tdm*
+ A tool for Therapeutic Drug Monitoring.
+
*tdthap*
Transmission/disequilibrium tests for extended marker haplotypes.
@@ -4328,6 +4392,9 @@ distributions of R.)
*time*
Time tracking for developers.
+*titan*
+ Titration analysis for mass spectrometry data.
+
*titecrm*
TIme-To-Event Continual Reassessment Method and calibration tools.
@@ -4638,6 +4705,9 @@ available via `http://www.omegahat.org/R
Interface to Snowball implementation of Porter's word stemming
algorithm.
+*Ryacas*
+ R interface to yacas.
+
*SASXML*
Example for reading XML files in SAS 8.2 manner.
@@ -6266,6 +6336,53 @@ The unwanted effect can be removed by tu
use the `Edit | Preferences | Page Display | Smooth line art' menu in Adobe
Reader 7.0.
+7.37 Why does backslash behave strangely inside strings?
+========================================================
+
+This question most often comes up in relation to file names (see *Note How
+do file names work in Windows?::) but it also happens that people complain
+that they cannot seem to put a single `\' character into a text string
+unless it happens to be followed by certain other characters.
+
+ To understand this, you have to distinguish between character strings
+and _representations_ of character strings. Mostly, the representation in
+R is just the string with a single or double quote at either end, but there
+are strings that cannot be represented that way, e.g., strings that
+themselves contains the quote character. So
+
+ > str <- "This \"text\" is quoted"
+ > str
+ [1] "This \"text\" is quoted"
+ > cat(str, "\n")
+ This "text" is quoted
+
+The _escape sequences_ `\"' and `\n' represent a double quote and the
+newline character respectively. Printing text strings, using `print()' or
+by typing the name at the prompt will use the escape sequences too, but the
+`cat()' function will display the string as-is. Notice that `"\n"' is a
+one-character string, not two; the backslash is not actually in the string,
+it is just generated in the printed representation.
+
+ > nchar("\n")
+ [1] 1
+ > substring("\n", 1, 1)
+ [1] "\n"
+
+ So how do you put a backslash in a string? For this, you have to escape
+the escape character. I.e., you have to double the backslash. as in
+
+ > cat("\\n", "\n")
+ \n
+
+ Some functions, particularly those involving regular expression
+matching, themselves use metacharacters, which may need to be escaped by
+the backslash mechanism. In those cases you may need a _quadruple_
+backslash to represent a single literal one.
+
+ In current versions of R (up to 2.4.0) an unknown escape sequence like
+`\p' is quietly interpreted as just `p'. The development version now emits
+a warning.
+
8 R Programming
***************
diff -urp R-2.4.0.old/doc/html/R-admin.html R-2.4.0/doc/html/R-admin.html
--- R-2.4.0.old/doc/html/R-admin.html 2006-10-03 05:14:24.000000000 -0500
+++ R-2.4.0/doc/html/R-admin.html 2006-11-03 20:01:31.000000000 -0600
@@ -27,7 +27,7 @@
<p>This is a guide to installation and administration for R.
- <p>The current version of this document is 2.4.0 (2006-10-03).
+ <p>The current version of this document is 2.4.0 (2006-11-03).
<p>ISBN 3-900051-09-7
@@ -101,13 +101,16 @@ Subversion repository. If you have a Su
<a href="http://subversion.tigris.org/"><code>subversion.tigris.org</code></a>), you
can check out and update the current r-devel from
<a href="https://svn.r-project.org/R/trunk/">https://svn.r-project.org/R/trunk/</a> and the current r-patched from
-`<samp><span class="samp">https://svn.r-project.org/R/branches/R-</span><var>x</var><span class="samp">-</span><var>y</var><span class="samp">-patches/</span></samp>'
+`<samp><span class="samp">https://svn.r-project.org/R/branches/R-</span><var>x</var><span class="samp">-</span><var>y</var><span class="samp">-branch/</span></samp>'
(where <var>x</var> and <var>y</var> are the major and minor number of the current
released version of R). E.g., use
<pre class="example"> svn checkout https://svn.r-project.org/R/trunk/ <var>path</var>
</pre>
- <p class="noindent">to check out r-devel into directory <var>path</var>.
+ <p class="noindent">to check out `<samp><span class="samp">r-devel</span></samp>' into directory <var>path</var>. The alpha, beta
+and RC versions of an upcoming <var>x.y.0</var> release are available from
+`<samp><span class="samp">https://svn.r-project.org/R/branches/R-</span><var>x</var><span class="samp">-</span><var>y</var><span class="samp">-branch/</span></samp>' in
+the four-week period prior to the release.
<p>Note that `<samp><span class="samp">https:</span></samp>' is required, and that the SSL certificate for
the Subversion server of the R project is
@@ -510,7 +513,7 @@ Windows 64).
<p>Your file system must allow long file names (as is likely except
perhaps for some network-mounted systems).
- <p>Installation is <em>via</em> the installer <samp><span class="file">R-2.4.0.exe</span></samp>.
+ <p>Installation is <em>via</em> the installer <samp><span class="file">R-2.4.0pat.exe</span></samp>.
Just double-click on the icon and follow the instructions. You can
uninstall R from the Control Panel. (Note that you will probably
(depending on the Windows language settings) be asked to choose a
@@ -775,12 +778,12 @@ customizations to that installation. Th
</pre>
<p class="noindent">where <samp><span class="file">rootdir</span></samp> is the path to the root of the customized
installation (forward slashes and no spaces, please). This creates an
-executable with the standard name, <samp><span class="file">R-2.4.0.exe</span></samp>, so
+executable with the standard name, <samp><span class="file">R-2.4.0pat.exe</span></samp>, so
please rename it to indicate that it is customized.
<p>The defaults for the startup parameters may also be customized. For example
-<pre class="example"> make rinstaller MDISDI=1
+<pre class="example"> make myR IMAGEDIR=rootdir MDISDI=1
</pre>
<p class="noindent">will create an installer that defaults to installing R to run in SDI
mode. See <samp><span class="file">src/gnuwin32/installer/Makefile</span></samp> for the names and
@@ -1128,7 +1131,7 @@ originals.
<li><code>zipdata-foo</code> to compress the data files. This is recommended if
you have either many small data files (as in package <strong>Devore5</strong>) or a
few large data files.
-<li><code>pkgcheck-foo</code> to check the package (like <code>R CMD CHECK foo</code>).
+<li><code>pkgcheck-foo</code> to check the package (like <code>R CMD check foo</code>).
</ul>
<p>Using this approach allows variables to be set during the build, e.g.
@@ -1501,10 +1504,11 @@ installed.
<p>You need a means of compiling C and FORTRAN 77 (see <a href="#Using-FORTRAN">Using FORTRAN</a>). Some add-on packages also need a C++ compiler. Your C
compiler should be <acronym>IEC</acronym>&nbsp;<!-- /@w -->60059<a rel="footnote" href="#fn-6" name="fnd-6"><sup>6</sup></a>, POSIX 1003.1 and C99-compliant if at all
possible. R tries to choose suitable flags for the C compilers it
-knows about, but you may have to set <code>CFLAGS</code> suitably. For recent
-versions of <samp><span class="command">gcc</span></samp> with <code>glibc</code> this means including
-<samp><span class="option">-std=gnu99</span></samp> in <code>CFLAGS</code> (<samp><span class="option">-std=c99</span></samp> excludes POSIX
-functionality).
+knows about, but you may have to set <code>CC</code> or <code>CFLAGS</code> suitably.
+For recent versions of <samp><span class="command">gcc</span></samp> with <code>glibc</code> this means including
+<samp><span class="option">-std=gnu99</span></samp> (<samp><span class="option">-std=c99</span></samp> excludes POSIX functionality).
+If the compiler is detected as <samp><span class="command">gcc</span></samp>, <code>-std=gnu99</code> will be
+appended to <code>CC</code> unless it conflicts with a setting of <code>CFLAGS</code>.
<p>Unless you do not want to view graphs on-screen you need `<samp><span class="samp">X11</span></samp>'
installed, including its headers and client libraries. (On Fedora Core
@@ -2078,8 +2082,8 @@ On most platforms using <samp><span clas
<code>CFLAGS</code> and <code>FFLAGS</code> produces worthwhile performance gains.
On systems using the GNU linker (especially those using R as a shared
library), it is likely that including `<samp><span class="samp">-Wl,-O1</span></samp>' in <code>LDFLAGS</code>
-is worthwhile, and on upcoming systems<a rel="footnote" href="#fn-15" name="fnd-15"><sup>15</sup></a>
-`<samp><span class="samp">'-Wl,-O1,-Bdirect,--hash-style=both'</span></samp>' is recommended at
+is worthwhile, and on recent systems<a rel="footnote" href="#fn-15" name="fnd-15"><sup>15</sup></a>
+`<samp><span class="samp">'-Bdirect,--hash-style=both,-Wl,-O1'</span></samp>' is recommended at
<a href="http://lwn.net/Articles/192624/">http://lwn.net/Articles/192624/</a>
<p><a name="Making-manuals"></a>
@@ -2392,10 +2396,11 @@ libraries.
libraries in <samp><span class="file">/usr/local/lib64</span></samp>. To build a 32-bit version of R
on `<samp><span class="samp">x86_64</span></samp>' with Fedora Core 5 we used
-<pre class="example"> CFLAGS="-m32 -O2 -g -Wall -pedantic -std=gnu99"
+<pre class="example"> CC="gcc -m32"
CXXFLAGS="-m32 -O2 -g"
FFLAGS="-m32 -O2 -g"
- LDFLAGS="-m32 -L/usr/local/lib"
+ FCFLAGS="-m32 -O2 -g"
+ LDFLAGS="-L/usr/local/lib"
LIBnn=lib
</pre>
<p class="noindent">Fedora Core 3 also needed
@@ -2452,9 +2457,10 @@ optimization. For `<samp><span class="s
CXX=icc
ICC_LIBS=/opt/compilers/intel/cce/9.0/lib
IFC_LIBS=/opt/compilers/intel/fce/9.0/lib
- LDFLAGS="-L$ICC_LIBS -L$IFC_LIBS -L/usr/local/lib"
+ LDFLAGS="-L$ICC_LIBS -L$IFC_LIBS -L/usr/local/lib64"
</pre>
- <p class="noindent">R will add `<samp><span class="samp">-mp</span></samp>' in <code>R_XTRA_{C,F,CXX}FLAGS</code> to maintain
+ <p class="noindent"><samp><span class="command">configure</span></samp> will add `<samp><span class="samp">-c99</span></samp>' to <code>CC</code> for C99-compliance.
+R will add `<samp><span class="samp">-mp</span></samp>' in <code>R_XTRA_{C,F,CXX}FLAGS</code> to maintain
correct <acronym>IEC</acronym>&nbsp;<!-- /@w -->60559 arithmetic. The flag <samp><span class="option">-wd188</span></samp>
suppresses a large number of warnings about the enumeration type
`<samp><span class="samp">Rboolean</span></samp>'. Because the Intel C compiler sets `<samp><span class="samp">__GNUC__</span></samp>'
@@ -2564,7 +2570,7 @@ yourself.
this disables <acronym>IEEE</acronym> arithmetic and <samp><span class="command">make check</span></samp> will
fail. The maximal set of optimization options known to work on Sparc is
-<pre class="example"> -xlibmil -xO5 -dalign -xc99
+<pre class="example"> -xlibmil -xO5 -dalign
</pre>
<p class="noindent">(`<samp><span class="samp">x86</span></samp>' versions do not need `<samp><span class="samp">-dalign</span></samp>', and some do not
support it.)
@@ -2578,10 +2584,10 @@ the compiler correctly.
<p>To compile for a 64-bit target on Sparc Solaris (which needs an
UltraSparc chip and for support to be enabled in the OS) with the Forte
-7 compilers we used <samp><span class="option">--without-blas</span></samp> and
+7 compilers we used
-<pre class="example"> CC="cc -xarch=v9"
- CFLAGS="-xO5 -xlibmil -dalign -xc99"
+<pre class="example"> CC="cc -xarch=v9 -xc99"
+ CFLAGS="-xO5 -xlibmil -dalign"
F77="f95 -xarch=v9"
FFLAGS="-xO5 -xlibmil -dalign"
CXX="CC -xarch=v9"
@@ -2599,9 +2605,10 @@ UltraSparc chip and for support to be en
FC="gfortran -m64"
LDFLAGS="-L/usr/local/lib/sparcv9 -L/usr/local/lib"
</pre>
- <p class="noindent">replacing `<samp><span class="samp">g77</span></samp>' with `<samp><span class="samp">gfortran</span></samp>' for <samp><span class="command">gcc</span></samp> 4.0.x. Note
+ <p class="noindent">replacing `<samp><span class="samp">g77</span></samp>' with `<samp><span class="samp">gfortran</span></samp>' for <samp><span class="command">gcc</span></samp> 4.x.y. Note
that <samp><span class="file">/usr/local/lib/sparcv9</span></samp> may need to be in the
-<samp><span class="env">LD_LIBRARY_PATH</span></samp> during configuration.
+<samp><span class="env">LD_LIBRARY_PATH</span></samp> during configuration. (<samp><span class="command">configure</span></samp> will
+append <code>-std=gnu99</code> to <code>CC</code>.)
<p>Solaris on Sparc CPUs need `<samp><span class="samp">PIC</span></samp>' and not `<samp><span class="samp">pic</span></samp>' versions of
<samp><span class="env">CPICFLAGS</span></samp> and <samp><span class="env">FPICFLAGS</span></samp> since the `<samp><span class="samp">pic</span></samp>' version only
@@ -3080,7 +3087,7 @@ but no compiled code, only the first two
<p>A complete build of R including compiled <acronym>HTML</acronym> help files and
PDF manuals, and producing the standalone installer
-<samp><span class="file">R-2.4.0.exe</span></samp> will also need the following:
+<samp><span class="file">R-2.4.0pat.exe</span></samp> will also need the following:
<ul>
<li>The Microsoft <acronym>HTML</acronym> Help Workshop
<li>LaTeX
@@ -3208,8 +3215,8 @@ suitably; ensure you have the required f
<h3 class="section">E.6 The Inno Setup installer</h3>
-<p>To make the installer package (<samp><span class="file">R-2.4.0.exe</span></samp>) we require
-Inno Setup 5.1.5 or later from <a href="http://jrsoftware.org"><code>jrsoftware.org</code></a>.
+<p>To make the installer package (<samp><span class="file">R-2.4.0pat.exe</span></samp>) we require
+Inno Setup 5.1.7 or later from <a href="http://jrsoftware.org"><code>jrsoftware.org</code></a>.
<p>Edit file <samp><span class="file">src/gnuwin32/MkRules</span></samp> and change <code>ISDIR</code> to the
location where Inno Setup was installed.
diff -urp R-2.4.0.old/doc/manual/Makefile.in R-2.4.0/doc/manual/Makefile.in
--- R-2.4.0.old/doc/manual/Makefile.in 2006-09-04 21:05:05.000000000 -0500
+++ R-2.4.0/doc/manual/Makefile.in 2006-10-28 14:36:02.000000000 -0500
@@ -211,6 +211,7 @@ $(OBJECTS_DVI): $(srcdir)/texinfo.tex
R-admin.dvi: $(texiincludes)
R-data.dvi: $(texiincludes)
R-exts.dvi: $(texiincludes)
+R-ints.dvi: $(texiincludes)
version.texi: Makefile $(top_srcdir)/VERSION $(top_builddir)/SVN-REVISION
@echo "creating $(subdir)/$@"
@(v=`sed 's/\([^ ]*\).*/\1/' $(top_srcdir)/VERSION`; \
@@ -238,6 +239,7 @@ R-admin.html: $(texiincludes)
R-data.html: $(texiincludes)
R-exts.html: $(texiincludes)
R-intro.html: $(texiincludes)
+R-ints.html: $(texiincludes)
R-lang.html: $(texiincludes)
info: $(OBJECTS_INFO)
@@ -245,6 +247,7 @@ R-admin.info: $(texiincludes)
R-data.info: $(texiincludes)
R-exts.info: $(texiincludes)
R-intro.info: $(texiincludes)
+R-ints.info: $(texiincludes)
R-lang.info: $(texiincludes)
pdf: refman.pdf $(OBJECTS_PDF)
@@ -325,6 +328,7 @@ R-admin.pdf: $(texiincludes)
R-data.pdf: $(texiincludes)
R-exts.pdf: $(texiincludes)
R-intro.pdf: stamp-images-pdf $(texiincludes)
+R-ints.pdf: $(texiincludes)
stamp-images-pdf:
@if test "$(BUILDDIR_IS_SRCDIR)" = no ; then \
$(MAKE) rdocdir=$(top_builddir)/doc install-images-pdf; \
diff -urp R-2.4.0.old/doc/manual/R-admin.texi R-2.4.0/doc/manual/R-admin.texi
--- R-2.4.0.old/doc/manual/R-admin.texi 2006-09-27 21:05:07.000000000 -0500
+++ R-2.4.0/doc/manual/R-admin.texi 2006-11-01 19:41:42.000000000 -0600
@@ -166,7 +166,7 @@ Subversion repository. If you have a Su
@url{http://subversion.tigris.org/, @code{subversion.tigris.org}}), you
can check out and update the current r-devel from
@url{https://svn.r-project.org/R/trunk/} and the current r-patched from
-@samp{https://svn.r-project.org/R/branches/R-@var{x}-@var{y}-patches/}
+@samp{https://svn.r-project.org/R/branches/R-@var{x}-@var{y}-branch/}
(where @var{x} and @var{y} are the major and minor number of the current
released version of R). E.g., use
@@ -175,7 +175,10 @@ svn checkout https://svn.r-project.org/R
@end example
@noindent
-to check out r-devel into directory @var{path}.
+to check out @samp{r-devel} into directory @var{path}. The alpha, beta
+and RC versions of an upcoming @var{x.y.0} release are available from
+@samp{https://svn.r-project.org/R/branches/R-@var{x}-@var{y}-branch/} in
+the four-week period prior to the release.
Note that @samp{https:} is required, and that the SSL certificate for
the Subversion server of the R project is
@@ -1005,7 +1008,7 @@ please rename it to indicate that it is
The defaults for the startup parameters may also be customized. For example
@example
-make rinstaller MDISDI=1
+make myR IMAGEDIR=rootdir MDISDI=1
@end example
@noindent
@@ -1410,7 +1413,7 @@ originals.
you have either many small data files (as in package @pkg{Devore5}) or a
few large data files.
@item
-@code{pkgcheck-foo} to check the package (like @code{R CMD CHECK foo}).
+@code{pkgcheck-foo} to check the package (like @code{R CMD check foo}).
@end itemize
Using this approach allows variables to be set during the build, e.g.
@@ -1840,10 +1843,11 @@ FORTRAN}). Some add-on packages also ne
compiler should be @acronym{IEC}@tie{}60059@footnote{also known as
@acronym{IEEE}@tie{}754}, POSIX 1003.1 and C99-compliant if at all
possible. @R{} tries to choose suitable flags for the C compilers it
-knows about, but you may have to set @code{CFLAGS} suitably. For recent
-versions of @command{gcc} with @code{glibc} this means including
-@option{-std=gnu99} in @code{CFLAGS} (@option{-std=c99} excludes POSIX
-functionality).
+knows about, but you may have to set @code{CC} or @code{CFLAGS} suitably.
+For recent versions of @command{gcc} with @code{glibc} this means including
+@option{-std=gnu99} (@option{-std=c99} excludes POSIX functionality).
+If the compiler is detected as @command{gcc}, @code{-std=gnu99} will be
+appended to @code{CC} unless it conflicts with a setting of @code{CFLAGS}.
Unless you do not want to view graphs on-screen you need @samp{X11}
installed, including its headers and client libraries. (On Fedora Core
@@ -2521,8 +2525,8 @@ On most platforms using @command{gcc}, h
@code{CFLAGS} and @code{FFLAGS} produces worthwhile performance gains.
On systems using the GNU linker (especially those using @R{} as a shared
library), it is likely that including @samp{-Wl,-O1} in @code{LDFLAGS}
-is worthwhile, and on upcoming systems@footnote{e.g. Fedora Core 6}
-@samp{'-Wl,-O1,-Bdirect,--hash-style=both'} is recommended at
+is worthwhile, and on recent systems@footnote{e.g. Fedora Core 6}
+@samp{'-Bdirect,--hash-style=both,-Wl,-O1'} is recommended at
@url{http://lwn.net/Articles/192624/}
@node Making manuals, , Compilation flags, Configuration variables
@@ -2888,10 +2892,11 @@ libraries in @file{/usr/local/lib64}. T
on @cputype{x86_64} with Fedora Core 5 we used
@example
-CFLAGS="-m32 -O2 -g -Wall -pedantic -std=gnu99"
+CC="gcc -m32"
CXXFLAGS="-m32 -O2 -g"
FFLAGS="-m32 -O2 -g"
-LDFLAGS="-m32 -L/usr/local/lib"
+FCFLAGS="-m32 -O2 -g"
+LDFLAGS="-L/usr/local/lib"
LIBnn=lib
@end example
@@ -2957,10 +2962,11 @@ F77=ifort
CXX=icc
ICC_LIBS=/opt/compilers/intel/cce/9.0/lib
IFC_LIBS=/opt/compilers/intel/fce/9.0/lib
-LDFLAGS="-L$ICC_LIBS -L$IFC_LIBS -L/usr/local/lib"
+LDFLAGS="-L$ICC_LIBS -L$IFC_LIBS -L/usr/local/lib64"
@end example
@noindent
+@command{configure} will add @samp{-c99} to @code{CC} for C99-compliance.
@R{} will add @samp{-mp} in @code{R_XTRA_@{C,F,CXX@}FLAGS} to maintain
correct @acronym{IEC}@tie{}60559 arithmetic. The flag @option{-wd188}
suppresses a large number of warnings about the enumeration type
@@ -3086,7 +3092,7 @@ this disables @acronym{IEEE} arithmetic
fail. The maximal set of optimization options known to work on Sparc is
@example
--xlibmil -xO5 -dalign -xc99
+-xlibmil -xO5 -dalign
@end example
@noindent
@@ -3102,11 +3108,11 @@ the compiler correctly.
To compile for a 64-bit target on Sparc Solaris (which needs an
UltraSparc chip and for support to be enabled in the OS) with the Forte
-7 compilers we used @option{--without-blas} and
+7 compilers we used
@example
-CC="cc -xarch=v9"
-CFLAGS="-xO5 -xlibmil -dalign -xc99"
+CC="cc -xarch=v9 -xc99"
+CFLAGS="-xO5 -xlibmil -dalign"
F77="f95 -xarch=v9"
FFLAGS="-xO5 -xlibmil -dalign"
CXX="CC -xarch=v9"
@@ -3130,9 +3136,10 @@ LDFLAGS="-L/usr/local/lib/sparcv9 -L/usr
@end example
@noindent
-replacing @samp{g77} with @samp{gfortran} for @command{gcc} 4.0.x. Note
+replacing @samp{g77} with @samp{gfortran} for @command{gcc} 4.x.y. Note
that @file{/usr/local/lib/sparcv9} may need to be in the
-@env{LD_LIBRARY_PATH} during configuration.
+@env{LD_LIBRARY_PATH} during configuration. (@command{configure} will
+append @code{-std=gnu99} to @code{CC}.)
Solaris on Sparc CPUs need @samp{PIC} and not @samp{pic} versions of
@env{CPICFLAGS} and @env{FPICFLAGS} since the @samp{pic} version only
@@ -3814,7 +3821,7 @@ suitably; ensure you have the required f
@section The Inno Setup installer
To make the installer package (@file{@value{RWVERSION}.exe}) we require
-Inno Setup 5.1.5 or later from @url{http://jrsoftware.org,
+Inno Setup 5.1.7 or later from @url{http://jrsoftware.org,
@code{jrsoftware.org}}.
Edit file @file{src/gnuwin32/MkRules} and change @code{ISDIR} to the
diff -urp R-2.4.0.old/doc/manual/R-exts.texi R-2.4.0/doc/manual/R-exts.texi
--- R-2.4.0.old/doc/manual/R-exts.texi 2006-09-18 21:05:16.000000000 -0500
+++ R-2.4.0/doc/manual/R-exts.texi 2006-10-30 10:45:48.000000000 -0600
@@ -8119,7 +8119,7 @@ this is defined.
@node Internationalization, Allowing interrupts, Utility functions, The R API
@section Internationalization
-@R{} has its own C-level interface to the the encoding conversion
+@R{} has its own C-level interface to the encoding conversion
capabilities provided by @code{iconv}, for the following reasons
@itemize @bullet
diff -urp R-2.4.0.old/doc/manual/R-FAQ.texi R-2.4.0/doc/manual/R-FAQ.texi
--- R-2.4.0.old/doc/manual/R-FAQ.texi 2006-10-03 05:00:11.000000000 -0500
+++ R-2.4.0/doc/manual/R-FAQ.texi 2006-11-02 10:45:47.000000000 -0600
@@ -4,7 +4,7 @@
@settitle R FAQ
@setchapternewpage on
@set FAQ_YEAR 2006
-@set FAQ_DATE @value{FAQ_YEAR}-10-02
+@set FAQ_DATE @value{FAQ_YEAR}-10-31
@set REL_YEAR 2006
@set REL_MAJOR 2
@set REL_MINOR 4
@@ -500,24 +500,25 @@ to Mac OS 9.2.2. This port of R for Mac
@node Are there Unix binaries for R?, What documentation exists for R?, How can R be installed?, R Basics
@section Are there Unix binaries for R?
-@c Linux binaries as of 2006-09-13:
+@c Linux binaries as of 2006-10-31:
@c
@c debian
-@c stable i386 2.3.1 Christian T. Steigies <cts@debian.org>
+@c stable i386 2.4.0 Christian T. Steigies <cts@debian.org>
@c oldstable
@c i386 2.1.1 Christian T. Steigies <cts@debian.org>
@c mandrake
@c 10.0 i386 2.0.0 Michele Alzetta <mikalzet@libero.it>
@c redhat
@c el3 i386 2.3.1 Matthew P Cox <rhel_cran@hmdc.harvard.edu>
-@c el4 i386 2.3.1 Matthew P Cox <rhel_cran@hmdc.harvard.edu>
-@c x86_64 2.3.1 Matthew P Cox <rhel_cran@hmdc.harvard.edu>
-@c fc3 i386 2.3.1 Martyn Plummer <martyn.plummer@r-project.org>
-@c x86_64 2.3.1 Brian Ripley
-@c fc4 i386 2.3.1 Martyn Plummer <martyn.plummer@r-project.org>
-@c x86_64 2.3.1 Martyn Plummer <martyn.plummer@r-project.org>
-@c fc5 i386 2.3.1 Martyn Plummer <martyn.plummer@r-project.org>
-@c x86_64 2.3.1 Martyn Plummer <martyn.plummer@r-project.org>
+@c el4 i386 2.4.0 Matthew P Cox <rhel_cran@hmdc.harvard.edu>
+@c x86_64 2.4.0 Matthew P Cox <rhel_cran@hmdc.harvard.edu>
+@c fc3 i386 2.4.0 Martyn Plummer <martyn.plummer@r-project.org>
+@c x86_64 2.4.0 Brian Ripley
+@c fc4 i386 2.4.0 Martyn Plummer <martyn.plummer@r-project.org>
+@c x86_64 2.4.0 Martyn Plummer <martyn.plummer@r-project.org>
+@c fc5 i386 2.4.0 Martyn Plummer <martyn.plummer@r-project.org>
+@c x86_64 2.4.0 Martyn Plummer <martyn.plummer@r-project.org>
+@c fc6 i386 2.4.0 Martyn Plummer <martyn.plummer@r-project.org>
@c suse
@c 7.3 i386 1.8.0 Detlef Steuer <Detlef.Steuer@unibw-hamburg.de>
@c 8.0 i386 1.8.1 Detlef Steuer <Detlef.Steuer@unibw-hamburg.de>
@@ -531,10 +532,11 @@ to Mac OS 9.2.2. This port of R for Mac
@c x86_64 2.2.0 Detlef Steuer <Detlef.Steuer@unibw-hamburg.de>
@c 10.0 i586 2.3.1 Detlef Steuer <Detlef.Steuer@unibw-hamburg.de>
@c x86_64 2.3.1 Detlef Steuer <Detlef.Steuer@unibw-hamburg.de>
-@c 10.1 i586 2.3.1 Detlef Steuer <Detlef.Steuer@unibw-hamburg.de>
-@c x86_64 2.3.1 Detlef Steuer <Detlef.Steuer@unibw-hamburg.de>
+@c 10.1 i586 2.4.0 Detlef Steuer <Detlef.Steuer@unibw-hamburg.de>
+@c x86_64 2.4.0 Detlef Steuer <Detlef.Steuer@unibw-hamburg.de>
@c ubuntu
-@c dapper i386 2.3.1 Dirk Eddelbuettel <edd@debian.org>
+@c dapper i386 2.4.0 Christian T. Steigies <cts@debian.org>
+@c amd64 2.4.0 Christian T. Steigies <cts@debian.org>
@c vinelinux
@c 3.2 i386 2.3.1 Susunu Tanimura <stanimura-ngs@umin.ac.jp>
@@ -542,11 +544,11 @@ The @file{bin/linux} directory of a @CRA
packages.
@quotation
-@multitable {Debian et al.} {x86_64} {9.0/9.1/9.2/9.3/10.0} {James Henstridge}
+@multitable {Debian et al.} {x86_64} {9.0/9.1/9.2/9.3/10.0/10.1} {James Henstridge}
@headitem @tab CPU @tab Versions @tab Provider
@item Debian et al. @tab i386 @tab stable/oldstable @tab Christian Steigies
@item Mandrake @tab i386 @tab 10.0 @tab Michele Alzetta
-@item Red Hat @tab i386 @tab FC3/FC4/FC5 @tab Martyn Plummer
+@item Red Hat @tab i386 @tab FC3/FC4/FC5/FC6 @tab Martyn Plummer
@item @tab x86_64 @tab FC3 @tab Brian Ripley
@item @tab x86_64 @tab FC4/FC5 @tab Martyn Plummer
@item @tab i386 @tab Enterprise Linux @tab Matthew P. Cox
@@ -554,7 +556,8 @@ packages.
@item SuSE @tab i386 @tab 7.3/8.0/8.1/8.2 @tab Detlef Steuer
@item @tab i586 @tab 9.0/9.1/9.2/9.3/10.0/10.1 @tab Detlef Steuer
@item @tab x86_64 @tab 9.2/9.3/10.0/10.1 @tab Detlef Steuer
-@item Ubuntu @tab i386 @tab dapper @tab Dirk Eddelbuettel
+@item Ubuntu @tab i386 @tab dapper @tab Christian Steigies
+@item @tab amd64 @tab dapper @tab Christian Steigies
@item VineLinux @tab i386 @tab 3.2 @tab Susunu Tanimura
@end multitable
@end quotation
@@ -1615,8 +1618,9 @@ Annotation in Plots'', @url{http://www.a
For a very long time, there was no such thing.
-@url{http://www.xlsolutions-corp.com/, XL Solutions} is currently beta
-testing a commercially supported version of R named R+ (read R plus).
+@url{http://www.xlsolutions-corp.com/, XLSolutions Corporation} is
+currently beta testing a commercially supported version of R named R+
+(read R plus).
In addition, @url{http://www.revolution-computing.com/, REvolution
Computing} has released
@@ -1867,6 +1871,8 @@ Graphical modeling for contingency table
@c </COMMENT>
@item CompetingRiskFrailty
Competing risk model with frailties for right censored survival data.
+@item CreditMetrics
+Functions for calculating the CreditMetrics risk model.
@item DAAG
Various data sets used in examples and exercises in ``Data Analysis and
Graphics Using R'' by John H. Maindonald and W. John Brown, 2003.
@@ -1973,6 +1979,8 @@ large sparse graphical Gaussian models.
@item Geneland
MCMC inference from individual genetic data based on a spatial
statistical model.
+@item GeoXP
+Interactive exploratory spatial data analysis.
@item GroupSeq
Computations related to group-seqential boundaries.
@item HH
@@ -2009,6 +2017,9 @@ interval-censored data.
@item IDPmisc
Utilities from the Institute of Data Analyses and Process Design,
IDP/ZHW.
+@item IPSUR
+Accompanies ``Introduction to Probability and Statistics Using R'' by
+G. Andy Chang and G. Jay Kerns(in progress).
@item ISwR
Data sets for ``Introductory Statistics with R'' by Peter Dalgaard,
2002, Springer.
@@ -2268,9 +2279,12 @@ especially for the wavelet and Gabor tra
on the book ``Practical Time-Frequency Analysis: Gabor and Wavelet
Transforms with an Implementation in S'' by Rene Carmona, Wen L. Hwang
and Bruno Torresani, 1998, Academic Press.
-@item SAGx
-Retrieval, preparation and analysis of data from the Affymetrix
-GeneChip.
+@c <COMMENT>
+@c Removed on 2006-10-06 as requested by the maintainer (now @BioC).
+@c @item SAGx
+@c Retrieval, preparation and analysis of data from the Affymetrix
+@c GeneChip.
+@c </COMMENT>
@item SASmixed
Data sets and sample linear mixed effects analyses corresponding to the
examples in ``SAS System for Mixed Models'' by R. C. Littell,
@@ -2309,6 +2323,8 @@ soil.
Sparse logistic regression.
@item SparseM
Basic linear algebra for sparse matrices.
+@item SpherWave
+Spherical Wavelets and SW-based spatially adaptive methods.
@item StatDataML
Read and write StatDataML.
@item StoppingRules
@@ -2342,15 +2358,21 @@ Statistics'' by J. Verzani, 2005, Chapma
@item VDCutil
Utilities supporting VDC, an open source digital library system for
quantitative data.
+@item VGAM
+Vector Generalized Linear and Additive Models.
@item VLMC
Functions, classes & methods for estimation, prediction, and simulation
(bootstrap) of VLMC (Variable Length Markov Chain) models.
@item VaR
Methods for calculation of Value at Risk (VaR).
+@item WeedMap
+Map of weed intensity.
@item WhatIf
Software for evaluating counterfactuals.
@item XML
Tools for reading @XML{} documents and DTDs.
+@item ZIGP
+Zero Inflated Generalized Poisson (ZIGP) regression models.
@item Zelig
Everyone's statistical software: an easy-to-use program that can
estimate, and help interpret the results of, an enormous range of
@@ -2380,6 +2402,8 @@ Multivariate data analysis and graphical
Tcl/Tk Graphical User Interface for @strong{ade4}.
@item adehabitat
A collection of tools for the analysis of habitat selection by animals.
+@item adimpro
+Adaptive smoothing of digital images.
@item adlift
Adaptive Wavelet transforms for signal denoising.
@item agce
@@ -2524,6 +2548,9 @@ update algorithm (Hard Competitive Learn
finding the number of clusters in a data set.
@item cfa
Analysis of configuration frequencies.
+@item cgh
+Analysis of microarray comparative genome hybridisation data using the
+Smith-Waterman algorithm.
@item chplot
Augmented convex hull plots: informative and nice plots for grouped
bivariate data.
@@ -2547,6 +2574,8 @@ Choose univariate class intervals for ma
purposes.
@item classPP
Projection Pursuit for supervised classification.
+@item classifly
+Explore classification models in high dimensions.
@item clim.pact
Climate analysis and downscaling for monthly and daily data.
@item climatol
@@ -2798,6 +2827,8 @@ teaching financial engineering and compu
(@url{http://www.Rmetrics.org/}).
@item fCalendar
The Rmetrics module for ``Date, Time and Calendars''.
+@item fEcofin
+The Rmetrics module with ``Selected economic and financial data sets''.
@item fExtremes
The Rmetrics module for ``Beyond the Sample, Dealing with Extreme
Values''.
@@ -2907,6 +2938,8 @@ Introduction with R'' by S. Wood (2006).
@item gamlss
Functions to fit Generalized Additive Models for Location Scale and
Shape.
+@item gamlss.dist
+Extra distributions for GAMLSS modeling.
@item gamlss.nl
A GAMLSS add on package for fitting non linear parametric models.
@item gamlss.tr
@@ -3071,6 +3104,8 @@ marginal inference for regression-scale
higher order inference for nonlinear heteroscedastic models.
@item homals
Homogeneity Analysis (HOMALS) package with optional Tcl/Tk interface.
+@item homtest
+Homogeneity tests for regional frequency analysis.
@item hopach
Hierarchical Ordered Partitioning and Collapsing Hybrid (HOPACH).
@item hot
@@ -3325,8 +3360,11 @@ Multiple Fractional Polynomials.
Routines for GAMs and other genralized ridge regression problems with
multiple smoothing parameter selection by GCV or UBRE.
@emph{Recommended}.
-@item micEcdat
-Data sets for micro-econometrics.
+@c <COMMENT>
+@c Removed on 2006-10-11 as requested by the maintainer.
+@c @item micEcdat
+@c Data sets for micro-econometrics.
+@c </COMMENT>
@item micEcon
Tools for microeconomic analysis and microeconomic modelling.
@item mice
@@ -3347,6 +3385,10 @@ Estimation/multiple imputation programs
continuous data.
@item mixreg
Functions to fit mixtures of regressions.
+@item mixtools
+Tools for mixture models.
+@item mlCopulaSelection
+Copula selection and fitting using maximum likelihood.
@item mlbench
A collection of artificial and real-world machine learning benchmark
problems, including the Boston housing data.
@@ -3382,6 +3424,8 @@ Inferences for ratios of coefficients in
@c @item mscalib
@c Calibration and filtering of MALDI-TOF Peptide Mass Fingerprint data.
@c </COMMENT>
+@item msgcop
+Semiparametric Bayesian Gaussian copula estimation.
@item msm
Functions for fitting continuous-time Markov multi-state models to
categorical processes observed at arbitrary times, optionally with
@@ -3531,6 +3575,9 @@ Ornstein-Uhlenbeck models for phylogenet
A collection of some tests commonly used for identifying outliers.
@item oz
Functions for plotting Australia's coastline and state boundaries.
+@item pARtial
+(Partial) attributable risk estimates, corresponding variance estimates
+and confidence intervals.
@item paleoTS
Modeling evolution in paleontological time-series.
@item pamr
@@ -3635,6 +3682,8 @@ manipulations.
Statistical and POPulation GENetics.
@item portfolio
Classes for analyzing and implementing portfolios.
+@item portfolioSim
+Framework for simulating equity portfolio strategies.
@item powell
Optimizes a function using Powell's UObyQA algorithm.
@item powerpkg
@@ -3736,8 +3785,12 @@ running BUGS from R. Support for Linux
@item rcdd
C Double Description for R, an interface to the CDD computational
geometry library.
+@item rcdk
+Interface to the CDK libraries, a Java framework for cheminformatics.
@item rcom
R COM Client Interface and internal COM Server.
+@item rcompletion
+TAB completion for R using Readline.
@item rda
Shrunken Centroids Regularized Discriminant Analysis.
@item ref
@@ -3774,6 +3827,8 @@ Provides bindings to Frank Warmerdam's G
Library (GDAL).
@item rgenoud
R version of GENetic Optimization Using Derivatives.
+@item rggm
+Robustified methods for Gaussian Graphical Models.
@item rggobi
Interface between R and GGobi.
@item rgl
@@ -4096,6 +4151,8 @@ A series of widgets and functions to sup
@item tdist
Computes the distribution of a linear combination of independent
Student's @math{t} variables.
+@item tdm
+A tool for Therapeutic Drug Monitoring.
@item tdthap
Transmission/disequilibrium tests for extended marker haplotypes.
@item tensor
@@ -4107,6 +4164,8 @@ Bayesian regression and adaptive samplin
models.
@item time
Time tracking for developers.
+@item titan
+Titration analysis for mass spectrometry data.
@item titecrm
TIme-To-Event Continual Reassessment Method and calibration tools.
@item tkrplot
@@ -4416,6 +4475,8 @@ An interface to call XLisp-Stat function
@item Rstem
Interface to Snowball implementation of Porter's word stemming
algorithm.
+@item Ryacas
+R interface to yacas.
@item SASXML
Example for reading @XML{} files in SAS 8.2 manner.
@item SJava
@@ -5289,6 +5350,7 @@ dir /opt/R/src/unix
* How can I save the result of each iteration in a loop into a separate file?::
* Why are p-values not displayed when using lmer()?::
* Why are there unwanted lines between polygons in PDF output viewed in Adobe Reader?::
+* Why does backslash behave strangely inside strings?::
@end menu
@c @node Why does R run out of memory?, Why does sourcing a correct file fail?, R Miscellanea, R Miscellanea
@@ -6165,7 +6227,7 @@ Doug Bates has kindly provided an extens
r-help list, which can be reviewed at
@uref{https://stat.ethz.ch/pipermail/r-help/2006-May/094765.html}.
-@node Why are there unwanted lines between polygons in PDF output viewed in Adobe Reader?, , Why are p-values not displayed when using lmer()?, R Miscellanea
+@node Why are there unwanted lines between polygons in PDF output viewed in Adobe Reader?, Why does backslash behave strangely inside strings?, Why are p-values not displayed when using lmer()?, R Miscellanea
@section Why are there unwanted lines between polygons in PDF output viewed in Adobe Reader?
Output from @code{polygon()} (and other functions calling
@@ -6185,6 +6247,64 @@ The unwanted effect can be removed by tu
art: use the `Edit | Preferences | Page Display | Smooth line art' menu
in Adobe Reader 7.0.
+@node Why does backslash behave strangely inside strings?, , Why are there unwanted lines between polygons in PDF output viewed in Adobe Reader?, R Miscellanea
+@section Why does backslash behave strangely inside strings?
+
+This question most often comes up in relation to file names (see
+@ref{How do file names work in Windows?}) but it also happens that
+people complain that they cannot seem to put a single @samp{\} character
+into a text string unless it happens to be followed by certain other
+characters.
+
+To understand this, you have to distinguish between character strings
+and @emph{representations} of character strings. Mostly, the
+representation in R is just the string with a single or double quote at
+either end, but there are strings that cannot be represented that way,
+e.g., strings that themselves contains the quote character. So
+
+@example
+> str <- "This \"text\" is quoted"
+> str
+[1] "This \"text\" is quoted"
+> cat(str, "\n")
+This "text" is quoted
+@end example
+
+@noindent
+The @emph{escape sequences} @samp{\"} and @samp{\n} represent a double
+quote and the newline character respectively. Printing text strings,
+using @code{print()} or by typing the name at the prompt will use the
+escape sequences too, but the @code{cat()} function will display the
+string as-is. Notice that @samp{"\n"} is a one-character string, not
+two; the backslash is not actually in the string, it is just generated
+in the printed representation.
+
+@example
+> nchar("\n")
+[1] 1
+> substring("\n", 1, 1)
+[1] "\n"
+@end example
+
+So how do you put a backslash in a string? For this, you have to
+escape the escape character. I.e., you have to double the backslash.
+as in
+
+@example
+> cat("\\n", "\n")
+\n
+@end example
+
+Some functions, particularly those involving regular expression
+matching, themselves use metacharacters, which may need to be escaped
+by the backslash mechanism. In those cases you may need a
+@emph{quadruple} backslash to represent a single literal one.
+
+@c <FIXME 2.5.0>
+In current versions of R (up to 2.4.0) an unknown escape sequence like
+@samp{\p} is quietly interpreted as just @samp{p}.
+The development version now emits a warning.
+@c </FIXME>
@node R Programming, R Bugs, R Miscellanea, Top
@chapter R Programming
diff -urp R-2.4.0.old/doc/manual/R-intro.texi R-2.4.0/doc/manual/R-intro.texi
--- R-2.4.0.old/doc/manual/R-intro.texi 2006-09-26 21:05:13.000000000 -0500
+++ R-2.4.0/doc/manual/R-intro.texi 2006-10-29 10:45:45.000000000 -0600
@@ -6882,9 +6882,13 @@ directory where @R{} was started, but ca
variable @env{R_HISTFILE}) should be restored at startup or not. The
default is to restore.
+@item --no-Rconsole
+(Windows only) Prevent loading the @file{Rconsole} file at startup.
+
@item --vanilla
Combine @option{--no-save}, @option{--no-environ}
@option{--no-site-file}, @option{--no-init-file} and @option{--no-restore}.
+In Windows, this also includes @option{--no-Rconsole}.
@item --no-readline
(UNIX only) Turn off command-line editing via @strong{readline}. This is useful
diff -urp R-2.4.0.old/doc/manual/R-ints.texi R-2.4.0/doc/manual/R-ints.texi
--- R-2.4.0.old/doc/manual/R-ints.texi 2006-09-26 21:05:13.000000000 -0500
+++ R-2.4.0/doc/manual/R-ints.texi 2006-10-28 14:36:02.000000000 -0500
@@ -1161,7 +1161,7 @@ libraries.
saving on-screen graphs to those formats. This is technically optional,
and needs source code not in the tarball.
-@item @file{Rchmtl.dll}
+@item @file{Rchtml.dll}
(Windows only.) A link to an ActiveX control that displays Compiled
@HTML{} help. This is optional, and only compiled if CHTML is specified.
Only in R-2.4.0/m4: c99.m4
diff -urp R-2.4.0.old/m4/java.m4 R-2.4.0/m4/java.m4
--- R-2.4.0.old/m4/java.m4 2006-09-10 21:05:02.000000000 -0500
+++ R-2.4.0/m4/java.m4 2006-11-03 19:41:45.000000000 -0600
@@ -103,6 +103,7 @@ if test ${acx_java_works} = yes; then
case "${host_os}" in
darwin*)
JAVA_LIBS="-framework JavaVM"
+ JAVA_LIBS0="-framework JavaVM"
JAVA_LD_LIBRARY_PATH=
;;
*)
diff -urp R-2.4.0.old/m4/Makefile.in R-2.4.0/m4/Makefile.in
--- R-2.4.0.old/m4/Makefile.in 2006-04-09 17:18:56.000000000 -0500
+++ R-2.4.0/m4/Makefile.in 2006-10-28 14:35:49.000000000 -0500
@@ -13,7 +13,7 @@ include $(top_builddir)/Makeconf
distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
DISTFILES = Makefile.in README \
R.m4 \
- clibs.m4 \
+ clibs.m4 c99.m4 \
codeset.m4 \
gettext.m4 gettext-lib.m4 \
java.m4 \
diff -urp R-2.4.0.old/m4/R.m4 R-2.4.0/m4/R.m4
--- R-2.4.0.old/m4/R.m4 2006-09-04 09:40:57.000000000 -0500
+++ R-2.4.0/m4/R.m4 2006-10-28 14:35:49.000000000 -0500
@@ -3107,8 +3107,8 @@ fi
## The flag is documented, and is effective but also hides
## unsatisfied references. We cannot test for GCC, as icc passes that test.
case "${CC}" in
- ## Intel compiler
- *icc)
+ ## Intel compiler: note that -c99 may have been appended
+ *icc*)
C_VISIBILITY=
;;
esac
diff -urp R-2.4.0.old/Makefile.in R-2.4.0/Makefile.in
--- R-2.4.0.old/Makefile.in 2006-09-04 09:41:48.000000000 -0500
+++ R-2.4.0/Makefile.in 2006-10-28 14:36:13.000000000 -0500
@@ -30,7 +30,7 @@ Makeconf: $(srcdir)/Makeconf.in $(top_bu
ACLOCAL_M4 = aclocal.m4
ACINCLUDE_DEPENDENCIES = \
m4/R.m4 \
- m4/clibs.m4 \
+ m4/clibs.m4 m4/c99.m4 \
m4/codeset.m4 \
m4/gettext.m4 m4/gettext-lib.m4 \
m4/java.m4 \
@@ -104,15 +104,7 @@ svnonly:
touch non-tarball ; \
(cd $(srcdir); LC_ALL=C TZ=GMT svn info || echo "Revision: unknown") 2> /dev/null \
| sed -n -e '/^Revision/p' -e '/^Last Changed Date/'p \
- | cut -d' ' -f1,2,3,4 > SVN-REVISION-tmp ; \
- if grep unknown SVN-REVISION-tmp > /dev/null ; then \
- echo "Last Changed Date: Today" >> SVN-REVISION-tmp ; \
- if test -f "$(srcdir)/.svn/entries" ; then \
- rev=`grep committed-rev "$(srcdir)/.svn/entries" | head -1 | sed -e 's/^ *committed-rev=\"//' -e 's/\"//'`; \
- cdate=`grep committed-date "$(srcdir)/.svn/entries" | head -1 | sed -e 's/^ *committed-date=\"//' -e 's/T.*//'`; \
- sed -e "s/unknown/$${rev}/" -e "s/Today/$${cdate}/" SVN-REVISION-tmp > SVN-REVISION-tmp2; mv SVN-REVISION-tmp2 SVN-REVISION-tmp ; \
- fi ; \
- fi ; \
+ | cut -d' ' -f1,2,3,4 > SVN-REVISION-tmp ; \
$(top_srcdir)/tools/move-if-change SVN-REVISION-tmp SVN-REVISION ; \
rm -f SVN-REVISION-tmp ; \
else \
diff -urp R-2.4.0.old/NEWS R-2.4.0/NEWS
--- R-2.4.0.old/NEWS 2006-09-26 21:05:18.000000000 -0500
+++ R-2.4.0/NEWS 2006-11-03 19:41:47.000000000 -0600
@@ -6,6 +6,100 @@
**************************************************
+ CHANGES IN R VERSION 2.4.0 patched
+
+INSTALLATION
+
+ o The extraction of info from Subversion for an SVN checkout now
+ also works for svn >= 1.4.0. However, on Windows the 'Last
+ Changed Date' will be in the local timezone, and not in GMT as
+ previously.
+
+ o configure uses code borrowed from autoconf 2.60 to try harder to
+ ensure that a C99-compliant compiler is used. (It does so by
+ appending to CC.) This avoids problems with systems such as FC5
+ which override CFLAGS and thereby lose flags such as -std=gnu99.
+
+
+NEW FEATURES
+
+ o rainbow(), heat.colors(), terrain.colors(), topo.colors() and
+ cm.colors() all gain an 'alpha' argument to be passed to hsv().
+
+
+BUG FIXES
+
+ o Fixed warning() to use .dfltWarn intead of .dfltStop for default
+ handling (PR#9274).
+
+ o R would slow down when the product of the length of a vector and
+ the length of a character vector used to subset it exceeded 2^31.
+ (PR#9280)
+
+ o merge() now allows zero-row data frames.
+
+ o add1.lm() had been broken by other changes for weighted fits.
+
+ o axis.POSIXct() would sometimes give the wrong labels.
+
+ o Help for a method call would fail. (PR#9291)
+
+ o gzfile() returned an object of class "file" not "gzfile". (PR#9271)
+
+ o load()ing from a connection had a logic bug in when it closed
+ the connection. (PR#9271)
+
+ o The lowess() algorithm is unstable if the MAD of the residuals
+ becomes (effectively) zero: R now terminates the iterations at
+ that point. (This may result in quite different answers.)
+
+ The 'delta' argument was incorrectly documented. (PR#9264)
+
+ o abbreviate() would only work for strings of up to 8191 bytes,
+ but this was not checked. Now longer strings are errors.
+
+ o Drawing X11 rotated text was buggy for VERY small (negative)
+ angle of rotation. Reported by Ben Bolker.
+
+ o The X11 data editor would crash in an MBCS locale if R was
+ compiled with FC's CFLAGS that add buffer overflow and
+ stack-smashing detection.
+
+ o rect() was not accepting border=NA in some cases involving
+ cross-hatching.
+
+ o Fixes to S4 group generics to ensure that the correct number of
+ active arguments are in the signature of the group and all
+ members. Also a fix to keep the 'groupMembers' slot up to date.
+
+ o removeClass() now takes care to remove any subclass references
+ to the deleted class.
+
+ o mle() (in stats4) might not have worked as intended when the
+ order of parameters in 'start' differed from that in the
+ log-likelihood. (PR#9313)
+
+ o dotchart() now properly restores par() settings behind itself.
+
+ o system() on Mac OS X was blocking arbitrary signals during the
+ call although only SIGPROF was meant to be blocked.
+
+ o methods cached via callNextMethod() and (sometimes) as() were
+ being cached as directly specified although in fact they were
+ inherited. Caused problems in later search for inherited methods.
+
+ o str() works properly for method definitions and other S4-classed
+ function objects.
+
+ o JAVA_LIBS are now correctly set on MacOS X
+
+ o Fix null-termination issue suspected of causing crash with Fedora
+ Extra RPMS (PR#9339, Justin Harrington, analysis and fix from Bill
+ Dunlap).
+
+
+
+
CHANGES IN R VERSION 2.4.0
Binary files R-2.4.0.old/po/de.gmo and R-2.4.0/po/de.gmo differ
diff -urp R-2.4.0.old/po/de.po R-2.4.0/po/de.po
--- R-2.4.0.old/po/de.po 2006-09-26 21:05:18.000000000 -0500
+++ R-2.4.0/po/de.po 2006-10-28 14:36:11.000000000 -0500
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: R-2.2.1\n"
"Report-Msgid-Bugs-To: bugs@R-project.org\n"
-"POT-Creation-Date: 2006-09-26 14:32+0100\n"
+"POT-Creation-Date: 2006-10-24 15:53+0100\n"
"PO-Revision-Date: 2006-09-21 10:41+0200\n"
"Last-Translator: Detlef Steuer <steuer@hsu-hh.de>\n"
"Language-Team: R-core <R-core@r-project.org>\n"
@@ -82,7 +82,7 @@ msgstr "ungültige 'names' in 'R_unlink'
#: src/gnuwin32/extra.c:758 src/gnuwin32/extra.c:761 src/gnuwin32/extra.c:766
#: src/main/builtin.c:127 src/main/builtin.c:385 src/main/builtin.c:401
#: src/main/character.c:116 src/main/character.c:119 src/main/character.c:158
-#: src/main/character.c:2432 src/main/character.c:2436
+#: src/main/character.c:2434 src/main/character.c:2438
#: src/main/connections.c:822 src/main/connections.c:828
#: src/main/connections.c:831 src/main/connections.c:835
#: src/main/connections.c:958 src/main/connections.c:964
@@ -127,7 +127,7 @@ msgstr "ungültige 'names' in 'R_unlink'
#: src/main/print.c:176 src/main/print.c:182 src/main/print.c:204
#: src/main/print.c:210 src/main/random.c:465 src/main/random.c:469
#: src/main/random.c:471 src/main/random.c:473 src/main/saveload.c:2076
-#: src/main/saveload.c:2341 src/main/saveload.c:2390 src/main/seq.c:346
+#: src/main/saveload.c:2341 src/main/saveload.c:2391 src/main/seq.c:346
#: src/main/seq.c:350 src/main/seq.c:368 src/main/seq.c:375
#: src/main/sysutils.c:396 src/main/sysutils.c:398 src/main/sysutils.c:400
#: src/main/unique.c:576 src/main/util.c:527 src/main/util.c:530
@@ -473,7 +473,7 @@ msgid "second argument must be a list"
msgstr "zweites Argument muss eine Liste sein"
#: src/include/Errormsg.h:42 src/main/eval.c:2715 src/main/subscript.c:228
-#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:436
+#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:437
msgid "subscript out of bounds"
msgstr "Indizierung außerhalb der Grenzen"
@@ -1151,7 +1151,7 @@ msgstr "angegebene Vektorgröße ist zu
#: src/main/envir.c:2729 src/main/envir.c:2763 src/main/envir.c:2783
#: src/main/envir.c:3107 src/main/envir.c:3111 src/main/eval.c:3498
#: src/main/objects.c:175 src/main/objects.c:181 src/main/saveload.c:2072
-#: src/main/saveload.c:2338 src/main/saveload.c:2387 src/main/serialize.c:2175
+#: src/main/saveload.c:2338 src/main/saveload.c:2388 src/main/serialize.c:2175
msgid "use of NULL environment is defunct"
msgstr "Verwendung der NULL Umgebung ist nicht mehr möglich"
@@ -1284,114 +1284,114 @@ msgstr "ungültiges Teilungsmuster '%s'"
msgid "the first argument must be a character vector"
msgstr "erstes Argument muss ein Charaktervektor sein"
-#: src/main/character.c:725
+#: src/main/character.c:727
msgid "abbreviate used with non-ASCII chars"
msgstr "abbreviate mit nicht-ASCII Zeichen genutzt"
-#: src/main/character.c:743
+#: src/main/character.c:745
msgid "non-character names"
msgstr "Nicht-Charakter Namen"
-#: src/main/character.c:747
+#: src/main/character.c:749
msgid "invalid value of 'allow_'"
msgstr "ungültiger Wert von 'allow_'"
-#: src/main/character.c:808 src/main/character.c:1586
+#: src/main/character.c:810 src/main/character.c:1588
#, c-format
msgid "invalid multibyte string %d"
msgstr "ungültige multibyte Zeichenkette %d"
-#: src/main/character.c:889 src/main/character.c:1221
-#: src/main/character.c:1510 src/main/pcre.c:110 src/main/pcre.c:487
+#: src/main/character.c:891 src/main/character.c:1223
+#: src/main/character.c:1512 src/main/pcre.c:110 src/main/pcre.c:487
#: src/main/pcre.c:582
msgid "regular expression is invalid in this locale"
msgstr "regular expression ist in dieser Lokalisierung ungültig"
-#: src/main/character.c:911 src/main/character.c:1063
-#: src/main/character.c:1224 src/main/character.c:1513 src/main/pcre.c:117
+#: src/main/character.c:913 src/main/character.c:1065
+#: src/main/character.c:1226 src/main/character.c:1515 src/main/pcre.c:117
#: src/main/pcre.c:332 src/main/pcre.c:492 src/main/pcre.c:587
#, c-format
msgid "invalid regular expression '%s'"
msgstr "ungültige regular expression '%s'"
-#: src/main/character.c:921 src/main/character.c:1239
-#: src/main/character.c:1530 src/main/pcre.c:132 src/main/pcre.c:365
+#: src/main/character.c:923 src/main/character.c:1241
+#: src/main/character.c:1532 src/main/pcre.c:132 src/main/pcre.c:365
#: src/main/pcre.c:507 src/main/pcre.c:610
#, c-format
msgid "input string %d is invalid in this locale"
msgstr "Eingabezeichenkette %d ungültig in dieser locale"
-#: src/main/character.c:976 src/main/pcre.c:187
+#: src/main/character.c:978 src/main/pcre.c:187
#, c-format
msgid "invalid backreference %d in regular expression"
msgstr "ungültige Rückreferenz %d in regular expression"
-#: src/main/character.c:1058 src/main/pcre.c:319
+#: src/main/character.c:1060 src/main/pcre.c:319
msgid "'pattern' is invalid in this locale"
msgstr "'pattern' ist ungültig in dieser locale"
-#: src/main/character.c:1060 src/main/pcre.c:321
+#: src/main/character.c:1062 src/main/pcre.c:321
msgid "'replacement' is invalid in this locale"
msgstr "'replacement' ist ungültig in dieser locale"
-#: src/main/character.c:1069
+#: src/main/character.c:1071
msgid "zero-length pattern"
msgstr "Muster mit Länge 0"
-#: src/main/character.c:1561
+#: src/main/character.c:1563
msgid "non-character argument to tolower()"
msgstr "Nicht-Charakter Argument für tolower()"
-#: src/main/character.c:1639
+#: src/main/character.c:1641
#, c-format
msgid "decreasing range specification ('%lc-%lc')"
msgstr "abnehmende Bereichsspezifikation ('%lc-%lc')"
-#: src/main/character.c:1725
+#: src/main/character.c:1727
#, c-format
msgid "decreasing range specification ('%c-%c')"
msgstr "abnehmende Bereichsspezifikation ('%c-%c')"
-#: src/main/character.c:1802
+#: src/main/character.c:1804
msgid "invalid (NA) arguments."
msgstr "ungültige (NA) Argumente."
-#: src/main/character.c:1824
+#: src/main/character.c:1826
msgid "invalid multibyte string 'old'"
msgstr "ungültige multibyte Zeichenkette 'old'"
-#: src/main/character.c:1831
+#: src/main/character.c:1833
msgid "invalid multibyte string 'new'"
msgstr "ungültige multibyte Zeichenkette 'new'"
-#: src/main/character.c:1850 src/main/character.c:1912
+#: src/main/character.c:1852 src/main/character.c:1914
msgid "'old' is longer than 'new'"
msgstr "'old' ist länger als 'new'"
-#: src/main/character.c:1868
+#: src/main/character.c:1870
#, c-format
msgid "invalid input multibyte string %d"
msgstr "ungültige multibyte Eingabezeichenkette %d"
-#: src/main/character.c:2013
+#: src/main/character.c:2015
msgid "use of agrep() in a UTF-8 locale may only work for ASCII strings"
msgstr ""
"Benutzung von agrep() in einer UTF-8 Lokalisierung arbeitet wahrscheinlich "
"nur für ASCII Zeichenketten"
-#: src/main/character.c:2022
+#: src/main/character.c:2024
msgid "could not allocate memory for approximate matching"
msgstr "konnte keinen Speicher für approximate matching zuteilen"
-#: src/main/character.c:2046
+#: src/main/character.c:2048
msgid "could not perform case insensitive matching"
msgstr "konnte case insensitive matching nicht durchführen"
-#: src/main/character.c:2098 src/main/character.c:2333
+#: src/main/character.c:2100 src/main/character.c:2335
msgid "argument must be a character vector of length 1"
msgstr "Argument muss ein Charakter-Vektor der Länge 1 sein"
-#: src/main/character.c:2100 src/main/character.c:2335
+#: src/main/character.c:2102 src/main/character.c:2337
msgid ""
"argument should be a character vector of length 1\n"
"all but the first element will be ignored"
@@ -1399,45 +1399,45 @@ msgstr ""
"Argument sollte ein Charakter-Vektor der Länge 1 sein\n"
"alle Argumente bis auf das erste werden ignoriert"
-#: src/main/character.c:2116 src/main/character.c:2148
-#: src/main/character.c:2169
+#: src/main/character.c:2118 src/main/character.c:2150
+#: src/main/character.c:2171
msgid "argument 'x' must be a raw vector"
msgstr "Argument 'x' muss ein raw Vektor sein"
-#: src/main/character.c:2119 src/main/character.c:2385
+#: src/main/character.c:2121 src/main/character.c:2387
msgid "argument 'multiple' must be TRUE or FALSE"
msgstr "Argument 'multiple' muss TRUE oder FALSE sein"
-#: src/main/character.c:2150
+#: src/main/character.c:2152
msgid "argument 'shift' must be a small integer"
msgstr "Argument 'shift' muss eine kleine ganze Zahl sein"
-#: src/main/character.c:2187
+#: src/main/character.c:2189
msgid "argument 'x' must be a integer vector"
msgstr "Argument 'x' muss ein Vektor ganzer Zahlen sein"
-#: src/main/character.c:2207
+#: src/main/character.c:2209
msgid "argument 'x' must be raw, integer or logical"
msgstr "Argument 'x' muss entweder raw, ganzzahlig oder logisch sein"
-#: src/main/character.c:2209
+#: src/main/character.c:2211
msgid "argument 'type' must be a character string"
msgstr "Argument 'type' muss eine Zeichenkette sein"
-#: src/main/character.c:2213
+#: src/main/character.c:2215
#, c-format
msgid "argument 'x' must be a multiple of %d long"
msgstr "Länge des Argumentes 'x' muss ein Vielfaches von %d sein"
-#: src/main/character.c:2227 src/main/character.c:2242
+#: src/main/character.c:2229 src/main/character.c:2244
msgid "argument 'x' must not contain NAs"
msgstr "Argument 'x' darf keine NAs enthalten"
-#: src/main/character.c:2382
+#: src/main/character.c:2384
msgid "argument 'x' must be an integer vector"
msgstr "Argument 'x' muss ein Vektor ganzer Zahlen sein"
-#: src/main/character.c:2427
+#: src/main/character.c:2429
msgid "strtrim() requires a character vector"
msgstr "strtrim() benötigt Charakter-Vektor"
@@ -5496,7 +5496,7 @@ msgstr "Schreibfehler in Verbindung"
msgid "no input is available"
msgstr "keine Eingabe verfügbar"
-#: src/main/saveload.c:2365
+#: src/main/saveload.c:2366
msgid ""
"the input does not start with a magic number compatible with loading from a "
"connection"
@@ -6126,7 +6126,7 @@ msgid "[[ ]] subscript (%d) out of bound
msgstr "[[ ]] Index (%d) außerhalb des Bereichs"
#: src/main/subassign.c:1769 src/main/subscript.c:111 src/main/subscript.c:188
-#: src/main/subscript.c:588 src/main/subset.c:923
+#: src/main/subscript.c:589 src/main/subset.c:923
msgid "invalid subscript type"
msgstr "ungültiger Indextyp"
@@ -6162,19 +6162,19 @@ msgstr "(subscript) boolescher Index zu
msgid "only 0's may be mixed with negative subscripts"
msgstr "nur Nullen dürfen mit negativen Indizes gemischt werden"
-#: src/main/subscript.c:410
+#: src/main/subscript.c:411
msgid "character vector element does not have type CHARSXP"
msgstr "Element eines Charaktervektors ist nicht vom Typ CHARSXP"
-#: src/main/subscript.c:487
+#: src/main/subscript.c:488
msgid "no 'dimnames' attribute for array"
msgstr "kein 'dimnames' Attribut für Arrays"
-#: src/main/subscript.c:494
+#: src/main/subscript.c:495
msgid "invalid subscript"
msgstr "ungültiger Index"
-#: src/main/subscript.c:527
+#: src/main/subscript.c:528
msgid "subscripting on non-vector"
msgstr "Indizierung bei einem Nicht-Vektor"
Binary files R-2.4.0.old/po/en_GB.gmo and R-2.4.0/po/en_GB.gmo differ
diff -urp R-2.4.0.old/po/en_GB.po R-2.4.0/po/en_GB.po
--- R-2.4.0.old/po/en_GB.po 2006-09-26 21:05:18.000000000 -0500
+++ R-2.4.0/po/en_GB.po 2006-10-28 14:36:08.000000000 -0500
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: R 2.1.0\n"
"Report-Msgid-Bugs-To: bugs@R-project.org\n"
-"POT-Creation-Date: 2006-09-26 14:32+0100\n"
+"POT-Creation-Date: 2006-10-24 15:53+0100\n"
"PO-Revision-Date: 2005-02-22 16:55+0000\n"
"Last-Translator: Prof Brian Ripley <ripley@stats.ox.ac.uk>\n"
"Language-Team: English\n"
@@ -82,7 +82,7 @@ msgstr ""
#: src/gnuwin32/extra.c:758 src/gnuwin32/extra.c:761 src/gnuwin32/extra.c:766
#: src/main/builtin.c:127 src/main/builtin.c:385 src/main/builtin.c:401
#: src/main/character.c:116 src/main/character.c:119 src/main/character.c:158
-#: src/main/character.c:2432 src/main/character.c:2436
+#: src/main/character.c:2434 src/main/character.c:2438
#: src/main/connections.c:822 src/main/connections.c:828
#: src/main/connections.c:831 src/main/connections.c:835
#: src/main/connections.c:958 src/main/connections.c:964
@@ -127,7 +127,7 @@ msgstr ""
#: src/main/print.c:176 src/main/print.c:182 src/main/print.c:204
#: src/main/print.c:210 src/main/random.c:465 src/main/random.c:469
#: src/main/random.c:471 src/main/random.c:473 src/main/saveload.c:2076
-#: src/main/saveload.c:2341 src/main/saveload.c:2390 src/main/seq.c:346
+#: src/main/saveload.c:2341 src/main/saveload.c:2391 src/main/seq.c:346
#: src/main/seq.c:350 src/main/seq.c:368 src/main/seq.c:375
#: src/main/sysutils.c:396 src/main/sysutils.c:398 src/main/sysutils.c:400
#: src/main/unique.c:576 src/main/util.c:527 src/main/util.c:530
@@ -471,7 +471,7 @@ msgid "second argument must be a list"
msgstr ""
#: src/include/Errormsg.h:42 src/main/eval.c:2715 src/main/subscript.c:228
-#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:436
+#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:437
msgid "subscript out of bounds"
msgstr ""
@@ -1133,7 +1133,7 @@ msgstr ""
#: src/main/envir.c:2729 src/main/envir.c:2763 src/main/envir.c:2783
#: src/main/envir.c:3107 src/main/envir.c:3111 src/main/eval.c:3498
#: src/main/objects.c:175 src/main/objects.c:181 src/main/saveload.c:2072
-#: src/main/saveload.c:2338 src/main/saveload.c:2387 src/main/serialize.c:2175
+#: src/main/saveload.c:2338 src/main/saveload.c:2388 src/main/serialize.c:2175
msgid "use of NULL environment is defunct"
msgstr ""
@@ -1266,156 +1266,156 @@ msgstr ""
msgid "the first argument must be a character vector"
msgstr ""
-#: src/main/character.c:725
+#: src/main/character.c:727
msgid "abbreviate used with non-ASCII chars"
msgstr ""
-#: src/main/character.c:743
+#: src/main/character.c:745
msgid "non-character names"
msgstr ""
-#: src/main/character.c:747
+#: src/main/character.c:749
msgid "invalid value of 'allow_'"
msgstr ""
-#: src/main/character.c:808 src/main/character.c:1586
+#: src/main/character.c:810 src/main/character.c:1588
#, c-format
msgid "invalid multibyte string %d"
msgstr ""
-#: src/main/character.c:889 src/main/character.c:1221
-#: src/main/character.c:1510 src/main/pcre.c:110 src/main/pcre.c:487
+#: src/main/character.c:891 src/main/character.c:1223
+#: src/main/character.c:1512 src/main/pcre.c:110 src/main/pcre.c:487
#: src/main/pcre.c:582
msgid "regular expression is invalid in this locale"
msgstr ""
-#: src/main/character.c:911 src/main/character.c:1063
-#: src/main/character.c:1224 src/main/character.c:1513 src/main/pcre.c:117
+#: src/main/character.c:913 src/main/character.c:1065
+#: src/main/character.c:1226 src/main/character.c:1515 src/main/pcre.c:117
#: src/main/pcre.c:332 src/main/pcre.c:492 src/main/pcre.c:587
#, c-format
msgid "invalid regular expression '%s'"
msgstr ""
-#: src/main/character.c:921 src/main/character.c:1239
-#: src/main/character.c:1530 src/main/pcre.c:132 src/main/pcre.c:365
+#: src/main/character.c:923 src/main/character.c:1241
+#: src/main/character.c:1532 src/main/pcre.c:132 src/main/pcre.c:365
#: src/main/pcre.c:507 src/main/pcre.c:610
#, c-format
msgid "input string %d is invalid in this locale"
msgstr ""
-#: src/main/character.c:976 src/main/pcre.c:187
+#: src/main/character.c:978 src/main/pcre.c:187
#, c-format
msgid "invalid backreference %d in regular expression"
msgstr ""
-#: src/main/character.c:1058 src/main/pcre.c:319
+#: src/main/character.c:1060 src/main/pcre.c:319
msgid "'pattern' is invalid in this locale"
msgstr ""
-#: src/main/character.c:1060 src/main/pcre.c:321
+#: src/main/character.c:1062 src/main/pcre.c:321
msgid "'replacement' is invalid in this locale"
msgstr ""
-#: src/main/character.c:1069
+#: src/main/character.c:1071
msgid "zero-length pattern"
msgstr ""
-#: src/main/character.c:1561
+#: src/main/character.c:1563
msgid "non-character argument to tolower()"
msgstr ""
-#: src/main/character.c:1639
+#: src/main/character.c:1641
#, c-format
msgid "decreasing range specification ('%lc-%lc')"
msgstr ""
-#: src/main/character.c:1725
+#: src/main/character.c:1727
#, c-format
msgid "decreasing range specification ('%c-%c')"
msgstr ""
-#: src/main/character.c:1802
+#: src/main/character.c:1804
msgid "invalid (NA) arguments."
msgstr ""
-#: src/main/character.c:1824
+#: src/main/character.c:1826
msgid "invalid multibyte string 'old'"
msgstr ""
-#: src/main/character.c:1831
+#: src/main/character.c:1833
msgid "invalid multibyte string 'new'"
msgstr ""
-#: src/main/character.c:1850 src/main/character.c:1912
+#: src/main/character.c:1852 src/main/character.c:1914
msgid "'old' is longer than 'new'"
msgstr ""
-#: src/main/character.c:1868
+#: src/main/character.c:1870
#, c-format
msgid "invalid input multibyte string %d"
msgstr ""
-#: src/main/character.c:2013
+#: src/main/character.c:2015
msgid "use of agrep() in a UTF-8 locale may only work for ASCII strings"
msgstr ""
-#: src/main/character.c:2022
+#: src/main/character.c:2024
msgid "could not allocate memory for approximate matching"
msgstr ""
-#: src/main/character.c:2046
+#: src/main/character.c:2048
msgid "could not perform case insensitive matching"
msgstr ""
-#: src/main/character.c:2098 src/main/character.c:2333
+#: src/main/character.c:2100 src/main/character.c:2335
msgid "argument must be a character vector of length 1"
msgstr ""
-#: src/main/character.c:2100 src/main/character.c:2335
+#: src/main/character.c:2102 src/main/character.c:2337
msgid ""
"argument should be a character vector of length 1\n"
"all but the first element will be ignored"
msgstr ""
-#: src/main/character.c:2116 src/main/character.c:2148
-#: src/main/character.c:2169
+#: src/main/character.c:2118 src/main/character.c:2150
+#: src/main/character.c:2171
msgid "argument 'x' must be a raw vector"
msgstr ""
-#: src/main/character.c:2119 src/main/character.c:2385
+#: src/main/character.c:2121 src/main/character.c:2387
msgid "argument 'multiple' must be TRUE or FALSE"
msgstr ""
-#: src/main/character.c:2150
+#: src/main/character.c:2152
msgid "argument 'shift' must be a small integer"
msgstr ""
-#: src/main/character.c:2187
+#: src/main/character.c:2189
msgid "argument 'x' must be a integer vector"
msgstr ""
-#: src/main/character.c:2207
+#: src/main/character.c:2209
msgid "argument 'x' must be raw, integer or logical"
msgstr ""
-#: src/main/character.c:2209
+#: src/main/character.c:2211
msgid "argument 'type' must be a character string"
msgstr ""
-#: src/main/character.c:2213
+#: src/main/character.c:2215
#, c-format
msgid "argument 'x' must be a multiple of %d long"
msgstr ""
-#: src/main/character.c:2227 src/main/character.c:2242
+#: src/main/character.c:2229 src/main/character.c:2244
msgid "argument 'x' must not contain NAs"
msgstr ""
-#: src/main/character.c:2382
+#: src/main/character.c:2384
msgid "argument 'x' must be an integer vector"
msgstr ""
-#: src/main/character.c:2427
+#: src/main/character.c:2429
msgid "strtrim() requires a character vector"
msgstr ""
@@ -5406,7 +5406,7 @@ msgstr ""
msgid "no input is available"
msgstr ""
-#: src/main/saveload.c:2365
+#: src/main/saveload.c:2366
msgid ""
"the input does not start with a magic number compatible with loading from a "
"connection"
@@ -6016,7 +6016,7 @@ msgid "[[ ]] subscript (%d) out of bound
msgstr ""
#: src/main/subassign.c:1769 src/main/subscript.c:111 src/main/subscript.c:188
-#: src/main/subscript.c:588 src/main/subset.c:923
+#: src/main/subscript.c:589 src/main/subset.c:923
msgid "invalid subscript type"
msgstr ""
@@ -6052,19 +6052,19 @@ msgstr ""
msgid "only 0's may be mixed with negative subscripts"
msgstr ""
-#: src/main/subscript.c:410
+#: src/main/subscript.c:411
msgid "character vector element does not have type CHARSXP"
msgstr ""
-#: src/main/subscript.c:487
+#: src/main/subscript.c:488
msgid "no 'dimnames' attribute for array"
msgstr ""
-#: src/main/subscript.c:494
+#: src/main/subscript.c:495
msgid "invalid subscript"
msgstr ""
-#: src/main/subscript.c:527
+#: src/main/subscript.c:528
msgid "subscripting on non-vector"
msgstr ""
Binary files R-2.4.0.old/po/en.gmo and R-2.4.0/po/en.gmo differ
diff -urp R-2.4.0.old/po/en.po R-2.4.0/po/en.po
--- R-2.4.0.old/po/en.po 2006-09-26 21:05:18.000000000 -0500
+++ R-2.4.0/po/en.po 2006-10-28 14:36:10.000000000 -0500
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: R 2.1.0\n"
"Report-Msgid-Bugs-To: bugs@R-project.org\n"
-"POT-Creation-Date: 2006-09-26 14:32+0100\n"
+"POT-Creation-Date: 2006-10-24 15:53+0100\n"
"PO-Revision-Date: 2005-01-25 12:01+0000\n"
"Last-Translator: Brian Ripley <Brian.Ripley@R-project.org>\n"
"Language-Team: R-core <R-core@R-project.org>\n"
@@ -80,7 +80,7 @@ msgstr ""
#: src/gnuwin32/extra.c:758 src/gnuwin32/extra.c:761 src/gnuwin32/extra.c:766
#: src/main/builtin.c:127 src/main/builtin.c:385 src/main/builtin.c:401
#: src/main/character.c:116 src/main/character.c:119 src/main/character.c:158
-#: src/main/character.c:2432 src/main/character.c:2436
+#: src/main/character.c:2434 src/main/character.c:2438
#: src/main/connections.c:822 src/main/connections.c:828
#: src/main/connections.c:831 src/main/connections.c:835
#: src/main/connections.c:958 src/main/connections.c:964
@@ -125,7 +125,7 @@ msgstr ""
#: src/main/print.c:176 src/main/print.c:182 src/main/print.c:204
#: src/main/print.c:210 src/main/random.c:465 src/main/random.c:469
#: src/main/random.c:471 src/main/random.c:473 src/main/saveload.c:2076
-#: src/main/saveload.c:2341 src/main/saveload.c:2390 src/main/seq.c:346
+#: src/main/saveload.c:2341 src/main/saveload.c:2391 src/main/seq.c:346
#: src/main/seq.c:350 src/main/seq.c:368 src/main/seq.c:375
#: src/main/sysutils.c:396 src/main/sysutils.c:398 src/main/sysutils.c:400
#: src/main/unique.c:576 src/main/util.c:527 src/main/util.c:530
@@ -469,7 +469,7 @@ msgid "second argument must be a list"
msgstr ""
#: src/include/Errormsg.h:42 src/main/eval.c:2715 src/main/subscript.c:228
-#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:436
+#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:437
msgid "subscript out of bounds"
msgstr ""
@@ -1131,7 +1131,7 @@ msgstr ""
#: src/main/envir.c:2729 src/main/envir.c:2763 src/main/envir.c:2783
#: src/main/envir.c:3107 src/main/envir.c:3111 src/main/eval.c:3498
#: src/main/objects.c:175 src/main/objects.c:181 src/main/saveload.c:2072
-#: src/main/saveload.c:2338 src/main/saveload.c:2387 src/main/serialize.c:2175
+#: src/main/saveload.c:2338 src/main/saveload.c:2388 src/main/serialize.c:2175
msgid "use of NULL environment is defunct"
msgstr ""
@@ -1264,156 +1264,156 @@ msgstr ""
msgid "the first argument must be a character vector"
msgstr ""
-#: src/main/character.c:725
+#: src/main/character.c:727
msgid "abbreviate used with non-ASCII chars"
msgstr ""
-#: src/main/character.c:743
+#: src/main/character.c:745
msgid "non-character names"
msgstr ""
-#: src/main/character.c:747
+#: src/main/character.c:749
msgid "invalid value of 'allow_'"
msgstr ""
-#: src/main/character.c:808 src/main/character.c:1586
+#: src/main/character.c:810 src/main/character.c:1588
#, c-format
msgid "invalid multibyte string %d"
msgstr ""
-#: src/main/character.c:889 src/main/character.c:1221
-#: src/main/character.c:1510 src/main/pcre.c:110 src/main/pcre.c:487
+#: src/main/character.c:891 src/main/character.c:1223
+#: src/main/character.c:1512 src/main/pcre.c:110 src/main/pcre.c:487
#: src/main/pcre.c:582
msgid "regular expression is invalid in this locale"
msgstr ""
-#: src/main/character.c:911 src/main/character.c:1063
-#: src/main/character.c:1224 src/main/character.c:1513 src/main/pcre.c:117
+#: src/main/character.c:913 src/main/character.c:1065
+#: src/main/character.c:1226 src/main/character.c:1515 src/main/pcre.c:117
#: src/main/pcre.c:332 src/main/pcre.c:492 src/main/pcre.c:587
#, c-format
msgid "invalid regular expression '%s'"
msgstr ""
-#: src/main/character.c:921 src/main/character.c:1239
-#: src/main/character.c:1530 src/main/pcre.c:132 src/main/pcre.c:365
+#: src/main/character.c:923 src/main/character.c:1241
+#: src/main/character.c:1532 src/main/pcre.c:132 src/main/pcre.c:365
#: src/main/pcre.c:507 src/main/pcre.c:610
#, c-format
msgid "input string %d is invalid in this locale"
msgstr ""
-#: src/main/character.c:976 src/main/pcre.c:187
+#: src/main/character.c:978 src/main/pcre.c:187
#, c-format
msgid "invalid backreference %d in regular expression"
msgstr ""
-#: src/main/character.c:1058 src/main/pcre.c:319
+#: src/main/character.c:1060 src/main/pcre.c:319
msgid "'pattern' is invalid in this locale"
msgstr ""
-#: src/main/character.c:1060 src/main/pcre.c:321
+#: src/main/character.c:1062 src/main/pcre.c:321
msgid "'replacement' is invalid in this locale"
msgstr ""
-#: src/main/character.c:1069
+#: src/main/character.c:1071
msgid "zero-length pattern"
msgstr ""
-#: src/main/character.c:1561
+#: src/main/character.c:1563
msgid "non-character argument to tolower()"
msgstr ""
-#: src/main/character.c:1639
+#: src/main/character.c:1641
#, c-format
msgid "decreasing range specification ('%lc-%lc')"
msgstr ""
-#: src/main/character.c:1725
+#: src/main/character.c:1727
#, c-format
msgid "decreasing range specification ('%c-%c')"
msgstr ""
-#: src/main/character.c:1802
+#: src/main/character.c:1804
msgid "invalid (NA) arguments."
msgstr ""
-#: src/main/character.c:1824
+#: src/main/character.c:1826
msgid "invalid multibyte string 'old'"
msgstr ""
-#: src/main/character.c:1831
+#: src/main/character.c:1833
msgid "invalid multibyte string 'new'"
msgstr ""
-#: src/main/character.c:1850 src/main/character.c:1912
+#: src/main/character.c:1852 src/main/character.c:1914
msgid "'old' is longer than 'new'"
msgstr ""
-#: src/main/character.c:1868
+#: src/main/character.c:1870
#, c-format
msgid "invalid input multibyte string %d"
msgstr ""
-#: src/main/character.c:2013
+#: src/main/character.c:2015
msgid "use of agrep() in a UTF-8 locale may only work for ASCII strings"
msgstr ""
-#: src/main/character.c:2022
+#: src/main/character.c:2024
msgid "could not allocate memory for approximate matching"
msgstr ""
-#: src/main/character.c:2046
+#: src/main/character.c:2048
msgid "could not perform case insensitive matching"
msgstr ""
-#: src/main/character.c:2098 src/main/character.c:2333
+#: src/main/character.c:2100 src/main/character.c:2335
msgid "argument must be a character vector of length 1"
msgstr ""
-#: src/main/character.c:2100 src/main/character.c:2335
+#: src/main/character.c:2102 src/main/character.c:2337
msgid ""
"argument should be a character vector of length 1\n"
"all but the first element will be ignored"
msgstr ""
-#: src/main/character.c:2116 src/main/character.c:2148
-#: src/main/character.c:2169
+#: src/main/character.c:2118 src/main/character.c:2150
+#: src/main/character.c:2171
msgid "argument 'x' must be a raw vector"
msgstr ""
-#: src/main/character.c:2119 src/main/character.c:2385
+#: src/main/character.c:2121 src/main/character.c:2387
msgid "argument 'multiple' must be TRUE or FALSE"
msgstr ""
-#: src/main/character.c:2150
+#: src/main/character.c:2152
msgid "argument 'shift' must be a small integer"
msgstr ""
-#: src/main/character.c:2187
+#: src/main/character.c:2189
msgid "argument 'x' must be a integer vector"
msgstr ""
-#: src/main/character.c:2207
+#: src/main/character.c:2209
msgid "argument 'x' must be raw, integer or logical"
msgstr ""
-#: src/main/character.c:2209
+#: src/main/character.c:2211
msgid "argument 'type' must be a character string"
msgstr ""
-#: src/main/character.c:2213
+#: src/main/character.c:2215
#, c-format
msgid "argument 'x' must be a multiple of %d long"
msgstr ""
-#: src/main/character.c:2227 src/main/character.c:2242
+#: src/main/character.c:2229 src/main/character.c:2244
msgid "argument 'x' must not contain NAs"
msgstr ""
-#: src/main/character.c:2382
+#: src/main/character.c:2384
msgid "argument 'x' must be an integer vector"
msgstr ""
-#: src/main/character.c:2427
+#: src/main/character.c:2429
msgid "strtrim() requires a character vector"
msgstr ""
@@ -5404,7 +5404,7 @@ msgstr ""
msgid "no input is available"
msgstr ""
-#: src/main/saveload.c:2365
+#: src/main/saveload.c:2366
msgid ""
"the input does not start with a magic number compatible with loading from a "
"connection"
@@ -6014,7 +6014,7 @@ msgid "[[ ]] subscript (%d) out of bound
msgstr ""
#: src/main/subassign.c:1769 src/main/subscript.c:111 src/main/subscript.c:188
-#: src/main/subscript.c:588 src/main/subset.c:923
+#: src/main/subscript.c:589 src/main/subset.c:923
msgid "invalid subscript type"
msgstr ""
@@ -6050,19 +6050,19 @@ msgstr ""
msgid "only 0's may be mixed with negative subscripts"
msgstr ""
-#: src/main/subscript.c:410
+#: src/main/subscript.c:411
msgid "character vector element does not have type CHARSXP"
msgstr ""
-#: src/main/subscript.c:487
+#: src/main/subscript.c:488
msgid "no 'dimnames' attribute for array"
msgstr ""
-#: src/main/subscript.c:494
+#: src/main/subscript.c:495
msgid "invalid subscript"
msgstr ""
-#: src/main/subscript.c:527
+#: src/main/subscript.c:528
msgid "subscripting on non-vector"
msgstr ""
Binary files R-2.4.0.old/po/en@quot.gmo and R-2.4.0/po/en@quot.gmo differ
diff -urp R-2.4.0.old/po/en@quot.po R-2.4.0/po/en@quot.po
--- R-2.4.0.old/po/en@quot.po 2006-09-26 21:05:18.000000000 -0500
+++ R-2.4.0/po/en@quot.po 2006-10-28 14:36:10.000000000 -0500
@@ -29,8 +29,8 @@ msgid ""
msgstr ""
"Project-Id-Version: R 2.4.0\n"
"Report-Msgid-Bugs-To: bugs@R-project.org\n"
-"POT-Creation-Date: 2006-09-26 14:32+0100\n"
-"PO-Revision-Date: 2006-09-26 14:32+0100\n"
+"POT-Creation-Date: 2006-10-24 15:53+0100\n"
+"PO-Revision-Date: 2006-10-24 15:53+0100\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
"MIME-Version: 1.0\n"
@@ -104,7 +104,7 @@ msgstr "invalid names in R_unli
#: src/gnuwin32/extra.c:758 src/gnuwin32/extra.c:761 src/gnuwin32/extra.c:766
#: src/main/builtin.c:127 src/main/builtin.c:385 src/main/builtin.c:401
#: src/main/character.c:116 src/main/character.c:119 src/main/character.c:158
-#: src/main/character.c:2432 src/main/character.c:2436
+#: src/main/character.c:2434 src/main/character.c:2438
#: src/main/connections.c:822 src/main/connections.c:828
#: src/main/connections.c:831 src/main/connections.c:835
#: src/main/connections.c:958 src/main/connections.c:964
@@ -149,7 +149,7 @@ msgstr "invalid names in R_unli
#: src/main/print.c:176 src/main/print.c:182 src/main/print.c:204
#: src/main/print.c:210 src/main/random.c:465 src/main/random.c:469
#: src/main/random.c:471 src/main/random.c:473 src/main/saveload.c:2076
-#: src/main/saveload.c:2341 src/main/saveload.c:2390 src/main/seq.c:346
+#: src/main/saveload.c:2341 src/main/saveload.c:2391 src/main/seq.c:346
#: src/main/seq.c:350 src/main/seq.c:368 src/main/seq.c:375
#: src/main/sysutils.c:396 src/main/sysutils.c:398 src/main/sysutils.c:400
#: src/main/unique.c:576 src/main/util.c:527 src/main/util.c:530
@@ -494,7 +494,7 @@ msgid "second argument must be a list"
msgstr "second argument must be a list"
#: src/include/Errormsg.h:42 src/main/eval.c:2715 src/main/subscript.c:228
-#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:436
+#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:437
msgid "subscript out of bounds"
msgstr "subscript out of bounds"
@@ -1166,7 +1166,7 @@ msgstr "vector size specified is too lar
#: src/main/envir.c:2729 src/main/envir.c:2763 src/main/envir.c:2783
#: src/main/envir.c:3107 src/main/envir.c:3111 src/main/eval.c:3498
#: src/main/objects.c:175 src/main/objects.c:181 src/main/saveload.c:2072
-#: src/main/saveload.c:2338 src/main/saveload.c:2387 src/main/serialize.c:2175
+#: src/main/saveload.c:2338 src/main/saveload.c:2388 src/main/serialize.c:2175
msgid "use of NULL environment is defunct"
msgstr "use of NULL environment is defunct"
@@ -1299,112 +1299,112 @@ msgstr "invalid split pattern %s"
msgid "the first argument must be a character vector"
msgstr "the first argument must be a character vector"
-#: src/main/character.c:725
+#: src/main/character.c:727
msgid "abbreviate used with non-ASCII chars"
msgstr "abbreviate used with non-ASCII chars"
-#: src/main/character.c:743
+#: src/main/character.c:745
msgid "non-character names"
msgstr "non-character names"
-#: src/main/character.c:747
+#: src/main/character.c:749
msgid "invalid value of 'allow_'"
msgstr "invalid value of allow_"
-#: src/main/character.c:808 src/main/character.c:1586
+#: src/main/character.c:810 src/main/character.c:1588
#, c-format
msgid "invalid multibyte string %d"
msgstr "invalid multibyte string %d"
-#: src/main/character.c:889 src/main/character.c:1221
-#: src/main/character.c:1510 src/main/pcre.c:110 src/main/pcre.c:487
+#: src/main/character.c:891 src/main/character.c:1223
+#: src/main/character.c:1512 src/main/pcre.c:110 src/main/pcre.c:487
#: src/main/pcre.c:582
msgid "regular expression is invalid in this locale"
msgstr "regular expression is invalid in this locale"
-#: src/main/character.c:911 src/main/character.c:1063
-#: src/main/character.c:1224 src/main/character.c:1513 src/main/pcre.c:117
+#: src/main/character.c:913 src/main/character.c:1065
+#: src/main/character.c:1226 src/main/character.c:1515 src/main/pcre.c:117
#: src/main/pcre.c:332 src/main/pcre.c:492 src/main/pcre.c:587
#, c-format
msgid "invalid regular expression '%s'"
msgstr "invalid regular expression %s"
-#: src/main/character.c:921 src/main/character.c:1239
-#: src/main/character.c:1530 src/main/pcre.c:132 src/main/pcre.c:365
+#: src/main/character.c:923 src/main/character.c:1241
+#: src/main/character.c:1532 src/main/pcre.c:132 src/main/pcre.c:365
#: src/main/pcre.c:507 src/main/pcre.c:610
#, c-format
msgid "input string %d is invalid in this locale"
msgstr "input string %d is invalid in this locale"
-#: src/main/character.c:976 src/main/pcre.c:187
+#: src/main/character.c:978 src/main/pcre.c:187
#, c-format
msgid "invalid backreference %d in regular expression"
msgstr "invalid backreference %d in regular expression"
-#: src/main/character.c:1058 src/main/pcre.c:319
+#: src/main/character.c:1060 src/main/pcre.c:319
msgid "'pattern' is invalid in this locale"
msgstr "pattern is invalid in this locale"
-#: src/main/character.c:1060 src/main/pcre.c:321
+#: src/main/character.c:1062 src/main/pcre.c:321
msgid "'replacement' is invalid in this locale"
msgstr "replacement is invalid in this locale"
-#: src/main/character.c:1069
+#: src/main/character.c:1071
msgid "zero-length pattern"
msgstr "zero-length pattern"
-#: src/main/character.c:1561
+#: src/main/character.c:1563
msgid "non-character argument to tolower()"
msgstr "non-character argument to tolower()"
-#: src/main/character.c:1639
+#: src/main/character.c:1641
#, c-format
msgid "decreasing range specification ('%lc-%lc')"
msgstr "decreasing range specification ('%lc-%lc')"
-#: src/main/character.c:1725
+#: src/main/character.c:1727
#, c-format
msgid "decreasing range specification ('%c-%c')"
msgstr "decreasing range specification ('%c-%c')"
-#: src/main/character.c:1802
+#: src/main/character.c:1804
msgid "invalid (NA) arguments."
msgstr "invalid (NA) arguments."
-#: src/main/character.c:1824
+#: src/main/character.c:1826
msgid "invalid multibyte string 'old'"
msgstr "invalid multibyte string old"
-#: src/main/character.c:1831
+#: src/main/character.c:1833
msgid "invalid multibyte string 'new'"
msgstr "invalid multibyte string new"
-#: src/main/character.c:1850 src/main/character.c:1912
+#: src/main/character.c:1852 src/main/character.c:1914
msgid "'old' is longer than 'new'"
msgstr "old is longer than new"
-#: src/main/character.c:1868
+#: src/main/character.c:1870
#, c-format
msgid "invalid input multibyte string %d"
msgstr "invalid input multibyte string %d"
-#: src/main/character.c:2013
+#: src/main/character.c:2015
msgid "use of agrep() in a UTF-8 locale may only work for ASCII strings"
msgstr "use of agrep() in a UTF-8 locale may only work for ASCII strings"
-#: src/main/character.c:2022
+#: src/main/character.c:2024
msgid "could not allocate memory for approximate matching"
msgstr "could not allocate memory for approximate matching"
-#: src/main/character.c:2046
+#: src/main/character.c:2048
msgid "could not perform case insensitive matching"
msgstr "could not perform case insensitive matching"
-#: src/main/character.c:2098 src/main/character.c:2333
+#: src/main/character.c:2100 src/main/character.c:2335
msgid "argument must be a character vector of length 1"
msgstr "argument must be a character vector of length 1"
-#: src/main/character.c:2100 src/main/character.c:2335
+#: src/main/character.c:2102 src/main/character.c:2337
msgid ""
"argument should be a character vector of length 1\n"
"all but the first element will be ignored"
@@ -1412,45 +1412,45 @@ msgstr ""
"argument should be a character vector of length 1\n"
"all but the first element will be ignored"
-#: src/main/character.c:2116 src/main/character.c:2148
-#: src/main/character.c:2169
+#: src/main/character.c:2118 src/main/character.c:2150
+#: src/main/character.c:2171
msgid "argument 'x' must be a raw vector"
msgstr "argument x must be a raw vector"
-#: src/main/character.c:2119 src/main/character.c:2385
+#: src/main/character.c:2121 src/main/character.c:2387
msgid "argument 'multiple' must be TRUE or FALSE"
msgstr "argument multiple must be TRUE or FALSE"
-#: src/main/character.c:2150
+#: src/main/character.c:2152
msgid "argument 'shift' must be a small integer"
msgstr "argument shift must be a small integer"
-#: src/main/character.c:2187
+#: src/main/character.c:2189
msgid "argument 'x' must be a integer vector"
msgstr "argument x must be a integer vector"
-#: src/main/character.c:2207
+#: src/main/character.c:2209
msgid "argument 'x' must be raw, integer or logical"
msgstr "argument x must be raw, integer or logical"
-#: src/main/character.c:2209
+#: src/main/character.c:2211
msgid "argument 'type' must be a character string"
msgstr "argument type must be a character string"
-#: src/main/character.c:2213
+#: src/main/character.c:2215
#, c-format
msgid "argument 'x' must be a multiple of %d long"
msgstr "argument x must be a multiple of %d long"
-#: src/main/character.c:2227 src/main/character.c:2242
+#: src/main/character.c:2229 src/main/character.c:2244
msgid "argument 'x' must not contain NAs"
msgstr "argument x must not contain NAs"
-#: src/main/character.c:2382
+#: src/main/character.c:2384
msgid "argument 'x' must be an integer vector"
msgstr "argument x must be an integer vector"
-#: src/main/character.c:2427
+#: src/main/character.c:2429
msgid "strtrim() requires a character vector"
msgstr "strtrim() requires a character vector"
@@ -5479,7 +5479,7 @@ msgstr "error writing to connection"
msgid "no input is available"
msgstr "no input is available"
-#: src/main/saveload.c:2365
+#: src/main/saveload.c:2366
msgid ""
"the input does not start with a magic number compatible with loading from a "
"connection"
@@ -6103,7 +6103,7 @@ msgid "[[ ]] subscript (%d) out of bound
msgstr "[[ ]] subscript (%d) out of bounds"
#: src/main/subassign.c:1769 src/main/subscript.c:111 src/main/subscript.c:188
-#: src/main/subscript.c:588 src/main/subset.c:923
+#: src/main/subscript.c:589 src/main/subset.c:923
msgid "invalid subscript type"
msgstr "invalid subscript type"
@@ -6139,19 +6139,19 @@ msgstr "(subscript) logical subscript to
msgid "only 0's may be mixed with negative subscripts"
msgstr "only 0's may be mixed with negative subscripts"
-#: src/main/subscript.c:410
+#: src/main/subscript.c:411
msgid "character vector element does not have type CHARSXP"
msgstr "character vector element does not have type CHARSXP"
-#: src/main/subscript.c:487
+#: src/main/subscript.c:488
msgid "no 'dimnames' attribute for array"
msgstr "no dimnames attribute for array"
-#: src/main/subscript.c:494
+#: src/main/subscript.c:495
msgid "invalid subscript"
msgstr "invalid subscript"
-#: src/main/subscript.c:527
+#: src/main/subscript.c:528
msgid "subscripting on non-vector"
msgstr "subscripting on non-vector"
Binary files R-2.4.0.old/po/es.gmo and R-2.4.0/po/es.gmo differ
diff -urp R-2.4.0.old/po/es.po R-2.4.0/po/es.po
--- R-2.4.0.old/po/es.po 2006-09-26 21:05:18.000000000 -0500
+++ R-2.4.0/po/es.po 2006-10-28 14:36:08.000000000 -0500
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: R 2.3.0\n"
"Report-Msgid-Bugs-To: bugs@R-project.org\n"
-"POT-Creation-Date: 2006-09-26 14:32+0100\n"
+"POT-Creation-Date: 2006-10-24 15:53+0100\n"
"PO-Revision-Date: 2006-04-17 00:24+0100\n"
"Last-Translator: Pablo E. Verde <pabloemilio.verde@uni-duesseldorf.de>\n"
"Language-Team: Spanish <RenEspanol@googlegroups.com>\n"
@@ -84,7 +84,7 @@ msgstr "'names' inv<6E>lidos en R_unlink"
#: src/gnuwin32/extra.c:758 src/gnuwin32/extra.c:761 src/gnuwin32/extra.c:766
#: src/main/builtin.c:127 src/main/builtin.c:385 src/main/builtin.c:401
#: src/main/character.c:116 src/main/character.c:119 src/main/character.c:158
-#: src/main/character.c:2432 src/main/character.c:2436
+#: src/main/character.c:2434 src/main/character.c:2438
#: src/main/connections.c:822 src/main/connections.c:828
#: src/main/connections.c:831 src/main/connections.c:835
#: src/main/connections.c:958 src/main/connections.c:964
@@ -129,7 +129,7 @@ msgstr "'names' inv<6E>lidos en R_unlink"
#: src/main/print.c:176 src/main/print.c:182 src/main/print.c:204
#: src/main/print.c:210 src/main/random.c:465 src/main/random.c:469
#: src/main/random.c:471 src/main/random.c:473 src/main/saveload.c:2076
-#: src/main/saveload.c:2341 src/main/saveload.c:2390 src/main/seq.c:346
+#: src/main/saveload.c:2341 src/main/saveload.c:2391 src/main/seq.c:346
#: src/main/seq.c:350 src/main/seq.c:368 src/main/seq.c:375
#: src/main/sysutils.c:396 src/main/sysutils.c:398 src/main/sysutils.c:400
#: src/main/unique.c:576 src/main/util.c:527 src/main/util.c:530
@@ -481,7 +481,7 @@ msgid "second argument must be a list"
msgstr "el segundo argumento debe ser una lista"
#: src/include/Errormsg.h:42 src/main/eval.c:2715 src/main/subscript.c:228
-#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:436
+#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:437
msgid "subscript out of bounds"
msgstr "sub<75>ndice fuera de los l<>mites"
@@ -1162,7 +1162,7 @@ msgstr "tama<6D>o del vector especificado e
#: src/main/envir.c:2729 src/main/envir.c:2763 src/main/envir.c:2783
#: src/main/envir.c:3107 src/main/envir.c:3111 src/main/eval.c:3498
#: src/main/objects.c:175 src/main/objects.c:181 src/main/saveload.c:2072
-#: src/main/saveload.c:2338 src/main/saveload.c:2387 src/main/serialize.c:2175
+#: src/main/saveload.c:2338 src/main/saveload.c:2388 src/main/serialize.c:2175
msgid "use of NULL environment is defunct"
msgstr ""
@@ -1299,114 +1299,114 @@ msgstr "patr<74>n de separaci<63>n inv<6E>lido '%
msgid "the first argument must be a character vector"
msgstr "el primer argumento debe ser un vector de caracteres"
-#: src/main/character.c:725
+#: src/main/character.c:727
msgid "abbreviate used with non-ASCII chars"
msgstr "abreviatura utilizada con caracteres no ASCII"
-#: src/main/character.c:743
+#: src/main/character.c:745
msgid "non-character names"
msgstr "nombres de tipo no caracter"
-#: src/main/character.c:747
+#: src/main/character.c:749
msgid "invalid value of 'allow_'"
msgstr "valor de 'allow_' inv<6E>lido"
-#: src/main/character.c:808 src/main/character.c:1586
+#: src/main/character.c:810 src/main/character.c:1588
#, c-format
msgid "invalid multibyte string %d"
msgstr "string multibyte inv<6E>lida %d"
-#: src/main/character.c:889 src/main/character.c:1221
-#: src/main/character.c:1510 src/main/pcre.c:110 src/main/pcre.c:487
+#: src/main/character.c:891 src/main/character.c:1223
+#: src/main/character.c:1512 src/main/pcre.c:110 src/main/pcre.c:487
#: src/main/pcre.c:582
msgid "regular expression is invalid in this locale"
msgstr "la expresi<73>n regular es inv<6E>lida es este locale"
-#: src/main/character.c:911 src/main/character.c:1063
-#: src/main/character.c:1224 src/main/character.c:1513 src/main/pcre.c:117
+#: src/main/character.c:913 src/main/character.c:1065
+#: src/main/character.c:1226 src/main/character.c:1515 src/main/pcre.c:117
#: src/main/pcre.c:332 src/main/pcre.c:492 src/main/pcre.c:587
#, c-format
msgid "invalid regular expression '%s'"
msgstr "expresi<73>n regular inv<6E>lida '%s'"
-#: src/main/character.c:921 src/main/character.c:1239
-#: src/main/character.c:1530 src/main/pcre.c:132 src/main/pcre.c:365
+#: src/main/character.c:923 src/main/character.c:1241
+#: src/main/character.c:1532 src/main/pcre.c:132 src/main/pcre.c:365
#: src/main/pcre.c:507 src/main/pcre.c:610
#, c-format
msgid "input string %d is invalid in this locale"
msgstr "string de entrada %d es inv<6E>lida en este locale"
-#: src/main/character.c:976 src/main/pcre.c:187
+#: src/main/character.c:978 src/main/pcre.c:187
#, c-format
msgid "invalid backreference %d in regular expression"
msgstr "auto-referencia %d inv<6E>lida en una expresi<73>n regular"
-#: src/main/character.c:1058 src/main/pcre.c:319
+#: src/main/character.c:1060 src/main/pcre.c:319
msgid "'pattern' is invalid in this locale"
msgstr "'pattern' es inv<6E>lido en este locale"
-#: src/main/character.c:1060 src/main/pcre.c:321
+#: src/main/character.c:1062 src/main/pcre.c:321
msgid "'replacement' is invalid in this locale"
msgstr "'replacement' es inv<6E>lido en este locale"
-#: src/main/character.c:1069
+#: src/main/character.c:1071
msgid "zero-length pattern"
msgstr "patr<74>n de longitud 0"
-#: src/main/character.c:1561
+#: src/main/character.c:1563
msgid "non-character argument to tolower()"
msgstr "argumento que no es caracter para tolower()"
-#: src/main/character.c:1639
+#: src/main/character.c:1641
#, c-format
msgid "decreasing range specification ('%lc-%lc')"
msgstr "especificaci<63>n de rango decreciente ('%lc-%lc')"
-#: src/main/character.c:1725
+#: src/main/character.c:1727
#, c-format
msgid "decreasing range specification ('%c-%c')"
msgstr "especificaci<63>n de rango decreciente ('%c-%c')"
-#: src/main/character.c:1802
+#: src/main/character.c:1804
msgid "invalid (NA) arguments."
msgstr "argumentos (NA) inv<6E>lidos"
-#: src/main/character.c:1824
+#: src/main/character.c:1826
msgid "invalid multibyte string 'old'"
msgstr "string multibyte inv<6E>lida 'old'"
-#: src/main/character.c:1831
+#: src/main/character.c:1833
msgid "invalid multibyte string 'new'"
msgstr "string multibyte inv<6E>lida 'new'"
-#: src/main/character.c:1850 src/main/character.c:1912
+#: src/main/character.c:1852 src/main/character.c:1914
msgid "'old' is longer than 'new'"
msgstr "'old' es m<>s largo que 'new'"
-#: src/main/character.c:1868
+#: src/main/character.c:1870
#, c-format
msgid "invalid input multibyte string %d"
msgstr "string multibyte %d de entrada inv<6E>lida"
-#: src/main/character.c:2013
+#: src/main/character.c:2015
msgid "use of agrep() in a UTF-8 locale may only work for ASCII strings"
msgstr ""
"el uso de agrep() en un locale UTF-8 puede funcionar s<>lo para strings ASCII"
-#: src/main/character.c:2022
+#: src/main/character.c:2024
msgid "could not allocate memory for approximate matching"
msgstr "no fue posible asignar memoria para una concordancia aproximado"
-#: src/main/character.c:2046
+#: src/main/character.c:2048
msgid "could not perform case insensitive matching"
msgstr ""
"no fue posible realizar una concordancia no sensible a may<61>sculas/min<69>sculas"
-#: src/main/character.c:2098 src/main/character.c:2333
+#: src/main/character.c:2100 src/main/character.c:2335
msgid "argument must be a character vector of length 1"
msgstr "el argumento debe ser un vector de caracteres de longitud 1"
-#: src/main/character.c:2100 src/main/character.c:2335
+#: src/main/character.c:2102 src/main/character.c:2337
msgid ""
"argument should be a character vector of length 1\n"
"all but the first element will be ignored"
@@ -1414,45 +1414,45 @@ msgstr ""
"el argumento debe ser un vector de caracteres de longitud 1\n"
"todos los elementos ser<65>n ignorados, salvo el primero"
-#: src/main/character.c:2116 src/main/character.c:2148
-#: src/main/character.c:2169
+#: src/main/character.c:2118 src/main/character.c:2150
+#: src/main/character.c:2171
msgid "argument 'x' must be a raw vector"
msgstr "el argumento 'x' debe ser un vector de tipo crudo"
-#: src/main/character.c:2119 src/main/character.c:2385
+#: src/main/character.c:2121 src/main/character.c:2387
msgid "argument 'multiple' must be TRUE or FALSE"
msgstr "el argumento 'multiple' debe ser TRUE o FALSE"
-#: src/main/character.c:2150
+#: src/main/character.c:2152
msgid "argument 'shift' must be a small integer"
msgstr "el argumento 'shift' debe ser un entero peque<75>o"
-#: src/main/character.c:2187
+#: src/main/character.c:2189
msgid "argument 'x' must be a integer vector"
msgstr "el argumento 'x' debe ser un vector entero"
-#: src/main/character.c:2207
+#: src/main/character.c:2209
msgid "argument 'x' must be raw, integer or logical"
msgstr "el argumento 'x' debe ser crudo, entero o l<>gico"
-#: src/main/character.c:2209
+#: src/main/character.c:2211
msgid "argument 'type' must be a character string"
msgstr "el argumento 'type' debe ser una cadena de caracteres"
-#: src/main/character.c:2213
+#: src/main/character.c:2215
#, c-format
msgid "argument 'x' must be a multiple of %d long"
msgstr "el argumento 'x' debe ser un m<>ltiplo de la longitud de %d"
-#: src/main/character.c:2227 src/main/character.c:2242
+#: src/main/character.c:2229 src/main/character.c:2244
msgid "argument 'x' must not contain NAs"
msgstr "el argumento 'x' no puede contener NAs"
-#: src/main/character.c:2382
+#: src/main/character.c:2384
msgid "argument 'x' must be an integer vector"
msgstr "el argumento 'x' debe ser un vector entero"
-#: src/main/character.c:2427
+#: src/main/character.c:2429
msgid "strtrim() requires a character vector"
msgstr "strtrim() requiere un vector de caracteres"
@@ -5545,7 +5545,7 @@ msgstr "error al escribir una conexi<78>n"
msgid "no input is available"
msgstr "no hay disponible mecanismos de historia"
-#: src/main/saveload.c:2365
+#: src/main/saveload.c:2366
msgid ""
"the input does not start with a magic number compatible with loading from a "
"connection"
@@ -6185,7 +6185,7 @@ msgid "[[ ]] subscript (%d) out of bound
msgstr "subscrito (%d) en [[ ]] fuera de limites"
#: src/main/subassign.c:1769 src/main/subscript.c:111 src/main/subscript.c:188
-#: src/main/subscript.c:588 src/main/subset.c:923
+#: src/main/subscript.c:589 src/main/subset.c:923
msgid "invalid subscript type"
msgstr "tipo de subscrito invalido"
@@ -6221,19 +6221,19 @@ msgstr "(subscript) subscrito logico muy
msgid "only 0's may be mixed with negative subscripts"
msgstr "solamente 0's pueden ser mezclados con subscritos negativos"
-#: src/main/subscript.c:410
+#: src/main/subscript.c:411
msgid "character vector element does not have type CHARSXP"
msgstr "elemento del vector de caracteres no tiene tipo CHARSXP"
-#: src/main/subscript.c:487
+#: src/main/subscript.c:488
msgid "no 'dimnames' attribute for array"
msgstr "arreglo (array) sin atributo 'dimnames'"
-#: src/main/subscript.c:494
+#: src/main/subscript.c:495
msgid "invalid subscript"
msgstr "subscrito invalido"
-#: src/main/subscript.c:527
+#: src/main/subscript.c:528
msgid "subscripting on non-vector"
msgstr "intento de usar un subscrito e un objeto distinto a un vector"
Binary files R-2.4.0.old/po/fr.gmo and R-2.4.0/po/fr.gmo differ
diff -urp R-2.4.0.old/po/fr.po R-2.4.0/po/fr.po
--- R-2.4.0.old/po/fr.po 2006-09-26 21:05:18.000000000 -0500
+++ R-2.4.0/po/fr.po 2006-10-28 14:36:10.000000000 -0500
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: R-2.2.1\n"
"Report-Msgid-Bugs-To: bugs@R-project.org\n"
-"POT-Creation-Date: 2006-09-26 14:32+0100\n"
+"POT-Creation-Date: 2006-10-24 15:53+0100\n"
"PO-Revision-Date: 2006-04-18 08:23+0100\n"
"Last-Translator: Philippe Grosjean <phgrosjean@sciviews.org>\n"
"Language-Team: French <R-core@r-project.org>\n"
@@ -84,7 +84,7 @@ msgstr "'names' incorrect dans 'R_unlink
#: src/gnuwin32/extra.c:758 src/gnuwin32/extra.c:761 src/gnuwin32/extra.c:766
#: src/main/builtin.c:127 src/main/builtin.c:385 src/main/builtin.c:401
#: src/main/character.c:116 src/main/character.c:119 src/main/character.c:158
-#: src/main/character.c:2432 src/main/character.c:2436
+#: src/main/character.c:2434 src/main/character.c:2438
#: src/main/connections.c:822 src/main/connections.c:828
#: src/main/connections.c:831 src/main/connections.c:835
#: src/main/connections.c:958 src/main/connections.c:964
@@ -129,7 +129,7 @@ msgstr "'names' incorrect dans 'R_unlink
#: src/main/print.c:176 src/main/print.c:182 src/main/print.c:204
#: src/main/print.c:210 src/main/random.c:465 src/main/random.c:469
#: src/main/random.c:471 src/main/random.c:473 src/main/saveload.c:2076
-#: src/main/saveload.c:2341 src/main/saveload.c:2390 src/main/seq.c:346
+#: src/main/saveload.c:2341 src/main/saveload.c:2391 src/main/seq.c:346
#: src/main/seq.c:350 src/main/seq.c:368 src/main/seq.c:375
#: src/main/sysutils.c:396 src/main/sysutils.c:398 src/main/sysutils.c:400
#: src/main/unique.c:576 src/main/util.c:527 src/main/util.c:530
@@ -480,7 +480,7 @@ msgid "second argument must be a list"
msgstr "le second argument doit <20>tre une liste"
#: src/include/Errormsg.h:42 src/main/eval.c:2715 src/main/subscript.c:228
-#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:436
+#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:437
msgid "subscript out of bounds"
msgstr "indice hors limites"
@@ -1176,7 +1176,7 @@ msgstr "la longueur choisie pour le vect
#: src/main/envir.c:2729 src/main/envir.c:2763 src/main/envir.c:2783
#: src/main/envir.c:3107 src/main/envir.c:3111 src/main/eval.c:3498
#: src/main/objects.c:175 src/main/objects.c:181 src/main/saveload.c:2072
-#: src/main/saveload.c:2338 src/main/saveload.c:2387 src/main/serialize.c:2175
+#: src/main/saveload.c:2338 src/main/saveload.c:2388 src/main/serialize.c:2175
msgid "use of NULL environment is defunct"
msgstr "l'utilisation de l'environnement NULL n'est plus autoris<69>e"
@@ -1311,38 +1311,38 @@ msgstr "motif de d<>coupage '%s' incorrec
msgid "the first argument must be a character vector"
msgstr "le premier argument doit <20>tre un vecteur de caract<63>res"
-#: src/main/character.c:725
+#: src/main/character.c:727
msgid "abbreviate used with non-ASCII chars"
msgstr "abbreviate utilis<69> avec des caract<63>res non ASCII"
-#: src/main/character.c:743
+#: src/main/character.c:745
msgid "non-character names"
msgstr "les noms ne sont pas des cha<68>nes de caract<63>res"
-#: src/main/character.c:747
+#: src/main/character.c:749
msgid "invalid value of 'allow_'"
msgstr "valeur incorrecte pour 'allow_'"
-#: src/main/character.c:808 src/main/character.c:1586
+#: src/main/character.c:810 src/main/character.c:1588
#, c-format
msgid "invalid multibyte string %d"
msgstr "cha<68>ne de charact<63>res multioctets incorrecte %d"
-#: src/main/character.c:889 src/main/character.c:1221
-#: src/main/character.c:1510 src/main/pcre.c:110 src/main/pcre.c:487
+#: src/main/character.c:891 src/main/character.c:1223
+#: src/main/character.c:1512 src/main/pcre.c:110 src/main/pcre.c:487
#: src/main/pcre.c:582
msgid "regular expression is invalid in this locale"
msgstr "expression r<>guli<6C>re incorrecte dans cet environnement linguistique"
-#: src/main/character.c:911 src/main/character.c:1063
-#: src/main/character.c:1224 src/main/character.c:1513 src/main/pcre.c:117
+#: src/main/character.c:913 src/main/character.c:1065
+#: src/main/character.c:1226 src/main/character.c:1515 src/main/pcre.c:117
#: src/main/pcre.c:332 src/main/pcre.c:492 src/main/pcre.c:587
#, c-format
msgid "invalid regular expression '%s'"
msgstr "expression r<>guli<6C>re incorrecte '%s'"
-#: src/main/character.c:921 src/main/character.c:1239
-#: src/main/character.c:1530 src/main/pcre.c:132 src/main/pcre.c:365
+#: src/main/character.c:923 src/main/character.c:1241
+#: src/main/character.c:1532 src/main/pcre.c:132 src/main/pcre.c:365
#: src/main/pcre.c:507 src/main/pcre.c:610
#, c-format
msgid "input string %d is invalid in this locale"
@@ -1350,78 +1350,78 @@ msgstr ""
"la cha<68>ne de caract<63>res entr<74>e %d est incorrecte dans cet environnement "
"linguistique"
-#: src/main/character.c:976 src/main/pcre.c:187
+#: src/main/character.c:978 src/main/pcre.c:187
#, c-format
msgid "invalid backreference %d in regular expression"
msgstr "r<>f<EFBFBD>rence arri<72>re %d incorrecte dans l'expression r<>guli<6C>re"
-#: src/main/character.c:1058 src/main/pcre.c:319
+#: src/main/character.c:1060 src/main/pcre.c:319
msgid "'pattern' is invalid in this locale"
msgstr "'pattern' est incorrect dans cet environnement linguistique"
-#: src/main/character.c:1060 src/main/pcre.c:321
+#: src/main/character.c:1062 src/main/pcre.c:321
msgid "'replacement' is invalid in this locale"
msgstr "'replacement' est incorrect dans cet environnement linguistique"
-#: src/main/character.c:1069
+#: src/main/character.c:1071
msgid "zero-length pattern"
msgstr "motif de longueur nulle"
-#: src/main/character.c:1561
+#: src/main/character.c:1563
msgid "non-character argument to tolower()"
msgstr "l'argument de tolower() n'est pas une cha<68>ne de caract<63>res"
-#: src/main/character.c:1639
+#: src/main/character.c:1641
#, c-format
msgid "decreasing range specification ('%lc-%lc')"
msgstr "sp<73>cification de plage d<>croissante ('%lc-%lc')"
-#: src/main/character.c:1725
+#: src/main/character.c:1727
#, c-format
msgid "decreasing range specification ('%c-%c')"
msgstr "sp<73>cification de plage d<>croissante ('%c-%c')"
-#: src/main/character.c:1802
+#: src/main/character.c:1804
msgid "invalid (NA) arguments."
msgstr "arguments (NA) incorrects."
-#: src/main/character.c:1824
+#: src/main/character.c:1826
msgid "invalid multibyte string 'old'"
msgstr "cha<68>ne de charact<63>res multioctets 'old' incorrecte"
-#: src/main/character.c:1831
+#: src/main/character.c:1833
msgid "invalid multibyte string 'new'"
msgstr "cha<68>ne de charact<63>res multioctets 'new' incorrecte"
-#: src/main/character.c:1850 src/main/character.c:1912
+#: src/main/character.c:1852 src/main/character.c:1914
msgid "'old' is longer than 'new'"
msgstr "'old' est plus long que 'new'"
-#: src/main/character.c:1868
+#: src/main/character.c:1870
#, c-format
msgid "invalid input multibyte string %d"
msgstr "cha<68>ne de caract<63>res multioctets %d incorrecte en entr<74>e"
-#: src/main/character.c:2013
+#: src/main/character.c:2015
msgid "use of agrep() in a UTF-8 locale may only work for ASCII strings"
msgstr ""
"l'utilisation de agrep() dans un environnement UTF-8 ne peut fonctionner que "
"pour des cha<68>nes ASCII"
-#: src/main/character.c:2022
+#: src/main/character.c:2024
msgid "could not allocate memory for approximate matching"
msgstr ""
"impossible d'allouer de la m<>moire pour une correspondance approximative"
-#: src/main/character.c:2046
+#: src/main/character.c:2048
msgid "could not perform case insensitive matching"
msgstr "une correspondance ind<6E>pendante de la casse ne peut <20>tre effectu<74>e"
-#: src/main/character.c:2098 src/main/character.c:2333
+#: src/main/character.c:2100 src/main/character.c:2335
msgid "argument must be a character vector of length 1"
msgstr "l'argument doit <20>tre un vecteur de caract<63>res de longueur 1"
-#: src/main/character.c:2100 src/main/character.c:2335
+#: src/main/character.c:2102 src/main/character.c:2337
msgid ""
"argument should be a character vector of length 1\n"
"all but the first element will be ignored"
@@ -1429,45 +1429,45 @@ msgstr ""
"l'argument doit <20>tre un vecteur de caract<63>res de longueur 1\n"
"tous les <20>l<EFBFBD>ments sauf le premier sont ignor<6F>s"
-#: src/main/character.c:2116 src/main/character.c:2148
-#: src/main/character.c:2169
+#: src/main/character.c:2118 src/main/character.c:2150
+#: src/main/character.c:2171
msgid "argument 'x' must be a raw vector"
msgstr "l'argument 'x' doit <20>tre un vecteur de type raw"
-#: src/main/character.c:2119 src/main/character.c:2385
+#: src/main/character.c:2121 src/main/character.c:2387
msgid "argument 'multiple' must be TRUE or FALSE"
msgstr "l'argument 'multiple' doit <20>tre TRUE ou FALSE"
-#: src/main/character.c:2150
+#: src/main/character.c:2152
msgid "argument 'shift' must be a small integer"
msgstr "l'argument 'shift' doit <20>tre un petit entier"
-#: src/main/character.c:2187
+#: src/main/character.c:2189
msgid "argument 'x' must be a integer vector"
msgstr "l'argument 'x' doit <20>tre un vecteur d'entiers"
-#: src/main/character.c:2207
+#: src/main/character.c:2209
msgid "argument 'x' must be raw, integer or logical"
msgstr "l'argument 'x' doit <20>tre de type raw, entier ou logique"
-#: src/main/character.c:2209
+#: src/main/character.c:2211
msgid "argument 'type' must be a character string"
msgstr "l'argument 'type' doit <20>tre une cha<68>ne de caract<63>res"
-#: src/main/character.c:2213
+#: src/main/character.c:2215
#, c-format
msgid "argument 'x' must be a multiple of %d long"
msgstr "l'argument 'x' doit <20>tre un multiple de la longueur %d"
-#: src/main/character.c:2227 src/main/character.c:2242
+#: src/main/character.c:2229 src/main/character.c:2244
msgid "argument 'x' must not contain NAs"
msgstr "l'argument 'x' ne doit pas contenir de valeurs manquantes (NA)"
-#: src/main/character.c:2382
+#: src/main/character.c:2384
msgid "argument 'x' must be an integer vector"
msgstr "l'argument 'x' doit <20>tre un vecteur d'entiers"
-#: src/main/character.c:2427
+#: src/main/character.c:2429
msgid "strtrim() requires a character vector"
msgstr "strtrim() exige un vecteur de caract<63>res comme argument"
@@ -5607,7 +5607,7 @@ msgstr "erreur d'<27>criture vers la connex
msgid "no input is available"
msgstr "pas d'entr<74>e disponible"
-#: src/main/saveload.c:2365
+#: src/main/saveload.c:2366
msgid ""
"the input does not start with a magic number compatible with loading from a "
"connection"
@@ -6254,7 +6254,7 @@ msgid "[[ ]] subscript (%d) out of bound
msgstr "[[ ]] indice (%d) en dehors des bornes"
#: src/main/subassign.c:1769 src/main/subscript.c:111 src/main/subscript.c:188
-#: src/main/subscript.c:588 src/main/subset.c:923
+#: src/main/subscript.c:589 src/main/subset.c:923
msgid "invalid subscript type"
msgstr "type d'indice incorrect"
@@ -6290,19 +6290,19 @@ msgstr "(subscript) indice logique trop
msgid "only 0's may be mixed with negative subscripts"
msgstr "les indices n<>gatifs ne peuvent <20>tre m<>lang<6E>s qu'<27> des 0"
-#: src/main/subscript.c:410
+#: src/main/subscript.c:411
msgid "character vector element does not have type CHARSXP"
msgstr "un <20>l<EFBFBD>ment d'un vecteur de caract<63>res n'a pas le type CHARSXP"
-#: src/main/subscript.c:487
+#: src/main/subscript.c:488
msgid "no 'dimnames' attribute for array"
msgstr "aucun attribut 'dimnames' pour le tableau"
-#: src/main/subscript.c:494
+#: src/main/subscript.c:495
msgid "invalid subscript"
msgstr "indice incorrect"
-#: src/main/subscript.c:527
+#: src/main/subscript.c:528
msgid "subscripting on non-vector"
msgstr "indi<64>age d'un <20>l<EFBFBD>ment non vectoriel"
Binary files R-2.4.0.old/po/it.gmo and R-2.4.0/po/it.gmo differ
diff -urp R-2.4.0.old/po/it.po R-2.4.0/po/it.po
--- R-2.4.0.old/po/it.po 2006-09-26 21:05:18.000000000 -0500
+++ R-2.4.0/po/it.po 2006-10-28 14:36:11.000000000 -0500
@@ -14,7 +14,7 @@ msgid ""
msgstr ""
"Project-Id-Version: R\n"
"Report-Msgid-Bugs-To: bugs@R-project.org\n"
-"POT-Creation-Date: 2006-09-26 14:32+0100\n"
+"POT-Creation-Date: 2006-10-24 15:53+0100\n"
"PO-Revision-Date: 2006-01-16 09:11+0100\n"
"Last-Translator: Daniele Medri <daniele.medri2@unibo.it>\n"
"Language-Team: Italian <tp@lists.linux.it>\n"
@@ -90,7 +90,7 @@ msgstr "'names' non valido in R_unlink"
#: src/gnuwin32/extra.c:758 src/gnuwin32/extra.c:761 src/gnuwin32/extra.c:766
#: src/main/builtin.c:127 src/main/builtin.c:385 src/main/builtin.c:401
#: src/main/character.c:116 src/main/character.c:119 src/main/character.c:158
-#: src/main/character.c:2432 src/main/character.c:2436
+#: src/main/character.c:2434 src/main/character.c:2438
#: src/main/connections.c:822 src/main/connections.c:828
#: src/main/connections.c:831 src/main/connections.c:835
#: src/main/connections.c:958 src/main/connections.c:964
@@ -135,7 +135,7 @@ msgstr "'names' non valido in R_unlink"
#: src/main/print.c:176 src/main/print.c:182 src/main/print.c:204
#: src/main/print.c:210 src/main/random.c:465 src/main/random.c:469
#: src/main/random.c:471 src/main/random.c:473 src/main/saveload.c:2076
-#: src/main/saveload.c:2341 src/main/saveload.c:2390 src/main/seq.c:346
+#: src/main/saveload.c:2341 src/main/saveload.c:2391 src/main/seq.c:346
#: src/main/seq.c:350 src/main/seq.c:368 src/main/seq.c:375
#: src/main/sysutils.c:396 src/main/sysutils.c:398 src/main/sysutils.c:400
#: src/main/unique.c:576 src/main/util.c:527 src/main/util.c:530
@@ -490,7 +490,7 @@ msgid "second argument must be a list"
msgstr "il secondo argomento deve essere di tipo list"
#: src/include/Errormsg.h:42 src/main/eval.c:2715 src/main/subscript.c:228
-#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:436
+#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:437
msgid "subscript out of bounds"
msgstr "indice fuori limite"
@@ -1176,7 +1176,7 @@ msgstr "dimensione troppo grande per il
#: src/main/envir.c:2729 src/main/envir.c:2763 src/main/envir.c:2783
#: src/main/envir.c:3107 src/main/envir.c:3111 src/main/eval.c:3498
#: src/main/objects.c:175 src/main/objects.c:181 src/main/saveload.c:2072
-#: src/main/saveload.c:2338 src/main/saveload.c:2387 src/main/serialize.c:2175
+#: src/main/saveload.c:2338 src/main/saveload.c:2388 src/main/serialize.c:2175
msgid "use of NULL environment is defunct"
msgstr ""
@@ -1312,114 +1312,114 @@ msgstr "pattern di split '%s' non valido
msgid "the first argument must be a character vector"
msgstr "il primo argomento deve essere una vettore character"
-#: src/main/character.c:725
+#: src/main/character.c:727
msgid "abbreviate used with non-ASCII chars"
msgstr "abbreviazione usata con caratteri non ASCII"
-#: src/main/character.c:743
+#: src/main/character.c:745
msgid "non-character names"
msgstr "nomi non di tipo character"
-#: src/main/character.c:747
+#: src/main/character.c:749
msgid "invalid value of 'allow_'"
msgstr "valore non valido per 'allow_'"
-#: src/main/character.c:808 src/main/character.c:1586
+#: src/main/character.c:810 src/main/character.c:1588
#, c-format
msgid "invalid multibyte string %d"
msgstr "stringa mulibyte %d non valida"
-#: src/main/character.c:889 src/main/character.c:1221
-#: src/main/character.c:1510 src/main/pcre.c:110 src/main/pcre.c:487
+#: src/main/character.c:891 src/main/character.c:1223
+#: src/main/character.c:1512 src/main/pcre.c:110 src/main/pcre.c:487
#: src/main/pcre.c:582
msgid "regular expression is invalid in this locale"
msgstr "l'espressione regolare non è valida in questo locale"
-#: src/main/character.c:911 src/main/character.c:1063
-#: src/main/character.c:1224 src/main/character.c:1513 src/main/pcre.c:117
+#: src/main/character.c:913 src/main/character.c:1065
+#: src/main/character.c:1226 src/main/character.c:1515 src/main/pcre.c:117
#: src/main/pcre.c:332 src/main/pcre.c:492 src/main/pcre.c:587
#, c-format
msgid "invalid regular expression '%s'"
msgstr "espressione regolare '%s' non valida"
-#: src/main/character.c:921 src/main/character.c:1239
-#: src/main/character.c:1530 src/main/pcre.c:132 src/main/pcre.c:365
+#: src/main/character.c:923 src/main/character.c:1241
+#: src/main/character.c:1532 src/main/pcre.c:132 src/main/pcre.c:365
#: src/main/pcre.c:507 src/main/pcre.c:610
#, c-format
msgid "input string %d is invalid in this locale"
msgstr "stringa di input %d non valida in questo locale"
-#: src/main/character.c:976 src/main/pcre.c:187
+#: src/main/character.c:978 src/main/pcre.c:187
#, c-format
msgid "invalid backreference %d in regular expression"
msgstr "riferimento all'indietro %d non valido in questa espressione regolare"
-#: src/main/character.c:1058 src/main/pcre.c:319
+#: src/main/character.c:1060 src/main/pcre.c:319
msgid "'pattern' is invalid in this locale"
msgstr "'pattern' non valido per questo locale"
-#: src/main/character.c:1060 src/main/pcre.c:321
+#: src/main/character.c:1062 src/main/pcre.c:321
msgid "'replacement' is invalid in this locale"
msgstr "'replacemente' non valido in questo locale"
-#: src/main/character.c:1069
+#: src/main/character.c:1071
msgid "zero-length pattern"
msgstr "'pattern' di lunghezza zero"
-#: src/main/character.c:1561
+#: src/main/character.c:1563
msgid "non-character argument to tolower()"
msgstr "argomento non character in tolower()"
-#: src/main/character.c:1639
+#: src/main/character.c:1641
#, c-format
msgid "decreasing range specification ('%lc-%lc')"
msgstr "specificazione range decrescente ('%lc-%lc')"
-#: src/main/character.c:1725
+#: src/main/character.c:1727
#, c-format
msgid "decreasing range specification ('%c-%c')"
msgstr "specificazione range decrescente ('%c-%c')"
-#: src/main/character.c:1802
+#: src/main/character.c:1804
msgid "invalid (NA) arguments."
msgstr "argomenti non validi (NA)."
-#: src/main/character.c:1824
+#: src/main/character.c:1826
msgid "invalid multibyte string 'old'"
msgstr "stringa multibyte non valido in 'old'"
-#: src/main/character.c:1831
+#: src/main/character.c:1833
msgid "invalid multibyte string 'new'"
msgstr "stringa multibyte 'new' non valida"
-#: src/main/character.c:1850 src/main/character.c:1912
+#: src/main/character.c:1852 src/main/character.c:1914
msgid "'old' is longer than 'new'"
msgstr "'old' è più lungo di 'new'"
-#: src/main/character.c:1868
+#: src/main/character.c:1870
#, c-format
msgid "invalid input multibyte string %d"
msgstr "stringa input multibyte %d non valida"
-#: src/main/character.c:2013
+#: src/main/character.c:2015
msgid "use of agrep() in a UTF-8 locale may only work for ASCII strings"
msgstr ""
"l'uso di agrep() in un locale UTF-8 può funzionare solo per stringhe ASCII"
-#: src/main/character.c:2022
+#: src/main/character.c:2024
msgid "could not allocate memory for approximate matching"
msgstr "non è possibile allocare memoria per match approssimato"
-#: src/main/character.c:2046
+#: src/main/character.c:2048
msgid "could not perform case insensitive matching"
msgstr ""
"non posso eseguire accoppiamenti senza tener conto delle maiuscole/minuscole"
-#: src/main/character.c:2098 src/main/character.c:2333
+#: src/main/character.c:2100 src/main/character.c:2335
msgid "argument must be a character vector of length 1"
msgstr "l'argomento deve essere un vettore character di lunghezza 1"
-#: src/main/character.c:2100 src/main/character.c:2335
+#: src/main/character.c:2102 src/main/character.c:2337
msgid ""
"argument should be a character vector of length 1\n"
"all but the first element will be ignored"
@@ -1427,45 +1427,45 @@ msgstr ""
"l'argomento deve essere un vettore di caratteri di lunghezza 1\n"
"verranno ignorati tutti tranne il primo elemento"
-#: src/main/character.c:2116 src/main/character.c:2148
-#: src/main/character.c:2169
+#: src/main/character.c:2118 src/main/character.c:2150
+#: src/main/character.c:2171
msgid "argument 'x' must be a raw vector"
msgstr "l'argomento 'x' deve essere un vettore semplice"
-#: src/main/character.c:2119 src/main/character.c:2385
+#: src/main/character.c:2121 src/main/character.c:2387
msgid "argument 'multiple' must be TRUE or FALSE"
msgstr "l'argomento 'mutiple' deve essere TRUE o FALSE"
-#: src/main/character.c:2150
+#: src/main/character.c:2152
msgid "argument 'shift' must be a small integer"
msgstr "l'argomento 'shift' deve essere un intero piccolo"
-#: src/main/character.c:2187
+#: src/main/character.c:2189
msgid "argument 'x' must be a integer vector"
msgstr "l'argomento 'x' deve essere un vettore di interi"
-#: src/main/character.c:2207
+#: src/main/character.c:2209
msgid "argument 'x' must be raw, integer or logical"
msgstr "l'argomento 'x' deve essere semplice, intero o booleano"
-#: src/main/character.c:2209
+#: src/main/character.c:2211
msgid "argument 'type' must be a character string"
msgstr "l'argomento 'type' deve essere una stringa character"
-#: src/main/character.c:2213
+#: src/main/character.c:2215
#, c-format
msgid "argument 'x' must be a multiple of %d long"
msgstr "l'argomento 'x' deve essere lungo un multiplo di %d"
-#: src/main/character.c:2227 src/main/character.c:2242
+#: src/main/character.c:2229 src/main/character.c:2244
msgid "argument 'x' must not contain NAs"
msgstr "l'argomento 'x' non deve contenere NA"
-#: src/main/character.c:2382
+#: src/main/character.c:2384
msgid "argument 'x' must be an integer vector"
msgstr "l'argomento 'x' deve essere un vettore di interi"
-#: src/main/character.c:2427
+#: src/main/character.c:2429
msgid "strtrim() requires a character vector"
msgstr "strstrim() necessita di un vettore di caratteri"
@@ -1524,7 +1524,7 @@ msgstr "environment non valido"
#: src/main/coerce.c:1408
msgid "argument must have length at least 1"
-msgstr "l'argometno deve avere almeno lunghezza 1"
+msgstr "l'argomento deve avere almeno lunghezza 1"
#: src/main/coerce.c:1433
msgid "invalid body for function"
@@ -3774,7 +3774,7 @@ msgstr "l'argumento formale \"%s\" è as
#: src/main/match.c:234 src/main/match.c:273
#, c-format
msgid "argument %d matches multiple formal arguments"
-msgstr "l'argomento %d si associa a più argometni formali"
+msgstr "l'argomento %d si associa a più argomenti formali"
#: src/main/match.c:386
#, fuzzy, c-format
@@ -5549,7 +5549,7 @@ msgstr "errore di scrittura sulla connes
msgid "no input is available"
msgstr "non esiste un meccanismo di gestione history"
-#: src/main/saveload.c:2365
+#: src/main/saveload.c:2366
msgid ""
"the input does not start with a magic number compatible with loading from a "
"connection"
@@ -6190,7 +6190,7 @@ msgid "[[ ]] subscript (%d) out of bound
msgstr "[[ ]] indice (%d) fuori limiti"
#: src/main/subassign.c:1769 src/main/subscript.c:111 src/main/subscript.c:188
-#: src/main/subscript.c:588 src/main/subset.c:923
+#: src/main/subscript.c:589 src/main/subset.c:923
msgid "invalid subscript type"
msgstr "tipo di indice non valido"
@@ -6226,19 +6226,19 @@ msgstr "(subscript) indice logicol tropp
msgid "only 0's may be mixed with negative subscripts"
msgstr "solo gli 0 si possono usare contemporaneamente con indici negativi"
-#: src/main/subscript.c:410
+#: src/main/subscript.c:411
msgid "character vector element does not have type CHARSXP"
msgstr "il vettore carattere non ha un tipo CHARSXP"
-#: src/main/subscript.c:487
+#: src/main/subscript.c:488
msgid "no 'dimnames' attribute for array"
msgstr "attributo 'dimnames' mancante per l'array"
-#: src/main/subscript.c:494
+#: src/main/subscript.c:495
msgid "invalid subscript"
msgstr "indici non valido"
-#: src/main/subscript.c:527
+#: src/main/subscript.c:528
msgid "subscripting on non-vector"
msgstr "indicizzazione su un non vettore"
Binary files R-2.4.0.old/po/ja.gmo and R-2.4.0/po/ja.gmo differ
diff -urp R-2.4.0.old/po/ja.po R-2.4.0/po/ja.po
--- R-2.4.0.old/po/ja.po 2006-09-26 21:05:18.000000000 -0500
+++ R-2.4.0/po/ja.po 2006-10-28 14:36:12.000000000 -0500
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: R 2.4.0\n"
"Report-Msgid-Bugs-To: bugs@R-project.org\n"
-"POT-Creation-Date: 2006-09-26 14:32+0100\n"
+"POT-Creation-Date: 2006-10-24 15:53+0100\n"
"PO-Revision-Date: 2006-09-22 19:00+0900\n"
"Last-Translator: Shigeru Mase <maseshigeru@gmail.com>\n"
"Language-Team: R-core <R-core@R-project.org>\n"
@@ -85,7 +85,7 @@ msgstr "R_unlink の 'names' が不正<E4B88D><E6ADA3>
#: src/gnuwin32/extra.c:758 src/gnuwin32/extra.c:761 src/gnuwin32/extra.c:766
#: src/main/builtin.c:127 src/main/builtin.c:385 src/main/builtin.c:401
#: src/main/character.c:116 src/main/character.c:119 src/main/character.c:158
-#: src/main/character.c:2432 src/main/character.c:2436
+#: src/main/character.c:2434 src/main/character.c:2438
#: src/main/connections.c:822 src/main/connections.c:828
#: src/main/connections.c:831 src/main/connections.c:835
#: src/main/connections.c:958 src/main/connections.c:964
@@ -130,7 +130,7 @@ msgstr "R_unlink の 'names' が不正<E4B88D><E6ADA3>
#: src/main/print.c:176 src/main/print.c:182 src/main/print.c:204
#: src/main/print.c:210 src/main/random.c:465 src/main/random.c:469
#: src/main/random.c:471 src/main/random.c:473 src/main/saveload.c:2076
-#: src/main/saveload.c:2341 src/main/saveload.c:2390 src/main/seq.c:346
+#: src/main/saveload.c:2341 src/main/saveload.c:2391 src/main/seq.c:346
#: src/main/seq.c:350 src/main/seq.c:368 src/main/seq.c:375
#: src/main/sysutils.c:396 src/main/sysutils.c:398 src/main/sysutils.c:400
#: src/main/unique.c:576 src/main/util.c:527 src/main/util.c:530
@@ -474,7 +474,7 @@ msgid "second argument must be a list"
msgstr "二番目の引数はリストでなければなりません"
#: src/include/Errormsg.h:42 src/main/eval.c:2715 src/main/subscript.c:228
-#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:436
+#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:437
msgid "subscript out of bounds"
msgstr "添え字が許される範囲外です"
@@ -1157,7 +1157,7 @@ msgstr "指定されたベクトルの<E383AB><E381AE>
#: src/main/envir.c:2729 src/main/envir.c:2763 src/main/envir.c:2783
#: src/main/envir.c:3107 src/main/envir.c:3111 src/main/eval.c:3498
#: src/main/objects.c:175 src/main/objects.c:181 src/main/saveload.c:2072
-#: src/main/saveload.c:2338 src/main/saveload.c:2387 src/main/serialize.c:2175
+#: src/main/saveload.c:2338 src/main/saveload.c:2388 src/main/serialize.c:2175
msgid "use of NULL environment is defunct"
msgstr "NULL環境の使用は廃要素です"
@@ -1290,113 +1290,113 @@ msgstr "分割パターン '%s' が不<E3818C><E4B88D>
msgid "the first argument must be a character vector"
msgstr "最初の引数は文字列ベクトルでなくてはなりません"
-#: src/main/character.c:725
+#: src/main/character.c:727
msgid "abbreviate used with non-ASCII chars"
msgstr "ASCII 文字でないものが省略名として使われました"
-#: src/main/character.c:743
+#: src/main/character.c:745
msgid "non-character names"
msgstr "名前が文字列ではありません"
-#: src/main/character.c:747
+#: src/main/character.c:749
msgid "invalid value of 'allow_'"
msgstr "'allow_' の値が不正です"
-#: src/main/character.c:808 src/main/character.c:1586
+#: src/main/character.c:810 src/main/character.c:1588
#, c-format
msgid "invalid multibyte string %d"
msgstr "%d は不正なマルチバイト文字です"
-#: src/main/character.c:889 src/main/character.c:1221
-#: src/main/character.c:1510 src/main/pcre.c:110 src/main/pcre.c:487
+#: src/main/character.c:891 src/main/character.c:1223
+#: src/main/character.c:1512 src/main/pcre.c:110 src/main/pcre.c:487
#: src/main/pcre.c:582
msgid "regular expression is invalid in this locale"
msgstr "このロケールでは,正規表現は無効です"
-#: src/main/character.c:911 src/main/character.c:1063
-#: src/main/character.c:1224 src/main/character.c:1513 src/main/pcre.c:117
+#: src/main/character.c:913 src/main/character.c:1065
+#: src/main/character.c:1226 src/main/character.c:1515 src/main/pcre.c:117
#: src/main/pcre.c:332 src/main/pcre.c:492 src/main/pcre.c:587
#, c-format
msgid "invalid regular expression '%s'"
msgstr "'%s' の正規表現が不正です"
-#: src/main/character.c:921 src/main/character.c:1239
-#: src/main/character.c:1530 src/main/pcre.c:132 src/main/pcre.c:365
+#: src/main/character.c:923 src/main/character.c:1241
+#: src/main/character.c:1532 src/main/pcre.c:132 src/main/pcre.c:365
#: src/main/pcre.c:507 src/main/pcre.c:610
#, c-format
msgid "input string %d is invalid in this locale"
msgstr "入力文字列 %d はこのロケールでは不適切です"
-#: src/main/character.c:976 src/main/pcre.c:187
+#: src/main/character.c:978 src/main/pcre.c:187
#, c-format
msgid "invalid backreference %d in regular expression"
msgstr "正規表現における後方参照 %d が不正です"
-#: src/main/character.c:1058 src/main/pcre.c:319
+#: src/main/character.c:1060 src/main/pcre.c:319
msgid "'pattern' is invalid in this locale"
msgstr "'pattern' は現在のロケールでは不正です"
-#: src/main/character.c:1060 src/main/pcre.c:321
+#: src/main/character.c:1062 src/main/pcre.c:321
msgid "'replacement' is invalid in this locale"
msgstr "'replacement' は現在のロケールでは不正です"
-#: src/main/character.c:1069
+#: src/main/character.c:1071
msgid "zero-length pattern"
msgstr "長さゼロのパターン"
-#: src/main/character.c:1561
+#: src/main/character.c:1563
msgid "non-character argument to tolower()"
msgstr "tolower 関数の引数が文字列ではありません"
-#: src/main/character.c:1639
+#: src/main/character.c:1641
#, c-format
msgid "decreasing range specification ('%lc-%lc')"
msgstr "範囲指定を縮小します ('%lc-%lc') "
-#: src/main/character.c:1725
+#: src/main/character.c:1727
#, c-format
msgid "decreasing range specification ('%c-%c')"
msgstr "範囲指定を縮小します ('%c-%c') "
-#: src/main/character.c:1802
+#: src/main/character.c:1804
msgid "invalid (NA) arguments."
msgstr "引数が不正(NA)です"
-#: src/main/character.c:1824
+#: src/main/character.c:1826
msgid "invalid multibyte string 'old'"
msgstr "'old' は不正なマルチバイト文字です"
-#: src/main/character.c:1831
+#: src/main/character.c:1833
msgid "invalid multibyte string 'new'"
msgstr "'new' は不正なマルチバイト文字です"
-#: src/main/character.c:1850 src/main/character.c:1912
+#: src/main/character.c:1852 src/main/character.c:1914
msgid "'old' is longer than 'new'"
msgstr "'old' が 'new' より長いです"
-#: src/main/character.c:1868
+#: src/main/character.c:1870
#, c-format
msgid "invalid input multibyte string %d"
msgstr "不正なマルチバイト文字列入力 %d です"
-#: src/main/character.c:2013
+#: src/main/character.c:2015
msgid "use of agrep() in a UTF-8 locale may only work for ASCII strings"
msgstr ""
"UTF-8 ロケールにおける agrep 関数の使用は ASCII 文字列以外では保証されません"
-#: src/main/character.c:2022
+#: src/main/character.c:2024
msgid "could not allocate memory for approximate matching"
msgstr "近似マッチングのためのメモリを割り当てられませんでした"
-#: src/main/character.c:2046
+#: src/main/character.c:2048
msgid "could not perform case insensitive matching"
msgstr "大小文字を無視したマッチングを行なえませんでした"
-#: src/main/character.c:2098 src/main/character.c:2333
+#: src/main/character.c:2100 src/main/character.c:2335
msgid "argument must be a character vector of length 1"
msgstr "引数は長さ1の文字ベクトルでなくてはなりません"
-#: src/main/character.c:2100 src/main/character.c:2335
+#: src/main/character.c:2102 src/main/character.c:2337
msgid ""
"argument should be a character vector of length 1\n"
"all but the first element will be ignored"
@@ -1404,45 +1404,45 @@ msgstr ""
"引数は長さ1の文字ベクトルであるべきです\n"
"最初の要素以外は無視されます"
-#: src/main/character.c:2116 src/main/character.c:2148
-#: src/main/character.c:2169
+#: src/main/character.c:2118 src/main/character.c:2150
+#: src/main/character.c:2171
msgid "argument 'x' must be a raw vector"
msgstr "引数 'x' は raw ベクトルでなくてはなりません"
-#: src/main/character.c:2119 src/main/character.c:2385
+#: src/main/character.c:2121 src/main/character.c:2387
msgid "argument 'multiple' must be TRUE or FALSE"
msgstr "引数 'multiple' は TRUE か FALSE でなくてはなりません"
-#: src/main/character.c:2150
+#: src/main/character.c:2152
msgid "argument 'shift' must be a small integer"
msgstr "引数 'shift' は小さな整数でなくてはなりません"
-#: src/main/character.c:2187
+#: src/main/character.c:2189
msgid "argument 'x' must be a integer vector"
msgstr "引数 'x' は整数ベクトルでなくてはなりません"
-#: src/main/character.c:2207
+#: src/main/character.c:2209
msgid "argument 'x' must be raw, integer or logical"
msgstr "引数'x'はraw, 整数,論理値でなくてはいけません"
-#: src/main/character.c:2209
+#: src/main/character.c:2211
msgid "argument 'type' must be a character string"
msgstr "引数 'type' は文字列でなくてはなりません"
-#: src/main/character.c:2213
+#: src/main/character.c:2215
#, c-format
msgid "argument 'x' must be a multiple of %d long"
msgstr "引数 'x' は長さ %d の整数倍でなくてはなりません"
-#: src/main/character.c:2227 src/main/character.c:2242
+#: src/main/character.c:2229 src/main/character.c:2244
msgid "argument 'x' must not contain NAs"
msgstr "引数 'x' はNA を含んではいけません"
-#: src/main/character.c:2382
+#: src/main/character.c:2384
msgid "argument 'x' must be an integer vector"
msgstr "引数 'x' は整数ベクトルでなくてはなりません"
-#: src/main/character.c:2427
+#: src/main/character.c:2429
msgid "strtrim() requires a character vector"
msgstr "strtrim 関数は文字ベクトルを要求します"
@@ -5493,7 +5493,7 @@ msgstr "コネクションへの書き<E69BB8><E3818D>
msgid "no input is available"
msgstr "入力は利用できません"
-#: src/main/saveload.c:2365
+#: src/main/saveload.c:2366
msgid ""
"the input does not start with a magic number compatible with loading from a "
"connection"
@@ -6124,7 +6124,7 @@ msgid "[[ ]] subscript (%d) out of bound
msgstr "[[ ]] の添え字(%dが範囲外です"
#: src/main/subassign.c:1769 src/main/subscript.c:111 src/main/subscript.c:188
-#: src/main/subscript.c:588 src/main/subset.c:923
+#: src/main/subscript.c:589 src/main/subset.c:923
msgid "invalid subscript type"
msgstr "添え字の型が不正です"
@@ -6160,19 +6160,19 @@ msgstr " (subscript) 論理値添え字<E38188>
msgid "only 0's may be mixed with negative subscripts"
msgstr "負の添字と混在できるのは 0 という添字だけです"
-#: src/main/subscript.c:410
+#: src/main/subscript.c:411
msgid "character vector element does not have type CHARSXP"
msgstr "文字列ベクトル要素は型 CHARSXP を持ちません"
-#: src/main/subscript.c:487
+#: src/main/subscript.c:488
msgid "no 'dimnames' attribute for array"
msgstr "配列に 'dimnames' 属性がありません"
-#: src/main/subscript.c:494
+#: src/main/subscript.c:495
msgid "invalid subscript"
msgstr "添え字が不正です"
-#: src/main/subscript.c:527
+#: src/main/subscript.c:528
msgid "subscripting on non-vector"
msgstr "ベクトルでないものへの添え字操作"
Binary files R-2.4.0.old/po/ko.gmo and R-2.4.0/po/ko.gmo differ
diff -urp R-2.4.0.old/po/ko.po R-2.4.0/po/ko.po
--- R-2.4.0.old/po/ko.po 2006-09-26 21:05:18.000000000 -0500
+++ R-2.4.0/po/ko.po 2006-10-28 14:36:08.000000000 -0500
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: R 2.1.0\n"
"Report-Msgid-Bugs-To: bugs@R-project.org\n"
-"POT-Creation-Date: 2006-09-26 14:32+0100\n"
+"POT-Creation-Date: 2006-10-24 15:53+0100\n"
"PO-Revision-Date: 2005-05-31 10:36+0900\n"
"Last-Translator: park ui-il <uiami@hanmail.com> \n"
"Language-Team: South Korea\n"
@@ -85,7 +85,7 @@ msgstr "R_unlink의 'names'이 부적절
#: src/gnuwin32/extra.c:758 src/gnuwin32/extra.c:761 src/gnuwin32/extra.c:766
#: src/main/builtin.c:127 src/main/builtin.c:385 src/main/builtin.c:401
#: src/main/character.c:116 src/main/character.c:119 src/main/character.c:158
-#: src/main/character.c:2432 src/main/character.c:2436
+#: src/main/character.c:2434 src/main/character.c:2438
#: src/main/connections.c:822 src/main/connections.c:828
#: src/main/connections.c:831 src/main/connections.c:835
#: src/main/connections.c:958 src/main/connections.c:964
@@ -130,7 +130,7 @@ msgstr "R_unlink의 'names'이 부적절
#: src/main/print.c:176 src/main/print.c:182 src/main/print.c:204
#: src/main/print.c:210 src/main/random.c:465 src/main/random.c:469
#: src/main/random.c:471 src/main/random.c:473 src/main/saveload.c:2076
-#: src/main/saveload.c:2341 src/main/saveload.c:2390 src/main/seq.c:346
+#: src/main/saveload.c:2341 src/main/saveload.c:2391 src/main/seq.c:346
#: src/main/seq.c:350 src/main/seq.c:368 src/main/seq.c:375
#: src/main/sysutils.c:396 src/main/sysutils.c:398 src/main/sysutils.c:400
#: src/main/unique.c:576 src/main/util.c:527 src/main/util.c:530
@@ -482,7 +482,7 @@ msgid "second argument must be a list"
msgstr "두번째 인수는 리스트가 되어야만 한다"
#: src/include/Errormsg.h:42 src/main/eval.c:2715 src/main/subscript.c:228
-#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:436
+#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:437
msgid "subscript out of bounds"
msgstr "첨자가 허용되는 범위외입니다"
@@ -1161,7 +1161,7 @@ msgstr "지정된 벡터의 사이즈가
#: src/main/envir.c:2729 src/main/envir.c:2763 src/main/envir.c:2783
#: src/main/envir.c:3107 src/main/envir.c:3111 src/main/eval.c:3498
#: src/main/objects.c:175 src/main/objects.c:181 src/main/saveload.c:2072
-#: src/main/saveload.c:2338 src/main/saveload.c:2387 src/main/serialize.c:2175
+#: src/main/saveload.c:2338 src/main/saveload.c:2388 src/main/serialize.c:2175
msgid "use of NULL environment is defunct"
msgstr ""
@@ -1297,114 +1297,114 @@ msgstr "분할 패턴 '%s'가 부적절<ECA081>
msgid "the first argument must be a character vector"
msgstr "최초의 인수는 문자열 벡터가 아니면 안됩니다"
-#: src/main/character.c:725
+#: src/main/character.c:727
msgid "abbreviate used with non-ASCII chars"
msgstr "ASCII문자가 아닌것에 대해서 생략이름이 사용되었습니다"
-#: src/main/character.c:743
+#: src/main/character.c:745
msgid "non-character names"
msgstr "이름은 문자열이 아닙니다"
-#: src/main/character.c:747
+#: src/main/character.c:749
msgid "invalid value of 'allow_'"
msgstr "'allow_'의 값이 부적절합니다"
-#: src/main/character.c:808 src/main/character.c:1586
+#: src/main/character.c:810 src/main/character.c:1588
#, c-format
msgid "invalid multibyte string %d"
msgstr "%d는 부적절한 복수 바이트 문자입니다"
-#: src/main/character.c:889 src/main/character.c:1221
-#: src/main/character.c:1510 src/main/pcre.c:110 src/main/pcre.c:487
+#: src/main/character.c:891 src/main/character.c:1223
+#: src/main/character.c:1512 src/main/pcre.c:110 src/main/pcre.c:487
#: src/main/pcre.c:582
msgid "regular expression is invalid in this locale"
msgstr "이 licale에서는 정규 표현은 무효입니다"
-#: src/main/character.c:911 src/main/character.c:1063
-#: src/main/character.c:1224 src/main/character.c:1513 src/main/pcre.c:117
+#: src/main/character.c:913 src/main/character.c:1065
+#: src/main/character.c:1226 src/main/character.c:1515 src/main/pcre.c:117
#: src/main/pcre.c:332 src/main/pcre.c:492 src/main/pcre.c:587
#, c-format
msgid "invalid regular expression '%s'"
msgstr "'%s'의 정규 표현이 부적절합니다"
-#: src/main/character.c:921 src/main/character.c:1239
-#: src/main/character.c:1530 src/main/pcre.c:132 src/main/pcre.c:365
+#: src/main/character.c:923 src/main/character.c:1241
+#: src/main/character.c:1532 src/main/pcre.c:132 src/main/pcre.c:365
#: src/main/pcre.c:507 src/main/pcre.c:610
#, c-format
msgid "input string %d is invalid in this locale"
msgstr "입력 문자열%d는 locale에서 부적절합니다"
-#: src/main/character.c:976 src/main/pcre.c:187
+#: src/main/character.c:978 src/main/pcre.c:187
#, c-format
msgid "invalid backreference %d in regular expression"
msgstr "정규 표현에 있어서 후방참조 %d가 부적절합니다"
-#: src/main/character.c:1058 src/main/pcre.c:319
+#: src/main/character.c:1060 src/main/pcre.c:319
msgid "'pattern' is invalid in this locale"
msgstr "'pattern'는 현재의 locale에서 부적절합니다"
-#: src/main/character.c:1060 src/main/pcre.c:321
+#: src/main/character.c:1062 src/main/pcre.c:321
msgid "'replacement' is invalid in this locale"
msgstr "'replacement'는 현재의 locale에서 부적절합니다"
-#: src/main/character.c:1069
+#: src/main/character.c:1071
msgid "zero-length pattern"
msgstr "zero-length의 패턴"
-#: src/main/character.c:1561
+#: src/main/character.c:1563
msgid "non-character argument to tolower()"
msgstr "tolower()함수의 인수가 문자열이 아닙니다"
-#: src/main/character.c:1639
+#: src/main/character.c:1641
#, c-format
msgid "decreasing range specification ('%lc-%lc')"
msgstr "범위 지정을 축소합니다('%lc-%lc')"
-#: src/main/character.c:1725
+#: src/main/character.c:1727
#, c-format
msgid "decreasing range specification ('%c-%c')"
msgstr "범위 지정을 축소합니다('%c-%c')"
-#: src/main/character.c:1802
+#: src/main/character.c:1804
msgid "invalid (NA) arguments."
msgstr "인수가 부적절한(NA)입니다."
-#: src/main/character.c:1824
+#: src/main/character.c:1826
msgid "invalid multibyte string 'old'"
msgstr "'old'는 부적절한 복수바이트 문자입니다"
-#: src/main/character.c:1831
+#: src/main/character.c:1833
msgid "invalid multibyte string 'new'"
msgstr "'new'는 부적절한 복수바이트 문자입니다"
-#: src/main/character.c:1850 src/main/character.c:1912
+#: src/main/character.c:1852 src/main/character.c:1914
msgid "'old' is longer than 'new'"
msgstr "'old'가 'new'보다 깁니다"
-#: src/main/character.c:1868
+#: src/main/character.c:1870
#, c-format
msgid "invalid input multibyte string %d"
msgstr "부적절한 복수바이트 문자열 입력%d입니다"
-#: src/main/character.c:2013
+#: src/main/character.c:2015
msgid "use of agrep() in a UTF-8 locale may only work for ASCII strings"
msgstr ""
"부적절한 UTF-8 locale에 있어서 agrep()함수의 사용은 ASCII 문자열 이외에는 적"
"용되지 않습니다"
-#: src/main/character.c:2022
+#: src/main/character.c:2024
msgid "could not allocate memory for approximate matching"
msgstr "근사 matching을 위한 메모리를 할당할수 없습니다"
-#: src/main/character.c:2046
+#: src/main/character.c:2048
msgid "could not perform case insensitive matching"
msgstr "대소문자를 무시한 matching를 실행할수 없습니다"
-#: src/main/character.c:2098 src/main/character.c:2333
+#: src/main/character.c:2100 src/main/character.c:2335
msgid "argument must be a character vector of length 1"
msgstr "인수는 길이 1의 문자 벡터이어야만 합니다"
-#: src/main/character.c:2100 src/main/character.c:2335
+#: src/main/character.c:2102 src/main/character.c:2337
msgid ""
"argument should be a character vector of length 1\n"
"all but the first element will be ignored"
@@ -1412,46 +1412,46 @@ msgstr ""
"인수는 길이 1의 문자 벡터이어야만 합니다\\n\n"
"최초의 요소 이외는 무시됩니다"
-#: src/main/character.c:2116 src/main/character.c:2148
-#: src/main/character.c:2169
+#: src/main/character.c:2118 src/main/character.c:2150
+#: src/main/character.c:2171
msgid "argument 'x' must be a raw vector"
msgstr "인수 'x'는 raw 벡터이어야만 합니다"
-#: src/main/character.c:2119 src/main/character.c:2385
+#: src/main/character.c:2121 src/main/character.c:2387
msgid "argument 'multiple' must be TRUE or FALSE"
msgstr "인수 'multiple'는 TRUE 또는 FALSE 이어야만 합니다"
-#: src/main/character.c:2150
+#: src/main/character.c:2152
msgid "argument 'shift' must be a small integer"
msgstr "인수 'shift'는 작은 정수 벡터이어야만 합니다"
-#: src/main/character.c:2187
+#: src/main/character.c:2189
msgid "argument 'x' must be a integer vector"
msgstr "인수 'x'는 정수 벡터이어야만 합니다"
-#: src/main/character.c:2207
+#: src/main/character.c:2209
msgid "argument 'x' must be raw, integer or logical"
msgstr "인수 'x'는 raw, 정수, 논리값이어야만 합니다"
-#: src/main/character.c:2209
+#: src/main/character.c:2211
msgid "argument 'type' must be a character string"
msgstr "인수 'type'는 문자열이어야만 합니다"
-#: src/main/character.c:2213
+#: src/main/character.c:2215
#, c-format
msgid "argument 'x' must be a multiple of %d long"
msgstr "인수 'x'는 길이 %d의 정수배이어야만 합니다"
-#: src/main/character.c:2227 src/main/character.c:2242
+#: src/main/character.c:2229 src/main/character.c:2244
msgid "argument 'x' must not contain NAs"
msgstr "인수 'x'는 NA를 포함해서는 안됩니다"
-#: src/main/character.c:2382
+#: src/main/character.c:2384
#, fuzzy
msgid "argument 'x' must be an integer vector"
msgstr "인수 'x'는 정수 벡터이어야만 합니다"
-#: src/main/character.c:2427
+#: src/main/character.c:2429
msgid "strtrim() requires a character vector"
msgstr "strtrim 함수는 문자 벡터를 요구합니다"
@@ -5545,7 +5545,7 @@ msgstr "connection에의 기입해 에<><EC9790>
msgid "no input is available"
msgstr "이용 할수 있는 히스토리 machanism가 없습니다"
-#: src/main/saveload.c:2365
+#: src/main/saveload.c:2366
msgid ""
"the input does not start with a magic number compatible with loading from a "
"connection"
@@ -6178,7 +6178,7 @@ msgid "[[ ]] subscript (%d) out of bound
msgstr "[[ ]]의 첨자(%d)가 범위외입니다"
#: src/main/subassign.c:1769 src/main/subscript.c:111 src/main/subscript.c:188
-#: src/main/subscript.c:588 src/main/subset.c:923
+#: src/main/subscript.c:589 src/main/subset.c:923
msgid "invalid subscript type"
msgstr "첨자의 형태가 부적절합니다"
@@ -6214,19 +6214,19 @@ msgstr "(subscript) 논리값의 첨자<ECB2A8>
msgid "only 0's may be mixed with negative subscripts"
msgstr "부의 첨자와 복합할수 있는것은 0 이라고 하는 첨자만입니다"
-#: src/main/subscript.c:410
+#: src/main/subscript.c:411
msgid "character vector element does not have type CHARSXP"
msgstr "문자열벡터 요소는 유형 CHARSXP를 가지지 않습니다"
-#: src/main/subscript.c:487
+#: src/main/subscript.c:488
msgid "no 'dimnames' attribute for array"
msgstr "배열에 'dimnames' 속성이 없습니다"
-#: src/main/subscript.c:494
+#: src/main/subscript.c:495
msgid "invalid subscript"
msgstr "첨자가 부적절합니다"
-#: src/main/subscript.c:527
+#: src/main/subscript.c:528
msgid "subscripting on non-vector"
msgstr "벡터가 아닌것에 첨자조작"
Binary files R-2.4.0.old/po/pt_BR.gmo and R-2.4.0/po/pt_BR.gmo differ
diff -urp R-2.4.0.old/po/pt_BR.po R-2.4.0/po/pt_BR.po
--- R-2.4.0.old/po/pt_BR.po 2006-09-26 21:05:18.000000000 -0500
+++ R-2.4.0/po/pt_BR.po 2006-10-28 14:36:08.000000000 -0500
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: R 2.1.0\n"
"Report-Msgid-Bugs-To: bugs@R-project.org\n"
-"POT-Creation-Date: 2006-09-26 14:32+0100\n"
+"POT-Creation-Date: 2006-10-24 15:53+0100\n"
"PO-Revision-Date: 2006-04-16 19:17-0300\n"
"Last-Translator: Fernando Henrique Ferraz P. da Rosa <feferraz@ime.usp.br>\n"
"Language-Team: Portuguese <ldp-br@bazar.conectiva.com.br>\n"
@@ -83,7 +83,7 @@ msgstr "'names' inv<6E>lidos em 'R_unlink'"
#: src/gnuwin32/extra.c:758 src/gnuwin32/extra.c:761 src/gnuwin32/extra.c:766
#: src/main/builtin.c:127 src/main/builtin.c:385 src/main/builtin.c:401
#: src/main/character.c:116 src/main/character.c:119 src/main/character.c:158
-#: src/main/character.c:2432 src/main/character.c:2436
+#: src/main/character.c:2434 src/main/character.c:2438
#: src/main/connections.c:822 src/main/connections.c:828
#: src/main/connections.c:831 src/main/connections.c:835
#: src/main/connections.c:958 src/main/connections.c:964
@@ -128,7 +128,7 @@ msgstr "'names' inv<6E>lidos em 'R_unlink'"
#: src/main/print.c:176 src/main/print.c:182 src/main/print.c:204
#: src/main/print.c:210 src/main/random.c:465 src/main/random.c:469
#: src/main/random.c:471 src/main/random.c:473 src/main/saveload.c:2076
-#: src/main/saveload.c:2341 src/main/saveload.c:2390 src/main/seq.c:346
+#: src/main/saveload.c:2341 src/main/saveload.c:2391 src/main/seq.c:346
#: src/main/seq.c:350 src/main/seq.c:368 src/main/seq.c:375
#: src/main/sysutils.c:396 src/main/sysutils.c:398 src/main/sysutils.c:400
#: src/main/unique.c:576 src/main/util.c:527 src/main/util.c:530
@@ -476,7 +476,7 @@ msgid "second argument must be a list"
msgstr "segundo argumento deve ser uma lista"
#: src/include/Errormsg.h:42 src/main/eval.c:2715 src/main/subscript.c:228
-#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:436
+#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:437
msgid "subscript out of bounds"
msgstr "<22>ndice fora de limites"
@@ -1156,7 +1156,7 @@ msgstr "tamanho de vetor especificado <20>
#: src/main/envir.c:2729 src/main/envir.c:2763 src/main/envir.c:2783
#: src/main/envir.c:3107 src/main/envir.c:3111 src/main/eval.c:3498
#: src/main/objects.c:175 src/main/objects.c:181 src/main/saveload.c:2072
-#: src/main/saveload.c:2338 src/main/saveload.c:2387 src/main/serialize.c:2175
+#: src/main/saveload.c:2338 src/main/saveload.c:2388 src/main/serialize.c:2175
msgid "use of NULL environment is defunct"
msgstr "uso do ambiente NULL n<>o <20> mais permitido "
@@ -1292,114 +1292,114 @@ msgstr "padr<64>o split inv<6E>lido '%s'"
msgid "the first argument must be a character vector"
msgstr "primeiro argumento deve ser um vetor de caracteres"
-#: src/main/character.c:725
+#: src/main/character.c:727
msgid "abbreviate used with non-ASCII chars"
msgstr "abbreaviate usado com caracteres n<>o-ASCII"
-#: src/main/character.c:743
+#: src/main/character.c:745
msgid "non-character names"
msgstr "nomes de modo n<>o caractere"
-#: src/main/character.c:747
+#: src/main/character.c:749
msgid "invalid value of 'allow_'"
msgstr "valor de 'allow_' inv<6E>lido"
-#: src/main/character.c:808 src/main/character.c:1586
+#: src/main/character.c:810 src/main/character.c:1588
#, c-format
msgid "invalid multibyte string %d"
msgstr "string multibyte inv<6E>lida %d"
-#: src/main/character.c:889 src/main/character.c:1221
-#: src/main/character.c:1510 src/main/pcre.c:110 src/main/pcre.c:487
+#: src/main/character.c:891 src/main/character.c:1223
+#: src/main/character.c:1512 src/main/pcre.c:110 src/main/pcre.c:487
#: src/main/pcre.c:582
msgid "regular expression is invalid in this locale"
msgstr "express<73>o regular <20> inv<6E>lida nesse locale"
-#: src/main/character.c:911 src/main/character.c:1063
-#: src/main/character.c:1224 src/main/character.c:1513 src/main/pcre.c:117
+#: src/main/character.c:913 src/main/character.c:1065
+#: src/main/character.c:1226 src/main/character.c:1515 src/main/pcre.c:117
#: src/main/pcre.c:332 src/main/pcre.c:492 src/main/pcre.c:587
#, c-format
msgid "invalid regular expression '%s'"
msgstr "express<73>o regular inv<6E>lida '%s'"
-#: src/main/character.c:921 src/main/character.c:1239
-#: src/main/character.c:1530 src/main/pcre.c:132 src/main/pcre.c:365
+#: src/main/character.c:923 src/main/character.c:1241
+#: src/main/character.c:1532 src/main/pcre.c:132 src/main/pcre.c:365
#: src/main/pcre.c:507 src/main/pcre.c:610
#, c-format
msgid "input string %d is invalid in this locale"
msgstr "string de entrada %d <20> inv<6E>lida nesse locale"
-#: src/main/character.c:976 src/main/pcre.c:187
+#: src/main/character.c:978 src/main/pcre.c:187
#, c-format
msgid "invalid backreference %d in regular expression"
msgstr "auto-refer<65>ncia %d inv<6E>lida na express<73>o regular"
-#: src/main/character.c:1058 src/main/pcre.c:319
+#: src/main/character.c:1060 src/main/pcre.c:319
msgid "'pattern' is invalid in this locale"
msgstr "'pattern' <20> inv<6E>lido nesse locale"
-#: src/main/character.c:1060 src/main/pcre.c:321
+#: src/main/character.c:1062 src/main/pcre.c:321
msgid "'replacement' is invalid in this locale"
msgstr "'replacement' <20> inv<6E>lido nesse locale"
-#: src/main/character.c:1069
+#: src/main/character.c:1071
msgid "zero-length pattern"
msgstr "padr<64>o de comprimento 0"
-#: src/main/character.c:1561
+#: src/main/character.c:1563
msgid "non-character argument to tolower()"
msgstr "argumento diferente de caractere para tolower()"
-#: src/main/character.c:1639
+#: src/main/character.c:1641
#, c-format
msgid "decreasing range specification ('%lc-%lc')"
msgstr "especifica<63><61>o de intervalo decrescente ('%lc-%lc')"
-#: src/main/character.c:1725
+#: src/main/character.c:1727
#, c-format
msgid "decreasing range specification ('%c-%c')"
msgstr "especifica<63><61>o de intervalo decrescente ('%c-%c')"
-#: src/main/character.c:1802
+#: src/main/character.c:1804
msgid "invalid (NA) arguments."
msgstr "argumentos inv<6E>lidos (NA)"
-#: src/main/character.c:1824
+#: src/main/character.c:1826
msgid "invalid multibyte string 'old'"
msgstr "string multibyte inv<6E>lida 'old'"
-#: src/main/character.c:1831
+#: src/main/character.c:1833
msgid "invalid multibyte string 'new'"
msgstr "string multibyte inv<6E>lida 'new'"
-#: src/main/character.c:1850 src/main/character.c:1912
+#: src/main/character.c:1852 src/main/character.c:1914
msgid "'old' is longer than 'new'"
msgstr "'old' <20> maior que 'new'"
-#: src/main/character.c:1868
+#: src/main/character.c:1870
#, c-format
msgid "invalid input multibyte string %d"
msgstr "string de entrada multibyte %d inv<6E>lida"
-#: src/main/character.c:2013
+#: src/main/character.c:2015
msgid "use of agrep() in a UTF-8 locale may only work for ASCII strings"
msgstr ""
"uso de agrep() em um locale UTF-8 pode funcionar somente para strings ASCII"
-#: src/main/character.c:2022
+#: src/main/character.c:2024
msgid "could not allocate memory for approximate matching"
msgstr "n<>o foi poss<73>vel alocar mem<65>ria para compara<72><61>o aproximada"
-#: src/main/character.c:2046
+#: src/main/character.c:2048
msgid "could not perform case insensitive matching"
msgstr ""
"n<>o foi poss<73>vel fazer compara<72><61>o desconsiderando ma<6D>usculas/min<69>sculas"
-#: src/main/character.c:2098 src/main/character.c:2333
+#: src/main/character.c:2100 src/main/character.c:2335
msgid "argument must be a character vector of length 1"
msgstr "argumento deve ser um vetor de caracteres de comprimento 1"
-#: src/main/character.c:2100 src/main/character.c:2335
+#: src/main/character.c:2102 src/main/character.c:2337
msgid ""
"argument should be a character vector of length 1\n"
"all but the first element will be ignored"
@@ -1407,45 +1407,45 @@ msgstr ""
"argumento deve ser um vetor de caracteres de comprimento 1\n"
"todos menos o primeiro argumento ser<65>o ignorados"
-#: src/main/character.c:2116 src/main/character.c:2148
-#: src/main/character.c:2169
+#: src/main/character.c:2118 src/main/character.c:2150
+#: src/main/character.c:2171
msgid "argument 'x' must be a raw vector"
msgstr "argumento 'x' deve ser um vetor do tipo raw"
-#: src/main/character.c:2119 src/main/character.c:2385
+#: src/main/character.c:2121 src/main/character.c:2387
msgid "argument 'multiple' must be TRUE or FALSE"
msgstr "argumento 'multiple' deve ser TRUE ou FALSE"
-#: src/main/character.c:2150
+#: src/main/character.c:2152
msgid "argument 'shift' must be a small integer"
msgstr "argumento 'shift' deve ser um inteiro pequeno"
-#: src/main/character.c:2187
+#: src/main/character.c:2189
msgid "argument 'x' must be a integer vector"
msgstr "argumento 'x' deve ser um vetor inteiro"
-#: src/main/character.c:2207
+#: src/main/character.c:2209
msgid "argument 'x' must be raw, integer or logical"
msgstr "argumento 'x' deve ser raw, inteiro ou l<>gico"
-#: src/main/character.c:2209
+#: src/main/character.c:2211
msgid "argument 'type' must be a character string"
msgstr "argumento 'type' deve ser uma string de caracteres"
-#: src/main/character.c:2213
+#: src/main/character.c:2215
#, c-format
msgid "argument 'x' must be a multiple of %d long"
msgstr "argumento 'x' deve ter comprimento m<>ltiplo de %d"
-#: src/main/character.c:2227 src/main/character.c:2242
+#: src/main/character.c:2229 src/main/character.c:2244
msgid "argument 'x' must not contain NAs"
msgstr "argumento 'x' n<>o pode conter NAs"
-#: src/main/character.c:2382
+#: src/main/character.c:2384
msgid "argument 'x' must be an integer vector"
msgstr "argumento 'x' deve ser um vetor inteiro"
-#: src/main/character.c:2427
+#: src/main/character.c:2429
msgid "strtrim() requires a character vector"
msgstr "strtrim() requer um vetor de caracteres"
@@ -5523,7 +5523,7 @@ msgstr "erro ao escrever na conex<65>o"
msgid "no input is available"
msgstr "nenhuma entrada dispon<6F>vel"
-#: src/main/saveload.c:2365
+#: src/main/saveload.c:2366
msgid ""
"the input does not start with a magic number compatible with loading from a "
"connection"
@@ -6163,7 +6163,7 @@ msgid "[[ ]] subscript (%d) out of bound
msgstr "subscrito (%d) em [[ ]] fora de limites"
#: src/main/subassign.c:1769 src/main/subscript.c:111 src/main/subscript.c:188
-#: src/main/subscript.c:588 src/main/subset.c:923
+#: src/main/subscript.c:589 src/main/subset.c:923
msgid "invalid subscript type"
msgstr "tipo de subscrito inv<6E>lido"
@@ -6199,19 +6199,19 @@ msgstr "(subscript) subscrito l<>gico mui
msgid "only 0's may be mixed with negative subscripts"
msgstr "somente 0's podem ser usados junto com subscritos negativos"
-#: src/main/subscript.c:410
+#: src/main/subscript.c:411
msgid "character vector element does not have type CHARSXP"
msgstr "elemento do vetor de caracteres n<>o tem tipo CHARSXP"
-#: src/main/subscript.c:487
+#: src/main/subscript.c:488
msgid "no 'dimnames' attribute for array"
msgstr "array sem atributo 'dimnames'"
-#: src/main/subscript.c:494
+#: src/main/subscript.c:495
msgid "invalid subscript"
msgstr "subscrito inv<6E>lido"
-#: src/main/subscript.c:527
+#: src/main/subscript.c:528
msgid "subscripting on non-vector"
msgstr "tentativa de usar um subscrito em um objeto diferente de vetor"
Binary files R-2.4.0.old/po/RGui-zh_CN.gmo and R-2.4.0/po/RGui-zh_CN.gmo differ
diff -urp R-2.4.0.old/po/RGui-zh_CN.po R-2.4.0/po/RGui-zh_CN.po
--- R-2.4.0.old/po/RGui-zh_CN.po 2006-09-26 21:05:18.000000000 -0500
+++ R-2.4.0/po/RGui-zh_CN.po 2006-10-28 14:36:10.000000000 -0500
@@ -1,8 +1,8 @@
-# Chinese translations for R package
-# Copyright (C) 2005 The R Foundation
-# This file is distributed under the same license as the PACKAGE package.
-# 陈斐 <feic@avaya.com>, 2006.
-#
+# Chinese translations for R package
+# Copyright (C) 2005 The R Foundation
+# This file is distributed under the same license as the PACKAGE package.
+# <20><><EFBFBD><EFBFBD> <feic@avaya.com>, 2006.
+#
msgid ""
msgstr ""
"Project-Id-Version: R 2.1.0\n"
@@ -18,19 +18,19 @@ msgstr ""
#: console.c:879 console.c:919
msgid "Not enough memory"
-msgstr "内存不够"
+msgstr "<22>ڴ治<DAB4><E6B2BB>"
#: console.c:975 console.c:979
msgid "Insufficient memory: text not copied to the clipboard"
-msgstr "内存不够: 原文没有复制到剪贴板"
+msgstr "<22>ڴ治<DAB4><E6B2BB>: ԭ<><D4AD>û<EFBFBD>и<EFBFBD><D0B8>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#: console.c:1018 graphapp/clipboard.c:54 graphapp/clipboard.c:80
msgid "Unable to open the clipboard"
-msgstr "无法打开剪贴板"
+msgstr "<22>޷<EFBFBD><DEB7>򿪼<EFBFBD><F2BFAABC><EFBFBD><EFBFBD><EFBFBD>"
#: console.c:1620
msgid "Insufficient memory. Please close the console"
-msgstr "内存不够。 请关闭控制台"
+msgstr "<22>ڴ治<DAB4><E6B2BB><EFBFBD><EFBFBD> <20><><EFBFBD>رտ<D8B1><D5BF><EFBFBD>̨"
#: console.c:1674 console.c:1727 preferences.c:274
#, c-format
@@ -38,121 +38,121 @@ msgid ""
"Font %s-%d-%d not found.\n"
"Using system fixed font"
msgstr ""
-"找不到%s-%d-%d字体。\n"
-"用系统字体"
+"<22>Ҳ<EFBFBD><D2B2><EFBFBD>%s-%d-%d<><64><EFBFBD>塣\n"
+"<22><>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>"
#: console.c:1829
msgid "Save selection to"
-msgstr "保存选择到"
+msgstr "<22><><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD>"
#: console.c:1831
msgid "Save console contents to"
-msgstr "保存控制台内容到"
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̨<EFBFBD><CCA8><EFBFBD>ݵ<EFBFBD>"
#: console.c:1929
msgid "Scrolling.\n"
-msgstr "滚动。\n"
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n"
#: console.c:1930
msgid " Keyboard: PgUp, PgDown, Ctrl+Arrows, Ctrl+Home, Ctrl+End,\n"
-msgstr " 键盘: PgUp, PgDown, Ctrl+箭头键, Ctrl+Home, Ctrl+End,\n"
+msgstr " <20><><EFBFBD><EFBFBD>: PgUp, PgDown, Ctrl+<2B><>ͷ<EFBFBD><CDB7>, Ctrl+Home, Ctrl+End,\n"
#: console.c:1931
msgid ""
" Mouse: use the scrollbar(s).\n"
"\n"
msgstr ""
-" 鼠标: 用滚动条。\n"
+" <20><><EFBFBD><EFBFBD>: <20>ù<EFBFBD><C3B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n"
"\n"
#: console.c:1932
msgid "Editing.\n"
-msgstr "修改。\n"
+msgstr "<22>޸ġ<DEB8>\n"
#: console.c:1933
msgid " Moving the cursor: \n"
-msgstr " 移动鼠标: \n"
+msgstr " <20>ƶ<EFBFBD><C6B6><EFBFBD><EFBFBD><EFBFBD>: \n"
#: console.c:1934
msgid " Left arrow or Ctrl+B: move backward one character;\n"
-msgstr " 左箭头或Ctrl+B: 左移一字符;\n"
+msgstr " <20><><EFBFBD><EFBFBD>ͷ<EFBFBD><CDB7>Ctrl+B: <20><><EFBFBD><EFBFBD>һ<EFBFBD>ַ<EFBFBD>;\n"
#: console.c:1935
msgid " Right arrow or Ctrl+F: move forward one character;\n"
-msgstr " 右箭头或Ctrl+F: 右移一字符;\n"
+msgstr " <20>Ҽ<EFBFBD>ͷ<EFBFBD><CDB7>Ctrl+F: <20><><EFBFBD><EFBFBD>һ<EFBFBD>ַ<EFBFBD>;\n"
#: console.c:1936
msgid " Home or Ctrl+A: go to beginning of line;\n"
-msgstr " Home或Ctrl+A: 移到行头;\n"
+msgstr " Home<6D><65>Ctrl+A: <20>Ƶ<EFBFBD><C6B5><EFBFBD>ͷ;\n"
#: console.c:1937
msgid " End or Ctrl+E: go to end of line;\n"
-msgstr " End或Ctrl+E: 移到行尾;\n"
+msgstr " End<6E><64>Ctrl+E: <20>Ƶ<EFBFBD><C6B5><EFBFBD>β;\n"
#: console.c:1938
msgid " History: Up and Down Arrows, Ctrl+P, Ctrl+N\n"
-msgstr " 历史: 上,下箭头, Ctrl+P, Ctrl+N\n"
+msgstr " <20><>ʷ: <20>ϣ<EFBFBD><CFA3>¼<EFBFBD>ͷ, Ctrl+P, Ctrl+N\n"
#: console.c:1939
msgid " Deleting:\n"
-msgstr " 删除:\n"
+msgstr " ɾ<><C9BE>:\n"
#: console.c:1940
msgid " Del or Ctrl+D: delete current character;\n"
-msgstr " Del或Ctrl+D: 删除在目前位置的字符;\n"
+msgstr " Del<65><6C>Ctrl+D: ɾ<><C9BE><EFBFBD><EFBFBD>Ŀǰλ<C7B0>õ<EFBFBD><C3B5>ַ<EFBFBD>;\n"
#: console.c:1941
msgid " Backspace: delete preceding character;\n"
-msgstr " Backspace: 删除目前位置之前的字符;\n"
+msgstr " Backspace: ɾ<><C9BE>Ŀǰλ<C7B0><CEBB>֮ǰ<D6AE><C7B0><EFBFBD>ַ<EFBFBD>;\n"
#: console.c:1942
msgid ""
" Ctrl+Del or Ctrl+K: delete text from current character to end of line.\n"
-msgstr " Ctrl+Del或Ctrl+K: 删除目前位置到行尾的所有文字。\n"
+msgstr " Ctrl+Del<65><6C>Ctrl+K: ɾ<><C9BE>Ŀǰλ<C7B0>õ<EFBFBD><C3B5><EFBFBD>β<EFBFBD><CEB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֡<EFBFBD>\n"
#: console.c:1943
msgid " Ctrl+U: delete all text from current line.\n"
-msgstr " Ctrl+U: 从目前所在的行开始删除所有的文字。\n"
+msgstr " Ctrl+U: <20><>Ŀǰ<C4BF><C7B0><EFBFBD>ڵ<EFBFBD><DAB5>п<EFBFBD>ʼɾ<CABC><C9BE><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD>֡<EFBFBD>\n"
#: console.c:1944
msgid " Copy and paste.\n"
-msgstr " 复制和粘贴.\n"
+msgstr " <20><><EFBFBD>ƺ<EFBFBD>ճ<EFBFBD><D5B3>.\n"
#: console.c:1945
msgid ""
" Use the mouse (with the left button held down) to mark (select) text.\n"
-msgstr " 用鼠标(持续按下左键) 来选择文字。\n"
+msgstr " <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>) <20><>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD>֡<EFBFBD>\n"
#: console.c:1946
msgid ""
" Use Shift+Del (or Ctrl+C) to copy the marked text to the clipboard and\n"
-msgstr " 用Shift+Del(或Ctrl+C) 把选择好的文字复制到剪贴板\n"
+msgstr " <20><>Shift+Del(<28><>Ctrl+C) <20><>ѡ<EFBFBD><D1A1><EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n"
#: console.c:1947
msgid ""
" Shift+Ins (or Ctrl+V or Ctrl+Y) to paste the content of the clipboard "
"(if any) \n"
-msgstr " 用Shift+Ins(或Ctrl+V或Ctrl+Y)来粘贴剪贴板的内容(如果有的话) \n"
+msgstr " <20><>Shift+Ins(<28><>Ctrl+V<><56>Ctrl+Y)<29><>ճ<EFBFBD><D5B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD>еĻ<D0B5>) \n"
#: console.c:1948
msgid " to the console, Ctrl+X first copy then paste\n"
-msgstr " 到控制台, Ctrl+X先复制再粘贴\n"
+msgstr " <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̨, Ctrl+X<>ȸ<EFBFBD><C8B8><EFBFBD><EFBFBD><EFBFBD>ճ<EFBFBD><D5B3>\n"
#: console.c:1949
msgid " Misc:\n"
-msgstr " 其他:\n"
+msgstr " <20><><EFBFBD><EFBFBD>:\n"
#: console.c:1950
msgid " Ctrl+L: Clear the console.\n"
-msgstr " Ctrl+L: 清除控制台.\n"
+msgstr " Ctrl+L: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̨.\n"
#: console.c:1951
msgid " Ctrl+O: Toggle overwrite mode: initially off.\n"
-msgstr " Ctrl+O: 开关重写状态: 最初是关掉的。\n"
+msgstr " Ctrl+O: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д״̬: <20><><EFBFBD><EFBFBD><EFBFBD>ǹص<C7B9><D8B5>ġ<EFBFBD>\n"
#: console.c:1952
msgid " Ctrl+T: Interchange current char with one to the left.\n"
-msgstr " Ctrl+T: 将目前所在位置的字符与其左方的字符交换。\n"
+msgstr " Ctrl+T: <20><>Ŀǰ<C4BF><C7B0><EFBFBD><EFBFBD>λ<EFBFBD>õ<EFBFBD><C3B5>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>󷽵<EFBFBD><F3B7BDB5>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n"
#: console.c:1953
msgid ""
@@ -160,14 +160,14 @@ msgid ""
"Note: Console is updated only when some input is required.\n"
msgstr ""
"\n"
-"注意: 只有在输入时控制台才能被更新。\n"
+"ע<><D7A2>: ֻ<><D6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>̨<EFBFBD><CCA8><EFBFBD>ܱ<EFBFBD><DCB1><EFBFBD><EFBFBD>¡<EFBFBD>\n"
#: console.c:1954
msgid ""
" Use Ctrl+W to toggle this feature off/on.\n"
"\n"
msgstr ""
-" 用Ctrl+W来开关这一功能。\n"
+" <20><>Ctrl+W<><57><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD>ܡ<EFBFBD>\n"
"\n"
#: console.c:1955
@@ -175,72 +175,72 @@ msgid ""
"Use ESC to stop the interpreter.\n"
"\n"
msgstr ""
-"用ESC来中断注释器。\n"
+"<22><>ESC<53><43><EFBFBD>ж<EFBFBD>ע<EFBFBD><D7A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n"
"\n"
#: console.c:1956
msgid "Standard Windows hotkeys can be used to switch to the\n"
-msgstr "可以用Windows的标准热键来转换\n"
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Windows<77>ı<EFBFBD>׼<EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD>ת<EFBFBD><D7AA>\n"
#: console.c:1957
msgid "graphics device (Ctrl+Tab or Ctrl+F6 in MDI, Alt+Tab in SDI)"
-msgstr "绘图设备 (MDI用Ctrl+Tab或Ctrl+F6, SDI用Alt+Tab)"
+msgstr "<22><>ͼ<EFBFBD>豸 (MDI<44><49>Ctrl+Tab<61><62>Ctrl+F6, SDI<44><49>Alt+Tab)"
#: dataentry.c:220
msgid "invalid argument"
-msgstr "参数不对"
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#: dataentry.c:267
msgid "invalid type for value"
-msgstr "值的种类不对"
+msgstr "ֵ<><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E0B2BB>"
#: dataentry.c:281
msgid "invalid device"
-msgstr "设备出错"
+msgstr "<22><EFBFBD><E8B1B8><EFBFBD><EFBFBD>"
#: dataentry.c:329
msgid "dataentry: internal memory problem"
-msgstr "dataentry: 内部内存问题"
+msgstr "dataentry: <20>ڲ<EFBFBD><DAB2>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD>"
#: dataentry.c:623 dataentry.c:1117
msgid "dataentry: internal memory error"
-msgstr "dataentry: 内部内存错误"
+msgstr "dataentry: <20>ڲ<EFBFBD><DAB2>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD><EFBFBD>"
#: dataentry.c:742 dataentry.c:755
msgid "internal type error in dataentry"
-msgstr "dataentry内部种类出错"
+msgstr "dataentry<72>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#: dataentry.c:922
msgid "dataentry: expression too long"
-msgstr "dataentry: 表达式太长"
+msgstr "dataentry: <20><><EFBFBD><EFBFBD>ʽ̫<CABD><CCAB>"
#: dataentry.c:1351
msgid "column names cannot be blank"
-msgstr "列名不能是空白的"
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǿհ׵<D5B0>"
#: dataentry.c:1395
msgid "Variable editor"
-msgstr "变量编辑器"
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E0BCAD>"
#: dataentry.c:1400
msgid "variable name"
-msgstr "变量名字"
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#: dataentry.c:1402
msgid "type"
-msgstr "种类"
+msgstr "<22><><EFBFBD><EFBFBD>"
#: dataentry.c:1506
msgid "Cell width(s)"
-msgstr "字元格宽"
+msgstr "<22><>Ԫ<EFBFBD><D4AA><EFBFBD><EFBFBD>"
#: dataentry.c:1511
msgid "Cell width"
-msgstr "字元格宽"
+msgstr "<22><>Ԫ<EFBFBD><D4AA><EFBFBD><EFBFBD>"
#: dataentry.c:1514
msgid "variable"
-msgstr "变量"
+msgstr "<22><><EFBFBD><EFBFBD>"
#: dataentry.c:1553
msgid ""
@@ -264,282 +264,282 @@ msgid ""
" Right-click menu for copy, paste, autosize currently selected column\n"
"\n"
msgstr ""
-"导航。\n"
-" 键盘: 游标键用来移动选择的内容\n"
-"\tTab右移, Shift+Tab左移\n"
-"\tPgDn或Ctrl+F: 整屏下移\n"
-"\tPgUp或Ctrl+B: 整屏上移\n"
-"\tHome: 移到(1,1)位置\n"
-"\tEnd: 显示最后一列的最后一行。\n"
-" 鼠标: 在字元格里按左键, 用滚动条。\n"
+"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n"
+" <20><><EFBFBD><EFBFBD>: <20>α<EFBFBD><CEB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n"
+"\tTab<61><62><EFBFBD><EFBFBD>, Shift+Tab<61><62><EFBFBD><EFBFBD>\n"
+"\tPgDn<44><6E>Ctrl+F: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n"
+"\tPgUp<55><70>Ctrl+B: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n"
+"\tHome: <20>Ƶ<EFBFBD>(1,1)λ<><CEBB>\n"
+"\tEnd: <20><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>һ<EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD>С<EFBFBD>\n"
+" <20><><EFBFBD><EFBFBD>: <20><><EFBFBD><EFBFBD>Ԫ<EFBFBD><D4AA><EFBFBD><EFBFBD><EFB0B4><EFBFBD><EFBFBD>, <20>ù<EFBFBD><C3B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n"
"\n"
-"编辑。\n"
-" 写入目前选择了的字元格里\n"
-" 在字元格里双点击来对域进行编辑\n"
+"<22><EFBFBD><E0BCAD>\n"
+" д<><D0B4>Ŀǰѡ<C7B0><D1A1><EFBFBD>˵<EFBFBD><CBB5><EFBFBD>Ԫ<EFBFBD><D4AA><EFBFBD><EFBFBD>\n"
+" <20><><EFBFBD><EFBFBD>Ԫ<EFBFBD><D4AA><EFBFBD><EFBFBD>˫<EFBFBD><CBAB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б༭\n"
"\n"
-"其他.\n"
-" Ctrl-L刷新屏障自动调整列的大小\n"
-" Ctrl-C复制选择的字元格\n"
-" Ctrl-V贴补到选择了的字元格\n"
-" 右键菜单用来复制, 粘贴, 自己调整大小选择了的列\n"
+"<22><><EFBFBD><EFBFBD>.\n"
+" Ctrl-Lˢ<4C><CBA2><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><CFA3>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>еĴ<D0B5>С\n"
+" Ctrl-C<><43><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԫ<EFBFBD><D4AA>\n"
+" Ctrl-V<><56><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD>˵<EFBFBD><CBB5><EFBFBD>Ԫ<EFBFBD><D4AA>\n"
+" <20>Ҽ<EFBFBD><D2BC>˵<EFBFBD><CBB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, ճ<><D5B3>, <20>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Сѡ<D0A1><D1A1><EFBFBD>˵<EFBFBD><CBB5><EFBFBD>\n"
"\n"
#: dataentry.c:1559 dataentry.c:1653 editor.c:730 rui.c:1065
msgid "Help"
-msgstr "帮助"
+msgstr "<22><><EFBFBD><EFBFBD>"
#: dataentry.c:1561
msgid "Copy selected cell"
-msgstr "复制选择了的字元格"
+msgstr "<22><><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD>˵<EFBFBD><CBB5><EFBFBD>Ԫ<EFBFBD><D4AA>"
#: dataentry.c:1562
msgid "Paste to selected cell"
-msgstr "粘贴到选择了的字元格"
+msgstr "ճ<><D5B3><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD>˵<EFBFBD><CBB5><EFBFBD>Ԫ<EFBFBD><D4AA>"
#: dataentry.c:1563
msgid "Autosize column"
-msgstr "自动调节列的大小"
+msgstr "<22>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>еĴ<D0B5>С"
#: dataentry.c:1565 pager.c:295 rui.c:785
#: ../library/grDevices/src/devWindows.c:1595
msgid "Stay on top"
-msgstr "窗口保持在最上面"
+msgstr "<22><><EFBFBD>ڱ<EFBFBD><DAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#: dataentry.c:1567 dataentry.c:1645 pager.c:297 pager.c:460
msgid "Close"
-msgstr "关闭"
+msgstr "<22>ر<EFBFBD>"
#: dataentry.c:1617
msgid "Data Editor"
-msgstr "数据编辑器"
+msgstr "<22><><EFBFBD>ݱ༭<DDB1><E0BCAD>"
#: dataentry.c:1643 editor.c:676 pager.c:452 rui.c:1013
#: ../library/grDevices/src/devWindows.c:1540
msgid "File"
-msgstr "文件"
+msgstr "<22>ļ<EFBFBD>"
#: dataentry.c:1647 editor.c:694 pager.c:462 rui.c:1034
msgid "Edit"
-msgstr "编辑"
+msgstr "<22>༭"
#: dataentry.c:1648
msgid "Copy \tCTRL+C"
-msgstr "复制 \tCTRL+C"
+msgstr "<22><><EFBFBD><EFBFBD> \tCTRL+C"
#: dataentry.c:1649
msgid "Paste \tCTRL+V"
-msgstr "粘贴 \tCTRL+V"
+msgstr "ճ<><D5B3> \tCTRL+V"
#: dataentry.c:1650
msgid "Delete\tDEL"
-msgstr "删除\tDEL"
+msgstr "ɾ<><C9BE>\tDEL"
#: dataentry.c:1652
msgid "Cell widths ..."
-msgstr "字元格宽..."
+msgstr "<22><>Ԫ<EFBFBD><D4AA><EFBFBD><EFBFBD>..."
#: dataentry.c:1654
msgid "Data editor"
-msgstr "数据编辑器"
+msgstr "<22><><EFBFBD>ݱ༭<DDB1><E0BCAD>"
#: editor.c:449 pager.c:172 pager.c:192
msgid "No RGui console to paste to"
-msgstr "没有可以粘贴上的RGui控制台"
+msgstr "û<>п<EFBFBD><D0BF><EFBFBD>ճ<EFBFBD><D5B3><EFBFBD>ϵ<EFBFBD>RGui<75><69><EFBFBD><EFBFBD>̨"
#: editor.c:551
msgid "R EDITOR\n"
-msgstr "R编辑器\n"
+msgstr "R<><EFBFBD><E0BCAD>\n"
#: editor.c:553
msgid "A standard text editor for editing and running R code.\n"
-msgstr "一个用于编辑和执行R程序的标准文本编辑器。\n"
+msgstr "һ<><D2BB><EFBFBD><EFBFBD><EFBFBD>ڱ༭<DAB1><E0BCAD>ִ<EFBFBD><D6B4>R<EFBFBD><52><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD>׼<EFBFBD>ı<EFBFBD><C4B1><EFBFBD><E0BCAD><EFBFBD><EFBFBD>\n"
#: editor.c:555
msgid "RUNNING COMMANDS\n"
-msgstr "执行命令\n"
+msgstr "ִ<><D6B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n"
#: editor.c:556
msgid "To run a line or section of R code, select the code and either\n"
-msgstr "要执行一行或一段R的代码, 先选择所需要的代码,然后再\n"
+msgstr "Ҫִ<D2AA><D6B4>һ<EFBFBD>л<EFBFBD>һ<EFBFBD><D2BB>R<EFBFBD>Ĵ<EFBFBD><C4B4><EFBFBD>, <20><>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD>Ĵ<EFBFBD><C4B4>룬Ȼ<EBA3AC><C8BB><EFBFBD><EFBFBD>\n"
#: editor.c:557
msgid " Press Ctrl-R\n"
-msgstr " 按Ctrl-R\n"
+msgstr " <20><>Ctrl-R\n"
#: editor.c:558
msgid " Select \"Run line or selection\" from the \"Edit\" menu\n"
-msgstr " 从\"Edit\"菜单中选择\"Run line or selection\"\n"
+msgstr " <20><>\"Edit\"<22>˵<EFBFBD><CBB5><EFBFBD>ѡ<EFBFBD><D1A1>\"Run line or selection\"\n"
#: editor.c:559
msgid " Press the \"Run line or selection\" icon on the toolbar\n"
-msgstr " 按工具栏上的\"Run line or selection\"按钮\n"
+msgstr " <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD>\"Run line or selection\"<22><>ť\n"
#: editor.c:560
msgid ""
"This will copy the selected commands to the console and evaluate them.\n"
-msgstr "这会把选择了的命令复制到控制台来执行这些命令。\n"
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD>˵<EFBFBD><CBB5><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD>̨<EFBFBD><CCA8>ִ<EFBFBD><D6B4><EFBFBD><EFBFBD>Щ<EFBFBD><D0A9><EFBFBD>\n"
#: editor.c:561
msgid ""
"If there is no selection, this will just run the current line and advance\n"
-msgstr "如果没有选择的话,目前所在行的命令会被执行\n"
+msgstr "<22><><EFBFBD><EFBFBD>û<EFBFBD><C3BB>ѡ<EFBFBD><D1A1><EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD>Ŀǰ<C4BF><C7B0><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ᱻִ<E1B1BB><D6B4>\n"
#: editor.c:562
msgid "the cursor by one line.\n"
-msgstr "光标一行。\n"
+msgstr "<22><><EFBFBD><EFBFBD>һ<EFBFBD>С<EFBFBD>\n"
#: editor.c:574 editor.c:649 editor.c:710
msgid "Run line or selection"
-msgstr "执行行或选择项"
+msgstr "ִ<><D6B4><EFBFBD>л<EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD>"
#: editor.c:576 editor.c:695
msgid "Undo"
-msgstr "取消"
+msgstr "ȡ<><C8A1>"
#: editor.c:578 editor.c:698
msgid "Cut"
-msgstr "切割"
+msgstr "<22>и<EFBFBD>"
#: editor.c:579 editor.c:700 pager.c:290 pager.c:463 rui.c:775 rui.c:978
#: rui.c:1035
msgid "Copy"
-msgstr "复制"
+msgstr "<22><><EFBFBD><EFBFBD>"
#: editor.c:580 editor.c:702 rui.c:776 rui.c:982 rui.c:1036
msgid "Paste"
-msgstr "粘贴"
+msgstr "ճ<><D5B3>"
#: editor.c:581 editor.c:704
msgid "Delete"
-msgstr "删除"
+msgstr "ɾ<><C9BE>"
#: editor.c:583 editor.c:706 pager.c:293 pager.c:469 rui.c:782 rui.c:1040
msgid "Select all"
-msgstr "选择一切"
+msgstr "ѡ<><D1A1>һ<EFBFBD><D2BB>"
#: editor.c:641 pager.c:416 rui.c:966
msgid "Open script"
-msgstr "打开程序脚本"
+msgstr "<22>򿪳<EFBFBD><F2BFAAB3><EFBFBD><EFBFBD>ű<EFBFBD>"
#: editor.c:645
msgid "Save script"
-msgstr "保存程序脚本"
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ű<EFBFBD>"
#: editor.c:653 pager.c:436 ../library/grDevices/src/devWindows.c:1508
msgid "Return focus to Console"
-msgstr "集中焦点到控制台"
+msgstr "<22><><EFBFBD>н<EFBFBD><D0BD><EFBFBD><E3B5BD><EFBFBD><EFBFBD>̨"
#: editor.c:656
msgid "Print script"
-msgstr "打印程序脚本"
+msgstr "<22><>ӡ<EFBFBD><D3A1><EFBFBD><EFBFBD><EFBFBD>ű<EFBFBD>"
#: editor.c:658 pager.c:431 rui.c:994
#: ../library/grDevices/src/devWindows.c:1502
msgid "Print"
-msgstr "打印"
+msgstr "<22><>ӡ"
#: editor.c:677 pager.c:453 rui.c:1015
msgid "New script"
-msgstr "建立新的程序脚本"
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD>µij<C2B5><C4B3><EFBFBD><EFBFBD>ű<EFBFBD>"
#: editor.c:679 pager.c:454 rui.c:1016
msgid "Open script..."
-msgstr "打开程序脚本..."
+msgstr "<22>򿪳<EFBFBD><F2BFAAB3><EFBFBD><EFBFBD>ű<EFBFBD>..."
#: editor.c:681 preferences.c:788
msgid "Save"
-msgstr "保存"
+msgstr "<22><><EFBFBD><EFBFBD>"
#: editor.c:683
msgid "Save as..."
-msgstr "保存为..."
+msgstr "<22><><EFBFBD><EFBFBD>Ϊ..."
#: editor.c:686 pager.c:455 rui.c:1029
#: ../library/grDevices/src/devWindows.c:1598
msgid "Print..."
-msgstr "打印..."
+msgstr "<22><>ӡ..."
#: editor.c:689
msgid "Close script"
-msgstr "关闭程序脚本"
+msgstr "<22>رճ<D8B1><D5B3><EFBFBD><EFBFBD>ű<EFBFBD>"
#: editor.c:708 rui.c:1041
msgid "Clear console"
-msgstr "清除控制台"
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̨"
#: editor.c:712
msgid "Run all"
-msgstr "执行一切"
+msgstr "ִ<><D6B4>һ<EFBFBD><D2BB>"
#: editor.c:715
msgid "Find..."
-msgstr "查找..."
+msgstr "<22><><EFBFBD><EFBFBD>..."
#: editor.c:717
msgid "Replace..."
-msgstr "替换..."
+msgstr "<22>滻..."
#: editor.c:720 rui.c:1045
msgid "GUI preferences..."
-msgstr "GUI选项..."
+msgstr "GUIѡ<49><D1A1>..."
#: editor.c:731
msgid "Editor"
-msgstr "编辑器"
+msgstr "<22><EFBFBD><E0BCAD>"
#: editor.c:788
msgid "Maximum number of editors reached"
-msgstr "编辑器数量太多"
+msgstr "<22><EFBFBD><E0BCAD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̫<EFBFBD><CCAB>"
#: editor.c:793
msgid "Unable to create editor window"
-msgstr "无法建立编辑器窗口"
+msgstr "<22>޷<EFBFBD><DEB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E0BCAD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#: editor.c:802
msgid "Untitled"
-msgstr "未命名"
+msgstr "δ<><CEB4><EFBFBD><EFBFBD>"
#: extra.c:804 preferences.c:790 graphapp/dialogs.c:505 graphapp/dialogs.c:600
msgid "OK"
-msgstr "确定"
+msgstr "ȷ<><C8B7>"
#: extra.c:805 preferences.c:791 graphapp/dialogs.c:479 graphapp/dialogs.c:503
#: graphapp/dialogs.c:509 graphapp/dialogs.c:584 graphapp/dialogs.c:598
#: graphapp/dialogs.c:604
msgid "Cancel"
-msgstr "取消"
+msgstr "ȡ<><C8A1>"
#: pager.c:78
msgid "Error opening file"
-msgstr "打开文件时出错"
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>"
#: pager.c:85
msgid "Insufficient memory to display file in internal pager"
-msgstr "用内部页面调度程序来显示文件时内存不够"
+msgstr "<22><><EFBFBD>ڲ<EFBFBD>ҳ<EFBFBD><D2B3><EFBFBD><EFBFBD><EFBFBD>ȳ<EFBFBD><C8B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD>ļ<EFBFBD>ʱ<EFBFBD>ڴ治<DAB4><E6B2BB>"
#: pager.c:164 pager.c:176 pager.c:196 rui.c:225 rui.c:252
msgid "No selection"
-msgstr "没有选择"
+msgstr "û<><C3BB>ѡ<EFBFBD><D1A1>"
#: pager.c:291 pager.c:421 pager.c:465
msgid "Paste to console"
-msgstr "粘贴到控制台"
+msgstr "ճ<><D5B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̨"
#: pager.c:292 pager.c:426 pager.c:467
msgid "Paste commands to console"
-msgstr "粘贴命令到控制台"
+msgstr "ճ<><D5B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EEB5BD><EFBFBD><EFBFBD>̨"
#: pager.c:457 rui.c:1030
msgid "Save to File..."
-msgstr "保存到文件..."
+msgstr "<22><><EFBFBD><EFBFBD>ļ<EFBFBD>..."
#: pager.c:472
msgid "View"
-msgstr "看"
+msgstr "<22><>"
#: pager.c:501
msgid "Unable to create pager window"
-msgstr "无法建立页面调度程序窗口"
+msgstr "<22>޷<EFBFBD><DEB7><EFBFBD><EFBFBD><EFBFBD>ҳ<EFBFBD><D2B3><EFBFBD><EFBFBD><EFBFBD>ȳ<EFBFBD><C8B3>򴰿<EFBFBD>"
#: preferences.c:243
msgid ""
@@ -548,9 +548,9 @@ msgid ""
"\n"
"Save the preferences and restart Rgui to apply them.\n"
msgstr ""
-"不能在控制台在运行的时候改变其性能\n"
+"<22><><EFBFBD><EFBFBD><EFBFBD>ڿ<EFBFBD><DABF><EFBFBD>̨<EFBFBD><CCA8><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n"
"\n"
-"存储设置后重新启动Rgui。\n"
+"<22><EFBFBD><E6B4A2><EFBFBD>ú<EFBFBD><C3BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Rgui<75><69>\n"
#: preferences.c:247
msgid ""
@@ -559,418 +559,417 @@ msgid ""
"\n"
"Save the preferences and restart Rgui to apply to menus.\n"
msgstr ""
-"菜单的语言不能控制台运行的时候变化\n"
+"<22>˵<EFBFBD><CBB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Բ<EFBFBD><D4B2>ܿ<EFBFBD><DCBF><EFBFBD>̨<EFBFBD><CCA8><EFBFBD>е<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>仯\n"
"\n"
-"在存储设置后重新启动Rgui才能改变菜单。\n"
+"<22>ڴ洢<DAB4><E6B4A2><EFBFBD>ú<EFBFBD><C3BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Rgui<75><69><EFBFBD>ܸı<DCB8><C4B1>˵<EFBFBD><CBB5><EFBFBD>\n"
#: preferences.c:316
msgid "Changes in pager size will not apply to any open pagers"
-msgstr "只能改变新的呼叫器的大小"
+msgstr "ֻ<>ܸı<DCB8><C4B1>µĺ<C2B5><C4BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĵ<EFBFBD>С"
#: preferences.c:322
msgid ""
"Do not change pager type if any pager is open\n"
"Proceed?"
-msgstr ""
-"如果有正在运行的呼叫器的话,请不要改动呼叫器的种类\n"
-"继续吗?"
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>еĺ<D0B5><C4BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD>벻Ҫ<EBB2BB>Ķ<EFBFBD><C4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>\n"
+"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#: preferences.c:349
msgid "Select directory for file 'Rconsole'"
-msgstr "为文件Rconsole选择目录"
+msgstr "Ϊ<>ļ<EFBFBD>Rconsoleѡ<65><D1A1>Ŀ¼"
#: preferences.c:440
msgid "Select 'Rconsole' file"
-msgstr "选择'Rconsole'文件"
+msgstr "ѡ<><D1A1>'Rconsole'<27>ļ<EFBFBD>"
#: preferences.c:635
#, c-format
msgid "Error at line %d of file %s"
-msgstr "文件%2$s的第%1$d行出错"
+msgstr "<22>ļ<EFBFBD>%2$s<>ĵ<EFBFBD>%1$d<>г<EFBFBD><D0B3><EFBFBD>"
#: preferences.c:678
msgid "Rgui Configuration Editor"
-msgstr "Rgui配置编辑器"
+msgstr "Rgui<75><69><EFBFBD>ñ༭<C3B1><E0BCAD>"
#: preferences.c:787
msgid "Apply"
-msgstr "应用"
+msgstr "Ӧ<><D3A6>"
#: preferences.c:789
msgid "Load"
-msgstr "载入"
+msgstr "<22><><EFBFBD><EFBFBD>"
#: rui.c:124
msgid "Select file to source"
-msgstr "选择要输入的程序文件"
+msgstr "ѡ<><D1A1>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD><C4B3><EFBFBD><EFBFBD>ļ<EFBFBD>"
#: rui.c:145
msgid "Select image to load"
-msgstr "选择要载入的映像"
+msgstr "ѡ<><D1A1>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӳ<EFBFBD><D3B3>"
#: rui.c:160
msgid "Save image in"
-msgstr "保存映像到"
+msgstr "<22><><EFBFBD><EFBFBD>ӳ<EFBFBD><D3B3><EFBFBD><EFBFBD>"
#: rui.c:175
msgid "Load history from"
-msgstr "载入历史于"
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʷ<EFBFBD><CAB7>"
#: rui.c:184
msgid "Save history in"
-msgstr "保存历史到"
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʷ<EFBFBD><CAB7>"
#: rui.c:234 rui.c:243
msgid "No text available"
-msgstr "没有文本"
+msgstr "û<><C3BB><EFBFBD>ı<EFBFBD>"
#: rui.c:292
msgid "Name of data frame or matrix"
-msgstr "数据框或矩阵名"
+msgstr "<22><><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#: rui.c:299
#, c-format
msgid "'%s' cannot be found"
-msgstr "找不到'%s'"
+msgstr "<22>Ҳ<EFBFBD><D2B2><EFBFBD>'%s'"
#: rui.c:365
msgid "Are you sure?"
-msgstr "你肯定吗?"
+msgstr "<22><><EFBFBD>϶<EFBFBD><CFB6><EFBFBD>?"
#: rui.c:446
msgid "Help on"
-msgstr "帮助于"
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#: rui.c:497
msgid "Search help"
-msgstr "查找帮助"
+msgstr "<22><><EFBFBD>Ұ<EFBFBD><D2B0><EFBFBD>"
#: rui.c:512
msgid "Search for words in help list archives and documentation"
-msgstr "搜索邮件列表档案和文档"
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD>"
#: rui.c:527
msgid "Apropos"
-msgstr "关于"
+msgstr "<22><><EFBFBD><EFBFBD>"
#: rui.c:771
msgid "Can only drag-and-drop .R, .RData and .rda files"
-msgstr "鼠标拉-放只适用于.R.RData和.rda后缀的文件"
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.R<><52>.RData<74><61>.rda<64><61>׺<EFBFBD><D7BA><EFBFBD>ļ<EFBFBD>"
#: rui.c:777 rui.c:1037
msgid "Paste commands only"
-msgstr "只能用粘贴命令"
+msgstr "ֻ<><D6BB><EFBFBD><EFBFBD>ճ<EFBFBD><D5B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#: rui.c:778 rui.c:986
msgid "Copy and paste"
-msgstr "复制和粘贴"
+msgstr "<22><><EFBFBD>ƺ<EFBFBD>ճ<EFBFBD><D5B3>"
#: rui.c:780
msgid "Clear window"
-msgstr "清除窗口"
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#: rui.c:784 rui.c:1054
msgid "Buffered output"
-msgstr "缓冲输出"
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#: rui.c:824
msgid "Packages"
-msgstr "程序包"
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#: rui.c:825
msgid "Load package..."
-msgstr "载入程序包..."
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>..."
#: rui.c:827
msgid "Set CRAN mirror..."
-msgstr "设定CRAN镜像..."
+msgstr "<22>趨CRAN<41><4E><EFBFBD><EFBFBD>..."
#: rui.c:829
msgid "Select repositories..."
-msgstr "选择存放处..."
+msgstr "ѡ<><D1A1><EFBFBD><EFBFBD><EFBFBD>Ŵ<EFBFBD>..."
#: rui.c:831
msgid "Install package(s)..."
-msgstr "安装程序包..."
+msgstr "<22><>װ<EFBFBD><D7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>..."
#: rui.c:833
msgid "Update packages..."
-msgstr "更新程序包..."
+msgstr "<22><><EFBFBD>³<EFBFBD><C2B3><EFBFBD><EFBFBD><EFBFBD>..."
#: rui.c:836
msgid "Install package(s) from local zip files..."
-msgstr "用本机的zip文件来安装程序包..."
+msgstr "<22>ñ<EFBFBD><C3B1><EFBFBD><EFBFBD><EFBFBD>zip<69>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>װ<EFBFBD><D7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>..."
#: rui.c:864
msgid "FAQ on R"
-msgstr "关于R的FAQ"
+msgstr "<22><><EFBFBD><EFBFBD>R<EFBFBD><52>FAQ"
#: rui.c:866
msgid "FAQ on R for &Windows"
-msgstr "关于Windows上R的FAQ"
+msgstr "<22><><EFBFBD><EFBFBD>Windows<77><73>R<EFBFBD><52>FAQ"
#: rui.c:872 rui.c:875
msgid "Manuals (in PDF)"
-msgstr "手册(PDF文件)"
+msgstr "<22>ֲ<EFBFBD>(PDF<44>ļ<EFBFBD>)"
#: rui.c:902
msgid "R functions (text)..."
-msgstr "R函数(文本文件)..."
+msgstr "R<><52><EFBFBD><EFBFBD>(<28>ı<EFBFBD><C4B1>ļ<EFBFBD>)..."
#: rui.c:904
msgid "Html help"
-msgstr "Html帮助"
+msgstr "Html<6D><6C><EFBFBD><EFBFBD>"
#: rui.c:906
msgid "Search help..."
-msgstr "查找帮助..."
+msgstr "<22><><EFBFBD>Ұ<EFBFBD><D2B0><EFBFBD>..."
#: rui.c:911
msgid "Apropos..."
-msgstr "关于..."
+msgstr "<22><><EFBFBD><EFBFBD>..."
#: rui.c:913
msgid "R Project home page"
-msgstr "R主页"
+msgstr "R<><52>ҳ"
#: rui.c:914
msgid "CRAN home page"
-msgstr "CRAN主页"
+msgstr "CRAN<41><4E>ҳ"
#: rui.c:916
msgid "About"
-msgstr "关于"
+msgstr "<22><><EFBFBD><EFBFBD>"
#: rui.c:970
msgid "Load image"
-msgstr "载入映像"
+msgstr "<22><><EFBFBD><EFBFBD>ӳ<EFBFBD><D3B3>"
#: rui.c:974
msgid "Save image"
-msgstr "保存映像"
+msgstr "<22><><EFBFBD><EFBFBD>ӳ<EFBFBD><D3B3>"
#: rui.c:990
msgid "Stop current computation"
-msgstr "中断目前的计算"
+msgstr "<22>ж<EFBFBD>Ŀǰ<C4BF>ļ<EFBFBD><C4BC><EFBFBD>"
#: rui.c:1014
msgid "Source R code..."
-msgstr "输入R代码..."
+msgstr "<22><><EFBFBD><EFBFBD>R<EFBFBD><52><EFBFBD><EFBFBD>..."
#: rui.c:1017
msgid "Display file(s)..."
-msgstr "显示文件..."
+msgstr "<22><>ʾ<EFBFBD>ļ<EFBFBD>..."
#: rui.c:1019
msgid "Load Workspace..."
-msgstr "载入工作空间..."
+msgstr "<22><><EFBFBD><EFBFBD><EBB9A4><EFBFBD>ռ<EFBFBD>..."
#: rui.c:1020
msgid "Save Workspace..."
-msgstr "保存工作空间..."
+msgstr "<22><><EFBFBD><EFBFBD><E6B9A4><EFBFBD>ռ<EFBFBD>..."
#: rui.c:1022
msgid "Load History..."
-msgstr "载入历史..."
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʷ..."
#: rui.c:1024
msgid "Save History..."
-msgstr "保存历史..."
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʷ..."
#: rui.c:1027
msgid "Change dir..."
-msgstr "改变当前目录..."
+msgstr "<22>ı䵱ǰĿ¼..."
#: rui.c:1032
msgid "Exit"
-msgstr "退出"
+msgstr "<22>˳<EFBFBD>"
#: rui.c:1039
msgid "Copy and Paste"
-msgstr "复制和粘贴"
+msgstr "<22><><EFBFBD>ƺ<EFBFBD>ճ<EFBFBD><D5B3>"
#: rui.c:1043
msgid "Data editor..."
-msgstr "数据编辑器..."
+msgstr "<22><><EFBFBD>ݱ༭<DDB1><E0BCAD>..."
#: rui.c:1047
msgid "Misc"
-msgstr "其他"
+msgstr "<22><><EFBFBD><EFBFBD>"
#: rui.c:1048
msgid "Stop current computation \tESC"
-msgstr "中断目前的计算 \tESC"
+msgstr "<22>ж<EFBFBD>Ŀǰ<C4BF>ļ<EFBFBD><C4BC><EFBFBD> \tESC"
#: rui.c:1050
msgid "Stop all computations"
-msgstr "中断所有计算"
+msgstr "<22>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>м<EFBFBD><D0BC><EFBFBD>"
#: rui.c:1052
msgid "Break to debugger"
-msgstr "暂停进入到侦错器"
+msgstr "<22><>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EBB5BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#: rui.c:1056
msgid "List objects"
-msgstr "列出目标对象"
+msgstr "<22>г<EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#: rui.c:1057
msgid "Remove all objects"
-msgstr "删除所有的目标对象"
+msgstr "ɾ<><C9BE><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#: rui.c:1058
msgid "List &search path"
-msgstr "列出查找路径"
+msgstr "<22>г<EFBFBD><D0B3><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><C2B7>"
#: rui.c:1066
msgid "Console"
-msgstr "控制台"
+msgstr "<22><><EFBFBD><EFBFBD>̨"
#: rui.c:1103
msgid "Select file"
-msgstr "选择文件"
+msgstr "ѡ<><D1A1><EFBFBD>ļ<EFBFBD>"
#: rui.c:1146
msgid "'mname' is limited to 1000 bytes"
-msgstr "'mname'的长度最多只能有1000个字符"
+msgstr "'mname'<27>ij<EFBFBD><C4B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD>1000<30><30><EFBFBD>ַ<EFBFBD>"
#: rui.c:1188
#, c-format
msgid "menu %s does not exist"
-msgstr "没有%s这样的菜单"
+msgstr "û<><C3BB>%s<><73><EFBFBD><EFBFBD><EFBFBD>IJ˵<C4B2>"
#: rui.c:1242
msgid "'menu' is limited to 500 bytes"
-msgstr "'menu'的长度最多只能有500个字符"
+msgstr "'menu'<27>ij<EFBFBD><C4B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD>500<30><30><EFBFBD>ַ<EFBFBD>"
#: rui.c:1252
msgid "base menu does not exist"
-msgstr "基本菜单不存在"
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><CBB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#: rui.c:1267
msgid "failed to allocate menu"
-msgstr "无法配置菜单"
+msgstr "<22>޷<EFBFBD><DEB7><EFBFBD><EFBFBD>ò˵<C3B2>"
#: rui.c:1283 rui.c:1404
msgid "menu + item is limited to 1000 bytes"
-msgstr "菜?项目的长度只能在1000个字符内"
+msgstr "<22>˵<EFBFBD><CBB5><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD>ij<EFBFBD><C4B3><EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD>1000<30><30><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>"
#: rui.c:1291 rui.c:1373
msgid "menu does not exist"
-msgstr "没有这一菜单"
+msgstr "û<><C3BB><EFBFBD><EFBFBD>һ<EFBFBD>˵<EFBFBD>"
#: rui.c:1309 rui.c:1332 rui.c:1337
msgid "failed to allocate char storage"
-msgstr "配置字符储存器失败"
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>"
#: rui.c:1345
msgid "failed to allocate menuitem"
-msgstr "配置菜单项失败"
+msgstr "<22><><EFBFBD>ò˵<C3B2><CBB5><EFBFBD>ʧ<EFBFBD><CAA7>"
#: rui.c:1394
msgid "menu not found"
-msgstr "找不到菜单"
+msgstr "<22>Ҳ<EFBFBD><D2B2><EFBFBD><EFBFBD>˵<EFBFBD>"
#: rui.c:1412
msgid "menu or item does not exist"
-msgstr "菜单或者项目不存在"
+msgstr "<22>˵<EFBFBD><CBB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#: system.c:400
msgid "Save workspace image?"
-msgstr "保存工作空间映像?"
+msgstr "<22><><EFBFBD><EFBFBD><E6B9A4><EFBFBD>ռ<EFBFBD>ӳ<EFBFBD><D3B3>?"
#: graphapp/clipboard.c:70 graphapp/clipboard.c:74
msgid "Insufficient memory: cell not copied to the clipboard"
-msgstr "内存不够: 字元格没有复制到剪贴板"
+msgstr "<22>ڴ治<DAB4><E6B2BB>: <20><>Ԫ<EFBFBD><D4AA>û<EFBFBD>и<EFBFBD><D0B8>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#: graphapp/dialogs.c:135 graphapp/dialogs.c:152 graphapp/dialogs.c:169
msgid "Question"
-msgstr "问题"
+msgstr "<22><><EFBFBD><EFBFBD>"
#: graphapp/dialogs.c:189
msgid " Change working directory to:"
-msgstr " 当前目录改成:"
+msgstr " <20><>ǰĿ¼<C4BF>ijɣ<C4B3>"
#: graphapp/dialogs.c:192
#, c-format
msgid "Unable to set '%s' as working directory"
-msgstr "无法将'%s'设成当前目录"
+msgstr "<22>޷<EFBFBD><DEB7><EFBFBD>'%s'<27><><EFBFBD>ɵ<EFBFBD>ǰĿ¼"
#: graphapp/dialogs.c:400
msgid "Choose a folder"
-msgstr "选一个文件夹"
+msgstr "ѡһ<D1A1><D2BB><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>"
#: graphapp/dialogs.c:492 graphapp/dialogs.c:494
msgid "Browse"
-msgstr "浏览"
+msgstr "<22><><EFBFBD><EFBFBD>"
#: graphapp/dialogs.c:592
msgid "User"
-msgstr "用户"
+msgstr "<22>û<EFBFBD>"
#: graphapp/dialogs.c:593
msgid "Password"
-msgstr "密码"
+msgstr "<22><><EFBFBD><EFBFBD>"
#: graphapp/dialogs.c:754 graphapp/dialogs.c:760
#, c-format
msgid "\"%s\" not found"
-msgstr "找不到\"%s\""
+msgstr "<22>Ҳ<EFBFBD><D2B2><EFBFBD>\"%s\""
#: graphapp/gmenus.c:48
msgid "Windows"
-msgstr "窗口"
+msgstr "<22><><EFBFBD><EFBFBD>"
#: graphapp/gmenus.c:49
msgid "Cascade"
-msgstr "层叠"
+msgstr "<22><><EFBFBD><EFBFBD>"
#: graphapp/gmenus.c:50
msgid "Tile"
-msgstr "平铺"
+msgstr "ƽ<><C6BD>"
#: graphapp/gmenus.c:51
msgid "Arrange Icons"
-msgstr "安排按钮"
+msgstr "<22><><EFBFBD>Ű<EFBFBD>ť"
#: ../library/grDevices/src/devWindows.c:848
msgid "Png files (*.png)"
-msgstr "Png文件(*.png)"
+msgstr "Png<6E>ļ<EFBFBD>(*.png)"
#: ../library/grDevices/src/devWindows.c:849
msgid "Portable network graphics file"
-msgstr "Portable network graphics文件"
+msgstr "Portable network graphics<63>ļ<EFBFBD>"
#: ../library/grDevices/src/devWindows.c:851
msgid "Windows bitmap files (*.bmp)"
-msgstr "Windows bitmap文件(*.bmp)"
+msgstr "Windows bitmap<61>ļ<EFBFBD>(*.bmp)"
#: ../library/grDevices/src/devWindows.c:852
msgid "Windows bitmap file"
-msgstr "Windows bitmap文件"
+msgstr "Windows bitmap<61>ļ<EFBFBD>"
#: ../library/grDevices/src/devWindows.c:854
msgid "Jpeg files (*.jpeg,*jpg)"
-msgstr "Jpeg文件(*.jpeg,*jpg)"
+msgstr "Jpeg<65>ļ<EFBFBD>(*.jpeg,*jpg)"
#: ../library/grDevices/src/devWindows.c:855
msgid "Jpeg file"
-msgstr "Jpeg文件"
+msgstr "Jpeg<65>ļ<EFBFBD>"
#: ../library/grDevices/src/devWindows.c:875
msgid "Postscript files (*.ps)"
-msgstr "Postscript文件(*.ps)"
+msgstr "Postscript<70>ļ<EFBFBD>(*.ps)"
#: ../library/grDevices/src/devWindows.c:876
msgid "Postscript file"
-msgstr "Postscript文件"
+msgstr "Postscript<70>ļ<EFBFBD>"
#: ../library/grDevices/src/devWindows.c:887
msgid "PDF files (*.pdf)"
-msgstr "PDF文件(*.pdf)"
+msgstr "PDF<44>ļ<EFBFBD>(*.pdf)"
#: ../library/grDevices/src/devWindows.c:888
msgid "PDF file"
-msgstr "PDF文件"
+msgstr "PDF<44>ļ<EFBFBD>"
#: ../library/grDevices/src/devWindows.c:899
msgid "Enhanced metafiles (*.emf)"
@@ -983,53 +982,53 @@ msgstr "Enhanced metafiles"
#: ../library/grDevices/src/devWindows.c:903
#: ../library/grDevices/src/devWindows.c:2721
msgid "file path selected is too long: only 512 bytes are allowed"
-msgstr "选择的文件路径太长最多只能有512字节"
+msgstr "ѡ<><D1A1><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>·<EFBFBD><C2B7>̫<EFBFBD><CCAB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD>512<31>ֽ<EFBFBD>"
#: ../library/grDevices/src/devWindows.c:1119
msgid "No plot to replace!"
-msgstr "没有可替换的图表!"
+msgstr "û<>п<EFBFBD><D0BF><EFBFBD><E6BBBB>ͼ<EFBFBD><CDBC>!"
#: ../library/grDevices/src/devWindows.c:1165
msgid "Variable name"
-msgstr "变量名"
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#: ../library/grDevices/src/devWindows.c:1172
msgid "Variable doesn't exist or doesn't contain any plots!"
-msgstr "变量不存在或不包含任何图表!"
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڻ򲻰<DABB><F2B2BBB0><EFBFBD><EFBFBD>κ<EFBFBD>ͼ<EFBFBD><CDBC>!"
#: ../library/grDevices/src/devWindows.c:1188
msgid "Name of variable to save to"
-msgstr "要保存到的变量名"
+msgstr "Ҫ<><D2AA><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD>"
#: ../library/grDevices/src/devWindows.c:1496
msgid "Copy to the clipboard as a metafile"
-msgstr "作为metafile复制到剪贴板"
+msgstr "<22><>Ϊmetafile<6C><65><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#: ../library/grDevices/src/devWindows.c:1514
#: ../library/grDevices/src/devWindows.c:1525
msgid "Stop locator"
-msgstr "停止定位器"
+msgstr "ֹͣ<CDA3><D6B9>λ<EFBFBD><CEBB>"
#: ../library/grDevices/src/devWindows.c:1524
#: ../library/grDevices/src/devWindows.c:1528
msgid "Stop"
-msgstr "停止"
+msgstr "ֹͣ"
#: ../library/grDevices/src/devWindows.c:1530
msgid "Continue"
-msgstr "继续"
+msgstr "<22><><EFBFBD><EFBFBD>"
#: ../library/grDevices/src/devWindows.c:1534
msgid "Next"
-msgstr "下一个"
+msgstr "<22><>һ<EFBFBD><D2BB>"
#: ../library/grDevices/src/devWindows.c:1535
msgid "Next plot"
-msgstr "下一个图表"
+msgstr "<22><>һ<EFBFBD><D2BB>ͼ<EFBFBD><CDBC>"
#: ../library/grDevices/src/devWindows.c:1541
msgid "Save as"
-msgstr "保存为"
+msgstr "<22><><EFBFBD><EFBFBD>Ϊ"
#: ../library/grDevices/src/devWindows.c:1542
msgid "Metafile..."
@@ -1057,115 +1056,116 @@ msgstr "Jpeg"
#: ../library/grDevices/src/devWindows.c:1548
msgid "50% quality..."
-msgstr "50% 印刷质量..."
+msgstr "50% ӡˢ<D3A1><CBA2><EFBFBD><EFBFBD>..."
#: ../library/grDevices/src/devWindows.c:1549
msgid "75% quality..."
-msgstr "75% 印刷质量..."
+msgstr "75% ӡˢ<D3A1><CBA2><EFBFBD><EFBFBD>..."
#: ../library/grDevices/src/devWindows.c:1550
msgid "100% quality..."
-msgstr "100% 印刷质量..."
+msgstr "100% ӡˢ<D3A1><CBA2><EFBFBD><EFBFBD>..."
#: ../library/grDevices/src/devWindows.c:1551
msgid "Copy to the clipboard"
-msgstr "复制到剪贴板"
+msgstr "<22><><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#: ../library/grDevices/src/devWindows.c:1552
msgid "as a Bitmap\tCTRL+C"
-msgstr "为Bitmap\tCTRL+C"
+msgstr "ΪBitmap\tCTRL+C"
#: ../library/grDevices/src/devWindows.c:1553
msgid "as a Metafile\tCTRL+W"
-msgstr "为Metafile\tCTRL+W"
+msgstr "ΪMetafile\tCTRL+W"
#: ../library/grDevices/src/devWindows.c:1556
msgid "Print...\tCTRL+P"
-msgstr "打印...\tCTRL+P"
+msgstr "<22><>ӡ...\tCTRL+P"
#: ../library/grDevices/src/devWindows.c:1558
msgid "close Device"
-msgstr "关闭设备"
+msgstr "<22>ر<EFBFBD><D8B1>豸"
#: ../library/grDevices/src/devWindows.c:1559
msgid "History"
-msgstr "历史"
+msgstr "<22><>ʷ"
#: ../library/grDevices/src/devWindows.c:1560
msgid "Recording"
-msgstr "记录"
+msgstr "<22><>¼"
#: ../library/grDevices/src/devWindows.c:1563
msgid "Add\tINS"
-msgstr "加入\tINS"
+msgstr "<22><><EFBFBD><EFBFBD>\tINS"
#: ../library/grDevices/src/devWindows.c:1564
msgid "Replace"
-msgstr "替换"
+msgstr "<22>滻"
#: ../library/grDevices/src/devWindows.c:1566
msgid "Previous\tPgUp"
-msgstr "上一个\tPgUp"
+msgstr "<22><>һ<EFBFBD><D2BB>\tPgUp"
#: ../library/grDevices/src/devWindows.c:1567
msgid "Next\tPgDown"
-msgstr "下一个\tPgDown"
+msgstr "<22><>һ<EFBFBD><D2BB>\tPgDown"
#: ../library/grDevices/src/devWindows.c:1569
msgid "Save to variable..."
-msgstr "保存到变量..."
+msgstr "<22><><EFBFBD><EFBFBD><E6B5BD><EFBFBD><EFBFBD>..."
#: ../library/grDevices/src/devWindows.c:1570
msgid "Get from variable..."
-msgstr "取于变量..."
+msgstr "ȡ<>ڱ<EFBFBD><DAB1><EFBFBD>..."
#: ../library/grDevices/src/devWindows.c:1572
msgid "Clear history"
-msgstr "清除历史"
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʷ"
#: ../library/grDevices/src/devWindows.c:1573
msgid "Resize"
-msgstr "重设大小"
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С"
#: ../library/grDevices/src/devWindows.c:1574
msgid "R mode"
-msgstr "R模式"
+msgstr "Rģʽ"
#: ../library/grDevices/src/devWindows.c:1576
msgid "Fit to window"
-msgstr "变为与窗口同样大小"
+msgstr "<22><>Ϊ<EFBFBD><EFBFBD><EBB4B0>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD>С"
#: ../library/grDevices/src/devWindows.c:1578
msgid "Fixed size"
-msgstr "固定的大小"
+msgstr "<22>̶<EFBFBD><CCB6>Ĵ<EFBFBD>С"
#: ../library/grDevices/src/devWindows.c:1585
msgid "Copy as metafile"
-msgstr "复制成metafile"
+msgstr "<22><><EFBFBD>Ƴ<EFBFBD>metafile"
#: ../library/grDevices/src/devWindows.c:1587
msgid "Copy as bitmap"
-msgstr "复制成bitmap"
+msgstr "<22><><EFBFBD>Ƴ<EFBFBD>bitmap"
#: ../library/grDevices/src/devWindows.c:1590
msgid "Save as metafile..."
-msgstr "保存成metafile..."
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>metafile..."
#: ../library/grDevices/src/devWindows.c:1592
msgid "Save as postscript..."
-msgstr "保存成postscript..."
+msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>postscript..."
#: ../library/grDevices/src/devWindows.c:2456
msgid "Locator is active"
-msgstr "定位器待用"
+msgstr "<22><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#: ../library/grDevices/src/devWindows.c:3032
msgid "Waiting to confirm page change..."
-msgstr "等待页面改变的确认..."
+msgstr "<22>ȴ<EFBFBD>ҳ<EFBFBD><D2B3><EFBFBD>ı<EFBFBD><C4B1><EFBFBD>ȷ<EFBFBD><C8B7>..."
#: ../library/grDevices/src/devWindows.c:3044
msgid "Click or hit ENTER for next page"
-msgstr "按ENTER来看下一页"
+msgstr "<22><>ENTER<45><52><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һҳ"
#~ msgid "Select working directory"
-#~ msgstr "选择当前目录"
+#~ msgstr "ѡ<><D1A1><EFBFBD><EFBFBD>ǰĿ¼"
+
diff -urp R-2.4.0.old/po/R.pot R-2.4.0/po/R.pot
--- R-2.4.0.old/po/R.pot 2006-09-26 21:05:18.000000000 -0500
+++ R-2.4.0/po/R.pot 2006-10-28 14:36:11.000000000 -0500
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: bugs@R-project.org\n"
-"POT-Creation-Date: 2006-09-26 14:32+0100\n"
+"POT-Creation-Date: 2006-10-24 15:53+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -83,7 +83,7 @@ msgstr ""
#: src/gnuwin32/extra.c:758 src/gnuwin32/extra.c:761 src/gnuwin32/extra.c:766
#: src/main/builtin.c:127 src/main/builtin.c:385 src/main/builtin.c:401
#: src/main/character.c:116 src/main/character.c:119 src/main/character.c:158
-#: src/main/character.c:2432 src/main/character.c:2436
+#: src/main/character.c:2434 src/main/character.c:2438
#: src/main/connections.c:822 src/main/connections.c:828
#: src/main/connections.c:831 src/main/connections.c:835
#: src/main/connections.c:958 src/main/connections.c:964
@@ -128,7 +128,7 @@ msgstr ""
#: src/main/print.c:176 src/main/print.c:182 src/main/print.c:204
#: src/main/print.c:210 src/main/random.c:465 src/main/random.c:469
#: src/main/random.c:471 src/main/random.c:473 src/main/saveload.c:2076
-#: src/main/saveload.c:2341 src/main/saveload.c:2390 src/main/seq.c:346
+#: src/main/saveload.c:2341 src/main/saveload.c:2391 src/main/seq.c:346
#: src/main/seq.c:350 src/main/seq.c:368 src/main/seq.c:375
#: src/main/sysutils.c:396 src/main/sysutils.c:398 src/main/sysutils.c:400
#: src/main/unique.c:576 src/main/util.c:527 src/main/util.c:530
@@ -472,7 +472,7 @@ msgid "second argument must be a list"
msgstr ""
#: src/include/Errormsg.h:42 src/main/eval.c:2715 src/main/subscript.c:228
-#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:436
+#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:437
msgid "subscript out of bounds"
msgstr ""
@@ -1134,7 +1134,7 @@ msgstr ""
#: src/main/envir.c:2729 src/main/envir.c:2763 src/main/envir.c:2783
#: src/main/envir.c:3107 src/main/envir.c:3111 src/main/eval.c:3498
#: src/main/objects.c:175 src/main/objects.c:181 src/main/saveload.c:2072
-#: src/main/saveload.c:2338 src/main/saveload.c:2387 src/main/serialize.c:2175
+#: src/main/saveload.c:2338 src/main/saveload.c:2388 src/main/serialize.c:2175
msgid "use of NULL environment is defunct"
msgstr ""
@@ -1267,156 +1267,156 @@ msgstr ""
msgid "the first argument must be a character vector"
msgstr ""
-#: src/main/character.c:725
+#: src/main/character.c:727
msgid "abbreviate used with non-ASCII chars"
msgstr ""
-#: src/main/character.c:743
+#: src/main/character.c:745
msgid "non-character names"
msgstr ""
-#: src/main/character.c:747
+#: src/main/character.c:749
msgid "invalid value of 'allow_'"
msgstr ""
-#: src/main/character.c:808 src/main/character.c:1586
+#: src/main/character.c:810 src/main/character.c:1588
#, c-format
msgid "invalid multibyte string %d"
msgstr ""
-#: src/main/character.c:889 src/main/character.c:1221
-#: src/main/character.c:1510 src/main/pcre.c:110 src/main/pcre.c:487
+#: src/main/character.c:891 src/main/character.c:1223
+#: src/main/character.c:1512 src/main/pcre.c:110 src/main/pcre.c:487
#: src/main/pcre.c:582
msgid "regular expression is invalid in this locale"
msgstr ""
-#: src/main/character.c:911 src/main/character.c:1063
-#: src/main/character.c:1224 src/main/character.c:1513 src/main/pcre.c:117
+#: src/main/character.c:913 src/main/character.c:1065
+#: src/main/character.c:1226 src/main/character.c:1515 src/main/pcre.c:117
#: src/main/pcre.c:332 src/main/pcre.c:492 src/main/pcre.c:587
#, c-format
msgid "invalid regular expression '%s'"
msgstr ""
-#: src/main/character.c:921 src/main/character.c:1239
-#: src/main/character.c:1530 src/main/pcre.c:132 src/main/pcre.c:365
+#: src/main/character.c:923 src/main/character.c:1241
+#: src/main/character.c:1532 src/main/pcre.c:132 src/main/pcre.c:365
#: src/main/pcre.c:507 src/main/pcre.c:610
#, c-format
msgid "input string %d is invalid in this locale"
msgstr ""
-#: src/main/character.c:976 src/main/pcre.c:187
+#: src/main/character.c:978 src/main/pcre.c:187
#, c-format
msgid "invalid backreference %d in regular expression"
msgstr ""
-#: src/main/character.c:1058 src/main/pcre.c:319
+#: src/main/character.c:1060 src/main/pcre.c:319
msgid "'pattern' is invalid in this locale"
msgstr ""
-#: src/main/character.c:1060 src/main/pcre.c:321
+#: src/main/character.c:1062 src/main/pcre.c:321
msgid "'replacement' is invalid in this locale"
msgstr ""
-#: src/main/character.c:1069
+#: src/main/character.c:1071
msgid "zero-length pattern"
msgstr ""
-#: src/main/character.c:1561
+#: src/main/character.c:1563
msgid "non-character argument to tolower()"
msgstr ""
-#: src/main/character.c:1639
+#: src/main/character.c:1641
#, c-format
msgid "decreasing range specification ('%lc-%lc')"
msgstr ""
-#: src/main/character.c:1725
+#: src/main/character.c:1727
#, c-format
msgid "decreasing range specification ('%c-%c')"
msgstr ""
-#: src/main/character.c:1802
+#: src/main/character.c:1804
msgid "invalid (NA) arguments."
msgstr ""
-#: src/main/character.c:1824
+#: src/main/character.c:1826
msgid "invalid multibyte string 'old'"
msgstr ""
-#: src/main/character.c:1831
+#: src/main/character.c:1833
msgid "invalid multibyte string 'new'"
msgstr ""
-#: src/main/character.c:1850 src/main/character.c:1912
+#: src/main/character.c:1852 src/main/character.c:1914
msgid "'old' is longer than 'new'"
msgstr ""
-#: src/main/character.c:1868
+#: src/main/character.c:1870
#, c-format
msgid "invalid input multibyte string %d"
msgstr ""
-#: src/main/character.c:2013
+#: src/main/character.c:2015
msgid "use of agrep() in a UTF-8 locale may only work for ASCII strings"
msgstr ""
-#: src/main/character.c:2022
+#: src/main/character.c:2024
msgid "could not allocate memory for approximate matching"
msgstr ""
-#: src/main/character.c:2046
+#: src/main/character.c:2048
msgid "could not perform case insensitive matching"
msgstr ""
-#: src/main/character.c:2098 src/main/character.c:2333
+#: src/main/character.c:2100 src/main/character.c:2335
msgid "argument must be a character vector of length 1"
msgstr ""
-#: src/main/character.c:2100 src/main/character.c:2335
+#: src/main/character.c:2102 src/main/character.c:2337
msgid ""
"argument should be a character vector of length 1\n"
"all but the first element will be ignored"
msgstr ""
-#: src/main/character.c:2116 src/main/character.c:2148
-#: src/main/character.c:2169
+#: src/main/character.c:2118 src/main/character.c:2150
+#: src/main/character.c:2171
msgid "argument 'x' must be a raw vector"
msgstr ""
-#: src/main/character.c:2119 src/main/character.c:2385
+#: src/main/character.c:2121 src/main/character.c:2387
msgid "argument 'multiple' must be TRUE or FALSE"
msgstr ""
-#: src/main/character.c:2150
+#: src/main/character.c:2152
msgid "argument 'shift' must be a small integer"
msgstr ""
-#: src/main/character.c:2187
+#: src/main/character.c:2189
msgid "argument 'x' must be a integer vector"
msgstr ""
-#: src/main/character.c:2207
+#: src/main/character.c:2209
msgid "argument 'x' must be raw, integer or logical"
msgstr ""
-#: src/main/character.c:2209
+#: src/main/character.c:2211
msgid "argument 'type' must be a character string"
msgstr ""
-#: src/main/character.c:2213
+#: src/main/character.c:2215
#, c-format
msgid "argument 'x' must be a multiple of %d long"
msgstr ""
-#: src/main/character.c:2227 src/main/character.c:2242
+#: src/main/character.c:2229 src/main/character.c:2244
msgid "argument 'x' must not contain NAs"
msgstr ""
-#: src/main/character.c:2382
+#: src/main/character.c:2384
msgid "argument 'x' must be an integer vector"
msgstr ""
-#: src/main/character.c:2427
+#: src/main/character.c:2429
msgid "strtrim() requires a character vector"
msgstr ""
@@ -5407,7 +5407,7 @@ msgstr ""
msgid "no input is available"
msgstr ""
-#: src/main/saveload.c:2365
+#: src/main/saveload.c:2366
msgid ""
"the input does not start with a magic number compatible with loading from a "
"connection"
@@ -6017,7 +6017,7 @@ msgid "[[ ]] subscript (%d) out of bound
msgstr ""
#: src/main/subassign.c:1769 src/main/subscript.c:111 src/main/subscript.c:188
-#: src/main/subscript.c:588 src/main/subset.c:923
+#: src/main/subscript.c:589 src/main/subset.c:923
msgid "invalid subscript type"
msgstr ""
@@ -6053,19 +6053,19 @@ msgstr ""
msgid "only 0's may be mixed with negative subscripts"
msgstr ""
-#: src/main/subscript.c:410
+#: src/main/subscript.c:411
msgid "character vector element does not have type CHARSXP"
msgstr ""
-#: src/main/subscript.c:487
+#: src/main/subscript.c:488
msgid "no 'dimnames' attribute for array"
msgstr ""
-#: src/main/subscript.c:494
+#: src/main/subscript.c:495
msgid "invalid subscript"
msgstr ""
-#: src/main/subscript.c:527
+#: src/main/subscript.c:528
msgid "subscripting on non-vector"
msgstr ""
Binary files R-2.4.0.old/po/ru.gmo and R-2.4.0/po/ru.gmo differ
diff -urp R-2.4.0.old/po/ru.po R-2.4.0/po/ru.po
--- R-2.4.0.old/po/ru.po 2006-09-26 21:05:18.000000000 -0500
+++ R-2.4.0/po/ru.po 2006-10-28 14:36:09.000000000 -0500
@@ -10,7 +10,7 @@ msgid ""
msgstr ""
"Project-Id-Version: R 2.4.0\n"
"Report-Msgid-Bugs-To: bugs@R-project.org\n"
-"POT-Creation-Date: 2006-09-26 14:32+0100\n"
+"POT-Creation-Date: 2006-10-24 15:53+0100\n"
"PO-Revision-Date: 2006-09-25 03:23-0800\n"
"Last-Translator: Alexey Shipunov <iit512@yandex.ru>\n"
"Language-Team: Russian\n"
@@ -87,7 +87,7 @@ msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 'names' <20> R_unlink"
#: src/gnuwin32/extra.c:758 src/gnuwin32/extra.c:761 src/gnuwin32/extra.c:766
#: src/main/builtin.c:127 src/main/builtin.c:385 src/main/builtin.c:401
#: src/main/character.c:116 src/main/character.c:119 src/main/character.c:158
-#: src/main/character.c:2432 src/main/character.c:2436
+#: src/main/character.c:2434 src/main/character.c:2438
#: src/main/connections.c:822 src/main/connections.c:828
#: src/main/connections.c:831 src/main/connections.c:835
#: src/main/connections.c:958 src/main/connections.c:964
@@ -132,7 +132,7 @@ msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 'names' <20> R_unlink"
#: src/main/print.c:176 src/main/print.c:182 src/main/print.c:204
#: src/main/print.c:210 src/main/random.c:465 src/main/random.c:469
#: src/main/random.c:471 src/main/random.c:473 src/main/saveload.c:2076
-#: src/main/saveload.c:2341 src/main/saveload.c:2390 src/main/seq.c:346
+#: src/main/saveload.c:2341 src/main/saveload.c:2391 src/main/seq.c:346
#: src/main/seq.c:350 src/main/seq.c:368 src/main/seq.c:375
#: src/main/sysutils.c:396 src/main/sysutils.c:398 src/main/sysutils.c:400
#: src/main/unique.c:576 src/main/util.c:527 src/main/util.c:530
@@ -478,7 +478,7 @@ msgid "second argument must be a list"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#: src/include/Errormsg.h:42 src/main/eval.c:2715 src/main/subscript.c:228
-#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:436
+#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:437
msgid "subscript out of bounds"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
@@ -1154,7 +1154,7 @@ msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#: src/main/envir.c:2729 src/main/envir.c:2763 src/main/envir.c:2783
#: src/main/envir.c:3107 src/main/envir.c:3111 src/main/eval.c:3498
#: src/main/objects.c:175 src/main/objects.c:181 src/main/saveload.c:2072
-#: src/main/saveload.c:2338 src/main/saveload.c:2387 src/main/serialize.c:2175
+#: src/main/saveload.c:2338 src/main/saveload.c:2388 src/main/serialize.c:2175
msgid "use of NULL environment is defunct"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> NULL <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
@@ -1287,113 +1287,113 @@ msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
msgid "the first argument must be a character vector"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
-#: src/main/character.c:725
+#: src/main/character.c:727
msgid "abbreviate used with non-ASCII chars"
msgstr "'abbreviate' <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><>-ASCII <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
-#: src/main/character.c:743
+#: src/main/character.c:745
msgid "non-character names"
msgstr "<22><>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>"
-#: src/main/character.c:747
+#: src/main/character.c:749
msgid "invalid value of 'allow_'"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 'allow_'"
-#: src/main/character.c:808 src/main/character.c:1586
+#: src/main/character.c:810 src/main/character.c:1588
#, c-format
msgid "invalid multibyte string %d"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> %d"
-#: src/main/character.c:889 src/main/character.c:1221
-#: src/main/character.c:1510 src/main/pcre.c:110 src/main/pcre.c:487
+#: src/main/character.c:891 src/main/character.c:1223
+#: src/main/character.c:1512 src/main/pcre.c:110 src/main/pcre.c:487
#: src/main/pcre.c:582
msgid "regular expression is invalid in this locale"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
-#: src/main/character.c:911 src/main/character.c:1063
-#: src/main/character.c:1224 src/main/character.c:1513 src/main/pcre.c:117
+#: src/main/character.c:913 src/main/character.c:1065
+#: src/main/character.c:1226 src/main/character.c:1515 src/main/pcre.c:117
#: src/main/pcre.c:332 src/main/pcre.c:492 src/main/pcre.c:587
#, c-format
msgid "invalid regular expression '%s'"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> '%s'"
-#: src/main/character.c:921 src/main/character.c:1239
-#: src/main/character.c:1530 src/main/pcre.c:132 src/main/pcre.c:365
+#: src/main/character.c:923 src/main/character.c:1241
+#: src/main/character.c:1532 src/main/pcre.c:132 src/main/pcre.c:365
#: src/main/pcre.c:507 src/main/pcre.c:610
#, c-format
msgid "input string %d is invalid in this locale"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> %d <20><><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
-#: src/main/character.c:976 src/main/pcre.c:187
+#: src/main/character.c:978 src/main/pcre.c:187
#, c-format
msgid "invalid backreference %d in regular expression"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> %d <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
-#: src/main/character.c:1058 src/main/pcre.c:319
+#: src/main/character.c:1060 src/main/pcre.c:319
msgid "'pattern' is invalid in this locale"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 'pattern' <20><><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
-#: src/main/character.c:1060 src/main/pcre.c:321
+#: src/main/character.c:1062 src/main/pcre.c:321
msgid "'replacement' is invalid in this locale"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 'replacement' <20><><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
-#: src/main/character.c:1069
+#: src/main/character.c:1071
msgid "zero-length pattern"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
-#: src/main/character.c:1561
+#: src/main/character.c:1563
msgid "non-character argument to tolower()"
msgstr "<22><>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> tolower()"
-#: src/main/character.c:1639
+#: src/main/character.c:1641
#, c-format
msgid "decreasing range specification ('%lc-%lc')"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> ('%lc-%lc')"
-#: src/main/character.c:1725
+#: src/main/character.c:1727
#, c-format
msgid "decreasing range specification ('%c-%c')"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> ('%c-%c')"
-#: src/main/character.c:1802
+#: src/main/character.c:1804
msgid "invalid (NA) arguments."
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (NA) <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>."
-#: src/main/character.c:1824
+#: src/main/character.c:1826
msgid "invalid multibyte string 'old'"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 'old'"
-#: src/main/character.c:1831
+#: src/main/character.c:1833
msgid "invalid multibyte string 'new'"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 'new'"
-#: src/main/character.c:1850 src/main/character.c:1912
+#: src/main/character.c:1852 src/main/character.c:1914
msgid "'old' is longer than 'new'"
msgstr "'old' <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> 'new'"
-#: src/main/character.c:1868
+#: src/main/character.c:1870
#, c-format
msgid "invalid input multibyte string %d"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> %d"
-#: src/main/character.c:2013
+#: src/main/character.c:2015
msgid "use of agrep() in a UTF-8 locale may only work for ASCII strings"
msgstr ""
"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> agrep() <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> UTF-8 <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> ASCII"
-#: src/main/character.c:2022
+#: src/main/character.c:2024
msgid "could not allocate memory for approximate matching"
msgstr "<22><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
-#: src/main/character.c:2046
+#: src/main/character.c:2048
msgid "could not perform case insensitive matching"
msgstr "<22><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
-#: src/main/character.c:2098 src/main/character.c:2333
+#: src/main/character.c:2100 src/main/character.c:2335
msgid "argument must be a character vector of length 1"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> a <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>"
-#: src/main/character.c:2100 src/main/character.c:2335
+#: src/main/character.c:2102 src/main/character.c:2337
msgid ""
"argument should be a character vector of length 1\n"
"all but the first element will be ignored"
@@ -1401,45 +1401,45 @@ msgstr ""
"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>\n"
"<22><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
-#: src/main/character.c:2116 src/main/character.c:2148
-#: src/main/character.c:2169
+#: src/main/character.c:2118 src/main/character.c:2150
+#: src/main/character.c:2171
msgid "argument 'x' must be a raw vector"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 'x' <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
-#: src/main/character.c:2119 src/main/character.c:2385
+#: src/main/character.c:2121 src/main/character.c:2387
msgid "argument 'multiple' must be TRUE or FALSE"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 'multiple' <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> TRUE <20><><EFBFBD> FALSE"
-#: src/main/character.c:2150
+#: src/main/character.c:2152
msgid "argument 'shift' must be a small integer"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 'shift' <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
-#: src/main/character.c:2187
+#: src/main/character.c:2189
msgid "argument 'x' must be a integer vector"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 'x' <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
-#: src/main/character.c:2207
+#: src/main/character.c:2209
msgid "argument 'x' must be raw, integer or logical"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 'x' <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
-#: src/main/character.c:2209
+#: src/main/character.c:2211
msgid "argument 'type' must be a character string"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> '<27><><EFBFBD>' <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
-#: src/main/character.c:2213
+#: src/main/character.c:2215
#, c-format
msgid "argument 'x' must be a multiple of %d long"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 'x' <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> %d"
-#: src/main/character.c:2227 src/main/character.c:2242
+#: src/main/character.c:2229 src/main/character.c:2244
msgid "argument 'x' must not contain NAs"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 'x' <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> NA"
-#: src/main/character.c:2382
+#: src/main/character.c:2384
msgid "argument 'x' must be an integer vector"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 'x' <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
-#: src/main/character.c:2427
+#: src/main/character.c:2429
msgid "strtrim() requires a character vector"
msgstr "strtrim() <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
@@ -5494,7 +5494,7 @@ msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
msgid "no input is available"
msgstr "<22><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
-#: src/main/saveload.c:2365
+#: src/main/saveload.c:2366
msgid ""
"the input does not start with a magic number compatible with loading from a "
"connection"
@@ -6123,7 +6123,7 @@ msgid "[[ ]] subscript (%d) out of bound
msgstr "[[ ]] <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (%d) <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
#: src/main/subassign.c:1769 src/main/subscript.c:111 src/main/subscript.c:188
-#: src/main/subscript.c:588 src/main/subset.c:923
+#: src/main/subscript.c:589 src/main/subset.c:923
msgid "invalid subscript type"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
@@ -6159,19 +6159,19 @@ msgstr "(subscript) <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>
msgid "only 0's may be mixed with negative subscripts"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
-#: src/main/subscript.c:410
+#: src/main/subscript.c:411
msgid "character vector element does not have type CHARSXP"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> 'CHARSXP'"
-#: src/main/subscript.c:487
+#: src/main/subscript.c:488
msgid "no 'dimnames' attribute for array"
msgstr "<22> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 'dimnames'"
-#: src/main/subscript.c:494
+#: src/main/subscript.c:495
msgid "invalid subscript"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
-#: src/main/subscript.c:527
+#: src/main/subscript.c:528
msgid "subscripting on non-vector"
msgstr "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
Binary files R-2.4.0.old/po/zh_CN.gmo and R-2.4.0/po/zh_CN.gmo differ
diff -urp R-2.4.0.old/po/zh_CN.po R-2.4.0/po/zh_CN.po
--- R-2.4.0.old/po/zh_CN.po 2006-09-26 21:05:18.000000000 -0500
+++ R-2.4.0/po/zh_CN.po 2006-10-28 14:36:12.000000000 -0500
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: R 2.1.0\n"
"Report-Msgid-Bugs-To: bugs@R-project.org\n"
-"POT-Creation-Date: 2006-09-26 14:32+0100\n"
+"POT-Creation-Date: 2006-10-24 15:53+0100\n"
"PO-Revision-Date: 2005-05-20 18:26+0800\n"
"Last-Translator: ronggui\n"
"Language-Team: Chinese\n"
@@ -82,7 +82,7 @@ msgstr "'R_unlink'里的'names不对"
#: src/gnuwin32/extra.c:758 src/gnuwin32/extra.c:761 src/gnuwin32/extra.c:766
#: src/main/builtin.c:127 src/main/builtin.c:385 src/main/builtin.c:401
#: src/main/character.c:116 src/main/character.c:119 src/main/character.c:158
-#: src/main/character.c:2432 src/main/character.c:2436
+#: src/main/character.c:2434 src/main/character.c:2438
#: src/main/connections.c:822 src/main/connections.c:828
#: src/main/connections.c:831 src/main/connections.c:835
#: src/main/connections.c:958 src/main/connections.c:964
@@ -127,7 +127,7 @@ msgstr "'R_unlink'里的'names不对"
#: src/main/print.c:176 src/main/print.c:182 src/main/print.c:204
#: src/main/print.c:210 src/main/random.c:465 src/main/random.c:469
#: src/main/random.c:471 src/main/random.c:473 src/main/saveload.c:2076
-#: src/main/saveload.c:2341 src/main/saveload.c:2390 src/main/seq.c:346
+#: src/main/saveload.c:2341 src/main/saveload.c:2391 src/main/seq.c:346
#: src/main/seq.c:350 src/main/seq.c:368 src/main/seq.c:375
#: src/main/sysutils.c:396 src/main/sysutils.c:398 src/main/sysutils.c:400
#: src/main/unique.c:576 src/main/util.c:527 src/main/util.c:530
@@ -471,7 +471,7 @@ msgid "second argument must be a list"
msgstr "第二个变元必需是串列"
#: src/include/Errormsg.h:42 src/main/eval.c:2715 src/main/subscript.c:228
-#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:436
+#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:437
msgid "subscript out of bounds"
msgstr "下标出界"
@@ -1135,7 +1135,7 @@ msgstr "向量size的设定太大了"
#: src/main/envir.c:2729 src/main/envir.c:2763 src/main/envir.c:2783
#: src/main/envir.c:3107 src/main/envir.c:3111 src/main/eval.c:3498
#: src/main/objects.c:175 src/main/objects.c:181 src/main/saveload.c:2072
-#: src/main/saveload.c:2338 src/main/saveload.c:2387 src/main/serialize.c:2175
+#: src/main/saveload.c:2338 src/main/saveload.c:2388 src/main/serialize.c:2175
msgid "use of NULL environment is defunct"
msgstr "NULL环境不再有用"
@@ -1268,156 +1268,156 @@ msgstr "split的式样'%s'不对"
msgid "the first argument must be a character vector"
msgstr "第一变元必需是字符向量"
-#: src/main/character.c:725
+#: src/main/character.c:727
msgid "abbreviate used with non-ASCII chars"
msgstr "abbreviate不适用于非ASCII字元"
-#: src/main/character.c:743
+#: src/main/character.c:745
msgid "non-character names"
msgstr "不能有非字符名字"
-#: src/main/character.c:747
+#: src/main/character.c:749
msgid "invalid value of 'allow_'"
msgstr "'allow_'值不对"
-#: src/main/character.c:808 src/main/character.c:1586
+#: src/main/character.c:810 src/main/character.c:1588
#, c-format
msgid "invalid multibyte string %d"
msgstr "多字节字符串%d有错"
-#: src/main/character.c:889 src/main/character.c:1221
-#: src/main/character.c:1510 src/main/pcre.c:110 src/main/pcre.c:487
+#: src/main/character.c:891 src/main/character.c:1223
+#: src/main/character.c:1512 src/main/pcre.c:110 src/main/pcre.c:487
#: src/main/pcre.c:582
msgid "regular expression is invalid in this locale"
msgstr "正规表现不适用于此语言环境"
-#: src/main/character.c:911 src/main/character.c:1063
-#: src/main/character.c:1224 src/main/character.c:1513 src/main/pcre.c:117
+#: src/main/character.c:913 src/main/character.c:1065
+#: src/main/character.c:1226 src/main/character.c:1515 src/main/pcre.c:117
#: src/main/pcre.c:332 src/main/pcre.c:492 src/main/pcre.c:587
#, c-format
msgid "invalid regular expression '%s'"
msgstr "正规表现’%s'不对"
-#: src/main/character.c:921 src/main/character.c:1239
-#: src/main/character.c:1530 src/main/pcre.c:132 src/main/pcre.c:365
+#: src/main/character.c:923 src/main/character.c:1241
+#: src/main/character.c:1532 src/main/pcre.c:132 src/main/pcre.c:365
#: src/main/pcre.c:507 src/main/pcre.c:610
#, c-format
msgid "input string %d is invalid in this locale"
msgstr "输入的字符串%d不适用于此语言环境"
-#: src/main/character.c:976 src/main/pcre.c:187
+#: src/main/character.c:978 src/main/pcre.c:187
#, c-format
msgid "invalid backreference %d in regular expression"
msgstr "正规表现中回转参考%d有错"
-#: src/main/character.c:1058 src/main/pcre.c:319
+#: src/main/character.c:1060 src/main/pcre.c:319
msgid "'pattern' is invalid in this locale"
msgstr "'pattern'的值在本语言环境下不对"
-#: src/main/character.c:1060 src/main/pcre.c:321
+#: src/main/character.c:1062 src/main/pcre.c:321
msgid "'replacement' is invalid in this locale"
msgstr "'replacement'的值在本语言环境下不对"
-#: src/main/character.c:1069
+#: src/main/character.c:1071
msgid "zero-length pattern"
msgstr "式样长度为0"
-#: src/main/character.c:1561
+#: src/main/character.c:1563
msgid "non-character argument to tolower()"
msgstr "非字符变元不能用于tolower()"
-#: src/main/character.c:1639
+#: src/main/character.c:1641
#, c-format
msgid "decreasing range specification ('%lc-%lc')"
msgstr "范围设定是不能递减的('%lc-%lc')"
-#: src/main/character.c:1725
+#: src/main/character.c:1727
#, c-format
msgid "decreasing range specification ('%c-%c')"
msgstr "范围设定是不能递减的('%c-%c')"
-#: src/main/character.c:1802
+#: src/main/character.c:1804
msgid "invalid (NA) arguments."
msgstr "(NA)变元不对."
-#: src/main/character.c:1824
+#: src/main/character.c:1826
msgid "invalid multibyte string 'old'"
msgstr "多字节字符串'old'有错"
-#: src/main/character.c:1831
+#: src/main/character.c:1833
msgid "invalid multibyte string 'new'"
msgstr "多字节字符串'new'有错"
-#: src/main/character.c:1850 src/main/character.c:1912
+#: src/main/character.c:1852 src/main/character.c:1914
msgid "'old' is longer than 'new'"
msgstr "'old'比'new'要长"
-#: src/main/character.c:1868
+#: src/main/character.c:1870
#, c-format
msgid "invalid input multibyte string %d"
msgstr "输入的多字节字符串%d有错"
-#: src/main/character.c:2013
+#: src/main/character.c:2015
msgid "use of agrep() in a UTF-8 locale may only work for ASCII strings"
msgstr "在UTF-8语言环境下agrep()只能对ASCII字符串适用"
-#: src/main/character.c:2022
+#: src/main/character.c:2024
msgid "could not allocate memory for approximate matching"
msgstr "做近似比较时无法分配足够内存"
-#: src/main/character.c:2046
+#: src/main/character.c:2048
msgid "could not perform case insensitive matching"
msgstr "无法进行不区分字体大小写的比较"
-#: src/main/character.c:2098 src/main/character.c:2333
+#: src/main/character.c:2100 src/main/character.c:2335
msgid "argument must be a character vector of length 1"
msgstr "变元必需是长度为1的字符向量"
-#: src/main/character.c:2100 src/main/character.c:2335
+#: src/main/character.c:2102 src/main/character.c:2337
msgid ""
"argument should be a character vector of length 1\n"
"all but the first element will be ignored"
msgstr "变元应当是长度为1的字节向量除第一个单元外其他所有的单元都略过不用"
-#: src/main/character.c:2116 src/main/character.c:2148
-#: src/main/character.c:2169
+#: src/main/character.c:2118 src/main/character.c:2150
+#: src/main/character.c:2171
msgid "argument 'x' must be a raw vector"
msgstr "变元'x'必需是原始向量"
-#: src/main/character.c:2119 src/main/character.c:2385
+#: src/main/character.c:2121 src/main/character.c:2387
msgid "argument 'multiple' must be TRUE or FALSE"
msgstr "变元'multiple'的值要么是TRUE要么是FALSE"
-#: src/main/character.c:2150
+#: src/main/character.c:2152
msgid "argument 'shift' must be a small integer"
msgstr "变元'shift'必需数值不是太大的整数"
-#: src/main/character.c:2187
+#: src/main/character.c:2189
msgid "argument 'x' must be a integer vector"
msgstr "变元'x'必需是整数向量"
-#: src/main/character.c:2207
+#: src/main/character.c:2209
msgid "argument 'x' must be raw, integer or logical"
msgstr "变元'x'必需是原始值, 整数值或逻辑值"
-#: src/main/character.c:2209
+#: src/main/character.c:2211
msgid "argument 'type' must be a character string"
msgstr "变元type必需是字符串"
-#: src/main/character.c:2213
+#: src/main/character.c:2215
#, c-format
msgid "argument 'x' must be a multiple of %d long"
msgstr "变元'x'必需是%d值的整倍数"
-#: src/main/character.c:2227 src/main/character.c:2242
+#: src/main/character.c:2229 src/main/character.c:2244
msgid "argument 'x' must not contain NAs"
msgstr "变元'x'不能含NA值"
-#: src/main/character.c:2382
+#: src/main/character.c:2384
msgid "argument 'x' must be an integer vector"
msgstr "变元'x'必需是整数向量"
-#: src/main/character.c:2427
+#: src/main/character.c:2429
msgid "strtrim() requires a character vector"
msgstr "strtrim()需要字符向量"
@@ -5417,7 +5417,7 @@ msgstr "链结书写发生了错误"
msgid "no input is available"
msgstr "没有输入值"
-#: src/main/saveload.c:2365
+#: src/main/saveload.c:2366
msgid ""
"the input does not start with a magic number compatible with loading from a "
"connection"
@@ -6039,7 +6039,7 @@ msgid "[[ ]] subscript (%d) out of bound
msgstr "[[ ]] 下标(%d)在界限外"
#: src/main/subassign.c:1769 src/main/subscript.c:111 src/main/subscript.c:188
-#: src/main/subscript.c:588 src/main/subset.c:923
+#: src/main/subscript.c:589 src/main/subset.c:923
msgid "invalid subscript type"
msgstr "下标种类不对"
@@ -6075,19 +6075,19 @@ msgstr "(下标)逻辑下标太长"
msgid "only 0's may be mixed with negative subscripts"
msgstr "只有负下标里才能有0"
-#: src/main/subscript.c:410
+#: src/main/subscript.c:411
msgid "character vector element does not have type CHARSXP"
msgstr "字符向量单元没有CHARSXP种类"
-#: src/main/subscript.c:487
+#: src/main/subscript.c:488
msgid "no 'dimnames' attribute for array"
msgstr "陈列中没有'dimnames'这一属性"
-#: src/main/subscript.c:494
+#: src/main/subscript.c:495
msgid "invalid subscript"
msgstr "下标不对"
-#: src/main/subscript.c:527
+#: src/main/subscript.c:528
msgid "subscripting on non-vector"
msgstr "非向量不能有下标"
Binary files R-2.4.0.old/po/zh_TW.gmo and R-2.4.0/po/zh_TW.gmo differ
diff -urp R-2.4.0.old/po/zh_TW.po R-2.4.0/po/zh_TW.po
--- R-2.4.0.old/po/zh_TW.po 2006-09-26 21:05:18.000000000 -0500
+++ R-2.4.0/po/zh_TW.po 2006-10-28 14:36:12.000000000 -0500
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: R 2.3.0\n"
"Report-Msgid-Bugs-To: bugs@R-project.org\n"
-"POT-Creation-Date: 2006-09-26 14:32+0100\n"
+"POT-Creation-Date: 2006-10-24 15:53+0100\n"
"PO-Revision-Date: 2006-04-14 22:49+0800\n"
"Last-Translator: Wei-Lun Chao <chaoweilun@pcmail.com.tw>\n"
"Language-Team: Chinese (traditional) <zh-l10n@linux.org.tw>\n"
@@ -84,7 +84,7 @@ msgstr "R_unlink 的 'names' 無效"
#: src/gnuwin32/extra.c:758 src/gnuwin32/extra.c:761 src/gnuwin32/extra.c:766
#: src/main/builtin.c:127 src/main/builtin.c:385 src/main/builtin.c:401
#: src/main/character.c:116 src/main/character.c:119 src/main/character.c:158
-#: src/main/character.c:2432 src/main/character.c:2436
+#: src/main/character.c:2434 src/main/character.c:2438
#: src/main/connections.c:822 src/main/connections.c:828
#: src/main/connections.c:831 src/main/connections.c:835
#: src/main/connections.c:958 src/main/connections.c:964
@@ -129,7 +129,7 @@ msgstr "R_unlink 的 'names' 無效"
#: src/main/print.c:176 src/main/print.c:182 src/main/print.c:204
#: src/main/print.c:210 src/main/random.c:465 src/main/random.c:469
#: src/main/random.c:471 src/main/random.c:473 src/main/saveload.c:2076
-#: src/main/saveload.c:2341 src/main/saveload.c:2390 src/main/seq.c:346
+#: src/main/saveload.c:2341 src/main/saveload.c:2391 src/main/seq.c:346
#: src/main/seq.c:350 src/main/seq.c:368 src/main/seq.c:375
#: src/main/sysutils.c:396 src/main/sysutils.c:398 src/main/sysutils.c:400
#: src/main/unique.c:576 src/main/util.c:527 src/main/util.c:530
@@ -476,7 +476,7 @@ msgid "second argument must be a list"
msgstr "第二個引數必須是串列"
#: src/include/Errormsg.h:42 src/main/eval.c:2715 src/main/subscript.c:228
-#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:436
+#: src/main/subscript.c:333 src/main/subscript.c:336 src/main/subscript.c:437
msgid "subscript out of bounds"
msgstr "下標超出邊界"
@@ -1142,7 +1142,7 @@ msgstr "指定的向量大小太大"
#: src/main/envir.c:2729 src/main/envir.c:2763 src/main/envir.c:2783
#: src/main/envir.c:3107 src/main/envir.c:3111 src/main/eval.c:3498
#: src/main/objects.c:175 src/main/objects.c:181 src/main/saveload.c:2072
-#: src/main/saveload.c:2338 src/main/saveload.c:2387 src/main/serialize.c:2175
+#: src/main/saveload.c:2338 src/main/saveload.c:2388 src/main/serialize.c:2175
msgid "use of NULL environment is defunct"
msgstr "NULL 環境的使用已經廢止"
@@ -1276,156 +1276,156 @@ msgstr "split 的式樣 '%s' 不正確"
msgid "the first argument must be a character vector"
msgstr "第一引數必須是字元向量"
-#: src/main/character.c:725
+#: src/main/character.c:727
msgid "abbreviate used with non-ASCII chars"
msgstr "abbreviate 不適用於非 ASCII 字元"
-#: src/main/character.c:743
+#: src/main/character.c:745
msgid "non-character names"
msgstr "不能有非字元名稱"
-#: src/main/character.c:747
+#: src/main/character.c:749
msgid "invalid value of 'allow_'"
msgstr "'allow_' 值不正確"
-#: src/main/character.c:808 src/main/character.c:1586
+#: src/main/character.c:810 src/main/character.c:1588
#, c-format
msgid "invalid multibyte string %d"
msgstr "多位元組字串 %d 不正確"
-#: src/main/character.c:889 src/main/character.c:1221
-#: src/main/character.c:1510 src/main/pcre.c:110 src/main/pcre.c:487
+#: src/main/character.c:891 src/main/character.c:1223
+#: src/main/character.c:1512 src/main/pcre.c:110 src/main/pcre.c:487
#: src/main/pcre.c:582
msgid "regular expression is invalid in this locale"
msgstr "正規表示式不適用於此語言環境"
-#: src/main/character.c:911 src/main/character.c:1063
-#: src/main/character.c:1224 src/main/character.c:1513 src/main/pcre.c:117
+#: src/main/character.c:913 src/main/character.c:1065
+#: src/main/character.c:1226 src/main/character.c:1515 src/main/pcre.c:117
#: src/main/pcre.c:332 src/main/pcre.c:492 src/main/pcre.c:587
#, c-format
msgid "invalid regular expression '%s'"
msgstr "正規表示式「%s」不正確"
-#: src/main/character.c:921 src/main/character.c:1239
-#: src/main/character.c:1530 src/main/pcre.c:132 src/main/pcre.c:365
+#: src/main/character.c:923 src/main/character.c:1241
+#: src/main/character.c:1532 src/main/pcre.c:132 src/main/pcre.c:365
#: src/main/pcre.c:507 src/main/pcre.c:610
#, c-format
msgid "input string %d is invalid in this locale"
msgstr "輸入的字串 %d 不適用於此語言環境"
-#: src/main/character.c:976 src/main/pcre.c:187
+#: src/main/character.c:978 src/main/pcre.c:187
#, c-format
msgid "invalid backreference %d in regular expression"
msgstr "正規表示式中向後參考 %d 不正確"
-#: src/main/character.c:1058 src/main/pcre.c:319
+#: src/main/character.c:1060 src/main/pcre.c:319
msgid "'pattern' is invalid in this locale"
msgstr "'pattern' 的值在本語言環境下不正確"
-#: src/main/character.c:1060 src/main/pcre.c:321
+#: src/main/character.c:1062 src/main/pcre.c:321
msgid "'replacement' is invalid in this locale"
msgstr "'replacement' 的值在本語言環境下不正確"
-#: src/main/character.c:1069
+#: src/main/character.c:1071
msgid "zero-length pattern"
msgstr "式樣長度為零"
-#: src/main/character.c:1561
+#: src/main/character.c:1563
msgid "non-character argument to tolower()"
msgstr "非字元引數不能用於 tolower()"
-#: src/main/character.c:1639
+#: src/main/character.c:1641
#, c-format
msgid "decreasing range specification ('%lc-%lc')"
msgstr "正在遞減範圍設定 ('%lc-%lc')"
-#: src/main/character.c:1725
+#: src/main/character.c:1727
#, c-format
msgid "decreasing range specification ('%c-%c')"
msgstr "正在遞減範圍設定 ('%c-%c')"
-#: src/main/character.c:1802
+#: src/main/character.c:1804
msgid "invalid (NA) arguments."
msgstr "(NA) 引數不正確。"
-#: src/main/character.c:1824
+#: src/main/character.c:1826
msgid "invalid multibyte string 'old'"
msgstr "多位元組字串 'old' 不正確"
-#: src/main/character.c:1831
+#: src/main/character.c:1833
msgid "invalid multibyte string 'new'"
msgstr "多位元組字串 'new' 不正確"
-#: src/main/character.c:1850 src/main/character.c:1912
+#: src/main/character.c:1852 src/main/character.c:1914
msgid "'old' is longer than 'new'"
msgstr "'old' 比 'new' 要長"
-#: src/main/character.c:1868
+#: src/main/character.c:1870
#, c-format
msgid "invalid input multibyte string %d"
msgstr "輸入的多位元組字串 %d 不正確"
-#: src/main/character.c:2013
+#: src/main/character.c:2015
msgid "use of agrep() in a UTF-8 locale may only work for ASCII strings"
msgstr "在 UTF-8 語言環境下 agrep() 只能適用於 ASCII 字串"
-#: src/main/character.c:2022
+#: src/main/character.c:2024
msgid "could not allocate memory for approximate matching"
msgstr "做近似比較時無法指派足夠記憶體"
-#: src/main/character.c:2046
+#: src/main/character.c:2048
msgid "could not perform case insensitive matching"
msgstr "無法進行不區分大小寫的比較"
-#: src/main/character.c:2098 src/main/character.c:2333
+#: src/main/character.c:2100 src/main/character.c:2335
msgid "argument must be a character vector of length 1"
msgstr "引數必須是長度為 1 的字元向量"
-#: src/main/character.c:2100 src/main/character.c:2335
+#: src/main/character.c:2102 src/main/character.c:2337
msgid ""
"argument should be a character vector of length 1\n"
"all but the first element will be ignored"
msgstr "引數應當是長度為 1 的字元向量,除第一個字元外其它所有的字元都將忽略"
-#: src/main/character.c:2116 src/main/character.c:2148
-#: src/main/character.c:2169
+#: src/main/character.c:2118 src/main/character.c:2150
+#: src/main/character.c:2171
msgid "argument 'x' must be a raw vector"
msgstr "引數 'x' 必須是常數向量"
-#: src/main/character.c:2119 src/main/character.c:2385
+#: src/main/character.c:2121 src/main/character.c:2387
msgid "argument 'multiple' must be TRUE or FALSE"
msgstr "引數 'multiple' 的值必須是 TRUE 或 FALSE"
-#: src/main/character.c:2150
+#: src/main/character.c:2152
msgid "argument 'shift' must be a small integer"
msgstr "引數 'shift' 必須是小數值的整數"
-#: src/main/character.c:2187
+#: src/main/character.c:2189
msgid "argument 'x' must be a integer vector"
msgstr "引數 'x' 必須是整數向量"
-#: src/main/character.c:2207
+#: src/main/character.c:2209
msgid "argument 'x' must be raw, integer or logical"
msgstr "引數 'x' 必須是純量值、整數值或邏輯值"
-#: src/main/character.c:2209
+#: src/main/character.c:2211
msgid "argument 'type' must be a character string"
msgstr "引數「type」必須是字串"
-#: src/main/character.c:2213
+#: src/main/character.c:2215
#, c-format
msgid "argument 'x' must be a multiple of %d long"
msgstr "引數 'x' 必須是 %d 值的整數倍"
-#: src/main/character.c:2227 src/main/character.c:2242
+#: src/main/character.c:2229 src/main/character.c:2244
msgid "argument 'x' must not contain NAs"
msgstr "引數 'x' 不能含 NA 值"
-#: src/main/character.c:2382
+#: src/main/character.c:2384
msgid "argument 'x' must be an integer vector"
msgstr "引數 'x' 必須是整數向量"
-#: src/main/character.c:2427
+#: src/main/character.c:2429
msgid "strtrim() requires a character vector"
msgstr "strtrim() 需要字元向量"
@@ -5442,7 +5442,7 @@ msgstr "連結寫入發生了錯誤"
msgid "no input is available"
msgstr "沒有可用的輸入"
-#: src/main/saveload.c:2365
+#: src/main/saveload.c:2366
msgid ""
"the input does not start with a magic number compatible with loading from a "
"connection"
@@ -6073,7 +6073,7 @@ msgid "[[ ]] subscript (%d) out of bound
msgstr "[[ ]] 下標 (%d) 在界限外"
#: src/main/subassign.c:1769 src/main/subscript.c:111 src/main/subscript.c:188
-#: src/main/subscript.c:588 src/main/subset.c:923
+#: src/main/subscript.c:589 src/main/subset.c:923
msgid "invalid subscript type"
msgstr "下標類型不正確"
@@ -6109,19 +6109,19 @@ msgstr "(下標) 邏輯下標太長"
msgid "only 0's may be mixed with negative subscripts"
msgstr "只有負數下標中才能有 0"
-#: src/main/subscript.c:410
+#: src/main/subscript.c:411
msgid "character vector element does not have type CHARSXP"
msgstr "字元向量元素沒有 CHARSXP 類型"
-#: src/main/subscript.c:487
+#: src/main/subscript.c:488
msgid "no 'dimnames' attribute for array"
msgstr "陣列中沒有 'dimnames' 此一屬性"
-#: src/main/subscript.c:494
+#: src/main/subscript.c:495
msgid "invalid subscript"
msgstr "下標不正確"
-#: src/main/subscript.c:527
+#: src/main/subscript.c:528
msgid "subscripting on non-vector"
msgstr "非向量不能有下標"
diff -urp R-2.4.0.old/share/make/tests.mk R-2.4.0/share/make/tests.mk
--- R-2.4.0.old/share/make/tests.mk 2006-04-09 17:20:04.000000000 -0500
+++ R-2.4.0/share/make/tests.mk 2006-10-03 19:41:11.000000000 -0500
@@ -1,6 +1,6 @@
## ${R_HOME}/share/make/tests.mk
-include $(R_HOME)/etc/Makeconf
+include $(R_HOME)/etc${R_ARCH}/Makeconf
makevars =
srcdir = .
diff -urp R-2.4.0.old/src/appl/lowess.c R-2.4.0/src/appl/lowess.c
--- R-2.4.0.old/src/appl/lowess.c 2006-04-09 17:19:58.000000000 -0500
+++ R-2.4.0/src/appl/lowess.c 2006-10-28 14:35:58.000000000 -0500
@@ -1,7 +1,7 @@
/*
* R : A Computer Langage for Statistical Data Analysis
* Copyright (C) 1996 Robert Gentleman and Ross Ihaka
- * Copyright (C) 1999-2002 Robert Gentleman, Ross Ihaka and the
+ * Copyright (C) 1999-2006 Robert Gentleman, Ross Ihaka and the
* R Development Core Team
*
* This program is free software; you can redistribute it and/or modify
@@ -132,7 +132,7 @@ void clowess(double *x, double *y, int n
{
int i, iter, j, last, m1, m2, nleft, nright, ns;
Rboolean ok;
- double alpha, c1, c9, cmad, cut, d1, d2, denom, r;
+ double alpha, c1, c9, cmad, cut, d1, d2, denom, r, sc;
if (n < 2) {
ys[0] = y[0]; return;
@@ -223,9 +223,14 @@ void clowess(double *x, double *y, int n
break;
}
/* residuals */
- for(i=0; i < n; i++)
+ for(i = 0; i < n; i++)
res[i] = y[i+1] - ys[i+1];
+ /* overall scale estimate */
+ sc = 0.;
+ for(i = 0; i < n; i++) sc += fabs(res[i]);
+ sc /= n;
+
/* compute robustness weights */
/* except last time */
@@ -234,7 +239,7 @@ void clowess(double *x, double *y, int n
/* Note: The following code, biweight_{6 MAD|Ri|}
is also used in stl(), loess and several other places.
--> should provide API here (MM) */
- for(i=0 ; i<n ; i++)
+ for(i = 0 ; i < n ; i++)
rw[i] = fabs(res[i]);
/* Compute cmad := 6 * median(rw[], n) ---- */
@@ -253,9 +258,11 @@ void clowess(double *x, double *y, int n
#ifdef DEBUG_lowess
REprintf(" cmad = %12g\n", cmad);
#endif
+ if(cmad < 1e-7 * sc) /* effectively zero */
+ break;
c9 = 0.999*cmad;
c1 = 0.001*cmad;
- for(i=0 ; i<n ; i++) {
+ for(i = 0 ; i < n ; i++) {
r = fabs(res[i]);
if (r <= c1)
rw[i] = 1.;
diff -urp R-2.4.0.old/src/gnuwin32/CHANGES R-2.4.0/src/gnuwin32/CHANGES
--- R-2.4.0.old/src/gnuwin32/CHANGES 2006-09-26 21:05:12.000000000 -0500
+++ R-2.4.0/src/gnuwin32/CHANGES 2006-11-02 10:45:46.000000000 -0600
@@ -4,6 +4,30 @@
See the file NEWS for changes that affect all versions of R.
+R 2.4.0 patched
+===============
+
+Inno Setup >= 5.1.7 is now required to build the installer.
+
+Reverted 2.4.0 change that required case-sensitive specification of
+commands to R CMD.
+
+The Simplified Chinese messages were in the wrong format, causing
+R to crash on startup. (PR#9277)
+
+The pointsize of fonts in the windows() graphics device may now be set to
+any positive integer.
+
+Building customized installers failed because the startup options
+weren't being handled properly.
+
+If Rconsole settings were such that R could not start properly, it
+crashed. It now suggests starting with the --vanilla option, which now
+does not load Rconsole. Additionally, an option --no-Rconsole has
+been added for completeness and debugging.
+
+
+
R 2.4.0
=======
@@ -15,7 +39,7 @@ file and (for future sessions) from the
The installer can set defaults for MDI/SDI display, help style, and
use of the --internet2 startup option. Custom builds of R can change
-these defaults.
+these defaults. The standard build now defaults to CHM help.
If CHM help is selected, but is not present (e.g. a package was cross-
compiled on Unix), the help system defaults to text help.
diff -urp R-2.4.0.old/src/gnuwin32/fixed/bin/INSTALL R-2.4.0/src/gnuwin32/fixed/bin/INSTALL
--- R-2.4.0.old/src/gnuwin32/fixed/bin/INSTALL 2006-09-04 09:41:36.000000000 -0500
+++ R-2.4.0/src/gnuwin32/fixed/bin/INSTALL 2006-10-28 14:35:59.000000000 -0500
@@ -26,7 +26,7 @@ use R::Dcf;
use R::Utils;
-my $revision = ' $Rev: 37712 $ ';
+my $revision = ' $Rev: 39671 $ ';
my $version;
my $name;
$revision =~ / ([\d\.]*) /;
@@ -250,7 +250,11 @@ foreach $pkg (@ARGV){
if (open pkgdescin, "< $pkg/$ppkg/DESCRIPTION.in") {
## the Unix version of INSTALL does discard blank lines,
## although ?read.dcf does not allow them.
- while(<pkgdescin>) { print pkgdesc $_ if $_ =~ /\S/; }
+ while(<pkgdescin>) {
+ ## this is to cope with possibly missing final NL
+ chomp;
+ print pkgdesc "$_\n" if $_ =~ /\S/;
+ }
close pkgdescin;
} else {
print "no DESCRIPTION.in found for package $ppkg\n";
Only in R-2.4.0.old/src/gnuwin32/fixed: dobundle.pl
diff -urp R-2.4.0.old/src/gnuwin32/front-ends/rcmdfn.c R-2.4.0/src/gnuwin32/front-ends/rcmdfn.c
--- R-2.4.0.old/src/gnuwin32/front-ends/rcmdfn.c 2006-09-07 21:05:22.000000000 -0500
+++ R-2.4.0/src/gnuwin32/front-ends/rcmdfn.c 2006-10-28 14:35:59.000000000 -0500
@@ -291,20 +291,6 @@ int rcmdfn (int cmdarg, int argc, char *
} else if (!strcmp(".bat", p + strlen(p) - 4)) strcpy(cmd, "");
else if (!strcmp(".exe", p + strlen(p) - 4)) strcpy(cmd, "");
else {
- WIN32_FIND_DATA find_data;
- HANDLE fh;
- char tmp[MAX_PATH];
- strcpy(tmp, RHome); strcat(tmp, "/bin/"); strcat(tmp, p);
- fh = FindFirstFile(tmp, &find_data);
- if (fh == INVALID_HANDLE_VALUE) {
- fprintf(stderr, "no Perl script '%s'\n", p);
- return(28);
- }
- if(strcmp(p, find_data.cFileName)) {
- fprintf(stderr, "no Perl script '%s'\n", p);
- return(28);
- }
- FindClose(fh);
strcpy(cmd, "perl ");
strcat(cmd, RHome); strcat(cmd, "/bin/");
}
diff -urp R-2.4.0.old/src/gnuwin32/front-ends/rgui.c R-2.4.0/src/gnuwin32/front-ends/rgui.c
--- R-2.4.0.old/src/gnuwin32/front-ends/rgui.c 2006-09-04 09:41:35.000000000 -0500
+++ R-2.4.0/src/gnuwin32/front-ends/rgui.c 2006-10-29 10:45:44.000000000 -0600
@@ -29,6 +29,7 @@ extern void cmdlineoptions(int, char **)
extern int setupui(void);
extern void Rf_mainloop(void);
__declspec(dllimport) extern UImode CharacterMode;
+extern void GA_exitapp(void);
extern char *getDLLVersion();
@@ -48,7 +49,11 @@ int AppMain (int argc, char **argv)
exit(1);
}
cmdlineoptions(argc, argv);
- setupui();
+ if (!setupui()) {
+ MessageBox(0, "Error setting up console. Try --vanilla option.",
+ "Terminating", MB_TASKMODAL | MB_ICONSTOP | MB_OK);
+ GA_exitapp();
+ }
Rf_mainloop();
/* NOTREACHED */
return 0;
diff -urp R-2.4.0.old/src/gnuwin32/installer/JRins.pl R-2.4.0/src/gnuwin32/installer/JRins.pl
--- R-2.4.0.old/src/gnuwin32/installer/JRins.pl 2006-09-21 21:05:08.000000000 -0500
+++ R-2.4.0/src/gnuwin32/installer/JRins.pl 2006-10-03 19:41:11.000000000 -0500
@@ -78,6 +78,7 @@ Name: br; MessagesFile: "compiler:Langua
Name: ca; MessagesFile: "compiler:Languages\\Catalan.isl"
Name: cz; MessagesFile: "compiler:Languages\\Czech.isl"
Name: dk; MessagesFile: "compiler:Languages\\Danish.isl"
+Name: es; MessagesFile: "compiler:Languages\\Spanish.isl"
Name: nl; MessagesFile: "compiler:Languages\\Dutch.isl"
Name: fr; MessagesFile: "compiler:Languages\\French.isl"
Name: fi; MessagesFile: "compiler:Languages\\Finnish.isl"
@@ -93,7 +94,6 @@ Name: chs; MessagesFile: "ChineseSimp.is
Name: cht; MessagesFile: "ChineseTrad.isl"
Name: ja; MessagesFile: "Japanese.isl"
Name: ko; MessagesFile: "Korean.isl"
-Name: es; MessagesFile: "SpanishStd.isl"
#include "CustomMsg.txt"
diff -urp R-2.4.0.old/src/gnuwin32/installer/Makefile R-2.4.0/src/gnuwin32/installer/Makefile
--- R-2.4.0.old/src/gnuwin32/installer/Makefile 2006-09-04 09:41:38.000000000 -0500
+++ R-2.4.0/src/gnuwin32/installer/Makefile 2006-10-28 14:35:59.000000000 -0500
@@ -79,12 +79,11 @@ endif
#
# files to make source packages
$(MKDIR) -p $(RPREFIX)/share \
- $(RPREFIX)/src/library $(RPREFIX)/src/gnuwin32/fixed
+ $(RPREFIX)/src/library $(RPREFIX)/src/gnuwin32
$(CP) $(R_HOME)/doc/html/logo.jpg $(RPREFIX)/doc/html
$(CP) $(R_HOME)/doc/KEYWORDS* $(RPREFIX)/doc
$(CP) -p $(foreach i,$(GW32_FILES),../$i) $(RPREFIX)/src/gnuwin32
$(SED) -e s/@RVER@/$(RVER)/g ../Makefile.packages > $(RPREFIX)/src/gnuwin32/Makefile
- $(CP) ../fixed/dobundle.pl $(RPREFIX)/src/gnuwin32/fixed
$(CP) -pr ../help ../check $(RPREFIX)/src/gnuwin32
$(RM) $(RPREFIX)/src/gnuwin32/help/*.c \
$(RPREFIX)/src/gnuwin32/help/MkChmDll
@@ -155,5 +154,5 @@ myR:
@(cd $(IMAGEDIR); echo "tools:::.installMD5sums(\".\")" | \
R_DEFAULT_PACKAGES=NULL LC_COLLATE=C R_OSTYPE=windows \
bin/Rterm.exe --vanilla --slave)
- perl JRins.pl $(RPREFIX) $(IMAGEDIR)
+ perl JRins.pl $(RPREFIX) $(IMAGEDIR) $(MDISDI) $(HelpStyle) $(Internet)
"$(ISDIR)/iscc" R.iss > myR.log
Only in R-2.4.0.old/src/gnuwin32/installer: SpanishStd.isl
diff -urp R-2.4.0.old/src/gnuwin32/Makefile R-2.4.0/src/gnuwin32/Makefile
--- R-2.4.0.old/src/gnuwin32/Makefile 2006-09-06 21:05:05.000000000 -0500
+++ R-2.4.0/src/gnuwin32/Makefile 2006-10-28 14:36:00.000000000 -0500
@@ -421,9 +421,10 @@ distclean: clean clean-recommended
$(RM) ../../doc/html/search/index.txt ../../doc/html/index.html \
../../doc/html/packages.html ../../doc/html/rwin.html \
../../doc/html/rw-FAQ.html ../../doc/html/search/SearchEngine.html
- $(RM) ../../etc/Rconsole ../../etc/Rdevga ../../etc/Rprofile.site \
- ../../etc/rgb.txt ../../share/make/wintests.mk \
- ../include/Platform.h ../../tests/*.Rout ../../tests/*.Rout.fail
+ $(RM) ../../etc/Makeconf ../../etc/Rconsole ../../etc/Rdevga \
+ ../../etc/Rprofile.site ../../etc/rgb.txt \
+ ../../share/make/wintests.mk \
+ ../../tests/*.Rout ../../tests/*.Rout.fail
$(MAKE) -C fixed distclean
$(MAKE) -C ../include -f Makefile.win distclean
-$(MAKE) -C installer distclean
diff -urp R-2.4.0.old/src/gnuwin32/preferences.c R-2.4.0/src/gnuwin32/preferences.c
--- R-2.4.0.old/src/gnuwin32/preferences.c 2006-09-16 21:05:15.000000000 -0500
+++ R-2.4.0/src/gnuwin32/preferences.c 2006-10-29 10:45:44.000000000 -0600
@@ -785,8 +785,8 @@ static void showDialog(Gui gui)
setlistitem(highlightcol, rgbtonum(gui->hlt));
bApply = newbutton(G_("Apply"), rect(50, 410, 70, 25), apply);
- bSave = newbutton(G_("Save"), rect(130, 410, 70, 25), save);
- bLoad = newbutton(G_("Load"), rect(210, 410, 70, 25), load);
+ bSave = newbutton(G_("Save..."), rect(130, 410, 70, 25), save);
+ bLoad = newbutton(G_("Load..."), rect(210, 410, 70, 25), load);
bOK = newbutton(G_("OK"), rect(350, 410, 70, 25), ok);
bCancel = newbutton(G_("Cancel"), rect(430, 410, 70, 25), cancel);
show(wconfig);
diff -urp R-2.4.0.old/src/gnuwin32/rui.c R-2.4.0/src/gnuwin32/rui.c
--- R-2.4.0.old/src/gnuwin32/rui.c 2006-09-21 21:05:08.000000000 -0500
+++ R-2.4.0/src/gnuwin32/rui.c 2006-10-29 10:45:44.000000000 -0600
@@ -54,6 +54,7 @@ console RConsole = NULL;
#ifdef USE_MDI
int RguiMDI = RW_MDI | RW_TOOLBAR | RW_STATUSBAR;
int MDIset = 0;
+int R_LoadRconsole = 1;
window RFrame;
rect MDIsize;
#endif
@@ -664,25 +665,25 @@ void readconsolecfg()
struct structGUI gui;
- gui.crows = 32;
- gui.ccols = 90;
+ gui.crows = 25;
+ gui.ccols = 80;
gui.cx = gui.cy = 0;
gui.grx = Rwin_graphicsx;
gui.gry = Rwin_graphicsy;
gui.bg = White;
- gui.fg = Black;
+ gui.fg = DarkBlue;
gui.user = gaRed;
gui.hlt = DarkRed;
gui.prows = 25;
gui.pcols = 80;
gui.pagerMultiple = 0;
- gui.cbb = 64*1024;
- gui.cbl = 8*1024;
+ gui.cbb = 65000;
+ gui.cbl = 8000;
gui.setWidthOnResize = 1;
- strcpy(gui.font, "FixedFont");
+ strcpy(gui.font, "Courier New");
strcpy(gui.style, "normal");
- gui.tt_font = 0;
- gui.pointsize = 12;
+ gui.tt_font = 1;
+ gui.pointsize = 10;
strcpy(gui.language, "");
gui.buffered = 1;
@@ -693,13 +694,15 @@ void readconsolecfg()
gui.MDIsize = rect(0, 0, 0, 0);
#endif
- sprintf(optf, "%s/Rconsole", getenv("R_USER"));
- if (!loadRconsole(&gui, optf)) {
- sprintf(optf, "%s/etc/Rconsole", getenv("R_HOME"));
+ if (R_LoadRconsole) {
+ sprintf(optf, "%s/Rconsole", getenv("R_USER"));
if (!loadRconsole(&gui, optf)) {
- app_cleanup();
- RConsole = NULL;
- exit(10);
+ sprintf(optf, "%s/etc/Rconsole", getenv("R_HOME"));
+ if (!loadRconsole(&gui, optf)) {
+ app_cleanup();
+ RConsole = NULL;
+ exit(10);
+ }
}
}
if (gui.tt_font) {
diff -urp R-2.4.0.old/src/gnuwin32/rui.h R-2.4.0/src/gnuwin32/rui.h
--- R-2.4.0.old/src/gnuwin32/rui.h 2006-09-04 21:05:03.000000000 -0500
+++ R-2.4.0/src/gnuwin32/rui.h 2006-10-29 10:45:44.000000000 -0600
@@ -24,6 +24,7 @@
#define RW_LARGEICONS 0x1000
extern int MDIset;
+extern int R_LoadRconsole;
#include <R_ext/Boolean.h>
#include <R_ext/libextern.h>
diff -urp R-2.4.0.old/src/include/Makefile.win R-2.4.0/src/include/Makefile.win
--- R-2.4.0.old/src/include/Makefile.win 2006-09-04 09:40:59.000000000 -0500
+++ R-2.4.0/src/include/Makefile.win 2006-10-28 14:35:50.000000000 -0500
@@ -78,7 +78,8 @@ Rmath.h: Rmath.h0
## If we do not have svn, get the old file from SVN-REVISION.bak (if poss).
## This needs to be copy-on-change.
-## We don't get the date from svn info as it is not in GMT.
+## The date from svn info is not in GMT, but we have decided to live
+## with that as they changed the format in svn 1.4.x
## <FIXME> USE_SVNVERSION does not work if there is no 'svnversion'
FORCE:
$(R_HOME)/SVN-REVISION: FORCE
@@ -95,9 +96,10 @@ else
rm svn-tmp; \
fi
endif
- @if test -f svn-tmp && test -f "../../.svn/entries" ; then \
- cdate=`grep committed-date "../../.svn/entries" | sed -n 1p | sed -e 's/^ *committed-date=\"//' -e 's/T.*//'` ; \
- echo "Last Changed Date: $${cdate}" >> svn-tmp ; \
+ @if test -f svn-tmp ; then \
+ (cd ../..; LC_ALL=C TZ=GMT svn info || echo "Last Changed Date: unknown") 2> /dev/null \
+ | sed -n '/^Last Changed Date:/p' | sed 's/[0-9][0-9]:.*//' \
+ >> svn-tmp ; \
else \
rm -f svn-tmp ; \
fi
@@ -108,7 +110,7 @@ endif
else \
cp -p $(R_HOME)/SVN-REVISION.bak $@ 2> /dev/null || \
(echo "Revision: 00000" > $@; \
- echo "Last Changed Date: 2005-00-00" >> $@) ; \
+ echo "Last Changed Date: 2006-00-00" >> $@) ; \
fi
@rm -f svn-tmp $(R_HOME)/SVN-REVISION.bak
diff -urp R-2.4.0.old/src/library/base/man/abbreviate.Rd R-2.4.0/src/library/base/man/abbreviate.Rd
--- R-2.4.0.old/src/library/base/man/abbreviate.Rd 2006-09-04 09:41:21.000000000 -0500
+++ R-2.4.0/src/library/base/man/abbreviate.Rd 2006-10-28 14:35:55.000000000 -0500
@@ -35,6 +35,9 @@ abbreviate(names.arg, minlength = 4, use
If \code{use.classes} is \code{FALSE} then the only distinction is to
be between letters and space. This has NOT been implemented.
+
+ There is a limit on 8191 bytes on the elements of \code{names.arg}
+ (after possible coercion).
}
\value{
A character vector containing abbreviations for the strings in its
diff -urp R-2.4.0.old/src/library/base/man/connections.Rd R-2.4.0/src/library/base/man/connections.Rd
--- R-2.4.0.old/src/library/base/man/connections.Rd 2006-09-17 21:05:04.000000000 -0500
+++ R-2.4.0/src/library/base/man/connections.Rd 2006-11-01 19:41:41.000000000 -0600
@@ -2,6 +2,7 @@
\alias{connections}
\alias{connection}
\alias{file}
+\alias{clipboard}
\alias{pipe}
\alias{fifo}
\alias{gzfile}
@@ -254,12 +255,13 @@ isIncomplete(con)
in modes \code{"r"} and \code{"w"} only.
#endif
#ifdef unix
- in mode \code{"r"} only. It reads the X11 primary selection, which
- can also be specified as \code{"X11_primary"} and the secondary
+ in mode \code{"r"} only. It reads the X11 primary selection (see
+ \url{http://standards.freedesktop.org/clipboards-spec/clipboards-latest.txt}),
+ which can also be specified as \code{"X11_primary"} and the secondary
selection as \code{"X11_secondary"}.
#endif
- When the clipboard is opened for reading, the contents are immediately
+ When a clipboard is opened for reading, the contents are immediately
copied to internal storage in the connection.
#ifdef windows
diff -urp R-2.4.0.old/src/library/base/man/grep.Rd R-2.4.0/src/library/base/man/grep.Rd
--- R-2.4.0.old/src/library/base/man/grep.Rd 2006-09-24 21:05:08.000000000 -0500
+++ R-2.4.0/src/library/base/man/grep.Rd 2006-10-28 14:35:55.000000000 -0500
@@ -54,11 +54,12 @@ gregexpr(pattern, text, extended = TRUE,
\item{useBytes}{logical. If \code{TRUE} the matching is done
byte-by-byte rather than character-by-character. See Details.}
\item{replacement}{a replacement for matched pattern in \code{sub} and
- \code{gsub}. Coerced to character if possible. This can include
- backreferences \code{"\\1"} to \code{"\\9"} to parenthesized
- subexpressions of \code{pattern}. For \code{perl = TRUE} only, it
- can also contain \code{"\\U"} or \code{"\\L"} to convert the rest of
- the replacement to upper or lower case.
+ \code{gsub}. Coerced to character if possible. For \code{fixed =
+ FALSE} this can include backreferences \code{"\\1"} to
+ \code{"\\9"} to parenthesized subexpressions of \code{pattern}. For
+ \code{perl = TRUE} only, it can also contain \code{"\\U"} or
+ \code{"\\L"} to convert the rest of the replacement to upper or
+ lower case.
}
}
\details{
diff -urp R-2.4.0.old/src/library/base/man/groupGeneric.Rd R-2.4.0/src/library/base/man/groupGeneric.Rd
--- R-2.4.0.old/src/library/base/man/groupGeneric.Rd 2006-09-04 09:41:20.000000000 -0500
+++ R-2.4.0/src/library/base/man/groupGeneric.Rd 2006-10-28 14:35:55.000000000 -0500
@@ -7,8 +7,6 @@
\alias{Ops.data.frame}
\alias{Summary}
\alias{Summary.data.frame}
-\alias{Arith}
-\alias{Compare}
\alias{Complex}
\alias{group generic} % used in class.Rd
\concept{group generic}
@@ -120,7 +118,7 @@ Summary(\dots, na.rm = FALSE)
}
This group dispatches on the first argument supplied.
- \item Group \code{Complex}:
+ \item Group \code{"Complex"}:
\itemize{
\item \code{Arg}, \code{Conj}, \code{Im}, \code{Mod}, \code{Re}
% do_cmathfuns() [complex.c:267]: if(DispatchGroup("Complex",...))
diff -urp R-2.4.0.old/src/library/base/man/merge.Rd R-2.4.0/src/library/base/man/merge.Rd
--- R-2.4.0.old/src/library/base/man/merge.Rd 2006-09-27 21:05:07.000000000 -0500
+++ R-2.4.0/src/library/base/man/merge.Rd 2006-10-28 14:35:55.000000000 -0500
@@ -18,8 +18,7 @@ merge(x, y, \dots)
sort = TRUE, suffixes = c(".x",".y"), \dots)
}
\arguments{
- \item{x, y}{data frames, or objects to be coerced to one. Neither is
- currently allowed to have zero rows.}
+ \item{x, y}{data frames, or objects to be coerced to one.}
\item{by, by.x, by.y}{specifications of the common columns. See Details.}
\item{all}{logical; \code{all = L} is shorthand for \code{all.x = L} and
\code{all.y = L}.}
diff -urp R-2.4.0.old/src/library/base/man/ns-internal.Rd R-2.4.0/src/library/base/man/ns-internal.Rd
--- R-2.4.0.old/src/library/base/man/ns-internal.Rd 2006-09-07 21:05:19.000000000 -0500
+++ R-2.4.0/src/library/base/man/ns-internal.Rd 2006-10-28 14:35:55.000000000 -0500
@@ -27,7 +27,7 @@ importIntoEnv(impenv, impnames, expenv,
isBaseNamespace(ns)
namespaceExport(ns, vars)
namespaceImport(self, \dots)
-namespaceImportFrom(self, ns, vars, generics)
+namespaceImportFrom(self, ns, vars, generics, packages)
namespaceImportClasses(self, ns, vars)
namespaceImportMethods(self, ns, vars)
packageHasNamespace(package, package.lib)
@@ -49,6 +49,7 @@ setNamespaceInfo(ns, which, val)
\item{generics}{optional character vector.}
\item{self}{name space environment.}
\item{package}{string naming the package/name space to load.}
+ \item{packages}{vector of package names parallel to \code{generics}.}
\item{package.lib}{character vector specifying library.}
\item{mustExist}{logical.}
\item{genname}{character.}
diff -urp R-2.4.0.old/src/library/base/man/parse.Rd R-2.4.0/src/library/base/man/parse.Rd
--- R-2.4.0.old/src/library/base/man/parse.Rd 2006-09-04 09:41:20.000000000 -0500
+++ R-2.4.0/src/library/base/man/parse.Rd 2006-10-28 14:35:55.000000000 -0500
@@ -36,7 +36,8 @@ parse(file = "", n = NULL, text = NULL,
that is missing the final EOL marker.
See \code{\link{source}} for the limits on the size of functions
- that can be parsed (by default).
+ that can be parsed (by default). There is also a limit of 8192 bytes
+ on the size of strings which can be parsed.
When input is taken from the console, \code{n = NULL} is equivalent to
\code{n = 1}, and \code{n < 0} will read until an EOF character is read.
diff -urp R-2.4.0.old/src/library/base/man/regex.Rd R-2.4.0/src/library/base/man/regex.Rd
--- R-2.4.0.old/src/library/base/man/regex.Rd 2006-09-24 21:05:08.000000000 -0500
+++ R-2.4.0/src/library/base/man/regex.Rd 2006-10-30 10:45:47.000000000 -0600
@@ -56,7 +56,7 @@
The precise way character ranges are interpreted depends on the values
of \code{perl} and \code{ignore.case}. For basic and extended regular
- expressions the the collation order is taken from the OS's
+ expressions the collation order is taken from the OS's
implementation of the setting of the locale category
\code{LC_COLLATE}, so \code{[W-Z]} may include \code{x} and if it
does may or may not include \code{w}. (In most English locales the
diff -urp R-2.4.0.old/src/library/base/man/Rhome.Rd R-2.4.0/src/library/base/man/Rhome.Rd
--- R-2.4.0.old/src/library/base/man/Rhome.Rd 2006-04-09 17:19:27.000000000 -0500
+++ R-2.4.0/src/library/base/man/Rhome.Rd 2006-10-28 14:35:54.000000000 -0500
@@ -1,8 +1,9 @@
\name{R.home}
\alias{R.home}
+\alias{R_HOME}
\title{Return the R Home Directory}
\description{
- Return the \R home directory.
+ Return the \R home directory.
}
\usage{
R.home(component="home")
@@ -13,8 +14,19 @@ R.home(component="home")
\code{"etc"} and \code{"share"} giving the paths to the
corresponding parts of an \R installation.}
}
+\details{
+ The \R home directory is the top-level directory of the \R
+ installation being run.
+
+ The \R home directory is often referred to as \code{R_HOME},
+ and is the value of an environment variable of that name in an \R
+ session.
+#ifdef unix
+ It can be found outside an \R session by \code{R \link{RHOME}}.
+#endif
+}
\value{
- A character string giving the current \R home directory or path to a
+ A character string giving the \R home directory or path to a
particular component. Normally the components are all subdirectories
of the \R home directory, but this may not be the case in a Unix-like
installation.
diff -urp R-2.4.0.old/src/library/base/man/row.names.Rd R-2.4.0/src/library/base/man/row.names.Rd
--- R-2.4.0.old/src/library/base/man/row.names.Rd 2006-09-04 09:41:20.000000000 -0500
+++ R-2.4.0/src/library/base/man/row.names.Rd 2006-10-28 14:35:55.000000000 -0500
@@ -34,10 +34,10 @@ row.names(x) <- value
Prior to \R 2.4.0, row names were character. As from \R 2.4.0, they
are allowed to be integer or character, but for backwards
compatibility \code{row.names} will always return a character vector.
- (Use \code{attr(x, "row.names")} if you need the internal value.)
+ (Use \code{attr(x, "row.names")} if you need the actual value.)
Using \code{NULL} for the value resets the row names to
- \code{seq(len=nrow(x))}.
+ \code{seq_len(nrow(x))}.
}
\value{
\code{row.names} returns a character vector.
@@ -49,9 +49,9 @@ row.names(x) <- value
it has a method that calls \code{rownames} for an array argument.
Row names of the form \code{1:n} for \code{n > 2} are stored
- internally in a compact form, which might be seen by calling
- \code{\link{attributes}} but never via \code{row.names} or
- \code{attr(x, "row.names")}.
+ internally in a compact form, which might be seen from C code or by
+ deparsing but never via \code{row.names} or
+ \code{\link{attr}(x, "row.names")}.
}
\references{
Chambers, J. M. (1992)
diff -urp R-2.4.0.old/src/library/base/man/source.Rd R-2.4.0/src/library/base/man/source.Rd
--- R-2.4.0.old/src/library/base/man/source.Rd 2006-09-04 09:41:21.000000000 -0500
+++ R-2.4.0/src/library/base/man/source.Rd 2006-10-28 14:35:55.000000000 -0500
@@ -49,7 +49,7 @@ source(file, local = FALSE, echo = verbo
If \code{\link{options}}("keep.source") is true (the default), the
source of functions is kept so they can be listed exactly as input.
- This imposes a limit of 128K chars on the function size and a nesting
+ This imposes a limit of 128K bytes on the function size and a nesting
limit of 265. Use \code{option(keep.source = FALSE)} when these
limits might take effect: if exceeded they generate an error.
@@ -61,7 +61,8 @@ source(file, local = FALSE, echo = verbo
trial encoding.
Unlike input from a console, lines in the file or on a connection can
- contain an unlimited number of characters.
+ contain an unlimited number of characters. However, there is a limit
+ of 8192 bytes on the size of character strings.
}
\references{
Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988)
diff -urp R-2.4.0.old/src/library/base/man/Startup.Rd R-2.4.0/src/library/base/man/Startup.Rd
--- R-2.4.0.old/src/library/base/man/Startup.Rd 2006-09-04 09:41:20.000000000 -0500
+++ R-2.4.0/src/library/base/man/Startup.Rd 2006-10-29 10:45:43.000000000 -0600
@@ -77,6 +77,10 @@
The command-line flag \option{--vanilla} implies
\option{--no-site-file}, \option{--no-init-file},
\option{--no-restore} and \option{--no-environ}.
+#ifdef windows
+ In Windows, it also implies \option{--no-Rconsole}, which
+ prevents loading the \code{\link{Rconsole}} file.
+#endif
}
\details{
Note that there are two sorts of files used in startup:
diff -urp R-2.4.0.old/src/library/base/man/strsplit.Rd R-2.4.0/src/library/base/man/strsplit.Rd
--- R-2.4.0.old/src/library/base/man/strsplit.Rd 2006-09-07 21:05:19.000000000 -0500
+++ R-2.4.0/src/library/base/man/strsplit.Rd 2006-10-30 10:45:47.000000000 -0600
@@ -52,7 +52,7 @@ strsplit(x, split, extended = TRUE, fixe
character} (almost always a Unicode point).
- A missing value of \code{split} does not split the the corresponding
+ A missing value of \code{split} does not split the corresponding
element(s) of \code{x} at all.
The algorithm applied to each input string is
diff -urp R-2.4.0.old/src/library/base/man/unlist.Rd R-2.4.0/src/library/base/man/unlist.Rd
--- R-2.4.0.old/src/library/base/man/unlist.Rd 2006-09-04 09:41:20.000000000 -0500
+++ R-2.4.0/src/library/base/man/unlist.Rd 2006-10-31 10:45:45.000000000 -0600
@@ -20,7 +20,7 @@ unlist(x, recursive = TRUE, use.names =
specific classes of objects, see \link{InternalMethods}.
If \code{x} has length zero the result is \code{NULL}.
-
+
If \code{recursive = FALSE}, the function will not recurse beyond the
first level items in \code{x}.
@@ -40,7 +40,7 @@ unlist(x, recursive = TRUE, use.names =
Where possible the list elements are coerced to a common mode during
the unlisting, and so the result often ends up as a character
- vector. Vectors will be corced to the highest type of the components
+ vector. Vectors will be coerced to the highest type of the components
in the hierarchy NULL < raw < logical < integer < real < complex < character
< list < expression: pairlists are treated as lists.
@@ -54,7 +54,7 @@ unlist(x, recursive = TRUE, use.names =
\value{
\code{NULL} or an expression or a vector of an appropriate mode to
hold the list components.
-
+
The output type is determined from the highest type
of the components in the hierarchy raw < logical < integer < real <
complex < character < list < expression, after coercion of pairlists
diff -urp R-2.4.0.old/src/library/base/R/merge.R R-2.4.0/src/library/base/R/merge.R
--- R-2.4.0.old/src/library/base/R/merge.R 2006-09-04 09:41:13.000000000 -0500
+++ R-2.4.0/src/library/base/R/merge.R 2006-10-28 14:35:54.000000000 -0500
@@ -28,7 +28,6 @@ merge.data.frame <-
}
nx <- nrow(x <- as.data.frame(x)); ny <- nrow(y <- as.data.frame(y))
- if (nx == 0 || ny == 0) stop("no rows to match")
by.x <- fix.by(by.x, x)
by.y <- fix.by(by.y, y)
if((l.b <- length(by.x)) != length(by.y))
@@ -44,7 +43,7 @@ merge.data.frame <-
cnm <- nm.y %in% nm
names(y)[cnm] <- paste(nm.y[cnm], suffixes[2], sep="")
}
- ij <- expand.grid(1:nx, 1:ny)
+ ij <- expand.grid(seq_len(nx), seq_len(ny))
res <- cbind(x[ij[,1], , drop = FALSE], y[ij[,2], , drop = FALSE])
}
else {
@@ -56,8 +55,8 @@ merge.data.frame <-
y <- cbind(Row.names = I(row.names(y)), y)
by.y <- by.y + 1
}
- row.names(x) <- 1:nx
- row.names(y) <- 1:ny
+ row.names(x) <- seq_len(nx)
+ row.names(y) <- seq_len(ny)
## create keys from 'by' columns:
if(l.b == 1) { # (be faster)
bx <- x[, by.x]; if(is.factor(bx)) bx <- as.character(bx)
@@ -68,17 +67,18 @@ merge.data.frame <-
bx <- x[, by.x, drop=FALSE]; by <- y[, by.y, drop=FALSE]
names(bx) <- names(by) <- paste("V", 1:ncol(bx), sep="")
bz <- do.call("paste", c(rbind(bx, by), sep = "\r"))
- bx <- bz[1:nx]
- by <- bz[nx + (1:ny)]
+ bx <- bz[seq_len(nx)]
+ by <- bz[nx + seq_len(ny)]
}
comm <- match(bx, by, 0)
bxy <- bx[comm > 0] # the keys which are in both
xinds <- match(bx, bxy, 0)
yinds <- match(by, bxy, 0)
- ## R-only solution {when !all.x && !all.y} :
- ## o <- outer(xinds, yinds, function(x, y) (x > 0) & x==y)
- ## m <- list(xi = row(o)[o], yi = col(o)[o])
- m <- .Internal(merge(xinds, yinds, all.x, all.y))
+ if(nx > 0 && ny > 0)
+ m <- .Internal(merge(xinds, yinds, all.x, all.y))
+ else
+ m <- list(xi=integer(0), yi=integer(0),
+ x.alone=seq_len(nx), y.alone=seq_len(ny))
nm <- nm.x <- names(x)[-by.x]
nm.by <- names(x)[by.x]
nm.y <- names(y)[-by.y]
diff -urp R-2.4.0.old/src/library/base/R/namespace.R R-2.4.0/src/library/base/R/namespace.R
--- R-2.4.0.old/src/library/base/R/namespace.R 2006-09-22 21:05:06.000000000 -0500
+++ R-2.4.0/src/library/base/R/namespace.R 2006-10-28 14:35:54.000000000 -0500
@@ -657,7 +657,7 @@ namespaceImport <- function(self, ...) {
namespaceImportFrom(self, asNamespace(ns))
}
-namespaceImportFrom <- function(self, ns, vars, generics) {
+namespaceImportFrom <- function(self, ns, vars, generics, packages) {
addImports <- function(ns, from, what) {
imp <- structure(list(what), names = getNamespaceName(from))
imports <- getNamespaceImports(ns)
@@ -726,7 +726,8 @@ namespaceImportFrom <- function(self, ns
delete <- c(delete, ii)
if(!missing(generics)) {
genName <- generics[[i]]
- fdef <- methods:::getGeneric(genName, where = impenv)
+ fdef <- methods:::getGeneric(genName,
+ where = impenv, package = packages[[i]])
if(is.null(fdef))
warning(gettextf(
"Found methods to import for function \"%s\" but not the generic itself",
@@ -784,7 +785,7 @@ namespaceImportMethods <- function(self,
methods:::is(get(g, envir = ns), "genericFunction"))
allVars <- c(allVars, g)
}
- namespaceImportFrom(self, asNamespace(ns), allVars, allFuns)
+ namespaceImportFrom(self, asNamespace(ns), allVars, allFuns, packages)
}
importIntoEnv <- function(impenv, impnames, expenv, expnames) {
diff -urp R-2.4.0.old/src/library/base/R/stop.R R-2.4.0/src/library/base/R/stop.R
--- R-2.4.0.old/src/library/base/R/stop.R 2006-09-04 09:41:13.000000000 -0500
+++ R-2.4.0/src/library/base/R/stop.R 2006-10-28 14:35:54.000000000 -0500
@@ -45,7 +45,7 @@ warning <- function(..., call. = TRUE, i
call = conditionCall(cond)
withRestarts({
.Internal(.signalCondition(cond, message, call))
- .Internal(.dfltStop(message, call))
+ .Internal(.dfltWarn(message, call))
}, muffleWarning = function() NULL) #**** allow simpler form??
invisible(message)
}
diff -urp R-2.4.0.old/src/library/graphics/man/plotdefault.Rd R-2.4.0/src/library/graphics/man/plotdefault.Rd
--- R-2.4.0.old/src/library/graphics/man/plotdefault.Rd 2006-05-23 21:05:04.000000000 -0500
+++ R-2.4.0/src/library/graphics/man/plotdefault.Rd 2006-10-28 14:35:51.000000000 -0500
@@ -24,7 +24,7 @@
\code{"s"} and \code{"S"} for stair steps and
\code{"h"} for histogram-like vertical lines. Finally,
\code{"n"} does not produce any points or lines.}
- \item{xlim}{the x limits (x1,x2) of the plot. Note that \code{x1 > x2}
+ \item{xlim}{the x limits (x1, x2) of the plot. Note that \code{x1 > x2}
is allowed and leads to a \dQuote{reversed axis}.}
\item{ylim}{the y limits of the plot.}
\item{log}{a character string which contains \code{"x"} if the x axis
diff -urp R-2.4.0.old/src/library/graphics/man/plot.window.Rd R-2.4.0/src/library/graphics/man/plot.window.Rd
--- R-2.4.0.old/src/library/graphics/man/plot.window.Rd 2006-09-04 09:41:01.000000000 -0500
+++ R-2.4.0/src/library/graphics/man/plot.window.Rd 2006-10-28 14:35:51.000000000 -0500
@@ -12,8 +12,8 @@
plot.window(xlim, ylim, log = "", asp = NA, \dots)
}
\arguments{
- \item{xlim, ylim}{numeric of length 2, giving the x and y coordinates
- ranges.}
+ \item{xlim, ylim}{numeric vectors of length 2, giving the x and y
+ coordinates ranges.}
\item{log}{character; indicating which axes should be in log scale.}
\item{asp}{numeric, giving the \bold{asp}ect ratio y/x.}
\item{\dots}{further graphical parameters as in \code{\link{par}}.
@@ -30,6 +30,9 @@ plot.window(xlim, ylim, log = "", asp =
\code{asp > 1} can be used to produce more accurate maps when using
latitude and longitude.
+ To reverse an axis, use \code{xlim} or \code{ylim} of the form
+ \code{c(hi, lo)}.
+
The function attempts to produce a plausible set of scales if one or
both of \code{xlim} and \code{ylim} is of length one or the two values
given are identical, but it is better to avoid that case.
diff -urp R-2.4.0.old/src/library/graphics/man/stripchart.Rd R-2.4.0/src/library/graphics/man/stripchart.Rd
--- R-2.4.0.old/src/library/graphics/man/stripchart.Rd 2006-09-12 21:05:02.000000000 -0500
+++ R-2.4.0/src/library/graphics/man/stripchart.Rd 2006-10-30 10:45:46.000000000 -0600
@@ -18,7 +18,7 @@ stripchart(x, method = "overplot", jitte
can be specified as a single numeric vector, or as list of numeric
vectors, each corresponding to a component plot. Alternatively a
symbolic specification of the form \code{x ~ g} can be given,
- indicating the the observations in the vector \code{x} are to be
+ indicating the observations in the vector \code{x} are to be
grouped according to the levels of the factor \code{g}. \code{NA}s
are allowed in the data.}
\item{method}{the method to be used to separate coincident points.
diff -urp R-2.4.0.old/src/library/graphics/man/symbols.Rd R-2.4.0/src/library/graphics/man/symbols.Rd
--- R-2.4.0.old/src/library/graphics/man/symbols.Rd 2006-09-04 09:41:01.000000000 -0500
+++ R-2.4.0/src/library/graphics/man/symbols.Rd 2006-10-30 10:45:46.000000000 -0600
@@ -72,7 +72,7 @@ symbols(x, y = NULL, circles, squares, r
to zero.
Argument \code{inches} controls the sizes of the symbols. If
- \code{TRUE} (the default), the the symbols are scaled so that the
+ \code{TRUE} (the default), the symbols are scaled so that the
largest dimension of any symbol is one inch. If a positive number is
given the symbols are scaled to make largest dimension this size in
inches (so \code{TRUE} and \code{1} are equivalent). If \code{inches}
diff -urp R-2.4.0.old/src/library/graphics/R/datetime.R R-2.4.0/src/library/graphics/R/datetime.R
--- R-2.4.0.old/src/library/graphics/R/datetime.R 2006-09-04 09:41:00.000000000 -0500
+++ R-2.4.0/src/library/graphics/R/datetime.R 2006-10-28 14:35:50.000000000 -0500
@@ -23,13 +23,13 @@ axis.POSIXct <- function(side, x, at, fo
if(missing(format)) format <- "%a"
} else { # days, up to a couple of months
sc <- 60*60*24
- if(missing(format)) format <- "%b %d"
}
if(d < 60*60*24*50) {
zz <- pretty(z/sc)
z <- zz*sc
class(z) <- c("POSIXt", "POSIXct")
if(sc == 60*60*24) z <- as.POSIXct(round(z, "days"))
+ if(missing(format)) format <- "%b %d"
} else if(d < 1.1*60*60*24*365) { # months
class(z) <- c("POSIXt", "POSIXct")
zz <- as.POSIXlt(z)
diff -urp R-2.4.0.old/src/library/graphics/R/dotchart.R R-2.4.0/src/library/graphics/R/dotchart.R
--- R-2.4.0.old/src/library/graphics/R/dotchart.R 2006-09-12 21:05:02.000000000 -0500
+++ R-2.4.0/src/library/graphics/R/dotchart.R 2006-10-28 14:35:50.000000000 -0500
@@ -5,7 +5,9 @@ function(x, labels = NULL, groups = NULL
xlim = range(x[is.finite(x)]),
main = NULL, xlab = NULL, ylab = NULL, ...)
{
- opar <- par("mai", "cex", "yaxs")
+ ## opar <- par(no.readonly=TRUE) ## slightly more efficient:
+ opar <- par("cex", "yaxs", "mai", ## needed too:
+ "mar", "usr", "xaxp", "yaxp")
on.exit(par(opar))
par(cex = cex, yaxs = "i")
diff -urp R-2.4.0.old/src/library/graphics/R/mosaicplot.R R-2.4.0/src/library/graphics/R/mosaicplot.R
--- R-2.4.0.old/src/library/graphics/R/mosaicplot.R 2006-09-04 09:41:00.000000000 -0500
+++ R-2.4.0/src/library/graphics/R/mosaicplot.R 2006-10-28 14:35:51.000000000 -0500
@@ -12,6 +12,9 @@ mosaicplot <- function(x, ...) UseMethod
### Changes by W. Fischer and U. Ligges:
## - Deparsing x in for main title. New arguments: sub, las, cex.axis
## - made to work by BDR
+### Changes by John W. Emerson (JWE):
+## - Fixed xlab and ylab to reflect changes in variables and/or
+## orientation (e.g. use of sort and dir options).
mosaicplot.default <-
function(x, main = deparse(substitute(x)), sub = NULL, xlab = NULL,
@@ -215,11 +218,13 @@ function(x, main = deparse(substitute(x)
as.numeric(cut(residuals, breaks)))
}
- ## The next four may all be NULL:
- label <- dimnames(x)
- nam.dn <- names(label)
- if(is.null(xlab)) xlab <- nam.dn[1]
- if(is.null(ylab)) ylab <- nam.dn[2]
+ ##############################################################
+ ## The next four may all be NULL: ### MOVED by JWE to below.
+ ## label <- dimnames(x)
+ ## nam.dn <- names(label)
+ ## if(is.null(xlab)) xlab <- nam.dn[1]
+ ## if(is.null(ylab)) ylab <- nam.dn[2]
+ ##############################################################
## Initialize spacing.
if(is.null(off))
@@ -242,6 +247,24 @@ function(x, main = deparse(substitute(x)
label <- label[sort]
}
+ ## #################################################################
+ ## MOVED and modified by JWE, from above, 10/16/2006 to fix dir= and
+ ## sort= bug with respect to xlab= and ylab= options.
+
+ ## The next four may all be NULL:
+ label <- dimnames(x)
+ nam.dn <- names(label)
+ ## Here, we need to identify the first "h" and first "v" splits, and
+ ## use their names for xlab= and ylab=, if they are NULL.
+
+ if(is.null(xlab) && any(dir == "v"))
+ xlab <- nam.dn[min(which(dir == "v"))]
+ if(is.null(ylab) && any(dir == "h"))
+ ylab <- nam.dn[min(which(dir == "h"))]
+
+ ## END MODIFICATIONS by JWE
+ ## #################################################################
+
ncolors <- length(tabulate(Ind[,dimd]))
if(!extended && ((is.null(color) || length(color) != ncolors))) {
color <-
@@ -370,3 +393,5 @@ function(formula, data = NULL, ...,
mosaicplot(table(mf), main = main, ...)
}
}
+
+
diff -urp R-2.4.0.old/src/library/graphics/R/rect.R R-2.4.0/src/library/graphics/R/rect.R
--- R-2.4.0.old/src/library/graphics/R/rect.R 2006-04-09 17:19:00.000000000 -0500
+++ R-2.4.0/src/library/graphics/R/rect.R 2006-10-28 14:35:50.000000000 -0500
@@ -5,7 +5,7 @@ rect <-
if (is.numeric(density) && all(is.na(density) | density < 0))
density <- NULL
if (!is.null(density) && !is.null(angle)) {
- if (is.logical(border)) {
+ if (is.logical(border) && !is.na(border)) {
if (border) border <- col
else border <- NA
}
diff -urp R-2.4.0.old/src/library/grDevices/man/palettes.Rd R-2.4.0/src/library/grDevices/man/palettes.Rd
--- R-2.4.0.old/src/library/grDevices/man/palettes.Rd 2006-04-09 17:19:30.000000000 -0500
+++ R-2.4.0/src/library/grDevices/man/palettes.Rd 2006-10-28 14:35:56.000000000 -0500
@@ -9,11 +9,12 @@
Create a vector of \code{n} \dQuote{contiguous} colors.
}
\usage{
-rainbow(n, s = 1, v = 1, start = 0, end = max(1,n - 1)/n, gamma = 1)
-heat.colors(n)
-terrain.colors(n)
-topo.colors(n)
-cm.colors(n)
+rainbow(n, s = 1, v = 1, start = 0, end = max(1,n - 1)/n,
+ gamma = 1, alpha = 1)
+heat.colors(n, alpha = 1)
+terrain.colors(n, alpha = 1)
+topo.colors(n, alpha = 1)
+cm.colors(n, alpha = 1)
}
\arguments{
\item{n}{the number of colors (\eqn{\ge 1}{>= 1}) to be in the
@@ -25,6 +26,8 @@ cm.colors(n)
\item{end}{the (corrected) hue in [0,1] at which the rainbow ends.}
\item{gamma}{the gamma correction, see argument \code{gamma} in
\code{\link{hsv}}.}
+ \item{alpha}{the alpha transparency, a number in [0,1], see argument
+ \code{alpha} in \code{\link{hsv}}.}
}
\details{
Conceptually, all of these functions actually use (parts of) a line
diff -urp R-2.4.0.old/src/library/grDevices/man/windows/windows.Rd R-2.4.0/src/library/grDevices/man/windows/windows.Rd
--- R-2.4.0.old/src/library/grDevices/man/windows/windows.Rd 2006-04-09 17:19:30.000000000 -0500
+++ R-2.4.0/src/library/grDevices/man/windows/windows.Rd 2006-10-28 14:35:56.000000000 -0500
@@ -34,8 +34,9 @@ win.print(width = 7, height = 7, pointsi
\arguments{
\item{width, height}{the (nominal) width and height of the canvas of
the plotting window in inches.}
- \item{pointsize}{the default pointsize of plotted text. The allowed
- range is \code{[6, 48]}: values outside that range are reset to 12.}
+ \item{pointsize}{the default pointsize of plotted text. Values are
+ rounded to the nearest integer: values less than or equal to zero
+ are reset to 12.}
\item{record}{logical: sets the initial state of the flag for
recording plots.}
\item{rescale}{controls the action for resizing plots.}
diff -urp R-2.4.0.old/src/library/grDevices/R/colorstuff.R R-2.4.0/src/library/grDevices/R/colorstuff.R
--- R-2.4.0.old/src/library/grDevices/R/colorstuff.R 2006-09-04 09:41:22.000000000 -0500
+++ R-2.4.0/src/library/grDevices/R/colorstuff.R 2006-10-28 14:35:55.000000000 -0500
@@ -7,19 +7,17 @@ col2rgb <- function(col, alpha=FALSE) {
result
}
+## FIXME: gray() should also allow alpha; ditto for gray.colors() below
gray <- function(level) .Internal(gray(level))
grey <- gray
rgb <- function(red, green, blue, alpha, names = NULL, maxColorValue = 1)
{
- if (missing(alpha)) {
- alphaspec <- FALSE
- alpha <- maxColorValue
- } else {
- alphaspec <- TRUE
- }
+ alphaspec <- !missing(alpha)
+ if(!alphaspec)
+ alpha <- maxColorValue
## in the first case, (r,g,b) are (coerced to) integer, otherwise
- ## double.
+ ## double :
if(maxColorValue == 255)
result <- .Internal(rgb256(red, green, blue, alpha, names))
else
@@ -30,14 +28,9 @@ rgb <- function(red, green, blue, alpha,
else result
}
-hsv <- function(h=1, s=1, v=1, gamma=1, alpha)
+hsv <- function(h=1, s=1, v=1, gamma = 1, alpha = 1)
{
- if (missing(alpha)) {
- alphaspec <- FALSE
- alpha <- 1
- } else {
- alphaspec <- TRUE
- }
+ alphaspec <- !missing(alpha)
result <- .Internal(hsv(h, s, v, gamma, alpha))
## If alpha not specified only return #RRGGBB
if (!alphaspec)
@@ -46,14 +39,9 @@ hsv <- function(h=1, s=1, v=1, gamma=1,
}
hcl <-
-function (h = 0, c = 35, l = 85, alpha, fixup = TRUE)
+function (h = 0, c = 35, l = 85, alpha = 1, fixup = TRUE)
{
- if (missing(alpha)) {
- alphaspec <- FALSE
- alpha <- 1
- } else {
- alphaspec <- TRUE
- }
+ alphaspec <- !missing(alpha)
result <- .Internal(hcl(h, c, l, alpha, fixup))
if (!alphaspec)
structure(substr(result, 1, 7), names=names(result))
@@ -90,30 +78,30 @@ palette <- function(value)
## A quick little ''rainbow'' function -- improved by MM
## doc in ../man/palettes.Rd
rainbow <-
- function (n, s = 1, v = 1, start = 0, end = max(1,n - 1)/n, gamma = 1)
+ function (n, s = 1, v = 1, start = 0, end = max(1,n - 1)/n, gamma = 1, alpha = 1)
{
if ((n <- as.integer(n[1])) > 0) {
if(start == end || any(c(start,end) < 0)|| any(c(start,end) > 1))
stop("'start' and 'end' must be distinct and in [0, 1].")
hsv(h = seq.int(start, ifelse(start > end, 1, 0) + end, length= n) %% 1,
- s, v, gamma)
+ s, v, gamma, alpha)
} else character(0)
}
-topo.colors <- function (n)
+topo.colors <- function (n, alpha = 1)
{
if ((n <- as.integer(n[1])) > 0) {
j <- n %/% 3
k <- n %/% 3
i <- n - j - k
- c(if(i > 0) hsv(h= seq.int(from = 43/60, to = 31/60, length = i)),
- if(j > 0) hsv(h= seq.int(from = 23/60, to = 11/60, length = j)),
- if(k > 0) hsv(h= seq.int(from = 10/60, to = 6/60, length = k),
- s= seq.int(from = 1, to = 0.3, length = k), v = 1))
+ c(if(i > 0) hsv(h= seq.int(from= 43/60, to= 31/60, length = i), alpha=alpha),
+ if(j > 0) hsv(h= seq.int(from= 23/60, to= 11/60, length = j), alpha=alpha),
+ if(k > 0) hsv(h= seq.int(from= 10/60, to= 6/60, length = k), alpha=alpha,
+ s= seq.int(from= 1, to= 0.3, length = k), v = 1))
} else character(0)
}
-terrain.colors <- function (n)
+terrain.colors <- function (n, alpha = 1)
{
if ((n <- as.integer(n[1])) > 0) {
k <- n%/%2
@@ -122,26 +110,26 @@ terrain.colors <- function (n)
v <- c(0.65, 0.9, 0.95)
c(hsv(h = seq.int(h[1], h[2], length = k),
s = seq.int(s[1], s[2], length = k),
- v = seq.int(v[1], v[2], length = k)),
+ v = seq.int(v[1], v[2], length = k), alpha = alpha),
hsv(h = seq.int(h[2], h[3], length = n - k + 1)[-1],
s = seq.int(s[2], s[3], length = n - k + 1)[-1],
- v = seq.int(v[2], v[3], length = n - k + 1)[-1]))
+ v = seq.int(v[2], v[3], length = n - k + 1)[-1], alpha = alpha))
} else character(0)
}
-heat.colors <- function (n)
+heat.colors <- function (n, alpha = 1)
{
if ((n <- as.integer(n[1])) > 0) {
j <- n %/% 4
i <- n - j
- c(rainbow(i, start = 0, end = 1/6),
+ c(rainbow(i, start = 0, end = 1/6, alpha = alpha),
if (j > 0)
hsv(h = 1/6, s = seq.int(from= 1-1/(2*j), to= 1/(2*j), length = j),
- v = 1))
+ v = 1, alpha = alpha))
} else character(0)
}
-cm.colors <- function (n)
+cm.colors <- function (n, alpha = 1)
{
if ((n <- as.integer(n[1])) > 0) {
even.n <- n %% 2 == 0
@@ -149,13 +137,15 @@ cm.colors <- function (n)
l1 <- k + 1 - even.n
l2 <- n - k + even.n
c(if(l1 > 0)
- hsv(h = 6/12, s= seq.int(.5, ifelse(even.n,.5/k,0), length = l1), v = 1),
+ hsv(h = 6/12, s = seq.int(.5, ifelse(even.n,.5/k,0), length = l1),
+ v = 1, alpha = alpha),
if(l2 > 1)
- hsv(h = 10/12, s= seq.int(0, 0.5, length = l2)[-1], v = 1))
+ hsv(h = 10/12, s = seq.int(0, 0.5, length = l2)[-1],
+ v = 1, alpha = alpha))
} else character(0)
}
-gray.colors <-
+gray.colors <- ## FIXME: add 'alpha = 1'
function(n, start = 0.3, end = 0.9, gamma = 2.2)
gray(seq.int(from = start^gamma, to = end^gamma, length = n)^(1/gamma))
grey.colors <- gray.colors
diff -urp R-2.4.0.old/src/library/grDevices/src/devWindows.c R-2.4.0/src/library/grDevices/src/devWindows.c
--- R-2.4.0.old/src/library/grDevices/src/devWindows.c 2006-09-04 09:41:23.000000000 -0500
+++ R-2.4.0/src/library/grDevices/src/devWindows.c 2006-10-28 14:35:56.000000000 -0500
@@ -578,8 +578,7 @@ static char* translateFontFamily(char* f
/* 0 = plain text, 1 = bold */
/* 2 = oblique, 3 = bold-oblique */
-#define SMALLEST 2
-#define LARGEST 100
+#define SMALLEST 1
static void SetFont(char *family, int face, int size, double rot,
NewDevDesc *dd)
@@ -590,7 +589,6 @@ static void SetFont(char *family, int fa
if (face < 1 || face > fontnum)
face = 1;
if (size < SMALLEST) size = SMALLEST;
- if (size > LARGEST) size = LARGEST;
if (!xd->usefixed &&
(size != xd->fontsize || face != xd->fontface ||
rot != xd->fontangle || strcmp(family, xd->fontfamily))) {
@@ -2564,9 +2562,8 @@ Rboolean GADeviceDriver(NewDevDesc *dd,
/* Font will load at first use */
ps = pointsize;
- if (ps < 6 || ps > 48)
+ if (ps < 1)
ps = 12;
- ps = 2 * (ps / 2);
xd->fontface = -1;
xd->fontsize = -1;
xd->basefontsize = ps ;
Binary files R-2.4.0.old/src/library/grid/inst/doc/displaylist.pdf and R-2.4.0/src/library/grid/inst/doc/displaylist.pdf differ
Binary files R-2.4.0.old/src/library/grid/inst/doc/frame.pdf and R-2.4.0/src/library/grid/inst/doc/frame.pdf differ
Binary files R-2.4.0.old/src/library/grid/inst/doc/grid.pdf and R-2.4.0/src/library/grid/inst/doc/grid.pdf differ
Binary files R-2.4.0.old/src/library/grid/inst/doc/grobs.pdf and R-2.4.0/src/library/grid/inst/doc/grobs.pdf differ
Binary files R-2.4.0.old/src/library/grid/inst/doc/interactive.pdf and R-2.4.0/src/library/grid/inst/doc/interactive.pdf differ
Binary files R-2.4.0.old/src/library/grid/inst/doc/locndimn.pdf and R-2.4.0/src/library/grid/inst/doc/locndimn.pdf differ
Binary files R-2.4.0.old/src/library/grid/inst/doc/moveline.pdf and R-2.4.0/src/library/grid/inst/doc/moveline.pdf differ
Binary files R-2.4.0.old/src/library/grid/inst/doc/nonfinite.pdf and R-2.4.0/src/library/grid/inst/doc/nonfinite.pdf differ
Binary files R-2.4.0.old/src/library/grid/inst/doc/plotexample.pdf and R-2.4.0/src/library/grid/inst/doc/plotexample.pdf differ
Binary files R-2.4.0.old/src/library/grid/inst/doc/rotated.pdf and R-2.4.0/src/library/grid/inst/doc/rotated.pdf differ
Binary files R-2.4.0.old/src/library/grid/inst/doc/saveload.pdf and R-2.4.0/src/library/grid/inst/doc/saveload.pdf differ
Binary files R-2.4.0.old/src/library/grid/inst/doc/sharing.pdf and R-2.4.0/src/library/grid/inst/doc/sharing.pdf differ
Binary files R-2.4.0.old/src/library/grid/inst/doc/viewports.pdf and R-2.4.0/src/library/grid/inst/doc/viewports.pdf differ
diff -urp R-2.4.0.old/src/library/grid/man/viewport.Rd R-2.4.0/src/library/grid/man/viewport.Rd
--- R-2.4.0.old/src/library/grid/man/viewport.Rd 2006-04-09 17:19:12.000000000 -0500
+++ R-2.4.0/src/library/grid/man/viewport.Rd 2006-10-28 14:35:53.000000000 -0500
@@ -5,7 +5,7 @@
\alias{vpTree}
\title{Create a Grid Viewport}
\description{
- These functions create viewports, which describe a rectangular regions
+ These functions create viewports, which describe rectangular regions
on a graphics device and define a number of coordinate systems within
those regions.
}
diff -urp R-2.4.0.old/src/library/methods/man/MethodSupport.Rd R-2.4.0/src/library/methods/man/MethodSupport.Rd
--- R-2.4.0.old/src/library/methods/man/MethodSupport.Rd 2006-04-09 17:19:10.000000000 -0500
+++ R-2.4.0/src/library/methods/man/MethodSupport.Rd 2006-11-02 19:41:45.000000000 -0600
@@ -11,7 +11,7 @@
\usage{
getMethodsForDispatch(f, fdef)
-cacheMethod(f, sig, def, args, fdef)
+cacheMethod(f, sig, def, args, fdef, inherited = FALSE)
resetGeneric(f, fdef, mlist, where, deflt)
}
@@ -29,7 +29,8 @@ resetGeneric(f, fdef, mlist, where, defl
\item{\code{cacheMethod}:}{
Store the definition for this function and signature in the method
metadata for the function. Used to store extensions of coerce
- methods found through inheritance.
+ methods found through inheritance, and to cache methods with
+ \code{\link{callNextMethod}} information.
No persistent effect, since the method metadata is session-scope
only.
diff -urp R-2.4.0.old/src/library/methods/man/seemsS4Object.Rd R-2.4.0/src/library/methods/man/seemsS4Object.Rd
--- R-2.4.0.old/src/library/methods/man/seemsS4Object.Rd 2006-09-04 09:41:08.000000000 -0500
+++ R-2.4.0/src/library/methods/man/seemsS4Object.Rd 2006-11-02 19:41:45.000000000 -0600
@@ -2,8 +2,8 @@
\alias{seemsS4Object}
\title{Heuristic test for an object from an S4 class}
\description{
- Returns \code{TRUE} if \code{object} seems to have been generated from
- a formally defined (\dQuote{S4}) class.
+ Returns \code{TRUE} if \code{object} has been generated from
+ a formally defined (\dQuote{S4}) class. DEPRECATED: use isS4(object) instead.
}
\usage{
seemsS4Object(object)
@@ -13,9 +13,13 @@ seemsS4Object(object)
}
\details{
The \code{\link{class}} of the object is examined for the \code{"package"}
- attribute included when objects are generated from an S4 class.
+ attribute included when objects are generated from an S4 class. The
+ test in this function has been superseded by an internal bit set
+ when S4 objects are generated.
- This test can be fooled in at least two ways:
+ The \code{seemsS4Object} function is deprecated and will be removed.
+
+ The test can be fooled in at least two ways:
\enumerate{
\item It will give \code{TRUE} incorrectly if someone puts a
\code{"package"} string attribute on the class of an S3 object.
diff -urp R-2.4.0.old/src/library/methods/R/as.R R-2.4.0/src/library/methods/R/as.R
--- R-2.4.0.old/src/library/methods/R/as.R 2006-09-09 21:05:02.000000000 -0500
+++ R-2.4.0/src/library/methods/R/as.R 2006-11-02 19:41:45.000000000 -0600
@@ -25,6 +25,7 @@ as <-
fdef = coerceFun, mlist = coerceMethods)
if(is.null(asMethod)) {
canCache <- TRUE
+ inherited <- FALSE
if(is(object, Class)) {
ClassDef <- getClassDef(Class, where)
## use the ext information, computed or supplied
@@ -47,13 +48,17 @@ as <-
}
## if none of these applies, look for an inherited method
## but only on the from argument
- if(is.null(asMethod))
+ if(is.null(asMethod)) {
asMethod <- selectMethod("coerce", sig, TRUE,
c(from = TRUE, to = FALSE),
- fdef = coerceFun, mlist = coerceMethods)
+ fdef = coerceFun, mlist =
+ coerceMethods)
+ inherited <- TRUE
+ }
## cache in the coerce function's environment
if(canCache && !is.null(asMethod)) {
- cacheMethod("coerce", sig, asMethod, fdef = coerceFun)
+ cacheMethod("coerce", sig, asMethod, fdef = coerceFun,
+ inherited = inherited)
}
}
}
@@ -129,32 +134,36 @@ as <-
coerceMethods <- getMethodsForDispatch("coerce<-", coerceFun)
asMethod <- .quickCoerceSelect(thisClass, Class, coerceFun, coerceMethods)
if(is.null(asMethod)) {
- sig <- c(from=thisClass, to = Class)
- canCache <- TRUE
- asMethod <- selectMethod("coerce<-", sig, TRUE, FALSE, #optional, no inheritance
- fdef = coerceFun, mlist = coerceMethods)
- if(is.null(asMethod)) {
- if(is(object, Class)) {
- asMethod <- possibleExtends(thisClass, Class)
- if(identical(asMethod, TRUE)) {# trivial, probably identical classes
- class(value) <- class(object)
- return(value)
- }
- else {
- test <- asMethod@test
- asMethod <- asMethod@replace
- canCache <- (!is(test, "function")) || identical(body(test), TRUE)
- if(canCache) { ##the replace code is a bare function
- asMethod <- .asCoerceMethod(asMethod, sig, TRUE)
+ sig <- c(from=thisClass, to = Class)
+ canCache <- TRUE
+ inherited <- FALSE
+ asMethod <- selectMethod("coerce<-", sig, TRUE, FALSE, #optional, no inheritance
+ fdef = coerceFun, mlist = coerceMethods)
+ if(is.null(asMethod)) {
+ if(is(object, Class)) {
+ asMethod <- possibleExtends(thisClass, Class)
+ if(identical(asMethod, TRUE)) {# trivial, probably identical classes
+ class(value) <- class(object)
+ return(value)
}
- }
- }
- else
- asMethod <- selectMethod("coerce<-", sig, TRUE, c(from = TRUE, to = FALSE))
- }
+ else {
+ test <- asMethod@test
+ asMethod <- asMethod@replace
+ canCache <- (!is(test, "function")) || identical(body(test), TRUE)
+ if(canCache) { ##the replace code is a bare function
+ asMethod <- .asCoerceMethod(asMethod, sig, TRUE)
+ }
+ }
+ }
+ else { # search for inherited method
+ asMethod <- selectMethod("coerce<-", sig, TRUE, c(from = TRUE, to = FALSE))
+ inherited <- TRUE
+ }
+ }
## cache for next call
if(canCache && !is.null(asMethod))
- cacheMethod("coerce<-", sig, asMethod, fdef = coerceFun)
+ cacheMethod("coerce<-", sig, asMethod, fdef = coerceFun,
+ inherited = inherited)
}
if(is.null(asMethod))
stop(gettextf("no method or default for as() replacement of \"%s\" with Class=\"%s\"", thisClass, Class), domain = NA)
diff -urp R-2.4.0.old/src/library/methods/R/is.R R-2.4.0/src/library/methods/R/is.R
--- R-2.4.0.old/src/library/methods/R/is.R 2006-09-17 21:05:04.000000000 -0500
+++ R-2.4.0/src/library/methods/R/is.R 2006-10-28 14:35:53.000000000 -0500
@@ -116,33 +116,25 @@ setIs <-
obj <- extensionObject
## revise the superclass/subclass info in the stored class definition
.validExtends(class1, class2, classDef, classDef2, obj@simple)
- if(!classDef@sealed) {
- where1 <- findClass(class1, where)[[1]]
- if(!bindingIsLocked(m1, where1)) {
- ## the direct contains information
- elNamed(classDef@contains, class2) <- obj
- if(doComplete)
- classDef@contains <- completeExtends(classDef, class2, obj, where = where)
- assignClassDef(class1, classDef, where1)
- }
- }
- if(!classDef2@sealed) {
- where2 <- findClass(classDef2)
- if(length(where2) > 0) {
- where2 <- where2[[1]]
- if(!bindingIsLocked(m2, where2)) {
- elNamed(classDef2@subclasses, class1) <- obj
- if(doComplete)
- classDef2@subclasses <- completeSubclasses(classDef2, class1, obj, where)
- assignClassDef(class2, classDef2, where2)
- }
- .removePreviousCoerce(class1, class2, where, prevIs)
- }
- else
- stop(gettextf("Unable to find package environment for class \"%s\" to revise subclass information", class2))
+ where2 <- findClass(classDef2)
+ if(length(where2) > 0) {
+ where2 <- where2[[1]]
+ elNamed(classDef2@subclasses, class1) <- obj
+ if(doComplete)
+ classDef2@subclasses <- completeSubclasses(classDef2, class1, obj, where)
+ assignClassDef(class2, classDef2, where2, TRUE)
+ .removePreviousCoerce(class1, class2, where, prevIs)
}
+ else
+ stop(gettextf("Unable to find package environment for class \"%s\" to revise subclass information", class2))
+ where1 <- findClass(class1, where)[[1]]
+ ## the direct contains information
+ elNamed(classDef@contains, class2) <- obj
+ if(doComplete)
+ classDef@contains <- completeExtends(classDef, class2, obj, where = where)
+ assignClassDef(class1, classDef, where1, TRUE)
invisible(classDef)
-}
+ }
.validExtends <- function(class1, class2, classDef1, classDef2, slotTests) {
.msg <- function(class1, class2) gettextf("class \"%s\" cannot extend class \"%s\"", class1, class2)
diff -urp R-2.4.0.old/src/library/methods/R/Methods.R R-2.4.0/src/library/methods/R/Methods.R
--- R-2.4.0.old/src/library/methods/R/Methods.R 2006-09-17 21:05:04.000000000 -0500
+++ R-2.4.0/src/library/methods/R/Methods.R 2006-11-02 19:41:45.000000000 -0600
@@ -81,6 +81,16 @@ setGeneric <-
}
if(doUncache)
.uncacheGeneric(name, oldDef)
+ groups = fdef@group
+ for(group in groups) { # add as member of group generic(s) if not there
+ gdef <- getGeneric(group)
+ if(is(gdef, "groupGenericFunction") &&
+ is.na(match(fdef@generic, as.character(gdef@groupMembers)))) {
+ gwhere <- .genEnv(group, where)
+ gdef@groupMembers <- c(gdef@groupMembers, list(fdef@generic))
+ assign(group, gdef, gwhere)
+ }
+ }
assign(name, fdef, where)
.cacheGeneric(name, fdef)
if(!.UsingMethodsTables() &&
@@ -265,10 +275,18 @@ getMethodsForDispatch <- function(f, fde
cacheMethod <-
## cache the given definition in the method metadata for f
## Support function: DON'T USE DIRECTLY (does no checking)
- function(f, sig, def, args = names(sig), fdef) {
+ function(f, sig, def, args = names(sig), fdef, inherited = FALSE) {
ev <- environment(fdef)
- if(.UsingMethodsTables())
- .cacheMethodInTable(fdef, sig, def, .getMethodsTable(fdef, ev))
+ if(.UsingMethodsTables()) {
+ .cacheMethodInTable(fdef, sig, def,
+ .getMethodsTable(fdef, ev, inherited = inherited))
+ ## if this is not an inherited method, update the inherited table as well
+ ## TODO: in this case, should uncache inherited methods, though the callin
+ ## function will normally have done this.
+ if(!inherited)
+ .cacheMethodInTable(fdef, sig, def,
+ .getMethodsTable(fdef, ev, inherited = TRUE))
+ }
else {
methods <- get(".Methods", envir = ev)
methods <- insertMethod(methods, sig, args, def, TRUE)
@@ -280,6 +298,9 @@ cacheMethod <-
}
}
+.removeCachedMethod <- function(f, sig, fdef = getGeneric(f))
+ cacheMethod(f, sig, NULL, names(sig), fdef)
+
setMethod <-
## Define a method for the specified combination of generic function and signature.
diff -urp R-2.4.0.old/src/library/methods/R/methodsTable.R R-2.4.0/src/library/methods/R/methodsTable.R
--- R-2.4.0.old/src/library/methods/R/methodsTable.R 2006-09-13 21:05:02.000000000 -0500
+++ R-2.4.0/src/library/methods/R/methodsTable.R 2006-11-02 19:41:45.000000000 -0600
@@ -1,5 +1,3 @@
-options(error=traceback, warn = 1)
-
### merge version called from namespace imports code. Hope to avoid using generic
.mergeMethodsTable2 <- function(table, newtable, envir, metaname) {
old <- objects(table, all=TRUE)
@@ -138,7 +136,7 @@ options(error=traceback, warn = 1)
## also Called from cacheMethod (from as(),
## as<-())
fenv <- environment(fdef)
- if(!exists(".AllMTable", envir = fenv, inherits = TRUE))
+ if(!exists(".AllMTable", envir = fenv, inherits = FALSE))
.setupMethodsTables(fdef)
sig <- .matchSigLength(sig, fdef, fenv, TRUE)
label <- .sigLabel(sig)
@@ -407,15 +405,31 @@ options(error=traceback, warn = 1)
mlist <- generic@default
else
mlist <- get(".Methods", envir = env, inherits = FALSE)
- if(initialize || !exists(".SigLength", envir = env, inherits = FALSE))
- assign(".SigLength", 1, envir = env)
- ## check that groups of generics agree on .SigLength; otherwise
- ## labels won't match
+ if(initialize || !exists(".SigLength", envir = env, inherits = FALSE)) {
+ nsig <- 1
+ ## check that groups of generics agree on .SigLength; otherwise
+ ## labels won't match
+ for(gp in generic@group) {
+ gpDef <- getGeneric(gp)
+ if(is(gpDef, "genericFunction")) {
+ .getMethodsTable(gpDef) # force initialization
+ nsig <- max(nsig, get(".SigLength", envir = environment(gpDef)))
+ }
+ }
+ assign(".SigLength", nsig, envir = env)
+ }
argSyms <- lapply(generic@signature, as.name)
assign(".SigArgs", argSyms, envir = env)
mtable <- .mlistAddToTable(generic, mlist)
assign(".MTable", mtable, envir = env)
.resetInheritedMethods(env, mtable)
+ if(is(generic, "groupGenericFunction")) {
+ for(gp in generic@groupMembers) {
+ gpDef <- getGeneric(gp)
+ if(is(gpDef, "genericFunction"))
+ .getMethodsTable(gpDef) # force initialization w. group methods
+ }
+ }
}
.updateMethodsInTable <- function(generic, where, attach) {
diff -urp R-2.4.0.old/src/library/methods/R/NextMethod.R R-2.4.0/src/library/methods/R/NextMethod.R
--- R-2.4.0.old/src/library/methods/R/NextMethod.R 2006-09-17 21:05:04.000000000 -0500
+++ R-2.4.0/src/library/methods/R/NextMethod.R 2006-11-02 19:41:45.000000000 -0600
@@ -96,7 +96,7 @@ callNextMethod <- function(...) {
method <- addNextMethod(method, f, envir=methodEnv)
## cache the method with the nextMethod included,
## so later calls will load this information.
- cacheMethod(f, method@target, method, fdef = getGeneric(f))
+ cacheMethod(f, method@target, method, fdef = getGeneric(f), inherited = TRUE)
}
nextMethod <- method@nextMethod
assign(".nextMethod", nextMethod, envir = callEnv)
diff -urp R-2.4.0.old/src/library/methods/R/RClassUtils.R R-2.4.0/src/library/methods/R/RClassUtils.R
--- R-2.4.0.old/src/library/methods/R/RClassUtils.R 2006-09-17 21:05:04.000000000 -0500
+++ R-2.4.0/src/library/methods/R/RClassUtils.R 2006-10-28 14:35:53.000000000 -0500
@@ -412,7 +412,7 @@ isVirtualClass <-
assignClassDef <-
## assign the definition of the class to the specially named object
- function(Class, def, where = .GlobalEnv) {
+ function(Class, def, where = .GlobalEnv, force = FALSE) {
if(!is(def,"classRepresentation"))
stop(gettextf("trying to assign an object of class \"%s\" as the definition of class \"%s\": must supply a \"classRepresentation\" object",
class(def), Class), domain = NA)
@@ -420,8 +420,18 @@ assignClassDef <-
if(!.identC(Class, clName))
stop(gettextf("assigning as \"%s\" a class representation with internal name \"%s\"",
Class, def@className), domain = NA)
+ where <- as.environment(where)
+ mname <- classMetaName(Class)
+ if(exists(mname, envir = where, inherits = FALSE) && bindingIsLocked(mname, where)) {
+ if(force)
+ .assignOverBinding(mname, def, where, FALSE)
+ else
+ stop(gettextf("Class \"%s\" has a locked definition in package \"%s\"",
+ Class, getPackageName(where)))
+ }
+ else
+ assign(mname, def, where)
.cacheClass(clName, def)
- assign(classMetaName(Class), def, where)
}
@@ -1445,13 +1455,13 @@ substituteFunctionArgs <- function(def,
## bootstrap version: all classes and methods must be in the version of the methods
## package being built in the toplevel environment: MUST avoid require("methods") !
-.requirePackage <- function(package)
+.requirePackage <- function(package, mustFind = TRUE)
topenv(parent.frame())
.PackageEnvironments <- new.env(hash=TRUE) # caching for required packages
## real version of .requirePackage
-..requirePackage <- function(package) {
+..requirePackage <- function(package, mustFind = TRUE) {
value <- package
if(is.character(package)) {
if(package %in% loadedNamespaces())
@@ -1473,9 +1483,13 @@ substituteFunctionArgs <- function(def,
if(exists(".packageName", topEnv, inherits=TRUE) &&
.identC(package, get(".packageName", topEnv)))
return(topEnv) # kludge for source'ing package code
- if(!require(package, character.only = TRUE))
- stop(gettextf("unable to find required package \"%s\"", package),
- domain = NA)
+ if(!require(package, character.only = TRUE)) {
+ if(mustFind)
+ stop(gettextf("unable to find required package \"%s\"", package),
+ domain = NA)
+ else
+ return(NULL)
+ }
value <- .asEnvironmentPackage(package)
assign(package, value, envir = .PackageEnvironments)
value
@@ -1662,3 +1676,27 @@ substituteFunctionArgs <- function(def,
}
}
+.removeSubClass <- function(class, subclass, where) {
+ mname <- classMetaName(class)
+ where <- as.environment(where)
+ if(exists(mname, envir = where, inherits = FALSE)) {
+ cdef <- get(mname, envir = where)
+ subclasses <- cdef@subclasses
+ ii <- match(subclass, names(subclasses), 0)
+ ## the subclass may not be there, e.g., if an error occured in
+ ## setClass, or (in 2.4.0) if class is sealed
+ if(ii > 0) {
+ cdef@subclasses <- subclasses[-ii]
+ assign(mname, cdef, envir = where)
+ }
+ sig <- signature(from=subclass, to=class)
+ if(existsMethod("coerce", sig))
+ .removeCachedMethod("coerce", sig)
+ if(existsMethod("coerce<-", sig))
+ .removeCachedMethod("coerce<-", sig)
+ .uncacheClass(class, cdef)
+ }
+ else
+ warning(gettextf("No class \"%s\" found as expected in removing subclass \"%s\"",
+ class, subclass))
+}
diff -urp R-2.4.0.old/src/library/methods/R/RMethodUtils.R R-2.4.0/src/library/methods/R/RMethodUtils.R
--- R-2.4.0.old/src/library/methods/R/RMethodUtils.R 2006-09-17 21:05:04.000000000 -0500
+++ R-2.4.0/src/library/methods/R/RMethodUtils.R 2006-10-28 14:35:53.000000000 -0500
@@ -392,6 +392,7 @@ rematchDefinition <- function(definition
newCall <- as.call(newCall)
newBody <- substitute({.local <- DEF; NEWCALL},
list(DEF = definition, NEWCALL = newCall))
+ generic <- .copyMethodDefaults(generic, definition)
body(generic, envir = environment(definition)) <- newBody
generic
}
@@ -464,6 +465,12 @@ getGeneric <-
.cacheGeneric(f, value)
}
}
+ if(is.null(value) && nchar(package)>0 && !identical(package, "base")) {
+ env <- .requirePackage(package, FALSE)
+ if(is.environment(env))
+ value <- .Call("R_getGeneric", f, FALSE, env, package,
+ PACKAGE = "methods")
+ }
value
}
@@ -1375,3 +1382,25 @@ deletePrimMethods <- function(f, env) {
.primname <- function(object)
.Call("R_get_primname", object, PACKAGE = "base")
+
+.copyMethodDefaults <- function(generic, method) {
+ emptyDefault <- function(value) missing(value) || (is.name(value) && (nchar(as.character(value))>0))
+ fg <- formals(generic)
+ mg <- formals(method)
+ mgn <- names(mg)
+ changed <- FALSE
+ for(what in names(fg)) {
+ i <- match(what, mgn, 0)
+ if(i> 0) {
+ deflt <- mg[[i]]
+ if(!(emptyDefault(deflt) || identical(deflt, fg[[what]]))) {
+ fg[[what]] <- deflt
+ changed <- TRUE
+ }
+ }
+ }
+ if(changed)
+ formals(generic) <- fg
+ generic
+}
+
diff -urp R-2.4.0.old/src/library/methods/R/SClasses.R R-2.4.0/src/library/methods/R/SClasses.R
--- R-2.4.0.old/src/library/methods/R/SClasses.R 2006-09-17 21:05:04.000000000 -0500
+++ R-2.4.0/src/library/methods/R/SClasses.R 2006-10-28 14:35:53.000000000 -0500
@@ -309,6 +309,19 @@ removeClass <- function(Class, where =
"\") has defined subclasses that should also be removed: (",
paste(as.character(subclasses[found]), collapse = ", "), ")")
}
+ if(length(classDef@contains)>0) {
+ superclasses <- names(classDef@contains)
+ for(what in superclasses) {
+ superWhere <- findClass(what, classWhere)
+ if(length(superWhere)>0) {
+ superWhere <- superWhere[[1]]
+ .removeSubClass(what, Class, superWhere)
+ }
+ else
+ warning(gettextf("Couldn't find superclass \"%s\" to clean up when removing class \"%s\"",
+ what, Class))
+ }
+ }
.uncacheClass(Class, classDef)
.undefineMethod("initialize", Class, classWhere)
what <- classMetaName(Class)
Only in R-2.4.0/src/library/Recommended: lattice_0.14-12.tar.gz
Only in R-2.4.0.old/src/library/Recommended: lattice_0.14-9.tar.gz
Binary files R-2.4.0.old/src/library/Recommended/lattice.tgz and R-2.4.0/src/library/Recommended/lattice.tgz differ
Only in R-2.4.0.old/src/library/Recommended: mgcv_1.3-19.tar.gz
Only in R-2.4.0/src/library/Recommended: mgcv_1.3-20.tar.gz
Binary files R-2.4.0.old/src/library/Recommended/mgcv.tgz and R-2.4.0/src/library/Recommended/mgcv.tgz differ
diff -urp R-2.4.0.old/src/library/stats/man/lowess.Rd R-2.4.0/src/library/stats/man/lowess.Rd
--- R-2.4.0.old/src/library/stats/man/lowess.Rd 2006-04-09 17:19:48.000000000 -0500
+++ R-2.4.0/src/library/stats/man/lowess.Rd 2006-10-28 14:35:57.000000000 -0500
@@ -1,5 +1,10 @@
\name{lowess}
\title{Scatter Plot Smoothing}
+\description{
+ This function performs the computations for the
+ \emph{LOWESS} smoother which uses locally-weighted polynomial
+ regression (see the references).
+}
\usage{
lowess(x, y = NULL, f = 2/3, iter = 3,
delta = 0.01 * diff(range(xy$x[o])))
@@ -11,20 +16,40 @@ lowess(x, y = NULL, f = 2/3, iter = 3,
\item{f}{the smoother span. This gives the proportion of points in
the plot which influence the smooth at each value.
Larger values give more smoothness.}
- \item{iter}{the number of robustifying iterations which should be
+ \item{iter}{the number of \sQuote{robustifying} iterations which should be
performed.
Using smaller values of \code{iter} will make \code{lowess} run faster.}
- \item{delta}{values of \code{x} which lie within \code{delta}
- of each other are replaced by a single value in the output from
- \code{lowess}. Defaults to 1/100th of the range of \code{x}.}
+ \item{delta}{See Details. Defaults to 1/100th of the range of \code{x}.}
}
-\description{
- This function performs the computations for the
- \emph{LOWESS} smoother (see the reference below).
+\details{
+ \code{lowess} is defined by a complex algorithm, the Ratfor original
+ of which (by W. S. Cleveland) can be found in the \R sources as file
+ \file{src/appl/lowess.doc}. Normally a local linear polynomial fit is
+ used, but under some circumstances (see the file) a local constant fit
+ can be used. \sQuote{Local} is defined by the distance to the
+ \code{floor(f*n)}th nearest neighbour, and tricubic weighting is used
+ for \code{x} which fall within the neighbourhood.
+
+ The initial fit is done using weighted least squares. If
+ \code{iter > 0}, further weighted fits are done using the product of
+ the weights from the proximity of the \code{x} values and case weights
+ derived from the residuals at the previous iteration. Specifically,
+ the case weight is Tukey's biweight, with cutoff 6 times the MAD of the
+ residuals. (The current \R implementation differs from the original
+ in stopping iteration if the MAD is effectively zero since the
+ algorithm is highly unstable in that case.)
+
+ \code{delta} is used to speed up computation: instead of computing the
+ local polynomial fit at each data point it is not computed for points
+ within \code{delta} of the last computed point, and linear
+ interpolation is used to fill in the fitted values for the skipped
+ points.
+}
+\value{
\code{lowess} returns a list containing components
\code{x} and \code{y} which give the coordinates of the smooth.
- The smooth should be added to a plot of the original
- points with the function \code{lines}.
+ The smooth can be added to a plot of the original
+ points with the function \code{lines}: see the examples.
}
\references{
Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988)
diff -urp R-2.4.0.old/src/library/stats/man/prcomp.Rd R-2.4.0/src/library/stats/man/prcomp.Rd
--- R-2.4.0.old/src/library/stats/man/prcomp.Rd 2006-05-18 04:13:52.000000000 -0500
+++ R-2.4.0/src/library/stats/man/prcomp.Rd 2006-10-30 10:45:48.000000000 -0600
@@ -91,7 +91,7 @@ prcomp(x, \dots)
(centered and possibly scaled) data matrix, not by using
\code{eigen} on the covariance matrix. This
is generally the preferred method for numerical accuracy. The
- \code{print} method for the these objects prints the results in a nice
+ \code{print} method for these objects prints the results in a nice
format and the \code{plot} method produces a scree plot.
Note that \code{scale = TRUE} cannot be used if there are zero or
diff -urp R-2.4.0.old/src/library/stats/man/princomp.Rd R-2.4.0/src/library/stats/man/princomp.Rd
--- R-2.4.0.old/src/library/stats/man/princomp.Rd 2006-05-18 04:13:52.000000000 -0500
+++ R-2.4.0/src/library/stats/man/princomp.Rd 2006-10-30 10:45:48.000000000 -0600
@@ -91,7 +91,7 @@ princomp(x, \dots)
Note that the default calculation uses divisor \code{N} for the
covariance matrix.
- The \code{\link{print}} method for the these objects prints the
+ The \code{\link{print}} method for these objects prints the
results in a nice format and the \code{\link{plot}} method produces
a scree plot (\code{\link{screeplot}}). There is also a
\code{\link{biplot}} method.
diff -urp R-2.4.0.old/src/library/stats/man/ts.Rd R-2.4.0/src/library/stats/man/ts.Rd
--- R-2.4.0.old/src/library/stats/man/ts.Rd 2006-09-04 09:41:28.000000000 -0500
+++ R-2.4.0/src/library/stats/man/ts.Rd 2006-10-28 14:35:57.000000000 -0500
@@ -53,7 +53,7 @@ is.ts(x)
attributes) which represent data which has been sampled at equispaced
points in time. In the matrix case, each column of the matrix
\code{data} is assumed to contain a single (univariate) time series.
- Time series must have an least one observation, and although they need
+ Time series must have at least one observation, and although they need
not be numeric there is very limited support for non-numeric series.
Class \code{"ts"} has a number of methods. In particular arithmetic
diff -urp R-2.4.0.old/src/library/stats/R/add.R R-2.4.0/src/library/stats/R/add.R
--- R-2.4.0.old/src/library/stats/R/add.R 2006-09-06 21:05:05.000000000 -0500
+++ R-2.4.0/src/library/stats/R/add.R 2006-10-28 14:35:56.000000000 -0500
@@ -112,7 +112,8 @@ add1.lm <- function(object, scope, scale
z <- if(iswt) lm.wfit(X, y, wt, offset=offset)
else lm.fit(X, y, offset=offset)
dfs[1] <- z$rank
- RSS[1] <- deviance.lm(z)
+ class(z) <- "lm" # needed as deviance.lm calls generic residuals()
+ RSS[1] <- deviance(z)
## workaround for PR#7842. terms.formula may have flipped interactions
sTerms <- sapply(strsplit(Terms, ":", fixed=TRUE),
function(x) paste(sort(x), collapse=":"))
@@ -122,8 +123,9 @@ add1.lm <- function(object, scope, scale
X <- x[, usex|ousex, drop = FALSE]
z <- if(iswt) lm.wfit(X, y, wt, offset=offset)
else lm.fit(X, y, offset=offset)
+ class(z) <- "lm" # needed as deviance.lm calls generic residuals()
dfs[tt] <- z$rank
- RSS[tt] <- deviance.lm(z)
+ RSS[tt] <- deviance(z)
}
if(scale > 0) aic <- RSS/scale - n + k*dfs
else aic <- n * log(RSS/n) + k*dfs
diff -urp R-2.4.0.old/src/library/stats4/R/mle.R R-2.4.0/src/library/stats4/R/mle.R
--- R-2.4.0.old/src/library/stats4/R/mle.R 2006-04-09 17:19:08.000000000 -0500
+++ R-2.4.0/src/library/stats4/R/mle.R 2006-10-28 14:35:52.000000000 -0500
@@ -33,6 +33,7 @@ mle <- function(minuslogl, start=formals
if (any(is.na(oo)))
stop("some named arguments in 'start' are not arguments to the supplied log-likelihood")
start <- start[order(oo)]
+ nm <- names(start) ## reordered names needed
f <- function(p){
l <- as.list(p)
names(l) <- nm
diff -urp R-2.4.0.old/src/library/tcltk/man/tcltk-package.Rd R-2.4.0/src/library/tcltk/man/tcltk-package.Rd
--- R-2.4.0.old/src/library/tcltk/man/tcltk-package.Rd 2006-04-09 17:19:08.000000000 -0500
+++ R-2.4.0/src/library/tcltk/man/tcltk-package.Rd 2006-10-28 14:35:52.000000000 -0500
@@ -16,7 +16,7 @@ and references in those files for more.
The Tcl/Tk documentation is in
#ifdef windows
-\code{R_HOME/Tcl/doc}.
+\file{\link{R_HOME}/Tcl/doc}.
#endif
#ifdef unix
the system man pages.
@@ -27,7 +27,7 @@ For a complete list of functions, use \c
#ifdef unix
Note that Tk will not be initialized if there is no \code{DISPLAY}
variable set, but Tcl can still be used. This is most useful to allow
-the loading of a package which depends on \pkg{TclTk} in a session that
+the loading of a package which depends on \pkg{tcltk} in a session that
does not actually use it (e.g. during installation).
#endif
}
diff -urp R-2.4.0.old/src/library/utils/man/unix/RHOME.Rd R-2.4.0/src/library/utils/man/unix/RHOME.Rd
--- R-2.4.0.old/src/library/utils/man/unix/RHOME.Rd 2006-04-09 17:19:06.000000000 -0500
+++ R-2.4.0/src/library/utils/man/unix/RHOME.Rd 2006-10-28 14:35:52.000000000 -0500
@@ -1,6 +1,5 @@
\name{RHOME}
\alias{RHOME}
-\alias{R_HOME}
\title{R Home Directory}
\description{
Returns the location of the \R home directory, which is the root of
diff -urp R-2.4.0.old/src/library/utils/man/windows/clipboard.Rd R-2.4.0/src/library/utils/man/windows/clipboard.Rd
--- R-2.4.0.old/src/library/utils/man/windows/clipboard.Rd 2006-04-09 17:19:05.000000000 -0500
+++ R-2.4.0/src/library/utils/man/windows/clipboard.Rd 2006-11-01 19:41:41.000000000 -0600
@@ -2,6 +2,7 @@
\alias{getClipboardFormats}
\alias{readClipboard}
\alias{writeClipboard}
+\alias{clipboard}
\title{Read/Write to/from the Windows Clipboard}
\description{
Transfer text between a character vector and the Windows clipboard.
@@ -18,8 +19,10 @@ writeClipboard(str, format = 1)
}
\value{
For \code{getClipboardFormats}, an integer vector of available formats.
+
For \code{readClipboard}, a character vector by default, a raw vector if \code{raw} is
\code{TRUE}, or \code{NULL}, if the format is unavailable.
+
For \code{writeClipboard} an invisible logical indicating success or failure.
}
\details{
diff -urp R-2.4.0.old/src/library/utils/R/question.R R-2.4.0/src/library/utils/R/question.R
--- R-2.4.0.old/src/library/utils/R/question.R 2006-04-09 17:19:05.000000000 -0500
+++ R-2.4.0/src/library/utils/R/question.R 2006-10-28 14:35:51.000000000 -0500
@@ -79,12 +79,10 @@ topicName <- function(type, topic)
stop(gettextf("error in trying to evaluate the expression for argument '%s' (%s)",
arg, deparse(argExpr)),
domain = NA)
- methods::"elNamed<-"(sigClasses, arg,
- class(argVal))
+ sigClasses[[arg]] <- class(argVal)
}
else
- methods::"elNamed<-"(sigClasses, arg,
- as.character(argExpr))
+ sigClasses[[arg]] <- as.character(argExpr)
}
}
method <- methods::selectMethod(f, sigClasses, optional=TRUE,
diff -urp R-2.4.0.old/src/library/utils/R/str.R R-2.4.0/src/library/utils/R/str.R
--- R-2.4.0.old/src/library/utils/R/str.R 2006-09-18 21:05:14.000000000 -0500
+++ R-2.4.0/src/library/utils/R/str.R 2006-11-03 19:41:46.000000000 -0600
@@ -103,14 +103,11 @@ str.default <-
mod <- ""; char.like <- FALSE
if(give.attr) a <- attributes(object)#-- save for later...
- if(is.function(object)) {
- cat(if(is.null(ao <- args(object))) deparse(object)
- else { dp <- deparse(ao); paste(dp[-length(dp)], collapse="\n") },"\n")
- } else if (is.null(object))
+ if (is.null(object))
cat(" NULL\n")
else if(S4) {
a <- sapply(methods::.slotNames(object), methods::slot,
- object=object, simplify = FALSE)
+ object=object, simplify = FALSE)
cat("Formal class", " '", paste(cl, collapse = "', '"),
"' [package \"", attr(cl,"package"), "\"] with ",
length(a)," slots\n", sep="")
@@ -120,7 +117,10 @@ str.default <-
nchar.max = nchar.max, give.attr = give.attr, width=width)
return(invisible())
}
- else if(is.list(object)) {
+ else if(is.function(object)) {
+ cat(if(is.null(ao <- args(object))) deparse(object)
+ else { dp <- deparse(ao); paste(dp[-length(dp)], collapse="\n") },"\n")
+ } else if(is.list(object)) {
i.pl <- is.pairlist(object)
is.d.f <- is.data.frame(object)
##?if(is.d.f) std.attr <- c(std.attr, "class", if(is.d.f) "row.names")
diff -urp R-2.4.0.old/src/main/character.c R-2.4.0/src/main/character.c
--- R-2.4.0.old/src/main/character.c 2006-09-04 09:41:33.000000000 -0500
+++ R-2.4.0/src/main/character.c 2006-10-28 14:35:58.000000000 -0500
@@ -718,6 +718,8 @@ SEXP attribute_hidden do_abbrev(SEXP cal
SET_STRING_ELT(ans, i, NA_STRING);
else {
warn = warn | !utf8strIsASCII(CHAR(STRING_ELT(x, i)));
+ if(strlen(CHAR(STRING_ELT(x, i))) >= MAXELTSIZE)
+ errorcall(call, "element %d is too long", i+1);
SET_STRING_ELT(ans, i,
stripchars(STRING_ELT(x, i), minlen));
}
diff -urp R-2.4.0.old/src/main/CommandLineArgs.c R-2.4.0/src/main/CommandLineArgs.c
--- R-2.4.0.old/src/main/CommandLineArgs.c 2006-09-04 09:41:33.000000000 -0500
+++ R-2.4.0/src/main/CommandLineArgs.c 2006-10-29 10:45:43.000000000 -0600
@@ -85,6 +85,10 @@ do_commandArgs(SEXP call, SEXP op, SEXP
return vals;
}
+#ifdef Win32
+extern int R_LoadRconsole;
+#endif
+
void
R_common_command_line(int *pac, char **argv, Rstart Rp)
{
@@ -141,6 +145,9 @@ R_common_command_line(int *pac, char **a
Rp->LoadInitFile = FALSE; /* --no-init-file */
R_RestoreHistory = 0; /* --no-restore-history */
Rp->NoRenviron = TRUE;
+#ifdef Win32
+ R_LoadRconsole = 0;
+#endif
}
else if (!strcmp(*av, "--no-environ")) {
Rp->NoRenviron = TRUE;
@@ -174,6 +181,11 @@ R_common_command_line(int *pac, char **a
R_StdinEnc[30] = '\0';
}
}
+#ifdef Win32
+ else if (!strcmp(*av, "--no-Rconsole")) {
+ R_LoadRconsole = 0;
+ }
+#endif
else if (!strcmp(*av, "-save") ||
!strcmp(*av, "-nosave") ||
!strcmp(*av, "-restore") ||
diff -urp R-2.4.0.old/src/main/connections.c R-2.4.0/src/main/connections.c
--- R-2.4.0.old/src/main/connections.c 2006-09-13 21:05:06.000000000 -0500
+++ R-2.4.0/src/main/connections.c 2006-10-28 14:35:57.000000000 -0500
@@ -1177,7 +1177,7 @@ SEXP attribute_hidden do_gzfile(SEXP cal
PROTECT(ans = allocVector(INTSXP, 1));
INTEGER(ans)[0] = ncon;
PROTECT(class = allocVector(STRSXP, 2));
- SET_STRING_ELT(class, 0, mkChar("file"));
+ SET_STRING_ELT(class, 0, mkChar("gzfile"));
SET_STRING_ELT(class, 1, mkChar("connection"));
classgets(ans, class);
UNPROTECT(2);
diff -urp R-2.4.0.old/src/main/deparse.c R-2.4.0/src/main/deparse.c
--- R-2.4.0.old/src/main/deparse.c 2006-09-11 21:05:02.000000000 -0500
+++ R-2.4.0/src/main/deparse.c 2006-11-03 19:41:47.000000000 -0600
@@ -245,6 +245,7 @@ static SEXP deparse1WithCutoff(SEXP call
if (abbrev) {
char data[14];
strncpy(data, CHAR(STRING_ELT(svec, 0)), 10);
+ data[10] = '\0';
if (strlen(CHAR(STRING_ELT(svec, 0))) > 10) strcat(data, "...");
svec = mkString(data);
} else if(R_BrowseLines > 0 &&
diff -urp R-2.4.0.old/src/main/plot3d.c R-2.4.0/src/main/plot3d.c
--- R-2.4.0.old/src/main/plot3d.c 2006-09-07 21:05:22.000000000 -0500
+++ R-2.4.0/src/main/plot3d.c 2006-10-28 14:35:58.000000000 -0500
@@ -1475,6 +1475,7 @@ SEXP attribute_hidden do_contour(SEXP ca
warning(_("all z values are equal"));
else
warning(_("all z values are NA"));
+ UNPROTECT(4);
return R_NilValue;
}
diff -urp R-2.4.0.old/src/main/saveload.c R-2.4.0/src/main/saveload.c
--- R-2.4.0.old/src/main/saveload.c 2006-09-25 21:05:07.000000000 -0500
+++ R-2.4.0/src/main/saveload.c 2006-10-28 14:35:58.000000000 -0500
@@ -2358,6 +2358,7 @@ SEXP attribute_hidden do_loadFromConn2(S
PROTECT(res = RestoreToEnv(R_Unserialize(&in), aenv));
if (wasopen) {
endcontext(&cntxt);
+ } else {
con->close(con);
}
UNPROTECT(1);
diff -urp R-2.4.0.old/src/main/subscript.c R-2.4.0/src/main/subscript.c
--- R-2.4.0.old/src/main/subscript.c 2006-09-04 09:41:33.000000000 -0500
+++ R-2.4.0/src/main/subscript.c 2006-10-28 14:35:58.000000000 -0500
@@ -369,7 +369,8 @@ static SEXP stringSubscript(SEXP s, int
int i, j, nnames, sub, extra;
int canstretch = *stretch;
#ifdef USE_HASHING
- Rboolean usehashing = in && (ns * nx > 1000);
+ /* product may overflow, so check factors as well. */
+ Rboolean usehashing = in && ( (ns > 1000 && nx) || (nx > 1000 && ns) || (ns * nx > 1000) );
#else
Rboolean usehashing = FALSE;
#endif
diff -urp R-2.4.0.old/src/main/sysutils.c R-2.4.0/src/main/sysutils.c
--- R-2.4.0.old/src/main/sysutils.c 2006-09-07 21:05:22.000000000 -0500
+++ R-2.4.0/src/main/sysutils.c 2006-10-31 19:41:45.000000000 -0600
@@ -170,6 +170,7 @@ FILE *R_popen(char *command, char *type)
#ifdef __APPLE_CC__
/* Luke recommends this to fix PR#1140 */
sigset_t ss;
+ sigemptyset(&ss);
sigaddset(&ss, SIGPROF);
sigprocmask(SIG_BLOCK, &ss, NULL);
fp = popen(command, type);
@@ -187,6 +188,7 @@ int R_system(char *command)
#ifdef __APPLE_CC__
/* Luke recommends this to fix PR#1140 */
sigset_t ss;
+ sigemptyset(&ss);
sigaddset(&ss, SIGPROF);
sigprocmask(SIG_BLOCK, &ss, NULL);
#ifdef HAVE_AQUA
diff -urp R-2.4.0.old/src/modules/X11/dataentry.c R-2.4.0/src/modules/X11/dataentry.c
--- R-2.4.0.old/src/modules/X11/dataentry.c 2006-09-04 09:41:34.000000000 -0500
+++ R-2.4.0/src/modules/X11/dataentry.c 2006-10-28 14:35:58.000000000 -0500
@@ -1046,7 +1046,7 @@ static void printstring(char *ibuf, int
for(j=0;*(wcspc+j)!=L'\0';j++)wcs[j]=*(wcspc+j);
wcs[j]=L'\0';
w_p=wcs;
- cnt=wcsrtombs(s,(const wchar_t **)&w_p,sizeof(wcs),NULL);
+ cnt=wcsrtombs(s,(const wchar_t **)&w_p,sizeof(s)-1,NULL);
s[cnt]='\0';
if (textwidth(s, strlen(s)) < (bw - text_offset)) break;
*(++wcspc) = L'<';
@@ -1056,7 +1056,7 @@ static void printstring(char *ibuf, int
for(j=0;*(wcspc+j)!=L'\0';j++)wcs[j]=*(wcspc+j);
wcs[j]=L'\0';
w_p=wcs;
- cnt=wcsrtombs(s,(const wchar_t **)&w_p,sizeof(wcs),NULL);
+ cnt=wcsrtombs(s,(const wchar_t **)&w_p,sizeof(s)-1,NULL);
s[cnt]='\0';
if (textwidth(s, strlen(s)) < (bw - text_offset)) break;
*(wcspbuf + i - 2) = L'>';
@@ -1066,7 +1066,7 @@ static void printstring(char *ibuf, int
for(j=0;*(wcspc+j)!=L'\0';j++) wcs[j]=*(wcspc+j);
wcs[j]=L'\0';
w_p=wcs;
- cnt=wcsrtombs(s,(const wchar_t **)&w_p,sizeof(wcs),NULL);
+ cnt=wcsrtombs(s,(const wchar_t **)&w_p,sizeof(s)-1,NULL);
drawtext(x_pos + text_offset, y_pos + box_h - text_offset, s, cnt);
@@ -2398,6 +2398,7 @@ static int last_wchar_bytes(char *str)
int cnt;
char last_mbs[8];
char *mbs;
+ size_t bytes;
mbs = (str == NULL) ? buf : str;
@@ -2411,8 +2412,8 @@ static int last_wchar_bytes(char *str)
if(wcs[0] == L'\0') return 0;
memset(last_mbs, 0, sizeof(last_mbs));
- wcrtomb(last_mbs, wcs[cnt-1], &mb_st);
- return(strlen(last_mbs));
+ bytes=wcrtomb(last_mbs, wcs[cnt-1], &mb_st); /* -Wall */
+ return(bytes);
#else
return(1);
#endif
diff -urp R-2.4.0.old/src/modules/X11/rotated.c R-2.4.0/src/modules/X11/rotated.c
--- R-2.4.0.old/src/modules/X11/rotated.c 2006-04-09 17:19:54.000000000 -0500
+++ R-2.4.0/src/modules/X11/rotated.c 2006-10-28 14:35:58.000000000 -0500
@@ -2285,7 +2285,8 @@ static RotatedTextItem
/* where abouts does text actually lie in rotated image? */
/* check angle within 0.5 degrees (0.008 radians) */
if(fabs((double)angle)<0.008 || fabs((double)angle-M_PI/2)<0.008 ||
- fabs((double)angle-M_PI)<0.008 || fabs((double)angle-3*M_PI/2)<0.008) {
+ fabs((double)angle-M_PI)<0.008 || fabs((double)angle-3*M_PI/2)<0.008 ||
+ fabs((double)angle-2*M_PI)<0.008) {
xl=0;
xr=(double)item->cols_out;
xinc=0;
diff -urp R-2.4.0.old/src/scripts/texi2dvi R-2.4.0/src/scripts/texi2dvi
--- R-2.4.0.old/src/scripts/texi2dvi 2006-05-18 04:13:54.000000000 -0500
+++ R-2.4.0/src/scripts/texi2dvi 2006-10-03 07:18:04.000000000 -0500
@@ -27,7 +27,7 @@
# the `--debug' option when making a bug report.
# This string is expanded by rcs automatically when this file is checked out.
-rcs_revision='$Revision: 1.1 $'
+rcs_revision='$Revision: 1.1 $'
rcs_version=`set - $rcs_revision; echo $2`
program=`echo $0 | sed -e 's!.*/!!'`
version="texi2dvi (GNU Texinfo 4.8) $rcs_version
diff -urp R-2.4.0.old/SVN-REVISION R-2.4.0/SVN-REVISION
--- R-2.4.0.old/SVN-REVISION 2006-10-03 05:02:46.000000000 -0500
+++ R-2.4.0/SVN-REVISION 2006-11-03 19:54:14.000000000 -0600
@@ -1,2 +1,2 @@
-Revision: 39566
-Last Changed Date: 2006-10-03
+Revision: 39789
+Last Changed Date: 2006-11-03
diff -urp R-2.4.0.old/tests/no-segfault.Rin R-2.4.0/tests/no-segfault.Rin
--- R-2.4.0.old/tests/no-segfault.Rin 2006-05-18 04:38:21.000000000 -0500
+++ R-2.4.0/tests/no-segfault.Rin 2006-10-28 14:36:01.000000000 -0500
@@ -41,7 +41,7 @@ dev.int <- c("X11", "x11", "pdf", "posts
misc.2 <- c("help.start", "browseEnv",
"gctorture", "q", "quit", "restart", "try",
"read.fwf", "source",## << MM thinks "FIXME"
- "data.entry", "dataentry", "de", apropos("^de\."),
+ "data.entry", "dataentry", "de", apropos("^de\\."),
"chooseCRANmirror", "setRepositories", "select.list")
if(.Platform$OS.type == "windows") {
dev.int <- c(dev.int, "bmp", "windows", "win.graph", "win.print",
diff -urp R-2.4.0.old/tests/reg-plot.ps.save R-2.4.0/tests/reg-plot.ps.save
--- R-2.4.0.old/tests/reg-plot.ps.save 2006-04-09 17:20:05.000000000 -0500
+++ R-2.4.0/tests/reg-plot.ps.save 2006-10-28 14:36:01.000000000 -0500
@@ -768,31 +768,31 @@ o
ep
%%Page: 4 4
bp
-77.04 91.44 793.65 518.24 cl
+106.56 128.16 778.53 488.72 cl
18.00 18.00 823.89 577.28 cl
/ps 18 def /Font1 findfont 18 s
0 0 0 rgb
-111.19 100.22 (50-54) 0 0 0 t
-111.19 115.46 (55-59) 0 0 0 t
-111.19 130.71 (60-64) 0 0 0 t
-111.19 145.95 (65-69) 0 0 0 t
-111.19 161.19 (70-74) 0 0 0 t
-111.19 206.92 (50-54) 0 0 0 t
-111.19 222.16 (55-59) 0 0 0 t
-111.19 237.40 (60-64) 0 0 0 t
-111.19 252.65 (65-69) 0 0 0 t
-111.19 267.89 (70-74) 0 0 0 t
-111.19 313.62 (50-54) 0 0 0 t
-111.19 328.86 (55-59) 0 0 0 t
-111.19 344.10 (60-64) 0 0 0 t
-111.19 359.35 (65-69) 0 0 0 t
-111.19 374.59 (70-74) 0 0 0 t
-111.19 420.32 (50-54) 0 0 0 t
-111.19 435.56 (55-59) 0 0 0 t
-111.19 450.80 (60-64) 0 0 0 t
-111.19 466.05 (65-69) 0 0 0 t
-111.19 481.29 (70-74) 0 0 0 t
-168.93 91.44 793.65 518.24 cl
+126.31 134.57 (50-54) 0 0 0 t
+126.31 147.45 (55-59) 0 0 0 t
+126.31 160.33 (60-64) 0 0 0 t
+126.31 173.21 (65-69) 0 0 0 t
+126.31 186.08 (70-74) 0 0 0 t
+126.31 224.71 (50-54) 0 0 0 t
+126.31 237.59 (55-59) 0 0 0 t
+126.31 250.47 (60-64) 0 0 0 t
+126.31 263.34 (65-69) 0 0 0 t
+126.31 276.22 (70-74) 0 0 0 t
+126.31 314.85 (50-54) 0 0 0 t
+126.31 327.73 (55-59) 0 0 0 t
+126.31 340.61 (60-64) 0 0 0 t
+126.31 353.48 (65-69) 0 0 0 t
+126.31 366.36 (70-74) 0 0 0 t
+126.31 404.99 (50-54) 0 0 0 t
+126.31 417.87 (55-59) 0 0 0 t
+126.31 430.75 (60-64) 0 0 0 t
+126.31 443.62 (65-69) 0 0 0 t
+126.31 456.50 (70-74) 0 0 0 t
+184.05 128.16 778.53 488.72 cl
0.7451 0.7451 0.7451 rgb
0.75 setlinewidth
[ 0.00 4.00] 0 setdash
@@ -800,170 +800,170 @@ bp
1 setlinejoin
10.00 setmiterlimit
np
-168.93 106.68 m
-624.72 0 l
+184.05 141.04 m
+594.48 0 l
o
np
-168.93 121.93 m
-624.72 0 l
+184.05 153.91 m
+594.48 0 l
o
np
-168.93 137.17 m
-624.72 0 l
+184.05 166.79 m
+594.48 0 l
o
np
-168.93 152.41 m
-624.72 0 l
+184.05 179.67 m
+594.48 0 l
o
np
-168.93 167.65 m
-624.72 0 l
+184.05 192.54 m
+594.48 0 l
o
np
-168.93 213.38 m
-624.72 0 l
+184.05 231.18 m
+594.48 0 l
o
np
-168.93 228.62 m
-624.72 0 l
+184.05 244.05 m
+594.48 0 l
o
np
-168.93 243.87 m
-624.72 0 l
+184.05 256.93 m
+594.48 0 l
o
np
-168.93 259.11 m
-624.72 0 l
+184.05 269.81 m
+594.48 0 l
o
np
-168.93 274.35 m
-624.72 0 l
+184.05 282.68 m
+594.48 0 l
o
np
-168.93 320.08 m
-624.72 0 l
+184.05 321.31 m
+594.48 0 l
o
np
-168.93 335.32 m
-624.72 0 l
+184.05 334.19 m
+594.48 0 l
o
np
-168.93 350.57 m
-624.72 0 l
+184.05 347.07 m
+594.48 0 l
o
np
-168.93 365.81 m
-624.72 0 l
+184.05 359.95 m
+594.48 0 l
o
np
-168.93 381.05 m
-624.72 0 l
+184.05 372.82 m
+594.48 0 l
o
np
-168.93 426.78 m
-624.72 0 l
+184.05 411.45 m
+594.48 0 l
o
np
-168.93 442.02 m
-624.72 0 l
+184.05 424.33 m
+594.48 0 l
o
np
-168.93 457.26 m
-624.72 0 l
+184.05 437.21 m
+594.48 0 l
o
np
-168.93 472.51 m
-624.72 0 l
+184.05 450.08 m
+594.48 0 l
o
np
-168.93 487.75 m
-624.72 0 l
+184.05 462.96 m
+594.48 0 l
o
0 0 0 rgb
0.75 setlinewidth
[] 0 setdash
-192.07 106.68 4.05 c p1
-240.04 121.93 4.05 c p1
-292.63 137.17 4.05 c p1
-438.39 152.41 4.05 c p1
-575.85 167.65 4.05 c p1
-256.65 213.38 4.05 c p1
-338.75 228.62 4.05 c p1
-455.92 243.87 4.05 c p1
-618.29 259.11 4.05 c p1
-770.51 274.35 4.05 c p1
-194.84 320.08 4.05 c p1
-222.51 335.32 4.05 c p1
-301.85 350.57 4.05 c p1
-399.64 365.81 4.05 c p1
-615.52 381.05 4.05 c p1
-222.51 426.78 4.05 c p1
-281.56 442.02 4.05 c p1
-362.74 457.26 4.05 c p1
-492.82 472.51 4.05 c p1
-723.46 487.75 4.05 c p1
+206.07 141.04 4.05 c p1
+251.72 153.91 4.05 c p1
+301.76 166.79 4.05 c p1
+440.47 179.67 4.05 c p1
+571.27 192.54 4.05 c p1
+267.52 231.18 4.05 c p1
+345.65 244.05 4.05 c p1
+457.15 256.93 4.05 c p1
+611.66 269.81 4.05 c p1
+756.51 282.68 4.05 c p1
+208.70 321.31 4.05 c p1
+235.04 334.19 4.05 c p1
+310.54 347.07 4.05 c p1
+403.60 359.95 4.05 c p1
+609.02 372.82 4.05 c p1
+235.04 411.45 4.05 c p1
+291.22 424.33 4.05 c p1
+368.48 437.21 4.05 c p1
+492.26 450.08 4.05 c p1
+711.74 462.96 4.05 c p1
18.00 18.00 823.89 577.28 cl
/ps 18 def /Font1 findfont 18 s
0 0 0 rgb
-48.24 496.53 (Rural Male) 0 0 0 t
-48.24 389.83 (Rural Female) 0 0 0 t
-48.24 283.13 (Urban Male) 0 0 0 t
-48.24 176.43 (Urban Female) 0 0 0 t
+63.36 469.38 (Rural Male) 0 0 0 t
+63.36 379.24 (Rural Female) 0 0 0 t
+63.36 289.10 (Urban Male) 0 0 0 t
+63.36 198.96 (Urban Female) 0 0 0 t
0.75 setlinewidth
[] 0 setdash
1 setlinecap
1 setlinejoin
10.00 setmiterlimit
np
-206.83 91.44 m
-553.53 0 l
+220.11 128.16 m
+526.75 0 l
o
np
-206.83 91.44 m
+220.11 128.16 m
0 -10.80 l
o
np
-299.08 91.44 m
+307.90 128.16 m
0 -10.80 l
o
np
-391.34 91.44 m
+395.69 128.16 m
0 -10.80 l
o
np
-483.60 91.44 m
+483.48 128.16 m
0 -10.80 l
o
np
-575.85 91.44 m
+571.27 128.16 m
0 -10.80 l
o
np
-668.11 91.44 m
+659.06 128.16 m
0 -10.80 l
o
np
-760.36 91.44 m
+746.86 128.16 m
0 -10.80 l
o
-206.83 52.56 (10) .5 0 0 t
-299.08 52.56 (20) .5 0 0 t
-391.34 52.56 (30) .5 0 0 t
-483.60 52.56 (40) .5 0 0 t
-575.85 52.56 (50) .5 0 0 t
-668.11 52.56 (60) .5 0 0 t
-760.36 52.56 (70) .5 0 0 t
-np
-168.93 91.44 m
-624.72 0 l
-0 426.80 l
--624.72 0 l
-0 -426.80 l
+220.11 89.28 (10) .5 0 0 t
+307.90 89.28 (20) .5 0 0 t
+395.69 89.28 (30) .5 0 0 t
+483.48 89.28 (40) .5 0 0 t
+571.27 89.28 (50) .5 0 0 t
+659.06 89.28 (60) .5 0 0 t
+746.86 89.28 (70) .5 0 0 t
+np
+184.05 128.16 m
+594.48 0 l
+0 360.56 l
+-594.48 0 l
+0 -360.56 l
o
18.00 18.00 823.89 577.28 cl
/ps 22 def /Font2 findfont 22 s
0 0 0 rgb
-481.29 539.86 (Death Rates in Virginia - 1940) .5 0 0 t
+481.29 525.10 (Death Rates in Virginia - 1940) .5 0 0 t
ep
%%Page: 5 5
bp
@@ -3771,8 +3771,8 @@ np
0 -7.20 l
o
/ps 12 def /Font1 findfont 12 s
-78.70 65.52 (1 e-11) .5 0 0 t
-222.02 65.52 (1 e+53) .5 0 0 t
+78.70 65.52 (1e-11) .5 0 0 t
+222.02 65.52 (1e+53) .5 0 0 t
365.35 65.52 (1e+117) .5 0 0 t
508.68 65.52 (1e+181) .5 0 0 t
652.00 65.52 (1e+245) .5 0 0 t
@@ -3800,8 +3800,8 @@ np
77.04 436.50 m
-7.20 0 l
o
-59.76 92.27 (1 e-10) .5 0 90 t
-59.76 178.32 (1 e+49) .5 0 90 t
+59.76 92.27 (1e-10) .5 0 90 t
+59.76 178.32 (1e+49) .5 0 90 t
59.76 264.38 (1e+108) .5 0 90 t
59.76 350.44 (1e+167) .5 0 90 t
59.76 436.50 (1e+226) .5 0 90 t
diff -urp R-2.4.0.old/tests/reg-tests-1.R R-2.4.0/tests/reg-tests-1.R
--- R-2.4.0.old/tests/reg-tests-1.R 2006-09-25 21:05:07.000000000 -0500
+++ R-2.4.0/tests/reg-tests-1.R 2006-10-28 14:36:01.000000000 -0500
@@ -4494,3 +4494,20 @@ test <- 1:10
try(test[2:4] <- ls) # fails
stopifnot(!exists("*tmp*", where=1))
## was true < 2.4.0
+
+
+## merge on zero-row data frames
+L3 <- LETTERS[1:3]
+d <- data.frame(cbind(x=1, y=1), fac=sample(L3, 1, repl=TRUE))
+e <- d[-1,]
+merge(d, e, by.x = "x", by.y = "x", all.x = TRUE)
+##
+
+
+## PR#9313
+library(stats4)
+g <- function(x, y) -cos(x) + abs(y)
+fit1 <- mle(g, start = list(x = 0, y = 7))
+fit2 <- mle(g, start = list(y = 7, x = 0))
+stopifnot(all.equal(coef(fit1), coef(fit2)))
+## Found different solutions in 2.4.0, as names were not remapped in fit2
diff -urp R-2.4.0.old/tests/reg-tests-2.R R-2.4.0/tests/reg-tests-2.R
--- R-2.4.0.old/tests/reg-tests-2.R 2006-09-22 21:05:09.000000000 -0500
+++ R-2.4.0/tests/reg-tests-2.R 2006-10-28 14:36:01.000000000 -0500
@@ -1988,3 +1988,15 @@ format(matrix(1:16, 4), big.mark = ",")
### end of tests added in 2.4.0 ###
+
+
+## Platform-specific behaviour in lowess reported to R-help
+## 2006-10-12 by Frank Harrell
+x <- c(0,7,8,14,15,120,242)
+y <- c(122,128,130,158,110,110,92)
+lowess(x, y, iter=0)
+lowess(x, y)
+## MAD of iterated residuals was zero, and result depended on the platform.
+
+
+### end of tests added in 2.4.1 ###
diff -urp R-2.4.0.old/tests/reg-tests-2.Rout.save R-2.4.0/tests/reg-tests-2.Rout.save
--- R-2.4.0.old/tests/reg-tests-2.Rout.save 2006-09-25 21:05:07.000000000 -0500
+++ R-2.4.0/tests/reg-tests-2.Rout.save 2006-10-28 14:36:01.000000000 -0500
@@ -1,6 +1,6 @@
-R version 2.4.0 beta (2005-09-25 r39509)
-Copyright (C) The R Foundation for Statistical Computing
+R version 2.5.0 Under development (unstable) (2006-10-15 r39637)
+Copyright (C) 2006 The R Foundation for Statistical Computing
ISBN 3-900051-07-0
R is free software and comes with ABSOLUTELY NO WARRANTY.
@@ -5572,3 +5572,27 @@ Residual standard error: 1.735 on 44 deg
>
> ### end of tests added in 2.4.0 ###
>
+>
+> ## Platform-specific behaviour in lowess reported to R-help
+> ## 2006-10-12 by Frank Harrell
+> x <- c(0,7,8,14,15,120,242)
+> y <- c(122,128,130,158,110,110,92)
+> lowess(x, y, iter=0)
+$x
+[1] 0 7 8 14 15 120 242
+
+$y
+[1] 121.95735 128.00000 131.06649 136.93673 126.76467 109.99903 92.00003
+
+> lowess(x, y)
+$x
+[1] 0 7 8 14 15 120 242
+
+$y
+[1] 122 128 128 158 110 110 92
+
+> ## MAD of iterated residuals was zero, and result depended on the platform.
+>
+>
+> ### end of tests added in 2.4.1 ###
+>
diff -urp R-2.4.0.old/VERSION R-2.4.0/VERSION
--- R-2.4.0.old/VERSION 2006-10-03 05:00:12.000000000 -0500
+++ R-2.4.0/VERSION 2006-10-03 07:19:25.000000000 -0500
@@ -1 +1 @@
-2.4.0
+2.4.0 Patched