diff --git a/lib/rouge/lexers/java.rb b/lib/rouge/lexers/java.rb index 22e1b6bc14..14b2a691ce 100644 --- a/lib/rouge/lexers/java.rb +++ b/lib/rouge/lexers/java.rb @@ -23,9 +23,9 @@ class Java < RegexLexer types = %w(boolean byte char double float int long short var void) - id = /[a-zA-Z_][a-zA-Z0-9_]*/ - const_name = /[A-Z][A-Z0-9_]*\b/ - class_name = /[A-Z][a-zA-Z0-9]*\b/ + id = /[[:alpha:]_][[:word:]]*/ + const_name = /[[:upper:]][[:upper:][:digit:]_]*\b/ + class_name = /[[:upper:]][[:alnum:]]*\b/ state :root do rule %r/[^\S\n]+/, Text diff --git a/spec/visual/samples/java b/spec/visual/samples/java index f4c4eb1906..bdee76e041 100644 --- a/spec/visual/samples/java +++ b/spec/visual/samples/java @@ -680,3 +680,7 @@ public class PlatformManagerImpl implements PlatformManager { } } + +// Permit Unicode characters in identifiers +getHauptadresse().setPLZ("91126"); +getHauptadresse().setStraßePostfach("Am Hundsacker 6");