aboutsummaryrefslogtreecommitdiffstats
path: root/markdown/util.py
diff options
context:
space:
mode:
authorToshio Kuratomi <toshio@fedoraproject.org>2010-07-05 22:53:31 -0400
committerToshio Kuratomi <toshio@fedoraproject.org>2010-07-05 22:53:31 -0400
commit2eb00c816c6dc31dbbec6c47f8c7ff70ed0785d2 (patch)
tree53024beda5d31143da2a2a0a2e81fa48ca29ba14 /markdown/util.py
parenta91f766c57d67cebbfc35020f89016ceb4358926 (diff)
downloadmarkdown-2eb00c816c6dc31dbbec6c47f8c7ff70ed0785d2.tar.gz
markdown-2eb00c816c6dc31dbbec6c47f8c7ff70ed0785d2.tar.bz2
markdown-2eb00c816c6dc31dbbec6c47f8c7ff70ed0785d2.zip
Rename misc.py to util.py at the request of upstream
Diffstat (limited to 'markdown/util.py')
-rw-r--r--markdown/util.py73
1 files changed, 73 insertions, 0 deletions
diff --git a/markdown/util.py b/markdown/util.py
new file mode 100644
index 0000000..9cdd234
--- /dev/null
+++ b/markdown/util.py
@@ -0,0 +1,73 @@
+# -*- coding: utf-8 -*-
+import re
+from misc_logging import CRITICAL
+
+import etree_loader
+
+
+"""
+CONSTANTS
+=============================================================================
+"""
+
+"""
+Constants you might want to modify
+-----------------------------------------------------------------------------
+"""
+
+# default logging level for command-line use
+COMMAND_LINE_LOGGING_LEVEL = CRITICAL
+TAB_LENGTH = 4 # expand tabs to this many spaces
+ENABLE_ATTRIBUTES = True # @id = xyz -> <... id="xyz">
+SMART_EMPHASIS = True # this_or_that does not become this<i>or</i>that
+DEFAULT_OUTPUT_FORMAT = 'xhtml1' # xhtml or html4 output
+HTML_REMOVED_TEXT = "[HTML_REMOVED]" # text used instead of HTML in safe mode
+BLOCK_LEVEL_ELEMENTS = re.compile("p|div|h[1-6]|blockquote|pre|table|dl|ol|ul"
+ "|script|noscript|form|fieldset|iframe|math"
+ "|ins|del|hr|hr/|style|li|dt|dd|thead|tbody"
+ "|tr|th|td")
+DOC_TAG = "div" # Element used to wrap document - later removed
+
+# Placeholders
+STX = u'\u0002' # Use STX ("Start of text") for start-of-placeholder
+ETX = u'\u0003' # Use ETX ("End of text") for end-of-placeholder
+INLINE_PLACEHOLDER_PREFIX = STX+"klzzwxh:"
+INLINE_PLACEHOLDER = INLINE_PLACEHOLDER_PREFIX + "%s" + ETX
+AMP_SUBSTITUTE = STX+"amp"+ETX
+
+
+"""
+Constants you probably do not need to change
+-----------------------------------------------------------------------------
+"""
+
+RTL_BIDI_RANGES = ( (u'\u0590', u'\u07FF'),
+ # Hebrew (0590-05FF), Arabic (0600-06FF),
+ # Syriac (0700-074F), Arabic supplement (0750-077F),
+ # Thaana (0780-07BF), Nko (07C0-07FF).
+ (u'\u2D30', u'\u2D7F'), # Tifinagh
+ )
+
+# Extensions should use "markdown.util.etree" instead of "etree" (or do `from
+# markdown.util import etree`). Do not import it by yourself.
+
+etree = etree_loader.importETree()
+
+"""
+AUXILIARY GLOBAL FUNCTIONS
+=============================================================================
+"""
+
+
+def isBlockLevel(tag):
+ """Check if the tag is a block level HTML tag."""
+ return BLOCK_LEVEL_ELEMENTS.match(tag)
+
+"""
+MISC AUXILIARY CLASSES
+=============================================================================
+"""
+
+class AtomicString(unicode):
+ """A string which should not be further processed."""
+ pass