code: def abbr_role(
      typ, rawtext, text, lineno, inliner, options={}, content=[]
  ):
      text = utils.unescape(text)
      m = _abbr_re.search(text)
      if m is None:
          return [abbreviation(text, text)], []
      abbr = text[: m.start()].strip()
      expl = m.group(1)
      return [abbreviation(abbr, abbr, explanation=expl)], []
  
file_path: pelican/pelican/rstdirectives.py
imports: import re
  from docutils import nodes, utils
  from docutils.parsers.rst import Directive, directives, roles
  from pygments import highlight
  from pygments.formatters import HtmlFormatter
  from pygments.lexers import TextLexer, get_lexer_by_name
  import pelican.settings
label_desc: Use image node_id 1 for calling a global function with example usage: abbr_role(typ, rawtext, text, lineno, inliner, options, content) and returns: list,  list, list,  list