Go语言 如何配置Vim为. ghtml文件?

tnkciper  于 5个月前  发布在  Go
关注(0)|答案(1)|浏览(38)

我使用lazyvim默认,原来gohtml是不承认的html,我最终创建了一个filetype.lua文件,并设置.gohtml为.html
在这种情况下,LSP通过以下方式识别它:
然而,当保存时,它甚至显示null-ls正在格式化,但它不格式化。
我已经研究了几天,我还没有能够让它工作,如果我改变它为.html它的格式,但这是一个痛苦。

cygmwpex

cygmwpex1#

下面是一个filetype.lua文件的例子:

local ft = vim.api.nvim_create_augroup('filetype_gohtml', { clear = true })
vim.api.nvim_create_autocmd('filetype', { group = ft, pattern = '.gohtml', callback = function()
  vim.bo.filetype = 'html'
end })

字符串
创建了filetype.lua文件后,需要将其加载到Vim中。可以通过在vimrc文件中添加以下行来完成:

lua require('gohtml-filetype')


加载filetype.lua文件后,您应该能够使用:用途:LspInfo查看LSP是否将.gohtml文件识别为HTML。但是,您在保存文件时仍然可能遇到格式问题。
这是因为null-ls格式化程序在没有额外配置的情况下无法自动格式化.gohtml文件。要解决此问题,您需要手动配置null-ls以使用.gohtml文件的适当格式化程序。
下面是一个如何配置null-ls以使用.gohtml文件的prettier格式化程序的示例:

-- Enable null-ls
lua require('null-ls').setup({
  sources = {
    {
      name = 'prettier',
      command = 'prettier',
      filetypes = { 'html' },
    },
  },
})


通过这种配置,null-ls应该能够在保存.gohtml文件时自动格式化它们。

相关问题