mirror of
				https://github.com/WarrenHood/dotfiles.git
				synced 2025-11-04 01:38:41 +00:00 
			
		
		
		
	Fix literal tabs not working
This commit is contained in:
		
							parent
							
								
									1b30e6d49d
								
							
						
					
					
						commit
						7913d705ee
					
				| 
						 | 
				
			
			@ -2,63 +2,75 @@
 | 
			
		|||
local cmp = require("cmp")
 | 
			
		||||
 | 
			
		||||
cmp.setup({
 | 
			
		||||
	snippet = {
 | 
			
		||||
		-- REQUIRED - you must specify a snippet engine
 | 
			
		||||
		expand = function(args)
 | 
			
		||||
			require('luasnip').lsp_expand(args.body)
 | 
			
		||||
		end,
 | 
			
		||||
		vim.lsp.buf.format,
 | 
			
		||||
	},
 | 
			
		||||
	window = {
 | 
			
		||||
    snippet = {
 | 
			
		||||
        -- REQUIRED - you must specify a snippet engine
 | 
			
		||||
        expand = function(args)
 | 
			
		||||
            require('luasnip').lsp_expand(args.body)
 | 
			
		||||
        end,
 | 
			
		||||
        vim.lsp.buf.format,
 | 
			
		||||
    },
 | 
			
		||||
    window = {
 | 
			
		||||
 | 
			
		||||
		-- completion = cmp.config.window.bordered(),
 | 
			
		||||
		-- documentation = cmp.config.window.bordered(),
 | 
			
		||||
	},
 | 
			
		||||
	mapping = cmp.mapping.preset.insert({
 | 
			
		||||
		["<C-b>"] = cmp.mapping.scroll_docs(-4),
 | 
			
		||||
		["<C-f>"] = cmp.mapping.scroll_docs(4),
 | 
			
		||||
        -- completion = cmp.config.window.bordered(),
 | 
			
		||||
        -- documentation = cmp.config.window.bordered(),
 | 
			
		||||
    },
 | 
			
		||||
    mapping = cmp.mapping.preset.insert({
 | 
			
		||||
        ["<C-b>"] = cmp.mapping.scroll_docs(-4),
 | 
			
		||||
        ["<C-f>"] = cmp.mapping.scroll_docs(4),
 | 
			
		||||
 | 
			
		||||
		["<C-Space>"] = cmp.mapping.complete(),
 | 
			
		||||
		["<C-e>"] = cmp.mapping.abort(),
 | 
			
		||||
		["<CR>"] = cmp.mapping.confirm({ select = true }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items.
 | 
			
		||||
		["<Tab>"] = cmp.mapping(function() if cmp.visible() then cmp.select_next_item() end end),
 | 
			
		||||
		["<S-Tab>"] = cmp.mapping(function() if cmp.visible() then cmp.select_prev_item() end end),
 | 
			
		||||
	}),
 | 
			
		||||
	sources = cmp.config.sources({
 | 
			
		||||
		{ name = "nvim_lsp" },
 | 
			
		||||
		{ name = "luasnip" },
 | 
			
		||||
		{ name = "treesitter" },
 | 
			
		||||
	}, {
 | 
			
		||||
		{ name = "buffer" },
 | 
			
		||||
	}),
 | 
			
		||||
        ["<C-Space>"] = cmp.mapping.complete(),
 | 
			
		||||
        ["<C-e>"] = cmp.mapping.abort(),
 | 
			
		||||
        ["<CR>"] = cmp.mapping.confirm({ select = true }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items.
 | 
			
		||||
        ["<Tab>"] = cmp.mapping(function(fallback)
 | 
			
		||||
            if cmp.visible() then
 | 
			
		||||
                cmp.select_next_item()
 | 
			
		||||
            else
 | 
			
		||||
                fallback()
 | 
			
		||||
            end
 | 
			
		||||
        end),
 | 
			
		||||
        ["<S-Tab>"] = cmp.mapping(function(fallback)
 | 
			
		||||
            if cmp.visible() then
 | 
			
		||||
                cmp.select_prev_item()
 | 
			
		||||
            else
 | 
			
		||||
                fallback()
 | 
			
		||||
            end
 | 
			
		||||
        end),
 | 
			
		||||
    }),
 | 
			
		||||
    sources = cmp.config.sources({
 | 
			
		||||
        { name = "nvim_lsp" },
 | 
			
		||||
        { name = "luasnip" },
 | 
			
		||||
        { name = "treesitter" },
 | 
			
		||||
    }, {
 | 
			
		||||
        { name = "buffer" },
 | 
			
		||||
    }),
 | 
			
		||||
})
 | 
			
		||||
 | 
			
		||||
-- Set configuration for specific filetype.
 | 
			
		||||
cmp.setup.filetype("gitcommit", {
 | 
			
		||||
	sources = cmp.config.sources({
 | 
			
		||||
		{ name = "cmp_git" }, -- You can specify the `cmp_git` source if you were installed it.
 | 
			
		||||
	}, {
 | 
			
		||||
		{ name = "buffer" },
 | 
			
		||||
	}),
 | 
			
		||||
    sources = cmp.config.sources({
 | 
			
		||||
        { name = "cmp_git" }, -- You can specify the `cmp_git` source if you were installed it.
 | 
			
		||||
    }, {
 | 
			
		||||
        { name = "buffer" },
 | 
			
		||||
    }),
 | 
			
		||||
})
 | 
			
		||||
 | 
			
		||||
-- Use buffer source for `/` and `?` (if you enabled `native_menu`, this won't work anymore).
 | 
			
		||||
cmp.setup.cmdline({ "/", "?" }, {
 | 
			
		||||
	mapping = cmp.mapping.preset.cmdline(),
 | 
			
		||||
	sources = {
 | 
			
		||||
		{ name = "buffer" },
 | 
			
		||||
	},
 | 
			
		||||
    mapping = cmp.mapping.preset.cmdline(),
 | 
			
		||||
    sources = {
 | 
			
		||||
        { name = "buffer" },
 | 
			
		||||
    },
 | 
			
		||||
})
 | 
			
		||||
 | 
			
		||||
-- Use cmdline & path source for ':' (if you enabled `native_menu`, this won't work anymore).
 | 
			
		||||
cmp.setup.cmdline(":", {
 | 
			
		||||
	mapping = cmp.mapping.preset.cmdline(),
 | 
			
		||||
	sources = cmp.config.sources({
 | 
			
		||||
		{ name = "path" },
 | 
			
		||||
	}, {
 | 
			
		||||
		{ name = "cmdline" },
 | 
			
		||||
	}, {
 | 
			
		||||
		{ name = "stylua" },
 | 
			
		||||
	}),
 | 
			
		||||
    mapping = cmp.mapping.preset.cmdline(),
 | 
			
		||||
    sources = cmp.config.sources({
 | 
			
		||||
        { name = "path" },
 | 
			
		||||
    }, {
 | 
			
		||||
        { name = "cmdline" },
 | 
			
		||||
    }, {
 | 
			
		||||
        { name = "stylua" },
 | 
			
		||||
    }),
 | 
			
		||||
})
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue