From 06e80f3889471bea4f642e5f2bc221072fcd928c Mon Sep 17 00:00:00 2001 From: Arfon Smith Date: Wed, 24 Aug 2016 09:30:20 -0700 Subject: [PATCH] Grammar update --- grammars.yml | 2 + vendor/grammars/Handlebars | 2 +- vendor/grammars/MagicPython | 2 +- vendor/grammars/NimLime | 2 +- vendor/grammars/PHP-Twig.tmbundle | 2 +- vendor/grammars/Sublime-SQF-Language | 2 +- vendor/grammars/Sublime-VimL | 2 +- vendor/grammars/SublimeGDB | 2 +- vendor/grammars/TLA | 2 +- vendor/grammars/applescript.tmbundle | 2 +- vendor/grammars/atom-language-purescript | 2 +- vendor/grammars/atom-language-stan | 2 +- vendor/grammars/c.tmbundle | 2 +- vendor/grammars/css.tmbundle | 2 +- vendor/grammars/d.tmbundle | 2 +- vendor/grammars/elixir-tmbundle | 2 +- ...ction Call from Selection : Word.tmCommand | 32 + .../Commands/Load in GHCi.tmCommand | 53 ++ .../Commands/Lookup on Hoogle.tmCommand | 25 + .../Commands/New Module.tmCommand | 34 + .../haskell.tmbundle/Commands/Run.plist | 55 ++ .../Commands/Show Type.tmCommand | 24 + .../Preferences/Comments.tmPreferences | 36 + .../Preferences/Indentation.tmPreferences | 23 + .../Preferences/Symbol List.tmPreferences | 17 + .../Preferences/Typing Pairs.plist | 38 + vendor/grammars/haskell.tmbundle/README.mdown | 20 + .../Snippets/Definition.tmSnippet | 16 + .../Snippets/Function.tmSnippet | 17 + .../haskell.tmbundle/Snippets/Guard.tmSnippet | 16 + .../Snippets/Haddock Postfix.tmSnippet | 16 + .../Snippets/Haddock Prefix.tmSnippet | 16 + .../Snippets/Hashbang.tmSnippet | 17 + .../Snippets/Lambda Expression.tmSnippet | 16 + .../Snippets/Left Arrow.tmSnippet | 18 + .../Snippets/List Comprehension.tmSnippet | 16 + .../haskell.tmbundle/Snippets/Main.tmSnippet | 20 + .../Snippets/Right Arrow.tmSnippet | 18 + .../Snippets/Type Constraint.tmSnippet | 16 + .../Snippets/Type Sequence.tmSnippet | 16 + .../Snippets/Type Signature.tmSnippet | 16 + .../Snippets/case _ of _.tmSnippet | 18 + .../Snippets/class _.tmSnippet | 17 + .../Snippets/data _.tmSnippet | 16 + .../Snippets/deriving _.tmSnippet | 16 + .../haskell.tmbundle/Snippets/do _.tmSnippet | 17 + .../Snippets/if _ then _ else _.tmSnippet | 18 + .../Snippets/import _ hiding _.tmSnippet | 16 + .../Snippets/import _.tmSnippet | 16 + .../Snippets/import qualified _.tmSnippet | 16 + .../Snippets/instance _.tmSnippet | 17 + .../haskell.tmbundle/Snippets/let _.tmSnippet | 18 + .../Snippets/newtype _.tmSnippet | 16 + .../Snippets/type _.tmSnippet | 16 + .../Snippets/where _.tmSnippet | 17 + .../haskell.tmbundle/Support/bin/haskelltype | 222 ++++++ .../haskell.tmbundle/Syntaxes/Haskell.plist | 711 ++++++++++++++++++ .../Syntaxes/Literate Haskell.plist | 92 +++ vendor/grammars/haskell.tmbundle/info.plist | 58 ++ vendor/grammars/java.tmbundle | 2 +- vendor/grammars/json.tmbundle | 2 +- vendor/grammars/language-babel | 2 +- vendor/grammars/language-blade | 2 +- vendor/grammars/language-clojure | 2 +- vendor/grammars/language-coffee-script | 2 +- vendor/grammars/language-crystal | 2 +- vendor/grammars/language-csharp | 2 +- vendor/grammars/language-csound | 2 +- vendor/grammars/language-gfm | 2 +- vendor/grammars/language-haskell | 2 +- vendor/grammars/language-javascript | 2 +- vendor/grammars/language-less | 2 +- vendor/grammars/language-python | 2 +- vendor/grammars/language-renpy | 2 +- vendor/grammars/language-restructuredtext | 2 +- vendor/grammars/language-roff | 2 +- vendor/grammars/language-shellscript | 2 +- vendor/grammars/language-toc-wow | 2 +- vendor/grammars/language-yaml | 2 +- vendor/grammars/latex.tmbundle | 2 +- vendor/grammars/objective-c.tmbundle | 2 +- vendor/grammars/pawn-sublime-language | 2 +- vendor/grammars/php.tmbundle | 2 +- vendor/grammars/ruby-slim.tmbundle | 2 +- vendor/grammars/sas.tmbundle | 2 +- vendor/grammars/smali-sublime | 2 +- vendor/grammars/sublime-autoit | 2 +- vendor/grammars/sublime-rust | 2 +- vendor/grammars/sublime-typescript | 2 +- .../sublime_man_page_support/.gitignore | 2 + .../grammars/sublime_man_page_support/LICENSE | 20 + .../Main.sublime-menu | 23 + .../ManPage.sublime-build | 4 + .../ManPage.sublime-commands | 10 + .../sublime_man_page_support/README.md | 10 + .../groff-enhancements.sublime-snippet | 201 +++++ .../man-groff.JSON-tmLanguage | 85 +++ .../man-groff.tmLanguage | 184 +++++ .../man-preview.JSON-tmLanguage | 32 + .../man-preview.tmLanguage | 88 +++ .../sublime_man_page_support/new_page.py | 59 ++ vendor/grammars/swift.tmbundle | 2 +- vendor/grammars/vue-syntax-highlight | 2 +- 103 files changed, 2675 insertions(+), 47 deletions(-) create mode 100644 vendor/grammars/haskell.tmbundle/Commands/Infix Function Call from Selection : Word.tmCommand create mode 100644 vendor/grammars/haskell.tmbundle/Commands/Load in GHCi.tmCommand create mode 100644 vendor/grammars/haskell.tmbundle/Commands/Lookup on Hoogle.tmCommand create mode 100644 vendor/grammars/haskell.tmbundle/Commands/New Module.tmCommand create mode 100644 vendor/grammars/haskell.tmbundle/Commands/Run.plist create mode 100644 vendor/grammars/haskell.tmbundle/Commands/Show Type.tmCommand create mode 100644 vendor/grammars/haskell.tmbundle/Preferences/Comments.tmPreferences create mode 100644 vendor/grammars/haskell.tmbundle/Preferences/Indentation.tmPreferences create mode 100644 vendor/grammars/haskell.tmbundle/Preferences/Symbol List.tmPreferences create mode 100644 vendor/grammars/haskell.tmbundle/Preferences/Typing Pairs.plist create mode 100644 vendor/grammars/haskell.tmbundle/README.mdown create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/Definition.tmSnippet create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/Function.tmSnippet create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/Guard.tmSnippet create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/Haddock Postfix.tmSnippet create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/Haddock Prefix.tmSnippet create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/Hashbang.tmSnippet create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/Lambda Expression.tmSnippet create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/Left Arrow.tmSnippet create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/List Comprehension.tmSnippet create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/Main.tmSnippet create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/Right Arrow.tmSnippet create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/Type Constraint.tmSnippet create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/Type Sequence.tmSnippet create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/Type Signature.tmSnippet create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/case _ of _.tmSnippet create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/class _.tmSnippet create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/data _.tmSnippet create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/deriving _.tmSnippet create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/do _.tmSnippet create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/if _ then _ else _.tmSnippet create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/import _ hiding _.tmSnippet create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/import _.tmSnippet create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/import qualified _.tmSnippet create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/instance _.tmSnippet create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/let _.tmSnippet create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/newtype _.tmSnippet create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/type _.tmSnippet create mode 100644 vendor/grammars/haskell.tmbundle/Snippets/where _.tmSnippet create mode 100755 vendor/grammars/haskell.tmbundle/Support/bin/haskelltype create mode 100644 vendor/grammars/haskell.tmbundle/Syntaxes/Haskell.plist create mode 100644 vendor/grammars/haskell.tmbundle/Syntaxes/Literate Haskell.plist create mode 100644 vendor/grammars/haskell.tmbundle/info.plist create mode 100644 vendor/grammars/sublime_man_page_support/.gitignore create mode 100644 vendor/grammars/sublime_man_page_support/LICENSE create mode 100644 vendor/grammars/sublime_man_page_support/Main.sublime-menu create mode 100644 vendor/grammars/sublime_man_page_support/ManPage.sublime-build create mode 100644 vendor/grammars/sublime_man_page_support/ManPage.sublime-commands create mode 100644 vendor/grammars/sublime_man_page_support/README.md create mode 100644 vendor/grammars/sublime_man_page_support/groff-enhancements.sublime-snippet create mode 100644 vendor/grammars/sublime_man_page_support/man-groff.JSON-tmLanguage create mode 100644 vendor/grammars/sublime_man_page_support/man-groff.tmLanguage create mode 100644 vendor/grammars/sublime_man_page_support/man-preview.JSON-tmLanguage create mode 100644 vendor/grammars/sublime_man_page_support/man-preview.tmLanguage create mode 100644 vendor/grammars/sublime_man_page_support/new_page.py diff --git a/grammars.yml b/grammars.yml index 7289d71f..d6230d32 100755 --- a/grammars.yml +++ b/grammars.yml @@ -402,6 +402,8 @@ vendor/grammars/language-renpy: vendor/grammars/language-restructuredtext: - text.restructuredtext vendor/grammars/language-roff: +- source.ideal +- source.pic - text.roff - text.runoff vendor/grammars/language-shellscript: diff --git a/vendor/grammars/Handlebars b/vendor/grammars/Handlebars index 94ef9439..c07f986a 160000 --- a/vendor/grammars/Handlebars +++ b/vendor/grammars/Handlebars @@ -1 +1 @@ -Subproject commit 94ef9439d81d41a193487dda835d742b584659f4 +Subproject commit c07f986ae74c2a1eb96d856cf147ba94b8eefc90 diff --git a/vendor/grammars/MagicPython b/vendor/grammars/MagicPython index 820a9310..f4ff7de2 160000 --- a/vendor/grammars/MagicPython +++ b/vendor/grammars/MagicPython @@ -1 +1 @@ -Subproject commit 820a9310f67b452257c45332fd16433b5f63296a +Subproject commit f4ff7de27f6ff9a4f1d8e0decd3cc7145dde2fa9 diff --git a/vendor/grammars/NimLime b/vendor/grammars/NimLime index 5089ecab..2f5ec25f 160000 --- a/vendor/grammars/NimLime +++ b/vendor/grammars/NimLime @@ -1 +1 @@ -Subproject commit 5089ecab59ed3211aa482c0fb4c5881f7f7c4e9d +Subproject commit 2f5ec25fe648fb5260b0e5d845d3d88bd109b37d diff --git a/vendor/grammars/PHP-Twig.tmbundle b/vendor/grammars/PHP-Twig.tmbundle index f4f7529a..9e802d52 160000 --- a/vendor/grammars/PHP-Twig.tmbundle +++ b/vendor/grammars/PHP-Twig.tmbundle @@ -1 +1 @@ -Subproject commit f4f7529ac2a07527caa7c9154b87c96d17e18aa1 +Subproject commit 9e802d525ed87a90ec7ff842f44c0c992fd56521 diff --git a/vendor/grammars/Sublime-SQF-Language b/vendor/grammars/Sublime-SQF-Language index 77793199..984606e1 160000 --- a/vendor/grammars/Sublime-SQF-Language +++ b/vendor/grammars/Sublime-SQF-Language @@ -1 +1 @@ -Subproject commit 777931999d391173c509018fd38e4d124063f13d +Subproject commit 984606e146b4ef96753db7f3a16adeee2b152e24 diff --git a/vendor/grammars/Sublime-VimL b/vendor/grammars/Sublime-VimL index 4b23352c..b453aff6 160000 --- a/vendor/grammars/Sublime-VimL +++ b/vendor/grammars/Sublime-VimL @@ -1 +1 @@ -Subproject commit 4b23352ce5e48a191d55d61883a9478211df91fd +Subproject commit b453aff6f783769b6b895986da605a2db0db7379 diff --git a/vendor/grammars/SublimeGDB b/vendor/grammars/SublimeGDB index 0afb64f2..d9a512da 160000 --- a/vendor/grammars/SublimeGDB +++ b/vendor/grammars/SublimeGDB @@ -1 +1 @@ -Subproject commit 0afb64f2732bfb01af97f593d4f8c977a28dc510 +Subproject commit d9a512da6eb23b8193a8696a6fc1afd77f310d6e diff --git a/vendor/grammars/TLA b/vendor/grammars/TLA index 7e351a9c..5dc130ca 160000 --- a/vendor/grammars/TLA +++ b/vendor/grammars/TLA @@ -1 +1 @@ -Subproject commit 7e351a9cdf6fbf3132e35246ce190bad237fb39c +Subproject commit 5dc130cab32ba6cf8c53e3378cd58740728f3c17 diff --git a/vendor/grammars/applescript.tmbundle b/vendor/grammars/applescript.tmbundle index bfb42697..5067ef67 160000 --- a/vendor/grammars/applescript.tmbundle +++ b/vendor/grammars/applescript.tmbundle @@ -1 +1 @@ -Subproject commit bfb426974dd4ec9adcee4094f32a14a484b2e1f3 +Subproject commit 5067ef67a58f6f56a54460be1390d921bb400d45 diff --git a/vendor/grammars/atom-language-purescript b/vendor/grammars/atom-language-purescript index 83d18810..fc8b0bf9 160000 --- a/vendor/grammars/atom-language-purescript +++ b/vendor/grammars/atom-language-purescript @@ -1 +1 @@ -Subproject commit 83d188103fa2544fe037e3634c26ab6bbeb85b3e +Subproject commit fc8b0bf9da61886c6e3973c2d37e6aef88fabfb2 diff --git a/vendor/grammars/atom-language-stan b/vendor/grammars/atom-language-stan index 2fa2745d..0a79d383 160000 --- a/vendor/grammars/atom-language-stan +++ b/vendor/grammars/atom-language-stan @@ -1 +1 @@ -Subproject commit 2fa2745da7ab9de0ba42a9743d1942becb5e4c32 +Subproject commit 0a79d383b7e94fefb242e967d708e054faf656cd diff --git a/vendor/grammars/c.tmbundle b/vendor/grammars/c.tmbundle index d26c3516..fa4b7e21 160000 --- a/vendor/grammars/c.tmbundle +++ b/vendor/grammars/c.tmbundle @@ -1 +1 @@ -Subproject commit d26c35164a4d496fd2c0b4ea0c1aeed64d704702 +Subproject commit fa4b7e211463973328b5334d55d0b10dafa27122 diff --git a/vendor/grammars/css.tmbundle b/vendor/grammars/css.tmbundle index 94f7111c..d79e9c01 160000 --- a/vendor/grammars/css.tmbundle +++ b/vendor/grammars/css.tmbundle @@ -1 +1 @@ -Subproject commit 94f7111c2953ac7b4cc42d313d9ad9b8701b8468 +Subproject commit d79e9c013769386a765198f7fb0f9dce39da829b diff --git a/vendor/grammars/d.tmbundle b/vendor/grammars/d.tmbundle index e4beff2c..8763c4c5 160000 --- a/vendor/grammars/d.tmbundle +++ b/vendor/grammars/d.tmbundle @@ -1 +1 @@ -Subproject commit e4beff2ce50afecab1438f0013977fadf89f8a39 +Subproject commit 8763c4c5f2169d48d725d946838428f50abe12a5 diff --git a/vendor/grammars/elixir-tmbundle b/vendor/grammars/elixir-tmbundle index 6ee8051a..6d0417e8 160000 --- a/vendor/grammars/elixir-tmbundle +++ b/vendor/grammars/elixir-tmbundle @@ -1 +1 @@ -Subproject commit 6ee8051a75cd9bc7f20e08f2fde4475e95e9c67a +Subproject commit 6d0417e8eb7e182810755214d0a8cd6421146c01 diff --git a/vendor/grammars/haskell.tmbundle/Commands/Infix Function Call from Selection : Word.tmCommand b/vendor/grammars/haskell.tmbundle/Commands/Infix Function Call from Selection : Word.tmCommand new file mode 100644 index 00000000..a5fc1784 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Commands/Infix Function Call from Selection : Word.tmCommand @@ -0,0 +1,32 @@ + + + + + beforeRunningCommand + nop + command + #!/bin/bash + +NAME="$(cat)" +if [[ -z "$NAME" ]]; then + NAME="\$1" +fi + +echo "\`$NAME\`\$0" + + fallbackInput + word + input + selection + keyEquivalent + ^' + name + Infix Function Call From Word / Selection + output + insertAsSnippet + scope + source.haskell + uuid + FA4AA254-EB7D-4B43-AC67-066AA9E8E8D9 + + diff --git a/vendor/grammars/haskell.tmbundle/Commands/Load in GHCi.tmCommand b/vendor/grammars/haskell.tmbundle/Commands/Load in GHCi.tmCommand new file mode 100644 index 00000000..5a865365 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Commands/Load in GHCi.tmCommand @@ -0,0 +1,53 @@ + + + + + beforeRunningCommand + nop + command + #!/bin/bash + +THASKELL=${TM_HASKELL:-ghci} + +esc () { +STR="$1" ruby18 <<"RUBY" + str = ENV['STR'] + str = str.gsub(/'/, "'\\\\''") + str = str.gsub(/[\\"]/, '\\\\\\0') + print "'#{str}'" +RUBY +} + +osascript <<- APPLESCRIPT +tell app "Terminal" + launch + activate + do script "clear; cd $(esc "${TM_DIRECTORY}"); ${THASKELL} $(esc "${TM_FILEPATH}")" + set position of first window to {100, 100} +end tell +APPLESCRIPT + + input + none + inputFormat + text + keyEquivalent + @R + name + Load in GHCi + outputCaret + afterOutput + outputFormat + text + outputLocation + toolTip + scope + source.haskell + semanticClass + process.external.run.haskell + uuid + 2242C46C-153E-4EEB-B80B-A5398559D759 + version + 2 + + diff --git a/vendor/grammars/haskell.tmbundle/Commands/Lookup on Hoogle.tmCommand b/vendor/grammars/haskell.tmbundle/Commands/Lookup on Hoogle.tmCommand new file mode 100644 index 00000000..da04c3f9 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Commands/Lookup on Hoogle.tmCommand @@ -0,0 +1,25 @@ + + + + + beforeRunningCommand + nop + command + #!/bin/bash +echo "<meta http-equiv=\"refresh\" content=\"0; http://haskell.org/hoogle/?q=$(cat)\">" + fallbackInput + word + input + selection + keyEquivalent + ^H + name + Lookup on Hoogle + output + showAsHTML + scope + source.haskell + uuid + 50D814AE-D850-4C97-AF3E-1FDE4366C6A3 + + diff --git a/vendor/grammars/haskell.tmbundle/Commands/New Module.tmCommand b/vendor/grammars/haskell.tmbundle/Commands/New Module.tmCommand new file mode 100644 index 00000000..cc483847 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Commands/New Module.tmCommand @@ -0,0 +1,34 @@ + + + + + beforeRunningCommand + nop + command + #!/bin/bash + +NAME=${TM_FILENAME%.hs} +if [[ -z "$NAME" ]]; then + NAME="Main" +fi + +cat <<SNIPPET +module \${1:$NAME} \${2/.+/( + /m}\${2:function}\${2/.+/ +) /m}where +\$0 +SNIPPET + input + none + name + module … + output + insertAsSnippet + scope + source.haskell + tabTrigger + mod + uuid + 156D0588-A61A-4419-9C71-6E47320A4DA5 + + diff --git a/vendor/grammars/haskell.tmbundle/Commands/Run.plist b/vendor/grammars/haskell.tmbundle/Commands/Run.plist new file mode 100644 index 00000000..7a3fc059 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Commands/Run.plist @@ -0,0 +1,55 @@ + + + + + beforeRunningCommand + saveModifiedFiles + command + #!/usr/bin/env ruby18 -wKU +require "#{ENV["TM_SUPPORT_PATH"]}/lib/tm/save_current_document" +require "#{ENV["TM_SUPPORT_PATH"]}/lib/tm/executor" +require "#{ENV["TM_SUPPORT_PATH"]}/lib/escape" + +TextMate.save_if_untitled('hs') + +haskell = e_sh(ENV['TM_HASKELL'] || 'runhaskell') +TextMate::Executor.run(haskell, ENV['TM_FILEPATH']) + + input + document + inputFormat + text + keyEquivalent + @r + name + Run + outputCaret + afterOutput + outputFormat + html + outputLocation + newWindow + requiredCommands + + + command + runhaskell + locations + + /opt/local/bin/runhugs + /usr/local/bin/runhaskell + + variable + TM_HASKELL + + + scope + source.haskell + semanticClass + process.run.script.haskell + uuid + 3B083BE7-9812-4F06-A758-CCAD9514E797 + version + 2 + + diff --git a/vendor/grammars/haskell.tmbundle/Commands/Show Type.tmCommand b/vendor/grammars/haskell.tmbundle/Commands/Show Type.tmCommand new file mode 100644 index 00000000..7ad9f337 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Commands/Show Type.tmCommand @@ -0,0 +1,24 @@ + + + + + beforeRunningCommand + nop + command + haskelltype "$(cat)" + fallbackInput + word + input + selection + keyEquivalent + ^h + name + Show Type + output + showAsTooltip + scope + source.haskell + uuid + 6B723007-D4EE-476B-8282-76230C559D5A + + diff --git a/vendor/grammars/haskell.tmbundle/Preferences/Comments.tmPreferences b/vendor/grammars/haskell.tmbundle/Preferences/Comments.tmPreferences new file mode 100644 index 00000000..718c6e2d --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Preferences/Comments.tmPreferences @@ -0,0 +1,36 @@ + + + + + name + Comments + scope + source.haskell + settings + + shellVariables + + + name + TM_COMMENT_START_2 + value + {- + + + name + TM_COMMENT_END_2 + value + -} + + + name + TM_COMMENT_START + value + -- + + + + uuid + E3994307-4D9E-44D6-832E-52C244F1CDF3 + + diff --git a/vendor/grammars/haskell.tmbundle/Preferences/Indentation.tmPreferences b/vendor/grammars/haskell.tmbundle/Preferences/Indentation.tmPreferences new file mode 100644 index 00000000..afff2e9e --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Preferences/Indentation.tmPreferences @@ -0,0 +1,23 @@ + + + + + name + Indentation + scope + source.haskell + settings + + decreaseIndentPattern + ^\s*$ + disableIndentCorrections + + increaseIndentPattern + ((^.*(=|\bdo|\bwhere|\bthen|\belse|\bof)\s*$)|(^.*\bif(?!.*\bthen\b.*\belse\b.*).*$)) + indentOnPaste + simple + + uuid + 39417FB9-B85C-4213-BB1D-C19BCDD4E487 + + diff --git a/vendor/grammars/haskell.tmbundle/Preferences/Symbol List.tmPreferences b/vendor/grammars/haskell.tmbundle/Preferences/Symbol List.tmPreferences new file mode 100644 index 00000000..3349a875 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Preferences/Symbol List.tmPreferences @@ -0,0 +1,17 @@ + + + + + name + Symbol List + scope + source.haskell entity.name.function.infix + settings + + showInSymbolList + 0 + + uuid + 0C39B945-E2C0-4E43-8A5B-332F6FA73C67 + + diff --git a/vendor/grammars/haskell.tmbundle/Preferences/Typing Pairs.plist b/vendor/grammars/haskell.tmbundle/Preferences/Typing Pairs.plist new file mode 100644 index 00000000..d9fff7d3 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Preferences/Typing Pairs.plist @@ -0,0 +1,38 @@ + + + + + name + Typing Pairs + scope + source.haskell - comment + settings + + smartTypingPairs + + + " + " + + + { + } + + + [ + ] + + + ( + ) + + + ` + ` + + + + uuid + FBF9D932-D5CE-4EC4-9162-122E511C8627 + + diff --git a/vendor/grammars/haskell.tmbundle/README.mdown b/vendor/grammars/haskell.tmbundle/README.mdown new file mode 100644 index 00000000..32d8f85a --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/README.mdown @@ -0,0 +1,20 @@ +# Installation + +You can install this bundle in TextMate by opening the preferences and going to the bundles tab. After installation it will be automatically updated for you. + +# General + +* [Bundle Styleguide](http://kb.textmate.org/bundle_styleguide) — _before you make changes_ +* [Commit Styleguide](http://kb.textmate.org/commit_styleguide) — _before you send a pull request_ +* [Writing Bug Reports](http://kb.textmate.org/writing_bug_reports) — _before you report an issue_ + +# License + +If not otherwise specified (see below), files in this repository fall under the following license: + + Permission to copy, use, modify, sell and distribute this + software is granted. This software is provided "as is" without + express or implied warranty, and with no claim as to its + suitability for any purpose. + +An exception is made for files in readable text which contain their own license information, or files where an accompanying file exists (in the same directory) with a “-license” suffix added to the base-name name of the original file, and an extension of txt, html, or similar. For example “tidy” is accompanied by “tidy-license.txt”. \ No newline at end of file diff --git a/vendor/grammars/haskell.tmbundle/Snippets/Definition.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/Definition.tmSnippet new file mode 100644 index 00000000..78f19026 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/Definition.tmSnippet @@ -0,0 +1,16 @@ + + + + + content + ${1:name} ${2:pattern}${2/.+/ /}= ${0:definition} + name + Definition + scope + source.haskell + tabTrigger + = + uuid + 81886A7D-5EE8-438C-9FC8-6BA3B65E444A + + diff --git a/vendor/grammars/haskell.tmbundle/Snippets/Function.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/Function.tmSnippet new file mode 100644 index 00000000..1094af9d --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/Function.tmSnippet @@ -0,0 +1,17 @@ + + + + + content + ${1:name} :: ${2:Type} +${1} ${3:pattern}${3/.+/ /}${4/.+/= /}${4:definition} + name + Function + scope + source.haskell + tabTrigger + fun + uuid + A83076A6-EC6F-418F-B8F9-9AE952964242 + + diff --git a/vendor/grammars/haskell.tmbundle/Snippets/Guard.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/Guard.tmSnippet new file mode 100644 index 00000000..ccf12269 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/Guard.tmSnippet @@ -0,0 +1,16 @@ + + + + + content + | ${1:predicate} = ${0:definition} + name + Guard + scope + source.haskell - comment + tabTrigger + | + uuid + BA1329DB-9437-4246-839A-48A49B48D31D + + diff --git a/vendor/grammars/haskell.tmbundle/Snippets/Haddock Postfix.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/Haddock Postfix.tmSnippet new file mode 100644 index 00000000..56e7e636 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/Haddock Postfix.tmSnippet @@ -0,0 +1,16 @@ + + + + + content + | ${0:documentation} + name + Haddock Postfix + scope + source.haskell comment.block + tabTrigger + | + uuid + 961E79B9-CC31-4843-BBE9-51F46598BC25 + + diff --git a/vendor/grammars/haskell.tmbundle/Snippets/Haddock Prefix.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/Haddock Prefix.tmSnippet new file mode 100644 index 00000000..0e1a35e8 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/Haddock Prefix.tmSnippet @@ -0,0 +1,16 @@ + + + + + content + ^ ${0:documentation} + name + Haddock Prefix + scope + source.haskell comment.block + tabTrigger + ^ + uuid + E0E613C1-0760-46BC-A51E-168E658904C5 + + diff --git a/vendor/grammars/haskell.tmbundle/Snippets/Hashbang.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/Hashbang.tmSnippet new file mode 100644 index 00000000..78ef4b3f --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/Hashbang.tmSnippet @@ -0,0 +1,17 @@ + + + + + content + #!/usr/bin/env ${1:runhaskell} + + name + #!/usr/bin/env… + scope + source.haskell + tabTrigger + #! + uuid + 54495635-CC26-4C14-A202-5C0CA4B078C2 + + diff --git a/vendor/grammars/haskell.tmbundle/Snippets/Lambda Expression.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/Lambda Expression.tmSnippet new file mode 100644 index 00000000..7cc131eb --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/Lambda Expression.tmSnippet @@ -0,0 +1,16 @@ + + + + + content + \\${1:pattern} -> ${0:expression} + name + Lambda Expression + scope + source.haskell + tabTrigger + \ + uuid + 0672CE3D-A796-44B1-AEF2-975C0FB27184 + + diff --git a/vendor/grammars/haskell.tmbundle/Snippets/Left Arrow.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/Left Arrow.tmSnippet new file mode 100644 index 00000000..ab95d2e5 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/Left Arrow.tmSnippet @@ -0,0 +1,18 @@ + + + + + content + ${1:name} <- ${0:expression} + keyEquivalent + ^, + name + Left Arrow + scope + source.haskell + tabTrigger + < + uuid + 9EF1F854-442C-40B2-BED5-454A015AA26D + + diff --git a/vendor/grammars/haskell.tmbundle/Snippets/List Comprehension.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/List Comprehension.tmSnippet new file mode 100644 index 00000000..0ae12d1d --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/List Comprehension.tmSnippet @@ -0,0 +1,16 @@ + + + + + content + [ ${1:expression} | ${2:name} <- ${3:expression}${4/.+/, /}${4:condition} + name + List Comprehension + scope + source.haskell constant.language.nil + tabTrigger + [ + uuid + C721BD84-71FA-423F-8460-2CED4954137F + + diff --git a/vendor/grammars/haskell.tmbundle/Snippets/Main.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/Main.tmSnippet new file mode 100644 index 00000000..6a636064 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/Main.tmSnippet @@ -0,0 +1,20 @@ + + + + + content + module Main where + +main :: IO () +main = ${0:putStrLn "Hello World"} + + name + Main + scope + source.haskell + tabTrigger + main + uuid + A3A65891-D126-4D2D-9E6B-E20ADE2EAA88 + + diff --git a/vendor/grammars/haskell.tmbundle/Snippets/Right Arrow.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/Right Arrow.tmSnippet new file mode 100644 index 00000000..984cc37b --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/Right Arrow.tmSnippet @@ -0,0 +1,18 @@ + + + + + content + ${1:expression} -> ${0:expression} + keyEquivalent + ^. + name + Right Arrow + scope + source.haskell + tabTrigger + > + uuid + BAF52ED4-6A5B-4260-B5BC-93D2012200C8 + + diff --git a/vendor/grammars/haskell.tmbundle/Snippets/Type Constraint.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/Type Constraint.tmSnippet new file mode 100644 index 00000000..ec100d91 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/Type Constraint.tmSnippet @@ -0,0 +1,16 @@ + + + + + content + (${1:Class}) => $0 + name + Type Constraint + scope + source.haskell meta.function.type + tabTrigger + = + uuid + 1D72833B-ED9F-4A5E-9B72-F77E4FD09CE9 + + diff --git a/vendor/grammars/haskell.tmbundle/Snippets/Type Sequence.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/Type Sequence.tmSnippet new file mode 100644 index 00000000..9f18048c --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/Type Sequence.tmSnippet @@ -0,0 +1,16 @@ + + + + + content + ${1:Type} -> ${0:Type} + name + Type Sequence + scope + source.haskell meta.function.type + tabTrigger + - + uuid + 17FC3207-9DC4-47F8-A9B3-B38FE5F84158 + + diff --git a/vendor/grammars/haskell.tmbundle/Snippets/Type Signature.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/Type Signature.tmSnippet new file mode 100644 index 00000000..d2131304 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/Type Signature.tmSnippet @@ -0,0 +1,16 @@ + + + + + content + ${1:name} :: ${0:Type} + name + Type Signature + scope + source.haskell + tabTrigger + :: + uuid + 78719987-0091-407A-B5F1-68456A67130D + + diff --git a/vendor/grammars/haskell.tmbundle/Snippets/case _ of _.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/case _ of _.tmSnippet new file mode 100644 index 00000000..242117a2 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/case _ of _.tmSnippet @@ -0,0 +1,18 @@ + + + + + content + case ${1:expression} of + ${2:pattern} -> ${3:expression} + ${4:otherwise} -> ${5:expression} + name + case … of … + scope + source.haskell + tabTrigger + case + uuid + DD1D7C05-BC60-4E62-BC8C-9230A32C2533 + + diff --git a/vendor/grammars/haskell.tmbundle/Snippets/class _.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/class _.tmSnippet new file mode 100644 index 00000000..600b2abe --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/class _.tmSnippet @@ -0,0 +1,17 @@ + + + + + content + class ${1:Class} where + ${0:definition} + name + class … + scope + source.haskell + tabTrigger + cla + uuid + 23F6173A-6390-46FF-865C-F59AB70E360A + + diff --git a/vendor/grammars/haskell.tmbundle/Snippets/data _.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/data _.tmSnippet new file mode 100644 index 00000000..d9b472d1 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/data _.tmSnippet @@ -0,0 +1,16 @@ + + + + + content + data ${1:Type} = ${0:Other} + name + data … + scope + source.haskell + tabTrigger + dat + uuid + 4C5EC5BB-6AE1-4825-AB50-1CF4741285E9 + + diff --git a/vendor/grammars/haskell.tmbundle/Snippets/deriving _.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/deriving _.tmSnippet new file mode 100644 index 00000000..661ed416 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/deriving _.tmSnippet @@ -0,0 +1,16 @@ + + + + + content + deriving (${0:Class}) + name + deriving … + scope + source.haskell meta.type + tabTrigger + der + uuid + 3FA57615-871F-4465-B35D-781B2EA9F5FC + + diff --git a/vendor/grammars/haskell.tmbundle/Snippets/do _.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/do _.tmSnippet new file mode 100644 index 00000000..9a9b84b6 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/do _.tmSnippet @@ -0,0 +1,17 @@ + + + + + content + do + ${1:return ${0:expression}} + name + do … + scope + source.haskell + tabTrigger + do + uuid + 397D02C1-A10B-4A83-8C05-6EB71E50D4CF + + diff --git a/vendor/grammars/haskell.tmbundle/Snippets/if _ then _ else _.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/if _ then _ else _.tmSnippet new file mode 100644 index 00000000..81bd3785 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/if _ then _ else _.tmSnippet @@ -0,0 +1,18 @@ + + + + + content + if ${1:condition} + then ${2:expression} + else ${3:expression} + name + if … then … else … + scope + source.haskell + tabTrigger + if + uuid + 5F2050D1-1347-40CE-854E-24B2BF389849 + + diff --git a/vendor/grammars/haskell.tmbundle/Snippets/import _ hiding _.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/import _ hiding _.tmSnippet new file mode 100644 index 00000000..88f6f5c3 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/import _ hiding _.tmSnippet @@ -0,0 +1,16 @@ + + + + + content + import ${1:Module}${2/.+/ hiding (/}${2:function}${2/.+/)/}$0 + name + import … hiding … + scope + source.haskell + tabTrigger + imph + uuid + 1BA6898C-E8C4-44C9-98F4-4823608FEFD1 + + diff --git a/vendor/grammars/haskell.tmbundle/Snippets/import _.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/import _.tmSnippet new file mode 100644 index 00000000..d9070688 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/import _.tmSnippet @@ -0,0 +1,16 @@ + + + + + content + import ${1:Module}${2/.+/ (/}${2:function}${2/.+/)/}$0 + name + import … + scope + source.haskell + tabTrigger + imp + uuid + 85150C9B-A5F1-450A-BEBF-119091146957 + + diff --git a/vendor/grammars/haskell.tmbundle/Snippets/import qualified _.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/import qualified _.tmSnippet new file mode 100644 index 00000000..6225658f --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/import qualified _.tmSnippet @@ -0,0 +1,16 @@ + + + + + content + import qualified ${1:Module}${2/.+/ as /}${2:Mod}${3/.+/ (/}${3:function}${3/.+/)/}$0 + name + import qualified … + scope + source.haskell + tabTrigger + impq + uuid + 32BC2D63-AF02-4DBA-8A75-6A74E334FE0C + + diff --git a/vendor/grammars/haskell.tmbundle/Snippets/instance _.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/instance _.tmSnippet new file mode 100644 index 00000000..3f725c17 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/instance _.tmSnippet @@ -0,0 +1,17 @@ + + + + + content + instance ${1:Class} ${2:Type} where + ${0:definition} + name + instance … + scope + source.haskell + tabTrigger + ins + uuid + 26F8FAFE-4438-4D3C-A453-AAB72FD0F719 + + diff --git a/vendor/grammars/haskell.tmbundle/Snippets/let _.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/let _.tmSnippet new file mode 100644 index 00000000..4eb4f333 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/let _.tmSnippet @@ -0,0 +1,18 @@ + + + + + content + let + ${1:name} = ${2:expression} + in ${0:expression} + name + let … + scope + source.haskell + tabTrigger + let + uuid + 88C8A6FB-B06D-4386-BA33-51E28F64AD88 + + diff --git a/vendor/grammars/haskell.tmbundle/Snippets/newtype _.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/newtype _.tmSnippet new file mode 100644 index 00000000..f7293376 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/newtype _.tmSnippet @@ -0,0 +1,16 @@ + + + + + content + newtype ${1:Type} = ${0:Other} + name + newtype … + scope + source.haskell + tabTrigger + new + uuid + EFCBAB59-D574-454D-A05A-8928CF81947F + + diff --git a/vendor/grammars/haskell.tmbundle/Snippets/type _.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/type _.tmSnippet new file mode 100644 index 00000000..1b33fc15 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/type _.tmSnippet @@ -0,0 +1,16 @@ + + + + + content + type ${1:Type} = ${0:Other} + name + type … + scope + source.haskell + tabTrigger + typ + uuid + 3C25C0C7-D764-4BF8-9BFF-AE6954AF106D + + diff --git a/vendor/grammars/haskell.tmbundle/Snippets/where _.tmSnippet b/vendor/grammars/haskell.tmbundle/Snippets/where _.tmSnippet new file mode 100644 index 00000000..c65c5eb5 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Snippets/where _.tmSnippet @@ -0,0 +1,17 @@ + + + + + content + where + ${0:definitions} + name + where … + scope + source.haskell + tabTrigger + where + uuid + A6FD9AB4-8E7E-47A8-B17D-D82F47A0C495 + + diff --git a/vendor/grammars/haskell.tmbundle/Support/bin/haskelltype b/vendor/grammars/haskell.tmbundle/Support/bin/haskelltype new file mode 100755 index 00000000..4f1ca275 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Support/bin/haskelltype @@ -0,0 +1,222 @@ +#!/usr/bin/env ruby18 -w + +word = ARGV.first + +prelude = ' +(!!) :: [a] -> Int -> a ||||| [0,1,2] !! 1 = 1 +($) :: (a -> b) -> a -> b ||||| f x $ g y = f x (g y) +($!) :: (a -> b) -> (a -> b) ||||| +(&&) :: Bool -> Bool -> Bool ||||| Boolean \'and\' +(||) :: Bool -> Bool -> Bool ||||| Boolean \'or\' +(*) :: Num a => a -> a -> a ||||| Multiplication +(**) :: Floating a => a -> a -> a ||||| Exponentiation +(+) :: Num a => a -> a -> a ||||| Addition +(++) :: [a] -> [a] -> [a] ||||| Concatonation: "abc" ++ "def" = "abcdef" +(-) :: Num a => a -> a -> a ||||| Subtraction +(.) :: (b -> c) -> (a -> b) -> a -> c ||||| Function composition +(/) :: Fractional a => a -> a -> a ||||| Division +(/=) :: Eq a => a -> a -> Bool ||||| not equal +(<) :: Ord a => a -> a -> Bool ||||| Less Than +(<=) :: Ord a => a -> a -> Bool ||||| Less Than or Equal To +(==) :: Eq a => a -> a -> Bool ||||| Equality +(=<<) :: Monad a => (a -> m b) -> m a -> m b ||||| Monadic binding +(>) :: Ord a => a -> a -> Bool ||||| Greater Than +(>=) :: Ord a => a -> a -> Bool ||||| Greater Than or Equal To +(>>) :: Monad m => m a -> m b -> m b ||||| Monadic binding +(>>=) :: Monad m => m a -> (a -> m b) -> m b ||||| Monadic binding +(^) :: (Num a, Integral b) => a -> b -> a ||||| Exponentiation +(^^) :: (Fractional a, Integral b) => a -> b -> a ||||| negative exponent allowed +abs :: Num a => a -> a ||||| Absolute Value +acos :: Floating a => a -> a ||||| Arccosine +acosh :: Floating a => a -> a ||||| Hyperbolic Arccosine +all :: (a -> Bool) -> [a] -> Bool ||||| all (/= \'a\') "cba" = False +and :: [Bool] -> Bool ||||| and [True, True, True] = True +any :: (a -> Bool) -> [a] -> Bool ||||| any (== \'c\') "abc" = True +appendFile :: FilePath -> String -> IO () ||||| Appends String to FilePath +applyM :: Monad m => (a -> m b) -> m a -> m b ||||| +asTypeOf :: a -> a -> a ||||| Sort of a type cast +asin :: Floating a => a -> a ||||| Arcsine +asinh :: Floating a => a -> a ||||| Hyperbolic Arcsine +atan :: Floating a => a -> a ||||| Arctangent +atan2 :: RealFrac a => a -> a ||||| ArcTangent +atanh :: Floating a => a -> a ||||| Hyperbolic Arctangent +break :: (a -> Bool) -> [a] -> ([a], [a]) ||||| break (<2) [1,2,3] = ([1],[2,3]) +catch :: IO a -> (IOError -> IO a) -> IO a ||||| +ceiling :: (RealFrac a, Integral b) => a -> b ||||| +compare :: Ord a => a -> a -> Ordering ||||| +concat :: MonadPlus m => [m a] -> m a ||||| concat ["a","bc","d"] = "abcd" +concatMap :: (a -> [b]) -> [a] -> [b] ||||| +const :: a -> b -> a ||||| +cos :: Floating a => a -> a ||||| +cosh :: Floating a => a -> a ||||| +curry :: ((a, b) -> c) -> a -> b -> c ||||| +cycle :: [a] -> [a] ||||| cycle "abc" = "abcabcabc... +decodeFloat :: RealFloat a => a -> (Integer, Int) ||||| +div :: Integral a => a -> a -> a ||||| +divMod :: Integral a => a -> a -> (a, a) ||||| +drop :: Int -> [a] -> [a] ||||| drop 2 "abcd" = "cd" +dropWhile :: (a -> Bool) -> [a] -> [a] ||||| dropWhile (>3) [5,3,5] = [3,5] +elem :: Eq a => a -> [a] -> Bool ||||| \'a\' \'elem\' "abc" = True +encodeFloat :: RealFloat a => Integer -> Int -> a ||||| +enumFrom :: Enum a => a -> [a] ||||| [n..] +enumFromThen :: Enum a => a -> a -> [a] ||||| [m,n..] +enumFromThenTo :: Enum a => a -> a -> a -> [a] ||||| [m,n..o] +enumFromTo :: Enum a => a -> a -> [a] ||||| [m..n] +error :: String -> a ||||| +even :: Integral a => a -> Bool ||||| +exp :: Floating a => a -> a ||||| +exponent :: RealFloat a => a -> Int ||||| +fail :: Monad m => String -> m a ||||| +filter :: (a -> Bool) -> [a] -> [a] ||||| +flip :: (a -> b -> c) -> (b -> a -> c) ||||| +floatDigits :: RealFloat a => a -> Int ||||| +floatRadix :: RealFloat a => a -> Integer ||||| +floatRange :: RealFloat a => a -> (Int, Int) ||||| +floor :: (RealFrac a, Integral b) => a -> b ||||| +fmap :: Functor f => (a -> b) -> f a -> f b ||||| +foldl :: (a -> b -> a) -> a -> [b] -> a ||||| foldl (+) 0 [a,b,c] = ((0+a)+b)+c +foldl1 :: (a -> a -> a) -> [a] -> a ||||| foldl1 (+) [a,b,c] = (a+b)+c +foldr :: (a -> b -> b) -> b -> [a] -> b ||||| foldr (+) 0 [a,b,c] = a+(b+(c+0)) +foldr1 :: (a -> a -> a) -> [a] -> a ||||| foldr1 (+) [a,b,c] = a+(b+c) +fromEnum :: Enum a => a -> Int ||||| +fromInteger :: Num a => Integer -> a ||||| +fromIntegral :: (Integral a, Num b) => a -> b ||||| +fromRational :: Fractional a => Rational -> a ||||| +fst :: (a, b) -> a ||||| +gcd :: (Integral a) => a -> a -> a ||||| +getChar :: IO Char ||||| eof generates an IOError +getContents :: IO String ||||| +getLine :: IO String ||||| eof generates an IOError +head :: [a] -> a ||||| +id :: a -> a ||||| +init :: [a] -> [a] ||||| init "abcd" = "abc" +interact :: (String -> String) -> IO () ||||| +ioError :: IOError -> IO a ||||| +isDenormalized :: RealFloat a => a -> Bool ||||| +isIEEE :: RealFloat a => a -> Bool ||||| +isInfinite :: RealFloat a => a -> Bool ||||| +isNaN :: RealFloat a => a -> Bool ||||| +isNegativeZero :: RealFloat a => a -> Bool ||||| +iterate :: (a -> a) -> a -> [a] ||||| iterate (++ " ") "" = ["", " ", " ",...] +last :: [a] -> a ||||| last "abcde" = "e" +lcm :: Integral a => a -> a -> a ||||| +length :: [a] -> Int ||||| length "Abc" = 3 +lex :: ReadS String ||||| lex "abc def" = [("abc"," def")] +lines :: String -> [String] ||||| +log :: Floating a => a -> a ||||| +logBase :: Floating a => a -> a -> a ||||| +lookup :: Eq a => a -> [(a, b)] -> Maybe b ||||| +map :: (a -> b) -> [a] -> [b] ||||| +mapM :: Monad m => (a -> m b) -> [a] -> m [b] ||||| +mapM_ :: Monad m => (a -> m b) -> [a] -> m () ||||| +max :: Ord a => a -> a -> a ||||| +maxBound :: Bounded a => a ||||| +maximum :: Ord a => [a] -> a ||||| +maybe :: b -> (a -> b) -> Maybe a -> b ||||| maybe 0 (+1) (Just 1) = 2 +min :: Ord a => a -> a -> a ||||| +minBound :: Bounded a => a ||||| +minimum :: Ord a => [a] -> a ||||| +mod :: Integral a => a -> a -> a ||||| +negate :: Num a => a -> a ||||| +not :: Bool -> Bool ||||| +notElem :: Eq a => a -> [a] -> Bool ||||| +null :: [a] -> Bool ||||| +odd :: Integral a => a -> Bool ||||| +or :: [Bool] -> Bool ||||| +otherwise :: Bool ||||| +pi :: Floating a => a ||||| +pred :: Enum a => a -> a ||||| pred True = False +print :: Show a => IO () ||||| adds a newline +product :: Num a => [a] -> a ||||| +properFraction :: (RealFrac a, Integral b) => a -> (b, a) ||||| +putChar :: Char -> IO () ||||| +putStr :: String -> IO () ||||| +putStrLn :: String -> IO () ||||| adds a newline +quot :: Integral a => a -> a -> a ||||| +quotRem :: Integral a => a -> a -> (a, a) ||||| +read :: Read a => String -> a ||||| +readFile :: FilePath -> IO String ||||| +readIO :: Read a => String -> IO a ||||| fails with IOError +readList :: Read a => ReadS [a] ||||| +readLn :: Read a => IO a ||||| +readParen :: Bool -> ReadS a -> ReadS a ||||| +reads :: Read a => ReadS a ||||| reads "1 2" :: [(Int,String)] = [(1," 2")] +readsPrec :: Read a => Int -> ReadS a ||||| +realToFrac :: (Real a, Fractional b) => a -> b ||||| +recip :: Fractional a => a -> a ||||| +rem :: Integral a => a -> a -> a ||||| +repeat :: a -> [a] ||||| repeat \'a\' = "aaaaaaaaa..." +replicate :: Int -> a -> [a] ||||| replicate 4 \'a\' = "aaaa" +return :: Monad m => a -> m a ||||| +reverse :: [a] -> [a] ||||| reverse "abc" = "cba" +round :: (RealFrac a, Integral b) => a -> b ||||| +scaleFloat :: RealFloat a => Int -> a -> a ||||| +scanl :: (a -> b -> a) -> a -> [b] -> [a] ||||| scanl (+) 0 [1,2,3] = [0,1,3,6] +scanl1 :: (a -> a -> a) -> [a] -> [a] ||||| scanl1 (+) [1,2,3] = [1,3,6] +scanr :: (a -> b -> b) -> b -> [a] -> [b] ||||| scanr (+) 0 [1,2,3] = [6,5,3,0] +scanr1 :: (a -> a -> a) -> [a] -> [a] ||||| scanr1 (+) [1,2,3] = [6,5,3] +seq :: a -> b -> b ||||| +sequence :: Monad m => [m a] -> m [a] ||||| +sequence_ :: Monad m => [m a] -> m () ||||| do operations in sequence +show :: Show a => a -> String ||||| +showChar :: Char -> ShowS ||||| +showList :: Show a => [a] -> ShowS ||||| +showParen :: Bool -> ShowS -> ShowS ||||| +showString :: String -> ShowS ||||| +shows :: Show a => a -> ShowS ||||| +showsPrec :: Show a => Int -> a -> ShowS ||||| +significand :: RealFloat a => a -> a ||||| +signum :: Num a => a -> a ||||| +sin :: Floating a => a -> a ||||| +sinh :: Floating a => a -> a ||||| +snd :: (a, b) -> b ||||| +span :: (a -> Bool) -> [a] -> ([a], [a]) ||||| span isAlpha "ab cd" = ("ab"," cd") +splitAt :: Int -> [a] -> ([a], [a]) ||||| splitAt 2 "abcdef" = ("ab","cdef") +sqrt :: Floating a => a -> a ||||| +subtract :: Num a => a -> a -> a ||||| +succ :: Enum a => a -> a ||||| succ False = True +sum :: Num a => [a] -> a ||||| sum [1,2,3] = 6 +tail :: [a] -> [a] ||||| tail "abc" = "bc" +take :: Int -> [a] -> [a] ||||| take 3 "abcde" = "abc" +takeWhile :: (a -> Bool) -> [a] -> [a] ||||| takeWhile (> 2) [3,2,1] = [3] +tan :: Floating a => a -> a ||||| +tanh :: Floating a => a -> a ||||| +toEnum :: Enum a => Int -> a ||||| toEnum 0 :: Bool = False +toInteger :: Integral a => a -> Integer ||||| +toRational :: Real a => a -> Rational ||||| +truncate :: (RealFrac a, Integral b) => a -> b ||||| +uncurry :: (a -> b -> c) -> ((a, b) -> c) ||||| +undefined :: a ||||| +unlines :: [String] -> String ||||| +until :: (a -> Bool) -> (a -> a) -> a -> a ||||| until (> 3) (+ 2) 0 = 4 +unwords :: [String] -> String ||||| +unzip :: [(a, b)] -> ([a], [b]) ||||| unzip [(\'a\',\'b\'),(\'c\',\'d\')] = ("ac",bd") +unzip3 :: [(a, b, c)] -> ([a], [b], [c]) ||||| +userError :: String -> IOError ||||| +words :: String -> [String] ||||| words "ab d as+3" = ["ab","d","as+3"] +writeFile :: FilePath -> String -> IO () ||||| +zip :: [a] -> [b] -> [(a, b)] ||||| zip "abc" "de" = [(\'a\',\'d\'), (\'b\',e\')] +zip3 :: [a] -> [b] -> [c] -> [(a, b, c)] ||||| +zipWith :: (a -> b -> c) -> [a] -> [b] -> [c] ||||| zipWith (+) [1,2] [3,4] = [4,6] +zipWith3 :: (a -> b -> c -> d) -> [a] -> [b] -> [c] -> [d] |||||' + +lookup = prelude.strip.split("\n").inject(Hash.new) { |h,l| + name, desc = l.split("::") + h[name.strip] = desc.split("|||||").map {|a| a.strip} + h +} + +if lookup[word] + puts lookup[word] +else + STDIN.each do |line| + name, desc = line.strip.split("::") + if name and desc + if name.split(",").map{|s| s.strip}.include?(word) + puts desc.strip + exit + end + end + end + puts "☿ It is a mystery ☿" +end diff --git a/vendor/grammars/haskell.tmbundle/Syntaxes/Haskell.plist b/vendor/grammars/haskell.tmbundle/Syntaxes/Haskell.plist new file mode 100644 index 00000000..6c8ae151 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Syntaxes/Haskell.plist @@ -0,0 +1,711 @@ + + + + + fileTypes + + hs + + keyEquivalent + ^~H + name + Haskell + patterns + + + captures + + 1 + + name + punctuation.definition.entity.haskell + + 2 + + name + punctuation.definition.entity.haskell + + + comment + In case this regex seems unusual for an infix operator, note that Haskell allows any ordinary function application (elem 4 [1..10]) to be rewritten as an infix expression (4 `elem` [1..10]). + match + (`)[\p{Ll}_][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*(`) + name + keyword.operator.function.infix.haskell + + + match + \(\) + name + constant.language.unit.haskell + + + match + \[\] + name + constant.language.empty-list.haskell + + + begin + \b(module)\b + beginCaptures + + 1 + + name + keyword.other.haskell + + + end + \b(where)\b + endCaptures + + 1 + + name + keyword.other.haskell + + + name + meta.declaration.module.haskell + patterns + + + include + #module_name + + + include + #module_exports + + + match + [a-z]+ + name + invalid + + + + + begin + \b(class)\b + beginCaptures + + 1 + + name + keyword.other.haskell + + + end + \b(where)\b + endCaptures + + 1 + + name + keyword.other.haskell + + + name + meta.declaration.class.haskell + patterns + + + match + \b(Monad|Functor|Eq|Ord|Read|Show|Num|(Frac|Ra)tional|Enum|Bounded|Real(Frac|Float)?|Integral|Floating)\b + name + support.class.prelude.haskell + + + match + [\p{Lu}\p{Lt}][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']* + name + entity.other.inherited-class.haskell + + + match + \b[\p{Ll}_][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']* + name + variable.other.generic-type.haskell + + + + + begin + \b(instance)\b + beginCaptures + + 1 + + name + keyword.other.haskell + + + end + \b(where)\b|$ + endCaptures + + 1 + + name + keyword.other.haskell + + + name + meta.declaration.instance.haskell + patterns + + + include + #type_signature + + + + + begin + \b(import)\b + beginCaptures + + 1 + + name + keyword.other.haskell + + + end + ($|;|(?=--)) + name + meta.import.haskell + patterns + + + match + (qualified|as|hiding) + name + keyword.other.haskell + + + include + #module_name + + + include + #module_exports + + + + + begin + (deriving)\s*\( + beginCaptures + + 1 + + name + keyword.other.haskell + + + end + \) + name + meta.deriving.haskell + patterns + + + match + \b[\p{Lu}\p{Lt}][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']* + name + entity.other.inherited-class.haskell + + + + + match + \b(deriving|where|data|type|case|of|let|in|newtype|default)\b + name + keyword.other.haskell + + + match + \binfix[lr]?\b + name + keyword.operator.haskell + + + match + \b(do|if|then|else)\b + name + keyword.control.haskell + + + comment + Floats are always decimal + match + \b([0-9]+\.[0-9]+([eE][+-]?[0-9]+)?|[0-9]+[eE][+-]?[0-9]+)\b + name + constant.numeric.float.haskell + + + match + \b([0-9]+|0([xX][0-9a-fA-F]+|[oO][0-7]+))\b + name + constant.numeric.haskell + + + captures + + 1 + + name + punctuation.definition.preprocessor.c + + + comment + In addition to Haskell's "native" syntax, GHC permits the C preprocessor to be run on a source file. + match + ^\s*(#)\s*\w+ + name + meta.preprocessor.c + + + include + #pragma + + + begin + " + beginCaptures + + 0 + + name + punctuation.definition.string.begin.haskell + + + end + " + endCaptures + + 0 + + name + punctuation.definition.string.end.haskell + + + name + string.quoted.double.haskell + patterns + + + match + \\(NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\\"'\&]) + name + constant.character.escape.haskell + + + match + \\o[0-7]+|\\x[0-9A-Fa-f]+|\\[0-9]+ + name + constant.character.escape.octal.haskell + + + match + \^[A-Z@\[\]\\\^_] + name + constant.character.escape.control.haskell + + + begin + \\\s + beginCaptures + + 0 + + name + constant.character.escape.begin.haskell + + + end + \\ + endCaptures + + 0 + + name + constant.character.escape.end.haskell + + + patterns + + + match + \S+ + name + invalid.illegal.character-not-allowed-here.haskell + + + + + + + captures + + 1 + + name + punctuation.definition.string.begin.haskell + + 2 + + name + constant.character.escape.haskell + + 3 + + name + constant.character.escape.octal.haskell + + 4 + + name + constant.character.escape.hexadecimal.haskell + + 5 + + name + constant.character.escape.control.haskell + + 6 + + name + punctuation.definition.string.end.haskell + + + match + (?x) + (') + (?: + [\ -\[\]-~] # Basic Char + | (\\(?:NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE + |DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS + |US|SP|DEL|[abfnrtv\\\"'\&])) # Escapes + | (\\o[0-7]+) # Octal Escapes + | (\\x[0-9A-Fa-f]+) # Hexadecimal Escapes + | (\^[A-Z@\[\]\\\^_]) # Control Chars + ) + (') + + name + string.quoted.single.haskell + + + begin + ^\s*(?<fn>(?:[\p{Ll}_][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*|\((?!--+\))((?![(),;\[\]`{}_"'])[\p{S}\p{P}])+\))(?:\s*,\s*\g<fn>)?)\s*(::) + beginCaptures + + 1 + + patterns + + + match + [\p{Ll}_][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']* + name + entity.name.function.haskell + + + include + #infix_op + + + + 2 + + name + keyword.other.double-colon.haskell + + + end + $\n? + name + meta.function.type-declaration.haskell + patterns + + + include + #type_signature + + + + + match + \b(Just|Nothing|Left|Right|True|False|LT|EQ|GT|\(\)|\[\])\b + name + support.constant.haskell + + + match + \b[\p{Lu}\p{Lt}][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']* + name + constant.other.haskell + + + include + #comments + + + match + \b(abs|acos|acosh|all|and|any|appendFile|applyM|asTypeOf|asin|asinh|atan|atan2|atanh|break|catch|ceiling|compare|concat|concatMap|const|cos|cosh|curry|cycle|decodeFloat|div|divMod|drop|dropWhile|elem|encodeFloat|enumFrom|enumFromThen|enumFromThenTo|enumFromTo|error|even|exp|exponent|fail|filter|flip|floatDigits|floatRadix|floatRange|floor|fmap|foldl|foldl1|foldr|foldr1|fromEnum|fromInteger|fromIntegral|fromRational|fst|gcd|getChar|getContents|getLine|head|id|init|interact|ioError|isDenormalized|isIEEE|isInfinite|isNaN|isNegativeZero|iterate|last|lcm|length|lex|lines|log|logBase|lookup|map|mapM|mapM_|max|maxBound|maximum|maybe|min|minBound|minimum|mod|negate|not|notElem|null|odd|or|otherwise|pi|pred|print|product|properFraction|putChar|putStr|putStrLn|quot|quotRem|read|readFile|readIO|readList|readLn|readParen|reads|readsPrec|realToFrac|recip|rem|repeat|replicate|return|reverse|round|scaleFloat|scanl|scanl1|scanr|scanr1|seq|sequence|sequence_|show|showChar|showList|showParen|showString|shows|showsPrec|significand|signum|sin|sinh|snd|span|splitAt|sqrt|subtract|succ|sum|tail|take|takeWhile|tan|tanh|toEnum|toInteger|toRational|truncate|uncurry|undefined|unlines|until|unwords|unzip|unzip3|userError|words|writeFile|zip|zip3|zipWith|zipWith3)\b(?!') + name + support.function.prelude.haskell + + + include + #infix_op + + + comment + In case this regex seems overly general, note that Haskell permits the definition of new operators which can be nearly any string of punctuation characters, such as $%^&*. + match + ((?![(),;\[\]`{}_"'])[\p{S}\p{P}])+ + name + keyword.operator.haskell + + + match + , + name + punctuation.separator.comma.haskell + + + repository + + block_comment + + applyEndPatternLast + 1 + begin + \{-(?!#) + captures + + 0 + + name + punctuation.definition.comment.haskell + + + end + -\} + name + comment.block.haskell + patterns + + + include + #block_comment + + + + comments + + patterns + + + begin + (^[ \t]+)?(?=--+((?![\p{S}\p{P}])|[(),;\[\]`{}_"'])) + beginCaptures + + 1 + + name + punctuation.whitespace.comment.leading.haskell + + + comment + Operators may begin with '--' as long as they are not entirely composed of '-' characters. This means comments can't be immediately followed by an allowable operator character. + end + (?!\G) + patterns + + + begin + -- + beginCaptures + + 0 + + name + punctuation.definition.comment.haskell + + + end + \n + name + comment.line.double-dash.haskell + + + + + include + #block_comment + + + + infix_op + + comment + An operator cannot be composed entirely of '-' characters; instead, it should be matched as a comment. + match + (\((?!--+\))((?![(),;\[\]`{}_"'])[\p{S}\p{P}])+\)|\(,+\)) + name + entity.name.function.infix.haskell + + module_exports + + begin + \( + end + \) + name + meta.declaration.exports.haskell + patterns + + + match + \b[\p{Ll}_][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']* + name + entity.name.function.haskell + + + match + \b[\p{Lu}\p{Lt}][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']* + name + storage.type.haskell + + + match + , + name + punctuation.separator.comma.haskell + + + include + #infix_op + + + comment + So named because I don't know what to call this. + match + \(.*?\) + name + meta.other.unknown.haskell + + + + module_name + + match + (?<conid>[\p{Lu}\p{Lt}][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*(\.\g<conid>)?) + name + support.other.module.haskell + + pragma + + begin + \{-# + end + #-\} + name + meta.preprocessor.haskell + patterns + + + match + \b(LANGUAGE|UNPACK|INLINE)\b + name + keyword.other.preprocessor.haskell + + + + type_signature + + patterns + + + captures + + 1 + + name + entity.other.inherited-class.haskell + + 2 + + name + variable.other.generic-type.haskell + + 3 + + name + keyword.other.big-arrow.haskell + + + match + \(\s*([\p{Lu}\p{Lt}][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*)\s+([\p{Ll}_][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*)\)\s*(=>) + name + meta.class-constraint.haskell + + + include + #pragma + + + match + -> + name + keyword.other.arrow.haskell + + + match + => + name + keyword.other.big-arrow.haskell + + + match + \b(Int(eger)?|Maybe|Either|Bool|Float|Double|Char|String|Ordering|ShowS|ReadS|FilePath|IO(Error)?)\b + name + support.type.prelude.haskell + + + match + \b[\p{Ll}_][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']* + name + variable.other.generic-type.haskell + + + match + \b[\p{Lu}\p{Lt}][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']* + name + storage.type.haskell + + + match + \(\) + name + support.constant.unit.haskell + + + include + #comments + + + + + scopeName + source.haskell + uuid + 5C034675-1F6D-497E-8073-369D37E2FD7D + + diff --git a/vendor/grammars/haskell.tmbundle/Syntaxes/Literate Haskell.plist b/vendor/grammars/haskell.tmbundle/Syntaxes/Literate Haskell.plist new file mode 100644 index 00000000..d819ef03 --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/Syntaxes/Literate Haskell.plist @@ -0,0 +1,92 @@ + + + + + fileTypes + + lhs + + keyEquivalent + ^~H + name + Literate Haskell + patterns + + + begin + ^((\\)begin)({)code(})(\s*\n)? + captures + + 1 + + name + support.function.be.latex + + 2 + + name + punctuation.definition.function.latex + + 3 + + name + punctuation.definition.arguments.begin.latex + + 4 + + name + punctuation.definition.arguments.end.latex + + + contentName + source.haskell.embedded.latex + end + ^((\\)end)({)code(}) + name + meta.embedded.block.haskell.latex + patterns + + + include + source.haskell + + + + + begin + ^(> ) + beginCaptures + + 1 + + name + punctuation.definition.bird-track.haskell + + + comment + This breaks type signature detection for now, but it's better than having no highlighting whatsoever. + contentName + source.haskell + end + $ + name + meta.embedded.haskell + patterns + + + include + source.haskell + + + + + include + text.tex.latex + + + scopeName + text.tex.latex.haskell + uuid + 439807F5-7129-487D-B5DC-95D5272B43DD + + diff --git a/vendor/grammars/haskell.tmbundle/info.plist b/vendor/grammars/haskell.tmbundle/info.plist new file mode 100644 index 00000000..8b942e8f --- /dev/null +++ b/vendor/grammars/haskell.tmbundle/info.plist @@ -0,0 +1,58 @@ + + + + + contactEmailRot13 + wnzvf@37fvtanyf.pbz + contactName + Jamis Buck + description + Support for <a href="http://www.haskell.org/">Haskell</a>, a general purpose, purely functional programming language featuring static typing, higher order functions, polymorphism, type classes, and monadic effects. + mainMenu + + items + + 3B083BE7-9812-4F06-A758-CCAD9514E797 + 2242C46C-153E-4EEB-B80B-A5398559D759 + ------------------------------------ + 6B723007-D4EE-476B-8282-76230C559D5A + 50D814AE-D850-4C97-AF3E-1FDE4366C6A3 + ------------------------------------ + FA4AA254-EB7D-4B43-AC67-066AA9E8E8D9 + ------------------------------------ + A3A65891-D126-4D2D-9E6B-E20ADE2EAA88 + 21646767-DD1B-4BA9-BF3B-15968F8672AB + 18F43074-566D-4AD9-8DCE-9C26B8516B64 + CE424A97-E486-4DE7-9328-C6ADB99B4ABD + ------------------------------------ + 89248B78-C2C6-48EE-BC47-CF8E9A5EA0E7 + + submenus + + + name + Haskell + ordering + + 3B083BE7-9812-4F06-A758-CCAD9514E797 + 2242C46C-153E-4EEB-B80B-A5398559D759 + 6B723007-D4EE-476B-8282-76230C559D5A + 50D814AE-D850-4C97-AF3E-1FDE4366C6A3 + FA4AA254-EB7D-4B43-AC67-066AA9E8E8D9 + A3A65891-D126-4D2D-9E6B-E20ADE2EAA88 + 21646767-DD1B-4BA9-BF3B-15968F8672AB + 18F43074-566D-4AD9-8DCE-9C26B8516B64 + CE424A97-E486-4DE7-9328-C6ADB99B4ABD + 89248B78-C2C6-48EE-BC47-CF8E9A5EA0E7 + 4B154C05-D107-4316-9AAD-43A3DCF1860A + 5C034675-1F6D-497E-8073-369D37E2FD7D + 439807F5-7129-487D-B5DC-95D5272B43DD + E3994307-4D9E-44D6-832E-52C244F1CDF3 + 39417FB9-B85C-4213-BB1D-C19BCDD4E487 + 0C39B945-E2C0-4E43-8A5B-332F6FA73C67 + FBF9D932-D5CE-4EC4-9162-122E511C8627 + + uuid + 118557A4-4FEF-406D-A68E-BD191D9CBC83 + + diff --git a/vendor/grammars/java.tmbundle b/vendor/grammars/java.tmbundle index 64294ae0..faffa518 160000 --- a/vendor/grammars/java.tmbundle +++ b/vendor/grammars/java.tmbundle @@ -1 +1 @@ -Subproject commit 64294ae0b62b64b1183c401e3803679eaddb4946 +Subproject commit faffa518d0b22b68b4e5e6b4c939722522b97d40 diff --git a/vendor/grammars/json.tmbundle b/vendor/grammars/json.tmbundle index 0762cbdc..563b6f62 160000 --- a/vendor/grammars/json.tmbundle +++ b/vendor/grammars/json.tmbundle @@ -1 +1 @@ -Subproject commit 0762cbdcb34dd98801b6323e75332cd4c9dbc07e +Subproject commit 563b6f629bcf2c77d239b03fa768f869a4cba368 diff --git a/vendor/grammars/language-babel b/vendor/grammars/language-babel index 0d093e8f..c9d6dbf4 160000 --- a/vendor/grammars/language-babel +++ b/vendor/grammars/language-babel @@ -1 +1 @@ -Subproject commit 0d093e8ffeaa80602c6f3ae86fade6a3b5f56e4d +Subproject commit c9d6dbf4637c0c703aa9ada87afdca5a9cfb3e30 diff --git a/vendor/grammars/language-blade b/vendor/grammars/language-blade index 50dcfb72..fcbe2c20 160000 --- a/vendor/grammars/language-blade +++ b/vendor/grammars/language-blade @@ -1 +1 @@ -Subproject commit 50dcfb72af30b267c4397f21742d79e4d564642f +Subproject commit fcbe2c202295ba1b3f3d2156b64a82999f51374d diff --git a/vendor/grammars/language-clojure b/vendor/grammars/language-clojure index d41af288..bc86668c 160000 --- a/vendor/grammars/language-clojure +++ b/vendor/grammars/language-clojure @@ -1 +1 @@ -Subproject commit d41af288008c6857198a3734d9f27e4f2f6650c5 +Subproject commit bc86668c40817aefbba2164032fcd24c2438b576 diff --git a/vendor/grammars/language-coffee-script b/vendor/grammars/language-coffee-script index 9ebf4740..8f001efe 160000 --- a/vendor/grammars/language-coffee-script +++ b/vendor/grammars/language-coffee-script @@ -1 +1 @@ -Subproject commit 9ebf474016d7e984bfe40e36d7f5ea774dc1e4b9 +Subproject commit 8f001efe73422d0f7a0c16121588c34e0bd5fe8c diff --git a/vendor/grammars/language-crystal b/vendor/grammars/language-crystal index ec1e4991..0d7ac572 160000 --- a/vendor/grammars/language-crystal +++ b/vendor/grammars/language-crystal @@ -1 +1 @@ -Subproject commit ec1e4991e6647da9ca2c5337b795700c1f6ee7e4 +Subproject commit 0d7ac572e4628adf5206b03af9fc45cdd815476a diff --git a/vendor/grammars/language-csharp b/vendor/grammars/language-csharp index b3f1130b..c97c4bf7 160000 --- a/vendor/grammars/language-csharp +++ b/vendor/grammars/language-csharp @@ -1 +1 @@ -Subproject commit b3f1130b1ae7f0bab2763d45926033aba92fb48c +Subproject commit c97c4bf74d74502c0b78901b12aab09186dc0eba diff --git a/vendor/grammars/language-csound b/vendor/grammars/language-csound index f5c603ac..29d8eca1 160000 --- a/vendor/grammars/language-csound +++ b/vendor/grammars/language-csound @@ -1 +1 @@ -Subproject commit f5c603ac1168972d252a60edac2fab5dd3470b40 +Subproject commit 29d8eca1a8366295b9c7f052cbc667983d337a75 diff --git a/vendor/grammars/language-gfm b/vendor/grammars/language-gfm index 54359235..a55c18c3 160000 --- a/vendor/grammars/language-gfm +++ b/vendor/grammars/language-gfm @@ -1 +1 @@ -Subproject commit 54359235212c921d4e09ed38575a9e9eb95635b8 +Subproject commit a55c18c3dc4d3fa9e5fb87fab0b0976b87526cbd diff --git a/vendor/grammars/language-haskell b/vendor/grammars/language-haskell index 16e6122e..296a7e94 160000 --- a/vendor/grammars/language-haskell +++ b/vendor/grammars/language-haskell @@ -1 +1 @@ -Subproject commit 16e6122e17ac5705dd18a1680142f29d059a4724 +Subproject commit 296a7e94df6b3c89c5247510b7ba4eb71f14c55f diff --git a/vendor/grammars/language-javascript b/vendor/grammars/language-javascript index 83f9e51b..84b91e81 160000 --- a/vendor/grammars/language-javascript +++ b/vendor/grammars/language-javascript @@ -1 +1 @@ -Subproject commit 83f9e51bc96b56d392e603c6efbbfba453e7c4a7 +Subproject commit 84b91e819128cf6a225c215688fcf74872b72158 diff --git a/vendor/grammars/language-less b/vendor/grammars/language-less index 234fd8a3..d4f5db5f 160000 --- a/vendor/grammars/language-less +++ b/vendor/grammars/language-less @@ -1 +1 @@ -Subproject commit 234fd8a37be054209a7e1726c29923f4171a2f90 +Subproject commit d4f5db5fba671244c1f2085752d1ea9ce34f8bad diff --git a/vendor/grammars/language-python b/vendor/grammars/language-python index d5ae6974..bc204508 160000 --- a/vendor/grammars/language-python +++ b/vendor/grammars/language-python @@ -1 +1 @@ -Subproject commit d5ae69749bde41cc9da8020786106958f376ef5b +Subproject commit bc204508498b1695a4448bd2cf9a3d31c1cdaf5e diff --git a/vendor/grammars/language-renpy b/vendor/grammars/language-renpy index 883f51f4..a3b9bbed 160000 --- a/vendor/grammars/language-renpy +++ b/vendor/grammars/language-renpy @@ -1 +1 @@ -Subproject commit 883f51f4ef5d310121e45d30205f96d3ade4c248 +Subproject commit a3b9bbed668137ab8db5dbafea4d5611957e68ee diff --git a/vendor/grammars/language-restructuredtext b/vendor/grammars/language-restructuredtext index 71336125..f4f931ab 160000 --- a/vendor/grammars/language-restructuredtext +++ b/vendor/grammars/language-restructuredtext @@ -1 +1 @@ -Subproject commit 71336125686fc61e26da1f0b6642930295b467de +Subproject commit f4f931ab7fd2ee4c07db35d3b884c14585da6e3f diff --git a/vendor/grammars/language-roff b/vendor/grammars/language-roff index 8c0b3275..bef44851 160000 --- a/vendor/grammars/language-roff +++ b/vendor/grammars/language-roff @@ -1 +1 @@ -Subproject commit 8c0b327560f9e2225a6be9817ab20f84ad4f37b3 +Subproject commit bef448515021f7112d42403c0a3d5814a13b193f diff --git a/vendor/grammars/language-shellscript b/vendor/grammars/language-shellscript index 8019ad83..6b936dae 160000 --- a/vendor/grammars/language-shellscript +++ b/vendor/grammars/language-shellscript @@ -1 +1 @@ -Subproject commit 8019ad833cc55cec04e8fd89d492b66702c6884f +Subproject commit 6b936daeca50d0551a44b0d014e9debbf02516e9 diff --git a/vendor/grammars/language-toc-wow b/vendor/grammars/language-toc-wow index f538862f..03e7c2a0 160000 --- a/vendor/grammars/language-toc-wow +++ b/vendor/grammars/language-toc-wow @@ -1 +1 @@ -Subproject commit f538862fdd122f249c414d4d5b76f3c8d3b4d94d +Subproject commit 03e7c2a02f2c3b2b0101929547768af5a88a7ddf diff --git a/vendor/grammars/language-yaml b/vendor/grammars/language-yaml index 9f55beb6..784cecc6 160000 --- a/vendor/grammars/language-yaml +++ b/vendor/grammars/language-yaml @@ -1 +1 @@ -Subproject commit 9f55beb63517483971d256d521e30a7fb0b2bcc0 +Subproject commit 784cecc64ffdb891f6a7fbba62e476b0c833e66f diff --git a/vendor/grammars/latex.tmbundle b/vendor/grammars/latex.tmbundle index a5c14e1c..cb0c7590 160000 --- a/vendor/grammars/latex.tmbundle +++ b/vendor/grammars/latex.tmbundle @@ -1 +1 @@ -Subproject commit a5c14e1ce9f29ceac4efd6578e03a12fe99e8cf8 +Subproject commit cb0c75906cdead220f45acc27225245dd966ef55 diff --git a/vendor/grammars/objective-c.tmbundle b/vendor/grammars/objective-c.tmbundle index fdcedb95..583d31f6 160000 --- a/vendor/grammars/objective-c.tmbundle +++ b/vendor/grammars/objective-c.tmbundle @@ -1 +1 @@ -Subproject commit fdcedb95de8846220c49f769fee91045188767d9 +Subproject commit 583d31f6734589a6ea1e2da1be9da57cf25a63f9 diff --git a/vendor/grammars/pawn-sublime-language b/vendor/grammars/pawn-sublime-language index 879fae61..1916b03b 160000 --- a/vendor/grammars/pawn-sublime-language +++ b/vendor/grammars/pawn-sublime-language @@ -1 +1 @@ -Subproject commit 879fae615707c5b0073d6ac9a28b701eb14a57b1 +Subproject commit 1916b03ba0f61f488637310c7608b3244fc80c0e diff --git a/vendor/grammars/php.tmbundle b/vendor/grammars/php.tmbundle index 3ed4837b..010cc1c2 160000 --- a/vendor/grammars/php.tmbundle +++ b/vendor/grammars/php.tmbundle @@ -1 +1 @@ -Subproject commit 3ed4837b43d3f650ebb525b068636281942883a0 +Subproject commit 010cc1c22c89c117ad4c985997668c3903dc37f0 diff --git a/vendor/grammars/ruby-slim.tmbundle b/vendor/grammars/ruby-slim.tmbundle index 7452b27e..2016357d 160000 --- a/vendor/grammars/ruby-slim.tmbundle +++ b/vendor/grammars/ruby-slim.tmbundle @@ -1 +1 @@ -Subproject commit 7452b27ea4aa8cbe19d99bd92aa40ac3560c6a93 +Subproject commit 2016357d9ca16b8c3e8c2aa9ac0a48ed46f27adb diff --git a/vendor/grammars/sas.tmbundle b/vendor/grammars/sas.tmbundle index 012368ab..776b5477 160000 --- a/vendor/grammars/sas.tmbundle +++ b/vendor/grammars/sas.tmbundle @@ -1 +1 @@ -Subproject commit 012368ab93235a4e4ff70785aaf2cbf5017e13fe +Subproject commit 776b54772b27f6f30be714fbabf9eb9abba3d013 diff --git a/vendor/grammars/smali-sublime b/vendor/grammars/smali-sublime index 60a1fdb3..5bcea806 160000 --- a/vendor/grammars/smali-sublime +++ b/vendor/grammars/smali-sublime @@ -1 +1 @@ -Subproject commit 60a1fdb3442cd7082036f1a02e403a5f725ed837 +Subproject commit 5bcea806cf69a6ebce799b0995bdfd4d7865989e diff --git a/vendor/grammars/sublime-autoit b/vendor/grammars/sublime-autoit index d4e742a7..eeca5030 160000 --- a/vendor/grammars/sublime-autoit +++ b/vendor/grammars/sublime-autoit @@ -1 +1 @@ -Subproject commit d4e742a73afc8eb249f64736c43cb4976cafe9c8 +Subproject commit eeca5030567213210108fb24d123399575fd94ae diff --git a/vendor/grammars/sublime-rust b/vendor/grammars/sublime-rust index 167018cc..d3c63dec 160000 --- a/vendor/grammars/sublime-rust +++ b/vendor/grammars/sublime-rust @@ -1 +1 @@ -Subproject commit 167018cc0f76f51e3911c40af8faf914cb48f66f +Subproject commit d3c63dec579be852b1d8006dc58a9a6f2a9e6cdc diff --git a/vendor/grammars/sublime-typescript b/vendor/grammars/sublime-typescript index 0d538fc7..27529a65 160000 --- a/vendor/grammars/sublime-typescript +++ b/vendor/grammars/sublime-typescript @@ -1 +1 @@ -Subproject commit 0d538fc74884c812eece814acbe32e9bd8e28a3f +Subproject commit 27529a651f1aea441c3a8c809b0858d0900d82aa diff --git a/vendor/grammars/sublime_man_page_support/.gitignore b/vendor/grammars/sublime_man_page_support/.gitignore new file mode 100644 index 00000000..91fa95c6 --- /dev/null +++ b/vendor/grammars/sublime_man_page_support/.gitignore @@ -0,0 +1,2 @@ +*.cache +*.pyc diff --git a/vendor/grammars/sublime_man_page_support/LICENSE b/vendor/grammars/sublime_man_page_support/LICENSE new file mode 100644 index 00000000..200d1262 --- /dev/null +++ b/vendor/grammars/sublime_man_page_support/LICENSE @@ -0,0 +1,20 @@ +The MIT License (MIT) + +Copyright (c) 2013 carsonoid + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/vendor/grammars/sublime_man_page_support/Main.sublime-menu b/vendor/grammars/sublime_man_page_support/Main.sublime-menu new file mode 100644 index 00000000..f1d0110f --- /dev/null +++ b/vendor/grammars/sublime_man_page_support/Main.sublime-menu @@ -0,0 +1,23 @@ +[ + { + "id": "tools", + "children": + [ + { + "id": "packages", + "caption": "Packages", + "children": + [ + { + "caption": "Man Page Editing", + "id": "man_page_dev", + "children": + [ + { "caption": "New Man Page", "command": "man_page_new" } + ] + } + ] + } + ] + } +] diff --git a/vendor/grammars/sublime_man_page_support/ManPage.sublime-build b/vendor/grammars/sublime_man_page_support/ManPage.sublime-build new file mode 100644 index 00000000..0c5c11ed --- /dev/null +++ b/vendor/grammars/sublime_man_page_support/ManPage.sublime-build @@ -0,0 +1,4 @@ +{ + "target": "man_page_preview", + "selector": "text.groff" +} diff --git a/vendor/grammars/sublime_man_page_support/ManPage.sublime-commands b/vendor/grammars/sublime_man_page_support/ManPage.sublime-commands new file mode 100644 index 00000000..7bfeb83d --- /dev/null +++ b/vendor/grammars/sublime_man_page_support/ManPage.sublime-commands @@ -0,0 +1,10 @@ +[ + { + "caption": "Create New Man Page", + "command": "man_page_new" + }, + { + "caption": "Preview Current Man Page", + "command": "man_page_preview" + } +] diff --git a/vendor/grammars/sublime_man_page_support/README.md b/vendor/grammars/sublime_man_page_support/README.md new file mode 100644 index 00000000..6cf11c86 --- /dev/null +++ b/vendor/grammars/sublime_man_page_support/README.md @@ -0,0 +1,10 @@ +#Sublime Man Page Support + +Sublime Text 2 Support for Unix style manual pages. + +## Includes: + + * groff syntax highlighting + * command to create a new man page skeleton + * snippet that will add useful macros to your man pages on older systems (must come before man page content) + * Preview command, build-system, and syntax diff --git a/vendor/grammars/sublime_man_page_support/groff-enhancements.sublime-snippet b/vendor/grammars/sublime_man_page_support/groff-enhancements.sublime-snippet new file mode 100644 index 00000000..ce944f8c --- /dev/null +++ b/vendor/grammars/sublime_man_page_support/groff-enhancements.sublime-snippet @@ -0,0 +1,201 @@ + + 1 \\ +. nx +. +.\\" Check whether we are using grohtml. +.nr mH 0 +.if \\n(.g \\ +. if '\\*(.T'html' \\ +. nr mH 1 +. +. +.\\" Map mono-width fonts to standard fonts for groff's TTY device. +.if n \\{\\ +. do ftr CR R +. do ftr CI I +. do ftr CB B +.\\} +. +.\\" groff has glyph entities for angle brackets. +.ie \\n(.g \\{\\ +. ds la \\(la\\" +. ds ra \\(ra\\" +.\\} +.el \\{\\ +. ds la <\\" +. ds ra >\\" +. \\" groff's man macros control hyphenation with this register. +. nr HY 1 +.\\} +. +.nr mS 0 +. +. +.\\" Declare start of command synopsis. Sets up hanging indentation. +.de SY +. ie !\\\\n(mS \\{\\ +. nh +. nr mS 1 +. nr mA \\\\n(.j +. ad l +. nr mI \\\\n(.i +. \\} +. el \\{\\ +. br +. ns +. \\} +. +. nr mT \\w'\\fB\\\\\$1\\fP\\ ' +. HP \\\\n(mTu +. B "\\\\\$1" +.. +. +. +.\\" End of command synopsis. Restores adjustment. +.de YS +. in \\\\n(mIu +. ad \\\\n(mA +. hy \\\\n(HY +. nr mS 0 +.. +. +. +.\\" Declare optional option. +.de OP +. ie \\\\n(.\$-1 \\ +. RI "[\\fB\\\\\$1\\fP" "\\ \\\\\$2" "]" +. el \\ +. RB "[" "\\\\\$1" "]" +.. +. +. +.\\" Start URL. +.de UR +. ds m1 \\\\\$1\\" +. nh +. if \\\\n(mH \\{\\ +. \\" Start diversion in a new environment. +. do ev URL-div +. do di URL-div +. \\} +.. +. +. +.\\" End URL. +.de UE +. ie \\\\n(mH \\{\\ +. br +. di +. ev +. +. \\" Has there been one or more input lines for the link text? +. ie \\\\n(dn \\{\\ +. do HTML-NS "" +. \\" Yes, strip off final newline of diversion and emit it. +. do chop URL-div +. do URL-div +\\c +. do HTML-NS +. \\} +. el \\ +. do HTML-NS "\\\\*(m1" +\\&\\\\\$*\\" +. \\} +. el \\ +\\\\*(la\\\\*(m1\\\\*(ra\\\\\$*\\" +. +. hy \\\\n(HY +.. +. +. +.\\" Start email address. +.de MT +. ds m1 \\\\\$1\\" +. nh +. if \\\\n(mH \\{\\ +. \\" Start diversion in a new environment. +. do ev URL-div +. do di URL-div +. \\} +.. +. +. +.\\" End email address. +.de ME +. ie \\\\n(mH \\{\\ +. br +. di +. ev +. +. \\" Has there been one or more input lines for the link text? +. ie \\\\n(dn \\{\\ +. do HTML-NS "" +. \\" Yes, strip off final newline of diversion and emit it. +. do chop URL-div +. do URL-div +\\c +. do HTML-NS +. \\} +. el \\ +. do HTML-NS "\\\\*(m1" +\\&\\\\\$*\\" +. \\} +. el \\ +\\\\*(la\\\\*(m1\\\\*(ra\\\\\$*\\" +. +. hy \\\\n(HY +.. +. +. +.\\" Continuation line for .TP header. +.de TQ +. br +. ns +. TP \\\\\$1\\" no doublequotes around argument! +.. +. +. +.\\" Start example. +.de EX +. nr mE \\\\n(.f +. nf +. nh +. ft CW +.. +. +. +.\\" End example. +.de EE +. ft \\\\n(mE +. fi +. hy \\\\n(HY +.. +. +. +.\\" Start display. +.de DS +. \\" XXX to be written +.. +. +. +.\\" End display. +.de DE +. \\" XXX to be written +.. +. +.\\" EOF + +]]> + + diff --git a/vendor/grammars/sublime_man_page_support/man-groff.JSON-tmLanguage b/vendor/grammars/sublime_man_page_support/man-groff.JSON-tmLanguage new file mode 100644 index 00000000..70410e73 --- /dev/null +++ b/vendor/grammars/sublime_man_page_support/man-groff.JSON-tmLanguage @@ -0,0 +1,85 @@ +{ "name": "Man Page (groff/troff)", + "scopeName": "text.groff", + "fileTypes": ["man", "groff"], + "patterns": [ + { + "name": "comment.macro.text.groff", + "match": "^\\.\\\\\".*$", + "comment": "comments" + }, + { + "name": "uri.macro.text.groff", + "begin": "^(\\.UR)\\b(.*)$", + "beginCaptures": { + "1": { "name": "keyword.text.groff" }, + "2": { "name": "constant.other.text.groff" } + }, + "end": "^(\\.UE)", + "endCaptures": { + "1": { "name": "keyword.text.groff" } + }, + "patterns": [ + { + "name": "string.text.groff", + "match": "." + } + ], + "comment": "email address macro" + }, + { + "name": "emailaddress.macro.text.groff", + "begin": "^(\\.MT)\\b(.*)$", + "beginCaptures": { + "1": { "name": "keyword.text.groff" }, + "2": { "name": "constant.other.text.groff" } + }, + "end": "^(\\.ME)", + "endCaptures": { + "1": { "name": "keyword.text.groff" } + }, + "patterns": [ + { + "name": "string.text.groff", + "match": "." + } + ], + "comment": "email address macro" + }, + { + "name": "option.macro.text.groff", + "match": "^(\\.OP)\\s([^\\s]+)\\s?(.*)$", + "captures": { + "1": { "name": "keyword.text.groff" }, + "2": { "name": "support.constant.text.groff" }, + "3": { "name": "string.text.groff" } + }, + "comment": "text style macros" + }, + { + "name": "style.macro.text.groff", + "begin": "^(\\.SM|\\.SB|\\.BI|\\.IB|\\.RI|\\.IR|\\.BR|\\.RB|\\.B|\\.I)\\b", + "beginCaptures": { + "1": { "name": "keyword.text.groff" } + }, + "end": "$", + "patterns": [ + { + "name": "string.text.groff", + "match": ".", + "comment": "catch-all" + } + ], + "comment": "text style macros" + }, + { + "name": "macro.text.groff", + "match": "^(\\.[a-zA-Z]*\\s?)(\\s?.+)?$", + "captures": { + "1": { "name": "keyword.text.groff" }, + "2": { "name": "entity.text.groff" } + }, + "comment": "marco catch-all" + } + ], + "uuid": "9f281c08-ae81-4ccd-b910-a67b17d1952e" +} diff --git a/vendor/grammars/sublime_man_page_support/man-groff.tmLanguage b/vendor/grammars/sublime_man_page_support/man-groff.tmLanguage new file mode 100644 index 00000000..16b01d0d --- /dev/null +++ b/vendor/grammars/sublime_man_page_support/man-groff.tmLanguage @@ -0,0 +1,184 @@ + + + + + fileTypes + + man + groff + + name + Man Page (groff/troff) + patterns + + + comment + comments + match + ^\.\\".*$ + name + comment.macro.text.groff + + + begin + ^(\.UR)\b(.*)$ + beginCaptures + + 1 + + name + keyword.text.groff + + 2 + + name + constant.other.text.groff + + + comment + email address macro + end + ^(\.UE) + endCaptures + + 1 + + name + keyword.text.groff + + + name + uri.macro.text.groff + patterns + + + match + . + name + string.text.groff + + + + + begin + ^(\.MT)\b(.*)$ + beginCaptures + + 1 + + name + keyword.text.groff + + 2 + + name + constant.other.text.groff + + + comment + email address macro + end + ^(\.ME) + endCaptures + + 1 + + name + keyword.text.groff + + + name + emailaddress.macro.text.groff + patterns + + + match + . + name + string.text.groff + + + + + captures + + 1 + + name + keyword.text.groff + + 2 + + name + support.constant.text.groff + + 3 + + name + string.text.groff + + + comment + text style macros + match + ^(\.OP)\s([^\s]+)\s?(.*)$ + name + option.macro.text.groff + + + begin + ^(\.SM|\.SB|\.BI|\.IB|\.RI|\.IR|\.BR|\.RB|\.B|\.I)\b + beginCaptures + + 1 + + name + keyword.text.groff + + + comment + text style macros + end + $ + name + style.macro.text.groff + patterns + + + comment + catch-all + match + . + name + string.text.groff + + + + + captures + + 1 + + name + keyword.text.groff + + 2 + + name + entity.text.groff + + + comment + marco catch-all + match + ^(\.[a-zA-Z]*\s?)(\s?.+)?$ + name + macro.text.groff + + + scopeName + text.groff + uuid + 9f281c08-ae81-4ccd-b910-a67b17d1952e + + diff --git a/vendor/grammars/sublime_man_page_support/man-preview.JSON-tmLanguage b/vendor/grammars/sublime_man_page_support/man-preview.JSON-tmLanguage new file mode 100644 index 00000000..0d9d524b --- /dev/null +++ b/vendor/grammars/sublime_man_page_support/man-preview.JSON-tmLanguage @@ -0,0 +1,32 @@ +{ "name": "Man Page Preview", + "scopeName": "source.man", + "fileTypes": ["man"], + "uuid": "f3ff3e8d-4f68-432c-af44-e00d6e15c81a", + "patterns": [ + { + "name": "string.source.man", + "match": "^(man\\((\\d+)\\))(.+)(man\\((\\d+)\\).*)$", + "captures": { + "0": { "name": "string.source.man" }, + "2": { "name": "constant.source.man" }, + "3": { "name": "keyword.source.man" }, + "5": { "name": "constant.source.man" } + } + }, + { + "name": "string.source.man", + "match": "^(\\d\\.\\d(\\.\\d)?)(.+)(man\\((\\d+)\\).*)$", + "captures": { + "1": { "name": "constant.source.man" }, + "2": { "name": "storage.source.man" }, + "3": { "name": "keyword.source.man" }, + "4": { "name": "string.source.man" }, + "5": { "name": "constant.source.man" } + } + }, + { + "name": "keyword.source.man", + "match": "^[A-Z][A-Z\\s]+\\s$" + } + ] +} \ No newline at end of file diff --git a/vendor/grammars/sublime_man_page_support/man-preview.tmLanguage b/vendor/grammars/sublime_man_page_support/man-preview.tmLanguage new file mode 100644 index 00000000..0d769033 --- /dev/null +++ b/vendor/grammars/sublime_man_page_support/man-preview.tmLanguage @@ -0,0 +1,88 @@ + + + + + fileTypes + + man + + name + Man Page Preview + patterns + + + captures + + 0 + + name + string.source.man + + 2 + + name + constant.source.man + + 3 + + name + keyword.source.man + + 5 + + name + constant.source.man + + + match + ^(man\((\d+)\))(.+)(man\((\d+)\).*)$ + name + string.source.man + + + captures + + 1 + + name + constant.source.man + + 2 + + name + storage.source.man + + 3 + + name + keyword.source.man + + 4 + + name + string.source.man + + 5 + + name + constant.source.man + + + match + ^(\d\.\d(\.\d)?)(.+)(man\((\d+)\).*)$ + name + string.source.man + + + match + ^[A-Z][A-Z\s]+\s$ + name + keyword.source.man + + + scopeName + source.man + uuid + f3ff3e8d-4f68-432c-af44-e00d6e15c81a + + diff --git a/vendor/grammars/sublime_man_page_support/new_page.py b/vendor/grammars/sublime_man_page_support/new_page.py new file mode 100644 index 00000000..8a8a46ea --- /dev/null +++ b/vendor/grammars/sublime_man_page_support/new_page.py @@ -0,0 +1,59 @@ +import sublime, sublime_plugin +import os, time +import subprocess + +from sublime_lib.path import root_at_packages, get_package_name + +class ManPagePreview(sublime_plugin.WindowCommand): + def run(self): + # exit if file is dirty, we can't run a man command against a file that doesn't exist + if self.window.active_view().is_dirty(): + o = self.window.get_output_panel("manfail") + o.run_command("insert_snippet", {"contents": "Unable to preview unsaved file."}) + self.window.run_command("show_panel", {"panel": "output.manfail"}) + return + + # process document with groff + curpath = self.window.active_view().file_name() + c = subprocess.Popen(["groff", "-Tascii", "-man", curpath], stdout=subprocess.PIPE) + output, err = c.communicate() + + # run groff output through col to clean it up + col = subprocess.Popen(["col", "-bx"], stdout=subprocess.PIPE, stdin=subprocess.PIPE) + cleanout, err = col.communicate(output) + + # write clean output to new window + v = self.window.new_file() + v.settings().set('default_dir', root_at_packages('User')) + v.set_syntax_file('Packages/Man Page Support/man-preview.tmLanguage') + e = v.begin_edit() + p = v.text_point(0,0) + v.insert(e, p, cleanout) + v.end_edit(e) + +class ManPageNewCommand(sublime_plugin.WindowCommand): + def run(self): + v = self.window.new_file() + v.settings().set('default_dir', root_at_packages('User')) + v.set_syntax_file('Packages/Man Page Support/man-groff.tmLanguage') + + template = """.\\\" Manpage for ${1:}. +.\\\" Contact ${2:} to correct errors or typos. +.TH man 8 "%s" "1.0" "${1:}" +.SH NAME +${1:} +.SH SYNOPSIS +.SY +${1:} +.YS +.SH DESCRIPTION +${1:} +.SH BUGS +No known bugs. +.SH SEE ALSO +.SH AUTHOR +.MT ${2:} +${3:} +.ME +""" %(time.strftime("%B %Y")) + v.run_command("insert_snippet", {"contents": template}) diff --git a/vendor/grammars/swift.tmbundle b/vendor/grammars/swift.tmbundle index 662fd22b..b3cb4372 160000 --- a/vendor/grammars/swift.tmbundle +++ b/vendor/grammars/swift.tmbundle @@ -1 +1 @@ -Subproject commit 662fd22bf8e6d2ed1dfcb5881c23838bad620404 +Subproject commit b3cb4372f2e63175c72eaa6e94af2eb52bb6a9db diff --git a/vendor/grammars/vue-syntax-highlight b/vendor/grammars/vue-syntax-highlight index a29a875b..8e729750 160000 --- a/vendor/grammars/vue-syntax-highlight +++ b/vendor/grammars/vue-syntax-highlight @@ -1 +1 @@ -Subproject commit a29a875bf3e81f780e905c223a96261c04732659 +Subproject commit 8e729750bc181d3d05d5e74cf7cb8f8c4c19627d