mercurial/extensions.py
branchstable
changeset 49777 f4a363b25859
parent 49776 9d8757ddd0ab
child 50755 b9eb65a1ec14
child 50800 94506fc107b7
--- a/mercurial/extensions.py	Wed Dec 07 11:26:07 2022 -0500
+++ b/mercurial/extensions.py	Mon Dec 05 16:05:04 2022 -0500
@@ -841,6 +841,22 @@
     paths = _disabledpaths()
     if name in paths:
         return _disabledhelp(paths[name])
+    else:
+        try:
+            import hgext
+            from hgext import __index__  # pytype: disable=import-error
+
+            # The extensions are filesystem based, so either an error occurred
+            # or all are enabled.
+            if util.safehasattr(hgext, '__file__'):
+                return
+
+            if name in _order:  # enabled
+                return
+            else:
+                return gettext(__index__.docs.get(name))
+        except (ImportError, AttributeError):
+            pass
 
 
 def _walkcommand(node):