forked from aylac.top/nixcfg
this repo has no description
1_: { 2 perSystem = { 3 lib, 4 pkgs, 5 ... 6 }: { 7 files.files = [ 8 { 9 checkFile = false; 10 path_ = ".zed/settings.json"; 11 12 drv = (pkgs.formats.json {}).generate "zed-setting.json" { 13 auto_install_extensions = { 14 basher = true; 15 nix = true; 16 }; 17 18 languages = { 19 JSON = { 20 format_on_save = "on"; 21 22 formatter = { 23 external = { 24 command = lib.getExe pkgs.prettier; 25 arguments = ["--stdin-filepath" "{buffer_path}"]; 26 }; 27 }; 28 }; 29 30 Markdown = { 31 format_on_save = "on"; 32 33 formatter.external = { 34 command = lib.getExe pkgs.prettier; 35 arguments = ["--stdin-filepath" "{buffer_path}"]; 36 }; 37 }; 38 39 Nix = { 40 format_on_save = "on"; 41 formatter = "language_server"; 42 language_servers = ["nixd"]; 43 }; 44 45 "Shell Script" = { 46 format_on_save = "on"; 47 48 formatter = { 49 external = { 50 command = lib.getExe pkgs.shfmt; 51 arguments = ["--filename" "{buffer_path}" "-i" "2"]; 52 }; 53 }; 54 55 tab_size = 2; 56 hard_tabs = false; 57 }; 58 59 YAML = { 60 format_on_save = "on"; 61 formatter.external = { 62 command = lib.getExe pkgs.prettier; 63 arguments = ["--stdin-filepath" "{buffer_path}"]; 64 }; 65 }; 66 }; 67 68 lsp.nixd = { 69 binary.path = lib.getExe pkgs.nixd; 70 settings.formatting.command = [(lib.getExe pkgs.alejandra) "--quiet" "--"]; 71 }; 72 }; 73 } 74 ]; 75 }; 76}