this repo has no description

Replace Lexical with Expert

hauleth.dev 1fed8203 055c73a7

verified
+82 -84
+1 -4
dev_shells.nix
··· 5 5 lib, 6 6 stdenv, 7 7 darwin, 8 - lexical, 9 8 livebook, 10 9 }: { 11 10 livebook = pkgs.mkShell { ··· 21 20 packages = [ 22 21 erlang 23 22 rebar3 24 - erlang-ls 25 23 ]; 26 24 }; 27 25 28 - elixir = with beam.packages.erlang_27; 26 + elixir = with beam.packages.erlang; 29 27 mkShell { 30 28 packages = 31 29 [ 32 30 elixir 33 - lexical 34 31 ]; 35 32 }; 36 33
+68 -67
flake.lock
··· 21 21 "type": "github" 22 22 } 23 23 }, 24 + "beam-flakes": { 25 + "inputs": { 26 + "flake-parts": [ 27 + "expert", 28 + "flake-parts" 29 + ], 30 + "nixpkgs": [ 31 + "expert", 32 + "nixpkgs" 33 + ] 34 + }, 35 + "locked": { 36 + "lastModified": 1771594669, 37 + "narHash": "sha256-bjqfo3IobpY0se/LOL6U7J0AodvMTZjZad1x3XLc7HY=", 38 + "owner": "elixir-tools", 39 + "repo": "nix-beam-flakes", 40 + "rev": "da950d6652b5b4bc43ee7c440a39097b4d96e448", 41 + "type": "github" 42 + }, 43 + "original": { 44 + "owner": "elixir-tools", 45 + "repo": "nix-beam-flakes", 46 + "type": "github" 47 + } 48 + }, 24 49 "darwin": { 25 50 "inputs": { 26 51 "nixpkgs": [ ··· 57 82 "type": "github" 58 83 } 59 84 }, 85 + "expert": { 86 + "inputs": { 87 + "beam-flakes": "beam-flakes", 88 + "flake-parts": "flake-parts", 89 + "nixpkgs": [ 90 + "nixpkgs" 91 + ] 92 + }, 93 + "locked": { 94 + "lastModified": 1772206698, 95 + "narHash": "sha256-wyEBuDbmkifIphiSddyZu/IAVrud1Iu1AyNXVkCTWB0=", 96 + "owner": "elixir-lang", 97 + "repo": "expert", 98 + "rev": "44a43e2d146ddb1a5cd9cce35b5cd7cd8947a94f", 99 + "type": "github" 100 + }, 101 + "original": { 102 + "owner": "elixir-lang", 103 + "repo": "expert", 104 + "type": "github" 105 + } 106 + }, 60 107 "flake-parts": { 61 108 "inputs": { 62 109 "nixpkgs-lib": "nixpkgs-lib" ··· 80 127 "nixpkgs-lib": "nixpkgs-lib_2" 81 128 }, 82 129 "locked": { 83 - "lastModified": 1719994518, 84 - "narHash": "sha256-pQMhCCHyQGRzdfAkdJ4cIWiw+JNuWsTX7f0ZYSyz0VY=", 130 + "lastModified": 1769996383, 131 + "narHash": "sha256-AnYjnFWgS49RlqX7LrC4uA+sCCDBj0Ry/WOJ5XWAsa0=", 85 132 "owner": "hercules-ci", 86 133 "repo": "flake-parts", 87 - "rev": "9227223f6d922fee3c7b190b2cc238a99527bbb7", 134 + "rev": "57928607ea566b5db3ad13af0e57e921e6b12381", 88 135 "type": "github" 89 136 }, 90 137 "original": { ··· 110 157 }, 111 158 "flake-utils_2": { 112 159 "inputs": { 113 - "systems": "systems_2" 160 + "systems": "systems" 114 161 }, 115 162 "locked": { 116 163 "lastModified": 1731533236, ··· 161 208 "type": "github" 162 209 } 163 210 }, 164 - "lexical": { 165 - "inputs": { 166 - "flake-parts": "flake-parts_2", 167 - "nixpkgs": "nixpkgs", 168 - "systems": "systems" 169 - }, 170 - "locked": { 171 - "lastModified": 1739906465, 172 - "narHash": "sha256-p8XSJBX1igwC+ssEJGD8wb/ZYaEgLGozlY8N6spo3cA=", 173 - "owner": "lexical-lsp", 174 - "repo": "lexical", 175 - "rev": "477e8b418b27960710109d0014167bb371b0cade", 176 - "type": "github" 177 - }, 178 - "original": { 179 - "owner": "lexical-lsp", 180 - "repo": "lexical", 181 - "type": "github" 182 - } 183 - }, 184 211 "lix": { 185 212 "flake": false, 186 213 "locked": { ··· 220 247 }, 221 248 "nixpkgs": { 222 249 "locked": { 223 - "lastModified": 1719931832, 224 - "narHash": "sha256-0LD+KePCKKEb4CcPsTBOwf019wDtZJanjoKm1S8q3Do=", 250 + "lastModified": 1771147098, 251 + "narHash": "sha256-jpfPdBjKO232s5NueoNEvvVzpndiUzPLNYcH4/Ov0gY=", 225 252 "owner": "NixOS", 226 253 "repo": "nixpkgs", 227 - "rev": "0aeab749216e4c073cece5d34bc01b79e717c3e0", 254 + "rev": "e3cb16bccd9facebae3ba29c6a76a4cc1b73462a", 228 255 "type": "github" 229 256 }, 230 257 "original": { 231 - "id": "nixpkgs", 232 - "type": "indirect" 258 + "owner": "NixOS", 259 + "ref": "nixpkgs-unstable", 260 + "repo": "nixpkgs", 261 + "type": "github" 233 262 } 234 263 }, 235 264 "nixpkgs-lib": { ··· 249 278 }, 250 279 "nixpkgs-lib_2": { 251 280 "locked": { 252 - "lastModified": 1719876945, 253 - "narHash": "sha256-Fm2rDDs86sHy0/1jxTOKB1118Q0O3Uc7EC0iXvXKpbI=", 254 - "type": "tarball", 255 - "url": "https://github.com/NixOS/nixpkgs/archive/5daf0514482af3f97abaefc78a6606365c9108e2.tar.gz" 256 - }, 257 - "original": { 258 - "type": "tarball", 259 - "url": "https://github.com/NixOS/nixpkgs/archive/5daf0514482af3f97abaefc78a6606365c9108e2.tar.gz" 260 - } 261 - }, 262 - "nixpkgs_2": { 263 - "locked": { 264 - "lastModified": 1771147098, 265 - "narHash": "sha256-jpfPdBjKO232s5NueoNEvvVzpndiUzPLNYcH4/Ov0gY=", 266 - "owner": "NixOS", 267 - "repo": "nixpkgs", 268 - "rev": "e3cb16bccd9facebae3ba29c6a76a4cc1b73462a", 281 + "lastModified": 1769909678, 282 + "narHash": "sha256-cBEymOf4/o3FD5AZnzC3J9hLbiZ+QDT/KDuyHXVJOpM=", 283 + "owner": "nix-community", 284 + "repo": "nixpkgs.lib", 285 + "rev": "72716169fe93074c333e8d0173151350670b824c", 269 286 "type": "github" 270 287 }, 271 288 "original": { 272 - "owner": "NixOS", 273 - "ref": "nixpkgs-unstable", 274 - "repo": "nixpkgs", 289 + "owner": "nix-community", 290 + "repo": "nixpkgs.lib", 275 291 "type": "github" 276 292 } 277 293 }, ··· 280 296 "agnoster": "agnoster", 281 297 "darwin": "darwin", 282 298 "darwin-stable": "darwin-stable", 283 - "flake-parts": "flake-parts", 299 + "expert": "expert", 300 + "flake-parts": "flake-parts_2", 284 301 "home-manager": "home-manager", 285 - "lexical": "lexical", 286 302 "lix": "lix", 287 303 "lix-module": "lix-module", 288 - "nixpkgs": "nixpkgs_2" 304 + "nixpkgs": "nixpkgs" 289 305 } 290 306 }, 291 307 "systems": { 292 - "locked": { 293 - "lastModified": 1681028828, 294 - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", 295 - "owner": "nix-systems", 296 - "repo": "default", 297 - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", 298 - "type": "github" 299 - }, 300 - "original": { 301 - "owner": "nix-systems", 302 - "repo": "default", 303 - "type": "github" 304 - } 305 - }, 306 - "systems_2": { 307 308 "locked": { 308 309 "lastModified": 1681028828, 309 310 "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
+3 -2
flake.nix
··· 34 34 # inputs.nixpkgs.follows = "nixpkgs"; 35 35 # }; 36 36 37 - lexical = { 38 - url = "github:lexical-lsp/lexical"; 37 + expert = { 38 + url = "github:elixir-lang/expert"; 39 + inputs.nixpkgs.follows = "nixpkgs"; 39 40 }; 40 41 41 42 # nixvim = {
+1
modules/fish.nix
··· 23 23 home.sessionVariables = { 24 24 PAGER = "${pkgs.less}/bin/less"; 25 25 MANPAGER = "nvim +Man!"; 26 + MANWIDTH = 80; 26 27 LESS = "-SRFXi"; 27 28 ERL_FLAGS = "-kernel shell_history enabled"; 28 29 };
+2 -4
modules/nvim.nix
··· 10 10 # 11 11 # runtimepath editing is not yet perfect, but works good enough so far 12 12 customRC = let 13 - lexical = pkgs.lexical.override { 14 - beamPackages = pkgs.beam27Packages; 15 - }; 13 + expert = inputs.expert.packages.${pkgs.stdenv.hostPlatform.system}.expert; 16 14 in '' 17 15 set runtimepath+=${./nvim}/after 18 16 set runtimepath^=${./nvim} 19 17 lua << EOF 20 18 vim.g.lsp_paths = { 21 19 ['rust_analyzer'] = "${pkgs.rust-analyzer}/bin/rust-analyzer", 22 - ['lexical'] = "${lexical}/bin/lexical", 20 + ['expert'] = "${expert}/bin/expert", 23 21 ['elp'] = "${pkgs.erlang-language-platform}/bin/elp", 24 22 ['typos_lsp'] = "${pkgs.typos-lsp}/bin/typos-lsp" 25 23 }
+7 -3
modules/nvim/fnl/langclient.fnl
··· 3 3 (use nvim {: fun : cmd : opt : map :buf-map bmap}) 4 4 (use picker) 5 5 (import-macros logger :nvim.logger) 6 - (import-macros {: augroup} :nvim) 6 + (import-macros {: augroup : defcommand} :nvim) 7 7 8 8 (let [lsp vim.lsp 9 9 border :rounded] ··· 40 40 :cmd [vim.g.lsp_paths.rust_analyzer] 41 41 :settings {:rust-analyzer {:files {:excludeDirs [".direnv"]}}}}) 42 42 43 - (setup :lexical { 43 + (setup :expert { 44 44 :root_markers [ "mix.exs" ".git" ".jj" ] 45 45 :filetypes [ "elixir" "eelixir" "heex" ] 46 - :cmd [vim.g.lsp_paths.lexical]}) 46 + :cmd [vim.g.lsp_paths.expert "--stdio"]}) 47 47 48 48 (setup :elp { 49 49 :root_markers [ "rebar.config" ] ··· 67 67 ; :cmd [vim.g.lsm_paths.taplo :lsp :stdio]}) 68 68 69 69 ; (augroup lsp-direnv (on User :DirenvLoaded (cmd.LspStart))) 70 + 71 + (defcommand LspRestart {:nargs 1} 72 + (vim.lsp.enable (tostring args) false) 73 + (vim.lsp.enable (tostring args) true))
-4
templates/elixir/flake.nix
··· 34 34 }: { 35 35 devenv.shells.default = { 36 36 language.elixir.enable = true; 37 - 38 - packages = [ 39 - pkgs.lexical 40 - ]; 41 37 }; 42 38 }; 43 39 };