Nix configurations for my homelab
2
fork

Configure Feed

Select the types of activity you want to include in your feed.

Add patches to kakoune and kakoune-lsp for erlang

yemou c07eff76 8cb1c815

+58
+58
modules/editor.nix
··· 1 1 { pkgs, ... }: 2 2 { 3 + nixpkgs.overlays = [ 4 + (final: prev: { 5 + kakoune-unwrapped = prev.kakoune-unwrapped.overrideAttrs ( 6 + finalAttrs: prevAttrs: { 7 + patches = [ 8 + (prev.writeText "escript.patch" '' 9 + diff --git a/rc/filetype/erlang.kak b/rc/filetype/erlang.kak 10 + index 35b60cf2..3e42263d 100644 11 + --- a/rc/filetype/erlang.kak 12 + +++ b/rc/filetype/erlang.kak 13 + @@ -6,7 +6,7 @@ 14 + 15 + # Detection 16 + # ‾‾‾‾‾‾‾‾‾ 17 + -hook global BufCreate .*[.](erl|hrl) %{ 18 + +hook global BufCreate .*[.](erl|escript|hrl) %{ 19 + set-option buffer filetype erlang 20 + } 21 + 22 + @@ -31,6 +31,7 @@ provide-module erlang %[ 23 + add-highlighter shared/erlang regions 24 + add-highlighter shared/erlang/default default-region group 25 + 26 + +add-highlighter shared/erlang/shebang region ^#! $ fill meta 27 + add-highlighter shared/erlang/comment region '(?<!\$)%' '$' fill comment 28 + add-highlighter shared/erlang/attribute_atom_single_quoted region %{-'} %{(?<!\\)(?:\\\\)*'(?=[\( \.])} fill builtin 29 + add-highlighter shared/erlang/attribute region '\b-[a-z][\w@]*(?=[\( \.])' '\K' fill builtin 30 + '') 31 + ]; 32 + } 33 + ); 34 + kakoune-lsp = prev.kakoune-lsp.overrideAttrs ( 35 + finalAttrs: prevAttrs: { 36 + patches = prevAttrs.patches ++ [ 37 + (prev.writeText "erlang-elp" '' 38 + diff --git a/rc/servers.kak b/rc/servers.kak 39 + index afedb57..8d961e7 100644 40 + --- a/rc/servers.kak 41 + +++ b/rc/servers.kak 42 + @@ -124,10 +124,9 @@ hook -group lsp-filetype-elvish global BufSetOption filetype=elvish %{ 43 + 44 + hook -group lsp-filetype-erlang global BufSetOption filetype=erlang %{ 45 + set-option buffer lsp_servers %{ 46 + - [erlang_ls] 47 + + [elp] 48 + root_globs = ["rebar.config", "erlang.mk", ".git", ".hg"] 49 + - # See https://github.com/erlang-ls/erlang_ls.git for more information and 50 + - # how to configure. This default config should work in most cases though. 51 + + args = [ "server" ] 52 + } 53 + } 54 + '') 55 + ]; 56 + } 57 + ); 58 + }) 59 + ]; 60 + 3 61 environment = { 4 62 sessionVariables = { 5 63 EDITOR = "kak";