overleaf/services/web/frontend/js/vendor/ace-1.4.5/snippets/haskell.js

97 lines
2.4 KiB
JavaScript
Raw Normal View History

ace.define("ace/snippets/haskell",[], function(require, exports, module) {
"use strict";
exports.snippetText = "snippet lang\n\
{-# LANGUAGE ${1:OverloadedStrings} #-}\n\
snippet info\n\
-- |\n\
-- Module : ${1:Module.Namespace}\n\
-- Copyright : ${2:Author} ${3:2011-2012}\n\
-- License : ${4:BSD3}\n\
--\n\
-- Maintainer : ${5:email@something.com}\n\
-- Stability : ${6:experimental}\n\
-- Portability : ${7:unknown}\n\
--\n\
-- ${8:Description}\n\
--\n\
snippet import\n\
import ${1:Data.Text}\n\
snippet import2\n\
import ${1:Data.Text} (${2:head})\n\
snippet importq\n\
import qualified ${1:Data.Text} as ${2:T}\n\
snippet inst\n\
instance ${1:Monoid} ${2:Type} where\n\
${3}\n\
snippet type\n\
type ${1:Type} = ${2:Type}\n\
snippet data\n\
data ${1:Type} = ${2:$1} ${3:Int}\n\
snippet newtype\n\
newtype ${1:Type} = ${2:$1} ${3:Int}\n\
snippet class\n\
class ${1:Class} a where\n\
${2}\n\
snippet module\n\
module `substitute(substitute(expand('%:r'), '[/\\\\]','.','g'),'^\\%(\\l*\\.\\)\\?','','')` (\n\
) where\n\
`expand('%') =~ 'Main' ? \"\\n\\nmain = do\\n print \\\"hello world\\\"\" : \"\"`\n\
\n\
snippet const\n\
${1:name} :: ${2:a}\n\
$1 = ${3:undefined}\n\
snippet fn\n\
${1:fn} :: ${2:a} -> ${3:a}\n\
$1 ${4} = ${5:undefined}\n\
snippet fn2\n\
${1:fn} :: ${2:a} -> ${3:a} -> ${4:a}\n\
$1 ${5} = ${6:undefined}\n\
snippet ap\n\
${1:map} ${2:fn} ${3:list}\n\
snippet do\n\
do\n\
\n\
snippet λ\n\
\\${1:x} -> ${2}\n\
snippet \\\n\
\\${1:x} -> ${2}\n\
snippet <-\n\
${1:a} <- ${2:m a}\n\
snippet \n\
${1:a} <- ${2:m a}\n\
snippet ->\n\
${1:m a} -> ${2:a}\n\
snippet \n\
${1:m a} -> ${2:a}\n\
snippet tup\n\
(${1:a}, ${2:b})\n\
snippet tup2\n\
(${1:a}, ${2:b}, ${3:c})\n\
snippet tup3\n\
(${1:a}, ${2:b}, ${3:c}, ${4:d})\n\
snippet rec\n\
${1:Record} { ${2:recFieldA} = ${3:undefined}\n\
, ${4:recFieldB} = ${5:undefined}\n\
}\n\
snippet case\n\
case ${1:something} of\n\
${2} -> ${3}\n\
snippet let\n\
let ${1} = ${2}\n\
in ${3}\n\
snippet where\n\
where\n\
${1:fn} = ${2:undefined}\n\
";
exports.scope = "haskell";
});
(function() {
ace.require(["ace/snippets/haskell"], function(m) {
if (typeof module == "object" && typeof exports == "object" && module) {
module.exports = m;
}
});
})();