pylatexenc Documentation
|
|
- Johnathan Gilbert
- 5 years ago
- Views:
Transcription
1 pylatexenc Documentation Release 1.2 Philippe Faist Apr 28, 2017
2
3 Contents: 1 Simple Parser for LaTeX Code The main LatexWalker class Exception Classes Macro Definitions Data Node Classes and Helpers Simple Latex to Text Converter Latex to Text Converter Class Known Macros and Environments Encode Unicode to LaTeX 13 4 Indices and tables 15 Python Module Index 17 i
4 ii
5 This package provides simple and heuristic conversion of LaTeX to unicode and vice versa. Quick example: >>> from pylatexenc.latex2text import LatexNodes2Text >>> latex = r"""\textbf{hi there!} Here is \emph{an equation}:... \begin{equation}... \zeta = x + i y... \end{equation}... where $i$ is the imaginary unit.... """ >>> print(latexnodes2text().latex_to_text(latex)) Hi there! Here is an equation: ζ = x + i y where i is the imaginary unit. And the other way around: >>> from pylatexenc.latexencode import utf8tolatex >>> text = u"à votre santé!" >>> print(utf8tolatex(text)) {\`A} votre sant{\'e}! Contents: 1
6 2 Contents:
7 CHAPTER 1 Simple Parser for LaTeX Code The latexwalker module provides a simple API for parsing LaTeX snippets, and representing the contents using a data structure based on nodes classes. LatexWalker will understand the syntax of most common macros. However, latexwalker is NOT a replacement for a full LaTeX engine. (Originally, latexwalker was desigend to extract useful text for indexing for text database searches of LaTeX content.) The main LatexWalker class class pylatexenc.latexwalker.latexwalker(s, macro_dict=none, **flags) A parser which walks through an input stream, parsing it as LaTeX markup. Arguments: s: the string to parse as LaTeX code macro_dict: a context dictionary of known LaTeX macros. By default, the default global macro dictionary default_macro_dict is used. This should be a dictionary where the keys are macro names (see MacrosDef.macname) and values are MacrosDef instances. Additional keyword arguments are flags which influence the parsing. Accepted flags are: keep_inline_math=true False If this option is set to True, then inline math is parsed and stored using LatexMathNode instances. Otherwise, inline math is not treated differently and is simply kept as text. tolerant_parsing=true False If set to True, then the parser generally ignores syntax errors rather than raising an exception. strict_braces=true False This option refers specifically to reading a encountering a closing brace when an expression is needed. You generally won t need to specify this flag, use tolerant_parsing instead. get_latex_braced_group(pos, brace_type= { ) Reads a latex expression enclosed in braces {... }. The first token of s[pos:] must be an opening brace. 3
8 Returns a tuple (node, pos, len), where node is a LatexGroupNode instance, pos is the first char of the expression (which has to be an opening brace), and len is its length, including the closing brace. get_latex_environment(pos, environmentname=none) Reads a latex expression enclosed in a \begin{environment}...\end{environment}. The first token in the stream must be the \begin{environment}. If environmentname is given and nonempty, then additionally a LatexWalkerParseError is raised if the environment in the input stream does not match the provided name. This function will attempt to heuristically parse an optional argument, and possibly a mandatory argument given to the environment. No space is allowed between egin{environment} and an opening square bracket or opening brace. Returns a tuple (node, pos, len) with node being a LatexEnvironmentNode. get_latex_expression(pos, strict_braces=none) Reads a latex expression, e.g. macro argument. This may be a single char, an escape sequence, or a expression placed in braces. This is what TeX calls a token (and not what we call a token... anyway). Returns a tuple (<LatexNode instance>, pos, len). pos is the first char of the expression, and len is its length. get_latex_maybe_optional_arg(pos) Attempts to parse an optional argument. Returns a tuple (groupnode, pos, len) if success, otherwise returns None. get_latex_nodes(pos=0, stop_upon_closing_brace=none, stop_upon_end_environment=none, stop_upon_closing_mathmode=none) Parses latex content stored in self.s into a list of nodes. Returns a tuple (nodelist, pos, len) where nodelist is a list of LatexNode s. If stop_upon_closing_brace is given and set to a character, then parsing stops once the given closing brace is encountered (but not inside a subgroup). The brace is given as a character, ] or }. The returned len includes the closing brace, but the closing brace is not included in any of the nodes in the nodelist. If stop_upon_end_environment is provided, then parsing stops once the given environment was closed. If there is an environment mismatch, then a LatexWalkerParseError is raised except in tolerant parsing mode (see py:meth:parse_flags()). Again, the closing environment is included in the length count but not the nodes. get_token(pos, brackets_are_chars=true, environments=true, keep_inline_math=none) Parse the token in the stream pointed to at position pos. Returns a LatexToken. Raises LatexWalkerEndOfStream if end of stream reached. If brackets_are_chars=false, then square bracket characters count as brace_open and brace_close token types (see LatexToken); otherwise (the default) they are considered just like other normal characters. If environments=false, then begin and end tokens count as regular macro tokens (see LatexToken); otherwise (the default) they are considered as the token types begin_environment and end_environment. If keep_inline_math is not None, then that value overrides that of self.keep_inline_math for the duration of this method call. parse_flags() The parse flags currently set on this object. Returns a dictionary with keys keep_inline_math, tolerant_parsing and strict_braces. 4 Chapter 1. Simple Parser for LaTeX Code
9 Exception Classes class pylatexenc.latexwalker.latexwalkererror Generic exception class raised by this module. class pylatexenc.latexwalker.latexwalkerparseerror(msg, s=none, pos=none) Parse error. The following attributes are available: msg (the error message), s (the parsed string), pos (the position of the error in the string, 0-based index). class pylatexenc.latexwalker.latexwalkerendofstream Reached end of input stream (e.g., end of file). Macro Definitions class pylatexenc.latexwalker.macrosdef(macname, optarg, numargs) Class which stores a Macro syntax. macname stores the name of the macro, without the leading backslash. optarg may be one of True, False, or None. if True, the macro expects as first argument an optional argument in square brackets. Then, numargs specifies the number of additional mandatory arguments to the command, given in usual curly braces (or simply as one TeX token) if False, the macro only expects a number of mandatory arguments given by numargs. The mandatory arguments are given in usual curly braces (or simply as one TeX token) if None, then numargs is a string of either characters { or [, in which each curly brace specifies a mandatory argument and each square bracket specifies an optional argument in square brackets. For example, {{[{ expects two mandatory arguments, then an optional argument in square brackets, and then another mandatory argument. pylatexenc.latexwalker.default_macro_dict The default context dictionary of known LaTeX macros. macname) and the values are MacrosDef instances. The keys are the macro names (MacrosDef. Data Node Classes and Helpers class pylatexenc.latexwalker.latextoken(tok, arg, pos, len, pre_space) Represents a token read from the LaTeX input. This is not the same thing as a LaTeX token, it s just a part of the input which we treat in the same way (e.g. a bunch of content characters, a comment, a macro, etc.) Information about the object is stored into the fields tok and arg. The tok field is a string which identifies the type of the token. The arg depends on what tok is, and describes the actual input. Additionally, this class stores information about the position of the token in the input stream in the field pos. This pos is an integer which corresponds to the index in the input string. The field len stores the length of the token in the input string. This means that this token spans in the input string from pos to pos+len. Leading whitespace before the token is not returned as a separate char -type token, but it is given in the pre_space field of the token which follows. Pre-space may contain a newline, but not two consecutive newlines Exception Classes 5
10 The tok field may be one of: char : raw characters which have no special LaTeX meaning; they are part of the text content. The arg field contains the characters themselves. macro : a macro invokation, but not begin or end The arg field contains the name of the macro, without the leading backslash. begin_environment : an invokation of begin{environment}. The arg field contains the name of the environment inside the braces. end_environment : an invokation of end{environment}. The arg field contains the name of the environment inside the braces. comment : a LaTeX comment delimited by a percent sign up to the end of the line. The arg field contains the text in the comment line, not including the percent sign nor the newline. brace_open : an opening brace. This is usually a curly brace, and sometimes also a square bracket. What is parsed as a brace depends on the arguments to get_token(). The arg is a string which contains the relevant brace character. brace_close : a closing brace. This is usually a curly brace, and sometimes also a square bracket. What is parsed as a brace depends on the arguments to get_token(). The arg is a string which contains the relevant brace character. mathmode_inline : a delimiter which starts inline math. This is (e.g.) a single $ character which is not part of a double $$ display environment delimiter. The arg is the string value of the delimiter in question ( $ ) class pylatexenc.latexwalker.latexnode(**kwargs) Represents an abstract node of the latex document. Use nodetype() to figure out what type of node this is. class pylatexenc.latexwalker.latexcharsnode(chars, **kwargs) A string of characters in the LaTeX document, without any special meaning. class pylatexenc.latexwalker.latexgroupnode(nodelist, **kwargs) A LaTeX group, i.e. {...}. class pylatexenc.latexwalker.latexcommentnode(comment, **kwargs) A LaTeX comment, delimited by a percent sign until the end of line. class pylatexenc.latexwalker.latexmacronode(macroname, nodeoptarg=none, nodeargs=[], **kwargs) Represents a macro type node, e.g. textbf class pylatexenc.latexwalker.latexenvironmentnode(envname, nodelist, optargs=[], args=[], **kwargs) A LaTeX Environment Node, i.e. begin{something}... end{something}. Arguments: envname: the name of the environment ( itemize, equation,...) nodelist: a list of LatexNode s that represent all the contents between the begin{...} instruction and the end{...} instruction. 6 Chapter 1. Simple Parser for LaTeX Code
11 optargs: any possible optional argument passed to the begin{...} instruction, for example in begin{enumerate}[label=roman*)] (Currently, only a single optional argument is parsed, but this argument still accepts anyway a list of :py:class: LatexNode s.) args: any possible regular arguments passed to the begin{...} instruction, for example in begin{tabular}{clr}. Currently, only a single regular argument is parsed at maximum, but this is anyway a list of LatexNode s. class pylatexenc.latexwalker.latexmathnode(displaytype, nodelist=[], **kwargs) A Math node type. Note that currently only inline math environments are detected. Arguments: displaytype: either inline or display 1.4. Data Node Classes and Helpers 7
12 8 Chapter 1. Simple Parser for LaTeX Code
13 CHAPTER 2 Simple Latex to Text Converter A simplistic, heuristic LaTeX code parser allowing to returns a text-only approximation. Suitable, e.g. for indexing tex code in a database for full text searching. The main class is LatexNodes2Text. For a quick start, try: from pylatexenc.latex2text import LatexNodes2Text latex = "... LaTeX code..." text = LatexNodes2Text().latex_to_text(latex) Latex to Text Converter Class class pylatexenc.latex2text.latexnodes2text(env_dict=none, macro_dict=none, text_replacements=none, **flags) Simplistic Latex-To-Text Converter. This class parses a nodes structure generated by the latexwalker module, and creates a text representation of the structure. It is capable of parsing \input directives safely, see set_tex_input_directory() and read_input_file(). By default, \input and \include directives are ignored. Arguments to the constructor: env_dict, macro_dict are dictionaries of known environment and macro definitions. default_env_dict and default_macro_dict, respectively. They default to text_replacements are string replacements to apply onto the final string, as final touches. This defaults to default_text_replacements. Additional keyword arguments are flags which may influence the behavior: keep_inline_math=true False: If set to True, then inline math is kept using dollar signs, otherwise it is incorporated as normal text. 9
14 keep_comments=true False: If set to True, then LaTeX comments are kept (including the percent-sign); otherwise they are discarded. latex_to_text(latex, **parse_flags) Parses the given latex code and returns its textual representation. The parse_flags are the flags to give on to the pylatexenc.latexwalker.latexwalker constructor. node_to_text(node) Return the textual representation of the given node. nodelist_to_text(nodelist) Extracts text from a node list. nodelist is a list of nodes as returned by pylatexenc.latexwalker. LatexWalker.get_latex_nodes(). read_input_file(fn) This method may be overridden to implement a custom lookup mechanism when encountering \input or \include directives. The default implementation looks for a file of the given name relative to the directory set by set_tex_input_directory(). If strict_input=true was set, we ensure strictly that the file resides in a subtree of the reference input directory (after canonicalizing the paths and resolving all symlinks). You may override this method to obtain the input data in however way you see fit. (In that case, a call to set_tex_input_directory() may not be needed as that function simply sets properties which are used by the default implementation of read_input_file().) This function accepts the referred filename as argument (the argument to the \input macro), and should return a string with the file contents (or generate a warning or raise an error). set_tex_input_directory(tex_input_directory, latex_walker_init_args=none, strict_input=true) Set where to look for input files when encountering the \input or \include macro. Alternatively, you may also override read_input_file() to implement a custom file lookup mechanism. The argument tex_input_directory is the directory relative to which to search for input files. If strict_input is set to True, then we always check that the referenced file lies within the subtree of tex_input_directory, prohibiting for instance hacks with.. in filenames or using symbolic links to refer to files out of the directory tree. The argument latex_walker_init_args allows you to specify the parse flags passed to the constructor of pylatexenc.latexwalker.latexwalker when parsing the input file. Known Macros and Environments class pylatexenc.latex2text.envdef(envname, simplify_repl=none, discard=false) An environment definition. envname: the name of the environment simplify_repl: the replacement text of the environment. This is either a callable or a string. If it is a callable, it must accept a single argument, the pylatexenc.latexwalker. LatexEnvironmentNode representing the LaTeX environment. If it is a string, it may contain %s which will be replaced by the environment contents converted to text. discard: if set to True, then the full environment is discarded, i.e., it is converted to an empty string. 10 Chapter 2. Simple Latex to Text Converter
15 class pylatexenc.latex2text.macrodef(macname, simplify_repl=none, discard=none) A macro definition. macname: the name of the macro (no backslash) simplify_repl: either a string or a callable. The string may contain %s replacements, in which the macro arguments will be substituted. The callable should accept the corresponding pylatexenc. latexwalker.latexmacronode as an argument. discard: if set to True, then the macro call is discarded, i.e., it is converted to an empty string. pylatexenc.latex2text.default_env_dict The default context dictionary of known LaTeX environment definitions and how to convert them to text. This is a dictionary with keys the environment name (EnvDef.envname) and values are EnvDef instances. pylatexenc.latex2text.default_macro_dict The default context dictionary of known LaTeX macro definitions and how to convert them to text. This is a dictionary with keys the macro name (MacroDef.macname) and values are MacroDef instances. pylatexenc.latex2text.default_text_replacements Default text replacements (final touches) to apply to LaTeX code. (For instance, converting ~ to (space) or '' to ".) This is a list (or tuple) of pairs of (regex-pattern, replacement-text) of replacements to perform Known Macros and Environments 11
16 12 Chapter 2. Simple Latex to Text Converter
17 CHAPTER 3 Encode Unicode to LaTeX The latexencode module provides a single function, utf8tolatex() which allows you to convert a unicode string to LaTeX escape sequences. pylatexenc.latexencode.utf8tolatex(s, non_ascii_only=false, brackets=true, substitute_bad_chars=false) Encode a UTF-8 string to a LaTeX snippet. If non_ascii_only is set to True, then usual (ascii) characters such as #, {, } etc. will not be escaped. If set to False (the default), they are escaped to their respective LaTeX escape sequences. If brackets is set to True (the default), then LaTeX macros are enclosed in brackets. For example, santé is replaced by sant{\'e} if brackets=true and by sant\'e if brackets=false. Warning: Using brackets=false might give you an invalid LaTeX string, so avoid it! (for instance, maître will be replaced incorrectly by ma\^\itre resulting in an unknown macro \itre). If substitute_bad_chars=true, then any non-ascii character for which no LaTeX escape sequence is known is replaced by a question mark in boldface. Otherwise (by default), the character is left as it is. 13
18 14 Chapter 3. Encode Unicode to LaTeX
19 CHAPTER 4 Indices and tables genindex modindex search 15
20 16 Chapter 4. Indices and tables
21 Python Module Index p pylatexenc.latex2text, 9 pylatexenc.latexencode, 13 pylatexenc.latexwalker, 3 17
22 18 Python Module Index
23 Index D default_env_dict (in module pylatexenc.latex2text), 11 default_macro_dict (in module pylatexenc.latex2text), 11 default_macro_dict (in module pylatexenc.latexwalker), 5 default_text_replacements (in module pylatexenc.latex2text), 11 E EnvDef (class in pylatexenc.latex2text), 10 G get_latex_braced_group() (pylatexenc.latexwalker.latexwalker method), 3 get_latex_environment() (pylatexenc.latexwalker.latexwalker method), 4 get_latex_expression() (pylatexenc.latexwalker.latexwalker method), 4 get_latex_maybe_optional_arg() (pylatexenc.latexwalker.latexwalker method), 4 get_latex_nodes() (pylatexenc.latexwalker.latexwalker method), 4 get_token() (pylatexenc.latexwalker.latexwalker method), 4 L latex_to_text() (pylatexenc.latex2text.latexnodes2text method), 10 LatexCharsNode (class in pylatexenc.latexwalker), 6 LatexCommentNode (class in pylatexenc.latexwalker), 6 LatexEnvironmentNode (class in pylatexenc.latexwalker), 6 LatexGroupNode (class in pylatexenc.latexwalker), 6 LatexMacroNode (class in pylatexenc.latexwalker), 6 LatexMathNode (class in pylatexenc.latexwalker), 7 LatexNode (class in pylatexenc.latexwalker), 6 LatexNodes2Text (class in pylatexenc.latex2text), 9 LatexToken (class in pylatexenc.latexwalker), 5 LatexWalker (class in pylatexenc.latexwalker), 3 LatexWalkerEndOfStream (class in pylatexenc.latexwalker), 5 LatexWalkerError (class in pylatexenc.latexwalker), 5 LatexWalkerParseError (class in pylatexenc.latexwalker), 5 M MacroDef (class in pylatexenc.latex2text), 10 MacrosDef (class in pylatexenc.latexwalker), 5 N P parse_flags() (pylatexenc.latexwalker.latexwalker method), 4 pylatexenc.latex2text (module), 9 pylatexenc.latexencode (module), 13 pylatexenc.latexwalker (module), 3 R S (pylatex- method), set_tex_input_directory() enc.latex2text.latexnodes2text 10 U utf8tolatex() (in module pylatexenc.latexencode), 13 node_to_text() (pylatexenc.latex2text.latexnodes2text method), 10 nodelist_to_text() (pylatexenc.latex2text.latexnodes2text method), 10 (pylatex- method), read_input_file() enc.latex2text.latexnodes2text 10 19
Honu. Version November 6, 2010
Honu Version 5.0.2 November 6, 2010 Honu is a family of languages built on top of Racket. Honu syntax resembles Java. Like Racket, however, Honu has no fixed syntax, because Honu supports extensibility
More informationOstrichLib Documentation
OstrichLib Documentation Release 0.0.0 Itamar Ostricher May 10, 2016 Contents 1 utils package 3 1.1 collections utils module......................................... 3 1.2 path utils module.............................................
More informationChapter 1 Summary. Chapter 2 Summary. end of a string, in which case the string can span multiple lines.
Chapter 1 Summary Comments are indicated by a hash sign # (also known as the pound or number sign). Text to the right of the hash sign is ignored. (But, hash loses its special meaning if it is part of
More informationCSC 467 Lecture 3: Regular Expressions
CSC 467 Lecture 3: Regular Expressions Recall How we build a lexer by hand o Use fgetc/mmap to read input o Use a big switch to match patterns Homework exercise static TokenKind identifier( TokenKind token
More informationTECkit version 2.0 A Text Encoding Conversion toolkit
TECkit version 2.0 A Text Encoding Conversion toolkit Jonathan Kew SIL Non-Roman Script Initiative (NRSI) Abstract TECkit is a toolkit for encoding conversions. It offers a simple format for describing
More informationParser Tools: lex and yacc-style Parsing
Parser Tools: lex and yacc-style Parsing Version 5.0 Scott Owens June 6, 2010 This documentation assumes familiarity with lex and yacc style lexer and parser generators. 1 Contents 1 Lexers 3 1.1 Creating
More informationArgParse.jl Documentation
ArgParse.jl Documentation Release 0.3 Carlo Baldassi October 06, 2015 Contents 1 Quick overview and a simple example 3 2 The parse_args function 7 3 Settings overview 9 4 General settings 11 5 Argument
More information12/22/11. Java How to Program, 9/e. Help you get started with Eclipse and NetBeans integrated development environments.
Java How to Program, 9/e Education, Inc. All Rights Reserved. } Java application programming } Use tools from the JDK to compile and run programs. } Videos at www.deitel.com/books/jhtp9/ Help you get started
More informationParser Tools: lex and yacc-style Parsing
Parser Tools: lex and yacc-style Parsing Version 6.11.0.6 Scott Owens January 6, 2018 This documentation assumes familiarity with lex and yacc style lexer and parser generators. 1 Contents 1 Lexers 3 1.1
More informationtranslationstring Documentation
translationstring Documentation Release 1.4.dev0 Pylons Developers August 29, 2017 Contents 1 Translation Strings 3 1.1 Using The TranslationString Class............................... 3 1.2 Using the
More informationUsing Lex or Flex. Prof. James L. Frankel Harvard University
Using Lex or Flex Prof. James L. Frankel Harvard University Version of 1:07 PM 26-Sep-2016 Copyright 2016, 2015 James L. Frankel. All rights reserved. Lex Regular Expressions (1 of 4) Special characters
More informationSmartparens Documentation
Smartparens Documentation Release 1.10.1 Matúš Goljer Aug 08, 2018 Contents 1 Getting Started 3 1.1 Migrating from paredit.......................................... 4 2 Are you an elisp developer? 5 3
More informationDogeon Documentation. Release Lin Ju
Dogeon Documentation Release 1.0.0 Lin Ju June 07, 2014 Contents 1 Indices and tables 7 Python Module Index 9 i ii DSON (Doge Serialized Object Notation) is a data-interchange format,
More informationASN2XML. ASN.1 to XML Translator. Version 2.1. Reference Manual. Objective Systems July 2010
ASN2XML ASN.1 to XML Translator Version 2.1 Reference Manual Objective Systems July 2010 The software described in this document is furnished under a license agreement and may be used only in accordance
More information\n is used in a string to indicate the newline character. An expression produces data. The simplest expression
Chapter 1 Summary Comments are indicated by a hash sign # (also known as the pound or number sign). Text to the right of the hash sign is ignored. (But, hash loses its special meaning if it is part of
More informationredis-lua Documentation
redis-lua Documentation Release 2.0.8 Julien Kauffmann October 12, 2016 Contents 1 Quick start 3 1.1 Step-by-step analysis........................................... 3 2 What s the magic at play here?
More informationBabu Madhav Institute of Information Technology, UTU 2015
Five years Integrated M.Sc.(IT)(Semester 5) Question Bank 060010502:Programming in Python Unit-1:Introduction To Python Q-1 Answer the following Questions in short. 1. Which operator is used for slicing?
More informationIEEE Std Clarifications and Corrections
and Corrections This document is maintained by the STIL Working Group to clarify points of confusion identified by users of 1450-1999. These clarification are sorted by page order in the 1450-1999 standard.
More informationpyprika Documentation
pyprika Documentation Release 1.0.0 Paul Kilgo February 16, 2014 Contents i ii Pyprika is a Python library for parsing and managing recipes. Its major features are: Support for recognizing a human-friendly
More informationThe newcommand.py utility
The newcommand.py utility Scott Pakin scott+nc@pakin.org 2010/06/01 Abstract L A TEX s \newcommand is fairly limited in the way it processes optional arguments, but the TEX alternative, a batch of \defs
More informationSTATS 507 Data Analysis in Python. Lecture 2: Functions, Conditionals, Recursion and Iteration
STATS 507 Data Analysis in Python Lecture 2: Functions, Conditionals, Recursion and Iteration Functions in Python We ve already seen examples of functions: e.g., type()and print() Function calls take the
More informationC How to Program, 6/e by Pearson Education, Inc. All Rights Reserved.
C How to Program, 6/e 1992-2010 by Pearson Education, Inc. An important part of the solution to any problem is the presentation of the results. In this chapter, we discuss in depth the formatting features
More informationCIF Changes to the specification. 27 July 2011
CIF Changes to the specification 27 July 2011 This document specifies changes to the syntax and binary form of CIF. We refer to the current syntax specification of CIF as CIF1, and the new specification
More informationpsed [-an] script [file...] psed [-an] [-e script] [-f script-file] [file...]
NAME SYNOPSIS DESCRIPTION OPTIONS psed - a stream editor psed [-an] script [file...] psed [-an] [-e script] [-f script-file] [file...] s2p [-an] [-e script] [-f script-file] A stream editor reads the input
More informationbc an arbitrary precision calculator language version 1.06
and Other Implementations-titleGNU bc and Other Implementations bc an arbitrary precision calculator language version 1.06 Philip A. Nelson This manual documents bc, an arbitrary precision calculator language.
More informationIHIH Documentation. Release Romain Dartigues
IHIH Documentation Release 0.1.1 Romain Dartigues December 11, 2016 Contents 1 Why? 3 2 Table of contents 5 2.1 Source documentation.......................................... 5 2.2 Examples.................................................
More informationRegular Expressions. Regular expressions are a powerful search-and-replace technique that is widely used in other environments (such as Unix and Perl)
Regular Expressions Regular expressions are a powerful search-and-replace technique that is widely used in other environments (such as Unix and Perl) JavaScript started supporting regular expressions in
More informationyarl Documentation Release Andrew Svetlov
yarl Documentation Release 1.2.0- Andrew Svetlov Apr 30, 2018 Contents 1 Introduction 3 2 Installation 5 3 Dependencies 7 4 API documentation 9 5 Comparison with other URL libraries 11 6 Source code 13
More informationIPCoreL. Phillip Duane Douglas, Jr. 11/3/2010
IPCoreL Programming Language Reference Manual Phillip Duane Douglas, Jr. 11/3/2010 The IPCoreL Programming Language Reference Manual provides concise information about the grammar, syntax, semantics, and
More informationThe xparse package Document command parser
The xparse package Document command parser The L A TEX3 Project Released 2018-10-17 The xparse package provides a high-level interface for producing document-level commands. In that way, it is intended
More informationHave examined process Creating program Have developed program Written in C Source code
Preprocessing, Compiling, Assembling, and Linking Introduction In this lesson will examine Architecture of C program Introduce C preprocessor and preprocessor directives How to use preprocessor s directives
More informationThe Logical Design of the Tokeniser
Page 1 of 21 The Logical Design of the Tokeniser Purpose 1. To split up a character string holding a RAQUEL statement expressed in linear text, into a sequence of character strings (called word tokens),
More informationExpr Language Reference
Expr Language Reference Expr language defines expressions, which are evaluated in the context of an item in some structure. This article describes the syntax of the language and the rules that govern the
More informationObject oriented programming C++
http://uranchimeg.com Object oriented programming C++ T.Uranchimeg Prof. Dr. Email uranchimeg@must.edu.mn Power Engineering School M.EC203* -- OOP (C++) -- Lecture 06 Subjects Functions Functions with
More informationHomework # You ll want to use some LaTeX editor to edit and compile your.tex files
Homework # 1 What is LaTeX? LaTeX is a document markup language You prepare a (.tex) document, and compile it into a PDF LaTeX helps make your homework pretty (just like this document!) and makes us happy
More informationA Pascal program. Input from the file is read to a buffer program buffer. program xyz(input, output) --- begin A := B + C * 2 end.
A Pascal program program xyz(input, output); var A, B, C: integer; begin A := B + C * 2 end. Input from the file is read to a buffer program buffer program xyz(input, output) --- begin A := B + C * 2 end.
More informationFull file at
Java Programming: From Problem Analysis to Program Design, 3 rd Edition 2-1 Chapter 2 Basic Elements of Java At a Glance Instructor s Manual Table of Contents Overview Objectives s Quick Quizzes Class
More informationAssoc. Prof. Dr. Marenglen Biba. (C) 2010 Pearson Education, Inc. All rights reserved.
Assoc. Prof. Dr. Marenglen Biba (C) 2010 Pearson Education, Inc. All rights reserved. Java application A computer program that executes when you use the java command to launch the Java Virtual Machine
More informationWhat is LaTeX. Is a document markup language and document preparation system for the TeX typesetting program
What is LaTeX LaTeX ( /ˈleɪtɛk/, /ˈleɪtɛx/, /ˈlɑːtɛx/, or /ˈlɑːtɛk/) Is a document markup language and document preparation system for the TeX typesetting program Refers only to the language, not to the
More informationucalc Patterns Examine the following example which can be pasted into the interpreter (paste the entire block at the same time):
[This document is far from complete but discusses some pattern essentials. Check back for more in the future; ask questions for clarity] ucalc Patterns ucalc patterns represent a key element of all current
More informationCS164: Programming Assignment 2 Dlex Lexer Generator and Decaf Lexer
CS164: Programming Assignment 2 Dlex Lexer Generator and Decaf Lexer Assigned: Thursday, September 16, 2004 Due: Tuesday, September 28, 2004, at 11:59pm September 16, 2004 1 Introduction Overview In this
More information20.5. urllib Open arbitrary resources by URL
1 of 9 01/25/2012 11:19 AM 20.5. urllib Open arbitrary resources by URL Note: The urllib module has been split into parts and renamed in Python 3.0 to urllib.request, urllib.parse, and urllib.error. The
More informationModelica Change Proposal MCP-0019 Flattening (In Development) Proposed Changes to the Modelica Language Specification Version 3.
Modelica Change Proposal MCP-0019 Flattening (In Development) Proposed Changes to the Modelica Language Specification Version 3.3 Revision 1 Table of Contents Preface 3 Chapter 1 Introduction 3 Chapter
More informationConfuse. Release 0.1.0
Confuse Release 0.1.0 July 02, 2016 Contents 1 Using Confuse 3 2 View Theory 5 3 Validation 7 4 Command-Line Options 9 5 Search Paths 11 6 Your Application Directory 13 7 Dynamic Updates 15 8 YAML Tweaks
More informationspacetrack Documentation
spacetrack Documentation Release 0.13.1 Frazer McLean Feb 03, 2018 Contents 1 Installation 3 1.1 pip.................................................. 3 1.2 Git..................................................
More informationLanguage Syntax version beta Proposed Syntax
Superpowered game development. Language Syntax version.0. beta Proposed Syntax Live/current version at skookumscript.com/docs/v.0/lang/syntax/ November, 0 Better coding through mad science. Copyright 00-0
More informationVisualization of Biomolecular Structures
T H E U N I V E R S I T Y of T E X A S H E A L T H S C I E N C E C E N T E R A T H O U S T O N S C H O O L of H E A L T H I N F O R M A T I O N S C I E N C E S Visualization of Biomolecular Structures
More informationJava How to Program, 10/e. Copyright by Pearson Education, Inc. All Rights Reserved.
Java How to Program, 10/e Copyright 1992-2015 by Pearson Education, Inc. All Rights Reserved. Data structures Collections of related data items. Discussed in depth in Chapters 16 21. Array objects Data
More informationCS 541 Spring Programming Assignment 2 CSX Scanner
CS 541 Spring 2017 Programming Assignment 2 CSX Scanner Your next project step is to write a scanner module for the programming language CSX (Computer Science experimental). Use the JFlex scanner-generation
More informationCSc 10200! Introduction to Computing. Lecture 2-3 Edgardo Molina Fall 2013 City College of New York
CSc 10200! Introduction to Computing Lecture 2-3 Edgardo Molina Fall 2013 City College of New York 1 C++ for Engineers and Scientists Third Edition Chapter 2 Problem Solving Using C++ 2 Objectives In this
More information$syntax_okay = podchecker($filepath, $outputpath, %options);
NAME Pod::Checker, podchecker() - check pod documents for syntax errors SYNOPSIS use Pod::Checker; $syntax_okay = podchecker($filepath, $outputpath, %options); OPTIONS/ARGUMENTS podchecker() DESCRIPTION
More informationPython Working with files. May 4, 2017
Python Working with files May 4, 2017 So far, everything we have done in Python was using in-memory operations. After closing the Python interpreter or after the script was done, all our input and output
More informationB.V. Patel Institute of BMC & IT, UTU 2014
BCA 3 rd Semester 030010301 - Java Programming Unit-1(Java Platform and Programming Elements) Q-1 Answer the following question in short. [1 Mark each] 1. Who is known as creator of JAVA? 2. Why do we
More informationArgParse.jl Documentation
ArgParse.jl Documentation Release 0.2 Carlo Baldassi May 12, 2015 Contents 1 Quick overview and a simple example 3 2 The parse_args function 7 3 Settings overview 9 4 General settings 11 5 Argument table
More informationmsgpack Documentation
msgpack Documentation Release 0.4 Author 2017-11-04 Contents 1 API reference 3 Python Module Index 9 i ii MessagePack is a efficient format for inter language data exchange. Contents 1 2 Contents CHAPTER
More informationThe xparse package Document command parser
The xparse package Document command parser The L A TEX3 Project Released 2016/05/18 The xparse package provides a high-level interface for producing document-level commands. In that way, it is intended
More informationProject 2: Scheme Lexer and Parser
Project 2: Scheme Lexer and Parser Due Monday, Oct 8, 2018 at 8pm Contents Background 2 Lexer...................................................... 2 Lexical Analysis.............................................
More informationA lexical analyzer generator for Standard ML. Version 1.6.0, October 1994
A lexical analyzer generator for Standard ML. Version 1.6.0, October 1994 Andrew W. Appel 1 James S. Mattson David R. Tarditi 2 1 Department of Computer Science, Princeton University 2 School of Computer
More informationTypescript on LLVM Language Reference Manual
Typescript on LLVM Language Reference Manual Ratheet Pandya UNI: rp2707 COMS 4115 H01 (CVN) 1. Introduction 2. Lexical Conventions 2.1 Tokens 2.2 Comments 2.3 Identifiers 2.4 Reserved Keywords 2.5 String
More informationJava+- Language Reference Manual
Fall 2016 COMS4115 Programming Languages & Translators Java+- Language Reference Manual Authors Ashley Daguanno (ad3079) - Manager Anna Wen (aw2802) - Tester Tin Nilar Hlaing (th2520) - Systems Architect
More informationVENTURE. Section 1. Lexical Elements. 1.1 Identifiers. 1.2 Keywords. 1.3 Literals
VENTURE COMS 4115 - Language Reference Manual Zach Adler (zpa2001), Ben Carlin (bc2620), Naina Sahrawat (ns3001), James Sands (js4597) Section 1. Lexical Elements 1.1 Identifiers An identifier in VENTURE
More informationIT 374 C# and Applications/ IT695 C# Data Structures
IT 374 C# and Applications/ IT695 C# Data Structures Module 2.1: Introduction to C# App Programming Xianrong (Shawn) Zheng Spring 2017 1 Outline Introduction Creating a Simple App String Interpolation
More informationmicawber Documentation
micawber Documentation Release 0.3.4 charles leifer Nov 29, 2017 Contents 1 examples 3 2 integration with web frameworks 5 2.1 Installation................................................ 5 2.2 Getting
More informationDr. Sarah Abraham University of Texas at Austin Computer Science Department. Regular Expressions. Elements of Graphics CS324e Spring 2017
Dr. Sarah Abraham University of Texas at Austin Computer Science Department Regular Expressions Elements of Graphics CS324e Spring 2017 What are Regular Expressions? Describe a set of strings based on
More informationprompt Documentation Release Stefan Fischer
prompt Documentation Release 0.4.1 Stefan Fischer Nov 14, 2017 Contents: 1 Examples 1 2 API 3 3 Indices and tables 7 Python Module Index 9 i ii CHAPTER 1 Examples 1. Ask for a floating point number: >>>
More information$syntax_okay = podchecker($filepath, $outputpath, %options);
NAME Pod::Checker - check pod documents for syntax errors SYNOPSIS use Pod::Checker; $syntax_okay = podchecker($filepath, $outputpath, %options); my $checker = Pod::Checker->new(%options); $checker->parse_from_file($filepath,
More informationLecture Outline. COMP-421 Compiler Design. What is Lex? Lex Specification. ! Lexical Analyzer Lex. ! Lex Examples. Presented by Dr Ioanna Dionysiou
Lecture Outline COMP-421 Compiler Design! Lexical Analyzer Lex! Lex Examples Presented by Dr Ioanna Dionysiou Figures and part of the lecture notes taken from A compact guide to lex&yacc, epaperpress.com
More informationfpp: Fortran preprocessor March 9, 2009
fpp: Fortran preprocessor March 9, 2009 1 Name fpp the Fortran language preprocessor for the NAG Fortran compiler. 2 Usage fpp [option]... [input-file [output-file]] 3 Description fpp is the preprocessor
More informationContents. Jairo Pava COMS W4115 June 28, 2013 LEARN: Language Reference Manual
Jairo Pava COMS W4115 June 28, 2013 LEARN: Language Reference Manual Contents 1 Introduction...2 2 Lexical Conventions...2 3 Types...3 4 Syntax...3 5 Expressions...4 6 Declarations...8 7 Statements...9
More informationIntroduction to: Computers & Programming: Strings and Other Sequences
Introduction to: Computers & Programming: Strings and Other Sequences in Python Part I Adam Meyers New York University Outline What is a Data Structure? What is a Sequence? Sequences in Python All About
More informationCOMP 2718: Shell Scripts: Part 1. By: Dr. Andrew Vardy
COMP 2718: Shell Scripts: Part 1 By: Dr. Andrew Vardy Outline Shell Scripts: Part 1 Hello World Shebang! Example Project Introducing Variables Variable Names Variable Facts Arguments Exit Status Branching:
More informationL A TEX for Psychological Researchers
L A TEX for Psychological Researchers Lecture 2: Basics of the L A TEX language Sacha Epskamp University of Amsterdam Department of Psychological Methods 27-01-2015 The L A TEX process.tex pdfl A TEX.pdf
More informationAdvanced Algorithms and Computational Models (module A)
Advanced Algorithms and Computational Models (module A) Giacomo Fiumara giacomo.fiumara@unime.it 2014-2015 1 / 34 Python's built-in classes A class is immutable if each object of that class has a xed value
More informationIn this text box, type the name of the File Watcher. By default, IntelliJ IDEA suggests the name of the selected predefined template.
New Watcher Dialog File Settings File Watchers The dialog box opens when you click the Add or Edit button on the File Watchers page. Use the dialog box to create a project File Watcher based on a predefined
More information1 CS580W-01 Quiz 1 Solution
1 CS580W-01 Quiz 1 Solution Date: Wed Sep 26 2018 Max Points: 15 Important Reminder As per the course Academic Honesty Statement, cheating of any kind will minimally result in receiving an F letter grade
More informationGlossary. For Introduction to Programming Using Python By Y. Daniel Liang
Chapter 1 Glossary For Introduction to Programming Using Python By Y. Daniel Liang.py Python script file extension name. assembler A software used to translate assemblylanguage programs into machine code.
More informationTML Language Reference Manual
TML Language Reference Manual Jiabin Hu (jh3240) Akash Sharma (as4122) Shuai Sun (ss4088) Yan Zou (yz2437) Columbia University October 31, 2011 1 Contents 1 Introduction 4 2 Lexical Conventions 4 2.1 Character
More informationGraphQuil Language Reference Manual COMS W4115
GraphQuil Language Reference Manual COMS W4115 Steven Weiner (Systems Architect), Jon Paul (Manager), John Heizelman (Language Guru), Gemma Ragozzine (Tester) Chapter 1 - Introduction Chapter 2 - Types
More informationpython-unrar Documentation
python-unrar Documentation Release 0.3 Matias Bordese August 18, 2016 Contents 1 rarfile Work with RAR archives 3 1.1 RarFile Objects.............................................. 3 1.2 RarInfo Objects.............................................
More informationCGI Architecture Diagram. Web browser takes response from web server and displays either the received file or error message.
What is CGI? The Common Gateway Interface (CGI) is a set of standards that define how information is exchanged between the web server and a custom script. is a standard for external gateway programs to
More informationJava Overview An introduction to the Java Programming Language
Java Overview An introduction to the Java Programming Language Produced by: Eamonn de Leastar (edeleastar@wit.ie) Dr. Siobhan Drohan (sdrohan@wit.ie) Department of Computing and Mathematics http://www.wit.ie/
More information15-122: Principles of Imperative Computation, Fall 2015
15-122 Programming 5 Page 1 of 10 15-122: Principles of Imperative Computation, Fall 2015 Homework 5 Programming: Clac Due: Thursday, October 15, 2015 by 22:00 In this assignment, you will implement a
More informationPreparing Z specifications using LaTeX markup
Page 1 of 15 Preparing Z specifications using LaTeX markup /Tutorial guides This tutorial won t teach you how to write Z, but if you already have some idea on that, then it will show you how to mark-up
More informationGridLang: Grid Based Game Development Language Language Reference Manual. Programming Language and Translators - Spring 2017 Prof.
GridLang: Grid Based Game Development Language Language Reference Manual Programming Language and Translators - Spring 2017 Prof. Stephen Edwards Akshay Nagpal Dhruv Shekhawat Parth Panchmatia Sagar Damani
More informationUNIT - I. Introduction to C Programming. BY A. Vijay Bharath
UNIT - I Introduction to C Programming Introduction to C C was originally developed in the year 1970s by Dennis Ritchie at Bell Laboratories, Inc. C is a general-purpose programming language. It has been
More informationC++ Basics. Lecture 2 COP 3014 Spring January 8, 2018
C++ Basics Lecture 2 COP 3014 Spring 2018 January 8, 2018 Structure of a C++ Program Sequence of statements, typically grouped into functions. function: a subprogram. a section of a program performing
More information1 Lexical Considerations
Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science 6.035, Spring 2013 Handout Decaf Language Thursday, Feb 7 The project for the course is to write a compiler
More informationROOT Data Model Evolution. Lukasz Janyst, Rene Brun, Philippe Canal
ROOT Data Model Evolution Lukasz Janyst, Rene Brun, Philippe Canal Table of Contents 1. Introduction...3 1.1 Self description capabilities of the ROOT files...3 1.2 Streaming modes...3 1.3 Currently implemented
More informationIntroduction to Python Documentation
Introduction to Python Documentation Release v0.0.1 M.Faisal Junaid Butt August 18, 2015 Contents 1 Models 3 2 Auto Generated Documentation 5 3 Hello World Program Documentation 9 4 Practice 11 5 Indices
More informationOrg mode (La)TEX macros for HTML and L A TEX export
Org mode (La)TEX macros for HTML and L A TEX export Brian C. Wells September 15, 2016 Contents 1 Preliminary Macros 2 1.1 when-fmt............................. 2 1.2 preamble..............................
More informationGIS 4653/5653: Spatial Programming and GIS. More Python: Statements, Types, Functions, Modules, Classes
GIS 4653/5653: Spatial Programming and GIS More Python: Statements, Types, Functions, Modules, Classes Statement Syntax The if-elif-else statement Indentation and and colons are important Parentheses and
More informationtolerance Documentation
tolerance Documentation Release Alisue Apr 1, 217 Contents 1 tolerance 1 1.1 Features.................................................. 1 1.2 Installation................................................
More informationCS1622. Semantic Analysis. The Compiler So Far. Lecture 15 Semantic Analysis. How to build symbol tables How to use them to find
CS1622 Lecture 15 Semantic Analysis CS 1622 Lecture 15 1 Semantic Analysis How to build symbol tables How to use them to find multiply-declared and undeclared variables. How to perform type checking CS
More informationThe Compiler So Far. CSC 4181 Compiler Construction. Semantic Analysis. Beyond Syntax. Goals of a Semantic Analyzer.
The Compiler So Far CSC 4181 Compiler Construction Scanner - Lexical analysis Detects inputs with illegal tokens e.g.: main 5 (); Parser - Syntactic analysis Detects inputs with ill-formed parse trees
More informationSublimeLinter Documentation
SublimeLinter Documentation Release 4.0.0 The SublimeLinter Community Dec 18, 2018 User Documentation 1 Installation 3 2 Settings 5 2.1 Settings stack............................................... 5
More informationML 4 A Lexer for OCaml s Type System
ML 4 A Lexer for OCaml s Type System CS 421 Fall 2017 Revision 1.0 Assigned October 26, 2017 Due November 2, 2017 Extension November 4, 2017 1 Change Log 1.0 Initial Release. 2 Overview To complete this
More informationLOON. Language Reference Manual THE LANGUAGE OF OBJECT NOTATION. Kyle Hughes, Jack Ricci, Chelci Houston-Borroughs, Niles Christensen, Habin Lee
LOON THE LANGUAGE OF OBJECT NOTATION Language Reference Manual Kyle Hughes, Jack Ricci, Chelci Houston-Borroughs, Niles Christensen, Habin Lee October 2017 1 Contents 1 Introduction 3 2 Types 4 2.1 JSON............................................
More informationStarting Out with Java: From Control Structures Through Objects Sixth Edition
Starting Out with Java: From Control Structures Through Objects Sixth Edition Chapter 11 I/O File Input and Output Reentering data all the time could get tedious for the user. The data can be saved to
More informationThe newunicodechar package
The newunicodechar package nrico Gregorio nrico dot Gregorio at univr dot it April 8, 2018 1 Introduction When using Unicode input with L A TX it s not so uncommon to get an incomprehensible error message
More informationTouchstone File Format Specification
Touchstone File Format Specification Version 2. Touchstone File Format Specification Version 2. Ratified by the IBIS Open Forum April 24, 29 Copyright 29 by TechAmerica. This specification may be distributed
More information