Sha256: 858eadaa84a075747c5c71a91a2781c65093dbfc0515a0f328396148643b841f
Contents?: true
Size: 1.07 KB
Versions: 4
Compression:
Stored size: 1.07 KB
Contents
# frozen_string_literal: true module Rouge module Lexers class Plist < RegexLexer desc 'plist' tag 'plist' aliases 'plist' filenames *%w(*.plist *.pbxproj) mimetypes 'text/x-plist', 'application/x-plist' state :whitespace do rule /\s+/, Text::Whitespace end state :root do rule %r{//.*$}, Comment rule %r{/\*.+?\*/}m, Comment mixin :whitespace rule /{/, Punctuation, :dictionary rule /\(/, Punctuation, :array rule /"([^"\\]|\\.)*"/, Literal::String::Double rule /'([^'\\]|\\.)*'/, Literal::String::Single rule /</, Punctuation, :data rule %r{[\w_$/:.-]+}, Literal end state :dictionary do mixin :root rule /[=;]/, Punctuation rule /}/, Punctuation, :pop! end state :array do mixin :root rule /[,]/, Punctuation rule /\)/, Punctuation, :pop! end state :data do rule /[\h\s]+/, Literal::Number::Hex rule />/, Punctuation, :pop! end end end end
Version data entries
4 entries across 4 versions & 2 rubygems
Version | Path |
---|---|
rouge-3.4.1 | lib/rouge/lexers/plist.rb |
rouge-3.4.0 | lib/rouge/lexers/plist.rb |
rouge-alda-3.3.0 | lib/rouge/lexers/plist.rb |
rouge-3.3.0 | lib/rouge/lexers/plist.rb |