96 lines
2.1 KiB
Lua
96 lines
2.1 KiB
Lua
local augroup = vim.api.nvim_create_augroup('plex_generic_autocmds', {})
|
|
|
|
-- enable text wrapping for text filetypes
|
|
vim.api.nvim_create_autocmd('FileType', {
|
|
group = augroup,
|
|
pattern = {
|
|
'tex',
|
|
'text',
|
|
'markdown',
|
|
'help',
|
|
'typst',
|
|
},
|
|
callback = function()
|
|
vim.opt_local.wrap = true
|
|
end,
|
|
})
|
|
|
|
-- always use the tex filetype for latex things, as those are most supported by
|
|
-- latex language servers.
|
|
vim.api.nvim_create_autocmd('FileType', {
|
|
group = augroup,
|
|
pattern = {
|
|
'latex',
|
|
'plaintex',
|
|
},
|
|
callback = function()
|
|
vim.bo.filetype = 'tex'
|
|
end,
|
|
})
|
|
|
|
-- conceallevel is what converts things like **bold** to be displayed as bold
|
|
-- without the stars. This is useful, but we might not want it for some
|
|
-- filetypes.
|
|
vim.api.nvim_create_autocmd('FileType', {
|
|
group = augroup,
|
|
pattern = {
|
|
'latex',
|
|
'markdown',
|
|
'plaintex',
|
|
'tex',
|
|
'typst',
|
|
},
|
|
callback = function()
|
|
vim.opt_local.conceallevel = 0
|
|
vim.opt_local.concealcursor = ''
|
|
end,
|
|
})
|
|
|
|
-- Enable spellcheck for some types
|
|
vim.api.nvim_create_autocmd('FileType', {
|
|
group = augroup,
|
|
pattern = {
|
|
'latex',
|
|
'markdown',
|
|
'typst',
|
|
'plaintex',
|
|
'tex',
|
|
},
|
|
callback = function()
|
|
vim.cmd [[set spell]]
|
|
end,
|
|
})
|
|
|
|
-- disable auto formatting for some filetypes
|
|
vim.api.nvim_create_autocmd('FileType', {
|
|
group = augroup,
|
|
pattern = {
|
|
'TelescopePrompt',
|
|
},
|
|
callback = function()
|
|
vim.opt_local.formatoptions = ''
|
|
end,
|
|
})
|
|
|
|
-- tweak colorschemes and highlights after loading a new colorscheme
|
|
vim.api.nvim_create_autocmd('ColorScheme', {
|
|
group = augroup,
|
|
callback = function()
|
|
vim.cmd [[highlight Comment gui=NONE]] -- no italics for comments
|
|
end,
|
|
})
|
|
|
|
-- pin main.typ for typst projects
|
|
vim.api.nvim_create_autocmd('FileType', {
|
|
group = augroup,
|
|
pattern = {
|
|
'typst',
|
|
},
|
|
callback = function()
|
|
-- pin the main file
|
|
vim.lsp.buf.execute_command { command = 'tinymist.pinMain', arguments = { vim.api.nvim_buf_get_name(0) } }
|
|
-- -- unpin the main file
|
|
-- vim.lsp.buf.execute_command { command = 'tinymist.pinMain', arguments = { nil } }
|
|
end,
|
|
})
|