| `COM### Example R script for syntax highlighting`END`PLN |
| |
| `END`COM# This is a comment`END`PLN |
| |
| `END`COM## Valid names`END`PLN |
| abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUV0123456789._a `END`PUN<-`END`PLN `END`LITNULL`END`PLN |
| .foo_ `END`PUN<-`END`PLN `END`LITNULL`END`PLN |
| ._foo `END`PUN<-`END`PLN `END`LITNULL`END`PLN |
| |
| `END`COM## Invalid names`END`PLN |
| `END`LIT0`END`PLNabc `END`PUN<-`END`PLN `END`LITNULL`END`PLN |
| `END`LIT.0`END`PLNabc `END`PUN<-`END`PLN `END`LITNULL`END`PLN |
| abc`END`PUN+`END`PLNcde `END`PUN<-`END`PLN `END`LITNULL`END`PLN |
| |
| `END`COM## Reserved Words`END`PLN |
| `END`LITNA`END`PLN |
| `END`LITNA_integer_`END`PLN |
| `END`LITNA_real_`END`PLN |
| `END`LITNA_character_`END`PLN |
| `END`LITNA_complex_`END`PLN |
| `END`LITNULL`END`PLN |
| `END`LITNaN`END`PLN |
| `END`LITInf`END`PLN |
| `END`COM## Not reserved`END`PLN |
| NULLa `END`PUN<-`END`PLN `END`LITNULL`END`PLN |
| NULL1 `END`PUN<-`END`PLN `END`LITNULL`END`PLN |
| NULL. `END`PUN<-`END`PLN `END`LITNULL`END`PLN |
| NA_foo_ `END`PUN<-`END`PLN `END`LITNULL`END`PLN |
| |
| `END`COM## Numbers`END`PLN |
| `END`LIT12345678901`END`PLN |
| `END`LIT123456.78901`END`PLN |
| `END`LIT123e3`END`PLN |
| `END`LIT123E3`END`PLN |
| `END`LIT1.23e-3`END`PLN |
| `END`LIT1.23e3`END`PLN |
| `END`LIT1.23e-3`END`PLN |
| `END`COM## integer constants`END`PLN |
| `END`LIT123L`END`PLN |
| `END`LIT1.23L`END`PLN |
| `END`COM## imaginary numbers`END`PLN |
| `END`LIT123i`END`PLN |
| `END`LIT-123i`END`PLN |
| `END`LIT123e4i`END`PLN |
| `END`LIT123e-4i`END`PLN |
| `END`COM## Hex numbers`END`PLN |
| `END`LIT0xabcdefABCDEF01234`END`PLN |
| `END`LIT0xabcp123`END`PLN |
| `END`LIT0xabcP123`END`PLN |
| `END`COM## Not hex`END`PLN |
| `END`LIT0`END`PLNxg |
| |
| `END`COM## Special operators %xyz%`END`PLN |
| `END`COM## %xyz%`END`PLN |
| `END`LIT1`END`PLN `END`PUN%%`END`PLN `END`LIT2`END`PLN |
| diag`END`PUN(`END`LIT2`END`PUN)`END`PLN `END`PUN%*%`END`PLN diag`END`PUN(`END`LIT2`END`PUN)`END`PLN |
| `END`LIT1`END`PLN `END`PUN%/%`END`PLN `END`LIT2`END`PLN |
| `END`LIT1`END`PLN `END`PUN%in%`END`PLN `END`LIT1`END`PUN:`END`LIT10`END`PLN |
| diag`END`PUN(`END`LIT2`END`PUN)`END`PLN `END`PUN%o%`END`PLN diag`END`PUN(`END`LIT2`END`PUN)`END`PLN |
| diag`END`PUN(`END`LIT2`END`PUN)`END`PLN `END`PUN%x%`END`PLN diag`END`PUN(`END`LIT2`END`PUN)`END`PLN |
| `END`STR`%foo bar%``END`PLN `END`PUN<-`END`PLN `END`KWDfunction`END`PUN(`END`PLNx`END`PUN,`END`PLN y`END`PUN)`END`PLN x `END`PUN+`END`PLN y |
| `END`LIT1`END`PLN `END`PUN%foo bar%`END`PLN `END`LIT2`END`PLN |
| |
| `END`COM## Control Structures (3.2) and Function`END`PLN |
| `END`COM## if, else`END`PLN |
| `END`KWDif`END`PLN `END`PUN(`END`LITTRUE`END`PUN)`END`PLN print`END`PUN(`END`STR"foo"`END`PUN)`END`PLN `END`KWDelse`END`PLN print`END`PUN(`END`STR"bar"`END`PUN)`END`PLN |
| `END`COM## For, in`END`PLN |
| `END`KWDfor`END`PUN(`END`PLNi `END`KWDin`END`PLN `END`LIT1`END`PUN:`END`LIT5`END`PUN)`END`PLN `END`PUN{`END`PLN |
| print`END`PUN(`END`PLNi`END`PUN)`END`PLN |
| `END`PUN}`END`PLN |
| `END`COM## While, break`END`PLN |
| i `END`PUN<-`END`PLN `END`LIT1`END`PLN |
| `END`KWDwhile`END`PLN `END`PUN(`END`LITTRUE`END`PUN)`END`PLN `END`PUN{`END`PLN |
| i `END`PUN<-`END`PLN i `END`PUN+`END`PLN `END`LIT1`END`PLN |
| `END`KWDif`END`PLN `END`PUN(`END`PLNi `END`PUN>`END`PLN `END`LIT3`END`PUN)`END`PLN `END`KWDbreak`END`PLN |
| `END`PUN}`END`PLN |
| `END`COM## Repeat`END`PLN |
| `END`KWDrepeat`END`PLN `END`PUN{`END`LIT1+1`END`PUN}`END`PLN |
| `END`COM## Switch`END`PLN |
| x `END`PUN<-`END`PLN `END`LIT3`END`PLN |
| `END`KWDswitch`END`PUN(`END`PLNx`END`PUN,`END`PLN `END`LIT2+2`END`PUN,`END`PLN mean`END`PUN(`END`LIT1`END`PUN:`END`LIT10`END`PUN),`END`PLN rnorm`END`PUN(`END`LIT5`END`PUN))`END`PLN |
| `END`COM## Function, dot-dot-dot, return`END`PLN |
| foo `END`PUN<-`END`PLN `END`KWDfunction`END`PUN(`END`LIT...`END`PUN)`END`PLN `END`PUN{`END`PLN |
| `END`KWDreturn`END`PUN(`END`PLNsum`END`PUN(`END`LIT...`END`PUN))`END`PLN |
| `END`PUN}`END`PLN |
| `END`COM# Not keywords`END`PLN |
| functiona `END`PUN<-`END`PLN `END`LIT2`END`PLN `END`PUN+`END`PLN `END`LIT2`END`PLN |
| function. `END`PUN<-`END`PLN `END`LIT2`END`PLN `END`PUN+`END`PLN `END`LIT2`END`PLN |
| function1 `END`PUN<-`END`PLN `END`LIT2`END`PLN `END`PUN+`END`PLN `END`LIT2`END`PLN |
| |
| |
| `END`COM## Grouping Tokens 10.3.7`END`PLN |
| `END`COM## Parentheses`END`PLN |
| `END`LIT1`END`PLN `END`PUN+`END`PLN `END`PUN(`END`LIT2`END`PLN `END`PUN+`END`PLN `END`LIT3`END`PUN)`END`PLN |
| `END`COM## brackets`END`PLN |
| foo `END`PUN<-`END`PLN `END`KWDfunction`END`PUN(`END`PLNa`END`PUN)`END`PLN `END`PUN{`END`PLN |
| a `END`PUN+`END`PLN `END`LIT1`END`PLN |
| `END`PUN}`END`PLN |
| |
| `END`COM## Indexing 10.3.8`END`PLN |
| `END`COM## []`END`PLN |
| bar `END`PUN<-`END`PLN `END`LIT1`END`PUN:`END`LIT10`END`PLN |
| bar`END`PUN[`END`LIT3`END`PUN]`END`PLN |
| `END`COM## [[]]`END`PLN |
| foo `END`PUN<-`END`PLN list`END`PUN(`END`PLNa`END`PUN=`END`LIT1`END`PUN,`END`PLN b`END`PUN=`END`LIT2`END`PUN,`END`PLN c`END`PUN=`END`LIT3`END`PUN)`END`PLN |
| foo`END`PUN[[`END`STR"a"`END`PUN]]`END`PLN |
| `END`COM## $`END`PLN |
| foo`END`PUN$`END`PLNa |
| foo`END`PUN$`END`STR"a"`END`PLN |
| |
| `END`COM## Operators`END`PLN |
| `END`LIT2`END`PLN `END`PUN-`END`PLN `END`LIT2`END`PLN |
| `END`LIT2`END`PLN `END`PUN+`END`PLN `END`LIT2`END`PLN |
| `END`LIT2`END`PLN `END`PUN~`END`PLN `END`LIT2`END`PLN |
| `END`PUN!`END`PLN `END`LITTRUE`END`PLN |
| `END`PUN?`END`STR"help"`END`PLN |
| `END`LIT1`END`PUN:`END`LIT2`END`PLN |
| `END`LIT2`END`PLN `END`PUN*`END`PLN `END`LIT2`END`PLN |
| `END`LIT2`END`PLN `END`PUN/`END`PLN `END`LIT2`END`PLN |
| `END`LIT2`END`PUN^`END`LIT2`END`PLN |
| `END`LIT2`END`PLN `END`PUN<`END`PLN `END`LIT2`END`PLN |
| `END`LIT2`END`PLN `END`PUN>`END`PLN `END`LIT2`END`PLN |
| `END`LIT2`END`PLN `END`PUN==`END`PLN `END`LIT2`END`PLN |
| `END`LIT2`END`PLN `END`PUN>=`END`PLN `END`LIT2`END`PLN |
| `END`LIT2`END`PLN `END`PUN<=`END`PLN `END`LIT2`END`PLN |
| `END`LIT2`END`PLN `END`PUN!=`END`PLN `END`LIT2`END`PLN |
| `END`LITTRUE`END`PLN `END`PUN&`END`PLN `END`LITFALSE`END`PLN |
| `END`LITTRUE`END`PLN `END`PUN&&`END`PLN `END`LITFALSE`END`PLN |
| `END`LITTRUE`END`PLN `END`PUN|`END`PLN `END`LITFALSE`END`PLN |
| `END`LITTRUE`END`PLN `END`PUN||`END`PLN `END`LITFALSE`END`PLN |
| foo `END`PUN<-`END`PLN `END`LIT2`END`PLN `END`PUN+`END`PLN `END`LIT2`END`PLN |
| foo `END`PUN=`END`PLN `END`LIT2`END`PLN `END`PUN+`END`PLN `END`LIT2`END`PLN |
| `END`LIT2`END`PLN `END`PUN+`END`PLN `END`LIT2`END`PLN `END`PUN->`END`PLN foo |
| foo `END`PUN<<-`END`PLN `END`LIT2`END`PLN `END`PUN+`END`PLN `END`LIT2`END`PLN |
| `END`LIT2`END`PLN `END`PUN+`END`PLN `END`LIT2`END`PLN `END`PUN->>`END`PLN foo |
| base`END`PUN:::`END`PLNsum |
| base`END`PUN::`END`PLNsum |
| |
| `END`COM## Strings`END`PLN |
| foo `END`PUN<-`END`PLN `END`STR"hello, world!"`END`PLN |
| foo `END`PUN<-`END`PLN `END`STR'hello, world!'`END`PLN |
| foo `END`PUN<-`END`PLN `END`STR"Hello, 'world!"`END`PLN |
| foo `END`PUN<-`END`PLN `END`STR'Hello, "world!'`END`PLN |
| foo `END`PUN<-`END`PLN `END`STR'Hello, \'world!\''`END`PLN |
| foo `END`PUN<-`END`PLN `END`STR"Hello, \"world!\""`END`PLN |
| foo `END`PUN<-`END`PLN `END`STR"Hello, |
| world!"`END`PLN |
| foo `END`PUN<-`END`PLN `END`STR'Hello, |
| world!'`END`PLN |
| |
| `END`COM## Backtick strings`END`PLN |
| `END`STR`foo123 +!"bar'baz``END`PLN `END`PUN<-`END`PLN `END`LIT2`END`PLN `END`PUN+`END`PLN `END`LIT2`END' |