| # Copyright (C) 2003-2009 The R Core Team |
| |
| #### --- Hershey Vector Fonts --- |
| |
| require(grDevices); require(graphics) |
| |
| ###### |
| # create tables of vector font functionality |
| ###### |
| make.table <- function(nr, nc) { |
| savepar <- par(mar=rep(0, 4), pty="s") |
| plot(c(0, nc*2 + 1), c(0, -(nr + 1)), |
| type="n", xlab="", ylab="", axes=FALSE) |
| invisible(savepar) |
| } |
| |
| get.r <- function(i, nr) i %% nr + 1 |
| get.c <- function(i, nr) i %/% nr + 1 |
| |
| draw.title <- function(title, i = 0, nr, nc) { |
| r <- get.r(i, nr) |
| c <- get.c(i, nr) |
| text((nc*2 + 1)/2, 0, title, font=2) |
| } |
| |
| draw.sample.cell <- function(typeface, fontindex, string, i, nr) { |
| r <- get.r(i, nr) |
| c <- get.c(i, nr) |
| text(2*(c - 1) + 1, -r, paste(typeface, fontindex)) |
| text(2*c, -r, string, vfont=c(typeface, fontindex), cex=1.5) |
| rect(2*(c - 1) + .5, -(r - .5), 2*c + .5, -(r + .5), border="grey") |
| } |
| |
| draw.vf.cell <- function(typeface, fontindex, string, i, nr, raw.string=NULL) { |
| r <- get.r(i, nr) |
| c <- get.c(i, nr) |
| if (is.null(raw.string)) |
| raw.string <- paste("\\", string, sep="") |
| text(2*(c - 1) + 1, -r, raw.string, col="grey") |
| text(2*c, -r, string, vfont=c(typeface, fontindex)) |
| rect(2*(c - 1) + .5, -(r - .5), (2*c + .5), -(r + .5), border="grey") |
| } |
| |
| nr <- 23 |
| nc <- 1 |
| oldpar <- make.table(nr, nc) |
| i <- 0 |
| draw.title("Sample 'a' for each available font", i, nr, nc) |
| draw.sample.cell("serif", "plain", "a", i, nr); i <- i + 1 |
| draw.sample.cell("serif", "italic", "a", i, nr); i <- i + 1 |
| draw.sample.cell("serif", "bold", "a", i, nr); i <- i + 1 |
| draw.sample.cell("serif", "bold italic", "a", i, nr); i <- i + 1 |
| draw.sample.cell("serif", "cyrillic", "\301", i, nr); i <- i + 1 |
| draw.sample.cell("serif", "oblique cyrillic", "\301", i, nr); i <- i + 1 |
| draw.sample.cell("serif", "EUC", "a", i, nr); i <- i + 1 |
| draw.sample.cell("sans serif", "plain", "a", i, nr); i <- i + 1 |
| draw.sample.cell("sans serif", "italic", "a", i, nr); i <- i + 1 |
| draw.sample.cell("sans serif", "bold", "a", i, nr); i <- i + 1 |
| draw.sample.cell("sans serif", "bold italic", "a", i, nr); i <- i + 1 |
| draw.sample.cell("script", "plain", "a", i, nr); i <- i + 1 |
| draw.sample.cell("script", "italic", "a", i, nr); i <- i + 1 |
| draw.sample.cell("script", "bold", "a", i, nr); i <- i + 1 |
| draw.sample.cell("gothic english", "plain", "a", i, nr); i <- i + 1 |
| draw.sample.cell("gothic german", "plain", "a", i, nr); i <- i + 1 |
| draw.sample.cell("gothic italian", "plain", "a", i, nr); i <- i + 1 |
| draw.sample.cell("serif symbol", "plain", "a", i, nr); i <- i + 1 |
| draw.sample.cell("serif symbol", "italic", "a", i, nr); i <- i + 1 |
| draw.sample.cell("serif symbol", "bold", "a", i, nr); i <- i + 1 |
| draw.sample.cell("serif symbol", "bold italic", "a", i, nr); i <- i + 1 |
| draw.sample.cell("sans serif symbol", "plain", "a", i, nr); i <- i + 1 |
| draw.sample.cell("sans serif symbol", "italic", "a", i, nr); i <- i + 1 |
| |
| nr <- 25 |
| nc <- 6 |
| tf <- "serif" |
| fi <- "plain" |
| make.table(nr, nc) |
| i <- 0 |
| draw.title("Symbol (incl. Greek) Escape Sequences", i, nr, nc) |
| ## Greek alphabet in order |
| draw.vf.cell(tf, fi, "\\*A", i, nr); i<-i+1; { "Alpha"} |
| draw.vf.cell(tf, fi, "\\*B", i, nr); i<-i+1; { "Beta"} |
| draw.vf.cell(tf, fi, "\\*G", i, nr); i<-i+1; { "Gamma"} |
| draw.vf.cell(tf, fi, "\\*D", i, nr); i<-i+1; { "Delta"} |
| draw.vf.cell(tf, fi, "\\*E", i, nr); i<-i+1; { "Epsilon"} |
| draw.vf.cell(tf, fi, "\\*Z", i, nr); i<-i+1; { "Zeta"} |
| draw.vf.cell(tf, fi, "\\*Y", i, nr); i<-i+1; { "Eta"} |
| draw.vf.cell(tf, fi, "\\*H", i, nr); i<-i+1; { "Theta"} |
| draw.vf.cell(tf, fi, "\\*I", i, nr); i<-i+1; { "Iota"} |
| draw.vf.cell(tf, fi, "\\*K", i, nr); i<-i+1; { "Kappa"} |
| draw.vf.cell(tf, fi, "\\*L", i, nr); i<-i+1; { "Lambda"} |
| draw.vf.cell(tf, fi, "\\*M", i, nr); i<-i+1; { "Mu"} |
| draw.vf.cell(tf, fi, "\\*N", i, nr); i<-i+1; { "Nu"} |
| draw.vf.cell(tf, fi, "\\*C", i, nr); i<-i+1; { "Xi"} |
| draw.vf.cell(tf, fi, "\\*O", i, nr); i<-i+1; { "Omicron"} |
| draw.vf.cell(tf, fi, "\\*P", i, nr); i<-i+1; { "Pi"} |
| draw.vf.cell(tf, fi, "\\*R", i, nr); i<-i+1; { "Rho"} |
| draw.vf.cell(tf, fi, "\\*S", i, nr); i<-i+1; { "Sigma"} |
| draw.vf.cell(tf, fi, "\\*T", i, nr); i<-i+1; { "Tau"} |
| draw.vf.cell(tf, fi, "\\*U", i, nr); i<-i+1; { "Upsilon"} |
| draw.vf.cell(tf, fi, "\\+U", i, nr); i<-i+1; { "Upsilon1"} |
| draw.vf.cell(tf, fi, "\\*F", i, nr); i<-i+1; { "Phi"} |
| draw.vf.cell(tf, fi, "\\*X", i, nr); i<-i+1; { "Chi"} |
| draw.vf.cell(tf, fi, "\\*Q", i, nr); i<-i+1; { "Psi"} |
| draw.vf.cell(tf, fi, "\\*W", i, nr); i<-i+1; { "Omega"} |
| # |
| draw.vf.cell(tf, fi, "\\*a", i, nr); i<-i+1; { "alpha"} |
| draw.vf.cell(tf, fi, "\\*b", i, nr); i<-i+1; { "beta"} |
| draw.vf.cell(tf, fi, "\\*g", i, nr); i<-i+1; { "gamma"} |
| draw.vf.cell(tf, fi, "\\*d", i, nr); i<-i+1; { "delta"} |
| draw.vf.cell(tf, fi, "\\*e", i, nr); i<-i+1; { "epsilon"} |
| draw.vf.cell(tf, fi, "\\*z", i, nr); i<-i+1; { "zeta"} |
| draw.vf.cell(tf, fi, "\\*y", i, nr); i<-i+1; { "eta"} |
| draw.vf.cell(tf, fi, "\\*h", i, nr); i<-i+1; { "theta"} |
| draw.vf.cell(tf, fi, "\\+h", i, nr); i<-i+1; { "theta1"} |
| draw.vf.cell(tf, fi, "\\*i", i, nr); i<-i+1; { "iota"} |
| draw.vf.cell(tf, fi, "\\*k", i, nr); i<-i+1; { "kappa"} |
| draw.vf.cell(tf, fi, "\\*l", i, nr); i<-i+1; { "lambda"} |
| draw.vf.cell(tf, fi, "\\*m", i, nr); i<-i+1; { "mu"} |
| draw.vf.cell(tf, fi, "\\*n", i, nr); i<-i+1; { "nu"} |
| draw.vf.cell(tf, fi, "\\*c", i, nr); i<-i+1; { "xi"} |
| draw.vf.cell(tf, fi, "\\*o", i, nr); i<-i+1; { "omicron"} |
| draw.vf.cell(tf, fi, "\\*p", i, nr); i<-i+1; { "pi"} |
| draw.vf.cell(tf, fi, "\\*r", i, nr); i<-i+1; { "rho"} |
| draw.vf.cell(tf, fi, "\\*s", i, nr); i<-i+1; { "sigma"} |
| draw.vf.cell(tf, fi, "\\ts", i, nr); i<-i+1; { "sigma1"} |
| draw.vf.cell(tf, fi, "\\*t", i, nr); i<-i+1; { "tau"} |
| draw.vf.cell(tf, fi, "\\*u", i, nr); i<-i+1; { "upsilon"} |
| draw.vf.cell(tf, fi, "\\*f", i, nr); i<-i+1; { "phi"} |
| draw.vf.cell(tf, fi, "\\+f", i, nr); i<-i+1; { "phi1"} |
| draw.vf.cell(tf, fi, "\\*x", i, nr); i<-i+1; { "chi"} |
| draw.vf.cell(tf, fi, "\\*q", i, nr); i<-i+1; { "psi"} |
| draw.vf.cell(tf, fi, "\\*w", i, nr); i<-i+1; { "omega"} |
| draw.vf.cell(tf, fi, "\\+p", i, nr); i<-i+1; { "omega1"} |
| # |
| draw.vf.cell(tf, fi, "\\fa", i, nr); i<-i+1; { "universal"} |
| draw.vf.cell(tf, fi, "\\te", i, nr); i<-i+1; { "existential"} |
| draw.vf.cell(tf, fi, "\\st", i, nr); i<-i+1; { "suchthat"} |
| draw.vf.cell(tf, fi, "\\**", i, nr); i<-i+1; { "asteriskmath"} |
| draw.vf.cell(tf, fi, "\\=~", i, nr); i<-i+1; { "congruent"} |
| draw.vf.cell(tf, fi, "\\tf", i, nr); i<-i+1; { "therefore"} |
| draw.vf.cell(tf, fi, "\\pp", i, nr); i<-i+1; { "perpendicular"} |
| draw.vf.cell(tf, fi, "\\ul", i, nr); i<-i+1; { "underline"} |
| draw.vf.cell(tf, fi, "\\rx", i, nr); i<-i+1; { "radicalex"} |
| |
| draw.vf.cell(tf, fi, "\\ap", i, nr); i<-i+1; { "similar"} |
| draw.vf.cell(tf, fi, "\\fm", i, nr); i<-i+1; { "minute"} |
| draw.vf.cell(tf, fi, "\\<=", i, nr); i<-i+1; { "lessequal"} |
| draw.vf.cell(tf, fi, "\\f/", i, nr); i<-i+1; { "fraction"} |
| draw.vf.cell(tf, fi, "\\if", i, nr); i<-i+1; { "infinity"} |
| draw.vf.cell(tf, fi, "\\Fn", i, nr); i<-i+1; { "florin"} |
| draw.vf.cell(tf, fi, "\\CL", i, nr); i<-i+1; { "club"} |
| draw.vf.cell(tf, fi, "\\DI", i, nr); i<-i+1; { "diamond"} |
| draw.vf.cell(tf, fi, "\\HE", i, nr); i<-i+1; { "heart"} |
| draw.vf.cell(tf, fi, "\\SP", i, nr); i<-i+1; { "spade"} |
| draw.vf.cell(tf, fi, "\\<>", i, nr); i<-i+1; { "arrowboth"} |
| draw.vf.cell(tf, fi, "\\<-", i, nr); i<-i+1; { "arrowleft"} |
| draw.vf.cell(tf, fi, "\\ua", i, nr); i<-i+1; { "arrowup"} |
| draw.vf.cell(tf, fi, "\\->", i, nr); i<-i+1; { "arrowright"} |
| draw.vf.cell(tf, fi, "\\da", i, nr); i<-i+1; { "arrowdown"} |
| draw.vf.cell(tf, fi, "\\de", i, nr); i<-i+1; { "degree"} |
| draw.vf.cell(tf, fi, "\\+-", i, nr); i<-i+1; { "plusminus"} |
| draw.vf.cell(tf, fi, "\\sd", i, nr); i<-i+1; { "second"} |
| draw.vf.cell(tf, fi, "\\>=", i, nr); i<-i+1; { "greaterequal"} |
| draw.vf.cell(tf, fi, "\\mu", i, nr); i<-i+1; { "multiply"} |
| draw.vf.cell(tf, fi, "\\pt", i, nr); i<-i+1; { "proportional"} |
| draw.vf.cell(tf, fi, "\\pd", i, nr); i<-i+1; { "partialdiff"} |
| draw.vf.cell(tf, fi, "\\bu", i, nr); i<-i+1; { "bullet"} |
| draw.vf.cell(tf, fi, "\\di", i, nr); i<-i+1; { "divide"} |
| draw.vf.cell(tf, fi, "\\!=", i, nr); i<-i+1; { "notequal"} |
| draw.vf.cell(tf, fi, "\\==", i, nr); i<-i+1; { "equivalence"} |
| draw.vf.cell(tf, fi, "\\~~", i, nr); i<-i+1; { "approxequal"} |
| draw.vf.cell(tf, fi, "\\..", i, nr); i<-i+1; { "ellipsis"} |
| draw.vf.cell(tf, fi, "\\an", i, nr); i<-i+1; { "arrowhorizex"} |
| draw.vf.cell(tf, fi, "\\CR", i, nr); i<-i+1; { "carriagereturn"} |
| draw.vf.cell(tf, fi, "\\Ah", i, nr); i<-i+1; { "aleph"} |
| draw.vf.cell(tf, fi, "\\Im", i, nr); i<-i+1; { "Ifraktur"} |
| draw.vf.cell(tf, fi, "\\Re", i, nr); i<-i+1; { "Rfraktur"} |
| draw.vf.cell(tf, fi, "\\wp", i, nr); i<-i+1; { "weierstrass"} |
| draw.vf.cell(tf, fi, "\\c*", i, nr); i<-i+1; { "circlemultiply"} |
| draw.vf.cell(tf, fi, "\\c+", i, nr); i<-i+1; { "circleplus"} |
| draw.vf.cell(tf, fi, "\\es", i, nr); i<-i+1; { "emptyset"} |
| draw.vf.cell(tf, fi, "\\ca", i, nr); i<-i+1; { "cap"} |
| draw.vf.cell(tf, fi, "\\cu", i, nr); i<-i+1; { "cup"} |
| draw.vf.cell(tf, fi, "\\SS", i, nr); i<-i+1; { "superset"} |
| draw.vf.cell(tf, fi, "\\ip", i, nr); i<-i+1; { "reflexsuperset"} |
| draw.vf.cell(tf, fi, "\\n<", i, nr); i<-i+1; { "notsubset"} |
| draw.vf.cell(tf, fi, "\\SB", i, nr); i<-i+1; { "subset"} |
| draw.vf.cell(tf, fi, "\\ib", i, nr); i<-i+1; { "reflexsubset"} |
| draw.vf.cell(tf, fi, "\\mo", i, nr); i<-i+1; { "element"} |
| draw.vf.cell(tf, fi, "\\nm", i, nr); i<-i+1; { "notelement"} |
| draw.vf.cell(tf, fi, "\\/_", i, nr); i<-i+1; { "angle"} |
| draw.vf.cell(tf, fi, "\\gr", i, nr); i<-i+1; { "nabla"} |
| draw.vf.cell(tf, fi, "\\rg", i, nr); i<-i+1; { "registerserif"} |
| draw.vf.cell(tf, fi, "\\co", i, nr); i<-i+1; { "copyrightserif"} |
| draw.vf.cell(tf, fi, "\\tm", i, nr); i<-i+1; { "trademarkserif"} |
| draw.vf.cell(tf, fi, "\\PR", i, nr); i<-i+1; { "product"} |
| draw.vf.cell(tf, fi, "\\sr", i, nr); i<-i+1; { "radical"} |
| draw.vf.cell(tf, fi, "\\md", i, nr); i<-i+1; { "dotmath"} |
| draw.vf.cell(tf, fi, "\\no", i, nr); i<-i+1; { "logicalnot"} |
| draw.vf.cell(tf, fi, "\\AN", i, nr); i<-i+1; { "logicaland"} |
| draw.vf.cell(tf, fi, "\\OR", i, nr); i<-i+1; { "logicalor"} |
| draw.vf.cell(tf, fi, "\\hA", i, nr); i<-i+1; { "arrowdblboth"} |
| draw.vf.cell(tf, fi, "\\lA", i, nr); i<-i+1; { "arrowdblleft"} |
| draw.vf.cell(tf, fi, "\\uA", i, nr); i<-i+1; { "arrowdblup"} |
| draw.vf.cell(tf, fi, "\\rA", i, nr); i<-i+1; { "arrowdblright"} |
| draw.vf.cell(tf, fi, "\\dA", i, nr); i<-i+1; { "arrowdbldown"} |
| draw.vf.cell(tf, fi, "\\lz", i, nr); i<-i+1; { "lozenge"} |
| draw.vf.cell(tf, fi, "\\la", i, nr); i<-i+1; { "angleleft"} |
| draw.vf.cell(tf, fi, "\\RG", i, nr); i<-i+1; { "registersans"} |
| draw.vf.cell(tf, fi, "\\CO", i, nr); i<-i+1; { "copyrightsans"} |
| draw.vf.cell(tf, fi, "\\TM", i, nr); i<-i+1; { "trademarksans"} |
| draw.vf.cell(tf, fi, "\\SU", i, nr); i<-i+1; { "summation"} |
| draw.vf.cell(tf, fi, "\\lc", i, nr); i<-i+1; { "bracketlefttp"} |
| draw.vf.cell(tf, fi, "\\lf", i, nr); i<-i+1; { "bracketleftbt"} |
| draw.vf.cell(tf, fi, "\\ra", i, nr); i<-i+1; { "angleright"} |
| draw.vf.cell(tf, fi, "\\is", i, nr); i<-i+1; { "integral"} |
| draw.vf.cell(tf, fi, "\\rc", i, nr); i<-i+1; { "bracketrighttp"} |
| draw.vf.cell(tf, fi, "\\rf", i, nr); i<-i+1; { "bracketrightbt"} |
| draw.vf.cell(tf, fi, "\\~=", i, nr); i<-i+1; { "congruent"} |
| draw.vf.cell(tf, fi, "\\pr", i, nr); i<-i+1; { "minute"} |
| draw.vf.cell(tf, fi, "\\in", i, nr); i<-i+1; { "infinity"} |
| draw.vf.cell(tf, fi, "\\n=", i, nr); i<-i+1; { "notequal"} |
| draw.vf.cell(tf, fi, "\\dl", i, nr); i<-i+1; { "nabla"} |
| |
| nr <- 25 |
| nc <- 4 |
| make.table(nr, nc) |
| i <- 0 |
| draw.title("ISO Latin-1 Escape Sequences", i, nr, nc) |
| draw.vf.cell(tf, fi, "\\r!", i, nr); i<-i+1; { "exclamdown"} |
| draw.vf.cell(tf, fi, "\\ct", i, nr); i<-i+1; { "cent"} |
| draw.vf.cell(tf, fi, "\\Po", i, nr); i<-i+1; { "sterling"} |
| draw.vf.cell(tf, fi, "\\Ye", i, nr); i<-i+1; { "yen"} |
| draw.vf.cell(tf, fi, "\\bb", i, nr); i<-i+1; { "brokenbar"} |
| draw.vf.cell(tf, fi, "\\sc", i, nr); i<-i+1; { "section"} |
| draw.vf.cell(tf, fi, "\\ad", i, nr); i<-i+1; { "dieresis"} |
| draw.vf.cell(tf, fi, "\\co", i, nr); i<-i+1; { "copyright"} |
| draw.vf.cell(tf, fi, "\\Of", i, nr); i<-i+1; { "ordfeminine"} |
| draw.vf.cell(tf, fi, "\\no", i, nr); i<-i+1; { "logicalnot"} |
| draw.vf.cell(tf, fi, "\\hy", i, nr); i<-i+1; { "hyphen"} |
| draw.vf.cell(tf, fi, "\\rg", i, nr); i<-i+1; { "registered"} |
| draw.vf.cell(tf, fi, "\\a-", i, nr); i<-i+1; { "macron"} |
| draw.vf.cell(tf, fi, "\\de", i, nr); i<-i+1; { "degree"} |
| draw.vf.cell(tf, fi, "\\+-", i, nr); i<-i+1; { "plusminus"} |
| draw.vf.cell(tf, fi, "\\S2", i, nr); i<-i+1; { "twosuperior"} |
| draw.vf.cell(tf, fi, "\\S3", i, nr); i<-i+1; { "threesuperior"} |
| draw.vf.cell(tf, fi, "\\aa", i, nr); i<-i+1; { "acute"} |
| draw.vf.cell(tf, fi, "\\*m", i, nr); i<-i+1; { "mu"} |
| draw.vf.cell(tf, fi, "\\md", i, nr); i<-i+1; { "periodcentered"} |
| draw.vf.cell(tf, fi, "\\S1", i, nr); i<-i+1; { "onesuperior"} |
| draw.vf.cell(tf, fi, "\\Om", i, nr); i<-i+1; { "ordmasculine"} |
| draw.vf.cell(tf, fi, "\\14", i, nr); i<-i+1; { "onequarter"} |
| draw.vf.cell(tf, fi, "\\12", i, nr); i<-i+1; { "onehalf"} |
| draw.vf.cell(tf, fi, "\\34", i, nr); i<-i+1; { "threequarters"} |
| draw.vf.cell(tf, fi, "\\r?", i, nr); i<-i+1; { "questiondown"} |
| draw.vf.cell(tf, fi, "\\`A", i, nr); i<-i+1; { "Agrave"} |
| draw.vf.cell(tf, fi, "\\'A", i, nr); i<-i+1; { "Aacute"} |
| draw.vf.cell(tf, fi, "\\^A", i, nr); i<-i+1; { "Acircumflex"} |
| draw.vf.cell(tf, fi, "\\~A", i, nr); i<-i+1; { "Atilde"} |
| draw.vf.cell(tf, fi, "\\:A", i, nr); i<-i+1; { "Adieresis"} |
| draw.vf.cell(tf, fi, "\\oA", i, nr); i<-i+1; { "Aring"} |
| draw.vf.cell(tf, fi, "\\AE", i, nr); i<-i+1; { "AE"} |
| draw.vf.cell(tf, fi, "\\,C", i, nr); i<-i+1; { "Ccedilla"} |
| draw.vf.cell(tf, fi, "\\`E", i, nr); i<-i+1; { "Egrave"} |
| draw.vf.cell(tf, fi, "\\'E", i, nr); i<-i+1; { "Eacute"} |
| draw.vf.cell(tf, fi, "\\^E", i, nr); i<-i+1; { "Ecircumflex"} |
| draw.vf.cell(tf, fi, "\\:E", i, nr); i<-i+1; { "Edieresis"} |
| draw.vf.cell(tf, fi, "\\`I", i, nr); i<-i+1; { "Igrave"} |
| draw.vf.cell(tf, fi, "\\'I", i, nr); i<-i+1; { "Iacute"} |
| draw.vf.cell(tf, fi, "\\^I", i, nr); i<-i+1; { "Icircumflex"} |
| draw.vf.cell(tf, fi, "\\:I", i, nr); i<-i+1; { "Idieresis"} |
| draw.vf.cell(tf, fi, "\\~N", i, nr); i<-i+1; { "Ntilde"} |
| draw.vf.cell(tf, fi, "\\`O", i, nr); i<-i+1; { "Ograve"} |
| draw.vf.cell(tf, fi, "\\'O", i, nr); i<-i+1; { "Oacute"} |
| draw.vf.cell(tf, fi, "\\^O", i, nr); i<-i+1; { "Ocircumflex"} |
| draw.vf.cell(tf, fi, "\\~O", i, nr); i<-i+1; { "Otilde"} |
| draw.vf.cell(tf, fi, "\\:O", i, nr); i<-i+1; { "Odieresis"} |
| draw.vf.cell(tf, fi, "\\mu", i, nr); i<-i+1; { "multiply"} |
| draw.vf.cell(tf, fi, "\\/O", i, nr); i<-i+1; { "Oslash"} |
| draw.vf.cell(tf, fi, "\\`U", i, nr); i<-i+1; { "Ugrave"} |
| draw.vf.cell(tf, fi, "\\'U", i, nr); i<-i+1; { "Uacute"} |
| draw.vf.cell(tf, fi, "\\^U", i, nr); i<-i+1; { "Ucircumflex"} |
| draw.vf.cell(tf, fi, "\\:U", i, nr); i<-i+1; { "Udieresis"} |
| draw.vf.cell(tf, fi, "\\'Y", i, nr); i<-i+1; { "Yacute"} |
| draw.vf.cell(tf, fi, "\\ss", i, nr); i<-i+1; { "germandbls"} # WRONG! |
| draw.vf.cell(tf, fi, "\\`a", i, nr); i<-i+1; { "agrave"} |
| draw.vf.cell(tf, fi, "\\'a", i, nr); i<-i+1; { "aacute"} |
| draw.vf.cell(tf, fi, "\\^a", i, nr); i<-i+1; { "acircumflex"} |
| draw.vf.cell(tf, fi, "\\~a", i, nr); i<-i+1; { "atilde"} |
| draw.vf.cell(tf, fi, "\\:a", i, nr); i<-i+1; { "adieresis"} |
| draw.vf.cell(tf, fi, "\\oa", i, nr); i<-i+1; { "aring"} |
| draw.vf.cell(tf, fi, "\\ae", i, nr); i<-i+1; { "ae"} |
| draw.vf.cell(tf, fi, "\\,c", i, nr); i<-i+1; { "ccedilla"} |
| draw.vf.cell(tf, fi, "\\`e", i, nr); i<-i+1; { "egrave"} |
| draw.vf.cell(tf, fi, "\\'e", i, nr); i<-i+1; { "eacute"} |
| draw.vf.cell(tf, fi, "\\^e", i, nr); i<-i+1; { "ecircumflex"} |
| draw.vf.cell(tf, fi, "\\:e", i, nr); i<-i+1; { "edieresis"} |
| draw.vf.cell(tf, fi, "\\`i", i, nr); i<-i+1; { "igrave"} |
| draw.vf.cell(tf, fi, "\\'i", i, nr); i<-i+1; { "iacute"} |
| draw.vf.cell(tf, fi, "\\^i", i, nr); i<-i+1; { "icircumflex"} |
| draw.vf.cell(tf, fi, "\\:i", i, nr); i<-i+1; { "idieresis"} |
| draw.vf.cell(tf, fi, "\\~n", i, nr); i<-i+1; { "ntilde"} |
| draw.vf.cell(tf, fi, "\\`o", i, nr); i<-i+1; { "ograve"} |
| draw.vf.cell(tf, fi, "\\'o", i, nr); i<-i+1; { "oacute"} |
| draw.vf.cell(tf, fi, "\\^o", i, nr); i<-i+1; { "ocircumflex"} |
| draw.vf.cell(tf, fi, "\\~o", i, nr); i<-i+1; { "otilde"} |
| draw.vf.cell(tf, fi, "\\:o", i, nr); i<-i+1; { "odieresis"} |
| draw.vf.cell(tf, fi, "\\di", i, nr); i<-i+1; { "divide"} |
| draw.vf.cell(tf, fi, "\\/o", i, nr); i<-i+1; { "oslash"} |
| draw.vf.cell(tf, fi, "\\`u", i, nr); i<-i+1; { "ugrave"} |
| draw.vf.cell(tf, fi, "\\'u", i, nr); i<-i+1; { "uacute"} |
| draw.vf.cell(tf, fi, "\\^u", i, nr); i<-i+1; { "ucircumflex"} |
| draw.vf.cell(tf, fi, "\\:u", i, nr); i<-i+1; { "udieresis"} |
| draw.vf.cell(tf, fi, "\\'y", i, nr); i<-i+1; { "yacute"} |
| draw.vf.cell(tf, fi, "\\:y", i, nr); i<-i+1; { "ydieresis"} |
| |
| nr <- 25 |
| nc <- 2 |
| make.table(nr, nc) |
| i <- 0 |
| draw.title("Special Escape Sequences", i, nr, nc) |
| draw.vf.cell(tf, fi, "\\AR", i, nr); i<-i+1; { "aries"} |
| draw.vf.cell(tf, fi, "\\TA", i, nr); i<-i+1; { "taurus"} |
| draw.vf.cell(tf, fi, "\\GE", i, nr); i<-i+1; { "gemini"} |
| draw.vf.cell(tf, fi, "\\CA", i, nr); i<-i+1; { "cancer"} |
| draw.vf.cell(tf, fi, "\\LE", i, nr); i<-i+1; { "leo"} |
| draw.vf.cell(tf, fi, "\\VI", i, nr); i<-i+1; { "virgo"} |
| draw.vf.cell(tf, fi, "\\LI", i, nr); i<-i+1; { "libra"} |
| draw.vf.cell(tf, fi, "\\SC", i, nr); i<-i+1; { "scorpio"} |
| draw.vf.cell(tf, fi, "\\SG", i, nr); i<-i+1; { "sagittarius"} |
| draw.vf.cell(tf, fi, "\\CP", i, nr); i<-i+1; { "capricornus"} |
| draw.vf.cell(tf, fi, "\\AQ", i, nr); i<-i+1; { "aquarius"} |
| draw.vf.cell(tf, fi, "\\PI", i, nr); i<-i+1; { "pisces"} |
| draw.vf.cell(tf, fi, "\\~-", i, nr); i<-i+1; { "modifiedcongruent"} |
| draw.vf.cell(tf, fi, "\\hb", i, nr); i<-i+1; { "hbar"} |
| draw.vf.cell(tf, fi, "\\IB", i, nr); i<-i+1; { "interbang"} |
| draw.vf.cell(tf, fi, "\\Lb", i, nr); i<-i+1; { "lambdabar"} |
| draw.vf.cell(tf, fi, "\\UD", i, nr); i<-i+1; { "undefined"} |
| draw.vf.cell(tf, fi, "\\SO", i, nr); i<-i+1; { "sun"} |
| draw.vf.cell(tf, fi, "\\ME", i, nr); i<-i+1; { "mercury"} |
| draw.vf.cell(tf, fi, "\\VE", i, nr); i<-i+1; { "venus"} |
| draw.vf.cell(tf, fi, "\\EA", i, nr); i<-i+1; { "earth"} |
| draw.vf.cell(tf, fi, "\\MA", i, nr); i<-i+1; { "mars"} |
| draw.vf.cell(tf, fi, "\\JU", i, nr); i<-i+1; { "jupiter"} |
| draw.vf.cell(tf, fi, "\\SA", i, nr); i<-i+1; { "saturn"} |
| draw.vf.cell(tf, fi, "\\UR", i, nr); i<-i+1; { "uranus"} |
| draw.vf.cell(tf, fi, "\\NE", i, nr); i<-i+1; { "neptune"} |
| draw.vf.cell(tf, fi, "\\PL", i, nr); i<-i+1; { "pluto"} |
| draw.vf.cell(tf, fi, "\\LU", i, nr); i<-i+1; { "moon"} |
| draw.vf.cell(tf, fi, "\\CT", i, nr); i<-i+1; { "comet"} |
| draw.vf.cell(tf, fi, "\\ST", i, nr); i<-i+1; { "star"} |
| draw.vf.cell(tf, fi, "\\AS", i, nr); i<-i+1; { "ascendingnode"} |
| draw.vf.cell(tf, fi, "\\DE", i, nr); i<-i+1; { "descendingnode"} |
| draw.vf.cell(tf, fi, "\\s-", i, nr); i<-i+1; { "s1"} |
| draw.vf.cell(tf, fi, "\\dg", i, nr); i<-i+1; { "dagger"} |
| draw.vf.cell(tf, fi, "\\dd", i, nr); i<-i+1; { "daggerdbl"} |
| draw.vf.cell(tf, fi, "\\li", i, nr); i<-i+1; { "line integral"} |
| draw.vf.cell(tf, fi, "\\-+", i, nr); i<-i+1; { "minusplus"} |
| draw.vf.cell(tf, fi, "\\||", i, nr); i<-i+1; { "parallel"} |
| draw.vf.cell(tf, fi, "\\rn", i, nr); i<-i+1; { "overscore"} |
| draw.vf.cell(tf, fi, "\\ul", i, nr); i<-i+1; { "underscore"} |
| |
| nr <- 25 |
| nc <- 3 |
| make.table(nr, nc) |
| ## octal escape codes, as decimals |
| code <- c(300:307,310:317,320:327,330:337,340:347,350:357,360:367,370:377, |
| 243,263) |
| ocode <- 64*(code%/%100) + 8*(code%/%10)%%10 + code%%10 |
| string <- rawToChar(as.raw(ocode), multiple=TRUE) |
| draw.title("Cyrillic Octal Codes", i = 0, nr ,nc) |
| for (i in 1:66) |
| draw.vf.cell(tf, "cyrillic", string[i], i-1, nr, |
| raw.string=paste("\\", as.character(code[i]), sep="")) |
| |
| nr <- 25 |
| nc <- 3 |
| make.table(nr, nc) |
| code <- c(252,254,256,262:269,275,278:281,284,745,746,750:768,796:802, |
| 804:807,809,814:828,830:834,840:844) |
| draw.title("Raw Hershey Escape Sequences", i=0, nr, nc) |
| for (i in 1:75) |
| draw.vf.cell(tf, fi, paste("\\#H",formatC(code[i],wid=4,flag="0"),sep=""), |
| i-1, nr) |
| make.table(nr, nc) |
| code <- c(845:847,850:856,860:874,899:909,2296:2299,2318:2332,2367:2382, |
| 4014,4109) |
| draw.title("More Raw Hershey Escape Sequences", i=0, nr, nc) |
| for (i in 1:73) |
| draw.vf.cell(tf, fi, paste("\\#H",formatC(code[i],wid=4,flag="0"),sep=""), |
| i-1, nr) |
| |
| par(oldpar) |