Qucs-S S-parameter Viewer & RF Synthesis Tools
Loading...
Searching...
No Matches
Functions | Variables
docutils.utils.punctuation_chars Namespace Reference

Functions

 match_chars (c1, c2)
 

Variables

tuple openers
 
tuple closers
 
tuple delimiters
 
str closing_delimiters = r'\\.,;!?'
 
dict quote_pairs
 

Detailed Description

Docutils character category patterns.

   Patterns for the implementation of the `inline markup recognition rules`_
   in the reStructuredText parser `docutils.parsers.rst.states.py` based
   on Unicode character categories.
   The patterns are used inside ``[ ]`` in regular expressions.

   Rule (5) requires determination of matching open/close pairs. However, the
   pairing of open/close quotes is ambiguous due to  different typographic
   conventions in different languages. The ``quote_pairs`` function tests
   whether two characters form an open/close pair.

   The patterns are generated by
   ``docutils/tools/dev/generate_punctuation_chars.py`` to  prevent dependence
   on the Python version and avoid the time-consuming generation with every
   Docutils run. See there for motives and implementation details.

   The category of some characters changed with the development of the
   Unicode standard. The current lists are generated with the help of the
   "unicodedata" module of Python 2.7.13 (based on Unicode version 5.2.0).

   .. _inline markup recognition rules:
      https://docutils.sourceforge.io/docs/ref/rst/restructuredtext.html
      #inline-markup-recognition-rules

Function Documentation

◆ match_chars()

docutils.utils.punctuation_chars.match_chars (   c1,
  c2 
)
Test whether `c1` and `c2` are a matching open/close character pair.

Variable Documentation

◆ closers

tuple docutils.utils.punctuation_chars.closers
Initial value:
1= (
2 '"\')>\\]}\u0f3b\u0f3d\u169c\u2046\u207e\u208e\u232a\u2769'
3 '\u276b\u276d\u276f\u2771\u2773\u2775\u27c6\u27e7\u27e9\u27eb'
4 '\u27ed\u27ef\u2984\u2986\u2988\u298a\u298c\u298e\u2990\u2992'
5 '\u2994\u2996\u2998\u29d9\u29db\u29fd\u2e23\u2e25\u2e27\u2e29'
6 '\u3009\u300b\u300d\u300f\u3011\u3015\u3017\u3019\u301b\u301e'
7 '\u301f\ufd3f\ufe18\ufe36\ufe38\ufe3a\ufe3c\ufe3e\ufe40\ufe42'
8 '\ufe44\ufe48\ufe5a\ufe5c\ufe5e\uff09\uff3d\uff5d\uff60\uff63'
9 '\xbb\u2019\u201d\u203a\u2e03\u2e05\u2e0a\u2e0d\u2e1d\u2e21'
10 '\u201b\u201f\xab\u2018\u201c\u2039\u2e02\u2e04\u2e09\u2e0c'
11 '\u2e1c\u2e20\u201a\u201e'
12 )

◆ delimiters

tuple docutils.utils.punctuation_chars.delimiters
Initial value:
1= (
2 '\\-/:\u058a\xa1\xb7\xbf\u037e\u0387\u055a-\u055f\u0589'
3 '\u05be\u05c0\u05c3\u05c6\u05f3\u05f4\u0609\u060a\u060c'
4 '\u060d\u061b\u061e\u061f\u066a-\u066d\u06d4\u0700-\u070d'
5 '\u07f7-\u07f9\u0830-\u083e\u0964\u0965\u0970\u0df4\u0e4f'
6 '\u0e5a\u0e5b\u0f04-\u0f12\u0f85\u0fd0-\u0fd4\u104a-\u104f'
7 '\u10fb\u1361-\u1368\u1400\u166d\u166e\u16eb-\u16ed\u1735'
8 '\u1736\u17d4-\u17d6\u17d8-\u17da\u1800-\u180a\u1944\u1945'
9 '\u19de\u19df\u1a1e\u1a1f\u1aa0-\u1aa6\u1aa8-\u1aad\u1b5a-'
10 '\u1b60\u1c3b-\u1c3f\u1c7e\u1c7f\u1cd3\u2010-\u2017\u2020-'
11 '\u2027\u2030-\u2038\u203b-\u203e\u2041-\u2043\u2047-'
12 '\u2051\u2053\u2055-\u205e\u2cf9-\u2cfc\u2cfe\u2cff\u2e00'
13 '\u2e01\u2e06-\u2e08\u2e0b\u2e0e-\u2e1b\u2e1e\u2e1f\u2e2a-'
14 '\u2e2e\u2e30\u2e31\u3001-\u3003\u301c\u3030\u303d\u30a0'
15 '\u30fb\ua4fe\ua4ff\ua60d-\ua60f\ua673\ua67e\ua6f2-\ua6f7'
16 '\ua874-\ua877\ua8ce\ua8cf\ua8f8-\ua8fa\ua92e\ua92f\ua95f'
17 '\ua9c1-\ua9cd\ua9de\ua9df\uaa5c-\uaa5f\uaade\uaadf\uabeb'
18 '\ufe10-\ufe16\ufe19\ufe30-\ufe32\ufe45\ufe46\ufe49-\ufe4c'
19 '\ufe50-\ufe52\ufe54-\ufe58\ufe5f-\ufe61\ufe63\ufe68\ufe6a'
20 '\ufe6b\uff01-\uff03\uff05-\uff07\uff0a\uff0c-\uff0f\uff1a'
21 '\uff1b\uff1f\uff20\uff3c\uff61\uff64\uff65'
22 '\U00010100\U00010101\U0001039f\U000103d0\U00010857'
23 '\U0001091f\U0001093f\U00010a50-\U00010a58\U00010a7f'
24 '\U00010b39-\U00010b3f\U000110bb\U000110bc\U000110be-'
25 '\U000110c1\U00012470-\U00012473'
26 )

◆ openers

tuple docutils.utils.punctuation_chars.openers
Initial value:
1= (
2 '"\'(<\\[{\u0f3a\u0f3c\u169b\u2045\u207d\u208d\u2329\u2768'
3 '\u276a\u276c\u276e\u2770\u2772\u2774\u27c5\u27e6\u27e8\u27ea'
4 '\u27ec\u27ee\u2983\u2985\u2987\u2989\u298b\u298d\u298f\u2991'
5 '\u2993\u2995\u2997\u29d8\u29da\u29fc\u2e22\u2e24\u2e26\u2e28'
6 '\u3008\u300a\u300c\u300e\u3010\u3014\u3016\u3018\u301a\u301d'
7 '\u301d\ufd3e\ufe17\ufe35\ufe37\ufe39\ufe3b\ufe3d\ufe3f\ufe41'
8 '\ufe43\ufe47\ufe59\ufe5b\ufe5d\uff08\uff3b\uff5b\uff5f\uff62'
9 '\xab\u2018\u201c\u2039\u2e02\u2e04\u2e09\u2e0c\u2e1c\u2e20'
10 '\u201a\u201e\xbb\u2019\u201d\u203a\u2e03\u2e05\u2e0a\u2e0d'
11 '\u2e1d\u2e21\u201b\u201f'
12 )

◆ quote_pairs

dict docutils.utils.punctuation_chars.quote_pairs
Initial value:
1= {
2 # open char: matching closing characters # use case
3 '\xbb': '\xbb', # » » Swedish
4 '\u2018': '\u201a', # ‘ ‚ Albanian/Greek/Turkish
5 '\u2019': '\u2019', # ’ ’ Swedish
6 '\u201a': '\u2018\u2019', # ‚ ‘ German, ‚ ’ Polish
7 '\u201c': '\u201e', # “ „ Albanian/Greek/Turkish
8 '\u201e': '\u201c\u201d', # „ “ German, „ ” Polish
9 '\u201d': '\u201d', # ” ” Swedish
10 '\u203a': '\u203a', # › › Swedish
11 }