diff --git a/flake.lock b/flake.lock index a2f5281..f49a767 100644 --- a/flake.lock +++ b/flake.lock @@ -1278,11 +1278,11 @@ "purifix": "purifix" }, "locked": { - "lastModified": 1713852340, - "narHash": "sha256-4H5l6Hsg6SzhZwB8ikphlJmLtyi3xeUcPPsVh3gVd/k=", + "lastModified": 1713856075, + "narHash": "sha256-3nmcWGRczFJAiObkG+XUK9OdY8EVjySOUbDSK6yVyVE=", "owner": "mateiadrielrafael", "repo": "miros", - "rev": "80a1cd4726b6d1b7b9d9ee4cfe850d87d524090b", + "rev": "37081c34cb04b0751527c4ed740220c57cea3151", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index d8fc2fd..d5147e5 100644 --- a/flake.nix +++ b/flake.nix @@ -224,15 +224,15 @@ extra-substituters = [ "https://nix-community.cachix.org" # "https://anyrun.cachix.org" - # "https://smos.cachix.org" - # "https://intray.cachix.org" + "https://smos.cachix.org" + "https://intray.cachix.org" ]; extra-trusted-public-keys = [ "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" # "anyrun.cachix.org-1:pqBobmOjI7nKlsUMV25u9QHa9btJK65/C8vnO3p346s=" - # "smos.cachix.org-1:YOs/tLEliRoyhx7PnNw36cw2Zvbw5R0ASZaUlpUv+yM=" - # "intray.cachix.org-1:qD7I/NQLia2iy6cbzZvFuvn09iuL4AkTmHvjxrQlccQ=" + "smos.cachix.org-1:YOs/tLEliRoyhx7PnNw36cw2Zvbw5R0ASZaUlpUv+yM=" + "intray.cachix.org-1:qD7I/NQLia2iy6cbzZvFuvn09iuL4AkTmHvjxrQlccQ=" ]; }; # }}} diff --git a/home/features/desktop/firefox/default.nix b/home/features/desktop/firefox/default.nix index ec9a5e5..83f8e68 100644 --- a/home/features/desktop/firefox/default.nix +++ b/home/features/desktop/firefox/default.nix @@ -149,10 +149,16 @@ in aliases = [ "@gh" "@github" ]; }; + "Invidious" = mkBasicSearchEngine { + url = "https://yt.moonythm.dev/results"; + param = "search_query"; + aliases = [ "@yt" "@invidious" ]; + }; + "Youtube" = mkBasicSearchEngine { url = "https://www.youtube.com/results"; param = "search_query"; - aliases = [ "@yt" "@youtube" ]; + aliases = [ "@gyt" "@youtube" ]; }; "Arcaea wiki" = mkBasicSearchEngine { diff --git a/home/features/desktop/wezterm/wezterm.lua b/home/features/desktop/wezterm/wezterm.lua index 8080cf7..83fe59c 100644 --- a/home/features/desktop/wezterm/wezterm.lua +++ b/home/features/desktop/wezterm/wezterm.lua @@ -18,12 +18,11 @@ local font_size = 20.0 config.colors = wezterm.color.load_base16_scheme(colorscheme.source) -- {{{ Window frame -local tab_bar_bg = colorscheme.transparency.terminal.base04 config.window_frame = { font = wezterm.font({ family = colorscheme.fonts.sansSerif }), font_size = font_size - 3, - active_titlebar_bg = tab_bar_bg, - inactive_titlebar_bg = tab_bar_bg, + active_titlebar_bg = "none", + inactive_titlebar_bg = "none", } config.window_padding = { @@ -35,17 +34,17 @@ config.window_padding = { -- }}} -- {{{ Tab bar colors config.colors.tab_bar = { - background = tab_bar_bg, + background = "none", active_tab = { bg_color = colorscheme.transparency.terminal.base00, fg_color = colorscheme.base05, }, inactive_tab = { - bg_color = colorscheme.base02, + bg_color = "none", fg_color = colorscheme.base05, }, inactive_tab_hover = { - bg_color = colorscheme.base01, + bg_color = colorscheme.base00, fg_color = colorscheme.base05, }, new_tab = { diff --git a/home/features/neovim/config/ftplugin/tex.lua b/home/features/neovim/config/ftplugin/tex.lua index 8f1eb93..4cee6a3 100644 --- a/home/features/neovim/config/ftplugin/tex.lua +++ b/home/features/neovim/config/ftplugin/tex.lua @@ -56,23 +56,6 @@ local abolishAbbreviations = { options = A.no_capitalization, }, -- }}} - -- {{{ General function calls: - -- {function-name}{modifier?}{argument}{argument-modifier?} - -- - -- - function-name = f/g/h/P - -- - modifier: - -- - d => derivative - -- - 2 => squared - -- - 3 => cubed - -- - i => inverse - -- - argument = x/y/z/a/t/i/n/k - -- - argument-modifier: - -- - n => subscript n - { - "{f,g,h,P}{d,2,3,i,}{x,y,z,a,t,i,n,k}{n,}", - "{}{',^2,^3,^\\{-1\\},}({}{_n,})", - }, - -- }}} -- {{{ Graph theory -- Graph theory function syntax: -- gt[function]{graph}{modifier} diff --git a/home/features/neovim/config/lua/my/abbreviations/fp.lua b/home/features/neovim/config/lua/my/abbreviations/fp.lua index e4790b6..fdcc62a 100644 --- a/home/features/neovim/config/lua/my/abbreviations/fp.lua +++ b/home/features/neovim/config/lua/my/abbreviations/fp.lua @@ -2,31 +2,14 @@ local A = require("my.abbreviations") local scrap = require("scrap") local M = {} -M.symols = { +M.symbols = { { "mto", ">>=" }, -- [M]onadic [t]o { "oalt", "<|>" }, -- [O]peration [A]lternative { "omono", "<>" }, -- [O]peration [M]onoid } -M.types = { - { "tarr", "Array" }, - { "tlis", "List" }, - { "tmay", "Maybe" }, - { "teff", "Effect" }, - { "tio", "IO" }, - { "taff", "Aff" }, - { "tnea", "NonEmptyArray" }, -} - -M.functions = { - { "tfold", "toUnfoldable" }, -- [T]o [f]oldable - { "ffold", "fromFoldable" }, -- [F]rom un[f]oldable -} - function M.setup() - A.manyLocalAbbr(scrap.expand_many(M.types, A.no_capitalization)) - A.manyLocalAbbr(scrap.expand_many(M.symols, A.no_capitalization)) - A.manyLocalAbbr(scrap.expand_many(M.functions, A.no_capitalization)) + A.manyLocalAbbr(scrap.expand_many(M.symbols, A.no_capitalization)) end return M diff --git a/home/features/neovim/config/lua/my/abbreviations/math.lua b/home/features/neovim/config/lua/my/abbreviations/math.lua index 5a3aa44..74b6b56 100644 --- a/home/features/neovim/config/lua/my/abbreviations/math.lua +++ b/home/features/neovim/config/lua/my/abbreviations/math.lua @@ -52,26 +52,8 @@ M.words = { -- }}} } -M.notation = { - -- {{{ Exponents and subscripts: - -- {operation}{argument} - -- - operation = e (exponent) | s (subscript) - -- - argument = t{special} | {basic} - -- - basic = 0-9|n|i|t|k - -- - special = - -- - "p" => + - -- - "m" => - - -- - "i" => -1 - { - "{e,s}{{0,1,2,3,4,5,6,7,8,9,n,i,t,k,m},t{i,m,p}}", - "{^,_}{{},{\\{-1\\},-,+}}", - }, - -- }}} -} - function M.setup() A.manyGlobalAbbr(scrap.expand_many(M.words)) - A.manyGlobalAbbr(scrap.expand_many(M.notation, { capitalized = false })) end return M diff --git a/home/features/neovim/config/lua/my/abbreviations/unicode.lua b/home/features/neovim/config/lua/my/abbreviations/unicode.lua index 2a955e9..8605ed6 100644 --- a/home/features/neovim/config/lua/my/abbreviations/unicode.lua +++ b/home/features/neovim/config/lua/my/abbreviations/unicode.lua @@ -2,7 +2,6 @@ local A = require("my.abbreviations") local scrap = require("scrap") local M = {} --- {{{ Unicode M.unicode = { -- {{{ Logic { "frl", "∀" }, -- [f]o[r]al[l] @@ -13,9 +12,6 @@ M.unicode = { { "Lor", "⋁" }, -- [l]ogical [or] { "bot", "⊥" }, -- false { "top", "⊤" }, -- true - { "iip", "⟹" }, -- [i]t [i]m[p]lies - { "iib", "⟸" }, -- [i]t's [i]mplied [b]y - { "iff", "⟺" }, -- [if] and only i[f] { "lneg", "¬" }, -- [l]ogical [neg]ation -- }}} -- {{{ Set theory @@ -75,22 +71,17 @@ M.unicode = { { "cbrt", "∛" }, -- cube root -- }}} -- {{{ Integrals - { "int", "∫" }, -- integral - { "iint", "∬" }, -- integral - { "iiint", "∭" }, -- integral - { "pint", "∮" }, -- integral - { "piint", "∯" }, -- integral - { "piiint", "∰" }, -- integral + { "int", "∫" }, + { "iint", "∬" }, + { "iiint", "∭" }, + { "pint", "∮" }, + { "piint", "∯" }, + { "piiint", "∰" }, -- }}} -- {{{ Common relations { "sim", "∼" }, -- similarity { "simeq", "≃" }, { "cong", "≅" }, -- congruence - { "defas", "≔" }, -- defined as - { "eq", "=" }, -- [eq]ual - { "neq", "≠" }, -- [n]ot [eq]ual - { "leq", "≤" }, -- [l]ess than or [e][q]ual - { "geq", "≥" }, -- [g]reater than or [e][q]ual { "iin", "∈" }, -- [I]ncluded [i][n] { "nin", "∉" }, -- [n]ot included [i][n] @@ -145,12 +136,7 @@ M.unicode = { { "rquare", "▢" }, -- rounded square { "diam", "◇" }, -- }}} - -- {{{ Brackets - { "langle", "⟨" }, - { "rangle", "⟩" }, - -- }}} } --- }}} function M.setup() A.manyLocalAbbr(scrap.expand_many(M.unicode, { capitalized = false })) diff --git a/home/features/neovim/config/neoconf.json b/home/features/neovim/config/neoconf.json deleted file mode 100644 index 0967ef4..0000000 --- a/home/features/neovim/config/neoconf.json +++ /dev/null @@ -1 +0,0 @@ -{} diff --git a/home/features/neovim/default.nix b/home/features/neovim/default.nix index 7c62ca1..294e33d 100644 --- a/home/features/neovim/default.nix +++ b/home/features/neovim/default.nix @@ -424,6 +424,7 @@ let package = "nvim-telescope/telescope.nvim"; version = "0.1.x"; cond = blacklist "vscode"; + event = "VeryLazy"; # {{{ Dependencies dependencies = { @@ -485,7 +486,6 @@ let # }}} # {{{ Options opts.defaults.mappings.i."" = "which_key"; - opts.pickers.find_files.hidden = true; opts.extensions.fzf = { fuzzy = true; override_generic_sorter = true; @@ -609,18 +609,6 @@ let opts.indent.enable = true; }; # }}} - # {{{ treesitter context - # REASON: broken - # show context at top of file - # treesitter-top-context = { - # package = "nvim-treesitter/nvim-treesitter-context"; - # dependencies.lua = [ "treesitter" ]; - # - # cond = blacklist "vscode"; - # event = "VeryLazy"; - # opts.enable = true; - # }; - # }}} # {{{ mini.starter mini-starter = { package = "echasnovski/mini.starter"; @@ -628,11 +616,21 @@ let cond = blacklist [ "vscode" "firenvim" ]; lazy = false; + config.autocmds = { + event = "User"; + pattern = "MiniStarterOpened"; + group = "RemoveMiniStarterKeybinds"; + action.callback = thunk /* lua */ '' + vim.keymap.del('n', '', { buffer = true }) + vim.keymap.del('n', '', { buffer = true }) + ''; + }; + opts = _: { header = builtins.readFile ./header.txt; footer = importFrom ./plugins/ministarter.lua "lazy_stats_item"; + items = [ ]; content_hooks = [ - (lua ''require("mini.starter").gen_hook.adding_bullet()'') (lua ''require("mini.starter").gen_hook.aligning('center', 'center')'') ]; silent = true; @@ -736,7 +734,7 @@ let opts.keymaps.replace_all = ""; }; # }}} - # {{{ mini.ai + # {{{ mini.ai mini-ai = { package = "echasnovski/mini.ai"; name = "mini.ai"; @@ -750,7 +748,7 @@ let b = balanced "()"; B = balanced "{}"; r = balanced "[]"; - v = balanced "⟨⟩"; + v = [ "⟨.-⟩" "^⟨().*()⟩$" ]; q = balanced "\"\""; Q = balanced "``"; a = balanced "''"; @@ -759,7 +757,7 @@ let }; }; # }}} - # {{{ mini.comment + # {{{ mini.comment mini-comment = { package = "echasnovski/mini.comment"; name = "mini.comment"; @@ -1185,7 +1183,7 @@ let }; # }}} # }}} - # {{{ language support + # {{{ language support # {{{ haskell support haskell-tools = { package = "mrcjkb/haskell-tools.nvim"; @@ -1423,7 +1421,7 @@ let event = "VeryLazy"; }; # }}} - # {{{ discord rich presence + # {{{ discord rich presence discord-rich-presence = { package = "andweeb/presence.nvim"; main = "presence"; @@ -1433,19 +1431,19 @@ let config = true; }; # }}} - # {{{ gitlinker + # {{{ gitlinker # generate permalinks for code - gitlinker = - let mapping = "yg"; - in - { - package = "ruifm/gitlinker.nvim"; - dependencies.lua = [ "plenary" ]; + gitlinker = rec { + package = "ruifm/gitlinker.nvim"; + dependencies.lua = [ "plenary" ]; - cond = blacklist [ "vscode" "firenvim" ]; - opts.mappings = mapping; - keys = mapping; + cond = blacklist [ "vscode" "firenvim" ]; + opts.mappings = "yg"; + keys = { + mapping = opts.mappings; + desc = "[y]ank [g]it permalink"; }; + }; # }}} # {{{ obsidian obsidian = @@ -1589,18 +1587,16 @@ in imports = [ ../desktop/wakatime ]; # {{{ Basic config - # We still want other modules to know that we are using neovim! + # We want other modules to know that we are using neovim! satellite.toggles.neovim.enable = true; + # Link files in the appropriate places xdg.configFile.nvim.source = config.satellite.dev.path "home/features/neovim/config"; home.sessionVariables.EDITOR = "nvim"; home.file.".nvim_nix_runtime".source = generatedConfig; - home.packages = [ - neovim - neovide - pkgs.vimclip - ]; + # Install packages + home.packages = [ neovim neovide pkgs.vimclip ]; # }}} # {{{ Persistence satellite.persistence.at.state.apps.neovim.directories = [ diff --git a/home/features/neovim/header.txt b/home/features/neovim/header.txt index 6a733c8..be99516 100644 --- a/home/features/neovim/header.txt +++ b/home/features/neovim/header.txt @@ -1,6 +1,10 @@ -███╗ ██╗███████╗ ██████╗ ██╗ ██╗██╗███╗ ███╗ ██████╗ -████╗ ██║██╔════╝██╔═══██╗██║ ██║██║████╗ ████║ ██╗╚════██╗ -██╔██╗ ██║█████╗ ██║ ██║██║ ██║██║██╔████╔██║ ╚═╝ █████╔╝ -██║╚██╗██║██╔══╝ ██║ ██║╚██╗ ██╔╝██║██║╚██╔╝██║ ██╗ ╚═══██╗ -██║ ╚████║███████╗╚██████╔╝ ╚████╔╝ ██║██║ ╚═╝ ██║ ╚═╝██████╔╝ -╚═╝ ╚═══╝╚══════╝ ╚═════╝ ╚═══╝ ╚═╝╚═╝ ╚═╝ ╚═════╝ + ███▄ █ ▓█████ ▒█████ ██▒ █▓ ██▓ ███▄ ▄███▓ ██████ + ██ ▀█ █ ▓█ ▀ ▒██▒ ██▒▓██░ █▒▓██▒▓██▒▀█▀ ██▓ ▒██ ░▒▓▓██ +▓██ ▀█ ██▒▒███ ▒██░ ██▒ ▓██ █▒░▒██▒▓██ ▓██░ ░▒ ░█████ +▓██▒ ▐▌██▒▒▓█ ▄ ▒██ ██░ ▒██ █░░░██░▒██ ▒██ ██ ░▒▓██ +▒██░ ▓██░░▒████▒░ ████▓▒░ ▒▀█░ ░██░▒██▒ ░██▒ ░▒▒ ██████▒ +░ ▒░ ▒ ▒ ░░ ▒░ ░░ ▒░▒░▒░ ░ ▐░ ░▓ ░ ▒░ ░ ░ ░ ░▒ ░▓░ +░ ░░ ░ ▒░ ░ ░ ░ ░ ▒ ▒░ ░ ░░ ▒ ░░ ░ ░ ░ ░░ ░ ░ + ░ ░ ░ ░ ░ ░ ░ ▒ ░░ ▒ ░░ ░ ░ ░ ░ + ░ ░ ░ ░ ░ ░ ░ ░ ░ + ░ diff --git a/home/features/neovim/snippets/all.miros b/home/features/neovim/snippets/all.miros index 3733563..f96ab4b 100644 --- a/home/features/neovim/snippets/all.miros +++ b/home/features/neovim/snippets/all.miros @@ -6,4 +6,6 @@ block auto abbr leq <= abbr geq >= abbr land /\ - abbr lor /\ + abbr lor \/ + abbr langle ⟨ + abbr rangle \⟩ diff --git a/home/features/neovim/snippets/tex.miros b/home/features/neovim/snippets/tex.miros index bbd7849..6bfe8ce 100644 --- a/home/features/neovim/snippets/tex.miros +++ b/home/features/neovim/snippets/tex.miros @@ -92,8 +92,8 @@ block math $7 & $8 & $9 \end{@matenv} - for operator <- @⟨eq,neq,defas,leq,geq,lt,gt,iip,iib⟩ - for symbol <- @⟨@operator:=,\neq,\coloneq,\leq,\geq,<,>,\implies,\impliedby⟩ + for operator <- @⟨eq,neq,defas,leq,geq,lt,gt,iip,iib,iff⟩ + for symbol <- @⟨@operator:=,\neq,\coloneq,\leq,\geq,<,>,\implies,\impliedby,\iff⟩ block auto abbr @operator @symbol @@ -102,16 +102,16 @@ block math name align at @operator snip &@symbol $0 - block auto start - string al@operator - name aligned @operator - snip - \\\\ $1 &@symbol $2 - $0 + block start + string al@operator + name aligned @operator + snip + \\\\ $1 &@symbol $2 + $0 - string cr@operator - name start with @operator - snip \\\\&@symbol $0 + string cr@operator + name start with @operator + snip \\\\&@symbol $0 block start string eqsystem @@ -224,13 +224,22 @@ block math snip ^{$1} $0 pattern (%a)(.)pp - name auto parenthesis + name auto function call snip @0(@1) $0 pattern (%a)d(.)p - name auto parenthesis + name auto derivative call snip @0'(@1) $0 + pattern (%a)i(.)p + name auto preimage call + snip @0^{-1}(@1) $0 + + block !word + abbr .inv ^{-1} + abbr .neg _- + abbr .pos _+ + for limtarget <- @⟨anything,zero,infinity,negative infinity⟩ for prefix <- @⟨@limtarget:,z,i,n⟩ for limtargetsymbol <- @⟨@limtarget:$2,0,\infty,-\infty⟩ diff --git a/home/features/neovim/snippets/typst.miros b/home/features/neovim/snippets/typst.miros new file mode 100644 index 0000000..b3a522f --- /dev/null +++ b/home/features/neovim/snippets/typst.miros @@ -0,0 +1,75 @@ +block auto start + for thmenv <- @⟨lemma,theorem,corollary,definition⟩ + string @thmenv + snip + #@thmenv$|1⟨(name: "$1"),$1⟩[ + $0 + ] + + for proofenv <- @⟨proof,solution⟩ + string @proofenv + snip + #@proofenv$|1⟨$1,(name: "$1")⟩[ + $0 + ] + + string dm + name display math + snip + $ + $0 + $ + +block auto + string ccf + name continuously differentiable function + snip $C^1$ + + string ftdef + name function type definition + snip $$1 : $2 → $3$ $0 + +block auto + string tdif + name total derivative + snip (dif $1) / (dif $2) $0 + + string pdif + name partial derivative + snip (diff $1) / (diff $2) $0 + + string dint + name definite integral + snip ∫_$|1⟨$1,(-∞$1)⟩^$|2⟨$2,∞$2⟩ $3 dif $0 + + block !word + abbr .inv ^(-1) + abbr .neg _- + abbr .pos _+ + + for limtarget <- @⟨anything,zero,infinity,negative infinity⟩ + for prefix <- @⟨@limtarget:,z,i,n⟩ + for limtargetsymbol <- @⟨@limtarget:$2,0,∞,-∞⟩ + string @prefix⋄lim + name limit to @limtarget + snip lim_($1 → @limtargetsymbol) $0 + + for operator <- @⟨eq,neq,defas,leq,geq,lt,gt,iip,iib,iff⟩ + for symbol <- @⟨@operator:=,≠,≔,≤,≥,<,>,⟹,⟸,⟺⟩ + + abbr @operator @symbol + + string a@operator + name align at @operator + snip &@symbol $0 + + block start + string al@operator + name aligned @operator + snip + \ $1 &@symbol $2 + $0 + + string cr@operator + name start with @operator + snip \ &@symbol $0 diff --git a/hosts/nixos/lapetus/services/invidious.nix b/hosts/nixos/lapetus/services/invidious.nix index ed2806b..f762508 100644 --- a/hosts/nixos/lapetus/services/invidious.nix +++ b/hosts/nixos/lapetus/services/invidious.nix @@ -38,8 +38,8 @@ owner = "iv-org"; repo = "invidious"; fetchSubmodules = true; - rev = "08390acd0c17875fddb84cabba54197a5b5740e4"; - sha256 = "sha256-75C/ImX/PYikVdSO4rZM/aYyEgx6pU90BHNeRFfcsDM="; + rev = "eda7444ca46dbc3941205316baba8030fe0b2989"; + sha256 = "0iafxgb93jxx9ams6ll2yx8il4d7h89a630hcx9y8jj4gn3ax7v1"; }; }); };