class_docstr: Class that implements a lexer for a given environment. Automatically
  created by the environment class, usually you don't have to do that.
  
  Note that the lexer is not automatically bound to an environment.
  Multiple environments can share the same lexer.
class_docstr_tok: ["Class","that","implements","a","lexer","for","a","given","environment",".","Automatically","created","by","the","environment","class",",","usually","you","do","n't","have","to","do","that",".","Note","that","the","lexer","is","not","automatically","bound","to","an","environment",".","Multiple","environments","can","share","the","same","lexer","."]
docstr: Replace all newlines with the configured sequence in strings
  and template data.
docstr_tok: ["Replace","all","newlines","with","the","configured","sequence","in","strings","and","template","data","."]
code: def _normalize_newlines(self, value: str) -> str:
      """Replace all newlines with the configured sequence in strings
      and template data.
      """
      return newline_re.sub(self.newline_sequence, value)
  
imports: import re
  import typing
  from ast import literal_eval
  from collections import deque
  from sys import intern
  from ._identifier import pattern
  from .exceptions import TemplateSyntaxError
  from .utils import LRUCache
label_desc: Use image node_id 2 for calling the Lexer obj's underlying member method code with example usage: obj._normalize_newlines(value) and returns: newline_re