From d98fd30dea3a6b796c7950bd175da3a5bd9db578 Mon Sep 17 00:00:00 2001 From: Tom Li Dobnik Date: Tue, 10 Mar 2026 14:09:51 +0100 Subject: update --- .config/.DS_Store | Bin 8196 -> 8196 bytes .config/fish/fish_variables | 2 +- .config/ghostty/config | 7 +- .config/nvim/after/ftplugin/python.lua | 5 + .config/nvim/init.lua | 407 ++++++++++++++++++--------------- .config/nvim/nvim-macos.tar.gz | 1 - .config/nvim/nvim-pack-lock.json | 20 ++ .config/sioyek/keys_user.config | 18 ++ .config/sioyek/prefs_user.config | 314 +++++++++++++++++++++++++ 9 files changed, 587 insertions(+), 187 deletions(-) create mode 100644 .config/nvim/after/ftplugin/python.lua delete mode 100644 .config/nvim/nvim-macos.tar.gz create mode 100644 .config/sioyek/keys_user.config create mode 100644 .config/sioyek/prefs_user.config (limited to '.config') diff --git a/.config/.DS_Store b/.config/.DS_Store index a1d77a0..6404e70 100644 Binary files a/.config/.DS_Store and b/.config/.DS_Store differ diff --git a/.config/fish/fish_variables b/.config/fish/fish_variables index b59d7d6..1563958 100644 --- a/.config/fish/fish_variables +++ b/.config/fish/fish_variables @@ -4,4 +4,4 @@ SETUVAR --export CARAPACE_BRIDGES:zsh\x2cfish\x2cbash\x2cinshellisense SETUVAR --export JAVA_HOME:/opt/homebrew/opt/openjdk\x4017/libexec/openjdk\x2ejdk/Contents/Home SETUVAR --export --path PATH:/opt/homebrew/opt/openjdk\x4017/libexec/openjdk\x2ejdk/Contents/Home/bin\x1e/opt/homebrew/bin\x1e/opt/homebrew/sbin\x1e/Users/tomiko/\x2ecargo/bin\x1e/Users/tomiko/\x2elocal/bin\x1e/Applications/Ghostty\x2eapp/Contents/MacOS\x1e/usr/local/bin\x1e/System/Cryptexes/App/usr/bin\x1e/usr/bin\x1e/bin\x1e/usr/sbin\x1e/sbin\x1e/var/run/com\x2eapple\x2esecurity\x2ecryptexd/codex\x2esystem/bootstrap/usr/local/bin\x1e/var/run/com\x2eapple\x2esecurity\x2ecryptexd/codex\x2esystem/bootstrap/usr/bin\x1e/var/run/com\x2eapple\x2esecurity\x2ecryptexd/codex\x2esystem/bootstrap/usr/appleinternal/bin\x1e/Library/Apple/usr/bin\x1e/Applications/VMware\x20Fusion\x2eapp/Contents/Public\x1e/usr/local/share/dotnet\x1e\x7e/\x2edotnet/tools\x1e/Library/TeX/texbin\x1e/Applications/Wireshark\x2eapp/Contents/MacOS\x1e/Users/tom/\x2elocal/bin SETUVAR __fish_initialized:4300 -SETUVAR fish_user_paths:/Users/tomiko/\x2elocal/bin\x1e/Applications/Ghostty\x2eapp/Contents/MacOS +SETUVAR fish_user_paths:/Users/tom/\x2elocal/bin\x1e/Users/tomiko/\x2elocal/bin\x1e/Applications/Ghostty\x2eapp/Contents/MacOS diff --git a/.config/ghostty/config b/.config/ghostty/config index 559a361..7ef429d 100644 --- a/.config/ghostty/config +++ b/.config/ghostty/config @@ -12,8 +12,8 @@ confirm-close-surface = false macos-titlebar-style = hidden quick-terminal-animation-duration = 0 background = #000000 -#background-blur = 15 -#background-opacity = 0.8 +# background-blur = 15 +# background-opacity = 0.8 background-image="/Users/tom/dotfiles/.config/ghostty/ign-0008.png" background-image-fit="cover" background-image-opacity=0.3 @@ -27,9 +27,6 @@ keybind = super+alt+ctrl+shift+s=text:\x13 # Ctrl a keybind = super+alt+ctrl+shift+a=text:\x01 -# Ctrl m -# keybind = super+alt+ctrl+shift+m=text:\x0d - # Hyper M to Ctrl Space keybind = super+alt+ctrl+shift+m=text:\x00 diff --git a/.config/nvim/after/ftplugin/python.lua b/.config/nvim/after/ftplugin/python.lua new file mode 100644 index 0000000..d5f5000 --- /dev/null +++ b/.config/nvim/after/ftplugin/python.lua @@ -0,0 +1,5 @@ +vim.api.nvim_create_autocmd("LspAttach", { + callback = function() + vim.lsp.handlers["$/progress"] = function() end + end, +}) diff --git a/.config/nvim/init.lua b/.config/nvim/init.lua index fb59850..0de20c8 100644 --- a/.config/nvim/init.lua +++ b/.config/nvim/init.lua @@ -1,4 +1,4 @@ -_G._startup_time = vim.loop.hrtime() +_G._startup_time = vim.uv.hrtime() -- ============================================================================ -- OPTIONS -- ============================================================================ @@ -7,8 +7,8 @@ vim.opt.number = true -- line number vim.opt.relativenumber = true -- relative line numbers vim.opt.cursorline = true -- highlight current line vim.opt.wrap = false -- do not wrap lines by default -vim.opt.scrolloff = 8 -- keep 8 lines above/below cursor -vim.opt.sidescrolloff = 8 -- keep 8 lines to left/right of cursor +vim.opt.scrolloff = 12 -- keep 8 lines above/below cursor +vim.opt.sidescrolloff = 12 -- keep 8 lines to left/right of cursor vim.opt.tabstop = 4 -- tabwidth vim.opt.shiftwidth = 4 -- indent width @@ -67,9 +67,6 @@ vim.opt.modifiable = true -- allow buffer modifications vim.opt.encoding = "utf-8" -- set encoding vim.opt.listchars = { tab = "» ", trail = "·", nbsp = "␣" } --- vim.opt.guicursor = --- "n-v-c:block,i-ci-ve:block,r-cr:hor20,o:hor50,a:blinkwait700-blinkoff400-blinkon250-Cursor/lCursor,sm:block-blinkwait175-blinkoff150-blinkon175" -- cursor blinking and settings - -- Folding: requires treesitter available at runtime; safe fallback if not vim.opt.foldmethod = "expr" -- use expression for folding vim.opt.foldexpr = "v:lua.vim.treesitter.foldexpr()" -- use treesitter for folding @@ -83,152 +80,6 @@ vim.opt.wildmode = "longest:full,full" -- complete longest common match, full co vim.opt.diffopt:append("linematch:60") -- improve diff display vim.opt.redrawtime = 10000 -- increase neovim redraw tolerance vim.opt.maxmempattern = 20000 -- increase max memory --- ============================================================================ --- STATUSLINE --- ============================================================================ - --- Git branch function with caching and Nerd Font icon -local cached_branch = "" -local last_check = 0 -local function git_branch() - local now = vim.loop.now() - if now - last_check > 5000 then -- Check every 5 seconds - cached_branch = vim.fn.system("git branch --show-current 2>/dev/null | tr -d '\n'") - last_check = now - end - if cached_branch ~= "" then - return "\u{e725} " .. cached_branch .. " " -- nf-dev-git_branch - end - return "" -end - --- File type with Nerd Font icon -local function file_type() - local ft = vim.bo.filetype - local icons = { - lua = "\u{e620} ", -- nf-dev-lua - python = "\u{e73c} ", -- nf-dev-python - javascript = "\u{e74e} ", -- nf-dev-javascript - typescript = "\u{e628} ", -- nf-dev-typescript - javascriptreact = "\u{e7ba} ", - typescriptreact = "\u{e7ba} ", - html = "\u{e736} ", -- nf-dev-html5 - css = "\u{e749} ", -- nf-dev-css3 - scss = "\u{e749} ", - json = "\u{e60b} ", -- nf-dev-json - markdown = "\u{e73e} ", -- nf-dev-markdown - vim = "\u{e62b} ", -- nf-dev-vim - sh = "\u{f489} ", -- nf-oct-terminal - bash = "\u{f489} ", - zsh = "\u{f489} ", - rust = "\u{e7a8} ", -- nf-dev-rust - go = "\u{e724} ", -- nf-dev-go - c = "\u{e61e} ", -- nf-dev-c - cpp = "\u{e61d} ", -- nf-dev-cplusplus - java = "\u{e738} ", -- nf-dev-java - php = "\u{e73d} ", -- nf-dev-php - ruby = "\u{e739} ", -- nf-dev-ruby - swift = "\u{e755} ", -- nf-dev-swift - kotlin = "\u{e634} ", - dart = "\u{e798} ", - elixir = "\u{e62d} ", - haskell = "\u{e777} ", - sql = "\u{e706} ", - yaml = "\u{f481} ", - toml = "\u{e615} ", - xml = "\u{f05c} ", - dockerfile = "\u{f308} ", -- nf-linux-docker - gitcommit = "\u{f418} ", -- nf-oct-git_commit - gitconfig = "\u{f1d3} ", -- nf-fa-git - vue = "\u{fd42} ", -- nf-md-vuejs - svelte = "\u{e697} ", - astro = "\u{e628} ", - } - - if ft == "" then - return " \u{f15b} " -- nf-fa-file_o - end - - return ((icons[ft] or " \u{f15b} ") .. ft) -end - --- File size with Nerd Font icon -local function file_size() - local size = vim.fn.getfsize(vim.fn.expand("%")) - if size < 0 then - return "" - end - local size_str - if size < 1024 then - size_str = size .. "B" - elseif size < 1024 * 1024 then - size_str = string.format("%.1fK", size / 1024) - else - size_str = string.format("%.1fM", size / 1024 / 1024) - end - return " \u{f016} " .. size_str .. " " -- nf-fa-file_o -end - --- Mode indicators with Nerd Font icons -local function mode_icon() - local mode = vim.fn.mode() - local modes = { - n = " \u{f121} NORMAL", - i = " \u{f11c} INSERT", - v = " \u{f0168} VISUAL", - V = " \u{f0168} V-LINE", - ["\22"] = " \u{f0168} V-BLOCK", - c = " \u{f120} COMMAND", - s = " \u{f0c5} SELECT", - S = " \u{f0c5} S-LINE", - ["\19"] = " \u{f0c5} S-BLOCK", - R = " \u{f044} REPLACE", - r = " \u{f044} REPLACE", - ["!"] = " \u{f489} SHELL", - t = " \u{f120} TERMINAL", - } - return modes[mode] or (" \u{f059} " .. mode) -end - -_G.mode_icon = mode_icon -_G.git_branch = git_branch -_G.file_type = file_type -_G.file_size = file_size - -vim.cmd([[ - highlight StatusLineBold gui=bold cterm=bold -]]) - --- Function to change statusline based on window focus -local function setup_dynamic_statusline() - vim.api.nvim_create_autocmd({ "WinEnter", "BufEnter" }, { - callback = function() - vim.opt_local.statusline = table.concat({ - " ", - "%#StatusLineBold#", - "%{v:lua.mode_icon()}", - "%#StatusLine#", - " | %f %h%m%r", -- nf-pl-left_hard_divider - " %{v:lua.git_branch()}", - " | ", -- nf-pl-left_hard_divider - "%{v:lua.file_type()}", - " | ", -- nf-pl-left_hard_divider - "%{v:lua.file_size()}", - "%=", -- Right-align everything after this - "%l:%c %P ", -- nf-fa-clock_o for line/col - }) - end, - }) - vim.api.nvim_set_hl(0, "StatusLineBold", { bold = true }) - - vim.api.nvim_create_autocmd({ "WinLeave", "BufLeave" }, { - callback = function() - vim.opt_local.statusline = " %f %h%m%r | %{v:lua.file_type()} %= %l:%c %P " - end, - }) -end - -setup_dynamic_statusline() -- ============================================================================ -- KEYMAPS @@ -251,10 +102,14 @@ vim.keymap.set("n", "N", "Nzzzv", { desc = "Previous search result (centered)" } vim.keymap.set("n", "", "zz", { desc = "Half page down (centered)" }) vim.keymap.set("n", "", "zz", { desc = "Half page up (centered)" }) -vim.keymap.set("n", "", "h", { desc = "Move to left window" }) -vim.keymap.set("n", "", "j", { desc = "Move to bottom window" }) -vim.keymap.set("n", "", "k", { desc = "Move to top window" }) -vim.keymap.set("n", "", "l", { desc = "Move to right window" }) +vim.keymap.set("n", "dih", function() + require("gitsigns").reset_hunk() +end, { desc = "Delete in hunk" }) + +vim.keymap.set("n", "", "TmuxNavigateLeft") +vim.keymap.set("n", "", "TmuxNavigateDown") +vim.keymap.set("n", "", "TmuxNavigateUp") +vim.keymap.set("n", "", "TmuxNavigateRight") -- vim.keymap.set("n", "sv", ":vsplit", { desc = "Split window vertically" }) -- vim.keymap.set("n", "sh", ":split", { desc = "Split window horizontally" }) @@ -291,7 +146,6 @@ vim.keymap.set("n", "td", function() vim.diagnostic.enable(not vim.diagnostic.is_enabled()) end, { desc = "Toggle diagnostics" }) vim.keymap.set("n", "tw", function() - vim.diagnostic.enable(not vim.diagnostic.is_enabled()) vim.wo.wrap = not vim.wo.wrap end, { desc = "Toggle wrap" }) @@ -387,7 +241,6 @@ vim.api.nvim_create_autocmd("FileType", { callback = function() vim.opt_local.wrap = true vim.opt_local.linebreak = true - vim.opt_local.spell = true end, }) -- ============================================================================ @@ -422,6 +275,11 @@ vim.pack.add({ "https://github.com/stevearc/oil.nvim", "https://github.com/folke/flash.nvim", "https://github.com/goolord/alpha-nvim", + "https://github.com/christoomey/vim-tmux-navigator", + "https://github.com/nvim-lualine/lualine.nvim", + "https://github.com/MeanderingProgrammer/render-markdown.nvim", + "https://github.com/iamcco/markdown-preview.nvim", + "https://github.com/bullets-vim/bullets.vim", }) local function packadd(name) @@ -441,6 +299,9 @@ packadd("LuaSnip") packadd("plenary.nvim") packadd("nui.nvim") packadd("rustaceanvim") +packadd("render-markdown.nvim") +packadd("markdown-preview.nvim") +packadd("bullets.vim") -- ============================================================================ -- TRANSPARENCY @@ -481,6 +342,150 @@ vim.cmd("hi CursorLine guibg=NONE") -- PLUGIN CONFIGS -- ============================================================================ +local setup_lualine = function() + local lualine = require("lualine") + + -- Color table for highlights + -- stylua: ignore + local colors = { + bg = '#434c5e', + fg = '#d8dee9', + yellow = '#ebcb8b', + cyan = '#88c0d0', + darkblue = '#5e81ac', + green = '#a3be8c', + orange = '#d08770', + violet = '#b48ead', + blue = '#81a1c1', + red = '#bf616a', + } + + local conditions = { + buffer_not_empty = function() + return vim.fn.empty(vim.fn.expand("%:t")) ~= 1 + end, + hide_in_width = function() + return vim.fn.winwidth(0) > 80 + end, + check_git_workspace = function() + local filepath = vim.fn.expand("%:p:h") + local gitdir = vim.fn.finddir(".git", filepath .. ";") + return gitdir and #gitdir > 0 and #gitdir < #filepath + end, + } + + local config = { + options = { + component_separators = "", + section_separators = "", + theme = { + normal = { c = { fg = colors.fg, bg = colors.bg } }, + inactive = { c = { fg = colors.fg, bg = colors.bg } }, + }, + }, + sections = { + lualine_a = {}, + lualine_b = {}, + lualine_y = {}, + lualine_z = {}, + lualine_c = {}, + lualine_x = {}, + }, + inactive_sections = { + lualine_a = {}, + lualine_b = {}, + lualine_y = {}, + lualine_z = {}, + lualine_c = {}, + lualine_x = {}, + }, + } + + local function ins_left(component) + table.insert(config.sections.lualine_c, component) + end + + local function ins_right(component) + table.insert(config.sections.lualine_x, component) + end + + ins_left({ + function() + return "  " .. string.upper(vim.fn.mode()) + end, + color = function() + local mode_color = { + n = colors.red, + i = colors.green, + v = colors.blue, + [""] = colors.blue, + V = colors.blue, + c = colors.violet, + no = colors.red, + s = colors.orange, + S = colors.orange, + [""] = colors.orange, + ic = colors.yellow, + R = colors.violet, + Rv = colors.violet, + cv = colors.red, + ce = colors.red, + r = colors.cyan, + rm = colors.cyan, + ["r?"] = colors.cyan, + ["!"] = colors.red, + t = colors.red, + } + return { fg = mode_color[vim.fn.mode()] } + end, + padding = { right = 1 }, + }) + + ins_left({ + "filename", + cond = conditions.buffer_not_empty, + color = { fg = colors.green, gui = "bold" }, + }) + ins_left({ + "filesize", + cond = conditions.buffer_not_empty, + }) + + ins_left({ "progress", color = { fg = colors.fg, gui = "bold" } }) + + ins_left({ + "diagnostics", + sources = { "nvim_diagnostic" }, + symbols = { error = " ", warn = " ", info = " " }, + diagnostics_color = { + error = { fg = colors.red }, + warn = { fg = colors.yellow }, + info = { fg = colors.cyan }, + }, + }) + + ins_right({ + "branch", + icon = "", + color = { fg = colors.violet, gui = "bold" }, + }) + + ins_right({ + "diff", + symbols = { added = " ", modified = " ", removed = " " }, + diff_color = { + added = { fg = colors.green }, + modified = { fg = colors.orange }, + removed = { fg = colors.red }, + }, + cond = conditions.hide_in_width, + }) + + lualine.setup(config) +end + +setup_lualine() + -- ALPHA local setup_alpha = function() local alpha = require("alpha") @@ -576,6 +581,63 @@ vim.api.nvim_create_autocmd("FileType", { -- OUTLINE require("outline").setup({}) +-- MARKDOWN BULLETS +vim.g.bullets_delete_last_bullet_if_empty = 1 + +-- RENDER MARKDOWN +require("render-markdown").setup({ + win_options = { + conceallevel = { default = 0, rendered = 3 }, + }, + bullet = { enabled = true }, + latex = { enabled = false }, + checkbox = { + enabled = true, + position = "inline", + unchecked = { icon = " 󰄱 ", highlight = "RenderMarkdownUnchecked" }, + checked = { icon = " 󰱒 ", highlight = "RenderMarkdownChecked" }, + }, + html = { enabled = true, comment = { conceal = false } }, + heading = { + sign = false, + icons = { " 󰎤 ", " 󰎧 ", " 󰎪 ", " 󰎭 ", " 󰎱 ", " 󰎳 " }, + backgrounds = { "Headline1Bg", "Headline2Bg", "Headline3Bg", "Headline4Bg", "Headline5Bg", "Headline6Bg" }, + foregrounds = { "Headline1Fg", "Headline2Fg", "Headline3Fg", "Headline4Fg", "Headline5Fg", "Headline6Fg" }, + }, + ft = { "markdown" }, +}) + +local c = { + fg = "#2e3440", + red = "#bf616a", + orange = "#d08770", + yellow = "#ebcb8b", + green = "#a3be8c", + blue = "#5e81ac", + violet = "#b48ead", +} +local hl = vim.cmd +hl(("highlight @markup.strong guifg=%s"):format(c.orange)) +hl(("highlight @markup.italic guifg=%s"):format(c.orange)) +hl(("highlight RenderMarkdownCodeInline guifg=%s"):format(c.green)) +for i, col in ipairs({ c.red, c.orange, c.yellow, c.green, c.blue, c.violet }) do + local n = tostring(i) + hl(("highlight Headline%sBg guifg=%s guibg=%s"):format(n, c.fg, col)) + hl(("highlight Headline%sFg cterm=bold gui=bold guifg=%s"):format(n, col)) + hl(("highlight RenderMarkdownH%sBg guifg=%s guibg=%s"):format(n, c.fg, col)) + hl(("highlight RenderMarkdownH%s guifg=%s guibg=%s cterm=bold gui=bold"):format(n, col, c.fg)) +end + +-- toggle render markdown +vim.keymap.set("n", "or", function() + local m = require("render-markdown") + if require("render-markdown.state").enabled then + m.disable() + else + m.enable() + end +end, { desc = "Toggle Render Markdown" }) + -- TREESITTER local setup_treesitter = function() local treesitter = require("nvim-treesitter") @@ -805,9 +867,6 @@ end, { desc = "Previous git hunk" }) vim.keymap.set("n", "hs", function() require("gitsigns").stage_hunk() end, { desc = "Stage hunk" }) -vim.keymap.set("n", "hr", function() - require("gitsigns").reset_hunk() -end, { desc = "Reset hunk" }) vim.keymap.set("n", "hp", function() require("gitsigns").preview_hunk() end, { desc = "Preview hunk" }) @@ -930,19 +989,6 @@ local function lsp_on_attach(ev) vim.keymap.set("n", "fi", function() require("fzf-lua").lsp_implementations() end, opts) - - if client:supports_method("textDocument/codeAction", bufnr) then - vim.keymap.set("n", "oi", function() - vim.lsp.buf.code_action({ - context = { only = { "source.organizeImports" }, diagnostics = {} }, - apply = true, - bufnr = bufnr, - }) - vim.defer_fn(function() - vim.lsp.buf.format({ bufnr = bufnr }) - end, 50) - end, opts) - end end vim.api.nvim_create_autocmd("LspAttach", { group = augroup, callback = lsp_on_attach }) @@ -986,6 +1032,9 @@ vim.lsp.config("lua_ls", { }) vim.lsp.config("pyright", { settings = { + pyright = { + disableTaggedHints = true, + }, python = { pythonPath = vim.fn.getcwd() .. "/.venv/bin/python", @@ -1013,16 +1062,11 @@ vim.g.rustaceanvim = { tools = { enable_clippy = false, }, - server = { capabilities = capabilities, - standalone = true, - status_notify_level = false, - load_vscode_settings = false, - default_settings = { ["rust-analyzer"] = { checkOnSave = false, @@ -1079,6 +1123,8 @@ do local rustfmt = require("efmls-configs.formatters.rustfmt") + local markdownlint = require("efmls-configs.linters.markdownlint") + vim.lsp.config("efm", { filetypes = { "c", @@ -1112,7 +1158,7 @@ do json = { eslint_d, fixjson }, jsonc = { eslint_d, fixjson }, lua = { luacheck, stylua }, - markdown = { prettier_d }, + markdown = { markdownlint, prettier_d }, python = { flake8, black }, sh = { shellcheck, shfmt }, typescript = { eslint_d, prettier_d }, @@ -1133,4 +1179,5 @@ vim.lsp.enable({ "gopls", "clangd", "efm", + "marksman", }) diff --git a/.config/nvim/nvim-macos.tar.gz b/.config/nvim/nvim-macos.tar.gz deleted file mode 100644 index 8537307..0000000 --- a/.config/nvim/nvim-macos.tar.gz +++ /dev/null @@ -1 +0,0 @@ -Not Found \ No newline at end of file diff --git a/.config/nvim/nvim-pack-lock.json b/.config/nvim/nvim-pack-lock.json index 9da8e87..dbac915 100644 --- a/.config/nvim/nvim-pack-lock.json +++ b/.config/nvim/nvim-pack-lock.json @@ -13,6 +13,10 @@ "src": "https://github.com/saghen/blink.cmp", "version": "1.0.0 - 2.0.0" }, + "bullets.vim": { + "rev": "89294b8930e660936374fb763ac48a1ac51dd29c", + "src": "https://github.com/bullets-vim/bullets.vim" + }, "efmls-configs-nvim": { "rev": "2dd907fe0043b95a901a9aee814f17804aa4426d", "src": "https://github.com/creativenull/efmls-configs-nvim" @@ -33,6 +37,14 @@ "rev": "fdd3f91800b3983e27bc9fcfb99cfa7293d7f11a", "src": "https://github.com/kawre/leetcode.nvim" }, + "lualine.nvim": { + "rev": "47f91c416daef12db467145e16bed5bbfe00add8", + "src": "https://github.com/nvim-lualine/lualine.nvim" + }, + "markdown-preview.nvim": { + "rev": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee", + "src": "https://github.com/iamcco/markdown-preview.nvim" + }, "mason.nvim": { "rev": "44d1e90e1f66e077268191e3ee9d2ac97cc18e65", "src": "https://github.com/mason-org/mason.nvim" @@ -73,10 +85,18 @@ "rev": "b9fd5226c2f76c951fc8ed5923d85e4de065e509", "src": "https://github.com/nvim-lua/plenary.nvim" }, + "render-markdown.nvim": { + "rev": "e3c18ddd27a853f85a6f513a864cf4f2982b9f26", + "src": "https://github.com/MeanderingProgrammer/render-markdown.nvim" + }, "rustaceanvim": { "rev": "d50597d482a6f44ddfc54d1af2f69f052053b4de", "src": "https://github.com/mrcjkb/rustaceanvim" }, + "vim-tmux-navigator": { + "rev": "e41c431a0c7b7388ae7ba341f01a0d217eb3a432", + "src": "https://github.com/christoomey/vim-tmux-navigator" + }, "which-key.nvim": { "rev": "3aab2147e74890957785941f0c1ad87d0a44c15a", "src": "https://github.com/folke/which-key.nvim" diff --git a/.config/sioyek/keys_user.config b/.config/sioyek/keys_user.config new file mode 100644 index 0000000..3855c28 --- /dev/null +++ b/.config/sioyek/keys_user.config @@ -0,0 +1,18 @@ +# Vim-style half-page scrolling +screen_down +screen_up +prev_state +toggle_titlebar +next_state +zoom_in J +zoom_out K + + +# Toggle dark mode with 'i' (for "invert") +toggle_dark_mode i +toggle_custom_color c +reload_config r +helper_window + + +fit_to_page_width s diff --git a/.config/sioyek/prefs_user.config b/.config/sioyek/prefs_user.config new file mode 100644 index 0000000..8dd4bb5 --- /dev/null +++ b/.config/sioyek/prefs_user.config @@ -0,0 +1,314 @@ +# For more information see the documentation at https://sioyek-documentation.readthedocs.io/ + +# (can be 0 or 1) if set, shows a notification on startup if a new version of sioyek is available +check_for_updates_on_startup 0 +startup_commands toggle_titlebar + +# Use old keybind parsing method (only for backwards compatibility) +use_legacy_keybinds 0 + +# The color with which the screen is cleared before rendering the pdf (this is the background color of the application and not the PDF file) +background_color 0.97 0.97 0.97 +dark_mode_background_color 0.0 0.0 0.0 + +# Showing full white text on black background can be irritating for the eye, we can dim the whites a little bit using the contrast option +dark_mode_contrast 0.8 + +# Highlight color when text is selected using mouse +text_highlight_color 1.0 1.0 0.0 + +# The color of highlight ruler which is displayed when right click is pressed +visual_mark_color 0.0 0.0 0.0 0.1 + +# Highlight color when text is a search match +search_highlight_color 0.0 1.0 0.0 + +# Hihglight color for PDF links (note that highlight is off by default +# and can only be seen by performing a toggle_highlight command. See keys.config for more details) +link_highlight_color 0.0 0.0 1.0 + +# Hihglight color for synctex forward search highlights +synctex_highlight_color 1.0 0.0 1.0 + +# Urls to use when executing external_search commands +search_url_s https://scholar.google.com/scholar?q= +search_url_l http://gen.lib.rus.ec/scimag/?q= +search_url_g https://www.google.com/search?q= + +# Which search url to choose when middle clicking or shift middle clicking on text (the values are the letters of corresponding search_url_* ) +# for example if i set `middle_click_search_engine s`, then we use the url associated with `search_url_s` to handle middle click searches +middle_click_search_engine s +shift_middle_click_search_engine l + +# The factor by which we increase/decrease zoom when performing zoom_in or zoom_out +zoom_inc_factor 1.2 + +# How many inches we move vertically/horizontally when performing move_* commands +vertical_move_amount 1.0 +horizontal_move_amount 1.0 + +# When performing screen_down/screen_up we usually don't move a full screen because it causes the user to lose context +# Here we specify the fraction of the screen width by which we move when performing these commands +move_screen_ratio 0.5 + +# If 0, Table of Contents is shown in a hierarchial tree, otherwise it is a flat list (can improve performance for extremely large table of contents) +flat_toc 0 + +# If it is 1, when launching the application if we detect multiple monitors, we automatically launch the helper window in second monitor +should_use_multiple_monitors 0 + +# If the last opened document is empty, load the tutorial pdf instead +should_load_tutorial_when_no_other_file 1 + +# (deprecated, use `should_launch_new_window` instead) If it is 0, then we use the previous instance of sioyek when launching a new file. +# otherwise a new instance is launched every time we open a new file. +should_launch_new_instance 0 + +# If set, we open a new sioyek window when a new file is opened, otherwise we open the file in the previous window +should_launch_new_window 0 + +# The command to use when trying to do inverse search into a LaTeX document. Uncomment and provide your own command. +# %1 expands to the name of the file and %2 expans to the line number. +#inverse_search_command "C:\path\to\vscode\Code.exe" -r -g %1:%2 + +# you can specify the exact highlight color for each of 26 different highlight types + +# When moving to the next line using visual marker, this setting specifies the distance of the market to the top of the screen in fractions of screen size (center of the screen is zero, top of the screen is one) +visual_mark_next_page_fraction 0.75 + +# When moving to the next line using visual marker, this setting determines at which point we move the screen (center of the screen is zero, bottom of the screen is one) +visual_mark_next_page_threshold 0.25 + +# If set, we display a checkerboard pattern for unrendered pages (by default we display nothing) +should_draw_unrendered_pages 0 + +# If 0, we use the previous renders for overview window which may cause it to be blurry +# if it is 1, we rerender with the proper resolution for overview window which looks better +# but may increase power consumption +rerender_overview 1 + +## Size of the overview window (1 being as large as the window, valid range is [0, 1]) +# overview_size 0.5 0.5 + +## Offset of the center of the overview window ((0,0) being the center of the screen and valid raneg is [-1, 1]) +# overview_offset 0.5 0.5 + +# Use linear texture filtering instead of nearest-neighbor +# Can improve appearance in very high-resolution screens +# linear_filter 0 + +# Use dark mode by default (deprecated, better add `toggle_dark_mode` to `startup_commands` ) +default_dark_mode 0 + +# If set, we sort the bookmarks by their location instead of their creation time +sort_bookmarks_by_location 1 + +## Path to shared.db database file. If not set, we use the default path. +## you can set this to be a file in a synced folder (e.g. dropbox folder) to automatically sync +## sioyek across multiple computers +#shared_database_path /some/path/shared.db + +## Name of the font to use for UI text +#ui_font Some Font Name +## Size of the UI font +#font_size 20 + +## Semicolon-separated list of command to execute upon sioyek startup +#startup_commands toggle_visual_scroll;toggle_dark_mode + +## Background color to use when executing `toggle_custom_color` +custom_background_color 0.180 0.204 0.251 +## Text color to use when executing `toggle_custom_color` +custom_text_color 0.847 0.871 0.914 + +# Normally mouse wheel zooms in on the middle of the screen, but if this is set to 1, we zoom in on the cursor +wheel_zoom_on_cursor 0 + +## Color of status bar background +#status_bar_color 0 0 0 +## Color of status bar text +#status_bar_text_color 1 1 1 +## Font size of the status bar text +#status_bar_font_size 20 + +## The default size of main window when helper window is closed +#single_main_window_size 800 600 +#single_main_window_move 100 100 + +## The default size/offset of main/helper window when helper window is opened. You can copy the value of this config using `copy_window_size_config` command +#main_window_size 800 600 +#main_window_move 100 100 +#helper_window_size 800 600 +#helper_window_move 100 100 + +## Touchpad/scrollwhell sensitivity +#touchpad_sensitivity 1.0 + +## Configure the appearance of page separator +#page_separator_width 2 +#page_separator_color 0.9 0.9 0.9 + +# Ratio of page width to use for `fit_to_page_width_ratio` command +fit_to_page_width_ratio 0.75 + +# If set, we initially collapse table of content entries +collapsed_toc 0 + +# If set, we highlight the current line in visual_scroll_mode by masking above and below the current line +# if not set, we only mask below the line +ruler_mode 1 + +# Additional ruler padding +ruler_padding 1.0 +ruler_x_padding 5.0 + +## We use mupdf to determine lines for visual mark. However, we do have a custom algorithm for image documents +## if `force_custom_line_algorithm` is 1, then we use our custom algorithm instead of mupdf even for documents +## that have lines. +#force_custom_line_algorithm 0 + +# A directory which sioyek watches for new papers. If a new paper added to this directory +# while we are creating a portal from another document, this new document will automatically +# be used as the destination of the portal. +#paper_folder_path /some/path + +# Enable some experimental features, might not be stable +#enable_experimental_features 0 + +# Automatically create a table of contents for the document if it doesn't already have one +create_table_of_contents_if_not_exists 1 + +# Limits the maximum size of created table of contents +max_created_toc_size 5000 + +# Warn the user on the command line only when redefining keys inside +# the same file. When set to 1, sioyek will warn when redefining keys +# from other files also +should_warn_about_user_key_override 1 + +# Use double clicks to select entire words and single clicks for character-based selection +single_click_selects_words 0 + +# A prefix to prepend to items in lists (e.g. bookmark lists) +#item_list_prefix > + +## In presentation mode, ignore whitespace when trying to determine the size of a page +#ignore_whitespace_in_presentation_mode 0 + +## In list of recent documents, show the entire document path rather than just the name +#show_doc_path 0 + +# Show long menu items in multiple lines instead of truncating the string, can reduce performance for +#very large lists +multiline_menus 1 + +# While in present mode, prerender the next page to avoid flickering +prerender_next_page_presentation 1 + +## Custom commands to run when clicking or right clicking when modifier keys are pressed +## the command can be any built-in sioyek command (e.g. overview_under_cursor) or user-defined +## commands defined using `new_command` +# shift_click_command some_command +# control_click_command some_command +# alt_click_command some_command +# shift_right_click_command some_command +# control_right_click_command some_command +# alt_right_click_command some_command + +# Highlight on middle clicks when text is selected and no preview is open +#highlight_middle_click 1 + +# Use a super fast index for search instead of the mupdf's implementation +#super_fast_search 1 + +# Use case-insensitive search +#case_sensitive_search 0 + +#Amethyst +highlight_color_a 0.94 0.64 1.00 +#Blue +highlight_color_b 0.00 0.46 0.86 +#Caramel +highlight_color_c 0.60 0.25 0.00 +#Damson +highlight_color_d 0.30 0.00 0.36 +#Ebony +highlight_color_e 0.10 0.10 0.10 +#Forest +highlight_color_f 0.00 0.36 0.19 +#Green +highlight_color_g 0.17 0.81 0.28 +#Honeydew +highlight_color_h 1.00 0.80 0.60 +#Iron +highlight_color_i 0.50 0.50 0.50 +#Jade +highlight_color_j 0.58 1.00 0.71 +#Khaki +highlight_color_k 0.56 0.49 0.00 +#Lime +highlight_color_l 0.62 0.80 0.00 +#Mallow +highlight_color_m 0.76 0.00 0.53 +#Navy +highlight_color_n 0.00 0.20 0.50 +#Orpiment +highlight_color_o 1.00 0.64 0.02 +#Pink +highlight_color_p 1.00 0.66 0.73 +#Quagmire +highlight_color_q 0.26 0.40 0.00 +#Red +highlight_color_r 1.00 0.00 0.06 +#Sky +highlight_color_s 0.37 0.95 0.95 +#Turquoise +highlight_color_t 0.00 0.60 0.56 +#Uranium +highlight_color_u 0.88 1.00 0.40 +#Violet +highlight_color_v 0.45 0.04 1.00 +#Wine +highlight_color_w 0.60 0.00 0.00 +#Xanthin +highlight_color_x 1.00 1.00 0.50 +#Yellow +highlight_color_y 1.00 1.00 0.00 +#Zinnia +highlight_color_z 1.00 0.31 0.02 + +# +# +# background_color 0.078431 0.078431 0.082353 +# dark_mode_background_color 0.0784 0.0784 0.0824 +# +# ui_background_color 0.0784 0.0784 0.0824 +# ui_text_color 0.8039 0.8039 0.8039 +# ui_selected_background_color 0.1451 0.1451 0.1882 +# ui_selected_text_color 0.8039 0.8039 0.8039 +# +# status_bar_color 0.0784 0.0784 0.0824 +# status_bar_text_color 0.8039 0.8039 0.8039 +# +# page_separator_color 0.1451 0.1451 0.1882 +# +# custom_background_color 0.0784 0.0784 0.0824 +# custom_text_color 0.8039 0.8039 0.8039 +# +# text_highlight_color 0.7333 0.6157 0.7412 +# +# search_highlight_color 0.9529 0.7451 0.4863 +# +# link_highlight_color 0.4314 0.5804 0.6980 +# +# synctex_highlight_color 0.4980 0.6471 0.3882 +# +# visual_mark_color 0.4314 0.5804 0.6980 0.12 +# +# +# +# highlight_color_a 0.8471 0.3922 0.4941 +# highlight_color_b 0.4980 0.6471 0.3882 +# highlight_color_c 0.9529 0.7451 0.4863 +# highlight_color_d 0.4314 0.5804 0.6980 + -- cgit v1.2.3