D1619: highlight: eagerly discover plugin lexers while demandimport is off

durin42 (Augie Fackler) phabricator at mercurial-scm.org
Fri Dec 8 21:23:05 UTC 2017


durin42 created this revision.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.

REVISION SUMMARY
  Since highlight is only relevant for servers, it seems worthwhile to
  just trigger this eagerly, which avoids really weird traceback
  problems caused by demandimport messing with some of the lexer plugins.

REPOSITORY
  rHG Mercurial

REVISION DETAIL
  https://phab.mercurial-scm.org/D1619

AFFECTED FILES
  hgext/highlight/highlight.py

CHANGE DETAILS

diff --git a/hgext/highlight/highlight.py b/hgext/highlight/highlight.py
--- a/hgext/highlight/highlight.py
+++ b/hgext/highlight/highlight.py
@@ -22,8 +22,12 @@
     import pygments
     import pygments.formatters
     import pygments.lexers
+    import pygments.plugin
     import pygments.util
 
+    for unused in pygments.plugin.find_plugin_lexers():
+        pass
+
 highlight = pygments.highlight
 ClassNotFound = pygments.util.ClassNotFound
 guess_lexer = pygments.lexers.guess_lexer



To: durin42, #hg-reviewers
Cc: mercurial-devel


More information about the Mercurial-devel mailing list