[nvim] cleanup unused stuff

This commit is contained in:
Afonso Franco 2024-12-18 23:05:50 +00:00
parent 778e388288
commit 4e79bbb4de
Signed by: afonso
SSH key fingerprint: SHA256:PQTRDHPH3yALEGtHXnXBp3Orfcn21pK20t0tS1kHg54
16 changed files with 12 additions and 505 deletions

View file

@ -1,4 +0,0 @@
augroup hypr_ftdetect
au!
au BufRead,BufNewFile *hypr/*.conf,*hypr/*/*.conf set ft=hypr
augroup END

View file

@ -1,5 +0,0 @@
augroup SageDetect
au!
au BufRead,BufNewFile *sage set ft=python
augroup END

View file

@ -1 +0,0 @@
au BufRead,BufNewFile *.why,*.mlw set filetype=why3

View file

@ -1 +0,0 @@
vim.opt_local.formatprg = "floskell --style chris-done"

View file

@ -1 +0,0 @@
setlocal commentstring=#\ %s

View file

@ -1,2 +0,0 @@
vim.bo.filetype = "tex"
vim.bo.syntax = "lhaskell"

View file

@ -51,9 +51,4 @@ return {
}, },
}, },
-- {
-- "m4xshen/hardtime.nvim",
-- dependencies = { "MunifTanjim/nui.nvim", "nvim-lua/plenary.nvim" },
-- opts = {}
-- },
} }

View file

@ -1,11 +0,0 @@
return {
{
"FabijanZulj/blame.nvim",
event = "VeryLazy",
config = function()
require("blame").setup()
end
},
"https://github.com/tpope/vim-fugitive"
}

View file

@ -31,17 +31,6 @@ return {
save_in_cmdline_history = false, save_in_cmdline_history = false,
} }
}, },
{
"ThePrimeagen/refactoring.nvim",
dependencies = {
"nvim-lua/plenary.nvim",
"nvim-treesitter/nvim-treesitter",
},
lazy = false,
config = function()
require("refactoring").setup({})
end,
},
{ {
"williamboman/mason.nvim", "williamboman/mason.nvim",
event = "VeryLazy", event = "VeryLazy",
@ -50,13 +39,13 @@ return {
{ {
"neovim/nvim-lspconfig", "neovim/nvim-lspconfig",
dependencies = { dependencies = {
'saghen/blink.cmp' "saghen/blink.cmp",
"ibhagwan/fzf-lua",
"stevearc/conform.nvim",
}, },
event = { "BufReadPost", "BufNewFile" }, event = { "BufReadPost", "BufNewFile" },
config = function() config = function()
local lspconfig = require("lspconfig") local lspconfig = require("lspconfig")
-- Use an on_attach function to only map the following keys -- Use an on_attach function to only map the following keys
-- after the language server attaches to the current buffer -- after the language server attaches to the current buffer
vim.api.nvim_create_autocmd("LspAttach", { vim.api.nvim_create_autocmd("LspAttach", {
@ -68,16 +57,10 @@ return {
local fzflua = require("fzf-lua") local fzflua = require("fzf-lua")
local conform = require("conform") local conform = require("conform")
local client = vim.lsp.get_client_by_id(ev.data.client_id)
if client ~= nil then
client.server_capabilities.semanticTokensProvider = nil
end
local rename_func = function() local rename_func = function()
return ":IncRename " .. vim.fn.expand("<cword>") return ":IncRename " .. vim.fn.expand("<cword>")
end end
-- Mappings.
local bufopts = { noremap = true, silent = true, buffer = ev.buf } local bufopts = { noremap = true, silent = true, buffer = ev.buf }
local bufopts_expr = { expr = true } local bufopts_expr = { expr = true }
vim.keymap.set("n", "<space>e", vim.diagnostic.open_float, bufopts) vim.keymap.set("n", "<space>e", vim.diagnostic.open_float, bufopts)
@ -124,27 +107,13 @@ return {
capabilities = capabilities, capabilities = capabilities,
settings = { settings = {
Lua = { Lua = {
runtime = { hint = { enable = true },
-- Tell the language server which version of Lua you're using (most likely LuaJIT in the case of Neovim)
version = "LuaJIT",
},
diagnostics = {
-- Get the language server to recognize the `vim` global
globals = { "vim" },
},
workspace = {
-- Make the server aware of Neovim runtime files
library = vim.api.nvim_get_runtime_file("", true),
},
hint = { enable = true }
}, },
}, },
}) })
lspconfig["ltex"].setup({ lspconfig["ltex"].setup({
capabilities = capabilities, capabilities = capabilities,
--Local on attach
on_attach = function(_, _) on_attach = function(_, _)
-- rest of your on_attach process.
require("ltex_extra").setup() require("ltex_extra").setup()
end, end,
settings = { settings = {
@ -156,23 +125,6 @@ return {
}, },
}, },
}) })
lspconfig["basedpyright"].setup({
capabilities = capabilities,
settings = {
verboseOutput = true,
autoImportCompletion = true,
basedpyright = {
analysis = {
typeCheckingMode = "all",
autoSearchPaths = true,
useLibraryCodeForTypes = true,
diagnosticMode = "openFilesOnly",
indexing = true,
},
},
},
})
lspconfig["hls"].setup({ lspconfig["hls"].setup({
capabilities = capabilities, capabilities = capabilities,
filetypes = { 'haskell', 'lhaskell', 'cabal' }, filetypes = { 'haskell', 'lhaskell', 'cabal' },
@ -248,8 +200,6 @@ return {
end end
vim.g.vimtex_compiler_method = 'latexmk' vim.g.vimtex_compiler_method = 'latexmk'
vim.g.vimtex_view_automatic = 0 vim.g.vimtex_view_automatic = 0
-- vim.g.vimtex_compiler_generic = { command =
-- 'ls *.tex | entr -n -c tectonic /_ --synctex --keep-intermediates --reruns 0' }
end, end,
}, },
{ {

View file

@ -1,11 +1,4 @@
return { return {
{
"iamcco/markdown-preview.nvim",
event = "VeryLazy",
cmd = { "MarkdownPreviewToggle", "MarkdownPreview", "MarkdownPreviewStop" },
ft = { "markdown" },
build = function() vim.fn["mkdp#util#install"]() end,
},
{ {
"folke/todo-comments.nvim", "folke/todo-comments.nvim",
event = "VeryLazy", event = "VeryLazy",
@ -47,4 +40,12 @@ return {
}, },
}, },
}, },
{
"FabijanZulj/blame.nvim",
event = "VeryLazy",
config = function()
require("blame").setup()
end
},
"tpope/vim-fugitive"
} }

View file

@ -41,41 +41,6 @@ return {
end end
}, },
-- {
-- 'echasnovski/mini.files',
-- version = false,
-- opts = {
-- mappings = {
-- close = 'q',
-- go_in = '',
-- go_in_plus = 'l',
-- go_out = '<CR>',
-- go_out_plus = 'h',
-- reset = '<BS>',
-- show_help = 'g?',
-- synchronize = 's',
-- },
-- options = {
-- permanent_delete = false
-- }
-- },
-- keys = {
-- {
-- "<leader>o",
-- function()
-- require("mini.files").open(vim.api.nvim_buf_get_name(0), true)
-- end,
-- desc = "Open mini.files (Directory of the current file)"
-- },
-- {
-- "<leader>O",
-- function()
-- require("mini.files").open(vim.uv.cwd(), true)
-- end,
-- desc = "Open mini.files (cwd)"
-- }
-- }
-- },
{ {
'mrjones2014/smart-splits.nvim', 'mrjones2014/smart-splits.nvim',
config = function() config = function()

View file

@ -38,7 +38,6 @@ return {
local gen_spec = require('mini.ai').gen_spec local gen_spec = require('mini.ai').gen_spec
require('mini.ai').setup({ require('mini.ai').setup({
custom_textobjects = { custom_textobjects = {
-- Function definition (needs treesitter queries with these captures)
F = gen_spec.treesitter({ a = '@function.outer', i = '@function.inner' }), F = gen_spec.treesitter({ a = '@function.outer', i = '@function.inner' }),
}, },
n_lines = 1000 n_lines = 1000

View file

@ -1,103 +0,0 @@
; extends
; inject sql in single line strings
; e.g. db.GetContext(ctx, "SELECT * FROM users WHERE name = 'John'")
((call_expression
(selector_expression
field: (field_identifier) @_field)
(argument_list
(interpreted_string_literal) @sql))
(#any-of? @_field "Exec" "GetContext" "ExecContext" "SelectContext" "In"
"RebindNamed" "Rebind" "Query" "QueryRow" "QueryRowxContext" "NamedExec" "MustExec" "Get" "Queryx")
(#offset! @sql 0 1 0 -1))
; still buggy for nvim 0.10
((call_expression
(selector_expression
field: (field_identifier) @_field (#any-of? @_field "Exec" "GetContext" "ExecContext" "SelectContext" "In" "RebindNamed" "Rebind" "Query" "QueryRow" "QueryRowxContext" "NamedExec" "MustExec" "Get" "Queryx"))
(argument_list
(interpreted_string_literal) @injection.content))
(#offset! @injection.content 0 1 0 -1)
(#set! injection.language "sql"))
; neovim nightly 0.10
([
(interpreted_string_literal)
(raw_string_literal)
] @injection.content
(#match? @injection.content "(SELECT|select|INSERT|insert|UPDATE|update|DELETE|delete).+(FROM|from|INTO|into|VALUES|values|SET|set).*(WHERE|where|GROUP BY|group by)?")
(#set! injection.language "sql"))
; a general query injection
([
(interpreted_string_literal)
(raw_string_literal)
] @sql
(#match? @sql "(SELECT|select|INSERT|insert|UPDATE|update|DELETE|delete).+(FROM|from|INTO|into|VALUES|values|SET|set).*(WHERE|where|GROUP BY|group by)?")
(#offset! @sql 0 1 0 -1))
; ----------------------------------------------------------------
; fallback keyword and comment based injection
([
(interpreted_string_literal)
(raw_string_literal)
] @sql
(#contains? @sql "-- sql" "--sql" "ADD CONSTRAINT" "ALTER TABLE" "ALTER COLUMN"
"DATABASE" "FOREIGN KEY" "GROUP BY" "HAVING" "CREATE INDEX" "INSERT INTO"
"NOT NULL" "PRIMARY KEY" "UPDATE SET" "TRUNCATE TABLE" "LEFT JOIN" "add constraint" "alter table" "alter column" "database" "foreign key" "group by" "having" "create index" "insert into"
"not null" "primary key" "update set" "truncate table" "left join")
(#offset! @sql 0 1 0 -1))
; nvim 0.10
([
(interpreted_string_literal)
(raw_string_literal)
] @injection.content
(#contains? @injection.content "-- sql" "--sql" "ADD CONSTRAINT" "ALTER TABLE" "ALTER COLUMN"
"DATABASE" "FOREIGN KEY" "GROUP BY" "HAVING" "CREATE INDEX" "INSERT INTO"
"NOT NULL" "PRIMARY KEY" "UPDATE SET" "TRUNCATE TABLE" "LEFT JOIN" "add constraint" "alter table" "alter column" "database" "foreign key" "group by" "having" "create index" "insert into"
"not null" "primary key" "update set" "truncate table" "left join")
(#offset! @injection.content 0 1 0 -1)
(#set! injection.language "sql"))
; should I use a more exhaustive list of keywords?
; "ADD" "ADD CONSTRAINT" "ALL" "ALTER" "AND" "ASC" "COLUMN" "CONSTRAINT" "CREATE" "DATABASE" "DELETE" "DESC" "DISTINCT" "DROP" "EXISTS" "FOREIGN KEY" "FROM" "JOIN" "GROUP BY" "HAVING" "IN" "INDEX" "INSERT INTO" "LIKE" "LIMIT" "NOT" "NOT NULL" "OR" "ORDER BY" "PRIMARY KEY" "SELECT" "SET" "TABLE" "TRUNCATE TABLE" "UNION" "UNIQUE" "UPDATE" "VALUES" "WHERE"
; json
((const_spec
name: (identifier) @_const
value: (expression_list (raw_string_literal) @json))
(#lua-match? @_const ".*[J|j]son.*"))
; jsonStr := `{"foo": "bar"}`
((short_var_declaration
left: (expression_list
(identifier) @_var)
right: (expression_list
(raw_string_literal) @json))
(#lua-match? @_var ".*[J|j]son.*")
(#offset! @json 0 1 0 -1))
; nvim 0.10
(const_spec
name: ((identifier) @_const(#lua-match? @_const ".*[J|j]son.*"))
value: (expression_list (raw_string_literal) @injection.content
(#set! injection.language "json")))
(short_var_declaration
left: (expression_list (identifier) @_var (#lua-match? @_var ".*[J|j]son.*"))
right: (expression_list (raw_string_literal) @injection.content)
(#offset! @injection.content 0 1 0 -1)
(#set! injection.language "json"))
(var_spec
name: ((identifier) @_const(#lua-match? @_const ".*[J|j]son.*"))
value: (expression_list (raw_string_literal) @injection.content
(#set! injection.language "json")))

View file

@ -1,67 +0,0 @@
" Vim syntax file
" Language: Hyprland config file
" Maintainer: Gabriel Carneiro
" Latest Revision: 26 October 2022
if exists("b:current_syntax")
finish
endif
" Strings
syn match Path "\(\.\|\~\)\/.*" display
syn match Symbol "=" skipwhite display nextgroup=Value
syn match Str "[a-zA-Z _ .-\"\'?]\+$" contained display
syn match Num "\d\+\(\.\d\+\)\?" contained display
syn match Num "e[+-]\d\+" contained display
syn match Num "[+-]\d\+\(\.\d\+\)\?" contained display
syn match ShellVar "\$\w\+" contained display
syn keyword Logical on off true false no yes contained display
syn region HyprSimpleString keepend start='[^ \t]' end='$\|#' contained contains=HyprVar,HyprComment
syn match HyprQuotedString '"[^"]\+"' contained
syn cluster HyprString contains=HyprSimpleString,HyprQuotedString
" Settings
syn keyword Block input general animations decoration gestures misc dwindle master
syn region OptBlock start="{" end="}" fold transparent display contains=HyprVar,Value,OptBlock,Num,Str,HyprComment,Disp,ShellVar
syn match HyprVar '\s[a-z _ .]\+ ' skipwhite contained display nextgroup=Symbol
syn region Value start="=" end="$\|," transparent display contains=Str,Num,Logical,ShellVar,Path,HyprComment,Disp,Dispatchers
syn match Disp '[a-zA-Z][a-zA-Z0-9 _.]\+,' contained display contains=Num
syn match N ', [a-zA-Z][a-zA-Z0-9 _.]\+,' contained skipwhite
" Commands
syn region Command start='^[a-zA-Z][a-zA-Z_. -]\+ =' end='$' skipwhite transparent contains=HyprKeyModifier,ShellVar,HyprConfigCommand,Dispatchers,HyprComment,Str,Disp,Path,Num
syn keyword HyprKeyModifier SUPER SHIFT CTRL ALT Mod1 Mod2 Mod3 Mod4 Mod5 Mode_switch nextgroup=N
syn keyword HyprConfigCommand bind bindm monitor source windowrule nextgroup=Symbol contained
" Comments
syn keyword HyprTodo contained TODO FIXME XXX NOTE
syn match HyprComment "\(#\|\/\/\).*$" contains=HyprTodo
highlight link Dispatchers Special
highlight link Windowrules Special
highlight link Disp Special
highlight link Num Constant
highlight link NumRule Constant
highlight link HyprVar Identifier
highlight link HyprConfigCommand Identifier
highlight link HyprKeyModifier Constant
highlight link KeyBind Constant
highlight link Logical Constant
highlight link Str String
highlight link BindCmd String
highlight link Path String
highlight link HyprSimpleString String
highlight link HyprQuotedString String
highlight link Block Define
highlight link ShellVar Define
highlight link HyprTodo Todo
highlight link HyprComment Comment

View file

@ -1,208 +0,0 @@
" Vim syntax file
" Language: Why3
" Filenames: *.why *.mlw
"
" Adapted from syntax file for Ocaml
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
if version < 600
syntax clear
elseif exists("b:current_syntax") && b:current_syntax == "why3"
finish
endif
" Why3 is case sensitive.
syn case match
" " Script headers highlighted like comments
" syn match whyComment "^#!.*"
" lowercase identifier - the standard way to match
syn match whyLCIdentifier /\<\(\l\|_\)\(\w\|'\)*\>/
syn match whyKeyChar "|"
" Errors
syn match whyBraceErr "}"
syn match whyBrackErr "\]"
syn match whyParenErr ")"
syn match whyCommentErr "\*)"
syn match whyCountErr "\<downto\>"
syn match whyCountErr "\<to\>"
syn match whyDoErr "\<do\>"
syn match whyDoneErr "\<done\>"
syn match whyThenErr "\<then\>"
syn match whyTheoryErr "\<theory\>"
syn match whyModuleErr "\<module\>"
syn match whyEndErr "\<end\>"
" Some convenient clusters
syn cluster whyAllErrs contains=whyBraceErr,whyBrackErr,whyParenErr,whyCommentErr,whyCountErr,whyDoErr,whyDoneErr,whyEndErr,whyThenErr,whyTheoryErr,whyModuleErr
syn cluster whyContained contains=whyTodo,whyImport,whyExport,whyTheoryContents,whyModuleContents,whyScopeContents,whyModuleKeyword
" ,whyPreDef,whyModParam,whyModParam1,whyPreMPRestr,whyMPRestr,whyMPRestr1,whyMPRestr2,whyMPRestr3,whyModRHS,whyFuncWith,whyFuncStruct,whyModTypeRestr,whyModTRWith,whyWith,whyWithRest,whyModType,whyFullMod,whyVal
" Enclosing delimiters
syn region whyEncl transparent matchgroup=whyKeyChar start="(" matchgroup=whyKeyChar end=")" contains=ALLBUT,@whyContained,whyParenErr
syn region whyEncl transparent matchgroup=whyKeyChar start="{" matchgroup=whyKeyChar end="}" contains=ALLBUT,@whyContained,whyBraceErr
syn region whyEncl transparent start="\[" end="\]" contains=ALLBUT,@whyContained,whyBrackErr
" Comments
syn region whyComment start="(\*" end="\*)" contains=whyComment,whyTodo
syn match whyOperator "(\*)"
syn keyword whyTodo contained TODO FIXME XXX NOTE
" Blocks
" FIXME? match and try should detect the absence of "with" ?
syn region whyEnd matchgroup=whyKeyword start="\<begin\>" matchgroup=whyKeyword end="\<end\>" contains=ALLBUT,@whyContained,whyEndErr
syn region whyEnd matchgroup=whyKeyword start="\<match\>" matchgroup=whyKeyword end="\<end\>" contains=ALLBUT,@whyContained,whyEndErr
syn region whyEnd matchgroup=whyKeyword start="\<try\>" matchgroup=whyKeyword end="\<end\>" contains=ALLBUT,@whyContained,whyEndErr
syn region whyNone matchgroup=whyKeyword start="\<for\>" matchgroup=whyKeyword end="\<\(to\|downto\)\>" contains=ALLBUT,@whyContained,whyCountErr
syn region whyDo matchgroup=whyKeyword start="\<do\>" matchgroup=whyKeyword end="\<done\>" contains=ALLBUT,@whyContained,whyDoneErr
syn region whyNone matchgroup=whyKeyword start="\<if\>" matchgroup=whyKeyword end="\<then\>" contains=ALLBUT,@whyContained,whyThenErr
" Theories and modules
syn region whyTheory matchgroup=whyKeyword start="\<theory\>" matchgroup=whyModSpec end="\<\u\(\w\|'\)*\>" contains=@whyAllErrs,whyComment skipwhite skipempty nextgroup=whyModuleContents
syn region whyModule matchgroup=whyKeyword start="\<module\>" matchgroup=whyModSpec end="\<\u\(\w\|'\)*\>" contains=@whyAllErrs,whyComment skipwhite skipempty nextgroup=whyModuleContents
syn region whyScope matchgroup=whyKeyword start="\<scope\>" matchgroup=whyModSpec end="\<\u\(\w\|'\)*\>" contains=@whyAllErrs,whyComment,whyImport skipwhite skipempty nextgroup=whyModuleContents
syn region whyModuleContents start="" matchgroup=whyModSpec end="\<end\>" contained contains=ALLBUT,@whyContained,whyEndErr,whyTheory,whyModule
syn region whyNone matchgroup=whyKeyword start="\<\(use\|clone\)\>" matchgroup=whyModSpec end="\<\(\w\+\.\)*\u\(\w\|'\)*\>" contains=@whyAllErrs,whyComment,whyString,whyImport,whyExport
syn keyword whyExport contained export
syn keyword whyImport contained import
syn region whyNone matchgroup=whyKeyword start="\<import\>" matchgroup=whyModSpec end="\<\(\u\(\w\|'\)*\.\)*\u\(\w\|'\)*\>" contains=@whyAllErrs,whyComment
syn region whyNone matchgroup=whyKeyword start="\<\(axiom\|lemma\|goal\)\>" matchgroup=whyNone end="\<\w\(\w\|'\)\>\|" contains=@whyAllErrs,whyComment
syn keyword whyKeyword abstract any as break by
syn keyword whyKeyword coinductive constant continue
syn keyword whyKeyword else epsilon exists exception
syn keyword whyKeyword forall fun function ghost
syn keyword whyKeyword if in inductive
syn keyword whyKeyword label let
syn keyword whyKeyword meta model mutable not
syn keyword whyKeyword partial predicate private
syn keyword whyKeyword raise rec return so then type
syn keyword whyKeyword val while with
syn keyword whyBoolean true false
syn keyword whyType bool float int list map option real range
syn keyword whyType array ref unit
syn keyword whySpec absurd alias assert assume check diverges ensures invariant
syn keyword whySpec pure raises reads requires returns variant writes at old
syn match whyConstructor "(\s*)"
syn match whyConstructor "\u\(\w\|'\)*\>"
syn match whyModPath "\u\(\w\|'\)*\."he=e-1
syn region whyString start=+"+ skip=+\\\\\|\\"+ end=+"+
syn match whyOperator "->"
syn match whyOperator "<->\?"
syn match whyOperator "/\\"
syn match whyOperator "\\/"
syn match whyOperator "&&"
syn match whyOperator "<>"
syn match whyKeyChar "|"
syn match whyKeyChar ";"
" FIXME? is this too inefficient?
syn match whyOperator "[^<>~=:+*/%$&@^.|#!?]=[^<>~=:+*/%$&@^.|#!?]"ms=s+1,me=e-1
syn match whyOperator "^=[^<>~=:+*/%$&@^.|#!?]"me=e-1
syn match whyOperator "[^<>~=:+*/%$&@^.|#!?]=$"ms=s+1
syn match whyAnyVar "\<_\>"
syn match whyNumber "\<-\=\d\(_\|\d\)*\>"
syn match whyNumber "\<-\=0[x|X]\(\x\|_\)\+\>"
syn match whyNumber "\<-\=0[o|O]\(\o\|_\)\+\>"
syn match whyNumber "\<-\=0[b|B]\([01]\|_\)\+\>"
syn match whyFloat "\<-\=\d\+[eE][-+]\=\d\+\>"
syn match whyFloat "\<-\=\d\+\.\d*\([eE][-+]\=\d\+\)\=\>"
syn match whyFloat "\<-\=0[x|X]\x\+\.\?\x*[pP][-+]\=\d\+\>"
" Synchronization
syn sync minlines=50
syn sync maxlines=500
syn sync match whyDoSync grouphere whyDo "\<do\>"
syn sync match whyDoSync groupthere whyDo "\<done\>"
syn sync match whyEndSync grouphere whyEnd "\<\(begin\|match\|try\)\>"
syn sync match whyEndSync groupthere whyEnd "\<end\>"
syn sync match whyTheorySync grouphere whyTheory "\<theory\>"
syn sync match whyTheorySync groupthere whyTheory "\<end\>"
syn sync match whyModuleSync grouphere whyModule "\<module\>"
syn sync match whyModuleSync groupthere whyModule "\<end\>"
syn sync match whyScopeSync grouphere whyScope "\<scope\>"
syn sync match whyScopeSync groupthere whyScope "\<end\>"
" Define the default highlighting.
" For version 5.7 and earlier: only when not done already
" For version 5.8 and later: only when an item doesn't have highlighting yet
if version >= 508 || !exists("did_why_syntax_inits")
if version < 508
let did_why_syntax_inits = 1
command -nargs=+ HiLink hi link <args>
else
command -nargs=+ HiLink hi def link <args>
endif
HiLink whyBraceErr Error
HiLink whyBrackErr Error
HiLink whyParenErr Error
HiLink whyCommentErr Error
HiLink whyCountErr Error
HiLink whyDoErr Error
HiLink whyDoneErr Error
HiLink whyEndErr Error
HiLink whyThenErr Error
HiLink whyTheoryErr Error
HiLink whyModuleErr Error
HiLink whyComment Comment
HiLink whyModPath Include
HiLink whyModSpec Include
HiLink whyImport Keyword
HiLink whyExport Keyword
HiLink whyModuleKeyword Keyword
HiLink whyConstructor Constant
HiLink whyKeyword Keyword
HiLink whyKeyChar Operator
HiLink whyAnyVar Operator
HiLink whyOperator Operator
HiLink whySpec Identifier
HiLink whyNumber Number
HiLink whyFloat Float
HiLink whyString String
HiLink whyBoolean Boolean
HiLink whyType Type
HiLink whyTodo Todo
HiLink whyEncl Keyword
delcommand HiLink
endif
let b:current_syntax = "why3"
" vim: ts=8