diff --git a/.config/nvim/after/plugin/flutter-tools.lua b/.config/nvim/after/plugin/flutter-tools.lua new file mode 100644 index 0000000..68479ac --- /dev/null +++ b/.config/nvim/after/plugin/flutter-tools.lua @@ -0,0 +1,93 @@ + +-- alternatively you can override the default configs +require("flutter-tools").setup { + ui = { + -- the border type to use for all floating windows, the same options/formats + -- used for ":h nvim_open_win" e.g. "single" | "shadow" | {} + border = "rounded", + -- This determines whether notifications are show with `vim.notify` or with the plugin's custom UI + -- please note that this option is eventually going to be deprecated and users will need to + -- depend on plugins like `nvim-notify` instead. + notification_style = 'native' + }, + decorations = { + statusline = { + -- set to true to be able use the 'flutter_tools_decorations.app_version' in your statusline + -- this will show the current version of the flutter app from the pubspec.yaml file + app_version = false, + -- set to true to be able use the 'flutter_tools_decorations.device' in your statusline + -- this will show the currently running device if an application was started with a specific + -- device + device = false, + -- set to true to be able use the 'flutter_tools_decorations.project_config' in your statusline + -- this will show the currently selected project configuration + project_config = false, + } + }, + debugger = { -- integrate with nvim dap + install dart code debugger + enabled = false, + -- if empty dap will not stop on any exceptions, otherwise it will stop on those specified + -- see |:help dap.set_exception_breakpoints()| for more info + exception_breakpoints = {}, + -- Whether to call toString() on objects in debug views like hovers and the + -- variables list. + -- Invoking toString() has a performance cost and may introduce side-effects, + -- although users may expected this functionality. null is treated like false. + evaluate_to_string_in_debug_views = true, + -- You can use the `debugger.register_configurations` to register custom runner configuration (for example for different targets or flavor). Plugin automatically registers the default configuration, but you can override it or add new ones. + -- register_configurations = function(paths) + -- require("dap").configurations.dart = { + -- -- your custom configuration + -- } + -- end, + }, + flutter_path = "/opt/flutter/bin/flutter", -- <-- this takes priority over the lookup + flutter_lookup_cmd = nil, -- example "dirname $(which flutter)" or "asdf where flutter" + root_patterns = { ".git", "pubspec.yaml" }, -- patterns to find the root of your flutter project + fvm = false, -- takes priority over path, uses /.fvm/flutter_sdk if enabled + widget_guides = { + enabled = false, + }, + closing_tags = { + highlight = "ErrorMsg", -- highlight for the closing tag + prefix = ">", -- character to use for close tag e.g. > Widget + priority = 10, -- priority of virtual text in current line + -- consider to configure this when there is a possibility of multiple virtual text items in one line + -- see `priority` option in |:help nvim_buf_set_extmark| for more info + enabled = true -- set to false to disable + }, + dev_log = { + enabled = true, + filter = nil, -- optional callback to filter the log + -- takes a log_line as string argument; returns a boolean or nil; + -- the log_line is only added to the output if the function returns true + notify_errors = false, -- if there is an error whilst running then notify the user + open_cmd = "15split", -- command to use to open the log buffer + focus_on_open = true, -- focus on the newly opened log window + }, + dev_tools = { + autostart = false, -- autostart devtools server if not detected + auto_open_browser = false, -- Automatically opens devtools in the browser + }, + outline = { + open_cmd = "30vnew", -- command to use to open the outline buffer + auto_open = false -- if true this will open the outline automatically when it is first populated + }, + lsp = { + color = { -- show the derived colours for dart variables + enabled = false, -- whether or not to highlight color variables at all, only supported on flutter >= 2.10 + background = false, -- highlight the background + background_color = nil, -- required, when background is transparent (i.e. background_color = { r = 19, g = 17, b = 24},) + foreground = false, -- highlight the foreground + virtual_text = true, -- show the highlight using virtual text + virtual_text_str = "■", -- the virtual text character to highlight + }, + settings = { + showTodos = true, + completeFunctionCalls = true, + renameFilesWithClasses = "prompt", -- "always" + enableSnippets = true, + updateImportsOnRename = true, -- Whether to update imports and other directives when files are renamed. Required for `FlutterRename` command. + } + } +} diff --git a/.config/nvim/after/plugin/tabset.lua b/.config/nvim/after/plugin/tabset.lua index 2f86b48..a004d6c 100644 --- a/.config/nvim/after/plugin/tabset.lua +++ b/.config/nvim/after/plugin/tabset.lua @@ -5,7 +5,7 @@ require("tabset").setup({ }, languages = { { - filetypes = { "cmake", "html", "json", "yaml", "xml", "markdown", "bash", "sh", "zsh" }, + filetypes = { "dart", "cmake", "html", "json", "yaml", "xml", "markdown", "bash", "sh", "zsh" }, config = { tabwidth = 2 } diff --git a/.config/nvim/lua/tiagorg/colors.lua b/.config/nvim/lua/tiagorg/colors.lua index 99f4fa0..e4a04c3 100644 --- a/.config/nvim/lua/tiagorg/colors.lua +++ b/.config/nvim/lua/tiagorg/colors.lua @@ -47,7 +47,23 @@ LoadColors() vim.cmd([[autocmd ColorScheme * lua OnColorschemeChanged()]]) vim.api.nvim_create_user_command("TransparentBackground", function(opts) - vim.api.nvim_set_hl(0, "Normal", { bg = "none" }) - vim.api.nvim_set_hl(0, "NormalFloat", { bg = "none" }) -end, {}) + if (opts.args == "on") then + vim.api.nvim_set_hl(0, "Normal", { bg = "none" }) + vim.api.nvim_set_hl(0, "NormalFloat", { bg = "none" }) + else + vim.api.nvim_set_hl(0, "Normal", {}) + vim.api.nvim_set_hl(0, "NormalFloat", {}) + end +end, { + nargs = 1, + complete = function() + return { "on", "off" } + end, + desc = "Toggle transparent background" +}) + +vim.api.nvim_create_user_command('Theme', function(opts) + vim.cmd('colorscheme ' .. opts.args) +end, { nargs = 1, complete = 'color' }) + diff --git a/.config/nvim/lua/tiagorg/packer.lua b/.config/nvim/lua/tiagorg/packer.lua index 02d1553..57244aa 100644 --- a/.config/nvim/lua/tiagorg/packer.lua +++ b/.config/nvim/lua/tiagorg/packer.lua @@ -13,6 +13,10 @@ return require('packer').startup(function(use) 'rose-pine/neovim', as = 'rose-pine' } + use { + 'daltonmenezes/aura-theme', + rtp = 'packages/neovim' + } -- Essentials use { @@ -90,4 +94,5 @@ return require('packer').startup(function(use) -- Temp use("dylon/vim-antlr") + use("akinsho/flutter-tools.nvim") end) diff --git a/.config/nvim/lua/tiagorg/set.lua b/.config/nvim/lua/tiagorg/set.lua index d4bdc10..118f005 100644 --- a/.config/nvim/lua/tiagorg/set.lua +++ b/.config/nvim/lua/tiagorg/set.lua @@ -1,5 +1,5 @@ vim.g.mapleader = " " -vim.g.mouse = "a" +vim.g.mouse = "ar" vim.opt.updatetime = 50 vim.opt.compatible = false