code: def get_lexer(environment):
      """Return a lexer which is probably cached."""
      key = (
          environment.block_start_string,
          environment.block_end_string,
          environment.variable_start_string,
          environment.variable_end_string,
          environment.comment_start_string,
          environment.comment_end_string,
          environment.line_statement_prefix,
          environment.line_comment_prefix,
          environment.trim_blocks,
          environment.lstrip_blocks,
          environment.newline_sequence,
          environment.keep_trailing_newline,
      )
      lexer = _lexer_cache.get(key)
      if lexer is None:
          lexer = Lexer(environment)
          _lexer_cache[key] = lexer
      return lexer
  
imports: import re
  from ast import literal_eval
  from collections import deque
  from operator import itemgetter
  from ._compat import implements_iterator
  from ._compat import intern
  from ._compat import iteritems
  from ._compat import text_type
  from .exceptions import TemplateSyntaxError
  from .utils import LRUCache
label_desc: Use image node_id 6 for calling a global function with example usage: get_lexer(environment) and returns: lexer