@@ -327,7 +327,7 @@ def raw_markdown(self, value):
327327 # ----------------------------------
328328 # Hooks for other applications
329329 # ----------------------------------
330- def register_macro (self , items :dict ):
330+ def register_macros (self , items :dict ):
331331 """
332332 Register macros (hook for other plugins).
333333 These will be added last, and raise an exception if already present.
@@ -336,22 +336,25 @@ def register_macro(self, items:dict):
336336 # after on_config
337337 self ._macros
338338 register_items ('macro' , self .macros , items )
339+ self .variables ["macros" ].update (self .macros )
340+ self .env .globals .update (self .macros )
339341 except AttributeError :
340342 # before on_config: store for later
341- self ._add_macros += items
343+ self ._add_macros . update ( items )
342344
343345 def register_filters (self , items :dict ):
344346 """
345347 Register filters (hook for other plugins).
346348 These will be added last, and raise an exception if already present.
347349 """
348350 try :
349- # after on_config
350351 self ._filters
351352 register_items ('filter' , self .filters , items )
353+ self .variables ["filters" ].update (self .filters )
354+ self .env .filters .update (self .filters )
352355 except AttributeError :
353356 # before on_config: store for later
354- self ._add_filters += items
357+ self ._add_filters . update ( items )
355358
356359 def register_variables (self , items :dict ):
357360 """
@@ -364,7 +367,7 @@ def register_variables(self, items:dict):
364367 register_items ('variables' , self .variables , items )
365368 except AttributeError :
366369 # before on_config: store for later
367- self ._add_variables += items
370+ self ._add_variables . update ( items )
368371
369372 # ----------------------------------
370373 # Function lists, for later events
0 commit comments