diff options
author | goodger <goodger@929543f6-e4f2-0310-98a6-ba3bd3dd1d04> | 2004-01-23 02:35:13 +0000 |
---|---|---|
committer | goodger <goodger@929543f6-e4f2-0310-98a6-ba3bd3dd1d04> | 2004-01-23 02:35:13 +0000 |
commit | 01d56f433064b9af6de868d0acdc3beaae3fa0bb (patch) | |
tree | 1554312271166afa24a5c3bfbd78117243747e09 | |
parent | 569583e4dadbfbe9eaafb7d64b6096ecfa37d472 (diff) | |
download | docutils-01d56f433064b9af6de868d0acdc3beaae3fa0bb.tar.gz |
Added FilterMessages transform (removes system messages below the verbosity threshold)
git-svn-id: http://svn.code.sf.net/p/docutils/code/trunk@1811 929543f6-e4f2-0310-98a6-ba3bd3dd1d04
-rw-r--r-- | docutils/HISTORY.txt | 5 | ||||
-rw-r--r-- | docutils/docs/ref/transforms.txt | 4 | ||||
-rw-r--r-- | docutils/docutils/transforms/__init__.py | 3 | ||||
-rw-r--r-- | docutils/docutils/transforms/universal.py | 23 |
4 files changed, 33 insertions, 2 deletions
diff --git a/docutils/HISTORY.txt b/docutils/HISTORY.txt index bf35db11d..7fd37c1bc 100644 --- a/docutils/HISTORY.txt +++ b/docutils/HISTORY.txt @@ -186,6 +186,11 @@ Changes Since 0.3 * docutils/parsers/rst/languages/ru.py: Added to project; Russian mappings by Roman Suzi. +* docutils/transforms/universal.py: + + - Added FilterMessages transform (removes system messages below the + verbosity threshold). + * docutils/writers/html4css1.py: - Fixed unicode handling of attribute values (bug 760673). diff --git a/docutils/docs/ref/transforms.txt b/docutils/docs/ref/transforms.txt index 4c5fe135a..fa866487c 100644 --- a/docutils/docs/ref/transforms.txt +++ b/docutils/docs/ref/transforms.txt @@ -71,7 +71,9 @@ universal.FinalChecks Transformer 840 universal.Messages Transformer 860 -universal.TestMessages DocutilsTestSupport 890 +universal.FilterMessages Transformer 870 + +universal.TestMessages DocutilsTestSupport 880 misc.CallBack n/a 990 ============================== ============================ ======== diff --git a/docutils/docutils/transforms/__init__.py b/docutils/docutils/transforms/__init__.py index 24cc4771f..aa3e1b525 100644 --- a/docutils/docutils/transforms/__init__.py +++ b/docutils/docutils/transforms/__init__.py @@ -76,7 +76,8 @@ class Transformer(TransformSpec): default_transforms = (universal.Decorations, universal.FinalChecks, - universal.Messages) + universal.Messages, + universal.FilterMessages) """These transforms are applied to all document trees.""" def __init__(self, document): diff --git a/docutils/docutils/transforms/universal.py b/docutils/docutils/transforms/universal.py index 4523304f2..e7d1f150c 100644 --- a/docutils/docutils/transforms/universal.py +++ b/docutils/docutils/transforms/universal.py @@ -111,6 +111,29 @@ class Messages(Transform): self.document += section +class FilterMessages(Transform): + + """ + Remove system messages below verbosity threshold. + """ + + default_priority = 870 + + def apply(self): + visitor = SystemMessageFilterVisitor(self.document) + self.document.walk(visitor) + + +class SystemMessageFilterVisitor(nodes.SparseNodeVisitor): + + def unknown_visit(self, node): + pass + + def visit_system_message(self, node): + if node['level'] < self.document.reporter['writer'].report_level: + node.parent.remove(node) + + class TestMessages(Transform): """ |