noice + notify
This commit is contained in:
18
lua/config/archive/bufferline.lua
Normal file
18
lua/config/archive/bufferline.lua
Normal file
@ -0,0 +1,18 @@
|
||||
require("bufferline").setup{
|
||||
options = {
|
||||
tab_size = 30
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
-- Настройка биндов узнать что действительно нажимается - перейти в режим вставки нажать <c-v> и потом необходимое сочетание
|
||||
vim.keymap.set('n', '<A-;>', ':BufferLineCycleNext<CR>', { noremap = true, silent = true })
|
||||
vim.keymap.set('n', '<A-j>', ':BufferLineCyclePrev<CR>', { noremap = true, silent = true })
|
||||
vim.keymap.set('n', '<A-w>', ':bd!<CR>', { noremap = true, silent = true })
|
||||
-- Настройка сочетаний клавиш для терминала
|
||||
vim.keymap.set('t', '<A-;>', '<C-\\><C-N>:BufferLineCycleNext<CR>', { noremap = true, silent = true })
|
||||
vim.keymap.set('t', '<A-j>', '<C-\\><C-N>:BufferLineCyclePrev<CR>', { noremap = true, silent = true })
|
||||
vim.keymap.set('t', '<A-w>', '<C-\\><C-N>:bd!<CR>', { noremap = true, silent = true })
|
||||
-- Добавление выхода из режима вставки в терминале
|
||||
vim.keymap.set('t', '<A-i>', '<C-\\><C-N>', { noremap = true, silent = true })
|
||||
|
||||
31
lua/config/archive/cigan.lua
Normal file
31
lua/config/archive/cigan.lua
Normal file
@ -0,0 +1,31 @@
|
||||
|
||||
local M = {}
|
||||
|
||||
function M.run_script()
|
||||
-- Проверяем, что открыт именно файл ~/desktop/govno/ui.md
|
||||
local current_file = vim.fn.expand('%:p') -- Полный путь к текущему файлу
|
||||
local target_file = vim.fn.expand('~/desktop/govno/ui.md')
|
||||
|
||||
if current_file ~= target_file then
|
||||
print("Ошибка: Открыт не тот файл. Должен быть открыт " .. target_file)
|
||||
return
|
||||
end
|
||||
|
||||
-- Сохраняем файл
|
||||
vim.cmd('w')
|
||||
|
||||
-- Запускаем скрипт
|
||||
print("Ожидайте ответа")
|
||||
local script_path = vim.fn.expand('~/dev/python/interface.py')
|
||||
|
||||
vim.fn.jobstart({'python3', script_path}, {
|
||||
on_exit = function()
|
||||
vim.cmd('e') -- Перезагружаем файл после завершения скрипта
|
||||
vim.api.nvim_feedkeys(vim.api.nvim_replace_termcodes("<S-g>", true, false, true), 'n', false)
|
||||
print("Отвечено!")
|
||||
end
|
||||
})
|
||||
|
||||
end
|
||||
|
||||
return M
|
||||
205
lua/config/archive/plugins-meandering.lua
Normal file
205
lua/config/archive/plugins-meandering.lua
Normal file
@ -0,0 +1,205 @@
|
||||
return {
|
||||
-- ==============================
|
||||
-- Визуальные плагины
|
||||
-- ==============================
|
||||
|
||||
-- Темы оформления
|
||||
{
|
||||
"bluz71/vim-nightfly-colors", -- Nightfly тема
|
||||
},
|
||||
{
|
||||
"folke/tokyonight.nvim", -- TokyoNight тема
|
||||
},
|
||||
{
|
||||
"morhetz/gruvbox", -- Gruvbox тема
|
||||
},
|
||||
{
|
||||
"rebelot/kanagawa.nvim", -- Kanagawa тема
|
||||
},
|
||||
{
|
||||
"navarasu/onedark.nvim",
|
||||
config = function()
|
||||
require("onedark").setup({
|
||||
style = "dark", -- Выберите стиль: 'dark', 'darker', 'cool', 'deep', 'warm', 'warmer'
|
||||
})
|
||||
require("onedark").load() -- Активируйте тему
|
||||
end,
|
||||
},
|
||||
|
||||
-- Иконки
|
||||
{
|
||||
"nvim-tree/nvim-web-devicons", -- Провайдер иконок для других плагинов
|
||||
},
|
||||
|
||||
-- Интерфейс и UI
|
||||
-- {
|
||||
-- "MeanderingProgrammer/render-markdown.nvim", -- Рендеринг Markdown
|
||||
-- dependencies = { "echasnovski/mini.nvim", opt = true },
|
||||
-- config = function()
|
||||
-- require("config.render-markdown")
|
||||
-- end,
|
||||
-- },
|
||||
{
|
||||
"nvim-lualine/lualine.nvim", -- Статусная строка
|
||||
dependencies = { "kyazdani42/nvim-web-devicons", optional = true },
|
||||
},
|
||||
{
|
||||
"lukas-reineke/indent-blankline.nvim", -- Визуализация отступов
|
||||
config = function()
|
||||
require("config.indent-blankline")
|
||||
end,
|
||||
},
|
||||
{
|
||||
"folke/noice.nvim",
|
||||
event = "VeryLazy",
|
||||
opts = {
|
||||
-- add any options here
|
||||
},
|
||||
dependencies = {
|
||||
-- if you lazy-load any plugin below, make sure to add proper `module="..."` entries
|
||||
"MunifTanjim/nui.nvim",
|
||||
-- OPTIONAL:
|
||||
-- `nvim-notify` is only needed, if you want to use the notification view.
|
||||
-- If not available, we use `mini` as the fallback
|
||||
"rcarriga/nvim-notify",
|
||||
}
|
||||
},
|
||||
{
|
||||
"iamcco/markdown-preview.nvim",
|
||||
cmd = { "MarkdownPreviewToggle", "MarkdownPreview", "MarkdownPreviewStop" },
|
||||
build = "cd app && yarn install",
|
||||
init = function()
|
||||
vim.g.mkdp_filetypes = { "markdown" }
|
||||
vim.g.mkdp_markdown_css = vim.fn.expand("~/.config/nvim/markdowm.css.css")
|
||||
--vim.g.mkdp_markdown_css = vim.fn.expand("~/.config/nvim/markdown_black_writer.css")
|
||||
end,
|
||||
ft = { "markdown" },
|
||||
},
|
||||
-- ==============================
|
||||
-- Функциональные плагины
|
||||
-- ==============================
|
||||
|
||||
-- LSP и автодополнение
|
||||
{
|
||||
"hrsh7th/cmp-nvim-lsp", -- Интеграция nvim-cmp с LSP
|
||||
},
|
||||
{
|
||||
"hrsh7th/cmp-nvim-lsp-signature-help", -- Поддержка сигнатур LSP в автодополнении
|
||||
},
|
||||
{
|
||||
"hrsh7th/cmp-path", -- Автодополнение путей
|
||||
},
|
||||
{
|
||||
"hrsh7th/nvim-cmp", -- Основной плагин автодополнения
|
||||
},
|
||||
{
|
||||
"neovim/nvim-lspconfig", -- Конфигурация LSP
|
||||
},
|
||||
{
|
||||
"williamboman/mason.nvim", -- Управление LSP серверами
|
||||
},
|
||||
|
||||
-- Поиск и навигация
|
||||
{
|
||||
"ibhagwan/fzf-lua", -- FZF для быстрого поиска
|
||||
dependencies = { "nvim-tree/nvim-web-devicons" },
|
||||
opts = {},
|
||||
},
|
||||
{
|
||||
"nvim-lua/plenary.nvim", -- Библиотека для других плагинов
|
||||
},
|
||||
|
||||
-- Другие функциональные плагины
|
||||
{
|
||||
"antoinemadec/FixCursorHold.nvim", -- Исправление CursorHold событий
|
||||
},
|
||||
{
|
||||
"gabenespoli/vim-mutton", -- Дополнительные возможности для работы с текстом
|
||||
},
|
||||
{
|
||||
"kyazdani42/nvim-tree.lua", -- Файловый менеджер
|
||||
dependencies = { "nvim-tree/nvim-web-devicons" },
|
||||
},
|
||||
{
|
||||
"nanotee/zoxide.vim", -- Интеграция с zoxide для быстрой навигации
|
||||
},
|
||||
{
|
||||
"SidOfc/mkdx", -- Улучшения для работы с Markdown
|
||||
},
|
||||
{
|
||||
"L3MON4D3/LuaSnip",
|
||||
dependencies = { "rafamadriz/friendly-snippets" },
|
||||
},
|
||||
|
||||
{
|
||||
"MeanderingProgrammer/render-markdown.nvim",
|
||||
dependencies = { "nvim-treesitter/nvim-treesitter" },
|
||||
config = function()
|
||||
require("render-markdown").setup({
|
||||
-- Принудительно включаем рендеринг во всех режимах, включая терминал
|
||||
render_modes = true, -- или перечислить явно: { 'n', 'c', 't', 'i' }
|
||||
})
|
||||
|
||||
-- Автокоманда, срабатывающая при открытии терминала
|
||||
vim.api.nvim_create_autocmd("TermOpen", {
|
||||
callback = function()
|
||||
-- Сообщаем Treesitter, что содержимое буфера терминала — Markdown
|
||||
vim.treesitter.language.register('markdown', vim.bo.filetype)
|
||||
-- Перезапускаем Treesitter-парсер для текущего буфера
|
||||
vim.cmd("edit")
|
||||
end,
|
||||
})
|
||||
end,
|
||||
}
|
||||
-- Treesitter для синтаксического анализа
|
||||
{
|
||||
"nvim-treesitter/nvim-treesitter",
|
||||
|
||||
lazy = true,
|
||||
build = ":TSUpdate",
|
||||
dependencies = { "MeanderingProgrammer/render-markdown.nvim" },
|
||||
config = function()
|
||||
require("config.nvim-treesitter")
|
||||
end,
|
||||
},
|
||||
|
||||
|
||||
|
||||
{
|
||||
'gsuuon/model.nvim',
|
||||
config = function()
|
||||
local bash_provider = {
|
||||
request_completion = function(handlers, params, options)
|
||||
local input = params.input
|
||||
local command = "~/test '" .. input .. "'"
|
||||
local handle = io.popen(command)
|
||||
local result = handle:read("*a")
|
||||
handle:close()
|
||||
|
||||
local response = vim.json.decode(result)
|
||||
handlers.on_partial(response.message.content)
|
||||
handlers.on_finish()
|
||||
end
|
||||
}
|
||||
|
||||
require('model').setup({
|
||||
chats = {
|
||||
mybash = {
|
||||
provider = bash_provider,
|
||||
create = function(input, context)
|
||||
return {
|
||||
messages = {
|
||||
{ role = 'user', content = input }
|
||||
}
|
||||
}
|
||||
end,
|
||||
run = function(messages, config)
|
||||
local last_message = messages[#messages]
|
||||
return { input = last_message.content }
|
||||
end
|
||||
}
|
||||
}
|
||||
})
|
||||
end
|
||||
}
|
||||
}
|
||||
74
lua/config/archive/render-markdown.lua
Normal file
74
lua/config/archive/render-markdown.lua
Normal file
@ -0,0 +1,74 @@
|
||||
require('render-markdown').setup({
|
||||
debounce = 100,
|
||||
-- render_modes = true,
|
||||
heading = {
|
||||
enabled = true,
|
||||
icons = { "", },
|
||||
position = 'inline',
|
||||
border = { true, true, true, false, false, false},
|
||||
border_virtual = true,
|
||||
width = 'block',
|
||||
right_pad = 1,
|
||||
left_pad = 1,
|
||||
},
|
||||
sign = { enabled = false },
|
||||
quote = { repeat_linebreak = true },
|
||||
link = {
|
||||
enabled = true,
|
||||
render_modes = false,
|
||||
footnote = {
|
||||
superscript = false,
|
||||
prefix = '',
|
||||
suffix = '',
|
||||
},
|
||||
image = ' ',
|
||||
email = ' ',
|
||||
hyperlink = '',
|
||||
highlight = 'RenderMarkdownLink',
|
||||
wiki = {
|
||||
icon = ' ',
|
||||
body = function()
|
||||
return nil
|
||||
end,
|
||||
highlight = 'RenderMarkdownWikiLink',
|
||||
},
|
||||
custom = {
|
||||
web = { pattern = '^http', icon = ' ' },
|
||||
discord = { pattern = 'discord%.com', icon = ' ' },
|
||||
github = { pattern = 'github%.com', icon = ' ' },
|
||||
gitlab = { pattern = 'gitlab%.com', icon = ' ' },
|
||||
google = { pattern = 'google%.com', icon = ' ' },
|
||||
neovim = { pattern = 'neovim%.io', icon = ' ' },
|
||||
reddit = { pattern = 'reddit%.com', icon = ' ' },
|
||||
stackoverflow = { pattern = 'stackoverflow%.com', icon = ' ' },
|
||||
wikipedia = { pattern = 'wikipedia%.org', icon = ' ' },
|
||||
youtube = { pattern = 'youtube%.com', icon = ' ' },
|
||||
},
|
||||
},
|
||||
checkbox = {
|
||||
unchecked = { icon = '✘ ' },
|
||||
checked = { icon = '✔ ' },
|
||||
},
|
||||
-- bullet = { icons = { '•', '◦', '-',} },
|
||||
bullet= {icons = { '●', '○', '◆', '◇' }},
|
||||
})
|
||||
|
||||
|
||||
|
||||
|
||||
-- переход по ссылкам
|
||||
vim.keymap.set('n', 'gl', function() FindHttpOrWwwInLine() end, { silent = true })
|
||||
|
||||
function FindHttpOrWwwInLine()
|
||||
local line = vim.api.nvim_get_current_line()
|
||||
local start_pos, end_pos = line:find("http")
|
||||
if start_pos then
|
||||
local col = start_pos - 1
|
||||
vim.api.nvim_win_set_cursor(0, {vim.fn.line('.'), col})
|
||||
vim.cmd("normal! vE")
|
||||
vim.fn.feedkeys("gx")
|
||||
vim.api.nvim_input("<Esc>")
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user