diff --git a/init.vim b/init.vim index 57de09b..16c9333 100755 --- a/init.vim +++ b/init.vim @@ -19,6 +19,7 @@ source ~/.config/nvim/plugin-confs/dashboard-nvim.lua source ~/.config/nvim/plugin-confs/gitsigns.lua " source ~/.config/nvim/plugin-confs/lspfuzzy.lua source ~/.config/nvim/plugin-confs/lualine.lua +source ~/.config/nvim/plugin-confs/copilot-lualine.lua source ~/.config/nvim/plugin-confs/nvimtree.lua source ~/.config/nvim/plugin-confs/presence.lua source ~/.config/nvim/plugin-confs/treesitter.lua diff --git a/lua/plugins.lua b/lua/plugins.lua index 270c5c2..4fad9ed 100644 --- a/lua/plugins.lua +++ b/lua/plugins.lua @@ -95,181 +95,153 @@ require('packer').startup(function(use) "jackMort/ChatGPT.nvim", commit = "24bcca7", config = function() - require("chatgpt").setup( - { - api_key_cmd = "cat /home/sudacode/.openaikey", - yank_register = "+", - edit_with_instructions = { - diff = false, - keymaps = { - close = "", - accept = "", - toggle_diff = "", - toggle_settings = "", - toggle_help = "", - cycle_windows = "", - use_output_as_input = "", - }, - }, - chat = { - welcome_message = WELCOME_MESSAGE, - loading_text = "Loading, please wait ...", - question_sign = "", -- 🙂 - answer_sign = "ﮧ", -- 🤖 - border_left_sign = "", - border_right_sign = "", - max_line_length = 120, - sessions_window = { - active_sign = "  ", - inactive_sign = "  ", - current_line_sign = "", - border = { - style = "rounded", - text = { - top = " Sessions ", - }, - }, - win_options = { - winhighlight = "Normal:Normal,FloatBorder:FloatBorder", - }, - }, - keymaps = { - close = "", - yank_last = "", - yank_last_code = "", - scroll_up = "", - scroll_down = "", - new_session = "", - cycle_windows = "", - cycle_modes = "", - next_message = "", - prev_message = "", - select_session = "", - rename_session = "r", - delete_session = "d", - draft_message = "", - edit_message = "e", - delete_message = "d", - toggle_settings = "", - toggle_sessions = "", - toggle_help = "", - toggle_message_role = "", - toggle_system_role_open = "", - stop_generating = "", - }, - }, - popup_layout = { - default = "center", - center = { - width = "80%", - height = "80%", - }, - right = { - width = "30%", - width_settings_open = "50%", - }, - }, - popup_window = { - border = { - highlight = "FloatBorder", - style = "rounded", - text = { - top = " ChatGPT ", - }, - }, - win_options = { - wrap = true, - linebreak = true, - foldcolumn = "1", - winhighlight = "Normal:Normal,FloatBorder:FloatBorder", - }, - buf_options = { - filetype = "markdown", - }, - }, - system_window = { - border = { - highlight = "FloatBorder", - style = "rounded", - text = { - top = " SYSTEM ", - }, - }, - win_options = { - wrap = true, - linebreak = true, - foldcolumn = "2", - winhighlight = "Normal:Normal,FloatBorder:FloatBorder", - }, - }, - popup_input = { - prompt = "  ", - border = { - highlight = "FloatBorder", - style = "rounded", - text = { - top_align = "center", - top = " Prompt ", - }, - }, - win_options = { - winhighlight = "Normal:Normal,FloatBorder:FloatBorder", - }, - submit = "", - submit_n = "", - max_visible_lines = 20, - }, - settings_window = { - setting_sign = "  ", - border = { - style = "rounded", - text = { - top = " Settings ", - }, - }, - win_options = { - winhighlight = "Normal:Normal,FloatBorder:FloatBorder", - }, - }, - help_window = { - setting_sign = "  ", - border = { - style = "rounded", - text = { - top = " Help ", - }, - }, - win_options = { - winhighlight = "Normal:Normal,FloatBorder:FloatBorder", - }, - }, - openai_params = { - model = "gpt-3.5-turbo", - frequency_penalty = 0, - presence_penalty = 0, - max_tokens = 300, - temperature = 0, - top_p = 1, - n = 1, - }, - openai_edit_params = { - model = "gpt-3.5-turbo", - frequency_penalty = 0, - presence_penalty = 0, - temperature = 0, - top_p = 1, - n = 1, - }, - use_openai_functions_for_edits = false, - actions_paths = {}, - show_quickfixes_cmd = "Trouble quickfix", - predefined_chat_gpt_prompts = "https://raw.githubusercontent.com/f/awesome-chatgpt-prompts/main/prompts.csv", - highlights = { - help_key = "@symbol", - help_description = "@comment", - }, - } - ) + require("chatgpt").setup({ + api_key_cmd = "cat /home/sudacode/.openaikey", + yank_register = "+", + edit_with_instructions = { + diff = false, + keymaps = { + close = "", + accept = "", + toggle_diff = "", + toggle_settings = "", + toggle_help = "", + cycle_windows = "", + use_output_as_input = "" + } + }, + chat = { + welcome_message = WELCOME_MESSAGE, + loading_text = "Loading, please wait ...", + question_sign = "", -- 🙂 + answer_sign = "ﮧ", -- 🤖 + border_left_sign = "", + border_right_sign = "", + max_line_length = 120, + sessions_window = { + active_sign = "  ", + inactive_sign = "  ", + current_line_sign = "", + border = { + style = "rounded", + text = { top = " Sessions " } + }, + win_options = { + winhighlight = "Normal:Normal,FloatBorder:FloatBorder" + } + }, + keymaps = { + close = "", + yank_last = "", + yank_last_code = "", + scroll_up = "", + scroll_down = "", + new_session = "", + cycle_windows = "", + cycle_modes = "", + next_message = "", + prev_message = "", + select_session = "", + rename_session = "r", + delete_session = "d", + draft_message = "", + edit_message = "e", + delete_message = "d", + toggle_settings = "", + toggle_sessions = "", + toggle_help = "", + toggle_message_role = "", + toggle_system_role_open = "", + stop_generating = "" + } + }, + popup_layout = { + default = "center", + center = { width = "80%", height = "80%" }, + right = { width = "30%", width_settings_open = "50%" } + }, + popup_window = { + border = { + highlight = "FloatBorder", + style = "rounded", + text = { top = " ChatGPT " } + }, + win_options = { + wrap = true, + linebreak = true, + foldcolumn = "1", + winhighlight = "Normal:Normal,FloatBorder:FloatBorder" + }, + buf_options = { filetype = "markdown" } + }, + system_window = { + border = { + highlight = "FloatBorder", + style = "rounded", + text = { top = " SYSTEM " } + }, + win_options = { + wrap = true, + linebreak = true, + foldcolumn = "2", + winhighlight = "Normal:Normal,FloatBorder:FloatBorder" + } + }, + popup_input = { + prompt = "  ", + border = { + highlight = "FloatBorder", + style = "rounded", + text = { top_align = "center", top = " Prompt " } + }, + win_options = { + winhighlight = "Normal:Normal,FloatBorder:FloatBorder" + }, + submit = "", + submit_n = "", + max_visible_lines = 20 + }, + settings_window = { + setting_sign = "  ", + border = { style = "rounded", text = { top = " Settings " } }, + win_options = { + winhighlight = "Normal:Normal,FloatBorder:FloatBorder" + } + }, + help_window = { + setting_sign = "  ", + border = { style = "rounded", text = { top = " Help " } }, + win_options = { + winhighlight = "Normal:Normal,FloatBorder:FloatBorder" + } + }, + openai_params = { + model = "gpt-3.5-turbo", + frequency_penalty = 0, + presence_penalty = 0, + max_tokens = 300, + temperature = 0, + top_p = 1, + n = 1 + }, + openai_edit_params = { + model = "gpt-3.5-turbo", + frequency_penalty = 0, + presence_penalty = 0, + temperature = 0, + top_p = 1, + n = 1 + }, + use_openai_functions_for_edits = false, + actions_paths = {}, + show_quickfixes_cmd = "Trouble quickfix", + predefined_chat_gpt_prompts = + "https://raw.githubusercontent.com/f/awesome-chatgpt-prompts/main/prompts.csv", + highlights = { + help_key = "@symbol", + help_description = "@comment" + } + }) end, requires = { "MunifTanjim/nui.nvim", "nvim-lua/plenary.nvim", @@ -324,6 +296,15 @@ require('packer').startup(function(use) -- }}} -- UI {{{ + use { + "lukas-reineke/indent-blankline.nvim", + config = function() + opts = {} + -- Other blankline configuration here + require("ibl").setup(require("indent-rainbowline").make_opts(opts)) + end, + requires = { "TheGLander/indent-rainbowline.nvim" } + } use { 'glepnir/dashboard-nvim', @@ -343,6 +324,7 @@ require('packer').startup(function(use) 'nvim-lualine/lualine.nvim', requires = { 'kyazdani42/nvim-web-devicons', opt = true } } + use { 'AndreM222/copilot-lualine' } use { 'kyazdani42/nvim-web-devicons' } use { 'norcalli/nvim-colorizer.lua' } use { 'akinsho/nvim-bufferline.lua' } diff --git a/plugin-confs/copilot-lualine.lua b/plugin-confs/copilot-lualine.lua new file mode 100644 index 0000000..bda70c8 --- /dev/null +++ b/plugin-confs/copilot-lualine.lua @@ -0,0 +1,40 @@ +local lualine = require('lualine') +lualine.setup({ + options = { + icons_enabled = true, + theme = cozynight, + component_separators = { left = '', right = '' }, + section_separators = { left = '', right = '' }, + disabled_filetypes = {}, + always_divide_middle = true + }, + sections = { + lualine_a = { 'mode' }, + lualine_b = { + 'branch', 'diff', { + 'diagnostics', + sources = { "nvim_diagnostic" }, + symbols = { + error = ' ', + warn = ' ', + info = ' ', + hint = ' ' + } + } + }, + lualine_c = { 'filename' }, + lualine_x = { 'copilot', 'encoding', 'fileformat', 'filetype' }, -- I added copilot here + lualine_y = { 'progress' }, + lualine_z = { 'location' } + }, + inactive_sections = { + lualine_a = {}, + lualine_b = {}, + lualine_c = { 'filename' }, + lualine_x = { 'location' }, + lualine_y = {}, + lualine_z = {} + }, + tabline = {}, + extensions = {} +}) diff --git a/plugin-confs/nvim-cmp.lua b/plugin-confs/nvim-cmp.lua index ad17c9d..8be3044 100644 --- a/plugin-confs/nvim-cmp.lua +++ b/plugin-confs/nvim-cmp.lua @@ -215,7 +215,7 @@ cmp.setup.cmdline(':', { local servers = { 'bashls', 'pyright', 'jsonls', 'yamlls', 'vimls', 'dotls', 'dockerls', - 'html', 'cssls', 'lua_ls', 'eslint', 'tsserver', 'angularls', 'ansiblels' + 'html', 'cssls', 'lua_ls', 'eslint', 'ts_ls', 'angularls', 'ansiblels' } for _, lsp in ipairs(servers) do