My dotfiles (written in Nix, btw!) ❄
1{
2 self,
3 systemSettings,
4 userSettings,
5 ...
6}: {
7 programs.zed-editor = {
8 enable = true;
9 extensions = [
10 "html"
11 "emmet"
12 "nord"
13 "nix"
14 "gleam"
15 "templ"
16 ];
17 userSettings = {
18 vim_mode = true;
19 autosave.after_delay.milliseconds = 1000;
20 # buffer_font_family = "JetBrains Mono";
21 # buffer_font_size = 16;
22 # ui_font_family = "Ubuntu";
23 load_direnv = "shell_hook";
24 tabs = {
25 file_icons = true;
26 git_status = true;
27 show_diagnostics = "all";
28 };
29
30 lsp = {
31 nixd = {
32 binary.path_lookup = true;
33 settings = let
34 flake = "(builtins.getFlake \"${self}\");";
35 in {
36 nixos.expr = "${flake}.nixosConfigurations.\"${systemSettings.hostname}\".options";
37 home_manager.expr = "${flake}.homeConfigurations.\"${userSettings.username}\".options";
38 };
39 };
40 gopls.binary.path_lookup = true;
41 gleam.binary.path_lookup = true;
42 html.binary.path_lookup = true;
43 emmet.binary.path_lookup = true;
44 templ.binary.path_lookup = true;
45 clangd.binary.path_lookup = true;
46 };
47
48 languages = {
49 Nix = {
50 formatter.external.command = "alejandra";
51 language_servers = ["nixd" "!nil"];
52 };
53 };
54
55 # theme = {
56 # mode = "dark";
57 # dark = "Nord";
58 # light = "One Light";
59 # };
60 };
61 };
62}