This change aims to extract the major components from the plugin
file, and into more modular, single responsibility classes.
Introduces FileMapper, which provides an interface for building
the file name to path map, as well as searching for said files
Introduces EzLinksReplacer, which encompasses all non-mkdoc
specific functionality from plugin.py
Introduces a link scanner pattern, a simple chain of responsibility
for matching a link pattern, and extracting the links from that
link type. Allows for easily adding new supported link types.
All link patterns extract the same link information, which allows
all link types to funnel through the same processing, regardless of
how they were extracted.
Also removes the 'absolute' option, as I believe it should simply
always be true.
This change aims to extract the major components from the plugin file, and into more modular, single responsibility classes.
Introduces
FileMapper
, which provides an interface for building the file name to path map, as well as searching for said filesIntroduces
EzLinksReplacer
, which encompasses all non-mkdoc specific functionality from plugin.pyIntroduces a link scanner pattern, a simple chain of responsibility for matching a link pattern, and extracting the links from that link type. Allows for easily adding new supported link types.
All link patterns extract the same link information, which allows all link types to funnel through the same processing, regardless of how they were extracted.
Also removes the 'absolute' option, as I believe it should simply always be true.