diff --git a/flake.lock b/flake.lock
index ab9bf9c..0c3ced5 100644
--- a/flake.lock
+++ b/flake.lock
@@ -153,11 +153,11 @@
         "xdph": "xdph"
       },
       "locked": {
-        "lastModified": 1723738578,
-        "narHash": "sha256-TLkmHk6xWEUGpLci1QNyWRC7VFqocgBat2gl1gVXpY4=",
+        "lastModified": 1723799341,
+        "narHash": "sha256-OOwAjqHy/lC+rHZrWDIF2w0oppVxCP48lPDhyNNZ5HQ=",
         "ref": "refs/heads/main",
-        "rev": "12d9901472c6f9128fa8b16c25b3a879d1859e60",
-        "revCount": 5095,
+        "rev": "1840a907a8c6b1f59cfa6738a8f46b320e8df8b1",
+        "revCount": 5097,
         "submodules": true,
         "type": "git",
         "url": "https://github.com/hyprwm/Hyprland"
@@ -355,11 +355,11 @@
     },
     "nur": {
       "locked": {
-        "lastModified": 1723738470,
-        "narHash": "sha256-79TnkrS5degcSDvHZ0itU/SJr+usRVTNUUb1DSNDGu0=",
+        "lastModified": 1723801554,
+        "narHash": "sha256-DdXISSdP45hARoII9eTh64HvRgcn3BC+GyMxUEJ6oGk=",
         "owner": "nix-community",
         "repo": "NUR",
-        "rev": "9b41374e1803cbc897ff8f5be16a2ecfb30bca90",
+        "rev": "129a58609adfba26860f66d0d7ab5c3337aa9e76",
         "type": "github"
       },
       "original": {
diff --git a/home/nvim/files/lua/mappings.lua b/home/nvim/files/lua/mappings.lua
index 868e1f2..c0d6163 100644
--- a/home/nvim/files/lua/mappings.lua
+++ b/home/nvim/files/lua/mappings.lua
@@ -20,7 +20,6 @@ vim.keymap.set({"n", "v"}, "<leader>Y", [["+Y]])
 vim.keymap.set("n", "<Tab>", "<Nop>", { noremap = true })
 vim.keymap.set("n", "<leader><space>", ":noh<cr>", { noremap = true, silent = true })
 vim.keymap.set("n", "gn", ":n<cr>", { noremap = true, silent = true })
-vim.keymap.set("n", "<leader>d", function () require("trouble").toggle() end, { noremap = true, silent = true })
 vim.keymap.set("n", "gi", ":ClangdSwitchSourceHeader<cr>", { noremap = true, silent = true })
 vim.keymap.set("n", "<leader>t", ":NvimTreeFindFileToggle<cr>", { noremap = true, silent = true })
 vim.keymap.set("n", "-", function () require("oil").open() end, { desc = "Open parent directory" })
diff --git a/home/nvim/files/lua/plugins/trouble.lua b/home/nvim/files/lua/plugins/trouble.lua
index dda294d..ab30e73 100644
--- a/home/nvim/files/lua/plugins/trouble.lua
+++ b/home/nvim/files/lua/plugins/trouble.lua
@@ -8,5 +8,12 @@ return {
             toggle_fold = {"<tab>"},
         }
     },
+    keys = {
+        {
+            "<leader>d",
+            "<cmd>Trouble diagnostics toggle<cr>",
+            desc = "Diagnostics (Trouble)",
+        },
+    },
     lazy = true
 }
diff --git a/home/nvim/files/lua/teaching.lua b/home/nvim/files/lua/teaching.lua
index 20c040e..ff558c3 100644
--- a/home/nvim/files/lua/teaching.lua
+++ b/home/nvim/files/lua/teaching.lua
@@ -11,8 +11,8 @@ local function should_load(path)
         [3] = "build",
         [4] = "third-party",
         [5] = "sfml/",
-        [5] = "SFML/",
-        [6] = "TinyXML"
+        [6] = "SFML/",
+        [7] = "TinyXML"
     }
     local match = {
         [1] = ".hpp",
@@ -34,7 +34,7 @@ local function should_load(path)
 end
 
 function teaching.load()
-    require("trouble").open()
+    require("trouble").open("diagnostics")
     require("nvim-tree").open()
     local scan = require("plenary.scandir").scan_dir('.')
     local cwd = vim.fn.getcwd()