12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- module.exports = function(hljs) {
- return {
- contains: [
- hljs.HASH_COMMENT_MODE,
- hljs.C_LINE_COMMENT_MODE,
- hljs.C_BLOCK_COMMENT_MODE,
- {
- begin: hljs.UNDERSCORE_IDENT_RE,
- lexemes: hljs.UNDERSCORE_IDENT_RE,
- keywords: {
- // Stan's keywords
- name:
- 'for in while repeat until if then else',
- // Stan's probablity distributions (less beta and gamma, as commonly
- // used for parameter names). So far, _log and _rng variants are not
- // included
- symbol:
- 'bernoulli bernoulli_logit binomial binomial_logit ' +
- 'beta_binomial hypergeometric categorical categorical_logit ' +
- 'ordered_logistic neg_binomial neg_binomial_2 ' +
- 'neg_binomial_2_log poisson poisson_log multinomial normal ' +
- 'exp_mod_normal skew_normal student_t cauchy double_exponential ' +
- 'logistic gumbel lognormal chi_square inv_chi_square ' +
- 'scaled_inv_chi_square exponential inv_gamma weibull frechet ' +
- 'rayleigh wiener pareto pareto_type_2 von_mises uniform ' +
- 'multi_normal multi_normal_prec multi_normal_cholesky multi_gp ' +
- 'multi_gp_cholesky multi_student_t gaussian_dlm_obs dirichlet ' +
- 'lkj_corr lkj_corr_cholesky wishart inv_wishart',
- // Stan's data types
- 'selector-tag':
- 'int real vector simplex unit_vector ordered positive_ordered ' +
- 'row_vector matrix cholesky_factor_corr cholesky_factor_cov ' +
- 'corr_matrix cov_matrix',
- // Stan's model blocks
- title:
- 'functions model data parameters quantities transformed ' +
- 'generated',
- literal:
- 'true false'
- },
- relevance: 0
- },
- // The below is all taken from the R language definition
- {
- // hex value
- className: 'number',
- begin: "0[xX][0-9a-fA-F]+[Li]?\\b",
- relevance: 0
- },
- {
- // hex value
- className: 'number',
- begin: "0[xX][0-9a-fA-F]+[Li]?\\b",
- relevance: 0
- },
- {
- // explicit integer
- className: 'number',
- begin: "\\d+(?:[eE][+\\-]?\\d*)?L\\b",
- relevance: 0
- },
- {
- // number with trailing decimal
- className: 'number',
- begin: "\\d+\\.(?!\\d)(?:i\\b)?",
- relevance: 0
- },
- {
- // number
- className: 'number',
- begin: "\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d*)?i?\\b",
- relevance: 0
- },
- {
- // number with leading decimal
- className: 'number',
- begin: "\\.\\d+(?:[eE][+\\-]?\\d*)?i?\\b",
- relevance: 0
- }
- ]
- };
- };
|