parse_ctl <- function(txt) {
block_re <- "^\\s*\\$[A-Za-z]\\w*"
# Look for block lines
m <- regexec(block_re, txt)
# Where the block starts
start <- which(sapply(m, "[", 1L) > 0)
if(length(start)==0) {
stop("No model specification file blocks were found.", call.=FALSE)
}
# Get the matches
mm <- regmatches(txt[start], m[start])
# Block labels
labs <- gsub("[$ ]", "", sapply(mm, "[", 1L))
# Remove block label text
txt[start] <- trimws(substr(txt[start], nchar(unlist(mm,use.names=FALSE))+1, nchar(txt[start])))
# Where the block ends
end <- c((start-1),length(txt))[-1]
# Create the list
spec <- lapply(seq_along(start), function(i) {
y <- txt[start[i]:end[i]]
})
names(spec) <- labs
return(spec)
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.