# -*- coding: utf-8 -*- # module Rouge module Lexers class ShellSession < RegexLexer tag 'shell_session' title "Shell Session" desc 'A generic lexer for shell session and command line' aliases 'terminal', 'console' filenames '*.cap' state :root do rule /^([^ \n]*# )([^ \n]*)(.*(\n|$))/ do |m| token Name::Entity, m[1] token Name::Class, m[2] token Keyword::Variable, m[3] end rule /^([^ \n]*\$ )([^ \n]*)(.*(\n|$))/ do |m| token Text::Whitespace, m[1] token Name::Class, m[2] token Keyword::Variable, m[3] end rule /^<...>$/, Comment rule /.*\n/, Text end end end end ### tag function class label