[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gawk-diffs] [SCM] gawk branch, gawk-4.0-stable, updated. ac3a3b5a09051f
From: |
Arnold Robbins |
Subject: |
[gawk-diffs] [SCM] gawk branch, gawk-4.0-stable, updated. ac3a3b5a09051f68ec1d521cfe1e39f44cb0a07a |
Date: |
Fri, 10 Feb 2012 11:23:07 +0000 |
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "gawk".
The branch, gawk-4.0-stable has been updated
via ac3a3b5a09051f68ec1d521cfe1e39f44cb0a07a (commit)
via bd7e60f71231f3f74c6f6efdaf856c71eeaa61ef (commit)
from 4321116ab54f5177ae4a4d1dcd2a7dd7e1bd6419 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
http://git.sv.gnu.org/cgit/gawk.git/commit/?id=ac3a3b5a09051f68ec1d521cfe1e39f44cb0a07a
commit ac3a3b5a09051f68ec1d521cfe1e39f44cb0a07a
Author: Arnold D. Robbins <address@hidden>
Date: Fri Feb 10 13:22:45 2012 +0200
Sync dfa.c with GNU grep.
diff --git a/ChangeLog b/ChangeLog
index 166ebc7..463d924 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2012-02-10 Arnold D. Robbins <address@hidden>
+
+ * dfa.c: Sync with GNU grep.
+
2012-02-07 Arnold D. Robbins <address@hidden>
* main.c (main): Move init of `output_fp' to before parsing of
diff --git a/dfa.c b/dfa.c
index 012251a..64ce8f7 100644
--- a/dfa.c
+++ b/dfa.c
@@ -114,6 +114,19 @@ typedef int charclass[CHARCLASS_INTS];
errors that the cast doesn't. */
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 '_'.
+
+ A state also stores a context value, which is nonzero if its
+ predecessors always matches a newline or a word constituent.
+ The definition of a state's context is a bit unclear, but will be
+ modified soon anyway. */
+
+#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
was, and the value of the current (lookahead) character. Context
@@ -130,20 +143,19 @@ static inline unsigned char to_uchar (char ch) { return
ch; }
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().
-
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 the context value for
+ the previous character, curr is the context value for the lookahead
+ character. */
+#define MATCHES_NEWLINE_CONTEXT(constraint, prev, curr) \
+ ((constraint) & \
+ 1 << (((prev & CTX_NEWLINE) ? 2 : 0) + ((curr & CTX_NEWLINE) ? 1 : 0) + 4))
+#define MATCHES_LETTER_CONTEXT(constraint, prev, curr) \
+ ((constraint) & \
+ 1 << (((prev & CTX_LETTER) ? 2 : 0) + ((curr & CTX_LETTER) ? 1 : 0)))
+#define SUCCEEDS_IN_CONTEXT(constraint, prev, curr) \
+ (MATCHES_NEWLINE_CONTEXT(constraint, prev, curr) \
+ && MATCHES_LETTER_CONTEXT(constraint, prev, curr))
/* The following macros give information about what a constraint depends on. */
#define PREV_NEWLINE_DEPENDENT(constraint) \
@@ -287,9 +299,8 @@ 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 context; /* Context from previous state. */
+ 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
@@ -421,9 +432,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);
@@ -576,14 +586,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
@@ -1077,19 +1145,6 @@ parse_bracket_exp (void)
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)
{
@@ -1914,18 +1969,15 @@ 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. */
+ state. Context tells whether we got here on a newline or letter. */
static int
-state_index (struct dfa *d, position_set const *s, int newline, int letter)
+state_index (struct dfa *d, position_set const *s, int context)
{
int hash = 0;
int constraint;
int i, j;
- newline = newline ? 1 : 0;
- letter = letter ? 1 : 0;
-
+ context &= ~CTX_NONE;
for (i = 0; i < s->nelem; ++i)
hash ^= s->elems[i].index + s->elems[i].constraint;
@@ -1933,7 +1985,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
@@ -1949,8 +2001,7 @@ state_index (struct dfa *d, position_set const *s, int
newline, int letter)
d->states[i].hash = hash;
alloc_position_set(&d->states[i].elems, s->nelem);
copy(s, &d->states[i].elems);
- d->states[i].newline = newline;
- d->states[i].letter = letter;
+ d->states[i].context = context;
d->states[i].backref = 0;
d->states[i].constraint = 0;
d->states[i].first_end = 0;
@@ -1963,10 +2014,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_NONE)
+ || SUCCEEDS_IN_CONTEXT(constraint, context, CTX_NEWLINE)
+ || SUCCEEDS_IN_CONTEXT(constraint, context, CTX_LETTER))
d->states[i].constraint |= constraint;
if (! d->states[i].first_end)
d->states[i].first_end = d->tokens[s->elems[j].index];
@@ -2049,6 +2099,55 @@ epsclosure (position_set *s, struct dfa const *d)
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 subset of POSSIBLE_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. However,
+ all contexts in the complement set will have the same follow set. */
+
+static int _GL_ATTRIBUTE_PURE
+state_separate_contexts (position_set *s, int possible_contexts)
+{
+ int separate_context = 0;
+ unsigned int j;
+
+ for (j = 0; j < s->nelem; ++j)
+ {
+ if ((possible_contexts & CTX_NEWLINE)
+ && PREV_NEWLINE_DEPENDENT(s->elems[j].constraint))
+ separate_context |= CTX_NEWLINE;
+ if ((possible_contexts & CTX_LETTER)
+ && PREV_LETTER_DEPENDENT(s->elems[j].constraint))
+ separate_context |= CTX_LETTER;
+ }
+
+ return separate_context;
+}
+
+
/* 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.
@@ -2111,7 +2210,7 @@ dfaanalyze (struct dfa *d, int searchflag)
position *lastpos; /* Array where lastpos elements are stored. */
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 separate_contexts; /* Context wanted by some position. */
int *o_nullable;
int *o_nfirst, *o_nlast;
position *o_firstpos, *o_lastpos;
@@ -2301,17 +2400,13 @@ dfaanalyze (struct dfa *d, int searchflag)
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;
-
/* Build the initial state. */
d->salloc = 1;
d->sindex = 0;
MALLOC(d->states, d->salloc);
- state_index(d, &merged, wants_newline, 0);
+
+ separate_contexts = state_separate_contexts(&merged, CTX_NEWLINE);
+ state_index(d, &merged, separate_contexts);
free(o_nullable);
free(o_nfirst);
@@ -2321,6 +2416,7 @@ dfaanalyze (struct dfa *d, int searchflag)
free(merged.elems);
}
+
/* Find, for each character, the transition out of state s of d, and store
it in the appropriate slot of trans.
@@ -2364,32 +2460,19 @@ dfastate (int s, struct dfa *d, int trans[])
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 are newline. */
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. */
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;
MALLOC (grps, NOTCHAR);
MALLOC (labels, NOTCHAR);
- /* 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);
for (i = 0; i < d->states[s].elems.nelem; ++i)
@@ -2420,18 +2503,20 @@ dfastate (int s, struct dfa *d, int trans[])
if (pos.constraint != 0xFF)
{
if (! MATCHES_NEWLINE_CONTEXT(pos.constraint,
- d->states[s].newline, 1))
+ d->states[s].context & CTX_NEWLINE,
+ CTX_NEWLINE))
clrbit(eolbyte, matches);
if (! MATCHES_NEWLINE_CONTEXT(pos.constraint,
- d->states[s].newline, 0))
+ d->states[s].context & CTX_NEWLINE, 0))
for (j = 0; j < CHARCLASS_INTS; ++j)
matches[j] &= newline[j];
if (! MATCHES_LETTER_CONTEXT(pos.constraint,
- d->states[s].letter, 1))
+ d->states[s].context & CTX_LETTER,
+ CTX_LETTER))
for (j = 0; j < CHARCLASS_INTS; ++j)
matches[j] &= ~letters[j];
if (! MATCHES_LETTER_CONTEXT(pos.constraint,
- d->states[s].letter, 0))
+ d->states[s].context & CTX_LETTER, 0))
for (j = 0; j < CHARCLASS_INTS; ++j)
matches[j] &= letters[j];
@@ -2513,25 +2598,19 @@ dfastate (int s, struct dfa *d, int trans[])
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;
- }
+ /* Find the state(s) corresponding to the positions of state 0. */
copy(&d->states[0].elems, &follows);
- state = state_index(d, &follows, 0, 0);
- if (wants_newline)
- state_newline = state_index(d, &follows, 1, 0);
+ separate_contexts = state_separate_contexts(&follows, CTX_ANY);
+ state = state_index(d, &follows, 0);
+ 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[eolbyte] = state_newline;
@@ -2590,29 +2669,17 @@ dfastate (int s, struct dfa *d, int trans[])
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, possible_contexts);
/* 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);
+ state = state_index(d, &follows, 0);
+ 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;
@@ -2672,15 +2739,12 @@ 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;
+ 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);
@@ -2840,33 +2904,27 @@ transit_state_singlebyte (struct dfa *d, int s,
unsigned char const *p,
static int
match_anychar (struct dfa *d, int s, position pos, int 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];
- /* Check context. */
+ /* Check syntax bits. */
if (wc == (wchar_t)eolbyte)
{
if (!(syntax_bits & RE_DOT_NEWLINE))
return 0;
- newline = 1;
}
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;
@@ -2889,29 +2947,25 @@ match_mb_charset (struct dfa *d, int s, position pos,
int idx)
/* Pointer to the structure to which we are currently refering. */
struct mb_char_classes *work_mbc;
- int newline = 0;
- int letter = 0;
+ int context;
wchar_t wc; /* Current refering character. */
wc = inputwcs[idx];
- /* Check context. */
+ /* Check syntax bits. */
if (wc == (wchar_t)eolbyte)
{
if (!(syntax_bits & RE_DOT_NEWLINE))
return 0;
- newline = 1;
}
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. */
@@ -3124,7 +3178,7 @@ transit_state (struct dfa *d, int s, unsigned char const
**pp)
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));
+ s1 = state_index(d, &follows, wchar_context (wc));
realloc_trans_if_necessary(d, s1);
while (*pp - p1 < maxlen)
@@ -3141,7 +3195,7 @@ transit_state (struct dfa *d, int s, unsigned char const
**pp)
}
wc = inputwcs[*pp - mbclen - buf_begin];
- s1 = state_index(d, &follows, wc == L'\n', iswalnum(wc));
+ s1 = state_index(d, &follows, wchar_context (wc));
realloc_trans_if_necessary(d, s1);
}
free(match_lens);
@@ -3206,14 +3260,14 @@ 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, int *count, int *backref)
{
int s, s1; /* Current state. */
unsigned char const *p; /* Current input character. */
@@ -3221,18 +3275,6 @@ dfaexec (struct dfa *d, char const *begin, char *end,
into a register. */
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);
@@ -3356,7 +3398,7 @@ dfaexec (struct dfa *d, char const *begin, char *end,
continue;
}
- if (p[-1] == eol && newline)
+ if (p[-1] == eol && allow_nl)
{
s = d->newlines[s1];
continue;
http://git.sv.gnu.org/cgit/gawk.git/commit/?id=bd7e60f71231f3f74c6f6efdaf856c71eeaa61ef
commit bd7e60f71231f3f74c6f6efdaf856c71eeaa61ef
Author: Arnold D. Robbins <address@hidden>
Date: Fri Feb 10 13:21:44 2012 +0200
New danish po file.
diff --git a/po/da.po b/po/da.po
index 50a51ab..85f84c9 100644
--- a/po/da.po
+++ b/po/da.po
@@ -1,22 +1,22 @@
# 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 <address@hidden>, 2001-2002.
+# Martin Sjögren <address@hidden>, 2001-2002.
# Christer Andersson <address@hidden>, 2007.
-# Keld Simonsen <address@hidden>, 2002,2011.
-# Review by Torben Grøn Helligsø <address@hidden>, 2011.
+# Keld Simonsen <address@hidden>, 2002,2011,2012.
+# Review by Torben Grøn Helligsø <address@hidden>, 2011.
# Review by Ask Hjorth Larsen <address@hidden>, 2011.
msgid ""
msgstr ""
-"Project-Id-Version: gawk 3.1.83\n"
+"Project-Id-Version: gawk 4.0.0h\n"
"Report-Msgid-Bugs-To: address@hidden"
"POT-Creation-Date: 2012-01-27 12:10+0200\n"
-"PO-Revision-Date: 2011-05-22 10:37+0200\n"
+"PO-Revision-Date: 2012-02-06 10:37+0100\n"
"Last-Translator: Keld Simonsen <address@hidden>\n"
"Language-Team: Danish <address@hidden>\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"
@@ -28,29 +28,29 @@ msgstr "fra %s"
#: array.c:248
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"
+msgstr "forsøg på at bruge funktionen '%s' som et array"
#: array.c:254
#, 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
#, 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
#, c-format
msgid "attempt to use array `%s' in a scalar context"
-msgstr "forsøg på at bruge array '%s' i skalarsammenhæng"
+msgstr "forsøg på at bruge array '%s' i skalarsammenhæng"
#: array.c:513
#, c-format
@@ -70,7 +70,7 @@ msgstr "delete: indeks '%s' findes ikke i array '%s'"
#: array.c:734 eval.c:1865
#, c-format
msgid "attempt to use scalar `%s[\"%.*s\"]' as an array"
-msgstr "forsøg på at bruge skalaren '%s[\"%.*s\"]' som array"
+msgstr "forsøg på at bruge skalaren '%s[\"%.*s\"]' som array"
#: array.c:910
#, c-format
@@ -85,7 +85,7 @@ 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"
+msgstr "%s: tabelstørrelse = %d, arraystørrelse = %d\n"
#: array.c:954
#, c-format
@@ -111,31 +111,27 @@ msgstr "asorti: andet argument er ikke et array"
#: array.c:1094
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
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
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"
+msgstr "asort: kan ikke bruge et underarray af første argument for andet
argument"
#: array.c:1103
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"
+msgstr "asorti: kan ikke bruge et underarray af første argument for andet
argument"
#: array.c:1108
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"
+msgstr "asort: kan ikke bruge et underarray af andet argument for første
argument"
#: array.c:1109
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"
+msgstr "asorti: kan ikke bruge et underarray af andet argument for første
argument"
#: array.c:1655
#, c-format
@@ -154,12 +150,11 @@ msgstr "%s-blokke skal have en handlingsdel"
#: awkgram.y:252
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
msgid "old awk does not support multiple `BEGIN' or `END' rules"
-msgstr ""
-"gamle versioner af awk understøtter ikke flere 'BEGIN'- eller 'END'-regler"
+msgstr "gamle versioner af awk understøtter ikke flere 'BEGIN'- eller
'END'-regler"
#: awkgram.y:371
#, c-format
@@ -178,7 +173,7 @@ msgstr "regexp-konstanten '/%s/' ser ud som en C-kommentar,
men er det ikke"
#: awkgram.y:528
#, 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
msgid "duplicate `default' detected in switch body"
@@ -186,11 +181,11 @@ msgstr "dublet 'default' opdaget i switch-krop"
#: awkgram.y:809
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
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
#, c-format
@@ -212,9 +207,7 @@ msgstr "'return' brugt uden for funktion"
#: awkgram.y:925
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 "
-"\"\"'"
+msgstr "alenestående 'print' i BEGIN eller END-regel skulle muligvis være
'print \"\"'"
#: awkgram.y:995 awkgram.y:999 awkgram.y:1023
msgid "`delete array' is a gawk extension"
@@ -230,20 +223,19 @@ msgstr "flertrins dobbeltrettede datakanaler fungerer
ikke"
#: awkgram.y:1238
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
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
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'"
+msgstr "gamle versioner af awk understøtter ikke nøgleordet 'in' undtagen
efter 'for'"
#: awkgram.y:1275
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
#, c-format
@@ -261,7 +253,7 @@ msgstr "ikke-omdirigeret 'getline' udefineret inden i
END-handling"
#: awkgram.y:1421
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
msgid "call of `length' without parentheses is not portable"
@@ -299,11 +291,11 @@ msgstr "uventet nylinjetegn eller strengafslutning"
#: awkgram.y:2300 awkgram.y:2358 awkgram.y:2542
#, 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
msgid "reason unknown"
-msgstr "ukendt årsag"
+msgstr "ukendt årsag"
#: awkgram.y:2317
#, c-format
@@ -320,12 +312,12 @@ msgstr "tomt filnavn efter @include"
#: awkgram.y:2494
msgid "empty program text on command line"
-msgstr "tom programtekst på kommandolinjen"
+msgstr "tom programtekst på kommandolinjen"
#: awkgram.y:2609
#, 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
#, c-format
@@ -338,33 +330,33 @@ msgstr "kildefilen slutter ikke med en ny linje"
#: awkgram.y:2882
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
#, 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
#, 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
msgid "unterminated regexp"
-msgstr "uafsluttet regulært udtryk"
+msgstr "uafsluttet regulært udtryk"
#: awkgram.y:2921
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
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
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
msgid "POSIX does not allow operator `**='"
@@ -372,7 +364,7 @@ msgstr "POSIX tillader ikke operatoren '**='"
#: awkgram.y:3059
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
msgid "POSIX does not allow operator `**'"
@@ -380,15 +372,15 @@ msgstr "POSIX tillader ikke operatoren '**'"
#: awkgram.y:3070
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
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
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
msgid "unterminated string"
@@ -417,7 +409,7 @@ msgstr "POSIX tillader ikke '%s'"
#: awkgram.y:3483
#, 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
msgid "`goto' considered harmful!\n"
@@ -431,13 +423,12 @@ msgstr "%d er et ugyldigt antal argumenter for %s"
#: awkgram.y:3636
#, 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"
+msgstr "%s: bogstavelig streng som sidste argument til erstatning har ingen
effekt"
#: awkgram.y:3641
#, 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
msgid "match: third argument is a gawk extension"
@@ -449,15 +440,11 @@ msgstr "close: andet argument er en gawk-udvidelse"
#: awkgram.y:3786
msgid "use of dcgettext(_\"...\") is incorrect: remove leading underscore"
-msgstr ""
-"brug af dcgettext(_\"...\") er forkert: fjern det indledende "
-"understregningstegn"
+msgstr "brug af dcgettext(_\"...\") er forkert: fjern det indledende
understregningstegn"
#: awkgram.y:3801
msgid "use of dcngettext(_\"...\") is incorrect: remove leading underscore"
-msgstr ""
-"brug af dcgettext(_\"...\") er forkert: fjern det indledende "
-"understregningstegn"
+msgstr "brug af dcgettext(_\"...\") er forkert: fjern det indledende
understregningstegn"
#: awkgram.y:3893
#, c-format
@@ -472,7 +459,7 @@ msgstr "funktionen '%s': parameteren '%s' overskygger en
global variabel"
#: awkgram.y:4093
#, 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
msgid "sending variable list to standard error"
@@ -499,9 +486,7 @@ msgstr "funktionen '%s': kan ikke bruge funktionsnavn som
parameternavn"
#: awkgram.y:4192
#, 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"
+msgstr "funktionen '%s': kan ikke bruge specialvariabel '%s' som en
funktionsparameter"
#: awkgram.y:4208
#, c-format
@@ -521,7 +506,7 @@ msgstr "funktionen '%s' defineret, men aldrig kaldt direkte"
#: awkgram.y:4417
#, 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
#, c-format
@@ -534,12 +519,12 @@ msgstr ""
#: awkgram.y:4773 eval.c:2056
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
#, 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
#, c-format
@@ -557,27 +542,26 @@ msgstr "exp: fik et ikke-numerisk argument"
#: builtin.c:141
#, 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
#, 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"
+msgstr "fflush: kan ikke rense: datakanalen '%s' åbnet for læsning, ikke
skrivning"
#: builtin.c:203
#, 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
#, 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
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
msgid "index: received non-string second argument"
@@ -610,7 +594,7 @@ msgstr "log: fik et negativt argument %g"
#: builtin.c:694 builtin.c:699
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
#, c-format
@@ -620,12 +604,12 @@ msgstr "feltbredde ignoreret for '%%'-angivelse"
#: builtin.c:763
#, c-format
msgid "precision is ignored for `%%' specifier"
-msgstr "præcision ignoreret for '%%'-angivelse"
+msgstr "præcision ignoreret for '%%'-angivelse"
#: builtin.c:765
#, 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
msgid "fatal: `$' is not permitted in awk formats"
@@ -633,12 +617,12 @@ msgstr "fatal: '$' tillades ikke i awk-formater"
#: builtin.c:825
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
#, 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
msgid "fatal: `$' not permitted after period in format"
@@ -646,12 +630,11 @@ msgstr "fatal: '$' tillades ikke efter et punktum i
formatet"
#: builtin.c:849
msgid "fatal: no `$' supplied for positional field width or precision"
-msgstr ""
-"fatal: intet '$' angivet for bredde eller præcision af positionsangivet felt"
+msgstr "fatal: intet '$' angivet for bredde eller præcision af
positionsangivet felt"
#: builtin.c:920
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
msgid "fatal: `l' is not permitted in POSIX awk formats"
@@ -659,7 +642,7 @@ msgstr "fatal: 'l' tillades ikke i POSIX awk-formater"
#: builtin.c:937
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
msgid "fatal: `L' is not permitted in POSIX awk formats"
@@ -667,7 +650,7 @@ msgstr "fatal: 'L' tillades ikke i POSIX awk-formater"
#: builtin.c:954
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
msgid "fatal: `h' is not permitted in POSIX awk formats"
@@ -676,17 +659,16 @@ msgstr "fatal: 'h' tillades ikke i POSIX awk-formater"
#: builtin.c:1271
#, 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
#, c-format
msgid "ignoring unknown format specifier character `%c': no argument converted"
-msgstr ""
-"ignorerer ukendt formatspecificeringstegn '%c': intet argument konverteret"
+msgstr "ignorerer ukendt formatspecificeringstegn '%c': intet argument
konverteret"
#: builtin.c:1336
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
msgid "^ ran out for this one"
@@ -716,22 +698,22 @@ msgstr "sqrt: kaldt med negativt argument %g"
#: builtin.c:1502
#, 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
#, 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
#, 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
#, 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
#, c-format
@@ -750,19 +732,16 @@ msgstr "substr: kildestrengen er tom"
#: builtin.c:1574
#, 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
#, 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 "
-"(%lu)"
+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 (%lu)"
#: builtin.c:1656
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
msgid "strftime: received non-numeric second argument"
@@ -770,11 +749,11 @@ msgstr "strftime: fik et ikke-numerisk andet argument"
#: builtin.c:1682
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
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
msgid "strftime: received empty format string"
@@ -786,7 +765,7 @@ msgstr "mktime: fik et argument som ikke er en streng"
#: builtin.c:1778
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
msgid "'system' function not allowed in sandbox mode"
@@ -816,7 +795,7 @@ msgstr "toupper: fik et argument som ikke er en streng"
#: builtin.c:2097
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
msgid "atan2: received non-numeric second argument"
@@ -844,7 +823,7 @@ msgstr "gensub: 0 i tredje argument behandlet som 1"
#: builtin.c:2775
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
msgid "lshift: received non-numeric second argument"
@@ -853,22 +832,21 @@ msgstr "lshift: fik et ikke-numerisk andet argument"
#: builtin.c:2783
#, 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
#, 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
#, 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"
+msgstr "lshift(%lf, %lf): for store skifteværdier vil give mærkelige
resultater"
#: builtin.c:2812
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
msgid "rshift: received non-numeric second argument"
@@ -877,22 +855,21 @@ msgstr "rshift: fik et ikke-numerisk andet argument"
#: builtin.c:2820
#, 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
#, 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
#, 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"
+msgstr "rshift(%lf, %lf): for store skifteværdier vil give mærkelige
resultater"
#: builtin.c:2849
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
msgid "and: received non-numeric second argument"
@@ -901,16 +878,16 @@ msgstr "and: fik et ikke-numerisk andet argument"
#: builtin.c:2857
#, 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
#, 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
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
msgid "or: received non-numeric second argument"
@@ -919,16 +896,16 @@ msgstr "or: fik et ikke-numerisk andet argument"
#: builtin.c:2892
#, 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
#, 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
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
msgid "xor: received non-numeric second argument"
@@ -937,12 +914,12 @@ msgstr "xor: fik et ikke-numerisk andet argument"
#: builtin.c:2930
#, 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
#, 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
msgid "compl: received non-numeric argument"
@@ -951,12 +928,12 @@ msgstr "compl: fik et ikke-numerisk argument"
#: builtin.c:2964
#, 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
#, 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
#, c-format
@@ -976,11 +953,11 @@ msgstr "ukendt opkode %d"
#: eval.c:434
#, 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
msgid "buffer overflow in genflags2str"
-msgstr "bufferoverløb i genflags2str"
+msgstr "bufferoverløb i genflags2str"
#: eval.c:698
#, c-format
@@ -1004,7 +981,7 @@ msgstr "'BINMODE' er en gawk-udvidelse"
#: eval.c:812
#, 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
#, c-format
@@ -1013,7 +990,7 @@ msgstr "forkert '%sFMT'-specifikation '%s'"
#: eval.c:980
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
@@ -1027,16 +1004,16 @@ msgstr "reference til ikke-initieret argument '%s'"
#: eval.c:1177
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
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
#, 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
#, c-format
@@ -1055,21 +1032,21 @@ msgstr "unwind_stack: uventet type `%s'"
#: eval.c:1532
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
#, c-format
msgid "division by zero attempted in `%%='"
-msgstr "forsøgte at dividere med nul i '%%='"
+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"
+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"
+msgstr "tildeling brugt i sammenligningsammenhæng"
#: eval.c:1911
msgid "statement has no effect"
@@ -1078,9 +1055,7 @@ msgstr "kommandoen har ingen effekt"
#: 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"
+msgstr "for-løkke: array '%s' ændrede størrelse fra %ld til %ld under
udførelse af løkken"
#: eval.c:2458
#, c-format
@@ -1100,7 +1075,7 @@ 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"
+msgstr "fejl ved læsning af inddatafilen '%s': %s"
#: eval.c:2614
#, c-format
@@ -1108,9 +1083,8 @@ msgid "`nextfile' cannot be called from a `%s' rule"
msgstr "'nextfile' kan ikke kaldes fra en '%s'-regel"
#: eval.c:2661
-#, fuzzy
msgid "`exit' cannot be called in the current context"
-msgstr "'next' kan ikke kaldes fra en '%s'-regel"
+msgstr "'exit' kan ikke kaldes i den aktuelle kontekst"
#: eval.c:2700
#, c-format
@@ -1120,7 +1094,7 @@ msgstr "'next' kan ikke kaldes fra en '%s'-regel"
#: eval.c:2766
#, c-format
msgid "Sorry, don't know how to interpret `%s'"
-msgstr "Véd desværre ikke hvordan '%s' skal fortolkes"
+msgstr "Véd desværre ikke hvordan '%s' skal fortolkes"
#: ext.c:64
msgid "extensions are not allowed in sandbox mode"
@@ -1133,22 +1107,17 @@ 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"
+msgstr "atalt: extension: kan ikke åbne '%s' (%s)\n"
#: ext.c:94
#, c-format
-msgid ""
-"fatal: 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"
+msgid "fatal: 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"
-msgstr ""
-"fatalt: extension: bibliotek '%s': kan ikke kalde funktionen '%s' (%s)\n"
+msgstr "fatalt: extension: bibliotek '%s': kan ikke kalde funktionen '%s'
(%s)\n"
#: ext.c:137
msgid "extension: missing function name"
@@ -1197,22 +1166,20 @@ msgstr "funktion '%s': mangler argument nummer %d"
#: ext.c:289
#, 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"
+msgstr "funktion '%s': argument nummer %d: forsøg på at bruge skalar som et
array"
#: ext.c:293
#, 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"
+msgstr "funktion '%s': argument nummer %d: forsøg på at bruge array som en
skalar"
#: ext.c:306
msgid "Operation Not Supported"
-msgstr "Operationen understøttes ikke"
+msgstr "Operationen understøttes ikke"
#: 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"
@@ -1232,13 +1199,11 @@ msgstr "split: kan ikke bruge det samme array som andet
og fjerde argument"
#: field.c:978
msgid "split: cannot use a subarray of second arg for fourth arg"
-msgstr ""
-"split: kan ikke bruge et underarray af andet argument som fjerde argument"
+msgstr "split: kan ikke bruge et underarray af andet argument som fjerde
argument"
#: field.c:981
msgid "split: cannot use a subarray of fourth arg for second arg"
-msgstr ""
-"split: kan ikke bruge et underarray af fjerde argument som andet argument"
+msgstr "split: kan ikke bruge et underarray af fjerde argument som andet
argument"
#: field.c:1010
msgid "split: null string for third arg is a gawk extension"
@@ -1262,13 +1227,11 @@ msgstr "patsplit: kan ikke bruge det samme array som
andet og fjerde argument"
#: field.c:1070
msgid "patsplit: cannot use a subarray of second arg for fourth arg"
-msgstr ""
-"patsplit: kan ikke bruge et underarray af andet argument som fjerde argument"
+msgstr "patsplit: kan ikke bruge et underarray af andet argument som fjerde
argument"
#: field.c:1073
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"
+msgstr "patsplit: kan ikke bruge et underarray af fjerde argument som andet
argument"
#: field.c:1110
msgid "`FIELDWIDTHS' is a gawk extension"
@@ -1277,7 +1240,7 @@ msgstr "'FIELDWIDTHS' er en gawk-udvidelse"
#: field.c:1173
#, 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
msgid "null string for `FS' is a gawk extension"
@@ -1285,7 +1248,7 @@ msgstr "tom streng som 'FS' er en gawk-udvidelse"
#: field.c:1250
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
msgid "`FPAT' is a gawk extension"
@@ -1309,7 +1272,7 @@ msgstr "%s: flaget '%c%s' tillader ikke noget argument\n"
#: getopt.c:684 getopt.c:703
#, 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
#, c-format
@@ -1329,7 +1292,7 @@ msgstr "%s: ugyldigt flag - '%c'\n"
#: getopt.c:857 getopt.c:874 getopt.c:1082 getopt.c:1100
#, 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
#, c-format
@@ -1344,7 +1307,7 @@ msgstr "%s: flaget '-W %s' tillader ikke noget argument\n"
#: getopt.c:1009 getopt.c:1027
#, 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
#, c-format
@@ -1354,7 +1317,7 @@ msgstr "kommandolinjeargument '%s' er et katalog,
oversprunget"
#: io.c:283 io.c:385
#, 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
#, c-format
@@ -1368,38 +1331,37 @@ msgstr "omdirigering ikke tilladt i sandkasse-tilstand"
#: io.c:612
#, 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
#, 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:623
#, 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"
+msgstr "filnavnet '%s' for '%s'-omdirigering kan være resultatet af et logisk
udtryk"
#: io.c:666
#, 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:719
#, 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:729
#, 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:752
#, 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:834
#, c-format
@@ -1412,11 +1374,8 @@ msgid "can't redirect to `%s' (%s)"
msgstr "kan ikke omdirigere til '%s' (%s)"
#: io.c:888
-msgid ""
-"reached system limit for open files: starting to multiplex file descriptors"
-msgstr ""
-"nåede systembegrænsningen for åbne filer: begynder at multiplekse "
-"fildeskriptorer"
+msgid "reached system limit for open files: starting to multiplex file
descriptors"
+msgstr "nåede systembegrænsningen for åbne filer: begynder at multiplekse
fildeskriptorer"
#: io.c:904
#, c-format
@@ -1425,26 +1384,25 @@ msgstr "lukning af '%s' mislykkedes (%s)."
#: io.c:912
msgid "too many pipes or input files open"
-msgstr "for mange datakanaler eller inddatafiler åbne"
+msgstr "for mange datakanaler eller inddatafiler åbne"
#: io.c:934
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:951
#, 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:956
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:1053
#, c-format
msgid "close: redirection `%s' not opened with `|&', second argument ignored"
-msgstr ""
-"close: omdirigeringen '%s' blev ikke åbnet med '|&', andet argument
ignoreret"
+msgstr "close: omdirigeringen '%s' blev ikke åbnet med '|&', andet argument
ignoreret"
#: io.c:1069
#, c-format
@@ -1509,7 +1467,7 @@ msgstr "lokal port %s ugyldig i '/inet'"
#: io.c:1279
#, 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:1431
#, c-format
@@ -1519,7 +1477,7 @@ msgstr "ingen (kendt) protokol opgivet i special-filnavn
'%s'"
#: io.c:1445
#, 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:1462
msgid "must supply a remote hostname to `/inet'"
@@ -1531,12 +1489,12 @@ msgstr "fjernport til '/inet' skal angives"
#: io.c:1526
msgid "TCP/IP communications are not supported"
-msgstr "TCP/IP-kommunikation understøttes ikke"
+msgstr "TCP/IP-kommunikation understøttes ikke"
#: io.c:1693
#, 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:1747
#, c-format
@@ -1551,8 +1509,7 @@ msgstr "lukning af standard ud i underproces mislykkedes
(%s)"
#: io.c:1752
#, 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)"
+msgstr "flytning af slave-pty til standard ud i underproces mislykkedes (dup:
%s)"
#: io.c:1754 io.c:1922
#, c-format
@@ -1562,8 +1519,7 @@ msgstr "lukning af standard ind i underproces mislykkedes
(%s)"
#: io.c:1757
#, 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)"
+msgstr "flytning af slave-pty til standard ind i underproces mislykkedes (dup:
%s)"
#: io.c:1759 io.c:1780
#, c-format
@@ -1573,22 +1529,20 @@ msgstr "lukning af slave-pty mislykkedes (%s)"
#: io.c:1858 io.c:1920 io.c:2052 io.c:2077
#, c-format
msgid "moving pipe to stdout in child failed (dup: %s)"
-msgstr ""
-"flytning af datakanal til standard ud i underproces mislykkedes (dup: %s)"
+msgstr "flytning af datakanal til standard ud i underproces mislykkedes (dup:
%s)"
#: io.c:1865 io.c:1925
#, c-format
msgid "moving pipe to stdin in child failed (dup: %s)"
-msgstr ""
-"flytning af datakanalen til standard ind i underproces mislykkedes (dup: %s)"
+msgstr "flytning af datakanalen til standard ind i underproces mislykkedes
(dup: %s)"
#: io.c:1885 io.c:2067
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:1893
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:1928 io.c:2079 io.c:2093
#, c-format
@@ -1597,12 +1551,12 @@ msgstr "lukning af datakanalen mislykkedes (%s)"
#: io.c:1973
msgid "`|&' not supported"
-msgstr "'|&' understøttes ikke"
+msgstr "'|&' understøttes ikke"
#: io.c:2039
#, c-format
msgid "cannot open pipe `%s' (%s)"
-msgstr "kan ikke åbne datakanalen '%s' (%s)"
+msgstr "kan ikke åbne datakanalen '%s' (%s)"
#: io.c:2087
#, c-format
@@ -1620,11 +1574,11 @@ msgstr "kunne ikke allokere mere hukommelse til inddata"
#: io.c:3127
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:3232
msgid "IPv6 communication is not supported"
-msgstr "IPv6-kommunikation understøttes ikke"
+msgstr "IPv6-kommunikation understøttes ikke"
#: main.c:364
msgid "`-m[fr]' option irrelevant in gawk"
@@ -1646,43 +1600,43 @@ msgstr "%s: flaget '-W %s' ukendt, ignoreret\n"
#: main.c:513
#, 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
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
msgid "`--posix' overrides `--traditional'"
-msgstr "'--posix' tilsidesætter '--traditional'"
+msgstr "'--posix' tilsidesætter '--traditional'"
#: main.c:551
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
#, 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
msgid "`--posix' overrides `--binary'"
-msgstr "'--posix' tilsidesætter '--binary'"
+msgstr "'--posix' tilsidesætter '--binary'"
#: main.c:611
#, 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
#, 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
#, 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
msgid "no program text at all!"
@@ -1712,7 +1666,7 @@ msgstr "\t-F fs\t\t\t--field-separator=fs\n"
#: main.c:743
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
msgid "Short options:\t\tGNU long options: (extensions)\n"
@@ -1818,7 +1772,7 @@ 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 <address@hidden>.\n"
+"Rapportér kommentarer til oversættelsen til <address@hidden>.\n"
#: main.c:782
msgid ""
@@ -1826,8 +1780,8 @@ msgid ""
"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
@@ -1851,12 +1805,11 @@ 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"
-"af Free Software Foundation, enten version 3 af licensen, eller (hvis du "
-"vil)\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"
@@ -1868,9 +1821,9 @@ 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"
@@ -1879,17 +1832,17 @@ 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
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
#, 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
#, c-format
@@ -1897,7 +1850,7 @@ 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
@@ -1911,14 +1864,14 @@ 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
+#, 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
+#, 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
msgid "floating point exception"
@@ -1934,17 +1887,17 @@ msgstr "fatal fejl: intern fejl: segmentfejl"
#: main.c:1295
msgid "fatal error: internal error: stack overflow"
-msgstr "fatal fejl: intern fejl: stakoverløb"
+msgstr "fatal fejl: intern fejl: stakoverløb"
#: main.c:1345
#, 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
#, c-format
msgid "could not pre-open /dev/null for fd %d"
-msgstr "kunne ikke i forvejen åbne /dev/null for fd %d"
+msgstr "kunne ikke i forvejen åbne /dev/null for fd %d"
#: main.c:1375 main.c:1384
#, c-format
@@ -1962,12 +1915,12 @@ msgstr "fejl: "
#: node.c:406
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
#, 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
msgid "POSIX does not allow `\\x' escapes"
@@ -1979,12 +1932,8 @@ msgstr "ingen heksadecimale cifre i
'\\x'-kontrolsekvenser"
#: node.c:596
#, 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 "
-"forventer det"
+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
forventer det"
#: node.c:611
#, c-format
@@ -1992,27 +1941,23 @@ msgid "escape sequence `\\%c' treated as plain `%c'"
msgstr "kontrolsekvensen '\\%c' behandlet som kun '%c'"
#: node.c:750
-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 "
-"data og dit locale."
+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 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
#, 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
msgid "sending profile to standard error"
@@ -2061,14 +2006,14 @@ msgid "redir2str: unknown redirection type %d"
msgstr "redir2str: uykendt omdirigeringstype %d"
#: re.c:572
-#, fuzzy, c-format
+#, 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
#, 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
msgid "Success"
@@ -2080,7 +2025,7 @@ msgstr "Mislykkedes"
#: regcomp.c:138
msgid "Invalid regular expression"
-msgstr "Ugyldigt regulært udtryk"
+msgstr "Ugyldigt regulært udtryk"
#: regcomp.c:141
msgid "Invalid collation character"
@@ -2092,7 +2037,7 @@ msgstr "Ugyldigt tegnklassenavn"
#: regcomp.c:147
msgid "Trailing backslash"
-msgstr "Efterfølgende omvendt skråstreg"
+msgstr "Efterfølgende omvendt skråstreg"
#: regcomp.c:150
msgid "Invalid back reference"
@@ -2124,15 +2069,15 @@ msgstr "Hukommelsen opbrugt"
#: regcomp.c:171
msgid "Invalid preceding regular expression"
-msgstr "Ugyldigt foregående regulært udtryk"
+msgstr "Ugyldigt foregående regulært udtryk"
#: regcomp.c:174
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
msgid "Regular expression too big"
-msgstr "Regulært udtryk for stort"
+msgstr "Regulært udtryk for stort"
#: regcomp.c:180
msgid "Unmatched ) or \\)"
@@ -2140,31 +2085,31 @@ msgstr "Ubalanceret ) eller \\)"
#: regcomp.c:701
msgid "No previous regular expression"
-msgstr "Intet foregående regulært udtryk"
+msgstr "Intet foregående regulært udtryk"
#~ 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"
@@ -2173,10 +2118,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"
@@ -2184,11 +2129,8 @@ msgstr "Intet foregående regulært udtryk"
#~ msgid "`nextfile' cannot be called from a BEGIN rule"
#~ msgstr "'nextfile' kan ikke kaldes fra en BEGIN-regel"
-#~ msgid ""
-#~ "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!"
+#~ msgid "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!"
#~ msgid "illegal type (%s) in tree_eval"
#~ msgstr "ugyldig type (%s) i tree_eval"
@@ -2197,16 +2139,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"
@@ -2218,7 +2160,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"
@@ -2236,7 +2178,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"
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 4 +
dfa.c | 342 +++++++++++++++++++++++------------------
po/da.po | 516 +++++++++++++++++++++++++++----------------------------------
3 files changed, 425 insertions(+), 437 deletions(-)
hooks/post-receive
--
gawk
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [gawk-diffs] [SCM] gawk branch, gawk-4.0-stable, updated. ac3a3b5a09051f68ec1d521cfe1e39f44cb0a07a,
Arnold Robbins <=