Package translate :: Package misc :: Module quote

[hide private]
[frames] | no frames]

# Module quote

source code

String processing utilities for extracting strings with various kinds of delimiters

Functions | [hide private]

find_all(searchin, substr) Returns a list of locations where substr occurs in searchin locations are not allowed to overlap | source code

extract(source, startdelim, enddelim, escape=None, startinstring=False, allowreentry=True) Extracts a doublequote-delimited string from a string, allowing for backslash-escaping returns tuple of (quoted string with quotes, still in string at end). | source code

extractwithoutquotes(source, startdelim, enddelim, escape=None, startinstring=False, includeescapes=True, allowreentry=True) Extracts a doublequote-delimited string from a string, allowing for backslash-escaping includeescapes can also be a function that takes the whole escaped string and returns the replaced version. | source code

escapequotes(source, escapeescapes=0) Returns the same string, with double quotes escaped with backslash | source code

escapesinglequotes(source) Returns the same string, with single quotes doubled | source code

htmlentityencode(source) encodes source using HTML entities e.g. | source code

htmlentitydecode(source) decodes source using HTML entities e.g. | source code

javapropertiesencode(source) Encodes source in the escaped-unicode encoding used by Java .properties files | source code

mozillapropertiesencode(source) Encodes source in the escaped-unicode encoding used by Mozilla .properties files. | source code

escapecontrols(source) escape control characters in the given string | source code

propertiesdecode(source) Decodes source from the escaped-unicode encoding used by .properties files. | source code

quotestr(source, escapeescapes=0) Returns a doublequote-delimited quoted string, escaping double quotes with backslash. | source code

singlequotestr(source) Returns a doublequote-delimited quoted string, escaping single quotes with themselves. | source code

findend(string, substring) | source code

rstripeol(string) | source code

stripcomment(comment, startstring=`'``<!--``'`, endstring=`'``-->``'`) | source code

unstripcomment(comment, startstring=`'``<!--` `'`, endstring=`'``-->\n``'`) | source code

Variables | [hide private]

| propertyescapes = ``{``'``"``'``:` `'``"``'``,` `'``\'``'``:` `'``\'``'``,` `'``\\``'``:` `'``\\``'``,` `'``f``'``:` `'``\x0``...``
| controlchars = ``{``'``\t``'``:` `'``\\t``'``,` `'``\n``'``:` `'``\\n``'``,` `'``\x0c``'``:` `'``\\f``'``,` `'``\r``'``:``...``

Imports: logging, htmlentitydefs, accepts, returns

Function Details | [hide private]

### htmlentityencode(source)

source code

encodes source using HTML entities e.g. © -> &copy;

Decorators:
  - `@accepts(unicode)`
  - `@returns(unicode)`

### htmlentitydecode(source)

source code

decodes source using HTML entities e.g. &copy; -> ©

Decorators:
  - `@accepts(unicode)`
  - `@returns(unicode)`

### javapropertiesencode(source)

source code

Encodes source in the escaped-unicode encoding used by Java .properties files

Decorators:
  - `@accepts(unicode)`
  - `@returns(unicode)`

### mozillapropertiesencode(source)

source code

Encodes source in the escaped-unicode encoding used by Mozilla .properties files.

Decorators:
  - `@accepts(unicode)`
  - `@returns(unicode)`

### propertiesdecode(source)

source code

Decodes source from the escaped-unicode encoding used by .properties files.

Java uses Latin1 by default, and Mozilla uses UTF-8 by default.

Since the .decode("unicode-escape") routine decodes everything, and we don't want to we reimplemented the algorithm from Python Objects/unicode.c in Python and modify it to retain escaped control characters.

Decorators:
  - `@accepts(unicode)`
  - `@returns(unicode)`

Variables Details | [hide private]

### propertyescapes

Value:

      {'"': '"',
       '\'': '\'',
       '\\': '\\',
       'f': '\x0c',
       'n': '''
      ''',
       'r': '\r',
       't': '\t'}

### controlchars

Value:

      {'\t': '\\t', '\n': '\\n', '\x0c': '\\f', '\r': '\\r', '\\': '\\\\'}