diff options
author | john haque <j.eh@mchsi.com> | 2012-04-17 13:00:13 -0500 |
---|---|---|
committer | john haque <j.eh@mchsi.com> | 2012-04-17 13:00:13 -0500 |
commit | b1062311a3caab9ec89c0f104bd9b4334174f23c (patch) | |
tree | 08a64713888026fb80fd80360343a51aebd8a593 | |
parent | e729adf120f279fd65578a410ca8d2d93a56f0f0 (diff) | |
parent | f0345a29c71a3215adaa0e2fdfefc0c439ea6561 (diff) | |
download | egawk-b1062311a3caab9ec89c0f104bd9b4334174f23c.tar.gz egawk-b1062311a3caab9ec89c0f104bd9b4334174f23c.tar.bz2 egawk-b1062311a3caab9ec89c0f104bd9b4334174f23c.zip |
Merge branch 'master' into gawk_mpfr.
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | ChangeLog | 110 | ||||
-rw-r--r-- | Makefile.in | 10 | ||||
-rw-r--r-- | NEWS | 8 | ||||
-rw-r--r-- | README | 6 | ||||
-rw-r--r-- | README.git | 53 | ||||
-rw-r--r-- | README_d/ChangeLog | 10 | ||||
-rw-r--r-- | aclocal.m4 | 1 | ||||
-rw-r--r-- | awkgram.c | 36 | ||||
-rw-r--r-- | awkgram.y | 38 | ||||
-rw-r--r-- | awklib/ChangeLog | 4 | ||||
-rw-r--r-- | awklib/Makefile.in | 10 | ||||
-rw-r--r-- | builtin.c | 5 | ||||
-rw-r--r-- | configh.in | 13 | ||||
-rwxr-xr-x | configure | 5 | ||||
-rw-r--r-- | configure.ac | 7 | ||||
-rw-r--r-- | dfa.c | 2246 | ||||
-rw-r--r-- | dfa.h | 19 | ||||
-rw-r--r-- | doc/ChangeLog | 9 | ||||
-rw-r--r-- | doc/Makefile.in | 10 | ||||
-rw-r--r-- | doc/awkcard.in | 7 | ||||
-rw-r--r-- | doc/gawk.info | 962 | ||||
-rw-r--r-- | doc/gawk.texi | 21 | ||||
-rw-r--r-- | doc/texinfo.tex | 1161 | ||||
-rw-r--r-- | ext.c | 14 | ||||
-rw-r--r-- | extension/ChangeLog | 9 | ||||
-rw-r--r-- | getopt.c | 133 | ||||
-rw-r--r-- | getopt.h | 11 | ||||
-rw-r--r-- | getopt1.c | 10 | ||||
-rw-r--r-- | getopt_int.h | 5 | ||||
-rw-r--r-- | io.c | 2 | ||||
-rw-r--r-- | m4/ChangeLog | 9 | ||||
-rw-r--r-- | m4/noreturn.m4 | 38 | ||||
-rw-r--r-- | main.c | 19 | ||||
-rw-r--r-- | mbsupport.h | 6 | ||||
-rw-r--r-- | missing_d/ChangeLog | 4 | ||||
-rw-r--r-- | pc/ChangeLog | 58 | ||||
-rw-r--r-- | pc/Makefile | 7 | ||||
-rw-r--r-- | pc/Makefile.tst | 115 | ||||
-rw-r--r-- | pc/config.h | 19 | ||||
-rw-r--r-- | pc/config.sed | 2 | ||||
-rw-r--r-- | pc/gawkmisc.pc | 23 | ||||
-rw-r--r-- | pc/testoutcmp.awk | 19 | ||||
-rw-r--r-- | po/ChangeLog | 4 | ||||
-rw-r--r-- | po/da.gmo | bin | 48739 -> 46123 bytes | |||
-rw-r--r-- | po/da.po | 1461 | ||||
-rw-r--r-- | po/de.gmo | bin | 52166 -> 49358 bytes | |||
-rw-r--r-- | po/de.po | 1076 | ||||
-rw-r--r-- | po/es.gmo | bin | 51471 -> 48746 bytes | |||
-rw-r--r-- | po/es.po | 1079 | ||||
-rw-r--r-- | po/fi.gmo | bin | 51684 -> 48930 bytes | |||
-rw-r--r-- | po/fi.po | 1075 | ||||
-rw-r--r-- | po/fr.gmo | bin | 53311 -> 50390 bytes | |||
-rw-r--r-- | po/fr.po | 1076 | ||||
-rw-r--r-- | po/gawk.pot | 970 | ||||
-rw-r--r-- | po/it.gmo | bin | 44316 -> 41479 bytes | |||
-rw-r--r-- | po/it.po | 1065 | ||||
-rw-r--r-- | po/ja.gmo | bin | 55596 -> 52218 bytes | |||
-rw-r--r-- | po/ja.po | 1064 | ||||
-rw-r--r-- | po/nl.gmo | bin | 49267 -> 46629 bytes | |||
-rw-r--r-- | po/nl.po | 1077 | ||||
-rw-r--r-- | po/pl.gmo | bin | 50946 -> 48745 bytes | |||
-rw-r--r-- | po/pl.po | 1095 | ||||
-rw-r--r-- | po/sv.gmo | bin | 48752 -> 46113 bytes | |||
-rw-r--r-- | po/sv.po | 1077 | ||||
-rw-r--r-- | posix/ChangeLog | 4 | ||||
-rw-r--r-- | re.c | 5 | ||||
-rw-r--r-- | regcomp.c | 42 | ||||
-rw-r--r-- | regex.c | 5 | ||||
-rw-r--r-- | regex.h | 18 | ||||
-rw-r--r-- | regex_internal.c | 37 | ||||
-rw-r--r-- | regex_internal.h | 10 | ||||
-rw-r--r-- | regexec.c | 27 | ||||
-rw-r--r-- | test/ChangeLog | 15 | ||||
-rw-r--r-- | test/Makefile.am | 80 | ||||
-rw-r--r-- | test/Makefile.in | 95 | ||||
-rw-r--r-- | test/Maketests | 5 | ||||
-rw-r--r-- | test/printfbad3.awk | 22 | ||||
-rw-r--r-- | test/printfbad3.ok | 1 | ||||
-rw-r--r-- | vms/ChangeLog | 24 | ||||
-rw-r--r-- | vms/descrip.mms | 2 | ||||
-rw-r--r-- | vms/vms-conf.h | 20 | ||||
-rw-r--r-- | vms/vmsbuild.com | 2 | ||||
-rw-r--r-- | vms/vmstest.com | 16 |
84 files changed, 9418 insertions, 8386 deletions
@@ -16,3 +16,4 @@ gawk pgawk stamp-h1 +test/fmtspcl.ok @@ -87,6 +87,114 @@ initialize_watch_item, do_watch, print_watch_item): Minor adjustments. (debug_pre_execute): Adjusted to handle MPFR and GMP numbers. +2012-03-30 Arnold D. Robbins <arnold@skeeve.com> + + * configure.ac (GAWK_AC_NORETURN): Do as macro instead of inline. + +2012-03-29 Arnold D. Robbins <arnold@skeeve.com> + + * dfa.h, dfa.c: Sync with grep. Major cleanups and some changes + there. + * re.c (research): Pass size_t* to dfaexec to match type change. + * configure.ac (AH_VERBATIM[_Noreturn]): Added from Paul Eggert to + ease compiling. + (AC_INIT): Bump version. + * configure, configh.in, version.c: Regenerated. + +2012-03-28 Arnold D. Robbins <arnold@skeeve.com> + + * 4.0.1: Release tar ball made. + +2012-03-28 Arnold D. Robbins <arnold@skeeve.com> + + * getopt.c: Add DJGPP to list of platforms where it's ok + to include <stdlib.h>. + * awkgram.y, builtin.c, ext.c, mbsupport.h, re.c: Update + copyright year. + +2012-03-21 Corinna Vinschen <vinschen@redhat.com> + + * getopt.c: Add Cygwin to list of platforms where it's ok + to include <stdlib.h>. + +2012-03-20 Arnold D. Robbins <arnold@skeeve.com> + + Get new getopt to work on Linux and C90 compilers: + + * getopt.c: Undef ELIDE_CODE for gawk. + (_getopt_internal_r): Init first.needs_free to 0. In test for -W + move executable code to after declarations for C90 compilers. + * getopt1.c: Undef ELIDE_CODE for gawk. + + Minor bug fix with printf, thanks to John Haque: + + * builtin.c (format_tree): Initialize base to zero at the top + of the while loop. + + Getting next tar ball ready: + + * configure.ac: Remove duplicate check for wcscoll. Thanks + to Stepan Kasal. + +2012-03-16 Arnold D. Robbins <arnold@skeeve.com> + + * getopt.c, getopt.h, getopt1.c, getopt_int.h, regcomp.c, + regex.c, regex.h, regex_internal.c, regex_internal.h, + regexec.c: Sync with GLIBC, what the heck. + +2012-03-14 Eli Zaretskii <eliz@gnu.org> + + * mbsupport.h (btowc): Change for non-DJGPP. + * re.c (dfaerror): Add call to exit for DJGPP. + +2012-03-14 Arnold D. Robbins <arnold@skeeve.com> + + * regex_internal.c (re_string_skip_chars): Fix calculation of + remain_len with m.b. chars. Thanks to Stanislav Brabec + <sbrabec@suse.cz>. + +2012-02-28 Arnold D. Robbins <arnold@skeeve.com> + + * main.c (init_groupset): Make `getgroups' failing a non-fatal + error. After all, what's the big deal? Should help on Plan 9. + +2012-02-27 Arnold D. Robbins <arnold@skeeve.com> + + * dfa.c (parse_bracket_exp): Revert changes 2012-02-15 to stay + in sync with grep. + * dfa.h (dfarerror): Add __attribute__ from grep. + +2012-02-15 Arnold D. Robbins <arnold@skeeve.com> + + Fix warnings from GCC 4.6.2 -Wall option. + + * awkgram.y (newline_eof): New function to replace body of + NEWLINE_EOF macro. + (yylex): Replace body of NEWLINE_EOF macro. + * dfa.c (parse_bracket_exp): Init variables to zero. + * ext.c (dummy, junk): Remove. + * regex_internal.c (re_string_reconstruct): Remove buf array. It was + set but not used. + +2012-02-10 Arnold D. Robbins <arnold@skeeve.com> + + * dfa.c: Sync with GNU grep. + +2012-02-07 Arnold D. Robbins <arnold@skeeve.com> + + * main.c (main): Move init of `output_fp' to before parsing of + program so that error messages from msg.c don't dump core. + Thanks to Michael Haardt <michael@moria.de>. + +2012-01-13 Arnold D. Robbins <arnold@skeeve.com> + + * dfa.c [is_valid_unibtye_character]: Fix from GNU grep to + bug reported by me from Scott Deifik for DJGPP. + +2012-01-03 Arnold D. Robbins <arnold@skeeve.com> + + * dfa.c: Sync with GNU grep. + 2012-01-02 Arnold D. Robbins <arnold@skeeve.com> * io.c (Read_can_timeout, Read_timeout, Read_default_timeout): @@ -111,7 +219,7 @@ * profile_p.c: Remove the file. * msg.c (err): Remove check for name being dgawk. - +======= 2011-12-31 Arnold D. Robbins <arnold@skeeve.com> * awk.h [STREQ, STREQN]: Remove macros. diff --git a/Makefile.in b/Makefile.in index 3775dc4a..b3da3c8e 100644 --- a/Makefile.in +++ b/Makefile.in @@ -73,11 +73,11 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/arch.m4 \ $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libsigsegv.m4 \ $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/mpfr.m4 \ - $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/readline.m4 \ - $(top_srcdir)/m4/socket.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/uintmax_t.m4 $(top_srcdir)/m4/ulonglong.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/noreturn.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/readline.m4 $(top_srcdir)/m4/socket.m4 \ + $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/uintmax_t.m4 \ + $(top_srcdir)/m4/ulonglong.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ @@ -1,4 +1,4 @@ - Copyright (C) 2010, 2011 Free Software Foundation, Inc. + Copyright (C) 2010, 2011, 2012 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright @@ -23,7 +23,11 @@ Changes from 4.0.0 to 4.0.1 the behavior of 3.1. It was silly to think I could break compatibility that way, even for standards compliance. -XXX. Lots of minor bugs fixed and portability clean-ups along the way. See +2. Completed the implementation of Rational Range Interpretation. + +3. Failure to get the group set is no longer a fatal error. + +4. Lots of minor bugs fixed and portability clean-ups along the way. See the ChangeLog for details. Changes from 3.1.8 to 4.0.0 @@ -1,4 +1,4 @@ - Copyright (C) 2005, 2006, 2007, 2009, 2010, 2011 + Copyright (C) 2005, 2006, 2007, 2009, 2010, 2011, 2012 Free Software Foundation, Inc. Copying and distribution of this file, with or without modification, @@ -7,11 +7,11 @@ README: -This is GNU Awk 4.0.0. It is upwardly compatible with Brian Kernighan's +This is GNU Awk 4.0.1. It is upwardly compatible with Brian Kernighan's version of Unix awk. It is almost completely compliant with the 2008 POSIX 1003.1 standard for awk. (See the note below about POSIX.) -This is a major new release. See NEWS and ChangeLog for details. +This is a bug fix release. See NEWS and ChangeLog for details. Work to be done is described briefly in the FUTURES file. Changes in this version are summarized in the NEWS file. Please read the LIMITATIONS file. @@ -20,10 +20,18 @@ Really. You can find gawk's GIT repository at Savannah https://savannah.gnu.org/git/?group=gawk + Detailed instructions on using and contributing to gawk can also be -found there -http://savannah.gnu.org/maintenance/UsingGit +found at Savannah, see http://savannah.gnu.org/maintenance/UsingGit + +Thanks, + +Arnold Robbins +Gawk Maintainer +===================================================================== +Here are some questions and answers related to using git compiled +by several of the gawk maintainers. - How can I check out the GIT repository ? @@ -235,8 +243,43 @@ You can inspect the log history file-wise but also directory-wise. git gc +- I'm a devoted user of Bazaar, and don't want to switch to git. Is + there any way for me to track Gawk development with bzr? -Thanks, +Yes, there is. First, install the latest version of bzr (2.5.0 or +later is required). If it doesn't come with the bzr-git plugin, +download and install it from https://launchpad.net/bzr-git. You will +also need dulwich, which is a Python implementation of the git +protocol; get it from http://www.samba.org/~jelmer/dulwich/. -Arnold Robbins -Gawk Maintainer +(To know whether you have bzr-git, type "bzr plugins".) + +Next, clone the Gawk git repository with this command: + + bzr git-import git://git.savannah.gnu.org/gawk.git gawk + +This will create a directory called 'gawk' with meta-data of the +repository, but without any working trees. To checkout the files, +chdir to that directory and type: + + bzr checkout + +This will checkout the files for the default branch. To see the list +of branches, type + + bzr branches + +To switch to another branch, type + + bzr switch --force BRANCH + +where BRANCH is the name of the branch, e.g. 'xgawk'. (The --force +option is a workaround for an annoying misfeature in bzr 2.5.0, which +will most probably be resolved in the near future.) + +To sync the current branch with upstream, type + + bzr pull + +If you want to update several branches, "bzr switch" to each one in +turn, followed by "bzr pull" to sync the branch. diff --git a/README_d/ChangeLog b/README_d/ChangeLog index e319a9ce..0310bd8d 100644 --- a/README_d/ChangeLog +++ b/README_d/ChangeLog @@ -1,8 +1,14 @@ 2012-04-11 John Haque <j.eh@mchsi.com> - README.hacking: New file. + + * README.hacking: New file. 2012-04-01 John Haque <j.eh@mchsi.com> - README.mpfr: New file. + + * README.mpfr: New file. + +2012-03-28 Arnold D. Robbins <arnold@skeeve.com> + + * 4.0.1: Release tar ball made. 2011-07-29 Arnold D. Robbins <arnold@skeeve.com> @@ -965,6 +965,7 @@ m4_include([m4/libsigsegv.m4]) m4_include([m4/longlong.m4]) m4_include([m4/mpfr.m4]) m4_include([m4/nls.m4]) +m4_include([m4/noreturn.m4]) m4_include([m4/po.m4]) m4_include([m4/progtest.m4]) m4_include([m4/readline.m4]) @@ -5480,6 +5480,32 @@ allow_newline(void) } } +/* newline_eof --- return newline or EOF as needed and adjust variables */ + +/* + * This routine used to be a macro, however GCC 4.6.2 warned about + * the result of a computation not being used. Converting to a function + * removes the warnings. + */ + +static int newline_eof() +{ + /* NB: a newline at end does not start a source line. */ + if (lasttok != NEWLINE) { + pushback(); + if (do_lint && ! eof_warned) { + lintwarn(_("source file does not end in newline")); + eof_warned = TRUE; + } + sourceline++; + return NEWLINE; + } + + sourceline--; + eof_warned = FALSE; + return LEX_EOF; +} + /* yylex --- Read the input and turn it into tokens. */ static int @@ -5499,15 +5525,7 @@ yylex(void) #define GET_INSTRUCTION(op) bcalloc(op, 1, sourceline) - /* NB: a newline at end does not start a source line. */ - -#define NEWLINE_EOF \ - (lasttok != NEWLINE ? \ - (pushback(), do_lint && ! eof_warned && \ - (lintwarn(_("source file does not end in newline")), \ - eof_warned = TRUE), sourceline++, NEWLINE) : \ - (sourceline--, eof_warned = FALSE, LEX_EOF)) - +#define NEWLINE_EOF newline_eof() yylval = (INSTRUCTION *) NULL; if (lasttok == SUBSCRIPT) { @@ -3,7 +3,7 @@ */ /* - * Copyright (C) 1986, 1988, 1989, 1991-2011 the Free Software Foundation, Inc. + * Copyright (C) 1986, 1988, 1989, 1991-2012 the Free Software Foundation, Inc. * * This file is part of GAWK, the GNU implementation of the * AWK Programming Language. @@ -2783,6 +2783,32 @@ allow_newline(void) } } +/* newline_eof --- return newline or EOF as needed and adjust variables */ + +/* + * This routine used to be a macro, however GCC 4.6.2 warned about + * the result of a computation not being used. Converting to a function + * removes the warnings. + */ + +static int newline_eof() +{ + /* NB: a newline at end does not start a source line. */ + if (lasttok != NEWLINE) { + pushback(); + if (do_lint && ! eof_warned) { + lintwarn(_("source file does not end in newline")); + eof_warned = TRUE; + } + sourceline++; + return NEWLINE; + } + + sourceline--; + eof_warned = FALSE; + return LEX_EOF; +} + /* yylex --- Read the input and turn it into tokens. */ static int @@ -2802,15 +2828,7 @@ yylex(void) #define GET_INSTRUCTION(op) bcalloc(op, 1, sourceline) - /* NB: a newline at end does not start a source line. */ - -#define NEWLINE_EOF \ - (lasttok != NEWLINE ? \ - (pushback(), do_lint && ! eof_warned && \ - (lintwarn(_("source file does not end in newline")), \ - eof_warned = TRUE), sourceline++, NEWLINE) : \ - (sourceline--, eof_warned = FALSE, LEX_EOF)) - +#define NEWLINE_EOF newline_eof() yylval = (INSTRUCTION *) NULL; if (lasttok == SUBSCRIPT) { diff --git a/awklib/ChangeLog b/awklib/ChangeLog index 2ae225be..1be7b4b7 100644 --- a/awklib/ChangeLog +++ b/awklib/ChangeLog @@ -1,3 +1,7 @@ +2012-03-28 Arnold D. Robbins <arnold@skeeve.com> + + * 4.0.1: Release tar ball made. + 2011-06-24 Arnold D. Robbins <arnold@skeeve.com> * Makefile.am (EXTRA_DIST): Add ChangeLog.0. diff --git a/awklib/Makefile.in b/awklib/Makefile.in index 1b1a274e..8ff83c41 100644 --- a/awklib/Makefile.in +++ b/awklib/Makefile.in @@ -68,11 +68,11 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/arch.m4 \ $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libsigsegv.m4 \ $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/mpfr.m4 \ - $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/readline.m4 \ - $(top_srcdir)/m4/socket.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/uintmax_t.m4 $(top_srcdir)/m4/ulonglong.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/noreturn.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/readline.m4 $(top_srcdir)/m4/socket.m4 \ + $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/uintmax_t.m4 \ + $(top_srcdir)/m4/ulonglong.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs @@ -3,7 +3,7 @@ */ /* - * Copyright (C) 1986, 1988, 1989, 1991-2011 the Free Software Foundation, Inc. + * Copyright (C) 1986, 1988, 1989, 1991-2012 the Free Software Foundation, Inc. * * This file is part of GAWK, the GNU implementation of the * AWK Programming Language. @@ -653,7 +653,7 @@ format_tree( long *cur = NULL; uintmax_t uval; int sgn; - int base = 0; + int base; /* * Although this is an array, the elements serve two different * purposes. The first element is the general buffer meant @@ -770,6 +770,7 @@ format_tree( cur = &fw; fw = 0; prec = 0; + base = 0; argnum = 0; base = 0; have_prec = FALSE; @@ -414,6 +414,19 @@ /* Define to 1 if on MINIX. */ #undef _MINIX +/* The _Noreturn keyword of C11. */ +#ifndef _Noreturn +# if (3 <= __GNUC__ || (__GNUC__ == 2 && 8 <= __GNUC_MINOR__) \ + || 0x5110 <= __SUNPRO_C) +# define _Noreturn __attribute__ ((__noreturn__)) +# elif defined _MSC_VER && 1200 <= _MSC_VER +# define _Noreturn __declspec (noreturn) +# else +# define _Noreturn +# endif +#endif + + /* Define to 2 if the system does not provide POSIX.1 features except with this defined. */ #undef _POSIX_1_SOURCE @@ -8819,6 +8819,9 @@ fi + + + for ac_func in vprintf do : ac_fn_c_check_func "$LINENO" "vprintf" "ac_cv_func_vprintf" @@ -9860,7 +9863,7 @@ for ac_func in atexit btowc fmod getgrent getgroups grantpt \ memset_ulong mkstemp setenv setlocale setsid snprintf strchr \ strerror strftime strncasecmp strcoll strtod strtoul \ system tmpfile towlower towupper tzset usleep wcrtomb \ - wcscoll wcscoll wctype + wcscoll wctype do : as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" diff --git a/configure.ac b/configure.ac index 7e07a791..e4ab7f44 100644 --- a/configure.ac +++ b/configure.ac @@ -1,7 +1,7 @@ dnl dnl configure.ac --- autoconf input file for gawk dnl -dnl Copyright (C) 1995-2011 the Free Software Foundation, Inc. +dnl Copyright (C) 1995-2012 the Free Software Foundation, Inc. dnl dnl This file is part of GAWK, the GNU implementation of the dnl AWK Programming Language. @@ -237,6 +237,9 @@ dnl AC_MSG_ERROR([Cannot find a type to use in place of socklen_t]) ]) TYPE_SOCKLEN_T +dnl Check for C11 _Noreturn +GAWK_AC_NORETURN + dnl checks for functions AC_FUNC_VPRINTF AC_FUNC_MKTIME @@ -268,7 +271,7 @@ AC_CHECK_FUNCS(atexit btowc fmod getgrent getgroups grantpt \ memset_ulong mkstemp setenv setlocale setsid snprintf strchr \ strerror strftime strncasecmp strcoll strtod strtoul \ system tmpfile towlower towupper tzset usleep wcrtomb \ - wcscoll wcscoll wctype) + wcscoll wctype) dnl this check is for both mbrtowc and the mbstate_t type, which is good AC_FUNC_MBRTOWC @@ -1,5 +1,5 @@ /* dfa.c - deterministic extended regexp routines for GNU - Copyright (C) 1988, 1998, 2000, 2002, 2004-2005, 2007-2011 Free Software + Copyright (C) 1988, 1998, 2000, 2002, 2004-2005, 2007-2012 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify @@ -58,18 +58,25 @@ /* We can handle multibyte strings. */ #include <wchar.h> #include <wctype.h> - -#if HAVE_LANGINFO_CODESET -# include <langinfo.h> -#endif #endif #ifdef GAWK #define bool int #define true (1) #define false (0) + +/* The __pure__ attribute was added in gcc 2.96. */ +#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96) +# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__)) +#else +# define _GL_ATTRIBUTE_PURE /* empty */ +#endif #endif /* GAWK */ +#if HAVE_LANGINFO_CODESET +# include <langinfo.h> +#endif + #include "regex.h" #include "dfa.h" #include "xalloc.h" @@ -112,7 +119,28 @@ typedef int charclass[CHARCLASS_INTS]; /* Convert a possibly-signed character to an unsigned character. This is a bit safer than casting to unsigned char, since it catches some type errors that the cast doesn't. */ -static inline unsigned char to_uchar (char ch) { return ch; } +static inline unsigned char +to_uchar (char ch) +{ + return ch; +} + +/* Contexts tell us whether a character is a newline or a word constituent. + Word-constituent characters are those that satisfy iswalnum(), plus '_'. + Each character has a single CTX_* value; bitmasks of CTX_* values denote + a particular character class. + + A state also stores a context value, which is a bitmask of CTX_* values. + A state's context represents a set of characters that the state's + predecessors must match. For example, a state whose context does not + include CTX_LETTER will never have transitions where the previous + character is a word constituent. A state whose context is CTX_ANY + might have transitions from any character. */ + +#define CTX_NONE 1 +#define CTX_LETTER 2 +#define CTX_NEWLINE 4 +#define CTX_ANY 7 /* Sometimes characters can only be matched depending on the surrounding context. Such context decisions depend on what the previous character @@ -121,54 +149,55 @@ static inline unsigned char to_uchar (char ch) { return ch; } is set indicates that the constraint succeeds in the corresponding context. - bit 7 - previous and current are newlines - bit 6 - previous was newline, current isn't - bit 5 - previous wasn't newline, current is - bit 4 - neither previous nor current is a newline - bit 3 - previous and current are word-constituents - bit 2 - previous was word-constituent, current isn't - bit 1 - previous wasn't word-constituent, current is - bit 0 - neither previous nor current is word-constituent - - Word-constituent characters are those that satisfy isalnum(). + bit 8-11 - valid contexts when next character is CTX_NEWLINE + bit 4-7 - valid contexts when next character is CTX_LETTER + bit 0-3 - valid contexts when next character is CTX_NONE The macro SUCCEEDS_IN_CONTEXT determines whether a given constraint - succeeds in a particular context. Prevn is true if the previous character - was a newline, currn is true if the lookahead character is a newline. - Prevl and currl similarly depend upon whether the previous and current - characters are word-constituent letters. */ -#define MATCHES_NEWLINE_CONTEXT(constraint, prevn, currn) \ - ((constraint) & 1 << (((prevn) ? 2 : 0) + ((currn) ? 1 : 0) + 4)) -#define MATCHES_LETTER_CONTEXT(constraint, prevl, currl) \ - ((constraint) & 1 << (((prevl) ? 2 : 0) + ((currl) ? 1 : 0))) -#define SUCCEEDS_IN_CONTEXT(constraint, prevn, currn, prevl, currl) \ - (MATCHES_NEWLINE_CONTEXT(constraint, prevn, currn) \ - && MATCHES_LETTER_CONTEXT(constraint, prevl, currl)) + succeeds in a particular context. Prev is a bitmask of possible + context values for the previous character, curr is the (single-bit) + context value for the lookahead character. */ +#define NEWLINE_CONSTRAINT(constraint) (((constraint) >> 8) & 0xf) +#define LETTER_CONSTRAINT(constraint) (((constraint) >> 4) & 0xf) +#define OTHER_CONSTRAINT(constraint) ((constraint) & 0xf) + +#define SUCCEEDS_IN_CONTEXT(constraint, prev, curr) \ + ((((curr) & CTX_NONE ? OTHER_CONSTRAINT(constraint) : 0) \ + | ((curr) & CTX_LETTER ? LETTER_CONSTRAINT(constraint) : 0) \ + | ((curr) & CTX_NEWLINE ? NEWLINE_CONSTRAINT(constraint) : 0)) & (prev)) /* The following macros give information about what a constraint depends on. */ +#define PREV_NEWLINE_CONSTRAINT(constraint) (((constraint) >> 2) & 0x111) +#define PREV_LETTER_CONSTRAINT(constraint) (((constraint) >> 1) & 0x111) +#define PREV_OTHER_CONSTRAINT(constraint) ((constraint) & 0x111) + #define PREV_NEWLINE_DEPENDENT(constraint) \ - (((constraint) & 0xc0) >> 2 != ((constraint) & 0x30)) + (PREV_NEWLINE_CONSTRAINT (constraint) != PREV_OTHER_CONSTRAINT (constraint)) #define PREV_LETTER_DEPENDENT(constraint) \ - (((constraint) & 0x0c) >> 2 != ((constraint) & 0x03)) + (PREV_LETTER_CONSTRAINT (constraint) != PREV_OTHER_CONSTRAINT (constraint)) /* Tokens that match the empty string subject to some constraint actually work by applying that constraint to determine what may follow them, taking into account what has gone before. The following values are the constraints corresponding to the special tokens previously defined. */ -#define NO_CONSTRAINT 0xff -#define BEGLINE_CONSTRAINT 0xcf -#define ENDLINE_CONSTRAINT 0xaf -#define BEGWORD_CONSTRAINT 0xf2 -#define ENDWORD_CONSTRAINT 0xf4 -#define LIMWORD_CONSTRAINT 0xf6 -#define NOTLIMWORD_CONSTRAINT 0xf9 +#define NO_CONSTRAINT 0x777 +#define BEGLINE_CONSTRAINT 0x444 +#define ENDLINE_CONSTRAINT 0x700 +#define BEGWORD_CONSTRAINT 0x050 +#define ENDWORD_CONSTRAINT 0x202 +#define LIMWORD_CONSTRAINT 0x252 +#define NOTLIMWORD_CONSTRAINT 0x525 /* The regexp is parsed into an array of tokens in postfix form. Some tokens are operators and others are terminal symbols. Most (but not all) of these codes are returned by the lexical analyzer. */ -typedef enum + +typedef ptrdiff_t token; + +/* Predefined token values. */ +enum { - END = -1, /* END is a terminal symbol that matches the + END = -1, /* END is a terminal symbol that matches the end of input; any value of END or less in the parse tree is such a symbol. Accepting states of the DFA are those that would have @@ -176,83 +205,83 @@ typedef enum /* Ordinary character values are terminal symbols that match themselves. */ - EMPTY = NOTCHAR, /* EMPTY is a terminal symbol that matches + EMPTY = NOTCHAR, /* EMPTY is a terminal symbol that matches the empty string. */ - BACKREF, /* BACKREF is generated by \<digit>; it + BACKREF, /* BACKREF is generated by \<digit>; it is not completely handled. If the scanner detects a transition on backref, it returns a kind of "semi-success" indicating that the match will have to be verified with a backtracking matcher. */ - BEGLINE, /* BEGLINE is a terminal symbol that matches + BEGLINE, /* BEGLINE is a terminal symbol that matches the empty string if it is at the beginning of a line. */ - ENDLINE, /* ENDLINE is a terminal symbol that matches + ENDLINE, /* ENDLINE is a terminal symbol that matches the empty string if it is at the end of a line. */ - BEGWORD, /* BEGWORD is a terminal symbol that matches + BEGWORD, /* BEGWORD is a terminal symbol that matches the empty string if it is at the beginning of a word. */ - ENDWORD, /* ENDWORD is a terminal symbol that matches + ENDWORD, /* ENDWORD is a terminal symbol that matches the empty string if it is at the end of a word. */ - LIMWORD, /* LIMWORD is a terminal symbol that matches + LIMWORD, /* LIMWORD is a terminal symbol that matches the empty string if it is at the beginning or the end of a word. */ - NOTLIMWORD, /* NOTLIMWORD is a terminal symbol that + NOTLIMWORD, /* NOTLIMWORD is a terminal symbol that matches the empty string if it is not at the beginning or end of a word. */ - QMARK, /* QMARK is an operator of one argument that - matches zero or one occurences of its + QMARK, /* QMARK is an operator of one argument that + matches zero or one occurrences of its argument. */ - STAR, /* STAR is an operator of one argument that + STAR, /* STAR is an operator of one argument that matches the Kleene closure (zero or more occurrences) of its argument. */ - PLUS, /* PLUS is an operator of one argument that + PLUS, /* PLUS is an operator of one argument that matches the positive closure (one or more occurrences) of its argument. */ - REPMN, /* REPMN is a lexical token corresponding + REPMN, /* REPMN is a lexical token corresponding to the {m,n} construct. REPMN never appears in the compiled token vector. */ - CAT, /* CAT is an operator of two arguments that + CAT, /* CAT is an operator of two arguments that matches the concatenation of its arguments. CAT is never returned by the lexical analyzer. */ - OR, /* OR is an operator of two arguments that + OR, /* OR is an operator of two arguments that matches either of its arguments. */ - LPAREN, /* LPAREN never appears in the parse tree, + LPAREN, /* LPAREN never appears in the parse tree, it is only a lexeme. */ - RPAREN, /* RPAREN never appears in the parse tree. */ + RPAREN, /* RPAREN never appears in the parse tree. */ - ANYCHAR, /* ANYCHAR is a terminal symbol that matches - any multibyte (or single byte) characters. - It is used only if MB_CUR_MAX > 1. */ + ANYCHAR, /* ANYCHAR is a terminal symbol that matches + any multibyte (or single byte) characters. + It is used only if MB_CUR_MAX > 1. */ - MBCSET, /* MBCSET is similar to CSET, but for + MBCSET, /* MBCSET is similar to CSET, but for multibyte characters. */ - WCHAR, /* Only returned by lex. wctok contains + WCHAR, /* Only returned by lex. wctok contains the wide character representation. */ - CSET /* CSET and (and any value greater) is a + CSET /* CSET and (and any value greater) is a terminal symbol that matches any of a class of characters. */ -} token; +}; /* States of the recognizer correspond to sets of positions in the parse @@ -261,116 +290,127 @@ typedef enum a constraint. */ typedef struct { - unsigned int index; /* Index into the parse array. */ - unsigned int constraint; /* Constraint for matching this position. */ + size_t index; /* Index into the parse array. */ + unsigned int constraint; /* Constraint for matching this position. */ } position; /* Sets of positions are stored as arrays. */ typedef struct { - position *elems; /* Elements of this position set. */ - int nelem; /* Number of elements in this set. */ + position *elems; /* Elements of this position set. */ + size_t nelem; /* Number of elements in this set. */ + size_t alloc; /* Number of elements allocated in ELEMS. */ } position_set; +/* Sets of leaves are also stored as arrays. */ +typedef struct +{ + size_t *elems; /* Elements of this position set. */ + size_t nelem; /* Number of elements in this set. */ +} leaf_set; + /* A state of the dfa consists of a set of positions, some flags, and the token value of the lowest-numbered position of the state that contains an END token. */ typedef struct { - int hash; /* Hash of the positions of this state. */ - position_set elems; /* Positions this state could match. */ - char newline; /* True if previous state matched newline. */ - char letter; /* True if previous state matched a letter. */ - char backref; /* True if this state matches a \<digit>. */ - unsigned char constraint; /* Constraint for this state to accept. */ - int first_end; /* Token value of the first END in elems. */ - position_set mbps; /* Positions which can match multibyte - characters. e.g. period. - These staff are used only if - MB_CUR_MAX > 1. */ + size_t hash; /* Hash of the positions of this state. */ + position_set elems; /* Positions this state could match. */ + unsigned char context; /* Context from previous state. */ + char backref; /* True if this state matches a \<digit>. */ + unsigned short constraint; /* Constraint for this state to accept. */ + token first_end; /* Token value of the first END in elems. */ + position_set mbps; /* Positions which can match multibyte + characters. e.g. period. + These staff are used only if + MB_CUR_MAX > 1. */ } dfa_state; +/* States are indexed by state_num values. These are normally + nonnegative but -1 is used as a special value. */ +typedef ptrdiff_t state_num; + /* A bracket operator. e.g. [a-c], [[:alpha:]], etc. */ struct mb_char_classes { - int cset; + ptrdiff_t cset; int invert; - wchar_t *chars; /* Normal characters. */ - int nchars; - wctype_t *ch_classes; /* Character classes. */ - int nch_classes; - wchar_t *range_sts; /* Range characters (start of the range). */ - wchar_t *range_ends; /* Range characters (end of the range). */ - int nranges; - char **equivs; /* Equivalent classes. */ - int nequivs; + wchar_t *chars; /* Normal characters. */ + size_t nchars; + wctype_t *ch_classes; /* Character classes. */ + size_t nch_classes; + wchar_t *range_sts; /* Range characters (start of the range). */ + wchar_t *range_ends; /* Range characters (end of the range). */ + size_t nranges; + char **equivs; /* Equivalent classes. */ + size_t nequivs; char **coll_elems; - int ncoll_elems; /* Collating elements. */ + size_t ncoll_elems; /* Collating elements. */ }; /* A compiled regular expression. */ struct dfa { /* Fields filled by the scanner. */ - charclass *charclasses; /* Array of character sets for CSET tokens. */ - int cindex; /* Index for adding new charclasses. */ - int calloc; /* Number of charclasses currently allocated. */ + charclass *charclasses; /* Array of character sets for CSET tokens. */ + size_t cindex; /* Index for adding new charclasses. */ + size_t calloc; /* Number of charclasses currently allocated. */ /* Fields filled by the parser. */ - token *tokens; /* Postfix parse array. */ - int tindex; /* Index for adding new tokens. */ - int talloc; /* Number of tokens currently allocated. */ - int depth; /* Depth required of an evaluation stack + token *tokens; /* Postfix parse array. */ + size_t tindex; /* Index for adding new tokens. */ + size_t talloc; /* Number of tokens currently allocated. */ + size_t depth; /* Depth required of an evaluation stack used for depth-first traversal of the parse tree. */ - int nleaves; /* Number of leaves on the parse tree. */ - int nregexps; /* Count of parallel regexps being built + size_t nleaves; /* Number of leaves on the parse tree. */ + size_t nregexps; /* Count of parallel regexps being built with dfaparse(). */ - unsigned int mb_cur_max; /* Cached value of MB_CUR_MAX. */ - int utf8_anychar_classes[5]; /* To lower ANYCHAR in UTF-8 locales. */ + unsigned int mb_cur_max; /* Cached value of MB_CUR_MAX. */ + token utf8_anychar_classes[5]; /* To lower ANYCHAR in UTF-8 locales. */ /* The following are used only if MB_CUR_MAX > 1. */ /* The value of multibyte_prop[i] is defined by following rule. - if tokens[i] < NOTCHAR - bit 0 : tokens[i] is the first byte of a character, including - single-byte characters. - bit 1 : tokens[i] is the last byte of a character, including - single-byte characters. + if tokens[i] < NOTCHAR + bit 0 : tokens[i] is the first byte of a character, including + single-byte characters. + bit 1 : tokens[i] is the last byte of a character, including + single-byte characters. - if tokens[i] = MBCSET - ("the index of mbcsets correspnd to this operator" << 2) + 3 + if tokens[i] = MBCSET + ("the index of mbcsets corresponding to this operator" << 2) + 3 e.g. tokens - = 'single_byte_a', 'multi_byte_A', single_byte_b' - = 'sb_a', 'mb_A(1st byte)', 'mb_A(2nd byte)', 'mb_A(3rd byte)', 'sb_b' + = 'single_byte_a', 'multi_byte_A', single_byte_b' + = 'sb_a', 'mb_A(1st byte)', 'mb_A(2nd byte)', 'mb_A(3rd byte)', 'sb_b' multibyte_prop - = 3 , 1 , 0 , 2 , 3 - */ - int nmultibyte_prop; + = 3 , 1 , 0 , 2 , 3 + */ + size_t nmultibyte_prop; int *multibyte_prop; /* Array of the bracket expression in the DFA. */ struct mb_char_classes *mbcsets; - int nmbcsets; - int mbcsets_alloc; + size_t nmbcsets; + size_t mbcsets_alloc; /* Fields filled by the state builder. */ - dfa_state *states; /* States of the dfa. */ - int sindex; /* Index for adding new states. */ - int salloc; /* Number of states currently allocated. */ + dfa_state *states; /* States of the dfa. */ + state_num sindex; /* Index for adding new states. */ + state_num salloc; /* Number of states currently allocated. */ /* Fields filled by the parse tree->NFA conversion. */ - position_set *follows; /* Array of follow sets, indexed by position + position_set *follows; /* Array of follow sets, indexed by position index. The follow of a position is the set of positions containing characters that could conceivably follow a character matching the given position in a string matching the regexp. Allocated to the maximum possible position index. */ - int searchflag; /* True if we are supposed to build a searching + int searchflag; /* True if we are supposed to build a searching as opposed to an exact matcher. A searching matcher finds the first and shortest string matching a regexp anywhere in the buffer, @@ -379,29 +419,29 @@ struct dfa beginning of the buffer. */ /* Fields filled by dfaexec. */ - int tralloc; /* Number of transition tables that have + state_num tralloc; /* Number of transition tables that have slots so far. */ - int trcount; /* Number of transition tables that have + int trcount; /* Number of transition tables that have actually been built. */ - int **trans; /* Transition tables for states that can + state_num **trans; /* Transition tables for states that can never accept. If the transitions for a state have not yet been computed, or the state could possibly accept, its entry in this table is NULL. */ - int **realtrans; /* Trans always points to realtrans + 1; this + state_num **realtrans; /* Trans always points to realtrans + 1; this is so trans[-1] can contain NULL. */ - int **fails; /* Transition tables after failing to accept + state_num **fails; /* Transition tables after failing to accept on a state that potentially could do so. */ - int *success; /* Table of acceptance conditions used in + int *success; /* Table of acceptance conditions used in dfaexec and computed in build_state. */ - int *newlines; /* Transitions on newlines. The entry for a + state_num *newlines; /* Transitions on newlines. The entry for a newline in any transition table is always -1 so we can count lines without wasting too many cycles. The transition for a newline is stored separately and handled as a special case. Newline is also used as a sentinel at the end of the buffer. */ - struct dfamust *musts; /* List of strings, at least one of which + struct dfamust *musts; /* List of strings, at least one of which is known to appear in any r.e. matching the dfa. */ }; @@ -413,9 +453,8 @@ struct dfa /* ACCEPTS_IN_CONTEXT returns true if the given state accepts in the specified context. */ -#define ACCEPTS_IN_CONTEXT(prevn, currn, prevl, currl, state, dfa) \ - SUCCEEDS_IN_CONTEXT((dfa).states[state].constraint, \ - prevn, currn, prevl, currl) +#define ACCEPTS_IN_CONTEXT(prev, curr, state, dfa) \ + SUCCEEDS_IN_CONTEXT ((dfa).states[state].constraint, prev, curr) static void dfamust (struct dfa *dfa); static void regexp (void); @@ -445,7 +484,6 @@ static void regexp (void); #define REALLOC_IF_NECESSARY(p, n_alloc, n_required) \ do \ { \ - assert (0 <= (n_required)); \ if ((n_alloc) <= (n_required)) \ { \ size_t new_n_alloc = (n_required) + !(p); \ @@ -464,33 +502,72 @@ prtok (token t) char const *s; if (t < 0) - fprintf(stderr, "END"); + fprintf (stderr, "END"); else if (t < NOTCHAR) - fprintf(stderr, "%c", t); + { + int ch = t; + fprintf (stderr, "%c", ch); + } else { switch (t) { - case EMPTY: s = "EMPTY"; break; - case BACKREF: s = "BACKREF"; break; - case BEGLINE: s = "BEGLINE"; break; - case ENDLINE: s = "ENDLINE"; break; - case BEGWORD: s = "BEGWORD"; break; - case ENDWORD: s = "ENDWORD"; break; - case LIMWORD: s = "LIMWORD"; break; - case NOTLIMWORD: s = "NOTLIMWORD"; break; - case QMARK: s = "QMARK"; break; - case STAR: s = "STAR"; break; - case PLUS: s = "PLUS"; break; - case CAT: s = "CAT"; break; - case OR: s = "OR"; break; - case LPAREN: s = "LPAREN"; break; - case RPAREN: s = "RPAREN"; break; - case ANYCHAR: s = "ANYCHAR"; break; - case MBCSET: s = "MBCSET"; break; - default: s = "CSET"; break; + case EMPTY: + s = "EMPTY"; + break; + case BACKREF: + s = "BACKREF"; + break; + case BEGLINE: + s = "BEGLINE"; + break; + case ENDLINE: + s = "ENDLINE"; + break; + case BEGWORD: + s = "BEGWORD"; + break; + case ENDWORD: + s = "ENDWORD"; + break; + case LIMWORD: + s = "LIMWORD"; + break; + case NOTLIMWORD: + s = "NOTLIMWORD"; + break; + case QMARK: + s = "QMARK"; + break; + case STAR: + s = "STAR"; + break; + case PLUS: + s = "PLUS"; + break; + case CAT: + s = "CAT"; + break; + case OR: + s = "OR"; + break; + case LPAREN: + s = "LPAREN"; + break; + case RPAREN: + s = "RPAREN"; + break; + case ANYCHAR: + s = "ANYCHAR"; + break; + case MBCSET: + s = "MBCSET"; + break; + default: + s = "CSET"; + break; } - fprintf(stderr, "%s", s); + fprintf (stderr, "%s", s); } } #endif /* DEBUG */ @@ -546,17 +623,17 @@ equal (charclass const s1, charclass const s2) static struct dfa *dfa; /* Find the index of charclass s in dfa->charclasses, or allocate a new charclass. */ -static int +static size_t charclass_index (charclass const s) { - int i; + size_t i; for (i = 0; i < dfa->cindex; ++i) - if (equal(s, dfa->charclasses[i])) + if (equal (s, dfa->charclasses[i])) return i; - REALLOC_IF_NECESSARY(dfa->charclasses, dfa->calloc, dfa->cindex + 1); + REALLOC_IF_NECESSARY (dfa->charclasses, dfa->calloc, dfa->cindex + 1); ++dfa->cindex; - copyset(s, dfa->charclasses[i]); + copyset (s, dfa->charclasses[i]); return i; } @@ -569,14 +646,72 @@ static int case_fold; /* End-of-line byte in data. */ static unsigned char eolbyte; +/* Cache of char-context values. */ +static int sbit[NOTCHAR]; + +/* Set of characters considered letters. */ +static charclass letters; + +/* Set of characters that are newline. */ +static charclass newline; + +/* Add this to the test for whether a byte is word-constituent, since on + BSD-based systems, many values in the 128..255 range are classified as + alphabetic, while on glibc-based systems, they are not. */ +#ifdef __GLIBC__ +# define is_valid_unibyte_character(c) 1 +#else +# define is_valid_unibyte_character(c) (! (MBS_SUPPORT && btowc (c) == WEOF)) +#endif + +/* Return non-zero if C is a 'word-constituent' byte; zero otherwise. */ +#define IS_WORD_CONSTITUENT(C) \ + (is_valid_unibyte_character (C) && (isalnum (C) || (C) == '_')) + +static int +char_context (unsigned char c) +{ + if (c == eolbyte || c == 0) + return CTX_NEWLINE; + if (IS_WORD_CONSTITUENT (c)) + return CTX_LETTER; + return CTX_NONE; +} + +static int +wchar_context (wint_t wc) +{ + if (wc == (wchar_t) eolbyte || wc == 0) + return CTX_NEWLINE; + if (wc == L'_' || iswalnum (wc)) + return CTX_LETTER; + return CTX_NONE; +} + /* Entry point to set syntax options. */ void dfasyntax (reg_syntax_t bits, int fold, unsigned char eol) { + unsigned int i; + syntax_bits_set = 1; syntax_bits = bits; case_fold = fold; eolbyte = eol; + + for (i = 0; i < NOTCHAR; ++i) + { + sbit[i] = char_context (i); + switch (sbit[i]) + { + case CTX_LETTER: + setbit (i, letters); + break; + case CTX_NEWLINE: + setbit (i, newline); + break; + } + } } /* Set a bit in the charclass for the given wchar_t. Do nothing if WC @@ -612,8 +747,7 @@ static inline bool setbit_wc (wint_t wc, charclass c) { abort (); - /*NOTREACHED*/ - return false; + /*NOTREACHED*/ return false; } #endif @@ -666,38 +800,38 @@ using_utf8 (void) reader is referred to the GNU Regex documentation for the meaning of the @#%!@#%^!@ syntax bits. */ -static char const *lexptr; /* Pointer to next input character. */ -static int lexleft; /* Number of characters remaining. */ -static token lasttok; /* Previous token returned; initially END. */ -static int laststart; /* True if we're separated from beginning or (, | +static char const *lexptr; /* Pointer to next input character. */ +static size_t lexleft; /* Number of characters remaining. */ +static token lasttok; /* Previous token returned; initially END. */ +static int laststart; /* True if we're separated from beginning or (, | only by zero-width characters. */ -static int parens; /* Count of outstanding left parens. */ -static int minrep, maxrep; /* Repeat counts for {m,n}. */ +static size_t parens; /* Count of outstanding left parens. */ +static int minrep, maxrep; /* Repeat counts for {m,n}. */ -static int cur_mb_len = 1; /* Length of the multibyte representation of +static int cur_mb_len = 1; /* Length of the multibyte representation of wctok. */ /* These variables are used only if (MB_CUR_MAX > 1). */ -static mbstate_t mbs; /* Mbstate for mbrlen(). */ -static wchar_t wctok; /* Wide character representation of the current +static mbstate_t mbs; /* Mbstate for mbrlen(). */ +static wchar_t wctok; /* Wide character representation of the current multibyte character. */ -static unsigned char *mblen_buf;/* Correspond to the input buffer in dfaexec(). - Each element store the amount of remain - byte of corresponding multibyte character - in the input string. A element's value - is 0 if corresponding character is a - single byte chracter. - e.g. input : 'a', <mb(0)>, <mb(1)>, <mb(2)> - mblen_buf : 0, 3, 2, 1 - */ -static wchar_t *inputwcs; /* Wide character representation of input +static unsigned char *mblen_buf; /* Correspond to the input buffer in dfaexec(). + Each element store the amount of remain + byte of corresponding multibyte character + in the input string. A element's value + is 0 if corresponding character is a + single byte character. + e.g. input : 'a', <mb(0)>, <mb(1)>, <mb(2)> + mblen_buf : 0, 3, 2, 1 + */ +static wchar_t *inputwcs; /* Wide character representation of input string in dfaexec(). The length of this array is same as the length of input string(char array). inputstring[i] is a single-byte char, or 1st byte of a multibyte char. And inputwcs[i] is the codepoint. */ -static unsigned char const *buf_begin; /* reference to begin in dfaexec(). */ -static unsigned char const *buf_end; /* reference to end in dfaexec(). */ +static unsigned char const *buf_begin; /* reference to begin in dfaexec(). */ +static unsigned char const *buf_end; /* reference to end in dfaexec(). */ #if MBS_SUPPORT @@ -714,7 +848,7 @@ static unsigned char const *buf_end; /* reference to end in dfaexec(). */ else \ { \ wchar_t _wc; \ - cur_mb_len = mbrtowc(&_wc, lexptr, lexleft, &mbs); \ + cur_mb_len = mbrtowc (&_wc, lexptr, lexleft, &mbs); \ if (cur_mb_len <= 0) \ { \ cur_mb_len = 1; \ @@ -726,7 +860,7 @@ static unsigned char const *buf_end; /* reference to end in dfaexec(). */ lexptr += cur_mb_len; \ lexleft -= cur_mb_len; \ (wc) = _wc; \ - (c) = wctob(wc); \ + (c) = wctob (wc); \ } \ } \ } while(0) @@ -734,8 +868,8 @@ static unsigned char const *buf_end; /* reference to end in dfaexec(). */ # define FETCH(c, eoferr) \ do { \ wint_t wc; \ - FETCH_WC(c, wc, eoferr); \ - } while(0) + FETCH_WC (c, wc, eoferr); \ + } while (0) #else /* Note that characters become unsigned here. */ @@ -756,34 +890,39 @@ static unsigned char const *buf_end; /* reference to end in dfaexec(). */ #endif /* MBS_SUPPORT */ +#ifndef MIN +# define MIN(a,b) ((a) < (b) ? (a) : (b)) +#endif + typedef int predicate (int); /* The following list maps the names of the Posix named character classes to predicate functions that determine whether a given character is in the class. The leading [ has already been eaten by the lexical analyzer. */ -struct dfa_ctype { +struct dfa_ctype +{ const char *name; predicate *func; bool single_byte_only; }; static const struct dfa_ctype prednames[] = { - { "alpha", isalpha, false }, - { "upper", isupper, false }, - { "lower", islower, false }, - { "digit", isdigit, true }, - { "xdigit", isxdigit, true }, - { "space", isspace, false }, - { "punct", ispunct, false }, - { "alnum", isalnum, false }, - { "print", isprint, false }, - { "graph", isgraph, false }, - { "cntrl", iscntrl, false }, - { "blank", is_blank, false }, - { NULL, NULL, false } + {"alpha", isalpha, false}, + {"upper", isupper, false}, + {"lower", islower, false}, + {"digit", isdigit, true}, + {"xdigit", isxdigit, true}, + {"space", isspace, false}, + {"punct", ispunct, false}, + {"alnum", isalnum, false}, + {"print", isprint, false}, + {"graph", isgraph, false}, + {"cntrl", iscntrl, false}, + {"blank", is_blank, false}, + {NULL, NULL, false} }; -static const struct dfa_ctype * _GL_ATTRIBUTE_PURE +static const struct dfa_ctype *_GL_ATTRIBUTE_PURE find_pred (const char *str) { unsigned int i; @@ -817,15 +956,16 @@ parse_bracket_exp (void) /* Work area to build a mb_char_classes. */ struct mb_char_classes *work_mbc; - int chars_al, range_sts_al, range_ends_al, ch_classes_al, + size_t chars_al, range_sts_al, range_ends_al, ch_classes_al, equivs_al, coll_elems_al; - chars_al = 1; + chars_al = 0; range_sts_al = range_ends_al = 0; ch_classes_al = equivs_al = coll_elems_al = 0; if (MB_CUR_MAX > 1) { - REALLOC_IF_NECESSARY(dfa->mbcsets, dfa->mbcsets_alloc, dfa->nmbcsets + 1); + REALLOC_IF_NECESSARY (dfa->mbcsets, dfa->mbcsets_alloc, + dfa->nmbcsets + 1); /* dfa->multibyte_prop[] hold the index of dfa->mbcsets. We will update dfa->multibyte_prop[] in addtok(), because we can't @@ -851,7 +991,7 @@ parse_bracket_exp (void) colon_warning_state = (c == ':'); do { - c1 = EOF; /* mark c1 is not initialized". */ + c1 = EOF; /* mark c1 is not initialized". */ colon_warning_state &= ~2; /* Note that if we're looking at some other [:...:] construct, @@ -867,8 +1007,7 @@ parse_bracket_exp (void) /* If pattern contains `[[:', `[[.', or `[[='. */ if (c1 == ':' /* TODO: handle `[[.' and `[[=' also for MB_CUR_MAX == 1. */ - || (MB_CUR_MAX > 1 && (c1 == '.' || c1 == '=')) - ) + || (MB_CUR_MAX > 1 && (c1 == '.' || c1 == '='))) { size_t len = 0; for (;;) @@ -890,57 +1029,48 @@ parse_bracket_exp (void) /* build character class. */ { char const *class - = (case_fold && (STREQ (str, "upper") - || STREQ (str, "lower")) - ? "alpha" - : str); + = (case_fold && (STREQ (str, "upper") + || STREQ (str, "lower")) ? "alpha" : str); const struct dfa_ctype *pred = find_pred (class); if (!pred) - dfaerror(_("invalid character class")); + dfaerror (_("invalid character class")); if (MB_CUR_MAX > 1 && !pred->single_byte_only) { /* Store the character class as wctype_t. */ wctype_t wt = wctype (class); - if (ch_classes_al == 0) - MALLOC(work_mbc->ch_classes, ++ch_classes_al); - REALLOC_IF_NECESSARY(work_mbc->ch_classes, - ch_classes_al, - work_mbc->nch_classes + 1); + REALLOC_IF_NECESSARY (work_mbc->ch_classes, + ch_classes_al, + work_mbc->nch_classes + 1); work_mbc->ch_classes[work_mbc->nch_classes++] = wt; } for (c2 = 0; c2 < NOTCHAR; ++c2) - if (pred->func(c2)) + if (pred->func (c2)) setbit_case_fold_c (c2, ccl); } else if (MBS_SUPPORT && (c1 == '=' || c1 == '.')) { char *elem; - MALLOC(elem, len + 1); - strncpy(elem, str, len + 1); + MALLOC (elem, len + 1); + strncpy (elem, str, len + 1); if (c1 == '=') /* build equivalent class. */ { - if (equivs_al == 0) - MALLOC(work_mbc->equivs, ++equivs_al); - REALLOC_IF_NECESSARY(work_mbc->equivs, - equivs_al, - work_mbc->nequivs + 1); + REALLOC_IF_NECESSARY (work_mbc->equivs, + equivs_al, work_mbc->nequivs + 1); work_mbc->equivs[work_mbc->nequivs++] = elem; } if (c1 == '.') /* build collating element. */ { - if (coll_elems_al == 0) - MALLOC(work_mbc->coll_elems, ++coll_elems_al); - REALLOC_IF_NECESSARY(work_mbc->coll_elems, - coll_elems_al, - work_mbc->ncoll_elems + 1); + REALLOC_IF_NECESSARY (work_mbc->coll_elems, + coll_elems_al, + work_mbc->ncoll_elems + 1); work_mbc->coll_elems[work_mbc->ncoll_elems++] = elem; } } @@ -956,15 +1086,15 @@ parse_bracket_exp (void) } if (c == '\\' && (syntax_bits & RE_BACKSLASH_ESCAPE_IN_LISTS)) - FETCH_WC(c, wc, _("unbalanced [")); + FETCH_WC (c, wc, _("unbalanced [")); if (c1 == EOF) - FETCH_WC(c1, wc1, _("unbalanced [")); + FETCH_WC (c1, wc1, _("unbalanced [")); if (c1 == '-') /* build range characters. */ { - FETCH_WC(c2, wc2, _("unbalanced [")); + FETCH_WC (c2, wc2, _("unbalanced [")); if (c2 == ']') { /* In the case [x-], the - is an ordinary hyphen, @@ -976,37 +1106,31 @@ parse_bracket_exp (void) if (c1 == '-' && c2 != ']') { - if (c2 == '\\' - && (syntax_bits & RE_BACKSLASH_ESCAPE_IN_LISTS)) - FETCH_WC(c2, wc2, _("unbalanced [")); + if (c2 == '\\' && (syntax_bits & RE_BACKSLASH_ESCAPE_IN_LISTS)) + FETCH_WC (c2, wc2, _("unbalanced [")); if (MB_CUR_MAX > 1) { /* When case folding map a range, say [m-z] (or even [M-z]) to the pair of ranges, [m-z] [M-Z]. */ - if (range_sts_al == 0) - { - MALLOC(work_mbc->range_sts, ++range_sts_al); - MALLOC(work_mbc->range_ends, ++range_ends_al); - } - REALLOC_IF_NECESSARY(work_mbc->range_sts, - range_sts_al, work_mbc->nranges + 1); - REALLOC_IF_NECESSARY(work_mbc->range_ends, - range_ends_al, work_mbc->nranges + 1); + REALLOC_IF_NECESSARY (work_mbc->range_sts, + range_sts_al, work_mbc->nranges + 1); + REALLOC_IF_NECESSARY (work_mbc->range_ends, + range_ends_al, work_mbc->nranges + 1); work_mbc->range_sts[work_mbc->nranges] = - case_fold ? towlower(wc) : (wchar_t)wc; + case_fold ? towlower (wc) : (wchar_t) wc; work_mbc->range_ends[work_mbc->nranges++] = - case_fold ? towlower(wc2) : (wchar_t)wc2; + case_fold ? towlower (wc2) : (wchar_t) wc2; #ifndef GREP - if (case_fold && (iswalpha(wc) || iswalpha(wc2))) + if (case_fold && (iswalpha (wc) || iswalpha (wc2))) { - REALLOC_IF_NECESSARY(work_mbc->range_sts, - range_sts_al, work_mbc->nranges + 1); - work_mbc->range_sts[work_mbc->nranges] = towupper(wc); - REALLOC_IF_NECESSARY(work_mbc->range_ends, - range_ends_al, work_mbc->nranges + 1); - work_mbc->range_ends[work_mbc->nranges++] = towupper(wc2); + REALLOC_IF_NECESSARY (work_mbc->range_sts, + range_sts_al, work_mbc->nranges + 1); + work_mbc->range_sts[work_mbc->nranges] = towupper (wc); + REALLOC_IF_NECESSARY (work_mbc->range_ends, + range_ends_al, work_mbc->nranges + 1); + work_mbc->range_ends[work_mbc->nranges++] = towupper (wc2); } #endif } @@ -1023,7 +1147,7 @@ parse_bracket_exp (void) } colon_warning_state |= 8; - FETCH_WC(c1, wc1, _("unbalanced [")); + FETCH_WC (c1, wc1, _("unbalanced [")); continue; } @@ -1035,25 +1159,25 @@ parse_bracket_exp (void) continue; } - if (case_fold && iswalpha(wc)) + if (case_fold && iswalpha (wc)) { - wc = towlower(wc); + wc = towlower (wc); if (!setbit_wc (wc, ccl)) { - REALLOC_IF_NECESSARY(work_mbc->chars, chars_al, - work_mbc->nchars + 1); + REALLOC_IF_NECESSARY (work_mbc->chars, chars_al, + work_mbc->nchars + 1); work_mbc->chars[work_mbc->nchars++] = wc; } #ifdef GREP continue; #else - wc = towupper(wc); + wc = towupper (wc); #endif } if (!setbit_wc (wc, ccl)) { - REALLOC_IF_NECESSARY(work_mbc->chars, chars_al, - work_mbc->nchars + 1); + REALLOC_IF_NECESSARY (work_mbc->chars, chars_al, + work_mbc->nchars + 1); work_mbc->chars[work_mbc->nchars++] = wc; } } @@ -1066,34 +1190,21 @@ parse_bracket_exp (void) { static charclass zeroclass; work_mbc->invert = invert; - work_mbc->cset = equal(ccl, zeroclass) ? -1 : charclass_index(ccl); + work_mbc->cset = equal (ccl, zeroclass) ? -1 : charclass_index (ccl); return MBCSET; } if (invert) { - assert(MB_CUR_MAX == 1); - notset(ccl); + assert (MB_CUR_MAX == 1); + notset (ccl); if (syntax_bits & RE_HAT_LISTS_NOT_NEWLINE) - clrbit(eolbyte, ccl); + clrbit (eolbyte, ccl); } - return CSET + charclass_index(ccl); + return CSET + charclass_index (ccl); } -/* Add this to the test for whether a byte is word-constituent, since on - BSD-based systems, many values in the 128..255 range are classified as - alphabetic, while on glibc-based systems, they are not. */ -#ifdef __GLIBC__ -# define is_valid_unibyte_character(c) 1 -#else -# define is_valid_unibyte_character(c) (MBS_SUPPORT && btowc (c) != WEOF) -#endif - -/* Return non-zero if C is a `word-constituent' byte; zero otherwise. */ -#define IS_WORD_CONSTITUENT(C) \ - (is_valid_unibyte_character(C) && (isalnum(C) || (C) == '_')) - static token lex (void) { @@ -1113,11 +1224,11 @@ lex (void) if (MB_CUR_MAX > 1) { FETCH_WC (c, wctok, NULL); - if ((int)c == EOF) + if ((int) c == EOF) goto normal_char; } else - FETCH(c, NULL); + FETCH (c, NULL); switch (c) { @@ -1125,7 +1236,7 @@ lex (void) if (backslash) goto normal_char; if (lexleft == 0) - dfaerror(_("unfinished \\ escape")); + dfaerror (_("unfinished \\ escape")); backslash = 1; break; @@ -1133,9 +1244,7 @@ lex (void) if (backslash) goto normal_char; if (syntax_bits & RE_CONTEXT_INDEP_ANCHORS - || lasttok == END - || lasttok == LPAREN - || lasttok == OR) + || lasttok == END || lasttok == LPAREN || lasttok == OR) return lasttok = BEGLINE; goto normal_char; @@ -1173,12 +1282,12 @@ lex (void) case '`': if (backslash && !(syntax_bits & RE_NO_GNU_OPS)) - return lasttok = BEGLINE; /* FIXME: should be beginning of string */ + return lasttok = BEGLINE; /* FIXME: should be beginning of string */ goto normal_char; case '\'': if (backslash && !(syntax_bits & RE_NO_GNU_OPS)) - return lasttok = ENDLINE; /* FIXME: should be end of string */ + return lasttok = ENDLINE; /* FIXME: should be end of string */ goto normal_char; case '<': @@ -1234,73 +1343,53 @@ lex (void) if (!(syntax_bits & RE_CONTEXT_INDEP_OPS) && laststart) goto normal_char; - if (syntax_bits & RE_NO_BK_BRACES) - { - /* Scan ahead for a valid interval; if it's not valid, - treat it as a literal '{'. */ - int lo = -1, hi = -1; - char const *p = lexptr; - char const *lim = p + lexleft; - for (; p != lim && ISASCIIDIGIT (*p); p++) - lo = (lo < 0 ? 0 : lo * 10) + *p - '0'; - if (p != lim && *p == ',') - while (++p != lim && ISASCIIDIGIT (*p)) - hi = (hi < 0 ? 0 : hi * 10) + *p - '0'; - else - hi = lo; - if (p == lim || *p != '}' - || lo < 0 || RE_DUP_MAX < hi || (0 <= hi && hi < lo)) - goto normal_char; - } - - minrep = 0; /* Cases: {M} - exact count {M,} - minimum count, maximum is infinity + {,N} - 0 through N + {,} - 0 to infinity (same as '*') {M,N} - M through N */ - FETCH(c, _("unfinished repeat count")); - if (ISASCIIDIGIT (c)) - { - minrep = c - '0'; - for (;;) - { - FETCH(c, _("unfinished repeat count")); - if (! ISASCIIDIGIT (c)) - break; - minrep = 10 * minrep + c - '0'; - } - } - else - dfaerror(_("malformed repeat count")); - if (c == ',') - { - FETCH (c, _("unfinished repeat count")); - if (! ISASCIIDIGIT (c)) - maxrep = -1; - else - { - maxrep = c - '0'; - for (;;) - { - FETCH (c, _("unfinished repeat count")); - if (! ISASCIIDIGIT (c)) - break; - maxrep = 10 * maxrep + c - '0'; - } - if (0 <= maxrep && maxrep < minrep) - dfaerror (_("malformed repeat count")); - } - } - else - maxrep = minrep; - if (!(syntax_bits & RE_NO_BK_BRACES)) - { - if (c != '\\') - dfaerror(_("malformed repeat count")); - FETCH(c, _("unfinished repeat count")); - } - if (c != '}') - dfaerror(_("malformed repeat count")); + { + char const *p = lexptr; + char const *lim = p + lexleft; + minrep = maxrep = -1; + for (; p != lim && ISASCIIDIGIT (*p); p++) + { + if (minrep < 0) + minrep = *p - '0'; + else + minrep = MIN (RE_DUP_MAX + 1, minrep * 10 + *p - '0'); + } + if (p != lim) + { + if (*p != ',') + maxrep = minrep; + else + { + if (minrep < 0) + minrep = 0; + while (++p != lim && ISASCIIDIGIT (*p)) + { + if (maxrep < 0) + maxrep = *p - '0'; + else + maxrep = MIN (RE_DUP_MAX + 1, maxrep * 10 + *p - '0'); + } + } + } + if (! ((! backslash || (p != lim && *p++ == '\\')) + && p != lim && *p++ == '}' + && 0 <= minrep && (maxrep < 0 || minrep <= maxrep))) + { + if (syntax_bits & RE_INVALID_INTERVAL_ORD) + goto normal_char; + dfaerror (_("Invalid content of \\{\\}")); + } + if (RE_DUP_MAX < maxrep) + dfaerror (_("Regular expression too big")); + lexptr = p; + lexleft = lim - p; + } laststart = 0; return lasttok = REPMN; @@ -1314,8 +1403,7 @@ lex (void) case '\n': if (syntax_bits & RE_LIMITED_OPS - || backslash - || !(syntax_bits & RE_NEWLINE_ALT)) + || backslash || !(syntax_bits & RE_NEWLINE_ALT)) goto normal_char; laststart = 1; return lasttok = OR; @@ -1346,46 +1434,46 @@ lex (void) laststart = 0; return lasttok = ANYCHAR; } - zeroset(ccl); - notset(ccl); + zeroset (ccl); + notset (ccl); if (!(syntax_bits & RE_DOT_NEWLINE)) - clrbit(eolbyte, ccl); + clrbit (eolbyte, ccl); if (syntax_bits & RE_DOT_NOT_NULL) - clrbit('\0', ccl); + clrbit ('\0', ccl); laststart = 0; - return lasttok = CSET + charclass_index(ccl); + return lasttok = CSET + charclass_index (ccl); case 's': case 'S': if (!backslash || (syntax_bits & RE_NO_GNU_OPS)) goto normal_char; - zeroset(ccl); + zeroset (ccl); for (c2 = 0; c2 < NOTCHAR; ++c2) - if (isspace(c2)) - setbit(c2, ccl); + if (isspace (c2)) + setbit (c2, ccl); if (c == 'S') - notset(ccl); + notset (ccl); laststart = 0; - return lasttok = CSET + charclass_index(ccl); + return lasttok = CSET + charclass_index (ccl); case 'w': case 'W': if (!backslash || (syntax_bits & RE_NO_GNU_OPS)) goto normal_char; - zeroset(ccl); + zeroset (ccl); for (c2 = 0; c2 < NOTCHAR; ++c2) - if (IS_WORD_CONSTITUENT(c2)) - setbit(c2, ccl); + if (IS_WORD_CONSTITUENT (c2)) + setbit (c2, ccl); if (c == 'W') - notset(ccl); + notset (ccl); laststart = 0; - return lasttok = CSET + charclass_index(ccl); + return lasttok = CSET + charclass_index (ccl); case '[': if (backslash) goto normal_char; laststart = 0; - return lasttok = parse_bracket_exp(); + return lasttok = parse_bracket_exp (); default: normal_char: @@ -1395,11 +1483,11 @@ lex (void) if (MB_CUR_MAX > 1) return lasttok = WCHAR; - if (case_fold && isalpha(c)) + if (case_fold && isalpha (c)) { - zeroset(ccl); + zeroset (ccl); setbit_case_fold_c (c, ccl); - return lasttok = CSET + charclass_index(ccl); + return lasttok = CSET + charclass_index (ccl); } return lasttok = c; @@ -1408,14 +1496,14 @@ lex (void) /* The above loop should consume at most a backslash and some other character. */ - abort(); - return END; /* keeps pedantic compilers happy. */ + abort (); + return END; /* keeps pedantic compilers happy. */ } /* Recursive descent parser for regular expressions. */ -static token tok; /* Lookahead token. */ -static int depth; /* Current depth of a hypothetical stack +static token tok; /* Lookahead token. */ +static size_t depth; /* Current depth of a hypothetical stack holding deferred productions. This is used to determine the depth that will be required of the real stack later on in @@ -1426,12 +1514,12 @@ addtok_mb (token t, int mbprop) { if (MB_CUR_MAX > 1) { - REALLOC_IF_NECESSARY(dfa->multibyte_prop, dfa->nmultibyte_prop, - dfa->tindex + 1); + REALLOC_IF_NECESSARY (dfa->multibyte_prop, dfa->nmultibyte_prop, + dfa->tindex + 1); dfa->multibyte_prop[dfa->tindex] = mbprop; } - REALLOC_IF_NECESSARY(dfa->tokens, dfa->talloc, dfa->tindex + 1); + REALLOC_IF_NECESSARY (dfa->tokens, dfa->talloc, dfa->tindex + 1); dfa->tokens[dfa->tindex++] = t; switch (t) @@ -1472,7 +1560,7 @@ addtok (token t) This does not require UTF-8. */ if (!work_mbc->invert) { - int i; + size_t i; for (i = 0; i < work_mbc->nchars; i++) { addtok_wc (work_mbc->chars[i]); @@ -1485,12 +1573,11 @@ addtok (token t) /* UTF-8 allows treating a simple, non-inverted MBCSET like a CSET. */ if (work_mbc->invert - || (!using_utf8() && work_mbc->cset != -1) + || (!using_utf8 () && work_mbc->cset != -1) || work_mbc->nchars != 0 || work_mbc->nch_classes != 0 || work_mbc->nranges != 0 - || work_mbc->nequivs != 0 - || work_mbc->ncoll_elems != 0) + || work_mbc->nequivs != 0 || work_mbc->ncoll_elems != 0) { addtok_mb (MBCSET, ((dfa->nmbcsets - 1) << 2) + 3); if (need_or) @@ -1537,15 +1624,18 @@ addtok_wc (wint_t wc) if (cur_mb_len <= 0) buf[0] = 0; - addtok_mb(buf[0], cur_mb_len == 1 ? 3 : 1); + addtok_mb (buf[0], cur_mb_len == 1 ? 3 : 1); for (i = 1; i < cur_mb_len; i++) { - addtok_mb(buf[i], i == cur_mb_len - 1 ? 2 : 0); - addtok(CAT); + addtok_mb (buf[i], i == cur_mb_len - 1 ? 2 : 0); + addtok (CAT); } } #else -static void addtok_wc (wint_t wc) {} +static void +addtok_wc (wint_t wc) +{ +} #endif static void @@ -1553,11 +1643,11 @@ add_utf8_anychar (void) { #if MBS_SUPPORT static const charclass utf8_classes[5] = { - { 0, 0, 0, 0, ~0, ~0, 0, 0 }, /* 80-bf: non-lead bytes */ - { ~0, ~0, ~0, ~0, 0, 0, 0, 0 }, /* 00-7f: 1-byte sequence */ - { 0, 0, 0, 0, 0, 0, 0xfffffffcU, 0 }, /* c2-df: 2-byte sequence */ - { 0, 0, 0, 0, 0, 0, 0, 0xffff }, /* e0-ef: 3-byte sequence */ - { 0, 0, 0, 0, 0, 0, 0, 0xff0000 } /* f0-f7: 4-byte sequence */ + {0, 0, 0, 0, ~0, ~0, 0, 0}, /* 80-bf: non-lead bytes */ + {~0, ~0, ~0, ~0, 0, 0, 0, 0}, /* 00-7f: 1-byte sequence */ + {0, 0, 0, 0, 0, 0, 0xfffffffcU, 0}, /* c2-df: 2-byte sequence */ + {0, 0, 0, 0, 0, 0, 0, 0xffff}, /* e0-ef: 3-byte sequence */ + {0, 0, 0, 0, 0, 0, 0, 0xff0000} /* f0-f7: 4-byte sequence */ }; const unsigned int n = sizeof (utf8_classes) / sizeof (utf8_classes[0]); unsigned int i; @@ -1575,15 +1665,15 @@ add_utf8_anychar (void) if (syntax_bits & RE_DOT_NOT_NULL) clrbit ('\0', c); } - dfa->utf8_anychar_classes[i] = CSET + charclass_index(c); + dfa->utf8_anychar_classes[i] = CSET + charclass_index (c); } /* A valid UTF-8 character is - ([0x00-0x7f] - |[0xc2-0xdf][0x80-0xbf] - |[0xe0-0xef[0x80-0xbf][0x80-0xbf] - |[0xf0-f7][0x80-0xbf][0x80-0xbf][0x80-0xbf]) + ([0x00-0x7f] + |[0xc2-0xdf][0x80-0xbf] + |[0xe0-0xef[0x80-0xbf][0x80-0xbf] + |[0xf0-f7][0x80-0xbf][0x80-0xbf][0x80-0xbf]) which I'll write more concisely "B|CA|DAA|EAAA". Factor the [0x00-0x7f] and you get "B|(C|(D|EA)A)A". And since the token buffer is in reverse @@ -1643,28 +1733,28 @@ atom (void) } else if (MBS_SUPPORT && tok == WCHAR) { - addtok_wc (case_fold ? towlower(wctok) : wctok); + addtok_wc (case_fold ? towlower (wctok) : wctok); #ifndef GREP - if (case_fold && iswalpha(wctok)) + if (case_fold && iswalpha (wctok)) { - addtok_wc (towupper(wctok)); + addtok_wc (towupper (wctok)); addtok (OR); } #endif - tok = lex(); + tok = lex (); } - else if (MBS_SUPPORT && tok == ANYCHAR && using_utf8()) + else if (MBS_SUPPORT && tok == ANYCHAR && using_utf8 ()) { /* For UTF-8 expand the period to a series of CSETs that define a valid UTF-8 character. This avoids using the slow multibyte path. I'm pretty sure it would be both profitable and correct to do it for any encoding; however, the optimization must be done manually as - it is done above in add_utf8_anychar. So, let's start with + it is done above in add_utf8_anychar. So, let's start with UTF-8: it is the most used, and the structure of the encoding makes the correctness more obvious. */ - add_utf8_anychar(); - tok = lex(); + add_utf8_anychar (); + tok = lex (); } else if ((tok >= 0 && tok < NOTCHAR) || tok >= CSET || tok == BACKREF || tok == BEGLINE || tok == ENDLINE || tok == BEGWORD @@ -1673,26 +1763,26 @@ atom (void) #endif /* MBS_SUPPORT */ || tok == ENDWORD || tok == LIMWORD || tok == NOTLIMWORD) { - addtok(tok); - tok = lex(); + addtok (tok); + tok = lex (); } else if (tok == LPAREN) { - tok = lex(); - regexp(); + tok = lex (); + regexp (); if (tok != RPAREN) - dfaerror(_("unbalanced (")); - tok = lex(); + dfaerror (_("unbalanced (")); + tok = lex (); } else - addtok(EMPTY); + addtok (EMPTY); } /* Return the number of tokens in the given subexpression. */ -static int _GL_ATTRIBUTE_PURE -nsubtoks (int tindex) +static size_t _GL_ATTRIBUTE_PURE +nsubtoks (size_t tindex) { - int ntoks1; + size_t ntoks1; switch (dfa->tokens[tindex - 1]) { @@ -1701,23 +1791,23 @@ nsubtoks (int tindex) case QMARK: case STAR: case PLUS: - return 1 + nsubtoks(tindex - 1); + return 1 + nsubtoks (tindex - 1); case CAT: case OR: - ntoks1 = nsubtoks(tindex - 1); - return 1 + ntoks1 + nsubtoks(tindex - 1 - ntoks1); + ntoks1 = nsubtoks (tindex - 1); + return 1 + ntoks1 + nsubtoks (tindex - 1 - ntoks1); } } /* Copy the given subexpression to the top of the tree. */ static void -copytoks (int tindex, int ntokens) +copytoks (size_t tindex, size_t ntokens) { - int i; + size_t i; for (i = 0; i < ntokens; ++i) { - addtok(dfa->tokens[tindex + i]); + addtok (dfa->tokens[tindex + i]); /* Update index into multibyte csets. */ if (MB_CUR_MAX > 1 && dfa->tokens[tindex + i] == MBCSET) dfa->multibyte_prop[dfa->tindex - 1] = dfa->multibyte_prop[tindex + i]; @@ -1727,64 +1817,65 @@ copytoks (int tindex, int ntokens) static void closure (void) { - int tindex, ntokens, i; + int i; + size_t tindex, ntokens; - atom(); + atom (); while (tok == QMARK || tok == STAR || tok == PLUS || tok == REPMN) if (tok == REPMN && (minrep || maxrep)) { - ntokens = nsubtoks(dfa->tindex); + ntokens = nsubtoks (dfa->tindex); tindex = dfa->tindex - ntokens; if (maxrep < 0) - addtok(PLUS); + addtok (PLUS); if (minrep == 0) - addtok(QMARK); + addtok (QMARK); for (i = 1; i < minrep; ++i) { - copytoks(tindex, ntokens); - addtok(CAT); + copytoks (tindex, ntokens); + addtok (CAT); } for (; i < maxrep; ++i) { - copytoks(tindex, ntokens); - addtok(QMARK); - addtok(CAT); + copytoks (tindex, ntokens); + addtok (QMARK); + addtok (CAT); } - tok = lex(); + tok = lex (); } else if (tok == REPMN) { - dfa->tindex -= nsubtoks(dfa->tindex); - tok = lex(); - closure(); + dfa->tindex -= nsubtoks (dfa->tindex); + tok = lex (); + closure (); } else { - addtok(tok); - tok = lex(); + addtok (tok); + tok = lex (); } } static void branch (void) { - closure(); + closure (); while (tok != RPAREN && tok != OR && tok >= 0) { - closure(); - addtok(CAT); + closure (); + addtok (CAT); } } static void regexp (void) { - branch(); + branch (); while (tok == OR) { - tok = lex(); - branch(); - addtok(OR); + tok = lex (); + branch (); + addtok (OR); } } @@ -1803,25 +1894,25 @@ dfaparse (char const *s, size_t len, struct dfa *d) if (MB_CUR_MAX > 1) { cur_mb_len = 0; - memset(&mbs, 0, sizeof mbs); + memset (&mbs, 0, sizeof mbs); } - if (! syntax_bits_set) - dfaerror(_("no syntax specified")); + if (!syntax_bits_set) + dfaerror (_("no syntax specified")); - tok = lex(); + tok = lex (); depth = d->depth; - regexp(); + regexp (); if (tok != END) - dfaerror(_("unbalanced )")); + dfaerror (_("unbalanced )")); - addtok(END - d->nregexps); - addtok(CAT); + addtok (END - d->nregexps); + addtok (CAT); if (d->nregexps) - addtok(OR); + addtok (OR); ++d->nregexps; } @@ -1830,24 +1921,34 @@ dfaparse (char const *s, size_t len, struct dfa *d) /* Copy one set to another; the destination must be large enough. */ static void -copy (position_set const *src, position_set *dst) +copy (position_set const *src, position_set * dst) { - memcpy(dst->elems, src->elems, sizeof(dst->elems[0]) * src->nelem); + REALLOC_IF_NECESSARY (dst->elems, dst->alloc, src->nelem); + memcpy (dst->elems, src->elems, sizeof (dst->elems[0]) * src->nelem); dst->nelem = src->nelem; } +static void +alloc_position_set (position_set * s, size_t size) +{ + MALLOC (s->elems, size); + s->alloc = size; + s->nelem = 0; +} + /* Insert position P in set S. S is maintained in sorted order on decreasing index. If there is already an entry in S with P.index then merge (logically-OR) P's constraints into the one in S. S->elems must point to an array large enough to hold the resulting set. */ static void -insert (position p, position_set *s) +insert (position p, position_set * s) { - int count = s->nelem; - int lo = 0, hi = count; + size_t count = s->nelem; + size_t lo = 0, hi = count; + size_t i; while (lo < hi) { - int mid = ((unsigned) lo + (unsigned) hi) >> 1; + size_t mid = (lo + hi) >> 1; if (s->elems[mid].index > p.index) lo = mid + 1; else @@ -1855,24 +1956,26 @@ insert (position p, position_set *s) } if (lo < count && p.index == s->elems[lo].index) - s->elems[lo].constraint |= p.constraint; - else { - int i; - for (i = count; i > lo; i--) - s->elems[i] = s->elems[i - 1]; - s->elems[lo] = p; - ++s->nelem; + s->elems[lo].constraint |= p.constraint; + return; } + + REALLOC_IF_NECESSARY (s->elems, s->alloc, count + 1); + for (i = count; i > lo; i--) + s->elems[i] = s->elems[i - 1]; + s->elems[lo] = p; + ++s->nelem; } /* Merge two sets of positions into a third. The result is exactly as if the positions of both sets were inserted into an initially empty set. */ static void -merge (position_set const *s1, position_set const *s2, position_set *m) +merge (position_set const *s1, position_set const *s2, position_set * m) { - int i = 0, j = 0; + size_t i = 0, j = 0; + REALLOC_IF_NECESSARY (m->elems, m->alloc, s1->nelem + s2->nelem); m->nelem = 0; while (i < s1->nelem && j < s2->nelem) if (s1->elems[i].index > s2->elems[j].index) @@ -1892,9 +1995,9 @@ merge (position_set const *s1, position_set const *s2, position_set *m) /* Delete a position from a set. */ static void -delete (position p, position_set *s) +delete (position p, position_set * s) { - int i; + size_t i; for (i = 0; i < s->nelem; ++i) if (p.index == s->elems[i].index) @@ -1906,17 +2009,13 @@ delete (position p, position_set *s) /* Find the index of the state corresponding to the given position set with the given preceding context, or create a new state if there is no such - state. Newline and letter tell whether we got here on a newline or - letter, respectively. */ -static int -state_index (struct dfa *d, position_set const *s, int newline, int letter) + state. Context tells whether we got here on a newline or letter. */ +static state_num +state_index (struct dfa *d, position_set const *s, int context) { - int hash = 0; + size_t hash = 0; int constraint; - int i, j; - - newline = newline ? 1 : 0; - letter = letter ? 1 : 0; + state_num i, j; for (i = 0; i < s->nelem; ++i) hash ^= s->elems[i].index + s->elems[i].constraint; @@ -1925,7 +2024,7 @@ state_index (struct dfa *d, position_set const *s, int newline, int letter) for (i = 0; i < d->sindex; ++i) { if (hash != d->states[i].hash || s->nelem != d->states[i].elems.nelem - || newline != d->states[i].newline || letter != d->states[i].letter) + || context != d->states[i].context) continue; for (j = 0; j < s->nelem; ++j) if (s->elems[j].constraint @@ -1937,12 +2036,11 @@ state_index (struct dfa *d, position_set const *s, int newline, int letter) } /* We'll have to create a new state. */ - REALLOC_IF_NECESSARY(d->states, d->salloc, d->sindex + 1); + REALLOC_IF_NECESSARY (d->states, d->salloc, d->sindex + 1); d->states[i].hash = hash; - MALLOC(d->states[i].elems.elems, s->nelem); - copy(s, &d->states[i].elems); - d->states[i].newline = newline; - d->states[i].letter = letter; + alloc_position_set (&d->states[i].elems, s->nelem); + copy (s, &d->states[i].elems); + d->states[i].context = context; d->states[i].backref = 0; d->states[i].constraint = 0; d->states[i].first_end = 0; @@ -1955,12 +2053,9 @@ state_index (struct dfa *d, position_set const *s, int newline, int letter) if (d->tokens[s->elems[j].index] < 0) { constraint = s->elems[j].constraint; - if (SUCCEEDS_IN_CONTEXT(constraint, newline, 0, letter, 0) - || SUCCEEDS_IN_CONTEXT(constraint, newline, 0, letter, 1) - || SUCCEEDS_IN_CONTEXT(constraint, newline, 1, letter, 0) - || SUCCEEDS_IN_CONTEXT(constraint, newline, 1, letter, 1)) + if (SUCCEEDS_IN_CONTEXT (constraint, context, CTX_ANY)) d->states[i].constraint |= constraint; - if (! d->states[i].first_end) + if (!d->states[i].first_end) d->states[i].first_end = d->tokens[s->elems[j].index]; } else if (d->tokens[s->elems[j].index] == BACKREF) @@ -1980,13 +2075,13 @@ state_index (struct dfa *d, position_set const *s, int newline, int letter) constraint. Repeat exhaustively until no funny positions are left. S->elems must be large enough to hold the result. */ static void -epsclosure (position_set *s, struct dfa const *d) +epsclosure (position_set * s, struct dfa const *d) { - int i, j; - char *visited; /* array of booleans, enough to use char, not int */ + size_t i, j; + char *visited; /* array of booleans, enough to use char, not int */ position p, old; - CALLOC(visited, d->tindex); + CALLOC (visited, d->tindex); for (i = 0; i < s->nelem; ++i) if (d->tokens[s->elems[i].index] >= NOTCHAR @@ -1999,7 +2094,7 @@ epsclosure (position_set *s, struct dfa const *d) { old = s->elems[i]; p.constraint = old.constraint; - delete(s->elems[i], s); + delete (s->elems[i], s); if (visited[old.index]) { --i; @@ -2032,15 +2127,62 @@ epsclosure (position_set *s, struct dfa const *d) for (j = 0; j < d->follows[old.index].nelem; ++j) { p.index = d->follows[old.index].elems[j].index; - insert(p, s); + insert (p, s); } /* Force rescan to start at the beginning. */ i = -1; } - free(visited); + free (visited); +} + +/* Returns the set of contexts for which there is at least one + character included in C. */ + +static int +charclass_context (charclass c) +{ + int context = 0; + unsigned int j; + + if (tstbit (eolbyte, c)) + context |= CTX_NEWLINE; + + for (j = 0; j < CHARCLASS_INTS; ++j) + { + if (c[j] & letters[j]) + context |= CTX_LETTER; + if (c[j] & ~(letters[j] | newline[j])) + context |= CTX_NONE; + } + + return context; +} + +/* Returns the contexts on which the position set S depends. Each context + in the set of returned contexts (let's call it SC) may have a different + follow set than other contexts in SC, and also different from the + follow set of the complement set (sc ^ CTX_ANY). However, all contexts + in the complement set will have the same follow set. */ + +static int _GL_ATTRIBUTE_PURE +state_separate_contexts (position_set const *s) +{ + int separate_contexts = 0; + size_t j; + + for (j = 0; j < s->nelem; ++j) + { + if (PREV_NEWLINE_DEPENDENT (s->elems[j].constraint)) + separate_contexts |= CTX_NEWLINE; + if (PREV_LETTER_DEPENDENT (s->elems[j].constraint)) + separate_contexts |= CTX_LETTER; + } + + return separate_contexts; } + /* Perform bottom-up analysis on the parse tree, computing various functions. Note that at this point, we're pretending constructs like \< are real characters rather than constraints on what can follow them. @@ -2096,174 +2238,167 @@ epsclosure (position_set *s, struct dfa const *d) void dfaanalyze (struct dfa *d, int searchflag) { - int *nullable; /* Nullable stack. */ - int *nfirstpos; /* Element count stack for firstpos sets. */ - position *firstpos; /* Array where firstpos elements are stored. */ - int *nlastpos; /* Element count stack for lastpos sets. */ - position *lastpos; /* Array where lastpos elements are stored. */ - int *nalloc; /* Sizes of arrays allocated to follow sets. */ - position_set tmp; /* Temporary set for merging sets. */ - position_set merged; /* Result of merging sets. */ - int wants_newline; /* True if some position wants newline info. */ + int *nullable; /* Nullable stack. */ + size_t *nfirstpos; /* Element count stack for firstpos sets. */ + position *firstpos; /* Array where firstpos elements are stored. */ + size_t *nlastpos; /* Element count stack for lastpos sets. */ + position *lastpos; /* Array where lastpos elements are stored. */ + position_set tmp; /* Temporary set for merging sets. */ + position_set merged; /* Result of merging sets. */ + int separate_contexts; /* Context wanted by some position. */ int *o_nullable; - int *o_nfirst, *o_nlast; + size_t *o_nfirst, *o_nlast; position *o_firstpos, *o_lastpos; - int i, j; + size_t i, j; position *pos; #ifdef DEBUG - fprintf(stderr, "dfaanalyze:\n"); + fprintf (stderr, "dfaanalyze:\n"); for (i = 0; i < d->tindex; ++i) { - fprintf(stderr, " %d:", i); - prtok(d->tokens[i]); + fprintf (stderr, " %zd:", i); + prtok (d->tokens[i]); } - putc('\n', stderr); + putc ('\n', stderr); #endif d->searchflag = searchflag; - MALLOC(nullable, d->depth); + MALLOC (nullable, d->depth); o_nullable = nullable; - MALLOC(nfirstpos, d->depth); + MALLOC (nfirstpos, d->depth); o_nfirst = nfirstpos; - MALLOC(firstpos, d->nleaves); + MALLOC (firstpos, d->nleaves); o_firstpos = firstpos, firstpos += d->nleaves; - MALLOC(nlastpos, d->depth); + MALLOC (nlastpos, d->depth); o_nlast = nlastpos; - MALLOC(lastpos, d->nleaves); + MALLOC (lastpos, d->nleaves); o_lastpos = lastpos, lastpos += d->nleaves; - CALLOC(nalloc, d->tindex); - MALLOC(merged.elems, d->nleaves); + alloc_position_set (&merged, d->nleaves); - CALLOC(d->follows, d->tindex); + CALLOC (d->follows, d->tindex); for (i = 0; i < d->tindex; ++i) { - switch (d->tokens[i]) - { - case EMPTY: - /* The empty set is nullable. */ - *nullable++ = 1; + switch (d->tokens[i]) + { + case EMPTY: + /* The empty set is nullable. */ + *nullable++ = 1; - /* The firstpos and lastpos of the empty leaf are both empty. */ - *nfirstpos++ = *nlastpos++ = 0; - break; + /* The firstpos and lastpos of the empty leaf are both empty. */ + *nfirstpos++ = *nlastpos++ = 0; + break; - case STAR: - case PLUS: - /* Every element in the firstpos of the argument is in the follow - of every element in the lastpos. */ - tmp.nelem = nfirstpos[-1]; - tmp.elems = firstpos; - pos = lastpos; - for (j = 0; j < nlastpos[-1]; ++j) - { - merge(&tmp, &d->follows[pos[j].index], &merged); - REALLOC_IF_NECESSARY(d->follows[pos[j].index].elems, - nalloc[pos[j].index], merged.nelem); - copy(&merged, &d->follows[pos[j].index]); - } + case STAR: + case PLUS: + /* Every element in the firstpos of the argument is in the follow + of every element in the lastpos. */ + tmp.nelem = nfirstpos[-1]; + tmp.elems = firstpos; + pos = lastpos; + for (j = 0; j < nlastpos[-1]; ++j) + { + merge (&tmp, &d->follows[pos[j].index], &merged); + copy (&merged, &d->follows[pos[j].index]); + } - case QMARK: - /* A QMARK or STAR node is automatically nullable. */ - if (d->tokens[i] != PLUS) - nullable[-1] = 1; - break; + case QMARK: + /* A QMARK or STAR node is automatically nullable. */ + if (d->tokens[i] != PLUS) + nullable[-1] = 1; + break; - case CAT: - /* Every element in the firstpos of the second argument is in the - follow of every element in the lastpos of the first argument. */ - tmp.nelem = nfirstpos[-1]; - tmp.elems = firstpos; - pos = lastpos + nlastpos[-1]; - for (j = 0; j < nlastpos[-2]; ++j) - { - merge(&tmp, &d->follows[pos[j].index], &merged); - REALLOC_IF_NECESSARY(d->follows[pos[j].index].elems, - nalloc[pos[j].index], merged.nelem); - copy(&merged, &d->follows[pos[j].index]); - } + case CAT: + /* Every element in the firstpos of the second argument is in the + follow of every element in the lastpos of the first argument. */ + tmp.nelem = nfirstpos[-1]; + tmp.elems = firstpos; + pos = lastpos + nlastpos[-1]; + for (j = 0; j < nlastpos[-2]; ++j) + { + merge (&tmp, &d->follows[pos[j].index], &merged); + copy (&merged, &d->follows[pos[j].index]); + } - /* The firstpos of a CAT node is the firstpos of the first argument, - union that of the second argument if the first is nullable. */ - if (nullable[-2]) - nfirstpos[-2] += nfirstpos[-1]; - else - firstpos += nfirstpos[-1]; - --nfirstpos; + /* The firstpos of a CAT node is the firstpos of the first argument, + union that of the second argument if the first is nullable. */ + if (nullable[-2]) + nfirstpos[-2] += nfirstpos[-1]; + else + firstpos += nfirstpos[-1]; + --nfirstpos; - /* The lastpos of a CAT node is the lastpos of the second argument, - union that of the first argument if the second is nullable. */ - if (nullable[-1]) - nlastpos[-2] += nlastpos[-1]; - else - { - pos = lastpos + nlastpos[-2]; - for (j = nlastpos[-1] - 1; j >= 0; --j) - pos[j] = lastpos[j]; - lastpos += nlastpos[-2]; - nlastpos[-2] = nlastpos[-1]; - } - --nlastpos; + /* The lastpos of a CAT node is the lastpos of the second argument, + union that of the first argument if the second is nullable. */ + if (nullable[-1]) + nlastpos[-2] += nlastpos[-1]; + else + { + pos = lastpos + nlastpos[-2]; + for (j = nlastpos[-1]; j-- > 0;) + pos[j] = lastpos[j]; + lastpos += nlastpos[-2]; + nlastpos[-2] = nlastpos[-1]; + } + --nlastpos; - /* A CAT node is nullable if both arguments are nullable. */ - nullable[-2] = nullable[-1] && nullable[-2]; - --nullable; - break; + /* A CAT node is nullable if both arguments are nullable. */ + nullable[-2] = nullable[-1] && nullable[-2]; + --nullable; + break; - case OR: - /* The firstpos is the union of the firstpos of each argument. */ - nfirstpos[-2] += nfirstpos[-1]; - --nfirstpos; + case OR: + /* The firstpos is the union of the firstpos of each argument. */ + nfirstpos[-2] += nfirstpos[-1]; + --nfirstpos; - /* The lastpos is the union of the lastpos of each argument. */ - nlastpos[-2] += nlastpos[-1]; - --nlastpos; + /* The lastpos is the union of the lastpos of each argument. */ + nlastpos[-2] += nlastpos[-1]; + --nlastpos; - /* An OR node is nullable if either argument is nullable. */ - nullable[-2] = nullable[-1] || nullable[-2]; - --nullable; - break; + /* An OR node is nullable if either argument is nullable. */ + nullable[-2] = nullable[-1] || nullable[-2]; + --nullable; + break; - default: - /* Anything else is a nonempty position. (Note that special - constructs like \< are treated as nonempty strings here; - an "epsilon closure" effectively makes them nullable later. - Backreferences have to get a real position so we can detect - transitions on them later. But they are nullable. */ - *nullable++ = d->tokens[i] == BACKREF; - - /* This position is in its own firstpos and lastpos. */ - *nfirstpos++ = *nlastpos++ = 1; - --firstpos, --lastpos; - firstpos->index = lastpos->index = i; - firstpos->constraint = lastpos->constraint = NO_CONSTRAINT; - - /* Allocate the follow set for this position. */ - nalloc[i] = 1; - MALLOC(d->follows[i].elems, nalloc[i]); - break; - } + default: + /* Anything else is a nonempty position. (Note that special + constructs like \< are treated as nonempty strings here; + an "epsilon closure" effectively makes them nullable later. + Backreferences have to get a real position so we can detect + transitions on them later. But they are nullable. */ + *nullable++ = d->tokens[i] == BACKREF; + + /* This position is in its own firstpos and lastpos. */ + *nfirstpos++ = *nlastpos++ = 1; + --firstpos, --lastpos; + firstpos->index = lastpos->index = i; + firstpos->constraint = lastpos->constraint = NO_CONSTRAINT; + + /* Allocate the follow set for this position. */ + alloc_position_set (&d->follows[i], 1); + break; + } #ifdef DEBUG - /* ... balance the above nonsyntactic #ifdef goo... */ - fprintf(stderr, "node %d:", i); - prtok(d->tokens[i]); - putc('\n', stderr); - fprintf(stderr, nullable[-1] ? " nullable: yes\n" : " nullable: no\n"); - fprintf(stderr, " firstpos:"); - for (j = nfirstpos[-1] - 1; j >= 0; --j) + /* ... balance the above nonsyntactic #ifdef goo... */ + fprintf (stderr, "node %zd:", i); + prtok (d->tokens[i]); + putc ('\n', stderr); + fprintf (stderr, nullable[-1] ? " nullable: yes\n" : " nullable: no\n"); + fprintf (stderr, " firstpos:"); + for (j = nfirstpos[-1]; j-- > 0;) { - fprintf(stderr, " %d:", firstpos[j].index); - prtok(d->tokens[firstpos[j].index]); + fprintf (stderr, " %zd:", firstpos[j].index); + prtok (d->tokens[firstpos[j].index]); } - fprintf(stderr, "\n lastpos:"); - for (j = nlastpos[-1] - 1; j >= 0; --j) + fprintf (stderr, "\n lastpos:"); + for (j = nlastpos[-1]; j-- > 0;) { - fprintf(stderr, " %d:", lastpos[j].index); - prtok(d->tokens[lastpos[j].index]); + fprintf (stderr, " %zd:", lastpos[j].index); + prtok (d->tokens[lastpos[j].index]); } - putc('\n', stderr); + putc ('\n', stderr); #endif } @@ -2272,57 +2407,52 @@ dfaanalyze (struct dfa *d, int searchflag) for (i = 0; i < d->tindex; ++i) if (d->tokens[i] < NOTCHAR || d->tokens[i] == BACKREF #if MBS_SUPPORT - || d->tokens[i] == ANYCHAR - || d->tokens[i] == MBCSET + || d->tokens[i] == ANYCHAR || d->tokens[i] == MBCSET #endif || d->tokens[i] >= CSET) { #ifdef DEBUG - fprintf(stderr, "follows(%d:", i); - prtok(d->tokens[i]); - fprintf(stderr, "):"); - for (j = d->follows[i].nelem - 1; j >= 0; --j) + fprintf (stderr, "follows(%zd:", i); + prtok (d->tokens[i]); + fprintf (stderr, "):"); + for (j = d->follows[i].nelem; j-- > 0;) { - fprintf(stderr, " %d:", d->follows[i].elems[j].index); - prtok(d->tokens[d->follows[i].elems[j].index]); + fprintf (stderr, " %zd:", d->follows[i].elems[j].index); + prtok (d->tokens[d->follows[i].elems[j].index]); } - putc('\n', stderr); + putc ('\n', stderr); #endif - copy(&d->follows[i], &merged); - epsclosure(&merged, d); - if (d->follows[i].nelem < merged.nelem) - REALLOC(d->follows[i].elems, merged.nelem); - copy(&merged, &d->follows[i]); + copy (&d->follows[i], &merged); + epsclosure (&merged, d); + copy (&merged, &d->follows[i]); } /* Get the epsilon closure of the firstpos of the regexp. The result will be the set of positions of state 0. */ merged.nelem = 0; for (i = 0; i < nfirstpos[-1]; ++i) - insert(firstpos[i], &merged); - epsclosure(&merged, d); - - /* Check if any of the positions of state 0 will want newline context. */ - wants_newline = 0; - for (i = 0; i < merged.nelem; ++i) - if (PREV_NEWLINE_DEPENDENT(merged.elems[i].constraint)) - wants_newline = 1; + insert (firstpos[i], &merged); + epsclosure (&merged, d); /* Build the initial state. */ d->salloc = 1; d->sindex = 0; - MALLOC(d->states, d->salloc); - state_index(d, &merged, wants_newline, 0); + MALLOC (d->states, d->salloc); - free(o_nullable); - free(o_nfirst); - free(o_firstpos); - free(o_nlast); - free(o_lastpos); - free(nalloc); - free(merged.elems); + separate_contexts = state_separate_contexts (&merged); + state_index (d, &merged, + (separate_contexts & CTX_NEWLINE + ? CTX_NEWLINE : separate_contexts ^ CTX_ANY)); + + free (o_nullable); + free (o_nfirst); + free (o_firstpos); + free (o_nlast); + free (o_lastpos); + free (merged.elems); } + /* Find, for each character, the transition out of state s of d, and store it in the appropriate slot of trans. @@ -2354,53 +2484,40 @@ dfaanalyze (struct dfa *d, int searchflag) create a new group labeled with the characters of C and insert this position in that group. */ void -dfastate (int s, struct dfa *d, int trans[]) -{ - position_set *grps; /* As many as will ever be needed. */ - charclass *labels; /* Labels corresponding to the groups. */ - int ngrps = 0; /* Number of groups actually used. */ - position pos; /* Current position being considered. */ - charclass matches; /* Set of matching characters. */ - int matchesf; /* True if matches is nonempty. */ - charclass intersect; /* Intersection with some label set. */ - int intersectf; /* True if intersect is nonempty. */ - charclass leftovers; /* Stuff in the label that didn't match. */ - int leftoversf; /* True if leftovers is nonempty. */ - static charclass letters; /* Set of characters considered letters. */ - static charclass newline; /* Set of characters that aren't newline. */ - position_set follows; /* Union of the follows of some group. */ - position_set tmp; /* Temporary space for merging sets. */ - int state; /* New state. */ - int wants_newline; /* New state wants to know newline context. */ - int state_newline; /* New state on a newline transition. */ - int wants_letter; /* New state wants to know letter context. */ - int state_letter; /* New state on a letter transition. */ - static int initialized; /* Flag for static initialization. */ - int next_isnt_1st_byte = 0; /* Flag if we can't add state0. */ - int i, j, k; - - grps = xnmalloc (NOTCHAR, sizeof *grps); - labels = xnmalloc (NOTCHAR, sizeof *labels); - - /* Initialize the set of letters, if necessary. */ - if (! initialized) - { - initialized = 1; - for (i = 0; i < NOTCHAR; ++i) - if (IS_WORD_CONSTITUENT(i)) - setbit(i, letters); - setbit(eolbyte, newline); - } - - zeroset(matches); +dfastate (state_num s, struct dfa *d, state_num trans[]) +{ + leaf_set *grps; /* As many as will ever be needed. */ + charclass *labels; /* Labels corresponding to the groups. */ + size_t ngrps = 0; /* Number of groups actually used. */ + position pos; /* Current position being considered. */ + charclass matches; /* Set of matching characters. */ + int matchesf; /* True if matches is nonempty. */ + charclass intersect; /* Intersection with some label set. */ + int intersectf; /* True if intersect is nonempty. */ + charclass leftovers; /* Stuff in the label that didn't match. */ + int leftoversf; /* True if leftovers is nonempty. */ + position_set follows; /* Union of the follows of some group. */ + position_set tmp; /* Temporary space for merging sets. */ + int possible_contexts; /* Contexts that this group can match. */ + int separate_contexts; /* Context that new state wants to know. */ + state_num state; /* New state. */ + state_num state_newline; /* New state on a newline transition. */ + state_num state_letter; /* New state on a letter transition. */ + int next_isnt_1st_byte = 0; /* Flag if we can't add state0. */ + size_t i, j, k; + + MALLOC (grps, NOTCHAR); + MALLOC (labels, NOTCHAR); + + zeroset (matches); for (i = 0; i < d->states[s].elems.nelem; ++i) { pos = d->states[s].elems.elems[i]; if (d->tokens[pos.index] >= 0 && d->tokens[pos.index] < NOTCHAR) - setbit(d->tokens[pos.index], matches); + setbit (d->tokens[pos.index], matches); else if (d->tokens[pos.index] >= CSET) - copyset(d->charclasses[d->tokens[pos.index] - CSET], matches); + copyset (d->charclasses[d->tokens[pos.index] - CSET], matches); else if (MBS_SUPPORT && (d->tokens[pos.index] == ANYCHAR || d->tokens[pos.index] == MBCSET)) @@ -2410,10 +2527,8 @@ dfastate (int s, struct dfa *d, int trans[]) must put it to d->states[s].mbps, which contains the positions which can match with a single character not a byte. */ if (d->states[s].mbps.nelem == 0) - { - MALLOC(d->states[s].mbps.elems, d->states[s].elems.nelem); - } - insert(pos, &(d->states[s].mbps)); + alloc_position_set (&d->states[s].mbps, 1); + insert (pos, &(d->states[s].mbps)); continue; } else @@ -2421,23 +2536,20 @@ dfastate (int s, struct dfa *d, int trans[]) /* Some characters may need to be eliminated from matches because they fail in the current context. */ - if (pos.constraint != 0xFF) + if (pos.constraint != NO_CONSTRAINT) { - if (! MATCHES_NEWLINE_CONTEXT(pos.constraint, - d->states[s].newline, 1)) - clrbit(eolbyte, matches); - if (! MATCHES_NEWLINE_CONTEXT(pos.constraint, - d->states[s].newline, 0)) + if (!SUCCEEDS_IN_CONTEXT (pos.constraint, + d->states[s].context, CTX_NEWLINE)) for (j = 0; j < CHARCLASS_INTS; ++j) - matches[j] &= newline[j]; - if (! MATCHES_LETTER_CONTEXT(pos.constraint, - d->states[s].letter, 1)) + matches[j] &= ~newline[j]; + if (!SUCCEEDS_IN_CONTEXT (pos.constraint, + d->states[s].context, CTX_LETTER)) for (j = 0; j < CHARCLASS_INTS; ++j) matches[j] &= ~letters[j]; - if (! MATCHES_LETTER_CONTEXT(pos.constraint, - d->states[s].letter, 0)) + if (!SUCCEEDS_IN_CONTEXT (pos.constraint, + d->states[s].context, CTX_NONE)) for (j = 0; j < CHARCLASS_INTS; ++j) - matches[j] &= letters[j]; + matches[j] &= letters[j] | newline[j]; /* If there are no characters left, there's no point in going on. */ for (j = 0; j < CHARCLASS_INTS && !matches[j]; ++j) @@ -2452,7 +2564,7 @@ dfastate (int s, struct dfa *d, int trans[]) group's label doesn't contain that character, go on to the next group. */ if (d->tokens[pos.index] >= 0 && d->tokens[pos.index] < NOTCHAR - && !tstbit(d->tokens[pos.index], labels[j])) + && !tstbit (d->tokens[pos.index], labels[j])) continue; /* Check if this group's label has a nonempty intersection with @@ -2460,7 +2572,7 @@ dfastate (int s, struct dfa *d, int trans[]) intersectf = 0; for (k = 0; k < CHARCLASS_INTS; ++k) (intersect[k] = matches[k] & labels[j][k]) ? (intersectf = 1) : 0; - if (! intersectf) + if (!intersectf) continue; /* It does; now find the set differences both ways. */ @@ -2477,20 +2589,22 @@ dfastate (int s, struct dfa *d, int trans[]) /* If there were leftovers, create a new group labeled with them. */ if (leftoversf) { - copyset(leftovers, labels[ngrps]); - copyset(intersect, labels[j]); - MALLOC(grps[ngrps].elems, d->nleaves); - copy(&grps[j], &grps[ngrps]); + copyset (leftovers, labels[ngrps]); + copyset (intersect, labels[j]); + MALLOC (grps[ngrps].elems, d->nleaves); + memcpy (grps[ngrps].elems, grps[j].elems, + sizeof (grps[j].elems[0]) * grps[j].nelem); + grps[ngrps].nelem = grps[j].nelem; ++ngrps; } - /* Put the position in the current group. Note that there is no - reason to call insert() here. */ - grps[j].elems[grps[j].nelem++] = pos; + /* Put the position in the current group. The constraint is + irrelevant here. */ + grps[j].elems[grps[j].nelem++] = pos.index; /* If every character matching the current position has been accounted for, we're done. */ - if (! matchesf) + if (!matchesf) break; } @@ -2498,44 +2612,38 @@ dfastate (int s, struct dfa *d, int trans[]) unaccounted for, then we'll have to create a new group. */ if (j == ngrps) { - copyset(matches, labels[ngrps]); - zeroset(matches); - MALLOC(grps[ngrps].elems, d->nleaves); + copyset (matches, labels[ngrps]); + zeroset (matches); + MALLOC (grps[ngrps].elems, d->nleaves); grps[ngrps].nelem = 1; - grps[ngrps].elems[0] = pos; + grps[ngrps].elems[0] = pos.index; ++ngrps; } } - MALLOC(follows.elems, d->nleaves); - MALLOC(tmp.elems, d->nleaves); + alloc_position_set (&follows, d->nleaves); + alloc_position_set (&tmp, d->nleaves); /* If we are a searching matcher, the default transition is to a state containing the positions of state 0, otherwise the default transition is to fail miserably. */ if (d->searchflag) { - wants_newline = 0; - wants_letter = 0; - for (i = 0; i < d->states[0].elems.nelem; ++i) - { - if (PREV_NEWLINE_DEPENDENT(d->states[0].elems.elems[i].constraint)) - wants_newline = 1; - if (PREV_LETTER_DEPENDENT(d->states[0].elems.elems[i].constraint)) - wants_letter = 1; - } - copy(&d->states[0].elems, &follows); - state = state_index(d, &follows, 0, 0); - if (wants_newline) - state_newline = state_index(d, &follows, 1, 0); + /* Find the state(s) corresponding to the positions of state 0. */ + copy (&d->states[0].elems, &follows); + separate_contexts = state_separate_contexts (&follows); + state = state_index (d, &follows, separate_contexts ^ CTX_ANY); + if (separate_contexts & CTX_NEWLINE) + state_newline = state_index (d, &follows, CTX_NEWLINE); else state_newline = state; - if (wants_letter) - state_letter = state_index(d, &follows, 0, 1); + if (separate_contexts & CTX_LETTER) + state_letter = state_index (d, &follows, CTX_LETTER); else state_letter = state; + for (i = 0; i < NOTCHAR; ++i) - trans[i] = (IS_WORD_CONSTITUENT(i)) ? state_letter : state; + trans[i] = (IS_WORD_CONSTITUENT (i)) ? state_letter : state; trans[eolbyte] = state_newline; } else @@ -2549,8 +2657,8 @@ dfastate (int s, struct dfa *d, int trans[]) /* Find the union of the follows of the positions of the group. This is a hideously inefficient loop. Fix it someday. */ for (j = 0; j < grps[i].nelem; ++j) - for (k = 0; k < d->follows[grps[i].elems[j].index].nelem; ++k) - insert(d->follows[grps[i].elems[j].index].elems[k], &follows); + for (k = 0; k < d->follows[grps[i].elems[j]].nelem; ++k) + insert (d->follows[grps[i].elems[j]].elems[k], &follows); if (d->mb_cur_max > 1) { @@ -2586,35 +2694,25 @@ dfastate (int s, struct dfa *d, int trans[]) /* If we are building a searching matcher, throw in the positions of state 0 as well. */ if (d->searchflag - && (! MBS_SUPPORT - || (d->mb_cur_max == 1 || !next_isnt_1st_byte))) + && (!MBS_SUPPORT || (d->mb_cur_max == 1 || !next_isnt_1st_byte))) for (j = 0; j < d->states[0].elems.nelem; ++j) - insert(d->states[0].elems.elems[j], &follows); + insert (d->states[0].elems.elems[j], &follows); /* Find out if the new state will want any context information. */ - wants_newline = 0; - if (tstbit(eolbyte, labels[i])) - for (j = 0; j < follows.nelem; ++j) - if (PREV_NEWLINE_DEPENDENT(follows.elems[j].constraint)) - wants_newline = 1; - - wants_letter = 0; - for (j = 0; j < CHARCLASS_INTS; ++j) - if (labels[i][j] & letters[j]) - break; - if (j < CHARCLASS_INTS) - for (j = 0; j < follows.nelem; ++j) - if (PREV_LETTER_DEPENDENT(follows.elems[j].constraint)) - wants_letter = 1; + possible_contexts = charclass_context (labels[i]); + separate_contexts = state_separate_contexts (&follows); /* Find the state(s) corresponding to the union of the follows. */ - state = state_index(d, &follows, 0, 0); - if (wants_newline) - state_newline = state_index(d, &follows, 1, 0); + if ((separate_contexts & possible_contexts) != possible_contexts) + state = state_index (d, &follows, separate_contexts ^ CTX_ANY); + else + state = -1; + if (separate_contexts & possible_contexts & CTX_NEWLINE) + state_newline = state_index (d, &follows, CTX_NEWLINE); else state_newline = state; - if (wants_letter) - state_letter = state_index(d, &follows, 0, 1); + if (separate_contexts & possible_contexts & CTX_LETTER) + state_letter = state_index (d, &follows, CTX_LETTER); else state_letter = state; @@ -2627,7 +2725,7 @@ dfastate (int s, struct dfa *d, int trans[]) if (c == eolbyte) trans[c] = state_newline; - else if (IS_WORD_CONSTITUENT(c)) + else if (IS_WORD_CONSTITUENT (c)) trans[c] = state_letter; else if (c < NOTCHAR) trans[c] = state; @@ -2635,11 +2733,11 @@ dfastate (int s, struct dfa *d, int trans[]) } for (i = 0; i < ngrps; ++i) - free(grps[i].elems); - free(follows.elems); - free(tmp.elems); - free(grps); - free(labels); + free (grps[i].elems); + free (follows.elems); + free (tmp.elems); + free (grps); + free (labels); } /* Some routines for manipulating a compiled dfa's transition tables. @@ -2650,10 +2748,10 @@ dfastate (int s, struct dfa *d, int trans[]) TODO: Improve this comment, get rid of the unnecessary redundancy. */ static void -build_state (int s, struct dfa *d) +build_state (state_num s, struct dfa *d) { - int *trans; /* The new transition table. */ - int i; + state_num *trans; /* The new transition table. */ + state_num i; /* Set an upper limit on the number of transition tables that will ever exist at once. 1024 is arbitrary. The idea is that the frequently @@ -2663,8 +2761,8 @@ build_state (int s, struct dfa *d) { for (i = 0; i < d->tralloc; ++i) { - free(d->trans[i]); - free(d->fails[i]); + free (d->trans[i]); + free (d->fails[i]); d->trans[i] = d->fails[i] = NULL; } d->trcount = 0; @@ -2674,18 +2772,15 @@ build_state (int s, struct dfa *d) /* Set up the success bits for this state. */ d->success[s] = 0; - if (ACCEPTS_IN_CONTEXT(d->states[s].newline, 1, d->states[s].letter, 0, - s, *d)) - d->success[s] |= 4; - if (ACCEPTS_IN_CONTEXT(d->states[s].newline, 0, d->states[s].letter, 1, - s, *d)) - d->success[s] |= 2; - if (ACCEPTS_IN_CONTEXT(d->states[s].newline, 0, d->states[s].letter, 0, - s, *d)) - d->success[s] |= 1; - - MALLOC(trans, NOTCHAR); - dfastate(s, d, trans); + if (ACCEPTS_IN_CONTEXT (d->states[s].context, CTX_NEWLINE, s, *d)) + d->success[s] |= CTX_NEWLINE; + if (ACCEPTS_IN_CONTEXT (d->states[s].context, CTX_LETTER, s, *d)) + d->success[s] |= CTX_LETTER; + if (ACCEPTS_IN_CONTEXT (d->states[s].context, CTX_NONE, s, *d)) + d->success[s] |= CTX_NONE; + + MALLOC (trans, NOTCHAR); + dfastate (s, d, trans); /* Now go through the new transition table, and make sure that the trans and fail arrays are allocated large enough to hold a pointer for the @@ -2693,15 +2788,15 @@ build_state (int s, struct dfa *d) for (i = 0; i < NOTCHAR; ++i) if (trans[i] >= d->tralloc) { - int oldalloc = d->tralloc; + state_num oldalloc = d->tralloc; while (trans[i] >= d->tralloc) d->tralloc *= 2; - REALLOC(d->realtrans, d->tralloc + 1); + REALLOC (d->realtrans, d->tralloc + 1); d->trans = d->realtrans + 1; - REALLOC(d->fails, d->tralloc); - REALLOC(d->success, d->tralloc); - REALLOC(d->newlines, d->tralloc); + REALLOC (d->fails, d->tralloc); + REALLOC (d->success, d->tralloc); + REALLOC (d->newlines, d->tralloc); while (oldalloc < d->tralloc) { d->trans[oldalloc] = NULL; @@ -2714,7 +2809,7 @@ build_state (int s, struct dfa *d) d->newlines[s] = trans[eolbyte]; trans[eolbyte] = -1; - if (ACCEPTING(s, *d)) + if (ACCEPTING (s, *d)) d->fails[s] = trans; else d->trans[s] = trans; @@ -2725,12 +2820,12 @@ build_state_zero (struct dfa *d) { d->tralloc = 1; d->trcount = 0; - CALLOC(d->realtrans, d->tralloc + 1); + CALLOC (d->realtrans, d->tralloc + 1); d->trans = d->realtrans + 1; - CALLOC(d->fails, d->tralloc); - MALLOC(d->success, d->tralloc); - MALLOC(d->newlines, d->tralloc); - build_state(0, d); + CALLOC (d->fails, d->tralloc); + MALLOC (d->success, d->tralloc); + MALLOC (d->newlines, d->tralloc); + build_state (0, d); } /* Multibyte character handling sub-routines for dfaexec. */ @@ -2751,29 +2846,29 @@ build_state_zero (struct dfa *d) ++p; \ if ((char *) p >= end) \ { \ - free(mblen_buf); \ - free(inputwcs); \ + free (mblen_buf); \ + free (inputwcs); \ *end = saved_end; \ return NULL; \ } \ } static void -realloc_trans_if_necessary(struct dfa *d, int new_state) +realloc_trans_if_necessary (struct dfa *d, state_num new_state) { /* Make sure that the trans and fail arrays are allocated large enough to hold a pointer for the new state. */ if (new_state >= d->tralloc) { - int oldalloc = d->tralloc; + state_num oldalloc = d->tralloc; while (new_state >= d->tralloc) d->tralloc *= 2; - REALLOC(d->realtrans, d->tralloc + 1); + REALLOC (d->realtrans, d->tralloc + 1); d->trans = d->realtrans + 1; - REALLOC(d->fails, d->tralloc); - REALLOC(d->success, d->tralloc); - REALLOC(d->newlines, d->tralloc); + REALLOC (d->fails, d->tralloc); + REALLOC (d->success, d->tralloc); + REALLOC (d->newlines, d->tralloc); while (oldalloc < d->tralloc) { d->trans[oldalloc] = NULL; @@ -2786,9 +2881,9 @@ realloc_trans_if_necessary(struct dfa *d, int new_state) transit_state_consume_1char. */ typedef enum { - TRANSIT_STATE_IN_PROGRESS, /* State transition has not finished. */ - TRANSIT_STATE_DONE, /* State transition has finished. */ - TRANSIT_STATE_END_BUFFER /* Reach the end of the buffer. */ + TRANSIT_STATE_IN_PROGRESS, /* State transition has not finished. */ + TRANSIT_STATE_DONE, /* State transition has finished. */ + TRANSIT_STATE_END_BUFFER /* Reach the end of the buffer. */ } status_transit_state; /* Consume a single byte and transit state from 's' to '*next_state'. @@ -2796,11 +2891,11 @@ typedef enum But state transition is done just once, otherwise matching succeed or reach the end of the buffer. */ static status_transit_state -transit_state_singlebyte (struct dfa *d, int s, unsigned char const *p, - int *next_state) +transit_state_singlebyte (struct dfa *d, state_num s, unsigned char const *p, + state_num * next_state) { - int *t; - int works = s; + state_num *t; + state_num works = s; status_transit_state rval = TRANSIT_STATE_IN_PROGRESS; @@ -2829,7 +2924,7 @@ transit_state_singlebyte (struct dfa *d, int s, unsigned char const *p, } else { - build_state(works, d); + build_state (works, d); } } *next_state = works; @@ -2840,35 +2935,29 @@ transit_state_singlebyte (struct dfa *d, int s, unsigned char const *p, current position. Return the length of the match, in bytes. POS is the position of the ".". */ static int -match_anychar (struct dfa *d, int s, position pos, int idx) +match_anychar (struct dfa *d, state_num s, position pos, size_t idx) { - int newline = 0; - int letter = 0; + int context; wchar_t wc; int mbclen; wc = inputwcs[idx]; - mbclen = (mblen_buf[idx] == 0)? 1 : mblen_buf[idx]; + mbclen = (mblen_buf[idx] == 0) ? 1 : mblen_buf[idx]; - /* Check context. */ - if (wc == (wchar_t)eolbyte) + /* Check syntax bits. */ + if (wc == (wchar_t) eolbyte) { if (!(syntax_bits & RE_DOT_NEWLINE)) return 0; - newline = 1; } - else if (wc == (wchar_t)'\0') + else if (wc == (wchar_t) '\0') { if (syntax_bits & RE_DOT_NOT_NULL) return 0; - newline = 1; } - if (iswalnum(wc) || wc == L'_') - letter = 1; - - if (!SUCCEEDS_IN_CONTEXT(pos.constraint, d->states[s].newline, - newline, d->states[s].letter, letter)) + context = wchar_context (wc); + if (!SUCCEEDS_IN_CONTEXT (pos.constraint, d->states[s].context, context)) return 0; return mbclen; @@ -2879,70 +2968,66 @@ match_anychar (struct dfa *d, int s, position pos, int idx) Return the length of the match, in bytes. POS is the position of the bracket expression. */ static int -match_mb_charset (struct dfa *d, int s, position pos, int idx) +match_mb_charset (struct dfa *d, state_num s, position pos, size_t idx) { - int i; - int match; /* Flag which represent that matching succeed. */ - int match_len; /* Length of the character (or collating element) - with which this operator match. */ - int op_len; /* Length of the operator. */ + size_t i; + int match; /* Flag which represent that matching succeed. */ + int match_len; /* Length of the character (or collating element) + with which this operator match. */ + int op_len; /* Length of the operator. */ char buffer[128]; - /* Pointer to the structure to which we are currently refering. */ + /* Pointer to the structure to which we are currently referring. */ struct mb_char_classes *work_mbc; - int newline = 0; - int letter = 0; - wchar_t wc; /* Current refering character. */ + int context; + wchar_t wc; /* Current referring character. */ wc = inputwcs[idx]; - /* Check context. */ - if (wc == (wchar_t)eolbyte) + /* Check syntax bits. */ + if (wc == (wchar_t) eolbyte) { if (!(syntax_bits & RE_DOT_NEWLINE)) return 0; - newline = 1; } - else if (wc == (wchar_t)'\0') + else if (wc == (wchar_t) '\0') { if (syntax_bits & RE_DOT_NOT_NULL) return 0; - newline = 1; } - if (iswalnum(wc) || wc == L'_') - letter = 1; - if (!SUCCEEDS_IN_CONTEXT(pos.constraint, d->states[s].newline, - newline, d->states[s].letter, letter)) + + context = wchar_context (wc); + if (!SUCCEEDS_IN_CONTEXT (pos.constraint, d->states[s].context, context)) return 0; - /* Assign the current refering operator to work_mbc. */ + /* Assign the current referring operator to work_mbc. */ work_mbc = &(d->mbcsets[(d->multibyte_prop[pos.index]) >> 2]); match = !work_mbc->invert; - match_len = (mblen_buf[idx] == 0)? 1 : mblen_buf[idx]; + match_len = (mblen_buf[idx] == 0) ? 1 : mblen_buf[idx]; /* Match in range 0-255? */ if (wc < NOTCHAR && work_mbc->cset != -1 - && tstbit((unsigned char)wc, d->charclasses[work_mbc->cset])) + && tstbit ((unsigned char) wc, d->charclasses[work_mbc->cset])) goto charset_matched; /* match with a character class? */ - for (i = 0; i<work_mbc->nch_classes; i++) + for (i = 0; i < work_mbc->nch_classes; i++) { - if (iswctype((wint_t)wc, work_mbc->ch_classes[i])) + if (iswctype ((wint_t) wc, work_mbc->ch_classes[i])) goto charset_matched; } - strncpy(buffer, (char const *) buf_begin + idx, match_len); + strncpy (buffer, (char const *) buf_begin + idx, match_len); buffer[match_len] = '\0'; /* match with an equivalent class? */ - for (i = 0; i<work_mbc->nequivs; i++) + for (i = 0; i < work_mbc->nequivs; i++) { - op_len = strlen(work_mbc->equivs[i]); - strncpy(buffer, (char const *) buf_begin + idx, op_len); + op_len = strlen (work_mbc->equivs[i]); + strncpy (buffer, (char const *) buf_begin + idx, op_len); buffer[op_len] = '\0'; - if (strcoll(work_mbc->equivs[i], buffer) == 0) + if (strcoll (work_mbc->equivs[i], buffer) == 0) { match_len = op_len; goto charset_matched; @@ -2950,13 +3035,13 @@ match_mb_charset (struct dfa *d, int s, position pos, int idx) } /* match with a collating element? */ - for (i = 0; i<work_mbc->ncoll_elems; i++) + for (i = 0; i < work_mbc->ncoll_elems; i++) { - op_len = strlen(work_mbc->coll_elems[i]); - strncpy(buffer, (char const *) buf_begin + idx, op_len); + op_len = strlen (work_mbc->coll_elems[i]); + strncpy (buffer, (char const *) buf_begin + idx, op_len); buffer[op_len] = '\0'; - if (strcoll(work_mbc->coll_elems[i], buffer) == 0) + if (strcoll (work_mbc->coll_elems[i], buffer) == 0) { match_len = op_len; goto charset_matched; @@ -2964,7 +3049,7 @@ match_mb_charset (struct dfa *d, int s, position pos, int idx) } /* match with a range? */ - for (i = 0; i<work_mbc->nranges; i++) + for (i = 0; i < work_mbc->nranges; i++) { if (work_mbc->range_sts[i] <= wc && wc <= work_mbc->range_ends[i]) @@ -2972,7 +3057,7 @@ match_mb_charset (struct dfa *d, int s, position pos, int idx) } /* match with a character? */ - for (i = 0; i<work_mbc->nchars; i++) + for (i = 0; i < work_mbc->nchars; i++) { if (wc == work_mbc->chars[i]) goto charset_matched; @@ -2980,7 +3065,7 @@ match_mb_charset (struct dfa *d, int s, position pos, int idx) match = !match; - charset_matched: +charset_matched: return match ? match_len : 0; } @@ -2991,26 +3076,26 @@ match_mb_charset (struct dfa *d, int s, position pos, int idx) `idx' is the index from the buf_begin, and it is the current position in the buffer. Caller MUST free the array which this function return. */ -static int* -check_matching_with_multibyte_ops (struct dfa *d, int s, int idx) +static int * +check_matching_with_multibyte_ops (struct dfa *d, state_num s, size_t idx) { - int i; - int* rarray; + size_t i; + int *rarray; - MALLOC(rarray, d->states[s].mbps.nelem); + MALLOC (rarray, d->states[s].mbps.nelem); for (i = 0; i < d->states[s].mbps.nelem; ++i) { position pos = d->states[s].mbps.elems[i]; - switch(d->tokens[pos.index]) + switch (d->tokens[pos.index]) { case ANYCHAR: - rarray[i] = match_anychar(d, s, pos, idx); + rarray[i] = match_anychar (d, s, pos, idx); break; case MBCSET: - rarray[i] = match_mb_charset(d, s, pos, idx); + rarray[i] = match_mb_charset (d, s, pos, idx); break; default: - break; /* cannot happen. */ + break; /* cannot happen. */ } } return rarray; @@ -3023,64 +3108,64 @@ check_matching_with_multibyte_ops (struct dfa *d, int s, int idx) `mbclen' and `pps' are the output. `mbclen' is the length of the character consumed, and `pps' is the set this function enumerate. */ static status_transit_state -transit_state_consume_1char (struct dfa *d, int s, unsigned char const **pp, - int *match_lens, int *mbclen, position_set *pps) -{ - int i, j; - int s1, s2; - int* work_mbls; +transit_state_consume_1char (struct dfa *d, state_num s, + unsigned char const **pp, + int *match_lens, int *mbclen, position_set * pps) +{ + size_t i, j; + int k; + state_num s1, s2; + int *work_mbls; status_transit_state rs = TRANSIT_STATE_DONE; /* Calculate the length of the (single/multi byte) character to which p points. */ - *mbclen = (mblen_buf[*pp - buf_begin] == 0)? 1 - : mblen_buf[*pp - buf_begin]; + *mbclen = (mblen_buf[*pp - buf_begin] == 0) ? 1 : mblen_buf[*pp - buf_begin]; /* Calculate the state which can be reached from the state `s' by consuming `*mbclen' single bytes from the buffer. */ s1 = s; - for (i = 0; i < *mbclen; i++) + for (k = 0; k < *mbclen; k++) { s2 = s1; - rs = transit_state_singlebyte(d, s2, (*pp)++, &s1); + rs = transit_state_singlebyte (d, s2, (*pp)++, &s1); } /* Copy the positions contained by `s1' to the set `pps'. */ - copy(&(d->states[s1].elems), pps); + copy (&(d->states[s1].elems), pps); - /* Check (inputed)match_lens, and initialize if it is NULL. */ + /* Check (input) match_lens, and initialize if it is NULL. */ if (match_lens == NULL && d->states[s].mbps.nelem != 0) - work_mbls = check_matching_with_multibyte_ops(d, s, *pp - buf_begin); + work_mbls = check_matching_with_multibyte_ops (d, s, *pp - buf_begin); else work_mbls = match_lens; /* Add all of the positions which can be reached from `s' by consuming a single character. */ - for (i = 0; i < d->states[s].mbps.nelem ; i++) - { + for (i = 0; i < d->states[s].mbps.nelem; i++) + { if (work_mbls[i] == *mbclen) for (j = 0; j < d->follows[d->states[s].mbps.elems[i].index].nelem; j++) - insert(d->follows[d->states[s].mbps.elems[i].index].elems[j], - pps); + insert (d->follows[d->states[s].mbps.elems[i].index].elems[j], pps); } if (match_lens == NULL && work_mbls != NULL) - free(work_mbls); + free (work_mbls); return rs; } /* Transit state from s, then return new state and update the pointer of the buffer. This function is for some operator which can match with a multi- byte character or a collating element (which may be multi characters). */ -static int -transit_state (struct dfa *d, int s, unsigned char const **pp) +static state_num +transit_state (struct dfa *d, state_num s, unsigned char const **pp) { - int s1; - int mbclen; /* The length of current input multibyte character. */ + state_num s1; + int mbclen; /* The length of current input multibyte character. */ int maxlen = 0; - int i, j; + size_t i, j; int *match_lens = NULL; - int nelem = d->states[s].mbps.nelem; /* Just a alias. */ + size_t nelem = d->states[s].mbps.nelem; /* Just a alias. */ position_set follows; unsigned char const *p1 = *pp; wchar_t wc; @@ -3090,7 +3175,7 @@ transit_state (struct dfa *d, int s, unsigned char const **pp) We check whether each of them can match or not. */ { /* Note: caller must free the return value of this function. */ - match_lens = check_matching_with_multibyte_ops(d, s, *pp - buf_begin); + match_lens = check_matching_with_multibyte_ops (d, s, *pp - buf_begin); for (i = 0; i < nelem; i++) /* Search the operator which match the longest string, @@ -3106,50 +3191,48 @@ transit_state (struct dfa *d, int s, unsigned char const **pp) We need to check only one single byte character. */ { status_transit_state rs; - rs = transit_state_singlebyte(d, s, *pp, &s1); + rs = transit_state_singlebyte (d, s, *pp, &s1); /* We must update the pointer if state transition succeeded. */ if (rs == TRANSIT_STATE_DONE) - ++*pp; + ++ * pp; - free(match_lens); + free (match_lens); return s1; } /* This state has some operators which can match a multibyte character. */ - follows.nelem = 0; - MALLOC(follows.elems, d->nleaves); + alloc_position_set (&follows, d->nleaves); /* `maxlen' may be longer than the length of a character, because it may not be a character but a (multi character) collating element. We enumerate all of the positions which `s' can reach by consuming `maxlen' bytes. */ - transit_state_consume_1char(d, s, pp, match_lens, &mbclen, &follows); + transit_state_consume_1char (d, s, pp, match_lens, &mbclen, &follows); wc = inputwcs[*pp - mbclen - buf_begin]; - s1 = state_index(d, &follows, wc == L'\n', iswalnum(wc)); - realloc_trans_if_necessary(d, s1); + s1 = state_index (d, &follows, wchar_context (wc)); + realloc_trans_if_necessary (d, s1); while (*pp - p1 < maxlen) { - follows.nelem = 0; - transit_state_consume_1char(d, s1, pp, NULL, &mbclen, &follows); + transit_state_consume_1char (d, s1, pp, NULL, &mbclen, &follows); - for (i = 0; i < nelem ; i++) + for (i = 0; i < nelem; i++) { if (match_lens[i] == *pp - p1) for (j = 0; j < d->follows[d->states[s1].mbps.elems[i].index].nelem; j++) - insert(d->follows[d->states[s1].mbps.elems[i].index].elems[j], - &follows); + insert (d->follows[d->states[s1].mbps.elems[i].index].elems[j], + &follows); } wc = inputwcs[*pp - mbclen - buf_begin]; - s1 = state_index(d, &follows, wc == L'\n', iswalnum(wc)); - realloc_trans_if_necessary(d, s1); + s1 = state_index (d, &follows, wchar_context (wc)); + realloc_trans_if_necessary (d, s1); } - free(match_lens); - free(follows.elems); + free (match_lens); + free (follows.elems); return s1; } @@ -3171,14 +3254,14 @@ prepare_wc_buf (const char *begin, const char *end) if (remain_bytes == 0) { remain_bytes - = mbrtowc(inputwcs + i, begin + i, end - begin - i + 1, &mbs); + = mbrtowc (inputwcs + i, begin + i, end - begin - i + 1, &mbs); if (remain_bytes < 1 || remain_bytes == (size_t) -1 || remain_bytes == (size_t) -2 - || (remain_bytes == 1 && inputwcs[i] == (wchar_t)begin[i])) + || (remain_bytes == 1 && inputwcs[i] == (wchar_t) begin[i])) { remain_bytes = 0; - inputwcs[i] = (wchar_t)begin[i]; + inputwcs[i] = (wchar_t) begin[i]; mblen_buf[i] = 0; if (begin[i] == eol) break; @@ -3199,7 +3282,7 @@ prepare_wc_buf (const char *begin, const char *end) buf_end = (unsigned char *) (begin + i); mblen_buf[i] = 0; - inputwcs[i] = 0; /* sentinel */ + inputwcs[i] = 0; /* sentinel */ #endif /* MBS_SUPPORT */ } @@ -3210,36 +3293,24 @@ prepare_wc_buf (const char *begin, const char *end) points to the beginning of the buffer, and END points to the first byte after its end. Note however that we store a sentinel byte (usually newline) in *END, so the actual buffer must be one byte longer. - When NEWLINE is nonzero, newlines may appear in the matching string. + When ALLOW_NL is nonzero, newlines may appear in the matching string. If COUNT is non-NULL, increment *COUNT once for each newline processed. Finally, if BACKREF is non-NULL set *BACKREF to indicate whether we encountered a back-reference (1) or not (0). The caller may use this to decide whether to fall back on a backtracking matcher. */ char * dfaexec (struct dfa *d, char const *begin, char *end, - int newline, int *count, int *backref) + int allow_nl, size_t *count, int *backref) { - int s, s1; /* Current state. */ - unsigned char const *p; /* Current input character. */ - int **trans, *t; /* Copy of d->trans so it can be optimized + state_num s, s1; /* Current state. */ + unsigned char const *p; /* Current input character. */ + state_num **trans, *t; /* Copy of d->trans so it can be optimized into a register. */ - unsigned char eol = eolbyte; /* Likewise for eolbyte. */ + unsigned char eol = eolbyte; /* Likewise for eolbyte. */ unsigned char saved_end; - static int sbit[NOTCHAR]; /* Table for anding with d->success. */ - static int sbit_init; - - if (! sbit_init) - { - unsigned int i; - - sbit_init = 1; - for (i = 0; i < NOTCHAR; ++i) - sbit[i] = (IS_WORD_CONSTITUENT(i)) ? 2 : 1; - sbit[eol] = 4; - } - if (! d->tralloc) - build_state_zero(d); + if (!d->tralloc) + build_state_zero (d); s = s1 = 0; p = (unsigned char const *) begin; @@ -3249,9 +3320,9 @@ dfaexec (struct dfa *d, char const *begin, char *end, if (d->mb_cur_max > 1) { - MALLOC(mblen_buf, end - begin + 2); - MALLOC(inputwcs, end - begin + 2); - memset(&mbs, 0, sizeof(mbstate_t)); + MALLOC (mblen_buf, end - begin + 2); + MALLOC (inputwcs, end - begin + 2); + memset (&mbs, 0, sizeof (mbstate_t)); prepare_wc_buf ((const char *) p, end); } @@ -3263,7 +3334,7 @@ dfaexec (struct dfa *d, char const *begin, char *end, if (p > buf_end) break; s1 = s; - SKIP_REMAINS_MB_IF_INITIAL_STATE(s, p); + SKIP_REMAINS_MB_IF_INITIAL_STATE (s, p); if (d->states[s].mbps.nelem == 0) { @@ -3278,15 +3349,15 @@ dfaexec (struct dfa *d, char const *begin, char *end, if (backref) { *backref = 1; - free(mblen_buf); - free(inputwcs); + free (mblen_buf); + free (inputwcs); *end = saved_end; return (char *) p; } /* Can match with a multibyte character (and multi character collating element). Transition table might be updated. */ - s = transit_state(d, s, &p); + s = transit_state (d, s, &p); trans = d->trans; } else @@ -3296,7 +3367,9 @@ dfaexec (struct dfa *d, char const *begin, char *end, s1 = t[*p++]; if ((t = trans[s1]) == NULL) { - int tmp = s; s = s1; s1 = tmp; /* swap */ + state_num tmp = s; + s = s1; + s1 = tmp; /* swap */ break; } s = t[*p++]; @@ -3311,8 +3384,8 @@ dfaexec (struct dfa *d, char const *begin, char *end, *backref = (d->states[s].backref != 0); if (d->mb_cur_max > 1) { - free(mblen_buf); - free(inputwcs); + free (mblen_buf); + free (inputwcs); } *end = saved_end; return (char *) p; @@ -3323,7 +3396,7 @@ dfaexec (struct dfa *d, char const *begin, char *end, { /* Can match with a multibyte character (and multicharacter collating element). Transition table might be updated. */ - s = transit_state(d, s, &p); + s = transit_state (d, s, &p); trans = d->trans; } else @@ -3335,7 +3408,7 @@ dfaexec (struct dfa *d, char const *begin, char *end, if ((char *) p <= end && p[-1] == eol) { if (count) - ++*count; + ++ * count; if (d->mb_cur_max > 1) prepare_wc_buf ((const char *) p, end); @@ -3346,8 +3419,8 @@ dfaexec (struct dfa *d, char const *begin, char *end, { if (d->mb_cur_max > 1) { - free(mblen_buf); - free(inputwcs); + free (mblen_buf); + free (inputwcs); } *end = saved_end; return NULL; @@ -3355,12 +3428,12 @@ dfaexec (struct dfa *d, char const *begin, char *end, if (s >= 0) { - build_state(s, d); + build_state (s, d); trans = d->trans; continue; } - if (p[-1] == eol && newline) + if (p[-1] == eol && allow_nl) { s = d->newlines[s1]; continue; @@ -3373,30 +3446,30 @@ dfaexec (struct dfa *d, char const *begin, char *end, static void free_mbdata (struct dfa *d) { - unsigned int i; + size_t i; - free(d->multibyte_prop); + free (d->multibyte_prop); d->multibyte_prop = NULL; for (i = 0; i < d->nmbcsets; ++i) { - unsigned int j; + size_t j; struct mb_char_classes *p = &(d->mbcsets[i]); - free(p->chars); - free(p->ch_classes); - free(p->range_sts); - free(p->range_ends); + free (p->chars); + free (p->ch_classes); + free (p->range_sts); + free (p->range_ends); for (j = 0; j < p->nequivs; ++j) - free(p->equivs[j]); - free(p->equivs); + free (p->equivs[j]); + free (p->equivs); for (j = 0; j < p->ncoll_elems; ++j) - free(p->coll_elems[j]); - free(p->coll_elems); + free (p->coll_elems[j]); + free (p->coll_elems); } - free(d->mbcsets); + free (d->mbcsets); d->mbcsets = NULL; d->nmbcsets = 0; } @@ -3409,33 +3482,33 @@ dfainit (struct dfa *d) memset (d, 0, sizeof *d); d->calloc = 1; - MALLOC(d->charclasses, d->calloc); + MALLOC (d->charclasses, d->calloc); d->talloc = 1; - MALLOC(d->tokens, d->talloc); + MALLOC (d->tokens, d->talloc); d->mb_cur_max = MB_CUR_MAX; if (d->mb_cur_max > 1) { d->nmultibyte_prop = 1; - MALLOC(d->multibyte_prop, d->nmultibyte_prop); + MALLOC (d->multibyte_prop, d->nmultibyte_prop); d->mbcsets_alloc = 1; - MALLOC(d->mbcsets, d->mbcsets_alloc); + MALLOC (d->mbcsets, d->mbcsets_alloc); } } static void dfaoptimize (struct dfa *d) { - unsigned int i; + size_t i; - if (!MBS_SUPPORT || !using_utf8()) + if (!MBS_SUPPORT || !using_utf8 ()) return; for (i = 0; i < d->tindex; ++i) { - switch(d->tokens[i]) + switch (d->tokens[i]) { case ANYCHAR: /* Lowered. */ @@ -3456,49 +3529,50 @@ dfaoptimize (struct dfa *d) void dfacomp (char const *s, size_t len, struct dfa *d, int searchflag) { - dfainit(d); - dfaparse(s, len, d); - dfamust(d); - dfaoptimize(d); - dfaanalyze(d, searchflag); + dfainit (d); + dfaparse (s, len, d); + dfamust (d); + dfaoptimize (d); + dfaanalyze (d, searchflag); } /* Free the storage held by the components of a dfa. */ void dfafree (struct dfa *d) { - int i; + size_t i; struct dfamust *dm, *ndm; - free(d->charclasses); - free(d->tokens); + free (d->charclasses); + free (d->tokens); if (d->mb_cur_max > 1) - free_mbdata(d); - - for (i = 0; i < d->sindex; ++i) { - free(d->states[i].elems.elems); - if (MBS_SUPPORT) - free(d->states[i].mbps.elems); - } - free(d->states); + free_mbdata (d); + + for (i = 0; i < d->sindex; ++i) + { + free (d->states[i].elems.elems); + if (MBS_SUPPORT) + free (d->states[i].mbps.elems); + } + free (d->states); for (i = 0; i < d->tindex; ++i) - free(d->follows[i].elems); - free(d->follows); + free (d->follows[i].elems); + free (d->follows); for (i = 0; i < d->tralloc; ++i) { - free(d->trans[i]); - free(d->fails[i]); + free (d->trans[i]); + free (d->fails[i]); } - free(d->realtrans); - free(d->fails); - free(d->newlines); - free(d->success); + free (d->realtrans); + free (d->fails); + free (d->newlines); + free (d->success); for (dm = d->musts; dm; dm = ndm) { ndm = dm->next; - free(dm->must); - free(dm); + free (dm->must); + free (dm); } } @@ -3605,15 +3679,15 @@ icpyalloc (char const *string) return icatalloc (NULL, string); } -static char * _GL_ATTRIBUTE_PURE +static char *_GL_ATTRIBUTE_PURE istrstr (char const *lookin, char const *lookfor) { char const *cp; size_t len; - len = strlen(lookfor); + len = strlen (lookfor); for (cp = lookin; *cp != '\0'; ++cp) - if (strncmp(cp, lookfor, len) == 0) + if (strncmp (cp, lookfor, len) == 0) return (char *) cp; return NULL; } @@ -3621,13 +3695,13 @@ istrstr (char const *lookin, char const *lookfor) static void freelist (char **cpp) { - int i; + size_t i; if (cpp == NULL) return; for (i = 0; cpp[i] != NULL; ++i) { - free(cpp[i]); + free (cpp[i]); cpp[i] = NULL; } } @@ -3635,38 +3709,38 @@ freelist (char **cpp) static char ** enlist (char **cpp, char *new, size_t len) { - int i, j; + size_t i, j; if (cpp == NULL) return NULL; - if ((new = icpyalloc(new)) == NULL) + if ((new = icpyalloc (new)) == NULL) { - freelist(cpp); + freelist (cpp); return NULL; } new[len] = '\0'; /* Is there already something in the list that's new (or longer)? */ for (i = 0; cpp[i] != NULL; ++i) - if (istrstr(cpp[i], new) != NULL) + if (istrstr (cpp[i], new) != NULL) { - free(new); + free (new); return cpp; } /* Eliminate any obsoleted strings. */ j = 0; while (cpp[j] != NULL) - if (istrstr(new, cpp[j]) == NULL) + if (istrstr (new, cpp[j]) == NULL) ++j; else { - free(cpp[j]); + free (cpp[j]); if (--i == j) break; cpp[j] = cpp[i]; cpp[i] = NULL; } /* Add the new string. */ - cpp = xnrealloc(cpp, i + 2, sizeof *cpp); + REALLOC (cpp, i + 2); cpp[i] = new; cpp[i + 1] = NULL; return cpp; @@ -3685,7 +3759,7 @@ comsubs (char *left, char const *right) if (left == NULL || right == NULL) return NULL; - cpp = malloc(sizeof *cpp); + cpp = malloc (sizeof *cpp); if (cpp == NULL) return NULL; cpp[0] = NULL; @@ -3720,13 +3794,13 @@ comsubs (char *left, char const *right) static char ** addlists (char **old, char **new) { - int i; + size_t i; if (old == NULL || new == NULL) return NULL; for (i = 0; new[i] != NULL; ++i) { - old = enlist(old, new[i], strlen(new[i])); + old = enlist (old, new[i], strlen (new[i])); if (old == NULL) break; } @@ -3740,11 +3814,11 @@ inboth (char **left, char **right) { char **both; char **temp; - int lnum, rnum; + size_t lnum, rnum; if (left == NULL || right == NULL) return NULL; - both = malloc(sizeof *both); + both = malloc (sizeof *both); if (both == NULL) return NULL; both[0] = NULL; @@ -3752,15 +3826,15 @@ inboth (char **left, char **right) { for (rnum = 0; right[rnum] != NULL; ++rnum) { - temp = comsubs(left[lnum], right[rnum]); + temp = comsubs (left[lnum], right[rnum]); if (temp == NULL) { - freelist(both); + freelist (both); return NULL; } - both = addlists(both, temp); - freelist(temp); - free(temp); + both = addlists (both, temp); + freelist (temp); + free (temp); if (both == NULL) return NULL; } @@ -3777,10 +3851,10 @@ typedef struct } must; static void -resetmust (must *mp) +resetmust (must * mp) { mp->left[0] = mp->right[0] = mp->is[0] = '\0'; - freelist(mp->in); + freelist (mp->in); } static void @@ -3789,8 +3863,8 @@ dfamust (struct dfa *d) must *musts; must *mp; char *result; - int ri; - int i; + size_t ri; + size_t i; int exact; token t; static must must0; @@ -3799,27 +3873,27 @@ dfamust (struct dfa *d) result = empty_string; exact = 0; - musts = xnmalloc(d->tindex + 1, sizeof *musts); + MALLOC (musts, d->tindex + 1); mp = musts; for (i = 0; i <= d->tindex; ++i) mp[i] = must0; for (i = 0; i <= d->tindex; ++i) { - mp[i].in = xmalloc(sizeof *mp[i].in); - mp[i].left = xmalloc(2); - mp[i].right = xmalloc(2); - mp[i].is = xmalloc(2); + mp[i].in = xmalloc (sizeof *mp[i].in); + mp[i].left = xmalloc (2); + mp[i].right = xmalloc (2); + mp[i].is = xmalloc (2); mp[i].left[0] = mp[i].right[0] = mp[i].is[0] = '\0'; mp[i].in[0] = NULL; } #ifdef DEBUG - fprintf(stderr, "dfamust:\n"); + fprintf (stderr, "dfamust:\n"); for (i = 0; i < d->tindex; ++i) { - fprintf(stderr, " %d:", i); - prtok(d->tokens[i]); + fprintf (stderr, " %zd:", i); + prtok (d->tokens[i]); } - putc('\n', stderr); + putc ('\n', stderr); #endif for (ri = 0; ri < d->tindex; ++ri) { @@ -3836,13 +3910,13 @@ dfamust (struct dfa *d) case LIMWORD: case NOTLIMWORD: case BACKREF: - resetmust(mp); + resetmust (mp); break; case STAR: case QMARK: assert (musts < mp); --mp; - resetmust(mp); + resetmust (mp); break; case OR: assert (&musts[2] <= mp); @@ -3850,7 +3924,7 @@ dfamust (struct dfa *d) char **new; must *lmp; must *rmp; - int j, ln, rn, n; + size_t j, ln, rn, n; rmp = --mp; lmp = --mp; @@ -3863,8 +3937,8 @@ dfamust (struct dfa *d) ++i; lmp->left[i] = '\0'; /* Right side */ - ln = strlen(lmp->right); - rn = strlen(rmp->right); + ln = strlen (lmp->right); + rn = strlen (rmp->right); n = ln; if (n > rn) n = rn; @@ -3874,11 +3948,11 @@ dfamust (struct dfa *d) for (j = 0; j < i; ++j) lmp->right[j] = lmp->right[(ln - i) + j]; lmp->right[j] = '\0'; - new = inboth(lmp->in, rmp->in); + new = inboth (lmp->in, rmp->in); if (new == NULL) goto done; - freelist(lmp->in); - free(lmp->in); + freelist (lmp->in); + free (lmp->in); lmp->in = new; } break; @@ -3890,7 +3964,7 @@ dfamust (struct dfa *d) case END: assert (mp == &musts[1]); for (i = 0; musts[0].in[i] != NULL; ++i) - if (strlen(musts[0].in[i]) > strlen(result)) + if (strlen (musts[0].in[i]) > strlen (result)) result = musts[0].in[i]; if (STREQ (result, musts[0].is)) exact = 1; @@ -3904,41 +3978,39 @@ dfamust (struct dfa *d) rmp = --mp; lmp = --mp; /* In. Everything in left, plus everything in - right, plus catenation of + right, plus concatenation of left's right and right's left. */ - lmp->in = addlists(lmp->in, rmp->in); + lmp->in = addlists (lmp->in, rmp->in); if (lmp->in == NULL) goto done; - if (lmp->right[0] != '\0' && - rmp->left[0] != '\0') + if (lmp->right[0] != '\0' && rmp->left[0] != '\0') { char *tp; - tp = icpyalloc(lmp->right); - tp = icatalloc(tp, rmp->left); - lmp->in = enlist(lmp->in, tp, strlen(tp)); - free(tp); + tp = icpyalloc (lmp->right); + tp = icatalloc (tp, rmp->left); + lmp->in = enlist (lmp->in, tp, strlen (tp)); + free (tp); if (lmp->in == NULL) goto done; } /* Left-hand */ if (lmp->is[0] != '\0') { - lmp->left = icatalloc(lmp->left, - rmp->left); + lmp->left = icatalloc (lmp->left, rmp->left); if (lmp->left == NULL) goto done; } /* Right-hand */ if (rmp->is[0] == '\0') lmp->right[0] = '\0'; - lmp->right = icatalloc(lmp->right, rmp->right); + lmp->right = icatalloc (lmp->right, rmp->right); if (lmp->right == NULL) goto done; /* Guaranteed to be */ if (lmp->is[0] != '\0' && rmp->is[0] != '\0') { - lmp->is = icatalloc(lmp->is, rmp->is); + lmp->is = icatalloc (lmp->is, rmp->is); if (lmp->is == NULL) goto done; } @@ -3956,59 +4028,55 @@ dfamust (struct dfa *d) /* not on *my* shift */ goto done; } - else if (t >= CSET - || !MBS_SUPPORT - || t == ANYCHAR - || t == MBCSET - ) + else if (t >= CSET || !MBS_SUPPORT || t == ANYCHAR || t == MBCSET) { /* easy enough */ - resetmust(mp); + resetmust (mp); } else { /* plain character */ - resetmust(mp); + resetmust (mp); mp->is[0] = mp->left[0] = mp->right[0] = t; mp->is[1] = mp->left[1] = mp->right[1] = '\0'; - mp->in = enlist(mp->in, mp->is, (size_t)1); + mp->in = enlist (mp->in, mp->is, (size_t) 1); if (mp->in == NULL) goto done; } break; } #ifdef DEBUG - fprintf(stderr, " node: %d:", ri); - prtok(d->tokens[ri]); - fprintf(stderr, "\n in:"); + fprintf (stderr, " node: %zd:", ri); + prtok (d->tokens[ri]); + fprintf (stderr, "\n in:"); for (i = 0; mp->in[i]; ++i) - fprintf(stderr, " \"%s\"", mp->in[i]); - fprintf(stderr, "\n is: \"%s\"\n", mp->is); - fprintf(stderr, " left: \"%s\"\n", mp->left); - fprintf(stderr, " right: \"%s\"\n", mp->right); + fprintf (stderr, " \"%s\"", mp->in[i]); + fprintf (stderr, "\n is: \"%s\"\n", mp->is); + fprintf (stderr, " left: \"%s\"\n", mp->left); + fprintf (stderr, " right: \"%s\"\n", mp->right); #endif ++mp; } - done: - if (strlen(result)) +done: + if (strlen (result)) { - MALLOC(dm, 1); + MALLOC (dm, 1); dm->exact = exact; - MALLOC(dm->must, strlen(result) + 1); - strcpy(dm->must, result); + MALLOC (dm->must, strlen (result) + 1); + strcpy (dm->must, result); dm->next = d->musts; d->musts = dm; } mp = musts; for (i = 0; i <= d->tindex; ++i) { - freelist(mp[i].in); - free(mp[i].in); - free(mp[i].left); - free(mp[i].right); - free(mp[i].is); + freelist (mp[i].in); + free (mp[i].in); + free (mp[i].left); + free (mp[i].right); + free (mp[i].is); } - free(mp); + free (mp); } struct dfa * @@ -4017,7 +4085,7 @@ dfaalloc (void) return xmalloc (sizeof (struct dfa)); } -struct dfamust * _GL_ATTRIBUTE_PURE +struct dfamust *_GL_ATTRIBUTE_PURE dfamusts (struct dfa const *d) { return d->musts; @@ -1,5 +1,5 @@ /* dfa.h - declarations for GNU deterministic regexp compiler - Copyright (C) 1988, 1998, 2007, 2009-2011 Free Software Foundation, Inc. + Copyright (C) 1988, 1998, 2007, 2009-2012 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -18,17 +18,6 @@ /* Written June, 1988 by Mike Haertel */ -#if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 6) || __STRICT_ANSI__ -# define __attribute__(x) -#endif - -/* The __pure__ attribute was added in gcc 2.96. */ -#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96) -# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__)) -#else -# define _GL_ATTRIBUTE_PURE /* empty */ -#endif - /* Element of a list of strings, at least one of which is known to appear in any R.E. matching the DFA. */ struct dfamust @@ -74,7 +63,7 @@ extern void dfacomp (char const *, size_t, struct dfa *, int); encountered a back-reference (1) or not (0). The caller may use this to decide whether to fall back on a backtracking matcher. */ extern char *dfaexec (struct dfa *d, char const *begin, char *end, - int newline, int *count, int *backref); + int newline, size_t *count, int *backref); /* Free the storage held by the components of a struct dfa. */ extern void dfafree (struct dfa *); @@ -93,7 +82,7 @@ extern void dfaanalyze (struct dfa *, int); /* Compute, for each possible character, the transitions out of a given state, storing them in an array of integers. */ -extern void dfastate (int, struct dfa *, int []); +extern void dfastate (ptrdiff_t, struct dfa *, ptrdiff_t []); /* Error handling. */ @@ -106,4 +95,4 @@ extern void dfawarn (const char *); /* dfaerror() is called by the regexp routines whenever an error occurs. It takes a single argument, a NUL-terminated string describing the error. The user must supply a dfaerror. */ -extern void dfaerror (const char *); +extern _Noreturn void dfaerror (const char *); diff --git a/doc/ChangeLog b/doc/ChangeLog index a54832db..6e4c0103 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -38,6 +38,15 @@ * gawk.1: Same. * awkcard.in: Same. +2012-03-28 Arnold D. Robbins <arnold@skeeve.com> + + * 4.0.1: Release tar ball made. + +2012-02-10 Arnold D. Robbins <arnold@skeeve.com> + + * gawk.texi, awkcard.in: Bump patch level. + * texinfo.tex: Updated from Texinfo CVS. + 2011-12-06 Arnold D. Robbins <arnold@skeeve.com> * gawk.texi: Various typo fixes from mailing list. diff --git a/doc/Makefile.in b/doc/Makefile.in index f0571c49..e475208b 100644 --- a/doc/Makefile.in +++ b/doc/Makefile.in @@ -69,11 +69,11 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/arch.m4 \ $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libsigsegv.m4 \ $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/mpfr.m4 \ - $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/readline.m4 \ - $(top_srcdir)/m4/socket.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/uintmax_t.m4 $(top_srcdir)/m4/ulonglong.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/noreturn.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/readline.m4 $(top_srcdir)/m4/socket.m4 \ + $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/uintmax_t.m4 \ + $(top_srcdir)/m4/ulonglong.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs diff --git a/doc/awkcard.in b/doc/awkcard.in index ab42e9fd..b7d87691 100644 --- a/doc/awkcard.in +++ b/doc/awkcard.in @@ -1,7 +1,8 @@ .\" AWK Reference Card --- Arnold Robbins, arnold@skeeve.com .\" .\" Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, -.\" 2003, 2004, 2005, 2007, 2009, 2010, 2011 Free Software Foundation, Inc. +.\" 2003, 2004, 2005, 2007, 2009, 2010, 2011, 2012 +.\" Free Software Foundation, Inc. .\" .\" Permission is granted to make and distribute verbatim copies of .\" this reference card provided the copyright notice and this permission @@ -100,7 +101,7 @@ Brian Kernighan and Michael Brennan who reviewed it. .SL .nf \*(FRCopyright \(co 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, -2005, 2007, 2009, 2010, 2011 Free Software Foundation, Inc. +2005, 2007, 2009, 2010, 2011, 2012 Free Software Foundation, Inc. .nf .BT @@ -1925,7 +1926,7 @@ to use the current domain.\*(CB .ES .nf \*(CDHost: \*(FCftp.gnu.org\*(FR -File: \*(FC/gnu/gawk/gawk-4.0.0.tar.gz\fP +File: \*(FC/gnu/gawk/gawk-4.0.1.tar.gz\fP .in +.2i .fi GNU \*(AK (\*(GK). There may be a later version. diff --git a/doc/gawk.info b/doc/gawk.info index c5702eee..bf279828 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -10,8 +10,8 @@ START-INFO-DIR-ENTRY END-INFO-DIR-ENTRY Copyright (C) 1989, 1991, 1992, 1993, 1996, 1997, 1998, 1999, 2000, -2001, 2002, 2003, 2004, 2005, 2007, 2009, 2010, 2011 Free Software -Foundation, Inc. +2001, 2002, 2003, 2004, 2005, 2007, 2009, 2010, 2011, 2012 Free +Software Foundation, Inc. This is Edition 4 of `GAWK: Effective AWK Programming: A User's @@ -42,8 +42,8 @@ This file documents `awk', a program that you can use to select particular records in a file and perform operations upon them. Copyright (C) 1989, 1991, 1992, 1993, 1996, 1997, 1998, 1999, 2000, -2001, 2002, 2003, 2004, 2005, 2007, 2009, 2010, 2011 Free Software -Foundation, Inc. +2001, 2002, 2003, 2004, 2005, 2007, 2009, 2010, 2011, 2012 Free +Software Foundation, Inc. This is Edition 4 of `GAWK: Effective AWK Programming: A User's @@ -1414,7 +1414,8 @@ pass to that interpreter. The operating system then runs the interpreter with the given argument and the full argument list of the executed program. The first argument in the list is the full file name of the `awk' program. The rest of the argument list contains either -options to `awk', or data files, or both. +options to `awk', or data files, or both. Note that on many systems +`awk' may be found in `/usr/bin' instead of in `/bin'. Caveat Emptor. File: gawk.info, Node: Comments, Next: Quoting, Prev: Executable Scripts, Up: Running gawk @@ -3221,6 +3222,10 @@ sequences and that are not listed in the table stand for themselves: constants are valid and work the way you want them to, using any version of `awk'.(2) + Finally, when `{' and `}' appear in regexp constants in a way that + cannot be interpreted as an interval expression (such as + `/q{a}/'), then they stand for themselves. + In regular expressions, the `*', `+', and `?' operators, as well as the braces `{' and `}', have the highest precedence, followed by concatenation, and finally by `|'. As in arithmetic, parentheses can @@ -9327,7 +9332,7 @@ specific to `gawk' are marked with a pound sign (`#'). The working precision of arbitrary precision floating-point numbers, 53 by default (*note Setting Precision::). -`RNDMODE #' +`ROUNDMODE #' The rounding mode to use for arbitrary precision arithmetic on numbers, by default `"N"' (`roundTiesToEven' in the IEEE-754 standard) (*note Setting Rounding Mode::). @@ -10723,7 +10728,8 @@ with numbers. Optional parameters are enclosed in square brackets ([ ]): `atan2(Y, X)' - Return the arctangent of `Y / X' in radians. + Return the arctangent of `Y / X' in radians. You can use `pi = + atan2(0, -1)' to retrieve the value of pi. `cos(X)' Return the cosine of X, with X in radians. @@ -13922,11 +13928,11 @@ File: gawk.info, Node: Rounding Mode, Next: Arbitrary Precision Floats, Prev: The "rounding mode" specifies the behavior for the results of numerical operations when discarding extra precision. Each rounding mode indicates how the least significant returned digit of a rounded result is to be -calculated. The `RNDMODE' variable (*note Setting Rounding Mode::) +calculated. The `ROUNDMODE' variable (*note Setting Rounding Mode::) provides program level control over the rounding mode. *note table-rounding-modes:: lists the IEEE-754 defined rounding modes: -Rounding Mode IEEE Name `RNDMODE' +Rounding Mode IEEE Name `ROUNDMODE' --------------------------------------------------------------------------- Round to nearest, ties to even `roundTiesToEven' `"N"' or `"n"' Round toward plus Infinity `roundTowardPositive' `"U"' or `"u"' @@ -14013,18 +14019,18 @@ and rounding modes, and gives correctly rounded reproducible platform-independent results. With the command-line option `--bignum' or `-M', all floating-point arithmetic operators and numeric functions can yield results to any desired precision level supported by MPFR. -Two built-in variables `PREC' (*note Setting Precision::) and `RNDMODE' -(*note Setting Rounding Mode::) provide control over the working -precision and the rounding mode. The precision and the rounding mode -are set globally for every operation to follow. +Two built-in variables `PREC' (*note Setting Precision::) and +`ROUNDMODE' (*note Setting Rounding Mode::) provide control over the +working precision and the rounding mode. The precision and the +rounding mode are set globally for every operation to follow. The default working precision for arbitrary precision floats is 53, -and the default value for `RNDMODE' is `"N"', which selects the IEEE-754 -`roundTiesToEven' (*note Rounding Mode::) rounding mode.(1) `gawk' uses -the default exponent range in MPFR (EMAX = 2^30 - 1, EMIN = -EMAX) for -all floating-point contexts. There is no explicit mechanism to adjust -the exponent range. MPFR does not implement subnormal numbers by -default, and this behavior cannot be changed in `gawk'. +and the default value for `ROUNDMODE' is `"N"', which selects the +IEEE-754 `roundTiesToEven' (*note Rounding Mode::) rounding mode.(1) +`gawk' uses the default exponent range in MPFR (EMAX = 2^30 - 1, EMIN = +-EMAX) for all floating-point contexts. There is no explicit mechanism +to adjust the exponent range. MPFR does not implement subnormal +numbers by default, and this behavior cannot be changed in `gawk'. NOTE: When emulating an IEEE-754 format (*note Setting Precision::), `gawk' internally adjusts the exponent range to the @@ -14113,19 +14119,19 @@ File: gawk.info, Node: Setting Rounding Mode, Next: Floating-point Constants, 11.7 Setting the Rounding Mode ============================== -The built-in variable `RNDMODE' has the default value `"N"', which +The built-in variable `ROUNDMODE' has the default value `"N"', which selects the IEEE-754 rounding mode `roundTiesToEven'. The other -possible values for `RNDMODE' are `"U"' for rounding mode +possible values for `ROUNDMODE' are `"U"' for rounding mode `roundTowardPositive', `"D"' for `roundTowardNegative', and `"Z"' for `roundTowardZero'. `gawk' also accepts `"A"' to select the IEEE-754 mode `roundTiesToAway' if your version of the MPFR library supports it; -otherwise setting `RNDMODE' to this value has no effect. *Note Rounding -Mode::, for the meanings of the various rounding modes. +otherwise setting `ROUNDMODE' to this value has no effect. *Note +Rounding Mode::, for the meanings of the various rounding modes. Here is an example of how to change the default rounding behavior of `printf''s output: - $ gawk -M -vRNDMODE="Z" 'BEGIN { printf("%.2f\n", 1.378) }' + $ gawk -M -vROUNDMODE="Z" 'BEGIN { printf("%.2f\n", 1.378) }' -| 1.37 @@ -26353,7 +26359,7 @@ Index * coprocesses, closing: Close Files And Pipes. (line 6) * coprocesses, getline from: Getline/Coprocess. (line 6) -* cos() function: Numeric Functions. (line 14) +* cos() function: Numeric Functions. (line 15) * counting: Wc Program. (line 6) * csh utility: Statements/Lines. (line 44) * csh utility, POSIXLY_CORRECT environment variable: Options. (line 329) @@ -26714,7 +26720,7 @@ Index * exclamation point (!), !~ operator: Regexp Usage. (line 19) * exit statement: Exit Statement. (line 6) * exit status, of gawk: Exit Status. (line 6) -* exp() function: Numeric Functions. (line 17) +* exp() function: Numeric Functions. (line 18) * expand utility: Very Simple. (line 69) * expressions: Expressions. (line 6) * expressions, as patterns: Expression Patterns. (line 6) @@ -27044,7 +27050,7 @@ Index (line 26) * gawk, regular expressions, operators: GNU Regexp Operators. (line 6) -* gawk, regular expressions, precedence: Regexp Operators. (line 157) +* gawk, regular expressions, precedence: Regexp Operators. (line 161) * gawk, RT variable in <1>: Auto-set. (line 213) * gawk, RT variable in <2>: Getline/Variable/File. (line 10) @@ -27226,7 +27232,7 @@ Index * installation, VMS: VMS Installation. (line 6) * installing gawk: Installation. (line 6) * INT signal (MS-Windows): Profiling. (line 206) -* int() function: Numeric Functions. (line 22) +* int() function: Numeric Functions. (line 23) * integer, arbitrary precision: Arbitrary Precision Integers. (line 6) * integers: Basic Data Typing. (line 21) @@ -27400,7 +27406,7 @@ Index * localization, See internationalization, localization: I18N and L10N. (line 6) * log files, timestamps in: Time Functions. (line 6) -* log() function: Numeric Functions. (line 29) +* log() function: Numeric Functions. (line 30) * logical false/true: Truth Values. (line 6) * logical operators, See Boolean expressions: Boolean Ops. (line 6) * login information: Passwd Functions. (line 16) @@ -27536,7 +27542,7 @@ Index * numbers, hexadecimal: Nondecimal-numbers. (line 6) * numbers, NODE internal type: Internals. (line 23) * numbers, octal: Nondecimal-numbers. (line 6) -* numbers, random: Numeric Functions. (line 63) +* numbers, random: Numeric Functions. (line 64) * numbers, rounding: Round Function. (line 6) * numeric, constants: Scalar Constants. (line 6) * numeric, output format: OFMT. (line 6) @@ -27738,7 +27744,7 @@ Index * POSIX awk, OFMT variable and: OFMT. (line 27) * POSIX awk, period (.), using: Regexp Operators. (line 50) * POSIX awk, printf format strings and: Format Modifiers. (line 159) -* POSIX awk, regular expressions and: Regexp Operators. (line 157) +* POSIX awk, regular expressions and: Regexp Operators. (line 161) * POSIX awk, timestamps and: Time Functions. (line 6) * POSIX awk, | I/O operator and: Getline/Pipe. (line 52) * POSIX mode: Options. (line 228) @@ -27750,7 +27756,7 @@ Index * PREC variable: User-modified. (line 134) * precedence <1>: Precedence. (line 6) * precedence: Increment Ops. (line 61) -* precedence, regexp operators: Regexp Operators. (line 152) +* precedence, regexp operators: Regexp Operators. (line 156) * print debugger command: Viewing And Changing Data. (line 36) * print statement: Printing. (line 16) @@ -27841,12 +27847,12 @@ Index * r debugger command (alias for run): Debugger Execution Control. (line 62) * Rakitzis, Byron: History Sorting. (line 25) -* rand() function: Numeric Functions. (line 33) +* rand() function: Numeric Functions. (line 34) * random numbers, Cliff: Cliff Random Function. (line 6) * random numbers, rand()/srand() functions: Numeric Functions. - (line 33) -* random numbers, seed of: Numeric Functions. (line 63) + (line 34) +* random numbers, seed of: Numeric Functions. (line 64) * range expressions (regexps): Bracket Expressions. (line 6) * range patterns: Ranges. (line 6) * Rankin, Pat <1>: Bugs. (line 72) @@ -27916,7 +27922,7 @@ Index * regular expressions, operators, gawk: GNU Regexp Operators. (line 6) * regular expressions, operators, precedence of: Regexp Operators. - (line 152) + (line 156) * regular expressions, searching for: Egrep Program. (line 6) * relational operators, See comparison operators: Typing and Comparison. (line 9) @@ -27940,9 +27946,6 @@ Index * Ritchie, Dennis: Basic Data Typing. (line 74) * RLENGTH variable: Auto-set. (line 200) * RLENGTH variable, match() function and: String Functions. (line 223) -* RNDMODE variable <1>: Setting Rounding Mode. - (line 6) -* RNDMODE variable: User-modified. (line 138) * Robbins, Arnold <1>: Future Extensions. (line 6) * Robbins, Arnold <2>: Bugs. (line 32) * Robbins, Arnold <3>: Contributors. (line 108) @@ -27963,6 +27966,9 @@ Index * round() user-defined function: Round Function. (line 16) * rounding mode, floating-point: Rounding Mode. (line 6) * rounding numbers: Round Function. (line 6) +* ROUNDMODE variable <1>: Setting Rounding Mode. + (line 6) +* ROUNDMODE variable: User-modified. (line 138) * RS variable <1>: User-modified. (line 143) * RS variable: Records. (line 20) * RS variable, multiline records and: Multiple Line. (line 17) @@ -28053,7 +28059,7 @@ Index * SIGUSR1 signal: Profiling. (line 180) * silent debugger command: Debugger Execution Control. (line 10) -* sin() function: Numeric Functions. (line 74) +* sin() function: Numeric Functions. (line 75) * single precision floating-point: Basic Data Typing. (line 36) * single quote (') <1>: Quoting. (line 31) * single quote (') <2>: Long. (line 33) @@ -28096,9 +28102,9 @@ Index * sprintf() function, OFMT variable and: User-modified. (line 124) * sprintf() function, print/printf statements and: Round Function. (line 6) -* sqrt() function: Numeric Functions. (line 77) +* sqrt() function: Numeric Functions. (line 78) * square brackets ([]): Regexp Operators. (line 55) -* srand() function: Numeric Functions. (line 81) +* srand() function: Numeric Functions. (line 82) * Stallman, Richard <1>: Glossary. (line 301) * Stallman, Richard <2>: Contributors. (line 24) * Stallman, Richard <3>: Acknowledgments. (line 18) @@ -28418,441 +28424,441 @@ Index Tag Table: -Node: Top1346 -Node: Foreword31547 -Node: Preface35892 -Ref: Preface-Footnote-138945 -Ref: Preface-Footnote-239051 -Node: History39283 -Node: Names41674 -Ref: Names-Footnote-143151 -Node: This Manual43223 -Ref: This Manual-Footnote-148161 -Node: Conventions48261 -Node: Manual History50395 -Ref: Manual History-Footnote-153665 -Ref: Manual History-Footnote-253706 -Node: How To Contribute53780 -Node: Acknowledgments54924 -Node: Getting Started59420 -Node: Running gawk61799 -Node: One-shot62985 -Node: Read Terminal64210 -Ref: Read Terminal-Footnote-165860 -Ref: Read Terminal-Footnote-266136 -Node: Long66307 -Node: Executable Scripts67683 -Ref: Executable Scripts-Footnote-169552 -Ref: Executable Scripts-Footnote-269654 -Node: Comments70105 -Node: Quoting72572 -Node: DOS Quoting77195 -Node: Sample Data Files77870 -Node: Very Simple80902 -Node: Two Rules85501 -Node: More Complex87648 -Ref: More Complex-Footnote-190578 -Node: Statements/Lines90663 -Ref: Statements/Lines-Footnote-195125 -Node: Other Features95390 -Node: When96318 -Node: Invoking Gawk98465 -Node: Command Line99850 -Node: Options100633 -Ref: Options-Footnote-1114990 -Node: Other Arguments115015 -Node: Naming Standard Input117673 -Node: Environment Variables118767 -Node: AWKPATH Variable119211 -Ref: AWKPATH Variable-Footnote-1121808 -Node: Other Environment Variables122068 -Node: Exit Status124560 -Node: Include Files125235 -Node: Obsolete128720 -Node: Undocumented129406 -Node: Regexp129647 -Node: Regexp Usage131036 -Node: Escape Sequences133062 -Node: Regexp Operators138825 -Ref: Regexp Operators-Footnote-1146022 -Ref: Regexp Operators-Footnote-2146169 -Node: Bracket Expressions146267 -Ref: table-char-classes148157 -Node: GNU Regexp Operators150680 -Node: Case-sensitivity154403 -Ref: Case-sensitivity-Footnote-1157371 -Ref: Case-sensitivity-Footnote-2157606 -Node: Leftmost Longest157714 -Node: Computed Regexps158915 -Node: Reading Files162325 -Node: Records164329 -Ref: Records-Footnote-1173003 -Node: Fields173040 -Ref: Fields-Footnote-1176073 -Node: Nonconstant Fields176159 -Node: Changing Fields178361 -Node: Field Separators184342 -Node: Default Field Splitting186971 -Node: Regexp Field Splitting188088 -Node: Single Character Fields191430 -Node: Command Line Field Separator192489 -Node: Field Splitting Summary195930 -Ref: Field Splitting Summary-Footnote-1199122 -Node: Constant Size199223 -Node: Splitting By Content203807 -Ref: Splitting By Content-Footnote-1207533 -Node: Multiple Line207573 -Ref: Multiple Line-Footnote-1213420 -Node: Getline213599 -Node: Plain Getline215815 -Node: Getline/Variable217904 -Node: Getline/File219045 -Node: Getline/Variable/File220367 -Ref: Getline/Variable/File-Footnote-1221966 -Node: Getline/Pipe222053 -Node: Getline/Variable/Pipe224613 -Node: Getline/Coprocess225720 -Node: Getline/Variable/Coprocess226963 -Node: Getline Notes227677 -Node: Getline Summary229619 -Ref: table-getline-variants229962 -Node: Read Timeout230818 -Ref: Read Timeout-Footnote-1234563 -Node: Command line directories234620 -Node: Printing235250 -Node: Print236881 -Node: Print Examples238218 -Node: Output Separators241002 -Node: OFMT242762 -Node: Printf244120 -Node: Basic Printf245026 -Node: Control Letters246565 -Node: Format Modifiers250377 -Node: Printf Examples256386 -Node: Redirection259101 -Node: Special Files266085 -Node: Special FD266618 -Ref: Special FD-Footnote-1270243 -Node: Special Network270317 -Node: Special Caveats271167 -Node: Close Files And Pipes271963 -Ref: Close Files And Pipes-Footnote-1278986 -Ref: Close Files And Pipes-Footnote-2279134 -Node: Expressions279284 -Node: Values280416 -Node: Constants281092 -Node: Scalar Constants281772 -Ref: Scalar Constants-Footnote-1282631 -Node: Nondecimal-numbers282813 -Node: Regexp Constants285872 -Node: Using Constant Regexps286347 -Node: Variables289402 -Node: Using Variables290057 -Node: Assignment Options291781 -Node: Conversion293653 -Ref: table-locale-affects299029 -Ref: Conversion-Footnote-1299653 -Node: All Operators299762 -Node: Arithmetic Ops300392 -Node: Concatenation302897 -Ref: Concatenation-Footnote-1305690 -Node: Assignment Ops305810 -Ref: table-assign-ops310798 -Node: Increment Ops312206 -Node: Truth Values and Conditions315676 -Node: Truth Values316759 -Node: Typing and Comparison317808 -Node: Variable Typing318597 -Ref: Variable Typing-Footnote-1322494 -Node: Comparison Operators322616 -Ref: table-relational-ops323026 -Node: POSIX String Comparison326575 -Ref: POSIX String Comparison-Footnote-1327531 -Node: Boolean Ops327669 -Ref: Boolean Ops-Footnote-1331747 -Node: Conditional Exp331838 -Node: Function Calls333570 -Node: Precedence337164 -Node: Locales340833 -Node: Patterns and Actions341922 -Node: Pattern Overview342976 -Node: Regexp Patterns344645 -Node: Expression Patterns345188 -Node: Ranges348873 -Node: BEGIN/END351839 -Node: Using BEGIN/END352601 -Ref: Using BEGIN/END-Footnote-1355332 -Node: I/O And BEGIN/END355438 -Node: BEGINFILE/ENDFILE357720 -Node: Empty360613 -Node: Using Shell Variables360929 -Node: Action Overview363214 -Node: Statements365571 -Node: If Statement367425 -Node: While Statement368924 -Node: Do Statement370968 -Node: For Statement372124 -Node: Switch Statement375276 -Node: Break Statement377373 -Node: Continue Statement379363 -Node: Next Statement381156 -Node: Nextfile Statement383546 -Node: Exit Statement386091 -Node: Built-in Variables388507 -Node: User-modified389602 -Ref: User-modified-Footnote-1397955 -Node: Auto-set398017 -Ref: Auto-set-Footnote-1407863 -Node: ARGC and ARGV408068 -Node: Arrays411919 -Node: Array Basics413424 -Node: Array Intro414250 -Node: Reference to Elements418568 -Node: Assigning Elements420838 -Node: Array Example421329 -Node: Scanning an Array423061 -Node: Controlling Scanning425375 -Ref: Controlling Scanning-Footnote-1430308 -Node: Delete430624 -Ref: Delete-Footnote-1433059 -Node: Numeric Array Subscripts433116 -Node: Uninitialized Subscripts435299 -Node: Multi-dimensional436927 -Node: Multi-scanning440021 -Node: Arrays of Arrays441612 -Node: Functions446257 -Node: Built-in447079 -Node: Calling Built-in448157 -Node: Numeric Functions450145 -Ref: Numeric Functions-Footnote-1453910 -Ref: Numeric Functions-Footnote-2454267 -Ref: Numeric Functions-Footnote-3454315 -Node: String Functions454584 -Ref: String Functions-Footnote-1478081 -Ref: String Functions-Footnote-2478210 -Ref: String Functions-Footnote-3478458 -Node: Gory Details478545 -Ref: table-sub-escapes480224 -Ref: table-sub-posix-92481578 -Ref: table-sub-proposed482921 -Ref: table-posix-sub484271 -Ref: table-gensub-escapes485817 -Ref: Gory Details-Footnote-1487024 -Ref: Gory Details-Footnote-2487075 -Node: I/O Functions487226 -Ref: I/O Functions-Footnote-1493881 -Node: Time Functions494028 -Ref: Time Functions-Footnote-1504920 -Ref: Time Functions-Footnote-2504988 -Ref: Time Functions-Footnote-3505146 -Ref: Time Functions-Footnote-4505257 -Ref: Time Functions-Footnote-5505369 -Ref: Time Functions-Footnote-6505596 -Node: Bitwise Functions505862 -Ref: table-bitwise-ops506420 -Ref: Bitwise Functions-Footnote-1510580 -Node: Type Functions510764 -Node: I18N Functions511234 -Node: User-defined512861 -Node: Definition Syntax513665 -Ref: Definition Syntax-Footnote-1518575 -Node: Function Example518644 -Node: Function Caveats521238 -Node: Calling A Function521659 -Node: Variable Scope522774 -Node: Pass By Value/Reference524749 -Node: Return Statement528189 -Node: Dynamic Typing531170 -Node: Indirect Calls531905 -Node: Internationalization541590 -Node: I18N and L10N543029 -Node: Explaining gettext543715 -Ref: Explaining gettext-Footnote-1548781 -Ref: Explaining gettext-Footnote-2548965 -Node: Programmer i18n549130 -Node: Translator i18n553330 -Node: String Extraction554123 -Ref: String Extraction-Footnote-1555084 -Node: Printf Ordering555170 -Ref: Printf Ordering-Footnote-1557954 -Node: I18N Portability558018 -Ref: I18N Portability-Footnote-1560467 -Node: I18N Example560530 -Ref: I18N Example-Footnote-1563165 -Node: Gawk I18N563237 -Node: Arbitrary Precision Arithmetic563854 -Ref: Arbitrary Precision Arithmetic-Footnote-1566729 -Node: Floating-point Programming566877 -Node: Floating-point Representation572147 -Node: Floating-point Context573251 -Ref: table-ieee-formats574086 -Node: Rounding Mode575456 -Ref: table-rounding-modes576081 -Ref: Rounding Mode-Footnote-1579202 -Node: Arbitrary Precision Floats579383 -Ref: Arbitrary Precision Floats-Footnote-1581420 -Node: Setting Precision581731 -Node: Setting Rounding Mode584489 -Node: Floating-point Constants585398 -Node: Changing Precision586817 -Ref: Changing Precision-Footnote-1588217 -Node: Exact Arithmetic588390 -Node: Integer Programming591403 -Node: Arbitrary Precision Integers593183 -Ref: Arbitrary Precision Integers-Footnote-1596207 -Node: MPFR and GMP Libraries596353 -Node: Advanced Features596738 -Node: Nondecimal Data598261 -Node: Array Sorting599844 -Node: Controlling Array Traversal600541 -Node: Array Sorting Functions608778 -Ref: Array Sorting Functions-Footnote-1612452 -Ref: Array Sorting Functions-Footnote-2612545 -Node: Two-way I/O612739 -Ref: Two-way I/O-Footnote-1618171 -Node: TCP/IP Networking618241 -Node: Profiling621085 -Node: Library Functions628539 -Ref: Library Functions-Footnote-1631546 -Node: Library Names631717 -Ref: Library Names-Footnote-1635188 -Ref: Library Names-Footnote-2635408 -Node: General Functions635494 -Node: Strtonum Function636447 -Node: Assert Function639377 -Node: Round Function642703 -Node: Cliff Random Function644246 -Node: Ordinal Functions645262 -Ref: Ordinal Functions-Footnote-1648332 -Ref: Ordinal Functions-Footnote-2648584 -Node: Join Function648793 -Ref: Join Function-Footnote-1650564 -Node: Gettimeofday Function650764 -Node: Data File Management654479 -Node: Filetrans Function655111 -Node: Rewind Function659250 -Node: File Checking660637 -Node: Empty Files661731 -Node: Ignoring Assigns663961 -Node: Getopt Function665514 -Ref: Getopt Function-Footnote-1676818 -Node: Passwd Functions677021 -Ref: Passwd Functions-Footnote-1685996 -Node: Group Functions686084 -Node: Walking Arrays694168 -Node: Sample Programs695737 -Node: Running Examples696402 -Node: Clones697130 -Node: Cut Program698354 -Node: Egrep Program708199 -Ref: Egrep Program-Footnote-1715972 -Node: Id Program716082 -Node: Split Program719698 -Ref: Split Program-Footnote-1723217 -Node: Tee Program723345 -Node: Uniq Program726148 -Node: Wc Program733577 -Ref: Wc Program-Footnote-1737843 -Ref: Wc Program-Footnote-2738043 -Node: Miscellaneous Programs738135 -Node: Dupword Program739323 -Node: Alarm Program741354 -Node: Translate Program746103 -Ref: Translate Program-Footnote-1750490 -Ref: Translate Program-Footnote-2750718 -Node: Labels Program750852 -Ref: Labels Program-Footnote-1754223 -Node: Word Sorting754307 -Node: History Sorting758191 -Node: Extract Program760030 -Ref: Extract Program-Footnote-1767513 -Node: Simple Sed767641 -Node: Igawk Program770703 -Ref: Igawk Program-Footnote-1785860 -Ref: Igawk Program-Footnote-2786061 -Node: Anagram Program786199 -Node: Signature Program789267 -Node: Debugger790367 -Node: Debugging791319 -Node: Debugging Concepts791752 -Node: Debugging Terms793608 -Node: Awk Debugging796205 -Node: Sample Debugging Session797097 -Node: Debugger Invocation797617 -Node: Finding The Bug798946 -Node: List of Debugger Commands805434 -Node: Breakpoint Control806768 -Node: Debugger Execution Control810432 -Node: Viewing And Changing Data813792 -Node: Execution Stack817148 -Node: Debugger Info818615 -Node: Miscellaneous Debugger Commands822596 -Node: Readline Support828041 -Node: Limitations828872 -Node: Language History831124 -Node: V7/SVR3.1832636 -Node: SVR4834957 -Node: POSIX836399 -Node: BTL837407 -Node: POSIX/GNU838141 -Node: Common Extensions843292 -Node: Ranges and Locales844399 -Ref: Ranges and Locales-Footnote-1849003 -Node: Contributors849224 -Node: Installation853485 -Node: Gawk Distribution854379 -Node: Getting854863 -Node: Extracting855689 -Node: Distribution contents857381 -Node: Unix Installation862603 -Node: Quick Installation863220 -Node: Additional Configuration Options865182 -Node: Configuration Philosophy866659 -Node: Non-Unix Installation869001 -Node: PC Installation869459 -Node: PC Binary Installation870758 -Node: PC Compiling872606 -Node: PC Testing875550 -Node: PC Using876726 -Node: Cygwin880911 -Node: MSYS881911 -Node: VMS Installation882425 -Node: VMS Compilation883028 -Ref: VMS Compilation-Footnote-1884035 -Node: VMS Installation Details884093 -Node: VMS Running885728 -Node: VMS Old Gawk887335 -Node: Bugs887809 -Node: Other Versions891661 -Node: Notes896976 -Node: Compatibility Mode897668 -Node: Additions898451 -Node: Accessing The Source899263 -Node: Adding Code900688 -Node: New Ports906655 -Node: Dynamic Extensions910768 -Node: Internals912208 -Node: Plugin License920727 -Node: Loading Extensions921365 -Node: Sample Library923175 -Node: Internal File Description923865 -Node: Internal File Ops927580 -Ref: Internal File Ops-Footnote-1932304 -Node: Using Internal File Ops932444 -Node: Future Extensions934821 -Node: Basic Concepts937325 -Node: Basic High Level938082 -Ref: Basic High Level-Footnote-1942117 -Node: Basic Data Typing942302 -Node: Floating Point Issues946827 -Node: String Conversion Precision947910 -Ref: String Conversion Precision-Footnote-1949610 -Node: Unexpected Results949719 -Node: POSIX Floating Point Problems951545 -Ref: POSIX Floating Point Problems-Footnote-1955250 -Node: Glossary955288 -Node: Copying980264 -Node: GNU Free Documentation License1017821 -Node: Index1042958 +Node: Top1352 +Node: Foreword31559 +Node: Preface35904 +Ref: Preface-Footnote-138957 +Ref: Preface-Footnote-239063 +Node: History39295 +Node: Names41686 +Ref: Names-Footnote-143163 +Node: This Manual43235 +Ref: This Manual-Footnote-148173 +Node: Conventions48273 +Node: Manual History50407 +Ref: Manual History-Footnote-153677 +Ref: Manual History-Footnote-253718 +Node: How To Contribute53792 +Node: Acknowledgments54936 +Node: Getting Started59432 +Node: Running gawk61811 +Node: One-shot62997 +Node: Read Terminal64222 +Ref: Read Terminal-Footnote-165872 +Ref: Read Terminal-Footnote-266148 +Node: Long66319 +Node: Executable Scripts67695 +Ref: Executable Scripts-Footnote-169564 +Ref: Executable Scripts-Footnote-269666 +Node: Comments70213 +Node: Quoting72680 +Node: DOS Quoting77303 +Node: Sample Data Files77978 +Node: Very Simple81010 +Node: Two Rules85609 +Node: More Complex87756 +Ref: More Complex-Footnote-190686 +Node: Statements/Lines90771 +Ref: Statements/Lines-Footnote-195233 +Node: Other Features95498 +Node: When96426 +Node: Invoking Gawk98573 +Node: Command Line99958 +Node: Options100741 +Ref: Options-Footnote-1115098 +Node: Other Arguments115123 +Node: Naming Standard Input117781 +Node: Environment Variables118875 +Node: AWKPATH Variable119319 +Ref: AWKPATH Variable-Footnote-1121916 +Node: Other Environment Variables122176 +Node: Exit Status124668 +Node: Include Files125343 +Node: Obsolete128828 +Node: Undocumented129514 +Node: Regexp129755 +Node: Regexp Usage131144 +Node: Escape Sequences133170 +Node: Regexp Operators138933 +Ref: Regexp Operators-Footnote-1146313 +Ref: Regexp Operators-Footnote-2146460 +Node: Bracket Expressions146558 +Ref: table-char-classes148448 +Node: GNU Regexp Operators150971 +Node: Case-sensitivity154694 +Ref: Case-sensitivity-Footnote-1157662 +Ref: Case-sensitivity-Footnote-2157897 +Node: Leftmost Longest158005 +Node: Computed Regexps159206 +Node: Reading Files162616 +Node: Records164620 +Ref: Records-Footnote-1173294 +Node: Fields173331 +Ref: Fields-Footnote-1176364 +Node: Nonconstant Fields176450 +Node: Changing Fields178652 +Node: Field Separators184633 +Node: Default Field Splitting187262 +Node: Regexp Field Splitting188379 +Node: Single Character Fields191721 +Node: Command Line Field Separator192780 +Node: Field Splitting Summary196221 +Ref: Field Splitting Summary-Footnote-1199413 +Node: Constant Size199514 +Node: Splitting By Content204098 +Ref: Splitting By Content-Footnote-1207824 +Node: Multiple Line207864 +Ref: Multiple Line-Footnote-1213711 +Node: Getline213890 +Node: Plain Getline216106 +Node: Getline/Variable218195 +Node: Getline/File219336 +Node: Getline/Variable/File220658 +Ref: Getline/Variable/File-Footnote-1222257 +Node: Getline/Pipe222344 +Node: Getline/Variable/Pipe224904 +Node: Getline/Coprocess226011 +Node: Getline/Variable/Coprocess227254 +Node: Getline Notes227968 +Node: Getline Summary229910 +Ref: table-getline-variants230253 +Node: Read Timeout231109 +Ref: Read Timeout-Footnote-1234854 +Node: Command line directories234911 +Node: Printing235541 +Node: Print237172 +Node: Print Examples238509 +Node: Output Separators241293 +Node: OFMT243053 +Node: Printf244411 +Node: Basic Printf245317 +Node: Control Letters246856 +Node: Format Modifiers250668 +Node: Printf Examples256677 +Node: Redirection259392 +Node: Special Files266376 +Node: Special FD266909 +Ref: Special FD-Footnote-1270534 +Node: Special Network270608 +Node: Special Caveats271458 +Node: Close Files And Pipes272254 +Ref: Close Files And Pipes-Footnote-1279277 +Ref: Close Files And Pipes-Footnote-2279425 +Node: Expressions279575 +Node: Values280707 +Node: Constants281383 +Node: Scalar Constants282063 +Ref: Scalar Constants-Footnote-1282922 +Node: Nondecimal-numbers283104 +Node: Regexp Constants286163 +Node: Using Constant Regexps286638 +Node: Variables289693 +Node: Using Variables290348 +Node: Assignment Options292072 +Node: Conversion293944 +Ref: table-locale-affects299320 +Ref: Conversion-Footnote-1299944 +Node: All Operators300053 +Node: Arithmetic Ops300683 +Node: Concatenation303188 +Ref: Concatenation-Footnote-1305981 +Node: Assignment Ops306101 +Ref: table-assign-ops311089 +Node: Increment Ops312497 +Node: Truth Values and Conditions315967 +Node: Truth Values317050 +Node: Typing and Comparison318099 +Node: Variable Typing318888 +Ref: Variable Typing-Footnote-1322785 +Node: Comparison Operators322907 +Ref: table-relational-ops323317 +Node: POSIX String Comparison326866 +Ref: POSIX String Comparison-Footnote-1327822 +Node: Boolean Ops327960 +Ref: Boolean Ops-Footnote-1332038 +Node: Conditional Exp332129 +Node: Function Calls333861 +Node: Precedence337455 +Node: Locales341124 +Node: Patterns and Actions342213 +Node: Pattern Overview343267 +Node: Regexp Patterns344936 +Node: Expression Patterns345479 +Node: Ranges349164 +Node: BEGIN/END352130 +Node: Using BEGIN/END352892 +Ref: Using BEGIN/END-Footnote-1355623 +Node: I/O And BEGIN/END355729 +Node: BEGINFILE/ENDFILE358011 +Node: Empty360904 +Node: Using Shell Variables361220 +Node: Action Overview363505 +Node: Statements365862 +Node: If Statement367716 +Node: While Statement369215 +Node: Do Statement371259 +Node: For Statement372415 +Node: Switch Statement375567 +Node: Break Statement377664 +Node: Continue Statement379654 +Node: Next Statement381447 +Node: Nextfile Statement383837 +Node: Exit Statement386382 +Node: Built-in Variables388798 +Node: User-modified389893 +Ref: User-modified-Footnote-1398248 +Node: Auto-set398310 +Ref: Auto-set-Footnote-1408156 +Node: ARGC and ARGV408361 +Node: Arrays412212 +Node: Array Basics413717 +Node: Array Intro414543 +Node: Reference to Elements418861 +Node: Assigning Elements421131 +Node: Array Example421622 +Node: Scanning an Array423354 +Node: Controlling Scanning425668 +Ref: Controlling Scanning-Footnote-1430601 +Node: Delete430917 +Ref: Delete-Footnote-1433352 +Node: Numeric Array Subscripts433409 +Node: Uninitialized Subscripts435592 +Node: Multi-dimensional437220 +Node: Multi-scanning440314 +Node: Arrays of Arrays441905 +Node: Functions446550 +Node: Built-in447372 +Node: Calling Built-in448450 +Node: Numeric Functions450438 +Ref: Numeric Functions-Footnote-1454270 +Ref: Numeric Functions-Footnote-2454627 +Ref: Numeric Functions-Footnote-3454675 +Node: String Functions454944 +Ref: String Functions-Footnote-1478441 +Ref: String Functions-Footnote-2478570 +Ref: String Functions-Footnote-3478818 +Node: Gory Details478905 +Ref: table-sub-escapes480584 +Ref: table-sub-posix-92481938 +Ref: table-sub-proposed483281 +Ref: table-posix-sub484631 +Ref: table-gensub-escapes486177 +Ref: Gory Details-Footnote-1487384 +Ref: Gory Details-Footnote-2487435 +Node: I/O Functions487586 +Ref: I/O Functions-Footnote-1494241 +Node: Time Functions494388 +Ref: Time Functions-Footnote-1505280 +Ref: Time Functions-Footnote-2505348 +Ref: Time Functions-Footnote-3505506 +Ref: Time Functions-Footnote-4505617 +Ref: Time Functions-Footnote-5505729 +Ref: Time Functions-Footnote-6505956 +Node: Bitwise Functions506222 +Ref: table-bitwise-ops506780 +Ref: Bitwise Functions-Footnote-1510940 +Node: Type Functions511124 +Node: I18N Functions511594 +Node: User-defined513221 +Node: Definition Syntax514025 +Ref: Definition Syntax-Footnote-1518935 +Node: Function Example519004 +Node: Function Caveats521598 +Node: Calling A Function522019 +Node: Variable Scope523134 +Node: Pass By Value/Reference525109 +Node: Return Statement528549 +Node: Dynamic Typing531530 +Node: Indirect Calls532265 +Node: Internationalization541950 +Node: I18N and L10N543389 +Node: Explaining gettext544075 +Ref: Explaining gettext-Footnote-1549141 +Ref: Explaining gettext-Footnote-2549325 +Node: Programmer i18n549490 +Node: Translator i18n553690 +Node: String Extraction554483 +Ref: String Extraction-Footnote-1555444 +Node: Printf Ordering555530 +Ref: Printf Ordering-Footnote-1558314 +Node: I18N Portability558378 +Ref: I18N Portability-Footnote-1560827 +Node: I18N Example560890 +Ref: I18N Example-Footnote-1563525 +Node: Gawk I18N563597 +Node: Arbitrary Precision Arithmetic564214 +Ref: Arbitrary Precision Arithmetic-Footnote-1567089 +Node: Floating-point Programming567237 +Node: Floating-point Representation572507 +Node: Floating-point Context573611 +Ref: table-ieee-formats574446 +Node: Rounding Mode575816 +Ref: table-rounding-modes576443 +Ref: Rounding Mode-Footnote-1579566 +Node: Arbitrary Precision Floats579747 +Ref: Arbitrary Precision Floats-Footnote-1581788 +Node: Setting Precision582099 +Node: Setting Rounding Mode584857 +Node: Floating-point Constants585774 +Node: Changing Precision587193 +Ref: Changing Precision-Footnote-1588593 +Node: Exact Arithmetic588766 +Node: Integer Programming591779 +Node: Arbitrary Precision Integers593559 +Ref: Arbitrary Precision Integers-Footnote-1596583 +Node: MPFR and GMP Libraries596729 +Node: Advanced Features597114 +Node: Nondecimal Data598637 +Node: Array Sorting600220 +Node: Controlling Array Traversal600917 +Node: Array Sorting Functions609154 +Ref: Array Sorting Functions-Footnote-1612828 +Ref: Array Sorting Functions-Footnote-2612921 +Node: Two-way I/O613115 +Ref: Two-way I/O-Footnote-1618547 +Node: TCP/IP Networking618617 +Node: Profiling621461 +Node: Library Functions628915 +Ref: Library Functions-Footnote-1631922 +Node: Library Names632093 +Ref: Library Names-Footnote-1635564 +Ref: Library Names-Footnote-2635784 +Node: General Functions635870 +Node: Strtonum Function636823 +Node: Assert Function639753 +Node: Round Function643079 +Node: Cliff Random Function644622 +Node: Ordinal Functions645638 +Ref: Ordinal Functions-Footnote-1648708 +Ref: Ordinal Functions-Footnote-2648960 +Node: Join Function649169 +Ref: Join Function-Footnote-1650940 +Node: Gettimeofday Function651140 +Node: Data File Management654855 +Node: Filetrans Function655487 +Node: Rewind Function659626 +Node: File Checking661013 +Node: Empty Files662107 +Node: Ignoring Assigns664337 +Node: Getopt Function665890 +Ref: Getopt Function-Footnote-1677194 +Node: Passwd Functions677397 +Ref: Passwd Functions-Footnote-1686372 +Node: Group Functions686460 +Node: Walking Arrays694544 +Node: Sample Programs696113 +Node: Running Examples696778 +Node: Clones697506 +Node: Cut Program698730 +Node: Egrep Program708575 +Ref: Egrep Program-Footnote-1716348 +Node: Id Program716458 +Node: Split Program720074 +Ref: Split Program-Footnote-1723593 +Node: Tee Program723721 +Node: Uniq Program726524 +Node: Wc Program733953 +Ref: Wc Program-Footnote-1738219 +Ref: Wc Program-Footnote-2738419 +Node: Miscellaneous Programs738511 +Node: Dupword Program739699 +Node: Alarm Program741730 +Node: Translate Program746479 +Ref: Translate Program-Footnote-1750866 +Ref: Translate Program-Footnote-2751094 +Node: Labels Program751228 +Ref: Labels Program-Footnote-1754599 +Node: Word Sorting754683 +Node: History Sorting758567 +Node: Extract Program760406 +Ref: Extract Program-Footnote-1767889 +Node: Simple Sed768017 +Node: Igawk Program771079 +Ref: Igawk Program-Footnote-1786236 +Ref: Igawk Program-Footnote-2786437 +Node: Anagram Program786575 +Node: Signature Program789643 +Node: Debugger790743 +Node: Debugging791695 +Node: Debugging Concepts792128 +Node: Debugging Terms793984 +Node: Awk Debugging796581 +Node: Sample Debugging Session797473 +Node: Debugger Invocation797993 +Node: Finding The Bug799322 +Node: List of Debugger Commands805810 +Node: Breakpoint Control807144 +Node: Debugger Execution Control810808 +Node: Viewing And Changing Data814168 +Node: Execution Stack817524 +Node: Debugger Info818991 +Node: Miscellaneous Debugger Commands822972 +Node: Readline Support828417 +Node: Limitations829248 +Node: Language History831500 +Node: V7/SVR3.1833012 +Node: SVR4835333 +Node: POSIX836775 +Node: BTL837783 +Node: POSIX/GNU838517 +Node: Common Extensions843668 +Node: Ranges and Locales844775 +Ref: Ranges and Locales-Footnote-1849379 +Node: Contributors849600 +Node: Installation853861 +Node: Gawk Distribution854755 +Node: Getting855239 +Node: Extracting856065 +Node: Distribution contents857757 +Node: Unix Installation862979 +Node: Quick Installation863596 +Node: Additional Configuration Options865558 +Node: Configuration Philosophy867035 +Node: Non-Unix Installation869377 +Node: PC Installation869835 +Node: PC Binary Installation871134 +Node: PC Compiling872982 +Node: PC Testing875926 +Node: PC Using877102 +Node: Cygwin881287 +Node: MSYS882287 +Node: VMS Installation882801 +Node: VMS Compilation883404 +Ref: VMS Compilation-Footnote-1884411 +Node: VMS Installation Details884469 +Node: VMS Running886104 +Node: VMS Old Gawk887711 +Node: Bugs888185 +Node: Other Versions892037 +Node: Notes897352 +Node: Compatibility Mode898044 +Node: Additions898827 +Node: Accessing The Source899639 +Node: Adding Code901064 +Node: New Ports907031 +Node: Dynamic Extensions911144 +Node: Internals912584 +Node: Plugin License921103 +Node: Loading Extensions921741 +Node: Sample Library923551 +Node: Internal File Description924241 +Node: Internal File Ops927956 +Ref: Internal File Ops-Footnote-1932680 +Node: Using Internal File Ops932820 +Node: Future Extensions935197 +Node: Basic Concepts937701 +Node: Basic High Level938458 +Ref: Basic High Level-Footnote-1942493 +Node: Basic Data Typing942678 +Node: Floating Point Issues947203 +Node: String Conversion Precision948286 +Ref: String Conversion Precision-Footnote-1949986 +Node: Unexpected Results950095 +Node: POSIX Floating Point Problems951921 +Ref: POSIX Floating Point Problems-Footnote-1955626 +Node: Glossary955664 +Node: Copying980640 +Node: GNU Free Documentation License1018197 +Node: Index1043334 End Tag Table diff --git a/doc/gawk.texi b/doc/gawk.texi index 44243b36..8cd7e38e 100644 --- a/doc/gawk.texi +++ b/doc/gawk.texi @@ -20,7 +20,7 @@ @c applies to and all the info about who's publishing this edition @c These apply across the board. -@set UPDATE-MONTH November, 2011 +@set UPDATE-MONTH February, 2012 @set VERSION 4.0 @set PATCHLEVEL 1 @@ -145,7 +145,7 @@ Some comments on the layout for TeX. @copying Copyright @copyright{} 1989, 1991, 1992, 1993, 1996, 1997, 1998, 1999, -2000, 2001, 2002, 2003, 2004, 2005, 2007, 2009, 2010, 2011 +2000, 2001, 2002, 2003, 2004, 2005, 2007, 2009, 2010, 2011, 2012 Free Software Foundation, Inc. @sp 2 @@ -1992,9 +1992,11 @@ line beginning with @samp{#!} lists the full @value{FN} of an interpreter to run and an optional initial command-line argument to pass to that interpreter. The operating system then runs the interpreter with the given argument and the full argument list of the executed program. The first argument -in the list is the full @value{FN} of the @command{awk} program. The rest of the +in the list is the full @value{FN} of the @command{awk} program. +The rest of the argument list contains either options to @command{awk}, or @value{DF}s, -or both.} as if you had +or both. Note that on many systems @command{awk} may be found in +@file{/usr/bin} instead of in @file{/bin}. Caveat Emptor.} as if you had typed @samp{awk -f advice}: @example @@ -4544,6 +4546,10 @@ it is good practice to always escape them with a backslash. Then the regexp constants are valid and work the way you want them to, using any version of @command{awk}.@footnote{Use two backslashes if you're using a string constant with a regexp operator or function.} + +Finally, when @samp{@{} and @samp{@}} appear in regexp constants +in a way that cannot be interpreted as an interval expression +(such as @code{/q@{a@}/}), then they stand for themselves. @end table @cindex precedence, regexp operators @@ -14400,6 +14406,13 @@ Optional parameters are enclosed in square brackets@w{ ([ ]):} @item atan2(@var{y}, @var{x}) @cindex @code{atan2()} function Return the arctangent of @code{@var{y} / @var{x}} in radians. +You can use @samp{pi = atan2(0, -1)} to retrieve the value of +@tex +$\pi$. +@end tex +@ifnottex +pi. +@end ifnottex @item cos(@var{x}) @cindex @code{cos()} function diff --git a/doc/texinfo.tex b/doc/texinfo.tex index 1130b8fc..dcdeb9b4 100644 --- a/doc/texinfo.tex +++ b/doc/texinfo.tex @@ -3,11 +3,11 @@ % Load plain if necessary, i.e., if running under initex. \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi % -\def\texinfoversion{2010-12-23.17} +\def\texinfoversion{2012-01-19.16} % % Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995, % 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, -% 2007, 2008, 2009, 2010 Free Software Foundation, Inc. +% 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc. % % This texinfo.tex file is free software: you can redistribute it and/or % modify it under the terms of the GNU General Public License as @@ -116,10 +116,11 @@ % Set up fixed words for English if not already set. \ifx\putwordAppendix\undefined \gdef\putwordAppendix{Appendix}\fi \ifx\putwordChapter\undefined \gdef\putwordChapter{Chapter}\fi +\ifx\putworderror\undefined \gdef\putworderror{error}\fi \ifx\putwordfile\undefined \gdef\putwordfile{file}\fi \ifx\putwordin\undefined \gdef\putwordin{in}\fi -\ifx\putwordIndexIsEmpty\undefined \gdef\putwordIndexIsEmpty{(Index is empty)}\fi -\ifx\putwordIndexNonexistent\undefined \gdef\putwordIndexNonexistent{(Index is nonexistent)}\fi +\ifx\putwordIndexIsEmpty\undefined \gdef\putwordIndexIsEmpty{(Index is empty)}\fi +\ifx\putwordIndexNonexistent\undefined \gdef\putwordIndexNonexistent{(Index is nonexistent)}\fi \ifx\putwordInfo\undefined \gdef\putwordInfo{Info}\fi \ifx\putwordInstanceVariableof\undefined \gdef\putwordInstanceVariableof{Instance Variable of}\fi \ifx\putwordMethodon\undefined \gdef\putwordMethodon{Method on}\fi @@ -158,15 +159,18 @@ \def\spaceisspace{\catcode`\ =\spacecat} % sometimes characters are active, so we need control sequences. +\chardef\ampChar = `\& \chardef\colonChar = `\: \chardef\commaChar = `\, \chardef\dashChar = `\- \chardef\dotChar = `\. \chardef\exclamChar= `\! +\chardef\hashChar = `\# \chardef\lquoteChar= `\` \chardef\questChar = `\? \chardef\rquoteChar= `\' \chardef\semiChar = `\; +\chardef\slashChar = `\/ \chardef\underChar = `\_ % Ignore a token. @@ -215,7 +219,7 @@ \tracingmacros2 \tracingrestores1 \showboxbreadth\maxdimen \showboxdepth\maxdimen - \ifx\eTeXversion\undefined\else % etex gives us more logging + \ifx\eTeXversion\thisisundefined\else % etex gives us more logging \tracingscantokens1 \tracingifs1 \tracinggroups1 @@ -226,6 +230,13 @@ \errorcontextlines16 }% +% @errormsg{MSG}. Do the index-like expansions on MSG, but if things +% aren't perfect, it's not the end of the world, being an error message, +% after all. +% +\def\errormsg{\begingroup \indexnofonts \doerrormsg} +\def\doerrormsg#1{\errmessage{#1}} + % add check for \lastpenalty to plain's definitions. If the last thing % we did was a \nobreak, we don't want to insert more space. % @@ -545,7 +556,7 @@ } \def\inenvironment#1{% \ifx#1\empty - out of any environment% + outside of any environment% \else in environment \expandafter\string#1% \fi @@ -557,7 +568,7 @@ \parseargdef\end{% \if 1\csname iscond.#1\endcsname \else - % The general wording of \badenverr may not be ideal, but... --kasal, 06nov03 + % The general wording of \badenverr may not be ideal. \expandafter\checkenv\csname#1\endcsname \csname E#1\endcsname \endgroup @@ -608,7 +619,7 @@ \else\ifx\temp\offword \plainnonfrenchspacing \else \errhelp = \EMsimple - \errmessage{Unknown @frenchspacing option `\temp', must be on/off}% + \errmessage{Unknown @frenchspacing option `\temp', must be on|off}% \fi\fi } @@ -690,15 +701,6 @@ where each line of input produces a line of output.} \newdimen\mil \mil=0.001in -% Old definition--didn't work. -%\parseargdef\need{\par % -%% This method tries to make TeX break the page naturally -%% if the depth of the box does not fit. -%{\baselineskip=0pt% -%\vtop to #1\mil{\vfil}\kern -#1\mil\nobreak -%\prevdepth=-1000pt -%}} - \parseargdef\need{% % Ensure vertical mode, so we don't make a big box in the middle of a % paragraph. @@ -849,6 +851,7 @@ where each line of input produces a line of output.} \makevalueexpandable % we want to expand any @value in FILE. \turnoffactive % and allow special characters in the expansion \indexnofonts % Allow `@@' and other weird things in file names. + \wlog{texinfo.tex: doing @include of #1^^J}% \edef\temp{\noexpand\input #1 }% % % This trickery is to read FILE outside of a group, in case it makes @@ -1078,9 +1081,8 @@ where each line of input produces a line of output.} \newif\ifpdfmakepagedest % when pdftex is run in dvi mode, \pdfoutput is defined (so \pdfoutput=1 -% can be set). So we test for \relax and 0 as well as \undefined, -% borrowed from ifpdf.sty. -\ifx\pdfoutput\undefined +% can be set). So we test for \relax and 0 as well as being undefined. +\ifx\pdfoutput\thisisundefined \else \ifx\pdfoutput\relax \else @@ -1095,50 +1097,24 @@ where each line of input produces a line of output.} % for display in the outlines, and in other places. Thus, we have to % double any backslashes. Otherwise, a name like "\node" will be % interpreted as a newline (\n), followed by o, d, e. Not good. -% http://www.ntg.nl/pipermail/ntg-pdftex/2004-July/000654.html -% (and related messages, the final outcome is that it is up to the TeX -% user to double the backslashes and otherwise make the string valid, so -% that's what we do). - -% double active backslashes. -% -{\catcode`\@=0 \catcode`\\=\active - @gdef@activebackslashdouble{% - @catcode`@\=@active - @let\=@doublebackslash} -} - -% To handle parens, we must adopt a different approach, since parens are -% not active characters. hyperref.dtx (which has the same problem as -% us) handles it with this amazing macro to replace tokens, with minor -% changes for Texinfo. It is included here under the GPL by permission -% from the author, Heiko Oberdiek. -% -% #1 is the tokens to replace. -% #2 is the replacement. -% #3 is the control sequence with the string. -% -\def\HyPsdSubst#1#2#3{% - \def\HyPsdReplace##1#1##2\END{% - ##1% - \ifx\\##2\\% - \else - #2% - \HyReturnAfterFi{% - \HyPsdReplace##2\END - }% - \fi - }% - \xdef#3{\expandafter\HyPsdReplace#3#1\END}% -} -\long\def\HyReturnAfterFi#1\fi{\fi#1} - -% #1 is a control sequence in which to do the replacements. -\def\backslashparens#1{% - \xdef#1{#1}% redefine it as its expansion; the definition is simply - % \lastnode when called from \setref -> \pdfmkdest. - \HyPsdSubst{(}{\realbackslash(}{#1}% - \HyPsdSubst{)}{\realbackslash)}{#1}% +% +% See http://www.ntg.nl/pipermail/ntg-pdftex/2004-July/000654.html and +% related messages. The final outcome is that it is up to the TeX user +% to double the backslashes and otherwise make the string valid, so +% that's what we do. pdftex 1.30.0 (ca.2005) introduced a primitive to +% do this reliably, so we use it. + +% #1 is a control sequence in which to do the replacements, +% which we \xdef. +\def\txiescapepdf#1{% + \ifx\pdfescapestring\relax + % No primitive available; should we give a warning or log? + % Many times it won't matter. + \else + % The expandable \pdfescapestring primitive escapes parentheses, + % backslashes, and other special chars. + \xdef#1{\pdfescapestring{#1}}% + \fi } \newhelp\nopdfimagehelp{Texinfo supports .png, .jpg, .jpeg, and .pdf images @@ -1200,29 +1176,31 @@ output) for that.)} \def\imagewidth{#2}\setbox0 = \hbox{\ignorespaces #2}% \def\imageheight{#3}\setbox2 = \hbox{\ignorespaces #3}% % - % pdftex (and the PDF format) support .png, .jpg, .pdf (among - % others). Let's try in that order. + % pdftex (and the PDF format) support .pdf, .png, .jpg (among + % others). Let's try in that order, PDF first since if + % someone has a scalable image, presumably better to use that than a + % bitmap. \let\pdfimgext=\empty \begingroup - \openin 1 #1.png \ifeof 1 - \openin 1 #1.jpg \ifeof 1 - \openin 1 #1.jpeg \ifeof 1 - \openin 1 #1.JPG \ifeof 1 - \openin 1 #1.pdf \ifeof 1 - \openin 1 #1.PDF \ifeof 1 + \openin 1 #1.pdf \ifeof 1 + \openin 1 #1.PDF \ifeof 1 + \openin 1 #1.png \ifeof 1 + \openin 1 #1.jpg \ifeof 1 + \openin 1 #1.jpeg \ifeof 1 + \openin 1 #1.JPG \ifeof 1 \errhelp = \nopdfimagehelp \errmessage{Could not find image file #1 for pdf}% - \else \gdef\pdfimgext{PDF}% + \else \gdef\pdfimgext{JPG}% \fi - \else \gdef\pdfimgext{pdf}% + \else \gdef\pdfimgext{jpeg}% \fi - \else \gdef\pdfimgext{JPG}% + \else \gdef\pdfimgext{jpg}% \fi - \else \gdef\pdfimgext{jpeg}% + \else \gdef\pdfimgext{png}% \fi - \else \gdef\pdfimgext{jpg}% + \else \gdef\pdfimgext{PDF}% \fi - \else \gdef\pdfimgext{png}% + \else \gdef\pdfimgext{pdf}% \fi \closein 1 \endgroup @@ -1250,10 +1228,9 @@ output) for that.)} % such as \, aren't expanded when present in a section title. \indexnofonts \turnoffactive - \activebackslashdouble \makevalueexpandable \def\pdfdestname{#1}% - \backslashparens\pdfdestname + \txiescapepdf\pdfdestname \safewhatsit{\pdfdest name{\pdfdestname} xyz}% }} % @@ -1285,28 +1262,22 @@ output) for that.)} % page number. We could generate a destination for the section % text in the case where a section has no node, but it doesn't % seem worth the trouble, since most documents are normally structured. - \def\pdfoutlinedest{#3}% + \edef\pdfoutlinedest{#3}% \ifx\pdfoutlinedest\empty \def\pdfoutlinedest{#4}% \else - % Doubled backslashes in the name. - {\activebackslashdouble \xdef\pdfoutlinedest{#3}% - \backslashparens\pdfoutlinedest}% + \txiescapepdf\pdfoutlinedest \fi % - % Also double the backslashes in the display string. - {\activebackslashdouble \xdef\pdfoutlinetext{#1}% - \backslashparens\pdfoutlinetext}% + % Also escape PDF chars in the display string. + \edef\pdfoutlinetext{#1}% + \txiescapepdf\pdfoutlinetext % \pdfoutline goto name{\pdfmkpgn{\pdfoutlinedest}}#2{\pdfoutlinetext}% } % \def\pdfmakeoutlines{% \begingroup - % Thanh's hack / proper braces in bookmarks - \edef\mylbrace{\iftrue \string{\else}\fi}\let\{=\mylbrace - \edef\myrbrace{\iffalse{\else\string}\fi}\let\}=\myrbrace - % % Read toc silently, to get counts of subentries for \pdfoutline. \def\partentry##1##2##3##4{}% ignore parts in the outlines \def\numchapentry##1##2##3##4{% @@ -1362,15 +1333,26 @@ output) for that.)} % Latin 2 (0xea) gets translated to a | character. Info from % Staszek Wawrykiewicz, 19 Jan 2004 04:09:24 +0100. % - % xx to do this right, we have to translate 8-bit characters to - % their "best" equivalent, based on the @documentencoding. Right - % now, I guess we'll just let the pdf reader have its way. + % TODO this right, we have to translate 8-bit characters to + % their "best" equivalent, based on the @documentencoding. Too + % much work for too little return. Just use the ASCII equivalents + % we use for the index sort strings. + % \indexnofonts \setupdatafile + % We can have normal brace characters in the PDF outlines, unlike + % Texinfo index files. So set that up. + \def\{{\lbracecharliteral}% + \def\}{\rbracecharliteral}% \catcode`\\=\active \otherbackslash \input \tocreadfilename \endgroup } + {\catcode`[=1 \catcode`]=2 + \catcode`{=\other \catcode`}=\other + \gdef\lbracecharliteral[{]% + \gdef\rbracecharliteral[}]% + ] % \def\skipspaces#1{\def\PP{#1}\def\D{|}% \ifx\PP\D\let\nextsp\relax @@ -1512,7 +1494,7 @@ output) for that.)} % if we are producing pdf, and we have \pdffontattr, then define cmaps. % (\pdffontattr was introduced many years ago, but people still run % older pdftex's; it's easy to conditionalize, so we do.) -\ifpdf \ifx\pdffontattr\undefined \else +\ifpdf \ifx\pdffontattr\thisisundefined \else \begingroup \catcode`\^^M=\active \def^^M{^^J}% Output line endings as the ^^J char. \catcode`\%=12 \immediate\pdfobj stream {%!PS-Adobe-3.0 Resource-CMap @@ -1779,7 +1761,7 @@ end % Use cm as the default font prefix. % To specify the font prefix, you must define \fontprefix % before you read in texinfo.tex. -\ifx\fontprefix\undefined +\ifx\fontprefix\thisisundefined \def\fontprefix{cm} \fi % Support font families that don't use the same naming scheme as CM. @@ -2070,7 +2052,7 @@ end % \parseargdef\fonttextsize{% \def\textsizearg{#1}% - \wlog{doing @fonttextsize \textsizearg}% + %\wlog{doing @fonttextsize \textsizearg}% % % Set \globaldefs so that documents can use this inside @tex, since % makeinfo 4.8 does not support it, but we need it nonetheless. @@ -2252,12 +2234,14 @@ end % Markup style setup for left and right quotes. \defmarkupstylesetup\markupsetuplq{% - \expandafter\let\expandafter \temp \csname markupsetuplq\currentmarkupstyle\endcsname + \expandafter\let\expandafter \temp + \csname markupsetuplq\currentmarkupstyle\endcsname \ifx\temp\relax \markupsetuplqdefault \else \temp \fi } \defmarkupstylesetup\markupsetuprq{% - \expandafter\let\expandafter \temp \csname markupsetuprq\currentmarkupstyle\endcsname + \expandafter\let\expandafter \temp + \csname markupsetuprq\currentmarkupstyle\endcsname \ifx\temp\relax \markupsetuprqdefault \else \temp \fi } @@ -2291,12 +2275,11 @@ end \let\markupsetuplqkbd \markupsetnoligaturesquoteleft -% Allow an option to not replace quotes with a regular directed right -% quote/apostrophe (char 0x27), but instead use the undirected quote -% from cmtt (char 0x0d). The undirected quote is ugly, so don't make it -% the default, but it works for pasting with more pdf viewers (at least -% evince), the lilypond developers report. xpdf does work with the -% regular 0x27. +% Allow an option to not use regular directed right quote/apostrophe +% (char 0x27), but instead the undirected quote from cmtt (char 0x0d). +% The undirected quote is ugly, so don't make it the default, but it +% works for pasting with more pdf viewers (at least evince), the +% lilypond developers report. xpdf does work with the regular 0x27. % \def\codequoteright{% \expandafter\ifx\csname SETtxicodequoteundirected\endcsname\relax @@ -2320,6 +2303,36 @@ end \else \char'22 \fi } +% Commands to set the quote options. +% +\parseargdef\codequoteundirected{% + \def\temp{#1}% + \ifx\temp\onword + \expandafter\let\csname SETtxicodequoteundirected\endcsname + = t% + \else\ifx\temp\offword + \expandafter\let\csname SETtxicodequoteundirected\endcsname + = \relax + \else + \errhelp = \EMsimple + \errmessage{Unknown @codequoteundirected value `\temp', must be on|off}% + \fi\fi +} +% +\parseargdef\codequotebacktick{% + \def\temp{#1}% + \ifx\temp\onword + \expandafter\let\csname SETtxicodequotebacktick\endcsname + = t% + \else\ifx\temp\offword + \expandafter\let\csname SETtxicodequotebacktick\endcsname + = \relax + \else + \errhelp = \EMsimple + \errmessage{Unknown @codequotebacktick value `\temp', must be on|off}% + \fi\fi +} + % [Knuth] pp. 380,381,391, disable Spanish ligatures ?` and !` of \tt font. \def\noligaturesquoteleft{\relax\lq} @@ -2347,7 +2360,9 @@ end \else\ifx\next-% \else\ifx\next.% \else\ptexslash - \fi\fi\fi} + \fi\fi\fi + \aftersmartic +} % like \smartslanted except unconditionally uses \ttsl, and no ic. % @var is set to this for defun arguments. @@ -2357,9 +2372,15 @@ end % ttsl for book titles, do we? \def\cite#1{{\sl #1}\futurelet\next\smartitaliccorrection} +\def\aftersmartic{} +\def\var#1{% + \let\saveaftersmartic = \aftersmartic + \def\aftersmartic{\null\let\aftersmartic=\saveaftersmartic}% + \smartslanted{#1}% +} + \let\i=\smartitalic \let\slanted=\smartslanted -\def\var#1{\smartslanted{#1}} \let\dfn=\smartslanted \let\emph=\smartitalic @@ -2455,7 +2476,7 @@ end \plainfrenchspacing #1% }% - \null + \null % reset spacefactor to 1000 } % We *must* turn on hyphenation at `-' and `_' in @code. @@ -2487,6 +2508,8 @@ end } } +\def\codex #1{\tclose{#1}\endgroup} + \def\realdash{-} \def\codedash{-\discretionary{}{}{}} \def\codeunder{% @@ -2500,7 +2523,6 @@ end \discretionary{}{}{}}% {\_}% } -\def\codex #1{\tclose{#1}\endgroup} % An additional complication: the above will allow breaks after, e.g., % each of the four underscores in __typeof__. This is undesirable in @@ -2520,63 +2542,18 @@ end \allowcodebreaksfalse \else \errhelp = \EMsimple - \errmessage{Unknown @allowcodebreaks option `\txiarg'}% + \errmessage{Unknown @allowcodebreaks option `\txiarg', must be true|false}% \fi\fi } -% @kbd is like @code, except that if the argument is just one @key command, -% then @kbd has no effect. -\def\kbd#1{{\setupmarkupstyle{kbd}\def\look{#1}\expandafter\kbdfoo\look??\par}} - -% @kbdinputstyle -- arg is `distinct' (@kbd uses slanted tty font always), -% `example' (@kbd uses ttsl only inside of @example and friends), -% or `code' (@kbd uses normal tty font always). -\parseargdef\kbdinputstyle{% - \def\txiarg{#1}% - \ifx\txiarg\worddistinct - \gdef\kbdexamplefont{\ttsl}\gdef\kbdfont{\ttsl}% - \else\ifx\txiarg\wordexample - \gdef\kbdexamplefont{\ttsl}\gdef\kbdfont{\tt}% - \else\ifx\txiarg\wordcode - \gdef\kbdexamplefont{\tt}\gdef\kbdfont{\tt}% - \else - \errhelp = \EMsimple - \errmessage{Unknown @kbdinputstyle option `\txiarg'}% - \fi\fi\fi -} -\def\worddistinct{distinct} -\def\wordexample{example} -\def\wordcode{code} - -% Default is `distinct'. -\kbdinputstyle distinct - -\def\xkey{\key} -\def\kbdfoo#1#2#3\par{\def\one{#1}\def\three{#3}\def\threex{??}% -\ifx\one\xkey\ifx\threex\three \key{#2}% -\else{\tclose{\kbdfont\setupmarkupstyle{kbd}\look}}\fi -\else{\tclose{\kbdfont\setupmarkupstyle{kbd}\look}}\fi} - -% For @indicateurl, @env, @command quotes seem unnecessary, so use \code. -\let\indicateurl=\code -\let\env=\code -\let\command=\code - -% @clicksequence{File @click{} Open ...} -\def\clicksequence#1{\begingroup #1\endgroup} - -% @clickstyle @arrow (by default) -\parseargdef\clickstyle{\def\click{#1}} -\def\click{\arrow} - % @uref (abbreviation for `urlref') takes an optional (comma-separated) % second argument specifying the text to display and an optional third % arg as text to display instead of (rather than in addition to) the url -% itself. First (mandatory) arg is the url. Perhaps eventually put in -% a hypertex \special here. -% -\def\uref#1{\douref #1,,,\finish} -\def\douref#1,#2,#3,#4\finish{\begingroup +% itself. First (mandatory) arg is the url. +% (This \urefnobreak definition isn't used now, leaving it for a while +% for comparison.) +\def\urefnobreak#1{\dourefnobreak #1,,,\finish} +\def\dourefnobreak#1,#2,#3,#4\finish{\begingroup \unsepspaces \pdfurl{#1}% \setbox0 = \hbox{\ignorespaces #3}% @@ -2597,6 +2574,103 @@ end \endlink \endgroup} +% This \urefbreak definition is the active one. +\def\urefbreak{\begingroup \urefcatcodes \dourefbreak} +\let\uref=\urefbreak +\def\dourefbreak#1{\urefbreakfinish #1,,,\finish} +\def\urefbreakfinish#1,#2,#3,#4\finish{% doesn't work in @example + \unsepspaces + \pdfurl{#1}% + \setbox0 = \hbox{\ignorespaces #3}% + \ifdim\wd0 > 0pt + \unhbox0 % third arg given, show only that + \else + \setbox0 = \hbox{\ignorespaces #2}% + \ifdim\wd0 > 0pt + \ifpdf + \unhbox0 % PDF: 2nd arg given, show only it + \else + \unhbox0\ (\urefcode{#1})% DVI: 2nd arg given, show both it and url + \fi + \else + \urefcode{#1}% only url given, so show it + \fi + \fi + \endlink +\endgroup} + +% Allow line breaks around only a few characters (only). +\def\urefcatcodes{% + \catcode\ampChar=\active \catcode\dotChar=\active + \catcode\hashChar=\active \catcode\questChar=\active + \catcode\slashChar=\active +} +{ + \urefcatcodes + % + \global\def\urefcode{\begingroup + \setupmarkupstyle{code}% + \urefcatcodes + \let&\urefcodeamp + \let.\urefcodedot + \let#\urefcodehash + \let?\urefcodequest + \let/\urefcodeslash + \codex + } + % + % By default, they are just regular characters. + \global\def&{\normalamp} + \global\def.{\normaldot} + \global\def#{\normalhash} + \global\def?{\normalquest} + \global\def/{\normalslash} +} + +% we put a little stretch before and after the breakable chars, to help +% line breaking of long url's. The unequal skips make look better in +% cmtt at least, especially for dots. +\def\urefprestretch{\urefprebreak \hskip0pt plus.13em } +\def\urefpoststretch{\urefpostbreak \hskip0pt plus.1em } +% +\def\urefcodeamp{\urefprestretch \&\urefpoststretch} +\def\urefcodedot{\urefprestretch .\urefpoststretch} +\def\urefcodehash{\urefprestretch \#\urefpoststretch} +\def\urefcodequest{\urefprestretch ?\urefpoststretch} +\def\urefcodeslash{\futurelet\next\urefcodeslashfinish} +{ + \catcode`\/=\active + \global\def\urefcodeslashfinish{% + \urefprestretch \slashChar + % Allow line break only after the final / in a sequence of + % slashes, to avoid line break between the slashes in http://. + \ifx\next/\else \urefpoststretch \fi + } +} + +% One more complication: by default we'll break after the special +% characters, but some people like to break before the special chars, so +% allow that. Also allow no breaking at all, for manual control. +% +\parseargdef\urefbreakstyle{% + \def\txiarg{#1}% + \ifx\txiarg\wordnone + \def\urefprebreak{\nobreak}\def\urefpostbreak{\nobreak} + \else\ifx\txiarg\wordbefore + \def\urefprebreak{\allowbreak}\def\urefpostbreak{\nobreak} + \else\ifx\txiarg\wordafter + \def\urefprebreak{\nobreak}\def\urefpostbreak{\allowbreak} + \else + \errhelp = \EMsimple + \errmessage{Unknown @urefbreakstyle setting `\txiarg'}% + \fi\fi\fi +} +\def\wordafter{after} +\def\wordbefore{before} +\def\wordnone{none} + +\urefbreakstyle after + % @url synonym for @uref, since that's how everyone uses it. % \let\url=\uref @@ -2618,6 +2692,51 @@ end \let\email=\uref \fi +% @kbd is like @code, except that if the argument is just one @key command, +% then @kbd has no effect. +\def\kbd#1{{\setupmarkupstyle{kbd}\def\look{#1}\expandafter\kbdfoo\look??\par}} + +% @kbdinputstyle -- arg is `distinct' (@kbd uses slanted tty font always), +% `example' (@kbd uses ttsl only inside of @example and friends), +% or `code' (@kbd uses normal tty font always). +\parseargdef\kbdinputstyle{% + \def\txiarg{#1}% + \ifx\txiarg\worddistinct + \gdef\kbdexamplefont{\ttsl}\gdef\kbdfont{\ttsl}% + \else\ifx\txiarg\wordexample + \gdef\kbdexamplefont{\ttsl}\gdef\kbdfont{\tt}% + \else\ifx\txiarg\wordcode + \gdef\kbdexamplefont{\tt}\gdef\kbdfont{\tt}% + \else + \errhelp = \EMsimple + \errmessage{Unknown @kbdinputstyle setting `\txiarg'}% + \fi\fi\fi +} +\def\worddistinct{distinct} +\def\wordexample{example} +\def\wordcode{code} + +% Default is `distinct'. +\kbdinputstyle distinct + +\def\xkey{\key} +\def\kbdfoo#1#2#3\par{\def\one{#1}\def\three{#3}\def\threex{??}% +\ifx\one\xkey\ifx\threex\three \key{#2}% +\else{\tclose{\kbdfont\setupmarkupstyle{kbd}\look}}\fi +\else{\tclose{\kbdfont\setupmarkupstyle{kbd}\look}}\fi} + +% For @indicateurl, @env, @command quotes seem unnecessary, so use \code. +\let\indicateurl=\code +\let\env=\code +\let\command=\code + +% @clicksequence{File @click{} Open ...} +\def\clicksequence#1{\begingroup #1\endgroup} + +% @clickstyle @arrow (by default) +\parseargdef\clickstyle{\def\click{#1}} +\def\click{\arrow} + % Typeset a dimension, e.g., `in' or `pt'. The only reason for the % argument is to make the input look right: @dmn{pt} instead of @dmn{}pt. % @@ -2639,6 +2758,7 @@ end \ifx\temp\empty \else \space ({\unsepspaces \ignorespaces \temp \unskip})% \fi + \null % reset \spacefactor=1000 } % @abbr for "Comput. J." and the like. @@ -2651,6 +2771,7 @@ end \ifx\temp\empty \else \space ({\unsepspaces \ignorespaces \temp \unskip})% \fi + \null % reset \spacefactor=1000 } % @asis just yields its argument. Used with @table, for example. @@ -2715,20 +2836,48 @@ end } } +% @inlinefmt{FMTNAME,PROCESSED-TEXT} and @inlineraw{FMTNAME,RAW-TEXT}. +% Ignore unless FMTNAME == tex; then it is like @iftex and @tex, +% except specified as a normal braced arg, so no newlines to worry about. +% +\def\outfmtnametex{tex} +% +\long\def\inlinefmt#1{\doinlinefmt #1,\finish} +\long\def\doinlinefmt#1,#2,\finish{% + \def\inlinefmtname{#1}% + \ifx\inlinefmtname\outfmtnametex \ignorespaces #2\fi +} +% For raw, must switch into @tex before parsing the argument, to avoid +% setting catcodes prematurely. Doing it this way means that, for +% example, @inlineraw{html, foo{bar} gets a parse error instead of being +% ignored. But this isn't important because if people want a literal +% *right* brace they would have to use a command anyway, so they may as +% well use a command to get a left brace too. We could re-use the +% delimiter character idea from \verb, but it seems like overkill. +% +\long\def\inlineraw{\tex \doinlineraw} +\long\def\doinlineraw#1{\doinlinerawtwo #1,\finish} +\def\doinlinerawtwo#1,#2,\finish{% + \def\inlinerawname{#1}% + \ifx\inlinerawname\outfmtnametex \ignorespaces #2\fi + \endgroup % close group opened by \tex. +} + \message{glyphs,} % and logos. -% @@ prints an @. +% @@ prints an @, as does @atchar{}. \def\@{\char64 } +\let\atchar=\@ -% Used to generate quoted braces. Unless we're in typewriter, use -% \ecfont because the CM text fonts do not have braces, and we don't -% want to switch into math. +% @{ @} @lbracechar{} @rbracechar{} all generate brace characters. +% Unless we're in typewriter, use \ecfont because the CM text fonts do +% not have braces, and we don't want to switch into math. \def\mylbrace{{\ifmonospace\else\ecfont\fi \char123}} \def\myrbrace{{\ifmonospace\else\ecfont\fi \char125}} -\let\{=\mylbrace -\let\}=\myrbrace +\let\{=\mylbrace \let\lbracechar=\{ +\let\}=\myrbrace \let\rbracechar=\} \begingroup % Definitions to produce \{ and \} commands for indices, % and @{ and @} for the aux/toc files. @@ -2856,7 +3005,7 @@ end {\tentt \global\dimen0 = 3em}% Width of the box. \dimen2 = .55pt % Thickness of rules % The text. (`r' is open on the right, `e' somewhat less so on the left.) -\setbox0 = \hbox{\kern-.75pt \reducedsf error\kern-1.5pt} +\setbox0 = \hbox{\kern-.75pt \reducedsf \putworderror\kern-1.5pt} % \setbox\errorbox=\hbox to \dimen0{\hfil \hsize = \dimen0 \advance\hsize by -5.8pt % Space to left+right. @@ -3005,7 +3154,7 @@ end % Textures 1.7.7 (preloaded format=plain 93.10.14) (68K) 16 APR 2004 02:38 % so we'll define it if necessary. % -\ifx\Orb\undefined +\ifx\Orb\thisisundefined \def\Orb{\mathhexbox20D} \fi @@ -3033,8 +3182,9 @@ end \newif\ifsetshortcontentsaftertitlepage \let\setshortcontentsaftertitlepage = \setshortcontentsaftertitlepagetrue -\parseargdef\shorttitlepage{\begingroup\hbox{}\vskip 1.5in \chaprm \centerline{#1}% - \endgroup\page\hbox{}\page} +\parseargdef\shorttitlepage{% + \begingroup \hbox{}\vskip 1.5in \chaprm \centerline{#1}% + \endgroup\page\hbox{}\page} \envdef\titlepage{% % Open one extra group, as we want to close it in the middle of \Etitlepage. @@ -3094,7 +3244,7 @@ end \finishedtitlepagetrue } -%%% Macros to be used within @titlepage: +% Macros to be used within @titlepage: \let\subtitlerm=\tenrm \def\subtitlefont{\subtitlerm \normalbaselineskip = 13pt \normalbaselines} @@ -3127,7 +3277,7 @@ end } -%%% Set up page headings and footings. +% Set up page headings and footings. \let\thispage=\folio @@ -3279,7 +3429,7 @@ end % This produces Day Month Year style of output. % Only define if not already defined, in case a txi-??.tex file has set % up a different format (e.g., txi-cs.tex does this). -\ifx\today\undefined +\ifx\today\thisisundefined \def\today{% \number\day\space \ifcase\month @@ -3826,18 +3976,18 @@ end \setbox0=\vbox{X}\global\multitablelinespace=\the\baselineskip \global\advance\multitablelinespace by-\ht0 \fi -%% Test to see if parskip is larger than space between lines of -%% table. If not, do nothing. -%% If so, set to same dimension as multitablelinespace. +% Test to see if parskip is larger than space between lines of +% table. If not, do nothing. +% If so, set to same dimension as multitablelinespace. \ifdim\multitableparskip>\multitablelinespace \global\multitableparskip=\multitablelinespace -\global\advance\multitableparskip-7pt %% to keep parskip somewhat smaller - %% than skip between lines in the table. +\global\advance\multitableparskip-7pt % to keep parskip somewhat smaller + % than skip between lines in the table. \fi% \ifdim\multitableparskip=0pt \global\multitableparskip=\multitablelinespace -\global\advance\multitableparskip-7pt %% to keep parskip somewhat smaller - %% than skip between lines in the table. +\global\advance\multitableparskip-7pt % to keep parskip somewhat smaller + % than skip between lines in the table. \fi} @@ -4349,6 +4499,7 @@ end % % Commands that take arguments. \definedummyword\acronym + \definedummyword\anchor \definedummyword\cite \definedummyword\code \definedummyword\command @@ -5242,7 +5393,8 @@ end \global\let\subsubsection = \appendixsubsubsec } -\outer\parseargdef\unnumbered{\unnmhead0{#1}} % normally unnmhead0 calls unnumberedzzz +% normally unnmhead0 calls unnumberedzzz: +\outer\parseargdef\unnumbered{\unnmhead0{#1}} \def\unnumberedzzz#1{% \global\secno=0 \global\subsecno=0 \global\subsubsecno=0 \global\advance\unnumberedno by 1 @@ -5286,40 +5438,47 @@ end \let\top\unnumbered % Sections. +% \outer\parseargdef\numberedsec{\numhead1{#1}} % normally calls seczzz \def\seczzz#1{% \global\subsecno=0 \global\subsubsecno=0 \global\advance\secno by 1 \sectionheading{#1}{sec}{Ynumbered}{\the\chapno.\the\secno}% } -\outer\parseargdef\appendixsection{\apphead1{#1}} % normally calls appendixsectionzzz +% normally calls appendixsectionzzz: +\outer\parseargdef\appendixsection{\apphead1{#1}} \def\appendixsectionzzz#1{% \global\subsecno=0 \global\subsubsecno=0 \global\advance\secno by 1 \sectionheading{#1}{sec}{Yappendix}{\appendixletter.\the\secno}% } \let\appendixsec\appendixsection -\outer\parseargdef\unnumberedsec{\unnmhead1{#1}} % normally calls unnumberedseczzz +% normally calls unnumberedseczzz: +\outer\parseargdef\unnumberedsec{\unnmhead1{#1}} \def\unnumberedseczzz#1{% \global\subsecno=0 \global\subsubsecno=0 \global\advance\secno by 1 \sectionheading{#1}{sec}{Ynothing}{\the\unnumberedno.\the\secno}% } % Subsections. -\outer\parseargdef\numberedsubsec{\numhead2{#1}} % normally calls numberedsubseczzz +% +% normally calls numberedsubseczzz: +\outer\parseargdef\numberedsubsec{\numhead2{#1}} \def\numberedsubseczzz#1{% \global\subsubsecno=0 \global\advance\subsecno by 1 \sectionheading{#1}{subsec}{Ynumbered}{\the\chapno.\the\secno.\the\subsecno}% } -\outer\parseargdef\appendixsubsec{\apphead2{#1}} % normally calls appendixsubseczzz +% normally calls appendixsubseczzz: +\outer\parseargdef\appendixsubsec{\apphead2{#1}} \def\appendixsubseczzz#1{% \global\subsubsecno=0 \global\advance\subsecno by 1 \sectionheading{#1}{subsec}{Yappendix}% {\appendixletter.\the\secno.\the\subsecno}% } -\outer\parseargdef\unnumberedsubsec{\unnmhead2{#1}} %normally calls unnumberedsubseczzz +% normally calls unnumberedsubseczzz: +\outer\parseargdef\unnumberedsubsec{\unnmhead2{#1}} \def\unnumberedsubseczzz#1{% \global\subsubsecno=0 \global\advance\subsecno by 1 \sectionheading{#1}{subsec}{Ynothing}% @@ -5327,21 +5486,25 @@ end } % Subsubsections. -\outer\parseargdef\numberedsubsubsec{\numhead3{#1}} % normally numberedsubsubseczzz +% +% normally numberedsubsubseczzz: +\outer\parseargdef\numberedsubsubsec{\numhead3{#1}} \def\numberedsubsubseczzz#1{% \global\advance\subsubsecno by 1 \sectionheading{#1}{subsubsec}{Ynumbered}% {\the\chapno.\the\secno.\the\subsecno.\the\subsubsecno}% } -\outer\parseargdef\appendixsubsubsec{\apphead3{#1}} % normally appendixsubsubseczzz +% normally appendixsubsubseczzz: +\outer\parseargdef\appendixsubsubsec{\apphead3{#1}} \def\appendixsubsubseczzz#1{% \global\advance\subsubsecno by 1 \sectionheading{#1}{subsubsec}{Yappendix}% {\appendixletter.\the\secno.\the\subsecno.\the\subsubsecno}% } -\outer\parseargdef\unnumberedsubsubsec{\unnmhead3{#1}} %normally unnumberedsubsubseczzz +% normally unnumberedsubsubseczzz: +\outer\parseargdef\unnumberedsubsubsec{\unnmhead3{#1}} \def\unnumberedsubsubseczzz#1{% \global\advance\subsubsecno by 1 \sectionheading{#1}{subsubsec}{Ynothing}% @@ -5391,14 +5554,13 @@ end % (including whitespace, linebreaking, etc. around it), % given all the information in convenient, parsed form. -%%% Args are the skip and penalty (usually negative) +% Args are the skip and penalty (usually negative) \def\dobreak#1#2{\par\ifdim\lastskip<#1\removelastskip\penalty#2\vskip#1\fi} -%%% Define plain chapter starts, and page on/off switching for it % Parameter controlling skip before chapter headings (if needed) - \newskip\chapheadingskip +% Define plain chapter starts, and page on/off switching for it. \def\chapbreak{\dobreak \chapheadingskip {-4000}} \def\chappager{\par\vfill\supereject} % Because \domark is called before \chapoddpage, the filler page will @@ -5601,6 +5763,8 @@ end % \def\sectionheading#1#2#3#4{% {% + \checkenv{}% should not be in an environment. + % % Switch to the right set of fonts. \csname #2fonts\endcsname \rmisbold % @@ -5718,7 +5882,6 @@ end % This is purely so the last item on the list is a known \penalty > % 10000. This is so \startdefun can avoid allowing breakpoints after % section headings. Otherwise, it would insert a valid breakpoint between: - % % @section sec-whatever % @deffn def-whatever \penalty 10001 @@ -6136,6 +6299,12 @@ end \normbskip=\baselineskip \normpskip=\parskip \normlskip=\lineskip % Flag to tell @lisp, etc., not to narrow margin. \let\nonarrowing = t% + % + % If this cartouche directly follows a sectioning command, we need the + % \parskip glue (backspaced over by default) or the cartouche can + % collide with the section heading. + \ifnum\lastpenalty>10000 \vskip\parskip \fi + % \vbox\bgroup \baselineskip=0pt\parskip=0pt\lineskip=0pt \carttop @@ -6149,7 +6318,7 @@ end \lineskip=\normlskip \parskip=\normpskip \vskip -\parskip - \comment % For explanation, see the end of \def\group. + \comment % For explanation, see the end of def\group. } \def\Ecartouche{% \ifhmode\par\fi @@ -6346,7 +6515,7 @@ end % \def\Equotation{% \par - \ifx\quotationauthor\undefined\else + \ifx\quotationauthor\thisisundefined\else % indent a bit. \leftline{\kern 2\leftskip \sl ---\quotationauthor}% \fi @@ -6505,6 +6674,7 @@ end \makevalueexpandable \setupverbatim \indexnofonts % Allow `@@' and other weird things in file names. + \wlog{texinfo.tex: doing @verbatiminclude of #1^^J}% \input #1 \afterenvbreak }% @@ -6554,7 +6724,7 @@ end % commands also insert a nobreak penalty, and we don't want to allow % a break between a section heading and a defun. % - % As a minor refinement, we avoid "club" headers by signalling + % As a further refinement, we avoid "club" headers by signalling % with penalty of 10003 after the very first @deffn in the % sequence (see above), and penalty of 10002 after any following % @def command. @@ -6621,13 +6791,36 @@ end \def\domakedefun#1#2#3{% \envdef#1{% \startdefun + \doingtypefnfalse % distinguish typed functions from all else \parseargusing\activeparens{\printdefunline#3}% }% \def#2{\dodefunx#1}% \def#3% } -%%% Untyped functions: +\newif\ifdoingtypefn % doing typed function? +\newif\ifrettypeownline % typeset return type on its own line? + +% @deftypefnnewline on|off says whether the return type of typed functions +% are printed on their own line. This affects @deftypefn, @deftypefun, +% @deftypeop, and @deftypemethod. +% +\parseargdef\deftypefnnewline{% + \def\temp{#1}% + \ifx\temp\onword + \expandafter\let\csname SETtxideftypefnnl\endcsname + = \empty + \else\ifx\temp\offword + \expandafter\let\csname SETtxideftypefnnl\endcsname + = \relax + \else + \errhelp = \EMsimple + \errmessage{Unknown @txideftypefnnl value `\temp', + must be on|off}% + \fi\fi +} + +% Untyped functions: % @deffn category name args \makedefun{deffn}{\deffngeneral{}} @@ -6646,7 +6839,7 @@ end \defname{#2}{}{#3}\magicamp\defunargs{#4\unskip}% } -%%% Typed functions: +% Typed functions: % @deftypefn category type name args \makedefun{deftypefn}{\deftypefngeneral{}} @@ -6661,10 +6854,11 @@ end % \def\deftypefngeneral#1#2 #3 #4 #5\endheader{% \dosubind{fn}{\code{#4}}{#1}% + \doingtypefntrue \defname{#2}{#3}{#4}\defunargs{#5\unskip}% } -%%% Typed variables: +% Typed variables: % @deftypevr category type var args \makedefun{deftypevr}{\deftypecvgeneral{}} @@ -6682,7 +6876,7 @@ end \defname{#2}{#3}{#4}\defunargs{#5\unskip}% } -%%% Untyped variables: +% Untyped variables: % @defvr category var args \makedefun{defvr}#1 {\deftypevrheader{#1} {} } @@ -6693,7 +6887,8 @@ end % \defcvof {category of}class var args \def\defcvof#1#2 {\deftypecvof{#1}#2 {} } -%%% Type: +% Types: + % @deftp category name args \makedefun{deftp}#1 #2 #3\endheader{% \doind{tp}{\code{#2}}% @@ -6721,25 +6916,49 @@ end % We are followed by (but not passed) the arguments, if any. % \def\defname#1#2#3{% + \par % Get the values of \leftskip and \rightskip as they were outside the @def... \advance\leftskip by -\defbodyindent % - % How we'll format the type name. Putting it in brackets helps + % Determine if we are typesetting the return type of a typed function + % on a line by itself. + \rettypeownlinefalse + \ifdoingtypefn % doing a typed function specifically? + % then check user option for putting return type on its own line: + \expandafter\ifx\csname SETtxideftypefnnl\endcsname\relax \else + \rettypeownlinetrue + \fi + \fi + % + % How we'll format the category name. Putting it in brackets helps % distinguish it from the body text that may end up on the next line % just below it. \def\temp{#1}% \setbox0=\hbox{\kern\deflastargmargin \ifx\temp\empty\else [\rm\temp]\fi} % - % Figure out line sizes for the paragraph shape. + % Figure out line sizes for the paragraph shape. We'll always have at + % least two. + \tempnum = 2 + % % The first line needs space for \box0; but if \rightskip is nonzero, % we need only space for the part of \box0 which exceeds it: \dimen0=\hsize \advance\dimen0 by -\wd0 \advance\dimen0 by \rightskip + % + % If doing a return type on its own line, we'll have another line. + \ifrettypeownline + \advance\tempnum by 1 + \def\maybeshapeline{0in \hsize}% + \else + \def\maybeshapeline{}% + \fi + % % The continuations: \dimen2=\hsize \advance\dimen2 by -\defargsindent - % (plain.tex says that \dimen1 should be used only as global.) - \parshape 2 0in \dimen0 \defargsindent \dimen2 % - % Put the type name to the right margin. + % The final paragraph shape: + \parshape \tempnum 0in \dimen0 \maybeshapeline \defargsindent \dimen2 + % + % Put the category name at the right margin. \noindent \hbox to 0pt{% \hfil\box0 \kern-\hsize @@ -6761,8 +6980,16 @@ end % . this still does not fix the ?` and !` ligatures, but so far no % one has made identifiers using them :). \df \tt - \def\temp{#2}% return value type - \ifx\temp\empty\else \tclose{\temp} \fi + \def\temp{#2}% text of the return type + \ifx\temp\empty\else + \tclose{\temp}% typeset the return type + \ifrettypeownline + % put return type on its own line; prohibit line break following: + \hfil\vadjust{\nobreak}\break + \else + \space % type on same line, so just followed by a space + \fi + \fi % no return type #3% output function name }% {\rm\enskip}% hskip 0.5 em of \tenrm @@ -6880,7 +7107,7 @@ end % To do this right we need a feature of e-TeX, \scantokens, % which we arrange to emulate with a temporary file in ordinary TeX. -\ifx\eTeXversion\undefined +\ifx\eTeXversion\thisisundefined \newwrite\macscribble \def\scantokens#1{% \toks0={#1}% @@ -6905,12 +7132,14 @@ end % ... and for \example: \spaceisspace % - % The \empty here causes a following catcode 5 newline to be eaten - % as part of reading whitespace after a control sequence. It does - % not eat a catcode 13 newline. There's no good way to handle the - % two cases. See the Macro Details node in the manual for the - % workaround we currently have to recommend for macros and + % The \empty here causes a following catcode 5 newline to be eaten as + % part of reading whitespace after a control sequence. It does not + % eat a catcode 13 newline. There's no good way to handle the two + % cases (untried: maybe e-TeX's \everyeof could help, though plain TeX + % would then have different behavior). See the Macro Details node in + % the manual for the workaround we recommend for macros and % line-oriented commands. + % \scantokens{#1\empty}% \endgroup} @@ -7045,9 +7274,15 @@ end \def\macroxxx#1{% \getargs{#1}% now \macname is the macname and \argl the arglist \ifx\argl\empty % no arguments - \paramno=0 + \paramno=0\relax \else \expandafter\parsemargdef \argl;% + \if\paramno>256\relax + \ifx\eTeXversion\thisisundefined + \errhelp = \EMsimple + \errmessage{You need eTeX to compile a file with macros with more than 256 arguments} + \fi + \fi \fi \if1\csname ismacro.\the\macname\endcsname \message{Warning: redefining \the\macname}% @@ -7097,9 +7332,17 @@ end \def\getmacname#1 #2\relax{\macname={#1}} \def\getmacargs#1{\def\argl{#1}} +% For macro processing make @ a letter so that we can make Texinfo private macro names. +\edef\texiatcatcode{\the\catcode`\@} +\catcode `@=11\relax + % Parse the optional {params} list. Set up \paramno and \paramlist -% so \defmacro knows what to do. Define \macarg.blah for each blah -% in the params list to be ##N where N is the position in that list. +% so \defmacro knows what to do. Define \macarg.BLAH for each BLAH +% in the params list to some hook where the argument si to be expanded. If +% there are less than 10 arguments that hook is to be replaced by ##N where N +% is the position in that list, that is to say the macro arguments are to be +% defined `a la TeX in the macro body. +% % That gets used by \mbodybackslash (above). % % We need to get `macro parameter char #' into several definitions. @@ -7109,12 +7352,33 @@ end % % The same technique is used to protect \eatspaces till just before % the macro is used. - +% +% If there are 10 or more arguments, a different technique is used, where the +% hook remains in the body, and when macro is to be expanded the body is +% processed again to replace the arguments. +% +% In that case, the hook is \the\toks N-1, and we simply set \toks N-1 to the +% argument N value and then \edef the body (nothing else will expand because of +% the catcode regime underwhich the body was input). +% +% If you compile with TeX (not eTeX), and you have macros with 10 or more +% arguments, you need that no macro has more than 256 arguments, otherwise an +% error is produced. \def\parsemargdef#1;{% \paramno=0\def\paramlist{}% \let\hash\relax \let\xeatspaces\relax \parsemargdefxxx#1,;,% + % In case that there are 10 or more arguments we parse again the arguments + % list to set new definitions for the \macarg.BLAH macros corresponding to + % each BLAH argument. It was anyhow needed to parse already once this list + % in order to count the arguments, and as macros with at most 9 arguments + % are by far more frequent than macro with 10 or more arguments, defining + % twice the \macarg.BLAH macros does not cost too much processing power. + \ifnum\paramno<10\relax\else + \paramno0\relax + \parsemmanyargdef@@#1,;,% 10 or more arguments + \fi } \def\parsemargdefxxx#1,{% \if#1;\let\next=\relax @@ -7125,16 +7389,205 @@ end \edef\paramlist{\paramlist\hash\the\paramno,}% \fi\next} +\def\parsemmanyargdef@@#1,{% + \if#1;\let\next=\relax + \else + \let\next=\parsemmanyargdef@@ + \edef\tempb{\eatspaces{#1}}% + \expandafter\def\expandafter\tempa + \expandafter{\csname macarg.\tempb\endcsname}% + % Note that we need some extra \noexpand\noexpand, this is because we + % don't want \the to be expanded in the \parsermacbody as it uses an + % \xdef . + \expandafter\edef\tempa + {\noexpand\noexpand\noexpand\the\toks\the\paramno}% + \advance\paramno by 1\relax + \fi\next} + % These two commands read recursive and nonrecursive macro bodies. % (They're different since rec and nonrec macros end differently.) % + +\catcode `\@\texiatcatcode \long\def\parsemacbody#1@end macro% {\xdef\temp{\eatcr{#1}}\endgroup\defmacro}% \long\def\parsermacbody#1@end rmacro% {\xdef\temp{\eatcr{#1}}\endgroup\defmacro}% +\catcode `\@=11\relax + +\let\endargs@\relax +\let\nil@\relax +\def\nilm@{\nil@}% +\long\def\nillm@{\nil@}% + +% This macro is expanded during the Texinfo macro expansion, not during its +% definition. It gets all the arguments values and assigns them to macros +% macarg.ARGNAME +% +% #1 is the macro name +% #2 is the list of argument names +% #3 is the list of argument values +\def\getargvals@#1#2#3{% + \def\macargdeflist@{}% + \def\saveparamlist@{#2}% Need to keep a copy for parameter expansion. + \def\paramlist{#2,\nil@}% + \def\macroname{#1}% + \begingroup + \macroargctxt + \def\argvaluelist{#3,\nil@}% + \def\@tempa{#3}% + \ifx\@tempa\empty + \setemptyargvalues@ + \else + \getargvals@@ + \fi +} + +% +\def\getargvals@@{% + \ifx\paramlist\nilm@ + % Some sanity check needed here that \argvaluelist is also empty. + \ifx\argvaluelist\nillm@ + \else + \errhelp = \EMsimple + \errmessage{Too many arguments in macro `\macroname'!}% + \fi + \let\next\macargexpandinbody@ + \else + \ifx\argvaluelist\nillm@ + % No more arguments values passed to macro. Set remaining named-arg + % macros to empty. + \let\next\setemptyargvalues@ + \else + % pop current arg name into \@tempb + \def\@tempa##1{\pop@{\@tempb}{\paramlist}##1\endargs@}% + \expandafter\@tempa\expandafter{\paramlist}% + % pop current argument value into \@tempc + \def\@tempa##1{\longpop@{\@tempc}{\argvaluelist}##1\endargs@}% + \expandafter\@tempa\expandafter{\argvaluelist}% + % Here \@tempb is the current arg name and \@tempc is the current arg value. + % First place the new argument macro definition into \@tempd + \expandafter\macname\expandafter{\@tempc}% + \expandafter\let\csname macarg.\@tempb\endcsname\relax + \expandafter\def\expandafter\@tempe\expandafter{% + \csname macarg.\@tempb\endcsname}% + \edef\@tempd{\long\def\@tempe{\the\macname}}% + \push@\@tempd\macargdeflist@ + \let\next\getargvals@@ + \fi + \fi + \next +} + +\def\push@#1#2{% + \expandafter\expandafter\expandafter\def + \expandafter\expandafter\expandafter#2% + \expandafter\expandafter\expandafter{% + \expandafter#1#2}% +} + +% Replace arguments by their values in the macro body, and place the result +% in macro \@tempa +\def\macvalstoargs@{% + % To do this we use the property that token registers that are \the'ed + % within an \edef expand only once. So we are going to place all argument + % values into respective token registers. + % + % First we save the token context, and initialize argument numbering. + \begingroup + \paramno0\relax + % Then, for each argument number #N, we place the corresponding argument + % value into a new token list register \toks#N + \expandafter\putargsintokens@\saveparamlist@,;,% + % Then, we expand the body so that argument are replaced by their + % values. The trick for values not to be expanded themselves is that they + % are within tokens and that tokens expand only once in an \edef . + \edef\@tempc{\csname mac.\macroname .body\endcsname}% + % Now we restore the token stack pointer to free the token list registers + % which we have used, but we make sure that expanded body is saved after + % group. + \expandafter + \endgroup + \expandafter\def\expandafter\@tempa\expandafter{\@tempc}% + } + +\def\macargexpandinbody@{% + %% Define the named-macro outside of this group and then close this group. + \expandafter + \endgroup + \macargdeflist@ + % First the replace in body the macro arguments by their values, the result + % is in \@tempa . + \macvalstoargs@ + % Then we point at the \norecurse or \gobble (for recursive) macro value + % with \@tempb . + \expandafter\let\expandafter\@tempb\csname mac.\macroname .recurse\endcsname + % Depending on whether it is recursive or not, we need some tailing + % \egroup . + \ifx\@tempb\gobble + \let\@tempc\relax + \else + \let\@tempc\egroup + \fi + % And now we do the real job: + \edef\@tempd{\noexpand\@tempb{\macroname}\noexpand\scanmacro{\@tempa}\@tempc}% + \@tempd +} + +\def\putargsintokens@#1,{% + \if#1;\let\next\relax + \else + \let\next\putargsintokens@ + % First we allocate the new token list register, and give it a temporary + % alias \@tempb . + \toksdef\@tempb\the\paramno + % Then we place the argument value into that token list register. + \expandafter\let\expandafter\@tempa\csname macarg.#1\endcsname + \expandafter\@tempb\expandafter{\@tempa}% + \advance\paramno by 1\relax + \fi + \next +} + +% Save the token stack pointer into macro #1 +\def\texisavetoksstackpoint#1{\edef#1{\the\@cclvi}} +% Restore the token stack pointer from number in macro #1 +\def\texirestoretoksstackpoint#1{\expandafter\mathchardef\expandafter\@cclvi#1\relax} +% newtoks that can be used non \outer . +\def\texinonouternewtoks{\alloc@ 5\toks \toksdef \@cclvi} + +% Tailing missing arguments are set to empty +\def\setemptyargvalues@{% + \ifx\paramlist\nilm@ + \let\next\macargexpandinbody@ + \else + \expandafter\setemptyargvaluesparser@\paramlist\endargs@ + \let\next\setemptyargvalues@ + \fi + \next +} + +\def\setemptyargvaluesparser@#1,#2\endargs@{% + \expandafter\def\expandafter\@tempa\expandafter{% + \expandafter\def\csname macarg.#1\endcsname{}}% + \push@\@tempa\macargdeflist@ + \def\paramlist{#2}% +} -% This defines the macro itself. There are six cases: recursive and -% nonrecursive macros of zero, one, and many arguments. +% #1 is the element target macro +% #2 is the list macro +% #3,#4\endargs@ is the list value +\def\pop@#1#2#3,#4\endargs@{% + \def#1{#3}% + \def#2{#4}% +} +\long\def\longpop@#1#2#3,#4\endargs@{% + \long\def#1{#3}% + \long\def#2{#4}% +} + +% This defines a Texinfo @macro. There are eight cases: recursive and +% nonrecursive macros of zero, one, up to nine, and many arguments. % Much magic with \expandafter here. % \xdef is used so that macro definitions will survive the file % they're defined in; @include reads the file inside a group. @@ -7153,17 +7606,25 @@ end \expandafter\noexpand\csname\the\macname xxx\endcsname}% \expandafter\xdef\csname\the\macname xxx\endcsname##1{% \egroup\noexpand\scanmacro{\temp}}% - \else % many - \expandafter\xdef\csname\the\macname\endcsname{% - \bgroup\noexpand\macroargctxt - \noexpand\csname\the\macname xx\endcsname}% - \expandafter\xdef\csname\the\macname xx\endcsname##1{% - \expandafter\noexpand\csname\the\macname xxx\endcsname ##1,}% - \expandafter\expandafter - \expandafter\xdef - \expandafter\expandafter - \csname\the\macname xxx\endcsname - \paramlist{\egroup\noexpand\scanmacro{\temp}}% + \else + \ifnum\paramno<10\relax % at most 9 + \expandafter\xdef\csname\the\macname\endcsname{% + \bgroup\noexpand\macroargctxt + \noexpand\csname\the\macname xx\endcsname}% + \expandafter\xdef\csname\the\macname xx\endcsname##1{% + \expandafter\noexpand\csname\the\macname xxx\endcsname ##1,}% + \expandafter\expandafter + \expandafter\xdef + \expandafter\expandafter + \csname\the\macname xxx\endcsname + \paramlist{\egroup\noexpand\scanmacro{\temp}}% + \else % 10 or more + \expandafter\xdef\csname\the\macname\endcsname{% + \noexpand\getargvals@{\the\macname}{\argl}% + }% + \global\expandafter\let\csname mac.\the\macname .body\endcsname\temp + \global\expandafter\let\csname mac.\the\macname .recurse\endcsname\gobble + \fi \fi \else \ifcase\paramno @@ -7180,23 +7641,33 @@ end \egroup \noexpand\norecurse{\the\macname}% \noexpand\scanmacro{\temp}\egroup}% - \else % many - \expandafter\xdef\csname\the\macname\endcsname{% - \bgroup\noexpand\macroargctxt - \expandafter\noexpand\csname\the\macname xx\endcsname}% - \expandafter\xdef\csname\the\macname xx\endcsname##1{% - \expandafter\noexpand\csname\the\macname xxx\endcsname ##1,}% - \expandafter\expandafter - \expandafter\xdef - \expandafter\expandafter - \csname\the\macname xxx\endcsname - \paramlist{% - \egroup - \noexpand\norecurse{\the\macname}% - \noexpand\scanmacro{\temp}\egroup}% + \else % at most 9 + \ifnum\paramno<10\relax + \expandafter\xdef\csname\the\macname\endcsname{% + \bgroup\noexpand\macroargctxt + \expandafter\noexpand\csname\the\macname xx\endcsname}% + \expandafter\xdef\csname\the\macname xx\endcsname##1{% + \expandafter\noexpand\csname\the\macname xxx\endcsname ##1,}% + \expandafter\expandafter + \expandafter\xdef + \expandafter\expandafter + \csname\the\macname xxx\endcsname + \paramlist{% + \egroup + \noexpand\norecurse{\the\macname}% + \noexpand\scanmacro{\temp}\egroup}% + \else % 10 or more: + \expandafter\xdef\csname\the\macname\endcsname{% + \noexpand\getargvals@{\the\macname}{\argl}% + }% + \global\expandafter\let\csname mac.\the\macname .body\endcsname\temp + \global\expandafter\let\csname mac.\the\macname .recurse\endcsname\norecurse + \fi \fi \fi} +\catcode `\@\texiatcatcode\relax + \def\norecurse#1{\bgroup\cslet{#1}{macsave.#1}} % \braceorline decides whether the next nonwhitespace character is a @@ -7235,7 +7706,8 @@ end % @inforef is relatively simple. \def\inforef #1{\inforefzzz #1,,,,**} -\def\inforefzzz #1,#2,#3,#4**{\putwordSee{} \putwordInfo{} \putwordfile{} \file{\ignorespaces #3{}}, +\def\inforefzzz #1,#2,#3,#4**{% + \putwordSee{} \putwordInfo{} \putwordfile{} \file{\ignorespaces #3{}}, node \samp{\ignorespaces#1{}}} % @node's only job in TeX is to define \lastnode, which is used in @@ -7296,11 +7768,32 @@ end \toks0 = \expandafter{\lastsection}% \immediate \writexrdef{title}{\the\toks0 }% \immediate \writexrdef{snt}{\csname #2\endcsname}% \Ynumbered etc. - \safewhatsit{\writexrdef{pg}{\folio}}% will be written later, during \shipout + \safewhatsit{\writexrdef{pg}{\folio}}% will be written later, at \shipout }% \fi } +% @xrefautosectiontitle on|off says whether @section(ing) names are used +% automatically in xrefs, if the third arg is not explicitly specified. +% This was provided as a "secret" @set xref-automatic-section-title +% variable, now it's official. +% +\parseargdef\xrefautomaticsectiontitle{% + \def\temp{#1}% + \ifx\temp\onword + \expandafter\let\csname SETxref-automatic-section-title\endcsname + = \empty + \else\ifx\temp\offword + \expandafter\let\csname SETxref-automatic-section-title\endcsname + = \relax + \else + \errhelp = \EMsimple + \errmessage{Unknown @xrefautomaticsectiontitle value `\temp', + must be on|off}% + \fi\fi +} + + % @xref, @pxref, and @ref generate cross-references. For \xrefX, #1 is % the node name, #2 the name of the Info cross-reference, #3 the printed % node name, #4 the name of the Info file, #5 the name of the printed @@ -7309,26 +7802,36 @@ end \def\pxref#1{\putwordsee{} \xrefX[#1,,,,,,,]} \def\xref#1{\putwordSee{} \xrefX[#1,,,,,,,]} \def\ref#1{\xrefX[#1,,,,,,,]} +% +\newbox\topbox +\newbox\printedrefnamebox +\newbox\printedmanualbox +% \def\xrefX[#1,#2,#3,#4,#5,#6]{\begingroup \unsepspaces - \def\printedmanual{\ignorespaces #5}% + % \def\printedrefname{\ignorespaces #3}% - \setbox1=\hbox{\printedmanual\unskip}% - \setbox0=\hbox{\printedrefname\unskip}% - \ifdim \wd0 = 0pt + \setbox\printedrefnamebox = \hbox{\printedrefname\unskip}% + % + \def\printedmanual{\ignorespaces #5}% + \setbox\printedmanualbox = \hbox{\printedmanual\unskip}% + % + % If the printed reference name (arg #3) was not explicitly given in + % the @xref, figure out what we want to use. + \ifdim \wd\printedrefnamebox = 0pt % No printed node name was explicitly given. - \expandafter\ifx\csname SETxref-automatic-section-title\endcsname\relax - % Use the node name inside the square brackets. + \expandafter\ifx\csname SETxref-automatic-section-title\endcsname \relax + % Not auto section-title: use node name inside the square brackets. \def\printedrefname{\ignorespaces #1}% \else - % Use the actual chapter/section title appear inside - % the square brackets. Use the real section title if we have it. - \ifdim \wd1 > 0pt - % It is in another manual, so we don't have it. + % Auto section-title: use chapter/section title inside + % the square brackets if we have it. + \ifdim \wd\printedmanualbox > 0pt + % It is in another manual, so we don't have it; use node name. \def\printedrefname{\ignorespaces #1}% \else \ifhavexrefs - % We know the real title if we have the xref values. + % We (should) know the real title if we have the xref values. \def\printedrefname{\refx{#1-title}{}}% \else % Otherwise just copy the Info node name. @@ -7346,9 +7849,8 @@ end % etc. don't get their TeX definitions. \getfilename{#4}% % - % See comments at \activebackslashdouble. - {\activebackslashdouble \xdef\pdfxrefdest{#1}% - \backslashparens\pdfxrefdest}% + \edef\pdfxrefdest{#1}% + \txiescapepdf\pdfxrefdest % \leavevmode \startlink attr{/Border [0 0 0]}% @@ -7375,7 +7877,7 @@ end \iffloat\Xthisreftitle % If the user specified the print name (third arg) to the ref, % print it instead of our usual "Figure 1.2". - \ifdim\wd0 = 0pt + \ifdim\wd\printedrefnamebox = 0pt \refx{#1-snt}{}% \else \printedrefname @@ -7383,21 +7885,46 @@ end % % if the user also gave the printed manual name (fifth arg), append % "in MANUALNAME". - \ifdim \wd1 > 0pt + \ifdim \wd\printedmanualbox > 0pt \space \putwordin{} \cite{\printedmanual}% \fi \else % node/anchor (non-float) references. - % - % If we use \unhbox0 and \unhbox1 to print the node names, TeX does not - % insert empty discretionaries after hyphens, which means that it will - % not find a line break at a hyphen in a node names. Since some manuals - % are best written with fairly long node names, containing hyphens, this - % is a loss. Therefore, we give the text of the node name again, so it - % is as if TeX is seeing it for the first time. - \ifdim \wd1 > 0pt - \putwordSection{} ``\printedrefname'' \putwordin{} \cite{\printedmanual}% + % + % If we use \unhbox to print the node names, TeX does not insert + % empty discretionaries after hyphens, which means that it will not + % find a line break at a hyphen in a node names. Since some manuals + % are best written with fairly long node names, containing hyphens, + % this is a loss. Therefore, we give the text of the node name + % again, so it is as if TeX is seeing it for the first time. + % + % Cross-manual reference. Only include the "Section ``foo'' in" if + % the foo is neither missing or Top. Thus, @xref{,,,foo,The Foo Manual} + % outputs simply "see The Foo Manual". + \ifdim \wd\printedmanualbox > 0pt + % What is the 7sp about? The idea is that we also want to omit + % the Section part if we would be printing "Top", since they are + % clearly trying to refer to the whole manual. But, this being + % TeX, we can't easily compare strings while ignoring the possible + % spaces before and after in the input. By adding the arbitrary + % 7sp, we make it much less likely that a real node name would + % happen to have the same width as "Top" (e.g., in a monospaced font). + % I hope it will never happen in practice. + % + % For the same basic reason, we retypeset the "Top" at every + % reference, since the current font is indeterminate. + % + \setbox\topbox = \hbox{Top\kern7sp}% + \setbox2 = \hbox{\ignorespaces \printedrefname \unskip \kern7sp}% + \ifdim \wd2 > 7sp + \ifdim \wd2 = \wd\topbox \else + \putwordSection{} ``\printedrefname'' \putwordin{}\space + \fi + \fi + \cite{\printedmanual}% \else + % Reference in this manual. + % % _ (for example) has to be the character _ for the purposes of the % control sequence corresponding to the node, but it has to expand % into the usual \leavevmode...\vrule stuff for purposes of @@ -7409,7 +7936,7 @@ end \setbox2 = \hbox{\ignorespaces \refx{#1-snt}{}}% \ifdim \wd2 > 0pt \refx{#1-snt}\space\fi }% - % output the `[mynode]' via a macro so it can be overridden. + % output the `[mynode]' via the macro below so it can be overridden. \xrefprintnodename\printedrefname % % But we always want a comma and a space: @@ -7637,7 +8164,7 @@ end % space to prevent strange expansion errors.) \def\supereject{\par\penalty -20000\footnoteno =0 } -% @footnotestyle is meaningful for info output only. +% @footnotestyle is meaningful for Info output only. \let\footnotestyle=\comment {\catcode `\@=11 @@ -7700,6 +8227,8 @@ end % expands into a box, it must come within the paragraph, lest it % provide a place where TeX can split the footnote. \footstrut + % + % Invoke rest of plain TeX footnote routine. \futurelet\next\fo@t } }%end \catcode `\@=11 @@ -7787,7 +8316,7 @@ end it from ftp://tug.org/tex/epsf.tex.} % \def\image#1{% - \ifx\epsfbox\undefined + \ifx\epsfbox\thisiundefined \ifwarnednoepsf \else \errhelp = \noepsfhelp \errmessage{epsf.tex not found, images will be ignored}% @@ -8252,7 +8781,7 @@ directory should work if nowhere else does.} % % Latin1 (ISO-8859-1) character definitions. \def\latonechardefs{% - \gdef^^a0{~} + \gdef^^a0{\tie} \gdef^^a1{\exclamdown} \gdef^^a2{\missingcharmsg{CENT SIGN}} \gdef^^a3{{\pounds}} @@ -8282,7 +8811,7 @@ directory should work if nowhere else does.} \gdef^^b9{$^1$} \gdef^^ba{\ordm} % - \gdef^^bb{\guilletright} + \gdef^^bb{\guillemetright} \gdef^^bc{$1\over4$} \gdef^^bd{$1\over2$} \gdef^^be{$3\over4$} @@ -8374,7 +8903,7 @@ directory should work if nowhere else does.} % Latin2 (ISO-8859-2) character definitions. \def\lattwochardefs{% - \gdef^^a0{~} + \gdef^^a0{\tie} \gdef^^a1{\ogonek{A}} \gdef^^a2{\u{}} \gdef^^a3{\L} @@ -8547,7 +9076,7 @@ directory should work if nowhere else does.} \gdef\DeclareUnicodeCharacter#1#2{% \countUTFz = "#1\relax - \wlog{\space\space defining Unicode char U+#1 (decimal \the\countUTFz)}% + %\wlog{\space\space defining Unicode char U+#1 (decimal \the\countUTFz)}% \begingroup \parseXMLCharref \def\UTFviiiTwoOctets##1##2{% @@ -9223,28 +9752,21 @@ directory should work if nowhere else does.} \message{and turning on texinfo input format.} +\def^^L{\par} % remove \outer, so ^L can appear in an @comment + % DEL is a comment character, in case @c does not suffice. \catcode`\^^? = 14 % Define macros to output various characters with catcode for normal text. -\catcode`\"=\other -\catcode`\~=\other -\catcode`\^=\other -\catcode`\_=\other -\catcode`\|=\other -\catcode`\<=\other -\catcode`\>=\other -\catcode`\+=\other -\catcode`\$=\other -\def\normaldoublequote{"} -\def\normaltilde{~} -\def\normalcaret{^} -\def\normalunderscore{_} -\def\normalverticalbar{|} -\def\normalless{<} -\def\normalgreater{>} -\def\normalplus{+} -\def\normaldollar{$}%$ font-lock fix +\catcode`\"=\other \def\normaldoublequote{"} +\catcode`\$=\other \def\normaldollar{$}%$ font-lock fix +\catcode`\+=\other \def\normalplus{+} +\catcode`\<=\other \def\normalless{<} +\catcode`\>=\other \def\normalgreater{>} +\catcode`\^=\other \def\normalcaret{^} +\catcode`\_=\other \def\normalunderscore{_} +\catcode`\|=\other \def\normalverticalbar{|} +\catcode`\~=\other \def\normaltilde{~} % This macro is used to make a character print one way in \tt % (where it can probably be output as-is), and another way in other fonts, @@ -9322,14 +9844,24 @@ directory should work if nowhere else does.} % In texinfo, backslash is an active character; it prints the backslash % in fixed width font. -\catcode`\\=\active -@def@normalbackslash{{@tt@backslashcurfont}} +\catcode`\\=\active % @ for escape char from now on. + +% The story here is that in math mode, the \char of \backslashcurfont +% ends up printing the roman \ from the math symbol font (because \char +% in math mode uses the \mathcode, and plain.tex sets +% \mathcode`\\="026E). It seems better for @backslashchar{} to always +% print a typewriter backslash, hence we use an explicit \mathchar, +% which is the decimal equivalent of "715c (class 7, e.g., use \fam; +% ignored family value; char position "5C). We can't use " for the +% usual hex value because it has already been made active. +@def@normalbackslash{{@tt @ifmmode @mathchar29020 @else @backslashcurfont @fi}} +@let@backslashchar = @normalbackslash % @backslashchar{} is for user documents. + % On startup, @fixbackslash assigns: % @let \ = @normalbackslash - % \rawbackslash defines an active \ to do \backslashcurfont. % \otherbackslash defines an active \ to be a literal `\' character with -% catcode other. +% catcode other. We switch back and forth between these. @gdef@rawbackslash{@let\=@backslashcurfont} @gdef@otherbackslash{@let\=@realbackslash} @@ -9337,16 +9869,16 @@ directory should work if nowhere else does.} % the literal character `\'. % @def@normalturnoffactive{% - @let\=@normalbackslash @let"=@normaldoublequote - @let~=@normaltilde + @let$=@normaldollar %$ font-lock fix + @let+=@normalplus + @let<=@normalless + @let>=@normalgreater + @let\=@normalbackslash @let^=@normalcaret @let_=@normalunderscore @let|=@normalverticalbar - @let<=@normalless - @let>=@normalgreater - @let+=@normalplus - @let$=@normaldollar %$ font-lock fix + @let~=@normaltilde @markupsetuplqdefault @markupsetuprqdefault @unsepspaces @@ -9378,10 +9910,19 @@ directory should work if nowhere else does.} % Say @foo, not \foo, in error messages. @escapechar = `@@ +% These (along with & and #) are made active for url-breaking, so need +% active definitions as the normal characters. +@def@normaldot{.} +@def@normalquest{?} +@def@normalslash{/} + % These look ok in all fonts, so just make them not special. -@catcode`@& = @other -@catcode`@# = @other -@catcode`@% = @other +% @hashchar{} gets its own user-level command, because of #line. +@catcode`@& = @other @def@normalamp{&} +@catcode`@# = @other @def@normalhash{#} +@catcode`@% = @other @def@normalpercent{%} + +@let @hashchar = @normalhash @c Finally, make ` and ' active, so that txicodequoteundirected and @c txicodequotebacktick work right in, e.g., @w{@code{`foo'}}. If we @@ -7,7 +7,7 @@ */ /* - * Copyright (C) 1995 - 2001, 2003-2011 the Free Software Foundation, Inc. + * Copyright (C) 1995 - 2001, 2003-2012 the Free Software Foundation, Inc. * * This file is part of GAWK, the GNU implementation of the * AWK Programming Language. @@ -33,12 +33,8 @@ #include <dlfcn.h> -#ifdef __GNUC__ -static unsigned long long dummy; /* fake out gcc for dynamic loading? */ -#endif - /* do_ext --- load an extension at run-time: interface to load_ext */ - + NODE * do_ext(int nargs) { @@ -70,12 +66,6 @@ load_ext(const char *lib_name, const char *init_func, NODE *obj) int flags = RTLD_LAZY; int *gpl_compat; -#ifdef __GNUC__ - AWKNUM junk; - - junk = (AWKNUM) dummy; -#endif - if (do_sandbox) fatal(_("extensions are not allowed in sandbox mode")); diff --git a/extension/ChangeLog b/extension/ChangeLog index dff4cf67..0b3053ed 100644 --- a/extension/ChangeLog +++ b/extension/ChangeLog @@ -1,6 +1,11 @@ 2011-08-31 John Haque <j.eh@mchsi.com> - * arrayparm.c, filefuncs.c, fork.c, ordchr.c, readfile.c, - rwarray.c, testarg.c: Updated. + + * arrayparm.c, filefuncs.c, fork.c, ordchr.c, readfile.c, + rwarray.c, testarg.c: Updated. + +2012-03-28 Arnold D. Robbins <arnold@skeeve.com> + + * 4.0.1: Release tar ball made. 2011-06-23 Arnold D. Robbins <arnold@skeeve.com> @@ -2,7 +2,7 @@ NOTE: getopt is part of the C library, so if you don't know what "Keep this file name-space clean" means, talk to drepper@gnu.org before changing it! - Copyright (C) 1987-1996,1998-2004,2008,2009,2010 + Copyright (C) 1987-1996,1998-2004,2008,2009,2010,2011 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -17,9 +17,8 @@ Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA - 02110-1301 USA. */ + License along with the GNU C Library; if not, see + <http://www.gnu.org/licenses/>. */ /* This tells Alpha OSF/1 not to define a getopt prototype in <stdio.h>. Ditto for AIX 3.2 and <stdlib.h>. */ @@ -49,14 +48,22 @@ # endif #endif +/* !@#$%^&*() !!!!!!!! */ +#ifdef GAWK +#undef ELIDE_CODE +#endif + #ifndef ELIDE_CODE /* This needs to come after some library #include to get __GNU_LIBRARY__ defined. */ -#ifdef __GNU_LIBRARY__ -/* Don't include stdlib.h for non-GNU C libraries because some of them - contain conflicting prototypes for getopt. */ +#if defined (__GNU_LIBRARY__) || defined (__CYGWIN__) || defined(DJGPP) +/* Don't include stdlib.h for + * non-GNU C libraries + * non-Cygwin + * non-DJGPP + * because some of them contain conflicting prototypes for getopt. */ # include <stdlib.h> # include <unistd.h> #endif /* GNU C library. */ @@ -74,7 +81,7 @@ # define _(msgid) gettext (msgid) #endif -#if defined _LIBC && defined USE_IN_LIBIO +#if defined _LIBC # include <wchar.h> #endif @@ -526,23 +533,29 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring, || !strchr (optstring, argv[d->optind][1]))))) { char *nameend; + unsigned int namelen; const struct option *p; const struct option *pfound = NULL; + struct option_list + { + const struct option *p; + struct option_list *next; + int needs_free; + } *ambig_list = NULL; int exact = 0; - int ambig = 0; int indfound = -1; int option_index; for (nameend = d->__nextchar; *nameend && *nameend != '='; nameend++) /* Do nothing. */ ; + namelen = nameend - d->__nextchar; /* Test all long options for either exact match or abbreviated matches. */ for (p = longopts, option_index = 0; p->name; p++, option_index++) - if (!strncmp (p->name, d->__nextchar, nameend - d->__nextchar)) + if (!strncmp (p->name, d->__nextchar, namelen)) { - if ((unsigned int) (nameend - d->__nextchar) - == (unsigned int) strlen (p->name)) + if (namelen == (unsigned int) strlen (p->name)) { /* Exact match found. */ pfound = p; @@ -560,19 +573,47 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring, || pfound->has_arg != p->has_arg || pfound->flag != p->flag || pfound->val != p->val) + { /* Second or later nonexact match found. */ - ambig = 1; + struct option_list *newp = malloc (sizeof (*newp)); + newp->p = p; + newp->needs_free = 1; + newp->next = ambig_list; + ambig_list = newp; + } } - if (ambig && !exact) + if (ambig_list != NULL && !exact) { if (print_errors) { -#if defined _LIBC && defined USE_IN_LIBIO - char *buf; + struct option_list first; + first.p = pfound; + first.next = ambig_list; + first.needs_free = 0; + ambig_list = &first; + +#if defined _LIBC + char *buf = NULL; + size_t buflen = 0; + + FILE *fp = open_memstream (&buf, &buflen); + if (fp != NULL) + { + fprintf (fp, + _("%s: option '%s' is ambiguous; possibilities:"), + argv[0], argv[d->optind]); - if (__asprintf (&buf, _("%s: option '%s' is ambiguous\n"), - argv[0], argv[d->optind]) >= 0) + do + { + fprintf (fp, " '--%s'", ambig_list->p->name); + ambig_list = ambig_list->next; + } + while (ambig_list != NULL); + + fputc_unlocked ('\n', fp); + + if (__builtin_expect (fclose (fp) != EOF, 1)) { _IO_flockfile (stderr); @@ -586,9 +627,24 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring, free (buf); } + } #else - fprintf (stderr, _("%s: option '%s' is ambiguous\n"), + fprintf (stderr, + _("%s: option '%s' is ambiguous; possibilities:"), argv[0], argv[d->optind]); + do + { + struct option_list *tmp_next; + + fprintf (stderr, " '--%s'", ambig_list->p->name); + tmp_next = ambig_list->next; + if (ambig_list->needs_free) + free(ambig_list); + ambig_list = tmp_next; + } + while (ambig_list != NULL); + + fputc ('\n', stderr); #endif } d->__nextchar += strlen (d->__nextchar); @@ -611,7 +667,7 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring, { if (print_errors) { -#if defined _LIBC && defined USE_IN_LIBIO +#if defined _LIBC char *buf; int n; #endif @@ -619,7 +675,7 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring, if (argv[d->optind - 1][1] == '-') { /* --option */ -#if defined _LIBC && defined USE_IN_LIBIO +#if defined _LIBC n = __asprintf (&buf, _("\ %s: option '--%s' doesn't allow an argument\n"), argv[0], pfound->name); @@ -632,7 +688,7 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring, else { /* +option or -option */ -#if defined _LIBC && defined USE_IN_LIBIO +#if defined _LIBC n = __asprintf (&buf, _("\ %s: option '%c%s' doesn't allow an argument\n"), argv[0], argv[d->optind - 1][0], @@ -645,7 +701,7 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring, #endif } -#if defined _LIBC && defined USE_IN_LIBIO +#if defined _LIBC if (n >= 0) { _IO_flockfile (stderr); @@ -678,7 +734,7 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring, { if (print_errors) { -#if defined _LIBC && defined USE_IN_LIBIO +#if defined _LIBC char *buf; if (__asprintf (&buf, _("\ @@ -729,7 +785,7 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring, { if (print_errors) { -#if defined _LIBC && defined USE_IN_LIBIO +#if defined _LIBC char *buf; int n; #endif @@ -737,7 +793,7 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring, if (argv[d->optind][1] == '-') { /* --option */ -#if defined _LIBC && defined USE_IN_LIBIO +#if defined _LIBC n = __asprintf (&buf, _("%s: unrecognized option '--%s'\n"), argv[0], d->__nextchar); #else @@ -748,7 +804,7 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring, else { /* +option or -option */ -#if defined _LIBC && defined USE_IN_LIBIO +#if defined _LIBC n = __asprintf (&buf, _("%s: unrecognized option '%c%s'\n"), argv[0], argv[d->optind][0], d->__nextchar); #else @@ -757,7 +813,7 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring, #endif } -#if defined _LIBC && defined USE_IN_LIBIO +#if defined _LIBC if (n >= 0) { _IO_flockfile (stderr); @@ -795,19 +851,19 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring, { if (print_errors) { -#if defined _LIBC && defined USE_IN_LIBIO +#if defined _LIBC char *buf; int n; #endif -#if defined _LIBC && defined USE_IN_LIBIO +#if defined _LIBC n = __asprintf (&buf, _("%s: invalid option -- '%c'\n"), argv[0], c); #else fprintf (stderr, _("%s: invalid option -- '%c'\n"), argv[0], c); #endif -#if defined _LIBC && defined USE_IN_LIBIO +#if defined _LIBC if (n >= 0) { _IO_flockfile (stderr); @@ -838,6 +894,9 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring, int indfound = 0; int option_index; + if (longopts == NULL) + goto no_longs; + /* This is an option that requires an argument. */ if (*d->__nextchar != '\0') { @@ -850,7 +909,7 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring, { if (print_errors) { -#if defined _LIBC && defined USE_IN_LIBIO +#if defined _LIBC char *buf; if (__asprintf (&buf, @@ -924,7 +983,7 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring, { if (print_errors) { -#if defined _LIBC && defined USE_IN_LIBIO +#if defined _LIBC char *buf; if (__asprintf (&buf, _("%s: option '-W %s' is ambiguous\n"), @@ -964,7 +1023,7 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring, { if (print_errors) { -#if defined _LIBC && defined USE_IN_LIBIO +#if defined _LIBC char *buf; if (__asprintf (&buf, _("\ @@ -1003,7 +1062,7 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring, { if (print_errors) { -#if defined _LIBC && defined USE_IN_LIBIO +#if defined _LIBC char *buf; if (__asprintf (&buf, _("\ @@ -1045,6 +1104,8 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring, } return pfound->val; } + + no_longs: d->__nextchar = NULL; return 'W'; /* Let the application handle it. */ } @@ -1076,7 +1137,7 @@ _getopt_internal_r (int argc, char *const *argv, const char *optstring, { if (print_errors) { -#if defined _LIBC && defined USE_IN_LIBIO +#if defined _LIBC char *buf; if (__asprintf (&buf, _("\ @@ -1,5 +1,5 @@ /* Declarations for getopt. - Copyright (C) 1989-1994,1996-1999,2001,2003,2004 + Copyright (C) 1989-1994,1996-1999,2001,2003,2004,2009,2010 Free Software Foundation, Inc. This file is part of the GNU C Library. @@ -14,9 +14,8 @@ Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA - 02110-1301 USA. */ + License along with the GNU C Library; if not, see + <http://www.gnu.org/licenses/>. */ #ifndef _GETOPT_H @@ -158,9 +157,9 @@ extern int getopt (int ___argc, char *const *___argv, const char *__shortopts) additional functionality can be disable at runtime. This redirection helps to also do this at runtime. */ # ifdef __REDIRECT - extern int __REDIRECT (getopt, (int ___argc, char *const *___argv, + extern int __REDIRECT_NTH (getopt, (int ___argc, char *const *___argv, const char *__shortopts), - __posix_getopt) __THROW; + __posix_getopt); # else extern int __posix_getopt (int ___argc, char *const *___argv, const char *__shortopts) __THROW; @@ -13,9 +13,8 @@ Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA - 02110-1301 USA. */ + License along with the GNU C Library; if not, see + <http://www.gnu.org/licenses/>. */ #ifdef HAVE_CONFIG_H #include <config.h> @@ -46,6 +45,11 @@ #endif #endif +/* !@#$%^&*() !!!!!!!! */ +#ifdef GAWK +#undef ELIDE_CODE +#endif + #ifndef ELIDE_CODE diff --git a/getopt_int.h b/getopt_int.h index 6a32a514..b0d7695a 100644 --- a/getopt_int.h +++ b/getopt_int.h @@ -14,9 +14,8 @@ Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA - 02110-1301 USA. */ + License along with the GNU C Library; if not, see + <http://www.gnu.org/licenses/>. */ #ifndef _GETOPT_INT_H #define _GETOPT_INT_H 1 @@ -3408,7 +3408,7 @@ get_read_timeout(IOBUF *iop) if (full_idx == NULL || strcmp(name, last_name) != 0) { val = in_PROCINFO(name, "READ_TIMEOUT", & full_idx); if (last_name != NULL) - efree((char *) last_name); + efree((void *) last_name); last_name = estrdup(name, strlen(name)); } else /* use cached full index */ val = in_array(PROCINFO_node, full_idx); diff --git a/m4/ChangeLog b/m4/ChangeLog index 22dc64dc..782171ab 100644 --- a/m4/ChangeLog +++ b/m4/ChangeLog @@ -1,6 +1,15 @@ 2012-04-01 John Haque <j.eh@mchsi.com> + * mpfr.m4: New file. +2012-03-30 Arnold D. Robbins <arnold@skeeve.com> + + * noreturn.m4: New file. + +2012-03-28 Arnold D. Robbins <arnold@skeeve.com> + + * 4.0.1: Release tar ball made. + 2011-06-23 Arnold D. Robbins <arnold@skeeve.com> * ChangeLog.0: Rotated ChangeLog into this file. diff --git a/m4/noreturn.m4 b/m4/noreturn.m4 new file mode 100644 index 00000000..7fa7d377 --- /dev/null +++ b/m4/noreturn.m4 @@ -0,0 +1,38 @@ +dnl Date: Sun, 26 Feb 2012 11:31:50 -0800 +dnl From: Paul Eggert <eggert@cs.ucla.edu> +dnl To: arnold@skeeve.com +dnl CC: bug-grep@gnu.org +dnl Subject: Re: avoid gcc 4.6.2 'may be used before set' warnings in dfa.c +dnl +dnl On 02/26/2012 01:18 AM, arnold@skeeve.com wrote: +dnl > It looks like I can just use the code as it is now in grep. I have asked +dnl > for compile failures and haven't gotten any. +dnl +dnl Sure, but the gnulib support for this is better +dnl than what's in the dfa code. It could be that +dnl your correspondents aren't using the less-common hosts +dnl or compiler warning options that gnulib is ported to. +dnl +dnl In the long run stdnoreturn.h or _Noreturn is the way to go, +dnl since they're part of the C standard. +dnl +dnl If you'd rather not create a separate file, how about if +dnl we change the dfa code to use _Noreturn instead of +dnl <stdnoreturn.h> and noreturn, and you can put the +dnl following into your configure.ac so that config.h +dnl defines _Noreturn the same way gnulib does: + +AC_DEFUN([GAWK_AC_NORETURN],[ +AH_VERBATIM([_Noreturn], +[/* The _Noreturn keyword of C11. */ +#ifndef _Noreturn +# if (3 <= __GNUC__ || (__GNUC__ == 2 && 8 <= __GNUC_MINOR__) \ + || 0x5110 <= __SUNPRO_C) +# define _Noreturn __attribute__ ((__noreturn__)) +# elif defined _MSC_VER && 1200 <= _MSC_VER +# define _Noreturn __declspec (noreturn) +# else +# define _Noreturn +# endif +#endif +])]) @@ -3,7 +3,7 @@ */ /* - * Copyright (C) 1986, 1988, 1989, 1991-2011 the Free Software Foundation, Inc. + * Copyright (C) 1986, 1988, 1989, 1991-2012 the Free Software Foundation, Inc. * * This file is part of GAWK, the GNU implementation of the * AWK Programming Language. @@ -24,7 +24,7 @@ */ /* FIX THIS BEFORE EVERY RELEASE: */ -#define UPDATE_YEAR 2011 +#define UPDATE_YEAR 2012 #include "awk.h" #include "getopt.h" @@ -293,6 +293,8 @@ main(int argc, char **argv) /* init array handling. */ array_init(); + output_fp = stdout; + /* we do error messages ourselves on invalid options */ opterr = FALSE; @@ -1417,17 +1419,20 @@ init_groupset() */ ngroups = getgroups(0, NULL); #endif - if (ngroups == -1) - fatal(_("could not find groups: %s"), strerror(errno)); - else if (ngroups == 0) + /* If an error or no groups, just give up and get on with life. */ + if (ngroups <= 0) return; /* fill in groups */ emalloc(groupset, GETGROUPS_T *, ngroups * sizeof(GETGROUPS_T), "init_groupset"); ngroups = getgroups(ngroups, groupset); - if (ngroups == -1) - fatal(_("could not find groups: %s"), strerror(errno)); + /* same thing here, give up but keep going */ + if (ngroups == -1) { + efree(groupset); + ngroups = 0; + groupset = NULL; + } #endif } diff --git a/mbsupport.h b/mbsupport.h index f647d788..db6788ce 100644 --- a/mbsupport.h +++ b/mbsupport.h @@ -3,7 +3,7 @@ */ /* - * Copyright (C) 2004, 2005, 2011 the Free Software Foundation, Inc. + * Copyright (C) 2004, 2005, 2011, 2012 the Free Software Foundation, Inc. * * This file is part of GAWK, the GNU implementation of the * AWK Programming Language. @@ -81,7 +81,9 @@ #define WEOF EOF #define towupper toupper #define towlower tolower -#define btowc(x) (x) +#ifndef DJGPP +#define btowc(x) ((int)x) +#endif #define iswalnum isalnum #define iswalpha isalpha #define iswupper isupper diff --git a/missing_d/ChangeLog b/missing_d/ChangeLog index 4a06aa60..c6913bc2 100644 --- a/missing_d/ChangeLog +++ b/missing_d/ChangeLog @@ -1,3 +1,7 @@ +2012-03-28 Arnold D. Robbins <arnold@skeeve.com> + + * 4.0.1: Release tar ball made. + 2011-11-02 Pat Rankin <r.pat.rankin@gmail.com> * wcmisc.c: Make code be conditional upon corresponding !HAVE_WCxxx. diff --git a/pc/ChangeLog b/pc/ChangeLog index 27a485c5..8d340b45 100644 --- a/pc/ChangeLog +++ b/pc/ChangeLog @@ -32,6 +32,64 @@ * config.h: Comment out "#undef HAVE_LIBREADLINE" (again). +2012-03-29 Arnold D. Robbins <arnold@skeeve.com> + + * config.h: Add definition for _Noreturn. + +2012-03-28 Arnold D. Robbins <arnold@skeeve.com> + + * 4.0.1: Release tar ball made. + +2012-03-20 Arnold D. Robbins <arnold@skeeve.com> + + * Makefile.tst (printfbad3): New test. + +2012-03-14 Eli Zaretskii <eliz@gnu.org> + + * gawkmisc.pc (btowc): New version for DJGPP. + +2012-03-01 Scott Deifik <scottd.mail@sbcglobal.net> + + * Makefile.tst: Sync with mainline version. + +2012-03-01 Eli Zaretskii <eliz@gnu.org> + + * Makefile: Quiet confusing info messages from the linker when + gawk is linked against readline as a shared library. + +2012-02-22 Eli Zaretskii <eliz@gnu.org> + + * Makefile.tst: Update CMP and CP definitions, add "Expect xxxx to + fail with MinGW" messages as needed. + +2012-02-15 Arnold D. Robbins <arnold@skeeve.com> + + * gawkmisc.pc (execvp): Modify signature, return -1 + on error. + +2012-02-11 Eli Zaretskii <eliz@gnu.org> + + Fix dependencies in pc/Makefile. + * Makefile ($(ALLOBJS) $(LIBOBJS) eval_p$O profile_p$O): Add eval_d$O, + debug$O, and command$O. + + Support MinGW build with the readline library. + * Makefile (default): Add a line for the mingw32-readline target. + (mingw32-readline): New target, passes -DHAVE_LIBREADLINE to the + compiler and adds -lreadline to the linker command line. + + * config.sed: Comment out "#undef HAVE_LIBREADLINE", so that it + could be #define'd on the compiler command line. + +2012-02-10 Arnold D. Robbins <arnold@skeeve.com> + + * gawkmisc.pc (execvp): New function based on code from Eli + Zaretskii to make dgawk's restarting the debugger work. + +2012-01-27 Scott Deifik <scottd.mail@sbcglobal.net> + + * Makefile.tst: Sync with mainline version. + 2011-12-12 Scott Deifik <scottd.mail@sbcglobal.net> * Makefile.tst: Sync with mainline version. diff --git a/pc/Makefile b/pc/Makefile index f01849a8..21fe0bfe 100644 --- a/pc/Makefile +++ b/pc/Makefile @@ -178,6 +178,13 @@ mingw32-readline-mpfr: OBJ=popen.o LNK=LMINGW32 LF="-gdwarf-2 -g3" \ LF2="-lmpfr -lgmp -lreadline -lmsvcp60 -Wl,--enable-auto-import" RSP= +mingw32-readline: + $(MAK) all \ + CC=gcc O=.o CF="-DHAVE_LIBREADLINE -O2 -gdwarf-2 -g3" OBJ=popen.o \ + LNK=LMINGW32 PLNK=PLMINGW32 DLNK=DLMINGW32 \ + LF="-gdwarf-2 -g3" \ + LF2="-lreadline -lmsvcp60 -Wl,--enable-auto-import" RSP= + # Define BIND for BINDless compiles, otherwise $($(BIND)) may break. BIND = EMPTY PBIND = EMPTY diff --git a/pc/Makefile.tst b/pc/Makefile.tst index 83a8a32a..ab566531 100644 --- a/pc/Makefile.tst +++ b/pc/Makefile.tst @@ -1,6 +1,6 @@ # Makefile for GNU Awk test suite. # -# Copyright (C) 1988-2011 the Free Software Foundation, Inc. +# Copyright (C) 1988-2012 the Free Software Foundation, Inc. # # This file is part of GAWK, the GNU implementation of the # AWK Programming Language. @@ -86,8 +86,8 @@ PGAWK = ../gawk.exe -p #CMP = cmp # See the comment above for why you might want to set CMP to "env LFN=n diff" #CMP = env LFN=n diff -CMP = diff -#CMP = diff -c +#CMP = diff +CMP = diff -u #CMP = gcmp # cmp replacement program for PC where the error messages aren't @@ -96,9 +96,9 @@ TESTOUTCMP = $(AWK) -f ../testoutcmp.awk # Set your "cp," "mv," and "mkdir" commands here. Note: DOS's copy must take # forward slashes. -#CP = cp +CP = cp #CP = : && command -c copy -CP = command.com /c copy +#CP = command.com /c copy MV = cmd.exe /c ren @@ -124,37 +124,43 @@ abs_builddir = . # Get rid of core files when cleaning and generated .ok file CLEANFILES = core core.* fmtspcl.ok -# try to keep these sorted +# try to keep these sorted. each letter starts a new line BASIC_TESTS = \ addcomma anchgsub argarray arrayparm arrayprm2 arrayprm3 \ arrayref arrymem1 arryref2 arryref3 arryref4 arryref5 arynasty \ arynocls aryprm1 aryprm2 aryprm3 aryprm4 aryprm5 aryprm6 aryprm7 \ - aryprm8 arysubnm asgext awkpath back89 backgsub childin clobber \ - closebad clsflnam compare compare2 concat1 concat2 concat3 \ - concat4 convfmt datanonl defref delargv delarpm2 delarprm delfunc \ - dfastress dynlj eofsplit exitval1 exitval2 fcall_exit fcall_exit2 \ - fldchg fldchgnf fnamedat fnarray fnarray2 fnaryscl fnasgnm fnmisc \ - fordel forref forsimp fsbs fsrs fsspcoln fstabplus funsemnl funsmnam \ - funstack getline getline2 getline3 getline4 \ - getlnbuf getnr2tb getnr2tm \ + aryprm8 arysubnm asgext awkpath \ + back89 backgsub \ + childin clobber closebad clsflnam compare compare2 concat1 concat2 \ + concat3 concat4 convfmt \ + datanonl defref delargv delarpm2 delarprm delfunc dfastress dynlj \ + eofsplit exitval1 exitval2 \ + fcall_exit fcall_exit2 fldchg fldchgnf fnamedat fnarray fnarray2 \ + fnaryscl fnasgnm fnmisc fordel forref forsimp fsbs fsrs fsspcoln \ + fstabplus funsemnl funsmnam funstack \ + getline getline2 getline3 getline4 getlnbuf getnr2tb getnr2tm \ gsubasgn gsubtest gsubtst2 gsubtst3 gsubtst4 gsubtst5 gsubtst6 \ gsubtst7 gsubtst8 \ - hex hsprint inputred intest intprec iobug1 leaddig leadnl litoct \ - longsub longwrds manglprm math membug1 messages minusstr mmap8k \ - mtchi18n nasty nasty2 negexp negrange nested nfldstr nfneg \ - nfset nlfldsep nlinstr nlstrina noeffect nofile nofmtch noloop1 \ - noloop2 nonl noparms nors nulrsend numindex numsubstr octsub ofmt \ - ofmta ofmtbig ofmtfidl ofmts onlynl opasnidx opasnslf paramdup \ - paramres paramtyp parse1 parsefld parseme pcntplus posix2008sub \ - prdupval prec printf0 printf1 prmarscl prmreuse prt1eval prtoeval \ - rand range1 rebt8b1 redfilnm regeq regrange reindops reparse resplit \ - rs rsnul1nl rsnulbig rsnulbig2 rstest1 rstest2 rstest3 rstest4 \ - rstest5 rswhite scalar sclforin sclifin sortempty splitargv \ - splitarr splitdef splitvar splitwht strcat1 strnum1 strtod subamp \ - subi18n subsepnm subslash substr swaplns synerr1 synerr2 tradanch \ - tweakfld uninit2 uninit3 uninit4 uninit5 uninitialized unterm \ - uparrfs wideidx wideidx2 widesub widesub2 widesub3 widesub4 \ - wjposer1 zero2 zeroe0 zeroflag + hex hsprint \ + inputred intest intprec iobug1 \ + leaddig leadnl litoct longsub longwrds \ + manglprm math membug1 messages minusstr mmap8k mtchi18n \ + nasty nasty2 negexp negrange nested nfldstr nfneg nfset nlfldsep \ + nlinstr nlstrina noeffect nofile nofmtch noloop1 noloop2 nonl \ + noparms nors nulrsend numindex numsubstr \ + octsub ofmt ofmta ofmtbig ofmtfidl ofmts onlynl opasnidx opasnslf \ + paramdup paramres paramtyp parse1 parsefld parseme pcntplus \ + posix2008sub prdupval prec printf0 printf1 prmarscl prmreuse \ + prt1eval prtoeval \ + rand range1 rebt8b1 redfilnm regeq regrange reindops reparse \ + resplit rri1 rs rsnul1nl rsnulbig rsnulbig2 rstest1 rstest2 \ + rstest3 rstest4 rstest5 rswhite \ + scalar sclforin sclifin sortempty splitargv splitarr splitdef \ + splitvar splitwht strcat1 strnum1 strtod subamp subi18n \ + subsepnm subslash substr swaplns synerr1 synerr2 tradanch tweakfld \ + uninit2 uninit3 uninit4 uninit5 uninitialized unterm uparrfs \ + wideidx wideidx2 widesub widesub2 widesub3 widesub4 wjposer1 \ + zero2 zeroe0 zeroflag UNIX_TESTS = \ fflush getlnhd localenl pid pipeio1 pipeio2 poundbang rtlen rtlen01 \ @@ -162,15 +168,16 @@ UNIX_TESTS = \ GAWK_EXT_TESTS = \ aadelete1 aadelete2 aarray1 aasort aasorti argtest arraysort \ - backw badargs beginfile1 beginfile2 \ - binmode1 clos1way delsub devfd devfd1 \ - devfd2 dumpvars exit fieldwdth fpat1 fpat2 fpat3 \ - fpatnull fsfwfs funlen \ + backw badargs beginfile1 beginfile2 binmode1 \ + clos1way delsub devfd devfd1 devfd2 dumpvars exit \ + fieldwdth fpat1 fpat2 fpat3 fpatnull fsfwfs funlen \ fwtest fwtest2 fwtest3 \ gensub gensub2 getlndir gnuops2 gnuops3 gnureops \ - icasefs icasers igncdym igncfs ignrcas2 ignrcase indirectcall lint \ - lintold lintwarn manyfiles match1 match2 match3 mbstr1 nastyparm \ - next nondec nondec2 patsplit posix printfbad1 printfbad2 procinfs \ + icasefs icasers igncdym igncfs ignrcas2 ignrcase indirectcall \ + lint lintold lintwarn \ + manyfiles match1 match2 match3 mbstr1 \ + nastyparm next nondec nondec2 \ + patsplit posix printfbad1 printfbad2 printfbad3 procinfs \ profile1 profile2 profile3 pty1 \ rebuf regx8bit reint reint2 rsstart1 \ rsstart2 rsstart3 rstest6 shadow sortfor sortu splitarg4 strftime \ @@ -451,6 +458,7 @@ pipeio1:: pipeio2:: @echo $@ + @echo Expect pipeio2 to fail with MinGW @$(AWK) -v SRCDIR=$(srcdir) -f $(srcdir)/pipeio2.awk >_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ @@ -674,6 +682,7 @@ devfd1:: # The program text is the '1' which will print each record. How compact can you get? devfd2:: @echo $@ + @echo Expect devfd2 to fail in MinGW @$(AWK) 1 /dev/fd/4 /dev/fd/5 4< $(srcdir)/devfd.in1 5< $(srcdir)/devfd.in2 >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ @@ -701,7 +710,7 @@ localenl:: mbprintf1:: @echo $@ - @echo Expect mbprintf1 to fail with DJGPP. + @echo Expect mbprintf1 to fail with DJGPP and MinGW. @GAWKLOCALE=en_US.UTF-8 ; export GAWKLOCALE ; \ $(AWK) -f $(srcdir)/$@.awk $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >> _$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ @@ -720,7 +729,7 @@ mbprintf3:: mbfw1:: @echo $@ - @echo Expect mbfw1 to fail with DJGPP. + @echo Expect mbfw1 to fail with DJGPP and MinGW. @GAWKLOCALE=en_US.UTF-8 ; export GAWKLOCALE ; \ $(AWK) -f $(srcdir)/$@.awk $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >> _$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ @@ -743,13 +752,13 @@ printfbad2: printfbad2.ok beginfile1:: @echo $@ - @echo Expect beginfile1 to fail with DJGPP + @echo Expect beginfile1 to fail with DJGPP and MinGW @AWKPATH=$(srcdir) $(AWK) -f $@.awk $(srcdir)/$@.awk . ./no/such/file Makefile >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ beginfile2: @echo $@ - @-( cd $(srcdir) && AWK="$(abs_builddir)/$(AWKPROG)" $(srcdir)/$@.sh $(srcdir)/$@.in ) > _$@ 2>&1 + @-( cd $(srcdir) && LC_ALL=C AWK="$(abs_builddir)/$(AWKPROG)" $(srcdir)/$@.sh $(srcdir)/$@.in ) > _$@ 2>&1 # @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ @-$(TESTOUTCMP) $(srcdir)/$@.ok _$@ && rm -f _$@ @@ -786,10 +795,11 @@ posix2008sub: next: @echo $@ @-AWK="$(AWKPROG)" $(srcdir)/$@.sh > _$@ 2>&1 - @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + @-LC_ALL=C $(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ exit: @echo $@ + @echo Expect exit to fail with MinGW @-AWK="$(AWKPROG)" $(srcdir)/$@.sh > _$@ 2>&1 @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ @@ -823,6 +833,11 @@ mpfrbigint: @$(AWK) -M -f $(srcdir)/$@.awk > _$@ 2>&1 @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ +rri1:: + @echo $@ + @[ -z "$$GAWKLOCALE" ] && GAWKLOCALE=en_US.UTF-8; \ + AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ + @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ Gt-dummy: # file Maketests, generated from Makefile.am by the Gentests program addcomma: @@ -1032,6 +1047,7 @@ eofsplit: exitval2: @echo exitval2 + @echo Expect exitval2 to fail with MinGW @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ @@ -1197,6 +1213,7 @@ hex: hsprint: @echo hsprint + @echo Expect hsprint to fail with MinGW due to 3 digits in %e output @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ @@ -1533,11 +1550,13 @@ rstest3: rstest4: @echo rstest4 + @echo Expect rstest4 to fail with MinGW @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ rstest5: @echo rstest5 + @echo Expect rstest5 to fail with MinGW @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ @@ -1806,7 +1825,7 @@ gensub2: getlndir: @echo getlndir - @echo Expect getlndir to fail with DJGPP. + @echo Expect getlndir to fail with DJGPP and MinGW. @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ @@ -1902,6 +1921,7 @@ patsplit: posix: @echo posix + @echo Expect posix to fail with MinGW due to 3 digits in e+NNN exponent @AWKPATH=$(srcdir) $(AWK) -f $@.awk < $(srcdir)/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ @@ -1910,6 +1930,11 @@ printfbad1: @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ +printfbad3: + @echo printfbad3 + @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ + @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + procinfs: @echo procinfs @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @@ -1917,7 +1942,7 @@ procinfs: pty1: @echo pty1 - @echo Expect pty1 to fail with DJGPP. + @echo Expect pty1 to fail with DJGPP and MinGW. @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ @@ -1973,6 +1998,7 @@ double1: double2: @echo double2 + @echo Expect double2 to fail with MinGW due to 3 digits in e+NNN exponents @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ @@ -1993,6 +2019,7 @@ asorti: fmttest: @echo fmttest + @echo Expect fmttest to fail with MinGW due to 3 digits in e+NNN exponents @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ diff --git a/pc/config.h b/pc/config.h index 4893fe54..bc22a30a 100644 --- a/pc/config.h +++ b/pc/config.h @@ -425,7 +425,7 @@ #define PACKAGE_NAME "GNU Awk" /* Define to the full name and version of this package. */ -#define PACKAGE_STRING "GNU Awk 4.0.0f" +#define PACKAGE_STRING "GNU Awk 4.0.70" /* Define to the one symbol short name of this package. */ #define PACKAGE_TARNAME "gawk" @@ -434,7 +434,7 @@ #define PACKAGE_URL "http://www.gnu.org/software/gawk/" /* Define to the version of this package. */ -#define PACKAGE_VERSION "4.0.0f" +#define PACKAGE_VERSION "4.0.70" /* Define to 1 if *printf supports %F format */ #undef PRINTF_HAS_F_FORMAT @@ -496,7 +496,7 @@ /* Version number of package */ -#define VERSION "4.0.0f" +#define VERSION "4.0.70" /* Number of bits in a file offset, on hosts where this is settable. */ #undef _FILE_OFFSET_BITS @@ -507,6 +507,19 @@ /* Define to 1 if on MINIX. */ #undef _MINIX +/* The _Noreturn keyword of C11. */ +#ifndef _Noreturn +# if (3 <= __GNUC__ || (__GNUC__ == 2 && 8 <= __GNUC_MINOR__) \ + || 0x5110 <= __SUNPRO_C) +# define _Noreturn __attribute__ ((__noreturn__)) +# elif defined _MSC_VER && 1200 <= _MSC_VER +# define _Noreturn __declspec (noreturn) +# else +# define _Noreturn +# endif +#endif + + /* Define to 2 if the system does not provide POSIX.1 features except with this defined. */ #undef _POSIX_1_SOURCE diff --git a/pc/config.sed b/pc/config.sed index 7fe0f922..96b2c2d7 100644 --- a/pc/config.sed +++ b/pc/config.sed @@ -73,6 +73,8 @@ s/^#undef HAVE_FMOD *$/#define HAVE_FMOD 1/ #define HAVE_ISWUPPER 1\ #endif s/^#undef HAVE_LIBM *$/#define HAVE_LIBM 1/ +/^#undef HAVE_LIBREADLINE *$/c\ +/* #undef HAVE_LIBREADLINE */ s/^#undef HAVE_LIMITS_H *$/#define HAVE_LIMITS_H 1/ /^#undef HAVE_LOCALE_H *$/c\ #ifdef __MINGW32__\ diff --git a/pc/gawkmisc.pc b/pc/gawkmisc.pc index 64b42396..b2a67a50 100644 --- a/pc/gawkmisc.pc +++ b/pc/gawkmisc.pc @@ -3,7 +3,7 @@ */ /* - * Copyright (C) 1986, 1988, 1989, 1991 - 2003 the Free Software Foundation, Inc. + * Copyright (C) 1986, 1988, 1989, 1991 - 2003, 2012 the Free Software Foundation, Inc. * * This file is part of GAWK, the GNU implementation of the * AWK Progamming Language. @@ -569,6 +569,19 @@ wctob (wint_t wc) return EOF; } +/* + * On MS-Windows with MinGW, execvp causes the shell and the re-exec'ed + * dgawk to compete for the keyboard input. + * + * This will need work if we ever need a real version of execvp. + */ +int execvp(const char *file, const char *const *argv) +{ + if (_spawnvp(_P_WAIT, file, (const char * const *)argv) != -1) + exit(EXIT_SUCCESS); + + return -1; +} #endif /* __MINGW32__ */ #ifdef __DJGPP__ @@ -582,4 +595,12 @@ unsetenv (const char *name) return putenv (name); } +/* This is needed to defeat too-clever GCC warnings in dfa.c about + comparison being always false due to limited range of data type. */ +wint_t +btowc (int c) +{ + return c; +} + #endif /* __DJGPP__ */ diff --git a/pc/testoutcmp.awk b/pc/testoutcmp.awk index ff190155..33dcaa3f 100644 --- a/pc/testoutcmp.awk +++ b/pc/testoutcmp.awk @@ -1,5 +1,24 @@ # cmp replacement program for PC where the error messages aren't # exactly the same. should run even on old awk +# +# Copyright (C) 2011 the Free Software Foundation, Inc. +# +# This file is part of GAWK, the GNU implementation of the +# AWK Programming Language. +# +# GAWK is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# GAWK is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA { if (FNR == NR) diff --git a/po/ChangeLog b/po/ChangeLog index ff5d3695..d17674da 100644 --- a/po/ChangeLog +++ b/po/ChangeLog @@ -1,3 +1,7 @@ +2012-03-28 Arnold D. Robbins <arnold@skeeve.com> + + * 4.0.1: Release tar ball made. + 2011-07-17 Arnold D. Robbins <arnold@skeeve.com> * Makefile.in.in (dist2): Remove README from list of files checked for Binary files differ@@ -1,529 +1,486 @@ # Danish translation of gawk # Copyright (C) 2001 Free Software Foundation, Inc. # This file is distributed under the same license as the gawk package. -# Martin Sjögren <md9ms@mdstud.chalmers.se>, 2001-2002. +# Martin Sjögren <md9ms@mdstud.chalmers.se>, 2001-2002. # Christer Andersson <klamm@comhem.se>, 2007. -# Keld Simonsen <keld@keldix.com>, 2002,2011. -# Review by Torben Grøn Helligsø <torben-dansk@thel.dk>, 2011. +# Keld Simonsen <keld@keldix.com>, 2002,2011,2012. +# Review by Torben Grøn Helligsø <torben-dansk@thel.dk>, 2011. # Review by Ask Hjorth Larsen <asklarsen@gmail.com>, 2011. msgid "" msgstr "" -"Project-Id-Version: gawk 3.1.83\n" +"Project-Id-Version: gawk 4.0.0h\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" -"POT-Creation-Date: 2011-11-14 21:46+0200\n" -"PO-Revision-Date: 2011-05-22 10:37+0200\n" +"POT-Creation-Date: 2012-04-08 12:18+0300\n" +"PO-Revision-Date: 2012-02-06 10:37+0100\n" "Last-Translator: Keld Simonsen <keld@keldix.com>\n" "Language-Team: Danish <dansk@dansk-gruppen.dk>\n" "Language: da\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" +"Content-Type: text/plain; charset=iso-8859-1\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Lokalize 1.0\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: array.c:140 +#: array.c:267 #, c-format msgid "from %s" msgstr "fra %s" -#: array.c:248 +#: array.c:367 msgid "attempt to use a scalar value as array" -msgstr "forsøg pÃ¥ at bruge en skalar som array" +msgstr "forsøg på at bruge en skalar som array" -#: array.c:251 -#, c-format -msgid "attempt to use function `%s' as an array" -msgstr "forsøg pÃ¥ at bruge funktionen '%s' som et array" - -#: array.c:254 +#: array.c:369 #, c-format msgid "attempt to use scalar parameter `%s' as an array" -msgstr "forsøg pÃ¥ at bruge skalarparameteren '%s' som et array" +msgstr "forsøg på at bruge skalarparameteren '%s' som et array" -#: array.c:257 +#: array.c:372 #, c-format msgid "attempt to use scalar `%s' as an array" -msgstr "forsøg pÃ¥ at bruge skalar '%s' som et array" +msgstr "forsøg på at bruge skalar '%s' som et array" -#: array.c:302 array.c:707 builtin.c:84 builtin.c:1384 builtin.c:1426 -#: builtin.c:1439 builtin.c:1858 builtin.c:1870 eval.c:1135 eval.c:1139 -#: eval.c:1495 eval.c:1812 +#: array.c:419 array.c:585 builtin.c:85 builtin.c:1389 builtin.c:1431 +#: builtin.c:1444 builtin.c:1862 builtin.c:1874 eval.c:1096 eval.c:1100 +#: eval.c:1500 #, c-format msgid "attempt to use array `%s' in a scalar context" -msgstr "forsøg pÃ¥ at bruge array '%s' i skalarsammenhæng" - -#: array.c:513 -#, c-format -msgid "reference to uninitialized element `%s[\"%.*s\"]'" -msgstr "reference til ikke-initieret element '%s[\"%.*s\"]'" +msgstr "forsøg på at bruge array '%s' i skalarsammenhæng" -#: array.c:519 -#, c-format -msgid "subscript of array `%s' is null string" -msgstr "indeks i array '%s' er en tom streng" - -#: array.c:723 +#: array.c:592 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "delete: indeks '%s' findes ikke i array '%s'" -#: array.c:734 eval.c:1865 +#: array.c:606 #, c-format msgid "attempt to use scalar `%s[\"%.*s\"]' as an array" -msgstr "forsøg pÃ¥ at bruge skalaren '%s[\"%.*s\"]' som array" - -#: array.c:910 -#, c-format -msgid "%s: empty (null)\n" -msgstr "%s: tom (null)\n" - -#: array.c:915 -#, c-format -msgid "%s: empty (zero)\n" -msgstr "%s: tom (nul)\n" - -#: array.c:919 -#, c-format -msgid "%s: table_size = %d, array_size = %d\n" -msgstr "%s: tabelstørrelse = %d, arraystørrelse = %d\n" - -#: array.c:954 -#, c-format -msgid "%s: is parameter\n" -msgstr "%s: er parameter\n" - -#: array.c:958 -#, c-format -msgid "%s: array_ref to %s\n" -msgstr "%s: arrayreference til %s\n" +msgstr "forsøg på at bruge skalaren '%s[\"%.*s\"]' som array" -#: array.c:963 -msgid "adump: argument not an array" +#: array.c:794 +#, fuzzy +msgid "adump: first argument not an array" msgstr "adump: argument er ikke et array" -#: array.c:1086 +#: array.c:833 msgid "asort: second argument not an array" msgstr "asort: andet argument er ikke et array" -#: array.c:1087 +#: array.c:834 msgid "asorti: second argument not an array" msgstr "asorti: andet argument er ikke et array" -#: array.c:1094 +#: array.c:841 msgid "asort: first argument not an array" -msgstr "asort: første argument er ikke et array" +msgstr "asort: første argument er ikke et array" -#: array.c:1095 +#: array.c:842 msgid "asorti: first argument not an array" -msgstr "asorti: første argument er ikke et array" +msgstr "asorti: første argument er ikke et array" -#: array.c:1102 +#: array.c:849 msgid "asort: cannot use a subarray of first arg for second arg" msgstr "" -"asort: kan ikke bruge et underarray af første argument for andet argument" +"asort: kan ikke bruge et underarray af første argument for andet argument" -#: array.c:1103 +#: array.c:850 msgid "asorti: cannot use a subarray of first arg for second arg" msgstr "" -"asorti: kan ikke bruge et underarray af første argument for andet argument" +"asorti: kan ikke bruge et underarray af første argument for andet argument" -#: array.c:1108 +#: array.c:855 msgid "asort: cannot use a subarray of second arg for first arg" msgstr "" -"asort: kan ikke bruge et underarray af andet argument for første argument" +"asort: kan ikke bruge et underarray af andet argument for første argument" -#: array.c:1109 +#: array.c:856 msgid "asorti: cannot use a subarray of second arg for first arg" msgstr "" -"asorti: kan ikke bruge et underarray af andet argument for første argument" +"asorti: kan ikke bruge et underarray af andet argument for første argument" -#: array.c:1659 +#: array.c:1329 #, c-format msgid "`%s' is invalid as a function name" msgstr "'%s' er ugyldigt som funktionsnavn" -#: array.c:1663 +#: array.c:1333 #, c-format msgid "sort comparison function `%s' is not defined" msgstr "funktionen for sorteringssammenligning '%s' er ikke defineret" -#: awkgram.y:249 +#: awkgram.y:223 #, c-format msgid "%s blocks must have an action part" msgstr "%s-blokke skal have en handlingsdel" -#: awkgram.y:252 +#: awkgram.y:226 msgid "each rule must have a pattern or an action part" -msgstr "hver regel skal have et mønster eller en handlingsdel" +msgstr "hver regel skal have et mønster eller en handlingsdel" -#: awkgram.y:323 awkgram.y:334 +#: awkgram.y:295 awkgram.y:306 msgid "old awk does not support multiple `BEGIN' or `END' rules" msgstr "" -"gamle versioner af awk understøtter ikke flere 'BEGIN'- eller 'END'-regler" +"gamle versioner af awk understøtter ikke flere 'BEGIN'- eller 'END'-regler" -#: awkgram.y:371 +#: awkgram.y:343 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "'%s' er en indbygget funktion, den kan ikke omdefineres" -#: awkgram.y:432 +#: awkgram.y:389 msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "regexp-konstanten '//' ser ud som en C++-kommentar, men er det ikke" -#: awkgram.y:436 +#: awkgram.y:393 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "regexp-konstanten '/%s/' ser ud som en C-kommentar, men er det ikke" -#: awkgram.y:528 +#: awkgram.y:485 #, c-format msgid "duplicate case values in switch body: %s" -msgstr "dublet case-værdier i switch-krop %s" +msgstr "dublet case-værdier i switch-krop %s" -#: awkgram.y:549 +#: awkgram.y:506 msgid "duplicate `default' detected in switch body" msgstr "dublet 'default' opdaget i switch-krop" -#: awkgram.y:809 +#: awkgram.y:766 msgid "`break' is not allowed outside a loop or switch" -msgstr "'break' uden for en løkke eller switch er ikke tilladt" +msgstr "'break' uden for en løkke eller switch er ikke tilladt" -#: awkgram.y:818 +#: awkgram.y:775 msgid "`continue' is not allowed outside a loop" -msgstr "'continue' uden for en løkke er ikke tilladt" +msgstr "'continue' uden for en løkke er ikke tilladt" -#: awkgram.y:828 +#: awkgram.y:785 #, c-format msgid "`next' used in %s action" msgstr "'next' brugt i %s-handling" -#: awkgram.y:836 +#: awkgram.y:793 msgid "`nextfile' is a gawk extension" msgstr "'nextfile' er en gawk-udvidelse" -#: awkgram.y:841 +#: awkgram.y:798 #, c-format msgid "`nextfile' used in %s action" msgstr "'nextfile' brugt i %s-handling" -#: awkgram.y:865 +#: awkgram.y:822 msgid "`return' used outside function context" msgstr "'return' brugt uden for funktion" -#: awkgram.y:925 +#: awkgram.y:892 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "" -"alenestÃ¥ende 'print' i BEGIN eller END-regel skulle muligvis være 'print " +"alenestående 'print' i BEGIN eller END-regel skulle muligvis være 'print " "\"\"'" -#: awkgram.y:995 awkgram.y:999 awkgram.y:1023 +#: awkgram.y:962 awkgram.y:966 awkgram.y:990 msgid "`delete array' is a gawk extension" msgstr "'delete array' er en gawk-udvidelse" -#: awkgram.y:1019 +#: awkgram.y:986 msgid "`delete(array)' is a non-portable tawk extension" msgstr "'delete array' er en ikke-portabel udvidelse fra tawk" -#: awkgram.y:1135 +#: awkgram.y:1102 msgid "multistage two-way pipelines don't work" msgstr "flertrins dobbeltrettede datakanaler fungerer ikke" -#: awkgram.y:1238 +#: awkgram.y:1205 msgid "regular expression on right of assignment" -msgstr "regulært udtryk i højreleddet af en tildeling" +msgstr "regulært udtryk i højreleddet af en tildeling" -#: awkgram.y:1249 +#: awkgram.y:1216 msgid "regular expression on left of `~' or `!~' operator" -msgstr "regulært udtryk pÃ¥ venstre side af en '~'- eller '!~'-operator" +msgstr "regulært udtryk på venstre side af en '~'- eller '!~'-operator" -#: awkgram.y:1265 awkgram.y:1419 +#: awkgram.y:1232 awkgram.y:1383 msgid "old awk does not support the keyword `in' except after `for'" msgstr "" -"gamle versioner af awk understøtter ikke nøgleordet 'in' undtagen efter 'for'" +"gamle versioner af awk understøtter ikke nøgleordet 'in' undtagen efter 'for'" -#: awkgram.y:1275 +#: awkgram.y:1242 msgid "regular expression on right of comparison" -msgstr "regulært udtryk i højreleddet af en sammenligning" +msgstr "regulært udtryk i højreleddet af en sammenligning" -#: awkgram.y:1394 +#: awkgram.y:1358 #, c-format msgid "`getline var' invalid inside `%s' rule" msgstr "'getline var' ugyldig inden i '%s' regel" -#: awkgram.y:1397 eval.c:2504 +#: awkgram.y:1361 #, c-format msgid "`getline' invalid inside `%s' rule" msgstr "'getline' ugyldig inden i '%s' regel" -#: awkgram.y:1402 +#: awkgram.y:1366 msgid "non-redirected `getline' undefined inside END action" msgstr "ikke-omdirigeret 'getline' udefineret inden i END-handling" -#: awkgram.y:1421 +#: awkgram.y:1385 msgid "old awk does not support multidimensional arrays" -msgstr "gamle versioner af awk understøtter ikke flerdimensionale array" +msgstr "gamle versioner af awk understøtter ikke flerdimensionale array" -#: awkgram.y:1517 +#: awkgram.y:1481 msgid "call of `length' without parentheses is not portable" msgstr "kald af 'length' uden parenteser er ikke portabelt" -#: awkgram.y:1580 +#: awkgram.y:1545 msgid "indirect function calls are a gawk extension" msgstr "indirekte funktionskald er en gawk-udvidelse" -#: awkgram.y:1593 +#: awkgram.y:1558 #, c-format msgid "can not use special variable `%s' for indirect function call" msgstr "kan ikke bruge specialvariabel '%s' til indirekte funktionskald" -#: awkgram.y:1671 +#: awkgram.y:1636 msgid "invalid subscript expression" msgstr "ugyldigt indeksudtryk" -#: awkgram.y:1711 -msgid "use of non-array as array" -msgstr "brug af ikke-array som array" - -#: awkgram.y:1975 awkgram.y:1995 msg.c:98 +#: awkgram.y:1936 awkgram.y:1956 msg.c:96 msgid "warning: " msgstr "advarsel: " -#: awkgram.y:1993 msg.c:130 +#: awkgram.y:1954 msg.c:128 msgid "fatal: " msgstr "fatal: " -#: awkgram.y:2043 +#: awkgram.y:2004 msgid "unexpected newline or end of string" msgstr "uventet nylinjetegn eller strengafslutning" -#: awkgram.y:2300 awkgram.y:2358 awkgram.y:2542 +#: awkgram.y:2269 awkgram.y:2327 awkgram.y:2515 #, c-format msgid "can't open source file `%s' for reading (%s)" -msgstr "kan ikke Ã¥bne kildefilen '%s' for læsning (%s)" +msgstr "kan ikke åbne kildefilen '%s' for læsning (%s)" -#: awkgram.y:2301 awkgram.y:2359 builtin.c:122 +#: awkgram.y:2270 awkgram.y:2328 builtin.c:124 msgid "reason unknown" -msgstr "ukendt Ã¥rsag" +msgstr "ukendt årsag" -#: awkgram.y:2317 +#: awkgram.y:2286 #, c-format msgid "already included source file `%s'" msgstr "allerede inkluderet kildefil '%s'" -#: awkgram.y:2343 +#: awkgram.y:2312 msgid "@include is a gawk extension" msgstr "@include er en gawk-udvidelse" -#: awkgram.y:2349 +#: awkgram.y:2318 msgid "empty filename after @include" msgstr "tomt filnavn efter @include" -#: awkgram.y:2494 +#: awkgram.y:2467 msgid "empty program text on command line" -msgstr "tom programtekst pÃ¥ kommandolinjen" +msgstr "tom programtekst på kommandolinjen" -#: awkgram.y:2609 +#: awkgram.y:2582 #, c-format msgid "can't read sourcefile `%s' (%s)" -msgstr "kan ikke læse kildefilen '%s' (%s)" +msgstr "kan ikke læse kildefilen '%s' (%s)" -#: awkgram.y:2620 +#: awkgram.y:2593 #, c-format msgid "source file `%s' is empty" msgstr "kildefilen '%s' er tom" -#: awkgram.y:2805 +#: awkgram.y:2770 msgid "source file does not end in newline" msgstr "kildefilen slutter ikke med en ny linje" -#: awkgram.y:2882 +#: awkgram.y:2874 msgid "unterminated regexp ends with `\\' at end of file" -msgstr "uafsluttet regulært udtryk slutter med '\\' i slutningen af filen" +msgstr "uafsluttet regulært udtryk slutter med '\\' i slutningen af filen" -#: awkgram.y:2906 +#: awkgram.y:2898 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" -msgstr "%s: %d: regex-ændringstegn '/.../%c' fra tawk virker ikke i gawk" +msgstr "%s: %d: regex-ændringstegn '/.../%c' fra tawk virker ikke i gawk" -#: awkgram.y:2910 +#: awkgram.y:2902 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" -msgstr "regex-ændringstegn '/.../%c' fra tawk virker ikke i gawk" +msgstr "regex-ændringstegn '/.../%c' fra tawk virker ikke i gawk" -#: awkgram.y:2917 +#: awkgram.y:2909 msgid "unterminated regexp" -msgstr "uafsluttet regulært udtryk" +msgstr "uafsluttet regulært udtryk" -#: awkgram.y:2921 +#: awkgram.y:2913 msgid "unterminated regexp at end of file" -msgstr "uafsluttet regulært udtryk i slutningen af filen" +msgstr "uafsluttet regulært udtryk i slutningen af filen" -#: awkgram.y:2980 +#: awkgram.y:2972 msgid "use of `\\ #...' line continuation is not portable" -msgstr "brug af '\\ #...' for linjefortsættelse er ikke portabelt" +msgstr "brug af '\\ #...' for linjefortsættelse er ikke portabelt" -#: awkgram.y:2996 +#: awkgram.y:2988 msgid "backslash not last character on line" -msgstr "sidste tegn pÃ¥ linjen er ikke en omvendt skrÃ¥streg" +msgstr "sidste tegn på linjen er ikke en omvendt skråstreg" -#: awkgram.y:3057 +#: awkgram.y:3049 msgid "POSIX does not allow operator `**='" msgstr "POSIX tillader ikke operatoren '**='" -#: awkgram.y:3059 +#: awkgram.y:3051 msgid "old awk does not support operator `**='" -msgstr "gamle versioner af awk understøtter ikke operatoren '**='" +msgstr "gamle versioner af awk understøtter ikke operatoren '**='" -#: awkgram.y:3068 +#: awkgram.y:3060 msgid "POSIX does not allow operator `**'" msgstr "POSIX tillader ikke operatoren '**'" -#: awkgram.y:3070 +#: awkgram.y:3062 msgid "old awk does not support operator `**'" -msgstr "gamle versioner af awk understøtter ikke operatoren '**'" +msgstr "gamle versioner af awk understøtter ikke operatoren '**'" -#: awkgram.y:3105 +#: awkgram.y:3097 msgid "operator `^=' is not supported in old awk" -msgstr "operatoren '^=' understøttes ikke i gamle versioner af awk" +msgstr "operatoren '^=' understøttes ikke i gamle versioner af awk" -#: awkgram.y:3113 +#: awkgram.y:3105 msgid "operator `^' is not supported in old awk" -msgstr "operatoren '^' understøttes ikke i gamle versioner af awk" +msgstr "operatoren '^' understøttes ikke i gamle versioner af awk" -#: awkgram.y:3206 awkgram.y:3222 +#: awkgram.y:3198 awkgram.y:3214 msgid "unterminated string" msgstr "uafsluttet streng" -#: awkgram.y:3418 +#: awkgram.y:3410 #, c-format msgid "invalid char '%c' in expression" msgstr "ugyldigt tegn '%c' i udtryk" -#: awkgram.y:3465 +#: awkgram.y:3457 #, c-format msgid "`%s' is a gawk extension" msgstr "'%s' er en gawk-udvidelse" -#: awkgram.y:3470 +#: awkgram.y:3462 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "'%s' er en Bell Labs-udvidelse" -#: awkgram.y:3475 +#: awkgram.y:3467 #, c-format msgid "POSIX does not allow `%s'" msgstr "POSIX tillader ikke '%s'" -#: awkgram.y:3483 +#: awkgram.y:3475 #, c-format msgid "`%s' is not supported in old awk" -msgstr "'%s' understøttes ikke i gamle versioner af awk" +msgstr "'%s' understøttes ikke i gamle versioner af awk" -#: awkgram.y:3550 +#: awkgram.y:3542 msgid "`goto' considered harmful!\n" msgstr "'goto' anses for skadelig!\n" -#: awkgram.y:3601 +#: awkgram.y:3576 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "%d er et ugyldigt antal argumenter for %s" -#: awkgram.y:3636 +#: awkgram.y:3611 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "" "%s: bogstavelig streng som sidste argument til erstatning har ingen effekt" -#: awkgram.y:3641 +#: awkgram.y:3616 #, c-format msgid "%s third parameter is not a changeable object" -msgstr "%s: tredje argument er ikke et ændringsbart objekt" +msgstr "%s: tredje argument er ikke et ændringsbart objekt" -#: awkgram.y:3714 awkgram.y:3717 +#: awkgram.y:3689 awkgram.y:3692 msgid "match: third argument is a gawk extension" msgstr "match: tredje argument er en gawk-udvidelse" -#: awkgram.y:3771 awkgram.y:3774 +#: awkgram.y:3746 awkgram.y:3749 msgid "close: second argument is a gawk extension" msgstr "close: andet argument er en gawk-udvidelse" -#: awkgram.y:3786 +#: awkgram.y:3761 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "brug af dcgettext(_\"...\") er forkert: fjern det indledende " "understregningstegn" -#: awkgram.y:3801 +#: awkgram.y:3776 msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "brug af dcgettext(_\"...\") er forkert: fjern det indledende " "understregningstegn" -#: awkgram.y:3893 -#, c-format -msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" -msgstr "funktionen '%s': parameter %d, '%s', er samme som parameter %d" - -#: awkgram.y:3935 +#: awkgram.y:3842 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "funktionen '%s': parameteren '%s' overskygger en global variabel" -#: awkgram.y:4093 +#: awkgram.y:3885 #, c-format msgid "could not open `%s' for writing (%s)" -msgstr "kunne ikke Ã¥bne '%s' for skrivning (%s)" +msgstr "kunne ikke åbne '%s' for skrivning (%s)" -#: awkgram.y:4094 +#: awkgram.y:3886 msgid "sending variable list to standard error" msgstr "sender variabelliste til standard fejl" -#: awkgram.y:4100 +#: awkgram.y:3894 #, c-format msgid "%s: close failed (%s)" msgstr "%s: lukning mislykkedes (%s)" -#: awkgram.y:4152 +#: awkgram.y:3919 msgid "shadow_funcs() called twice!" msgstr "shadow_funcs() kaldt to gange!" -#: awkgram.y:4158 +#: awkgram.y:3927 msgid "there were shadowed variables." msgstr "der var skyggede variable." -#: awkgram.y:4188 +#: awkgram.y:3998 +#, c-format +msgid "function name `%s' previously defined" +msgstr "funktionsnavnet '%s' er allerede defineret" + +#: awkgram.y:4044 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "funktionen '%s': kan ikke bruge funktionsnavn som parameternavn" -#: awkgram.y:4192 +#: awkgram.y:4047 #, c-format msgid "function `%s': can't use special variable `%s' as a function parameter" msgstr "" "funktionen '%s': kan ikke bruge specialvariabel '%s' som en " "funktionsparameter" -#: awkgram.y:4208 +#: awkgram.y:4055 #, c-format -msgid "function name `%s' previously defined" -msgstr "funktionsnavnet '%s' er allerede defineret" +msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" +msgstr "funktionen '%s': parameter %d, '%s', er samme som parameter %d" -#: awkgram.y:4376 awkgram.y:4382 +#: awkgram.y:4134 awkgram.y:4140 #, c-format msgid "function `%s' called but never defined" msgstr "funktionen '%s' kaldt, men aldrig defineret" -#: awkgram.y:4385 +#: awkgram.y:4143 #, c-format msgid "function `%s' defined but never called directly" msgstr "funktionen '%s' defineret, men aldrig kaldt direkte" -#: awkgram.y:4417 +#: awkgram.y:4175 #, c-format msgid "regexp constant for parameter #%d yields boolean value" -msgstr "konstant regulært udtryk for parameter %d giver en boolesk værdi" +msgstr "konstant regulært udtryk for parameter %d giver en boolesk værdi" -#: awkgram.y:4526 +#: awkgram.y:4221 #, c-format msgid "" "function `%s' called with space between name and `(',\n" @@ -532,457 +489,452 @@ msgstr "" "funktionen '%s' kaldt med blanktegn mellem navnet og '(',\n" "eller brugt som en variabel eller et array" -#: awkgram.y:4773 eval.c:2056 +#: awkgram.y:4429 msgid "division by zero attempted" -msgstr "forsøgte at dividere med nul" +msgstr "forsøgte at dividere med nul" -#: awkgram.y:4782 eval.c:2072 +#: awkgram.y:4438 #, c-format msgid "division by zero attempted in `%%'" -msgstr "forsøgte at dividere med nul i '%%'" +msgstr "forsøgte at dividere med nul i '%%'" -#: builtin.c:120 +#: builtin.c:122 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "%s til '%s' mislykkedes (%s)" -#: builtin.c:121 +#: builtin.c:123 msgid "standard output" msgstr "standard ud" -#: builtin.c:135 +#: builtin.c:137 msgid "exp: received non-numeric argument" msgstr "exp: fik et ikke-numerisk argument" -#: builtin.c:141 +#: builtin.c:143 #, c-format msgid "exp: argument %g is out of range" -msgstr "exp: argumentet %g er uden for det tilladte omrÃ¥de" +msgstr "exp: argumentet %g er uden for det tilladte område" -#: builtin.c:200 +#: builtin.c:202 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "" -"fflush: kan ikke rense: datakanalen '%s' Ã¥bnet for læsning, ikke skrivning" +"fflush: kan ikke rense: datakanalen '%s' åbnet for læsning, ikke skrivning" -#: builtin.c:203 +#: builtin.c:205 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" -msgstr "fflush: kan ikke rense: filen '%s' Ã¥bnet for læsning, ikke skrivning" +msgstr "fflush: kan ikke rense: filen '%s' åbnet for læsning, ikke skrivning" -#: builtin.c:215 +#: builtin.c:217 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" -msgstr "fflush: '%s' er ikke en Ã¥ben fil, datakanal eller ko-proces" +msgstr "fflush: '%s' er ikke en åben fil, datakanal eller ko-proces" -#: builtin.c:333 +#: builtin.c:335 msgid "index: received non-string first argument" -msgstr "indeks: første argument er ikke en streng" +msgstr "indeks: første argument er ikke en streng" -#: builtin.c:335 +#: builtin.c:337 msgid "index: received non-string second argument" msgstr "indeks: andet argument er ikke en streng" -#: builtin.c:457 +#: builtin.c:461 msgid "int: received non-numeric argument" msgstr "int: fik et ikke-numerisk argument" -#: builtin.c:493 +#: builtin.c:497 msgid "length: received array argument" msgstr "length: fik et array-argument" -#: builtin.c:496 +#: builtin.c:500 msgid "`length(array)' is a gawk extension" msgstr "'length(array)' er en gawk-udvidelse" -#: builtin.c:504 +#: builtin.c:508 msgid "length: received non-string argument" msgstr "length: fik et argument som ikke er en streng" -#: builtin.c:535 +#: builtin.c:539 msgid "log: received non-numeric argument" msgstr "log: fik et ikke-numerisk argument" -#: builtin.c:538 +#: builtin.c:542 #, c-format msgid "log: received negative argument %g" msgstr "log: fik et negativt argument %g" -#: builtin.c:694 builtin.c:699 +#: builtin.c:698 builtin.c:703 msgid "fatal: must use `count$' on all formats or none" -msgstr "fatal: skal bruge 'count$' pÃ¥ alle formater eller ikke nogen" +msgstr "fatal: skal bruge 'count$' på alle formater eller ikke nogen" -#: builtin.c:761 +#: builtin.c:766 #, c-format msgid "field width is ignored for `%%' specifier" msgstr "feltbredde ignoreret for '%%'-angivelse" -#: builtin.c:763 +#: builtin.c:768 #, c-format msgid "precision is ignored for `%%' specifier" -msgstr "præcision ignoreret for '%%'-angivelse" +msgstr "præcision ignoreret for '%%'-angivelse" -#: builtin.c:765 +#: builtin.c:770 #, c-format msgid "field width and precision are ignored for `%%' specifier" -msgstr "feltbredde og præcision ignoreret for '%%'-angivelse" +msgstr "feltbredde og præcision ignoreret for '%%'-angivelse" -#: builtin.c:816 +#: builtin.c:821 msgid "fatal: `$' is not permitted in awk formats" msgstr "fatal: '$' tillades ikke i awk-formater" -#: builtin.c:825 +#: builtin.c:830 msgid "fatal: arg count with `$' must be > 0" -msgstr "fatal: argumentantallet med '$' skal være > 0" +msgstr "fatal: argumentantallet med '$' skal være > 0" -#: builtin.c:829 +#: builtin.c:834 #, c-format msgid "fatal: arg count %ld greater than total number of supplied arguments" -msgstr "fatal: argumentantallet %ld er større end antal givne argumenter" +msgstr "fatal: argumentantallet %ld er større end antal givne argumenter" -#: builtin.c:833 +#: builtin.c:838 msgid "fatal: `$' not permitted after period in format" msgstr "fatal: '$' tillades ikke efter et punktum i formatet" -#: builtin.c:849 +#: builtin.c:854 msgid "fatal: no `$' supplied for positional field width or precision" msgstr "" -"fatal: intet '$' angivet for bredde eller præcision af positionsangivet felt" +"fatal: intet '$' angivet for bredde eller præcision af positionsangivet felt" -#: builtin.c:920 +#: builtin.c:925 msgid "`l' is meaningless in awk formats; ignored" -msgstr "'l' er meningsløst i awk-formater, ignoreret" +msgstr "'l' er meningsløst i awk-formater, ignoreret" -#: builtin.c:924 +#: builtin.c:929 msgid "fatal: `l' is not permitted in POSIX awk formats" msgstr "fatal: 'l' tillades ikke i POSIX awk-formater" -#: builtin.c:937 +#: builtin.c:942 msgid "`L' is meaningless in awk formats; ignored" -msgstr "'L' er meningsløst i awk-formater, ignoreret" +msgstr "'L' er meningsløst i awk-formater, ignoreret" -#: builtin.c:941 +#: builtin.c:946 msgid "fatal: `L' is not permitted in POSIX awk formats" msgstr "fatal: 'L' tillades ikke i POSIX awk-formater" -#: builtin.c:954 +#: builtin.c:959 msgid "`h' is meaningless in awk formats; ignored" -msgstr "'h' er meningsløst i awk-formater, ignoreret" +msgstr "'h' er meningsløst i awk-formater, ignoreret" -#: builtin.c:958 +#: builtin.c:963 msgid "fatal: `h' is not permitted in POSIX awk formats" msgstr "fatal: 'h' tillades ikke i POSIX awk-formater" -#: builtin.c:1271 +#: builtin.c:1276 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" -msgstr "[s]printf: værdi %g er uden for omrÃ¥de for '%%%c'-format" +msgstr "[s]printf: værdi %g er uden for område for '%%%c'-format" -#: builtin.c:1331 +#: builtin.c:1336 #, c-format msgid "ignoring unknown format specifier character `%c': no argument converted" msgstr "" "ignorerer ukendt formatspecificeringstegn '%c': intet argument konverteret" -#: builtin.c:1336 +#: builtin.c:1341 msgid "fatal: not enough arguments to satisfy format string" -msgstr "fatal: for fÃ¥ argumenter til formatstrengen" +msgstr "fatal: for få argumenter til formatstrengen" -#: builtin.c:1338 +#: builtin.c:1343 msgid "^ ran out for this one" msgstr "^ sluttede her" -#: builtin.c:1345 +#: builtin.c:1350 msgid "[s]printf: format specifier does not have control letter" msgstr "[s]printf: formatspecifikation har intet kommandobogstav" -#: builtin.c:1348 +#: builtin.c:1353 msgid "too many arguments supplied for format string" msgstr "for mange argumenter til formatstrengen" -#: builtin.c:1422 builtin.c:1433 +#: builtin.c:1427 builtin.c:1438 msgid "printf: no arguments" msgstr "printf: ingen argumenter" -#: builtin.c:1474 +#: builtin.c:1479 msgid "sqrt: received non-numeric argument" msgstr "sqrt: fik ikke-numerisk argument" -#: builtin.c:1478 +#: builtin.c:1483 #, c-format msgid "sqrt: called with negative argument %g" msgstr "sqrt: kaldt med negativt argument %g" -#: builtin.c:1502 +#: builtin.c:1507 #, c-format msgid "substr: length %g is not >= 1" -msgstr "substr: længden %g er ikke >= 1" +msgstr "substr: længden %g er ikke >= 1" -#: builtin.c:1504 +#: builtin.c:1509 #, c-format msgid "substr: length %g is not >= 0" -msgstr "substr: længden %g er ikke >= 0" +msgstr "substr: længden %g er ikke >= 0" -#: builtin.c:1511 +#: builtin.c:1516 #, c-format msgid "substr: non-integer length %g will be truncated" -msgstr "substr: længden %g som ikke er et heltal vil blive trunkeret" +msgstr "substr: længden %g som ikke er et heltal vil blive trunkeret" -#: builtin.c:1516 +#: builtin.c:1521 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" -msgstr "substr: længden %g for stor til strengindeksering, trunkerer til %g" +msgstr "substr: længden %g for stor til strengindeksering, trunkerer til %g" -#: builtin.c:1528 +#: builtin.c:1533 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "substr: startindeks %g er ugyldigt, bruger 1" -#: builtin.c:1533 +#: builtin.c:1538 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "substr: startindeks %g som ikke er et heltal vil blive trunkeret" -#: builtin.c:1558 +#: builtin.c:1563 msgid "substr: source string is zero length" msgstr "substr: kildestrengen er tom" -#: builtin.c:1574 +#: builtin.c:1579 #, c-format msgid "substr: start index %g is past end of string" -msgstr "substr: startindeks %g er forbi slutningen pÃ¥ strengen" +msgstr "substr: startindeks %g er forbi slutningen på strengen" -#: builtin.c:1582 +#: builtin.c:1587 #, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" msgstr "" -"substr: længden %g ved startindeks %g overskrider længden af første argument " +"substr: længden %g ved startindeks %g overskrider længden af første argument " "(%lu)" -#: builtin.c:1656 +#: builtin.c:1661 msgid "strftime: format value in PROCINFO[\"strftime\"] has numeric type" -msgstr "strftime: formatværdi i PROCINFO[\"strftime\"] har numerisk type" +msgstr "strftime: formatværdi i PROCINFO[\"strftime\"] har numerisk type" -#: builtin.c:1679 +#: builtin.c:1684 msgid "strftime: received non-numeric second argument" msgstr "strftime: fik et ikke-numerisk andet argument" -#: builtin.c:1682 +#: builtin.c:1687 msgid "strftime: second argument less than 0 or too big for time_t" -msgstr "" +msgstr "strftime: andet argument mindre end 0 eller for stort til time_t" -#: builtin.c:1689 +#: builtin.c:1694 msgid "strftime: received non-string first argument" -msgstr "strftime: fik et første argument som ikke er en streng" +msgstr "strftime: fik et første argument som ikke er en streng" -#: builtin.c:1695 +#: builtin.c:1701 msgid "strftime: received empty format string" msgstr "strftime: fik en tom formatstreng" -#: builtin.c:1761 +#: builtin.c:1767 msgid "mktime: received non-string argument" msgstr "mktime: fik et argument som ikke er en streng" -#: builtin.c:1778 +#: builtin.c:1784 msgid "mktime: at least one of the values is out of the default range" -msgstr "mktime: mindst én af værdierne er udenfor standardomrÃ¥det" +msgstr "mktime: mindst én af værdierne er udenfor standardområdet" -#: builtin.c:1813 +#: builtin.c:1819 msgid "'system' function not allowed in sandbox mode" msgstr "'system'-funktion ikke tilladt i sandkasse-tilstand" -#: builtin.c:1818 +#: builtin.c:1824 msgid "system: received non-string argument" msgstr "system: fik et argument som ikke er en streng" -#: builtin.c:1873 eval.c:1159 eval.c:1790 eval.c:1803 -#, c-format -msgid "reference to uninitialized variable `%s'" -msgstr "reference til ikke-initieret variabel '%s'" - -#: builtin.c:1940 +#: builtin.c:1942 #, c-format msgid "reference to uninitialized field `$%d'" msgstr "reference til ikke-initieret felt '$%d'" -#: builtin.c:2027 +#: builtin.c:2029 msgid "tolower: received non-string argument" msgstr "tolower: fik et argument som ikke er en streng" -#: builtin.c:2061 +#: builtin.c:2063 msgid "toupper: received non-string argument" msgstr "toupper: fik et argument som ikke er en streng" -#: builtin.c:2097 +#: builtin.c:2099 msgid "atan2: received non-numeric first argument" -msgstr "atan2: fik et ikke-numerisk første argument" +msgstr "atan2: fik et ikke-numerisk første argument" -#: builtin.c:2099 +#: builtin.c:2101 msgid "atan2: received non-numeric second argument" msgstr "atan2: fik et ikke-numerisk andet argument" -#: builtin.c:2118 +#: builtin.c:2120 msgid "sin: received non-numeric argument" msgstr "sin: fik et ikke-numerisk argument" -#: builtin.c:2134 +#: builtin.c:2136 msgid "cos: received non-numeric argument" msgstr "cos: fik et ikke-numerisk argument" -#: builtin.c:2187 +#: builtin.c:2189 msgid "srand: received non-numeric argument" msgstr "srand: fik et ikke-numerisk argument" -#: builtin.c:2218 +#: builtin.c:2220 msgid "match: third argument is not an array" msgstr "match: tredje argument er ikke et array" -#: builtin.c:2482 +#: builtin.c:2484 msgid "gensub: third argument of 0 treated as 1" msgstr "gensub: 0 i tredje argument behandlet som 1" -#: builtin.c:2775 +#: builtin.c:2777 msgid "lshift: received non-numeric first argument" -msgstr "lshift: fik et ikke-numerisk første argument" +msgstr "lshift: fik et ikke-numerisk første argument" -#: builtin.c:2777 +#: builtin.c:2779 msgid "lshift: received non-numeric second argument" msgstr "lshift: fik et ikke-numerisk andet argument" -#: builtin.c:2783 +#: builtin.c:2785 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" -msgstr "lshift(%lf, %lf): negative værdier vil give mærkelige resultater" +msgstr "lshift(%lf, %lf): negative værdier vil give mærkelige resultater" -#: builtin.c:2785 +#: builtin.c:2787 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" -msgstr "lshift(%lf, %lf): kommatalsværdier vil blive trunkeret" +msgstr "lshift(%lf, %lf): kommatalsværdier vil blive trunkeret" -#: builtin.c:2787 +#: builtin.c:2789 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "" -"lshift(%lf, %lf): for store skifteværdier vil give mærkelige resultater" +"lshift(%lf, %lf): for store skifteværdier vil give mærkelige resultater" -#: builtin.c:2812 +#: builtin.c:2814 msgid "rshift: received non-numeric first argument" -msgstr "rshift: fik et ikke-numerisk første argument" +msgstr "rshift: fik et ikke-numerisk første argument" -#: builtin.c:2814 +#: builtin.c:2816 msgid "rshift: received non-numeric second argument" msgstr "rshift: fik et ikke-numerisk andet argument" -#: builtin.c:2820 +#: builtin.c:2822 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" -msgstr "rshift(%lf, %lf): negative værdier vil give mærkelige resultater" +msgstr "rshift(%lf, %lf): negative værdier vil give mærkelige resultater" -#: builtin.c:2822 +#: builtin.c:2824 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" -msgstr "rshift(%lf, %lf): kommatalsværdier vil blive trunkeret" +msgstr "rshift(%lf, %lf): kommatalsværdier vil blive trunkeret" -#: builtin.c:2824 +#: builtin.c:2826 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "" -"rshift(%lf, %lf): for store skifteværdier vil give mærkelige resultater" +"rshift(%lf, %lf): for store skifteværdier vil give mærkelige resultater" -#: builtin.c:2849 +#: builtin.c:2851 msgid "and: received non-numeric first argument" -msgstr "and: fik et ikke-numerisk første argument" +msgstr "and: fik et ikke-numerisk første argument" -#: builtin.c:2851 +#: builtin.c:2853 msgid "and: received non-numeric second argument" msgstr "and: fik et ikke-numerisk andet argument" -#: builtin.c:2857 +#: builtin.c:2859 #, c-format msgid "and(%lf, %lf): negative values will give strange results" -msgstr "and(%lf, %lf): negative værdier vil give mærkelige resultater" +msgstr "and(%lf, %lf): negative værdier vil give mærkelige resultater" -#: builtin.c:2859 +#: builtin.c:2861 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" -msgstr "and(%lf, %lf): kommatalsværdier vil blive trunkeret" +msgstr "and(%lf, %lf): kommatalsværdier vil blive trunkeret" -#: builtin.c:2884 +#: builtin.c:2886 msgid "or: received non-numeric first argument" -msgstr "or: fik et ikke-numerisk første argument" +msgstr "or: fik et ikke-numerisk første argument" -#: builtin.c:2886 +#: builtin.c:2888 msgid "or: received non-numeric second argument" msgstr "or: fik et ikke-numerisk andet argument" -#: builtin.c:2892 +#: builtin.c:2894 #, c-format msgid "or(%lf, %lf): negative values will give strange results" -msgstr "or(%lf, %lf): negative værdier vil give mærkelige resultater" +msgstr "or(%lf, %lf): negative værdier vil give mærkelige resultater" -#: builtin.c:2894 +#: builtin.c:2896 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" -msgstr "or(%lf, %lf): kommatalsværdier vil blive trunkeret" +msgstr "or(%lf, %lf): kommatalsværdier vil blive trunkeret" -#: builtin.c:2922 +#: builtin.c:2924 msgid "xor: received non-numeric first argument" -msgstr "xor: fik et ikke-numerisk første argument" +msgstr "xor: fik et ikke-numerisk første argument" -#: builtin.c:2924 +#: builtin.c:2926 msgid "xor: received non-numeric second argument" msgstr "xor: fik et ikke-numerisk andet argument" -#: builtin.c:2930 +#: builtin.c:2932 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" -msgstr "xor(%lf, %lf): negative værdier vil give mærkelige resultater" +msgstr "xor(%lf, %lf): negative værdier vil give mærkelige resultater" -#: builtin.c:2932 +#: builtin.c:2934 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" -msgstr "xor(%lf, %lf): kommatalsværdier vil blive trunkeret" +msgstr "xor(%lf, %lf): kommatalsværdier vil blive trunkeret" -#: builtin.c:2956 builtin.c:2962 +#: builtin.c:2958 builtin.c:2964 msgid "compl: received non-numeric argument" msgstr "compl: fik et ikke-numerisk argument" -#: builtin.c:2964 +#: builtin.c:2966 #, c-format msgid "compl(%lf): negative value will give strange results" -msgstr "compl(%lf): negative værdier vil give mærkelige resultater" +msgstr "compl(%lf): negative værdier vil give mærkelige resultater" -#: builtin.c:2966 +#: builtin.c:2968 #, c-format msgid "compl(%lf): fractional value will be truncated" -msgstr "compl(%lf): kommatalsværdier vil blive trunkeret" +msgstr "compl(%lf): kommatalsværdier vil blive trunkeret" -#: builtin.c:3135 +#: builtin.c:3137 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "dcgettext: '%s' er ikke en gyldig lokalitetskategori" -#: eval.c:412 +#: eval.c:393 #, c-format msgid "unknown nodetype %d" msgstr "ukendt nodetype %d" -#: eval.c:423 eval.c:437 +#: eval.c:404 eval.c:418 #, c-format msgid "unknown opcode %d" msgstr "ukendt opkode %d" -#: eval.c:434 +#: eval.c:415 #, c-format msgid "opcode %s not an operator or keyword" -msgstr "opkode %s er ikke en operator eller et nøgleord" +msgstr "opkode %s er ikke en operator eller et nøgleord" -#: eval.c:488 +#: eval.c:468 msgid "buffer overflow in genflags2str" -msgstr "bufferoverløb i genflags2str" +msgstr "bufferoverløb i genflags2str" -#: eval.c:698 +#: eval.c:678 #, c-format msgid "" "\n" @@ -993,221 +945,169 @@ msgstr "" "\t# Funktionskaldsstak:\n" "\n" -#: eval.c:725 +#: eval.c:706 msgid "`IGNORECASE' is a gawk extension" msgstr "'IGNORECASE' er en gawk-udvidelse" -#: eval.c:754 +#: eval.c:736 msgid "`BINMODE' is a gawk extension" msgstr "'BINMODE' er en gawk-udvidelse" -#: eval.c:812 +#: eval.c:794 #, c-format msgid "BINMODE value `%s' is invalid, treated as 3" -msgstr "BINMODE værdi '%s' er ugyldig, behandles som 3" +msgstr "BINMODE værdi '%s' er ugyldig, behandles som 3" -#: eval.c:902 +#: eval.c:887 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "forkert '%sFMT'-specifikation '%s'" -#: eval.c:980 +#: eval.c:969 msgid "turning off `--lint' due to assignment to `LINT'" -msgstr "deaktiverer '--lint' pÃ¥ grund af en tildeling til 'LINT'" +msgstr "deaktiverer '--lint' på grund af en tildeling til 'LINT'" -#: eval.c:1127 eval.c:1777 -#, c-format -msgid "can't use function name `%s' as variable or array" -msgstr "kan ikke bruge funktionsnavnet '%s' som variabel eller array" - -#: eval.c:1158 eval.c:1789 eval.c:1802 +#: eval.c:1119 #, c-format msgid "reference to uninitialized argument `%s'" msgstr "reference til ikke-initieret argument '%s'" -#: eval.c:1177 +#: eval.c:1120 +#, c-format +msgid "reference to uninitialized variable `%s'" +msgstr "reference til ikke-initieret variabel '%s'" + +#: eval.c:1138 msgid "attempt to field reference from non-numeric value" -msgstr "forsøg pÃ¥ at referere til et felt fra ikke-numerisk værdi" +msgstr "forsøg på at referere til et felt fra ikke-numerisk værdi" -#: eval.c:1179 +#: eval.c:1140 msgid "attempt to field reference from null string" -msgstr "forsøg pÃ¥ at referere til et felt fra tom streng" +msgstr "forsøg på at referere til et felt fra tom streng" -#: eval.c:1185 +#: eval.c:1146 #, c-format msgid "attempt to access field %ld" -msgstr "forsøg pÃ¥ at fÃ¥ adgang til felt %ld" +msgstr "forsøg på at få adgang til felt %ld" -#: eval.c:1194 +#: eval.c:1155 #, c-format msgid "reference to uninitialized field `$%ld'" msgstr "reference til ikke-initieret felt '$%ld'" -#: eval.c:1256 +#: eval.c:1242 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "funktionen '%s' kaldt med flere argumenter end deklareret" -#: eval.c:1437 +#: eval.c:1436 #, c-format msgid "unwind_stack: unexpected type `%s'" msgstr "unwind_stack: uventet type `%s'" -#: eval.c:1532 +#: eval.c:1536 msgid "division by zero attempted in `/='" -msgstr "forsøgte at dividere med nul i '/='" +msgstr "forsøgte at dividere med nul i '/='" -#: eval.c:1539 +#: eval.c:1543 #, c-format msgid "division by zero attempted in `%%='" -msgstr "forsøgte at dividere med nul i '%%='" - -#: eval.c:1876 eval.c:2122 -#, c-format -msgid "attempt to use array `%s[\"%.*s\"]' in a scalar context" -msgstr "forsøg pÃ¥ at bruge array '%s[\"%.*s\"]' i skalarsammenhæng" - -#: eval.c:1907 -msgid "assignment used in conditional context" -msgstr "tildeling brugt i sammenligningsammenhæng" - -#: eval.c:1911 -msgid "statement has no effect" -msgstr "kommandoen har ingen effekt" +msgstr "forsøgte at dividere med nul i '%%='" -#: eval.c:2343 -#, c-format -msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" -msgstr "" -"for-løkke: array '%s' ændrede størrelse fra %ld til %ld under udførelse af " -"løkken" - -#: eval.c:2458 -#, c-format -msgid "function called indirectly through `%s' does not exist" -msgstr "funktion kaldt indirekte via '%s' eksisterer ikke" - -#: eval.c:2470 -#, c-format -msgid "function `%s' not defined" -msgstr "funktionen '%s' er ikke defineret" - -#: eval.c:2511 -#, c-format -msgid "non-redirected `getline' invalid inside `%s' rule" -msgstr "ikke-omdirigeret 'getline' ugyldig inden i '%s'-regel" - -#: eval.c:2600 -#, c-format -msgid "error reading input file `%s': %s" -msgstr "fejl ved læsning af inddatafilen '%s': %s" - -#: eval.c:2614 -#, c-format -msgid "`nextfile' cannot be called from a `%s' rule" -msgstr "'nextfile' kan ikke kaldes fra en '%s'-regel" - -#: eval.c:2694 -#, c-format -msgid "`next' cannot be called from a `%s' rule" -msgstr "'next' kan ikke kaldes fra en '%s'-regel" - -#: eval.c:2760 -#, c-format -msgid "Sorry, don't know how to interpret `%s'" -msgstr "Véd desværre ikke hvordan '%s' skal fortolkes" - -#: ext.c:64 +#: ext.c:70 msgid "extensions are not allowed in sandbox mode" msgstr "udvidelser er ikke tilladt i sandkasse-tilstand" -#: ext.c:70 ext.c:75 +#: ext.c:73 msgid "`extension' is a gawk extension" msgstr "'extension' er en gawk-udvidelse" -#: ext.c:85 -#, c-format -msgid "fatal: extension: cannot open `%s' (%s)\n" -msgstr "atalt: extension: kan ikke Ã¥bne '%s' (%s)\n" +#: ext.c:80 +#, fuzzy, c-format +msgid "extension: cannot open library `%s' (%s)\n" +msgstr "atalt: extension: kan ikke åbne '%s' (%s)\n" -#: ext.c:94 -#, c-format +#: ext.c:86 +#, fuzzy, c-format msgid "" -"fatal: extension: library `%s': does not define " -"`plugin_is_GPL_compatible' (%s)\n" +"extension: library `%s': does not define `plugin_is_GPL_compatible' (%s)\n" msgstr "" "fatalt: extension: bibliotek '%s': definer ikke " "'plugin_is_GPL_compatible' (%s)\n" -#: ext.c:103 -#, c-format -msgid "fatal: extension: library `%s': cannot call function `%s' (%s)\n" +#: ext.c:91 +#, fuzzy, c-format +msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "" "fatalt: extension: bibliotek '%s': kan ikke kalde funktionen '%s' (%s)\n" -#: ext.c:137 +#: ext.c:119 msgid "extension: missing function name" msgstr "extension: mangler funktionsnavn" -#: ext.c:142 +#: ext.c:124 #, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "extension: ugyldigt tegn '%c' i funktionsnavn '%s'" -#: ext.c:151 +#: ext.c:132 #, c-format msgid "extension: can't redefine function `%s'" msgstr "extension: kan ikke omdefinere funktion '%s'" -#: ext.c:155 +#: ext.c:136 #, c-format msgid "extension: function `%s' already defined" msgstr "extension: funktionen '%s' er allerede defineret" -#: ext.c:160 +#: ext.c:140 #, c-format msgid "extension: function name `%s' previously defined" msgstr "extension: funktionsnavnet '%s' er defineret tidligere" -#: ext.c:162 +#: ext.c:142 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "extension: kan ikke bruge gawk's indbyggede '%s' som funktionsnavn" -#: ext.c:166 +#: ext.c:145 #, c-format msgid "make_builtin: negative argument count for function `%s'" msgstr "make_builtin: negativt argumentantal for funktion '%s'" -#: ext.c:269 +#: ext.c:207 #, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "funktionen '%s' defineret til at tage ikke mere end %d argumenter" -#: ext.c:272 +#: ext.c:210 #, c-format msgid "function `%s': missing argument #%d" msgstr "funktion '%s': mangler argument nummer %d" -#: ext.c:289 +#: ext.c:227 #, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "" -"funktion '%s': argument nummer %d: forsøg pÃ¥ at bruge skalar som et array" +"funktion '%s': argument nummer %d: forsøg på at bruge skalar som et array" -#: ext.c:293 +#: ext.c:231 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "" -"funktion '%s': argument nummer %d: forsøg pÃ¥ at bruge array som en skalar" +"funktion '%s': argument nummer %d: forsøg på at bruge array som en skalar" -#: ext.c:306 +#: ext.c:245 msgid "Operation Not Supported" -msgstr "Operationen understøttes ikke" +msgstr "Operationen understøttes ikke" + +#: ext.c:257 +msgid "dynamic loading of library not supported" +msgstr "" #: field.c:328 msgid "NF set to negative value" -msgstr "NF sat til en negativ værdi" +msgstr "NF sat til en negativ værdi" #: field.c:951 field.c:958 field.c:962 msgid "split: fourth argument is a gawk extension" @@ -1265,535 +1165,545 @@ msgid "patsplit: cannot use a subarray of fourth arg for second arg" msgstr "" "patsplit: kan ikke bruge et underarray af fjerde argument som andet argument" -#: field.c:1110 +#: field.c:1111 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "'FIELDWIDTHS' er en gawk-udvidelse" -#: field.c:1173 +#: field.c:1175 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" -msgstr "ugyldig FIELDWIDTHS værdi, nær '%s" +msgstr "ugyldig FIELDWIDTHS værdi, nær '%s" -#: field.c:1246 +#: field.c:1248 msgid "null string for `FS' is a gawk extension" msgstr "tom streng som 'FS' er en gawk-udvidelse" -#: field.c:1250 +#: field.c:1252 msgid "old awk does not support regexps as value of `FS'" -msgstr "gamle versioner af awk understøtter ikke regexp'er som værdi for 'FS'" +msgstr "gamle versioner af awk understøtter ikke regexp'er som værdi for 'FS'" -#: field.c:1369 +#: field.c:1371 msgid "`FPAT' is a gawk extension" msgstr "'FPAT' er en gawk-udvidelse" -#: getopt.c:574 getopt.c:590 -#, c-format -msgid "%s: option '%s' is ambiguous\n" +#: getopt.c:604 getopt.c:633 +#, fuzzy, c-format +msgid "%s: option '%s' is ambiguous; possibilities:" msgstr "%s: flaget '%s' er flertydigt\n" -#: getopt.c:623 getopt.c:627 +#: getopt.c:679 getopt.c:683 #, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: flaget '--%s' tillader ikke noget argument\n" -#: getopt.c:636 getopt.c:641 +#: getopt.c:692 getopt.c:697 #, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: flaget '%c%s' tillader ikke noget argument\n" -#: getopt.c:684 getopt.c:703 +#: getopt.c:740 getopt.c:759 #, c-format msgid "%s: option '--%s' requires an argument\n" -msgstr "%s: flaget '--%s' kræver et argument\n" +msgstr "%s: flaget '--%s' kræver et argument\n" -#: getopt.c:741 getopt.c:744 +#: getopt.c:797 getopt.c:800 #, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: ukendt flag '--%s'\n" -#: getopt.c:752 getopt.c:755 +#: getopt.c:808 getopt.c:811 #, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: ukendt flag '%c%s'\n" -#: getopt.c:804 getopt.c:807 +#: getopt.c:860 getopt.c:863 #, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: ugyldigt flag - '%c'\n" -#: getopt.c:857 getopt.c:874 getopt.c:1082 getopt.c:1100 +#: getopt.c:916 getopt.c:933 getopt.c:1143 getopt.c:1161 #, c-format msgid "%s: option requires an argument -- '%c'\n" -msgstr "%s: flaget kræver et argument - '%c'\n" +msgstr "%s: flaget kræver et argument - '%c'\n" -#: getopt.c:930 getopt.c:946 +#: getopt.c:989 getopt.c:1005 #, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: flaget '-W %s' er flertydigt\n" -#: getopt.c:970 getopt.c:988 +#: getopt.c:1029 getopt.c:1047 #, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: flaget '-W %s' tillader ikke noget argument\n" -#: getopt.c:1009 getopt.c:1027 +#: getopt.c:1068 getopt.c:1086 #, c-format msgid "%s: option '-W %s' requires an argument\n" -msgstr "%s: flaget '-W %s' kræver et argument\n" +msgstr "%s: flaget '-W %s' kræver et argument\n" -#: io.c:280 +#: io.c:315 #, c-format msgid "command line argument `%s' is a directory: skipped" msgstr "kommandolinjeargument '%s' er et katalog, oversprunget" -#: io.c:283 io.c:385 +#: io.c:318 io.c:421 #, c-format msgid "cannot open file `%s' for reading (%s)" -msgstr "kan ikke Ã¥bne filen '%s' for læsning (%s)" +msgstr "kan ikke åbne filen '%s' for læsning (%s)" -#: io.c:501 +#: io.c:537 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "lukning af fd %d ('%s') mislykkedes (%s)" -#: io.c:578 +#: io.c:614 msgid "redirection not allowed in sandbox mode" msgstr "omdirigering ikke tilladt i sandkasse-tilstand" -#: io.c:612 +#: io.c:648 #, c-format msgid "expression in `%s' redirection only has numeric value" -msgstr "udtrykket i '%s'-omdirigering har kun numerisk værdi" +msgstr "udtrykket i '%s'-omdirigering har kun numerisk værdi" -#: io.c:618 +#: io.c:654 #, c-format msgid "expression for `%s' redirection has null string value" -msgstr "udtrykket for '%s'-omdirigering har en tom streng som værdi" +msgstr "udtrykket for '%s'-omdirigering har en tom streng som værdi" -#: io.c:624 +#: io.c:659 #, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "" -"filnavnet '%s' for '%s'-omdirigering kan være resultatet af et logisk udtryk" +"filnavnet '%s' for '%s'-omdirigering kan være resultatet af et logisk udtryk" -#: io.c:667 +#: io.c:702 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" -msgstr "unødig blanding af '>' og '>>' for filen '%.*s'" +msgstr "unødig blanding af '>' og '>>' for filen '%.*s'" -#: io.c:720 +#: io.c:755 #, c-format msgid "can't open pipe `%s' for output (%s)" -msgstr "kan ikke Ã¥bne datakanalen '%s' for udskrivning (%s)" +msgstr "kan ikke åbne datakanalen '%s' for udskrivning (%s)" -#: io.c:730 +#: io.c:765 #, c-format msgid "can't open pipe `%s' for input (%s)" -msgstr "kan ikke Ã¥bne datakanalen '%s' for indtastning (%s)" +msgstr "kan ikke åbne datakanalen '%s' for indtastning (%s)" -#: io.c:753 +#: io.c:788 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" -msgstr "kan ikke Ã¥bne tovejsdatakanalen '%s' for ind-/uddata (%s)" +msgstr "kan ikke åbne tovejsdatakanalen '%s' for ind-/uddata (%s)" -#: io.c:835 +#: io.c:870 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "kan ikke omdirigere fra '%s' (%s)" -#: io.c:838 +#: io.c:873 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "kan ikke omdirigere til '%s' (%s)" -#: io.c:889 +#: io.c:924 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "" -"nÃ¥ede systembegrænsningen for Ã¥bne filer: begynder at multiplekse " +"nåede systembegrænsningen for åbne filer: begynder at multiplekse " "fildeskriptorer" -#: io.c:905 +#: io.c:940 #, c-format msgid "close of `%s' failed (%s)." msgstr "lukning af '%s' mislykkedes (%s)." -#: io.c:913 +#: io.c:948 msgid "too many pipes or input files open" -msgstr "for mange datakanaler eller inddatafiler Ã¥bne" +msgstr "for mange datakanaler eller inddatafiler åbne" -#: io.c:935 +#: io.c:970 msgid "close: second argument must be `to' or `from'" -msgstr "close: andet argument skal være 'to' eller 'from'" +msgstr "close: andet argument skal være 'to' eller 'from'" -#: io.c:952 +#: io.c:987 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" -msgstr "close: '%.*s' er ikke en Ã¥ben fil, datakanal eller ko-proces" +msgstr "close: '%.*s' er ikke en åben fil, datakanal eller ko-proces" -#: io.c:957 +#: io.c:992 msgid "close of redirection that was never opened" -msgstr "lukning af omdirigering som aldrig blev Ã¥bnet" +msgstr "lukning af omdirigering som aldrig blev åbnet" -#: io.c:1054 +#: io.c:1089 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "" -"close: omdirigeringen '%s' blev ikke Ã¥bnet med '|&', andet argument ignoreret" +"close: omdirigeringen '%s' blev ikke åbnet med '|&', andet argument ignoreret" -#: io.c:1070 +#: io.c:1105 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "fejlstatus (%d) fra lukning af datakanalen '%s' (%s)" -#: io.c:1073 +#: io.c:1108 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "fejlstatus (%d) fra fillukning af '%s' (%s)" -#: io.c:1093 +#: io.c:1128 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "ingen eksplicit lukning af soklen '%s' angivet" -#: io.c:1096 +#: io.c:1131 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "ingen eksplicit lukning af ko-processen '%s' angivet" -#: io.c:1099 +#: io.c:1134 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "ingen eksplicit lukning af datakanalen '%s' angivet" -#: io.c:1102 +#: io.c:1137 #, c-format msgid "no explicit close of file `%s' provided" msgstr "ingen eksplicit lukning af filen '%s' angivet" -#: io.c:1130 io.c:1185 main.c:793 main.c:830 +#: io.c:1165 io.c:1220 main.c:798 main.c:835 #, c-format msgid "error writing standard output (%s)" msgstr "fejl ved skrivning til standard ud (%s)" -#: io.c:1134 io.c:1190 +#: io.c:1169 io.c:1225 #, c-format msgid "error writing standard error (%s)" msgstr "fejl ved skrivning til standard fejl (%s)" -#: io.c:1142 +#: io.c:1177 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "datakanalsrensning af '%s' mislykkedes (%s)." -#: io.c:1145 +#: io.c:1180 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "ko-procesrensning af datakanalen til '%s' mislykkedes (%s)." -#: io.c:1148 +#: io.c:1183 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "filrensning af '%s' mislykkedes (%s)." -#: io.c:1263 +#: io.c:1298 #, c-format msgid "local port %s invalid in `/inet'" msgstr "lokal port %s ugyldig i '/inet'" -#: io.c:1280 +#: io.c:1315 #, c-format msgid "remote host and port information (%s, %s) invalid" -msgstr "fjernvært og portinformation (%s, %s) ugyldige" +msgstr "fjernvært og portinformation (%s, %s) ugyldige" -#: io.c:1432 +#: io.c:1467 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "ingen (kendt) protokol opgivet i special-filnavn '%s'" -#: io.c:1446 +#: io.c:1481 #, c-format msgid "special file name `%s' is incomplete" -msgstr "special-filnavn '%s' er ufuldstændigt" +msgstr "special-filnavn '%s' er ufuldstændigt" -#: io.c:1463 +#: io.c:1498 msgid "must supply a remote hostname to `/inet'" msgstr "fjernmaskinenavn til '/inet' skal angives" -#: io.c:1481 +#: io.c:1516 msgid "must supply a remote port to `/inet'" msgstr "fjernport til '/inet' skal angives" -#: io.c:1527 +#: io.c:1562 msgid "TCP/IP communications are not supported" -msgstr "TCP/IP-kommunikation understøttes ikke" +msgstr "TCP/IP-kommunikation understøttes ikke" -#: io.c:1694 +#: io.c:1729 #, c-format msgid "could not open `%s', mode `%s'" -msgstr "kunne ikke Ã¥bne '%s', tilstand '%s'" +msgstr "kunne ikke åbne '%s', tilstand '%s'" -#: io.c:1748 +#: io.c:1783 #, c-format msgid "close of master pty failed (%s)" msgstr "lukning af master-pty mislykkedes (%s)" -#: io.c:1750 io.c:1918 io.c:2075 +#: io.c:1785 io.c:1953 io.c:2110 #, c-format msgid "close of stdout in child failed (%s)" msgstr "lukning af standard ud i underproces mislykkedes (%s)" -#: io.c:1753 +#: io.c:1788 #, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "" "flytning af slave-pty til standard ud i underproces mislykkedes (dup: %s)" -#: io.c:1755 io.c:1923 +#: io.c:1790 io.c:1958 #, c-format msgid "close of stdin in child failed (%s)" msgstr "lukning af standard ind i underproces mislykkedes (%s)" -#: io.c:1758 +#: io.c:1793 #, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "" "flytning af slave-pty til standard ind i underproces mislykkedes (dup: %s)" -#: io.c:1760 io.c:1781 +#: io.c:1795 io.c:1816 #, c-format msgid "close of slave pty failed (%s)" msgstr "lukning af slave-pty mislykkedes (%s)" -#: io.c:1859 io.c:1921 io.c:2053 io.c:2078 +#: io.c:1894 io.c:1956 io.c:2088 io.c:2113 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "" "flytning af datakanal til standard ud i underproces mislykkedes (dup: %s)" -#: io.c:1866 io.c:1926 +#: io.c:1901 io.c:1961 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "" "flytning af datakanalen til standard ind i underproces mislykkedes (dup: %s)" -#: io.c:1886 io.c:2068 +#: io.c:1921 io.c:2103 msgid "restoring stdout in parent process failed\n" -msgstr "genskabelse af standard ud i forælderprocessen mislykkedes\n" +msgstr "genskabelse af standard ud i forælderprocessen mislykkedes\n" -#: io.c:1894 +#: io.c:1929 msgid "restoring stdin in parent process failed\n" -msgstr "genskabelse af standard ind i forælderprocessen mislykkedes\n" +msgstr "genskabelse af standard ind i forælderprocessen mislykkedes\n" -#: io.c:1929 io.c:2080 io.c:2094 +#: io.c:1964 io.c:2115 io.c:2129 #, c-format msgid "close of pipe failed (%s)" msgstr "lukning af datakanalen mislykkedes (%s)" -#: io.c:1974 +#: io.c:2009 msgid "`|&' not supported" -msgstr "'|&' understøttes ikke" +msgstr "'|&' understøttes ikke" -#: io.c:2040 +#: io.c:2075 #, c-format msgid "cannot open pipe `%s' (%s)" -msgstr "kan ikke Ã¥bne datakanalen '%s' (%s)" +msgstr "kan ikke åbne datakanalen '%s' (%s)" -#: io.c:2088 +#: io.c:2123 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "kan ikke oprette barneproces for '%s' (fork: %s)" -#: io.c:2521 +#: io.c:2613 #, c-format msgid "data file `%s' is empty" msgstr "datafilen '%s' er tom" -#: io.c:2562 io.c:2570 +#: io.c:2654 io.c:2662 msgid "could not allocate more input memory" msgstr "kunne ikke allokere mere hukommelse til inddata" -#: io.c:3128 +#: io.c:3223 msgid "multicharacter value of `RS' is a gawk extension" -msgstr "'RS' som flertegnsværdi er en gawk-udvidelse" +msgstr "'RS' som flertegnsværdi er en gawk-udvidelse" -#: io.c:3233 +#: io.c:3313 msgid "IPv6 communication is not supported" -msgstr "IPv6-kommunikation understøttes ikke" +msgstr "IPv6-kommunikation understøttes ikke" -#: main.c:364 +#: main.c:353 msgid "`-m[fr]' option irrelevant in gawk" msgstr "'-m[fr]'-flaget er irrelevant i gawk" -#: main.c:366 +#: main.c:355 msgid "-m option usage: `-m[fr] nnn'" msgstr "brug af flaget -m: '-m[fr] nnn'" -#: main.c:389 +#: main.c:384 msgid "empty argument to `-e/--source' ignored" msgstr "tomt argument til '-e/--source' ignoreret" -#: main.c:460 +#: main.c:464 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "%s: flaget '-W %s' ukendt, ignoreret\n" -#: main.c:513 +#: main.c:510 #, c-format msgid "%s: option requires an argument -- %c\n" -msgstr "%s: flaget kræver et argument -- %c\n" +msgstr "%s: flaget kræver et argument -- %c\n" -#: main.c:534 +#: main.c:531 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" -msgstr "miljøvariablen 'POSIXLY_CORRECT' sat: aktiverer '--posix'" +msgstr "miljøvariablen 'POSIXLY_CORRECT' sat: aktiverer '--posix'" -#: main.c:540 +#: main.c:537 msgid "`--posix' overrides `--traditional'" -msgstr "'--posix' tilsidesætter '--traditional'" +msgstr "'--posix' tilsidesætter '--traditional'" -#: main.c:551 +#: main.c:548 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" -msgstr "'--posix'/'--traditional' tilsidesætter '--non-decimal-data'" +msgstr "'--posix'/'--traditional' tilsidesætter '--non-decimal-data'" -#: main.c:555 +#: main.c:552 #, c-format msgid "running %s setuid root may be a security problem" -msgstr "at køre %s setuid root kan være et sikkerhedsproblem" +msgstr "at køre %s setuid root kan være et sikkerhedsproblem" -#: main.c:560 +#: main.c:557 msgid "`--posix' overrides `--binary'" -msgstr "'--posix' tilsidesætter '--binary'" +msgstr "'--posix' tilsidesætter '--binary'" -#: main.c:611 +#: main.c:600 #, c-format msgid "can't set binary mode on stdin (%s)" -msgstr "kan ikke sætte binær tilstand pÃ¥ standard ind (%s)" +msgstr "kan ikke sætte binær tilstand på standard ind (%s)" -#: main.c:614 +#: main.c:603 #, c-format msgid "can't set binary mode on stdout (%s)" -msgstr "kan ikke sætte binær tilstand pÃ¥ standard ud (%s)" +msgstr "kan ikke sætte binær tilstand på standard ud (%s)" -#: main.c:616 +#: main.c:605 #, c-format msgid "can't set binary mode on stderr (%s)" -msgstr "kan ikke sætte binær tilstand pÃ¥ standard fejl (%s)" +msgstr "kan ikke sætte binær tilstand på standard fejl (%s)" -#: main.c:655 +#: main.c:653 msgid "no program text at all!" msgstr "ingen programtekst overhovedet!" -#: main.c:733 +#: main.c:737 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "Brug: %s [flag i POSIX- eller GNU-stil] -f progfil [--] fil ...\n" -#: main.c:735 +#: main.c:739 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "Brug: %s [flag i POSIX- eller GNU-stil] %cprogram%c fil ...\n" -#: main.c:740 +#: main.c:744 msgid "POSIX options:\t\tGNU long options: (standard)\n" msgstr "POSIX-flag:\t\tlange GNU-flag: (standard)\n" -#: main.c:741 +#: main.c:745 msgid "\t-f progfile\t\t--file=progfile\n" msgstr "\t-f progfil\t\t--file=progfil\n" -#: main.c:742 +#: main.c:746 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "\t-F fs\t\t\t--field-separator=fs\n" -#: main.c:743 +#: main.c:747 msgid "\t-v var=val\t\t--assign=var=val\n" -msgstr "\t-v var=værdi\t\t--assign=var=værdi\n" +msgstr "\t-v var=værdi\t\t--assign=var=værdi\n" -#: main.c:744 +#: main.c:748 msgid "Short options:\t\tGNU long options: (extensions)\n" msgstr "POSIX-flag:\t\tlange GNU-flag: (udvidelser)\n" -#: main.c:745 +#: main.c:749 msgid "\t-b\t\t\t--characters-as-bytes\n" msgstr "\t-b\t\t\t--characters-as-bytes\n" -#: main.c:746 +#: main.c:750 msgid "\t-c\t\t\t--traditional\n" msgstr "\t-c\t\t\t--traditional\n" -#: main.c:747 +#: main.c:751 msgid "\t-C\t\t\t--copyright\n" msgstr "\t-C\t\t\t--copyright\n" -#: main.c:748 +#: main.c:752 msgid "\t-d[file]\t\t--dump-variables[=file]\n" msgstr "\t-d[fil]\t\t--dump-variables[=fil]\n" -#: main.c:749 +#: main.c:753 +#, fuzzy +msgid "\t-D[file]\t\t--debug[=file]\n" +msgstr "\t-p[fil]\t\t--profile[=fil]\n" + +#: main.c:754 msgid "\t-e 'program-text'\t--source='program-text'\n" msgstr "\t-e 'programtekst'\t--source='programtekst'\n" -#: main.c:750 +#: main.c:755 msgid "\t-E file\t\t\t--exec=file\n" msgstr "\t-E fil\t\t\t--exec=fil\n" -#: main.c:751 +#: main.c:756 msgid "\t-g\t\t\t--gen-pot\n" msgstr "\t-g\t\t\t--gen-pot\n" -#: main.c:752 +#: main.c:757 msgid "\t-h\t\t\t--help\n" msgstr "\t-h\t\t\t--help\n" -#: main.c:753 +#: main.c:758 +msgid "\t-l library\t\t--load=library\n" +msgstr "" + +#: main.c:759 msgid "\t-L [fatal]\t\t--lint[=fatal]\n" msgstr "\t-L [fatal]\t\t--lint[=fatal]\n" -#: main.c:754 +#: main.c:760 msgid "\t-n\t\t\t--non-decimal-data\n" msgstr "\t-n\t\t\t--non-decimal-data\n" -#: main.c:755 +#: main.c:761 msgid "\t-N\t\t\t--use-lc-numeric\n" msgstr "\t-N\t\t\t--use-lc-numeric\n" -#: main.c:756 +#: main.c:762 +#, fuzzy +msgid "\t-o[file]\t\t--pretty-print[=file]\n" +msgstr "\t-p[fil]\t\t--profile[=fil]\n" + +#: main.c:763 msgid "\t-O\t\t\t--optimize\n" msgstr "\t-O\t\t\t--optimize\n" -#: main.c:757 +#: main.c:764 msgid "\t-p[file]\t\t--profile[=file]\n" msgstr "\t-p[fil]\t\t--profile[=fil]\n" -#: main.c:758 +#: main.c:765 msgid "\t-P\t\t\t--posix\n" msgstr "\t-P\t\t\t--posix\n" -#: main.c:759 +#: main.c:766 msgid "\t-r\t\t\t--re-interval\n" msgstr "\t-r\t\t\t--re-interval\n" -#: main.c:761 -msgid "\t-R file\t\t\t--command=file\n" -msgstr "\t-R file\t\t\t--command=fil\n" - -#: main.c:762 +#: main.c:767 msgid "\t-S\t\t\t--sandbox\n" msgstr "\t-S\t\t\t--sandbox\n" -#: main.c:763 +#: main.c:768 msgid "\t-t\t\t\t--lint-old\n" msgstr "\t-t\t\t\t--lint-old\n" -#: main.c:764 +#: main.c:769 msgid "\t-V\t\t\t--version\n" msgstr "\t-V\t\t\t--version\n" -#: main.c:766 +#: main.c:771 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "\t-W nostalgia\t\t--nostalgia\n" -#: main.c:769 +#: main.c:774 msgid "\t-Y\t\t--parsedebug\n" msgstr "\t-Y\t\t--parsedebug\n" @@ -1802,7 +1712,7 @@ msgstr "\t-Y\t\t--parsedebug\n" #. for this application. Please add _another line_ with the #. address for translation bugs. #. no-wrap -#: main.c:778 +#: main.c:783 msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" @@ -1813,19 +1723,19 @@ msgstr "" "For at rapportere fejl kan du se punktet 'Bugs' i 'gawk.info', som er\n" "sektionen 'Reporting Problems and Bugs' i den trykte version.\n" "\n" -"Rapportér kommentarer til oversættelsen til <dansk@dansk-gruppen.dk>.\n" +"Rapportér kommentarer til oversættelsen til <dansk@dansk-gruppen.dk>.\n" -#: main.c:782 +#: main.c:787 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" "\n" msgstr "" -"gawk er et sprog til mønster-genkendelse og -behandling.\n" -"Almindeligvis læser gawk fra standard ind og skriver til standard ud.\n" +"gawk er et sprog til mønster-genkendelse og -behandling.\n" +"Almindeligvis læser gawk fra standard ind og skriver til standard ud.\n" "\n" -#: main.c:786 +#: main.c:791 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" @@ -1835,7 +1745,7 @@ msgstr "" "\tgawk '{ sum += $1 }; END { print sum }' fil\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" -#: main.c:806 +#: main.c:811 #, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" @@ -1846,16 +1756,16 @@ msgid "" "(at your option) any later version.\n" "\n" msgstr "" -"Copyright © 1989, 1991-%d Free Software Foundation.\n" +"Copyright © 1989, 1991-%d Free Software Foundation.\n" "\n" "Dette program er frit programmel. Du kan distribuere det og/eller\n" -"ændre det under betingelserne i GNU General Public License, offentliggjort\n" +"ændre det under betingelserne i GNU General Public License, offentliggjort\n" "af Free Software Foundation, enten version 3 af licensen, eller (hvis du " "vil)\n" "enhver senere version.\n" "\n" -#: main.c:814 +#: main.c:819 msgid "" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" @@ -1863,157 +1773,152 @@ msgid "" "GNU General Public License for more details.\n" "\n" msgstr "" -"Dette program distribueres i hÃ¥b om at det vil være nyttigt,\n" -"men UDEN NOGEN SOM HELST GARANTI, ogsÃ¥ uden underforstÃ¥et garanti\n" -"om SALGBARHED eller EGNETHED FOR NOGET SPECIELT FORMÃ…L. Se GNU\n" +"Dette program distribueres i håb om at det vil være nyttigt,\n" +"men UDEN NOGEN SOM HELST GARANTI, også uden underforstået garanti\n" +"om SALGBARHED eller EGNETHED FOR NOGET SPECIELT FORMÅL. Se GNU\n" "General Public License for yderligere information.\n" "\n" -#: main.c:820 +#: main.c:825 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program. If not, see http://www.gnu.org/licenses/.\n" msgstr "" -"Du bør have fÃ¥et en kopi af GNU General Public License sammen\n" -"med dette program. Hvis ikke, sÃ¥ se http://www.gnu.org/licenses/.\n" +"Du bør have fået en kopi af GNU General Public License sammen\n" +"med dette program. Hvis ikke, så se http://www.gnu.org/licenses/.\n" -#: main.c:855 +#: main.c:860 msgid "-Ft does not set FS to tab in POSIX awk" -msgstr "-Ft sætter ikke FS til tab i POSIX-awk" +msgstr "-Ft sætter ikke FS til tab i POSIX-awk" -#: main.c:1089 +#: main.c:1091 #, c-format msgid "unknown value for field spec: %d\n" -msgstr "ukendt værdi for felt-spec: %d\n" +msgstr "ukendt værdi for felt-spec: %d\n" -#: main.c:1170 +#: main.c:1172 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" "\n" msgstr "" -"%s: '%s' argument til '-v' ikke pÃ¥ formen 'var=værdi'\n" +"%s: '%s' argument til '-v' ikke på formen 'var=værdi'\n" "\n" -#: main.c:1196 +#: main.c:1198 #, c-format msgid "`%s' is not a legal variable name" msgstr "'%s' er ikke et gyldigt variabelnavn" -#: main.c:1199 +#: main.c:1201 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "'%s' er ikke et variabelnavn, leder efter fil '%s=%s'" -#: main.c:1203 -#, fuzzy, c-format +#: main.c:1205 +#, c-format msgid "cannot use gawk builtin `%s' as variable name" -msgstr "extension: kan ikke bruge gawk's indbyggede '%s' som funktionsnavn" +msgstr "kan ikke bruge gawk's indbyggede '%s' som variabelnavn" -#: main.c:1208 -#, fuzzy, c-format +#: main.c:1210 +#, c-format msgid "cannot use function `%s' as variable name" -msgstr "kan ikke bruge funktionsnavnet '%s' som variabel eller array" +msgstr "kan ikke bruge funktion '%s' som variabelnavn" -#: main.c:1261 +#: main.c:1263 msgid "floating point exception" msgstr "flydendetalsundtagelse" -#: main.c:1268 +#: main.c:1270 msgid "fatal error: internal error" msgstr "fatal fejl: intern fejl" -#: main.c:1283 +#: main.c:1285 msgid "fatal error: internal error: segfault" msgstr "fatal fejl: intern fejl: segmentfejl" -#: main.c:1295 +#: main.c:1297 msgid "fatal error: internal error: stack overflow" -msgstr "fatal fejl: intern fejl: stakoverløb" +msgstr "fatal fejl: intern fejl: stakoverløb" -#: main.c:1345 +#: main.c:1347 #, c-format msgid "no pre-opened fd %d" -msgstr "ingen fd %d Ã¥bnet i forvejen" +msgstr "ingen fd %d åbnet i forvejen" -#: main.c:1352 +#: main.c:1354 #, c-format msgid "could not pre-open /dev/null for fd %d" -msgstr "kunne ikke i forvejen Ã¥bne /dev/null for fd %d" - -#: main.c:1375 main.c:1384 -#, c-format -msgid "could not find groups: %s" -msgstr "kunne ikke finde grupper: %s" +msgstr "kunne ikke i forvejen åbne /dev/null for fd %d" -#: msg.c:63 +#: msg.c:61 #, c-format msgid "cmd. line:" msgstr "kommandolinje:" -#: msg.c:107 +#: msg.c:105 msgid "error: " msgstr "fejl: " -#: node.c:406 +#: node.c:402 msgid "backslash at end of string" -msgstr "omvendt skrÃ¥streg i slutningen af strengen" +msgstr "omvendt skråstreg i slutningen af strengen" -#: node.c:517 +#: node.c:479 #, c-format msgid "old awk does not support the `\\%c' escape sequence" -msgstr "gamle versioner af awk understøtter ikke '\\%c' undvigesekvens" +msgstr "gamle versioner af awk understøtter ikke '\\%c' undvigesekvens" -#: node.c:568 +#: node.c:530 msgid "POSIX does not allow `\\x' escapes" msgstr "POSIX tillader ikke '\\x'-kontrolsekvenser" -#: node.c:574 +#: node.c:536 msgid "no hex digits in `\\x' escape sequence" msgstr "ingen heksadecimale cifre i '\\x'-kontrolsekvenser" -#: node.c:596 +#: node.c:558 #, c-format msgid "" "hex escape \\x%.*s of %d characters probably not interpreted the way you " "expect" msgstr "" -"den heksadecimale sekvens \\x%.*s pÃ¥ %d tegn nok ikke forstÃ¥et som du " +"den heksadecimale sekvens \\x%.*s på %d tegn nok ikke forstået som du " "forventer det" -#: node.c:611 +#: node.c:573 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "kontrolsekvensen '\\%c' behandlet som kun '%c'" -#: node.c:750 +#: node.c:712 msgid "" "Invalid multibyte data detected. There may be a mismatch between your data " "and your locale." msgstr "" -"Ugyldigt multibyte data fundet. MÃ¥ske er der uoverensstemmelse mellem dine " +"Ugyldigt multibyte data fundet. Måske er der uoverensstemmelse mellem dine " "data og dit locale." #: posix/gawkmisc.c:176 #, c-format msgid "%s %s `%s': could not get fd flags: (fcntl F_GETFD: %s)" -msgstr "%s %s '%s': kunne ikke fÃ¥ fat pÃ¥ fd flag: (fcntl F_GETFD: %s)" +msgstr "%s %s '%s': kunne ikke få fat på fd flag: (fcntl F_GETFD: %s)" #: posix/gawkmisc.c:188 #, c-format msgid "%s %s `%s': could not set close-on-exec: (fcntl F_SETFD: %s)" -msgstr "%s %s '%s': kunne ikke sætte luk-ved-exec (fcntl F_SETFD: %s)" +msgstr "%s %s '%s': kunne ikke sætte luk-ved-exec (fcntl F_SETFD: %s)" -#: profile.c:83 +#: profile.c:69 #, c-format msgid "could not open `%s' for writing: %s" -msgstr "kunne ikke Ã¥bne '%s' for skrivning: %s" +msgstr "kunne ikke åbne '%s' for skrivning: %s" -#: profile.c:85 +#: profile.c:71 msgid "sending profile to standard error" msgstr "sender profilen til standard fejl" -#: profile.c:203 +#: profile.c:187 #, c-format msgid "" "\t# %s block(s)\n" @@ -2022,7 +1927,7 @@ msgstr "" "\t# %s blokke\n" "\n" -#: profile.c:208 +#: profile.c:192 #, c-format msgid "" "\t# Rule(s)\n" @@ -2031,17 +1936,22 @@ msgstr "" "\t# Regler\n" "\n" -#: profile.c:279 +#: profile.c:266 #, c-format msgid "internal error: %s with null vname" msgstr "intern fejl: %s med null vname" -#: profile.c:952 +#: profile.c:528 +#, fuzzy +msgid "internal error: builtin with null fname" +msgstr "intern fejl: %s med null vname" + +#: profile.c:943 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "\t# profil til gawk oprettet %s\n" -#: profile.c:1331 +#: profile.c:1321 #, c-format msgid "" "\n" @@ -2050,116 +1960,191 @@ msgstr "" "\n" "\t# Funktioner, listede alfabetisk\n" -#: profile.c:1370 +#: profile.c:1359 #, c-format msgid "redir2str: unknown redirection type %d" msgstr "redir2str: uykendt omdirigeringstype %d" -#: re.c:572 -#, fuzzy, c-format +#: re.c:573 +#, c-format msgid "range of the form `[%c-%c]' is locale dependent" -msgstr "omrÃ¥de pÃ¥ formen `[%c-%c]' er locale-afhængig" +msgstr "område på formen `[%c-%c]' er locale-afhængig" -#: re.c:599 +#: re.c:600 #, c-format msgid "regexp component `%.*s' should probably be `[%.*s]'" -msgstr "regexp-komponent `%.*s' skulle nok være `[%.*s]'" +msgstr "regexp-komponent `%.*s' skulle nok være `[%.*s]'" -#: regcomp.c:132 +#: regcomp.c:131 msgid "Success" msgstr "Lykkedes" -#: regcomp.c:135 +#: regcomp.c:134 msgid "No match" msgstr "Mislykkedes" -#: regcomp.c:138 +#: regcomp.c:137 msgid "Invalid regular expression" -msgstr "Ugyldigt regulært udtryk" +msgstr "Ugyldigt regulært udtryk" -#: regcomp.c:141 +#: regcomp.c:140 msgid "Invalid collation character" msgstr "Ugyldigt sorteringstegn" -#: regcomp.c:144 +#: regcomp.c:143 msgid "Invalid character class name" msgstr "Ugyldigt tegnklassenavn" -#: regcomp.c:147 +#: regcomp.c:146 msgid "Trailing backslash" -msgstr "Efterfølgende omvendt skrÃ¥streg" +msgstr "Efterfølgende omvendt skråstreg" -#: regcomp.c:150 +#: regcomp.c:149 msgid "Invalid back reference" msgstr "Ugyldig bagudreference" -#: regcomp.c:153 +#: regcomp.c:152 msgid "Unmatched [ or [^" msgstr "Ubalanceret [ eller [^" -#: regcomp.c:156 +#: regcomp.c:155 msgid "Unmatched ( or \\(" msgstr "Ubalanceret ( eller \\(" -#: regcomp.c:159 +#: regcomp.c:158 msgid "Unmatched \\{" msgstr "Ubalanceret \\{" -#: regcomp.c:162 +#: regcomp.c:161 msgid "Invalid content of \\{\\}" msgstr "Ugyldigt indhold i \\{\\}" -#: regcomp.c:165 +#: regcomp.c:164 msgid "Invalid range end" msgstr "Ugyldig intervalslutning" -#: regcomp.c:168 +#: regcomp.c:167 msgid "Memory exhausted" msgstr "Hukommelsen opbrugt" -#: regcomp.c:171 +#: regcomp.c:170 msgid "Invalid preceding regular expression" -msgstr "Ugyldigt foregÃ¥ende regulært udtryk" +msgstr "Ugyldigt foregående regulært udtryk" -#: regcomp.c:174 +#: regcomp.c:173 msgid "Premature end of regular expression" -msgstr "For tidligt slut pÃ¥ regulært udtryk" +msgstr "For tidligt slut på regulært udtryk" -#: regcomp.c:177 +#: regcomp.c:176 msgid "Regular expression too big" -msgstr "Regulært udtryk for stort" +msgstr "Regulært udtryk for stort" -#: regcomp.c:180 +#: regcomp.c:179 msgid "Unmatched ) or \\)" msgstr "Ubalanceret ) eller \\)" -#: regcomp.c:701 +#: regcomp.c:700 msgid "No previous regular expression" -msgstr "Intet foregÃ¥ende regulært udtryk" +msgstr "Intet foregående regulært udtryk" + +#~ msgid "attempt to use function `%s' as an array" +#~ msgstr "forsøg på at bruge funktionen '%s' som et array" + +#~ msgid "reference to uninitialized element `%s[\"%.*s\"]'" +#~ msgstr "reference til ikke-initieret element '%s[\"%.*s\"]'" + +#~ msgid "subscript of array `%s' is null string" +#~ msgstr "indeks i array '%s' er en tom streng" + +#~ msgid "%s: empty (null)\n" +#~ msgstr "%s: tom (null)\n" + +#~ msgid "%s: empty (zero)\n" +#~ msgstr "%s: tom (nul)\n" + +#~ msgid "%s: table_size = %d, array_size = %d\n" +#~ msgstr "%s: tabelstørrelse = %d, arraystørrelse = %d\n" + +#~ msgid "%s: is parameter\n" +#~ msgstr "%s: er parameter\n" + +#~ msgid "%s: array_ref to %s\n" +#~ msgstr "%s: arrayreference til %s\n" + +#~ msgid "use of non-array as array" +#~ msgstr "brug af ikke-array som array" + +#~ msgid "can't use function name `%s' as variable or array" +#~ msgstr "kan ikke bruge funktionsnavnet '%s' som variabel eller array" + +#~ msgid "attempt to use array `%s[\"%.*s\"]' in a scalar context" +#~ msgstr "forsøg på at bruge array '%s[\"%.*s\"]' i skalarsammenhæng" + +#~ msgid "assignment used in conditional context" +#~ msgstr "tildeling brugt i sammenligningsammenhæng" + +#~ msgid "statement has no effect" +#~ msgstr "kommandoen har ingen effekt" + +#~ msgid "" +#~ "for loop: array `%s' changed size from %ld to %ld during loop execution" +#~ msgstr "" +#~ "for-løkke: array '%s' ændrede størrelse fra %ld til %ld under udførelse " +#~ "af løkken" + +#~ msgid "function called indirectly through `%s' does not exist" +#~ msgstr "funktion kaldt indirekte via '%s' eksisterer ikke" + +#~ msgid "function `%s' not defined" +#~ msgstr "funktionen '%s' er ikke defineret" + +#~ msgid "non-redirected `getline' invalid inside `%s' rule" +#~ msgstr "ikke-omdirigeret 'getline' ugyldig inden i '%s'-regel" + +#~ msgid "error reading input file `%s': %s" +#~ msgstr "fejl ved læsning af inddatafilen '%s': %s" + +#~ msgid "`nextfile' cannot be called from a `%s' rule" +#~ msgstr "'nextfile' kan ikke kaldes fra en '%s'-regel" + +#~ msgid "`exit' cannot be called in the current context" +#~ msgstr "'exit' kan ikke kaldes i den aktuelle kontekst" + +#~ msgid "`next' cannot be called from a `%s' rule" +#~ msgstr "'next' kan ikke kaldes fra en '%s'-regel" + +#~ msgid "Sorry, don't know how to interpret `%s'" +#~ msgstr "Véd desværre ikke hvordan '%s' skal fortolkes" + +#~ msgid "\t-R file\t\t\t--command=file\n" +#~ msgstr "\t-R file\t\t\t--command=fil\n" + +#~ msgid "could not find groups: %s" +#~ msgstr "kunne ikke finde grupper: %s" #~ msgid "assignment is not allowed to result of builtin function" #~ msgstr "tildeling er ikke tilladt til resultatet fra en indbygget funktion" #~ msgid "attempt to use array in a scalar context" -#~ msgstr "forsøg pÃ¥ at bruge array i skalarsammenhæng" +#~ msgstr "forsøg på at bruge array i skalarsammenhæng" #~ msgid "statement may have no effect" -#~ msgstr "kommandoen har mÃ¥ske ikke nogen effekt" +#~ msgstr "kommandoen har måske ikke nogen effekt" #~ msgid "out of memory" -#~ msgstr "slut pÃ¥ hukommelsen" +#~ msgstr "slut på hukommelsen" #~ msgid "attempt to use scalar `%s' as array" -#~ msgstr "forsøg pÃ¥ at bruge skalaren '%s' som array" +#~ msgstr "forsøg på at bruge skalaren '%s' som array" #~ msgid "attempt to use array `%s' in scalar context" -#~ msgstr "forsøg pÃ¥ at bruge array '%s' i skalarsammenhæng" +#~ msgstr "forsøg på at bruge array '%s' i skalarsammenhæng" #~ msgid "call of `length' without parentheses is deprecated by POSIX" -#~ msgstr "kald af 'length' uden parenteser er forældet ifølge POSIX" +#~ msgstr "kald af 'length' uden parenteser er forældet ifølge POSIX" #~ msgid "division by zero attempted in `/'" -#~ msgstr "forsøgte at dividere med nul i '/'" +#~ msgstr "forsøgte at dividere med nul i '/'" #~ msgid "length: untyped parameter argument will be forced to scalar" #~ msgstr "length: parameter uden type vil blive brugt som skalar" @@ -2168,10 +2153,10 @@ msgstr "Intet foregÃ¥ende regulært udtryk" #~ msgstr "length: argument uden type vil blive brugt som skalar" #~ msgid "`break' outside a loop is not portable" -#~ msgstr "'break' uden for en løkke er ikke portabelt" +#~ msgstr "'break' uden for en løkke er ikke portabelt" #~ msgid "`continue' outside a loop is not portable" -#~ msgstr "'continue' uden for en løkke er ikke portabelt" +#~ msgstr "'continue' uden for en løkke er ikke portabelt" #~ msgid "`next' cannot be called from a BEGIN rule" #~ msgstr "'next' kan ikke kaldes fra en BEGIN-regel" @@ -2183,7 +2168,7 @@ msgstr "Intet foregÃ¥ende regulært udtryk" #~ "concatenation: side effects in one expression have changed the length of " #~ "another!" #~ msgstr "" -#~ "konkatenering: sideeffekter i et udtryk har ændret længden af et andet!" +#~ "konkatenering: sideeffekter i et udtryk har ændret længden af et andet!" #~ msgid "illegal type (%s) in tree_eval" #~ msgstr "ugyldig type (%s) i tree_eval" @@ -2192,16 +2177,16 @@ msgstr "Intet foregÃ¥ende regulært udtryk" #~ msgstr "\t# -- main --\n" #~ msgid "invalid tree type %s in redirect()" -#~ msgstr "ugyldig trætype %s i redirect()" +#~ msgstr "ugyldig trætype %s i redirect()" #~ msgid "/inet/raw client not ready yet, sorry" -#~ msgstr "/inet/raw-klient er desværre ikke klar endnu" +#~ msgstr "/inet/raw-klient er desværre ikke klar endnu" #~ msgid "only root may use `/inet/raw'." #~ msgstr "kun root kan bruge '/inet/raw'." #~ msgid "/inet/raw server not ready yet, sorry" -#~ msgstr "/inet/raw-server er desværre ikke klar endnu" +#~ msgstr "/inet/raw-server er desværre ikke klar endnu" #~ msgid "file `%s' is a directory" #~ msgstr "filen '%s' er et katalog" @@ -2213,7 +2198,7 @@ msgstr "Intet foregÃ¥ende regulært udtryk" #~ msgstr "brug 'PROCINFO[...]' i stedet for '/dev/user'" #~ msgid "\t-m[fr] val\n" -#~ msgstr "\t-m[fr] værdi\n" +#~ msgstr "\t-m[fr] værdi\n" #~ msgid "\t-W compat\t\t--compat\n" #~ msgstr "\t-W compat\t\t--compat\n" @@ -2231,7 +2216,7 @@ msgstr "Intet foregÃ¥ende regulært udtryk" #~ msgstr "# behandlet internt som 'delete'" #~ msgid "# this is a dynamically loaded extension function" -#~ msgstr "# dette er en dynamisk indlæst udvidelsesfunktion" +#~ msgstr "# dette er en dynamisk indlæst udvidelsesfunktion" #~ msgid "" #~ "\t# BEGIN block(s)\n" Binary files differ@@ -2,14 +2,14 @@ # Copyright (C) 2000 Free Software Foundation, Inc. # This file is distributed under the same license as the gawk package. # -# Philipp Thomas <pth@suse.de>, 2011 +# Philipp Thomas <pth@suse.de>, 2011 2012 # msgid "" msgstr "" -"Project-Id-Version: gawk 4.0.0\n" +"Project-Id-Version: gawk 4.0.0h\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" -"POT-Creation-Date: 2011-11-14 21:46+0200\n" -"PO-Revision-Date: 2011-09-27 16:38+0200\n" +"POT-Creation-Date: 2012-04-08 12:18+0300\n" +"PO-Revision-Date: 2012-01-30 16:21+0100\n" "Last-Translator: Philipp Thomas <pth@suse.de>\n" "Language-Team: German <translation-team-de@lists.sourceforge.net>\n" "Language: de\n" @@ -17,525 +17,482 @@ msgstr "" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -#: array.c:140 +#: array.c:267 #, c-format msgid "from %s" msgstr "von %s" -#: array.c:248 +#: array.c:367 msgid "attempt to use a scalar value as array" msgstr "Es wird versucht, einen Skalar als Feld zu verwenden" -#: array.c:251 -#, c-format -msgid "attempt to use function `%s' as an array" -msgstr "Es wird versucht, die Funktion »%s« als Feld zu verwenden" - -#: array.c:254 +#: array.c:369 #, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "Es wird versucht, den skalaren Parameter »%s« als Feld zu verwenden" -#: array.c:257 +#: array.c:372 #, c-format msgid "attempt to use scalar `%s' as an array" msgstr "Es wird versucht, den Skalar »%s« als Array zu verwenden" -#: array.c:302 array.c:707 builtin.c:84 builtin.c:1384 builtin.c:1426 -#: builtin.c:1439 builtin.c:1858 builtin.c:1870 eval.c:1135 eval.c:1139 -#: eval.c:1495 eval.c:1812 +#: array.c:419 array.c:585 builtin.c:85 builtin.c:1389 builtin.c:1431 +#: builtin.c:1444 builtin.c:1862 builtin.c:1874 eval.c:1096 eval.c:1100 +#: eval.c:1500 #, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "Es wird versucht, das Feld »%s« in einem Skalarkontext zu verwenden" -#: array.c:513 -#, c-format -msgid "reference to uninitialized element `%s[\"%.*s\"]'" -msgstr "Bezug auf ein nicht initialisiertes Element »%s[\"%.*s\"]«" - -#: array.c:519 -#, c-format -msgid "subscript of array `%s' is null string" -msgstr "Der Index von Feld »%s« ist ein Nullstring" - -#: array.c:723 +#: array.c:592 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "delete: Index »%s« ist in Feld »%s« nicht vorhanden" -#: array.c:734 eval.c:1865 +#: array.c:606 #, c-format msgid "attempt to use scalar `%s[\"%.*s\"]' as an array" msgstr "Es wird versucht, den Skalar »%s[\"%.*s\"]« als Feld zu verwenden" -#: array.c:910 -#, c-format -msgid "%s: empty (null)\n" -msgstr "%s: leer (Null)\n" - -#: array.c:915 -#, c-format -msgid "%s: empty (zero)\n" -msgstr "%s: leer (0)\n" - -#: array.c:919 -#, c-format -msgid "%s: table_size = %d, array_size = %d\n" -msgstr "%s: Tabellengröße = %d, Feldgröße = %d\n" - -#: array.c:954 -#, c-format -msgid "%s: is parameter\n" -msgstr "%s: ist ein Parameter\n" - -#: array.c:958 -#, c-format -msgid "%s: array_ref to %s\n" -msgstr "%s: Feld-Referenz auf %s\n" - -#: array.c:963 -msgid "adump: argument not an array" +#: array.c:794 +#, fuzzy +msgid "adump: first argument not an array" msgstr "adump: Das Argument ist kein Feld" -#: array.c:1086 +#: array.c:833 msgid "asort: second argument not an array" msgstr "asort: Das zweite Argument ist kein Feld" -#: array.c:1087 +#: array.c:834 msgid "asorti: second argument not an array" msgstr "asorti: Das zweite Argument ist kein Feld" -#: array.c:1094 +#: array.c:841 msgid "asort: first argument not an array" msgstr "asort: Das erste Argument ist kein Feld" -#: array.c:1095 +#: array.c:842 msgid "asorti: first argument not an array" msgstr "asorti: Das erste Argument ist kein Feld" -#: array.c:1102 +#: array.c:849 msgid "asort: cannot use a subarray of first arg for second arg" msgstr "" "asort: ein untergeordnetes Feld des ersten Arguments kann nicht als zweites " "Argument verwendet werden" -#: array.c:1103 +#: array.c:850 msgid "asorti: cannot use a subarray of first arg for second arg" msgstr "" "asorti: ein untergeordnetes Feld des ersten Arguments kann nicht als zweites " "Argument verwendet werden" -#: array.c:1108 +#: array.c:855 msgid "asort: cannot use a subarray of second arg for first arg" msgstr "" "asort: ein untergeordnetes Feld des zweiten Arguments kann nicht als erstes " "Argument verwendet werden" -#: array.c:1109 +#: array.c:856 msgid "asorti: cannot use a subarray of second arg for first arg" msgstr "" "asorti: ein untergeordnetes Feld des zweiten Arguments kann nicht als erstes " "Argument verwendet werden" -#: array.c:1659 +#: array.c:1329 #, c-format msgid "`%s' is invalid as a function name" msgstr "»%s« ist ein unzulässiger Funktionsname" -#: array.c:1663 +#: array.c:1333 #, c-format msgid "sort comparison function `%s' is not defined" msgstr "Die Vergleichsfunktion »%s« für das Sortieren ist nicht definiert" -#: awkgram.y:249 +#: awkgram.y:223 #, c-format msgid "%s blocks must have an action part" msgstr "%s-Blöcke müssen einen Aktionsteil haben" -#: awkgram.y:252 +#: awkgram.y:226 msgid "each rule must have a pattern or an action part" msgstr "Jede Regel muss entweder ein Muster oder einen Aktionsteil haben" -#: awkgram.y:323 awkgram.y:334 +#: awkgram.y:295 awkgram.y:306 msgid "old awk does not support multiple `BEGIN' or `END' rules" msgstr "Das alte awk erlaubt keine mehrfachen »BEGIN«- oder »END«-Regeln" -#: awkgram.y:371 +#: awkgram.y:343 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "»%s« ist eine eingebaute Funktion und kann nicht umdefiniert werden" -#: awkgram.y:432 +#: awkgram.y:389 msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "" "Die Regulärer-Ausdruck-Konstante »//« sieht wie ein C-Kommentar aus, ist " "aber keiner" -#: awkgram.y:436 +#: awkgram.y:393 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "" "Die Regulärer-Ausdruck-Konstante »/%s/« sieht wie ein C-Kommentar aus, ist " "aber keiner" -#: awkgram.y:528 +#: awkgram.y:485 #, c-format msgid "duplicate case values in switch body: %s" msgstr "doppelte Case-Werte im Switch-Block: %s" -#: awkgram.y:549 +#: awkgram.y:506 msgid "duplicate `default' detected in switch body" msgstr "doppeltes »default« im Switch-Block gefunden" -#: awkgram.y:809 +#: awkgram.y:766 msgid "`break' is not allowed outside a loop or switch" msgstr "" "»break« ist außerhalb einer Schleife oder eines Switch-Blocks nicht zulässig" -#: awkgram.y:818 +#: awkgram.y:775 msgid "`continue' is not allowed outside a loop" msgstr "»continue« ist außerhalb einer Schleife nicht zulässig" -#: awkgram.y:828 +#: awkgram.y:785 #, c-format msgid "`next' used in %s action" msgstr "»next« wird in %s-Aktion verwendet" -#: awkgram.y:836 +#: awkgram.y:793 msgid "`nextfile' is a gawk extension" msgstr "»nextfile« ist eine gawk-Erweiterung" -#: awkgram.y:841 +#: awkgram.y:798 #, c-format msgid "`nextfile' used in %s action" msgstr "»nextfile« wird in %s-Aktion verwendet" -#: awkgram.y:865 +#: awkgram.y:822 msgid "`return' used outside function context" msgstr "»return« wird außerhalb einer Funktion verwendet" -#: awkgram.y:925 +#: awkgram.y:892 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "" "Einfaches »print« in BEGIN- oder END-Regel soll vermutlich »print \"\"« sein" -#: awkgram.y:995 awkgram.y:999 awkgram.y:1023 +#: awkgram.y:962 awkgram.y:966 awkgram.y:990 msgid "`delete array' is a gawk extension" msgstr "»delete array« ist eine gawk-Erweiterung" -#: awkgram.y:1019 +#: awkgram.y:986 msgid "`delete(array)' is a non-portable tawk extension" msgstr "»delete(array)« ist eine gawk-Erweiterung" -#: awkgram.y:1135 +#: awkgram.y:1102 msgid "multistage two-way pipelines don't work" msgstr "mehrstufige Zweiwege-Pipes funktionieren nicht" -#: awkgram.y:1238 +#: awkgram.y:1205 msgid "regular expression on right of assignment" msgstr "Regulärer Ausdruck auf der rechten Seite einer Zuweisung" -#: awkgram.y:1249 +#: awkgram.y:1216 msgid "regular expression on left of `~' or `!~' operator" msgstr "Regulärer Ausdruck links vom »~«- oder »!~«-Operator" -#: awkgram.y:1265 awkgram.y:1419 +#: awkgram.y:1232 awkgram.y:1383 msgid "old awk does not support the keyword `in' except after `for'" msgstr "Das alte awk unterstützt das Schlüsselwort »in« nur nach »for«" -#: awkgram.y:1275 +#: awkgram.y:1242 msgid "regular expression on right of comparison" msgstr "Regulärer Ausdruck rechts von einem Vergleich" -#: awkgram.y:1394 +#: awkgram.y:1358 #, c-format msgid "`getline var' invalid inside `%s' rule" msgstr "»getline var« ist ungültig innerhalb der »%s«-Regel" -#: awkgram.y:1397 eval.c:2504 +#: awkgram.y:1361 #, c-format msgid "`getline' invalid inside `%s' rule" msgstr "»getline« ist ungültig innerhalb der »%s«-Regel" -#: awkgram.y:1402 +#: awkgram.y:1366 msgid "non-redirected `getline' undefined inside END action" msgstr "" "Nicht-umgelenktes »getline« ist innerhalb der END-Aktion nicht definiert" -#: awkgram.y:1421 +#: awkgram.y:1385 msgid "old awk does not support multidimensional arrays" msgstr "Das alte awk unterstützt keine mehrdimensionalen Felder" -#: awkgram.y:1517 +#: awkgram.y:1481 msgid "call of `length' without parentheses is not portable" msgstr "Aufruf von »length« ohne Klammern ist nicht portabel" -#: awkgram.y:1580 +#: awkgram.y:1545 msgid "indirect function calls are a gawk extension" msgstr "indirekte Funktionsaufrufe sind eine gawk-Erweiterung" -#: awkgram.y:1593 +#: awkgram.y:1558 #, c-format msgid "can not use special variable `%s' for indirect function call" msgstr "" "die besondere Variable »%s« kann nicht für den indirekten Funktionsaufruf " "verwendet werden" -#: awkgram.y:1671 +#: awkgram.y:1636 msgid "invalid subscript expression" msgstr "Ungültiger Index-Ausdruck" -#: awkgram.y:1711 -msgid "use of non-array as array" -msgstr "Verwendung eines Nicht-Feldes als Feld" - -#: awkgram.y:1975 awkgram.y:1995 msg.c:98 +#: awkgram.y:1936 awkgram.y:1956 msg.c:96 msgid "warning: " msgstr "Warnung: " -#: awkgram.y:1993 msg.c:130 +#: awkgram.y:1954 msg.c:128 msgid "fatal: " msgstr "Fatal: " -#: awkgram.y:2043 +#: awkgram.y:2004 msgid "unexpected newline or end of string" msgstr "Unerwarteter Zeilenumbruch oder Ende der Zeichenkette" -#: awkgram.y:2300 awkgram.y:2358 awkgram.y:2542 +#: awkgram.y:2269 awkgram.y:2327 awkgram.y:2515 #, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "Quelldatei »%s« kann nicht zum Lesen geöffnet werden (%s)" -#: awkgram.y:2301 awkgram.y:2359 builtin.c:122 +#: awkgram.y:2270 awkgram.y:2328 builtin.c:124 msgid "reason unknown" msgstr "Unbekannte Ursache" -#: awkgram.y:2317 +#: awkgram.y:2286 #, c-format msgid "already included source file `%s'" msgstr "Quelldatei »%s« wurde bereits eingebunden" -#: awkgram.y:2343 +#: awkgram.y:2312 msgid "@include is a gawk extension" msgstr "»@include« ist eine gawk-Erweiterung" -#: awkgram.y:2349 +#: awkgram.y:2318 msgid "empty filename after @include" msgstr "leerer Dateiname nach @include" -#: awkgram.y:2494 +#: awkgram.y:2467 msgid "empty program text on command line" msgstr "Kein Programmtext auf der Kommandozeile" -#: awkgram.y:2609 +#: awkgram.y:2582 #, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "Die Quelldatei »%s« kann nicht gelesen werden (%s)" -#: awkgram.y:2620 +#: awkgram.y:2593 #, c-format msgid "source file `%s' is empty" msgstr "Die Quelldatei »%s« ist leer" -#: awkgram.y:2805 +#: awkgram.y:2770 msgid "source file does not end in newline" msgstr "Die Quelldatei hört nicht mit einem Zeilenende auf" -#: awkgram.y:2882 +#: awkgram.y:2874 msgid "unterminated regexp ends with `\\' at end of file" msgstr "" "Nicht beendeter regulärer Ausdruck (hört mit '\\' auf) am Ende der Datei" -#: awkgram.y:2906 +#: awkgram.y:2898 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" "%s: %d: der tawk-Modifizierer für reguläre Ausdrücke »/.../%c« funktioniert " "nicht in gawk" -#: awkgram.y:2910 +#: awkgram.y:2902 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" "Der tawk-Modifizierer für reguläre Ausdrücke »/.../%c« funktioniert nicht in " "gawk" -#: awkgram.y:2917 +#: awkgram.y:2909 msgid "unterminated regexp" msgstr "Nicht beendeter regulärer Ausdruck" -#: awkgram.y:2921 +#: awkgram.y:2913 msgid "unterminated regexp at end of file" msgstr "Nicht beendeter regulärer Ausdruck am Dateiende" -#: awkgram.y:2980 +#: awkgram.y:2972 msgid "use of `\\ #...' line continuation is not portable" msgstr "" "Die Verwendung von »\\#...« zur Fortsetzung von Zeilen ist nicht portabel" -#: awkgram.y:2996 +#: awkgram.y:2988 msgid "backslash not last character on line" msgstr "das letzte Zeichen auf der Zeile ist kein Backslash (»\\«)" -#: awkgram.y:3057 +#: awkgram.y:3049 msgid "POSIX does not allow operator `**='" msgstr "POSIX erlaubt den Operator »**=« nicht" -#: awkgram.y:3059 +#: awkgram.y:3051 msgid "old awk does not support operator `**='" msgstr "Das alte awk unterstützt den Operator »**=« nicht" -#: awkgram.y:3068 +#: awkgram.y:3060 msgid "POSIX does not allow operator `**'" msgstr "POSIX erlaubt den Operator »**« nicht" -#: awkgram.y:3070 +#: awkgram.y:3062 msgid "old awk does not support operator `**'" msgstr "Das alte awk unterstützt den Operator »**« nicht" -#: awkgram.y:3105 +#: awkgram.y:3097 msgid "operator `^=' is not supported in old awk" msgstr "Das alte awk unterstützt den Operator »^=« nicht" -#: awkgram.y:3113 +#: awkgram.y:3105 msgid "operator `^' is not supported in old awk" msgstr "Das alte awk unterstützt den Operator »^« nicht" -#: awkgram.y:3206 awkgram.y:3222 +#: awkgram.y:3198 awkgram.y:3214 msgid "unterminated string" msgstr "Nicht beendete Zeichenkette" -#: awkgram.y:3418 +#: awkgram.y:3410 #, c-format msgid "invalid char '%c' in expression" msgstr "Ungültiges Zeichen »%c« in einem Ausdruck" -#: awkgram.y:3465 +#: awkgram.y:3457 #, c-format msgid "`%s' is a gawk extension" msgstr "»%s« ist eine gawk-Erweiterung" -#: awkgram.y:3470 +#: awkgram.y:3462 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "»%s« ist eine Erweiterung der Bell Labs" -#: awkgram.y:3475 +#: awkgram.y:3467 #, c-format msgid "POSIX does not allow `%s'" msgstr "POSIX erlaubt »%s« nicht" -#: awkgram.y:3483 +#: awkgram.y:3475 #, c-format msgid "`%s' is not supported in old awk" msgstr "»%s« wird im alten awk nicht unterstützt" -#: awkgram.y:3550 +#: awkgram.y:3542 msgid "`goto' considered harmful!\n" msgstr "»goto« gilt als schlechter Stil!\n" -#: awkgram.y:3601 +#: awkgram.y:3576 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "Unzulässige Argumentzahl %d für %s" -#: awkgram.y:3636 +#: awkgram.y:3611 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "%s: Ein String als letztes Argument von substitute hat keinen Effekt" -#: awkgram.y:3641 +#: awkgram.y:3616 #, c-format msgid "%s third parameter is not a changeable object" msgstr "Der dritte Parameter von %s ist ein unveränderliches Objekt" -#: awkgram.y:3714 awkgram.y:3717 +#: awkgram.y:3689 awkgram.y:3692 msgid "match: third argument is a gawk extension" msgstr "match: Das dritte Argument ist eine gawk-Erweiterung" -#: awkgram.y:3771 awkgram.y:3774 +#: awkgram.y:3746 awkgram.y:3749 msgid "close: second argument is a gawk extension" msgstr "close: Das zweite Argument ist eine gawk-Erweiterung" -#: awkgram.y:3786 +#: awkgram.y:3761 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "Fehlerhafte Verwendung von dcgettext(_\"...\"): \n" "Entfernen Sie den führenden Unterstrich" -#: awkgram.y:3801 +#: awkgram.y:3776 msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "Fehlerhafte Verwendung von dcngettext(_\"...\"): \n" "Entfernen Sie den führenden Unterstrich" -#: awkgram.y:3893 -#, c-format -msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" -msgstr "Funktion »%s«: Parameter #%d, »%s« wiederholt Parameter #%d" - -#: awkgram.y:3935 +#: awkgram.y:3842 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "Funktion »%s«: Parameter »%s« verdeckt eine globale Variable" -#: awkgram.y:4093 +#: awkgram.y:3885 #, c-format msgid "could not open `%s' for writing (%s)" msgstr "»%s« kann nicht zum Schreiben geöffne werden(%s)" -#: awkgram.y:4094 +#: awkgram.y:3886 msgid "sending variable list to standard error" msgstr "Die Liste der Variablen wird auf der Standardfehlerausgabe ausgegeben" -#: awkgram.y:4100 +#: awkgram.y:3894 #, c-format msgid "%s: close failed (%s)" msgstr "%s: close ist gescheitert (%s)" -#: awkgram.y:4152 +#: awkgram.y:3919 msgid "shadow_funcs() called twice!" msgstr "shadow_funcs() zweimal aufgerufen!" -#: awkgram.y:4158 +#: awkgram.y:3927 msgid "there were shadowed variables." msgstr "es sind verdeckte Variablen vorhanden" -#: awkgram.y:4188 +#: awkgram.y:3998 +#, c-format +msgid "function name `%s' previously defined" +msgstr "Funktion »%s« wurde bereits definiert" + +#: awkgram.y:4044 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "Funktion »%s«: Funktionsnamen können nicht als Parameternamen benutzen" -#: awkgram.y:4192 +#: awkgram.y:4047 #, c-format msgid "function `%s': can't use special variable `%s' as a function parameter" msgstr "" "Funktion »%s«: die spezielle Variable »%s« kann nicht als Parameter " "verwendet werden" -#: awkgram.y:4208 +#: awkgram.y:4055 #, c-format -msgid "function name `%s' previously defined" -msgstr "Funktion »%s« wurde bereits definiert" +msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" +msgstr "Funktion »%s«: Parameter #%d, »%s« wiederholt Parameter #%d" -#: awkgram.y:4376 awkgram.y:4382 +#: awkgram.y:4134 awkgram.y:4140 #, c-format msgid "function `%s' called but never defined" msgstr "Aufgerufene Funktion »%s« ist nirgends definiert" -#: awkgram.y:4385 +#: awkgram.y:4143 #, c-format msgid "function `%s' defined but never called directly" msgstr "Funktion »%s« wurde definiert aber nirgends aufgerufen" -#: awkgram.y:4417 +#: awkgram.y:4175 #, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "" "Regulärer-Ausdruck-Konstante für Parameter #%d ergibt einen \n" "logischen Wert" -#: awkgram.y:4526 +#: awkgram.y:4221 #, c-format msgid "" "function `%s' called with space between name and `(',\n" @@ -544,233 +501,233 @@ msgstr "" "Funktion »%s« wird mit Leerzeichen zwischen Name und »(« aufgerufen, \n" "oder als Variable oder Feld verwendet" -#: awkgram.y:4773 eval.c:2056 +#: awkgram.y:4429 msgid "division by zero attempted" msgstr "Division durch Null wurde versucht" -#: awkgram.y:4782 eval.c:2072 +#: awkgram.y:4438 #, c-format msgid "division by zero attempted in `%%'" msgstr "Division durch Null versucht in »%%«" -#: builtin.c:120 +#: builtin.c:122 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "%s to \"%s\" fehlgeschlagen (%s)" -#: builtin.c:121 +#: builtin.c:123 msgid "standard output" msgstr "Standardausgabe" -#: builtin.c:135 +#: builtin.c:137 msgid "exp: received non-numeric argument" msgstr "exp: das Argument ist keine Zahl" -#: builtin.c:141 +#: builtin.c:143 #, c-format msgid "exp: argument %g is out of range" msgstr "exp: das Argument %g liegt außerhalb des gültigen Bereichs" -#: builtin.c:200 +#: builtin.c:202 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "" "fflush: Leeren der Puffer nicht möglich, Pipe »%s« ist nur zum Lesen geöffnet" -#: builtin.c:203 +#: builtin.c:205 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "" "fflush: Leeren der Puffer nicht möglich, Datei »%s« ist nur zum Lesen " "geöffnet" -#: builtin.c:215 +#: builtin.c:217 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "fflush: »%s« ist keine geöffnete Datei, Pipe oder Prozess" -#: builtin.c:333 +#: builtin.c:335 msgid "index: received non-string first argument" msgstr "index: Erstes Argument ist kein String" -#: builtin.c:335 +#: builtin.c:337 msgid "index: received non-string second argument" msgstr "index: Zweites Argument ist kein string" -#: builtin.c:457 +#: builtin.c:461 msgid "int: received non-numeric argument" msgstr "Argument ist keine Zahl" -#: builtin.c:493 +#: builtin.c:497 msgid "length: received array argument" msgstr "length: Argument ist ein Feld" -#: builtin.c:496 +#: builtin.c:500 msgid "`length(array)' is a gawk extension" msgstr "»length(array)« ist eine gawk-Erweiterung" -#: builtin.c:504 +#: builtin.c:508 msgid "length: received non-string argument" msgstr "length: Argument ist kein String" -#: builtin.c:535 +#: builtin.c:539 msgid "log: received non-numeric argument" msgstr "log: Argument ist keine Zahl" -#: builtin.c:538 +#: builtin.c:542 #, c-format msgid "log: received negative argument %g" msgstr "log: Negatives Argument %g" -#: builtin.c:694 builtin.c:699 +#: builtin.c:698 builtin.c:703 msgid "fatal: must use `count$' on all formats or none" msgstr "Fatal: »count$« muss auf alle Formate angewandt werden oder auf keines" -#: builtin.c:761 +#: builtin.c:766 #, c-format msgid "field width is ignored for `%%' specifier" msgstr "Feldbreite wird für die »%%«-Angabe ignoriert" -#: builtin.c:763 +#: builtin.c:768 #, c-format msgid "precision is ignored for `%%' specifier" msgstr "Genauigkeit wird für die »%%«-Angabe ignoriert" -#: builtin.c:765 +#: builtin.c:770 #, c-format msgid "field width and precision are ignored for `%%' specifier" msgstr "Feldbreite und Genauigkeit werden für die »%%«-Angabe ignoriert" -#: builtin.c:816 +#: builtin.c:821 msgid "fatal: `$' is not permitted in awk formats" msgstr "Fatal: »$« ist in awk-Formaten nicht zulässig" -#: builtin.c:825 +#: builtin.c:830 msgid "fatal: arg count with `$' must be > 0" msgstr "Fatal: die Anzahl der Argumen bei »$« muss > 0 sein" -#: builtin.c:829 +#: builtin.c:834 #, c-format msgid "fatal: arg count %ld greater than total number of supplied arguments" msgstr "" "Fatal: Argumentenanzahl %ld ist größer als die Gesamtzahl angegebener " "Argumente" -#: builtin.c:833 +#: builtin.c:838 msgid "fatal: `$' not permitted after period in format" msgstr "Fatal: »$« nach Punkt in Formatangabe nicht zulässig" -#: builtin.c:849 +#: builtin.c:854 msgid "fatal: no `$' supplied for positional field width or precision" msgstr "Fatal: »$« fehlt in positionsabhängiger Feldbreite oder Genauigkeit" # -#: builtin.c:920 +#: builtin.c:925 msgid "`l' is meaningless in awk formats; ignored" msgstr "»l« ist in awk-Formaten bedeutungslos, ignoriert" -#: builtin.c:924 +#: builtin.c:929 msgid "fatal: `l' is not permitted in POSIX awk formats" msgstr "Fatal: »l« ist in POSIX-awk-Formaten nicht zulässig" -#: builtin.c:937 +#: builtin.c:942 msgid "`L' is meaningless in awk formats; ignored" msgstr "»L« ist in awk-Formaten bedeutungslos, ignoriert" -#: builtin.c:941 +#: builtin.c:946 msgid "fatal: `L' is not permitted in POSIX awk formats" msgstr "Fatal: »L« ist in POSIX-awk-Formaten nicht zulässig" -#: builtin.c:954 +#: builtin.c:959 msgid "`h' is meaningless in awk formats; ignored" msgstr "»h« ist in awk-Formaten bedeutungslos, ignoriert" -#: builtin.c:958 +#: builtin.c:963 msgid "fatal: `h' is not permitted in POSIX awk formats" msgstr "Fatal: »h« ist in POSIX-awk-Formaten nicht zulässig" -#: builtin.c:1271 +#: builtin.c:1276 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "[s]printf: Wert %g ist außerhalb des Bereichs für Format »%%%c«" -#: builtin.c:1331 +#: builtin.c:1336 #, c-format msgid "ignoring unknown format specifier character `%c': no argument converted" msgstr "" "das unbekannte Zeichen »%c« in der Formatspezifikation wird ignoriert: keine " "Argumente umgewandelt" -#: builtin.c:1336 +#: builtin.c:1341 msgid "fatal: not enough arguments to satisfy format string" msgstr "Fatal: Nicht genügend Argumente für die Formatangabe" -#: builtin.c:1338 +#: builtin.c:1343 msgid "^ ran out for this one" msgstr "^ hierfür fehlte es" -#: builtin.c:1345 +#: builtin.c:1350 msgid "[s]printf: format specifier does not have control letter" msgstr "[s]printf: Format-Spezifikation hat keinen Controlcode" -#: builtin.c:1348 +#: builtin.c:1353 msgid "too many arguments supplied for format string" msgstr "Zu viele Argumente für den Formatstring" -#: builtin.c:1422 builtin.c:1433 +#: builtin.c:1427 builtin.c:1438 msgid "printf: no arguments" msgstr "printf: Keine Argumente" -#: builtin.c:1474 +#: builtin.c:1479 msgid "sqrt: received non-numeric argument" msgstr "sqrt: das Argument ist keine Zahl" -#: builtin.c:1478 +#: builtin.c:1483 #, c-format msgid "sqrt: called with negative argument %g" msgstr "sqrt: das Argument %g ist negativ" -#: builtin.c:1502 +#: builtin.c:1507 #, c-format msgid "substr: length %g is not >= 1" msgstr "substr: Länge %g ist nicht >= 1" -#: builtin.c:1504 +#: builtin.c:1509 #, c-format msgid "substr: length %g is not >= 0" msgstr "substr: Länge %g ist nicht >= 0" -#: builtin.c:1511 +#: builtin.c:1516 #, c-format msgid "substr: non-integer length %g will be truncated" msgstr "substr: Nicht ganzzahlige Länge %g wird abgeschnitten" -#: builtin.c:1516 +#: builtin.c:1521 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "" "substr: Länge %g ist zu groß für Stringindizierung, wird auf %g gekürzt" -#: builtin.c:1528 +#: builtin.c:1533 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "substr: Start-Index %g ist ungültig, 1 wird verwendet" -#: builtin.c:1533 +#: builtin.c:1538 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "substr: Nicht ganzzahliger Start-Wert %g wird abgeschnitten" -#: builtin.c:1558 +#: builtin.c:1563 msgid "substr: source string is zero length" msgstr "substr: Quellstring ist leer" -#: builtin.c:1574 +#: builtin.c:1579 #, c-format msgid "substr: start index %g is past end of string" msgstr "substr: Start-Wert %g liegt hinter dem Ende des Strings" -#: builtin.c:1582 +#: builtin.c:1587 #, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" @@ -778,234 +735,230 @@ msgstr "" "substr: Länge %g am Start-Wert %g überschreitet die Länge des ersten " "Arguments (%lu)" -#: builtin.c:1656 +#: builtin.c:1661 msgid "strftime: format value in PROCINFO[\"strftime\"] has numeric type" msgstr "strftime: Formatwert in PROCINFO[\"strftime\"] ist numerischen Typs" -#: builtin.c:1679 +#: builtin.c:1684 msgid "strftime: received non-numeric second argument" msgstr "strftime: Das zweite Argument ist keine Zahl" -#: builtin.c:1682 +#: builtin.c:1687 msgid "strftime: second argument less than 0 or too big for time_t" msgstr "" +"strftime: das zweite Argument ist kleiner als 0 oder zu groß für time_t" -#: builtin.c:1689 +#: builtin.c:1694 msgid "strftime: received non-string first argument" msgstr "strftime: Das erste Argument ist kein String" -#: builtin.c:1695 +#: builtin.c:1701 msgid "strftime: received empty format string" msgstr "strftime: Der Format-String ist leer" -#: builtin.c:1761 +#: builtin.c:1767 msgid "mktime: received non-string argument" msgstr "mktime: Das Argument ist kein String" -#: builtin.c:1778 +#: builtin.c:1784 msgid "mktime: at least one of the values is out of the default range" msgstr "mktime: mindestens einer der Werte ist außerhalb des normalen Bereichs" -#: builtin.c:1813 +#: builtin.c:1819 msgid "'system' function not allowed in sandbox mode" msgstr "Die Funktion »system« ist im Sandbox-Modus nicht erlaubt" -#: builtin.c:1818 +#: builtin.c:1824 msgid "system: received non-string argument" msgstr "system: Das Argument ist kein String" -#: builtin.c:1873 eval.c:1159 eval.c:1790 eval.c:1803 -#, c-format -msgid "reference to uninitialized variable `%s'" -msgstr "Referenz auf die nicht initialisierte Variable »%s«" - -#: builtin.c:1940 +#: builtin.c:1942 #, c-format msgid "reference to uninitialized field `$%d'" msgstr "Referenz auf das nicht initialisierte Feld »$%d«" -#: builtin.c:2027 +#: builtin.c:2029 msgid "tolower: received non-string argument" msgstr "tolower: das Argument ist kein String" -#: builtin.c:2061 +#: builtin.c:2063 msgid "toupper: received non-string argument" msgstr "toupper: das Argument ist kein String" -#: builtin.c:2097 +#: builtin.c:2099 msgid "atan2: received non-numeric first argument" msgstr "atan2: das erste Argument ist keine Zahl" -#: builtin.c:2099 +#: builtin.c:2101 msgid "atan2: received non-numeric second argument" msgstr "atan2: das zweite Argument ist keine Zahl" -#: builtin.c:2118 +#: builtin.c:2120 msgid "sin: received non-numeric argument" msgstr "sin: das Argument ist keine Zahl" -#: builtin.c:2134 +#: builtin.c:2136 msgid "cos: received non-numeric argument" msgstr "cos: das Argument ist keine Zahl" -#: builtin.c:2187 +#: builtin.c:2189 msgid "srand: received non-numeric argument" msgstr "srand: das Argument ist keine Zahl" -#: builtin.c:2218 +#: builtin.c:2220 msgid "match: third argument is not an array" msgstr "match: das dritte Argument ist kein Array" -#: builtin.c:2482 +#: builtin.c:2484 msgid "gensub: third argument of 0 treated as 1" msgstr "gensub: 0 als drittes Argument wird als 1 interpretiert" -#: builtin.c:2775 +#: builtin.c:2777 msgid "lshift: received non-numeric first argument" msgstr "lshift: das erste Argument ist keine Zahl" -#: builtin.c:2777 +#: builtin.c:2779 msgid "lshift: received non-numeric second argument" msgstr "lshift: das zweite Argument ist keine Zahl" -#: builtin.c:2783 +#: builtin.c:2785 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "" "lshift(%lf, %lf): Negative Werte werden zu merkwürdigen Ergebnissen führen" -#: builtin.c:2785 +#: builtin.c:2787 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "lshift(%lf, %lf): Dezimalteil wird abgeschnitten" -#: builtin.c:2787 +#: builtin.c:2789 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "" "lshift(%lf, %lf): Zu große Shift-Werte werden zu merkwürdigen Ergebnissen " "führen" -#: builtin.c:2812 +#: builtin.c:2814 msgid "rshift: received non-numeric first argument" msgstr "rshift: das erste Argument ist keine Zahl" -#: builtin.c:2814 +#: builtin.c:2816 msgid "rshift: received non-numeric second argument" msgstr "rshift: das zweite Argument ist keine Zahl" -#: builtin.c:2820 +#: builtin.c:2822 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "" "rshift (%lf, %lf): Negative Werte werden zu merkwürdigen Ergebnissen führen" -#: builtin.c:2822 +#: builtin.c:2824 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "rshift(%lf, %lf): Dezimalteil wird abgeschnitten" -#: builtin.c:2824 +#: builtin.c:2826 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "" "rshift(%lf, %lf): Zu große Shift-Werte werden zu merkwürdigen Ergebnissen " "führen" -#: builtin.c:2849 +#: builtin.c:2851 msgid "and: received non-numeric first argument" msgstr "and: das erste Argument ist keine Zahl" -#: builtin.c:2851 +#: builtin.c:2853 msgid "and: received non-numeric second argument" msgstr "and: das zweite Argument ist keine Zahl" -#: builtin.c:2857 +#: builtin.c:2859 #, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "" "and(%lf, %lf): Negative Werte werden zu merkwürdigen Ergebnissen führen" -#: builtin.c:2859 +#: builtin.c:2861 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "and(%lf, %lf): Dezimalteil wird abgeschnitten" -#: builtin.c:2884 +#: builtin.c:2886 msgid "or: received non-numeric first argument" msgstr "or: das erste Argument ist keine Zahl" -#: builtin.c:2886 +#: builtin.c:2888 msgid "or: received non-numeric second argument" msgstr "or: das zweite Argument ist keine Zahl" -#: builtin.c:2892 +#: builtin.c:2894 #, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "or(%lf, %lf): Negative Werte werden zu merkwürdigen Ergebnissen führen" -#: builtin.c:2894 +#: builtin.c:2896 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "or(%lf, %lf): Dezimalteil wird abgeschnitten" -#: builtin.c:2922 +#: builtin.c:2924 msgid "xor: received non-numeric first argument" msgstr "xor: das erste Argument ist keine Zahl" -#: builtin.c:2924 +#: builtin.c:2926 msgid "xor: received non-numeric second argument" msgstr "xor: das zweite Argument ist keine Zahl" -#: builtin.c:2930 +#: builtin.c:2932 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "xor(%lf, %lf: Negative Werte werden zu merkwürdigen Ergebnissen führen" -#: builtin.c:2932 +#: builtin.c:2934 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "xor(%lf, %lf): Dezimalteil wird abgeschnitten" -#: builtin.c:2956 builtin.c:2962 +#: builtin.c:2958 builtin.c:2964 msgid "compl: received non-numeric argument" msgstr "compl: das erste Argument ist keine Zahl" -#: builtin.c:2964 +#: builtin.c:2966 #, c-format msgid "compl(%lf): negative value will give strange results" msgstr "compl(%lf): Negativer Wert wird zu merkwürdigen Ergebnissen führen" -#: builtin.c:2966 +#: builtin.c:2968 #, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "compl(%lf): Dezimalteil wird abgeschnitten" -#: builtin.c:3135 +#: builtin.c:3137 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "dcgettext: »%s« ist keine gültige Locale-Kategorie" -#: eval.c:412 +#: eval.c:393 #, c-format msgid "unknown nodetype %d" msgstr "Unbekannter Knotentyp %d" -#: eval.c:423 eval.c:437 +#: eval.c:404 eval.c:418 #, c-format msgid "unknown opcode %d" msgstr "Unbekannter Opcode %d" -#: eval.c:434 +#: eval.c:415 #, c-format msgid "opcode %s not an operator or keyword" msgstr "Opcode %s ist weder ein Operator noch ein Schlüsselwort" -#: eval.c:488 +#: eval.c:468 msgid "buffer overflow in genflags2str" msgstr "Pufferüberlauf in genflags2str" -#: eval.c:698 +#: eval.c:678 #, c-format msgid "" "\n" @@ -1016,226 +969,173 @@ msgstr "" "\t# Funktions-Aufruf-Stack\n" "\n" -#: eval.c:725 +#: eval.c:706 msgid "`IGNORECASE' is a gawk extension" msgstr "»IGNORECASE« ist eine gawk-Erweiterung" -#: eval.c:754 +#: eval.c:736 msgid "`BINMODE' is a gawk extension" msgstr "»BINMODE« ist eine gawk-Erweiterung" -#: eval.c:812 +#: eval.c:794 #, c-format msgid "BINMODE value `%s' is invalid, treated as 3" msgstr "BINMODE Wert »%s« ist ungültig und wird als 3 behandelt" -#: eval.c:902 +#: eval.c:887 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "Falsche »%sFMT«-Angabe »%s«" -#: eval.c:980 +#: eval.c:969 msgid "turning off `--lint' due to assignment to `LINT'" msgstr "»--lint« wird abgeschaltet, da an »LINT« zugewiesen wird" -#: eval.c:1127 eval.c:1777 -#, c-format -msgid "can't use function name `%s' as variable or array" -msgstr "Funktion »%s« kann nicht als Variable oder Feld verwendet werden" - -#: eval.c:1158 eval.c:1789 eval.c:1802 +#: eval.c:1119 #, c-format msgid "reference to uninitialized argument `%s'" msgstr "Referenz auf nicht initialisiertes Argument »%s«" -#: eval.c:1177 +#: eval.c:1120 +#, c-format +msgid "reference to uninitialized variable `%s'" +msgstr "Referenz auf die nicht initialisierte Variable »%s«" + +#: eval.c:1138 msgid "attempt to field reference from non-numeric value" msgstr "Nicht numerischer Wert für Feldreferenz verwendet" -#: eval.c:1179 +#: eval.c:1140 msgid "attempt to field reference from null string" msgstr "Referenz auf ein Feld von einem Null-String" -#: eval.c:1185 +#: eval.c:1146 #, c-format msgid "attempt to access field %ld" msgstr "Versuch des Zugriffs auf Feld %ld" -#: eval.c:1194 +#: eval.c:1155 #, c-format msgid "reference to uninitialized field `$%ld'" msgstr "Referenz auf das nicht initialisierte Feld »$%ld«" -#: eval.c:1256 +#: eval.c:1242 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "Funktion »%s« mit zu vielen Argumenten aufgerufen" -#: eval.c:1437 +#: eval.c:1436 #, c-format msgid "unwind_stack: unexpected type `%s'" msgstr "unwind_stack: unerwarteter Typ »%s«" -#: eval.c:1532 +#: eval.c:1536 msgid "division by zero attempted in `/='" msgstr "Division durch Null versucht in »/=«" -#: eval.c:1539 +#: eval.c:1543 #, c-format msgid "division by zero attempted in `%%='" msgstr "Division durch Null versucht in »%%=«" -#: eval.c:1876 eval.c:2122 -#, c-format -msgid "attempt to use array `%s[\"%.*s\"]' in a scalar context" -msgstr "" -"Es wird versucht, das Feld »%s[\"%.*s\"]« in einem Skalarkontext zu verwenden" - -#: eval.c:1907 -msgid "assignment used in conditional context" -msgstr "Zuweisung in einer Bedingung" - -#: eval.c:1911 -msgid "statement has no effect" -msgstr "Anweisung hat keinen Effekt" - -#: eval.c:2343 -#, c-format -msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" -msgstr "" -"for-Schleife: Feld »%s« ändert seine Größe von %ld innerhalb der Schleife zu " -"%ld" - -#: eval.c:2458 -#, c-format -msgid "function called indirectly through `%s' does not exist" -msgstr "die durch »%s« indirekt aufgerufene Funktion existiert nicht" - -#: eval.c:2470 -#, c-format -msgid "function `%s' not defined" -msgstr "Funktion »%s« ist nicht definiert" - -#: eval.c:2511 -#, c-format -msgid "non-redirected `getline' invalid inside `%s' rule" -msgstr "Nicht umgelenktes »getline« ist innerhalb der »%s«-Aktion unzuässig" - -#: eval.c:2600 -#, c-format -msgid "error reading input file `%s': %s" -msgstr "Fehler beim Lesen der Eingabedatei »%s«: %s" - -#: eval.c:2614 -#, c-format -msgid "`nextfile' cannot be called from a `%s' rule" -msgstr "»nextfile« kann nicht aus einer »«%s-Regel aufgerufen werden" - -#: eval.c:2694 -#, c-format -msgid "`next' cannot be called from a `%s' rule" -msgstr "»next« kann nicht in einer »%s«-Regel verwendet werden" - -#: eval.c:2760 -#, c-format -msgid "Sorry, don't know how to interpret `%s'" -msgstr "Entschuldigung, aber es ist unbekannt, wie »%s« zu interpretieren ist" - -#: ext.c:64 +#: ext.c:70 msgid "extensions are not allowed in sandbox mode" msgstr "Erweiterungen sind im Sandbox-Modus nicht erlaubt" -#: ext.c:70 ext.c:75 +#: ext.c:73 msgid "`extension' is a gawk extension" msgstr "»extension« ist eine gawk-Erweiterung" -#: ext.c:85 -#, c-format -msgid "fatal: extension: cannot open `%s' (%s)\n" +#: ext.c:80 +#, fuzzy, c-format +msgid "extension: cannot open library `%s' (%s)\n" msgstr "Fatal: extension: »%s« kann nicht geöffnet werden (%s)\n" -#: ext.c:94 -#, c-format +#: ext.c:86 +#, fuzzy, c-format msgid "" -"fatal: extension: library `%s': does not define " -"`plugin_is_GPL_compatible' (%s)\n" +"extension: library `%s': does not define `plugin_is_GPL_compatible' (%s)\n" msgstr "" "Fatal: Erweiterung: Bibliothek »%s«: definiert »plugin_is_GPL_compatible« " "nicht (%s)\n" -#: ext.c:103 -#, c-format -msgid "fatal: extension: library `%s': cannot call function `%s' (%s)\n" +#: ext.c:91 +#, fuzzy, c-format +msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "" "Fatal: Erweiterung: Bibliothek »%s«: Funktion »%s« kann nicht aufgerufen " "werden (%s)\n" -#: ext.c:137 +#: ext.c:119 msgid "extension: missing function name" msgstr "Erweiterung: Funktionsname fehlt" -#: ext.c:142 +#: ext.c:124 #, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "Erweiterung: unzulässiges Zeichen »%c« in Funktionsname »%s«" -#: ext.c:151 +#: ext.c:132 #, c-format msgid "extension: can't redefine function `%s'" msgstr "Erweiterung: Funktion »%s« kann nicht neu definiert werden" -#: ext.c:155 +#: ext.c:136 #, c-format msgid "extension: function `%s' already defined" msgstr "Erweiterung: Funktion »%s« wurde bereits definiert" -#: ext.c:160 +#: ext.c:140 #, c-format msgid "extension: function name `%s' previously defined" msgstr "Erweiterung: Funktion »%s« wurde bereits vorher definiert" -#: ext.c:162 +#: ext.c:142 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "" "Erweiterung: die eingebaute Funktion »%s« kann nicht als Funktionsname " "verwendet werden" -#: ext.c:166 +#: ext.c:145 #, c-format msgid "make_builtin: negative argument count for function `%s'" msgstr "make_builtin: negative Anzahl von Argumenten für Funktion »%s«" -#: ext.c:269 +#: ext.c:207 #, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "" "Funktion »%s« wird als Funktion definiert, die nie mehr als %d Argument(e) " "akzeptiert" -#: ext.c:272 +#: ext.c:210 #, c-format msgid "function `%s': missing argument #%d" msgstr "Funktion »%s«: fehlendes Argument #%d" -#: ext.c:289 +#: ext.c:227 #, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "" "Funktion »%s«: Argument #%d: Es wird versucht, einen Skalar als Feld zu " "verwenden" -#: ext.c:293 +#: ext.c:231 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "" "Funktion »%s«: Argument #%d: Es wird versucht, ein Feld als Skalar zu " "verwenden" -#: ext.c:306 +#: ext.c:245 msgid "Operation Not Supported" msgstr "Die Operation wird nicht unterstützt" +#: ext.c:257 +msgid "dynamic loading of library not supported" +msgstr "" + #: field.c:328 msgid "NF set to negative value" msgstr "NF wird ein negativer Wert zugewiesen" @@ -1304,555 +1204,565 @@ msgstr "" "patsplit: Ein untergeordnetes Feld des vierten Arguments kann nicht als " "zweites Argument verwendet werden" -#: field.c:1110 +#: field.c:1111 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "»FIELDWIDTHS« ist eine gawk-Erweiterung" -#: field.c:1173 +#: field.c:1175 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "ungültiger FIELDWIDTHS-Wert nah bei »%s«" -#: field.c:1246 +#: field.c:1248 msgid "null string for `FS' is a gawk extension" msgstr "Null-String für »FS« ist eine gawk-Erweiterung" -#: field.c:1250 +#: field.c:1252 msgid "old awk does not support regexps as value of `FS'" msgstr "Das alte awk unterstützt keine regulären Ausdrücke als Wert von »FS«" -#: field.c:1369 +#: field.c:1371 msgid "`FPAT' is a gawk extension" msgstr "»FPAT« ist eine gawk-Erweiterung" -#: getopt.c:574 getopt.c:590 -#, c-format -msgid "%s: option '%s' is ambiguous\n" +#: getopt.c:604 getopt.c:633 +#, fuzzy, c-format +msgid "%s: option '%s' is ambiguous; possibilities:" msgstr "%s: Option »%s« ist mehrdeutig\n" -#: getopt.c:623 getopt.c:627 +#: getopt.c:679 getopt.c:683 #, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: Die Option »--%s« hat keine Argumente\n" -#: getopt.c:636 getopt.c:641 +#: getopt.c:692 getopt.c:697 #, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: Die Option »%c%s« hat keine Argument\n" -#: getopt.c:684 getopt.c:703 +#: getopt.c:740 getopt.c:759 #, c-format msgid "%s: option '--%s' requires an argument\n" msgstr "%s: Die Option »%s« erfordert ein Argument\n" -#: getopt.c:741 getopt.c:744 +#: getopt.c:797 getopt.c:800 #, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: Die Option »--%s« ist unbekannt\n" -#: getopt.c:752 getopt.c:755 +#: getopt.c:808 getopt.c:811 #, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: Die Option »%c%s« ist unbekannt\n" -#: getopt.c:804 getopt.c:807 +#: getopt.c:860 getopt.c:863 #, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: Ungültige Option -- »%c«\n" -#: getopt.c:857 getopt.c:874 getopt.c:1082 getopt.c:1100 +#: getopt.c:916 getopt.c:933 getopt.c:1143 getopt.c:1161 #, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s Die Option »%c« erfordert ein Argument\n" -#: getopt.c:930 getopt.c:946 +#: getopt.c:989 getopt.c:1005 #, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: Die Option »-W %s« ist mehrdeutig\n" -#: getopt.c:970 getopt.c:988 +#: getopt.c:1029 getopt.c:1047 #, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: Die Option »-W %s« hat keine Argumente\n" -#: getopt.c:1009 getopt.c:1027 +#: getopt.c:1068 getopt.c:1086 #, c-format msgid "%s: option '-W %s' requires an argument\n" msgstr "%s: Die Option »-W %s« erfordert ein Argument\n" -#: io.c:280 +#: io.c:315 #, c-format msgid "command line argument `%s' is a directory: skipped" msgstr "" "das Kommandozeilen-Argument »%s« ist ein Verzeichnis: wird übersprungen" -#: io.c:283 io.c:385 +#: io.c:318 io.c:421 #, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "Die Datei »%s« kann nicht zum Lesen geöffnet werden (%s)" -#: io.c:501 +#: io.c:537 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "Das Schließen des Dateideskriptors %d (»%s«) ist gescheitert (%s)" -#: io.c:578 +#: io.c:614 msgid "redirection not allowed in sandbox mode" msgstr "Umlenkungen sind im Sandbox-Modus nicht erlaubt" -#: io.c:612 +#: io.c:648 #, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "" "Der Ausdruck in einer Umlenkung mittels »%s« hat nur einen numerischen Wert" -#: io.c:618 +#: io.c:654 #, c-format msgid "expression for `%s' redirection has null string value" msgstr "Der Ausdruck für eine Umlenkung mittels »%s« ist ein leerer String" -#: io.c:624 +#: io.c:659 #, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "" "Der Dateiname »%s« für eine Umlenkung mittels »%s« kann das Ergebnis eines " "logischen Ausdrucks sein" -#: io.c:667 +#: io.c:702 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "Unnötige Kombination von »>« und »>>« für Datei »%.*s«" -#: io.c:720 +#: io.c:755 #, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "Die Pipe »%s« kann nicht für die Ausgabe geöffnet werden (%s)" -#: io.c:730 +#: io.c:765 #, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "Die Pipe »%s« kann nicht für die Eingabe geöffnet werden (%s)" -#: io.c:753 +#: io.c:788 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "" "Die bidirektionale Pipe »%s« kann nicht für die Ein-/Ausgabe geöffnet werden " "(%s)" -#: io.c:835 +#: io.c:870 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "Von »%s« kann nicht umgelenkt werden (%s)" -#: io.c:838 +#: io.c:873 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "Zu »%s« kann nicht umgelenkt werden (%s)" -#: io.c:889 +#: io.c:924 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "" "Die Systemgrenze offener Dateien ist erreicht, daher werden nun " "Dateideskriptoren mehrfach verwendet" -#: io.c:905 +#: io.c:940 #, c-format msgid "close of `%s' failed (%s)." msgstr "Das Schließen von »%s« ist gescheitert (%s)." -#: io.c:913 +#: io.c:948 msgid "too many pipes or input files open" msgstr "Zu viele Pipes oder Eingabedateien offen" -#: io.c:935 +#: io.c:970 msgid "close: second argument must be `to' or `from'" msgstr "close: Das zweite Argument muss »to« oder »from« sein" -#: io.c:952 +#: io.c:987 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "close: »%.*s« ist weder offene Datei, noch Pipe oder Ko-Prozess" -#: io.c:957 +#: io.c:992 msgid "close of redirection that was never opened" msgstr "»close« für eine Umlenkung, die nie geöffnet wurde" -#: io.c:1054 +#: io.c:1089 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "" "close: Umlenkung »%s« wurde nicht mit »[&« geöffnet, das zweite Argument " "wird ignoriert" -#: io.c:1070 +#: io.c:1105 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "Fehlerstatus (%d) beim Schließen der Pipe »%s« (%s)" -#: io.c:1073 +#: io.c:1108 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "Fehlerstatus (%d) beim Schließen der Datei »%s« (%s)" -#: io.c:1093 +#: io.c:1128 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "Das explizite Schließen des Sockets »%s« fehlt" -#: io.c:1096 +#: io.c:1131 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "Das explizite Schließen des Ko-Prozesses »%s« fehlt" -#: io.c:1099 +#: io.c:1134 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "Das explizite Schließen der Pipe »%s« fehlt" -#: io.c:1102 +#: io.c:1137 #, c-format msgid "no explicit close of file `%s' provided" msgstr "Das explizite Schließen der Datei »%s« fehlt" -#: io.c:1130 io.c:1185 main.c:793 main.c:830 +#: io.c:1165 io.c:1220 main.c:798 main.c:835 #, c-format msgid "error writing standard output (%s)" msgstr "Fehler beim Schreiben auf die Standardausgabe (%s)" -#: io.c:1134 io.c:1190 +#: io.c:1169 io.c:1225 #, c-format msgid "error writing standard error (%s)" msgstr "Fehler beim Schreiben auf die Standardfehlerausgabe (%s)" -#: io.c:1142 +#: io.c:1177 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "Das Leeren der Pipe »%s« ist gescheitert (%s)" -#: io.c:1145 +#: io.c:1180 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "Ko-Prozess: Das Leeren der Pipe zu »%s« ist gescheitert (%s)" -#: io.c:1148 +#: io.c:1183 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "Das Leeren der Datei »%s« ist gescheitert (%s)" -#: io.c:1263 +#: io.c:1298 #, c-format msgid "local port %s invalid in `/inet'" msgstr "Der lokale Port »%s« ist ungültig in »/inet«" -#: io.c:1280 +#: io.c:1315 #, c-format msgid "remote host and port information (%s, %s) invalid" msgstr "Die Angaben zu entferntem Host und Port (%s, %s) sind ungültig" -#: io.c:1432 +#: io.c:1467 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "Es wurde kein (bekanntes) Protokoll im Dateinamen »%s« angegeben" -#: io.c:1446 +#: io.c:1481 #, c-format msgid "special file name `%s' is incomplete" msgstr "Der Dateiname »%s« ist unvollständig" -#: io.c:1463 +#: io.c:1498 msgid "must supply a remote hostname to `/inet'" msgstr "Sie müssen in /inet einen Rechnernamen angeben" -#: io.c:1481 +#: io.c:1516 msgid "must supply a remote port to `/inet'" msgstr "Sie müssen in »/inet« einen Port angeben" -#: io.c:1527 +#: io.c:1562 msgid "TCP/IP communications are not supported" msgstr "TCP/IP-Verbindungen werden nicht unterstützt" -#: io.c:1694 +#: io.c:1729 #, c-format msgid "could not open `%s', mode `%s'" msgstr "»%s« konnte nicht geöffnet werden, Modus »%s«" -#: io.c:1748 +#: io.c:1783 #, c-format msgid "close of master pty failed (%s)" msgstr "" "Das Schließen der übergeordneten Terminal-Gerätedatei ist gescheitert (%s)" -#: io.c:1750 io.c:1918 io.c:2075 +#: io.c:1785 io.c:1953 io.c:2110 #, c-format msgid "close of stdout in child failed (%s)" msgstr "Das Schließen der Standardausgabe im Kindprozess ist gescheitert (%s)" -#: io.c:1753 +#: io.c:1788 #, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "" "Das Verschieben der untergeordneten Terminal-Gerätedatei zur Standardausgabe " "im Kindprozess ist gescheitert (dup: %s)" -#: io.c:1755 io.c:1923 +#: io.c:1790 io.c:1958 #, c-format msgid "close of stdin in child failed (%s)" msgstr "Schließen von stdin im Kindprozess gescheitert (%s)" -#: io.c:1758 +#: io.c:1793 #, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "" "Das Verschieben der untergeordneten Terminal-Gerätedatei zur Standardeingabe " "im Kindprozess ist gescheitert (dup: %s)" -#: io.c:1760 io.c:1781 +#: io.c:1795 io.c:1816 #, c-format msgid "close of slave pty failed (%s)" msgstr "" "Das Schließen der untergeordneten Terminal-Gerätedatei ist gescheitert (%s)" -#: io.c:1859 io.c:1921 io.c:2053 io.c:2078 +#: io.c:1894 io.c:1956 io.c:2088 io.c:2113 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "" "Das Verschieben der Pipe zur Standardausgabe im Kindprozess ist gescheitert " "(dup: %s)" -#: io.c:1866 io.c:1926 +#: io.c:1901 io.c:1961 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "" "Das Verschieben der Pipe zur Standardeingabe im Kindprozess ist gescheitert " "(dup: %s)" -#: io.c:1886 io.c:2068 +#: io.c:1921 io.c:2103 msgid "restoring stdout in parent process failed\n" msgstr "" "Das Wiederherstellen der Standardausgabe im Elternprozess ist gescheitert\n" -#: io.c:1894 +#: io.c:1929 msgid "restoring stdin in parent process failed\n" msgstr "" "Das Wiederherstellen der Standardeingabe im Elternprozess ist gescheitert\n" -#: io.c:1929 io.c:2080 io.c:2094 +#: io.c:1964 io.c:2115 io.c:2129 #, c-format msgid "close of pipe failed (%s)" msgstr "Das Schließen der Pipe ist gescheitert (%s)" -#: io.c:1974 +#: io.c:2009 msgid "`|&' not supported" msgstr "»|&« wird nicht unterstützt" -#: io.c:2040 +#: io.c:2075 #, c-format msgid "cannot open pipe `%s' (%s)" msgstr "Pipe »%s« kann nicht geöffnet werden (%s)" -#: io.c:2088 +#: io.c:2123 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "Kindprozess für »%s« kann nicht erzeugt werden (fork: %s)" -#: io.c:2521 +#: io.c:2613 #, c-format msgid "data file `%s' is empty" msgstr "Die Datei »%s« ist leer" -#: io.c:2562 io.c:2570 +#: io.c:2654 io.c:2662 msgid "could not allocate more input memory" msgstr "Es konnte kein weiterer Speicher für die Eingabe beschafft werden" -#: io.c:3128 +#: io.c:3223 msgid "multicharacter value of `RS' is a gawk extension" msgstr "Multicharacter-Wert von »RS« ist eine gawk-Erweiterung" -#: io.c:3233 +#: io.c:3313 msgid "IPv6 communication is not supported" msgstr "IPv6-Verbindungen werden nicht unterstützt" -#: main.c:364 +#: main.c:353 msgid "`-m[fr]' option irrelevant in gawk" msgstr "Die Option »-m[fr]« ist in gawk bedeutungslos" -#: main.c:366 +#: main.c:355 msgid "-m option usage: `-m[fr] nnn'" msgstr "Anwendung der Option -m: »-m[fr] nnn«" -#: main.c:389 +#: main.c:384 msgid "empty argument to `-e/--source' ignored" msgstr "Das leere Argument für »--source« wird ignoriert" -#: main.c:460 +#: main.c:464 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "%s: Die Option »-W %s« ist unbekannt und wird ignoriert\n" -#: main.c:513 +#: main.c:510 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: Die Option %c erfordert ein Argument\n" -#: main.c:534 +#: main.c:531 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "" "Die Umgebungsvariable »POSIXLY_CORRECT« ist gesetzt: »--posix« wird " "eingeschaltet" -#: main.c:540 +#: main.c:537 msgid "`--posix' overrides `--traditional'" msgstr "»--posix« hat Vorrang vor »--traditional«" -#: main.c:551 +#: main.c:548 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "»--posix« /»--traditional« hat Vorrang vor »--non-decimal-data«" -#: main.c:555 +#: main.c:552 #, c-format msgid "running %s setuid root may be a security problem" msgstr "%s als setuid root auszuführen kann zu Sicherheitsproblemen führen" -#: main.c:560 +#: main.c:557 msgid "`--posix' overrides `--binary'" msgstr "»--posix« hat Vorrang vor »--binary«" -#: main.c:611 +#: main.c:600 #, c-format msgid "can't set binary mode on stdin (%s)" msgstr "" "Das Setzen des Binärermodus für die Standardeingabe ist nicht möglich (%s)" -#: main.c:614 +#: main.c:603 #, c-format msgid "can't set binary mode on stdout (%s)" msgstr "" "Das Setzen des Binärermodus für die Standardausgabe ist nicht möglich (%s)" -#: main.c:616 +#: main.c:605 #, c-format msgid "can't set binary mode on stderr (%s)" msgstr "" "Das Setzen des Binärermodus für die Standardfehlerausgabe ist nicht möglich " "(%s)" -#: main.c:655 +#: main.c:653 msgid "no program text at all!" msgstr "Es wurde überhaupt kein Programmtext angegeben!" -#: main.c:733 +#: main.c:737 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "Aufruf: %s [POSIX- oder GNU-Optionen] -f PROGRAMM [--] Datei ...\n" -#: main.c:735 +#: main.c:739 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "Aufruf: %s [POSIX- oder GNU-Optionen] -- %cPROGRAMM%c Datei ...\n" -#: main.c:740 +#: main.c:744 msgid "POSIX options:\t\tGNU long options: (standard)\n" msgstr "POSIX-Optionen\t\tlange GNU-Optionen: (standard)\n" -#: main.c:741 +#: main.c:745 msgid "\t-f progfile\t\t--file=progfile\n" msgstr "\t-f PROGRAMM\t\t--file=PROGRAMM\n" -#: main.c:742 +#: main.c:746 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "\t-F Feldtrenner\t\t\t--field-separator=Feldtrenner\n" -#: main.c:743 +#: main.c:747 msgid "\t-v var=val\t\t--assign=var=val\n" msgstr "\t-v var=Wert\t\t--assign=var=Wert\n" -#: main.c:744 +#: main.c:748 msgid "Short options:\t\tGNU long options: (extensions)\n" msgstr "POSIX-Optionen\t\tGNU-Optionen (lang): (Erweiterungen)\n" -#: main.c:745 +#: main.c:749 msgid "\t-b\t\t\t--characters-as-bytes\n" msgstr "\t-b\t\t\t--characters-as-bytes\n" -#: main.c:746 +#: main.c:750 msgid "\t-c\t\t\t--traditional\n" msgstr "\t-c\t\t\t--traditional\n" -#: main.c:747 +#: main.c:751 msgid "\t-C\t\t\t--copyright\n" msgstr "\t-C\t\t\t--copyright\n" -#: main.c:748 +#: main.c:752 msgid "\t-d[file]\t\t--dump-variables[=file]\n" msgstr "\t-d [Datei]\t\t--dump-variables[=Datei]\n" -#: main.c:749 +#: main.c:753 +#, fuzzy +msgid "\t-D[file]\t\t--debug[=file]\n" +msgstr "\t-p [Datei]\t\t--profile[=Datei]\n" + +#: main.c:754 msgid "\t-e 'program-text'\t--source='program-text'\n" msgstr "\t-e 'Programmtext'\t--source=Programmtext\n" -#: main.c:750 +#: main.c:755 msgid "\t-E file\t\t\t--exec=file\n" msgstr "\t-E Datei\t\t\t--exec=Datei\n" -#: main.c:751 +#: main.c:756 msgid "\t-g\t\t\t--gen-pot\n" msgstr "\t-g\t\t\t--gen-pot\n" -#: main.c:752 +#: main.c:757 msgid "\t-h\t\t\t--help\n" msgstr "\t-h\t\t\t--help\n" -#: main.c:753 +#: main.c:758 +msgid "\t-l library\t\t--load=library\n" +msgstr "" + +#: main.c:759 msgid "\t-L [fatal]\t\t--lint[=fatal]\n" msgstr "\t-L [fatal]\t\t--lint[=fatal]\n" -#: main.c:754 +#: main.c:760 msgid "\t-n\t\t\t--non-decimal-data\n" msgstr "\t-n\t\t\t--non-decimal-data\n" -#: main.c:755 +#: main.c:761 msgid "\t-N\t\t\t--use-lc-numeric\n" msgstr "\t-N\t\t\t--use-lc-numeric\n" -#: main.c:756 +#: main.c:762 +#, fuzzy +msgid "\t-o[file]\t\t--pretty-print[=file]\n" +msgstr "\t-p [Datei]\t\t--profile[=Datei]\n" + +#: main.c:763 msgid "\t-O\t\t\t--optimize\n" msgstr "\t-O\t\t\t--optimize\n" -#: main.c:757 +#: main.c:764 msgid "\t-p[file]\t\t--profile[=file]\n" msgstr "\t-p [Datei]\t\t--profile[=Datei]\n" -#: main.c:758 +#: main.c:765 msgid "\t-P\t\t\t--posix\n" msgstr "\t-P\t\t\t--posix\n" -#: main.c:759 +#: main.c:766 msgid "\t-r\t\t\t--re-interval\n" msgstr "\t-r\t\t\t--re-interval\n" -#: main.c:761 -msgid "\t-R file\t\t\t--command=file\n" -msgstr "\t-R Datei\t\t\t--command=Datei\n" - -#: main.c:762 +#: main.c:767 msgid "\t-S\t\t\t--sandbox\n" msgstr "\t-S\t\t\t--sandbox\n" -#: main.c:763 +#: main.c:768 msgid "\t-t\t\t\t--lint-old\n" msgstr "\t-t\t\t\t--lint-old\n" -#: main.c:764 +#: main.c:769 msgid "\t-V\t\t\t--version\n" msgstr "\t-V\t\t\t--version\n" -#: main.c:766 +#: main.c:771 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "\t-W nostalgia\t\t--nostalgia\n" -#: main.c:769 +#: main.c:774 msgid "\t-Y\t\t--parsedebug\n" msgstr "\t-Y\t\t--parsedebug\n" @@ -1861,7 +1771,7 @@ msgstr "\t-Y\t\t--parsedebug\n" #. for this application. Please add _another line_ with the #. address for translation bugs. #. no-wrap -#: main.c:778 +#: main.c:783 msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" @@ -1877,7 +1787,7 @@ msgstr "" "an translation-team-de@lists.sourceforge.net\n" "\n" -#: main.c:782 +#: main.c:787 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" @@ -1888,7 +1798,7 @@ msgstr "" "auf der Standardausgabe aus.\n" "\n" -#: main.c:786 +#: main.c:791 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" @@ -1898,7 +1808,7 @@ msgstr "" "\tgawk '{ sum += $1 }; END { print sum }' file\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" -#: main.c:806 +#: main.c:811 #, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" @@ -1918,7 +1828,7 @@ msgstr "" "spätere Version.\n" "\n" -#: main.c:814 +#: main.c:819 msgid "" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" @@ -1931,7 +1841,7 @@ msgstr "" "leistung einer HANDELBARKEIT oder der EIGNUNG FÜR EINEN BESTIMMTEN ZWECK.\n" "Sehen Sie bitte die GNU General Public License für weitere Details.\n" -#: main.c:820 +#: main.c:825 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program. If not, see http://www.gnu.org/licenses/.\n" @@ -1940,16 +1850,16 @@ msgstr "" "diesem Programm erhalten haben. Wenn nicht, lesen Sie bitte\n" "http://www.gnu.org/licenses/.\n" -#: main.c:855 +#: main.c:860 msgid "-Ft does not set FS to tab in POSIX awk" msgstr "-Ft setzt FS im POSIX-awk nicht auf Tab" -#: main.c:1089 +#: main.c:1091 #, c-format msgid "unknown value for field spec: %d\n" msgstr "unbekannter Wert für eine Feldangabe: %d\n" -#: main.c:1170 +#: main.c:1172 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" @@ -1958,86 +1868,81 @@ msgstr "" "%s: Argument »%s« von »-v« ist nicht in der Form »Variable=Wert«\n" "\n" -#: main.c:1196 +#: main.c:1198 #, c-format msgid "`%s' is not a legal variable name" msgstr "»%s« ist kein gültiger Variablenname" -#: main.c:1199 +#: main.c:1201 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "»%s« ist kein Variablenname, es wird nach der Datei »%s=%s« gesucht" -#: main.c:1203 +#: main.c:1205 #, c-format msgid "cannot use gawk builtin `%s' as variable name" msgstr "" "die eingebaute Funktion »%s« kann nicht als Variablenname verwendet werden" # c-format -#: main.c:1208 +#: main.c:1210 #, c-format msgid "cannot use function `%s' as variable name" msgstr "Funktion »%s« kann nicht als Name einer Variablen verwendet werden" -#: main.c:1261 +#: main.c:1263 msgid "floating point exception" msgstr "Fließkomma-Ausnahme" -#: main.c:1268 +#: main.c:1270 msgid "fatal error: internal error" msgstr "Fataler Fehler: interner Fehler" -#: main.c:1283 +#: main.c:1285 msgid "fatal error: internal error: segfault" msgstr "Fataler Fehler: interner Fehler: Speicherbegrenzungsfehler" -#: main.c:1295 +#: main.c:1297 msgid "fatal error: internal error: stack overflow" msgstr "Fataler Fehler: interner Fehler: Stapelüberlauf" -#: main.c:1345 +#: main.c:1347 #, c-format msgid "no pre-opened fd %d" msgstr "Kein bereits geöffneter Dateideskriptor %d" -#: main.c:1352 +#: main.c:1354 #, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "/dev/null konnte nicht für Dateideskriptor %d geöffnet werden" -#: main.c:1375 main.c:1384 -#, c-format -msgid "could not find groups: %s" -msgstr "Die Gruppen konnten nicht gefunden werden: %s" - -#: msg.c:63 +#: msg.c:61 #, c-format msgid "cmd. line:" msgstr "Kommandozeile:" -#: msg.c:107 +#: msg.c:105 msgid "error: " msgstr "Fehler: " -#: node.c:406 +#: node.c:402 msgid "backslash at end of string" msgstr "Backslash am Ende der Zeichenkette" -#: node.c:517 +#: node.c:479 #, c-format msgid "old awk does not support the `\\%c' escape sequence" msgstr "Das alte awk unterstützt die Fluchsequenz »\\%c« nicht" -#: node.c:568 +#: node.c:530 msgid "POSIX does not allow `\\x' escapes" msgstr "POSIX erlaubt keine »\\x«-Escapes" -#: node.c:574 +#: node.c:536 msgid "no hex digits in `\\x' escape sequence" msgstr "In der »\\x«-Fluchtsequenz sind keine hexadezimalen Zahlen" -#: node.c:596 +#: node.c:558 #, c-format msgid "" "hex escape \\x%.*s of %d characters probably not interpreted the way you " @@ -2046,12 +1951,12 @@ msgstr "" "Die Hex-Sequenz \\x%.*s aus %d Zeichen wird wahrscheinlich nicht wie " "gewünscht interpretiert" -#: node.c:611 +#: node.c:573 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "Fluchtsequenz »\\%c« wird wie ein normales »%c« behandelt" -#: node.c:750 +#: node.c:712 msgid "" "Invalid multibyte data detected. There may be a mismatch between your data " "and your locale." @@ -2072,16 +1977,16 @@ msgid "%s %s `%s': could not set close-on-exec: (fcntl F_SETFD: %s)" msgstr "" "%s %s »%s«: close-on-exec konnte nicht gesetzt werden: (fcntl F_SETFD: %s)" -#: profile.c:83 +#: profile.c:69 #, c-format msgid "could not open `%s' for writing: %s" msgstr "»%s« konnte nicht zum Schreiben geöffnet werden: %s" -#: profile.c:85 +#: profile.c:71 msgid "sending profile to standard error" msgstr "Das Profil wird auf der Standardfehlerausgabe ausgegeben" -#: profile.c:203 +#: profile.c:187 #, c-format msgid "" "\t# %s block(s)\n" @@ -2090,7 +1995,7 @@ msgstr "" "\t# %s Blöcke\n" "\n" -#: profile.c:208 +#: profile.c:192 #, c-format msgid "" "\t# Rule(s)\n" @@ -2099,17 +2004,22 @@ msgstr "" "\t# Regeln(s)\n" "\n" -#: profile.c:279 +#: profile.c:266 #, c-format msgid "internal error: %s with null vname" msgstr "Interner Fehler: %s mit null vname" -#: profile.c:952 +#: profile.c:528 +#, fuzzy +msgid "internal error: builtin with null fname" +msgstr "Interner Fehler: %s mit null vname" + +#: profile.c:943 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "\t# gawk-Profil, erzeugt %s\n" -#: profile.c:1331 +#: profile.c:1321 #, c-format msgid "" "\n" @@ -2118,95 +2028,173 @@ msgstr "" "\n" "\t# Funktionen in alphabetischer Reihenfolge\n" -#: profile.c:1370 +#: profile.c:1359 #, c-format msgid "redir2str: unknown redirection type %d" msgstr "redir2str: unbekannter Umlenkungstyp %d" -#: re.c:572 -#, fuzzy, c-format +#: re.c:573 +#, c-format msgid "range of the form `[%c-%c]' is locale dependent" msgstr "" "Ein Bereich in der Form »[%c-%c]« ist abhängig von der gesetzten Locale" -#: re.c:599 +#: re.c:600 #, c-format msgid "regexp component `%.*s' should probably be `[%.*s]'" msgstr "" "Regulärer-Ausdruck-Komponente »%.*s« sollte wahrscheinlich »[%.*s]« sein" -#: regcomp.c:132 +#: regcomp.c:131 msgid "Success" msgstr "Erfolg" -#: regcomp.c:135 +#: regcomp.c:134 msgid "No match" msgstr "Kein Treffer" -#: regcomp.c:138 +#: regcomp.c:137 msgid "Invalid regular expression" msgstr "Ungültiger Regulärer Ausdruck" -#: regcomp.c:141 +#: regcomp.c:140 msgid "Invalid collation character" msgstr "Ungültiges Zeichen" -#: regcomp.c:144 +#: regcomp.c:143 msgid "Invalid character class name" msgstr "Ungültiger Name für eine Zeichenklasse" -#: regcomp.c:147 +#: regcomp.c:146 msgid "Trailing backslash" msgstr "Angehängter Backslash" -#: regcomp.c:150 +#: regcomp.c:149 msgid "Invalid back reference" msgstr "Ungültige Rück-Referenz" -#: regcomp.c:153 +#: regcomp.c:152 msgid "Unmatched [ or [^" msgstr "[ oder [^ werden nicht geschlossen" -#: regcomp.c:156 +#: regcomp.c:155 msgid "Unmatched ( or \\(" msgstr "( oder \\( werden nicht geschlossen" -#: regcomp.c:159 +#: regcomp.c:158 msgid "Unmatched \\{" msgstr "\\{ wird nicht geschlossen" -#: regcomp.c:162 +#: regcomp.c:161 msgid "Invalid content of \\{\\}" msgstr "Ungültiger Inhalt von \\{\\}" -#: regcomp.c:165 +#: regcomp.c:164 msgid "Invalid range end" msgstr "Ungültiges Bereichsende" -#: regcomp.c:168 +#: regcomp.c:167 msgid "Memory exhausted" msgstr "Kein freier Speicher mehr vorhanden" -#: regcomp.c:171 +#: regcomp.c:170 msgid "Invalid preceding regular expression" msgstr "Vorangehender regulärer Ausdruck ist ungültig" -#: regcomp.c:174 +#: regcomp.c:173 msgid "Premature end of regular expression" msgstr "Vorzeitiges Ende des regulären Ausdrucks" -#: regcomp.c:177 +#: regcomp.c:176 msgid "Regular expression too big" msgstr "Regulärer Ausdruck ist zu groß" -#: regcomp.c:180 +#: regcomp.c:179 msgid "Unmatched ) or \\)" msgstr ") oder \\) werden nicht geöffnet" -#: regcomp.c:701 +#: regcomp.c:700 msgid "No previous regular expression" msgstr "Kein vorangehender regulärer Ausdruck" +#~ msgid "attempt to use function `%s' as an array" +#~ msgstr "Es wird versucht, die Funktion »%s« als Feld zu verwenden" + +#~ msgid "reference to uninitialized element `%s[\"%.*s\"]'" +#~ msgstr "Bezug auf ein nicht initialisiertes Element »%s[\"%.*s\"]«" + +#~ msgid "subscript of array `%s' is null string" +#~ msgstr "Der Index von Feld »%s« ist ein Nullstring" + +#~ msgid "%s: empty (null)\n" +#~ msgstr "%s: leer (Null)\n" + +#~ msgid "%s: empty (zero)\n" +#~ msgstr "%s: leer (0)\n" + +#~ msgid "%s: table_size = %d, array_size = %d\n" +#~ msgstr "%s: Tabellengröße = %d, Feldgröße = %d\n" + +#~ msgid "%s: is parameter\n" +#~ msgstr "%s: ist ein Parameter\n" + +#~ msgid "%s: array_ref to %s\n" +#~ msgstr "%s: Feld-Referenz auf %s\n" + +#~ msgid "use of non-array as array" +#~ msgstr "Verwendung eines Nicht-Feldes als Feld" + +#~ msgid "can't use function name `%s' as variable or array" +#~ msgstr "Funktion »%s« kann nicht als Variable oder Feld verwendet werden" + +#~ msgid "attempt to use array `%s[\"%.*s\"]' in a scalar context" +#~ msgstr "" +#~ "Es wird versucht, das Feld »%s[\"%.*s\"]« in einem Skalarkontext zu " +#~ "verwenden" + +#~ msgid "assignment used in conditional context" +#~ msgstr "Zuweisung in einer Bedingung" + +#~ msgid "statement has no effect" +#~ msgstr "Anweisung hat keinen Effekt" + +#~ msgid "" +#~ "for loop: array `%s' changed size from %ld to %ld during loop execution" +#~ msgstr "" +#~ "for-Schleife: Feld »%s« ändert seine Größe von %ld innerhalb der Schleife " +#~ "zu %ld" + +#~ msgid "function called indirectly through `%s' does not exist" +#~ msgstr "die durch »%s« indirekt aufgerufene Funktion existiert nicht" + +#~ msgid "function `%s' not defined" +#~ msgstr "Funktion »%s« ist nicht definiert" + +#~ msgid "non-redirected `getline' invalid inside `%s' rule" +#~ msgstr "Nicht umgelenktes »getline« ist innerhalb der »%s«-Aktion unzuässig" + +#~ msgid "error reading input file `%s': %s" +#~ msgstr "Fehler beim Lesen der Eingabedatei »%s«: %s" + +#~ msgid "`nextfile' cannot be called from a `%s' rule" +#~ msgstr "»nextfile« kann nicht aus einer »«%s-Regel aufgerufen werden" + +#~ msgid "`exit' cannot be called in the current context" +#~ msgstr "»exit« kann im aktuellen Kontext nicht aufgerufen werden" + +#~ msgid "`next' cannot be called from a `%s' rule" +#~ msgstr "»next« kann nicht in einer »%s«-Regel verwendet werden" + +#~ msgid "Sorry, don't know how to interpret `%s'" +#~ msgstr "" +#~ "Entschuldigung, aber es ist unbekannt, wie »%s« zu interpretieren ist" + +#~ msgid "\t-R file\t\t\t--command=file\n" +#~ msgstr "\t-R Datei\t\t\t--command=Datei\n" + +#~ msgid "could not find groups: %s" +#~ msgstr "Die Gruppen konnten nicht gefunden werden: %s" + #~ msgid "assignment is not allowed to result of builtin function" #~ msgstr "" #~ "Zuweisungen an das Ergebnis einer eingebauten Funktion sind nicht erlaubt" Binary files differ@@ -1,14 +1,14 @@ -# Mensajes en español para gawk-4.0.0. -# Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc. +# Mensajes en español para gawk-4.0.0h. +# Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc. # This file is distributed under the same license as the gawk package. -# Cristian Othón MartÃnez Vera <cfuga@cfuga.mx>, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011. +# Cristian Othón MartÃnez Vera <cfuga@cfuga.mx>, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012. # msgid "" msgstr "" -"Project-Id-Version: gawk 4.0.0\n" +"Project-Id-Version: gawk 4.0.0h\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" -"POT-Creation-Date: 2011-11-14 21:46+0200\n" -"PO-Revision-Date: 2011-08-14 12:02-0500\n" +"POT-Creation-Date: 2012-04-08 12:18+0300\n" +"PO-Revision-Date: 2012-01-30 07:42-0600\n" "Last-Translator: Cristian Othón MartÃnez Vera <cfuga@cfuga.mx>\n" "Language-Team: Spanish <es@li.org>\n" "Language: es\n" @@ -16,519 +16,476 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: array.c:140 +#: array.c:267 #, c-format msgid "from %s" msgstr "desde %s" -#: array.c:248 +#: array.c:367 msgid "attempt to use a scalar value as array" msgstr "se intentó usar un valor escalar como una matriz" -#: array.c:251 -#, c-format -msgid "attempt to use function `%s' as an array" -msgstr "se intentó usar la función `%s' como una matriz" - -#: array.c:254 +#: array.c:369 #, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "se intentó usar el parámetro escalar `%s como una matriz'" -#: array.c:257 +#: array.c:372 #, c-format msgid "attempt to use scalar `%s' as an array" msgstr "se intentó usar el escalar `%s' como una matriz" -#: array.c:302 array.c:707 builtin.c:84 builtin.c:1384 builtin.c:1426 -#: builtin.c:1439 builtin.c:1858 builtin.c:1870 eval.c:1135 eval.c:1139 -#: eval.c:1495 eval.c:1812 +#: array.c:419 array.c:585 builtin.c:85 builtin.c:1389 builtin.c:1431 +#: builtin.c:1444 builtin.c:1862 builtin.c:1874 eval.c:1096 eval.c:1100 +#: eval.c:1500 #, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "se intentó usar la matriz `%s' en un contexto escalar" -#: array.c:513 -#, c-format -msgid "reference to uninitialized element `%s[\"%.*s\"]'" -msgstr "referencia al elemento sin inicializar `%s[\"%.*s\"]'" - -#: array.c:519 -#, c-format -msgid "subscript of array `%s' is null string" -msgstr "el subÃndice de la matriz `%s' es la cadena nula" - -#: array.c:723 +#: array.c:592 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "delete: el Ãndice `%s' no está en la matriz `%s'" -#: array.c:734 eval.c:1865 +#: array.c:606 #, c-format msgid "attempt to use scalar `%s[\"%.*s\"]' as an array" msgstr "se intentó usar el dato escalar `%s[\"%.*s\"]' como una matriz" -#: array.c:910 -#, c-format -msgid "%s: empty (null)\n" -msgstr "%s: vacÃo (nulo)\n" - -#: array.c:915 -#, c-format -msgid "%s: empty (zero)\n" -msgstr "%s: vacÃo (cero)\n" - -#: array.c:919 -#, c-format -msgid "%s: table_size = %d, array_size = %d\n" -msgstr "%s: tamaño_tabla = %d, tamaño_matriz = %d\n" - -#: array.c:954 -#, c-format -msgid "%s: is parameter\n" -msgstr "%s: es un parámetro\n" - -#: array.c:958 -#, c-format -msgid "%s: array_ref to %s\n" -msgstr "%s: array_ref a %s\n" - -#: array.c:963 -msgid "adump: argument not an array" +#: array.c:794 +#, fuzzy +msgid "adump: first argument not an array" msgstr "adump: el argumento no es una matriz" -#: array.c:1086 +#: array.c:833 msgid "asort: second argument not an array" msgstr "asort: el segundo argumento no es una matriz" -#: array.c:1087 +#: array.c:834 msgid "asorti: second argument not an array" msgstr "asorti: el segundo argumento no es una matriz" -#: array.c:1094 +#: array.c:841 msgid "asort: first argument not an array" msgstr "asort: el primer argumento no es una matriz" -#: array.c:1095 +#: array.c:842 msgid "asorti: first argument not an array" msgstr "asorti: el primer argumento no es una matriz" -#: array.c:1102 +#: array.c:849 msgid "asort: cannot use a subarray of first arg for second arg" msgstr "" "asort: no se puede usar una submatriz del primer argumento para el segundo " "argumento" -#: array.c:1103 +#: array.c:850 msgid "asorti: cannot use a subarray of first arg for second arg" msgstr "" "asorti: no se puede usar una submatriz del primer argumento para el segundo " "argumento" -#: array.c:1108 +#: array.c:855 msgid "asort: cannot use a subarray of second arg for first arg" msgstr "" "asort: no se puede usar una submatriz del segundo argumento para el primer " "argumento" -#: array.c:1109 +#: array.c:856 msgid "asorti: cannot use a subarray of second arg for first arg" msgstr "" "asorti: no se puede usar una submatriz del segundo argumento para el primer " "argumento" -#: array.c:1659 +#: array.c:1329 #, c-format msgid "`%s' is invalid as a function name" msgstr "`%s' es inválido como un nombre de función" -#: array.c:1663 +#: array.c:1333 #, c-format msgid "sort comparison function `%s' is not defined" msgstr "la función de comparación de ordenamiento `%s' no está definida" -#: awkgram.y:249 +#: awkgram.y:223 #, c-format msgid "%s blocks must have an action part" msgstr "los bloques %s deben tener una parte de acción" -#: awkgram.y:252 +#: awkgram.y:226 msgid "each rule must have a pattern or an action part" msgstr "cada regla debe tener un patrón o una parte de acción" -#: awkgram.y:323 awkgram.y:334 +#: awkgram.y:295 awkgram.y:306 msgid "old awk does not support multiple `BEGIN' or `END' rules" msgstr "el awk antiguo no admite múltiples reglas `BEGIN' o `END'" -#: awkgram.y:371 +#: awkgram.y:343 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "`%s' es una función interna, no se puede redefinir" -#: awkgram.y:432 +#: awkgram.y:389 msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "" "la constante de expresión regular `//' parece un comentario de C++, pero no " "lo es" -#: awkgram.y:436 +#: awkgram.y:393 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "" "la constante de expresión regular `/%s/' parece un comentario de C, pero no " "lo es" -#: awkgram.y:528 +#: awkgram.y:485 #, c-format msgid "duplicate case values in switch body: %s" msgstr "valores case duplicados en el cuerpo de un switch: %s" -#: awkgram.y:549 +#: awkgram.y:506 msgid "duplicate `default' detected in switch body" msgstr "se detectó un `default' duplicado en el cuerpo de un switch" -#: awkgram.y:809 +#: awkgram.y:766 msgid "`break' is not allowed outside a loop or switch" msgstr "no se permite `break' fuera de un bucle o switch" -#: awkgram.y:818 +#: awkgram.y:775 msgid "`continue' is not allowed outside a loop" msgstr "no se permite `continue' fuera de un bucle" -#: awkgram.y:828 +#: awkgram.y:785 #, c-format msgid "`next' used in %s action" msgstr "se usó `next' en la acción %s" -#: awkgram.y:836 +#: awkgram.y:793 msgid "`nextfile' is a gawk extension" msgstr "`nextfile' es una extensión de gawk" -#: awkgram.y:841 +#: awkgram.y:798 #, c-format msgid "`nextfile' used in %s action" msgstr "se usó `nextfile' en la acción %s" -#: awkgram.y:865 +#: awkgram.y:822 msgid "`return' used outside function context" msgstr "se usó `return' fuera del contexto de la función" -#: awkgram.y:925 +#: awkgram.y:892 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "" "el `print' simple en la regla BEGIN o END probablemente debe ser `print \"\"'" -#: awkgram.y:995 awkgram.y:999 awkgram.y:1023 +#: awkgram.y:962 awkgram.y:966 awkgram.y:990 msgid "`delete array' is a gawk extension" msgstr "`delete array' es una extensión de gawk" -#: awkgram.y:1019 +#: awkgram.y:986 msgid "`delete(array)' is a non-portable tawk extension" msgstr "`delete(array)' es una extensión de tawk que no es transportable" -#: awkgram.y:1135 +#: awkgram.y:1102 msgid "multistage two-way pipelines don't work" msgstr "las lÃneas de trabajo de dos vÃas multiestado no funcionan" -#: awkgram.y:1238 +#: awkgram.y:1205 msgid "regular expression on right of assignment" msgstr "expresión regular del lado derecho de una asignación" -#: awkgram.y:1249 +#: awkgram.y:1216 msgid "regular expression on left of `~' or `!~' operator" msgstr "expresión regular a la izquierda del operador `~' o `!~'" -#: awkgram.y:1265 awkgram.y:1419 +#: awkgram.y:1232 awkgram.y:1383 msgid "old awk does not support the keyword `in' except after `for'" msgstr "" "el awk antiguo no admite la palabra clave `in' excepto después de `for'" -#: awkgram.y:1275 +#: awkgram.y:1242 msgid "regular expression on right of comparison" msgstr "expresión regular a la derecha de una comparación" -#: awkgram.y:1394 +#: awkgram.y:1358 #, c-format msgid "`getline var' invalid inside `%s' rule" msgstr "`getline var' inválido dentro de la regla `%s'" -#: awkgram.y:1397 eval.c:2504 +#: awkgram.y:1361 #, c-format msgid "`getline' invalid inside `%s' rule" msgstr "`getline' inválido dentro de la regla `%s'" -#: awkgram.y:1402 +#: awkgram.y:1366 msgid "non-redirected `getline' undefined inside END action" msgstr "`getline' no redirigido indefinido dentro de la acción de END" -#: awkgram.y:1421 +#: awkgram.y:1385 msgid "old awk does not support multidimensional arrays" msgstr "el awk antiguo no admite matrices multidimensionales" -#: awkgram.y:1517 +#: awkgram.y:1481 msgid "call of `length' without parentheses is not portable" msgstr "la llamada de `length' sin paréntesis no es transportable" -#: awkgram.y:1580 +#: awkgram.y:1545 msgid "indirect function calls are a gawk extension" msgstr "las llamadas indirectas a función son una extensión de gawk" -#: awkgram.y:1593 +#: awkgram.y:1558 #, c-format msgid "can not use special variable `%s' for indirect function call" msgstr "" "no se puede usar la variable especial `%s' como llamada indirecta a función" -#: awkgram.y:1671 +#: awkgram.y:1636 msgid "invalid subscript expression" msgstr "expresión de subÃndice inválida" -#: awkgram.y:1711 -msgid "use of non-array as array" -msgstr "uso de una matriz que no es matriz" - -#: awkgram.y:1975 awkgram.y:1995 msg.c:98 +#: awkgram.y:1936 awkgram.y:1956 msg.c:96 msgid "warning: " msgstr "aviso: " -#: awkgram.y:1993 msg.c:130 +#: awkgram.y:1954 msg.c:128 msgid "fatal: " msgstr "fatal: " -#: awkgram.y:2043 +#: awkgram.y:2004 msgid "unexpected newline or end of string" msgstr "nueva lÃnea o fin de la cadena inesperados" -#: awkgram.y:2300 awkgram.y:2358 awkgram.y:2542 +#: awkgram.y:2269 awkgram.y:2327 awkgram.y:2515 #, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "no se puede abrir el fichero fuente `%s' para lectura (%s)" -#: awkgram.y:2301 awkgram.y:2359 builtin.c:122 +#: awkgram.y:2270 awkgram.y:2328 builtin.c:124 msgid "reason unknown" msgstr "razón desconocida" -#: awkgram.y:2317 +#: awkgram.y:2286 #, c-format msgid "already included source file `%s'" msgstr "ya se incluyó el fichero fuente `%s'" -#: awkgram.y:2343 +#: awkgram.y:2312 msgid "@include is a gawk extension" msgstr "@include es una extensión de gawk" -#: awkgram.y:2349 +#: awkgram.y:2318 msgid "empty filename after @include" msgstr "nombre de fichero vacÃo después de @include" -#: awkgram.y:2494 +#: awkgram.y:2467 msgid "empty program text on command line" msgstr "texto de programa vacÃo en la linea de órdenes" -#: awkgram.y:2609 +#: awkgram.y:2582 #, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "no se puede leer el fichero fuente `%s' (%s)" -#: awkgram.y:2620 +#: awkgram.y:2593 #, c-format msgid "source file `%s' is empty" msgstr "el fichero fuente `%s' está vacÃo" -#: awkgram.y:2805 +#: awkgram.y:2770 msgid "source file does not end in newline" msgstr "el fichero fuente no termina con lÃnea nueva" -#: awkgram.y:2882 +#: awkgram.y:2874 msgid "unterminated regexp ends with `\\' at end of file" msgstr "expresión regular sin terminar termina con `\\` al final del fichero" -#: awkgram.y:2906 +#: awkgram.y:2898 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" "%s: %d: el modificador de expresión regular `/.../%c` de tawk no funciona en " "gawk" -#: awkgram.y:2910 +#: awkgram.y:2902 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" "el modificador de expresión regular `/.../%c` de tawk no funciona en gawk" -#: awkgram.y:2917 +#: awkgram.y:2909 msgid "unterminated regexp" msgstr "expresión regular sin terminar" -#: awkgram.y:2921 +#: awkgram.y:2913 msgid "unterminated regexp at end of file" msgstr "expresión regular sin terminar al final del fichero" -#: awkgram.y:2980 +#: awkgram.y:2972 msgid "use of `\\ #...' line continuation is not portable" msgstr "el uso de la continuación de lÃnea `\\ #...' no es transportable" -#: awkgram.y:2996 +#: awkgram.y:2988 msgid "backslash not last character on line" msgstr "la barra invertida no es el último caracter en la lÃnea" -#: awkgram.y:3057 +#: awkgram.y:3049 msgid "POSIX does not allow operator `**='" msgstr "POSIX no permite el operador `**='" -#: awkgram.y:3059 +#: awkgram.y:3051 msgid "old awk does not support operator `**='" msgstr "el awk antiguo no admite el operador `**='" -#: awkgram.y:3068 +#: awkgram.y:3060 msgid "POSIX does not allow operator `**'" msgstr "POSIX no permite el operador `**'" -#: awkgram.y:3070 +#: awkgram.y:3062 msgid "old awk does not support operator `**'" msgstr "el awk antiguo no admite el operador `**='" -#: awkgram.y:3105 +#: awkgram.y:3097 msgid "operator `^=' is not supported in old awk" msgstr "el operador `^=' no se admite en el awk antiguo" -#: awkgram.y:3113 +#: awkgram.y:3105 msgid "operator `^' is not supported in old awk" msgstr "el operador `^' no se admite en el awk antiguo" -#: awkgram.y:3206 awkgram.y:3222 +#: awkgram.y:3198 awkgram.y:3214 msgid "unterminated string" msgstr "cadena sin terminar" -#: awkgram.y:3418 +#: awkgram.y:3410 #, c-format msgid "invalid char '%c' in expression" msgstr "caracter '%c' inválido en la expresión" -#: awkgram.y:3465 +#: awkgram.y:3457 #, c-format msgid "`%s' is a gawk extension" msgstr "`%s' es una extensión de gawk" -#: awkgram.y:3470 +#: awkgram.y:3462 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "`%s' es una extensión de Bell Labs" -#: awkgram.y:3475 +#: awkgram.y:3467 #, c-format msgid "POSIX does not allow `%s'" msgstr "POSIX no permite `%s'" -#: awkgram.y:3483 +#: awkgram.y:3475 #, c-format msgid "`%s' is not supported in old awk" msgstr "`%s' no se admite en el awk antiguo" -#: awkgram.y:3550 +#: awkgram.y:3542 msgid "`goto' considered harmful!\n" msgstr "¡`goto' se considera dañino!\n" -#: awkgram.y:3601 +#: awkgram.y:3576 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "%d es inválido como número de argumentos para %s" -#: awkgram.y:3636 +#: awkgram.y:3611 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "" "%s: la literal de cadena como último argumento de substitute no tiene efecto" -#: awkgram.y:3641 +#: awkgram.y:3616 #, c-format msgid "%s third parameter is not a changeable object" msgstr "el tercer argumento de %s no es un objecto modificable" -#: awkgram.y:3714 awkgram.y:3717 +#: awkgram.y:3689 awkgram.y:3692 msgid "match: third argument is a gawk extension" msgstr "match: el tercer argumento es una extensión de gawk" -#: awkgram.y:3771 awkgram.y:3774 +#: awkgram.y:3746 awkgram.y:3749 msgid "close: second argument is a gawk extension" msgstr "close: el segundo argumento es una extensión de gawk" -#: awkgram.y:3786 +#: awkgram.y:3761 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "el uso de dcgettext(_\"...\") es incorrecto: quite el subrayado inicial" -#: awkgram.y:3801 +#: awkgram.y:3776 msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "el uso de dcngettext(_\"...\") es incorrecto: quite el subrayado inicial" -#: awkgram.y:3893 -#, c-format -msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" -msgstr "función `%s': parámetro #%d, `%s', duplica el parámetro #%d" - -#: awkgram.y:3935 +#: awkgram.y:3842 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "función `%s': parámetro `%s' oscurece la variable global" -#: awkgram.y:4093 +#: awkgram.y:3885 #, c-format msgid "could not open `%s' for writing (%s)" msgstr "no se puede abrir `%s' para escritura (%s)" -#: awkgram.y:4094 +#: awkgram.y:3886 msgid "sending variable list to standard error" msgstr "se envÃa la lista de variables a la salida estándar de error" -#: awkgram.y:4100 +#: awkgram.y:3894 #, c-format msgid "%s: close failed (%s)" msgstr "%s: falló close (%s)" -#: awkgram.y:4152 +#: awkgram.y:3919 msgid "shadow_funcs() called twice!" msgstr "¡se llamó shadow_funcs() dos veces!" -#: awkgram.y:4158 +#: awkgram.y:3927 msgid "there were shadowed variables." msgstr "hay variables opacadas." -#: awkgram.y:4188 +#: awkgram.y:3998 +#, c-format +msgid "function name `%s' previously defined" +msgstr "el nombre de función `%s' se definió previamente" + +#: awkgram.y:4044 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "" "función `%s': no se puede usar un nombre de función como nombre de parámetro" -#: awkgram.y:4192 +#: awkgram.y:4047 #, c-format msgid "function `%s': can't use special variable `%s' as a function parameter" msgstr "" "función `%s': no se puede usar la variable especial `%s' como un parámetro " "de función" -#: awkgram.y:4208 +#: awkgram.y:4055 #, c-format -msgid "function name `%s' previously defined" -msgstr "el nombre de función `%s' se definió previamente" +msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" +msgstr "función `%s': parámetro #%d, `%s', duplica el parámetro #%d" -#: awkgram.y:4376 awkgram.y:4382 +#: awkgram.y:4134 awkgram.y:4140 #, c-format msgid "function `%s' called but never defined" msgstr "se llamó a la función `%s' pero nunca se definió" -#: awkgram.y:4385 +#: awkgram.y:4143 #, c-format msgid "function `%s' defined but never called directly" msgstr "se definió la función `%s' pero nunca se llamó directamente" -#: awkgram.y:4417 +#: awkgram.y:4175 #, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "" "la constante de expresión regular para el parámetro #%d da un valor booleano" -#: awkgram.y:4526 +#: awkgram.y:4221 #, c-format msgid "" "function `%s' called with space between name and `(',\n" @@ -537,238 +494,238 @@ msgstr "" "se llamó la función `%s' con espacio entre el nombre y el `(',\n" "o se usó como una variable o una matriz" -#: awkgram.y:4773 eval.c:2056 +#: awkgram.y:4429 msgid "division by zero attempted" msgstr "se intentó una división por cero" -#: awkgram.y:4782 eval.c:2072 +#: awkgram.y:4438 #, c-format msgid "division by zero attempted in `%%'" msgstr "se intentó una división por cero en `%%'" -#: builtin.c:120 +#: builtin.c:122 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "falló %s a \"%s\" (%s)" -#: builtin.c:121 +#: builtin.c:123 msgid "standard output" msgstr "salida estándar" -#: builtin.c:135 +#: builtin.c:137 msgid "exp: received non-numeric argument" msgstr "exp: se recibió un argumento que no es númerico" -#: builtin.c:141 +#: builtin.c:143 #, c-format msgid "exp: argument %g is out of range" msgstr "exp: el argumento %g está fuera de rango" -#: builtin.c:200 +#: builtin.c:202 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "" "fflush: no se puede limpiar: se abrió la tuberÃa `%s' para lectura, no para " "escritura" -#: builtin.c:203 +#: builtin.c:205 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "" "fflush: no se puede limpiar: se abrió el fichero `%s' para lectura, no para " "escritura" -#: builtin.c:215 +#: builtin.c:217 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "fflush: `%s' no es un fichero abierto, tuberÃa o co-proceso" -#: builtin.c:333 +#: builtin.c:335 msgid "index: received non-string first argument" msgstr "index: el primer argumento recibido no es una cadena" -#: builtin.c:335 +#: builtin.c:337 msgid "index: received non-string second argument" msgstr "index: el segundo argumento recibido no es una cadena" -#: builtin.c:457 +#: builtin.c:461 msgid "int: received non-numeric argument" msgstr "int: se recibió un argumento que no es númerico" -#: builtin.c:493 +#: builtin.c:497 msgid "length: received array argument" msgstr "length: se recibió un argumento de matriz" -#: builtin.c:496 +#: builtin.c:500 msgid "`length(array)' is a gawk extension" msgstr "`length(array)' es una extensión de gawk" -#: builtin.c:504 +#: builtin.c:508 msgid "length: received non-string argument" msgstr "length: se recibió un argumento que no es una cadena" -#: builtin.c:535 +#: builtin.c:539 msgid "log: received non-numeric argument" msgstr "log: se recibió un argumento que no es númerico" -#: builtin.c:538 +#: builtin.c:542 #, c-format msgid "log: received negative argument %g" msgstr "log: se recibió el argumento negativo %g" -#: builtin.c:694 builtin.c:699 +#: builtin.c:698 builtin.c:703 msgid "fatal: must use `count$' on all formats or none" msgstr "fatal: se debe utilizar `count$' en todos los formatos o en ninguno" -#: builtin.c:761 +#: builtin.c:766 #, c-format msgid "field width is ignored for `%%' specifier" msgstr "se descarta la anchura del campo para el especificador `%%'" -#: builtin.c:763 +#: builtin.c:768 #, c-format msgid "precision is ignored for `%%' specifier" msgstr "se descarta la precisión para el especificador `%%'" -#: builtin.c:765 +#: builtin.c:770 #, c-format msgid "field width and precision are ignored for `%%' specifier" msgstr "" "se descartan la anchura del campo y la precisión para el especificador `%%'" -#: builtin.c:816 +#: builtin.c:821 msgid "fatal: `$' is not permitted in awk formats" msgstr "fatal: no se permite `$' en los formatos de awk" -#: builtin.c:825 +#: builtin.c:830 msgid "fatal: arg count with `$' must be > 0" msgstr "fatal: la cuenta de argumentos con `$' debe ser > 0" -#: builtin.c:829 +#: builtin.c:834 #, c-format msgid "fatal: arg count %ld greater than total number of supplied arguments" msgstr "" "fatal: la cuenta de argumentos %ld es mayor que el número total de " "argumentos proporcionados" -#: builtin.c:833 +#: builtin.c:838 msgid "fatal: `$' not permitted after period in format" msgstr "fatal: no se permite `$' después de un punto en el formato" -#: builtin.c:849 +#: builtin.c:854 msgid "fatal: no `$' supplied for positional field width or precision" msgstr "" "fatal: no se proporciona `$' para la anchura o la precisión del campo " "posicional" -#: builtin.c:920 +#: builtin.c:925 msgid "`l' is meaningless in awk formats; ignored" msgstr "`l' no tiene significado en los formatos de awk; se descarta" -#: builtin.c:924 +#: builtin.c:929 msgid "fatal: `l' is not permitted in POSIX awk formats" msgstr "fatal: no se permite `l' en los formatos POSIX de awk" -#: builtin.c:937 +#: builtin.c:942 msgid "`L' is meaningless in awk formats; ignored" msgstr "`L' no tiene significado en los formatos de awk; se descarta" -#: builtin.c:941 +#: builtin.c:946 msgid "fatal: `L' is not permitted in POSIX awk formats" msgstr "fatal: no se permite `L' en los formatos POSIX de awk" -#: builtin.c:954 +#: builtin.c:959 msgid "`h' is meaningless in awk formats; ignored" msgstr "`h' no tiene significado en los formatos de awk; se descarta" -#: builtin.c:958 +#: builtin.c:963 msgid "fatal: `h' is not permitted in POSIX awk formats" msgstr "fatal: no se permite `h' en los formatos POSIX de awk" -#: builtin.c:1271 +#: builtin.c:1276 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "[s]printf: el valor %g está fuera del rango para el formato `%%%c'" -#: builtin.c:1331 +#: builtin.c:1336 #, c-format msgid "ignoring unknown format specifier character `%c': no argument converted" msgstr "" "se descarta el carácter especificador de formato `%c' desconocido: no se " "convirtió ningún argumento" -#: builtin.c:1336 +#: builtin.c:1341 msgid "fatal: not enough arguments to satisfy format string" msgstr "" "fatal: no hay suficientes argumentos para satisfacer a la cadena de formato" -#: builtin.c:1338 +#: builtin.c:1343 msgid "^ ran out for this one" msgstr "se acabó ^ para éste" -#: builtin.c:1345 +#: builtin.c:1350 msgid "[s]printf: format specifier does not have control letter" msgstr "[s]printf: el especificador de formato no tiene letras de control" -#: builtin.c:1348 +#: builtin.c:1353 msgid "too many arguments supplied for format string" msgstr "se proporcionaron demasiados argumentos para la cadena de formato" -#: builtin.c:1422 builtin.c:1433 +#: builtin.c:1427 builtin.c:1438 msgid "printf: no arguments" msgstr "printf: sin argumentos" -#: builtin.c:1474 +#: builtin.c:1479 msgid "sqrt: received non-numeric argument" msgstr "sqrt: se recibió un argumento que no es un númerico" -#: builtin.c:1478 +#: builtin.c:1483 #, c-format msgid "sqrt: called with negative argument %g" msgstr "sqrt: se llamó con el argumento negativo %g" -#: builtin.c:1502 +#: builtin.c:1507 #, c-format msgid "substr: length %g is not >= 1" msgstr "substr: la longitud %g no es >= 1" -#: builtin.c:1504 +#: builtin.c:1509 #, c-format msgid "substr: length %g is not >= 0" msgstr "substr: la longitud %g no es >= 0" -#: builtin.c:1511 +#: builtin.c:1516 #, c-format msgid "substr: non-integer length %g will be truncated" msgstr "substr: se truncará la longitud no entera %g" -#: builtin.c:1516 +#: builtin.c:1521 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "" "substr: la longitud %g es demasiado grande para ser Ãndice de cadena, se " "trunca a %g" -#: builtin.c:1528 +#: builtin.c:1533 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "substr: el Ãndice de inicio %g es inválido, se usa 1" -#: builtin.c:1533 +#: builtin.c:1538 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "substr: se truncará el Ãndice de inicio no entero %g" -#: builtin.c:1558 +#: builtin.c:1563 msgid "substr: source string is zero length" msgstr "substr: la cadena de origen es de longitud cero" -#: builtin.c:1574 +#: builtin.c:1579 #, c-format msgid "substr: start index %g is past end of string" msgstr "substr: el Ãndice de inicio %g está después del fin de la cadena" -#: builtin.c:1582 +#: builtin.c:1587 #, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" @@ -776,233 +733,229 @@ msgstr "" "substr: la cadena %g en el Ãndice de inicio %g excede la longitud del primer " "argumento (%lu)" -#: builtin.c:1656 +#: builtin.c:1661 msgid "strftime: format value in PROCINFO[\"strftime\"] has numeric type" msgstr "" "strftime: el valor de formato en PROCINFO[\"strftime\"] tiene tipo numérico" -#: builtin.c:1679 +#: builtin.c:1684 msgid "strftime: received non-numeric second argument" msgstr "strftime: el segundo argumento recibido no es númerico" -#: builtin.c:1682 +#: builtin.c:1687 msgid "strftime: second argument less than 0 or too big for time_t" msgstr "" +"strftime: el segundo argumento es menor que 0 o demasiado grande para time_t" -#: builtin.c:1689 +#: builtin.c:1694 msgid "strftime: received non-string first argument" msgstr "strftime: el primer argumento recibido no es una cadena" -#: builtin.c:1695 +#: builtin.c:1701 msgid "strftime: received empty format string" msgstr "strftime: se recibió una cadena de formato vacÃa" -#: builtin.c:1761 +#: builtin.c:1767 msgid "mktime: received non-string argument" msgstr "mktime: se recibió un argumento que no es una cadena" -#: builtin.c:1778 +#: builtin.c:1784 msgid "mktime: at least one of the values is out of the default range" msgstr "" "mktime: por lo menos uno de los valores está fuera del rango por defecto" -#: builtin.c:1813 +#: builtin.c:1819 msgid "'system' function not allowed in sandbox mode" msgstr "no se permite la función 'system' en modo sandbox" -#: builtin.c:1818 +#: builtin.c:1824 msgid "system: received non-string argument" msgstr "system: se recibió un argumento que no es una cadena" -#: builtin.c:1873 eval.c:1159 eval.c:1790 eval.c:1803 -#, c-format -msgid "reference to uninitialized variable `%s'" -msgstr "referencia a la variable sin inicializar `%s'" - -#: builtin.c:1940 +#: builtin.c:1942 #, c-format msgid "reference to uninitialized field `$%d'" msgstr "referencia al campo sin inicializar `$%d'" -#: builtin.c:2027 +#: builtin.c:2029 msgid "tolower: received non-string argument" msgstr "tolower: se recibió un argumento que no es una cadena" -#: builtin.c:2061 +#: builtin.c:2063 msgid "toupper: received non-string argument" msgstr "toupper: se recibió un argumento que no es una cadena" -#: builtin.c:2097 +#: builtin.c:2099 msgid "atan2: received non-numeric first argument" msgstr "atan2: el primer argumento recibido no es númerico" -#: builtin.c:2099 +#: builtin.c:2101 msgid "atan2: received non-numeric second argument" msgstr "atan2: el segundo argumento recibido no es númerico" -#: builtin.c:2118 +#: builtin.c:2120 msgid "sin: received non-numeric argument" msgstr "sin: se recibió un argumento que no es númerico" -#: builtin.c:2134 +#: builtin.c:2136 msgid "cos: received non-numeric argument" msgstr "cos: se recibió un argumento que no es númerico" -#: builtin.c:2187 +#: builtin.c:2189 msgid "srand: received non-numeric argument" msgstr "srand: se recibió un argumento que no es númerico" -#: builtin.c:2218 +#: builtin.c:2220 msgid "match: third argument is not an array" msgstr "match: el tercer argumento no es una matriz" -#: builtin.c:2482 +#: builtin.c:2484 msgid "gensub: third argument of 0 treated as 1" msgstr "gensub: el tercer argumento de 0 se trata como 1" -#: builtin.c:2775 +#: builtin.c:2777 msgid "lshift: received non-numeric first argument" msgstr "lshift: el primer argumento recibido no es númerico" -#: builtin.c:2777 +#: builtin.c:2779 msgid "lshift: received non-numeric second argument" msgstr "lshift: el segundo argumento recibido no es númerico" -#: builtin.c:2783 +#: builtin.c:2785 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "lshift(%lf, %lf): los valores negativos darán resultados extraños" -#: builtin.c:2785 +#: builtin.c:2787 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "lshift(%lf, %lf): los valores fraccionarios se truncarán" -#: builtin.c:2787 +#: builtin.c:2789 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "" "lshift(%lf, %lf): un valor de desplazamiento muy grande dará resultados " "extraños" -#: builtin.c:2812 +#: builtin.c:2814 msgid "rshift: received non-numeric first argument" msgstr "rshift: el primer argumento recibido no es númerico" -#: builtin.c:2814 +#: builtin.c:2816 msgid "rshift: received non-numeric second argument" msgstr "rshift: el segundo argumento recibido no es númerico" -#: builtin.c:2820 +#: builtin.c:2822 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "rshift(%lf, %lf): los valores negativos darán resultados extraños" -#: builtin.c:2822 +#: builtin.c:2824 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "rshift(%lf, %lf): los valores fraccionarios serán truncados" -#: builtin.c:2824 +#: builtin.c:2826 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "" "rshift(%lf, %lf): un valor de desplazamiento muy grande dará resultados " "extraños" -#: builtin.c:2849 +#: builtin.c:2851 msgid "and: received non-numeric first argument" msgstr "and: el primer argumento recibido no es númerico" -#: builtin.c:2851 +#: builtin.c:2853 msgid "and: received non-numeric second argument" msgstr "and: el segundo argumento recibido no es númerico" -#: builtin.c:2857 +#: builtin.c:2859 #, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "and(%lf, %lf): los valores negativos darán resultados extraños" -#: builtin.c:2859 +#: builtin.c:2861 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "and(%lf, %lf): los valores fraccionarios serán truncados" -#: builtin.c:2884 +#: builtin.c:2886 msgid "or: received non-numeric first argument" msgstr "or: el primer argumento recibido no es númerico" -#: builtin.c:2886 +#: builtin.c:2888 msgid "or: received non-numeric second argument" msgstr "or: el segundo argumento recibido no es númerico" -#: builtin.c:2892 +#: builtin.c:2894 #, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "or(%lf, %lf): los valores negativos darán resultados extraños" -#: builtin.c:2894 +#: builtin.c:2896 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "or(%lf, %lf): los valores fraccionarios serán truncados" -#: builtin.c:2922 +#: builtin.c:2924 msgid "xor: received non-numeric first argument" msgstr "xor: el primer argumento recibido no es númerico" -#: builtin.c:2924 +#: builtin.c:2926 msgid "xor: received non-numeric second argument" msgstr "xor: el segundo argumento recibido no es númerico" -#: builtin.c:2930 +#: builtin.c:2932 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "xor(%lf, %lf): los valores negativos darán resultados extraños" -#: builtin.c:2932 +#: builtin.c:2934 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "xor(%lf, %lf): los valores fraccionarios se truncarán" -#: builtin.c:2956 builtin.c:2962 +#: builtin.c:2958 builtin.c:2964 msgid "compl: received non-numeric argument" msgstr "compl: se recibió un argumento que no es númerico" -#: builtin.c:2964 +#: builtin.c:2966 #, c-format msgid "compl(%lf): negative value will give strange results" msgstr "compl(%lf): el valor negativo dará resultados extraños" -#: builtin.c:2966 +#: builtin.c:2968 #, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "compl(%lf): el valor fraccionario se truncará" -#: builtin.c:3135 +#: builtin.c:3137 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "dcgettext: `%s' no es una categorÃa local válida" -#: eval.c:412 +#: eval.c:393 #, c-format msgid "unknown nodetype %d" msgstr "tipo de nodo %d desconocido" -#: eval.c:423 eval.c:437 +#: eval.c:404 eval.c:418 #, c-format msgid "unknown opcode %d" msgstr "código de operación %d desconocido" -#: eval.c:434 +#: eval.c:415 #, c-format msgid "opcode %s not an operator or keyword" msgstr "el código de operación %s no es un operador o una palabra clave" -#: eval.c:488 +#: eval.c:468 msgid "buffer overflow in genflags2str" msgstr "desbordamiento de almacenamiento temporal en genflags2str" -#: eval.c:698 +#: eval.c:678 #, c-format msgid "" "\n" @@ -1013,221 +966,169 @@ msgstr "" "\t# Pila de Llamadas de Funciones:\n" "\n" -#: eval.c:725 +#: eval.c:706 msgid "`IGNORECASE' is a gawk extension" msgstr "`IGNORECASE' es una extensión de gawk" -#: eval.c:754 +#: eval.c:736 msgid "`BINMODE' is a gawk extension" msgstr "`BINMODE' es una extensión de gawk" -#: eval.c:812 +#: eval.c:794 #, c-format msgid "BINMODE value `%s' is invalid, treated as 3" msgstr "el valor BINMODE `%s' es inválido; se trata como 3" -#: eval.c:902 +#: eval.c:887 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "especificación `%sFMT' `%s' errónea" -#: eval.c:980 +#: eval.c:969 msgid "turning off `--lint' due to assignment to `LINT'" msgstr "se desactiva `--lint' debido a una asignación a `LINT'" -#: eval.c:1127 eval.c:1777 -#, c-format -msgid "can't use function name `%s' as variable or array" -msgstr "no se puede usar el nombre de la función `%s' como variable o matriz" - -#: eval.c:1158 eval.c:1789 eval.c:1802 +#: eval.c:1119 #, c-format msgid "reference to uninitialized argument `%s'" msgstr "referencia al argumento sin inicializar `%s'" -#: eval.c:1177 +#: eval.c:1120 +#, c-format +msgid "reference to uninitialized variable `%s'" +msgstr "referencia a la variable sin inicializar `%s'" + +#: eval.c:1138 msgid "attempt to field reference from non-numeric value" msgstr "se intentó una referencia de campo desde un valor que no es númerico" -#: eval.c:1179 +#: eval.c:1140 msgid "attempt to field reference from null string" msgstr "se intentó una referencia de campo desde una cadena nula" -#: eval.c:1185 +#: eval.c:1146 #, c-format msgid "attempt to access field %ld" msgstr "se intentó acceder al campo %ld" -#: eval.c:1194 +#: eval.c:1155 #, c-format msgid "reference to uninitialized field `$%ld'" msgstr "referencia al campo sin inicializar `$%ld'" -#: eval.c:1256 +#: eval.c:1242 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "se llamó a la función `%s' con más argumentos de los declarados" -#: eval.c:1437 +#: eval.c:1436 #, c-format msgid "unwind_stack: unexpected type `%s'" msgstr "unwind_stack: tipo `%s' inesperado" -#: eval.c:1532 +#: eval.c:1536 msgid "division by zero attempted in `/='" msgstr "se intentó una división por cero en `/='" -#: eval.c:1539 +#: eval.c:1543 #, c-format msgid "division by zero attempted in `%%='" msgstr "se intentó una división por cero en `%%='" -#: eval.c:1876 eval.c:2122 -#, c-format -msgid "attempt to use array `%s[\"%.*s\"]' in a scalar context" -msgstr "se intentó usar la matriz `%s[\"%.*s\"]' en un contexto escalar" - -#: eval.c:1907 -msgid "assignment used in conditional context" -msgstr "se usó una asignación en un contexto condicional" - -#: eval.c:1911 -msgid "statement has no effect" -msgstr "la declaración no tiene efecto" - -#: eval.c:2343 -#, c-format -msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" -msgstr "" -"bucle for: la matriz `%s' cambió de tamaño de %ld a %ld durante la ejecución " -"del bucle" - -#: eval.c:2458 -#, c-format -msgid "function called indirectly through `%s' does not exist" -msgstr "no existe la función llamada indirectamente a través de `%s'" - -#: eval.c:2470 -#, c-format -msgid "function `%s' not defined" -msgstr "la función `%s' no está definida" - -#: eval.c:2511 -#, c-format -msgid "non-redirected `getline' invalid inside `%s' rule" -msgstr "`getline' no redirigido es inválido dentro de la regla `%s'" - -#: eval.c:2600 -#, c-format -msgid "error reading input file `%s': %s" -msgstr "error al leer el fichero de entrada `%s': %s" - -#: eval.c:2614 -#, c-format -msgid "`nextfile' cannot be called from a `%s' rule" -msgstr "`nextfile' no se puede llamar desde una regla `%s'" - -#: eval.c:2694 -#, c-format -msgid "`next' cannot be called from a `%s' rule" -msgstr "`next' no se puede llamar desde una regla `%s'" - -#: eval.c:2760 -#, c-format -msgid "Sorry, don't know how to interpret `%s'" -msgstr "Perdón, no se cómo interpretar `%s'" - -#: ext.c:64 +#: ext.c:70 msgid "extensions are not allowed in sandbox mode" msgstr "no se permiten las extensiones en modo sandbox" -#: ext.c:70 ext.c:75 +#: ext.c:73 msgid "`extension' is a gawk extension" msgstr "`extension' es una extensión de gawk" -#: ext.c:85 -#, c-format -msgid "fatal: extension: cannot open `%s' (%s)\n" +#: ext.c:80 +#, fuzzy, c-format +msgid "extension: cannot open library `%s' (%s)\n" msgstr "fatal: extension: no se puede abrir `%s' (%s)\n" -#: ext.c:94 -#, c-format +#: ext.c:86 +#, fuzzy, c-format msgid "" -"fatal: extension: library `%s': does not define " -"`plugin_is_GPL_compatible' (%s)\n" +"extension: library `%s': does not define `plugin_is_GPL_compatible' (%s)\n" msgstr "" "fatal: extension: la biblioteca `%s': no define " "`plugin_is_GPL_compatible' (%s)\n" -#: ext.c:103 -#, c-format -msgid "fatal: extension: library `%s': cannot call function `%s' (%s)\n" +#: ext.c:91 +#, fuzzy, c-format +msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "" "fatal: extension: la biblioteca `%s': no puede llamar a la función `" "%s' (%s)\n" -#: ext.c:137 +#: ext.c:119 msgid "extension: missing function name" msgstr "extension: falta el nombre de la función" -#: ext.c:142 +#: ext.c:124 #, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "extension: carácter ilegal `%c' en el nombre de la función `%s'" -#: ext.c:151 +#: ext.c:132 #, c-format msgid "extension: can't redefine function `%s'" msgstr "extension: no se puede redefinir la función `%s'" -#: ext.c:155 +#: ext.c:136 #, c-format msgid "extension: function `%s' already defined" msgstr "extension: la función `%s' ya está definida" -#: ext.c:160 +#: ext.c:140 #, c-format msgid "extension: function name `%s' previously defined" msgstr "extension: el nombre de función `%s' se definió previamente" -#: ext.c:162 +#: ext.c:142 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "" "extension: no se puede utilizar la orden interna de gawk `%s' como nombre de " "función" -#: ext.c:166 +#: ext.c:145 #, c-format msgid "make_builtin: negative argument count for function `%s'" msgstr "make_builtin: cuenta de argumento negativa para la función `%s'" -#: ext.c:269 +#: ext.c:207 #, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "la función `%s' se definió para tomar no más de %d argumento(s)" -#: ext.c:272 +#: ext.c:210 #, c-format msgid "function `%s': missing argument #%d" msgstr "función `%s': falta el argumento #%d" -#: ext.c:289 +#: ext.c:227 #, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "" "función `%s': argumento #%d: se intentó usar un escalar como una matriz" -#: ext.c:293 +#: ext.c:231 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "" "función `%s': argumento #%d: se intentó usar una matriz como un escalar" -#: ext.c:306 +#: ext.c:245 msgid "Operation Not Supported" msgstr "No Se Admite La Operación" +#: ext.c:257 +msgid "dynamic loading of library not supported" +msgstr "" + #: field.c:328 msgid "NF set to negative value" msgstr "se definió NF con un valor negativo" @@ -1296,547 +1197,557 @@ msgstr "" "patsplit: no se puede usar una submatriz del cuarto argumento para el " "segundo argumento" -#: field.c:1110 +#: field.c:1111 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "`FIELDWIDTHS' es una extensión gawk" -#: field.c:1173 +#: field.c:1175 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "valor de FIELDWIDTHS inválido, cerca de `%s'" -#: field.c:1246 +#: field.c:1248 msgid "null string for `FS' is a gawk extension" msgstr "la cadena nula para `FS' es una extensión de gawk" -#: field.c:1250 +#: field.c:1252 msgid "old awk does not support regexps as value of `FS'" msgstr "el awk antiguo no admite expresiones regulares como valor de `FS'" -#: field.c:1369 +#: field.c:1371 msgid "`FPAT' is a gawk extension" msgstr "`FPAT' es una extensión de gawk" -#: getopt.c:574 getopt.c:590 -#, c-format -msgid "%s: option '%s' is ambiguous\n" +#: getopt.c:604 getopt.c:633 +#, fuzzy, c-format +msgid "%s: option '%s' is ambiguous; possibilities:" msgstr "%s: la opción '%s' es ambigua\n" -#: getopt.c:623 getopt.c:627 +#: getopt.c:679 getopt.c:683 #, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: la opción '--%s' no admite ningún argumento\n" -#: getopt.c:636 getopt.c:641 +#: getopt.c:692 getopt.c:697 #, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: la opción '%c%s' no admite ningún argumento\n" -#: getopt.c:684 getopt.c:703 +#: getopt.c:740 getopt.c:759 #, c-format msgid "%s: option '--%s' requires an argument\n" msgstr "%s: la opción '--%s' requiere un argumento\n" -#: getopt.c:741 getopt.c:744 +#: getopt.c:797 getopt.c:800 #, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: no se reconoce la opción '--%s'\n" -#: getopt.c:752 getopt.c:755 +#: getopt.c:808 getopt.c:811 #, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: no se reconoce la opción '%c%s'\n" -#: getopt.c:804 getopt.c:807 +#: getopt.c:860 getopt.c:863 #, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: opción inválida -- '%c'\n" -#: getopt.c:857 getopt.c:874 getopt.c:1082 getopt.c:1100 +#: getopt.c:916 getopt.c:933 getopt.c:1143 getopt.c:1161 #, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: la opción requiere un argumento -- '%c'\n" -#: getopt.c:930 getopt.c:946 +#: getopt.c:989 getopt.c:1005 #, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: la opción '-W %s' es ambigua\n" -#: getopt.c:970 getopt.c:988 +#: getopt.c:1029 getopt.c:1047 #, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: la opción '-W %s' no admite ningún argumento\n" -#: getopt.c:1009 getopt.c:1027 +#: getopt.c:1068 getopt.c:1086 #, c-format msgid "%s: option '-W %s' requires an argument\n" msgstr "%s: la opción '-W %s' requiere un argumento\n" -#: io.c:280 +#: io.c:315 #, c-format msgid "command line argument `%s' is a directory: skipped" msgstr "el argumento de la lÃnea de órdenes `%s' es un directorio: se salta" -#: io.c:283 io.c:385 +#: io.c:318 io.c:421 #, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "no se puede abrir el fichero `%s' para lectura (%s)" -#: io.c:501 +#: io.c:537 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "falló al cerrar el df %d (`%s') (%s)" -#: io.c:578 +#: io.c:614 msgid "redirection not allowed in sandbox mode" msgstr "no se permite la redirección en modo sandbox" -#: io.c:612 +#: io.c:648 #, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "la expresión en la redirección `%s' sólo tiene valor numérico" -#: io.c:618 +#: io.c:654 #, c-format msgid "expression for `%s' redirection has null string value" msgstr "la expresión para la redirección `%s' tiene un valor de cadena nula" -#: io.c:624 +#: io.c:659 #, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "" "el fichero `%s' para la redirección `%s' puede ser resultado de una " "expresión lógica" -#: io.c:667 +#: io.c:702 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "mezcla innecesaria de `>' y `>>' para el fichero `%.*s'" -#: io.c:720 +#: io.c:755 #, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "no se puede abrir la tuberÃa `%s' para la salida (%s)" -#: io.c:730 +#: io.c:765 #, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "no se puede abrir la tuberÃa `%s' para la entrada (%s)" -#: io.c:753 +#: io.c:788 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "no se puede abrir la tuberÃa de dos vÃas `%s' para entrada/salida (%s)" -#: io.c:835 +#: io.c:870 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "no se puede redirigir desde `%s' (%s)" -#: io.c:838 +#: io.c:873 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "no se puede redirigir a `%s' (%s)" -#: io.c:889 +#: io.c:924 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "" "se alcanzó el lÃmite del sistema para ficheros abiertos: comenzando a " "multiplexar los descriptores de fichero" -#: io.c:905 +#: io.c:940 #, c-format msgid "close of `%s' failed (%s)." msgstr "falló al cerrar `%s' (%s)." -#: io.c:913 +#: io.c:948 msgid "too many pipes or input files open" msgstr "demasiadas tuberÃas o ficheros de entrada abiertos" -#: io.c:935 +#: io.c:970 msgid "close: second argument must be `to' or `from'" msgstr "close: el segundo argumento debe ser `to' o `from'" -#: io.c:952 +#: io.c:987 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "close: `%.*s' no es un fichero abierto, tuberÃa o co-proceso" -#: io.c:957 +#: io.c:992 msgid "close of redirection that was never opened" msgstr "se cerró una redirección que nunca se abrió" -#: io.c:1054 +#: io.c:1089 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "" "close: la redirección `%s' no se abrió con `|&', se descarta el segundo " "argumento" -#: io.c:1070 +#: io.c:1105 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "estado de fallo (%d) al cerrar la tuberÃa de `%s' (%s)" -#: io.c:1073 +#: io.c:1108 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "estado de fallo (%d) al cerrar el fichero de `%s' (%s)" -#: io.c:1093 +#: io.c:1128 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "no se provee el cerrado explÃcito del `socket' `%s'" -#: io.c:1096 +#: io.c:1131 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "no se provee el cerrado explÃcito del co-proceso `%s'" -#: io.c:1099 +#: io.c:1134 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "no se provee el cerrado explÃcito del la tuberÃa `%s'" -#: io.c:1102 +#: io.c:1137 #, c-format msgid "no explicit close of file `%s' provided" msgstr "no se provee el cerrado explÃcito del fichero `%s'" -#: io.c:1130 io.c:1185 main.c:793 main.c:830 +#: io.c:1165 io.c:1220 main.c:798 main.c:835 #, c-format msgid "error writing standard output (%s)" msgstr "error al escribir en la salida estándar (%s)" -#: io.c:1134 io.c:1190 +#: io.c:1169 io.c:1225 #, c-format msgid "error writing standard error (%s)" msgstr "error al escribir en la salida estándar de error (%s)" -#: io.c:1142 +#: io.c:1177 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "falló la limpieza de la tuberÃa de `%s' (%s)." -#: io.c:1145 +#: io.c:1180 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "falló la limpieza del co-proceso de la tuberÃa a `%s' (%s)." -#: io.c:1148 +#: io.c:1183 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "falló la limpieza del fichero de `%s' (%s)." -#: io.c:1263 +#: io.c:1298 #, c-format msgid "local port %s invalid in `/inet'" msgstr "puerto local %s inválido en `/inet'" -#: io.c:1280 +#: io.c:1315 #, c-format msgid "remote host and port information (%s, %s) invalid" msgstr "anfitrión remoto e información de puerto (%s, %s) inválidos" -#: io.c:1432 +#: io.c:1467 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "" "no se proporciona algún protocolo (conocido) en el nombre de fichero " "especial `%s'" -#: io.c:1446 +#: io.c:1481 #, c-format msgid "special file name `%s' is incomplete" msgstr "el nombre de fichero especial `%s' está incompleto" -#: io.c:1463 +#: io.c:1498 msgid "must supply a remote hostname to `/inet'" msgstr "se debe proporcionar a `/inet' un nombre de anfitrión remoto" -#: io.c:1481 +#: io.c:1516 msgid "must supply a remote port to `/inet'" msgstr "se debe proporcionar a `/inet' un puerto remoto" -#: io.c:1527 +#: io.c:1562 msgid "TCP/IP communications are not supported" msgstr "no se admiten las comunicaciones TCP/IP" -#: io.c:1694 +#: io.c:1729 #, c-format msgid "could not open `%s', mode `%s'" msgstr "no se puede abrir `%s', modo `%s'" -#: io.c:1748 +#: io.c:1783 #, c-format msgid "close of master pty failed (%s)" msgstr "falló al cerrar el pty maestro (%s)" -#: io.c:1750 io.c:1918 io.c:2075 +#: io.c:1785 io.c:1953 io.c:2110 #, c-format msgid "close of stdout in child failed (%s)" msgstr "falló al cerrar la salida estándar en el hijo (%s)" -#: io.c:1753 +#: io.c:1788 #, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "" "falló el movimiento del pty esclavo a la salida estándar en el hijo (dup: %s)" -#: io.c:1755 io.c:1923 +#: io.c:1790 io.c:1958 #, c-format msgid "close of stdin in child failed (%s)" msgstr "falló al cerrar la entrada estándar en el hijo (%s)" -#: io.c:1758 +#: io.c:1793 #, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "" "falló el movimiento del pty esclavo a la entrada estándar en el hijo (dup: " "%s)" -#: io.c:1760 io.c:1781 +#: io.c:1795 io.c:1816 #, c-format msgid "close of slave pty failed (%s)" msgstr "falló al cerrar el pty esclavo (%s)" -#: io.c:1859 io.c:1921 io.c:2053 io.c:2078 +#: io.c:1894 io.c:1956 io.c:2088 io.c:2113 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "falló el movimiento a la salida estándar en el hijo (dup: %s)" -#: io.c:1866 io.c:1926 +#: io.c:1901 io.c:1961 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "" "falló el movimiento de la tuberÃa a la entrada estándar en el hijo (dup: %s)" -#: io.c:1886 io.c:2068 +#: io.c:1921 io.c:2103 msgid "restoring stdout in parent process failed\n" msgstr "falló la restauración de la salida estándar en el proceso padre\n" -#: io.c:1894 +#: io.c:1929 msgid "restoring stdin in parent process failed\n" msgstr "falló la restauración de la entrada estándar en el proceso padre\n" -#: io.c:1929 io.c:2080 io.c:2094 +#: io.c:1964 io.c:2115 io.c:2129 #, c-format msgid "close of pipe failed (%s)" msgstr "falló al cerrar la tuberÃa (%s)" -#: io.c:1974 +#: io.c:2009 msgid "`|&' not supported" msgstr "no se admite `|&'" -#: io.c:2040 +#: io.c:2075 #, c-format msgid "cannot open pipe `%s' (%s)" msgstr "no se puede abrir la tuberÃa `%s' (%s)" -#: io.c:2088 +#: io.c:2123 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "no se puede crear el proceso hijo para `%s' (fork: %s)" -#: io.c:2521 +#: io.c:2613 #, c-format msgid "data file `%s' is empty" msgstr "el fichero de datos `%s' está vacÃo" -#: io.c:2562 io.c:2570 +#: io.c:2654 io.c:2662 msgid "could not allocate more input memory" msgstr "no se puede reservar más memoria de entrada" -#: io.c:3128 +#: io.c:3223 msgid "multicharacter value of `RS' is a gawk extension" msgstr "el valor multicaracter de `RS' es una extensión de gawk" -#: io.c:3233 +#: io.c:3313 msgid "IPv6 communication is not supported" msgstr "no se admite la comunicación IPv6" -#: main.c:364 +#: main.c:353 msgid "`-m[fr]' option irrelevant in gawk" msgstr "la opción -m[fr] es irrelevante en gawk" -#: main.c:366 +#: main.c:355 msgid "-m option usage: `-m[fr] nnn'" msgstr "uso de la opción -m: `-m[fr]' nnn" -#: main.c:389 +#: main.c:384 msgid "empty argument to `-e/--source' ignored" msgstr "se descarta el argumento vacÃo para `-e/--source'" -#: main.c:460 +#: main.c:464 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "%s: no se reconoce la opción `-W %s', se descarta\n" -#: main.c:513 +#: main.c:510 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: la opción requiere un argumento -- %c\n" -#: main.c:534 +#: main.c:531 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "" "la variable de ambiente `POSIXLY_CORRECT' está definida: se activa `--posix'" -#: main.c:540 +#: main.c:537 msgid "`--posix' overrides `--traditional'" msgstr "`--posix' se impone a `--traditional'" -#: main.c:551 +#: main.c:548 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "`--posix'/`--traditional' se imponen a `--non-decimal-data'" -#: main.c:555 +#: main.c:552 #, c-format msgid "running %s setuid root may be a security problem" msgstr "ejecutar %s como setuid root puede ser un problema de seguridad" -#: main.c:560 +#: main.c:557 msgid "`--posix' overrides `--binary'" msgstr "`--posix' se impone a `--binary'" -#: main.c:611 +#: main.c:600 #, c-format msgid "can't set binary mode on stdin (%s)" msgstr "no se puede establecer el modo binario en la entrada estándar (%s)" -#: main.c:614 +#: main.c:603 #, c-format msgid "can't set binary mode on stdout (%s)" msgstr "no se puede establecer el modo binario en la salida estándar (%s)" -#: main.c:616 +#: main.c:605 #, c-format msgid "can't set binary mode on stderr (%s)" msgstr "" "no se puede establecer el modo binario en la salida estándar de error (%s)" -#: main.c:655 +#: main.c:653 msgid "no program text at all!" msgstr "¡No hay ningún programa de texto!" -#: main.c:733 +#: main.c:737 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "" "Modo de empleo: %s [opciones estilo POSIX o GNU] -f fichprog [--] " "fichero ...\n" -#: main.c:735 +#: main.c:739 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "" "Modo de empleo: %s [opciones estilo POSIX o GNU] [--] %cprograma%c " "fichero ...\n" -#: main.c:740 +#: main.c:744 msgid "POSIX options:\t\tGNU long options: (standard)\n" msgstr "Opciones POSIX:\t\tOpciones largas GNU: (estándar)\n" -#: main.c:741 +#: main.c:745 msgid "\t-f progfile\t\t--file=progfile\n" msgstr "\t-f fichprog\t\t--file=fichprog\n" -#: main.c:742 +#: main.c:746 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "\t-F sc\t\t\t--field-separator=sc\n" -#: main.c:743 +#: main.c:747 msgid "\t-v var=val\t\t--assign=var=val\n" msgstr "\t-v var=valor\t\t--assign=var=valor\n" -#: main.c:744 +#: main.c:748 msgid "Short options:\t\tGNU long options: (extensions)\n" msgstr "Opciones cortas:\t\tOpciones largas GNU: (extensiones)\n" -#: main.c:745 +#: main.c:749 msgid "\t-b\t\t\t--characters-as-bytes\n" msgstr "\t-b\t\t\t--characters-as-bytes\n" -#: main.c:746 +#: main.c:750 msgid "\t-c\t\t\t--traditional\n" msgstr "\t-c\t\t\t--traditional\n" -#: main.c:747 +#: main.c:751 msgid "\t-C\t\t\t--copyright\n" msgstr "\t-C\t\t\t--copyright\n" -#: main.c:748 +#: main.c:752 msgid "\t-d[file]\t\t--dump-variables[=file]\n" msgstr "\t-d[fichero]\t\t--dump-variables[=fichero]\n" +#: main.c:753 +#, fuzzy +msgid "\t-D[file]\t\t--debug[=file]\n" +msgstr "\t-p[fichero]\t\t--profile[=fichero]\n" + # Esta es la lÃnea más larga de la lista de argumentos. # Probar con gawk para revisar tabuladores. cfuga -#: main.c:749 +#: main.c:754 msgid "\t-e 'program-text'\t--source='program-text'\n" msgstr "\t-e 'texto-prog'\t--source='texto-prog'\n" -#: main.c:750 +#: main.c:755 msgid "\t-E file\t\t\t--exec=file\n" msgstr "\t-E fichero\t\t--exec=fichero\n" -#: main.c:751 +#: main.c:756 msgid "\t-g\t\t\t--gen-pot\n" msgstr "\t-g\t\t\t--gen-pot\n" -#: main.c:752 +#: main.c:757 msgid "\t-h\t\t\t--help\n" msgstr "\t-h\t\t\t--help\n" -#: main.c:753 +#: main.c:758 +msgid "\t-l library\t\t--load=library\n" +msgstr "" + +#: main.c:759 msgid "\t-L [fatal]\t\t--lint[=fatal]\n" msgstr "\t-L [fatal]\t\t--lint[=fatal]\n" -#: main.c:754 +#: main.c:760 msgid "\t-n\t\t\t--non-decimal-data\n" msgstr "\t-n\t\t\t--non-decimal-data\n" -#: main.c:755 +#: main.c:761 msgid "\t-N\t\t\t--use-lc-numeric\n" msgstr "\t-N\t\t\t--use-lc-numeric\n" -#: main.c:756 +#: main.c:762 +#, fuzzy +msgid "\t-o[file]\t\t--pretty-print[=file]\n" +msgstr "\t-p[fichero]\t\t--profile[=fichero]\n" + +#: main.c:763 msgid "\t-O\t\t\t--optimize\n" msgstr "\t-O\t\t\t--optimize\n" -#: main.c:757 +#: main.c:764 msgid "\t-p[file]\t\t--profile[=file]\n" msgstr "\t-p[fichero]\t\t--profile[=fichero]\n" -#: main.c:758 +#: main.c:765 msgid "\t-P\t\t\t--posix\n" msgstr "\t-P\t\t\t--posix\n" -#: main.c:759 +#: main.c:766 msgid "\t-r\t\t\t--re-interval\n" msgstr "\t-r\t\t\t--re-interval\n" -#: main.c:761 -msgid "\t-R file\t\t\t--command=file\n" -msgstr "\t-R fichero\t\t\t--command=fichero\n" - -#: main.c:762 +#: main.c:767 msgid "\t-S\t\t\t--sandbox\n" msgstr "\t-S\t\t\t--sandbox\n" -#: main.c:763 +#: main.c:768 msgid "\t-t\t\t\t--lint-old\n" msgstr "\t-t\t\t\t--lint-old\n" -#: main.c:764 +#: main.c:769 msgid "\t-V\t\t\t--version\n" msgstr "\t-V\t\t\t--version\n" -#: main.c:766 +#: main.c:771 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "\t-W nostalgia\t\t--nostalgia\n" -#: main.c:769 +#: main.c:774 msgid "\t-Y\t\t--parsedebug\n" msgstr "\t-Y\t\t--parsedebug\n" @@ -1845,7 +1756,7 @@ msgstr "\t-Y\t\t--parsedebug\n" #. for this application. Please add _another line_ with the #. address for translation bugs. #. no-wrap -#: main.c:778 +#: main.c:783 msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" @@ -1859,7 +1770,7 @@ msgstr "" "Reporte los errores de los mensajes en español a <es@li.org>.\n" "\n" -#: main.c:782 +#: main.c:787 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" @@ -1869,7 +1780,7 @@ msgstr "" "Por defecto lee la entrada estándar y escribe en la salida estándar.\n" "\n" -#: main.c:786 +#: main.c:791 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" @@ -1879,7 +1790,7 @@ msgstr "" "\tgawk '{ sum += $1 }; END { print sum }' fichero\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" -#: main.c:806 +#: main.c:811 #, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" @@ -1899,7 +1810,7 @@ msgstr "" "(a su elección) cualquier versión posterior.\n" "\n" -#: main.c:814 +#: main.c:819 msgid "" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" @@ -1913,7 +1824,7 @@ msgstr "" "Licencia Pública General de GNU para más detalles.\n" "\n" -#: main.c:820 +#: main.c:825 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program. If not, see http://www.gnu.org/licenses/.\n" @@ -1922,16 +1833,16 @@ msgstr "" "junto con este programa. Si no es asÃ, consulte\n" "http://www.gnu.org/licenses/.\n" -#: main.c:855 +#: main.c:860 msgid "-Ft does not set FS to tab in POSIX awk" msgstr "-Ft no establece FS a tabulador en el awk de POSIX" -#: main.c:1089 +#: main.c:1091 #, c-format msgid "unknown value for field spec: %d\n" msgstr "valor desconocido para la especificación de campo: %d\n" -#: main.c:1170 +#: main.c:1172 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" @@ -1940,85 +1851,80 @@ msgstr "" "%s: el argumento `%s' para `-v' no es de la forma `var=valor'\n" "\n" -#: main.c:1196 +#: main.c:1198 #, c-format msgid "`%s' is not a legal variable name" msgstr "`%s' no es un nombre de variable legal" -#: main.c:1199 +#: main.c:1201 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "`%s' no es un nombre de variable, se busca el fichero `%s=%s'" -#: main.c:1203 +#: main.c:1205 #, c-format msgid "cannot use gawk builtin `%s' as variable name" msgstr "" "no se puede utilizar la orden interna de gawk `%s' como nombre de variable" -#: main.c:1208 +#: main.c:1210 #, c-format msgid "cannot use function `%s' as variable name" msgstr "no se puede usar la función `%s' como nombre de variable" -#: main.c:1261 +#: main.c:1263 msgid "floating point exception" msgstr "excepción de coma flotante" -#: main.c:1268 +#: main.c:1270 msgid "fatal error: internal error" msgstr "error fatal: error interno" -#: main.c:1283 +#: main.c:1285 msgid "fatal error: internal error: segfault" msgstr "error fatal: error interno: falla de segmentación" -#: main.c:1295 +#: main.c:1297 msgid "fatal error: internal error: stack overflow" msgstr "error fatal: error interno: desbordamiento de pila" -#: main.c:1345 +#: main.c:1347 #, c-format msgid "no pre-opened fd %d" msgstr "no existe el df %d abierto previamente" -#: main.c:1352 +#: main.c:1354 #, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "no se puede abrir previamente /dev/null para el df %d" -#: main.c:1375 main.c:1384 -#, c-format -msgid "could not find groups: %s" -msgstr "no se pueden encontrar los grupos: %s" - -#: msg.c:63 +#: msg.c:61 #, c-format msgid "cmd. line:" msgstr "lÃnea ord.:" -#: msg.c:107 +#: msg.c:105 msgid "error: " msgstr "error: " -#: node.c:406 +#: node.c:402 msgid "backslash at end of string" msgstr "barra invertida al final de la cadena" -#: node.c:517 +#: node.c:479 #, c-format msgid "old awk does not support the `\\%c' escape sequence" msgstr "el awk antiguo no admite la secuencia de escape `\\%c'" -#: node.c:568 +#: node.c:530 msgid "POSIX does not allow `\\x' escapes" msgstr "POSIX no permite escapes `\\x'" -#: node.c:574 +#: node.c:536 msgid "no hex digits in `\\x' escape sequence" msgstr "no hay dÃgitos hexadecimales en la secuencia de escape `\\x'" -#: node.c:596 +#: node.c:558 #, c-format msgid "" "hex escape \\x%.*s of %d characters probably not interpreted the way you " @@ -2027,12 +1933,12 @@ msgstr "" "el escape hexadecimal \\x%.*s de %d caracteres tal vez no se interprete de " "la forma esperada" -#: node.c:611 +#: node.c:573 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "la secuencia de escape `\\%c' se trata como una simple `%c'" -#: node.c:750 +#: node.c:712 msgid "" "Invalid multibyte data detected. There may be a mismatch between your data " "and your locale." @@ -2051,16 +1957,16 @@ msgstr "" msgid "%s %s `%s': could not set close-on-exec: (fcntl F_SETFD: %s)" msgstr "%s %s `%s': no se puede establecer close-on-exec: (fcntl F_SETFD: %s)" -#: profile.c:83 +#: profile.c:69 #, c-format msgid "could not open `%s' for writing: %s" msgstr "no se puede abrir `%s' para escritura: %s" -#: profile.c:85 +#: profile.c:71 msgid "sending profile to standard error" msgstr "se envÃa el perfil a la salida estándar de error" -#: profile.c:203 +#: profile.c:187 #, c-format msgid "" "\t# %s block(s)\n" @@ -2069,7 +1975,7 @@ msgstr "" "\t# bloque(s) %s\n" "\n" -#: profile.c:208 +#: profile.c:192 #, c-format msgid "" "\t# Rule(s)\n" @@ -2078,17 +1984,22 @@ msgstr "" "\t# Regla(s)\n" "\n" -#: profile.c:279 +#: profile.c:266 #, c-format msgid "internal error: %s with null vname" msgstr "error interno: %s con vname nulo" -#: profile.c:952 +#: profile.c:528 +#, fuzzy +msgid "internal error: builtin with null fname" +msgstr "error interno: %s con vname nulo" + +#: profile.c:943 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "\t# perfil de gawk, creado %s\n" -#: profile.c:1331 +#: profile.c:1321 #, c-format msgid "" "\n" @@ -2097,94 +2008,170 @@ msgstr "" "\n" "\t# Funciones, enumeradas alfabéticamente\n" -#: profile.c:1370 +#: profile.c:1359 #, c-format msgid "redir2str: unknown redirection type %d" msgstr "redir2str: tipo de redirección %d desconocida" -#: re.c:572 -#, fuzzy, c-format +#: re.c:573 +#, c-format msgid "range of the form `[%c-%c]' is locale dependent" -msgstr "el rango de la forma [%c-%c] depende del local" +msgstr "el rango de la forma `[%c-%c]' depende del local" -#: re.c:599 +#: re.c:600 #, c-format msgid "regexp component `%.*s' should probably be `[%.*s]'" msgstr "" "el componente de expresión regular `%.*s' probablemente debe ser `[%.*s]'" -#: regcomp.c:132 +#: regcomp.c:131 msgid "Success" msgstr "Éxito" -#: regcomp.c:135 +#: regcomp.c:134 msgid "No match" msgstr "No hay coincidencia" -#: regcomp.c:138 +#: regcomp.c:137 msgid "Invalid regular expression" msgstr "Expresión regular inválida" -#: regcomp.c:141 +#: regcomp.c:140 msgid "Invalid collation character" msgstr "Caracter de ordenación inválido" -#: regcomp.c:144 +#: regcomp.c:143 msgid "Invalid character class name" msgstr "Nombre de clase de caracter inválido" -#: regcomp.c:147 +#: regcomp.c:146 msgid "Trailing backslash" msgstr "Barra invertida extra al final" -#: regcomp.c:150 +#: regcomp.c:149 msgid "Invalid back reference" msgstr "Referencia hacia atrás inválida" -#: regcomp.c:153 +#: regcomp.c:152 msgid "Unmatched [ or [^" msgstr "[ o [^ desemparejados" -#: regcomp.c:156 +#: regcomp.c:155 msgid "Unmatched ( or \\(" msgstr "( o \\( desemparejados" -#: regcomp.c:159 +#: regcomp.c:158 msgid "Unmatched \\{" msgstr "\\{ desemparejado" -#: regcomp.c:162 +#: regcomp.c:161 msgid "Invalid content of \\{\\}" msgstr "Contenido inválido de \\{\\}" -#: regcomp.c:165 +#: regcomp.c:164 msgid "Invalid range end" msgstr "Final de rango inválido" -#: regcomp.c:168 +#: regcomp.c:167 msgid "Memory exhausted" msgstr "Memoria agotada" -#: regcomp.c:171 +#: regcomp.c:170 msgid "Invalid preceding regular expression" msgstr "Expresión regular precedente inválida" -#: regcomp.c:174 +#: regcomp.c:173 msgid "Premature end of regular expression" msgstr "Fin prematuro de la expresión regular" -#: regcomp.c:177 +#: regcomp.c:176 msgid "Regular expression too big" msgstr "La expresión regular es demasiado grande" -#: regcomp.c:180 +#: regcomp.c:179 msgid "Unmatched ) or \\)" msgstr ") o \\) desemparejados" -#: regcomp.c:701 +#: regcomp.c:700 msgid "No previous regular expression" msgstr "No hay una expresión regular previa" +#~ msgid "attempt to use function `%s' as an array" +#~ msgstr "se intentó usar la función `%s' como una matriz" + +#~ msgid "reference to uninitialized element `%s[\"%.*s\"]'" +#~ msgstr "referencia al elemento sin inicializar `%s[\"%.*s\"]'" + +#~ msgid "subscript of array `%s' is null string" +#~ msgstr "el subÃndice de la matriz `%s' es la cadena nula" + +#~ msgid "%s: empty (null)\n" +#~ msgstr "%s: vacÃo (nulo)\n" + +#~ msgid "%s: empty (zero)\n" +#~ msgstr "%s: vacÃo (cero)\n" + +#~ msgid "%s: table_size = %d, array_size = %d\n" +#~ msgstr "%s: tamaño_tabla = %d, tamaño_matriz = %d\n" + +#~ msgid "%s: is parameter\n" +#~ msgstr "%s: es un parámetro\n" + +#~ msgid "%s: array_ref to %s\n" +#~ msgstr "%s: array_ref a %s\n" + +#~ msgid "use of non-array as array" +#~ msgstr "uso de una matriz que no es matriz" + +#~ msgid "can't use function name `%s' as variable or array" +#~ msgstr "" +#~ "no se puede usar el nombre de la función `%s' como variable o matriz" + +#~ msgid "attempt to use array `%s[\"%.*s\"]' in a scalar context" +#~ msgstr "se intentó usar la matriz `%s[\"%.*s\"]' en un contexto escalar" + +#~ msgid "assignment used in conditional context" +#~ msgstr "se usó una asignación en un contexto condicional" + +#~ msgid "statement has no effect" +#~ msgstr "la declaración no tiene efecto" + +#~ msgid "" +#~ "for loop: array `%s' changed size from %ld to %ld during loop execution" +#~ msgstr "" +#~ "bucle for: la matriz `%s' cambió de tamaño de %ld a %ld durante la " +#~ "ejecución del bucle" + +#~ msgid "function called indirectly through `%s' does not exist" +#~ msgstr "no existe la función llamada indirectamente a través de `%s'" + +#~ msgid "function `%s' not defined" +#~ msgstr "la función `%s' no está definida" + +#~ msgid "non-redirected `getline' invalid inside `%s' rule" +#~ msgstr "`getline' no redirigido es inválido dentro de la regla `%s'" + +#~ msgid "error reading input file `%s': %s" +#~ msgstr "error al leer el fichero de entrada `%s': %s" + +#~ msgid "`nextfile' cannot be called from a `%s' rule" +#~ msgstr "`nextfile' no se puede llamar desde una regla `%s'" + +#~ msgid "`exit' cannot be called in the current context" +#~ msgstr "`exit' no se puede llamar en el contexto actual" + +#~ msgid "`next' cannot be called from a `%s' rule" +#~ msgstr "`next' no se puede llamar desde una regla `%s'" + +#~ msgid "Sorry, don't know how to interpret `%s'" +#~ msgstr "Perdón, no se cómo interpretar `%s'" + +#~ msgid "\t-R file\t\t\t--command=file\n" +#~ msgstr "\t-R fichero\t\t\t--command=fichero\n" + +#~ msgid "could not find groups: %s" +#~ msgstr "no se pueden encontrar los grupos: %s" + #~ msgid "assignment is not allowed to result of builtin function" #~ msgstr "no se permite la asignación como resultado de una función interna" @@ -1,14 +1,14 @@ # Finnish messages for gawk. -# Copyright © 2010, 2011 Free Software Foundation, Inc. +# Copyright © 2010, 2011, 2012 Free Software Foundation, Inc. # This file is distributed under the same license as the gawk package. -# Jorma Karvonen <karvonen.jorma@gmail.com>, 2010-2011. +# Jorma Karvonen <karvonen.jorma@gmail.com>, 2010-2012. # msgid "" msgstr "" -"Project-Id-Version: gawk 4.0.0\n" +"Project-Id-Version: gawk 4.0.0h\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" -"POT-Creation-Date: 2011-11-14 21:46+0200\n" -"PO-Revision-Date: 2011-09-12 12:14+0200\n" +"POT-Creation-Date: 2012-04-08 12:18+0300\n" +"PO-Revision-Date: 2012-03-13 18:00+0200\n" "Last-Translator: Jorma Karvonen <karvonen.jorma@gmail.com>\n" "Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n" "Language: fi\n" @@ -17,508 +17,465 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: array.c:140 +#: array.c:267 #, c-format msgid "from %s" msgstr "taulukosta %s" -#: array.c:248 +#: array.c:367 msgid "attempt to use a scalar value as array" msgstr "yritettiin käyttää skalaariarvoa taulukkona" -#: array.c:251 -#, c-format -msgid "attempt to use function `%s' as an array" -msgstr "yritettiin käyttää funktiota â€%s†taulukkona" - -#: array.c:254 +#: array.c:369 #, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "yritettiin käyttää skalaariparametria â€%s†taulukkona" -#: array.c:257 +#: array.c:372 #, c-format msgid "attempt to use scalar `%s' as an array" msgstr "yritettiin käyttää skalaaria â€%s†taulukkona" -#: array.c:302 array.c:707 builtin.c:84 builtin.c:1384 builtin.c:1426 -#: builtin.c:1439 builtin.c:1858 builtin.c:1870 eval.c:1135 eval.c:1139 -#: eval.c:1495 eval.c:1812 +#: array.c:419 array.c:585 builtin.c:85 builtin.c:1389 builtin.c:1431 +#: builtin.c:1444 builtin.c:1862 builtin.c:1874 eval.c:1096 eval.c:1100 +#: eval.c:1500 #, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "yritettiin käyttää taulukkoa â€%s†skalaarikontekstissa" -#: array.c:513 -#, c-format -msgid "reference to uninitialized element `%s[\"%.*s\"]'" -msgstr "viite alustamattomaan elementtiin â€%s[\"%.*s\"]â€" - -#: array.c:519 -#, c-format -msgid "subscript of array `%s' is null string" -msgstr "taulukon alaindeksi â€%s†on null-merkkijono" - -#: array.c:723 +#: array.c:592 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "delete: indeksi â€%s†ei ole taulukossa â€%sâ€" -#: array.c:734 eval.c:1865 +#: array.c:606 #, c-format msgid "attempt to use scalar `%s[\"%.*s\"]' as an array" msgstr "yritettiin käyttää skalaaria â€%s[\"%.*s\"]†taulukkona" -#: array.c:910 -#, c-format -msgid "%s: empty (null)\n" -msgstr "%s: tyhjä (null)\n" - -#: array.c:915 -#, c-format -msgid "%s: empty (zero)\n" -msgstr "%s: tyhjä (nolla)\n" - -#: array.c:919 -#, c-format -msgid "%s: table_size = %d, array_size = %d\n" -msgstr "%s: table_size = %d, array_size = %d\n" - -#: array.c:954 -#, c-format -msgid "%s: is parameter\n" -msgstr "%s: on parametri\n" - -#: array.c:958 -#, c-format -msgid "%s: array_ref to %s\n" -msgstr "%s: array_ref-viite taulukkoon %s\n" - -#: array.c:963 -msgid "adump: argument not an array" +#: array.c:794 +#, fuzzy +msgid "adump: first argument not an array" msgstr "adump: argumentti ei ole taulukko" -#: array.c:1086 +#: array.c:833 msgid "asort: second argument not an array" msgstr "asort: toinen argumentti ei ole taulukko" -#: array.c:1087 +#: array.c:834 msgid "asorti: second argument not an array" msgstr "asorti: toinen argumentti ei ole taulukko" -#: array.c:1094 +#: array.c:841 msgid "asort: first argument not an array" msgstr "asort: ensimmäinen argumentti ei ole taulukko" -#: array.c:1095 +#: array.c:842 msgid "asorti: first argument not an array" msgstr "asorti: ensimmäinen argumentti ei ole taulukko" -#: array.c:1102 +#: array.c:849 msgid "asort: cannot use a subarray of first arg for second arg" msgstr "" "asort: ei voida käyttää ensimmäisen argumentin alitaulukkoa toiselle " "argumentille" -#: array.c:1103 +#: array.c:850 msgid "asorti: cannot use a subarray of first arg for second arg" msgstr "" "asorti: ei voida käyttää ensimmäisen argumentin alitaulukkoa toiselle " "argumentille" -#: array.c:1108 +#: array.c:855 msgid "asort: cannot use a subarray of second arg for first arg" msgstr "" "asort: ei voida käyttää toisen argumentin alitaulukkoa ensimmäiselle " "argumentille" -#: array.c:1109 +#: array.c:856 msgid "asorti: cannot use a subarray of second arg for first arg" msgstr "" "asorti: ei voida käyttää toisen argumentin alitaulukkoa ensimmäiselle " "argumentille" -#: array.c:1659 +#: array.c:1329 #, c-format msgid "`%s' is invalid as a function name" msgstr "â€%s†on virheellinen funktionimenä" -#: array.c:1663 +#: array.c:1333 #, c-format msgid "sort comparison function `%s' is not defined" msgstr "lajitteluvertailufunktiota â€%s†ei ole määritelty" -#: awkgram.y:249 +#: awkgram.y:223 #, c-format msgid "%s blocks must have an action part" msgstr "%s lohkoilla on oltava toiminto-osa" -#: awkgram.y:252 +#: awkgram.y:226 msgid "each rule must have a pattern or an action part" msgstr "jokaisella säännöllä on oltava malli tai toiminto-osa" -#: awkgram.y:323 awkgram.y:334 +#: awkgram.y:295 awkgram.y:306 msgid "old awk does not support multiple `BEGIN' or `END' rules" msgstr "vanha awk ei tue useita â€BEGINâ€- tai â€ENDâ€-sääntöjä" -#: awkgram.y:371 +#: awkgram.y:343 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "â€%s†on sisäänrakennettu funktio. Sitä ei voi määritellä uudelleen" -#: awkgram.y:432 +#: awkgram.y:389 msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "" "säännöllisen lausekkeen vakio â€//†näyttää C++-kommentilta, mutta ei ole" -#: awkgram.y:436 +#: awkgram.y:393 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "" "säännöllisen lausekkeen vakio â€/%s/†näyttää C-kommentilta, mutta ei ole" -#: awkgram.y:528 +#: awkgram.y:485 #, c-format msgid "duplicate case values in switch body: %s" msgstr "kaksi samanlaista case-arvoa switch-rakenteen rungossa: %s" -#: awkgram.y:549 +#: awkgram.y:506 msgid "duplicate `default' detected in switch body" msgstr "kaksoiskappale â€default†havaittu switch-rungossa" -#: awkgram.y:809 +#: awkgram.y:766 msgid "`break' is not allowed outside a loop or switch" msgstr "â€break†ei ole sallittu silmukan tai switch-lauseen ulkopuolella" -#: awkgram.y:818 +#: awkgram.y:775 msgid "`continue' is not allowed outside a loop" msgstr "â€continue†ei ole sallittu silmukan ulkopuolella" -#: awkgram.y:828 +#: awkgram.y:785 #, c-format msgid "`next' used in %s action" msgstr "â€next†käytetty %s-toiminnossa" -#: awkgram.y:836 +#: awkgram.y:793 msgid "`nextfile' is a gawk extension" msgstr "â€nextfile†on gawk-laajennus" -#: awkgram.y:841 +#: awkgram.y:798 #, c-format msgid "`nextfile' used in %s action" msgstr "â€nextfile†käytetty %s-toiminnossa" -#: awkgram.y:865 +#: awkgram.y:822 msgid "`return' used outside function context" msgstr "â€return†käytetty funktiokontekstin ulkopuolella" -#: awkgram.y:925 +#: awkgram.y:892 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "" "pelkkä â€print†BEGIN- tai END-säännössä pitäisi luultavasti olla â€print \"\"â€" -#: awkgram.y:995 awkgram.y:999 awkgram.y:1023 +#: awkgram.y:962 awkgram.y:966 awkgram.y:990 msgid "`delete array' is a gawk extension" msgstr "â€delete array†on gawk-laajennus" -#: awkgram.y:1019 +#: awkgram.y:986 msgid "`delete(array)' is a non-portable tawk extension" msgstr "â€delete(array)†ei ole siirrettävä tawk-laajennus" -#: awkgram.y:1135 +#: awkgram.y:1102 msgid "multistage two-way pipelines don't work" msgstr "monivaiheiset kaksisuuntaiset putket eivät toimi" -#: awkgram.y:1238 +#: awkgram.y:1205 msgid "regular expression on right of assignment" msgstr "säännöllinen lauseke sijoituksen oikealla puolella" -#: awkgram.y:1249 +#: awkgram.y:1216 msgid "regular expression on left of `~' or `!~' operator" msgstr "säännöllinen lauseke â€~â€- tai â€!~â€-operaattorin vasemmalla puolella" -#: awkgram.y:1265 awkgram.y:1419 +#: awkgram.y:1232 awkgram.y:1383 msgid "old awk does not support the keyword `in' except after `for'" msgstr "vanha awk ei tue avainsanaa â€in†paitsi â€forâ€-sanan jälkeen" -#: awkgram.y:1275 +#: awkgram.y:1242 msgid "regular expression on right of comparison" msgstr "säännöllinen lauseke vertailun oikealla puolella" -#: awkgram.y:1394 +#: awkgram.y:1358 #, c-format msgid "`getline var' invalid inside `%s' rule" msgstr "â€getline var†virheellinen säännön â€%s†sisällä" -#: awkgram.y:1397 eval.c:2504 +#: awkgram.y:1361 #, c-format msgid "`getline' invalid inside `%s' rule" msgstr "â€getline†virheellinen säännön â€%s†sisällä" -#: awkgram.y:1402 +#: awkgram.y:1366 msgid "non-redirected `getline' undefined inside END action" msgstr "edelleenohjaamaton â€getline†määrittelemätön END-toiminnon sisällä" -#: awkgram.y:1421 +#: awkgram.y:1385 msgid "old awk does not support multidimensional arrays" msgstr "vanha awk ei tue moniulotteisia taulukkoja" -#: awkgram.y:1517 +#: awkgram.y:1481 msgid "call of `length' without parentheses is not portable" msgstr "â€lengthâ€-kutsu ilman sulkumerkkejä ei ole siirrettävä" -#: awkgram.y:1580 +#: awkgram.y:1545 msgid "indirect function calls are a gawk extension" msgstr "epäsuorat funktiokutsut ovat gawk-laajennus" -#: awkgram.y:1593 +#: awkgram.y:1558 #, c-format msgid "can not use special variable `%s' for indirect function call" msgstr "ei voi käyttää erikoismuuttujaa â€%s†epäsuoralle funktiokutsulle" -#: awkgram.y:1671 +#: awkgram.y:1636 msgid "invalid subscript expression" msgstr "virheellinen indeksointilauseke" -#: awkgram.y:1711 -msgid "use of non-array as array" -msgstr "ei-taulukon käyttö taulukkona" - -#: awkgram.y:1975 awkgram.y:1995 msg.c:98 +#: awkgram.y:1936 awkgram.y:1956 msg.c:96 msgid "warning: " msgstr "varoitus:" -#: awkgram.y:1993 msg.c:130 +#: awkgram.y:1954 msg.c:128 msgid "fatal: " msgstr "tuhoisa:" -#: awkgram.y:2043 +#: awkgram.y:2004 msgid "unexpected newline or end of string" msgstr "odottamaton rivinvaihto tai merkkijonon loppu" -#: awkgram.y:2300 awkgram.y:2358 awkgram.y:2542 +#: awkgram.y:2269 awkgram.y:2327 awkgram.y:2515 #, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "ei voi avata lähdetiedostoa â€%s†lukemista varten (%s)" -#: awkgram.y:2301 awkgram.y:2359 builtin.c:122 +#: awkgram.y:2270 awkgram.y:2328 builtin.c:124 msgid "reason unknown" msgstr "syy tuntematon" -#: awkgram.y:2317 +#: awkgram.y:2286 #, c-format msgid "already included source file `%s'" msgstr "on jo sisällytetty lähdetiedostoon â€%sâ€" -#: awkgram.y:2343 +#: awkgram.y:2312 msgid "@include is a gawk extension" msgstr "@include on gawk-laajennus" -#: awkgram.y:2349 +#: awkgram.y:2318 msgid "empty filename after @include" msgstr "tyhjä tiedostonimi @include:n jälkeen" -#: awkgram.y:2494 +#: awkgram.y:2467 msgid "empty program text on command line" msgstr "tyhjä ohjelmateksti komentorivillä" -#: awkgram.y:2609 +#: awkgram.y:2582 #, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "ei voi lukea lähdetiedostoa â€%s†(%s)" -#: awkgram.y:2620 +#: awkgram.y:2593 #, c-format msgid "source file `%s' is empty" msgstr "lähdetiedosto â€%s†on tyhjä" -#: awkgram.y:2805 +#: awkgram.y:2770 msgid "source file does not end in newline" msgstr "lähdetiedoston lopussa ei ole rivinvaihtoa" -#: awkgram.y:2882 +#: awkgram.y:2874 msgid "unterminated regexp ends with `\\' at end of file" msgstr "" "päättämätön säännöllinen lauseke loppuu â€\\â€-merkkeihin tiedoston lopussa" -#: awkgram.y:2906 +#: awkgram.y:2898 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "%s: %d: tawk:n regex-määre â€/.../%c†ei toimi gawk:ssa" -#: awkgram.y:2910 +#: awkgram.y:2902 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "tawkin regex-määre â€/.../%c†ei toimi gawkissa" -#: awkgram.y:2917 +#: awkgram.y:2909 msgid "unterminated regexp" msgstr "päättämätön säännöllinen lauseke" -#: awkgram.y:2921 +#: awkgram.y:2913 msgid "unterminated regexp at end of file" msgstr "päättämätön säännöllinen lauseke tiedoston lopussa" -#: awkgram.y:2980 +#: awkgram.y:2972 msgid "use of `\\ #...' line continuation is not portable" msgstr "â€\\ #...â€-rivijatkamisen käyttö ei ole siirrettävä" -#: awkgram.y:2996 +#: awkgram.y:2988 msgid "backslash not last character on line" msgstr "kenoviiva ei ole rivin viimeinen merkki" -#: awkgram.y:3057 +#: awkgram.y:3049 msgid "POSIX does not allow operator `**='" msgstr "POSIX ei salli operaattoria â€**=â€" -#: awkgram.y:3059 +#: awkgram.y:3051 msgid "old awk does not support operator `**='" msgstr "vanha awk ei tue operaattoria â€**=â€" -#: awkgram.y:3068 +#: awkgram.y:3060 msgid "POSIX does not allow operator `**'" msgstr "POSIX ei salli operaattoria â€**â€" -#: awkgram.y:3070 +#: awkgram.y:3062 msgid "old awk does not support operator `**'" msgstr "vanha awk ei tue operaattoria â€**â€" -#: awkgram.y:3105 +#: awkgram.y:3097 msgid "operator `^=' is not supported in old awk" msgstr "operaattoria â€^=†ei tueta vanhassa awk:ssa" -#: awkgram.y:3113 +#: awkgram.y:3105 msgid "operator `^' is not supported in old awk" msgstr "operaattoria â€^†ei tueta vanhassa awk:ssa" -#: awkgram.y:3206 awkgram.y:3222 +#: awkgram.y:3198 awkgram.y:3214 msgid "unterminated string" msgstr "päättämätön merkkijono" -#: awkgram.y:3418 +#: awkgram.y:3410 #, c-format msgid "invalid char '%c' in expression" msgstr "virheellinen merkki ’%c’ lausekkeessa" -#: awkgram.y:3465 +#: awkgram.y:3457 #, c-format msgid "`%s' is a gawk extension" msgstr "â€%s†on gawk-laajennus" -#: awkgram.y:3470 +#: awkgram.y:3462 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "â€%s†on Bell Labs -laajennus" -#: awkgram.y:3475 +#: awkgram.y:3467 #, c-format msgid "POSIX does not allow `%s'" msgstr "POSIX ei salli operaattori â€%sâ€" -#: awkgram.y:3483 +#: awkgram.y:3475 #, c-format msgid "`%s' is not supported in old awk" msgstr "â€%s†ei ole tuettu vanhassa awk-ohjelmassa" -#: awkgram.y:3550 +#: awkgram.y:3542 msgid "`goto' considered harmful!\n" msgstr "â€gotoâ€-käskyä pidetään haitallisena!\n" -#: awkgram.y:3601 +#: awkgram.y:3576 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "%d on virheellinen argumenttilukumäärä operaattorille %s" -#: awkgram.y:3636 +#: awkgram.y:3611 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "" "%s: merkkijonoliteraalilla ei ole vaikutusta korvauksen viimeisenä " "argumenttina" -#: awkgram.y:3641 +#: awkgram.y:3616 #, c-format msgid "%s third parameter is not a changeable object" msgstr "%s kolmas parametri ei ole vaihdettava objekti" -#: awkgram.y:3714 awkgram.y:3717 +#: awkgram.y:3689 awkgram.y:3692 msgid "match: third argument is a gawk extension" msgstr "match: kolmas argumentti on gawk-laajennus" -#: awkgram.y:3771 awkgram.y:3774 +#: awkgram.y:3746 awkgram.y:3749 msgid "close: second argument is a gawk extension" msgstr "close: toinen argumentti on gawk-laajennus" -#: awkgram.y:3786 +#: awkgram.y:3761 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "dcgettext(_\"...\")-käyttö on virheellinen: poista alaviiva alusta" -#: awkgram.y:3801 +#: awkgram.y:3776 msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "dcngettext(_\"...\")-käyttö on virheellinen: poista alaviiva alusta" -#: awkgram.y:3893 -#, c-format -msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" -msgstr "funktio â€%sâ€: parametri #%d, â€%sâ€, samanlainen parametri #%d" - -#: awkgram.y:3935 +#: awkgram.y:3842 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "funktio â€%sâ€: parametri â€%s†varjostaa yleismuuttujaa" -#: awkgram.y:4093 +#: awkgram.y:3885 #, c-format msgid "could not open `%s' for writing (%s)" msgstr "ei voitu avata tiedostoa â€%s†kirjoittamista varten (%s)" -#: awkgram.y:4094 +#: awkgram.y:3886 msgid "sending variable list to standard error" msgstr "lähetetään muuttujaluettelo vakiovirheeseen" -#: awkgram.y:4100 +#: awkgram.y:3894 #, c-format msgid "%s: close failed (%s)" msgstr "%s: sulkeminen epäonnistui (%s)" -#: awkgram.y:4152 +#: awkgram.y:3919 msgid "shadow_funcs() called twice!" msgstr "shadow_funcs() kutsuttu kahdesti!" -#: awkgram.y:4158 +#: awkgram.y:3927 msgid "there were shadowed variables." msgstr "siellä oli varjostettuja muuttujia." -#: awkgram.y:4188 +#: awkgram.y:3998 +#, c-format +msgid "function name `%s' previously defined" +msgstr "funktionimi â€%s†on jo aikaisemmin määritelty" + +#: awkgram.y:4044 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "funktio â€%sâ€: ei voi käyttää funktionimeä parametrinimenä" -#: awkgram.y:4192 +#: awkgram.y:4047 #, c-format msgid "function `%s': can't use special variable `%s' as a function parameter" msgstr "funktio â€%sâ€: ei voi käyttää erikoismuuttujaa â€%s†funktioparametrina" -#: awkgram.y:4208 +#: awkgram.y:4055 #, c-format -msgid "function name `%s' previously defined" -msgstr "funktionimi â€%s†on jo aikaisemmin määritelty" +msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" +msgstr "funktio â€%sâ€: parametri #%d, â€%sâ€, samanlainen parametri #%d" -#: awkgram.y:4376 awkgram.y:4382 +#: awkgram.y:4134 awkgram.y:4140 #, c-format msgid "function `%s' called but never defined" msgstr "funktiota â€%s†kutsuttiin, mutta sitä ei ole koskaan määritelty" -#: awkgram.y:4385 +#: awkgram.y:4143 #, c-format msgid "function `%s' defined but never called directly" msgstr "funktio â€%s†määriteltiin, mutta sitä ei ole koskaan kutsuttu suoraan" -#: awkgram.y:4417 +#: awkgram.y:4175 #, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "säännöllisen lausekkeen vakio parametrille #%d antaa boolean-arvon" -#: awkgram.y:4526 +#: awkgram.y:4221 #, c-format msgid "" "function `%s' called with space between name and `(',\n" @@ -527,235 +484,235 @@ msgstr "" "funktio â€%s†kutsuttu välilyönnillä nimen ja â€(â€-merkin\n" "välillä, tai käytetty muuttujana tai taulukkona" -#: awkgram.y:4773 eval.c:2056 +#: awkgram.y:4429 msgid "division by zero attempted" msgstr "nollalla jakoa yritettiin" -#: awkgram.y:4782 eval.c:2072 +#: awkgram.y:4438 #, c-format msgid "division by zero attempted in `%%'" msgstr "jakoa nollalla yritettiin operaattorissa â€%%â€" # kohteena voi olla vakiotuloste tai joku muu -#: builtin.c:120 +#: builtin.c:122 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "%s kohteeseen â€%s†epäonnistui (%s)" -#: builtin.c:121 +#: builtin.c:123 msgid "standard output" msgstr "vakiotuloste" -#: builtin.c:135 +#: builtin.c:137 msgid "exp: received non-numeric argument" msgstr "exp: vastaanotettu argumentti ei ole numeerinen" -#: builtin.c:141 +#: builtin.c:143 #, c-format msgid "exp: argument %g is out of range" msgstr "exp: argumentti %g on lukualueen ulkopuolella" -#: builtin.c:200 +#: builtin.c:202 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "" "fflush: ei voi tyhjentää: putki â€%s†avattu lukemista varten, ei " "kirjoittamiseen" -#: builtin.c:203 +#: builtin.c:205 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "" "fflush: ei voi tyhjentää: tiedosto â€%s†avattu lukemista varten, ei " "kirjoittamiseen" -#: builtin.c:215 +#: builtin.c:217 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "fflush: â€%s†ei ole avoin tiedosto, putki tai apuprosessi" -#: builtin.c:333 +#: builtin.c:335 msgid "index: received non-string first argument" msgstr "index: ensimmäinen vastaanotettu argumentti ei ole merkkijono" -#: builtin.c:335 +#: builtin.c:337 msgid "index: received non-string second argument" msgstr "index: toinen vastaanotettu argumentti ei ole merkkijono" -#: builtin.c:457 +#: builtin.c:461 msgid "int: received non-numeric argument" msgstr "int: vastaanotettu argumentti ei ole numeerinen" -#: builtin.c:493 +#: builtin.c:497 msgid "length: received array argument" msgstr "length: vastaanotettu taulukkoargumentti" -#: builtin.c:496 +#: builtin.c:500 msgid "`length(array)' is a gawk extension" msgstr "â€length(array)†on gawk-laajennus" -#: builtin.c:504 +#: builtin.c:508 msgid "length: received non-string argument" msgstr "length: vastaanotettu argumentti ei ole merkkijono" -#: builtin.c:535 +#: builtin.c:539 msgid "log: received non-numeric argument" msgstr "log: vastaanotettu argumentti ei ole numeerinen" -#: builtin.c:538 +#: builtin.c:542 #, c-format msgid "log: received negative argument %g" msgstr "log: vastaanotettu negatiivinen argumentti %g" -#: builtin.c:694 builtin.c:699 +#: builtin.c:698 builtin.c:703 msgid "fatal: must use `count$' on all formats or none" msgstr "kohtalokas: on käytettävä â€count$†kaikilla muodoilla tai ei missään" -#: builtin.c:761 +#: builtin.c:766 #, c-format msgid "field width is ignored for `%%' specifier" msgstr "kenttäleveys ohitetaan â€%%%%â€-määritteelle" -#: builtin.c:763 +#: builtin.c:768 #, c-format msgid "precision is ignored for `%%' specifier" msgstr "tarkkuus ohitetaan â€%%%%â€-määritteelle" -#: builtin.c:765 +#: builtin.c:770 #, c-format msgid "field width and precision are ignored for `%%' specifier" msgstr "kenttäleveys ja tarkkuus ohitetaan â€%%%%â€-määritteelle" -#: builtin.c:816 +#: builtin.c:821 msgid "fatal: `$' is not permitted in awk formats" msgstr "kohtalokas: â€$â€-argumentti ei ole sallittu awk-muodoissa" -#: builtin.c:825 +#: builtin.c:830 msgid "fatal: arg count with `$' must be > 0" msgstr "kohtalokas: argumenttilukumäärän argumentilla â€$†on oltava > 0" -#: builtin.c:829 +#: builtin.c:834 #, c-format msgid "fatal: arg count %ld greater than total number of supplied arguments" msgstr "" "kohtalokas: argumenttilukumäärä %ld on suurempi kuin toimitettujen " "argumenttien lukumäärä" -#: builtin.c:833 +#: builtin.c:838 msgid "fatal: `$' not permitted after period in format" msgstr "kohtalokas: â€$â€-argumentti ei ole sallittu pisteen jälkeen muodossa" -#: builtin.c:849 +#: builtin.c:854 msgid "fatal: no `$' supplied for positional field width or precision" msgstr "" "kohtalokas: ei â€$â€-argumenttia tarjottu sijantikenttäleveydelle tai " "tarkkuudelle" -#: builtin.c:920 +#: builtin.c:925 msgid "`l' is meaningless in awk formats; ignored" msgstr "â€l†on merkityksetön awk-muodoissa; ohitetaan" -#: builtin.c:924 +#: builtin.c:929 msgid "fatal: `l' is not permitted in POSIX awk formats" msgstr "kohtalokas: â€l†ei ole sallittu POSIX awk -muodoissa" -#: builtin.c:937 +#: builtin.c:942 msgid "`L' is meaningless in awk formats; ignored" msgstr "â€L†on merkityksetön awk-muodoissa; ohitetaan" -#: builtin.c:941 +#: builtin.c:946 msgid "fatal: `L' is not permitted in POSIX awk formats" msgstr "kohtalokas: â€L†ei ole sallittu POSIX awk -muodoissa" -#: builtin.c:954 +#: builtin.c:959 msgid "`h' is meaningless in awk formats; ignored" msgstr "â€h†on merkityksetön awk-muodoissa; ohitetaan" -#: builtin.c:958 +#: builtin.c:963 msgid "fatal: `h' is not permitted in POSIX awk formats" msgstr "kohtalokas: â€h†ei ole sallittu POSIX awk -muodoissa" -#: builtin.c:1271 +#: builtin.c:1276 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "[s]printf: arvo %g on lukualueen ulkopuolella â€%%%câ€-muodolle" -#: builtin.c:1331 +#: builtin.c:1336 #, c-format msgid "ignoring unknown format specifier character `%c': no argument converted" msgstr "" "ohitetaan tuntematon muotoargumenttimerkki â€%câ€: ei muunnettu argumenttia" -#: builtin.c:1336 +#: builtin.c:1341 msgid "fatal: not enough arguments to satisfy format string" msgstr "kohtalokas: ei kylliksi argumentteja muotomerkkijonon tyydyttämiseksi" -#: builtin.c:1338 +#: builtin.c:1343 msgid "^ ran out for this one" msgstr "^ tällainen loppui kesken" -#: builtin.c:1345 +#: builtin.c:1350 msgid "[s]printf: format specifier does not have control letter" msgstr "[s]printf: muotoargumentilla ei ole ohjauskirjainta" -#: builtin.c:1348 +#: builtin.c:1353 msgid "too many arguments supplied for format string" msgstr "muotomerkkijonoon toimitettu liian monta argumenttia" -#: builtin.c:1422 builtin.c:1433 +#: builtin.c:1427 builtin.c:1438 msgid "printf: no arguments" msgstr "printf: ei argumentteja" -#: builtin.c:1474 +#: builtin.c:1479 msgid "sqrt: received non-numeric argument" msgstr "sqrt: vastaanotettu argumentti ei ole numeerinen" -#: builtin.c:1478 +#: builtin.c:1483 #, c-format msgid "sqrt: called with negative argument %g" msgstr "sqrt: kutsuttu negatiivisella argumentilla %g" -#: builtin.c:1502 +#: builtin.c:1507 #, c-format msgid "substr: length %g is not >= 1" msgstr "substr: pituus %g ei ole >= 1" -#: builtin.c:1504 +#: builtin.c:1509 #, c-format msgid "substr: length %g is not >= 0" msgstr "substr: pituus %g ei ole >= 0" -#: builtin.c:1511 +#: builtin.c:1516 #, c-format msgid "substr: non-integer length %g will be truncated" msgstr "substr: typistetään pituus %g, joka ei ole kokonaisluku" -#: builtin.c:1516 +#: builtin.c:1521 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "" "substr: pituus %g liian suuri merkkijononindeksointiin, typistetään arvoon %g" -#: builtin.c:1528 +#: builtin.c:1533 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "substr: aloitusindeksi %g on virheellinen, käytetään 1:tä" -#: builtin.c:1533 +#: builtin.c:1538 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "substr: typistetään aloitusindeksi %g, joka ei ole kokonaisluku" -#: builtin.c:1558 +#: builtin.c:1563 msgid "substr: source string is zero length" msgstr "substr: lähdemerkkijono on nollapituinen" -#: builtin.c:1574 +#: builtin.c:1579 #, c-format msgid "substr: start index %g is past end of string" msgstr "substr: aloitusindeksi %g on merkkijonon lopun jälkeen" -#: builtin.c:1582 +#: builtin.c:1587 #, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" @@ -763,228 +720,225 @@ msgstr "" "substr: pituus %g alkuindeksissä %g ylittää ensimmäisen argumentin pituuden " "(%lu)" -#: builtin.c:1656 +#: builtin.c:1661 msgid "strftime: format value in PROCINFO[\"strftime\"] has numeric type" msgstr "" "strftime: muotoarvolla kohteessa PROCINFO[\"strftime\"] on numerotyyppi" -#: builtin.c:1679 +#: builtin.c:1684 msgid "strftime: received non-numeric second argument" msgstr "strftime: toinen vastaanotettu argumentti ei ole numeerinen" -#: builtin.c:1682 +#: builtin.c:1687 msgid "strftime: second argument less than 0 or too big for time_t" msgstr "" +"strftime: toinen argumentti on pienempi kuin 0 tai liian suuri time_t-" +"rakenteeseen" -#: builtin.c:1689 +#: builtin.c:1694 msgid "strftime: received non-string first argument" msgstr "strftime: ensimmäinen vastaanotettu argumentti ei ole merkkijono" -#: builtin.c:1695 +#: builtin.c:1701 msgid "strftime: received empty format string" msgstr "strftime: vastaanotettu tyhjä muotomerkkijono" -#: builtin.c:1761 +#: builtin.c:1767 msgid "mktime: received non-string argument" msgstr "mktime: vastaanotettu argumentti ei ole merkkijono" -#: builtin.c:1778 +#: builtin.c:1784 msgid "mktime: at least one of the values is out of the default range" msgstr "mktime: vähintään yksi arvoista on oletuslukualueen ulkopuolella" -#: builtin.c:1813 +#: builtin.c:1819 msgid "'system' function not allowed in sandbox mode" msgstr "â€systemâ€-funktio ei ole sallittu hiekkalaatikkotilassa" -#: builtin.c:1818 +#: builtin.c:1824 msgid "system: received non-string argument" msgstr "system: vastaanotettu argumentti ei ole merkkijono" -#: builtin.c:1873 eval.c:1159 eval.c:1790 eval.c:1803 -#, c-format -msgid "reference to uninitialized variable `%s'" -msgstr "viite alustamattomaan muuttujaan â€%sâ€" - -#: builtin.c:1940 +#: builtin.c:1942 #, c-format msgid "reference to uninitialized field `$%d'" msgstr "viite alustamattomaan kenttään â€$%dâ€" -#: builtin.c:2027 +#: builtin.c:2029 msgid "tolower: received non-string argument" msgstr "tolower: vastaanotettu argumentti ei ole merkkijono" -#: builtin.c:2061 +#: builtin.c:2063 msgid "toupper: received non-string argument" msgstr "toupper: vastaanotettu argumentti ei ole merkkijono" -#: builtin.c:2097 +#: builtin.c:2099 msgid "atan2: received non-numeric first argument" msgstr "atan2: ensimmäinen vastaanotettu argumentti ei ole numeerinen" -#: builtin.c:2099 +#: builtin.c:2101 msgid "atan2: received non-numeric second argument" msgstr "atan2: toinen vastaanotettu argumentti ei ole numeerinen" -#: builtin.c:2118 +#: builtin.c:2120 msgid "sin: received non-numeric argument" msgstr "sin: vastaanotettu argumentti ei ole numeerinen" -#: builtin.c:2134 +#: builtin.c:2136 msgid "cos: received non-numeric argument" msgstr "cos: vastaanotettu argumentti ei ole numeerinen" -#: builtin.c:2187 +#: builtin.c:2189 msgid "srand: received non-numeric argument" msgstr "srand: vastaanotettu argumentti ei ole numeerinen" -#: builtin.c:2218 +#: builtin.c:2220 msgid "match: third argument is not an array" msgstr "match: kolmas argumentti ei ole taulukko" -#: builtin.c:2482 +#: builtin.c:2484 msgid "gensub: third argument of 0 treated as 1" msgstr "gensub: 0-arvoinen kolmas argumentti käsitellään kuin 1" -#: builtin.c:2775 +#: builtin.c:2777 msgid "lshift: received non-numeric first argument" msgstr "lshift: ensimmäinen vastaanotettu argumentti ei ole numeerinen" -#: builtin.c:2777 +#: builtin.c:2779 msgid "lshift: received non-numeric second argument" msgstr "lshift: toinen vastaanotettu argumentti ei ole numeerinen" -#: builtin.c:2783 +#: builtin.c:2785 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "lshift(%lf, %lf): negatiiviset arvot antavat outoja tuloksia" -#: builtin.c:2785 +#: builtin.c:2787 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "lshift(%lf, %lf): jaosarvot typistetään" -#: builtin.c:2787 +#: builtin.c:2789 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "lshift(%lf, %lf): liian suuri siirrosarvo antaa outoja tuloksia" -#: builtin.c:2812 +#: builtin.c:2814 msgid "rshift: received non-numeric first argument" msgstr "rshift: ensimmäinen vastaanotettu argumentti ei ole numeerinen" -#: builtin.c:2814 +#: builtin.c:2816 msgid "rshift: received non-numeric second argument" msgstr "rshift: toinen vastaanotettu argumentti ei ole numeerinen" -#: builtin.c:2820 +#: builtin.c:2822 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "rshift(%lf, %lf): negatiiviset arvot antavat outoja tuloksia" -#: builtin.c:2822 +#: builtin.c:2824 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "rshift(%lf, %lf): jaosarvot typistetään" -#: builtin.c:2824 +#: builtin.c:2826 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "rshift(%lf, %lf): liian suuri siirrosarvo antaa outoja tuloksia" -#: builtin.c:2849 +#: builtin.c:2851 msgid "and: received non-numeric first argument" msgstr "and: ensimmäinen vastaanotettu argumentti ei ole numeerinen" -#: builtin.c:2851 +#: builtin.c:2853 msgid "and: received non-numeric second argument" msgstr "and: toinen vastaanotettu argumentti ei ole numeerinen" -#: builtin.c:2857 +#: builtin.c:2859 #, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "and(%lf, %lf): negatiiviset arvot antavat outoja tuloksia" -#: builtin.c:2859 +#: builtin.c:2861 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "and(%lf, %lf): jaosarvot typistetään" -#: builtin.c:2884 +#: builtin.c:2886 msgid "or: received non-numeric first argument" msgstr "or: ensimmäinen vastaanotettu argumentti ei ole numeerinen" -#: builtin.c:2886 +#: builtin.c:2888 msgid "or: received non-numeric second argument" msgstr "or: toinen vastaanotettu argumentti ei ole numeerinen" -#: builtin.c:2892 +#: builtin.c:2894 #, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "or(%lf, %lf): negatiiviset arvot antavat outoja tuloksia" -#: builtin.c:2894 +#: builtin.c:2896 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "or(%lf, %lf): jaosarvot typistetään" -#: builtin.c:2922 +#: builtin.c:2924 msgid "xor: received non-numeric first argument" msgstr "xor: ensimmäinen vastaanotettu argumentti ei ole numeerinen" -#: builtin.c:2924 +#: builtin.c:2926 msgid "xor: received non-numeric second argument" msgstr "xor: toinen vastaanotettu argumentti ei ole numeerinen" -#: builtin.c:2930 +#: builtin.c:2932 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "xor(%lf, %lf): negatiiviset arvot antavat outoja tuloksia" -#: builtin.c:2932 +#: builtin.c:2934 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "xor(%lf, %lf): jaosarvot typistetään" -#: builtin.c:2956 builtin.c:2962 +#: builtin.c:2958 builtin.c:2964 msgid "compl: received non-numeric argument" msgstr "compl: vastaanotettu argumentti ei ole numeerinen" -#: builtin.c:2964 +#: builtin.c:2966 #, c-format msgid "compl(%lf): negative value will give strange results" msgstr "compl(%lf): negatiiviset arvot antavat outoja tuloksia" -#: builtin.c:2966 +#: builtin.c:2968 #, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "compl(%lf): jaosarvo typistetään" -#: builtin.c:3135 +#: builtin.c:3137 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "dcgettext: â€%s†ei ole kelvollinen paikallinen kategoria" -#: eval.c:412 +#: eval.c:393 #, c-format msgid "unknown nodetype %d" msgstr "tuntematon solmutyyppi %d" -#: eval.c:423 eval.c:437 +#: eval.c:404 eval.c:418 #, c-format msgid "unknown opcode %d" msgstr "tuntematon käskykoodi %d" -#: eval.c:434 +#: eval.c:415 #, c-format msgid "opcode %s not an operator or keyword" msgstr "käskykoodi %s ei ole operaattori tai avainsana" -#: eval.c:488 +#: eval.c:468 msgid "buffer overflow in genflags2str" msgstr "puskurin ylivuoto funktiossa genflags2str" -#: eval.c:698 +#: eval.c:678 #, c-format msgid "" "\n" @@ -995,217 +949,165 @@ msgstr "" "\t# Funktiokutsupino:\n" "\n" -#: eval.c:725 +#: eval.c:706 msgid "`IGNORECASE' is a gawk extension" msgstr "â€IGNORECASE†on gawk-laajennus" -#: eval.c:754 +#: eval.c:736 msgid "`BINMODE' is a gawk extension" msgstr "â€BINMODE†on gawk-laajennus" -#: eval.c:812 +#: eval.c:794 #, c-format msgid "BINMODE value `%s' is invalid, treated as 3" msgstr "BINMODE-arvo â€%s†on virheellinen, käsiteltiin arvona 3" -#: eval.c:902 +#: eval.c:887 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "väärä â€%sFMTâ€-määritys â€%sâ€" -#: eval.c:980 +#: eval.c:969 msgid "turning off `--lint' due to assignment to `LINT'" msgstr "käännetään pois â€--lintâ€-valitsin â€LINTâ€-sijoituksen vuoksi" -#: eval.c:1127 eval.c:1777 -#, c-format -msgid "can't use function name `%s' as variable or array" -msgstr "funktionimeä â€%s†ei voi käyttää muuttujana tai taulukkona" - -#: eval.c:1158 eval.c:1789 eval.c:1802 +#: eval.c:1119 #, c-format msgid "reference to uninitialized argument `%s'" msgstr "viite alustamattomaan argumenttiin â€%sâ€" -#: eval.c:1177 +#: eval.c:1120 +#, c-format +msgid "reference to uninitialized variable `%s'" +msgstr "viite alustamattomaan muuttujaan â€%sâ€" + +#: eval.c:1138 msgid "attempt to field reference from non-numeric value" msgstr "yritettiin kenttäviitettä arvosta, joka ei ole numeerinen" -#: eval.c:1179 +#: eval.c:1140 msgid "attempt to field reference from null string" msgstr "yritettiin kenttäviitettä null-merkkijonosta" -#: eval.c:1185 +#: eval.c:1146 #, c-format msgid "attempt to access field %ld" msgstr "yritettiin saantia kenttään %ld" -#: eval.c:1194 +#: eval.c:1155 #, c-format msgid "reference to uninitialized field `$%ld'" msgstr "viite alustamattomaan kenttään â€$%ldâ€" -#: eval.c:1256 +#: eval.c:1242 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "funktio â€%s†kutsuttiin useammalla argumentilla kuin esiteltiin" -#: eval.c:1437 +#: eval.c:1436 #, c-format msgid "unwind_stack: unexpected type `%s'" msgstr "unwind_stack: odottamaton tyyppi â€%sâ€" -#: eval.c:1532 +#: eval.c:1536 msgid "division by zero attempted in `/='" msgstr "jakoa nollalla yritettiin operaatiossa â€/=â€" -#: eval.c:1539 +#: eval.c:1543 #, c-format msgid "division by zero attempted in `%%='" msgstr "jakoa nollalla yritettiin operaatiossa â€%%=â€" -#: eval.c:1876 eval.c:2122 -#, c-format -msgid "attempt to use array `%s[\"%.*s\"]' in a scalar context" -msgstr "yritettiin käyttää taulukkoa â€%s[\"%.*s\"]†skalaarikontekstissa" - -#: eval.c:1907 -msgid "assignment used in conditional context" -msgstr "sijoitusta käytetty ehdollisessa kontekstissa" - -#: eval.c:1911 -msgid "statement has no effect" -msgstr "käskyllä ei ole vaikutusta" - -#: eval.c:2343 -#, c-format -msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" -msgstr "" -"for-silmukka: taulukon â€%s†koko muuttui arvosta %ld arvoon %ld silmukan " -"suorituksen aikana" - -#: eval.c:2458 -#, c-format -msgid "function called indirectly through `%s' does not exist" -msgstr "kohteen â€%s†kautta epäsuorasti kutsuttu funktio ei ole olemassa" - -#: eval.c:2470 -#, c-format -msgid "function `%s' not defined" -msgstr "funktio â€%s†ei ole määritelty" - -#: eval.c:2511 -#, c-format -msgid "non-redirected `getline' invalid inside `%s' rule" -msgstr "edelleenohjaamaton â€getline†virheellinen â€%sâ€-säännön sisällä" - -#: eval.c:2600 -#, c-format -msgid "error reading input file `%s': %s" -msgstr "virhe luettaessa syötetiedostoa â€%sâ€: %s" - -#: eval.c:2614 -#, c-format -msgid "`nextfile' cannot be called from a `%s' rule" -msgstr "â€nextfile†ei voida kutsua â€%sâ€-säännöstä" - -#: eval.c:2694 -#, c-format -msgid "`next' cannot be called from a `%s' rule" -msgstr "â€next†ei voida kutsua â€%sâ€-säännöstä" - -#: eval.c:2760 -#, c-format -msgid "Sorry, don't know how to interpret `%s'" -msgstr "Ei osata tulkita kohdetta â€%sâ€" - -#: ext.c:64 +#: ext.c:70 msgid "extensions are not allowed in sandbox mode" msgstr "laajennuksia ei sallita hiekkalaatikkotilassa" -#: ext.c:70 ext.c:75 +#: ext.c:73 msgid "`extension' is a gawk extension" msgstr "â€extension†on gawk-laajennus" -#: ext.c:85 -#, c-format -msgid "fatal: extension: cannot open `%s' (%s)\n" +#: ext.c:80 +#, fuzzy, c-format +msgid "extension: cannot open library `%s' (%s)\n" msgstr "tuhoisa: extension: ei voi avata solmua â€%s†(%s)\n" -#: ext.c:94 -#, c-format +#: ext.c:86 +#, fuzzy, c-format msgid "" -"fatal: extension: library `%s': does not define " -"`plugin_is_GPL_compatible' (%s)\n" +"extension: library `%s': does not define `plugin_is_GPL_compatible' (%s)\n" msgstr "" "tuhoisa: extension: kirjasto â€%sâ€: ei määrittele " "â€plugin_is_GPL_compatible†(%s)\n" -#: ext.c:103 -#, c-format -msgid "fatal: extension: library `%s': cannot call function `%s' (%s)\n" +#: ext.c:91 +#, fuzzy, c-format +msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "tuhoisa: extension: kirjasto â€%sâ€: ei voi kutsua funktiota â€%s†(%s)\n" -#: ext.c:137 +#: ext.c:119 msgid "extension: missing function name" msgstr "extension: puuttuva funktionimi" -#: ext.c:142 +#: ext.c:124 #, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "extension: virheellinen merkki â€%c†funktionimessä â€%sâ€" -#: ext.c:151 +#: ext.c:132 #, c-format msgid "extension: can't redefine function `%s'" msgstr "extension: ei voi määritellä uudelleen funktiota â€%sâ€" -#: ext.c:155 +#: ext.c:136 #, c-format msgid "extension: function `%s' already defined" msgstr "extension: funktio â€%s†on jo määritelty" -#: ext.c:160 +#: ext.c:140 #, c-format msgid "extension: function name `%s' previously defined" msgstr "extension: funktionimi â€%s†on määritelty jo aiemmin" -#: ext.c:162 +#: ext.c:142 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "" "extension: ei voi käyttää gawk-ohjelman sisäistä muuttujanimeä â€%s†" "funktionimenä" -#: ext.c:166 +#: ext.c:145 #, c-format msgid "make_builtin: negative argument count for function `%s'" msgstr "make_builtin: negatiivinen argumenttilukumäärä funktiolle â€%sâ€" -#: ext.c:269 +#: ext.c:207 #, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "funktio â€%s†on määritelty ottamaan enemmän kuin %d argumenttia" -#: ext.c:272 +#: ext.c:210 #, c-format msgid "function `%s': missing argument #%d" msgstr "function â€%sâ€: puuttuva argumentti #%d" -#: ext.c:289 +#: ext.c:227 #, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "funktio â€%sâ€: argumentti #%d: yritettiin käyttää skalaaria taulukkona" -#: ext.c:293 +#: ext.c:231 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "funktio â€%sâ€: argumentti #%d: yritettiin käyttää taulukkoa skalaarina" -#: ext.c:306 +#: ext.c:245 msgid "Operation Not Supported" msgstr "Toimintoa ei tueta" +#: ext.c:257 +msgid "dynamic loading of library not supported" +msgstr "" + #: field.c:328 msgid "NF set to negative value" msgstr "NF asetettu negatiiviseen arvoon" @@ -1273,546 +1175,556 @@ msgstr "" "patsplit: ei voida käyttää neljännen argumentin alitaulukkoa toiselle " "argumentille" -#: field.c:1110 +#: field.c:1111 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "â€FIELDWIDTHS†on gawk-laajennus" -#: field.c:1173 +#: field.c:1175 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "virheellinen FIELDWIDTHS-arvo, lähellä â€%sâ€" -#: field.c:1246 +#: field.c:1248 msgid "null string for `FS' is a gawk extension" msgstr "null-merkkijono â€FSâ€-kenttäerotinmuuttujalle on gawk-laajennus" -#: field.c:1250 +#: field.c:1252 msgid "old awk does not support regexps as value of `FS'" msgstr "vanha awk ei tue regexp-arvoja â€FSâ€-kenttäerotinmuuttujana" -#: field.c:1369 +#: field.c:1371 msgid "`FPAT' is a gawk extension" msgstr "â€FPAT†on gawk-laajennus" -#: getopt.c:574 getopt.c:590 -#, c-format -msgid "%s: option '%s' is ambiguous\n" +#: getopt.c:604 getopt.c:633 +#, fuzzy, c-format +msgid "%s: option '%s' is ambiguous; possibilities:" msgstr "%s: valitsin ’%s’ ei ole yksiselitteinen\n" -#: getopt.c:623 getopt.c:627 +#: getopt.c:679 getopt.c:683 #, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: valitsin ’--%s’ ei salli argumenttia\n" -#: getopt.c:636 getopt.c:641 +#: getopt.c:692 getopt.c:697 #, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: valitsin ’%c%s’ ei salli argumenttia\n" -#: getopt.c:684 getopt.c:703 +#: getopt.c:740 getopt.c:759 #, c-format msgid "%s: option '--%s' requires an argument\n" msgstr "%s: valitsin ’--%s’ vaatii argumentin\n" -#: getopt.c:741 getopt.c:744 +#: getopt.c:797 getopt.c:800 #, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: tunnistamaton valitsin ’--%s’\n" -#: getopt.c:752 getopt.c:755 +#: getopt.c:808 getopt.c:811 #, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: tunnistamaton valitsin ’%c%s’\n" -#: getopt.c:804 getopt.c:807 +#: getopt.c:860 getopt.c:863 #, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: virheellinen valitsin -- ’%c’\n" -#: getopt.c:857 getopt.c:874 getopt.c:1082 getopt.c:1100 +#: getopt.c:916 getopt.c:933 getopt.c:1143 getopt.c:1161 #, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: valitsin vaatii argumentin -- ’%c’\n" -#: getopt.c:930 getopt.c:946 +#: getopt.c:989 getopt.c:1005 #, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: valitsin ’-W %s’ ei ole yksiselitteinen\n" -#: getopt.c:970 getopt.c:988 +#: getopt.c:1029 getopt.c:1047 #, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: valitsin ’-W %s’ ei salli argumenttia\n" -#: getopt.c:1009 getopt.c:1027 +#: getopt.c:1068 getopt.c:1086 #, c-format msgid "%s: option '-W %s' requires an argument\n" msgstr "%s: valitsin ’-W %s’ vaatii argumentin\n" -#: io.c:280 +#: io.c:315 #, c-format msgid "command line argument `%s' is a directory: skipped" msgstr "komentoriviargumentti â€%s†on hakemisto: ohitettiin" -#: io.c:283 io.c:385 +#: io.c:318 io.c:421 #, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "ei voi avata tiedostoa â€%s†lukemista varten (%s)" -#: io.c:501 +#: io.c:537 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "tiedostomäärittelijän %d (â€%sâ€) sulkeminen epäonnistui (%s)" -#: io.c:578 +#: io.c:614 msgid "redirection not allowed in sandbox mode" msgstr "edelleenohjaus ei ole sallittua hiekkalaatikkotilassa" -#: io.c:612 +#: io.c:648 #, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "lausekkeella â€%sâ€-uudellenohjauksessa on vain numeerinen arvo" -#: io.c:618 +#: io.c:654 #, c-format msgid "expression for `%s' redirection has null string value" msgstr "lausekkeella â€%sâ€-uudelleenohjauksessa on null-merkkijonoarvo" -#: io.c:624 +#: io.c:659 #, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "" "tiedostonimi â€%s†â€%sâ€-uudelleenohjaukselle saattaa olla loogisen lausekkeen " "tulos" -#: io.c:667 +#: io.c:702 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "turha merkkien â€>†ja â€>>†sekoittaminen tiedostolle â€%.*sâ€" -#: io.c:720 +#: io.c:755 #, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "ei voi avata putkea â€%s†tulosteelle (%s)" -#: io.c:730 +#: io.c:765 #, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "ei voi avata putkea â€%s†syötteelle (%s)" -#: io.c:753 +#: io.c:788 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "ei voi avata kaksisuuntaista putkea â€%s†syötteelle/tulosteelle (%s)" -#: io.c:835 +#: io.c:870 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "ei voi uudelleenohjata putkesta â€%s†(%s)" -#: io.c:838 +#: io.c:873 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "ei voi uudelleenohjata putkeen â€%s†(%s)" -#: io.c:889 +#: io.c:924 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "" "saavutettiin avoimien tiedostojen järjestelmäraja: aloitetaan " "tiedostomäärittelijöiden lomittaminen" -#: io.c:905 +#: io.c:940 #, c-format msgid "close of `%s' failed (%s)." msgstr "uudelleenohjauksen â€%s†sulkeminen epäonnistui (%s)." -#: io.c:913 +#: io.c:948 msgid "too many pipes or input files open" msgstr "avoinna liian monta putkea tai syötetiedostoa" -#: io.c:935 +#: io.c:970 msgid "close: second argument must be `to' or `from'" msgstr "close: toisen argumentin on oltava â€to†tai â€fromâ€" -#: io.c:952 +#: io.c:987 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "close: â€%.*s†ei ole avoin tiedosto, putki tai apuprosessi" -#: io.c:957 +#: io.c:992 msgid "close of redirection that was never opened" msgstr "suljettiin uudelleenohjaus, jota ei avattu koskaan" -#: io.c:1054 +#: io.c:1089 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "" "close: uudelleenohjaus â€%s†ei ole avattu operaattoreilla â€|&â€, toinen " "argumentti ohitettu" -#: io.c:1070 +#: io.c:1105 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "virhetila (%d) putken â€%s†sulkemisessa (%s)" -#: io.c:1073 +#: io.c:1108 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "virhetila (%d) tiedoston â€%s†sulkemisessa (%s)" -#: io.c:1093 +#: io.c:1128 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "pistokkeen â€%s†eksplisiittistä sulkemista ei tarjota" -#: io.c:1096 +#: io.c:1131 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "apuprosessin â€%s†eksplisiittistä sulkemista ei tarjota" -#: io.c:1099 +#: io.c:1134 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "putken â€%s†eksplisiittistä sulkemista ei tarjota" -#: io.c:1102 +#: io.c:1137 #, c-format msgid "no explicit close of file `%s' provided" msgstr "tiedoston â€%s†eksplisiittistä sulkemista ei tarjota" -#: io.c:1130 io.c:1185 main.c:793 main.c:830 +#: io.c:1165 io.c:1220 main.c:798 main.c:835 #, c-format msgid "error writing standard output (%s)" msgstr "virhe kirjoitettaessa vakiotulosteeseen (%s)" -#: io.c:1134 io.c:1190 +#: io.c:1169 io.c:1225 #, c-format msgid "error writing standard error (%s)" msgstr "virhe kirjoitettaessa vakiovirheeseen (%s)" -#: io.c:1142 +#: io.c:1177 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "uudelleenohjauksen â€%s†putken tyhjennys epäonnistui (%s)." -#: io.c:1145 +#: io.c:1180 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "putken apuprosessityhjennys uudelleenohjaukseen â€%s†epäonnistui (%s)." -#: io.c:1148 +#: io.c:1183 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "uudelleenohjauksen â€%s†tiedostontyhjennys epäonnistui (%s)." -#: io.c:1263 +#: io.c:1298 #, c-format msgid "local port %s invalid in `/inet'" msgstr "paikallinen portti %s virheellinen pistokkeessa â€/inetâ€" -#: io.c:1280 +#: io.c:1315 #, c-format msgid "remote host and port information (%s, %s) invalid" msgstr "etäkone- ja porttitiedot (%s, %s) ovat virheellisiä" -#: io.c:1432 +#: io.c:1467 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "ei (tunnettua) yhteyskäytäntöä tarjottu erikoistiedostonimessä â€%sâ€" -#: io.c:1446 +#: io.c:1481 #, c-format msgid "special file name `%s' is incomplete" msgstr "erikoistiedostonimi â€%s†on vaillinainen" -#: io.c:1463 +#: io.c:1498 msgid "must supply a remote hostname to `/inet'" msgstr "on tarjottava etäkoneen nimi pistokkeeseen â€/inetâ€" -#: io.c:1481 +#: io.c:1516 msgid "must supply a remote port to `/inet'" msgstr "on tarjottava etäportti pistokkeeseen â€/inetâ€" -#: io.c:1527 +#: io.c:1562 msgid "TCP/IP communications are not supported" msgstr "TCP/IP-viestintää ei tueta" -#: io.c:1694 +#: io.c:1729 #, c-format msgid "could not open `%s', mode `%s'" msgstr "ei voitu avata laitetta â€%sâ€, tila â€%sâ€" -#: io.c:1748 +#: io.c:1783 #, c-format msgid "close of master pty failed (%s)" msgstr "â€master ptyâ€-sulkeminen epäonnistui (%s)" -#: io.c:1750 io.c:1918 io.c:2075 +#: io.c:1785 io.c:1953 io.c:2110 #, c-format msgid "close of stdout in child failed (%s)" msgstr "vakiotulosteen sulkeminen lapsiprosessissa epäonnistui (%s)" -#: io.c:1753 +#: io.c:1788 #, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "" "â€slave ptyâ€:n siirtäminen vakiotulosteeseen lapsiprosessissa epäonnistui " "(dup: %s)" -#: io.c:1755 io.c:1923 +#: io.c:1790 io.c:1958 #, c-format msgid "close of stdin in child failed (%s)" msgstr "vakiosyötteen sulkeminen lapsiprosessissa epäonnistui (%s)" -#: io.c:1758 +#: io.c:1793 #, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "" "â€slave ptyâ€:n siirtäminen vakiosyötteeseen lapsiprosessissa epäonnistui " "(dup: %s)" -#: io.c:1760 io.c:1781 +#: io.c:1795 io.c:1816 #, c-format msgid "close of slave pty failed (%s)" msgstr "â€slave ptyâ€:n sulkeminen epäonnistui (%s)" -#: io.c:1859 io.c:1921 io.c:2053 io.c:2078 +#: io.c:1894 io.c:1956 io.c:2088 io.c:2113 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "" "putken siirtäminen vakiotulosteeseen lapsiprosessissa epäonnistui (dup: %s)" -#: io.c:1866 io.c:1926 +#: io.c:1901 io.c:1961 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "" "putken siirtäminen vakiosyötteeseen lapsiprosessissa epäonnistui (dup: %s)" -#: io.c:1886 io.c:2068 +#: io.c:1921 io.c:2103 msgid "restoring stdout in parent process failed\n" msgstr "vakiotulosteen palauttaminen äitiprosessissa epäonnistui\n" -#: io.c:1894 +#: io.c:1929 msgid "restoring stdin in parent process failed\n" msgstr "vakiosyötön palauttaminen äitiprosessissa epäonnistui\n" -#: io.c:1929 io.c:2080 io.c:2094 +#: io.c:1964 io.c:2115 io.c:2129 #, c-format msgid "close of pipe failed (%s)" msgstr "putken sulkeminen epäonnistui (%s)" -#: io.c:1974 +#: io.c:2009 msgid "`|&' not supported" msgstr "â€|&†ei tueta" -#: io.c:2040 +#: io.c:2075 #, c-format msgid "cannot open pipe `%s' (%s)" msgstr "ei voi avata putkea â€%s†(%s)" -#: io.c:2088 +#: io.c:2123 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "ei voida luoda lapsiprosessia komennolle â€%s†(fork: %s)" -#: io.c:2521 +#: io.c:2613 #, c-format msgid "data file `%s' is empty" msgstr "data-tiedosto â€%s†on tyhjä" -#: io.c:2562 io.c:2570 +#: io.c:2654 io.c:2662 msgid "could not allocate more input memory" msgstr "ei voitu varata lisää syötemuistia" -#: io.c:3128 +#: io.c:3223 msgid "multicharacter value of `RS' is a gawk extension" msgstr "â€RSâ€-monimerkkiarvo on gawk-laajennus" -#: io.c:3233 +#: io.c:3313 msgid "IPv6 communication is not supported" msgstr "IPv6-viestintää ei tueta" -#: main.c:364 +#: main.c:353 msgid "`-m[fr]' option irrelevant in gawk" msgstr "â€-m[fr]â€-valitsin asiaanliittymätön gawk:ssa" -#: main.c:366 +#: main.c:355 msgid "-m option usage: `-m[fr] nnn'" msgstr "-m valitsinkäyttö: â€-m[fr] nnnâ€" -#: main.c:389 +#: main.c:384 msgid "empty argument to `-e/--source' ignored" msgstr "tyhjä argumentti valitsimelle â€-e/--source†ohitetaan" -#: main.c:460 +#: main.c:464 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "%s: valitsin â€-W %s†on tunnistamaton, ohitetaan\n" -#: main.c:513 +#: main.c:510 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: valitsin vaatii argumentin -- %c\n" -#: main.c:534 +#: main.c:531 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "" "ympäristömuuttuja â€POSIXLY_CORRECT†asetettu: käännetään päälle valitsin â€--" "posixâ€" -#: main.c:540 +#: main.c:537 msgid "`--posix' overrides `--traditional'" msgstr "valitsin â€--posix†korvaa valitsimen â€--traditionalâ€" -#: main.c:551 +#: main.c:548 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "" "valitsin â€--posix†tai â€--traditional†korvaa valitsimen â€--non-decimal-dataâ€" -#: main.c:555 +#: main.c:552 #, c-format msgid "running %s setuid root may be a security problem" msgstr "suorittaminen â€%s setuid rootâ€-käyttäjänä saattaa olla turvapulma" -#: main.c:560 +#: main.c:557 msgid "`--posix' overrides `--binary'" msgstr "valitsin â€--posix†korvaa valitsimen â€--binaryâ€" -#: main.c:611 +#: main.c:600 #, c-format msgid "can't set binary mode on stdin (%s)" msgstr "ei voi asettaa binaaritilaa vakiosyötteessä (%s)" -#: main.c:614 +#: main.c:603 #, c-format msgid "can't set binary mode on stdout (%s)" msgstr "ei voi asettaa binaaritilaa vakiotulosteessa (%s)" -#: main.c:616 +#: main.c:605 #, c-format msgid "can't set binary mode on stderr (%s)" msgstr "ei voi asettaa binaaritilaa vakiovirheessä (%s)" -#: main.c:655 +#: main.c:653 msgid "no program text at all!" msgstr "ei ohjelmatekstiä ollenkaan!" -#: main.c:733 +#: main.c:737 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "" "Käyttö: %s [POSIX- tai GNU-tyyliset valitsimet] -f ohjelmatiedosto [--] " "tiedosto ...\n" -#: main.c:735 +#: main.c:739 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "" "Käyttö: %s [POSIX- tai GNU-tyyliset valitsimet] [--] %cohjelma%c " "tiedosto ...\n" -#: main.c:740 +#: main.c:744 msgid "POSIX options:\t\tGNU long options: (standard)\n" msgstr "POSIX-valitsimet:\t\tGNU-pitkät valitsimet: (vakio)\n" -#: main.c:741 +#: main.c:745 msgid "\t-f progfile\t\t--file=progfile\n" msgstr "\t-f ohjelmatiedosto\t\t--file=ohjelmatiedosto\n" -#: main.c:742 +#: main.c:746 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "\t-F fs\t\t\t--field-separator=fs\n" -#: main.c:743 +#: main.c:747 msgid "\t-v var=val\t\t--assign=var=val\n" msgstr "\t-v var=arvo\t\t--assign=muuttuja=arvo\n" -#: main.c:744 +#: main.c:748 msgid "Short options:\t\tGNU long options: (extensions)\n" msgstr "Lyhyet valitsimet:\t\tGNU-pitkät valitsimet: (laajennukset)\n" -#: main.c:745 +#: main.c:749 msgid "\t-b\t\t\t--characters-as-bytes\n" msgstr "\t-b\t\t\t--characters-as-bytes\n" -#: main.c:746 +#: main.c:750 msgid "\t-c\t\t\t--traditional\n" msgstr "\t-c\t\t\t--traditional\n" -#: main.c:747 +#: main.c:751 msgid "\t-C\t\t\t--copyright\n" msgstr "\t-C\t\t\t--copyright\n" -#: main.c:748 +#: main.c:752 msgid "\t-d[file]\t\t--dump-variables[=file]\n" msgstr "\t-d[tiedosto]\t\t--dump-variables[=tiedosto]\n" -#: main.c:749 +#: main.c:753 +#, fuzzy +msgid "\t-D[file]\t\t--debug[=file]\n" +msgstr "\t-p[tiedosto]\t\t--profile[=tiedosto]\n" + +#: main.c:754 msgid "\t-e 'program-text'\t--source='program-text'\n" msgstr "\t-e 'program-text'\t--source='program-text'\n" -#: main.c:750 +#: main.c:755 msgid "\t-E file\t\t\t--exec=file\n" msgstr "\t-E file\t\t\t--exec=tiedosto\n" -#: main.c:751 +#: main.c:756 msgid "\t-g\t\t\t--gen-pot\n" msgstr "\t-g\t\t\t--gen-po\n" -#: main.c:752 +#: main.c:757 msgid "\t-h\t\t\t--help\n" msgstr "\t-h\t\t\t--help\n" -#: main.c:753 +#: main.c:758 +msgid "\t-l library\t\t--load=library\n" +msgstr "" + +#: main.c:759 msgid "\t-L [fatal]\t\t--lint[=fatal]\n" msgstr "\t-L [fatal]\t\t--lint[=fatal]\n" -#: main.c:754 +#: main.c:760 msgid "\t-n\t\t\t--non-decimal-data\n" msgstr "\t-n\t\t\t--non-decimal-data\n" -#: main.c:755 +#: main.c:761 msgid "\t-N\t\t\t--use-lc-numeric\n" msgstr "\t-N\t\t\t--use-lc-numeric\n" -#: main.c:756 +#: main.c:762 +#, fuzzy +msgid "\t-o[file]\t\t--pretty-print[=file]\n" +msgstr "\t-p[tiedosto]\t\t--profile[=tiedosto]\n" + +#: main.c:763 msgid "\t-O\t\t\t--optimize\n" msgstr "\t-O\t\t\t--optimize\n" -#: main.c:757 +#: main.c:764 msgid "\t-p[file]\t\t--profile[=file]\n" msgstr "\t-p[tiedosto]\t\t--profile[=tiedosto]\n" -#: main.c:758 +#: main.c:765 msgid "\t-P\t\t\t--posix\n" msgstr "\t-P\t\t\t--posix\n" -#: main.c:759 +#: main.c:766 msgid "\t-r\t\t\t--re-interval\n" msgstr "\t-r\t\t\t--re-interval\n" -#: main.c:761 -msgid "\t-R file\t\t\t--command=file\n" -msgstr "\t-R tiedosto\t\t\t--exec=tiedosto\n" - -#: main.c:762 +#: main.c:767 msgid "\t-S\t\t\t--sandbox\n" msgstr "\t-S\t\t\t--sandbox\n" -#: main.c:763 +#: main.c:768 msgid "\t-t\t\t\t--lint-old\n" msgstr "\t-t\t\t\t--lint-old\n" -#: main.c:764 +#: main.c:769 msgid "\t-V\t\t\t--version\n" msgstr "\t-V\t\t\t--version\n" -#: main.c:766 +#: main.c:771 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "\t-W nostalgia\t\t--nostalgia\n" -#: main.c:769 +#: main.c:774 msgid "\t-Y\t\t--parsedebug\n" msgstr "\t-Y\t\t--parsedebug\n" @@ -1821,7 +1733,7 @@ msgstr "\t-Y\t\t--parsedebug\n" #. for this application. Please add _another line_ with the #. address for translation bugs. #. no-wrap -#: main.c:778 +#: main.c:783 msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" @@ -1834,7 +1746,7 @@ msgstr "" "joka on kappale â€Reporting Problems and Bugs†painetussa versiossa.\n" "\n" -#: main.c:782 +#: main.c:787 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" @@ -1844,7 +1756,7 @@ msgstr "" "Oletuksena se lukee vakiosyötettä ja kirjoittaa vakiotulosteeseen.\n" "\n" -#: main.c:786 +#: main.c:791 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" @@ -1854,7 +1766,7 @@ msgstr "" "\tgawk '{ sum += $1 }; END { print sum }' tiedosto\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" -#: main.c:806 +#: main.c:811 #, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" @@ -1873,7 +1785,7 @@ msgstr "" "ehtojen mukaisesti.\n" "\n" -#: main.c:814 +#: main.c:819 msgid "" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" @@ -1887,7 +1799,7 @@ msgstr "" "GNU General Public License-ehdoista.\n" "\n" -#: main.c:820 +#: main.c:825 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program. If not, see http://www.gnu.org/licenses/.\n" @@ -1895,16 +1807,16 @@ msgstr "" "Sinun pitäisi vastaanottaa kopion GNU General Public Licence-lisenssistä\n" "tämän ohjelman mukana. Jos näin ei ole, katso http://www.gnu.org/licenses/.\n" -#: main.c:855 +#: main.c:860 msgid "-Ft does not set FS to tab in POSIX awk" msgstr "-Ft ei aseta FS välilehteen POSIX awk:ssa" -#: main.c:1089 +#: main.c:1091 #, c-format msgid "unknown value for field spec: %d\n" msgstr "tuntematon arvo kenttämääritteelle: %d\n" -#: main.c:1170 +#: main.c:1172 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" @@ -1913,84 +1825,79 @@ msgstr "" "%s: â€%s†argumentti valitsimelle â€-v†ei ole â€var=arvoâ€-muodossa\n" "\n" -#: main.c:1196 +#: main.c:1198 #, c-format msgid "`%s' is not a legal variable name" msgstr "â€%s†ei ole laillinen muuttujanimi" -#: main.c:1199 +#: main.c:1201 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "â€%s†ei ole muuttujanimi, etsitään tiedostoa â€%s=%sâ€" -#: main.c:1203 +#: main.c:1205 #, c-format msgid "cannot use gawk builtin `%s' as variable name" msgstr "ei voi käyttää gawk-ohjelman sisäistä â€%sâ€-määrittelyä muuttujanimenä" -#: main.c:1208 +#: main.c:1210 #, c-format msgid "cannot use function `%s' as variable name" msgstr "funktionimeä â€%s†ei voi käyttää muuttujanimenä" -#: main.c:1261 +#: main.c:1263 msgid "floating point exception" msgstr "liukulukupoikkeus" -#: main.c:1268 +#: main.c:1270 msgid "fatal error: internal error" msgstr "tuhoisa virhe: sisäinen virhe" -#: main.c:1283 +#: main.c:1285 msgid "fatal error: internal error: segfault" msgstr "tuhoisa virhe: sisäinen virhe: segmenttivirhe" -#: main.c:1295 +#: main.c:1297 msgid "fatal error: internal error: stack overflow" msgstr "tuhoisa virhe: sisäinen virhe: pinoylivuoto" -#: main.c:1345 +#: main.c:1347 #, c-format msgid "no pre-opened fd %d" msgstr "ei avattu uudelleen tiedostomäärittelijää %d" -#: main.c:1352 +#: main.c:1354 #, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "ei voitu avata uudelleen laitetta /dev/null tiedostomäärittelijälle %d" -#: main.c:1375 main.c:1384 -#, c-format -msgid "could not find groups: %s" -msgstr "ei voitu löytää ryhmiä: %s" - -#: msg.c:63 +#: msg.c:61 #, c-format msgid "cmd. line:" msgstr "komentorivi:" -#: msg.c:107 +#: msg.c:105 msgid "error: " msgstr "virhe:" -#: node.c:406 +#: node.c:402 msgid "backslash at end of string" msgstr "kenoviiva merkkijonon lopussa" -#: node.c:517 +#: node.c:479 #, c-format msgid "old awk does not support the `\\%c' escape sequence" msgstr "vanha awk ei tue â€\\%câ€-koodinvaihtosekvenssiä" -#: node.c:568 +#: node.c:530 msgid "POSIX does not allow `\\x' escapes" msgstr "POSIX ei salli â€\\xâ€-koodinvaihtoja" -#: node.c:574 +#: node.c:536 msgid "no hex digits in `\\x' escape sequence" msgstr "ei heksadesimaalilukuja â€\\xâ€-koodinvaihtosekvenssissä" -#: node.c:596 +#: node.c:558 #, c-format msgid "" "hex escape \\x%.*s of %d characters probably not interpreted the way you " @@ -1999,12 +1906,12 @@ msgstr "" "heksadesimaalikoodinvaihtomerkkejä \\x%.*s / %d ei ole luultavasti tulkittu " "sillä tavalla kuin odotat" -#: node.c:611 +#: node.c:573 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "koodinvaihtosekvenssi â€\\%c†käsitelty kuin pelkkä â€%câ€" -#: node.c:750 +#: node.c:712 msgid "" "Invalid multibyte data detected. There may be a mismatch between your data " "and your locale." @@ -2022,16 +1929,16 @@ msgstr "%s %s â€%sâ€: ei voitu hakea fd-lippuja: (fcntl F_GETFD: %s)" msgid "%s %s `%s': could not set close-on-exec: (fcntl F_SETFD: %s)" msgstr "%s %s â€%sâ€: ei voitu asettaa close-on-exec: (fcntl F_SETFD: %s)" -#: profile.c:83 +#: profile.c:69 #, c-format msgid "could not open `%s' for writing: %s" msgstr "ei voitu avata tiedostoa â€%s†kirjoittamista varten: %s" -#: profile.c:85 +#: profile.c:71 msgid "sending profile to standard error" msgstr "lähetetään profiili vakiovirheeseen" -#: profile.c:203 +#: profile.c:187 #, c-format msgid "" "\t# %s block(s)\n" @@ -2040,7 +1947,7 @@ msgstr "" "\t# %s-lohko(t)\n" "\n" -#: profile.c:208 +#: profile.c:192 #, c-format msgid "" "\t# Rule(s)\n" @@ -2049,17 +1956,22 @@ msgstr "" "\t# Säännöt\n" "\n" -#: profile.c:279 +#: profile.c:266 #, c-format msgid "internal error: %s with null vname" msgstr "sisäinen virhe: %s null vname-arvolla" -#: profile.c:952 +#: profile.c:528 +#, fuzzy +msgid "internal error: builtin with null fname" +msgstr "sisäinen virhe: %s null vname-arvolla" + +#: profile.c:943 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "\t# gawk-profiili, luotu %s\n" -#: profile.c:1331 +#: profile.c:1321 #, c-format msgid "" "\n" @@ -2068,94 +1980,169 @@ msgstr "" "\n" "\t# Funktiot, luetteloitu aakkosjärjestyksessä\n" -#: profile.c:1370 +#: profile.c:1359 #, c-format msgid "redir2str: unknown redirection type %d" msgstr "redir2str: tuntematon edelleenohjaustyyppi %d" -#: re.c:572 -#, fuzzy, c-format +#: re.c:573 +#, c-format msgid "range of the form `[%c-%c]' is locale dependent" msgstr "muodon â€[%c-%c]†lukualue on paikallisasetuksesta riippuvainen" -#: re.c:599 +#: re.c:600 #, c-format msgid "regexp component `%.*s' should probably be `[%.*s]'" msgstr "" "säännöllisen lausekkeen komponentin â€%.*s†pitäisi luultavasti olla â€[%.*s]â€" -#: regcomp.c:132 +#: regcomp.c:131 msgid "Success" msgstr "Onnistui" -#: regcomp.c:135 +#: regcomp.c:134 msgid "No match" msgstr "Ei täsmäystä" -#: regcomp.c:138 +#: regcomp.c:137 msgid "Invalid regular expression" msgstr "Virheellinen säännöllinen lauseke" -#: regcomp.c:141 +#: regcomp.c:140 msgid "Invalid collation character" msgstr "Virheellinen vertailumerkki" -#: regcomp.c:144 +#: regcomp.c:143 msgid "Invalid character class name" msgstr "Virheellinen merkkiluokkanimi" -#: regcomp.c:147 +#: regcomp.c:146 msgid "Trailing backslash" msgstr "Jäljessä oleva kenoviiva" -#: regcomp.c:150 +#: regcomp.c:149 msgid "Invalid back reference" msgstr "Virheellinen paluuviite" -#: regcomp.c:153 +#: regcomp.c:152 msgid "Unmatched [ or [^" msgstr "Pariton [ tai [^" -#: regcomp.c:156 +#: regcomp.c:155 msgid "Unmatched ( or \\(" msgstr "Pariton ( tai \\(" -#: regcomp.c:159 +#: regcomp.c:158 msgid "Unmatched \\{" msgstr "Pariton \\{" -#: regcomp.c:162 +#: regcomp.c:161 msgid "Invalid content of \\{\\}" msgstr "Virheellinen \\{\\}-sisältö" -#: regcomp.c:165 +#: regcomp.c:164 msgid "Invalid range end" msgstr "Virheellinen lukualueen loppu" -#: regcomp.c:168 +#: regcomp.c:167 msgid "Memory exhausted" msgstr "Muisti loppui" -#: regcomp.c:171 +#: regcomp.c:170 msgid "Invalid preceding regular expression" msgstr "Virheellinen edeltävä säännöllinen lauseke" -#: regcomp.c:174 +#: regcomp.c:173 msgid "Premature end of regular expression" msgstr "Ennenaikainen säännöllisen lausekkeen loppu" -#: regcomp.c:177 +#: regcomp.c:176 msgid "Regular expression too big" msgstr "Säännöllinen lauseke on liian iso" -#: regcomp.c:180 +#: regcomp.c:179 msgid "Unmatched ) or \\)" msgstr "Pariton ) tai \\)" -#: regcomp.c:701 +#: regcomp.c:700 msgid "No previous regular expression" msgstr "Ei edellistä säännöllistä lauseketta" +#~ msgid "attempt to use function `%s' as an array" +#~ msgstr "yritettiin käyttää funktiota â€%s†taulukkona" + +#~ msgid "reference to uninitialized element `%s[\"%.*s\"]'" +#~ msgstr "viite alustamattomaan elementtiin â€%s[\"%.*s\"]â€" + +#~ msgid "subscript of array `%s' is null string" +#~ msgstr "taulukon alaindeksi â€%s†on null-merkkijono" + +#~ msgid "%s: empty (null)\n" +#~ msgstr "%s: tyhjä (null)\n" + +#~ msgid "%s: empty (zero)\n" +#~ msgstr "%s: tyhjä (nolla)\n" + +#~ msgid "%s: table_size = %d, array_size = %d\n" +#~ msgstr "%s: table_size = %d, array_size = %d\n" + +#~ msgid "%s: is parameter\n" +#~ msgstr "%s: on parametri\n" + +#~ msgid "%s: array_ref to %s\n" +#~ msgstr "%s: array_ref-viite taulukkoon %s\n" + +#~ msgid "use of non-array as array" +#~ msgstr "ei-taulukon käyttö taulukkona" + +#~ msgid "can't use function name `%s' as variable or array" +#~ msgstr "funktionimeä â€%s†ei voi käyttää muuttujana tai taulukkona" + +#~ msgid "attempt to use array `%s[\"%.*s\"]' in a scalar context" +#~ msgstr "yritettiin käyttää taulukkoa â€%s[\"%.*s\"]†skalaarikontekstissa" + +#~ msgid "assignment used in conditional context" +#~ msgstr "sijoitusta käytetty ehdollisessa kontekstissa" + +#~ msgid "statement has no effect" +#~ msgstr "käskyllä ei ole vaikutusta" + +#~ msgid "" +#~ "for loop: array `%s' changed size from %ld to %ld during loop execution" +#~ msgstr "" +#~ "for-silmukka: taulukon â€%s†koko muuttui arvosta %ld arvoon %ld silmukan " +#~ "suorituksen aikana" + +#~ msgid "function called indirectly through `%s' does not exist" +#~ msgstr "kohteen â€%s†kautta epäsuorasti kutsuttu funktio ei ole olemassa" + +#~ msgid "function `%s' not defined" +#~ msgstr "funktio â€%s†ei ole määritelty" + +#~ msgid "non-redirected `getline' invalid inside `%s' rule" +#~ msgstr "edelleenohjaamaton â€getline†virheellinen â€%sâ€-säännön sisällä" + +#~ msgid "error reading input file `%s': %s" +#~ msgstr "virhe luettaessa syötetiedostoa â€%sâ€: %s" + +#~ msgid "`nextfile' cannot be called from a `%s' rule" +#~ msgstr "â€nextfile†ei voida kutsua â€%sâ€-säännöstä" + +#~ msgid "`exit' cannot be called in the current context" +#~ msgstr "â€exit†ei voida kutsua nykyisessä asiayhteydessä" + +#~ msgid "`next' cannot be called from a `%s' rule" +#~ msgstr "â€next†ei voida kutsua â€%sâ€-säännöstä" + +#~ msgid "Sorry, don't know how to interpret `%s'" +#~ msgstr "Ei osata tulkita kohdetta â€%sâ€" + +#~ msgid "\t-R file\t\t\t--command=file\n" +#~ msgstr "\t-R tiedosto\t\t\t--exec=tiedosto\n" + +#~ msgid "could not find groups: %s" +#~ msgstr "ei voitu löytää ryhmiä: %s" + #~ msgid "assignment is not allowed to result of builtin function" #~ msgstr "sijoitusta ei sallita sisäänrakennetun funktion tulokselle" @@ -7,10 +7,10 @@ # msgid "" msgstr "" -"Project-Id-Version: gawk 4.0.0\n" +"Project-Id-Version: gawk 4.0.0h\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" -"POT-Creation-Date: 2011-11-14 21:46+0200\n" -"PO-Revision-Date: 2011-07-16 16:50+0200\n" +"POT-Creation-Date: 2012-04-08 12:18+0300\n" +"PO-Revision-Date: 2012-01-30 23:52+0100\n" "Last-Translator: Jean-Philippe Guérard <jean-philippe.guerard@corbeaunoir." "org>\n" "Language-Team: French <traduc@traduc.org>\n" @@ -20,512 +20,469 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: array.c:140 +#: array.c:267 #, c-format msgid "from %s" msgstr "de %s" -#: array.c:248 +#: array.c:367 msgid "attempt to use a scalar value as array" msgstr "tentative d'utiliser un scalaire comme tableau" -#: array.c:251 -#, c-format -msgid "attempt to use function `%s' as an array" -msgstr "tentative d'utiliser la fonction « %s » comme tableau" - -#: array.c:254 +#: array.c:369 #, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "tentative d'utiliser le paramètre scalaire « %s » comme tableau" -#: array.c:257 +#: array.c:372 #, c-format msgid "attempt to use scalar `%s' as an array" msgstr "tentative d'utiliser le scalaire « %s » comme tableau" -#: array.c:302 array.c:707 builtin.c:84 builtin.c:1384 builtin.c:1426 -#: builtin.c:1439 builtin.c:1858 builtin.c:1870 eval.c:1135 eval.c:1139 -#: eval.c:1495 eval.c:1812 +#: array.c:419 array.c:585 builtin.c:85 builtin.c:1389 builtin.c:1431 +#: builtin.c:1444 builtin.c:1862 builtin.c:1874 eval.c:1096 eval.c:1100 +#: eval.c:1500 #, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "tentative d'utilisation du tableau « %s » dans un contexte scalaire" -#: array.c:513 -#, c-format -msgid "reference to uninitialized element `%s[\"%.*s\"]'" -msgstr "référence à un élément non initialisé « %s[\"%.*s\"] »" - -#: array.c:519 -#, c-format -msgid "subscript of array `%s' is null string" -msgstr "l'indice du tableau « %s » est une chaîne vide" - -#: array.c:723 +#: array.c:592 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "delete : l'indice « %s » est absent du tableau « %s »" -#: array.c:734 eval.c:1865 +#: array.c:606 #, c-format msgid "attempt to use scalar `%s[\"%.*s\"]' as an array" msgstr "tentative d'utiliser le scalaire « %s[\"%.*s\"] » comme tableau" -#: array.c:910 -#, c-format -msgid "%s: empty (null)\n" -msgstr "%s : vide (non défini)\n" - -#: array.c:915 -#, c-format -msgid "%s: empty (zero)\n" -msgstr "%s : vide (vide)\n" - -#: array.c:919 -#, c-format -msgid "%s: table_size = %d, array_size = %d\n" -msgstr "%s : table_size = %d, array_size = %d\n" - -#: array.c:954 -#, c-format -msgid "%s: is parameter\n" -msgstr "%s : est un paramètre\n" - -#: array.c:958 -#, c-format -msgid "%s: array_ref to %s\n" -msgstr "%s : array_ref à %s\n" - -#: array.c:963 -msgid "adump: argument not an array" +#: array.c:794 +#, fuzzy +msgid "adump: first argument not an array" msgstr "adump : l'argument n'est pas un tableau" -#: array.c:1086 +#: array.c:833 msgid "asort: second argument not an array" msgstr "asort : le 2nd argument n'est pas un tableau" -#: array.c:1087 +#: array.c:834 msgid "asorti: second argument not an array" msgstr "asorti : le 2nd argument n'est pas un tableau" -#: array.c:1094 +#: array.c:841 msgid "asort: first argument not an array" msgstr "asort : le 1er argument n'est pas un tableau" -#: array.c:1095 +#: array.c:842 msgid "asorti: first argument not an array" msgstr "asorti : le 1er argument n'est pas un tableau" -#: array.c:1102 +#: array.c:849 msgid "asort: cannot use a subarray of first arg for second arg" msgstr "asort : le 2nd argument ne doit pas être un sous-tableau du 1er" -#: array.c:1103 +#: array.c:850 msgid "asorti: cannot use a subarray of first arg for second arg" msgstr "asorti : le 2nd argument ne doit pas être un sous-tableau du 1er" -#: array.c:1108 +#: array.c:855 msgid "asort: cannot use a subarray of second arg for first arg" msgstr "asort : le 1er argument ne doit pas être un sous-tableau du 2nd" -#: array.c:1109 +#: array.c:856 msgid "asorti: cannot use a subarray of second arg for first arg" msgstr "asorti : le 1er argument ne doit pas être un sous-tableau du 2nd" -#: array.c:1659 +#: array.c:1329 #, c-format msgid "`%s' is invalid as a function name" msgstr "« %s » n'est pas un nom de fonction valide" -#: array.c:1663 +#: array.c:1333 #, c-format msgid "sort comparison function `%s' is not defined" msgstr "la fonction de comparaison « %s » du tri n'est pas définie" -#: awkgram.y:249 +#: awkgram.y:223 #, c-format msgid "%s blocks must have an action part" msgstr "les blocs %s doivent avoir une partie action" -#: awkgram.y:252 +#: awkgram.y:226 msgid "each rule must have a pattern or an action part" msgstr "chaque règle doit avoir au moins une partie motif ou action" -#: awkgram.y:323 awkgram.y:334 +#: awkgram.y:295 awkgram.y:306 msgid "old awk does not support multiple `BEGIN' or `END' rules" msgstr "l'ancien awk ne permet pas les « BEGIN » ou « END » multiples" -#: awkgram.y:371 +#: awkgram.y:343 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "« %s » est une fonction interne, elle ne peut être redéfinie" -#: awkgram.y:432 +#: awkgram.y:389 msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "l'expression rationnelle constante « // » n'est pas un commentaire C++" -#: awkgram.y:436 +#: awkgram.y:393 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "l'expression rationnelle constante « /%s/ » n'est pas un commentaire C" -#: awkgram.y:528 +#: awkgram.y:485 #, c-format msgid "duplicate case values in switch body: %s" msgstr "le corps du switch comporte des cas répétés : %s" -#: awkgram.y:549 +#: awkgram.y:506 msgid "duplicate `default' detected in switch body" msgstr "plusieurs « default » ont été détectés dans le corps du switch" -#: awkgram.y:809 +#: awkgram.y:766 msgid "`break' is not allowed outside a loop or switch" msgstr "« break » est interdit en dehors d'une boucle ou d'un switch" -#: awkgram.y:818 +#: awkgram.y:775 msgid "`continue' is not allowed outside a loop" msgstr "« continue » est interdit en dehors d'une boucle ou d'un switch" -#: awkgram.y:828 +#: awkgram.y:785 #, c-format msgid "`next' used in %s action" msgstr "« next » est utilisé dans l'action %s" -#: awkgram.y:836 +#: awkgram.y:793 msgid "`nextfile' is a gawk extension" msgstr "« nextfile » est une extension gawk" -#: awkgram.y:841 +#: awkgram.y:798 #, c-format msgid "`nextfile' used in %s action" msgstr "« nextfile » est utilisé dans l'action %s" -#: awkgram.y:865 +#: awkgram.y:822 msgid "`return' used outside function context" msgstr "« return » est utilisé hors du contexte d'une fonction" -#: awkgram.y:925 +#: awkgram.y:892 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "" "dans BEGIN ou END, un « print » seul devrait sans doute être un « print " "\"\" »" -#: awkgram.y:995 awkgram.y:999 awkgram.y:1023 +#: awkgram.y:962 awkgram.y:966 awkgram.y:990 msgid "`delete array' is a gawk extension" msgstr "« delete array » est une extension gawk" -#: awkgram.y:1019 +#: awkgram.y:986 msgid "`delete(array)' is a non-portable tawk extension" msgstr "« delete(array) » est une extension non portable de tawk" -#: awkgram.y:1135 +#: awkgram.y:1102 msgid "multistage two-way pipelines don't work" msgstr "impossible d'utiliser des tubes bidirectionnels en série" -#: awkgram.y:1238 +#: awkgram.y:1205 msgid "regular expression on right of assignment" msgstr "expression rationnelle à droite d'une affectation" -#: awkgram.y:1249 +#: awkgram.y:1216 msgid "regular expression on left of `~' or `!~' operator" msgstr "expression rationnelle à gauche d'un opérateur « ~ » ou « !~ »" -#: awkgram.y:1265 awkgram.y:1419 +#: awkgram.y:1232 awkgram.y:1383 msgid "old awk does not support the keyword `in' except after `for'" msgstr "l'ancien awk n'autorise le mot-clef « in » qu'après « for »" -#: awkgram.y:1275 +#: awkgram.y:1242 msgid "regular expression on right of comparison" msgstr "expression rationnelle à droite d'une comparaison" -#: awkgram.y:1394 +#: awkgram.y:1358 #, c-format msgid "`getline var' invalid inside `%s' rule" msgstr "« getline var » n'est pas valable dans une règle « %s »" -#: awkgram.y:1397 eval.c:2504 +#: awkgram.y:1361 #, c-format msgid "`getline' invalid inside `%s' rule" msgstr "« getline » n'est pas valable dans une règle « %s »" -#: awkgram.y:1402 +#: awkgram.y:1366 msgid "non-redirected `getline' undefined inside END action" msgstr "dans une action END, un « getline » non redirigé n'est pas défini" -#: awkgram.y:1421 +#: awkgram.y:1385 msgid "old awk does not support multidimensional arrays" msgstr "l'ancien awk ne dispose pas des tableaux multidimensionnels" -#: awkgram.y:1517 +#: awkgram.y:1481 msgid "call of `length' without parentheses is not portable" msgstr "l'appel de « length » sans parenthèses n'est pas portable" -#: awkgram.y:1580 +#: awkgram.y:1545 msgid "indirect function calls are a gawk extension" msgstr "les appels indirects de fonctions sont une extension gawk" -#: awkgram.y:1593 +#: awkgram.y:1558 #, c-format msgid "can not use special variable `%s' for indirect function call" msgstr "" "impossible d'utiliser la variable spéciale « %s » pour un appel indirect de " "fonction" -#: awkgram.y:1671 +#: awkgram.y:1636 msgid "invalid subscript expression" msgstr "expression indice non valide" -#: awkgram.y:1711 -msgid "use of non-array as array" -msgstr "utilisation d'un non tableau comme tableau" - -#: awkgram.y:1975 awkgram.y:1995 msg.c:98 +#: awkgram.y:1936 awkgram.y:1956 msg.c:96 msgid "warning: " msgstr "avertissement : " -#: awkgram.y:1993 msg.c:130 +#: awkgram.y:1954 msg.c:128 msgid "fatal: " msgstr "fatal : " -#: awkgram.y:2043 +#: awkgram.y:2004 msgid "unexpected newline or end of string" msgstr "fin de chaîne ou passage à la ligne inattendu" -#: awkgram.y:2300 awkgram.y:2358 awkgram.y:2542 +#: awkgram.y:2269 awkgram.y:2327 awkgram.y:2515 #, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "impossible d'ouvrir le fichier source « %s » en lecture (%s)" -#: awkgram.y:2301 awkgram.y:2359 builtin.c:122 +#: awkgram.y:2270 awkgram.y:2328 builtin.c:124 msgid "reason unknown" msgstr "raison inconnue" -#: awkgram.y:2317 +#: awkgram.y:2286 #, c-format msgid "already included source file `%s'" msgstr "le fichier source « %s » a déjà été intégré" -#: awkgram.y:2343 +#: awkgram.y:2312 msgid "@include is a gawk extension" msgstr "@include est une extension gawk" -#: awkgram.y:2349 +#: awkgram.y:2318 msgid "empty filename after @include" msgstr "Le nom de fichier après @include est vide" -#: awkgram.y:2494 +#: awkgram.y:2467 msgid "empty program text on command line" msgstr "le programme indiqué en ligne de commande est vide" -#: awkgram.y:2609 +#: awkgram.y:2582 #, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "impossible de lire le fichier source « %s » (%s)" -#: awkgram.y:2620 +#: awkgram.y:2593 #, c-format msgid "source file `%s' is empty" msgstr "le fichier source « %s » est vide" -#: awkgram.y:2805 +#: awkgram.y:2770 msgid "source file does not end in newline" msgstr "le fichier source ne se termine pas par un passage à la ligne" -#: awkgram.y:2882 +#: awkgram.y:2874 msgid "unterminated regexp ends with `\\' at end of file" msgstr "" "expression rationnelle non refermée terminée par un « \\ » en fin de fichier" -#: awkgram.y:2906 +#: awkgram.y:2898 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" "%s : %d : le modificateur d'expressions rationnelles « /.../%c » de tawk ne " "marche pas dans gawk" -#: awkgram.y:2910 +#: awkgram.y:2902 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" "le modificateur d'expressions rationnelles « /.../%c » de tawk ne marche pas " "dans gawk" -#: awkgram.y:2917 +#: awkgram.y:2909 msgid "unterminated regexp" msgstr "expression rationnelle non refermée" -#: awkgram.y:2921 +#: awkgram.y:2913 msgid "unterminated regexp at end of file" msgstr "expression rationnelle non refermée en fin de fichier" -#: awkgram.y:2980 +#: awkgram.y:2972 msgid "use of `\\ #...' line continuation is not portable" msgstr "" "l'utilisation de « \\ #... » pour prolonger une ligne n'est pas portable" -#: awkgram.y:2996 +#: awkgram.y:2988 msgid "backslash not last character on line" msgstr "la barre oblique inverse n'est pas le dernier caractère de la ligne" -#: awkgram.y:3057 +#: awkgram.y:3049 msgid "POSIX does not allow operator `**='" msgstr "POSIX n'autorise pas l'opérateur « **= »" -#: awkgram.y:3059 +#: awkgram.y:3051 msgid "old awk does not support operator `**='" msgstr "l'ancien awk ne dispose pas de l'opérateur « **= »" -#: awkgram.y:3068 +#: awkgram.y:3060 msgid "POSIX does not allow operator `**'" msgstr "POSIX n'autorise pas l'opérateur « ** »" -#: awkgram.y:3070 +#: awkgram.y:3062 msgid "old awk does not support operator `**'" msgstr "l'ancien awk ne dispose pas de l'opérateur « ** »" -#: awkgram.y:3105 +#: awkgram.y:3097 msgid "operator `^=' is not supported in old awk" msgstr "l'ancien awk ne dispose pas de l'opérateur « ^= »" -#: awkgram.y:3113 +#: awkgram.y:3105 msgid "operator `^' is not supported in old awk" msgstr "l'ancien awk ne dispose pas de l'opérateur « ^ »" -#: awkgram.y:3206 awkgram.y:3222 +#: awkgram.y:3198 awkgram.y:3214 msgid "unterminated string" msgstr "chaîne non refermée" -#: awkgram.y:3418 +#: awkgram.y:3410 #, c-format msgid "invalid char '%c' in expression" msgstr "caractère non valide « %c » dans l'expression" -#: awkgram.y:3465 +#: awkgram.y:3457 #, c-format msgid "`%s' is a gawk extension" msgstr "« %s » est une extension gawk" -#: awkgram.y:3470 +#: awkgram.y:3462 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "« %s » est une extension Bell Labs" -#: awkgram.y:3475 +#: awkgram.y:3467 #, c-format msgid "POSIX does not allow `%s'" msgstr "POSIX n'autorise pas « %s »" -#: awkgram.y:3483 +#: awkgram.y:3475 #, c-format msgid "`%s' is not supported in old awk" msgstr "l'ancien awk ne dispose pas de « %s »" -#: awkgram.y:3550 +#: awkgram.y:3542 msgid "`goto' considered harmful!\n" msgstr "« goto est jugé dangereux ! » (Edsger W. Dijkstra)\n" -#: awkgram.y:3601 +#: awkgram.y:3576 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "%d n'est pas un nombre d'arguments valide de %s" -#: awkgram.y:3636 +#: awkgram.y:3611 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "" "%s : une chaîne littérale en dernier argument d'une substitution est sans " "effet" -#: awkgram.y:3641 +#: awkgram.y:3616 #, c-format msgid "%s third parameter is not a changeable object" msgstr "le 3e paramètre de %s n'est pas un objet modifiable" -#: awkgram.y:3714 awkgram.y:3717 +#: awkgram.y:3689 awkgram.y:3692 msgid "match: third argument is a gawk extension" msgstr "match : le 3e argument est une extension gawk" -#: awkgram.y:3771 awkgram.y:3774 +#: awkgram.y:3746 awkgram.y:3749 msgid "close: second argument is a gawk extension" msgstr "close : le 2e argument est une extension gawk" -#: awkgram.y:3786 +#: awkgram.y:3761 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "utilisation incorrecte de dcgettext(_\"...\") : enlevez le souligné de tête" -#: awkgram.y:3801 +#: awkgram.y:3776 msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "utilisation incorrecte de dcngettext(_\"...\") : enlevez le souligné de tête" -#: awkgram.y:3893 -#, c-format -msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" -msgstr "" -"fonction « %s » : paramètre #%d, « %s » est un doublon du paramètre #%d" - -#: awkgram.y:3935 +#: awkgram.y:3842 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "fonction « %s » : le paramètre « %s » masque la variable globale" -#: awkgram.y:4093 +#: awkgram.y:3885 #, c-format msgid "could not open `%s' for writing (%s)" msgstr "impossible d'ouvrir « %s » en écriture (%s)" -#: awkgram.y:4094 +#: awkgram.y:3886 msgid "sending variable list to standard error" msgstr "envoi de la liste des variables vers la sortie d'erreur standard" -#: awkgram.y:4100 +#: awkgram.y:3894 #, c-format msgid "%s: close failed (%s)" msgstr "%s : échec de la fermeture (%s)" -#: awkgram.y:4152 +#: awkgram.y:3919 msgid "shadow_funcs() called twice!" msgstr "shadows_funcs() a été appelé deux fois !" -#: awkgram.y:4158 +#: awkgram.y:3927 msgid "there were shadowed variables." msgstr "il y avait des variables masquées." -#: awkgram.y:4188 +#: awkgram.y:3998 +#, c-format +msgid "function name `%s' previously defined" +msgstr "nom de fonction « %s » déjà défini" + +#: awkgram.y:4044 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "" "fonction « %s » : impossible d'utiliser un nom de fonction comme paramètre" -#: awkgram.y:4192 +#: awkgram.y:4047 #, c-format msgid "function `%s': can't use special variable `%s' as a function parameter" msgstr "" "fonction « %s » : impossible d'utiliser la variable spéciale « %s » comme " "paramètre d'une fonction" -#: awkgram.y:4208 +#: awkgram.y:4055 #, c-format -msgid "function name `%s' previously defined" -msgstr "nom de fonction « %s » déjà défini" +msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" +msgstr "" +"fonction « %s » : paramètre #%d, « %s » est un doublon du paramètre #%d" -#: awkgram.y:4376 awkgram.y:4382 +#: awkgram.y:4134 awkgram.y:4140 #, c-format msgid "function `%s' called but never defined" msgstr "fonction « %s » appelée sans être définie" -#: awkgram.y:4385 +#: awkgram.y:4143 #, c-format msgid "function `%s' defined but never called directly" msgstr "fonction « %s » définie mais jamais appelée directement" -#: awkgram.y:4417 +#: awkgram.y:4175 #, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "le paramètre #%d, une expr. rationnelle constante, fournit un booléen" -#: awkgram.y:4526 +#: awkgram.y:4221 #, c-format msgid "" "function `%s' called with space between name and `(',\n" @@ -534,232 +491,232 @@ msgstr "" "fonction « %s » appelée avec un espace entre son nom\n" "et « ( », ou utilisée comme variable ou tableau" -#: awkgram.y:4773 eval.c:2056 +#: awkgram.y:4429 msgid "division by zero attempted" msgstr "tentative de division par zéro" -#: awkgram.y:4782 eval.c:2072 +#: awkgram.y:4438 #, c-format msgid "division by zero attempted in `%%'" msgstr "tentative de division par zéro dans « %% »" -#: builtin.c:120 +#: builtin.c:122 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "échec de %s vers « %s » (%s)" -#: builtin.c:121 +#: builtin.c:123 msgid "standard output" msgstr "sortie standard" -#: builtin.c:135 +#: builtin.c:137 msgid "exp: received non-numeric argument" msgstr "exp : l'argument n'est pas numérique" -#: builtin.c:141 +#: builtin.c:143 #, c-format msgid "exp: argument %g is out of range" msgstr "exp : l'argument %g est hors limite" -#: builtin.c:200 +#: builtin.c:202 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "" "fflush : vidage impossible : le tube « %s » est ouvert en lecture et non en " "écriture" -#: builtin.c:203 +#: builtin.c:205 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "" "fflush : vidage impossible : fichier « %s » ouvert en lecture, pas en " "écriture" -#: builtin.c:215 +#: builtin.c:217 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "" "fflush : « %s » n'est ni un fichier ouvert, ni un tube, ni un co-processus" -#: builtin.c:333 +#: builtin.c:335 msgid "index: received non-string first argument" msgstr "index : le premier argument n'est pas une chaîne" -#: builtin.c:335 +#: builtin.c:337 msgid "index: received non-string second argument" msgstr "index : le second argument n'est pas une chaîne" -#: builtin.c:457 +#: builtin.c:461 msgid "int: received non-numeric argument" msgstr "int : l'argument n'est pas numérique" -#: builtin.c:493 +#: builtin.c:497 msgid "length: received array argument" msgstr "length : l'argument reçu est un tableau" -#: builtin.c:496 +#: builtin.c:500 msgid "`length(array)' is a gawk extension" msgstr "« length(tableau) » est une extension gawk" -#: builtin.c:504 +#: builtin.c:508 msgid "length: received non-string argument" msgstr "length : l'argument n'est pas une chaîne" -#: builtin.c:535 +#: builtin.c:539 msgid "log: received non-numeric argument" msgstr "log : l'argument n'est pas numérique" -#: builtin.c:538 +#: builtin.c:542 #, c-format msgid "log: received negative argument %g" msgstr "log : l'argument est négatif %g" -#: builtin.c:694 builtin.c:699 +#: builtin.c:698 builtin.c:703 msgid "fatal: must use `count$' on all formats or none" msgstr "" "fatal : « numéro$ » doit être utilisé pour toutes les formats ou pour aucun" -#: builtin.c:761 +#: builtin.c:766 #, c-format msgid "field width is ignored for `%%' specifier" msgstr "taille du champ de la spécification « %% » ignorée" -#: builtin.c:763 +#: builtin.c:768 #, c-format msgid "precision is ignored for `%%' specifier" msgstr "précision de la spécification « %% » ignorée" -#: builtin.c:765 +#: builtin.c:770 #, c-format msgid "field width and precision are ignored for `%%' specifier" msgstr "taille du champ et précision de la spécification « %% » ignorées" -#: builtin.c:816 +#: builtin.c:821 msgid "fatal: `$' is not permitted in awk formats" msgstr "fatal : « $ » n'est pas autorisé dans les formats awk" -#: builtin.c:825 +#: builtin.c:830 msgid "fatal: arg count with `$' must be > 0" msgstr "fatal : le numéro d'argument de « $ » doit être > 0" -#: builtin.c:829 +#: builtin.c:834 #, c-format msgid "fatal: arg count %ld greater than total number of supplied arguments" msgstr "" "fatal : le numéro d'argument %ld est > au nombre total d'arguments fournis" -#: builtin.c:833 +#: builtin.c:838 msgid "fatal: `$' not permitted after period in format" msgstr "fatal : dans un format, « $ » ne doit pas suivre un point" -#: builtin.c:849 +#: builtin.c:854 msgid "fatal: no `$' supplied for positional field width or precision" msgstr "" "fatal : aucun « $ » fourni pour la taille ou la précision du champ positionné" -#: builtin.c:920 +#: builtin.c:925 msgid "`l' is meaningless in awk formats; ignored" msgstr "« l » n'a aucun sens dans un format awk ; ignoré" -#: builtin.c:924 +#: builtin.c:929 msgid "fatal: `l' is not permitted in POSIX awk formats" msgstr "fatal : « l » est interdit dans un format awk POSIX" -#: builtin.c:937 +#: builtin.c:942 msgid "`L' is meaningless in awk formats; ignored" msgstr "« L » n'a aucun sens dans un format awk ; ignoré" -#: builtin.c:941 +#: builtin.c:946 msgid "fatal: `L' is not permitted in POSIX awk formats" msgstr "fatal : « L » est interdit dans un format awk POSIX" -#: builtin.c:954 +#: builtin.c:959 msgid "`h' is meaningless in awk formats; ignored" msgstr "« h » n'a aucun sens dans un format awk ; ignoré" -#: builtin.c:958 +#: builtin.c:963 msgid "fatal: `h' is not permitted in POSIX awk formats" msgstr "fatal : « h » est interdit dans un format awk POSIX" -#: builtin.c:1271 +#: builtin.c:1276 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "[s]printf : valeur %g hors limite pour le format « %%%c »" -#: builtin.c:1331 +#: builtin.c:1336 #, c-format msgid "ignoring unknown format specifier character `%c': no argument converted" msgstr "caractère de format inconnu « %c » ignoré : aucun argument converti" -#: builtin.c:1336 +#: builtin.c:1341 msgid "fatal: not enough arguments to satisfy format string" msgstr "fatal : pas assez d'arguments pour satisfaire la chaîne de formatage" -#: builtin.c:1338 +#: builtin.c:1343 msgid "^ ran out for this one" msgstr "^ à court pour celui-ci" -#: builtin.c:1345 +#: builtin.c:1350 msgid "[s]printf: format specifier does not have control letter" msgstr "[s]printf : spécification de format sans lettre de contrôle" -#: builtin.c:1348 +#: builtin.c:1353 msgid "too many arguments supplied for format string" msgstr "trop d'arguments pour la chaîne de formatage" -#: builtin.c:1422 builtin.c:1433 +#: builtin.c:1427 builtin.c:1438 msgid "printf: no arguments" msgstr "printf : aucun argument" -#: builtin.c:1474 +#: builtin.c:1479 msgid "sqrt: received non-numeric argument" msgstr "sqrt : l'argument n'est pas numérique" -#: builtin.c:1478 +#: builtin.c:1483 #, c-format msgid "sqrt: called with negative argument %g" msgstr "sqrt : appelé avec un argument négatif %g" -#: builtin.c:1502 +#: builtin.c:1507 #, c-format msgid "substr: length %g is not >= 1" msgstr "substr : la longueur %g n'est pas >= 1" -#: builtin.c:1504 +#: builtin.c:1509 #, c-format msgid "substr: length %g is not >= 0" msgstr "substr : la longueur %g n'est pas >= 0" -#: builtin.c:1511 +#: builtin.c:1516 #, c-format msgid "substr: non-integer length %g will be truncated" msgstr "substr : la longueur %g n'est pas entière, elle sera tronquée" -#: builtin.c:1516 +#: builtin.c:1521 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "substr : la longueur %g est trop grande, tronquée à %g" -#: builtin.c:1528 +#: builtin.c:1533 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "substr : l'index de début %g n'est pas valide, utilisation de 1" -#: builtin.c:1533 +#: builtin.c:1538 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "substr : l'index de début %g n'est pas un entier, il sera tronqué" -#: builtin.c:1558 +#: builtin.c:1563 msgid "substr: source string is zero length" msgstr "substr : la chaîne source est de longueur nulle" -#: builtin.c:1574 +#: builtin.c:1579 #, c-format msgid "substr: start index %g is past end of string" msgstr "substr : l'index de début %g est au-delà de la fin de la chaîne" -#: builtin.c:1582 +#: builtin.c:1587 #, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" @@ -767,237 +724,232 @@ msgstr "" "substr : la longueur %g à partir de %g dépasse la fin du 1er argument (%lu)" # Exemple : gawk --lint 'BEGIN { PROCINFO["strftime"]=123 ; print strftime() }' -#: builtin.c:1656 +#: builtin.c:1661 msgid "strftime: format value in PROCINFO[\"strftime\"] has numeric type" msgstr "" "strftime : la valeur de formatage PROCINFO[\"strftime\"] est de type " "numérique" -#: builtin.c:1679 +#: builtin.c:1684 msgid "strftime: received non-numeric second argument" msgstr "strftime : le second argument n'est pas numérique" -#: builtin.c:1682 +#: builtin.c:1687 msgid "strftime: second argument less than 0 or too big for time_t" -msgstr "" +msgstr "strftime: second argument négatif ou trop grand pour time_t" -#: builtin.c:1689 +#: builtin.c:1694 msgid "strftime: received non-string first argument" msgstr "strftim : le premier argument n'est pas une chaîne" -#: builtin.c:1695 +#: builtin.c:1701 msgid "strftime: received empty format string" msgstr "strftime : la chaîne de formatage est vide" -#: builtin.c:1761 +#: builtin.c:1767 msgid "mktime: received non-string argument" msgstr "mktime : l'argument n'est pas une chaîne" -#: builtin.c:1778 +#: builtin.c:1784 msgid "mktime: at least one of the values is out of the default range" msgstr "" "mktime : au moins l'une des valeurs est en dehors de la plage par défaut" -#: builtin.c:1813 +#: builtin.c:1819 msgid "'system' function not allowed in sandbox mode" msgstr "La fonction « system » est interdite en isolement (mode sandbox)" -#: builtin.c:1818 +#: builtin.c:1824 msgid "system: received non-string argument" msgstr "system : l'argument n'est pas une chaîne" -#: builtin.c:1873 eval.c:1159 eval.c:1790 eval.c:1803 -#, c-format -msgid "reference to uninitialized variable `%s'" -msgstr "référence à une variable non initialisée « %s »" - -#: builtin.c:1940 +#: builtin.c:1942 #, c-format msgid "reference to uninitialized field `$%d'" msgstr "référence à un champ non initialisé « $%d »" -#: builtin.c:2027 +#: builtin.c:2029 msgid "tolower: received non-string argument" msgstr "tolower : l'argument n'est pas une chaîne" -#: builtin.c:2061 +#: builtin.c:2063 msgid "toupper: received non-string argument" msgstr "toupper : l'argument n'est pas une chaîne" -#: builtin.c:2097 +#: builtin.c:2099 msgid "atan2: received non-numeric first argument" msgstr "atan2 : le premier argument n'est pas numérique" -#: builtin.c:2099 +#: builtin.c:2101 msgid "atan2: received non-numeric second argument" msgstr "atan2 : le second argument n'est pas numérique" -#: builtin.c:2118 +#: builtin.c:2120 msgid "sin: received non-numeric argument" msgstr "sin : l'argument n'est pas numérique" -#: builtin.c:2134 +#: builtin.c:2136 msgid "cos: received non-numeric argument" msgstr "cos : l'argument n'est pas numérique" -#: builtin.c:2187 +#: builtin.c:2189 msgid "srand: received non-numeric argument" msgstr "srand : l'argument n'est pas numérique" -#: builtin.c:2218 +#: builtin.c:2220 msgid "match: third argument is not an array" msgstr "match : le 3e argument n'est pas un tableau" -#: builtin.c:2482 +#: builtin.c:2484 msgid "gensub: third argument of 0 treated as 1" msgstr "gensub : le 3e argument vaut 0, il sera traité comme un 1" -#: builtin.c:2775 +#: builtin.c:2777 msgid "lshift: received non-numeric first argument" msgstr "lshift : le premier argument n'est pas numérique" -#: builtin.c:2777 +#: builtin.c:2779 msgid "lshift: received non-numeric second argument" msgstr "lshift : le second argument reçu n'est pas numérique" -#: builtin.c:2783 +#: builtin.c:2785 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "" "lshift(%lf, %lf) : les valeurs négatives donneront des résultats inattendus" -#: builtin.c:2785 +#: builtin.c:2787 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "lshift(%lf, %lf) : les valeurs non entières seront tronquées" -#: builtin.c:2787 +#: builtin.c:2789 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "" "lshift(%lf, %lf) : un décalage trop grand donnera des résultats inattendus" -#: builtin.c:2812 +#: builtin.c:2814 msgid "rshift: received non-numeric first argument" msgstr "rshift : le premier argument n'est pas numérique" -#: builtin.c:2814 +#: builtin.c:2816 msgid "rshift: received non-numeric second argument" msgstr "rshift : le second argument reçu n'est pas numérique" -#: builtin.c:2820 +#: builtin.c:2822 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "" "rshift(%lf, %lf) : les valeurs négatives donneront des résultats inattendus" -#: builtin.c:2822 +#: builtin.c:2824 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "rshift(%lf, %lf) : les valeurs non entières seront tronquées" -#: builtin.c:2824 +#: builtin.c:2826 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "" "rshift(%lf, %lf) : un décalage trop grand donnera des résultats inattendus" -#: builtin.c:2849 +#: builtin.c:2851 msgid "and: received non-numeric first argument" msgstr "and : le premier argument n'est pas numérique" -#: builtin.c:2851 +#: builtin.c:2853 msgid "and: received non-numeric second argument" msgstr "and : le second argument reçu n'est pas numérique" -#: builtin.c:2857 +#: builtin.c:2859 #, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "" "and(%lf, %lf) : les valeurs négatives donneront des résultats inattendus" -#: builtin.c:2859 +#: builtin.c:2861 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "and(%lf, %lf): les valeurs non entières seront tronquées" -#: builtin.c:2884 +#: builtin.c:2886 msgid "or: received non-numeric first argument" msgstr "or : le premier argument n'est pas numérique" -#: builtin.c:2886 +#: builtin.c:2888 msgid "or: received non-numeric second argument" msgstr "or : le second argument reçu n'est pas numérique" -#: builtin.c:2892 +#: builtin.c:2894 #, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "" "or(%lf, %lf) : les valeurs négatives donneront des résultats inattendus" -#: builtin.c:2894 +#: builtin.c:2896 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "or(%lf, %lf) : les valeurs non entières seront tronquées" -#: builtin.c:2922 +#: builtin.c:2924 msgid "xor: received non-numeric first argument" msgstr "xor : le premier argument n'est pas numérique" -#: builtin.c:2924 +#: builtin.c:2926 msgid "xor: received non-numeric second argument" msgstr "xor : le second argument reçu n'est pas numérique" -#: builtin.c:2930 +#: builtin.c:2932 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "" "xor(%lf, %lf) : les valeurs négatives donneront des résultats inattendus" -#: builtin.c:2932 +#: builtin.c:2934 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "xor(%lf, %lf) : les valeurs non entières seront tronquées" -#: builtin.c:2956 builtin.c:2962 +#: builtin.c:2958 builtin.c:2964 msgid "compl: received non-numeric argument" msgstr "compl : l'argument n'est pas numérique" -#: builtin.c:2964 +#: builtin.c:2966 #, c-format msgid "compl(%lf): negative value will give strange results" msgstr "compl(%lf) : les valeurs négatives donneront des résultats inattendus" -#: builtin.c:2966 +#: builtin.c:2968 #, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "compl(%lf) : les valeurs non entières seront tronquées" -#: builtin.c:3135 +#: builtin.c:3137 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "dcgettext : « %s » n'est pas dans un catégorie valide de la locale" -#: eval.c:412 +#: eval.c:393 #, c-format msgid "unknown nodetype %d" msgstr "type de nÅ“ud %d inconnu" -#: eval.c:423 eval.c:437 +#: eval.c:404 eval.c:418 #, c-format msgid "unknown opcode %d" msgstr "code opération %d inconnu" -#: eval.c:434 +#: eval.c:415 #, c-format msgid "opcode %s not an operator or keyword" msgstr "le code opération %s n'est pas un opérateur ou un mot-clef" -#: eval.c:488 +#: eval.c:468 msgid "buffer overflow in genflags2str" msgstr "débordement de tampon dans genflag2str" -#: eval.c:698 +#: eval.c:678 #, c-format msgid "" "\n" @@ -1008,222 +960,171 @@ msgstr "" "\t# Pile des appels de fonctions :\n" "\n" -#: eval.c:725 +#: eval.c:706 msgid "`IGNORECASE' is a gawk extension" msgstr "« IGNORECASE » est une extension gawk" -#: eval.c:754 +#: eval.c:736 msgid "`BINMODE' is a gawk extension" msgstr "« BINMODE » est une extension gawk" -#: eval.c:812 +#: eval.c:794 #, c-format msgid "BINMODE value `%s' is invalid, treated as 3" msgstr "la valeur « %s » de BINMODE n'est pas valide, 3 utilisé à la place" -#: eval.c:902 +#: eval.c:887 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "spécification de « %sFMT » erronée « %s »" -#: eval.c:980 +#: eval.c:969 msgid "turning off `--lint' due to assignment to `LINT'" msgstr "désactivation de « --lint » en raison d'une affectation à « LINT »" -#: eval.c:1127 eval.c:1777 -#, c-format -msgid "can't use function name `%s' as variable or array" -msgstr "impossible d'utiliser la fonction « %s » comme variable ou tableau" - -#: eval.c:1158 eval.c:1789 eval.c:1802 +#: eval.c:1119 #, c-format msgid "reference to uninitialized argument `%s'" msgstr "référence à un argument non initialisé « %s »" -#: eval.c:1177 +#: eval.c:1120 +#, c-format +msgid "reference to uninitialized variable `%s'" +msgstr "référence à une variable non initialisée « %s »" + +#: eval.c:1138 msgid "attempt to field reference from non-numeric value" msgstr "tentative de référence à un champ via une valeur non numérique" -#: eval.c:1179 +#: eval.c:1140 msgid "attempt to field reference from null string" msgstr "tentative de référence à un champ via une chaîne nulle" -#: eval.c:1185 +#: eval.c:1146 #, c-format msgid "attempt to access field %ld" msgstr "tentative d'accès au champ %ld" -#: eval.c:1194 +#: eval.c:1155 #, c-format msgid "reference to uninitialized field `$%ld'" msgstr "référence à un champ non initialisé « $%ld »" -#: eval.c:1256 +#: eval.c:1242 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "la fonction « %s » a été appelée avec trop d'arguments" -#: eval.c:1437 +#: eval.c:1436 #, c-format msgid "unwind_stack: unexpected type `%s'" msgstr "unwind_stack: type « %s » inattendu" -#: eval.c:1532 +#: eval.c:1536 msgid "division by zero attempted in `/='" msgstr "tentative de division par zéro dans « /= »" -#: eval.c:1539 +#: eval.c:1543 #, c-format msgid "division by zero attempted in `%%='" msgstr "tentative de division par zéro dans « %%= »" -#: eval.c:1876 eval.c:2122 -#, c-format -msgid "attempt to use array `%s[\"%.*s\"]' in a scalar context" -msgstr "" -"tentative d'utilisation du tableau « %s[\"%.*s\"] » dans un contexte scalaire" - -#: eval.c:1907 -msgid "assignment used in conditional context" -msgstr "affectation utilisée dans un contexte conditionnel" - -#: eval.c:1911 -msgid "statement has no effect" -msgstr "la déclaration est sans effet" - -#: eval.c:2343 -#, c-format -msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" -msgstr "boucle for : la taille du tableau « %s » est passée de %ld à %ld" - -#: eval.c:2458 -#, c-format -msgid "function called indirectly through `%s' does not exist" -msgstr "la fonction indirectement appelée via « %s » n'existe pas" - -#: eval.c:2470 -#, c-format -msgid "function `%s' not defined" -msgstr "fonction « %s » non définie" - -#: eval.c:2511 -#, c-format -msgid "non-redirected `getline' invalid inside `%s' rule" -msgstr "un « getline » non redirigé n'est pas valable dans une règle « %s »" - -#: eval.c:2600 -#, c-format -msgid "error reading input file `%s': %s" -msgstr "erreur lors de la lecture du fichier en entrée « %s » : %s" - -#: eval.c:2614 -#, c-format -msgid "`nextfile' cannot be called from a `%s' rule" -msgstr "« nextfile » ne peut pas être appelé depuis une règle « %s »" - -#: eval.c:2694 -#, c-format -msgid "`next' cannot be called from a `%s' rule" -msgstr "« next » ne peut pas être appelé depuis une règle « %s »" - -#: eval.c:2760 -#, c-format -msgid "Sorry, don't know how to interpret `%s'" -msgstr "Désolé, je ne sais pas comment interpréter « %s »" - -#: ext.c:64 +#: ext.c:70 msgid "extensions are not allowed in sandbox mode" msgstr "les extensions sont interdites en isolement (mode sandbox)" -#: ext.c:70 ext.c:75 +#: ext.c:73 msgid "`extension' is a gawk extension" msgstr "« extension » est une extension gawk" -#: ext.c:85 -#, c-format -msgid "fatal: extension: cannot open `%s' (%s)\n" +#: ext.c:80 +#, fuzzy, c-format +msgid "extension: cannot open library `%s' (%s)\n" msgstr "fatal : extension : impossible d'ouvrir « %s » (%s)\n" -#: ext.c:94 -#, c-format +#: ext.c:86 +#, fuzzy, c-format msgid "" -"fatal: extension: library `%s': does not define " -"`plugin_is_GPL_compatible' (%s)\n" +"extension: library `%s': does not define `plugin_is_GPL_compatible' (%s)\n" msgstr "" "fatal : extension : la bibliothèque « %s »ne définit pas " "« plugin_is_GPL_compatible » (%s)\n" -#: ext.c:103 -#, c-format -msgid "fatal: extension: library `%s': cannot call function `%s' (%s)\n" +#: ext.c:91 +#, fuzzy, c-format +msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "" "fatal : extension : bibliothèque « %s » : impossible d'appeler la fonction " "« %s » (%s)\n" -#: ext.c:137 +#: ext.c:119 msgid "extension: missing function name" msgstr "extension : nom de fonction manquant" -#: ext.c:142 +#: ext.c:124 #, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "extension : caractère illégal « %c » dans le nom de la fonction « %s »" -#: ext.c:151 +#: ext.c:132 #, c-format msgid "extension: can't redefine function `%s'" msgstr "extension : impossible de redéfinir la fonction « %s »" -#: ext.c:155 +#: ext.c:136 #, c-format msgid "extension: function `%s' already defined" msgstr "extension : fonction « %s » est déjà définie" -#: ext.c:160 +#: ext.c:140 #, c-format msgid "extension: function name `%s' previously defined" msgstr "extension : nom de la fonction « %s » déjà défini" -#: ext.c:162 +#: ext.c:142 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "" "extension : impossible d'utiliser la fonction interne gawk « %s » comme nom " "de fonction" -#: ext.c:166 +#: ext.c:145 #, c-format msgid "make_builtin: negative argument count for function `%s'" msgstr "make_builtin : la fonction « %s » a un nombre négatif d'arguments" -#: ext.c:269 +#: ext.c:207 #, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "fonction « %s » définie comme ayant au maximum« %d » argument(s)" -#: ext.c:272 +#: ext.c:210 #, c-format msgid "function `%s': missing argument #%d" msgstr "fonction « %s » : argument #%d manquant" -#: ext.c:289 +#: ext.c:227 #, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "" "fonction « %s » : argument #%d : tentative d'utilisation d'un scalaire comme " "tableau" -#: ext.c:293 +#: ext.c:231 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "" "fonction « %s » : argument #%d : tentative d'utiliser un tableau comme " "scalaire" -#: ext.c:306 +#: ext.c:245 msgid "Operation Not Supported" msgstr "Opération non disponible" +#: ext.c:257 +msgid "dynamic loading of library not supported" +msgstr "" + #: field.c:328 msgid "NF set to negative value" msgstr "une valeur négative a été assignée à NF" @@ -1287,549 +1188,559 @@ msgstr "" "patsplit : impossible d'utiliser un sous-tableau du 4e argument en 2e " "argument" -#: field.c:1110 +#: field.c:1111 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "« FIELDWIDTHS » est une extension gawk" -#: field.c:1173 +#: field.c:1175 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "valeur de FIELDWIDTHS non valide, près de « %s »" -#: field.c:1246 +#: field.c:1248 msgid "null string for `FS' is a gawk extension" msgstr "utiliser une chaîne vide pour « FS » est une extension gawk" -#: field.c:1250 +#: field.c:1252 msgid "old awk does not support regexps as value of `FS'" msgstr "" "l'ancien awk n'accepte pas les expr. rationnelles comme valeur de « FS »" -#: field.c:1369 +#: field.c:1371 msgid "`FPAT' is a gawk extension" msgstr "« FPAT » est une extension gawk" -#: getopt.c:574 getopt.c:590 -#, c-format -msgid "%s: option '%s' is ambiguous\n" +#: getopt.c:604 getopt.c:633 +#, fuzzy, c-format +msgid "%s: option '%s' is ambiguous; possibilities:" msgstr "%s : l'option « %s » est ambiguë\n" -#: getopt.c:623 getopt.c:627 +#: getopt.c:679 getopt.c:683 #, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s : l'option « --%s » n'accepte pas d'argument\n" -#: getopt.c:636 getopt.c:641 +#: getopt.c:692 getopt.c:697 #, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s : l'option « %c%s » n'accepte pas d'argument\n" -#: getopt.c:684 getopt.c:703 +#: getopt.c:740 getopt.c:759 #, c-format msgid "%s: option '--%s' requires an argument\n" msgstr "%s : l'option « --%s » nécessite un argument\n" -#: getopt.c:741 getopt.c:744 +#: getopt.c:797 getopt.c:800 #, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s : option non reconnue « --%s »\n" -#: getopt.c:752 getopt.c:755 +#: getopt.c:808 getopt.c:811 #, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s : option non reconnue « %c%s »\n" -#: getopt.c:804 getopt.c:807 +#: getopt.c:860 getopt.c:863 #, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s : option non valide -- « %c »\n" -#: getopt.c:857 getopt.c:874 getopt.c:1082 getopt.c:1100 +#: getopt.c:916 getopt.c:933 getopt.c:1143 getopt.c:1161 #, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s : l'option requiert un argument -- « %c »\n" -#: getopt.c:930 getopt.c:946 +#: getopt.c:989 getopt.c:1005 #, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s : l'option « -W %s » est ambiguë\n" -#: getopt.c:970 getopt.c:988 +#: getopt.c:1029 getopt.c:1047 #, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s : l'option « -W %s » n'accepte pas d'argument\n" -#: getopt.c:1009 getopt.c:1027 +#: getopt.c:1068 getopt.c:1086 #, c-format msgid "%s: option '-W %s' requires an argument\n" msgstr "%s : l'option « -W %s » nécessite un argument\n" -#: io.c:280 +#: io.c:315 #, c-format msgid "command line argument `%s' is a directory: skipped" msgstr "L'argument « %s » de la ligne de commande est un répertoire : ignoré" -#: io.c:283 io.c:385 +#: io.c:318 io.c:421 #, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "impossible d'ouvrir le fichier « %s » en lecture (%s)" -#: io.c:501 +#: io.c:537 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "échec de la fermeture du fd %d (« %s ») : %s" -#: io.c:578 +#: io.c:614 msgid "redirection not allowed in sandbox mode" msgstr "les redirections sont interdites en isolement (mode sandbox)" -#: io.c:612 +#: io.c:648 #, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "l'expression dans la redirection « %s » n'a qu'une valeur numérique" -#: io.c:618 +#: io.c:654 #, c-format msgid "expression for `%s' redirection has null string value" msgstr "l'expression dans la redirection « %s » donne une chaîne nulle" -#: io.c:624 +#: io.c:659 #, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "" "le fichier « %s » de la redirection « %s » pourrait être le résultat d'une " "expression booléenne" -#: io.c:667 +#: io.c:702 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "mélange non nécessaire de « > » et « >> » pour le fichier « %.*s »" -#: io.c:720 +#: io.c:755 #, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "impossible d'ouvrir le tube « %s » en sortie (%s)" -#: io.c:730 +#: io.c:765 #, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "impossible d'ouvrir le tube « %s » en entrée (%s)" -#: io.c:753 +#: io.c:788 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "" "impossible d'ouvrir un tube bidirectionnel « %s » en entrées-sorties (%s)" -#: io.c:835 +#: io.c:870 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "impossible de rediriger depuis « %s » (%s)" -#: io.c:838 +#: io.c:873 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "impossible de rediriger vers « %s » (%s)" -#: io.c:889 +#: io.c:924 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "" "limite système du nombre de fichiers ouverts atteinte : début du " "multiplexage des descripteurs de fichiers" -#: io.c:905 +#: io.c:940 #, c-format msgid "close of `%s' failed (%s)." msgstr "échec de la fermeture de « %s » (%s)" -#: io.c:913 +#: io.c:948 msgid "too many pipes or input files open" msgstr "trop de fichiers d'entrées ou de tubes ouverts" -#: io.c:935 +#: io.c:970 msgid "close: second argument must be `to' or `from'" msgstr "close : le second argument doit être « to » ou « from »" -#: io.c:952 +#: io.c:987 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "" "close : « %.*s » n'est ni un fichier ouvert, ni un tube ou un co-processus" -#: io.c:957 +#: io.c:992 msgid "close of redirection that was never opened" msgstr "fermeture d'une redirection qui n'a jamais été ouverte" -#: io.c:1054 +#: io.c:1089 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "" "close : la redirection « %s » n'a pas été ouverte avec « |& », second " "argument ignoré" -#: io.c:1070 +#: io.c:1105 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "résultat d'échec (%d) sur la fermeture du tube « %s » (%s)" -#: io.c:1073 +#: io.c:1108 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "résultat d'échec (%d) sur la fermeture du fichier « %s » (%s)" -#: io.c:1093 +#: io.c:1128 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "aucune fermeture explicite du connecteur « %s » fournie" -#: io.c:1096 +#: io.c:1131 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "aucune fermeture explicite du co-processus « %s » fournie" -#: io.c:1099 +#: io.c:1134 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "aucune fermeture explicite du tube « %s » fournie" -#: io.c:1102 +#: io.c:1137 #, c-format msgid "no explicit close of file `%s' provided" msgstr "aucune fermeture explicite du fichier « %s » fournie" -#: io.c:1130 io.c:1185 main.c:793 main.c:830 +#: io.c:1165 io.c:1220 main.c:798 main.c:835 #, c-format msgid "error writing standard output (%s)" msgstr "erreur lors de l'écriture vers la sortie standard (%s)" -#: io.c:1134 io.c:1190 +#: io.c:1169 io.c:1225 #, c-format msgid "error writing standard error (%s)" msgstr "erreur lors de l'écriture vers l'erreur standard (%s)" -#: io.c:1142 +#: io.c:1177 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "échec du vidage du tube « %s » (%s)." -#: io.c:1145 +#: io.c:1180 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "échec du vidage du tube vers « %s » par le co-processus (%s)." -#: io.c:1148 +#: io.c:1183 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "échec du vidage vers le fichier « %s » (%s)" -#: io.c:1263 +#: io.c:1298 #, c-format msgid "local port %s invalid in `/inet'" msgstr "le port local %s n'est pas valide dans « /inet »" -#: io.c:1280 +#: io.c:1315 #, c-format msgid "remote host and port information (%s, %s) invalid" msgstr "" "les informations sur l'hôte et le port distants (%s, %s) ne sont pas valides" -#: io.c:1432 +#: io.c:1467 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "" "aucun protocole (connu) n'a été fourni dans le nom de fichier spécial « %s »" -#: io.c:1446 +#: io.c:1481 #, c-format msgid "special file name `%s' is incomplete" msgstr "nom de fichier spécial « %s » incomplet" -#: io.c:1463 +#: io.c:1498 msgid "must supply a remote hostname to `/inet'" msgstr "un nom d'hôte distant doit être fourni à « /inet »" -#: io.c:1481 +#: io.c:1516 msgid "must supply a remote port to `/inet'" msgstr "un port distant doit être fourni à « /inet »" -#: io.c:1527 +#: io.c:1562 msgid "TCP/IP communications are not supported" msgstr "les communications TCP/IP ne sont pas disponibles" -#: io.c:1694 +#: io.c:1729 #, c-format msgid "could not open `%s', mode `%s'" msgstr "impossible d'ouvrir « %s », mode « %s »" -#: io.c:1748 +#: io.c:1783 #, c-format msgid "close of master pty failed (%s)" msgstr "échec de la fermeture du pty maître (%s)" -#: io.c:1750 io.c:1918 io.c:2075 +#: io.c:1785 io.c:1953 io.c:2110 #, c-format msgid "close of stdout in child failed (%s)" msgstr "échec de la fermeture de stdout du processus fils (%s)" -#: io.c:1753 +#: io.c:1788 #, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "" "échec du déplacement du pty esclave vers le stdout du processus fils (dup : " "%s)" -#: io.c:1755 io.c:1923 +#: io.c:1790 io.c:1958 #, c-format msgid "close of stdin in child failed (%s)" msgstr "échec de fermeture du stdin du processus fils (%s)" -#: io.c:1758 +#: io.c:1793 #, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "" "échec du déplacement du pty esclave vers le stdin du processus fils (dup : " "%s)" -#: io.c:1760 io.c:1781 +#: io.c:1795 io.c:1816 #, c-format msgid "close of slave pty failed (%s)" msgstr "échec de la fermeture du pty esclave (%s)" -#: io.c:1859 io.c:1921 io.c:2053 io.c:2078 +#: io.c:1894 io.c:1956 io.c:2088 io.c:2113 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "échec du déplacement du tube vers stdout du processus fils (dup : %s)" -#: io.c:1866 io.c:1926 +#: io.c:1901 io.c:1961 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "échec de déplacement du tube vers stdin du processus fils (dup : %s)" -#: io.c:1886 io.c:2068 +#: io.c:1921 io.c:2103 msgid "restoring stdout in parent process failed\n" msgstr "échec de la restauration du stdout dans le processus parent\n" -#: io.c:1894 +#: io.c:1929 msgid "restoring stdin in parent process failed\n" msgstr "échec de la restauration du stdin dans le processus parent\n" -#: io.c:1929 io.c:2080 io.c:2094 +#: io.c:1964 io.c:2115 io.c:2129 #, c-format msgid "close of pipe failed (%s)" msgstr "échec de la fermeture du tube (%s)" -#: io.c:1974 +#: io.c:2009 msgid "`|&' not supported" msgstr "« |& » non disponible" -#: io.c:2040 +#: io.c:2075 #, c-format msgid "cannot open pipe `%s' (%s)" msgstr "impossible d'ouvrir le tube « %s » (%s)" -#: io.c:2088 +#: io.c:2123 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "impossible de créer le processus fils pour « %s » (fork : %s)" -#: io.c:2521 +#: io.c:2613 #, c-format msgid "data file `%s' is empty" msgstr "le fichier de données « %s » est vide" -#: io.c:2562 io.c:2570 +#: io.c:2654 io.c:2662 msgid "could not allocate more input memory" msgstr "impossible d'allouer plus de mémoire d'entrée" -#: io.c:3128 +#: io.c:3223 msgid "multicharacter value of `RS' is a gawk extension" msgstr "" "l'utilisation d'un « RS » de plusieurs caractères est une extension gawk" -#: io.c:3233 +#: io.c:3313 msgid "IPv6 communication is not supported" msgstr "les communications IPv6 ne sont pas disponibles" -#: main.c:364 +#: main.c:353 msgid "`-m[fr]' option irrelevant in gawk" msgstr "l'option « -m[fr] » n'est pas pertinente en gawk" -#: main.c:366 +#: main.c:355 msgid "-m option usage: `-m[fr] nnn'" msgstr "utilisation de l'option « -m » : « -m[fr] nnn »" -#: main.c:389 +#: main.c:384 msgid "empty argument to `-e/--source' ignored" msgstr "argument vide de l'option « -e / --source » ignoré" -#: main.c:460 +#: main.c:464 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "%s : option « -W %s » non reconnue, ignorée\n" -#: main.c:513 +#: main.c:510 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s : l'option requiert un argument -- %c\n" -#: main.c:534 +#: main.c:531 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "" "variable d'environnement « POSIXLY__CORRECT » définie : activation de « --" "posix »" -#: main.c:540 +#: main.c:537 msgid "`--posix' overrides `--traditional'" msgstr "« --posix » prend le pas sur « --traditional »" -#: main.c:551 +#: main.c:548 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "" "« --posix » et « --traditional » prennent le pas sur « --non-decimal-data »" -#: main.c:555 +#: main.c:552 #, c-format msgid "running %s setuid root may be a security problem" msgstr "" "l'exécution de %s en mode setuid root peut être un problème de sécurité" -#: main.c:560 +#: main.c:557 msgid "`--posix' overrides `--binary'" msgstr "« --posix » prend le pas sur « --binary »" -#: main.c:611 +#: main.c:600 #, c-format msgid "can't set binary mode on stdin (%s)" msgstr "impossible d'activer le mode binaire sur stdin (%s)" -#: main.c:614 +#: main.c:603 #, c-format msgid "can't set binary mode on stdout (%s)" msgstr "impossible d'activer le mode binaire sur stdout (%s)" -#: main.c:616 +#: main.c:605 #, c-format msgid "can't set binary mode on stderr (%s)" msgstr "impossible d'activer le mode binaire sur stderr (%s)" -#: main.c:655 +#: main.c:653 msgid "no program text at all!" msgstr "aucun programme !" -#: main.c:733 +#: main.c:737 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "" "Utilisation : %s [options GNU ou POSIX] -f fichier_prog [--] fichier ...\n" -#: main.c:735 +#: main.c:739 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "" "Utilisation : %s [options GNU ou POSIX] [--] %cprogramme%c fichier ...\n" -#: main.c:740 +#: main.c:744 msgid "POSIX options:\t\tGNU long options: (standard)\n" msgstr "Options POSIX :\t\tOptions longues GNU : (standard)\n" -#: main.c:741 +#: main.c:745 msgid "\t-f progfile\t\t--file=progfile\n" msgstr "\t-f fichier_prog\t\t--file=fichier_prog\n" -#: main.c:742 +#: main.c:746 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "\t-F fs\t\t\t--field-separator=fs\n" -#: main.c:743 +#: main.c:747 msgid "\t-v var=val\t\t--assign=var=val\n" msgstr "\t-v var=valeur\t\t--assign=var=valeur\n" -#: main.c:744 +#: main.c:748 msgid "Short options:\t\tGNU long options: (extensions)\n" msgstr "Options POSIX :\t\tOptions longues GNU : (extensions)\n" -#: main.c:745 +#: main.c:749 msgid "\t-b\t\t\t--characters-as-bytes\n" msgstr "\t-b\t\t\t--characters-as-bytes\n" -#: main.c:746 +#: main.c:750 msgid "\t-c\t\t\t--traditional\n" msgstr "\t-c\t\t\t--traditional\n" -#: main.c:747 +#: main.c:751 msgid "\t-C\t\t\t--copyright\n" msgstr "\t-C\t\t\t--copyright\n" -#: main.c:748 +#: main.c:752 msgid "\t-d[file]\t\t--dump-variables[=file]\n" msgstr "\t-d[fichier]\t\t--dump-variables[=fichier]\n" -#: main.c:749 +#: main.c:753 +#, fuzzy +msgid "\t-D[file]\t\t--debug[=file]\n" +msgstr "\t-p[fichier]\t\t--profile[=fichier]\n" + +#: main.c:754 msgid "\t-e 'program-text'\t--source='program-text'\n" msgstr "\t-e 'programme'\t\t--source='programme'\n" -#: main.c:750 +#: main.c:755 msgid "\t-E file\t\t\t--exec=file\n" msgstr "\t-E fichier\t\t--exec=fichier\n" -#: main.c:751 +#: main.c:756 msgid "\t-g\t\t\t--gen-pot\n" msgstr "\t-g\t\t\t--gen-pot\n" -#: main.c:752 +#: main.c:757 msgid "\t-h\t\t\t--help\n" msgstr "\t-h\t\t\t--help\n" -#: main.c:753 +#: main.c:758 +msgid "\t-l library\t\t--load=library\n" +msgstr "" + +#: main.c:759 msgid "\t-L [fatal]\t\t--lint[=fatal]\n" msgstr "\t-L [fatal]\t\t--lint[=fatal]\n" -#: main.c:754 +#: main.c:760 msgid "\t-n\t\t\t--non-decimal-data\n" msgstr "\t-n\t\t\t--non-decimal-data\n" -#: main.c:755 +#: main.c:761 msgid "\t-N\t\t\t--use-lc-numeric\n" msgstr "\t-N\t\t\t--use-lc-numeric\n" -#: main.c:756 +#: main.c:762 +#, fuzzy +msgid "\t-o[file]\t\t--pretty-print[=file]\n" +msgstr "\t-p[fichier]\t\t--profile[=fichier]\n" + +#: main.c:763 msgid "\t-O\t\t\t--optimize\n" msgstr "\t-O\t\t\t--optimize\n" -#: main.c:757 +#: main.c:764 msgid "\t-p[file]\t\t--profile[=file]\n" msgstr "\t-p[fichier]\t\t--profile[=fichier]\n" -#: main.c:758 +#: main.c:765 msgid "\t-P\t\t\t--posix\n" msgstr "\t-P\t\t\t--posix\n" -#: main.c:759 +#: main.c:766 msgid "\t-r\t\t\t--re-interval\n" msgstr "\t-r\t\t\t--re-interval\n" -#: main.c:761 -msgid "\t-R file\t\t\t--command=file\n" -msgstr "\t-R fichier\t\t\t--command=fichier\n" - -#: main.c:762 +#: main.c:767 msgid "\t-S\t\t\t--sandbox\n" msgstr "\t-S\t\t\t--sandbox\n" -#: main.c:763 +#: main.c:768 msgid "\t-t\t\t\t--lint-old\n" msgstr "\t-t\t\t\t--lint-old\n" -#: main.c:764 +#: main.c:769 msgid "\t-V\t\t\t--version\n" msgstr "\t-V\t\t\t--version\n" -#: main.c:766 +#: main.c:771 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "\t-W nostalgia\t\t--nostalgia\n" -#: main.c:769 +#: main.c:774 msgid "\t-Y\t\t--parsedebug\n" msgstr "\t-Y\t\t--parsedebug\n" @@ -1838,7 +1749,7 @@ msgstr "\t-Y\t\t--parsedebug\n" #. for this application. Please add _another line_ with the #. address for translation bugs. #. no-wrap -#: main.c:778 +#: main.c:783 msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" @@ -1853,7 +1764,7 @@ msgstr "" "<traduc CHEZ traduc POINT org>.\n" "\n" -#: main.c:782 +#: main.c:787 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" @@ -1863,7 +1774,7 @@ msgstr "" "Par défaut, il lit l'entrée standard et écrit sur la sortie standard.\n" "\n" -#: main.c:786 +#: main.c:791 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" @@ -1873,7 +1784,7 @@ msgstr "" "\tgawk '{ somme += $1 }; END { print somme }' fichier\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" -#: main.c:806 +#: main.c:811 #, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" @@ -1893,7 +1804,7 @@ msgstr "" "version ultérieure de votre choix.\n" "\n" -#: main.c:814 +#: main.c:819 msgid "" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" @@ -1908,7 +1819,7 @@ msgstr "" "General Public License).\n" "\n" -#: main.c:820 +#: main.c:825 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program. If not, see http://www.gnu.org/licenses/.\n" @@ -1917,16 +1828,16 @@ msgstr "" "(GNU General Public License) avec ce programme. Sinon, consultez\n" "http://www.gnu.org/licenses/.\n" -#: main.c:855 +#: main.c:860 msgid "-Ft does not set FS to tab in POSIX awk" msgstr "-Ft ne définit pas le FS comme étant une tabulation en awk POSIX" -#: main.c:1089 +#: main.c:1091 #, c-format msgid "unknown value for field spec: %d\n" msgstr "valeur inconnue pour la définition de champ : %d\n" -#: main.c:1170 +#: main.c:1172 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" @@ -1935,84 +1846,79 @@ msgstr "" "%s : « %s » l'argument de « -v » ne respecte pas la forme « var=valeur »\n" "\n" -#: main.c:1196 +#: main.c:1198 #, c-format msgid "`%s' is not a legal variable name" msgstr "« %s » n'est pas un nom de variable valide" -#: main.c:1199 +#: main.c:1201 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "« %s » n'est pas un nom de variable, recherche du fichier « %s=%s »" -#: main.c:1203 +#: main.c:1205 #, c-format msgid "cannot use gawk builtin `%s' as variable name" msgstr "impossible d'utiliser le mot clef gawk « %s » comme variable" -#: main.c:1208 +#: main.c:1210 #, c-format msgid "cannot use function `%s' as variable name" msgstr "impossible d'utiliser la fonction « %s » comme variable" -#: main.c:1261 +#: main.c:1263 msgid "floating point exception" msgstr "exception du traitement en virgule flottante" -#: main.c:1268 +#: main.c:1270 msgid "fatal error: internal error" msgstr "fatal : erreur interne" -#: main.c:1283 +#: main.c:1285 msgid "fatal error: internal error: segfault" msgstr "fatal : erreur interne : erreur de segmentation" -#: main.c:1295 +#: main.c:1297 msgid "fatal error: internal error: stack overflow" msgstr "fatal : erreur interne : débordement de la pile" -#: main.c:1345 +#: main.c:1347 #, c-format msgid "no pre-opened fd %d" msgstr "aucun descripteur fd %d pré-ouvert" -#: main.c:1352 +#: main.c:1354 #, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "impossible de pré-ouvrir /dev/null pour le descripteud fd %d" -#: main.c:1375 main.c:1384 -#, c-format -msgid "could not find groups: %s" -msgstr "impossible de trouver les groupes : %s" - -#: msg.c:63 +#: msg.c:61 #, c-format msgid "cmd. line:" msgstr "ligne de commande:" -#: msg.c:107 +#: msg.c:105 msgid "error: " msgstr "erreur : " -#: node.c:406 +#: node.c:402 msgid "backslash at end of string" msgstr "barre oblique inverse à la fin de la chaîne" -#: node.c:517 +#: node.c:479 #, c-format msgid "old awk does not support the `\\%c' escape sequence" msgstr "l'ancien awk ne dispose pas de la séquence d'échappement « \\%c »" -#: node.c:568 +#: node.c:530 msgid "POSIX does not allow `\\x' escapes" msgstr "POSIX n'autorise pas les séquences d'échappement « \\x »" -#: node.c:574 +#: node.c:536 msgid "no hex digits in `\\x' escape sequence" msgstr "aucun chiffre hexadécimal dans la séquence d'échappement « \\x » " -#: node.c:596 +#: node.c:558 #, c-format msgid "" "hex escape \\x%.*s of %d characters probably not interpreted the way you " @@ -2021,12 +1927,12 @@ msgstr "" "la séquence d'échappement hexa. \\x%.*s de %d caractères ne sera " "probablement pas interprétée comme vous l'imaginez" -#: node.c:611 +#: node.c:573 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "séquence d'échappement « \\%c » traitée comme un simple « %c »" -#: node.c:750 +#: node.c:712 msgid "" "Invalid multibyte data detected. There may be a mismatch between your data " "and your locale." @@ -2046,16 +1952,16 @@ msgid "%s %s `%s': could not set close-on-exec: (fcntl F_SETFD: %s)" msgstr "" "%s %s « %s »: impossible de positionner close-on-exec: (fcntl F_SETFD: %s)" -#: profile.c:83 +#: profile.c:69 #, c-format msgid "could not open `%s' for writing: %s" msgstr "impossible d'ouvrir « %s » en écriture : %s" -#: profile.c:85 +#: profile.c:71 msgid "sending profile to standard error" msgstr "envoi du profil vers la sortie d'erreur standard" -#: profile.c:203 +#: profile.c:187 #, c-format msgid "" "\t# %s block(s)\n" @@ -2064,7 +1970,7 @@ msgstr "" "\t# Bloc(s) %s\n" "\n" -#: profile.c:208 +#: profile.c:192 #, c-format msgid "" "\t# Rule(s)\n" @@ -2073,17 +1979,22 @@ msgstr "" "\t# Règle(s)\n" "\n" -#: profile.c:279 +#: profile.c:266 #, c-format msgid "internal error: %s with null vname" msgstr "erreur interne : %s avec un vname nul" -#: profile.c:952 +#: profile.c:528 +#, fuzzy +msgid "internal error: builtin with null fname" +msgstr "erreur interne : %s avec un vname nul" + +#: profile.c:943 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "\t# profile gawk, créé %s\n" -#: profile.c:1331 +#: profile.c:1321 #, c-format msgid "" "\n" @@ -2092,96 +2003,169 @@ msgstr "" "\n" "\t# Fonctions, par ordre alphabétique\n" -#: profile.c:1370 +#: profile.c:1359 #, c-format msgid "redir2str: unknown redirection type %d" msgstr "redir2str : type de redirection %d inconnu" -#: re.c:572 -#, fuzzy, c-format +#: re.c:573 +#, c-format msgid "range of the form `[%c-%c]' is locale dependent" -msgstr "" -"les plages de type « [%c-%c] » sont dépendantes des paramètres régionaux " -"(locale)" +msgstr "les plages « [%c-%c] » sont dépendantes des paramètres régionaux" -#: re.c:599 +#: re.c:600 #, c-format msgid "regexp component `%.*s' should probably be `[%.*s]'" msgstr "" "le composant d'expression rationnelle « %.*s » devrait probablement être " "« [%.*s] »" -#: regcomp.c:132 +#: regcomp.c:131 msgid "Success" msgstr "Succès" -#: regcomp.c:135 +#: regcomp.c:134 msgid "No match" msgstr "Aucune concordance" -#: regcomp.c:138 +#: regcomp.c:137 msgid "Invalid regular expression" msgstr "Expression rationnelle non valide" -#: regcomp.c:141 +#: regcomp.c:140 msgid "Invalid collation character" msgstr "Caractère d'interclassement non valide" -#: regcomp.c:144 +#: regcomp.c:143 msgid "Invalid character class name" msgstr "Nom de classe de caractères non valide" -#: regcomp.c:147 +#: regcomp.c:146 msgid "Trailing backslash" msgstr "Barre oblique inverse finale" -#: regcomp.c:150 +#: regcomp.c:149 msgid "Invalid back reference" msgstr "Référence arrière non valide" -#: regcomp.c:153 +#: regcomp.c:152 msgid "Unmatched [ or [^" msgstr "[ ou [^ sans correspondance" -#: regcomp.c:156 +#: regcomp.c:155 msgid "Unmatched ( or \\(" msgstr "( ou \\( sans correspondance" -#: regcomp.c:159 +#: regcomp.c:158 msgid "Unmatched \\{" msgstr "\\{ sans correspondance" -#: regcomp.c:162 +#: regcomp.c:161 msgid "Invalid content of \\{\\}" msgstr "Contenu de \\{\\} non valide" -#: regcomp.c:165 +#: regcomp.c:164 msgid "Invalid range end" msgstr "Borne finale non valide" -#: regcomp.c:168 +#: regcomp.c:167 msgid "Memory exhausted" msgstr "Mémoire épuisée" -#: regcomp.c:171 +#: regcomp.c:170 msgid "Invalid preceding regular expression" msgstr "Expression rationnelle précédente non valide" -#: regcomp.c:174 +#: regcomp.c:173 msgid "Premature end of regular expression" msgstr "Fin prématurée de l'expression rationnelle" -#: regcomp.c:177 +#: regcomp.c:176 msgid "Regular expression too big" msgstr "Expression rationnelle trop grande" -#: regcomp.c:180 +#: regcomp.c:179 msgid "Unmatched ) or \\)" msgstr ") ou \\) sans correspondance" -#: regcomp.c:701 +#: regcomp.c:700 msgid "No previous regular expression" msgstr "Aucune expression rationnelle précédente" +#~ msgid "attempt to use function `%s' as an array" +#~ msgstr "tentative d'utiliser la fonction « %s » comme tableau" + +#~ msgid "reference to uninitialized element `%s[\"%.*s\"]'" +#~ msgstr "référence à un élément non initialisé « %s[\"%.*s\"] »" + +#~ msgid "subscript of array `%s' is null string" +#~ msgstr "l'indice du tableau « %s » est une chaîne vide" + +#~ msgid "%s: empty (null)\n" +#~ msgstr "%s : vide (non défini)\n" + +#~ msgid "%s: empty (zero)\n" +#~ msgstr "%s : vide (vide)\n" + +#~ msgid "%s: table_size = %d, array_size = %d\n" +#~ msgstr "%s : table_size = %d, array_size = %d\n" + +#~ msgid "%s: is parameter\n" +#~ msgstr "%s : est un paramètre\n" + +#~ msgid "%s: array_ref to %s\n" +#~ msgstr "%s : array_ref à %s\n" + +#~ msgid "use of non-array as array" +#~ msgstr "utilisation d'un non tableau comme tableau" + +#~ msgid "can't use function name `%s' as variable or array" +#~ msgstr "impossible d'utiliser la fonction « %s » comme variable ou tableau" + +#~ msgid "attempt to use array `%s[\"%.*s\"]' in a scalar context" +#~ msgstr "" +#~ "tentative d'utilisation du tableau « %s[\"%.*s\"] » dans un contexte " +#~ "scalaire" + +#~ msgid "assignment used in conditional context" +#~ msgstr "affectation utilisée dans un contexte conditionnel" + +#~ msgid "statement has no effect" +#~ msgstr "la déclaration est sans effet" + +#~ msgid "" +#~ "for loop: array `%s' changed size from %ld to %ld during loop execution" +#~ msgstr "boucle for : la taille du tableau « %s » est passée de %ld à %ld" + +#~ msgid "function called indirectly through `%s' does not exist" +#~ msgstr "la fonction indirectement appelée via « %s » n'existe pas" + +#~ msgid "function `%s' not defined" +#~ msgstr "fonction « %s » non définie" + +#~ msgid "non-redirected `getline' invalid inside `%s' rule" +#~ msgstr "un « getline » non redirigé n'est pas valable dans une règle « %s »" + +#~ msgid "error reading input file `%s': %s" +#~ msgstr "erreur lors de la lecture du fichier en entrée « %s » : %s" + +#~ msgid "`nextfile' cannot be called from a `%s' rule" +#~ msgstr "« nextfile » ne peut pas être appelé depuis une règle « %s »" + +#~ msgid "`exit' cannot be called in the current context" +#~ msgstr "« exit » ne peut pas être appelé dans ce contexte" + +#~ msgid "`next' cannot be called from a `%s' rule" +#~ msgstr "« next » ne peut pas être appelé depuis une règle « %s »" + +#~ msgid "Sorry, don't know how to interpret `%s'" +#~ msgstr "Désolé, je ne sais pas comment interpréter « %s »" + +#~ msgid "\t-R file\t\t\t--command=file\n" +#~ msgstr "\t-R fichier\t\t\t--command=fichier\n" + +#~ msgid "could not find groups: %s" +#~ msgstr "impossible de trouver les groupes : %s" + #~ msgid "assignment is not allowed to result of builtin function" #~ msgstr "impossible d'affecter au résultat d'une fonction interne" diff --git a/po/gawk.pot b/po/gawk.pot index aa30ff3c..29777e0c 100644 --- a/po/gawk.pot +++ b/po/gawk.pot @@ -6,9 +6,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: gawk 4.0.0e\n" +"Project-Id-Version: gawk 4.0.70\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" -"POT-Creation-Date: 2011-11-14 21:46+0200\n" +"POT-Creation-Date: 2012-04-08 12:18+0300\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" @@ -17,944 +17,895 @@ msgstr "" "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" -#: array.c:140 +#: array.c:267 #, c-format msgid "from %s" msgstr "" -#: array.c:248 +#: array.c:367 msgid "attempt to use a scalar value as array" msgstr "" -#: array.c:251 -#, c-format -msgid "attempt to use function `%s' as an array" -msgstr "" - -#: array.c:254 +#: array.c:369 #, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "" -#: array.c:257 +#: array.c:372 #, c-format msgid "attempt to use scalar `%s' as an array" msgstr "" -#: array.c:302 array.c:707 builtin.c:84 builtin.c:1384 builtin.c:1426 -#: builtin.c:1439 builtin.c:1858 builtin.c:1870 eval.c:1135 eval.c:1139 -#: eval.c:1495 eval.c:1812 +#: array.c:419 array.c:585 builtin.c:85 builtin.c:1389 builtin.c:1431 +#: builtin.c:1444 builtin.c:1862 builtin.c:1874 eval.c:1096 eval.c:1100 +#: eval.c:1500 #, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "" -#: array.c:513 -#, c-format -msgid "reference to uninitialized element `%s[\"%.*s\"]'" -msgstr "" - -#: array.c:519 -#, c-format -msgid "subscript of array `%s' is null string" -msgstr "" - -#: array.c:723 +#: array.c:592 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "" -#: array.c:734 eval.c:1865 +#: array.c:606 #, c-format msgid "attempt to use scalar `%s[\"%.*s\"]' as an array" msgstr "" -#: array.c:910 -#, c-format -msgid "%s: empty (null)\n" +#: array.c:794 +msgid "adump: first argument not an array" msgstr "" -#: array.c:915 -#, c-format -msgid "%s: empty (zero)\n" -msgstr "" - -#: array.c:919 -#, c-format -msgid "%s: table_size = %d, array_size = %d\n" -msgstr "" - -#: array.c:954 -#, c-format -msgid "%s: is parameter\n" -msgstr "" - -#: array.c:958 -#, c-format -msgid "%s: array_ref to %s\n" -msgstr "" - -#: array.c:963 -msgid "adump: argument not an array" -msgstr "" - -#: array.c:1086 +#: array.c:833 msgid "asort: second argument not an array" msgstr "" -#: array.c:1087 +#: array.c:834 msgid "asorti: second argument not an array" msgstr "" -#: array.c:1094 +#: array.c:841 msgid "asort: first argument not an array" msgstr "" -#: array.c:1095 +#: array.c:842 msgid "asorti: first argument not an array" msgstr "" -#: array.c:1102 +#: array.c:849 msgid "asort: cannot use a subarray of first arg for second arg" msgstr "" -#: array.c:1103 +#: array.c:850 msgid "asorti: cannot use a subarray of first arg for second arg" msgstr "" -#: array.c:1108 +#: array.c:855 msgid "asort: cannot use a subarray of second arg for first arg" msgstr "" -#: array.c:1109 +#: array.c:856 msgid "asorti: cannot use a subarray of second arg for first arg" msgstr "" -#: array.c:1659 +#: array.c:1329 #, c-format msgid "`%s' is invalid as a function name" msgstr "" -#: array.c:1663 +#: array.c:1333 #, c-format msgid "sort comparison function `%s' is not defined" msgstr "" -#: awkgram.y:249 +#: awkgram.y:223 #, c-format msgid "%s blocks must have an action part" msgstr "" -#: awkgram.y:252 +#: awkgram.y:226 msgid "each rule must have a pattern or an action part" msgstr "" -#: awkgram.y:323 awkgram.y:334 +#: awkgram.y:295 awkgram.y:306 msgid "old awk does not support multiple `BEGIN' or `END' rules" msgstr "" -#: awkgram.y:371 +#: awkgram.y:343 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "" -#: awkgram.y:432 +#: awkgram.y:389 msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "" -#: awkgram.y:436 +#: awkgram.y:393 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "" -#: awkgram.y:528 +#: awkgram.y:485 #, c-format msgid "duplicate case values in switch body: %s" msgstr "" -#: awkgram.y:549 +#: awkgram.y:506 msgid "duplicate `default' detected in switch body" msgstr "" -#: awkgram.y:809 +#: awkgram.y:766 msgid "`break' is not allowed outside a loop or switch" msgstr "" -#: awkgram.y:818 +#: awkgram.y:775 msgid "`continue' is not allowed outside a loop" msgstr "" -#: awkgram.y:828 +#: awkgram.y:785 #, c-format msgid "`next' used in %s action" msgstr "" -#: awkgram.y:836 +#: awkgram.y:793 msgid "`nextfile' is a gawk extension" msgstr "" -#: awkgram.y:841 +#: awkgram.y:798 #, c-format msgid "`nextfile' used in %s action" msgstr "" -#: awkgram.y:865 +#: awkgram.y:822 msgid "`return' used outside function context" msgstr "" -#: awkgram.y:925 +#: awkgram.y:892 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "" -#: awkgram.y:995 awkgram.y:999 awkgram.y:1023 +#: awkgram.y:962 awkgram.y:966 awkgram.y:990 msgid "`delete array' is a gawk extension" msgstr "" -#: awkgram.y:1019 +#: awkgram.y:986 msgid "`delete(array)' is a non-portable tawk extension" msgstr "" -#: awkgram.y:1135 +#: awkgram.y:1102 msgid "multistage two-way pipelines don't work" msgstr "" -#: awkgram.y:1238 +#: awkgram.y:1205 msgid "regular expression on right of assignment" msgstr "" -#: awkgram.y:1249 +#: awkgram.y:1216 msgid "regular expression on left of `~' or `!~' operator" msgstr "" -#: awkgram.y:1265 awkgram.y:1419 +#: awkgram.y:1232 awkgram.y:1383 msgid "old awk does not support the keyword `in' except after `for'" msgstr "" -#: awkgram.y:1275 +#: awkgram.y:1242 msgid "regular expression on right of comparison" msgstr "" -#: awkgram.y:1394 +#: awkgram.y:1358 #, c-format msgid "`getline var' invalid inside `%s' rule" msgstr "" -#: awkgram.y:1397 eval.c:2504 +#: awkgram.y:1361 #, c-format msgid "`getline' invalid inside `%s' rule" msgstr "" -#: awkgram.y:1402 +#: awkgram.y:1366 msgid "non-redirected `getline' undefined inside END action" msgstr "" -#: awkgram.y:1421 +#: awkgram.y:1385 msgid "old awk does not support multidimensional arrays" msgstr "" -#: awkgram.y:1517 +#: awkgram.y:1481 msgid "call of `length' without parentheses is not portable" msgstr "" -#: awkgram.y:1580 +#: awkgram.y:1545 msgid "indirect function calls are a gawk extension" msgstr "" -#: awkgram.y:1593 +#: awkgram.y:1558 #, c-format msgid "can not use special variable `%s' for indirect function call" msgstr "" -#: awkgram.y:1671 +#: awkgram.y:1636 msgid "invalid subscript expression" msgstr "" -#: awkgram.y:1711 -msgid "use of non-array as array" -msgstr "" - -#: awkgram.y:1975 awkgram.y:1995 msg.c:98 +#: awkgram.y:1936 awkgram.y:1956 msg.c:96 msgid "warning: " msgstr "" -#: awkgram.y:1993 msg.c:130 +#: awkgram.y:1954 msg.c:128 msgid "fatal: " msgstr "" -#: awkgram.y:2043 +#: awkgram.y:2004 msgid "unexpected newline or end of string" msgstr "" -#: awkgram.y:2300 awkgram.y:2358 awkgram.y:2542 +#: awkgram.y:2269 awkgram.y:2327 awkgram.y:2515 #, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "" -#: awkgram.y:2301 awkgram.y:2359 builtin.c:122 +#: awkgram.y:2270 awkgram.y:2328 builtin.c:124 msgid "reason unknown" msgstr "" -#: awkgram.y:2317 +#: awkgram.y:2286 #, c-format msgid "already included source file `%s'" msgstr "" -#: awkgram.y:2343 +#: awkgram.y:2312 msgid "@include is a gawk extension" msgstr "" -#: awkgram.y:2349 +#: awkgram.y:2318 msgid "empty filename after @include" msgstr "" -#: awkgram.y:2494 +#: awkgram.y:2467 msgid "empty program text on command line" msgstr "" -#: awkgram.y:2609 +#: awkgram.y:2582 #, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "" -#: awkgram.y:2620 +#: awkgram.y:2593 #, c-format msgid "source file `%s' is empty" msgstr "" -#: awkgram.y:2805 +#: awkgram.y:2770 msgid "source file does not end in newline" msgstr "" -#: awkgram.y:2882 +#: awkgram.y:2874 msgid "unterminated regexp ends with `\\' at end of file" msgstr "" -#: awkgram.y:2906 +#: awkgram.y:2898 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" -#: awkgram.y:2910 +#: awkgram.y:2902 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" -#: awkgram.y:2917 +#: awkgram.y:2909 msgid "unterminated regexp" msgstr "" -#: awkgram.y:2921 +#: awkgram.y:2913 msgid "unterminated regexp at end of file" msgstr "" -#: awkgram.y:2980 +#: awkgram.y:2972 msgid "use of `\\ #...' line continuation is not portable" msgstr "" -#: awkgram.y:2996 +#: awkgram.y:2988 msgid "backslash not last character on line" msgstr "" -#: awkgram.y:3057 +#: awkgram.y:3049 msgid "POSIX does not allow operator `**='" msgstr "" -#: awkgram.y:3059 +#: awkgram.y:3051 msgid "old awk does not support operator `**='" msgstr "" -#: awkgram.y:3068 +#: awkgram.y:3060 msgid "POSIX does not allow operator `**'" msgstr "" -#: awkgram.y:3070 +#: awkgram.y:3062 msgid "old awk does not support operator `**'" msgstr "" -#: awkgram.y:3105 +#: awkgram.y:3097 msgid "operator `^=' is not supported in old awk" msgstr "" -#: awkgram.y:3113 +#: awkgram.y:3105 msgid "operator `^' is not supported in old awk" msgstr "" -#: awkgram.y:3206 awkgram.y:3222 +#: awkgram.y:3198 awkgram.y:3214 msgid "unterminated string" msgstr "" -#: awkgram.y:3418 +#: awkgram.y:3410 #, c-format msgid "invalid char '%c' in expression" msgstr "" -#: awkgram.y:3465 +#: awkgram.y:3457 #, c-format msgid "`%s' is a gawk extension" msgstr "" -#: awkgram.y:3470 +#: awkgram.y:3462 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "" -#: awkgram.y:3475 +#: awkgram.y:3467 #, c-format msgid "POSIX does not allow `%s'" msgstr "" -#: awkgram.y:3483 +#: awkgram.y:3475 #, c-format msgid "`%s' is not supported in old awk" msgstr "" -#: awkgram.y:3550 +#: awkgram.y:3542 msgid "`goto' considered harmful!\n" msgstr "" -#: awkgram.y:3601 +#: awkgram.y:3576 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "" -#: awkgram.y:3636 +#: awkgram.y:3611 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "" -#: awkgram.y:3641 +#: awkgram.y:3616 #, c-format msgid "%s third parameter is not a changeable object" msgstr "" -#: awkgram.y:3714 awkgram.y:3717 +#: awkgram.y:3689 awkgram.y:3692 msgid "match: third argument is a gawk extension" msgstr "" -#: awkgram.y:3771 awkgram.y:3774 +#: awkgram.y:3746 awkgram.y:3749 msgid "close: second argument is a gawk extension" msgstr "" -#: awkgram.y:3786 +#: awkgram.y:3761 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "" -#: awkgram.y:3801 +#: awkgram.y:3776 msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "" -#: awkgram.y:3893 -#, c-format -msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" -msgstr "" - -#: awkgram.y:3935 +#: awkgram.y:3842 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "" -#: awkgram.y:4093 +#: awkgram.y:3885 #, c-format msgid "could not open `%s' for writing (%s)" msgstr "" -#: awkgram.y:4094 +#: awkgram.y:3886 msgid "sending variable list to standard error" msgstr "" -#: awkgram.y:4100 +#: awkgram.y:3894 #, c-format msgid "%s: close failed (%s)" msgstr "" -#: awkgram.y:4152 +#: awkgram.y:3919 msgid "shadow_funcs() called twice!" msgstr "" -#: awkgram.y:4158 +#: awkgram.y:3927 msgid "there were shadowed variables." msgstr "" -#: awkgram.y:4188 +#: awkgram.y:3998 +#, c-format +msgid "function name `%s' previously defined" +msgstr "" + +#: awkgram.y:4044 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "" -#: awkgram.y:4192 +#: awkgram.y:4047 #, c-format msgid "function `%s': can't use special variable `%s' as a function parameter" msgstr "" -#: awkgram.y:4208 +#: awkgram.y:4055 #, c-format -msgid "function name `%s' previously defined" +msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" msgstr "" -#: awkgram.y:4376 awkgram.y:4382 +#: awkgram.y:4134 awkgram.y:4140 #, c-format msgid "function `%s' called but never defined" msgstr "" -#: awkgram.y:4385 +#: awkgram.y:4143 #, c-format msgid "function `%s' defined but never called directly" msgstr "" -#: awkgram.y:4417 +#: awkgram.y:4175 #, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "" -#: awkgram.y:4526 +#: awkgram.y:4221 #, c-format msgid "" "function `%s' called with space between name and `(',\n" "or used as a variable or an array" msgstr "" -#: awkgram.y:4773 eval.c:2056 +#: awkgram.y:4429 msgid "division by zero attempted" msgstr "" -#: awkgram.y:4782 eval.c:2072 +#: awkgram.y:4438 #, c-format msgid "division by zero attempted in `%%'" msgstr "" -#: builtin.c:120 +#: builtin.c:122 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "" -#: builtin.c:121 +#: builtin.c:123 msgid "standard output" msgstr "" -#: builtin.c:135 +#: builtin.c:137 msgid "exp: received non-numeric argument" msgstr "" -#: builtin.c:141 +#: builtin.c:143 #, c-format msgid "exp: argument %g is out of range" msgstr "" -#: builtin.c:200 +#: builtin.c:202 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "" -#: builtin.c:203 +#: builtin.c:205 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "" -#: builtin.c:215 +#: builtin.c:217 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "" -#: builtin.c:333 +#: builtin.c:335 msgid "index: received non-string first argument" msgstr "" -#: builtin.c:335 +#: builtin.c:337 msgid "index: received non-string second argument" msgstr "" -#: builtin.c:457 +#: builtin.c:461 msgid "int: received non-numeric argument" msgstr "" -#: builtin.c:493 +#: builtin.c:497 msgid "length: received array argument" msgstr "" -#: builtin.c:496 +#: builtin.c:500 msgid "`length(array)' is a gawk extension" msgstr "" -#: builtin.c:504 +#: builtin.c:508 msgid "length: received non-string argument" msgstr "" -#: builtin.c:535 +#: builtin.c:539 msgid "log: received non-numeric argument" msgstr "" -#: builtin.c:538 +#: builtin.c:542 #, c-format msgid "log: received negative argument %g" msgstr "" -#: builtin.c:694 builtin.c:699 +#: builtin.c:698 builtin.c:703 msgid "fatal: must use `count$' on all formats or none" msgstr "" -#: builtin.c:761 +#: builtin.c:766 #, c-format msgid "field width is ignored for `%%' specifier" msgstr "" -#: builtin.c:763 +#: builtin.c:768 #, c-format msgid "precision is ignored for `%%' specifier" msgstr "" -#: builtin.c:765 +#: builtin.c:770 #, c-format msgid "field width and precision are ignored for `%%' specifier" msgstr "" -#: builtin.c:816 +#: builtin.c:821 msgid "fatal: `$' is not permitted in awk formats" msgstr "" -#: builtin.c:825 +#: builtin.c:830 msgid "fatal: arg count with `$' must be > 0" msgstr "" -#: builtin.c:829 +#: builtin.c:834 #, c-format msgid "fatal: arg count %ld greater than total number of supplied arguments" msgstr "" -#: builtin.c:833 +#: builtin.c:838 msgid "fatal: `$' not permitted after period in format" msgstr "" -#: builtin.c:849 +#: builtin.c:854 msgid "fatal: no `$' supplied for positional field width or precision" msgstr "" -#: builtin.c:920 +#: builtin.c:925 msgid "`l' is meaningless in awk formats; ignored" msgstr "" -#: builtin.c:924 +#: builtin.c:929 msgid "fatal: `l' is not permitted in POSIX awk formats" msgstr "" -#: builtin.c:937 +#: builtin.c:942 msgid "`L' is meaningless in awk formats; ignored" msgstr "" -#: builtin.c:941 +#: builtin.c:946 msgid "fatal: `L' is not permitted in POSIX awk formats" msgstr "" -#: builtin.c:954 +#: builtin.c:959 msgid "`h' is meaningless in awk formats; ignored" msgstr "" -#: builtin.c:958 +#: builtin.c:963 msgid "fatal: `h' is not permitted in POSIX awk formats" msgstr "" -#: builtin.c:1271 +#: builtin.c:1276 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "" -#: builtin.c:1331 +#: builtin.c:1336 #, c-format msgid "ignoring unknown format specifier character `%c': no argument converted" msgstr "" -#: builtin.c:1336 +#: builtin.c:1341 msgid "fatal: not enough arguments to satisfy format string" msgstr "" -#: builtin.c:1338 +#: builtin.c:1343 msgid "^ ran out for this one" msgstr "" -#: builtin.c:1345 +#: builtin.c:1350 msgid "[s]printf: format specifier does not have control letter" msgstr "" -#: builtin.c:1348 +#: builtin.c:1353 msgid "too many arguments supplied for format string" msgstr "" -#: builtin.c:1422 builtin.c:1433 +#: builtin.c:1427 builtin.c:1438 msgid "printf: no arguments" msgstr "" -#: builtin.c:1474 +#: builtin.c:1479 msgid "sqrt: received non-numeric argument" msgstr "" -#: builtin.c:1478 +#: builtin.c:1483 #, c-format msgid "sqrt: called with negative argument %g" msgstr "" -#: builtin.c:1502 +#: builtin.c:1507 #, c-format msgid "substr: length %g is not >= 1" msgstr "" -#: builtin.c:1504 +#: builtin.c:1509 #, c-format msgid "substr: length %g is not >= 0" msgstr "" -#: builtin.c:1511 +#: builtin.c:1516 #, c-format msgid "substr: non-integer length %g will be truncated" msgstr "" -#: builtin.c:1516 +#: builtin.c:1521 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "" -#: builtin.c:1528 +#: builtin.c:1533 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "" -#: builtin.c:1533 +#: builtin.c:1538 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "" -#: builtin.c:1558 +#: builtin.c:1563 msgid "substr: source string is zero length" msgstr "" -#: builtin.c:1574 +#: builtin.c:1579 #, c-format msgid "substr: start index %g is past end of string" msgstr "" -#: builtin.c:1582 +#: builtin.c:1587 #, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" msgstr "" -#: builtin.c:1656 +#: builtin.c:1661 msgid "strftime: format value in PROCINFO[\"strftime\"] has numeric type" msgstr "" -#: builtin.c:1679 +#: builtin.c:1684 msgid "strftime: received non-numeric second argument" msgstr "" -#: builtin.c:1682 +#: builtin.c:1687 msgid "strftime: second argument less than 0 or too big for time_t" msgstr "" -#: builtin.c:1689 +#: builtin.c:1694 msgid "strftime: received non-string first argument" msgstr "" -#: builtin.c:1695 +#: builtin.c:1701 msgid "strftime: received empty format string" msgstr "" -#: builtin.c:1761 +#: builtin.c:1767 msgid "mktime: received non-string argument" msgstr "" -#: builtin.c:1778 +#: builtin.c:1784 msgid "mktime: at least one of the values is out of the default range" msgstr "" -#: builtin.c:1813 +#: builtin.c:1819 msgid "'system' function not allowed in sandbox mode" msgstr "" -#: builtin.c:1818 +#: builtin.c:1824 msgid "system: received non-string argument" msgstr "" -#: builtin.c:1873 eval.c:1159 eval.c:1790 eval.c:1803 -#, c-format -msgid "reference to uninitialized variable `%s'" -msgstr "" - -#: builtin.c:1940 +#: builtin.c:1942 #, c-format msgid "reference to uninitialized field `$%d'" msgstr "" -#: builtin.c:2027 +#: builtin.c:2029 msgid "tolower: received non-string argument" msgstr "" -#: builtin.c:2061 +#: builtin.c:2063 msgid "toupper: received non-string argument" msgstr "" -#: builtin.c:2097 +#: builtin.c:2099 msgid "atan2: received non-numeric first argument" msgstr "" -#: builtin.c:2099 +#: builtin.c:2101 msgid "atan2: received non-numeric second argument" msgstr "" -#: builtin.c:2118 +#: builtin.c:2120 msgid "sin: received non-numeric argument" msgstr "" -#: builtin.c:2134 +#: builtin.c:2136 msgid "cos: received non-numeric argument" msgstr "" -#: builtin.c:2187 +#: builtin.c:2189 msgid "srand: received non-numeric argument" msgstr "" -#: builtin.c:2218 +#: builtin.c:2220 msgid "match: third argument is not an array" msgstr "" -#: builtin.c:2482 +#: builtin.c:2484 msgid "gensub: third argument of 0 treated as 1" msgstr "" -#: builtin.c:2775 +#: builtin.c:2777 msgid "lshift: received non-numeric first argument" msgstr "" -#: builtin.c:2777 +#: builtin.c:2779 msgid "lshift: received non-numeric second argument" msgstr "" -#: builtin.c:2783 +#: builtin.c:2785 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "" -#: builtin.c:2785 +#: builtin.c:2787 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "" -#: builtin.c:2787 +#: builtin.c:2789 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "" -#: builtin.c:2812 +#: builtin.c:2814 msgid "rshift: received non-numeric first argument" msgstr "" -#: builtin.c:2814 +#: builtin.c:2816 msgid "rshift: received non-numeric second argument" msgstr "" -#: builtin.c:2820 +#: builtin.c:2822 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "" -#: builtin.c:2822 +#: builtin.c:2824 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "" -#: builtin.c:2824 +#: builtin.c:2826 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "" -#: builtin.c:2849 +#: builtin.c:2851 msgid "and: received non-numeric first argument" msgstr "" -#: builtin.c:2851 +#: builtin.c:2853 msgid "and: received non-numeric second argument" msgstr "" -#: builtin.c:2857 +#: builtin.c:2859 #, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "" -#: builtin.c:2859 +#: builtin.c:2861 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "" -#: builtin.c:2884 +#: builtin.c:2886 msgid "or: received non-numeric first argument" msgstr "" -#: builtin.c:2886 +#: builtin.c:2888 msgid "or: received non-numeric second argument" msgstr "" -#: builtin.c:2892 +#: builtin.c:2894 #, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "" -#: builtin.c:2894 +#: builtin.c:2896 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "" -#: builtin.c:2922 +#: builtin.c:2924 msgid "xor: received non-numeric first argument" msgstr "" -#: builtin.c:2924 +#: builtin.c:2926 msgid "xor: received non-numeric second argument" msgstr "" -#: builtin.c:2930 +#: builtin.c:2932 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "" -#: builtin.c:2932 +#: builtin.c:2934 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "" -#: builtin.c:2956 builtin.c:2962 +#: builtin.c:2958 builtin.c:2964 msgid "compl: received non-numeric argument" msgstr "" -#: builtin.c:2964 +#: builtin.c:2966 #, c-format msgid "compl(%lf): negative value will give strange results" msgstr "" -#: builtin.c:2966 +#: builtin.c:2968 #, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "" -#: builtin.c:3135 +#: builtin.c:3137 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "" -#: eval.c:412 +#: eval.c:393 #, c-format msgid "unknown nodetype %d" msgstr "" -#: eval.c:423 eval.c:437 +#: eval.c:404 eval.c:418 #, c-format msgid "unknown opcode %d" msgstr "" -#: eval.c:434 +#: eval.c:415 #, c-format msgid "opcode %s not an operator or keyword" msgstr "" -#: eval.c:488 +#: eval.c:468 msgid "buffer overflow in genflags2str" msgstr "" -#: eval.c:698 +#: eval.c:678 #, c-format msgid "" "\n" @@ -962,211 +913,161 @@ msgid "" "\n" msgstr "" -#: eval.c:725 +#: eval.c:706 msgid "`IGNORECASE' is a gawk extension" msgstr "" -#: eval.c:754 +#: eval.c:736 msgid "`BINMODE' is a gawk extension" msgstr "" -#: eval.c:812 +#: eval.c:794 #, c-format msgid "BINMODE value `%s' is invalid, treated as 3" msgstr "" -#: eval.c:902 +#: eval.c:887 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "" -#: eval.c:980 +#: eval.c:969 msgid "turning off `--lint' due to assignment to `LINT'" msgstr "" -#: eval.c:1127 eval.c:1777 +#: eval.c:1119 #, c-format -msgid "can't use function name `%s' as variable or array" +msgid "reference to uninitialized argument `%s'" msgstr "" -#: eval.c:1158 eval.c:1789 eval.c:1802 +#: eval.c:1120 #, c-format -msgid "reference to uninitialized argument `%s'" +msgid "reference to uninitialized variable `%s'" msgstr "" -#: eval.c:1177 +#: eval.c:1138 msgid "attempt to field reference from non-numeric value" msgstr "" -#: eval.c:1179 +#: eval.c:1140 msgid "attempt to field reference from null string" msgstr "" -#: eval.c:1185 +#: eval.c:1146 #, c-format msgid "attempt to access field %ld" msgstr "" -#: eval.c:1194 +#: eval.c:1155 #, c-format msgid "reference to uninitialized field `$%ld'" msgstr "" -#: eval.c:1256 +#: eval.c:1242 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "" -#: eval.c:1437 +#: eval.c:1436 #, c-format msgid "unwind_stack: unexpected type `%s'" msgstr "" -#: eval.c:1532 +#: eval.c:1536 msgid "division by zero attempted in `/='" msgstr "" -#: eval.c:1539 +#: eval.c:1543 #, c-format msgid "division by zero attempted in `%%='" msgstr "" -#: eval.c:1876 eval.c:2122 -#, c-format -msgid "attempt to use array `%s[\"%.*s\"]' in a scalar context" -msgstr "" - -#: eval.c:1907 -msgid "assignment used in conditional context" -msgstr "" - -#: eval.c:1911 -msgid "statement has no effect" -msgstr "" - -#: eval.c:2343 -#, c-format -msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" -msgstr "" - -#: eval.c:2458 -#, c-format -msgid "function called indirectly through `%s' does not exist" -msgstr "" - -#: eval.c:2470 -#, c-format -msgid "function `%s' not defined" -msgstr "" - -#: eval.c:2511 -#, c-format -msgid "non-redirected `getline' invalid inside `%s' rule" -msgstr "" - -#: eval.c:2600 -#, c-format -msgid "error reading input file `%s': %s" -msgstr "" - -#: eval.c:2614 -#, c-format -msgid "`nextfile' cannot be called from a `%s' rule" -msgstr "" - -#: eval.c:2694 -#, c-format -msgid "`next' cannot be called from a `%s' rule" -msgstr "" - -#: eval.c:2760 -#, c-format -msgid "Sorry, don't know how to interpret `%s'" -msgstr "" - -#: ext.c:64 +#: ext.c:70 msgid "extensions are not allowed in sandbox mode" msgstr "" -#: ext.c:70 ext.c:75 +#: ext.c:73 msgid "`extension' is a gawk extension" msgstr "" -#: ext.c:85 +#: ext.c:80 #, c-format -msgid "fatal: extension: cannot open `%s' (%s)\n" +msgid "extension: cannot open library `%s' (%s)\n" msgstr "" -#: ext.c:94 +#: ext.c:86 #, c-format msgid "" -"fatal: extension: library `%s': does not define " -"`plugin_is_GPL_compatible' (%s)\n" +"extension: library `%s': does not define `plugin_is_GPL_compatible' (%s)\n" msgstr "" -#: ext.c:103 +#: ext.c:91 #, c-format -msgid "fatal: extension: library `%s': cannot call function `%s' (%s)\n" +msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "" -#: ext.c:137 +#: ext.c:119 msgid "extension: missing function name" msgstr "" -#: ext.c:142 +#: ext.c:124 #, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "" -#: ext.c:151 +#: ext.c:132 #, c-format msgid "extension: can't redefine function `%s'" msgstr "" -#: ext.c:155 +#: ext.c:136 #, c-format msgid "extension: function `%s' already defined" msgstr "" -#: ext.c:160 +#: ext.c:140 #, c-format msgid "extension: function name `%s' previously defined" msgstr "" -#: ext.c:162 +#: ext.c:142 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "" -#: ext.c:166 +#: ext.c:145 #, c-format msgid "make_builtin: negative argument count for function `%s'" msgstr "" -#: ext.c:269 +#: ext.c:207 #, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "" -#: ext.c:272 +#: ext.c:210 #, c-format msgid "function `%s': missing argument #%d" msgstr "" -#: ext.c:289 +#: ext.c:227 #, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "" -#: ext.c:293 +#: ext.c:231 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "" -#: ext.c:306 +#: ext.c:245 msgid "Operation Not Supported" msgstr "" +#: ext.c:257 +msgid "dynamic loading of library not supported" +msgstr "" + #: field.c:328 msgid "NF set to negative value" msgstr "" @@ -1223,527 +1124,535 @@ msgstr "" msgid "patsplit: cannot use a subarray of fourth arg for second arg" msgstr "" -#: field.c:1110 +#: field.c:1111 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "" -#: field.c:1173 +#: field.c:1175 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "" -#: field.c:1246 +#: field.c:1248 msgid "null string for `FS' is a gawk extension" msgstr "" -#: field.c:1250 +#: field.c:1252 msgid "old awk does not support regexps as value of `FS'" msgstr "" -#: field.c:1369 +#: field.c:1371 msgid "`FPAT' is a gawk extension" msgstr "" -#: getopt.c:574 getopt.c:590 +#: getopt.c:604 getopt.c:633 #, c-format -msgid "%s: option '%s' is ambiguous\n" +msgid "%s: option '%s' is ambiguous; possibilities:" msgstr "" -#: getopt.c:623 getopt.c:627 +#: getopt.c:679 getopt.c:683 #, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "" -#: getopt.c:636 getopt.c:641 +#: getopt.c:692 getopt.c:697 #, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "" -#: getopt.c:684 getopt.c:703 +#: getopt.c:740 getopt.c:759 #, c-format msgid "%s: option '--%s' requires an argument\n" msgstr "" -#: getopt.c:741 getopt.c:744 +#: getopt.c:797 getopt.c:800 #, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "" -#: getopt.c:752 getopt.c:755 +#: getopt.c:808 getopt.c:811 #, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "" -#: getopt.c:804 getopt.c:807 +#: getopt.c:860 getopt.c:863 #, c-format msgid "%s: invalid option -- '%c'\n" msgstr "" -#: getopt.c:857 getopt.c:874 getopt.c:1082 getopt.c:1100 +#: getopt.c:916 getopt.c:933 getopt.c:1143 getopt.c:1161 #, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "" -#: getopt.c:930 getopt.c:946 +#: getopt.c:989 getopt.c:1005 #, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "" -#: getopt.c:970 getopt.c:988 +#: getopt.c:1029 getopt.c:1047 #, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "" -#: getopt.c:1009 getopt.c:1027 +#: getopt.c:1068 getopt.c:1086 #, c-format msgid "%s: option '-W %s' requires an argument\n" msgstr "" -#: io.c:280 +#: io.c:315 #, c-format msgid "command line argument `%s' is a directory: skipped" msgstr "" -#: io.c:283 io.c:385 +#: io.c:318 io.c:421 #, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "" -#: io.c:501 +#: io.c:537 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "" -#: io.c:578 +#: io.c:614 msgid "redirection not allowed in sandbox mode" msgstr "" -#: io.c:612 +#: io.c:648 #, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "" -#: io.c:618 +#: io.c:654 #, c-format msgid "expression for `%s' redirection has null string value" msgstr "" -#: io.c:624 +#: io.c:659 #, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "" -#: io.c:667 +#: io.c:702 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "" -#: io.c:720 +#: io.c:755 #, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "" -#: io.c:730 +#: io.c:765 #, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "" -#: io.c:753 +#: io.c:788 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "" -#: io.c:835 +#: io.c:870 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "" -#: io.c:838 +#: io.c:873 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "" -#: io.c:889 +#: io.c:924 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "" -#: io.c:905 +#: io.c:940 #, c-format msgid "close of `%s' failed (%s)." msgstr "" -#: io.c:913 +#: io.c:948 msgid "too many pipes or input files open" msgstr "" -#: io.c:935 +#: io.c:970 msgid "close: second argument must be `to' or `from'" msgstr "" -#: io.c:952 +#: io.c:987 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "" -#: io.c:957 +#: io.c:992 msgid "close of redirection that was never opened" msgstr "" -#: io.c:1054 +#: io.c:1089 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "" -#: io.c:1070 +#: io.c:1105 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "" -#: io.c:1073 +#: io.c:1108 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "" -#: io.c:1093 +#: io.c:1128 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "" -#: io.c:1096 +#: io.c:1131 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "" -#: io.c:1099 +#: io.c:1134 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "" -#: io.c:1102 +#: io.c:1137 #, c-format msgid "no explicit close of file `%s' provided" msgstr "" -#: io.c:1130 io.c:1185 main.c:793 main.c:830 +#: io.c:1165 io.c:1220 main.c:798 main.c:835 #, c-format msgid "error writing standard output (%s)" msgstr "" -#: io.c:1134 io.c:1190 +#: io.c:1169 io.c:1225 #, c-format msgid "error writing standard error (%s)" msgstr "" -#: io.c:1142 +#: io.c:1177 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "" -#: io.c:1145 +#: io.c:1180 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "" -#: io.c:1148 +#: io.c:1183 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "" -#: io.c:1263 +#: io.c:1298 #, c-format msgid "local port %s invalid in `/inet'" msgstr "" -#: io.c:1280 +#: io.c:1315 #, c-format msgid "remote host and port information (%s, %s) invalid" msgstr "" -#: io.c:1432 +#: io.c:1467 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "" -#: io.c:1446 +#: io.c:1481 #, c-format msgid "special file name `%s' is incomplete" msgstr "" -#: io.c:1463 +#: io.c:1498 msgid "must supply a remote hostname to `/inet'" msgstr "" -#: io.c:1481 +#: io.c:1516 msgid "must supply a remote port to `/inet'" msgstr "" -#: io.c:1527 +#: io.c:1562 msgid "TCP/IP communications are not supported" msgstr "" -#: io.c:1694 +#: io.c:1729 #, c-format msgid "could not open `%s', mode `%s'" msgstr "" -#: io.c:1748 +#: io.c:1783 #, c-format msgid "close of master pty failed (%s)" msgstr "" -#: io.c:1750 io.c:1918 io.c:2075 +#: io.c:1785 io.c:1953 io.c:2110 #, c-format msgid "close of stdout in child failed (%s)" msgstr "" -#: io.c:1753 +#: io.c:1788 #, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "" -#: io.c:1755 io.c:1923 +#: io.c:1790 io.c:1958 #, c-format msgid "close of stdin in child failed (%s)" msgstr "" -#: io.c:1758 +#: io.c:1793 #, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "" -#: io.c:1760 io.c:1781 +#: io.c:1795 io.c:1816 #, c-format msgid "close of slave pty failed (%s)" msgstr "" -#: io.c:1859 io.c:1921 io.c:2053 io.c:2078 +#: io.c:1894 io.c:1956 io.c:2088 io.c:2113 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "" -#: io.c:1866 io.c:1926 +#: io.c:1901 io.c:1961 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "" -#: io.c:1886 io.c:2068 +#: io.c:1921 io.c:2103 msgid "restoring stdout in parent process failed\n" msgstr "" -#: io.c:1894 +#: io.c:1929 msgid "restoring stdin in parent process failed\n" msgstr "" -#: io.c:1929 io.c:2080 io.c:2094 +#: io.c:1964 io.c:2115 io.c:2129 #, c-format msgid "close of pipe failed (%s)" msgstr "" -#: io.c:1974 +#: io.c:2009 msgid "`|&' not supported" msgstr "" -#: io.c:2040 +#: io.c:2075 #, c-format msgid "cannot open pipe `%s' (%s)" msgstr "" -#: io.c:2088 +#: io.c:2123 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "" -#: io.c:2521 +#: io.c:2613 #, c-format msgid "data file `%s' is empty" msgstr "" -#: io.c:2562 io.c:2570 +#: io.c:2654 io.c:2662 msgid "could not allocate more input memory" msgstr "" -#: io.c:3128 +#: io.c:3223 msgid "multicharacter value of `RS' is a gawk extension" msgstr "" -#: io.c:3233 +#: io.c:3313 msgid "IPv6 communication is not supported" msgstr "" -#: main.c:364 +#: main.c:353 msgid "`-m[fr]' option irrelevant in gawk" msgstr "" -#: main.c:366 +#: main.c:355 msgid "-m option usage: `-m[fr] nnn'" msgstr "" -#: main.c:389 +#: main.c:384 msgid "empty argument to `-e/--source' ignored" msgstr "" -#: main.c:460 +#: main.c:464 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "" -#: main.c:513 +#: main.c:510 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "" -#: main.c:534 +#: main.c:531 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "" -#: main.c:540 +#: main.c:537 msgid "`--posix' overrides `--traditional'" msgstr "" -#: main.c:551 +#: main.c:548 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "" -#: main.c:555 +#: main.c:552 #, c-format msgid "running %s setuid root may be a security problem" msgstr "" -#: main.c:560 +#: main.c:557 msgid "`--posix' overrides `--binary'" msgstr "" -#: main.c:611 +#: main.c:600 #, c-format msgid "can't set binary mode on stdin (%s)" msgstr "" -#: main.c:614 +#: main.c:603 #, c-format msgid "can't set binary mode on stdout (%s)" msgstr "" -#: main.c:616 +#: main.c:605 #, c-format msgid "can't set binary mode on stderr (%s)" msgstr "" -#: main.c:655 +#: main.c:653 msgid "no program text at all!" msgstr "" -#: main.c:733 +#: main.c:737 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "" -#: main.c:735 +#: main.c:739 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "" -#: main.c:740 +#: main.c:744 msgid "POSIX options:\t\tGNU long options: (standard)\n" msgstr "" -#: main.c:741 +#: main.c:745 msgid "\t-f progfile\t\t--file=progfile\n" msgstr "" -#: main.c:742 +#: main.c:746 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "" -#: main.c:743 +#: main.c:747 msgid "\t-v var=val\t\t--assign=var=val\n" msgstr "" -#: main.c:744 +#: main.c:748 msgid "Short options:\t\tGNU long options: (extensions)\n" msgstr "" -#: main.c:745 +#: main.c:749 msgid "\t-b\t\t\t--characters-as-bytes\n" msgstr "" -#: main.c:746 +#: main.c:750 msgid "\t-c\t\t\t--traditional\n" msgstr "" -#: main.c:747 +#: main.c:751 msgid "\t-C\t\t\t--copyright\n" msgstr "" -#: main.c:748 +#: main.c:752 msgid "\t-d[file]\t\t--dump-variables[=file]\n" msgstr "" -#: main.c:749 +#: main.c:753 +msgid "\t-D[file]\t\t--debug[=file]\n" +msgstr "" + +#: main.c:754 msgid "\t-e 'program-text'\t--source='program-text'\n" msgstr "" -#: main.c:750 +#: main.c:755 msgid "\t-E file\t\t\t--exec=file\n" msgstr "" -#: main.c:751 +#: main.c:756 msgid "\t-g\t\t\t--gen-pot\n" msgstr "" -#: main.c:752 +#: main.c:757 msgid "\t-h\t\t\t--help\n" msgstr "" -#: main.c:753 +#: main.c:758 +msgid "\t-l library\t\t--load=library\n" +msgstr "" + +#: main.c:759 msgid "\t-L [fatal]\t\t--lint[=fatal]\n" msgstr "" -#: main.c:754 +#: main.c:760 msgid "\t-n\t\t\t--non-decimal-data\n" msgstr "" -#: main.c:755 +#: main.c:761 msgid "\t-N\t\t\t--use-lc-numeric\n" msgstr "" -#: main.c:756 +#: main.c:762 +msgid "\t-o[file]\t\t--pretty-print[=file]\n" +msgstr "" + +#: main.c:763 msgid "\t-O\t\t\t--optimize\n" msgstr "" -#: main.c:757 +#: main.c:764 msgid "\t-p[file]\t\t--profile[=file]\n" msgstr "" -#: main.c:758 +#: main.c:765 msgid "\t-P\t\t\t--posix\n" msgstr "" -#: main.c:759 +#: main.c:766 msgid "\t-r\t\t\t--re-interval\n" msgstr "" -#: main.c:761 -msgid "\t-R file\t\t\t--command=file\n" -msgstr "" - -#: main.c:762 +#: main.c:767 msgid "\t-S\t\t\t--sandbox\n" msgstr "" -#: main.c:763 +#: main.c:768 msgid "\t-t\t\t\t--lint-old\n" msgstr "" -#: main.c:764 +#: main.c:769 msgid "\t-V\t\t\t--version\n" msgstr "" -#: main.c:766 +#: main.c:771 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "" -#: main.c:769 +#: main.c:774 msgid "\t-Y\t\t--parsedebug\n" msgstr "" @@ -1752,7 +1661,7 @@ msgstr "" #. for this application. Please add _another line_ with the #. address for translation bugs. #. no-wrap -#: main.c:778 +#: main.c:783 msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" @@ -1760,21 +1669,21 @@ msgid "" "\n" msgstr "" -#: main.c:782 +#: main.c:787 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" "\n" msgstr "" -#: main.c:786 +#: main.c:791 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" msgstr "" -#: main.c:806 +#: main.c:811 #, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" @@ -1786,7 +1695,7 @@ msgid "" "\n" msgstr "" -#: main.c:814 +#: main.c:819 msgid "" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" @@ -1795,118 +1704,113 @@ msgid "" "\n" msgstr "" -#: main.c:820 +#: main.c:825 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program. If not, see http://www.gnu.org/licenses/.\n" msgstr "" -#: main.c:855 +#: main.c:860 msgid "-Ft does not set FS to tab in POSIX awk" msgstr "" -#: main.c:1089 +#: main.c:1091 #, c-format msgid "unknown value for field spec: %d\n" msgstr "" -#: main.c:1170 +#: main.c:1172 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" "\n" msgstr "" -#: main.c:1196 +#: main.c:1198 #, c-format msgid "`%s' is not a legal variable name" msgstr "" -#: main.c:1199 +#: main.c:1201 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "" -#: main.c:1203 +#: main.c:1205 #, c-format msgid "cannot use gawk builtin `%s' as variable name" msgstr "" -#: main.c:1208 +#: main.c:1210 #, c-format msgid "cannot use function `%s' as variable name" msgstr "" -#: main.c:1261 +#: main.c:1263 msgid "floating point exception" msgstr "" -#: main.c:1268 +#: main.c:1270 msgid "fatal error: internal error" msgstr "" -#: main.c:1283 +#: main.c:1285 msgid "fatal error: internal error: segfault" msgstr "" -#: main.c:1295 +#: main.c:1297 msgid "fatal error: internal error: stack overflow" msgstr "" -#: main.c:1345 +#: main.c:1347 #, c-format msgid "no pre-opened fd %d" msgstr "" -#: main.c:1352 +#: main.c:1354 #, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "" -#: main.c:1375 main.c:1384 -#, c-format -msgid "could not find groups: %s" -msgstr "" - -#: msg.c:63 +#: msg.c:61 #, c-format msgid "cmd. line:" msgstr "" -#: msg.c:107 +#: msg.c:105 msgid "error: " msgstr "" -#: node.c:406 +#: node.c:402 msgid "backslash at end of string" msgstr "" -#: node.c:517 +#: node.c:479 #, c-format msgid "old awk does not support the `\\%c' escape sequence" msgstr "" -#: node.c:568 +#: node.c:530 msgid "POSIX does not allow `\\x' escapes" msgstr "" -#: node.c:574 +#: node.c:536 msgid "no hex digits in `\\x' escape sequence" msgstr "" -#: node.c:596 +#: node.c:558 #, c-format msgid "" "hex escape \\x%.*s of %d characters probably not interpreted the way you " "expect" msgstr "" -#: node.c:611 +#: node.c:573 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "" -#: node.c:750 +#: node.c:712 msgid "" "Invalid multibyte data detected. There may be a mismatch between your data " "and your locale." @@ -1922,129 +1826,133 @@ msgstr "" msgid "%s %s `%s': could not set close-on-exec: (fcntl F_SETFD: %s)" msgstr "" -#: profile.c:83 +#: profile.c:69 #, c-format msgid "could not open `%s' for writing: %s" msgstr "" -#: profile.c:85 +#: profile.c:71 msgid "sending profile to standard error" msgstr "" -#: profile.c:203 +#: profile.c:187 #, c-format msgid "" "\t# %s block(s)\n" "\n" msgstr "" -#: profile.c:208 +#: profile.c:192 #, c-format msgid "" "\t# Rule(s)\n" "\n" msgstr "" -#: profile.c:279 +#: profile.c:266 #, c-format msgid "internal error: %s with null vname" msgstr "" -#: profile.c:952 +#: profile.c:528 +msgid "internal error: builtin with null fname" +msgstr "" + +#: profile.c:943 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "" -#: profile.c:1331 +#: profile.c:1321 #, c-format msgid "" "\n" "\t# Functions, listed alphabetically\n" msgstr "" -#: profile.c:1370 +#: profile.c:1359 #, c-format msgid "redir2str: unknown redirection type %d" msgstr "" -#: re.c:572 +#: re.c:573 #, c-format msgid "range of the form `[%c-%c]' is locale dependent" msgstr "" -#: re.c:599 +#: re.c:600 #, c-format msgid "regexp component `%.*s' should probably be `[%.*s]'" msgstr "" -#: regcomp.c:132 +#: regcomp.c:131 msgid "Success" msgstr "" -#: regcomp.c:135 +#: regcomp.c:134 msgid "No match" msgstr "" -#: regcomp.c:138 +#: regcomp.c:137 msgid "Invalid regular expression" msgstr "" -#: regcomp.c:141 +#: regcomp.c:140 msgid "Invalid collation character" msgstr "" -#: regcomp.c:144 +#: regcomp.c:143 msgid "Invalid character class name" msgstr "" -#: regcomp.c:147 +#: regcomp.c:146 msgid "Trailing backslash" msgstr "" -#: regcomp.c:150 +#: regcomp.c:149 msgid "Invalid back reference" msgstr "" -#: regcomp.c:153 +#: regcomp.c:152 msgid "Unmatched [ or [^" msgstr "" -#: regcomp.c:156 +#: regcomp.c:155 msgid "Unmatched ( or \\(" msgstr "" -#: regcomp.c:159 +#: regcomp.c:158 msgid "Unmatched \\{" msgstr "" -#: regcomp.c:162 +#: regcomp.c:161 msgid "Invalid content of \\{\\}" msgstr "" -#: regcomp.c:165 +#: regcomp.c:164 msgid "Invalid range end" msgstr "" -#: regcomp.c:168 +#: regcomp.c:167 msgid "Memory exhausted" msgstr "" -#: regcomp.c:171 +#: regcomp.c:170 msgid "Invalid preceding regular expression" msgstr "" -#: regcomp.c:174 +#: regcomp.c:173 msgid "Premature end of regular expression" msgstr "" -#: regcomp.c:177 +#: regcomp.c:176 msgid "Regular expression too big" msgstr "" -#: regcomp.c:180 +#: regcomp.c:179 msgid "Unmatched ) or \\)" msgstr "" -#: regcomp.c:701 +#: regcomp.c:700 msgid "No previous regular expression" msgstr "" Binary files differ@@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: gawk 3.1.81\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" -"POT-Creation-Date: 2011-11-14 21:46+0200\n" +"POT-Creation-Date: 2012-04-08 12:18+0300\n" "PO-Revision-Date: 2011-03-19 16:52+0100\n" "Last-Translator: Antonio Colombo <azc100@gmail.com>\n" "Language-Team: Italian <it@li.org>\n" @@ -15,513 +15,470 @@ msgstr "" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8-bit\n" -#: array.c:140 +#: array.c:267 #, c-format msgid "from %s" msgstr "da %s" -#: array.c:248 +#: array.c:367 msgid "attempt to use a scalar value as array" msgstr "tentativo di usare valore scalare come vettore" -#: array.c:251 -#, c-format -msgid "attempt to use function `%s' as an array" -msgstr "tentativo di usare funzione '%s' come vettore" - -#: array.c:254 +#: array.c:369 #, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "tentativo di usare il parametro scalare `%s' come un vettore" -#: array.c:257 +#: array.c:372 #, c-format msgid "attempt to use scalar `%s' as an array" msgstr "tentativo di usare scalare '%s' come vettore" -#: array.c:302 array.c:707 builtin.c:84 builtin.c:1384 builtin.c:1426 -#: builtin.c:1439 builtin.c:1858 builtin.c:1870 eval.c:1135 eval.c:1139 -#: eval.c:1495 eval.c:1812 +#: array.c:419 array.c:585 builtin.c:85 builtin.c:1389 builtin.c:1431 +#: builtin.c:1444 builtin.c:1862 builtin.c:1874 eval.c:1096 eval.c:1100 +#: eval.c:1500 #, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "tentativo di usare vettore `%s' in un contesto scalare" -#: array.c:513 -#, c-format -msgid "reference to uninitialized element `%s[\"%.*s\"]'" -msgstr "riferimento a elemento non inizializzato `%s[\"%.*s\"]'" - -#: array.c:519 -#, c-format -msgid "subscript of array `%s' is null string" -msgstr "l'indice del vettore '%s' è una stringa nulla" - -#: array.c:723 +#: array.c:592 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "delete: indice `%s' non presente nel vettore `%s'" -#: array.c:734 eval.c:1865 +#: array.c:606 #, c-format msgid "attempt to use scalar `%s[\"%.*s\"]' as an array" msgstr "tentativo di usare scalare`%s[\"%.*s\"]' come vettore" -#: array.c:910 -#, c-format -msgid "%s: empty (null)\n" -msgstr "%s: vuoto (nullo)\n" - -#: array.c:915 -#, c-format -msgid "%s: empty (zero)\n" -msgstr "%s: vuoto (zero)\n" - -#: array.c:919 -#, c-format -msgid "%s: table_size = %d, array_size = %d\n" -msgstr "%s: dimensione_tabella = %d, dimensione_vettore = %d\n" - -#: array.c:954 -#, c-format -msgid "%s: is parameter\n" -msgstr "%s: è parametro\n" - -#: array.c:958 -#, c-format -msgid "%s: array_ref to %s\n" -msgstr "%s: riferimento_vettoriale a %s\n" - -#: array.c:963 -msgid "adump: argument not an array" +#: array.c:794 +#, fuzzy +msgid "adump: first argument not an array" msgstr "adump: l'argomento non è un vettore" -#: array.c:1086 +#: array.c:833 msgid "asort: second argument not an array" msgstr "asort: il secondo argomento non è un vettore" -#: array.c:1087 +#: array.c:834 msgid "asorti: second argument not an array" msgstr "asorti: il secondo argomento non è un vettore" -#: array.c:1094 +#: array.c:841 msgid "asort: first argument not an array" msgstr "asort: il primo argomento non è un vettore" -#: array.c:1095 +#: array.c:842 msgid "asorti: first argument not an array" msgstr "asorti: il primo argomento non è un vettore" -#: array.c:1102 +#: array.c:849 #, fuzzy msgid "asort: cannot use a subarray of first arg for second arg" msgstr "" "patsplit: non si può usare lo stesso vettore come secondo e quarto argomento" -#: array.c:1103 +#: array.c:850 #, fuzzy msgid "asorti: cannot use a subarray of first arg for second arg" msgstr "" "patsplit: non si può usare lo stesso vettore come secondo e quarto argomento" -#: array.c:1108 +#: array.c:855 #, fuzzy msgid "asort: cannot use a subarray of second arg for first arg" msgstr "" "split: non si può usare lo stesso vettore come secondo e quarto argomento" -#: array.c:1109 +#: array.c:856 #, fuzzy msgid "asorti: cannot use a subarray of second arg for first arg" msgstr "" "split: non si può usare lo stesso vettore come secondo e quarto argomento" -#: array.c:1659 +#: array.c:1329 #, fuzzy, c-format msgid "`%s' is invalid as a function name" msgstr "estensione: manca nome di funzione" -#: array.c:1663 +#: array.c:1333 #, fuzzy, c-format msgid "sort comparison function `%s' is not defined" msgstr "funzione `%s' non definita" -#: awkgram.y:249 +#: awkgram.y:223 #, c-format msgid "%s blocks must have an action part" msgstr "blocchi %s richiedono una 'azione'" -#: awkgram.y:252 +#: awkgram.y:226 msgid "each rule must have a pattern or an action part" msgstr "ogni regola deve avere una parte 'espressione' o una parte 'azione'" -#: awkgram.y:323 awkgram.y:334 +#: awkgram.y:295 awkgram.y:306 msgid "old awk does not support multiple `BEGIN' or `END' rules" msgstr "il vecchio awk non supporta più di una regola `BEGIN' o `END'" -#: awkgram.y:371 +#: awkgram.y:343 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "`%s' è una funzione interna, non si può ridefinire" -#: awkgram.y:432 +#: awkgram.y:389 msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "espressione regolare costante `//' sembra un commento C++, ma non lo è" -#: awkgram.y:436 +#: awkgram.y:393 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "espressione regolare costante `/%s/' sembra un commento C, ma non lo è" -#: awkgram.y:528 +#: awkgram.y:485 #, c-format msgid "duplicate case values in switch body: %s" msgstr "valori di 'case' doppi all'interno di uno 'switch': %s" -#: awkgram.y:549 +#: awkgram.y:506 msgid "duplicate `default' detected in switch body" msgstr "valori di default doppi all'interno di uno 'switch'" -#: awkgram.y:809 +#: awkgram.y:766 msgid "`break' is not allowed outside a loop or switch" msgstr "`break' non permesso fuori da un ciclo o da uno 'switch'" -#: awkgram.y:818 +#: awkgram.y:775 msgid "`continue' is not allowed outside a loop" msgstr "`continue' non permesso fuori da un un ciclo" -#: awkgram.y:828 +#: awkgram.y:785 #, c-format msgid "`next' used in %s action" msgstr "`next' usato in 'azione' %s" -#: awkgram.y:836 +#: awkgram.y:793 msgid "`nextfile' is a gawk extension" msgstr "`nextfile' è un'estensione gawk" -#: awkgram.y:841 +#: awkgram.y:798 #, c-format msgid "`nextfile' used in %s action" msgstr "`nextfile' usato in 'azione' %s" -#: awkgram.y:865 +#: awkgram.y:822 msgid "`return' used outside function context" msgstr "`return' usato fuori da una funzione" -#: awkgram.y:925 +#: awkgram.y:892 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "`print' da solo in BEGIN o END dovrebbe forse essere `print \"\"'" -#: awkgram.y:995 awkgram.y:999 awkgram.y:1023 +#: awkgram.y:962 awkgram.y:966 awkgram.y:990 msgid "`delete array' is a gawk extension" msgstr "`delete array' è un'estensione gawk" -#: awkgram.y:1019 +#: awkgram.y:986 msgid "`delete(array)' is a non-portable tawk extension" msgstr "`delete(array)' è un'estensione tawk non-portabile" -#: awkgram.y:1135 +#: awkgram.y:1102 msgid "multistage two-way pipelines don't work" msgstr "'pipeline' multistadio bidirezionali non funzionano" -#: awkgram.y:1238 +#: awkgram.y:1205 msgid "regular expression on right of assignment" msgstr "espressione regolare usata per assegnare un valore" -#: awkgram.y:1249 +#: awkgram.y:1216 msgid "regular expression on left of `~' or `!~' operator" msgstr "espressione regolare prima di operatore `~' o `!~'" -#: awkgram.y:1265 awkgram.y:1419 +#: awkgram.y:1232 awkgram.y:1383 msgid "old awk does not support the keyword `in' except after `for'" msgstr "il vecchio awk non supporta la parola-chiave `in' se non dopo `for'" -#: awkgram.y:1275 +#: awkgram.y:1242 msgid "regular expression on right of comparison" msgstr "espressione regolare a destra in un confronto" -#: awkgram.y:1394 +#: awkgram.y:1358 #, c-format msgid "`getline var' invalid inside `%s' rule" msgstr "`getline var' invalida all'interno della regola `%s'" -#: awkgram.y:1397 eval.c:2504 +#: awkgram.y:1361 #, c-format msgid "`getline' invalid inside `%s' rule" msgstr "`getline' invalida all'interno della regola `%s'" -#: awkgram.y:1402 +#: awkgram.y:1366 msgid "non-redirected `getline' undefined inside END action" msgstr "`getline' non re-diretta indefinita dentro 'azione' END" -#: awkgram.y:1421 +#: awkgram.y:1385 msgid "old awk does not support multidimensional arrays" msgstr "il vecchio awk non supporta vettori multidimensionali" -#: awkgram.y:1517 +#: awkgram.y:1481 msgid "call of `length' without parentheses is not portable" msgstr "chiamata a `length' senza parentesi non portabile" -#: awkgram.y:1580 +#: awkgram.y:1545 msgid "indirect function calls are a gawk extension" msgstr "chiamate a funzione indirette sono un'estensione gawk" -#: awkgram.y:1593 +#: awkgram.y:1558 #, c-format msgid "can not use special variable `%s' for indirect function call" msgstr "" "non posso usare la variabile speciale `%s' come parametro indiretto di " "funzione " -#: awkgram.y:1671 +#: awkgram.y:1636 msgid "invalid subscript expression" msgstr "espressione indice invalida" -#: awkgram.y:1711 -msgid "use of non-array as array" -msgstr "uso di non-vettore come vettore" - -#: awkgram.y:1975 awkgram.y:1995 msg.c:98 +#: awkgram.y:1936 awkgram.y:1956 msg.c:96 msgid "warning: " msgstr "attenzione: " -#: awkgram.y:1993 msg.c:130 +#: awkgram.y:1954 msg.c:128 msgid "fatal: " msgstr "fatale: " -#: awkgram.y:2043 +#: awkgram.y:2004 msgid "unexpected newline or end of string" msgstr "carattere 'a capo' o fine stringa inaspettati" -#: awkgram.y:2300 awkgram.y:2358 awkgram.y:2542 +#: awkgram.y:2269 awkgram.y:2327 awkgram.y:2515 #, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "non riesco ad aprire file sorgente `%s' in lettura (%s)" -#: awkgram.y:2301 awkgram.y:2359 builtin.c:122 +#: awkgram.y:2270 awkgram.y:2328 builtin.c:124 msgid "reason unknown" msgstr "ragione indeterminata" -#: awkgram.y:2317 +#: awkgram.y:2286 #, c-format msgid "already included source file `%s'" msgstr "file sorgente `%s' già incluso" -#: awkgram.y:2343 +#: awkgram.y:2312 msgid "@include is a gawk extension" msgstr "@include è un'estensione gawk" -#: awkgram.y:2349 +#: awkgram.y:2318 msgid "empty filename after @include" msgstr "nome-file mancante dopo @include" -#: awkgram.y:2494 +#: awkgram.y:2467 msgid "empty program text on command line" msgstr "programma nullo sulla linea comandi" -#: awkgram.y:2609 +#: awkgram.y:2582 #, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "non riesco a leggere file sorgente `%s' (%s)" -#: awkgram.y:2620 +#: awkgram.y:2593 #, c-format msgid "source file `%s' is empty" msgstr "file sorgente `%s' vuoto" -#: awkgram.y:2805 +#: awkgram.y:2770 msgid "source file does not end in newline" msgstr "file sorgente non termina con carattere 'a capo'" -#: awkgram.y:2882 +#: awkgram.y:2874 msgid "unterminated regexp ends with `\\' at end of file" msgstr "espressione regolare non completata termina con `\\' a fine file" -#: awkgram.y:2906 +#: awkgram.y:2898 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" "%s: %d: modificatore di espressione regolare tawk `/.../%c' non valido in " "gawk" -#: awkgram.y:2910 +#: awkgram.y:2902 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "modificatore di espressione regolare tawk `/.../%c' non valido in gawk" -#: awkgram.y:2917 +#: awkgram.y:2909 msgid "unterminated regexp" msgstr "espressione regolare non completata" -#: awkgram.y:2921 +#: awkgram.y:2913 msgid "unterminated regexp at end of file" msgstr "espressione regolare non completata a fine file" -#: awkgram.y:2980 +#: awkgram.y:2972 msgid "use of `\\ #...' line continuation is not portable" msgstr "uso di `\\ #...' continuazione linea non portabile" -#: awkgram.y:2996 +#: awkgram.y:2988 msgid "backslash not last character on line" msgstr "'\\' non è l'ultimo carattere della linea" -#: awkgram.y:3057 +#: awkgram.y:3049 msgid "POSIX does not allow operator `**='" msgstr "POSIX non permette l'operatore `**='" -#: awkgram.y:3059 +#: awkgram.y:3051 msgid "old awk does not support operator `**='" msgstr "il vecchio awk non supporta l'operatore `**='" -#: awkgram.y:3068 +#: awkgram.y:3060 msgid "POSIX does not allow operator `**'" msgstr "POSIX non permette l'operatore `**'" -#: awkgram.y:3070 +#: awkgram.y:3062 msgid "old awk does not support operator `**'" msgstr "il vecchio awk non supporta l'operatore `**'" -#: awkgram.y:3105 +#: awkgram.y:3097 msgid "operator `^=' is not supported in old awk" msgstr "l'operatore `^=' non è supportato nel vecchio awk" -#: awkgram.y:3113 +#: awkgram.y:3105 msgid "operator `^' is not supported in old awk" msgstr "l'operatore `^' non è supportato nel vecchio awk" -#: awkgram.y:3206 awkgram.y:3222 +#: awkgram.y:3198 awkgram.y:3214 msgid "unterminated string" msgstr "stringa non terminata" -#: awkgram.y:3418 +#: awkgram.y:3410 #, c-format msgid "invalid char '%c' in expression" msgstr "carattere '%c' non valido in un'espressione" -#: awkgram.y:3465 +#: awkgram.y:3457 #, c-format msgid "`%s' is a gawk extension" msgstr "`%s' è un'estensione gawk" -#: awkgram.y:3470 +#: awkgram.y:3462 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "`%s' è un'estensione Bell Labs" -#: awkgram.y:3475 +#: awkgram.y:3467 #, c-format msgid "POSIX does not allow `%s'" msgstr "POSIX non permette `%s'" -#: awkgram.y:3483 +#: awkgram.y:3475 #, c-format msgid "`%s' is not supported in old awk" msgstr "`%s' non è supportato nel vecchio awk" -#: awkgram.y:3550 +#: awkgram.y:3542 msgid "`goto' considered harmful!\n" msgstr "`goto' considerato pericoloso!\n" -#: awkgram.y:3601 +#: awkgram.y:3576 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "%d non valido come numero di argomenti per %s" -#: awkgram.y:3636 +#: awkgram.y:3611 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "%s: una stringa come ultimo argomento di 'substitute' non ha effetto" -#: awkgram.y:3641 +#: awkgram.y:3616 #, c-format msgid "%s third parameter is not a changeable object" msgstr "il terzo parametro di '%s' non è un oggetto modificabile" -#: awkgram.y:3714 awkgram.y:3717 +#: awkgram.y:3689 awkgram.y:3692 msgid "match: third argument is a gawk extension" msgstr "match: il terzo argomento è un'estensione gawk" -#: awkgram.y:3771 awkgram.y:3774 +#: awkgram.y:3746 awkgram.y:3749 msgid "close: second argument is a gawk extension" msgstr "close: il secondo argomento è un'estensione gawk" -#: awkgram.y:3786 +#: awkgram.y:3761 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "uso scorretto di dcgettext(_\"...\"): togliere il carattere '_' iniziale" -#: awkgram.y:3801 +#: awkgram.y:3776 msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "uso scorretto di dcngettext(_\"...\"): togliere il carattere '_' iniziale" -#: awkgram.y:3893 -#, c-format -msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" -msgstr "funzione `%s': parametro #%d, `%s', duplica parametro #%d" - -#: awkgram.y:3935 +#: awkgram.y:3842 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "funzione `%s': parametro `%s' nasconde variabile globale" -#: awkgram.y:4093 +#: awkgram.y:3885 #, c-format msgid "could not open `%s' for writing (%s)" msgstr "non riesco ad aprire `%s' in scrittura (%s)" -#: awkgram.y:4094 +#: awkgram.y:3886 #, fuzzy msgid "sending variable list to standard error" msgstr "mando profilo a 'standard error'" -#: awkgram.y:4100 +#: awkgram.y:3894 #, c-format msgid "%s: close failed (%s)" msgstr "%s: 'close' fallita (%s)" -#: awkgram.y:4152 +#: awkgram.y:3919 msgid "shadow_funcs() called twice!" msgstr "shadow_funcs() chiamata due volte!" -#: awkgram.y:4158 +#: awkgram.y:3927 msgid "there were shadowed variables." msgstr "c'erano variabili nascoste." -#: awkgram.y:4188 +#: awkgram.y:3998 +#, c-format +msgid "function name `%s' previously defined" +msgstr "funzione di nome `%s' definita in precedenza" + +#: awkgram.y:4044 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "funzione `%s': non posso usare nome della funzione come nome parametro" -#: awkgram.y:4192 +#: awkgram.y:4047 #, c-format msgid "function `%s': can't use special variable `%s' as a function parameter" msgstr "" "funzione `%s': non posso usare la variabile speciale `%s' come parametro di " "funzione" -#: awkgram.y:4208 +#: awkgram.y:4055 #, c-format -msgid "function name `%s' previously defined" -msgstr "funzione di nome `%s' definita in precedenza" +msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" +msgstr "funzione `%s': parametro #%d, `%s', duplica parametro #%d" -#: awkgram.y:4376 awkgram.y:4382 +#: awkgram.y:4134 awkgram.y:4140 #, c-format msgid "function `%s' called but never defined" msgstr "funzione `%s' chiamata ma mai definita" -#: awkgram.y:4385 +#: awkgram.y:4143 #, c-format msgid "function `%s' defined but never called directly" msgstr "funzione `%s' definita ma mai chiamata direttamente" -#: awkgram.y:4417 +#: awkgram.y:4175 #, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "" "espressione regolare di valore costante per parametro #%d genera valore " "booleano" -#: awkgram.y:4526 +#: awkgram.y:4221 #, c-format msgid "" "function `%s' called with space between name and `(',\n" @@ -530,227 +487,227 @@ msgstr "" "funzione `%s' chiamata con spazio tra il nome e `(',\n" "o usata come variabile o vettore" -#: awkgram.y:4773 eval.c:2056 +#: awkgram.y:4429 msgid "division by zero attempted" msgstr "tentativo di dividere per zero" -#: awkgram.y:4782 eval.c:2072 +#: awkgram.y:4438 #, c-format msgid "division by zero attempted in `%%'" msgstr "tentativo di dividere per zero in `%%'" -#: builtin.c:120 +#: builtin.c:122 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "%s a \"%s\" fallita (%s)" -#: builtin.c:121 +#: builtin.c:123 msgid "standard output" msgstr "standard output" -#: builtin.c:135 +#: builtin.c:137 msgid "exp: received non-numeric argument" msgstr "exp: argomento non numerico" -#: builtin.c:141 +#: builtin.c:143 #, c-format msgid "exp: argument %g is out of range" msgstr "exp: argomento %g non accettabile" -#: builtin.c:200 +#: builtin.c:202 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "" "fflush: non posso scaricare: 'pipe' `%s' aperta in lettura, non in scrittura" -#: builtin.c:203 +#: builtin.c:205 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "" "fflush: non posso scaricare: file `%s' aperto in lettura, non in scrittura" -#: builtin.c:215 +#: builtin.c:217 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "fflush: `%s' non è un file aperto, una 'pipe' o un co-processo" -#: builtin.c:333 +#: builtin.c:335 msgid "index: received non-string first argument" msgstr "index: il primo argomento non è una stringa" -#: builtin.c:335 +#: builtin.c:337 msgid "index: received non-string second argument" msgstr "index: il secondo argomento non è una stringa" -#: builtin.c:457 +#: builtin.c:461 msgid "int: received non-numeric argument" msgstr "int: argomento non numerico" -#: builtin.c:493 +#: builtin.c:497 msgid "length: received array argument" msgstr "length: l'argomento fornito è un vettore" -#: builtin.c:496 +#: builtin.c:500 msgid "`length(array)' is a gawk extension" msgstr "`length(array)' è un'estensione gawk" -#: builtin.c:504 +#: builtin.c:508 msgid "length: received non-string argument" msgstr "length: l'argomento non è una stringa" -#: builtin.c:535 +#: builtin.c:539 msgid "log: received non-numeric argument" msgstr "log: argomento non numerico" -#: builtin.c:538 +#: builtin.c:542 #, c-format msgid "log: received negative argument %g" msgstr "log: argomento negativo %g" -#: builtin.c:694 builtin.c:699 +#: builtin.c:698 builtin.c:703 msgid "fatal: must use `count$' on all formats or none" msgstr "" -#: builtin.c:761 +#: builtin.c:766 #, c-format msgid "field width is ignored for `%%' specifier" msgstr "" -#: builtin.c:763 +#: builtin.c:768 #, c-format msgid "precision is ignored for `%%' specifier" msgstr "" -#: builtin.c:765 +#: builtin.c:770 #, c-format msgid "field width and precision are ignored for `%%' specifier" msgstr "" -#: builtin.c:816 +#: builtin.c:821 #, fuzzy msgid "fatal: `$' is not permitted in awk formats" msgstr "l'operatore `^' non è supportato nel vecchio awk" -#: builtin.c:825 +#: builtin.c:830 msgid "fatal: arg count with `$' must be > 0" msgstr "" -#: builtin.c:829 +#: builtin.c:834 #, c-format msgid "fatal: arg count %ld greater than total number of supplied arguments" msgstr "" -#: builtin.c:833 +#: builtin.c:838 msgid "fatal: `$' not permitted after period in format" msgstr "" -#: builtin.c:849 +#: builtin.c:854 msgid "fatal: no `$' supplied for positional field width or precision" msgstr "" -#: builtin.c:920 +#: builtin.c:925 msgid "`l' is meaningless in awk formats; ignored" msgstr "" -#: builtin.c:924 +#: builtin.c:929 msgid "fatal: `l' is not permitted in POSIX awk formats" msgstr "" -#: builtin.c:937 +#: builtin.c:942 msgid "`L' is meaningless in awk formats; ignored" msgstr "" -#: builtin.c:941 +#: builtin.c:946 msgid "fatal: `L' is not permitted in POSIX awk formats" msgstr "" -#: builtin.c:954 +#: builtin.c:959 msgid "`h' is meaningless in awk formats; ignored" msgstr "" -#: builtin.c:958 +#: builtin.c:963 msgid "fatal: `h' is not permitted in POSIX awk formats" msgstr "" -#: builtin.c:1271 +#: builtin.c:1276 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "" -#: builtin.c:1331 +#: builtin.c:1336 #, c-format msgid "ignoring unknown format specifier character `%c': no argument converted" msgstr "" -#: builtin.c:1336 +#: builtin.c:1341 msgid "fatal: not enough arguments to satisfy format string" msgstr "" -#: builtin.c:1338 +#: builtin.c:1343 msgid "^ ran out for this one" msgstr "" -#: builtin.c:1345 +#: builtin.c:1350 msgid "[s]printf: format specifier does not have control letter" msgstr "" -#: builtin.c:1348 +#: builtin.c:1353 msgid "too many arguments supplied for format string" msgstr "" -#: builtin.c:1422 builtin.c:1433 +#: builtin.c:1427 builtin.c:1438 msgid "printf: no arguments" msgstr "printf: manca argomento" -#: builtin.c:1474 +#: builtin.c:1479 msgid "sqrt: received non-numeric argument" msgstr "sqrt: argomento non numerico" -#: builtin.c:1478 +#: builtin.c:1483 #, c-format msgid "sqrt: called with negative argument %g" msgstr "sqrt: chiamata con argomento negativo %g" -#: builtin.c:1502 +#: builtin.c:1507 #, c-format msgid "substr: length %g is not >= 1" msgstr "substr: lunghezza %g non >= 1" -#: builtin.c:1504 +#: builtin.c:1509 #, c-format msgid "substr: length %g is not >= 0" msgstr "substr: lunghezza %g non >= 0" -#: builtin.c:1511 +#: builtin.c:1516 #, c-format msgid "substr: non-integer length %g will be truncated" msgstr "substr: lunghezza non intera %g: sarà troncata" -#: builtin.c:1516 +#: builtin.c:1521 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "substr: lunghezza %g troppo elevata per indice stringa, tronco a %g" -#: builtin.c:1528 +#: builtin.c:1533 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "substr: indice di partenza %g non valido, uso 1" -#: builtin.c:1533 +#: builtin.c:1538 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "substr: indice di partenza non intero %g: sarà troncato" -#: builtin.c:1558 +#: builtin.c:1563 msgid "substr: source string is zero length" msgstr "substr: stringa di partenza lunga zero" -#: builtin.c:1574 +#: builtin.c:1579 #, c-format msgid "substr: start index %g is past end of string" msgstr "substr: indice di partenza %g oltre la fine della stringa" -#: builtin.c:1582 +#: builtin.c:1587 #, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" @@ -758,228 +715,223 @@ msgstr "" "substr: lunghezza %g all'indice di partenza %g supera la lunghezza del primo " "argomento (%lu)" -#: builtin.c:1656 +#: builtin.c:1661 msgid "strftime: format value in PROCINFO[\"strftime\"] has numeric type" msgstr "" "strftime: il valore del 'format' in PROCINFO[\"strftime\"] è di tipo numerico" -#: builtin.c:1679 +#: builtin.c:1684 msgid "strftime: received non-numeric second argument" msgstr "strftime: il secondo argomento non è numerico" -#: builtin.c:1682 +#: builtin.c:1687 msgid "strftime: second argument less than 0 or too big for time_t" msgstr "" -#: builtin.c:1689 +#: builtin.c:1694 msgid "strftime: received non-string first argument" msgstr "strftime: il primo argomento non è una stringa" -#: builtin.c:1695 +#: builtin.c:1701 msgid "strftime: received empty format string" msgstr "strftime: 'format' è una stringa nulla" -#: builtin.c:1761 +#: builtin.c:1767 msgid "mktime: received non-string argument" msgstr "mktime: l'argomento non è una stringa" -#: builtin.c:1778 +#: builtin.c:1784 msgid "mktime: at least one of the values is out of the default range" msgstr "mktime: almeno un valore è fuori dall'intervallo di default" -#: builtin.c:1813 +#: builtin.c:1819 msgid "'system' function not allowed in sandbox mode" msgstr "la funzione 'system' non è permessa in modo 'sandbox'" -#: builtin.c:1818 +#: builtin.c:1824 msgid "system: received non-string argument" msgstr "system: l'argomento non è una stringa" -#: builtin.c:1873 eval.c:1159 eval.c:1790 eval.c:1803 -#, c-format -msgid "reference to uninitialized variable `%s'" -msgstr "riferimento a variabile non inizializzata `%s'" - -#: builtin.c:1940 +#: builtin.c:1942 #, c-format msgid "reference to uninitialized field `$%d'" msgstr "riferimento a variabile non inizializzata `$%d'" -#: builtin.c:2027 +#: builtin.c:2029 msgid "tolower: received non-string argument" msgstr "tolower: l'argomento non è una stringa" -#: builtin.c:2061 +#: builtin.c:2063 msgid "toupper: received non-string argument" msgstr "toupper: l'argomento non è una stringa" -#: builtin.c:2097 +#: builtin.c:2099 msgid "atan2: received non-numeric first argument" msgstr "atan2: il primo argomento non è numerico" -#: builtin.c:2099 +#: builtin.c:2101 msgid "atan2: received non-numeric second argument" msgstr "atan2: il secondo argomento non è numerico" -#: builtin.c:2118 +#: builtin.c:2120 msgid "sin: received non-numeric argument" msgstr "sin: l'argomento non è numerico" -#: builtin.c:2134 +#: builtin.c:2136 msgid "cos: received non-numeric argument" msgstr "cos: l'argomento non è numerico" -#: builtin.c:2187 +#: builtin.c:2189 msgid "srand: received non-numeric argument" msgstr "srand: l'argomento non è numerico" -#: builtin.c:2218 +#: builtin.c:2220 msgid "match: third argument is not an array" msgstr "match: il terzo argomento non è un vettore" -#: builtin.c:2482 +#: builtin.c:2484 msgid "gensub: third argument of 0 treated as 1" msgstr "gensub: il terzo argomento è 0, trattato come 1" -#: builtin.c:2775 +#: builtin.c:2777 msgid "lshift: received non-numeric first argument" msgstr "lshift: il primo argomento non è numerico" -#: builtin.c:2777 +#: builtin.c:2779 msgid "lshift: received non-numeric second argument" msgstr "lshift: il secondo argomento non è numerico" -#: builtin.c:2783 +#: builtin.c:2785 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "lshift(%lf, %lf): valori negativi daranno risultati strani" -#: builtin.c:2785 +#: builtin.c:2787 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "lshift(%lf, %lf): valori con decimali verranno troncati" -#: builtin.c:2787 +#: builtin.c:2789 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "lshift(%lf, %lf): valori troppo alti daranno risultati strani" -#: builtin.c:2812 +#: builtin.c:2814 msgid "rshift: received non-numeric first argument" msgstr "rshift: il primo argomento non è numerico" -#: builtin.c:2814 +#: builtin.c:2816 msgid "rshift: received non-numeric second argument" msgstr "rshift: il secondo argomento non è numerico" -#: builtin.c:2820 +#: builtin.c:2822 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "rshift(%lf, %lf): valori negativi daranno risultati strani" -#: builtin.c:2822 +#: builtin.c:2824 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "rshift(%lf, %lf): valori con decimali verranno troncati" -#: builtin.c:2824 +#: builtin.c:2826 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "rshift(%lf, %lf): valori troppo alti daranno risultati strani" -#: builtin.c:2849 +#: builtin.c:2851 msgid "and: received non-numeric first argument" msgstr "and: il primo argomento non è numerico" -#: builtin.c:2851 +#: builtin.c:2853 msgid "and: received non-numeric second argument" msgstr "and: il secondo argomento non è numerico" -#: builtin.c:2857 +#: builtin.c:2859 #, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "and(%lf, %lf): valori negativi daranno risultati strani" -#: builtin.c:2859 +#: builtin.c:2861 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "and(%lf, %lf): valori con decimali verranno troncati" -#: builtin.c:2884 +#: builtin.c:2886 msgid "or: received non-numeric first argument" msgstr "or: il primo argomento non è numerico" -#: builtin.c:2886 +#: builtin.c:2888 msgid "or: received non-numeric second argument" msgstr "or: il secondo argomento non è numerico" -#: builtin.c:2892 +#: builtin.c:2894 #, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "or(%lf, %lf): valori negativi daranno risultati strani" -#: builtin.c:2894 +#: builtin.c:2896 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "or(%lf, %lf): valori con decimali verranno troncati" -#: builtin.c:2922 +#: builtin.c:2924 msgid "xor: received non-numeric first argument" msgstr "xor: il primo argomento non è numerico" -#: builtin.c:2924 +#: builtin.c:2926 msgid "xor: received non-numeric second argument" msgstr "xor: il secondo argomento non è numerico" -#: builtin.c:2930 +#: builtin.c:2932 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "xor(%lf, %lf): valori negativi daranno risultati strani" -#: builtin.c:2932 +#: builtin.c:2934 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "xor(%lf, %lf): valori con decimali verranno troncati" -#: builtin.c:2956 builtin.c:2962 +#: builtin.c:2958 builtin.c:2964 msgid "compl: received non-numeric argument" msgstr "compl: l'argomento non è numerico" -#: builtin.c:2964 +#: builtin.c:2966 #, c-format msgid "compl(%lf): negative value will give strange results" msgstr "compl(%lf): valore negativo darà risultati strani" -#: builtin.c:2966 +#: builtin.c:2968 #, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "compl(%lf): valore con decimali verrà troncato" -#: builtin.c:3135 +#: builtin.c:3137 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "dcgettext: `%s' non è una categoria 'locale' valida" -#: eval.c:412 +#: eval.c:393 #, c-format msgid "unknown nodetype %d" msgstr "tipo nodo sconosciuto %d" -#: eval.c:423 eval.c:437 +#: eval.c:404 eval.c:418 #, c-format msgid "unknown opcode %d" msgstr "codice operativo sconosciuto %d" -#: eval.c:434 +#: eval.c:415 #, c-format msgid "opcode %s not an operator or keyword" msgstr "codice operativo %s non è un operatore o una parola chiave" -#: eval.c:488 +#: eval.c:468 msgid "buffer overflow in genflags2str" msgstr "superamento limiti buffer in 'genflags2str'" -#: eval.c:698 +#: eval.c:678 #, c-format msgid "" "\n" @@ -990,217 +942,165 @@ msgstr "" "\t# 'Stack' (Pila) Chiamate Funzione:\n" "\n" -#: eval.c:725 +#: eval.c:706 msgid "`IGNORECASE' is a gawk extension" msgstr "`IGNORECASE' è un'estensione gawk" -#: eval.c:754 +#: eval.c:736 msgid "`BINMODE' is a gawk extension" msgstr "`BINMODE' è un'estensione gawk" -#: eval.c:812 +#: eval.c:794 #, c-format msgid "BINMODE value `%s' is invalid, treated as 3" msgstr "valore di BINMODE `%s' non valido, considerato come 3" -#: eval.c:902 +#: eval.c:887 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "specificazione invalida `%sFMT' `%s'" -#: eval.c:980 +#: eval.c:969 msgid "turning off `--lint' due to assignment to `LINT'" msgstr "disabilito `--lint' a causa di assegnamento a `LINT'" -#: eval.c:1127 eval.c:1777 -#, c-format -msgid "can't use function name `%s' as variable or array" -msgstr "non posso usare nome di funzione `%s' come variabile o vettore" - -#: eval.c:1158 eval.c:1789 eval.c:1802 +#: eval.c:1119 #, c-format msgid "reference to uninitialized argument `%s'" msgstr "riferimento ad argomento non inizializzato `%s'" -#: eval.c:1177 +#: eval.c:1120 +#, c-format +msgid "reference to uninitialized variable `%s'" +msgstr "riferimento a variabile non inizializzata `%s'" + +#: eval.c:1138 msgid "attempt to field reference from non-numeric value" msgstr "tentativo di riferimento a un campo da valore non numerico" -#: eval.c:1179 +#: eval.c:1140 msgid "attempt to field reference from null string" msgstr "tentativo di riferimento a un campo da una stringa nulla" -#: eval.c:1185 +#: eval.c:1146 #, c-format msgid "attempt to access field %ld" msgstr "tentativo di accedere al campo %ld" -#: eval.c:1194 +#: eval.c:1155 #, c-format msgid "reference to uninitialized field `$%ld'" msgstr "riferimento a campo non inizializzato `$%ld'" -#: eval.c:1256 +#: eval.c:1242 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "funzione `%s' chiamata con più argomenti di quelli previsti" -#: eval.c:1437 +#: eval.c:1436 #, c-format msgid "unwind_stack: unexpected type `%s'" msgstr "unwind_stack: tipo non previsto `%s'" -#: eval.c:1532 +#: eval.c:1536 msgid "division by zero attempted in `/='" msgstr "divisione per zero tentata in `/='" -#: eval.c:1539 +#: eval.c:1543 #, c-format msgid "division by zero attempted in `%%='" msgstr "divisione per zero tentata in `%%='" -#: eval.c:1876 eval.c:2122 -#, fuzzy, c-format -msgid "attempt to use array `%s[\"%.*s\"]' in a scalar context" -msgstr "tentativo di usare vettore `%s' in un contesto scalare" - -#: eval.c:1907 -msgid "assignment used in conditional context" -msgstr "assegnamento usato nel contesto di un test condizionale" - -#: eval.c:1911 -msgid "statement has no effect" -msgstr "istruzione che non fa nulla" - -#: eval.c:2343 -#, c-format -msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" -msgstr "" -"ciclo for: vettore `%s' ha cambiato dimensione da %ld a %ld durante " -"l'esecuzione del ciclo" - -#: eval.c:2458 -#, c-format -msgid "function called indirectly through `%s' does not exist" -msgstr "la funzione chiamata indirettamente tramite `%s' non esiste" - -#: eval.c:2470 -#, c-format -msgid "function `%s' not defined" -msgstr "funzione `%s' non definita" - -#: eval.c:2511 -#, c-format -msgid "non-redirected `getline' invalid inside `%s' rule" -msgstr "`getline' non-diretta indefinita dentro regola '%s'" - -#: eval.c:2600 -#, c-format -msgid "error reading input file `%s': %s" -msgstr "errore leggendo file di input `%s': %s" - -#: eval.c:2614 -#, c-format -msgid "`nextfile' cannot be called from a `%s' rule" -msgstr "`nextfile' non può essere chiamato da una regola `%s'" - -#: eval.c:2694 -#, c-format -msgid "`next' cannot be called from a `%s' rule" -msgstr "`next' non può essere chiamato da una regola `%s'" - -#: eval.c:2760 -#, c-format -msgid "Sorry, don't know how to interpret `%s'" -msgstr "Spiacente, non so come interpretare `%s'" - -#: ext.c:64 +#: ext.c:70 msgid "extensions are not allowed in sandbox mode" msgstr "le estensioni non sono permesse in modo 'sandbox'" -#: ext.c:70 ext.c:75 +#: ext.c:73 msgid "`extension' is a gawk extension" msgstr "`extension' è un'estensione gawk" -#: ext.c:85 -#, c-format -msgid "fatal: extension: cannot open `%s' (%s)\n" +#: ext.c:80 +#, fuzzy, c-format +msgid "extension: cannot open library `%s' (%s)\n" msgstr "fatale: estensione: non riesco ad aprire `%s' (%s)\n" -#: ext.c:94 -#, c-format +#: ext.c:86 +#, fuzzy, c-format msgid "" -"fatal: extension: library `%s': does not define " -"`plugin_is_GPL_compatible' (%s)\n" +"extension: library `%s': does not define `plugin_is_GPL_compatible' (%s)\n" msgstr "" "fatale: estensione: libreria `%s': non definisce " "`plugin_is_GPL_compatible' (%s)\n" -#: ext.c:103 -#, c-format -msgid "fatal: extension: library `%s': cannot call function `%s' (%s)\n" +#: ext.c:91 +#, fuzzy, c-format +msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "" "fatale: estensione: libreria `%s': non riesco a chiamare funzione `%s' (%s)\n" -#: ext.c:137 +#: ext.c:119 msgid "extension: missing function name" msgstr "estensione: manca nome di funzione" -#: ext.c:142 +#: ext.c:124 #, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "estensione: carattere non ammesso `%c' nel nome di funzione `%s'" -#: ext.c:151 +#: ext.c:132 #, c-format msgid "extension: can't redefine function `%s'" msgstr "estensione: non riesco a ridefinire funzione `%s'" -#: ext.c:155 +#: ext.c:136 #, c-format msgid "extension: function `%s' already defined" msgstr "estensione: funzione `%s' già definita" -#: ext.c:160 +#: ext.c:140 #, c-format msgid "extension: function name `%s' previously defined" msgstr "estensione: funzione di nome `%s' definita in precedenza" -#: ext.c:162 +#: ext.c:142 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "" "estensione: nome funzione interna gawk `%s' non ammesso come nome funzione" -#: ext.c:166 +#: ext.c:145 #, c-format msgid "make_builtin: negative argument count for function `%s'" msgstr "make_builtin: contatore argomenti negativo per la funzione `%s'" -#: ext.c:269 +#: ext.c:207 #, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "funzione `%s' definita per avere al massimo %d argomenti(o)" -#: ext.c:272 +#: ext.c:210 #, c-format msgid "function `%s': missing argument #%d" msgstr "funzione `%s': manca argomento #%d" -#: ext.c:289 +#: ext.c:227 #, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "funzione `%s': argomento #%d: tentativo di usare scalare come vettore" -#: ext.c:293 +#: ext.c:231 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "funzione `%s': argomento #%d: tentativo di usare vettore come scalare" -#: ext.c:306 +#: ext.c:245 msgid "Operation Not Supported" msgstr "Operazione Non Supportata" +#: ext.c:257 +msgid "dynamic loading of library not supported" +msgstr "" + #: field.c:328 msgid "NF set to negative value" msgstr "NF impostato a un valore negativo" @@ -1269,537 +1169,547 @@ msgid "patsplit: cannot use a subarray of fourth arg for second arg" msgstr "" "patsplit: non si può usare lo stesso vettore come secondo e quarto argomento" -#: field.c:1110 +#: field.c:1111 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "`FIELDWIDTHS' è un'estensione gawk" -#: field.c:1173 +#: field.c:1175 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "valore di FIELDWIDTHS non valido, vicino a `%s'" -#: field.c:1246 +#: field.c:1248 msgid "null string for `FS' is a gawk extension" msgstr "la stringa nulla usata come `FS' è un'estensione gawk" -#: field.c:1250 +#: field.c:1252 msgid "old awk does not support regexps as value of `FS'" msgstr "il vecchio awk non supporta espressioni come valori di `FS'" -#: field.c:1369 +#: field.c:1371 msgid "`FPAT' is a gawk extension" msgstr "`FPAT' è un'estensione gawk" -#: getopt.c:574 getopt.c:590 -#, c-format -msgid "%s: option '%s' is ambiguous\n" +#: getopt.c:604 getopt.c:633 +#, fuzzy, c-format +msgid "%s: option '%s' is ambiguous; possibilities:" msgstr "%s: opzione '%s' ambigua\n" -#: getopt.c:623 getopt.c:627 +#: getopt.c:679 getopt.c:683 #, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: l'opzione '--%s' non ammette un argomento\n" -#: getopt.c:636 getopt.c:641 +#: getopt.c:692 getopt.c:697 #, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: l'opzione '%c%s' non ammette un argomento\n" -#: getopt.c:684 getopt.c:703 +#: getopt.c:740 getopt.c:759 #, c-format msgid "%s: option '--%s' requires an argument\n" msgstr "%s: l'opzione '--%s' richiede un argomento\n" -#: getopt.c:741 getopt.c:744 +#: getopt.c:797 getopt.c:800 #, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: opzione sconosciuta '--%s'\n" -#: getopt.c:752 getopt.c:755 +#: getopt.c:808 getopt.c:811 #, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: opzione sconosciuta '%c%s'\n" -#: getopt.c:804 getopt.c:807 +#: getopt.c:860 getopt.c:863 #, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: opzione non valida -- '%c'\n" -#: getopt.c:857 getopt.c:874 getopt.c:1082 getopt.c:1100 +#: getopt.c:916 getopt.c:933 getopt.c:1143 getopt.c:1161 #, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: l'opzione richiede un argomento -- '%c'\n" -#: getopt.c:930 getopt.c:946 +#: getopt.c:989 getopt.c:1005 #, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: l'opzione '-W %s' è ambigua\n" -#: getopt.c:970 getopt.c:988 +#: getopt.c:1029 getopt.c:1047 #, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: l'opzione '-W %s' non ammette un argomento\n" -#: getopt.c:1009 getopt.c:1027 +#: getopt.c:1068 getopt.c:1086 #, c-format msgid "%s: option '-W %s' requires an argument\n" msgstr "%s: l'opzione '-W %s' richiede un argomento\n" -#: io.c:280 +#: io.c:315 #, c-format msgid "command line argument `%s' is a directory: skipped" msgstr "l'argomento in linea comando `%s' è una directory: saltato" -#: io.c:283 io.c:385 +#: io.c:318 io.c:421 #, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "non riesco ad aprire file `%s' in lettura (%s)" -#: io.c:501 +#: io.c:537 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "chiusura di fd %d (`%s') fallita (%s)" -#: io.c:578 +#: io.c:614 msgid "redirection not allowed in sandbox mode" msgstr "re-direzione non permessa in modo 'sandbox'" -#: io.c:612 +#: io.c:648 #, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "espressione nella re-direzione `%s' ha solo un valore numerico" -#: io.c:618 +#: io.c:654 #, c-format msgid "expression for `%s' redirection has null string value" msgstr "espressione nella re-direzione `%s' ha per valore la stringa nulla" -#: io.c:624 +#: io.c:659 #, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "" "nome-file `%s' per la re-direzione `%s' può essere il risultato di una " "espressione logica" -#: io.c:667 +#: io.c:702 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "mistura non necessaria di `>' e `>>' per il file `%.*s'" -#: io.c:720 +#: io.c:755 #, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "non posso aprire 'pipe' `%s' in scrittura (%s)" -#: io.c:730 +#: io.c:765 #, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "non posso aprire 'pipe' `%s' in lettura (%s)" -#: io.c:753 +#: io.c:788 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "non posso aprire 'pipe' bidirezionale `%s' per lettura/scrittura (%s)" -#: io.c:835 +#: io.c:870 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "non posso re-dirigere da `%s' (%s)" -#: io.c:838 +#: io.c:873 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "non posso re-dirigere a `%s' (%s)" -#: io.c:889 +#: io.c:924 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "" "numero massimo consentito di file aperti raggiunto: comincio a riutilizzare " "i descrittori di file" -#: io.c:905 +#: io.c:940 #, c-format msgid "close of `%s' failed (%s)." msgstr "chiusura di `%s' fallita (%s)." -#: io.c:913 +#: io.c:948 msgid "too many pipes or input files open" msgstr "troppe 'pipe' o file di input aperti" -#: io.c:935 +#: io.c:970 msgid "close: second argument must be `to' or `from'" msgstr "close: il secondo argomento deve essere `a' o `da'" -#: io.c:952 +#: io.c:987 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "close: `%.*s' non è un file aperto, una 'pipe' o un co-processo" -#: io.c:957 +#: io.c:992 msgid "close of redirection that was never opened" msgstr "chiusura di una re-direzione mai aperta" -#: io.c:1054 +#: io.c:1089 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "close: re-direzione `%s' non aperta con `|&', ignoro secondo argomento" -#: io.c:1070 +#: io.c:1105 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "errore ritornato (%d) dalla chiusura della 'pipe' `%s' (%s)" -#: io.c:1073 +#: io.c:1108 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "errore ritornato (%d) dalla chiusura del file `%s' (%s)" -#: io.c:1093 +#: io.c:1128 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "nessuna chiusura esplicita richiesta per 'socket' `%s'" -#: io.c:1096 +#: io.c:1131 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "nessuna chiusura esplicita richiesta per co-processo `%s'" -#: io.c:1099 +#: io.c:1134 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "nessuna chiusura esplicita richiesta per 'pipe' `%s'" -#: io.c:1102 +#: io.c:1137 #, c-format msgid "no explicit close of file `%s' provided" msgstr "nessuna chiusura esplicita richiesta per file `%s'" -#: io.c:1130 io.c:1185 main.c:793 main.c:830 +#: io.c:1165 io.c:1220 main.c:798 main.c:835 #, c-format msgid "error writing standard output (%s)" msgstr "errore scrivendo 'standard output' (%s)" -#: io.c:1134 io.c:1190 +#: io.c:1169 io.c:1225 #, c-format msgid "error writing standard error (%s)" msgstr "errore scrivendo 'standard error' (%s)" -#: io.c:1142 +#: io.c:1177 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "scaricamento di 'pipe' `%s' fallita (%s)." -#: io.c:1145 +#: io.c:1180 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "scaricamento da co-processo di 'pipe' a `%s' fallita (%s)." -#: io.c:1148 +#: io.c:1183 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "scaricamento di file `%s' fallita (%s)." -#: io.c:1263 +#: io.c:1298 #, c-format msgid "local port %s invalid in `/inet'" msgstr "porta locale %s invalida in `/inet'" -#: io.c:1280 +#: io.c:1315 #, c-format msgid "remote host and port information (%s, %s) invalid" msgstr "host remoto e informazione di porta (%s, %s) invalidi" -#: io.c:1432 +#: io.c:1467 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "nessuno protocollo (noto) specificato nel filename speciale `%s'" -#: io.c:1446 +#: io.c:1481 #, c-format msgid "special file name `%s' is incomplete" msgstr "nome-file speciale `%s' incompleto" -#: io.c:1463 +#: io.c:1498 msgid "must supply a remote hostname to `/inet'" msgstr "va fornito nome di 'host' remoto a `/inet'" -#: io.c:1481 +#: io.c:1516 msgid "must supply a remote port to `/inet'" msgstr "va fornita porta remota a `/inet'" -#: io.c:1527 +#: io.c:1562 msgid "TCP/IP communications are not supported" msgstr "comunicazioni TCP/IP non supportate" -#: io.c:1694 +#: io.c:1729 #, c-format msgid "could not open `%s', mode `%s'" msgstr "non riesco ad aprire `%s', modo `%s'" -#: io.c:1748 +#: io.c:1783 #, c-format msgid "close of master pty failed (%s)" msgstr "fallita chiusura di 'pty' principale (%s)" -#: io.c:1750 io.c:1918 io.c:2075 +#: io.c:1785 io.c:1953 io.c:2110 #, c-format msgid "close of stdout in child failed (%s)" msgstr "fallita chiusura di 'stdout' nel processo-figlio (%s)" -#: io.c:1753 +#: io.c:1788 #, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "" "fallito trasferimento di 'pty' secondaria a 'stdout' nel processo-figlio " "(dup: %s)" -#: io.c:1755 io.c:1923 +#: io.c:1790 io.c:1958 #, c-format msgid "close of stdin in child failed (%s)" msgstr "fallita chiusura di 'stdin' nel processo-figlio (%s)" -#: io.c:1758 +#: io.c:1793 #, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "" "fallito trasferimento di 'pty' secondaria a 'stdin' nel processo-figlio " "(dup: %s)" -#: io.c:1760 io.c:1781 +#: io.c:1795 io.c:1816 #, c-format msgid "close of slave pty failed (%s)" msgstr "fallita chiusura di 'pty' secondaria (%s)" -#: io.c:1859 io.c:1921 io.c:2053 io.c:2078 +#: io.c:1894 io.c:1956 io.c:2088 io.c:2113 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "fallito passaggio di 'pipe' a 'stdout' nel processo-figlio (dup: %s)" -#: io.c:1866 io.c:1926 +#: io.c:1901 io.c:1961 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "fallito passaggio di pipe a 'stdin' nel processo-figlio (dup: %s)" -#: io.c:1886 io.c:2068 +#: io.c:1921 io.c:2103 msgid "restoring stdout in parent process failed\n" msgstr "fallito ripristino di 'stdout' nel processo-padre\n" -#: io.c:1894 +#: io.c:1929 msgid "restoring stdin in parent process failed\n" msgstr "fallito ripristino di 'stdin' nel processo-padre\n" -#: io.c:1929 io.c:2080 io.c:2094 +#: io.c:1964 io.c:2115 io.c:2129 #, c-format msgid "close of pipe failed (%s)" msgstr "fallita chiusura di 'pipe' (%s)" -#: io.c:1974 +#: io.c:2009 msgid "`|&' not supported" msgstr "`|&' non supportato" -#: io.c:2040 +#: io.c:2075 #, c-format msgid "cannot open pipe `%s' (%s)" msgstr "non riesco ad aprire 'pipe' `%s' (%s)" -#: io.c:2088 +#: io.c:2123 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "non riesco a creare processo-figlio per `%s' (fork: %s)" -#: io.c:2521 +#: io.c:2613 #, c-format msgid "data file `%s' is empty" msgstr "file dati `%s' vuoto" -#: io.c:2562 io.c:2570 +#: io.c:2654 io.c:2662 msgid "could not allocate more input memory" msgstr "non riesco ad allocare ulteriore memoria per l'input" -#: io.c:3128 +#: io.c:3223 msgid "multicharacter value of `RS' is a gawk extension" msgstr "valore multicarattere per `RS' è un'estensione gawk" -#: io.c:3233 +#: io.c:3313 msgid "IPv6 communication is not supported" msgstr "comunicazioni IPv6 non supportate" -#: main.c:364 +#: main.c:353 msgid "`-m[fr]' option irrelevant in gawk" msgstr "`-m[fr]' opzione irrilevante per gawk" -#: main.c:366 +#: main.c:355 msgid "-m option usage: `-m[fr] nnn'" msgstr "-m uso opzione: `-m[fr] nnn'" -#: main.c:389 +#: main.c:384 msgid "empty argument to `-e/--source' ignored" msgstr "argomento di `-e/--source' nullo, ignorato" -#: main.c:460 +#: main.c:464 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "%s: opzione `-W %s' non riconosciuta, ignorata\n" -#: main.c:513 +#: main.c:510 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: l'opzione richiede un argomento -- %c\n" -#: main.c:534 +#: main.c:531 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "variable d'ambiente `POSIXLY_CORRECT' impostata: attivo `--posix'" -#: main.c:540 +#: main.c:537 msgid "`--posix' overrides `--traditional'" msgstr "`--posix' annulla `--traditional'" -#: main.c:551 +#: main.c:548 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "`--posix'/`--traditional' annulla `--non-decimal-data'" -#: main.c:555 +#: main.c:552 #, c-format msgid "running %s setuid root may be a security problem" msgstr "eseguire %s con 'setuid' root può essere un rischio per la sicurezza" -#: main.c:560 +#: main.c:557 msgid "`--posix' overrides `--binary'" msgstr "`--posix' annulla `--binary" -#: main.c:611 +#: main.c:600 #, c-format msgid "can't set binary mode on stdin (%s)" msgstr "non posso impostare modalità binaria su 'stdin'(%s)" -#: main.c:614 +#: main.c:603 #, c-format msgid "can't set binary mode on stdout (%s)" msgstr "non posso impostare modalità binaria su 'stdout'(%s)" -#: main.c:616 +#: main.c:605 #, c-format msgid "can't set binary mode on stderr (%s)" msgstr "non posso impostare modalità binaria su 'stderr'(%s)" -#: main.c:655 +#: main.c:653 msgid "no program text at all!" msgstr "manca del tutto il testo del programma!" -#: main.c:733 +#: main.c:737 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "Uso: %s [opzioni in stile POSIX o GNU] -f file-prog. [--] file ...\n" -#: main.c:735 +#: main.c:739 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "Usage: %s [opzioni in stile POSIX o GNU] [--] %cprogramma%c file ...\n" -#: main.c:740 +#: main.c:744 msgid "POSIX options:\t\tGNU long options: (standard)\n" msgstr "Opzioni POSIX:\t\topzioni lunghe GNU: (standard)\n" -#: main.c:741 +#: main.c:745 msgid "\t-f progfile\t\t--file=progfile\n" msgstr "\t-f fileprog\t\t--file=file-prog.\n" -#: main.c:742 +#: main.c:746 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "\t-F fs\t\t\t--field-separator=fs\n" -#: main.c:743 +#: main.c:747 msgid "\t-v var=val\t\t--assign=var=val\n" msgstr "\t-v var=valore\t\t--assign=var=valore\n" -#: main.c:744 +#: main.c:748 msgid "Short options:\t\tGNU long options: (extensions)\n" msgstr "Opzioni brevi:\t\topzioni lunghe GNU: (estensioni)\n" -#: main.c:745 +#: main.c:749 msgid "\t-b\t\t\t--characters-as-bytes\n" msgstr "\t-b\t\t\t--characters-as-bytes\n" -#: main.c:746 +#: main.c:750 msgid "\t-c\t\t\t--traditional\n" msgstr "\t-c\t\t\t--traditional\n" -#: main.c:747 +#: main.c:751 msgid "\t-C\t\t\t--copyright\n" msgstr "\t-C\t\t\t--copyright\n" -#: main.c:748 +#: main.c:752 #, fuzzy msgid "\t-d[file]\t\t--dump-variables[=file]\n" msgstr "\t-d [file]\t\t--dump-variables[=file]\n" -#: main.c:749 +#: main.c:753 +#, fuzzy +msgid "\t-D[file]\t\t--debug[=file]\n" +msgstr "\t-p [file]\t\t--profile[=file]\n" + +#: main.c:754 msgid "\t-e 'program-text'\t--source='program-text'\n" msgstr "\t-e 'testo-del-programma'\t--source='testo-del-programma'\n" -#: main.c:750 +#: main.c:755 msgid "\t-E file\t\t\t--exec=file\n" msgstr "\t-E file\t\t\t--exec=file\n" -#: main.c:751 +#: main.c:756 msgid "\t-g\t\t\t--gen-pot\n" msgstr "\t-g\t\t\t--gen-pot\n" -#: main.c:752 +#: main.c:757 msgid "\t-h\t\t\t--help\n" msgstr "\t-h\t\t\t--help\n" -#: main.c:753 +#: main.c:758 +msgid "\t-l library\t\t--load=library\n" +msgstr "" + +#: main.c:759 msgid "\t-L [fatal]\t\t--lint[=fatal]\n" msgstr "\t-L [fatal]\t\t--lint[=fatal]\n" -#: main.c:754 +#: main.c:760 msgid "\t-n\t\t\t--non-decimal-data\n" msgstr "\t-n\t\t\t--non-decimal-data\n" -#: main.c:755 +#: main.c:761 msgid "\t-N\t\t\t--use-lc-numeric\n" msgstr "\t-N\t\t\t--use-lc-numeric\n" -#: main.c:756 +#: main.c:762 +#, fuzzy +msgid "\t-o[file]\t\t--pretty-print[=file]\n" +msgstr "\t-p [file]\t\t--profile[=file]\n" + +#: main.c:763 msgid "\t-O\t\t\t--optimize\n" msgstr "\t-O\t\t\t--optimize\n" -#: main.c:757 +#: main.c:764 #, fuzzy msgid "\t-p[file]\t\t--profile[=file]\n" msgstr "\t-p [file]\t\t--profile[=file]\n" -#: main.c:758 +#: main.c:765 msgid "\t-P\t\t\t--posix\n" msgstr "\t-P\t\t\t--posix\n" -#: main.c:759 +#: main.c:766 msgid "\t-r\t\t\t--re-interval\n" msgstr "\t-r\t\t\t--re-interval\n" -#: main.c:761 -msgid "\t-R file\t\t\t--command=file\n" -msgstr "\t-R file\t\t\t--command=file\n" - -#: main.c:762 +#: main.c:767 msgid "\t-S\t\t\t--sandbox\n" msgstr "\t-S\t\t\t--sandbox\n" -#: main.c:763 +#: main.c:768 msgid "\t-t\t\t\t--lint-old\n" msgstr "\t-t\t\t\t--lint-old\n" -#: main.c:764 +#: main.c:769 msgid "\t-V\t\t\t--version\n" msgstr "\t-V\t\t\t--version\n" -#: main.c:766 +#: main.c:771 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "\t-W nostalgia\t\t--nostalgia\n" -#: main.c:769 +#: main.c:774 msgid "\t-Y\t\t--parsedebug\n" msgstr "\t-Y\t\t--parsedebug\n" @@ -1808,7 +1718,7 @@ msgstr "\t-Y\t\t--parsedebug\n" #. for this application. Please add _another line_ with the #. address for translation bugs. #. no-wrap -#: main.c:778 +#: main.c:783 msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" @@ -1820,7 +1730,7 @@ msgstr "" "sezione `Reporting Problems and Bugs' nella versione a stampa.\n" "\n" -#: main.c:782 +#: main.c:787 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" @@ -1830,7 +1740,7 @@ msgstr "" "Senza parametri, legge da 'standard input' e scrive su 'standard output'.\n" "\n" -#: main.c:786 +#: main.c:791 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" @@ -1840,7 +1750,7 @@ msgstr "" "\tgawk '{ sum += $1 }; END { print sum }' file\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" -#: main.c:806 +#: main.c:811 #, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" @@ -1859,7 +1769,7 @@ msgstr "" "Licenza, o (a tua scelta) a una qualsiasi versione successiva.\n" "\n" -#: main.c:814 +#: main.c:819 msgid "" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" @@ -1873,7 +1783,7 @@ msgstr "" "Vedi la 'GNU General Public License' per ulteriori dettagli.\n" "\n" -#: main.c:820 +#: main.c:825 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program. If not, see http://www.gnu.org/licenses/.\n" @@ -1882,16 +1792,16 @@ msgstr "" "assieme a questo programma; se non è così, vedi http://www.gnu.org/" "licenses/.\n" -#: main.c:855 +#: main.c:860 msgid "-Ft does not set FS to tab in POSIX awk" msgstr "-Ft non imposta FS a 'tab' nell'awk POSIX" -#: main.c:1089 +#: main.c:1091 #, c-format msgid "unknown value for field spec: %d\n" msgstr "valore non noto per specifica campo: %d\n" -#: main.c:1170 +#: main.c:1172 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" @@ -1900,85 +1810,80 @@ msgstr "" "%s: `%s' argomento di `-v' non in forma `var=valore'\n" "\n" -#: main.c:1196 +#: main.c:1198 #, c-format msgid "`%s' is not a legal variable name" msgstr "`%s' non è un nome di variabile ammesso" -#: main.c:1199 +#: main.c:1201 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "`%s' non è un nome di variabile, cerco il file `%s=%s'" -#: main.c:1203 +#: main.c:1205 #, fuzzy, c-format msgid "cannot use gawk builtin `%s' as variable name" msgstr "" "estensione: nome funzione interna gawk `%s' non ammesso come nome funzione" -#: main.c:1208 +#: main.c:1210 #, fuzzy, c-format msgid "cannot use function `%s' as variable name" msgstr "non posso usare nome di funzione `%s' come variabile o vettore" -#: main.c:1261 +#: main.c:1263 msgid "floating point exception" msgstr "eccezione floating point" -#: main.c:1268 +#: main.c:1270 msgid "fatal error: internal error" msgstr "errore fatale: errore interno" -#: main.c:1283 +#: main.c:1285 msgid "fatal error: internal error: segfault" msgstr "errore fatale: errore interno: segfault" -#: main.c:1295 +#: main.c:1297 msgid "fatal error: internal error: stack overflow" msgstr "errore fatale: errore interno: stack overflow" -#: main.c:1345 +#: main.c:1347 #, c-format msgid "no pre-opened fd %d" msgstr "manca 'fd' pre-aperta %d" -#: main.c:1352 +#: main.c:1354 #, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "non riesco a pre-aprire /dev/null per 'fd' %d" -#: main.c:1375 main.c:1384 -#, c-format -msgid "could not find groups: %s" -msgstr "non riesco a trovare gruppi: %s" - -#: msg.c:63 +#: msg.c:61 #, c-format msgid "cmd. line:" msgstr "linea com.:" -#: msg.c:107 +#: msg.c:105 msgid "error: " msgstr "errore: " -#: node.c:406 +#: node.c:402 msgid "backslash at end of string" msgstr "'\\' a fine stringa" -#: node.c:517 +#: node.c:479 #, c-format msgid "old awk does not support the `\\%c' escape sequence" msgstr "il vecchio awk non supporta la sequenza di escape '\\%c'" -#: node.c:568 +#: node.c:530 msgid "POSIX does not allow `\\x' escapes" msgstr "POSIX non permette escape `\\x'" -#: node.c:574 +#: node.c:536 msgid "no hex digits in `\\x' escape sequence" msgstr "niente cifre esadecimali nella sequenza di escape `\\x'" -#: node.c:596 +#: node.c:558 #, c-format msgid "" "hex escape \\x%.*s of %d characters probably not interpreted the way you " @@ -1987,12 +1892,12 @@ msgstr "" "sequenza di escape esadec.\\x%.*s di %d caratteri probabilmente non " "interpretata nel modo previsto" -#: node.c:611 +#: node.c:573 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "sequenza di escape `\\%c' considerata come semplice `%c'" -#: node.c:750 +#: node.c:712 msgid "" "Invalid multibyte data detected. There may be a mismatch between your data " "and your locale." @@ -2011,16 +1916,16 @@ msgid "%s %s `%s': could not set close-on-exec: (fcntl F_SETFD: %s)" msgstr "" "%s %s `%s': non riesco a impostare 'close-on-exec': (fcntl F_SETFD: %s)" -#: profile.c:83 +#: profile.c:69 #, c-format msgid "could not open `%s' for writing: %s" msgstr "non riesco ad aprire `%s' in scrittura: %s" -#: profile.c:85 +#: profile.c:71 msgid "sending profile to standard error" msgstr "mando profilo a 'standard error'" -#: profile.c:203 +#: profile.c:187 #, c-format msgid "" "\t# %s block(s)\n" @@ -2029,7 +1934,7 @@ msgstr "" "\t# blocco(hi) %s\n" "\n" -#: profile.c:208 +#: profile.c:192 #, c-format msgid "" "\t# Rule(s)\n" @@ -2038,17 +1943,22 @@ msgstr "" "\t# Regola(e)\n" "\n" -#: profile.c:279 +#: profile.c:266 #, c-format msgid "internal error: %s with null vname" msgstr "errore interno: %s con 'vname' nullo" -#: profile.c:952 +#: profile.c:528 +#, fuzzy +msgid "internal error: builtin with null fname" +msgstr "errore interno: %s con 'vname' nullo" + +#: profile.c:943 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "\t# profilo gawk, creato %s\n" -#: profile.c:1331 +#: profile.c:1321 #, c-format msgid "" "\n" @@ -2057,94 +1967,171 @@ msgstr "" "\n" "\t# Funzioni, listate in ordine alfabetico\n" -#: profile.c:1370 +#: profile.c:1359 #, c-format msgid "redir2str: unknown redirection type %d" msgstr "redir2str: tipo di re-direzione non noto %d" -#: re.c:572 +#: re.c:573 #, fuzzy, c-format msgid "range of the form `[%c-%c]' is locale dependent" msgstr "intervallo nella forma `[%c-%c]' dipende da 'locale'" -#: re.c:599 +#: re.c:600 #, c-format msgid "regexp component `%.*s' should probably be `[%.*s]'" msgstr "" "componente di espressione `%.*s' dovrebbe probabilmente essere `[%.*s]'" -#: regcomp.c:132 +#: regcomp.c:131 msgid "Success" msgstr "Successo" -#: regcomp.c:135 +#: regcomp.c:134 msgid "No match" msgstr "Nessuna corrispondenza" -#: regcomp.c:138 +#: regcomp.c:137 msgid "Invalid regular expression" msgstr "Espressione regolare invalida" -#: regcomp.c:141 +#: regcomp.c:140 msgid "Invalid collation character" msgstr "Carattere di ordinamento non valido" -#: regcomp.c:144 +#: regcomp.c:143 msgid "Invalid character class name" msgstr "Nome di 'classe di caratteri' non valido" -#: regcomp.c:147 +#: regcomp.c:146 msgid "Trailing backslash" msgstr "'\\' finale" -#: regcomp.c:150 +#: regcomp.c:149 msgid "Invalid back reference" msgstr "Riferimento indietro non valido" -#: regcomp.c:153 +#: regcomp.c:152 msgid "Unmatched [ or [^" msgstr "[ o [^ non chiusa" -#: regcomp.c:156 +#: regcomp.c:155 msgid "Unmatched ( or \\(" msgstr "( o \\( non chiusa" -#: regcomp.c:159 +#: regcomp.c:158 msgid "Unmatched \\{" msgstr "\\{ non chiusa" -#: regcomp.c:162 +#: regcomp.c:161 msgid "Invalid content of \\{\\}" msgstr "Contenuto di \\{\\} non valido" -#: regcomp.c:165 +#: regcomp.c:164 msgid "Invalid range end" msgstr "Fine di intervallo non valido" -#: regcomp.c:168 +#: regcomp.c:167 msgid "Memory exhausted" msgstr "Memoria esaurita" -#: regcomp.c:171 +#: regcomp.c:170 msgid "Invalid preceding regular expression" msgstr "Espressione regolare precedente invalida" -#: regcomp.c:174 +#: regcomp.c:173 msgid "Premature end of regular expression" msgstr "Fine di espressione regolare inaspettata" -#: regcomp.c:177 +#: regcomp.c:176 msgid "Regular expression too big" msgstr "Espressione regolare troppo complessa" -#: regcomp.c:180 +#: regcomp.c:179 msgid "Unmatched ) or \\)" msgstr ") o \\) non aperta" -#: regcomp.c:701 +#: regcomp.c:700 msgid "No previous regular expression" msgstr "Nessuna espressione regolare precedente" +#~ msgid "attempt to use function `%s' as an array" +#~ msgstr "tentativo di usare funzione '%s' come vettore" + +#~ msgid "reference to uninitialized element `%s[\"%.*s\"]'" +#~ msgstr "riferimento a elemento non inizializzato `%s[\"%.*s\"]'" + +#~ msgid "subscript of array `%s' is null string" +#~ msgstr "l'indice del vettore '%s' è una stringa nulla" + +#~ msgid "%s: empty (null)\n" +#~ msgstr "%s: vuoto (nullo)\n" + +#~ msgid "%s: empty (zero)\n" +#~ msgstr "%s: vuoto (zero)\n" + +#~ msgid "%s: table_size = %d, array_size = %d\n" +#~ msgstr "%s: dimensione_tabella = %d, dimensione_vettore = %d\n" + +#~ msgid "%s: is parameter\n" +#~ msgstr "%s: è parametro\n" + +#~ msgid "%s: array_ref to %s\n" +#~ msgstr "%s: riferimento_vettoriale a %s\n" + +#~ msgid "use of non-array as array" +#~ msgstr "uso di non-vettore come vettore" + +#~ msgid "can't use function name `%s' as variable or array" +#~ msgstr "non posso usare nome di funzione `%s' come variabile o vettore" + +#, fuzzy +#~ msgid "attempt to use array `%s[\"%.*s\"]' in a scalar context" +#~ msgstr "tentativo di usare vettore `%s' in un contesto scalare" + +#~ msgid "assignment used in conditional context" +#~ msgstr "assegnamento usato nel contesto di un test condizionale" + +#~ msgid "statement has no effect" +#~ msgstr "istruzione che non fa nulla" + +#~ msgid "" +#~ "for loop: array `%s' changed size from %ld to %ld during loop execution" +#~ msgstr "" +#~ "ciclo for: vettore `%s' ha cambiato dimensione da %ld a %ld durante " +#~ "l'esecuzione del ciclo" + +#~ msgid "function called indirectly through `%s' does not exist" +#~ msgstr "la funzione chiamata indirettamente tramite `%s' non esiste" + +#~ msgid "function `%s' not defined" +#~ msgstr "funzione `%s' non definita" + +#~ msgid "non-redirected `getline' invalid inside `%s' rule" +#~ msgstr "`getline' non-diretta indefinita dentro regola '%s'" + +#~ msgid "error reading input file `%s': %s" +#~ msgstr "errore leggendo file di input `%s': %s" + +#~ msgid "`nextfile' cannot be called from a `%s' rule" +#~ msgstr "`nextfile' non può essere chiamato da una regola `%s'" + +#, fuzzy +#~ msgid "`exit' cannot be called in the current context" +#~ msgstr "`next' non può essere chiamato da una regola `%s'" + +#~ msgid "`next' cannot be called from a `%s' rule" +#~ msgstr "`next' non può essere chiamato da una regola `%s'" + +#~ msgid "Sorry, don't know how to interpret `%s'" +#~ msgstr "Spiacente, non so come interpretare `%s'" + +#~ msgid "\t-R file\t\t\t--command=file\n" +#~ msgstr "\t-R file\t\t\t--command=file\n" + +#~ msgid "could not find groups: %s" +#~ msgstr "non riesco a trovare gruppi: %s" + #~ msgid "assignment is not allowed to result of builtin function" #~ msgstr "assegnamento non permesso al risultato di una funzione interna" @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: gawk 4.0.0\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" -"POT-Creation-Date: 2011-11-14 21:46+0200\n" +"POT-Creation-Date: 2012-04-08 12:18+0300\n" "PO-Revision-Date: 2011-07-17 08:28+0900\n" "Last-Translator: Yasuaki Taniguchi <yasuakit@gmail.com>\n" "Language-Team: Japanese <translation-team-ja@lists.sourceforge.net>\n" @@ -18,499 +18,456 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: array.c:140 +#: array.c:267 #, c-format msgid "from %s" msgstr "%s ã‹ã‚‰" -#: array.c:248 +#: array.c:367 msgid "attempt to use a scalar value as array" msgstr "スカラー値をé…列ã¨ã—ã¦ä½¿ç”¨ã™ã‚‹è©¦ã¿ã§ã™" -#: array.c:251 -#, c-format -msgid "attempt to use function `%s' as an array" -msgstr "関数 `%s' ã‚’é…列ã¨ã—ã¦ä½¿ç”¨ã™ã‚‹è©¦ã¿ã§ã™" - -#: array.c:254 +#: array.c:369 #, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "スカラー仮引数 `%s' ã‚’é…列ã¨ã—ã¦ä½¿ç”¨ã™ã‚‹è©¦ã¿ã§ã™" -#: array.c:257 +#: array.c:372 #, c-format msgid "attempt to use scalar `%s' as an array" msgstr "スカラー `%s' ã‚’é…列ã¨ã—ã¦ä½¿ç”¨ã™ã‚‹è©¦ã¿ã§ã™" -#: array.c:302 array.c:707 builtin.c:84 builtin.c:1384 builtin.c:1426 -#: builtin.c:1439 builtin.c:1858 builtin.c:1870 eval.c:1135 eval.c:1139 -#: eval.c:1495 eval.c:1812 +#: array.c:419 array.c:585 builtin.c:85 builtin.c:1389 builtin.c:1431 +#: builtin.c:1444 builtin.c:1862 builtin.c:1874 eval.c:1096 eval.c:1100 +#: eval.c:1500 #, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "スカラーコンテã‚ストã§é…列 `%s' を使用ã™ã‚‹è©¦ã¿ã§ã™" -#: array.c:513 -#, c-format -msgid "reference to uninitialized element `%s[\"%.*s\"]'" -msgstr "åˆæœŸåŒ–ã•れã¦ã„ãªã„è¦ç´ `%s[\"%.*s\"]' ã¸ã®å‚ç…§ã§ã™" - -#: array.c:519 -#, c-format -msgid "subscript of array `%s' is null string" -msgstr "é…列 `%s' ã®æ·»å—㌠NULL æ–‡å—列ã§ã™" - -#: array.c:723 +#: array.c:592 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "delete: é…列 `%2$s' 内ã«ã‚¤ãƒ³ãƒ‡ãƒƒã‚¯ã‚¹ `%1$s' ãŒã‚りã¾ã›ã‚“" -#: array.c:734 eval.c:1865 +#: array.c:606 #, c-format msgid "attempt to use scalar `%s[\"%.*s\"]' as an array" msgstr "スカラー `%s[\"%.*s\"]' ã‚’é…列ã¨ã—ã¦ä½¿ç”¨ã™ã‚‹è©¦ã¿ã§ã™" -#: array.c:910 -#, c-format -msgid "%s: empty (null)\n" -msgstr "%s: 空 (null)\n" - -#: array.c:915 -#, c-format -msgid "%s: empty (zero)\n" -msgstr "%s: 空 (zero)\n" - -#: array.c:919 -#, c-format -msgid "%s: table_size = %d, array_size = %d\n" -msgstr "%s: テーブルサイズ (table_size) = %d, é…列サイズ (array_size) = %d\n" - -#: array.c:954 -#, c-format -msgid "%s: is parameter\n" -msgstr "%s: 仮引数ã§ã™\n" - -#: array.c:958 -#, c-format -msgid "%s: array_ref to %s\n" -msgstr "%s: %s ã¸ã®é…列å‚ç…§ (array_ref) ã§ã™\n" - -#: array.c:963 -msgid "adump: argument not an array" +#: array.c:794 +#, fuzzy +msgid "adump: first argument not an array" msgstr "adump: 引数ãŒé…列ã§ã¯ã‚りã¾ã›ã‚“" -#: array.c:1086 +#: array.c:833 msgid "asort: second argument not an array" msgstr "asort: 第二引数ãŒé…列ã§ã¯ã‚りã¾ã›ã‚“" -#: array.c:1087 +#: array.c:834 msgid "asorti: second argument not an array" msgstr "asorti: 第二引数ãŒé…列ã§ã¯ã‚りã¾ã›ã‚“" -#: array.c:1094 +#: array.c:841 msgid "asort: first argument not an array" msgstr "asort: 第一引数ãŒé…列ã§ã¯ã‚りã¾ã›ã‚“" -#: array.c:1095 +#: array.c:842 msgid "asorti: first argument not an array" msgstr "asorti: 第一引数ãŒé…列ã§ã¯ã‚りã¾ã›ã‚“" -#: array.c:1102 +#: array.c:849 msgid "asort: cannot use a subarray of first arg for second arg" msgstr "asort: 第一引数ã®éƒ¨åˆ†é…列を第二引数用ã«ä½¿ç”¨ã™ã‚‹ã“ã¨ã¯å‡ºæ¥ã¾ã›ã‚“" -#: array.c:1103 +#: array.c:850 msgid "asorti: cannot use a subarray of first arg for second arg" msgstr "asorti: 第一引数ã®éƒ¨åˆ†é…列を第二引数用ã«ä½¿ç”¨ã™ã‚‹ã“ã¨ã¯å‡ºæ¥ã¾ã›ã‚“" -#: array.c:1108 +#: array.c:855 msgid "asort: cannot use a subarray of second arg for first arg" msgstr "asort: 第二引数ã®éƒ¨åˆ†é…列を第一引数用ã«ä½¿ç”¨ã™ã‚‹ã“ã¨ã¯å‡ºæ¥ã¾ã›ã‚“" -#: array.c:1109 +#: array.c:856 msgid "asorti: cannot use a subarray of second arg for first arg" msgstr "asorti: 第二引数ã®éƒ¨åˆ†é…列を第一引数用ã«ä½¿ç”¨ã™ã‚‹ã“ã¨ã¯å‡ºæ¥ã¾ã›ã‚“" -#: array.c:1659 +#: array.c:1329 #, c-format msgid "`%s' is invalid as a function name" msgstr "`%s' ã¯é–¢æ•°åã¨ã—ã¦ã¯ç„¡åйã§ã™" -#: array.c:1663 +#: array.c:1333 #, c-format msgid "sort comparison function `%s' is not defined" msgstr "ソート比較関数 `%s' ãŒå®šç¾©ã•れã¦ã„ã¾ã›ã‚“" -#: awkgram.y:249 +#: awkgram.y:223 #, c-format msgid "%s blocks must have an action part" msgstr "%s ブãƒãƒƒã‚¯ã«ã¯ã‚¢ã‚¯ã‚·ãƒ§ãƒ³éƒ¨ãŒå¿…é ˆã§ã™" -#: awkgram.y:252 +#: awkgram.y:226 msgid "each rule must have a pattern or an action part" msgstr "å„ルールã«ã¯ãƒ‘ターンã¾ãŸã¯ã‚¢ã‚¯ã‚·ãƒ§ãƒ³éƒ¨ãŒå¿…é ˆã§ã™ã€‚" -#: awkgram.y:323 awkgram.y:334 +#: awkgram.y:295 awkgram.y:306 msgid "old awk does not support multiple `BEGIN' or `END' rules" msgstr "å¤ã„ awk ã¯è¤‡æ•°ã® `BEGIN' ã¾ãŸã¯ `END' ルールをサãƒãƒ¼ãƒˆã—ã¾ã›ã‚“" -#: awkgram.y:371 +#: awkgram.y:343 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "`%s' ã¯çµ„è¾¼ã¿é–¢æ•°ã§ã™ã€‚å†å®šç¾©ã§ãã¾ã›ã‚“" -#: awkgram.y:432 +#: awkgram.y:389 msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "æ£è¦è¡¨ç¾å®šæ•° `//' 㯠C++コメントã«ä¼¼ã¦ã„ã¾ã™ãŒã€é•ã„ã¾ã™ã€‚" -#: awkgram.y:436 +#: awkgram.y:393 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "æ£è¦è¡¨ç¾å®šæ•° `/%s/' 㯠C コメントã«ä¼¼ã¦ã„ã¾ã™ãŒã€ç•°ãªã‚Šã¾ã™" -#: awkgram.y:528 +#: awkgram.y:485 #, c-format msgid "duplicate case values in switch body: %s" msgstr "switch æ–‡ã®ä¸ã§é‡è¤‡ã—㟠case 値ãŒä½¿ç”¨ã•れã¦ã„ã¾ã™: %s" -#: awkgram.y:549 +#: awkgram.y:506 msgid "duplicate `default' detected in switch body" msgstr "switch æ–‡ã®ä¸ã§é‡è¤‡ã—㟠`default' ãŒæ¤œå‡ºã•れã¾ã—ãŸ" -#: awkgram.y:809 +#: awkgram.y:766 msgid "`break' is not allowed outside a loop or switch" msgstr "`break' ã¯ãƒ«ãƒ¼ãƒ—ã¾ãŸã¯ switch ã®å¤–ã§ã¯è¨±å¯ã•れã¦ã„ã¾ã›ã‚“" -#: awkgram.y:818 +#: awkgram.y:775 msgid "`continue' is not allowed outside a loop" msgstr "`continue' ã¯ãƒ«ãƒ¼ãƒ—ã®å¤–ã§ã¯è¨±å¯ã•れã¦ã„ã¾ã›ã‚“" -#: awkgram.y:828 +#: awkgram.y:785 #, c-format msgid "`next' used in %s action" msgstr "%s アクション内㧠`next' ãŒä½¿ç”¨ã•れã¾ã—ãŸ" -#: awkgram.y:836 +#: awkgram.y:793 msgid "`nextfile' is a gawk extension" msgstr "`nextfile' 㯠gawk æ‹¡å¼µã§ã™" -#: awkgram.y:841 +#: awkgram.y:798 #, c-format msgid "`nextfile' used in %s action" msgstr "`nextfile' ㌠%s アクション内ã§ä½¿ç”¨ã•れã¾ã—ãŸ" -#: awkgram.y:865 +#: awkgram.y:822 msgid "`return' used outside function context" msgstr "`return' ãŒé–¢æ•°å®šç¾©æ–‡ã®å¤–ã§ä½¿ã‚れã¾ã—ãŸ" -#: awkgram.y:925 +#: awkgram.y:892 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "" "BEGIN ã¾ãŸã¯ END ルール内ã®å¼•æ•°ã®ç„¡ã„ `print' 㯠`print \"\"' ã ã¨æ€ã‚れã¾ã™" -#: awkgram.y:995 awkgram.y:999 awkgram.y:1023 +#: awkgram.y:962 awkgram.y:966 awkgram.y:990 msgid "`delete array' is a gawk extension" msgstr "`delete array' 㯠gawk æ‹¡å¼µã§ã™" -#: awkgram.y:1019 +#: awkgram.y:986 msgid "`delete(array)' is a non-portable tawk extension" msgstr "`delete(array)' ã¯ç§»æ¤æ€§ã®ç„¡ã„ tawk æ‹¡å¼µã§ã™" -#: awkgram.y:1135 +#: awkgram.y:1102 msgid "multistage two-way pipelines don't work" msgstr "多段階ã§åŒæ–¹å‘パイプを利用ã—ãŸå¼ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“" -#: awkgram.y:1238 +#: awkgram.y:1205 msgid "regular expression on right of assignment" msgstr "æ£è¦è¡¨ç¾ãŒä»£å…¥å¼ã®å³è¾ºã«ä½¿ç”¨ã•れã¦ã„ã¾ã™" -#: awkgram.y:1249 +#: awkgram.y:1216 msgid "regular expression on left of `~' or `!~' operator" msgstr "`~' ã‚„ `!~' 演算åã®å·¦è¾ºã«æ£è¦è¡¨ç¾ãŒä½¿ç”¨ã•れã¦ã„ã¾ã™" -#: awkgram.y:1265 awkgram.y:1419 +#: awkgram.y:1232 awkgram.y:1383 msgid "old awk does not support the keyword `in' except after `for'" msgstr "å¤ã„ awk ã§ã¯ `in' 予約語㯠`for' ã®å¾Œã‚’除ãサãƒãƒ¼ãƒˆã—ã¾ã›ã‚“" -#: awkgram.y:1275 +#: awkgram.y:1242 msgid "regular expression on right of comparison" msgstr "比較å¼ã®å³è¾ºã«æ£è¦è¡¨ç¾ãŒä½¿ç”¨ã•れã¦ã„ã¾ã™ã€‚" -#: awkgram.y:1394 +#: awkgram.y:1358 #, c-format msgid "`getline var' invalid inside `%s' rule" msgstr "`%s' ルールã®å†…部ã§ã¯ `getline var' ã¯ç„¡åйã§ã™" -#: awkgram.y:1397 eval.c:2504 +#: awkgram.y:1361 #, c-format msgid "`getline' invalid inside `%s' rule" msgstr "`%s' ルールã®å†…部ã§ã¯ `getline' ã¯ç„¡åйã§ã™" -#: awkgram.y:1402 +#: awkgram.y:1366 msgid "non-redirected `getline' undefined inside END action" msgstr "リダイレクトã•れã¦ã„ãªã„ `getline' 㯠END アクションã§ã¯æœªå®šç¾©ã§ã™ã€‚" -#: awkgram.y:1421 +#: awkgram.y:1385 msgid "old awk does not support multidimensional arrays" msgstr "å¤ã„ awk ã¯å¤šæ¬¡å…ƒé…列をサãƒãƒ¼ãƒˆã—ã¾ã›ã‚“" -#: awkgram.y:1517 +#: awkgram.y:1481 msgid "call of `length' without parentheses is not portable" msgstr "å°æ‹¬å¼§ãŒç„¡ã„ `length' ã¯ç§»æ¤æ€§ãŒã‚りã¾ã›ã‚“" -#: awkgram.y:1580 +#: awkgram.y:1545 msgid "indirect function calls are a gawk extension" msgstr "間接関数呼ã³å‡ºã—㯠gawk æ‹¡å¼µã§ã™" -#: awkgram.y:1593 +#: awkgram.y:1558 #, c-format msgid "can not use special variable `%s' for indirect function call" msgstr "特別ãªå¤‰æ•° `%s' ã¯é–“接関数呼ã³å‡ºã—用ã«ã¯ä½¿ç”¨å‡ºæ¥ã¾ã›ã‚“" -#: awkgram.y:1671 +#: awkgram.y:1636 msgid "invalid subscript expression" msgstr "æ·»å—ã®å¼ãŒç„¡åйã§ã™" -#: awkgram.y:1711 -msgid "use of non-array as array" -msgstr "é…列ã§ãªã„ã‚‚ã®ã‚’é…列ã¨ã—ã¦ä½¿ç”¨ã—ã¦ã„ã¾ã™" - -#: awkgram.y:1975 awkgram.y:1995 msg.c:98 +#: awkgram.y:1936 awkgram.y:1956 msg.c:96 msgid "warning: " msgstr "è¦å‘Š: " -#: awkgram.y:1993 msg.c:130 +#: awkgram.y:1954 msg.c:128 msgid "fatal: " msgstr "致命的: " -#: awkgram.y:2043 +#: awkgram.y:2004 msgid "unexpected newline or end of string" msgstr "予期ã—ãªã„改行ã¾ãŸã¯æ–‡å—列終端ã§ã™" -#: awkgram.y:2300 awkgram.y:2358 awkgram.y:2542 +#: awkgram.y:2269 awkgram.y:2327 awkgram.y:2515 #, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "ソースファイル `%s' ã‚’èªã¿è¾¼ã¿ç”¨ã«é–‹ã‘ã¾ã›ã‚“ (%s)" -#: awkgram.y:2301 awkgram.y:2359 builtin.c:122 +#: awkgram.y:2270 awkgram.y:2328 builtin.c:124 msgid "reason unknown" msgstr "åŽŸå› ä¸æ˜Ž" -#: awkgram.y:2317 +#: awkgram.y:2286 #, c-format msgid "already included source file `%s'" msgstr "ソースファイル `%s' ã¯æ—¢ã«èªã¿è¾¼ã¾ã‚Œã¦ã„ã¾ã™" -#: awkgram.y:2343 +#: awkgram.y:2312 msgid "@include is a gawk extension" msgstr "@include 㯠gawk æ‹¡å¼µã§ã™" -#: awkgram.y:2349 +#: awkgram.y:2318 msgid "empty filename after @include" msgstr "@include ã®å¾Œã«ç©ºã®ãƒ•ァイルåãŒã‚りã¾ã™" -#: awkgram.y:2494 +#: awkgram.y:2467 msgid "empty program text on command line" msgstr "コマンド行ã®ãƒ—ãƒã‚°ãƒ©ãƒ 表記ãŒç©ºã§ã™" -#: awkgram.y:2609 +#: awkgram.y:2582 #, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "ソースファイル `%s' ã‚’èªã¿è¾¼ã‚ã¾ã›ã‚“ (%s)" -#: awkgram.y:2620 +#: awkgram.y:2593 #, c-format msgid "source file `%s' is empty" msgstr "ソースファイル `%s' ã¯ç©ºã§ã™" -#: awkgram.y:2805 +#: awkgram.y:2770 msgid "source file does not end in newline" msgstr "ã‚½ãƒ¼ã‚¹ãƒ•ã‚¡ã‚¤ãƒ«ãŒæ”¹è¡Œã§çµ‚ã£ã¦ã„ã¾ã›ã‚“" -#: awkgram.y:2882 +#: awkgram.y:2874 msgid "unterminated regexp ends with `\\' at end of file" msgstr "終端ã•れã¦ã„ãªã„æ£è¦è¡¨ç¾ãŒãƒ•ァイル最後㮠`\\' ã§çµ‚ã£ã¦ã„ã¾ã™ã€‚" -#: awkgram.y:2906 +#: awkgram.y:2898 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "%s: %d: tawk ã®æ£è¦è¡¨ç¾ä¿®é£¾å `/.../%c' 㯠gawk ã§ä½¿ç”¨ã§ãã¾ã›ã‚“" -#: awkgram.y:2910 +#: awkgram.y:2902 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "tawk ã®æ£è¦è¡¨ç¾ä¿®é£¾å `/.../%c' 㯠gawk ã§ä½¿ç”¨ã§ãã¾ã›ã‚“" -#: awkgram.y:2917 +#: awkgram.y:2909 msgid "unterminated regexp" msgstr "æ£è¦è¡¨ç¾ãŒçµ‚端ã•れã¦ã„ã¾ã›ã‚“" -#: awkgram.y:2921 +#: awkgram.y:2913 msgid "unterminated regexp at end of file" msgstr "ファイルã®ä¸ã§æ£è¦è¡¨ç¾ãŒçµ‚端ã•れã¦ã„ã¾ã›ã‚“" -#: awkgram.y:2980 +#: awkgram.y:2972 msgid "use of `\\ #...' line continuation is not portable" msgstr "`\\ #...' å½¢å¼ã®è¡Œç¶™ç¶šã¯ç§»æ¤æ€§ãŒã‚りã¾ã›ã‚“" -#: awkgram.y:2996 +#: awkgram.y:2988 msgid "backslash not last character on line" msgstr "ãƒãƒƒã‚¯ã‚¹ãƒ©ãƒƒã‚·ãƒ¥ãŒè¡Œæœ€å¾Œã®æ–‡å—ã«ãªã£ã¦ã„ã¾ã›ã‚“。" -#: awkgram.y:3057 +#: awkgram.y:3049 msgid "POSIX does not allow operator `**='" msgstr "POSIX ã§ã¯æ¼”ç®—å `**=' ã¯è¨±å¯ã•れã¦ã„ã¾ã›ã‚“" -#: awkgram.y:3059 +#: awkgram.y:3051 msgid "old awk does not support operator `**='" msgstr "å¤ã„ awk ã¯æ¼”ç®—å `**=' をサãƒãƒ¼ãƒˆã—ã¾ã›ã‚“" -#: awkgram.y:3068 +#: awkgram.y:3060 msgid "POSIX does not allow operator `**'" msgstr "POSIX ã§ã¯æ¼”ç®—å `**' ã¯è¨±å¯ã•れã¦ã„ã¾ã›ã‚“" -#: awkgram.y:3070 +#: awkgram.y:3062 msgid "old awk does not support operator `**'" msgstr "å¤ã„ awk ã¯æ¼”ç®—å `**' をサãƒãƒ¼ãƒˆã—ã¾ã›ã‚“" -#: awkgram.y:3105 +#: awkgram.y:3097 msgid "operator `^=' is not supported in old awk" msgstr "å¤ã„ awk ã¯æ¼”ç®—å `^=' をサãƒãƒ¼ãƒˆã—ã¾ã›ã‚“" -#: awkgram.y:3113 +#: awkgram.y:3105 msgid "operator `^' is not supported in old awk" msgstr "å¤ã„ awk ã¯æ¼”ç®—å `^' をサãƒãƒ¼ãƒˆã—ã¾ã›ã‚“" -#: awkgram.y:3206 awkgram.y:3222 +#: awkgram.y:3198 awkgram.y:3214 msgid "unterminated string" msgstr "æ–‡å—列ãŒçµ‚端ã•れã¦ã„ã¾ã›ã‚“" -#: awkgram.y:3418 +#: awkgram.y:3410 #, c-format msgid "invalid char '%c' in expression" msgstr "å¼å†…ã«ç„¡åŠ¹ãªæ–‡å— '%c' ãŒã‚りã¾ã™" -#: awkgram.y:3465 +#: awkgram.y:3457 #, c-format msgid "`%s' is a gawk extension" msgstr "`%s' 㯠gawk æ‹¡å¼µã§ã™" -#: awkgram.y:3470 +#: awkgram.y:3462 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "`%s' ã¯ãƒ™ãƒ«ç ”究所ã«ã‚ˆã‚‹æ‹¡å¼µã§ã™" -#: awkgram.y:3475 +#: awkgram.y:3467 #, c-format msgid "POSIX does not allow `%s'" msgstr "POSIX ã§ã¯ `%s' ã¯è¨±å¯ã•れã¦ã„ã¾ã›ã‚“" -#: awkgram.y:3483 +#: awkgram.y:3475 #, c-format msgid "`%s' is not supported in old awk" msgstr "å¤ã„ awk 㯠`%s' をサãƒãƒ¼ãƒˆã—ã¾ã›ã‚“" -#: awkgram.y:3550 +#: awkgram.y:3542 msgid "`goto' considered harmful!\n" msgstr "`goto' ã¯æœ‰å®³ã ã¨è¦‹ãªã•れã¦ã„ã¾ã™!\n" -#: awkgram.y:3601 +#: awkgram.y:3576 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "%d 㯠%s 用ã®å¼•æ•°ã®æ•°ã¨ã—ã¦ã¯ç„¡åйã§ã™" -#: awkgram.y:3636 +#: awkgram.y:3611 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "%s: æ–‡å—åˆ—ãƒªãƒ†ãƒ©ãƒ«ã‚’ç½®ãæ›ãˆæœ€å¾Œã®å¼•æ•°ã«ä½¿ç”¨ã™ã‚‹ã¨åŠ¹æžœãŒã‚りã¾ã›ã‚“" -#: awkgram.y:3641 +#: awkgram.y:3616 #, c-format msgid "%s third parameter is not a changeable object" msgstr "%s 第三仮引数ã¯å¯å¤‰ã‚ªãƒ–ジェクトã§ã¯ã‚りã¾ã›ã‚“" -#: awkgram.y:3714 awkgram.y:3717 +#: awkgram.y:3689 awkgram.y:3692 msgid "match: third argument is a gawk extension" msgstr "match: 第三引数㯠gawk æ‹¡å¼µã§ã™" -#: awkgram.y:3771 awkgram.y:3774 +#: awkgram.y:3746 awkgram.y:3749 msgid "close: second argument is a gawk extension" msgstr "close: 第二引数㯠gawk æ‹¡å¼µã§ã™" -#: awkgram.y:3786 +#: awkgram.y:3761 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "dcgettext(_\"...\")ã®ä½¿ç”¨æ³•ãŒé–“é•ã£ã¦ã„ã¾ã™: å…ˆé ã®ã‚¢ãƒ³ãƒ€ãƒ¼ã‚¹ã‚³ã‚¢(_)を削除ã—" "ã¦ãã ã•ã„" -#: awkgram.y:3801 +#: awkgram.y:3776 msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "dcngettext(_\"...\")ã®ä½¿ç”¨æ³•ãŒé–“é•ã£ã¦ã„ã¾ã™: å…ˆé ã®ã‚¢ãƒ³ãƒ€ãƒ¼ã‚¹ã‚³ã‚¢(_)を削除ã—" "ã¦ãã ã•ã„" -#: awkgram.y:3893 -#, c-format -msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" -msgstr "関数 `%s': 仮引数 #%d, `%s' ãŒä»®å¼•æ•° #%d ã¨é‡è¤‡ã—ã¦ã„ã¾ã™" - -#: awkgram.y:3935 +#: awkgram.y:3842 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "関数 `%s': 仮引数 `%s' ãŒå¤§åŸŸå¤‰æ•°ã‚’覆ã„éš ã—ã¦ã„ã¾ã™" -#: awkgram.y:4093 +#: awkgram.y:3885 #, c-format msgid "could not open `%s' for writing (%s)" msgstr "`%s' を書込ã¿ç”¨ã«é–‹ã‘ã¾ã›ã‚“ã§ã—㟠(%s)" -#: awkgram.y:4094 +#: awkgram.y:3886 msgid "sending variable list to standard error" msgstr "変数リストを標準エラーã«é€ã£ã¦ã„ã¾ã™" -#: awkgram.y:4100 +#: awkgram.y:3894 #, c-format msgid "%s: close failed (%s)" msgstr "%s: é–‰ã˜ã‚‹ã®ã«å¤±æ•—ã—ã¾ã—㟠(%s)" -#: awkgram.y:4152 +#: awkgram.y:3919 msgid "shadow_funcs() called twice!" msgstr "shadow_funcs() を二回呼ã³å‡ºã—ã¦ã„ã¾ã™!" -#: awkgram.y:4158 +#: awkgram.y:3927 msgid "there were shadowed variables." msgstr "覆ã„éš ã•れãŸå¤‰æ•°ãŒã‚りã¾ã—ãŸ" -#: awkgram.y:4188 +#: awkgram.y:3998 +#, c-format +msgid "function name `%s' previously defined" +msgstr "関数å `%s' ã¯å‰ã«å®šç¾©ã•れã¦ã„ã¾ã™" + +#: awkgram.y:4044 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "関数 `%s': 関数åを仮引数åã¨ã—ã¦ä½¿ç”¨å‡ºæ¥ã¾ã›ã‚“" -#: awkgram.y:4192 +#: awkgram.y:4047 #, c-format msgid "function `%s': can't use special variable `%s' as a function parameter" msgstr "関数 `%s': 特別ãªå¤‰æ•° `%s' ã¯é–¢æ•°ã®ä»®å¼•æ•°ã¨ã—ã¦ä½¿ç”¨å‡ºæ¥ã¾ã›ã‚“" -#: awkgram.y:4208 +#: awkgram.y:4055 #, c-format -msgid "function name `%s' previously defined" -msgstr "関数å `%s' ã¯å‰ã«å®šç¾©ã•れã¦ã„ã¾ã™" +msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" +msgstr "関数 `%s': 仮引数 #%d, `%s' ãŒä»®å¼•æ•° #%d ã¨é‡è¤‡ã—ã¦ã„ã¾ã™" -#: awkgram.y:4376 awkgram.y:4382 +#: awkgram.y:4134 awkgram.y:4140 #, c-format msgid "function `%s' called but never defined" msgstr "未定義ã®é–¢æ•° `%s' を呼ã³å‡ºã—ã¾ã—ãŸ" -#: awkgram.y:4385 +#: awkgram.y:4143 #, c-format msgid "function `%s' defined but never called directly" msgstr "関数 `%s' ã¯å®šç¾©ã•れã¦ã„ã¾ã™ãŒã€ä¸€åº¦ã‚‚直接呼ã³å‡ºã•れã¦ã„ã¾ã›ã‚“" -#: awkgram.y:4417 +#: awkgram.y:4175 #, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "仮引数 #%d ç”¨ã®æ£è¦è¡¨ç¾å®šæ•°ã¯çœŸå½å€¤ã‚’出力ã—ã¾ã™" -#: awkgram.y:4526 +#: awkgram.y:4221 #, c-format msgid "" "function `%s' called with space between name and `(',\n" @@ -519,230 +476,230 @@ msgstr "" "関数å㨠`(' ã®é–“ã«ã‚¹ãƒšãƒ¼ã‚¹ã‚’入れã¦é–¢æ•° `%s' を呼ã³å‡ºã—ã¦ã„ã¾ã™ã€‚\n" "ã¾ãŸã¯ã€å¤‰æ•°ã‹é…列ã¨ã—ã¦ä½¿ã‚れã¦ã„ã¾ã™ã€‚" -#: awkgram.y:4773 eval.c:2056 +#: awkgram.y:4429 msgid "division by zero attempted" msgstr "ゼãƒã«ã‚ˆã‚‹é™¤ç®—ãŒè©¦ã¿ã‚‰ã‚Œã¾ã—ãŸ" -#: awkgram.y:4782 eval.c:2072 +#: awkgram.y:4438 #, c-format msgid "division by zero attempted in `%%'" msgstr "`%%' 内ã§ã‚¼ãƒã«ã‚ˆã‚‹é™¤ç®—ãŒè©¦ã¿ã‚‰ã‚Œã¾ã—ãŸ" -#: builtin.c:120 +#: builtin.c:122 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "%s ã‹ã‚‰ \"%s\" ã¸å‡ºåŠ›ã§ãã¾ã›ã‚“ (%s)。" -#: builtin.c:121 +#: builtin.c:123 msgid "standard output" msgstr "標準出力" -#: builtin.c:135 +#: builtin.c:137 msgid "exp: received non-numeric argument" msgstr "exp: å¼•æ•°ãŒæ•°å€¤ã§ã¯ã‚りã¾ã›ã‚“" -#: builtin.c:141 +#: builtin.c:143 #, c-format msgid "exp: argument %g is out of range" msgstr "exp: 引数 %g ãŒç¯„囲外ã§ã™" -#: builtin.c:200 +#: builtin.c:202 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "" "fflush: flush ã§ãã¾ã›ã‚“: パイプ `%s' ã¯èªã¿è¾¼ã¿ç”¨ã«é–‹ã‹ã‚Œã¦ã„ã¾ã™ã€‚書ãè¾¼ã¿" "用ã§ã¯ã‚りã¾ã›ã‚“" -#: builtin.c:203 +#: builtin.c:205 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "" "fflush: flush ã§ãã¾ã›ã‚“: ファイル `%s' ã¯èªã¿è¾¼ã¿ç”¨ã«é–‹ã‹ã‚Œã¦ã„ã¾ã™ã€‚書ãè¾¼" "ã¿ç”¨ã§ã¯ã‚りã¾ã›ã‚“" -#: builtin.c:215 +#: builtin.c:217 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "fflush: `%s' ãŒé–‹ã‹ã‚ŒãŸãƒ•ァイルã€ãƒ‘イプã€ãƒ—ãƒã‚»ã‚¹å…±æœ‰ã§ã¯ã‚りã¾ã›ã‚“" -#: builtin.c:333 +#: builtin.c:335 msgid "index: received non-string first argument" msgstr "index: æ–‡å—列ã§ã¯ç„¡ã„第一引数をå—ã‘å–りã¾ã—ãŸ" -#: builtin.c:335 +#: builtin.c:337 msgid "index: received non-string second argument" msgstr "index: æ–‡å—列ã§ã¯ç„¡ã„第二引数をå—ã‘å–りã¾ã—ãŸ" -#: builtin.c:457 +#: builtin.c:461 msgid "int: received non-numeric argument" msgstr "int: 数値ã§ã¯ç„¡ã„引数をå—ã‘å–りã¾ã—ãŸ" -#: builtin.c:493 +#: builtin.c:497 msgid "length: received array argument" msgstr "length: é…列引数をå—ã‘å–りã¾ã—ãŸ" -#: builtin.c:496 +#: builtin.c:500 msgid "`length(array)' is a gawk extension" msgstr "`length(array)' 㯠gawk æ‹¡å¼µã§ã™" -#: builtin.c:504 +#: builtin.c:508 msgid "length: received non-string argument" msgstr "length: æ–‡å—列ã§ã¯ç„¡ã„引数をå—ã‘å–りã¾ã—ãŸ" -#: builtin.c:535 +#: builtin.c:539 msgid "log: received non-numeric argument" msgstr "log: 数値ã§ã¯ç„¡ã„引数をå—ã‘å–りã¾ã—ãŸ" -#: builtin.c:538 +#: builtin.c:542 #, c-format msgid "log: received negative argument %g" msgstr "log: è² ã®å¼•æ•° %g ã‚’å—ã‘å–りã¾ã—ãŸ" -#: builtin.c:694 builtin.c:699 +#: builtin.c:698 builtin.c:703 msgid "fatal: must use `count$' on all formats or none" msgstr "" "致命的: `count$’ ã¯å…¨ã¦ã®æ›¸å¼ä½¿ç”¨ã™ã‚‹ã€ã¾ãŸã¯å…¨ã¦ã«ä½¿ç”¨ã—ãªã„ã®ã„ãšã‚Œã‹ã§ãªã‘" "れã°ã„ã‘ã¾ã›ã‚“" -#: builtin.c:761 +#: builtin.c:766 #, c-format msgid "field width is ignored for `%%' specifier" msgstr "`%%' 指定用ã®ãƒ•ィールド幅ã¯ç„¡è¦–ã•れã¾ã™" -#: builtin.c:763 +#: builtin.c:768 #, c-format msgid "precision is ignored for `%%' specifier" msgstr "`%%' 指定用ã®ãƒ•ィールド幅ã¯ç„¡è¦–ã•れã¾ã™" -#: builtin.c:765 +#: builtin.c:770 #, c-format msgid "field width and precision are ignored for `%%' specifier" msgstr "`%%' 指定用ã®ãƒ•ィールド幅ãŠã‚ˆã³ç²¾åº¦ã¯ç„¡è¦–ã•れã¾ã™" -#: builtin.c:816 +#: builtin.c:821 msgid "fatal: `$' is not permitted in awk formats" msgstr "致命的: `$' 㯠awk å½¢å¼å†…ã§ã¯è¨±å¯ã•れã¦ã„ã¾ã›ã‚“" -#: builtin.c:825 +#: builtin.c:830 msgid "fatal: arg count with `$' must be > 0" msgstr "致命的: `$' ã§æŒ‡å®šã™ã‚‹å¼•æ•°ã®ç•ªå·ã¯æ£ã§ãªã‘れã°ã„ã‘ã¾ã›ã‚“" -#: builtin.c:829 +#: builtin.c:834 #, c-format msgid "fatal: arg count %ld greater than total number of supplied arguments" msgstr "致命的: 引数ã®ç•ªå· %ld ã¯å¼•æ•°ã¨ã—ã¦ä¸Žãˆã‚‰ã‚ŒãŸæ•°ã‚ˆã‚Šå¤§ãã„ã§ã™" -#: builtin.c:833 +#: builtin.c:838 msgid "fatal: `$' not permitted after period in format" msgstr "致命的: `$' ã¯æ›¸å¼æŒ‡å®šå†…ã®ãƒ”リオド `.' ã®å¾Œã«ä½¿ç”¨ã§ãã¾ã›ã‚“" -#: builtin.c:849 +#: builtin.c:854 msgid "fatal: no `$' supplied for positional field width or precision" msgstr "致命的: フィールド幅ã€ã¾ãŸã¯ç²¾åº¦ã®æŒ‡å®šåã« `$' ãŒä¸Žãˆã‚‰ã‚Œã¦ã„ã¾ã›ã‚“" -#: builtin.c:920 +#: builtin.c:925 msgid "`l' is meaningless in awk formats; ignored" msgstr "awk ã®æ›¸å¼æŒ‡å®šã§ã¯ `l' ã¯ç„¡æ„味ã§ã™ã€‚無視ã—ã¾ã™" -#: builtin.c:924 +#: builtin.c:929 msgid "fatal: `l' is not permitted in POSIX awk formats" msgstr "致命的: POSIX awk 書å¼å†…ã§ã¯ `l' ã¯è¨±å¯ã•れã¦ã„ã¾ã›ã‚“" -#: builtin.c:937 +#: builtin.c:942 msgid "`L' is meaningless in awk formats; ignored" msgstr "awk ã®æ›¸å¼æŒ‡å®šã§ã¯ `L' ã¯ç„¡æ„味ã§ã™ã€‚無視ã—ã¾ã™ã€‚" -#: builtin.c:941 +#: builtin.c:946 msgid "fatal: `L' is not permitted in POSIX awk formats" msgstr "致命的: POSIX awk 書å¼å†…ã§ã¯ `L' ã¯è¨±å¯ã•れã¦ã„ã¾ã›ã‚“" -#: builtin.c:954 +#: builtin.c:959 msgid "`h' is meaningless in awk formats; ignored" msgstr "awk ã®æ›¸å¼æŒ‡å®šã§ã¯ `h' ã¯ç„¡æ„味ã§ã™ã€‚無視ã—ã¾ã™ã€‚" -#: builtin.c:958 +#: builtin.c:963 msgid "fatal: `h' is not permitted in POSIX awk formats" msgstr "致命的: POSIX awk 書å¼å†…ã§ã¯ `h' ã¯è¨±å¯ã•れã¦ã„ã¾ã›ã‚“" -#: builtin.c:1271 +#: builtin.c:1276 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "[s]printf: 値 %g ã¯æ›¸å¼ `%%%c' ã®ç¯„囲外ã§ã™" -#: builtin.c:1331 +#: builtin.c:1336 #, c-format msgid "ignoring unknown format specifier character `%c': no argument converted" msgstr "䏿˜Žãªæ›¸å¼æŒ‡å®šæ–‡å— `%c' を無視ã—ã¦ã„ã¾ã™: 変æ›ã•れる引数ã¯ã‚りã¾ã›ã‚“" -#: builtin.c:1336 +#: builtin.c:1341 msgid "fatal: not enough arguments to satisfy format string" msgstr "致命的: æ›¸å¼æ–‡å—列を満ãŸã™ååˆ†ãªæ•°ã®å¼•æ•°ãŒã‚りã¾ã›ã‚“" -#: builtin.c:1338 +#: builtin.c:1343 msgid "^ ran out for this one" msgstr "^ ã“ã“ã‹ã‚‰è¶³ã‚Šã¾ã›ã‚“" -#: builtin.c:1345 +#: builtin.c:1350 msgid "[s]printf: format specifier does not have control letter" msgstr "[s]printf: æ›¸å¼æŒ‡å®šåã«åˆ¶å¾¡æ–‡å—ãŒã‚りã¾ã›ã‚“" -#: builtin.c:1348 +#: builtin.c:1353 msgid "too many arguments supplied for format string" msgstr "æ›¸å¼æ–‡å—列ã«ä¸Žãˆã‚‰ã‚Œã¦ã„る引数ãŒå¤šã™ãŽã¾ã™" -#: builtin.c:1422 builtin.c:1433 +#: builtin.c:1427 builtin.c:1438 msgid "printf: no arguments" msgstr "printf: 引数ãŒã‚りã¾ã›ã‚“" -#: builtin.c:1474 +#: builtin.c:1479 msgid "sqrt: received non-numeric argument" msgstr "sqrt: 数値ã§ã¯ç„¡ã„引数をå—ã‘å–りã¾ã—ãŸ" -#: builtin.c:1478 +#: builtin.c:1483 #, c-format msgid "sqrt: called with negative argument %g" msgstr "sqrt: è² ã®å€¤ %g を引数ã«ä½¿ç”¨ã—ã¦å‘¼ã³å‡ºã•れã¾ã—ãŸ" -#: builtin.c:1502 +#: builtin.c:1507 #, c-format msgid "substr: length %g is not >= 1" msgstr "substr: é•·ã• %g ㌠1 以上ã§ã¯ã‚りã¾ã›ã‚“" -#: builtin.c:1504 +#: builtin.c:1509 #, c-format msgid "substr: length %g is not >= 0" msgstr "substr: é•·ã• %g ㌠0 以上ã§ã¯ã‚りã¾ã›ã‚“" -#: builtin.c:1511 +#: builtin.c:1516 #, c-format msgid "substr: non-integer length %g will be truncated" msgstr "substr: æ–‡å—æ•° %g ã®å°æ•°ç‚¹ä»¥ä¸‹ã¯åˆ‡ã‚Šæ¨ã¦ã¾ã™ã€‚" -#: builtin.c:1516 +#: builtin.c:1521 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "substr: æ–‡å—æ•° %g ã¯æœ€å¤§å€¤ã‚’è¶…ãˆã¦ã„ã¾ã™ã€‚%g を使ã„ã¾ã™ã€‚" -#: builtin.c:1528 +#: builtin.c:1533 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "substr: 開始インデックス %g ãŒç„¡åйã§ã™ã€‚1を使用ã—ã¾ã™" -#: builtin.c:1533 +#: builtin.c:1538 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "substr: 開始インデックス %g ãŒéžæ•´æ•°ã®ãŸã‚ã€å€¤ã¯åˆ‡ã‚Šæ¨ã¦ã‚‰ã‚Œã¾ã™" -#: builtin.c:1558 +#: builtin.c:1563 msgid "substr: source string is zero length" msgstr "substr: æ–‡å—列ã®é•·ã•ãŒã‚¼ãƒã§ã™ã€‚" -#: builtin.c:1574 +#: builtin.c:1579 #, c-format msgid "substr: start index %g is past end of string" msgstr "substr: 開始インデックス %g ãŒæ–‡å—列終端ã®å¾Œã«ã‚りã¾ã™" -#: builtin.c:1582 +#: builtin.c:1587 #, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" @@ -750,227 +707,222 @@ msgstr "" "substr: 開始インデックス %2$g ã‹ã‚‰ã®é•·ã• %1$g ã¯ç¬¬ä¸€å¼•æ•°ã®é•·ã•ã‚’è¶…ãˆã¦ã„ã¾ã™ " "(%3$lu)" -#: builtin.c:1656 +#: builtin.c:1661 msgid "strftime: format value in PROCINFO[\"strftime\"] has numeric type" msgstr "strftime: PROCINFO[\"strftime\"] ã®æ›¸å¼ã®å€¤ã¯æ•°å€¤åž‹ã§ã™" -#: builtin.c:1679 +#: builtin.c:1684 msgid "strftime: received non-numeric second argument" msgstr "strftime: éžæ•°å€¤ã®ç¬¬äºŒå¼•æ•°ã‚’å—ã‘å–りã¾ã—ãŸ" -#: builtin.c:1682 +#: builtin.c:1687 msgid "strftime: second argument less than 0 or too big for time_t" msgstr "" -#: builtin.c:1689 +#: builtin.c:1694 msgid "strftime: received non-string first argument" msgstr "strftime: éžæ–‡å—列ã®ç¬¬ä¸€å¼•æ•°ã‚’å—ã‘å–りã¾ã—ãŸ" -#: builtin.c:1695 +#: builtin.c:1701 msgid "strftime: received empty format string" msgstr "strftime: ç©ºã®æ›¸å¼æ–‡å—列をå—ã‘å–りã¾ã—ãŸ" -#: builtin.c:1761 +#: builtin.c:1767 msgid "mktime: received non-string argument" msgstr "mktime: éžæ–‡å—列引数をå—ã‘å–りã¾ã—ãŸ" -#: builtin.c:1778 +#: builtin.c:1784 msgid "mktime: at least one of the values is out of the default range" msgstr "mktime: 一ã¤ä»¥ä¸Šã®å€¤ãŒãƒ‡ãƒ•ォルトã®ç¯„囲を超ãˆã¦ã„ã¾ã™" -#: builtin.c:1813 +#: builtin.c:1819 msgid "'system' function not allowed in sandbox mode" msgstr "サンドボックスモードã§ã¯ 'system' 関数ã¯è¨±å¯ã•れã¦ã„ã¾ã›ã‚“" -#: builtin.c:1818 +#: builtin.c:1824 msgid "system: received non-string argument" msgstr "system: æ–‡å—列ã§ã¯ç„¡ã„引数をå—ã‘å–りã¾ã—ãŸ" -#: builtin.c:1873 eval.c:1159 eval.c:1790 eval.c:1803 -#, c-format -msgid "reference to uninitialized variable `%s'" -msgstr "åˆæœŸåŒ–ã•れã¦ã„ãªã„変数 `%s' ã¸ã®å‚ç…§ã§ã™" - -#: builtin.c:1940 +#: builtin.c:1942 #, c-format msgid "reference to uninitialized field `$%d'" msgstr "åˆæœŸåŒ–ã•れã¦ã„ãªã„フィールド `$%d' ã¸ã®å‚ç…§ã§ã™" -#: builtin.c:2027 +#: builtin.c:2029 msgid "tolower: received non-string argument" msgstr "tolower: éžæ–‡å—列引数をå—ã‘å–りã¾ã—ãŸ" -#: builtin.c:2061 +#: builtin.c:2063 msgid "toupper: received non-string argument" msgstr "toupper: éžæ–‡å—列引数をå—ã‘å–りã¾ã—ãŸ" -#: builtin.c:2097 +#: builtin.c:2099 msgid "atan2: received non-numeric first argument" msgstr "atan2: éžæ•°å€¤ã®ç¬¬ä¸€å¼•æ•°ã‚’å—ã‘å–りã¾ã—ãŸ" -#: builtin.c:2099 +#: builtin.c:2101 msgid "atan2: received non-numeric second argument" msgstr "atan2: éžæ•°å€¤ã®ç¬¬äºŒå¼•æ•°ã‚’å—ã‘å–りã¾ã—ãŸ" -#: builtin.c:2118 +#: builtin.c:2120 msgid "sin: received non-numeric argument" msgstr "sin: éžæ•°å€¤ã®å¼•æ•°ã‚’å—ã‘å–りã¾ã—ãŸ" -#: builtin.c:2134 +#: builtin.c:2136 msgid "cos: received non-numeric argument" msgstr "cos: éžæ•°å€¤ã®å¼•æ•°ã‚’å—ã‘å–りã¾ã—ãŸ" -#: builtin.c:2187 +#: builtin.c:2189 msgid "srand: received non-numeric argument" msgstr "srand: éžæ•°å€¤ã®å¼•æ•°ã‚’å—ã‘å–りã¾ã—ãŸ" -#: builtin.c:2218 +#: builtin.c:2220 msgid "match: third argument is not an array" msgstr "match: 第三引数ãŒé…列ã§ã¯ã‚りã¾ã›ã‚“" -#: builtin.c:2482 +#: builtin.c:2484 msgid "gensub: third argument of 0 treated as 1" msgstr "gensub: 第三引数㌠0 ã§ã™ã€‚1 を代ã‚りã«ä½¿ç”¨ã—ã¾ã™" -#: builtin.c:2775 +#: builtin.c:2777 msgid "lshift: received non-numeric first argument" msgstr "lshift: éžæ•°å€¤ã®ç¬¬ä¸€å¼•æ•°ã‚’å—ã‘å–りã¾ã—ãŸ" -#: builtin.c:2777 +#: builtin.c:2779 msgid "lshift: received non-numeric second argument" msgstr "lshift: éžæ•°å€¤ã®ç¬¬äºŒå¼•æ•°ã‚’å—ã‘å–りã¾ã—ãŸ" -#: builtin.c:2783 +#: builtin.c:2785 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "lshift(%lf, %lf): è² ã®æ•°å€¤ã‚’使用ã™ã‚‹ã¨ç•°å¸¸ãªçµæžœã«ãªã‚Šã¾ã™" -#: builtin.c:2785 +#: builtin.c:2787 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "lshift(%lf, %lf): å°æ•°ç‚¹ä»¥ä¸‹ã¯åˆ‡ã‚Šæ¨ã¦ã‚‰ã‚Œã¾ã™" -#: builtin.c:2787 +#: builtin.c:2789 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "lshift(%lf, %lf): シフト値ãŒå¤§ãéŽãŽã‚‹ã¨ç•°å¸¸ãªçµæžœã«ãªã‚Šã¾ã™" -#: builtin.c:2812 +#: builtin.c:2814 msgid "rshift: received non-numeric first argument" msgstr "rshift: éžæ•°å€¤ã®ç¬¬ä¸€å¼•æ•°ã‚’å—ã‘å–りã¾ã—ãŸ" -#: builtin.c:2814 +#: builtin.c:2816 msgid "rshift: received non-numeric second argument" msgstr "rshift: éžæ•°å€¤ã®ç¬¬äºŒå¼•æ•°ã‚’å—ã‘å–りã¾ã—ãŸ" -#: builtin.c:2820 +#: builtin.c:2822 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "rshift(%lf, %lf): è² ã®æ•°å€¤ã‚’使用ã™ã‚‹ã¨ç•°å¸¸ãªçµæžœã«ãªã‚Šã¾ã™" -#: builtin.c:2822 +#: builtin.c:2824 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "rshift(%lf, %lf): å°æ•°ç‚¹ä»¥ä¸‹ã¯åˆ‡ã‚Šæ¨ã¦ã‚‰ã‚Œã¾ã™" -#: builtin.c:2824 +#: builtin.c:2826 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "rshift(%lf, %lf): シフト値ãŒå¤§ãéŽãŽã‚‹ã¨ç•°å¸¸ãªçµæžœã«ãªã‚Šã¾ã™" -#: builtin.c:2849 +#: builtin.c:2851 msgid "and: received non-numeric first argument" msgstr "and: éžæ•°å€¤ã®ç¬¬ä¸€å¼•æ•°ã‚’å—ã‘å–りã¾ã—ãŸ" -#: builtin.c:2851 +#: builtin.c:2853 msgid "and: received non-numeric second argument" msgstr "and: éžæ•°å€¤ã®ç¬¬äºŒå¼•æ•°ã‚’å—ã‘å–りã¾ã—ãŸ" -#: builtin.c:2857 +#: builtin.c:2859 #, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "and(%lf, %lf): è² ã®æ•°å€¤ã‚’使用ã™ã‚‹ã¨ç•°å¸¸ãªçµæžœã«ãªã‚Šã¾ã™" -#: builtin.c:2859 +#: builtin.c:2861 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "and(%lf, %lf): å°æ•°ç‚¹ä»¥ä¸‹ã¯åˆ‡ã‚Šæ¨ã¦ã‚‰ã‚Œã¾ã™" -#: builtin.c:2884 +#: builtin.c:2886 msgid "or: received non-numeric first argument" msgstr "or: éžæ•°å€¤ã®ç¬¬ä¸€å¼•æ•°ã‚’å—ã‘å–りã¾ã—ãŸ" -#: builtin.c:2886 +#: builtin.c:2888 msgid "or: received non-numeric second argument" msgstr "or: éžæ•°å€¤ã®ç¬¬äºŒå¼•æ•°ã‚’å—ã‘å–りã¾ã—ãŸ" -#: builtin.c:2892 +#: builtin.c:2894 #, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "or(%lf, %lf): è² ã®æ•°å€¤ã‚’使用ã™ã‚‹ã¨ç•°å¸¸ãªçµæžœã«ãªã‚Šã¾ã™" -#: builtin.c:2894 +#: builtin.c:2896 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "or(%lf, %lf): å°æ•°ç‚¹ä»¥ä¸‹ã¯åˆ‡ã‚Šæ¨ã¦ã‚‰ã‚Œã¾ã™" -#: builtin.c:2922 +#: builtin.c:2924 msgid "xor: received non-numeric first argument" msgstr "xor: éžæ•°å€¤ã®ç¬¬ä¸€å¼•æ•°ã‚’å—ã‘å–りã¾ã—ãŸ" -#: builtin.c:2924 +#: builtin.c:2926 msgid "xor: received non-numeric second argument" msgstr "xor: éžæ•°å€¤ã®ç¬¬äºŒå¼•æ•°ã‚’å—ã‘å–りã¾ã—ãŸ" -#: builtin.c:2930 +#: builtin.c:2932 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "xor(%lf, %lf): è² ã®æ•°å€¤ã‚’使用ã™ã‚‹ã¨ç•°å¸¸ãªçµæžœã«ãªã‚Šã¾ã™" -#: builtin.c:2932 +#: builtin.c:2934 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "xor(%lf, %lf): å°æ•°ç‚¹ä»¥ä¸‹ã¯åˆ‡ã‚Šæ¨ã¦ã‚‰ã‚Œã¾ã™" -#: builtin.c:2956 builtin.c:2962 +#: builtin.c:2958 builtin.c:2964 msgid "compl: received non-numeric argument" msgstr "compl: éžæ•°å€¤ã®å¼•æ•°ã‚’å—ã‘å–りã¾ã—ãŸ" -#: builtin.c:2964 +#: builtin.c:2966 #, c-format msgid "compl(%lf): negative value will give strange results" msgstr "compl(%lf): è² ã®æ•°å€¤ã‚’使用ã™ã‚‹ã¨ç•°å¸¸ãªçµæžœã«ãªã‚Šã¾ã™" -#: builtin.c:2966 +#: builtin.c:2968 #, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "compl(%lf): å°æ•°ç‚¹ä»¥ä¸‹ã¯åˆ‡ã‚Šæ¨ã¦ã‚‰ã‚Œã¾ã™" -#: builtin.c:3135 +#: builtin.c:3137 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "dcgettext: `%s' ã¯ç„¡åйãªãƒã‚±ãƒ¼ãƒ«åŒºåˆ†ã§ã™" -#: eval.c:412 +#: eval.c:393 #, c-format msgid "unknown nodetype %d" msgstr "䏿˜ŽãªãƒŽãƒ¼ãƒ‰åž‹ %d ã§ã™" -#: eval.c:423 eval.c:437 +#: eval.c:404 eval.c:418 #, c-format msgid "unknown opcode %d" msgstr "䏿˜Žãªã‚ªãƒšã‚³ãƒ¼ãƒ‰ %d ã§ã™" -#: eval.c:434 +#: eval.c:415 #, c-format msgid "opcode %s not an operator or keyword" msgstr "オペコード %s ã¯æ¼”ç®—åã¾ãŸã¯äºˆç´„語ã§ã¯ã‚りã¾ã›ã‚“" -#: eval.c:488 +#: eval.c:468 msgid "buffer overflow in genflags2str" msgstr "genflags2str 内ã§ãƒãƒƒãƒ•ァオーãƒãƒ¼ãƒ•ãƒãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ" -#: eval.c:698 +#: eval.c:678 #, c-format msgid "" "\n" @@ -981,216 +933,165 @@ msgstr "" "\t# 呼出関数スタック:\n" "\n" -#: eval.c:725 +#: eval.c:706 msgid "`IGNORECASE' is a gawk extension" msgstr "`IGNORECASE' 㯠gawk æ‹¡å¼µã§ã™" -#: eval.c:754 +#: eval.c:736 msgid "`BINMODE' is a gawk extension" msgstr "`BINMODE' 㯠gawk æ‹¡å¼µã§ã™" -#: eval.c:812 +#: eval.c:794 #, c-format msgid "BINMODE value `%s' is invalid, treated as 3" msgstr "BINMODE 値 `%s' ã¯ç„¡åйã§ã™ã€‚代ã‚り㫠3 を使用ã—ã¾ã™" -#: eval.c:902 +#: eval.c:887 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "誤ã£ãŸ `%sFMT' 指定 `%s' ã§ã™" -#: eval.c:980 +#: eval.c:969 msgid "turning off `--lint' due to assignment to `LINT'" msgstr "`LINT' ã¸ã®ä»£å…¥ã«å¾“ã„ `--lint' を無効ã«ã—ã¾ã™" -#: eval.c:1127 eval.c:1777 -#, c-format -msgid "can't use function name `%s' as variable or array" -msgstr "関数å `%s' ã¯å¤‰æ•°ã¾ãŸã¯é…列ã¨ã—ã¦ä½¿ç”¨å‡ºæ¥ã¾ã›ã‚“" - -#: eval.c:1158 eval.c:1789 eval.c:1802 +#: eval.c:1119 #, c-format msgid "reference to uninitialized argument `%s'" msgstr "åˆæœŸåŒ–ã•れã¦ã„ãªã„引数 `%s' ã¸ã®å‚ç…§ã§ã™" -#: eval.c:1177 +#: eval.c:1120 +#, c-format +msgid "reference to uninitialized variable `%s'" +msgstr "åˆæœŸåŒ–ã•れã¦ã„ãªã„変数 `%s' ã¸ã®å‚ç…§ã§ã™" + +#: eval.c:1138 msgid "attempt to field reference from non-numeric value" msgstr "éžæ•°å€¤ã‚’使用ã—ãŸãƒ•イールドå‚ç…§ã®è©¦ã¿ã§ã™" -#: eval.c:1179 +#: eval.c:1140 msgid "attempt to field reference from null string" msgstr "NULL æ–‡å—列を使用ã—ã¦ãƒ•ィールドã®å‚照を試ã¿ã¦ã„ã¾ã™" -#: eval.c:1185 +#: eval.c:1146 #, c-format msgid "attempt to access field %ld" msgstr "フィールド %ld ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ã®è©¦ã¿ã§ã™" -#: eval.c:1194 +#: eval.c:1155 #, c-format msgid "reference to uninitialized field `$%ld'" msgstr "åˆæœŸåŒ–ã•れã¦ã„ãªã„フィールド `$%ld' ã¸ã®å‚ç…§ã§ã™" -#: eval.c:1256 +#: eval.c:1242 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "宣言ã•れã¦ã„る数より多ã„引数を使ã£ã¦é–¢æ•° `%s' を呼ã³å‡ºã—ã¾ã—ãŸ" -#: eval.c:1437 +#: eval.c:1436 #, c-format msgid "unwind_stack: unexpected type `%s'" msgstr "unwind_stack: 予期ã—ãªã„åž‹ `%s' ã§ã™" -#: eval.c:1532 +#: eval.c:1536 msgid "division by zero attempted in `/='" msgstr "`/=' 内ã§ã‚¼ãƒã«ã‚ˆã‚‹é™¤ç®—ãŒè¡Œã‚れã¾ã—ãŸ" -#: eval.c:1539 +#: eval.c:1543 #, c-format msgid "division by zero attempted in `%%='" msgstr "`%%=' 内ã§ã‚¼ãƒã«ã‚ˆã‚‹é™¤ç®—ãŒè¡Œã‚れã¾ã—ãŸ" -#: eval.c:1876 eval.c:2122 -#, c-format -msgid "attempt to use array `%s[\"%.*s\"]' in a scalar context" -msgstr "スカラーコンテã‚スト内ã§é…列 `%s[\"%.*s\"]' ã®ä½¿ç”¨ã®è©¦ã¿ã§ã™" - -#: eval.c:1907 -msgid "assignment used in conditional context" -msgstr "æ¡ä»¶ã‚³ãƒ³ãƒ†ã‚スト内ã§ä»£å…¥ãŒä½¿ç”¨ã•れã¾ã—ãŸ" - -#: eval.c:1911 -msgid "statement has no effect" -msgstr "æ–‡ã«åŠ¹æžœãŒã‚りã¾ã›ã‚“" - -#: eval.c:2343 -#, c-format -msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" -msgstr "" -"for ループ: ループ実行ä¸ã«é…列 `%s' ã®ã‚µã‚¤ã‚ºãŒ %ld ã‹ã‚‰ %ld ã¸å¤‰æ›´ã•れã¾ã—ãŸ" - -#: eval.c:2458 -#, c-format -msgid "function called indirectly through `%s' does not exist" -msgstr "`%s' を通ã—ã¦é–“接的ã«å‘¼ã³å‡ºã•れãŸé–¢æ•°ãŒå˜åœ¨ã—ã¾ã›ã‚“" - -#: eval.c:2470 -#, c-format -msgid "function `%s' not defined" -msgstr "関数 `%s' ã¯å®šç¾©ã•れã¦ã„ã¾ã›ã‚“" - -#: eval.c:2511 -#, c-format -msgid "non-redirected `getline' invalid inside `%s' rule" -msgstr "`%s' ルールã®å†…å´ã§ã¯ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã•れã¦ã„ãªã„ `getline' ã¯ç„¡åйã§ã™" - -#: eval.c:2600 -#, c-format -msgid "error reading input file `%s': %s" -msgstr "入力ファイル `%s' ã‚’èªã¿è¾¼ã¿ä¸ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %s" - -#: eval.c:2614 -#, c-format -msgid "`nextfile' cannot be called from a `%s' rule" -msgstr "`nextfile' 㯠`%s' ルールã‹ã‚‰å‘¼ã³å‡ºã™ã“ã¨ãŒå‡ºæ¥ã¾ã›ã‚“" - -#: eval.c:2694 -#, c-format -msgid "`next' cannot be called from a `%s' rule" -msgstr "`next' 㯠`%s' ã‹ã‚‰å‘¼ã³å‡ºã™ã“ã¨ãŒå‡ºæ¥ã¾ã›ã‚“" - -#: eval.c:2760 -#, c-format -msgid "Sorry, don't know how to interpret `%s'" -msgstr "申ã—訳ã‚りã¾ã›ã‚“㌠`%s' ã‚’ã©ã®ã‚ˆã†ã«è§£é‡ˆã™ã‚‹ã‹åˆ†ã‹ã‚Šã¾ã›ã‚“" - -#: ext.c:64 +#: ext.c:70 msgid "extensions are not allowed in sandbox mode" msgstr "サンドボックスモード内ã§ã¯æ‹¡å¼µã¯è¨±å¯ã•れã¦ã„ã¾ã›ã‚“" -#: ext.c:70 ext.c:75 +#: ext.c:73 msgid "`extension' is a gawk extension" msgstr "`extension' 㯠gawk æ‹¡å¼µã§ã™" -#: ext.c:85 -#, c-format -msgid "fatal: extension: cannot open `%s' (%s)\n" +#: ext.c:80 +#, fuzzy, c-format +msgid "extension: cannot open library `%s' (%s)\n" msgstr "致命的: extension: `%s' ã‚’é–‹ãã“ã¨ãŒå‡ºæ¥ã¾ã›ã‚“ (%s)\n" -#: ext.c:94 -#, c-format +#: ext.c:86 +#, fuzzy, c-format msgid "" -"fatal: extension: library `%s': does not define " -"`plugin_is_GPL_compatible' (%s)\n" +"extension: library `%s': does not define `plugin_is_GPL_compatible' (%s)\n" msgstr "" "致命的: extension: ライブラリ `%s': `plugin_is_GPL_compatible' ãŒå®šç¾©ã•れã¦ã„" "ã¾ã›ã‚“ (%s)\n" -#: ext.c:103 -#, c-format -msgid "fatal: extension: library `%s': cannot call function `%s' (%s)\n" +#: ext.c:91 +#, fuzzy, c-format +msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "" "致命的: extension: ライブラリ `%s': 関数 `%s' を呼ã³å‡ºã™ã“ã¨ãŒå‡ºæ¥ã¾ã›ã‚“ " "(%s)\n" -#: ext.c:137 +#: ext.c:119 msgid "extension: missing function name" msgstr "extension: 関数åãŒã‚りã¾ã›ã‚“" -#: ext.c:142 +#: ext.c:124 #, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "extension: 関数å `%2$s' ã®ä¸ã§ä¸æ£ãªæ–‡å— `%1$c' ãŒä½¿ç”¨ã•れã¦ã„ã¾ã™" -#: ext.c:151 +#: ext.c:132 #, c-format msgid "extension: can't redefine function `%s'" msgstr "extension: 関数 `%s' ã‚’å†å®šç¾©ã§ãã¾ã›ã‚“" -#: ext.c:155 +#: ext.c:136 #, c-format msgid "extension: function `%s' already defined" msgstr "extension: 関数 `%s' ã¯æ—¢ã«å®šç¾©ã•れã¦ã„ã¾ã™" -#: ext.c:160 +#: ext.c:140 #, c-format msgid "extension: function name `%s' previously defined" msgstr "extension: 関数å `%s' ã¯å‰ã«å®šç¾©ã•れã¦ã„ã¾ã™" -#: ext.c:162 +#: ext.c:142 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "extension: gawk ã«çµ„ã¿è¾¼ã¾ã‚Œã¦ã„ã‚‹ `%s' ã¯é–¢æ•°åã¨ã—ã¦ä½¿ç”¨å‡ºæ¥ã¾ã›ã‚“" -#: ext.c:166 +#: ext.c:145 #, c-format msgid "make_builtin: negative argument count for function `%s'" msgstr "make_builtin: 関数 `%s' ã®å¼•æ•°ã®æ•°ãŒè² ã§ã™" -#: ext.c:269 +#: ext.c:207 #, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "関数 `%s' ã«ä½¿ãˆã‚‹å¼•æ•°ã®æ•°ã¯ `%d' 以下ã¨å®šç¾©ã•れã¦ã„ã¾ã™" -#: ext.c:272 +#: ext.c:210 #, c-format msgid "function `%s': missing argument #%d" msgstr "関数 `%s': 引数 #%d ãŒã‚りã¾ã›ã‚“" -#: ext.c:289 +#: ext.c:227 #, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "関数 `%s': 引数 #%d: スカラーをé…列ã¨ã—ã¦ä½¿ç”¨ã™ã‚‹è©¦ã¿ã§ã™" -#: ext.c:293 +#: ext.c:231 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "関数 `%s': 引数 #%d: é…列をスカラーã¨ã—ã¦ä½¿ç”¨ã™ã‚‹è©¦ã¿ã§ã™" -#: ext.c:306 +#: ext.c:245 msgid "Operation Not Supported" msgstr "ã“ã®æ“作ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ã¾ã›ã‚“" +#: ext.c:257 +msgid "dynamic loading of library not supported" +msgstr "" + #: field.c:328 msgid "NF set to negative value" msgstr "NF ãŒè² ã®å€¤ã«è¨å®šã•れã¦ã„ã¾ã™" @@ -1247,541 +1148,551 @@ msgstr "patsplit: 第四引数ã«ç¬¬äºŒå¼•æ•°ã®éƒ¨åˆ†é…列を使用ã™ã‚‹ã“ã msgid "patsplit: cannot use a subarray of fourth arg for second arg" msgstr "patsplit: 第二引数ã«ç¬¬å››å¼•æ•°ã®éƒ¨åˆ†é…列を使用ã™ã‚‹ã“ã¨ã¯å‡ºæ¥ã¾ã›ã‚“" -#: field.c:1110 +#: field.c:1111 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "`FIELDWIDTHS' 㯠gawk æ‹¡å¼µã§ã™" -#: field.c:1173 +#: field.c:1175 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "`%s' 付近㮠FIELDWIDTHS 値ãŒç„¡åйã§ã™" -#: field.c:1246 +#: field.c:1248 msgid "null string for `FS' is a gawk extension" msgstr "`FS' ã« NULL æ–‡å—列を使用ã™ã‚‹ã®ã¯ gawk æ‹¡å¼µã§ã™" -#: field.c:1250 +#: field.c:1252 msgid "old awk does not support regexps as value of `FS'" msgstr "å¤ã„ awk 㯠`FS' ã®å€¤ã¨ã—ã¦æ£è¦è¡¨ç¾ã‚’サãƒãƒ¼ãƒˆã—ã¾ã›ã‚“" -#: field.c:1369 +#: field.c:1371 msgid "`FPAT' is a gawk extension" msgstr "`FPAT' 㯠gawk æ‹¡å¼µã§ã™" -#: getopt.c:574 getopt.c:590 -#, c-format -msgid "%s: option '%s' is ambiguous\n" +#: getopt.c:604 getopt.c:633 +#, fuzzy, c-format +msgid "%s: option '%s' is ambiguous; possibilities:" msgstr "%s: オプション '%s' ã¯æ›–昧ã§ã™\n" -#: getopt.c:623 getopt.c:627 +#: getopt.c:679 getopt.c:683 #, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: オプション '--%s' ã¯å¼•æ•°ã‚’å–ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“\n" -#: getopt.c:636 getopt.c:641 +#: getopt.c:692 getopt.c:697 #, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: オプション '%c%s' ã¯å¼•æ•°ã‚’å–ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“\n" -#: getopt.c:684 getopt.c:703 +#: getopt.c:740 getopt.c:759 #, c-format msgid "%s: option '--%s' requires an argument\n" msgstr "%s: オプション '--%s' ã«ã¯å¼•æ•°ãŒå¿…è¦ã§ã™\n" -#: getopt.c:741 getopt.c:744 +#: getopt.c:797 getopt.c:800 #, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: オプション '--%s' ã‚’èªè˜ã§ãã¾ã›ã‚“\n" -#: getopt.c:752 getopt.c:755 +#: getopt.c:808 getopt.c:811 #, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: オプション '%c%s' ã‚’èªè˜ã§ãã¾ã›ã‚“\n" -#: getopt.c:804 getopt.c:807 +#: getopt.c:860 getopt.c:863 #, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: 無効ãªã‚ªãƒ—ション -- '%c'\n" -#: getopt.c:857 getopt.c:874 getopt.c:1082 getopt.c:1100 +#: getopt.c:916 getopt.c:933 getopt.c:1143 getopt.c:1161 #, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: オプションã«ã¯å¼•æ•°ãŒå¿…è¦ã§ã™ -- '%c'\n" -#: getopt.c:930 getopt.c:946 +#: getopt.c:989 getopt.c:1005 #, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: オプション '-W %s' ã¯æ›–昧ã§ã™\n" -#: getopt.c:970 getopt.c:988 +#: getopt.c:1029 getopt.c:1047 #, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: オプション '-W %s' ã¯å¼•æ•°ã‚’å–ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“\n" -#: getopt.c:1009 getopt.c:1027 +#: getopt.c:1068 getopt.c:1086 #, c-format msgid "%s: option '-W %s' requires an argument\n" msgstr "%s: オプション '-W %s' ã«ã¯å¼•æ•°ãŒå¿…è¦ã§ã™\n" -#: io.c:280 +#: io.c:315 #, c-format msgid "command line argument `%s' is a directory: skipped" msgstr "コマンドライン引数 `%s' ã¯ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã§ã™: スã‚ップã•れã¾ã—ãŸ" -#: io.c:283 io.c:385 +#: io.c:318 io.c:421 #, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "ファイル `%s' ã‚’èªã¿è¾¼ã¿ç”¨ã«é–‹ã‘ã¾ã›ã‚“ (%s)" -#: io.c:501 +#: io.c:537 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "fd %d (`%s') ã‚’é–‰ã˜ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“ (%s)" -#: io.c:578 +#: io.c:614 msgid "redirection not allowed in sandbox mode" msgstr "サンドボックスモード内ã§ã¯ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã¯è¨±å¯ã•れã¦ã„ã¾ã›ã‚“" -#: io.c:612 +#: io.c:648 #, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "`%s' リダイレクトã®å‘½ä»¤å¼ã«æ•°å€¤ã—ã‹è¨˜è¿°ã•れã¦ã„ã¾ã›ã‚“。" -#: io.c:618 +#: io.c:654 #, c-format msgid "expression for `%s' redirection has null string value" msgstr "`%s' リダイレクトã®å‘½ä»¤å¼ãŒç©ºåˆ—ã§ã™ã€‚" -#: io.c:624 +#: io.c:659 #, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "" "`%2$s' リダイレクトã«è«–ç†æ¼”ç®—ã®çµæžœã¨æ€ã‚れるファイルå `%1$s' ãŒä½¿ã‚れã¦ã„ã¾" "ã™ã€‚" -#: io.c:667 +#: io.c:702 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "ファイル `%.*s' ã§å¿…è¦ä»¥ä¸Šã« `>' 㨠`>>' を組åˆã›ã¦ã„ã¾ã™ã€‚" -#: io.c:720 +#: io.c:755 #, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "出力用ã«ãƒ‘イプ `%s' ã‚’é–‹ã‘ã¾ã›ã‚“ (%s)" -#: io.c:730 +#: io.c:765 #, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "入力用ã«ãƒ‘イプ `%s' ã‚’é–‹ã‘ã¾ã›ã‚“ (%s)" -#: io.c:753 +#: io.c:788 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "入出力用ã®åŒæ–¹å‘パイプ `%s' ãŒé–‹ã‘ã¾ã›ã‚“ (%s)" -#: io.c:835 +#: io.c:870 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "`%s' ã‹ã‚‰ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã§ãã¾ã›ã‚“ (%s)" -#: io.c:838 +#: io.c:873 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "`%s' ã«ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã§ãã¾ã›ã‚“ (%s)" -#: io.c:889 +#: io.c:924 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "" "é–‹ã„ã¦ã„ã‚‹ãƒ•ã‚¡ã‚¤ãƒ«ã®æ•°ãŒã‚·ã‚¹ãƒ†ãƒ 制é™ã«é”ã—ã¾ã—ãŸã€‚ファイル記述åを多é‡åŒ–ã—ã¾" "ã™ã€‚" -#: io.c:905 +#: io.c:940 #, c-format msgid "close of `%s' failed (%s)." msgstr "`%s' ã‚’é–‰ã˜ã‚‹ã®ã«å¤±æ•—ã—ã¾ã—㟠(%s)" -#: io.c:913 +#: io.c:948 msgid "too many pipes or input files open" msgstr "é–‹ã„ã¦ã„るパイプã¾ãŸã¯å…¥åŠ›ãƒ•ã‚¡ã‚¤ãƒ«ã®æ•°ãŒå¤šéŽãŽã¾ã™ã€‚" -#: io.c:935 +#: io.c:970 msgid "close: second argument must be `to' or `from'" msgstr "close: 第二引数㯠`to' ã¾ãŸã¯ `from' ã§ãªã‘れã°ã„ã‘ã¾ã›ã‚“" -#: io.c:952 +#: io.c:987 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "close: `%.*s' ã¯é–‹ã„ã¦ã„るファイルã€ãƒ‘イプã€ãƒ—ãƒã‚»ã‚¹å…±æœ‰ã§ã¯ã‚りã¾ã›ã‚“" -#: io.c:957 +#: io.c:992 msgid "close of redirection that was never opened" msgstr "é–‹ã„ã¦ãªã„リダイレクトを閉ã˜ã‚ˆã†ã¨ã—ã¦ã„ã¾ã™" -#: io.c:1054 +#: io.c:1089 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "" "close: リダイレクト `%s' 㯠`|&' を使用ã—ã¦é–‹ã‹ã‚Œã¦ã„ã¾ã›ã‚“。第二引数ã¯ç„¡è¦–ã•" "れã¾ã—ãŸ" -#: io.c:1070 +#: io.c:1105 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "パイプ `%2$s' ã‚’é–‰ã˜ãŸã¨ãã®çŠ¶æ…‹ã‚³ãƒ¼ãƒ‰ãŒå¤±æ•— (%1$d) ã§ã—㟠(%3$s)。" -#: io.c:1073 +#: io.c:1108 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "ファイル `%2$s' ã‚’é–‰ã˜ãŸã¨ãã®çŠ¶æ…‹ã‚³ãƒ¼ãƒ‰ãŒå¤±æ•— (%1$d) ã§ã—㟠(%3$s)。" -#: io.c:1093 +#: io.c:1128 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "ソケット `%s' を明示ã—ã¦é–‰ã˜ã¦ã„ã¾ã›ã‚“。" -#: io.c:1096 +#: io.c:1131 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "並行プãƒã‚»ã‚¹ `%s' を明示ã—ã¦é–‰ã˜ã¦ã„ã¾ã›ã‚“。" -#: io.c:1099 +#: io.c:1134 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "パイプ `%s' を明示ã—ã¦é–‰ã˜ã¦ã„ã¾ã›ã‚“。" -#: io.c:1102 +#: io.c:1137 #, c-format msgid "no explicit close of file `%s' provided" msgstr "ファイル `%s' を明示ã—ã¦é–‰ã˜ã¦ã„ã¾ã›ã‚“。" -#: io.c:1130 io.c:1185 main.c:793 main.c:830 +#: io.c:1165 io.c:1220 main.c:798 main.c:835 #, c-format msgid "error writing standard output (%s)" msgstr "標準出力ã¸ã®æ›¸è¾¼ã¿ã‚¨ãƒ©ãƒ¼ (%s)" -#: io.c:1134 io.c:1190 +#: io.c:1169 io.c:1225 #, c-format msgid "error writing standard error (%s)" msgstr "標準エラーã¸ã®æ›¸è¾¼ã¿ã‚¨ãƒ©ãƒ¼ (%s)" -#: io.c:1142 +#: io.c:1177 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "パイプ `%s' をフラッシュã§ãã¾ã›ã‚“ (%s)。" -#: io.c:1145 +#: io.c:1180 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "`%s' ã¸æŽ¥ç¶šã™ã‚‹ãƒ‘イプを並行プãƒã‚»ã‚¹ã‹ã‚‰ãƒ•ラッシュã§ãã¾ã›ã‚“ (%s)。" -#: io.c:1148 +#: io.c:1183 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "ファイル `%s' をフラッシュã§ãã¾ã›ã‚“ (%s)。" -#: io.c:1263 +#: io.c:1298 #, c-format msgid "local port %s invalid in `/inet'" msgstr "`/inet' 内ã®ãƒãƒ¼ã‚«ãƒ«ãƒãƒ¼ãƒˆ %s ãŒç„¡åйã§ã™" -#: io.c:1280 +#: io.c:1315 #, c-format msgid "remote host and port information (%s, %s) invalid" msgstr "リモートã®ãƒ›ã‚¹ãƒˆãŠã‚ˆã³ãƒãƒ¼ãƒˆæƒ…å ± (%s, %s) ãŒç„¡åйã§ã™" -#: io.c:1432 +#: io.c:1467 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "" "スペシャルファイルå `%s' ã«ï¼ˆèªè˜ã§ãる)プãƒãƒˆã‚³ãƒ«ãŒæŒ‡å®šã•れã¦ã„ã¾ã›ã‚“" -#: io.c:1446 +#: io.c:1481 #, c-format msgid "special file name `%s' is incomplete" msgstr "スペシャルファイルå `%s' ã¯ä¸å®Œå…¨ã§ã™" -#: io.c:1463 +#: io.c:1498 msgid "must supply a remote hostname to `/inet'" msgstr "`/inet' ã«ã¯ãƒªãƒ¢ãƒ¼ãƒˆãƒ›ã‚¹ãƒˆåを与ãˆãªã‘れã°ã„ã‘ã¾ã›ã‚“" -#: io.c:1481 +#: io.c:1516 msgid "must supply a remote port to `/inet'" msgstr "`/inet' ã«ã¯ãƒªãƒ¢ãƒ¼ãƒˆãƒãƒ¼ãƒˆç•ªå·ã‚’与ãˆãªã‘れã°ã„ã‘ã¾ã›ã‚“" -#: io.c:1527 +#: io.c:1562 msgid "TCP/IP communications are not supported" msgstr "TCP/IP 通信ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ã¾ã›ã‚“" -#: io.c:1694 +#: io.c:1729 #, c-format msgid "could not open `%s', mode `%s'" msgstr "`%s' をモード `%s' ã§é–‹ã‘ã¾ã›ã‚“" -#: io.c:1748 +#: io.c:1783 #, c-format msgid "close of master pty failed (%s)" msgstr "マスター pty ã‚’é–‰ã˜ã‚‹ã®ã«å¤±æ•—ã—ã¾ã—㟠(%s)" -#: io.c:1750 io.c:1918 io.c:2075 +#: io.c:1785 io.c:1953 io.c:2110 #, c-format msgid "close of stdout in child failed (%s)" msgstr "åプãƒã‚»ã‚¹ãŒæ¨™æº–出力を閉ã˜ã‚‹ã®ã«å¤±æ•—ã—ã¾ã—㟠(%s)" -#: io.c:1753 +#: io.c:1788 #, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "åプãƒã‚»ã‚¹ãŒã‚¹ãƒ¬ãƒ¼ãƒ– pty を標準出力ã«ç§»å‹•ã§ãã¾ã›ã‚“ (dup: %s)。" -#: io.c:1755 io.c:1923 +#: io.c:1790 io.c:1958 #, c-format msgid "close of stdin in child failed (%s)" msgstr "åプãƒã‚»ã‚¹ãŒæ¨™æº–入力を閉ã˜ã‚‰ã‚Œã¾ã›ã‚“ (%s)。" -#: io.c:1758 +#: io.c:1793 #, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "åプãƒã‚»ã‚¹ãŒã‚¹ãƒ¬ãƒ¼ãƒ– pty を標準入力ã«ç§»å‹•ã§ãã¾ã›ã‚“ (dup: %s)。" -#: io.c:1760 io.c:1781 +#: io.c:1795 io.c:1816 #, c-format msgid "close of slave pty failed (%s)" msgstr "スレーブ pty ã‚’é–‰ã˜ã‚‹ã®ã«å¤±æ•—ã—ã¾ã—㟠(%s)" -#: io.c:1859 io.c:1921 io.c:2053 io.c:2078 +#: io.c:1894 io.c:1956 io.c:2088 io.c:2113 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "åプãƒã‚»ã‚¹ãŒãƒ‘イプを標準出力ã«ç§»å‹•ã§ãã¾ã›ã‚“ (dup: %s)。" -#: io.c:1866 io.c:1926 +#: io.c:1901 io.c:1961 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "åプãƒã‚»ã‚¹ãŒãƒ‘イプを標準入力ã«ç§»å‹•ã§ãã¾ã›ã‚“ (dup: %s)。" -#: io.c:1886 io.c:2068 +#: io.c:1921 io.c:2103 msgid "restoring stdout in parent process failed\n" msgstr "親プãƒã‚»ã‚¹ãŒæ¨™æº–出力を復旧ã§ãã¾ã›ã‚“。\n" -#: io.c:1894 +#: io.c:1929 msgid "restoring stdin in parent process failed\n" msgstr "親プãƒã‚»ã‚¹ãŒæ¨™æº–入力を復旧ã§ãã¾ã›ã‚“。\n" -#: io.c:1929 io.c:2080 io.c:2094 +#: io.c:1964 io.c:2115 io.c:2129 #, c-format msgid "close of pipe failed (%s)" msgstr "パイプを閉ã˜ã‚‰ã‚Œã¾ã›ã‚“ (%s)。" -#: io.c:1974 +#: io.c:2009 msgid "`|&' not supported" msgstr "`|&' ã¯ä½¿ç”¨ã§ãã¾ã›ã‚“。" -#: io.c:2040 +#: io.c:2075 #, c-format msgid "cannot open pipe `%s' (%s)" msgstr "パイプ `%s' ãŒé–‹ã‘ã¾ã›ã‚“ (%s)。" -#: io.c:2088 +#: io.c:2123 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "`%s' 用ã®åプãƒã‚»ã‚¹ã‚’実行ã§ãã¾ã›ã‚“ (fork: %s)。" -#: io.c:2521 +#: io.c:2613 #, c-format msgid "data file `%s' is empty" msgstr "データファイル `%s' ã¯ç©ºã§ã™ã€‚" -#: io.c:2562 io.c:2570 +#: io.c:2654 io.c:2662 msgid "could not allocate more input memory" msgstr "入力用メモリーをã“れ以上確ä¿ã§ãã¾ã›ã‚“。" -#: io.c:3128 +#: io.c:3223 msgid "multicharacter value of `RS' is a gawk extension" msgstr "è¤‡æ•°ã®æ–‡å—ã‚’ `RS' ã«ä½¿ç”¨ã™ã‚‹ã®ã¯ gawk ç‰¹æœ‰ã®æ‹¡å¼µã§ã™ã€‚" -#: io.c:3233 +#: io.c:3313 msgid "IPv6 communication is not supported" msgstr "IPv6 通信ã¯ã‚µãƒãƒ¼ãƒˆã•れã¦ã„ã¾ã›ã‚“" -#: main.c:364 +#: main.c:353 msgid "`-m[fr]' option irrelevant in gawk" msgstr "gawk ã§ã¯ã‚ªãƒ—ション `-m[fr]' ã«åŠ¹æžœã¯ã‚りã¾ã›ã‚“。" -#: main.c:366 +#: main.c:355 msgid "-m option usage: `-m[fr] nnn'" msgstr "-m オプションã®ä½¿ç”¨æ³•: `-m[fr] 数値'" -#: main.c:389 +#: main.c:384 msgid "empty argument to `-e/--source' ignored" msgstr "`-e/--source' ã¸ã®ç©ºã®å¼•æ•°ã¯ç„¡è¦–ã•れã¾ã—ãŸ" -#: main.c:460 +#: main.c:464 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "%s: オプション `-W %s' ã¯èªè˜ã§ãã¾ã›ã‚“。無視ã•れã¾ã—ãŸ\n" -#: main.c:513 +#: main.c:510 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: 引数ãŒå¿…è¦ãªã‚ªãƒ—ション -- %c\n" -#: main.c:534 +#: main.c:531 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "" "環境変数 `POSIXLY_CORRECT' ãŒæŒ‡å®šã•れã¦ã„ã¾ã™ã€‚オプション `--posix' を有効ã«" "ã—ã¾ã™" -#: main.c:540 +#: main.c:537 msgid "`--posix' overrides `--traditional'" msgstr "オプション `--posix' 㯠`--traditional' を無効ã«ã—ã¾ã™ã€‚" -#: main.c:551 +#: main.c:548 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "" "オプション `--posix'/`--traditional' 㯠`--non-decimal-data' を無効ã«ã—ã¾ã™ã€‚" -#: main.c:555 +#: main.c:552 #, c-format msgid "running %s setuid root may be a security problem" msgstr "" "setuid root ã§ %s を実行ã™ã‚‹ã¨ã€ã‚»ã‚ュリティ上ã®å•題ãŒç™ºç”Ÿã™ã‚‹å ´åˆãŒã‚りã¾" "ã™ã€‚" -#: main.c:560 +#: main.c:557 msgid "`--posix' overrides `--binary'" msgstr "`--posix' 㯠`--binary' を上書ãã—ã¾ã™" -#: main.c:611 +#: main.c:600 #, c-format msgid "can't set binary mode on stdin (%s)" msgstr "標準入力をãƒã‚¤ãƒŠãƒªãƒ¢ãƒ¼ãƒ‰ã«è¨å®šã§ãã¾ã›ã‚“ (%s)" -#: main.c:614 +#: main.c:603 #, c-format msgid "can't set binary mode on stdout (%s)" msgstr "標準出力をãƒã‚¤ãƒŠãƒªãƒ¢ãƒ¼ãƒ‰ã«è¨å®šã§ãã¾ã›ã‚“ (%s)" -#: main.c:616 +#: main.c:605 #, c-format msgid "can't set binary mode on stderr (%s)" msgstr "標準エラーをãƒã‚¤ãƒŠãƒªãƒ¢ãƒ¼ãƒ‰ã«è¨å®šã§ãã¾ã›ã‚“ (%s)" -#: main.c:655 +#: main.c:653 msgid "no program text at all!" msgstr "プãƒã‚°ãƒ©ãƒ æ–‡ãŒå…¨ãã‚りã¾ã›ã‚“!" -#: main.c:733 +#: main.c:737 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "" "使用法: %s [POSIX ã¾ãŸã¯ GNU å½¢å¼ã®ã‚ªãƒ—ション] -f progfile [--] file ...\n" -#: main.c:735 +#: main.c:739 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "" "使用法: %s [POSIX ã¾ãŸã¯ GNU å½¢å¼ã®ã‚ªãƒ—ション] [--] %cprogram%c file ...\n" -#: main.c:740 +#: main.c:744 msgid "POSIX options:\t\tGNU long options: (standard)\n" msgstr "POSIX オプション:\t\tGNU é•·ã„å½¢å¼ã®ã‚ªãƒ—ション: (標準)\n" -#: main.c:741 +#: main.c:745 msgid "\t-f progfile\t\t--file=progfile\n" msgstr "\t-f progfile\t\t--file=progfile\n" -#: main.c:742 +#: main.c:746 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "\t-F fs\t\t\t--field-separator=fs\n" -#: main.c:743 +#: main.c:747 msgid "\t-v var=val\t\t--assign=var=val\n" msgstr "\t-v var=val\t\t--assign=var=val\n" -#: main.c:744 +#: main.c:748 msgid "Short options:\t\tGNU long options: (extensions)\n" msgstr "çŸã„オプション:\t\tGNU é•·ã„å½¢å¼ã®ã‚ªãƒ—ション: (æ‹¡å¼µ)\n" -#: main.c:745 +#: main.c:749 msgid "\t-b\t\t\t--characters-as-bytes\n" msgstr "\t-b\t\t\t--characters-as-bytes\n" -#: main.c:746 +#: main.c:750 msgid "\t-c\t\t\t--traditional\n" msgstr "\t-c\t\t\t--traditional\n" -#: main.c:747 +#: main.c:751 msgid "\t-C\t\t\t--copyright\n" msgstr "\t-C\t\t\t--copyright\n" -#: main.c:748 +#: main.c:752 msgid "\t-d[file]\t\t--dump-variables[=file]\n" msgstr "\t-d[file]\t\t--dump-variables[=file]\n" -#: main.c:749 +#: main.c:753 +#, fuzzy +msgid "\t-D[file]\t\t--debug[=file]\n" +msgstr "\t-p[file]\t\t--profile[=file]\n" + +#: main.c:754 msgid "\t-e 'program-text'\t--source='program-text'\n" msgstr "\t-e 'program-text'\t--source='program-text'\n" -#: main.c:750 +#: main.c:755 msgid "\t-E file\t\t\t--exec=file\n" msgstr "\t-E file\t\t\t--exec=file\n" -#: main.c:751 +#: main.c:756 msgid "\t-g\t\t\t--gen-pot\n" msgstr "\t-g\t\t\t--gen-pot\n" -#: main.c:752 +#: main.c:757 msgid "\t-h\t\t\t--help\n" msgstr "\t-h\t\t\t--help\n" -#: main.c:753 +#: main.c:758 +msgid "\t-l library\t\t--load=library\n" +msgstr "" + +#: main.c:759 msgid "\t-L [fatal]\t\t--lint[=fatal]\n" msgstr "\t-L [fatal]\t\t--lint[=fatal]\n" -#: main.c:754 +#: main.c:760 msgid "\t-n\t\t\t--non-decimal-data\n" msgstr "\t-n\t\t\t--non-decimal-data\n" -#: main.c:755 +#: main.c:761 msgid "\t-N\t\t\t--use-lc-numeric\n" msgstr "\t-N\t\t\t--use-lc-numeric\n" -#: main.c:756 +#: main.c:762 +#, fuzzy +msgid "\t-o[file]\t\t--pretty-print[=file]\n" +msgstr "\t-p[file]\t\t--profile[=file]\n" + +#: main.c:763 msgid "\t-O\t\t\t--optimize\n" msgstr "\t-O\t\t\t--optimize\n" -#: main.c:757 +#: main.c:764 msgid "\t-p[file]\t\t--profile[=file]\n" msgstr "\t-p[file]\t\t--profile[=file]\n" -#: main.c:758 +#: main.c:765 msgid "\t-P\t\t\t--posix\n" msgstr "\t-P\t\t\t--posix\n" -#: main.c:759 +#: main.c:766 msgid "\t-r\t\t\t--re-interval\n" msgstr "\t-r\t\t\t--re-interval\n" -#: main.c:761 -msgid "\t-R file\t\t\t--command=file\n" -msgstr "\t-R file\t\t\t--command=file\n" - -#: main.c:762 +#: main.c:767 msgid "\t-S\t\t\t--sandbox\n" msgstr "\t-S\t\t\t--sandbox\n" -#: main.c:763 +#: main.c:768 msgid "\t-t\t\t\t--lint-old\n" msgstr "\t-t\t\t\t--lint-old\n" -#: main.c:764 +#: main.c:769 msgid "\t-V\t\t\t--version\n" msgstr "\t-V\t\t\t--version\n" -#: main.c:766 +#: main.c:771 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "\t-W nostalgia\t\t--nostalgia\n" -#: main.c:769 +#: main.c:774 msgid "\t-Y\t\t--parsedebug\n" msgstr "\t-Y\t\t--parsedebug\n" @@ -1790,7 +1701,7 @@ msgstr "\t-Y\t\t--parsedebug\n" #. for this application. Please add _another line_ with the #. address for translation bugs. #. no-wrap -#: main.c:778 +#: main.c:783 msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" @@ -1805,7 +1716,7 @@ msgstr "" "翻訳ã«é–¢ã™ã‚‹ãƒã‚°ã¯<translation-team-ja@lists.sourceforge.net>ã«å ±å‘Šã—ã¦ãã ã•" "ã„。\n" -#: main.c:782 +#: main.c:787 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" @@ -1815,7 +1726,7 @@ msgstr "" "デフォルトè¨å®šã§ã¯ã€æ¨™æº–入力をèªã¿è¾¼ã¿ã€æ¨™æº–å‡ºåŠ›ã«æ›¸ã出ã—ã¾ã™ã€‚\n" "\n" -#: main.c:786 +#: main.c:791 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" @@ -1825,7 +1736,7 @@ msgstr "" "\tgawk '{ sum += $1 }; END { print sum }' file\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" -#: main.c:806 +#: main.c:811 #, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" @@ -1844,7 +1755,7 @@ msgstr "" "(at your option) any later version.\n" "\n" -#: main.c:814 +#: main.c:819 msgid "" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" @@ -1858,7 +1769,7 @@ msgstr "" "GNU General Public License for more details.\n" "\n" -#: main.c:820 +#: main.c:825 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program. If not, see http://www.gnu.org/licenses/.\n" @@ -1866,16 +1777,16 @@ msgstr "" "You should have received a copy of the GNU General Public License\n" "along with this program. If not, see http://www.gnu.org/licenses/.\n" -#: main.c:855 +#: main.c:860 msgid "-Ft does not set FS to tab in POSIX awk" msgstr "POSIX awk ã§ã¯ -Ft 㯠FS をタブã«è¨å®šã—ã¾ã›ã‚“" -#: main.c:1089 +#: main.c:1091 #, c-format msgid "unknown value for field spec: %d\n" msgstr "フィールド指定ã«ä¸æ˜Žãªå€¤ãŒã‚りã¾ã™: %d\n" -#: main.c:1170 +#: main.c:1172 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" @@ -1884,84 +1795,79 @@ msgstr "" "%s: オプション `-v' ã®å¼•æ•° `%s' ㌠`変数=代入値' ã®å½¢å¼ã«ãªã£ã¦ã„ã¾ã›ã‚“。\n" "\n" -#: main.c:1196 +#: main.c:1198 #, c-format msgid "`%s' is not a legal variable name" msgstr "`%s' ã¯ä¸æ£ãªå¤‰æ•°åã§ã™" -#: main.c:1199 +#: main.c:1201 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "`%s' ã¯å¤‰æ•°åã§ã¯ã‚りã¾ã›ã‚“。`%s=%s' ã®ãƒ•ァイルを探ã—ã¾ã™ã€‚" -#: main.c:1203 +#: main.c:1205 #, c-format msgid "cannot use gawk builtin `%s' as variable name" msgstr "gawk ã«çµ„ã¿è¾¼ã¿ã® `%s' ã¯å¤‰æ•°åã¨ã—ã¦ä½¿ç”¨å‡ºæ¥ã¾ã›ã‚“" -#: main.c:1208 +#: main.c:1210 #, c-format msgid "cannot use function `%s' as variable name" msgstr "関数 `%s' ã¯å¤‰æ•°åã¨ã—ã¦ä½¿ç”¨å‡ºæ¥ã¾ã›ã‚“" -#: main.c:1261 +#: main.c:1263 msgid "floating point exception" msgstr "æµ®å‹•å°æ•°ç‚¹ä¾‹å¤–" -#: main.c:1268 +#: main.c:1270 msgid "fatal error: internal error" msgstr "致命的エラー: 内部エラー" -#: main.c:1283 +#: main.c:1285 msgid "fatal error: internal error: segfault" msgstr "致命的エラー: 内部エラー: セグメンテーションé•å" -#: main.c:1295 +#: main.c:1297 msgid "fatal error: internal error: stack overflow" msgstr "致命的エラー: 内部エラー: スタックオーãƒãƒ¼ãƒ•ãƒãƒ¼" -#: main.c:1345 +#: main.c:1347 #, c-format msgid "no pre-opened fd %d" msgstr "fd %d ãŒäº‹å‰ã«é–‹ã„ã¦ã„ã¾ã›ã‚“。" -#: main.c:1352 +#: main.c:1354 #, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "事å‰ã« fd %d 用㫠/dev/null ã‚’é–‹ã‘ã¾ã›ã‚“。" -#: main.c:1375 main.c:1384 -#, c-format -msgid "could not find groups: %s" -msgstr "グループãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“: %s" - -#: msg.c:63 +#: msg.c:61 #, c-format msgid "cmd. line:" msgstr "コマンドライン:" -#: msg.c:107 +#: msg.c:105 msgid "error: " msgstr "エラー: " -#: node.c:406 +#: node.c:402 msgid "backslash at end of string" msgstr "æ–‡å—列ã®çµ‚りã«ãƒãƒƒã‚¯ã‚¹ãƒ©ãƒƒã‚·ãƒ¥ãŒä½¿ã‚れã¦ã„ã¾ã™ã€‚" -#: node.c:517 +#: node.c:479 #, c-format msgid "old awk does not support the `\\%c' escape sequence" msgstr "å¤ã„ awk 㯠`\\%c' エスケープシーケンスをサãƒãƒ¼ãƒˆã—ã¾ã›ã‚“" -#: node.c:568 +#: node.c:530 msgid "POSIX does not allow `\\x' escapes" msgstr "POSIX ã§ã¯ `\\x' エスケープã¯è¨±å¯ã•れã¦ã„ã¾ã›ã‚“" -#: node.c:574 +#: node.c:536 msgid "no hex digits in `\\x' escape sequence" msgstr "`\\x' エスケープシーケンスã«åå…進数ãŒã‚りã¾ã›ã‚“" -#: node.c:596 +#: node.c:558 #, c-format msgid "" "hex escape \\x%.*s of %d characters probably not interpreted the way you " @@ -1970,12 +1876,12 @@ msgstr "" "åå…進エスケープ \\x%.*s (%d æ–‡å—) ã¯ãŠãらã予期ã—ãŸã‚ˆã†ã«ã¯è§£é‡ˆã•れãªã„ã§" "ã—ょã†" -#: node.c:611 +#: node.c:573 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "エスケープシーケンス `\\%c' 㯠`%c' ã¨åŒç‰ã«æ‰±ã‚れã¾ã™" -#: node.c:750 +#: node.c:712 msgid "" "Invalid multibyte data detected. There may be a mismatch between your data " "and your locale." @@ -1993,16 +1899,16 @@ msgstr "%s %s `%s': fd フラグをå–å¾—ã§ãã¾ã›ã‚“: (fcntl F_GETFD: %s)" msgid "%s %s `%s': could not set close-on-exec: (fcntl F_SETFD: %s)" msgstr "%s %s `%s': close-on-exec ã‚’è¨å®šã§ãã¾ã›ã‚“: (fcntl F_SETFD: %s)" -#: profile.c:83 +#: profile.c:69 #, c-format msgid "could not open `%s' for writing: %s" msgstr "`%s' を書込ã¿ç”¨ã«é–‹ã‘ã¾ã›ã‚“ã§ã—ãŸ: %s" -#: profile.c:85 +#: profile.c:71 msgid "sending profile to standard error" msgstr "プãƒãƒ•ァイルを標準エラーã«é€ã£ã¦ã„ã¾ã™" -#: profile.c:203 +#: profile.c:187 #, c-format msgid "" "\t# %s block(s)\n" @@ -2011,7 +1917,7 @@ msgstr "" "\t# %s ブãƒãƒƒã‚¯\n" "\n" -#: profile.c:208 +#: profile.c:192 #, c-format msgid "" "\t# Rule(s)\n" @@ -2020,17 +1926,22 @@ msgstr "" "\t# ルール\n" "\n" -#: profile.c:279 +#: profile.c:266 #, c-format msgid "internal error: %s with null vname" msgstr "内部エラー: %s ã® vname ãŒç„¡åйã§ã™ã€‚" -#: profile.c:952 +#: profile.c:528 +#, fuzzy +msgid "internal error: builtin with null fname" +msgstr "内部エラー: %s ã® vname ãŒç„¡åйã§ã™ã€‚" + +#: profile.c:943 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "\t# gawk プãƒãƒ•ァイルã€ä½œæˆæ—¥æ™‚ %s\n" -#: profile.c:1331 +#: profile.c:1321 #, c-format msgid "" "\n" @@ -2039,92 +1950,169 @@ msgstr "" "\n" "\t# é–¢æ•°ä¸€è¦§ï¼ˆã‚¢ãƒ«ãƒ•ã‚¡ãƒ™ãƒƒãƒˆé †ï¼‰\n" -#: profile.c:1370 +#: profile.c:1359 #, c-format msgid "redir2str: unknown redirection type %d" msgstr "redir2str: 䏿˜Žãªãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆåž‹ %d ã§ã™" -#: re.c:572 +#: re.c:573 #, fuzzy, c-format msgid "range of the form `[%c-%c]' is locale dependent" msgstr "`[%c-%c]' å½¢å¼ã®ç¯„囲ã¯ãƒã‚±ãƒ¼ãƒ«ä¾å˜ã§ã™" -#: re.c:599 +#: re.c:600 #, c-format msgid "regexp component `%.*s' should probably be `[%.*s]'" msgstr "æ£è¦è¡¨ç¾ã®è¦ç´ `%.*s' ã¯ãŠãらã `[%.*s]' ã§ã‚ã‚‹ã¹ãã§ã™" -#: regcomp.c:132 +#: regcomp.c:131 msgid "Success" msgstr "æˆåŠŸã§ã™" -#: regcomp.c:135 +#: regcomp.c:134 msgid "No match" msgstr "一致ã—ã¾ã›ã‚“" -#: regcomp.c:138 +#: regcomp.c:137 msgid "Invalid regular expression" msgstr "ç„¡åŠ¹ãªæ£è¦è¡¨ç¾ã§ã™" -#: regcomp.c:141 +#: regcomp.c:140 msgid "Invalid collation character" msgstr "無効ãªç…§åˆæ–‡å—ã§ã™" -#: regcomp.c:144 +#: regcomp.c:143 msgid "Invalid character class name" msgstr "ç„¡åŠ¹ãªæ–‡å—クラスåã§ã™" -#: regcomp.c:147 +#: regcomp.c:146 msgid "Trailing backslash" msgstr "終端ã®ãƒãƒƒã‚¯ã‚¹ãƒ©ãƒƒã‚·ãƒ¥" -#: regcomp.c:150 +#: regcomp.c:149 msgid "Invalid back reference" msgstr "無効ãªå‰æ–¹å‚ç…§ã§ã™" -#: regcomp.c:153 +#: regcomp.c:152 msgid "Unmatched [ or [^" msgstr "[ ã¾ãŸã¯ [^ ãŒä¸ä¸€è‡´ã§ã™" -#: regcomp.c:156 +#: regcomp.c:155 msgid "Unmatched ( or \\(" msgstr "( ã¾ãŸã¯ \\( ãŒä¸ä¸€è‡´ã§ã™" -#: regcomp.c:159 +#: regcomp.c:158 msgid "Unmatched \\{" msgstr "\\{ ãŒä¸ä¸€è‡´ã§ã™" -#: regcomp.c:162 +#: regcomp.c:161 msgid "Invalid content of \\{\\}" msgstr "\\{\\} ã®ä¸èº«ãŒç„¡åйã§ã™" -#: regcomp.c:165 +#: regcomp.c:164 msgid "Invalid range end" msgstr "無効ãªç¯„囲終了ã§ã™" -#: regcomp.c:168 +#: regcomp.c:167 msgid "Memory exhausted" msgstr "ãƒ¡ãƒ¢ãƒªã‚’ä½¿ã„æžœãŸã—ã¾ã—ãŸ" -#: regcomp.c:171 +#: regcomp.c:170 msgid "Invalid preceding regular expression" msgstr "無効ãªå‰æ–¹æ£è¦è¡¨ç¾ã§ã™" -#: regcomp.c:174 +#: regcomp.c:173 msgid "Premature end of regular expression" msgstr "æ£è¦è¡¨ç¾ãŒé€”ä¸ã§çµ‚了ã—ã¾ã—ãŸ" -#: regcomp.c:177 +#: regcomp.c:176 msgid "Regular expression too big" msgstr "æ£è¦è¡¨ç¾ãŒå¤§ãã™ãŽã¾ã™" -#: regcomp.c:180 +#: regcomp.c:179 msgid "Unmatched ) or \\)" msgstr ") ã¾ãŸã¯ \\) ãŒä¸ä¸€è‡´ã§ã™" -#: regcomp.c:701 +#: regcomp.c:700 msgid "No previous regular expression" msgstr "以å‰ã«æ£è¦è¡¨ç¾ãŒã‚りã¾ã›ã‚“" +#~ msgid "attempt to use function `%s' as an array" +#~ msgstr "関数 `%s' ã‚’é…列ã¨ã—ã¦ä½¿ç”¨ã™ã‚‹è©¦ã¿ã§ã™" + +#~ msgid "reference to uninitialized element `%s[\"%.*s\"]'" +#~ msgstr "åˆæœŸåŒ–ã•れã¦ã„ãªã„è¦ç´ `%s[\"%.*s\"]' ã¸ã®å‚ç…§ã§ã™" + +#~ msgid "subscript of array `%s' is null string" +#~ msgstr "é…列 `%s' ã®æ·»å—㌠NULL æ–‡å—列ã§ã™" + +#~ msgid "%s: empty (null)\n" +#~ msgstr "%s: 空 (null)\n" + +#~ msgid "%s: empty (zero)\n" +#~ msgstr "%s: 空 (zero)\n" + +#~ msgid "%s: table_size = %d, array_size = %d\n" +#~ msgstr "" +#~ "%s: テーブルサイズ (table_size) = %d, é…列サイズ (array_size) = %d\n" + +#~ msgid "%s: is parameter\n" +#~ msgstr "%s: 仮引数ã§ã™\n" + +#~ msgid "%s: array_ref to %s\n" +#~ msgstr "%s: %s ã¸ã®é…列å‚ç…§ (array_ref) ã§ã™\n" + +#~ msgid "use of non-array as array" +#~ msgstr "é…列ã§ãªã„ã‚‚ã®ã‚’é…列ã¨ã—ã¦ä½¿ç”¨ã—ã¦ã„ã¾ã™" + +#~ msgid "can't use function name `%s' as variable or array" +#~ msgstr "関数å `%s' ã¯å¤‰æ•°ã¾ãŸã¯é…列ã¨ã—ã¦ä½¿ç”¨å‡ºæ¥ã¾ã›ã‚“" + +#~ msgid "attempt to use array `%s[\"%.*s\"]' in a scalar context" +#~ msgstr "スカラーコンテã‚スト内ã§é…列 `%s[\"%.*s\"]' ã®ä½¿ç”¨ã®è©¦ã¿ã§ã™" + +#~ msgid "assignment used in conditional context" +#~ msgstr "æ¡ä»¶ã‚³ãƒ³ãƒ†ã‚スト内ã§ä»£å…¥ãŒä½¿ç”¨ã•れã¾ã—ãŸ" + +#~ msgid "statement has no effect" +#~ msgstr "æ–‡ã«åŠ¹æžœãŒã‚りã¾ã›ã‚“" + +#~ msgid "" +#~ "for loop: array `%s' changed size from %ld to %ld during loop execution" +#~ msgstr "" +#~ "for ループ: ループ実行ä¸ã«é…列 `%s' ã®ã‚µã‚¤ã‚ºãŒ %ld ã‹ã‚‰ %ld ã¸å¤‰æ›´ã•れã¾ã—" +#~ "ãŸ" + +#~ msgid "function called indirectly through `%s' does not exist" +#~ msgstr "`%s' を通ã—ã¦é–“接的ã«å‘¼ã³å‡ºã•れãŸé–¢æ•°ãŒå˜åœ¨ã—ã¾ã›ã‚“" + +#~ msgid "function `%s' not defined" +#~ msgstr "関数 `%s' ã¯å®šç¾©ã•れã¦ã„ã¾ã›ã‚“" + +#~ msgid "non-redirected `getline' invalid inside `%s' rule" +#~ msgstr "`%s' ルールã®å†…å´ã§ã¯ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã•れã¦ã„ãªã„ `getline' ã¯ç„¡åйã§ã™" + +#~ msgid "error reading input file `%s': %s" +#~ msgstr "入力ファイル `%s' ã‚’èªã¿è¾¼ã¿ä¸ã«ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—ãŸ: %s" + +#~ msgid "`nextfile' cannot be called from a `%s' rule" +#~ msgstr "`nextfile' 㯠`%s' ルールã‹ã‚‰å‘¼ã³å‡ºã™ã“ã¨ãŒå‡ºæ¥ã¾ã›ã‚“" + +#, fuzzy +#~ msgid "`exit' cannot be called in the current context" +#~ msgstr "`next' 㯠`%s' ã‹ã‚‰å‘¼ã³å‡ºã™ã“ã¨ãŒå‡ºæ¥ã¾ã›ã‚“" + +#~ msgid "`next' cannot be called from a `%s' rule" +#~ msgstr "`next' 㯠`%s' ã‹ã‚‰å‘¼ã³å‡ºã™ã“ã¨ãŒå‡ºæ¥ã¾ã›ã‚“" + +#~ msgid "Sorry, don't know how to interpret `%s'" +#~ msgstr "申ã—訳ã‚りã¾ã›ã‚“㌠`%s' ã‚’ã©ã®ã‚ˆã†ã«è§£é‡ˆã™ã‚‹ã‹åˆ†ã‹ã‚Šã¾ã›ã‚“" + +#~ msgid "\t-R file\t\t\t--command=file\n" +#~ msgstr "\t-R file\t\t\t--command=file\n" + +#~ msgid "could not find groups: %s" +#~ msgstr "グループãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“: %s" + #~ msgid "assignment is not allowed to result of builtin function" #~ msgstr "çµ„è¾¼é–¢æ•°ã®æˆ»ã‚Šå€¤ã¸ã®ä»£å…¥ã¯è¨±å¯ã•れã¦ã„ã¾ã›ã‚“" Binary files differ@@ -1,17 +1,17 @@ # Dutch translations for GNU gawk. -# Copyright (C) 2011 Free Software Foundation, Inc. +# Copyright (C) 2012 Free Software Foundation, Inc. # This file is distributed under the same license as the gawk package. # -# And so it goes. +# Als het schone blinkt. # -# Benno Schulenberg <benno@vertaalt.nl>, 2005, 2007, 2010, 2011. +# Benno Schulenberg <benno@vertaalt.nl>, 2005, 2007, 2010, 2011, 2012. # Erwin Poeze <erwin.poeze@gmail.com>, 2009. msgid "" msgstr "" -"Project-Id-Version: gawk 4.0.0\n" +"Project-Id-Version: gawk 4.0.0h\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" -"POT-Creation-Date: 2011-11-14 21:46+0200\n" -"PO-Revision-Date: 2011-07-17 21:44+0200\n" +"POT-Creation-Date: 2012-04-08 12:18+0300\n" +"PO-Revision-Date: 2012-01-30 20:40+0100\n" "Last-Translator: Benno Schulenberg <benno@vertaalt.nl>\n" "Language-Team: Dutch <vertaling@vrijschrift.org>\n" "Language: nl\n" @@ -21,505 +21,462 @@ msgstr "" "X-Generator: Lokalize 1.0\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: array.c:140 +#: array.c:267 #, c-format msgid "from %s" msgstr "van %s" -#: array.c:248 +#: array.c:367 msgid "attempt to use a scalar value as array" msgstr "scalaire waarde wordt gebruikt als array" -#: array.c:251 -#, c-format -msgid "attempt to use function `%s' as an array" -msgstr "functie '%s' wordt gebruikt als array" - -#: array.c:254 +#: array.c:369 #, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "scalaire parameter '%s' wordt gebruikt als array" -#: array.c:257 +#: array.c:372 #, c-format msgid "attempt to use scalar `%s' as an array" msgstr "scalair '%s' wordt gebruikt als array" -#: array.c:302 array.c:707 builtin.c:84 builtin.c:1384 builtin.c:1426 -#: builtin.c:1439 builtin.c:1858 builtin.c:1870 eval.c:1135 eval.c:1139 -#: eval.c:1495 eval.c:1812 +#: array.c:419 array.c:585 builtin.c:85 builtin.c:1389 builtin.c:1431 +#: builtin.c:1444 builtin.c:1862 builtin.c:1874 eval.c:1096 eval.c:1100 +#: eval.c:1500 #, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "array '%s' wordt gebruikt in een scalaire context" -#: array.c:513 -#, c-format -msgid "reference to uninitialized element `%s[\"%.*s\"]'" -msgstr "verwijzing naar ongeïnitialiseerd element '%s[\"%.*s\"]'" - -#: array.c:519 -#, c-format -msgid "subscript of array `%s' is null string" -msgstr "index van array '%s' is lege string" - -#: array.c:723 +#: array.c:592 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "delete: index '%s' niet in array '%s'" -#: array.c:734 eval.c:1865 +#: array.c:606 #, c-format msgid "attempt to use scalar `%s[\"%.*s\"]' as an array" msgstr "scalair '%s[\"%.*s\"]' wordt gebruikt als array" -#: array.c:910 -#, c-format -msgid "%s: empty (null)\n" -msgstr "%s: leeg (nil)\n" - -#: array.c:915 -#, c-format -msgid "%s: empty (zero)\n" -msgstr "%s: leeg (nul)\n" - -#: array.c:919 -#, c-format -msgid "%s: table_size = %d, array_size = %d\n" -msgstr "%s: tabelgrootte = %d, arraygrootte = %d\n" - -#: array.c:954 -#, c-format -msgid "%s: is parameter\n" -msgstr "%s: is een parameter\n" - -#: array.c:958 -#, c-format -msgid "%s: array_ref to %s\n" -msgstr "%s: array-verwijzing naar %s\n" - -#: array.c:963 -msgid "adump: argument not an array" +#: array.c:794 +#, fuzzy +msgid "adump: first argument not an array" msgstr "adump: argument is geen array" -#: array.c:1086 +#: array.c:833 msgid "asort: second argument not an array" msgstr "asort: tweede argument is geen array" -#: array.c:1087 +#: array.c:834 msgid "asorti: second argument not an array" msgstr "asorti: tweede argument is geen array" -#: array.c:1094 +#: array.c:841 msgid "asort: first argument not an array" msgstr "asort: eerste argument is geen array" -#: array.c:1095 +#: array.c:842 msgid "asorti: first argument not an array" msgstr "asorti: eerste argument is geen array" -#: array.c:1102 +#: array.c:849 msgid "asort: cannot use a subarray of first arg for second arg" msgstr "" "asort: een subarray van het eerste argument kan niet als tweede argument " "gebruikt worden" -#: array.c:1103 +#: array.c:850 msgid "asorti: cannot use a subarray of first arg for second arg" msgstr "" "asorti: een subarray van het eerste argument kan niet als tweede argument " "gebruikt worden" -#: array.c:1108 +#: array.c:855 msgid "asort: cannot use a subarray of second arg for first arg" msgstr "" "asort: een subarray van het tweede argument kan niet als eerste argument " "gebruikt worden" -#: array.c:1109 +#: array.c:856 msgid "asorti: cannot use a subarray of second arg for first arg" msgstr "" "asorti: een subarray van het tweede argument kan niet als eerste argument " "gebruikt worden" -#: array.c:1659 +#: array.c:1329 #, c-format msgid "`%s' is invalid as a function name" msgstr "'%s' is ongeldig als functienaam" -#: array.c:1663 +#: array.c:1333 #, c-format msgid "sort comparison function `%s' is not defined" msgstr "sorteervergelijkingsfunctie '%s' is niet gedefinieerd" -#: awkgram.y:249 +#: awkgram.y:223 #, c-format msgid "%s blocks must have an action part" msgstr "%s-blokken horen een actiedeel te hebben" -#: awkgram.y:252 +#: awkgram.y:226 msgid "each rule must have a pattern or an action part" msgstr "elke regel hoort een patroon of een actiedeel te hebben" -#: awkgram.y:323 awkgram.y:334 +#: awkgram.y:295 awkgram.y:306 msgid "old awk does not support multiple `BEGIN' or `END' rules" msgstr "oude 'awk' staat meerdere 'BEGIN'- en 'END'-regels niet toe" -#: awkgram.y:371 +#: awkgram.y:343 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "'%s' is een ingebouwde functie en is niet te herdefiniëren" -#: awkgram.y:432 +#: awkgram.y:389 msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "regexp-constante '//' lijkt op C-commentaar, maar is het niet" -#: awkgram.y:436 +#: awkgram.y:393 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "regexp-constante '/%s/' lijkt op C-commentaar, maar is het niet" -#: awkgram.y:528 +#: awkgram.y:485 #, c-format msgid "duplicate case values in switch body: %s" msgstr "dubbele 'case'-waarde in 'switch'-opdracht: %s" -#: awkgram.y:549 +#: awkgram.y:506 msgid "duplicate `default' detected in switch body" msgstr "dubbele 'default' in 'switch'-opdracht" -#: awkgram.y:809 +#: awkgram.y:766 msgid "`break' is not allowed outside a loop or switch" msgstr "'break' buiten een lus of 'switch'-opdracht is niet toegestaan" -#: awkgram.y:818 +#: awkgram.y:775 msgid "`continue' is not allowed outside a loop" msgstr "'continue' buiten een lus is niet toegestaan" -#: awkgram.y:828 +#: awkgram.y:785 #, c-format msgid "`next' used in %s action" msgstr "'next' wordt gebruikt in %s-actie" -#: awkgram.y:836 +#: awkgram.y:793 msgid "`nextfile' is a gawk extension" msgstr "'nextfile' is een gawk-uitbreiding" -#: awkgram.y:841 +#: awkgram.y:798 #, c-format msgid "`nextfile' used in %s action" msgstr "'nextfile' wordt gebruikt in %s-actie" -#: awkgram.y:865 +#: awkgram.y:822 msgid "`return' used outside function context" msgstr "'return' wordt gebruikt buiten functiecontext" -#: awkgram.y:925 +#: awkgram.y:892 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "" "kale 'print' in BEGIN- of END-regel moet vermoedelijk 'print \"\"' zijn" -#: awkgram.y:995 awkgram.y:999 awkgram.y:1023 +#: awkgram.y:962 awkgram.y:966 awkgram.y:990 msgid "`delete array' is a gawk extension" msgstr "'delete array' is een gawk-uitbreiding" -#: awkgram.y:1019 +#: awkgram.y:986 msgid "`delete(array)' is a non-portable tawk extension" msgstr "'delete(array)' is een niet-overdraagbare 'tawk'-uitbreiding" -#: awkgram.y:1135 +#: awkgram.y:1102 msgid "multistage two-way pipelines don't work" msgstr "meerfase-tweerichtings-pijplijnen werken niet" -#: awkgram.y:1238 +#: awkgram.y:1205 msgid "regular expression on right of assignment" msgstr "reguliere expressie rechts van toewijzing" -#: awkgram.y:1249 +#: awkgram.y:1216 msgid "regular expression on left of `~' or `!~' operator" msgstr "reguliere expressie links van operator '~' of '!~'" -#: awkgram.y:1265 awkgram.y:1419 +#: awkgram.y:1232 awkgram.y:1383 msgid "old awk does not support the keyword `in' except after `for'" msgstr "oude 'awk' kent het sleutelwoord 'in' niet, behalve na 'for'" -#: awkgram.y:1275 +#: awkgram.y:1242 msgid "regular expression on right of comparison" msgstr "reguliere expressie rechts van vergelijking" -#: awkgram.y:1394 +#: awkgram.y:1358 #, c-format msgid "`getline var' invalid inside `%s' rule" msgstr "'getline var' is ongeldig binnen een '%s'-regel" -#: awkgram.y:1397 eval.c:2504 +#: awkgram.y:1361 #, c-format msgid "`getline' invalid inside `%s' rule" msgstr "'getline' is ongeldig binnen een '%s'-regel" -#: awkgram.y:1402 +#: awkgram.y:1366 msgid "non-redirected `getline' undefined inside END action" msgstr "niet-omgeleide 'getline' is ongedefinieerd binnen een END-actie" -#: awkgram.y:1421 +#: awkgram.y:1385 msgid "old awk does not support multidimensional arrays" msgstr "oude 'awk' kent geen meerdimensionale arrays" -#: awkgram.y:1517 +#: awkgram.y:1481 msgid "call of `length' without parentheses is not portable" msgstr "aanroep van 'length' zonder haakjes is niet overdraagbaar" -#: awkgram.y:1580 +#: awkgram.y:1545 msgid "indirect function calls are a gawk extension" msgstr "indirecte functieaanroepen zijn een gawk-uitbreiding" -#: awkgram.y:1593 +#: awkgram.y:1558 #, c-format msgid "can not use special variable `%s' for indirect function call" msgstr "" "kan speciale variabele '%s' niet voor indirecte functieaanroep gebruiken" -#: awkgram.y:1671 +#: awkgram.y:1636 msgid "invalid subscript expression" msgstr "ongeldige index-expressie" -#: awkgram.y:1711 -msgid "use of non-array as array" -msgstr "non-array wordt gebruikt als array" - -#: awkgram.y:1975 awkgram.y:1995 msg.c:98 +#: awkgram.y:1936 awkgram.y:1956 msg.c:96 msgid "warning: " msgstr "waarschuwing: " -#: awkgram.y:1993 msg.c:130 +#: awkgram.y:1954 msg.c:128 msgid "fatal: " msgstr "fataal: " -#: awkgram.y:2043 +#: awkgram.y:2004 msgid "unexpected newline or end of string" msgstr "onverwacht regeleinde of einde van string" -#: awkgram.y:2300 awkgram.y:2358 awkgram.y:2542 +#: awkgram.y:2269 awkgram.y:2327 awkgram.y:2515 #, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "kan bronbestand '%s' niet openen om te lezen (%s)" -#: awkgram.y:2301 awkgram.y:2359 builtin.c:122 +#: awkgram.y:2270 awkgram.y:2328 builtin.c:124 msgid "reason unknown" msgstr "reden onbekend" -#: awkgram.y:2317 +#: awkgram.y:2286 #, c-format msgid "already included source file `%s'" msgstr "bronbestand '%s' is reeds ingesloten" -#: awkgram.y:2343 +#: awkgram.y:2312 msgid "@include is a gawk extension" msgstr "'@include' is een gawk-uitbreiding" -#: awkgram.y:2349 +#: awkgram.y:2318 msgid "empty filename after @include" msgstr "lege bestandsnaam na '@include'" -#: awkgram.y:2494 +#: awkgram.y:2467 msgid "empty program text on command line" msgstr "lege programmatekst op commandoregel" -#: awkgram.y:2609 +#: awkgram.y:2582 #, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "kan bronbestand '%s' niet lezen (%s)" -#: awkgram.y:2620 +#: awkgram.y:2593 #, c-format msgid "source file `%s' is empty" msgstr "bronbestand '%s' is leeg" -#: awkgram.y:2805 +#: awkgram.y:2770 msgid "source file does not end in newline" msgstr "bronbestand eindigt niet met een regeleindeteken (LF)" -#: awkgram.y:2882 +#: awkgram.y:2874 msgid "unterminated regexp ends with `\\' at end of file" msgstr "onafgesloten reguliere expressie eindigt met '\\' aan bestandseinde" -#: awkgram.y:2906 +#: awkgram.y:2898 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "%s: %d: regexp-optie '/.../%c' van 'tawk' werkt niet in gawk" -#: awkgram.y:2910 +#: awkgram.y:2902 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "regexp-optie '/.../%c' van 'tawk' werkt niet in gawk" -#: awkgram.y:2917 +#: awkgram.y:2909 msgid "unterminated regexp" msgstr "onafgesloten reguliere expressie" -#: awkgram.y:2921 +#: awkgram.y:2913 msgid "unterminated regexp at end of file" msgstr "onafgesloten reguliere expressie aan bestandseinde" -#: awkgram.y:2980 +#: awkgram.y:2972 msgid "use of `\\ #...' line continuation is not portable" msgstr "gebruik van regelvoortzetting '\\ #...' is niet overdraagbaar" -#: awkgram.y:2996 +#: awkgram.y:2988 msgid "backslash not last character on line" msgstr "backslash is niet het laatste teken op de regel" -#: awkgram.y:3057 +#: awkgram.y:3049 msgid "POSIX does not allow operator `**='" msgstr "POSIX staat operator '**=' niet toe" -#: awkgram.y:3059 +#: awkgram.y:3051 msgid "old awk does not support operator `**='" msgstr "oude 'awk' kent de operator '**=' niet" -#: awkgram.y:3068 +#: awkgram.y:3060 msgid "POSIX does not allow operator `**'" msgstr "POSIX staat operator '**' niet toe" -#: awkgram.y:3070 +#: awkgram.y:3062 msgid "old awk does not support operator `**'" msgstr "oude 'awk' kent de operator '**' niet" -#: awkgram.y:3105 +#: awkgram.y:3097 msgid "operator `^=' is not supported in old awk" msgstr "oude 'awk' kent de operator '^=' niet" -#: awkgram.y:3113 +#: awkgram.y:3105 msgid "operator `^' is not supported in old awk" msgstr "oude 'awk' kent de operator '^' niet" -#: awkgram.y:3206 awkgram.y:3222 +#: awkgram.y:3198 awkgram.y:3214 msgid "unterminated string" msgstr "onafgesloten string" -#: awkgram.y:3418 +#: awkgram.y:3410 #, c-format msgid "invalid char '%c' in expression" msgstr "ongeldig teken '%c' in expressie" -#: awkgram.y:3465 +#: awkgram.y:3457 #, c-format msgid "`%s' is a gawk extension" msgstr "'%s' is een gawk-uitbreiding" -#: awkgram.y:3470 +#: awkgram.y:3462 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "'%s' is een uitbreiding door Bell Labs" -#: awkgram.y:3475 +#: awkgram.y:3467 #, c-format msgid "POSIX does not allow `%s'" msgstr "POSIX staat '%s' niet toe" -#: awkgram.y:3483 +#: awkgram.y:3475 #, c-format msgid "`%s' is not supported in old awk" msgstr "oude 'awk' kent '%s' niet" -#: awkgram.y:3550 +#: awkgram.y:3542 msgid "`goto' considered harmful!\n" msgstr "'goto' wordt als schadelijk beschouwd!\n" -#: awkgram.y:3601 +#: awkgram.y:3576 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "%d is een ongeldig aantal argumenten voor %s" -#: awkgram.y:3636 +#: awkgram.y:3611 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "%s: een stringwaarde als laatste vervangingsargument heeft geen effect" -#: awkgram.y:3641 +#: awkgram.y:3616 #, c-format msgid "%s third parameter is not a changeable object" msgstr "%s: derde parameter is geen veranderbaar object" -#: awkgram.y:3714 awkgram.y:3717 +#: awkgram.y:3689 awkgram.y:3692 msgid "match: third argument is a gawk extension" msgstr "match: derde argument is een gawk-uitbreiding" -#: awkgram.y:3771 awkgram.y:3774 +#: awkgram.y:3746 awkgram.y:3749 msgid "close: second argument is a gawk extension" msgstr "close: tweede argument is een gawk-uitbreiding" -#: awkgram.y:3786 +#: awkgram.y:3761 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "dcgettext(_\"...\") is onjuist: verwijder het liggende streepje" -#: awkgram.y:3801 +#: awkgram.y:3776 msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "dcngettext(_\"...\") is onjuist: verwijder het liggende streepje" -#: awkgram.y:3893 -#, c-format -msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" -msgstr "functie '%s': parameter #%d, '%s', dupliceert parameter #%d" - -#: awkgram.y:3935 +#: awkgram.y:3842 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "functie '%s': parameter '%s' schaduwt een globale variabele" -#: awkgram.y:4093 +#: awkgram.y:3885 #, c-format msgid "could not open `%s' for writing (%s)" msgstr "kan '%s' niet openen om te schrijven (%s)" -#: awkgram.y:4094 +#: awkgram.y:3886 msgid "sending variable list to standard error" msgstr "variabelenlijst gaat naar standaardfoutuitvoer" -#: awkgram.y:4100 +#: awkgram.y:3894 #, c-format msgid "%s: close failed (%s)" msgstr "%s: sluiten is mislukt (%s)" -#: awkgram.y:4152 +#: awkgram.y:3919 msgid "shadow_funcs() called twice!" msgstr "shadow_funcs() twee keer aangeroepen!" -#: awkgram.y:4158 +#: awkgram.y:3927 msgid "there were shadowed variables." msgstr "er waren geschaduwde variabelen." -#: awkgram.y:4188 +#: awkgram.y:3998 +#, c-format +msgid "function name `%s' previously defined" +msgstr "functienaam '%s' is al eerder gedefinieerd" + +#: awkgram.y:4044 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "functie '%s': kan functienaam niet als parameternaam gebruiken" -#: awkgram.y:4192 +#: awkgram.y:4047 #, c-format msgid "function `%s': can't use special variable `%s' as a function parameter" msgstr "" "functie '%s': kan speciale variabele '%s' niet als functieparameter gebruiken" -#: awkgram.y:4208 +#: awkgram.y:4055 #, c-format -msgid "function name `%s' previously defined" -msgstr "functienaam '%s' is al eerder gedefinieerd" +msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" +msgstr "functie '%s': parameter #%d, '%s', dupliceert parameter #%d" -#: awkgram.y:4376 awkgram.y:4382 +#: awkgram.y:4134 awkgram.y:4140 #, c-format msgid "function `%s' called but never defined" msgstr "functie '%s' wordt aangeroepen maar is nergens gedefinieerd" -#: awkgram.y:4385 +#: awkgram.y:4143 #, c-format msgid "function `%s' defined but never called directly" msgstr "functie '%s' is gedefinieerd maar wordt nergens direct aangeroepen" -#: awkgram.y:4417 +#: awkgram.y:4175 #, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "regexp-constante als parameter #%d levert booleanwaarde op" -#: awkgram.y:4526 +#: awkgram.y:4221 #, c-format msgid "" "function `%s' called with space between name and `(',\n" @@ -528,230 +485,230 @@ msgstr "" "functie '%s' wordt aangeroepen met een spatie tussen naam en '(',\n" "of wordt gebruikt als variabele of array" -#: awkgram.y:4773 eval.c:2056 +#: awkgram.y:4429 msgid "division by zero attempted" msgstr "deling door nul" -#: awkgram.y:4782 eval.c:2072 +#: awkgram.y:4438 #, c-format msgid "division by zero attempted in `%%'" msgstr "deling door nul in '%%'" -#: builtin.c:120 +#: builtin.c:122 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "%s naar \"%s\" is mislukt (%s)" -#: builtin.c:121 +#: builtin.c:123 msgid "standard output" msgstr "standaarduitvoer" -#: builtin.c:135 +#: builtin.c:137 msgid "exp: received non-numeric argument" msgstr "exp: argument is geen getal" -#: builtin.c:141 +#: builtin.c:143 #, c-format msgid "exp: argument %g is out of range" msgstr "exp: argument %g ligt buiten toegestane bereik" -#: builtin.c:200 +#: builtin.c:202 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "" "fflush: kan pijp niet leegmaken: '%s' is geopend om te lezen, niet om te " "schrijven" -#: builtin.c:203 +#: builtin.c:205 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "" "fflush: kan bestand niet leegmaken: '%s' is geopend om te lezen, niet om te " "schrijven" -#: builtin.c:215 +#: builtin.c:217 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "fflush: '%s' is geen open bestand, pijp, of co-proces" -#: builtin.c:333 +#: builtin.c:335 msgid "index: received non-string first argument" msgstr "index: eerste argument is geen string" -#: builtin.c:335 +#: builtin.c:337 msgid "index: received non-string second argument" msgstr "index: tweede argument is geen string" -#: builtin.c:457 +#: builtin.c:461 msgid "int: received non-numeric argument" msgstr "int: argument is geen getal" -#: builtin.c:493 +#: builtin.c:497 msgid "length: received array argument" msgstr "length: argument is een array" -#: builtin.c:496 +#: builtin.c:500 msgid "`length(array)' is a gawk extension" msgstr "'length(array)' is een gawk-uitbreiding" -#: builtin.c:504 +#: builtin.c:508 msgid "length: received non-string argument" msgstr "length: argument is geen string" -#: builtin.c:535 +#: builtin.c:539 msgid "log: received non-numeric argument" msgstr "log: argument is geen getal" -#: builtin.c:538 +#: builtin.c:542 #, c-format msgid "log: received negative argument %g" msgstr "log: argument %g is negatief" -#: builtin.c:694 builtin.c:699 +#: builtin.c:698 builtin.c:703 msgid "fatal: must use `count$' on all formats or none" msgstr "fataal: 'count$' hoort in alle opmaken gebruikt te worden, of in geen" -#: builtin.c:761 +#: builtin.c:766 #, c-format msgid "field width is ignored for `%%' specifier" msgstr "veldbreedte wordt genegeerd voor opmaakaanduiding '%%'" -#: builtin.c:763 +#: builtin.c:768 #, c-format msgid "precision is ignored for `%%' specifier" msgstr "veldprecisie wordt genegeerd voor opmaakaanduiding '%%'" -#: builtin.c:765 +#: builtin.c:770 #, c-format msgid "field width and precision are ignored for `%%' specifier" msgstr "veldbreedte en -precisie worden genegeerd voor opmaakaanduiding '%%'" -#: builtin.c:816 +#: builtin.c:821 msgid "fatal: `$' is not permitted in awk formats" msgstr "fataal: '$' is niet toegestaan in awk-opmaak" -#: builtin.c:825 +#: builtin.c:830 msgid "fatal: arg count with `$' must be > 0" msgstr "fataal: het aantal argumenten met '$' moet > 0 zijn" -#: builtin.c:829 +#: builtin.c:834 #, c-format msgid "fatal: arg count %ld greater than total number of supplied arguments" msgstr "fataal: argumentental %ld is groter dan het gegeven aantal argumenten" -#: builtin.c:833 +#: builtin.c:838 msgid "fatal: `$' not permitted after period in format" msgstr "fataal: '$' is niet toegestaan na een punt in de opmaak" -#: builtin.c:849 +#: builtin.c:854 msgid "fatal: no `$' supplied for positional field width or precision" msgstr "fataal: geen '$' opgegeven bij positionele veldbreedte of -precisie" -#: builtin.c:920 +#: builtin.c:925 msgid "`l' is meaningless in awk formats; ignored" msgstr "'l' is betekenisloos in awk-opmaak; genegeerd" -#: builtin.c:924 +#: builtin.c:929 msgid "fatal: `l' is not permitted in POSIX awk formats" msgstr "fataal: 'l' is niet toegestaan in POSIX awk-opmaak" -#: builtin.c:937 +#: builtin.c:942 msgid "`L' is meaningless in awk formats; ignored" msgstr "'L' is betekenisloos in awk-opmaak; genegeerd" -#: builtin.c:941 +#: builtin.c:946 msgid "fatal: `L' is not permitted in POSIX awk formats" msgstr "fataal: 'L' is niet toegestaan in POSIX awk-opmaak" -#: builtin.c:954 +#: builtin.c:959 msgid "`h' is meaningless in awk formats; ignored" msgstr "'h' is betekenisloos in awk-opmaak; genegeerd" -#: builtin.c:958 +#: builtin.c:963 msgid "fatal: `h' is not permitted in POSIX awk formats" msgstr "fataal: 'h' is niet toegestaan in POSIX awk-opmaak" -#: builtin.c:1271 +#: builtin.c:1276 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "[s]printf: waarde %g ligt buiten toegestaan bereik voor opmaak '%%%c'" -#: builtin.c:1331 +#: builtin.c:1336 #, c-format msgid "ignoring unknown format specifier character `%c': no argument converted" msgstr "" "onbekend opmaakteken '%c' wordt genegeerd: geen argument is geconverteerd" -#: builtin.c:1336 +#: builtin.c:1341 msgid "fatal: not enough arguments to satisfy format string" msgstr "fataal: niet genoeg argumenten voor opmaakstring" -#: builtin.c:1338 +#: builtin.c:1343 msgid "^ ran out for this one" msgstr "niet genoeg ^ voor deze" -#: builtin.c:1345 +#: builtin.c:1350 msgid "[s]printf: format specifier does not have control letter" msgstr "[s]printf: opmaakaanduiding mist een stuurletter" -#: builtin.c:1348 +#: builtin.c:1353 msgid "too many arguments supplied for format string" msgstr "te veel argumenten voor opmaakstring" -#: builtin.c:1422 builtin.c:1433 +#: builtin.c:1427 builtin.c:1438 msgid "printf: no arguments" msgstr "printf: geen argumenten" -#: builtin.c:1474 +#: builtin.c:1479 msgid "sqrt: received non-numeric argument" msgstr "sqrt: argument is geen getal" -#: builtin.c:1478 +#: builtin.c:1483 #, c-format msgid "sqrt: called with negative argument %g" msgstr "sqrt: argument %g is negatief" -#: builtin.c:1502 +#: builtin.c:1507 #, c-format msgid "substr: length %g is not >= 1" msgstr "substr: lengte %g is niet >= 1" -#: builtin.c:1504 +#: builtin.c:1509 #, c-format msgid "substr: length %g is not >= 0" msgstr "substr: lengte %g is niet >= 0" -#: builtin.c:1511 +#: builtin.c:1516 #, c-format msgid "substr: non-integer length %g will be truncated" msgstr "substr: lengte %g is geen integer; wordt afgekapt" -#: builtin.c:1516 +#: builtin.c:1521 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "" "substr: lengte %g is te groot voor stringindexering; wordt verkort tot %g" -#: builtin.c:1528 +#: builtin.c:1533 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "substr: startindex %g is ongeldig; 1 wordt gebruikt" -#: builtin.c:1533 +#: builtin.c:1538 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "substr: startindex %g is geen integer; wordt afgekapt" -#: builtin.c:1558 +#: builtin.c:1563 msgid "substr: source string is zero length" msgstr "substr: bronstring heeft lengte nul" -#: builtin.c:1574 +#: builtin.c:1579 #, c-format msgid "substr: start index %g is past end of string" msgstr "substr: startindex %g ligt voorbij het einde van de string" -#: builtin.c:1582 +#: builtin.c:1587 #, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" @@ -759,227 +716,222 @@ msgstr "" "substr: lengte %g bij startindex %g is groter dan de lengte van het eerste " "argument (%lu)" -#: builtin.c:1656 +#: builtin.c:1661 msgid "strftime: format value in PROCINFO[\"strftime\"] has numeric type" msgstr "strftime: opmaakwaarde in PROCINFO[\"strftime\"] is numeriek" -#: builtin.c:1679 +#: builtin.c:1684 msgid "strftime: received non-numeric second argument" msgstr "strftime: tweede argument is geen getal" -#: builtin.c:1682 +#: builtin.c:1687 msgid "strftime: second argument less than 0 or too big for time_t" -msgstr "" +msgstr "strftime: tweede argument is kleiner dan nul of te groot voor 'time_t'" -#: builtin.c:1689 +#: builtin.c:1694 msgid "strftime: received non-string first argument" msgstr "strftime: eerste argument is geen string" -#: builtin.c:1695 +#: builtin.c:1701 msgid "strftime: received empty format string" msgstr "strftime: opmaakstring is leeg" -#: builtin.c:1761 +#: builtin.c:1767 msgid "mktime: received non-string argument" msgstr "mktime: argument is geen string" -#: builtin.c:1778 +#: builtin.c:1784 msgid "mktime: at least one of the values is out of the default range" msgstr "mktime: minstens één van waarden valt buiten het standaardbereik" -#: builtin.c:1813 +#: builtin.c:1819 msgid "'system' function not allowed in sandbox mode" msgstr "'system'-functie is niet toegestaan in sandbox-modus" -#: builtin.c:1818 +#: builtin.c:1824 msgid "system: received non-string argument" msgstr "system: argument is geen string" -#: builtin.c:1873 eval.c:1159 eval.c:1790 eval.c:1803 -#, c-format -msgid "reference to uninitialized variable `%s'" -msgstr "verwijzing naar ongeïnitialiseerde variabele '%s'" - -#: builtin.c:1940 +#: builtin.c:1942 #, c-format msgid "reference to uninitialized field `$%d'" msgstr "verwijzing naar ongeïnitialiseerd veld '$%d'" -#: builtin.c:2027 +#: builtin.c:2029 msgid "tolower: received non-string argument" msgstr "tolower: argument is geen string" -#: builtin.c:2061 +#: builtin.c:2063 msgid "toupper: received non-string argument" msgstr "toupper: argument is geen string" -#: builtin.c:2097 +#: builtin.c:2099 msgid "atan2: received non-numeric first argument" msgstr "atan2: eerste argument is geen getal" -#: builtin.c:2099 +#: builtin.c:2101 msgid "atan2: received non-numeric second argument" msgstr "atan2: tweede argument is geen getal" -#: builtin.c:2118 +#: builtin.c:2120 msgid "sin: received non-numeric argument" msgstr "sin: argument is geen getal" -#: builtin.c:2134 +#: builtin.c:2136 msgid "cos: received non-numeric argument" msgstr "cos: argument is geen getal" -#: builtin.c:2187 +#: builtin.c:2189 msgid "srand: received non-numeric argument" msgstr "srand: argument is geen getal" -#: builtin.c:2218 +#: builtin.c:2220 msgid "match: third argument is not an array" msgstr "match: derde argument is geen array" -#: builtin.c:2482 +#: builtin.c:2484 msgid "gensub: third argument of 0 treated as 1" msgstr "gensub: derde argument is 0; wordt beschouwd als 1" -#: builtin.c:2775 +#: builtin.c:2777 msgid "lshift: received non-numeric first argument" msgstr "lshift: eerste argument is geen getal" -#: builtin.c:2777 +#: builtin.c:2779 msgid "lshift: received non-numeric second argument" msgstr "lshift: tweede argument is geen getal" -#: builtin.c:2783 +#: builtin.c:2785 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "lshift(%lf, %lf): negatieve waarden geven rare resultaten" -#: builtin.c:2785 +#: builtin.c:2787 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "lshift(%lf, %lf): cijfers na de komma worden afgekapt" -#: builtin.c:2787 +#: builtin.c:2789 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "lshift(%lf, %lf): te grote opschuifwaarden geven rare resultaten" -#: builtin.c:2812 +#: builtin.c:2814 msgid "rshift: received non-numeric first argument" msgstr "rshift: eerste argument is geen getal" -#: builtin.c:2814 +#: builtin.c:2816 msgid "rshift: received non-numeric second argument" msgstr "rshift: tweede argument is geen getal" -#: builtin.c:2820 +#: builtin.c:2822 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "rshift(%lf, %lf): negatieve waarden geven rare resultaten" -#: builtin.c:2822 +#: builtin.c:2824 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "rshift(%lf, %lf): cijfers na de komma worden afgekapt" -#: builtin.c:2824 +#: builtin.c:2826 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "rshift(%lf, %lf): te grote opschuifwaarden geven rare resultaten" -#: builtin.c:2849 +#: builtin.c:2851 msgid "and: received non-numeric first argument" msgstr "and: eerste argument is geen getal" -#: builtin.c:2851 +#: builtin.c:2853 msgid "and: received non-numeric second argument" msgstr "and: tweede argument is geen getal" -#: builtin.c:2857 +#: builtin.c:2859 #, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "and(%lf, %lf): negatieve waarden geven rare resultaten" -#: builtin.c:2859 +#: builtin.c:2861 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "and(%lf, %lf): cijfers na de komma worden afgekapt" -#: builtin.c:2884 +#: builtin.c:2886 msgid "or: received non-numeric first argument" msgstr "or: eerste argument is geen getal" -#: builtin.c:2886 +#: builtin.c:2888 msgid "or: received non-numeric second argument" msgstr "or: tweede argument is geen getal" -#: builtin.c:2892 +#: builtin.c:2894 #, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "or(%lf, %lf): negatieve waarden geven rare resultaten" -#: builtin.c:2894 +#: builtin.c:2896 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "or(%lf, %lf): cijfers na de komma worden afgekapt" -#: builtin.c:2922 +#: builtin.c:2924 msgid "xor: received non-numeric first argument" msgstr "xor: eerste argument is geen getal" -#: builtin.c:2924 +#: builtin.c:2926 msgid "xor: received non-numeric second argument" msgstr "xor: tweede argument is geen getal" -#: builtin.c:2930 +#: builtin.c:2932 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "xor(%lf, %lf): negatieve waarden geven rare resultaten" -#: builtin.c:2932 +#: builtin.c:2934 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "xor(%lf, %lf): cijfers na de komma worden afgekapt" -#: builtin.c:2956 builtin.c:2962 +#: builtin.c:2958 builtin.c:2964 msgid "compl: received non-numeric argument" msgstr "compl: argument is geen getal" -#: builtin.c:2964 +#: builtin.c:2966 #, c-format msgid "compl(%lf): negative value will give strange results" msgstr "compl(%lf): negatieve waarden geven rare resultaten" -#: builtin.c:2966 +#: builtin.c:2968 #, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "compl(%lf): cijfers na de komma worden afgekapt" -#: builtin.c:3135 +#: builtin.c:3137 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "dcgettext: '%s' is geen geldige taalregio-deelcategorie" -#: eval.c:412 +#: eval.c:393 #, c-format msgid "unknown nodetype %d" msgstr "onbekend knooptype %d" -#: eval.c:423 eval.c:437 +#: eval.c:404 eval.c:418 #, c-format msgid "unknown opcode %d" msgstr "onbekende opcode %d" -#: eval.c:434 +#: eval.c:415 #, c-format msgid "opcode %s not an operator or keyword" msgstr "opcode %s is geen operator noch sleutelwoord" -#: eval.c:488 +#: eval.c:468 msgid "buffer overflow in genflags2str" msgstr "bufferoverloop in genflags2str()" -#: eval.c:698 +#: eval.c:678 #, c-format msgid "" "\n" @@ -990,218 +942,166 @@ msgstr "" "\t# Functieaanroepen-stack:\n" "\n" -#: eval.c:725 +#: eval.c:706 msgid "`IGNORECASE' is a gawk extension" msgstr "'IGNORECASE' is een gawk-uitbreiding" -#: eval.c:754 +#: eval.c:736 msgid "`BINMODE' is a gawk extension" msgstr "'BINMODE' is een gawk-uitbreiding" -#: eval.c:812 +#: eval.c:794 #, c-format msgid "BINMODE value `%s' is invalid, treated as 3" msgstr "BINMODE-waarde '%s' is ongeldig, wordt behandeld als 3" -#: eval.c:902 +#: eval.c:887 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "onjuiste opgave van '%sFMT': '%s'" -#: eval.c:980 +#: eval.c:969 msgid "turning off `--lint' due to assignment to `LINT'" msgstr "'--lint' wordt uitgeschakeld wegens toewijzing aan 'LINT'" -#: eval.c:1127 eval.c:1777 -#, c-format -msgid "can't use function name `%s' as variable or array" -msgstr "kan functienaam '%s' niet als variabele of array gebruiken" - -#: eval.c:1158 eval.c:1789 eval.c:1802 +#: eval.c:1119 #, c-format msgid "reference to uninitialized argument `%s'" msgstr "verwijzing naar ongeïnitialiseerd argument '%s'" -#: eval.c:1177 +#: eval.c:1120 +#, c-format +msgid "reference to uninitialized variable `%s'" +msgstr "verwijzing naar ongeïnitialiseerde variabele '%s'" + +#: eval.c:1138 msgid "attempt to field reference from non-numeric value" msgstr "veldverwijzingspoging via een waarde die geen getal is" -#: eval.c:1179 +#: eval.c:1140 msgid "attempt to field reference from null string" msgstr "veldverwijzingspoging via een lege string" -#: eval.c:1185 +#: eval.c:1146 #, c-format msgid "attempt to access field %ld" msgstr "toegangspoging tot veld %ld" -#: eval.c:1194 +#: eval.c:1155 #, c-format msgid "reference to uninitialized field `$%ld'" msgstr "verwijzing naar ongeïnitialiseerd veld '$%ld'" -#: eval.c:1256 +#: eval.c:1242 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "functie '%s' aangeroepen met meer argumenten dan gedeclareerd" -#: eval.c:1437 +#: eval.c:1436 #, c-format msgid "unwind_stack: unexpected type `%s'" msgstr "unwind_stack(): onverwacht type '%s'" -#: eval.c:1532 +#: eval.c:1536 msgid "division by zero attempted in `/='" msgstr "deling door nul in '/='" -#: eval.c:1539 +#: eval.c:1543 #, c-format msgid "division by zero attempted in `%%='" msgstr "deling door nul in '%%='" -#: eval.c:1876 eval.c:2122 -#, c-format -msgid "attempt to use array `%s[\"%.*s\"]' in a scalar context" -msgstr "array '%s[\"%.*s\"]' wordt gebruikt in een scalaire context" - -#: eval.c:1907 -msgid "assignment used in conditional context" -msgstr "toewijzing wordt gebruikt in een conditionele context" - -#: eval.c:1911 -msgid "statement has no effect" -msgstr "opdracht heeft geen effect" - -#: eval.c:2343 -#, c-format -msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" -msgstr "" -"for: array '%s' veranderde van grootte %ld naar %ld tijdens uitvoer van de " -"lus" - -#: eval.c:2458 -#, c-format -msgid "function called indirectly through `%s' does not exist" -msgstr "indirect (via '%s') aangeroepen functie bestaat niet" - -#: eval.c:2470 -#, c-format -msgid "function `%s' not defined" -msgstr "functie '%s' is niet gedefinieerd" - -#: eval.c:2511 -#, c-format -msgid "non-redirected `getline' invalid inside `%s' rule" -msgstr "niet-omgeleide 'getline' is ongeldig binnen een '%s'-regel" - -#: eval.c:2600 -#, c-format -msgid "error reading input file `%s': %s" -msgstr "fout tijdens lezen van invoerbestand '%s': %s" - -#: eval.c:2614 -#, c-format -msgid "`nextfile' cannot be called from a `%s' rule" -msgstr "'nextfile' kan niet aangeroepen worden in een '%s'-regel" - -#: eval.c:2694 -#, c-format -msgid "`next' cannot be called from a `%s' rule" -msgstr "'next' kan niet aangeroepen worden in een '%s'-regel" - -#: eval.c:2760 -#, c-format -msgid "Sorry, don't know how to interpret `%s'" -msgstr "Kan '%s' niet interpreteren" - -#: ext.c:64 +#: ext.c:70 msgid "extensions are not allowed in sandbox mode" msgstr "uitbreidingen zijn niet toegestaan in sandbox-modus" -#: ext.c:70 ext.c:75 +#: ext.c:73 msgid "`extension' is a gawk extension" msgstr "'extension' is een gawk-uitbreiding" -#: ext.c:85 -#, c-format -msgid "fatal: extension: cannot open `%s' (%s)\n" +#: ext.c:80 +#, fuzzy, c-format +msgid "extension: cannot open library `%s' (%s)\n" msgstr "fatale fout: extension: kan '%s' niet openen (%s)\n" -#: ext.c:94 -#, c-format +#: ext.c:86 +#, fuzzy, c-format msgid "" -"fatal: extension: library `%s': does not define " -"`plugin_is_GPL_compatible' (%s)\n" +"extension: library `%s': does not define `plugin_is_GPL_compatible' (%s)\n" msgstr "" "fatale fout: extension: bibliotheek '%s': definieert " "'plugin_is_GPL_compatible' niet (%s)\n" -#: ext.c:103 -#, c-format -msgid "fatal: extension: library `%s': cannot call function `%s' (%s)\n" +#: ext.c:91 +#, fuzzy, c-format +msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "" "fatale fout: extension: bibliotheek '%s': kan functie '%s' niet aanroepen " "(%s)\n" -#: ext.c:137 +#: ext.c:119 msgid "extension: missing function name" msgstr "extension: ontbrekende functienaam" -#: ext.c:142 +#: ext.c:124 #, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "extension: ongeldig teken '%c' in functienaam '%s'" -#: ext.c:151 +#: ext.c:132 #, c-format msgid "extension: can't redefine function `%s'" msgstr "extension: kan functie '%s' niet herdefiniëren" -#: ext.c:155 +#: ext.c:136 #, c-format msgid "extension: function `%s' already defined" msgstr "extension: functie '%s' is al gedefinieerd" -#: ext.c:160 +#: ext.c:140 #, c-format msgid "extension: function name `%s' previously defined" msgstr "extension: functienaam '%s' is al eerder gedefinieerd" -#: ext.c:162 +#: ext.c:142 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "extension: kan in gawk ingebouwde '%s' niet als functienaam gebruiken" -#: ext.c:166 +#: ext.c:145 #, c-format msgid "make_builtin: negative argument count for function `%s'" msgstr "make_builtin: negatief aantal argumenten voor functie '%s'" -#: ext.c:269 +#: ext.c:207 #, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "" "functie '%s' is gedefinieerd om niet meer dan %d argument(en) te accepteren" -#: ext.c:272 +#: ext.c:210 #, c-format msgid "function `%s': missing argument #%d" msgstr "functie '%s': ontbrekend argument #%d" -#: ext.c:289 +#: ext.c:227 #, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "functie '%s': argument #%d: een scalair wordt gebruikt als array" -#: ext.c:293 +#: ext.c:231 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "functie '%s': argument #%d: een array wordt gebruikt als scalair" -#: ext.c:306 +#: ext.c:245 msgid "Operation Not Supported" msgstr "Actie wordt niet ondersteund" +#: ext.c:257 +msgid "dynamic loading of library not supported" +msgstr "" + #: field.c:328 msgid "NF set to negative value" msgstr "NF is op een negatieve waarde gezet" @@ -1270,542 +1170,552 @@ msgstr "" "patsplit: een subarray van het vierde argument kan niet als tweede argument " "gebruikt worden" -#: field.c:1110 +#: field.c:1111 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "'FIELDWIDTHS' is een gawk-uitbreiding" -#: field.c:1173 +#: field.c:1175 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "ongeldige waarde voor FIELDWIDTHS, nabij '%s'" -#: field.c:1246 +#: field.c:1248 msgid "null string for `FS' is a gawk extension" msgstr "een lege string als 'FS' is een gawk-uitbreiding" -#: field.c:1250 +#: field.c:1252 msgid "old awk does not support regexps as value of `FS'" msgstr "oude 'awk' staat geen reguliere expressies toe als waarde van 'FS'" -#: field.c:1369 +#: field.c:1371 msgid "`FPAT' is a gawk extension" msgstr "'FPAT' is een gawk-uitbreiding" -#: getopt.c:574 getopt.c:590 -#, c-format -msgid "%s: option '%s' is ambiguous\n" +#: getopt.c:604 getopt.c:633 +#, fuzzy, c-format +msgid "%s: option '%s' is ambiguous; possibilities:" msgstr "%s: optie '%s' is niet eenduidig\n" -#: getopt.c:623 getopt.c:627 +#: getopt.c:679 getopt.c:683 #, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: optie '--%s' staat geen argument toe\n" -#: getopt.c:636 getopt.c:641 +#: getopt.c:692 getopt.c:697 #, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: optie '%c%s' staat geen argument toe\n" -#: getopt.c:684 getopt.c:703 +#: getopt.c:740 getopt.c:759 #, c-format msgid "%s: option '--%s' requires an argument\n" msgstr "%s: optie '--%s' vereist een argument\n" -#: getopt.c:741 getopt.c:744 +#: getopt.c:797 getopt.c:800 #, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: onbekende optie '--%s'\n" -#: getopt.c:752 getopt.c:755 +#: getopt.c:808 getopt.c:811 #, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: onbekende optie '%c%s'\n" -#: getopt.c:804 getopt.c:807 +#: getopt.c:860 getopt.c:863 #, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: ongeldige optie -- '%c'\n" -#: getopt.c:857 getopt.c:874 getopt.c:1082 getopt.c:1100 +#: getopt.c:916 getopt.c:933 getopt.c:1143 getopt.c:1161 #, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: optie vereist een argument -- '%c'\n" -#: getopt.c:930 getopt.c:946 +#: getopt.c:989 getopt.c:1005 #, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: optie '-W %s' is niet eenduidig\n" -#: getopt.c:970 getopt.c:988 +#: getopt.c:1029 getopt.c:1047 #, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: optie '-W %s' staat geen argument toe\n" -#: getopt.c:1009 getopt.c:1027 +#: getopt.c:1068 getopt.c:1086 #, c-format msgid "%s: option '-W %s' requires an argument\n" msgstr "%s: optie '-W %s' vereist een argument\n" -#: io.c:280 +#: io.c:315 #, c-format msgid "command line argument `%s' is a directory: skipped" msgstr "opdrachtregelargument '%s' is een map -- overgeslagen" -#: io.c:283 io.c:385 +#: io.c:318 io.c:421 #, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "kan bestand '%s' niet openen om te lezen (%s)" -#: io.c:501 +#: io.c:537 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "sluiten van bestandsdescriptor %d ('%s') is mislukt (%s)" -#: io.c:578 +#: io.c:614 msgid "redirection not allowed in sandbox mode" msgstr "omleiding is niet toegestaan in sandbox-modus" -#: io.c:612 +#: io.c:648 #, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "expressie in omleiding '%s' heeft alleen een getal als waarde" -#: io.c:618 +#: io.c:654 #, c-format msgid "expression for `%s' redirection has null string value" msgstr "expressie voor omleiding '%s' heeft een lege string als waarde" -#: io.c:624 +#: io.c:659 #, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "" "bestandsnaam '%s' voor omleiding '%s' kan het resultaat zijn van een " "logische expressie" -#: io.c:667 +#: io.c:702 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "onnodige mix van '>' en '>>' voor bestand '%.*s'" -#: io.c:720 +#: io.c:755 #, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "kan pijp '%s' niet openen voor uitvoer (%s)" -#: io.c:730 +#: io.c:765 #, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "kan pijp '%s' niet openen voor invoer (%s)" -#: io.c:753 +#: io.c:788 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "kan tweerichtings-pijp '%s' niet openen voor in- en uitvoer (%s)" -#: io.c:835 +#: io.c:870 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "kan niet omleiden van '%s' (%s)" -#: io.c:838 +#: io.c:873 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "kan niet omleiden naar '%s' (%s)" -#: io.c:889 +#: io.c:924 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "" "systeemgrens voor aantal open bestanden is bereikt: begonnen met multiplexen" -#: io.c:905 +#: io.c:940 #, c-format msgid "close of `%s' failed (%s)." msgstr "sluiten van '%s' is mislukt (%s)" -#: io.c:913 +#: io.c:948 msgid "too many pipes or input files open" msgstr "te veel pijpen of invoerbestanden geopend" -#: io.c:935 +#: io.c:970 msgid "close: second argument must be `to' or `from'" msgstr "close: tweede argument moet 'to' of 'from' zijn" -#: io.c:952 +#: io.c:987 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "close: '%.*s' is geen open bestand, pijp, of co-proces" -#: io.c:957 +#: io.c:992 msgid "close of redirection that was never opened" msgstr "sluiten van een nooit-geopende omleiding" -#: io.c:1054 +#: io.c:1089 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "" "close: omleiding '%s' is niet geopend met '|&'; tweede argument wordt " "genegeerd" -#: io.c:1070 +#: io.c:1105 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "afsluitwaarde %d bij mislukte sluiting van pijp '%s' (%s)" -#: io.c:1073 +#: io.c:1108 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "afsluitwaarde %d bij mislukte sluiting van bestand '%s' (%s)" -#: io.c:1093 +#: io.c:1128 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "geen expliciete sluiting van socket '%s' aangegeven" -#: io.c:1096 +#: io.c:1131 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "geen expliciete sluiting van co-proces '%s' aangegeven" -#: io.c:1099 +#: io.c:1134 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "geen expliciete sluiting van pijp '%s' aangegeven" -#: io.c:1102 +#: io.c:1137 #, c-format msgid "no explicit close of file `%s' provided" msgstr "geen expliciete sluiting van bestand '%s' aangegeven" -#: io.c:1130 io.c:1185 main.c:793 main.c:830 +#: io.c:1165 io.c:1220 main.c:798 main.c:835 #, c-format msgid "error writing standard output (%s)" msgstr "fout tijdens schrijven van standaarduitvoer (%s)" -#: io.c:1134 io.c:1190 +#: io.c:1169 io.c:1225 #, c-format msgid "error writing standard error (%s)" msgstr "fout tijdens schrijven van standaardfoutuitvoer (%s)" -#: io.c:1142 +#: io.c:1177 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "leegmaken van pijp '%s' is mislukt (%s)" -#: io.c:1145 +#: io.c:1180 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "leegmaken door co-proces van pijp naar '%s' is mislukt (%s)" -#: io.c:1148 +#: io.c:1183 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "leegmaken van bestand '%s' is mislukt (%s)" -#: io.c:1263 +#: io.c:1298 #, c-format msgid "local port %s invalid in `/inet'" msgstr "lokale poort %s is ongeldig in '/inet'" -#: io.c:1280 +#: io.c:1315 #, c-format msgid "remote host and port information (%s, %s) invalid" msgstr "host- en poortinformatie (%s, %s) zijn ongeldig" -#: io.c:1432 +#: io.c:1467 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "geen (bekend) protocol aangegeven in speciale bestandsnaam '%s'" -#: io.c:1446 +#: io.c:1481 #, c-format msgid "special file name `%s' is incomplete" msgstr "speciale bestandsnaam '%s' is onvolledig" -#: io.c:1463 +#: io.c:1498 msgid "must supply a remote hostname to `/inet'" msgstr "'/inet' heeft een gindse hostnaam nodig" -#: io.c:1481 +#: io.c:1516 msgid "must supply a remote port to `/inet'" msgstr "'/inet' heeft een gindse poort nodig" -#: io.c:1527 +#: io.c:1562 msgid "TCP/IP communications are not supported" msgstr "TCP/IP-communicatie wordt niet ondersteund" -#: io.c:1694 +#: io.c:1729 #, c-format msgid "could not open `%s', mode `%s'" msgstr "kan '%s' niet openen -- modus '%s'" -#: io.c:1748 +#: io.c:1783 #, c-format msgid "close of master pty failed (%s)" msgstr "kan meester-pty van dochterproces niet sluiten (%s)" -#: io.c:1750 io.c:1918 io.c:2075 +#: io.c:1785 io.c:1953 io.c:2110 #, c-format msgid "close of stdout in child failed (%s)" msgstr "kan standaarduitvoer van dochterproces niet sluiten (%s)" -#: io.c:1753 +#: io.c:1788 #, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "" "kan slaaf-pty niet overzetten naar standaarduitvoer van dochterproces (dup: " "%s)" -#: io.c:1755 io.c:1923 +#: io.c:1790 io.c:1958 #, c-format msgid "close of stdin in child failed (%s)" msgstr "kan standaardinvoer van dochterproces niet sluiten (%s)" -#: io.c:1758 +#: io.c:1793 #, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "" "kan slaaf-pty niet overzetten naar standaardinvoer van dochterproces (dup: " "%s)" -#: io.c:1760 io.c:1781 +#: io.c:1795 io.c:1816 #, c-format msgid "close of slave pty failed (%s)" msgstr "kan slaaf-pty niet sluiten (%s)" -#: io.c:1859 io.c:1921 io.c:2053 io.c:2078 +#: io.c:1894 io.c:1956 io.c:2088 io.c:2113 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "" "kan pijp niet overzetten naar standaarduitvoer van dochterproces (dup: %s)" -#: io.c:1866 io.c:1926 +#: io.c:1901 io.c:1961 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "" "kan pijp niet overzetten naar standaardinvoer van dochterproces (dup: %s)" -#: io.c:1886 io.c:2068 +#: io.c:1921 io.c:2103 msgid "restoring stdout in parent process failed\n" msgstr "kan standaarduitvoer van ouderproces niet herstellen\n" -#: io.c:1894 +#: io.c:1929 msgid "restoring stdin in parent process failed\n" msgstr "kan standaardinvoer van ouderproces niet herstellen\n" -#: io.c:1929 io.c:2080 io.c:2094 +#: io.c:1964 io.c:2115 io.c:2129 #, c-format msgid "close of pipe failed (%s)" msgstr "kan pijp niet sluiten (%s)" -#: io.c:1974 +#: io.c:2009 msgid "`|&' not supported" msgstr "'|&' wordt niet ondersteund" -#: io.c:2040 +#: io.c:2075 #, c-format msgid "cannot open pipe `%s' (%s)" msgstr "kan pijp '%s' niet openen (%s)" -#: io.c:2088 +#: io.c:2123 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "kan voor '%s' geen dochterproces starten (fork: %s)" -#: io.c:2521 +#: io.c:2613 #, c-format msgid "data file `%s' is empty" msgstr "databestand '%s' is leeg" -#: io.c:2562 io.c:2570 +#: io.c:2654 io.c:2662 msgid "could not allocate more input memory" msgstr "kan geen extra invoergeheugen meer toewijzen" -#: io.c:3128 +#: io.c:3223 msgid "multicharacter value of `RS' is a gawk extension" msgstr "een 'RS' van meerdere tekens is een gawk-uitbreiding" -#: io.c:3233 +#: io.c:3313 msgid "IPv6 communication is not supported" msgstr "IPv6-communicatie wordt niet ondersteund" -#: main.c:364 +#: main.c:353 msgid "`-m[fr]' option irrelevant in gawk" msgstr "optie '-m[fr]' is irrelevant in gawk" -#: main.c:366 +#: main.c:355 msgid "-m option usage: `-m[fr] nnn'" msgstr "gebruikswijze van optie -m: '-m[fr] nnn'" -#: main.c:389 +#: main.c:384 msgid "empty argument to `-e/--source' ignored" msgstr "argument van '-e/--source' is leeg; genegeerd" -#: main.c:460 +#: main.c:464 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "%s: optie '-W %s' is onbekend; genegeerd\n" -#: main.c:513 +#: main.c:510 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: optie vereist een argument -- %c\n" -#: main.c:534 +#: main.c:531 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "omgevingsvariabele 'POSIXLY_CORRECT' is gezet: '--posix' ingeschakeld" -#: main.c:540 +#: main.c:537 msgid "`--posix' overrides `--traditional'" msgstr "'--posix' overstijgt '--traditional'" -#: main.c:551 +#: main.c:548 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "'--posix'/'--traditional' overstijgen '--non-decimal-data'" -#: main.c:555 +#: main.c:552 #, c-format msgid "running %s setuid root may be a security problem" msgstr "het uitvoeren van %s als 'setuid root' kan een veiligheidsrisico zijn" -#: main.c:560 +#: main.c:557 msgid "`--posix' overrides `--binary'" msgstr "'--posix' overstijgt '--binary'" -#: main.c:611 +#: main.c:600 #, c-format msgid "can't set binary mode on stdin (%s)" msgstr "kan standaardinvoer niet in binaire modus zetten (%s)" -#: main.c:614 +#: main.c:603 #, c-format msgid "can't set binary mode on stdout (%s)" msgstr "kan standaarduitvoer niet in binaire modus zetten (%s)" -#: main.c:616 +#: main.c:605 #, c-format msgid "can't set binary mode on stderr (%s)" msgstr "kan standaardfoutuitvoer niet in binaire modus zetten (%s)" -#: main.c:655 +#: main.c:653 msgid "no program text at all!" msgstr "helemaal geen programmatekst!" -#: main.c:733 +#: main.c:737 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "Gebruik: %s [opties] -f programmabestand [--] bestand...\n" -#: main.c:735 +#: main.c:739 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "" " of: %s [opties] [--] %cprogrammatekst%c bestand...\n" "\n" -#: main.c:740 +#: main.c:744 msgid "POSIX options:\t\tGNU long options: (standard)\n" msgstr "\tPOSIX-opties:\t\tEquivalente GNU-opties: (standaard)\n" -#: main.c:741 +#: main.c:745 msgid "\t-f progfile\t\t--file=progfile\n" msgstr "\t-f programmabestand\t--file=programmabestand\n" -#: main.c:742 +#: main.c:746 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "\t-F veldscheidingsteken\t--field-separator=veldscheidingsteken\n" -#: main.c:743 +#: main.c:747 msgid "\t-v var=val\t\t--assign=var=val\n" msgstr "" "\t-v var=waarde\t\t--assign=var=waarde\n" "\n" -#: main.c:744 +#: main.c:748 msgid "Short options:\t\tGNU long options: (extensions)\n" msgstr "\tKorte opties:\t\tEquivalente GNU-opties: (uitbreidingen)\n" -#: main.c:745 +#: main.c:749 msgid "\t-b\t\t\t--characters-as-bytes\n" msgstr "\t-b\t\t\t--characters-as-bytes\n" -#: main.c:746 +#: main.c:750 msgid "\t-c\t\t\t--traditional\n" msgstr "\t-c\t\t\t--traditional\n" -#: main.c:747 +#: main.c:751 msgid "\t-C\t\t\t--copyright\n" msgstr "\t-C\t\t\t--copyright\n" -#: main.c:748 +#: main.c:752 msgid "\t-d[file]\t\t--dump-variables[=file]\n" msgstr "\t-d[bestand]\t\t--dump-variables[=bestand]\n" -#: main.c:749 +#: main.c:753 +#, fuzzy +msgid "\t-D[file]\t\t--debug[=file]\n" +msgstr "\t-p[bestand]\t\t--profile[=bestand]\n" + +#: main.c:754 msgid "\t-e 'program-text'\t--source='program-text'\n" msgstr "\t-e 'programmatekst'\t--source='programmatekst'\n" -#: main.c:750 +#: main.c:755 msgid "\t-E file\t\t\t--exec=file\n" msgstr "\t-E bestand\t\t--exec=bestand\n" -#: main.c:751 +#: main.c:756 msgid "\t-g\t\t\t--gen-pot\n" msgstr "\t-g\t\t\t--gen-pot\n" -#: main.c:752 +#: main.c:757 msgid "\t-h\t\t\t--help\n" msgstr "\t-h\t\t\t--help\n" -#: main.c:753 +#: main.c:758 +msgid "\t-l library\t\t--load=library\n" +msgstr "" + +#: main.c:759 msgid "\t-L [fatal]\t\t--lint[=fatal]\n" msgstr "\t-L [fataal]\t\t--lint[=fataal]\n" -#: main.c:754 +#: main.c:760 msgid "\t-n\t\t\t--non-decimal-data\n" msgstr "\t-n\t\t\t--non-decimal-data\n" -#: main.c:755 +#: main.c:761 msgid "\t-N\t\t\t--use-lc-numeric\n" msgstr "\t-N\t\t\t--use-lc-numeric\n" -#: main.c:756 +#: main.c:762 +#, fuzzy +msgid "\t-o[file]\t\t--pretty-print[=file]\n" +msgstr "\t-p[bestand]\t\t--profile[=bestand]\n" + +#: main.c:763 msgid "\t-O\t\t\t--optimize\n" msgstr "\t-O\t\t\t--optimize\n" -#: main.c:757 +#: main.c:764 msgid "\t-p[file]\t\t--profile[=file]\n" msgstr "\t-p[bestand]\t\t--profile[=bestand]\n" -#: main.c:758 +#: main.c:765 msgid "\t-P\t\t\t--posix\n" msgstr "\t-P\t\t\t--posix\n" -#: main.c:759 +#: main.c:766 msgid "\t-r\t\t\t--re-interval\n" msgstr "\t-r\t\t\t--re-interval\n" -#: main.c:761 -msgid "\t-R file\t\t\t--command=file\n" -msgstr "\t-R bestand\t\t\t--command=bestand\n" - -#: main.c:762 +#: main.c:767 msgid "\t-S\t\t\t--sandbox\n" msgstr "\t-S\t\t\t--sandbox\n" -#: main.c:763 +#: main.c:768 msgid "\t-t\t\t\t--lint-old\n" msgstr "\t-t\t\t\t--lint-old\n" -#: main.c:764 +#: main.c:769 msgid "\t-V\t\t\t--version\n" msgstr "\t-V\t\t\t--version\n" -#: main.c:766 +#: main.c:771 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "\t-W nostalgia\t\t\t--nostalgia\n" -#: main.c:769 +#: main.c:774 msgid "\t-Y\t\t--parsedebug\n" msgstr "\t-Y\t\t\t--parsedebug\n" @@ -1814,7 +1724,7 @@ msgstr "\t-Y\t\t\t--parsedebug\n" #. for this application. Please add _another line_ with the #. address for translation bugs. #. no-wrap -#: main.c:778 +#: main.c:783 msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" @@ -1827,7 +1737,7 @@ msgstr "" "Meld fouten in de vertaling aan <vertaling@vrijschrift.org>.\n" "\n" -#: main.c:782 +#: main.c:787 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" @@ -1837,7 +1747,7 @@ msgstr "" "Standaard leest het van standaardinvoer en schrijft naar standaarduitvoer.\n" "\n" -#: main.c:786 +#: main.c:791 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" @@ -1847,7 +1757,7 @@ msgstr "" "\tgawk '{ som += $1 }; END { print som }' bestand\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" -#: main.c:806 +#: main.c:811 #, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" @@ -1865,7 +1775,7 @@ msgstr "" "uitgegeven door de Free Software Foundation, naar keuze ofwel onder\n" "versie 3 of onder een nieuwere versie van die licentie.\n" -#: main.c:814 +#: main.c:819 msgid "" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" @@ -1879,7 +1789,7 @@ msgstr "" "Zie de GNU General Public License voor meer details.\n" "\n" -#: main.c:820 +#: main.c:825 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program. If not, see http://www.gnu.org/licenses/.\n" @@ -1888,16 +1798,16 @@ msgstr "" "ontvangen te hebben; is dit niet het geval, dan kunt u deze licentie\n" "ook vinden op http://www.gnu.org/licenses/.\n" -#: main.c:855 +#: main.c:860 msgid "-Ft does not set FS to tab in POSIX awk" msgstr "-Ft maakt van FS geen tab in POSIX-awk" -#: main.c:1089 +#: main.c:1091 #, c-format msgid "unknown value for field spec: %d\n" msgstr "onbekende waarde voor veldspecificatie: %d\n" -#: main.c:1170 +#: main.c:1172 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" @@ -1906,84 +1816,79 @@ msgstr "" "%s: argument '%s' van '-v' is niet van de vorm 'var=waarde'\n" "\n" -#: main.c:1196 +#: main.c:1198 #, c-format msgid "`%s' is not a legal variable name" msgstr "'%s' is geen geldige variabelenaam" -#: main.c:1199 +#: main.c:1201 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "'%s' is geen variabelenaam; zoekend naar bestand '%s=%s'" -#: main.c:1203 +#: main.c:1205 #, c-format msgid "cannot use gawk builtin `%s' as variable name" msgstr "kan in gawk ingebouwde '%s' niet als variabelenaam gebruiken" -#: main.c:1208 +#: main.c:1210 #, c-format msgid "cannot use function `%s' as variable name" msgstr "kan functie '%s' niet als variabelenaam gebruiken" -#: main.c:1261 +#: main.c:1263 msgid "floating point exception" msgstr "drijvendekomma-berekeningsfout" -#: main.c:1268 +#: main.c:1270 msgid "fatal error: internal error" msgstr "fatale fout: **interne fout**" -#: main.c:1283 +#: main.c:1285 msgid "fatal error: internal error: segfault" msgstr "fatale fout: **interne fout**: segmentatiefout" -#: main.c:1295 +#: main.c:1297 msgid "fatal error: internal error: stack overflow" msgstr "fatale fout: **interne fout**: stack is vol" -#: main.c:1345 +#: main.c:1347 #, c-format msgid "no pre-opened fd %d" msgstr "geen reeds-geopende bestandsdescriptor %d" -#: main.c:1352 +#: main.c:1354 #, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "kan /dev/null niet openen voor bestandsdescriptor %d" -#: main.c:1375 main.c:1384 -#, c-format -msgid "could not find groups: %s" -msgstr "kan groepen niet vinden: %s" - -#: msg.c:63 +#: msg.c:61 #, c-format msgid "cmd. line:" msgstr "commandoregel:" -#: msg.c:107 +#: msg.c:105 msgid "error: " msgstr "fout: " -#: node.c:406 +#: node.c:402 msgid "backslash at end of string" msgstr "backslash aan het einde van de string" -#: node.c:517 +#: node.c:479 #, c-format msgid "old awk does not support the `\\%c' escape sequence" msgstr "oude 'awk' kent de stuurcodereeks '\\%c' niet" -#: node.c:568 +#: node.c:530 msgid "POSIX does not allow `\\x' escapes" msgstr "POSIX staat stuurcode '\\x' niet toe" -#: node.c:574 +#: node.c:536 msgid "no hex digits in `\\x' escape sequence" msgstr "geen hex cijfers in stuurcodereeks '\\x'" -#: node.c:596 +#: node.c:558 #, c-format msgid "" "hex escape \\x%.*s of %d characters probably not interpreted the way you " @@ -1992,12 +1897,12 @@ msgstr "" "hexadecimale stuurcode \\x%.*s van %d tekens wordt waarschijnlijk niet " "afgehandeld zoals u verwacht" -#: node.c:611 +#: node.c:573 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "stuurcodereeks '\\%c' behandeld als normale '%c'" -#: node.c:750 +#: node.c:712 msgid "" "Invalid multibyte data detected. There may be a mismatch between your data " "and your locale." @@ -2017,16 +1922,16 @@ msgstr "" msgid "%s %s `%s': could not set close-on-exec: (fcntl F_SETFD: %s)" msgstr "%s %s '%s': kan 'close-on-exec' niet activeren: (fcntl F_SETFD: %s)" -#: profile.c:83 +#: profile.c:69 #, c-format msgid "could not open `%s' for writing: %s" msgstr "kan '%s' niet openen om te schrijven: %s" -#: profile.c:85 +#: profile.c:71 msgid "sending profile to standard error" msgstr "profiel gaat naar standaardfoutuitvoer" -#: profile.c:203 +#: profile.c:187 #, c-format msgid "" "\t# %s block(s)\n" @@ -2035,7 +1940,7 @@ msgstr "" "\t# %s-blok(ken)\n" "\n" -#: profile.c:208 +#: profile.c:192 #, c-format msgid "" "\t# Rule(s)\n" @@ -2044,17 +1949,22 @@ msgstr "" "\t# Regel(s)\n" "\n" -#: profile.c:279 +#: profile.c:266 #, c-format msgid "internal error: %s with null vname" msgstr "**interne fout**: %s heeft een lege 'vname'" -#: profile.c:952 +#: profile.c:528 +#, fuzzy +msgid "internal error: builtin with null fname" +msgstr "**interne fout**: %s heeft een lege 'vname'" + +#: profile.c:943 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "\t# gawk-profiel, gemaakt op %s\n" -#: profile.c:1331 +#: profile.c:1321 #, c-format msgid "" "\n" @@ -2063,96 +1973,171 @@ msgstr "" "\n" "\t# Functies, alfabetisch geordend\n" -#: profile.c:1370 +#: profile.c:1359 #, c-format msgid "redir2str: unknown redirection type %d" msgstr "redir2str(): onbekend omleidingstype %d" -#: re.c:572 -#, fuzzy, c-format +#: re.c:573 +#, c-format msgid "range of the form `[%c-%c]' is locale dependent" msgstr "" "de betekenis van een bereik van de vorm '[%c-%c]' is afhankelijk van de " "taalregio" -#: re.c:599 +#: re.c:600 #, c-format msgid "regexp component `%.*s' should probably be `[%.*s]'" msgstr "" "component '%.*s' van reguliere expressie moet vermoedelijk '[%.*s]' zijn" -#: regcomp.c:132 +#: regcomp.c:131 msgid "Success" msgstr "Gelukt" -#: regcomp.c:135 +#: regcomp.c:134 msgid "No match" msgstr "Geen overeenkomsten" -#: regcomp.c:138 +#: regcomp.c:137 msgid "Invalid regular expression" msgstr "Ongeldige reguliere expressie" -#: regcomp.c:141 +#: regcomp.c:140 msgid "Invalid collation character" msgstr "Ongeldig samengesteld teken" -#: regcomp.c:144 +#: regcomp.c:143 msgid "Invalid character class name" msgstr "Ongeldige tekenklassenaam" -#: regcomp.c:147 +#: regcomp.c:146 msgid "Trailing backslash" msgstr "Backslash aan het eind" -#: regcomp.c:150 +#: regcomp.c:149 msgid "Invalid back reference" msgstr "Ongeldige terugverwijzing" -#: regcomp.c:153 +#: regcomp.c:152 msgid "Unmatched [ or [^" msgstr "Ongepaarde [ of [^" -#: regcomp.c:156 +#: regcomp.c:155 msgid "Unmatched ( or \\(" msgstr "Ongepaarde ( of \\(" -#: regcomp.c:159 +#: regcomp.c:158 msgid "Unmatched \\{" msgstr "Ongepaarde \\{" -#: regcomp.c:162 +#: regcomp.c:161 msgid "Invalid content of \\{\\}" msgstr "Ongeldige inhoud van \\{\\}" -#: regcomp.c:165 +#: regcomp.c:164 msgid "Invalid range end" msgstr "Ongeldig bereikeinde" -#: regcomp.c:168 +#: regcomp.c:167 msgid "Memory exhausted" msgstr "Onvoldoende geheugen beschikbaar" -#: regcomp.c:171 +#: regcomp.c:170 msgid "Invalid preceding regular expression" msgstr "Ongeldige voorafgaande reguliere expressie" -#: regcomp.c:174 +#: regcomp.c:173 msgid "Premature end of regular expression" msgstr "Voortijdig einde van reguliere expressie" -#: regcomp.c:177 +#: regcomp.c:176 msgid "Regular expression too big" msgstr "Reguliere expressie is te groot" -#: regcomp.c:180 +#: regcomp.c:179 msgid "Unmatched ) or \\)" msgstr "Ongepaarde ) of \\)" -#: regcomp.c:701 +#: regcomp.c:700 msgid "No previous regular expression" msgstr "Geen eerdere reguliere expressie" +#~ msgid "attempt to use function `%s' as an array" +#~ msgstr "functie '%s' wordt gebruikt als array" + +#~ msgid "reference to uninitialized element `%s[\"%.*s\"]'" +#~ msgstr "verwijzing naar ongeïnitialiseerd element '%s[\"%.*s\"]'" + +#~ msgid "subscript of array `%s' is null string" +#~ msgstr "index van array '%s' is lege string" + +#~ msgid "%s: empty (null)\n" +#~ msgstr "%s: leeg (nil)\n" + +#~ msgid "%s: empty (zero)\n" +#~ msgstr "%s: leeg (nul)\n" + +#~ msgid "%s: table_size = %d, array_size = %d\n" +#~ msgstr "%s: tabelgrootte = %d, arraygrootte = %d\n" + +#~ msgid "%s: is parameter\n" +#~ msgstr "%s: is een parameter\n" + +#~ msgid "%s: array_ref to %s\n" +#~ msgstr "%s: array-verwijzing naar %s\n" + +#~ msgid "use of non-array as array" +#~ msgstr "non-array wordt gebruikt als array" + +#~ msgid "can't use function name `%s' as variable or array" +#~ msgstr "kan functienaam '%s' niet als variabele of array gebruiken" + +#~ msgid "attempt to use array `%s[\"%.*s\"]' in a scalar context" +#~ msgstr "array '%s[\"%.*s\"]' wordt gebruikt in een scalaire context" + +#~ msgid "assignment used in conditional context" +#~ msgstr "toewijzing wordt gebruikt in een conditionele context" + +#~ msgid "statement has no effect" +#~ msgstr "opdracht heeft geen effect" + +#~ msgid "" +#~ "for loop: array `%s' changed size from %ld to %ld during loop execution" +#~ msgstr "" +#~ "for: array '%s' veranderde van grootte %ld naar %ld tijdens uitvoer van " +#~ "de lus" + +#~ msgid "function called indirectly through `%s' does not exist" +#~ msgstr "indirect (via '%s') aangeroepen functie bestaat niet" + +#~ msgid "function `%s' not defined" +#~ msgstr "functie '%s' is niet gedefinieerd" + +#~ msgid "non-redirected `getline' invalid inside `%s' rule" +#~ msgstr "niet-omgeleide 'getline' is ongeldig binnen een '%s'-regel" + +#~ msgid "error reading input file `%s': %s" +#~ msgstr "fout tijdens lezen van invoerbestand '%s': %s" + +#~ msgid "`nextfile' cannot be called from a `%s' rule" +#~ msgstr "'nextfile' kan niet aangeroepen worden in een '%s'-regel" + +#~ msgid "`exit' cannot be called in the current context" +#~ msgstr "'exit' kan niet aangeroepen worden in de huidige context" + +#~ msgid "`next' cannot be called from a `%s' rule" +#~ msgstr "'next' kan niet aangeroepen worden in een '%s'-regel" + +#~ msgid "Sorry, don't know how to interpret `%s'" +#~ msgstr "Kan '%s' niet interpreteren" + +#~ msgid "\t-R file\t\t\t--command=file\n" +#~ msgstr "\t-R bestand\t\t\t--command=bestand\n" + +#~ msgid "could not find groups: %s" +#~ msgstr "kan groepen niet vinden: %s" + #~ msgid "assignment is not allowed to result of builtin function" #~ msgstr "" #~ "toewijzing aan het resultaat van een ingebouwde functie is niet toegestaan" Binary files differ@@ -1,16 +1,16 @@ # Polish translations for GNU AWK package. -# Copyright (C) 2003, 2004, 2005, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc. +# Copyright (C) 2003, 2004, 2005, 2007, 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc. # This file is distributed under the same license as the gawk package. # -# Wojciech Polak <polak@gnu.org>, 2003, 2004, 2005, 2007, 2008, 2009, 2010, 2011. +# Wojciech Polak <polak@gnu.org>, 2003, 2004, 2005, 2007, 2008, 2009, 2010, 2011, 2012. # additional help by Sergey Poznyakoff <gray@gnu.org>, 2003. # msgid "" msgstr "" -"Project-Id-Version: gawk 3.1.81\n" +"Project-Id-Version: gawk 4.0.0h\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" -"POT-Creation-Date: 2011-11-14 21:46+0200\n" -"PO-Revision-Date: 2011-05-14 11:41-0400\n" +"POT-Creation-Date: 2012-04-08 12:18+0300\n" +"PO-Revision-Date: 2012-02-04 19:17+0100\n" "Last-Translator: Wojciech Polak <polak@gnu.org>\n" "Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n" "Language: pl\n" @@ -20,515 +20,471 @@ msgstr "" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " "|| n%100>=20) ? 1 : 2);\n" -#: array.c:140 +#: array.c:267 #, c-format msgid "from %s" msgstr "od %s" -#: array.c:248 +#: array.c:367 msgid "attempt to use a scalar value as array" msgstr "próba użycia wartoÅ›ci skalarnej jako tablicy" -#: array.c:251 -#, c-format -msgid "attempt to use function `%s' as an array" -msgstr "próba użycia funkcji `%s' jako tablicy" - -#: array.c:254 +#: array.c:369 #, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "próba użycia parametru `%s' skalaru jako tablicy" -#: array.c:257 +#: array.c:372 #, c-format msgid "attempt to use scalar `%s' as an array" msgstr "próba użycia skalaru `%s' jako tablicy" -#: array.c:302 array.c:707 builtin.c:84 builtin.c:1384 builtin.c:1426 -#: builtin.c:1439 builtin.c:1858 builtin.c:1870 eval.c:1135 eval.c:1139 -#: eval.c:1495 eval.c:1812 +#: array.c:419 array.c:585 builtin.c:85 builtin.c:1389 builtin.c:1431 +#: builtin.c:1444 builtin.c:1862 builtin.c:1874 eval.c:1096 eval.c:1100 +#: eval.c:1500 #, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "próba użycia tablicy `%s' w kontekÅ›cie skalaru" -#: array.c:513 -#, c-format -msgid "reference to uninitialized element `%s[\"%.*s\"]'" -msgstr "odwoÅ‚anie do niezainicjowanego elementu `%s[\"%.*s\"]'" - -#: array.c:519 -#, c-format -msgid "subscript of array `%s' is null string" -msgstr "indeks tablicy `%s' jest zerowym Å‚aÅ„cuchem" - -#: array.c:723 +#: array.c:592 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "delete: indeks `%s' nie jest w tablicy `%s'" -#: array.c:734 eval.c:1865 +#: array.c:606 #, c-format msgid "attempt to use scalar `%s[\"%.*s\"]' as an array" msgstr "próba użycia skalaru `%s[\"%.*s\"]' jako tablicy" -#: array.c:910 -#, c-format -msgid "%s: empty (null)\n" -msgstr "%s: pusty (null)\n" - -#: array.c:915 -#, c-format -msgid "%s: empty (zero)\n" -msgstr "%s: pusty (zero)\n" - -#: array.c:919 -#, c-format -msgid "%s: table_size = %d, array_size = %d\n" -msgstr "%s: table_size = %d, array_size = %d\n" - -#: array.c:954 -#, c-format -msgid "%s: is parameter\n" -msgstr "%s: jest parametrem\n" - -#: array.c:958 -#, c-format -msgid "%s: array_ref to %s\n" -msgstr "%s: array_ref do %s\n" - -#: array.c:963 -msgid "adump: argument not an array" +#: array.c:794 +#, fuzzy +msgid "adump: first argument not an array" msgstr "adump: argument nie jest tablicÄ…" -#: array.c:1086 +#: array.c:833 msgid "asort: second argument not an array" msgstr "asort: drugi argument nie jest tablicÄ…" -#: array.c:1087 +#: array.c:834 msgid "asorti: second argument not an array" msgstr "asorti: drugi argument nie jest tablicÄ…" -#: array.c:1094 +#: array.c:841 msgid "asort: first argument not an array" msgstr "asort: pierwszy argument nie jest tablicÄ…" -#: array.c:1095 +#: array.c:842 msgid "asorti: first argument not an array" msgstr "asorti: pierwszy argument nie jest tablicÄ…" -#: array.c:1102 +#: array.c:849 msgid "asort: cannot use a subarray of first arg for second arg" msgstr "" "asort: nie można użyć podtablicy pierwszego argumentu dla drugiego argumentu" -#: array.c:1103 +#: array.c:850 msgid "asorti: cannot use a subarray of first arg for second arg" msgstr "" "asorti: nie można użyć podtablicy pierwszego argumentu dla drugiego argumentu" -#: array.c:1108 +#: array.c:855 msgid "asort: cannot use a subarray of second arg for first arg" msgstr "" "asort: nie można użyć podtablicy drugiego argumentu dla pierwszego argumentu" -#: array.c:1109 +#: array.c:856 msgid "asorti: cannot use a subarray of second arg for first arg" msgstr "" "asorti: nie można użyć podtablicy drugiego argumentu dla pierwszego argumentu" -#: array.c:1659 +#: array.c:1329 #, c-format msgid "`%s' is invalid as a function name" msgstr "nieprawidÅ‚owa nazwa funkcji `%s'" -#: array.c:1663 +#: array.c:1333 #, c-format msgid "sort comparison function `%s' is not defined" msgstr "funkcja porównujÄ…ca w sortowaniu `%s' nie zostaÅ‚a zdefiniowna" -#: awkgram.y:249 +#: awkgram.y:223 #, c-format msgid "%s blocks must have an action part" msgstr "%s bloków musi posiadać część dotyczÄ…cÄ… akcji" -#: awkgram.y:252 +#: awkgram.y:226 msgid "each rule must have a pattern or an action part" msgstr "każda reguÅ‚a musi posiadać wzorzec lub część dotyczÄ…cÄ… akcji" -#: awkgram.y:323 awkgram.y:334 +#: awkgram.y:295 awkgram.y:306 msgid "old awk does not support multiple `BEGIN' or `END' rules" msgstr "stary awk nie wspiera wielokrotnych reguÅ‚ `BEGIN' lub `END'" -#: awkgram.y:371 +#: awkgram.y:343 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "" "`%s' jest funkcjÄ… wbudowanÄ…, wiÄ™c nie może zostać ponownie zdefiniowana" -#: awkgram.y:432 +#: awkgram.y:389 msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "" "staÅ‚e wyrażenie regularne `//' wyglÄ…da jak komentarz C++, ale nim nie jest" -#: awkgram.y:436 +#: awkgram.y:393 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "" "staÅ‚e wyrażenie regularne `/%s/' wyglÄ…da jak komentarz C, ale nim nie jest" -#: awkgram.y:528 +#: awkgram.y:485 #, c-format msgid "duplicate case values in switch body: %s" msgstr "powielone wartoÅ›ci case w ciele switch: %s" -#: awkgram.y:549 +#: awkgram.y:506 msgid "duplicate `default' detected in switch body" msgstr "wykryto powielony `default' w ciele switch" -#: awkgram.y:809 +#: awkgram.y:766 msgid "`break' is not allowed outside a loop or switch" msgstr "instrukcja `break' poza pÄ™tlÄ… lub switch'em jest niedozwolona" -#: awkgram.y:818 +#: awkgram.y:775 msgid "`continue' is not allowed outside a loop" msgstr "instrukcja `continue' poza pÄ™tlÄ… jest niedozwolona" -#: awkgram.y:828 +#: awkgram.y:785 #, c-format msgid "`next' used in %s action" msgstr "`next' użyty w akcji %s" -#: awkgram.y:836 +#: awkgram.y:793 msgid "`nextfile' is a gawk extension" msgstr "`nextfile' jest rozszerzeniem gawk" -#: awkgram.y:841 +#: awkgram.y:798 #, c-format msgid "`nextfile' used in %s action" msgstr "`nextfile' użyty w akcji %s" -#: awkgram.y:865 +#: awkgram.y:822 msgid "`return' used outside function context" msgstr "`return' użyty poza kontekstem funkcji" -#: awkgram.y:925 +#: awkgram.y:892 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "" "zwykÅ‚y `print' w reguÅ‚ach BEGIN lub END powinien prawdopodobnie być jako " "`print \"\"'" -#: awkgram.y:995 awkgram.y:999 awkgram.y:1023 +#: awkgram.y:962 awkgram.y:966 awkgram.y:990 msgid "`delete array' is a gawk extension" msgstr "`delete tablica' jest rozszerzeniem gawk" -#: awkgram.y:1019 +#: awkgram.y:986 msgid "`delete(array)' is a non-portable tawk extension" msgstr "`delete(tablica)' jest nieprzenoÅ›nym rozszerzeniem tawk" -#: awkgram.y:1135 +#: awkgram.y:1102 msgid "multistage two-way pipelines don't work" msgstr "wieloetapowe dwukierunkowe linie potokowe nie dziaÅ‚ajÄ…" -#: awkgram.y:1238 +#: awkgram.y:1205 msgid "regular expression on right of assignment" msgstr "wyrażanie regularne po prawej stronie przypisania" -#: awkgram.y:1249 +#: awkgram.y:1216 msgid "regular expression on left of `~' or `!~' operator" msgstr "wyrażenie regularne po lewej stronie operatora `~' lub `!~'" -#: awkgram.y:1265 awkgram.y:1419 +#: awkgram.y:1232 awkgram.y:1383 msgid "old awk does not support the keyword `in' except after `for'" msgstr "" "stary awk nie wspiera sÅ‚owa kluczowego `in', z wyjÄ…tkiem po sÅ‚owie `for'" -#: awkgram.y:1275 +#: awkgram.y:1242 msgid "regular expression on right of comparison" msgstr "wyrażenie regularne po prawej stronie porównania" -#: awkgram.y:1394 +#: awkgram.y:1358 #, c-format msgid "`getline var' invalid inside `%s' rule" msgstr "nieprawidÅ‚owy `getline var' wewnÄ…trz reguÅ‚y `%s'" -#: awkgram.y:1397 eval.c:2504 +#: awkgram.y:1361 #, c-format msgid "`getline' invalid inside `%s' rule" msgstr "nieprawidÅ‚owy `getline' wewnÄ…trz reguÅ‚y `%s'" -#: awkgram.y:1402 +#: awkgram.y:1366 msgid "non-redirected `getline' undefined inside END action" msgstr "" "komenda `getline' bez przekierowania nie jest zdefiniowana wewnÄ…trz akcji END" -#: awkgram.y:1421 +#: awkgram.y:1385 msgid "old awk does not support multidimensional arrays" msgstr "stary awk nie wspiera wielowymiarowych tablic" -#: awkgram.y:1517 +#: awkgram.y:1481 msgid "call of `length' without parentheses is not portable" msgstr "wywoÅ‚anie `length' bez nawiasów jest nieprzenoÅ›ne" -#: awkgram.y:1580 +#: awkgram.y:1545 msgid "indirect function calls are a gawk extension" msgstr "poÅ›rednie wywoÅ‚ania funkcji sÄ… rozszerzeniem gawk" -#: awkgram.y:1593 +#: awkgram.y:1558 #, c-format msgid "can not use special variable `%s' for indirect function call" msgstr "" "nie można użyć specjalnej zmiennej `%s' do poÅ›redniego wywoÅ‚ania funkcji" -#: awkgram.y:1671 +#: awkgram.y:1636 msgid "invalid subscript expression" msgstr "nieprawidÅ‚owe wyrażenie indeksowe" -#: awkgram.y:1711 -msgid "use of non-array as array" -msgstr "użycie nie-tablicy jako tablicy" - -#: awkgram.y:1975 awkgram.y:1995 msg.c:98 +#: awkgram.y:1936 awkgram.y:1956 msg.c:96 msgid "warning: " msgstr "ostrzeżenie: " -#: awkgram.y:1993 msg.c:130 +#: awkgram.y:1954 msg.c:128 msgid "fatal: " msgstr "fatalny błąd: " -#: awkgram.y:2043 +#: awkgram.y:2004 msgid "unexpected newline or end of string" msgstr "niespodziewany znak nowego wiersza lub koÅ„ca Å‚aÅ„cucha" -#: awkgram.y:2300 awkgram.y:2358 awkgram.y:2542 +#: awkgram.y:2269 awkgram.y:2327 awkgram.y:2515 #, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "nie można otworzyć pliku źródÅ‚owego `%s' do czytania (%s)" -#: awkgram.y:2301 awkgram.y:2359 builtin.c:122 +#: awkgram.y:2270 awkgram.y:2328 builtin.c:124 msgid "reason unknown" msgstr "nieznany powód" -#: awkgram.y:2317 +#: awkgram.y:2286 #, c-format msgid "already included source file `%s'" msgstr "plik źródÅ‚owy `%s' jest już załączony" -#: awkgram.y:2343 +#: awkgram.y:2312 msgid "@include is a gawk extension" msgstr "@include jest rozszerzeniem gawk" -#: awkgram.y:2349 +#: awkgram.y:2318 msgid "empty filename after @include" msgstr "pusta nazwa pliku po @include" -#: awkgram.y:2494 +#: awkgram.y:2467 msgid "empty program text on command line" msgstr "pusty tekst programu w linii poleceÅ„" -#: awkgram.y:2609 +#: awkgram.y:2582 #, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "nie można otworzyć pliku źródÅ‚owego `%s' (%s)" -#: awkgram.y:2620 +#: awkgram.y:2593 #, c-format msgid "source file `%s' is empty" msgstr "plik źródÅ‚owy `%s' jest pusty" -#: awkgram.y:2805 +#: awkgram.y:2770 msgid "source file does not end in newline" msgstr "plik źródÅ‚owy nie posiada na koÅ„cu znaku nowego wiersza" -#: awkgram.y:2882 +#: awkgram.y:2874 msgid "unterminated regexp ends with `\\' at end of file" msgstr "" "niezakoÅ„czone prawidÅ‚owo wyrażenie regularne koÅ„czy siÄ™ znakiem `\\' na " "koÅ„cu pliku" -#: awkgram.y:2906 +#: awkgram.y:2898 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" "%s: %d: modyfikator wyrażenia regularnego `/.../%c' tawk nie dziaÅ‚a w gawk" -#: awkgram.y:2910 +#: awkgram.y:2902 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "modyfikator wyrażenia regularnego `/.../%c' tawk nie dziaÅ‚a w gawk" -#: awkgram.y:2917 +#: awkgram.y:2909 msgid "unterminated regexp" msgstr "niezakoÅ„czone wyrażenie regularne" -#: awkgram.y:2921 +#: awkgram.y:2913 msgid "unterminated regexp at end of file" msgstr "niezakoÅ„czone wyrażenie regularne na koÅ„cu pliku" -#: awkgram.y:2980 +#: awkgram.y:2972 msgid "use of `\\ #...' line continuation is not portable" msgstr "użycie `\\ #...' kontynuacji linii nie jest przenoÅ›ne" -#: awkgram.y:2996 +#: awkgram.y:2988 msgid "backslash not last character on line" msgstr "backslash nie jest ostatnim znakiem w wierszu" -#: awkgram.y:3057 +#: awkgram.y:3049 msgid "POSIX does not allow operator `**='" msgstr "POSIX nie zezwala na operator `**='" -#: awkgram.y:3059 +#: awkgram.y:3051 msgid "old awk does not support operator `**='" msgstr "stary awk nie wspiera operatora `**='" -#: awkgram.y:3068 +#: awkgram.y:3060 msgid "POSIX does not allow operator `**'" msgstr "POSIX nie zezwala na operator `**'" -#: awkgram.y:3070 +#: awkgram.y:3062 msgid "old awk does not support operator `**'" msgstr "stary awk nie wspiera operatora `**'" -#: awkgram.y:3105 +#: awkgram.y:3097 msgid "operator `^=' is not supported in old awk" msgstr "operator `^=' nie jest wspierany w starym awk" -#: awkgram.y:3113 +#: awkgram.y:3105 msgid "operator `^' is not supported in old awk" msgstr "operator `^' nie jest wspierany w starym awk" -#: awkgram.y:3206 awkgram.y:3222 +#: awkgram.y:3198 awkgram.y:3214 msgid "unterminated string" msgstr "niezakoÅ„czony Å‚aÅ„cuch" -#: awkgram.y:3418 +#: awkgram.y:3410 #, c-format msgid "invalid char '%c' in expression" msgstr "nieprawidÅ‚owy znak '%c' w wyrażeniu" -#: awkgram.y:3465 +#: awkgram.y:3457 #, c-format msgid "`%s' is a gawk extension" msgstr "`%s' jest rozszerzeniem gawk" -#: awkgram.y:3470 +#: awkgram.y:3462 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "`%s' jest rozszerzeniem Bell Labs" -#: awkgram.y:3475 +#: awkgram.y:3467 #, c-format msgid "POSIX does not allow `%s'" msgstr "POSIX nie zezwala na `%s'" -#: awkgram.y:3483 +#: awkgram.y:3475 #, c-format msgid "`%s' is not supported in old awk" msgstr "`%s' nie jest wspierany w starym awk" -#: awkgram.y:3550 +#: awkgram.y:3542 msgid "`goto' considered harmful!\n" msgstr "`goto' uważane za szkodliwe!\n" -#: awkgram.y:3601 +#: awkgram.y:3576 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "%d jest nieprawidÅ‚owe jako liczba argumentów dla %s" -#: awkgram.y:3636 +#: awkgram.y:3611 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "" "%s: literaÅ‚ Å‚aÅ„cuchowy jako ostatni argument podstawienia nie ma żadnego " "efektu" -#: awkgram.y:3641 +#: awkgram.y:3616 #, c-format msgid "%s third parameter is not a changeable object" msgstr "%s trzeci parametr nie jest zmiennym obiektem" -#: awkgram.y:3714 awkgram.y:3717 +#: awkgram.y:3689 awkgram.y:3692 msgid "match: third argument is a gawk extension" msgstr "match: trzeci argument jest rozszerzeniem gawk" -#: awkgram.y:3771 awkgram.y:3774 +#: awkgram.y:3746 awkgram.y:3749 msgid "close: second argument is a gawk extension" msgstr "close: drugi argument jest rozszerzeniem gawk" -#: awkgram.y:3786 +#: awkgram.y:3761 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "nieprawidÅ‚owe użycie dcgettext(_\"...\"): usuÅ„ znak podkreÅ›lenia" -#: awkgram.y:3801 +#: awkgram.y:3776 msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "nieprawidÅ‚owe użycie dcngettext(_\"...\"): usuÅ„ znak podkreÅ›lenia" -#: awkgram.y:3893 -#, c-format -msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" -msgstr "funkcja `%s': parametr #%d, `%s', powiela parametr #%d" - -#: awkgram.y:3935 +#: awkgram.y:3842 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "funkcja `%s': parametr `%s' zasÅ‚ania globalnÄ… zmiennÄ…" -#: awkgram.y:4093 +#: awkgram.y:3885 #, c-format msgid "could not open `%s' for writing (%s)" msgstr "nie można otworzyć `%s' do zapisu (%s)" -#: awkgram.y:4094 -#, fuzzy +#: awkgram.y:3886 msgid "sending variable list to standard error" -msgstr "wysyÅ‚anie profilu na standardowe wyjÅ›cie diagnostyczne" +msgstr "wysyÅ‚anie listy zmiennych na standardowe wyjÅ›cie diagnostyczne" -#: awkgram.y:4100 +#: awkgram.y:3894 #, c-format msgid "%s: close failed (%s)" msgstr "%s: zamkniÄ™cie nie powiodÅ‚o siÄ™ (%s)" -#: awkgram.y:4152 +#: awkgram.y:3919 msgid "shadow_funcs() called twice!" msgstr "shadow_funcs() wywoÅ‚ana podwójnie!" -#: awkgram.y:4158 +#: awkgram.y:3927 msgid "there were shadowed variables." msgstr "wystÄ…piÅ‚y przykryte zmienne." -#: awkgram.y:4188 +#: awkgram.y:3998 +#, c-format +msgid "function name `%s' previously defined" +msgstr "nazwa funkcji `%s' zostaÅ‚a zdefiniowana poprzednio" + +#: awkgram.y:4044 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "funkcja `%s': nie można użyć nazwy funkcji jako nazwy parametru" -#: awkgram.y:4192 +#: awkgram.y:4047 #, c-format msgid "function `%s': can't use special variable `%s' as a function parameter" msgstr "" "funkcja `%s': nie można użyć specjalnej zmiennej `%s' jako parametru funkcji" -#: awkgram.y:4208 +#: awkgram.y:4055 #, c-format -msgid "function name `%s' previously defined" -msgstr "nazwa funkcji `%s' zostaÅ‚a zdefiniowana poprzednio" +msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" +msgstr "funkcja `%s': parametr #%d, `%s', powiela parametr #%d" -#: awkgram.y:4376 awkgram.y:4382 +#: awkgram.y:4134 awkgram.y:4140 #, c-format msgid "function `%s' called but never defined" msgstr "funkcja `%s' zostaÅ‚a wywoÅ‚ana, ale nigdy nie zostaÅ‚a zdefiniowana" -#: awkgram.y:4385 +#: awkgram.y:4143 #, c-format msgid "function `%s' defined but never called directly" msgstr "" "funkcja `%s' zostaÅ‚a zdefiniowana, ale nigdy nie zostaÅ‚a wywoÅ‚ana " "bezpoÅ›rednio" -#: awkgram.y:4417 +#: awkgram.y:4175 #, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "staÅ‚e wyrażenie regularne dla parametru #%d daje wartość logicznÄ…" -#: awkgram.y:4526 +#: awkgram.y:4221 #, c-format msgid "" "function `%s' called with space between name and `(',\n" @@ -538,233 +494,233 @@ msgstr "" "`(',\n" "lub użyta jako zmienna lub jako tablica" -#: awkgram.y:4773 eval.c:2056 +#: awkgram.y:4429 msgid "division by zero attempted" msgstr "próba dzielenia przez zero" -#: awkgram.y:4782 eval.c:2072 +#: awkgram.y:4438 #, c-format msgid "division by zero attempted in `%%'" msgstr "próba dzielenia przez zero w `%%'" -#: builtin.c:120 +#: builtin.c:122 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "%s do \"%s\" nie powiódÅ‚ siÄ™ (%s)" -#: builtin.c:121 +#: builtin.c:123 msgid "standard output" msgstr "standardowe wyjÅ›cie" -#: builtin.c:135 +#: builtin.c:137 msgid "exp: received non-numeric argument" msgstr "exp: otrzymano argument nie bÄ™dÄ…cy liczbÄ…" -#: builtin.c:141 +#: builtin.c:143 #, c-format msgid "exp: argument %g is out of range" msgstr "exp: argument %g jest poza zasiÄ™giem" -#: builtin.c:200 +#: builtin.c:202 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "" "fflush: nie można opróżnić: potok `%s' otwarty do czytania, a nie do zapisu" -#: builtin.c:203 +#: builtin.c:205 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "" "fflush: nie można opróżnić: plik `%s' otwarty do czytania, a nie do zapisu" -#: builtin.c:215 +#: builtin.c:217 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "fflush: `%s' nie jest ani otwartym plikiem, ani potokiem, ani procesem" -#: builtin.c:333 +#: builtin.c:335 msgid "index: received non-string first argument" msgstr "index: otrzymano pierwszy argument, który nie jest Å‚aÅ„cuchem" -#: builtin.c:335 +#: builtin.c:337 msgid "index: received non-string second argument" msgstr "index: otrzymano drugi argument, który nie jest Å‚aÅ„cuchem" -#: builtin.c:457 +#: builtin.c:461 msgid "int: received non-numeric argument" msgstr "int: otrzymano argument, który nie jest liczbÄ…" -#: builtin.c:493 +#: builtin.c:497 msgid "length: received array argument" msgstr "length: otrzymano argument, który jest tablicÄ…" -#: builtin.c:496 +#: builtin.c:500 msgid "`length(array)' is a gawk extension" msgstr "`length(tablica)' jest rozszerzeniem gawk" -#: builtin.c:504 +#: builtin.c:508 msgid "length: received non-string argument" msgstr "length: otrzymano argument, który nie jest Å‚aÅ„cuchem" -#: builtin.c:535 +#: builtin.c:539 msgid "log: received non-numeric argument" msgstr "log: otrzymano argument, który nie jest liczbÄ…" -#: builtin.c:538 +#: builtin.c:542 #, c-format msgid "log: received negative argument %g" msgstr "log: otrzymano ujemny argument %g" -#: builtin.c:694 builtin.c:699 +#: builtin.c:698 builtin.c:703 msgid "fatal: must use `count$' on all formats or none" msgstr "fatal: należy użyć `count$' we wszystkich formatach lub nic" -#: builtin.c:761 +#: builtin.c:766 #, c-format msgid "field width is ignored for `%%' specifier" msgstr "szerokość pola jest ignorowana dla specyfikatora `%%'" -#: builtin.c:763 +#: builtin.c:768 #, c-format msgid "precision is ignored for `%%' specifier" msgstr "precyzja jest ignorowana dla specyfikatora `%%'" -#: builtin.c:765 +#: builtin.c:770 #, c-format msgid "field width and precision are ignored for `%%' specifier" msgstr "szerokość pola i precyzja sÄ… ignorowane dla specyfikatora `%%'" -#: builtin.c:816 +#: builtin.c:821 msgid "fatal: `$' is not permitted in awk formats" msgstr "fatal: `$' jest niedozwolony w formatach awk" -#: builtin.c:825 +#: builtin.c:830 msgid "fatal: arg count with `$' must be > 0" msgstr "fatal: argument count z `$' musi być > 0" -#: builtin.c:829 +#: builtin.c:834 #, c-format msgid "fatal: arg count %ld greater than total number of supplied arguments" msgstr "" "fatal: argument count %ld wiÄ™kszy niż caÅ‚kowita suma argumentów dostarczonych" -#: builtin.c:833 +#: builtin.c:838 msgid "fatal: `$' not permitted after period in format" msgstr "fatal: `$' jest niedozwolony po kropce w formacie" -#: builtin.c:849 +#: builtin.c:854 msgid "fatal: no `$' supplied for positional field width or precision" msgstr "fatal: brak `$' dla pozycyjnej szerokoÅ›ci pola lub precyzji" -#: builtin.c:920 +#: builtin.c:925 msgid "`l' is meaningless in awk formats; ignored" msgstr "`l' jest bezsensowny w formatach awk; zignorowany" -#: builtin.c:924 +#: builtin.c:929 msgid "fatal: `l' is not permitted in POSIX awk formats" msgstr "fatal: `l' jest niedozwolony w formatach POSIX awk" -#: builtin.c:937 +#: builtin.c:942 msgid "`L' is meaningless in awk formats; ignored" msgstr "`L' jest bezsensowny w formatach awk; zignorowany" -#: builtin.c:941 +#: builtin.c:946 msgid "fatal: `L' is not permitted in POSIX awk formats" msgstr "fatal: `L' jest niedozwolony w formatach POSIX awk" -#: builtin.c:954 +#: builtin.c:959 msgid "`h' is meaningless in awk formats; ignored" msgstr "`h' jest bezsensowny w formatach awk; zignorowany" -#: builtin.c:958 +#: builtin.c:963 msgid "fatal: `h' is not permitted in POSIX awk formats" msgstr "fatal: `h' jest niedozwolony w formatach POSIX awk" -#: builtin.c:1271 +#: builtin.c:1276 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "[s]printf: wartość %g jest poza zasiÄ™giem dla formatu `%%%c'" -#: builtin.c:1331 +#: builtin.c:1336 #, c-format msgid "ignoring unknown format specifier character `%c': no argument converted" msgstr "" "pominiÄ™cie nieznanego formatu specyfikatora znaku `%c': nie skonwertowano " "argumentu" -#: builtin.c:1336 +#: builtin.c:1341 msgid "fatal: not enough arguments to satisfy format string" msgstr "" "fatal: brak wystarczajÄ…cej liczby argumentów, aby zaspokoić Å‚aÅ„cuch " "formatujÄ…cy" -#: builtin.c:1338 +#: builtin.c:1343 msgid "^ ran out for this one" msgstr "zabrakÅ‚o ^" -#: builtin.c:1345 +#: builtin.c:1350 msgid "[s]printf: format specifier does not have control letter" msgstr "[s]printf: specyfikator formatu nie posiada kontrolnej litery" -#: builtin.c:1348 +#: builtin.c:1353 msgid "too many arguments supplied for format string" msgstr "zbyt dużo podanych argumentów w Å‚aÅ„cuchu formatujÄ…cym" -#: builtin.c:1422 builtin.c:1433 +#: builtin.c:1427 builtin.c:1438 msgid "printf: no arguments" msgstr "printf: brak argumentów" -#: builtin.c:1474 +#: builtin.c:1479 msgid "sqrt: received non-numeric argument" msgstr "sqrt: otrzymano argument, który nie jest liczbÄ…" -#: builtin.c:1478 +#: builtin.c:1483 #, c-format msgid "sqrt: called with negative argument %g" msgstr "sqrt: wywoÅ‚ana z ujemnym argumentem %g" -#: builtin.c:1502 +#: builtin.c:1507 #, c-format msgid "substr: length %g is not >= 1" msgstr "substr: dÅ‚ugość %g nie jest >= 1" -#: builtin.c:1504 +#: builtin.c:1509 #, c-format msgid "substr: length %g is not >= 0" msgstr "substr: dÅ‚ugość %g nie jest >= 0" -#: builtin.c:1511 +#: builtin.c:1516 #, c-format msgid "substr: non-integer length %g will be truncated" msgstr "substr: dÅ‚ugość %g, która nie jest liczbÄ… caÅ‚kowitÄ…, zostanie obciÄ™ta" -#: builtin.c:1516 +#: builtin.c:1521 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "substr: dÅ‚ugość %g zbyt duża dla indeksu Å‚aÅ„cucha, obcinanie do %g" -#: builtin.c:1528 +#: builtin.c:1533 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "substr: poczÄ…tkowy indeks %g jest nieprawidÅ‚owy, nastÄ…pi użycie 1" -#: builtin.c:1533 +#: builtin.c:1538 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "" "substr: poczÄ…tkowy indeks %g, który nie jest liczbÄ… caÅ‚kowitÄ…, zostanie " "obciÄ™ty" -#: builtin.c:1558 +#: builtin.c:1563 msgid "substr: source string is zero length" msgstr "substr: Å‚aÅ„cuch źródÅ‚owy ma zerowÄ… dÅ‚ugość" -#: builtin.c:1574 +#: builtin.c:1579 #, c-format msgid "substr: start index %g is past end of string" msgstr "substr: poczÄ…tkowy indeks %g leży poza koÅ„cem Å‚aÅ„cucha" -#: builtin.c:1582 +#: builtin.c:1587 #, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" @@ -772,230 +728,225 @@ msgstr "" "substr: dÅ‚ugość %g zaczynajÄ…c od %g przekracza dÅ‚ugość pierwszego argumentu " "(%lu)" -#: builtin.c:1656 +#: builtin.c:1661 msgid "strftime: format value in PROCINFO[\"strftime\"] has numeric type" msgstr "" "strftime: wartość formatu w PROCINFO[\"strftime\"] posiada typ numeryczny" -#: builtin.c:1679 +#: builtin.c:1684 msgid "strftime: received non-numeric second argument" msgstr "strftime: otrzymano drugi argument, który nie jest liczbÄ…" -#: builtin.c:1682 +#: builtin.c:1687 msgid "strftime: second argument less than 0 or too big for time_t" -msgstr "" +msgstr "strftime: drugi argument mniejszy od 0 lub zbyt duży dla time_t" -#: builtin.c:1689 +#: builtin.c:1694 msgid "strftime: received non-string first argument" msgstr "strftime: otrzymano pierwszy argument, który nie jest Å‚aÅ„cuchem" -#: builtin.c:1695 +#: builtin.c:1701 msgid "strftime: received empty format string" msgstr "strftime: otrzymano pusty Å‚aÅ„cuch formatujÄ…cy" -#: builtin.c:1761 +#: builtin.c:1767 msgid "mktime: received non-string argument" msgstr "mktime: otrzymano argument, który nie jest Å‚aÅ„cuchem" -#: builtin.c:1778 +#: builtin.c:1784 msgid "mktime: at least one of the values is out of the default range" msgstr "mktime: przynajmniej jedna z wartoÅ›ci jest poza domyÅ›lnym zakresem" -#: builtin.c:1813 +#: builtin.c:1819 msgid "'system' function not allowed in sandbox mode" msgstr "funkcja 'system' nie jest dozwolona w trybie piaskownicy" -#: builtin.c:1818 +#: builtin.c:1824 msgid "system: received non-string argument" msgstr "system: otrzymano argument, który nie jest Å‚aÅ„cuchem" -#: builtin.c:1873 eval.c:1159 eval.c:1790 eval.c:1803 -#, c-format -msgid "reference to uninitialized variable `%s'" -msgstr "odwoÅ‚anie do niezainicjowanej zmiennej `%s'" - -#: builtin.c:1940 +#: builtin.c:1942 #, c-format msgid "reference to uninitialized field `$%d'" msgstr "odwoÅ‚anie do niezainicjowanego pola `$%d'" -#: builtin.c:2027 +#: builtin.c:2029 msgid "tolower: received non-string argument" msgstr "tolower: otrzymano argument, który nie jest Å‚aÅ„cuchem" -#: builtin.c:2061 +#: builtin.c:2063 msgid "toupper: received non-string argument" msgstr "toupper: otrzymano argument, który nie jest Å‚aÅ„cuchem" -#: builtin.c:2097 +#: builtin.c:2099 msgid "atan2: received non-numeric first argument" msgstr "atan2: otrzymano pierwszy argument, który nie jest liczbÄ…" -#: builtin.c:2099 +#: builtin.c:2101 msgid "atan2: received non-numeric second argument" msgstr "atan2: otrzymano drugi argument, który nie jest liczbÄ…" -#: builtin.c:2118 +#: builtin.c:2120 msgid "sin: received non-numeric argument" msgstr "sin: otrzymano argument, który nie jest liczbÄ…" -#: builtin.c:2134 +#: builtin.c:2136 msgid "cos: received non-numeric argument" msgstr "cos: otrzymano argument, który nie jest liczbÄ…" -#: builtin.c:2187 +#: builtin.c:2189 msgid "srand: received non-numeric argument" msgstr "srand: otrzymano argument, który nie jest liczbÄ…" -#: builtin.c:2218 +#: builtin.c:2220 msgid "match: third argument is not an array" msgstr "match: otrzymano trzeci argument, który nie jest tablicÄ…" -#: builtin.c:2482 +#: builtin.c:2484 msgid "gensub: third argument of 0 treated as 1" msgstr "gensub: trzeci argument 0 potraktowany jako 1" -#: builtin.c:2775 +#: builtin.c:2777 msgid "lshift: received non-numeric first argument" msgstr "lshift: otrzymano pierwszy argument, który nie jest liczbÄ…" -#: builtin.c:2777 +#: builtin.c:2779 msgid "lshift: received non-numeric second argument" msgstr "lshift: otrzymano drugi argument, który nie jest liczbÄ…" -#: builtin.c:2783 +#: builtin.c:2785 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "lshift(%lf, %lf): ujemne wartoÅ›ci spowodujÄ… dziwne wyniki" -#: builtin.c:2785 +#: builtin.c:2787 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "lshift(%lf, %lf): uÅ‚amkowe wartoÅ›ci zostanÄ… obciÄ™te" -#: builtin.c:2787 +#: builtin.c:2789 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "" "lshift(%lf, %lf): zbyt duża wartość przesuniÄ™cia spowoduje dziwne wyniki" -#: builtin.c:2812 +#: builtin.c:2814 msgid "rshift: received non-numeric first argument" msgstr "rshift: otrzymano pierwszy argument, który nie jest liczbÄ…" -#: builtin.c:2814 +#: builtin.c:2816 msgid "rshift: received non-numeric second argument" msgstr "rshift: otrzymano drugi argument, który nie jest liczbÄ…" -#: builtin.c:2820 +#: builtin.c:2822 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "rshift(%lf, %lf): ujemne wartoÅ›ci spowodujÄ… dziwne wyniki" -#: builtin.c:2822 +#: builtin.c:2824 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "rshift(%lf, %lf): uÅ‚amkowe wartoÅ›ci zostanÄ… obciÄ™te" -#: builtin.c:2824 +#: builtin.c:2826 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "" "rshift(%lf, %lf): zbyt duża wartość przesuniÄ™cia spowoduje dziwne wyniki" -#: builtin.c:2849 +#: builtin.c:2851 msgid "and: received non-numeric first argument" msgstr "and: otrzymano pierwszy argument, który nie jest liczbÄ…" -#: builtin.c:2851 +#: builtin.c:2853 msgid "and: received non-numeric second argument" msgstr "and: otrzymano drugi argument, który nie jest liczbÄ…" -#: builtin.c:2857 +#: builtin.c:2859 #, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "and(%lf, %lf): ujemne wartoÅ›ci spowodujÄ… dziwne wyniki" -#: builtin.c:2859 +#: builtin.c:2861 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "and(%lf, %lf): uÅ‚amkowe wartoÅ›ci zostanÄ… obciÄ™te" -#: builtin.c:2884 +#: builtin.c:2886 msgid "or: received non-numeric first argument" msgstr "or: otrzymano pierwszy argument, który nie jest liczbÄ…" -#: builtin.c:2886 +#: builtin.c:2888 msgid "or: received non-numeric second argument" msgstr "or: otrzymano drugi argument, który nie jest liczbÄ…" -#: builtin.c:2892 +#: builtin.c:2894 #, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "or(%lf, %lf): ujemne wartoÅ›ci spowodujÄ… dziwne wyniki" -#: builtin.c:2894 +#: builtin.c:2896 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "or(%lf, %lf): uÅ‚amkowe wartoÅ›ci zostanÄ… obciÄ™te" -#: builtin.c:2922 +#: builtin.c:2924 msgid "xor: received non-numeric first argument" msgstr "xor: otrzymano pierwszy argument, który nie jest liczbÄ…" -#: builtin.c:2924 +#: builtin.c:2926 msgid "xor: received non-numeric second argument" msgstr "xor: otrzymano drugi argument, który nie jest liczbÄ…" -#: builtin.c:2930 +#: builtin.c:2932 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "xor(%lf, %lf): ujemne wartoÅ›ci spowodujÄ… dziwne wyniki" -#: builtin.c:2932 +#: builtin.c:2934 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "xor(%lf, %lf): uÅ‚amkowe wartoÅ›ci zostanÄ… obciÄ™te" -#: builtin.c:2956 builtin.c:2962 +#: builtin.c:2958 builtin.c:2964 msgid "compl: received non-numeric argument" msgstr "compl: otrzymano argument, który nie jest liczbÄ…" -#: builtin.c:2964 +#: builtin.c:2966 #, c-format msgid "compl(%lf): negative value will give strange results" msgstr "compl(%lf): ujemne wartoÅ›ci spowodujÄ… dziwne wyniki" -#: builtin.c:2966 +#: builtin.c:2968 #, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "compl(%lf): uÅ‚amkowe wartoÅ›ci zostanÄ… obciÄ™te" -#: builtin.c:3135 +#: builtin.c:3137 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "dcgettext: `%s' nie jest prawidÅ‚owÄ… kategoriÄ… lokalizacji" -#: eval.c:412 +#: eval.c:393 #, c-format msgid "unknown nodetype %d" msgstr "nieznany typ wÄ™zÅ‚a %d" -#: eval.c:423 eval.c:437 +#: eval.c:404 eval.c:418 #, c-format msgid "unknown opcode %d" msgstr "nieznany opcode %d" -#: eval.c:434 +#: eval.c:415 #, c-format msgid "opcode %s not an operator or keyword" msgstr "opcode %s nie jest operatorem ani sÅ‚owem kluczowym" -#: eval.c:488 +#: eval.c:468 msgid "buffer overflow in genflags2str" msgstr "przepeÅ‚nienie bufora w genflags2str" -#: eval.c:698 +#: eval.c:678 #, c-format msgid "" "\n" @@ -1006,219 +957,166 @@ msgstr "" "\t# Stos WywoÅ‚awczy Funkcji:\n" "\n" -#: eval.c:725 +#: eval.c:706 msgid "`IGNORECASE' is a gawk extension" msgstr "`IGNORECASE' jest rozszerzeniem gawk" -#: eval.c:754 +#: eval.c:736 msgid "`BINMODE' is a gawk extension" msgstr "`BINMODE' jest rozszerzeniem gawk" -#: eval.c:812 +#: eval.c:794 #, c-format msgid "BINMODE value `%s' is invalid, treated as 3" msgstr "wartość BINMODE `%s' jest nieprawidÅ‚owa, przyjÄ™to jÄ… jako 3" -#: eval.c:902 +#: eval.c:887 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "zÅ‚a specyfikacja `%sFMT' `%s'" -#: eval.c:980 +#: eval.c:969 msgid "turning off `--lint' due to assignment to `LINT'" msgstr "wyłączenie `--lint' z powodu przypisania do `LINT'" -#: eval.c:1127 eval.c:1777 -#, c-format -msgid "can't use function name `%s' as variable or array" -msgstr "nie można użyć nazwy funkcji `%s' jako zmiennej lub tablicy" - -#: eval.c:1158 eval.c:1789 eval.c:1802 +#: eval.c:1119 #, c-format msgid "reference to uninitialized argument `%s'" msgstr "odwoÅ‚anie do niezainicjowanego argumentu `%s'" -#: eval.c:1177 +#: eval.c:1120 +#, c-format +msgid "reference to uninitialized variable `%s'" +msgstr "odwoÅ‚anie do niezainicjowanej zmiennej `%s'" + +#: eval.c:1138 msgid "attempt to field reference from non-numeric value" msgstr "próba odwoÅ‚ania do pola poprzez nienumerycznÄ… wartość" -#: eval.c:1179 +#: eval.c:1140 msgid "attempt to field reference from null string" msgstr "próba odwoÅ‚ania z zerowego Å‚aÅ„cucha" -#: eval.c:1185 +#: eval.c:1146 #, c-format msgid "attempt to access field %ld" msgstr "próba dostÄ™pu do pola %ld" -#: eval.c:1194 +#: eval.c:1155 #, c-format msgid "reference to uninitialized field `$%ld'" msgstr "odwoÅ‚anie do niezainicjowanego pola `$%ld'" -#: eval.c:1256 +#: eval.c:1242 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "" "funkcja `%s' zostaÅ‚a wywoÅ‚ana z wiÄ™kszÄ… iloÅ›ciÄ… argumentów niż zostaÅ‚o to " "zadeklarowane" -#: eval.c:1437 +#: eval.c:1436 #, c-format msgid "unwind_stack: unexpected type `%s'" msgstr "unwind_stack: niespodziewany typ `%s'" -#: eval.c:1532 +#: eval.c:1536 msgid "division by zero attempted in `/='" msgstr "próba dzielenia przez zero w `/='" -#: eval.c:1539 +#: eval.c:1543 #, c-format msgid "division by zero attempted in `%%='" msgstr "próba dzielenia przez zero w `%%='" -#: eval.c:1876 eval.c:2122 -#, c-format -msgid "attempt to use array `%s[\"%.*s\"]' in a scalar context" -msgstr "próba użycia tablicy `%s[\"%.*s\"]' w kontekÅ›cie skalaru" - -#: eval.c:1907 -msgid "assignment used in conditional context" -msgstr "przypisanie użyte w kontekÅ›cie warunkowym" - -#: eval.c:1911 -msgid "statement has no effect" -msgstr "instrukcja nie ma żadnego efektu" - -#: eval.c:2343 -#, c-format -msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" -msgstr "" -"pÄ™tla for: tablica `%s' zmieniÅ‚a rozmiar z %ld do %ld podczas wykonywania " -"pÄ™tli" - -#: eval.c:2458 -#, c-format -msgid "function called indirectly through `%s' does not exist" -msgstr "poÅ›rednio wywoÅ‚ana funkcja poprzez `%s' nie istnieje" - -#: eval.c:2470 -#, c-format -msgid "function `%s' not defined" -msgstr "funkcja `%s' nie zostaÅ‚a zdefiniowana" - -#: eval.c:2511 -#, c-format -msgid "non-redirected `getline' invalid inside `%s' rule" -msgstr "" -"komenda `getline' bez przekierowania jest nieprawidÅ‚owa wewnÄ…trz reguÅ‚y `%s'" - -#: eval.c:2600 -#, c-format -msgid "error reading input file `%s': %s" -msgstr "błąd podczas czytania z pliku `%s': %s" - -#: eval.c:2614 -#, c-format -msgid "`nextfile' cannot be called from a `%s' rule" -msgstr "instrukcja `nextfile' nie może być wywoÅ‚ana z wnÄ™trza reguÅ‚y `%s'" - -#: eval.c:2694 -#, c-format -msgid "`next' cannot be called from a `%s' rule" -msgstr "instrukcja `next' nie może być wywoÅ‚ana z wnÄ™trza reguÅ‚y `%s'" - -#: eval.c:2760 -#, c-format -msgid "Sorry, don't know how to interpret `%s'" -msgstr "Niestety nie wiem jak zinterpretować `%s'" - -#: ext.c:64 +#: ext.c:70 msgid "extensions are not allowed in sandbox mode" msgstr "rozszerzenia nie sÄ… dozwolone w trybie piaskownicy" -#: ext.c:70 ext.c:75 +#: ext.c:73 msgid "`extension' is a gawk extension" msgstr "`extension' jest rozszerzeniem gawk" -#: ext.c:85 -#, c-format -msgid "fatal: extension: cannot open `%s' (%s)\n" +#: ext.c:80 +#, fuzzy, c-format +msgid "extension: cannot open library `%s' (%s)\n" msgstr "fatal: rozszerzenie: nie można otworzyć `%s' (%s)\n" -#: ext.c:94 -#, c-format +#: ext.c:86 +#, fuzzy, c-format msgid "" -"fatal: extension: library `%s': does not define " -"`plugin_is_GPL_compatible' (%s)\n" +"extension: library `%s': does not define `plugin_is_GPL_compatible' (%s)\n" msgstr "" "fatal: rozszerzenie: biblioteka `%s': nie definiuje " "`plugin_is_GPL_compatible' (%s)\n" -#: ext.c:103 -#, c-format -msgid "fatal: extension: library `%s': cannot call function `%s' (%s)\n" +#: ext.c:91 +#, fuzzy, c-format +msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "" "fatal: rozszerzenie: biblioteka `%s': nie można wywoÅ‚ać funkcji `%s' (%s)\n" -#: ext.c:137 +#: ext.c:119 msgid "extension: missing function name" msgstr "rozszerzenie: brakujÄ…ca nazwa funkcji" -#: ext.c:142 +#: ext.c:124 #, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "rozszerzenie: nieprawidÅ‚owy znak `%c' w nazwie funkcji `%s'" -#: ext.c:151 +#: ext.c:132 #, c-format msgid "extension: can't redefine function `%s'" msgstr "rozszerzenie: nie można zredefiniować funkcji `%s'" -#: ext.c:155 +#: ext.c:136 #, c-format msgid "extension: function `%s' already defined" msgstr "rozserzenie: funkcja `%s' zostaÅ‚a już zdefiniowana" -#: ext.c:160 +#: ext.c:140 #, c-format msgid "extension: function name `%s' previously defined" msgstr "rozserzenie: nazwa funkcji `%s' zostaÅ‚a zdefiniowana wczeÅ›niej" -#: ext.c:162 +#: ext.c:142 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "rozszerzenie: nie można użyć wbudowanej w gawk `%s' jako nazwy funkcji" -#: ext.c:166 +#: ext.c:145 #, c-format msgid "make_builtin: negative argument count for function `%s'" msgstr "make_builtin: ujemny licznik argumentów dla funkcji `%s'" -#: ext.c:269 +#: ext.c:207 #, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "funkcja `%s' zdefiniowana aby pobrać nie wiÄ™cej niż %d argument(ów)" -#: ext.c:272 +#: ext.c:210 #, c-format msgid "function `%s': missing argument #%d" msgstr "funkcja `%s': brakuje #%d argumentu" -#: ext.c:289 +#: ext.c:227 #, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "funkcja `%s': argument #%d: próba użycia skalaru jako tablicy" -#: ext.c:293 +#: ext.c:231 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "funkcja `%s': argument #%d: próba użycia tablicy jako skalaru" -#: ext.c:306 +#: ext.c:245 msgid "Operation Not Supported" msgstr "Operacja nie jest wspierana" +#: ext.c:257 +msgid "dynamic loading of library not supported" +msgstr "" + #: field.c:328 msgid "NF set to negative value" msgstr "NF ustawiony na wartość ujemnÄ…" @@ -1283,553 +1181,561 @@ msgstr "" "patsplit: nie można użyć podtablicy czwartego argumentu dla drugiego " "argumentu" -#: field.c:1110 +#: field.c:1111 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "`FIELDWIDTHS' jest rozszerzeniem gawk" -#: field.c:1173 +#: field.c:1175 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "nieprawidÅ‚owa wartość FIELDWIDTHS, w pobliżu `%s'" -#: field.c:1246 +#: field.c:1248 msgid "null string for `FS' is a gawk extension" msgstr "zerowy Å‚aÅ„cuch dla `FS' jest rozszerzeniem gawk" -#: field.c:1250 +#: field.c:1252 msgid "old awk does not support regexps as value of `FS'" msgstr "stary awk nie wspiera wyrażeÅ„ regularnych jako wartoÅ›ci `FS'" -#: field.c:1369 +#: field.c:1371 msgid "`FPAT' is a gawk extension" msgstr "`FPAT' jest rozszerzeniem gawk" -#: getopt.c:574 getopt.c:590 -#, c-format -msgid "%s: option '%s' is ambiguous\n" +#: getopt.c:604 getopt.c:633 +#, fuzzy, c-format +msgid "%s: option '%s' is ambiguous; possibilities:" msgstr "%s: opcja '%s' jest niejednoznaczna\n" -#: getopt.c:623 getopt.c:627 +#: getopt.c:679 getopt.c:683 #, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: opcja '--%s' nie może mieć argumentów\n" -#: getopt.c:636 getopt.c:641 +#: getopt.c:692 getopt.c:697 #, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: opcja '%c%s' nie może mieć argumentów\n" -#: getopt.c:684 getopt.c:703 +#: getopt.c:740 getopt.c:759 #, c-format msgid "%s: option '--%s' requires an argument\n" msgstr "%s: opcja '--%s' wymaga argumentu\n" -#: getopt.c:741 getopt.c:744 +#: getopt.c:797 getopt.c:800 #, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: nieznana opcja '--%s'\n" -#: getopt.c:752 getopt.c:755 +#: getopt.c:808 getopt.c:811 #, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: nieznana opcja '%c%s'\n" -#: getopt.c:804 getopt.c:807 +#: getopt.c:860 getopt.c:863 #, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: błędna opcja -- '%c'\n" -#: getopt.c:857 getopt.c:874 getopt.c:1082 getopt.c:1100 +#: getopt.c:916 getopt.c:933 getopt.c:1143 getopt.c:1161 #, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: opcja wymaga argumentu -- '%c'\n" -#: getopt.c:930 getopt.c:946 +#: getopt.c:989 getopt.c:1005 #, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: opcja '-W %s' jest niejednoznaczna\n" -#: getopt.c:970 getopt.c:988 +#: getopt.c:1029 getopt.c:1047 #, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: opcja '-W %s' nie może mieć argumentów\n" -#: getopt.c:1009 getopt.c:1027 +#: getopt.c:1068 getopt.c:1086 #, c-format msgid "%s: option '-W %s' requires an argument\n" msgstr "%s: opcja '-W %s' wymaga argumentu\n" -#: io.c:280 +#: io.c:315 #, c-format msgid "command line argument `%s' is a directory: skipped" msgstr "argument linii poleceÅ„ `%s' jest katalogiem: pominiÄ™to" -#: io.c:283 io.c:385 +#: io.c:318 io.c:421 #, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "nie można otworzyć pliku `%s' do czytania (%s)" -#: io.c:501 +#: io.c:537 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "zamkniÄ™cie fd %d (`%s') nie powiodÅ‚o siÄ™ (%s)" -#: io.c:578 +#: io.c:614 msgid "redirection not allowed in sandbox mode" msgstr "przekierowanie nie jest dozwolone w trybie piaskownicy" -#: io.c:612 +#: io.c:648 #, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "wyrażenie w przekierowaniu `%s' ma tylko wartość numerycznÄ…" -#: io.c:618 +#: io.c:654 #, c-format msgid "expression for `%s' redirection has null string value" msgstr "wyrażenie dla przekierowania `%s' ma zerowÄ… wartość Å‚aÅ„cucha" -#: io.c:624 +#: io.c:659 #, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "" "nazwa pliku `%s' dla przekierowania `%s' może być rezultatem logicznego " "wyrażenia" -#: io.c:667 +#: io.c:702 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "niepotrzebne mieszanie `>' i `>>' dla pliku `%.*s'" -#: io.c:720 +#: io.c:755 #, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "nie można otworzyć potoku `%s' jako wyjÅ›cia (%s)" -#: io.c:730 +#: io.c:765 #, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "nie można otworzyć potoku `%s' jako wejÅ›cia (%s)" -#: io.c:753 +#: io.c:788 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "" "nie można otworzyć dwukierunkowego potoku `%s' jako wejÅ›cia/wyjÅ›cia (%s)" -#: io.c:835 +#: io.c:870 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "nie można przekierować z `%s' (%s)" -#: io.c:838 +#: io.c:873 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "nie można przekierować do `%s' (%s)" -#: io.c:889 +#: io.c:924 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "" "osiÄ…gniÄ™to systemowy limit otwartych plików: rozpoczÄ™cie multipleksowania " "deskryptorów plików" -#: io.c:905 +#: io.c:940 #, c-format msgid "close of `%s' failed (%s)." msgstr "zamkniÄ™cie `%s' nie powiodÅ‚o siÄ™ (%s)." -#: io.c:913 +#: io.c:948 msgid "too many pipes or input files open" msgstr "zbyt dużo otwartych potoków lub plików wejÅ›ciowych" -#: io.c:935 +#: io.c:970 msgid "close: second argument must be `to' or `from'" msgstr "close: drugim argumentem musi być `to' lub `from'" -#: io.c:952 +#: io.c:987 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "" "close: `%.*s' nie jest ani otwartym plikiem, ani potokiem, ani procesem" -#: io.c:957 +#: io.c:992 msgid "close of redirection that was never opened" msgstr "zamkniÄ™cie przekierowania, które nigdy nie zostaÅ‚o otwarte" -#: io.c:1054 +#: io.c:1089 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "" "close: przekierowanie `%s' nie zostaÅ‚o otwarte z `|&', drugi argument " "zignorowany" -#: io.c:1070 +#: io.c:1105 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "status awarii (%d) podczas zamykania potoku `%s' (%s)" -#: io.c:1073 +#: io.c:1108 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "status awarii (%d) podczas zamykania pliku `%s' (%s)" -#: io.c:1093 +#: io.c:1128 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "brak jawnego zamkniÄ™cia gniazdka `%s'" -#: io.c:1096 +#: io.c:1131 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "brak jawnego zamkniÄ™cia procesu pomocniczego `%s'" -#: io.c:1099 +#: io.c:1134 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "brak jawnego zamkniÄ™cia potoku `%s'" -#: io.c:1102 +#: io.c:1137 #, c-format msgid "no explicit close of file `%s' provided" msgstr "brak jawnego zamkniÄ™cia pliku `%s'" -#: io.c:1130 io.c:1185 main.c:793 main.c:830 +#: io.c:1165 io.c:1220 main.c:798 main.c:835 #, c-format msgid "error writing standard output (%s)" msgstr "błąd podczas zapisu na standardowe wyjÅ›cie (%s)" -#: io.c:1134 io.c:1190 +#: io.c:1169 io.c:1225 #, c-format msgid "error writing standard error (%s)" msgstr "błąd podczas zapisu na standardowe wyjÅ›cie diagnostyczne (%s)" -#: io.c:1142 +#: io.c:1177 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "opróżnienie potoku `%s' nie powiodÅ‚o siÄ™ (%s)." -#: io.c:1145 +#: io.c:1180 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "" "opróżnienie potoku do `%s' przez proces pomocniczy nie powiodÅ‚o siÄ™ (%s)." -#: io.c:1148 +#: io.c:1183 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "opróżnienie pliku `%s' nie powiodÅ‚o siÄ™ (%s)." -#: io.c:1263 +#: io.c:1298 #, c-format msgid "local port %s invalid in `/inet'" msgstr "nieprawidÅ‚owy lokalny port %s w `/inet'" -#: io.c:1280 +#: io.c:1315 #, c-format msgid "remote host and port information (%s, %s) invalid" msgstr "informacje o zdalnym hoÅ›cie i porcie sÄ… nieprawidÅ‚owe (%s, %s)" -#: io.c:1432 +#: io.c:1467 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "nie dostarczono (znanego) protokoÅ‚u w specjalnym pliku `%s'" -#: io.c:1446 +#: io.c:1481 #, c-format msgid "special file name `%s' is incomplete" msgstr "specjalna nazwa pliku `%s' jest niekompletna" -#: io.c:1463 +#: io.c:1498 msgid "must supply a remote hostname to `/inet'" msgstr "należy dostarczyć nazwÄ™ zdalnego hosta do `/inet'" -#: io.c:1481 +#: io.c:1516 msgid "must supply a remote port to `/inet'" msgstr "należy dostarczyć numer zdalnego portu do `/inet'" -#: io.c:1527 +#: io.c:1562 msgid "TCP/IP communications are not supported" msgstr "Komunikacja TCP/IP nie jest wspierana" -#: io.c:1694 +#: io.c:1729 #, c-format msgid "could not open `%s', mode `%s'" msgstr "nie można otworzyć `%s', tryb `%s'" -#: io.c:1748 +#: io.c:1783 #, c-format msgid "close of master pty failed (%s)" msgstr "zamkniÄ™cie nadrzÄ™dnego pty nie powiodÅ‚o siÄ™ (%s)" -#: io.c:1750 io.c:1918 io.c:2075 +#: io.c:1785 io.c:1953 io.c:2110 #, c-format msgid "close of stdout in child failed (%s)" msgstr "" "zamkniÄ™cie standardowego wyjÅ›cia w procesie potomnym nie powiodÅ‚o siÄ™ (%s)" -#: io.c:1753 +#: io.c:1788 #, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "" "przesuniÄ™cie podlegÅ‚ego pty na standardowe wyjÅ›cie w procesie potomnym nie " "powiodÅ‚o siÄ™ (dup: %s)" -#: io.c:1755 io.c:1923 +#: io.c:1790 io.c:1958 #, c-format msgid "close of stdin in child failed (%s)" msgstr "" "zamkniÄ™cie standardowego wejÅ›cia w procesie potomnym nie powiodÅ‚o siÄ™ (%s)" -#: io.c:1758 +#: io.c:1793 #, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "" "przesuniÄ™cie podlegÅ‚ego pty na standardowe wejÅ›cie w procesie potomnym nie " "powiodÅ‚o siÄ™ (dup: %s)" -#: io.c:1760 io.c:1781 +#: io.c:1795 io.c:1816 #, c-format msgid "close of slave pty failed (%s)" msgstr "zamkniÄ™cie podlegÅ‚ego pty nie powiodÅ‚o siÄ™ (%s)" -#: io.c:1859 io.c:1921 io.c:2053 io.c:2078 +#: io.c:1894 io.c:1956 io.c:2088 io.c:2113 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "" "przesuniÄ™cie potoku na standardowe wyjÅ›cie w procesie potomnym nie powiodÅ‚o " "siÄ™ (dup: %s)" -#: io.c:1866 io.c:1926 +#: io.c:1901 io.c:1961 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "" "przesuniÄ™cie potoku na standardowe wejÅ›cie w procesie potomnym nie powiodÅ‚o " "siÄ™ (dup: %s)" -#: io.c:1886 io.c:2068 +#: io.c:1921 io.c:2103 msgid "restoring stdout in parent process failed\n" msgstr "" "odzyskanie standardowego wyjÅ›cia w procesie potomnym nie powiodÅ‚o siÄ™\n" -#: io.c:1894 +#: io.c:1929 msgid "restoring stdin in parent process failed\n" msgstr "" "odzyskanie standardowego wejÅ›cia w procesie potomnym nie powiodÅ‚o siÄ™\n" -#: io.c:1929 io.c:2080 io.c:2094 +#: io.c:1964 io.c:2115 io.c:2129 #, c-format msgid "close of pipe failed (%s)" msgstr "zamkniÄ™cie potoku nie powiodÅ‚o siÄ™ (%s)" -#: io.c:1974 +#: io.c:2009 msgid "`|&' not supported" msgstr "`|&' nie jest wspierany" -#: io.c:2040 +#: io.c:2075 #, c-format msgid "cannot open pipe `%s' (%s)" msgstr "nie można otworzyć potoku `%s' (%s)" -#: io.c:2088 +#: io.c:2123 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "nie można utworzyć procesu potomnego dla `%s' (fork: %s)" -#: io.c:2521 +#: io.c:2613 #, c-format msgid "data file `%s' is empty" msgstr "plik danych `%s' jest pusty" -#: io.c:2562 io.c:2570 +#: io.c:2654 io.c:2662 msgid "could not allocate more input memory" msgstr "nie można zarezerwować wiÄ™cej pamiÄ™ci wejÅ›ciowej" -#: io.c:3128 +#: io.c:3223 msgid "multicharacter value of `RS' is a gawk extension" msgstr "wieloznakowa wartość `RS' jest rozszerzeniem gawk" -#: io.c:3233 +#: io.c:3313 msgid "IPv6 communication is not supported" msgstr "Komunikacja IPv6 nie jest wspierana" -#: main.c:364 +#: main.c:353 msgid "`-m[fr]' option irrelevant in gawk" msgstr "nieistotna opcja `-m[fr]' w gawk" -#: main.c:366 +#: main.c:355 msgid "-m option usage: `-m[fr] nnn'" msgstr "użycie opcji -m: `-m[fr] nnn'" -#: main.c:389 +#: main.c:384 msgid "empty argument to `-e/--source' ignored" msgstr "pusty argument dla opcji `-e/--source' zostaÅ‚ zignorowany" -#: main.c:460 +#: main.c:464 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "%s: opcja `-W %s' nierozpoznana i zignorowana\n" -#: main.c:513 +#: main.c:510 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: opcja musi mieć argument -- %c\n" -#: main.c:534 +#: main.c:531 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "" "zmienna Å›rodowiskowa `POSIXLY_CORRECT' ustawiona: `--posix' zostaÅ‚ włączony" -#: main.c:540 +#: main.c:537 msgid "`--posix' overrides `--traditional'" msgstr "opcja `--posix' zostanie użyta nad `--traditional'" -#: main.c:551 +#: main.c:548 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "`--posix'/`--traditional' użyte nad opcjÄ… `--non-decimal-data'" -#: main.c:555 +#: main.c:552 #, c-format msgid "running %s setuid root may be a security problem" msgstr "" "uruchamianie %s setuid root może być problemem pod wzglÄ™dem bezpieczeÅ„stwa" -#: main.c:560 +#: main.c:557 msgid "`--posix' overrides `--binary'" msgstr "opcja `--posix' zostanie użyta nad `--binary'" -#: main.c:611 +#: main.c:600 #, c-format msgid "can't set binary mode on stdin (%s)" msgstr "nie można ustawić trybu binarnego na standardowym wejÅ›ciu (%s)" -#: main.c:614 +#: main.c:603 #, c-format msgid "can't set binary mode on stdout (%s)" msgstr "nie można ustawić trybu binarnego na standardowym wyjÅ›ciu (%s)" -#: main.c:616 +#: main.c:605 #, c-format msgid "can't set binary mode on stderr (%s)" msgstr "nie można ustawić trybu binarnego na wyjÅ›ciu diagnostycznym (%s)" -#: main.c:655 +#: main.c:653 msgid "no program text at all!" msgstr "brak tekstu programu!" -#: main.c:733 +#: main.c:737 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "" "Użycie: %s [styl opcji POSIX lub GNU] -f plik_z_programem [--] plik ...\n" -#: main.c:735 +#: main.c:739 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "Użycie: %s [styl opcji POSIX lub GNU] [--] %cprogram%c plik ...\n" -#: main.c:740 +#: main.c:744 msgid "POSIX options:\t\tGNU long options: (standard)\n" msgstr "Opcje POSIX:\t\tDÅ‚ugie opcje GNU (standard):\n" -#: main.c:741 +#: main.c:745 msgid "\t-f progfile\t\t--file=progfile\n" msgstr "\t-f program\t\t--file=program\n" -#: main.c:742 +#: main.c:746 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "\t-F fs\t\t\t--field-separator=fs\n" -#: main.c:743 +#: main.c:747 msgid "\t-v var=val\t\t--assign=var=val\n" msgstr "\t-v zmienna=wartość\t--assign=zmienna=wartość\n" -#: main.c:744 +#: main.c:748 msgid "Short options:\t\tGNU long options: (extensions)\n" msgstr "Krótkie opcje:\t\tDÅ‚ugie opcje GNU: (rozszerzenia)\n" -#: main.c:745 +#: main.c:749 msgid "\t-b\t\t\t--characters-as-bytes\n" msgstr "\t-b\t\t\t--characters-as-bytes\n" -#: main.c:746 +#: main.c:750 msgid "\t-c\t\t\t--traditional\n" msgstr "\t-c\t\t\t--traditional\n" -#: main.c:747 +#: main.c:751 msgid "\t-C\t\t\t--copyright\n" msgstr "\t-C\t\t\t--copyright\n" -#: main.c:748 -#, fuzzy +#: main.c:752 msgid "\t-d[file]\t\t--dump-variables[=file]\n" -msgstr "\t-d [plik]\t\t--dump-variables[=plik]\n" +msgstr "\t-d[plik]\t\t--dump-variables[=plik]\n" -#: main.c:749 +#: main.c:753 +#, fuzzy +msgid "\t-D[file]\t\t--debug[=file]\n" +msgstr "\t-p[plik]\t\t--profile[=plik]\n" + +#: main.c:754 msgid "\t-e 'program-text'\t--source='program-text'\n" msgstr "\t-e 'tekst-programu'\t--source='tekst-programu'\n" -#: main.c:750 +#: main.c:755 msgid "\t-E file\t\t\t--exec=file\n" msgstr "\t-E plik\t\t\t--exec=plik\n" -#: main.c:751 +#: main.c:756 msgid "\t-g\t\t\t--gen-pot\n" msgstr "\t-g\t\t\t--gen-pot\n" -#: main.c:752 +#: main.c:757 msgid "\t-h\t\t\t--help\n" msgstr "\t-h\t\t\t--help\n" -#: main.c:753 +#: main.c:758 +msgid "\t-l library\t\t--load=library\n" +msgstr "" + +#: main.c:759 msgid "\t-L [fatal]\t\t--lint[=fatal]\n" msgstr "\t-L [fatal]\t\t--lint[=fatal]\n" -#: main.c:754 +#: main.c:760 msgid "\t-n\t\t\t--non-decimal-data\n" msgstr "\t-n\t\t\t--non-decimal-data\n" -#: main.c:755 +#: main.c:761 msgid "\t-N\t\t\t--use-lc-numeric\n" msgstr "\t-N\t\t\t--use-lc-numeric\n" -#: main.c:756 +#: main.c:762 +#, fuzzy +msgid "\t-o[file]\t\t--pretty-print[=file]\n" +msgstr "\t-p[plik]\t\t--profile[=plik]\n" + +#: main.c:763 msgid "\t-O\t\t\t--optimize\n" msgstr "\t-O\t\t\t--optimize\n" -#: main.c:757 -#, fuzzy +#: main.c:764 msgid "\t-p[file]\t\t--profile[=file]\n" -msgstr "\t-p [plik]\t\t--profile[=plik]\n" +msgstr "\t-p[plik]\t\t--profile[=plik]\n" -#: main.c:758 +#: main.c:765 msgid "\t-P\t\t\t--posix\n" msgstr "\t-P\t\t\t--posix\n" -#: main.c:759 +#: main.c:766 msgid "\t-r\t\t\t--re-interval\n" msgstr "\t-r\t\t\t--re-interval\n" -#: main.c:761 -msgid "\t-R file\t\t\t--command=file\n" -msgstr "\t-R plik\t\t\t--command=plik\n" - -#: main.c:762 +#: main.c:767 msgid "\t-S\t\t\t--sandbox\n" msgstr "\t-S\t\t\t--sandbox\n" -#: main.c:763 +#: main.c:768 msgid "\t-t\t\t\t--lint-old\n" msgstr "\t-t\t\t\t--lint-old\n" -#: main.c:764 +#: main.c:769 msgid "\t-V\t\t\t--version\n" msgstr "\t-V\t\t\t--version\n" -#: main.c:766 +#: main.c:771 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "\t-W nostalgia\t\t--nostalgia\n" -#: main.c:769 +#: main.c:774 msgid "\t-Y\t\t--parsedebug\n" msgstr "\t-Y\t\t--parsedebug\n" @@ -1838,7 +1744,7 @@ msgstr "\t-Y\t\t--parsedebug\n" #. for this application. Please add _another line_ with the #. address for translation bugs. #. no-wrap -#: main.c:778 +#: main.c:783 msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" @@ -1851,7 +1757,7 @@ msgstr "" "dokumentacji.\n" "\n" -#: main.c:782 +#: main.c:787 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" @@ -1861,7 +1767,7 @@ msgstr "" "Program domyÅ›lnie czyta standardowe wejÅ›cie i zapisuje standardowe wyjÅ›cie.\n" "\n" -#: main.c:786 +#: main.c:791 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" @@ -1871,7 +1777,7 @@ msgstr "" "\tgawk '{ suma += $1 }; END { print suma }' plik\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" -#: main.c:806 +#: main.c:811 #, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" @@ -1890,7 +1796,7 @@ msgstr "" "tej Licencji lub którejÅ› z późniejszych wersji.\n" "\n" -#: main.c:814 +#: main.c:819 msgid "" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" @@ -1905,7 +1811,7 @@ msgstr "" "PowszechnÄ… LicencjÄ™ PublicznÄ… GNU.\n" "\n" -#: main.c:820 +#: main.c:825 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program. If not, see http://www.gnu.org/licenses/.\n" @@ -1914,16 +1820,16 @@ msgstr "" "Powszechnej Licencji Publicznej GNU (GNU General Public License);\n" "jeÅ›li zaÅ› nie - odwiedź stronÄ™ http://www.gnu.org/licenses/.\n" -#: main.c:855 +#: main.c:860 msgid "-Ft does not set FS to tab in POSIX awk" msgstr "-Ft nie ustawia FS na znak tabulatora w POSIX awk" -#: main.c:1089 +#: main.c:1091 #, c-format msgid "unknown value for field spec: %d\n" msgstr "nieznana wartość dla specyfikacji pola: %d\n" -#: main.c:1170 +#: main.c:1172 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" @@ -1932,84 +1838,79 @@ msgstr "" "%s: argument `%s' dla `-v' nie jest zgodny ze skÅ‚adniÄ… `zmienna=wartość'\n" "\n" -#: main.c:1196 +#: main.c:1198 #, c-format msgid "`%s' is not a legal variable name" msgstr "`%s' nie jest dozwolonÄ… nazwÄ… zmiennej" -#: main.c:1199 +#: main.c:1201 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "`%s' nie jest nazwÄ… zmiennej, szukanie pliku `%s=%s'" -#: main.c:1203 -#, fuzzy, c-format +#: main.c:1205 +#, c-format msgid "cannot use gawk builtin `%s' as variable name" -msgstr "rozszerzenie: nie można użyć wbudowanej w gawk `%s' jako nazwy funkcji" +msgstr "nie można użyć wbudowanej w gawk `%s' jako nazwy zmiennej" -#: main.c:1208 -#, fuzzy, c-format +#: main.c:1210 +#, c-format msgid "cannot use function `%s' as variable name" -msgstr "nie można użyć nazwy funkcji `%s' jako zmiennej lub tablicy" +msgstr "nie można użyć funkcji `%s' jako nazwy zmiennej" -#: main.c:1261 +#: main.c:1263 msgid "floating point exception" msgstr "wyjÄ…tek zmiennopozycyjny" -#: main.c:1268 +#: main.c:1270 msgid "fatal error: internal error" msgstr "fatalny błąd: wewnÄ™trzny błąd" -#: main.c:1283 +#: main.c:1285 msgid "fatal error: internal error: segfault" msgstr "fatalny błąd: wewnÄ™trzny błąd: błąd segmentacji" -#: main.c:1295 +#: main.c:1297 msgid "fatal error: internal error: stack overflow" msgstr "fatalny błąd: wewnÄ™trzny błąd: przepeÅ‚nienie stosu" -#: main.c:1345 +#: main.c:1347 #, c-format msgid "no pre-opened fd %d" msgstr "brak już otwartego fd %d" -#: main.c:1352 +#: main.c:1354 #, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "nie można otworzyć zawczasu /dev/null dla fd %d" -#: main.c:1375 main.c:1384 -#, c-format -msgid "could not find groups: %s" -msgstr "nie można znaleźć grup: %s" - -#: msg.c:63 +#: msg.c:61 #, c-format msgid "cmd. line:" msgstr "linia poleceÅ„:" -#: msg.c:107 +#: msg.c:105 msgid "error: " msgstr "błąd: " -#: node.c:406 +#: node.c:402 msgid "backslash at end of string" msgstr "backslash na koÅ„cu Å‚aÅ„cucha" -#: node.c:517 +#: node.c:479 #, c-format msgid "old awk does not support the `\\%c' escape sequence" msgstr "stary awk nie wspiera sekwencji ucieczki `\\%c'" -#: node.c:568 +#: node.c:530 msgid "POSIX does not allow `\\x' escapes" msgstr "POSIX nie zezwala na sekwencjÄ™ ucieczki `\\x'" -#: node.c:574 +#: node.c:536 msgid "no hex digits in `\\x' escape sequence" msgstr "brak liczb szesnastkowych w sekwencji ucieczki `\\x'" -#: node.c:596 +#: node.c:558 #, c-format msgid "" "hex escape \\x%.*s of %d characters probably not interpreted the way you " @@ -2018,12 +1919,12 @@ msgstr "" "szesnastkowa sekwencja ucieczki \\x%.*s %d znaków prawdopodobnie nie zostaÅ‚a " "zinterpretowana jak tego oczekujesz" -#: node.c:611 +#: node.c:573 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "sekwencja ucieczki `\\%c' potraktowana jako zwykÅ‚e `%c'" -#: node.c:750 +#: node.c:712 msgid "" "Invalid multibyte data detected. There may be a mismatch between your data " "and your locale." @@ -2041,16 +1942,16 @@ msgstr "%s %s `%s': nie można uzyskać flag fd: (fcntl F_GETFD: %s)" msgid "%s %s `%s': could not set close-on-exec: (fcntl F_SETFD: %s)" msgstr "%s %s `%s': nie można ustawić close-on-exec: (fcntl F_SETFD: %s)" -#: profile.c:83 +#: profile.c:69 #, c-format msgid "could not open `%s' for writing: %s" msgstr "nie można otworzyć `%s' do zapisu: %s" -#: profile.c:85 +#: profile.c:71 msgid "sending profile to standard error" msgstr "wysyÅ‚anie profilu na standardowe wyjÅ›cie diagnostyczne" -#: profile.c:203 +#: profile.c:187 #, c-format msgid "" "\t# %s block(s)\n" @@ -2059,7 +1960,7 @@ msgstr "" "\t# %s blok(i)\n" "\n" -#: profile.c:208 +#: profile.c:192 #, c-format msgid "" "\t# Rule(s)\n" @@ -2068,17 +1969,22 @@ msgstr "" "\t# ReguÅ‚a(i)\n" "\n" -#: profile.c:279 +#: profile.c:266 #, c-format msgid "internal error: %s with null vname" msgstr "wewnÄ™trzny błąd: %s z zerowym vname" -#: profile.c:952 +#: profile.c:528 +#, fuzzy +msgid "internal error: builtin with null fname" +msgstr "wewnÄ™trzny błąd: %s z zerowym vname" + +#: profile.c:943 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "\t# profil programu gawk, utworzony %s\n" -#: profile.c:1331 +#: profile.c:1321 #, c-format msgid "" "\n" @@ -2087,93 +1993,170 @@ msgstr "" "\n" "\t# Funkcje, spis alfabetyczny\n" -#: profile.c:1370 +#: profile.c:1359 #, c-format msgid "redir2str: unknown redirection type %d" msgstr "redir2str: nieznany typ przekierowania %d" -#: re.c:572 -#, fuzzy, c-format +#: re.c:573 +#, c-format msgid "range of the form `[%c-%c]' is locale dependent" msgstr "zasiÄ™g formy `[%c-%c]' jest zależny od lokalizacji" -#: re.c:599 +#: re.c:600 #, c-format msgid "regexp component `%.*s' should probably be `[%.*s]'" msgstr "komponent regexp `%.*s' powinien być prawdopodobnie `[%.*s]'" -#: regcomp.c:132 +#: regcomp.c:131 msgid "Success" msgstr "Sukces" -#: regcomp.c:135 +#: regcomp.c:134 msgid "No match" msgstr "Brak dopasowania" -#: regcomp.c:138 +#: regcomp.c:137 msgid "Invalid regular expression" msgstr "NieprawidÅ‚owe wyrażenie regularne" -#: regcomp.c:141 +#: regcomp.c:140 msgid "Invalid collation character" msgstr "NieprawidÅ‚owy znak porównania" -#: regcomp.c:144 +#: regcomp.c:143 msgid "Invalid character class name" msgstr "NieprawidÅ‚owa nazwa klasy znaku" -#: regcomp.c:147 +#: regcomp.c:146 msgid "Trailing backslash" msgstr "KoÅ„cowy znak backslash" -#: regcomp.c:150 +#: regcomp.c:149 msgid "Invalid back reference" msgstr "NieprawidÅ‚owe odwoÅ‚anie wsteczne" -#: regcomp.c:153 +#: regcomp.c:152 msgid "Unmatched [ or [^" msgstr "Niedopasowany znak [ lub [^" -#: regcomp.c:156 +#: regcomp.c:155 msgid "Unmatched ( or \\(" msgstr "Niedopasowany znak ( lub \\(" -#: regcomp.c:159 +#: regcomp.c:158 msgid "Unmatched \\{" msgstr "Niedopasowany znak \\{" -#: regcomp.c:162 +#: regcomp.c:161 msgid "Invalid content of \\{\\}" msgstr "NieprawidÅ‚owa zawartość \\{\\}" -#: regcomp.c:165 +#: regcomp.c:164 msgid "Invalid range end" msgstr "NieprawidÅ‚owy koniec zakresu" -#: regcomp.c:168 +#: regcomp.c:167 msgid "Memory exhausted" msgstr "Pamięć wyczerpana" -#: regcomp.c:171 +#: regcomp.c:170 msgid "Invalid preceding regular expression" msgstr "NieprawidÅ‚owe poprzedzajÄ…ce wyrażenie regularne" -#: regcomp.c:174 +#: regcomp.c:173 msgid "Premature end of regular expression" msgstr "Przedwczesny koniec wyrażenia regularnego" -#: regcomp.c:177 +#: regcomp.c:176 msgid "Regular expression too big" msgstr "Wyrażenie regularne jest zbyt duże" -#: regcomp.c:180 +#: regcomp.c:179 msgid "Unmatched ) or \\)" msgstr "Niedopasowany znak ) lub \\)" -#: regcomp.c:701 +#: regcomp.c:700 msgid "No previous regular expression" msgstr "Brak poprzedniego wyrażenia regularnego" +#~ msgid "attempt to use function `%s' as an array" +#~ msgstr "próba użycia funkcji `%s' jako tablicy" + +#~ msgid "reference to uninitialized element `%s[\"%.*s\"]'" +#~ msgstr "odwoÅ‚anie do niezainicjowanego elementu `%s[\"%.*s\"]'" + +#~ msgid "subscript of array `%s' is null string" +#~ msgstr "indeks tablicy `%s' jest zerowym Å‚aÅ„cuchem" + +#~ msgid "%s: empty (null)\n" +#~ msgstr "%s: pusty (null)\n" + +#~ msgid "%s: empty (zero)\n" +#~ msgstr "%s: pusty (zero)\n" + +#~ msgid "%s: table_size = %d, array_size = %d\n" +#~ msgstr "%s: table_size = %d, array_size = %d\n" + +#~ msgid "%s: is parameter\n" +#~ msgstr "%s: jest parametrem\n" + +#~ msgid "%s: array_ref to %s\n" +#~ msgstr "%s: array_ref do %s\n" + +#~ msgid "use of non-array as array" +#~ msgstr "użycie nie-tablicy jako tablicy" + +#~ msgid "can't use function name `%s' as variable or array" +#~ msgstr "nie można użyć nazwy funkcji `%s' jako zmiennej lub tablicy" + +#~ msgid "attempt to use array `%s[\"%.*s\"]' in a scalar context" +#~ msgstr "próba użycia tablicy `%s[\"%.*s\"]' w kontekÅ›cie skalaru" + +#~ msgid "assignment used in conditional context" +#~ msgstr "przypisanie użyte w kontekÅ›cie warunkowym" + +#~ msgid "statement has no effect" +#~ msgstr "instrukcja nie ma żadnego efektu" + +#~ msgid "" +#~ "for loop: array `%s' changed size from %ld to %ld during loop execution" +#~ msgstr "" +#~ "pÄ™tla for: tablica `%s' zmieniÅ‚a rozmiar z %ld do %ld podczas wykonywania " +#~ "pÄ™tli" + +#~ msgid "function called indirectly through `%s' does not exist" +#~ msgstr "poÅ›rednio wywoÅ‚ana funkcja poprzez `%s' nie istnieje" + +#~ msgid "function `%s' not defined" +#~ msgstr "funkcja `%s' nie zostaÅ‚a zdefiniowana" + +#~ msgid "non-redirected `getline' invalid inside `%s' rule" +#~ msgstr "" +#~ "komenda `getline' bez przekierowania jest nieprawidÅ‚owa wewnÄ…trz reguÅ‚y `" +#~ "%s'" + +#~ msgid "error reading input file `%s': %s" +#~ msgstr "błąd podczas czytania z pliku `%s': %s" + +#~ msgid "`nextfile' cannot be called from a `%s' rule" +#~ msgstr "instrukcja `nextfile' nie może być wywoÅ‚ana z wnÄ™trza reguÅ‚y `%s'" + +#~ msgid "`exit' cannot be called in the current context" +#~ msgstr "instrukcja `exit' nie może być wywoÅ‚ana w tym kontekÅ›cie" + +#~ msgid "`next' cannot be called from a `%s' rule" +#~ msgstr "instrukcja `next' nie może być wywoÅ‚ana z wnÄ™trza reguÅ‚y `%s'" + +#~ msgid "Sorry, don't know how to interpret `%s'" +#~ msgstr "Niestety nie wiem jak zinterpretować `%s'" + +#~ msgid "\t-R file\t\t\t--command=file\n" +#~ msgstr "\t-R plik\t\t\t--command=plik\n" + +#~ msgid "could not find groups: %s" +#~ msgstr "nie można znaleźć grup: %s" + #~ msgid "assignment is not allowed to result of builtin function" #~ msgstr "przypisanie do wyniku wbudowanej funkcji nie jest dozwolone" @@ -1,17 +1,17 @@ # Swedish translation of gawk -# Copyright © 2003, 2011 Free Software Foundation, Inc. +# Copyright © 2003, 2011, 2012 Free Software Foundation, Inc. # This file is distributed under the same license as the gawk package. # Martin Sjögren <md9ms@mdstud.chalmers.se>, 2001-2002. # Christer Andersson <klamm@comhem.se>, 2007. -# Göran Uddeborg <goeran@uddeborg.se>, 2011. +# Göran Uddeborg <goeran@uddeborg.se>, 2011, 2012. # -# $Id: gawk.po,v 1.5 2011-07-16 15:21:02+02 göran Exp $ +# $Revision: 1.7 $ msgid "" msgstr "" -"Project-Id-Version: gawk 4.0.0\n" +"Project-Id-Version: gawk 4.0.0h\n" "Report-Msgid-Bugs-To: arnold@skeeve.com\n" -"POT-Creation-Date: 2011-11-14 21:46+0200\n" -"PO-Revision-Date: 2011-07-16 15:20+0200\n" +"POT-Creation-Date: 2012-04-08 12:18+0300\n" +"PO-Revision-Date: 2012-01-30 12:07+0100\n" "Last-Translator: Göran Uddeborg <goeran@uddeborg.se>\n" "Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n" "Language: sv\n" @@ -19,514 +19,471 @@ msgstr "" "Content-Type: text/plain; charset=iso-8859-1\n" "Content-Transfer-Encoding: 8bit\n" -#: array.c:140 +#: array.c:267 #, c-format msgid "from %s" msgstr "från %s" -#: array.c:248 +#: array.c:367 msgid "attempt to use a scalar value as array" msgstr "försök att använda ett skalärt värde som vektor" -#: array.c:251 -#, c-format -msgid "attempt to use function `%s' as an array" -msgstr "försök att använda funktionen \"%s\" som vektor" - -#: array.c:254 +#: array.c:369 #, c-format msgid "attempt to use scalar parameter `%s' as an array" msgstr "försök att använda skalärparametern \"%s\" som en vektor" -#: array.c:257 +#: array.c:372 #, c-format msgid "attempt to use scalar `%s' as an array" msgstr "försök att använda skalären \"%s\" som en vektor" -#: array.c:302 array.c:707 builtin.c:84 builtin.c:1384 builtin.c:1426 -#: builtin.c:1439 builtin.c:1858 builtin.c:1870 eval.c:1135 eval.c:1139 -#: eval.c:1495 eval.c:1812 +#: array.c:419 array.c:585 builtin.c:85 builtin.c:1389 builtin.c:1431 +#: builtin.c:1444 builtin.c:1862 builtin.c:1874 eval.c:1096 eval.c:1100 +#: eval.c:1500 #, c-format msgid "attempt to use array `%s' in a scalar context" msgstr "försök att använda vektorn \"%s\" i skalärsammanhang" -#: array.c:513 -#, c-format -msgid "reference to uninitialized element `%s[\"%.*s\"]'" -msgstr "referens till oinitierat element \"%s[\"%.*s\"]\"" - -#: array.c:519 -#, c-format -msgid "subscript of array `%s' is null string" -msgstr "index i vektorn \"%s\" är en tom sträng" - -#: array.c:723 +#: array.c:592 #, c-format msgid "delete: index `%s' not in array `%s'" msgstr "delete: index \"%s\" finns inte i vektorn \"%s\"" -#: array.c:734 eval.c:1865 +#: array.c:606 #, c-format msgid "attempt to use scalar `%s[\"%.*s\"]' as an array" msgstr "försök att använda skalären \"%s[\"%.*s\"]\" som en vektor" -#: array.c:910 -#, c-format -msgid "%s: empty (null)\n" -msgstr "%s: tom (null)\n" - -#: array.c:915 -#, c-format -msgid "%s: empty (zero)\n" -msgstr "%s: tom (noll)\n" - -#: array.c:919 -#, c-format -msgid "%s: table_size = %d, array_size = %d\n" -msgstr "%s: tabellstorlek = %d, vektorstorlek = %d\n" - -#: array.c:954 -#, c-format -msgid "%s: is parameter\n" -msgstr "%s: är en parameter\n" - -#: array.c:958 -#, c-format -msgid "%s: array_ref to %s\n" -msgstr "%s: vektorreferens till %s\n" - -#: array.c:963 -msgid "adump: argument not an array" +#: array.c:794 +#, fuzzy +msgid "adump: first argument not an array" msgstr "adump: argumentet är inte en vektor" -#: array.c:1086 +#: array.c:833 msgid "asort: second argument not an array" msgstr "asort: andra argumentet är inte en vektor" -#: array.c:1087 +#: array.c:834 msgid "asorti: second argument not an array" msgstr "asorti: andra argumentet är inte en vektor" -#: array.c:1094 +#: array.c:841 msgid "asort: first argument not an array" msgstr "asort: första argumentet är inte en vektor" -#: array.c:1095 +#: array.c:842 msgid "asorti: first argument not an array" msgstr "asorti: första argumentet är inte en vektor" -#: array.c:1102 +#: array.c:849 msgid "asort: cannot use a subarray of first arg for second arg" msgstr "" "asort: det går inte att använda en delvektor av första argumentet som andra " "argument" -#: array.c:1103 +#: array.c:850 msgid "asorti: cannot use a subarray of first arg for second arg" msgstr "" "asorti: det går inte att använda en delvektor av första argumentet som andra " "argument" -#: array.c:1108 +#: array.c:855 msgid "asort: cannot use a subarray of second arg for first arg" msgstr "" "asort: det går inte att använda en delvektor av andra argumentet som första " "argument" -#: array.c:1109 +#: array.c:856 msgid "asorti: cannot use a subarray of second arg for first arg" msgstr "" "asorti: det går inte att använda en delvektor av andra argumentet som första " "argument" -#: array.c:1659 +#: array.c:1329 #, c-format msgid "`%s' is invalid as a function name" msgstr "\"%s\" är ogiltigt som ett funktionsnamn" -#: array.c:1663 +#: array.c:1333 #, c-format msgid "sort comparison function `%s' is not defined" msgstr "jämförelsefunktionen \"%s\" för sortering är inte definierad" -#: awkgram.y:249 +#: awkgram.y:223 #, c-format msgid "%s blocks must have an action part" msgstr "%s-block måste ha en åtgärdsdel" -#: awkgram.y:252 +#: awkgram.y:226 msgid "each rule must have a pattern or an action part" msgstr "varje regel måste ha ett mönster eller en åtgärdsdel" -#: awkgram.y:323 awkgram.y:334 +#: awkgram.y:295 awkgram.y:306 msgid "old awk does not support multiple `BEGIN' or `END' rules" msgstr "gamla awk stöder inte flera \"BEGIN\"- eller \"END\"-regler" -#: awkgram.y:371 +#: awkgram.y:343 #, c-format msgid "`%s' is a built-in function, it cannot be redefined" msgstr "\"%s\" är en inbyggd funktion, den kan inte definieras om" -#: awkgram.y:432 +#: awkgram.y:389 msgid "regexp constant `//' looks like a C++ comment, but is not" msgstr "regexp-konstanten \"//\" ser ut som en C++-kommentar men är inte det" -#: awkgram.y:436 +#: awkgram.y:393 #, c-format msgid "regexp constant `/%s/' looks like a C comment, but is not" msgstr "regexp-konstanten \"/%s/\" ser ut som en C-kommentar men är inte det" -#: awkgram.y:528 +#: awkgram.y:485 #, c-format msgid "duplicate case values in switch body: %s" msgstr "upprepade case-värden i switch-sats: %s" -#: awkgram.y:549 +#: awkgram.y:506 msgid "duplicate `default' detected in switch body" msgstr "flera \"default\" upptäcktes i switch-sats" -#: awkgram.y:809 +#: awkgram.y:766 msgid "`break' is not allowed outside a loop or switch" msgstr "\"break\" är inte tillåtet utanför en slinga eller switch" -#: awkgram.y:818 +#: awkgram.y:775 msgid "`continue' is not allowed outside a loop" msgstr "\"continue\" är inte tillåtet utanför en slinga" -#: awkgram.y:828 +#: awkgram.y:785 #, c-format msgid "`next' used in %s action" msgstr "\"next\" använt i %s-åtgärd" -#: awkgram.y:836 +#: awkgram.y:793 msgid "`nextfile' is a gawk extension" msgstr "\"nextfile\" är en gawk-utökning" -#: awkgram.y:841 +#: awkgram.y:798 #, c-format msgid "`nextfile' used in %s action" msgstr "\"nextfile\" använt i %s-åtgärd" -#: awkgram.y:865 +#: awkgram.y:822 msgid "`return' used outside function context" msgstr "\"return\" använd utanför funktion" -#: awkgram.y:925 +#: awkgram.y:892 msgid "plain `print' in BEGIN or END rule should probably be `print \"\"'" msgstr "" "ensamt \"print\" i BEGIN eller END-regel bör troligen vara 'print \"\"'" -#: awkgram.y:995 awkgram.y:999 awkgram.y:1023 +#: awkgram.y:962 awkgram.y:966 awkgram.y:990 msgid "`delete array' is a gawk extension" msgstr "\"delete array\" är en gawk-utökning" -#: awkgram.y:1019 +#: awkgram.y:986 msgid "`delete(array)' is a non-portable tawk extension" msgstr "\"delete(array)\" är en icke portabel tawk-utökning" -#: awkgram.y:1135 +#: awkgram.y:1102 msgid "multistage two-way pipelines don't work" msgstr "flerstegs dubbelriktade rör fungerar inte" -#: awkgram.y:1238 +#: awkgram.y:1205 msgid "regular expression on right of assignment" msgstr "reguljärt uttryck i högerledet av en tilldelning" -#: awkgram.y:1249 +#: awkgram.y:1216 msgid "regular expression on left of `~' or `!~' operator" msgstr "reguljärt uttryck på vänster sida om en \"~\"- eller \"!~\"-operator" -#: awkgram.y:1265 awkgram.y:1419 +#: awkgram.y:1232 awkgram.y:1383 msgid "old awk does not support the keyword `in' except after `for'" msgstr "gamla awk stöder inte operatorn \"**\"" -#: awkgram.y:1275 +#: awkgram.y:1242 msgid "regular expression on right of comparison" msgstr "reguljärt uttryck i högerledet av en jämförelse" -#: awkgram.y:1394 +#: awkgram.y:1358 #, c-format msgid "`getline var' invalid inside `%s' rule" msgstr "\"getline var\" är ogiltigt inuti \"%s\"-regel" -#: awkgram.y:1397 eval.c:2504 +#: awkgram.y:1361 #, c-format msgid "`getline' invalid inside `%s' rule" msgstr "\"getline är ogiltigt inuti \"%s\"-regel" -#: awkgram.y:1402 +#: awkgram.y:1366 msgid "non-redirected `getline' undefined inside END action" msgstr "icke omdirigerad \"getline\" odefinierad inuti END-åtgärd" -#: awkgram.y:1421 +#: awkgram.y:1385 msgid "old awk does not support multidimensional arrays" msgstr "gamla awk stöder inte flerdimensionella vektorer" -#: awkgram.y:1517 +#: awkgram.y:1481 msgid "call of `length' without parentheses is not portable" msgstr "anrop av \"length\" utan parenteser är inte portabelt" -#: awkgram.y:1580 +#: awkgram.y:1545 msgid "indirect function calls are a gawk extension" msgstr "indirekta funktionsanrop är en gawk-utökning" -#: awkgram.y:1593 +#: awkgram.y:1558 #, c-format msgid "can not use special variable `%s' for indirect function call" msgstr "" "det går inte att använda specialvariabeln \"%s\" för indirekta fuktionsanrop" -#: awkgram.y:1671 +#: awkgram.y:1636 msgid "invalid subscript expression" msgstr "ogiltig indexuttryck" -#: awkgram.y:1711 -msgid "use of non-array as array" -msgstr "icke-vektor används som vektor" - -#: awkgram.y:1975 awkgram.y:1995 msg.c:98 +#: awkgram.y:1936 awkgram.y:1956 msg.c:96 msgid "warning: " msgstr "varning: " -#: awkgram.y:1993 msg.c:130 +#: awkgram.y:1954 msg.c:128 msgid "fatal: " msgstr "ödesdigert: " -#: awkgram.y:2043 +#: awkgram.y:2004 msgid "unexpected newline or end of string" msgstr "oväntat nyradstecken eller slut på strängen" -#: awkgram.y:2300 awkgram.y:2358 awkgram.y:2542 +#: awkgram.y:2269 awkgram.y:2327 awkgram.y:2515 #, c-format msgid "can't open source file `%s' for reading (%s)" msgstr "kan inte öppna källfilen \"%s\" för läsning (%s)" -#: awkgram.y:2301 awkgram.y:2359 builtin.c:122 +#: awkgram.y:2270 awkgram.y:2328 builtin.c:124 msgid "reason unknown" msgstr "okänd anledning" -#: awkgram.y:2317 +#: awkgram.y:2286 #, c-format msgid "already included source file `%s'" msgstr "inkluderade redan källfilen \"%s\"" -#: awkgram.y:2343 +#: awkgram.y:2312 msgid "@include is a gawk extension" msgstr "@include är en gawk-utökning" -#: awkgram.y:2349 +#: awkgram.y:2318 msgid "empty filename after @include" msgstr "tomt filnamn efter @include" -#: awkgram.y:2494 +#: awkgram.y:2467 msgid "empty program text on command line" msgstr "tom programtext på kommandoraden" -#: awkgram.y:2609 +#: awkgram.y:2582 #, c-format msgid "can't read sourcefile `%s' (%s)" msgstr "kan inte läsa källfilen \"%s\" (%s)" -#: awkgram.y:2620 +#: awkgram.y:2593 #, c-format msgid "source file `%s' is empty" msgstr "källfilen \"%s\" är tom" -#: awkgram.y:2805 +#: awkgram.y:2770 msgid "source file does not end in newline" msgstr "källfilen slutar inte med en ny rad" -#: awkgram.y:2882 +#: awkgram.y:2874 msgid "unterminated regexp ends with `\\' at end of file" msgstr "oavslutat reguljärt uttryck slutar med \"\\\" i slutet av filen" -#: awkgram.y:2906 +#: awkgram.y:2898 #, c-format msgid "%s: %d: tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" "%s: %d: tawk-modifierare för reguljära uttryck \"/.../%c\" fungerar inte i " "gawk" -#: awkgram.y:2910 +#: awkgram.y:2902 #, c-format msgid "tawk regex modifier `/.../%c' doesn't work in gawk" msgstr "" "tawk-modifierare för reguljära uttryck \"/.../%c\" fungerar inte i gawk" -#: awkgram.y:2917 +#: awkgram.y:2909 msgid "unterminated regexp" msgstr "oavslutat reguljärt uttryck" -#: awkgram.y:2921 +#: awkgram.y:2913 msgid "unterminated regexp at end of file" msgstr "oavslutat reguljärt uttryck i slutet av filen" -#: awkgram.y:2980 +#: awkgram.y:2972 msgid "use of `\\ #...' line continuation is not portable" msgstr "Användning av \"\\ #...\" för radfortsättning är inte portabelt" -#: awkgram.y:2996 +#: awkgram.y:2988 msgid "backslash not last character on line" msgstr "sista tecknet på raden är inte ett omvänt snedstreck" -#: awkgram.y:3057 +#: awkgram.y:3049 msgid "POSIX does not allow operator `**='" msgstr "POSIX tillåter inte operatorn \"**=\"" -#: awkgram.y:3059 +#: awkgram.y:3051 msgid "old awk does not support operator `**='" msgstr "gamla awk stöder inte operatorn \"**=\"" -#: awkgram.y:3068 +#: awkgram.y:3060 msgid "POSIX does not allow operator `**'" msgstr "POSIX tillåter inte operatorn \"**\"" -#: awkgram.y:3070 +#: awkgram.y:3062 msgid "old awk does not support operator `**'" msgstr "gamla awk stöder inte operatorn \"**\"" -#: awkgram.y:3105 +#: awkgram.y:3097 msgid "operator `^=' is not supported in old awk" msgstr "operatorn \"^=\" stöds inte i gamla awk" -#: awkgram.y:3113 +#: awkgram.y:3105 msgid "operator `^' is not supported in old awk" msgstr "operatorn \"^\" stöds inte i gamla awk" -#: awkgram.y:3206 awkgram.y:3222 +#: awkgram.y:3198 awkgram.y:3214 msgid "unterminated string" msgstr "oavslutad sträng" -#: awkgram.y:3418 +#: awkgram.y:3410 #, c-format msgid "invalid char '%c' in expression" msgstr "ogiltigt tecken \"%c\" i uttryck" -#: awkgram.y:3465 +#: awkgram.y:3457 #, c-format msgid "`%s' is a gawk extension" msgstr "\"%s\" är en gawk-utökning" -#: awkgram.y:3470 +#: awkgram.y:3462 #, c-format msgid "`%s' is a Bell Labs extension" msgstr "\"%s\" är en Bell Labs-utökning" -#: awkgram.y:3475 +#: awkgram.y:3467 #, c-format msgid "POSIX does not allow `%s'" msgstr "POSIX tillåter inte \"%s\"" -#: awkgram.y:3483 +#: awkgram.y:3475 #, c-format msgid "`%s' is not supported in old awk" msgstr "\"%s\" stöds inte i gamla awk" -#: awkgram.y:3550 +#: awkgram.y:3542 msgid "`goto' considered harmful!\n" msgstr "\"goto\" anses skadlig!\n" -#: awkgram.y:3601 +#: awkgram.y:3576 #, c-format msgid "%d is invalid as number of arguments for %s" msgstr "%d är ett ogiltigt antal argument för %s" -#: awkgram.y:3636 +#: awkgram.y:3611 #, c-format msgid "%s: string literal as last arg of substitute has no effect" msgstr "" "%s: bokstavlig sträng som sista argument till ersättning har ingen effekt" -#: awkgram.y:3641 +#: awkgram.y:3616 #, c-format msgid "%s third parameter is not a changeable object" msgstr "%s: tredje argumentet är inte ett ändringsbart objekt" -#: awkgram.y:3714 awkgram.y:3717 +#: awkgram.y:3689 awkgram.y:3692 msgid "match: third argument is a gawk extension" msgstr "match: tredje argumentet är en gawk-utökning" -#: awkgram.y:3771 awkgram.y:3774 +#: awkgram.y:3746 awkgram.y:3749 msgid "close: second argument is a gawk extension" msgstr "close: andra argumentet är en gawk-utökning" -#: awkgram.y:3786 +#: awkgram.y:3761 msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "användandet av dcgettext(_\"...\") är felaktigt: ta bort det inledande " "understrykningstecknet" -#: awkgram.y:3801 +#: awkgram.y:3776 msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore" msgstr "" "användandet av dcngettext(_\"...\") är felaktigt: ta bort det inledande " "understrykningstecknet" -#: awkgram.y:3893 -#, c-format -msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" -msgstr "funktionen \"%s\": parameter %d, \"%s\", är samma som parameter %d" - -#: awkgram.y:3935 +#: awkgram.y:3842 #, c-format msgid "function `%s': parameter `%s' shadows global variable" msgstr "funktionen \"%s\": parametern \"%s\" överskuggar en global variabel" -#: awkgram.y:4093 +#: awkgram.y:3885 #, c-format msgid "could not open `%s' for writing (%s)" msgstr "kunde inte öppna \"%s\" för skrivning (%s)" -#: awkgram.y:4094 +#: awkgram.y:3886 msgid "sending variable list to standard error" msgstr "skickar variabellista till standard fel" -#: awkgram.y:4100 +#: awkgram.y:3894 #, c-format msgid "%s: close failed (%s)" msgstr "%s: misslyckades att stänga (%s)" -#: awkgram.y:4152 +#: awkgram.y:3919 msgid "shadow_funcs() called twice!" msgstr "shadow_funcs() anropad två gånger!" -#: awkgram.y:4158 +#: awkgram.y:3927 msgid "there were shadowed variables." msgstr "det fanns överskuggade variabler." -#: awkgram.y:4188 +#: awkgram.y:3998 +#, c-format +msgid "function name `%s' previously defined" +msgstr "funktionsnamnet \"%s\" är definierat sedan tidigare" + +#: awkgram.y:4044 #, c-format msgid "function `%s': can't use function name as parameter name" msgstr "funktionen \"%s\": kan inte använda funktionsnamn som parameternamn" -#: awkgram.y:4192 +#: awkgram.y:4047 #, c-format msgid "function `%s': can't use special variable `%s' as a function parameter" msgstr "" "funktionen \"%s\": det går inte att använda specialvariabeln \"%s\" som en " "funktionsparameter" -#: awkgram.y:4208 +#: awkgram.y:4055 #, c-format -msgid "function name `%s' previously defined" -msgstr "funktionsnamnet \"%s\" är definierat sedan tidigare" +msgid "function `%s': parameter #%d, `%s', duplicates parameter #%d" +msgstr "funktionen \"%s\": parameter %d, \"%s\", är samma som parameter %d" -#: awkgram.y:4376 awkgram.y:4382 +#: awkgram.y:4134 awkgram.y:4140 #, c-format msgid "function `%s' called but never defined" msgstr "funktionen \"%s\" anropad men aldrig definierad" -#: awkgram.y:4385 +#: awkgram.y:4143 #, c-format msgid "function `%s' defined but never called directly" msgstr "funktionen \"%s\" definierad men aldrig anropad direkt" -#: awkgram.y:4417 +#: awkgram.y:4175 #, c-format msgid "regexp constant for parameter #%d yields boolean value" msgstr "konstant reguljärt uttryck för parameter %d ger ett booleskt värde" -#: awkgram.y:4526 +#: awkgram.y:4221 #, c-format msgid "" "function `%s' called with space between name and `(',\n" @@ -535,229 +492,229 @@ msgstr "" "funktionen \"%s\" anropad med blanktecken mellan namnet och \"(\",\n" "eller använd som variabel eller vektor" -#: awkgram.y:4773 eval.c:2056 +#: awkgram.y:4429 msgid "division by zero attempted" msgstr "försökte dividera med noll" -#: awkgram.y:4782 eval.c:2072 +#: awkgram.y:4438 #, c-format msgid "division by zero attempted in `%%'" msgstr "försökte dividera med noll i \"%%\"" -#: builtin.c:120 +#: builtin.c:122 #, c-format msgid "%s to \"%s\" failed (%s)" msgstr "%s till \"%s\" misslyckades (%s)" -#: builtin.c:121 +#: builtin.c:123 msgid "standard output" msgstr "standard ut" -#: builtin.c:135 +#: builtin.c:137 msgid "exp: received non-numeric argument" msgstr "exp: fick ett ickenumeriskt argument" -#: builtin.c:141 +#: builtin.c:143 #, c-format msgid "exp: argument %g is out of range" msgstr "exp: argumentet %g är inte inom tillåten gräns" -#: builtin.c:200 +#: builtin.c:202 #, c-format msgid "fflush: cannot flush: pipe `%s' opened for reading, not writing" msgstr "" "fflush: kan inte spola: röret \"%s\" öppnat för läsning, inte skrivning" -#: builtin.c:203 +#: builtin.c:205 #, c-format msgid "fflush: cannot flush: file `%s' opened for reading, not writing" msgstr "" "fflush: kan inte spola: filen \"%s\" öppnad för läsning, inte skrivning" -#: builtin.c:215 +#: builtin.c:217 #, c-format msgid "fflush: `%s' is not an open file, pipe or co-process" msgstr "fflush: \"%s\" är inte en öppen fil, rör eller koprocess" -#: builtin.c:333 +#: builtin.c:335 msgid "index: received non-string first argument" msgstr "index: första argumentet är inte en sträng" -#: builtin.c:335 +#: builtin.c:337 msgid "index: received non-string second argument" msgstr "index: andra argumentet är inte en sträng" -#: builtin.c:457 +#: builtin.c:461 msgid "int: received non-numeric argument" msgstr "int: fick ett ickenumeriskt argument" -#: builtin.c:493 +#: builtin.c:497 msgid "length: received array argument" msgstr "length: fick ett vektorargument" -#: builtin.c:496 +#: builtin.c:500 msgid "`length(array)' is a gawk extension" msgstr "\"length(array)\" är en gawk-utökning" -#: builtin.c:504 +#: builtin.c:508 msgid "length: received non-string argument" msgstr "length: fick ett argument som inte är en sträng" -#: builtin.c:535 +#: builtin.c:539 msgid "log: received non-numeric argument" msgstr "log: fick ett ickenumeriskt argument" -#: builtin.c:538 +#: builtin.c:542 #, c-format msgid "log: received negative argument %g" msgstr "log: fick ett negativt argumentet %g" -#: builtin.c:694 builtin.c:699 +#: builtin.c:698 builtin.c:703 msgid "fatal: must use `count$' on all formats or none" msgstr "ödesdigert: måste använda \"count$\" på alla eller inga format" -#: builtin.c:761 +#: builtin.c:766 #, c-format msgid "field width is ignored for `%%' specifier" msgstr "fältbredd ignoreras för \"%%\"-specificerare" -#: builtin.c:763 +#: builtin.c:768 #, c-format msgid "precision is ignored for `%%' specifier" msgstr "precision ignoreras för \"%%\"-specificerare" -#: builtin.c:765 +#: builtin.c:770 #, c-format msgid "field width and precision are ignored for `%%' specifier" msgstr "fältbredd och precision ignoreras för \"%%\"-specificerare" -#: builtin.c:816 +#: builtin.c:821 msgid "fatal: `$' is not permitted in awk formats" msgstr "ödesdigert: \"$\" tillåts inte i awk-format" -#: builtin.c:825 +#: builtin.c:830 msgid "fatal: arg count with `$' must be > 0" msgstr "ödesdigert: argumentantalet med \"$\" måste vara > 0" -#: builtin.c:829 +#: builtin.c:834 #, c-format msgid "fatal: arg count %ld greater than total number of supplied arguments" msgstr "ödesdigert: argumentantalet %ld är större än antalet givna argument" -#: builtin.c:833 +#: builtin.c:838 msgid "fatal: `$' not permitted after period in format" msgstr "ödesdigert: \"$\" tillåts inte efter en punkt i formatet" -#: builtin.c:849 +#: builtin.c:854 msgid "fatal: no `$' supplied for positional field width or precision" msgstr "" "ödesdigert: inget \"$\" bifogat för positionsangiven fältbredd eller " "precision" -#: builtin.c:920 +#: builtin.c:925 msgid "`l' is meaningless in awk formats; ignored" msgstr "\"l\" är meningslös i awk-format, ignorerad" -#: builtin.c:924 +#: builtin.c:929 msgid "fatal: `l' is not permitted in POSIX awk formats" msgstr "ödesdigert: \"l\" tillåts inte i POSIX awk-format" -#: builtin.c:937 +#: builtin.c:942 msgid "`L' is meaningless in awk formats; ignored" msgstr "\"L\" är meningslös i awk-format, ignorerad" -#: builtin.c:941 +#: builtin.c:946 msgid "fatal: `L' is not permitted in POSIX awk formats" msgstr "ödesdigert: \"L\" tillåts inte i POSIX awk-format" -#: builtin.c:954 +#: builtin.c:959 msgid "`h' is meaningless in awk formats; ignored" msgstr "\"h\" är meningslös i awk-format, ignorerad" -#: builtin.c:958 +#: builtin.c:963 msgid "fatal: `h' is not permitted in POSIX awk formats" msgstr "ödesdigert: \"h\" tillåts inte i POSIX awk-format" -#: builtin.c:1271 +#: builtin.c:1276 #, c-format msgid "[s]printf: value %g is out of range for `%%%c' format" msgstr "[s]printf: värdet %g är utanför \"%%%c\"-formatets giltiga intervall" -#: builtin.c:1331 +#: builtin.c:1336 #, c-format msgid "ignoring unknown format specifier character `%c': no argument converted" msgstr "" "ignorerar okänt formatspecifikationstecken \"%c\": inget argument konverterat" -#: builtin.c:1336 +#: builtin.c:1341 msgid "fatal: not enough arguments to satisfy format string" msgstr "ödesdigert: för få argument för formatsträngen" -#: builtin.c:1338 +#: builtin.c:1343 msgid "^ ran out for this one" msgstr "^ tog slut här" -#: builtin.c:1345 +#: builtin.c:1350 msgid "[s]printf: format specifier does not have control letter" msgstr "[s]printf: formatspecifieraren har ingen kommandobokstav" -#: builtin.c:1348 +#: builtin.c:1353 msgid "too many arguments supplied for format string" msgstr "för många argument för formatsträngen" -#: builtin.c:1422 builtin.c:1433 +#: builtin.c:1427 builtin.c:1438 msgid "printf: no arguments" msgstr "printf: inga argument" -#: builtin.c:1474 +#: builtin.c:1479 msgid "sqrt: received non-numeric argument" msgstr "sqrt: fick ickenumeriskt argument" -#: builtin.c:1478 +#: builtin.c:1483 #, c-format msgid "sqrt: called with negative argument %g" msgstr "sqrt: anropad med negativt argument %g" -#: builtin.c:1502 +#: builtin.c:1507 #, c-format msgid "substr: length %g is not >= 1" msgstr "substr: längden %g är inte >= 1" -#: builtin.c:1504 +#: builtin.c:1509 #, c-format msgid "substr: length %g is not >= 0" msgstr "substr: längden %g är inte >= 0" -#: builtin.c:1511 +#: builtin.c:1516 #, c-format msgid "substr: non-integer length %g will be truncated" msgstr "substr: längden %g som inte är ett heltal kommer trunkeras" -#: builtin.c:1516 +#: builtin.c:1521 #, c-format msgid "substr: length %g too big for string indexing, truncating to %g" msgstr "substr: längden %g är för stor för strängindexering, trunkeras till %g" -#: builtin.c:1528 +#: builtin.c:1533 #, c-format msgid "substr: start index %g is invalid, using 1" msgstr "substr: startindex %g är ogiltigt, använder 1" -#: builtin.c:1533 +#: builtin.c:1538 #, c-format msgid "substr: non-integer start index %g will be truncated" msgstr "substr: startindex %g som inte är ett heltal kommer trunkeras" -#: builtin.c:1558 +#: builtin.c:1563 msgid "substr: source string is zero length" msgstr "substr: källsträngen är tom" -#: builtin.c:1574 +#: builtin.c:1579 #, c-format msgid "substr: start index %g is past end of string" msgstr "substr: startindex %g är bortom strängens slut" -#: builtin.c:1582 +#: builtin.c:1587 #, c-format msgid "" "substr: length %g at start index %g exceeds length of first argument (%lu)" @@ -765,227 +722,222 @@ msgstr "" "substr: längden %g vid startindex %g överskrider det första argumentets " "längd (%lu)" -#: builtin.c:1656 +#: builtin.c:1661 msgid "strftime: format value in PROCINFO[\"strftime\"] has numeric type" msgstr "strftime: formatvärde i PROCINFO[\"strftime\"] har numerisk typ" -#: builtin.c:1679 +#: builtin.c:1684 msgid "strftime: received non-numeric second argument" msgstr "strftime: fick ett ickenumeriskt andra argument" -#: builtin.c:1682 +#: builtin.c:1687 msgid "strftime: second argument less than 0 or too big for time_t" -msgstr "" +msgstr "strftime: andra argimentet mindre än 0 eller för stort för time_t" -#: builtin.c:1689 +#: builtin.c:1694 msgid "strftime: received non-string first argument" msgstr "strftime: fick ett första argument som inte är en sträng" -#: builtin.c:1695 +#: builtin.c:1701 msgid "strftime: received empty format string" msgstr "strftime: fick en tom formatsträng" -#: builtin.c:1761 +#: builtin.c:1767 msgid "mktime: received non-string argument" msgstr "mktime: fick ett argument som inte är en sträng" -#: builtin.c:1778 +#: builtin.c:1784 msgid "mktime: at least one of the values is out of the default range" msgstr "mktime: åtminstone ett av värdena är utanför standardintervallet" -#: builtin.c:1813 +#: builtin.c:1819 msgid "'system' function not allowed in sandbox mode" msgstr "funktionen \"system\" är inte tillåten i sandlådeläge" -#: builtin.c:1818 +#: builtin.c:1824 msgid "system: received non-string argument" msgstr "system: fick ett argument som inte är en sträng" -#: builtin.c:1873 eval.c:1159 eval.c:1790 eval.c:1803 -#, c-format -msgid "reference to uninitialized variable `%s'" -msgstr "referens till icke initierad variabel \"%s\"" - -#: builtin.c:1940 +#: builtin.c:1942 #, c-format msgid "reference to uninitialized field `$%d'" msgstr "referens till icke initierat fält \"$%d\"" -#: builtin.c:2027 +#: builtin.c:2029 msgid "tolower: received non-string argument" msgstr "tolower: fick ett argument som inte är en sträng" -#: builtin.c:2061 +#: builtin.c:2063 msgid "toupper: received non-string argument" msgstr "toupper: fick ett argument som inte är en sträng" -#: builtin.c:2097 +#: builtin.c:2099 msgid "atan2: received non-numeric first argument" msgstr "atan2: fick ett ickenumeriskt första argument" -#: builtin.c:2099 +#: builtin.c:2101 msgid "atan2: received non-numeric second argument" msgstr "atan2: fick ett ickenumeriskt andra argument" -#: builtin.c:2118 +#: builtin.c:2120 msgid "sin: received non-numeric argument" msgstr "sin: fick ett ickenumeriskt argument" -#: builtin.c:2134 +#: builtin.c:2136 msgid "cos: received non-numeric argument" msgstr "cos: fick ett ickenumeriskt argument" -#: builtin.c:2187 +#: builtin.c:2189 msgid "srand: received non-numeric argument" msgstr "srand: fick ett ickenumeriskt argument" -#: builtin.c:2218 +#: builtin.c:2220 msgid "match: third argument is not an array" msgstr "match: tredje argumentet är inte en vektor" -#: builtin.c:2482 +#: builtin.c:2484 msgid "gensub: third argument of 0 treated as 1" msgstr "gensub: nollan i tredje argumentet behandlad som en etta" -#: builtin.c:2775 +#: builtin.c:2777 msgid "lshift: received non-numeric first argument" msgstr "lshift: fick ett ickenumeriskt första argument" -#: builtin.c:2777 +#: builtin.c:2779 msgid "lshift: received non-numeric second argument" msgstr "lshift: fick ett ickenumeriskt andra argument" -#: builtin.c:2783 +#: builtin.c:2785 #, c-format msgid "lshift(%lf, %lf): negative values will give strange results" msgstr "lshift(%lf, %lf): negativa värden kommer ge konstiga resultat" -#: builtin.c:2785 +#: builtin.c:2787 #, c-format msgid "lshift(%lf, %lf): fractional values will be truncated" msgstr "lshift(%lf, %lf): flyttalsvärden kommer trunkeras" -#: builtin.c:2787 +#: builtin.c:2789 #, c-format msgid "lshift(%lf, %lf): too large shift value will give strange results" msgstr "lshift(%lf, %lf): för stora skiftvärden kommer ge konstiga resultat" -#: builtin.c:2812 +#: builtin.c:2814 msgid "rshift: received non-numeric first argument" msgstr "rshift: fick ett ickenumeriskt första argument" -#: builtin.c:2814 +#: builtin.c:2816 msgid "rshift: received non-numeric second argument" msgstr "rshift: fick ett ickenumeriskt andra argument" -#: builtin.c:2820 +#: builtin.c:2822 #, c-format msgid "rshift(%lf, %lf): negative values will give strange results" msgstr "rshift(%lf, %lf): negativa värden kommer ge konstiga resultat" -#: builtin.c:2822 +#: builtin.c:2824 #, c-format msgid "rshift(%lf, %lf): fractional values will be truncated" msgstr "rshift(%lf, %lf): flyttalsvärden kommer trunkeras" -#: builtin.c:2824 +#: builtin.c:2826 #, c-format msgid "rshift(%lf, %lf): too large shift value will give strange results" msgstr "rshift(%lf, %lf): för stora skiftvärden kommer ge konstiga resultat" -#: builtin.c:2849 +#: builtin.c:2851 msgid "and: received non-numeric first argument" msgstr "and: fick ett ickenumeriskt första argument" -#: builtin.c:2851 +#: builtin.c:2853 msgid "and: received non-numeric second argument" msgstr "and: fick ett ickenumeriskt andra argument" -#: builtin.c:2857 +#: builtin.c:2859 #, c-format msgid "and(%lf, %lf): negative values will give strange results" msgstr "and(%lf, %lf): negativa värden kommer ge konstiga resultat" -#: builtin.c:2859 +#: builtin.c:2861 #, c-format msgid "and(%lf, %lf): fractional values will be truncated" msgstr "and(%lf, %lf): flyttalsvärden kommer trunkeras" -#: builtin.c:2884 +#: builtin.c:2886 msgid "or: received non-numeric first argument" msgstr "or: fick ett ickenumeriskt första argument" -#: builtin.c:2886 +#: builtin.c:2888 msgid "or: received non-numeric second argument" msgstr "or: fick ett ickenumeriskt andra argument" -#: builtin.c:2892 +#: builtin.c:2894 #, c-format msgid "or(%lf, %lf): negative values will give strange results" msgstr "or(%lf, %lf): negativa värden kommer ge konstiga resultat" -#: builtin.c:2894 +#: builtin.c:2896 #, c-format msgid "or(%lf, %lf): fractional values will be truncated" msgstr "or(%lf, %lf): flyttalsvärden kommer trunkeras" -#: builtin.c:2922 +#: builtin.c:2924 msgid "xor: received non-numeric first argument" msgstr "xor: fick ett ickenumeriskt första argument" -#: builtin.c:2924 +#: builtin.c:2926 msgid "xor: received non-numeric second argument" msgstr "xor: fick ett ickenumeriskt andra argument" -#: builtin.c:2930 +#: builtin.c:2932 #, c-format msgid "xor(%lf, %lf): negative values will give strange results" msgstr "xor(%lf, %lf): negativa värden kommer ge konstiga resultat" -#: builtin.c:2932 +#: builtin.c:2934 #, c-format msgid "xor(%lf, %lf): fractional values will be truncated" msgstr "xor(%lf, %lf): flyttalsvärden kommer trunkeras" -#: builtin.c:2956 builtin.c:2962 +#: builtin.c:2958 builtin.c:2964 msgid "compl: received non-numeric argument" msgstr "compl: fick ett ickenumeriskt argument" -#: builtin.c:2964 +#: builtin.c:2966 #, c-format msgid "compl(%lf): negative value will give strange results" msgstr "compl(%lf): negativa värden kommer ge konstiga resultat" -#: builtin.c:2966 +#: builtin.c:2968 #, c-format msgid "compl(%lf): fractional value will be truncated" msgstr "compl(%lf): flyttalsvärden kommer trunkeras" -#: builtin.c:3135 +#: builtin.c:3137 #, c-format msgid "dcgettext: `%s' is not a valid locale category" msgstr "dcgettext: \"%s\" är inte en giltig lokalkategori" -#: eval.c:412 +#: eval.c:393 #, c-format msgid "unknown nodetype %d" msgstr "okänd nodtyp %d" -#: eval.c:423 eval.c:437 +#: eval.c:404 eval.c:418 #, c-format msgid "unknown opcode %d" msgstr "okänd op-kod %d" -#: eval.c:434 +#: eval.c:415 #, c-format msgid "opcode %s not an operator or keyword" msgstr "op-kod %s är inte en operator eller ett nyckelord" -#: eval.c:488 +#: eval.c:468 msgid "buffer overflow in genflags2str" msgstr "buffertöverflöd i genflags2str" -#: eval.c:698 +#: eval.c:678 #, c-format msgid "" "\n" @@ -996,218 +948,166 @@ msgstr "" "\t# Funktionsanropsstack:\n" "\n" -#: eval.c:725 +#: eval.c:706 msgid "`IGNORECASE' is a gawk extension" msgstr "\"IGNORECASE\" är en gawk-utökning" -#: eval.c:754 +#: eval.c:736 msgid "`BINMODE' is a gawk extension" msgstr "\"BINMODE\" är en gawk-utökning" -#: eval.c:812 +#: eval.c:794 #, c-format msgid "BINMODE value `%s' is invalid, treated as 3" msgstr "BINMODE-värde \"%s\" är ogiltigt, behandlas som 3" -#: eval.c:902 +#: eval.c:887 #, c-format msgid "bad `%sFMT' specification `%s'" msgstr "felaktig \"%sFMT\"-specifikation \"%s\"" -#: eval.c:980 +#: eval.c:969 msgid "turning off `--lint' due to assignment to `LINT'" msgstr "slår av \"--lint\" på grund av en tilldelning till \"LINT\"" -#: eval.c:1127 eval.c:1777 -#, c-format -msgid "can't use function name `%s' as variable or array" -msgstr "kan inte använda funktionsnamnet \"%s\" som variabel eller vektor" - -#: eval.c:1158 eval.c:1789 eval.c:1802 +#: eval.c:1119 #, c-format msgid "reference to uninitialized argument `%s'" msgstr "referens till icke initierat argument \"%s\"" -#: eval.c:1177 +#: eval.c:1120 +#, c-format +msgid "reference to uninitialized variable `%s'" +msgstr "referens till icke initierad variabel \"%s\"" + +#: eval.c:1138 msgid "attempt to field reference from non-numeric value" msgstr "försök att fältreferera från ickenumeriskt värde" -#: eval.c:1179 +#: eval.c:1140 msgid "attempt to field reference from null string" msgstr "försök till fältreferens från en tom sträng" -#: eval.c:1185 +#: eval.c:1146 #, c-format msgid "attempt to access field %ld" msgstr "försök att komma åt fält nummer %ld" -#: eval.c:1194 +#: eval.c:1155 #, c-format msgid "reference to uninitialized field `$%ld'" msgstr "referens till icke initierat fält \"$%ld\"" -#: eval.c:1256 +#: eval.c:1242 #, c-format msgid "function `%s' called with more arguments than declared" msgstr "funktionen \"%s\" anropad med fler argument än vad som deklarerats" -#: eval.c:1437 +#: eval.c:1436 #, c-format msgid "unwind_stack: unexpected type `%s'" msgstr "unwind_stack: oväntad typ \"%s\"" -#: eval.c:1532 +#: eval.c:1536 msgid "division by zero attempted in `/='" msgstr "försökte dividera med noll i \"/=\"" -#: eval.c:1539 +#: eval.c:1543 #, c-format msgid "division by zero attempted in `%%='" msgstr "försökte dividera med noll i \"%%=\"" -#: eval.c:1876 eval.c:2122 -#, c-format -msgid "attempt to use array `%s[\"%.*s\"]' in a scalar context" -msgstr "försök att använda vektorn \"%s[\"%.*s\"]\" i skalärsammanhang" - -#: eval.c:1907 -msgid "assignment used in conditional context" -msgstr "tilldelning använt i jämförelsesammanhang" - -#: eval.c:1911 -msgid "statement has no effect" -msgstr "kommandot har ingen effekt" - -#: eval.c:2343 -#, c-format -msgid "for loop: array `%s' changed size from %ld to %ld during loop execution" -msgstr "" -"forslinga: vektorn \"%s\" ändrade storlek från %ld till %ld under " -"slingexekvering" - -#: eval.c:2458 -#, c-format -msgid "function called indirectly through `%s' does not exist" -msgstr "funktionen anropad indirekt genom \"%s\" finns inte" - -#: eval.c:2470 -#, c-format -msgid "function `%s' not defined" -msgstr "funktionen \"%s\" är inte definierad" - -#: eval.c:2511 -#, c-format -msgid "non-redirected `getline' invalid inside `%s' rule" -msgstr "icke omdirigerad \"getline\" odefinierad inuti \"%s\"-regel" - -#: eval.c:2600 -#, c-format -msgid "error reading input file `%s': %s" -msgstr "fel vid läsning av indatafilen \"%s\": %s" - -#: eval.c:2614 -#, c-format -msgid "`nextfile' cannot be called from a `%s' rule" -msgstr "\"nextfile\" kan inte anropas från en \"%s\"-regel" - -#: eval.c:2694 -#, c-format -msgid "`next' cannot be called from a `%s' rule" -msgstr "\"next\" kan inte anropas från en \"%s\"-regel" - -#: eval.c:2760 -#, c-format -msgid "Sorry, don't know how to interpret `%s'" -msgstr "Tyvärr, vet inte hur \"%s\" skall tolkas" - -#: ext.c:64 +#: ext.c:70 msgid "extensions are not allowed in sandbox mode" msgstr "utökningar är inte tillåtna i sandlådeläge" -#: ext.c:70 ext.c:75 +#: ext.c:73 msgid "`extension' is a gawk extension" msgstr "\"extension\" är en gawk-utökning" -#: ext.c:85 -#, c-format -msgid "fatal: extension: cannot open `%s' (%s)\n" +#: ext.c:80 +#, fuzzy, c-format +msgid "extension: cannot open library `%s' (%s)\n" msgstr "ödesdigert: extension: kan inte öppna \"%s\" (%s)\n" -#: ext.c:94 -#, c-format +#: ext.c:86 +#, fuzzy, c-format msgid "" -"fatal: extension: library `%s': does not define " -"`plugin_is_GPL_compatible' (%s)\n" +"extension: library `%s': does not define `plugin_is_GPL_compatible' (%s)\n" msgstr "" "ödesdigert: extension: biblioteket \"%s\": definierar inte " "\"plugin_is_GPL_compatible\" (%s)\n" -#: ext.c:103 -#, c-format -msgid "fatal: extension: library `%s': cannot call function `%s' (%s)\n" +#: ext.c:91 +#, fuzzy, c-format +msgid "extension: library `%s': cannot call function `%s' (%s)\n" msgstr "" "ödesdigert: extension: bibliotek \"%s\": kan inte anropa funktionen \"%s" "\" (%s)\n" -#: ext.c:137 +#: ext.c:119 msgid "extension: missing function name" msgstr "extension: saknar funktionsnamn" -#: ext.c:142 +#: ext.c:124 #, c-format msgid "extension: illegal character `%c' in function name `%s'" msgstr "extension: ogiltigt tecken \"%c\" i funktionsnamnet \"%s\"" -#: ext.c:151 +#: ext.c:132 #, c-format msgid "extension: can't redefine function `%s'" msgstr "extension: det går inte att definiera om funktionen \"%s\"" -#: ext.c:155 +#: ext.c:136 #, c-format msgid "extension: function `%s' already defined" msgstr "extension: funktionen \"%s\" är redan definierad" -#: ext.c:160 +#: ext.c:140 #, c-format msgid "extension: function name `%s' previously defined" msgstr "extension: funktionsnamnet \"%s\" är definierat sedan tidigare" -#: ext.c:162 +#: ext.c:142 #, c-format msgid "extension: can't use gawk built-in `%s' as function name" msgstr "" "extension: kan inte använda gawks inbyggda \"%s\" som ett funktionsnamn" -#: ext.c:166 +#: ext.c:145 #, c-format msgid "make_builtin: negative argument count for function `%s'" msgstr "make_builtin: negativt argumentantal för funktionen \"%s\"" -#: ext.c:269 +#: ext.c:207 #, c-format msgid "function `%s' defined to take no more than %d argument(s)" msgstr "funktionen \"%s\" definierades för att ta maximalt %d argument" -#: ext.c:272 +#: ext.c:210 #, c-format msgid "function `%s': missing argument #%d" msgstr "funktionen \"%s\": argument %d saknas" -#: ext.c:289 +#: ext.c:227 #, c-format msgid "function `%s': argument #%d: attempt to use scalar as an array" msgstr "funktionen \"%s\": argument %d: försök att använda skalär som vektor" -#: ext.c:293 +#: ext.c:231 #, c-format msgid "function `%s': argument #%d: attempt to use array as a scalar" msgstr "funktionen \"%s\": argument %d: försök att använda vektor som skalär" -#: ext.c:306 +#: ext.c:245 msgid "Operation Not Supported" msgstr "Operationen stöds inte" +#: ext.c:257 +msgid "dynamic loading of library not supported" +msgstr "" + #: field.c:328 msgid "NF set to negative value" msgstr "NF satt till ett negativt värde" @@ -1274,534 +1174,544 @@ msgstr "" "patsplit: det går inte att använda en delvektor av fjärde argumentet som " "andra argument" -#: field.c:1110 +#: field.c:1111 msgid "`FIELDWIDTHS' is a gawk extension" msgstr "\"FIELDWIDTHS\" är en gawk-utökning" -#: field.c:1173 +#: field.c:1175 #, c-format msgid "invalid FIELDWIDTHS value, near `%s'" msgstr "ogiltigt FIELDWITHS-värde i närheten av \"%s\"" -#: field.c:1246 +#: field.c:1248 msgid "null string for `FS' is a gawk extension" msgstr "tom sträng som \"FS\" är en gawk-utökning" -#: field.c:1250 +#: field.c:1252 msgid "old awk does not support regexps as value of `FS'" msgstr "gamla awk stöder inte reguljära uttryck som värden på \"FS\"" -#: field.c:1369 +#: field.c:1371 msgid "`FPAT' is a gawk extension" msgstr "\"FPAT\" är en gawk-utökning" -#: getopt.c:574 getopt.c:590 -#, c-format -msgid "%s: option '%s' is ambiguous\n" +#: getopt.c:604 getopt.c:633 +#, fuzzy, c-format +msgid "%s: option '%s' is ambiguous; possibilities:" msgstr "%s: flaggan \"%s\" är tvetydig\n" -#: getopt.c:623 getopt.c:627 +#: getopt.c:679 getopt.c:683 #, c-format msgid "%s: option '--%s' doesn't allow an argument\n" msgstr "%s: flaggan \"--%s\" tillåter inte något argument\n" -#: getopt.c:636 getopt.c:641 +#: getopt.c:692 getopt.c:697 #, c-format msgid "%s: option '%c%s' doesn't allow an argument\n" msgstr "%s: flaggan \"%c%s\" tillåter inte något argument\n" -#: getopt.c:684 getopt.c:703 +#: getopt.c:740 getopt.c:759 #, c-format msgid "%s: option '--%s' requires an argument\n" msgstr "%s: flaggan \"%s\" kräver ett argument\n" -#: getopt.c:741 getopt.c:744 +#: getopt.c:797 getopt.c:800 #, c-format msgid "%s: unrecognized option '--%s'\n" msgstr "%s: okänd flagga \"--%s\"\n" -#: getopt.c:752 getopt.c:755 +#: getopt.c:808 getopt.c:811 #, c-format msgid "%s: unrecognized option '%c%s'\n" msgstr "%s: okänd flagga \"%c%s\"\n" -#: getopt.c:804 getopt.c:807 +#: getopt.c:860 getopt.c:863 #, c-format msgid "%s: invalid option -- '%c'\n" msgstr "%s: ogiltig flagga -- \"%c\"\n" -#: getopt.c:857 getopt.c:874 getopt.c:1082 getopt.c:1100 +#: getopt.c:916 getopt.c:933 getopt.c:1143 getopt.c:1161 #, c-format msgid "%s: option requires an argument -- '%c'\n" msgstr "%s: flaggan kräver ett argument -- \"%c\"\n" -#: getopt.c:930 getopt.c:946 +#: getopt.c:989 getopt.c:1005 #, c-format msgid "%s: option '-W %s' is ambiguous\n" msgstr "%s: flaggan \"-W %s\" är tvetydig\n" -#: getopt.c:970 getopt.c:988 +#: getopt.c:1029 getopt.c:1047 #, c-format msgid "%s: option '-W %s' doesn't allow an argument\n" msgstr "%s: flaggan \"-W %s\" tillåter inte något argument\n" -#: getopt.c:1009 getopt.c:1027 +#: getopt.c:1068 getopt.c:1086 #, c-format msgid "%s: option '-W %s' requires an argument\n" msgstr "%s: flaggan \"-W %s\" kräver ett argument\n" -#: io.c:280 +#: io.c:315 #, c-format msgid "command line argument `%s' is a directory: skipped" msgstr "kommandoradsargumentet \"%s\" är en katalog: hoppas över" -#: io.c:283 io.c:385 +#: io.c:318 io.c:421 #, c-format msgid "cannot open file `%s' for reading (%s)" msgstr "kan inte öppna filen \"%s\" för läsning (%s)" -#: io.c:501 +#: io.c:537 #, c-format msgid "close of fd %d (`%s') failed (%s)" msgstr "stängning av fd %d (\"%s\") misslyckades (%s)" -#: io.c:578 +#: io.c:614 msgid "redirection not allowed in sandbox mode" msgstr "omdirigering är inte tillåten i sandlådeläge" -#: io.c:612 +#: io.c:648 #, c-format msgid "expression in `%s' redirection only has numeric value" msgstr "uttrycket i \"%s\"-omdirigering har bara numeriskt värde" -#: io.c:618 +#: io.c:654 #, c-format msgid "expression for `%s' redirection has null string value" msgstr "uttrycket för \"%s\"-omdirigering har en tom sträng som värde" -#: io.c:624 +#: io.c:659 #, c-format msgid "filename `%s' for `%s' redirection may be result of logical expression" msgstr "" "filnamnet \"%s\" för \"%s\"-omdirigering kan vara resultatet av ett logiskt " "uttryck" -#: io.c:667 +#: io.c:702 #, c-format msgid "unnecessary mixing of `>' and `>>' for file `%.*s'" msgstr "onödig blandning av \">\" och \">>\" för filen \"%.*s\"" -#: io.c:720 +#: io.c:755 #, c-format msgid "can't open pipe `%s' for output (%s)" msgstr "kan inte öppna röret \"%s\" för utmatning (%s)" -#: io.c:730 +#: io.c:765 #, c-format msgid "can't open pipe `%s' for input (%s)" msgstr "kan inte öppna röret \"%s\" för inmatning (%s)" -#: io.c:753 +#: io.c:788 #, c-format msgid "can't open two way pipe `%s' for input/output (%s)" msgstr "kan inte öppna tvåvägsröret \"%s\" för in-/utmatning (%s)" -#: io.c:835 +#: io.c:870 #, c-format msgid "can't redirect from `%s' (%s)" msgstr "kan inte dirigera om från \"%s\" (%s)" -#: io.c:838 +#: io.c:873 #, c-format msgid "can't redirect to `%s' (%s)" msgstr "kan inte dirigera om till \"%s\" (%s)" -#: io.c:889 +#: io.c:924 msgid "" "reached system limit for open files: starting to multiplex file descriptors" msgstr "" "nådde systembegränsningen för öppna filer: börjar multiplexa fildeskriptorer" -#: io.c:905 +#: io.c:940 #, c-format msgid "close of `%s' failed (%s)." msgstr "stängning av \"%s\" misslyckades (%s)" -#: io.c:913 +#: io.c:948 msgid "too many pipes or input files open" msgstr "för många rör eller indatafiler öppna" -#: io.c:935 +#: io.c:970 msgid "close: second argument must be `to' or `from'" msgstr "close: andra argumentet måste vara \"to\" eller \"from\"" -#: io.c:952 +#: io.c:987 #, c-format msgid "close: `%.*s' is not an open file, pipe or co-process" msgstr "close: \"%.*s\" är inte en öppen fil, rör eller koprocess" -#: io.c:957 +#: io.c:992 msgid "close of redirection that was never opened" msgstr "stängning av omdirigering som aldrig öppnades" -#: io.c:1054 +#: io.c:1089 #, c-format msgid "close: redirection `%s' not opened with `|&', second argument ignored" msgstr "" "close: omdirigeringen \"%s\" öppnades inte med \"|&\", andra argumentet " "ignorerat" -#: io.c:1070 +#: io.c:1105 #, c-format msgid "failure status (%d) on pipe close of `%s' (%s)" msgstr "felstatus (%d) från rörstängning av \"%s\" (%s)" -#: io.c:1073 +#: io.c:1108 #, c-format msgid "failure status (%d) on file close of `%s' (%s)" msgstr "felstatus (%d) från filstängning av \"%s\" (%s)" -#: io.c:1093 +#: io.c:1128 #, c-format msgid "no explicit close of socket `%s' provided" msgstr "ingen explicit stängning av uttaget \"%s\" tillhandahållen" -#: io.c:1096 +#: io.c:1131 #, c-format msgid "no explicit close of co-process `%s' provided" msgstr "ingen explicit stängning av koprocessen \"%s\" tillhandahållen" -#: io.c:1099 +#: io.c:1134 #, c-format msgid "no explicit close of pipe `%s' provided" msgstr "ingen explicit stängning av röret \"%s\" tillhandahållen" -#: io.c:1102 +#: io.c:1137 #, c-format msgid "no explicit close of file `%s' provided" msgstr "ingen explicit stängning av filen \"%s\" tillhandahållen" -#: io.c:1130 io.c:1185 main.c:793 main.c:830 +#: io.c:1165 io.c:1220 main.c:798 main.c:835 #, c-format msgid "error writing standard output (%s)" msgstr "fel vid skrivning till standard ut (%s)" -#: io.c:1134 io.c:1190 +#: io.c:1169 io.c:1225 #, c-format msgid "error writing standard error (%s)" msgstr "fel vid skrivning till standard fel (%s)" -#: io.c:1142 +#: io.c:1177 #, c-format msgid "pipe flush of `%s' failed (%s)." msgstr "rörspolning av \"%s\" misslyckades (%s)" -#: io.c:1145 +#: io.c:1180 #, c-format msgid "co-process flush of pipe to `%s' failed (%s)." msgstr "koprocesspolning av röret till \"%s\" misslyckades (%s)" -#: io.c:1148 +#: io.c:1183 #, c-format msgid "file flush of `%s' failed (%s)." msgstr "filspolning av \"%s\" misslyckades (%s)" -#: io.c:1263 +#: io.c:1298 #, c-format msgid "local port %s invalid in `/inet'" msgstr "lokal port %s ogiltig i \"/inet\"" -#: io.c:1280 +#: io.c:1315 #, c-format msgid "remote host and port information (%s, %s) invalid" msgstr "ogiltig information (%s, %s) för fjärrvärd och fjärrport" -#: io.c:1432 +#: io.c:1467 #, c-format msgid "no (known) protocol supplied in special filename `%s'" msgstr "" "inget (känt) protokoll tillhandahållet i det speciella filnamnet \"%s\"" -#: io.c:1446 +#: io.c:1481 #, c-format msgid "special file name `%s' is incomplete" msgstr "speciellt filnamn \"%s\" är ofullständigt" -#: io.c:1463 +#: io.c:1498 msgid "must supply a remote hostname to `/inet'" msgstr "måste tillhandahålla ett fjärrdatornamn till \"/inet\"" -#: io.c:1481 +#: io.c:1516 msgid "must supply a remote port to `/inet'" msgstr "måste tillhandahålla en fjärrport till \"/inet\"" -#: io.c:1527 +#: io.c:1562 msgid "TCP/IP communications are not supported" msgstr "TCP/IP-kommunikation stöds inte" -#: io.c:1694 +#: io.c:1729 #, c-format msgid "could not open `%s', mode `%s'" msgstr "kunde inte öppna \"%s\", läge \"%s\"" -#: io.c:1748 +#: io.c:1783 #, c-format msgid "close of master pty failed (%s)" msgstr "stängning av huvudpty misslyckades (%s)" -#: io.c:1750 io.c:1918 io.c:2075 +#: io.c:1785 io.c:1953 io.c:2110 #, c-format msgid "close of stdout in child failed (%s)" msgstr "stängning av standard ut i barnet misslyckades (%s)" -#: io.c:1753 +#: io.c:1788 #, c-format msgid "moving slave pty to stdout in child failed (dup: %s)" msgstr "flyttandet av slavpty till standard ut i barnet misslyckades (dup: %s)" -#: io.c:1755 io.c:1923 +#: io.c:1790 io.c:1958 #, c-format msgid "close of stdin in child failed (%s)" msgstr "stängning av standard in i barnet misslyckades (%s)" -#: io.c:1758 +#: io.c:1793 #, c-format msgid "moving slave pty to stdin in child failed (dup: %s)" msgstr "flyttandet av slavpty till standard in i barnet misslyckades (dup: %s)" -#: io.c:1760 io.c:1781 +#: io.c:1795 io.c:1816 #, c-format msgid "close of slave pty failed (%s)" msgstr "stängning av slavpty misslyckades (%s)" -#: io.c:1859 io.c:1921 io.c:2053 io.c:2078 +#: io.c:1894 io.c:1956 io.c:2088 io.c:2113 #, c-format msgid "moving pipe to stdout in child failed (dup: %s)" msgstr "flyttande av rör till standard ut i barnet misslyckades (dup: %s)" -#: io.c:1866 io.c:1926 +#: io.c:1901 io.c:1961 #, c-format msgid "moving pipe to stdin in child failed (dup: %s)" msgstr "flyttande av rör till standard in i barnet misslyckades (dup: %s)" -#: io.c:1886 io.c:2068 +#: io.c:1921 io.c:2103 msgid "restoring stdout in parent process failed\n" msgstr "återställande av standard ut i förälderprocessen misslyckades\n" -#: io.c:1894 +#: io.c:1929 msgid "restoring stdin in parent process failed\n" msgstr "återställande av standard in i förälderprocessen misslyckades\n" -#: io.c:1929 io.c:2080 io.c:2094 +#: io.c:1964 io.c:2115 io.c:2129 #, c-format msgid "close of pipe failed (%s)" msgstr "stängning av röret misslyckades (%s)" -#: io.c:1974 +#: io.c:2009 msgid "`|&' not supported" msgstr "\"|&\" stöds inte" -#: io.c:2040 +#: io.c:2075 #, c-format msgid "cannot open pipe `%s' (%s)" msgstr "kan inte öppna röret \"%s\" (%s)" -#: io.c:2088 +#: io.c:2123 #, c-format msgid "cannot create child process for `%s' (fork: %s)" msgstr "kan inte skapa barnprocess för \"%s\" (fork: %s)" -#: io.c:2521 +#: io.c:2613 #, c-format msgid "data file `%s' is empty" msgstr "datafilen \"%s\" är tom" -#: io.c:2562 io.c:2570 +#: io.c:2654 io.c:2662 msgid "could not allocate more input memory" msgstr "kunde inte allokera mer indataminne" -#: io.c:3128 +#: io.c:3223 msgid "multicharacter value of `RS' is a gawk extension" msgstr "flerteckensvärdet av \"RS\" är en gawk-utökning" -#: io.c:3233 +#: io.c:3313 msgid "IPv6 communication is not supported" msgstr "IPv6-kommunikation stöds inte" -#: main.c:364 +#: main.c:353 msgid "`-m[fr]' option irrelevant in gawk" msgstr "\"-m[fr]\"-flaggan är irrelevant i gawk" -#: main.c:366 +#: main.c:355 msgid "-m option usage: `-m[fr] nnn'" msgstr "-m-flaggans användning: \"-m[fr] nnn\"" -#: main.c:389 +#: main.c:384 msgid "empty argument to `-e/--source' ignored" msgstr "tomt argument till \"-e/--source\" ignorerat" -#: main.c:460 +#: main.c:464 #, c-format msgid "%s: option `-W %s' unrecognized, ignored\n" msgstr "%s: flaggan \"-W %s\" okänd, ignorerad\n" -#: main.c:513 +#: main.c:510 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: flaggan kräver ett argument -- %c\n" -#: main.c:534 +#: main.c:531 msgid "environment variable `POSIXLY_CORRECT' set: turning on `--posix'" msgstr "miljövariabeln \"POSIXLY_CORRECT\" satt: slår på \"--posix\"" -#: main.c:540 +#: main.c:537 msgid "`--posix' overrides `--traditional'" msgstr "\"--posix\" åsidosätter \"--traditional\"" -#: main.c:551 +#: main.c:548 msgid "`--posix'/`--traditional' overrides `--non-decimal-data'" msgstr "\"--posix\"/\"--traditional\" åsidosätter \"--non-decimal-data\"" -#: main.c:555 +#: main.c:552 #, c-format msgid "running %s setuid root may be a security problem" msgstr "att köra %s setuid root kan vara ett säkerhetsproblem" -#: main.c:560 +#: main.c:557 msgid "`--posix' overrides `--binary'" msgstr "\"--posix\" åsidosätter \"--binary\"" -#: main.c:611 +#: main.c:600 #, c-format msgid "can't set binary mode on stdin (%s)" msgstr "kan inte sätta binärläge på standard in (%s)" -#: main.c:614 +#: main.c:603 #, c-format msgid "can't set binary mode on stdout (%s)" msgstr "kan inte sätta binärläge på standard ut (%s)" -#: main.c:616 +#: main.c:605 #, c-format msgid "can't set binary mode on stderr (%s)" msgstr "kan inte sätta binärläge på standard fel (%s)" -#: main.c:655 +#: main.c:653 msgid "no program text at all!" msgstr "ingen programtext alls!" -#: main.c:733 +#: main.c:737 #, c-format msgid "Usage: %s [POSIX or GNU style options] -f progfile [--] file ...\n" msgstr "" "Användning: %s [POSIX- eller GNU-stilsflaggor] -f progfil [--] fil ...\n" -#: main.c:735 +#: main.c:739 #, c-format msgid "Usage: %s [POSIX or GNU style options] [--] %cprogram%c file ...\n" msgstr "Användning: %s [POSIX- eller GNU-stilsflaggor] %cprogram%c fil ...\n" -#: main.c:740 +#: main.c:744 msgid "POSIX options:\t\tGNU long options: (standard)\n" msgstr "POSIX-flaggor:\t\tGNU långa flaggor: (standard)\n" -#: main.c:741 +#: main.c:745 msgid "\t-f progfile\t\t--file=progfile\n" msgstr "\t-f progfil\t\t--file=progfil\n" -#: main.c:742 +#: main.c:746 msgid "\t-F fs\t\t\t--field-separator=fs\n" msgstr "\t-F fs\t\t\t--field-separator=fs\n" -#: main.c:743 +#: main.c:747 msgid "\t-v var=val\t\t--assign=var=val\n" msgstr "\t-v var=värde\t\t--assign=var=värde\n" -#: main.c:744 +#: main.c:748 msgid "Short options:\t\tGNU long options: (extensions)\n" msgstr "Korta flaggor:\t\tGNU långa flaggor: (utökningar)\n" -#: main.c:745 +#: main.c:749 msgid "\t-b\t\t\t--characters-as-bytes\n" msgstr "\t-b\t\t\t--characters-as-bytes\n" -#: main.c:746 +#: main.c:750 msgid "\t-c\t\t\t--traditional\n" msgstr "\t-c\t\t\t--traditional\n" -#: main.c:747 +#: main.c:751 msgid "\t-C\t\t\t--copyright\n" msgstr "\t-C\t\t\t--copyright\n" -#: main.c:748 +#: main.c:752 msgid "\t-d[file]\t\t--dump-variables[=file]\n" msgstr "\t-d[fil]\t\t\t--dump-variables[=fil]\n" -#: main.c:749 +#: main.c:753 +#, fuzzy +msgid "\t-D[file]\t\t--debug[=file]\n" +msgstr "\t-p[fil]\t\t\t--profile[=fil]\n" + +#: main.c:754 msgid "\t-e 'program-text'\t--source='program-text'\n" msgstr "\t-e 'programtext'\t--source='programtext'\n" -#: main.c:750 +#: main.c:755 msgid "\t-E file\t\t\t--exec=file\n" msgstr "\t-E fil\t\t\t--exec=fil\n" -#: main.c:751 +#: main.c:756 msgid "\t-g\t\t\t--gen-pot\n" msgstr "\t-g\t\t\t--gen-pot\n" -#: main.c:752 +#: main.c:757 msgid "\t-h\t\t\t--help\n" msgstr "\t-h\t\t\t--help\n" -#: main.c:753 +#: main.c:758 +msgid "\t-l library\t\t--load=library\n" +msgstr "" + +#: main.c:759 msgid "\t-L [fatal]\t\t--lint[=fatal]\n" msgstr "\t-L [fatal]\t\t--lint[=fatal]\n" -#: main.c:754 +#: main.c:760 msgid "\t-n\t\t\t--non-decimal-data\n" msgstr "\t-n\t\t\t--non-decimal-data\n" -#: main.c:755 +#: main.c:761 msgid "\t-N\t\t\t--use-lc-numeric\n" msgstr "\t-N\t\t\t--use-lc-numeric\n" -#: main.c:756 +#: main.c:762 +#, fuzzy +msgid "\t-o[file]\t\t--pretty-print[=file]\n" +msgstr "\t-p[fil]\t\t\t--profile[=fil]\n" + +#: main.c:763 msgid "\t-O\t\t\t--optimize\n" msgstr "\t-O\t\t\t--optimize\n" -#: main.c:757 +#: main.c:764 msgid "\t-p[file]\t\t--profile[=file]\n" msgstr "\t-p[fil]\t\t\t--profile[=fil]\n" -#: main.c:758 +#: main.c:765 msgid "\t-P\t\t\t--posix\n" msgstr "\t-P\t\t\t--posix\n" -#: main.c:759 +#: main.c:766 msgid "\t-r\t\t\t--re-interval\n" msgstr "\t-r\t\t\t--re-interval\n" -#: main.c:761 -msgid "\t-R file\t\t\t--command=file\n" -msgstr "\t-R file\t\t\t--command=file\n" - -#: main.c:762 +#: main.c:767 msgid "\t-S\t\t\t--sandbox\n" msgstr "\t-S\t\t\t--sandbox\n" -#: main.c:763 +#: main.c:768 msgid "\t-t\t\t\t--lint-old\n" msgstr "\t-t\t\t\t--lint-old\n" -#: main.c:764 +#: main.c:769 msgid "\t-V\t\t\t--version\n" msgstr "\t-V\t\t\t--version\n" -#: main.c:766 +#: main.c:771 msgid "\t-W nostalgia\t\t--nostalgia\n" msgstr "\t-W nostalgia\t\t--nostalgia\n" -#: main.c:769 +#: main.c:774 msgid "\t-Y\t\t--parsedebug\n" msgstr "\t-Y\t\t--parsedebug\n" @@ -1810,7 +1720,7 @@ msgstr "\t-Y\t\t--parsedebug\n" #. for this application. Please add _another line_ with the #. address for translation bugs. #. no-wrap -#: main.c:778 +#: main.c:783 msgid "" "\n" "To report bugs, see node `Bugs' in `gawk.info', which is\n" @@ -1824,7 +1734,7 @@ msgstr "" "Rapportera synpunkter på översättningen till <tp-sv@listor.tp-sv.se>.\n" "\n" -#: main.c:782 +#: main.c:787 msgid "" "gawk is a pattern scanning and processing language.\n" "By default it reads standard input and writes standard output.\n" @@ -1834,7 +1744,7 @@ msgstr "" "Normalt läser det från standard in och skriver till standard ut.\n" "\n" -#: main.c:786 +#: main.c:791 msgid "" "Examples:\n" "\tgawk '{ sum += $1 }; END { print sum }' file\n" @@ -1844,7 +1754,7 @@ msgstr "" "\tgawk '{ sum += $1 }; END { print sum }' fil\n" "\tgawk -F: '{ print $1 }' /etc/passwd\n" -#: main.c:806 +#: main.c:811 #, c-format msgid "" "Copyright (C) 1989, 1991-%d Free Software Foundation.\n" @@ -1863,7 +1773,7 @@ msgstr "" "någon senare version.\n" "\n" -#: main.c:814 +#: main.c:819 msgid "" "This program is distributed in the hope that it will be useful,\n" "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" @@ -1877,7 +1787,7 @@ msgstr "" "General Public License för ytterligare information.\n" "\n" -#: main.c:820 +#: main.c:825 msgid "" "You should have received a copy of the GNU General Public License\n" "along with this program. If not, see http://www.gnu.org/licenses/.\n" @@ -1885,100 +1795,95 @@ msgstr "" "Du bör ha fått en kopia av GNU General Public License tillsammans\n" "med detta program. Om inte, se http//www.gnu.org/liceences/.\n" -#: main.c:855 +#: main.c:860 msgid "-Ft does not set FS to tab in POSIX awk" msgstr "-Ft sätter inte FS till tab i POSIX-awk" -#: main.c:1089 +#: main.c:1091 #, c-format msgid "unknown value for field spec: %d\n" msgstr "okänt värde till fältspecifikation: %d\n" -#: main.c:1170 +#: main.c:1172 #, c-format msgid "" "%s: `%s' argument to `-v' not in `var=value' form\n" "\n" msgstr "%s: Argumentet \"%s\" till \"-v\" är inte på formatet \"var=värde\"\n" -#: main.c:1196 +#: main.c:1198 #, c-format msgid "`%s' is not a legal variable name" msgstr "\"%s\" är inte ett giltigt variabelnamn" -#: main.c:1199 +#: main.c:1201 #, c-format msgid "`%s' is not a variable name, looking for file `%s=%s'" msgstr "\"%s\" är inte ett variabelnamn, letar efter filen \"%s=%s\"" -#: main.c:1203 +#: main.c:1205 #, c-format msgid "cannot use gawk builtin `%s' as variable name" msgstr "kan inte använda gawks inbyggda \"%s\" som ett funktionsnamn" -#: main.c:1208 +#: main.c:1210 #, c-format msgid "cannot use function `%s' as variable name" msgstr "kan inte använda funktionen \"%s\" som variabelnamn" -#: main.c:1261 +#: main.c:1263 msgid "floating point exception" msgstr "flyttalsundantag" -#: main.c:1268 +#: main.c:1270 msgid "fatal error: internal error" msgstr "ödesdigert fel: internt fel" -#: main.c:1283 +#: main.c:1285 msgid "fatal error: internal error: segfault" msgstr "ödesdigert fel: internt fel: segmenteringsfel" -#: main.c:1295 +#: main.c:1297 msgid "fatal error: internal error: stack overflow" msgstr "ödesdigert fel: internt fel: stackspill" -#: main.c:1345 +#: main.c:1347 #, c-format msgid "no pre-opened fd %d" msgstr "ingen föröppnad fd %d" -#: main.c:1352 +#: main.c:1354 #, c-format msgid "could not pre-open /dev/null for fd %d" msgstr "kunde inte föröppna /dev/null för fd %d" -#: main.c:1375 main.c:1384 -#, c-format -msgid "could not find groups: %s" -msgstr "kunde inte hitta grupper: %s" - -#: msg.c:63 +#: msg.c:61 #, c-format msgid "cmd. line:" msgstr "kommandorad:" -#: msg.c:107 +#: msg.c:105 msgid "error: " msgstr "fel: " -#: node.c:406 +#: node.c:402 msgid "backslash at end of string" msgstr "omvänt snedstreck i slutet av strängen" -#: node.c:517 +#: node.c:479 #, c-format msgid "old awk does not support the `\\%c' escape sequence" msgstr "gamla awk stöder inte kontrollsekvensen \"\\%c\"" -#: node.c:568 +#: node.c:530 msgid "POSIX does not allow `\\x' escapes" msgstr "POSIX tillåter inte \"\\x\"-kontrollsekvenser" -#: node.c:574 +#: node.c:536 msgid "no hex digits in `\\x' escape sequence" msgstr "inga hexadecimala siffror i \"\\x\"-kontrollsekvenser" -#: node.c:596 +#: node.c:558 #, c-format msgid "" "hex escape \\x%.*s of %d characters probably not interpreted the way you " @@ -1987,12 +1892,12 @@ msgstr "" "hexkod \\x%.*s med %d tecken tolkas förmodligen inte på det sätt du " "förväntar dig" -#: node.c:611 +#: node.c:573 #, c-format msgid "escape sequence `\\%c' treated as plain `%c'" msgstr "kontrollsekvensen \"\\%c\" behandlad som bara \"%c\"" -#: node.c:750 +#: node.c:712 msgid "" "Invalid multibyte data detected. There may be a mismatch between your data " "and your locale." @@ -2010,16 +1915,16 @@ msgstr "%s %s \"%s\": kunde inte hämta fb-flaggor: (fcntl F_GETFD: %s)" msgid "%s %s `%s': could not set close-on-exec: (fcntl F_SETFD: %s)" msgstr "%s %s \"%s\": kunde inte sätta stäng-vid-exec (fcntl F_SETFD: %s)" -#: profile.c:83 +#: profile.c:69 #, c-format msgid "could not open `%s' for writing: %s" msgstr "kunde inte öppna \"%s\" för skrivning: %s" -#: profile.c:85 +#: profile.c:71 msgid "sending profile to standard error" msgstr "skickar profilen till standard fel" -#: profile.c:203 +#: profile.c:187 #, c-format msgid "" "\t# %s block(s)\n" @@ -2028,7 +1933,7 @@ msgstr "" "\t# %s-block\n" "\n" -#: profile.c:208 +#: profile.c:192 #, c-format msgid "" "\t# Rule(s)\n" @@ -2037,17 +1942,22 @@ msgstr "" "\t# Regel/regler\n" "\n" -#: profile.c:279 +#: profile.c:266 #, c-format msgid "internal error: %s with null vname" msgstr "internt fel: %s med null vname" -#: profile.c:952 +#: profile.c:528 +#, fuzzy +msgid "internal error: builtin with null fname" +msgstr "internt fel: %s med null vname" + +#: profile.c:943 #, c-format msgid "\t# gawk profile, created %s\n" msgstr "\t# gawkprofil, skapad %s\n" -#: profile.c:1331 +#: profile.c:1321 #, c-format msgid "" "\n" @@ -2056,94 +1966,165 @@ msgstr "" "\n" "\t# Funktioner, listade alfabetiskt\n" -#: profile.c:1370 +#: profile.c:1359 #, c-format msgid "redir2str: unknown redirection type %d" msgstr "redir2str: okänd omdirigeringstyp %d" -#: re.c:572 -#, fuzzy, c-format +#: re.c:573 +#, c-format msgid "range of the form `[%c-%c]' is locale dependent" msgstr "intervall på formen \"[%c-%c]\" är lokalberoende" -#: re.c:599 +#: re.c:600 #, c-format msgid "regexp component `%.*s' should probably be `[%.*s]'" msgstr "" "komponenten \"%.*s\" i reguljäruttryck skall förmodligen vara \"[%.*s]\"" -#: regcomp.c:132 +#: regcomp.c:131 msgid "Success" msgstr "Lyckades" -#: regcomp.c:135 +#: regcomp.c:134 msgid "No match" msgstr "Misslyckades" -#: regcomp.c:138 +#: regcomp.c:137 msgid "Invalid regular expression" msgstr "Ogiltigt reguljärt uttryck" -#: regcomp.c:141 +#: regcomp.c:140 msgid "Invalid collation character" msgstr "Ogiltigt kollationeringstecken" -#: regcomp.c:144 +#: regcomp.c:143 msgid "Invalid character class name" msgstr "Ogiltigt teckenklassnamn" -#: regcomp.c:147 +#: regcomp.c:146 msgid "Trailing backslash" msgstr "Eftersläpande omvänt snedstreck" -#: regcomp.c:150 +#: regcomp.c:149 msgid "Invalid back reference" msgstr "Ogiltig bakåtrerefens" -#: regcomp.c:153 +#: regcomp.c:152 msgid "Unmatched [ or [^" msgstr "Obalanserad [ eller [^" -#: regcomp.c:156 +#: regcomp.c:155 msgid "Unmatched ( or \\(" msgstr "Obalanserad ( eller \\(" -#: regcomp.c:159 +#: regcomp.c:158 msgid "Unmatched \\{" msgstr "Obalanserad \\{" -#: regcomp.c:162 +#: regcomp.c:161 msgid "Invalid content of \\{\\}" msgstr "Ogiltigt innehåll i \\{\\}" -#: regcomp.c:165 +#: regcomp.c:164 msgid "Invalid range end" msgstr "Ogiltigt omfångsslut" -#: regcomp.c:168 +#: regcomp.c:167 msgid "Memory exhausted" msgstr "Minnet slut" -#: regcomp.c:171 +#: regcomp.c:170 msgid "Invalid preceding regular expression" msgstr "Ogiltigt föregående reguljärt uttryck" -#: regcomp.c:174 +#: regcomp.c:173 msgid "Premature end of regular expression" msgstr "För tidigt slut på reguljärt uttryck" -#: regcomp.c:177 +#: regcomp.c:176 msgid "Regular expression too big" msgstr "Reguljärt uttryck för stort" -#: regcomp.c:180 +#: regcomp.c:179 msgid "Unmatched ) or \\)" msgstr "Obalanserad ) eller \\)" -#: regcomp.c:701 +#: regcomp.c:700 msgid "No previous regular expression" msgstr "Inget föregående reguljärt uttryck" -#~ msgid "assignment is not allowed to result of builtin function" +#~ msgid "attempt to use function `%s' as an array" +#~ msgstr "försök att använda funktionen \"%s\" som vektor" + +#~ msgid "reference to uninitialized element `%s[\"%.*s\"]'" +#~ msgstr "referens till oinitierat element \"%s[\"%.*s\"]\"" + +#~ msgid "subscript of array `%s' is null string" +#~ msgstr "index i vektorn \"%s\" är en tom sträng" + +#~ msgid "%s: empty (null)\n" +#~ msgstr "%s: tom (null)\n" + +#~ msgid "%s: empty (zero)\n" +#~ msgstr "%s: tom (noll)\n" + +#~ msgid "%s: table_size = %d, array_size = %d\n" +#~ msgstr "%s: tabellstorlek = %d, vektorstorlek = %d\n" + +#~ msgid "%s: is parameter\n" +#~ msgstr "%s: är en parameter\n" + +#~ msgid "%s: array_ref to %s\n" +#~ msgstr "%s: vektorreferens till %s\n" + +#~ msgid "use of non-array as array" +#~ msgstr "icke-vektor används som vektor" + +#~ msgid "can't use function name `%s' as variable or array" +#~ msgstr "kan inte använda funktionsnamnet \"%s\" som variabel eller vektor" + +#~ msgid "attempt to use array `%s[\"%.*s\"]' in a scalar context" +#~ msgstr "försök att använda vektorn \"%s[\"%.*s\"]\" i skalärsammanhang" + +#~ msgid "assignment used in conditional context" +#~ msgstr "tilldelning använt i jämförelsesammanhang" + +#~ msgid "statement has no effect" +#~ msgstr "kommandot har ingen effekt" + +#~ msgid "" +#~ "for loop: array `%s' changed size from %ld to %ld during loop execution" #~ msgstr "" -#~ "det är inte tillåtet att tilldela resultatet från en inbyggd funktion" +#~ "forslinga: vektorn \"%s\" ändrade storlek från %ld till %ld under " +#~ "slingexekvering" + +#~ msgid "function called indirectly through `%s' does not exist" +#~ msgstr "funktionen anropad indirekt genom \"%s\" finns inte" + +#~ msgid "function `%s' not defined" +#~ msgstr "funktionen \"%s\" är inte definierad" + +#~ msgid "non-redirected `getline' invalid inside `%s' rule" +#~ msgstr "icke omdirigerad \"getline\" odefinierad inuti \"%s\"-regel" + +#~ msgid "error reading input file `%s': %s" +#~ msgstr "fel vid läsning av indatafilen \"%s\": %s" + +#~ msgid "`nextfile' cannot be called from a `%s' rule" +#~ msgstr "\"nextfile\" kan inte anropas från en \"%s\"-regel" + +#~ msgid "`exit' cannot be called in the current context" +#~ msgstr "\"exit\" kan inte anropas i det aktuella sammanhanget" + +#~ msgid "`next' cannot be called from a `%s' rule" +#~ msgstr "\"next\" kan inte anropas från en \"%s\"-regel" + +#~ msgid "Sorry, don't know how to interpret `%s'" +#~ msgstr "Tyvärr, vet inte hur \"%s\" skall tolkas" + +#~ msgid "\t-R file\t\t\t--command=file\n" +#~ msgstr "\t-R file\t\t\t--command=file\n" + +#~ msgid "could not find groups: %s" +#~ msgstr "kunde inte hitta grupper: %s" diff --git a/posix/ChangeLog b/posix/ChangeLog index 8aaeb418..d684afe9 100644 --- a/posix/ChangeLog +++ b/posix/ChangeLog @@ -1,3 +1,7 @@ +2012-03-28 Arnold D. Robbins <arnold@skeeve.com> + + * 4.0.1: Release tar ball made. + 2011-06-23 Arnold D. Robbins <arnold@skeeve.com> * ChangeLog.0: Rotated ChangeLog into this file. @@ -3,7 +3,7 @@ */ /* - * Copyright (C) 1991-2011 the Free Software Foundation, Inc. + * Copyright (C) 1991-2012 the Free Software Foundation, Inc. * * This file is part of GAWK, the GNU implementation of the * AWK Programming Language. @@ -268,7 +268,7 @@ research(Regexp *rp, char *str, int start, */ if (rp->dfa && ! no_bol && ! need_start) { char save; - int count = 0; + size_t count = 0; /* * dfa likes to stick a '\n' right after the matched * text. So we just save and restore the character. @@ -322,6 +322,7 @@ void dfaerror(const char *s) { fatal("%s", s); + exit(EXIT_FATAL); /* for DJGPP */ } /* re_update --- recompile a dynamic regexp */ @@ -1,5 +1,5 @@ /* Extended regular expression matching and search library. - Copyright (C) 2002-2007,2009,2010,2011 Free Software Foundation, Inc. + Copyright (C) 2002-2007,2009,2010,2011,2012 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Isamu Hasegawa <isamu@yamato.ibm.com>. @@ -14,9 +14,8 @@ Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA - 02110-1301 USA. */ + License along with the GNU C Library; if not, see + <http://www.gnu.org/licenses/>. */ static reg_errcode_t re_compile_internal (regex_t *preg, const char * pattern, size_t length, reg_syntax_t syntax); @@ -974,6 +973,35 @@ init_word_char (re_dfa_t *dfa) { int i, j, ch; dfa->word_ops_used = 1; +#ifndef GAWK + if (BE (dfa->map_notascii == 0, 1)) + { + if (sizeof (dfa->word_char[0]) == 8) + { + dfa->word_char[0] = UINT64_C (0x03ff000000000000); + dfa->word_char[1] = UINT64_C (0x07fffffe87fffffe); + i = 2; + } + else if (sizeof (dfa->word_char[0]) == 4) + { + dfa->word_char[0] = UINT32_C (0x00000000); + dfa->word_char[1] = UINT32_C (0x03ff0000); + dfa->word_char[2] = UINT32_C (0x87fffffe); + dfa->word_char[3] = UINT32_C (0x07fffffe); + i = 4; + } + else + abort (); + ch = 128; + + if (BE (dfa->is_utf8, 1)) + { + memset (&dfa->word_char[i], '\0', (SBC_MAX - ch) / 8); + return; + } + } +#endif + for (i = 0, ch = 0; i < BITSET_WORDS; ++i) for (j = 0; j < BITSET_WORD_BITS; ++j, ++ch) if (isalnum (ch) || ch == '_') @@ -3470,8 +3498,8 @@ build_equiv_class (bitset_t sbcset, const unsigned char *name) _NL_COLLATE_EXTRAMB); indirect = (const int32_t *) _NL_CURRENT (LC_COLLATE, _NL_COLLATE_INDIRECTMB); - idx1 = findidx (&cp); - if (BE (idx1 == 0 || cp < name + strlen ((const char *) name), 0)) + idx1 = findidx (&cp, -1); + if (BE (idx1 == 0 || *cp != '\0', 0)) /* This isn't a valid character. */ return REG_ECOLLATE; @@ -3482,7 +3510,7 @@ build_equiv_class (bitset_t sbcset, const unsigned char *name) { char_buf[0] = ch; cp = char_buf; - idx2 = findidx (&cp); + idx2 = findidx (&cp, 1); /* idx2 = table[ch]; */ @@ -14,9 +14,8 @@ Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA - 02110-1301 USA. */ + License along with the GNU C Library; if not, see + <http://www.gnu.org/licenses/>. */ #ifdef HAVE_CONFIG_H #include "config.h" @@ -15,9 +15,8 @@ Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA - 02110-1301 USA. */ + License along with the GNU C Library; if not, see + <http://www.gnu.org/licenses/>. */ #ifndef _REGEX_H #define _REGEX_H 1 @@ -349,9 +348,9 @@ typedef enum /* This data structure represents a compiled pattern. Before calling the pattern compiler, the fields `buffer', `allocated', `fastmap', - `translate', and `no_sub' can be set. After the pattern has been - compiled, the `re_nsub' field is available. All other fields are - private to the regex routines. */ + and `translate' can be set. After the pattern has been compiled, + the fields `re_nsub', `not_bol' and `not_eol' are available. All + other fields are private to the regex routines. */ #ifndef RE_TRANSLATE_TYPE # define __RE_TRANSLATE_TYPE unsigned char * @@ -476,7 +475,12 @@ extern reg_syntax_t re_set_syntax (reg_syntax_t __syntax); /* Compile the regular expression PATTERN, with length LENGTH and syntax given by the global `re_syntax_options', into the buffer - BUFFER. Return NULL if successful, and an error string if not. */ + BUFFER. Return NULL if successful, and an error string if not. + + To free the allocated storage, you must call `regfree' on BUFFER. + Note that the translate table must either have been initialised by + `regcomp', with a malloc'ed value, or set to NULL before calling + `regfree'. */ extern const char *re_compile_pattern (const char *__pattern, size_t __length, struct re_pattern_buffer *__buffer); diff --git a/regex_internal.c b/regex_internal.c index 0c4f8f80..80991613 100644 --- a/regex_internal.c +++ b/regex_internal.c @@ -1,5 +1,5 @@ /* Extended regular expression matching and search library. - Copyright (C) 2002-2006, 2010 Free Software Foundation, Inc. + Copyright (C) 2002-2006, 2010, 2011 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Isamu Hasegawa <isamu@yamato.ibm.com>. @@ -14,9 +14,8 @@ Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA - 02110-1301 USA. */ + License along with the GNU C Library; if not, see + <http://www.gnu.org/licenses/>. */ static void re_string_construct_common (const char *str, int len, re_string_t *pstr, @@ -246,13 +245,8 @@ build_wcs_buffer (re_string_t *pstr) else p = (const char *) pstr->raw_mbs + pstr->raw_mbs_idx + byte_idx; mbclen = __mbrtowc (&wc, p, remain_len, &pstr->cur_state); - if (BE (mbclen == (size_t) -2, 0)) - { - /* The buffer doesn't have enough space, finish to build. */ - pstr->cur_state = prev_st; - break; - } - else if (BE (mbclen == (size_t) -1 || mbclen == 0, 0)) + if (BE (mbclen == (size_t) -1 || mbclen == 0 + || (mbclen == (size_t) -2 && pstr->bufs_len >= pstr->len), 0)) { /* We treat these cases as a singlebyte character. */ mbclen = 1; @@ -261,6 +255,12 @@ build_wcs_buffer (re_string_t *pstr) wc = pstr->trans[wc]; pstr->cur_state = prev_st; } + else if (BE (mbclen == (size_t) -2, 0)) + { + /* The buffer doesn't have enough space, finish to build. */ + pstr->cur_state = prev_st; + break; + } /* Write wide character and padding. */ pstr->wcs[byte_idx++] = wc; @@ -343,9 +343,11 @@ build_wcs_upper_buffer (re_string_t *pstr) for (remain_len = byte_idx + mbclen - 1; byte_idx < remain_len ;) pstr->wcs[byte_idx++] = WEOF; } - else if (mbclen == (size_t) -1 || mbclen == 0) + else if (mbclen == (size_t) -1 || mbclen == 0 + || (mbclen == (size_t) -2 && pstr->bufs_len >= pstr->len)) { - /* It is an invalid character or '\0'. Just use the byte. */ + /* It is an invalid character, an incomplete character + at the end of the string, or '\0'. Just use the byte. */ int ch = pstr->raw_mbs[pstr->raw_mbs_idx + byte_idx]; pstr->mbs[byte_idx] = ch; /* And also cast it to wide char. */ @@ -458,7 +460,8 @@ build_wcs_upper_buffer (re_string_t *pstr) for (remain_len = byte_idx + mbclen - 1; byte_idx < remain_len ;) pstr->wcs[byte_idx++] = WEOF; } - else if (mbclen == (size_t) -1 || mbclen == 0) + else if (mbclen == (size_t) -1 || mbclen == 0 + || (mbclen == (size_t) -2 && pstr->bufs_len >= pstr->len)) { /* It is an invalid character or '\0'. Just use the byte. */ int ch = pstr->raw_mbs[pstr->raw_mbs_idx + src_idx]; @@ -505,7 +508,7 @@ re_string_skip_chars (re_string_t *pstr, int new_raw_idx, wint_t *last_wc) rawbuf_idx < new_raw_idx;) { wchar_t wc2; - int remain_len = pstr->len - rawbuf_idx; + int remain_len = pstr->raw_len - rawbuf_idx; prev_st = pstr->cur_state; mbclen = __mbrtowc (&wc2, (const char *) pstr->raw_mbs + rawbuf_idx, remain_len, &pstr->cur_state); @@ -741,16 +744,18 @@ re_string_reconstruct (re_string_t *pstr, int idx, int eflags) unsigned char buf[6]; size_t mbclen; + const unsigned char *pp = p; if (BE (pstr->trans != NULL, 0)) { int i = mlen < 6 ? mlen : 6; while (--i >= 0) buf[i] = pstr->trans[p[i]]; + pp = buf; } /* XXX Don't use mbrtowc, we know which conversion to use (UTF-8 -> UCS4). */ memset (&cur_state, 0, sizeof (cur_state)); - mbclen = __mbrtowc (&wc2, (const char *) p, mlen, + mbclen = __mbrtowc (&wc2, (const char *) pp, mlen, &cur_state); if (raw + offset - p <= mbclen && mbclen < (size_t) -2) diff --git a/regex_internal.h b/regex_internal.h index 5fcab48a..f38a13b0 100644 --- a/regex_internal.h +++ b/regex_internal.h @@ -1,5 +1,5 @@ /* Extended regular expression matching and search library. - Copyright (C) 2002-2005, 2007, 2008, 2010 Free Software Foundation, Inc. + Copyright (C) 2002-2005, 2007, 2008, 2010, 2011 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Isamu Hasegawa <isamu@yamato.ibm.com>. @@ -14,9 +14,8 @@ Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ + License along with the GNU C Library; if not, see + <http://www.gnu.org/licenses/>. */ #ifndef _REGEX_INTERNAL_H #define _REGEX_INTERNAL_H 1 @@ -783,7 +782,6 @@ re_string_elem_size_at (const re_string_t *pstr, int idx) # ifdef _LIBC const unsigned char *p, *extra; const int32_t *table, *indirect; - int32_t tmp; # include <locale/weight.h> uint_fast32_t nrules = _NL_CURRENT_WORD (LC_COLLATE, _NL_COLLATE_NRULES); @@ -795,7 +793,7 @@ re_string_elem_size_at (const re_string_t *pstr, int idx) indirect = (const int32_t *) _NL_CURRENT (LC_COLLATE, _NL_COLLATE_INDIRECTMB); p = pstr->mbs + idx; - tmp = findidx (&p); + findidx (&p, pstr->len - idx); return p - pstr->mbs - idx; } else @@ -1,5 +1,5 @@ /* Extended regular expression matching and search library. - Copyright (C) 2002-2005, 2007, 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 2002-2005,2007,2009,2010,2011 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Isamu Hasegawa <isamu@yamato.ibm.com>. @@ -14,9 +14,8 @@ Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA - 02110-1301 USA. */ + License along with the GNU C Library; if not, see + <http://www.gnu.org/licenses/>. */ static reg_errcode_t match_ctx_init (re_match_context_t *cache, int eflags, int n) internal_function; @@ -200,6 +199,15 @@ static int check_node_accept (const re_match_context_t *mctx, internal_function; static reg_errcode_t extend_buffers (re_match_context_t *mctx) internal_function; + +#ifdef GAWK +#undef MIN /* safety */ +static int +MIN(size_t a, size_t b) +{ + return (a < b ? a : b); +} +#endif /* Entry point for POSIX code. */ @@ -1156,7 +1164,8 @@ check_matching (re_match_context_t *mctx, int fl_longest_match, re_dfastate_t *old_state = cur_state; int next_char_idx = re_string_cur_idx (&mctx->input) + 1; - if (BE (next_char_idx >= mctx->input.bufs_len, 0) + if ((BE (next_char_idx >= mctx->input.bufs_len, 0) + && mctx->input.bufs_len < mctx->input.len) || (BE (next_char_idx >= mctx->input.valid_len, 0) && mctx->input.valid_len < mctx->input.len)) { @@ -1734,7 +1743,8 @@ clean_state_log_if_needed (re_match_context_t *mctx, int next_state_log_idx) { int top = mctx->state_log_top; - if (next_state_log_idx >= mctx->input.bufs_len + if ((next_state_log_idx >= mctx->input.bufs_len + && mctx->input.bufs_len < mctx->input.len) || (next_state_log_idx >= mctx->input.valid_len && mctx->input.valid_len < mctx->input.len)) { @@ -3924,6 +3934,7 @@ check_node_accept_bytes (const re_dfa_t *dfa, int node_idx, if (cset->nequiv_classes) { const unsigned char *cp = pin; + int32_t idx; table = (const int32_t *) _NL_CURRENT (LC_COLLATE, _NL_COLLATE_TABLEMB); weights = (const unsigned char *) @@ -3932,7 +3943,7 @@ check_node_accept_bytes (const re_dfa_t *dfa, int node_idx, _NL_CURRENT (LC_COLLATE, _NL_COLLATE_EXTRAMB); indirect = (const int32_t *) _NL_CURRENT (LC_COLLATE, _NL_COLLATE_INDIRECTMB); - int32_t idx = findidx (&cp); + idx = findidx (&cp, elem_len); if (idx > 0) for (i = 0; i < cset->nequiv_classes; ++i) { @@ -4113,7 +4124,7 @@ extend_buffers (re_match_context_t *mctx) return REG_ESPACE; /* Double the lengthes of the buffers. */ - ret = re_string_realloc_buffers (pstr, pstr->bufs_len * 2); + ret = re_string_realloc_buffers (pstr, MIN (pstr->len, pstr->bufs_len * 2)); if (BE (ret != REG_NOERROR, 0)) return ret; diff --git a/test/ChangeLog b/test/ChangeLog index 773c5ae6..4a2c7b2b 100644 --- a/test/ChangeLog +++ b/test/ChangeLog @@ -22,6 +22,21 @@ * badargs.ok: Adjust for new and changed command line options. +2012-03-28 Arnold D. Robbins <arnold@skeeve.com> + + * 4.0.1: Release tar ball made. + +2012-03-20 Arnold D. Robbins <arnold@skeeve.com> + + * Makefile.am (printfbad3): New test. + * printfbad3.awk, printfbad3.ok: New files. + +2012-02-22 Arnold D. Robbins <arnold@skeeve.com> + + * Makefile.am (beginfile2, next): Set LC_ALL=C so that error + messages will be in English for comparison with .ok files. + Thanks to Jeroen Schot <schot@a-eskwadraat.nl>. + 2011-12-26 Arnold D. Robbins <arnold@skeeve.com> * Makefile.am (rri1): New test. diff --git a/test/Makefile.am b/test/Makefile.am index da3faeaa..54d48397 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -1,7 +1,7 @@ # # test/Makefile.am --- automake input file for gawk # -# Copyright (C) 1988-2011 the Free Software Foundation, Inc. +# Copyright (C) 1988-2012 the Free Software Foundation, Inc. # # This file is part of GAWK, the GNU implementation of the # AWK Programming Language. @@ -577,6 +577,8 @@ EXTRA_DIST = \ printfbad2.awk \ printfbad2.in \ printfbad2.ok \ + printfbad3.awk \ + printfbad3.ok \ printfloat.awk \ printlang.awk \ prmarscl.awk \ @@ -787,38 +789,43 @@ TESTS_WE_ARE_NOT_DOING_YET_FIXME_ONE_DAY = longdbl # Get rid of core files when cleaning and generated .ok file CLEANFILES = core core.* fmtspcl.ok -# try to keep these sorted +# try to keep these sorted. each letter starts a new line BASIC_TESTS = \ addcomma anchgsub argarray arrayparm arrayprm2 arrayprm3 \ arrayref arrymem1 arryref2 arryref3 arryref4 arryref5 arynasty \ arynocls aryprm1 aryprm2 aryprm3 aryprm4 aryprm5 aryprm6 aryprm7 \ - aryprm8 arysubnm asgext awkpath back89 backgsub childin clobber \ - closebad clsflnam compare compare2 concat1 concat2 concat3 \ - concat4 convfmt datanonl defref delargv delarpm2 delarprm delfunc \ - dfastress dynlj eofsplit exitval1 exitval2 fcall_exit fcall_exit2 \ - fldchg fldchgnf fnamedat fnarray fnarray2 fnaryscl fnasgnm fnmisc \ - fordel forref forsimp fsbs fsrs fsspcoln fstabplus funsemnl funsmnam \ - funstack getline getline2 getline3 getline4 \ - getlnbuf getnr2tb getnr2tm \ + aryprm8 arysubnm asgext awkpath \ + back89 backgsub \ + childin clobber closebad clsflnam compare compare2 concat1 concat2 \ + concat3 concat4 convfmt \ + datanonl defref delargv delarpm2 delarprm delfunc dfastress dynlj \ + eofsplit exitval1 exitval2 \ + fcall_exit fcall_exit2 fldchg fldchgnf fnamedat fnarray fnarray2 \ + fnaryscl fnasgnm fnmisc fordel forref forsimp fsbs fsrs fsspcoln \ + fstabplus funsemnl funsmnam funstack \ + getline getline2 getline3 getline4 getlnbuf getnr2tb getnr2tm \ gsubasgn gsubtest gsubtst2 gsubtst3 gsubtst4 gsubtst5 gsubtst6 \ gsubtst7 gsubtst8 \ - hex hsprint inputred intest intprec iobug1 leaddig leadnl litoct \ - longsub longwrds manglprm math membug1 messages minusstr mmap8k \ - mtchi18n nasty nasty2 negexp negrange nested nfldstr nfneg \ - nfset nlfldsep nlinstr nlstrina noeffect nofile nofmtch noloop1 \ - noloop2 nonl noparms nors nulrsend numindex numsubstr octsub ofmt \ - ofmta ofmtbig ofmtfidl ofmts onlynl opasnidx opasnslf paramdup \ - paramres paramtyp parse1 parsefld parseme pcntplus posix2008sub \ - prdupval prec printf0 printf1 prmarscl prmreuse prt1eval prtoeval \ - rand range1 rebt8b1 redfilnm regeq regrange reindops reparse resplit \ - rri1 \ - rs rsnul1nl rsnulbig rsnulbig2 rstest1 rstest2 rstest3 rstest4 \ - rstest5 rswhite scalar sclforin sclifin sortempty splitargv \ - splitarr splitdef splitvar splitwht strcat1 strnum1 strtod subamp \ - subi18n subsepnm subslash substr swaplns synerr1 synerr2 tradanch \ - tweakfld uninit2 uninit3 uninit4 uninit5 uninitialized unterm \ - uparrfs wideidx wideidx2 widesub widesub2 widesub3 widesub4 \ - wjposer1 zero2 zeroe0 zeroflag + hex hsprint \ + inputred intest intprec iobug1 \ + leaddig leadnl litoct longsub longwrds \ + manglprm math membug1 messages minusstr mmap8k mtchi18n \ + nasty nasty2 negexp negrange nested nfldstr nfneg nfset nlfldsep \ + nlinstr nlstrina noeffect nofile nofmtch noloop1 noloop2 nonl \ + noparms nors nulrsend numindex numsubstr \ + octsub ofmt ofmta ofmtbig ofmtfidl ofmts onlynl opasnidx opasnslf \ + paramdup paramres paramtyp parse1 parsefld parseme pcntplus \ + posix2008sub prdupval prec printf0 printf1 prmarscl prmreuse \ + prt1eval prtoeval \ + rand range1 rebt8b1 redfilnm regeq regrange reindops reparse \ + resplit rri1 rs rsnul1nl rsnulbig rsnulbig2 rstest1 rstest2 \ + rstest3 rstest4 rstest5 rswhite \ + scalar sclforin sclifin sortempty splitargv splitarr splitdef \ + splitvar splitwht strcat1 strnum1 strtod subamp subi18n \ + subsepnm subslash substr swaplns synerr1 synerr2 tradanch tweakfld \ + uninit2 uninit3 uninit4 uninit5 uninitialized unterm uparrfs \ + wideidx wideidx2 widesub widesub2 widesub3 widesub4 wjposer1 \ + zero2 zeroe0 zeroflag UNIX_TESTS = \ fflush getlnhd localenl pid pipeio1 pipeio2 poundbang rtlen rtlen01 \ @@ -826,15 +833,16 @@ UNIX_TESTS = \ GAWK_EXT_TESTS = \ aadelete1 aadelete2 aarray1 aasort aasorti argtest arraysort \ - backw badargs beginfile1 beginfile2 \ - binmode1 clos1way delsub devfd devfd1 \ - devfd2 dumpvars exit fieldwdth fpat1 fpat2 fpat3 \ - fpatnull fsfwfs funlen \ + backw badargs beginfile1 beginfile2 binmode1 \ + clos1way delsub devfd devfd1 devfd2 dumpvars exit \ + fieldwdth fpat1 fpat2 fpat3 fpatnull fsfwfs funlen \ fwtest fwtest2 fwtest3 \ gensub gensub2 getlndir gnuops2 gnuops3 gnureops \ - icasefs icasers igncdym igncfs ignrcas2 ignrcase indirectcall lint \ - lintold lintwarn manyfiles match1 match2 match3 mbstr1 nastyparm \ - next nondec nondec2 patsplit posix printfbad1 printfbad2 procinfs \ + icasefs icasers igncdym igncfs ignrcas2 ignrcase indirectcall \ + lint lintold lintwarn \ + manyfiles match1 match2 match3 mbstr1 \ + nastyparm next nondec nondec2 \ + patsplit posix printfbad1 printfbad2 printfbad3 procinfs \ profile1 profile2 profile3 pty1 \ rebuf regx8bit reint reint2 rsstart1 \ rsstart2 rsstart3 rstest6 shadow sortfor sortu splitarg4 strftime \ @@ -1409,7 +1417,7 @@ beginfile1:: beginfile2: @echo $@ - @-( cd $(srcdir) && AWK="$(abs_builddir)/$(AWKPROG)" $(srcdir)/$@.sh $(srcdir)/$@.in ) > _$@ 2>&1 + @-( cd $(srcdir) && LC_ALL=C AWK="$(abs_builddir)/$(AWKPROG)" $(srcdir)/$@.sh $(srcdir)/$@.in ) > _$@ 2>&1 @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ dumpvars:: @@ -1444,7 +1452,7 @@ posix2008sub: next: @echo $@ @-AWK="$(AWKPROG)" $(srcdir)/$@.sh > _$@ 2>&1 - @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + @-LC_ALL=C $(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ exit: @echo $@ diff --git a/test/Makefile.in b/test/Makefile.in index 4eb95900..838eca85 100644 --- a/test/Makefile.in +++ b/test/Makefile.in @@ -18,7 +18,7 @@ # # test/Makefile.am --- automake input file for gawk # -# Copyright (C) 1988-2011 the Free Software Foundation, Inc. +# Copyright (C) 1988-2012 the Free Software Foundation, Inc. # # This file is part of GAWK, the GNU implementation of the # AWK Programming Language. @@ -68,11 +68,11 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/arch.m4 \ $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \ $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libsigsegv.m4 \ $(top_srcdir)/m4/longlong.m4 $(top_srcdir)/m4/mpfr.m4 \ - $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \ - $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/readline.m4 \ - $(top_srcdir)/m4/socket.m4 $(top_srcdir)/m4/stdint_h.m4 \ - $(top_srcdir)/m4/uintmax_t.m4 $(top_srcdir)/m4/ulonglong.m4 \ - $(top_srcdir)/configure.ac + $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/noreturn.m4 \ + $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \ + $(top_srcdir)/m4/readline.m4 $(top_srcdir)/m4/socket.m4 \ + $(top_srcdir)/m4/stdint_h.m4 $(top_srcdir)/m4/uintmax_t.m4 \ + $(top_srcdir)/m4/ulonglong.m4 $(top_srcdir)/configure.ac am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs @@ -763,6 +763,8 @@ EXTRA_DIST = \ printfbad2.awk \ printfbad2.in \ printfbad2.ok \ + printfbad3.awk \ + printfbad3.ok \ printfloat.awk \ printlang.awk \ prmarscl.awk \ @@ -973,38 +975,43 @@ TESTS_WE_ARE_NOT_DOING_YET_FIXME_ONE_DAY = longdbl # Get rid of core files when cleaning and generated .ok file CLEANFILES = core core.* fmtspcl.ok -# try to keep these sorted +# try to keep these sorted. each letter starts a new line BASIC_TESTS = \ addcomma anchgsub argarray arrayparm arrayprm2 arrayprm3 \ arrayref arrymem1 arryref2 arryref3 arryref4 arryref5 arynasty \ arynocls aryprm1 aryprm2 aryprm3 aryprm4 aryprm5 aryprm6 aryprm7 \ - aryprm8 arysubnm asgext awkpath back89 backgsub childin clobber \ - closebad clsflnam compare compare2 concat1 concat2 concat3 \ - concat4 convfmt datanonl defref delargv delarpm2 delarprm delfunc \ - dfastress dynlj eofsplit exitval1 exitval2 fcall_exit fcall_exit2 \ - fldchg fldchgnf fnamedat fnarray fnarray2 fnaryscl fnasgnm fnmisc \ - fordel forref forsimp fsbs fsrs fsspcoln fstabplus funsemnl funsmnam \ - funstack getline getline2 getline3 getline4 \ - getlnbuf getnr2tb getnr2tm \ + aryprm8 arysubnm asgext awkpath \ + back89 backgsub \ + childin clobber closebad clsflnam compare compare2 concat1 concat2 \ + concat3 concat4 convfmt \ + datanonl defref delargv delarpm2 delarprm delfunc dfastress dynlj \ + eofsplit exitval1 exitval2 \ + fcall_exit fcall_exit2 fldchg fldchgnf fnamedat fnarray fnarray2 \ + fnaryscl fnasgnm fnmisc fordel forref forsimp fsbs fsrs fsspcoln \ + fstabplus funsemnl funsmnam funstack \ + getline getline2 getline3 getline4 getlnbuf getnr2tb getnr2tm \ gsubasgn gsubtest gsubtst2 gsubtst3 gsubtst4 gsubtst5 gsubtst6 \ gsubtst7 gsubtst8 \ - hex hsprint inputred intest intprec iobug1 leaddig leadnl litoct \ - longsub longwrds manglprm math membug1 messages minusstr mmap8k \ - mtchi18n nasty nasty2 negexp negrange nested nfldstr nfneg \ - nfset nlfldsep nlinstr nlstrina noeffect nofile nofmtch noloop1 \ - noloop2 nonl noparms nors nulrsend numindex numsubstr octsub ofmt \ - ofmta ofmtbig ofmtfidl ofmts onlynl opasnidx opasnslf paramdup \ - paramres paramtyp parse1 parsefld parseme pcntplus posix2008sub \ - prdupval prec printf0 printf1 prmarscl prmreuse prt1eval prtoeval \ - rand range1 rebt8b1 redfilnm regeq regrange reindops reparse resplit \ - rri1 \ - rs rsnul1nl rsnulbig rsnulbig2 rstest1 rstest2 rstest3 rstest4 \ - rstest5 rswhite scalar sclforin sclifin sortempty splitargv \ - splitarr splitdef splitvar splitwht strcat1 strnum1 strtod subamp \ - subi18n subsepnm subslash substr swaplns synerr1 synerr2 tradanch \ - tweakfld uninit2 uninit3 uninit4 uninit5 uninitialized unterm \ - uparrfs wideidx wideidx2 widesub widesub2 widesub3 widesub4 \ - wjposer1 zero2 zeroe0 zeroflag + hex hsprint \ + inputred intest intprec iobug1 \ + leaddig leadnl litoct longsub longwrds \ + manglprm math membug1 messages minusstr mmap8k mtchi18n \ + nasty nasty2 negexp negrange nested nfldstr nfneg nfset nlfldsep \ + nlinstr nlstrina noeffect nofile nofmtch noloop1 noloop2 nonl \ + noparms nors nulrsend numindex numsubstr \ + octsub ofmt ofmta ofmtbig ofmtfidl ofmts onlynl opasnidx opasnslf \ + paramdup paramres paramtyp parse1 parsefld parseme pcntplus \ + posix2008sub prdupval prec printf0 printf1 prmarscl prmreuse \ + prt1eval prtoeval \ + rand range1 rebt8b1 redfilnm regeq regrange reindops reparse \ + resplit rri1 rs rsnul1nl rsnulbig rsnulbig2 rstest1 rstest2 \ + rstest3 rstest4 rstest5 rswhite \ + scalar sclforin sclifin sortempty splitargv splitarr splitdef \ + splitvar splitwht strcat1 strnum1 strtod subamp subi18n \ + subsepnm subslash substr swaplns synerr1 synerr2 tradanch tweakfld \ + uninit2 uninit3 uninit4 uninit5 uninitialized unterm uparrfs \ + wideidx wideidx2 widesub widesub2 widesub3 widesub4 wjposer1 \ + zero2 zeroe0 zeroflag UNIX_TESTS = \ fflush getlnhd localenl pid pipeio1 pipeio2 poundbang rtlen rtlen01 \ @@ -1012,15 +1019,16 @@ UNIX_TESTS = \ GAWK_EXT_TESTS = \ aadelete1 aadelete2 aarray1 aasort aasorti argtest arraysort \ - backw badargs beginfile1 beginfile2 \ - binmode1 clos1way delsub devfd devfd1 \ - devfd2 dumpvars exit fieldwdth fpat1 fpat2 fpat3 \ - fpatnull fsfwfs funlen \ + backw badargs beginfile1 beginfile2 binmode1 \ + clos1way delsub devfd devfd1 devfd2 dumpvars exit \ + fieldwdth fpat1 fpat2 fpat3 fpatnull fsfwfs funlen \ fwtest fwtest2 fwtest3 \ gensub gensub2 getlndir gnuops2 gnuops3 gnureops \ - icasefs icasers igncdym igncfs ignrcas2 ignrcase indirectcall lint \ - lintold lintwarn manyfiles match1 match2 match3 mbstr1 nastyparm \ - next nondec nondec2 patsplit posix printfbad1 printfbad2 procinfs \ + icasefs icasers igncdym igncfs ignrcas2 ignrcase indirectcall \ + lint lintold lintwarn \ + manyfiles match1 match2 match3 mbstr1 \ + nastyparm next nondec nondec2 \ + patsplit posix printfbad1 printfbad2 printfbad3 procinfs \ profile1 profile2 profile3 pty1 \ rebuf regx8bit reint reint2 rsstart1 \ rsstart2 rsstart3 rstest6 shadow sortfor sortu splitarg4 strftime \ @@ -1760,7 +1768,7 @@ beginfile1:: beginfile2: @echo $@ - @-( cd $(srcdir) && AWK="$(abs_builddir)/$(AWKPROG)" $(srcdir)/$@.sh $(srcdir)/$@.in ) > _$@ 2>&1 + @-( cd $(srcdir) && LC_ALL=C AWK="$(abs_builddir)/$(AWKPROG)" $(srcdir)/$@.sh $(srcdir)/$@.in ) > _$@ 2>&1 @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ dumpvars:: @@ -1795,7 +1803,7 @@ posix2008sub: next: @echo $@ @-AWK="$(AWKPROG)" $(srcdir)/$@.sh > _$@ 2>&1 - @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + @-LC_ALL=C $(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ exit: @echo $@ @@ -2921,6 +2929,11 @@ printfbad1: @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ +printfbad3: + @echo printfbad3 + @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ + @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + procinfs: @echo $@ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ diff --git a/test/Maketests b/test/Maketests index 4bc06e50..96825721 100644 --- a/test/Maketests +++ b/test/Maketests @@ -1075,6 +1075,11 @@ printfbad1: @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ +printfbad3: + @echo printfbad3 + @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ + @-$(CMP) $(srcdir)/$@.ok _$@ && rm -f _$@ + procinfs: @echo $@ @AWKPATH=$(srcdir) $(AWK) -f $@.awk >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@ diff --git a/test/printfbad3.awk b/test/printfbad3.awk new file mode 100644 index 00000000..1cabdd76 --- /dev/null +++ b/test/printfbad3.awk @@ -0,0 +1,22 @@ +# Date: Wed, 14 Mar 2012 08:10:48 -0500 +# From: John Haque <j.eh@mchsi.com> +# To: arnold@skeeve.com +# Subject: gawk printf format bug +# +# Hi. +# +# I think this is a bug: +# +# $ gawk 'BEGIN { printf("%.0x%#x%#x\n", 0, 167, 167)}' +# 570xa7 +# +# It should print 0xa70xa7. +# +# The solution is to initialize base to 0 in the beginning +# of the while loop along with other stuff (format_tree). +# +# Thanks. +# +# John + +BEGIN { printf(">>%.0x<< >>%#x<< >>%#x<<\n", 0, 167, 167) } diff --git a/test/printfbad3.ok b/test/printfbad3.ok new file mode 100644 index 00000000..a87b0192 --- /dev/null +++ b/test/printfbad3.ok @@ -0,0 +1 @@ +>><< >>0xa7<< >>0xa7<< diff --git a/vms/ChangeLog b/vms/ChangeLog index a39f1125..fa1fbd16 100644 --- a/vms/ChangeLog +++ b/vms/ChangeLog @@ -1,3 +1,27 @@ +2012-03-29 Arnold D. Robbins <arnold@skeeve.com> + + * config.h: Add definition for _Noreturn. + +2012-03-28 Arnold D. Robbins <arnold@skeeve.com> + + * 4.0.1: Release tar ball made. + +2012-03-28 Arnold D. Robbins <arnold@skeeve.com> + + * vms-conf.h: Update copyright year. + +2012-03-21 Anders Wallin <anders_s_wallin@yahoo.se> + + * vmstest.com: Make printfbad3 test work. + +2012-03-20 Arnold D. Robbins <arnold@skeeve.com> + + * vmstest.com: Add printfbad3 test. + +2012-02-10 Arnold D. Robbins <arnold@skeeve.com> + + * vmsbuild.com, descrip.mms, vms-conf.h: Update patch level. + 2011-12-31 Arnold D. Robbins <arnold@skeeve.com> * vms_misc.c: [STREQ, STREQN]: Change use of macros to call diff --git a/vms/descrip.mms b/vms/descrip.mms index 40b97eb1..f00921ea 100644 --- a/vms/descrip.mms +++ b/vms/descrip.mms @@ -140,7 +140,7 @@ DOCS= $(DOCDIR)gawk.1,$(DOCDIR)gawk.texi,$(DOCDIR)texinfo.tex # Release of gawk REL=4.0 -PATCHLVL=0 +PATCHLVL=1 # generic target all : gawk,pgawk,dgawk diff --git a/vms/vms-conf.h b/vms/vms-conf.h index c42118ff..59abd5de 100644 --- a/vms/vms-conf.h +++ b/vms/vms-conf.h @@ -7,8 +7,8 @@ */ /* - * Copyright (C) 1991-1992, 1995-1996, 1999, 2001-2003, 2005, 2009, 2010, 2011 - * the Free Software Foundation, Inc. + * Copyright (C) 1991-1992, 1995-1996, 1999, 2001-2003, 2005, 2009, 2010, 2011, + * 2012, the Free Software Foundation, Inc. * * This file is part of GAWK, the GNU implementation of the * AWK Programming Language. @@ -408,7 +408,7 @@ #undef PACKAGE_URL /* Define to the version of this package. */ -#define PACKAGE_VERSION "4.0.0" +#define PACKAGE_VERSION "4.0.1" /* Define to 1 if *printf supports %F format */ #undef PRINTF_HAS_F_FORMAT @@ -438,7 +438,7 @@ #define USE_INCLUDED_STRFTIME 1 /* Version number of package */ -#define VERSION "4.0.0" +#define VERSION "4.0.1" /* Define to 1 if on AIX 3. System headers sometimes define this. @@ -461,6 +461,18 @@ /* Define to 1 if on MINIX. */ #undef _MINIX +/* The _Noreturn keyword of C11. */ +#ifndef _Noreturn +# if (3 <= __GNUC__ || (__GNUC__ == 2 && 8 <= __GNUC_MINOR__) \ + || 0x5110 <= __SUNPRO_C) +# define _Noreturn __attribute__ ((__noreturn__)) +# elif defined _MSC_VER && 1200 <= _MSC_VER +# define _Noreturn __declspec (noreturn) +# else +# define _Noreturn +# endif +#endif + /* Define to 2 if the system does not provide POSIX.1 features except with this defined. */ #undef _POSIX_1_SOURCE diff --git a/vms/vmsbuild.com b/vms/vmsbuild.com index 0ad0d3d0..047e49a2 100644 --- a/vms/vmsbuild.com +++ b/vms/vmsbuild.com @@ -12,7 +12,7 @@ $! gawk-bytecode revd, Jan'10 $! gawk 4.0.0 revd, May'11 $! $ REL = "4.0" !release version number -$ PATCHLVL = "0" +$ PATCHLVL = "1" $! $! $ CCFLAGS = "/noList" ! "/noOpt/Debug" diff --git a/vms/vmstest.com b/vms/vmstest.com index 146053e1..ccea8717 100644 --- a/vms/vmstest.com +++ b/vms/vmstest.com @@ -107,9 +107,9 @@ $ list = "indirectcall lint lintold lintwarn match1" - + " match2 match3 manyfiles mbprintf3 mbstr1" - + " nastyparm next nondec" - + " nondec2 patsplit posix profile1 procinfs printfbad1" - - + " printfbad2 pty1 regx8bit rebuf reint reint2 rsstart1" - - + " rsstart2 rsstart3 rstest6 shadow sortfor sortu" - - + " splitarg4 strtonum strftime switch2" + + " printfbad2 printfbad3 pty1 regx8bit rebuf reint" - + + " reint2 rsstart1 rsstart2 rsstart3 rstest6 shadow" - + + " sortfor sortu splitarg4 strtonum strftime switch2" $ gosub list_of_tests $ return $ @@ -1400,12 +1400,14 @@ $ cmp mbstr1.ok _mbstr1.tmp $ if $status then rm _mbstr1.tmp; $ return $ -$printfbad2: echo "printfbad2" +$printfbad2: +$printfbad3: +$ echo "''test'" $ set noOn -$ gawk --lint -f printfbad2.awk printfbad2.in >_printfbad2.tmp 2>&1 +$ gawk --lint -f 'test'.awk 'test'.in >_'test'.tmp 2>&1 $ set On -$ cmp printfbad2.ok _printfbad2.tmp -$ if $status then rm _printfbad2.tmp; +$ cmp 'test'.ok _'test'.tmp +$ if $status then rm _'test'.tmp; $ return $ $fmtspcl: echo "fmtspcl: not supported" |