documentation_emacs/source/misc/bovine.texi.fr.po
2022-03-08 11:11:57 +01:00

1041 lines
34 KiB
Plaintext

# SOME DESCRIPTIVE TITLE
# Copyright (C) YEAR Free Software Foundation, Inc.
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2021-11-07 12:11+0900\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"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#. type: top
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:6 /Users/suzume/Documents/Repositories/Projet
#: OmegaT de Documentation Emacs - Sources/doc/misc/bovine.texi:57
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:75
#, no-wrap
msgid "@value{TITLE}"
msgstr ""
#. type: include
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:7
#, no-wrap
msgid "docstyle.texi"
msgstr ""
#. type: copying
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:29
msgid "Copyright @copyright{} 1999--2004, 2012--2021 Free Software Foundation, Inc."
msgstr ""
#. type: quotation
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:37
msgid ""
"Permission is granted to copy, distribute and/or modify this document under "
"the terms of the GNU Free Documentation License, Version 1.3 or any later "
"version published by the Free Software Foundation; with no Invariant "
"Sections, with the Front-Cover Texts being ``A GNU Manual,'' and with the "
"Back-Cover Texts as in (a) below. A copy of the license is included in the "
"section entitled ``GNU Free Documentation License''."
msgstr ""
#. type: quotation
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:40
msgid ""
"(a) The FSF's Back-Cover Text is: ``You have the freedom to copy and modify "
"this GNU manual.''"
msgstr ""
#. type: dircategory
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:43
#, no-wrap
msgid "Emacs misc features"
msgstr ""
#. type: menuentry
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:46
msgid "Bovine: (bovine)"
msgstr ""
#. type: menuentry
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:46
msgid "Semantic bovine parser development."
msgstr ""
#. type: author
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:58
#, no-wrap
msgid "by @value{AUTHOR}"
msgstr ""
#. type: i{#1}
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:67
msgid "Semantic"
msgstr ""
#. type: node
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:74
#, no-wrap
msgid "top"
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:83
msgid ""
"The @dfn{bovine} parser is the original @semantic{} parser, and is an "
"implementation of an @acronym{LL} parser. It is good for simple languages. "
"It has many conveniences making grammar writing easy. The conveniences make "
"it less powerful than a Bison-like @acronym{LALR} parser. For more "
"information, @pxref{Top,, Wisent Parser Development, wisent}."
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:88
msgid ""
"Bovine @acronym{LL} grammars are stored in files with a @file{.by} "
"extension. When compiled, the contents is converted into a file of the form "
"@file{NAME-by.el}. This, in turn is byte compiled. @xref{top,, Grammar "
"Framework Manual, grammar-fw}."
msgstr ""
#. type: chapter
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:100 /Users/suzume/Documents/Repositories/Projet
#: OmegaT de Documentation Emacs - Sources/doc/misc/bovine.texi:102
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:103
#, no-wrap
msgid "Starting Rules"
msgstr ""
#. type: menuentry
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:100
msgid "The starting rules for the grammar."
msgstr ""
#. type: chapter
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:100 /Users/suzume/Documents/Repositories/Projet
#: OmegaT de Documentation Emacs - Sources/doc/misc/bovine.texi:124
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:125
#, no-wrap
msgid "Bovine Grammar Rules"
msgstr ""
#. type: menuentry
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:100
msgid "Rules used to parse a language."
msgstr ""
#. type: node
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:100 /Users/suzume/Documents/Repositories/Projet
#: OmegaT de Documentation Emacs - Sources/doc/misc/bovine.texi:283
#, no-wrap
msgid "Optional Lambda Expression"
msgstr ""
#. type: menuentry
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:100
msgid "Actions to take when a rule is matched."
msgstr ""
#. type: node
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:100 /Users/suzume/Documents/Repositories/Projet
#: OmegaT de Documentation Emacs - Sources/doc/misc/bovine.texi:398
#, no-wrap
msgid "Bovine Examples"
msgstr ""
#. type: menuentry
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:100
msgid "Simple Samples."
msgstr ""
#. type: appendix
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:100 /Users/suzume/Documents/Repositories/Projet
#: OmegaT de Documentation Emacs - Sources/doc/misc/bovine.texi:458
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:459
#, no-wrap
msgid "GNU Free Documentation License"
msgstr ""
#. type: menuentry
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:100
msgid "The license for this documentation."
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:110
msgid ""
"In Bison, one and only one nonterminal is designated as the ``start'' "
"symbol. In @semantic{}, one or more nonterminals can be designated as the "
"``start'' symbol. They are declared following the @code{%start} keyword "
"separated by spaces. @xref{start Decl,, Grammar Framework Manual, "
"grammar-fw}."
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:115
msgid ""
"If no @code{%start} keyword is used in a grammar, then the very first is "
"used. Internally the first start nonterminal is targeted by the reserved "
"symbol @code{bovine-toplevel}, so it can be found by the parser harness."
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:123
msgid ""
"To find locally defined variables, the local context handler needs to parse "
"the body of functional code. The @code{scopestart} declaration specifies "
"the name of a nonterminal used as the goal to parse a local context, "
"@pxref{scopestart Decl,, Grammar Framework Manual, grammar-fw}. Internally "
"the scopestart nonterminal is targeted by the reserved symbol "
"@code{bovine-inner-scope}, so it can be found by the parser harness."
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:130
msgid ""
"The rules are what allow the compiler to create tags from a language file. "
"Once the setup is done in the prologue, you can start writing rules. "
"@xref{Grammar Rules,, Grammar Framework Manual, grammar-fw}."
msgstr ""
#. type: example
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:135
#, no-wrap
msgid ""
"@var{result} : @var{components1} @var{optional-semantic-action1})\n"
" | @var{components2} @var{optional-semantic-action2}\n"
" ;\n"
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:141
msgid ""
"@var{result} is a nonterminal, that is a symbol synthesized in your "
"grammar. @var{components} is a list of elements that are to be matched if "
"@var{result} is to be made. @var{optional-semantic-action} is an optional "
"sequence of simplified Emacs Lisp expressions for concocting the parse tree."
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:146
msgid ""
"In bison, each time an element of @var{components} is found, it is "
"@dfn{shifted} onto the parser stack. (The stack of matched elements.) When "
"all @var{components}' elements have been matched, it is @dfn{reduced} to "
"@var{result}. @xref{Algorithm,,, bison, The GNU Bison Manual}."
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:153
msgid ""
"A particular @var{result} written into your grammar becomes the parser's "
"goal. It is designated by a @code{%start} statement (@pxref{Starting "
"Rules}). The value returned by the associated "
"@var{optional-semantic-action} is the parser's result. It should be a tree "
"of @semantic{} @dfn{tags}, @pxref{Semantic Tags,, Semantic Application "
"Development, semantic-appdev}."
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:156
msgid ""
"@var{components} is made up of symbols. A symbol such as @code{FOO} means "
"that a syntactic token of class @code{FOO} must be matched."
msgstr ""
#. type: menuentry
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:161
msgid "How Lexical Tokens Match::"
msgstr ""
#. type: menuentry
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:161
msgid "Grammar-to-Lisp Details::"
msgstr ""
#. type: section
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:161 /Users/suzume/Documents/Repositories/Projet
#: OmegaT de Documentation Emacs - Sources/doc/misc/bovine.texi:265
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:266
#, no-wrap
msgid "Order of components in rules"
msgstr ""
#. type: section
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:163 /Users/suzume/Documents/Repositories/Projet
#: OmegaT de Documentation Emacs - Sources/doc/misc/bovine.texi:164
#, no-wrap
msgid "How Lexical Tokens Match"
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:167
msgid "A lexical rule must be used to define how to match a lexical token."
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:169
msgid "For instance:"
msgstr ""
#. type: example
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:172
#, no-wrap
msgid "%keyword FOO \"foo\"\n"
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:180
msgid ""
"Means that @code{FOO} is a reserved language keyword, matched as such by "
"looking up into a keyword table, @pxref{keyword Decl,, Grammar Framework "
"Manual, grammar-fw}. This is because @code{\"foo\"} will be converted to "
"@code{FOO} in the lexical analysis stage. Thus the symbol @code{FOO} won't "
"be available any other way."
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:182
msgid "If we specify our token in this way:"
msgstr ""
#. type: example
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:185
#, no-wrap
msgid "%token <symbol> FOO \"foo\"\n"
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:190
msgid ""
"then @code{FOO} will match the string @code{\"foo\"} explicitly, but it "
"won't do so at the lexical level, allowing use of the text @code{\"foo\"} in "
"other forms of regular expressions."
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:194
msgid ""
"In that case, @code{FOO} is a @code{symbol}-type token. To match, a "
"@code{symbol} must first be encountered, and then it must @code{string-match "
"\"foo\"}."
msgstr ""
#. type: item
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:196
#, no-wrap
msgid "Caution:"
msgstr ""
#. type: table
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:199
msgid ""
"Be especially careful to remember that @code{\"foo\"}, and more generally "
"the %token's match-value string, is a regular expression!"
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:202
msgid "Non symbol tokens are also allowed. For example:"
msgstr ""
#. type: example
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:205
#, no-wrap
msgid ""
"%token <punctuation> PERIOD \"[.]\"\n"
"\n"
msgstr ""
#. type: example
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:208
#, no-wrap
msgid ""
"filename : symbol PERIOD symbol\n"
" ;\n"
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:212
msgid ""
"@code{PERIOD} is a @code{punctuation}-type token that will explicitly match "
"one period when used in the above rule."
msgstr ""
#. type: item
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:214 /Users/suzume/Documents/Repositories/Projet
#: OmegaT de Documentation Emacs - Sources/doc/misc/bovine.texi:260
#, no-wrap
msgid "Please Note:"
msgstr ""
#. type: table
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:218
msgid ""
"@code{symbol}, @code{punctuation}, etc., are predefined lexical token types, "
"based on the @dfn{syntax class}-character associations currently in effect."
msgstr ""
#. type: section
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:220 /Users/suzume/Documents/Repositories/Projet
#: OmegaT de Documentation Emacs - Sources/doc/misc/bovine.texi:221
#, no-wrap
msgid "Grammar-to-Lisp Details"
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:226
msgid ""
"For the bovinator, lexical token matching patterns are @emph{inlined}. When "
"the grammar-to-lisp converter encounters a lexical token declaration of the "
"form:"
msgstr ""
#. type: example
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:229
#, no-wrap
msgid "%token <@var{type}> @var{token-name} @var{match-value}\n"
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:233
msgid ""
"It substitutes every occurrences of @var{token-name} in rules, by its "
"expanded form:"
msgstr ""
#. type: example
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:236
#, no-wrap
msgid "@var{type} @var{match-value}\n"
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:239
msgid "For example:"
msgstr ""
#. type: example
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:242
#, no-wrap
msgid ""
"%token <symbol> MOOSE \"moose\"\n"
"\n"
msgstr ""
#. type: example
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:245
#, no-wrap
msgid ""
"find_a_moose: MOOSE\n"
" ;\n"
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:248
msgid "Will generate this pseudo equivalent-rule:"
msgstr ""
#. type: example
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:252
#, no-wrap
msgid ""
"find_a_moose: symbol \"moose\" ;; invalid syntax!\n"
" ;\n"
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:258
msgid ""
"Thus, from the bovinator point of view, the @var{components} part of a rule "
"is made up of symbols and strings. A string in the mix means that the "
"previous symbol must have the additional constraint of exactly matching it, "
"as described in @ref{How Lexical Tokens Match}."
msgstr ""
#. type: table
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:263
msgid ""
"For the bovinator, this task was mixed into the language definition to "
"simplify implementation, though Bison's technique is more efficient."
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:269
msgid "If a rule has multiple components, order is important, for example"
msgstr ""
#. type: example
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:274
#, no-wrap
msgid ""
"headerfile : symbol PERIOD symbol\n"
" | symbol\n"
" ;\n"
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:280
msgid ""
"would match @samp{foo.h} or the @acronym{C++} header @samp{foo}. The bovine "
"parser will first attempt to match the long form, and then the short form. "
"If they were in reverse order, then the long form would never be tested."
msgstr ""
#. type: chapter
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:284
#, no-wrap
msgid "Optional Lambda Expressions"
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:289
msgid ""
"The @acronym{OLE} (@dfn{Optional Lambda Expression}) is converted into a "
"bovine lambda. This lambda has special short-cuts to simplify reading the "
"semantic action definition. An @acronym{OLE} like this:"
msgstr ""
#. type: example
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:292
#, no-wrap
msgid "( $1 )\n"
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:297
msgid ""
"results in a lambda return which consists entirely of the string or object "
"found by matching the first (zeroth) element of match. An @acronym{OLE} "
"like this:"
msgstr ""
#. type: example
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:300
#, no-wrap
msgid "( ,(foo $1) )\n"
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:304
msgid ""
"executes @code{foo} on the first argument, and then splices its return into "
"the return list whereas:"
msgstr ""
#. type: example
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:307
#, no-wrap
msgid "( (foo $1) )\n"
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:310
msgid "executes @code{foo}, and that is placed in the return list."
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:312
msgid "Here are other things that can appear inline:"
msgstr ""
#. type: item
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:314
#, no-wrap
msgid "$1"
msgstr ""
#. type: table
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:316
msgid "The first object matched."
msgstr ""
#. type: item
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:317
#, no-wrap
msgid ",$1"
msgstr ""
#. type: table
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:320
msgid ""
"The first object spliced into the list (assuming it is a list from a "
"non-terminal)."
msgstr ""
#. type: item
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:321
#, no-wrap
msgid "'$1"
msgstr ""
#. type: table
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:323
msgid "The first object matched, placed in a list. I.e., @code{( $1 )}."
msgstr ""
#. type: item
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:324
#, no-wrap
msgid "foo"
msgstr ""
#. type: table
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:326
msgid "The symbol @code{foo} (exactly as displayed)."
msgstr ""
#. type: item
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:327
#, no-wrap
msgid "(foo)"
msgstr ""
#. type: table
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:329
msgid "A function call to foo which is stuck into the return list."
msgstr ""
#. type: item
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:330
#, no-wrap
msgid ",(foo)"
msgstr ""
#. type: table
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:332
msgid "A function call to foo which is spliced into the return list."
msgstr ""
#. type: item
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:333
#, no-wrap
msgid "'(foo)"
msgstr ""
#. type: table
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:335
msgid "A function call to foo which is stuck into the return list in a list."
msgstr ""
#. type: item
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:336
#, no-wrap
msgid "(EXPAND @var{$1} @var{nonterminal} @var{depth})"
msgstr ""
#. type: table
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:345
msgid ""
"A list starting with @code{EXPAND} performs a recursive parse on the token "
"passed to it (represented by @samp{$1} above.) The @dfn{semantic list} is a "
"common token to expand, as there are often interesting things in the list. "
"The @var{nonterminal} is a symbol in your table which the bovinator will "
"start with when parsing. @var{nonterminal}'s definition is the same as any "
"other nonterminal. @var{depth} should be at least @samp{1} when descending "
"into a semantic list."
msgstr ""
#. type: item
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:346
#, no-wrap
msgid "(EXPANDFULL @var{$1} @var{nonterminal} @var{depth})"
msgstr ""
#. type: table
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:353
msgid ""
"Is like @code{EXPAND}, except that the parser will iterate over "
"@var{nonterminal} until there are no more matches. (The same way the parser "
"iterates over the starting rule (@pxref{Starting Rules}). This lets you have "
"much simpler rules in this specific case, and also lets you have positional "
"information in the returned tokens, and error skipping."
msgstr ""
#. type: item
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:354
#, no-wrap
msgid "(ASSOC @var{symbol1} @var{value1} @var{symbol2} @var{value2} @dots{})"
msgstr ""
#. type: table
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:359
msgid ""
"This is used for creating an association list. Each @var{symbol} is "
"included in the list if the associated @var{value} is non-@code{nil}. While "
"the items are all listed explicitly, the created structure is an association "
"list of the form:"
msgstr ""
#. type: example
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:362
#, no-wrap
msgid "((@var{symbol1} . @var{value1}) (@var{symbol2} . @var{value2}) @dots{})\n"
msgstr ""
#. type: item
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:364
#, no-wrap
msgid "(TAG @var{name} @var{class} [@var{attributes}])"
msgstr ""
#. type: table
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:366
msgid "This creates one tag in the current buffer."
msgstr ""
#. type: item
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:368
#, no-wrap
msgid "name"
msgstr ""
#. type: table
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:370
msgid "Is a string that represents the tag in the language."
msgstr ""
#. type: item
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:371
#, no-wrap
msgid "class"
msgstr ""
#. type: table
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:374
msgid ""
"Is the kind of tag being create, such as @code{function}, or "
"@code{variable}, though any symbol will work."
msgstr ""
#. type: item
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:375
#, no-wrap
msgid "attributes"
msgstr ""
#. type: table
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:378
msgid ""
"Is an optional set of labeled values such as @code{:constant-flag t :parent "
"\"parenttype\"}."
msgstr ""
#. type: item
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:380
#, no-wrap
msgid "(TAG-VARIABLE @var{name} @var{type} @var{default-value} [@var{attributes}])"
msgstr ""
#. type: itemx
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:381
#, no-wrap
msgid "(TAG-FUNCTION @var{name} @var{type} @var{arg-list} [@var{attributes}])"
msgstr ""
#. type: itemx
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:382
#, no-wrap
msgid ""
"(TAG-TYPE @var{name} @var{type} @var{members} @var{parents} "
"[@var{attributes}])"
msgstr ""
#. type: itemx
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:383
#, no-wrap
msgid "(TAG-INCLUDE @var{name} @var{system-flag} [@var{attributes}])"
msgstr ""
#. type: itemx
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:384
#, no-wrap
msgid "(TAG-PACKAGE @var{name} @var{detail} [@var{attributes}])"
msgstr ""
#. type: itemx
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:385
#, no-wrap
msgid "(TAG-CODE @var{name} @var{detail} [@var{attributes}])"
msgstr ""
#. type: table
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:391
msgid ""
"Create a tag with @var{name} of respectively the class @code{variable}, "
"@code{function}, @code{type}, @code{include}, @code{package}, and "
"@code{code}. See @ref{Creating Tags,, Semantic Application Development, "
"semantic-appdev}, for the lisp functions these translate into."
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:397
msgid ""
"If the symbol @code{%quotemode backquote} is specified, then use @code{,@@} "
"to splice a list in, and @code{,} to evaluate the expression. This lets you "
"send @code{$1} as a symbol into a list instead of having it expanded inline."
msgstr ""
#. type: chapter
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:399
#, no-wrap
msgid "Examples"
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:402
msgid "The rule:"
msgstr ""
#. type: example
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:406
#, no-wrap
msgid ""
"any-symbol: symbol\n"
" ;\n"
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:409
msgid "is equivalent to"
msgstr ""
#. type: example
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:414
#, no-wrap
msgid ""
"any-symbol: symbol\n"
" ( $1 )\n"
" ;\n"
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:417
msgid "which, if it matched the string @samp{\"A\"}, would return"
msgstr ""
#. type: example
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:420
#, no-wrap
msgid "( \"A\" )\n"
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:423
msgid "If this rule were used like this:"
msgstr ""
#. type: example
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:430
#, no-wrap
msgid ""
"%token <punctuation> EQUAL \"=\"\n"
"@dots{}\n"
"assign: any-symbol EQUAL any-symbol\n"
" ( $1 $3 )\n"
" ;\n"
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:433
msgid "it would match @samp{\"A=B\"}, and return"
msgstr ""
#. type: example
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:436
#, no-wrap
msgid "( (\"A\") (\"B\") )\n"
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:440
msgid ""
"The letters @samp{A} and @samp{B} come back in lists because "
"@samp{any-symbol} is a nonterminal, not an actual lexical element."
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:443
msgid ""
"To get a better result with nonterminals, use @asis{,} to splice lists in "
"like this:"
msgstr ""
#. type: example
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:450
#, no-wrap
msgid ""
"%token <punctuation> EQUAL \"=\"\n"
"@dots{}\n"
"assign: any-symbol EQUAL any-symbol\n"
" ( ,$1 ,$3 )\n"
" ;\n"
msgstr ""
#. type: Plain text
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:453
msgid "which would return"
msgstr ""
#. type: example
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:456
#, no-wrap
msgid "( \"A\" \"B\" )\n"
msgstr ""
#. type: include
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:461
#, no-wrap
msgid "doclicense.texi"
msgstr ""
#. type: unnumbered
#: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emacs -
#: Sources/doc/misc/bovine.texi:465 /Users/suzume/Documents/Repositories/Projet
#: OmegaT de Documentation Emacs - Sources/doc/misc/bovine.texi:466
#, no-wrap
msgid "Index"
msgstr ""