@@ -643,33 +643,10 @@ def monkeypatch_man_writer() -> None:
643643 '''
644644 Monkeypatch the docutils man translator to be nicer
645645 '''
646- from docutils .nodes import Element , figure
647- from docutils .writers .manpage import Table , Translator
646+ from docutils .nodes import figure
647+ from docutils .writers .manpage import Translator
648648 from sphinx .writers .manpage import ManualPageTranslator
649649
650- # Generate nicer tables https://sourceforge.net/p/docutils/bugs/475/
651- class PatchedTable (Table ): # type: ignore
652- _options : list [str ]
653- def __init__ (self ) -> None :
654- super ().__init__ ()
655- self .needs_border_removal = self ._options == ['center' ]
656- if self .needs_border_removal :
657- self ._options = ['box' , 'center' ]
658-
659- def as_list (self ) -> list [str ]:
660- ans : list [str ] = super ().as_list ()
661- if self .needs_border_removal :
662- # remove side and top borders as we use box in self._options
663- ans [2 ] = ans [2 ][1 :]
664- a , b = ans [2 ].rpartition ('|' )[::2 ]
665- ans [2 ] = a + b
666- if ans [3 ] == '_\n ' :
667- del ans [3 ] # top border
668- del ans [- 2 ] # bottom border
669- return ans
670- def visit_table (self : ManualPageTranslator , node : object ) -> None :
671- setattr (self , '_active_table' , PatchedTable ())
672- setattr (ManualPageTranslator , 'visit_table' , visit_table )
673650
674651 # Improve header generation
675652 def header (self : ManualPageTranslator ) -> str :
@@ -686,10 +663,10 @@ def header(self: ManualPageTranslator) -> str:
686663
687664 setattr (ManualPageTranslator , 'header' , header )
688665
689- def visit_image (self : ManualPageTranslator , node : Element ) -> None :
666+ def visit_image (self : ManualPageTranslator , node : figure ) -> None :
690667 pass
691668
692- def depart_image (self : ManualPageTranslator , node : Element ) -> None :
669+ def depart_image (self : ManualPageTranslator , node : figure ) -> None :
693670 pass
694671
695672 def depart_figure (self : ManualPageTranslator , node : figure ) -> None :
@@ -700,10 +677,10 @@ def depart_figure(self: ManualPageTranslator, node: figure) -> None:
700677 setattr (ManualPageTranslator , 'depart_image' , depart_image )
701678 setattr (ManualPageTranslator , 'depart_figure' , depart_figure )
702679
703- orig_astext = Translator .astext
680+ orig_astext = Translator .astext # type: ignore
704681 def astext (self : Translator ) -> Any :
705682 b = []
706- for line in self .body :
683+ for line in self .body : # type: ignore
707684 if line .startswith ('.SH' ):
708685 x , y = line .split (' ' , 1 )
709686 parts = y .splitlines (keepends = True )
0 commit comments